diff --git a/.gitmodules b/.gitmodules index b8b1f289dbe..a524fbec3cd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,3 @@ -[submodule "test/spec"] - path = test/spec - url = https://github.com/WebAssembly/testsuite.git [submodule "test/emscripten"] path = test/emscripten url = https://github.com/kripken/emscripten.git diff --git a/bin/wasm.js b/bin/wasm.js index efbc4c51583..bbce91c0632 100644 --- a/bin/wasm.js +++ b/bin/wasm.js @@ -26,7 +26,7 @@ function(a,b){c.outside.wasmTable[a]=b},function(a,b,d){c.outside.wasmTable[a]=c c.outside.HEAP8;(new Int8Array(b)).set(a);c.outside.buffer=b},function(a){D("wasm trap: "+E(a))},function(a,b,d,e,f){for(var g=z[0],k=z[1],l=0;l> 1]},function(a){return c.info.parent.HEAPU16[a>>1]},function(a){return c.info.parent.HEAP32[a>>2]},function(a){return c.info.parent.HEAPU32[a>>2]},function(a){return c.info.parent.HEAPF32[a>>2]},function(a){return c.info.parent.HEAPF64[a>>3]},function(a,b,d,e){var f=z[0],g=z[1];d?4===b?xa[0]=e:8===b?ya[0]=e:D():1===b?G[0]=e:2===b?va[0]=e:4===b?wa[0]=e:D();for(d=0;d>1]= b},function(a,b){c.info.parent.HEAP32[a>>2]=b},function(a,b){c.info.parent.HEAPF32[a>>2]=b},function(a,b){c.info.parent.HEAPF64[a>>3]=b},function(){c.tempArguments=[]},function(a){c.tempArguments.push(a)}];Aa=8;y=Aa+135344; -Ka.push({a:function(){Za()}},{a:function(){$a()}},{a:function(){ab()}},{a:function(){bb()}},{a:function(){cb()}},{a:function(){db()}},{a:function(){eb()}},{a:function(){fb()}},{a:function(){gb()}},{a:function(){hb()}},{a:function(){ib()}},{a:function(){jb()}},{a:function(){kb()}},{a:function(){lb()}},{a:function(){mb()}},{a:function(){nb()}},{a:function(){ob()}},{a:function(){pb()}},{a:function(){qb()}},{a:function(){rb()}},{a:function(){sb()}},{a:function(){tb()}});K="data:application/octet-stream;base64,AAAAAAAAAAA7OyBBIGxhcmdlIFdBU1QgYmxvYiB3aGljaCBjb250YWlucyB0aGUgaW1wbGVtZW50YXRpb25zIG9mIGFsbCB0aGUgaW50cmluc2ljcwo7OyB0aGF0IHdlIGluamVjdCBhcyBwYXJ0IG9mIHRoaXMgbW9kdWxlLiBUaGlzIGJsb2Igd2FzIGdlbmVyYXRlZCBmcm9tIGEgUnVzdAo7OyBwcm9ncmFtIFsxXSB3aGljaCB1c2VzIHRoZSBSdXN0IGNvbXBpbGVyLWJ1aWx0aW5zIHByb2plY3QuIEl0J3Mgbm90Cjs7IG5lY2Vzc2FyaWx5IHBlcmZlY3QgYnV0IGdldHMgdGhlIGpvYiBkb25lISBUaGUgaWRlYSBoZXJlIGlzIHRoYXQgd2UgaW5qZWN0Cjs7IHRoZXNlIHByZXR0eSBlYXJseSBzbyB0aGV5IGNhbiBjb250aW51ZSB0byBiZSBvcHRpbWl6ZWQgYnkgZnVydGhlciBwYXNzZXMKOzsgKGFrYSBpbmxpbmluZyBhbmQgd2hhdG5vdCkKOzsKOzsgWzFdOiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9hbGV4Y3JpY2h0b24vZTdlYTY3YmNkZDE3Y2U0YjYyNTRlNjZmNzcxNjU2OTAKCihtb2R1bGUKICh0eXBlICQwIChmdW5jIChwYXJhbSBpNjQgaTY0KSAocmVzdWx0IGk2NCkpKQogKHR5cGUgJDEgKGZ1bmMgKHBhcmFtIGYzMikgKHJlc3VsdCBmMzIpKSkKICh0eXBlICQyIChmdW5jIChwYXJhbSBmNjQpIChyZXN1bHQgZjY0KSkpCiAodHlwZSAkMyAoZnVuYyAocGFyYW0gaTMyKSAocmVzdWx0IGkzMikpKQogKHR5cGUgJDQgKGZ1bmMgKHBhcmFtIGkzMiBpMzIpIChyZXN1bHQgaTMyKSkpCiAoaW1wb3J0ICJlbnYiICJtZW1vcnkiIChtZW1vcnkgJDAgMTcpKQogKGV4cG9ydCAiX193YXNtX2k2NF9zZGl2IiAoZnVuYyAkX193YXNtX2k2NF9zZGl2KSkKIChleHBvcnQgIl9fd2FzbV9pNjRfdWRpdiIgKGZ1bmMgJF9fd2FzbV9pNjRfdWRpdikpCiAoZXhwb3J0ICJfX3dhc21faTY0X3NyZW0iIChmdW5jICRfX3dhc21faTY0X3NyZW0pKQogKGV4cG9ydCAiX193YXNtX2k2NF91cmVtIiAoZnVuYyAkX193YXNtX2k2NF91cmVtKSkKIChleHBvcnQgIl9fd2FzbV9pNjRfbXVsIiAoZnVuYyAkX193YXNtX2k2NF9tdWwpKQogKGV4cG9ydCAiX193YXNtX3RydW5jX2YzMiIgKGZ1bmMgJF9fd2FzbV90cnVuY19mMzIpKQogKGV4cG9ydCAiX193YXNtX3RydW5jX2Y2NCIgKGZ1bmMgJF9fd2FzbV90cnVuY19mNjQpKQogKGV4cG9ydCAiX193YXNtX2N0el9pMzIiIChmdW5jICRfX3dhc21fY3R6X2kzMikpCiAoZXhwb3J0ICJfX3dhc21fY3R6X2k2NCIgKGZ1bmMgJF9fd2FzbV9jdHpfaTY0KSkKIChleHBvcnQgIl9fd2FzbV9yb3RsX2kzMiIgKGZ1bmMgJF9fd2FzbV9yb3RsX2kzMikpCiAoZXhwb3J0ICJfX3dhc21fcm90cl9pMzIiIChmdW5jICRfX3dhc21fcm90cl9pMzIpKQogKGV4cG9ydCAiX193YXNtX3JvdGxfaTY0IiAoZnVuYyAkX193YXNtX3JvdGxfaTY0KSkKIChleHBvcnQgIl9fd2FzbV9yb3RyX2k2NCIgKGZ1bmMgJF9fd2FzbV9yb3RyX2k2NCkpCiAoZXhwb3J0ICJfX3dhc21fbmVhcmVzdF9mMzIiIChmdW5jICRfX3dhc21fbmVhcmVzdF9mMzIpKQogKGV4cG9ydCAiX193YXNtX25lYXJlc3RfZjY0IiAoZnVuYyAkX193YXNtX25lYXJlc3RfZjY0KSkKIChleHBvcnQgIl9fd2FzbV9wb3BjbnRfaTMyIiAoZnVuYyAkX193YXNtX3BvcGNudF9pMzIpKQogKGV4cG9ydCAiX193YXNtX3BvcGNudF9pNjQiIChmdW5jICRfX3dhc21fcG9wY250X2k2NCkpCgogOzsgbG93ZXJpbmcgb2YgdGhlIGkzMi5wb3BjbnQgaW5zdHJ1Y3Rpb24sIGNvdW50cyB0aGUgbnVtYmVyIG9mIGJpdHMgc2V0IGluIHRoZQogOzsgaW5wdXQgYW5kIHJldHVybnMgdGhlIHJlc3VsdAogKGZ1bmMgJF9fd2FzbV9wb3BjbnRfaTMyIChwYXJhbSAkdmFyJDAgaTMyKSAocmVzdWx0IGkzMikKICAobG9jYWwgJHZhciQxIGkzMikKICAoYmxvY2sgJGxhYmVsJDEgKHJlc3VsdCBpMzIpCiAgIChsb29wICRsYWJlbCQyCiAgICAoZHJvcAogICAgIChicl9pZiAkbGFiZWwkMQogICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgKGkzMi5lcXoKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICApCiAgICAgKQogICAgKQogICAgKHNldF9sb2NhbCAkdmFyJDAKICAgICAoaTMyLmFuZAogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKGkzMi5zdWIKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgKGkzMi5jb25zdCAxKQogICAgICApCiAgICAgKQogICAgKQogICAgKHNldF9sb2NhbCAkdmFyJDEKICAgICAoaTMyLmFkZAogICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgKGkzMi5jb25zdCAxKQogICAgICkKICAgICkKICAgIChiciAkbGFiZWwkMikKICAgKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucG9wY250IGluc3RydWN0aW9uLCBjb3VudHMgdGhlIG51bWJlciBvZiBiaXRzIHNldCBpbiB0aGUKIDs7IGlucHV0IGFuZCByZXR1cm5zIHRoZSByZXN1bHQKIChmdW5jICRfX3dhc21fcG9wY250X2k2NCAocGFyYW0gJHZhciQwIGk2NCkgKHJlc3VsdCBpNjQpCiAgKGxvY2FsICR2YXIkMSBpNjQpCiAgKGJsb2NrICRsYWJlbCQxIChyZXN1bHQgaTY0KQogICAobG9vcCAkbGFiZWwkMgogICAgKGRyb3AKICAgICAoYnJfaWYgJGxhYmVsJDEKICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgIChpNjQuZXF6CiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKQogICAgICkKICAgICkKICAgIChzZXRfbG9jYWwgJHZhciQwCiAgICAgKGk2NC5hbmQKICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgIChpNjQuc3ViCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgIChpNjQuY29uc3QgMSkKICAgICAgKQogICAgICkKICAgICkKICAgIChzZXRfbG9jYWwgJHZhciQxCiAgICAgKGk2NC5hZGQKICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgIChpNjQuY29uc3QgMSkKICAgICApCiAgICApCiAgICAoYnIgJGxhYmVsJDIpCiAgICkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgaTY0LmRpdl9zIGluc3RydWN0aW9uLCByZXR1cm4gJHZhcjAgLyAkdmFyJDEKIChmdW5jICRfX3dhc21faTY0X3NkaXYgKDsgMCA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAoY2FsbCAkX1pOMTdjb21waWxlcl9idWlsdGluczNpbnQ0c2RpdjNEaXYzZGl2MTdoZTc4ZmM0ODNlNDFkN2VjN0UKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChnZXRfbG9jYWwgJHZhciQxKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQuZGl2X3UgaW5zdHJ1Y3Rpb24sIHJldHVybiAkdmFyMCAvICR2YXIkMQogKGZ1bmMgJF9fd2FzbV9pNjRfdWRpdiAoOyAxIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChjYWxsICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDR1ZGl2MTBkaXZtb2RfdTY0MTdoNjAyNjkxMGI1ZWQwOGU0MEUKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChnZXRfbG9jYWwgJHZhciQxKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucmVtX3MgaW5zdHJ1Y3Rpb24sIHJldHVybiAkdmFyMCAlICR2YXIkMQogKGZ1bmMgJF9fd2FzbV9pNjRfc3JlbSAoOyAyIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChjYWxsICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDRzZGl2M01vZDRtb2RfMTdoMmNiYjdiYmYzNmU0MWQ2OEUKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChnZXRfbG9jYWwgJHZhciQxKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucmVtX3UgaW5zdHJ1Y3Rpb24sIHJldHVybiAkdmFyMCAlICR2YXIkMQogKGZ1bmMgJF9fd2FzbV9pNjRfdXJlbSAoOyAzIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChkcm9wCiAgIChjYWxsICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDR1ZGl2MTBkaXZtb2RfdTY0MTdoNjAyNjkxMGI1ZWQwOGU0MEUKICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICkKICApCiAgKGk2NC5sb2FkCiAgIChpMzIuY29uc3QgMTAyNCkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgaTY0Lm11bCBpbnN0cnVjdGlvbiwgcmV0dXJuICR2YXIwICogJHZhciQxCiAoZnVuYyAkX193YXNtX2k2NF9tdWwgKDsgNCA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAoY2FsbCAkX1pOMTdjb21waWxlcl9idWlsdGluczNpbnQzbXVsM011bDNtdWwxN2gwNzBlOWExYzY5ZmFlYzViRQogICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgKQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGYzMi50cnVuYyBpbnN0cnVjdGlvbiwgcm91bmRzIHRvIHRoZSBuZWFyZXN0IGludGVnZXIsCiA7OyB0b3dhcmRzIHplcm8KIChmdW5jICRfX3dhc21fdHJ1bmNfZjMyICg7IDUgOykgKHR5cGUgJDEpIChwYXJhbSAkdmFyJDAgZjMyKSAocmVzdWx0IGYzMikKICAoc2VsZWN0CiAgIChmMzIuY2VpbAogICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICkKICAgKGYzMi5mbG9vcgogICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICkKICAgKGYzMi5sdAogICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAoZjMyLmNvbnN0IDApCiAgICkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgZjY0LnRydW5jIGluc3RydWN0aW9uLCByb3VuZHMgdG8gdGhlIG5lYXJlc3QgaW50ZWdlciwKIDs7IHRvd2FyZHMgemVybwogKGZ1bmMgJF9fd2FzbV90cnVuY19mNjQgKDsgNiA7KSAodHlwZSAkMikgKHBhcmFtICR2YXIkMCBmNjQpIChyZXN1bHQgZjY0KQogIChzZWxlY3QKICAgKGY2NC5jZWlsCiAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgKQogICAoZjY0LmZsb29yCiAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgKQogICAoZjY0Lmx0CiAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgIChmNjQuY29uc3QgMCkKICAgKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpMzIuY3R6IGluc3RydWN0aW9uLCBjb3VudGluZyB0aGUgbnVtYmVyIG9mIHplcm9zIGluICR2YXIkMAogKGZ1bmMgJF9fd2FzbV9jdHpfaTMyICg7IDcgOykgKHR5cGUgJDMpIChwYXJhbSAkdmFyJDAgaTMyKSAocmVzdWx0IGkzMikKICAoaWYKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChyZXR1cm4KICAgIChpMzIuc3ViCiAgICAgKGkzMi5jb25zdCAzMSkKICAgICAoaTMyLmNsegogICAgICAoaTMyLnhvcgogICAgICAgKGkzMi5hZGQKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAoaTMyLmNvbnN0IC0xKQogICAgICAgKQogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICkKICAgICApCiAgICApCiAgICkKICApCiAgKGkzMi5jb25zdCAzMikKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQuY3R6IGluc3RydWN0aW9uLCBjb3VudGluZyB0aGUgbnVtYmVyIG9mIHplcm9zIGluICR2YXIkMAogKGZ1bmMgJF9fd2FzbV9jdHpfaTY0ICg7IDggOykgKHR5cGUgJDQpIChwYXJhbSAkdmFyJDAgaTY0KSAocmVzdWx0IGk2NCkKICAoaWYKICAgKGkzMi5lcXoKICAgIChpNjQuZXF6CiAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICApCiAgICkKICAgKHJldHVybgogICAgKGk2NC5zdWIKICAgICAoaTY0LmNvbnN0IDYzKQogICAgIChpNjQuY2x6CiAgICAgIChpNjQueG9yCiAgICAgICAoaTY0LmFkZAogICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgIChpNjQuY29uc3QgLTEpCiAgICAgICApCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKQogICAgICkKICAgICkKICAgKQogICkKICAoaTY0LmNvbnN0IDY0KQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGkzMi5yb3RsIGluc3RydWN0aW9uLCByb3RhdGluZyB0aGUgZmlyc3QgYXJndW1lbnQsIHdpdGgKIDs7IHdyYXBhcm91bmQsIGJ5IHRoZSBzZWNvbmQgYXJndW1lbnQKIChmdW5jICRfX3dhc21fcm90bF9pMzIgKDsgOCA7KSAodHlwZSAkNCkgKHBhcmFtICR2YXIkMCBpMzIpIChwYXJhbSAkdmFyJDEgaTMyKSAocmVzdWx0IGkzMikKICAobG9jYWwgJHZhciQyIGkzMikKICAoaTMyLm9yCiAgIChpMzIuc2hsCiAgICAoaTMyLmFuZAogICAgIChpMzIuc2hyX3UKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQyKQogICApCiAgIChpMzIuc2hyX3UKICAgIChpMzIuYW5kCiAgICAgKGkzMi5zaGwKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDEKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGkzMi5zdWIKICAgICAgICAgKGkzMi5jb25zdCAwKQogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICApCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQxKQogICApCiAgKQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGkzMi5yb3RyIGluc3RydWN0aW9uLCByb3RhdGluZyB0aGUgZmlyc3QgYXJndW1lbnQsIHdpdGgKIDs7IHdyYXBhcm91bmQsIGJ5IHRoZSBzZWNvbmQgYXJndW1lbnQKIChmdW5jICRfX3dhc21fcm90cl9pMzIgKDsgOSA7KSAodHlwZSAkNCkgKHBhcmFtICR2YXIkMCBpMzIpIChwYXJhbSAkdmFyJDEgaTMyKSAocmVzdWx0IGkzMikKICAobG9jYWwgJHZhciQyIGkzMikKICAoaTMyLm9yCiAgIChpMzIuc2hyX3UKICAgIChpMzIuYW5kCiAgICAgKGkzMi5zaGwKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQyKQogICApCiAgIChpMzIuc2hsCiAgICAoaTMyLmFuZAogICAgIChpMzIuc2hyX3UKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDEKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGkzMi5zdWIKICAgICAgICAgKGkzMi5jb25zdCAwKQogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICApCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQxKQogICApCiAgKQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGk2NC5yb3RsIGluc3RydWN0aW9uLCByb3RhdGluZyB0aGUgZmlyc3QgYXJndW1lbnQsIHdpdGgKIDs7IHdyYXBhcm91bmQsIGJ5IHRoZSBzZWNvbmQgYXJndW1lbnQKIChmdW5jICRfX3dhc21fcm90bF9pNjQgKDsgMTAgOykgKHR5cGUgJDApIChwYXJhbSAkdmFyJDAgaTY0KSAocGFyYW0gJHZhciQxIGk2NCkgKHJlc3VsdCBpNjQpCiAgKGxvY2FsICR2YXIkMiBpNjQpCiAgKGk2NC5vcgogICAoaTY0LnNobAogICAgKGk2NC5hbmQKICAgICAoaTY0LnNocl91CiAgICAgIChpNjQuY29uc3QgLTEpCiAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAoaTY0LmFuZAogICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICApCiAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgKQogICAoaTY0LnNocl91CiAgICAoaTY0LmFuZAogICAgIChpNjQuc2hsCiAgICAgIChpNjQuY29uc3QgLTEpCiAgICAgICh0ZWVfbG9jYWwgJHZhciQxCiAgICAgICAoaTY0LmFuZAogICAgICAgIChpNjQuc3ViCiAgICAgICAgIChpNjQuY29uc3QgMCkKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgKQogICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICApCiAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucm90ciBpbnN0cnVjdGlvbiwgcm90YXRpbmcgdGhlIGZpcnN0IGFyZ3VtZW50LCB3aXRoCiA7OyB3cmFwYXJvdW5kLCBieSB0aGUgc2Vjb25kIGFyZ3VtZW50CiAoZnVuYyAkX193YXNtX3JvdHJfaTY0ICg7IDExIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChsb2NhbCAkdmFyJDIgaTY0KQogIChpNjQub3IKICAgKGk2NC5zaHJfdQogICAgKGk2NC5hbmQKICAgICAoaTY0LnNobAogICAgICAoaTY0LmNvbnN0IC0xKQogICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgKGk2NC5hbmQKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgKQogICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICkKICAgKGk2NC5zaGwKICAgIChpNjQuYW5kCiAgICAgKGk2NC5zaHJfdQogICAgICAoaTY0LmNvbnN0IC0xKQogICAgICAodGVlX2xvY2FsICR2YXIkMQogICAgICAgKGk2NC5hbmQKICAgICAgICAoaTY0LnN1YgogICAgICAgICAoaTY0LmNvbnN0IDApCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICkKICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgKQogICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgZjMyLm5lYXJlc3QgaW5zdHJ1Y3Rpb24sIHJvdW5kaW5nIHRoZSBpbnB1dCB0byB0aGUgbmVhcmVzdAogOzsgaW50ZWdlciB3aGlsZSBicmVha2luZyB0aWVzIGJ5IHJvdW5kaW5nIHRvIGV2ZW4KIChmdW5jICRfX3dhc21fbmVhcmVzdF9mMzIgKDsgMTIgOykgKHR5cGUgJDEpIChwYXJhbSAkdmFyJDAgZjMyKSAocmVzdWx0IGYzMikKICAobG9jYWwgJHZhciQxIGYzMikKICAobG9jYWwgJHZhciQyIGYzMikKICAoaWYKICAgKGkzMi5lcXoKICAgIChmMzIubHQKICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAoZjMyLnN1YgogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAodGVlX2xvY2FsICR2YXIkMQogICAgICAgIChmMzIuZmxvb3IKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgIChmMzIuY29uc3QgMC41KQogICAgKQogICApCiAgIChibG9jawogICAgKHNldF9sb2NhbCAkdmFyJDAKICAgICAoZjMyLmNlaWwKICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgKQogICAgKQogICAgKGlmCiAgICAgKGYzMi5ndAogICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgKGYzMi5jb25zdCAwLjUpCiAgICAgKQogICAgIChyZXR1cm4KICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgKQogICAgKQogICAgKHNldF9sb2NhbCAkdmFyJDEKICAgICAoc2VsZWN0CiAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKGYzMi5lcQogICAgICAgKGYzMi5zdWIKICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAoZjMyLm11bAogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAoZjMyLmNvbnN0IDAuNSkKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoZjMyLmZsb29yCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICkKICAgICAgICkKICAgICAgIChmMzIuY29uc3QgMCkKICAgICAgKQogICAgICkKICAgICkKICAgKQogICkKICAoZ2V0X2xvY2FsICR2YXIkMSkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBmNjQubmVhcmVzdCBpbnN0cnVjdGlvbiwgcm91bmRpbmcgdGhlIGlucHV0IHRvIHRoZSBuZWFyZXN0CiA7OyBpbnRlZ2VyIHdoaWxlIGJyZWFraW5nIHRpZXMgYnkgcm91bmRpbmcgdG8gZXZlbgogKGZ1bmMgJF9fd2FzbV9uZWFyZXN0X2Y2NCAoOyAxMyA7KSAodHlwZSAkMikgKHBhcmFtICR2YXIkMCBmNjQpIChyZXN1bHQgZjY0KQogIChsb2NhbCAkdmFyJDEgZjY0KQogIChsb2NhbCAkdmFyJDIgZjY0KQogIChpZgogICAoaTMyLmVxegogICAgKGY2NC5sdAogICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgIChmNjQuc3ViCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICh0ZWVfbG9jYWwgJHZhciQxCiAgICAgICAgKGY2NC5mbG9vcgogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICApCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKGY2NC5jb25zdCAwLjUpCiAgICApCiAgICkKICAgKGJsb2NrCiAgICAoc2V0X2xvY2FsICR2YXIkMAogICAgIChmNjQuY2VpbAogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICApCiAgICApCiAgICAoaWYKICAgICAoZjY0Lmd0CiAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAoZjY0LmNvbnN0IDAuNSkKICAgICApCiAgICAgKHJldHVybgogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICApCiAgICApCiAgICAoc2V0X2xvY2FsICR2YXIkMQogICAgIChzZWxlY3QKICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAoZjY0LmVxCiAgICAgICAoZjY0LnN1YgogICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgIChmNjQubXVsCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgIChmNjQuY29uc3QgMC41KQogICAgICAgICApCiAgICAgICAgKQogICAgICAgIChmNjQuZmxvb3IKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGY2NC5jb25zdCAwKQogICAgICApCiAgICAgKQogICAgKQogICApCiAgKQogIChnZXRfbG9jYWwgJHZhciQxKQogKQogKGZ1bmMgJF9aTjE3Y29tcGlsZXJfYnVpbHRpbnMzaW50NHVkaXYxMGRpdm1vZF91NjQxN2g2MDI2OTEwYjVlZDA4ZTQwRSAoOyAxNCA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAobG9jYWwgJHZhciQyIGkzMikKICAobG9jYWwgJHZhciQzIGkzMikKICAobG9jYWwgJHZhciQ0IGkzMikKICAobG9jYWwgJHZhciQ1IGk2NCkKICAobG9jYWwgJHZhciQ2IGk2NCkKICAobG9jYWwgJHZhciQ3IGk2NCkKICAobG9jYWwgJHZhciQ4IGk2NCkKICAoYmxvY2sgJGxhYmVsJDEKICAgKGJsb2NrICRsYWJlbCQyCiAgICAoYmxvY2sgJGxhYmVsJDMKICAgICAoYmxvY2sgJGxhYmVsJDQKICAgICAgKGJsb2NrICRsYWJlbCQ1CiAgICAgICAoYmxvY2sgJGxhYmVsJDYKICAgICAgICAoYmxvY2sgJGxhYmVsJDcKICAgICAgICAgKGJsb2NrICRsYWJlbCQ4CiAgICAgICAgICAoYmxvY2sgJGxhYmVsJDkKICAgICAgICAgICAoYmxvY2sgJGxhYmVsJDEwCiAgICAgICAgICAgIChibG9jayAkbGFiZWwkMTEKICAgICAgICAgICAgIChpZgogICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgIChpNjQuc2hyX3UKICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAgICAgICAgICAoaTY0LmNvbnN0IDMyKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgIChibG9jawogICAgICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDExCiAgICAgICAgICAgICAgICAoaTMyLmVxegogICAgICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQzCiAgICAgICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgIChicl9pZiAkbGFiZWwkOQogICAgICAgICAgICAgICAgKGkzMi5lcXoKICAgICAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNAogICAgICAgICAgICAgICAgICAoaTMyLndyYXAvaTY0CiAgICAgICAgICAgICAgICAgICAoaTY0LnNocl91CiAgICAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDgKICAgICAgICAgICAgICAgIChpMzIubGVfdQogICAgICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgICAgICAgICAoaTMyLmNsegogICAgICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQ0KQogICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgKGkzMi5jbHoKICAgICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAoaTMyLmNvbnN0IDMxKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgIChiciAkbGFiZWwkMikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDIKICAgICAgICAgICAgICAoaTY0LmdlX3UKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAgICAgIChpNjQuY29uc3QgNDI5NDk2NzI5NikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAoaTY0LnN0b3JlCiAgICAgICAgICAgICAgKGkzMi5jb25zdCAxMDI0KQogICAgICAgICAgICAgIChpNjQuZXh0ZW5kX3UvaTMyCiAgICAgICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKGkzMi5tdWwKICAgICAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAgICAgICAgICAoaTMyLmRpdl91CiAgICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQzCiAgICAgICAgICAgICAgICAgICAgKGkzMi53cmFwL2k2NAogICAgICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAocmV0dXJuCiAgICAgICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgICAgIChzZXRfbG9jYWwgJHZhciQzCiAgICAgICAgICAgICAoaTMyLndyYXAvaTY0CiAgICAgICAgICAgICAgKGk2NC5zaHJfdQogICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICkKICAgICAgICAgICAgKGJyX2lmICRsYWJlbCQ3CiAgICAgICAgICAgICAoaTMyLmVxegogICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgICAgIChicl9pZiAkbGFiZWwkNgogICAgICAgICAgICAgKGkzMi5lcXoKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDYKICAgICAgICAgICAgIChpMzIuYW5kCiAgICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDQKICAgICAgICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICkKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICAoaTY0LnN0b3JlCiAgICAgICAgICAgICAoaTMyLmNvbnN0IDEwMjQpCiAgICAgICAgICAgICAoaTY0Lm9yCiAgICAgICAgICAgICAgKGk2NC5zaGwKICAgICAgICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAgICAgIChpMzIuYW5kCiAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDQpCiAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgKGk2NC5hbmQKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICAgICAgIChpNjQuY29uc3QgNDI5NDk2NzI5NSkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICkKICAgICAgICAgICAgKHJldHVybgogICAgICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAgICAoaTMyLnNocl91CiAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgICAgICAoaTMyLmFuZAogICAgICAgICAgICAgICAgKGkzMi5jdHoKICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgIChpMzIuY29uc3QgMzEpCiAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICAgKHVucmVhY2hhYmxlKQogICAgICAgICAgKQogICAgICAgICAgKGJyX2lmICRsYWJlbCQ1CiAgICAgICAgICAgKGkzMi5lcXoKICAgICAgICAgICAgKGkzMi5hbmQKICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQ0CiAgICAgICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICAgIChpMzIuY29uc3QgLTEpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICApCiAgICAgICAgICAoc2V0X2xvY2FsICR2YXIkMwogICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgIChpMzIuY29uc3QgMCkKICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAgICAgKGkzMi5jbHoKICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgIChpMzIuY29uc3QgMzMpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgIChpMzIuY2x6CiAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgICAgICkKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgIChiciAkbGFiZWwkMykKICAgICAgICAgKQogICAgICAgICAoc2V0X2xvY2FsICR2YXIkMwogICAgICAgICAgKGkzMi5zdWIKICAgICAgICAgICAoaTMyLmNvbnN0IDYzKQogICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgKQogICAgICAgICApCiAgICAgICAgIChzZXRfbG9jYWwgJHZhciQyCiAgICAgICAgICAoaTMyLmFkZAogICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgIChpMzIuY29uc3QgMSkKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICAoYnIgJGxhYmVsJDMpCiAgICAgICAgKQogICAgICAgIChpNjQuc3RvcmUKICAgICAgICAgKGkzMi5jb25zdCAxMDI0KQogICAgICAgICAoaTY0LnNobAogICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAoaTMyLnN1YgogICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgKGkzMi5tdWwKICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQ0CiAgICAgICAgICAgICAgKGkzMi5kaXZfdQogICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICApCiAgICAgICAgICAoaTY0LmNvbnN0IDMyKQogICAgICAgICApCiAgICAgICAgKQogICAgICAgIChyZXR1cm4KICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQ0KQogICAgICAgICApCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGJyX2lmICRsYWJlbCQ0CiAgICAgICAgKGkzMi5sdF91CiAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgICAoaTMyLnN1YgogICAgICAgICAgIChpMzIuY2x6CiAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICkKICAgICAgICAgICAoaTMyLmNsegogICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICApCiAgICAgICAgICApCiAgICAgICAgICkKICAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICApCiAgICAgICApCiAgICAgICAoYnIgJGxhYmVsJDIpCiAgICAgICkKICAgICAgKGk2NC5zdG9yZQogICAgICAgKGkzMi5jb25zdCAxMDI0KQogICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAoaTMyLmFuZAogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNCkKICAgICAgICAgKGkzMi53cmFwL2k2NAogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICkKICAgICAgICApCiAgICAgICApCiAgICAgICkKICAgICAgKGJyX2lmICRsYWJlbCQxCiAgICAgICAoaTMyLmVxCiAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgKGkzMi5jb25zdCAxKQogICAgICAgKQogICAgICApCiAgICAgIChyZXR1cm4KICAgICAgIChpNjQuc2hyX3UKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAoaTY0LmV4dGVuZF91L2kzMgogICAgICAgICAoaTMyLmN0egogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICkKICAgICAgICApCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKHNldF9sb2NhbCAkdmFyJDMKICAgICAgKGkzMi5zdWIKICAgICAgIChpMzIuY29uc3QgNjMpCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgKQogICAgICkKICAgICAoc2V0X2xvY2FsICR2YXIkMgogICAgICAoaTMyLmFkZAogICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAoaTMyLmNvbnN0IDEpCiAgICAgICkKICAgICApCiAgICApCiAgICAoc2V0X2xvY2FsICR2YXIkNQogICAgIChpNjQuc2hyX3UKICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgIChpNjQuZXh0ZW5kX3UvaTMyCiAgICAgICAoaTMyLmFuZAogICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgIChpMzIuY29uc3QgNjMpCiAgICAgICApCiAgICAgICkKICAgICApCiAgICApCiAgICAoc2V0X2xvY2FsICR2YXIkMAogICAgIChpNjQuc2hsCiAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAoaTY0LmV4dGVuZF91L2kzMgogICAgICAgKGkzMi5hbmQKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAoaTMyLmNvbnN0IDYzKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgKQogICAgKGJsb2NrICRsYWJlbCQxMwogICAgIChpZgogICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgKGJsb2NrCiAgICAgICAoc2V0X2xvY2FsICR2YXIkOAogICAgICAgIChpNjQuYWRkCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICAoaTY0LmNvbnN0IC0xKQogICAgICAgICkKICAgICAgICkKICAgICAgIChsb29wICRsYWJlbCQxNQogICAgICAgIChzZXRfbG9jYWwgJHZhciQ1CiAgICAgICAgIChpNjQuc3ViCiAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNQogICAgICAgICAgIChpNjQub3IKICAgICAgICAgICAgKGk2NC5zaGwKICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQ1KQogICAgICAgICAgICAgKGk2NC5jb25zdCAxKQogICAgICAgICAgICApCiAgICAgICAgICAgIChpNjQuc2hyX3UKICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAgICAgKGk2NC5jb25zdCA2MykKICAgICAgICAgICAgKQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgIChpNjQuYW5kCiAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDYKICAgICAgICAgICAgKGk2NC5zaHJfcwogICAgICAgICAgICAgKGk2NC5zdWIKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkOCkKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNSkKICAgICAgICAgICAgICkKICAgICAgICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICApCiAgICAgICAgICkKICAgICAgICApCiAgICAgICAgKHNldF9sb2NhbCAkdmFyJDAKICAgICAgICAgKGk2NC5vcgogICAgICAgICAgKGk2NC5zaGwKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAgICAoaTY0LmNvbnN0IDEpCiAgICAgICAgICApCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNykKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoc2V0X2xvY2FsICR2YXIkNwogICAgICAgICAodGVlX2xvY2FsICR2YXIkNgogICAgICAgICAgKGk2NC5hbmQKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNikKICAgICAgICAgICAoaTY0LmNvbnN0IDEpCiAgICAgICAgICApCiAgICAgICAgICkKICAgICAgICApCiAgICAgICAgKGJyX2lmICRsYWJlbCQxNQogICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAoaTMyLmNvbnN0IC0xKQogICAgICAgICAgKQogICAgICAgICApCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGJyICRsYWJlbCQxMykKICAgICAgKQogICAgICkKICAgICkKICAgIChpNjQuc3RvcmUKICAgICAoaTMyLmNvbnN0IDEwMjQpCiAgICAgKGdldF9sb2NhbCAkdmFyJDUpCiAgICApCiAgICAocmV0dXJuCiAgICAgKGk2NC5vcgogICAgICAoaTY0LnNobAogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAoaTY0LmNvbnN0IDEpCiAgICAgICkKICAgICAgKGdldF9sb2NhbCAkdmFyJDYpCiAgICAgKQogICAgKQogICApCiAgIChpNjQuc3RvcmUKICAgIChpMzIuY29uc3QgMTAyNCkKICAgIChnZXRfbG9jYWwgJHZhciQwKQogICApCiAgIChzZXRfbG9jYWwgJHZhciQwCiAgICAoaTY0LmNvbnN0IDApCiAgICkKICApCiAgKGdldF9sb2NhbCAkdmFyJDApCiApCiAoZnVuYyAkX1pOMTdjb21waWxlcl9idWlsdGluczNpbnQzbXVsM011bDNtdWwxN2gwNzBlOWExYzY5ZmFlYzViRSAoOyAxNSA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAobG9jYWwgJHZhciQyIGkzMikKICAobG9jYWwgJHZhciQzIGkzMikKICAobG9jYWwgJHZhciQ0IGkzMikKICAobG9jYWwgJHZhciQ1IGkzMikKICAobG9jYWwgJHZhciQ2IGkzMikKICAoaTY0Lm9yCiAgIChpNjQuc2hsCiAgICAoaTY0LmV4dGVuZF91L2kzMgogICAgIChpMzIuYWRkCiAgICAgIChpMzIuYWRkCiAgICAgICAoaTMyLmFkZAogICAgICAgIChpMzIuYWRkCiAgICAgICAgIChpMzIubXVsCiAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNAogICAgICAgICAgIChpMzIuc2hyX3UKICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICAoaTMyLmNvbnN0IDE2KQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQ1CiAgICAgICAgICAgKGkzMi5zaHJfdQogICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMwogICAgICAgICAgICAgKGkzMi53cmFwL2k2NAogICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgICAgIChpMzIuY29uc3QgMTYpCiAgICAgICAgICAgKQogICAgICAgICAgKQogICAgICAgICApCiAgICAgICAgIChpMzIubXVsCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAoaTY0LnNocl91CiAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAgICAoaTY0LmNvbnN0IDMyKQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoaTMyLm11bAogICAgICAgICAoaTMyLndyYXAvaTY0CiAgICAgICAgICAoaTY0LnNocl91CiAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICApCiAgICAgICApCiAgICAgICAoaTMyLnNocl91CiAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgIChpMzIuc2hyX3UKICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNgogICAgICAgICAgICAoaTMyLm11bAogICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgICAgICAoaTMyLmFuZAogICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgKGkzMi5jb25zdCA2NTUzNSkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMwogICAgICAgICAgICAgIChpMzIuYW5kCiAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICAgICAoaTMyLmNvbnN0IDY1NTM1KQogICAgICAgICAgICAgICkKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICkKICAgICAgICAgICAoaTMyLmNvbnN0IDE2KQogICAgICAgICAgKQogICAgICAgICAgKGkzMi5tdWwKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNSkKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoaTMyLmNvbnN0IDE2KQogICAgICAgKQogICAgICApCiAgICAgIChpMzIuc2hyX3UKICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgKGkzMi5hZGQKICAgICAgICAgKGkzMi5hbmQKICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgKGkzMi5jb25zdCA2NTUzNSkKICAgICAgICAgKQogICAgICAgICAoaTMyLm11bAogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDQpCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgKQogICAgICAgICkKICAgICAgICkKICAgICAgIChpMzIuY29uc3QgMTYpCiAgICAgICkKICAgICApCiAgICApCiAgICAoaTY0LmNvbnN0IDMyKQogICApCiAgIChpNjQuZXh0ZW5kX3UvaTMyCiAgICAoaTMyLm9yCiAgICAgKGkzMi5zaGwKICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgIChpMzIuY29uc3QgMTYpCiAgICAgKQogICAgIChpMzIuYW5kCiAgICAgIChnZXRfbG9jYWwgJHZhciQ2KQogICAgICAoaTMyLmNvbnN0IDY1NTM1KQogICAgICkKICAgICkKICAgKQogICkKICkKIChmdW5jICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDRzZGl2M0RpdjNkaXYxN2hlNzhmYzQ4M2U0MWQ3ZWM3RSAoOyAxNiA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAobG9jYWwgJHZhciQyIGk2NCkKICAoaTY0LnN1YgogICAoaTY0LnhvcgogICAgKGk2NC5kaXZfdQogICAgIChpNjQuc3ViCiAgICAgIChpNjQueG9yCiAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgIChpNjQuc2hyX3MKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICkKICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgKQogICAgIChpNjQuc3ViCiAgICAgIChpNjQueG9yCiAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgIChpNjQuc2hyX3MKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICkKICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgKQogICAgKQogICAgKHRlZV9sb2NhbCAkdmFyJDAKICAgICAoaTY0LnNocl9zCiAgICAgIChpNjQueG9yCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICApCiAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgKQogICAgKQogICApCiAgIChnZXRfbG9jYWwgJHZhciQwKQogICkKICkKIChmdW5jICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDRzZGl2M01vZDRtb2RfMTdoMmNiYjdiYmYzNmU0MWQ2OEUgKDsgMTcgOykgKHR5cGUgJDApIChwYXJhbSAkdmFyJDAgaTY0KSAocGFyYW0gJHZhciQxIGk2NCkgKHJlc3VsdCBpNjQpCiAgKGxvY2FsICR2YXIkMiBpNjQpCiAgKGk2NC5zdWIKICAgKGk2NC54b3IKICAgIChpNjQucmVtX3UKICAgICAoaTY0LnN1YgogICAgICAoaTY0LnhvcgogICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAoaTY0LnNocl9zCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgICkKICAgICAgICkKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICApCiAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICkKICAgICAoaTY0LnN1YgogICAgICAoaTY0LnhvcgogICAgICAgKHRlZV9sb2NhbCAkdmFyJDAKICAgICAgICAoaTY0LnNocl9zCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgICkKICAgICAgICkKICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICApCiAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQyKQogICApCiAgIChnZXRfbG9jYWwgJHZhciQyKQogICkKICkKIDs7IGN1c3RvbSBzZWN0aW9uICJsaW5raW5nIiwgc2l6ZSAzCikKAAAAAAAAAAAAARwCHQ4YAx4WFA8ZEQQIHxsNFxUTEAcaDBIGCwUKCR8WHhUSCh0CFBEPDQkGHAEXEwsDEA4HGAwECBkFGhsA3hIElQAAAAD///////////////8AAAAAAAAAAAAAAAACAADAAwAAwAQAAMAFAADABgAAwAcAAMAIAADACQAAwAoAAMALAADADAAAwA0AAMAOAADADwAAwBAAAMARAADAEgAAwBMAAMAUAADAFQAAwBYAAMAXAADAGAAAwBkAAMAaAADAGwAAwBwAAMAdAADAHgAAwB8AAMAAAACzAQAAwwIAAMMDAADDBAAAwwUAAMMGAADDBwAAwwgAAMMJAADDCgAAwwsAAMMMAADDDQAA0w4AAMMPAADDAAAMuwEADMMCAAzDAwAMwwQADNMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAKAAAACkAAAAqAAAAKwAAACwAAAAtAAAALgAAAC8AAAAwAAAAMQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAAAA5AAAAOgAAADsAAAA8AAAAPQAAAD4AAAA/AAAAQAAAAGEAAABiAAAAYwAAAGQAAABlAAAAZgAAAGcAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB0AAAAdQAAAHYAAAB3AAAAeAAAAHkAAAB6AAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAYQAAAGIAAABjAAAAZAAAAGUAAABmAAAAZwAAAGgAAABpAAAAagAAAGsAAABsAAAAbQAAAG4AAABvAAAAcAAAAHEAAAByAAAAcwAAAHQAAAB1AAAAdgAAAHcAAAB4AAAAeQAAAHoAAAB7AAAAfAAAAH0AAAB+AAAAfwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgACAAIAAgACAAIAAgACAAMgAiACIAIgAiACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgABYATABMAEwATABMAEwATABMAEwATABMAEwATABMAEwAjYCNgI2AjYCNgI2AjYCNgI2AjYBMAEwATABMAEwATABMAI1QjVCNUI1QjVCNUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFBMAEwATABMAEwATACNYI1gjWCNYI1gjWCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgTABMAEwATAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAKAAAACkAAAAqAAAAKwAAACwAAAAtAAAALgAAAC8AAAAwAAAAMQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAAAA5AAAAOgAAADsAAAA8AAAAPQAAAD4AAAA/AAAAQAAAAEEAAABCAAAAQwAAAEQAAABFAAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAUgAAAFMAAABUAAAAVQAAAFYAAABXAAAAWAAAAFkAAABaAAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAQQAAAEIAAABDAAAARAAAAEUAAABGAAAARwAAAEgAAABJAAAASgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAAB7AAAAfAAAAH0AAAB+AAAAfwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QX/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAAAAAAAAAAAABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAMDEyMzQ1Njc4OUFCQ0RFRlQhIhkNAQIDEUscDBAECx0SHidobm9wcWIgBQYPExQVGggWBygkFxgJCg4bHyUjg4J9JiorPD0+P0NHSk1YWVpbXF1eX2BhY2RlZmdpamtscnN0eXp7fAAAAAAAAAAAAElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAATENfQ1RZUEUAAAAATENfTlVNRVJJQwAATENfVElNRQAAAAAATENfQ09MTEFURQAATENfTU9ORVRBUlkATENfTUVTU0FHRVMAAAAAAAAAAAAAAAAAAgAAAAMAAAAFAAAABwAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAfwAAAIMAAACJAAAAiwAAAJUAAACXAAAAnQAAAKMAAACnAAAArQAAALMAAAC1AAAAvwAAAMEAAADFAAAAxwAAANMAAAABAAAACwAAAA0AAAARAAAAEwAAABcAAAAdAAAAHwAAACUAAAApAAAAKwAAAC8AAAA1AAAAOwAAAD0AAABDAAAARwAAAEkAAABPAAAAUwAAAFkAAABhAAAAZQAAAGcAAABrAAAAbQAAAHEAAAB5AAAAfwAAAIMAAACJAAAAiwAAAI8AAACVAAAAlwAAAJ0AAACjAAAApwAAAKkAAACtAAAAswAAALUAAAC7AAAAvwAAAMEAAADFAAAAxwAAANEAAAAEAAAAAAAAAEiUAABkAAAAZQAAAPz////8////SJQAAGYAAABnAAAAAAAAAAAAAAAwMTIzNDU2Nzg5YWJjZGVmQUJDREVGeFgrLXBQaUluTgAAAAAAAAAAAAAAAAAAAAAlAAAAbQAAAC8AAAAlAAAAZAAAAC8AAAAlAAAAeQAAACUAAABZAAAALQAAACUAAABtAAAALQAAACUAAABkAAAAJQAAAEkAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAHAAAAAAAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAAAAAAAAAAAAAAAAAAlAAAASAAAADoAAAAlAAAATQAAADoAAAAlAAAAUwAAACUAAABIAAAAOgAAACUAAABNAAAAOgAAACUAAABTAAAAiMQAAEzWAACwxAAAJ9YAAPB6AAAAAAAAiMQAAD/bAACwxAAArdoAAAh7AAAAAAAAsMQAADPaAAAQewAAAAAAAIjEAAA74gAAsMQAAErhAAAwewAAAAAAALDEAABx4AAAOHsAAAAAAABAAAAAAAAAABiUAAAHAAAACAAAAMD////A////GJQAAAkAAAAKAAAAsMQAAMjjAAB4lAAAAAAAALDEAAAN5AAACJQAAAAAAACIxAAAWu0AAIjEAADc7QAAsMQAAKTtAACoewAAAAAAALDEAABn7QAAsHsAAAAAAADMxQAAC+0AAAAAAAACAAAAoHsAAAIAAADAewAAAhAAALDEAADy7AAA0HsAAAAAAACIxAAAge4AALDEAAAE7gAAAHwAAAAAAACIxAAAx+8AALDEAACX7wAAGHwAAAAAAACwxAAAYu8AACB8AAAAAAAAsMQAACLvAAAwfAAAAAAAAMzFAADQ7gAAAAAAAAIAAACgewAAAgAAAEB8AAACEAAAsMQAAL/uAABQfAAAAAAAAIjEAAA48QAAsMQAAPrwAACAfAAAAAAAALDEAAC38AAAiHwAAAAAAADMxQAAYvAAAAAAAAACAAAAoHsAAAIAAACYfAAAAhAAALDEAABO8AAAqHwAAAAAAACIxAAAgfEAAIjEAABN8wAAsMQAAOvyAADgfAAAAAAAALDEAACE8gAA6HwAAAAAAADMxQAAC/IAAAAAAAACAAAAoHsAAAIAAAD4fAAAAhAAALDEAADI8QAACH0AAAAAAACIxAAAO/gAALDEAADW9wAAOH0AAAAAAACwxAAAYfcAAEB9AAAAAAAAsMQAAOf2AABQfQAAAAAAALDEAABi9gAAYH0AAAAAAADMxQAAy/UAAAAAAAACAAAAoHsAAAIAAABwfQAAAhAAALDEAACH9QAAgH0AAAAAAACIxAAARfkAALDEAADB+AAAsH0AAAAAAACIxAAARf4AAIjEAACT/gAAiMQAAFX/AACwxAAA0P4AANh9AAAAAAAAiMQAAKz/AACwxAAA6f8AANh9AAAAAAAAiMQAAG4AAQCwxAAAihYBACB+AAAAAAAAzMUAAJkWAQAAAAAAAgAAAKB7AAACAAAAQH4AAAIQAACwxAAA3hYBAFB+AAAAAAAAsMQAABEXAQBgfgAAAAAAAIjEAAA/FwEAsMQAAF0XAQB4fgAAAAAAAMzFAABrFwEAAAAAAAIAAACgewAAAgAAAJh+AAACEAAAsMQAAK8XAQCofgAAAAAAALDEAADhFwEAuH4AAAAAAACIxAAADhgBALDEAACNGQEA0H4AAAAAAADMxQAAoxkBAAAAAAACAAAAoHsAAAIAAADwfgAAAhAAALDEAADvGQEAAH8AAAAAAACwxAAAKRoBABB/AAAAAAAAiMQAAF4aAQCwxAAACxsBAKB7AAAAAAAAsMQAAMMbAQA4fwAAAAAAAMzFAADaGwEAAAAAAAIAAACgewAAAgAAAFh/AAACEAAAsMQAACscAQBofwAAAAAAALDEAABqHAEAeH8AAAAAAACwxAAAsBwBAIh/AAAAAAAAsMQAAPIcAQCYfwAAAAAAALDEAAAtHQEAqH8AAAAAAACIxAAAYx0BALDEAABsKgEA4H8AAAAAAACwxAAAbh8BANh/AAAAAAAAiMQAACwfAQCIxAAA6h8BAMzFAAB+KgEAAAAAAAIAAACgewAAAgAAAACAAAACEAAAsMQAAMYqAQAQgAAAAAAAALDEAAD8KgEAIIAAAAAAAACIxAAALSsBALDEAABcLQEASIAAAAAAAACwxAAATisBAGCZAAAAAAAAzMUAAIItAQAAAAAAAgAAAKB7AAACAAAAaIAAAAIQAACwxAAA6S0BAHiAAAAAAAAAsMQAAD4uAQCIgAAAAAAAALDEAACILgEAmIAAAAAAAACIxAAAzS4BALDEAAACLwEAsIAAAAAAAADMxQAAKC8BAAAAAAACAAAAoHsAAAIAAADQgAAAAhAAALDEAACPLwEA4IAAAAAAAACwxAAA5C8BAPCAAAAAAAAAsMQAAC4wAQAAgQAAAAAAAIjEAABzMAEAsMQAAGcxAQAYgQAAAAAAAMzFAACNMQEAAAAAAAIAAACgewAAAgAAADiBAAACEAAAsMQAAPQxAQBIgQAAAAAAALDEAABJMgEAWIEAAAAAAACwxAAAkzIBAGiBAAAAAAAAiMQAANgyAQCwxAAAQTMBAICBAAAAAAAAzMUAAGczAQAAAAAAAgAAAKB7AAACAAAAoIEAAAIQAACwxAAAzjMBALCBAAAAAAAAsMQAACM0AQDAgQAAAAAAALDEAABtNAEA0IEAAAAAAACIxAAAsjQBALDEAADnNAEA6IEAAAAAAADMxQAADTUBAAAAAAACAAAAoHsAAAIAAAAIggAAAhAAALDEAAB0NQEAGIIAAAAAAACwxAAAyTUBACiCAAAAAAAAsMQAABM2AQA4ggAAAAAAAIjEAABYNgEAsMQAACRZAQCgewAAAAAAALDEAADtOAEAaIIAAAAAAACIxAAAwTgBAIjEAABiOQEAsMQAAFw8AQCgewAAAAAAADgAAAAAAAAASJQAAGQAAABlAAAAyP///8j///9IlAAAZgAAAGcAAACwxAAAbDwBAEiUAAAAAAAAsMQAAHpSAQDIggAAAAAAAMzFAACVUgEAAAAAAAIAAACgewAAAgAAAOiCAAACEAAAsMQAAOZSAQD4ggAAAAAAALDEAAAlUwEACIMAAAAAAACIxAAAX1MBALDEAAClUwEACJQAAAAAAABoAAAAAAAAAEiUAABkAAAAZQAAAJj///+Y////SJQAAGYAAABnAAAAsMQAANRTAQBIlAAAAAAAALDEAAAOWAEAaIMAAAAAAADMxQAAKlgBAAAAAAACAAAAoHsAAAIAAACIgwAAAhAAALDEAAB8WAEAmIMAAAAAAACwxAAAvFgBAKiDAAAAAAAAiMQAAPdYAQCwxAAAxFkBAMCDAAAAAAAAzMUAAOVZAQAAAAAAAgAAAKB7AAACAAAA4IMAAAIQAACwxAAAQ1oBAPCDAAAAAAAAsMQAAI9aAQAAhAAAAAAAALDEAADbWgEAEIQAAAAAAACwxAAAIFsBACCEAAAAAAAAiMQAAGBbAQCwxAAApF8BAKB7AAAAAAAAsMQAAAFcAQBIhAAAAAAAAIjEAAAXXAEAsMQAAFVcAQBIhAAAAAAAALDEAAApXQEASIQAAAAAAACwxAAAdF0BAGCZAAAAAAAAsMQAAIdfAQCwhAAAAAAAALDEAABVXgEAYJkAAAAAAACwxAAApV4BALCEAAAAAAAAiMQAAL1eAQCwxAAA014BAGCZAAAAAAAAsMQAAB5fAQCwhAAAAAAAALDEAAA5XwEAYJkAAAAAAACwxAAA9l8BAPiEAAAAAAAAzMUAAA1gAQAAAAAAAgAAAKB7AAACAAAAGIUAAAIQAACwxAAAWmABACiFAAAAAAAAsMQAAJVgAQA4hQAAAAAAAIjEAADLYAEAsMQAAD1iAQCgewAAAAAAALDEAAAzYQEAYIUAAAAAAADMxQAATWEBAAAAAAACAAAAoHsAAAIAAACAhQAAAhAAALDEAACdYQEAkIUAAAAAAACwxAAA22EBAKCFAAAAAAAAiMQAABRiAQCwxAAAj2IBALiFAAAAAAAAzMUAAKpiAQAAAAAAAgAAAKB7AAACAAAA2IUAAAIQAACwxAAA+2IBAOiFAAAAAAAAsMQAADpjAQD4hQAAAAAAAIjEAAB0YwEAsMQAAJ5jAQCgewAAAAAAALDEAAD+ZAEAIIYAAAAAAADMxQAAF2UBAAAAAAACAAAAoHsAAAIAAABAhgAAAhAAALDEAABmZQEAUIYAAAAAAACwxAAAo2UBAGCGAAAAAAAAiMQAANtlAQCwxAAAA2YBAKB7AAAAAAAAsMQAAC1mAQCIhgAAAAAAAMzFAABEZgEAAAAAAAIAAACgewAAAgAAAKiGAAACEAAAsMQAAJFmAQC4hgAAAAAAALDEAADMZgEAyIYAAAAAAACIxAAAAmcBALDEAAD1hAEAmIcAAAAAAACwxAAApmcBAPiGAAAAAAAAiMQAAFxnAQCIxAAAKmgBADwAAAAAAAAAGJQAAAcAAAAIAAAAxP///8T///8YlAAACQAAAAoAAACwxAAAaGsBABiUAAAAAAAAsMQAAFh2AQBQhwAAAAAAAIjEAAAsdgEAiMQAALh2AQCwxAAAO3oBAFCHAAAAAAAAiMQAAA96AQCIxAAAGn4BALDEAABaggEAkIcAAAAAAACIxAAALoIBAIjEAAC6ggEAzMUAABGFAQAAAAAAAgAAAKB7AAACAAAAuIcAAAIQAACwxAAAY4UBAMiHAAAAAAAAsMQAAKOFAQDYhwAAAAAAAIjEAADehQEAsMQAANmGAQDwhwAAAAAAAMzFAAD4hgEAAAAAAAIAAACgewAAAgAAABCIAAACEAAAsMQAAFiHAQAgiAAAAAAAALDEAACmhwEAMIgAAAAAAACwxAAA6YcBAECIAAAAAAAAiMQAACeIAQCwxAAAVYgBAHCCAAAAAAAAsMQAAP+KAQCgewAAAAAAALDEAAAXiwEAcIIAAAAAAACwxAAALIsBAHCCAAAAAAAAsMQAAAaPAQDIiAAAAAAAAIjEAABFiwEAsMQAAGWOAQCwiAAAAAAAALDEAACLjgEAwIgAAAAAAACIxAAAyY4BAMzFAAAajwEAAAAAAAIAAACgewAAAgAAAOiIAAACEAAAsMQAAHaPAQD4iAAAAAAAALDEAADAjwEACIkAAAAAAACwxAAABZABABiJAAAAAAAAiMQAADqQAQCwxAAAXZABADCJAAAAAAAAzMUAAHWQAQAAAAAAAgAAAKB7AAACAAAAUIkAAAIQAACwxAAAw5ABAGCJAAAAAAAAsMQAAP+QAQBwiQAAAAAAAIjEAAA2kQEAsMQAAF2RAQCIiQAAAAAAAMzFAAB0kQEAAAAAAAIAAACgewAAAgAAAKiJAAACEAAAsMQAAMyRAQC4iQAAAAAAALDEAAASkgEAyIkAAAAAAACwxAAATZIBANiJAAAAAAAAiMQAAIOSAQCwxAAATJMBAPCJAAAAAAAAzMUAAGWTAQAAAAAAAgAAAKB7AAACAAAAEIoAAAIQAACwxAAAtJMBACCKAAAAAAAAsMQAAPGTAQAwigAAAAAAAIjEAAAplAEAsMQAAI+WAQBoigAAAAAAALDEAADGlQEAYIoAAAAAAACIxAAAbJUBAIjEAABZlgEAzMUAAK2WAQAAAAAAAgAAAKB7AAACAAAAiIoAAAIQAACwxAAAE5cBAJiKAAAAAAAAsMQAAGeXAQCoigAAAAAAALDEAAC2lwEAuIoAAAAAAACIxAAA9ZcBALDEAAAnmAEAoHsAAAAAAACwxAAAtJgBAOCKAAAAAAAAzMUAAMSYAQAAAAAAAgAAAKB7AAACAAAAAIsAAAIQAACwxAAAHJkBABCLAAAAAAAAsMQAAGKZAQAgiwAAAAAAALDEAACjmQEAMIsAAAAAAACIxAAA1JkBALDEAADTmgEASIsAAAAAAADMxQAA6JoBAAAAAAACAAAAoHsAAAIAAABoiwAAAhAAALDEAABFmwEAeIsAAAAAAACwxAAAkJsBAIiLAAAAAAAAsMQAANabAQCYiwAAAAAAAIjEAAAMnAEAsMQAAIecAQCwiwAAAAAAAMzFAACcnAEAAAAAAAIAAACgewAAAgAAANCLAAACEAAAsMQAAOecAQDgiwAAAAAAALDEAAAgnQEA8IsAAAAAAACIxAAAVJ0BALDEAAB4nQEAoHsAAAAAAACwxAAAlZ0BABiMAAAAAAAAzMUAAK+dAQAAAAAAAgAAAKB7AAACAAAAOIwAAAIQAACwxAAA/50BAEiMAAAAAAAAsMQAAD2eAQBYjAAAAAAAAIjEAAB2ngEAsMQAALOeAQBwjAAAAAAAAMzFAADNngEAAAAAAAIAAACgewAAAgAAAJCMAAACEAAAsMQAAB2fAQCgjAAAAAAAALDEAABbnwEAsIwAAAAAAACIxAAAlJ8BALDEAACBpwEACI0AAAAAAACwxAAASKQBAOCMAAAAAAAAiMQAAMKjAQCIxAAA/qQBALDEAADlpQEAAI0AAAAAAACIxAAAcaUBAIjEAACJpgEAzMUAAJunAQAAAAAAAgAAAKB7AAACAAAAKI0AAAIQAACwxAAA66cBADiNAAAAAAAAsMQAACmoAQBIjQAAAAAAAIjEAABiqAEAsMQAAI6oAQBgjQAAAAAAAMzFAACkqAEAAAAAAAIAAACgewAAAgAAAICNAAACEAAAsMQAAPCoAQCQjQAAAAAAALDEAAAqqQEAoI0AAAAAAACIxAAAX6kBALDEAACEqQEAuI0AAAAAAADMxQAAlakBAAAAAAACAAAAoHsAAAIAAADYjQAAAhAAALDEAADnqQEA6I0AAAAAAACwxAAAJ6oBAPiNAAAAAAAAsMQAAFyqAQAIjgAAAAAAAIjEAACMqgEAsMQAAN6sAQCgewAAAAAAALDEAACsqgEAMI4AAAAAAADMxQAA+KoBAAAAAAACAAAAoHsAAAIAAABQjgAAAhAAALDEAAB6qwEAYI4AAAAAAACwxAAA6qsBAHCOAAAAAAAAiMQAAFWsAQCwxAAAzK8BAKB7AAAAAAAAsMQAALytAQCYjgAAAAAAAMzFAADMrQEAAAAAAAIAAACgewAAAgAAALiOAAACEAAAsMQAABKuAQDIjgAAAAAAALDEAABGrgEA2I4AAAAAAACIxAAAda4BALDEAACzrgEA8I4AAAAAAADMxQAA0K4BAAAAAAACAAAAoHsAAAIAAAAQjwAAAhAAALDEAAAjrwEAII8AAAAAAACwxAAAZK8BADCPAAAAAAAAiMQAAKCvAQCwxAAAI7IBAEiPAAAAAAAAzMUAADyyAQAAAAAAAgAAAKB7AAACAAAAaI8AAAIQAACwxAAAi7IBAHiPAAAAAAAAsMQAAMiyAQCIjwAAAAAAAIjEAAAAswEAsMQAAGS1AQCgewAAAAAAALDEAADVswEAsI8AAAAAAADMxQAA+LMBAAAAAAACAAAAoHsAAAIAAADQjwAAAhAAALDEAABRtAEA4I8AAAAAAACwxAAAmLQBAPCPAAAAAAAAiMQAANq0AQCwxAAAILYBAAiQAAAAAAAAzMUAADC2AQAAAAAAAgAAAKB7AAACAAAAKJAAAAIQAACwxAAAk7YBADiQAAAAAAAAsMQAAOS2AQBIkAAAAAAAALDEAAAqtwEAWJAAAAAAAACwxAAAa7cBAGiQAAAAAAAAiMQAAJy3AQCwxAAAKrgBAKB7AAAAAAAAsMQAAGW6AQCgewAAAAAAALDEAABDuAEAoJAAAAAAAADMxQAAXbgBAAAAAAACAAAAoHsAAAIAAADAkAAAAhAAALDEAACtuAEA0JAAAAAAAACwxAAA67gBAOCQAAAAAAAAiMQAACS5AQCwxAAAZbkBAPiQAAAAAAAAzMUAAH25AQAAAAAAAgAAAKB7AAACAAAAGJEAAAIQAACwxAAAy7kBACiRAAAAAAAAsMQAAAe6AQA4kQAAAAAAAIjEAAA+ugEAsMQAAKe7AQBQkQAAAAAAAMzFAAC9uwEAAAAAAAIAAACgewAAAgAAAHCRAAACEAAAsMQAAAm8AQCAkQAAAAAAALDEAABDvAEAkJEAAAAAAACIxAAAeLwBALDEAAAcvQEAqJEAAAAAAADMxQAAOb0BAAAAAAACAAAAoHsAAAIAAADIkQAAAhAAALDEAACMvQEA2JEAAAAAAACwxAAAzb0BAOiRAAAAAAAAiMQAAAm+AQCwxAAANb4BAACSAAAAAAAAzMUAAEy+AQAAAAAAAgAAAKB7AAACAAAAIJIAAAIQAACwxAAAmb4BADCSAAAAAAAAsMQAANS+AQBAkgAAAAAAAIjEAAAKvwEAsMQAAOy/AQBYkgAAAAAAAMzFAAABwAEAAAAAAAIAAACgewAAAgAAAHiSAAACEAAAsMQAAFPAAQCIkgAAAAAAALDEAACTwAEAmJIAAAAAAACwxAAAzMABAKiSAAAAAAAAiMQAAADBAQCwxAAAt8EBAMCSAAAAAAAAzMUAAMzBAQAAAAAAAgAAAKB7AAACAAAA4JIAAAIQAACwxAAAF8IBAPCSAAAAAAAAsMQAAFDCAQAAkwAAAAAAAIjEAACEwgEAsMQAAMfGAQAYkwAAAAAAALDEAAD5xAEAKJMAAAAAAADMxQAAEcUBAAAAAAACAAAAoHsAAAIAAABIkwAAAhAAALDEAABjxQEAWJMAAAAAAACwxAAAo8UBAGiTAAAAAAAAsMQAAOrFAQB4kwAAAAAAALDEAAAtxgEAiJMAAAAAAACwxAAAacYBAJiTAAAAAAAAiMQAAKDGAQCwxAAAQ8cBAMiTAAAAAAAAlMUAACDHAQAAAAAAwJMAALDFAAAyxwEAiMQAAIjHAQCwxAAArdABAMCZAAAAAAAAsMQAAPHQAQDwkwAAAAAAAIjEAADf0AEAsMQAABvRAQDwkwAAAAAAAIjEAABF0QEAiMQAAHbRAQDMxQAAp9EBAAAAAAABAAAA4JMAAAP0///MxQAA1tEBAAAAAAABAAAA+JMAAAP0///MxQAABdIBAAAAAAABAAAA4JMAAAP0///MxQAANNIBAAAAAAABAAAA+JMAAAP0///MxQAAY9IBAAMAAAACAAAAGJQAAAIAAABIlAAAAggAALDEAADA0gEAiJkAAAAAAACwxAAA3tIBALCZAAAAAAAAsMQAAAjTAQAQlAAAAAAAALDEAAAh0wEACJQAAAAAAACwxAAAYNMBABCUAAAAAAAAsMQAAHjTAQAIlAAAAAAAALDEAACQ0wEACJUAAAAAAACwxAAApNMBAFiZAAAAAAAAsMQAALrTAQAIlQAAAAAAAMzFAADT0wEAAAAAAAIAAAAIlQAAAgAAAEiVAAAAAAAAzMUAABfUAQAAAAAAAQAAAGCVAAAAAAAAiMQAAC3UAQDMxQAARtQBAAAAAAACAAAACJUAAAIAAACIlQAAAAAAAMzFAACK1AEAAAAAAAEAAABglQAAAAAAAMzFAACu1AEAAAAAAAIAAAAIlQAAAgAAAMCVAAAAAAAAzMUAAPLUAQAAAAAAAQAAANiVAAAAAAAAiMQAAAjVAQDMxQAAIdUBAAAAAAACAAAACJUAAAIAAAAAlgAAAAAAAMzFAABl1QEAAAAAAAEAAADYlQAAAAAAAMzFAAC71gEAAAAAAAMAAAAIlQAAAgAAAECWAAACAAAASJYAAAAIAACIxAAAItcBAIjEAAAA1wEAzMUAADXXAQAAAAAAAwAAAAiVAAACAAAAQJYAAAIAAAB4lgAAAAgAAIjEAAB61wEAzMUAAJzXAQAAAAAAAgAAAAiVAAACAAAAoJYAAAAIAACIxAAA4dcBAMzFAAAL2AEAAAAAAAIAAAAIlQAAAgAAAKCWAAAACAAAzMUAAFDYAQAAAAAAAgAAAAiVAAACAAAA6JYAAAIAAACIxAAAbNgBAMzFAACB2AEAAAAAAAIAAAAIlQAAAgAAAOiWAAACAAAAzMUAAJ3YAQAAAAAAAgAAAAiVAAACAAAA6JYAAAIAAADMxQAAudgBAAAAAAACAAAACJUAAAIAAADolgAAAgAAAMzFAAD02AEAAAAAAAIAAAAIlQAAAgAAAHCXAAAAAAAAiMQAADrZAQDMxQAAXtkBAAAAAAACAAAACJUAAAIAAACYlwAAAAAAAIjEAACk2QEAzMUAAMPZAQAAAAAAAgAAAAiVAAACAAAAwJcAAAAAAACIxAAACdoBAMzFAAAi2gEAAAAAAAIAAAAIlQAAAgAAAOiXAAAAAAAAiMQAAGjaAQDMxQAAgdoBAAAAAAACAAAACJUAAAIAAAAQmAAAAgAAAIjEAACW2gEAzMUAAC3bAQAAAAAAAgAAAAiVAAACAAAAEJgAAAIAAACwxAAArtoBAEiYAAAAAAAAzMUAANHaAQAAAAAAAgAAAAiVAAACAAAAaJgAAAIAAACIxAAA9NoBALDEAAAL2wEASJgAAAAAAADMxQAAQtsBAAAAAAACAAAACJUAAAIAAABomAAAAgAAAMzFAABk2wEAAAAAAAIAAAAIlQAAAgAAAGiYAAACAAAAzMUAAIbbAQAAAAAAAgAAAAiVAAACAAAAaJgAAAIAAACwxAAAqdsBAAiVAAAAAAAAzMUAAL/bAQAAAAAAAgAAAAiVAAACAAAAEJkAAAIAAACIxAAA0dsBAMzFAADm2wEAAAAAAAIAAAAIlQAAAgAAABCZAAACAAAAsMQAAPjbAQAIlQAAAAAAALDEAAAN3AEACJUAAAAAAACIxAAAItwBAMzFAAA73AEAAAAAAAEAAABYmQAAAAAAALDEAAAf3QEAiJkAAAAAAACwxAAAQt0BAJiZAAAAAAAAiMQAAFndAQCwxAAAm90BAIiZAAAAAAAAsMQAAL3dAQAgmgAAAAAAAIjEAACD3gEAsMQAAOPeAQDYmQAAAAAAALDEAACQ3gEA6JkAAAAAAACIxAAAsd4BALDEAAC+3gEAyJkAAAAAAACwxAAABuABAMCZAAAAAAAAsMQAABPgAQDAmQAAAAAAALDEAAAj4AEAwJkAAAAAAACwxAAANeABABCaAAAAAAAAsMQAAErgAQAQmgAAAAAAALDEAABb4AEAEJoAAAAAAACwxAAAbOABACCaAAAAAAAAsMQAAI3gAQDAmQAAAAAAALDEAAC94AEA2JkAAAAAAACwxAAAmeABAICaAAAAAAAAsMQAAN/gAQDYmQAAAAAAAHjFAAAiWQEAeMUAAAfhAQCwxAAACuEBANiZAAAAAAAAsMQAAC/hAQDImQAAAAAAAAAAAAD4egAAAQAAAAIAAAABAAAAAQAAAAMAAAABAAAAAgAAAAMAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAQAAAAFAAAABgAAAAQAAAAAAAAA8HoAAAcAAAABAAAAAQAAAAEAAAABAAAAAQAAAAUAAAAGAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAEAAAABQAAAAYAAAAEAAAAAAAAACB7AAACAAAAAAAAABB7AAACAAAAAAAAAEh7AAADAAAAAAAAADh7AAAEAAAAQAAAAAAAAACAewAAAQAAAAIAAAA4AAAA+P///4B7AAADAAAABAAAAMD////A////gHsAAAUAAAAGAAAAAAAAAJB7AAALAAAADAAAAAUAAAABAAAAAgAAAAcAAAABAAAAAgAAAAIAAAADAAAABAAAAAkAAAADAAAACgAAAAAAAADwewAADQAAAA4AAAAIAAAACQAAAAgAAAAFAAAABgAAAAcAAAAAAAAA0HsAAA0AAAAPAAAACAAAAAkAAAAIAAAACAAAAAkAAAAHAAAAAAAAAKB7AAAQAAAAEQAAAAgAAAAKAAAACQAAAAgAAAAJAAAABwAAAAAAAAAIfAAAEgAAABMAAAAKAAAABgAAABQAAAAVAAAABwAAAAsAAAALAAAAAAAAAHB8AAAWAAAAFwAAAAgAAAALAAAACgAAAAwAAAANAAAABwAAAAAAAABQfAAAFgAAABgAAAAIAAAACwAAAAoAAAAIAAAACQAAAAcAAAAAAAAAyHwAABkAAAAaAAAACAAAAAwAAAALAAAADgAAAA8AAAAHAAAAAAAAAKh8AAAbAAAAHAAAAAgAAAAMAAAACwAAAAgAAAAJAAAABwAAAAAAAAAofQAAHQAAAB4AAAAIAAAADQAAAAwAAAAQAAAAEQAAAAcAAAAAAAAACH0AAB0AAAAfAAAACAAAAA0AAAAMAAAACAAAAAkAAAAHAAAAAAAAAKB9AAAgAAAAIQAAAAgAAAAOAAAADQAAABIAAAATAAAABwAAAAAAAACAfQAAIAAAACIAAAAIAAAADgAAAA0AAAAIAAAACQAAAAcAAAAAAAAAuH0AACMAAAAkAAAAFAAAAAgAAAAlAAAAJgAAAAwAAAANAAAAFQAAAAAAAADgfQAAJwAAACgAAAAWAAAACQAAACkAAAAqAAAABAAAAA4AAAAXAAAAAAAAAPh9AAAnAAAAKwAAABgAAAAKAAAALAAAAC0AAAAFAAAADwAAABkAAAAAAAAAEH4AAC4AAAAvAAAACAAAAA8AAAAOAAAAGgAAABsAAAAHAAAAAAAAACB+AAAwAAAAMQAAAAgAAAAPAAAADgAAAAgAAAAJAAAABwAAAAAAAABofgAAMgAAADMAAAAIAAAAEAAAAA8AAAAcAAAAHQAAAAcAAAAAAAAAeH4AADIAAAA0AAAACAAAABAAAAAPAAAACAAAAAkAAAAHAAAAAAAAAMB+AAA1AAAANgAAAAgAAAARAAAAEAAAAB4AAAAfAAAABwAAAAAAAADQfgAANwAAADgAAAAIAAAAEQAAABAAAAAIAAAACQAAAAcAAAAAAAAAGH8AADkAAAA6AAAACAAAAAoAAAARAAAAIAAAACEAAAAHAAAAAAAAACh/AAA7AAAAPAAAAAgAAAASAAAAEgAAACIAAAAjAAAABwAAAAAAAAA4fwAAPQAAAD4AAAAIAAAAEgAAABIAAAAIAAAACQAAAAcAAAAAAAAAsH8AAD8AAABAAAAACAAAABMAAAATAAAACAAAAAkAAAAHAAAAAAAAAMB/AABBAAAAQgAAACQAAAALAAAAQwAAAEQAAAAGAAAAEAAAACUAAAAAAAAA4H8AAD8AAABFAAAACAAAABMAAAATAAAACAAAAAkAAAAHAAAAAAAAACiAAABGAAAARwAAAAgAAAAUAAAAFAAAACYAAAAnAAAABwAAAAAAAAA4gAAASAAAAEkAAABKAAAAEQAAAEsAAAAAAAAASIAAAEwAAABNAAAACAAAABQAAAAUAAAACAAAAAkAAAAHAAAAAAAAAKCAAABOAAAATwAAAAgAAAAVAAAAFQAAACgAAAApAAAABwAAAAAAAACwgAAAUAAAAFEAAAAIAAAAFQAAABUAAAAIAAAACQAAAAcAAAAAAAAACIEAAFIAAABTAAAACAAAABYAAAAWAAAAKgAAACsAAAAHAAAAAAAAABiBAABUAAAAVQAAAAgAAAAWAAAAFgAAAAgAAAAJAAAABwAAAAAAAABwgQAAVgAAAFcAAAAIAAAAFwAAABcAAAAsAAAALQAAAAcAAAAAAAAAgIEAAFgAAABZAAAACAAAABcAAAAXAAAACAAAAAkAAAAHAAAAAAAAANiBAABaAAAAWwAAAAgAAAAYAAAAGAAAAC4AAAAvAAAABwAAAAAAAADogQAAXAAAAF0AAAAIAAAAGAAAABgAAAAIAAAACQAAAAcAAAAAAAAAQIIAABAAAABeAAAACAAAABkAAAAJAAAACAAAAAkAAAAHAAAAAQAAAAIAAAADAAAABAAAAAEAAAACAAAABAAAAAgAAAABAAAAAgAAAAQAAAAIAAAAAQAAAAIAAAADAAAABAAAAAEAAAACAAAABAAAAAgAAAABAAAAAgAAAAQAAAAIAAAAAAAAAFCCAABfAAAAYAAAADAAAAAMAAAAYQAAAGIAAAAxAAAAEgAAADIAAAAAAAAAcIIAABAAAABjAAAACAAAABoAAAAJAAAACAAAAAkAAAAzAAAAOAAAAAAAAACoggAAaAAAAGkAAADI////yP///6iCAABqAAAAawAAAAAAAAC4ggAAbAAAAG0AAAAIAAAAGwAAABkAAAA0AAAANQAAADYAAAAAAAAAyIIAAG4AAABvAAAACAAAABsAAAAZAAAACAAAAAkAAAAHAAAAAAAAABCDAABwAAAAcQAAAA0AAAAHAAAAAwAAABoAAAA3AAAAAgAAAAIAAAA4AAAABAAAABMAAAADAAAAFAAAAGgAAAAAAAAASIMAAHIAAABzAAAAmP///5j///9IgwAAdAAAAHUAAAAAAAAAWIMAAHYAAAB3AAAACAAAABwAAAAbAAAAOQAAADoAAAAHAAAAAAAAAGiDAAB2AAAAeAAAAAgAAAAcAAAAGwAAAAgAAAAJAAAABwAAAAAAAACwgwAAeQAAAHoAAAAIAAAAHQAAABwAAAA7AAAAPAAAAAcAAAAAAAAAwIMAAHsAAAB8AAAACAAAAB0AAAAcAAAACAAAAAkAAAAHAAAAAAAAACiEAAB9AAAAfgAAAAgAAAAKAAAAHQAAAD0AAAA+AAAABwAAAAAAAAA4hAAAfwAAAIAAAAAIAAAAAAAAAEiEAACBAAAAggAAAAEAAAAAAAAAUIQAAIMAAACEAAAACQAAAAAAAABghAAAgQAAAIUAAAAKAAAAAAAAAHCEAACGAAAAhwAAAIgAAAAVAAAAiQAAAAAAAACAhAAAigAAAAAAAACQhAAAhgAAAIsAAACMAAAAEQAAAI0AAAAAAAAAuIQAAIYAAACOAAAAjwAAABEAAACQAAAAAAAAAKCEAACRAAAAAAAAANiEAACGAAAAkgAAAJMAAAARAAAAlAAAAAAAAADIhAAAlQAAAAAAAACwhAAAlgAAAAAAAADohAAAlwAAAJgAAAAIAAAAHgAAAB4AAAA/AAAAQAAAAAcAAAAAAAAA+IQAAJkAAACaAAAACAAAAB4AAAAeAAAACAAAAAkAAAAHAAAAAAAAAECFAAAQAAAAmwAAAAgAAAAfAAAACQAAAAgAAAAJAAAABwAAAAAAAABQhQAAnAAAAJ0AAAAIAAAAIAAAAB8AAABBAAAAQgAAAAcAAAAAAAAAYIUAAJwAAACeAAAACAAAACAAAAAfAAAACAAAAAkAAAAHAAAAAAAAAKiFAACfAAAAoAAAAAgAAAAhAAAAIAAAAEMAAABEAAAABwAAAAAAAAC4hQAAoQAAAKIAAAAIAAAAIQAAACAAAAAIAAAACQAAAAcAAAAAAAAAAIYAABAAAACjAAAACAAAACIAAAAJAAAACAAAAAkAAAAHAAAAAAAAABCGAACkAAAApQAAAAgAAAAjAAAAIQAAAEUAAABGAAAABwAAAAAAAAAghgAApgAAAKcAAAAIAAAAIwAAACEAAAAIAAAACQAAAAcAAAAAAAAAaIYAABAAAACoAAAACAAAACQAAAAJAAAACAAAAAkAAAAHAAAAAAAAAHiGAACpAAAAqgAAAAgAAAAlAAAAIgAAAAgAAAAJAAAABwAAAAAAAACIhgAAqQAAAKsAAAAIAAAAJQAAACIAAAAIAAAACQAAAAcAAAAAAAAA0IYAAKwAAACtAAAACAAAACYAAAAjAAAARwAAAEgAAAAHAAAAAAAAAOCGAACuAAAArwAAAEkAAAAOAAAAsAAAALEAAAAWAAAAFwAAAEoAAAA8AAAAAAAAACiHAACyAAAAswAAAMT////E////KIcAALQAAAC1AAAAAAAAADiHAAC2AAAAtwAAAEsAAAAPAAAAuAAAALkAAABMAAAAGAAAAE0AAAAAAAAAWIcAALYAAAC6AAAATgAAABAAAAC7AAAAvAAAAE8AAAAZAAAAUAAAAAAAAAB4hwAAvQAAAL4AAABRAAAAEQAAAL8AAADAAAAAUgAAABoAAABTAAAAAAAAAJiHAADBAAAAwgAAAAgAAAAmAAAAIwAAAAgAAAAJAAAABwAAAAAAAADghwAAwwAAAMQAAAAIAAAAJwAAACQAAABUAAAAVQAAAAcAAAAAAAAA8IcAAMUAAADGAAAACAAAACcAAAAkAAAACAAAAAkAAAAHAAAAAAAAAEiIAAAQAAAAxwAAAAgAAAAoAAAACQAAAAgAAAAJAAAAMwAAAAAAAABYiAAAEAAAAMgAAAAIAAAAKQAAAAkAAAAIAAAACQAAAFYAAAAAAAAAaIgAABAAAADJAAAACAAAACoAAAAJAAAACAAAAAkAAAAzAAAAAAAAAHiIAAAQAAAAygAAAAgAAAArAAAACQAAAAgAAAAJAAAAMwAAAAAAAACIiAAAywAAAMwAAAAIAAAALAAAACUAAABXAAAAWAAAAAcAAAAAAAAAoIgAABIAAAAAAAAAsIgAABMAAAAAAAAAyIgAAM0AAADOAAAACAAAACwAAAAlAAAACAAAAAkAAAAHAAAAAAAAACCJAADPAAAA0AAAAAgAAAAtAAAAJgAAAFkAAABaAAAABwAAAAAAAAAwiQAAzwAAANEAAAAIAAAALQAAACYAAAAIAAAACQAAAAcAAAAAAAAAeIkAANIAAADTAAAACAAAAC4AAAAnAAAAWwAAAFwAAAAHAAAAAAAAAIiJAADUAAAA1QAAAAgAAAAuAAAAJwAAAAgAAAAJAAAABwAAAAAAAADgiQAA1gAAANcAAAAIAAAALwAAACgAAABdAAAAXgAAAF8AAAAAAAAA8IkAANYAAADYAAAACAAAAC8AAAAoAAAACAAAAAkAAAAHAAAAAAAAADiKAADZAAAA2gAAADAAAAAxAAAAKQAAAGAAAABhAAAABwAAAAAAAABIigAA2wAAANwAAABiAAAAFAAAAN0AAADeAAAAMgAAABsAAABjAAAAAAAAAGiKAADfAAAA4AAAAAgAAAAxAAAAKQAAAAgAAAAJAAAABwAAAAAAAADAigAAEAAAAOEAAAAIAAAAMwAAAAkAAAAIAAAACQAAAAcAAAAAAAAA0IoAAOIAAADjAAAACAAAADQAAAAqAAAACAAAAAkAAABkAAAAAAAAAOCKAADkAAAA5QAAAAgAAAA0AAAAKgAAAAgAAAAJAAAABwAAAAAAAAA4iwAA5gAAAOcAAAAIAAAANQAAACsAAABlAAAAZgAAAAcAAAAAAAAASIsAAOgAAADpAAAACAAAADUAAAArAAAACAAAAAkAAAAHAAAAAAAAAKCLAADqAAAA6wAAAAgAAAA2AAAALAAAAGcAAABoAAAABwAAAAAAAACwiwAA6gAAAOwAAAAIAAAANgAAACwAAAAIAAAACQAAAAcAAAAAAAAA+IsAABAAAADtAAAACAAAADcAAAAJAAAACAAAAAkAAABpAAAAAAAAAAiMAADuAAAA7wAAAAgAAAA4AAAALQAAAAgAAAAJAAAABwAAAAAAAAAYjAAA7gAAAPAAAAAIAAAAOAAAAC0AAAAIAAAACQAAAAcAAAAAAAAAYIwAAPEAAADyAAAACAAAADkAAAAuAAAACAAAAAkAAAAHAAAAAAAAAHCMAADxAAAA8wAAAAgAAAA5AAAALgAAAAgAAAAJAAAABwAAAAAAAAC4jAAA9AAAAPUAAAAIAAAAOgAAAC8AAABqAAAAawAAAAcAAAAAAAAAyIwAAPYAAAD3AAAAbAAAABUAAAD4AAAA+QAAAAsAAAAcAAAAbQAAAAAAAADojAAA+gAAAPsAAABuAAAAFgAAAPwAAAD9AAAADAAAAB0AAABvAAAAAAAAAAiNAAD+AAAA/wAAAAgAAAA6AAAALwAAAAgAAAAJAAAABwAAAAAAAABQjQAAAAEAAAEBAAAIAAAAOwAAADAAAAAIAAAACQAAAAcAAAAAAAAAYI0AAAABAAACAQAACAAAADsAAAAwAAAACAAAAAkAAAAHAAAAAAAAAKiNAAADAQAABAEAAAgAAAA8AAAAMQAAAHAAAABxAAAABwAAAAAAAAC4jQAABQEAAAYBAAAIAAAAPAAAADEAAAAIAAAACQAAAAcAAAAAAAAAEI4AAAcBAAAIAQAACAAAAD0AAAAJAAAACAAAAAkAAAAHAAAAAAAAACCOAAAJAQAACgEAAAgAAAA+AAAAMgAAAHIAAABzAAAABwAAAAAAAAAwjgAACQEAAAsBAAAIAAAAPgAAADIAAAAIAAAACQAAAAcAAAAAAAAAeI4AAAwBAAANAQAACAAAAD8AAAAJAAAACAAAAAkAAAAHAAAAAAAAAIiOAAAOAQAADwEAAAgAAABAAAAAMwAAAHQAAAB1AAAABwAAAAAAAACYjgAADgEAABABAAAIAAAAQAAAADMAAAAIAAAACQAAAAcAAAAAAAAA4I4AABEBAAASAQAACAAAAEEAAAA0AAAAdgAAAHcAAAAHAAAAAAAAAPCOAAARAQAAEwEAAAgAAABBAAAANAAAAAgAAAAJAAAABwAAAAAAAAA4jwAAFAEAABUBAAAIAAAAQgAAADUAAAB4AAAAeQAAAHoAAAAAAAAASI8AABQBAAAWAQAACAAAAEIAAAA1AAAACAAAAAkAAAAHAAAAAAAAAJCPAAAQAAAAFwEAAAgAAABDAAAACQAAAAgAAAAJAAAABwAAAAAAAACgjwAAGAEAABkBAAAIAAAARAAAADYAAAB7AAAAfAAAAAcAAAAAAAAAsI8AABgBAAAaAQAACAAAAEQAAAA2AAAACAAAAAkAAAAHAAAAAAAAAPiPAAAbAQAAHAEAAAgAAABFAAAANwAAAH0AAAB+AAAABwAAAAAAAAAIkAAAHQEAAB4BAAAIAAAARQAAADcAAAAIAAAACQAAAAcAAAAAAAAAcJAAABAAAAAfAQAACAAAAEYAAAAJAAAACAAAAAkAAAAHAAAAAAAAAICQAAAQAAAAIAEAAAgAAABHAAAACQAAAAgAAAAJAAAABwAAAAAAAACQkAAAIQEAACIBAAAIAAAASAAAADgAAAB/AAAAgAAAAAcAAAAAAAAAoJAAACEBAAAjAQAACAAAAEgAAAA4AAAACAAAAAkAAAAHAAAAAAAAAOiQAAAkAQAAJQEAAAgAAABJAAAAOQAAAIEAAACCAAAABwAAAAAAAAD4kAAAJAEAACYBAAAIAAAASQAAADkAAAAIAAAACQAAAAcAAAAAAAAAQJEAACcBAAAoAQAACAAAAEoAAAA6AAAAgwAAAIQAAAAHAAAAAAAAAFCRAAApAQAAKgEAAAgAAABKAAAAOgAAAAgAAAAJAAAABwAAAAAAAACYkQAAKwEAACwBAAAIAAAASwAAADsAAACFAAAAhgAAAAcAAAAAAAAAqJEAAC0BAAAuAQAACAAAAEsAAAA7AAAACAAAAAkAAAAHAAAAAAAAAPCRAAAvAQAAMAEAAAgAAABMAAAAPAAAAIcAAACIAAAABwAAAAAAAAAAkgAAMQEAADIBAAAIAAAATAAAADwAAAAIAAAACQAAAAcAAAAAAAAASJIAADMBAAA0AQAACAAAAE0AAAA9AAAAiQAAAIoAAAAHAAAAAAAAAFiSAAA1AQAANgEAAAgAAABNAAAAPQAAAAgAAAAJAAAABwAAAAAAAACwkgAANwEAADgBAAAIAAAATgAAAD4AAACLAAAAjAAAAAcAAAAAAAAAwJIAADkBAAA6AQAACAAAAE4AAAA+AAAACAAAAAkAAAAHAAAAAAAAAAiTAAA7AQAAPAEAAAgAAABPAAAAPwAAAI0AAACOAAAABwAAABcAAAAAAAAAGJMAADsBAAA9AQAACAAAAE8AAAA/AAAAjQAAAI8AAAAHAAAAGAAAAAAAAAAokwAAPgEAAD8BAAAIAAAATwAAAD8AAAAIAAAACQAAAAcAAAAAAAAAoJMAAEABAABBAQAAkAAAABkAAABCAQAAQwEAAJEAAAAeAAAAkgAAAIBdAAAUAAAAQy5VVEYtOAAAAAAAAAAAAAAAAABItAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAACTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAADgAAAKkQAgAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAAAAAAAAAAAkwAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAA4AAADI8AEAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAJMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAOAAAA2PQBAAAEAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAr/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0tQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACICgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF9wiQD/CS8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQkwAARAEAAEUBAACUAAAAAAAAAPCTAABGAQAARwEAAAAAAAAIlAAASAEAAEkBAAAFAAAAAQAAAAQAAABAAAAAAQAAAAIAAAACAAAAlQAAAAQAAAAfAAAAAwAAACAAAAAAAAAAEJQAAEoBAABLAQAAGgAAABIAAAAFAAAAQQAAAJYAAACXAAAAEwAAAJgAAACZAAAAIQAAABQAAAAiAAAACAAAAAAAAAAYlAAABwAAAAgAAAD4////+P///xiUAAAJAAAACgAAAAgAAAAAAAAAMJQAAEwBAABNAQAA+P////j///8wlAAATgEAAE8BAAAEAAAAAAAAAGCUAABQAQAAUQEAAPz////8////YJQAAFIBAABTAQAAAAAAAJiUAABUAQAAVQEAAJoAAABQAAAAFQAAABYAAABRAAAAAAAAAKiUAABWAQAAVwEAAJsAAACQuAAAAAAAALiUAABKAQAAWAEAABsAAAASAAAABQAAAEEAAACcAAAAlwAAABMAAACYAAAAmQAAACEAAAAXAAAAIwAAAAAAAADIlAAASAEAAFkBAAAcAAAAAQAAAAQAAABAAAAAnQAAAAIAAAACAAAAlQAAAAQAAAAfAAAAGAAAACQAAAAAAAAA2JQAAEoBAABaAQAAHQAAABIAAAAFAAAAQQAAAJYAAACXAAAAEwAAAJ4AAACfAAAAJQAAABQAAAAiAAAAAAAAAOiUAABIAQAAWwEAAB4AAAABAAAABAAAAEAAAAABAAAAAgAAAAIAAACgAAAAoQAAACYAAAADAAAAIAAAAAAAAAD4lAAAXAEAAF0BAABeAQAAAQAAAEIAAAAZAAAAAAAAABiVAABfAQAAYAEAAF4BAAACAAAAQwAAABoAAAAAAAAAKJUAAGEBAABiAQAAXgEAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAAAAAAAGiVAABjAQAAZAEAAF4BAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAAAAAAACglQAAZQEAAGYBAABeAQAAAwAAAAQAAAAXAAAABQAAABgAAAABAAAAAgAAAAYAAAAAAAAA4JUAAGcBAABoAQAAXgEAAAcAAAAIAAAAGQAAAAkAAAAaAAAAAwAAAAQAAAAKAAAAAAAAABiWAABpAQAAagEAAF4BAACiAAAAGwAAABwAAAAdAAAAHgAAAB8AAAABAAAA+P///xiWAACjAAAApAAAAKUAAACmAAAApwAAAKgAAACpAAAAAAAAAFCWAABrAQAAbAEAAF4BAACqAAAAIAAAACEAAAAiAAAAIwAAACQAAAACAAAA+P///1CWAACrAAAArAAAAK0AAACuAAAArwAAALAAAACxAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAAAAAAJQAAAG0AAAAvAAAAJQAAAGQAAAAvAAAAJQAAAHkAAAAAAAAAJQAAAEkAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAHAAAAAAAAAAJQAAAGEAAAAgAAAAJQAAAGIAAAAgAAAAJQAAAGQAAAAgAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAFkAAAAAAAAAQQAAAE0AAAAAAAAAUAAAAE0AAAAAAAAASgAAAGEAAABuAAAAdQAAAGEAAAByAAAAeQAAAAAAAABGAAAAZQAAAGIAAAByAAAAdQAAAGEAAAByAAAAeQAAAAAAAABNAAAAYQAAAHIAAABjAAAAaAAAAAAAAABBAAAAcAAAAHIAAABpAAAAbAAAAAAAAABNAAAAYQAAAHkAAAAAAAAASgAAAHUAAABuAAAAZQAAAAAAAABKAAAAdQAAAGwAAAB5AAAAAAAAAEEAAAB1AAAAZwAAAHUAAABzAAAAdAAAAAAAAABTAAAAZQAAAHAAAAB0AAAAZQAAAG0AAABiAAAAZQAAAHIAAAAAAAAATwAAAGMAAAB0AAAAbwAAAGIAAABlAAAAcgAAAAAAAABOAAAAbwAAAHYAAABlAAAAbQAAAGIAAABlAAAAcgAAAAAAAABEAAAAZQAAAGMAAABlAAAAbQAAAGIAAABlAAAAcgAAAAAAAABKAAAAYQAAAG4AAAAAAAAARgAAAGUAAABiAAAAAAAAAE0AAABhAAAAcgAAAAAAAABBAAAAcAAAAHIAAAAAAAAASgAAAHUAAABuAAAAAAAAAEoAAAB1AAAAbAAAAAAAAABBAAAAdQAAAGcAAAAAAAAAUwAAAGUAAABwAAAAAAAAAE8AAABjAAAAdAAAAAAAAABOAAAAbwAAAHYAAAAAAAAARAAAAGUAAABjAAAAAAAAAFMAAAB1AAAAbgAAAGQAAABhAAAAeQAAAAAAAABNAAAAbwAAAG4AAABkAAAAYQAAAHkAAAAAAAAAVAAAAHUAAABlAAAAcwAAAGQAAABhAAAAeQAAAAAAAABXAAAAZQAAAGQAAABuAAAAZQAAAHMAAABkAAAAYQAAAHkAAAAAAAAAVAAAAGgAAAB1AAAAcgAAAHMAAABkAAAAYQAAAHkAAAAAAAAARgAAAHIAAABpAAAAZAAAAGEAAAB5AAAAAAAAAFMAAABhAAAAdAAAAHUAAAByAAAAZAAAAGEAAAB5AAAAAAAAAFMAAAB1AAAAbgAAAAAAAABNAAAAbwAAAG4AAAAAAAAAVAAAAHUAAABlAAAAAAAAAFcAAABlAAAAZAAAAAAAAABUAAAAaAAAAHUAAAAAAAAARgAAAHIAAABpAAAAAAAAAFMAAABhAAAAdAAAAAAAAAAAAAAAgJYAAG0BAABuAQAAXgEAAAEAAAAAAAAAqJYAAG8BAABwAQAAXgEAAAIAAAAAAAAAyJYAAHEBAAByAQAAXgEAALIAAACzAAAAHwAAACAAAAAhAAAAIgAAALQAAAAjAAAAJAAAAAAAAADwlgAAcwEAAHQBAABeAQAAtQAAALYAAAAlAAAAJgAAACcAAAAoAAAAtwAAACkAAAAqAAAAAAAAABCXAAB1AQAAdgEAAF4BAAC4AAAAuQAAACsAAAAsAAAALQAAAC4AAAC6AAAALwAAADAAAAAAAAAAMJcAAHcBAAB4AQAAXgEAALsAAAC8AAAAMQAAADIAAAAzAAAANAAAAL0AAAA1AAAANgAAAAAAAABQlwAAeQEAAHoBAABeAQAAAwAAAAQAAAAAAAAAeJcAAHsBAAB8AQAAXgEAAAUAAAAGAAAAAAAAAKCXAAB9AQAAfgEAAF4BAAABAAAAJQAAAAAAAADIlwAAfwEAAIABAABeAQAAAgAAACYAAAAAAAAA8JcAAIEBAACCAQAAXgEAABsAAAAGAAAANwAAAAAAAAAYmAAAgwEAAIQBAABeAQAAHAAAAAcAAAA4AAAAAAAAAHCYAACFAQAAhgEAAF4BAAADAAAABAAAAAsAAAC+AAAAvwAAAAwAAADAAAAAAAAAADiYAACFAQAAhwEAAF4BAAADAAAABAAAAAsAAAC+AAAAvwAAAAwAAADAAAAAAAAAAKCYAACIAQAAiQEAAF4BAAAFAAAABgAAAA0AAADBAAAAwgAAAA4AAADDAAAAAAAAAOCYAACKAQAAiwEAAF4BAAAAAAAA8JgAAIwBAACNAQAAXgEAACcAAAAdAAAAKAAAAB4AAAApAAAAAQAAAB8AAAAPAAAAAAAAADiZAACOAQAAjwEAAF4BAADEAAAAxQAAADkAAAA6AAAAOwAAAAAAAABImQAAkAEAAJEBAABeAQAAxgAAAMcAAAA8AAAAPQAAAD4AAABmAAAAYQAAAGwAAABzAAAAZQAAAAAAAAB0AAAAcgAAAHUAAABlAAAAAAAAAAAAAAAIlQAAhQEAAJIBAABeAQAAAAAAABiZAACFAQAAkwEAAF4BAAAgAAAAAgAAAAMAAAAEAAAAKgAAACEAAAArAAAAIgAAACwAAAAFAAAAIwAAABAAAAAAAAAAgJgAAIUBAACUAQAAXgEAAAcAAAAIAAAAEQAAAMgAAADJAAAAEgAAAMoAAAAAAAAAwJgAAIUBAACVAQAAXgEAAAkAAAAKAAAAEwAAAMsAAADMAAAAFAAAAM0AAAAAAAAASJgAAIUBAACWAQAAXgEAAAMAAAAEAAAACwAAAL4AAAC/AAAADAAAAMAAAAAAAAAASJYAAKMAAACkAAAApQAAAKYAAACnAAAAqAAAAKkAAAAAAAAAeJYAAKsAAACsAAAArQAAAK4AAACvAAAAsAAAALEAAAAAAAAAeJkAAFQBAACXAQAAzgAAAFAAAAAVAAAAFgAAAFIAAAAAAAAAoJkAAFQBAACYAQAAzwAAAFMAAAAVAAAAFgAAAFQAAAAgxAAARMQAAAAAAACwmQAAmQEAAJoBAACbAAAAAgAAAAAAAADImQAAmwEAAJwBAACdAQAAngEAACQAAAAIAAAAAQAAAEQAAAAAAAAA8JkAAJsBAACfAQAAnQEAAJ4BAAAkAAAACQAAAAIAAABFAAAAAAAAAACaAACgAQAAoQEAANAAAAAAAAAAEJoAAKIBAACjAQAA0QAAAAAAAAAgmgAApAEAAKUBAACbAAAAAAAAADCaAACiAQAApgEAANEAAAAAAAAAQJoAAKIBAACnAQAA0QAAAAAAAABQmgAAogEAAKgBAADRAAAAAAAAAGCaAACkAQAAqQEAAJsAAAAAAAAAcJoAAKoBAACrAQAA0gAAAAAAAACgmgAAmwEAAKwBAACdAQAAngEAACUAAAAAAAAAkJoAAJsBAACtAQAAnQEAAJ4BAAAmAAAAAAAAAMCaAACbAQAArgEAAJ0BAACeAQAAJwAAAAAAAADQmgAAmwEAAK8BAACdAQAAngEAACQAAAAKAAAAAwAAAEYAAABpMzJfY3R0egBpMzJfY3Rwb3AAaTMyX2JjMmYAaTMyX2JjMmkAaTY0X2FkZABpNjRfc3ViAGk2NF9tdWwAaTY0X3VkaXYAaTY0X3NkaXYAaTY0X3VyZW0AaTY0X3NyZW0AaTY0X2FuZABpNjRfb3IAaTY0X3hvcgBpNjRfc2hsAGk2NF9hc2hyAGk2NF9sc2hyAGk2NF9lcQBpNjRfbmUAaTY0X3VsZQBpNjRfc2xlAGk2NF91Z2UAaTY0X3NnZQBpNjRfdWx0AGk2NF9zbHQAaTY0X3VndABpNjRfc2d0AGk2NF90cnVuYwBpNjRfc2V4dABpNjRfemV4dABpNjRfczJmAGk2NF9zMmQAaTY0X3UyZgBpNjRfdTJkAGk2NF9mMnMAaTY0X2QycwBpNjRfZjJ1AGk2NF9kMnUAaTY0X2JjMmQAaTY0X2JjMmkAaTY0X2N0dHoAaTY0X2N0bHoAaTY0X2N0cG9wAGYzMl9jb3B5c2lnbgBmNjRfY29weXNpZ24AbG9hZDEAbG9hZDIAbG9hZDQAbG9hZDgAbG9hZGYAbG9hZGQAc3RvcmUxAHN0b3JlMgBzdG9yZTQAc3RvcmU4AHN0b3JlZgBzdG9yZWQAZnRDYWxsXwBtZnRDYWxsXwBBdG9taWNzAGV4Y2hhbmdlAGNvbXBhcmVFeGNoYW5nZQBpNjRfYXRvbWljc19sb2FkAGk2NF9hdG9taWNzX3N0b3JlAGk2NF9hdG9taWNzX2FuZABpNjRfYXRvbWljc19vcgBpNjRfYXRvbWljc194b3IAaTY0X2F0b21pY3NfYWRkAGk2NF9hdG9taWNzX3N1YgBpNjRfYXRvbWljc19leGNoYW5nZQBpNjRfYXRvbWljc19jb21wYXJlRXhjaGFuZ2UAZW1zY3JpcHRlbl9kZWJ1Z2luZm8AYXN0WzBdID09IFRPUExFVkVMAC4vc3JjL2FzbTJ3YXNtLmgAcHJvY2Vzc0FzbQBhc21GdW5jdGlvblswXSA9PSBERUZVTgBib2R5WzBdWzBdID09IFNUUklORyAmJiAoYm9keVswXVsxXS0+Z2V0SVN0cmluZygpID09IElTdHJpbmcoInVzZSBhc20iKSB8fCBib2R5WzBdWzFdLT5nZXRJU3RyaW5nKCkgPT0gSVN0cmluZygiYWxtb3N0IGFzbSIpKQB2YWx1ZS0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVsxXSA9PSBPUiAmJiB2YWx1ZVszXS0+aXNOdW1iZXIoKSAmJiB2YWx1ZVszXS0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVsxXSA9PSBQTFVTAGltcG9ydC0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVsxXS0+aXNTdHJpbmcoKSAmJiB2YWx1ZVsxXSA9PSBNYXRoX2Zyb3VuZCAmJiB2YWx1ZVsyXVswXS0+aXNOdW1iZXIoKSAmJiB2YWx1ZVsyXVswXS0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVswXSA9PSBDQUxMAGludmFsaWQgdmlldyBpbXBvcnQAY29uc3RydWN0b3ItPmlzU3RyaW5nKCkAaW52YWxpZCBzaG9ydCB2aWV3IGltcG9ydAB2aWV3cy5maW5kKG5hbWUpID09IHZpZXdzLmVuZCgpAGludmFsaWQgdmFyIGVsZW1lbnQAX2Vtc2NyaXB0ZW5fcmVwbGFjZV9tZW1vcnkAIXdhc20uZ2V0RnVuY3Rpb25Pck51bGwodmFsdWUpAHBhaXJbMV0tPmlzTnVtYmVyKCkAZXhwb3J0ZWQuY291bnQoa2V5KSA9PSAwAGR1cGxpY2F0ZSBmdW5jdGlvbjogACFmdW5jLT50eXBlLmlzKCkAeGwAeGgAeWwAeWgAeDY0AHk2NABhc20yd2FzbWluZyBmdW5jOiAAYnJlYWtTdGFjay5zaXplKCkgPT0gMCAmJiBjb250aW51ZVN0YWNrLnNpemUoKSA9PSAwAHByb2Nlc3NGdW5jdGlvbgBwYXJlbnRMYWJlbC5pc051bGwoKQBhc20gcGFyc2luZy4uLgoAInsgcmV0dXJuIE1vZHVsZVsncHJvdmlkZWRUb3RhbE1lbW9yeSddOyB9IgBFcnJvcjogcHJvdmlkZWQgbWVtb3J5IGlzIG5vdCBhIG11bHRpcGxlIG9mIHRoZSA2NGsgd2FzbSBwYWdlIHNpemUKAHdhc21pbmcuLi4KAHdhc20tcy1leHByZXNzaW9uIHBhcnNpbmcuLi4KAHdhc20tYmluYXJ5IHBhcnNpbmcuLi4KAGluc3RhbnRpYXRpbmcgbW9kdWxlOiAKAGdlbmVyYXRpbmcgZXhwb3J0cy4uLgoAeyBNb2R1bGVbJ2FzbUV4cG9ydHMnXSA9IHt9OyB9AHsgdmFyIG5hbWUgPSBQb2ludGVyX3N0cmluZ2lmeSgkMCk7IE1vZHVsZVsnYXNtRXhwb3J0cyddW25hbWVdID0gZnVuY3Rpb24oKSB7IE1vZHVsZVsndGVtcEFyZ3VtZW50cyddID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTsgTW9kdWxlWydfY2FsbF9mcm9tX2pzJ10oJDApOyByZXR1cm4gTW9kdWxlWyd0ZW1wUmV0dXJuJ107IH07IH0AeyB2YXIgbW9kID0gUG9pbnRlcl9zdHJpbmdpZnkoJDApOyB2YXIgYmFzZSA9IFBvaW50ZXJfc3RyaW5naWZ5KCQxKTsgdmFyIG5hbWUgPSBQb2ludGVyX3N0cmluZ2lmeSgkMik7IGFzc2VydChNb2R1bGVbJ2xvb2t1cEltcG9ydCddKG1vZCwgYmFzZSkgIT09IHVuZGVmaW5lZCwgJ2NoZWNraW5nIGltcG9ydCAnICsgbmFtZSArICcgPSAnICsgbW9kICsgJy4nICsgYmFzZSk7IH0AY3JlYXRpbmcgaW5zdGFuY2UuLi4KAHsgTW9kdWxlWydvdXRzaWRlJ11bJ2V4dHJhU3RhY2tUcmFjZSddID0gZnVuY3Rpb24oKSB7IHJldHVybiBQb2ludGVyX3N0cmluZ2lmeShNb2R1bGVbJ19pbnRlcnByZXRlcl9zdGFja190cmFjZSddKCkpOyB9OyB9AGNhbGxfZnJvbV9qcyAALi9zcmMvd2FzbS1qcy5jcHAAY2FsbF9mcm9tX2pzACJ7IHJldHVybiBNb2R1bGVbJ3RlbXBBcmd1bWVudHMnXS5sZW5ndGggfSIAeyByZXR1cm4gTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ11bJDBdIH0AY2FsbF9mcm9tX2pzIHJldHVybmluZyAAeyBNb2R1bGVbJ3RlbXBSZXR1cm4nXSA9IHVuZGVmaW5lZCB9AHsgTW9kdWxlWyd0ZW1wUmV0dXJuJ10gPSAkMCB9AHMALi9zcmMvZW1zY3JpcHRlbi1vcHRpbWl6ZXIvaXN0cmluZy5oAElTdHJpbmcAaXNTdHJpbmcoKQBnZXRJU3RyaW5nAGEgPD0gc3RkOjpudW1lcmljX2xpbWl0czxhZGRyZXNzX3Q+OjptYXgoKQAuL3NyYy93YXNtLmgAQWRkcmVzcwBpc0FycmF5KCkAc2l6ZQBpc051bWJlcigpAGdldE51bWJlcgBtYXBwZWRHbG9iYWxzLmZpbmQobmFtZSkgPT0gbWFwcGVkR2xvYmFscy5lbmQoKQBhbGxvY2F0ZUdsb2JhbABpbXBvcnRlZFswXSA9PSBET1QAbW9kdWxlWzFdLT5pc1N0cmluZygpAE1hdGhfaW11bC5pc051bGwoKQBNYXRoX2NsejMyLmlzTnVsbCgpAE1hdGhfZnJvdW5kLmlzTnVsbCgpAE1hdGhfYWJzLmlzTnVsbCgpAE1hdGhfZmxvb3IuaXNOdWxsKCkATWF0aF9jZWlsLmlzTnVsbCgpAE1hdGhfc3FydC5pc051bGwoKQBNYXRoX21heC5pc051bGwoKQBNYXRoX21pbi5pc051bGwoKQBBdG9taWNzX2xvYWQuaXNOdWxsKCkAQXRvbWljc19zdG9yZS5pc051bGwoKQBBdG9taWNzX2V4Y2hhbmdlLmlzTnVsbCgpAEF0b21pY3NfY29tcGFyZUV4Y2hhbmdlLmlzTnVsbCgpAEF0b21pY3NfYWRkLmlzTnVsbCgpAEF0b21pY3Nfc3ViLmlzTnVsbCgpAEF0b21pY3NfYW5kLmlzTnVsbCgpAEF0b21pY3Nfb3IuaXNOdWxsKCkAQXRvbWljc194b3IuaXNOdWxsKCkAbW9kdWxlLT5pc1N0cmluZygpAHRlbXBEb3VibGVQdHIuaXNOdWxsKCkAbGx2bV9jdHR6X2kzMi5pc051bGwoKQAkYXNtMndhc20kaW1wb3J0AGdldENTdHJpbmcAZm1vZChnZXROdW1iZXIoKSwgMSkgPT0gMABnZXRJbnRlZ2VyAGRvdWJsZShyZXQpID09IGdldE51bWJlcigpAGlzQ29uY3JldGVUeXBlKHZhbHVlLnR5cGUpAC4vc3JjL3dhc20tYnVpbGRlci5oAG1ha2VDb25zdABGYXRhbDogAG9wZXJhbmRzICYmIG9wZXJhbmRzLT5zaXplKCkgPT0gMQBnZXRCdWlsdGluRnVuY3Rpb25UeXBlAENvdWxkIG5vdCBmaW5kIHBhc3M6IABmdW5jLT5sb2NhbEluZGljZXMuc2l6ZSgpID09IGZ1bmMtPnBhcmFtcy5zaXplKCkAYWRkUGFyYW0AbmFtZS5pcygpAGFkZFZhcgBpc0NvbmNyZXRlVHlwZShyZXQtPnZhbHVlLT50eXBlKSA/IHJldC0+dmFsdWUtPnR5cGUgPT0gdHlwZSA6IHRydWUAbWFrZVN0b3JlAGFzbTJ3YXNtID09IG51bGxwdHIgJiYgc0V4cHJlc3Npb25QYXJzZXIgPT0gbnVsbHB0ciAmJiBzRXhwcmVzc2lvbldhc21CdWlsZGVyID09IG51bGxwdHIgJiYgaW5zdGFuY2UgPT0gbnVsbHB0cgBwcmVwYXJlMndhc20AInsgcmV0dXJuICEhTW9kdWxlWydvdXRzaWRlJ11bJ1dBU01fSlNfREVCVUcnXSB9IgAvLyBFTVNDUklQVEVOX1NUQVJUX0ZVTkNTAHJldHVybiB0cnVlOwBmdW5jdGlvbiAAc3Ryc3RyKGdyb3d0aEZ1bmNTdGFydCwgImZ1bmN0aW9uICIpID09IGdyb3d0aEZ1bmNTdGFydABwcm9jZXNzAGdyb3d0aEZ1bmNFbmQgPiBncm93dGhGdW5jU3RhcnQgKyA1ACh1bmtub3duKQBlcnJvciBpbiBoYW5kbGluZyBkZWJ1ZyBpbmZvAC8vQGxpbmUAIAoAIgoAYXNtJwBhc20iAAogdmFyIGVtc2NyaXB0ZW5fZGVidWdpbmZvID0gZW52LmVtc2NyaXB0ZW5fZGVidWdpbmZvOwBaMTFpbnN0YW50aWF0ZUUxOUpTRXh0ZXJuYWxJbnRlcmZhY2UATjR3YXNtMThNb2R1bGVJbnN0YW5jZUJhc2VJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMxXzRsZXNzSVMzX0VFTlMxXzlhbGxvY2F0b3JJTlMxXzRwYWlySUtTM19TNF9FRUVFRUVOU18xNE1vZHVsZUluc3RhbmNlRUUxN0V4dGVybmFsSW50ZXJmYWNlRQAuL3NyYy9saXRlcmFsLmgAZ2V0aTY0AHJlaW50ZXJwcmV0aTMyAHJlaW50ZXJwcmV0aTY0AGltcG9ydC0+a2luZCA9PSBFeHRlcm5hbEtpbmQ6Ok1lbW9yeQBpbml0AHsgTW9kdWxlWydhc21FeHBvcnRzJ11bJ21lbW9yeSddID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXSgnZW52JywgJ21lbW9yeScpOyB9AHsgTW9kdWxlWydhc21FeHBvcnRzJ11bJ21lbW9yeSddID0gTW9kdWxlWydvdXRzaWRlJ11bJ25ld0J1ZmZlciddID0gbmV3IEFycmF5QnVmZmVyKCQwKTsgfQB7IHZhciBzb3VyY2UgPSBNb2R1bGVbJ0hFQVA4J10uc3ViYXJyYXkoJDEsICQxICsgJDIpOyB2YXIgdGFyZ2V0ID0gbmV3IEludDhBcnJheShNb2R1bGVbJ2FzbUV4cG9ydHMnXVsnbWVtb3J5J10pOyB0YXJnZXQuc2V0KHNvdXJjZSwgJDApOyB9AGltcG9ydC0+a2luZCA9PSBFeHRlcm5hbEtpbmQ6OlRhYmxlAHsgTW9kdWxlWydvdXRzaWRlJ11bJ3dhc21UYWJsZSddID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXSgnZW52JywgJ3RhYmxlJyk7IH0AeyBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ10gPSBuZXcgQXJyYXkoJDApOyB9AHsgTW9kdWxlWydhc21FeHBvcnRzJ11bJ3RhYmxlJ10gPSBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ107IH0Ab2Zmc2V0ICsgc2VnbWVudC5kYXRhLnNpemUoKSA8PSB3YXNtLnRhYmxlLmluaXRpYWwAeyBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ11bJDBdID0gJDE7IH0AeyBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ11bJDBdID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXShQb2ludGVyX3N0cmluZ2lmeSgkMSksIFBvaW50ZXJfc3RyaW5naWZ5KCQyKSk7IH0ATjR3YXNtMjRDb25zdGFudEV4cHJlc3Npb25SdW5uZXJJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMxXzRsZXNzSVMzX0VFTlMxXzlhbGxvY2F0b3JJTlMxXzRwYWlySUtTM19TNF9FRUVFRUVFRQBONHdhc20xNkV4cHJlc3Npb25SdW5uZXJJTlNfMjRDb25zdGFudEV4cHJlc3Npb25SdW5uZXJJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMyXzRsZXNzSVM0X0VFTlMyXzlhbGxvY2F0b3JJTlMyXzRwYWlySUtTNF9TNV9FRUVFRUVFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzI0Q29uc3RhbnRFeHByZXNzaW9uUnVubmVySU5TdDNfXzIzbWFwSU5TXzROYW1lRU5TXzdMaXRlcmFsRU5TMl80bGVzc0lTNF9FRU5TMl85YWxsb2NhdG9ySU5TMl80cGFpcklLUzRfUzVfRUVFRUVFRUVOU180Rmxvd0VFRQB7IHZhciBtb2QgPSBQb2ludGVyX3N0cmluZ2lmeSgkMCk7IHZhciBiYXNlID0gUG9pbnRlcl9zdHJpbmdpZnkoJDEpOyB2YXIgbG9va3VwID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXShtb2QsIGJhc2UpOyByZXR1cm4gbG9va3VwOyB9AGNhbGxpbmcgaW1wb3J0R2xvYmFsIGZvciAAIHJldHVybmluZyAAKG51bGwgTmFtZSkAY2FsbGluZyBpbXBvcnQgAHsgdmFyIG1vZCA9IFBvaW50ZXJfc3RyaW5naWZ5KCQwKTsgdmFyIGJhc2UgPSBQb2ludGVyX3N0cmluZ2lmeSgkMSk7IHZhciB0ZW1wQXJndW1lbnRzID0gTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ107IE1vZHVsZVsndGVtcEFyZ3VtZW50cyddID0gbnVsbDsgdmFyIGxvb2t1cCA9IE1vZHVsZVsnbG9va3VwSW1wb3J0J10obW9kLCBiYXNlKTsgcmV0dXJuIGxvb2t1cC5hcHBseShudWxsLCB0ZW1wQXJndW1lbnRzKTsgfQBjYWxsaW5nIGltcG9ydCByZXR1cm5pbmcgACBhbmQgZnVuY3Rpb24gdHlwZSBpcyAAeyBNb2R1bGVbJ3RlbXBBcmd1bWVudHMnXSA9IFtdOyB9AHsgTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ10ucHVzaCgkMCkgfQB7IHZhciB2YWx1ZSA9IE1vZHVsZVsnb3V0c2lkZSddWyd3YXNtVGFibGUnXVskMF07IHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICJudW1iZXIiID8gdmFsdWUgOiAtMTsgfQBjYWxsVGFibGUgb3ZlcmZsb3cAY2FsbEluZGlyZWN0OiBiYWQgIyBvZiBhcmd1bWVudHMAY2FsbEluZGlyZWN0OiBiYWQgYXJndW1lbnQgdHlwZQB7IHZhciBmdW5jID0gTW9kdWxlWydvdXRzaWRlJ11bJ3dhc21UYWJsZSddWyQwXTsgdmFyIHRlbXBBcmd1bWVudHMgPSBNb2R1bGVbJ3RlbXBBcmd1bWVudHMnXTsgTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ10gPSBudWxsOyByZXR1cm4gZnVuYy5hcHBseShudWxsLCB0ZW1wQXJndW1lbnRzKTsgfQBzdGFjayBsaW1pdABjYWxsRnVuY3Rpb25JbnRlcm5hbAAhZmxvdy5icmVha2luZygpIHx8IGZsb3cuYnJlYWtUbyA9PSBSRVRVUk5fRkxPVwBjYWxsaW5nIAAgcmVzdWx0ZWQgaW4gACBidXQgdGhlIGZ1bmN0aW9uIHR5cGUgaXMgAEZ1bmN0aW9uIGAAYCBleHBlY3RzIAAgcGFyYW1ldGVycywgZ290IAAgYXJndW1lbnRzLgBmdW5jdGlvbi0+aXNQYXJhbShpKQBGdW5jdGlvblNjb3BlAGAgZXhwZWN0cyB0eXBlIAAgZm9yIHBhcmFtZXRlciAALCBnb3QgAGZ1bmN0aW9uLT5pc1ZhcihpKQBaTjR3YXNtMThNb2R1bGVJbnN0YW5jZUJhc2VJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMxXzRsZXNzSVMzX0VFTlMxXzlhbGxvY2F0b3JJTlMxXzRwYWlySUtTM19TNF9FRUVFRUVOU18xNE1vZHVsZUluc3RhbmNlRUUyMGNhbGxGdW5jdGlvbkludGVybmFsRVMzX1JLTlMxXzZ2ZWN0b3JJUzRfTlM3X0lTNF9FRUVFRTIzUnVudGltZUV4cHJlc3Npb25SdW5uZXIATjR3YXNtMTZFeHByZXNzaW9uUnVubmVySVpOU18xOE1vZHVsZUluc3RhbmNlQmFzZUlOU3QzX18yM21hcElOU180TmFtZUVOU183TGl0ZXJhbEVOUzJfNGxlc3NJUzRfRUVOUzJfOWFsbG9jYXRvcklOUzJfNHBhaXJJS1M0X1M1X0VFRUVFRU5TXzE0TW9kdWxlSW5zdGFuY2VFRTIwY2FsbEZ1bmN0aW9uSW50ZXJuYWxFUzRfUktOUzJfNnZlY3RvcklTNV9OUzhfSVM1X0VFRUVFMjNSdW50aW1lRXhwcmVzc2lvblJ1bm5lckVFAE40d2FzbTdWaXNpdG9ySVpOU18xOE1vZHVsZUluc3RhbmNlQmFzZUlOU3QzX18yM21hcElOU180TmFtZUVOU183TGl0ZXJhbEVOUzJfNGxlc3NJUzRfRUVOUzJfOWFsbG9jYXRvcklOUzJfNHBhaXJJS1M0X1M1X0VFRUVFRU5TXzE0TW9kdWxlSW5zdGFuY2VFRTIwY2FsbEZ1bmN0aW9uSW50ZXJuYWxFUzRfUktOUzJfNnZlY3RvcklTNV9OUzhfSVM1X0VFRUVFMjNSdW50aW1lRXhwcmVzc2lvblJ1bm5lck5TXzRGbG93RUVFAGN1cnItPmlzVGVlKCkgPyBmbG93LnZhbHVlLnR5cGUgPT0gY3Vyci0+dHlwZSA6IHRydWUAaW5zdGFuY2UuZ2xvYmFscy5maW5kKG5hbWUpICE9IGluc3RhbmNlLmdsb2JhbHMuZW5kKCkAb2Zmc2V0ID4gbWVtb3J5AGZpbmFsID4gbWVtb3J5AGJ5dGVzID4gbWVtb3J5ACA+IABOU3QzX18yMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBOU3QzX18yMTViYXNpY19zdHJpbmdidWZJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBoaWdoZXN0ID4gbWVtb3J5AHsgdmFyIHNpemUgPSAkMDsgdmFyIGJ1ZmZlcjsgdHJ5IHsgYnVmZmVyID0gbmV3IEFycmF5QnVmZmVyKHNpemUpOyB9IGNhdGNoKGUpIHsgcmV0dXJuOyB9IHZhciBvbGRIRUFQOCA9IE1vZHVsZVsnb3V0c2lkZSddWydIRUFQOCddOyB2YXIgdGVtcCA9IG5ldyBJbnQ4QXJyYXkoYnVmZmVyKTsgdGVtcC5zZXQob2xkSEVBUDgpOyBNb2R1bGVbJ291dHNpZGUnXVsnYnVmZmVyJ10gPSBidWZmZXI7IH0AeyBhYm9ydCgid2FzbSB0cmFwOiAiICsgUG9pbnRlcl9zdHJpbmdpZnkoJDApKTsgfQB7IHZhciBhZGRyID0gJDA7IHZhciBieXRlcyA9ICQxOyB2YXIgaXNGbG9hdCA9ICQyOyB2YXIgaXNTaWduZWQgPSAkMzsgdmFyIG91dDY0ID0gJDQ7IHZhciBzYXZlMCA9IEhFQVAzMlswXTsgdmFyIHNhdmUxID0gSEVBUDMyWzFdOyBmb3IgKHZhciBpID0gMDsgaSA8IGJ5dGVzOyBpKyspIHsgSEVBUFU4W2ldID0gTW9kdWxlWyJpbmZvIl0ucGFyZW50WyJIRUFQVTgiXVthZGRyICsgaV07IH0gdmFyIHJldDsgaWYgKCFpc0Zsb2F0KSB7IGlmIChieXRlcyA9PT0gMSkgcmV0ID0gaXNTaWduZWQgPyBIRUFQOFswXSA6IEhFQVBVOFswXTsgZWxzZSBpZiAoYnl0ZXMgPT09IDIpIHJldCA9IGlzU2lnbmVkID8gSEVBUDE2WzBdIDogSEVBUFUxNlswXTsgZWxzZSBpZiAoYnl0ZXMgPT09IDQpIHJldCA9IGlzU2lnbmVkID8gSEVBUDMyWzBdIDogSEVBUFUzMlswXTsgZWxzZSBpZiAoYnl0ZXMgPT09IDgpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBieXRlczsgaSsrKSB7IEhFQVBVOFtvdXQ2NCArIGldID0gSEVBUFU4W2ldOyB9IH0gZWxzZSBhYm9ydCgpOyB9IGVsc2UgeyBpZiAoYnl0ZXMgPT09IDQpIHJldCA9IEhFQVBGMzJbMF07IGVsc2UgaWYgKGJ5dGVzID09PSA4KSByZXQgPSBIRUFQRjY0WzBdOyBlbHNlIGFib3J0KCk7IH0gSEVBUDMyWzBdID0gc2F2ZTA7IEhFQVAzMlsxXSA9IHNhdmUxOyByZXR1cm4gcmV0OyB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDgnXVskMF0gfQB7IHJldHVybiBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVBVOCddWyQwXSB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDE2J11bJDAgPj4gMV0gfQB7IHJldHVybiBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVBVMTYnXVskMCA+PiAxXSB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDMyJ11bJDAgPj4gMl0gfQB7IHJldHVybiBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVBVMzInXVskMCA+PiAyXSB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUEYzMiddWyQwID4+IDJdIH0AeyByZXR1cm4gTW9kdWxlWydpbmZvJ10ucGFyZW50WydIRUFQRjY0J11bJDAgPj4gM10gfQB7IHZhciBhZGRyID0gJDA7IHZhciBieXRlcyA9ICQxOyB2YXIgaXNGbG9hdCA9ICQyOyB2YXIgdmFsdWUgPSAkMzsgdmFyIHNhdmUwID0gSEVBUDMyWzBdOyB2YXIgc2F2ZTEgPSBIRUFQMzJbMV07IGlmICghaXNGbG9hdCkgeyBpZiAoYnl0ZXMgPT09IDEpIEhFQVBVOFswXSA9IHZhbHVlOyBlbHNlIGlmIChieXRlcyA9PT0gMikgSEVBUFUxNlswXSA9IHZhbHVlOyBlbHNlIGlmIChieXRlcyA9PT0gNCkgSEVBUFUzMlswXSA9IHZhbHVlOyBlbHNlIGFib3J0KCk7IH0gZWxzZSB7IGlmIChieXRlcyA9PT0gNCkgSEVBUEYzMlswXSA9IHZhbHVlOyBlbHNlIGlmIChieXRlcyA9PT0gOCkgSEVBUEY2NFswXSA9IHZhbHVlOyBlbHNlIGFib3J0KCk7IH0gZm9yICh2YXIgaSA9IDA7IGkgPCBieXRlczsgaSsrKSB7IE1vZHVsZVsiaW5mbyJdLnBhcmVudFsiSEVBUFU4Il1bYWRkciArIGldID0gSEVBUFU4W2ldOyB9IEhFQVAzMlswXSA9IHNhdmUwOyBIRUFQMzJbMV0gPSBzYXZlMTsgfQB7IE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDgnXVskMF0gPSAkMSB9AHsgTW9kdWxlWydpbmZvJ10ucGFyZW50WydIRUFQMTYnXVskMCA+PiAxXSA9ICQxIH0AeyBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVAzMiddWyQwID4+IDJdID0gJDEgfQB7IE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUEYzMiddWyQwID4+IDJdID0gJDEgfQB7IE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUEY2NCddWyQwID4+IDNdID0gJDEgfQBnZXRpMzIAZ2V0ZjMyAGdldGY2NABpbnQoX2lkKSA9PSBpbnQoVDo6U3BlY2lmaWNJZCkAY2FzdABhZGp1c3QtZGVidWctaW5mbwBONHdhc20xNUFkanVzdERlYnVnSW5mb0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNUFkanVzdERlYnVnSW5mb0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTRQYXNzRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTVBZGp1c3REZWJ1Z0luZm9FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNUFkanVzdERlYnVnSW5mb0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNUFkanVzdERlYnVnSW5mb0V2RUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMyRfMU5TXzlhbGxvY2F0b3JJUzZfRUVGdlJOUzJfMTBQYXNzUnVubmVyRUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONHdhc20xMFBhc3NSdW5uZXJFRUVFAGF1dG9kcm9wAE40d2FzbThBdXRvRHJvcEUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzhBdXRvRHJvcEVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzhBdXRvRHJvcEVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfOEF1dG9Ecm9wRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfOEF1dG9Ecm9wRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzhBdXRvRHJvcEV2RUUAY3Vyci0+dHlwZSA9PSBub25lIHx8IGN1cnItPnR5cGUgPT0gdW5yZWFjaGFibGUALi9zcmMvaXIvdXRpbHMuaABjdXJyLT50eXBlID09IG5vbmUAdmlzaXRJZgByZWZpbmFsaXplAE40d2FzbTEwUmVGaW5hbGl6ZUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xMFJlRmluYWxpemVFTlNfMTdPdmVycmlkZGVuVmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xMFJlRmluYWxpemVFTlNfMTdPdmVycmlkZGVuVmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzEwUmVGaW5hbGl6ZUVOU18xN092ZXJyaWRkZW5WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTE3T3ZlcnJpZGRlblZpc2l0b3JJTlNfMTBSZUZpbmFsaXplRXZFRQBpc0NvbmNyZXRlVHlwZShjdXJyLT50eXBlKQBaTjR3YXNtMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUzJF8xAGZpbmFsaXplLWNhbGxzAFpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjEwcHJvY2Vzc0FzbUVONmNhc2hldzNSZWZFRTEzRmluYWxpemVDYWxscwBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySVpOU18xNUFzbTJXYXNtQnVpbGRlcjEwcHJvY2Vzc0FzbUVONmNhc2hldzNSZWZFRTEzRmluYWxpemVDYWxsc05TXzdWaXNpdG9ySVM1X3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySVpOU18xNUFzbTJXYXNtQnVpbGRlcjEwcHJvY2Vzc0FzbUVONmNhc2hldzNSZWZFRTEzRmluYWxpemVDYWxsc05TXzdWaXNpdG9ySVM0X3ZFRUVFAE40d2FzbTZXYWxrZXJJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTNGaW5hbGl6ZUNhbGxzTlNfN1Zpc2l0b3JJUzRfdkVFRUUATjR3YXNtN1Zpc2l0b3JJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTNGaW5hbGl6ZUNhbGxzdkVFAGludmFsaWQgY2FsbCB0YXJnZXQ6IAB3YXJuaW5nOiBhc20yd2FzbSBhZGRpbmcgb3BlcmFuZHMAd2FybmluZzogYXNtMndhc20gZHJvcHBpbmcgb3BlcmFuZHMAZXJyb3I6IGFzbTJ3YXNtIHNlZWluZyBhbiBpbnZhbGlkIGFyZ3VtZW50IHR5cGUgYXQgaW5kZXggACAodGhpcyB3aWxsIG5vdCB2YWxpZGF0ZSkAIGluIGNhbGwgZnJvbSAAIHRvIAAgKHRoaXMgaXMgbGlrZWx5IGR1ZSB0byB1bmRlZmluZWQgYmVoYXZpb3IgaW4gQywgbGlrZSBkZWZpbmluZyBhIGZ1bmN0aW9uIG9uZSB3YXkgYW5kIGNhbGxpbmcgaXQgaW4gYW5vdGhlciwgd2hpY2ggaXMgaW1wb3J0YW50IHRvIGZpeCkKACBzdWNoIHdhcm5pbmdzIHNob3duOyBub3Qgc2hvd2luZyBhbnkgbW9yZSkKAHR5cGUtPnBhcmFtc1tpXSA9PSBmNjQgfHwgY3Vyci0+b3BlcmFuZHNbaV0tPnR5cGUgPT0gdW5yZWFjaGFibGUAdmlzaXRDYWxsSW1wb3J0AG9sZCA9PSBub25lAGFwcGx5LWRlYnVnLWluZm8AWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mbwBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mb05TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVM1X3ZFRUVFRUUATjR3YXNtMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mb05TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVM0X3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklaTlNfMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUxNEFwcGx5RGVidWdJbmZvTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzRfdkVFRUUATjR3YXNtNldhbGtlcklaTlNfMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUxNEFwcGx5RGVidWdJbmZvTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzRfdkVFRUUATjR3YXNtMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mb3ZFRQBONHdhc203VmlzaXRvcklaTlNfMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUxNEFwcGx5RGVidWdJbmZvdkVFAGdldE1vZHVsZSgpLT5kZWJ1Z0luZm9GaWxlTmFtZXMuc2l6ZSgpID4gZmlsZUluZGV4AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjE1cHJvY2Vzc0Z1bmN0aW9uRU42Y2FzaGV3M1JlZkVFMyRfNU5TXzlhbGxvY2F0b3JJUzZfRUVGUE5TMl8xMEV4cHJlc3Npb25FUzVfRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZQTjR3YXNtMTBFeHByZXNzaW9uRU42Y2FzaGV3M1JlZkVFRUUAbWFwcGVkR2xvYmFscy5maW5kKG5hbWUpICE9IG1hcHBlZEdsb2JhbHMuZW5kKCkgPyB0cnVlIDogKHN0ZDo6Y2VyciA8PCBuYW1lLnN0ciA8PCAnXG4nLCBmYWxzZSkAZXJyb3I6IGFjY2VzcyBvZiBhIG5vbi1leGlzdGVudCBnbG9iYWwgdmFyIABhc3NpZ24tPnRhcmdldCgpLT5pc0FycmF5KFNVQikAdGFyZ2V0WzFdLT5pc1N0cmluZygpAHZpZXdzLmZpbmQoaGVhcCkgIT0gdmlld3MuZW5kKCkAYmFkIHN1YltdIHR5cGVzAGRkZAB0YXJnZXQtPmlzU3RyaW5nKCkAYmFkIHVuYXJ5AGFzdFsyXS0+c2l6ZSgpID09IDIAYXN0WzJdLT5zaXplKCkgPT0gMQBjb25mdXNpbmcgZnJvdW5kIHRhcmdldABmbG9vci9zcXJ0L2NlaWwgb25seSB3b3JrIG9uIGZsb2F0L2RvdWJsZSBpbiBhc20uanMgYW5kIHdhc20AbWluL21heCBvbmx5IHdvcmsgb24gZmxvYXQvZG91YmxlIGluIGFzbS5qcyBhbmQgd2FzbQB0YXJnZXRbMF0gPT0gU1VCICYmIHRhcmdldFsxXS0+aXNTdHJpbmcoKSAmJiB0YXJnZXRbMl1bMF0gPT0gQklOQVJZICYmIHRhcmdldFsyXVsxXSA9PSBBTkQgJiYgdGFyZ2V0WzJdWzNdLT5pc051bWJlcigpAGZ1bmN0aW9uLT5yZXN1bHQgPT0gdHlwZQBicmVha1N0YWNrLnNpemUoKSA+IDAAY29udGludWVTdGFjay5zaXplKCkgPiAwAHdoaWxlLW91dAB3aGlsZS1pbgBkby1vbmNlAHVubGlrZWx5LWNvbnRpbnVlAGRvLW91dABkby1pbgBmb3Itb3V0AGZvci1pbgBici0+Y29uZGl0aW9uLT50eXBlID09IGk2NABzd2l0Y2gtZGVmYXVsdABpbmRleCA+PSBtaW4AaW5kZXggPj0gMABzd2l0Y2gtY2FzZQBjb25mdXNpbmcgZXhwcmVzc2lvbgBiYWQgd2FzbSBiaW5hcnkgb3AAZmFsc2UgJiYgImV4cGVjdGVkIHNpZ25lZCBvciB1bnNpZ25lZCBpbnQzMiIAY2hlY2tMaXRlcmFsAHJldC50eXBlICE9IG5vbmUAZ2V0TGl0ZXJhbABtYXBwZWRHbG9iYWxzLmZpbmQobmFtZSkgIT0gbWFwcGVkR2xvYmFscy5lbmQoKQBkZXRlY3RBc21UeXBlAGJ5dGVzID09IDQALi9zcmMvaXIvYml0cy5oAG1ha2VTaWduRXh0AHZhbHVlLT50eXBlID09IGk2NABieXRlcyA9PSA4AGFzdFswXSA9PSBDQUxMICYmIGFzdFsxXS0+aXNTdHJpbmcoKQBub3RlSW1wb3J0ZWRGdW5jdGlvbkNhbGwAdHlwZSQAbGFiZWwkYnJlYWskAGxhYmVsU3RhY2suYmFjaygpID09IG5hbWUALi9zcmMvcGFyc2luZy5oAHBvcExhYmVsTmFtZQBiYWQgbGFiZWwgaW4gc291cmNlVG9VbmlxdWUATjR3YXNtMTRQYXJzZUV4Y2VwdGlvbkUAdXNlIG9mIHBvcHBlZCBsYWJlbCBpbiBzb3VyY2VUb1VuaXF1ZQBsYWJlbCRjb250aW51ZSQAWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTVwcm9jZXNzRnVuY3Rpb25FTjZjYXNoZXczUmVmRUUzJF81AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjE1cHJvY2Vzc0Z1bmN0aW9uRU42Y2FzaGV3M1JlZkVFMyRfNk5TXzlhbGxvY2F0b3JJUzZfRUVGUE5TMl8xMEV4cHJlc3Npb25FUzVfakVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGUE40d2FzbTEwRXhwcmVzc2lvbkVONmNhc2hldzNSZWZFakVFRQBiYWQgcHJvY2Vzc1Vuc2hpZnRlZABaTjR3YXNtMTVBc20yV2FzbUJ1aWxkZXIxNXByb2Nlc3NGdW5jdGlvbkVONmNhc2hldzNSZWZFRTMkXzYATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTVwcm9jZXNzRnVuY3Rpb25FTjZjYXNoZXczUmVmRUUzJF83TlNfOWFsbG9jYXRvcklTNl9FRUZQTlMyXzEwRXhwcmVzc2lvbkVTNV9qRUVFAFpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjE1cHJvY2Vzc0Z1bmN0aW9uRU42Y2FzaGV3M1JlZkVFMyRfNwA7AHB1c2hfYmFjawBnZXRBcnJheQBzcmMgPiBzdGFydAAuL3NyYy9lbXNjcmlwdGVuLW9wdGltaXplci9wYXJzZXIuaABGcmFnAHN0cmNtcChzdHIuc3RyLCBzdGFydCkgPT0gMABmcmFnIHBhcnNpbmcAJXM6Cj09PT09PT09PT0KAG5hbWUudHlwZSA9PSBTRVBBUkFUT1IgJiYgbmFtZS5zdHJbMF0gPT0gJygnAHBhcnNlRnVuY3Rpb24AKnNyYyA9PSAnKCcAYXJnLnR5cGUgPT0gSURFTlQAZnVuY1swXSA9PSBERUZVTgBhcHBlbmRBcmd1bWVudFRvRnVuY3Rpb24AKnNyYyA9PSAneycAcGFyc2VCcmFja2V0ZWRCbG9jawA7fQAqc3JjID09ICd9JwBuYW1lLnR5cGUgPT0gSURFTlQAcGFyc2VWYXIAOywAdmFyWzBdID09IFZBUgBhcHBlbmRUb1ZhcgBoYXNDaGFyKHNlcHMsICpzcmMpAHBhcnNlUmV0dXJuAHBhcnNlUGFyZW5uZWQAKnNyYyA9PSAnKScAbmV4dC50eXBlID09IEtFWVdPUkQgJiYgbmV4dC5zdHIgPT0gV0hJTEUAcGFyc2VEbwBwYXJzZVN3aXRjaAB2YWx1ZS5zdHIgPT0gTUlOVVMAdmFsdWUyLmlzTnVtYmVyKCkAdmFsdWUudHlwZSA9PSBJREVOVAAqc3JjID09ICc6JwBwYXJzZUNhbGwALCkAZXhwcmVzc2lvblBhcnRzU3RhY2suYmFjaygpLnNpemUoKSA9PSAwAGNhbGxbMF0gPT0gQ0FMTABhcHBlbmRUb0NhbGwAc3dpdGNoX1swXSA9PSBTV0lUQ0gAYXBwZW5kQ2FzZVRvU3dpdGNoAGFwcGVuZERlZmF1bHRUb1N3aXRjaABhcHBlbmRDb2RlVG9Td2l0Y2gAY29kZVswXSA9PSBCTE9DSwBwYXJzZUZvcgAqc3JjID09ICc7JwAqc3JjID09ICdbJwBwYXJzZUluZGV4aW5nACpzcmMgPT0gJ10nACpzcmMgPT0gJy4nAHBhcnNlRG90dGluZwBrZXkudHlwZSA9PSBJREVOVABiYWQgcGFyc2VFeHByZXNzaW9uIHN0YXRlAGkgPCAoaW50KXBhcnRzLnNpemUoKS0xICYmIGkgPj0gMwBwYXJzZUV4cHJlc3Npb24AcGFydHMuc2l6ZSgpID09IDEAaXNOb2RlAGdldE5vZGUAIWlzTm9kZQBnZXRPcABrZXktPmlzU3RyaW5nKCkAbWFrZURvdABwYXJzZUFmdGVyUGFyZW4AKnNyYwBwYXJzZUFmdGVyQnJhY2UALF0AYXJyYXlbMF0gPT0gQVJSQVkAYXBwZW5kVG9BcnJheQBwYXJzZUFmdGVyQ3VybHkAa2V5LnR5cGUgPT0gSURFTlQgfHwga2V5LnR5cGUgPT0gU1RSSU5HACx9AGFycmF5WzBdID09IE9CSkVDVABhcHBlbmRUb09iamVjdABibG9ja1swXSA9PSBCTE9DSwBhcHBlbmRUb0Jsb2NrAC89PSAoYmluYXJ5ZW4gaW50ZXJwcmV0ZXIgc3RhY2sgdHJhY2UpCgB8OiAAXD09CgBjYWxsRXhwb3J0IG5vdCBmb3VuZABleGl0AHNwZWN0ZXN0AG11dABmYWtlX3JldHVybl93YWthMTIzAGFueWZ1bmMAYnIAdGhlbgBicl9pZgBjYWxsX2luZGlyZWN0AGNhbGxfaW1wb3J0AGxvY2FsAGVsZW0AaW1wb3J0AGV4cG9ydABzZWdtZW50AGRhdGEAcmVzdWx0AG5ld1NpemUAdGFibGVCYXNlAG1lbW9yeUJhc2UAX19ncm93V2FzbU1lbW9yeQAqcmV0dXJuOikqAHdhc20AX19lbV9qc19fAGVtc2NyaXB0ZW5fYXNtX2NvbnN0AGk2NHUtZGl2AGk2NHMtZGl2AGk2NHUtcmVtAGk2NHMtcmVtAGFsaWduZmF1bHQAc2VnZmF1bHQARFlOQU1JQ1RPUF9QVFIAQmluYXJ5ZW58bm90cHJlY29tcHV0YWJsZQBhbnkuZXhwcgBmNjQuZXhwcgBmMzIuZXhwcgBpNjQuZXhwcgBpMzIuZXhwcgBsb2dfZXhlY3V0aW9uAHNldFRlbXBSZXQwAHNldF9mNjQAc2V0X2YzMgBzZXRfaTY0AHNldF9pMzIAZ2V0X2Y2NABnZXRfZjMyAGdldF9pNjQAZ2V0X2kzMgBjb2FsZXNjZS1sb2NhbHMAcmVkdWNlICMgb2YgbG9jYWxzIGJ5IGNvYWxlc2NpbmcAY29hbGVzY2UtbG9jYWxzLWxlYXJuaW5nAHJlZHVjZSAjIG9mIGxvY2FscyBieSBjb2FsZXNjaW5nIGFuZCBsZWFybmluZwBjb2RlLXB1c2hpbmcAcHVzaCBjb2RlIGZvcndhcmQsIHBvdGVudGlhbGx5IG1ha2luZyBpdCBub3QgYWx3YXlzIGV4ZWN1dGUAY29kZS1mb2xkaW5nAGZvbGQgY29kZSwgbWVyZ2luZyBkdXBsaWNhdGVzAGNvbnN0LWhvaXN0aW5nAGhvaXN0IHJlcGVhdGVkIGNvbnN0YW50cyB0byBhIGxvY2FsAGRjZQByZW1vdmVzIHVucmVhY2hhYmxlIGNvZGUAZGZvAG9wdGltaXplcyB1c2luZyB0aGUgRGF0YUZsb3cgU1NBIElSAGR1cGxpY2F0ZS1mdW5jdGlvbi1lbGltaW5hdGlvbgByZW1vdmVzIGR1cGxpY2F0ZSBmdW5jdGlvbnMAZXh0cmFjdC1mdW5jdGlvbgBsZWF2ZXMganVzdCBvbmUgZnVuY3Rpb24gKHVzZWZ1bCBmb3IgZGVidWdnaW5nKQBmbGF0dGVuAGZsYXR0ZW5zIG91dCBjb2RlLCByZW1vdmluZyBuZXN0aW5nAGZwY2FzdC1lbXUAZW11bGF0ZXMgZnVuY3Rpb24gcG9pbnRlciBjYXN0cywgYWxsb3dpbmcgaW5jb3JyZWN0IGluZGlyZWN0IGNhbGxzIHRvIChzb21ldGltZXMpIHdvcmsAZnVuYy1tZXRyaWNzAHJlcG9ydHMgZnVuY3Rpb24gbWV0cmljcwBnZW5lcmF0ZS1zdGFjay1pcgBnZW5lcmF0ZSBTdGFjayBJUgBpbmxpbmluZwBpbmxpbmUgZnVuY3Rpb25zICh5b3UgcHJvYmFibHkgd2FudCBpbmxpbmluZy1vcHRpbWl6aW5nKQBpbmxpbmluZy1vcHRpbWl6aW5nAGlubGluZSBmdW5jdGlvbnMgYW5kIG9wdGltaXplcyB3aGVyZSB3ZSBpbmxpbmVkAGxlZ2FsaXplLWpzLWludGVyZmFjZQBsZWdhbGl6ZXMgaTY0IHR5cGVzIG9uIHRoZSBpbXBvcnQvZXhwb3J0IGJvdW5kYXJ5AGxvY2FsLWNzZQBjb21tb24gc3ViZXhwcmVzc2lvbiBlbGltaW5hdGlvbiBpbnNpZGUgYmFzaWMgYmxvY2tzAGxvZy1leGVjdXRpb24AaW5zdHJ1bWVudCB0aGUgYnVpbGQgd2l0aCBsb2dnaW5nIG9mIHdoZXJlIGV4ZWN1dGlvbiBnb2VzAGk2NC10by1pMzItbG93ZXJpbmcAbG93ZXIgYWxsIHVzZXMgb2YgaTY0cyB0byB1c2UgaTMycyBpbnN0ZWFkAGluc3RydW1lbnQtbG9jYWxzAGluc3RydW1lbnQgdGhlIGJ1aWxkIHdpdGggY29kZSB0byBpbnRlcmNlcHQgYWxsIGxvYWRzIGFuZCBzdG9yZXMAaW5zdHJ1bWVudC1tZW1vcnkAbWVtb3J5LXBhY2tpbmcAcGFja3MgbWVtb3J5IGludG8gc2VwYXJhdGUgc2VnbWVudHMsIHNraXBwaW5nIHplcm9zAG1lcmdlLWJsb2NrcwBtZXJnZXMgYmxvY2tzIHRvIHRoZWlyIHBhcmVudHMAbWVyZ2UtbG9jYWxzAG1lcmdlcyBsb2NhbHMgd2hlbiBiZW5lZmljaWFsAG1ldHJpY3MAcmVwb3J0cyBtZXRyaWNzAG5tAG5hbWUgbGlzdABvcHRpbWl6ZS1pbnN0cnVjdGlvbnMAb3B0aW1pemVzIGluc3RydWN0aW9uIGNvbWJpbmF0aW9ucwBvcHRpbWl6ZS1zdGFjay1pcgBvcHRpbWl6ZSBTdGFjayBJUgBwaWNrLWxvYWQtc2lnbnMAcGljayBsb2FkIHNpZ25zIGJhc2VkIG9uIHRoZWlyIHVzZXMAcG9zdC1lbXNjcmlwdGVuAG1pc2NlbGxhbmVvdXMgb3B0aW1pemF0aW9ucyBmb3IgRW1zY3JpcHRlbi1nZW5lcmF0ZWQgY29kZQBjb21wdXRlcyBjb21waWxlLXRpbWUgZXZhbHVhdGFibGUgZXhwcmVzc2lvbnMAY29tcHV0ZXMgY29tcGlsZS10aW1lIGV2YWx1YXRhYmxlIGV4cHJlc3Npb25zIGFuZCBwcm9wYWdhdGVzIHRoZW0gdGhyb3VnaCBsb2NhbHMAcHJpbnQgaW4gcy1leHByZXNzaW9uIGZvcm1hdABwcmludC1taW5pZmllZABwcmludCBpbiBtaW5pZmllZCBzLWV4cHJlc3Npb24gZm9ybWF0AHByaW50LWZ1bGwAcHJpbnQgaW4gZnVsbCBzLWV4cHJlc3Npb24gZm9ybWF0AHByaW50LWNhbGwtZ3JhcGgAcHJpbnQgY2FsbCBncmFwaABwcmludC1zdGFjay1pcgBwcmludCBvdXQgU3RhY2sgSVIgKHVzZWZ1bCBmb3IgaW50ZXJuYWwgZGVidWdnaW5nKQByZWxvb3Blci1qdW1wLXRocmVhZGluZwB0aHJlYWQgcmVsb29wZXIganVtcHMgKGZhc3Rjb21wIG91dHB1dCBvbmx5KQByZW1vdmUtbm9uLWpzLW9wcwByZW1vdmVzIG9wZXJhdGlvbnMgaW5jb21wYXRpYmxlIHdpdGgganMAcmVtb3ZlLWltcG9ydHMAcmVtb3ZlcyBpbXBvcnRzIGFuZCByZXBsYWNlcyB0aGVtIHdpdGggbm9wcwByZW1vdmUtbWVtb3J5AHJlbW92ZXMgbWVtb3J5IHNlZ21lbnRzAHJlbW92ZS11bnVzZWQtYnJzAHJlbW92ZXMgYnJlYWtzIGZyb20gbG9jYXRpb25zIHRoYXQgYXJlIG5vdCBuZWVkZWQAcmVtb3ZlLXVudXNlZC1tb2R1bGUtZWxlbWVudHMAcmVtb3ZlcyB1bnVzZWQgbW9kdWxlIGVsZW1lbnRzAHJlbW92ZS11bnVzZWQtbm9uZnVuY3Rpb24tbW9kdWxlLWVsZW1lbnRzAHJlbW92ZXMgdW51c2VkIG1vZHVsZSBlbGVtZW50cyB0aGF0IGFyZSBub3QgZnVuY3Rpb25zAHJlbW92ZS11bnVzZWQtbmFtZXMAcmVtb3ZlcyBuYW1lcyBmcm9tIGxvY2F0aW9ucyB0aGF0IGFyZSBuZXZlciBicmFuY2hlZCB0bwByZW9yZGVyLWZ1bmN0aW9ucwBzb3J0cyBmdW5jdGlvbnMgYnkgYWNjZXNzIGZyZXF1ZW5jeQByZW9yZGVyLWxvY2FscwBzb3J0cyBsb2NhbHMgYnkgYWNjZXNzIGZyZXF1ZW5jeQByZXJlbG9vcAByZS1vcHRpbWl6ZSBjb250cm9sIGZsb3cgdXNpbmcgdGhlIHJlbG9vcGVyIGFsZ29yaXRobQByc2UAcmVtb3ZlIHJlZHVuZGFudCBzZXRfbG9jYWxzAHNhZmUtaGVhcABpbnN0cnVtZW50IGxvYWRzIGFuZCBzdG9yZXMgdG8gY2hlY2sgZm9yIGludmFsaWQgYmVoYXZpb3IAc2ltcGxpZnktbG9jYWxzAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucwBzaW1wbGlmeS1sb2NhbHMtbm9uZXN0aW5nAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucyAobm8gbmVzdGluZyBhdCBhbGw7IHByZXNlcnZlcyBmbGF0bmVzcykAc2ltcGxpZnktbG9jYWxzLW5vdGVlAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucyAobm8gdGVlcykAc2ltcGxpZnktbG9jYWxzLW5vc3RydWN0dXJlAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucyAobm8gc3RydWN0dXJlKQBzaW1wbGlmeS1sb2NhbHMtbm90ZWUtbm9zdHJ1Y3R1cmUAbWlzY2VsbGFuZW91cyBsb2NhbHMtcmVsYXRlZCBvcHRpbWl6YXRpb25zIChubyB0ZWVzIG9yIHN0cnVjdHVyZSkAc291cGVyaWZ5AGVtaXQgU291cGVyIElSIGluIHRleHQgZm9ybQBzb3VwZXJpZnktc2luZ2xlLXVzZQBlbWl0IFNvdXBlciBJUiBpbiB0ZXh0IGZvcm0gKHNpbmdsZS11c2Ugbm9kZXMgb25seSkAc3BpbGwtcG9pbnRlcnMAc3BpbGwgcG9pbnRlcnMgdG8gdGhlIEMgc3RhY2sgKHVzZWZ1bCBmb3IgQm9laG0tc3R5bGUgR0MpAHNzYQBzc2EtaWZ5IHZhcmlhYmxlcyBzbyB0aGF0IHRoZXkgaGF2ZSBhIHNpbmdsZSBhc3NpZ25tZW50AHRyYXAtbW9kZS1jbGFtcAByZXBsYWNlIHRyYXBwaW5nIG9wZXJhdGlvbnMgd2l0aCBjbGFtcGluZyBzZW1hbnRpY3MAdHJhcC1tb2RlLWpzAHJlcGxhY2UgdHJhcHBpbmcgb3BlcmF0aW9ucyB3aXRoIGpzIHNlbWFudGljcwB1bnRlZQByZW1vdmVzIHRlZV9sb2NhbHMsIHJlcGxhY2luZyB0aGVtIHdpdGggc2V0cyBhbmQgZ2V0cwB2YWN1dW0AcmVtb3ZlcyBvYnZpb3VzbHkgdW5uZWVkZWQgY29kZQAuL3NyYy9wYXNzZXMvVmFjdXVtLmNwcABwYXJlbnRzLmZpbmQoY3VycikgPT0gcGFyZW50cy5lbmQoKQAuL3NyYy9pci90eXBlLXVwZGF0aW5nLmgAbm90ZUFkZGl0aW9uAGluZm8ubnVtQnJlYWtzID49IDAAbm90ZUJyZWFrQ2hhbmdlAGlzQ29uY3JldGVUeXBlKGJsb2NrLT50eXBlKSAmJiBzaW5nbGV0b24tPnR5cGUgPT0gdW5yZWFjaGFibGUALi9zcmMvaXIvYmxvY2stdXRpbHMuaABzaW1wbGlmeVRvQ29udGVudHMATjR3YXNtNlZhY3V1bUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU182VmFjdXVtRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzZWYWN1dW1FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU182VmFjdXVtRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzZWYWN1dW1FdkVFAE40d2FzbTVVbnRlZUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU181VW50ZWVFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfNVVudGVlRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfNVVudGVlRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzVVbnRlZUV2RUUAbW9kZSAhPSBUcmFwTW9kZTo6QWxsb3cALi9zcmMvcGFzc2VzL1RyYXBNb2RlLmNwcABUcmFwTW9kZVBhc3MATW9kdWxlOjphZGRGdW5jdGlvbjogZW1wdHkgbmFtZQBNb2R1bGU6OmFkZEZ1bmN0aW9uOiAAIGFscmVhZHkgZXhpc3RzAGV4cHItPnR5cGUgPT0gZjY0AC4vc3JjL2FzbWpzL2FzbV92X3dhc20uY3BwAGVuc3VyZURvdWJsZQBNb2R1bGU6OmFkZEltcG9ydDogZW1wdHkgbmFtZQBNb2R1bGU6OmFkZEltcG9ydDogAEZVTkNTSUckAE1vZHVsZTo6YWRkRnVuY3Rpb25UeXBlOiBlbXB0eSBuYW1lAE1vZHVsZTo6YWRkRnVuY3Rpb25UeXBlOiAATW9kdWxlOjpnZXRGdW5jdGlvblR5cGU6IAAgZG9lcyBub3QgZXhpc3QATjR3YXNtMTJUcmFwTW9kZVBhc3NFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTJUcmFwTW9kZVBhc3NFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTJUcmFwTW9kZVBhc3NFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xMlRyYXBNb2RlUGFzc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xMlRyYXBNb2RlUGFzc0V2RUUAZ3JhcGgubG9jYXRpb25zW3ZhbHVlXSA9PSAmc2V0LT52YWx1ZQAuL3NyYy9wYXNzZXMvU1NBaWZ5LmNwcABjb21wdXRlR2V0c0FuZFBoaXMAZW50cnlGbG93QmxvY2sgIT0gbnVsbHB0cgAuL3NyYy9pci9Mb2NhbEdyYXBoLmNwcABmbG93AE40d2FzbTZTU0FpZnlFAFNUQUNLVE9QAGdldFN0YWNrU3BhY2U6IGZhaWxlZCB0byBmaW5kIHRoZSBzdGFjayBwb2ludGVyAHdoYXQgIT0gT3RoZXIALi9zcmMvY2ZnL2xpdmVuZXNzLXRyYXZlcnNhbC5oAExpdmVuZXNzQWN0aW9uACgqb3JpZ2luKS0+aXM8R2V0TG9jYWw+KCkAKCpvcmlnaW4pLT5pczxTZXRMb2NhbD4oKQBONHdhc20xM1NwaWxsUG9pbnRlcnNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xNExpdmVuZXNzV2Fsa2VySU5TXzEzU3BpbGxQb2ludGVyc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTE0TGl2ZW5lc3NXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTlDRkdXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRU5TXzhMaXZlbmVzc0VFRQBONHdhc20xN0NvbnRyb2xGbG93V2Fsa2VySU5TXzEzU3BpbGxQb2ludGVyc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzEzU3BpbGxQb2ludGVyc0V2RUUACjsgZnVuY3Rpb246IABmb2xsb3dpbmcgbm9kZSBoYXMgACB1c2VzCgAhcHJpbnRlci5wcmludGVkSGFzRXh0ZXJuYWxVc2VzAC4vc3JjL3Bhc3Nlcy9Tb3VwZXJpZnkuY3BwAAo7IHN0YXJ0IExIUyAoaW4gAGluZmVyICUACgoAcGMgACAxOmkxCgBub2RlAHByaW50SW50ZXJuYWwAZjY0AGYzMgBpMzIAbm9uZQBwcmludAAgPSB2YXIAOyAAID0gACA9IHBoaSAlAGJsb2NrcGMgJQAgMTppMQAgPSBibG9jayAAID0gemV4dCAAISEhQkFEISEhACAoaGFzRXh0ZXJuYWxVc2VzKQBkZWJ1ZygpAHdhcm5PblN1c3BpY2lvdXNWYWx1ZXMAXl4gc3VzcGljaW91cyBpZGVudGljYWwgaW5wdXRzISBtaXNzaW5nIG9wdGltaXphdGlvbiBpbiAAPyBeXgoAXl4gc3VzcGljaW91cyBjb25zdGFudCBpbnB1dHMhIG1pc3Npbmcgb3B0aW1pemF0aW9uIGluIABaTjR3YXNtMThFeHByZXNzaW9uQW5hbHl6ZXI1ZXF1YWxFUE5TXzEwRXhwcmVzc2lvbkVTMl9FVWxTMl9TMl9FXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjR3YXNtMThFeHByZXNzaW9uQW5hbHl6ZXI1ZXF1YWxFUE5TMl8xMEV4cHJlc3Npb25FUzVfRVVsUzVfUzVfRV9OU185YWxsb2NhdG9ySVM2X0VFRmJTNV9TNV9FRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRmJQTjR3YXNtMTBFeHByZXNzaW9uRVM0X0VFRQBwcmludEV4cHJlc3Npb24AY3RsegBjdHR6AGN0cG9wAG11bABzZGl2AHVkaXYAc3JlbQB1cmVtAHNobABsc2hyAGFzaHIAcm90bAByb3RyAGVxAG5lAHNsdAB1bHQAc2xlAHVsZQBzZWxlY3QgAChudWxsIGV4cHJlc3Npb24pADs7QCAAcGFnZXNpemUAY3VycmVudF9tZW1vcnkAZ3Jvd19tZW1vcnkAaGFzZmVhdHVyZSAAaTMyLmFkZABpMzIuc3ViAGkzMi5tdWwAaTMyLmRpdl9zAGkzMi5kaXZfdQBpMzIucmVtX3MAaTMyLnJlbV91AGkzMi5hbmQAaTMyLm9yAGkzMi54b3IAaTMyLnNobABpMzIuc2hyX3UAaTMyLnNocl9zAGkzMi5yb3RsAGkzMi5yb3RyAGkzMi5lcQBpMzIubmUAaTMyLmx0X3MAaTMyLmx0X3UAaTMyLmxlX3MAaTMyLmxlX3UAaTMyLmd0X3MAaTMyLmd0X3UAaTMyLmdlX3MAaTMyLmdlX3UAaTY0LmFkZABpNjQuc3ViAGk2NC5tdWwAaTY0LmRpdl9zAGk2NC5kaXZfdQBpNjQucmVtX3MAaTY0LnJlbV91AGk2NC5hbmQAaTY0Lm9yAGk2NC54b3IAaTY0LnNobABpNjQuc2hyX3UAaTY0LnNocl9zAGk2NC5yb3RsAGk2NC5yb3RyAGk2NC5lcQBpNjQubmUAaTY0Lmx0X3MAaTY0Lmx0X3UAaTY0LmxlX3MAaTY0LmxlX3UAaTY0Lmd0X3MAaTY0Lmd0X3UAaTY0LmdlX3MAaTY0LmdlX3UAZjMyLmFkZABmMzIuc3ViAGYzMi5tdWwAZjMyLmRpdgBmMzIuY29weXNpZ24AZjMyLm1pbgBmMzIubWF4AGYzMi5lcQBmMzIubmUAZjMyLmx0AGYzMi5sZQBmMzIuZ3QAZjMyLmdlAGY2NC5hZGQAZjY0LnN1YgBmNjQubXVsAGY2NC5kaXYAZjY0LmNvcHlzaWduAGY2NC5taW4AZjY0Lm1heABmNjQuZXEAZjY0Lm5lAGY2NC5sdABmNjQubGUAZjY0Lmd0AGY2NC5nZQBpMzIuY2x6AGkzMi5jdHoAaTMyLnBvcGNudABpMzIuZXF6AGk2NC5jbHoAaTY0LmN0egBpNjQucG9wY250AGk2NC5lcXoAZjMyLm5lZwBmMzIuYWJzAGYzMi5jZWlsAGYzMi5mbG9vcgBmMzIudHJ1bmMAZjMyLm5lYXJlc3QAZjMyLnNxcnQAZjY0Lm5lZwBmNjQuYWJzAGY2NC5jZWlsAGY2NC5mbG9vcgBmNjQudHJ1bmMAZjY0Lm5lYXJlc3QAZjY0LnNxcnQAaTY0LmV4dGVuZF9zL2kzMgBpNjQuZXh0ZW5kX3UvaTMyAGkzMi53cmFwL2k2NABpMzIudHJ1bmNfcy9mMzIAaTY0LnRydW5jX3MvZjMyAGkzMi50cnVuY191L2YzMgBpNjQudHJ1bmNfdS9mMzIAaTMyLnRydW5jX3MvZjY0AGk2NC50cnVuY19zL2Y2NABpMzIudHJ1bmNfdS9mNjQAaTY0LnRydW5jX3UvZjY0AGkzMi5yZWludGVycHJldC9mMzIAaTY0LnJlaW50ZXJwcmV0L2Y2NABmMzIuY29udmVydF91L2kzMgBmNjQuY29udmVydF91L2kzMgBmMzIuY29udmVydF9zL2kzMgBmNjQuY29udmVydF9zL2kzMgBmMzIuY29udmVydF91L2k2NABmNjQuY29udmVydF91L2k2NABmMzIuY29udmVydF9zL2k2NABmNjQuY29udmVydF9zL2k2NABmNjQucHJvbW90ZS9mMzIAZjMyLmRlbW90ZS9mNjQAZjMyLnJlaW50ZXJwcmV0L2kzMgBmNjQucmVpbnRlcnByZXQvaTY0AGkzMi5leHRlbmQ4X3MAaTMyLmV4dGVuZDE2X3MAaTY0LmV4dGVuZDhfcwBpNjQuZXh0ZW5kMTZfcwBpNjQuZXh0ZW5kMzJfcwAuY29uc3QgAC0wADoweAAtaW5mAC1uYW4ALWluZmluaXR5ACVsZgBkID49IDAALi9zcmMvZW1zY3JpcHRlbi1vcHRpbWl6ZXIvc2ltcGxlX2FzdC5oAG51bVRvU3RyaW5nACVsbHUAJWUAJS4wZgBudW0gPCAxMDAwAHN0ZDo6aXNuYW4oZikgJiYgImV4cGVjdGVkIGEgTmFOIgAuL3NyYy93YXNtL2xpdGVyYWwuY3BwAE5hTlBheWxvYWQAIG9mZnNldD0ALndhaXQALmF0b21pYy5ybXcAMTYAMzIAX3UALmF0b21pYwAuc3RvcmUAIGFsaWduPQAubG9hZABfcwBzZXRfZ2xvYmFsIAAoKQBnZXRfZ2xvYmFsIAB0ZWVfbG9jYWwgAHNldF9sb2NhbCAAZ2V0X2xvY2FsIABjYWxsX2luZGlyZWN0ICh0eXBlIABjYWxsIABicl90YWJsZQBicl9pZiAAYnIgACAocmVzdWx0IAAgOzsgZW5kIGxvb3AAIDs7IGVuZCBpZgAgOzsgZW5kIGJsb2NrAEJJTkFSWUVOX1BSSU5UX0ZVTEwACnN0YXJ0IGEgdHJhY2UgKGluIABCSU5BUllFTl9TT1VQRVJJRllfREVQVEhfTElNSVQAQklOQVJZRU5fU09VUEVSSUZZX1RPVEFMX0xJTUlUAHVub3JkZXJlZF9tYXA6OmF0OiBrZXkgbm90IGZvdW5kAG5vdGUgb3JpZ2luIABmb3VuZCBleHRlcm5hbCB1c2UgZm9yCgAgIGR1ZSB0byAAaXNDb25jcmV0ZVR5cGUodHlwZSkAIW5vZGUtPmV4cHItPmlzPEdldExvY2FsPigpAGFkZGVkTm9kZXMuZmluZChub2RlKSA9PSBhZGRlZE5vZGVzLmVuZCgpAHZhciAAZXhwciAAcGhpIABjb25kIABibG9jayAoACBjb25kcyldCgB6ZXh0AGJhZABdIChvcmlnaW46IABnZXRVc2VzCgBhZGRTZXRVc2VzIGZvciAAIGdldHMKAHNldHMuc2l6ZSgpIDw9IDEAYWRkU2V0VXNlcwBhZGQgbnVsbHB0cgoAYWRkIGEgdmFsdWUKAE5PREUgACAgYW5kIHRoYXQgaXMgc2V0IHRvIGxvY2FsIABCSU5BUllFTl9ERUJVR19TT1VQRVJJRlkAIW5vZGUtPmlzQmFkKCkALi9zcmMvZGF0YWZsb3cvZ3JhcGguaABtYWtlWmVyb0NvbXAAaXNDb25jcmV0ZVR5cGUoY3Vyci0+dmFsdWUtPnR5cGUpAGRvVmlzaXRTZXRMb2NhbAAhaXNJblVucmVhY2hhYmxlKG90aGVyKQBkb1Zpc2l0TG9vcABjb25kaXRpb24AZG9WaXNpdElmACFpc0luVW5yZWFjaGFibGUoc3RhdGUubG9jYWxzKQBtZXJnZQBpc0luVW5yZWFjaGFibGUoKQBONHdhc205U291cGVyaWZ5RQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzlTb3VwZXJpZnlFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfOVNvdXBlcmlmeUVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzlTb3VwZXJpZnlFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfOVNvdXBlcmlmeUV2RUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTlNfMTN1bm9yZGVyZWRfc2V0SWpOU180aGFzaElqRUVOU184ZXF1YWxfdG9JakVFTlNfOWFsbG9jYXRvcklqRUVFRU5TNl9JUzhfRUVFRQAhc2V0LT5lbXB0eSgpAC4vc3JjL2lyL2VxdWl2YWxlbnRfc2V0cy5oAHJlc2V0AGJlc3QgIT0gSW5kZXgoLTEpAC4vc3JjL3Bhc3Nlcy9TaW1wbGlmeUxvY2Fscy5jcHAAdmlzaXRHZXRMb2NhbAAoKm51bUdldExvY2FscylbY3Vyci0+aW5kZXhdID49IDEAcmV0ID49IDEAY2FuVXNlTG9vcFJldHVyblZhbHVlKGN1cnIpAHJ1bk1haW5PcHRpbWl6YXRpb25zAHNldC0+aXNUZWUoKQB2aXNpdERyb3AAIXNldC0+aXNUZWUoKQAhY3Vyci0+Y2FzdDxJZj4oKS0+aWZGYWxzZQBkb05vdGVOb25MaW5lYXIAZG9Ob3RlSWZFbHNlQ29uZGl0aW9uAGRvTm90ZUlmRWxzZVRydWUAaWZmLT5pZkZhbHNlAGRvTm90ZUlmRWxzZUZhbHNlACFwcmV2aW91cy0+aXNUZWUoKQB2aXNpdFBvc3QAc2VsZi0+c2lua2FibGVzLmNvdW50KGluZGV4KSA9PSAwAE40d2FzbTE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUVOU183VmlzaXRvcklTM192RUVFRUVFAE40d2FzbTIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUVOU183VmlzaXRvcklTMl92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUV2RUUATjR3YXNtMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMzX3ZFRUVFRUUATjR3YXNtMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjBFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjBFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRXZFRQAhKCpicmVha3NbMF0uYnJwKS0+dGVtcGxhdGUgY2FzdDxCcmVhaz4oKS0+dmFsdWUAb3B0aW1pemVCbG9ja1JldHVybgBvcHRpbWl6ZUlmUmV0dXJuAGlmZi0+aWZGYWxzZS0+dHlwZSAhPSB1bnJlYWNoYWJsZQBpZlRydWVCbG9jay0+dHlwZSAhPSBub25lAGlmRmFsc2VCbG9jay0+dHlwZSAhPSBub25lAGlmZi0+dHlwZSAhPSBub25lAE40d2FzbTE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUVOU183VmlzaXRvcklTM192RUVFRUVFAE40d2FzbTIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUVOU183VmlzaXRvcklTMl92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUV2RUUAZXhwcmVzc2lvblN0YWNrW2V4cHJlc3Npb25TdGFjay5zaXplKCkgLSAxXSA9PSBjdXJyAE40d2FzbTE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUVOU183VmlzaXRvcklTM192RUVFRUVFAE40d2FzbTIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUVOU183VmlzaXRvcklTMl92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMEVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMEVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUV2RUUATjR3YXNtMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMzX3ZFRUVFRUUATjR3YXNtMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjFFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjFFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRXZFRQABAAEAAQBTQUZFX0hFQVBfU1RPUkVfAEEAU0FGRV9IRUFQX0xPQURfAFVfAFtQYXNzUnVubmVyXSBydW5uaW5nIHBhc3Nlcy4uLgBiZWZvcmUAW1Bhc3NSdW5uZXJdIHBhc3NlcyB0b29rIAAgc2Vjb25kcy4AW1Bhc3NSdW5uZXJdIChmaW5hbCB2YWxpZGF0aW9uKQoAW1Bhc3NSdW5uZXJdICAgcnVubmluZyBwYXNzOiAALi4uIABbUGFzc1J1bm5lcl0gICAodmFsaWRhdGluZykKAExhc3QgcGFzcyAoACkgYnJva2UgdmFsaWRhdGlvbi4gSGVyZSBpcyB0aGUgbW9kdWxlIGJlZm9yZTogCgApIGJyb2tlIHZhbGlkYXRpb24uIFJ1biB3aXRoIEJJTkFSWUVOX1BBU1NfREVCVUc9MiBpbiB0aGUgZW52IHRvIHNlZSB0aGUgZWFybGllciBzdGF0ZSwgb3IgMyB0byBkdW1wIGJ5bi0qIGZpbGVzIGZvciBlYWNoIHBhc3MKAGZpbmFsIG1vZHVsZSBkb2VzIG5vdCB2YWxpZGF0ZQoAZG9Xb3JrZXJzLnNpemUoKSA+IDAALi9zcmMvc3VwcG9ydC90aHJlYWRzLmNwcAB3b3JrAGRvV29ya2Vycy5zaXplKCkgPT0gbnVtACFydW5uaW5nAG9sZCA9PSB0aHJlYWRzLnNpemUoKQByZXNldFRocmVhZHNBcmVSZWFkeQBaWk40d2FzbTEwUGFzc1J1bm5lcjNydW5FdkVOSzMkXzBjbEV2RVVsdkVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpaTjR3YXNtMTBQYXNzUnVubmVyM3J1bkV2RU5LMyRfMGNsRXZFVWx2RV9OU185YWxsb2NhdG9ySVM1X0VFRk5TMl8xNVRocmVhZFdvcmtTdGF0ZUV2RUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZONHdhc20xNVRocmVhZFdvcmtTdGF0ZUV2RUVFAGZ1bmMtPm5hbWUgPT0gbmFtZQAuL3NyYy9wYXNzZXMvcGFzcy5jcHAAY2hlY2sAW1Bhc3NSdW5uZXJdIFBBU1NfREVCVUcgY2hlY2sgZmFpbGVkOiBoYWQgU3RhY2sgSVIgYmVmb3JlIGFuZCBhZnRlciB0aGUgcGFzcyByYW4sIGFuZCB0aGUgcGFzcyBtb2RpZmllZCB0aGUgbWFpbiBJUiwgd2hpY2ggaW52YWxpZGF0ZXMgU3RhY2sgSVIgLSBwYXNzIHNob3VsZCBoYXZlIGJlZW4gbWFya2VkICdtb2RpZmllc0JpbmFyeWVuSVInAFtQYXNzUnVubmVyXSBQQVNTX0RFQlVHIGNoZWNrIGZhaWxlZDogaGFkIFN0YWNrIElSIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIHBhc3MgcmFuLCBhbmQgdGhlIHBhc3MgbW9kaWZpZWQgZ2xvYmFsIGZ1bmN0aW9uIHN0YXRlIC0gcGFzcyBzaG91bGQgaGF2ZSBiZWVuIG1hcmtlZCAnbW9kaWZpZXNCaW5hcnllbklSJwBwYXNzLT5pc0Z1bmN0aW9uUGFyYWxsZWwoKQBydW5QYXNzT25GdW5jdGlvbgBtb2R1bGUAc3RhcnQAOzsgY3VzdG9tIHNlY3Rpb24gIgAiLCBzaXplIABmdW5jIAAgKDsgACA7KQAgKDsgaGFzIFN0YWNrIElSIDspACh0eXBlIABwYXJhbSAAcmVzdWx0IABsb2NhbCAAZW5kAGV4cG9ydCAAZnVuYwB0YWJsZQApKQBkYXRhIAAgIgAiKQoAXG4AXDBkAFx0AFwwYwBcMDgAXFwAXCIAXCcAc2hhcmVkIABlbGVtIAAgYW55ZnVuYykAZ2xvYmFsIAAobXV0IABpbXBvcnQgAChnbG9iYWwgAChmdW5jAHBhcmFtAE40d2FzbTdQcmludGVyRQBOU3QzX18yMTliYXNpY19vc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUAKGdsb2JhbCBzY29wZSkAc3RhbGUgdHlwZSBmb3VuZCBpbiAAIG9uIAAKKG1hcmtlZCBhcyAALCBzaG91bGQgYmUgAGV4cHJlc3Npb24gc2VlbiBtb3JlIHRoYW4gb25jZSBpbiB0aGUgdHJlZSBpbiAALCBvbiAKAFt3YXNtLXZhbGlkYXRvciBlcnJvciBpbiBmdW5jdGlvbiAAXSAAW3dhc20tdmFsaWRhdG9yIGVycm9yIGluIG1vZHVsZV0gAHN0YXJ0IG11c3QgYmUgZm91bmQAc3RhcnQgbXVzdCBoYXZlIDAgcGFyYW1zAHN0YXJ0IG11c3Qgbm90IHJldHVybiBhIHZhbHVlAHVuZXhwZWN0ZWQgZmFsc2U6IABzZWdtZW50IG9mZnNldCBzaG91bGQgYmUgaTMyAHNlZ21lbnQgb2Zmc2V0IHNob3VsZCBiZSByZWFzb25hYmxlAHNlZ21lbnQgbmFtZSBzaG91bGQgYmUgdmFsaWQAICE9IABtZW1vcnkAbWVtb3J5IG1heCA+PSBpbml0aWFsAG1heCBtZW1vcnkgbXVzdCBiZSA8PSA0R0IAbWVtb3J5IGlzIHNoYXJlZCwgYnV0IGF0b21pY3MgYXJlIGRpc2FibGVkAHNlZ21lbnQgc2l6ZSBzaG91bGQgZml0IGluIG1lbW9yeSAoaW5pdGlhbCkAc2VnbWVudCBzaXplIHNob3VsZCBmaXQgaW4gbWVtb3J5IChlbmQpAHVuZXhwZWN0ZWQgdHJ1ZTogAGdsb2JhbCBpbml0IG11c3QgYmUgbm9uLW51bGwAZ2xvYmFsIGluaXQgbXVzdCBiZSB2YWxpZABnbG9iYWwgaW5pdCBtdXN0IGhhdmUgY29ycmVjdCB0eXBlAChvbiBnbG9iYWwgAEV4cG9ydGVkIGZ1bmN0aW9uIG11c3Qgbm90IGhhdmUgaTY0IHJldHVybiB0eXBlAEV4cG9ydGVkIGZ1bmN0aW9uIG11c3Qgbm90IGhhdmUgaTY0IHBhcmFtZXRlcnMAbW9kdWxlIGZ1bmN0aW9uIGV4cG9ydHMgbXVzdCBiZSBmb3VuZABtb2R1bGUgZ2xvYmFsIGV4cG9ydHMgbXVzdCBiZSBmb3VuZAAwAG1vZHVsZSB0YWJsZSBleHBvcnRzIG11c3QgYmUgZm91bmQAbW9kdWxlIG1lbW9yeSBleHBvcnRzIG11c3QgYmUgZm91bmQAbW9kdWxlIGV4cG9ydHMgbXVzdCBiZSB1bmlxdWUAID09IABNb2R1bGU6OmdldEZ1bmN0aW9uOiAASW1wb3J0ZWQgZnVuY3Rpb24gbXVzdCBub3QgaGF2ZSBpNjQgcmV0dXJuIHR5cGUASW1wb3J0ZWQgZnVuY3Rpb24gbXVzdCBub3QgaGF2ZSBpNjQgcGFyYW1ldGVycwBUYWJsZSBpbXBvcnQgcmVjb3JkIGV4aXN0cyBidXQgdGFibGUgaXMgbm90IG1hcmtlZCBhcyBpbXBvcnRlZABNZW1vcnkgaW1wb3J0IHJlY29yZCBleGlzdHMgYnV0IG1lbW9yeSBpcyBub3QgbWFya2VkIGFzIGltcG9ydGVkAHBhcmFtcyBtdXN0IGJlIGNvbmNyZXRlbHkgdHlwZWQAdmFycyBtdXN0IGJlIGNvbmNyZXRlbHkgdHlwZWQAZnVuY3Rpb24gYm9keSB0eXBlIG11c3QgbWF0Y2gsIGlmIGZ1bmN0aW9uIHJldHVybnMAZnVuY3Rpb24gcmVzdWx0IG11c3QgbWF0Y2gsIGlmIGZ1bmN0aW9uIGhhcyByZXR1cm5zAGFsbCBuYW1lZCBicmVhayB0YXJnZXRzIG11c3QgZXhpc3QAZnVuY3Rpb24gcGFyYW1zIG11c3QgbWF0Y2ggaXRzIGRlY2xhcmVkIHR5cGUAZnVuY3Rpb24gcmVzdWx0IG11c3QgbWF0Y2ggaXRzIGRlY2xhcmVkIHR5cGUAZ3Jvd19tZW1vcnkgbXVzdCBoYXZlIDEgb3BlcmFuZABncm93X21lbW9yeSBtdXN0IGhhdmUgaTMyIG9wZXJhbmQAZnVuY3Rpb24gcmVzdWx0cyBtdXN0IG1hdGNoAGNhbiBvbmx5IGRyb3AgYSB2YWxpZCB2YWx1ZQBzZWxlY3QgbGVmdCBtdXN0IGJlIHZhbGlkAHNlbGVjdCByaWdodCBtdXN0IGJlIHZhbGlkAHNlbGVjdCBjb25kaXRpb24gbXVzdCBiZSB2YWxpZABzZWxlY3Qgc2lkZXMgbXVzdCBiZSBlcXVhbABiaW5hcnkgY2hpbGQgdHlwZXMgbXVzdCBiZSBlcXVhbABpMzIgb3AAaTY0IG9wAGYzMiBvcABmNjQgb3AAdW5hcmllcyBtdXN0IG5vdCByZWNlaXZlIGEgbm9uZSBhcyB0aGVpciBpbnB1dABpMzIgdW5hcnkgdmFsdWUgdHlwZSBtdXN0IGJlIGNvcnJlY3QAaTY0IHVuYXJ5IHZhbHVlIHR5cGUgbXVzdCBiZSBjb3JyZWN0AGYzMiB1bmFyeSB2YWx1ZSB0eXBlIG11c3QgYmUgY29ycmVjdABmNjQgdW5hcnkgdmFsdWUgdHlwZSBtdXN0IGJlIGNvcnJlY3QAaTMyLmVxeiBpbnB1dCBtdXN0IGJlIGkzMgBpNjQuZXF6IGlucHV0IG11c3QgYmUgaTY0AGV4dGVuZCB0eXBlIG11c3QgYmUgY29ycmVjdAB3cmFwIHR5cGUgbXVzdCBiZSBjb3JyZWN0AHRydW5jIHR5cGUgbXVzdCBiZSBjb3JyZWN0AHJlaW50ZXJwcmV0L2YzMiB0eXBlIG11c3QgYmUgY29ycmVjdAByZWludGVycHJldC9mNjQgdHlwZSBtdXN0IGJlIGNvcnJlY3QAY29udmVydCB0eXBlIG11c3QgYmUgY29ycmVjdABwcm9tb3RlIHR5cGUgbXVzdCBiZSBjb3JyZWN0AGRlbW90ZSB0eXBlIG11c3QgYmUgY29ycmVjdAByZWludGVycHJldC9pMzIgdHlwZSBtdXN0IGJlIGNvcnJlY3QAcmVpbnRlcnByZXQvaTY0IHR5cGUgbXVzdCBiZSBjb3JyZWN0AEF0b21pYyBvcGVyYXRpb24gKGF0b21pY3MgYXJlIGRpc2FibGVkKQBBdG9taWMgb3BlcmF0aW9uIHdpdGggbm9uLXNoYXJlZCBtZW1vcnkAQXRvbWljV2FrZSBtdXN0IGhhdmUgdHlwZSBpMzIAQXRvbWljV2FrZSBwb2ludGVyIHR5cGUgbXVzdCBiZSBpMzIAQXRvbWljV2FrZSB3YWtlQ291bnQgdHlwZSBtdXN0IGJlIGkzMgBBdG9taWNXYWl0IG11c3QgaGF2ZSB0eXBlIGkzMgBBdG9taWNXYWl0IHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBBdG9taWNXYWl0IGV4cGVjdGVkIHR5cGUgbXVzdCBiZSBpbnQAQXRvbWljV2FpdCBleHBlY3RlZCB0eXBlIG11c3QgbWF0Y2ggb3BlcmFuZABBdG9taWNXYWl0IHRpbWVvdXQgdHlwZSBtdXN0IGJlIGk2NABjbXB4Y2hnIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBjbXB4Y2hnIG9wZXJhbmQgdHlwZXMgbXVzdCBtYXRjaABDbXB4Y2hnIHJlc3VsdCB0eXBlIG11c3QgbWF0Y2ggZXhwZWN0ZWQAQ21weGNoZyByZXN1bHQgdHlwZSBtdXN0IG1hdGNoIHJlcGxhY2VtZW50AEF0b21pYyBvcGVyYXRpb25zIGFyZSBvbmx5IHZhbGlkIG9uIGludCB0eXBlcwA4LWJ5dGUgbWVtIG9wZXJhdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCB3aXRoIDgtYnl0ZSB3YXNtIHR5cGVzAE1lbW9yeSBvcGVyYXRpb25zIG11c3QgYmUgMSwyLDQsIG9yIDggYnl0ZXMAQXRvbWljUk1XIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBBdG9taWNSTVcgcmVzdWx0IHR5cGUgbXVzdCBtYXRjaCBvcGVyYW5kAHN0b3JlIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBzdG9yZSB2YWx1ZSB0eXBlIG11c3Qgbm90IGJlIG5vbmUAc3RvcmUgdmFsdWUgdHlwZSBtdXN0IG1hdGNoAGF0b21pYyBhY2Nlc3NlcyBtdXN0IGhhdmUgbmF0dXJhbCBhbGlnbm1lbnQAYmFkIGFsaWdubWVudDogAGFsaWdubWVudCBtdXN0IG5vdCBleGNlZWQgbmF0dXJhbABsb2FkIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBhdG9taWMgbG9hZHMgbXVzdCBiZSB1bnNpZ25lZABzZXRfZ2xvYmFsIG5hbWUgbXVzdCBiZSB2YWxpZCAoYW5kIG5vdCBhbiBpbXBvcnQ7IGltcG9ydHMgY2FuJ3QgYmUgbW9kaWZpZWQpAHNldF9nbG9iYWwgZ2xvYmFsIG11c3QgYmUgbXV0YWJsZQBzZXRfZ2xvYmFsIHZhbHVlIG11c3QgaGF2ZSByaWdodCB0eXBlAGdldF9nbG9iYWwgbmFtZSBtdXN0IGJlIHZhbGlkAHNldF9sb2NhbCBpbmRleCBtdXN0IGJlIHNtYWxsIGVub3VnaABzZXRfbG9jYWwgdHlwZSBtdXN0IGJlIGNvcnJlY3QAc2V0X2xvY2FsIHR5cGUgbXVzdCBtYXRjaCBmdW5jdGlvbgBnZXRfbG9jYWwgaW5kZXggbXVzdCBiZSBzbWFsbCBlbm91Z2gAZ2V0X2xvY2FsIG11c3QgaGF2ZSBhIHZhbGlkIHR5cGUgLSBjaGVjayB3aGF0IHlvdSBwcm92aWRlZCB3aGVuIHlvdSBjb25zdHJ1Y3RlZCB0aGUgbm9kZQBnZXRfbG9jYWwgbXVzdCBoYXZlIHByb3BlciB0eXBlAGNhbGxfaW5kaXJlY3QgdHlwZSBtdXN0IGV4aXN0AGluZGlyZWN0IGNhbGwgdGFyZ2V0IG11c3QgYmUgYW4gaTMyAGNhbGwgcGFyYW0gbnVtYmVyIG11c3QgbWF0Y2gAY2FsbCBwYXJhbSB0eXBlcyBtdXN0IG1hdGNoAChvbiBhcmd1bWVudCAAY2FsbF9pbXBvcnQgdGFyZ2V0IG11c3QgZXhpc3QAY2FsbGVkIGltcG9ydCBtdXN0IGJlIGZ1bmN0aW9uAGNhbGwgdGFyZ2V0IG11c3QgZXhpc3QAKHBlcmhhcHMgaXQgc2hvdWxkIGJlIGEgQ2FsbEltcG9ydCBpbnN0ZWFkIG9mIENhbGw/KQoAYnJfdGFibGUgY29uZGl0aW9uIG11c3QgYmUgaTMyAGJyZWFrcyBtdXN0IGhhdmUgYSB2YWxpZCB2YWx1ZQBhbGwgYnJlYWsgdGFyZ2V0cyBtdXN0IGJlIHZhbGlkAGJyZWFrIGNvbmRpdGlvbiBtdXN0IGJlIGkzMgBpdGVyICE9IGJyZWFrSW5mb3MuZW5kKCkALi9zcmMvd2FzbS93YXNtLXZhbGlkYXRvci5jcHAAYnJlYWtzIHRvIGEgbG9vcCBjYW5ub3QgcGFzcyBhIHZhbHVlAGJhZCBib2R5IGZvciBhIGxvb3AgdGhhdCBoYXMgbm8gdmFsdWUAbmFtZXMgaW4gQmluYXJ5ZW4gSVIgbXVzdCBiZSB1bmlxdWUgLSBJUiBnZW5lcmF0b3JzIG11c3QgZW5zdXJlIHRoYXQAaWYgY29uZGl0aW9uIG11c3QgYmUgdmFsaWQAaWYgd2l0aG91dCBlbHNlIG11c3Qgbm90IHJldHVybiBhIHZhbHVlIGluIGJvZHkAaWYgd2l0aG91dCBlbHNlIGFuZCByZWFjaGFibGUgY29uZGl0aW9uIG11c3QgYmUgbm9uZQByZXR1cm5pbmcgaWYtZWxzZSdzIHRydWUgbXVzdCBoYXZlIHJpZ2h0IHR5cGUAcmV0dXJuaW5nIGlmLWVsc2UncyBmYWxzZSBtdXN0IGhhdmUgcmlnaHQgdHlwZQB1bnJlYWNoYWJsZSBpZi1lbHNlIG11c3QgaGF2ZSB1bnJlYWNoYWJsZSB0cnVlAHVucmVhY2hhYmxlIGlmLWVsc2UgbXVzdCBoYXZlIHVucmVhY2hhYmxlIGZhbHNlAGlmIHR5cGUgbXVzdCBtYXRjaCBjb25jcmV0ZSBpZlRydWUAb3RoZXIgYXJtIG11c3QgbWF0Y2ggY29uY3JldGUgaWZUcnVlAGlmIHR5cGUgbXVzdCBtYXRjaCBjb25jcmV0ZSBpZkZhbHNlAG90aGVyIGFybSBtdXN0IG1hdGNoIGNvbmNyZXRlIGlmRmFsc2UAYnJlYWsgYXJpdGllcyBtdXN0IGJlID4gMCBpZiBibG9jayBoYXMgYSB2YWx1ZQBicmVhayBhcml0aWVzIG11c3QgYmUgMCBpZiBibG9jayBoYXMgbm8gdmFsdWUAYmxvY2srYnJlYWtzIG11c3QgaGF2ZSByaWdodCB0eXBlIGlmIGJyZWFrcyByZXR1cm4gYSB2YWx1ZQBibG9jayticmVha3MgbXVzdCBoYXZlIHJpZ2h0IHR5cGUgaWYgYnJlYWtzIGhhdmUgYXJpdHkAYnJlYWsgYXJpdGllcyBtdXN0IG1hdGNoAGJsb2NrK2JyZWFrcyBtdXN0IGhhdmUgcmlnaHQgdHlwZSBpZiBibG9jayBlbmRzIHdpdGggYSByZWFjaGFibGUgdmFsdWUAaWYgYmxvY2sgZW5kcyB3aXRoIGEgbm9uZSwgYnJlYWtzIGNhbm5vdCBzZW5kIGEgdmFsdWUgb2YgYW55IHR5cGUAbm9uLWZpbmFsIGJsb2NrIGVsZW1lbnRzIHJldHVybmluZyBhIHZhbHVlIG11c3QgYmUgZHJvcCgpZWQgKGJpbmFyeWVuJ3MgYXV0b2Ryb3Agb3B0aW9uIG1pZ2h0IGhlbHAgeW91KQAob24gaW5kZXggADoKAAopLCB0eXBlOiAAaWYgYmxvY2sgaXMgbm90IHJldHVybmluZyBhIHZhbHVlLCBmaW5hbCBlbGVtZW50IHNob3VsZCBub3QgZmxvdyBvdXQgYSB2YWx1ZQBibG9jayB3aXRoIHZhbHVlIGFuZCBsYXN0IGVsZW1lbnQgd2l0aCB2YWx1ZSBtdXN0IG1hdGNoIHR5cGVzAGJsb2NrIHdpdGggdmFsdWUgbXVzdCBub3QgaGF2ZSBsYXN0IGVsZW1lbnQgdGhhdCBpcyBub25lAGJsb2NrIHdpdGggYSB2YWx1ZSBtdXN0IG5vdCBiZSBlbXB0eQBONHdhc20xN0Z1bmN0aW9uVmFsaWRhdG9yRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE3RnVuY3Rpb25WYWxpZGF0b3JFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTdGdW5jdGlvblZhbGlkYXRvckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE3RnVuY3Rpb25WYWxpZGF0b3JFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTdGdW5jdGlvblZhbGlkYXRvckV2RUUAYnluLQAud2FzbQB3cml0aW5nIHRleHQgdG8gAE5TdDNfXzIxM2Jhc2ljX2ZpbGVidWZJY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjE0YmFzaWNfb2ZzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFRUUAT3BlbmluZyAnAEZhaWxlZCBvcGVuaW5nICcAdwBhAHIAcisAdysAYSsAd2IAYWIAcmIAcitiAHcrYgBhK2IAd3JpdGluZyBiaW5hcnkgdG8gAGZpbmlzaFVwAHdyaXRpbmcgYnVmZmVyACBhdCAAIGFuZCBwb2ludGVyIGlzIGF0IAB3cml0ZUludDg6IABiYWNrcGF0Y2hJbnQzMjogAHNpemVGaWVsZFNpemUgPCBNYXhMRUIzMkJ5dGVzAC4vc3JjL3dhc20vd2FzbS1iaW5hcnkuY3BwAGZpbmlzaFNlY3Rpb24Ad3JpdGVBdFUzMkxFQjogAHdyaXRlVTMyTEVCOiAAd3JpdGVJbnQzMjogACJ9AG1hcHBlZEZ1bmN0aW9ucy5jb3VudChuYW1lKQBnZXRGdW5jdGlvbkluZGV4AD09IHdyaXRlU291cmNlTWFwVXJsAHNvdXJjZU1hcHBpbmdVUkwAPT0gd3JpdGVOYW1lcwBlbWl0dGVkID09IG1hcHBlZEZ1bmN0aW9ucy5zaXplKCkAd3JpdGVOYW1lcwBuYW1lAHRvbyBtYW55IG5vbi1jb25zdGFudC1vZmZzZXQgZGF0YSBzZWdtZW50cywgd2FzbSBWTXMgbWF5IG5vdCBhY2NlcHQgdGhpcyBiaW5hcnkAenogY29uc3Qgbm9kZSBkb25lLgoAd3JpdGVJbnQ2NDogAHdyaXRlUzY0TEVCOiAAIChhdCAAKQoAd3JpdGVTMzJMRUI6IABtYXBwZWRHbG9iYWxzLmNvdW50KG5hbWUpAGdldEdsb2JhbEluZGV4AHp6IG5vZGU6IEJsb2NrACAgAD09IHdyaXRlRnVuY3Rpb25zAHdyaXRlIG9uZSBhdAB3cml0aW5nAHdyaXRlIFN0YWNrIElSAHdyaXRlIEJpbmFyeWVuIElSAGJvZHkgc2l6ZTogACwgd3JpdGluZyBhdCAALCBuZXh0IHN0YXJ0cyBhdCAAd3JpdGVGdW5jdGlvbnMAPT0gd3JpdGVUYWJsZUVsZW1lbnRzAD09IHdyaXRlU3RhcnQAPT0gd3JpdGVleHBvcnRzAHdyaXRlIG9uZQA9PSB3cml0ZWdsb2JhbHMAPT0gd3JpdGVNZW1vcnkAPT0gd3JpdGVGdW5jdGlvblRhYmxlRGVjbGFyYXRpb24APT0gd3JpdGVGdW5jdGlvblNpZ25hdHVyZXMAPT0gd3JpdGVJbXBvcnRzAD09IHdyaXRlVHlwZXMAeyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbAF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIAPT0gd3JpdGVIZWFkZXIAQklOQVJZRU5fUEFTU19ERUJVRwBONHdhc20xOEFjY2Vzc0luc3RydW1lbnRlckUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xOEFjY2Vzc0luc3RydW1lbnRlckVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xOEFjY2Vzc0luc3RydW1lbnRlckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE4QWNjZXNzSW5zdHJ1bWVudGVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE4QWNjZXNzSW5zdHJ1bWVudGVyRXZFRQB2AE40d2FzbThTYWZlSGVhcEUAY3VyclZhbHVlc1tpXSA+PSBjdXJyLT5jb250ZW50cy5lbmRbaV0ALi9zcmMvcGFzc2VzL1JlZHVuZGFudFNldEVsaW1pbmF0aW9uLmNwcABmbG93VmFsdWVzACFlbXB0eSgpAC4vc3JjL3N1cHBvcnQvdW5pcXVlX2RlZmVycmluZ19xdWV1ZS5oAHBvcABONHdhc20yM1JlZHVuZGFudFNldEVsaW1pbmF0aW9uRQBONHdhc20xMFdhbGtlclBhc3NJTlNfOUNGR1dhbGtlcklOU18yM1JlZHVuZGFudFNldEVsaW1pbmF0aW9uRU5TXzdWaXNpdG9ySVMyX3ZFRU5TXzRJbmZvRUVFRUUATjR3YXNtOUNGR1dhbGtlcklOU18yM1JlZHVuZGFudFNldEVsaW1pbmF0aW9uRU5TXzdWaXNpdG9ySVMxX3ZFRU5TXzRJbmZvRUVFAE40d2FzbTE3Q29udHJvbEZsb3dXYWxrZXJJTlNfMjNSZWR1bmRhbnRTZXRFbGltaW5hdGlvbkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMjNSZWR1bmRhbnRTZXRFbGltaW5hdGlvbkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzIzUmVkdW5kYW50U2V0RWxpbWluYXRpb25FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMjNSZWR1bmRhbnRTZXRFbGltaW5hdGlvbkV2RUUAUm9vdAAuL3NyYy9jZmcvUmVsb29wZXIuY3BwAFJlbmRlcgBDYWxjdWxhdGUATG9vcABIYW5kbGVGb2xsb3d1cE11bHRpcGxlcwBMb29wLT5FbnRyaWVzLnNpemUoKSA+IDAAYmxvY2skACRicmVhawBOM0NGRzEzTXVsdGlwbGVTaGFwZUUATjNDRkc1U2hhcGVFAElubmVyQmxvY2tzLnNpemUoKSA+IDAATWFrZUxvb3AAc2hhcGUkACRjb250aW51ZQBOM0NGRzlMb29wU2hhcGVFACFEZWZhdWx0VGFyZ2V0ICYmICJibG9jayBoYXMgYnJhbmNoZXMgd2l0aG91dCBhIGRlZmF1bHQgKG51bGxwdHIgZm9yIHRoZSBjb25kaXRpb24pIgBEZWZhdWx0VGFyZ2V0AERldGFpbHMtPkNvbmRpdGlvbgBEZXRhaWxzLT5UeXBlID09IEJyYW5jaDo6QnJlYWsAIVJvb3QAc3dpdGNoJAAkZGVmYXVsdAAkbGVhdmUAJGNhc2UkAEFuY2VzdG9yAE4zQ0ZHMTFTaW1wbGVTaGFwZUUATlN0M19fMjE0ZGVmYXVsdF9kZWxldGVJTjR3YXNtOFJlUmVsb29wMTBUcmlhZ2VUYXNrRUVFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9wb2ludGVySVBONHdhc204UmVSZWxvb3AxMFRyaWFnZVRhc2tFTlNfMTRkZWZhdWx0X2RlbGV0ZUlTM19FRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQAhYmVmb3JlLT5Td2l0Y2hDb25kaXRpb24ALi9zcmMvcGFzc2VzL1JlUmVsb29wLmNwcABoYW5kbGUAIWNvbnRhaW5zKEJyYW5jaGVzT3V0LCBUYXJnZXQpAEFkZEJyYW5jaFRvAEFkZFN3aXRjaEJyYW5jaFRvAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU40d2FzbThSZVJlbG9vcDEwVHJpYWdlVGFza0VOU185YWxsb2NhdG9ySVMzX0VFRUUATjR3YXNtOFJlUmVsb29wNklmVGFza0UATjR3YXNtOFJlUmVsb29wNFRhc2tFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU40d2FzbThSZVJlbG9vcDZJZlRhc2tFTlNfOWFsbG9jYXRvcklTM19FRUVFAE40d2FzbThSZVJlbG9vcDlCbG9ja1Rhc2tFAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSU40d2FzbThSZVJlbG9vcDlCbG9ja1Rhc2tFTlNfOWFsbG9jYXRvcklTM19FRUVFAE40d2FzbThSZVJlbG9vcDEwVHJpYWdlVGFza0UATjR3YXNtOFJlUmVsb29wRQBuZXdUb09sZFtpXSA8IGN1cnItPnBhcmFtcy5zaXplKCkALi9zcmMvcGFzc2VzL1Jlb3JkZXJMb2NhbHMuY3BwAE40d2FzbTEzUmVvcmRlckxvY2Fsc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xM1Jlb3JkZXJMb2NhbHNFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTNSZW9yZGVyTG9jYWxzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTNSZW9yZGVyTG9jYWxzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzEzUmVvcmRlckxvY2Fsc0V2RUUAY291bnRzLT5jb3VudChjdXJyLT50YXJnZXQpID4gMAAuL3NyYy9wYXNzZXMvUmVvcmRlckZ1bmN0aW9ucy5jcHAATjR3YXNtMTZDYWxsQ291bnRTY2FubmVyRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE2Q2FsbENvdW50U2Nhbm5lckVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNkNhbGxDb3VudFNjYW5uZXJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNkNhbGxDb3VudFNjYW5uZXJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTZDYWxsQ291bnRTY2FubmVyRXZFRQBONHdhc20xNlJlb3JkZXJGdW5jdGlvbnNFAGJyYW5jaGVzU2Vlbi5lbXB0eSgpAC4vc3JjL3Bhc3Nlcy9SZW1vdmVVbnVzZWROYW1lcy5jcHAATjR3YXNtMTdSZW1vdmVVbnVzZWROYW1lc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xN1JlbW92ZVVudXNlZE5hbWVzRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE3UmVtb3ZlVW51c2VkTmFtZXNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xN1JlbW92ZVVudXNlZE5hbWVzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE3UmVtb3ZlVW51c2VkTmFtZXNFdkVFAE40d2FzbTI2UmVtb3ZlVW51c2VkTW9kdWxlRWxlbWVudHNFAGlmU3RhY2suZW1wdHkoKQAuL3NyYy9wYXNzZXMvUmVtb3ZlVW51c2VkQnJzLmNwcABpZlRydWUgJiYgaWZGYWxzZQAuL3NyYy93YXNtL3dhc20uY3BwAGZpbmFsaXplACFicjEtPnZhbHVlACFicjItPnZhbHVlACFici0+dmFsdWUAdGFibGlmeXwAdGFibGVbaW5kZXhdID09IGRlZmF1bHROYW1lAHRhYmxpZnkAIWlzQ29uY3JldGVUeXBlKGlmZi0+dHlwZSkAb3B0aW1pemVMb29wACFpc0NvbmNyZXRlVHlwZShibG9jay0+dHlwZSkAc2VsZi0+aWZTdGFjay5zaXplKCkgPiAwAHZpc2l0QW55AHVzZWRFbGVtZW50cyA+IDAAZnJvbnQAcG9wX2JhY2sAYmFjawBONHdhc20xNVJlbW92ZVVudXNlZEJyc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNVJlbW92ZVVudXNlZEJyc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNVJlbW92ZVVudXNlZEJyc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE1UmVtb3ZlVW51c2VkQnJzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE1UmVtb3ZlVW51c2VkQnJzRXZFRQBONHdhc20xMlJlbW92ZU1lbW9yeUUATW9kdWxlOjpnZXRJbXBvcnQ6IABONHdhc20xM1JlbW92ZUltcG9ydHNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTNSZW1vdmVJbXBvcnRzRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzEzUmVtb3ZlSW1wb3J0c0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzEzUmVtb3ZlSW1wb3J0c0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xM1JlbW92ZUltcG9ydHNFdkVFACFmdW5jLT5zdGFja0lSAC4vc3JjL2lyL21vZHVsZS11dGlscy5oAGNvcHlGdW5jdGlvbgBaTjR3YXNtMjFFeHByZXNzaW9uTWFuaXB1bGF0b3I0Y29weUVQTlNfMTBFeHByZXNzaW9uRVJOU182TW9kdWxlRUVVbFMyX0VfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20yMUV4cHJlc3Npb25NYW5pcHVsYXRvcjRjb3B5RVBOUzJfMTBFeHByZXNzaW9uRVJOUzJfNk1vZHVsZUVFVWxTNV9FX05TXzlhbGxvY2F0b3JJUzhfRUVGUzVfUzVfRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZQTjR3YXNtMTBFeHByZXNzaW9uRVM0X0VFRQBlbXB0eSB0b3BsZXZlbCwgZXhwZWN0ZWQgbW9kdWxlAHRvcGxldmVsIGRvZXMgbm90IHN0YXJ0IHdpdGggbW9kdWxlAGJhZCBtb2R1bGUgZWxlbWVudCAAdW5rbm93biBtb2R1bGUgZWxlbWVudABlbGVtIHdpdGhvdXQgdGFibGUAdW5rbm93biBmdW5jdGlvbiBpbiBnZXRGdW5jdGlvbk5hbWUAYXRvbWljLgBhYm9ydF9vbiAAd2FpdAB3YWtlAGxvY2FsIGFjY2VzcyBpbiBub24tZnVuY3Rpb24gc2NvcGUAYmFkIGxvY2FsIG5hbWUAYmFkIGxvY2FsIGluZGV4AEZ1bmN0aW9uOjpnZXRMb2NhbEluZGV4OiAAc2V0X2dsb2JhbCBvZiBpbW11dGFibGUAdW5rbm93biBnbG9iYWwgaW4gZ2V0R2xvYmFsTmFtZQBsb29wLWluAGJhZCBnZXRfZ2xvYmFsIG5hbWUAZ3Jvd19tZW1vcnkgbmVlZHMgb25lIG9wZXJhbmQAaG9zdCBuZWVkcyB6ZXJvIG9wZXJhbmRzAG5vIHRhYmxlAGV4cGVjdGVkICd0eXBlJyBpbiBjYWxsX2luZGlyZWN0AGludmFsaWQgY2FsbF9pbmRpcmVjdCB0eXBlAGludmFsaWQgYnJlYWsgb2Zmc2V0AG91dCBvZiByYW5nZSBicmVhayBvZmZzZXQAaW52YWxpZCBsYWJlbABzd2l0Y2ggd2l0aCBubyB0YXJnZXRzAGJhZCBjb25zdABiYWQgbmFuIGlucHV0AGludmFsaWQgZjMyIGZvcm1hdABpbnZhbGlkIGY2NCBmb3JtYXQAaW52YWxpZCBpMzIgZm9ybWF0AGludmFsaWQgaTY0IGZvcm1hdABwYXJzZWQgdHlwZSBkb2VzIG5vdCBtYXRjaCBleHBlY3RlZCB0eXBlAHR5cGUgPT0gVHlwZTo6aTY0AGNhc3RUb0Y2NAB0eXBlID09IFR5cGU6OmkzMgBjYXN0VG9GMzIATlN0M19fMjE5YmFzaWNfaXN0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAG1hbGZvcm1lZCBhdG9taWMgcm13IGluc3RydWN0aW9uAGNtcHhjaGcAYWRkAGFuZABvcgB4b3IAeGNoZwBiYWQgYXRvbWljIHJtdyBvcGVyYXRvcgBBbGlnbiBvZiBBdG9taWMgUk1XIG11c3QgbWF0Y2ggc2l6ZQBtaXNzaW5nID0gaW4gbWVtb3J5IGF0dHJpYnV0ZQBtaXNzaW5nIHZhbHVlIGluIG1lbW9yeSBhdHRyaWJ1dGUAYmFkIG1lbW9yeSBhdHRyaWJ1dGUgaW1tZWRpYXRlAGJhZCBhbGlnbgBiYWQgb2Zmc2V0AGJhZCBtZW1vcnkgYXR0cmlidXRlAEFsaWduIG9mIEF0b21pYyBDbXB4Y2hnIG11c3QgbWF0Y2ggc2l6ZQBleHBlY3RlZCAxNiBmb3IgbWVtb3Agc2l6ZQBleHBlY3RlZCAzMiBmb3IgbWVtb3Agc2l6ZQB2YWx1ZVR5cGUgIT0gbm9uZQBsZWZ0ICYmIHJpZ2h0AGJhZCB0eXBlIGZvciAAIHZzIHZhbHVlIHR5cGUgAGF0b21pY193YWtlAGF0b21pY193YWl0AGF0b21pY19ybXcAYXRvbWljX2NtcHhjaGcAbm9wAGhvc3QAZHJvcABzZWxlY3QAdW5hcnkAc3RvcmUAbG9hZABzZXRfZ2xvYmFsAGdldF9nbG9iYWwAc2V0X2xvY2FsAGxvb3AAd2FrYSAAaW52YWxpZCB3YXNtIHR5cGUAbW9yZSB0aGFuIG9uZSB0YWJsZQBkdXBsaWNhdGUgZXhwb3J0ACFwcmVQYXJzZUltcG9ydCBpbiB0YWJsZQBkdXBsaWNhdGUgaW1wb3J0AGludmFsaWQgdGFibGUATW9kdWxlOjphZGRFeHBvcnQ6IGVtcHR5IG5hbWUATW9kdWxlOjphZGRFeHBvcnQ6IABjYW5ub3QgZXhwb3J0IGEgbXV0YWJsZSBnbG9iYWwAIXByZVBhcnNlSW1wb3J0IGluIGdsb2JhbABjYW5ub3QgaW1wb3J0IGEgbXV0YWJsZSBnbG9iYWwAcHJlUGFyc2VJbXBvcnQgaW4gZ2xvYmFsAGdsb2JhbCB3aXRob3V0IGluaXQAZXh0cmEgaW1wb3J0IGVsZW1lbnRzAE1vZHVsZTo6YWRkR2xvYmFsOiBlbXB0eSBuYW1lAE1vZHVsZTo6YWRkR2xvYmFsOiAAaW52YWxpZCBleHBvcnQAbWVtb3J5IGV4cG9ydGVkIGJ1dCBubyBtZW1vcnkAaW52YWxpZCBleHQgZXhwb3J0AE1vZHVsZTo6Z2V0R2xvYmFsOiAAZGF0YSBidXQgbm8gbWVtb3J5AHRvbyBtYW55IG1lbW9yaWVzAHNoYXJlZABiYWQgaW1wb3J0IGVuZGluZwBleGNlc3NpdmUgbWVtb3J5IG9mZnNldABleGNlc3NpdmUgbWVtb3J5IGluaXQAdG90YWwgbWVtb3J5IG11c3QgYmUgPD0gNEdCAGludmFsaWQgcmVzdWx0IGFyaXR5AHVua25vd24gZnVuY3Rpb24gdHlwZQBubyBmdW5jdGlvbiB0eXBlIFtpbnRlcm5hbCBlcnJvcj9dACFwcmVQYXJzZUltcG9ydCBpbiBmdW5jAGltcG9ydCBtb2R1bGUgaW5zaWRlIGZ1bmN0aW9uIGRlYwBwcmVQYXJzZUltcG9ydCBpbiBmdW5jAGJhZCBmdW5jIGRlY2xhcmF0aW9uAGR1cGxpY2F0ZSBmdW5jdGlvbgB1bmtub3duIGZ1bmN0aW9uIHR5cGUgaW4gZ2V0RnVuY3Rpb25UeXBlTmFtZQBmYW5jeSBpbXBvcnQgd2UgZG9uJ3Qgc3VwcG9ydCB5ZXQAbW9yZSB0aGFuIG9uZSBtZW1vcnkAaW1wb3J0JGZ1bmN0aW9uJABpbXBvcnQkZ2xvYmFsAGltcG9ydCRtZW1vcnkkAGltcG9ydCR0YWJsZSQAaW52YWxpZCBpbXBvcnQAaW52YWxpZCBleHQgaW1wb3J0AG5vIG5hbWUgZm9yIGltcG9ydABiYWQgZnVuY3Rpb24gdHlwZSBmb3IgaW1wb3J0AGJhZCBpbXBvcnQgZWxlbWVudABleHBlY3RlZCByZXN1bHQAZXhwZWN0ZWQgbXV0AGV4Y2Vzc2l2ZSB0YWJsZSBpbml0IHNpemUAZXhjZXNzaXZlIHRhYmxlIG1heCBzaXplAGJhZCBtZW1vcnkgbGltaXQgZGVjbGFyYXRpb24AZHVwbGljYXRlIGZ1bmN0aW9uIHR5cGUAU2VjdGlvbiBleHRlbmRzIGJleW9uZCBlbmQgb2YgaW5wdXQAc2VjdGlvbiBzZWVuIG1vcmUgdGhhbiBvbmNlOiAAYmFkIHVzZXIgc2VjdGlvbiBzaXplLCBzdGFydGVkIGF0IAAgcGx1cyBwYXlsb2FkIAAgbm90IGJlaW5nIGVxdWFsIHRvIG5ldyBwb3NpdGlvbiAAYmFkIHNlY3Rpb24gc2l6ZSwgc3RhcnRlZCBhdCAAZGlkIG5vdCBzZWUgdGhlIHJpZ2h0IG51bWJlciBvZiBmdW5jdGlvbnMAYmFkIGV4cG9ydCBraW5kAGltcG9ydC0+a2luZCA9PSBFeHRlcm5hbEtpbmQ6OkZ1bmN0aW9uAGdldEZ1bmN0aW9uSW5kZXhOYW1lAGJhZCBmdW5jdGlvbiBpbmRleAB1bmV4cGVjdGVkIGVuZCBvZiBpbnB1dABnZXRJbnQ4OiAAPT0gcmVhZE5hbWVzAHVua25vd24gbmFtZSBzdWJzZWN0aW9uIGF0IABpbmRleCBvdXQgb2YgYm91bmRzOiAAYmFkIG5hbWVzIHN1YnNlY3Rpb24gcG9zaXRpb24gY2hhbmdlAGJhZCBuYW1lcyBzZWN0aW9uIHBvc2l0aW9uIGNoYW5nZQA8PT0AaW5saW5lIHN0cmluZyBjb250YWlucyBOVUxMICgwKS4gdGhhdCBpcyB0ZWNobmljYWxseSB2YWxpZCBpbiB3YXNtLCBidXQgeW91IHNob3VsZG4ndCBkbyBpdCwgYW5kIGl0J3Mgbm90IHN1cHBvcnRlZCBpbiBiaW5hcnllbgBnZXRJbmxpbmVTdHJpbmc6IAAgPT0+AD09IHJlYWRGdW5jdGlvblRhYmxlRGVjbGFyYXRpb24AT25seSAxIHRhYmxlIGRlZmluaXRpb24gYWxsb3dlZCBpbiBNVlAAVGFibGUgY2Fubm90IGJlIGJvdGggaW1wb3J0ZWQgYW5kIGRlZmluZWQARWxlbWVudFR5cGUgbXVzdCBiZSBBbnlGdW5jIGluIE1WUABUYWJsZXMgbWF5IG5vdCBiZSBzaGFyZWQAc2hhcmVkIG1lbW9yeSBtdXN0IGhhdmUgbWF4IHNpemUAZ2V0UzMyTEVCOiAATEVCIGRyb3BwZWQgYml0cyBvbmx5IHZhbGlkIGZvciBzaWduZWQgTEVCAExFQiBvdmVyZmxvdwAgTEVCc2lnbi1leHRlbmQgc2hvdWxkIHByb2R1Y2UgYSBuZWdhdGl2ZSB2YWx1ZQBaTjR3YXNtMTdXYXNtQmluYXJ5QnVpbGRlcjlnZXRTMzJMRUJFdkUzJF80AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xN1dhc21CaW5hcnlCdWlsZGVyOWdldFMzMkxFQkV2RTMkXzROU185YWxsb2NhdG9ySVM0X0VFRmF2RUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZhdkVFRQA9PSByZWFkRGF0YVNlZ21lbnRzAGJhZCBtZW1vcnkgaW5kZXgsIG11c3QgYmUgMABkZXB0aCA9PSAwAHJlYWRFeHByZXNzaW9uAGV4cGVjdGVkIHRvIHJlYWQgYSBzaW5nbGUgZXhwcmVzc2lvbgA9PSBwb3BFeHByZXNzaW9uAD09IHBvcHBpbmcgdW5yZWFjaGFibGUgZnJvbSBwb2x5bW9ycGhpYyBzdGFjawBhdHRlbXB0ZWQgcG9wIGZyb20gZW1wdHkgc3RhY2sgLyBiZXlvbmQgYmxvY2sgc3RhcnQgYm91bmRhcnkgYXQgAD09IHByb2Nlc3NFeHByZXNzaW9ucwA9PSBwcm9jZXNzRXhwcmVzc2lvbnMgZmluaXNoZWQAUmVhY2hlZCBmdW5jdGlvbiBlbmQgd2l0aG91dCBzZWVpbmcgRW5kIG9wY29kZQA9PSBwcm9jZXNzRXhwcmVzc2lvbnMgZmluaXNoZWQgd2l0aCB1bnJlYWNoYWJsZQA9PSBza2lwVW5yZWFjaGFibGVDb2RlAD09IHNraXBVbnJlYWNoYWJsZUNvZGUgZmluaXNoZWQAenogcmVjdXJzZSBpbnRvIABza2lwcGluZyBkZWJ1ZyBsb2NhdGlvbiBpbmZvIGZvciAAcmVhZEV4cHJlc3Npb24gc2VlaW5nIABpbnZhbGlkIGNvZGUgYWZ0ZXIgYXRvbWljIHByZWZpeDogAGJhZCBub2RlIGNvZGUgAHp6IHJlY3Vyc2UgZnJvbSAASW52YWxpZCByZXNlcnZlZCBmaWVsZCBvbiBncm93X21lbW9yeS9jdXJyZW50X21lbW9yeQBwb3BwaW5nIHZvaWQgd2hlcmUgd2UgbmVlZCBhIG5ldyBsb2NhbABwb3BOb25Wb2lkRXhwcmVzc2lvbgBpbiBhIG5vbi1mdW5jdGlvbiBjb250ZXh0OiAAenogbm9kZTogQ29uc3QsIGNvZGUgAGdldEZsb2F0NjQ6IABnZXRJbnQ2NDogAC8weABnZXRJbnQzMjogAGdldEludDE2OiAAZ2V0RmxvYXQzMjogAGdldFM2NExFQjogAFpONHdhc20xN1dhc21CaW5hcnlCdWlsZGVyOWdldFM2NExFQkV2RTMkXzUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk40d2FzbTE3V2FzbUJpbmFyeUJ1aWxkZXI5Z2V0UzY0TEVCRXZFMyRfNU5TXzlhbGxvY2F0b3JJUzRfRUVGYXZFRUUAQWxpZ24gb2YgQXRvbWljV2FrZSBtdXN0IG1hdGNoIHNpemUAQWxpZ25tZW50IG11c3QgYmUgb2YgYSByZWFzb25hYmxlIHNpemUAQWxpZ24gb2YgQXRvbWljV2FpdCBtdXN0IG1hdGNoIHNpemUAQWxpZ24gb2YgQXRvbWljQ3B4Y2hnIG11c3QgbWF0Y2ggc2l6ZQBBbGlnbiBvZiBBdG9taWNSTVcgbXVzdCBtYXRjaCBzaXplAHp6IG5vZGU6IEF0b21pY0xvYWQAYmFkIGdldF9nbG9iYWwAc2V0X2xvY2FsIG91dHNpZGUgb2YgZnVuY3Rpb24AYmFkIHNldF9sb2NhbCBpbmRleABnZXRfbG9jYWwAYmFkIGdldF9sb2NhbCBpbmRleABiYWQgY2FsbF9pbmRpcmVjdCBmdW5jdGlvbiBpbmRleABJbnZhbGlkIGZsYWdzIGZpZWxkIGluIGNhbGxfaW5kaXJlY3QAYmFkIGNhbGwgaW5kZXgAdHlwZQAuL3NyYy93YXNtLWJpbmFyeS5oAGZpbGxDYWxsAHRhcmdldHM6IABkZWZhdWx0OiAAZ2V0QnJlYWtUYXJnZXQgAGJhZCBicmVha2luZGV4IChsb3cpAGJhZCBicmVha2luZGV4IChoaWdoKQBicmVha3RhcmdldCAAIGFyaXR5IAB6eiBub2RlOiBCcmVhaywgY29kZSAAYmxvY2sgY2Fubm90IHBvcCBmcm9tIG91dHNpZGUAc3RhcnQgPD0gZXhwcmVzc2lvblN0YWNrLnNpemUoKQBwdXNoQmxvY2tFbGVtZW50cwBzdGFydCA8PSBlbmQAZW5kIDw9IGV4cHJlc3Npb25TdGFjay5zaXplKCkAbmVlZCBhbiBleHRyYSB2YXIgaW4gYSBub24tZnVuY3Rpb24gY29udGV4dCwgaW52YWxpZCB3YXNtAGdldHRpbmcgYSBsYWJlbABsYWJlbCQAaW52YWxpZCB3YXNtIHR5cGU6IABpZiBzaG91bGQgZW5kIHdpdGggRW5kAHBvcyA+IDAAdW5nZXRJbnQ4AHVuZ2V0SW50OCAoYXQgAFVuZXhwZWN0ZWQgZGVsaW1pdGVyAHVuZXhwZWN0ZWQgRU9GIGluIHRoZSBtaWRkbGUgb2YgVkxRAGludmFsaWQgVkxRIGRpZ2l0AE40d2FzbTE3TWFwUGFyc2VFeGNlcHRpb25FAGJhZCBnbG9iYWwgaW5kZXgAPT0gcmVhZEdsb2JhbHMAbnVtOiAAcmVhZCBvbmUAR2xvYmFsIG11dGFiaWxpdHkgbXVzdCBiZSAwIG9yIDEAZ2xvYmFsJABub24tY29uY3JldGUgdHlwZSB3aGVuIG9uZSBleHBlY3RlZAA9PSByZWFkVGFibGVFbGVtZW50cwBUb28gbWFueSBzZWdtZW50cwBUYWJsZSBlbGVtZW50cyBtdXN0IHJlZmVyIHRvIHRhYmxlIDAgaW4gTVZQAD09IHJlYWRFeHBvcnRzAGR1cGxpY2F0ZSBleHBvcnQgbmFtZQA9PSByZWFkRnVuY3Rpb25zAGludmFsaWQgZnVuY3Rpb24gc2VjdGlvbiBzaXplLCBtdXN0IGVxdWFsIHR5cGVzAHJlYWQgb25lIGF0IABlbXB0eSBmdW5jdGlvbiBzaXplAHJlYWRpbmcgAHByb2Nlc3NpbmcgZnVuY3Rpb246IABicmVha1RhcmdldE5hbWVzLnNpemUoKSA9PSAwAHJlYWRGdW5jdGlvbnMAYnJlYWtTdGFjay5lbXB0eSgpAGV4cHJlc3Npb25TdGFjay5lbXB0eSgpAGJyZWFrU3RhY2suc2l6ZSgpID09IDAAc3RhY2sgbm90IGVtcHR5IG9uIGZ1bmN0aW9uIGV4aXQAYmluYXJ5IG9mZnNldCBhdCBmdW5jdGlvbiBleGl0IG5vdCBhdCBleHBlY3RlZCBsb2NhdGlvbgAgZW5kIGZ1bmN0aW9uIGJvZGllcwB2YXIkAD09IHJlYWRGdW5jdGlvblNpZ25hdHVyZXMAaW52YWxpZCBmdW5jdGlvbiB0eXBlIGluZGV4IGZvciBmdW5jdGlvbgA9PSByZWFkSW1wb3J0cwBmaW1wb3J0JABpbnZhbGlkIGZ1bmN0aW9uIGluZGV4IAAgLyAAY3Vyci0+ZnVuY3Rpb25UeXBlLmlzKCkAcmVhZEltcG9ydHMAdGltcG9ydCQASW1wb3J0ZWQgdGFibGUgdHlwZSBpcyBub3QgQW55RnVuYwBtaW1wb3J0JABnaW1wb3J0JABiYWQgaW1wb3J0IGtpbmQAPT0gcmVhZFNpZ25hdHVyZXMAYmFkIHNpZ25hdHVyZSBmb3JtIABudW0gcGFyYW1zOiAAc2lnbmF0dXJlIG11c3QgaGF2ZSAxIHJlc3VsdAA9PSByZWFkTWVtb3J5AE11c3QgYmUgZXhhY3RseSAxIG1lbW9yeQBNZW1vcnkgY2Fubm90IGJlIGJvdGggaW1wb3J0ZWQgYW5kIGRlZmluZWQAPT0gcmVhZFN0YXJ0AGdldFUzMkxFQjogAFpONHdhc20xN1dhc21CaW5hcnlCdWlsZGVyOWdldFUzMkxFQkV2RTMkXzIATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk40d2FzbTE3V2FzbUJpbmFyeUJ1aWxkZXI5Z2V0VTMyTEVCRXZFMyRfMk5TXzlhbGxvY2F0b3JJUzRfRUVGaHZFRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRmh2RUVFAHNvdXJjZXMAY2Fubm90IGZpbmQgdGhlICdzb3VyY2VzJyBmaWVsZCBpbiBtYXAAbWFwcGluZ3MAY2Fubm90IGZpbmQgdGhlICdtYXBwaW5ncycgZmllbGQgaW4gbWFwAHVuZXhwZWN0ZWQgRU9GIGluIHRoZSBtaWRkbGUgb2Ygc3RyaW5nAFVuZXhwZWN0ZWQgY2hhcjogZXhwZWN0ZWQgJwAnIGdvdCAnACcAPT0gcmVhZEhlYWRlcgBzdXJwcmlzaW5nIHZhbHVlAHdyaXRlID49IGRhdGEuZGF0YSgpAC4vc3JjL3dhc20vd2FzbS1zLXBhcnNlci5jcHAAc3RyaW5nVG9CaW5hcnkAYWN0dWFsIDw9IGRhdGEuc2l6ZSgpAGludmFsaWQgaGV4YWRlY2ltYWwAZXhwZWN0ZWQgc3RyaW5nAGV4cGVjdGVkIGxpc3QAZXhwZWN0ZWQgbW9yZSBlbGVtZW50cyBpbiBsaXN0AGluZGV4IDwgdXNlZEVsZW1lbnRzAC4vc3JjL21peGVkX2FyZW5hLmgAc3RhY2suc2l6ZSgpID09IHN0YWNrTG9jcy5zaXplKCkAcGFyc2UAcy1leHByIHN0YWNrIGVtcHR5AHN0YWNrIGlzIG5vdCBlbXB0eQB1bnRlcm1pbmF0ZWQgc3RyaW5nAHVudGVybWluYXRlZCBzdHJpbmcgZXNjYXBlAE40d2FzbTE4UmVtb3ZlTm9uSlNPcHNQYXNzRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE4UmVtb3ZlTm9uSlNPcHNQYXNzRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE4UmVtb3ZlTm9uSlNPcHNQYXNzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMThSZW1vdmVOb25KU09wc1Bhc3NFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMThSZW1vdmVOb25KU09wc1Bhc3NFdkVFAGhvbGRlci0+bGlzdC5zaXplKCkgPT0gMQAuL3NyYy9wYXNzZXMvUmVsb29wZXJKdW1wVGhyZWFkaW5nLmNwcAB2aXNpdEJsb2NrAF9fcmp0byQAX19yanRpJABsYWJlbENoZWNrc1tudW1dID4gMABoYXNJcnJlZHVjaWJsZUNvbnRyb2xGbG93AGxhYmVsQ2hlY2tzSW5PcmlnaW5bbnVtXSA9PSAwAGxhYmVsU2V0c0luT3JpZ2luW251bV0gPCBsYWJlbFNldHNbbnVtXQBONHdhc20yMVJlbG9vcGVySnVtcFRocmVhZGluZ0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzIxUmVsb29wZXJKdW1wVGhyZWFkaW5nRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJTlNfMjFSZWxvb3Blckp1bXBUaHJlYWRpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzIxUmVsb29wZXJKdW1wVGhyZWFkaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMjFSZWxvb3Blckp1bXBUaHJlYWRpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMjFSZWxvb3Blckp1bXBUaHJlYWRpbmdFdkVFAE40d2FzbTEyUHJpbnRTdGFja0lSRQBkaWdyYXBoIGNhbGwgewogIHJhbmtkaXIgPSBMUjsKICBzdWJncmFwaCBjbHVzdGVyX2tleSB7CiAgICBub2RlIFtzaGFwZT1ib3gsIGZvbnRuYW1lPWNvdXJpZXIsIGZvbnRzaXplPTEwXTsKICAgIGVkZ2UgW2ZvbnRuYW1lPWNvdXJpZXIsIGZvbnRzaXplPTEwXTsKICAgIGxhYmVsID0gIktleSI7CiAgICAiSW1wb3J0IiBbc3R5bGU9ImZpbGxlZCIsIGZpbGxjb2xvcj0idHVycXVvaXNlIl07CiAgICAiRXhwb3J0IiBbc3R5bGU9ImZpbGxlZCIsIGZpbGxjb2xvcj0iZ3JheSJdOwogICAgIkluZGlyZWN0IFRhcmdldCIgW3N0eWxlPSJmaWxsZWQsIHJvdW5kZWQiLCBmaWxsY29sb3I9IndoaXRlIl07CiAgICAiQSIgLT4gIkIiIFtzdHlsZT0iZmlsbGVkLCByb3VuZGVkIiwgbGFiZWwgPSAiRGlyZWN0IENhbGwiXTsKICB9CgogIG5vZGUgW3NoYXBlPWJveCwgZm9udG5hbWU9Y291cmllciwgZm9udHNpemU9MTBdOwoAICAiACIgW3N0eWxlPSJmaWxsZWQiLCBmaWxsY29sb3I9IndoaXRlIl07CgAiIFtzdHlsZT0iZmlsbGVkIiwgZmlsbGNvbG9yPSJ0dXJxdW9pc2UiXTsKACIgW3N0eWxlPSJmaWxsZWQiLCBmaWxsY29sb3I9ImdyYXkiXTsKAH0KACIgW3N0eWxlPSJmaWxsZWQsIHJvdW5kZWQiXTsKACIgLT4gIgAiOyAvLyBjYWxsSW1wb3J0CgAiOyAvLyBjYWxsCgBONHdhc20xNFByaW50Q2FsbEdyYXBoRQBONHdhc20xMUZ1bGxQcmludGVyRQBONHdhc20xNU1pbmlmaWVkUHJpbnRlckUATjR3YXNtMjhQcmVjb21wdXRpbmdFeHByZXNzaW9uUnVubmVyMjJOb25zdGFuZGFsb25lRXhjZXB0aW9uRQBleHBlY3RlZCAALCBzZWVpbmcgACBmcm9tCgByZXQudmFsdWUudHlwZSA9PSBjdXJyLT50eXBlAC4vc3JjL3dhc20taW50ZXJwcmV0ZXIuaAB1bnJlYWNoYWJsZQBpc0NvbmNyZXRlVHlwZShjdXJyLT5sZWZ0LT50eXBlKSA/IGxlZnQudHlwZSA9PSBjdXJyLT5sZWZ0LT50eXBlIDogdHJ1ZQB2aXNpdEJpbmFyeQBpc0NvbmNyZXRlVHlwZShjdXJyLT5yaWdodC0+dHlwZSkgPyByaWdodC50eXBlID09IGN1cnItPnJpZ2h0LT50eXBlIDogdHJ1ZQBpMzIuZGl2X3MgYnkgMABpMzIuZGl2X3Mgb3ZlcmZsb3cAaTMyLmRpdl91IGJ5IDAAaTMyLnJlbV9zIGJ5IDAAaTMyLnJlbV91IGJ5IDAAaTY0LmRpdl9zIGJ5IDAAaTY0LmRpdl9zIG92ZXJmbG93AGk2NC5kaXZfdSBieSAwAGk2NC5yZW1fcyBieSAwAGk2NC5yZW1fdSBieSAwAHR5cGUgPT0gVHlwZTo6ZjY0AGNhc3RUb0k2NAB0eXBlID09IFR5cGU6OmYzMgBjYXN0VG9JMzIAc2V0UXVpZXROYU4AdHJ1bmNhdGVUb0YzMgBleHRlbmRUb0Y2NAB0cnVuY1VGbG9hdCBvZiBuYW4AaTMyLnRydW5jVUZsb2F0IG92ZXJmbG93AGk2NC50cnVuY1VGbG9hdCBvdmVyZmxvdwB0cnVuY1NGbG9hdCBvZiBuYW4AaTMyLnRydW5jU0Zsb2F0IG92ZXJmbG93AGk2NC50cnVuY1NGbG9hdCBvdmVyZmxvdwB0cnVuY2F0ZVRvSTMyAGV4dGVuZFRvVUk2NABleHRlbmRUb1NJNjQAY3Vyci0+aXNUZWUoKQAuL3NyYy9wYXNzZXMvUHJlY29tcHV0ZS5jcHAAdmlzaXRTZXRMb2NhbABONHdhc20yOFByZWNvbXB1dGluZ0V4cHJlc3Npb25SdW5uZXJFAE40d2FzbTE2RXhwcmVzc2lvblJ1bm5lcklOU18yOFByZWNvbXB1dGluZ0V4cHJlc3Npb25SdW5uZXJFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMjhQcmVjb21wdXRpbmdFeHByZXNzaW9uUnVubmVyRU5TXzRGbG93RUVFAE40d2FzbTEwUHJlY29tcHV0ZUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xMFByZWNvbXB1dGVFTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTBQcmVjb21wdXRlRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTBQcmVjb21wdXRlRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySU5TXzEwUHJlY29tcHV0ZUV2RUUATjR3YXNtN1Zpc2l0b3JJTlNfMTBQcmVjb21wdXRlRXZFRQBONHdhc20xNFBvc3RFbXNjcmlwdGVuRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE0UG9zdEVtc2NyaXB0ZW5FTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRQb3N0RW1zY3JpcHRlbkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE0UG9zdEVtc2NyaXB0ZW5FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTRQb3N0RW1zY3JpcHRlbkV2RUUATjR3YXNtMTNQaWNrTG9hZFNpZ25zRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJTlNfMTNQaWNrTG9hZFNpZ25zRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJTlNfMTNQaWNrTG9hZFNpZ25zRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xM1BpY2tMb2FkU2lnbnNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xM1BpY2tMb2FkU2lnbnNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTNQaWNrTG9hZFNpZ25zRXZFRQB2YWx1ZXMuc2l6ZSgpID4gMAAuL3NyYy9wYXNzZXMvU3RhY2tJUi5jcHAAbG9jYWwyU3RhY2sAIXNhdmVkVmFsdWVzLmVtcHR5KCkAKnNldEluZmx1ZW5jZXMuYmVnaW4oKSA9PSBnZXQAaSA8IGluc3RzLnNpemUoKQByZW1vdmVBdABmdW5jLT5zdGFja0lSAFN0YWNrSVJPcHRpbWl6ZXIATjR3YXNtMTVPcHRpbWl6ZVN0YWNrSVJFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTVPcHRpbWl6ZVN0YWNrSVJFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTVPcHRpbWl6ZVN0YWNrSVJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNU9wdGltaXplU3RhY2tJUkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNU9wdGltaXplU3RhY2tJUkV2RUUAYml0cyA8IDMyAC4vc3JjL3Bhc3Nlcy9PcHRpbWl6ZUluc3RydWN0aW9ucy5jcHAAaGFuZE9wdGltaXplAGlzQ29uY3JldGVUeXBlKGlmZi0+dHlwZSkgJiYgaWZmLT5pZlRydWUtPnR5cGUgPT0gdW5yZWFjaGFibGUAYmluYXJ5LT5vcCA9PSBBbmRJbnQzMiB8fCBiaW5hcnktPm9wID09IE9ySW50MzIAY29uZGl0aW9uYWxpemVFeHBlbnNpdmVPbkJpdHdpc2UAYXN0AC4vc3JjL2lyL2Nvc3QuaABDb3N0QW5hbHl6ZXIAYy0+dmFsdWUuZ2V0aTMyKCkgPT0gMABvcHRpbWl6ZUFkZGVkQ29uc3RhbnRzAFpONHdhc20yME9wdGltaXplSW5zdHJ1Y3Rpb25zMjJvcHRpbWl6ZUFkZGVkQ29uc3RhbnRzRVBOU182QmluYXJ5RUVVbFBOU18xMEV4cHJlc3Npb25FaUVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20yME9wdGltaXplSW5zdHJ1Y3Rpb25zMjJvcHRpbWl6ZUFkZGVkQ29uc3RhbnRzRVBOUzJfNkJpbmFyeUVFVWxQTlMyXzEwRXhwcmVzc2lvbkVpRV9OU185YWxsb2NhdG9ySVM4X0VFRnZTN19pRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZ2UE40d2FzbTEwRXhwcmVzc2lvbkVpRUVFAE40d2FzbTIwT3B0aW1pemVJbnN0cnVjdGlvbnNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMjBPcHRpbWl6ZUluc3RydWN0aW9uc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18yME9wdGltaXplSW5zdHJ1Y3Rpb25zRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMjBPcHRpbWl6ZUluc3RydWN0aW9uc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc20yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklOU18yME9wdGltaXplSW5zdHJ1Y3Rpb25zRXZFRQBONHdhc203VmlzaXRvcklOU18yME9wdGltaXplSW5zdHJ1Y3Rpb25zRXZFRQAgICAgAE40d2FzbThOYW1lTGlzdEUAW2Z1bmNzXQBbbWVtb3J5LWRhdGFdAFt0YWJsZS1kYXRhXQBbdmFyc10AW2JpbmFyeS1ieXRlc10AZnVuYzogAFtyZW1vdmFibGUtYnl0ZXMtd2l0aG91dC1pdF0AZXhwb3J0OiAAc3RhcnQ6IAB0b3RhbABbdG90YWxdAE40d2FzbTdNZXRyaWNzRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzdNZXRyaWNzRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzdNZXRyaWNzRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfN01ldHJpY3NFTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzFfdkVFRUUATjR3YXNtMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJTlNfN01ldHJpY3NFdkVFAE40d2FzbTdWaXNpdG9ySU5TXzdNZXRyaWNzRXZFRQBpbmZsdWVuY2VkR2V0LT5pbmRleCA9PSB0cml2aWFsLT5pbmRleAAuL3NyYy9wYXNzZXMvTWVyZ2VMb2NhbHMuY3BwAG9wdGltaXplQ29waWVzACpwcmVHcmFwaC5nZXRTZXRzZXNbaW5mbHVlbmNlZEdldF0uYmVnaW4oKSA9PSB0cml2aWFsAGluZmx1ZW5jZWRHZXQtPmluZGV4ID09IGNvcHktPmluZGV4ACpwcmVHcmFwaC5nZXRTZXRzZXNbaW5mbHVlbmNlZEdldF0uYmVnaW4oKSA9PSBjb3B5AE40d2FzbTExTWVyZ2VMb2NhbHNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTFNZXJnZUxvY2Fsc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xMU1lcmdlTG9jYWxzRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTFNZXJnZUxvY2Fsc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc20yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklOU18xMU1lcmdlTG9jYWxzRXZFRQBONHdhc203VmlzaXRvcklOU18xMU1lcmdlTG9jYWxzRXZFRQBvdXRlci0+bGlzdC5iYWNrKCkgPT0gY3VycgAuL3NyYy9wYXNzZXMvTWVyZ2VCbG9ja3MuY3BwAG9wdGltaXplAGJySWZzID49IGRyb3BwZWRCcklmcwBONHdhc20xMU1lcmdlQmxvY2tzRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzExTWVyZ2VCbG9ja3NFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTFNZXJnZUJsb2Nrc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzExTWVyZ2VCbG9ja3NFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTFNZXJnZUJsb2Nrc0V2RUUATjR3YXNtMTNNZW1vcnlQYWNraW5nRQBpaWlpaQBONHdhc20xNkluc3RydW1lbnRNZW1vcnlFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTZJbnN0cnVtZW50TWVtb3J5RU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE2SW5zdHJ1bWVudE1lbW9yeUVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE2SW5zdHJ1bWVudE1lbW9yeUVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNkluc3RydW1lbnRNZW1vcnlFdkVFAGlpaWkAamlpagBmaWlmAGRpaWQATjR3YXNtMTZJbnN0cnVtZW50TG9jYWxzRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE2SW5zdHJ1bWVudExvY2Fsc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNkluc3RydW1lbnRMb2NhbHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNkluc3RydW1lbnRMb2NhbHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTZJbnN0cnVtZW50TG9jYWxzRXZFRQBpNjR0b2kzMl9pMzIkAHN0ZDo6ZmluZChmcmVlTGlzdC5iZWdpbigpLCBmcmVlTGlzdC5lbmQoKSwgaWR4KSA9PSBmcmVlTGlzdC5lbmQoKQAuL3NyYy9wYXNzZXMvSTY0VG9JMzJMb3dlcmluZy5jcHAAZnJlZUlkeAAhbW92ZWQAb3BlcmF0b3IgdW5zaWduZWQgaW50AHRlbXBUeXBlc1tyZXRdID09IHR5AGdldFRlbXAAb3V0UGFyYW1JdCAhPSBoaWdoQml0VmFycy5lbmQoKQBmZXRjaE91dFBhcmFtACFvdGhlci5tb3ZlZABUZW1wVmFyAG9sZEZ1bmMtPmhhc0xvY2FsTmFtZShpKQBjdXJyLT5pZkZhbHNlICE9IG51bGxwdHIgJiYgIk51bGxhYmxlIGlmRmFsc2UgZm91bmQiAHZpc2l0QnJhbmNoaW5nAHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBieSBub3cgAFVuaGFuZGxlZCBiaW5hcnkgb3AgAG9wID09IFNobEludDY0IHx8IG9wID09IFNoclVJbnQ2NCB8fCBvcCA9PSBTaHJTSW50NjQAbG93ZXJTaGlmdAAhaGFzT3V0UGFyYW0oY3Vyci0+dmFsdWUpAHZpc2l0VW5hcnkAaGFzT3V0UGFyYW0oY3Vyci0+dmFsdWUpIHx8IGN1cnItPnR5cGUgPT0gaTY0IHx8IGN1cnItPnR5cGUgPT0gZjY0AGk2NC5wb3BjbnQgc2hvdWxkIGFscmVhZHkgYmUgcmVtb3ZlZABVbmhhbmRsZWQgdW5hcnkgb3BlcmF0b3I6IABpNjQuY3R6IHNob3VsZCBiZSByZW1vdmVkIGFscmVhZHkAZmFsc2UgJiYgIkF0b21pY0NtcHhjaGcgbm90IGltcGxlbWVudGVkIgB2aXNpdEF0b21pY0NtcHhjaGcAZmFsc2UgJiYgIkF0b21pY1JNVyBub3QgaW1wbGVtZW50ZWQiAHZpc2l0QXRvbWljUk1XAGN1cnItPm9mZnNldCArIDQgPiBjdXJyLT5vZmZzZXQAdmlzaXRTdG9yZQAhY3Vyci0+aXNBdG9taWMgJiYgImF0b21pYyBzdG9yZSBub3QgaW1wbGVtZW50ZWQiACFjdXJyLT5pc0F0b21pYyAmJiAiYXRvbWljIGxvYWQgbm90IGltcGxlbWVudGVkIgB2aXNpdExvYWQAZmFsc2UgJiYgIlNldEdsb2JhbCBub3QgaW1wbGVtZW50ZWQiAHZpc2l0U2V0R2xvYmFsAGZhbHNlICYmICJHZXRHbG9iYWwgbm90IGltcGxlbWVudGVkIgB2aXNpdEdldEdsb2JhbABaTjR3YXNtMTZJNjRUb0kzMkxvd2VyaW5nMTd2aXNpdENhbGxJbmRpcmVjdEVQTlNfMTJDYWxsSW5kaXJlY3RFRVVsUk5TdDNfXzI2dmVjdG9ySVBOU18xMEV4cHJlc3Npb25FTlMzXzlhbGxvY2F0b3JJUzZfRUVFRU5TXzRUeXBlRUVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xNkk2NFRvSTMyTG93ZXJpbmcxN3Zpc2l0Q2FsbEluZGlyZWN0RVBOUzJfMTJDYWxsSW5kaXJlY3RFRVVsUk5TXzZ2ZWN0b3JJUE5TMl8xMEV4cHJlc3Npb25FTlNfOWFsbG9jYXRvcklTOF9FRUVFTlMyXzRUeXBlRUVfTlM5X0lTRV9FRUZTNV9TQ19TRF9FRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRlBONHdhc20xMkNhbGxJbmRpcmVjdEVSTlNfNnZlY3RvcklQTlMyXzEwRXhwcmVzc2lvbkVOU185YWxsb2NhdG9ySVM3X0VFRUVOUzJfNFR5cGVFRUVFAFpONHdhc20xNkk2NFRvSTMyTG93ZXJpbmc5dmlzaXRDYWxsRVBOU180Q2FsbEVFVWxSTlN0M19fMjZ2ZWN0b3JJUE5TXzEwRXhwcmVzc2lvbkVOUzNfOWFsbG9jYXRvcklTNl9FRUVFTlNfNFR5cGVFRV8ATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk40d2FzbTE2STY0VG9JMzJMb3dlcmluZzl2aXNpdENhbGxFUE5TMl80Q2FsbEVFVWxSTlNfNnZlY3RvcklQTlMyXzEwRXhwcmVzc2lvbkVOU185YWxsb2NhdG9ySVM4X0VFRUVOUzJfNFR5cGVFRV9OUzlfSVNFX0VFRlM1X1NDX1NEX0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGUE40d2FzbTRDYWxsRVJOU182dmVjdG9ySVBOUzJfMTBFeHByZXNzaW9uRU5TXzlhbGxvY2F0b3JJUzdfRUVFRU5TMl80VHlwZUVFRUUAJGk2NHRvaTMyXwBfAGN1cnItPnZhbHVlICE9IG51bGxwdHIAdmlzaXRCcmVhawBsYWJlbEhpZ2hCaXRWYXJzLmZpbmQoY3Vyci0+bmFtZSkgPT0gbGFiZWxIaWdoQml0VmFycy5lbmQoKQB2aXNpdExvb3AAIW1vdmVkICYmICFyaHMubW92ZWQAJGhpAE40d2FzbTE2STY0VG9JMzJMb3dlcmluZ0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNkk2NFRvSTMyTG93ZXJpbmdFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTZJNjRUb0kzMkxvd2VyaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTZJNjRUb0kzMkxvd2VyaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE2STY0VG9JMzJMb3dlcmluZ0V2RUUAdmkATjR3YXNtMTJMb2dFeGVjdXRpb25FAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTJMb2dFeGVjdXRpb25FTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTJMb2dFeGVjdXRpb25FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xMkxvZ0V4ZWN1dGlvbkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xMkxvZ0V4ZWN1dGlvbkV2RUUATjR3YXNtOExvY2FsQ1NFRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfOExvY2FsQ1NFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfOExvY2FsQ1NFRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU184TG9jYWxDU0VFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU184TG9jYWxDU0VFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfOExvY2FsQ1NFRXZFRQBaTjR3YXNtMTlMZWdhbGl6ZUpTSW50ZXJmYWNlM3J1bkVQTlNfMTBQYXNzUnVubmVyRVBOU182TW9kdWxlRUUxMEZpeEltcG9ydHMATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklaTlNfMTlMZWdhbGl6ZUpTSW50ZXJmYWNlM3J1bkVQTlNfMTBQYXNzUnVubmVyRVBOU182TW9kdWxlRUUxMEZpeEltcG9ydHNOU183VmlzaXRvcklTN192RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklaTlNfMTlMZWdhbGl6ZUpTSW50ZXJmYWNlM3J1bkVQTlNfMTBQYXNzUnVubmVyRVBOU182TW9kdWxlRUUxMEZpeEltcG9ydHNOU183VmlzaXRvcklTNl92RUVFRQBONHdhc202V2Fsa2VySVpOU18xOUxlZ2FsaXplSlNJbnRlcmZhY2UzcnVuRVBOU18xMFBhc3NSdW5uZXJFUE5TXzZNb2R1bGVFRTEwRml4SW1wb3J0c05TXzdWaXNpdG9ySVM2X3ZFRUVFAE40d2FzbTdWaXNpdG9ySVpOU18xOUxlZ2FsaXplSlNJbnRlcmZhY2UzcnVuRVBOU18xMFBhc3NSdW5uZXJFUE5TXzZNb2R1bGVFRTEwRml4SW1wb3J0c3ZFRQBsZWdhbHR5cGUkAGxlZ2FsaW1wb3J0JABsZWdhbGZ1bmMkAGxlZ2Fsc3R1YiQATjR3YXNtMTlMZWdhbGl6ZUpTSW50ZXJmYWNlRQBpbmxpbmVkVXNlc1tpbmxpbmVkTmFtZV0gPD0gaW5mb3NbaW5saW5lZE5hbWVdLmNhbGxzAC4vc3JjL3Bhc3Nlcy9JbmxpbmluZy5jcHAAaXRlcmF0aW9uAHByZWNvbXB1dGUtcHJvcGFnYXRlAF9faW5saW5lZF9mdW5jJABzdGF0ZS0+YWN0aW9uc0ZvckZ1bmN0aW9uLmNvdW50KGdldEZ1bmN0aW9uKCktPm5hbWUpID4gMAB2aXNpdENhbGwATjR3YXNtN1BsYW5uZXJFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfN1BsYW5uZXJFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfN1BsYW5uZXJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU183UGxhbm5lckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU183UGxhbm5lckV2RUUAaW5mb3MtPmNvdW50KGN1cnItPnRhcmdldCkgPiAwAE40d2FzbTE5RnVuY3Rpb25JbmZvU2Nhbm5lckUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xOUZ1bmN0aW9uSW5mb1NjYW5uZXJFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTlGdW5jdGlvbkluZm9TY2FubmVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTlGdW5jdGlvbkluZm9TY2FubmVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE5RnVuY3Rpb25JbmZvU2Nhbm5lckV2RUUATjR3YXNtOElubGluaW5nRQBjdXJyAHZpc2l0AHp6IG5vZGU6IFVucmVhY2hhYmxlAHp6IG5vZGU6IE5vcAB6eiBub2RlOiBIb3N0AHp6IG5vZGU6IFJldHVybgB6eiBub2RlOiBEcm9wAHp6IG5vZGU6IFNlbGVjdAB6eiBub2RlOiBCaW5hcnkAenogbm9kZTogVW5hcnkAenogbm9kZTogQ29uc3QAIDogAHp6IG5vZGU6IEF0b21pY1dha2UAenogbm9kZTogQXRvbWljV2FpdAB6eiBub2RlOiBBdG9taWNDbXB4Y2hnAHp6IG5vZGU6IEF0b21pY1JNVwB6eiBub2RlOiBTdG9yZQB6eiBub2RlOiBMb2FkAHp6IG5vZGU6IFNldEdsb2JhbAB6eiBub2RlOiBHZXRHbG9iYWwgAHp6IG5vZGU6IFNldHxUZWVMb2NhbAB6eiBub2RlOiBHZXRMb2NhbCAAenogbm9kZTogQ2FsbEluZGlyZWN0AHp6IG5vZGU6IENhbGxJbXBvcnQAenogbm9kZTogQ2FsbAB6eiBub2RlOiBTd2l0Y2gAenogbm9kZTogQnJlYWsAenogbm9kZTogTG9vcAAhYnJlYWtTdGFjay5lbXB0eSgpAC4vc3JjL3dhc20tc3RhY2suaAB2aXNpdExvb3BFbmQAenogbm9kZTogSWYAdmlzaXRJZkVuZABjdXJyLT5pZkZhbHNlAHZpc2l0SWZFbHNlAAogenogQmxvY2sgZWxlbWVudCAAdmlzaXRCbG9ja0VuZABONHdhc20xNUdlbmVyYXRlU3RhY2tJUkUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNUdlbmVyYXRlU3RhY2tJUkVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNUdlbmVyYXRlU3RhY2tJUkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE1R2VuZXJhdGVTdGFja0lSRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE1R2VuZXJhdGVTdGFja0lSRXZFRQBqAGJ5biRmcGNhc3QtZW11JABGdW5jQ2FzdEVtdWxhdGlvbjo6bWFrZVRodW5rIHNlZW1zIGEgdGh1bmsgbmFtZSBhbHJlYWR5IGluIHVzZS4gV2FzIHRoZSBwYXNzIGFscmVhZHkgcnVuIG9uIHRoaXMgY29kZT8ARnVuY0Nhc3RFbXVsYXRpb246Ok5VTV9QQVJBTVMgbmVlZHMgdG8gYmUgYXQgbGVhc3QgAE40d2FzbTI1UGFyYWxsZWxGdW5jQ2FzdEVtdWxhdGlvbkUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18yNVBhcmFsbGVsRnVuY0Nhc3RFbXVsYXRpb25FTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMjVQYXJhbGxlbEZ1bmNDYXN0RW11bGF0aW9uRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMjVQYXJhbGxlbEZ1bmNDYXN0RW11bGF0aW9uRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzI1UGFyYWxsZWxGdW5jQ2FzdEVtdWxhdGlvbkV2RUUAX193YXNtX251bGxwdHIAZnB0cgBkeW5DYWxsXwAhbXVzdF9leHBvcnQALi9zcmMvd2FzbS93YXNtLWVtc2NyaXB0ZW4uY3BwAGV4cG9ydEZ1bmN0aW9uAE40d2FzbTE3RnVuY0Nhc3RFbXVsYXRpb25FAHByZWx1ZGVzLmZpbmQoY3VycikgPT0gcHJlbHVkZXMuZW5kKCkALi9zcmMvcGFzc2VzL0ZsYXR0ZW4uY3BwAHZpc2l0RXhwcmVzc2lvbgBici0+dHlwZSA9PSB1bnJlYWNoYWJsZQB0eXBlID09IHVucmVhY2hhYmxlAGV4cHJlc3Npb25TdGFjay5zaXplKCkgPj0gMgBnZXRQYXJlbnQATjR3YXNtN0ZsYXR0ZW5FAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18yMUV4cHJlc3Npb25TdGFja1dhbGtlcklOU183RmxhdHRlbkVOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzdGbGF0dGVuRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU183RmxhdHRlbkVOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzdGbGF0dGVuRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySU5TXzdGbGF0dGVuRXZFRQBONHdhc203VmlzaXRvcklOU183RmxhdHRlbkV2RUUAQklOQVJZRU5fRVhUUkFDVAB1c2FnZTogc2V0IEJJTkFSWUVOX0VYVFJBQ1QgaW4gdGhlIGVudgoAZXh0cmFjdGluZyAACgBjb3VsZCBub3QgZmluZCB0aGUgZnVuY3Rpb24gdG8gZXh0cmFjdAoATjR3YXNtMTVFeHRyYWN0RnVuY3Rpb25FAE40d2FzbTE2RnVuY3Rpb25SZXBsYWNlckUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNkZ1bmN0aW9uUmVwbGFjZXJFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTZGdW5jdGlvblJlcGxhY2VyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTZGdW5jdGlvblJlcGxhY2VyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE2RnVuY3Rpb25SZXBsYWNlckV2RUUAbWFwOjphdDogIGtleSBub3QgZm91bmQATjR3YXNtMTRGdW5jdGlvbkhhc2hlckUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNEZ1bmN0aW9uSGFzaGVyRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE0RnVuY3Rpb25IYXNoZXJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNEZ1bmN0aW9uSGFzaGVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0RnVuY3Rpb25IYXNoZXJFdkVFAE40d2FzbTI4RHVwbGljYXRlRnVuY3Rpb25FbGltaW5hdGlvbkUAbm9kZS0+aXNFeHByKCkALi9zcmMvcGFzc2VzL0RhdGFGbG93T3B0cy5jcHAAIW5vZGUtPmlzQ29uc3QoKQB3b3JrT24Ab3B0aW1pemVFeHByVG9Db25zdGFudAB0ZW1wAHByZWNvbXB1dGUAbm9kZS0+aXNDb25zdCgpAFtQYXNzUnVubmVyXSBydW5uaW5nIHBhc3NlcyBvbiBmdW5jdGlvbiAAaW5kZXggPT0gMABnZXRJbmRleFBvaW50ZXIAd2l0aC0+aXNDb25zdCgpAHJlcGxhY2VBbGxVc2VzV2l0aAAhaW5kZXhlcy5lbXB0eSgpAGZvdW5kAC4vc3JjL2RhdGFmbG93L3VzZXJzLmgAZ2V0TnVtVXNlcwBONHdhc20xMkRhdGFGbG93T3B0c0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xMkRhdGFGbG93T3B0c0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xMkRhdGFGbG93T3B0c0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzEyRGF0YUZsb3dPcHRzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzEyRGF0YUZsb3dPcHRzRXZFRQByZWFjaGFibGVCcmVha3Muc2l6ZSgpID09IDAALi9zcmMvcGFzc2VzL0RlYWRDb2RlRWxpbWluYXRpb24uY3BwAHZpc2l0RnVuY3Rpb24AKCpjdXJycCktPmNhc3Q8SWY+KCktPmlmRmFsc2UAZG9BZnRlcklmRWxzZVRydWUATjR3YXNtMTlEZWFkQ29kZUVsaW1pbmF0aW9uRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE5RGVhZENvZGVFbGltaW5hdGlvbkVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xOURlYWRDb2RlRWxpbWluYXRpb25FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xOURlYWRDb2RlRWxpbWluYXRpb25FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTlEZWFkQ29kZUVsaW1pbmF0aW9uRXZFRQBONHdhc20xM0NvbnN0SG9pc3RpbmdFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTNDb25zdEhvaXN0aW5nRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzEzQ29uc3RIb2lzdGluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzEzQ29uc3RIb2lzdGluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xM0NvbnN0SG9pc3RpbmdFdkVFAGl0ZW1zLnNpemUoKSA+IDAALi9zcmMvcGFzc2VzL0NvZGVGb2xkaW5nLmNwcABvcHRpbWl6ZVRlcm1pbmF0aW5nVGFpbHMAZm9sZGluZy1pbm5lcgBibG9jay0+bGlzdC5iYWNrKCkgPT0gZXhwcgB2YWxpZGF0ZQB0YWlsLmJsb2NrAG9wdGltaXplRXhwcmVzc2lvblRhaWxzAGN1cnIgPT0gY29udHJvbEZsb3dTdGFjay5iYWNrKCkATjR3YXNtMTFDb2RlRm9sZGluZ0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzE3Q29udHJvbEZsb3dXYWxrZXJJTlNfMTFDb2RlRm9sZGluZ0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTE3Q29udHJvbEZsb3dXYWxrZXJJTlNfMTFDb2RlRm9sZGluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTFDb2RlRm9sZGluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzExQ29kZUZvbGRpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTFDb2RlRm9sZGluZ0V2RUUAZmlyc3RQdXNoYWJsZSAhPSBJbmRleCgtMSkgJiYgcHVzaFBvaW50ICE9IEluZGV4KC0xKSAmJiBmaXJzdFB1c2hhYmxlIDwgcHVzaFBvaW50AC4vc3JjL3Bhc3Nlcy9Db2RlUHVzaGluZy5jcHAAb3B0aW1pemVTZWdtZW50AGkgPiAwAHNraXAgPT0gdG90YWwATjR3YXNtMTFDb2RlUHVzaGluZ0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xMUNvZGVQdXNoaW5nRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzExQ29kZVB1c2hpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xMUNvZGVQdXNoaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzExQ29kZVB1c2hpbmdFdkVFAG9yZGVyW2ldID09IGkALi9zcmMvcGFzc2VzL0NvYWxlc2NlTG9jYWxzLmNwcABwaWNrSW5kaWNlc0Zyb21PcmRlcgBtYXhJbmRleCA8PSBwYXJlbnQtPm51bUxvY2FscwBjYWxjdWxhdGVGaXRuZXNzAHNpemUgPj0gMQBtYWtlTWl4dHVyZQBudW0gPiAwAC4vc3JjL3N1cHBvcnQvcGVybXV0YXRpb25zLmgAc2V0SWRlbnRpdHkAaW5kaWNlcy5zaXplKCkgPT0gbnVtTG9jYWxzAGFwcGx5SW5kaWNlcwBsb3cgPCBoaWdoAGludGVyZmVyZUxvd0hpZ2gAY3Vyci0+Y29udGVudHMuZW5kLnNpemUoKSA8IGxpdmUuc2l6ZSgpAGZsb3dMaXZlbmVzcwBjdXJyLT5jb250ZW50cy5zdGFydC5zaXplKCkgPCBsaXZlLnNpemUoKQBicmFuY2hlcy5zaXplKCkgPT0gMAAuL3NyYy9jZmcvY2ZnLXRyYXZlcnNhbC5oAGRvV2Fsa0Z1bmN0aW9uAGlmU3RhY2suc2l6ZSgpID09IDAAbG9vcFN0YWNrLnNpemUoKSA9PSAwAHN0YWNrLnNpemUoKSA9PSAwAC4vc3JjL3dhc20tdHJhdmVyc2FsLmgAd2FsawAqdGFzay5jdXJycAAqY3VycnAAcHVzaFRhc2sAIWNvbnRyb2xGbG93U3RhY2suZW1wdHkoKQBmaW5kQnJlYWtUYXJnZXQAY3Vyci0+dGVtcGxhdGUgaXM8SWY+KCkATjR3YXNtMTRDb2FsZXNjZUxvY2Fsc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzE0TGl2ZW5lc3NXYWxrZXJJTlNfMTRDb2FsZXNjZUxvY2Fsc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTE0TGl2ZW5lc3NXYWxrZXJJTlNfMTRDb2FsZXNjZUxvY2Fsc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc205Q0ZHV2Fsa2VySU5TXzE0Q29hbGVzY2VMb2NhbHNFTlNfN1Zpc2l0b3JJUzFfdkVFTlNfOExpdmVuZXNzRUVFAE40d2FzbTE3Q29udHJvbEZsb3dXYWxrZXJJTlNfMTRDb2FsZXNjZUxvY2Fsc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRDb2FsZXNjZUxvY2Fsc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE0Q29hbGVzY2VMb2NhbHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTRDb2FsZXNjZUxvY2Fsc0V2RUUATjR3YXNtMjZDb2FsZXNjZUxvY2Fsc1dpdGhMZWFybmluZ0UAcGFzc0luZm9zLmZpbmQobmFtZSkgPT0gcGFzc0luZm9zLmVuZCgpAHJlZ2lzdGVyUGFzcwBQRlBONHdhc200UGFzc0V2RQBGUE40d2FzbTRQYXNzRXZFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVBGUE40d2FzbTRQYXNzRXZFTlNfOWFsbG9jYXRvcklTNl9FRVM1X0VFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZQTjR3YXNtNFBhc3NFdkVFRQAhIH4gKyAtACogLyAlACsgLQA8PCA+PiA+Pj4APCA8PSA+ID49AD09ICE9AD8gOgB2YXIgY29uc3QgZnVuY3Rpb24gaWYgZWxzZSBkbyB3aGlsZSBmb3IgYnJlYWsgY29udGludWUgcmV0dXJuIHN3aXRjaCBjYXNlIGRlZmF1bHQgdGhyb3cgdHJ5IGNhdGNoIGZpbmFsbHkgdHJ1ZSBmYWxzZSBudWxsIG5ldwBvYmplY3QAYXJyYXkAbmV3AGRvdABkZWZhdWx0AGNhc2UAOgA/AH0AewBmdW5jdGlvbgBmMABIRUFQRjY0AEhFQVBVMzIASEVBUFUxNgBIRUFQVTgASEVBUEYzMgBIRUFQMzIASEVBUDE2AEhFQVA4AHRlbXBEb3VibGVQdHIAPj4+AFNJTURfSW50MzJ4NABTSU1EX0ludDE2eDgAU0lNRF9JbnQ4eDE2AFNJTURfRmxvYXQ2NHgyAFNJTURfRmxvYXQzMng0AGk2NF9jb25zdABpNjQATWF0aF9mcm91bmQAdW5hcnktcG9zdGZpeAB1bmFyeS1wcmVmaXgAX19fdWRpdm1vZGRpNABfbGx2bV9jdHR6X2kzMgBnZXRUZW1wUmV0MAB0ZW1wUmV0MAB0cnkAc3RyaW5nAHN3aXRjaABjb250aW51ZQBicmVhawBsYWJlbABjYWxsAHN1YgBzZXEAZm9yAGRvAHdoaWxlAGVsc2UAaWYAcmV0dXJuAGJpbmFyeQBjb25kaXRpb25hbABjb25zdAB2YXIAYmxvY2sAZGVmdW4AdG9wbGV2ZWwAU0lNRF9GbG9hdDY0eDJfY2hlY2sAU0lNRF9GbG9hdDMyeDRfY2hlY2sAU0lNRF9JbnQzMng0X2NoZWNrAFNJTURfSW50MTZ4OF9jaGVjawBTSU1EX0ludDh4MTZfY2hlY2sAX193YXNtX2k2NF91cmVtAF9fd2FzbV9pNjRfc3JlbQBfX3dhc21faTY0X3VkaXYAX193YXNtX2k2NF9zZGl2AF9fd2FzbV9pNjRfbXVsAF9fd2FzbV90cnVuY19mNjQAX193YXNtX3RydW5jX2YzMgBfX3dhc21fbmVhcmVzdF9mNjQAX193YXNtX25lYXJlc3RfZjMyAGk2NHRvaTMyX2kzMiRISUdIX0JJVFMAX193YXNtX2ZldGNoX2hpZ2hfYml0cwBfX3dhc21fY3VycmVudF9tZW1vcnkAX193YXNtX2dyb3dfbWVtb3J5AF9fd2FzbV9yb3RyX2k2NABfX3dhc21fcm90cl9pMzIAX193YXNtX3JvdGxfaTY0AF9fd2FzbV9yb3RsX2kzMgBfX3dhc21fcG9wY250X2k2NABfX3dhc21fcG9wY250X2kzMgBfX3dhc21fY2x6X2k2NABfX3dhc21fY2x6X2kzMgBfX3dhc21fY3R6X2k2NABfX3dhc21fY3R6X2kzMgBNYXRoX21heABNYXRoX21pbgBNYXRoX3NxcnQATWF0aF90cnVuYwBNYXRoX2Zsb29yAE1hdGhfY2x6MzIATWF0aF9jZWlsAE1hdGhfYWJzAE1hdGhfaW11bABpbnN0cnVtZW50AGVudgBidWZmZXIAYWxtb3N0IGFzbQB1c2UgYXNtAGRlYnVnZ2VyAGFzbTJ3YXNtX2kzMl90ZW1wAHBvdwBzcXJ0AGNlaWwAZmxvb3IAYWJzAGdsb2JhbC5NYXRoAGkzMnUtcmVtAGkzMnMtcmVtAGkzMnUtZGl2AGkzMnMtZGl2AGYzMi10by11aW50NjQAZjMyLXRvLWludDY0AGYzMi10by11aW50AGYzMi10by1pbnQAZjY0LXRvLXVpbnQ2NABmNjQtdG8taW50NjQAZjY0LXRvLXVpbnQAZjY0LXRvLWludABmNjQtcmVtAG1heABtaW4AYXNtMndhc20AZnJvdW5kAGNsejMyAGltdWwATWF0aABpbXBvc3NpYmxlLWNvbnRpbnVlAGFzbU1vZHVsZQBBcnJheUJ1ZmZlcgBGbG9hdDY0QXJyYXkARmxvYXQzMkFycmF5AFVpbnQzMkFycmF5AFVpbnQxNkFycmF5AFVpbnQ4QXJyYXkASW50MzJBcnJheQBJbnQxNkFycmF5AEludDhBcnJheQB0b3Btb3N0AEluZmluaXR5AE5hTgBnbG9iYWwAKy0qLyU8PiZefH49ISw/Oi4AKFs7e30Abm9kZSA9PSBBU01fRkxPQVRfWkVSTwAuL3NyYy9lbXNjcmlwdGVuLW9wdGltaXplci9vcHRpbWl6ZXItc2hhcmVkLmNwcABkZXRlY3RUeXBlAG5vZGVbMV0tPmlzU3RyaW5nKCkAIihudWxsKSIAW10AbnVsbAAiOiAAWwBbIgAiAGlzQXNzaWduTmFtZSgpAC4vc3JjL2Vtc2NyaXB0ZW4tb3B0aW1pemVyL3NpbXBsZV9hc3QuY3BwAGFzQXNzaWduTmFtZQBpc0Fzc2lnbigpAGFzQXNzaWduAGJsb2NrLT5saXN0LmJhY2soKSA9PSBhYm92ZQAuL3NyYy9pci9FeHByZXNzaW9uQW5hbHl6ZXIuY3BwAGlzUmVzdWx0VXNlZABhYm92ZSA9PSBpZmYtPmlmVHJ1ZSB8fCBhYm92ZSA9PSBpZmYtPmlmRmFsc2UAaXNSZXN1bHREcm9wcGVkACApAE1vZHVsZTo6Z2V0RXhwb3J0OiAAcndhAGluZmluaXR5AAABAgQHAwYFAC0rICAgMFgweAAobnVsbCkALTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgBMQ19BTEwATEFORwBDLlVURi04AFBPU0lYAE1VU0xfTE9DUEFUSABjbG9ja19nZXR0aW1lKENMT0NLX01PTk9UT05JQykgZmFpbGVkAGNvbmRpdGlvbl92YXJpYWJsZTo6d2FpdDogbXV0ZXggbm90IGxvY2tlZABjb25kaXRpb25fdmFyaWFibGUgd2FpdCBmYWlsZWQAc3RkOjpiYWRfZnVuY3Rpb25fY2FsbABOU3QzX18yMTdiYWRfZnVuY3Rpb25fY2FsbEUAX19uZXh0X3ByaW1lIG92ZXJmbG93AE5TdDNfXzI4aW9zX2Jhc2VFAE5TdDNfXzI5YmFzaWNfaW9zSWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFAE5TdDNfXzI5YmFzaWNfaW9zSXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFAE5TdDNfXzIxNWJhc2ljX3N0cmVhbWJ1ZkljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQBOU3QzX18yMTViYXNpY19zdHJlYW1idWZJd05TXzExY2hhcl90cmFpdHNJd0VFRUUATlN0M19fMjEzYmFzaWNfaXN0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQBOU3QzX18yMTNiYXNpY19pc3RyZWFtSXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFAE5TdDNfXzIxM2Jhc2ljX29zdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjEzYmFzaWNfb3N0cmVhbUl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRQBOU3QzX18yMTRiYXNpY19pb3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQB1bnNwZWNpZmllZCBpb3N0cmVhbV9jYXRlZ29yeSBlcnJvcgBpb3N0cmVhbQBOU3QzX18yMTlfX2lvc3RyZWFtX2NhdGVnb3J5RQBOU3QzX18yOGlvc19iYXNlN2ZhaWx1cmVFAGlvc19iYXNlOjpjbGVhcgBOU3QzX18yMTFfX3N0ZG91dGJ1Zkl3RUUATlN0M19fMjExX19zdGRvdXRidWZJY0VFAHVuc3VwcG9ydGVkIGxvY2FsZSBmb3Igc3RhbmRhcmQgaW5wdXQATlN0M19fMjEwX19zdGRpbmJ1Zkl3RUUATlN0M19fMjEwX19zdGRpbmJ1ZkljRUUATlN0M19fMjdjb2xsYXRlSWNFRQBOU3QzX18yNmxvY2FsZTVmYWNldEUATlN0M19fMjdjb2xsYXRlSXdFRQAlcABDAE5TdDNfXzI3bnVtX2dldEljTlNfMTlpc3RyZWFtYnVmX2l0ZXJhdG9ySWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFRUUATlN0M19fMjlfX251bV9nZXRJY0VFAE5TdDNfXzIxNF9fbnVtX2dldF9iYXNlRQBOU3QzX18yN251bV9nZXRJd05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzI5X19udW1fZ2V0SXdFRQAlcAAAAABMACUAAAAAAE5TdDNfXzI3bnVtX3B1dEljTlNfMTlvc3RyZWFtYnVmX2l0ZXJhdG9ySWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFRUUATlN0M19fMjlfX251bV9wdXRJY0VFAE5TdDNfXzIxNF9fbnVtX3B1dF9iYXNlRQBOU3QzX18yN251bV9wdXRJd05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzI5X19udW1fcHV0SXdFRQAlSDolTTolUwAlbS8lZC8leQAlSTolTTolUyAlcAAlYSAlYiAlZCAlSDolTTolUyAlWQBBTQBQTQBKYW51YXJ5AEZlYnJ1YXJ5AE1hcmNoAEFwcmlsAE1heQBKdW5lAEp1bHkAQXVndXN0AFNlcHRlbWJlcgBPY3RvYmVyAE5vdmVtYmVyAERlY2VtYmVyAEphbgBGZWIATWFyAEFwcgBKdW4ASnVsAEF1ZwBTZXAAT2N0AE5vdgBEZWMAU3VuZGF5AE1vbmRheQBUdWVzZGF5AFdlZG5lc2RheQBUaHVyc2RheQBGcmlkYXkAU2F0dXJkYXkAU3VuAE1vbgBUdWUAV2VkAFRodQBGcmkAU2F0ACVtLyVkLyV5JVktJW0tJWQlSTolTTolUyAlcCVIOiVNJUg6JU06JVMlSDolTTolU05TdDNfXzI4dGltZV9nZXRJY05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzIyMF9fdGltZV9nZXRfY19zdG9yYWdlSWNFRQBOU3QzX18yOXRpbWVfYmFzZUUATlN0M19fMjh0aW1lX2dldEl3TlNfMTlpc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjIwX190aW1lX2dldF9jX3N0b3JhZ2VJd0VFAE5TdDNfXzI4dGltZV9wdXRJY05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzIxMF9fdGltZV9wdXRFAGxvY2FsZSBub3Qgc3VwcG9ydGVkAE5TdDNfXzI4dGltZV9wdXRJd05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzIxMG1vbmV5cHVuY3RJY0xiMEVFRQBOU3QzX18yMTBtb25leV9iYXNlRQBOU3QzX18yMTBtb25leXB1bmN0SWNMYjFFRUUATlN0M19fMjEwbW9uZXlwdW5jdEl3TGIwRUVFAE5TdDNfXzIxMG1vbmV5cHVuY3RJd0xiMUVFRQAwMTIzNDU2Nzg5ACVMZgBtb25leV9nZXQgZXJyb3IATlN0M19fMjltb25leV9nZXRJY05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzIxMV9fbW9uZXlfZ2V0SWNFRQAwMTIzNDU2Nzg5AE5TdDNfXzI5bW9uZXlfZ2V0SXdOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yMTFfX21vbmV5X2dldEl3RUUAJS4wTGYATlN0M19fMjltb25leV9wdXRJY05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzIxMV9fbW9uZXlfcHV0SWNFRQBOU3QzX18yOW1vbmV5X3B1dEl3TlNfMTlvc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjExX19tb25leV9wdXRJd0VFAE5TdDNfXzI4bWVzc2FnZXNJY0VFAE5TdDNfXzIxM21lc3NhZ2VzX2Jhc2VFAE5TdDNfXzIxN19fd2lkZW5fZnJvbV91dGY4SUxtMzJFRUUATlN0M19fMjdjb2RlY3Z0SURpYzExX19tYnN0YXRlX3RFRQBOU3QzX18yMTJjb2RlY3Z0X2Jhc2VFAE5TdDNfXzIxNl9fbmFycm93X3RvX3V0ZjhJTG0zMkVFRQBOU3QzX18yOG1lc3NhZ2VzSXdFRQBOU3QzX18yN2NvZGVjdnRJY2MxMV9fbWJzdGF0ZV90RUUATlN0M19fMjdjb2RlY3Z0SXdjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzI3Y29kZWN2dElEc2MxMV9fbWJzdGF0ZV90RUUATlN0M19fMjZsb2NhbGU1X19pbXBFAE5TdDNfXzI1Y3R5cGVJY0VFAE5TdDNfXzIxMGN0eXBlX2Jhc2VFAE5TdDNfXzI1Y3R5cGVJd0VFAE5TdDNfXzI4bnVtcHVuY3RJY0VFAE5TdDNfXzI4bnVtcHVuY3RJd0VFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQBtdXRleCBsb2NrIGZhaWxlZABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAHN0b2kAOiBubyBjb252ZXJzaW9uADogb3V0IG9mIHJhbmdlAHN0b2xsACVkACV1ACVsdQB1bnNwZWNpZmllZCBnZW5lcmljX2NhdGVnb3J5IGVycm9yAFVua25vd24gZXJyb3IgJWQAZ2VuZXJpYwBOU3QzX18yMjRfX2dlbmVyaWNfZXJyb3JfY2F0ZWdvcnlFAE5TdDNfXzIxMl9fZG9fbWVzc2FnZUUATlN0M19fMjE0ZXJyb3JfY2F0ZWdvcnlFAHVuc3BlY2lmaWVkIHN5c3RlbV9jYXRlZ29yeSBlcnJvcgBzeXN0ZW0ATlN0M19fMjIzX19zeXN0ZW1fZXJyb3JfY2F0ZWdvcnlFAE5TdDNfXzIxMnN5c3RlbV9lcnJvckUAOiAAdGhyZWFkOjpqb2luIGZhaWxlZAB2ZWN0b3IAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZAB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgdGhyZXcgYW4gZXhjZXB0aW9uAHN0ZDo6YmFkX2FsbG9jAFN0OWJhZF9hbGxvYwBTdDExbG9naWNfZXJyb3IAU3QxM3J1bnRpbWVfZXJyb3IAU3QxNmludmFsaWRfYXJndW1lbnQAU3QxMmxlbmd0aF9lcnJvcgBTdDEyb3V0X29mX3JhbmdlAFN0MTRvdmVyZmxvd19lcnJvcgBzdGQ6OmJhZF9jYXN0AFN0OGJhZF9jYXN0AE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UARG4ATjEwX19jeHhhYml2MTIwX19mdW5jdGlvbl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0UAIGNvbnN0ACB2b2xhdGlsZQAgcmVzdHJpY3QAIGNvbXBsZXgAIGltYWdpbmFyeQAgWwAgKAApACgAJiYAb2JqY19vYmplY3Q8ACoAJgBvYmpjcHJvdG8AIAA8AD4AIHZlY3RvclsAXQBwaXhlbCB2ZWN0b3JbACY9AD0ALAB+ADo6AGRlbGV0ZVtdIABkZWxldGUgAC8ALz0AXgBePQA9PQA+PQApWwA8PQA8PAA8PD0ALQAtPQAqPQAtLQApLS0AIT0AIQB8fAB8AHw9AC0+KgArACs9ACsrACkrKwApID8gKAApIDogKAAlACU9AD4+AD4+PQB0aHJvdwB0aHJvdyAAdHlwZWlkKABzaXplb2YuLi4oACwgAHNpemVvZiAoAHN0YXRpY19jYXN0PAA+KAByZWludGVycHJldF9jYXN0PAAtPgBub2V4Y2VwdCAoAFtdIAApIAAuAC4qAHN0ZDo6AG9wZXJhdG9yJiYAb3BlcmF0b3ImAG9wZXJhdG9yJj0Ab3BlcmF0b3I9AG9wZXJhdG9yKCkAb3BlcmF0b3IsAG9wZXJhdG9yfgBvcGVyYXRvciAAb3BlcmF0b3IgZGVsZXRlW10Ab3BlcmF0b3IqAG9wZXJhdG9yLwBvcGVyYXRvci89AG9wZXJhdG9yXgBvcGVyYXRvcl49AG9wZXJhdG9yPT0Ab3BlcmF0b3I+PQBvcGVyYXRvcj4Ab3BlcmF0b3JbXQBvcGVyYXRvcjw9AG9wZXJhdG9yIiIgAG9wZXJhdG9yPDwAb3BlcmF0b3I8PD0Ab3BlcmF0b3I8AG9wZXJhdG9yLQBvcGVyYXRvci09AG9wZXJhdG9yKj0Ab3BlcmF0b3ItLQBvcGVyYXRvciBuZXdbXQBvcGVyYXRvciE9AG9wZXJhdG9yIQBvcGVyYXRvciBuZXcAb3BlcmF0b3J8fABvcGVyYXRvcnwAb3BlcmF0b3J8PQBvcGVyYXRvci0+KgBvcGVyYXRvcisAb3BlcmF0b3IrPQBvcGVyYXRvcisrAG9wZXJhdG9yLT4Ab3BlcmF0b3I/AG9wZXJhdG9yJQBvcGVyYXRvciU9AG9wZXJhdG9yPj4Ab3BlcmF0b3I+Pj0Ab3BlcmF0b3IgZGVsZXRlACd1bm5hbWVkACdsYW1iZGEnKABzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LCBzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+AGJhc2ljX3N0cmluZwBzdGQ6OmlzdHJlYW0Ac3RkOjpiYXNpY19pc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBiYXNpY19pc3RyZWFtAHN0ZDo6b3N0cmVhbQBzdGQ6OmJhc2ljX29zdHJlYW08Y2hhciwgc3RkOjpjaGFyX3RyYWl0czxjaGFyPiA+AGJhc2ljX29zdHJlYW0Ac3RkOjppb3N0cmVhbQBzdGQ6OmJhc2ljX2lvc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBiYXNpY19pb3N0cmVhbQBkeW5hbWljX2Nhc3Q8ACkoAGNvbnN0X2Nhc3Q8AGFsaWdub2YgKABmcAB3Y2hhcl90AGZhbHNlAHRydWUAY2hhcgBzaWduZWQgY2hhcgB1bnNpZ25lZCBjaGFyAHNob3J0AHVuc2lnbmVkIHNob3J0AHUAbAB1bABsbAB1bGwAX19pbnQxMjgAdW5zaWduZWQgX19pbnQxMjgAJUxhTAAlYQAlYWYAZGVjbHR5cGUoAHN0ZDo6YWxsb2NhdG9yAHN0ZDo6YmFzaWNfc3RyaW5nADo6c3RyaW5nIGxpdGVyYWwAc3RkAF9HTE9CQUxfX04AKGFub255bW91cyBuYW1lc3BhY2UpACA+AFRfAGlkADo6KgAgJgAgJiYAIFtdAHZvaWQAYm9vbABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBsb25nIGxvbmcAZmxvYXQAbG9uZyBkb3VibGUAX19mbG9hdDEyOAAuLi4AZGVjaW1hbDY0AGRlY2ltYWwxMjgAZGVjaW1hbDMyAGRlY2ltYWwxNgBjaGFyMzJfdABjaGFyMTZfdABhdXRvAHN0ZDo6bnVsbHB0cl90AGRvdWJsZQB1bnNpZ25lZCBsb25nIGxvbmcAX2Jsb2NrX2ludm9rZQBpbnZvY2F0aW9uIGZ1bmN0aW9uIGZvciBibG9jayBpbiAAdnRhYmxlIGZvciAAVlRUIGZvciAAdHlwZWluZm8gZm9yIAB0eXBlaW5mbyBuYW1lIGZvciAAY292YXJpYW50IHJldHVybiB0aHVuayB0byAAY29uc3RydWN0aW9uIHZ0YWJsZSBmb3IgAC1pbi0AdmlydHVhbCB0aHVuayB0byAAbm9uLXZpcnR1YWwgdGh1bmsgdG8gAGd1YXJkIHZhcmlhYmxlIGZvciAAcmVmZXJlbmNlIHRlbXBvcmFyeSBmb3Ig"; +Ka.push({a:function(){Za()}},{a:function(){$a()}},{a:function(){ab()}},{a:function(){bb()}},{a:function(){cb()}},{a:function(){db()}},{a:function(){eb()}},{a:function(){fb()}},{a:function(){gb()}},{a:function(){hb()}},{a:function(){ib()}},{a:function(){jb()}},{a:function(){kb()}},{a:function(){lb()}},{a:function(){mb()}},{a:function(){nb()}},{a:function(){ob()}},{a:function(){pb()}},{a:function(){qb()}},{a:function(){rb()}},{a:function(){sb()}},{a:function(){tb()}});K="data:application/octet-stream;base64,AAAAAAAAAAA7OyBBIGxhcmdlIFdBU1QgYmxvYiB3aGljaCBjb250YWlucyB0aGUgaW1wbGVtZW50YXRpb25zIG9mIGFsbCB0aGUgaW50cmluc2ljcwo7OyB0aGF0IHdlIGluamVjdCBhcyBwYXJ0IG9mIHRoaXMgbW9kdWxlLiBUaGlzIGJsb2Igd2FzIGdlbmVyYXRlZCBmcm9tIGEgUnVzdAo7OyBwcm9ncmFtIFsxXSB3aGljaCB1c2VzIHRoZSBSdXN0IGNvbXBpbGVyLWJ1aWx0aW5zIHByb2plY3QuIEl0J3Mgbm90Cjs7IG5lY2Vzc2FyaWx5IHBlcmZlY3QgYnV0IGdldHMgdGhlIGpvYiBkb25lISBUaGUgaWRlYSBoZXJlIGlzIHRoYXQgd2UgaW5qZWN0Cjs7IHRoZXNlIHByZXR0eSBlYXJseSBzbyB0aGV5IGNhbiBjb250aW51ZSB0byBiZSBvcHRpbWl6ZWQgYnkgZnVydGhlciBwYXNzZXMKOzsgKGFrYSBpbmxpbmluZyBhbmQgd2hhdG5vdCkKOzsKOzsgWzFdOiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9hbGV4Y3JpY2h0b24vZTdlYTY3YmNkZDE3Y2U0YjYyNTRlNjZmNzcxNjU2OTAKCihtb2R1bGUKICh0eXBlICQwIChmdW5jIChwYXJhbSBpNjQgaTY0KSAocmVzdWx0IGk2NCkpKQogKHR5cGUgJDEgKGZ1bmMgKHBhcmFtIGYzMikgKHJlc3VsdCBmMzIpKSkKICh0eXBlICQyIChmdW5jIChwYXJhbSBmNjQpIChyZXN1bHQgZjY0KSkpCiAodHlwZSAkMyAoZnVuYyAocGFyYW0gaTMyKSAocmVzdWx0IGkzMikpKQogKHR5cGUgJDQgKGZ1bmMgKHBhcmFtIGkzMiBpMzIpIChyZXN1bHQgaTMyKSkpCiAoaW1wb3J0ICJlbnYiICJtZW1vcnkiIChtZW1vcnkgJDAgMTcpKQogKGV4cG9ydCAiX193YXNtX2k2NF9zZGl2IiAoZnVuYyAkX193YXNtX2k2NF9zZGl2KSkKIChleHBvcnQgIl9fd2FzbV9pNjRfdWRpdiIgKGZ1bmMgJF9fd2FzbV9pNjRfdWRpdikpCiAoZXhwb3J0ICJfX3dhc21faTY0X3NyZW0iIChmdW5jICRfX3dhc21faTY0X3NyZW0pKQogKGV4cG9ydCAiX193YXNtX2k2NF91cmVtIiAoZnVuYyAkX193YXNtX2k2NF91cmVtKSkKIChleHBvcnQgIl9fd2FzbV9pNjRfbXVsIiAoZnVuYyAkX193YXNtX2k2NF9tdWwpKQogKGV4cG9ydCAiX193YXNtX3RydW5jX2YzMiIgKGZ1bmMgJF9fd2FzbV90cnVuY19mMzIpKQogKGV4cG9ydCAiX193YXNtX3RydW5jX2Y2NCIgKGZ1bmMgJF9fd2FzbV90cnVuY19mNjQpKQogKGV4cG9ydCAiX193YXNtX2N0el9pMzIiIChmdW5jICRfX3dhc21fY3R6X2kzMikpCiAoZXhwb3J0ICJfX3dhc21fY3R6X2k2NCIgKGZ1bmMgJF9fd2FzbV9jdHpfaTY0KSkKIChleHBvcnQgIl9fd2FzbV9yb3RsX2kzMiIgKGZ1bmMgJF9fd2FzbV9yb3RsX2kzMikpCiAoZXhwb3J0ICJfX3dhc21fcm90cl9pMzIiIChmdW5jICRfX3dhc21fcm90cl9pMzIpKQogKGV4cG9ydCAiX193YXNtX3JvdGxfaTY0IiAoZnVuYyAkX193YXNtX3JvdGxfaTY0KSkKIChleHBvcnQgIl9fd2FzbV9yb3RyX2k2NCIgKGZ1bmMgJF9fd2FzbV9yb3RyX2k2NCkpCiAoZXhwb3J0ICJfX3dhc21fbmVhcmVzdF9mMzIiIChmdW5jICRfX3dhc21fbmVhcmVzdF9mMzIpKQogKGV4cG9ydCAiX193YXNtX25lYXJlc3RfZjY0IiAoZnVuYyAkX193YXNtX25lYXJlc3RfZjY0KSkKIChleHBvcnQgIl9fd2FzbV9wb3BjbnRfaTMyIiAoZnVuYyAkX193YXNtX3BvcGNudF9pMzIpKQogKGV4cG9ydCAiX193YXNtX3BvcGNudF9pNjQiIChmdW5jICRfX3dhc21fcG9wY250X2k2NCkpCgogOzsgbG93ZXJpbmcgb2YgdGhlIGkzMi5wb3BjbnQgaW5zdHJ1Y3Rpb24sIGNvdW50cyB0aGUgbnVtYmVyIG9mIGJpdHMgc2V0IGluIHRoZQogOzsgaW5wdXQgYW5kIHJldHVybnMgdGhlIHJlc3VsdAogKGZ1bmMgJF9fd2FzbV9wb3BjbnRfaTMyIChwYXJhbSAkdmFyJDAgaTMyKSAocmVzdWx0IGkzMikKICAobG9jYWwgJHZhciQxIGkzMikKICAoYmxvY2sgJGxhYmVsJDEgKHJlc3VsdCBpMzIpCiAgIChsb29wICRsYWJlbCQyCiAgICAoZHJvcAogICAgIChicl9pZiAkbGFiZWwkMQogICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgKGkzMi5lcXoKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICApCiAgICAgKQogICAgKQogICAgKHNldF9sb2NhbCAkdmFyJDAKICAgICAoaTMyLmFuZAogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKGkzMi5zdWIKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgKGkzMi5jb25zdCAxKQogICAgICApCiAgICAgKQogICAgKQogICAgKHNldF9sb2NhbCAkdmFyJDEKICAgICAoaTMyLmFkZAogICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgKGkzMi5jb25zdCAxKQogICAgICkKICAgICkKICAgIChiciAkbGFiZWwkMikKICAgKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucG9wY250IGluc3RydWN0aW9uLCBjb3VudHMgdGhlIG51bWJlciBvZiBiaXRzIHNldCBpbiB0aGUKIDs7IGlucHV0IGFuZCByZXR1cm5zIHRoZSByZXN1bHQKIChmdW5jICRfX3dhc21fcG9wY250X2k2NCAocGFyYW0gJHZhciQwIGk2NCkgKHJlc3VsdCBpNjQpCiAgKGxvY2FsICR2YXIkMSBpNjQpCiAgKGJsb2NrICRsYWJlbCQxIChyZXN1bHQgaTY0KQogICAobG9vcCAkbGFiZWwkMgogICAgKGRyb3AKICAgICAoYnJfaWYgJGxhYmVsJDEKICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgIChpNjQuZXF6CiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKQogICAgICkKICAgICkKICAgIChzZXRfbG9jYWwgJHZhciQwCiAgICAgKGk2NC5hbmQKICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgIChpNjQuc3ViCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgIChpNjQuY29uc3QgMSkKICAgICAgKQogICAgICkKICAgICkKICAgIChzZXRfbG9jYWwgJHZhciQxCiAgICAgKGk2NC5hZGQKICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgIChpNjQuY29uc3QgMSkKICAgICApCiAgICApCiAgICAoYnIgJGxhYmVsJDIpCiAgICkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgaTY0LmRpdl9zIGluc3RydWN0aW9uLCByZXR1cm4gJHZhcjAgLyAkdmFyJDEKIChmdW5jICRfX3dhc21faTY0X3NkaXYgKDsgMCA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAoY2FsbCAkX1pOMTdjb21waWxlcl9idWlsdGluczNpbnQ0c2RpdjNEaXYzZGl2MTdoZTc4ZmM0ODNlNDFkN2VjN0UKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChnZXRfbG9jYWwgJHZhciQxKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQuZGl2X3UgaW5zdHJ1Y3Rpb24sIHJldHVybiAkdmFyMCAvICR2YXIkMQogKGZ1bmMgJF9fd2FzbV9pNjRfdWRpdiAoOyAxIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChjYWxsICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDR1ZGl2MTBkaXZtb2RfdTY0MTdoNjAyNjkxMGI1ZWQwOGU0MEUKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChnZXRfbG9jYWwgJHZhciQxKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucmVtX3MgaW5zdHJ1Y3Rpb24sIHJldHVybiAkdmFyMCAlICR2YXIkMQogKGZ1bmMgJF9fd2FzbV9pNjRfc3JlbSAoOyAyIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChjYWxsICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDRzZGl2M01vZDRtb2RfMTdoMmNiYjdiYmYzNmU0MWQ2OEUKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChnZXRfbG9jYWwgJHZhciQxKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucmVtX3UgaW5zdHJ1Y3Rpb24sIHJldHVybiAkdmFyMCAlICR2YXIkMQogKGZ1bmMgJF9fd2FzbV9pNjRfdXJlbSAoOyAzIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChkcm9wCiAgIChjYWxsICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDR1ZGl2MTBkaXZtb2RfdTY0MTdoNjAyNjkxMGI1ZWQwOGU0MEUKICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICkKICApCiAgKGk2NC5sb2FkCiAgIChpMzIuY29uc3QgMTAyNCkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgaTY0Lm11bCBpbnN0cnVjdGlvbiwgcmV0dXJuICR2YXIwICogJHZhciQxCiAoZnVuYyAkX193YXNtX2k2NF9tdWwgKDsgNCA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAoY2FsbCAkX1pOMTdjb21waWxlcl9idWlsdGluczNpbnQzbXVsM011bDNtdWwxN2gwNzBlOWExYzY5ZmFlYzViRQogICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgKQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGYzMi50cnVuYyBpbnN0cnVjdGlvbiwgcm91bmRzIHRvIHRoZSBuZWFyZXN0IGludGVnZXIsCiA7OyB0b3dhcmRzIHplcm8KIChmdW5jICRfX3dhc21fdHJ1bmNfZjMyICg7IDUgOykgKHR5cGUgJDEpIChwYXJhbSAkdmFyJDAgZjMyKSAocmVzdWx0IGYzMikKICAoc2VsZWN0CiAgIChmMzIuY2VpbAogICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICkKICAgKGYzMi5mbG9vcgogICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICkKICAgKGYzMi5sdAogICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAoZjMyLmNvbnN0IDApCiAgICkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgZjY0LnRydW5jIGluc3RydWN0aW9uLCByb3VuZHMgdG8gdGhlIG5lYXJlc3QgaW50ZWdlciwKIDs7IHRvd2FyZHMgemVybwogKGZ1bmMgJF9fd2FzbV90cnVuY19mNjQgKDsgNiA7KSAodHlwZSAkMikgKHBhcmFtICR2YXIkMCBmNjQpIChyZXN1bHQgZjY0KQogIChzZWxlY3QKICAgKGY2NC5jZWlsCiAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgKQogICAoZjY0LmZsb29yCiAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgKQogICAoZjY0Lmx0CiAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgIChmNjQuY29uc3QgMCkKICAgKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpMzIuY3R6IGluc3RydWN0aW9uLCBjb3VudGluZyB0aGUgbnVtYmVyIG9mIHplcm9zIGluICR2YXIkMAogKGZ1bmMgJF9fd2FzbV9jdHpfaTMyICg7IDcgOykgKHR5cGUgJDMpIChwYXJhbSAkdmFyJDAgaTMyKSAocmVzdWx0IGkzMikKICAoaWYKICAgKGdldF9sb2NhbCAkdmFyJDApCiAgIChyZXR1cm4KICAgIChpMzIuc3ViCiAgICAgKGkzMi5jb25zdCAzMSkKICAgICAoaTMyLmNsegogICAgICAoaTMyLnhvcgogICAgICAgKGkzMi5hZGQKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAoaTMyLmNvbnN0IC0xKQogICAgICAgKQogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICkKICAgICApCiAgICApCiAgICkKICApCiAgKGkzMi5jb25zdCAzMikKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQuY3R6IGluc3RydWN0aW9uLCBjb3VudGluZyB0aGUgbnVtYmVyIG9mIHplcm9zIGluICR2YXIkMAogKGZ1bmMgJF9fd2FzbV9jdHpfaTY0ICg7IDggOykgKHR5cGUgJDQpIChwYXJhbSAkdmFyJDAgaTY0KSAocmVzdWx0IGk2NCkKICAoaWYKICAgKGkzMi5lcXoKICAgIChpNjQuZXF6CiAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICApCiAgICkKICAgKHJldHVybgogICAgKGk2NC5zdWIKICAgICAoaTY0LmNvbnN0IDYzKQogICAgIChpNjQuY2x6CiAgICAgIChpNjQueG9yCiAgICAgICAoaTY0LmFkZAogICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgIChpNjQuY29uc3QgLTEpCiAgICAgICApCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKQogICAgICkKICAgICkKICAgKQogICkKICAoaTY0LmNvbnN0IDY0KQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGkzMi5yb3RsIGluc3RydWN0aW9uLCByb3RhdGluZyB0aGUgZmlyc3QgYXJndW1lbnQsIHdpdGgKIDs7IHdyYXBhcm91bmQsIGJ5IHRoZSBzZWNvbmQgYXJndW1lbnQKIChmdW5jICRfX3dhc21fcm90bF9pMzIgKDsgOCA7KSAodHlwZSAkNCkgKHBhcmFtICR2YXIkMCBpMzIpIChwYXJhbSAkdmFyJDEgaTMyKSAocmVzdWx0IGkzMikKICAobG9jYWwgJHZhciQyIGkzMikKICAoaTMyLm9yCiAgIChpMzIuc2hsCiAgICAoaTMyLmFuZAogICAgIChpMzIuc2hyX3UKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQyKQogICApCiAgIChpMzIuc2hyX3UKICAgIChpMzIuYW5kCiAgICAgKGkzMi5zaGwKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDEKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGkzMi5zdWIKICAgICAgICAgKGkzMi5jb25zdCAwKQogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICApCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQxKQogICApCiAgKQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGkzMi5yb3RyIGluc3RydWN0aW9uLCByb3RhdGluZyB0aGUgZmlyc3QgYXJndW1lbnQsIHdpdGgKIDs7IHdyYXBhcm91bmQsIGJ5IHRoZSBzZWNvbmQgYXJndW1lbnQKIChmdW5jICRfX3dhc21fcm90cl9pMzIgKDsgOSA7KSAodHlwZSAkNCkgKHBhcmFtICR2YXIkMCBpMzIpIChwYXJhbSAkdmFyJDEgaTMyKSAocmVzdWx0IGkzMikKICAobG9jYWwgJHZhciQyIGkzMikKICAoaTMyLm9yCiAgIChpMzIuc2hyX3UKICAgIChpMzIuYW5kCiAgICAgKGkzMi5zaGwKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQyKQogICApCiAgIChpMzIuc2hsCiAgICAoaTMyLmFuZAogICAgIChpMzIuc2hyX3UKICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgKHRlZV9sb2NhbCAkdmFyJDEKICAgICAgIChpMzIuYW5kCiAgICAgICAgKGkzMi5zdWIKICAgICAgICAgKGkzMi5jb25zdCAwKQogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICApCiAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICkKICAgICAgKQogICAgICkKICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQxKQogICApCiAgKQogKQogOzsgbG93ZXJpbmcgb2YgdGhlIGk2NC5yb3RsIGluc3RydWN0aW9uLCByb3RhdGluZyB0aGUgZmlyc3QgYXJndW1lbnQsIHdpdGgKIDs7IHdyYXBhcm91bmQsIGJ5IHRoZSBzZWNvbmQgYXJndW1lbnQKIChmdW5jICRfX3dhc21fcm90bF9pNjQgKDsgMTAgOykgKHR5cGUgJDApIChwYXJhbSAkdmFyJDAgaTY0KSAocGFyYW0gJHZhciQxIGk2NCkgKHJlc3VsdCBpNjQpCiAgKGxvY2FsICR2YXIkMiBpNjQpCiAgKGk2NC5vcgogICAoaTY0LnNobAogICAgKGk2NC5hbmQKICAgICAoaTY0LnNocl91CiAgICAgIChpNjQuY29uc3QgLTEpCiAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAoaTY0LmFuZAogICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICApCiAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgKQogICAoaTY0LnNocl91CiAgICAoaTY0LmFuZAogICAgIChpNjQuc2hsCiAgICAgIChpNjQuY29uc3QgLTEpCiAgICAgICh0ZWVfbG9jYWwgJHZhciQxCiAgICAgICAoaTY0LmFuZAogICAgICAgIChpNjQuc3ViCiAgICAgICAgIChpNjQuY29uc3QgMCkKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgKQogICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICApCiAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgKQogICkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBpNjQucm90ciBpbnN0cnVjdGlvbiwgcm90YXRpbmcgdGhlIGZpcnN0IGFyZ3VtZW50LCB3aXRoCiA7OyB3cmFwYXJvdW5kLCBieSB0aGUgc2Vjb25kIGFyZ3VtZW50CiAoZnVuYyAkX193YXNtX3JvdHJfaTY0ICg7IDExIDspICh0eXBlICQwKSAocGFyYW0gJHZhciQwIGk2NCkgKHBhcmFtICR2YXIkMSBpNjQpIChyZXN1bHQgaTY0KQogIChsb2NhbCAkdmFyJDIgaTY0KQogIChpNjQub3IKICAgKGk2NC5zaHJfdQogICAgKGk2NC5hbmQKICAgICAoaTY0LnNobAogICAgICAoaTY0LmNvbnN0IC0xKQogICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgKGk2NC5hbmQKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgKQogICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICkKICAgKGk2NC5zaGwKICAgIChpNjQuYW5kCiAgICAgKGk2NC5zaHJfdQogICAgICAoaTY0LmNvbnN0IC0xKQogICAgICAodGVlX2xvY2FsICR2YXIkMQogICAgICAgKGk2NC5hbmQKICAgICAgICAoaTY0LnN1YgogICAgICAgICAoaTY0LmNvbnN0IDApCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICkKICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgKQogICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICkKICApCiApCiA7OyBsb3dlcmluZyBvZiB0aGUgZjMyLm5lYXJlc3QgaW5zdHJ1Y3Rpb24sIHJvdW5kaW5nIHRoZSBpbnB1dCB0byB0aGUgbmVhcmVzdAogOzsgaW50ZWdlciB3aGlsZSBicmVha2luZyB0aWVzIGJ5IHJvdW5kaW5nIHRvIGV2ZW4KIChmdW5jICRfX3dhc21fbmVhcmVzdF9mMzIgKDsgMTIgOykgKHR5cGUgJDEpIChwYXJhbSAkdmFyJDAgZjMyKSAocmVzdWx0IGYzMikKICAobG9jYWwgJHZhciQxIGYzMikKICAobG9jYWwgJHZhciQyIGYzMikKICAoaWYKICAgKGkzMi5lcXoKICAgIChmMzIubHQKICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAoZjMyLnN1YgogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAodGVlX2xvY2FsICR2YXIkMQogICAgICAgIChmMzIuZmxvb3IKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgIChmMzIuY29uc3QgMC41KQogICAgKQogICApCiAgIChibG9jawogICAgKHNldF9sb2NhbCAkdmFyJDAKICAgICAoZjMyLmNlaWwKICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgKQogICAgKQogICAgKGlmCiAgICAgKGYzMi5ndAogICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgKGYzMi5jb25zdCAwLjUpCiAgICAgKQogICAgIChyZXR1cm4KICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgKQogICAgKQogICAgKHNldF9sb2NhbCAkdmFyJDEKICAgICAoc2VsZWN0CiAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgKGYzMi5lcQogICAgICAgKGYzMi5zdWIKICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAoZjMyLm11bAogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAoZjMyLmNvbnN0IDAuNSkKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoZjMyLmZsb29yCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICkKICAgICAgICkKICAgICAgIChmMzIuY29uc3QgMCkKICAgICAgKQogICAgICkKICAgICkKICAgKQogICkKICAoZ2V0X2xvY2FsICR2YXIkMSkKICkKIDs7IGxvd2VyaW5nIG9mIHRoZSBmNjQubmVhcmVzdCBpbnN0cnVjdGlvbiwgcm91bmRpbmcgdGhlIGlucHV0IHRvIHRoZSBuZWFyZXN0CiA7OyBpbnRlZ2VyIHdoaWxlIGJyZWFraW5nIHRpZXMgYnkgcm91bmRpbmcgdG8gZXZlbgogKGZ1bmMgJF9fd2FzbV9uZWFyZXN0X2Y2NCAoOyAxMyA7KSAodHlwZSAkMikgKHBhcmFtICR2YXIkMCBmNjQpIChyZXN1bHQgZjY0KQogIChsb2NhbCAkdmFyJDEgZjY0KQogIChsb2NhbCAkdmFyJDIgZjY0KQogIChpZgogICAoaTMyLmVxegogICAgKGY2NC5sdAogICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgIChmNjQuc3ViCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICh0ZWVfbG9jYWwgJHZhciQxCiAgICAgICAgKGY2NC5mbG9vcgogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICApCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKGY2NC5jb25zdCAwLjUpCiAgICApCiAgICkKICAgKGJsb2NrCiAgICAoc2V0X2xvY2FsICR2YXIkMAogICAgIChmNjQuY2VpbAogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICApCiAgICApCiAgICAoaWYKICAgICAoZjY0Lmd0CiAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAoZjY0LmNvbnN0IDAuNSkKICAgICApCiAgICAgKHJldHVybgogICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICApCiAgICApCiAgICAoc2V0X2xvY2FsICR2YXIkMQogICAgIChzZWxlY3QKICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAoZjY0LmVxCiAgICAgICAoZjY0LnN1YgogICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgIChmNjQubXVsCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgIChmNjQuY29uc3QgMC41KQogICAgICAgICApCiAgICAgICAgKQogICAgICAgIChmNjQuZmxvb3IKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGY2NC5jb25zdCAwKQogICAgICApCiAgICAgKQogICAgKQogICApCiAgKQogIChnZXRfbG9jYWwgJHZhciQxKQogKQogKGZ1bmMgJF9aTjE3Y29tcGlsZXJfYnVpbHRpbnMzaW50NHVkaXYxMGRpdm1vZF91NjQxN2g2MDI2OTEwYjVlZDA4ZTQwRSAoOyAxNCA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAobG9jYWwgJHZhciQyIGkzMikKICAobG9jYWwgJHZhciQzIGkzMikKICAobG9jYWwgJHZhciQ0IGkzMikKICAobG9jYWwgJHZhciQ1IGk2NCkKICAobG9jYWwgJHZhciQ2IGk2NCkKICAobG9jYWwgJHZhciQ3IGk2NCkKICAobG9jYWwgJHZhciQ4IGk2NCkKICAoYmxvY2sgJGxhYmVsJDEKICAgKGJsb2NrICRsYWJlbCQyCiAgICAoYmxvY2sgJGxhYmVsJDMKICAgICAoYmxvY2sgJGxhYmVsJDQKICAgICAgKGJsb2NrICRsYWJlbCQ1CiAgICAgICAoYmxvY2sgJGxhYmVsJDYKICAgICAgICAoYmxvY2sgJGxhYmVsJDcKICAgICAgICAgKGJsb2NrICRsYWJlbCQ4CiAgICAgICAgICAoYmxvY2sgJGxhYmVsJDkKICAgICAgICAgICAoYmxvY2sgJGxhYmVsJDEwCiAgICAgICAgICAgIChibG9jayAkbGFiZWwkMTEKICAgICAgICAgICAgIChpZgogICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgIChpNjQuc2hyX3UKICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAgICAgICAgICAoaTY0LmNvbnN0IDMyKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgIChibG9jawogICAgICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDExCiAgICAgICAgICAgICAgICAoaTMyLmVxegogICAgICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQzCiAgICAgICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgIChicl9pZiAkbGFiZWwkOQogICAgICAgICAgICAgICAgKGkzMi5lcXoKICAgICAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNAogICAgICAgICAgICAgICAgICAoaTMyLndyYXAvaTY0CiAgICAgICAgICAgICAgICAgICAoaTY0LnNocl91CiAgICAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDgKICAgICAgICAgICAgICAgIChpMzIubGVfdQogICAgICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgICAgICAgICAoaTMyLmNsegogICAgICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQ0KQogICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgKGkzMi5jbHoKICAgICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAoaTMyLmNvbnN0IDMxKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgIChiciAkbGFiZWwkMikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDIKICAgICAgICAgICAgICAoaTY0LmdlX3UKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAgICAgIChpNjQuY29uc3QgNDI5NDk2NzI5NikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAoaTY0LnN0b3JlCiAgICAgICAgICAgICAgKGkzMi5jb25zdCAxMDI0KQogICAgICAgICAgICAgIChpNjQuZXh0ZW5kX3UvaTMyCiAgICAgICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKGkzMi5tdWwKICAgICAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAgICAgICAgICAoaTMyLmRpdl91CiAgICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQzCiAgICAgICAgICAgICAgICAgICAgKGkzMi53cmFwL2k2NAogICAgICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAocmV0dXJuCiAgICAgICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgICAgIChzZXRfbG9jYWwgJHZhciQzCiAgICAgICAgICAgICAoaTMyLndyYXAvaTY0CiAgICAgICAgICAgICAgKGk2NC5zaHJfdQogICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICkKICAgICAgICAgICAgKGJyX2lmICRsYWJlbCQ3CiAgICAgICAgICAgICAoaTMyLmVxegogICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgICAgIChicl9pZiAkbGFiZWwkNgogICAgICAgICAgICAgKGkzMi5lcXoKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICAoYnJfaWYgJGxhYmVsJDYKICAgICAgICAgICAgIChpMzIuYW5kCiAgICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDQKICAgICAgICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICAgICAgKGkzMi5jb25zdCAtMSkKICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICkKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICAoaTY0LnN0b3JlCiAgICAgICAgICAgICAoaTMyLmNvbnN0IDEwMjQpCiAgICAgICAgICAgICAoaTY0Lm9yCiAgICAgICAgICAgICAgKGk2NC5zaGwKICAgICAgICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAgICAgIChpMzIuYW5kCiAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDQpCiAgICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgKGk2NC5hbmQKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICAgICAgIChpNjQuY29uc3QgNDI5NDk2NzI5NSkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICkKICAgICAgICAgICAgKHJldHVybgogICAgICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAgICAoaTMyLnNocl91CiAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgICAgICAoaTMyLmFuZAogICAgICAgICAgICAgICAgKGkzMi5jdHoKICAgICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgIChpMzIuY29uc3QgMzEpCiAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICAgKHVucmVhY2hhYmxlKQogICAgICAgICAgKQogICAgICAgICAgKGJyX2lmICRsYWJlbCQ1CiAgICAgICAgICAgKGkzMi5lcXoKICAgICAgICAgICAgKGkzMi5hbmQKICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQ0CiAgICAgICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICAgIChpMzIuY29uc3QgLTEpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICApCiAgICAgICAgICAoc2V0X2xvY2FsICR2YXIkMwogICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgIChpMzIuY29uc3QgMCkKICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgICAgIChpMzIuc3ViCiAgICAgICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAgICAgKGkzMi5jbHoKICAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgIChpMzIuY29uc3QgMzMpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgIChpMzIuY2x6CiAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgICAgICkKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgIChiciAkbGFiZWwkMykKICAgICAgICAgKQogICAgICAgICAoc2V0X2xvY2FsICR2YXIkMwogICAgICAgICAgKGkzMi5zdWIKICAgICAgICAgICAoaTMyLmNvbnN0IDYzKQogICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgKQogICAgICAgICApCiAgICAgICAgIChzZXRfbG9jYWwgJHZhciQyCiAgICAgICAgICAoaTMyLmFkZAogICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgIChpMzIuY29uc3QgMSkKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICAoYnIgJGxhYmVsJDMpCiAgICAgICAgKQogICAgICAgIChpNjQuc3RvcmUKICAgICAgICAgKGkzMi5jb25zdCAxMDI0KQogICAgICAgICAoaTY0LnNobAogICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgICAoaTMyLnN1YgogICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgKGkzMi5tdWwKICAgICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQ0CiAgICAgICAgICAgICAgKGkzMi5kaXZfdQogICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICAgKQogICAgICAgICAgICAgKQogICAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICApCiAgICAgICAgICAoaTY0LmNvbnN0IDMyKQogICAgICAgICApCiAgICAgICAgKQogICAgICAgIChyZXR1cm4KICAgICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQ0KQogICAgICAgICApCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGJyX2lmICRsYWJlbCQ0CiAgICAgICAgKGkzMi5sdF91CiAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgICAoaTMyLnN1YgogICAgICAgICAgIChpMzIuY2x6CiAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICkKICAgICAgICAgICAoaTMyLmNsegogICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICApCiAgICAgICAgICApCiAgICAgICAgICkKICAgICAgICAgKGkzMi5jb25zdCAzMSkKICAgICAgICApCiAgICAgICApCiAgICAgICAoYnIgJGxhYmVsJDIpCiAgICAgICkKICAgICAgKGk2NC5zdG9yZQogICAgICAgKGkzMi5jb25zdCAxMDI0KQogICAgICAgKGk2NC5leHRlbmRfdS9pMzIKICAgICAgICAoaTMyLmFuZAogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNCkKICAgICAgICAgKGkzMi53cmFwL2k2NAogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgICkKICAgICAgICApCiAgICAgICApCiAgICAgICkKICAgICAgKGJyX2lmICRsYWJlbCQxCiAgICAgICAoaTMyLmVxCiAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgKGkzMi5jb25zdCAxKQogICAgICAgKQogICAgICApCiAgICAgIChyZXR1cm4KICAgICAgIChpNjQuc2hyX3UKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAoaTY0LmV4dGVuZF91L2kzMgogICAgICAgICAoaTMyLmN0egogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDMpCiAgICAgICAgICkKICAgICAgICApCiAgICAgICApCiAgICAgICkKICAgICApCiAgICAgKHNldF9sb2NhbCAkdmFyJDMKICAgICAgKGkzMi5zdWIKICAgICAgIChpMzIuY29uc3QgNjMpCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgKQogICAgICkKICAgICAoc2V0X2xvY2FsICR2YXIkMgogICAgICAoaTMyLmFkZAogICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgICAoaTMyLmNvbnN0IDEpCiAgICAgICkKICAgICApCiAgICApCiAgICAoc2V0X2xvY2FsICR2YXIkNQogICAgIChpNjQuc2hyX3UKICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgIChpNjQuZXh0ZW5kX3UvaTMyCiAgICAgICAoaTMyLmFuZAogICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgIChpMzIuY29uc3QgNjMpCiAgICAgICApCiAgICAgICkKICAgICApCiAgICApCiAgICAoc2V0X2xvY2FsICR2YXIkMAogICAgIChpNjQuc2hsCiAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAoaTY0LmV4dGVuZF91L2kzMgogICAgICAgKGkzMi5hbmQKICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAoaTMyLmNvbnN0IDYzKQogICAgICAgKQogICAgICApCiAgICAgKQogICAgKQogICAgKGJsb2NrICRsYWJlbCQxMwogICAgIChpZgogICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgKGJsb2NrCiAgICAgICAoc2V0X2xvY2FsICR2YXIkOAogICAgICAgIChpNjQuYWRkCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICAoaTY0LmNvbnN0IC0xKQogICAgICAgICkKICAgICAgICkKICAgICAgIChsb29wICRsYWJlbCQxNQogICAgICAgIChzZXRfbG9jYWwgJHZhciQ1CiAgICAgICAgIChpNjQuc3ViCiAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNQogICAgICAgICAgIChpNjQub3IKICAgICAgICAgICAgKGk2NC5zaGwKICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQ1KQogICAgICAgICAgICAgKGk2NC5jb25zdCAxKQogICAgICAgICAgICApCiAgICAgICAgICAgIChpNjQuc2hyX3UKICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAgICAgKGk2NC5jb25zdCA2MykKICAgICAgICAgICAgKQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgIChpNjQuYW5kCiAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDYKICAgICAgICAgICAgKGk2NC5zaHJfcwogICAgICAgICAgICAgKGk2NC5zdWIKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkOCkKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNSkKICAgICAgICAgICAgICkKICAgICAgICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICAgICAgICkKICAgICAgICAgICApCiAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICApCiAgICAgICAgICkKICAgICAgICApCiAgICAgICAgKHNldF9sb2NhbCAkdmFyJDAKICAgICAgICAgKGk2NC5vcgogICAgICAgICAgKGk2NC5zaGwKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMCkKICAgICAgICAgICAoaTY0LmNvbnN0IDEpCiAgICAgICAgICApCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNykKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoc2V0X2xvY2FsICR2YXIkNwogICAgICAgICAodGVlX2xvY2FsICR2YXIkNgogICAgICAgICAgKGk2NC5hbmQKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNikKICAgICAgICAgICAoaTY0LmNvbnN0IDEpCiAgICAgICAgICApCiAgICAgICAgICkKICAgICAgICApCiAgICAgICAgKGJyX2lmICRsYWJlbCQxNQogICAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAoaTMyLmNvbnN0IC0xKQogICAgICAgICAgKQogICAgICAgICApCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGJyICRsYWJlbCQxMykKICAgICAgKQogICAgICkKICAgICkKICAgIChpNjQuc3RvcmUKICAgICAoaTMyLmNvbnN0IDEwMjQpCiAgICAgKGdldF9sb2NhbCAkdmFyJDUpCiAgICApCiAgICAocmV0dXJuCiAgICAgKGk2NC5vcgogICAgICAoaTY0LnNobAogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAoaTY0LmNvbnN0IDEpCiAgICAgICkKICAgICAgKGdldF9sb2NhbCAkdmFyJDYpCiAgICAgKQogICAgKQogICApCiAgIChpNjQuc3RvcmUKICAgIChpMzIuY29uc3QgMTAyNCkKICAgIChnZXRfbG9jYWwgJHZhciQwKQogICApCiAgIChzZXRfbG9jYWwgJHZhciQwCiAgICAoaTY0LmNvbnN0IDApCiAgICkKICApCiAgKGdldF9sb2NhbCAkdmFyJDApCiApCiAoZnVuYyAkX1pOMTdjb21waWxlcl9idWlsdGluczNpbnQzbXVsM011bDNtdWwxN2gwNzBlOWExYzY5ZmFlYzViRSAoOyAxNSA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAobG9jYWwgJHZhciQyIGkzMikKICAobG9jYWwgJHZhciQzIGkzMikKICAobG9jYWwgJHZhciQ0IGkzMikKICAobG9jYWwgJHZhciQ1IGkzMikKICAobG9jYWwgJHZhciQ2IGkzMikKICAoaTY0Lm9yCiAgIChpNjQuc2hsCiAgICAoaTY0LmV4dGVuZF91L2kzMgogICAgIChpMzIuYWRkCiAgICAgIChpMzIuYWRkCiAgICAgICAoaTMyLmFkZAogICAgICAgIChpMzIuYWRkCiAgICAgICAgIChpMzIubXVsCiAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNAogICAgICAgICAgIChpMzIuc2hyX3UKICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICAoaTMyLmNvbnN0IDE2KQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgICh0ZWVfbG9jYWwgJHZhciQ1CiAgICAgICAgICAgKGkzMi5zaHJfdQogICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMwogICAgICAgICAgICAgKGkzMi53cmFwL2k2NAogICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAgICAgKQogICAgICAgICAgICApCiAgICAgICAgICAgIChpMzIuY29uc3QgMTYpCiAgICAgICAgICAgKQogICAgICAgICAgKQogICAgICAgICApCiAgICAgICAgIChpMzIubXVsCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgIChpMzIud3JhcC9pNjQKICAgICAgICAgICAoaTY0LnNocl91CiAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAgICAoaTY0LmNvbnN0IDMyKQogICAgICAgICAgICkKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoaTMyLm11bAogICAgICAgICAoaTMyLndyYXAvaTY0CiAgICAgICAgICAoaTY0LnNocl91CiAgICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgICAgKGk2NC5jb25zdCAzMikKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICApCiAgICAgICApCiAgICAgICAoaTMyLnNocl91CiAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgKGkzMi5hZGQKICAgICAgICAgIChpMzIuc2hyX3UKICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkNgogICAgICAgICAgICAoaTMyLm11bAogICAgICAgICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAgICAgICAoaTMyLmFuZAogICAgICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAgICAgKGkzMi5jb25zdCA2NTUzNSkKICAgICAgICAgICAgICApCiAgICAgICAgICAgICApCiAgICAgICAgICAgICAodGVlX2xvY2FsICR2YXIkMwogICAgICAgICAgICAgIChpMzIuYW5kCiAgICAgICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQzKQogICAgICAgICAgICAgICAoaTMyLmNvbnN0IDY1NTM1KQogICAgICAgICAgICAgICkKICAgICAgICAgICAgICkKICAgICAgICAgICAgKQogICAgICAgICAgICkKICAgICAgICAgICAoaTMyLmNvbnN0IDE2KQogICAgICAgICAgKQogICAgICAgICAgKGkzMi5tdWwKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMikKICAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkNSkKICAgICAgICAgICkKICAgICAgICAgKQogICAgICAgICkKICAgICAgICAoaTMyLmNvbnN0IDE2KQogICAgICAgKQogICAgICApCiAgICAgIChpMzIuc2hyX3UKICAgICAgICh0ZWVfbG9jYWwgJHZhciQyCiAgICAgICAgKGkzMi5hZGQKICAgICAgICAgKGkzMi5hbmQKICAgICAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICAgICAgKGkzMi5jb25zdCA2NTUzNSkKICAgICAgICAgKQogICAgICAgICAoaTMyLm11bAogICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDQpCiAgICAgICAgICAoZ2V0X2xvY2FsICR2YXIkMykKICAgICAgICAgKQogICAgICAgICkKICAgICAgICkKICAgICAgIChpMzIuY29uc3QgMTYpCiAgICAgICkKICAgICApCiAgICApCiAgICAoaTY0LmNvbnN0IDMyKQogICApCiAgIChpNjQuZXh0ZW5kX3UvaTMyCiAgICAoaTMyLm9yCiAgICAgKGkzMi5zaGwKICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgIChpMzIuY29uc3QgMTYpCiAgICAgKQogICAgIChpMzIuYW5kCiAgICAgIChnZXRfbG9jYWwgJHZhciQ2KQogICAgICAoaTMyLmNvbnN0IDY1NTM1KQogICAgICkKICAgICkKICAgKQogICkKICkKIChmdW5jICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDRzZGl2M0RpdjNkaXYxN2hlNzhmYzQ4M2U0MWQ3ZWM3RSAoOyAxNiA7KSAodHlwZSAkMCkgKHBhcmFtICR2YXIkMCBpNjQpIChwYXJhbSAkdmFyJDEgaTY0KSAocmVzdWx0IGk2NCkKICAobG9jYWwgJHZhciQyIGk2NCkKICAoaTY0LnN1YgogICAoaTY0LnhvcgogICAgKGk2NC5kaXZfdQogICAgIChpNjQuc3ViCiAgICAgIChpNjQueG9yCiAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgIChpNjQuc2hyX3MKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGdldF9sb2NhbCAkdmFyJDApCiAgICAgICkKICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgKQogICAgIChpNjQuc3ViCiAgICAgIChpNjQueG9yCiAgICAgICAodGVlX2xvY2FsICR2YXIkMgogICAgICAgIChpNjQuc2hyX3MKICAgICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgICAgKQogICAgICAgKQogICAgICAgKGdldF9sb2NhbCAkdmFyJDEpCiAgICAgICkKICAgICAgKGdldF9sb2NhbCAkdmFyJDIpCiAgICAgKQogICAgKQogICAgKHRlZV9sb2NhbCAkdmFyJDAKICAgICAoaTY0LnNocl9zCiAgICAgIChpNjQueG9yCiAgICAgICAoZ2V0X2xvY2FsICR2YXIkMSkKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICApCiAgICAgIChpNjQuY29uc3QgNjMpCiAgICAgKQogICAgKQogICApCiAgIChnZXRfbG9jYWwgJHZhciQwKQogICkKICkKIChmdW5jICRfWk4xN2NvbXBpbGVyX2J1aWx0aW5zM2ludDRzZGl2M01vZDRtb2RfMTdoMmNiYjdiYmYzNmU0MWQ2OEUgKDsgMTcgOykgKHR5cGUgJDApIChwYXJhbSAkdmFyJDAgaTY0KSAocGFyYW0gJHZhciQxIGk2NCkgKHJlc3VsdCBpNjQpCiAgKGxvY2FsICR2YXIkMiBpNjQpCiAgKGk2NC5zdWIKICAgKGk2NC54b3IKICAgIChpNjQucmVtX3UKICAgICAoaTY0LnN1YgogICAgICAoaTY0LnhvcgogICAgICAgKHRlZV9sb2NhbCAkdmFyJDIKICAgICAgICAoaTY0LnNocl9zCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgICkKICAgICAgICkKICAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICApCiAgICAgIChnZXRfbG9jYWwgJHZhciQyKQogICAgICkKICAgICAoaTY0LnN1YgogICAgICAoaTY0LnhvcgogICAgICAgKHRlZV9sb2NhbCAkdmFyJDAKICAgICAgICAoaTY0LnNocl9zCiAgICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICAgICAoaTY0LmNvbnN0IDYzKQogICAgICAgICkKICAgICAgICkKICAgICAgIChnZXRfbG9jYWwgJHZhciQxKQogICAgICApCiAgICAgIChnZXRfbG9jYWwgJHZhciQwKQogICAgICkKICAgICkKICAgIChnZXRfbG9jYWwgJHZhciQyKQogICApCiAgIChnZXRfbG9jYWwgJHZhciQyKQogICkKICkKIDs7IGN1c3RvbSBzZWN0aW9uICJsaW5raW5nIiwgc2l6ZSAzCikKAAAAAAAAAAAAARwCHQ4YAx4WFA8ZEQQIHxsNFxUTEAcaDBIGCwUKCR8WHhUSCh0CFBEPDQkGHAEXEwsDEA4HGAwECBkFGhsA3hIElQAAAAD///////////////8AAAAAAAAAAAAAAAACAADAAwAAwAQAAMAFAADABgAAwAcAAMAIAADACQAAwAoAAMALAADADAAAwA0AAMAOAADADwAAwBAAAMARAADAEgAAwBMAAMAUAADAFQAAwBYAAMAXAADAGAAAwBkAAMAaAADAGwAAwBwAAMAdAADAHgAAwB8AAMAAAACzAQAAwwIAAMMDAADDBAAAwwUAAMMGAADDBwAAwwgAAMMJAADDCgAAwwsAAMMMAADDDQAA0w4AAMMPAADDAAAMuwEADMMCAAzDAwAMwwQADNMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAKAAAACkAAAAqAAAAKwAAACwAAAAtAAAALgAAAC8AAAAwAAAAMQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAAAA5AAAAOgAAADsAAAA8AAAAPQAAAD4AAAA/AAAAQAAAAGEAAABiAAAAYwAAAGQAAABlAAAAZgAAAGcAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB0AAAAdQAAAHYAAAB3AAAAeAAAAHkAAAB6AAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAYQAAAGIAAABjAAAAZAAAAGUAAABmAAAAZwAAAGgAAABpAAAAagAAAGsAAABsAAAAbQAAAG4AAABvAAAAcAAAAHEAAAByAAAAcwAAAHQAAAB1AAAAdgAAAHcAAAB4AAAAeQAAAHoAAAB7AAAAfAAAAH0AAAB+AAAAfwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgACAAIAAgACAAIAAgACAAMgAiACIAIgAiACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgABYATABMAEwATABMAEwATABMAEwATABMAEwATABMAEwAjYCNgI2AjYCNgI2AjYCNgI2AjYBMAEwATABMAEwATABMAI1QjVCNUI1QjVCNUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFBMAEwATABMAEwATACNYI1gjWCNYI1gjWCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgTABMAEwATAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAKAAAACkAAAAqAAAAKwAAACwAAAAtAAAALgAAAC8AAAAwAAAAMQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAAAA5AAAAOgAAADsAAAA8AAAAPQAAAD4AAAA/AAAAQAAAAEEAAABCAAAAQwAAAEQAAABFAAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAUgAAAFMAAABUAAAAVQAAAFYAAABXAAAAWAAAAFkAAABaAAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAQQAAAEIAAABDAAAARAAAAEUAAABGAAAARwAAAEgAAABJAAAASgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAAB7AAAAfAAAAH0AAAB+AAAAfwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QX/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAAAAAAAAAAAABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAMDEyMzQ1Njc4OUFCQ0RFRlQhIhkNAQIDEUscDBAECx0SHidobm9wcWIgBQYPExQVGggWBygkFxgJCg4bHyUjg4J9JiorPD0+P0NHSk1YWVpbXF1eX2BhY2RlZmdpamtscnN0eXp7fAAAAAAAAAAAAElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAATENfQ1RZUEUAAAAATENfTlVNRVJJQwAATENfVElNRQAAAAAATENfQ09MTEFURQAATENfTU9ORVRBUlkATENfTUVTU0FHRVMAAAAAAAAAAAAAAAAAAgAAAAMAAAAFAAAABwAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAfwAAAIMAAACJAAAAiwAAAJUAAACXAAAAnQAAAKMAAACnAAAArQAAALMAAAC1AAAAvwAAAMEAAADFAAAAxwAAANMAAAABAAAACwAAAA0AAAARAAAAEwAAABcAAAAdAAAAHwAAACUAAAApAAAAKwAAAC8AAAA1AAAAOwAAAD0AAABDAAAARwAAAEkAAABPAAAAUwAAAFkAAABhAAAAZQAAAGcAAABrAAAAbQAAAHEAAAB5AAAAfwAAAIMAAACJAAAAiwAAAI8AAACVAAAAlwAAAJ0AAACjAAAApwAAAKkAAACtAAAAswAAALUAAAC7AAAAvwAAAMEAAADFAAAAxwAAANEAAAAEAAAAAAAAAEiUAABkAAAAZQAAAPz////8////SJQAAGYAAABnAAAAAAAAAAAAAAAwMTIzNDU2Nzg5YWJjZGVmQUJDREVGeFgrLXBQaUluTgAAAAAAAAAAAAAAAAAAAAAlAAAAbQAAAC8AAAAlAAAAZAAAAC8AAAAlAAAAeQAAACUAAABZAAAALQAAACUAAABtAAAALQAAACUAAABkAAAAJQAAAEkAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAHAAAAAAAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAAAAAAAAAAAAAAAAAAlAAAASAAAADoAAAAlAAAATQAAADoAAAAlAAAAUwAAACUAAABIAAAAOgAAACUAAABNAAAAOgAAACUAAABTAAAAiMQAAEzWAACwxAAAJ9YAAPB6AAAAAAAAiMQAAD/bAACwxAAArdoAAAh7AAAAAAAAsMQAADPaAAAQewAAAAAAAIjEAAA74gAAsMQAAErhAAAwewAAAAAAALDEAABx4AAAOHsAAAAAAABAAAAAAAAAABiUAAAHAAAACAAAAMD////A////GJQAAAkAAAAKAAAAsMQAAMjjAAB4lAAAAAAAALDEAAAN5AAACJQAAAAAAACIxAAAWu0AAIjEAADc7QAAsMQAAKTtAACoewAAAAAAALDEAABn7QAAsHsAAAAAAADMxQAAC+0AAAAAAAACAAAAoHsAAAIAAADAewAAAhAAALDEAADy7AAA0HsAAAAAAACIxAAAge4AALDEAAAE7gAAAHwAAAAAAACIxAAAx+8AALDEAACX7wAAGHwAAAAAAACwxAAAYu8AACB8AAAAAAAAsMQAACLvAAAwfAAAAAAAAMzFAADQ7gAAAAAAAAIAAACgewAAAgAAAEB8AAACEAAAsMQAAL/uAABQfAAAAAAAAIjEAAA48QAAsMQAAPrwAACAfAAAAAAAALDEAAC38AAAiHwAAAAAAADMxQAAYvAAAAAAAAACAAAAoHsAAAIAAACYfAAAAhAAALDEAABO8AAAqHwAAAAAAACIxAAAgfEAAIjEAABN8wAAsMQAAOvyAADgfAAAAAAAALDEAACE8gAA6HwAAAAAAADMxQAAC/IAAAAAAAACAAAAoHsAAAIAAAD4fAAAAhAAALDEAADI8QAACH0AAAAAAACIxAAAO/gAALDEAADW9wAAOH0AAAAAAACwxAAAYfcAAEB9AAAAAAAAsMQAAOf2AABQfQAAAAAAALDEAABi9gAAYH0AAAAAAADMxQAAy/UAAAAAAAACAAAAoHsAAAIAAABwfQAAAhAAALDEAACH9QAAgH0AAAAAAACIxAAARfkAALDEAADB+AAAsH0AAAAAAACIxAAARf4AAIjEAACT/gAAiMQAAFX/AACwxAAA0P4AANh9AAAAAAAAiMQAAKz/AACwxAAA6f8AANh9AAAAAAAAiMQAAG4AAQCwxAAAihYBACB+AAAAAAAAzMUAAJkWAQAAAAAAAgAAAKB7AAACAAAAQH4AAAIQAACwxAAA3hYBAFB+AAAAAAAAsMQAABEXAQBgfgAAAAAAAIjEAAA/FwEAsMQAAF0XAQB4fgAAAAAAAMzFAABrFwEAAAAAAAIAAACgewAAAgAAAJh+AAACEAAAsMQAAK8XAQCofgAAAAAAALDEAADhFwEAuH4AAAAAAACIxAAADhgBALDEAACNGQEA0H4AAAAAAADMxQAAoxkBAAAAAAACAAAAoHsAAAIAAADwfgAAAhAAALDEAADvGQEAAH8AAAAAAACwxAAAKRoBABB/AAAAAAAAiMQAAF4aAQCwxAAACxsBAKB7AAAAAAAAsMQAAMMbAQA4fwAAAAAAAMzFAADaGwEAAAAAAAIAAACgewAAAgAAAFh/AAACEAAAsMQAACscAQBofwAAAAAAALDEAABqHAEAeH8AAAAAAACwxAAAsBwBAIh/AAAAAAAAsMQAAPIcAQCYfwAAAAAAALDEAAAtHQEAqH8AAAAAAACIxAAAYx0BALDEAABpKgEA4H8AAAAAAACwxAAAbh8BANh/AAAAAAAAiMQAACwfAQCIxAAA6h8BAMzFAAB7KgEAAAAAAAIAAACgewAAAgAAAACAAAACEAAAsMQAAMMqAQAQgAAAAAAAALDEAAD5KgEAIIAAAAAAAACIxAAAKisBALDEAABZLQEASIAAAAAAAACwxAAASysBAGCZAAAAAAAAzMUAAH8tAQAAAAAAAgAAAKB7AAACAAAAaIAAAAIQAACwxAAA5i0BAHiAAAAAAAAAsMQAADsuAQCIgAAAAAAAALDEAACFLgEAmIAAAAAAAACIxAAAyi4BALDEAAD/LgEAsIAAAAAAAADMxQAAJS8BAAAAAAACAAAAoHsAAAIAAADQgAAAAhAAALDEAACMLwEA4IAAAAAAAACwxAAA4S8BAPCAAAAAAAAAsMQAACswAQAAgQAAAAAAAIjEAABwMAEAsMQAAGQxAQAYgQAAAAAAAMzFAACKMQEAAAAAAAIAAACgewAAAgAAADiBAAACEAAAsMQAAPExAQBIgQAAAAAAALDEAABGMgEAWIEAAAAAAACwxAAAkDIBAGiBAAAAAAAAiMQAANUyAQCwxAAAPjMBAICBAAAAAAAAzMUAAGQzAQAAAAAAAgAAAKB7AAACAAAAoIEAAAIQAACwxAAAyzMBALCBAAAAAAAAsMQAACA0AQDAgQAAAAAAALDEAABqNAEA0IEAAAAAAACIxAAArzQBALDEAADkNAEA6IEAAAAAAADMxQAACjUBAAAAAAACAAAAoHsAAAIAAAAIggAAAhAAALDEAABxNQEAGIIAAAAAAACwxAAAxjUBACiCAAAAAAAAsMQAABA2AQA4ggAAAAAAAIjEAABVNgEAsMQAAChZAQCgewAAAAAAALDEAADqOAEAaIIAAAAAAACIxAAAvjgBAIjEAABfOQEAsMQAAFk8AQCgewAAAAAAADgAAAAAAAAASJQAAGQAAABlAAAAyP///8j///9IlAAAZgAAAGcAAACwxAAAaTwBAEiUAAAAAAAAsMQAAHdSAQDIggAAAAAAAMzFAACSUgEAAAAAAAIAAACgewAAAgAAAOiCAAACEAAAsMQAAONSAQD4ggAAAAAAALDEAAAiUwEACIMAAAAAAACIxAAAXFMBALDEAACiUwEACJQAAAAAAABoAAAAAAAAAEiUAABkAAAAZQAAAJj///+Y////SJQAAGYAAABnAAAAsMQAANFTAQBIlAAAAAAAALDEAAASWAEAaIMAAAAAAADMxQAALlgBAAAAAAACAAAAoHsAAAIAAACIgwAAAhAAALDEAACAWAEAmIMAAAAAAACwxAAAwFgBAKiDAAAAAAAAiMQAAPtYAQCwxAAAyFkBAMCDAAAAAAAAzMUAAOlZAQAAAAAAAgAAAKB7AAACAAAA4IMAAAIQAACwxAAAR1oBAPCDAAAAAAAAsMQAAJNaAQAAhAAAAAAAALDEAADfWgEAEIQAAAAAAACwxAAAJFsBACCEAAAAAAAAiMQAAGRbAQCwxAAAqF8BAKB7AAAAAAAAsMQAAAVcAQBIhAAAAAAAAIjEAAAbXAEAsMQAAFlcAQBIhAAAAAAAALDEAAAtXQEASIQAAAAAAACwxAAAeF0BAGCZAAAAAAAAsMQAAItfAQCwhAAAAAAAALDEAABZXgEAYJkAAAAAAACwxAAAqV4BALCEAAAAAAAAiMQAAMFeAQCwxAAA114BAGCZAAAAAAAAsMQAACJfAQCwhAAAAAAAALDEAAA9XwEAYJkAAAAAAACwxAAA+l8BAPiEAAAAAAAAzMUAABFgAQAAAAAAAgAAAKB7AAACAAAAGIUAAAIQAACwxAAAXmABACiFAAAAAAAAsMQAAJlgAQA4hQAAAAAAAIjEAADPYAEAsMQAAEFiAQCgewAAAAAAALDEAAA3YQEAYIUAAAAAAADMxQAAUWEBAAAAAAACAAAAoHsAAAIAAACAhQAAAhAAALDEAAChYQEAkIUAAAAAAACwxAAA32EBAKCFAAAAAAAAiMQAABhiAQCwxAAAk2IBALiFAAAAAAAAzMUAAK5iAQAAAAAAAgAAAKB7AAACAAAA2IUAAAIQAACwxAAA/2IBAOiFAAAAAAAAsMQAAD5jAQD4hQAAAAAAAIjEAAB4YwEAsMQAAKJjAQCgewAAAAAAALDEAAACZQEAIIYAAAAAAADMxQAAG2UBAAAAAAACAAAAoHsAAAIAAABAhgAAAhAAALDEAABqZQEAUIYAAAAAAACwxAAAp2UBAGCGAAAAAAAAiMQAAN9lAQCwxAAAB2YBAKB7AAAAAAAAsMQAADFmAQCIhgAAAAAAAMzFAABIZgEAAAAAAAIAAACgewAAAgAAAKiGAAACEAAAsMQAAJVmAQC4hgAAAAAAALDEAADQZgEAyIYAAAAAAACIxAAABmcBALDEAAD2hAEAmIcAAAAAAACwxAAAqmcBAPiGAAAAAAAAiMQAAGBnAQCIxAAALmgBADwAAAAAAAAAGJQAAAcAAAAIAAAAxP///8T///8YlAAACQAAAAoAAACwxAAANWsBABiUAAAAAAAAsMQAAFx2AQBQhwAAAAAAAIjEAAAwdgEAiMQAALx2AQCwxAAAPHoBAFCHAAAAAAAAiMQAABB6AQCIxAAAG34BALDEAABbggEAkIcAAAAAAACIxAAAL4IBAIjEAAC7ggEAzMUAABKFAQAAAAAAAgAAAKB7AAACAAAAuIcAAAIQAACwxAAAZIUBAMiHAAAAAAAAsMQAAKSFAQDYhwAAAAAAAIjEAADfhQEAsMQAANqGAQDwhwAAAAAAAMzFAAD5hgEAAAAAAAIAAACgewAAAgAAABCIAAACEAAAsMQAAFmHAQAgiAAAAAAAALDEAACnhwEAMIgAAAAAAACwxAAA6ocBAECIAAAAAAAAiMQAACiIAQCwxAAAVogBAHCCAAAAAAAAsMQAAACLAQCgewAAAAAAALDEAAAYiwEAcIIAAAAAAACwxAAALYsBAHCCAAAAAAAAsMQAAAePAQDIiAAAAAAAAIjEAABGiwEAsMQAAGaOAQCwiAAAAAAAALDEAACMjgEAwIgAAAAAAACIxAAAyo4BAMzFAAAbjwEAAAAAAAIAAACgewAAAgAAAOiIAAACEAAAsMQAAHePAQD4iAAAAAAAALDEAADBjwEACIkAAAAAAACwxAAABpABABiJAAAAAAAAiMQAADuQAQCwxAAAXpABADCJAAAAAAAAzMUAAHaQAQAAAAAAAgAAAKB7AAACAAAAUIkAAAIQAACwxAAAxJABAGCJAAAAAAAAsMQAAACRAQBwiQAAAAAAAIjEAAA3kQEAsMQAAF6RAQCIiQAAAAAAAMzFAAB1kQEAAAAAAAIAAACgewAAAgAAAKiJAAACEAAAsMQAAM2RAQC4iQAAAAAAALDEAAATkgEAyIkAAAAAAACwxAAATpIBANiJAAAAAAAAiMQAAISSAQCwxAAATZMBAPCJAAAAAAAAzMUAAGaTAQAAAAAAAgAAAKB7AAACAAAAEIoAAAIQAACwxAAAtZMBACCKAAAAAAAAsMQAAPKTAQAwigAAAAAAAIjEAAAqlAEAsMQAAJCWAQBoigAAAAAAALDEAADHlQEAYIoAAAAAAACIxAAAbZUBAIjEAABalgEAzMUAAK6WAQAAAAAAAgAAAKB7AAACAAAAiIoAAAIQAACwxAAAFJcBAJiKAAAAAAAAsMQAAGiXAQCoigAAAAAAALDEAAC3lwEAuIoAAAAAAACIxAAA9pcBALDEAAAomAEAoHsAAAAAAACwxAAAtZgBAOCKAAAAAAAAzMUAAMWYAQAAAAAAAgAAAKB7AAACAAAAAIsAAAIQAACwxAAAHZkBABCLAAAAAAAAsMQAAGOZAQAgiwAAAAAAALDEAACkmQEAMIsAAAAAAACIxAAA1ZkBALDEAADUmgEASIsAAAAAAADMxQAA6ZoBAAAAAAACAAAAoHsAAAIAAABoiwAAAhAAALDEAABGmwEAeIsAAAAAAACwxAAAkZsBAIiLAAAAAAAAsMQAANebAQCYiwAAAAAAAIjEAAANnAEAsMQAAIicAQCwiwAAAAAAAMzFAACdnAEAAAAAAAIAAACgewAAAgAAANCLAAACEAAAsMQAAOicAQDgiwAAAAAAALDEAAAhnQEA8IsAAAAAAACIxAAAVZ0BALDEAAB5nQEAoHsAAAAAAACwxAAAlp0BABiMAAAAAAAAzMUAALCdAQAAAAAAAgAAAKB7AAACAAAAOIwAAAIQAACwxAAAAJ4BAEiMAAAAAAAAsMQAAD6eAQBYjAAAAAAAAIjEAAB3ngEAsMQAALSeAQBwjAAAAAAAAMzFAADOngEAAAAAAAIAAACgewAAAgAAAJCMAAACEAAAsMQAAB6fAQCgjAAAAAAAALDEAABcnwEAsIwAAAAAAACIxAAAlZ8BALDEAACCpwEACI0AAAAAAACwxAAASaQBAOCMAAAAAAAAiMQAAMOjAQCIxAAA/6QBALDEAADmpQEAAI0AAAAAAACIxAAAcqUBAIjEAACKpgEAzMUAAJynAQAAAAAAAgAAAKB7AAACAAAAKI0AAAIQAACwxAAA7KcBADiNAAAAAAAAsMQAACqoAQBIjQAAAAAAAIjEAABjqAEAsMQAAI+oAQBgjQAAAAAAAMzFAAClqAEAAAAAAAIAAACgewAAAgAAAICNAAACEAAAsMQAAPGoAQCQjQAAAAAAALDEAAArqQEAoI0AAAAAAACIxAAAYKkBALDEAACFqQEAuI0AAAAAAADMxQAAlqkBAAAAAAACAAAAoHsAAAIAAADYjQAAAhAAALDEAADoqQEA6I0AAAAAAACwxAAAKKoBAPiNAAAAAAAAsMQAAF2qAQAIjgAAAAAAAIjEAACNqgEAsMQAAN+sAQCgewAAAAAAALDEAACtqgEAMI4AAAAAAADMxQAA+aoBAAAAAAACAAAAoHsAAAIAAABQjgAAAhAAALDEAAB7qwEAYI4AAAAAAACwxAAA66sBAHCOAAAAAAAAiMQAAFasAQCwxAAAza8BAKB7AAAAAAAAsMQAAL2tAQCYjgAAAAAAAMzFAADNrQEAAAAAAAIAAACgewAAAgAAALiOAAACEAAAsMQAABOuAQDIjgAAAAAAALDEAABHrgEA2I4AAAAAAACIxAAAdq4BALDEAAC0rgEA8I4AAAAAAADMxQAA0a4BAAAAAAACAAAAoHsAAAIAAAAQjwAAAhAAALDEAAAkrwEAII8AAAAAAACwxAAAZa8BADCPAAAAAAAAiMQAAKGvAQCwxAAAJLIBAEiPAAAAAAAAzMUAAD2yAQAAAAAAAgAAAKB7AAACAAAAaI8AAAIQAACwxAAAjLIBAHiPAAAAAAAAsMQAAMmyAQCIjwAAAAAAAIjEAAABswEAsMQAAGW1AQCgewAAAAAAALDEAADWswEAsI8AAAAAAADMxQAA+bMBAAAAAAACAAAAoHsAAAIAAADQjwAAAhAAALDEAABStAEA4I8AAAAAAACwxAAAmbQBAPCPAAAAAAAAiMQAANu0AQCwxAAAIbYBAAiQAAAAAAAAzMUAADG2AQAAAAAAAgAAAKB7AAACAAAAKJAAAAIQAACwxAAAlLYBADiQAAAAAAAAsMQAAOW2AQBIkAAAAAAAALDEAAArtwEAWJAAAAAAAACwxAAAbLcBAGiQAAAAAAAAiMQAAJ23AQCwxAAAK7gBAKB7AAAAAAAAsMQAAGa6AQCgewAAAAAAALDEAABEuAEAoJAAAAAAAADMxQAAXrgBAAAAAAACAAAAoHsAAAIAAADAkAAAAhAAALDEAACuuAEA0JAAAAAAAACwxAAA7LgBAOCQAAAAAAAAiMQAACW5AQCwxAAAZrkBAPiQAAAAAAAAzMUAAH65AQAAAAAAAgAAAKB7AAACAAAAGJEAAAIQAACwxAAAzLkBACiRAAAAAAAAsMQAAAi6AQA4kQAAAAAAAIjEAAA/ugEAsMQAAKi7AQBQkQAAAAAAAMzFAAC+uwEAAAAAAAIAAACgewAAAgAAAHCRAAACEAAAsMQAAAq8AQCAkQAAAAAAALDEAABEvAEAkJEAAAAAAACIxAAAebwBALDEAAAdvQEAqJEAAAAAAADMxQAAOr0BAAAAAAACAAAAoHsAAAIAAADIkQAAAhAAALDEAACNvQEA2JEAAAAAAACwxAAAzr0BAOiRAAAAAAAAiMQAAAq+AQCwxAAANr4BAACSAAAAAAAAzMUAAE2+AQAAAAAAAgAAAKB7AAACAAAAIJIAAAIQAACwxAAAmr4BADCSAAAAAAAAsMQAANW+AQBAkgAAAAAAAIjEAAALvwEAsMQAAO2/AQBYkgAAAAAAAMzFAAACwAEAAAAAAAIAAACgewAAAgAAAHiSAAACEAAAsMQAAFTAAQCIkgAAAAAAALDEAACUwAEAmJIAAAAAAACwxAAAzcABAKiSAAAAAAAAiMQAAAHBAQCwxAAAuMEBAMCSAAAAAAAAzMUAAM3BAQAAAAAAAgAAAKB7AAACAAAA4JIAAAIQAACwxAAAGMIBAPCSAAAAAAAAsMQAAFHCAQAAkwAAAAAAAIjEAACFwgEAsMQAAMjGAQAYkwAAAAAAALDEAAD6xAEAKJMAAAAAAADMxQAAEsUBAAAAAAACAAAAoHsAAAIAAABIkwAAAhAAALDEAABkxQEAWJMAAAAAAACwxAAApMUBAGiTAAAAAAAAsMQAAOvFAQB4kwAAAAAAALDEAAAuxgEAiJMAAAAAAACwxAAAasYBAJiTAAAAAAAAiMQAAKHGAQCwxAAARMcBAMiTAAAAAAAAlMUAACHHAQAAAAAAwJMAALDFAAAzxwEAiMQAAInHAQCwxAAAq9ABAMCZAAAAAAAAsMQAAO/QAQDwkwAAAAAAAIjEAADd0AEAsMQAABnRAQDwkwAAAAAAAIjEAABD0QEAiMQAAHTRAQDMxQAApdEBAAAAAAABAAAA4JMAAAP0///MxQAA1NEBAAAAAAABAAAA+JMAAAP0///MxQAAA9IBAAAAAAABAAAA4JMAAAP0///MxQAAMtIBAAAAAAABAAAA+JMAAAP0///MxQAAYdIBAAMAAAACAAAAGJQAAAIAAABIlAAAAggAALDEAAC+0gEAiJkAAAAAAACwxAAA3NIBALCZAAAAAAAAsMQAAAbTAQAQlAAAAAAAALDEAAAf0wEACJQAAAAAAACwxAAAXtMBABCUAAAAAAAAsMQAAHbTAQAIlAAAAAAAALDEAACO0wEACJUAAAAAAACwxAAAotMBAFiZAAAAAAAAsMQAALjTAQAIlQAAAAAAAMzFAADR0wEAAAAAAAIAAAAIlQAAAgAAAEiVAAAAAAAAzMUAABXUAQAAAAAAAQAAAGCVAAAAAAAAiMQAACvUAQDMxQAARNQBAAAAAAACAAAACJUAAAIAAACIlQAAAAAAAMzFAACI1AEAAAAAAAEAAABglQAAAAAAAMzFAACs1AEAAAAAAAIAAAAIlQAAAgAAAMCVAAAAAAAAzMUAAPDUAQAAAAAAAQAAANiVAAAAAAAAiMQAAAbVAQDMxQAAH9UBAAAAAAACAAAACJUAAAIAAAAAlgAAAAAAAMzFAABj1QEAAAAAAAEAAADYlQAAAAAAAMzFAAC51gEAAAAAAAMAAAAIlQAAAgAAAECWAAACAAAASJYAAAAIAACIxAAAINcBAIjEAAD+1gEAzMUAADPXAQAAAAAAAwAAAAiVAAACAAAAQJYAAAIAAAB4lgAAAAgAAIjEAAB41wEAzMUAAJrXAQAAAAAAAgAAAAiVAAACAAAAoJYAAAAIAACIxAAA39cBAMzFAAAJ2AEAAAAAAAIAAAAIlQAAAgAAAKCWAAAACAAAzMUAAE7YAQAAAAAAAgAAAAiVAAACAAAA6JYAAAIAAACIxAAAatgBAMzFAAB/2AEAAAAAAAIAAAAIlQAAAgAAAOiWAAACAAAAzMUAAJvYAQAAAAAAAgAAAAiVAAACAAAA6JYAAAIAAADMxQAAt9gBAAAAAAACAAAACJUAAAIAAADolgAAAgAAAMzFAADy2AEAAAAAAAIAAAAIlQAAAgAAAHCXAAAAAAAAiMQAADjZAQDMxQAAXNkBAAAAAAACAAAACJUAAAIAAACYlwAAAAAAAIjEAACi2QEAzMUAAMHZAQAAAAAAAgAAAAiVAAACAAAAwJcAAAAAAACIxAAAB9oBAMzFAAAg2gEAAAAAAAIAAAAIlQAAAgAAAOiXAAAAAAAAiMQAAGbaAQDMxQAAf9oBAAAAAAACAAAACJUAAAIAAAAQmAAAAgAAAIjEAACU2gEAzMUAACvbAQAAAAAAAgAAAAiVAAACAAAAEJgAAAIAAACwxAAArNoBAEiYAAAAAAAAzMUAAM/aAQAAAAAAAgAAAAiVAAACAAAAaJgAAAIAAACIxAAA8toBALDEAAAJ2wEASJgAAAAAAADMxQAAQNsBAAAAAAACAAAACJUAAAIAAABomAAAAgAAAMzFAABi2wEAAAAAAAIAAAAIlQAAAgAAAGiYAAACAAAAzMUAAITbAQAAAAAAAgAAAAiVAAACAAAAaJgAAAIAAACwxAAAp9sBAAiVAAAAAAAAzMUAAL3bAQAAAAAAAgAAAAiVAAACAAAAEJkAAAIAAACIxAAAz9sBAMzFAADk2wEAAAAAAAIAAAAIlQAAAgAAABCZAAACAAAAsMQAAPbbAQAIlQAAAAAAALDEAAAL3AEACJUAAAAAAACIxAAAINwBAMzFAAA53AEAAAAAAAEAAABYmQAAAAAAALDEAAAd3QEAiJkAAAAAAACwxAAAQN0BAJiZAAAAAAAAiMQAAFfdAQCwxAAAmd0BAIiZAAAAAAAAsMQAALvdAQAgmgAAAAAAAIjEAACB3gEAsMQAAOHeAQDYmQAAAAAAALDEAACO3gEA6JkAAAAAAACIxAAAr94BALDEAAC83gEAyJkAAAAAAACwxAAABOABAMCZAAAAAAAAsMQAABHgAQDAmQAAAAAAALDEAAAh4AEAwJkAAAAAAACwxAAAM+ABABCaAAAAAAAAsMQAAEjgAQAQmgAAAAAAALDEAABZ4AEAEJoAAAAAAACwxAAAauABACCaAAAAAAAAsMQAAIvgAQDAmQAAAAAAALDEAAC74AEA2JkAAAAAAACwxAAAl+ABAICaAAAAAAAAsMQAAN3gAQDYmQAAAAAAAHjFAAAmWQEAeMUAAAXhAQCwxAAACOEBANiZAAAAAAAAsMQAAC3hAQDImQAAAAAAAAAAAAD4egAAAQAAAAIAAAABAAAAAQAAAAMAAAABAAAAAgAAAAMAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAQAAAAFAAAABgAAAAQAAAAAAAAA8HoAAAcAAAABAAAAAQAAAAEAAAABAAAAAQAAAAUAAAAGAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAEAAAABQAAAAYAAAAEAAAAAAAAACB7AAACAAAAAAAAABB7AAACAAAAAAAAAEh7AAADAAAAAAAAADh7AAAEAAAAQAAAAAAAAACAewAAAQAAAAIAAAA4AAAA+P///4B7AAADAAAABAAAAMD////A////gHsAAAUAAAAGAAAAAAAAAJB7AAALAAAADAAAAAUAAAABAAAAAgAAAAcAAAABAAAAAgAAAAIAAAADAAAABAAAAAkAAAADAAAACgAAAAAAAADwewAADQAAAA4AAAAIAAAACQAAAAgAAAAFAAAABgAAAAcAAAAAAAAA0HsAAA0AAAAPAAAACAAAAAkAAAAIAAAACAAAAAkAAAAHAAAAAAAAAKB7AAAQAAAAEQAAAAgAAAAKAAAACQAAAAgAAAAJAAAABwAAAAAAAAAIfAAAEgAAABMAAAAKAAAABgAAABQAAAAVAAAABwAAAAsAAAALAAAAAAAAAHB8AAAWAAAAFwAAAAgAAAALAAAACgAAAAwAAAANAAAABwAAAAAAAABQfAAAFgAAABgAAAAIAAAACwAAAAoAAAAIAAAACQAAAAcAAAAAAAAAyHwAABkAAAAaAAAACAAAAAwAAAALAAAADgAAAA8AAAAHAAAAAAAAAKh8AAAbAAAAHAAAAAgAAAAMAAAACwAAAAgAAAAJAAAABwAAAAAAAAAofQAAHQAAAB4AAAAIAAAADQAAAAwAAAAQAAAAEQAAAAcAAAAAAAAACH0AAB0AAAAfAAAACAAAAA0AAAAMAAAACAAAAAkAAAAHAAAAAAAAAKB9AAAgAAAAIQAAAAgAAAAOAAAADQAAABIAAAATAAAABwAAAAAAAACAfQAAIAAAACIAAAAIAAAADgAAAA0AAAAIAAAACQAAAAcAAAAAAAAAuH0AACMAAAAkAAAAFAAAAAgAAAAlAAAAJgAAAAwAAAANAAAAFQAAAAAAAADgfQAAJwAAACgAAAAWAAAACQAAACkAAAAqAAAABAAAAA4AAAAXAAAAAAAAAPh9AAAnAAAAKwAAABgAAAAKAAAALAAAAC0AAAAFAAAADwAAABkAAAAAAAAAEH4AAC4AAAAvAAAACAAAAA8AAAAOAAAAGgAAABsAAAAHAAAAAAAAACB+AAAwAAAAMQAAAAgAAAAPAAAADgAAAAgAAAAJAAAABwAAAAAAAABofgAAMgAAADMAAAAIAAAAEAAAAA8AAAAcAAAAHQAAAAcAAAAAAAAAeH4AADIAAAA0AAAACAAAABAAAAAPAAAACAAAAAkAAAAHAAAAAAAAAMB+AAA1AAAANgAAAAgAAAARAAAAEAAAAB4AAAAfAAAABwAAAAAAAADQfgAANwAAADgAAAAIAAAAEQAAABAAAAAIAAAACQAAAAcAAAAAAAAAGH8AADkAAAA6AAAACAAAAAoAAAARAAAAIAAAACEAAAAHAAAAAAAAACh/AAA7AAAAPAAAAAgAAAASAAAAEgAAACIAAAAjAAAABwAAAAAAAAA4fwAAPQAAAD4AAAAIAAAAEgAAABIAAAAIAAAACQAAAAcAAAAAAAAAsH8AAD8AAABAAAAACAAAABMAAAATAAAACAAAAAkAAAAHAAAAAAAAAMB/AABBAAAAQgAAACQAAAALAAAAQwAAAEQAAAAGAAAAEAAAACUAAAAAAAAA4H8AAD8AAABFAAAACAAAABMAAAATAAAACAAAAAkAAAAHAAAAAAAAACiAAABGAAAARwAAAAgAAAAUAAAAFAAAACYAAAAnAAAABwAAAAAAAAA4gAAASAAAAEkAAABKAAAAEQAAAEsAAAAAAAAASIAAAEwAAABNAAAACAAAABQAAAAUAAAACAAAAAkAAAAHAAAAAAAAAKCAAABOAAAATwAAAAgAAAAVAAAAFQAAACgAAAApAAAABwAAAAAAAACwgAAAUAAAAFEAAAAIAAAAFQAAABUAAAAIAAAACQAAAAcAAAAAAAAACIEAAFIAAABTAAAACAAAABYAAAAWAAAAKgAAACsAAAAHAAAAAAAAABiBAABUAAAAVQAAAAgAAAAWAAAAFgAAAAgAAAAJAAAABwAAAAAAAABwgQAAVgAAAFcAAAAIAAAAFwAAABcAAAAsAAAALQAAAAcAAAAAAAAAgIEAAFgAAABZAAAACAAAABcAAAAXAAAACAAAAAkAAAAHAAAAAAAAANiBAABaAAAAWwAAAAgAAAAYAAAAGAAAAC4AAAAvAAAABwAAAAAAAADogQAAXAAAAF0AAAAIAAAAGAAAABgAAAAIAAAACQAAAAcAAAAAAAAAQIIAABAAAABeAAAACAAAABkAAAAJAAAACAAAAAkAAAAHAAAAAQAAAAIAAAADAAAABAAAAAEAAAACAAAABAAAAAgAAAABAAAAAgAAAAQAAAAIAAAAAQAAAAIAAAADAAAABAAAAAEAAAACAAAABAAAAAgAAAABAAAAAgAAAAQAAAAIAAAAAAAAAFCCAABfAAAAYAAAADAAAAAMAAAAYQAAAGIAAAAxAAAAEgAAADIAAAAAAAAAcIIAABAAAABjAAAACAAAABoAAAAJAAAACAAAAAkAAAAzAAAAOAAAAAAAAACoggAAaAAAAGkAAADI////yP///6iCAABqAAAAawAAAAAAAAC4ggAAbAAAAG0AAAAIAAAAGwAAABkAAAA0AAAANQAAADYAAAAAAAAAyIIAAG4AAABvAAAACAAAABsAAAAZAAAACAAAAAkAAAAHAAAAAAAAABCDAABwAAAAcQAAAA0AAAAHAAAAAwAAABoAAAA3AAAAAgAAAAIAAAA4AAAABAAAABMAAAADAAAAFAAAAGgAAAAAAAAASIMAAHIAAABzAAAAmP///5j///9IgwAAdAAAAHUAAAAAAAAAWIMAAHYAAAB3AAAACAAAABwAAAAbAAAAOQAAADoAAAAHAAAAAAAAAGiDAAB2AAAAeAAAAAgAAAAcAAAAGwAAAAgAAAAJAAAABwAAAAAAAACwgwAAeQAAAHoAAAAIAAAAHQAAABwAAAA7AAAAPAAAAAcAAAAAAAAAwIMAAHsAAAB8AAAACAAAAB0AAAAcAAAACAAAAAkAAAAHAAAAAAAAACiEAAB9AAAAfgAAAAgAAAAKAAAAHQAAAD0AAAA+AAAABwAAAAAAAAA4hAAAfwAAAIAAAAAIAAAAAAAAAEiEAACBAAAAggAAAAEAAAAAAAAAUIQAAIMAAACEAAAACQAAAAAAAABghAAAgQAAAIUAAAAKAAAAAAAAAHCEAACGAAAAhwAAAIgAAAAVAAAAiQAAAAAAAACAhAAAigAAAAAAAACQhAAAhgAAAIsAAACMAAAAEQAAAI0AAAAAAAAAuIQAAIYAAACOAAAAjwAAABEAAACQAAAAAAAAAKCEAACRAAAAAAAAANiEAACGAAAAkgAAAJMAAAARAAAAlAAAAAAAAADIhAAAlQAAAAAAAACwhAAAlgAAAAAAAADohAAAlwAAAJgAAAAIAAAAHgAAAB4AAAA/AAAAQAAAAAcAAAAAAAAA+IQAAJkAAACaAAAACAAAAB4AAAAeAAAACAAAAAkAAAAHAAAAAAAAAECFAAAQAAAAmwAAAAgAAAAfAAAACQAAAAgAAAAJAAAABwAAAAAAAABQhQAAnAAAAJ0AAAAIAAAAIAAAAB8AAABBAAAAQgAAAAcAAAAAAAAAYIUAAJwAAACeAAAACAAAACAAAAAfAAAACAAAAAkAAAAHAAAAAAAAAKiFAACfAAAAoAAAAAgAAAAhAAAAIAAAAEMAAABEAAAABwAAAAAAAAC4hQAAoQAAAKIAAAAIAAAAIQAAACAAAAAIAAAACQAAAAcAAAAAAAAAAIYAABAAAACjAAAACAAAACIAAAAJAAAACAAAAAkAAAAHAAAAAAAAABCGAACkAAAApQAAAAgAAAAjAAAAIQAAAEUAAABGAAAABwAAAAAAAAAghgAApgAAAKcAAAAIAAAAIwAAACEAAAAIAAAACQAAAAcAAAAAAAAAaIYAABAAAACoAAAACAAAACQAAAAJAAAACAAAAAkAAAAHAAAAAAAAAHiGAACpAAAAqgAAAAgAAAAlAAAAIgAAAAgAAAAJAAAABwAAAAAAAACIhgAAqQAAAKsAAAAIAAAAJQAAACIAAAAIAAAACQAAAAcAAAAAAAAA0IYAAKwAAACtAAAACAAAACYAAAAjAAAARwAAAEgAAAAHAAAAAAAAAOCGAACuAAAArwAAAEkAAAAOAAAAsAAAALEAAAAWAAAAFwAAAEoAAAA8AAAAAAAAACiHAACyAAAAswAAAMT////E////KIcAALQAAAC1AAAAAAAAADiHAAC2AAAAtwAAAEsAAAAPAAAAuAAAALkAAABMAAAAGAAAAE0AAAAAAAAAWIcAALYAAAC6AAAATgAAABAAAAC7AAAAvAAAAE8AAAAZAAAAUAAAAAAAAAB4hwAAvQAAAL4AAABRAAAAEQAAAL8AAADAAAAAUgAAABoAAABTAAAAAAAAAJiHAADBAAAAwgAAAAgAAAAmAAAAIwAAAAgAAAAJAAAABwAAAAAAAADghwAAwwAAAMQAAAAIAAAAJwAAACQAAABUAAAAVQAAAAcAAAAAAAAA8IcAAMUAAADGAAAACAAAACcAAAAkAAAACAAAAAkAAAAHAAAAAAAAAEiIAAAQAAAAxwAAAAgAAAAoAAAACQAAAAgAAAAJAAAAMwAAAAAAAABYiAAAEAAAAMgAAAAIAAAAKQAAAAkAAAAIAAAACQAAAFYAAAAAAAAAaIgAABAAAADJAAAACAAAACoAAAAJAAAACAAAAAkAAAAzAAAAAAAAAHiIAAAQAAAAygAAAAgAAAArAAAACQAAAAgAAAAJAAAAMwAAAAAAAACIiAAAywAAAMwAAAAIAAAALAAAACUAAABXAAAAWAAAAAcAAAAAAAAAoIgAABIAAAAAAAAAsIgAABMAAAAAAAAAyIgAAM0AAADOAAAACAAAACwAAAAlAAAACAAAAAkAAAAHAAAAAAAAACCJAADPAAAA0AAAAAgAAAAtAAAAJgAAAFkAAABaAAAABwAAAAAAAAAwiQAAzwAAANEAAAAIAAAALQAAACYAAAAIAAAACQAAAAcAAAAAAAAAeIkAANIAAADTAAAACAAAAC4AAAAnAAAAWwAAAFwAAAAHAAAAAAAAAIiJAADUAAAA1QAAAAgAAAAuAAAAJwAAAAgAAAAJAAAABwAAAAAAAADgiQAA1gAAANcAAAAIAAAALwAAACgAAABdAAAAXgAAAF8AAAAAAAAA8IkAANYAAADYAAAACAAAAC8AAAAoAAAACAAAAAkAAAAHAAAAAAAAADiKAADZAAAA2gAAADAAAAAxAAAAKQAAAGAAAABhAAAABwAAAAAAAABIigAA2wAAANwAAABiAAAAFAAAAN0AAADeAAAAMgAAABsAAABjAAAAAAAAAGiKAADfAAAA4AAAAAgAAAAxAAAAKQAAAAgAAAAJAAAABwAAAAAAAADAigAAEAAAAOEAAAAIAAAAMwAAAAkAAAAIAAAACQAAAAcAAAAAAAAA0IoAAOIAAADjAAAACAAAADQAAAAqAAAACAAAAAkAAABkAAAAAAAAAOCKAADkAAAA5QAAAAgAAAA0AAAAKgAAAAgAAAAJAAAABwAAAAAAAAA4iwAA5gAAAOcAAAAIAAAANQAAACsAAABlAAAAZgAAAAcAAAAAAAAASIsAAOgAAADpAAAACAAAADUAAAArAAAACAAAAAkAAAAHAAAAAAAAAKCLAADqAAAA6wAAAAgAAAA2AAAALAAAAGcAAABoAAAABwAAAAAAAACwiwAA6gAAAOwAAAAIAAAANgAAACwAAAAIAAAACQAAAAcAAAAAAAAA+IsAABAAAADtAAAACAAAADcAAAAJAAAACAAAAAkAAABpAAAAAAAAAAiMAADuAAAA7wAAAAgAAAA4AAAALQAAAAgAAAAJAAAABwAAAAAAAAAYjAAA7gAAAPAAAAAIAAAAOAAAAC0AAAAIAAAACQAAAAcAAAAAAAAAYIwAAPEAAADyAAAACAAAADkAAAAuAAAACAAAAAkAAAAHAAAAAAAAAHCMAADxAAAA8wAAAAgAAAA5AAAALgAAAAgAAAAJAAAABwAAAAAAAAC4jAAA9AAAAPUAAAAIAAAAOgAAAC8AAABqAAAAawAAAAcAAAAAAAAAyIwAAPYAAAD3AAAAbAAAABUAAAD4AAAA+QAAAAsAAAAcAAAAbQAAAAAAAADojAAA+gAAAPsAAABuAAAAFgAAAPwAAAD9AAAADAAAAB0AAABvAAAAAAAAAAiNAAD+AAAA/wAAAAgAAAA6AAAALwAAAAgAAAAJAAAABwAAAAAAAABQjQAAAAEAAAEBAAAIAAAAOwAAADAAAAAIAAAACQAAAAcAAAAAAAAAYI0AAAABAAACAQAACAAAADsAAAAwAAAACAAAAAkAAAAHAAAAAAAAAKiNAAADAQAABAEAAAgAAAA8AAAAMQAAAHAAAABxAAAABwAAAAAAAAC4jQAABQEAAAYBAAAIAAAAPAAAADEAAAAIAAAACQAAAAcAAAAAAAAAEI4AAAcBAAAIAQAACAAAAD0AAAAJAAAACAAAAAkAAAAHAAAAAAAAACCOAAAJAQAACgEAAAgAAAA+AAAAMgAAAHIAAABzAAAABwAAAAAAAAAwjgAACQEAAAsBAAAIAAAAPgAAADIAAAAIAAAACQAAAAcAAAAAAAAAeI4AAAwBAAANAQAACAAAAD8AAAAJAAAACAAAAAkAAAAHAAAAAAAAAIiOAAAOAQAADwEAAAgAAABAAAAAMwAAAHQAAAB1AAAABwAAAAAAAACYjgAADgEAABABAAAIAAAAQAAAADMAAAAIAAAACQAAAAcAAAAAAAAA4I4AABEBAAASAQAACAAAAEEAAAA0AAAAdgAAAHcAAAAHAAAAAAAAAPCOAAARAQAAEwEAAAgAAABBAAAANAAAAAgAAAAJAAAABwAAAAAAAAA4jwAAFAEAABUBAAAIAAAAQgAAADUAAAB4AAAAeQAAAHoAAAAAAAAASI8AABQBAAAWAQAACAAAAEIAAAA1AAAACAAAAAkAAAAHAAAAAAAAAJCPAAAQAAAAFwEAAAgAAABDAAAACQAAAAgAAAAJAAAABwAAAAAAAACgjwAAGAEAABkBAAAIAAAARAAAADYAAAB7AAAAfAAAAAcAAAAAAAAAsI8AABgBAAAaAQAACAAAAEQAAAA2AAAACAAAAAkAAAAHAAAAAAAAAPiPAAAbAQAAHAEAAAgAAABFAAAANwAAAH0AAAB+AAAABwAAAAAAAAAIkAAAHQEAAB4BAAAIAAAARQAAADcAAAAIAAAACQAAAAcAAAAAAAAAcJAAABAAAAAfAQAACAAAAEYAAAAJAAAACAAAAAkAAAAHAAAAAAAAAICQAAAQAAAAIAEAAAgAAABHAAAACQAAAAgAAAAJAAAABwAAAAAAAACQkAAAIQEAACIBAAAIAAAASAAAADgAAAB/AAAAgAAAAAcAAAAAAAAAoJAAACEBAAAjAQAACAAAAEgAAAA4AAAACAAAAAkAAAAHAAAAAAAAAOiQAAAkAQAAJQEAAAgAAABJAAAAOQAAAIEAAACCAAAABwAAAAAAAAD4kAAAJAEAACYBAAAIAAAASQAAADkAAAAIAAAACQAAAAcAAAAAAAAAQJEAACcBAAAoAQAACAAAAEoAAAA6AAAAgwAAAIQAAAAHAAAAAAAAAFCRAAApAQAAKgEAAAgAAABKAAAAOgAAAAgAAAAJAAAABwAAAAAAAACYkQAAKwEAACwBAAAIAAAASwAAADsAAACFAAAAhgAAAAcAAAAAAAAAqJEAAC0BAAAuAQAACAAAAEsAAAA7AAAACAAAAAkAAAAHAAAAAAAAAPCRAAAvAQAAMAEAAAgAAABMAAAAPAAAAIcAAACIAAAABwAAAAAAAAAAkgAAMQEAADIBAAAIAAAATAAAADwAAAAIAAAACQAAAAcAAAAAAAAASJIAADMBAAA0AQAACAAAAE0AAAA9AAAAiQAAAIoAAAAHAAAAAAAAAFiSAAA1AQAANgEAAAgAAABNAAAAPQAAAAgAAAAJAAAABwAAAAAAAACwkgAANwEAADgBAAAIAAAATgAAAD4AAACLAAAAjAAAAAcAAAAAAAAAwJIAADkBAAA6AQAACAAAAE4AAAA+AAAACAAAAAkAAAAHAAAAAAAAAAiTAAA7AQAAPAEAAAgAAABPAAAAPwAAAI0AAACOAAAABwAAABcAAAAAAAAAGJMAADsBAAA9AQAACAAAAE8AAAA/AAAAjQAAAI8AAAAHAAAAGAAAAAAAAAAokwAAPgEAAD8BAAAIAAAATwAAAD8AAAAIAAAACQAAAAcAAAAAAAAAoJMAAEABAABBAQAAkAAAABkAAABCAQAAQwEAAJEAAAAeAAAAkgAAAIBdAAAUAAAAQy5VVEYtOAAAAAAAAAAAAAAAAABItAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAACTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAAAADgAAAKkQAgAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAAAAAAAAAAAkwAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAA4AAADI8AEAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAJMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAOAAAA2PQBAAAEAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAr/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0tQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACICgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF9wiQD/CS8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQkwAARAEAAEUBAACUAAAAAAAAAPCTAABGAQAARwEAAAAAAAAIlAAASAEAAEkBAAAFAAAAAQAAAAQAAABAAAAAAQAAAAIAAAACAAAAlQAAAAQAAAAfAAAAAwAAACAAAAAAAAAAEJQAAEoBAABLAQAAGgAAABIAAAAFAAAAQQAAAJYAAACXAAAAEwAAAJgAAACZAAAAIQAAABQAAAAiAAAACAAAAAAAAAAYlAAABwAAAAgAAAD4////+P///xiUAAAJAAAACgAAAAgAAAAAAAAAMJQAAEwBAABNAQAA+P////j///8wlAAATgEAAE8BAAAEAAAAAAAAAGCUAABQAQAAUQEAAPz////8////YJQAAFIBAABTAQAAAAAAAJiUAABUAQAAVQEAAJoAAABQAAAAFQAAABYAAABRAAAAAAAAAKiUAABWAQAAVwEAAJsAAACQuAAAAAAAALiUAABKAQAAWAEAABsAAAASAAAABQAAAEEAAACcAAAAlwAAABMAAACYAAAAmQAAACEAAAAXAAAAIwAAAAAAAADIlAAASAEAAFkBAAAcAAAAAQAAAAQAAABAAAAAnQAAAAIAAAACAAAAlQAAAAQAAAAfAAAAGAAAACQAAAAAAAAA2JQAAEoBAABaAQAAHQAAABIAAAAFAAAAQQAAAJYAAACXAAAAEwAAAJ4AAACfAAAAJQAAABQAAAAiAAAAAAAAAOiUAABIAQAAWwEAAB4AAAABAAAABAAAAEAAAAABAAAAAgAAAAIAAACgAAAAoQAAACYAAAADAAAAIAAAAAAAAAD4lAAAXAEAAF0BAABeAQAAAQAAAEIAAAAZAAAAAAAAABiVAABfAQAAYAEAAF4BAAACAAAAQwAAABoAAAAAAAAAKJUAAGEBAABiAQAAXgEAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAAAAAAAGiVAABjAQAAZAEAAF4BAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAAAAAAACglQAAZQEAAGYBAABeAQAAAwAAAAQAAAAXAAAABQAAABgAAAABAAAAAgAAAAYAAAAAAAAA4JUAAGcBAABoAQAAXgEAAAcAAAAIAAAAGQAAAAkAAAAaAAAAAwAAAAQAAAAKAAAAAAAAABiWAABpAQAAagEAAF4BAACiAAAAGwAAABwAAAAdAAAAHgAAAB8AAAABAAAA+P///xiWAACjAAAApAAAAKUAAACmAAAApwAAAKgAAACpAAAAAAAAAFCWAABrAQAAbAEAAF4BAACqAAAAIAAAACEAAAAiAAAAIwAAACQAAAACAAAA+P///1CWAACrAAAArAAAAK0AAACuAAAArwAAALAAAACxAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAAAAAAJQAAAG0AAAAvAAAAJQAAAGQAAAAvAAAAJQAAAHkAAAAAAAAAJQAAAEkAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAHAAAAAAAAAAJQAAAGEAAAAgAAAAJQAAAGIAAAAgAAAAJQAAAGQAAAAgAAAAJQAAAEgAAAA6AAAAJQAAAE0AAAA6AAAAJQAAAFMAAAAgAAAAJQAAAFkAAAAAAAAAQQAAAE0AAAAAAAAAUAAAAE0AAAAAAAAASgAAAGEAAABuAAAAdQAAAGEAAAByAAAAeQAAAAAAAABGAAAAZQAAAGIAAAByAAAAdQAAAGEAAAByAAAAeQAAAAAAAABNAAAAYQAAAHIAAABjAAAAaAAAAAAAAABBAAAAcAAAAHIAAABpAAAAbAAAAAAAAABNAAAAYQAAAHkAAAAAAAAASgAAAHUAAABuAAAAZQAAAAAAAABKAAAAdQAAAGwAAAB5AAAAAAAAAEEAAAB1AAAAZwAAAHUAAABzAAAAdAAAAAAAAABTAAAAZQAAAHAAAAB0AAAAZQAAAG0AAABiAAAAZQAAAHIAAAAAAAAATwAAAGMAAAB0AAAAbwAAAGIAAABlAAAAcgAAAAAAAABOAAAAbwAAAHYAAABlAAAAbQAAAGIAAABlAAAAcgAAAAAAAABEAAAAZQAAAGMAAABlAAAAbQAAAGIAAABlAAAAcgAAAAAAAABKAAAAYQAAAG4AAAAAAAAARgAAAGUAAABiAAAAAAAAAE0AAABhAAAAcgAAAAAAAABBAAAAcAAAAHIAAAAAAAAASgAAAHUAAABuAAAAAAAAAEoAAAB1AAAAbAAAAAAAAABBAAAAdQAAAGcAAAAAAAAAUwAAAGUAAABwAAAAAAAAAE8AAABjAAAAdAAAAAAAAABOAAAAbwAAAHYAAAAAAAAARAAAAGUAAABjAAAAAAAAAFMAAAB1AAAAbgAAAGQAAABhAAAAeQAAAAAAAABNAAAAbwAAAG4AAABkAAAAYQAAAHkAAAAAAAAAVAAAAHUAAABlAAAAcwAAAGQAAABhAAAAeQAAAAAAAABXAAAAZQAAAGQAAABuAAAAZQAAAHMAAABkAAAAYQAAAHkAAAAAAAAAVAAAAGgAAAB1AAAAcgAAAHMAAABkAAAAYQAAAHkAAAAAAAAARgAAAHIAAABpAAAAZAAAAGEAAAB5AAAAAAAAAFMAAABhAAAAdAAAAHUAAAByAAAAZAAAAGEAAAB5AAAAAAAAAFMAAAB1AAAAbgAAAAAAAABNAAAAbwAAAG4AAAAAAAAAVAAAAHUAAABlAAAAAAAAAFcAAABlAAAAZAAAAAAAAABUAAAAaAAAAHUAAAAAAAAARgAAAHIAAABpAAAAAAAAAFMAAABhAAAAdAAAAAAAAAAAAAAAgJYAAG0BAABuAQAAXgEAAAEAAAAAAAAAqJYAAG8BAABwAQAAXgEAAAIAAAAAAAAAyJYAAHEBAAByAQAAXgEAALIAAACzAAAAHwAAACAAAAAhAAAAIgAAALQAAAAjAAAAJAAAAAAAAADwlgAAcwEAAHQBAABeAQAAtQAAALYAAAAlAAAAJgAAACcAAAAoAAAAtwAAACkAAAAqAAAAAAAAABCXAAB1AQAAdgEAAF4BAAC4AAAAuQAAACsAAAAsAAAALQAAAC4AAAC6AAAALwAAADAAAAAAAAAAMJcAAHcBAAB4AQAAXgEAALsAAAC8AAAAMQAAADIAAAAzAAAANAAAAL0AAAA1AAAANgAAAAAAAABQlwAAeQEAAHoBAABeAQAAAwAAAAQAAAAAAAAAeJcAAHsBAAB8AQAAXgEAAAUAAAAGAAAAAAAAAKCXAAB9AQAAfgEAAF4BAAABAAAAJQAAAAAAAADIlwAAfwEAAIABAABeAQAAAgAAACYAAAAAAAAA8JcAAIEBAACCAQAAXgEAABsAAAAGAAAANwAAAAAAAAAYmAAAgwEAAIQBAABeAQAAHAAAAAcAAAA4AAAAAAAAAHCYAACFAQAAhgEAAF4BAAADAAAABAAAAAsAAAC+AAAAvwAAAAwAAADAAAAAAAAAADiYAACFAQAAhwEAAF4BAAADAAAABAAAAAsAAAC+AAAAvwAAAAwAAADAAAAAAAAAAKCYAACIAQAAiQEAAF4BAAAFAAAABgAAAA0AAADBAAAAwgAAAA4AAADDAAAAAAAAAOCYAACKAQAAiwEAAF4BAAAAAAAA8JgAAIwBAACNAQAAXgEAACcAAAAdAAAAKAAAAB4AAAApAAAAAQAAAB8AAAAPAAAAAAAAADiZAACOAQAAjwEAAF4BAADEAAAAxQAAADkAAAA6AAAAOwAAAAAAAABImQAAkAEAAJEBAABeAQAAxgAAAMcAAAA8AAAAPQAAAD4AAABmAAAAYQAAAGwAAABzAAAAZQAAAAAAAAB0AAAAcgAAAHUAAABlAAAAAAAAAAAAAAAIlQAAhQEAAJIBAABeAQAAAAAAABiZAACFAQAAkwEAAF4BAAAgAAAAAgAAAAMAAAAEAAAAKgAAACEAAAArAAAAIgAAACwAAAAFAAAAIwAAABAAAAAAAAAAgJgAAIUBAACUAQAAXgEAAAcAAAAIAAAAEQAAAMgAAADJAAAAEgAAAMoAAAAAAAAAwJgAAIUBAACVAQAAXgEAAAkAAAAKAAAAEwAAAMsAAADMAAAAFAAAAM0AAAAAAAAASJgAAIUBAACWAQAAXgEAAAMAAAAEAAAACwAAAL4AAAC/AAAADAAAAMAAAAAAAAAASJYAAKMAAACkAAAApQAAAKYAAACnAAAAqAAAAKkAAAAAAAAAeJYAAKsAAACsAAAArQAAAK4AAACvAAAAsAAAALEAAAAAAAAAeJkAAFQBAACXAQAAzgAAAFAAAAAVAAAAFgAAAFIAAAAAAAAAoJkAAFQBAACYAQAAzwAAAFMAAAAVAAAAFgAAAFQAAAAgxAAARMQAAAAAAACwmQAAmQEAAJoBAACbAAAAAgAAAAAAAADImQAAmwEAAJwBAACdAQAAngEAACQAAAAIAAAAAQAAAEQAAAAAAAAA8JkAAJsBAACfAQAAnQEAAJ4BAAAkAAAACQAAAAIAAABFAAAAAAAAAACaAACgAQAAoQEAANAAAAAAAAAAEJoAAKIBAACjAQAA0QAAAAAAAAAgmgAApAEAAKUBAACbAAAAAAAAADCaAACiAQAApgEAANEAAAAAAAAAQJoAAKIBAACnAQAA0QAAAAAAAABQmgAAogEAAKgBAADRAAAAAAAAAGCaAACkAQAAqQEAAJsAAAAAAAAAcJoAAKoBAACrAQAA0gAAAAAAAACgmgAAmwEAAKwBAACdAQAAngEAACUAAAAAAAAAkJoAAJsBAACtAQAAnQEAAJ4BAAAmAAAAAAAAAMCaAACbAQAArgEAAJ0BAACeAQAAJwAAAAAAAADQmgAAmwEAAK8BAACdAQAAngEAACQAAAAKAAAAAwAAAEYAAABpMzJfY3R0egBpMzJfY3Rwb3AAaTMyX2JjMmYAaTMyX2JjMmkAaTY0X2FkZABpNjRfc3ViAGk2NF9tdWwAaTY0X3VkaXYAaTY0X3NkaXYAaTY0X3VyZW0AaTY0X3NyZW0AaTY0X2FuZABpNjRfb3IAaTY0X3hvcgBpNjRfc2hsAGk2NF9hc2hyAGk2NF9sc2hyAGk2NF9lcQBpNjRfbmUAaTY0X3VsZQBpNjRfc2xlAGk2NF91Z2UAaTY0X3NnZQBpNjRfdWx0AGk2NF9zbHQAaTY0X3VndABpNjRfc2d0AGk2NF90cnVuYwBpNjRfc2V4dABpNjRfemV4dABpNjRfczJmAGk2NF9zMmQAaTY0X3UyZgBpNjRfdTJkAGk2NF9mMnMAaTY0X2QycwBpNjRfZjJ1AGk2NF9kMnUAaTY0X2JjMmQAaTY0X2JjMmkAaTY0X2N0dHoAaTY0X2N0bHoAaTY0X2N0cG9wAGYzMl9jb3B5c2lnbgBmNjRfY29weXNpZ24AbG9hZDEAbG9hZDIAbG9hZDQAbG9hZDgAbG9hZGYAbG9hZGQAc3RvcmUxAHN0b3JlMgBzdG9yZTQAc3RvcmU4AHN0b3JlZgBzdG9yZWQAZnRDYWxsXwBtZnRDYWxsXwBBdG9taWNzAGV4Y2hhbmdlAGNvbXBhcmVFeGNoYW5nZQBpNjRfYXRvbWljc19sb2FkAGk2NF9hdG9taWNzX3N0b3JlAGk2NF9hdG9taWNzX2FuZABpNjRfYXRvbWljc19vcgBpNjRfYXRvbWljc194b3IAaTY0X2F0b21pY3NfYWRkAGk2NF9hdG9taWNzX3N1YgBpNjRfYXRvbWljc19leGNoYW5nZQBpNjRfYXRvbWljc19jb21wYXJlRXhjaGFuZ2UAZW1zY3JpcHRlbl9kZWJ1Z2luZm8AYXN0WzBdID09IFRPUExFVkVMAC4vc3JjL2FzbTJ3YXNtLmgAcHJvY2Vzc0FzbQBhc21GdW5jdGlvblswXSA9PSBERUZVTgBib2R5WzBdWzBdID09IFNUUklORyAmJiAoYm9keVswXVsxXS0+Z2V0SVN0cmluZygpID09IElTdHJpbmcoInVzZSBhc20iKSB8fCBib2R5WzBdWzFdLT5nZXRJU3RyaW5nKCkgPT0gSVN0cmluZygiYWxtb3N0IGFzbSIpKQB2YWx1ZS0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVsxXSA9PSBPUiAmJiB2YWx1ZVszXS0+aXNOdW1iZXIoKSAmJiB2YWx1ZVszXS0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVsxXSA9PSBQTFVTAGltcG9ydC0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVsxXS0+aXNTdHJpbmcoKSAmJiB2YWx1ZVsxXSA9PSBNYXRoX2Zyb3VuZCAmJiB2YWx1ZVsyXVswXS0+aXNOdW1iZXIoKSAmJiB2YWx1ZVsyXVswXS0+Z2V0TnVtYmVyKCkgPT0gMAB2YWx1ZVswXSA9PSBDQUxMAGludmFsaWQgdmlldyBpbXBvcnQAY29uc3RydWN0b3ItPmlzU3RyaW5nKCkAaW52YWxpZCBzaG9ydCB2aWV3IGltcG9ydAB2aWV3cy5maW5kKG5hbWUpID09IHZpZXdzLmVuZCgpAGludmFsaWQgdmFyIGVsZW1lbnQAX2Vtc2NyaXB0ZW5fcmVwbGFjZV9tZW1vcnkAIXdhc20uZ2V0RnVuY3Rpb25Pck51bGwodmFsdWUpAHBhaXJbMV0tPmlzTnVtYmVyKCkAZXhwb3J0ZWQuY291bnQoa2V5KSA9PSAwAGR1cGxpY2F0ZSBmdW5jdGlvbjogACFmdW5jLT50eXBlLmlzKCkAeGwAeGgAeWwAeWgAeDY0AHk2NABhc20yd2FzbWluZyBmdW5jOiAAYnJlYWtTdGFjay5zaXplKCkgPT0gMCAmJiBjb250aW51ZVN0YWNrLnNpemUoKSA9PSAwAHByb2Nlc3NGdW5jdGlvbgBwYXJlbnRMYWJlbC5pc051bGwoKQBhc20gcGFyc2luZy4uLgoAInsgcmV0dXJuIE1vZHVsZVsncHJvdmlkZWRUb3RhbE1lbW9yeSddOyB9IgBFcnJvcjogcHJvdmlkZWQgbWVtb3J5IGlzIG5vdCBhIG11bHRpcGxlIG9mIHRoZSA2NGsgd2FzbSBwYWdlIHNpemUKAHdhc21pbmcuLi4KAHdhc20tcy1leHByZXNzaW9uIHBhcnNpbmcuLi4KAHdhc20tYmluYXJ5IHBhcnNpbmcuLi4KAGluc3RhbnRpYXRpbmcgbW9kdWxlOiAKAGdlbmVyYXRpbmcgZXhwb3J0cy4uLgoAeyBNb2R1bGVbJ2FzbUV4cG9ydHMnXSA9IHt9OyB9AHsgdmFyIG5hbWUgPSBQb2ludGVyX3N0cmluZ2lmeSgkMCk7IE1vZHVsZVsnYXNtRXhwb3J0cyddW25hbWVdID0gZnVuY3Rpb24oKSB7IE1vZHVsZVsndGVtcEFyZ3VtZW50cyddID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTsgTW9kdWxlWydfY2FsbF9mcm9tX2pzJ10oJDApOyByZXR1cm4gTW9kdWxlWyd0ZW1wUmV0dXJuJ107IH07IH0AeyB2YXIgbW9kID0gUG9pbnRlcl9zdHJpbmdpZnkoJDApOyB2YXIgYmFzZSA9IFBvaW50ZXJfc3RyaW5naWZ5KCQxKTsgdmFyIG5hbWUgPSBQb2ludGVyX3N0cmluZ2lmeSgkMik7IGFzc2VydChNb2R1bGVbJ2xvb2t1cEltcG9ydCddKG1vZCwgYmFzZSkgIT09IHVuZGVmaW5lZCwgJ2NoZWNraW5nIGltcG9ydCAnICsgbmFtZSArICcgPSAnICsgbW9kICsgJy4nICsgYmFzZSk7IH0AY3JlYXRpbmcgaW5zdGFuY2UuLi4KAHsgTW9kdWxlWydvdXRzaWRlJ11bJ2V4dHJhU3RhY2tUcmFjZSddID0gZnVuY3Rpb24oKSB7IHJldHVybiBQb2ludGVyX3N0cmluZ2lmeShNb2R1bGVbJ19pbnRlcnByZXRlcl9zdGFja190cmFjZSddKCkpOyB9OyB9AGNhbGxfZnJvbV9qcyAALi9zcmMvd2FzbS1qcy5jcHAAY2FsbF9mcm9tX2pzACJ7IHJldHVybiBNb2R1bGVbJ3RlbXBBcmd1bWVudHMnXS5sZW5ndGggfSIAeyByZXR1cm4gTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ11bJDBdIH0AY2FsbF9mcm9tX2pzIHJldHVybmluZyAAeyBNb2R1bGVbJ3RlbXBSZXR1cm4nXSA9IHVuZGVmaW5lZCB9AHsgTW9kdWxlWyd0ZW1wUmV0dXJuJ10gPSAkMCB9AHMALi9zcmMvZW1zY3JpcHRlbi1vcHRpbWl6ZXIvaXN0cmluZy5oAElTdHJpbmcAaXNTdHJpbmcoKQBnZXRJU3RyaW5nAGEgPD0gc3RkOjpudW1lcmljX2xpbWl0czxhZGRyZXNzX3Q+OjptYXgoKQAuL3NyYy93YXNtLmgAQWRkcmVzcwBpc0FycmF5KCkAc2l6ZQBpc051bWJlcigpAGdldE51bWJlcgBtYXBwZWRHbG9iYWxzLmZpbmQobmFtZSkgPT0gbWFwcGVkR2xvYmFscy5lbmQoKQBhbGxvY2F0ZUdsb2JhbABpbXBvcnRlZFswXSA9PSBET1QAbW9kdWxlWzFdLT5pc1N0cmluZygpAE1hdGhfaW11bC5pc051bGwoKQBNYXRoX2NsejMyLmlzTnVsbCgpAE1hdGhfZnJvdW5kLmlzTnVsbCgpAE1hdGhfYWJzLmlzTnVsbCgpAE1hdGhfZmxvb3IuaXNOdWxsKCkATWF0aF9jZWlsLmlzTnVsbCgpAE1hdGhfc3FydC5pc051bGwoKQBNYXRoX21heC5pc051bGwoKQBNYXRoX21pbi5pc051bGwoKQBBdG9taWNzX2xvYWQuaXNOdWxsKCkAQXRvbWljc19zdG9yZS5pc051bGwoKQBBdG9taWNzX2V4Y2hhbmdlLmlzTnVsbCgpAEF0b21pY3NfY29tcGFyZUV4Y2hhbmdlLmlzTnVsbCgpAEF0b21pY3NfYWRkLmlzTnVsbCgpAEF0b21pY3Nfc3ViLmlzTnVsbCgpAEF0b21pY3NfYW5kLmlzTnVsbCgpAEF0b21pY3Nfb3IuaXNOdWxsKCkAQXRvbWljc194b3IuaXNOdWxsKCkAbW9kdWxlLT5pc1N0cmluZygpAHRlbXBEb3VibGVQdHIuaXNOdWxsKCkAbGx2bV9jdHR6X2kzMi5pc051bGwoKQAkYXNtMndhc20kaW1wb3J0AGdldENTdHJpbmcAZm1vZChnZXROdW1iZXIoKSwgMSkgPT0gMABnZXRJbnRlZ2VyAGRvdWJsZShyZXQpID09IGdldE51bWJlcigpAGlzQ29uY3JldGVUeXBlKHZhbHVlLnR5cGUpAC4vc3JjL3dhc20tYnVpbGRlci5oAG1ha2VDb25zdABGYXRhbDogAG9wZXJhbmRzICYmIG9wZXJhbmRzLT5zaXplKCkgPT0gMQBnZXRCdWlsdGluRnVuY3Rpb25UeXBlAENvdWxkIG5vdCBmaW5kIHBhc3M6IABmdW5jLT5sb2NhbEluZGljZXMuc2l6ZSgpID09IGZ1bmMtPnBhcmFtcy5zaXplKCkAYWRkUGFyYW0AbmFtZS5pcygpAGFkZFZhcgBpc0NvbmNyZXRlVHlwZShyZXQtPnZhbHVlLT50eXBlKSA/IHJldC0+dmFsdWUtPnR5cGUgPT0gdHlwZSA6IHRydWUAbWFrZVN0b3JlAGFzbTJ3YXNtID09IG51bGxwdHIgJiYgc0V4cHJlc3Npb25QYXJzZXIgPT0gbnVsbHB0ciAmJiBzRXhwcmVzc2lvbldhc21CdWlsZGVyID09IG51bGxwdHIgJiYgaW5zdGFuY2UgPT0gbnVsbHB0cgBwcmVwYXJlMndhc20AInsgcmV0dXJuICEhTW9kdWxlWydvdXRzaWRlJ11bJ1dBU01fSlNfREVCVUcnXSB9IgAvLyBFTVNDUklQVEVOX1NUQVJUX0ZVTkNTAHJldHVybiB0cnVlOwBmdW5jdGlvbiAAc3Ryc3RyKGdyb3d0aEZ1bmNTdGFydCwgImZ1bmN0aW9uICIpID09IGdyb3d0aEZ1bmNTdGFydABwcm9jZXNzAGdyb3d0aEZ1bmNFbmQgPiBncm93dGhGdW5jU3RhcnQgKyA1ACh1bmtub3duKQBlcnJvciBpbiBoYW5kbGluZyBkZWJ1ZyBpbmZvAC8vQGxpbmUAIAoAIgoAYXNtJwBhc20iAAogdmFyIGVtc2NyaXB0ZW5fZGVidWdpbmZvID0gZW52LmVtc2NyaXB0ZW5fZGVidWdpbmZvOwBaMTFpbnN0YW50aWF0ZUUxOUpTRXh0ZXJuYWxJbnRlcmZhY2UATjR3YXNtMThNb2R1bGVJbnN0YW5jZUJhc2VJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMxXzRsZXNzSVMzX0VFTlMxXzlhbGxvY2F0b3JJTlMxXzRwYWlySUtTM19TNF9FRUVFRUVOU18xNE1vZHVsZUluc3RhbmNlRUUxN0V4dGVybmFsSW50ZXJmYWNlRQAuL3NyYy9saXRlcmFsLmgAZ2V0aTY0AHJlaW50ZXJwcmV0aTMyAHJlaW50ZXJwcmV0aTY0AGltcG9ydC0+a2luZCA9PSBFeHRlcm5hbEtpbmQ6Ok1lbW9yeQBpbml0AHsgTW9kdWxlWydhc21FeHBvcnRzJ11bJ21lbW9yeSddID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXSgnZW52JywgJ21lbW9yeScpOyB9AHsgTW9kdWxlWydhc21FeHBvcnRzJ11bJ21lbW9yeSddID0gTW9kdWxlWydvdXRzaWRlJ11bJ25ld0J1ZmZlciddID0gbmV3IEFycmF5QnVmZmVyKCQwKTsgfQB7IHZhciBzb3VyY2UgPSBNb2R1bGVbJ0hFQVA4J10uc3ViYXJyYXkoJDEsICQxICsgJDIpOyB2YXIgdGFyZ2V0ID0gbmV3IEludDhBcnJheShNb2R1bGVbJ2FzbUV4cG9ydHMnXVsnbWVtb3J5J10pOyB0YXJnZXQuc2V0KHNvdXJjZSwgJDApOyB9AGltcG9ydC0+a2luZCA9PSBFeHRlcm5hbEtpbmQ6OlRhYmxlAHsgTW9kdWxlWydvdXRzaWRlJ11bJ3dhc21UYWJsZSddID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXSgnZW52JywgJ3RhYmxlJyk7IH0AeyBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ10gPSBuZXcgQXJyYXkoJDApOyB9AHsgTW9kdWxlWydhc21FeHBvcnRzJ11bJ3RhYmxlJ10gPSBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ107IH0Ab2Zmc2V0ICsgc2VnbWVudC5kYXRhLnNpemUoKSA8PSB3YXNtLnRhYmxlLmluaXRpYWwAeyBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ11bJDBdID0gJDE7IH0AeyBNb2R1bGVbJ291dHNpZGUnXVsnd2FzbVRhYmxlJ11bJDBdID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXShQb2ludGVyX3N0cmluZ2lmeSgkMSksIFBvaW50ZXJfc3RyaW5naWZ5KCQyKSk7IH0ATjR3YXNtMjRDb25zdGFudEV4cHJlc3Npb25SdW5uZXJJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMxXzRsZXNzSVMzX0VFTlMxXzlhbGxvY2F0b3JJTlMxXzRwYWlySUtTM19TNF9FRUVFRUVFRQBONHdhc20xNkV4cHJlc3Npb25SdW5uZXJJTlNfMjRDb25zdGFudEV4cHJlc3Npb25SdW5uZXJJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMyXzRsZXNzSVM0X0VFTlMyXzlhbGxvY2F0b3JJTlMyXzRwYWlySUtTNF9TNV9FRUVFRUVFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzI0Q29uc3RhbnRFeHByZXNzaW9uUnVubmVySU5TdDNfXzIzbWFwSU5TXzROYW1lRU5TXzdMaXRlcmFsRU5TMl80bGVzc0lTNF9FRU5TMl85YWxsb2NhdG9ySU5TMl80cGFpcklLUzRfUzVfRUVFRUVFRUVOU180Rmxvd0VFRQB7IHZhciBtb2QgPSBQb2ludGVyX3N0cmluZ2lmeSgkMCk7IHZhciBiYXNlID0gUG9pbnRlcl9zdHJpbmdpZnkoJDEpOyB2YXIgbG9va3VwID0gTW9kdWxlWydsb29rdXBJbXBvcnQnXShtb2QsIGJhc2UpOyByZXR1cm4gbG9va3VwOyB9AGNhbGxpbmcgaW1wb3J0R2xvYmFsIGZvciAAIHJldHVybmluZyAAKG51bGwgTmFtZSkAY2FsbGluZyBpbXBvcnQgAHsgdmFyIG1vZCA9IFBvaW50ZXJfc3RyaW5naWZ5KCQwKTsgdmFyIGJhc2UgPSBQb2ludGVyX3N0cmluZ2lmeSgkMSk7IHZhciB0ZW1wQXJndW1lbnRzID0gTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ107IE1vZHVsZVsndGVtcEFyZ3VtZW50cyddID0gbnVsbDsgdmFyIGxvb2t1cCA9IE1vZHVsZVsnbG9va3VwSW1wb3J0J10obW9kLCBiYXNlKTsgcmV0dXJuIGxvb2t1cC5hcHBseShudWxsLCB0ZW1wQXJndW1lbnRzKTsgfQBjYWxsaW5nIGltcG9ydCByZXR1cm5pbmcgACBhbmQgZnVuY3Rpb24gdHlwZSBpcyAAeyBNb2R1bGVbJ3RlbXBBcmd1bWVudHMnXSA9IFtdOyB9AHsgTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ10ucHVzaCgkMCkgfQB7IHZhciB2YWx1ZSA9IE1vZHVsZVsnb3V0c2lkZSddWyd3YXNtVGFibGUnXVskMF07IHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICJudW1iZXIiID8gdmFsdWUgOiAtMTsgfQBjYWxsVGFibGUgb3ZlcmZsb3cAY2FsbEluZGlyZWN0OiBiYWQgIyBvZiBhcmd1bWVudHMAY2FsbEluZGlyZWN0OiBiYWQgYXJndW1lbnQgdHlwZQB7IHZhciBmdW5jID0gTW9kdWxlWydvdXRzaWRlJ11bJ3dhc21UYWJsZSddWyQwXTsgdmFyIHRlbXBBcmd1bWVudHMgPSBNb2R1bGVbJ3RlbXBBcmd1bWVudHMnXTsgTW9kdWxlWyd0ZW1wQXJndW1lbnRzJ10gPSBudWxsOyByZXR1cm4gZnVuYy5hcHBseShudWxsLCB0ZW1wQXJndW1lbnRzKTsgfQBzdGFjayBsaW1pdABjYWxsRnVuY3Rpb25JbnRlcm5hbAAhZmxvdy5icmVha2luZygpIHx8IGZsb3cuYnJlYWtUbyA9PSBSRVRVUk5fRkxPVwBjYWxsaW5nIAAgcmVzdWx0ZWQgaW4gACBidXQgdGhlIGZ1bmN0aW9uIHR5cGUgaXMgAEZ1bmN0aW9uIGAAYCBleHBlY3RzIAAgcGFyYW1ldGVycywgZ290IAAgYXJndW1lbnRzLgBmdW5jdGlvbi0+aXNQYXJhbShpKQBGdW5jdGlvblNjb3BlAGAgZXhwZWN0cyB0eXBlIAAgZm9yIHBhcmFtZXRlciAALCBnb3QgAGZ1bmN0aW9uLT5pc1ZhcihpKQBaTjR3YXNtMThNb2R1bGVJbnN0YW5jZUJhc2VJTlN0M19fMjNtYXBJTlNfNE5hbWVFTlNfN0xpdGVyYWxFTlMxXzRsZXNzSVMzX0VFTlMxXzlhbGxvY2F0b3JJTlMxXzRwYWlySUtTM19TNF9FRUVFRUVOU18xNE1vZHVsZUluc3RhbmNlRUUyMGNhbGxGdW5jdGlvbkludGVybmFsRVMzX1JLTlMxXzZ2ZWN0b3JJUzRfTlM3X0lTNF9FRUVFRTIzUnVudGltZUV4cHJlc3Npb25SdW5uZXIATjR3YXNtMTZFeHByZXNzaW9uUnVubmVySVpOU18xOE1vZHVsZUluc3RhbmNlQmFzZUlOU3QzX18yM21hcElOU180TmFtZUVOU183TGl0ZXJhbEVOUzJfNGxlc3NJUzRfRUVOUzJfOWFsbG9jYXRvcklOUzJfNHBhaXJJS1M0X1M1X0VFRUVFRU5TXzE0TW9kdWxlSW5zdGFuY2VFRTIwY2FsbEZ1bmN0aW9uSW50ZXJuYWxFUzRfUktOUzJfNnZlY3RvcklTNV9OUzhfSVM1X0VFRUVFMjNSdW50aW1lRXhwcmVzc2lvblJ1bm5lckVFAE40d2FzbTdWaXNpdG9ySVpOU18xOE1vZHVsZUluc3RhbmNlQmFzZUlOU3QzX18yM21hcElOU180TmFtZUVOU183TGl0ZXJhbEVOUzJfNGxlc3NJUzRfRUVOUzJfOWFsbG9jYXRvcklOUzJfNHBhaXJJS1M0X1M1X0VFRUVFRU5TXzE0TW9kdWxlSW5zdGFuY2VFRTIwY2FsbEZ1bmN0aW9uSW50ZXJuYWxFUzRfUktOUzJfNnZlY3RvcklTNV9OUzhfSVM1X0VFRUVFMjNSdW50aW1lRXhwcmVzc2lvblJ1bm5lck5TXzRGbG93RUVFAGN1cnItPmlzVGVlKCkgPyBmbG93LnZhbHVlLnR5cGUgPT0gY3Vyci0+dHlwZSA6IHRydWUAaW5zdGFuY2UuZ2xvYmFscy5maW5kKG5hbWUpICE9IGluc3RhbmNlLmdsb2JhbHMuZW5kKCkAb2Zmc2V0ID4gbWVtb3J5AGZpbmFsID4gbWVtb3J5AGJ5dGVzID4gbWVtb3J5ACA+IABOU3QzX18yMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBOU3QzX18yMTViYXNpY19zdHJpbmdidWZJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBoaWdoZXN0ID4gbWVtb3J5AHsgdmFyIHNpemUgPSAkMDsgdmFyIGJ1ZmZlcjsgdHJ5IHsgYnVmZmVyID0gbmV3IEFycmF5QnVmZmVyKHNpemUpOyB9IGNhdGNoKGUpIHsgcmV0dXJuOyB9IHZhciBvbGRIRUFQOCA9IE1vZHVsZVsnb3V0c2lkZSddWydIRUFQOCddOyB2YXIgdGVtcCA9IG5ldyBJbnQ4QXJyYXkoYnVmZmVyKTsgdGVtcC5zZXQob2xkSEVBUDgpOyBNb2R1bGVbJ291dHNpZGUnXVsnYnVmZmVyJ10gPSBidWZmZXI7IH0AeyBhYm9ydCgid2FzbSB0cmFwOiAiICsgUG9pbnRlcl9zdHJpbmdpZnkoJDApKTsgfQB7IHZhciBhZGRyID0gJDA7IHZhciBieXRlcyA9ICQxOyB2YXIgaXNGbG9hdCA9ICQyOyB2YXIgaXNTaWduZWQgPSAkMzsgdmFyIG91dDY0ID0gJDQ7IHZhciBzYXZlMCA9IEhFQVAzMlswXTsgdmFyIHNhdmUxID0gSEVBUDMyWzFdOyBmb3IgKHZhciBpID0gMDsgaSA8IGJ5dGVzOyBpKyspIHsgSEVBUFU4W2ldID0gTW9kdWxlWyJpbmZvIl0ucGFyZW50WyJIRUFQVTgiXVthZGRyICsgaV07IH0gdmFyIHJldDsgaWYgKCFpc0Zsb2F0KSB7IGlmIChieXRlcyA9PT0gMSkgcmV0ID0gaXNTaWduZWQgPyBIRUFQOFswXSA6IEhFQVBVOFswXTsgZWxzZSBpZiAoYnl0ZXMgPT09IDIpIHJldCA9IGlzU2lnbmVkID8gSEVBUDE2WzBdIDogSEVBUFUxNlswXTsgZWxzZSBpZiAoYnl0ZXMgPT09IDQpIHJldCA9IGlzU2lnbmVkID8gSEVBUDMyWzBdIDogSEVBUFUzMlswXTsgZWxzZSBpZiAoYnl0ZXMgPT09IDgpIHsgZm9yICh2YXIgaSA9IDA7IGkgPCBieXRlczsgaSsrKSB7IEhFQVBVOFtvdXQ2NCArIGldID0gSEVBUFU4W2ldOyB9IH0gZWxzZSBhYm9ydCgpOyB9IGVsc2UgeyBpZiAoYnl0ZXMgPT09IDQpIHJldCA9IEhFQVBGMzJbMF07IGVsc2UgaWYgKGJ5dGVzID09PSA4KSByZXQgPSBIRUFQRjY0WzBdOyBlbHNlIGFib3J0KCk7IH0gSEVBUDMyWzBdID0gc2F2ZTA7IEhFQVAzMlsxXSA9IHNhdmUxOyByZXR1cm4gcmV0OyB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDgnXVskMF0gfQB7IHJldHVybiBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVBVOCddWyQwXSB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDE2J11bJDAgPj4gMV0gfQB7IHJldHVybiBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVBVMTYnXVskMCA+PiAxXSB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDMyJ11bJDAgPj4gMl0gfQB7IHJldHVybiBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVBVMzInXVskMCA+PiAyXSB9AHsgcmV0dXJuIE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUEYzMiddWyQwID4+IDJdIH0AeyByZXR1cm4gTW9kdWxlWydpbmZvJ10ucGFyZW50WydIRUFQRjY0J11bJDAgPj4gM10gfQB7IHZhciBhZGRyID0gJDA7IHZhciBieXRlcyA9ICQxOyB2YXIgaXNGbG9hdCA9ICQyOyB2YXIgdmFsdWUgPSAkMzsgdmFyIHNhdmUwID0gSEVBUDMyWzBdOyB2YXIgc2F2ZTEgPSBIRUFQMzJbMV07IGlmICghaXNGbG9hdCkgeyBpZiAoYnl0ZXMgPT09IDEpIEhFQVBVOFswXSA9IHZhbHVlOyBlbHNlIGlmIChieXRlcyA9PT0gMikgSEVBUFUxNlswXSA9IHZhbHVlOyBlbHNlIGlmIChieXRlcyA9PT0gNCkgSEVBUFUzMlswXSA9IHZhbHVlOyBlbHNlIGFib3J0KCk7IH0gZWxzZSB7IGlmIChieXRlcyA9PT0gNCkgSEVBUEYzMlswXSA9IHZhbHVlOyBlbHNlIGlmIChieXRlcyA9PT0gOCkgSEVBUEY2NFswXSA9IHZhbHVlOyBlbHNlIGFib3J0KCk7IH0gZm9yICh2YXIgaSA9IDA7IGkgPCBieXRlczsgaSsrKSB7IE1vZHVsZVsiaW5mbyJdLnBhcmVudFsiSEVBUFU4Il1bYWRkciArIGldID0gSEVBUFU4W2ldOyB9IEhFQVAzMlswXSA9IHNhdmUwOyBIRUFQMzJbMV0gPSBzYXZlMTsgfQB7IE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUDgnXVskMF0gPSAkMSB9AHsgTW9kdWxlWydpbmZvJ10ucGFyZW50WydIRUFQMTYnXVskMCA+PiAxXSA9ICQxIH0AeyBNb2R1bGVbJ2luZm8nXS5wYXJlbnRbJ0hFQVAzMiddWyQwID4+IDJdID0gJDEgfQB7IE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUEYzMiddWyQwID4+IDJdID0gJDEgfQB7IE1vZHVsZVsnaW5mbyddLnBhcmVudFsnSEVBUEY2NCddWyQwID4+IDNdID0gJDEgfQBnZXRpMzIAZ2V0ZjMyAGdldGY2NABpbnQoX2lkKSA9PSBpbnQoVDo6U3BlY2lmaWNJZCkAY2FzdABhZGp1c3QtZGVidWctaW5mbwBONHdhc20xNUFkanVzdERlYnVnSW5mb0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNUFkanVzdERlYnVnSW5mb0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTRQYXNzRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTVBZGp1c3REZWJ1Z0luZm9FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNUFkanVzdERlYnVnSW5mb0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNUFkanVzdERlYnVnSW5mb0V2RUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMyRfMU5TXzlhbGxvY2F0b3JJUzZfRUVGdlJOUzJfMTBQYXNzUnVubmVyRUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlJONHdhc20xMFBhc3NSdW5uZXJFRUVFAGF1dG9kcm9wAE40d2FzbThBdXRvRHJvcEUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzhBdXRvRHJvcEVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzhBdXRvRHJvcEVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfOEF1dG9Ecm9wRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfOEF1dG9Ecm9wRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzhBdXRvRHJvcEV2RUUAY3Vyci0+dHlwZSA9PSBub25lIHx8IGN1cnItPnR5cGUgPT0gdW5yZWFjaGFibGUALi9zcmMvaXIvdXRpbHMuaABjdXJyLT50eXBlID09IG5vbmUAdmlzaXRJZgByZWZpbmFsaXplAE40d2FzbTEwUmVGaW5hbGl6ZUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xMFJlRmluYWxpemVFTlNfMTdPdmVycmlkZGVuVmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xMFJlRmluYWxpemVFTlNfMTdPdmVycmlkZGVuVmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzEwUmVGaW5hbGl6ZUVOU18xN092ZXJyaWRkZW5WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTE3T3ZlcnJpZGRlblZpc2l0b3JJTlNfMTBSZUZpbmFsaXplRXZFRQBpc0NvbmNyZXRlVHlwZShjdXJyLT50eXBlKQBaTjR3YXNtMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUzJF8xAGZpbmFsaXplLWNhbGxzAFpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjEwcHJvY2Vzc0FzbUVONmNhc2hldzNSZWZFRTEzRmluYWxpemVDYWxscwBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySVpOU18xNUFzbTJXYXNtQnVpbGRlcjEwcHJvY2Vzc0FzbUVONmNhc2hldzNSZWZFRTEzRmluYWxpemVDYWxsc05TXzdWaXNpdG9ySVM1X3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySVpOU18xNUFzbTJXYXNtQnVpbGRlcjEwcHJvY2Vzc0FzbUVONmNhc2hldzNSZWZFRTEzRmluYWxpemVDYWxsc05TXzdWaXNpdG9ySVM0X3ZFRUVFAE40d2FzbTZXYWxrZXJJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTNGaW5hbGl6ZUNhbGxzTlNfN1Zpc2l0b3JJUzRfdkVFRUUATjR3YXNtN1Zpc2l0b3JJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTNGaW5hbGl6ZUNhbGxzdkVFAGludmFsaWQgY2FsbCB0YXJnZXQ6IAB3YXJuaW5nOiBhc20yd2FzbSBhZGRpbmcgb3BlcmFuZHMAd2FybmluZzogYXNtMndhc20gZHJvcHBpbmcgb3BlcmFuZHMAZXJyb3I6IGFzbTJ3YXNtIHNlZWluZyBhbiBpbnZhbGlkIGFyZ3VtZW50IHR5cGUgYXQgaW5kZXggACAodGhpcyB3aWxsIG5vdCB2YWxpZGF0ZSkAIGluIGNhbGwgZnJvbSAAIHRvIAAgKHRoaXMgaXMgbGlrZWx5IGR1ZSB0byB1bmRlZmluZWQgYmVoYXZpb3IgaW4gQywgbGlrZSBkZWZpbmluZyBhIGZ1bmN0aW9uIG9uZSB3YXkgYW5kIGNhbGxpbmcgaXQgaW4gYW5vdGhlciwgd2hpY2ggaXMgaW1wb3J0YW50IHRvIGZpeCkKACBzdWNoIHdhcm5pbmdzIHNob3duOyBub3Qgc2hvd2luZyBhbnkgbW9yZSkKAHR5cGUtPnBhcmFtc1tpXSA9PSBmNjQgfHwgY3Vyci0+b3BlcmFuZHNbaV0tPnR5cGUgPT0gdW5yZWFjaGFibGUAdmlzaXRDYWxsSW1wb3J0AG9sZCA9PSBub25lAGFwcGx5LWRlYnVnLWluZm8AWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mbwBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mb05TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVM1X3ZFRUVFRUUATjR3YXNtMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mb05TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVM0X3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklaTlNfMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUxNEFwcGx5RGVidWdJbmZvTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzRfdkVFRUUATjR3YXNtNldhbGtlcklaTlNfMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUxNEFwcGx5RGVidWdJbmZvTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzRfdkVFRUUATjR3YXNtMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJWk5TXzE1QXNtMldhc21CdWlsZGVyMTBwcm9jZXNzQXNtRU42Y2FzaGV3M1JlZkVFMTRBcHBseURlYnVnSW5mb3ZFRQBONHdhc203VmlzaXRvcklaTlNfMTVBc20yV2FzbUJ1aWxkZXIxMHByb2Nlc3NBc21FTjZjYXNoZXczUmVmRUUxNEFwcGx5RGVidWdJbmZvdkVFAGdldE1vZHVsZSgpLT5kZWJ1Z0luZm9GaWxlTmFtZXMuc2l6ZSgpID4gZmlsZUluZGV4AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjE1cHJvY2Vzc0Z1bmN0aW9uRU42Y2FzaGV3M1JlZkVFMyRfNU5TXzlhbGxvY2F0b3JJUzZfRUVGUE5TMl8xMEV4cHJlc3Npb25FUzVfRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZQTjR3YXNtMTBFeHByZXNzaW9uRU42Y2FzaGV3M1JlZkVFRUUAbWFwcGVkR2xvYmFscy5maW5kKG5hbWUpICE9IG1hcHBlZEdsb2JhbHMuZW5kKCkgPyB0cnVlIDogKHN0ZDo6Y2VyciA8PCBuYW1lLnN0ciA8PCAnXG4nLCBmYWxzZSkAZXJyb3I6IGFjY2VzcyBvZiBhIG5vbi1leGlzdGVudCBnbG9iYWwgdmFyIABhc3NpZ24tPnRhcmdldCgpLT5pc0FycmF5KFNVQikAdGFyZ2V0WzFdLT5pc1N0cmluZygpAHZpZXdzLmZpbmQoaGVhcCkgIT0gdmlld3MuZW5kKCkAYmFkIHN1YltdIHR5cGVzAGRkZAB0YXJnZXQtPmlzU3RyaW5nKCkAYmFkIHVuYXJ5AGFzdFsyXS0+c2l6ZSgpID09IDIAYXN0WzJdLT5zaXplKCkgPT0gMQBjb25mdXNpbmcgZnJvdW5kIHRhcmdldABmbG9vci9zcXJ0L2NlaWwgb25seSB3b3JrIG9uIGZsb2F0L2RvdWJsZSBpbiBhc20uanMgYW5kIHdhc20AbWluL21heCBvbmx5IHdvcmsgb24gZmxvYXQvZG91YmxlIGluIGFzbS5qcyBhbmQgd2FzbQB0YXJnZXRbMF0gPT0gU1VCICYmIHRhcmdldFsxXS0+aXNTdHJpbmcoKSAmJiB0YXJnZXRbMl1bMF0gPT0gQklOQVJZICYmIHRhcmdldFsyXVsxXSA9PSBBTkQgJiYgdGFyZ2V0WzJdWzNdLT5pc051bWJlcigpAGZ1bmN0aW9uLT5yZXN1bHQgPT0gdHlwZQBicmVha1N0YWNrLnNpemUoKSA+IDAAY29udGludWVTdGFjay5zaXplKCkgPiAwAHdoaWxlLW91dAB3aGlsZS1pbgBkby1vbmNlAHVubGlrZWx5LWNvbnRpbnVlAGRvLW91dABkby1pbgBmb3Itb3V0AGZvci1pbgBici0+Y29uZGl0aW9uLT50eXBlID09IGk2NABzd2l0Y2gtZGVmYXVsdABpbmRleCA+PSBtaW4AaW5kZXggPj0gMABzd2l0Y2gtY2FzZQBjb25mdXNpbmcgZXhwcmVzc2lvbgBiYWQgd2FzbSBiaW5hcnkgb3AAZmFsc2UgJiYgImV4cGVjdGVkIHNpZ25lZCBvciB1bnNpZ25lZCBpbnQzMiIAY2hlY2tMaXRlcmFsAHJldC50eXBlICE9IG5vbmUAZ2V0TGl0ZXJhbABtYXBwZWRHbG9iYWxzLmZpbmQobmFtZSkgIT0gbWFwcGVkR2xvYmFscy5lbmQoKQBkZXRlY3RBc21UeXBlAGJ5dGVzID09IDQALi9zcmMvaXIvYml0cy5oAG1ha2VTaWduRXh0AHZhbHVlLT50eXBlID09IGk2NABieXRlcyA9PSA4AGFzdFswXSA9PSBDQUxMICYmIGFzdFsxXS0+aXNTdHJpbmcoKQBub3RlSW1wb3J0ZWRGdW5jdGlvbkNhbGwAdHlwZSQAbGFiZWwkYnJlYWskAGxhYmVsU3RhY2suYmFjaygpID09IG5hbWUALi9zcmMvcGFyc2luZy5oAHBvcExhYmVsTmFtZQBiYWQgbGFiZWwgaW4gc291cmNlVG9VbmlxdWUATjR3YXNtMTRQYXJzZUV4Y2VwdGlvbkUAdXNlIG9mIHBvcHBlZCBsYWJlbCBpbiBzb3VyY2VUb1VuaXF1ZQBsYWJlbCRjb250aW51ZSQAWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTVwcm9jZXNzRnVuY3Rpb25FTjZjYXNoZXczUmVmRUUzJF81AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjE1cHJvY2Vzc0Z1bmN0aW9uRU42Y2FzaGV3M1JlZkVFMyRfNk5TXzlhbGxvY2F0b3JJUzZfRUVGUE5TMl8xMEV4cHJlc3Npb25FUzVfakVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGUE40d2FzbTEwRXhwcmVzc2lvbkVONmNhc2hldzNSZWZFakVFRQBiYWQgcHJvY2Vzc1Vuc2hpZnRlZABaTjR3YXNtMTVBc20yV2FzbUJ1aWxkZXIxNXByb2Nlc3NGdW5jdGlvbkVONmNhc2hldzNSZWZFRTMkXzYATlN0M19fMjEwX19mdW5jdGlvbjZfX2Z1bmNJWk40d2FzbTE1QXNtMldhc21CdWlsZGVyMTVwcm9jZXNzRnVuY3Rpb25FTjZjYXNoZXczUmVmRUUzJF83TlNfOWFsbG9jYXRvcklTNl9FRUZQTlMyXzEwRXhwcmVzc2lvbkVTNV9qRUVFAFpONHdhc20xNUFzbTJXYXNtQnVpbGRlcjE1cHJvY2Vzc0Z1bmN0aW9uRU42Y2FzaGV3M1JlZkVFMyRfNwA7AHB1c2hfYmFjawBnZXRBcnJheQBzcmMgPiBzdGFydAAuL3NyYy9lbXNjcmlwdGVuLW9wdGltaXplci9wYXJzZXIuaABGcmFnAHN0cmNtcChzdHIuc3RyLCBzdGFydCkgPT0gMABmcmFnIHBhcnNpbmcAJXM6Cj09PT09PT09PT0KAG5hbWUudHlwZSA9PSBTRVBBUkFUT1IgJiYgbmFtZS5zdHJbMF0gPT0gJygnAHBhcnNlRnVuY3Rpb24AKnNyYyA9PSAnKCcAYXJnLnR5cGUgPT0gSURFTlQAZnVuY1swXSA9PSBERUZVTgBhcHBlbmRBcmd1bWVudFRvRnVuY3Rpb24AKnNyYyA9PSAneycAcGFyc2VCcmFja2V0ZWRCbG9jawA7fQAqc3JjID09ICd9JwBuYW1lLnR5cGUgPT0gSURFTlQAcGFyc2VWYXIAOywAdmFyWzBdID09IFZBUgBhcHBlbmRUb1ZhcgBoYXNDaGFyKHNlcHMsICpzcmMpAHBhcnNlUmV0dXJuAHBhcnNlUGFyZW5uZWQAKnNyYyA9PSAnKScAbmV4dC50eXBlID09IEtFWVdPUkQgJiYgbmV4dC5zdHIgPT0gV0hJTEUAcGFyc2VEbwBwYXJzZVN3aXRjaAB2YWx1ZS5zdHIgPT0gTUlOVVMAdmFsdWUyLmlzTnVtYmVyKCkAdmFsdWUudHlwZSA9PSBJREVOVAAqc3JjID09ICc6JwBwYXJzZUNhbGwALCkAZXhwcmVzc2lvblBhcnRzU3RhY2suYmFjaygpLnNpemUoKSA9PSAwAGNhbGxbMF0gPT0gQ0FMTABhcHBlbmRUb0NhbGwAc3dpdGNoX1swXSA9PSBTV0lUQ0gAYXBwZW5kQ2FzZVRvU3dpdGNoAGFwcGVuZERlZmF1bHRUb1N3aXRjaABhcHBlbmRDb2RlVG9Td2l0Y2gAY29kZVswXSA9PSBCTE9DSwBwYXJzZUZvcgAqc3JjID09ICc7JwAqc3JjID09ICdbJwBwYXJzZUluZGV4aW5nACpzcmMgPT0gJ10nACpzcmMgPT0gJy4nAHBhcnNlRG90dGluZwBrZXkudHlwZSA9PSBJREVOVABiYWQgcGFyc2VFeHByZXNzaW9uIHN0YXRlAGkgPCAoaW50KXBhcnRzLnNpemUoKS0xICYmIGkgPj0gMwBwYXJzZUV4cHJlc3Npb24AcGFydHMuc2l6ZSgpID09IDEAaXNOb2RlAGdldE5vZGUAIWlzTm9kZQBnZXRPcABrZXktPmlzU3RyaW5nKCkAbWFrZURvdABwYXJzZUFmdGVyUGFyZW4AKnNyYwBwYXJzZUFmdGVyQnJhY2UALF0AYXJyYXlbMF0gPT0gQVJSQVkAYXBwZW5kVG9BcnJheQBwYXJzZUFmdGVyQ3VybHkAa2V5LnR5cGUgPT0gSURFTlQgfHwga2V5LnR5cGUgPT0gU1RSSU5HACx9AGFycmF5WzBdID09IE9CSkVDVABhcHBlbmRUb09iamVjdABibG9ja1swXSA9PSBCTE9DSwBhcHBlbmRUb0Jsb2NrAC89PSAoYmluYXJ5ZW4gaW50ZXJwcmV0ZXIgc3RhY2sgdHJhY2UpCgB8OiAAXD09CgBjYWxsRXhwb3J0IG5vdCBmb3VuZABleGl0AHNwZWN0ZXN0AG11dABmYWtlX3JldHVybl93YWthMTIzAGFueWZ1bmMAYnIAdGhlbgBicl9pZgBjYWxsX2luZGlyZWN0AGNhbGxfaW1wb3J0AGxvY2FsAGVsZW0AaW1wb3J0AGV4cG9ydABzZWdtZW50AGRhdGEAcmVzdWx0AG5ld1NpemUAdGFibGVCYXNlAG1lbW9yeUJhc2UAX19ncm93V2FzbU1lbW9yeQAqcmV0dXJuOikqAHdhc20AX19lbV9qc19fAGVtc2NyaXB0ZW5fYXNtX2NvbnN0AGk2NHUtZGl2AGk2NHMtZGl2AGk2NHUtcmVtAGk2NHMtcmVtAGFsaWduZmF1bHQAc2VnZmF1bHQARFlOQU1JQ1RPUF9QVFIAQmluYXJ5ZW58bm90cHJlY29tcHV0YWJsZQBhbnkuZXhwcgBmNjQuZXhwcgBmMzIuZXhwcgBpNjQuZXhwcgBpMzIuZXhwcgBsb2dfZXhlY3V0aW9uAHNldFRlbXBSZXQwAHNldF9mNjQAc2V0X2YzMgBzZXRfaTY0AHNldF9pMzIAZ2V0X2Y2NABnZXRfZjMyAGdldF9pNjQAZ2V0X2kzMgBjb2FsZXNjZS1sb2NhbHMAcmVkdWNlICMgb2YgbG9jYWxzIGJ5IGNvYWxlc2NpbmcAY29hbGVzY2UtbG9jYWxzLWxlYXJuaW5nAHJlZHVjZSAjIG9mIGxvY2FscyBieSBjb2FsZXNjaW5nIGFuZCBsZWFybmluZwBjb2RlLXB1c2hpbmcAcHVzaCBjb2RlIGZvcndhcmQsIHBvdGVudGlhbGx5IG1ha2luZyBpdCBub3QgYWx3YXlzIGV4ZWN1dGUAY29kZS1mb2xkaW5nAGZvbGQgY29kZSwgbWVyZ2luZyBkdXBsaWNhdGVzAGNvbnN0LWhvaXN0aW5nAGhvaXN0IHJlcGVhdGVkIGNvbnN0YW50cyB0byBhIGxvY2FsAGRjZQByZW1vdmVzIHVucmVhY2hhYmxlIGNvZGUAZGZvAG9wdGltaXplcyB1c2luZyB0aGUgRGF0YUZsb3cgU1NBIElSAGR1cGxpY2F0ZS1mdW5jdGlvbi1lbGltaW5hdGlvbgByZW1vdmVzIGR1cGxpY2F0ZSBmdW5jdGlvbnMAZXh0cmFjdC1mdW5jdGlvbgBsZWF2ZXMganVzdCBvbmUgZnVuY3Rpb24gKHVzZWZ1bCBmb3IgZGVidWdnaW5nKQBmbGF0dGVuAGZsYXR0ZW5zIG91dCBjb2RlLCByZW1vdmluZyBuZXN0aW5nAGZwY2FzdC1lbXUAZW11bGF0ZXMgZnVuY3Rpb24gcG9pbnRlciBjYXN0cywgYWxsb3dpbmcgaW5jb3JyZWN0IGluZGlyZWN0IGNhbGxzIHRvIChzb21ldGltZXMpIHdvcmsAZnVuYy1tZXRyaWNzAHJlcG9ydHMgZnVuY3Rpb24gbWV0cmljcwBnZW5lcmF0ZS1zdGFjay1pcgBnZW5lcmF0ZSBTdGFjayBJUgBpbmxpbmluZwBpbmxpbmUgZnVuY3Rpb25zICh5b3UgcHJvYmFibHkgd2FudCBpbmxpbmluZy1vcHRpbWl6aW5nKQBpbmxpbmluZy1vcHRpbWl6aW5nAGlubGluZSBmdW5jdGlvbnMgYW5kIG9wdGltaXplcyB3aGVyZSB3ZSBpbmxpbmVkAGxlZ2FsaXplLWpzLWludGVyZmFjZQBsZWdhbGl6ZXMgaTY0IHR5cGVzIG9uIHRoZSBpbXBvcnQvZXhwb3J0IGJvdW5kYXJ5AGxvY2FsLWNzZQBjb21tb24gc3ViZXhwcmVzc2lvbiBlbGltaW5hdGlvbiBpbnNpZGUgYmFzaWMgYmxvY2tzAGxvZy1leGVjdXRpb24AaW5zdHJ1bWVudCB0aGUgYnVpbGQgd2l0aCBsb2dnaW5nIG9mIHdoZXJlIGV4ZWN1dGlvbiBnb2VzAGk2NC10by1pMzItbG93ZXJpbmcAbG93ZXIgYWxsIHVzZXMgb2YgaTY0cyB0byB1c2UgaTMycyBpbnN0ZWFkAGluc3RydW1lbnQtbG9jYWxzAGluc3RydW1lbnQgdGhlIGJ1aWxkIHdpdGggY29kZSB0byBpbnRlcmNlcHQgYWxsIGxvYWRzIGFuZCBzdG9yZXMAaW5zdHJ1bWVudC1tZW1vcnkAbWVtb3J5LXBhY2tpbmcAcGFja3MgbWVtb3J5IGludG8gc2VwYXJhdGUgc2VnbWVudHMsIHNraXBwaW5nIHplcm9zAG1lcmdlLWJsb2NrcwBtZXJnZXMgYmxvY2tzIHRvIHRoZWlyIHBhcmVudHMAbWVyZ2UtbG9jYWxzAG1lcmdlcyBsb2NhbHMgd2hlbiBiZW5lZmljaWFsAG1ldHJpY3MAcmVwb3J0cyBtZXRyaWNzAG5tAG5hbWUgbGlzdABvcHRpbWl6ZS1pbnN0cnVjdGlvbnMAb3B0aW1pemVzIGluc3RydWN0aW9uIGNvbWJpbmF0aW9ucwBvcHRpbWl6ZS1zdGFjay1pcgBvcHRpbWl6ZSBTdGFjayBJUgBwaWNrLWxvYWQtc2lnbnMAcGljayBsb2FkIHNpZ25zIGJhc2VkIG9uIHRoZWlyIHVzZXMAcG9zdC1lbXNjcmlwdGVuAG1pc2NlbGxhbmVvdXMgb3B0aW1pemF0aW9ucyBmb3IgRW1zY3JpcHRlbi1nZW5lcmF0ZWQgY29kZQBjb21wdXRlcyBjb21waWxlLXRpbWUgZXZhbHVhdGFibGUgZXhwcmVzc2lvbnMAY29tcHV0ZXMgY29tcGlsZS10aW1lIGV2YWx1YXRhYmxlIGV4cHJlc3Npb25zIGFuZCBwcm9wYWdhdGVzIHRoZW0gdGhyb3VnaCBsb2NhbHMAcHJpbnQgaW4gcy1leHByZXNzaW9uIGZvcm1hdABwcmludC1taW5pZmllZABwcmludCBpbiBtaW5pZmllZCBzLWV4cHJlc3Npb24gZm9ybWF0AHByaW50LWZ1bGwAcHJpbnQgaW4gZnVsbCBzLWV4cHJlc3Npb24gZm9ybWF0AHByaW50LWNhbGwtZ3JhcGgAcHJpbnQgY2FsbCBncmFwaABwcmludC1zdGFjay1pcgBwcmludCBvdXQgU3RhY2sgSVIgKHVzZWZ1bCBmb3IgaW50ZXJuYWwgZGVidWdnaW5nKQByZWxvb3Blci1qdW1wLXRocmVhZGluZwB0aHJlYWQgcmVsb29wZXIganVtcHMgKGZhc3Rjb21wIG91dHB1dCBvbmx5KQByZW1vdmUtbm9uLWpzLW9wcwByZW1vdmVzIG9wZXJhdGlvbnMgaW5jb21wYXRpYmxlIHdpdGgganMAcmVtb3ZlLWltcG9ydHMAcmVtb3ZlcyBpbXBvcnRzIGFuZCByZXBsYWNlcyB0aGVtIHdpdGggbm9wcwByZW1vdmUtbWVtb3J5AHJlbW92ZXMgbWVtb3J5IHNlZ21lbnRzAHJlbW92ZS11bnVzZWQtYnJzAHJlbW92ZXMgYnJlYWtzIGZyb20gbG9jYXRpb25zIHRoYXQgYXJlIG5vdCBuZWVkZWQAcmVtb3ZlLXVudXNlZC1tb2R1bGUtZWxlbWVudHMAcmVtb3ZlcyB1bnVzZWQgbW9kdWxlIGVsZW1lbnRzAHJlbW92ZS11bnVzZWQtbm9uZnVuY3Rpb24tbW9kdWxlLWVsZW1lbnRzAHJlbW92ZXMgdW51c2VkIG1vZHVsZSBlbGVtZW50cyB0aGF0IGFyZSBub3QgZnVuY3Rpb25zAHJlbW92ZS11bnVzZWQtbmFtZXMAcmVtb3ZlcyBuYW1lcyBmcm9tIGxvY2F0aW9ucyB0aGF0IGFyZSBuZXZlciBicmFuY2hlZCB0bwByZW9yZGVyLWZ1bmN0aW9ucwBzb3J0cyBmdW5jdGlvbnMgYnkgYWNjZXNzIGZyZXF1ZW5jeQByZW9yZGVyLWxvY2FscwBzb3J0cyBsb2NhbHMgYnkgYWNjZXNzIGZyZXF1ZW5jeQByZXJlbG9vcAByZS1vcHRpbWl6ZSBjb250cm9sIGZsb3cgdXNpbmcgdGhlIHJlbG9vcGVyIGFsZ29yaXRobQByc2UAcmVtb3ZlIHJlZHVuZGFudCBzZXRfbG9jYWxzAHNhZmUtaGVhcABpbnN0cnVtZW50IGxvYWRzIGFuZCBzdG9yZXMgdG8gY2hlY2sgZm9yIGludmFsaWQgYmVoYXZpb3IAc2ltcGxpZnktbG9jYWxzAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucwBzaW1wbGlmeS1sb2NhbHMtbm9uZXN0aW5nAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucyAobm8gbmVzdGluZyBhdCBhbGw7IHByZXNlcnZlcyBmbGF0bmVzcykAc2ltcGxpZnktbG9jYWxzLW5vdGVlAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucyAobm8gdGVlcykAc2ltcGxpZnktbG9jYWxzLW5vc3RydWN0dXJlAG1pc2NlbGxhbmVvdXMgbG9jYWxzLXJlbGF0ZWQgb3B0aW1pemF0aW9ucyAobm8gc3RydWN0dXJlKQBzaW1wbGlmeS1sb2NhbHMtbm90ZWUtbm9zdHJ1Y3R1cmUAbWlzY2VsbGFuZW91cyBsb2NhbHMtcmVsYXRlZCBvcHRpbWl6YXRpb25zIChubyB0ZWVzIG9yIHN0cnVjdHVyZSkAc291cGVyaWZ5AGVtaXQgU291cGVyIElSIGluIHRleHQgZm9ybQBzb3VwZXJpZnktc2luZ2xlLXVzZQBlbWl0IFNvdXBlciBJUiBpbiB0ZXh0IGZvcm0gKHNpbmdsZS11c2Ugbm9kZXMgb25seSkAc3BpbGwtcG9pbnRlcnMAc3BpbGwgcG9pbnRlcnMgdG8gdGhlIEMgc3RhY2sgKHVzZWZ1bCBmb3IgQm9laG0tc3R5bGUgR0MpAHNzYQBzc2EtaWZ5IHZhcmlhYmxlcyBzbyB0aGF0IHRoZXkgaGF2ZSBhIHNpbmdsZSBhc3NpZ25tZW50AHRyYXAtbW9kZS1jbGFtcAByZXBsYWNlIHRyYXBwaW5nIG9wZXJhdGlvbnMgd2l0aCBjbGFtcGluZyBzZW1hbnRpY3MAdHJhcC1tb2RlLWpzAHJlcGxhY2UgdHJhcHBpbmcgb3BlcmF0aW9ucyB3aXRoIGpzIHNlbWFudGljcwB1bnRlZQByZW1vdmVzIHRlZV9sb2NhbHMsIHJlcGxhY2luZyB0aGVtIHdpdGggc2V0cyBhbmQgZ2V0cwB2YWN1dW0AcmVtb3ZlcyBvYnZpb3VzbHkgdW5uZWVkZWQgY29kZQAuL3NyYy9wYXNzZXMvVmFjdXVtLmNwcABwYXJlbnRzLmZpbmQoY3VycikgPT0gcGFyZW50cy5lbmQoKQAuL3NyYy9pci90eXBlLXVwZGF0aW5nLmgAbm90ZUFkZGl0aW9uAGluZm8ubnVtQnJlYWtzID49IDAAbm90ZUJyZWFrQ2hhbmdlAGlzQ29uY3JldGVUeXBlKGJsb2NrLT50eXBlKSAmJiBzaW5nbGV0b24tPnR5cGUgPT0gdW5yZWFjaGFibGUALi9zcmMvaXIvYmxvY2stdXRpbHMuaABzaW1wbGlmeVRvQ29udGVudHMATjR3YXNtNlZhY3V1bUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU182VmFjdXVtRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzZWYWN1dW1FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU182VmFjdXVtRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzZWYWN1dW1FdkVFAE40d2FzbTVVbnRlZUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU181VW50ZWVFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfNVVudGVlRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfNVVudGVlRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzVVbnRlZUV2RUUAbW9kZSAhPSBUcmFwTW9kZTo6QWxsb3cALi9zcmMvcGFzc2VzL1RyYXBNb2RlLmNwcABUcmFwTW9kZVBhc3MATW9kdWxlOjphZGRGdW5jdGlvbjogZW1wdHkgbmFtZQBNb2R1bGU6OmFkZEZ1bmN0aW9uOiAAIGFscmVhZHkgZXhpc3RzAGV4cHItPnR5cGUgPT0gZjY0AC4vc3JjL2FzbWpzL2FzbV92X3dhc20uY3BwAGVuc3VyZURvdWJsZQBNb2R1bGU6OmFkZEltcG9ydDogZW1wdHkgbmFtZQBNb2R1bGU6OmFkZEltcG9ydDogAEZVTkNTSUckAE1vZHVsZTo6YWRkRnVuY3Rpb25UeXBlOiBlbXB0eSBuYW1lAE1vZHVsZTo6YWRkRnVuY3Rpb25UeXBlOiAATW9kdWxlOjpnZXRGdW5jdGlvblR5cGU6IAAgZG9lcyBub3QgZXhpc3QATjR3YXNtMTJUcmFwTW9kZVBhc3NFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTJUcmFwTW9kZVBhc3NFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTJUcmFwTW9kZVBhc3NFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xMlRyYXBNb2RlUGFzc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xMlRyYXBNb2RlUGFzc0V2RUUAZ3JhcGgubG9jYXRpb25zW3ZhbHVlXSA9PSAmc2V0LT52YWx1ZQAuL3NyYy9wYXNzZXMvU1NBaWZ5LmNwcABjb21wdXRlR2V0c0FuZFBoaXMAZW50cnlGbG93QmxvY2sgIT0gbnVsbHB0cgAuL3NyYy9pci9Mb2NhbEdyYXBoLmNwcABmbG93AE40d2FzbTZTU0FpZnlFAFNUQUNLVE9QAGdldFN0YWNrU3BhY2U6IGZhaWxlZCB0byBmaW5kIHRoZSBzdGFjayBwb2ludGVyAHdoYXQgIT0gT3RoZXIALi9zcmMvY2ZnL2xpdmVuZXNzLXRyYXZlcnNhbC5oAExpdmVuZXNzQWN0aW9uACgqb3JpZ2luKS0+aXM8R2V0TG9jYWw+KCkAKCpvcmlnaW4pLT5pczxTZXRMb2NhbD4oKQBONHdhc20xM1NwaWxsUG9pbnRlcnNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xNExpdmVuZXNzV2Fsa2VySU5TXzEzU3BpbGxQb2ludGVyc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTE0TGl2ZW5lc3NXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTlDRkdXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRU5TXzhMaXZlbmVzc0VFRQBONHdhc20xN0NvbnRyb2xGbG93V2Fsa2VySU5TXzEzU3BpbGxQb2ludGVyc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTNTcGlsbFBvaW50ZXJzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzEzU3BpbGxQb2ludGVyc0V2RUUACjsgZnVuY3Rpb246IABmb2xsb3dpbmcgbm9kZSBoYXMgACB1c2VzCgAhcHJpbnRlci5wcmludGVkSGFzRXh0ZXJuYWxVc2VzAC4vc3JjL3Bhc3Nlcy9Tb3VwZXJpZnkuY3BwAAo7IHN0YXJ0IExIUyAoaW4gAGluZmVyICUACgoAcGMgACAxOmkxCgBub2RlAHByaW50SW50ZXJuYWwAZjY0AGYzMgBpMzIAbm9uZQBwcmludAAgPSB2YXIAOyAAID0gACA9IHBoaSAlAGJsb2NrcGMgJQAgMTppMQAgPSBibG9jayAAID0gemV4dCAAISEhQkFEISEhACAoaGFzRXh0ZXJuYWxVc2VzKQBkZWJ1ZygpAHdhcm5PblN1c3BpY2lvdXNWYWx1ZXMAXl4gc3VzcGljaW91cyBpZGVudGljYWwgaW5wdXRzISBtaXNzaW5nIG9wdGltaXphdGlvbiBpbiAAPyBeXgoAXl4gc3VzcGljaW91cyBjb25zdGFudCBpbnB1dHMhIG1pc3Npbmcgb3B0aW1pemF0aW9uIGluIABaTjR3YXNtMThFeHByZXNzaW9uQW5hbHl6ZXI1ZXF1YWxFUE5TXzEwRXhwcmVzc2lvbkVTMl9FVWxTMl9TMl9FXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjR3YXNtMThFeHByZXNzaW9uQW5hbHl6ZXI1ZXF1YWxFUE5TMl8xMEV4cHJlc3Npb25FUzVfRVVsUzVfUzVfRV9OU185YWxsb2NhdG9ySVM2X0VFRmJTNV9TNV9FRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRmJQTjR3YXNtMTBFeHByZXNzaW9uRVM0X0VFRQBwcmludEV4cHJlc3Npb24AY3RsegBjdHR6AGN0cG9wAG11bABzZGl2AHVkaXYAc3JlbQB1cmVtAHNobABsc2hyAGFzaHIAcm90bAByb3RyAGVxAG5lAHNsdAB1bHQAc2xlAHVsZQBzZWxlY3QgAChudWxsIGV4cHJlc3Npb24pADs7QCAAcGFnZXNpemUAbWVtb3J5LnNpemUAbWVtb3J5Lmdyb3cAaGFzZmVhdHVyZSAAaTMyLmFkZABpMzIuc3ViAGkzMi5tdWwAaTMyLmRpdl9zAGkzMi5kaXZfdQBpMzIucmVtX3MAaTMyLnJlbV91AGkzMi5hbmQAaTMyLm9yAGkzMi54b3IAaTMyLnNobABpMzIuc2hyX3UAaTMyLnNocl9zAGkzMi5yb3RsAGkzMi5yb3RyAGkzMi5lcQBpMzIubmUAaTMyLmx0X3MAaTMyLmx0X3UAaTMyLmxlX3MAaTMyLmxlX3UAaTMyLmd0X3MAaTMyLmd0X3UAaTMyLmdlX3MAaTMyLmdlX3UAaTY0LmFkZABpNjQuc3ViAGk2NC5tdWwAaTY0LmRpdl9zAGk2NC5kaXZfdQBpNjQucmVtX3MAaTY0LnJlbV91AGk2NC5hbmQAaTY0Lm9yAGk2NC54b3IAaTY0LnNobABpNjQuc2hyX3UAaTY0LnNocl9zAGk2NC5yb3RsAGk2NC5yb3RyAGk2NC5lcQBpNjQubmUAaTY0Lmx0X3MAaTY0Lmx0X3UAaTY0LmxlX3MAaTY0LmxlX3UAaTY0Lmd0X3MAaTY0Lmd0X3UAaTY0LmdlX3MAaTY0LmdlX3UAZjMyLmFkZABmMzIuc3ViAGYzMi5tdWwAZjMyLmRpdgBmMzIuY29weXNpZ24AZjMyLm1pbgBmMzIubWF4AGYzMi5lcQBmMzIubmUAZjMyLmx0AGYzMi5sZQBmMzIuZ3QAZjMyLmdlAGY2NC5hZGQAZjY0LnN1YgBmNjQubXVsAGY2NC5kaXYAZjY0LmNvcHlzaWduAGY2NC5taW4AZjY0Lm1heABmNjQuZXEAZjY0Lm5lAGY2NC5sdABmNjQubGUAZjY0Lmd0AGY2NC5nZQBpMzIuY2x6AGkzMi5jdHoAaTMyLnBvcGNudABpMzIuZXF6AGk2NC5jbHoAaTY0LmN0egBpNjQucG9wY250AGk2NC5lcXoAZjMyLm5lZwBmMzIuYWJzAGYzMi5jZWlsAGYzMi5mbG9vcgBmMzIudHJ1bmMAZjMyLm5lYXJlc3QAZjMyLnNxcnQAZjY0Lm5lZwBmNjQuYWJzAGY2NC5jZWlsAGY2NC5mbG9vcgBmNjQudHJ1bmMAZjY0Lm5lYXJlc3QAZjY0LnNxcnQAaTY0LmV4dGVuZF9zL2kzMgBpNjQuZXh0ZW5kX3UvaTMyAGkzMi53cmFwL2k2NABpMzIudHJ1bmNfcy9mMzIAaTY0LnRydW5jX3MvZjMyAGkzMi50cnVuY191L2YzMgBpNjQudHJ1bmNfdS9mMzIAaTMyLnRydW5jX3MvZjY0AGk2NC50cnVuY19zL2Y2NABpMzIudHJ1bmNfdS9mNjQAaTY0LnRydW5jX3UvZjY0AGkzMi5yZWludGVycHJldC9mMzIAaTY0LnJlaW50ZXJwcmV0L2Y2NABmMzIuY29udmVydF91L2kzMgBmNjQuY29udmVydF91L2kzMgBmMzIuY29udmVydF9zL2kzMgBmNjQuY29udmVydF9zL2kzMgBmMzIuY29udmVydF91L2k2NABmNjQuY29udmVydF91L2k2NABmMzIuY29udmVydF9zL2k2NABmNjQuY29udmVydF9zL2k2NABmNjQucHJvbW90ZS9mMzIAZjMyLmRlbW90ZS9mNjQAZjMyLnJlaW50ZXJwcmV0L2kzMgBmNjQucmVpbnRlcnByZXQvaTY0AGkzMi5leHRlbmQ4X3MAaTMyLmV4dGVuZDE2X3MAaTY0LmV4dGVuZDhfcwBpNjQuZXh0ZW5kMTZfcwBpNjQuZXh0ZW5kMzJfcwAuY29uc3QgAC0wADoweAAtaW5mAC1uYW4ALWluZmluaXR5ACVsZgBkID49IDAALi9zcmMvZW1zY3JpcHRlbi1vcHRpbWl6ZXIvc2ltcGxlX2FzdC5oAG51bVRvU3RyaW5nACVsbHUAJWUAJS4wZgBudW0gPCAxMDAwAHN0ZDo6aXNuYW4oZikgJiYgImV4cGVjdGVkIGEgTmFOIgAuL3NyYy93YXNtL2xpdGVyYWwuY3BwAE5hTlBheWxvYWQAIG9mZnNldD0ALndhaXQALmF0b21pYy5ybXcAMTYAMzIAX3UALmF0b21pYwAuc3RvcmUAIGFsaWduPQAubG9hZABfcwBzZXRfZ2xvYmFsIAAoKQBnZXRfZ2xvYmFsIAB0ZWVfbG9jYWwgAHNldF9sb2NhbCAAZ2V0X2xvY2FsIABjYWxsX2luZGlyZWN0ICh0eXBlIABjYWxsIABicl90YWJsZQBicl9pZiAAYnIgACAocmVzdWx0IAAgOzsgZW5kIGxvb3AAIDs7IGVuZCBpZgAgOzsgZW5kIGJsb2NrAEJJTkFSWUVOX1BSSU5UX0ZVTEwACnN0YXJ0IGEgdHJhY2UgKGluIABCSU5BUllFTl9TT1VQRVJJRllfREVQVEhfTElNSVQAQklOQVJZRU5fU09VUEVSSUZZX1RPVEFMX0xJTUlUAHVub3JkZXJlZF9tYXA6OmF0OiBrZXkgbm90IGZvdW5kAG5vdGUgb3JpZ2luIABmb3VuZCBleHRlcm5hbCB1c2UgZm9yCgAgIGR1ZSB0byAAaXNDb25jcmV0ZVR5cGUodHlwZSkAIW5vZGUtPmV4cHItPmlzPEdldExvY2FsPigpAGFkZGVkTm9kZXMuZmluZChub2RlKSA9PSBhZGRlZE5vZGVzLmVuZCgpAHZhciAAZXhwciAAcGhpIABjb25kIABibG9jayAoACBjb25kcyldCgB6ZXh0AGJhZABdIChvcmlnaW46IABnZXRVc2VzCgBhZGRTZXRVc2VzIGZvciAAIGdldHMKAHNldHMuc2l6ZSgpIDw9IDEAYWRkU2V0VXNlcwBhZGQgbnVsbHB0cgoAYWRkIGEgdmFsdWUKAE5PREUgACAgYW5kIHRoYXQgaXMgc2V0IHRvIGxvY2FsIABCSU5BUllFTl9ERUJVR19TT1VQRVJJRlkAIW5vZGUtPmlzQmFkKCkALi9zcmMvZGF0YWZsb3cvZ3JhcGguaABtYWtlWmVyb0NvbXAAaXNDb25jcmV0ZVR5cGUoY3Vyci0+dmFsdWUtPnR5cGUpAGRvVmlzaXRTZXRMb2NhbAAhaXNJblVucmVhY2hhYmxlKG90aGVyKQBkb1Zpc2l0TG9vcABjb25kaXRpb24AZG9WaXNpdElmACFpc0luVW5yZWFjaGFibGUoc3RhdGUubG9jYWxzKQBtZXJnZQBpc0luVW5yZWFjaGFibGUoKQBONHdhc205U291cGVyaWZ5RQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzlTb3VwZXJpZnlFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfOVNvdXBlcmlmeUVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzlTb3VwZXJpZnlFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfOVNvdXBlcmlmeUV2RUUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJTlNfMTN1bm9yZGVyZWRfc2V0SWpOU180aGFzaElqRUVOU184ZXF1YWxfdG9JakVFTlNfOWFsbG9jYXRvcklqRUVFRU5TNl9JUzhfRUVFRQAhc2V0LT5lbXB0eSgpAC4vc3JjL2lyL2VxdWl2YWxlbnRfc2V0cy5oAHJlc2V0AGJlc3QgIT0gSW5kZXgoLTEpAC4vc3JjL3Bhc3Nlcy9TaW1wbGlmeUxvY2Fscy5jcHAAdmlzaXRHZXRMb2NhbAAoKm51bUdldExvY2FscylbY3Vyci0+aW5kZXhdID49IDEAcmV0ID49IDEAY2FuVXNlTG9vcFJldHVyblZhbHVlKGN1cnIpAHJ1bk1haW5PcHRpbWl6YXRpb25zAHNldC0+aXNUZWUoKQB2aXNpdERyb3AAIXNldC0+aXNUZWUoKQAhY3Vyci0+Y2FzdDxJZj4oKS0+aWZGYWxzZQBkb05vdGVOb25MaW5lYXIAZG9Ob3RlSWZFbHNlQ29uZGl0aW9uAGRvTm90ZUlmRWxzZVRydWUAaWZmLT5pZkZhbHNlAGRvTm90ZUlmRWxzZUZhbHNlACFwcmV2aW91cy0+aXNUZWUoKQB2aXNpdFBvc3QAc2VsZi0+c2lua2FibGVzLmNvdW50KGluZGV4KSA9PSAwAE40d2FzbTE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUVOU183VmlzaXRvcklTM192RUVFRUVFAE40d2FzbTIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUVOU183VmlzaXRvcklTMl92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjFFRUV2RUUATjR3YXNtMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMzX3ZFRUVFRUUATjR3YXNtMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjBFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjBFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIwRUxiMUVFRXZFRQAhKCpicmVha3NbMF0uYnJwKS0+dGVtcGxhdGUgY2FzdDxCcmVhaz4oKS0+dmFsdWUAb3B0aW1pemVCbG9ja1JldHVybgBvcHRpbWl6ZUlmUmV0dXJuAGlmZi0+aWZGYWxzZS0+dHlwZSAhPSB1bnJlYWNoYWJsZQBpZlRydWVCbG9jay0+dHlwZSAhPSBub25lAGlmRmFsc2VCbG9jay0+dHlwZSAhPSBub25lAGlmZi0+dHlwZSAhPSBub25lAE40d2FzbTE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUVOU183VmlzaXRvcklTM192RUVFRUVFAE40d2FzbTIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUVOU183VmlzaXRvcklTMl92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMUVMYjFFRUV2RUUAZXhwcmVzc2lvblN0YWNrW2V4cHJlc3Npb25TdGFjay5zaXplKCkgLSAxXSA9PSBjdXJyAE40d2FzbTE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUVOU183VmlzaXRvcklTM192RUVFRUVFAE40d2FzbTIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUVOU183VmlzaXRvcklTMl92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMEVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjBFTGIwRUxiMEVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0U2ltcGxpZnlMb2NhbHNJTGIwRUxiMEVMYjBFRUV2RUUATjR3YXNtMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMzX3ZFRUVFRUUATjR3YXNtMjFMaW5lYXJFeGVjdXRpb25XYWxrZXJJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRU5TXzdWaXNpdG9ySVMyX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjFFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNFNpbXBsaWZ5TG9jYWxzSUxiMUVMYjFFTGIxRUVFTlNfN1Zpc2l0b3JJUzJfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTRTaW1wbGlmeUxvY2Fsc0lMYjFFTGIxRUxiMUVFRXZFRQABAAEAAQBTQUZFX0hFQVBfU1RPUkVfAEEAU0FGRV9IRUFQX0xPQURfAFVfAFtQYXNzUnVubmVyXSBydW5uaW5nIHBhc3Nlcy4uLgBiZWZvcmUAW1Bhc3NSdW5uZXJdIHBhc3NlcyB0b29rIAAgc2Vjb25kcy4AW1Bhc3NSdW5uZXJdIChmaW5hbCB2YWxpZGF0aW9uKQoAW1Bhc3NSdW5uZXJdICAgcnVubmluZyBwYXNzOiAALi4uIABbUGFzc1J1bm5lcl0gICAodmFsaWRhdGluZykKAExhc3QgcGFzcyAoACkgYnJva2UgdmFsaWRhdGlvbi4gSGVyZSBpcyB0aGUgbW9kdWxlIGJlZm9yZTogCgApIGJyb2tlIHZhbGlkYXRpb24uIFJ1biB3aXRoIEJJTkFSWUVOX1BBU1NfREVCVUc9MiBpbiB0aGUgZW52IHRvIHNlZSB0aGUgZWFybGllciBzdGF0ZSwgb3IgMyB0byBkdW1wIGJ5bi0qIGZpbGVzIGZvciBlYWNoIHBhc3MKAGZpbmFsIG1vZHVsZSBkb2VzIG5vdCB2YWxpZGF0ZQoAZG9Xb3JrZXJzLnNpemUoKSA+IDAALi9zcmMvc3VwcG9ydC90aHJlYWRzLmNwcAB3b3JrAGRvV29ya2Vycy5zaXplKCkgPT0gbnVtACFydW5uaW5nAG9sZCA9PSB0aHJlYWRzLnNpemUoKQByZXNldFRocmVhZHNBcmVSZWFkeQBaWk40d2FzbTEwUGFzc1J1bm5lcjNydW5FdkVOSzMkXzBjbEV2RVVsdkVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpaTjR3YXNtMTBQYXNzUnVubmVyM3J1bkV2RU5LMyRfMGNsRXZFVWx2RV9OU185YWxsb2NhdG9ySVM1X0VFRk5TMl8xNVRocmVhZFdvcmtTdGF0ZUV2RUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZONHdhc20xNVRocmVhZFdvcmtTdGF0ZUV2RUVFAGZ1bmMtPm5hbWUgPT0gbmFtZQAuL3NyYy9wYXNzZXMvcGFzcy5jcHAAY2hlY2sAW1Bhc3NSdW5uZXJdIFBBU1NfREVCVUcgY2hlY2sgZmFpbGVkOiBoYWQgU3RhY2sgSVIgYmVmb3JlIGFuZCBhZnRlciB0aGUgcGFzcyByYW4sIGFuZCB0aGUgcGFzcyBtb2RpZmllZCB0aGUgbWFpbiBJUiwgd2hpY2ggaW52YWxpZGF0ZXMgU3RhY2sgSVIgLSBwYXNzIHNob3VsZCBoYXZlIGJlZW4gbWFya2VkICdtb2RpZmllc0JpbmFyeWVuSVInAFtQYXNzUnVubmVyXSBQQVNTX0RFQlVHIGNoZWNrIGZhaWxlZDogaGFkIFN0YWNrIElSIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIHBhc3MgcmFuLCBhbmQgdGhlIHBhc3MgbW9kaWZpZWQgZ2xvYmFsIGZ1bmN0aW9uIHN0YXRlIC0gcGFzcyBzaG91bGQgaGF2ZSBiZWVuIG1hcmtlZCAnbW9kaWZpZXNCaW5hcnllbklSJwBwYXNzLT5pc0Z1bmN0aW9uUGFyYWxsZWwoKQBydW5QYXNzT25GdW5jdGlvbgBtb2R1bGUAc3RhcnQAOzsgY3VzdG9tIHNlY3Rpb24gIgAiLCBzaXplIABmdW5jIAAgKDsgACA7KQAgKDsgaGFzIFN0YWNrIElSIDspACh0eXBlIABwYXJhbSAAcmVzdWx0IABsb2NhbCAAZW5kAGV4cG9ydCAAZnVuYwB0YWJsZQApKQBkYXRhIAAgIgAiKQoAXG4AXDBkAFx0AFwwYwBcMDgAXFwAXCIAXCcAc2hhcmVkIABlbGVtIAAgYW55ZnVuYykAZ2xvYmFsIAAobXV0IABpbXBvcnQgAChnbG9iYWwgAChmdW5jAHBhcmFtAE40d2FzbTdQcmludGVyRQBOU3QzX18yMTliYXNpY19vc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUAKGdsb2JhbCBzY29wZSkAc3RhbGUgdHlwZSBmb3VuZCBpbiAAIG9uIAAKKG1hcmtlZCBhcyAALCBzaG91bGQgYmUgAGV4cHJlc3Npb24gc2VlbiBtb3JlIHRoYW4gb25jZSBpbiB0aGUgdHJlZSBpbiAALCBvbiAKAFt3YXNtLXZhbGlkYXRvciBlcnJvciBpbiBmdW5jdGlvbiAAXSAAW3dhc20tdmFsaWRhdG9yIGVycm9yIGluIG1vZHVsZV0gAHN0YXJ0IG11c3QgYmUgZm91bmQAc3RhcnQgbXVzdCBoYXZlIDAgcGFyYW1zAHN0YXJ0IG11c3Qgbm90IHJldHVybiBhIHZhbHVlAHVuZXhwZWN0ZWQgZmFsc2U6IABzZWdtZW50IG9mZnNldCBzaG91bGQgYmUgaTMyAHNlZ21lbnQgb2Zmc2V0IHNob3VsZCBiZSByZWFzb25hYmxlAHNlZ21lbnQgbmFtZSBzaG91bGQgYmUgdmFsaWQAICE9IABtZW1vcnkAbWVtb3J5IG1heCA+PSBpbml0aWFsAG1heCBtZW1vcnkgbXVzdCBiZSA8PSA0R0IAbWVtb3J5IGlzIHNoYXJlZCwgYnV0IGF0b21pY3MgYXJlIGRpc2FibGVkAHNlZ21lbnQgc2l6ZSBzaG91bGQgZml0IGluIG1lbW9yeSAoaW5pdGlhbCkAc2VnbWVudCBzaXplIHNob3VsZCBmaXQgaW4gbWVtb3J5IChlbmQpAHVuZXhwZWN0ZWQgdHJ1ZTogAGdsb2JhbCBpbml0IG11c3QgYmUgbm9uLW51bGwAZ2xvYmFsIGluaXQgbXVzdCBiZSB2YWxpZABnbG9iYWwgaW5pdCBtdXN0IGhhdmUgY29ycmVjdCB0eXBlAChvbiBnbG9iYWwgAEV4cG9ydGVkIGZ1bmN0aW9uIG11c3Qgbm90IGhhdmUgaTY0IHJldHVybiB0eXBlAEV4cG9ydGVkIGZ1bmN0aW9uIG11c3Qgbm90IGhhdmUgaTY0IHBhcmFtZXRlcnMAbW9kdWxlIGZ1bmN0aW9uIGV4cG9ydHMgbXVzdCBiZSBmb3VuZABtb2R1bGUgZ2xvYmFsIGV4cG9ydHMgbXVzdCBiZSBmb3VuZAAwAG1vZHVsZSB0YWJsZSBleHBvcnRzIG11c3QgYmUgZm91bmQAbW9kdWxlIG1lbW9yeSBleHBvcnRzIG11c3QgYmUgZm91bmQAbW9kdWxlIGV4cG9ydHMgbXVzdCBiZSB1bmlxdWUAID09IABNb2R1bGU6OmdldEZ1bmN0aW9uOiAASW1wb3J0ZWQgZnVuY3Rpb24gbXVzdCBub3QgaGF2ZSBpNjQgcmV0dXJuIHR5cGUASW1wb3J0ZWQgZnVuY3Rpb24gbXVzdCBub3QgaGF2ZSBpNjQgcGFyYW1ldGVycwBUYWJsZSBpbXBvcnQgcmVjb3JkIGV4aXN0cyBidXQgdGFibGUgaXMgbm90IG1hcmtlZCBhcyBpbXBvcnRlZABNZW1vcnkgaW1wb3J0IHJlY29yZCBleGlzdHMgYnV0IG1lbW9yeSBpcyBub3QgbWFya2VkIGFzIGltcG9ydGVkAHBhcmFtcyBtdXN0IGJlIGNvbmNyZXRlbHkgdHlwZWQAdmFycyBtdXN0IGJlIGNvbmNyZXRlbHkgdHlwZWQAZnVuY3Rpb24gYm9keSB0eXBlIG11c3QgbWF0Y2gsIGlmIGZ1bmN0aW9uIHJldHVybnMAZnVuY3Rpb24gcmVzdWx0IG11c3QgbWF0Y2gsIGlmIGZ1bmN0aW9uIGhhcyByZXR1cm5zAGFsbCBuYW1lZCBicmVhayB0YXJnZXRzIG11c3QgZXhpc3QAZnVuY3Rpb24gcGFyYW1zIG11c3QgbWF0Y2ggaXRzIGRlY2xhcmVkIHR5cGUAZnVuY3Rpb24gcmVzdWx0IG11c3QgbWF0Y2ggaXRzIGRlY2xhcmVkIHR5cGUAbWVtb3J5Lmdyb3cgbXVzdCBoYXZlIDEgb3BlcmFuZABtZW1vcnkuZ3JvdyBtdXN0IGhhdmUgaTMyIG9wZXJhbmQAZnVuY3Rpb24gcmVzdWx0cyBtdXN0IG1hdGNoAGNhbiBvbmx5IGRyb3AgYSB2YWxpZCB2YWx1ZQBzZWxlY3QgbGVmdCBtdXN0IGJlIHZhbGlkAHNlbGVjdCByaWdodCBtdXN0IGJlIHZhbGlkAHNlbGVjdCBjb25kaXRpb24gbXVzdCBiZSB2YWxpZABzZWxlY3Qgc2lkZXMgbXVzdCBiZSBlcXVhbABiaW5hcnkgY2hpbGQgdHlwZXMgbXVzdCBiZSBlcXVhbABpMzIgb3AAaTY0IG9wAGYzMiBvcABmNjQgb3AAdW5hcmllcyBtdXN0IG5vdCByZWNlaXZlIGEgbm9uZSBhcyB0aGVpciBpbnB1dABpMzIgdW5hcnkgdmFsdWUgdHlwZSBtdXN0IGJlIGNvcnJlY3QAaTY0IHVuYXJ5IHZhbHVlIHR5cGUgbXVzdCBiZSBjb3JyZWN0AGYzMiB1bmFyeSB2YWx1ZSB0eXBlIG11c3QgYmUgY29ycmVjdABmNjQgdW5hcnkgdmFsdWUgdHlwZSBtdXN0IGJlIGNvcnJlY3QAaTMyLmVxeiBpbnB1dCBtdXN0IGJlIGkzMgBpNjQuZXF6IGlucHV0IG11c3QgYmUgaTY0AGV4dGVuZCB0eXBlIG11c3QgYmUgY29ycmVjdAB3cmFwIHR5cGUgbXVzdCBiZSBjb3JyZWN0AHRydW5jIHR5cGUgbXVzdCBiZSBjb3JyZWN0AHJlaW50ZXJwcmV0L2YzMiB0eXBlIG11c3QgYmUgY29ycmVjdAByZWludGVycHJldC9mNjQgdHlwZSBtdXN0IGJlIGNvcnJlY3QAY29udmVydCB0eXBlIG11c3QgYmUgY29ycmVjdABwcm9tb3RlIHR5cGUgbXVzdCBiZSBjb3JyZWN0AGRlbW90ZSB0eXBlIG11c3QgYmUgY29ycmVjdAByZWludGVycHJldC9pMzIgdHlwZSBtdXN0IGJlIGNvcnJlY3QAcmVpbnRlcnByZXQvaTY0IHR5cGUgbXVzdCBiZSBjb3JyZWN0AEF0b21pYyBvcGVyYXRpb24gKGF0b21pY3MgYXJlIGRpc2FibGVkKQBBdG9taWMgb3BlcmF0aW9uIHdpdGggbm9uLXNoYXJlZCBtZW1vcnkAQXRvbWljV2FrZSBtdXN0IGhhdmUgdHlwZSBpMzIAQXRvbWljV2FrZSBwb2ludGVyIHR5cGUgbXVzdCBiZSBpMzIAQXRvbWljV2FrZSB3YWtlQ291bnQgdHlwZSBtdXN0IGJlIGkzMgBBdG9taWNXYWl0IG11c3QgaGF2ZSB0eXBlIGkzMgBBdG9taWNXYWl0IHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBBdG9taWNXYWl0IGV4cGVjdGVkIHR5cGUgbXVzdCBiZSBpbnQAQXRvbWljV2FpdCBleHBlY3RlZCB0eXBlIG11c3QgbWF0Y2ggb3BlcmFuZABBdG9taWNXYWl0IHRpbWVvdXQgdHlwZSBtdXN0IGJlIGk2NABjbXB4Y2hnIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBjbXB4Y2hnIG9wZXJhbmQgdHlwZXMgbXVzdCBtYXRjaABDbXB4Y2hnIHJlc3VsdCB0eXBlIG11c3QgbWF0Y2ggZXhwZWN0ZWQAQ21weGNoZyByZXN1bHQgdHlwZSBtdXN0IG1hdGNoIHJlcGxhY2VtZW50AEF0b21pYyBvcGVyYXRpb25zIGFyZSBvbmx5IHZhbGlkIG9uIGludCB0eXBlcwA4LWJ5dGUgbWVtIG9wZXJhdGlvbnMgYXJlIG9ubHkgYWxsb3dlZCB3aXRoIDgtYnl0ZSB3YXNtIHR5cGVzAE1lbW9yeSBvcGVyYXRpb25zIG11c3QgYmUgMSwyLDQsIG9yIDggYnl0ZXMAQXRvbWljUk1XIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBBdG9taWNSTVcgcmVzdWx0IHR5cGUgbXVzdCBtYXRjaCBvcGVyYW5kAHN0b3JlIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBzdG9yZSB2YWx1ZSB0eXBlIG11c3Qgbm90IGJlIG5vbmUAc3RvcmUgdmFsdWUgdHlwZSBtdXN0IG1hdGNoAGF0b21pYyBhY2Nlc3NlcyBtdXN0IGhhdmUgbmF0dXJhbCBhbGlnbm1lbnQAYmFkIGFsaWdubWVudDogAGFsaWdubWVudCBtdXN0IG5vdCBleGNlZWQgbmF0dXJhbABsb2FkIHBvaW50ZXIgdHlwZSBtdXN0IGJlIGkzMgBhdG9taWMgbG9hZHMgbXVzdCBiZSB1bnNpZ25lZABzZXRfZ2xvYmFsIG5hbWUgbXVzdCBiZSB2YWxpZCAoYW5kIG5vdCBhbiBpbXBvcnQ7IGltcG9ydHMgY2FuJ3QgYmUgbW9kaWZpZWQpAHNldF9nbG9iYWwgZ2xvYmFsIG11c3QgYmUgbXV0YWJsZQBzZXRfZ2xvYmFsIHZhbHVlIG11c3QgaGF2ZSByaWdodCB0eXBlAGdldF9nbG9iYWwgbmFtZSBtdXN0IGJlIHZhbGlkAHNldF9sb2NhbCBpbmRleCBtdXN0IGJlIHNtYWxsIGVub3VnaABzZXRfbG9jYWwgdHlwZSBtdXN0IGJlIGNvcnJlY3QAc2V0X2xvY2FsIHR5cGUgbXVzdCBtYXRjaCBmdW5jdGlvbgBnZXRfbG9jYWwgaW5kZXggbXVzdCBiZSBzbWFsbCBlbm91Z2gAZ2V0X2xvY2FsIG11c3QgaGF2ZSBhIHZhbGlkIHR5cGUgLSBjaGVjayB3aGF0IHlvdSBwcm92aWRlZCB3aGVuIHlvdSBjb25zdHJ1Y3RlZCB0aGUgbm9kZQBnZXRfbG9jYWwgbXVzdCBoYXZlIHByb3BlciB0eXBlAGNhbGxfaW5kaXJlY3QgdHlwZSBtdXN0IGV4aXN0AGluZGlyZWN0IGNhbGwgdGFyZ2V0IG11c3QgYmUgYW4gaTMyAGNhbGwgcGFyYW0gbnVtYmVyIG11c3QgbWF0Y2gAY2FsbCBwYXJhbSB0eXBlcyBtdXN0IG1hdGNoAChvbiBhcmd1bWVudCAAY2FsbF9pbXBvcnQgdGFyZ2V0IG11c3QgZXhpc3QAY2FsbGVkIGltcG9ydCBtdXN0IGJlIGZ1bmN0aW9uAGNhbGwgdGFyZ2V0IG11c3QgZXhpc3QAKHBlcmhhcHMgaXQgc2hvdWxkIGJlIGEgQ2FsbEltcG9ydCBpbnN0ZWFkIG9mIENhbGw/KQoAYnJfdGFibGUgY29uZGl0aW9uIG11c3QgYmUgaTMyAGJyZWFrcyBtdXN0IGhhdmUgYSB2YWxpZCB2YWx1ZQBhbGwgYnJlYWsgdGFyZ2V0cyBtdXN0IGJlIHZhbGlkAGJyZWFrIGNvbmRpdGlvbiBtdXN0IGJlIGkzMgBpdGVyICE9IGJyZWFrSW5mb3MuZW5kKCkALi9zcmMvd2FzbS93YXNtLXZhbGlkYXRvci5jcHAAYnJlYWtzIHRvIGEgbG9vcCBjYW5ub3QgcGFzcyBhIHZhbHVlAGJhZCBib2R5IGZvciBhIGxvb3AgdGhhdCBoYXMgbm8gdmFsdWUAbmFtZXMgaW4gQmluYXJ5ZW4gSVIgbXVzdCBiZSB1bmlxdWUgLSBJUiBnZW5lcmF0b3JzIG11c3QgZW5zdXJlIHRoYXQAaWYgY29uZGl0aW9uIG11c3QgYmUgdmFsaWQAaWYgd2l0aG91dCBlbHNlIG11c3Qgbm90IHJldHVybiBhIHZhbHVlIGluIGJvZHkAaWYgd2l0aG91dCBlbHNlIGFuZCByZWFjaGFibGUgY29uZGl0aW9uIG11c3QgYmUgbm9uZQByZXR1cm5pbmcgaWYtZWxzZSdzIHRydWUgbXVzdCBoYXZlIHJpZ2h0IHR5cGUAcmV0dXJuaW5nIGlmLWVsc2UncyBmYWxzZSBtdXN0IGhhdmUgcmlnaHQgdHlwZQB1bnJlYWNoYWJsZSBpZi1lbHNlIG11c3QgaGF2ZSB1bnJlYWNoYWJsZSB0cnVlAHVucmVhY2hhYmxlIGlmLWVsc2UgbXVzdCBoYXZlIHVucmVhY2hhYmxlIGZhbHNlAGlmIHR5cGUgbXVzdCBtYXRjaCBjb25jcmV0ZSBpZlRydWUAb3RoZXIgYXJtIG11c3QgbWF0Y2ggY29uY3JldGUgaWZUcnVlAGlmIHR5cGUgbXVzdCBtYXRjaCBjb25jcmV0ZSBpZkZhbHNlAG90aGVyIGFybSBtdXN0IG1hdGNoIGNvbmNyZXRlIGlmRmFsc2UAYnJlYWsgYXJpdGllcyBtdXN0IGJlID4gMCBpZiBibG9jayBoYXMgYSB2YWx1ZQBicmVhayBhcml0aWVzIG11c3QgYmUgMCBpZiBibG9jayBoYXMgbm8gdmFsdWUAYmxvY2srYnJlYWtzIG11c3QgaGF2ZSByaWdodCB0eXBlIGlmIGJyZWFrcyByZXR1cm4gYSB2YWx1ZQBibG9jayticmVha3MgbXVzdCBoYXZlIHJpZ2h0IHR5cGUgaWYgYnJlYWtzIGhhdmUgYXJpdHkAYnJlYWsgYXJpdGllcyBtdXN0IG1hdGNoAGJsb2NrK2JyZWFrcyBtdXN0IGhhdmUgcmlnaHQgdHlwZSBpZiBibG9jayBlbmRzIHdpdGggYSByZWFjaGFibGUgdmFsdWUAaWYgYmxvY2sgZW5kcyB3aXRoIGEgbm9uZSwgYnJlYWtzIGNhbm5vdCBzZW5kIGEgdmFsdWUgb2YgYW55IHR5cGUAbm9uLWZpbmFsIGJsb2NrIGVsZW1lbnRzIHJldHVybmluZyBhIHZhbHVlIG11c3QgYmUgZHJvcCgpZWQgKGJpbmFyeWVuJ3MgYXV0b2Ryb3Agb3B0aW9uIG1pZ2h0IGhlbHAgeW91KQAob24gaW5kZXggADoKAAopLCB0eXBlOiAAaWYgYmxvY2sgaXMgbm90IHJldHVybmluZyBhIHZhbHVlLCBmaW5hbCBlbGVtZW50IHNob3VsZCBub3QgZmxvdyBvdXQgYSB2YWx1ZQBibG9jayB3aXRoIHZhbHVlIGFuZCBsYXN0IGVsZW1lbnQgd2l0aCB2YWx1ZSBtdXN0IG1hdGNoIHR5cGVzAGJsb2NrIHdpdGggdmFsdWUgbXVzdCBub3QgaGF2ZSBsYXN0IGVsZW1lbnQgdGhhdCBpcyBub25lAGJsb2NrIHdpdGggYSB2YWx1ZSBtdXN0IG5vdCBiZSBlbXB0eQBONHdhc20xN0Z1bmN0aW9uVmFsaWRhdG9yRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE3RnVuY3Rpb25WYWxpZGF0b3JFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTdGdW5jdGlvblZhbGlkYXRvckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE3RnVuY3Rpb25WYWxpZGF0b3JFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTdGdW5jdGlvblZhbGlkYXRvckV2RUUAYnluLQAud2FzbQB3cml0aW5nIHRleHQgdG8gAE5TdDNfXzIxM2Jhc2ljX2ZpbGVidWZJY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjE0YmFzaWNfb2ZzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFRUUAT3BlbmluZyAnAEZhaWxlZCBvcGVuaW5nICcAdwBhAHIAcisAdysAYSsAd2IAYWIAcmIAcitiAHcrYgBhK2IAd3JpdGluZyBiaW5hcnkgdG8gAGZpbmlzaFVwAHdyaXRpbmcgYnVmZmVyACBhdCAAIGFuZCBwb2ludGVyIGlzIGF0IAB3cml0ZUludDg6IABiYWNrcGF0Y2hJbnQzMjogAHNpemVGaWVsZFNpemUgPCBNYXhMRUIzMkJ5dGVzAC4vc3JjL3dhc20vd2FzbS1iaW5hcnkuY3BwAGZpbmlzaFNlY3Rpb24Ad3JpdGVBdFUzMkxFQjogAHdyaXRlVTMyTEVCOiAAd3JpdGVJbnQzMjogAGR5bGluawAifQBtYXBwZWRGdW5jdGlvbnMuY291bnQobmFtZSkAZ2V0RnVuY3Rpb25JbmRleAA9PSB3cml0ZVNvdXJjZU1hcFVybABzb3VyY2VNYXBwaW5nVVJMAD09IHdyaXRlTmFtZXMAZW1pdHRlZCA9PSBtYXBwZWRGdW5jdGlvbnMuc2l6ZSgpAHdyaXRlTmFtZXMAbmFtZQB0b28gbWFueSBub24tY29uc3RhbnQtb2Zmc2V0IGRhdGEgc2VnbWVudHMsIHdhc20gVk1zIG1heSBub3QgYWNjZXB0IHRoaXMgYmluYXJ5AHp6IGNvbnN0IG5vZGUgZG9uZS4KAHdyaXRlSW50NjQ6IAB3cml0ZVM2NExFQjogACAoYXQgACkKAHdyaXRlUzMyTEVCOiAAbWFwcGVkR2xvYmFscy5jb3VudChuYW1lKQBnZXRHbG9iYWxJbmRleAB6eiBub2RlOiBCbG9jawAgIAA9PSB3cml0ZUZ1bmN0aW9ucwB3cml0ZSBvbmUgYXQAd3JpdGluZwB3cml0ZSBTdGFjayBJUgB3cml0ZSBCaW5hcnllbiBJUgBib2R5IHNpemU6IAAsIHdyaXRpbmcgYXQgACwgbmV4dCBzdGFydHMgYXQgAHdyaXRlRnVuY3Rpb25zAD09IHdyaXRlVGFibGVFbGVtZW50cwA9PSB3cml0ZVN0YXJ0AD09IHdyaXRlZXhwb3J0cwB3cml0ZSBvbmUAPT0gd3JpdGVnbG9iYWxzAD09IHdyaXRlTWVtb3J5AD09IHdyaXRlRnVuY3Rpb25UYWJsZURlY2xhcmF0aW9uAD09IHdyaXRlRnVuY3Rpb25TaWduYXR1cmVzAD09IHdyaXRlSW1wb3J0cwA9PSB3cml0ZVR5cGVzAHsidmVyc2lvbiI6Mywic291cmNlcyI6WwBdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiAD09IHdyaXRlSGVhZGVyAEJJTkFSWUVOX1BBU1NfREVCVUcATjR3YXNtMThBY2Nlc3NJbnN0cnVtZW50ZXJFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMThBY2Nlc3NJbnN0cnVtZW50ZXJFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMThBY2Nlc3NJbnN0cnVtZW50ZXJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xOEFjY2Vzc0luc3RydW1lbnRlckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xOEFjY2Vzc0luc3RydW1lbnRlckV2RUUAdgBONHdhc204U2FmZUhlYXBFAGN1cnJWYWx1ZXNbaV0gPj0gY3Vyci0+Y29udGVudHMuZW5kW2ldAC4vc3JjL3Bhc3Nlcy9SZWR1bmRhbnRTZXRFbGltaW5hdGlvbi5jcHAAZmxvd1ZhbHVlcwAhZW1wdHkoKQAuL3NyYy9zdXBwb3J0L3VuaXF1ZV9kZWZlcnJpbmdfcXVldWUuaABwb3AATjR3YXNtMjNSZWR1bmRhbnRTZXRFbGltaW5hdGlvbkUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzlDRkdXYWxrZXJJTlNfMjNSZWR1bmRhbnRTZXRFbGltaW5hdGlvbkVOU183VmlzaXRvcklTMl92RUVOU180SW5mb0VFRUVFAE40d2FzbTlDRkdXYWxrZXJJTlNfMjNSZWR1bmRhbnRTZXRFbGltaW5hdGlvbkVOU183VmlzaXRvcklTMV92RUVOU180SW5mb0VFRQBONHdhc20xN0NvbnRyb2xGbG93V2Fsa2VySU5TXzIzUmVkdW5kYW50U2V0RWxpbWluYXRpb25FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzIzUmVkdW5kYW50U2V0RWxpbWluYXRpb25FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18yM1JlZHVuZGFudFNldEVsaW1pbmF0aW9uRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzIzUmVkdW5kYW50U2V0RWxpbWluYXRpb25FdkVFAFJvb3QALi9zcmMvY2ZnL1JlbG9vcGVyLmNwcABSZW5kZXIAQ2FsY3VsYXRlAExvb3AASGFuZGxlRm9sbG93dXBNdWx0aXBsZXMATG9vcC0+RW50cmllcy5zaXplKCkgPiAwAGJsb2NrJAAkYnJlYWsATjNDRkcxM011bHRpcGxlU2hhcGVFAE4zQ0ZHNVNoYXBlRQBJbm5lckJsb2Nrcy5zaXplKCkgPiAwAE1ha2VMb29wAHNoYXBlJAAkY29udGludWUATjNDRkc5TG9vcFNoYXBlRQAhRGVmYXVsdFRhcmdldCAmJiAiYmxvY2sgaGFzIGJyYW5jaGVzIHdpdGhvdXQgYSBkZWZhdWx0IChudWxscHRyIGZvciB0aGUgY29uZGl0aW9uKSIARGVmYXVsdFRhcmdldABEZXRhaWxzLT5Db25kaXRpb24ARGV0YWlscy0+VHlwZSA9PSBCcmFuY2g6OkJyZWFrACFSb290AHN3aXRjaCQAJGRlZmF1bHQAJGxlYXZlACRjYXNlJABBbmNlc3RvcgBOM0NGRzExU2ltcGxlU2hhcGVFAE5TdDNfXzIxNGRlZmF1bHRfZGVsZXRlSU40d2FzbThSZVJlbG9vcDEwVHJpYWdlVGFza0VFRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfcG9pbnRlcklQTjR3YXNtOFJlUmVsb29wMTBUcmlhZ2VUYXNrRU5TXzE0ZGVmYXVsdF9kZWxldGVJUzNfRUVOU185YWxsb2NhdG9ySVMzX0VFRUUAIWJlZm9yZS0+U3dpdGNoQ29uZGl0aW9uAC4vc3JjL3Bhc3Nlcy9SZVJlbG9vcC5jcHAAaGFuZGxlACFjb250YWlucyhCcmFuY2hlc091dCwgVGFyZ2V0KQBBZGRCcmFuY2hUbwBBZGRTd2l0Y2hCcmFuY2hUbwBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlONHdhc204UmVSZWxvb3AxMFRyaWFnZVRhc2tFTlNfOWFsbG9jYXRvcklTM19FRUVFAE40d2FzbThSZVJlbG9vcDZJZlRhc2tFAE40d2FzbThSZVJlbG9vcDRUYXNrRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlONHdhc204UmVSZWxvb3A2SWZUYXNrRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQBONHdhc204UmVSZWxvb3A5QmxvY2tUYXNrRQBOU3QzX18yMjBfX3NoYXJlZF9wdHJfZW1wbGFjZUlONHdhc204UmVSZWxvb3A5QmxvY2tUYXNrRU5TXzlhbGxvY2F0b3JJUzNfRUVFRQBONHdhc204UmVSZWxvb3AxMFRyaWFnZVRhc2tFAE40d2FzbThSZVJlbG9vcEUAbmV3VG9PbGRbaV0gPCBjdXJyLT5wYXJhbXMuc2l6ZSgpAC4vc3JjL3Bhc3Nlcy9SZW9yZGVyTG9jYWxzLmNwcABONHdhc20xM1Jlb3JkZXJMb2NhbHNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTNSZW9yZGVyTG9jYWxzRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzEzUmVvcmRlckxvY2Fsc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzEzUmVvcmRlckxvY2Fsc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xM1Jlb3JkZXJMb2NhbHNFdkVFAGNvdW50cy0+Y291bnQoY3Vyci0+dGFyZ2V0KSA+IDAALi9zcmMvcGFzc2VzL1Jlb3JkZXJGdW5jdGlvbnMuY3BwAE40d2FzbTE2Q2FsbENvdW50U2Nhbm5lckUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNkNhbGxDb3VudFNjYW5uZXJFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTZDYWxsQ291bnRTY2FubmVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTZDYWxsQ291bnRTY2FubmVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE2Q2FsbENvdW50U2Nhbm5lckV2RUUATjR3YXNtMTZSZW9yZGVyRnVuY3Rpb25zRQBicmFuY2hlc1NlZW4uZW1wdHkoKQAuL3NyYy9wYXNzZXMvUmVtb3ZlVW51c2VkTmFtZXMuY3BwAE40d2FzbTE3UmVtb3ZlVW51c2VkTmFtZXNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTdSZW1vdmVVbnVzZWROYW1lc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xN1JlbW92ZVVudXNlZE5hbWVzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTdSZW1vdmVVbnVzZWROYW1lc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xN1JlbW92ZVVudXNlZE5hbWVzRXZFRQBONHdhc20yNlJlbW92ZVVudXNlZE1vZHVsZUVsZW1lbnRzRQBpZlN0YWNrLmVtcHR5KCkALi9zcmMvcGFzc2VzL1JlbW92ZVVudXNlZEJycy5jcHAAaWZUcnVlICYmIGlmRmFsc2UALi9zcmMvd2FzbS93YXNtLmNwcABmaW5hbGl6ZQAhYnIxLT52YWx1ZQAhYnIyLT52YWx1ZQAhYnItPnZhbHVlAHRhYmxpZnl8AHRhYmxlW2luZGV4XSA9PSBkZWZhdWx0TmFtZQB0YWJsaWZ5ACFpc0NvbmNyZXRlVHlwZShpZmYtPnR5cGUpAG9wdGltaXplTG9vcAAhaXNDb25jcmV0ZVR5cGUoYmxvY2stPnR5cGUpAHNlbGYtPmlmU3RhY2suc2l6ZSgpID4gMAB2aXNpdEFueQB1c2VkRWxlbWVudHMgPiAwAGZyb250AHBvcF9iYWNrAGJhY2sATjR3YXNtMTVSZW1vdmVVbnVzZWRCcnNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTVSZW1vdmVVbnVzZWRCcnNFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTVSZW1vdmVVbnVzZWRCcnNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNVJlbW92ZVVudXNlZEJyc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNVJlbW92ZVVudXNlZEJyc0V2RUUATjR3YXNtMTJSZW1vdmVNZW1vcnlFAE1vZHVsZTo6Z2V0SW1wb3J0OiAATjR3YXNtMTNSZW1vdmVJbXBvcnRzRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzEzUmVtb3ZlSW1wb3J0c0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xM1JlbW92ZUltcG9ydHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xM1JlbW92ZUltcG9ydHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTNSZW1vdmVJbXBvcnRzRXZFRQAhZnVuYy0+c3RhY2tJUgAuL3NyYy9pci9tb2R1bGUtdXRpbHMuaABjb3B5RnVuY3Rpb24AWk40d2FzbTIxRXhwcmVzc2lvbk1hbmlwdWxhdG9yNGNvcHlFUE5TXzEwRXhwcmVzc2lvbkVSTlNfNk1vZHVsZUVFVWxTMl9FXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjR3YXNtMjFFeHByZXNzaW9uTWFuaXB1bGF0b3I0Y29weUVQTlMyXzEwRXhwcmVzc2lvbkVSTlMyXzZNb2R1bGVFRVVsUzVfRV9OU185YWxsb2NhdG9ySVM4X0VFRlM1X1M1X0VFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGUE40d2FzbTEwRXhwcmVzc2lvbkVTNF9FRUUAZW1wdHkgdG9wbGV2ZWwsIGV4cGVjdGVkIG1vZHVsZQB0b3BsZXZlbCBkb2VzIG5vdCBzdGFydCB3aXRoIG1vZHVsZQBiYWQgbW9kdWxlIGVsZW1lbnQgAHVua25vd24gbW9kdWxlIGVsZW1lbnQAZWxlbSB3aXRob3V0IHRhYmxlAHVua25vd24gZnVuY3Rpb24gaW4gZ2V0RnVuY3Rpb25OYW1lAGFib3J0X29uIABhdG9taWMuAHdhaXQAd2FrZQBsb2NhbCBhY2Nlc3MgaW4gbm9uLWZ1bmN0aW9uIHNjb3BlAGJhZCBsb2NhbCBuYW1lAGJhZCBsb2NhbCBpbmRleABGdW5jdGlvbjo6Z2V0TG9jYWxJbmRleDogAHNldF9nbG9iYWwgb2YgaW1tdXRhYmxlAHVua25vd24gZ2xvYmFsIGluIGdldEdsb2JhbE5hbWUAbG9vcC1pbgBiYWQgZ2V0X2dsb2JhbCBuYW1lAG5vIHRhYmxlAGV4cGVjdGVkICd0eXBlJyBpbiBjYWxsX2luZGlyZWN0AGludmFsaWQgY2FsbF9pbmRpcmVjdCB0eXBlAGludmFsaWQgYnJlYWsgb2Zmc2V0AG91dCBvZiByYW5nZSBicmVhayBvZmZzZXQAaW52YWxpZCBsYWJlbABzd2l0Y2ggd2l0aCBubyB0YXJnZXRzAGJhZCBjb25zdABiYWQgbmFuIGlucHV0AGludmFsaWQgZjMyIGZvcm1hdABpbnZhbGlkIGY2NCBmb3JtYXQAaW52YWxpZCBpMzIgZm9ybWF0AGludmFsaWQgaTY0IGZvcm1hdABwYXJzZWQgdHlwZSBkb2VzIG5vdCBtYXRjaCBleHBlY3RlZCB0eXBlAHR5cGUgPT0gVHlwZTo6aTY0AGNhc3RUb0Y2NAB0eXBlID09IFR5cGU6OmkzMgBjYXN0VG9GMzIATlN0M19fMjE5YmFzaWNfaXN0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAG1hbGZvcm1lZCBhdG9taWMgcm13IGluc3RydWN0aW9uAGNtcHhjaGcAYWRkAGFuZABvcgB4b3IAeGNoZwBiYWQgYXRvbWljIHJtdyBvcGVyYXRvcgBBbGlnbiBvZiBBdG9taWMgUk1XIG11c3QgbWF0Y2ggc2l6ZQBtaXNzaW5nID0gaW4gbWVtb3J5IGF0dHJpYnV0ZQBtaXNzaW5nIHZhbHVlIGluIG1lbW9yeSBhdHRyaWJ1dGUAYmFkIG1lbW9yeSBhdHRyaWJ1dGUgaW1tZWRpYXRlAGJhZCBhbGlnbgBiYWQgb2Zmc2V0AGJhZCBtZW1vcnkgYXR0cmlidXRlAEFsaWduIG9mIEF0b21pYyBDbXB4Y2hnIG11c3QgbWF0Y2ggc2l6ZQBleHBlY3RlZCAxNiBmb3IgbWVtb3Agc2l6ZQBleHBlY3RlZCAzMiBmb3IgbWVtb3Agc2l6ZQB2YWx1ZVR5cGUgIT0gbm9uZQBsZWZ0ICYmIHJpZ2h0AGJhZCB0eXBlIGZvciAAIHZzIHZhbHVlIHR5cGUgAGF0b21pY193YWtlAGF0b21pY193YWl0AGF0b21pY19ybXcAYXRvbWljX2NtcHhjaGcAbm9wAGhvc3QAZHJvcABzZWxlY3QAdW5hcnkAc3RvcmUAbG9hZABzZXRfZ2xvYmFsAGdldF9nbG9iYWwAc2V0X2xvY2FsAGxvb3AAd2FrYSAAaW52YWxpZCB3YXNtIHR5cGUAbWVtb3J5Lmdyb3cgbmVlZHMgb25lIG9wZXJhbmQAaG9zdCBuZWVkcyB6ZXJvIG9wZXJhbmRzAG1vcmUgdGhhbiBvbmUgdGFibGUAZHVwbGljYXRlIGV4cG9ydAAhcHJlUGFyc2VJbXBvcnQgaW4gdGFibGUAZHVwbGljYXRlIGltcG9ydABpbnZhbGlkIHRhYmxlAE1vZHVsZTo6YWRkRXhwb3J0OiBlbXB0eSBuYW1lAE1vZHVsZTo6YWRkRXhwb3J0OiAAY2Fubm90IGV4cG9ydCBhIG11dGFibGUgZ2xvYmFsACFwcmVQYXJzZUltcG9ydCBpbiBnbG9iYWwAY2Fubm90IGltcG9ydCBhIG11dGFibGUgZ2xvYmFsAHByZVBhcnNlSW1wb3J0IGluIGdsb2JhbABnbG9iYWwgd2l0aG91dCBpbml0AGV4dHJhIGltcG9ydCBlbGVtZW50cwBNb2R1bGU6OmFkZEdsb2JhbDogZW1wdHkgbmFtZQBNb2R1bGU6OmFkZEdsb2JhbDogAGludmFsaWQgZXhwb3J0AG1lbW9yeSBleHBvcnRlZCBidXQgbm8gbWVtb3J5AGludmFsaWQgZXh0IGV4cG9ydABNb2R1bGU6OmdldEdsb2JhbDogAGRhdGEgYnV0IG5vIG1lbW9yeQB0b28gbWFueSBtZW1vcmllcwBzaGFyZWQAYmFkIGltcG9ydCBlbmRpbmcAZXhjZXNzaXZlIG1lbW9yeSBvZmZzZXQAZXhjZXNzaXZlIG1lbW9yeSBpbml0AHRvdGFsIG1lbW9yeSBtdXN0IGJlIDw9IDRHQgBpbnZhbGlkIHJlc3VsdCBhcml0eQB1bmtub3duIGZ1bmN0aW9uIHR5cGUAbm8gZnVuY3Rpb24gdHlwZSBbaW50ZXJuYWwgZXJyb3I/XQAhcHJlUGFyc2VJbXBvcnQgaW4gZnVuYwBpbXBvcnQgbW9kdWxlIGluc2lkZSBmdW5jdGlvbiBkZWMAcHJlUGFyc2VJbXBvcnQgaW4gZnVuYwBiYWQgZnVuYyBkZWNsYXJhdGlvbgBkdXBsaWNhdGUgZnVuY3Rpb24AdW5rbm93biBmdW5jdGlvbiB0eXBlIGluIGdldEZ1bmN0aW9uVHlwZU5hbWUAZmFuY3kgaW1wb3J0IHdlIGRvbid0IHN1cHBvcnQgeWV0AG1vcmUgdGhhbiBvbmUgbWVtb3J5AGltcG9ydCRmdW5jdGlvbiQAaW1wb3J0JGdsb2JhbABpbXBvcnQkbWVtb3J5JABpbXBvcnQkdGFibGUkAGludmFsaWQgaW1wb3J0AGludmFsaWQgZXh0IGltcG9ydABubyBuYW1lIGZvciBpbXBvcnQAYmFkIGZ1bmN0aW9uIHR5cGUgZm9yIGltcG9ydABiYWQgaW1wb3J0IGVsZW1lbnQAZXhwZWN0ZWQgcmVzdWx0AGV4cGVjdGVkIG11dABleGNlc3NpdmUgdGFibGUgaW5pdCBzaXplAGV4Y2Vzc2l2ZSB0YWJsZSBtYXggc2l6ZQBiYWQgbWVtb3J5IGxpbWl0IGRlY2xhcmF0aW9uAGR1cGxpY2F0ZSBmdW5jdGlvbiB0eXBlAFNlY3Rpb24gZXh0ZW5kcyBiZXlvbmQgZW5kIG9mIGlucHV0AHNlY3Rpb24gc2VlbiBtb3JlIHRoYW4gb25jZTogAGJhZCB1c2VyIHNlY3Rpb24gc2l6ZSwgc3RhcnRlZCBhdCAAIHBsdXMgcGF5bG9hZCAAIG5vdCBiZWluZyBlcXVhbCB0byBuZXcgcG9zaXRpb24gAGJhZCBzZWN0aW9uIHNpemUsIHN0YXJ0ZWQgYXQgAGRpZCBub3Qgc2VlIHRoZSByaWdodCBudW1iZXIgb2YgZnVuY3Rpb25zAGJhZCBleHBvcnQga2luZABpbXBvcnQtPmtpbmQgPT0gRXh0ZXJuYWxLaW5kOjpGdW5jdGlvbgBnZXRGdW5jdGlvbkluZGV4TmFtZQBiYWQgZnVuY3Rpb24gaW5kZXgAdW5leHBlY3RlZCBlbmQgb2YgaW5wdXQAZ2V0SW50ODogAD09IHJlYWROYW1lcwB1bmtub3duIG5hbWUgc3Vic2VjdGlvbiBhdCAAaW5kZXggb3V0IG9mIGJvdW5kczogAGJhZCBuYW1lcyBzdWJzZWN0aW9uIHBvc2l0aW9uIGNoYW5nZQBiYWQgbmFtZXMgc2VjdGlvbiBwb3NpdGlvbiBjaGFuZ2UAPD09AGlubGluZSBzdHJpbmcgY29udGFpbnMgTlVMTCAoMCkuIHRoYXQgaXMgdGVjaG5pY2FsbHkgdmFsaWQgaW4gd2FzbSwgYnV0IHlvdSBzaG91bGRuJ3QgZG8gaXQsIGFuZCBpdCdzIG5vdCBzdXBwb3J0ZWQgaW4gYmluYXJ5ZW4AZ2V0SW5saW5lU3RyaW5nOiAAID09PgA9PSByZWFkRnVuY3Rpb25UYWJsZURlY2xhcmF0aW9uAE9ubHkgMSB0YWJsZSBkZWZpbml0aW9uIGFsbG93ZWQgaW4gTVZQAFRhYmxlIGNhbm5vdCBiZSBib3RoIGltcG9ydGVkIGFuZCBkZWZpbmVkAEVsZW1lbnRUeXBlIG11c3QgYmUgQW55RnVuYyBpbiBNVlAAVGFibGVzIG1heSBub3QgYmUgc2hhcmVkAHNoYXJlZCBtZW1vcnkgbXVzdCBoYXZlIG1heCBzaXplAGdldFMzMkxFQjogAExFQiBkcm9wcGVkIGJpdHMgb25seSB2YWxpZCBmb3Igc2lnbmVkIExFQgBMRUIgb3ZlcmZsb3cAIExFQnNpZ24tZXh0ZW5kIHNob3VsZCBwcm9kdWNlIGEgbmVnYXRpdmUgdmFsdWUAWk40d2FzbTE3V2FzbUJpbmFyeUJ1aWxkZXI5Z2V0UzMyTEVCRXZFMyRfNABOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjR3YXNtMTdXYXNtQmluYXJ5QnVpbGRlcjlnZXRTMzJMRUJFdkUzJF80TlNfOWFsbG9jYXRvcklTNF9FRUZhdkVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGYXZFRUUAPT0gcmVhZERhdGFTZWdtZW50cwBiYWQgbWVtb3J5IGluZGV4LCBtdXN0IGJlIDAAZGVwdGggPT0gMAByZWFkRXhwcmVzc2lvbgBleHBlY3RlZCB0byByZWFkIGEgc2luZ2xlIGV4cHJlc3Npb24APT0gcG9wRXhwcmVzc2lvbgA9PSBwb3BwaW5nIHVucmVhY2hhYmxlIGZyb20gcG9seW1vcnBoaWMgc3RhY2sAYXR0ZW1wdGVkIHBvcCBmcm9tIGVtcHR5IHN0YWNrIC8gYmV5b25kIGJsb2NrIHN0YXJ0IGJvdW5kYXJ5IGF0IAA9PSBwcm9jZXNzRXhwcmVzc2lvbnMAPT0gcHJvY2Vzc0V4cHJlc3Npb25zIGZpbmlzaGVkAFJlYWNoZWQgZnVuY3Rpb24gZW5kIHdpdGhvdXQgc2VlaW5nIEVuZCBvcGNvZGUAPT0gcHJvY2Vzc0V4cHJlc3Npb25zIGZpbmlzaGVkIHdpdGggdW5yZWFjaGFibGUAPT0gc2tpcFVucmVhY2hhYmxlQ29kZQA9PSBza2lwVW5yZWFjaGFibGVDb2RlIGZpbmlzaGVkAHp6IHJlY3Vyc2UgaW50byAAc2tpcHBpbmcgZGVidWcgbG9jYXRpb24gaW5mbyBmb3IgAHJlYWRFeHByZXNzaW9uIHNlZWluZyAAaW52YWxpZCBjb2RlIGFmdGVyIGF0b21pYyBwcmVmaXg6IABiYWQgbm9kZSBjb2RlIAB6eiByZWN1cnNlIGZyb20gAEludmFsaWQgcmVzZXJ2ZWQgZmllbGQgb24gbWVtb3J5Lmdyb3cvbWVtb3J5LnNpemUAcG9wcGluZyB2b2lkIHdoZXJlIHdlIG5lZWQgYSBuZXcgbG9jYWwAcG9wTm9uVm9pZEV4cHJlc3Npb24AaW4gYSBub24tZnVuY3Rpb24gY29udGV4dDogAHp6IG5vZGU6IENvbnN0LCBjb2RlIABnZXRGbG9hdDY0OiAAZ2V0SW50NjQ6IAAvMHgAZ2V0SW50MzI6IABnZXRJbnQxNjogAGdldEZsb2F0MzI6IABnZXRTNjRMRUI6IABaTjR3YXNtMTdXYXNtQmluYXJ5QnVpbGRlcjlnZXRTNjRMRUJFdkUzJF81AE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xN1dhc21CaW5hcnlCdWlsZGVyOWdldFM2NExFQkV2RTMkXzVOU185YWxsb2NhdG9ySVM0X0VFRmF2RUVFAEFsaWduIG9mIEF0b21pY1dha2UgbXVzdCBtYXRjaCBzaXplAEFsaWdubWVudCBtdXN0IGJlIG9mIGEgcmVhc29uYWJsZSBzaXplAEFsaWduIG9mIEF0b21pY1dhaXQgbXVzdCBtYXRjaCBzaXplAEFsaWduIG9mIEF0b21pY0NweGNoZyBtdXN0IG1hdGNoIHNpemUAQWxpZ24gb2YgQXRvbWljUk1XIG11c3QgbWF0Y2ggc2l6ZQB6eiBub2RlOiBBdG9taWNMb2FkAGJhZCBnZXRfZ2xvYmFsAHNldF9sb2NhbCBvdXRzaWRlIG9mIGZ1bmN0aW9uAGJhZCBzZXRfbG9jYWwgaW5kZXgAZ2V0X2xvY2FsAGJhZCBnZXRfbG9jYWwgaW5kZXgAYmFkIGNhbGxfaW5kaXJlY3QgZnVuY3Rpb24gaW5kZXgASW52YWxpZCBmbGFncyBmaWVsZCBpbiBjYWxsX2luZGlyZWN0AGJhZCBjYWxsIGluZGV4AHR5cGUALi9zcmMvd2FzbS1iaW5hcnkuaABmaWxsQ2FsbAB0YXJnZXRzOiAAZGVmYXVsdDogAGdldEJyZWFrVGFyZ2V0IABiYWQgYnJlYWtpbmRleCAobG93KQBiYWQgYnJlYWtpbmRleCAoaGlnaCkAYnJlYWt0YXJnZXQgACBhcml0eSAAenogbm9kZTogQnJlYWssIGNvZGUgAGJsb2NrIGNhbm5vdCBwb3AgZnJvbSBvdXRzaWRlAHN0YXJ0IDw9IGV4cHJlc3Npb25TdGFjay5zaXplKCkAcHVzaEJsb2NrRWxlbWVudHMAc3RhcnQgPD0gZW5kAGVuZCA8PSBleHByZXNzaW9uU3RhY2suc2l6ZSgpAG5lZWQgYW4gZXh0cmEgdmFyIGluIGEgbm9uLWZ1bmN0aW9uIGNvbnRleHQsIGludmFsaWQgd2FzbQBnZXR0aW5nIGEgbGFiZWwAbGFiZWwkAGludmFsaWQgd2FzbSB0eXBlOiAAaWYgc2hvdWxkIGVuZCB3aXRoIEVuZABwb3MgPiAwAHVuZ2V0SW50OAB1bmdldEludDggKGF0IABVbmV4cGVjdGVkIGRlbGltaXRlcgB1bmV4cGVjdGVkIEVPRiBpbiB0aGUgbWlkZGxlIG9mIFZMUQBpbnZhbGlkIFZMUSBkaWdpdABONHdhc20xN01hcFBhcnNlRXhjZXB0aW9uRQBiYWQgZ2xvYmFsIGluZGV4AD09IHJlYWRHbG9iYWxzAG51bTogAHJlYWQgb25lAEdsb2JhbCBtdXRhYmlsaXR5IG11c3QgYmUgMCBvciAxAGdsb2JhbCQAbm9uLWNvbmNyZXRlIHR5cGUgd2hlbiBvbmUgZXhwZWN0ZWQAPT0gcmVhZFRhYmxlRWxlbWVudHMAVG9vIG1hbnkgc2VnbWVudHMAVGFibGUgZWxlbWVudHMgbXVzdCByZWZlciB0byB0YWJsZSAwIGluIE1WUAA9PSByZWFkRXhwb3J0cwBkdXBsaWNhdGUgZXhwb3J0IG5hbWUAPT0gcmVhZEZ1bmN0aW9ucwBpbnZhbGlkIGZ1bmN0aW9uIHNlY3Rpb24gc2l6ZSwgbXVzdCBlcXVhbCB0eXBlcwByZWFkIG9uZSBhdCAAZW1wdHkgZnVuY3Rpb24gc2l6ZQByZWFkaW5nIABwcm9jZXNzaW5nIGZ1bmN0aW9uOiAAYnJlYWtUYXJnZXROYW1lcy5zaXplKCkgPT0gMAByZWFkRnVuY3Rpb25zAGJyZWFrU3RhY2suZW1wdHkoKQBleHByZXNzaW9uU3RhY2suZW1wdHkoKQBicmVha1N0YWNrLnNpemUoKSA9PSAwAHN0YWNrIG5vdCBlbXB0eSBvbiBmdW5jdGlvbiBleGl0AGJpbmFyeSBvZmZzZXQgYXQgZnVuY3Rpb24gZXhpdCBub3QgYXQgZXhwZWN0ZWQgbG9jYXRpb24AIGVuZCBmdW5jdGlvbiBib2RpZXMAdmFyJAA9PSByZWFkRnVuY3Rpb25TaWduYXR1cmVzAGludmFsaWQgZnVuY3Rpb24gdHlwZSBpbmRleCBmb3IgZnVuY3Rpb24APT0gcmVhZEltcG9ydHMAZmltcG9ydCQAaW52YWxpZCBmdW5jdGlvbiBpbmRleCAAIC8gAGN1cnItPmZ1bmN0aW9uVHlwZS5pcygpAHJlYWRJbXBvcnRzAHRpbXBvcnQkAEltcG9ydGVkIHRhYmxlIHR5cGUgaXMgbm90IEFueUZ1bmMAbWltcG9ydCQAZ2ltcG9ydCQAYmFkIGltcG9ydCBraW5kAD09IHJlYWRTaWduYXR1cmVzAGJhZCBzaWduYXR1cmUgZm9ybSAAbnVtIHBhcmFtczogAHNpZ25hdHVyZSBtdXN0IGhhdmUgMSByZXN1bHQAPT0gcmVhZE1lbW9yeQBNdXN0IGJlIGV4YWN0bHkgMSBtZW1vcnkATWVtb3J5IGNhbm5vdCBiZSBib3RoIGltcG9ydGVkIGFuZCBkZWZpbmVkAD09IHJlYWRTdGFydABnZXRVMzJMRUI6IABaTjR3YXNtMTdXYXNtQmluYXJ5QnVpbGRlcjlnZXRVMzJMRUJFdkUzJF8yAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xN1dhc21CaW5hcnlCdWlsZGVyOWdldFUzMkxFQkV2RTMkXzJOU185YWxsb2NhdG9ySVM0X0VFRmh2RUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZodkVFRQBzb3VyY2VzAGNhbm5vdCBmaW5kIHRoZSAnc291cmNlcycgZmllbGQgaW4gbWFwAG1hcHBpbmdzAGNhbm5vdCBmaW5kIHRoZSAnbWFwcGluZ3MnIGZpZWxkIGluIG1hcAB1bmV4cGVjdGVkIEVPRiBpbiB0aGUgbWlkZGxlIG9mIHN0cmluZwBVbmV4cGVjdGVkIGNoYXI6IGV4cGVjdGVkICcAJyBnb3QgJwAnAD09IHJlYWRIZWFkZXIAc3VycHJpc2luZyB2YWx1ZQB3cml0ZSA+PSBkYXRhLmRhdGEoKQAuL3NyYy93YXNtL3dhc20tcy1wYXJzZXIuY3BwAHN0cmluZ1RvQmluYXJ5AGFjdHVhbCA8PSBkYXRhLnNpemUoKQBpbnZhbGlkIGhleGFkZWNpbWFsAGV4cGVjdGVkIHN0cmluZwBleHBlY3RlZCBsaXN0AGV4cGVjdGVkIG1vcmUgZWxlbWVudHMgaW4gbGlzdABpbmRleCA8IHVzZWRFbGVtZW50cwAuL3NyYy9taXhlZF9hcmVuYS5oAHN0YWNrLnNpemUoKSA9PSBzdGFja0xvY3Muc2l6ZSgpAHBhcnNlAHMtZXhwciBzdGFjayBlbXB0eQBzdGFjayBpcyBub3QgZW1wdHkAdW50ZXJtaW5hdGVkIHN0cmluZwB1bnRlcm1pbmF0ZWQgc3RyaW5nIGVzY2FwZQBONHdhc20xOFJlbW92ZU5vbkpTT3BzUGFzc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xOFJlbW92ZU5vbkpTT3BzUGFzc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xOFJlbW92ZU5vbkpTT3BzUGFzc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE4UmVtb3ZlTm9uSlNPcHNQYXNzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE4UmVtb3ZlTm9uSlNPcHNQYXNzRXZFRQBob2xkZXItPmxpc3Quc2l6ZSgpID09IDEALi9zcmMvcGFzc2VzL1JlbG9vcGVySnVtcFRocmVhZGluZy5jcHAAdmlzaXRCbG9jawBfX3JqdG8kAF9fcmp0aSQAbGFiZWxDaGVja3NbbnVtXSA+IDAAaGFzSXJyZWR1Y2libGVDb250cm9sRmxvdwBsYWJlbENoZWNrc0luT3JpZ2luW251bV0gPT0gMABsYWJlbFNldHNJbk9yaWdpbltudW1dIDwgbGFiZWxTZXRzW251bV0ATjR3YXNtMjFSZWxvb3Blckp1bXBUaHJlYWRpbmdFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18yMUV4cHJlc3Npb25TdGFja1dhbGtlcklOU18yMVJlbG9vcGVySnVtcFRocmVhZGluZ0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzIxUmVsb29wZXJKdW1wVGhyZWFkaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18yMVJlbG9vcGVySnVtcFRocmVhZGluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzIxUmVsb29wZXJKdW1wVGhyZWFkaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzIxUmVsb29wZXJKdW1wVGhyZWFkaW5nRXZFRQBONHdhc20xMlByaW50U3RhY2tJUkUAZGlncmFwaCBjYWxsIHsKICByYW5rZGlyID0gTFI7CiAgc3ViZ3JhcGggY2x1c3Rlcl9rZXkgewogICAgbm9kZSBbc2hhcGU9Ym94LCBmb250bmFtZT1jb3VyaWVyLCBmb250c2l6ZT0xMF07CiAgICBlZGdlIFtmb250bmFtZT1jb3VyaWVyLCBmb250c2l6ZT0xMF07CiAgICBsYWJlbCA9ICJLZXkiOwogICAgIkltcG9ydCIgW3N0eWxlPSJmaWxsZWQiLCBmaWxsY29sb3I9InR1cnF1b2lzZSJdOwogICAgIkV4cG9ydCIgW3N0eWxlPSJmaWxsZWQiLCBmaWxsY29sb3I9ImdyYXkiXTsKICAgICJJbmRpcmVjdCBUYXJnZXQiIFtzdHlsZT0iZmlsbGVkLCByb3VuZGVkIiwgZmlsbGNvbG9yPSJ3aGl0ZSJdOwogICAgIkEiIC0+ICJCIiBbc3R5bGU9ImZpbGxlZCwgcm91bmRlZCIsIGxhYmVsID0gIkRpcmVjdCBDYWxsIl07CiAgfQoKICBub2RlIFtzaGFwZT1ib3gsIGZvbnRuYW1lPWNvdXJpZXIsIGZvbnRzaXplPTEwXTsKACAgIgAiIFtzdHlsZT0iZmlsbGVkIiwgZmlsbGNvbG9yPSJ3aGl0ZSJdOwoAIiBbc3R5bGU9ImZpbGxlZCIsIGZpbGxjb2xvcj0idHVycXVvaXNlIl07CgAiIFtzdHlsZT0iZmlsbGVkIiwgZmlsbGNvbG9yPSJncmF5Il07CgB9CgAiIFtzdHlsZT0iZmlsbGVkLCByb3VuZGVkIl07CgAiIC0+ICIAIjsgLy8gY2FsbEltcG9ydAoAIjsgLy8gY2FsbAoATjR3YXNtMTRQcmludENhbGxHcmFwaEUATjR3YXNtMTFGdWxsUHJpbnRlckUATjR3YXNtMTVNaW5pZmllZFByaW50ZXJFAE40d2FzbTI4UHJlY29tcHV0aW5nRXhwcmVzc2lvblJ1bm5lcjIyTm9uc3RhbmRhbG9uZUV4Y2VwdGlvbkUAZXhwZWN0ZWQgACwgc2VlaW5nIAAgZnJvbQoAcmV0LnZhbHVlLnR5cGUgPT0gY3Vyci0+dHlwZQAuL3NyYy93YXNtLWludGVycHJldGVyLmgAdW5yZWFjaGFibGUAaXNDb25jcmV0ZVR5cGUoY3Vyci0+bGVmdC0+dHlwZSkgPyBsZWZ0LnR5cGUgPT0gY3Vyci0+bGVmdC0+dHlwZSA6IHRydWUAdmlzaXRCaW5hcnkAaXNDb25jcmV0ZVR5cGUoY3Vyci0+cmlnaHQtPnR5cGUpID8gcmlnaHQudHlwZSA9PSBjdXJyLT5yaWdodC0+dHlwZSA6IHRydWUAaTMyLmRpdl9zIGJ5IDAAaTMyLmRpdl9zIG92ZXJmbG93AGkzMi5kaXZfdSBieSAwAGkzMi5yZW1fcyBieSAwAGkzMi5yZW1fdSBieSAwAGk2NC5kaXZfcyBieSAwAGk2NC5kaXZfcyBvdmVyZmxvdwBpNjQuZGl2X3UgYnkgMABpNjQucmVtX3MgYnkgMABpNjQucmVtX3UgYnkgMAB0eXBlID09IFR5cGU6OmY2NABjYXN0VG9JNjQAdHlwZSA9PSBUeXBlOjpmMzIAY2FzdFRvSTMyAHNldFF1aWV0TmFOAHRydW5jYXRlVG9GMzIAZXh0ZW5kVG9GNjQAdHJ1bmNVRmxvYXQgb2YgbmFuAGkzMi50cnVuY1VGbG9hdCBvdmVyZmxvdwBpNjQudHJ1bmNVRmxvYXQgb3ZlcmZsb3cAdHJ1bmNTRmxvYXQgb2YgbmFuAGkzMi50cnVuY1NGbG9hdCBvdmVyZmxvdwBpNjQudHJ1bmNTRmxvYXQgb3ZlcmZsb3cAdHJ1bmNhdGVUb0kzMgBleHRlbmRUb1VJNjQAZXh0ZW5kVG9TSTY0AGN1cnItPmlzVGVlKCkALi9zcmMvcGFzc2VzL1ByZWNvbXB1dGUuY3BwAHZpc2l0U2V0TG9jYWwATjR3YXNtMjhQcmVjb21wdXRpbmdFeHByZXNzaW9uUnVubmVyRQBONHdhc20xNkV4cHJlc3Npb25SdW5uZXJJTlNfMjhQcmVjb21wdXRpbmdFeHByZXNzaW9uUnVubmVyRUVFAE40d2FzbTdWaXNpdG9ySU5TXzI4UHJlY29tcHV0aW5nRXhwcmVzc2lvblJ1bm5lckVOU180Rmxvd0VFRQBONHdhc20xMFByZWNvbXB1dGVFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTBQcmVjb21wdXRlRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzEwUHJlY29tcHV0ZUVOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzEwUHJlY29tcHV0ZUVOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc20yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklOU18xMFByZWNvbXB1dGVFdkVFAE40d2FzbTdWaXNpdG9ySU5TXzEwUHJlY29tcHV0ZUV2RUUATjR3YXNtMTRQb3N0RW1zY3JpcHRlbkUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNFBvc3RFbXNjcmlwdGVuRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE0UG9zdEVtc2NyaXB0ZW5FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNFBvc3RFbXNjcmlwdGVuRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0UG9zdEVtc2NyaXB0ZW5FdkVFAE40d2FzbTEzUGlja0xvYWRTaWduc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzEzUGlja0xvYWRTaWduc0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTIxRXhwcmVzc2lvblN0YWNrV2Fsa2VySU5TXzEzUGlja0xvYWRTaWduc0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTNQaWNrTG9hZFNpZ25zRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTNQaWNrTG9hZFNpZ25zRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzEzUGlja0xvYWRTaWduc0V2RUUAdmFsdWVzLnNpemUoKSA+IDAALi9zcmMvcGFzc2VzL1N0YWNrSVIuY3BwAGxvY2FsMlN0YWNrACFzYXZlZFZhbHVlcy5lbXB0eSgpACpzZXRJbmZsdWVuY2VzLmJlZ2luKCkgPT0gZ2V0AGkgPCBpbnN0cy5zaXplKCkAcmVtb3ZlQXQAZnVuYy0+c3RhY2tJUgBTdGFja0lST3B0aW1pemVyAE40d2FzbTE1T3B0aW1pemVTdGFja0lSRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE1T3B0aW1pemVTdGFja0lSRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE1T3B0aW1pemVTdGFja0lSRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTVPcHRpbWl6ZVN0YWNrSVJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTVPcHRpbWl6ZVN0YWNrSVJFdkVFAGJpdHMgPCAzMgAuL3NyYy9wYXNzZXMvT3B0aW1pemVJbnN0cnVjdGlvbnMuY3BwAGhhbmRPcHRpbWl6ZQBpc0NvbmNyZXRlVHlwZShpZmYtPnR5cGUpICYmIGlmZi0+aWZUcnVlLT50eXBlID09IHVucmVhY2hhYmxlAGJpbmFyeS0+b3AgPT0gQW5kSW50MzIgfHwgYmluYXJ5LT5vcCA9PSBPckludDMyAGNvbmRpdGlvbmFsaXplRXhwZW5zaXZlT25CaXR3aXNlAGFzdAAuL3NyYy9pci9jb3N0LmgAQ29zdEFuYWx5emVyAGMtPnZhbHVlLmdldGkzMigpID09IDAAb3B0aW1pemVBZGRlZENvbnN0YW50cwBaTjR3YXNtMjBPcHRpbWl6ZUluc3RydWN0aW9uczIyb3B0aW1pemVBZGRlZENvbnN0YW50c0VQTlNfNkJpbmFyeUVFVWxQTlNfMTBFeHByZXNzaW9uRWlFXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjR3YXNtMjBPcHRpbWl6ZUluc3RydWN0aW9uczIyb3B0aW1pemVBZGRlZENvbnN0YW50c0VQTlMyXzZCaW5hcnlFRVVsUE5TMl8xMEV4cHJlc3Npb25FaUVfTlNfOWFsbG9jYXRvcklTOF9FRUZ2UzdfaUVFRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGdlBONHdhc20xMEV4cHJlc3Npb25FaUVFRQBONHdhc20yME9wdGltaXplSW5zdHJ1Y3Rpb25zRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzIwT3B0aW1pemVJbnN0cnVjdGlvbnNFTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMjBPcHRpbWl6ZUluc3RydWN0aW9uc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzIwT3B0aW1pemVJbnN0cnVjdGlvbnNFTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzFfdkVFRUUATjR3YXNtMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJTlNfMjBPcHRpbWl6ZUluc3RydWN0aW9uc0V2RUUATjR3YXNtN1Zpc2l0b3JJTlNfMjBPcHRpbWl6ZUluc3RydWN0aW9uc0V2RUUAICAgIABONHdhc204TmFtZUxpc3RFAFtmdW5jc10AW21lbW9yeS1kYXRhXQBbdGFibGUtZGF0YV0AW3ZhcnNdAFtiaW5hcnktYnl0ZXNdAGZ1bmM6IABbcmVtb3ZhYmxlLWJ5dGVzLXdpdGhvdXQtaXRdAGV4cG9ydDogAHN0YXJ0OiAAdG90YWwAW3RvdGFsXQBONHdhc203TWV0cmljc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU183TWV0cmljc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU183TWV0cmljc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzdNZXRyaWNzRU5TXzI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTI0VW5pZmllZEV4cHJlc3Npb25WaXNpdG9ySU5TXzdNZXRyaWNzRXZFRQBONHdhc203VmlzaXRvcklOU183TWV0cmljc0V2RUUAaW5mbHVlbmNlZEdldC0+aW5kZXggPT0gdHJpdmlhbC0+aW5kZXgALi9zcmMvcGFzc2VzL01lcmdlTG9jYWxzLmNwcABvcHRpbWl6ZUNvcGllcwAqcHJlR3JhcGguZ2V0U2V0c2VzW2luZmx1ZW5jZWRHZXRdLmJlZ2luKCkgPT0gdHJpdmlhbABpbmZsdWVuY2VkR2V0LT5pbmRleCA9PSBjb3B5LT5pbmRleAAqcHJlR3JhcGguZ2V0U2V0c2VzW2luZmx1ZW5jZWRHZXRdLmJlZ2luKCkgPT0gY29weQBONHdhc20xMU1lcmdlTG9jYWxzRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzExTWVyZ2VMb2NhbHNFTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTFNZXJnZUxvY2Fsc0VOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzExTWVyZ2VMb2NhbHNFTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzFfdkVFRUUATjR3YXNtMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJTlNfMTFNZXJnZUxvY2Fsc0V2RUUATjR3YXNtN1Zpc2l0b3JJTlNfMTFNZXJnZUxvY2Fsc0V2RUUAb3V0ZXItPmxpc3QuYmFjaygpID09IGN1cnIALi9zcmMvcGFzc2VzL01lcmdlQmxvY2tzLmNwcABvcHRpbWl6ZQBicklmcyA+PSBkcm9wcGVkQnJJZnMATjR3YXNtMTFNZXJnZUJsb2Nrc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xMU1lcmdlQmxvY2tzRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzExTWVyZ2VCbG9ja3NFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xMU1lcmdlQmxvY2tzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzExTWVyZ2VCbG9ja3NFdkVFAE40d2FzbTEzTWVtb3J5UGFja2luZ0UAaWlpaWkATjR3YXNtMTZJbnN0cnVtZW50TWVtb3J5RQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzE2SW5zdHJ1bWVudE1lbW9yeUVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNkluc3RydW1lbnRNZW1vcnlFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNkluc3RydW1lbnRNZW1vcnlFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTZJbnN0cnVtZW50TWVtb3J5RXZFRQBpaWlpAGppaWoAZmlpZgBkaWlkAE40d2FzbTE2SW5zdHJ1bWVudExvY2Fsc0UATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xNkluc3RydW1lbnRMb2NhbHNFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTZJbnN0cnVtZW50TG9jYWxzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTZJbnN0cnVtZW50TG9jYWxzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE2SW5zdHJ1bWVudExvY2Fsc0V2RUUAaTY0dG9pMzJfaTMyJABzdGQ6OmZpbmQoZnJlZUxpc3QuYmVnaW4oKSwgZnJlZUxpc3QuZW5kKCksIGlkeCkgPT0gZnJlZUxpc3QuZW5kKCkALi9zcmMvcGFzc2VzL0k2NFRvSTMyTG93ZXJpbmcuY3BwAGZyZWVJZHgAIW1vdmVkAG9wZXJhdG9yIHVuc2lnbmVkIGludAB0ZW1wVHlwZXNbcmV0XSA9PSB0eQBnZXRUZW1wAG91dFBhcmFtSXQgIT0gaGlnaEJpdFZhcnMuZW5kKCkAZmV0Y2hPdXRQYXJhbQAhb3RoZXIubW92ZWQAVGVtcFZhcgBvbGRGdW5jLT5oYXNMb2NhbE5hbWUoaSkAY3Vyci0+aWZGYWxzZSAhPSBudWxscHRyICYmICJOdWxsYWJsZSBpZkZhbHNlIGZvdW5kIgB2aXNpdEJyYW5jaGluZwBzaG91bGQgaGF2ZSBiZWVuIHJlbW92ZWQgYnkgbm93IABVbmhhbmRsZWQgYmluYXJ5IG9wIABvcCA9PSBTaGxJbnQ2NCB8fCBvcCA9PSBTaHJVSW50NjQgfHwgb3AgPT0gU2hyU0ludDY0AGxvd2VyU2hpZnQAIWhhc091dFBhcmFtKGN1cnItPnZhbHVlKQB2aXNpdFVuYXJ5AGhhc091dFBhcmFtKGN1cnItPnZhbHVlKSB8fCBjdXJyLT50eXBlID09IGk2NCB8fCBjdXJyLT50eXBlID09IGY2NABpNjQucG9wY250IHNob3VsZCBhbHJlYWR5IGJlIHJlbW92ZWQAVW5oYW5kbGVkIHVuYXJ5IG9wZXJhdG9yOiAAaTY0LmN0eiBzaG91bGQgYmUgcmVtb3ZlZCBhbHJlYWR5AGZhbHNlICYmICJBdG9taWNDbXB4Y2hnIG5vdCBpbXBsZW1lbnRlZCIAdmlzaXRBdG9taWNDbXB4Y2hnAGZhbHNlICYmICJBdG9taWNSTVcgbm90IGltcGxlbWVudGVkIgB2aXNpdEF0b21pY1JNVwBjdXJyLT5vZmZzZXQgKyA0ID4gY3Vyci0+b2Zmc2V0AHZpc2l0U3RvcmUAIWN1cnItPmlzQXRvbWljICYmICJhdG9taWMgc3RvcmUgbm90IGltcGxlbWVudGVkIgAhY3Vyci0+aXNBdG9taWMgJiYgImF0b21pYyBsb2FkIG5vdCBpbXBsZW1lbnRlZCIAdmlzaXRMb2FkAGZhbHNlICYmICJTZXRHbG9iYWwgbm90IGltcGxlbWVudGVkIgB2aXNpdFNldEdsb2JhbABmYWxzZSAmJiAiR2V0R2xvYmFsIG5vdCBpbXBsZW1lbnRlZCIAdmlzaXRHZXRHbG9iYWwAWk40d2FzbTE2STY0VG9JMzJMb3dlcmluZzE3dmlzaXRDYWxsSW5kaXJlY3RFUE5TXzEyQ2FsbEluZGlyZWN0RUVVbFJOU3QzX18yNnZlY3RvcklQTlNfMTBFeHByZXNzaW9uRU5TM185YWxsb2NhdG9ySVM2X0VFRUVOU180VHlwZUVFXwBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0laTjR3YXNtMTZJNjRUb0kzMkxvd2VyaW5nMTd2aXNpdENhbGxJbmRpcmVjdEVQTlMyXzEyQ2FsbEluZGlyZWN0RUVVbFJOU182dmVjdG9ySVBOUzJfMTBFeHByZXNzaW9uRU5TXzlhbGxvY2F0b3JJUzhfRUVFRU5TMl80VHlwZUVFX05TOV9JU0VfRUVGUzVfU0NfU0RfRUVFAE5TdDNfXzIxMF9fZnVuY3Rpb242X19iYXNlSUZQTjR3YXNtMTJDYWxsSW5kaXJlY3RFUk5TXzZ2ZWN0b3JJUE5TMl8xMEV4cHJlc3Npb25FTlNfOWFsbG9jYXRvcklTN19FRUVFTlMyXzRUeXBlRUVFRQBaTjR3YXNtMTZJNjRUb0kzMkxvd2VyaW5nOXZpc2l0Q2FsbEVQTlNfNENhbGxFRVVsUk5TdDNfXzI2dmVjdG9ySVBOU18xMEV4cHJlc3Npb25FTlMzXzlhbGxvY2F0b3JJUzZfRUVFRU5TXzRUeXBlRUVfAE5TdDNfXzIxMF9fZnVuY3Rpb242X19mdW5jSVpONHdhc20xNkk2NFRvSTMyTG93ZXJpbmc5dmlzaXRDYWxsRVBOUzJfNENhbGxFRVVsUk5TXzZ2ZWN0b3JJUE5TMl8xMEV4cHJlc3Npb25FTlNfOWFsbG9jYXRvcklTOF9FRUVFTlMyXzRUeXBlRUVfTlM5X0lTRV9FRUZTNV9TQ19TRF9FRUUATlN0M19fMjEwX19mdW5jdGlvbjZfX2Jhc2VJRlBONHdhc200Q2FsbEVSTlNfNnZlY3RvcklQTlMyXzEwRXhwcmVzc2lvbkVOU185YWxsb2NhdG9ySVM3X0VFRUVOUzJfNFR5cGVFRUVFACRpNjR0b2kzMl8AXwBjdXJyLT52YWx1ZSAhPSBudWxscHRyAHZpc2l0QnJlYWsAbGFiZWxIaWdoQml0VmFycy5maW5kKGN1cnItPm5hbWUpID09IGxhYmVsSGlnaEJpdFZhcnMuZW5kKCkAdmlzaXRMb29wACFtb3ZlZCAmJiAhcmhzLm1vdmVkACRoaQBONHdhc20xNkk2NFRvSTMyTG93ZXJpbmdFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTZJNjRUb0kzMkxvd2VyaW5nRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE2STY0VG9JMzJMb3dlcmluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE2STY0VG9JMzJMb3dlcmluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNkk2NFRvSTMyTG93ZXJpbmdFdkVFAHZpAE40d2FzbTEyTG9nRXhlY3V0aW9uRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzEyTG9nRXhlY3V0aW9uRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzEyTG9nRXhlY3V0aW9uRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTJMb2dFeGVjdXRpb25FTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTJMb2dFeGVjdXRpb25FdkVFAE40d2FzbThMb2NhbENTRUUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzhMb2NhbENTRUVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTIxTGluZWFyRXhlY3V0aW9uV2Fsa2VySU5TXzhMb2NhbENTRUVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfOExvY2FsQ1NFRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfOExvY2FsQ1NFRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzhMb2NhbENTRUV2RUUAWk40d2FzbTE5TGVnYWxpemVKU0ludGVyZmFjZTNydW5FUE5TXzEwUGFzc1J1bm5lckVQTlNfNk1vZHVsZUVFMTBGaXhJbXBvcnRzAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJWk5TXzE5TGVnYWxpemVKU0ludGVyZmFjZTNydW5FUE5TXzEwUGFzc1J1bm5lckVQTlNfNk1vZHVsZUVFMTBGaXhJbXBvcnRzTlNfN1Zpc2l0b3JJUzdfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJWk5TXzE5TGVnYWxpemVKU0ludGVyZmFjZTNydW5FUE5TXzEwUGFzc1J1bm5lckVQTlNfNk1vZHVsZUVFMTBGaXhJbXBvcnRzTlNfN1Zpc2l0b3JJUzZfdkVFRUUATjR3YXNtNldhbGtlcklaTlNfMTlMZWdhbGl6ZUpTSW50ZXJmYWNlM3J1bkVQTlNfMTBQYXNzUnVubmVyRVBOU182TW9kdWxlRUUxMEZpeEltcG9ydHNOU183VmlzaXRvcklTNl92RUVFRQBONHdhc203VmlzaXRvcklaTlNfMTlMZWdhbGl6ZUpTSW50ZXJmYWNlM3J1bkVQTlNfMTBQYXNzUnVubmVyRVBOU182TW9kdWxlRUUxMEZpeEltcG9ydHN2RUUAbGVnYWx0eXBlJABsZWdhbGltcG9ydCQAbGVnYWxmdW5jJABsZWdhbHN0dWIkAE40d2FzbTE5TGVnYWxpemVKU0ludGVyZmFjZUUAaW5saW5lZFVzZXNbaW5saW5lZE5hbWVdIDw9IGluZm9zW2lubGluZWROYW1lXS5jYWxscwAuL3NyYy9wYXNzZXMvSW5saW5pbmcuY3BwAGl0ZXJhdGlvbgBwcmVjb21wdXRlLXByb3BhZ2F0ZQBfX2lubGluZWRfZnVuYyQAc3RhdGUtPmFjdGlvbnNGb3JGdW5jdGlvbi5jb3VudChnZXRGdW5jdGlvbigpLT5uYW1lKSA+IDAAdmlzaXRDYWxsAE40d2FzbTdQbGFubmVyRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzdQbGFubmVyRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzdQbGFubmVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfN1BsYW5uZXJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfN1BsYW5uZXJFdkVFAGluZm9zLT5jb3VudChjdXJyLT50YXJnZXQpID4gMABONHdhc20xOUZ1bmN0aW9uSW5mb1NjYW5uZXJFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTlGdW5jdGlvbkluZm9TY2FubmVyRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE5RnVuY3Rpb25JbmZvU2Nhbm5lckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE5RnVuY3Rpb25JbmZvU2Nhbm5lckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xOUZ1bmN0aW9uSW5mb1NjYW5uZXJFdkVFAE40d2FzbThJbmxpbmluZ0UAY3VycgB2aXNpdAB6eiBub2RlOiBVbnJlYWNoYWJsZQB6eiBub2RlOiBOb3AAenogbm9kZTogSG9zdAB6eiBub2RlOiBSZXR1cm4Aenogbm9kZTogRHJvcAB6eiBub2RlOiBTZWxlY3QAenogbm9kZTogQmluYXJ5AHp6IG5vZGU6IFVuYXJ5AHp6IG5vZGU6IENvbnN0ACA6IAB6eiBub2RlOiBBdG9taWNXYWtlAHp6IG5vZGU6IEF0b21pY1dhaXQAenogbm9kZTogQXRvbWljQ21weGNoZwB6eiBub2RlOiBBdG9taWNSTVcAenogbm9kZTogU3RvcmUAenogbm9kZTogTG9hZAB6eiBub2RlOiBTZXRHbG9iYWwAenogbm9kZTogR2V0R2xvYmFsIAB6eiBub2RlOiBTZXR8VGVlTG9jYWwAenogbm9kZTogR2V0TG9jYWwgAHp6IG5vZGU6IENhbGxJbmRpcmVjdAB6eiBub2RlOiBDYWxsSW1wb3J0AHp6IG5vZGU6IENhbGwAenogbm9kZTogU3dpdGNoAHp6IG5vZGU6IEJyZWFrAHp6IG5vZGU6IExvb3AAIWJyZWFrU3RhY2suZW1wdHkoKQAuL3NyYy93YXNtLXN0YWNrLmgAdmlzaXRMb29wRW5kAHp6IG5vZGU6IElmAHZpc2l0SWZFbmQAY3Vyci0+aWZGYWxzZQB2aXNpdElmRWxzZQAKIHp6IEJsb2NrIGVsZW1lbnQgAHZpc2l0QmxvY2tFbmQATjR3YXNtMTVHZW5lcmF0ZVN0YWNrSVJFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTVHZW5lcmF0ZVN0YWNrSVJFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTVHZW5lcmF0ZVN0YWNrSVJFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNUdlbmVyYXRlU3RhY2tJUkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNUdlbmVyYXRlU3RhY2tJUkV2RUUAagBieW4kZnBjYXN0LWVtdSQARnVuY0Nhc3RFbXVsYXRpb246Om1ha2VUaHVuayBzZWVtcyBhIHRodW5rIG5hbWUgYWxyZWFkeSBpbiB1c2UuIFdhcyB0aGUgcGFzcyBhbHJlYWR5IHJ1biBvbiB0aGlzIGNvZGU/AEZ1bmNDYXN0RW11bGF0aW9uOjpOVU1fUEFSQU1TIG5lZWRzIHRvIGJlIGF0IGxlYXN0IABONHdhc20yNVBhcmFsbGVsRnVuY0Nhc3RFbXVsYXRpb25FAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMjVQYXJhbGxlbEZ1bmNDYXN0RW11bGF0aW9uRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzI1UGFyYWxsZWxGdW5jQ2FzdEVtdWxhdGlvbkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzI1UGFyYWxsZWxGdW5jQ2FzdEVtdWxhdGlvbkVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18yNVBhcmFsbGVsRnVuY0Nhc3RFbXVsYXRpb25FdkVFAF9fd2FzbV9udWxscHRyAGZwdHIAZHluQ2FsbF8AIW11c3RfZXhwb3J0AC4vc3JjL3dhc20vd2FzbS1lbXNjcmlwdGVuLmNwcABleHBvcnRGdW5jdGlvbgBONHdhc20xN0Z1bmNDYXN0RW11bGF0aW9uRQBwcmVsdWRlcy5maW5kKGN1cnIpID09IHByZWx1ZGVzLmVuZCgpAC4vc3JjL3Bhc3Nlcy9GbGF0dGVuLmNwcAB2aXNpdEV4cHJlc3Npb24AYnItPnR5cGUgPT0gdW5yZWFjaGFibGUAdHlwZSA9PSB1bnJlYWNoYWJsZQBleHByZXNzaW9uU3RhY2suc2l6ZSgpID49IDIAZ2V0UGFyZW50AE40d2FzbTdGbGF0dGVuRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMjFFeHByZXNzaW9uU3RhY2tXYWxrZXJJTlNfN0ZsYXR0ZW5FTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20yMUV4cHJlc3Npb25TdGFja1dhbGtlcklOU183RmxhdHRlbkVOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfN0ZsYXR0ZW5FTlNfMjRVbmlmaWVkRXhwcmVzc2lvblZpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU183RmxhdHRlbkVOU18yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklTMV92RUVFRQBONHdhc20yNFVuaWZpZWRFeHByZXNzaW9uVmlzaXRvcklOU183RmxhdHRlbkV2RUUATjR3YXNtN1Zpc2l0b3JJTlNfN0ZsYXR0ZW5FdkVFAEJJTkFSWUVOX0VYVFJBQ1QAdXNhZ2U6IHNldCBCSU5BUllFTl9FWFRSQUNUIGluIHRoZSBlbnYKAGV4dHJhY3RpbmcgAAoAY291bGQgbm90IGZpbmQgdGhlIGZ1bmN0aW9uIHRvIGV4dHJhY3QKAE40d2FzbTE1RXh0cmFjdEZ1bmN0aW9uRQBONHdhc20xNkZ1bmN0aW9uUmVwbGFjZXJFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTZGdW5jdGlvblJlcGxhY2VyRU5TXzdWaXNpdG9ySVMyX3ZFRUVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE2RnVuY3Rpb25SZXBsYWNlckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc202V2Fsa2VySU5TXzE2RnVuY3Rpb25SZXBsYWNlckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNkZ1bmN0aW9uUmVwbGFjZXJFdkVFAG1hcDo6YXQ6ICBrZXkgbm90IGZvdW5kAE40d2FzbTE0RnVuY3Rpb25IYXNoZXJFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTRGdW5jdGlvbkhhc2hlckVOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xNEZ1bmN0aW9uSGFzaGVyRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTRGdW5jdGlvbkhhc2hlckVOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xNEZ1bmN0aW9uSGFzaGVyRXZFRQBONHdhc20yOER1cGxpY2F0ZUZ1bmN0aW9uRWxpbWluYXRpb25FAG5vZGUtPmlzRXhwcigpAC4vc3JjL3Bhc3Nlcy9EYXRhRmxvd09wdHMuY3BwACFub2RlLT5pc0NvbnN0KCkAd29ya09uAG9wdGltaXplRXhwclRvQ29uc3RhbnQAdGVtcABwcmVjb21wdXRlAG5vZGUtPmlzQ29uc3QoKQBbUGFzc1J1bm5lcl0gcnVubmluZyBwYXNzZXMgb24gZnVuY3Rpb24gAGluZGV4ID09IDAAZ2V0SW5kZXhQb2ludGVyAHdpdGgtPmlzQ29uc3QoKQByZXBsYWNlQWxsVXNlc1dpdGgAIWluZGV4ZXMuZW1wdHkoKQBmb3VuZAAuL3NyYy9kYXRhZmxvdy91c2Vycy5oAGdldE51bVVzZXMATjR3YXNtMTJEYXRhRmxvd09wdHNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTJEYXRhRmxvd09wdHNFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTJEYXRhRmxvd09wdHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xMkRhdGFGbG93T3B0c0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xMkRhdGFGbG93T3B0c0V2RUUAcmVhY2hhYmxlQnJlYWtzLnNpemUoKSA9PSAwAC4vc3JjL3Bhc3Nlcy9EZWFkQ29kZUVsaW1pbmF0aW9uLmNwcAB2aXNpdEZ1bmN0aW9uACgqY3VycnApLT5jYXN0PElmPigpLT5pZkZhbHNlAGRvQWZ0ZXJJZkVsc2VUcnVlAE40d2FzbTE5RGVhZENvZGVFbGltaW5hdGlvbkUATjR3YXNtMTBXYWxrZXJQYXNzSU5TXzEwUG9zdFdhbGtlcklOU18xOURlYWRDb2RlRWxpbWluYXRpb25FTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xMFBvc3RXYWxrZXJJTlNfMTlEZWFkQ29kZUVsaW1pbmF0aW9uRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTlEZWFkQ29kZUVsaW1pbmF0aW9uRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE5RGVhZENvZGVFbGltaW5hdGlvbkV2RUUATjR3YXNtMTNDb25zdEhvaXN0aW5nRQBONHdhc20xMFdhbGtlclBhc3NJTlNfMTBQb3N0V2Fsa2VySU5TXzEzQ29uc3RIb2lzdGluZ0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xM0NvbnN0SG9pc3RpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xM0NvbnN0SG9pc3RpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtN1Zpc2l0b3JJTlNfMTNDb25zdEhvaXN0aW5nRXZFRQBpdGVtcy5zaXplKCkgPiAwAC4vc3JjL3Bhc3Nlcy9Db2RlRm9sZGluZy5jcHAAb3B0aW1pemVUZXJtaW5hdGluZ1RhaWxzAGZvbGRpbmctaW5uZXIAYmxvY2stPmxpc3QuYmFjaygpID09IGV4cHIAdmFsaWRhdGUAdGFpbC5ibG9jawBvcHRpbWl6ZUV4cHJlc3Npb25UYWlscwBjdXJyID09IGNvbnRyb2xGbG93U3RhY2suYmFjaygpAE40d2FzbTExQ29kZUZvbGRpbmdFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xN0NvbnRyb2xGbG93V2Fsa2VySU5TXzExQ29kZUZvbGRpbmdFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xN0NvbnRyb2xGbG93V2Fsa2VySU5TXzExQ29kZUZvbGRpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzExQ29kZUZvbGRpbmdFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xMUNvZGVGb2xkaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzExQ29kZUZvbGRpbmdFdkVFAGZpcnN0UHVzaGFibGUgIT0gSW5kZXgoLTEpICYmIHB1c2hQb2ludCAhPSBJbmRleCgtMSkgJiYgZmlyc3RQdXNoYWJsZSA8IHB1c2hQb2ludAAuL3NyYy9wYXNzZXMvQ29kZVB1c2hpbmcuY3BwAG9wdGltaXplU2VnbWVudABpID4gMABza2lwID09IHRvdGFsAE40d2FzbTExQ29kZVB1c2hpbmdFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xMFBvc3RXYWxrZXJJTlNfMTFDb2RlUHVzaGluZ0VOU183VmlzaXRvcklTMl92RUVFRUVFAE40d2FzbTEwUG9zdFdhbGtlcklOU18xMUNvZGVQdXNoaW5nRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTZXYWxrZXJJTlNfMTFDb2RlUHVzaGluZ0VOU183VmlzaXRvcklTMV92RUVFRQBONHdhc203VmlzaXRvcklOU18xMUNvZGVQdXNoaW5nRXZFRQBvcmRlcltpXSA9PSBpAC4vc3JjL3Bhc3Nlcy9Db2FsZXNjZUxvY2Fscy5jcHAAcGlja0luZGljZXNGcm9tT3JkZXIAbWF4SW5kZXggPD0gcGFyZW50LT5udW1Mb2NhbHMAY2FsY3VsYXRlRml0bmVzcwBzaXplID49IDEAbWFrZU1peHR1cmUAbnVtID4gMAAuL3NyYy9zdXBwb3J0L3Blcm11dGF0aW9ucy5oAHNldElkZW50aXR5AGluZGljZXMuc2l6ZSgpID09IG51bUxvY2FscwBhcHBseUluZGljZXMAbG93IDwgaGlnaABpbnRlcmZlcmVMb3dIaWdoAGN1cnItPmNvbnRlbnRzLmVuZC5zaXplKCkgPCBsaXZlLnNpemUoKQBmbG93TGl2ZW5lc3MAY3Vyci0+Y29udGVudHMuc3RhcnQuc2l6ZSgpIDwgbGl2ZS5zaXplKCkAYnJhbmNoZXMuc2l6ZSgpID09IDAALi9zcmMvY2ZnL2NmZy10cmF2ZXJzYWwuaABkb1dhbGtGdW5jdGlvbgBpZlN0YWNrLnNpemUoKSA9PSAwAGxvb3BTdGFjay5zaXplKCkgPT0gMABzdGFjay5zaXplKCkgPT0gMAAuL3NyYy93YXNtLXRyYXZlcnNhbC5oAHdhbGsAKnRhc2suY3VycnAAKmN1cnJwAHB1c2hUYXNrACFjb250cm9sRmxvd1N0YWNrLmVtcHR5KCkAZmluZEJyZWFrVGFyZ2V0AGN1cnItPnRlbXBsYXRlIGlzPElmPigpAE40d2FzbTE0Q29hbGVzY2VMb2NhbHNFAE40d2FzbTEwV2Fsa2VyUGFzc0lOU18xNExpdmVuZXNzV2Fsa2VySU5TXzE0Q29hbGVzY2VMb2NhbHNFTlNfN1Zpc2l0b3JJUzJfdkVFRUVFRQBONHdhc20xNExpdmVuZXNzV2Fsa2VySU5TXzE0Q29hbGVzY2VMb2NhbHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtOUNGR1dhbGtlcklOU18xNENvYWxlc2NlTG9jYWxzRU5TXzdWaXNpdG9ySVMxX3ZFRU5TXzhMaXZlbmVzc0VFRQBONHdhc20xN0NvbnRyb2xGbG93V2Fsa2VySU5TXzE0Q29hbGVzY2VMb2NhbHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtMTBQb3N0V2Fsa2VySU5TXzE0Q29hbGVzY2VMb2NhbHNFTlNfN1Zpc2l0b3JJUzFfdkVFRUUATjR3YXNtNldhbGtlcklOU18xNENvYWxlc2NlTG9jYWxzRU5TXzdWaXNpdG9ySVMxX3ZFRUVFAE40d2FzbTdWaXNpdG9ySU5TXzE0Q29hbGVzY2VMb2NhbHNFdkVFAE40d2FzbTI2Q29hbGVzY2VMb2NhbHNXaXRoTGVhcm5pbmdFAHBhc3NJbmZvcy5maW5kKG5hbWUpID09IHBhc3NJbmZvcy5lbmQoKQByZWdpc3RlclBhc3MAUEZQTjR3YXNtNFBhc3NFdkUARlBONHdhc200UGFzc0V2RQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fZnVuY0lQRlBONHdhc200UGFzc0V2RU5TXzlhbGxvY2F0b3JJUzZfRUVTNV9FRQBOU3QzX18yMTBfX2Z1bmN0aW9uNl9fYmFzZUlGUE40d2FzbTRQYXNzRXZFRUUAISB+ICsgLQAqIC8gJQArIC0APDwgPj4gPj4+ADwgPD0gPiA+PQA9PSAhPQA/IDoAdmFyIGNvbnN0IGZ1bmN0aW9uIGlmIGVsc2UgZG8gd2hpbGUgZm9yIGJyZWFrIGNvbnRpbnVlIHJldHVybiBzd2l0Y2ggY2FzZSBkZWZhdWx0IHRocm93IHRyeSBjYXRjaCBmaW5hbGx5IHRydWUgZmFsc2UgbnVsbCBuZXcAb2JqZWN0AGFycmF5AG5ldwBkb3QAZGVmYXVsdABjYXNlADoAPwB9AHsAZnVuY3Rpb24AZjAASEVBUEY2NABIRUFQVTMyAEhFQVBVMTYASEVBUFU4AEhFQVBGMzIASEVBUDMyAEhFQVAxNgBIRUFQOAB0ZW1wRG91YmxlUHRyAD4+PgBTSU1EX0ludDMyeDQAU0lNRF9JbnQxNng4AFNJTURfSW50OHgxNgBTSU1EX0Zsb2F0NjR4MgBTSU1EX0Zsb2F0MzJ4NABpNjRfY29uc3QAaTY0AE1hdGhfZnJvdW5kAHVuYXJ5LXBvc3RmaXgAdW5hcnktcHJlZml4AF9fX3VkaXZtb2RkaTQAX2xsdm1fY3R0el9pMzIAZ2V0VGVtcFJldDAAdGVtcFJldDAAdHJ5AHN0cmluZwBzd2l0Y2gAY29udGludWUAYnJlYWsAbGFiZWwAY2FsbABzdWIAc2VxAGZvcgBkbwB3aGlsZQBlbHNlAGlmAHJldHVybgBiaW5hcnkAY29uZGl0aW9uYWwAY29uc3QAdmFyAGJsb2NrAGRlZnVuAHRvcGxldmVsAFNJTURfRmxvYXQ2NHgyX2NoZWNrAFNJTURfRmxvYXQzMng0X2NoZWNrAFNJTURfSW50MzJ4NF9jaGVjawBTSU1EX0ludDE2eDhfY2hlY2sAU0lNRF9JbnQ4eDE2X2NoZWNrAF9fd2FzbV9pNjRfdXJlbQBfX3dhc21faTY0X3NyZW0AX193YXNtX2k2NF91ZGl2AF9fd2FzbV9pNjRfc2RpdgBfX3dhc21faTY0X211bABfX3dhc21fdHJ1bmNfZjY0AF9fd2FzbV90cnVuY19mMzIAX193YXNtX25lYXJlc3RfZjY0AF9fd2FzbV9uZWFyZXN0X2YzMgBpNjR0b2kzMl9pMzIkSElHSF9CSVRTAF9fd2FzbV9mZXRjaF9oaWdoX2JpdHMAX193YXNtX21lbW9yeV9zaXplAF9fd2FzbV9tZW1vcnlfZ3JvdwBfX3dhc21fcm90cl9pNjQAX193YXNtX3JvdHJfaTMyAF9fd2FzbV9yb3RsX2k2NABfX3dhc21fcm90bF9pMzIAX193YXNtX3BvcGNudF9pNjQAX193YXNtX3BvcGNudF9pMzIAX193YXNtX2Nsel9pNjQAX193YXNtX2Nsel9pMzIAX193YXNtX2N0el9pNjQAX193YXNtX2N0el9pMzIATWF0aF9tYXgATWF0aF9taW4ATWF0aF9zcXJ0AE1hdGhfdHJ1bmMATWF0aF9mbG9vcgBNYXRoX2NsejMyAE1hdGhfY2VpbABNYXRoX2FicwBNYXRoX2ltdWwAaW5zdHJ1bWVudABlbnYAYnVmZmVyAGFsbW9zdCBhc20AdXNlIGFzbQBkZWJ1Z2dlcgBhc20yd2FzbV9pMzJfdGVtcABwb3cAc3FydABjZWlsAGZsb29yAGFicwBnbG9iYWwuTWF0aABpMzJ1LXJlbQBpMzJzLXJlbQBpMzJ1LWRpdgBpMzJzLWRpdgBmMzItdG8tdWludDY0AGYzMi10by1pbnQ2NABmMzItdG8tdWludABmMzItdG8taW50AGY2NC10by11aW50NjQAZjY0LXRvLWludDY0AGY2NC10by11aW50AGY2NC10by1pbnQAZjY0LXJlbQBtYXgAbWluAGFzbTJ3YXNtAGZyb3VuZABjbHozMgBpbXVsAE1hdGgAaW1wb3NzaWJsZS1jb250aW51ZQBhc21Nb2R1bGUAQXJyYXlCdWZmZXIARmxvYXQ2NEFycmF5AEZsb2F0MzJBcnJheQBVaW50MzJBcnJheQBVaW50MTZBcnJheQBVaW50OEFycmF5AEludDMyQXJyYXkASW50MTZBcnJheQBJbnQ4QXJyYXkAdG9wbW9zdABJbmZpbml0eQBOYU4AZ2xvYmFsACstKi8lPD4mXnx+PSEsPzouAChbO3t9AG5vZGUgPT0gQVNNX0ZMT0FUX1pFUk8ALi9zcmMvZW1zY3JpcHRlbi1vcHRpbWl6ZXIvb3B0aW1pemVyLXNoYXJlZC5jcHAAZGV0ZWN0VHlwZQBub2RlWzFdLT5pc1N0cmluZygpACIobnVsbCkiAFtdAG51bGwAIjogAFsAWyIAIgBpc0Fzc2lnbk5hbWUoKQAuL3NyYy9lbXNjcmlwdGVuLW9wdGltaXplci9zaW1wbGVfYXN0LmNwcABhc0Fzc2lnbk5hbWUAaXNBc3NpZ24oKQBhc0Fzc2lnbgBibG9jay0+bGlzdC5iYWNrKCkgPT0gYWJvdmUALi9zcmMvaXIvRXhwcmVzc2lvbkFuYWx5emVyLmNwcABpc1Jlc3VsdFVzZWQAYWJvdmUgPT0gaWZmLT5pZlRydWUgfHwgYWJvdmUgPT0gaWZmLT5pZkZhbHNlAGlzUmVzdWx0RHJvcHBlZAAgKQBNb2R1bGU6OmdldEV4cG9ydDogAHJ3YQBpbmZpbml0eQAAAQIEBwMGBQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ATENfQUxMAExBTkcAQy5VVEYtOABQT1NJWABNVVNMX0xPQ1BBVEgAY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMpIGZhaWxlZABjb25kaXRpb25fdmFyaWFibGU6OndhaXQ6IG11dGV4IG5vdCBsb2NrZWQAY29uZGl0aW9uX3ZhcmlhYmxlIHdhaXQgZmFpbGVkAHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwATlN0M19fMjE3YmFkX2Z1bmN0aW9uX2NhbGxFAF9fbmV4dF9wcmltZSBvdmVyZmxvdwBOU3QzX18yOGlvc19iYXNlRQBOU3QzX18yOWJhc2ljX2lvc0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQBOU3QzX18yOWJhc2ljX2lvc0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRQBOU3QzX18yMTViYXNpY19zdHJlYW1idWZJY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjE1YmFzaWNfc3RyZWFtYnVmSXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFAE5TdDNfXzIxM2Jhc2ljX2lzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjEzYmFzaWNfaXN0cmVhbUl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRQBOU3QzX18yMTNiYXNpY19vc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFAE5TdDNfXzIxM2Jhc2ljX29zdHJlYW1Jd05TXzExY2hhcl90cmFpdHNJd0VFRUUATlN0M19fMjE0YmFzaWNfaW9zdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFRUUAdW5zcGVjaWZpZWQgaW9zdHJlYW1fY2F0ZWdvcnkgZXJyb3IAaW9zdHJlYW0ATlN0M19fMjE5X19pb3N0cmVhbV9jYXRlZ29yeUUATlN0M19fMjhpb3NfYmFzZTdmYWlsdXJlRQBpb3NfYmFzZTo6Y2xlYXIATlN0M19fMjExX19zdGRvdXRidWZJd0VFAE5TdDNfXzIxMV9fc3Rkb3V0YnVmSWNFRQB1bnN1cHBvcnRlZCBsb2NhbGUgZm9yIHN0YW5kYXJkIGlucHV0AE5TdDNfXzIxMF9fc3RkaW5idWZJd0VFAE5TdDNfXzIxMF9fc3RkaW5idWZJY0VFAE5TdDNfXzI3Y29sbGF0ZUljRUUATlN0M19fMjZsb2NhbGU1ZmFjZXRFAE5TdDNfXzI3Y29sbGF0ZUl3RUUAJXAAQwBOU3QzX18yN251bV9nZXRJY05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzI5X19udW1fZ2V0SWNFRQBOU3QzX18yMTRfX251bV9nZXRfYmFzZUUATlN0M19fMjdudW1fZ2V0SXdOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yOV9fbnVtX2dldEl3RUUAJXAAAAAATAAlAAAAAABOU3QzX18yN251bV9wdXRJY05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRUVFAE5TdDNfXzI5X19udW1fcHV0SWNFRQBOU3QzX18yMTRfX251bV9wdXRfYmFzZUUATlN0M19fMjdudW1fcHV0SXdOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yOV9fbnVtX3B1dEl3RUUAJUg6JU06JVMAJW0vJWQvJXkAJUk6JU06JVMgJXAAJWEgJWIgJWQgJUg6JU06JVMgJVkAQU0AUE0ASmFudWFyeQBGZWJydWFyeQBNYXJjaABBcHJpbABNYXkASnVuZQBKdWx5AEF1Z3VzdABTZXB0ZW1iZXIAT2N0b2JlcgBOb3ZlbWJlcgBEZWNlbWJlcgBKYW4ARmViAE1hcgBBcHIASnVuAEp1bABBdWcAU2VwAE9jdABOb3YARGVjAFN1bmRheQBNb25kYXkAVHVlc2RheQBXZWRuZXNkYXkAVGh1cnNkYXkARnJpZGF5AFNhdHVyZGF5AFN1bgBNb24AVHVlAFdlZABUaHUARnJpAFNhdAAlbS8lZC8leSVZLSVtLSVkJUk6JU06JVMgJXAlSDolTSVIOiVNOiVTJUg6JU06JVNOU3QzX18yOHRpbWVfZ2V0SWNOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMjBfX3RpbWVfZ2V0X2Nfc3RvcmFnZUljRUUATlN0M19fMjl0aW1lX2Jhc2VFAE5TdDNfXzI4dGltZV9nZXRJd05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzIyMF9fdGltZV9nZXRfY19zdG9yYWdlSXdFRQBOU3QzX18yOHRpbWVfcHV0SWNOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMTBfX3RpbWVfcHV0RQBsb2NhbGUgbm90IHN1cHBvcnRlZABOU3QzX18yOHRpbWVfcHV0SXdOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yMTBtb25leXB1bmN0SWNMYjBFRUUATlN0M19fMjEwbW9uZXlfYmFzZUUATlN0M19fMjEwbW9uZXlwdW5jdEljTGIxRUVFAE5TdDNfXzIxMG1vbmV5cHVuY3RJd0xiMEVFRQBOU3QzX18yMTBtb25leXB1bmN0SXdMYjFFRUUAMDEyMzQ1Njc4OQAlTGYAbW9uZXlfZ2V0IGVycm9yAE5TdDNfXzI5bW9uZXlfZ2V0SWNOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMTFfX21vbmV5X2dldEljRUUAMDEyMzQ1Njc4OQBOU3QzX18yOW1vbmV5X2dldEl3TlNfMTlpc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjExX19tb25leV9nZXRJd0VFACUuMExmAE5TdDNfXzI5bW9uZXlfcHV0SWNOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMTFfX21vbmV5X3B1dEljRUUATlN0M19fMjltb25leV9wdXRJd05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzIxMV9fbW9uZXlfcHV0SXdFRQBOU3QzX18yOG1lc3NhZ2VzSWNFRQBOU3QzX18yMTNtZXNzYWdlc19iYXNlRQBOU3QzX18yMTdfX3dpZGVuX2Zyb21fdXRmOElMbTMyRUVFAE5TdDNfXzI3Y29kZWN2dElEaWMxMV9fbWJzdGF0ZV90RUUATlN0M19fMjEyY29kZWN2dF9iYXNlRQBOU3QzX18yMTZfX25hcnJvd190b191dGY4SUxtMzJFRUUATlN0M19fMjhtZXNzYWdlc0l3RUUATlN0M19fMjdjb2RlY3Z0SWNjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzI3Y29kZWN2dEl3YzExX19tYnN0YXRlX3RFRQBOU3QzX18yN2NvZGVjdnRJRHNjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzI2bG9jYWxlNV9faW1wRQBOU3QzX18yNWN0eXBlSWNFRQBOU3QzX18yMTBjdHlwZV9iYXNlRQBOU3QzX18yNWN0eXBlSXdFRQBOU3QzX18yOG51bXB1bmN0SWNFRQBOU3QzX18yOG51bXB1bmN0SXdFRQBOU3QzX18yMTRfX3NoYXJlZF9jb3VudEUATlN0M19fMjE5X19zaGFyZWRfd2Vha19jb3VudEUAbXV0ZXggbG9jayBmYWlsZWQAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBzdG9pADogbm8gY29udmVyc2lvbgA6IG91dCBvZiByYW5nZQBzdG9sbAAlZAAldQAlbHUAdW5zcGVjaWZpZWQgZ2VuZXJpY19jYXRlZ29yeSBlcnJvcgBVbmtub3duIGVycm9yICVkAGdlbmVyaWMATlN0M19fMjI0X19nZW5lcmljX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJfX2RvX21lc3NhZ2VFAE5TdDNfXzIxNGVycm9yX2NhdGVnb3J5RQB1bnNwZWNpZmllZCBzeXN0ZW1fY2F0ZWdvcnkgZXJyb3IAc3lzdGVtAE5TdDNfXzIyM19fc3lzdGVtX2Vycm9yX2NhdGVnb3J5RQBOU3QzX18yMTJzeXN0ZW1fZXJyb3JFADogAHRocmVhZDo6am9pbiBmYWlsZWQAdmVjdG9yAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQAdGVybWluYXRlX2hhbmRsZXIgdW5leHBlY3RlZGx5IHRocmV3IGFuIGV4Y2VwdGlvbgBzdGQ6OmJhZF9hbGxvYwBTdDliYWRfYWxsb2MAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTZpbnZhbGlkX2FyZ3VtZW50AFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBTdDE0b3ZlcmZsb3dfZXJyb3IAc3RkOjpiYWRfY2FzdABTdDhiYWRfY2FzdABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAERuAE4xMF9fY3h4YWJpdjEyMF9fZnVuY3Rpb25fdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FACBjb25zdAAgdm9sYXRpbGUAIHJlc3RyaWN0ACBjb21wbGV4ACBpbWFnaW5hcnkAIFsAICgAKQAoACYmAG9iamNfb2JqZWN0PAAqACYAb2JqY3Byb3RvACAAPAA+ACB2ZWN0b3JbAF0AcGl4ZWwgdmVjdG9yWwAmPQA9ACwAfgA6OgBkZWxldGVbXSAAZGVsZXRlIAAvAC89AF4AXj0APT0APj0AKVsAPD0APDwAPDw9AC0ALT0AKj0ALS0AKS0tACE9ACEAfHwAfAB8PQAtPioAKwArPQArKwApKysAKSA/ICgAKSA6ICgAJQAlPQA+PgA+Pj0AdGhyb3cAdGhyb3cgAHR5cGVpZCgAc2l6ZW9mLi4uKAAsIABzaXplb2YgKABzdGF0aWNfY2FzdDwAPigAcmVpbnRlcnByZXRfY2FzdDwALT4Abm9leGNlcHQgKABbXSAAKSAALgAuKgBzdGQ6OgBvcGVyYXRvciYmAG9wZXJhdG9yJgBvcGVyYXRvciY9AG9wZXJhdG9yPQBvcGVyYXRvcigpAG9wZXJhdG9yLABvcGVyYXRvcn4Ab3BlcmF0b3IgAG9wZXJhdG9yIGRlbGV0ZVtdAG9wZXJhdG9yKgBvcGVyYXRvci8Ab3BlcmF0b3IvPQBvcGVyYXRvcl4Ab3BlcmF0b3JePQBvcGVyYXRvcj09AG9wZXJhdG9yPj0Ab3BlcmF0b3I+AG9wZXJhdG9yW10Ab3BlcmF0b3I8PQBvcGVyYXRvciIiIABvcGVyYXRvcjw8AG9wZXJhdG9yPDw9AG9wZXJhdG9yPABvcGVyYXRvci0Ab3BlcmF0b3ItPQBvcGVyYXRvcio9AG9wZXJhdG9yLS0Ab3BlcmF0b3IgbmV3W10Ab3BlcmF0b3IhPQBvcGVyYXRvciEAb3BlcmF0b3IgbmV3AG9wZXJhdG9yfHwAb3BlcmF0b3J8AG9wZXJhdG9yfD0Ab3BlcmF0b3ItPioAb3BlcmF0b3IrAG9wZXJhdG9yKz0Ab3BlcmF0b3IrKwBvcGVyYXRvci0+AG9wZXJhdG9yPwBvcGVyYXRvciUAb3BlcmF0b3IlPQBvcGVyYXRvcj4+AG9wZXJhdG9yPj49AG9wZXJhdG9yIGRlbGV0ZQAndW5uYW1lZAAnbGFtYmRhJygAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8Y2hhciwgc3RkOjpjaGFyX3RyYWl0czxjaGFyPiwgc3RkOjphbGxvY2F0b3I8Y2hhcj4gPgBiYXNpY19zdHJpbmcAc3RkOjppc3RyZWFtAHN0ZDo6YmFzaWNfaXN0cmVhbTxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+ID4AYmFzaWNfaXN0cmVhbQBzdGQ6Om9zdHJlYW0Ac3RkOjpiYXNpY19vc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBiYXNpY19vc3RyZWFtAHN0ZDo6aW9zdHJlYW0Ac3RkOjpiYXNpY19pb3N0cmVhbTxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+ID4AYmFzaWNfaW9zdHJlYW0AZHluYW1pY19jYXN0PAApKABjb25zdF9jYXN0PABhbGlnbm9mICgAZnAAd2NoYXJfdABmYWxzZQB0cnVlAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydAB1AGwAdWwAbGwAdWxsAF9faW50MTI4AHVuc2lnbmVkIF9faW50MTI4ACVMYUwAJWEAJWFmAGRlY2x0eXBlKABzdGQ6OmFsbG9jYXRvcgBzdGQ6OmJhc2ljX3N0cmluZwA6OnN0cmluZyBsaXRlcmFsAHN0ZABfR0xPQkFMX19OAChhbm9ueW1vdXMgbmFtZXNwYWNlKQAgPgBUXwBpZAA6OioAICYAICYmACBbXQB2b2lkAGJvb2wAaW50AHVuc2lnbmVkIGludABsb25nAHVuc2lnbmVkIGxvbmcAbG9uZyBsb25nAGZsb2F0AGxvbmcgZG91YmxlAF9fZmxvYXQxMjgALi4uAGRlY2ltYWw2NABkZWNpbWFsMTI4AGRlY2ltYWwzMgBkZWNpbWFsMTYAY2hhcjMyX3QAY2hhcjE2X3QAYXV0bwBzdGQ6Om51bGxwdHJfdABkb3VibGUAdW5zaWduZWQgbG9uZyBsb25nAF9ibG9ja19pbnZva2UAaW52b2NhdGlvbiBmdW5jdGlvbiBmb3IgYmxvY2sgaW4gAHZ0YWJsZSBmb3IgAFZUVCBmb3IgAHR5cGVpbmZvIGZvciAAdHlwZWluZm8gbmFtZSBmb3IgAGNvdmFyaWFudCByZXR1cm4gdGh1bmsgdG8gAGNvbnN0cnVjdGlvbiB2dGFibGUgZm9yIAAtaW4tAHZpcnR1YWwgdGh1bmsgdG8gAG5vbi12aXJ0dWFsIHRodW5rIHRvIABndWFyZCB2YXJpYWJsZSBmb3IgAHJlZmVyZW5jZSB0ZW1wb3JhcnkgZm9yIA=="; var ub=y;y+=16;var M={}; function vb(a){if(vb.b){var b=z[a>>2];var d=z[b>>2]}else vb.b=!0,M.USER=M.LOGNAME="web_user",M.PATH="/",M.PWD="/",M.HOME="/home/web_user",M.LANG="C.UTF-8",M._=c.thisProgram,d=Ba?Oa?wb(1024):ia(1024):ha(1024),b=Ba?Oa?wb(256):ia(256):ha(256),z[b>>2]=d,z[a>>2]=b;a=[];var e=0,f;for(f in M)if("string"===typeof M[f]){var g=f+"="+M[f];a.push(g);e+=g.length}if(1024>2]=d,d+=g.length+1;z[b+4*a.length>> 2]=0}var O=0,xb=[],P={};function yb(a){if(!a||P[a])return a;for(var b in P){var d=+b;if(P[d].v===a)return d}return a}function ___cxa_free_exception(a){try{return zb(a)}catch(b){}}function Ab(a,b){Ma.unshift({a:a,j:b})} @@ -69,22 +69,22 @@ c._fflush;a&&a(0);if(a=U.w){var b=U.b;b[1].length&&a(1,10);b[2].length&&a(2,10)} var Z=(/** @suppress {uselessCode} */ function(global,env,buffer) { "almost asm";var a=global.Int8Array;var b=new a(buffer);var c=global.Int16Array;var d=new c(buffer);var e=global.Int32Array;var f=new e(buffer);var g=global.Uint8Array;var h=new g(buffer);var i=global.Uint16Array;var j=new i(buffer);var k=global.Uint32Array;var l=new k(buffer);var m=global.Float32Array;var n=new m(buffer);var o=global.Float64Array;var p=new o(buffer);var q=global.byteLength;var r=env.DYNAMICTOP_PTR|0;var s=env.tempDoublePtr|0;var t=env.ABORT|0;var u=env.STACKTOP|0;var v=env.STACK_MAX|0;var w=env.___dso_handle|0;var x=0;var y=0;var z=0;var A=0;var B=global.NaN,C=global.Infinity;var D=0,E=0,F=0,G=0,H=0.0;var I=0;var J=global.Math.floor;var K=global.Math.abs;var L=global.Math.sqrt;var M=global.Math.pow;var N=global.Math.cos;var O=global.Math.sin;var P=global.Math.tan;var Q=global.Math.acos;var R=global.Math.asin;var S=global.Math.atan;var T=global.Math.atan2;var U=global.Math.exp;var V=global.Math.log;var W=global.Math.ceil;var X=global.Math.imul;var Y=global.Math.min;var Z=global.Math.max;var _=global.Math.clz32;var $=env.abort;var aa=env.assert;var ba=env.enlargeMemory;var ca=env.getTotalMemory;var da=env.abortOnCannotGrowMemory;var ea=env.invoke_di;var fa=env.invoke_i;var ga=env.invoke_ii;var ha=env.invoke_iid;var ia=env.invoke_iii;var ja=env.invoke_iiii;var ka=env.invoke_iiiii;var la=env.invoke_iiiiid;var ma=env.invoke_iiiiii;var na=env.invoke_iiiiiid;var oa=env.invoke_iiiiiii;var pa=env.invoke_iiiiiiii;var qa=env.invoke_iiiiiiiii;var ra=env.invoke_iiiiiiiiiiii;var sa=env.invoke_v;var ta=env.invoke_vi;var ua=env.invoke_vii;var va=env.invoke_viii;var wa=env.invoke_viiii;var xa=env.invoke_viiiii;var ya=env.invoke_viiiiii;var za=env.invoke_viiiiiii;var Aa=env.invoke_viiiiiiiiii;var Ba=env.invoke_viiiiiiiiiiiiiii;var Ca=env.___assert_fail;var Da=env.___buildEnvironment;var Ea=env.___cxa_allocate_exception;var Fa=env.___cxa_begin_catch;var Ga=env.___cxa_end_catch;var Ha=env.___cxa_find_matching_catch;var Ia=env.___cxa_find_matching_catch_2;var Ja=env.___cxa_find_matching_catch_3;var Ka=env.___cxa_find_matching_catch_4;var La=env.___cxa_free_exception;var Ma=env.___cxa_pure_virtual;var Na=env.___cxa_rethrow;var Oa=env.___cxa_thread_atexit;var Pa=env.___cxa_throw;var Qa=env.___cxa_uncaught_exception;var Ra=env.___gxx_personality_v0;var Sa=env.___lock;var Ta=env.___map_file;var Ua=env.___resumeException;var Va=env.___setErrNo;var Wa=env.___syscall140;var Xa=env.___syscall145;var Ya=env.___syscall146;var Za=env.___syscall221;var _a=env.___syscall5;var $a=env.___syscall54;var ab=env.___syscall6;var bb=env.___syscall91;var cb=env.___unlock;var db=env.__addDays;var eb=env.__arraySum;var fb=env.__exit;var gb=env.__isLeapYear;var hb=env._abort;var ib=env._atexit;var jb=env._clock_gettime;var kb=env._emscripten_asm_const_di;var lb=env._emscripten_asm_const_did;var mb=env._emscripten_asm_const_dii;var nb=env._emscripten_asm_const_diiid;var ob=env._emscripten_asm_const_diiiii;var pb=env._emscripten_asm_const_i;var qb=env._emscripten_asm_const_id;var rb=env._emscripten_asm_const_ii;var sb=env._emscripten_asm_const_iii;var tb=env._emscripten_asm_const_iiii;var ub=env._emscripten_get_now;var vb=env._emscripten_get_now_is_monotonic;var wb=env._emscripten_memcpy_big;var xb=env._exit;var yb=env._getenv;var zb=env._llvm_ceil_f32;var Ab=env._llvm_ceil_f64;var Bb=env._llvm_copysign_f32;var Cb=env._llvm_copysign_f64;var Db=env._llvm_eh_typeid_for;var Eb=env._llvm_fabs_f64;var Fb=env._llvm_floor_f32;var Gb=env._llvm_floor_f64;var Hb=env._llvm_stackrestore;var Ib=env._llvm_stacksave;var Jb=env._llvm_trap;var Kb=env._llvm_trunc_f32;var Lb=env._llvm_trunc_f64;var Mb=env._pthread_cond_destroy;var Nb=env._pthread_cond_signal;var Ob=env._pthread_cond_wait;var Pb=env._pthread_equal;var Qb=env._pthread_getspecific;var Rb=env._pthread_join;var Sb=env._pthread_key_create;var Tb=env._pthread_mutex_destroy;var Ub=env._pthread_once;var Vb=env._pthread_setspecific;var Wb=env._strftime;var Xb=env._strftime_l;var Yb=env.flush_NO_FILESYSTEM;var Zb=0.0;function _b(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true} // EMSCRIPTEN_START_FUNCS -function on(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o+12|0;g=o+8|0;l=o+4|0;m=o;h=a+64|0;k=f[h>>2]|0;do if((f[k+40>>2]|0)!=(f[k+36>>2]|0)){k=a+72|0;do if(b[k>>0]|0){c=yCa(134176,87935)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(n);Wq(c,e)|0;du(c)|0;break}o=Ia()|0;JCa(n);Ua(o|0)}while(0);j=A$(a,3)|0;i=a+68|0;d=f[i>>2]|0;e=f[h>>2]|0;f4a(g,(f[e+40>>2]|0)-(f[e+36>>2]|0)>>2);Yr(d,f[g>>2]|0)|0;d=f[h>>2]|0;e=f[d+40>>2]|0;d=f[d+36>>2]|0;while(1){if((d|0)==(e|0)){c=9;break}if(b[k>>0]|0){g=yCa(134176,87861)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;h=x;x=0;if(h&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=13;break}JCa(n);Wq(g,c)|0;du(g)|0}h=f[i>>2]|0;f[m>>2]=f[(f[d>>2]|0)+32>>2];f[n>>2]=f[m>>2];f4a(l,g0(a,n)|0);Yr(h,f[l>>2]|0)|0;d=d+4|0}if((c|0)==9){VA(a,j);break}else if((c|0)==13){o=Ia()|0;JCa(n);Ua(o|0)}}while(0);u=o;return}function pn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;l=a+64|0;a:do if(!(f[l>>2]|0))c=0;else{j=a+68|0;d=f[j>>2]|0;if(!d){m=Ea(4)|0;uab(m);Pa(m|0,39536,426)}i=a+92|0;c=f[i>>2]|0;if(!(c&16)){if(c&8|0){e=a+80|0;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;do if(!(b[a+98>>0]|0)){e=bc[f[(f[d>>2]|0)+24>>2]&511](d)|0;h=a+36|0;g=f[h>>2]|0;c=(f[a+40>>2]|0)-g|0;if((e|0)>0){d=0;c=(X((f[a+16>>2]|0)-(f[a+12>>2]|0)|0,e)|0)+c|0;break}d=f[a+12>>2]|0;if((d|0)==(f[a+16>>2]|0))d=0;else{e=f[j>>2]|0;j=a+32|0;g=hc[f[(f[e>>2]|0)+32>>2]&31](e,k,f[j>>2]|0,g,d-(f[a+8>>2]|0)|0)|0;d=1;c=c-g+(f[h>>2]|0)-(f[j>>2]|0)|0}}else{d=0;c=(f[a+16>>2]|0)-(f[a+12>>2]|0)|0}while(0);if(K0a(f[l>>2]|0,0-c|0,1)|0){c=-1;break}if(d){j=k;k=f[j+4>>2]|0;l=a+72|0;f[l>>2]=f[j>>2];f[l+4>>2]=k}l=f[a+32>>2]|0;f[a+40>>2]=l;f[a+36>>2]=l;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[i>>2]=0}}else{if((f[a+24>>2]|0)!=(f[a+20>>2]|0)?(dc[f[(f[a>>2]|0)+52>>2]&255](a,-1)|0)==-1:0){c=-1;break}e=a+72|0;g=a+32|0;c=a+52|0;b:while(1){i=f[j>>2]|0;d=f[g>>2]|0;d=hc[f[(f[i>>2]|0)+20>>2]&31](i,e,d,d+(f[c>>2]|0)|0,k)|0;i=f[g>>2]|0;a=(f[k>>2]|0)-i|0;if((GHa(i,1,a,f[l>>2]|0)|0)!=(a|0)){c=-1;break a}switch(d|0){case 2:{c=-1;break a}case 1:break;default:break b}}if(V0(f[l>>2]|0)|0){c=-1;break}}c=0}while(0);u=m;return c|0}function qn(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;n=m;i=m+36|0;l=m+32|0;j=m+28|0;k=m+24|0;a:do if(!(f[e+4>>2]&1)){f[l>>2]=-1;o=f[(f[a>>2]|0)+16>>2]|0;f[j>>2]=f[c>>2];f[k>>2]=f[d>>2];f[i>>2]=f[j>>2];f[n>>2]=f[k>>2];i=jc[o&63](a,i,n,e,g,l)|0;f[c>>2]=i;switch(f[l>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}}else{ZXa(n,e);x=0;j=ia(73,f[n>>2]|0,134912)|0;o=x;x=0;do if(o&1){i=Ia()|0;JCa(n)}else{JCa(n);ZXa(n,e);x=0;i=ia(73,f[n>>2]|0,134920)|0;o=x;x=0;if(o&1){i=Ia()|0;JCa(n);break}JCa(n);x=0;ua(f[(f[i>>2]|0)+24>>2]|0,n|0,i|0);o=x;x=0;do if(!(o&1)){x=0;ua(f[(f[i>>2]|0)+28>>2]|0,n+12|0,i|0);o=x;x=0;if(o&1){i=Ia()|0;jTa(n);break}a=n+24|0;x=0;i=pa(20,c|0,f[d>>2]|0,n|0,a|0,j|0,g|0,1)|0;o=x;x=0;if(o&1){i=Ia()|0;j=I;do{a=a+-12|0;jTa(a)}while((a|0)!=(n|0));break}else{b[h>>0]=(i|0)==(n|0)&1;i=f[c>>2]|0;do{a=a+-12|0;jTa(a)}while((a|0)!=(n|0));break a}}else i=Ia()|0;while(0)}while(0);Ua(i|0)}while(0);u=m;return i|0}function rn(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;n=m;i=m+36|0;l=m+32|0;j=m+28|0;k=m+24|0;a:do if(!(f[e+4>>2]&1)){f[l>>2]=-1;o=f[(f[a>>2]|0)+16>>2]|0;f[j>>2]=f[c>>2];f[k>>2]=f[d>>2];f[i>>2]=f[j>>2];f[n>>2]=f[k>>2];i=jc[o&63](a,i,n,e,g,l)|0;f[c>>2]=i;switch(f[l>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}}else{ZXa(n,e);x=0;j=ia(73,f[n>>2]|0,134880)|0;o=x;x=0;do if(o&1){i=Ia()|0;JCa(n)}else{JCa(n);ZXa(n,e);x=0;i=ia(73,f[n>>2]|0,134896)|0;o=x;x=0;if(o&1){i=Ia()|0;JCa(n);break}JCa(n);x=0;ua(f[(f[i>>2]|0)+24>>2]|0,n|0,i|0);o=x;x=0;do if(!(o&1)){x=0;ua(f[(f[i>>2]|0)+28>>2]|0,n+12|0,i|0);o=x;x=0;if(o&1){i=Ia()|0;HTa(n);break}a=n+24|0;x=0;i=pa(19,c|0,f[d>>2]|0,n|0,a|0,j|0,g|0,1)|0;o=x;x=0;if(o&1){i=Ia()|0;j=I;do{a=a+-12|0;HTa(a)}while((a|0)!=(n|0));break}else{b[h>>0]=(i|0)==(n|0)&1;i=f[c>>2]|0;do{a=a+-12|0;HTa(a)}while((a|0)!=(n|0));break a}}else i=Ia()|0;while(0)}while(0);Ua(i|0)}while(0);u=m;return i|0}function sn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;h=b+8|0;e=f[h>>2]|0;if(!e)b=a;else{b=o$a(a)|0;if((b|0)!=0?!(Iab(f[b+8>>2]|0)|0):0)j=c;else{b=qwa(f[c>>2]|0,a)|0;j=c;e=f[h>>2]|0}a=e;while(1){if(!a)break;e=nUa(a)|0;if(!e){i=19;break}g=e+24|0;e=f[e+20>>2]|0;while(1){if((e|0)==(g|0))break;a=f[e+20>>2]|0;k=Dp(f[e+16>>2]|0)|0;f[b+8>>2]=k;rt(b);b=qwa(f[j>>2]|0,b)|0;aaa(b+12|0,ec[f[(f[a>>2]|0)+8>>2]&127](a,c,d)|0);rt(b);a=f[e+4>>2]|0;if(!a)while(1){a=f[e+8>>2]|0;if((f[a>>2]|0)==(e|0)){e=a;break}else e=a}else{e=a;while(1){a=f[e>>2]|0;if(!a)break;else e=a}}}a=f[(f[h>>2]|0)+8>>2]|0;f[h>>2]=a}a:do if((i|0)==19){e=NUa(a)|0;if(e|0){k=Dp(f[(f[e+20>>2]|0)+100>>2]|0)|0;f[b+8>>2]=k;break}a=cVa(a)|0;if(!a)Ca(89021,88981,80,89026);g=Bbb(f[a+32>>2]|0)|0;if(!g)Ca(89050,88981,81,89026);e=f[a+40>>2]|0;if((g|0)==1){k=Dp(f[(f[e+8>>2]|0)+100>>2]|0)|0;f[b+8>>2]=k;break}e=Bbb(e)|0;g=L6a(a+24|0)|0;while(1){a=e;if((g|0)==(a|0))break a;k=Dp(f[(f[e+8>>2]|0)+100>>2]|0)|0;f[b+8>>2]=k;rt(b);k=qwa(f[j>>2]|0,b)|0;rt(k);b=k;e=f[a+4>>2]|0}}while(0);rt(b)}return b|0}function tn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;g=s+8|0;l=s+4|0;m=s;n=a+64|0;if(!(f[n>>2]|0))d=-1;else{uT(a);q=a+20|0;r=f[q>>2]|0;o=a+28|0;p=f[o>>2]|0;k=$1a(c,-1)|0;d=a+24|0;e=f[d>>2]|0;if(k)g=r;else{if(!e){f[d>>2]=g;f[q>>2]=g;f[o>>2]=g+1;e=g}g=X6a(c)|0;b[e>>0]=g;e=(f[d>>2]|0)+1|0;f[d>>2]=e;g=f[q>>2]|0}a:do if((e|0)==(g|0))h=25;else{do if(!(b[a+98>>0]|0)){i=a+32|0;f[l>>2]=f[i>>2];j=a+68|0;k=a+72|0;h=a+52|0;a=g;while(1){g=f[j>>2]|0;if(!g){h=12;break}t=f[i>>2]|0;e=lc[f[(f[g>>2]|0)+12>>2]&15](g,k,a,e,m,t,t+(f[h>>2]|0)|0,l)|0;g=f[q>>2]|0;if((f[m>>2]|0)==(g|0)){h=23;break}if((e|0)==3){h=15;break}if(e>>>0>=2){h=23;break}a=f[i>>2]|0;t=(f[l>>2]|0)-a|0;if((GHa(a,1,t,f[n>>2]|0)|0)!=(t|0)){h=23;break}if((e|0)!=1){h=21;break}a=f[m>>2]|0;e=f[d>>2]|0;f[q>>2]=a;f[o>>2]=e}if((h|0)==12){t=Ea(4)|0;uab(t);Pa(t|0,39536,426)}else if((h|0)==15){t=(f[d>>2]|0)-g|0;if((GHa(g,1,t,f[n>>2]|0)|0)==(t|0))h=22;else h=23}else if((h|0)==21)h=22;if((h|0)==22)break;else if((h|0)==23){d=-1;break a}}else{t=e-g|0;if((GHa(g,1,t,f[n>>2]|0)|0)!=(t|0)){d=-1;break a}}while(0);f[d>>2]=r;f[q>>2]=r;f[o>>2]=p;h=25}while(0);if((h|0)==25)d=ZWa(c)|0}u=s;return d|0}function un(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+192|0;i=m+92|0;j=m;g=f[c>>2]|0;do if(g){if((e|0)!=0?(f[e>>2]|0)!=0:0){h=a+40|0;fA(i,_Ya(f[h>>2]|0)|0,g);g=f[e>>2]|0;if(g|0){h=_Ya(f[h>>2]|0)|0;x=0;va(101,j|0,h|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;V7(i);Ua(m|0)}h=xj(j,i)|0;V7(j);if(h){V7(i);g=d;break}}V7(i);g=f[c>>2]|0}g=o$a(g)|0;if(((g|0)!=0?!(Iab(f[g+8>>2]|0)|0):0)?(l=g+12|0,k=g+16|0,(Bbb(f[k>>2]|0)|0)>>>0>1):0){e=b+4|0;if((f[e>>2]|0)==0?VN(g)|0:0){g=d;break}h=MCa(l)|0;h=f[h>>2]|0;j=f[h+4>>2]|0;if((j|0)!=5?(f[g+4>>2]|0)==(j|0):0){f[c>>2]=h;if(!d){d=MCa(l)|0;f[d>>2]=b;XJa(g,f[e>>2]|0);BVa(f[a+16>>2]|0,g)|0;break}e=d+12|0;c=MCa(e)|0;if((f[c>>2]|0)!=(b|0))Ca(105520,105547,377,105576);MEa(e);g=0;while(1){if(g>>>0>=((Bbb(f[k>>2]|0)|0)+-1|0)>>>0)break;c=JDa(l,g)|0;aaa(e,f[c>>2]|0);g=g+1|0}aaa(e,b);g=d}else g=d}else g=d}else g=d;while(0);u=m;return g|0}function vn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;p=o+4|0;k=o;f[p>>2]=0;n=p+4|0;f[n>>2]=0;l=p+8|0;f[l>>2]=0;m=a+24|0;j=0;i=0;e=f[a+20>>2]|0;while(1){if((e|0)==(m|0)){e=3;break}x=0;g=ia(145,b|0,f[e+16>>2]|0)|0;h=x;x=0;if(h&1){e=19;break}h=f[e+20>>2]|0;x=0;h=ja(f[(f[h>>2]|0)+8>>2]|0,h|0,b|0,c|0)|0;q=x;x=0;if(q&1){e=19;break}x=0;h=ka(8,b|0,g|0,h|0,0)|0;q=x;x=0;if(q&1){e=19;break}f[k>>2]=h;g=f[n>>2]|0;if((g|0)==(f[l>>2]|0)){x=0;ua(1499,p|0,k|0);q=x;x=0;if(q&1){e=19;break}}else{f[g>>2]=h;f[n>>2]=(f[n>>2]|0)+4}if(!i){j=h;i=h}else{f[i+16>>2]=h;LI(i);i=f[k>>2]|0}g=f[e+4>>2]|0;if(!g)while(1){g=f[e+8>>2]|0;if((f[g>>2]|0)==(e|0)){e=g;break}else e=g}else{e=g;while(1){g=f[e>>2]|0;if(!g)break;else e=g}}}if((e|0)==3){while(1){e=f[n>>2]|0;if((e|0)==(f[p>>2]|0))break;m=e+-4|0;q=f[m>>2]|0;f[n>>2]=m;LI(q)}x=0;e=ia(99,f[b>>2]|0,j|0)|0;q=x;x=0;do if(!(q&1)?(x=0,d=ka(16,e|0,a|0,b|0,c|0)|0,q=x,x=0,!(q&1)):0){e=f[a+8>>2]|0;if(e){x=0;e=ja(f[(f[e>>2]|0)+8>>2]|0,e|0,b|0,c|0)|0;q=x;x=0;if(q&1)break;x=0;d=ja(51,b|0,d|0,e|0)|0;q=x;x=0;if(q&1)break}uSa(p);u=o;return d|0}while(0);d=Ia()|0}else if((e|0)==19)d=Ia()|0;uSa(p);Ua(d|0);return 0}function wn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+64|0;j=n+16|0;k=n+52|0;o=n+40|0;h=n;l=n+36|0;m=n+32|0;f[k>>2]=d;f[o>>2]=0;i=o+4|0;f[i>>2]=0;f[o+8>>2]=0;while(1){x=0;e=ga(294,b|0)|0;g=x;x=0;if(g&1){c=9;break}if(c>>>0>=e>>>0){c=14;break}g=c+1|0;x=0;c=ia(69,b|0,c|0)|0;e=x;x=0;if(e&1){c=12;break}x=0;c=ga(296,c|0)|0;e=x;x=0;if(e&1){c=12;break}e=bV(c)|0;if(e|0?(x=0,va(141,c|0,e|0,o|0),e=x,x=0,e&1):0){c=13;break}c=g}a:do if((c|0)==9){d=Ia()|0;c=11}else if((c|0)==12)d=Ia()|0;else if((c|0)==13)d=Ia()|0;else if((c|0)==14){do if(!d){x=0;d=ga(232,f[a+4>>2]|0)|0;b=x;x=0;if(b&1){d=Ia()|0;c=11;break a}else{m$a(h,0);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];Zpa(d,j)|0;f[k>>2]=d;break}}while(0);b=f[a>>2]|0;h=f[o>>2]|0;f[l>>2]=h;c=(f[i>>2]|0)-h|0;f[m>>2]=c;e=b+104|0;g=f[e>>2]|0;if(g>>>0<(f[b+108>>2]|0)>>>0){x=0;va(85,j|0,c|0,0);m=x;x=0;if(!(m&1)?(x=0,wa(139,g|0,d|0,h|0,f[j>>2]|0),m=x,x=0,!(m&1)):0){f[e>>2]=(f[e>>2]|0)+16;c=22}else c=23}else{x=0;wa(141,b+100|0,k|0,l|0,m|0);m=x;x=0;if(m&1)c=23;else c=22}if((c|0)==22){uSa(o);u=n;return}else if((c|0)==23){d=Ia()|0;break}}while(0);uSa(o);Ua(d|0)}function xn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+16|0;m=o+8|0;h=o;d=$O(f[a+36>>2]|0,1,c)|0;f[n>>2]=d;e=a+4|0;g=f[e>>2]|0;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else IL(a,n);d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))IL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}j=c+12|0;I$a(m,j);GUa(h,j);j=a+33|0;k=c;l=m+4|0;i=f[h>>2]|0;g=f[h+4>>2]|0;d=0;while(1){if(!(lTa(f[m>>2]|0,f[l>>2]|0,i,g)|0)){d=9;break}h=LOa(m)|0;h=f[h>>2]|0;if(b[j>>0]|0){zm(yCa(zm(yCa(134176,87675)|0,k)|0,111105)|0,d)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[n>>2]|0,134880)|0;p=x;x=0;if(p&1){d=13;break}x=0;e=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0;p=x;x=0;if(p&1){d=13;break}JCa(n);Wq(134176,e)|0;du(134176)|0;d=d+1|0}Tpa(a,h);RYa(m)}if((d|0)==9){NA(a,c);u=o;return}else if((d|0)==13){p=Ia()|0;JCa(n);Ua(p|0)}}function yn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;k=q+36|0;i=q+32|0;l=q+24|0;j=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;do if(b[a+33>>0]|0){d=yCa(134176,110959)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,h=x,x=0,!(h&1)):0){JCa(k);Wq(d,g)|0;du(d)|0;break}q=Ia()|0;JCa(k);Ua(q|0)}while(0);d=f[c+32>>2]|0;if(d|0)jGa(a,d);jGa(a,f[c+28>>2]|0);g=uAa(c)|0;h=a+28|0;d=f[h>>2]|0;if(g){e=Ev(d,14)|0;g=c+8|0;f4a(i,Bbb(f[c+12>>2]|0)|0);Yr(e,f[i>>2]|0)|0;I$a(l,g);GUa(j,g);g=l+4|0;e=f[j>>2]|0;d=f[j+4>>2]|0;while(1){if(!(lTa(f[l>>2]|0,f[g>>2]|0,e,d)|0))break;i=LOa(l)|0;j=f[h>>2]|0;f[n>>2]=f[i>>2];f[k>>2]=f[n>>2];f4a(m,VZ(a,k)|0);Yr(j,f[m>>2]|0)|0;RYa(l)}n=f[h>>2]|0;f[p>>2]=f[c+24>>2];f[k>>2]=f[p>>2];f4a(o,VZ(a,k)|0);Yr(n,f[o>>2]|0)|0}else dTa(d);u=q;return}function zn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;e=t;l=f[d+8>>2]|0;f[e>>2]=l;e=HH(e,4)|0;s=d+4|0;f[s>>2]=e;r=c+4|0;k=f[r>>2]|0;q=(k|0)==0;a:do if(!q){m=k+-1|0;o=(m&k|0)==0;if(!o)if(e>>>0>>0)h=e;else h=(e>>>0)%(k>>>0)|0;else h=m&e;e=f[(f[c>>2]|0)+(h<<2)>>2]|0;if(!e){e=h;p=15}else while(1){e=f[e>>2]|0;if(!e){e=h;p=15;break a}g=f[e+4>>2]|0;if(!o){if(g>>>0>=k>>>0)g=(g>>>0)%(k>>>0)|0}else g=g&m;if((g|0)!=(h|0)){e=h;p=15;break a}if((f[e+8>>2]|0)==(l|0)){g=0;break}}}else{e=0;p=15}while(0);if((p|0)==15){l=c+12|0;i=+(((f[l>>2]|0)+1|0)>>>0);j=+n[c+16>>2];do if(q|j*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;e=~~+W(+(i/j))>>>0;mL(c,h>>>0>>0?e:h);h=f[r>>2]|0;e=f[s>>2]|0;g=h+-1|0;if(!(g&h)){k=h;e=g&e;break}if(e>>>0>>0)k=h;else{k=h;e=(e>>>0)%(h>>>0)|0}}while(0);g=f[(f[c>>2]|0)+(e<<2)>>2]|0;if(!g){s=c+8|0;f[d>>2]=f[s>>2];f[s>>2]=d;f[(f[c>>2]|0)+(e<<2)>>2]=s;e=f[d>>2]|0;if(!e)e=d;else{e=f[e+4>>2]|0;g=k+-1|0;if(g&k){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&g;f[(f[c>>2]|0)+(e<<2)>>2]=d;e=d}}else{f[d>>2]=f[g>>2];f[g>>2]=d;e=d}f[l>>2]=(f[l>>2]|0)+1;g=1}f[a>>2]=e;b[a+4>>0]=g;u=t;return}function An(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;g=m+12|0;n=m+16|0;j=m+8|0;k=m+4|0;l=m;f[g>>2]=b;f[n>>2]=n;h=n+4|0;f[h>>2]=n;i=n+8|0;f[i>>2]=0;x=0;ua(1491,n|0,g|0);g=x;x=0;if(g&1)b=Ia()|0;else{e=a+4|0;g=a+8|0;a:while(1){if(!(f[i>>2]|0)){c=23;break}f[j>>2]=f[(f[h>>2]|0)+8>>2];Tma(n);x=0;b=ia(143,e|0,j|0)|0;d=x;x=0;if(d&1){c=9;break}d=f[b>>2]|0;f[k>>2]=d;b=f[a>>2]|0;if(yQa(b,d)|0){x=0;b=ia(141,b|0,k|0)|0;d=x;x=0;if(d&1){c=9;break}sZ(b,f[j>>2]|0)}x=0;b=ia(143,e|0,j|0)|0;d=x;x=0;if(d&1){c=9;break}b:do if(f[b>>2]|0){x=0;b=ia(143,e|0,j|0)|0;d=x;x=0;if(d&1){c=9;break a}f[b>>2]=0;b=f[j>>2]|0;c=Bbb(f[b+16>>2]|0)|0;while(1){d=c;if((L6a(b)|0)==(d|0))break b;c=f[c+8>>2]|0;f[l>>2]=c;c=eX(e,c)|0;if((c|0)!=(g|0)?(f[c+20>>2]|0)!=0:0){x=0;ua(1491,n|0,l|0);c=x;x=0;if(c&1){c=20;break a}b=f[j>>2]|0}c=f[d+4>>2]|0}}while(0)}if((c|0)==9)b=Ia()|0;else if((c|0)==20)b=Ia()|0;else if((c|0)==23){dVa(n);u=m;return}}dVa(n);Ua(b|0)}function Bn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;m=o;n=n8(88)|0;aX(n);i=Yj(b)|0;f[n>>2]=i;i=n+8|0;f[m>>2]=1;j=n+12|0;e=f[j>>2]|0;g=n+16|0;d=f[g>>2]|0;if(e>>>0>>0){f[e>>2]=1;e=e+4|0;f[j>>2]=e}else{IL(i,m);e=f[j>>2]|0;d=f[g>>2]|0}f[m>>2]=1;if(e>>>0>>0){f[e>>2]=1;e=e+4|0;f[j>>2]=e}else{IL(i,m);e=f[j>>2]|0;d=f[g>>2]|0}l=b+32|0;if((e|0)==(d|0))IL(i,l);else{f[e>>2]=f[l>>2];f[j>>2]=e+4}f[m>>2]=1;d=n+24|0;e=f[d>>2]|0;if(e>>>0<(f[n+28>>2]|0)>>>0){f[e>>2]=1;f[d>>2]=e+4}else IL(n+20|0,m);f[n+4>>2]=0;U0a(m,c);d=f[m>>2]|0;j=qwa(d,0)|0;k=j+12|0;i=NKa(d,0,1)|0;aaa(k,Lya(m,3,Fpa(d,0,i,NKa(d,1,1)|0)|0)|0);aaa(k,gr(a,m,3,h[b+8>>0]|0)|0);d=f[b+16>>2]|0;if((Bbb(d)|0)>>>0>1)aaa(k,Jz(a,d,m,3)|0);g=qUa(c+144|0)|0;i=g;d=b;e=i+36|0;do{f[i>>2]=f[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0));b=NKa(f[m>>2]|0,3,1)|0;f[g+24>>2]=b;m=NKa(f[m>>2]|0,2,f[l>>2]|0)|0;f[g+28>>2]=m;aaa(k,g);XJa(j,0);f[n+36>>2]=j;Hs(c,n);u=o;return}function Cn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;g=k+24|0;i=k;h=(f[a+4>>2]|0)-(f[a>>2]|0)|0;j=h>>2;a:do if(!h){d=f[c>>2]|0;if((f[c+4>>2]|0)==(d|0))Ca(79937,79958,163,79984);while(1){if(kra(f[d+16>>2]|0)|0)break a;d=f[c>>2]|0}}else{pSa(132516);do if((((f[c+4>>2]|0)-(f[c>>2]|0)|0)/24|0|0)==(j|0)){h=a+12|0;if(b[h>>0]|0){x=0;wa(71,80013,79958,174,79984);x=0;e=9;break}b[h>>0]=1;f[g>>2]=132488;b[g+4>>0]=1;x=0;ta(458,132488);d=x;x=0;if(d&1)d=Ia()|0;else{x=0;ta(474,a|0);d=x;x=0;do if(!(d&1)){d=0;while(1){if(d>>>0>=j>>>0){e=23;break}e=f[(f[a>>2]|0)+(d<<2)>>2]|0;x=0;ua(1298,i|0,(f[c>>2]|0)+(d*24|0)|0);l=x;x=0;if(l&1){e=21;break}x=0;ua(1299,e|0,i|0);l=x;x=0;if(l&1){e=22;break}sta(i);d=d+1|0}if((e|0)==21){d=Ia()|0;break}else if((e|0)==22){d=Ia()|0;sta(i);break}else if((e|0)==23){F0(a+16|0,g,a);b[h>>0]=0;hJa(132488);hJa(132516);break a}}else d=Ia()|0;while(0);hJa(132488)}}else{x=0;wa(71,79989,79958,173,79984);x=0;e=9}while(0);if((e|0)==9)d=Ia()|0;hJa(132516);Ua(d|0)}while(0);u=k;return}function Dn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;l=j+28|0;k=j+16|0;h=j+4|0;i=j;d=(f[a>>2]|0)+3|0;while(1){c=b[d>>0]|0;if(c<<24>>24==32)d=d+1|0;else break}g=d;a:while(1){switch(c<<24>>24){case 10:case 0:break a;default:{}}c=g+1|0;g=c;c=b[c>>0]|0}c=d;while(1){if(c>>>0>=g>>>0)break;if((b[c>>0]|0)==58){e=10;break}c=c+1|0}b:do if((e|0)==10){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;nQ(l,d,c);e=c+1|0;c=e;while(1){if(c>>>0>=g>>>0){d=0;break}if((b[c>>0]|0)==58){d=1;break}c=c+1|0}f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;va(152,k|0,e|0,c|0);e=x;x=0;c:do if(e&1)c=Ia()|0;else{do if(d){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;x=0;va(152,h|0,c+1|0,g|0);g=x;x=0;if(g&1)c=Ia()|0;else{x=0;c=ia(177,a+16|0,12)|0;g=x;x=0;if(!(g&1)?(x=0,va(88,i|0,((b[l+11>>0]|0)<0?f[l>>2]|0:l)|0,0),g=x,x=0,!(g&1)):0){e=yR((b[k+11>>0]|0)<0?f[k>>2]|0:k)|0;g=yR((b[h+11>>0]|0)<0?f[h>>2]|0:h)|0;pOa(c,f[i>>2]|0,e,g);f[a+12>>2]=c;HTa(h);break}c=Ia()|0;HTa(h)}HTa(k);break c}while(0);HTa(k);HTa(l);break b}while(0);HTa(l);Ua(c|0)}while(0);u=j;return}function En(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;b=lCa(b)|0;j=a+56|0;if(!b){b=f[j>>2]|0;if(b|0){i=f[a+32>>2]|0;Bbb(i)|0;i=i+68|0;g=JDa(b+8|0,0)|0;g=ORa((LRa(f[g>>2]|0)|0)+8|0)|0;h=f[a+36>>2]|0;Bbb(h)|0;if((((f[h+136>>2]|0)-(f[h+132>>2]|0)|0)/12|0)>>>0<=g>>>0)Ca(63630,51387,1410,112062);h=JDa((f[j>>2]|0)+8|0,1)|0;h=ORa((LRa(f[h>>2]|0)|0)+8|0)|0;e=f[a+40>>2]|0;d=(f[a+44>>2]|0)-e>>2;a=d;a:while(1){b=a+-1|0;c=f[e+(b<<2)>>2]|0;f[k>>2]=c;if(!b){b=0;break}a=f[f[e+(a+-2<<2)>>2]>>2]|0;if(rab(a)|0)break;if(Fab(a)|0)break;if(vab(a)|0)break;switch(f[c+4>>2]|0){case 5:case 0:break a;default:{}}a=b}b:do if(!(Uz(i,k)|0))l=17;else while(1){b=b+1|0;if(b>>>0>=d>>>0)break b;f[k>>2]=f[e+(b<<2)>>2];if(!(Uz(i,k)|0)){l=17;break}}while(0);if((l|0)==17){l=Il(i,k)|0;f[l>>2]=g;f[l+4>>2]=h;f[l+8>>2]=0}f[j>>2]=0}}else{f[j>>2]=b;l=f[a+36>>2]|0;Bbb(l)|0;ssa(a+16|0,xWa(l+144|0)|0)}u=m;return}function Fn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=f[a>>2]|0;do if(e){g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Bbb(f[g>>2]|0)|0;if(T5a(e)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(b){e=f[b+12>>2]|0;if((e|0)==(f[b+16>>2]|0))e=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0))if(g){h=b;i=16}else i=15;else i=13}else i=13;if((i|0)==13)if(g)i=15;else{h=0;i=16}do if((i|0)==15)f[c>>2]=f[c>>2]|6;else if((i|0)==16){e=f[a>>2]|0;g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Bbb(f[g>>2]|0)|0;if((ec[f[(f[d>>2]|0)+52>>2]&127](d,e,0)|0)<<24>>24!=37){f[c>>2]=f[c>>2]|4;break}e=f[a>>2]|0;g=e+12|0;b=f[g>>2]|0;if((b|0)==(f[e+16>>2]|0)){bc[f[(f[e>>2]|0)+40>>2]&511](e)|0;e=f[a>>2]|0;if(!e)g=1;else i=24}else{f[g>>2]=b+4;i=24}do if((i|0)==24){g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Bbb(f[g>>2]|0)|0;if(T5a(e)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}while(0);if(h){e=f[h+12>>2]|0;if((e|0)==(f[h+16>>2]|0))e=bc[f[(f[h>>2]|0)+36>>2]&511](h)|0;else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0)){if(g)break}else i=35}else i=35;if((i|0)==35?!g:0)break;f[c>>2]=f[c>>2]|2}while(0);return}function Gn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o;n=n8(88)|0;aX(n);j=yj(c)|0;f[n>>2]=j;j=n+8|0;f[l>>2]=1;k=n+12|0;g=f[k>>2]|0;i=n+16|0;e=f[i>>2]|0;if(g>>>0>>0){f[g>>2]=1;g=g+4|0;f[k>>2]=g}else{IL(j,l);g=f[k>>2]|0;e=f[i>>2]|0}f[l>>2]=1;if(g>>>0>>0){f[g>>2]=1;f[k>>2]=g+4}else IL(j,l);f[l>>2]=1;e=n+24|0;g=f[e>>2]|0;if(g>>>0<(f[n+28>>2]|0)>>>0){f[g>>2]=1;f[e>>2]=g+4}else IL(n+20|0,l);g=f[c+4>>2]|0;f[n+4>>2]=g;U0a(l,d);e=f[l>>2]|0;i=qwa(e,0)|0;j=i+12|0;k=NKa(e,0,1)|0;aaa(j,Lya(l,2,Fpa(e,0,k,NKa(e,1,1)|0)|0)|0);aaa(j,gr(a,l,2,h[c+8>>0]|0)|0);e=f[c+16>>2]|0;if((Bbb(e)|0)>>>0>1)aaa(j,Jz(a,e,l,2)|0);e=kWa(d+144|0)|0;f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[e+12>>2]=f[c+12>>2];f[e+16>>2]=f[c+16>>2];f[e+20>>2]=f[c+20>>2];f[e+24>>2]=f[c+24>>2];l=NKa(f[l>>2]|0,2,1)|0;f[e+24>>2]=l;if((b[e+20>>0]|0)!=0?(m=e+9|0,(b[m>>0]|0)!=0):0){e=cv(e,h[e+8>>0]|0,d)|0;b[m>>0]=0}aaa(j,e);XJa(i,g);f[n+36>>2]=i;Hs(d,n);u=o;return}function Hn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;i=l+3|0;g=b[i>>0]|0;h=g<<24>>24<0;if(h){m=f[a+4>>2]|0;e=(f[l>>2]&2147483647)+-1|0}else{m=g&255;e=1}c=m>>>0<2;j=c?1:(m+4&-4)+-1|0;a:do if((j|0)!=(e|0)){do if(c){c=f[a>>2]|0;if(h){d=c;g=0;e=a;k=24}else{sWa(a,c,(g&255)+1|0);ubb(c);k=27}}else{d=j+1|0;c=d>>>0>1073741823;b:do if(j>>>0>e>>>0){if(!c){c=n8(d<<2)|0;break}c=Ea(8)|0;x=0;ua(98,c|0,121963);m=x;x=0;if(m&1){m=Ia()|0;La(c|0);Ua(m|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}else{do if(c){c=Ea(8)|0;x=0;ua(98,c|0,121963);m=x;x=0;if(m&1){m=Ja(0)|0;La(c|0);c=m;break}else{f[c>>2]=50472;x=0;va(98,c|0,39488,418);x=0;k=17;break}}else{x=0;c=ga(212,d<<2|0)|0;k=x;x=0;if(k&1)k=17;else break b}while(0);if((k|0)==17)c=Ja(0)|0;Fa(c|0)|0;Ga();break a}while(0);if(h){d=f[a>>2]|0;g=1;e=c;k=24;break}else{sWa(c,a,(g&255)+1|0);e=c;c=a+4|0;k=26;break}}while(0);if((k|0)==24){c=a+4|0;sWa(e,d,(f[c>>2]|0)+1|0);ubb(d);if(g){d=j+1|0;k=26}else k=27}if((k|0)==26){f[l>>2]=d|-2147483648;f[c>>2]=m;f[a>>2]=e;break}else if((k|0)==27){b[i>>0]=m;break}}while(0);return}function In(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+48|0;d=j+40|0;l=j+24|0;i=j+8|0;e=j+36|0;c=j+20|0;g=j+4|0;h=j;b=f[33117]|0;f[e>>2]=f[33114];f[d>>2]=f[e>>2];cUa(i,d,1);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;x=0;ua(3183,l|0,1);e=x;x=0;if(e&1){k=Ia()|0;uSa(l);Ua(k|0)}x2(l,i,i+8|0);e=a+4|0;f[c>>2]=b;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;f[d>>2]=f[c>>2];c=ka(20,d|0,l|0,1,i|0)|0;b=x;x=0;a:do if(b&1){b=Ia()|0;uSa(i)}else{uSa(i);tab(g);x=0;b=ja(46,f[e>>2]|0,0,1)|0;m=x;x=0;do if(!(m&1)){f[h>>2]=b;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,1);m=x;x=0;if(m&1){b=Ia()|0;uSa(i);k=13;break}mda(i,h,h+4|0);b=f[e>>2]|0;x=0;f[d>>2]=f[g>>2];b=ka(19,b|0,2,d|0,i|0)|0;m=x;x=0;if(m&1){b=Ia()|0;uSa(i);break}f[c+36>>2]=b;uSa(i);x=0;ua(3184,f[a>>2]|0,c|0);m=x;x=0;if(m&1){b=Ia()|0;break a}else{uSa(l);u=j;return c|0}}else{b=Ia()|0;k=13}while(0)}while(0);uSa(l);Ua(b|0);return 0}function Jn(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+112|0;k=r+40|0;j=r+32|0;l=r+60|0;m=r+96|0;n=r+16|0;o=r+56|0;p=r;q=Bbb(f[d>>2]|0)|0;d=b[c+8>>0]|0;a:do if((f[e>>2]|0)==2&d<<24>>24==8){i=l;d=c;h=i+36|0;do{f[i>>2]=f[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(h|0));b[l+8>>0]=4;f[l+4>>2]=1;i=jJa(e)|0;c=I;e=f[(f[a>>2]|0)+28>>2]|0;cLa(m,q,0);m$a(n,i);f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];f[k+12>>2]=f[n+12>>2];rc[e&255](a,l,j,k);e=f[(f[a>>2]|0)+28>>2]|0;cLa(o,q+4|0,0);m$a(p,c);f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];f[k+4>>2]=f[p+4>>2];f[k+8>>2]=f[p+8>>2];f[k+12>>2]=f[p+12>>2];rc[e&255](a,l,j,k)}else{h=d&255;if((Bbb(f[c+16>>2]|0)|0)>>>0>=h>>>0?(h+-1&q|0)==0:0){if(l6a(f[c+32>>2]|0)|0)switch(d<<24>>24){case 4:{+lb(37,q|0,+(+ONa(e)));break a}case 8:{+lb(38,q|0,+(+NNa(e)));break a}default:hb()}switch(d<<24>>24){case 1:{sb(34,q|0,Eia(e)|0)|0;break a}case 2:{sb(35,q|0,Eia(e)|0)|0;break a}case 4:{sb(36,q|0,Eia(e)|0)|0;break a}default:hb()}}d=l6a(f[c+32>>2]|0)|0;if(d)g=+mAa(e);else{e=Eia(e)|0;g=+(e>>>0)+4294967296.0*+(I|0)}+nb(33,q|0,h|0,d&1|0,+g)}while(0);u=r;return}function Kn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;l=q+8|0;m=q;p=b+8|0;do if((((Iab(f[p>>2]|0)|0?(Bbb(f[b+16>>2]|0)|0)==1:0)?(n=JDa(b+12|0,0)|0,n=o$a(f[n>>2]|0)|0,n|0):0)?(k=n+8|0,Iab(f[k>>2]|0)|0):0)?(o=n+4|0,(f[o>>2]|0)==(f[b+4>>2]|0)):0){c=GW(a+44|0,p)|0;h=c+4|0;i=l+4|0;j=m+4|0;c=f[c>>2]|0;while(1){if((c|0)==(h|0)){b=8;break}b=f[c+16>>2]|0;d=n$a(b)|0;if(!d){e=d$a(b)|0;if(!e){b=20;break}b=e+8|0;I$a(l,b);GUa(m,b);b=f[m>>2]|0;d=f[j>>2]|0;while(1){if(!(lTa(f[l>>2]|0,f[i>>2]|0,b,d)|0))break;g=LOa(l)|0;if($1a(f[g>>2]|0,f[p>>2]|0)|0)f[g>>2]=f[k>>2];RYa(l)}b=e+24|0;if($1a(f[b>>2]|0,f[p>>2]|0)|0)f[b>>2]=f[k>>2]}else{b=d+8|0;if($1a(f[b>>2]|0,f[p>>2]|0)|0)f[b>>2]=f[k>>2]}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((b|0)==8){XJa(n,f[o>>2]|0);BVa(f[a+16>>2]|0,n)|0;break}else if((b|0)==20)hb()}while(0);tQ(a,p);u=q;return}function Ln(){E6a();i6a();g6a();e6a();c6a();$5a();S5a();Q5a();O5a();M5a();K5a();I5a();G5a();E5a();C5a();A5a();y5a();w5a();u5a();s5a();q5a();o5a();m5a();k5a();i5a();g5a();e5a();c5a();a5a();_4a();Y4a();W4a();U4a();S4a();Q4a();O4a();M4a();K4a();I4a();G4a();E4a();C4a();A4a();y4a();w4a();a6a();t4a();r4a();p4a();n4a();l4a();d4a();b4a();$3a();Z3a();X3a();V3a();T3a();R3a();P3a();N3a();L3a();J3a();H3a();F3a();D3a();B3a();z3a();x3a();v3a();t3a();r3a();p3a();n3a();l3a();j3a();h3a();f3a();d3a();b3a();$2a();Z2a();X2a();W2a();D6a();C6a();B6a();g2a();f2a();abb();return}function Mn(a,c,e,g,i,j){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;f[e>>2]=a;f[j>>2]=g;p=c;q=i;a:while(1){m=f[e>>2]|0;if(m>>>0>=c>>>0){a=0;break}if(g>>>0>=i>>>0){a=1;break}l=b[m>>0]|0;o=l&255;do if(l<<24>>24>-1){d[g>>1]=l&255;a=m+1|0}else{if((l&255)<194){a=2;break a}if((l&255)<224){if((p-m|0)<2){a=1;break a}a=h[m+1>>0]|0;if((a&192|0)!=128){a=2;break a}d[g>>1]=a&63|o<<6&1984;a=m+2|0;break}if((l&255)<240){if((p-m|0)<3){a=1;break a}k=b[m+1>>0]|0;a=b[m+2>>0]|0;switch(l<<24>>24){case -32:{if((k&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((k&-32)<<24>>24!=-128){a=2;break a}break}default:if((k&-64)<<24>>24!=-128){a=2;break a}}a=a&255;if((a&192|0)!=128){a=2;break a}d[g>>1]=(k&63)<<6|o<<12|a&63;a=m+3|0;break}if((l&255)>=245){a=2;break a}if((p-m|0)<4){a=1;break a}n=b[m+1>>0]|0;a=b[m+2>>0]|0;k=b[m+3>>0]|0;switch(l<<24>>24){case -16:{if((n+112&255)>=48){a=2;break a}break}case -12:{if((n&-16)<<24>>24!=-128){a=2;break a}break}default:if((n&-64)<<24>>24!=-128){a=2;break a}}m=a&255;if((m&192|0)!=128){a=2;break a}l=k&255;if((l&192|0)!=128){a=2;break a}if((q-g|0)<4){a=1;break a}k=o&7;a=n&255;if((a<<12&196608|k<<18)>>>0>1114111){a=2;break a}d[g>>1]=a<<2&60|m>>>4&3|((a>>>4&3|k<<2)<<6)+16320|55296;a=g+2|0;f[j>>2]=a;d[a>>1]=l&63|m<<6&960|56320;a=(f[e>>2]|0)+4|0}while(0);f[e>>2]=a;g=(f[j>>2]|0)+2|0;f[j>>2]=g}return a|0}function Nn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=b+12|0;j=b+16|0;b=f[j>>2]|0;a:do if(Bbb(b)|0){k=a+80|0;i=0;b:while(1){if(i>>>0>=(b+-1|0)>>>0)break a;h=0;c=i;while(1){c=c+1|0;if(c>>>0>=b>>>0)break;b=JDa(l,c)|0;b=z2(f[b>>2]|0,f[k>>2]|0)|0;if(!b){d=JDa(l,c)|0;d=o$a(f[d>>2]|0)|0;if(!d)break;e=d+12|0;b=d+16|0;if(!(Bbb(f[b>>2]|0)|0))break;g=JDa(e,0)|0;g=z2(f[g>>2]|0,f[k>>2]|0)|0;if(!g)break;m=JDa(l,i)|0;if(h|(Mi(a,g,f[m>>2]|0)|0))b=1;else{if((Bbb(f[b>>2]|0)|0)!=1)break b;$p(a,JDa(l,i)|0,g);m=JDa(l,i)|0;m=f[m>>2]|0;b=JDa(e,0)|0;f[b>>2]=m;b=JDa(l,i)|0;f[b>>2]=d;b=JDa(l,c)|0;f[b>>2]=g;pVa(g);b=0}}else{m=JDa(l,i)|0;if(h|(Mi(a,b,f[m>>2]|0)|0))b=1;else{$p(a,JDa(l,i)|0,b);pVa(b);b=0}}h=b;b=f[j>>2]|0}i=c;b=f[j>>2]|0}Ca(99849,99874,124,99913)}while(0);return}function On(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;j=s;b[a>>0]=0;g=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;h=f[g+16>>2]|0;if(!h){g=f[g+72>>2]|0;if(g|0)du(g)|0;do if(!e?(i=c+(f[(f[c>>2]|0)+-12>>2]|0)|0,f[i+4>>2]&4096|0):0){ZXa(j,i);x=0;g=ia(73,f[j>>2]|0,134880)|0;q=x;x=0;if(q&1){s=Ia()|0;JCa(j);Ua(s|0)}JCa(j);p=f[c+(f[(f[c>>2]|0)+-12>>2]|0)+24>>2]|0;k=g+8|0;l=p;m=(p|0)==0;n=l+12|0;o=l+16|0;q=p;while(1){if(m)break;g=f[n>>2]|0;if((g|0)==(f[o>>2]|0))g=bc[f[(f[q>>2]|0)+36>>2]&511](l)|0;else g=X6a(b[g>>0]|0)|0;j=$1a(g,-1)|0;i=j?0:p;if(j)break;e=i;h=e+12|0;g=f[h>>2]|0;j=e+16|0;if((g|0)==(f[j>>2]|0))g=bc[f[(f[i>>2]|0)+36>>2]&511](e)|0;else g=X6a(b[g>>0]|0)|0;if((g&255)<<24>>24<=-1){r=23;break}if(!(d[(f[k>>2]|0)+(g<<24>>24<<1)>>1]&8192)){r=23;break}g=f[h>>2]|0;if((g|0)==(f[j>>2]|0))bc[f[(f[i>>2]|0)+40>>2]&511](e)|0;else f[h>>2]=g+1}if((r|0)==23){g=f[h>>2]|0;if((g|0)==(f[j>>2]|0))g=bc[f[(f[q>>2]|0)+36>>2]&511](e)|0;else g=X6a(b[g>>0]|0)|0;if(!($1a(g,-1)|0))break}r=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;IS(r,f[r+16>>2]|6)}while(0);b[a>>0]=(f[c+(f[(f[c>>2]|0)+-12>>2]|0)+16>>2]|0)==0&1}else IS(g,h|4);u=s;return}function Pn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;l=p;f[a>>2]=c;f[a+4>>2]=d;q=a+8|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[a+24>>2]=1065353216;b[a+28>>0]=0;x=0;g=ia(62,134008,73197)|0;k=x;x=0;do if((!(k&1)?(x=0,e=ia(76,g|0,f[f[c+116>>2]>>2]|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,e|0,87602)|0,k=x,x=0,!(k&1)):0){k=d+24|0;e=d+28|0;g=f[e>>2]|0;h=a+20|0;c=f[k>>2]|0;while(1){if((c|0)==(g|0))break;j=f[c>>2]|0;f[l>>2]=j;if(!(Fab(f[j>>2]|0)|0)){i=f[h>>2]|0;x=0;j=ia(112,q|0,l|0)|0;r=x;x=0;if(r&1){o=11;break}f[j>>2]=i}c=c+4|0}if((o|0)==11){c=Ia()|0;break}e=f[e>>2]|0;c=f[k>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(636,a|0,f[c>>2]|0);r=x;x=0;if(r&1){o=17;break}c=c+4|0}if((o|0)==17){c=Ia()|0;break}e=f[d+60>>2]|0;c=f[d+56>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(637,a|0,f[c>>2]|0);r=x;x=0;if(r&1){o=22;break}c=c+4|0}if((o|0)==22){c=Ia()|0;break}x=0;c=ia(62,134008,73215)|0;r=x;x=0;if(((!(r&1)?(x=0,m=ia(112,q|0,d+4|0)|0,r=x,x=0,!(r&1)):0)?(x=0,n=ia(113,c|0,f[m>>2]|0)|0,r=x,x=0,!(r&1)):0)?(x=0,ia(62,n|0,73223)|0,r=x,x=0,!(r&1)):0){u=p;return}else o=7}else o=7;while(0);if((o|0)==7)c=Ia()|0;NQa(q);Ua(c|0)}function Qn(a,c){a=a|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;f[i>>2]=c;g=Bbb(a)|0;e=f[a>>2]|0;a:do if(Gab(e)|0)h=0;else{if(rab(e)|0){a=oPa(g)|0;d=+p[a>>3];if(d<0.0){h=1;break}if(d>4294967295.0|d%1.0!=0.0){h=3;break}h=SYa(d)|0;h=h?0:2;break}e=g0a(a,0)|0;e=pPa(Bbb(f[e>>2]|0)|0)|0;e=f[e>>2]|0;if($1a(e,f[33289]|0)|0){e=g0a(a,1)|0;e=pPa(Bbb(f[e>>2]|0)|0)|0;e=f[e>>2]|0;switch(b[e>>0]|0){case 45:case 43:{h=0;break a}case 62:{if($1a(e,f[33238]|0)|0){h=2;break a}break}case 33:case 61:case 60:case 94:case 38:case 124:break;case 47:case 42:{h=3;break a}default:vJa(a)}h=1;break}if($1a(e,f[33267]|0)|0){g=g0a(a,1)|0;g=pPa(Bbb(f[g>>2]|0)|0)|0;switch(b[f[g>>2]>>0]|0){case 45:{h=0;break a}case 43:{h=3;break a}case 126:{h=1;break a}default:vJa(a)}}if($1a(e,f[33290]|0)|0){h=g0a(a,2)|0;h=Qn(f[h>>2]|0,c)|0;break}if($1a(e,f[33280]|0)|0){c=g0a(a,1)|0;c=f[c>>2]|0;Bbb(c)|0;if(Gab(f[c>>2]|0)|0){c=g0a(a,1)|0;if(FBa(f[c>>2]|0,133060)|0){h=3;break}c=g0a(a,1)|0;if(FBa(f[c>>2]|0,i)|0){h=3;break}}}else if($1a(e,f[33282]|0)|0){h=g0a(a,2)|0;h=Qn(f[h>>2]|0,c)|0;break}vJa(a)}while(0);u=j;return h|0}function Rn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;c=k+28|0;g=k+16|0;i=k+4|0;j=k;do if(b[a+12>>0]|0){h=yCa(134176,98755)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(c);Wq(h,e)|0;du(h)|0;break}l=Ia()|0;JCa(c);Ua(l|0)}while(0);a:do switch(nq(a)|0){case 0:{d=15;break}case 1:{d=10;break}default:{f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,98769,h7a(98769)|0);x=0;ua(1869,a|0,g|0);l=x;x=0;if(l&1){c=Ia()|0;HTa(g);d=16;break a}else{HTa(g);d=10;break a}}}while(0);b:do if((d|0)==10){c=f[a>>2]|0;d=c+112|0;do if(b[d>>0]|0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,98794,h7a(98794)|0);x=0;ua(1869,a|0,i|0);l=x;x=0;if(l&1){c=Ia()|0;HTa(i);d=16;break b}else{HTa(i);c=f[a>>2]|0;d=c+112|0;break}}while(0);b[d>>0]=1;cLa(j,65535,0);WB(a,c+92|0,c+96|0,c+114|0,f[j>>2]|0);d=15}while(0);if((d|0)==15){u=k;return}else if((d|0)==16)Ua(c|0)}function Sn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=u;u=u+64|0;h=l+16|0;i=l+40|0;j=l+52|0;k=l;f[a>>2]=b;m=a+4|0;yUa(m);n=a+20|0;f[n>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;d=a+32|0;Kab(d);f[a+36>>2]=c;x=0;va(f[(f[c>>2]|0)+4>>2]|0,c|0,m|0,b|0);g=x;x=0;a:do if(!(g&1)){f[d>>2]=f[b+92>>2];e=f[b+52>>2]|0;d=f[b+48>>2]|0;while(1){if((d|0)==(e|0))break;eha(i,m);x=0;va(92,h|0,i|0,f[(f[d>>2]|0)+8>>2]|0);g=x;x=0;if(g&1){o=9;break}x=0;g=ia(81,m|0,f[d>>2]|0)|0;p=x;x=0;if(p&1){o=9;break}f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];d=d+4|0}if((o|0)==9){d=Ia()|0;break}g=f[f[c>>2]>>2]|0;p=Bbb(a)|0;x=0;va(g|0,c|0,b|0,p|0);p=x;x=0;if(!(p&1)){d=f[b+116>>2]|0;do if(Iab(d)|0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[j>>2]=d;x=0;f[h>>2]=f[j>>2];wa(79,k|0,a|0,h|0,i|0);p=x;x=0;if(p&1){d=Ia()|0;uSa(i);break a}else{uSa(i);break}}while(0);u=l;return}else o=5}else o=5;while(0);if((o|0)==5)d=Ia()|0;uSa(n);YCa(m);Ua(d|0)}function Tn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;do if(f[a+4>>2]|0){e=N$(a)|0;d=b;g=b;while(1){if((e|0)==0|(d|0)==(c|0)){i=8;break}f[e+8>>2]=f[b+8>>2];d=b+12|0;b=e+12|0;f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];b=f[e>>2]|0;x=0;ua(1836,a|0,e|0);d=x;x=0;if(d&1)break;l=f[g>>2]|0;e=b;d=l;g=l;b=l}if((i|0)==8){Vya(e);h=d;break}b=Ja(0)|0;Fa(b|0)|0;Vya(e);x=0;sa(8);x=0;b=Ia()|0;x=0;sa(6);l=x;x=0;if(l&1){l=Ja(0)|0;r2a(l)}else Ua(b|0)}else h=b;while(0);b=h;d=h;e=h;while(1){if((b|0)==(c|0)){i=16;break}MJ(k,a,d+8|0);d=f[k>>2]|0;x=0;ua(1836,a|0,d|0);l=x;x=0;if(l&1)break;l=f[e>>2]|0;b=l;d=l;e=l}if((i|0)==16){u=j;return}b=Ia()|0;f[k>>2]=0;if(d|0)ubb(d);Ua(b|0)}function Un(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;r=u;u=u+64|0;e=r+16|0;v=r+48|0;s=r+32|0;l=r;mD(v,a,1);x=0;va(159,s|0,a|0,1);m=x;x=0;if(m&1)b=Ia()|0;else{m=a+44|0;c=f[m>>2]|0;x=0;d=ga(320,s|0)|0;w=x;x=0;do if(!(w&1)?(x=0,n=ja(45,c|0,d|0,f[b+12>>2]|0)|0,w=x,x=0,!(w&1)):0){b=f[m>>2]|0;x=0;c=ga(320,v|0)|0;w=x;x=0;if(((((!(w&1)?(g=f[m>>2]|0,x=0,h=ga(320,s|0)|0,w=x,x=0,!(w&1)):0)?(x=0,i=ja(46,f[g>>2]|0,h|0,1)|0,w=x,x=0,!(w&1)):0)?(j=f[m>>2]|0,m$a(l,31),x=0,f[e>>2]=f[l>>2],f[e+4>>2]=f[l+4>>2],f[e+8>>2]=f[l+8>>2],f[e+12>>2]=f[l+12>>2],j=ia(50,j|0,e|0)|0,w=x,x=0,!(w&1)):0)?(x=0,k=ka(7,f[g>>2]|0,12,i|0,j|0)|0,w=x,x=0,!(w&1)):0)?(x=0,o=ja(45,b|0,c|0,k|0)|0,w=x,x=0,!(w&1)):0){b=f[m>>2]|0;x=0;c=ga(320,s|0)|0;w=x;x=0;if(((!(w&1)?(x=0,p=ja(46,f[b>>2]|0,c|0,1)|0,w=x,x=0,!(w&1)):0)?(x=0,q=ka(21,b|0,n|0,o|0,p|0)|0,w=x,x=0,!(w&1)):0)?(x=0,va(161,a|0,q|0,v|0),w=x,x=0,!(w&1)):0){BVa(f[a+16>>2]|0,q)|0;HCa(s);HCa(v);u=r;return}b=Ia()|0;break}b=Ia()|0}else t=16;while(0);if((t|0)==16)b=Ia()|0;HCa(s)}HCa(v);Ua(b|0)}function Vn(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;j=g+8|0;while(1){g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=X6a(b[h>>0]|0)|0;if($1a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0))g=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else g=X6a(b[g>>0]|0)|0;if(!($1a(g,-1)|0)){if(!h)break}else k=14}else k=14;if((k|0)==14){k=0;if(h){c=0;break}else c=0}g=f[a>>2]|0;h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=X6a(b[h>>0]|0)|0;if((g&255)<<24>>24<=-1)break;if(!(d[(f[j>>2]|0)+(g<<24>>24<<1)>>1]&8192))break;g=f[a>>2]|0;h=g+12|0;i=f[h>>2]|0;if((i|0)==(f[g+16>>2]|0))bc[f[(f[g>>2]|0)+40>>2]&511](g)|0;else f[h>>2]=i+1}g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=X6a(b[h>>0]|0)|0;if($1a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0))g=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else g=X6a(b[g>>0]|0)|0;if(!($1a(g,-1)|0)){if(!h)k=39}else k=37}else k=37;if((k|0)==37?h:0)k=39;if((k|0)==39)f[e>>2]=f[e>>2]|2;return}function Wn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=u;u=u+48|0;n=k+24|0;l=k+12|0;h=k;i=a+136|0;j=f[i>>2]|0;f[n>>2]=b;e=em(a+64|0,n)|0;f[e>>2]=j;f[i>>2]=b;e=Lk(a,f[b+8>>2]|0)|0;if(!e)Ca(76321,76199,268,76331);g=a+140|0;cR(n,g);x=0;ia(118,a|0,f[b+12>>2]|0)|0;d=x;x=0;if(d&1)c=Ia()|0;else{x=0;ua(679,l|0,g|0);d=x;x=0;if(d&1)c=Ia()|0;else{d=b+16|0;c=f[d>>2]|0;a:do if(!c){x=0;ya(11,a|0,n|0,l|0,e|0,b|0,g|0);m=x;x=0;if(m&1)m=15;else m=20}else{if((g|0)!=(n|0)){x=0;va(105,g|0,f[n>>2]|0,f[n+4>>2]|0);c=x;x=0;if(c&1){m=15;break}c=f[d>>2]|0}x=0;ia(118,a|0,c|0)|0;d=x;x=0;if(d&1)m=15;else{x=0;ua(679,h|0,g|0);d=x;x=0;do if(!(d&1)){x=0;ya(11,a|0,l|0,h|0,e|0,b|0,g|0);g=x;x=0;if(g&1){c=Ia()|0;uSa(h);break}else{uSa(h);m=20;break a}}else c=Ia()|0;while(0)}}while(0);if((m|0)==15)c=Ia()|0;else if((m|0)==20){f[i>>2]=j;uSa(l);uSa(n);u=k;return a|0}uSa(l)}}uSa(n);Ua(c|0);return 0}function Xn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=u;u=u+48|0;j=i+32|0;n=i+16|0;l=i;g=b+12|0;SN(n,a,f[g>>2]|0);x=0;va(159,l|0,a|0,1);h=x;x=0;if(h&1)c=Ia()|0;else{h=a+44|0;c=f[h>>2]|0;x=0;d=ga(320,l|0)|0;o=x;x=0;a:do if(!(o&1)?(x=0,e=ja(45,c|0,d|0,f[g>>2]|0)|0,o=x,x=0,!(o&1)):0){x=0;c=ja(70,f[h>>2]|0,e|0,0)|0;o=x;x=0;b:do if(!(o&1))switch(f[b+8>>2]|0){case 1:{x=0;wa(146,a|0,c|0,n|0,l|0);o=x;x=0;if(o&1)break b;HCa(l);HCa(n);u=i;return}case 3:{x=0;c=ia(62,134176,107056)|0;o=x;x=0;if(o&1)break b;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,o=x,x=0,!(o&1)):0){JCa(j);x=0;ia(79,c|0,k|0)|0;o=x;x=0;if(o&1)break b;x=0;ga(227,c|0)|0;o=x;x=0;if(o&1)break b;x=0;sa(5);x=0;break b}c=Ia()|0;JCa(j);break a}default:{x=0;sa(5);x=0;break b}}while(0);c=Ia()|0}else m=7;while(0);if((m|0)==7)c=Ia()|0;HCa(l)}HCa(n);Ua(c|0)}function Yn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d;do if(!(XW(b)|0)){c=jF(Or(b,0)|0)|0;if($1a(c,f[33112]|0)|0){lca(a,b);break}if($1a(c,f[33111]|0)|0){Ic(a,b,0);break}if($1a(c,f[33108]|0)|0){sd(a,b,0);break}if($1a(c,f[33107]|0)|0){Wz(a,b);break}if($1a(c,f[33105]|0)|0){od(a,b);break}if(!($1a(c,f[33104]|0)|0)){if($1a(c,f[32999]|0)|0){Qc(a,b,0);break}if($1a(c,f[33103]|0)|0){ud(a,b,0);break}if($1a(c,f[33102]|0)|0){z9(a,b);break}if(!($1a(c,f[33100]|0)|0)){zma(yCa(yCa(134176,92325)|0,c)|0,10)|0;d=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=h7a(92345)|0;x=0;va(87,e|0,92345,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,d|0,e|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;HTa(e);if(c)g=25}else{a=Ia()|0;g=25}if((g|0)==25)La(d|0);Ua(a|0)}}}while(0);u=d;return}function Zn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n+12|0;l=n;if((d+-72&255)>6)e=0;else{m=MRa(f[a+4>>2]|0)|0;switch(d<<24>>24){case 72:{g=4;e=1;break}case 73:{g=8;e=2;break}case 74:{g=1;e=1;break}case 75:{g=2;e=1;break}case 76:{g=1;e=2;break}case 77:{g=2;e=2;break}case 78:{g=4;e=2;break}default:hb()}f[m+4>>2]=e;i=m+8|0;b[i>>0]=g;do if(b[a+12>>0]|0){e=yCa(134176,110752)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,j=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,g=x,x=0,!(g&1)):0){JCa(k);Wq(e,j)|0;du(e)|0;break}n=Ia()|0;JCa(k);Ua(n|0)}while(0);Kab(k);JF(a,k,m+12|0);k=Bbb(f[k>>2]|0)|0;do if((k|0)!=(h[i>>0]|0)){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,97034,h7a(97034)|0);x=0;ua(1869,a|0,l|0);k=x;x=0;if(k&1){n=Ia()|0;HTa(l);Ua(n|0)}else{HTa(l);break}}while(0);e=dk(a)|0;f[m+24>>2]=e;e=dk(a)|0;f[m+20>>2]=e;e=dk(a)|0;f[m+16>>2]=e;Jza(m);f[c>>2]=m;e=1}u=n;return e|0}function _n(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;do if(b[a+33>>0]|0){i=yCa(134176,110752)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}m=Ia()|0;JCa(g);Ua(m|0)}while(0);if((((f[(f[c+16>>2]|0)+4>>2]|0)!=5?(f[(f[c+20>>2]|0)+4>>2]|0)!=5:0)?(f[(f[c+24>>2]|0)+4>>2]|0)!=5:0)?(j=c+4|0,(f[j>>2]|0)!=5):0){e=a+28|0;Ev(f[e>>2]|0,-2)|0;a:do switch(f[j>>2]|0){case 1:{d=c+8|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,74)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,75)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,72)|0;k=d;break a}default:hb()}break}case 2:{d=c+8|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,76)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,77)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,78)|0;k=d;break a}case 8:{Ev(f[e>>2]|0,73)|0;k=d;break a}default:hb()}break}default:hb()}while(0);m=h[k>>0]|0;CX(a,m,m,Bbb(f[c+12>>2]|0)|0)}u=l;return}function $n(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=16}else{b:do if(b[m>>0]|0){j=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;k=f[j+24>>2]|0;l=f[j+4>>2]|0;g=c+d|0;e=j+76|0;d=f[e>>2]|0;do if($1a(-1,d)|0){ZXa(i,j);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){JCa(i);d=h<<24>>24;f[e>>2]=d;n=8;break}d=Ja(0)|0;JCa(i)}else n=8;while(0);do if((n|0)==8){x=0;d=oa(39,k|0,c|0,((l&176|0)==32?g:c)|0,g|0,j|0,d&255|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0}while(0);eD(m);e=a;g=a;n=16;break a}while(0);eD(m)}while(0);do if((n|0)==16){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;r2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function ao(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;j=p;n=a+11|0;g=b[n>>0]|0;k=g<<24>>24<0;if(k)h=f[a>>2]|0;else h=a;o=c-h|0;m=e-d|0;do if(!m)l=29;else{if(k){h=f[a>>2]|0;i=f[a+4>>2]|0}else{h=a;i=g&255}if(aWa(d,h,h+i|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;SM(j,d,e);o=b[j+11>>0]|0;n=o<<24>>24<0;e=n?f[j>>2]|0:j;x=0;a=ka(42,a|0,c|0,e|0,e+(n?f[j+4>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){p=Ia()|0;HTa(j);Ua(p|0)}else{HTa(j);break}}if(k){h=(f[a+8>>2]&2147483647)+-1|0;i=f[a+4>>2]|0}else{h=10;i=g&255}if((h-i|0)>>>0>=m>>>0){if(k)h=f[a>>2]|0;else h=a;g=i-o|0;if(g){l=h+o|0;STa(l+m|0,l,g)|0}}else{QH(a,h,i+m-h|0,i,o,m);h=f[a>>2]|0}g=i+m|0;if((b[n>>0]|0)<0)f[a+4>>2]=g;else b[n>>0]=g;T0a(h+g|0,0);g=h+o|0;while(1){if((d|0)==(e|0))break;T0a(g,b[d>>0]|0);d=d+1|0;g=g+1|0}g=b[n>>0]|0;l=29}while(0);if((l|0)==29){if(g<<24>>24<0)a=f[a>>2]|0;a=a+o|0}u=p;return a|0}function bo(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0;a:do if(a<<24>>24==h<<24>>24)if(b[c>>0]|0){b[c>>0]=0;d=f[g>>2]|0;f[g>>2]=d+1;b[d>>0]=46;g=b[j+11>>0]|0;if(((g<<24>>24<0?f[j+4>>2]|0:g&255)|0)!=0?(o=f[l>>2]|0,(o-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;o=0}else o=0}else o=-1;else{if(a<<24>>24==i<<24>>24?(i=b[j+11>>0]|0,(i<<24>>24<0?f[j+4>>2]|0:i&255)|0):0){if(!(b[c>>0]|0)){o=-1;break}o=f[l>>2]|0;if((o-k|0)>=160){o=0;break}k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;f[m>>2]=0;o=0;break}i=n+32|0;h=0;while(1){o=n+h|0;if((h|0)==32){o=i;break}if((b[o>>0]|0)==a<<24>>24)break;else h=h+1|0}h=o-n|0;if((h|0)>31)o=-1;else{i=b[31216+h>>0]|0;switch(h|0){case 24:case 25:{o=f[g>>2]|0;if((o|0)!=(e|0)?(b[o+-1>>0]&95)!=(b[d>>0]&127):0){o=-1;break a}f[g>>2]=o+1;b[o>>0]=i;o=0;break a}case 23:case 22:{b[d>>0]=80;o=f[g>>2]|0;f[g>>2]=o+1;b[o>>0]=i;o=0;break a}default:{o=i&95;if((((o|0)==(b[d>>0]|0)?(b[d>>0]=o|128,b[c>>0]|0):0)?(b[c>>0]=0,d=b[j+11>>0]|0,(d<<24>>24<0?f[j+4>>2]|0:d&255)|0):0)?(p=f[l>>2]|0,(p-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=p+4;f[p>>2]=k}l=f[g>>2]|0;f[g>>2]=l+1;b[l>>0]=i;if((h|0)>21){o=0;break a}f[m>>2]=(f[m>>2]|0)+1;o=0;break a}}}}while(0);return o|0}function co(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k;do if(b[a+12>>0]|0){i=zma(yCa(134176,96686)|0,d)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(h);Wq(i,g)|0;du(i)|0;break}l=Ia()|0;JCa(h);Ua(l|0)}while(0);switch(d<<24>>24){case 65:{j=ZVa(f[a+4>>2]|0)|0;m$a(h,oq(a)|0);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}case 66:{j=ZVa(f[a+4>>2]|0)|0;SSa(h,Ap(a)|0,I);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}case 67:{j=ZVa(f[a+4>>2]|0)|0;aq(h,a);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}case 68:{j=ZVa(f[a+4>>2]|0)|0;sp(h,a);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}default:a=0}if((j|0)==11){f[a+4>>2]=f[a+8>>2];f[c>>2]=a;a=1}u=k;return a|0}function eo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;n=s;a:do if(!($1a(c,-1)|0)){o=a+12|0;p=a+8|0;q=(f[o>>2]|0)-(f[p>>2]|0)|0;r=a+24|0;d=f[r>>2]|0;l=a+28|0;e=f[l>>2]|0;do if((d|0)==(e|0)){h=a+48|0;if(!(f[h>>2]&16)){d=-1;break a}k=a+20|0;j=f[k>>2]|0;i=d-j|0;m=a+44|0;j=(f[m>>2]|0)-j|0;g=a+32|0;x=0;ua(82,g|0,0);e=x;x=0;if(!(e&1)){d=g+11|0;if((b[d>>0]|0)<0)e=(f[a+40>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,g|0,e|0);e=x;x=0;if(!(e&1)){d=b[d>>0]|0;if(d<<24>>24<0){e=f[g>>2]|0;d=f[a+36>>2]|0}else{e=g;d=d&255}t=e+d|0;f[k>>2]=e;f[l>>2]=t;l=e+i|0;f[r>>2]=l;d=e+j|0;f[m>>2]=d;k=m;g=m;j=t;break}}d=Ja(0)|0;Fa(d|0)|0;Ga();d=-1;break a}else{j=a+44|0;k=j;h=a+48|0;g=j;l=d;d=f[j>>2]|0;j=e}while(0);i=l+1|0;f[n>>2]=i;e=f[(i>>>0>>0?g:n)>>2]|0;f[k>>2]=e;if(f[h>>2]&8|0){d=a+32|0;if((b[d+11>>0]|0)<0)d=f[d>>2]|0;f[p>>2]=d;f[o>>2]=d+q;f[a+16>>2]=e}d=c&255;if((l|0)==(j|0)){t=f[(f[a>>2]|0)+52>>2]|0;d=X6a(d)|0;d=dc[t&255](a,d)|0;break}else{f[r>>2]=i;b[l>>0]=d;d=X6a(d)|0;break}}else d=ZWa(c)|0;while(0);u=s;return d|0}function fo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;h=l+32|0;i=l+16|0;j=l;yXa(i);yXa(j);switch(f[b+8>>2]|0){case 54:{m$a(h,-2147483648);f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];m$a(h,2147483647);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];c=8;d=7;e=33;g=45;k=4;break}case 67:{SSa(h,0,-2147483648);f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];SSa(h,-1,2147483647);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];c=33;d=32;e=34;g=46;k=4;break}default:{}}if((k|0)==4){k=a+44|0;m=f[k>>2]|0;n=mBa(f[m>>2]|0,e,f[b+12>>2]|0)|0;o=f[k>>2]|0;f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];j=a0(o,h)|0;j=Fpa(f[m>>2]|0,d,n,j)|0;n=f[k>>2]|0;b=mBa(f[n>>2]|0,e,f[b+16>>2]|0)|0;k=f[k>>2]|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];k=a0(k,h)|0;k=Fpa(f[n>>2]|0,d,b,k)|0;k=Fpa(f[m>>2]|0,c,j,k)|0;k=mBa(f[m>>2]|0,g,k)|0;BVa(f[a+16>>2]|0,k)|0}u=l;return}function go(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+24|0;j=l+12|0;k=l;a:do if(((((c-a|0)>2?(b[a>>0]|0)==97:0)?(b[a+1>>0]|0)==122:0)?(m=a+2|0,h=Bc(m,c,d)|0,(h|0)!=(m|0)):0)?(g=d+4|0,e=f[g>>2]|0,(f[d>>2]|0)!=(e|0)):0){eY(k,e+-24|0);x=0;ja(101,k|0,0,124455)|0;m=x;x=0;do if(m&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,j|0,123274)|0;m=x;x=0;if(m&1){a=Ia()|0;HTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;d=a+-24|0;c=d+11|0;if((b[c>>0]|0)<0){T0a(f[d>>2]|0,0);f[a+-20>>2]=0;a=d}else{T0a(d,0);b[c>>0]=0;a=d}wv(d);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}HTa(i);HTa(j);HTa(k);a=h;break a}while(0);HTa(k);Ua(a|0)}while(0);u=l;return a|0}function ho(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+24|0;j=l+12|0;k=l;a:do if(((((c-a|0)>2?(b[a>>0]|0)==97:0)?(b[a+1>>0]|0)==116:0)?(m=a+2|0,h=Cc(m,c,d)|0,(h|0)!=(m|0)):0)?(g=d+4|0,e=f[g>>2]|0,(f[d>>2]|0)!=(e|0)):0){eY(k,e+-24|0);x=0;ja(101,k|0,0,124455)|0;m=x;x=0;do if(m&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,j|0,123274)|0;m=x;x=0;if(m&1){a=Ia()|0;HTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;d=a+-24|0;c=d+11|0;if((b[c>>0]|0)<0){T0a(f[d>>2]|0,0);f[a+-20>>2]=0;a=d}else{T0a(d,0);b[c>>0]=0;a=d}wv(d);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}HTa(i);HTa(j);HTa(k);a=h;break a}while(0);HTa(k);Ua(a|0)}while(0);u=l;return a|0}function io(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+160|0;q=p+16|0;o=p;a:do if(d>>>0>g>>>0|(d|0)==(g|0)&c>>>0>e>>>0){i=q+64|0;j=q+8|0;f[j>>2]=39904;n=q+12|0;f[q>>2]=31588;f[i>>2]=31608;f[q+4>>2]=0;Gaa(q+64|0,n);f[q+136>>2]=0;f[q+140>>2]=-1;f[q>>2]=39884;f[i>>2]=39924;f[j>>2]=39904;Sra(n);f[n>>2]=39940;j=q+44|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=0;while(1){if((i|0)==3)break;f[j+(i<<2)>>2]=0;i=i+1|0}f[q+56>>2]=0;f[q+60>>2]=24;x=0;i=ia(62,q+8|0,h|0)|0;h=x;x=0;if((((!(h&1)?(x=0,k=ia(62,i|0,122324)|0,h=x,x=0,!(h&1)):0)?(x=0,l=ja(50,k|0,c|0,d|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,58308)|0,l=x,x=0,!(l&1)):0)?(x=0,ja(50,m|0,e|0,g|0)|0,g=x,x=0,!(g&1)):0){i=f[a+36>>2]|0;j=f[(f[i>>2]|0)+20>>2]|0;x=0;ua(107,o|0,n|0);n=x;x=0;do if(!(n&1)){x=0;ua(j|0,i|0,((b[o+11>>0]|0)<0?f[o>>2]|0:o)|0);n=x;x=0;if(n&1){i=Ia()|0;HTa(o);break}else{HTa(o);nHa(q);break a}}else i=Ia()|0;while(0)}else i=Ia()|0;nHa(q);Ua(i|0)}while(0);u=p;return}function jo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+24|0;h=i;M0a(g);d=f[c+12>>2]|0;if((d|0)!=0?(Mu(h,b,d),f[g>>2]=f[h>>2],f[g+4>>2]=f[h+4>>2],f[g+8>>2]=f[h+8>>2],f[g+12>>2]=f[h+12>>2],f[g+16>>2]=f[h+16>>2],D0a(g)|0):0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else e=4;a:do if((e|0)==4){d=f[c+16>>2]|0;do if(d|0){Mu(h,b,d);if(D0a(h)|0){f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2];break a}h=Eia(h)|0;if((h|0)==0&(I|0)==0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break a}else break}while(0);f[g+16>>2]=f[c+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}while(0);u=i;return}function ko(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+16|0;j=i;e=f[a>>2]|0;h=a+4|0;c=b[h+11>>0]|0;if(c<<24>>24<0)c=f[a+8>>2]|0;else c=c&255;do if(!c)c=f[134008+(f[(f[33502]|0)+-12>>2]|0)+24>>2]|0;else{do if(!(f[a+20>>2]|0)){c=yCa(Lca(yCa(134176,87044)|0,h)|0,99207)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(j);Wq(c,g)|0;du(c)|0;break}l=Ia()|0;JCa(j);Ua(l|0)}while(0);d4(e,h,(f[a+16>>2]|0)==0?52:48);if(f[e+68>>2]|0){c=e+4|0;break}c=yCa(Lca(yCa(134176,87054)|0,h)|0,99207)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(j);Wq(c,k)|0;du(c)|0;xb(1)}l=Ia()|0;JCa(j);Ua(l|0)}while(0);u=i;return c|0}function lo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121963);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}m=n8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)ubb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(!m){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&l;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){k=c;b:while(1){while(1){c=f[k>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!m){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&l;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;g=c+8|0;j=c;while(1){h=f[j>>2]|0;if(!h){i=30;break}if(!(dN(g,h+8|0)|0)){i=32;break}j=f[j>>2]|0}if((i|0)==30){h=j;g=0}else if((i|0)==32){h=j;g=f[j>>2]|0}f[k>>2]=g;f[h>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}k=c}f[g>>2]=k;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)ubb(c);f[d>>2]=0}while(0);return}function mo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;while(1){e=f[a>>2]|0;do if(e){g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Bbb(f[g>>2]|0)|0;if(T5a(e)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(b){e=f[b+12>>2]|0;if((e|0)==(f[b+16>>2]|0))e=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0)){if(!g){g=b;break}}else i=14}else i=14;if((i|0)==14){i=0;if(g){g=0;break}else b=0}e=f[a>>2]|0;g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Bbb(f[g>>2]|0)|0;if(!(ec[f[(f[d>>2]|0)+12>>2]&127](d,8192,e)|0)){g=b;break}e=f[a>>2]|0;g=e+12|0;h=f[g>>2]|0;if((h|0)==(f[e+16>>2]|0))bc[f[(f[e>>2]|0)+40>>2]&511](e)|0;else f[g>>2]=h+4}b=f[a>>2]|0;do if(b){e=f[b+12>>2]|0;if((e|0)==(f[b+16>>2]|0))b=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else b=Bbb(f[e>>2]|0)|0;if(T5a(b)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(g){b=f[g+12>>2]|0;if((b|0)==(f[g+16>>2]|0))b=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else b=Bbb(f[b>>2]|0)|0;if(!(T5a(b)|0)){if(!e)i=38}else i=36}else i=36;if((i|0)==36?e:0)i=38;if((i|0)==38)f[c>>2]=f[c>>2]|2;return}function no(a,b){a=a|0;b=b|0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{Ah(a,b);break}case 2:{Zr(a,b);break}case 3:{Tt(a,b);break}case 4:{LA(a,b);break}case 5:{pP(a,b);break}case 6:{a3(a,b);break}case 7:{a3(a,b);break}case 8:{dC(a,b);break}case 9:{s1(a,b);break}case 10:{nY(a,b);break}case 11:{s1(a,b);break}case 12:{nY(a,b);break}case 13:{uY(a,b);break}case 14:{RT(a,b);break}case 24:{FT(a,b);break}case 25:{_O(a,b);break}case 26:{oP(a,b);break}case 27:{PT(a,b);break}case 15:{s1(a,b);break}case 16:{nY(a,b);break}case 17:{PT(a,b);break}case 18:{KP(a,b);break}case 19:{xY(a,b);break}case 20:{CQ(a,b);break}case 21:{qE(a,b);break}case 22:{s1(a,b);break}case 23:{s1(a,b);break}default:hb()}while(0);return}function oo(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+64|0;j=n+40|0;k=n+12|0;l=n+24|0;m=n;a:do if((c-a|0)>2?(b[a>>0]|0)==116:0){e=b[a+1>>0]|0;switch(e<<24>>24){case 105:case 101:break;default:{c=a;break a}}g=a+2|0;if(e<<24>>24==101)c=Bc(g,c,d)|0;else c=Cc(g,c,d)|0;if((c|0)!=(g|0)?(i=d+4|0,h=f[i>>2]|0,(f[d>>2]|0)!=(h|0)):0){eY(m,h+-24|0);x=0;ja(101,m|0,0,123479)|0;h=x;x=0;do if(h&1)c=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}x=0;ia(215,l|0,123274)|0;h=x;x=0;if(h&1){c=Ia()|0;HTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}NY(j,k);tA((f[i>>2]|0)+-24|0,j);JJa(j);HTa(k);HTa(l);HTa(m);break a}while(0);HTa(m);Ua(c|0)}else c=a}else c=a;while(0);u=n;return c|0}function po(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+48|0;w=t+32|0;v=t+16|0;n=t;c=f[b+8>>2]|0;do if(sba(a,c)|0){s=b+12|0;if(!(f[s>>2]|0))Ca(106702,106510,239,106755);SN(w,a,c);x=0;va(160,v|0,a|0,f[s>>2]|0);e=x;x=0;if(e&1)c=Ia()|0;else{x=0;va(159,n|0,a|0,1);e=x;x=0;if(e&1)c=Ia()|0;else{f[b+4>>2]=1;c=a+44|0;d=f[c>>2]|0;x=0;e=ga(320,n|0)|0;y=x;x=0;if(((((((((!(y&1)?(x=0,g=ja(45,d|0,e|0,f[s>>2]|0)|0,y=x,x=0,!(y&1)):0)?(h=f[c>>2]|0,x=0,i=ga(320,w|0)|0,y=x,x=0,!(y&1)):0)?(j=f[c>>2]|0,x=0,k=ga(320,v|0)|0,y=x,x=0,!(y&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,m=ja(45,h|0,i|0,l|0)|0,y=x,x=0,!(y&1)):0)?(o=f[c>>2]|0,x=0,p=ga(320,n|0)|0,y=x,x=0,!(y&1)):0)?(x=0,q=ja(46,f[o>>2]|0,p|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,r=ka(21,d|0,g|0,m|0,q|0)|0,y=x,x=0,!(y&1)):0)?(f[s>>2]=r,x=0,va(161,a|0,b|0,w|0),y=x,x=0,!(y&1)):0){HCa(n);HCa(v);HCa(w);break}c=Ia()|0;HCa(n)}HCa(v)}HCa(w);Ua(c|0)}while(0);u=t;return}function qo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;i=m+36|0;k=m+24|0;l=m;j=b+16|0;c=f[j>>2]|0;do if(c|0){h=b+12|0;if(GZ(f[h>>2]|0,c)|0){l=f[a+36>>2]|0;Bbb(l)|0;U0a(i,l);lma(a,b);l=gNa(f[i>>2]|0,f[b+8>>2]|0)|0;l=Dpa(i,l,f[h>>2]|0)|0;XJa(l,f[b+4>>2]|0);BVa(f[a+16>>2]|0,l)|0;break}g=o$a(f[h>>2]|0)|0;c=o$a(f[j>>2]|0)|0;f[i>>2]=a;d=(g|0)==0;e=(c|0)!=0;if(d|e)if(d&e)d=SO(i,c,h)|0;else d=g;else{d=g;c=SO(i,g,j)|0}do if(((c|0)!=0&(d|0)!=0?!(Iab(f[d+8>>2]|0)|0):0)?!(Iab(f[c+8>>2]|0)|0):0){MUa(l,d);MUa(l+12|0,c);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;ua(2922,k|0,2);j=x;x=0;if(j&1){m=Ia()|0;uSa(k);Ua(m|0)}u1(k,l,l+24|0);x=0;va(171,a|0,k|0,b|0);l=x;x=0;if(l&1){m=Ia()|0;uSa(k);Ua(m|0)}else{uSa(k);break}}while(0)}while(0);u=m;return}function ro(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+48|0;w=t+32|0;v=t+16|0;n=t;c=f[b+12>>2]|0;do if(sba(a,c)|0){s=b+16|0;if(!(f[s>>2]|0))Ca(106702,106510,239,106755);SN(w,a,c);x=0;va(160,v|0,a|0,f[s>>2]|0);e=x;x=0;if(e&1)c=Ia()|0;else{x=0;va(159,n|0,a|0,1);e=x;x=0;if(e&1)c=Ia()|0;else{f[b+4>>2]=1;c=a+44|0;d=f[c>>2]|0;x=0;e=ga(320,n|0)|0;y=x;x=0;if(((((((((!(y&1)?(x=0,g=ja(45,d|0,e|0,f[s>>2]|0)|0,y=x,x=0,!(y&1)):0)?(h=f[c>>2]|0,x=0,i=ga(320,w|0)|0,y=x,x=0,!(y&1)):0)?(j=f[c>>2]|0,x=0,k=ga(320,v|0)|0,y=x,x=0,!(y&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,m=ja(45,h|0,i|0,l|0)|0,y=x,x=0,!(y&1)):0)?(o=f[c>>2]|0,x=0,p=ga(320,n|0)|0,y=x,x=0,!(y&1)):0)?(x=0,q=ja(46,f[o>>2]|0,p|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,r=ka(21,d|0,g|0,m|0,q|0)|0,y=x,x=0,!(y&1)):0)?(f[s>>2]=r,x=0,va(161,a|0,b|0,w|0),y=x,x=0,!(y&1)):0){HCa(n);HCa(v);HCa(w);break}c=Ia()|0;HCa(n)}HCa(v)}HCa(w);Ua(c|0)}while(0);u=t;return}function so(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;i=a+4|0;c=f[i>>2]|0;j=a+100|0;if(c>>>0<(f[j>>2]|0)>>>0){f[i>>2]=c+1;d=h[c>>0]|0}else d=cF(a)|0;switch(d|0){case 43:case 45:{e=(d|0)==45&1;c=f[i>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[i>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0;d=c+-48|0;if((b|0)!=0&d>>>0>9)if(!(f[j>>2]|0)){d=-2147483648;c=0}else{f[i>>2]=(f[i>>2]|0)+-1;k=15}else k=12;break}default:{e=0;c=d;d=d+-48|0;k=12}}do if((k|0)==12){if(d>>>0>9)if(!(f[j>>2]|0)){d=-2147483648;c=0;break}else{k=15;break}g=0;while(1){g=c+-48+(g*10|0)|0;c=f[i>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[i>>2]=c+1;d=h[c>>0]|0}else d=cF(a)|0;b=(d+-48|0)>>>0<10;if(!(b&(g|0)<214748364))break;else c=d}c=((g|0)<0)<<31>>31;if(b){do{l=BBa(g|0,c|0,10,0)|0;b=I;d=wOa(d|0,((d|0)<0)<<31>>31|0,-48,-1)|0;g=wOa(d|0,I|0,l|0,b|0)|0;c=I;d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[i>>2]=d+1;d=h[d>>0]|0}else d=cF(a)|0;b=(d+-48|0)>>>0<10}while(b&((c|0)<21474836|(c|0)==21474836&g>>>0<2061584302));if(b){do{d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[i>>2]=d+1;d=h[d>>0]|0}else d=cF(a)|0}while((d+-48|0)>>>0<10);b=g}else b=g}else b=g;if(f[j>>2]|0)f[i>>2]=(f[i>>2]|0)+-1;j=(e|0)==0;l=NRa(0,0,b|0,c|0)|0;d=j?c:I;c=j?b:l}while(0);if((k|0)==15){f[i>>2]=(f[i>>2]|0)+-1;d=-2147483648;c=0}I=d;return c|0}function to(){z6a();q6a();f6a();d6a();b6a();_5a();R5a();P5a();N5a();L5a();J5a();H5a();F5a();D5a();B5a();z5a();x5a();v5a();t5a();r5a();p5a();n5a();l5a();j5a();h5a();f5a();d5a();b5a();$4a();Z4a();X4a();V4a();T4a();R4a();P4a();N4a();L4a();J4a();H4a();F4a();D4a();B4a();z4a();x4a();v4a();u4a();s4a();q4a();o4a();m4a();k4a();c4a();a4a();_3a();Y3a();W3a();U3a();S3a();Q3a();O3a();M3a();K3a();I3a();G3a();E3a();C3a();A3a();y3a();w3a();u3a();s3a();q3a();o3a();m3a();k3a();i3a();g3a();e3a();c3a();a3a();_2a();Y2a();return}function uo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=yCa(134176,111056)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(h);Wq(g,e)|0;du(g)|0;break}j=Ia()|0;JCa(h);Ua(j|0)}while(0);g=f[c+8>>2]|0;j=(f[g+4>>2]|0)==5;Tpa(a,g);if(j)CM(a);else{d=$O(f[a+36>>2]|0,3,c)|0;f[h>>2]=d;e=a+4|0;g=f[e>>2]|0;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else IL(a,h);E1a(h,f[33015]|0);d=a+60|0;e=f[d>>2]|0;if(e>>>0<(f[a+64>>2]|0)>>>0){f[e>>2]=f[h>>2];f[d>>2]=(f[d>>2]|0)+4}else IL(a+56|0,h);gv(a,f[c+12>>2]|0);if(f[c+16>>2]|0)Dy(a,c);LB(a,c)}u=i;return}function vo(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0;a:do if((a|0)==(h|0))if(b[c>>0]|0){b[c>>0]=0;d=f[g>>2]|0;f[g>>2]=d+1;b[d>>0]=46;g=b[j+11>>0]|0;if(((g<<24>>24<0?f[j+4>>2]|0:g&255)|0)!=0?(o=f[l>>2]|0,(o-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;o=0}else o=0}else o=-1;else{if((a|0)==(i|0)?(i=b[j+11>>0]|0,(i<<24>>24<0?f[j+4>>2]|0:i&255)|0):0){if(!(b[c>>0]|0)){o=-1;break}o=f[l>>2]|0;if((o-k|0)>=160){o=0;break}k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;f[m>>2]=0;o=0;break}i=n+128|0;h=0;while(1){o=n+(h<<2)|0;if((h|0)==32){o=i;break}if((f[o>>2]|0)==(a|0))break;else h=h+1|0}h=o-n|0;if((h|0)<=124){i=b[31216+(h>>2)>>0]|0;n=h+-88|0;switch(n>>>2|n<<30|0){case 2:case 3:{o=f[g>>2]|0;if((o|0)!=(e|0)?(b[o+-1>>0]&95)!=(b[d>>0]&127):0){o=-1;break a}f[g>>2]=o+1;b[o>>0]=i;o=0;break a}case 1:case 0:{b[d>>0]=80;break}default:{o=i&95;if((((o|0)==(b[d>>0]|0)?(b[d>>0]=o|128,b[c>>0]|0):0)?(b[c>>0]=0,d=b[j+11>>0]|0,(d<<24>>24<0?f[j+4>>2]|0:d&255)|0):0)?(p=f[l>>2]|0,(p-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=p+4;f[p>>2]=k}}}l=f[g>>2]|0;f[g>>2]=l+1;b[l>>0]=i;if((h|0)>84)o=0;else{f[m>>2]=(f[m>>2]|0)+1;o=0}}else o=-1}while(0);return o|0}function wo(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;k=p+20|0;g=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;h=a+64|0;if(b[(f[h>>2]|0)+60>>0]|0){do if(b[a+72>>0]|0){c=yCa(134176,87809)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(k);Wq(c,e)|0;du(c)|0;break}p=Ia()|0;JCa(k);Ua(p|0)}while(0);i=A$(a,9)|0;j=a+68|0;d=f[j>>2]|0;e=f[h>>2]|0;f4a(g,(f[e+80>>2]|0)-(f[e+76>>2]|0)>>4);Yr(d,f[g>>2]|0)|0;d=f[h>>2]|0;e=f[d+80>>2]|0;d=f[d+76>>2]|0;while(1){if((d|0)==(e|0))break;h=f[j>>2]|0;f4a(l,0);Yr(h,f[l>>2]|0)|0;U7(a,f[d>>2]|0);Ev(f[j>>2]|0,11)|0;h=f[j>>2]|0;c=d+4|0;g=d+8|0;f4a(m,(f[g>>2]|0)-(f[c>>2]|0)>>2);Yr(h,f[m>>2]|0)|0;g=f[g>>2]|0;c=f[c>>2]|0;while(1){if((c|0)==(g|0))break;h=f[j>>2]|0;f[o>>2]=f[c>>2];f[k>>2]=f[o>>2];f4a(n,V1(a,k)|0);Yr(h,f[n>>2]|0)|0;c=c+4|0}d=d+16|0}VA(a,i)}u=p;return}function xo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;d=n+32|0;g=n+80|0;c=n+72|0;h=n+76|0;m=n+60|0;i=n+48|0;j=n+16|0;k=n;e=f[a+36>>2]|0;Bbb(e)|0;U0a(g,e);tab(c);e=b+4|0;switch(f[e>>2]|0){case 1:{l=f[33174]|0;f[c>>2]=l;c=l;l=6;break}case 2:break;case 3:{l=f[33172]|0;f[c>>2]=l;c=l;l=6;break}case 4:{l=f[33171]|0;f[c>>2]=l;c=l;l=6;break}default:hb()}do if((l|0)==6){f[h>>2]=c;c=a+44|0;l=f[c>>2]|0;f[c>>2]=l+1;m$a(j,l);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];l=a0(g,d)|0;f[i>>2]=l;m$a(k,f[b+8>>2]|0);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];l=a0(g,d)|0;f[i+4>>2]=l;f[i+8>>2]=b;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;x=0;ua(168,m|0,3);l=x;x=0;if(l&1){n=Ia()|0;uSa(m);Ua(n|0)}mda(m,i,i+12|0);c=f[e>>2]|0;x=0;f[d>>2]=f[h>>2];c=ka(10,g|0,d|0,m|0,c|0)|0;l=x;x=0;if(l&1){n=Ia()|0;uSa(m);Ua(n|0)}else{BVa(f[a+16>>2]|0,c)|0;uSa(m);break}}while(0);u=n;return}function yo(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;m=n+40|0;j=n+32|0;k=n;l=n+64|0;a:do if((c-a|0)>>>0>16){e=0;c=j;while(1){g=b[a+e>>0]|0;h=g<<24>>24;if((e|0)==16){i=6;break}if(!(k1a(h)|0))break;g=b[a+(e|1)>>0]|0;b[c>>0]=(((h+-48|0)>>>0<10?0:9)+h<<4)+g+((g+-48|0)>>>0<10?208:169);e=e+2|0;c=c+1|0}do if((i|0)==6){if(g<<24>>24==69){b:do if((c|0)!=(j|0)){e=j;while(1){c=c+-1|0;if(e>>>0>=c>>>0)break b;i=b[e>>0]|0;b[e>>0]=b[c>>0]|0;b[c>>0]=i;e=e+1|0}}while(0);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;f[k+24>>2]=0;f[k+28>>2]=0;p[m>>3]=+p[j>>3];c=LFa(k,32,124585,m)|0;if(c>>>0>31)break;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;nW(l,k,c);NY(m,l);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,m|0);d=x;x=0;if(d&1){n=Ia()|0;JJa(m);HTa(l);Ua(n|0)}}else{yY(e,m);f[c>>2]=(f[c>>2]|0)+24}JJa(m);HTa(l);a=a+17|0}break a}while(0)}while(0);u=n;return a|0}function zo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+96|0;g=i+64|0;j=i+80|0;d=i+40|0;e=i+16|0;h=i;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;wa(77,d|0,b|0,c+8|0,j|0);k=x;x=0;a:do if(k&1)d=Ia()|0;else{b:do if(D0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else{x=0;va(93,e|0,b|0,f[c+28>>2]|0);k=x;x=0;c:do if(k&1)d=Ia()|0;else{do if(D0a(e)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}else{x=0;d=ga(225,e|0)|0;k=x;x=0;if(!(k&1)?(k=f[b+4>>2]|0,b=f[k+36>>2]|0,e=f[(f[b>>2]|0)+12>>2]|0,c=f[c+4>>2]|0,k=Bbb(k)|0,x=0,ya(e|0,h|0,b|0,d|0,j|0,c|0,k|0),k=x,x=0,!(k&1)):0){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];rAa(a,g);break}d=Ia()|0;break c}while(0);break b}while(0);break a}while(0);uSa(j);u=i;return}while(0);uSa(j);Ua(d|0)}function Ao(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;p=q;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}f[j>>2]=h;f[g>>2]=d;n=i;o=a+8|0;while(1){if((h|0)==(i|0)|(d|0)==(e|0)){k=33;break}l=c;a=f[l+4>>2]|0;m=p;f[m>>2]=f[l>>2];f[m+4>>2]=a;m=k;a=kRa(f[o>>2]|0)|0;l=nt(h,g,m-d|0,n-h>>2,c)|0;if(a|0)kRa(a)|0;if((l|0)==-1){k=10;break}h=(f[j>>2]|0)+(l<<2)|0;f[j>>2]=h;if((h|0)==(i|0)){k=30;break}d=f[g>>2]|0;if((k|0)==(e|0))k=e;else{k=kRa(f[o>>2]|0)|0;d=ot(h,d,1,c)|0;if(k|0)kRa(k)|0;if(d|0){d=2;k=29;break}f[j>>2]=(f[j>>2]|0)+4;d=(f[g>>2]|0)+1|0;f[g>>2]=d;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}h=f[j>>2]|0}}do if((k|0)==10){a:while(1){f[j>>2]=h;if((d|0)==(f[g>>2]|0)){k=19;break}k=kRa(f[o>>2]|0)|0;h=ot(h,d,m-d|0,p)|0;if(k|0)kRa(k)|0;switch(h|0){case -1:{k=15;break a}case -2:{k=16;break a}case 0:{h=1;break}default:{}}d=d+h|0;h=(f[j>>2]|0)+4|0}if((k|0)==15){f[g>>2]=d;d=2;k=29;break}else if((k|0)==16){f[g>>2]=d;d=1;k=29;break}else if((k|0)==19){f[g>>2]=d;d=(d|0)!=(e|0)&1;k=29;break}}else if((k|0)==30){d=f[g>>2]|0;k=33}while(0);if((k|0)!=29)if((k|0)==33)d=(d|0)!=(e|0)&1;u=q;return d|0}function Bo(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;h=s;q=b+8|0;f[h>>2]=f[q>>2];h=HH(h,4)|0;i=b+4|0;f[i>>2]=h;c=a+4|0;g=f[c>>2]|0;r=a+12|0;d=+(((f[r>>2]|0)+1|0)>>>0);e=+n[a+16>>2];if((g|0)==0|e*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;h=~~+W(+(d/e))>>>0;mL(a,g>>>0>>0?h:g);g=f[c>>2]|0;h=f[i>>2]|0}o=g+-1|0;p=(o&g|0)==0;if(!p)if(h>>>0>>0)m=h;else m=(h>>>0)%(g>>>0)|0;else m=o&h;c=f[(f[a>>2]|0)+(m<<2)>>2]|0;if(!c){c=a+8|0;f[b>>2]=f[c>>2];f[c>>2]=b;f[(f[a>>2]|0)+(m<<2)>>2]=c;c=f[b>>2]|0;if(c|0){c=f[c+4>>2]|0;if(!p){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&o;f[(f[a>>2]|0)+(c<<2)>>2]=b}}else{k=0;l=c;while(1){c=f[l>>2]|0;if(!c){c=0;break}i=f[c+4>>2]|0;if(!p)if(i>>>0>>0)j=i;else j=(i>>>0)%(g>>>0)|0;else j=i&o;if((j|0)!=(m|0))break;if((i|0)==(h|0))i=(f[c+8>>2]|0)==(f[q>>2]|0);else i=0;if(i|k^1){k=k|i;l=c}else break}f[b>>2]=c;f[l>>2]=b;c=f[b>>2]|0;if(c|0){c=f[c+4>>2]|0;if(!p){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&o;if((c|0)!=(m|0))f[(f[a>>2]|0)+(c<<2)>>2]=b}}f[r>>2]=(f[r>>2]|0)+1;u=s;return}function Co(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e;a:do switch(b[a>>0]|0){case 105:switch(b[a+1>>0]|0){case 51:{if((b[a+2>>0]|0)!=50){h=16;break a}if(d){a=1;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a&1;h=23;break a}else break a}case 54:{if((b[a+2>>0]|0)!=52){h=16;break a}if(d){a=2;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a?2:0;h=23;break a}else break a}default:{h=16;break a}}case 102:switch(b[a+1>>0]|0){case 51:{if((b[a+2>>0]|0)!=50){h=16;break a}if(d){a=3;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a?3:0;h=23;break a}else break a}case 54:{if((b[a+2>>0]|0)!=52){h=16;break a}if(d){a=4;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a?4:0;h=23;break a}else break a}default:{h=16;break a}}default:h=16}while(0);if((h|0)==16?c:0){a=0;h=23}if((h|0)==23){u=e;return a|0}c=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=h7a(93647)|0;x=0;va(87,g|0,93647,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,c|0,g|0);e=x;x=0;if(e&1)d=1;else{x=0;va(98,c|0,32200,457);x=0;d=0}a=Ia()|0;HTa(g);if(d)h=22}else{a=Ia()|0;h=22}if((h|0)==22)La(c|0);Ua(a|0);return 0}function Do(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o+12|0;i=o+8|0;m=o+4|0;n=o;j=c+8|0;k=c+12|0;e=f[k>>2]|0;d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;dsa(a,o2a(f[d>>2]|0)|0,c,82284);d=d+4|0}e=f[c+24>>2]|0;d=f[c+20>>2]|0;while(1){if((d|0)==(e|0))break;dsa(a,o2a(f[d>>2]|0)|0,c,82316);d=d+4|0}g=c+36|0;d=f[g>>2]|0;e=f[d+4>>2]|0;if((e|0)!=5)Oga(a,f[c+4>>2]|0,e,d,82346);d=a+68|0;e=f[d>>2]|0;if((e|0)!=5)Oga(a,f[c+4>>2]|0,e,f[g>>2]|0,82397);Joa(a,(f[a+60>>2]|0)==0,f[g>>2]|0,82449)|0;f[d>>2]=5;bZ(a+72|0);if(b[(f[a+44>>2]|0)+1>>0]|0?(h=f[c+32>>2]|0,Iab(h)|0):0){d=Bbb(f[a+36>>2]|0)|0;f[i>>2]=h;f[l>>2]=f[i>>2];h=KI(d,l)|0;i=f[h+12>>2]|0;d=f[h+8>>2]|0;e=f[j>>2]|0;g=i;a:do if((i-d|0)==((f[k>>2]|0)-e|0))while(1){if((d|0)==(g|0)){d=1;break a}if((f[d>>2]|0)!=(f[e>>2]|0)){d=0;break a}e=e+4|0;d=d+4|0}else d=0;while(0);f[m>>2]=f[c>>2];f[l>>2]=f[m>>2];W2(a,d,l,82484);m=(f[h+4>>2]|0)==(f[c+4>>2]|0);f[n>>2]=f[c>>2];f[l>>2]=f[n>>2];W2(a,m,l,82529)}u=o;return}function Eo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;d=n+32|0;e=n+80|0;c=n+72|0;g=n+76|0;m=n+60|0;h=n+48|0;i=n+16|0;j=n;l=f[a+36>>2]|0;Bbb(l)|0;U0a(e,l);tab(c);l=b+12|0;switch(f[(f[l>>2]|0)+4>>2]|0){case 1:{k=f[33170]|0;f[c>>2]=k;c=k;k=6;break}case 5:case 2:break;case 3:{k=f[33168]|0;f[c>>2]=k;c=k;k=6;break}case 4:{k=f[33167]|0;f[c>>2]=k;c=k;k=6;break}default:hb()}do if((k|0)==6){f[g>>2]=c;a=a+44|0;k=f[a>>2]|0;f[a>>2]=k+1;m$a(i,k);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];k=a0(e,d)|0;f[h>>2]=k;m$a(j,f[b+8>>2]|0);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];k=a0(e,d)|0;f[h+4>>2]=k;f[h+8>>2]=f[l>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;x=0;ua(168,m|0,3);k=x;x=0;if(k&1){n=Ia()|0;uSa(m);Ua(n|0)}mda(m,h,h+12|0);c=f[(f[l>>2]|0)+4>>2]|0;x=0;f[d>>2]=f[g>>2];c=ka(10,e|0,d|0,m|0,c|0)|0;k=x;x=0;if(k&1){n=Ia()|0;uSa(m);Ua(n|0)}else{f[l>>2]=c;uSa(m);break}}while(0);u=n;return}function Fo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=u;u=u+96|0;g=e+24|0;i=e+76|0;h=e;d=e+64|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,a,h7a(a)|0);if((LC(132700,g)|0)==132704){HTa(g);f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,b,h7a(b)|0);x=0;ua(290,h|0,c|0);c=x;x=0;if(c&1)a=Ia()|0;else{x=0;va(100,g|0,i|0,h|0);c=x;x=0;if(c&1)a=Ia()|0;else{f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=h7a(a)|0;x=0;va(87,d|0,a|0,c|0);c=x;x=0;do if(!(c&1)){x=0;a=ga(255,d|0)|0;c=x;x=0;if(c&1){a=Ia()|0;HTa(d);break}else{CP(a,g)|0;HTa(d);xRa(g);sta(h);HTa(i);u=e;return}}else a=Ia()|0;while(0);xRa(g)}sta(h)}HTa(i)}else{x=0;wa(71,116459,80302,42,116499);x=0;a=Ia()|0;HTa(g)}Ua(a|0)}function Go(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;l=a+20|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[a+36>>2]=1065353216;g=b+12|0;h=b+16|0;j=a+12|0;k=a+32|0;e=0;a:while(1){c=f[g>>2]|0;if(e>>>0>=(f[h>>2]|0)-c>>2>>>0){i=3;break}c=f[c+(e<<2)>>2]|0;switch(f[c+12>>2]|0){case 0:{d=f[j>>2]|0;x=0;c=ia(132,a|0,c|0)|0;i=x;x=0;if(i&1){i=7;break a}f[c>>2]=d;break}case 3:{d=f[k>>2]|0;x=0;c=ia(132,l|0,c|0)|0;i=x;x=0;if(i&1){i=10;break a}f[c>>2]=d;break}default:{}}e=e+1|0}do if((i|0)==3){e=b+36|0;g=b+40|0;d=0;while(1){c=f[e>>2]|0;if(d>>>0>=(f[g>>2]|0)-c>>2>>>0)break;h=f[j>>2]|0;x=0;c=ia(132,a|0,f[c+(d<<2)>>2]|0)|0;m=x;x=0;if(m&1){i=16;break}f[c>>2]=h;d=d+1|0}if((i|0)==16){c=Ia()|0;break}h=b+48|0;e=b+52|0;d=0;while(1){c=f[h>>2]|0;if(d>>>0>=(f[e>>2]|0)-c>>2>>>0){i=18;break}g=f[k>>2]|0;x=0;c=ia(132,l|0,f[c+(d<<2)>>2]|0)|0;m=x;x=0;if(m&1){i=21;break}f[c>>2]=g;d=d+1|0}if((i|0)==18)return;else if((i|0)==21){c=Ia()|0;break}}else if((i|0)==7)c=Ia()|0;else if((i|0)==10)c=Ia()|0;while(0);NQa(l);NQa(a);Ua(c|0)}function Ho(a){a=a|0;var b=0,c=0,d=0,e=0,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=u;u=u+80|0;k=r+64|0;q=r+48|0;l=r+44|0;m=r+40|0;p=r;n=r+24|0;o=f[a+4>>2]|0;j=f[a>>2]|0;c=j+4|0;b=f[c>>2]|0;do if((b|0)!=(f[j>>2]|0)){c=KWa(gV()|0)|0;f[q>>2]=0;d=q+4|0;f[d>>2]=0;e=q+8|0;f[e>>2]=0;f[l>>2]=0;g=f[o>>2]|0;f[m>>2]=(f[g+40>>2]|0)-(f[g+36>>2]|0)>>2;g=n+4|0;h=n+8|0;i=n+12|0;b=0;while(1){if(b>>>0>=c>>>0){c=4;break}f[n>>2]=l;f[g>>2]=m;f[h>>2]=o;f[i>>2]=f[a>>2];x=0;f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];f[k+12>>2]=f[n+12>>2];ua(1295,p|0,k|0);j=x;x=0;if(j&1){c=10;break}j=f[d>>2]|0;if(j>>>0>=(f[e>>2]|0)>>>0){x=0;ua(1296,q|0,p|0);j=x;x=0;if(j&1){c=11;break}}else{jW(j,p);f[d>>2]=(f[d>>2]|0)+24}sta(p);b=b+1|0}if((c|0)==4){x=0;b=fa(65)|0;p=x;x=0;if(!(p&1)?(x=0,ua(1297,b|0,q|0),p=x,x=0,!(p&1)):0){L9(q);b=f[a>>2]|0;c=b+4|0;b=f[b>>2]|0;break}b=Ia()|0}else if((c|0)==10){b=Ia()|0;c=12}else if((c|0)==11){b=Ia()|0;sta(p);c=12}L9(q);Ua(b|0)}while(0);f[c>>2]=b;u=r;return}function Io(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;i=l+24|0;j=l+12|0;k=l;h=Bc(a,c,d)|0;a:do if((h|0)!=(a|0)?(g=d+4|0,e=f[g>>2]|0,(f[d>>2]|0)!=(e|0)):0){eY(k,e+-24|0);x=0;ja(101,k|0,0,123547)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,j|0,123274)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){T0a(f[e>>2]|0,0);f[a+-20>>2]=0;a=e}else{T0a(e,0);b[c>>0]=0;a=e}wv(e);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}HTa(i);HTa(j);HTa(k);a=h;break a}while(0);HTa(k);Ua(a|0)}while(0);u=l;return a|0}function Jo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;h=l+48|0;i=l+32|0;j=l+16|0;k=l;a:do switch(f[b>>2]|0){case 3:{g=+ONa(b);e=+ONa(c);if(g==0.0&g==e){k=(D$a(g)|0)<0;CAa(a,k?g:e);break a}d=e>>0>2139095040;c=((D$a(e)|0)&2147483647)>>>0>2139095040;if(!(c|(b|((D$a(d)|0)&2147483647)>>>0>2139095040))){CAa(a,d);break a}if(b|c){CAa(j,b?g:e);qHa(i,j);m$a(k,12582912);taa(h,i,k);LHa(a,h);break a}else{m$a(h,2143289344);LHa(a,h);break a}}case 4:{g=+NNa(b);e=+NNa(c);if(g==0.0&g==e){qRa(g)|0;kqa(a,(I|0)<0?g:e);break a}d=e>>0>2146435072|(c|0)==2146435072&b>>>0>0;c=qRa(e)|0;m=I&2147483647;c=m>>>0>2146435072|(m|0)==2146435072&c>>>0>0;m=qRa(d)|0;n=I&2147483647;if(!(c|(b|(n>>>0>2146435072|(n|0)==2146435072&m>>>0>0)))){kqa(a,d);break a}if(b|c){kqa(j,b?g:e);n=j+8|0;XFa(i,f[j>>2]|0,f[n>>2]|0,f[n+4>>2]|0);SSa(k,0,524288);taa(h,i,k);n=h+8|0;pGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}else{SSa(h,0,2146959360);n=h+8|0;pGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}}default:hb()}while(0);u=l;return}function Ko(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;h=l+48|0;i=l+32|0;j=l+16|0;k=l;a:do switch(f[b>>2]|0){case 3:{g=+ONa(b);e=+ONa(c);if(g==0.0&g==e){k=(D$a(g)|0)<0;CAa(a,k?e:g);break a}d=g>>0>2139095040;c=((D$a(e)|0)&2147483647)>>>0>2139095040;if(!(c|(b|((D$a(d)|0)&2147483647)>>>0>2139095040))){CAa(a,d);break a}if(b|c){CAa(j,b?g:e);qHa(i,j);m$a(k,12582912);taa(h,i,k);LHa(a,h);break a}else{m$a(h,2143289344);LHa(a,h);break a}}case 4:{g=+NNa(b);e=+NNa(c);if(g==0.0&g==e){qRa(g)|0;kqa(a,(I|0)<0?e:g);break a}d=g>>0>2146435072|(c|0)==2146435072&b>>>0>0;c=qRa(e)|0;m=I&2147483647;c=m>>>0>2146435072|(m|0)==2146435072&c>>>0>0;m=qRa(d)|0;n=I&2147483647;if(!(c|(b|(n>>>0>2146435072|(n|0)==2146435072&m>>>0>0)))){kqa(a,d);break a}if(b|c){kqa(j,b?g:e);n=j+8|0;XFa(i,f[j>>2]|0,f[n>>2]|0,f[n+4>>2]|0);SSa(k,0,524288);taa(h,i,k);n=h+8|0;pGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}else{SSa(h,0,2146959360);n=h+8|0;pGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}}default:hb()}while(0);u=l;return}function Lo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;d=h+24|0;i=h+12|0;j=h;g=mSa(f[a+4>>2]|0)|0;e=g+8|0;f[e>>2]=c;if((c|0)==3){E1a(d,jF(Or(b,1)|0)|0);f[g+12>>2]=f[d>>2]}else l7(a,b,XXa(b)|0,g);e=(f[e>>2]|0)==2;a=Bbb(f[g+20>>2]|0)|0;do if(e)if((a|0)==1)b=19;else{c=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;j=h7a(92627)|0;x=0;va(87,i|0,92627,j|0);j=x;x=0;if(!(j&1)){x=0;ua(261,c|0,i|0);j=x;x=0;if(j&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;HTa(i);if(!b){b=20;break}}else a=Ia()|0;La(c|0);b=20}else if(!a)b=19;else{c=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=h7a(92657)|0;x=0;va(87,j|0,92657,i|0);i=x;x=0;if(!(i&1)){x=0;ua(261,c|0,j|0);i=x;x=0;if(i&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;HTa(j);if(!b){b=20;break}}else a=Ia()|0;La(c|0);b=20}while(0);if((b|0)==19){m1(g);u=h;return g|0}else if((b|0)==20)Ua(a|0);return 0}function Mo(){var a=0,c=0;if((b[130912]|0)==0?PWa(130912)|0:0){c=129536;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=129824)}YEa(129536,120244)|0;YEa(129548,120252)|0;YEa(129560,120261)|0;YEa(129572,120267)|0;YEa(129584,120273)|0;YEa(129596,120277)|0;YEa(129608,120282)|0;YEa(129620,120287)|0;YEa(129632,120294)|0;YEa(129644,120304)|0;YEa(129656,120312)|0;YEa(129668,120321)|0;YEa(129680,120330)|0;YEa(129692,120334)|0;YEa(129704,120338)|0;YEa(129716,120342)|0;YEa(129728,120273)|0;YEa(129740,120346)|0;YEa(129752,120350)|0;YEa(129764,120354)|0;YEa(129776,120358)|0;YEa(129788,120362)|0;YEa(129800,120366)|0;YEa(129812,120370)|0;return}function No(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+96|0;c=i;d=b+12|0;e=g$a(f[d>>2]|0)|0;g=b+16|0;h=g$a(f[g>>2]|0)|0;a:do switch(f[b+8>>2]|0){case 0:{if(e|0?(ORa(e+8|0)|0)==0:0){BVa(f[a>>2]|0,f[g>>2]|0)|0;break a}if(h|0?(ORa(h+8|0)|0)==0:0)BVa(f[a>>2]|0,f[d>>2]|0)|0;break}case 1:{if(h|0?(ORa(h+8|0)|0)==0:0)BVa(f[a>>2]|0,f[d>>2]|0)|0;break}case 10:{if(!((e|0)!=0?!(ORa(e+8|0)|0):0)){if(!h)break a;if(Q4(h)|0)break a}fA(c,f[a+24>>2]|0,f[g>>2]|0);h=lza(c)|0;V7(c);if(!h)BVa(f[a>>2]|0,f[d>>2]|0)|0;break}case 2:{if((e|0?(ORa(e+8|0)|0)==0:0)?(fA(c,f[a+24>>2]|0,f[g>>2]|0),g=lza(c)|0,V7(c),!g):0){BVa(f[a>>2]|0,e)|0;break a}if((h|0?(ORa(h+8|0)|0)==0:0)?(fA(c,f[a+24>>2]|0,f[d>>2]|0),g=lza(c)|0,V7(c),!g):0)BVa(f[a>>2]|0,h)|0;break}default:{}}while(0);u=i;return}function Oo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;j=m+16|0;k=m+12|0;l=m;c=Ac(a,b)|0;f[j>>2]=c;i=b+36|0;b=f[i>>2]|0;if(b){c=f[b>>2]|0;f[k>>2]=c;b=f[a>>2]|0;d=b+132|0;e=a+64|0;if(!(Kz(e,k)|0)){g=b+136|0;h=((f[g>>2]|0)-(f[d>>2]|0)|0)/12|0;c=Bbb(c)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,c,h7a(c)|0);c=f[g>>2]|0;if(c>>>0>=(f[b+140>>2]|0)>>>0){x=0;ua(1876,d|0,l|0);g=x;x=0;if(g&1){m=Ia()|0;HTa(l);Ua(m|0)}}else{f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];c=0;while(1){if((c|0)==3)break;f[l+(c<<2)>>2]=0;c=c+1|0}f[g>>2]=(f[g>>2]|0)+12}HTa(l);l=im(e,k)|0;f[l>>2]=h}h=im(e,k)|0;h=f[h>>2]|0;l=f[i>>2]|0;k=f[l+4>>2]|0;l=f[l+8>>2]|0;c=Il((f[a+84>>2]|0)+68|0,j)|0;f[c>>2]=h;f[c+4>>2]=k;f[c+8>>2]=l;c=f[j>>2]|0}u=m;return c|0}function Po(a,c,e,g,h,i){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;var k=0,l=0,m=0;f[e>>2]=a;f[i>>2]=g;m=c;a=f[e>>2]|0;a:while(1){if(a>>>0>=c>>>0){a=0;break}g=d[a>>1]|0;l=g&65535;do if((g&65535)<128){a=f[i>>2]|0;if((h-a|0)<1){a=1;break a}f[i>>2]=a+1;b[a>>0]=g}else{if((g&65535)<2048){a=f[i>>2]|0;if((h-a|0)<2){a=1;break a}f[i>>2]=a+1;b[a>>0]=l>>>6|192;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l&63|128;break}if((g&65535)<55296){a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=l>>>12|224;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l>>>6&63|128;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l&63|128;break}if((g&65535)>=56320){if((g&65535)<57344){a=2;break a}a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=l>>>12|224;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l>>>6&63|128;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l&63|128;break}if((m-a|0)<4){a=1;break a}a=a+2|0;g=j[a>>1]|0;if((g&64512|0)!=56320){a=2;break a}if((h-(f[i>>2]|0)|0)<4){a=1;break a}k=l&960;if(((k<<10)+65536|0)>>>0>1114111){a=2;break a}f[e>>2]=a;a=(k>>>6)+1|0;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=a>>>2|240;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l>>>2&15|a<<4&48|128;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l<<4&48|g>>>6&15|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=g&63|128}while(0);a=(f[e>>2]|0)+2|0;f[e>>2]=a}return a|0}function Qo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;w=u;u=u+80|0;c=w+48|0;h=w+64|0;v=w+32|0;q=w+16|0;r=w;mD(h,a,1);s=a+44|0;t=f[s>>2]|0;m$a(v,0);x=0;f[c>>2]=f[v>>2];f[c+4>>2]=f[v+4>>2];f[c+8>>2]=f[v+8>>2];f[c+12>>2]=f[v+12>>2];v=ia(50,t|0,c|0)|0;y=x;x=0;if(((((((((!(y&1)?(x=0,d=pa(7,f[t>>2]|0,8,0,8,v|0,f[b+12>>2]|0,4)|0,y=x,x=0,!(y&1)):0)?(e=f[s>>2]|0,x=0,g=ga(320,h|0)|0,y=x,x=0,!(y&1)):0)?(i=f[s>>2]|0,m$a(q,0),x=0,f[c>>2]=f[q>>2],f[c+4>>2]=f[q+4>>2],f[c+8>>2]=f[q+8>>2],f[c+12>>2]=f[q+12>>2],j=ia(50,i|0,c|0)|0,y=x,x=0,!(y&1)):0)?(x=0,k=pa(10,f[i>>2]|0,4,1,4,4,j|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,l=ja(45,e|0,g|0,k|0)|0,y=x,x=0,!(y&1)):0)?(m=f[s>>2]|0,m$a(r,0),x=0,f[c>>2]=f[r>>2],f[c+4>>2]=f[r+4>>2],f[c+8>>2]=f[r+8>>2],f[c+12>>2]=f[r+12>>2],n=ia(50,m|0,c|0)|0,y=x,x=0,!(y&1)):0)?(x=0,o=pa(10,f[m>>2]|0,4,1,0,4,n|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,p=ka(27,t|0,d|0,l|0,o|0)|0,y=x,x=0,!(y&1)):0)?(x=0,va(161,a|0,p|0,h|0),y=x,x=0,!(y&1)):0){BVa(f[a+16>>2]|0,p)|0;HCa(h);u=w;return}y=Ia()|0;HCa(h);Ua(y|0)}function Ro(a,c,d,e,g,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;f[d>>2]=a;f[i>>2]=e;p=c;a:while(1){o=f[d>>2]|0;if(o>>>0>=c>>>0){a=0;break}if(e>>>0>=g>>>0){a=1;break}m=b[o>>0]|0;a=m&255;do if(m<<24>>24<=-1){if((m&255)<194){a=2;break a}if((m&255)<224){if((p-o|0)<2){a=1;break a}j=h[o+1>>0]|0;if((j&192|0)!=128){a=2;break a}a=j&63|a<<6&1984;j=2;break}if((m&255)<240){if((p-o|0)<3){a=1;break a}k=b[o+1>>0]|0;j=b[o+2>>0]|0;switch(m<<24>>24){case -32:{if((k&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((k&-32)<<24>>24!=-128){a=2;break a}break}default:if((k&-64)<<24>>24!=-128){a=2;break a}}j=j&255;if((j&192|0)!=128){a=2;break a}a=(k&63)<<6|a<<12&61440|j&63;j=3;break}if((m&255)>=245){a=2;break a}if((p-o|0)<4){a=1;break a}n=b[o+1>>0]|0;j=b[o+2>>0]|0;l=b[o+3>>0]|0;switch(m<<24>>24){case -16:{if((n+112&255)>=48){a=2;break a}break}case -12:{if((n&-16)<<24>>24!=-128){a=2;break a}break}default:if((n&-64)<<24>>24!=-128){a=2;break a}}k=j&255;if((k&192|0)!=128){a=2;break a}j=l&255;if((j&192|0)!=128){a=2;break a}a=(n&63)<<12|a<<18&1835008|k<<6&4032|j&63;if(a>>>0>1114111){a=2;break a}else j=4}else j=1;while(0);f[e>>2]=a;f[d>>2]=o+j;o=(f[i>>2]|0)+4|0;f[i>>2]=o;e=o}return a|0}function So(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;o=u;u=u+64|0;m=o+24|0;j=o+60|0;k=o;l=o+48|0;a:do if((c-a|0)>>>0>8){e=0;c=j;while(1){g=b[a+e>>0]|0;h=g<<24>>24;if((e|0)==8){i=6;break}if(!(k1a(h)|0))break;g=b[a+(e|1)>>0]|0;b[c>>0]=(((h+-48|0)>>>0<10?0:9)+h<<4)+g+((g+-48|0)>>>0<10?208:169);e=e+2|0;c=c+1|0}do if((i|0)==6){if(g<<24>>24==69){b:do if((c|0)!=(j|0)){e=j;while(1){c=c+-1|0;if(e>>>0>=c>>>0)break b;i=b[e>>0]|0;b[e>>0]=b[c>>0]|0;b[c>>0]=i;e=e+1|0}}while(0);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;p[m>>3]=+n[j>>2];c=LFa(k,24,124588,m)|0;if(c>>>0>23)break;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;nW(l,k,c);NY(m,l);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,m|0);d=x;x=0;if(d&1){o=Ia()|0;JJa(m);HTa(l);Ua(o|0)}}else{yY(e,m);f[c>>2]=(f[c>>2]|0)+24}JJa(m);HTa(l);a=a+9|0}break a}while(0)}while(0);u=o;return a|0}function To(){var a=0,c=0;if((b[130992]|0)==0?PWa(130992)|0:0){c=130288;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=130576)}XEa(130288,48248)|0;XEa(130300,48280)|0;XEa(130312,48316)|0;XEa(130324,48340)|0;XEa(130336,48364)|0;XEa(130348,48380)|0;XEa(130360,48400)|0;XEa(130372,48420)|0;XEa(130384,48448)|0;XEa(130396,48488)|0;XEa(130408,48520)|0;XEa(130420,48556)|0;XEa(130432,48592)|0;XEa(130444,48608)|0;XEa(130456,48624)|0;XEa(130468,48640)|0;XEa(130480,48364)|0;XEa(130492,48656)|0;XEa(130504,48672)|0;XEa(130516,48688)|0;XEa(130528,48704)|0;XEa(130540,48720)|0;XEa(130552,48736)|0;XEa(130564,48752)|0;return}function Uo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;k=q+36|0;h=q+32|0;l=q+24|0;j=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;do if(b[a+33>>0]|0){d=yCa(134176,110959)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,i=x,x=0,!(i&1)):0){JCa(k);Wq(d,g)|0;du(d)|0;break}q=Ia()|0;JCa(k);Ua(q|0)}while(0);if(uAa(c)|0){i=a+28|0;e=Ev(f[i>>2]|0,14)|0;g=c+8|0;f4a(h,Bbb(f[c+12>>2]|0)|0);Yr(e,f[h>>2]|0)|0;I$a(l,g);GUa(j,g);g=l+4|0;e=f[j>>2]|0;d=f[j+4>>2]|0;while(1){if(!(lTa(f[l>>2]|0,f[g>>2]|0,e,d)|0))break;h=LOa(l)|0;j=f[i>>2]|0;f[n>>2]=f[h>>2];f[k>>2]=f[n>>2];f4a(m,VZ(a,k)|0);Yr(j,f[m>>2]|0)|0;RYa(l)}n=f[i>>2]|0;f[p>>2]=f[c+24>>2];f[k>>2]=f[p>>2];f4a(o,VZ(a,k)|0);Yr(n,f[o>>2]|0)|0}u=q;return}function Vo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0;q=u;u=u+48|0;g=q+40|0;t=q+24|0;r=q+8|0;o=q;p=b+8|0;a:do if(sba(a,f[p>>2]|0)|0){mD(t,a,1);x=0;va(160,r|0,a|0,f[p>>2]|0);h=x;x=0;if(h&1)c=Ia()|0;else{h=a+44|0;c=f[h>>2]|0;x=0;d=ga(320,t|0)|0;e=x;x=0;do if(!(e&1)?(x=0,i=ja(45,c|0,d|0,f[p>>2]|0)|0,e=x,x=0,!(e&1)):0){c=f[h>>2]|0;E1a(o,f[33071]|0);d=f[h>>2]|0;x=0;e=ga(320,r|0)|0;v=x;x=0;if((((!(v&1)?(x=0,j=ja(46,f[d>>2]|0,e|0,1)|0,v=x,x=0,!(v&1)):0)?(x=0,f[g>>2]=f[o>>2],k=ja(47,c|0,g|0,j|0)|0,v=x,x=0,!(v&1)):0)?(l=f[h>>2]|0,x=0,m=ga(320,t|0)|0,v=x,x=0,!(v&1)):0)?(x=0,n=ja(46,f[l>>2]|0,m|0,1)|0,v=x,x=0,!(v&1)):0){f[p>>2]=n;x=0;c=ka(22,f[h>>2]|0,i|0,k|0,b|0)|0;v=x;x=0;if(v&1){c=Ia()|0;break}else{BVa(f[a+16>>2]|0,c)|0;HCa(r);HCa(t);break a}}c=Ia()|0}else s=14;while(0);if((s|0)==14)c=Ia()|0;HCa(r)}HCa(t);Ua(c|0)}while(0);u=q;return}function Wo(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;i=l+12|0;j=l;if((d+-1&255)>1)d=0;else{k=HSa(f[a+4>>2]|0)|0;switch(d<<24>>24){case 1:{e=1;break}case 2:{e=2;break}default:hb()}g=k+24|0;f[g>>2]=e;f[k+4>>2]=1;do if(b[a+12>>0]|0){d=yCa(134176,110732)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(d,h)|0;du(d)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);m=dk(a)|0;f[k+20>>2]=m;m=dk(a)|0;f[k+16>>2]=m;m=dk(a)|0;f[k+12>>2]=m;Kab(i);JF(a,i,k+8|0);m=Bbb(f[i>>2]|0)|0;do if((m|0)!=(Dxa(f[g>>2]|0)|0)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,96998,h7a(96998)|0);x=0;ua(1869,a|0,j|0);m=x;x=0;if(m&1){m=Ia()|0;HTa(j);Ua(m|0)}else{HTa(j);break}}while(0);Epa(k);f[c>>2]=k;d=1}u=l;return d|0}function Xo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;l=m;n=m+16|0;f[n>>2]=0;i=n+4|0;f[i>>2]=0;g=n+8|0;f[g>>2]=0;h=a+48|0;d=f[a+44>>2]|0;while(1){if((d|0)==(h|0)){d=3;break}o=d+16|0;c=d+32|0;e=(f[d+36>>2]|0)-(f[c>>2]|0)>>2;x=0;f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];e=ia(202,l|0,e|0)|0;o=x;x=0;if(o&1){d=11;break}if(e){x=0;c=ia(203,a|0,c|0)|0;o=x;x=0;if(o&1){d=12;break}f[l>>2]=c;e=f[i>>2]|0;if(e>>>0>=(f[g>>2]|0)>>>0){x=0;ua(1835,n|0,l|0);o=x;x=0;if(o&1){d=12;break}}else{f[e>>2]=c;f[i>>2]=(f[i>>2]|0)+4}}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}a:do if((d|0)==3){do if((f[n>>2]|0)!=(f[i>>2]|0)){c=f[a+36>>2]|0;Bbb(c)|0;U0a(l,c);x=0;c=ia(204,l|0,n|0)|0;o=x;x=0;if(!(o&1)?(j=b+36|0,x=0,k=ja(51,l|0,c|0,f[j>>2]|0)|0,o=x,x=0,!(o&1)):0){f[j>>2]=k;break}c=Ia()|0;break a}while(0);uSa(n);u=m;return}else if((d|0)==11)c=Ia()|0;else if((d|0)==12)c=Ia()|0;while(0);uSa(n);Ua(c|0)}function Yo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do switch(b-a>>2|0){case 1:case 0:{d=1;break}case 2:{d=b+-4|0;e=f[d>>2]|0;g=f[a>>2]|0;if(T4(f[f[c>>2]>>2]|0,f[c+4>>2]|0,e,g)|0){f[a>>2]=e;f[d>>2]=g;d=1}else d=1;break}case 3:{bA(a,a+4|0,b+-4|0,f[f[c>>2]>>2]|0,f[c+4>>2]|0)|0;d=1;break}case 4:{UA(a,a+4|0,a+8|0,b+-4|0,c)|0;d=1;break}case 5:{Gx(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;d=1;break}default:{e=a+8|0;m=c+4|0;bA(a,a+4|0,e,f[f[c>>2]>>2]|0,f[m>>2]|0)|0;l=a+12|0;d=0;while(1){if((l|0)==(b|0)){d=1;break a}k=f[l>>2]|0;h=f[e>>2]|0;j=f[m>>2]|0;i=f[f[c>>2]>>2]|0;if(T4(i,j,k,h)|0){g=l;while(1){f[g>>2]=h;if((e|0)==(a|0)){e=a;break}g=e+-4|0;h=f[g>>2]|0;if(!(T4(i,j,k,h)|0))break;else{n=e;e=g;g=n}}f[e>>2]=k;d=d+1|0;if((d|0)==8)break}e=l;l=l+4|0}d=(l+4|0)==(b|0)}}while(0);return d|0}function Zo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;o=r+16|0;p=r+8|0;l=r+4|0;m=r;g=a+52|0;if(b[g>>0]|0){e=a+48|0;d=f[e>>2]|0;if(c){f[e>>2]=-1;b[g>>0]=0}}else{d=f[a+44>>2]|0;d=(d|0)>1?d:1;n=a+32|0;e=0;while(1){if(e>>>0>=d>>>0){q=8;break}g=pV(f[n>>2]|0)|0;if((g|0)==-1){d=-1;break}b[o+e>>0]=g;e=e+1|0}if((q|0)==8){do if(!(b[a+53>>0]|0)){i=a+40|0;j=a+36|0;k=p+1|0;a:while(1){s=f[i>>2]|0;g=s;e=f[g>>2]|0;g=f[g+4>>2]|0;t=f[j>>2]|0;h=o+d|0;switch(lc[f[(f[t>>2]|0)+16>>2]&15](t,s,o,h,l,p,k,m)|0){case 3:{q=14;break a}case 2:{q=16;break a}case 1:break;default:break a}t=f[i>>2]|0;f[t>>2]=e;f[t+4>>2]=g;if((d|0)==8){q=16;break}e=pV(f[n>>2]|0)|0;if((e|0)==-1){q=16;break}b[h>>0]=e;d=d+1|0}if((q|0)==14)b[p>>0]=b[o>>0]|0;else if((q|0)==16){d=-1;break}q=18}else{b[p>>0]=b[o>>0]|0;q=18}while(0);b:do if((q|0)==18){if(c){d=X6a(b[p>>0]|0)|0;f[a+48>>2]=d;break}while(1){if((d|0)<=0)break;d=d+-1|0;t=X6a(b[o+d>>0]|0)|0;if((o0(t,f[n>>2]|0)|0)==-1){d=-1;break b}}d=X6a(b[p>>0]|0)|0}while(0)}}u=r;return d|0}function _o(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+80|0;d=h+48|0;e=h+24|0;g=h;Mu(d,b,f[c+8>>2]|0);if(!(D0a(d)|0)){Mu(e,b,f[c+12>>2]|0);if(!(D0a(e)|0)){Mu(g,b,f[c+16>>2]|0);if(D0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{g=(ORa(g)|0)==0;g=g?e:d;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=h;return}function $o(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;m=n+48|0;j=n+40|0;k=n;l=n+72|0;a:do if((c-a|0)>>>0>20){e=0;c=j;while(1){g=b[a+e>>0]|0;h=g<<24>>24;if((e|0)==20){i=6;break}if(!(k1a(h)|0))break;g=b[a+(e|1)>>0]|0;b[c>>0]=(((h+-48|0)>>>0<10?0:9)+h<<4)+g+((g+-48|0)>>>0<10?208:169);e=e+2|0;c=c+1|0}do if((i|0)==6){if(g<<24>>24==69){b:do if((c|0)!=(j|0)){e=j;while(1){c=c+-1|0;if(e>>>0>=c>>>0)break b;i=b[e>>0]|0;b[e>>0]=b[c>>0]|0;b[c>>0]=i;e=e+1|0}}while(0);c=k;e=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(e|0));p[m>>3]=+p[j>>3];c=LFa(k,40,124580,m)|0;if(c>>>0>39)break;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;nW(l,k,c);NY(m,l);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,m|0);d=x;x=0;if(d&1){n=Ia()|0;JJa(m);HTa(l);Ua(n|0)}}else{yY(e,m);f[c>>2]=(f[c>>2]|0)+24}JJa(m);HTa(l);a=a+21|0}break a}while(0)}while(0);u=n;return a|0}function ap(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;w=u;u=u+80|0;g=w+48|0;k=w+64|0;y=w+32|0;t=w+16|0;v=w;c=b+12|0;SN(k,a,f[c>>2]|0);d=a+44|0;e=f[d>>2]|0;m$a(y,0);x=0;f[g>>2]=f[y>>2];f[g+4>>2]=f[y+4>>2];f[g+8>>2]=f[y+8>>2];f[g+12>>2]=f[y+12>>2];b=ia(50,e|0,g|0)|0;y=x;x=0;if((((((((!(y&1)?(x=0,h=pa(7,f[e>>2]|0,4,0,4,b|0,f[c>>2]|0,1)|0,y=x,x=0,!(y&1)):0)?(i=f[d>>2]|0,m$a(t,0),x=0,f[g>>2]=f[t>>2],f[g+4>>2]=f[t+4>>2],f[g+8>>2]=f[t+8>>2],f[g+12>>2]=f[t+12>>2],j=ia(50,i|0,g|0)|0,y=x,x=0,!(y&1)):0)?(l=f[d>>2]|0,x=0,m=ga(320,k|0)|0,y=x,x=0,!(y&1)):0)?(x=0,n=ja(46,f[l>>2]|0,m|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,o=pa(7,f[i>>2]|0,4,4,4,j|0,n|0,1)|0,y=x,x=0,!(y&1)):0)?(p=f[d>>2]|0,m$a(v,0),x=0,f[g>>2]=f[v>>2],f[g+4>>2]=f[v+4>>2],f[g+8>>2]=f[v+8>>2],f[g+12>>2]=f[v+12>>2],q=ia(50,p|0,g|0)|0,y=x,x=0,!(y&1)):0)?(x=0,r=pa(10,f[p>>2]|0,8,1,0,8,q|0,4)|0,y=x,x=0,!(y&1)):0)?(x=0,s=ka(27,e|0,h|0,o|0,r|0)|0,y=x,x=0,!(y&1)):0){BVa(f[a+16>>2]|0,s)|0;HCa(k);u=w;return}y=Ia()|0;HCa(k);Ua(y|0)}function bp(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;h=g+12|0;i=g;d=0;e=0;a:while(1){c=Ns(a)|0;if((c|0)==-1){a=3;break}if((c+-65|0)>>>0<26|(c+-97|0)>>>0<6){a=24;break}b=c+-103|0;do if(b>>>0>=20){if((c|4|0)!=47&(c+-48|0)>>>0>9){a=12;break a}if((c|0)<=57)if((c|0)>47){b=c+-28|0;break}else{b=(c|0)==43?30:31;break}}while(0);d=b<>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;i=h7a(97764)|0;x=0;va(87,h|0,97764,i|0);i=x;x=0;if(!(i&1)){x=0;ua(1881,c|0,h|0);i=x;x=0;if(i&1)a=1;else{x=0;va(98,c|0,34672,495);x=0;a=0}b=Ia()|0;HTa(h);if(!a)break}else b=Ia()|0;La(c|0)}else if((a|0)==12){c=Ea(12)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=h7a(97800)|0;x=0;va(87,i|0,97800,h|0);h=x;x=0;if(!(h&1)){x=0;ua(1881,c|0,i|0);h=x;x=0;if(h&1)a=1;else{x=0;va(98,c|0,34672,495);x=0;a=0}b=Ia()|0;HTa(i);if(!a)break}else b=Ia()|0;La(c|0)}else if((a|0)==24){h=((c|0)<97?-65:-71)+c<>>1;u=g;return ((h&1|0)==0?i:0-i|0)|0}while(0);Ua(b|0);return 0}function cp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;i=m+40|0;j=m+12|0;k=m+24|0;l=m;a:do if((c-a|0)>3?(b[a>>0]|0)==68:0){switch(b[a+1>>0]|0){case 84:case 116:break;default:break a}n=a+2|0;g=Bc(n,c,d)|0;if((!((g|0)==(n|0)|(g|0)==(c|0))?(b[g>>0]|0)==69:0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){eY(l,e+-24|0);x=0;ja(101,l|0,0,124592)|0;n=x;x=0;do if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,k|0,123274)|0;n=x;x=0;if(n&1){a=Ia()|0;HTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}NY(i,j);tA((f[h>>2]|0)+-24|0,i);JJa(i);HTa(j);HTa(k);HTa(l);a=g+1|0;break a}while(0);HTa(l);Ua(a|0)}}while(0);u=m;return a|0}function dp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;d=l+16|0;e=l;g=l+32|0;h=f[a>>2]|0;i=Lxa(c)|0;j=Bbb(b)|0;if(((Cea(j,f[33289]|0)|0?(k=g0a(b,1)|0,FBa(f[k>>2]|0,132960)|0):0)?(k=g0a(b,3)|0,k=f[k>>2]|0,Bbb(k)|0,rab(f[k>>2]|0)|0):0)?(k=g0a(b,3)|0,(iaa(Bbb(f[k>>2]|0)|0)|0)==(i|0)):0)k=10;else k=5;do if((k|0)==5){if(((((c|0)==1?Cea(j,f[33289]|0)|0:0)?(c=g0a(b,1)|0,FBa(f[c>>2]|0,133016)|0):0)?(c=g0a(b,3)|0,c=f[c>>2]|0,Bbb(c)|0,rab(f[c>>2]|0)|0):0)?(c=g0a(b,3)|0,(iaa(Bbb(f[c>>2]|0)|0)|0)==0):0){k=10;break}if(rab(f[b>>2]|0)|0){m$a(e,(iaa(j)|0)<>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];b=a0(h+8|0,d)|0;break}f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,65431,h7a(65431)|0);x=0;ua(69,g|0,b|0);j=x;x=0;if(j&1){l=Ia()|0;HTa(g);Ua(l|0)}else{HTa(g);b=0;break}}while(0);if((k|0)==10){k=f[a+4>>2]|0;b=g0a(b,2)|0;b=L4(f[k+16>>2]|0,f[b>>2]|0)|0}u=l;return b|0}function ep(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121963);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=n8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)ubb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if(!(wXa(f[h>>2]|0,f[g+8>>2]|0)|0)){m=31;break}i=g}if((m|0)==31)m=0;f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)ubb(c);f[d>>2]=0}while(0);return}function fp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121963);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=n8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)ubb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if(!(x_a(f[h>>2]|0,f[g+8>>2]|0)|0)){m=31;break}i=g}if((m|0)==31)m=0;f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)ubb(c);f[d>>2]=0}while(0);return}function gp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;h=n;if(!(b[130784]|0))PWa(130784)|0;pSa(131964);if(!(b[130792]|0))PWa(130792)|0;e=f[32998]|0;do if(!e){x=0;ta(453,h|0);e=x;x=0;if(e&1){e=Ia()|0;break}e=f[h>>2]|0;f[h>>2]=0;g=f[32998]|0;f[32998]=e;if(!g)f[h>>2]=0;else{ubb(g);f[h>>2]=0;e=f[32998]|0}f[e>>2]=0;e=f[32998]|0;g=12}else g=12;while(0);a:do if((g|0)==12){do if((f[e>>2]|0)<=19){x=0;e=ia(84,134176,c|0)|0;c=x;x=0;if(((((!(c&1)?(x=0,i=ia(62,e|0,62543)|0,c=x,x=0,!(c&1)):0)?(j=f[a+32>>2]|0,Bbb(j)|0,x=0,j=ia(76,i|0,f[j>>2]|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,62558)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(76,k|0,f[d>>2]|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,62563)|0,l=x,x=0,!(l&1)):0){l=f[32998]|0;f[l>>2]=(f[l>>2]|0)+1;if((f[f[32998]>>2]|0)<=19)break;x=0;e=ia(62,134176,123276)|0;l=x;x=0;if((!(l&1)?(x=0,m=ia(77,e|0,f[f[32998]>>2]|0)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,62700)|0,m=x,x=0,!(m&1)):0)break}e=Ia()|0;break a}while(0);hJa(131964);u=n;return}while(0);hJa(131964);Ua(e|0)}function hp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121963);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=n8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)ubb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if(!($1a(f[h>>2]|0,f[g+8>>2]|0)|0)){m=31;break}i=g}if((m|0)==31)m=0;f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)ubb(c);f[d>>2]=0}while(0);return}function ip(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;f[a>>2]=b;break a}case 10:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=0;break a}case 12:{d=(f[c>>2]|0)+(8-1)&~(8-1);b=d;e=f[b>>2]|0;b=f[b+4>>2]|0;f[c>>2]=d+8;d=a;f[d>>2]=e;f[d+4>>2]=b;break a}case 13:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&65535;f[e+4>>2]=0;break a}case 15:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&255)<<24>>24;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&255;f[e+4>>2]=0;break a}case 17:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}case 18:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}default:break a}while(0);while(0);return}function jp(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+4|0;h=l;a:do if(!(f[d+4>>2]&1)){j=f[(f[a>>2]|0)+24>>2]|0;f[h>>2]=f[c>>2];f[k>>2]=f[h>>2];a=hc[j&31](a,k,d,e,g&1)|0}else{ZXa(k,d);x=0;a=ia(73,f[k>>2]|0,134896)|0;j=x;x=0;do if(!(j&1)){JCa(k);d=f[a>>2]|0;if(g)pc[f[d+24>>2]&4095](k,a);else pc[f[d+28>>2]&4095](k,a);i=k+11|0;a=b[i>>0]|0;d=f[k>>2]|0;j=k+4|0;g=a<<24>>24<0?d:k;while(1){h=a<<24>>24<0;if((g|0)==((h?d:k)+(h?f[j>>2]|0:a&255)|0)){d=9;break}a=b[g>>0]|0;d=f[c>>2]|0;if(d|0){e=d+24|0;h=f[e>>2]|0;if((h|0)==(f[d+28>>2]|0)){h=f[(f[d>>2]|0)+52>>2]|0;a=X6a(a)|0;x=0;a=ia(h|0,d|0,a|0)|0;h=x;x=0;if(h&1){d=18;break}}else{f[e>>2]=h+1;b[h>>0]=a;a=X6a(a)|0}if($1a(a,-1)|0)f[c>>2]=0}g=g+1|0;a=b[i>>0]|0;d=f[k>>2]|0}if((d|0)==9){a=f[c>>2]|0;HTa(k);break a}else if((d|0)==18){a=Ia()|0;HTa(k);break}}else{a=Ia()|0;JCa(k)}while(0);Ua(a|0)}while(0);u=l;return a|0}function kp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=e$a(b)|0;a:do if(!c){d=Y_a(b)|0;if(!d){c=o$a(b)|0;if(!c){c=S$a(b)|0;if(!c)break;if((f[c+4>>2]|0)!=1)break;d=c+12|0;e=kp(a,f[d>>2]|0)|0;f[d>>2]=e;d=c+16|0;a=kp(a,f[d>>2]|0)|0;f[d>>2]=a;return b|0}else{if((f[c+4>>2]|0)!=1)break;d=c+12|0;if(!(Bbb(f[c+16>>2]|0)|0))break;e=MCa(d)|0;a=kp(a,f[e>>2]|0)|0;e=MCa(d)|0;f[e>>2]=a;return b|0}}else{switch(f[d+8>>2]|0){case 8:{e=d+12|0;c=kp(a,f[e>>2]|0)|0;f[e>>2]=c;e=d+16|0;c=kp(a,f[e>>2]|0)|0;f[e>>2]=c;break}case 16:{c=g$a(f[d+16>>2]|0)|0;if(c|0?(ORa(c+8|0)|0)==0:0){b=f[d+12>>2]|0;break a}break}default:{}}c=EQ(d)|0;if(!c)break;b=xR(a,c,VHa(d)|0)|0;break}}else if(((f[c+8>>2]|0)==20?(d=e$a(f[c+12>>2]|0)|0,(d|0)!=0):0)?(f[d+8>>2]|0)==20:0)b=f[d+12>>2]|0;while(0);return b|0}function lp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;j=k+24|0;d=k;g=k+20|0;h=k+8|0;i=Rz(a)|0;f[g>>2]=i;f[j>>2]=f[g>>2];cUa(d,j,(b|0)!=0&(b|0)!=5&1);g=a+160|0;c=f[g>>2]|0;if(c>>>0<(f[a+164>>2]|0)>>>0){l=d;d=f[l+4>>2]|0;e=c;f[e>>2]=f[l>>2];f[e+4>>2]=d;f[g>>2]=(f[g>>2]|0)+8}else sF(a+156|0,d);e=a+188|0;l=a+192|0;d=(f[l>>2]|0)-(f[e>>2]|0)>>2;Cj(a);e=(f[l>>2]|0)-(f[e>>2]|0)>>2;do if(e>>>0>>0){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,97463,h7a(97463)|0);x=0;ua(1869,a|0,h|0);l=x;x=0;if(l&1){l=Ia()|0;HTa(h);Ua(l|0)}else{HTa(h);break}}while(0);f[g>>2]=(f[g>>2]|0)+-8;c=$Ra(f[a+4>>2]|0)|0;hr(a,c,d,e);f[c+8>>2]=i;XJa(c,b);e=c+8|0;d=a+168|0;if((AB(d,e)|0)==0?(tab(j),f[e>>2]=f[j>>2],(Bbb(f[c+16>>2]|0)|0)==1):0){c=JDa(c+12|0,0)|0;c=f[c>>2]|0}else Y4(d,e);u=k;return c|0}function mp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;h=m+12|0;j=m+8|0;k=m;l=a+33|0;do if(!(b[l>>0]|0))d=c+4|0;else{e=yCa(xm(yCa(134176,110693)|0,c)|0,110708)|0;d=c+4|0;e=Am(e,f[d>>2]|0)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[h>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,i=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,n=x,x=0,!(n&1)):0){JCa(h);Wq(e,i)|0;du(e)|0;break}n=Ia()|0;JCa(h);Ua(n|0)}while(0);switch(f[d>>2]|0){case 1:{n=Ev(f[a+28>>2]|0,65)|0;f4a(j,ORa(c+8|0)|0);Pr(n,f[j>>2]|0)|0;break}case 2:{j=Ev(f[a+28>>2]|0,66)|0;GXa(k,jJa(c+8|0)|0,I);n=k;xr(j,f[n>>2]|0,f[n+4>>2]|0)|0;break}case 3:{yp(Ev(f[a+28>>2]|0,67)|0,mQa(c+8|0)|0)|0;break}case 4:{n=Ev(f[a+28>>2]|0,68)|0;Dk(n,AHa(c+8|0)|0,I)|0;break}default:hb()}if(b[l>>0]|0)yCa(134176,87548)|0;u=m;return}function np(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+12|0;k=b+16|0;j=Bbb(f[k>>2]|0)|0;h=j+-1|0;i=b+4|0;m=a+44|0;e=0;g=0;while(1){if(g>>>0>=j>>>0){c=20;break}d=JDa(l,g)|0;d=f[d>>2]|0;if((g|0)==(h|0))c=o2a(f[i>>2]|0)|0;else c=0;c=pg(a,d,c)|0;if(c){if((c|0)!=(d|0)){yE(m,d,c);d=JDa(l,g)|0;f[d>>2]=c}if((e|0)>0){n=JDa(l,g)|0;n=f[n>>2]|0;d=g-e|0;c=JDa(l,d)|0;f[c>>2]=n;c=JDa(l,g)|0;f[c>>2]=0}else d=g-e|0;n=JDa(l,d)|0;if(g>>>0>>0?(f[(f[n>>2]|0)+4>>2]|0)==5:0){c=13;break}else c=e}else{Moa(m,d);c=e+1|0}e=c;g=g+1|0}if((c|0)==13){d=d+1|0;c=d;while(1){if(c>>>0>=(Bbb(f[k>>2]|0)|0)>>>0)break;e=JDa(l,c)|0;e=f[e>>2]|0;if(e|0)Moa(m,e);c=c+1|0}d7(l,d);n_(m,b)}else if((c|0)==20?(e|0)>0:0){d7(l,j-e|0);n_(m,b)}Kia(a,st(b,a)|0)|0;return}function op(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+80|0;i=j+56|0;d=j+48|0;e=j+24|0;g=j;h=j+72|0;Mu(e,b,f[c+24>>2]|0);if(!(D0a(e)|0)){Mu(g,b,f[c+28>>2]|0);if(D0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{b=b+4|0;k=f[b>>2]|0;f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[i+12>>2]=f[e+12>>2];k=Bu(k,c,i)|0;e=f[(f[b>>2]|0)+36>>2]|0;b=f[(f[e>>2]|0)+28>>2]|0;f[h>>2]=k;f[d>>2]=f[h>>2];f[i>>2]=f[g>>2];f[i+4>>2]=f[g+4>>2];f[i+8>>2]=f[g+8>>2];f[i+12>>2]=f[g+12>>2];rc[b&255](e,c,d,i);M0a(a)}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}u=j;return}function pp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+64|0;j=m+52|0;n=m+8|0;k=m+4|0;l=m;i=a+20|0;bZ(i);d=f[c+40>>2]|0;a=f[c+36>>2]|0;while(1){if((a|0)==(d|0))break;Wl(i,f[a>>2]|0)|0;a=a+4|0}mza(n,c);h4a(n);x=0;ua(2587,n|0,i|0);h=x;x=0;do if(!(h&1)?(x=0,ta(438,n|0),h=x,x=0,!(h&1)):0){e=f[c+28>>2]|0;d=f[c+24>>2]|0;while(1){if((d|0)==(e|0))break;a=f[d>>2]|0;if(!(f[a+8>>2]|0)){x=0;a=ia(187,i|0,a+4|0)|0;h=x;x=0;if(h&1){g=13;break}b[a+9>>0]=1}d=d+4|0}if((g|0)==13){a=Ia()|0;break}e=f[c+80>>2]|0;d=f[c+76>>2]|0;a:while(1){if((d|0)==(e|0)){g=16;break}g=f[d+8>>2]|0;a=f[d+4>>2]|0;while(1){if((a|0)==(g|0))break;h=f[a>>2]|0;f[k>>2]=h;f[l>>2]=h;f[j>>2]=f[l>>2];if(Sma(c,j)|0){x=0;h=ia(187,i|0,k|0)|0;o=x;x=0;if(o&1){g=23;break a}b[h+9>>0]=1}a=a+4|0}d=d+16|0}if((g|0)==16){Tca(n);u=m;return}else if((g|0)==23){a=Ia()|0;break}}else g=9;while(0);if((g|0)==9)a=Ia()|0;Tca(n);Ua(a|0)}function qp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+288|0;k=i+184|0;j=i+92|0;g=i;if(((b[a+24>>0]|0?(h=c+16|0,d=f[h>>2]|0,d|0):0)?(e=c+12|0,o2a(f[(f[e>>2]|0)+4>>2]|0)|0):0)?o2a(f[d+4>>2]|0)|0:0){d=a+28|0;c=c+8|0;fA(k,f[d>>2]|0,f[c>>2]|0);a:do if(!(lza(k)|0)){x=0;va(101,j|0,f[d>>2]|0,f[e>>2]|0);l=x;x=0;b:do if(l&1)d=Ia()|0;else{c:do if(!(lza(j)|0)){x=0;va(101,g|0,f[d>>2]|0,f[h>>2]|0);l=x;x=0;d:do if(l&1)d=Ia()|0;else{do if(!(lza(g)|0)){d=f[a+20>>2]|0;Bbb(d)|0;x=0;d=ga(240,d+144|0)|0;l=x;x=0;if(!(l&1)?(f[d+16>>2]=f[c>>2],f[d+8>>2]=f[e>>2],f[d+12>>2]=f[h>>2],x=0,ta(488,d|0),l=x,x=0,!(l&1)):0){BVa(f[a>>2]|0,d)|0;break}d=Ia()|0;V7(g);break d}while(0);V7(g);break c}while(0);V7(j);break b}while(0);V7(j);break a}while(0);V7(k);Ua(d|0)}while(0);V7(k)}u=i;return}function rp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;o=r+16|0;p=r+8|0;l=r+4|0;m=r;g=a+52|0;if(b[g>>0]|0){e=a+48|0;d=f[e>>2]|0;if(c){f[e>>2]=-1;b[g>>0]=0}}else{d=f[a+44>>2]|0;d=(d|0)>1?d:1;n=a+32|0;e=0;while(1){if(e>>>0>=d>>>0){q=8;break}g=pV(f[n>>2]|0)|0;if((g|0)==-1){d=-1;break}b[o+e>>0]=g;e=e+1|0}if((q|0)==8){do if(!(b[a+53>>0]|0)){i=a+40|0;j=a+36|0;k=p+4|0;a:while(1){s=f[i>>2]|0;g=s;e=f[g>>2]|0;g=f[g+4>>2]|0;t=f[j>>2]|0;h=o+d|0;switch(lc[f[(f[t>>2]|0)+16>>2]&15](t,s,o,h,l,p,k,m)|0){case 3:{q=14;break a}case 2:{q=16;break a}case 1:break;default:break a}t=f[i>>2]|0;f[t>>2]=e;f[t+4>>2]=g;if((d|0)==8){q=16;break}e=pV(f[n>>2]|0)|0;if((e|0)==-1){q=16;break}b[h>>0]=e;d=d+1|0}if((q|0)==14)f[p>>2]=b[o>>0];else if((q|0)==16){d=-1;break}q=18}else{f[p>>2]=b[o>>0];q=18}while(0);b:do if((q|0)==18){if(c){d=Bbb(f[p>>2]|0)|0;f[a+48>>2]=d;break}while(1){if((d|0)<=0)break;d=d+-1|0;t=Bbb(b[o+d>>0]|0)|0;if((o0(t,f[n>>2]|0)|0)==-1){d=-1;break b}}d=Bbb(f[p>>2]|0)|0}while(0)}}u=r;return d|0}function sp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;g=c+12|0;do if(b[g>>0]|0){h=yCa(134176,95311)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(i);Wq(h,e)|0;du(h)|0;break}l=Ia()|0;JCa(i);Ua(l|0)}while(0);l=_p(c)|0;SSa(a,l,I);l=a+8|0;pGa(i,f[a>>2]|0,f[l>>2]|0,f[l+4>>2]|0);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];do if(b[g>>0]|0){c=yCa(134176,96708)|0;f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];a=yCa(LE(c,i)|0,95461)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,j=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,l=x,x=0,!(l&1)):0){JCa(i);Wq(a,j)|0;du(a)|0;break}l=Ia()|0;JCa(i);Ua(l|0)}while(0);u=k;return}function tp(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+4|0;h=l;a:do if(!(f[d+4>>2]&1)){j=f[(f[a>>2]|0)+24>>2]|0;f[h>>2]=f[c>>2];f[k>>2]=f[h>>2];a=hc[j&31](a,k,d,e,g&1)|0}else{ZXa(k,d);x=0;a=ia(73,f[k>>2]|0,134920)|0;j=x;x=0;do if(!(j&1)){JCa(k);d=f[a>>2]|0;if(g)pc[f[d+24>>2]&4095](k,a);else pc[f[d+28>>2]&4095](k,a);i=k+8+3|0;a=b[i>>0]|0;d=f[k>>2]|0;j=k+4|0;g=a<<24>>24<0?d:k;while(1){h=a<<24>>24<0;if((g|0)==((h?d:k)+((h?f[j>>2]|0:a&255)<<2)|0)){d=9;break}a=f[g>>2]|0;d=f[c>>2]|0;if(d|0){e=d+24|0;h=f[e>>2]|0;if((h|0)==(f[d+28>>2]|0)){h=f[(f[d>>2]|0)+52>>2]|0;a=Bbb(a)|0;x=0;a=ia(h|0,d|0,a|0)|0;h=x;x=0;if(h&1){d=18;break}}else{f[e>>2]=h+4;f[h>>2]=a;a=Bbb(a)|0}if(T5a(a)|0)f[c>>2]=0}g=g+4|0;a=b[i>>0]|0;d=f[k>>2]|0}if((d|0)==9){a=f[c>>2]|0;jTa(k);break a}else if((d|0)==18){a=Ia()|0;jTa(k);break}}else{a=Ia()|0;JCa(k)}while(0);Ua(a|0)}while(0);u=l;return a|0}function up(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=f[b>>2]|0;k=b+4|0;e=f[k>>2]|0;l=((f[c>>2]|0)-n<<3)+(f[c+4>>2]|0)-e|0;c=n;if((l|0)>0){if(!e){k=d+4|0;j=b;n=d;m=k;g=c;c=f[k>>2]|0}else{i=32-e|0;j=(l|0)<(i|0)?l:i;i=-1>>>(i-j|0)&-1<>2];m=d+4|0;c=f[m>>2]|0;n=32-c|0;h=n>>>0>>0?n:j;g=f[d>>2]|0;f[g>>2]=f[g>>2]&~(-1>>>(n-h|0)&-1<>>0>e>>>0?i<>>(e-c|0));c=h+c|0;e=g+(c>>>5<<2)|0;f[d>>2]=e;c=c&31;f[m>>2]=c;g=j-h|0;if((g|0)>0){f[e>>2]=i>>>((f[k>>2]|0)+h|0)|f[e>>2]&~(-1>>>(32-g|0));f[m>>2]=g;c=g}g=(f[b>>2]|0)+4|0;f[b>>2]=g;l=l-j|0;j=b;n=d}k=32-c|0;b=-1<-32?i:-32)+32|0;e=l;while(1){if((e|0)<=31)break;p=f[g>>2]|0;o=f[n>>2]|0;f[o>>2]=f[o>>2]&h|p<>2]=o;f[o>>2]=f[o>>2]&b|p>>>k;o=(f[j>>2]|0)+4|0;f[j>>2]=o;e=e+-32|0;g=o}e=l-(i&-32)|0;if((e|0)>0){i=f[g>>2]&-1>>>(32-e|0);h=(k|0)<(e|0)?k:e;g=f[n>>2]|0;f[g>>2]=f[g>>2]&~(-1>>>(k-h|0)&b)|i<>>5<<2)|0;f[n>>2]=g;c=c&31;f[m>>2]=c;e=e-h|0;if((e|0)>0){f[g>>2]=f[g>>2]&~(-1>>>(32-e|0))|i>>>h;f[m>>2]=e;c=e}}}else c=f[d+4>>2]|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return}function vp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;i=m+24|0;h=m+8|0;j=m+20|0;k=m+16|0;l=m;do if(b[a+33>>0]|0){g=yCa(134176,110903)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,n=x,x=0,!(n&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}n=Ia()|0;JCa(i);Ua(n|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;n=LOa(i)|0;jGa(a,f[n>>2]|0);RYa(i)}jGa(a,f[c+28>>2]|0);d=a+28|0;n=Ev(f[d>>2]|0,17)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];f4a(j,g0(a,i)|0);n=Yr(n,f[j>>2]|0)|0;f4a(l,0);Yr(n,f[l>>2]|0)|0;if((f[c+4>>2]|0)==5)dTa(f[d>>2]|0);u=m;return}function wp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=a+4|0;g=b;do if((k|0)!=(b|0)?(j=f[e>>2]|0,h=f[b+16>>2]|0,!(KVa(j,h)|0)):0){if(!(KVa(h,j)|0)){f[c>>2]=g;f[d>>2]=g;b=d;break}i=1;h=g;while(1){if(!i)break;d=h;h=f[d+4>>2]|0;a:do if(!h)while(1){h=f[d+8>>2]|0;if((f[h>>2]|0)==(d|0))break a;d=h}else while(1){d=f[h>>2]|0;if(!d)break;else h=d}while(0);i=i+-1|0}d=h;if((k|0)!=(d|0)?!(KVa(j,f[h+16>>2]|0)|0):0){b=JD(a,c,e)|0;break}b=b+4|0;if(!(f[b>>2]|0)){f[c>>2]=g;break}else{f[c>>2]=d;b=d;break}}else l=3;while(0);do if((l|0)==3){d=f[b>>2]|0;if((f[a>>2]|0)!=(b|0)){if(!d){g=b;do{l=g;g=f[g+8>>2]|0}while((f[g>>2]|0)==(l|0))}else{g=d;while(1){h=f[g+4>>2]|0;if(!h)break;else g=h}}if(!(KVa(f[g+16>>2]|0,f[e>>2]|0)|0)){b=JD(a,c,e)|0;break}}if(!d){f[c>>2]=b;break}else{f[c>>2]=g;b=g+4|0;break}}while(0);return b|0}function xp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+24|0;h=i;M0a(g);d=f[c+12>>2]|0;if((d|0)!=0?(Mw(h,b,d),f[g>>2]=f[h>>2],f[g+4>>2]=f[h+4>>2],f[g+8>>2]=f[h+8>>2],f[g+12>>2]=f[h+12>>2],f[g+16>>2]=f[h+16>>2],D0a(g)|0):0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else e=4;a:do if((e|0)==4){d=f[c+16>>2]|0;do if(d|0){Mw(h,b,d);if(D0a(h)|0){f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2];break a}h=Eia(h)|0;if((h|0)==0&(I|0)==0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break a}else break}while(0);f[g+16>>2]=f[c+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}while(0);u=i;return}function yp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do if(!(b[a+12>>0]|0))h=a+4|0;else{d=yCa(Am(yCa(134176,87305)|0,c)|0,87596)|0;h=a+4|0;d=yCa(zm(d,(f[h>>2]|0)-(f[a>>2]|0)|0)|0,123274)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(d,g)|0;du(d)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);d=c&255;b[i>>0]=d;e=f[h>>2]|0;g=a+8|0;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;e=(f[h>>2]|0)+1|0;f[h>>2]=e}else{WL(a,i);e=f[h>>2]|0}d=c>>>8&255;b[i>>0]=d;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;e=(f[h>>2]|0)+1|0;f[h>>2]=e}else{WL(a,i);e=f[h>>2]|0}d=c>>>16&255;b[i>>0]=d;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;e=(f[h>>2]|0)+1|0;f[h>>2]=e}else{WL(a,i);e=f[h>>2]|0}d=c>>>24&255;b[i>>0]=d;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;f[h>>2]=(f[h>>2]|0)+1}else WL(a,i);u=j;return a|0}function zp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+48|0;g=i+24|0;h=i+12|0;j=i;a:do if(((a|0)!=(c|0)?(b[a>>0]|0)==46:0)?(e=d+4|0,(f[d>>2]|0)!=(f[e>>2]|0)):0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;SM(j,a,c);x=0;ja(101,j|0,0,123271)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,h|0,123274)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}d=b[g+11>>0]|0;a=d<<24>>24<0;x=0;ja(97,(f[e>>2]|0)+-24|0,(a?f[g>>2]|0:g)|0,(a?f[g+4>>2]|0:d&255)|0)|0;e=x;x=0;if(e&1){a=Ia()|0;HTa(g);break}else{HTa(g);HTa(h);HTa(j);a=c;break a}}else a=Ia()|0;while(0);HTa(h)}HTa(j);Ua(a|0)}while(0);u=i;return a|0}function Ap(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;j=l+32|0;e=l;g=l+8|0;h=a+12|0;do if(b[h>>0]|0){i=yCa(134176,95311)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(i,d)|0;du(i)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);DOa(g,a);x=0;ua(1888,e|0,g|0);m=x;x=0;if(m&1){m=Ia()|0;sta(g);Ua(m|0)}sta(g);do if(!(b[h>>0]|0)){a=e;c=f[a+4>>2]|0;a=f[a>>2]|0}else{d=yCa(134176,96771)|0;c=e;a=f[c>>2]|0;c=f[c+4>>2]|0;d=yCa(tm(d,a,c)|0,95461)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,k=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(d,k)|0;du(d)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);I=c;u=l;return a|0}function Bp(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;m=o;c=d;while(1){if((c|0)==(e|0)){c=e;break}if(!(f[c>>2]|0))break;c=c+4|0}f[j>>2]=h;f[g>>2]=d;l=i;n=a+8|0;a:while(1){if((h|0)==(i|0)|(d|0)==(e|0)){p=35;break}a=kRa(f[n>>2]|0)|0;k=yu(h,g,c-d>>2,l-h|0)|0;if(a|0)kRa(a)|0;switch(k|0){case -1:{p=10;break a}case 0:{d=1;break a}default:{}}h=(f[j>>2]|0)+k|0;f[j>>2]=h;if((h|0)==(i|0)){p=33;break}if((c|0)==(e|0)){c=e;d=f[g>>2]|0}else{h=kRa(f[n>>2]|0)|0;d=YF(m,0)|0;if(h|0)kRa(h)|0;if((d|0)==-1){d=2;p=32;break}if(d>>>0>(l-(f[j>>2]|0)|0)>>>0){d=1;p=32;break}h=m;while(1){if(!d)break;a=b[h>>0]|0;k=f[j>>2]|0;f[j>>2]=k+1;b[k>>0]=a;h=h+1|0;d=d+-1|0}d=(f[g>>2]|0)+4|0;f[g>>2]=d;c=d;while(1){if((c|0)==(e|0)){c=e;break}if(!(f[c>>2]|0))break;c=c+4|0}h=f[j>>2]|0}}if((p|0)==10){f[j>>2]=h;while(1){if((d|0)==(f[g>>2]|0))break;e=f[d>>2]|0;c=kRa(f[n>>2]|0)|0;h=YF(h,e)|0;if(c|0)kRa(c)|0;if((h|0)==-1)break;h=(f[j>>2]|0)+h|0;f[j>>2]=h;d=d+4|0}f[g>>2]=d;d=2}else if((p|0)!=32)if((p|0)==33){d=f[g>>2]|0;p=35}if((p|0)==35)d=(d|0)!=(e|0)&1;u=o;return d|0}function Cp(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=u;u=u+64|0;c=e+36|0;d=e+40|0;g=e+24|0;i=e+12|0;h=e;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,89156,h7a(89156)|0);x=0;ua(1283,h|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[h+11>>0]|0;j=a<<24>>24<0;x=0;ja(49,i|0,(j?f[h>>2]|0:h)|0,(j?f[h+4>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,g|0,89163)|0;j=x;x=0;do if(!(j&1)){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);j=x;x=0;if(j&1){a=Ia()|0;HTa(d);break}else{HTa(d);HTa(g);HTa(h);HTa(i);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);HTa(g)}HTa(h)}HTa(i);Ua(a|0);return 0}function Dp(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=u;u=u+64|0;c=e+36|0;d=e+40|0;g=e+24|0;i=e+12|0;h=e;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,89075,h7a(89075)|0);x=0;ua(1283,h|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[h+11>>0]|0;j=a<<24>>24<0;x=0;ja(49,i|0,(j?f[h>>2]|0:h)|0,(j?f[h+4>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,g|0,89082)|0;j=x;x=0;do if(!(j&1)){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);j=x;x=0;if(j&1){a=Ia()|0;HTa(d);break}else{HTa(d);HTa(g);HTa(h);HTa(i);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);HTa(g)}HTa(h)}HTa(i);Ua(a|0);return 0}function Ep(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;c=k;a:do if((b|0)!=(a|0)){i=a+16|0;h=f[i>>2]|0;g=h;j=b+16|0;do if((h|0)!=(a|0)){d=f[j>>2]|0;if((b|0)!=(d|0)){f[i>>2]=d;f[j>>2]=g;break a}h=f[(f[d>>2]|0)+12>>2]|0;c=Bbb(a)|0;x=0;ua(h|0,d|0,c|0);h=x;x=0;if(!(h&1)){h=f[j>>2]|0;oc[f[(f[h>>2]|0)+16>>2]&1023](h);f[j>>2]=f[i>>2];f[i>>2]=c;break a}}else{if((f[j>>2]|0)!=(b|0)){g=f[(f[h>>2]|0)+12>>2]|0;c=Bbb(b)|0;x=0;ua(g|0,h|0,c|0);h=x;x=0;if(h&1)break;h=f[i>>2]|0;oc[f[(f[h>>2]|0)+16>>2]&1023](h);f[i>>2]=f[j>>2];f[j>>2]=c;break a}c=Bbb(c)|0;x=0;ua(f[(f[h>>2]|0)+12>>2]|0,h|0,c|0);g=x;x=0;if((!(g&1)?(g=f[i>>2]|0,oc[f[(f[g>>2]|0)+16>>2]&1023](g),f[i>>2]=0,g=f[j>>2]|0,a=f[(f[g>>2]|0)+12>>2]|0,d=Bbb(h)|0,x=0,ua(a|0,g|0,d|0),h=x,x=0,!(h&1)):0)?(e=f[j>>2]|0,oc[f[(f[e>>2]|0)+16>>2]&1023](e),f[j>>2]=0,f[i>>2]=d,i=f[(f[c>>2]|0)+12>>2]|0,e=Bbb(b)|0,x=0,ua(i|0,c|0,e|0),i=x,x=0,!(i&1)):0){oc[f[(f[c>>2]|0)+16>>2]&1023](c);f[j>>2]=e;break a}j=Ja(0)|0;r2a(j)}while(0);j=Ja(0)|0;r2a(j)}while(0);u=k;return}function Fp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+160|0;o=q+16|0;n=q;a:do if((b|0)==5|(b|0)==(c|0))h=1;else{i=o+56|0;j=o+4|0;f[o>>2]=33420;f[i>>2]=33440;Gaa(o+56|0,j);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=o+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;h=ia(77,o|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(121,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(o);h=0;break a}}else p=13;while(0);if((p|0)==13)h=Ia()|0;JGa(o);Ua(h|0)}while(0);u=q;return h|0}function Gp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;a:do switch(b-a>>2|0){case 1:case 0:{c=1;break}case 2:{c=b+-4|0;d=f[c>>2]|0;e=f[a>>2]|0;if(WPa(d,e)|0){f[a>>2]=d;f[c>>2]=e;c=1}else c=1;break}case 3:{Py(a,a+4|0,b+-4|0)|0;c=1;break}case 4:{_B(a,a+4|0,a+8|0,b+-4|0)|0;c=1;break}case 5:{sx(a,a+4|0,a+8|0,a+12|0,b+-4|0)|0;c=1;break}default:{d=a+8|0;Py(a,a+4|0,d)|0;i=a+12|0;c=0;while(1){if((i|0)==(b|0)){c=1;break a}g=f[i>>2]|0;h=g;if(WPa(g,f[d>>2]|0)|0){e=i;while(1){f[e>>2]=f[d>>2];if((d|0)==(a|0)){d=a;break}e=d+-4|0;if(WPa(g,f[e>>2]|0)|0){j=d;d=e;e=j}else break}f[d>>2]=h;c=c+1|0;if((c|0)==8)break}d=i;i=i+4|0}c=(i+4|0)==(b|0)}}while(0);return c|0}function Hp(){Cab();oab();nab();mab();G9a();v9a();iab();hab();gab();fab();eab();dab();cab();bab();aab();$9a();_9a();Z9a();Y9a();X9a();W9a();V9a();U9a();T9a();S9a();R9a();Q9a();P9a();O9a();N9a();M9a();L9a();K9a();J9a();I9a();H9a();F9a();E9a();D9a();C9a();B9a();A9a();z9a();y9a();x9a();w9a();u9a();t9a();s9a();r9a();q9a();l9a();k9a();j9a();i9a();h9a();g9a();f9a();e9a();d9a();c9a();E8a();D8a();b9a();a9a();$8a();_8a();Z8a();Y8a();B8a();X8a();W8a();V8a();U8a();T8a();S8a();R8a();Q8a();P8a();O8a();N8a();M8a();L8a();h2a();return}function Ip(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121963);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=n8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)ubb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if((f[h>>2]|0)==(f[g+8>>2]|0))i=g;else break}f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)ubb(c);f[d>>2]=0}while(0);return}function Jp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k+12|0;j=k;switch(d<<24>>24){case 63:{g=mSa(f[a+4>>2]|0)|0;f[g+8>>2]=1;f[g+4>>2]=1;e=4;break}case 64:{g=mSa(f[a+4>>2]|0)|0;f[g+8>>2]=2;e=g+16|0;d7(e,1);d=dk(a)|0;e=JDa(e,0)|0;f[e>>2]=d;e=4;break}default:d=0}if((e|0)==4){do if(b[a+12>>0]|0){d=yCa(134176,110602)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(h);Wq(d,i)|0;du(d)|0;break}l=Ia()|0;JCa(h);Ua(l|0)}while(0);do if(nq(a)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,96545,h7a(96545)|0);x=0;ua(1869,a|0,j|0);l=x;x=0;if(l&1){l=Ia()|0;HTa(j);Ua(l|0)}else{HTa(j);break}}while(0);m1(g);f[c>>2]=g;d=1}u=k;return d|0}function Kp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+64|0;j=n+40|0;k=n+12|0;l=n+24|0;m=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==90:0)?(e=a+2|0,(b[e>>0]|0)==102):0)?(h=vi(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,(f[d>>2]|0)!=(g|0)):0){eY(m,g+-24|0);x=0;ja(101,m|0,0,123487)|0;g=x;x=0;do if(g&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,l|0,123274)|0;g=x;x=0;if(g&1){a=Ia()|0;HTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}NY(j,k);tA((f[i>>2]|0)+-24|0,j);JJa(j);HTa(k);HTa(l);HTa(m);a=h;break a}while(0);HTa(m);Ua(a|0)}while(0);u=n;return a|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;h=n+152|0;o=n+16|0;l=n+4|0;m=n;a:do if((b|0)==2){e=o+56|0;g=o+4|0;f[o>>2]=33420;f[e>>2]=33440;Gaa(o+56|0,g);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[e>>2]=41776;Sra(g);f[g>>2]=39940;e=o+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;b=ia(77,o|0,2)|0;e=x;x=0;do if(((((!(e&1)?(x=0,i=ia(62,b|0,82034)|0,e=x,x=0,!(e&1)):0)?(x=0,j=ia(77,i|0,2)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,d|0)|0,d=x,x=0,!(d&1)):0)?(x=0,ua(107,l|0,g|0),d=x,x=0,!(d&1)):0){f[m>>2]=f[c>>2];x=0;f[h>>2]=f[m>>2];wa(103,a|0,l|0,h|0,0);m=x;x=0;if(m&1){b=Ia()|0;HTa(l);break}else{HTa(l);JGa(o);break a}}else p=13;while(0);if((p|0)==13)b=Ia()|0;JGa(o);Ua(b|0)}while(0);u=n;return}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;az(c);b=f[b>>2]|0;do if(!($1a(b,f[33226]|0)|0)){if($1a(b,f[33292]|0)|0){e=Ru(a,c)|0;break}if($1a(b,f[33291]|0)|0){e=Ru(a,c)|0;break}if($1a(b,f[33288]|0)|0){e=MH(a,c,d)|0;break}if($1a(b,f[33287]|0)|0){e=kD(a,c,d)|0;break}if($1a(b,f[33284]|0)|0){e=wM(a,c,d)|0;break}if($1a(b,f[33285]|0)|0){e=Lfa(a,c,d)|0;break}if($1a(b,f[33278]|0)|0){e=qV(c)|0;break}if($1a(b,f[33277]|0)|0){e=VU(c)|0;break}if($1a(b,f[33276]|0)|0){e=Ki(a,c)|0;break}if($1a(b,f[33214]|0)|0){e=EBa(a,c,d)|0;break}if($1a(b,f[33283]|0)|0){e=yy(a,c,d)|0;break}else{zX(b,f[c>>2]|0);hb()}}else e=Er(a,c)|0;while(0);return e|0}function Np(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+160|0;n=p+16|0;m=p;a:do if((b|0)==5|(b|0)==(c|0))g=1;else{h=n+56|0;i=n+4|0;f[n>>2]=33420;f[h>>2]=33440;Gaa(n+56|0,i);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[h>>2]=41776;Sra(i);f[i>>2]=39940;h=n+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;g=ia(77,n|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122324)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84956)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(122,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;HTa(m);break}else{HTa(m);JGa(n);g=0;break a}}else o=13;while(0);if((o|0)==13)g=Ia()|0;JGa(n);Ua(g|0)}while(0);u=p;return g|0}function Op(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;g=i+12|0;h=i;e=f[a>>2]|0;a:do switch(b[e>>0]|0){case 56:{c=1;d=1;j=16;break}case 49:{if((b[e+1>>0]|0)==54){c=2;d=2;j=16}else{a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;j=h7a(93400)|0;x=0;va(87,g|0,93400,j|0);j=x;x=0;if(!(j&1)){x=0;ua(261,a|0,g|0);j=x;x=0;if(j&1)d=1;else{x=0;va(98,a|0,32200,457);x=0;d=0}c=Ia()|0;HTa(g);if(!d){j=18;break a}}else c=Ia()|0;La(a|0);j=18}break}case 51:{if((b[e+1>>0]|0)==50){c=4;d=2;j=16}else{a=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;j=h7a(93427)|0;x=0;va(87,h|0,93427,j|0);j=x;x=0;if(!(j&1)){x=0;ua(261,a|0,h|0);j=x;x=0;if(j&1)d=1;else{x=0;va(98,a|0,32200,457);x=0;d=0}c=Ia()|0;HTa(h);if(!d){j=18;break a}}else c=Ia()|0;La(a|0);j=18}break}default:{}}while(0);if((j|0)==16)f[a>>2]=e+d;else if((j|0)==18)Ua(c|0);u=i;return c|0}function Pp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+160|0;n=p+16|0;m=p;a:do if((b|0)==5|(b|0)==(c|0))g=1;else{h=n+56|0;i=n+4|0;f[n>>2]=33420;f[h>>2]=33440;Gaa(n+56|0,i);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[h>>2]=41776;Sra(i);f[i>>2]=39940;h=n+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;g=ia(77,n|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122324)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84956)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(123,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;HTa(m);break}else{HTa(m);JGa(n);g=0;break a}}else o=13;while(0);if((o|0)==13)g=Ia()|0;JGa(n);Ua(g|0)}while(0);u=p;return g|0}function Qp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+160|0;o=q+16|0;n=q;a:do if((b|0)==(c|0))h=1;else{i=o+56|0;j=o+4|0;f[o>>2]=33420;f[i>>2]=33440;Gaa(o+56|0,j);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=o+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;h=ia(77,o|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(102,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(o);h=0;break a}}else p=13;while(0);if((p|0)==13)h=Ia()|0;JGa(o);Ua(h|0)}while(0);u=q;return h|0}function Rp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=b+8|0;switch(f[e>>2]|0){case 45:case 20:case 44:case 19:case 43:case 18:case 42:case 17:case 41:case 16:case 40:case 15:case 39:case 14:case 38:case 13:case 37:case 12:case 36:case 11:case 35:case 10:case 34:case 9:case 33:case 8:case 32:case 7:case 31:case 6:case 30:case 5:case 29:case 4:case 28:case 3:case 27:case 2:case 26:case 1:case 25:case 0:{d=rga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(sab(f[d>>2]|0)|0)){c=rga(a,Lk(a,f[b+16>>2]|0)|0,b)|0;if(!(sab(f[c>>2]|0)|0)){b=dIa(b,b)|0;a=PK(a,b)|0;i6(a,d);i6(a,c);c=b}}else c=d;break}case 49:case 24:case 47:case 22:case 48:case 23:case 46:case 21:{U0a(d,f[a+120>>2]|0);switch(f[e>>2]|0){case 21:{c=19;break}case 46:{c=44;break}case 23:{c=17;break}case 48:{c=42;break}case 22:{c=20;break}case 47:{c=45;break}case 24:{c=18;break}case 49:{c=43;break}default:hb()}c=UOa(a,Fpa(f[d>>2]|0,c,f[b+16>>2]|0,f[b+12>>2]|0)|0)|0;f[c+8>>2]=b;break}default:c=Qxa(a,f[b+4>>2]|0)|0}u=g;return c|0}function Sp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(113,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function Tp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(112,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function Up(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;g=a+12|0;do if(b[g>>0]|0){e=yCa(134176,95311)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){JCa(h);Wq(e,d)|0;du(e)|0;break}k=Ia()|0;JCa(h);Ua(k|0)}while(0);d=Fr(a)|0;d=(((Fr(a)|0)&255)<<8|d&255)&65535;do if(b[g>>0]|0){a=yCa(vm(yCa(134176,96747)|0,d)|0,96732)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|8;a=vm(a,d)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|2;a=yCa(a,95461)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){JCa(h);Wq(a,i)|0;du(a)|0;break}k=Ia()|0;JCa(h);Ua(k|0)}while(0);u=j;return d|0}function Vp(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;g=a+12|0;do if(b[g>>0]|0){e=yCa(134176,95311)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){JCa(h);Wq(e,d)|0;du(e)|0;break}k=Ia()|0;JCa(h);Ua(k|0)}while(0);d=(Up(a)|0)&65535;d=((Up(a)|0)&65535)<<16|d;do if(b[g>>0]|0){a=yCa(zm(yCa(134176,96736)|0,d)|0,96732)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|8;a=zm(a,d)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|2;a=yCa(a,95461)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){JCa(h);Wq(a,i)|0;du(a)|0;break}k=Ia()|0;JCa(h);Ua(k|0)}while(0);u=j;return d|0}function Wp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(114,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function Xp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(109,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function Yp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(115,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function Zp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(127,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function _p(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;h=a+12|0;do if(b[h>>0]|0){e=yCa(134176,95311)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[i>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,g=x,x=0,!(g&1)):0){JCa(i);Wq(e,d)|0;du(e)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);g=Vp(a)|0;e=Vp(a)|0;do if(b[h>>0]|0){c=yCa(sm(yCa(134176,96721)|0,g,e)|0,96732)|0;d=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[d>>2]=f[d>>2]&-75|8;c=sm(c,g,e)|0;d=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[d>>2]=f[d>>2]&-75|2;c=yCa(c,95461)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,j=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,h=x,x=0,!(h&1)):0){JCa(i);Wq(c,j)|0;du(c)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);I=e;u=k;return g|0}function $p(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;g=n+48|0;j=n+44|0;o=n+4|0;k=n+40|0;e=n;p=a+84|0;l=f[p>>2]|0;f[p>>2]=l+1;p=WFa(f[c+8>>2]|0)|0;h=a+36|0;d=f[h>>2]|0;Bbb(d)|0;U0a(j,d);d=Jt(l)|0;l=It(l)|0;m=f[c+16>>2]|0;vKa(o);f[o+24>>2]=f[a+80>>2];f[o+28>>2]=p;f[o+32>>2]=d;$Wa(o,Bbb(f[h>>2]|0)|0);x=0;ua(1927,o|0,b|0);h=x;x=0;do if(h&1)d=Ia()|0;else{h=f[b>>2]|0;f[k>>2]=d;f[e>>2]=l;x=0;f[g>>2]=f[e>>2];d=ka(12,j|0,g|0,0,0)|0;p=x;x=0;if(!(p&1)?(x=0,f[g>>2]=f[k>>2],i=ka(11,j|0,h|0,g|0,d|0)|0,p=x,x=0,!(p&1)):0){x=0;d=ja(51,j|0,i|0,f[c+12>>2]|0)|0;p=x;x=0;do if(!(p&1)){f[d+8>>2]=l;f[b>>2]=d;if(m|0){x=0;d=ga(260,m|0)|0;p=x;x=0;if(p&1)break;x=0;va(153,a|0,b|0,d|0);p=x;x=0;if(p&1)break}I_a(o);u=n;return}while(0);d=Ia()|0;break}d=Ia()|0}while(0);I_a(o);Ua(d|0)}function aq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;g=c+12|0;do if(b[g>>0]|0){h=yCa(134176,95311)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(i);Wq(h,e)|0;du(h)|0;break}l=Ia()|0;JCa(i);Ua(l|0)}while(0);m$a(a,Vp(c)|0);LHa(i,a);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];do if(b[g>>0]|0){c=yCa(134176,96758)|0;f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];a=yCa(LE(c,i)|0,95461)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,j=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,l=x,x=0,!(l&1)):0){JCa(i);Wq(a,j)|0;du(a)|0;break}l=Ia()|0;JCa(i);Ua(l|0)}while(0);u=k;return}function bq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;m=n;a:do if(!((b|0)==5|(b|0)==(c|0))){h=o+56|0;i=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,i);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(i);f[i>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122324)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84532)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(117,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;HTa(m);break}else{HTa(m);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function cq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;m=n;a:do if(!((b|0)==5|(b|0)==(c|0))){h=o+56|0;i=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,i);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(i);f[i>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122324)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84637)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(119,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;HTa(m);break}else{HTa(m);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function dq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;g=m+20|0;e=m+16|0;h=m+12|0;i=m+8|0;d=m+24|0;j=m+4|0;k=m;x=0;va(150,d|0,a|0,0);n=x;x=0;a:do if(n&1){d=Ja(0)|0;e=a;g=a;l=12}else b:do if(b[d>>0]|0){f[j>>2]=0;ZXa(k,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134904)|0;n=x;x=0;do if(!(n&1)?(n=a+(f[(f[a>>2]|0)+-12>>2]|0)|0,o=f[(f[d>>2]|0)+36>>2]|0,f[h>>2]=f[n+24>>2],f[i>>2]=0,x=0,f[e>>2]=f[h>>2],f[g>>2]=f[i>>2],oa(o|0,d|0,e|0,g|0,n|0,j|0,c|0)|0,n=x,x=0,!(n&1)):0){JCa(k);o=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,o|0,f[o+16>>2]|f[j>>2]|0);o=x;x=0;if(o&1){d=Ja(0)|0;break}else break b}else l=8;while(0);if((l|0)==8){d=Ja(0)|0;JCa(k)}e=a;g=a;l=12;break a}while(0);while(0);do if((l|0)==12){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);o=x;x=0;if(!(o&1)){Ga();break}d=Ia()|0;x=0;sa(6);o=x;x=0;if(o&1){o=Ja(0)|0;r2a(o)}else Ua(d|0)}while(0);u=m;return a|0}function eq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;g=m+20|0;e=m+16|0;h=m+12|0;i=m+8|0;d=m+24|0;j=m+4|0;k=m;x=0;va(150,d|0,a|0,0);n=x;x=0;a:do if(n&1){d=Ja(0)|0;e=a;g=a;l=12}else b:do if(b[d>>0]|0){f[j>>2]=0;ZXa(k,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134904)|0;n=x;x=0;do if(!(n&1)?(n=a+(f[(f[a>>2]|0)+-12>>2]|0)|0,o=f[(f[d>>2]|0)+28>>2]|0,f[h>>2]=f[n+24>>2],f[i>>2]=0,x=0,f[e>>2]=f[h>>2],f[g>>2]=f[i>>2],oa(o|0,d|0,e|0,g|0,n|0,j|0,c|0)|0,n=x,x=0,!(n&1)):0){JCa(k);o=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,o|0,f[o+16>>2]|f[j>>2]|0);o=x;x=0;if(o&1){d=Ja(0)|0;break}else break b}else l=8;while(0);if((l|0)==8){d=Ja(0)|0;JCa(k)}e=a;g=a;l=12;break a}while(0);while(0);do if((l|0)==12){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);o=x;x=0;if(!(o&1)){Ga();break}d=Ia()|0;x=0;sa(6);o=x;x=0;if(o&1){o=Ja(0)|0;r2a(o)}else Ua(d|0)}while(0);u=m;return a|0}function fq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;i=m+40|0;j=m+12|0;k=m+24|0;l=m;a:do if(((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==122:0)?(n=a+2|0,g=Bc(n,c,d)|0,(g|0)!=(n|0)):0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){eY(l,e+-24|0);x=0;ja(101,l|0,0,123501)|0;n=x;x=0;do if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,k|0,123274)|0;n=x;x=0;if(n&1){a=Ia()|0;HTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}NY(i,j);tA((f[h>>2]|0)+-24|0,i);JJa(i);HTa(j);HTa(k);HTa(l);a=g;break a}while(0);HTa(l);Ua(a|0)}while(0);u=m;return a|0}function gq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,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=u;u=u+64|0;g=o+32|0;p=o+48|0;c=o+16|0;m=o;a:do if((f[b+4>>2]|0)==2){mD(p,a,1);n=a+44|0;d=f[n>>2]|0;e=b+8|0;x=0;b=ga(321,e|0)|0;r=x;x=0;do if(!(r&1)?(m$a(c,b),x=0,f[g>>2]=f[c>>2],f[g+4>>2]=f[c+4>>2],f[g+8>>2]=f[c+8>>2],f[g+12>>2]=f[c+12>>2],h=ia(50,d|0,g|0)|0,r=x,x=0,!(r&1)):0){b=f[n>>2]|0;x=0;c=ga(320,p|0)|0;r=x;x=0;if(((!(r&1)?(i=f[n>>2]|0,x=0,ga(321,e|0)|0,j=I,r=x,x=0,!(r&1)):0)?(m$a(m,j),x=0,f[g>>2]=f[m>>2],f[g+4>>2]=f[m+4>>2],f[g+8>>2]=f[m+8>>2],f[g+12>>2]=f[m+12>>2],k=ia(50,i|0,g|0)|0,r=x,x=0,!(r&1)):0)?(x=0,l=ja(45,b|0,c|0,k|0)|0,r=x,x=0,!(r&1)):0){x=0;b=ja(70,f[n>>2]|0,l|0,h|0)|0;r=x;x=0;if(!(r&1)?(x=0,va(161,a|0,b|0,p|0),r=x,x=0,!(r&1)):0){BVa(f[a+16>>2]|0,b)|0;HCa(p);break a}b=Ia()|0;break}b=Ia()|0}else q=12;while(0);if((q|0)==12)b=Ia()|0;HCa(p);Ua(b|0)}while(0);u=o;return}function hq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;i=m+40|0;j=m+12|0;k=m+24|0;l=m;a:do if(((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==116:0)?(n=a+2|0,g=Cc(n,c,d)|0,(g|0)!=(n|0)):0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){eY(l,e+-24|0);x=0;ja(101,l|0,0,123501)|0;n=x;x=0;do if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,k|0,123274)|0;n=x;x=0;if(n&1){a=Ia()|0;HTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}NY(i,j);tA((f[h>>2]|0)+-24|0,i);JJa(i);HTa(j);HTa(k);HTa(l);a=g;break a}while(0);HTa(l);Ua(a|0)}while(0);u=m;return a|0}function iq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+32|0;o=l+16|0;m=l;SN(o,a,f[b+12>>2]|0);x=0;va(159,m|0,a|0,1);k=x;x=0;if(k&1)c=Ia()|0;else{f[b+4>>2]=1;k=a+44|0;c=f[k>>2]|0;x=0;d=ga(320,m|0)|0;e=x;x=0;do if(!(e&1)?(x=0,h=ja(45,c|0,d|0,b|0)|0,e=x,x=0,!(e&1)):0){e=f[k>>2]|0;c=(f[b+8>>2]|0)+1|0;x=0;d=ga(320,o|0)|0;b=x;x=0;if((!(b&1)?(x=0,g=ja(46,f[e>>2]|0,d|0,1)|0,b=x,x=0,!(b&1)):0)?(x=0,i=ja(45,e|0,c|0,g|0)|0,g=x,x=0,!(g&1)):0){c=f[k>>2]|0;x=0;d=ga(320,m|0)|0;g=x;x=0;if(!(g&1)?(x=0,j=ja(46,f[c>>2]|0,d|0,1)|0,g=x,x=0,!(g&1)):0){x=0;c=ka(21,f[k>>2]|0,h|0,i|0,j|0)|0;k=x;x=0;if(!(k&1)?(BVa(f[a+16>>2]|0,c)|0,x=0,va(161,a|0,c|0,o|0),a=x,x=0,!(a&1)):0){HCa(m);HCa(o);u=l;return}c=Ia()|0;break}c=Ia()|0;break}c=Ia()|0}else n=13;while(0);if((n|0)==13)c=Ia()|0;HCa(m)}HCa(o);Ua(c|0)}function jq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;i=j+24|0;d=j;M0a(a);yXa(i);e=f[c+32>>2]|0;if(e){Mu(d,b,e);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];if(!(D0a(a)|0)){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];h=a;g=5}}else{h=a;g=5}if((g|0)==5?(Mu(d,b,f[c+28>>2]|0),f[h>>2]=f[d>>2],f[h+4>>2]=f[d+4>>2],f[h+8>>2]=f[d+8>>2],f[h+12>>2]=f[d+12>>2],f[h+16>>2]=f[d+16>>2],!(D0a(a)|0)):0){d=Eia(a)|0;g=I;b=f[c+24>>2]|0;if((g|0)>-1|(g|0)==-1&d>>>0>4294967295?(Bbb(f[c+12>>2]|0)|0)>>>0>d>>>0:0){b=JDa(c+8|0,d)|0;b=f[b>>2]|0}f[a+16>>2]=b;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2]}u=j;return}function kq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if((b|0)!=(c|0)){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(110,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function lq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if((b|0)!=(c|0)){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(128,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function mq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=a+4|0;g=b;do if((j|0)!=(b|0)?(h=f[b+16>>2]|0,h>>>0<=e>>>0):0){if(h>>>0>=e>>>0){f[c>>2]=g;f[d>>2]=g;b=d;break}i=1;d=g;while(1){if(!i)break;h=d;d=f[h+4>>2]|0;a:do if(!d)while(1){d=f[h+8>>2]|0;if((f[d>>2]|0)==(h|0))break a;h=d}else while(1){h=f[d>>2]|0;if(!h)break;else d=h}while(0);i=i+-1|0}h=d;if((j|0)!=(h|0)?(f[d+16>>2]|0)>>>0<=e>>>0:0){b=zF(a,c,e)|0;break}b=b+4|0;if(!(f[b>>2]|0)){f[c>>2]=g;break}else{f[c>>2]=h;b=h;break}}else k=3;while(0);do if((k|0)==3){h=f[b>>2]|0;if((f[a>>2]|0)!=(b|0)){if(!h){g=b;do{k=g;g=f[g+8>>2]|0}while((f[g>>2]|0)==(k|0))}else{g=h;while(1){d=f[g+4>>2]|0;if(!d)break;else g=d}}if((f[g+16>>2]|0)>>>0>=e>>>0){b=zF(a,c,e)|0;break}}if(!h){f[c>>2]=b;break}else{f[c>>2]=g;b=g+4|0;break}}while(0);return b|0}function nq(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;j=l+28|0;e=l+24|0;g=l;h=a+12|0;do if(b[h>>0]|0){i=yCa(134176,95311)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(i,d)|0;du(i)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);COa(g,a);x=0;ua(1883,e|0,g|0);m=x;x=0;if(m&1){m=Ia()|0;sta(g);Ua(m|0)}sta(g);do if(!(b[h>>0]|0))a=f[e>>2]|0;else{c=yCa(134176,98850)|0;a=f[e>>2]|0;c=yCa(zm(c,a)|0,95461)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(c,k)|0;du(c)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);u=l;return a|0}function oq(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;j=l+28|0;e=l+24|0;g=l;h=a+12|0;do if(b[h>>0]|0){i=yCa(134176,95311)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(i,d)|0;du(i)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);EOa(g,a);x=0;ua(1885,e|0,g|0);m=x;x=0;if(m&1){m=Ia()|0;sta(g);Ua(m|0)}sta(g);do if(!(b[h>>0]|0))a=f[e>>2]|0;else{c=yCa(134176,95672)|0;a=f[e>>2]|0;c=yCa(Am(c,a)|0,95461)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(c,k)|0;du(c)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);u=l;return a|0}function pq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if((b|0)!=(c|0)){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Gaa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Sra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81455)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122324)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(127,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;HTa(n);break}else{HTa(n);JGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;JGa(p);Ua(h|0)}while(0);u=o;return}function qq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;m=n;a:do if((b|4|0)!=5){h=o+56|0;i=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,i);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(i);f[i>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,1)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122324)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,d|0)|0,d=x,x=0,!(d&1)):0)?(x=0,ua(107,m|0,i|0),d=x,x=0,!(d&1)):0){x=0;wa(111,a|0,m|0,c|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;HTa(m);break}else{HTa(m);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function rq(a,c){a=a|0;c=c|0;if(!c)Ca(110557,115839,78,110562);do switch(f[c>>2]|0){case 1:{dza(a,c);break}case 22:case 19:case 18:case 15:case 2:break;case 3:{cka(a,c);break}case 4:{Xfa(a,c);break}case 5:{xC(a,c);break}case 6:{Y1a(a);break}case 7:{PSa(a);break}case 8:{Y1a(a);break}case 9:{Wfa(a,c);break}case 10:{Vfa(a,c);break}case 11:{Gea(a,c);break}case 12:{Fea(a,c);break}case 13:{UEa(a,b[c+20>>0]|0);break}case 14:{mEa(a,b[c+20>>0]|0);break}case 24:{_Ja(a);break}case 25:{_Ja(a);break}case 26:{_Ja(a);break}case 27:{_Ja(a);break}case 16:{wMa(a,c);break}case 17:{qga(a,c);break}case 20:{p1a(a);break}case 21:{eWa(a);break}case 23:{p1a(a);break}default:hb()}while(0);return}function sq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=c+8|0;k=a+44|0;l=eX(k,f[e>>2]|0)|0;a:do if((l|0)!=(a+48|0)){m=l+20|0;h=iRa(f[f[m>>2]>>2]|0)|0;if(!(b[a+93>>0]|0))i=(f[(f[a+120>>2]|0)+(f[e>>2]<<2)>>2]|0)==1;else i=1;j=f[h+12>>2]|0;g=N_a(j)|0;do if(!g){g=f[a+132>>2]|0;e=(f[a+136>>2]|0)-g>>2;if(e>>>0<=1)Ca(112122,76797,205,76829);if((f[g+(e+-1<<2)>>2]|0)!=(c|0))Ca(78605,76797,206,76829);if(!(X5a(f[f[g+(e+-2<<2)>>2]>>2]|0)|0))break a;if(!i){BVa(f[a+16>>2]|0,h)|0;if(Iab(f[h+4>>2]|0)|0)Ca(76958,76797,231,76829);else{bLa(h,1);d=c;break}}else{d=c;n=14}}else if(i){d=c;n=14;break}else{f[e>>2]=f[g+8>>2];b[a+92>>0]=1;break a}while(0);if((n|0)==14)BVa(f[a+16>>2]|0,j)|0;f[f[m>>2]>>2]=d;eUa(c)|0;QI(k,l);b[a+92>>0]=1}while(0);return}function tq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,83830)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(113,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;HTa(l);break}else{HTa(l);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function uq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,84668)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(119,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;HTa(l);break}else{HTa(l);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function vq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,82780)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(108,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;HTa(l);break}else{HTa(l);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function wq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,82640)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(106,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;HTa(l);break}else{HTa(l);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function xq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,82807)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(109,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;HTa(l);break}else{HTa(l);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function yq(a,b){a=a|0;b=b|0;var c=0;c=o$a(b)|0;do if(!c){c=S$a(b)|0;if(c|0){c=Wn(a,c)|0;break}c=C$a(b)|0;if(c|0){c=xi(a,c)|0;break}c=N_a(b)|0;if(c|0){c=Ria(a,c)|0;break}c=E_a(b)|0;if(c|0){c=ds(a,c)|0;break}c=n$a(b)|0;if(c|0){c=VF(a,c)|0;break}c=d$a(b)|0;if(c|0){c=Tf(a,c)|0;break}c=g$a(b)|0;if(c|0){c=a9(a,c)|0;break}c=e$a(b)|0;if(c|0){c=sD(a,c)|0;break}c=Y_a(b)|0;if(c|0){c=Rp(a,c)|0;break}c=W_a(b)|0;if(c|0){c=EB(a,c)|0;break}if(ZZa(b)|0){c=qWa(a)|0;break}c=q$a(b)|0;if(!c){c=FC(a,b)|0;break}else{c=ida(a,c)|0;break}}else c=vs(a,c)|0;while(0);return c|0}function zq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Gaa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Sra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(78,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81455)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(78,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,84267)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(102,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;HTa(l);break}else{HTa(l);JGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;JGa(o);Ua(g|0)}while(0);u=n;return}function Aq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+20|0;h=l+16|0;j=l+12|0;k=l;do if(b[a+12>>0]|0){d=yCa(134176,110842)|0;d=zm(d,f[a+36>>2]|0)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(d,g)|0;du(d)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);g=Gr(a,nq(a)|0)|0;f[c+8>>2]=g;e=f[a>>2]|0;f[h>>2]=g;f[i>>2]=f[h>>2];d=bna(e,i)|0;do if(!d){f[j>>2]=g;f[i>>2]=f[j>>2];d=ana(e,i)|0;if(d|0?(f[d+12>>2]|0)==3:0){f[c+4>>2]=f[d+20>>2];break}f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;WZ(k,97127,h7a(97127)|0);x=0;ua(1869,a|0,k|0);m=x;x=0;if(m&1){m=Ia()|0;HTa(k);Ua(m|0)}else{HTa(k);break}}else f[c+4>>2]=f[d+4>>2];while(0);u=l;return}function Bq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=e+4|0;p=e+8|0;j=a;h=c;g=a;i=a;c=a;a:while(1){m=h+16|0;n=(h|0)==(d|0);l=j;a=c;k=i;while(1){if((a|0)==(b|0)|n)break a;i=k+16|0;c=f[i>>2]|0;a=f[m>>2]|0;j=c;if(!(KVa(c,a)|0))break;c=f[l+4>>2]|0;b:do if(!c){g=l;while(1){c=f[g+8>>2]|0;if((f[c>>2]|0)==(g|0))break b;g=c}}else while(1){g=f[c>>2]|0;if(!g)break;else c=g}while(0);l=c;g=c;a=c;k=c}if(KVa(a,c)|0){j=l;i=k;a=k}else{c=f[o>>2]|0;if((c|0)==(f[p>>2]|0))IL(e,i);else{f[c>>2]=j;f[o>>2]=(f[o>>2]|0)+4}c=f[g+4>>2]|0;c:do if(!c)while(1){c=f[g+8>>2]|0;if((f[c>>2]|0)==(g|0))break c;g=c}else while(1){g=f[c>>2]|0;if(!g)break;else c=g}while(0);j=c;g=c;i=c;a=c}c=f[h+4>>2]|0;d:do if(!c)while(1){c=f[h+8>>2]|0;if((f[c>>2]|0)==(h|0))break d;h=c}else while(1){h=f[c>>2]|0;if(!h)break;else c=h}while(0);h=c;c=a}return}function Cq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|4|0)!=5){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Gaa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Sra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(77,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81455)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(77,h|0,1)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,84361)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(116,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;HTa(k);break}else{HTa(k);JGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;JGa(n);Ua(e|0)}while(0);u=m;return}function Dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|4|0)!=5){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Gaa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Sra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(77,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81455)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(77,h|0,1)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,82606)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(105,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;HTa(k);break}else{HTa(k);JGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;JGa(n);Ua(e|0)}while(0);u=m;return}function Eq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k+12|0;j=k;if(!(d<<24>>24)){g=GSa(f[a+4>>2]|0)|0;do if(b[a+12>>0]|0){d=yCa(134176,110712)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(i);Wq(d,h)|0;du(d)|0;break}l=Ia()|0;JCa(i);Ua(l|0)}while(0);l=g+4|0;f[l>>2]=1;h=dk(a)|0;f[g+16>>2]=h;h=dk(a)|0;f[g+12>>2]=h;Kab(i);JF(a,i,g+8|0);i=Bbb(f[i>>2]|0)|0;do if((i|0)!=(Dxa(f[l>>2]|0)|0)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,96923,h7a(96923)|0);x=0;ua(1869,a|0,j|0);l=x;x=0;if(l&1){l=Ia()|0;HTa(j);Ua(l|0)}else{HTa(j);break}}while(0);gDa(g);f[c>>2]=g;d=1}else d=0;u=k;return d|0}function Fq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+64|0;m=q+48|0;o=q+40|0;r=q+24|0;h=q+8|0;k=q;l=q+20|0;p=q+16|0;yUa(r);i=c+8|0;I$a(o,i);GUa(h,i);i=m+4|0;n=c+32|0;j=o+4|0;g=f[h>>2]|0;h=f[h+4>>2]|0;while(1){if(!(lTa(f[o>>2]|0,f[j>>2]|0,g,h)|0)){g=3;break}x=0;e=ga(256,o|0)|0;s=x;x=0;if(s&1){g=8;break}e=f[e>>2]|0;f[k>>2]=e;x=0;wa(82,m|0,r|0,k|0,k|0);s=x;x=0;if(s&1){g=9;break}if(b[i>>0]|0?(f[l>>2]=e,s=f[n>>2]|0,x=0,f[m>>2]=f[l>>2],wa(83,a|0,m|0,d|0,s|0),s=x,x=0,s&1):0){g=8;break}RYa(o)}do if((g|0)==3){e=c+24|0;x=0;wa(82,o|0,r|0,e|0,e|0);s=x;x=0;if(s&1){e=Ia()|0;break}if(b[o+4>>0]|0?(f[p>>2]=f[e>>2],s=f[n>>2]|0,x=0,f[m>>2]=f[p>>2],wa(83,a|0,m|0,d|0,s|0),s=x,x=0,s&1):0){e=Ia()|0;break}MTa(r);u=q;return}else if((g|0)==8){e=Ia()|0;g=11}else if((g|0)==9){e=Ia()|0;g=11}while(0);MTa(r);Ua(e|0)}function Gq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+32|0;e=d+12|0;g=d;c=a+12|0;do if((p_(c,b)|0)==(a+16|0)){c=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;g=h7a(65065)|0;x=0;va(87,e|0,65065,g|0);g=x;x=0;if(!(g&1)){x=0;ua(261,c|0,e|0);g=x;x=0;if(g&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;HTa(e);if(!b)break}else a=Ia()|0;La(c|0)}else{e=WW(c,b)|0;if((f[e>>2]|0)!=(f[e+4>>2]|0)){g=(WW(c,b)|0)+4|0;u=d;return f[(f[g>>2]|0)+-4>>2]|0}c=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=h7a(65117)|0;x=0;va(87,g|0,65117,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,c|0,g|0);e=x;x=0;if(e&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;HTa(g);if(!b)break}else a=Ia()|0;La(c|0)}while(0);Ua(a|0);return 0}function Hq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;a:do switch(b-a>>2|0){case 1:case 0:{d=1;break}case 2:{d=b+-4|0;if(Mv(f[c>>2]|0,f[c+4>>2]|0,f[d>>2]|0,f[a>>2]|0)|0){c=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=c;d=1}else d=1;break}case 3:{Xx(a,a+4|0,b+-4|0,c)|0;d=1;break}case 4:{gC(a,a+4|0,a+8|0,b+-4|0,c)|0;d=1;break}case 5:{lx(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;d=1;break}default:{e=a+8|0;Xx(a,a+4|0,e,c)|0;j=c+4|0;i=a+12|0;d=0;while(1){if((i|0)==(b|0)){d=1;break a}if(Mv(f[c>>2]|0,f[j>>2]|0,f[i>>2]|0,f[e>>2]|0)|0){h=f[i>>2]|0;g=i;while(1){f[g>>2]=f[e>>2];if((e|0)==(a|0)){e=a;break}g=e+-4|0;if(Mv(f[c>>2]|0,f[j>>2]|0,h,f[g>>2]|0)|0){k=e;e=g;g=k}else break}f[e>>2]=h;d=d+1|0;if((d|0)==8)break}e=i;i=i+4|0}d=(i+4|0)==(b|0)}}while(0);return d|0}function Iq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;l=m;a:do if(!b){g=n+56|0;h=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Gaa(n+56|0,h);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Sra(h);f[h>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[g+(b<<2)>>2]=0;b=b+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;b=ia(77,n|0,0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,i=ia(62,b|0,82034)|0,g=x,x=0,!(g&1)):0)?(x=0,j=ia(77,i|0,0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122324)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,d|0)|0,d=x,x=0,!(d&1)):0)?(x=0,ua(107,l|0,h|0),d=x,x=0,!(d&1)):0){x=0;wa(108,a|0,l|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(l);break}else{HTa(l);JGa(n);break a}}else o=13;while(0);if((o|0)==13)b=Ia()|0;JGa(n);Ua(b|0)}while(0);u=m;return}function Jq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if(f[a+8>>2]|0){d=Yea(a)|0;while(1){if(!d)break a;if((b|0)==(c|0))break;f[d+16>>2]=f[b+16>>2];f[d+20>>2]=f[b+20>>2];e=GT(d)|0;sU(a,d);d=f[b+4>>2]|0;if(!d)while(1){d=f[b+8>>2]|0;if((f[d>>2]|0)==(b|0)){b=d;break}else b=d}else{b=d;while(1){d=f[b>>2]|0;if(!d)break;else b=d}}d=e}b=d;while(1){d=f[b+8>>2]|0;if(!d)break;b=d}SX(a,b);b=c}while(0);d=b;while(1){if((d|0)==(c|0))break;xG(a,d+16|0);b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}return}function Kq(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;g=a+4|0;h=a+8|0;c=f[a>>2]|0;a:while(1){d=b[c>>0]|0;b:do if(!(o6a(d<<24>>24)|0)){switch(d<<24>>24){case 59:{if((b[c+1>>0]|0)!=59)break a;if((b[c+2>>0]|0)==64){Dn(a);c=f[a>>2]|0}c:while(1){switch(b[c>>0]|0){case 10:case 0:break c;default:{}}e=c+1|0;f[a>>2]=e;c=e}f[g>>2]=(f[g>>2]|0)+1;c=c+1|0;f[a>>2]=c;f[h>>2]=c;break b}case 40:break;default:break a}if((b[c+1>>0]|0)!=59)break a;c=c+2|0;f[a>>2]=c;d=1;while(1){d:while(1){switch(b[c>>0]|0){case 0:break a;case 40:{e=c+1|0;if((b[e>>0]|0)==59){e=22;break d}else c=e;break}case 59:{e=c+1|0;if((b[e>>0]|0)==41){e=25;break d}else c=e;break}case 10:{f[g>>2]=(f[g>>2]|0)+1;f[h>>2]=c;c=c+1|0;break}default:c=c+1|0}f[a>>2]=c}if((e|0)==22){c=c+2|0;f[a>>2]=c;d=d+1|0}else if((e|0)==25){c=c+2|0;f[a>>2]=c;d=d+-1|0;if(!d)break b}}}else{if(d<<24>>24==10){f[g>>2]=(f[g>>2]|0)+1;c=c+1|0;f[h>>2]=c}else c=c+1|0;f[a>>2]=c}while(0)}return}function Lq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;k=c;j=o;n=a+11|0;e=b[n>>0]|0;g=e<<24>>24<0;if(g){i=(f[a+8>>2]&2147483647)+-1|0;m=f[a+4>>2]|0}else{i=10;m=e&255}l=d-k|0;do if(l|0){if(g){g=f[a>>2]|0;h=f[a+4>>2]|0}else{g=a;h=e&255}if(aWa(c,g,g+h|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;SM(j,c,d);n=b[j+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,a|0,(m?f[j>>2]|0:j)|0,(m?f[j+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){o=Ia()|0;HTa(j);Ua(o|0)}else{HTa(j);break}}if((i-m|0)>>>0>>0){QH(a,i,m+l-i|0,m,m,0);e=b[n>>0]|0}if(e<<24>>24<0)i=f[a>>2]|0;else i=a;h=d+(m-k)|0;g=i+m|0;e=c;while(1){if((e|0)==(d|0))break;T0a(g,b[e>>0]|0);g=g+1|0;e=e+1|0}T0a(i+h|0,0);e=m+l|0;if((b[n>>0]|0)<0){f[a+4>>2]=e;break}else{b[n>>0]=e;break}}while(0);u=o;return}function Mq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|0)!=8){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Gaa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Sra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(113,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81455)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(113,h|0,8)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,83992)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(102,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;HTa(k);break}else{HTa(k);JGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;JGa(n);Ua(e|0)}while(0);u=m;return}function Nq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+112|0;c=j+48|0;d=j+92|0;e=j+96|0;i=j+80|0;g=j+64|0;m=j+32|0;l=j+16|0;k=j;n=f[a+36>>2]|0;Bbb(n)|0;U0a(d,n);f[e>>2]=f[33165];n=a+44|0;a=f[n>>2]|0;f[n>>2]=a+1;m$a(m,a);f[c>>2]=f[m>>2];f[c+4>>2]=f[m+4>>2];f[c+8>>2]=f[m+8>>2];f[c+12>>2]=f[m+12>>2];a=a0(d,c)|0;f[g>>2]=a;m$a(l,h[b+8>>0]|0);f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];f[c+12>>2]=f[l+12>>2];a=a0(d,c)|0;f[g+4>>2]=a;m$a(k,f[b+12>>2]|0);f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];a=a0(d,c)|0;f[g+8>>2]=a;b=b+24|0;f[g+12>>2]=f[b>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,4);a=x;x=0;if(a&1){n=Ia()|0;uSa(i);Ua(n|0)}mda(i,g,g+16|0);x=0;f[c>>2]=f[e>>2];a=ka(10,d|0,c|0,i|0,1)|0;n=x;x=0;if(n&1){n=Ia()|0;uSa(i);Ua(n|0)}else{f[b>>2]=a;uSa(i);u=j;return}}function Oq(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=a+208|0;M7(c);d=f[a+40>>2]|0;b=f[a+36>>2]|0;while(1){if((b|0)==(d|0))break;g=f[b>>2]|0;e=vZ(c,g)|0;f[e>>2]=g;b=b+4|0}d=a+172|0;E6(d);c=f[a+4>>2]|0;b=f[a>>2]|0;while(1){if((b|0)==(c|0))break;e=f[b>>2]|0;g=vZ(d,e)|0;f[g>>2]=e;b=b+4|0}c=a+184|0;a8(c);d=f[a+16>>2]|0;b=f[a+12>>2]|0;while(1){if((b|0)==(d|0))break;e=f[b>>2]|0;g=vZ(c,e)|0;f[g>>2]=e;b=b+4|0}c=a+196|0;N7(c);d=f[a+28>>2]|0;b=f[a+24>>2]|0;while(1){if((b|0)==(d|0))break;e=f[b>>2]|0;g=vZ(c,e)|0;f[g>>2]=e;b=b+4|0}c=a+220|0;b8(c);d=f[a+52>>2]|0;b=f[a+48>>2]|0;while(1){if((b|0)==(d|0))break;e=f[b>>2]|0;g=vZ(c,e)|0;f[g>>2]=e;b=b+4|0}return}function Pq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;j=u;u=u+32|0;i=j;k=j+12|0;a:do if(e)fna(a,b,d,g);else{b:do switch(b|0){case 8:case 4:case 2:case 1:break;default:{h=f[a+44>>2]|0;zY(k,b);x=0;ia(83,k|0,84311)|0;e=x;x=0;do if(!(e&1)){f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}e=Bbb(f[a+32>>2]|0)|0;x=0;wa(102,h|0,i|0,g|0,e|0);h=x;x=0;if(h&1){e=Ia()|0;HTa(i);break}else{HTa(i);HTa(k);break b}}else e=Ia()|0;while(0);HTa(k);Ua(e|0)}}while(0);Joa(a,b>>>0<=d>>>0,g,84327)|0;switch(c|0){case 3:case 1:{Joa(a,b>>>0<5,g,84327)|0;break a}case 4:case 2:{Joa(a,b>>>0<9,g,84327)|0;break a}default:break a}}while(0);u=j;return}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+112|0;c=j+48|0;d=j+92|0;e=j+96|0;i=j+80|0;g=j+64|0;m=j+32|0;l=j+16|0;k=j;n=f[a+36>>2]|0;Bbb(n)|0;U0a(d,n);f[e>>2]=f[33166];n=a+44|0;a=f[n>>2]|0;f[n>>2]=a+1;m$a(m,a);f[c>>2]=f[m>>2];f[c+4>>2]=f[m+4>>2];f[c+8>>2]=f[m+8>>2];f[c+12>>2]=f[m+12>>2];a=a0(d,c)|0;f[g>>2]=a;m$a(l,h[b+8>>0]|0);f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];f[c+12>>2]=f[l+12>>2];a=a0(d,c)|0;f[g+4>>2]=a;m$a(k,f[b+12>>2]|0);f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];a=a0(d,c)|0;f[g+8>>2]=a;b=b+24|0;f[g+12>>2]=f[b>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,4);a=x;x=0;if(a&1){n=Ia()|0;uSa(i);Ua(n|0)}mda(i,g,g+16|0);x=0;f[c>>2]=f[e>>2];a=ka(10,d|0,c|0,i|0,1)|0;n=x;x=0;if(n&1){n=Ia()|0;uSa(i);Ua(n|0)}else{f[b>>2]=a;uSa(i);u=j;return}}function Rq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|0)!=1){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Gaa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Sra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(78,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81455)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(78,h|0,1)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,82574)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(105,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;HTa(k);break}else{HTa(k);JGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;JGa(n);Ua(e|0)}while(0);u=m;return}function Sq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if(f[a+8>>2]|0){d=Yea(a)|0;while(1){if(!d)break a;if((b|0)==(c|0))break;f[d+16>>2]=f[b+16>>2];f[d+20>>2]=f[b+20>>2];e=GT(d)|0;KU(a,d);d=f[b+4>>2]|0;if(!d)while(1){d=f[b+8>>2]|0;if((f[d>>2]|0)==(b|0)){b=d;break}else b=d}else{b=d;while(1){d=f[b>>2]|0;if(!d)break;else b=d}}d=e}b=d;while(1){d=f[b+8>>2]|0;if(!d)break;b=d}GY(a,b);b=c}while(0);d=b;while(1){if((d|0)==(c|0))break;WG(a,d+16|0);b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}return}function Tq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if(b|0){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Gaa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Sra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(113,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81455)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(113,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,85313)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(126,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;HTa(k);break}else{HTa(k);JGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;JGa(n);Ua(e|0)}while(0);u=m;return}function Uq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Gaa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Sra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82034)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,85167)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(102,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(k);break}else{HTa(k);JGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;JGa(m);Ua(b|0)}while(0);u=l;return}function Vq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{rS(a+16|0,1417,b);e=11;break}case 2:{d=a+16|0;rS(d,1418,b);g=(qSa(c)|0)+16|0;if(f[g>>2]|0){rS(d,1416,(qSa(c)|0)+16|0);rS(d,1419,b)}rS(d,1416,(qSa(c)|0)+12|0);rS(d,1420,b);rS(d,1416,(qSa(c)|0)+8|0);break}case 3:{rS(a+16|0,1421,b);e=11;break}case 4:{rS(a+16|0,1422,b);e=11;break}case 5:{rS(a+16|0,1423,b);e=11;break}case 20:{rS(a+16|0,1424,b);e=11;break}case 23:{rS(a+16|0,1424,b);e=11;break}default:e=11}if((e|0)==11?(lY(a,b),(f[c>>2]|0)==3):0)rS(a+16|0,1425,b);return}function Wq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;x=0;ua(99,j|0,a|0);h=x;x=0;a:do if(h&1){d=Ja(0)|0;e=a;c=a;k=13}else{b:do if(b[j>>0]|0){d=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;g=f[d+24>>2]|0;h=g;do if(!g){i=d;k=9}else{d=h+24|0;e=f[d>>2]|0;if((e|0)==(f[h+28>>2]|0)){g=f[(f[g>>2]|0)+52>>2]|0;d=X6a(c)|0;x=0;d=ia(g|0,h|0,d|0)|0;h=x;x=0;if(h&1)break}else{f[d>>2]=e+1;b[e>>0]=c;d=X6a(c)|0}if(!($1a(d,-1)|0))break b;i=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;k=9}while(0);if((k|0)==9?(x=0,ua(100,i|0,f[i+16>>2]|1|0),i=x,x=0,!(i&1)):0)break;d=Ja(0)|0;eD(j);e=a;c=a;k=13;break a}while(0);eD(j)}while(0);do if((k|0)==13){Fa(d|0)|0;x=0;ta(450,e+(f[(f[c>>2]|0)+-12>>2]|0)|0);k=x;x=0;if(!(k&1)){Ga();break}d=Ia()|0;x=0;sa(6);k=x;x=0;if(k&1){k=Ja(0)|0;r2a(k)}else Ua(d|0)}while(0);u=l;return a|0}function Xq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Gaa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Sra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82034)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,82868)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(110,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(k);break}else{HTa(k);JGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;JGa(m);Ua(b|0)}while(0);u=l;return}function Yq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Gaa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Sra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82034)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,84205)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(115,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(k);break}else{HTa(k);JGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;JGa(m);Ua(b|0)}while(0);u=l;return}function Zq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Gaa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Sra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82034)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122324)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,86556)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(128,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(k);break}else{HTa(k);JGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;JGa(m);Ua(b|0)}while(0);u=l;return}function _q(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;j=n+32|0;k=n+24|0;i=n+8|0;l=n+16|0;m=n;e=c+32|0;g=f[e>>2]|0;do if(ZSa(g)|0)Tba(a,g)|0;else{h=c+28|0;d=f[h>>2]|0;if(w8a(f[d+4>>2]|0)|0)if(!g){Tba(a,d)|0;break}else{m=f[a+36>>2]|0;Bbb(m)|0;m=$Ra(m+144|0)|0;l=m+12|0;d7(l,2);j=Xba(a,f[e>>2]|0)|0;k=JDa(l,0)|0;f[k>>2]=j;k=f[h>>2]|0;l=JDa(l,1)|0;f[l>>2]=k;XJa(m,f[c+4>>2]|0);Tba(a,m)|0;break}g=c+8|0;I$a(k,g);GUa(i,g);g=k+4|0;e=f[i>>2]|0;d=f[i+4>>2]|0;while(1){if(!(lTa(f[k>>2]|0,f[g>>2]|0,e,d)|0))break;i=LOa(k)|0;f[l>>2]=f[i>>2];f[j>>2]=f[l>>2];Rca(a,j);RYa(k)}f[m>>2]=f[c+24>>2];f[j>>2]=f[m>>2];Rca(a,j);b[a+104>>0]=0}while(0);u=n;return}function $q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{rS(a+16|0,3143,b);e=11;break}case 2:{d=a+16|0;rS(d,3144,b);g=(qSa(c)|0)+16|0;if(f[g>>2]|0){rS(d,3142,(qSa(c)|0)+16|0);rS(d,3145,b)}rS(d,3142,(qSa(c)|0)+12|0);rS(d,3146,b);rS(d,3142,(qSa(c)|0)+8|0);break}case 3:{rS(a+16|0,3147,b);e=11;break}case 4:{rS(a+16|0,3148,b);e=11;break}case 5:{rS(a+16|0,3149,b);e=11;break}case 20:{rS(a+16|0,3150,b);e=11;break}case 23:{rS(a+16|0,3150,b);e=11;break}default:e=11}if((e|0)==11?(iZ(a,b),(f[c>>2]|0)==3):0)rS(a+16|0,3151,b);return}function ar(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=yCa(134176,111056)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(h);Wq(g,e)|0;du(g)|0;break}j=Ia()|0;JCa(h);Ua(j|0)}while(0);d=f[c+8>>2]|0;j=(f[d+4>>2]|0)==5;jGa(a,d);d=a+28|0;e=f[d>>2]|0;if(j)dTa(e);else{Ev(e,4)|0;e=f[d>>2]|0;d=f[c+4>>2]|0;Pr(e,m8((d|0)==5?0:d)|0)|0;E1a(h,f[33015]|0);d=a+60|0;e=f[d>>2]|0;if(e>>>0<(f[a+64>>2]|0)>>>0){f[e>>2]=f[h>>2];f[d>>2]=(f[d>>2]|0)+4}else IL(a+56|0,h);qw(a,f[c+12>>2]|0);if(f[c+16>>2]|0)PI(a,c);ZT(a,c)}u=i;return}function br(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;o=p+12|0;d=p+4|0;g=p+8|0;h=p;JK(o,a);x=0;va(88,d|0,((b[o+11>>0]|0)<0?f[o>>2]|0:o)|0,0);n=x;x=0;if(n&1){p=Ia()|0;HTa(o);Ua(p|0)}HTa(o);e=f[d>>2]|0;E1a(g,e);f[o>>2]=f[g>>2];if(!(oma(c,o)|0)){d=n8(20)|0;sPa(d);E1a(o,e);f[d>>2]=f[o>>2];n=a+11|0;if((b[n>>0]|0)<0){l=a;m=a;e=f[a>>2]|0}else{l=a;m=a;e=a}i=Ooa(b[e>>0]|0)|0;f[d+4>>2]=i;a=a+4|0;i=d+8|0;j=d+12|0;k=d+16|0;h=1;while(1){e=b[n>>0]|0;g=e<<24>>24<0;if(g)e=f[a>>2]|0;else e=e&255;if(h>>>0>=e>>>0)break;if(g)e=f[m>>2]|0;else e=l;e=Ooa(b[e+h>>0]|0)|0;f[o>>2]=e;g=f[j>>2]|0;if(g>>>0<(f[k>>2]|0)>>>0){f[g>>2]=e;f[j>>2]=g+4}else IL(i,o);h=h+1|0}zs(c,d)}else{E1a(h,e);f[o>>2]=f[h>>2];d=KI(c,o)|0}u=p;return d|0}function cr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l+16|0;i=l+24|0;h=l+8|0;j=l;f[k>>2]=b;c=f[a+24>>2]|0;b=(f[a+28>>2]|0)-c>>2;if(b>>>0>1){e=f[c+(b+-2<<2)>>2]|0;g=e_(a+48|0,k)|0;f[g>>2]=e}else{g=e_(a+48|0,k)|0;f[g>>2]=0}c=f[k>>2]|0;d=o$a(c)|0;do if(!d){b=n$a(c)|0;if(b|0){CW(a+36|0,b+8|0)|0;break}d=d$a(c)|0;if(d|0){e=d+8|0;I$a(i,e);GUa(h,e);e=a+36|0;g=i+4|0;c=f[h>>2]|0;b=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,c,b)|0))break;h=LOa(i)|0;f[j>>2]=f[h>>2];CW(e,j)|0;RYa(i)}CW(e,d+24|0)|0}}else{b=d+8|0;if(Iab(f[b>>2]|0)|0){j=CW(a+36|0,b)|0;f[j>>2]=d}}while(0);JU(a,f[k>>2]|0,1);u=l;return}function dr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{rS(a+16|0,591,b);e=11;break}case 2:{d=a+16|0;rS(d,592,b);g=(qSa(c)|0)+16|0;if(f[g>>2]|0){rS(d,590,(qSa(c)|0)+16|0);rS(d,593,b)}rS(d,590,(qSa(c)|0)+12|0);rS(d,594,b);rS(d,590,(qSa(c)|0)+8|0);break}case 3:{rS(a+16|0,595,b);e=11;break}case 4:{rS(a+16|0,596,b);e=11;break}case 5:{rS(a+16|0,597,b);e=11;break}case 20:{rS(a+16|0,598,b);e=11;break}case 23:{rS(a+16|0,598,b);e=11;break}default:e=11}if((e|0)==11?(qZ(a,b),(f[c>>2]|0)==3):0)rS(a+16|0,599,b);return}function er(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=Ht(a,b,c,d)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(S2(+p[g+16>>3],+p[h+16>>3])|0){f[d>>2]=g;f[e>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(S2(+p[h+16>>3],+p[e+16>>3])|0){f[c>>2]=h;f[d>>2]=e;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(S2(+p[h+16>>3],+p[e+16>>3])|0){f[b>>2]=h;f[c>>2]=e;g=f[b>>2]|0;h=f[a>>2]|0;if(S2(+p[g+16>>3],+p[h+16>>3])|0){f[a>>2]=g;f[b>>2]=h;g=i+4|0}else g=i+3|0}}}else g=i;return g|0}function fr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;h=g+12|0;i=g;f[a>>2]=0;c=b+16|0;b=0;while(1){d=(kra(f[c>>2]|0)|0)&255;e=d&127;if((((b|0)==0?127:(1<<32-b)+127|0)&e|0)!=(e|0)){c=3;break}f[a>>2]=f[a>>2]|e<>>0>31){c=11;break}}do if((c|0)==3){d=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;i=h7a(95684)|0;x=0;va(87,h|0,95684,i|0);i=x;x=0;if(!(i&1)){x=0;ua(261,d|0,h|0);i=x;x=0;if(i&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(h);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==11){d=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=h7a(95727)|0;x=0;va(87,i|0,95727,h|0);h=x;x=0;if(!(h&1)){x=0;ua(261,d|0,i|0);h=x;x=0;if(h&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(i);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==18){u=g;return}while(0);Ua(b|0)}function gr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=u;u=u+80|0;i=h+32|0;k=h+16|0;n=h;l=h+64|0;j=h+48|0;g=h+52|0;m=NKa(f[b>>2]|0,c,1)|0;m$a(k,0);f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];f[i+12>>2]=f[k+12>>2];k=a0(b,i)|0;k=Fpa(f[b>>2]|0,15,m,k)|0;m=NKa(f[b>>2]|0,c,1)|0;m$a(n,d);f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];c=a0(b,i)|0;c=Fpa(f[b>>2]|0,0,m,c)|0;f[l>>2]=f[a+16>>2];f[i>>2]=f[l>>2];d=ACa(b,i,1)|0;d=x5(f[b>>2]|0,4,0,0,4,d,1)|0;d=Fpa(f[b>>2]|0,22,c,d)|0;d=Fpa(f[b>>2]|0,8,k,d)|0;f[j>>2]=f[a+20>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;x=0;f[i>>2]=f[j>>2];c=ka(10,b|0,i|0,g|0,0)|0;a=x;x=0;if(!(a&1)?(x=0,e=ka(8,b|0,d|0,c|0,0)|0,n=x,x=0,!(n&1)):0){uSa(g);u=h;return e|0}n=Ia()|0;uSa(g);Ua(n|0);return 0}function hr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+188|0;e=(f[a+192>>2]|0)-(f[l>>2]|0)>>2;if(e>>>0>>0)Ca(97493,87234,1630,97525);if(c>>>0>d>>>0)Ca(97543,87234,1631,97525);if(e>>>0>>0)Ca(97556,87234,1632,97525);i=b+12|0;j=d+-1|0;h=b+16|0;e=-1;g=c;while(1){if(g>>>0>=d>>>0)break;b=f[(f[l>>2]|0)+(g<<2)>>2]|0;aaa(i,b);if((g>>>0>>0?o2a(f[b+4>>2]|0)|0:0)?(U0a(k,f[a>>2]|0),n=gNa(f[k>>2]|0,b)|0,b=MCa(i)|0,f[b>>2]=n,(e|0)==-1):0)e=(Bbb(f[h>>2]|0)|0)+-1|0;g=g+1|0}cba(l,c);if((e|0)!=-1?(n=MCa(i)|0,(f[(f[n>>2]|0)+4>>2]|0)==0):0){Ax(a,97586);U0a(k,f[a>>2]|0);c=JDa(i,e)|0;c=(_Ra(f[c>>2]|0)|0)+8|0;c=f[c>>2]|0;n=c+4|0;l=xka(f[a+124>>2]|0,f[n>>2]|0)|0;c=Lya(k,l,c)|0;d=JDa(i,e)|0;f[d>>2]=c;aaa(i,NKa(f[k>>2]|0,l,f[n>>2]|0)|0)}u=m;return}function ir(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;c=o;k=o+4|0;f[c>>2]=b;d=f[a+28>>2]|0;if(d|0?(h=Vz(d+68|0,c)|0,h|0):0){c=h+12|0;w4(k,(f[(f[a+24>>2]|0)+132>>2]|0)+((f[c>>2]|0)*12|0)|0);e=a+32|0;g=h+16|0;d=h+20|0;do if(JPa(e,f[c>>2]|0,f[g>>2]|0,f[d>>2]|0)|0){f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];x=0;c=ia(62,f[a>>2]|0,73890)|0;h=x;x=0;if(((((((!(h&1)?(x=0,i=ia(84,c|0,k|0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,116870)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(113,j|0,f[g>>2]|0)|0,j=x,x=0,!(j&1)):0)?(x=0,m=ia(62,l|0,116870)|0,l=x,x=0,!(l&1)):0)?(x=0,n=ia(113,m|0,f[d>>2]|0)|0,m=x,x=0,!(m&1)):0)?(x=0,ia(71,n|0,10)|0,n=x,x=0,!(n&1)):0)?(x=0,ia(115,f[a>>2]|0,f[a+4>>2]|0)|0,n=x,x=0,!(n&1)):0)break;o=Ia()|0;HTa(k);Ua(o|0)}while(0);HTa(k)}no(a,b);u=o;return}function jr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;h=n+4|0;i=n;g=a+92|0;d=Bbb(f[g>>2]|0)|0;e=a+96|0;Qx(c,d>>>0>(Bbb(f[e>>2]|0)|0)>>>0);Dx(c,(Bbb(f[e>>2]|0)|0)>>>0<65536,81489);e=a+114|0;if(!(b[e>>0]|0))d=1;else d=y1a(a+88|0)|0;Dx(c,d,95639);if(b[e>>0]|0)Dx(c,(f[c+4>>2]&1|0)!=0,81515);e=f[a+104>>2]|0;d=f[a+100>>2]|0;while(1){if((d|0)==(e|0))break;a=f[d>>2]|0;if(Qp(c,f[a+4>>2]|0,1,a,81361,0)|0?(l=f[d>>2]|0,j=d+4|0,k=d+8|0,cLa(h,(f[k>>2]|0)-(f[j>>2]|0)|0,0),cLa(i,(Bbb(f[g>>2]|0)|0)<<16,0),l=iN(l,f[h>>2]|0,f[i>>2]|0)|0,Tv(c,l,f[d>>2]|0,81390,0)|0,l=(f[k>>2]|0)-(f[j>>2]|0)|0,mx(c,l>>>0<=(Bbb(f[g>>2]|0)|0)<<16>>>0,l,81558),m=f[d>>2]|0,G6a(f[m>>2]|0)|0):0){a=(ORa((LRa(m)|0)+8|0)|0)+l|0;a=a>>>0<=(Bbb(f[g>>2]|0)|0)<<16>>>0;mx(c,a,(f[k>>2]|0)-(f[j>>2]|0)|0,81602)}d=d+16|0}u=n;return}function kr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=b+8|0;lya(a,(f[(f[d>>2]|0)+4>>2]|4|0)==5,b);g=b+16|0;if(!(f[g>>2]|0)){Kxa(a,o2a(f[(f[b+12>>2]|0)+4>>2]|0)|0,b);if((f[(f[d>>2]|0)+4>>2]|0)!=5)Pja(a,f[b+4>>2]|0,0,b,85532)}else{e=b+4|0;c=f[e>>2]|0;if((c|0)==5){c=b+12|0;if((f[(f[d>>2]|0)+4>>2]|0)!=5){Pja(a,f[(f[c>>2]|0)+4>>2]|0,5,b,85678);Pja(a,f[(f[g>>2]|0)+4>>2]|0,5,b,85725)}}else{d=b+12|0;Qda(a,f[(f[d>>2]|0)+4>>2]|0,c,b,85585);Qda(a,f[(f[g>>2]|0)+4>>2]|0,f[e>>2]|0,b,85631);c=d}d=f[(f[c>>2]|0)+4>>2]|0;if(o2a(d)|0){Pja(a,f[e>>2]|0,d,b,85773);Qda(a,f[(f[g>>2]|0)+4>>2]|0,f[(f[c>>2]|0)+4>>2]|0,b,85808)}d=f[(f[g>>2]|0)+4>>2]|0;if(o2a(d)|0){Pja(a,f[e>>2]|0,d,b,85845);Qda(a,f[(f[c>>2]|0)+4>>2]|0,f[(f[g>>2]|0)+4>>2]|0,b,85881)}}return}function lr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;g=k+16|0;h=k+8|0;i=k;f[g>>2]=(c|0)==0?0:2;f[h>>2]=g;f[h+4>>2]=b;j=a+4|0;e=0;a:while(1){d=f[a>>2]|0;if(e>>>0>=(f[j>>2]|0)-d>>2>>>0){d=3;break}d=f[d+(e<<2)>>2]|0;if(d|0){switch(f[d>>2]|0){case 0:{Nha(h);GXa(i,c,b);_m(i,f[d+4>>2]|0);break}case 6:case 3:case 1:{Nha(h);GXa(i,c,b);_m(i,f[d+4>>2]|0);f[g>>2]=(f[g>>2]|0)+1;break}case 7:case 5:case 2:{f[g>>2]=(f[g>>2]|0)+-1;Nha(h);yCa(b,80855)|0;break}case 4:{f[g>>2]=(f[g>>2]|0)+-1;Nha(h);yCa(b,117204)|0;f[g>>2]=(f[g>>2]|0)+1;Nha(h);break}default:{d=10;break a}}zma(134008,10)|0}e=e+1|0}if((d|0)==3){u=k;return b|0}else if((d|0)==10)hb();return 0}function mr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+24|0;h=i;M0a(g);d=f[c+12>>2]|0;if((d|0)!=0?(mz(h,b,d),f[g>>2]=f[h>>2],f[g+4>>2]=f[h+4>>2],f[g+8>>2]=f[h+8>>2],f[g+12>>2]=f[h+12>>2],f[g+16>>2]=f[h+16>>2],D0a(g)|0):0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else e=4;a:do if((e|0)==4){d=f[c+16>>2]|0;do if(d|0){mz(h,b,d);if(D0a(h)|0){f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2];break a}h=Eia(h)|0;if((h|0)==0&(I|0)==0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break a}else break}while(0);f[g+16>>2]=f[c+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}while(0);u=i;return}function nr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+20|0;k=o+12|0;d=o+4|0;e=o+16|0;l=o+8|0;m=o;n=a+4|0;c=fVa(f[n>>2]|0)|0;f[k>>2]=1;tab(d);if(lRa(Or(b,1)|0)|0){f[k>>2]=2;E1a(j,jF(Or(b,1)|0)|0);i=f[j>>2]|0;f[d>>2]=i;d=i}else{d1a(j,117209);i=f[j>>2]|0;f[d>>2]=i;d=i}i=a+112|0;f[e>>2]=d;f[j>>2]=f[e>>2];d=sC(i,j)|0;e=mG(b,k)|0;g=f[k>>2]|0;h=UQa(a,Or(b,g)|0)|0;f[c+8>>2]=h;h=g+2|0;f[k>>2]=h;p=Oo(a,Or(b,g+1|0)|0)|0;f[c+12>>2]=p;if(h>>>0<(XXa(b)|0)>>>0){f[k>>2]=g+3;p=Oo(a,Or(b,h)|0)|0;f[c+16>>2]=p}g5(c,e);f[l>>2]=d;f[j>>2]=f[l>>2];_X(i,j);f[m>>2]=d;f[j>>2]=f[m>>2];if(MM(c,j)|0){p=$Ra(f[n>>2]|0)|0;f[p+8>>2]=d;aaa(p+12|0,c);XJa(p,f[c+4>>2]|0);c=p}u=o;return c|0}function or(a,b){a=a|0;b=b|0;var c=0,d=0;a:do if(f[33160]|0){c=Fma()|0;while(1){if(!c)break a;if((a|0)==(b|0))break;f[c+16>>2]=f[a+16>>2];f[c+20>>2]=f[a+20>>2];d=GT(c)|0;fW(c);c=f[a+4>>2]|0;if(!c)while(1){c=f[a+8>>2]|0;if((f[c>>2]|0)==(a|0)){a=c;break}else a=c}else{a=c;while(1){c=f[a>>2]|0;if(!c)break;else a=c}}c=d}a=c;while(1){c=f[a+8>>2]|0;if(!c)break;a=c}o_(a);a=b}while(0);c=a;while(1){if((c|0)==(b|0))break;aH(c+16|0);a=f[c+4>>2]|0;if(!a)while(1){a=f[c+8>>2]|0;if((f[a>>2]|0)==(c|0))break;else c=a}else while(1){c=f[a>>2]|0;if(!c)break;else a=c}c=a}return}function pr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+80|0;d=h+48|0;e=h+24|0;g=h;Mw(d,b,f[c+8>>2]|0);if(!(D0a(d)|0)){Mw(e,b,f[c+12>>2]|0);if(!(D0a(e)|0)){Mw(g,b,f[c+16>>2]|0);if(D0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{g=(ORa(g)|0)==0;g=g?e:d;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=h;return}function qr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;k=c;j=o;n=a+11|0;e=b[n>>0]|0;g=e<<24>>24<0;if(g){i=(f[a+8>>2]&2147483647)+-1|0;m=f[a+4>>2]|0}else{i=10;m=e&255}l=d-k|0;do if(l|0){if(g){g=f[a>>2]|0;h=f[a+4>>2]|0}else{g=a;h=e&255}if(aWa(c,g,g+h|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;nQ(j,c,d);n=b[j+11>>0]|0;m=n<<24>>24<0;x=0;ja(49,a|0,(m?f[j>>2]|0:j)|0,(m?f[j+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){o=Ia()|0;HTa(j);Ua(o|0)}else{HTa(j);break}}if((i-m|0)>>>0>>0){uM(a,i,m+l-i|0,m,m);e=b[n>>0]|0}if(e<<24>>24<0)i=f[a>>2]|0;else i=a;h=d+(m-k)|0;g=i+m|0;e=c;while(1){if((e|0)==(d|0))break;T0a(g,b[e>>0]|0);g=g+1|0;e=e+1|0}T0a(i+h|0,0);e=m+l|0;if((b[n>>0]|0)<0){f[a+4>>2]=e;break}else{b[n>>0]=e;break}}while(0);u=o;return a|0}function rr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;a:do if(!a){d=f[c>>2]|0;a=f[d>>2]|0;if(!a)d=0;else{e=d;d=0;do{if(a>>>0>127){a=YF(i,a)|0;if((a|0)==-1){d=-1;break a}}else a=1;d=a+d|0;e=e+4|0;a=f[e>>2]|0}while((a|0)!=0)}}else{b:do if(d>>>0>3){e=d;g=f[c>>2]|0;while(1){h=f[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=YF(a,h)|0;if((h|0)==-1){d=-1;break a}a=a+h|0;e=e-h|0}else{b[a>>0]=h;a=a+1|0;e=e+-1|0;g=f[c>>2]|0}g=g+4|0;f[c>>2]=g;if(e>>>0<=3)break b}b[a>>0]=0;f[c>>2]=0;d=d-e|0;break a}else e=d;while(0);if(e){g=f[c>>2]|0;while(1){h=f[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=20;break}h=YF(i,h)|0;if((h|0)==-1){d=-1;break a}if(e>>>0>>0){g=23;break}YF(a,f[g>>2]|0)|0;a=a+h|0;e=e-h|0}else{b[a>>0]=h;a=a+1|0;e=e+-1|0;g=f[c>>2]|0}g=g+4|0;f[c>>2]=g;if(!e)break a}if((g|0)==20){b[a>>0]=0;f[c>>2]=0;d=d-e|0;break}else if((g|0)==23){d=d-e|0;break}}}while(0);u=j;return d|0}function sr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110732)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=c+12|0;jGa(a,f[j>>2]|0);a:do if(((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,jGa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)?(j=c+20|0,jGa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0){d=a+28|0;Ev(f[d>>2]|0,-2)|0;switch(f[c+24>>2]|0){case 1:{Ev(f[d>>2]|0,1)|0;CX(a,4,4,0);break a}case 2:{Ev(f[d>>2]|0,2)|0;CX(a,8,8,0);break a}default:hb()}}while(0);u=i;return}function tr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{rS(a,482,b);d=11;break}case 2:{rS(a,483,b);e=(qSa(c)|0)+16|0;if(f[e>>2]|0){rS(a,481,(qSa(c)|0)+16|0);rS(a,484,b)}rS(a,481,(qSa(c)|0)+12|0);rS(a,485,b);rS(a,481,(qSa(c)|0)+8|0);break}case 3:{rS(a,486,b);d=11;break}case 4:{rS(a,487,b);d=11;break}case 5:{rS(a,488,b);d=11;break}case 20:{rS(a,489,b);d=11;break}case 23:{rS(a,489,b);d=11;break}default:d=11}if((d|0)==11?(cZ(a,b),(f[c>>2]|0)==3):0)rS(a,490,b);return}function ur(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;n=m+8|0;g=m+4|0;h=m;f[n>>2]=0;i=n+4|0;f[i>>2]=0;j=n+8|0;f[j>>2]=0;l=a+8|0;k=f[a+12>>2]|0;e=f[l>>2]|0;a:while(1){if((e|0)==(k|0)){c=3;break}b=f[e>>2]|0;f[g>>2]=b;do if((b|0)==2){f[h>>2]=1;b=f[i>>2]|0;c=f[j>>2]|0;if(b>>>0>>0){f[b>>2]=1;d=b+4|0;f[i>>2]=d;b=c}else{x=0;ua(1871,n|0,h|0);d=x;x=0;if(d&1){c=13;break a}d=f[i>>2]|0;b=f[j>>2]|0}f[h>>2]=1;if(d>>>0>=b>>>0){x=0;ua(1871,n|0,h|0);d=x;x=0;if(d&1){c=14;break a}}else{f[d>>2]=1;f[i>>2]=d+4}}else{c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(260,n|0,g|0);d=x;x=0;if(d&1){c=18;break a}else break}else{f[c>>2]=b;f[i>>2]=c+4;break}}while(0);e=e+4|0}if((c|0)==3){_8(n,l);b=a+4|0;if((f[b>>2]|0)==2)f[b>>2]=1;uSa(n);u=m;return}else if((c|0)==13)b=Ia()|0;else if((c|0)==14)b=Ia()|0;else if((c|0)==18)b=Ia()|0;uSa(n);Ua(b|0)}function vr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=c;e=0;f=a;a:while(1){if(!(e>>>0>>0&f>>>0>>0))break;k=b[f>>0]|0;j=k&255;do if(k<<24>>24<=-1){if((k&255)<194)break a;if((k&255)<224){if((l-f|0)<2)break a;if((b[f+1>>0]&-64)<<24>>24!=-128)break a;f=f+2|0;break}if((k&255)<240){if((l-f|0)<3)break a;g=b[f+1>>0]|0;h=b[f+2>>0]|0;switch(k<<24>>24){case -32:{if(!((g&-32)<<24>>24==-96&(h&-64)<<24>>24==-128))break a;break}case -19:{if(!((g&-32)<<24>>24==-128&(h&-64)<<24>>24==-128))break a;break}default:if(!((g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a}f=f+3|0;break}if((k&255)>=245)break a;if((d-e|0)>>>0<2|(l-f|0)<4)break a;g=b[f+1>>0]|0;h=b[f+2>>0]|0;i=b[f+3>>0]|0;switch(k<<24>>24){case -16:{if(!((g+112&255)<48&(h&-64)<<24>>24==-128&(i&-64)<<24>>24==-128))break a;break}case -12:{if(!((g&-16)<<24>>24==-128&(h&-64)<<24>>24==-128&(i&-64)<<24>>24==-128))break a;break}default:if(!((g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128&(i&-64)<<24>>24==-128))break a}if(((g&48)<<12|j<<18&1835008)>>>0>1114111)break a;else{e=e+1|0;f=f+4|0}}else f=f+1|0;while(0);e=e+1|0}return f-a|0}function wr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=yCa(134176,110945)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;m=LOa(i)|0;jGa(a,f[m>>2]|0);RYa(i)}d=a+28|0;m=Ev(f[d>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];f4a(j,V1(a,i)|0);Yr(m,f[j>>2]|0)|0;if((f[c+4>>2]|0)==5)dTa(f[d>>2]|0);u=l;return}function xr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;j=l;i=j;f[i>>2]=c;f[i+4>>2]=d;i=l+8|0;k=a+12|0;do if(!(b[k>>0]|0))e=-1;else{e=(f[a+4>>2]|0)-(f[a>>2]|0)|0;c=yCa(zm(yCa(tm(yCa(134176,87582)|0,c,d)|0,87596)|0,e)|0,123274)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(c,g)|0;du(c)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);lF(j,a);a:do if(b[k>>0]|0){c=a+4|0;while(1){if(e>>>0>=((f[c>>2]|0)-(f[a>>2]|0)|0)>>>0)break a;k=yCa(134176,87675)|0;m=nxa(a,e)|0;zm(yCa(Am(k,h[m>>0]|0)|0,87596)|0,e)|0;yCa(134176,87602)|0;e=e+1|0}}while(0);u=l;return a|0}function yr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;j=n;g=a+8|0;m=g+3|0;e=b[m>>0]|0;h=e<<24>>24<0;if(h){i=(f[g>>2]&2147483647)+-1|0;l=f[a+4>>2]|0}else{i=1;l=e&255}g=d-c|0;k=g>>2;do if(g|0){if(h){g=f[a>>2]|0;h=f[a+4>>2]|0}else{g=a;h=e&255}if(aWa(c,g,g+(h<<2)|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;fD(j,c,d);m=b[j+8+3>>0]|0;d=m<<24>>24<0;x=0;ja(96,a|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){n=Ia()|0;jTa(j);Ua(n|0)}else{jTa(j);break}}if((i-l|0)>>>0>>0){dB(a,i,l+k-i|0,l,l);e=b[m>>0]|0}if(e<<24>>24<0)e=f[a>>2]|0;else e=a;e=e+(l<<2)|0;while(1){if((c|0)==(d|0))break;E1a(e,f[c>>2]|0);e=e+4|0;c=c+4|0}E1a(e,0);c=l+k|0;if((b[m>>0]|0)<0){f[a+4>>2]=c;break}else{b[m>>0]=c;break}}while(0);u=n;return a|0}function zr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n;l=Ibb()|0;x=0;c=ia(72,l|0,f[a+20>>2]|0)|0;j=x;x=0;if(j&1){j=Ja(0)|0;r2a(j)}if(!c){e=0;d=a;j=0;while(1){x=0;c=ia(72,l|0,f[d+20>>2]|0)|0;a=x;x=0;if(a&1){m=6;break}if(c|0){m=14;break}h=d+24|0;c=f[h>>2]|0;if(!c){if(!e){c=n8(28)|0;SGa(c);g=c}else{g=e;c=j}i=f[h>>2]|0;if(!i)f[h>>2]=g;if(!i)break;e=g;d=i}else{d=c;c=j}j=c}if((m|0)==6){l=Ja(0)|0;r2a(l)}if((m|0)==14?e|0:0){Nya(e);ubb(j)}c=zr(d,b)|0}else{b=b+7&-8;c=a+12|0;g=0;h=f[c>>2]|0;while(1){if(h>>>0>b>>>0)break;m=h<<1;f[c>>2]=m;g=1;h=m}i=a+4|0;j=f[i>>2]|0;c=j;if(!((j|0)!=(f[a>>2]|0)?(e=a+16|0,d=f[e>>2]|0,!(g|(d+b|0)>>>0>=h>>>0)):0)){d=qbb(h)|0;f[k>>2]=d;if((f[a+8>>2]|0)>>>0>c>>>0){f[j>>2]=d;c=(f[i>>2]|0)+4|0;f[i>>2]=c}else{IL(a,k);c=f[i>>2]|0}e=a+16|0;f[e>>2]=0;d=0}c=(f[c+-4>>2]|0)+d|0;f[e>>2]=d+b}u=n;return c|0}function Ar(a){a=a|0;if(!a)Ca(110557,115839,170,110562);do switch(f[a>>2]|0){case 1:{y0a(a);break}case 2:{w2a(a);break}case 3:{K1a(a);break}case 4:{x0a(a);break}case 5:{R$a(a);break}case 6:{O1a(a);break}case 7:{O1a(a);break}case 8:{VYa(a);break}case 23:case 22:case 20:case 11:case 9:break;case 10:{B$a(a);break}case 12:{U_a(a);break}case 13:{L1a(a);break}case 14:{h1a(a);break}case 24:{V_a(a);break}case 25:{lYa(a);break}case 26:{c_a(a);break}case 27:{b_a(a);break}case 15:{i1a(a);break}case 16:{g1a(a);break}case 17:{J0a(a);break}case 18:{I0a(a);break}case 19:{N1a(a);break}case 21:{M1a(a);break}default:hb()}while(0);return}function Br(){var a=0,b=0,c=0;GU();f[33458]=47132;f[33460]=47152;f[33459]=0;Gaa(133840,134512);f[33478]=0;f[33479]=-1;FU();f[33480]=47172;f[33482]=47192;f[33481]=0;Gaa(133928,134576);f[33500]=0;f[33501]=-1;IM(134640,46452,134688);f[33502]=31180;f[33503]=31200;Gaa(134012,134640);f[33521]=0;f[33522]=-1;HM(134696,46452,134744);f[33523]=47212;f[33524]=47232;Gaa(134096,134696);f[33542]=0;f[33543]=-1;IM(134752,46204,134800);f[33544]=31180;f[33545]=31200;Gaa(134180,134752);f[33563]=0;f[33564]=-1;b=f[134176+(f[(f[33544]|0)+-12>>2]|0)+24>>2]|0;f[33586]=31180;f[33587]=31200;Gaa(134348,b);f[33605]=0;f[33606]=-1;HM(134808,46204,134856);f[33565]=47212;f[33566]=47232;Gaa(134264,134808);f[33584]=0;f[33585]=-1;b=f[134260+(f[(f[33565]|0)+-12>>2]|0)+24>>2]|0;f[33607]=47212;f[33608]=47232;Gaa(134432,b);f[33626]=0;f[33627]=-1;f[133832+(f[(f[33458]|0)+-12>>2]|0)+72>>2]=134008;f[133920+(f[(f[33480]|0)+-12>>2]|0)+72>>2]=134092;b=(f[33544]|0)+-12|0;a=134176+(f[b>>2]|0)+4|0;f[a>>2]=f[a>>2]|8192;a=(f[33565]|0)+-12|0;c=134260+(f[a>>2]|0)+4|0;f[c>>2]=f[c>>2]|8192;f[134176+(f[b>>2]|0)+72>>2]=134008;f[134260+(f[a>>2]|0)+72>>2]=134092;return}function Cr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j+8|0;h=j;do if(b[a+33>>0]|0){g=yCa(134176,110903)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;k=LOa(i)|0;Tpa(a,f[k>>2]|0);RYa(i)}Tpa(a,f[c+28>>2]|0);DS(a,c);if((f[c+4>>2]|0)==5)CM(a);u=j;return}function Dr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;d=j+16|0;e=j+12|0;k=j;i=BRa(f[a+4>>2]|0)|0;g=i+8|0;h=1;while(1){m=Or(c,h)|0;if(b8a(b[m>>0]|0)|0)break;m=yi(a,Or(c,h)|0)|0;f[e>>2]=m;f[d>>2]=f[e>>2];j8(g,d);h=h+1|0}if(Bbb(f[i+12>>2]|0)|0){e=MCa(g)|0;f[i+24>>2]=f[e>>2];MEa(g);e=h+1|0;m=UQa(a,Or(c,h)|0)|0;d=i+28|0;f[d>>2]=m;if(e>>>0<(XXa(c)|0)>>>0){f[i+32>>2]=f[d>>2];m=UQa(a,Or(c,e)|0)|0;f[d>>2]=m}u=j;return i|0}g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;m=h7a(92812)|0;x=0;va(87,k|0,92812,m|0);m=x;x=0;if(!(m&1)){x=0;ua(261,g|0,k|0);m=x;x=0;if(m&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(k);if(e)l=10}else{d=Ia()|0;l=10}if((l|0)==10)La(g|0);Ua(d|0);return 0}function Er(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;e=l+16|0;i=l;Dh(e,f[c>>2]|0);switch(f[e+12>>2]|0){case 2:{f[c>>2]=(f[c>>2]|0)+(f[e+8>>2]|0);d=f[e>>2]|0;break}case 6:{if((Bbb(b[f[e>>2]>>0]|0)|0)<<24>>24==40){Kab(i);d=f[i>>2]|0;f[e>>2]=d}else k=4;break}default:k=4}if((k|0)==4)Ca(65838,65740,403,65883);h=GR(d)|0;az(c);d=f[c>>2]|0;if((b[d>>0]|0)!=40)Ca(65897,65740,408,65883);f[c>>2]=d+1;e=i+12|0;g=i+8|0;a:while(1){az(c);d=f[c>>2]|0;if((b[d>>0]|0)==41){j=d;break}Dh(i,d);if((f[e>>2]|0)!=2){k=11;break}f[c>>2]=(f[c>>2]|0)+(f[g>>2]|0);JZ(h,f[i>>2]|0);az(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 41:{k=15;break a}case 44:break;default:{k=14;break a}}f[c>>2]=d+1}if((k|0)==11)Ca(65909,65740,414,65883);else if((k|0)==14)hb();else if((k|0)==15)j=d;f[c>>2]=j+1;VL(h,JO(a,c)|0);u=l;return h|0}function Fr(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;c=j;d=a+8|0;e=a+36|0;do if(!(qVa(f[d>>2]|0,f[e>>2]|0)|0)){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,95143,h7a(95143)|0);x=0;ua(1869,a|0,c|0);k=x;x=0;if(k&1){k=Ia()|0;HTa(c);Ua(k|0)}else{HTa(c);break}}while(0);do if(b[a+12>>0]|0){a=yCa(134176,95167)|0;a=yCa(Am(a,h[(f[f[d>>2]>>2]|0)+(f[e>>2]|0)>>0]|0)|0,87596)|0;a=yCa(zm(a,f[e>>2]|0)|0,123274)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(a,i)|0;du(a)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);i=f[d>>2]|0;k=f[e>>2]|0;f[e>>2]=k+1;u=j;return b[(f[i>>2]|0)+k>>0]|0}function Gr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;h=l+16|0;i=l+12|0;e=l+20|0;j=l;f[i>>2]=b;k=a+208|0;g=a+216|0;if(!(f[g>>2]|0)){b=f[a>>2]|0;c=f[b+16>>2]|0;b=f[b+12>>2]|0;while(1){if((b|0)==(c|0))break;d=f[b>>2]|0;if((f[d+12>>2]|0)==3){f[e>>2]=f[g>>2];m=jZ(k,e)|0;f[m>>2]=f[d>>2]}b=b+4|0}b=0;while(1){m=f[a>>2]|0;c=f[m+48>>2]|0;if(b>>>0>=(f[m+52>>2]|0)-c>>2>>>0)break;d=f[c+(b<<2)>>2]|0;f[e>>2]=f[g>>2];m=jZ(k,e)|0;f[m>>2]=f[d>>2];b=b+1|0}b=f[i>>2]|0}if((b|0)==-1){d1a(h,118445);b=f[h>>2]|0}else{do if(!(mfa(k,b)|0)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,97845,h7a(97845)|0);x=0;ua(1869,a|0,j|0);m=x;x=0;if(m&1){m=Ia()|0;HTa(j);Ua(m|0)}else{HTa(j);break}}while(0);b=jZ(k,i)|0;b=f[b>>2]|0;f[h>>2]=b}u=l;return b|0}function Hr(a,b){a=a|0;b=b|0;var c=0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{c=eO(a,b)|0;break}case 2:{c=x8(a,b)|0;break}case 3:{c=WSa(a,f[b+12>>2]|0)|0;break}case 4:{c=Zta(a,b)|0;break}case 5:{c=Zqa(a,b)|0;break}case 6:{c=qO(a,b)|0;break}case 7:{c=KN(a,b)|0;break}case 8:{c=II(a,b)|0;break}case 23:case 22:case 27:case 26:case 9:{c=0;break}case 10:{c=1;break}case 11:{c=1;break}case 12:{c=2;break}case 13:{c=yGa(a,b)|0;break}case 14:{c=Qha(a,b)|0;break}case 24:{c=100;break}case 25:{c=100;break}case 15:{c=1;break}case 16:{c=rQ(a,b)|0;break}case 17:{c=ov(a,b)|0;break}case 18:{c=H9(a,b)|0;break}case 19:{c=lUa(a,f[b+8>>2]|0)|0;break}case 20:{c=VUa(a,f[b+8>>2]|0)|0;break}case 21:{c=100;break}default:hb()}while(0);return c|0}function Ir(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=f[e>>2]|0;p=(o|0)==(d|0);do if(p){m=(b[l+24>>0]|0)==a<<24>>24;if(!m?(b[l+25>>0]|0)!=a<<24>>24:0){n=5;break}f[e>>2]=d+1;b[d>>0]=m?43:45;f[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=b[i+11>>0]|0;if(a<<24>>24==h<<24>>24?((n<<24>>24<0?f[i+4>>2]|0:n&255)|0)!=0:0){m=f[k>>2]|0;if((m-j|0)>=160){m=0;break}e=f[g>>2]|0;f[k>>2]=m+4;f[m>>2]=e;f[g>>2]=0;m=0;break}i=l+26|0;h=0;while(1){m=l+h|0;if((h|0)==26){m=i;break}if((b[m>>0]|0)==a<<24>>24)break;else h=h+1|0}m=m-l|0;if((m|0)>23)m=-1;else{switch(c|0){case 10:case 8:{if((m|0)>=(c|0)){m=-1;break a}break}case 16:{if((m|0)>=22){if(p){m=-1;break a}if((o-d|0)>=3){m=-1;break a}if((b[o+-1>>0]|0)!=48){m=-1;break a}f[g>>2]=0;m=b[31216+m>>0]|0;f[e>>2]=o+1;b[o>>0]=m;m=0;break a}break}default:{}}m=b[31216+m>>0]|0;f[e>>2]=o+1;b[o>>0]=m;f[g>>2]=(f[g>>2]|0)+1;m=0}}while(0);return m|0}function Jr(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=f[e>>2]|0;p=(o|0)==(d|0);do if(p){m=(f[l+96>>2]|0)==(a|0);if(!m?(f[l+100>>2]|0)!=(a|0):0){n=5;break}f[e>>2]=d+1;b[d>>0]=m?43:45;f[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=b[i+11>>0]|0;if((a|0)==(h|0)?((n<<24>>24<0?f[i+4>>2]|0:n&255)|0)!=0:0){m=f[k>>2]|0;if((m-j|0)>=160){m=0;break}e=f[g>>2]|0;f[k>>2]=m+4;f[m>>2]=e;f[g>>2]=0;m=0;break}i=l+104|0;h=0;while(1){m=l+(h<<2)|0;if((h|0)==26){m=i;break}if((f[m>>2]|0)==(a|0))break;else h=h+1|0}m=m-l|0;h=m>>2;if((m|0)>92)m=-1;else{switch(c|0){case 10:case 8:{if((h|0)>=(c|0)){m=-1;break a}break}case 16:{if((m|0)>=88){if(p){m=-1;break a}if((o-d|0)>=3){m=-1;break a}if((b[o+-1>>0]|0)!=48){m=-1;break a}f[g>>2]=0;m=b[31216+h>>0]|0;f[e>>2]=o+1;b[o>>0]=m;m=0;break a}break}default:{}}m=b[31216+h>>0]|0;f[e>>2]=o+1;b[o>>0]=m;f[g>>2]=(f[g>>2]|0)+1;m=0}}while(0);return m|0}function Kr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+11|0;d=b[n>>0]|0;e=d<<24>>24<0;if(e){m=f[a+4>>2]|0;j=m>>>0<11?m:11;d=(f[a+8>>2]&2147483647)+-1|0}else{m=d&255;j=m>>>0<11?m:11;d=10}if((j-m+d|0)>>>0>>0)zB(a,d,c-j+m-d|0,m,0,j,c,124695);else{if(e)l=f[a>>2]|0;else l=a;do if((j|0)!=(c|0)){i=m-j|0;if(!i){e=j;h=0;g=124695;d=c;k=17}else{if(j>>>0>c>>>0){STa(l,124695,c)|0;STa(l+c|0,l+j|0,i)|0;e=j;d=c;break}do if(l>>>0<124695>>>0&(l+m|0)>>>0>124695>>>0)if((l+j|0)>>>0>124695>>>0){STa(l,124695,j)|0;e=0;h=j;g=124695+c|0;d=c-j|0;break}else{e=j;h=0;g=124695+(c-j)|0;d=c;break}else{e=j;h=0;g=124695;d=c}while(0);k=l+h|0;STa(k+d|0,k+e|0,i)|0;k=17}}else{e=c;h=0;g=124695;d=c;k=17}while(0);if((k|0)==17)STa(l+h|0,g,d)|0;d=d-e+m|0;if((b[n>>0]|0)<0)f[a+4>>2]=d;else b[n>>0]=d;T0a(l+d|0,0)}return}function Lr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=c+44|0;j=f[i>>2]|0;n=c+24|0;o=f[n>>2]|0;if(j>>>0>>0){f[i>>2]=o;m=o}else m=j;l=h&24;a:do if((l|0)!=0?!((g|0)==1&(l|0)==24):0){if(!m){k=0;l=0}else{i=c+32|0;if((b[i+11>>0]|0)<0)i=f[i>>2]|0;l=m-i|0;k=((l|0)<0)<<31>>31}b:do switch(g|0){case 0:{i=0;j=0;break}case 1:if(!(h&8)){j=o-(f[c+20>>2]|0)|0;i=j;j=((j|0)<0)<<31>>31;break b}else{j=(f[c+12>>2]|0)-(f[c+8>>2]|0)|0;i=j;j=((j|0)<0)<<31>>31;break b}case 2:{i=l;j=k;break}default:{j=-1;i=-1;break a}}while(0);j=wOa(i|0,j|0,d|0,e|0)|0;i=I;if(!((i|0)<0|((k|0)<(i|0)|(k|0)==(i|0)&l>>>0>>0))){g=h&8;if(!((j|0)==0&(i|0)==0)){if(g|0?(f[c+12>>2]|0)==0:0){j=-1;i=-1;break}if((h&16|0)!=0&(o|0)==0){j=-1;i=-1;break}}if(g|0){f[c+12>>2]=(f[c+8>>2]|0)+j;f[c+16>>2]=m}if(h&16)f[n>>2]=(f[c+20>>2]|0)+j}else{j=-1;i=-1}}else{j=-1;i=-1}while(0);o=a;f[o>>2]=0;f[o+4>>2]=0;a=a+8|0;f[a>>2]=j;f[a+4>>2]=i;return}function Mr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=hsa(c)|0;l=f[a+4>>2]|0;a:do if(l){m=l+-1|0;n=(m&l|0)==0;if(!n)if(k>>>0>>0)j=k;else j=(k>>>0)%(l>>>0)|0;else j=m&k;a=f[(f[a>>2]|0)+(j<<2)>>2]|0;if(a){i=b[c+11>>0]|0;h=i<<24>>24<0;i=h?f[c+4>>2]|0:i&255;h=h?f[c>>2]|0:c;while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;b:do if((c|0)==(k|0)){e=a+8|0;c=b[e+11>>0]|0;d=c<<24>>24<0;c=c&255;if(((d?f[a+12>>2]|0:c)|0)==(i|0)){if(d)if(!(AQa(f[e>>2]|0,h,i)|0))break a;else break;g=h;d=e;while(1){if(!c)break a;if((b[d>>0]|0)!=(b[g>>0]|0))break b;g=g+1|0;d=d+1|0;c=c+-1|0}}}else{if(!n){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0}else c=c&m;if((c|0)!=(j|0)){a=0;break a}}while(0)}}else a=0}else a=0;while(0);return a|0}function Nr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=c;k=0;e=a;a:while(1){if(!(k>>>0>>0&e>>>0>>0))break;j=b[e>>0]|0;i=j&255;do if(j<<24>>24<=-1){if((j&255)<194)break a;if((j&255)<224){if((l-e|0)<2)break a;if((b[e+1>>0]&-64)<<24>>24!=-128)break a;e=e+2|0;break}if((j&255)<240){if((l-e|0)<3)break a;f=b[e+1>>0]|0;g=b[e+2>>0]|0;switch(j<<24>>24){case -32:{if(!((f&-32)<<24>>24==-96&(g&-64)<<24>>24==-128))break a;break}case -19:{if(!((f&-32)<<24>>24==-128&(g&-64)<<24>>24==-128))break a;break}default:if(!((f&-64)<<24>>24==-128&(g&-64)<<24>>24==-128))break a}e=e+3|0;break}if((j&255)>=245)break a;if((l-e|0)<4)break a;f=b[e+1>>0]|0;g=b[e+2>>0]|0;h=b[e+3>>0]|0;switch(j<<24>>24){case -16:{if(!((f+112&255)<48&(g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a;break}case -12:{if(!((f&-16)<<24>>24==-128&(g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a;break}default:if(!((f&-64)<<24>>24==-128&(g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a}if(((f&48)<<12|i<<18&1835008)>>>0>1114111)break a;else e=e+4|0}else e=e+1|0;while(0);k=k+1|0}return e-a|0}function Or(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+32|0;g=d+12|0;h=d;do if(b8a(b[a>>0]|0)|0){g=(vF(a)|0)+4|0;if((Bbb(f[g>>2]|0)|0)>>>0>c>>>0){h=JDa(vF(a)|0,c)|0;u=d;return f[h>>2]|0}e=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=h7a(99377)|0;x=0;va(87,h|0,99377,g|0);g=x;x=0;if(!(g&1)){x=0;wa(138,e|0,h|0,f[a+28>>2]|0,f[a+32>>2]|0);g=x;x=0;if(g&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(h);if(!d)break}else c=Ia()|0;La(e|0)}else{e=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;h=h7a(99363)|0;x=0;va(87,g|0,99363,h|0);h=x;x=0;if(!(h&1)){x=0;wa(138,e|0,g|0,f[a+28>>2]|0,f[a+32>>2]|0);h=x;x=0;if(h&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(g);if(!d)break}else c=Ia()|0;La(e|0)}while(0);Ua(c|0);return 0}function Pr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;j=l;f[j>>2]=c;g=l+4|0;k=a+12|0;do if(!(b[k>>0]|0))d=-1;else{d=(f[a+4>>2]|0)-(f[a>>2]|0)|0;c=yCa(zm(yCa(Am(yCa(134176,87605)|0,c)|0,87596)|0,d)|0,123274)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){JCa(g);Wq(c,i)|0;du(c)|0;break}m=Ia()|0;JCa(g);Ua(m|0)}while(0);pK(j,a);a:do if(b[k>>0]|0){c=a+4|0;while(1){if(d>>>0>=((f[c>>2]|0)-(f[a>>2]|0)|0)>>>0)break a;k=yCa(134176,87675)|0;m=nxa(a,d)|0;zm(yCa(Am(k,h[m>>0]|0)|0,87596)|0,d)|0;yCa(134176,87602)|0;d=d+1|0}}while(0);u=l;return a|0}function Qr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;i=j;do if(b[a+12>>0]|0){h=yCa(134176,111056)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);e=ix(a)|0;d=c+4|0;f[d>>2]=e;e=dk(a)|0;f[c+8>>2]=e;e=lp(a,f[d>>2]|0)|0;f[c+12>>2]=e;e=a+204|0;if((f[e>>2]|0)==5){k=lp(a,f[d>>2]|0)|0;f[c+16>>2]=k}g5(c,f[d>>2]|0);do if((f[e>>2]|0)!=11){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,97687,h7a(97687)|0);x=0;ua(1869,a|0,i|0);k=x;x=0;if(k&1){k=Ia()|0;HTa(i);Ua(k|0)}else{HTa(i);break}}while(0);u=j;return}function Rr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110752)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=c+16|0;Tpa(a,f[j>>2]|0);do if(((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+20|0,Tpa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)?(j=c+24|0,Tpa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)if((f[c+4>>2]|0)==5){CM(a);break}else{DS(a,c);break}while(0);u=i;return}function Sr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;e=k;l=k+20|0;i=k+16|0;j=a+16|0;g=a+36|0;d=Bbb(f[g>>2]|0)|0;f[l>>2]=f[b+24>>2];f[e>>2]=f[l>>2];d=hJ(d,e)|0;do if(($1a(f[d+4>>2]|0,f[33036]|0)|0?$1a(f[d+8>>2]|0,f[33041]|0)|0:0)?(h=b+8|0,c=JDa(h,1)|0,c=g$a(f[c>>2]|0)|0,c|0):0){b=c+8|0;kqa(e,2.0);if(dN(b,e)|0){h=JDa(h,0)|0;h=f[h>>2]|0;l=Bbb(f[a+32>>2]|0)|0;GK(e,h,l,Bbb(f[g>>2]|0)|0);l=f[g>>2]|0;Bbb(l)|0;U0a(i,l);l=f[e+4>>2]|0;i=f[i>>2]|0;l=Fpa(i,65,l,NKa(i,f[e>>2]|0,f[l+4>>2]|0)|0)|0;BVa(f[j>>2]|0,l)|0;break}kqa(e,.5);if(dN(b,e)|0){l=f[g>>2]|0;Bbb(l)|0;U0a(e,l);l=JDa(h,0)|0;l=mBa(f[e>>2]|0,19,f[l>>2]|0)|0;BVa(f[j>>2]|0,l)|0}}while(0);u=k;return}function Tr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0,h=0,i=0,j=0.0;h=u;u=u+5024|0;c=h+2516|0;i=h;d=BZa(Bbb(f[a+32>>2]|0)|0)|0;a:do if(d>>>0<2)Ei(a,b);else{g=X(d+-1|0,d)|0;Dia(c,a);fv(i,c,g>>>0<20?g:20);c=i+4|0;g=f[f[c>>2]>>2]|0;Bbb(g)|0;e=+kXa(+p[g+16>>3]);while(1){x=0;ta(508,i|0);g=x;x=0;if(g&1){d=6;break}g=f[f[c>>2]>>2]|0;Bbb(g)|0;j=e;e=+kXa(+p[g+16>>3]);if(e==j){d=9;break}}do if((d|0)==6)c=Ia()|0;else if((d|0)==9){x=0;va(173,a|0,g|0,b|0);b=x;x=0;if(b&1){c=Ia()|0;break}else{vja(i);break a}}while(0);vja(i);Ua(c|0)}while(0);u=h;return}function Ur(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+96|0;d=j+64|0;k=j+84|0;e=j+40|0;g=j;h=j+24|0;i=j+80|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;wa(77,e|0,b|0,c+8|0,k|0);l=x;x=0;a:do if(l&1)d=Ia()|0;else{do if(!(D0a(e)|0)){l=f[b+4>>2]|0;f[i>>2]=f[c+24>>2];x=0;f[d>>2]=f[i>>2];wa(78,h|0,l|0,d|0,k|0);l=x;x=0;if(l&1){d=Ia()|0;break a}else{f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];rAa(g,d);f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}while(0);uSa(k);u=j;return}while(0);uSa(k);Ua(d|0)}function Vr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+48|0;d=g+16|0;e=g;Mu(d,b,f[c+8>>2]|0);do if(!(D0a(d)|0))if(!(ORa(d)|0)){c=f[c+16>>2]|0;if(!c){M0a(a);break}else{Mu(a,b,c);break}}else{Mu(a,b,f[c+12>>2]|0);if(D0a(a)|0)break;if(f[c+16>>2]|0)break;yXa(e);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];break}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}while(0);u=g;return}function Wr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;x=0;va(150,d|0,a|0,0);g=x;x=0;a:do if(g&1){d=Ja(0)|0;e=a;g=a;h=12}else b:do if(b[d>>0]|0){d=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;e=d+12|0;g=f[e>>2]|0;if((g|0)==(f[d+16>>2]|0)){x=0;d=ga(f[(f[d>>2]|0)+40>>2]|0,d|0)|0;g=x;x=0;if(!(g&1))h=6}else{f[e>>2]=g+1;d=X6a(b[g>>0]|0)|0;h=6}do if((h|0)==6)if($1a(d,-1)|0){c=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,c|0,f[c+16>>2]|6|0);c=x;x=0;if(c&1)break;else break b}else{g=X6a(d)|0;b[c>>0]=g;break b}while(0);d=Ja(0)|0;e=a;g=a;h=12;break a}while(0);while(0);do if((h|0)==12){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);h=x;x=0;if(!(h&1)){Ga();break}d=Ia()|0;x=0;sa(6);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}else Ua(d|0)}while(0);u=i;return a|0}function Xr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=yCa(134176,110990)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(h);Wq(g,e)|0;du(g)|0;break}j=Ia()|0;JCa(h);Ua(j|0)}while(0);d=$O(f[a+36>>2]|0,6,c)|0;f[h>>2]=d;e=a+4|0;g=f[e>>2]|0;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else IL(a,h);d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))IL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}gv(a,f[c+12>>2]|0);RA(a,c);u=i;return}function Yr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l;k=a+12|0;do if(!(b[k>>0]|0))d=-1;else{d=(f[a+4>>2]|0)-(f[a>>2]|0)|0;g=yCa(zm(yCa(zm(yCa(134176,87291)|0,c)|0,87596)|0,d)|0,123274)|0;ZXa(e,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;i=ia(73,f[e>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,j=ia(f[(f[i>>2]|0)+28>>2]|0,i|0,10)|0,m=x,x=0,!(m&1)):0){JCa(e);Wq(g,j)|0;du(g)|0;break}m=Ia()|0;JCa(e);Ua(m|0)}while(0);_L(c,a);a:do if(b[k>>0]|0){e=a+4|0;while(1){if(d>>>0>=((f[e>>2]|0)-(f[a>>2]|0)|0)>>>0)break a;k=yCa(134176,87675)|0;m=nxa(a,d)|0;zm(yCa(Am(k,h[m>>0]|0)|0,87596)|0,d)|0;yCa(134176,87602)|0;d=d+1|0}}while(0);u=l;return a|0}function Zr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;zma(f[a>>2]|0,40)|0;GXa(e,f[a+28>>2]|0,f[a>>2]|0);_m(e,c);VBa(a);OP(a,f[c+8>>2]|0);e=a+20|0;d=f[c+12>>2]|0;if((((b[e>>0]|0)==0?rab(f[d>>2]|0)|0:0)?(h=(o$a(d)|0)+8|0,Gab(f[h>>2]|0)|0):0)?(h=(o$a(d)|0)+16|0,(Bbb(f[h>>2]|0)|0)==1):0){h=MCa((o$a(d)|0)+12|0)|0;OP(a,f[h>>2]|0)}else OP(a,d);c=f[c+16>>2]|0;do if(c|0){if((((b[e>>0]|0)==0?rab(f[c>>2]|0)|0:0)?(h=(o$a(c)|0)+8|0,Gab(f[h>>2]|0)|0):0)?(h=(o$a(c)|0)+16|0,(Bbb(f[h>>2]|0)|0)==1):0){h=MCa((o$a(c)|0)+12|0)|0;OP(a,f[h>>2]|0);break}OP(a,c)}while(0);kfa(a);if(b[e>>0]|0)yCa(f[a>>2]|0,75680)|0;u=g;return}function _r(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m;k=fQa(b)|0;l=a+36|0;kha(l,k);d=f[l>>2]|0;c=(f[a+40>>2]|0)-d>>2;while(1){if((c|0)<=0)break;i=d;f[i>>2]=0;c=c+-1|0;d=i+4|0}d=a+48|0;kha(d,k);d=f[d>>2]|0;c=(f[a+52>>2]|0)-d>>2;while(1){if((c|0)<=0)break;i=d;f[i>>2]=0;c=c+-1|0;d=i+4|0}h=a+24|0;Ps(h,k);e=f[h>>2]|0;d=uZa(b)|0;g=e;if((d|0)>-1)c=d>>>5;else c=(d+-31|0)/32|0;c=(g+(c<<2)-e<<3)+(d&31)|0;if(!c)i=h;else{f[j>>2]=e;f[j+4>>2]=0;VS(j,c);i=h;g=f[h>>2]|0}c=uZa(b)|0;if((c|0)>-1)e=c>>>5;else e=(c+-31|0)/32|0;c=c&31;d=f[a+28>>2]|0;d=(d-(e<<5)&-32)+((d&31)-c)|0;if(d|0){f[j>>2]=g+(e<<2);f[j+4>>2]=c;fT(j,d)}wL(a,b+36|0);c=0;while(1){if((c|0)==(k|0))break;if(!(f[(f[l>>2]|0)+(c<<2)>>2]|0)){j=(f[i>>2]|0)+(c>>>5<<2)|0;f[j>>2]=f[j>>2]&~(1<<(c&31))}c=c+1|0}u=m;return}function $r(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;j=l+12|0;g=l;h=l+24|0;i=f[b>>2]|0;d=i;a:do if(o2a(f[i+4>>2]|0)|0){e=a+40|0;i=a+44|0;c=f[i>>2]|0;if((c|0)==(f[a+48>>2]|0))IL(e,b);else{f[c>>2]=d;f[i>>2]=(f[i>>2]|0)+4}gR(j,e);c=f[a+32>>2]|0;Bbb(c)|0;x=0;c=ia(82,j|0,c|0)|0;d=x;x=0;do if(d&1)k=12;else{if(!c){x=0;ua(167,g|0,e|0);e=x;x=0;if(e&1){k=12;break}x=0;c=ga(229,g|0)|0;e=x;x=0;if(e&1){c=Ia()|0;uSa(g);break}uSa(g);uSa(j);if(c)c=0;else{U0a(h,Bbb(f[a+36>>2]|0)|0);c=gNa(f[h>>2]|0,f[b>>2]|0)|0;f[b>>2]=c;c=1}}else{uSa(j);c=0}f[i>>2]=(f[i>>2]|0)+-4;break a}while(0);if((k|0)==12)c=Ia()|0;uSa(j);Ua(c|0)}else c=0;while(0);u=l;return c|0}function as(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=u;u=u+16|0;c=g+12|0;h=g;d=a+16|0;e=f[d>>2]|0;if(e|0){Wr(e,c)|0;switch(b[c>>0]|0){case 34:{f[a+20>>2]=0;break}case 44:{l=a+20|0;m=(bp(f[d>>2]|0)|0)+(f[l>>2]|0)|0;j=a+24|0;k=(bp(f[d>>2]|0)|0)+(f[j>>2]|0)|0;e=a+28|0;c=(bp(f[d>>2]|0)|0)+(f[e>>2]|0)|0;i=a+32|0;h=(bp(f[d>>2]|0)|0)+(f[i>>2]|0)|0;f[l>>2]=m;f[j>>2]=k;f[e>>2]=c;f[i>>2]=h;break}default:{d=Ea(12)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;m=h7a(97743)|0;x=0;va(87,h|0,97743,m|0);m=x;x=0;if(!(m&1)){x=0;ua(1881,d|0,h|0);m=x;x=0;if(m&1)c=1;else{x=0;va(98,d|0,34672,495);x=0;c=0}a=Ia()|0;HTa(h);if(c)i=9}else{a=Ia()|0;i=9}if((i|0)==9)La(d|0);Ua(a|0)}}}u=g;return}function bs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;h=n+12|0;l=n+8|0;m=n;j=n+4|0;c=a+44|0;k=b+24|0;if((rB(f[c>>2]|0,k)|0?(f[b+4>>2]|0)!=5:0)?(d=a+32|0,i=f[d>>2]|0,Bbb(i)|0,_1a(f[k>>2]|0,f[i>>2]|0)|0):0){i=a+36|0;g=f[i>>2]|0;Bbb(g)|0;U0a(h,g);g=qwa(f[h>>2]|0,b)|0;BVa(f[a+16>>2]|0,g)|0;a=f[c>>2]|0;b=f[d>>2]|0;Bbb(b)|0;if(!(rB(a+20|0,b)|0))Ca(109945,109872,160,110002);e=zl(a+20|0,b)|0;d=JDa(g+12|0,0)|0;f[l>>2]=d;b=Bbb(f[i>>2]|0)|0;f[j>>2]=f[k>>2];f[h>>2]=f[j>>2];b=ZI(b,h)|0;f[m>>2]=b;a=e+4|0;c=f[a>>2]|0;if(c>>>0<(f[e+8>>2]|0)>>>0){GXa(c,d,b);f[a>>2]=(f[a>>2]|0)+8}else wF(e,l,m)}u=n;return}function cs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;a=yb(112571)|0;if(!a){yCa(134176,112588)|0;hb()}d1a(i,a);e=yCa(134176,112628)|0;h=f[i>>2]|0;yCa(wfa(e,h)|0,112640)|0;e=f[c+40>>2]|0;g=c+144|0;a=0;d=f[c+36>>2]|0;while(1){if((d|0)==(e|0))break;b=f[d>>2]|0;if(_1a(f[b>>2]|0,h)|0){f[b+24>>2]=f[b+20>>2];b=ySa(g)|0;f[(f[d>>2]|0)+36>>2]=b}else a=1;d=d+4|0}if(!a){yCa(134176,112642)|0;hb()}b=f[c+100>>2]|0;d=c+104|0;a=f[d>>2]|0;while(1){if((a|0)==(b|0))break;h=a+-16|0;I_a(h);a=h}f[d>>2]=b;b=f[c+76>>2]|0;d=c+80|0;a=f[d>>2]|0;while(1){if((a|0)==(b|0))break;h=a+-16|0;I_a(h);a=h}f[d>>2]=b;d=f[c+24>>2]|0;e=c+28|0;a=f[e>>2]|0;while(1){if((a|0)==(d|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b)}f[e>>2]=d;h=n8(12)|0;c1a(h);i=f[i>>2]|0;f[h>>2]=i;f[h+4>>2]=i;f[h+8>>2]=0;Xs(c,h);u=j;return}function ds(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=h+4|0;f[e>>2]=b;d=b;if(nQa(f[a+116>>2]|0,f[b+8>>2]|0)|0?!(lVa(a)|0):0){if(!(o2a(f[(f[b+12>>2]|0)+4>>2]|0)|0))Ca(76235,76199,402,76269);b=a+108|0;c=f[b>>2]|0;if((c|0)==(f[a+112>>2]|0))IL(a+104|0,e);else{f[c>>2]=d;f[b>>2]=(f[b>>2]|0)+4}c=f[a+136>>2]|0;b=a+64|0;f[g>>2]=f[e>>2];d=em(b,g)|0;f[d>>2]=c;d=f[e>>2]|0;b=em(b,d+12|0)|0;f[b>>2]=d;b=Lk(a,f[(f[e>>2]|0)+12>>2]|0)|0;f[g>>2]=b;d=$l(a+24|0,e)|0;f[d>>2]=b;f[(f[a+140>>2]|0)+(f[(f[e>>2]|0)+8>>2]<<2)>>2]=b;b=a+84|0;if(!(Vz(b,g)|0)){e=f[e>>2]|0;g=Zl(b,g)|0;f[g>>2]=e}}u=h;return a|0}function es(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;i=j+24|0;d=j;M0a(a);yXa(i);e=f[c+32>>2]|0;if(e){Mw(d,b,e);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];if(!(D0a(a)|0)){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];h=a;g=5}}else{h=a;g=5}if((g|0)==5?(Mw(d,b,f[c+28>>2]|0),f[h>>2]=f[d>>2],f[h+4>>2]=f[d+4>>2],f[h+8>>2]=f[d+8>>2],f[h+12>>2]=f[d+12>>2],f[h+16>>2]=f[d+16>>2],!(D0a(a)|0)):0){d=Eia(a)|0;g=I;b=f[c+24>>2]|0;if((g|0)>-1|(g|0)==-1&d>>>0>4294967295?(Bbb(f[c+12>>2]|0)|0)>>>0>d>>>0:0){b=JDa(c+8|0,d)|0;b=f[b>>2]|0}f[a+16>>2]=b;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2]}u=j;return}function fs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+48|0;j=n+16|0;k=n+32|0;l=n;m=a+44|0;if(!(f[m>>2]|0)){SFa(j,c);i=f[j>>2]|0;f[j>>2]=0;d=f[m>>2]|0;f[m>>2]=i;if(d|0)ubb(d);f[j>>2]=0}e=c+48|0;g=(f[c+52>>2]|0)-(f[e>>2]|0)>>2;d=0;while(1){if((d|0)==(g|0))break;h=(f[e>>2]|0)+(d<<2)|0;i=(f[h>>2]|0)+4|0;if((f[i>>2]|0)==2){f[i>>2]=1;i=n8(16)|0;o=f[h>>2]|0;f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];f[i+12>>2]=f[o+12>>2];f[k>>2]=f[f[h>>2]>>2];f[j>>2]=f[k>>2];h=Qw(j)|0;f[i>>2]=h;Ws(c,i)}d=d+1|0}o=n8(16)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;wab(o);f[o+4>>2]=1;E1a(j,f[33071]|0);f[o>>2]=f[j>>2];m=f[m>>2]|0;m$a(l,0);f[j>>2]=f[l>>2];f[j+4>>2]=f[l+4>>2];f[j+8>>2]=f[l+8>>2];f[j+12>>2]=f[l+12>>2];m=a0(m,j)|0;f[o+8>>2]=m;b[o+12>>0]=1;Ws(c,o);uD(a+16|0,c);u=n;return}function gs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;i=j;do if(b[a+12>>0]|0){d=yCa(134176,110884)|0;d=zm(d,f[a+36>>2]|0)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(d,h)|0;du(d)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);Ax(a,97192);d=nq(a)|0;h=c+8|0;f[h>>2]=d;g=a+124|0;e=f[g>>2]|0;do if(d>>>0>=(fQa(e)|0)>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,97202,h7a(97202)|0);x=0;ua(1869,a|0,i|0);k=x;x=0;if(k&1){k=Ia()|0;HTa(i);Ua(k|0)}else{HTa(i);e=f[g>>2]|0;d=f[h>>2]|0;break}}while(0);k=n9(e,d)|0;f[c+4>>2]=k;u=j;return}function hs(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;m=o+12|0;h=o+8|0;i=c;j=o+4|0;k=o;g=Bbb(c)|0;do if(Gab(f[c>>2]|0)|0){e=pPa(g)|0;e=f[e>>2]|0;f[m>>2]=e;if(lBa(d,m)|0){n=11;break}c=a+100|0;if((eV(c,e)|0)==(a+104|0))Ca(64798,51387,559,64846);else{l=nU(c,m)|0;l=gqa(f[l>>2]|0)|0;break}}else if((Cea(g,f[33281]|0)|0?(l=g0a(c,1)|0,l=f[l>>2]|0,Bbb(l)|0,Gab(f[l>>2]|0)|0):0)?(e=g0a(c,1)|0,e=pPa(Bbb(f[e>>2]|0)|0)|0,e=eV(a+112|0,f[e>>2]|0)|0,(e|0)!=(a+116|0)):0)l=f[e+28>>2]|0;else n=11;while(0);if((n|0)==11){f[j>>2]=i;f[k>>2]=f[a+132>>2];l=(b[a+98>>0]|0)!=0;f[h>>2]=f[j>>2];f[m>>2]=f[k>>2];l=zg(h,d,0,m,l)|0}u=o;return l|0}function is(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k+12|0;i=k;do if(b[a+12>>0]|0){j=yCa(134176,110862)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(h);Wq(j,g)|0;du(j)|0;break}l=Ia()|0;JCa(h);Ua(l|0)}while(0);Ax(a,97142);l=nq(a)|0;f[c+8>>2]=l;do if(l>>>0>=(fQa(f[a+124>>2]|0)|0)>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,97172,h7a(97172)|0);x=0;ua(1869,a|0,i|0);l=x;x=0;if(l&1){l=Ia()|0;HTa(i);Ua(l|0)}else{HTa(i);break}}while(0);l=dk(a)|0;f[c+12>>2]=l;f[c+4>>2]=f[l+4>>2];bLa(c,d<<24>>24==34);via(c);u=k;return}function js(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;e=k+8|0;d=k+4|0;i=k;j=a+44|0;a:do if(b[(f[j>>2]|0)+1>>0]|0){g=a+36|0;l=Bbb(f[g>>2]|0)|0;h=c+24|0;f[d>>2]=f[h>>2];f[e>>2]=f[d>>2];d=Sma(l,e)|0;if(!(Xqa(a,(d|0)!=0,c,85059)|0)){l=Bbb(f[g>>2]|0)|0;f[i>>2]=f[h>>2];f[e>>2]=f[i>>2];if(!(ana(l,e)|0))break;if(b[(f[j>>2]|0)+8>>0]|0)break;yCa(TNa(a)|0,85082)|0;break}g=c+8|0;e=c+12|0;l=Bbb(f[e>>2]|0)|0;h=d+8|0;if(Xqa(a,(l|0)==((f[d+12>>2]|0)-(f[h>>2]|0)>>2|0),c,84927)|0){d=0;while(1){if(d>>>0>=(Bbb(f[e>>2]|0)|0)>>>0)break a;l=JDa(g,d)|0;if(!(yga(a,f[(f[l>>2]|0)+4>>2]|0,f[(f[h>>2]|0)+(d<<2)>>2]|0,c)|0)?(b[(f[j>>2]|0)+8>>0]|0)==0:0)yCa(zm(yCa(TNa(a)|0,84984)|0,d)|0,87602)|0;d=d+1|0}}}while(0);u=k;return}function ks(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;m=l;g=(f[b+4>>2]|0)-(f[b>>2]|0)|0;h=g>>2;TYa(m);x=0;ua(588,m|0,h|0);k=x;x=0;if(k&1)d=Ia()|0;else{e=f[m>>2]|0;d=0;while(1){if((d|0)==(h|0))break;f[e+(f[(f[c>>2]|0)+(d<<2)>>2]<<2)>>2]=d;d=d+1|0}x=0;k=ga(212,24)|0;j=x;x=0;do if(!(j&1)?(TYa(k),x=0,ua(3134,k|0,b|0),j=x,x=0,!(j&1)):0){if(!g){x=0;wa(71,115482,115382,487,115492);x=0;break}d=uZa(Bbb(f[(f[a>>2]|0)+32>>2]|0)|0)|0;i=h+-1|0;j=f[m>>2]|0;while(1){if(d>>>0>=i>>>0)break;g=f[k>>2]|0;e=g+(d<<2)|0;c=f[e>>2]|0;b=d+1|0;g=g+(b<<2)|0;h=f[g>>2]|0;if((f[j+(c<<2)>>2]|0)>>>0>(f[j+(h<<2)>>2]|0)>>>0){f[e>>2]=h;f[g>>2]=c;d=d+2|0}else d=b}x=0;ua(3135,a|0,k|0);a=x;x=0;if(!(a&1)){uSa(m);u=l;return k|0}}while(0);d=Ia()|0}uSa(m);Ua(d|0);return 0}function ls(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;i=m+24|0;h=m+8|0;j=m+20|0;k=m+16|0;l=m;do if(b[a+33>>0]|0){g=yCa(134176,110903)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,n=x,x=0,!(n&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}n=Ia()|0;JCa(i);Ua(n|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;LOa(i)|0;RYa(i)}n=Ev(f[a+28>>2]|0,17)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];f4a(j,g0(a,i)|0);n=Yr(n,f[j>>2]|0)|0;f4a(l,0);Yr(n,f[l>>2]|0)|0;u=m;return}function ms(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;e=k+28|0;g=k+24|0;h=k+16|0;c=k+20|0;i=k+8|0;b=k+12|0;d=k+4|0;j=k;f[g>>2]=a;f[h>>2]=g;f[c>>2]=f[33163];f[e>>2]=f[c>>2];if(!(cna(a,e)|0)){U0a(i,a);c=n8(88)|0;aX(c);f[c>>2]=f[33163];f[c+4>>2]=1;f[b>>2]=f[33164];f[e>>2]=f[b>>2];b=ACa(i,e,1)|0;f[c+36>>2]=b;Hs(f[g>>2]|0,c);Gha(h,c);b=f[g>>2]|0;c=b}else{c=a;b=a}f[d>>2]=f[33162];f[e>>2]=f[d>>2];if(!(cna(c,e)|0)){U0a(i,b);b=n8(88)|0;aX(b);f[b>>2]=f[33162];f[b+4>>2]=0;f[e>>2]=1;a=b+12|0;c=f[a>>2]|0;if(c>>>0<(f[b+16>>2]|0)>>>0){f[c>>2]=1;f[a>>2]=c+4}else IL(b+8|0,e);f[j>>2]=f[33164];d=NKa(f[i>>2]|0,0,1)|0;f[e>>2]=f[j>>2];j=vsa(i,e,d)|0;f[b+36>>2]=j;Hs(f[g>>2]|0,b);Gha(h,b)}u=k;return}function ns(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=(c-b|0)/12|0;e=a+8|0;d=f[a>>2]|0;do if(g>>>0>(((f[e>>2]|0)-d|0)/12|0)>>>0){P$(a);d=l_a()|0;if(d>>>0>>0)_da();else{h=((f[e>>2]|0)-(f[a>>2]|0)|0)/12|0;i=h<<1;GO(a,h>>>0>>1>>>0?(i>>>0>>0?g:i):d);h5(a,b,c);break}}else{i=a+4|0;h=((f[i>>2]|0)-d|0)/12|0;g=g>>>0>h>>>0;h=g?b+(h*12|0)|0:c;e=d;d=b;while(1){if((d|0)==(h|0))break;zfa(e,d)|0;e=e+12|0;d=d+12|0}if(g){h5(a,h,c);break}d=f[i>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-12|0;HTa(c);d=c}f[i>>2]=e}while(0);return}function os(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;switch(b|0){case 43:{i=18;j=18;break}case 45:{i=18;j=20;break}case 47:{i=22;j=22;break}case 49:{i=22;j=24;break}default:hb()}a=a+44|0;l=f[a>>2]|0;k=LPa(e)|0;k=NKa(f[l>>2]|0,k,1)|0;m=f[a>>2]|0;b=LPa(h)|0;b=NKa(f[m>>2]|0,b,1)|0;b=Fpa(f[l>>2]|0,i,k,b)|0;k=f[a>>2]|0;i=LPa(e)|0;i=NKa(f[k>>2]|0,i,1)|0;l=f[a>>2]|0;e=LPa(h)|0;e=NKa(f[l>>2]|0,e,1)|0;e=Fpa(f[k>>2]|0,15,i,e)|0;i=f[a>>2]|0;d=LPa(d)|0;d=NKa(f[i>>2]|0,d,1)|0;k=f[a>>2]|0;h=LPa(g)|0;h=NKa(f[k>>2]|0,h,1)|0;h=Fpa(f[i>>2]|0,j,d,h)|0;g=f[a>>2]|0;h=Fpa(f[g>>2]|0,7,e,h)|0;return F$(g,c,Fpa(f[g>>2]|0,8,b,h)|0)|0}function ps(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0.0;e=f[b>>2]|0;i=f[a>>2]|0;k=+p[e+16>>3];h=+p[i+16>>3];j=S2(k,h)|0;g=f[c>>2]|0;d=S2(+p[g+16>>3],k)|0;do if(j){if(d){f[a>>2]=g;f[c>>2]=i;d=1;break}f[a>>2]=e;f[b>>2]=i;d=f[c>>2]|0;if(S2(+p[d+16>>3],h)|0){f[b>>2]=d;f[c>>2]=i;d=2}else d=1}else if(d){f[b>>2]=g;f[c>>2]=e;d=f[b>>2]|0;e=f[a>>2]|0;if(S2(+p[d+16>>3],+p[e+16>>3])|0){f[a>>2]=d;f[b>>2]=e;d=2}else d=1}else d=0;while(0);return d|0}function qs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=yCa(134176,110925)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;m=LOa(i)|0;jGa(a,f[m>>2]|0);RYa(i)}m=Ev(f[a+28>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];f4a(j,V1(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function rs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0;a:do switch(f[b>>2]|0){case 3:{g=+ONa(b);e=+ONa(c);c=(D$a(g)|0)<0^(D$a(e)|0)<0;d=c?-0.0:0.0;switch(Ena(e)|0){case 2:{switch(Ena(g)|0){case 0:{CAa(a,+H6(g));break a}case 2:{CAa(a,+Bb(B,+d));break a}case 1:case 3:case 4:{CAa(a,+Bb(C,+d));break a}default:hb()}break}case 3:case 4:case 1:case 0:{CAa(a,g/e);break a}default:hb()}break}case 4:{g=+NNa(b);d=+NNa(c);qRa(g)|0;c=(I|0)<0;qRa(d)|0;e=c^(I|0)<0?-0.0:0.0;switch(u8(d)|0){case 2:{switch(u8(g)|0){case 0:{kqa(a,+KZ(g));break a}case 2:{kqa(a,+Cb(B,+e));break a}case 1:case 3:case 4:{kqa(a,+Cb(C,+e));break a}default:hb()}break}case 3:case 4:case 1:case 0:{kqa(a,g/d);break a}default:hb()}break}default:hb()}while(0);return}function ss(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+8|0;h=k;c=b+12|0;if((((!(l$a(f[b+16>>2]|0)|0)?(d=b+8|0,Iab(f[d>>2]|0)|0):0)?(K5(a+96|0,d)|0)==0:0)?(g=MCa(c)|0,!(o2a(f[(f[g>>2]|0)+4>>2]|0)|0)):0)?(i=p_(a+60|0,d)|0,(i|0)!=(a+64|0)):0){I$a(j,c);GUa(h,c);g=j+4|0;e=f[h>>2]|0;c=f[h+4>>2]|0;d=1;while(1){if(!(lTa(f[j>>2]|0,f[g>>2]|0,e,c)|0))break;h=LOa(j)|0;h=d&(f[(f[h>>2]|0)+4>>2]|0)!=5;RYa(j);d=h}e=i+20|0;if(d){MUa(j,b);c=i+24|0;d=f[c>>2]|0;if(d>>>0<(f[i+28>>2]|0)>>>0){f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[c>>2]=(f[c>>2]|0)+12}else wE(e,j)}Cf(a,e,b)}u=k;return}function ts(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+32|0;i=l+16|0;j=l+12|0;m=l;e=a+36|0;g=c+11|0;h=c+4|0;k=a+24|0;d=a+28|0;while(1){a=f[e>>2]|0;f[e>>2]=a+1;zY(m,a);a=b[g>>0]|0;n=a<<24>>24<0;x=0;ja(86,m|0,(n?f[c>>2]|0:c)|0,(n?f[h>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1){d=9;break}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,j|0,i|0);n=x;x=0;if(n&1){d=10;break}HTa(i);HTa(m);if((p_(k,j)|0)==(d|0)){d=8;break}}if((d|0)==8){bG(i,k,j,j);u=l;return f[j>>2]|0}else if((d|0)==9)a=Ia()|0;else if((d|0)==10){a=Ia()|0;HTa(i)}HTa(m);Ua(a|0);return 0}function us(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k+8|0;i=k+4|0;j=k;do if(b[a+33>>0]|0){g=yCa(134176,110975)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(h);Wq(g,e)|0;du(g)|0;break}l=Ia()|0;JCa(h);Ua(l|0)}while(0);d=f[c+12>>2]|0;if(d|0)jGa(a,d);g=c+16|0;d=f[g>>2]|0;if(!d)e=12;else{jGa(a,d);e=(f[g>>2]|0)==0?12:13}d=a+28|0;l=Ev(f[d>>2]|0,e)|0;f[j>>2]=f[c+8>>2];f[h>>2]=f[j>>2];f4a(i,VZ(a,h)|0);Yr(l,f[i>>2]|0)|0;if(f[g>>2]|0?(f[c+4>>2]|0)==5:0)dTa(f[d>>2]|0);u=k;return}function vs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;e=k+8|0;d=k;i=a+136|0;j=f[i>>2]|0;f[e>>2]=b;g=em(a+64|0,e)|0;f[g>>2]=j;f[i>>2]=b;g=b+12|0;I$a(e,g);GUa(d,g);g=e+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;while(1){if(!(lTa(f[e>>2]|0,f[g>>2]|0,c,d)|0))break;l=LOa(e)|0;Lk(a,f[l>>2]|0)|0;RYa(e)}c=b+8|0;if(Iab(f[c>>2]|0)|0?(h=AB(a+152|0,c)|0,h|0):0){b=h+12|0;c=a+140|0;d=h+16|0;do if(!(lVa(a)|0)){e=f[d>>2]|0;if((e|0)==(f[h+20>>2]|0)){VB(b,c);break}else{cR(e,c);f[d>>2]=(f[d>>2]|0)+12;break}}while(0);Mt(a,f[b>>2]|0,f[d>>2]|0,c)}f[i>>2]=j;u=k;return a|0}function ws(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;m=o;n=n8(88)|0;aX(n);f[n>>2]=f[a>>2];f[n+4>>2]=c;f[n+36>>2]=0;e=f[b+4>>2]|0;g=n+12|0;h=n+16|0;i=n+8|0;j=n+44|0;k=n+52|0;l=n+56|0;a=f[b>>2]|0;while(1){if((a|0)==(e|0))break;c=a+4|0;b=f[g>>2]|0;if((b|0)==(f[h>>2]|0))IL(i,c);else{f[b>>2]=f[c>>2];f[g>>2]=b+4}c=f[k>>2]|0;f[m>>2]=c;b=vZ(l,a)|0;f[b>>2]=c;b=jZ(j,m)|0;f[b>>2]=f[a>>2];a=a+8|0}e=f[d+4>>2]|0;g=n+24|0;h=n+28|0;i=n+20|0;a=f[d>>2]|0;while(1){if((a|0)==(e|0))break;c=a+4|0;b=f[g>>2]|0;if((b|0)==(f[h>>2]|0))IL(i,c);else{f[b>>2]=f[c>>2];f[g>>2]=b+4}b=f[k>>2]|0;f[m>>2]=b;d=vZ(l,a)|0;f[d>>2]=b;d=jZ(j,m)|0;f[d>>2]=f[a>>2];a=a+8|0}u=o;return n|0}function xs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j+8|0;h=j;do if(b[a+33>>0]|0){g=yCa(134176,110945)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;k=LOa(i)|0;Tpa(a,f[k>>2]|0);RYa(i)}DS(a,c);if((f[c+4>>2]|0)==5)CM(a);u=j;return}function ys(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;TYa(a);d=b+4|0;o=c+4|0;x=0;ua(588,a|0,((f[o>>2]|0)-(f[c>>2]|0)>>2)+((f[d>>2]|0)-(f[b>>2]|0)>>2)|0);n=x;x=0;do if(!(n&1)){n=f[b>>2]|0;m=(f[d>>2]|0)-n>>2;j=f[c>>2]|0;k=(f[o>>2]|0)-j>>2;l=f[a>>2]|0;b=0;d=0;e=0;while(1){if(!(e>>>0>>0&d>>>0>>0))break;g=f[n+(e<<2)>>2]|0;h=f[j+(d<<2)>>2]|0;do if(g>>>0>=h>>>0){i=l+(b<<2)|0;if(g>>>0>h>>>0){f[i>>2]=h;d=d+1|0;break}else{f[i>>2]=g;d=d+1|0;e=e+1|0;break}}else{f[l+(b<<2)>>2]=g;e=e+1|0}while(0);b=b+1|0}g=f[a>>2]|0;while(1){if(e>>>0>=m>>>0)break;f[g+(b<<2)>>2]=f[n+(e<<2)>>2];b=b+1|0;e=e+1|0}e=f[c>>2]|0;g=(f[o>>2]|0)-e>>2;h=f[a>>2]|0;while(1){if(d>>>0>=g>>>0)break;f[h+(b<<2)>>2]=f[e+(d<<2)>>2];d=d+1|0;b=b+1|0}x=0;ua(588,a|0,b|0);o=x;x=0;if(o&1){b=Ia()|0;break}else return}else b=Ia()|0;while(0);uSa(a);Ua(b|0)}function zs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Iab(c)|0)){J_a();x=0;ia(52,i+13|0,71973)|0;k=x;x=0;if(k&1){Ia()|0;gCa()}else gCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(oma(a,j)|0){J_a();x=0;ia(52,g|0,72009)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)gCa();Ia()|0;gCa()}c=b;f[j>>2]=c;d=a+4|0;e=f[d>>2]|0;do if(e>>>0<(f[a+8>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(466,a|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;M_a(c);ubb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0){M_a(d);ubb(d)}Ua(c|0)}while(0);k=vZ(a+172|0,b)|0;f[k>>2]=b;u=i;return}function As(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;d=o+8|0;i=o+4|0;j=o;n=a+44|0;a:do if(((b[(f[n>>2]|0)+1>>0]|0?(e=a+36|0,g=Bbb(f[e>>2]|0)|0,f[i>>2]=f[c+24>>2],f[d>>2]=f[i>>2],g=ana(g,d)|0,Koa(a,(g|0)!=0,c,84998)|0):0)?(h=g+16|0,Koa(a,Iab(f[h>>2]|0)|0,c,85028)|0):0)?(l=Bbb(f[e>>2]|0)|0,f[j>>2]=f[h>>2],f[d>>2]=f[j>>2],j=KI(l,d)|0,l=c+8|0,k=c+12|0,i=Bbb(f[k>>2]|0)|0,m=j+8|0,Koa(a,(i|0)==((f[j+12>>2]|0)-(f[m>>2]|0)>>2|0),c,84927)|0):0){d=0;while(1){if(d>>>0>=(Bbb(f[k>>2]|0)|0)>>>0)break a;j=JDa(l,d)|0;if(!(rea(a,f[(f[j>>2]|0)+4>>2]|0,f[(f[m>>2]|0)+(d<<2)>>2]|0,c)|0)?(b[(f[n>>2]|0)+8>>0]|0)==0:0)yCa(zm(yCa(TNa(a)|0,84984)|0,d)|0,87602)|0;d=d+1|0}}while(0);u=o;return}function Bs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+48|0;h=j+20|0;i=j;d=fQa(c)|0;g=a+116|0;f[g>>2]=d;e=a+140|0;gia(e,X(d,d)|0);e=f[e>>2]|0;d=(f[a+144>>2]|0)-e|0;while(1){if((d|0)<=0)break;k=e;b[k>>0]=0;d=d+-1|0;e=k+1|0}e=a+152|0;kha(e,f[g>>2]|0);e=f[e>>2]|0;d=(f[a+156>>2]|0)-e>>2;while(1){if((d|0)<=0)break;k=e;f[k>>2]=0;d=d+-1|0;e=k+4|0}$E(a,c);If(h,a);k=a+120|0;KD(k,h);NQa(h);Pj(i,k);su(f[a+40>>2]|0,f[a+44>>2]|0,i);NQa(i);zf(a);u=j;return}function Cs(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;k=l+12|0;j=l;a:do if((((((c-a|0)>2?(b[a>>0]|0)==100:0)?(b[a+1>>0]|0)==115:0)?(m=a+2|0,e=Bc(m,c,d)|0,(e|0)!=(m|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){eY(k,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;m=a+-1|0;JJa(c+(m*24|0)|0);a=m}f[i>>2]=c+-24;x=0;va(185,j|0,123567,k|0);m=x;x=0;do if(!(m&1)){m=b[j+11>>0]|0;g=m<<24>>24<0;x=0;ja(97,(f[i>>2]|0)+-24|0,(g?f[j>>2]|0:j)|0,(g?f[j+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){a=Ia()|0;HTa(j);break}else{HTa(j);HTa(k);a=h;break a}}else a=Ia()|0;while(0);HTa(k);Ua(a|0)}while(0);u=l;return a|0}function Ds(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;k=l+12|0;j=l;a:do if((((((c-a|0)>2?(b[a>>0]|0)==100:0)?(b[a+1>>0]|0)==116:0)?(m=a+2|0,e=Bc(m,c,d)|0,(e|0)!=(m|0)):0)?(h=gd(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){eY(k,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;m=a+-1|0;JJa(c+(m*24|0)|0);a=m}f[i>>2]=c+-24;x=0;va(185,j|0,123565,k|0);m=x;x=0;do if(!(m&1)){m=b[j+11>>0]|0;g=m<<24>>24<0;x=0;ja(97,(f[i>>2]|0)+-24|0,(g?f[j>>2]|0:j)|0,(g?f[j+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){a=Ia()|0;HTa(j);break}else{HTa(j);HTa(k);a=h;break a}}else a=Ia()|0;while(0);HTa(k);Ua(a|0)}while(0);u=l;return a|0}function Es(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;c=g+4|0;e=g;zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80959)|0;zma(mna(f[a>>2]|0,f[b+4>>2]|0)|0,32)|0;zma(mna(f[a>>2]|0,f[b+8>>2]|0)|0,32)|0;switch(f[b+12>>2]|0){case 0:{d=f[b+16>>2]|0;if(Iab(d)|0){h=f[a+24>>2]|0;f[e>>2]=d;f[c>>2]=f[e>>2];Qs(a,KI(h,c)|0,b)}break}case 1:{QN(a,(f[a+24>>2]|0)+60|0);break}case 2:{fz(a,(f[a+24>>2]|0)+88|0);break}case 3:{yCa(yCa(zma(wfa(yCa(f[a>>2]|0,80967)|0,f[b>>2]|0)|0,32)|0,Aha(f[b+20>>2]|0)|0)|0,123274)|0;break}default:hb()}zma(f[a>>2]|0,41)|0;u=g;return}function Fs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+48|0;h=j+20|0;i=j;d=fQa(c)|0;g=a+116|0;f[g>>2]=d;e=a+140|0;gia(e,X(d,d)|0);e=f[e>>2]|0;d=(f[a+144>>2]|0)-e|0;while(1){if((d|0)<=0)break;k=e;b[k>>0]=0;d=d+-1|0;e=k+1|0}e=a+152|0;kha(e,f[g>>2]|0);e=f[e>>2]|0;d=(f[a+156>>2]|0)-e>>2;while(1){if((d|0)<=0)break;k=e;f[k>>2]=0;d=d+-1|0;e=k+4|0}gF(a,c);Jf(h,a);k=a+120|0;KD(k,h);NQa(h);Qj(i,k);su(f[a+40>>2]|0,f[a+44>>2]|0,i);NQa(i);Af(a);u=j;return}function Gs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+32|0;g=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;i=f[a+16>>2]|0;j=a+61|0;k=a+113|0;h=f[a+12>>2]|0;while(1){if((h|0)==(i|0))break;e=f[h>>2]|0;d=f[e+12>>2]|0;if(!((d|0)!=0|(b[c>>0]|0)==0)){f[l>>2]=f[e+16>>2];f[g>>2]=f[l>>2];d=KI(a,g)|0;e=f[d+4>>2]|0;f[m>>2]=f[f[h>>2]>>2];f[g>>2]=f[m>>2];Lp(c,e,g,82061);e=f[d+12>>2]|0;d=f[d+8>>2]|0;while(1){if((d|0)==(e|0))break;r=f[d>>2]|0;f[n>>2]=f[f[h>>2]>>2];f[g>>2]=f[n>>2];Lp(c,r,g,82109);d=d+4|0}e=f[h>>2]|0;d=f[e+12>>2]|0}if((d|0)==1){d=(b[j>>0]|0)!=0;f[o>>2]=f[e>>2];f[g>>2]=f[o>>2];Ou(c,d,g,82156,0)|0;e=f[h>>2]|0;d=f[e+12>>2]|0}if((d|0)==2){r=(b[k>>0]|0)!=0;f[p>>2]=f[e>>2];f[g>>2]=f[p>>2];Ou(c,r,g,82219,0)|0}h=h+4|0}u=q;return}function Hs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Iab(c)|0)){J_a();x=0;ia(52,i+13|0,71786)|0;k=x;x=0;if(k&1){Ia()|0;gCa()}else gCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(Sma(a,j)|0){J_a();x=0;ia(52,g|0,71818)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)gCa();Ia()|0;gCa()}c=b;f[j>>2]=c;d=a+40|0;e=f[d>>2]|0;do if(e>>>0<(f[a+44>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(464,a+36|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;LX(c);ubb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0){LX(d);ubb(d)}Ua(c|0)}while(0);k=vZ(a+208|0,b)|0;f[k>>2]=b;u=i;return}function Is(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0;i=u;u=u+32|0;m=i+16|0;n=i+12|0;j=i;g=MRa(f[a+4>>2]|0)|0;f[g+4>>2]=d;l=g+8|0;b[l>>0]=e;Kab(m);cLa(n,h[l>>0]|0,0);d=rh(c,g+12|0,m,f[n>>2]|0)|0;e=Bbb(f[m>>2]|0)|0;if((e|0)==(h[l>>0]|0|0)){n=UQa(a,Or(c,d)|0)|0;f[g+16>>2]=n;n=UQa(a,Or(c,d+1|0)|0)|0;f[g+20>>2]=n;n=UQa(a,Or(c,d+2|0)|0)|0;f[g+24>>2]=n;Jza(g);u=i;return g|0}a=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;n=h7a(93360)|0;x=0;va(87,j|0,93360,n|0);n=x;x=0;if(!(n&1)){x=0;ua(261,a|0,j|0);n=x;x=0;if(n&1)e=1;else{x=0;va(98,a|0,32200,457);x=0;e=0}d=Ia()|0;HTa(j);if(e)k=7}else{d=Ia()|0;k=7}if((k|0)==7)La(a|0);Ua(d|0);return 0}function Js(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d;c=jF(Or(b,0)|0)|0;if($1a(c,f[33104]|0)|0)Dc(a,b);do if(XW(b)|0){if($1a(c,f[33111]|0)|0){Ic(a,b,1);break}if($1a(c,f[32999]|0)|0){Qc(a,b,1);break}if($1a(c,f[33103]|0)|0){ud(a,b,1);break}if($1a(c,f[33108]|0)|0){sd(a,b,1);break}d=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=h7a(94477)|0;x=0;va(87,e|0,94477,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,d|0,e|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;HTa(e);if(c)g=17}else{a=Ia()|0;g=17}if((g|0)==17)La(d|0);Ua(a|0)}while(0);u=d;return}function Ks(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l+4|0;j=l;do if(b[a+33>>0]|0){h=yCa(134176,110602)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}m=Ia()|0;JCa(g);Ua(m|0)}while(0);d=c+8|0;switch(f[d>>2]|0){case 1:{k=9;break}case 2:{k=8;break}default:hb()}a:do if((k|0)==8){m=JDa(c+16|0,0)|0;jGa(a,f[m>>2]|0);switch(f[d>>2]|0){case 1:{k=9;break a}case 2:{i=a+28|0;Ev(f[i>>2]|0,64)|0;break a}default:hb()}}while(0);if((k|0)==9){i=a+28|0;Ev(f[i>>2]|0,63)|0}m=f[i>>2]|0;f4a(j,0);Yr(m,f[j>>2]|0)|0;u=l;return}function Ls(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+48|0;d=k+16|0;g=k+36|0;h=k+32|0;i=k;j=a+120|0;U0a(g,f[j>>2]|0);e=f[b>>2]|0;do if(!(vab(e)|0)){if(FMa(b)|0){c=(LRa(f[b+4>>2]|0)|0)+8|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];c=a0(g,d)|0;break}if(rab(e)|0){j=(q1(a,b)|0)+8|0;j=f[j>>2]|0;c=n9(f[a+116>>2]|0,j)|0;c=NKa(f[g>>2]|0,j,c)|0;break}if(w8a(e)|0){c=Ls(a,f[f[b+12>>2]>>2]|0)|0;break}if(Gab(e)|0){U0a(h,f[j>>2]|0);gUa(i,f[b+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];c=a0(h,d)|0;break}else hb()}else{j=f[b+4>>2]|0;c=n9(f[a+116>>2]|0,j)|0;c=NKa(f[g>>2]|0,j,c)|0}while(0);u=k;return c|0}function Ms(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;g=j+12|0;h=j+16|0;i=j;d=a+24|0;e=a+28|0;do if((p_(d,b)|0)==(e|0)){a=f[b>>2]|0;f[g>>2]=a}else{c=a+36|0;b=f[b>>2]|0;while(1){a=f[c>>2]|0;f[c>>2]=a+1;AY(i,a);x=0;ia(83,i|0,b|0)|0;a=x;x=0;if(a&1){b=10;break}f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,g|0,h|0);a=x;x=0;if(a&1){b=11;break}HTa(h);HTa(i);if((p_(d,g)|0)==(e|0)){b=13;break}}if((b|0)==10)a=Ia()|0;else if((b|0)==11){a=Ia()|0;HTa(h)}else if((b|0)==13){a=f[g>>2]|0;break}HTa(i);Ua(a|0)}while(0);u=j;return a|0}function Ns(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;c=j;g=a+4|0;f[g>>2]=0;x=0;va(150,c|0,a|0,1);e=x;x=0;a:do if(e&1){c=-1;i=8}else{do if(b[c>>0]|0){c=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;d=c+12|0;e=f[d>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+40>>2]|0,c|0)|0;e=x;x=0;if(e&1){c=-1;i=8;break a}}else{f[d>>2]=e+1;c=X6a(b[e>>0]|0)|0}if($1a(c,-1)|0){g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,g|0,f[g+16>>2]|6|0);g=x;x=0;if(g&1){i=8;break a}else break}else{f[g>>2]=1;break}}else c=-1;while(0);h=c}while(0);do if((i|0)==8){i=Ja(0)|0;Fa(i|0)|0;x=0;ta(450,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);i=x;x=0;if(!(i&1)){Ga();h=c;break}c=Ia()|0;x=0;sa(6);i=x;x=0;if(i&1){i=Ja(0)|0;r2a(i)}else Ua(c|0)}while(0);u=j;return h|0}function Os(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+32|0;i=k+8|0;c=k;j=b+8|0;g=b+12|0;if((Bbb(f[g>>2]|0)|0)>>>0>15){J_a();x=0;ia(52,k+16|0,111521)|0;h=x;x=0;if(!(h&1)?(h=Bbb(f[g>>2]|0)|0,x=0,ta(505,h|0),h=x,x=0,!(h&1)):0)gCa();Ia()|0;gCa()}I$a(i,j);GUa(c,j);h=i+4|0;e=f[c>>2]|0;c=f[c+4>>2]|0;d=a+36|0;while(1){if(!(lTa(f[i>>2]|0,f[h>>2]|0,e,c)|0))break;l=LOa(i)|0;m=f[l>>2]|0;m=fI(m,Bbb(f[d>>2]|0)|0)|0;f[l>>2]=m;RYa(i)}while(1){if((Bbb(f[g>>2]|0)|0)>>>0>=15)break;m=f[d>>2]|0;Bbb(m)|0;aaa(j,FSa(2,m)|0)}f[b+24>>2]=f[a+44>>2];l=b+4|0;m=f[l>>2]|0;f[l>>2]=2;ZMa(b);m=cL(b,m,Bbb(f[d>>2]|0)|0)|0;BVa(f[a+16>>2]|0,m)|0;u=k;return}function Ps(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l+24|0;e=l+8|0;g=l;h=a+4|0;c=f[h>>2]|0;if(c>>>0>>0){i=f[a+8>>2]|0;d=i<<5;j=b-c|0;do if(d>>>0>>0|c>>>0>(d-j|0)>>>0){f[e>>2]=0;c=e+4|0;f[c>>2]=0;f[e+8>>2]=0;if((b|0)>=0){i=i<<6;b=b+31&-32;x=0;ua(3100,e|0,(d>>>0<1073741823?(i>>>0>>0?b:i):2147483647)|0);i=x;x=0;if(!(i&1)){i=f[h>>2]|0;f[c>>2]=i+j;c=f[a>>2]|0;f[k>>2]=f[e>>2];f[k+4>>2]=0;rC(g,c,0,c+(i>>>5<<2)|0,i&31,k);c=g;i=f[c>>2]|0;c=f[c+4>>2]|0;_8(a,e);I1a(f[e>>2]|0);a=i;break}}else{x=0;sa(9);x=0}l=Ia()|0;I1a(f[e>>2]|0);Ua(l|0)}else{a=(f[a>>2]|0)+(c>>>5<<2)|0;f[h>>2]=b;c=c&31}while(0);if(j|0){f[k>>2]=a;f[k+4>>2]=c;VS(k,j)}}else f[h>>2]=b;u=l;return}function Qs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;yCa(f[a>>2]|0,80976)|0;if(c|0){e=zma(f[a>>2]|0,32)|0;wfa(e,f[c>>2]|0)|0}d=b+8|0;c=b+12|0;if((f[c>>2]|0)!=(f[d>>2]|0)){yCa(f[a>>2]|0,f[a+12>>2]|0)|0;zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80982)|0;e=f[c>>2]|0;c=f[d>>2]|0;while(1){d=f[a>>2]|0;if((c|0)==(e|0))break;d=zma(d,32)|0;yCa(d,Aha(f[c>>2]|0)|0)|0;c=c+4|0}zma(d,41)|0}c=b+4|0;if(f[c>>2]|0){yCa(f[a>>2]|0,f[a+12>>2]|0)|0;zma(f[a>>2]|0,40)|0;b=tPa(f[a>>2]|0,80840)|0;zma(yCa(b,Aha(f[c>>2]|0)|0)|0,41)|0}yCa(f[a>>2]|0,123274)|0;return}function Rs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;d=a+8|0;Cw(a,a+4|0,d,c)|0;h=a+12|0;a:while(1){if((h|0)==(b|0)){i=3;break}if(iD(c,h,d)|0){e=f[h>>2]|0;f[h>>2]=0;f[k>>2]=e;e=h;while(1){l=f[d>>2]|0;f[d>>2]=0;g=f[e>>2]|0;f[e>>2]=l;if(g|0){LX(g);ubb(g)}if((d|0)==(a|0)){d=a;break}e=d+-4|0;x=0;g=ja(71,c|0,k|0,e|0)|0;l=x;x=0;if(l&1)break a;if(g){l=d;d=e;e=l}else break}l=f[k>>2]|0;f[k>>2]=0;e=f[d>>2]|0;f[d>>2]=l;if(e|0){LX(e);ubb(e)}d=f[k>>2]|0;f[k>>2]=0;if(d|0){LX(d);ubb(d)}}d=h;h=h+4|0}if((i|0)==3){u=j;return}d=Ia()|0;e=f[k>>2]|0;f[k>>2]=0;if(e|0){LX(e);ubb(e)}Ua(d|0)}function Ss(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;f[a>>2]=b+12;f[a+4>>2]=c;f[a+8>>2]=d;f[a+12>>2]=e;h=a+16|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[a+32>>2]=1065353216;g=(Bbb(f[b+16>>2]|0)|0)+-1|0;b=-1;c=0;a:while(1){e=(b|0)==-1;while(1){if(c>>>0>=g>>>0){e=17;break a}d=f[a>>2]|0;if(e){x=0;d=ia(75,d|0,c|0)|0;i=x;x=0;if(i&1){e=9;break a}x=0;d=ia(209,a|0,f[d>>2]|0)|0;i=x;x=0;if(i&1){e=9;break a}if(d|0){e=8;break}}else{x=0;d=ia(75,d|0,c|0)|0;i=x;x=0;if(i&1){e=9;break a}if(N8(f[d>>2]|0)|0){e=14;break}}c=c+1|0}if((e|0)==8){d=c;c=c+1|0}else if((e|0)==14){x=0;c=ja(89,a|0,b|0,c|0)|0;i=x;x=0;if(i&1){e=10;break}else d=-1}b=d}if((e|0)==9)c=Ia()|0;else if((e|0)==10)c=Ia()|0;else if((e|0)==17)return;cga(h);Ua(c|0)}function Ts(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+64|0;c=k+16|0;d=k+52|0;e=k+56|0;j=k+40|0;g=k+32|0;h=k;i=b+4|0;do if((f[i>>2]|0)!=5){l=f[a+36>>2]|0;Bbb(l)|0;U0a(d,l);l=yj(b)|0;f[e>>2]=l;f[g>>2]=f[b+24>>2];m$a(h,Bbb(f[b+12>>2]|0)|0);f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];h=a0(d,c)|0;f[g+4>>2]=h;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;ua(168,j|0,2);h=x;x=0;if(h&1){l=Ia()|0;uSa(j);Ua(l|0)}mda(j,g,g+8|0);l=f[i>>2]|0;x=0;f[c>>2]=f[e>>2];c=ka(13,d|0,c|0,j|0,l|0)|0;l=x;x=0;if(l&1){l=Ia()|0;uSa(j);Ua(l|0)}else{BVa(f[a+16>>2]|0,c)|0;uSa(j);break}}while(0);u=k;return} -function SB(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+52>>2]|0;d=a+-16+16|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;Rma(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;r1(d,f[a>>2]|0);a=a+4|0}baa(d,f[b+76>>2]|0,f[b+80>>2]|0);baa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function TB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;f[g>>2]=c;f[g+4>>2]=d;while(1){if((a|0)==(b|0))break;if(mI(g,a)|0){e=5;break}a=a+4|0}a:do if((e|0)==5){d=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=d;break a}}while(mI(g,a)|0);e=f[a>>2]|0;f[a>>2]=0;c=f[d>>2]|0;f[d>>2]=e;if(c|0){LX(c);ubb(c)}d=d+4|0}}while(0);u=h;return b|0}function UB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110589)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);DS(a,c);u=i;return}function VB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;if(e>>>0>357913941)_da();i=((f[a+8>>2]|0)-c|0)/12|0;c=i<<1;RM(g,i>>>0<178956970?(c>>>0>>0?e:c):357913941,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(679,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;Vaa(g);Ua(i|0)}else{f[c>>2]=d+12;tD(a,g);Vaa(g);u=h;return}}function WB(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;k=nq(a)|0;rHa(c,nq(a)|0,0)|0;h=(k&1|0)==0;c=k>>>1&1;do if((k&3|0)==2){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,95639,h7a(95639)|0);x=0;ua(1869,a|0,i|0);k=x;x=0;if(k&1){k=Ia()|0;HTa(i);Ua(k|0)}else{HTa(i);break}}while(0);b[e>>0]=c;if(h)f[d>>2]=g;else rHa(d,nq(a)|0,0)|0;u=j;return}function XB(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=a+44|0;a=f[h>>2]|0;c=LPa(c)|0;c=NKa(f[a>>2]|0,c,1)|0;i=f[h>>2]|0;e=LPa(e)|0;e=NKa(f[i>>2]|0,e,1)|0;e=Fpa(f[a>>2]|0,16,c,e)|0;c=f[h>>2]|0;d=LPa(d)|0;d=NKa(f[c>>2]|0,d,1)|0;h=f[h>>2]|0;g=LPa(g)|0;g=NKa(f[h>>2]|0,g,1)|0;g=Fpa(f[c>>2]|0,16,d,g)|0;return F$(a,b,Fpa(f[a>>2]|0,8,e,g)|0)|0}function YB(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=a+44|0;a=f[h>>2]|0;c=LPa(c)|0;c=NKa(f[a>>2]|0,c,1)|0;i=f[h>>2]|0;e=LPa(e)|0;e=NKa(f[i>>2]|0,e,1)|0;e=Fpa(f[a>>2]|0,15,c,e)|0;c=f[h>>2]|0;d=LPa(d)|0;d=NKa(f[c>>2]|0,d,1)|0;h=f[h>>2]|0;g=LPa(g)|0;g=NKa(f[h>>2]|0,g,1)|0;g=Fpa(f[c>>2]|0,15,d,g)|0;return F$(a,b,Fpa(f[a>>2]|0,7,e,g)|0)|0}function ZB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h+8|0;c=h;d=a+4|0;tPa(f[d>>2]|0,75637)|0;e=b+8|0;I$a(g,e);GUa(c,e);e=g+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(lTa(f[g>>2]|0,f[e>>2]|0,a,c)|0))break;i=LOa(g)|0;j=zma(f[d>>2]|0,32)|0;wfa(j,f[i>>2]|0)|0;RYa(g)}j=zma(f[d>>2]|0,32)|0;wfa(j,f[b+24>>2]|0)|0;u=h;return}function _B(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=Py(a,b,c)|0;e=f[d>>2]|0;g=f[c>>2]|0;if(WPa(e,g)|0){f[c>>2]=e;f[d>>2]=g;d=h+1|0;e=f[c>>2]|0;g=f[b>>2]|0;if(WPa(e,g)|0){f[b>>2]=e;f[c>>2]=g;d=f[b>>2]|0;e=f[a>>2]|0;if(WPa(d,e)|0){f[a>>2]=d;f[b>>2]=e;d=h+3|0}else d=h+2|0}}else d=h;return d|0}function $B(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=zF(c,h,d)|0;d=f[g>>2]|0;if(!d){L0(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function aC(a,c){a=a|0;c=c|0;var d=0,e=0;tW(a,(((f[a+4>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);e=a6()|0;a:while(1){az(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 0:{a=3;break a}case 93:{a=7;break a}default:{}}Lea(e,Rm(a,c,66728)|0);az(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 93:{a=7;break a}case 44:break;default:{a=6;break a}}f[c>>2]=d+1}if((a|0)==3)Ca(66707,65740,680,66712);else if((a|0)==6)hb();else if((a|0)==7){f[c>>2]=d+1;return e|0}return 0}function bC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;g=i;if(!(b[c>>0]|0))yCa(a,f[c+20>>2]|0)|0;else{zma(a,40)|0;d=c+4|0;I$a(h,d);GUa(g,d);d=h+4|0;e=f[g>>2]|0;c=f[g+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[d>>2]|0,e,c)|0))break;g=LOa(h)|0;g=f[g>>2]|0;bC(zma(a,32)|0,g)|0;RYa(h)}yCa(a,118686)|0}u=i;return a|0}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+48|0;d=i+16|0;j=i+36|0;e=i;g=i+32|0;f[j>>2]=c;b=Vz(b,j)|0;do if(b){j=b+16|0;f[e>>2]=f[j>>2];f[e+4>>2]=f[j+4>>2];f[e+8>>2]=f[j+8>>2];f[e+12>>2]=f[j+12>>2];if(Iab(f[e>>2]|0)|0){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];rAa(a,d);break}else{h=5;break}}else h=5;while(0);if((h|0)==5){f[g>>2]=f[33152];f[d>>2]=f[g>>2];hXa(a,d)}u=i;return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h+8|0;d=h;zma(f[a>>2]|0,40)|0;GXa(e,f[a+28>>2]|0,f[a>>2]|0);_m(e,b);VBa(a);g=b+8|0;I$a(e,g);GUa(d,g);g=e+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;while(1){if(!(lTa(f[e>>2]|0,f[g>>2]|0,c,d)|0))break;i=LOa(e)|0;OP(a,f[i>>2]|0);RYa(e)}OP(a,f[b+28>>2]|0);kfa(a);u=h;return}function eC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e+8|0;g=e;c=f[a+24>>2]|0;f[g>>2]=f[b+24>>2];f[d>>2]=f[g>>2];b=ZI(c,d)|0;c=a+32|0;if(!(K5(c,b)|0)){bG(d,c,b,b);g=yCa(134008,100922)|0;g=yCa(wfa(g,f[f[a+28>>2]>>2]|0)|0,101082)|0;yCa(wfa(g,f[b>>2]|0)|0,101107)|0}u=e;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(MKa(f[c>>2]|0,f[(f[a>>2]|0)+12>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){g=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=g;break a}d=f[a>>2]|0}while(MKa(f[c>>2]|0,f[d+12>>2]|0)|0);f[a>>2]=0;e=f[g>>2]|0;f[g>>2]=d;if(e|0)ubb(e);g=g+4|0}}while(0);return b|0}function gC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=Xx(a,b,c,e)|0;g=e+4|0;if(Mv(f[e>>2]|0,f[g>>2]|0,f[d>>2]|0,f[c>>2]|0)|0){i=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=i;d=h+1|0;if(Mv(f[e>>2]|0,f[g>>2]|0,f[c>>2]|0,f[b>>2]|0)|0){i=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=i;if(Mv(f[e>>2]|0,f[g>>2]|0,f[b>>2]|0,f[a>>2]|0)|0){d=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=d;d=h+3|0}else d=h+2|0}}else d=h;return d|0}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;d=k+24|0;g=k+20|0;h=k;i=f[a>>2]|0;j=(f[a+4>>2]|0)-i>>3;e=j+1|0;if(e>>>0>536870911)_da();else{l=(f[a+8>>2]|0)-i|0;i=l>>2;DN(h,l>>3>>>0<268435455?(i>>>0>>0?e:i):536870911,j,a+8|0);j=h+8|0;i=f[j>>2]|0;E1a(g,f[b>>2]|0);c=f[c>>2]|0;f[d>>2]=f[g>>2];cUa(i,d,c);f[j>>2]=i+8;HO(a,h);vha(h);u=k;return}}function iC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=zF(c,h,d)|0;d=f[g>>2]|0;if(!d){$Z(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function jC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;e=h;if(sab(f[b>>2]|0)|0)Ca(76184,76199,166,76222);U0a(e,f[a+120>>2]|0);g=rT(b)|0;if(o2a(g)|0){i=i3(a,g)|0;j=dn(g,c?15:16)|0;c=Ls(a,b)|0;g=Ls(a,i)|0;g=dIa(Fpa(f[e>>2]|0,j,c,g)|0,d)|0;e=PK(a,g)|0;i6(e,rga(a,b,d)|0);i6(e,i);a=g}u=h;return a|0}function kC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a:do if((c-a|0)>12){g=0;f=a;while(1){if(g>>>0>=13)break;if((b[f>>0]|0)!=(b[124907+g>>0]|0)){f=a;break a}g=g+1|0;f=f+1|0}b:do if((f|0)==(c|0))f=c;else{if((b[f>>0]|0)==95){g=f+1|0;if((g|0)==(c|0)){f=a;break a}if(((b[g>>0]|0)+-48|0)>>>0>=10){f=a;break a}f=f+2|0}while(1){if((f|0)==(c|0)){f=c;break b}if(((b[f>>0]|0)+-48|0)>>>0>=10)break b;f=f+1|0}}while(0);if((d|0)!=(e|0))uoa(e+-24|0,0,124921)|0;else f=a}else f=a;while(0);return f|0}function lC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>4;e=d+1|0;if(e>>>0>268435455)_da();i=(f[a+8>>2]|0)-c|0;c=i>>3;FN(g,i>>4>>>0<134217727?(c>>>0>>0?e:c):268435455,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(1293,d|0,f[b>>2]|0);b=x;x=0;if(b&1){i=Ia()|0;wha(g);Ua(i|0)}else{f[c>>2]=d+16;MO(a,g);wha(g);u=h;return}}function mC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;e=h;g=b+8|0;d=f[g>>2]|0;if(Iab(d)|0){f[e>>2]=d;f[c>>2]=f[e>>2];Hl(a,c);e=a+48|0;d=AB(e,g)|0;if(!d)Ca(85258,85283,363,108382);c=f[d+16>>2]|0;if(b2a(c)|0)Fta(a,c,b);x4(e,d)}if(!(f[b+4>>2]|0))Qwa(a,o2a(f[(f[b+12>>2]|0)+4>>2]|0)|0,b);u=h;return}function nC(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;a:do if(b[a+16>>0]|0?(d=f[a>>2]|0,h=f[d+36>>2]|0,d=f[d+40>>2]|0,wya(h,d)|0):0){c=f[a+8>>2]|0;a=f[a+4>>2]|0;g=c-a>>4;if((g|0)!=(d-h>>2|0))hpa();d=0;while(1){if(d>>>0>=g>>>0){d=7;break}e=f[h+(d<<2)>>2]|0;if((e|0)!=(f[a+(d<<4)>>2]|0)){d=9;break}if(_1a(f[e>>2]|0,f[a+(d<<4)+4>>2]|0)|0){d=11;break}d=d+1|0}if((d|0)==7)while(1){if((a|0)==(c|0))break a;OS(a);a=a+16|0}else if((d|0)==9)hpa();else if((d|0)==11)hpa()}while(0);return}function oC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];g=a+4|0;c=b+4|0;f[g>>2]=0;e=a+8|0;f[e>>2]=0;d=a+12|0;f[d>>2]=0;f[g>>2]=f[c>>2];g=b+8|0;f[e>>2]=f[g>>2];e=b+12|0;f[d>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;c=a+16|0;g=b+16|0;f[c>>2]=0;e=a+20|0;f[e>>2]=0;d=a+24|0;f[d>>2]=0;f[c>>2]=f[g>>2];c=b+20|0;f[e>>2]=f[c>>2];e=b+24|0;f[d>>2]=f[e>>2];f[e>>2]=0;f[c>>2]=0;f[g>>2]=0;g=a+28|0;c=b+28|0;f[g>>2]=0;e=a+32|0;f[e>>2]=0;d=a+36|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+32|0;f[e>>2]=f[a>>2];b=b+36|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function pC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=zF(c,h,d)|0;d=f[g>>2]|0;if(!d){b1(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function qC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+8|0;k=c+4|0;bA(a,a+4|0,d,f[f[c>>2]>>2]|0,f[k>>2]|0)|0;j=a+12|0;while(1){if((j|0)==(b|0))break;l=f[j>>2]|0;g=f[d>>2]|0;i=f[k>>2]|0;h=f[f[c>>2]>>2]|0;if(T4(h,i,l,g)|0){e=j;while(1){f[e>>2]=g;if((d|0)==(a|0)){d=a;break}e=d+-4|0;g=f[e>>2]|0;if(!(T4(h,i,l,g)|0))break;else{m=d;d=e;e=m}}f[d>>2]=l}d=j;j=j+4|0}return}function rC(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;d=(d-b<<3)+e-c|0;if((d|0)>0){if(!c){h=g;e=f[g>>2]|0}else{i=32-c|0;h=(d|0)<(i|0)?d:i;i=-1>>>(i-h|0)&-1<>2]|0;f[e>>2]=f[e>>2]&~i|f[b>>2]&i;i=g+4|0;c=(f[i>>2]|0)+h|0;e=e+(c>>>5<<2)|0;f[g>>2]=e;f[i>>2]=c&31;d=d-h|0;h=g;b=b+4|0}i=(d|0)/32|0;fia(e|0,b|0,i<<2|0)|0;e=d-(i<<5)|0;c=(f[h>>2]|0)+(i<<2)|0;f[h>>2]=c;d=c;if((e|0)>0){h=-1>>>(32-e|0);f[c>>2]=f[c>>2]&~h|f[b+(i<<2)>>2]&h;f[g+4>>2]=e}}else d=f[g>>2]|0;f[a>>2]=d;f[a+4>>2]=f[g+4>>2];return}function sC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+8|0;g=h+4|0;d=h;f[d>>2]=f[b>>2];f[c>>2]=f[d>>2];c=Ms(a,c)|0;f[g>>2]=c;d=a+4|0;e=f[d>>2]|0;if((e|0)==(f[a+8>>2]|0))IL(a,g);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}c=WW(a+12|0,b)|0;d=c+4|0;e=f[d>>2]|0;if((e|0)==(f[c+8>>2]|0))IL(c,g);else{f[e>>2]=f[g>>2];f[d>>2]=(f[d>>2]|0)+4}a=gZ(a+24|0,g)|0;f[a>>2]=f[b>>2];u=h;return f[g>>2]|0}function tC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+32|0;j=e+16|0;k=e;h=a+44|0;g=f[h>>2]|0;i=NKa(f[g>>2]|0,c,1)|0;a=f[h>>2]|0;m$a(k,31);f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[j+12>>2]=f[k+12>>2];a=a0(a,j)|0;a=Lya(g,b,Fpa(f[g>>2]|0,12,i,a)|0)|0;b=f[h>>2]|0;c=NKa(f[b>>2]|0,c,1)|0;d=NKa(f[f[h>>2]>>2]|0,d,1)|0;d=F$(g,a,Fpa(f[b>>2]|0,12,c,d)|0)|0;u=e;return d|0}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;f[k>>2]=b;g=f[a>>2]|0;j=a+4|0;c=f[j>>2]|0;d=Y7(g,c,b)|0;e=d;i=c;do if((d|0)==(c|0))if((c|0)==(f[a+8>>2]|0)){IL(a,k);break}else{f[c>>2]=b;f[j>>2]=c+4;break}else if((f[d>>2]|0)>>>0>b>>>0){h=e-g>>2;kha(a,(i-g>>2)+1|0);e=f[a>>2]|0;c=e+(h<<2)|0;d=f[j>>2]|0;e=e+(d-e>>2<<2)+-4-c|0;if(e){fia(d+(0-(e>>2)<<2)|0,c|0,e|0)|0;c=(f[a>>2]|0)+(h<<2)|0;b=f[k>>2]|0}f[c>>2]=b}while(0);u=l;return}function vC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;c=l+32|0;h=l+24|0;g=l+8|0;i=l+16|0;j=l;i7a(b);k=mUa(f[b+32>>2]|0)|0;d=b+8|0;I$a(h,d);GUa(g,d);d=h+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[d>>2]|0,e,g)|0))break;m=LOa(h)|0;f[i>>2]=f[m>>2];f[c>>2]=f[i>>2];Eca(a,c,k);RYa(h)}f[j>>2]=f[b+24>>2];f[c>>2]=f[j>>2];Eca(a,c,k);u=l;return}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;if(e>>>0>357913941)_da();i=((f[a+8>>2]|0)-c|0)/12|0;c=i<<1;RM(g,i>>>0<178956970?(c>>>0>>0?e:c):357913941,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(1407,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;Vaa(g);Ua(i|0)}else{f[c>>2]=d+12;tD(a,g);Vaa(g);u=h;return}}function xC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;g=j+24|0;h=j+16|0;c=j+8|0;i=j;d=b+8|0;I$a(h,d);GUa(c,d);d=a+80|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;k=LOa(h)|0;f[i>>2]=f[k>>2];bG(g,d,i,i);RYa(h)}k=b+24|0;bG(g,d,k,k);u=j;return}function yC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=a1a(c)|0;a:do if(b){g=b+-1|0;h=(g&b|0)==0;if(!h)if(e>>>0>>0)i=e;else i=(e>>>0)%(b>>>0)|0;else i=g&e;a=f[a+(i<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}d=f[a+4>>2]|0;if((d|0)==(e|0)){if(x_a(f[a+8>>2]|0,c)|0)break a}else{if(!h){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&g;if((d|0)!=(i|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function zC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b+48>>2]|0;a:do if(!(c&16)){if(c&8|0){e=f[b+8>>2]|0;b=f[b+16>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nQ(a,e,b);break}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break a;f[a+(c<<2)>>2]=0;c=c+1|0}}else{d=b+44|0;c=f[d>>2]|0;e=f[b+24>>2]|0;if(c>>>0>>0){f[d>>2]=e;c=e}b=f[b+20>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nQ(a,b,c)}while(0);return}function AC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;g=j+24|0;h=j+16|0;c=j+8|0;i=j;d=b+8|0;I$a(h,d);GUa(c,d);d=a+96|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;k=LOa(h)|0;f[i>>2]=f[k>>2];bG(g,d,i,i);RYa(h)}k=b+24|0;bG(g,d,k,k);u=j;return}function BC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d;b=jF(Or(b,1)|0)|0;a=Jc(b,c,f[a+4>>2]|0)|0;if(a|0){u=d;return a|0}c=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;d=h7a(92835)|0;x=0;va(87,e|0,92835,d|0);d=x;x=0;if(!(d&1)){x=0;ua(261,c|0,e|0);d=x;x=0;if(d&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;HTa(e);if(b)g=7}else{a=Ia()|0;g=7}if((g|0)==7)La(c|0);Ua(a|0);return 0}function CC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=zF(c,h,d)|0;d=f[g>>2]|0;if(!d){K1(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function DC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=f[a>>2]|0;i=bV(c)|0;j=j+16|0;d=0;e=0;a:while(1){h=(d|0)==(i|0);b:while(1){g=Ns(f[j>>2]|0)|0;switch(g|0){case -1:{d=0;break a}case 34:{if(!e){d=0;break b}if(h){k=10;break a}break}default:if(e){k=8;break b}}e=0}if((k|0)==8){k=0;d=d+((g|0)==(b[c+d>>0]|0)&1)|0}e=1}if((k|0)==10){d=a+4|0;Gca(f[f[d>>2]>>2]|0);Nm(f[(f[f[a+8>>2]>>2]|0)+16>>2]|0,58);Gca(f[f[d>>2]>>2]|0);d=1}return d|0}function EC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+16|0;rS(d,1747,b);e=S$a(f[b>>2]|0)|0;if(e){c=e+8|0;if((f[(f[c>>2]|0)+4>>2]|0)!=5){rS(d,1748,b);a=e+16|0;if(f[a>>2]|0){rS(d,1746,a);rS(d,1749,b)}rS(d,1746,e+12|0);rS(d,1750,b);rS(d,1746,c)}}else fe(a,b);return}function FC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+16|0;i=k+8|0;h=k;kT(j,b);I$a(i,j);hUa(h,j);d=i+4|0;g=f[h>>2]|0;h=f[h+4>>2]|0;while(1){c=f[i>>2]|0;e=f[d>>2]|0;if(!(lTa(c,e,g,h)|0)){c=3;break}e=A$a(f[c>>2]|0,e)|0;x=0;ia(118,a|0,e|0)|0;e=x;x=0;if(e&1){c=6;break}RYa(i)}if((c|0)==3){_$a(j);j=Qxa(a,f[b+4>>2]|0)|0;u=k;return j|0}else if((c|0)==6){k=Ia()|0;_$a(j);Ua(k|0)}return 0}function GC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/24|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/24|0;d=c+b|0;if(d>>>0>178956970)_da();else{e=(h-e|0)/24|0;h=e<<1;_M(g,e>>>0<89478485?(h>>>0>>0?d:h):178956970,c,a+8|0);x1(g,b);XN(a,g);jea(g);break}}else f2(a,b);while(0);u=i;return}function HC(a){a=a|0;var b=0,c=0,d=0,e=0;a:do switch(f[a>>2]|0){case 1:{b=f[f[a+4>>2]>>2]|0;if(x6a(b)|0){b=$Pa(a,0)|0;b=gB(b,$Pa(a,1)|0)|0;break a}if(v6a(b)|0){b=$Pa(a,1)|0;b=gB(b,$Pa(a,2)|0)|0}else b=0;break}case 2:{c=$Pa(a,1)|0;d=a+12|0;e=a+16|0;b=2;while(1){if(b>>>0>=(f[e>>2]|0)-(f[d>>2]|0)>>2>>>0){b=1;break a}if(mYa(c,$Pa(a,b)|0)|0){b=0;break}else b=b+1|0}break}default:b=0}while(0);return b|0}function IC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+48|0;g=k+32|0;h=k+24|0;c=k+8|0;i=k+16|0;j=k;d=b+8|0;I$a(h,d);GUa(c,d);d=a+36|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;l=LOa(h)|0;f[i>>2]=f[l>>2];f[g>>2]=f[i>>2];m=Gq(d,g)|0;f[l>>2]=m;RYa(h)}f[j>>2]=f[b+24>>2];f[g>>2]=f[j>>2];m=Gq(d,g)|0;f[b+24>>2]=m;u=k;return}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>4;e=d+1|0;if(e>>>0>268435455)_da();i=(f[a+8>>2]|0)-c|0;c=i>>3;FN(g,i>>4>>>0<134217727?(c>>>0>>0?e:c):268435455,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(2401,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;Kda(g);Ua(i|0)}else{f[c>>2]=d+16;UN(a,g);Kda(g);u=h;return}}function KC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>4;e=d+1|0;if(e>>>0>268435455)_da();i=(f[a+8>>2]|0)-c|0;c=i>>3;FN(g,i>>4>>>0<134217727?(c>>>0>>0?e:c):268435455,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(1874,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;Kda(g);Ua(i|0)}else{f[c>>2]=d+16;UN(a,g);Kda(g);u=h;return}}function LC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;a=a+4|0;d=IG(c,f[a>>2]|0,a)|0;if((d|0)!=(a|0)?(h=d+16|0,e=b[h+11>>0]|0,i=e<<24>>24<0,e=i?f[d+20>>2]|0:e&255,g=b[c+11>>0]|0,j=g<<24>>24<0,g=j?f[c+4>>2]|0:g&255,c=AQa(j?f[c>>2]|0:c,i?f[h>>2]|0:h,e>>>0>>0?e:g)|0,(((c|0)==0?(g>>>0>>0?-2147483648:0):c)|0)>=0):0)a=d;return a|0}function MC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;d=k+24|0;g=k+20|0;h=k;i=f[a>>2]|0;j=(f[a+4>>2]|0)-i>>3;e=j+1|0;if(e>>>0>536870911)_da();else{l=(f[a+8>>2]|0)-i|0;i=l>>2;DN(h,l>>3>>>0<268435455?(i>>>0>>0?e:i):536870911,j,a+8|0);j=h+8|0;i=f[j>>2]|0;f[g>>2]=f[b>>2];c=f[c>>2]|0;f[d>>2]=f[g>>2];cUa(i,d,c);f[j>>2]=i+8;HO(a,h);vha(h);u=k;return}}function NC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;a:do if(b){e=b+-1|0;g=(e&b|0)==0;if(!g)if(c>>>0>>0)h=c;else h=(c>>>0)%(b>>>0)|0;else h=e&c;a=f[a+(h<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}d=f[a+4>>2]|0;if((d|0)==(c|0)){if((f[a+8>>2]|0)==(c|0))break a}else{if(!g){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&e;if((d|0)!=(h|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function OC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+32|0;c=h;d=h+16|0;e=a+172|0;g=vA(e,b)|0;if(!g){U0a(d,f[a+120>>2]|0);f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];c=a0(d,c)|0;c=dIa(c,c)|0;d=PK(a,c)|0;g=nm(e,b)|0;f[g>>2]=d}else c=f[g+24>>2]|0;u=h;return c|0}function PC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=qwa(f[b>>2]|0,0)|0;e=f[a+16>>2]|0;if(e|0)aaa(g+12|0,e);if(d)aaa(g+12|0,F_(b,f[c+100>>2]|0)|0);a:do switch(f[a+4>>2]|0){case 1:{aaa(g+12|0,fca(b,f[c+100>>2]|0)|0);break}case 2:{a=f[a>>2]|0;if(!a)Ca(89376,88981,117,89004);else{aaa(g+12|0,vba(b,f[a+4>>2]|0)|0);break a}break}default:{}}while(0);rt(g);return g|0}function QC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+96|0;e=h+92|0;g=h;d=f[b>>2]|0;f[e>>2]=d;fA(g,_Ya(f[a+40>>2]|0)|0,0);if(!(cOa(g,f[d>>2]|0)|0?(x=0,ua(1154,a|0,g|0),b=x,x=0,b&1):0))c=4;do if((c|0)==4){b=a+136|0;c=f[b>>2]|0;if((c|0)==(f[a+140>>2]|0)){x=0;ua(640,a+132|0,e|0);e=x;x=0;if(e&1)break}else{f[c>>2]=d;f[b>>2]=(f[b>>2]|0)+4}V7(g);u=h;return}while(0);h=Ia()|0;V7(g);Ua(h|0)}function RC(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=Nia()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(1415,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;_Ba(a);ubb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){_Ba(b);ubb(b)}Ua(a|0)}while(0);u=e;return}function SC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+16|0;g=h;b=mq(a,b,e,h+12|0,c)|0;if(!(f[b>>2]|0)){r2(g,a,d);LZ(a,f[e>>2]|0,b,f[g>>2]|0)}u=h;return}function TC(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=a+12|0;c=a+16|0;if(Bbb(f[c>>2]|0)|0){g=MCa(d)|0;g=f[g>>2]|0;b=1;while(1){if(b>>>0>=(Bbb(f[c>>2]|0)|0)>>>0)break;h=JDa(d,b)|0;if(lCa(f[h>>2]|0)|0?(e=b+-1|0,h=JDa(d,e)|0,(lCa(f[h>>2]|0)|0)==0):0){j=JDa(d,e)|0;h=JDa(d,b)|0;i=f[j>>2]|0;f[j>>2]=f[h>>2];f[h>>2]=i}b=b+1|0}j=MCa(d)|0;if((f[j>>2]|0)!=(g|0))rt(a)}return}function UC(){var a=0,b=0,c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;h=e+32|0;c=e+24|0;i=e+16|0;g=e;e=e+36|0;a=jAa()|0;if(a|0?(d=f[a>>2]|0,d|0):0){a=d+48|0;b=f[a>>2]|0;a=f[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){f[c>>2]=122490;GQa(122440,c)}if((b|0)==1126902529&(a|0)==1129074247)a=f[d+44>>2]|0;else a=d+80|0;f[e>>2]=a;d=f[d>>2]|0;a=f[d+4>>2]|0;if(eM(39360,d,e)|0){i=f[e>>2]|0;i=bc[f[(f[i>>2]|0)+8>>2]&511](i)|0;f[g>>2]=122490;f[g+4>>2]=a;f[g+8>>2]=i;GQa(122354,g)}else{f[i>>2]=122490;f[i+4>>2]=a;GQa(122399,i)}}GQa(122478,h)}function VC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,f=0,g=0;e=+NNa(b);c=qRa(e)|0;d=I&2147483647;do if(!(d>>>0>2146435072|(d|0)==2146435072&c>>>0>0)){if((c|0)==0&(d|0)==2146435072){CAa(a,e);break}c=AHa(b)|0;d=I;f=wOa(c|0,d|0,536870911,-1206910976)|0;g=I;if(g>>>0<0|(g|0)==0&f>>>0<268435455){CAa(a,3402823466385288598117041.0e14);break}g=wOa(c|0,d|0,536870911,940572672)|0;f=I;if(f>>>0<0|(f|0)==0&g>>>0<268435455){CAa(a,-3402823466385288598117041.0e14);break}if(e<-3402823466385288598117041.0e14){CAa(a,-C);break}if(e>3402823466385288598117041.0e14){CAa(a,C);break}else{tIa(a,b);break}}else CAa(a,e);while(0);return}function WC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=D1a(a)|0;while(1){a=f[e+16>>2]|0;if(KVa(c,a)|0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(!(KVa(a,c)|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function XC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;e=c+20|0;if((b[e>>0]|0)!=0?(ixa(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c),(b[e>>0]|0)!=0):0){d=f[a+36>>2]|0;Bbb(d)|0;d=(b[d+114>>0]|0)==0}else d=0;Vqa(a,d,c,83470);d=c+8|0;g=c+4|0;XX(a,b[d>>0]|0,f[g>>2]|0,c);i=Bbb(f[c+16>>2]|0)|0;Pq(a,i,f[g>>2]|0,h[d>>0]|0,(b[e>>0]|0)!=0,c);Nja(a,f[(f[c+24>>2]|0)+4>>2]|0,c);if(b[e>>0]|0)Vqa(a,(b[c+9>>0]|0)!=0,c,84391);return}function YC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+64|0;e=h;g=a+52|0;d=f[a+48>>2]|0;while(1){if((d|0)==(g|0))break;f[(f[d+16>>2]|0)+8>>2]=f[d+20>>2];c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}do if(f[a+56>>2]|0){gX(e);g=f[a+20>>2]|0;Bbb(g)|0;x=0;va(94,e+16|0,b|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;pDa(e);Ua(h|0)}else{pDa(e);break}}while(0);u=h;return}function ZC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i+12|0;g=i+4|0;d=i+8|0;e=i;f[g>>2]=b;h=b;if(!(f[b+12>>2]|0)){f[e>>2]=f[b+8>>2];j=f[a+24>>2]|0;b=f[a+28>>2]|0;f[c>>2]=f[e>>2];e=o$a(GD(j,b,c)|0)|0;f[d>>2]=e;do if(e|0){c=hY(a+36|0,d)|0;a=c+4|0;b=f[a>>2]|0;if((b|0)==(f[c+8>>2]|0)){IL(c,g);break}else{f[b>>2]=h;f[a>>2]=(f[a>>2]|0)+4;break}}while(0)}u=i;return}function _C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;do if((b|0)==(f[a+24>>2]|0)){e=a+32|0;if(Bbb(f[b+16>>2]|0)|0){b=MCa(b+12|0)|0;b=(f[b>>2]|0)+4|0;c=a+36|0;d=f[c>>2]|0;if((d|0)==(f[a+40>>2]|0)){IL(e,b);break}else{f[d>>2]=f[b>>2];f[c>>2]=d+4;break}}f[d>>2]=0;b=a+36|0;c=f[b>>2]|0;if(c>>>0<(f[a+40>>2]|0)>>>0){f[c>>2]=0;f[b>>2]=c+4}else IL(e,d)}else if($1a(f[b+8>>2]|0,f[a+28>>2]|0)|0)f[a+36>>2]=f[a+32>>2];while(0);u=g;return}function $C(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;while(1){if((a|0)==(b|0))break;if(J$(c,f[a>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}d=f[a>>2]|0}while(J$(c,d)|0);f[e>>2]=d;e=e+4|0}}while(0);return b|0}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i+8|0;g=i;h=a+24|0;d=a+28|0;c=f[h>>2]|0;while(1){if((c|0)==(d|0))break;f[g>>2]=f[c+16>>2];bG(e,h,g,g);a=f[c+4>>2]|0;if(!a)while(1){a=f[c+8>>2]|0;if((f[a>>2]|0)==(c|0))break;else c=a}else while(1){c=f[a>>2]|0;if(!c)break;else a=c}c=a}g=b+24|0;bG(e,h,g,g);u=i;return}function bD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;c=l+16|0;d=l+12|0;e=l+8|0;g=l+4|0;h=l;i=a+116|0;m=f[i>>2]|0;j=m;if(Iab(m)|0?(f[d>>2]=j,f[c>>2]=f[d>>2],k=Sma(a,c)|0,f[e>>2]=j,f[c>>2]=f[e>>2],Ou(b,(k|0)!=0,c,81267,0)|0):0){m=(f[k+12>>2]|0)==(f[k+8>>2]|0);f[g>>2]=f[i>>2];f[c>>2]=f[g>>2];Ou(b,m,c,81287,0)|0;m=(f[k+4>>2]|0)==0;f[h>>2]=f[i>>2];f[c>>2]=f[h>>2];Ou(b,m,c,81312,0)|0}u=l;return}function cD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=cla()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(3141,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;_Ba(a);ubb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){_Ba(b);ubb(b)}Ua(a|0)}while(0);u=e;return}function dD(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;rpa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Z2(d,f[a>>2]|0);a=a+4|0}pca(d,f[b+76>>2]|0,f[b+80>>2]|0);pca(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function eD(a){a=a|0;var b=0,c=0;a=a+4|0;b=f[a>>2]|0;b=b+(f[(f[b>>2]|0)+-12>>2]|0)|0;do if(((f[b+24>>2]|0?(f[b+16>>2]|0)==0:0)?f[b+4>>2]&8192|0:0)?!(W6a()|0):0){b=f[a>>2]|0;b=f[b+(f[(f[b>>2]|0)+-12>>2]|0)+24>>2]|0;x=0;b=ga(f[(f[b>>2]|0)+24>>2]|0,b|0)|0;c=x;x=0;if(!(c&1)){if((b|0)!=-1)break;c=f[a>>2]|0;c=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;x=0;ua(100,c|0,f[c+16>>2]|1|0);c=x;x=0;if(!(c&1))break}c=Ja(0)|0;Fa(c|0)|0;x=0;sa(6);c=x;x=0;if(c&1){c=Ja(0)|0;r2a(c)}}while(0);return}function fD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=d-c>>2;if(g>>>0>1073741807)Mda();do if(g>>>0>=2){e=g+4&-4;if(e>>>0<=1073741823){h=n8(e<<2)|0;f[a>>2]=h;f[a+8>>2]=e|-2147483648;f[a+4>>2]=g;a=h;break}a=Ea(8)|0;x=0;ua(98,a|0,121963);h=x;x=0;if(h&1){h=Ia()|0;La(a|0);Ua(h|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else b[a+8+3>>0]=g;while(0);while(1){if((c|0)==(d|0))break;E1a(a,f[c>>2]|0);c=c+4|0;a=a+4|0}E1a(a,0);return}function gD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=a+4|0;tW(a,(((f[h>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);e=f[d>>2]|0;if((b[e>>0]|0)!=91)Ca(66463,65740,643,66475);f[d>>2]=e+1;g=y2(c,Rm(a,d,123323)|0)|0;az(d);c=f[d>>2]|0;if((b[c>>0]|0)!=93)Ca(66489,65740,647,66475);f[d>>2]=c+1;a=f[h>>2]|0;e=a+-12|0;if((f[a+-8>>2]|0)!=(f[e>>2]|0))Ca(66275,65740,649,66475);c=0;while(1){if((c|0)==-1)break;d=c+-1|0;uSa(a+(d*12|0)|0);c=d}f[h>>2]=e;return g|0}function hD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=cla()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(589,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;_Ba(a);ubb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){_Ba(b);ubb(b)}Ua(a|0)}while(0);u=e;return}function iD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=mm(f[a>>2]|0,f[b>>2]|0)|0;e=f[e>>2]|0;d=mm(f[a>>2]|0,f[c>>2]|0)|0;if((e|0)==(f[d>>2]|0))a=(E8(f[f[b>>2]>>2]|0,f[f[c>>2]>>2]|0)|0)>0;else{e=mm(f[a>>2]|0,f[b>>2]|0)|0;e=f[e>>2]|0;a=mm(f[a>>2]|0,f[c>>2]|0)|0;a=e>>>0>(f[a>>2]|0)>>>0}return a|0}function jD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+16|0;h=i;f[h>>2]=c;f[h+4>>2]=d;f[h+8>>2]=e;while(1){if((a|0)==(b|0))break;if(o9(h,a)|0){g=5;break}a=a+12|0}a:do if((g|0)==5){c=a;while(1){do{a=a+12|0;if((a|0)==(b|0)){b=c;break a}}while(o9(h,a)|0);f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];c=c+12|0}}while(0);u=i;return b|0}function kD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;e=k+16|0;g=k;h=MV(a,c)|0;i=O4(a,c,d)|0;az(c);f4a(e,0);j=f[c>>2]|0;if((!(Opa(d,b[j>>0]|0)|0)?(Dh(g,j),(f[g+12>>2]|0)==0):0)?$1a(f[g>>2]|0,f[33286]|0)|0:0){f[c>>2]=(f[c>>2]|0)+(f[g+8>>2]|0);j=O4(a,c,d)|0;f[e>>2]=j}j=PV(h,i,f[e>>2]|0)|0;u=k;return j|0}function lD(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+16|0;b=d;c=a+264|0;if(f[c>>2]|0)Ca(96010,87234,1241,96021);Cj(a);do if(((f[a+192>>2]|0)-(f[a+188>>2]|0)|0)!=4){f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;WZ(b,96036,h7a(96036)|0);x=0;ua(1869,a|0,b|0);e=x;x=0;if(e&1){e=Ia()|0;HTa(b);Ua(e|0)}else{HTa(b);break}}while(0);a=Dm(a)|0;if(!(f[c>>2]|0)){u=d;return a|0}else Ca(96010,87234,1247,96021);return 0}function mD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+4|0;i=h;f[i>>2]=c;i=Xl(b+68|0,i)|0;d=i+4|0;e=f[d>>2]|0;if((e|0)==(f[i>>2]|0)){i=b+148|0;d=f[i>>2]|0;f[i>>2]=d+1;f[g>>2]=d;d=b+128|0;i=Im(d,g)|0;f[i>>2]=c}else{i=e+-4|0;f[g>>2]=f[i>>2];f[d>>2]=i;d=b+128|0}i=Im(d,g)|0;if((f[i>>2]|0)==(c|0)){RIa(a,f[g>>2]|0,c,b);u=h;return}else Ca(106581,106510,1573,106602)}function nD(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((-18-c|0)>>>0>>0)Mda();if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=n8(k)|0;if(g|0)$Ta(l,m,g)|0;if(i|0)$Ta(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)$Ta(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)ubb(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;T0a(l+i|0,0);return}function oD(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110646)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);if((f[c+4>>2]|0)!=5)Ev(f[a+28>>2]|0,27)|0;u=i;return}function pD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+32|0;d=h;e=f[32838]|0;b=f[32837]|0;do if(e-b>>2>>>0>>0){g=f[32836]|0;c=b-g>>2;b=c+a|0;if(b>>>0>1073741823)_da();else{e=e-g|0;g=e>>1;nZ(d,e>>2>>>0<536870911?(g>>>0>>0?b:g):1073741823,c);Yka(d,a);mR(d);b0(d);break}}else Jta(a);while(0);u=h;return}function qD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=Eoa()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(480,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;Mwa(a);ubb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){Mwa(b);ubb(b)}Ua(a|0)}while(0);u=e;return}function rD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+96|0;e=h+92|0;g=h;d=f[b>>2]|0;f[e>>2]=d;fA(g,_Ya(f[a+40>>2]|0)|0,0);if(!(cOa(g,f[d>>2]|0)|0?(x=0,ua(2525,a|0,g|0),b=x,x=0,b&1):0))c=4;do if((c|0)==4){b=a+92|0;c=f[b>>2]|0;if((c|0)==(f[a+96>>2]|0)){x=0;ua(640,a+88|0,e|0);e=x;x=0;if(e&1)break}else{f[c>>2]=d;f[b>>2]=(f[b>>2]|0)+4}V7(g);u=h;return}while(0);h=Ia()|0;V7(g);Ua(h|0)}function sD(a,b){a=a|0;b=b|0;var c=0;switch(f[b+8>>2]|0){case 5:case 4:case 3:case 2:case 1:case 0:{c=rga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(sab(f[c>>2]|0)|0)){b=dIa(b,b)|0;i6(PK(a,b)|0,c);c=b}break}case 21:case 20:{c=rga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(sab(f[c>>2]|0)|0))c=jC(a,c,1,b)|0;break}default:c=Qxa(a,f[b+4>>2]|0)|0}return c|0}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;k=f[g>>2]|0;i=k+-12|0;h=c+-12|0;f[i>>2]=0;j=k+-8|0;f[j>>2]=0;k=k+-4|0;f[k>>2]=0;f[i>>2]=f[h>>2];i=c+-8|0;f[j>>2]=f[i>>2];j=c+-4|0;f[k>>2]=f[j>>2];f[j>>2]=0;f[i>>2]=0;f[h>>2]=0;f[g>>2]=(f[g>>2]|0)+-12;c=h}i=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=i;i=b+8|0;k=f[e>>2]|0;f[e>>2]=f[i>>2];f[i>>2]=k;i=a+8|0;k=b+12|0;j=f[i>>2]|0;f[i>>2]=f[k>>2];f[k>>2]=j;f[b>>2]=f[g>>2];return}function uD(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+4>>2]|0;c=f[b>>2]|0;while(1){if((c|0)==(d|0))break;ur(f[c>>2]|0);c=c+4|0}d=a+-16+16|0;a=f[b+52>>2]|0;c=f[b+48>>2]|0;while(1){if((c|0)==(a|0))break;AKa(d,f[c>>2]|0);c=c+4|0}a=f[b+40>>2]|0;c=f[b+36>>2]|0;while(1){if((c|0)==(a|0))break;s7(d,f[c>>2]|0);c=c+4|0}vra(d,f[b+76>>2]|0,f[b+80>>2]|0);vra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function vD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;h=c+11|0;g=b[h>>0]|0;if(g<<24>>24<0)e=f[c+4>>2]|0;else e=g&255;while(1){if(g<<24>>24<0)g=f[c>>2]|0;else g=c;f[i>>2]=d;g=LFa(g,e+1|0,122079,i)|0;if((g|0)>-1)if(g>>>0>e>>>0)e=g;else break;else e=e<<1|1;AU(c,e);g=b[h>>0]|0}AU(c,g);f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];e=0;while(1){if((e|0)==3)break;f[c+(e<<2)>>2]=0;e=e+1|0}u=j;return}function wD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;h=c+11|0;g=b[h>>0]|0;if(g<<24>>24<0)e=f[c+4>>2]|0;else e=g&255;while(1){if(g<<24>>24<0)g=f[c>>2]|0;else g=c;f[i>>2]=d;g=LFa(g,e+1|0,122076,i)|0;if((g|0)>-1)if(g>>>0>e>>>0)e=g;else break;else e=e<<1|1;AU(c,e);g=b[h>>0]|0}AU(c,g);f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];e=0;while(1){if((e|0)==3)break;f[c+(e<<2)>>2]=0;e=e+1|0}u=j;return}function xD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;h=c+11|0;g=b[h>>0]|0;if(g<<24>>24<0)e=f[c+4>>2]|0;else e=g&255;while(1){if(g<<24>>24<0)g=f[c>>2]|0;else g=c;f[i>>2]=d;g=LFa(g,e+1|0,122073,i)|0;if((g|0)>-1)if(g>>>0>e>>>0)e=g;else break;else e=e<<1|1;AU(c,e);g=b[h>>0]|0}AU(c,g);f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];e=0;while(1){if((e|0)==3)break;f[c+(e<<2)>>2]=0;e=e+1|0}u=j;return}function yD(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+16>>2]|0;c=f[b+12>>2]|0;while(1){if((c|0)==(d|0))break;XV(a,f[c>>2]|0);c=c+4|0}d=f[b+52>>2]|0;c=f[b+48>>2]|0;while(1){if((c|0)==(d|0))break;CIa(a,f[c>>2]|0);c=c+4|0}d=f[b+40>>2]|0;c=f[b+36>>2]|0;while(1){if((c|0)==(d|0))break;j6(a,f[c>>2]|0);c=c+4|0}Wpa(a,f[b+76>>2]|0,f[b+80>>2]|0);Wpa(a,f[b+100>>2]|0,f[b+104>>2]|0);return}function zD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(Ysa(c,f[a>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){g=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=g;break a}d=f[a>>2]|0}while(Ysa(c,d)|0);f[a>>2]=0;e=f[g>>2]|0;f[g>>2]=d;if(e|0){LX(e);ubb(e)}g=g+4|0}}while(0);return b|0}function AD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Bbb(a)|0;yCa(yCa(d,Aha(b)|0)|0,75497)|0;if((b|0)!=5){if((Dxa(b)|0)!=(c&255|0)){switch(c<<24>>24){case 1:{zma(a,56)|0;break}case 2:{yCa(a,75509)|0;break}case 4:{yCa(a,75512)|0;break}default:hb()}yCa(a,75515)|0}}else zma(a,63)|0;zma(a,46)|0;return}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(j0(c,a)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}}while(j0(c,a)|0);g=f[a>>2]|0;f[a>>2]=0;d=f[e>>2]|0;f[e>>2]=g;if(d|0){LX(d);ubb(d)}e=e+4|0}}while(0);return b|0}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(T1(c,a)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}}while(T1(c,a)|0);g=f[a>>2]|0;f[a>>2]=0;d=f[e>>2]|0;f[e>>2]=g;if(d|0){M_a(d);ubb(d)}e=e+4|0}}while(0);return b|0}function DD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;c=b+12|0;SN(i,a,f[c>>2]|0);b=f[a+44>>2]|0;c=f[c>>2]|0;x=0;d=ga(320,i|0)|0;k=x;x=0;if(((!(k&1)?(x=0,e=ja(46,f[b>>2]|0,d|0,1)|0,k=x,x=0,!(k&1)):0)?(x=0,g=ka(7,f[b>>2]|0,8,c|0,e|0)|0,k=x,x=0,!(k&1)):0)?(x=0,h=ja(53,f[b>>2]|0,20,g|0)|0,k=x,x=0,!(k&1)):0){BVa(f[a+16>>2]|0,h)|0;HCa(i);u=j;return}k=Ia()|0;HCa(i);Ua(k|0)}function ED(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;f[a>>2]=0;h=a+4|0;f[h>>2]=0;i=a+8|0;f[i>>2]=0;b=0;while(1){if(b>>>0>=c>>>0){b=9;break}x=0;j=ia(205,f[d>>2]|0,b|0)|0;e=x;x=0;if(e&1){b=8;break}f[g>>2]=j;e=f[h>>2]|0;if((e|0)==(f[i>>2]|0)){x=0;ua(640,a|0,g|0);j=x;x=0;if(j&1){b=8;break}}else{f[e>>2]=j;f[h>>2]=(f[h>>2]|0)+4}b=b+1|0}if((b|0)==8){k=Ia()|0;uSa(a);Ua(k|0)}else if((b|0)==9){u=k;return}}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;c=g+16|0;d=g+8|0;e=g;do if(f[a+8>>2]<<5>>>0>>0){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(2890,c|0,b|0);b=x;x=0;if(b&1){g=Ia()|0;I1a(f[c>>2]|0);Ua(g|0)}else{h=f[a>>2]|0;f[d>>2]=h;f[d+4>>2]=0;b=f[a+4>>2]|0;f[e>>2]=h+(b>>>5<<2);f[e+4>>2]=b&31;Iy(c,d,e);_8(a,c);I1a(f[c>>2]|0);break}}while(0);u=g;return}function GD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((a|0)==(b|0))Ca(115895,115839,631,115921);e=f[c>>2]|0;c=b-a>>2;a:while(1){d=c+-1|0;c=f[a+(d<<2)>>2]|0;b=o$a(c)|0;do if(!b){b=C$a(c)|0;if(!b)if(vab(f[c>>2]|0)|0)break;else{b=9;break a}else if($1a(e,f[b+8>>2]|0)|0){b=12;break a}else break}else if($1a(e,f[b+8>>2]|0)|0){b=12;break a}while(0);if(!d){c=0;b=12;break}c=d}if((b|0)==9)Ca(115937,115839,641,115921);else if((b|0)==12)return c|0;return 0}function HD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/24|0;g=e+1|0;if(g>>>0>178956970)_da();else{i=((f[a+8>>2]|0)-d|0)/24|0;d=i<<1;y_(c,i>>>0<89478485?(d>>>0>>0?g:d):178956970,e,a+12|0);g=c+8|0;e=f[g>>2]|0;yY(e,b);f[g>>2]=e+24;cM(a,c);wY(c);u=h;return}}function ID(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;az(c);e=f[c>>2]|0;a:do switch(b[e>>0]|0){case 59:{f[c>>2]=e+1;a=$5()|0;break}case 123:{f[c>>2]=e+1;az(c);g=f[c>>2]|0;if((b[g>>0]|0)==125){f[c>>2]=g+1;a=$5()|0;break a}else{f[c>>2]=e;h=6;break a}}default:h=6}while(0);if((h|0)==6){a=Rm(a,c,d)|0;az(c);d=f[c>>2]|0;if((b[d>>0]|0)==59){Bbb(a)|0;f[c>>2]=d+1}}return a|0}function JD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=D1a(a)|0;c=f[c>>2]|0;while(1){a=f[e+16>>2]|0;if(KVa(c,a)|0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(!(KVa(a,c)|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function KD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;bZ(a);h=f[b>>2]|0;f[b>>2]=0;c=f[a>>2]|0;f[a>>2]=h;if(c|0)ubb(c);h=b+4|0;d=a+4|0;f[d>>2]=f[h>>2];f[h>>2]=0;h=b+12|0;i=f[h>>2]|0;f[a+12>>2]=i;f[a+16>>2]=f[b+16>>2];e=b+8|0;c=f[e>>2]|0;g=a+8|0;f[g>>2]=c;if(i|0){c=f[c+4>>2]|0;b=f[d>>2]|0;d=b+-1|0;if(d&b){if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0}else c=d&c;f[(f[a>>2]|0)+(c<<2)>>2]=g;f[e>>2]=0;f[h>>2]=0}return}function LD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>3>>>0>>0){e=f[a>>2]|0;c=c-e>>3;d=c+b|0;if(d>>>0>536870911)_da();else{e=h-e|0;h=e>>2;DN(g,e>>3>>>0<268435455?(h>>>0>>0?d:h):536870911,c,a+8|0);iea(g,b);HO(a,g);vha(g);break}}else Nfa(a,b);while(0);u=i;return}function MD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+12|0;d=e;f[d>>2]=f[b+16>>2];f[d+4>>2]=f[b+20>>2];f[d+8>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,3);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+12|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function ND(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;if((a|0)==(b|0)){f[c>>2]=4;a=0}else{h=f[33448]|0;f[33448]=0;fOa()|0;a=M$a(a,g,d)|0;d=I;e=f[33448]|0;if(!e)f[33448]=h;a:do if((f[g>>2]|0)==(b|0)){do if((e|0)==34){f[c>>2]=4;if((d|0)>0|(d|0)==0&a>>>0>0){a=2147483647;break a}}else{if((d|0)<-1|(d|0)==-1&a>>>0<2147483648){f[c>>2]=4;break}if((d|0)>0|(d|0)==0&a>>>0>2147483647){f[c>>2]=4;a=2147483647;break a}else break a}while(0);a=-2147483648}else{f[c>>2]=4;a=0}while(0)}u=i;return a|0}function OD(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+72>>0]|0){g=yCa(134176,88043)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(c);Wq(g,e)|0;du(g)|0;break}i=Ia()|0;JCa(c);Ua(i|0)}while(0);i=a+68|0;yp(f[i>>2]|0,1836278016)|0;yp(f[i>>2]|0,1)|0;u=h;return}function PD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;lXa(a);f[a+24>>2]=b;e=a+32|0;yUa(e);g=a+44|0;f[g>>2]=0;f[a+48>>2]=0;f[a+52>>2]=0;c=f[b+40>>2]|0;d=a+28|0;b=f[b+36>>2]|0;while(1){if((b|0)==(c|0)){b=3;break}f[d>>2]=f[b>>2];hqa(e);x=0;ua(1983,a|0,(f[b>>2]|0)+36|0);h=x;x=0;if(h&1){b=6;break}b=b+4|0}if((b|0)==3)return;else if((b|0)==6){h=Ia()|0;uSa(g);MTa(e);I_a(a);Ua(h|0)}}function QD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+16|0;g=h;b=wp(a,b,e,h+12|0,c)|0;if(!(f[b>>2]|0)){r2(g,a,d);LZ(a,f[e>>2]|0,b,f[g>>2]|0)}u=h;return}function RD(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+52>>2]|0;d=a+-16+16|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;fta(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;WX(d,f[a>>2]|0);a=a+4|0}ffa(d,f[b+76>>2]|0,f[b+80>>2]|0);ffa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function SD(a){a=a|0;var c=0,d=0,e=0,g=0;e=a+8|0;x=0;ta(458,e|0);g=x;x=0;do if(g&1){g=Ja(0)|0;d=a+4|0;c=a+36|0}else{b[a+84>>0]=1;c=a+36|0;yFa(c);hJa(e);d=a+4|0;x=0;ta(459,f[d>>2]|0);g=x;x=0;if(g&1){g=Ja(0)|0;break}sta(a+88|0);KHa(c);xKa(e);c=f[d>>2]|0;f[d>>2]=0;if(c|0){R0a(f[c>>2]|0);ubb(c)}return}while(0);sta(a+88|0);KHa(c);xKa(e);c=f[d>>2]|0;f[d>>2]=0;if(c|0){R0a(f[c>>2]|0);ubb(c)}r2a(g)}function TD(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;h=u;u=u+16|0;j=h+4|0;i=h;g=zWa(jF(Or(c,0)|0)|0,46)|0;f[j>>2]=e?g+13|0:g+6|0;g=qUa(f[a+4>>2]|0)|0;b[g+20>>0]=e&1;f[g+32>>2]=d;e=Op(j,(Dxa(d)|0)&255)|0;b[g+8>>0]=e;cLa(i,e&255,0);e=rh(c,g+12|0,g+16|0,f[i>>2]|0)|0;d=UQa(a,Or(c,e)|0)|0;f[g+24>>2]=d;e=UQa(a,Or(c,e+1|0)|0)|0;f[g+28>>2]=e;poa(g);u=h;return g|0}function UD(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=Bx(c,h,d)|0;d=f[g>>2]|0;if(!d){r2(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function VD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=f[a>>2]|0;g=Bbb(b)|0;switch((cIa(g)|0)-c|0){case 0:{d=xWa(f[d+4>>2]|0)|0;break}case 1:{g=f[a+4>>2]|0;d=g0a(b,c)|0;d=L4(f[g+16>>2]|0,f[d>>2]|0)|0;break}default:{d=$Ra(f[d+4>>2]|0)|0;e=d+12|0;a=a+4|0;while(1){if(c>>>0>=(cIa(g)|0)>>>0)break;i=f[a>>2]|0;h=g0a(b,c)|0;aaa(e,L4(f[i+16>>2]|0,f[h>>2]|0)|0);c=c+1|0}rt(d)}}return d|0}function WD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>3;g=e+1|0;if(g>>>0>536870911)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>2;DN(c,i>>3>>>0<268435455?(d>>>0>>0?g:d):536870911,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];d=b+4|0;f[e+4>>2]=f[d>>2];f[b>>2]=0;f[d>>2]=0;f[g>>2]=e+8;WH(a,c);W8(c);u=h;return}}function XD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>4>>>0>>0){e=f[a>>2]|0;c=c-e>>4;d=c+b|0;if(d>>>0>268435455)_da();else{e=h-e|0;h=e>>3;FN(g,e>>4>>>0<134217727?(h>>>0>>0?d:h):268435455,c,a+8|0);ska(g,b);MO(a,g);wha(g);break}}else nma(a,b);while(0);u=i;return}function YD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(OM(c,f[a>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){g=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=g;break a}d=f[a>>2]|0}while(OM(c,d)|0);f[a>>2]=0;e=f[g>>2]|0;f[g>>2]=d;if(e|0)ubb(e);g=g+4|0}}while(0);return b|0}function ZD(a){a=a|0;var c=0,d=0,e=0,g=0;e=n8(24)|0;TYa(e);kha(e,f[(f[a>>2]|0)+132>>2]|0);g=f[a>>2]|0;d=g+132|0;c=0;while(1){if(c>>>0>=(f[d>>2]|0)>>>0)break;f[(f[e>>2]|0)+(c<<2)>>2]=c;c=c+1|0}c=a+2504|0;if(!(b[c>>0]|0)){d=f[e>>2]|0;g=d+((uZa(Bbb(f[g+32>>2]|0)|0)|0)<<2)|0;XF(g,f[e+4>>2]|0,a+4|0)}else b[c>>0]=0;jt(a,e);return e|0}function _D(a){a=a|0;var b=0,c=0,d=0;BLa(a,6);b=a+24|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+40>>2]=1065353216;b=a+44|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+60>>2]=1065353216;b=a+64|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+80>>2]=1065353216;b=a+84|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+100>>2]=1065353216;f[a+104>>2]=0;f[a+108>>2]=0;f[a+112>>2]=0;b=a+168|0;c=a+124|0;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=1065353216;d=a+172|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[a+188>>2]=1065353216;return}function $D(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;h=i+16|0;b=i+8|0;e=i;g=o$a(a)|0;if(g|0?(f[b>>2]=f[g+8>>2],f[h>>2]=f[b>>2],!(MM(g,h)|0)):0){c=g+12|0;I$a(h,c);GUa(e,c);d=h+4|0;b=f[e>>2]|0;a=f[e+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[d>>2]|0,b,a)|0))break;LOa(h)|0;RYa(h)}if((f[g+4>>2]|0)==5)MCa(c)|0}u=i;return}function aE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=yCa(134176,110632)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=dk(a)|0;f[c+8>>2]=j;oXa(c);u=i;return}function bE(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;i=u;u=u+16|0;j=i+4|0;h=i;g=zWa(jF(Or(c,0)|0)|0,46)|0;f[j>>2]=e?g+12|0:g+5|0;g=kWa(f[a+4>>2]|0)|0;b[g+20>>0]=e&1;f[g+4>>2]=d;e=Op(j,(Dxa(d)|0)&255)|0;b[g+8>>0]=e;d=f[j>>2]|0;if(!(b[d>>0]|0))d=0;else d=(b[d+1>>0]|0)==115&1;b[g+9>>0]=d;cLa(h,e&255,0);j=UQa(a,Or(c,rh(c,g+12|0,g+16|0,f[h>>2]|0)|0)|0)|0;f[g+24>>2]=j;JWa(g);u=i;return g|0}function cE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+12|0;d=e;f[d>>2]=f[b+8>>2];f[d+4>>2]=f[b+12>>2];f[d+8>>2]=f[b+16>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,3);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+12|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function dE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;gO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;KK(a,c);O0(c);u=h;return}}function eE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;gO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;KK(a,c);P0(c);u=h;return}}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i+8|0;e=i+4|0;g=i;j=f[a+44>>2]|0;h=p_(j,b+24|0)|0;if((h|0)!=(j+4|0)?(d=h+20|0,j=f[a+32>>2]|0,Bbb(j)|0,!($1a(f[d>>2]|0,f[j>>2]|0)|0)):0){j=f[a+36>>2]|0;Bbb(j)|0;U0a(e,j);f[g>>2]=f[d>>2];j=f[b+4>>2]|0;f[c>>2]=f[g>>2];j=pda(e,c,b+8|0,j)|0;BVa(f[a+16>>2]|0,j)|0}u=i;return}function gE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=c;a:do if(!((e^a)&3)){if(!(e&3))d=c;else while(1){e=b[c>>0]|0;b[a>>0]=e;if(!(e<<24>>24))break a;c=c+1|0;a=a+1|0;if(!(c&3)){d=c;break}}c=f[d>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))while(1){d=d+4|0;e=a+4|0;f[a>>2]=c;c=f[d>>2]|0;if((c&-2139062144^-2139062144)&c+-16843009|0){a=e;break}else a=e}g=a;h=10}else{d=c;g=a;h=10}while(0);if((h|0)==10?(h=b[d>>0]|0,b[g>>0]=h,h<<24>>24):0){a=g;do{d=d+1|0;a=a+1|0;h=b[d>>0]|0;b[a>>0]=h}while(h<<24>>24!=0)}return}function hE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;e=j;g=j+4|0;f[e>>2]=c;h=a+8|0;i=a+12|0;k=f[i>>2]|0;d=k;if((f[a+64>>2]|0)!=(k-(f[h>>2]|0)>>2|0))Ca(54229,54111,367,54278);if(!(Iab(f[b>>2]|0)|0))Ca(54287,54111,368,54278);if((f[a+16>>2]|0)==(d|0))IL(h,e);else{f[d>>2]=c;f[i>>2]=d+4}i=f[a+52>>2]|0;f[g>>2]=i;k=vZ(a+56|0,b)|0;f[k>>2]=i;k=jZ(a+44|0,g)|0;f[k>>2]=f[b>>2];u=j;return f[g>>2]|0}function iE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;d=j+24|0;g=j+8|0;h=j;IVa(g,(f[a>>2]|0)+144|0);i=b+12|0;e=b+16|0;c=0;while(1){if(c>>>0>=(Bbb(f[e>>2]|0)|0)>>>0)break;k=JDa(i,c)|0;aaa(g,_2(a,f[k>>2]|0)|0);c=c+1|0}f[h>>2]=f[b+8>>2];k=f[b+4>>2]|0;f[d>>2]=f[h>>2];k=wca(a+32|0,d,g,k)|0;u=j;return k|0}function jE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=f[a+4>>2]|0;a:do if(e){g=e+-1|0;h=(g&e|0)==0;if(!h)if(e>>>0>b>>>0)d=b;else d=(b>>>0)%(e>>>0)|0;else d=g&b;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;if((c|0)==(b|0)){if((f[a+8>>2]|0)==(b|0))break a}else{if(!h){if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0}else c=c&g;if((c|0)!=(d|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function kE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(p0(c,a)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}}while(p0(c,a)|0);g=f[a>>2]|0;f[a>>2]=0;d=f[e>>2]|0;f[e>>2]=g;if(d|0)ubb(d);e=e+4|0}}while(0);return b|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){Mwa(d);ubb(d)}}f[g>>2]=e;qD(a);f[a+36>>2]=f[a+64>>2];uFa(a,b);if(f[a+76>>2]|0)Ca(115717,115738,246,115764);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115779,115738,247,115764);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115799,115738,248,115764)}function mE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+33>>0]|0){g=yCa(134176,110568)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(c);Wq(g,e)|0;du(g)|0;break}i=Ia()|0;JCa(c);Ua(i|0)}while(0);Ev(f[a+28>>2]|0,0)|0;u=h;return}function nE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;do if(b[a+33>>0]|0){e=yCa(134176,110616)|0;ZXa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[d>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,h=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,i=x,x=0,!(i&1)):0){JCa(d);Wq(e,h)|0;du(e)|0;break}i=Ia()|0;JCa(d);Ua(i|0)}while(0);Ev(f[a+28>>2]|0,15)|0;u=g;return}function oE(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;j=u;u=u+112|0;d=j;e=j+100|0;f[e>>2]=d+100;yW(a+8|0,d,e,g,h,i);i=f[e>>2]|0;h=d;d=f[c>>2]|0;while(1){if((h|0)==(i|0))break;e=b[h>>0]|0;if(!d)d=0;else{a=d+24|0;g=f[a>>2]|0;if((g|0)==(f[d+28>>2]|0)){c=f[(f[d>>2]|0)+52>>2]|0;e=X6a(e)|0;e=dc[c&255](d,e)|0}else{f[a>>2]=g+1;b[g>>0]=e;e=X6a(e)|0}c=$1a(e,-1)|0;d=c?0:d}h=h+1|0}u=j;return d|0}function pE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;gO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;KK(a,c);w1(c);u=h;return}}function qE(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);switch(f[b+8>>2]|0){case 2:{VBa(a);d=JDa(b+16|0,0)|0;OP(a,f[d>>2]|0);kfa(a);break}case 3:{wfa(f[a>>2]|0,f[b+12>>2]|0)|0;zma(f[a>>2]|0,41)|0;break}default:zma(f[a>>2]|0,41)|0}u=c;return}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+32|0;c=g+12|0;d=g+16|0;e=g;f[c>>2]=b;b=S$a(f[b+12>>2]|0)|0;f[d>>2]=b;if(((b|0?o2a(f[b+4>>2]|0)|0:0)?o2a(f[(f[b+8>>2]|0)+4>>2]|0)|0:0)?(f[e>>2]=a,f[e+4>>2]=d,f[e+8>>2]=c,!(fB(e,f[b+12>>2]|0,f[b+16>>2]|0,0)|0)):0){d=f[d>>2]|0;fB(e,f[d+16>>2]|0,f[d+12>>2]|0,1)|0}u=g;return}function sE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=a+8|0;Py(a,a+4|0,c)|0;g=a+12|0;while(1){if((g|0)==(b|0))break;e=f[g>>2]|0;h=e;if(WPa(e,f[c>>2]|0)|0){d=g;while(1){f[d>>2]=f[c>>2];if((c|0)==(a|0)){c=a;break}d=c+-4|0;if(WPa(e,f[d>>2]|0)|0){i=c;c=d;d=i}else break}f[c>>2]=h}c=g;g=g+4|0}return}function tE(a,b){a=a|0;b=b|0;var c=0;a:do if(!(FMa(b)|0)?WS(a+44|0,b)|0:0){c=f[b>>2]|0;do if(vab(c)|0){if(!(HC(b)|0)){c=f[b>>2]|0;break}c=$Pa(b,1)|0;if(!(FMa(c)|0))break a;Ih(a,b,c);break a}while(0);if(rab(c)|0?Wx(b)|0:0){if(FMa(b)|0)Ca(113336,113306,97,113353);if(o2a(f[(f[b+4>>2]|0)+4>>2]|0)|0)Ui(a,b)}}while(0);return}function uE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;d=u;u=u+64|0;e=d+44|0;c=d;g=f[a>>2]|0;h=a+8|0;f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];f[e+12>>2]=f[h+12>>2];f[e+16>>2]=f[h+16>>2];m3(c,g,e);if(b[a+177>>0]|0){a0a(c);t_a(c,(b[a+178>>0]|0)!=0)}x=0;ua(86,f[a+48>>2]|0,c|0);h=x;x=0;if((!(h&1)?(x=0,ta(434,c|0),h=x,x=0,!(h&1)):0)?(x=0,ta(438,c|0),h=x,x=0,!(h&1)):0){Tca(c);u=d;return}h=Ia()|0;Tca(c);Ua(h|0)}function vE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;gO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;KK(a,c);p4(c);u=h;return}}function wE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)_da();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;RM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[g>>2]=e+12;HN(a,c);_fa(c);u=h;return}}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=i+4|0;f[e>>2]=b;c=oRa(f[b>>2]|0)|0;h=f[a+80>>2]|0;if(h){f[g>>2]=0;a=c+8|0;c=h+28|0;d=f[c>>2]|0;if(d>>>0<(f[h+32>>2]|0)>>>0){kV(d,0,f[a>>2]|0,b);f[c>>2]=(f[c>>2]|0)+16}else EA(h+24|0,g,a,e)}else{h=f[a+36>>2]|0;Bbb(h)|0;U0a(g,h);h=vu(g,c)|0;f[b>>2]=h}u=i;return}function yE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h+4|0;e=h;f[g>>2]=b;f[e>>2]=c;b=a+48|0;d=e_(b,g)|0;d=f[d>>2]|0;Rla(a,f[g>>2]|0);if((eX(b,c)|0)!=(a+52|0)){b=e_(b,e)|0;f[b>>2]=d;b=f[e>>2]|0;if((f[(f[g>>2]|0)+4>>2]|0)!=(f[b+4>>2]|0))Kv(a,b)}else MW(a,c,d,f[g>>2]|0);u=h;return}function zE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>2>>>0>>0){e=f[a>>2]|0;c=c-e>>2;d=c+b|0;if(d>>>0>1073741823)_da();else{e=h-e|0;h=e>>1;gO(g,e>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823,c,a+8|0);Yka(g,b);uP(a,g);Cja(g);break}}else Ama(a,b);while(0);u=i;return}function AE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;f[g>>2]=c;f[g+4>>2]=d;while(1){if((a|0)==(b|0))break;if(tN(g,f[a>>2]|0)|0){e=5;break}a=a+4|0}a:do if((e|0)==5){c=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=c;break a}}while(tN(g,f[a>>2]|0)|0);f[c>>2]=f[a>>2];c=c+4|0}}while(0);u=h;return b|0}function BE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+33>>0]|0){g=yCa(134176,110632)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(c);Wq(g,e)|0;du(g)|0;break}i=Ia()|0;JCa(c);Ua(i|0)}while(0);Ev(f[a+28>>2]|0,26)|0;u=h;return}function CE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){_Ba(d);ubb(d)}}f[g>>2]=e;RC(a);f[a+36>>2]=f[a+64>>2];gGa(a,b);if(f[a+76>>2]|0)Ca(115717,115738,246,115764);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115779,115738,247,115764);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115799,115738,248,115764)}function DE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+33>>0]|0){g=yCa(134176,110589)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(c);Wq(g,e)|0;du(g)|0;break}i=Ia()|0;JCa(c);Ua(i|0)}while(0);Ev(f[a+28>>2]|0,1)|0;u=h;return}function EE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+8|0;e=h;c=f[b>>2]|0;g=eX(a,c)|0;if((g|0)==(a+4|0)){g=a+12|0;f[d>>2]=c;f[d+4>>2]=0;I4(g,d);c=f[g>>2]|0;g=f[b>>2]|0;f[e>>2]=g;f[e+4>>2]=c;pC(d,a,g,e)}else c=f[g+20>>2]|0;u=h;return c+12|0}function FE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[g>>2]=e+16;MO(a,c);wha(c);u=h;return}}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;OLa(e,b);f[g>>2]=e+16;YL(a,c);e8(c);u=h;return}}function HE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;OLa(e,b);f[g>>2]=e+16;YL(a,c);f8(c);u=h;return}}function IE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;OLa(e,b);f[g>>2]=e+16;YL(a,c);g8(c);u=h;return}}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;OLa(e,b);f[g>>2]=e+16;YL(a,c);h8(c);u=h;return}}function KE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;OLa(e,b);f[g>>2]=e+16;YL(a,c);i8(c);u=h;return}}function LE(a,b){a=a|0;b=b|0;var c=0,d=0;d=Bbb(a)|0;c=f[b>>2]|0;yCa(yCa(d,Aha(c)|0)|0,75292)|0;switch(c|0){case 0:{yCa(a,116872)|0;break}case 1:{Am(a,f[b+8>>2]|0)|0;break}case 2:{d=b+8|0;tm(a,f[d>>2]|0,f[d+4>>2]|0)|0;break}case 3:{rI(a,+ONa(b));break}case 4:{Zt(a,+NNa(b));break}default:hb()}return a|0}function ME(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/24|0;g=e+1|0;if(g>>>0>178956970)_da();else{i=((f[a+8>>2]|0)-d|0)/24|0;d=i<<1;_M(c,i>>>0<89478485?(d>>>0>>0?g:d):178956970,e,a+8|0);g=c+8|0;e=f[g>>2]|0;jW(e,b);f[g>>2]=e+24;mM(a,c);Uaa(c);u=h;return}}function NE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;k=a+56|0;y8(k,fQa(c)|0);kKa(a+16|0,c);a=a+76|0;while(1){a=f[a>>2]|0;if(!a)break;c=a;g=f[c+8>>2]|0;c=f[c+12>>2]|0;d=f[k>>2]|0;e=f[d+(c*20|0)+16>>2]|0;do if(e|0?(i=f[d+(c*20|0)>>2]|0,j=f[d+(c*20|0)+8>>2]|0,(j+i|0)==(e|0)):0){if(i|0?(f[d+(c*20|0)+4>>2]|0)!=((h[g+8>>0]|0)<<3|0):0)break;if(j|0?(f[d+(c*20|0)+12>>2]|0)!=((h[g+8>>0]|0)<<3|0):0)break;b[g+9>>0]=i<<1>>>0>=j>>>0&1}while(0)}return}function OE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+12>>0]|0){g=yCa(134176,99209)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(c);Wq(g,e)|0;du(g)|0;break}i=Ia()|0;JCa(c);Ua(i|0)}while(0);sN(a,1836278016);sN(a,1);u=h;return}function PE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c&255;a:do if(!e)a=a+(bV(a)|0)|0;else{if(a&3){d=c&255;do{g=b[a>>0]|0;if(g<<24>>24==0?1:g<<24>>24==d<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}e=X(e,16843009)|0;d=f[a>>2]|0;b:do if(!((d&-2139062144^-2139062144)&d+-16843009))do{g=d^e;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;a=a+4|0;d=f[a>>2]|0}while(!((d&-2139062144^-2139062144)&d+-16843009|0));while(0);d=c&255;while(1){g=b[a>>0]|0;if(g<<24>>24==0?1:g<<24>>24==d<<24>>24)break;else a=a+1|0}}while(0);return a|0}function QE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=D1a(a)|0;while(1){a=f[e+16>>2]|0;if((a|0)>(c|0)){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if((a|0)>=(c|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function RE(a){a=a|0;var b=0,c=0,d=0;f[a+148>>2]=0;f[a+152>>2]=1;f[a+156>>2]=0;c=a+76|0;yCa(f[c>>2]|0,87992)|0;b=a+64|0;a=0;while(1){d=f[b>>2]|0;if(a>>>0>=(((f[d+136>>2]|0)-(f[d+132>>2]|0)|0)/12|0)>>>0)break;if(a|0)yCa(f[c>>2]|0,123344)|0;d=yCa(f[c>>2]|0,118459)|0;yCa(Lca(d,(f[(f[b>>2]|0)+132>>2]|0)+(a*12|0)|0)|0,118459)|0;a=a+1|0}yCa(f[c>>2]|0,88017)|0;return}function SE(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;g=f[b+68>>2]|0;if(!g){a=Ea(4)|0;uab(a);Pa(a|0,39536,426)}g=bc[f[(f[g>>2]|0)+24>>2]&511](g)|0;h=b+64|0;if((((f[h>>2]|0)!=0?!(((c|0)!=0|(d|0)!=0)&(g|0)<1):0)?(bc[f[(f[b>>2]|0)+24>>2]&511](b)|0)==0&e>>>0<3:0)?(d=X(g,c)|0,(K0a(f[h>>2]|0,(g|0)>0?d:0,e)|0)==0):0){c=Zab(f[h>>2]|0)|0;h=b+72|0;g=f[h>>2]|0;h=f[h+4>>2]|0;b=c;c=((c|0)<0)<<31>>31}else{g=0;h=0;b=-1;c=-1}e=a;f[e>>2]=g;f[e+4>>2]=h;a=a+8|0;f[a>>2]=b;f[a+4>>2]=c;return}function TE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=rUa(f[a+4>>2]|0)|0;c=yi(a,Or(b,1)|0)|0;f[d+8>>2]=c;if((XXa(b)|0)!=2){c=jF(Or(b,0)|0)|0;if($1a(c,f[33095]|0)|0){e=(XXa(b)|0)>>>0>3;c=Or(b,2)|0;if(e){c=UQa(a,c)|0;f[d+12>>2]=c;c=Or(b,3)|0}e=UQa(a,c)|0;f[d+16>>2]=e}else{e=UQa(a,Or(b,2)|0)|0;f[d+12>>2]=e}xqa(d)}return d|0}function UE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+8|0;d=e;f[d>>2]=f[b+20>>2];f[d+4>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,2);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+8|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function VE(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=a+11|0;e=b[j>>0]|0;h=e<<24>>24<0;if(h){g=(f[a+8>>2]&2147483647)+-1|0;i=f[a+4>>2]|0}else{g=10;i=e&255}if((g-i|0)>>>0>=d>>>0){if(d|0){if(h)e=f[a>>2]|0;else e=a;if(i){STa(e+d|0,e,i)|0;c=e>>>0<=c>>>0&(e+i|0)>>>0>c>>>0?c+d|0:c}STa(e,c,d)|0;c=i+d|0;if((b[j>>0]|0)<0)f[a+4>>2]=c;else b[j>>0]=c;T0a(e+c|0,0)}}else nD(a,g,i+d-g|0,i,0,0,d,c);return a|0}function WE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=a+36|0;e=f[d>>2]|0;g=Ni(a)|0;a:do if(G2a(g)|0)Kf(a,e+c-(f[d>>2]|0)|0);else{i=f[a>>2]|0;h=i+120|0;ZY(h,(((f[i+124>>2]|0)-(f[h>>2]|0)|0)/24|0)+1|0);h=f[(f[a>>2]|0)+124>>2]|0;YEa(h+-24|0,g)|0;d=e-(f[d>>2]|0)+c|0;e=h+-12|0;gia(e,d);c=0;while(1){if((c|0)==(d|0))break a;i=Fr(a)|0;b[(f[e>>2]|0)+c>>0]=i;c=c+1|0}}while(0);return}function XE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e;d=e+16|0;b=l8(f[a+4>>2]|0,b)|0;f[d>>2]=b;if(!b)Ca(73237,73170,506,73242);if(FMa(b)|0){d=(LRa(f[b+4>>2]|0)|0)+8|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];iba(c)}else{c=yCa(134008,123454)|0;d=gm(a+8|0,d)|0;zm(c,f[d>>2]|0)|0}u=e;return}function YE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+8|0;d=e;f[d>>2]=f[b+12>>2];f[d+4>>2]=f[b+16>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,2);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+8|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function ZE(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;b=e+12|0;c=e;d=n8(24)|0;hPa(d);f[d>>2]=f[33161];E1a(b,f[33047]|0);f[d+4>>2]=f[b>>2];f[d+8>>2]=f[33161];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,108683,h7a(108683)|0);x=0;b=ia(55,c|0,a|0)|0;g=x;x=0;if(g&1){g=Ia()|0;HTa(c);Ua(g|0)}else{f[d+16>>2]=f[b>>2];HTa(c);f[d+12>>2]=0;Ys(a,d);u=e;return}}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=a+24|0;c=f[h>>2]|0;Uba(c,fQa(b)|0);c=0;while(1){if(c>>>0>=(fQa(b)|0)>>>0)break;g=f[f[h>>2]>>2]|0;if(FVa(b,c)|0){d=ZYa(n9(b,c)|0)|0;e=-1}else{d=0;e=0}f[g+(c<<3)+4>>2]=e;f[g+(c<<3)>>2]=d;c=c+1|0}IKa(a,b);c=0;while(1){if(c>>>0>=(fQa(b)|0)>>>0)break;d=(f[f[h>>2]>>2]|0)+(c<<3)+4|0;if((f[d>>2]|0)==-1)f[d>>2]=0;c=c+1|0}return}function $E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){_Ba(d);ubb(d)}}f[g>>2]=e;cD(a);f[a+36>>2]=f[a+64>>2];PJa(a,b);if(f[a+76>>2]|0)Ca(115717,115738,246,115764);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115779,115738,247,115764);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115799,115738,248,115764)}function aF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+8|0;d=e;f[d>>2]=f[b+24>>2];f[d+4>>2]=f[b+28>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,2);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+8|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;b=f[b+24>>2]|0;f[d>>2]=b;c=a+32|0;if(!(K5(c,d)|0)){bG(e+8|0,c,d,d);d=yCa(134008,100922)|0;yCa(wfa(yCa(wfa(d,f[f[a+28>>2]>>2]|0)|0,101082)|0,b)|0,101089)|0}u=e;return}function cF(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0;d=a+104|0;j=f[d>>2]|0;if((j|0)!=0?(f[a+108>>2]|0)>=(j|0):0)k=4;else{c=Twa(a)|0;if((c|0)>=0){d=f[d>>2]|0;j=f[a+8>>2]|0;if(d){e=a+4|0;i=f[e>>2]|0;g=d-(f[a+108>>2]|0)|0;d=j;if((j-i|0)<(g|0))k=9;else f[a+100>>2]=i+(g+-1)}else{e=a+4|0;d=j;k=9}if((k|0)==9)f[a+100>>2]=j;if(!d)d=f[e>>2]|0;else{j=f[e>>2]|0;a=a+108|0;f[a>>2]=d+1-j+(f[a>>2]|0);d=j}d=d+-1|0;if((c|0)!=(h[d>>0]|0|0))b[d>>0]=c}else k=4}if((k|0)==4){f[a+100>>2]=0;c=-1}return c|0}function dF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;d=(f[j>>2]|0)!=512;h=f[a>>2]|0;g=h;k=(f[c>>2]|0)-g|0;e=k<<1;e=k>>>0<2147483647?((e|0)==0?4:e):-1;g=(f[b>>2]|0)-g>>2;h=tZ(d?h:0,e)|0;if(!h)WWa();do if(!d){d=f[a>>2]|0;f[a>>2]=h;if(d){x=0;ta(f[j>>2]|0,d|0);k=x;x=0;if(k&1){k=Ja(0)|0;r2a(k)}else{i=f[a>>2]|0;break}}else i=h}else{f[a>>2]=h;i=h}while(0);f[j>>2]=514;f[b>>2]=i+(g<<2);f[c>>2]=(f[a>>2]|0)+(e>>>2<<2);return}function eF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=a+16|0;i=f[j>>2]|0;g=f[a+12>>2]|0;e=i-g>>2;d=f[b>>2]|0;c=0;while(1){if(c>>>0>=e>>>0)break;if($1a(f[f[g+(c<<2)>>2]>>2]|0,d)|0){h=4;break}c=c+1|0}if((h|0)==4){e=g+(c<<2)|0;while(1){c=e+4|0;if((c|0)==(i|0))break;h=f[c>>2]|0;f[c>>2]=0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)ubb(d);e=c}c=f[j>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)ubb(d)}f[j>>2]=e}X7(a+184|0,b);return}function fF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=a+28|0;i=f[j>>2]|0;g=f[a+24>>2]|0;e=i-g>>2;d=f[b>>2]|0;c=0;while(1){if(c>>>0>=e>>>0)break;if($1a(f[f[g+(c<<2)>>2]>>2]|0,d)|0){h=4;break}c=c+1|0}if((h|0)==4){e=g+(c<<2)|0;while(1){c=e+4|0;if((c|0)==(i|0))break;h=f[c>>2]|0;f[c>>2]=0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)ubb(d);e=c}c=f[j>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)ubb(d)}f[j>>2]=e}X7(a+196|0,b);return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){_Ba(d);ubb(d)}}f[g>>2]=e;hD(a);f[a+36>>2]=f[a+64>>2];hKa(a,b);if(f[a+76>>2]|0)Ca(115717,115738,246,115764);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115779,115738,247,115764);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115799,115738,248,115764)}function hF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;d=b+64|0;do if((f[d>>2]|0)!=0?(bc[f[(f[b>>2]|0)+24>>2]&511](b)|0)==0:0)if(!(K0a(f[d>>2]|0,f[c+8>>2]|0,0)|0)){g=c;d=f[g+4>>2]|0;b=b+72|0;f[b>>2]=f[g>>2];f[b+4>>2]=d;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];break}else{g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1;break}else e=3;while(0);if((e|0)==3){g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1}return}function iF(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+8>>2]&511](j)|0;a=b[j+8+3>>0]|0;if(a<<24>>24<0)i=f[j+4>>2]|0;else i=a&255;a=b[j+20+3>>0]|0;if(a<<24>>24<0)a=f[j+16>>2]|0;else a=a&255;do if((i|0)!=(0-a|0)){a=(xg(d,e,j,j+24|0,h,g,0)|0)-j|0;i=f[c>>2]|0;if((i|0)==12&(a|0)==0){f[c>>2]=0;break}if((i|0)<12&(a|0)==12)f[c>>2]=i+12}else f[g>>2]=f[g>>2]|4;while(0);return}function jF(a){a=a|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;if(u8a(b[a>>0]|0)|0){u=c;return f[a+20>>2]|0}e=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=h7a(99347)|0;x=0;va(87,d|0,99347,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,e|0,d|0,f[a+28>>2]|0,f[a+32>>2]|0);a=x;x=0;if(a&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}c=Ia()|0;HTa(d);if(a)g=7}else{c=Ia()|0;g=7}if((g|0)==7)La(e|0);Ua(c|0);return 0}function kF(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+8>>2]&511](j)|0;a=b[j+11>>0]|0;if(a<<24>>24<0)i=f[j+4>>2]|0;else i=a&255;a=b[j+12+11>>0]|0;if(a<<24>>24<0)a=f[j+16>>2]|0;else a=a&255;do if((i|0)!=(0-a|0)){a=(vg(d,e,j,j+24|0,h,g,0)|0)-j|0;i=f[c>>2]|0;if((i|0)==12&(a|0)==0){f[c>>2]=0;break}if((i|0)<12&(a|0)==12)f[c>>2]=i+12}else f[g>>2]=f[g>>2]|4;while(0);return}function lF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;d=a;l=c+4|0;j=c+8|0;e=f[d>>2]|0;d=f[d+4>>2]|0;while(1){g=e&255;i=g&127;b[k>>0]=i;h=wJa(e|0,d|0,7)|0;d=I;if(!(Jna(a,h,d,i)|0))break;e=g|-128;b[k>>0]=e;g=f[l>>2]|0;if((g|0)==(f[j>>2]|0))WL(c,k);else{b[g>>0]=e;f[l>>2]=(f[l>>2]|0)+1}e=h}d=f[l>>2]|0;if((d|0)==(f[j>>2]|0))WL(c,k);else{b[d>>0]=i;f[l>>2]=(f[l>>2]|0)+1}u=m;return}function mF(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;d=b;a=ix(a)|0;if(o2a(a)|0){u=b;return a|0}c=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;b=h7a(97933)|0;x=0;va(87,d|0,97933,b|0);b=x;x=0;if(!(b&1)){x=0;ua(261,c|0,d|0);b=x;x=0;if(b&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;HTa(d);if(b)e=7}else{a=Ia()|0;e=7}if((e|0)==7)La(c|0);Ua(a|0);return 0}function nF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=u;u=u+64|0;e=f+24|0;d=f;RZ(d,c);x=0;va(140,e|0,b|0,d|0);c=x;x=0;do if(!(c&1)){sta(d);x=0;a=ia(158,e|0,a|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HQa(e);break}else{HQa(e);u=f;return a|0}}else{a=Ia()|0;sta(d)}while(0);Ua(a|0);return 0}function oF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;d=a+32|0;e=h[c+8>>0]|0;if(!(b[c+20>>0]|0)){j=(b[c+9>>0]|0)!=0;i=Bbb(f[c+12>>2]|0)|0;g=Bbb(f[c+16>>2]|0)|0;a=_2(a,f[c+24>>2]|0)|0;a=x5(f[d>>2]|0,e,j,i,g,a,f[c+4>>2]|0)|0}else{j=Bbb(f[c+12>>2]|0)|0;a=_2(a,f[c+24>>2]|0)|0;a=Fya(f[d>>2]|0,e,j,a,f[c+4>>2]|0)|0}return a|0}function pF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)Dl(a,b)}}else Dl(a,b);return}function qF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;e=l+4|0;g=l;h=iRa(f[b>>2]|0)|0;f[e>>2]=h;i=a+64|0;j=f[i>>2]|0;k=h;if(j|0){c=j+4|0;d=f[c>>2]|0;if(d>>>0<(f[j+8>>2]|0)>>>0){f[d>>2]=k;f[c>>2]=(f[c>>2]|0)+4}else IL(j,e);j=Fm((f[i>>2]|0)+12|0,h+8|0)|0;f[j>>2]=h;j=f[a+120>>2]|0;f[g>>2]=k;k=e_(j,g)|0;f[k>>2]=b}u=l;return}function rF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;i=j;a:do if(!(W$a(c)|0)){h=(c|0)!=0;e=0;g=0;do{d=(1<>2]|0;else d=tl(g,d?135337:b)|0;e=e+((d|0)!=0&1)|0;f[i+(g<<2)>>2]=d;g=g+1|0}while((g|0)!=6);switch(e&2147483647|0){case 0:{c=133704;break a}case 1:{if((f[i>>2]|0)==46152){c=46180;break a}break}default:{}}}else{d=0;do{if(1<>2]=i}d=d+1|0}while((d|0)!=6)}while(0);u=j;return c|0}function sF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>3;g=e+1|0;if(g>>>0>536870911)_da();else{d=(f[a+8>>2]|0)-d|0;i=d>>2;DN(c,d>>3>>>0<268435455?(i>>>0>>0?g:i):536870911,e,a+8|0);g=c+8|0;e=f[g>>2]|0;i=b;b=f[i+4>>2]|0;d=e;f[d>>2]=f[i>>2];f[d+4>>2]=b;f[g>>2]=e+8;HO(a,c);vha(c);u=h;return}}function tF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=a+8|0;Xx(a,a+4|0,d,c)|0;h=c+4|0;g=a+12|0;while(1){if((g|0)==(b|0))break;if(Mv(f[c>>2]|0,f[h>>2]|0,f[g>>2]|0,f[d>>2]|0)|0){i=f[g>>2]|0;e=g;while(1){f[e>>2]=f[d>>2];if((d|0)==(a|0)){d=a;break}e=d+-4|0;if(Mv(f[c>>2]|0,f[h>>2]|0,i,f[e>>2]|0)|0){j=d;d=e;e=j}else break}f[d>>2]=i}d=g;g=g+4|0}return}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=f[a>>2]|0;g=a+4|0;h=b+4|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;d=(f[h>>2]|0)+-12|0;c=c+-12|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}f[h>>2]=(f[h>>2]|0)+-12}e=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=e;e=b+8|0;d=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=d;a=a+8|0;g=b+12|0;e=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=e;f[b>>2]=f[h>>2];return}function vF(a){a=a|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;if(b8a(b[a>>0]|0)|0){u=c;return a+4|0}e=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=h7a(99363)|0;x=0;va(87,d|0,99363,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,e|0,d|0,f[a+28>>2]|0,f[a+32>>2]|0);a=x;x=0;if(a&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}c=Ia()|0;HTa(d);if(a)g=7}else{c=Ia()|0;g=7}if((g|0)==7)La(e|0);Ua(c|0);return 0}function wF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>3;h=g+1|0;if(h>>>0>536870911)_da();else{j=(f[a+8>>2]|0)-e|0;e=j>>2;DN(d,j>>3>>>0<268435455?(e>>>0>>0?h:e):536870911,g,a+8|0);h=d+8|0;g=f[h>>2]|0;GXa(g,f[b>>2]|0,f[c>>2]|0);f[h>>2]=g+8;HO(a,d);vha(d);u=i;return}}function xF(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+12>>0]|0){g=yCa(134176,98837)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(c);Wq(g,e)|0;du(g)|0;break}i=Ia()|0;JCa(c);Ua(i|0)}while(0);i=nq(a)|0;f[a+40>>2]=i;u=h;return}function yF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>3;h=g+1|0;if(h>>>0>536870911)_da();else{j=(f[a+8>>2]|0)-e|0;e=j>>2;DN(d,j>>3>>>0<268435455?(e>>>0>>0?h:e):536870911,g,a+8|0);h=d+8|0;g=f[h>>2]|0;f[g>>2]=f[b>>2];f[g+4>>2]=f[c>>2];f[h>>2]=g+8;HO(a,d);vha(d);u=i;return}}function zF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=D1a(a)|0;while(1){a=f[e+16>>2]|0;if(a>>>0>c>>>0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(a>>>0>=c>>>0){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function AF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;d=(f[j>>2]|0)!=512;h=f[a>>2]|0;g=h;k=(f[c>>2]|0)-g|0;e=k<<1;e=k>>>0<2147483647?((e|0)==0?1:e):-1;g=(f[b>>2]|0)-g|0;h=tZ(d?h:0,e)|0;if(!h)WWa();do if(!d){d=f[a>>2]|0;f[a>>2]=h;if(d){x=0;ta(f[j>>2]|0,d|0);k=x;x=0;if(k&1){k=Ja(0)|0;r2a(k)}else{i=f[a>>2]|0;break}}else i=h}else{f[a>>2]=h;i=h}while(0);f[j>>2]=514;f[b>>2]=i+g;f[c>>2]=(f[a>>2]|0)+e;return}function BF(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;i=u;u=u+416|0;c=i;d=i+400|0;f[d>>2]=c+400;JN(a+8|0,c,d,e,g,h);h=f[d>>2]|0;g=c;c=f[b>>2]|0;while(1){if((g|0)==(h|0))break;d=f[g>>2]|0;if(!c)c=0;else{a=c+24|0;e=f[a>>2]|0;if((e|0)==(f[c+28>>2]|0)){b=f[(f[c>>2]|0)+52>>2]|0;d=Bbb(d)|0;d=dc[b&255](c,d)|0}else{f[a>>2]=e+4;f[e>>2]=d;d=Bbb(d)|0}b=T5a(d)|0;c=b?0:c}g=g+4|0}u=i;return c|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;h=g+12|0;d=g;e=n8(24)|0;hPa(e);b=f[b>>2]|0;f[e>>2]=b;E1a(h,f[33048]|0);f[e+4>>2]=f[h>>2];f[e+8>>2]=b;w4(d,c);x=0;b=ia(55,d|0,a|0)|0;c=x;x=0;if(c&1){h=Ia()|0;HTa(d);Ua(h|0)}else{f[e+16>>2]=f[b>>2];HTa(d);f[e+12>>2]=0;Ys(a,e);u=g;return}}function DF(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=QE(c,h,d)|0;d=f[g>>2]|0;if(!d){aia(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function EF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;if((((f[c+16>>2]|0)==0?(h=n$a(f[c+12>>2]|0)|0,h|0):0)?(d=h+16|0,(f[d>>2]|0)==0):0)?(e=c+8|0,j=f[e>>2]|0,c=f[h+12>>2]|0,JH(j,c,_Ya(f[a+40>>2]|0)|0)|0):0){f[d>>2]=f[e>>2];xqa(h);j=f[a+36>>2]|0;Bbb(j)|0;U0a(g,j);j=mCa(g,h)|0;BVa(f[a+16>>2]|0,j)|0;b[a+44>>0]=1}u=i;return}function FF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;M0a(a);c=f[c+8>>2]|0;if(!((c|0)!=0?(Mu(d,b,c),f[a>>2]=f[d>>2],f[a+4>>2]=f[d+4>>2],f[a+8>>2]=f[d+8>>2],f[a+12>>2]=f[d+12>>2],f[a+16>>2]=f[d+16>>2],D0a(a)|0):0))f[a+16>>2]=f[33118];u=e;return}function GF(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;oBa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Nda(d,f[a>>2]|0);a=a+4|0}dla(d,f[b+76>>2]|0,f[b+80>>2]|0);dla(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function HF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h+8|0;e=h;c=b+8|0;if(!(Bbb(f[b+12>>2]|0)|0))zma(f[a>>2]|0,41)|0;else{VBa(a);I$a(g,c);GUa(e,c);d=g+4|0;c=f[e>>2]|0;b=f[e+4>>2]|0;while(1){if(!(lTa(f[g>>2]|0,f[d>>2]|0,c,b)|0))break;e=LOa(g)|0;OP(a,f[e>>2]|0);RYa(g)}kfa(a)}u=h;return}function IF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=a+4|0;tW(a,(((f[g>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);az(c);e=Rm(a,c,123274)|0;az(c);a=f[c>>2]|0;if((b[a>>0]|0)!=41)Ca(66119,65740,668,66691);f[c>>2]=a+1;c=f[g>>2]|0;d=c+-12|0;if((f[c+-8>>2]|0)!=(f[d>>2]|0))Ca(66275,65740,670,66691);a=0;while(1){if((a|0)==-1)break;h=a+-1|0;uSa(c+(h*12|0)|0);a=h}f[g>>2]=d;return e|0}function JF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;e=nq(a)|0;do if(e>>>0>4){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;WZ(d,96959,h7a(96959)|0);x=0;ua(1869,a|0,d|0);h=x;x=0;if(h&1){h=Ia()|0;HTa(d);Ua(h|0)}else{HTa(d);break}}while(0);rHa(b,qoa(e)|0,0)|0;rHa(c,nq(a)|0,0)|0;u=g;return}function KF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>2>>>0>>0){e=f[a>>2]|0;c=c-e>>2;d=c+b|0;if(d>>>0>1073741823)_da();else{e=h-e|0;h=e>>1;gO(g,e>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823,c,a+8|0);oHa(g,b);uP(a,g);Cja(g);break}}else ZIa(a,b);while(0);u=i;return}function LF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=a+116|0;f[g>>2]=b;f[a+120>>2]=c;d=fQa(b)|0;if(d|0){eMa(a);e=a+140|0;c=0;while(1){if((c|0)==(d|0))break;if(n_a(n9(f[g>>2]|0,c)|0)|0){b=n9(f[g>>2]|0,c)|0;if(FVa(f[g>>2]|0,c)|0)b=Qxa(a,b)|0;else b=i3(a,b)|0;f[(f[e>>2]|0)+(c<<2)>>2]=b}c=c+1|0}Lk(a,f[(f[g>>2]|0)+36>>2]|0)|0}return}function MF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+4|0;d=e;f[d>>2]=f[b+12>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,1);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+4|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function NF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h;g=h+4|0;f[e>>2]=c;if(!(o2a(c)|0))Ca(75887,54111,378,54297);d=fQa(a)|0;f[g>>2]=d;if(Iab(f[b>>2]|0)|0){i=vZ(a+56|0,b)|0;f[i>>2]=d;d=jZ(a+44|0,g)|0;f[d>>2]=f[b>>2]}b=a+24|0;d=f[b>>2]|0;if(d>>>0<(f[a+28>>2]|0)>>>0){f[d>>2]=c;f[b>>2]=d+4}else IL(a+20|0,e);u=h;return f[g>>2]|0}function OF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;e=h;d=b[c>>0]|0;a:do if(d<<24>>24!=0?(b[c+1>>0]|0)!=0:0){gH(e|0,0,32)|0;d=b[c>>0]|0;if(d<<24>>24)do{j=d&255;i=e+(j>>>5<<2)|0;f[i>>2]=f[i>>2]|1<<(j&31);c=c+1|0;d=b[c>>0]|0}while(d<<24>>24!=0);c=b[a>>0]|0;if(!(c<<24>>24))d=a;else{d=a;do{j=c&255;if(f[e+(j>>>5<<2)>>2]&1<<(j&31)|0)break a;d=d+1|0;c=b[d>>0]|0}while(c<<24>>24!=0)}}else g=3;while(0);if((g|0)==3)d=PE(a,d<<24>>24)|0;u=h;return d-a|0}function PF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;uQa(e,f[b>>2]|0);f[g>>2]=e+16;UN(a,c);Kda(c);u=h;return}}function QF(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;if(b[a+32>>0]|0){a0a(c);t_a(c,0)}mma(c);if(b[(f[a+28>>2]|0)+1>>0]|0)Rka(c);f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;WZ(d,69379,h7a(69379)|0);x=0;ua(80,c|0,d|0);c=x;x=0;if(c&1){e=Ia()|0;HTa(d);Ua(e|0)}else{HTa(d);u=e;return}}function RF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+4|0;d=e;f[d>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,1);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+4|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function SF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+4|0;d=e;f[d>>2]=f[b+8>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,1);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}mda(c,d,d+4|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;uSa(c);Ua(g|0)}else{uSa(c);u=e;return}}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;FN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;jXa(e,f[b>>2]|0);f[g>>2]=e+16;MO(a,c);wha(c);u=h;return}}function UF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+48|0;c=e+4|0;d=e;do if(K5(b+56|0,132604)|0){f[d>>2]=f[33151];f[c>>2]=f[d>>2];d=SI(b,c)|0;f[a+80>>2]=d;Iqa(c,d,a+56|0,a+68|0);x=0;ua(1894,c|0,b+36|0);d=x;x=0;if(!(d&1)?(x=0,ua(1895,a+16|0,b|0),d=x,x=0,!(d&1)):0){I_a(c);break}e=Ia()|0;I_a(c);Ua(e|0)}while(0);u=e;return}function VF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;do if(!(lVa(a)|0)){c=hl(a+152|0,b+8|0)|0;d=a+140|0;e=c+4|0;g=f[e>>2]|0;if((g|0)==(f[c+8>>2]|0)){VB(c,d);break}else{cR(g,d);f[e>>2]=(f[e>>2]|0)+12;break}}while(0);b=f[b+16>>2]|0;if(!b)A_a(a);else Lk(a,b)|0;return a|0}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;e=i;g=f[a+8>>2]|0;c=f[a+4>>2]|0;do if((g-c|0)>>>0>>0){h=f[a>>2]|0;c=c-h|0;d=c+b|0;if((d|0)<0)_da();else{g=g-h|0;h=g<<1;nda(e,g>>>0<1073741823?(h>>>0>>0?d:h):2147483647,c,a+8|0);eoa(e,b);XP(a,e);koa(e);break}}else opa(a,b);while(0);u=i;return}function XF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h;d=b-a|0;if((d|0)>4){BWa(h+8|0);e=b+-4|0;b=d>>>2;while(1){b=b+-1|0;if(a>>>0>=e>>>0)break;hWa(g,b);i=hw(c,g)|0;d=a+(i<<2)|0;if(i|0){i=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=i}a=a+4|0}}u=h;return}function YF(a,c){a=a|0;c=c|0;do if(a){if(c>>>0<128){b[a>>0]=c;a=1;break}if(!(f[f[11692]>>2]|0))if((c&-128|0)==57216){b[a>>0]=c;a=1;break}else{f[33448]=84;a=-1;break}if(c>>>0<2048){b[a>>0]=c>>>6|192;b[a+1>>0]=c&63|128;a=2;break}if(c>>>0<55296|(c&-8192|0)==57344){b[a>>0]=c>>>12|224;b[a+1>>0]=c>>>6&63|128;b[a+2>>0]=c&63|128;a=3;break}if((c+-65536|0)>>>0<1048576){b[a>>0]=c>>>18|240;b[a+1>>0]=c>>>12&63|128;b[a+2>>0]=c>>>6&63|128;b[a+3>>0]=c&63|128;a=4;break}else{f[33448]=84;a=-1;break}}else a=1;while(0);return a|0}function ZF(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=u;u=u+272|0;e=g;if(!(b[a>>0]|0))f=1;else{yCa(Lca(yCa(134176,87107)|0,d)|0,112640)|0;f=b[a>>0]^1}Eu(e,d,0,f&255);x=0;va(123,a|0,c|0,e|0);f=x;x=0;if(f&1){g=Ia()|0;CSa(e);Ua(g|0)}else{CSa(e);u=g;return}}function _F(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+8|0;e=k;h=a+36|0;if(!($1a(f[c+24>>2]|0,f[h>>2]|0)|0)){g=c+8|0;I$a(i,g);GUa(e,g);g=i+4|0;d=f[e>>2]|0;c=f[e+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;e=LOa(i)|0;if($1a(f[e>>2]|0,f[h>>2]|0)|0){j=6;break}RYa(i)}if((j|0)==6)b[a+40>>0]=1}else b[a+40>>0]=1;u=k;return}function $F(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;d=g;e=g+16|0;f[e>>2]=f[c+8>>2];if((p_(b+4|0,e)|0)==(b+8|0))Ca(58208,101307,807,107443);else{e=aY(b+4|0,e)|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];rAa(a,d);u=g;return}}function aG(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+44|0;d=f[e>>2]|0;g=f[a+24>>2]|0;if(d>>>0>>0){f[e>>2]=g;d=g}h=a+12|0;e=f[h>>2]|0;do if((f[a+8>>2]|0)>>>0>>0){if($1a(c,-1)|0){f[h>>2]=e+-1;f[a+16>>2]=d;c=ZWa(c)|0;break}if(!(f[a+48>>2]&16)){g=X6a(c)|0;e=e+-1|0;if(!(v$a(g,b[e>>0]|0)|0)){c=-1;break}}else{g=X6a(c)|0;e=e+-1|0}f[h>>2]=e;f[a+16>>2]=d;b[e>>0]=g}else c=-1;while(0);return c|0}function bG(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=JD(c,h,d)|0;d=f[g>>2]|0;if(!d){aia(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function cG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;e=d+8|0;g=d+4|0;h=d;c=eQa(f[a+4>>2]|0)|0;E1a(e,jF(Or(b,1)|0)|0);j=f[e>>2]|0;f[c+24>>2]=j;i=f[a>>2]|0;f[g>>2]=j;f[e>>2]=f[g>>2];i=hJ(i,e)|0;g=f[a>>2]|0;f[h>>2]=f[i+16>>2];f[e>>2]=f[h>>2];e=(KI(g,e)|0)+4|0;f[c+4>>2]=f[e>>2];u7(a,b,XXa(b)|0,c);X$a(c);u=d;return c|0}function dG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);nFa(b+16|0);ubb(b);return}function eG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);oFa(b+16|0);ubb(b);return}function fG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);pFa(b+16|0);ubb(b);return}function gG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);qFa(b+16|0);ubb(b);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);rFa(b+16|0);ubb(b);return}function iG(a,c){a=a|0;c=c|0;var d=0;Lua(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);d=f[a+36>>2]|0;Bbb(d)|0;kua(a,(b[d+114>>0]|0)==0,c);d=c+4|0;XX(a,b[c+12>>0]|0,f[d>>2]|0,c);aca(a,f[(f[c+20>>2]|0)+4>>2]|0,1,c,84098);aca(a,f[d>>2]|0,f[(f[c+24>>2]|0)+4>>2]|0,c,84133);Qka(a,f[d>>2]|0,c,83946);return}function jG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+16|0;g=h;b=wp(a,b,e,h+12|0,c)|0;if(!(f[b>>2]|0)){aia(g,a,d);LZ(a,f[e>>2]|0,b,f[g>>2]|0)}u=h;return}function kG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;Mu(d,b,c);if(D0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else M0a(a);u=e;return}function lG(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+128|0;g=m+124|0;l=m;h=l;i=46832;j=h+124|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((c+-1|0)>>>0>2147483646)if(!c){a=g;c=1;k=4}else{f[33448]=75;c=-1}else k=4;if((k|0)==4){k=-2-a|0;k=c>>>0>k>>>0?k:c;f[l+48>>2]=k;g=l+20|0;f[g>>2]=a;f[l+44>>2]=a;c=a+k|0;a=l+16|0;f[a>>2]=c;f[l+28>>2]=c;c=Ry(l,d,e)|0;if(k){l=f[g>>2]|0;b[l+(((l|0)==(f[a>>2]|0))<<31>>31)>>0]=0}}u=m;return c|0}function mG(a,c){a=a|0;c=c|0;var d=0,e=0;e=XXa(a)|0;d=f[c>>2]|0;do if((e|0)!=(d|0)){e=Or(a,d)|0;e=u8a(b[e>>0]|0)|0;d=f[c>>2]|0;if(e){f[c>>2]=d+1;d=QRa(jF(Or(a,d)|0)|0,0)|0;break}d=Or(a,d)|0;e=jF(Or(d,0)|0)|0;if(!(_1a(e,f[33109]|0)|0)){f[c>>2]=(f[c>>2]|0)+1;d=QRa(jF(Or(d,1)|0)|0,0)|0}else d=0}else d=0;while(0);return d|0}function nG(a){a=a|0;NQa(a+172|0);r8(a+152|0);uSa(a+140|0);c1(a+124|0);uSa(a+104|0);NQa(a+84|0);NQa(a+64|0);Uma(a+44|0);NQa(a+24|0);B_a(a);return}function oG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;e=g;f[d>>2]=b;f[e>>2]=c;d=Ok(a+184|0,d)|0;b=jE(d,c)|0;if(!b){b=YSa(a)|0;e=Jm(d,e)|0;f[e>>2]=b}else b=f[b+12>>2]|0;u=g;return b|0}function pG(a,b){a=a|0;b=b|0;switch(f[b+8>>2]|0){case 34:case 26:case 9:case 1:{b=f[(f[b+12>>2]|0)+4>>2]|0;a=f[a+36>>2]|0;Bbb(a)|0;a=FSa(b,a)|0;break}case 22:case 21:case 18:case 17:case 16:case 47:case 46:case 43:case 42:case 41:{a=f[a+36>>2]|0;Bbb(a)|0;a=FSa(1,a)|0;break}case 33:case 32:case 8:case 7:{a=f[b+12>>2]|0;break}case 49:case 48:case 45:case 44:case 40:case 24:case 23:case 20:case 19:case 15:{a=f[a+36>>2]|0;Bbb(a)|0;a=E_(1,1,a)|0;break}default:a=0}return a|0}function qG(a,b){a=a|0;b=b|0;var c=0,d=0;if((f[b>>2]|0)!=(f[b+4>>2]|0))Jbb();if((f[b+12>>2]|0)!=(f[b+16>>2]|0))Jbb();if((f[b+24>>2]|0)!=(f[b+28>>2]|0))Jbb();c=f[b+48>>2]|0;d=a+-16+16|0;if((c|0)!=(f[b+52>>2]|0))iGa(d,f[c>>2]|0);c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;$2(d,f[a>>2]|0);a=a+4|0}hoa(d,f[b+76>>2]|0,f[b+80>>2]|0)}function rG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=jw(a,b,0,1)|0;ZXa(e,b+(f[(f[b>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){JCa(e);Wq(a,d)|0;du(a)|0;u=g;return b|0}h=Ia()|0;JCa(e);Ua(h|0);return 0}function sG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;f=u;u=u+272|0;e=f;if(!(b[a>>0]|0))a=1;else{yCa(Lca(yCa(134176,86932)|0,d)|0,112640)|0;a=b[a>>0]^1}Eu(e,d,1,a&255);x=0;ua(1367,c|0,e|0);d=x;x=0;if(d&1){f=Ia()|0;CSa(e);Ua(f|0)}else{CSa(e);u=f;return}}function tG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;e=k+16|0;i=k;f[i>>2]=c;g=i+4|0;j=a+48|0;l=f[j>>2]|0;f[g>>2]=d-((l|0)!=0&1);h=a+44|0;f[i+8>>2]=f[h>>2];f[i+12>>2]=l;f[e>>2]=f[a+60>>2];f[e+4>>2]=i;f[e+8>>2]=2;e=G_a(Xa(145,e|0)|0)|0;if((e|0)>=1){i=f[g>>2]|0;if(e>>>0>i>>>0){g=f[h>>2]|0;h=a+4|0;f[h>>2]=g;f[a+8>>2]=g+(e-i);if(!(f[j>>2]|0))e=d;else{f[h>>2]=g+1;b[c+(d+-1)>>0]=b[g>>0]|0;e=d}}}else f[a>>2]=f[a>>2]|e&48^16;u=k;return e|0}function uG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+64|0;b=f[e>>2]|0;qD(a);c=a+56|0;d=f[c>>2]|0;if((d|0)==(f[a+60>>2]|0))IL(a+52|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}dH(b,f[e>>2]|0);b=a+96|0;c=f[b>>2]|0;if((c|0)==(f[a+100>>2]|0))IL(a+92|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function vG(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+20|0;switch(f[b>>2]|0){case 0:{d=f[a+4>>2]|0;e=Bbb(f[d+84>>2]|0)|0;c=a+16|0;f[c>>2]=e;d=iUa(d)|0;QPa(f[a+12>>2]|0,d,0);if(!(f[(f[a+8>>2]|0)+16>>2]|0))QPa(f[c>>2]|0,d,0);f[b>>2]=(f[b>>2]|0)+1;break}case 1:{e=f[a+4>>2]|0;d=Bbb(f[e+84>>2]|0)|0;e=iUa(e)|0;QPa(f[a+16>>2]|0,e,0);QPa(d,e,0);break}default:hb()}return}function wG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;iFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Kga(d,f[a>>2]|0);a=a+4|0}Ana(d,f[b+76>>2]|0,f[b+80>>2]|0);Ana(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function xG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;r2(d,a,b);b=f[d>>2]|0;d=DI(a,e,b+16|0)|0;LZ(a,f[e>>2]|0,d,b);u=c;return}function yG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;c=i;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;h=e4a()|0;if(h>>>0>>0)_da();else{j=(f[a+8>>2]|0)-d|0;d=j>>1;gO(c,j>>2>>>0>>1>>>0?(d>>>0>>0?g:d):h,e,a+8|0);h=c+8|0;g=f[h>>2]|0;f[g>>2]=f[b>>2];f[h>>2]=g+4;uP(a,c);Cja(c);u=i;return}}function zG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+80|0;b=f[e>>2]|0;RC(a+16|0);c=a+72|0;d=f[c>>2]|0;if((d|0)==(f[a+76>>2]|0))IL(a+68|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}BH(b,f[e>>2]|0);b=a+112|0;c=f[b>>2]|0;if((c|0)==(f[a+116>>2]|0))IL(a+108|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function AG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;zFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;mea(d,f[a>>2]|0);a=a+4|0}Nna(d,f[b+76>>2]|0,f[b+80>>2]|0);Nna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function BG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;AFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;nea(d,f[a>>2]|0);a=a+4|0}Ona(d,f[b+76>>2]|0,f[b+80>>2]|0);Ona(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function CG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;BFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;oea(d,f[a>>2]|0);a=a+4|0}Pna(d,f[b+76>>2]|0,f[b+80>>2]|0);Pna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function DG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;CFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;pea(d,f[a>>2]|0);a=a+4|0}Qna(d,f[b+76>>2]|0,f[b+80>>2]|0);Qna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function EG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;DFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;qea(d,f[a>>2]|0);a=a+4|0}Rna(d,f[b+76>>2]|0,f[b+80>>2]|0);Rna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;HFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;t7(d,f[a>>2]|0);a=a+4|0}Sna(d,f[b+76>>2]|0,f[b+80>>2]|0);Sna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function GG(a,b){a=a|0;b=b|0;var c=0,d=0;c=uZa(a)|0;a:do if((c|0)==(uZa(b)|0)?(c=BZa(a)|0,(c|0)==(BZa(b)|0)):0){c=0;while(1){if(c>>>0>=(fQa(a)|0)>>>0)break;d=n9(a,c)|0;if((d|0)==(n9(b,c)|0))c=c+1|0;else{c=0;break a}}if((f[a+4>>2]|0)==(f[b+4>>2]|0)?!(_1a(f[a+32>>2]|0,f[b+32>>2]|0)|0):0)c=GZ(f[a+36>>2]|0,f[b+36>>2]|0)|0;else c=0}else c=0;while(0);return c|0}function HG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>3;g=e+1|0;if(g>>>0>536870911)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>2;DN(c,i>>3>>>0<268435455?(d>>>0>>0?g:d):536870911,e,a+8|0);g=c+8|0;e=f[g>>2]|0;UUa(e,b);f[g>>2]=e+8;CN(a,c);vha(c);u=h;return}}function IG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=b[a+11>>0]|0;h=e<<24>>24<0;g=h?f[a>>2]|0:a;e=h?f[a+4>>2]|0:e&255;a=d;while(1){if(!c)break;h=c+16|0;d=b[h+11>>0]|0;i=d<<24>>24<0;d=i?f[c+20>>2]|0:d&255;h=AQa(i?f[h>>2]|0:h,g,e>>>0>>0?e:d)|0;h=(((h|0)==0?(d>>>0>>0?-2147483648:0):h)|0)<0;a=h?a:c;c=f[(h?c+4|0:c)>>2]|0}return a|0}function JG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,225,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function KG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;do if((XXa(b)|0)==(c|0))e=xWa(f[a+4>>2]|0)|0;else{if((XXa(b)|0)==(c+1|0)){e=UQa(a,Or(b,c)|0)|0;break}e=$Ra(f[a+4>>2]|0)|0;g=e+12|0;while(1){if(!((c|0)!=-1&c>>>0<(XXa(b)|0)>>>0))break;aaa(g,UQa(a,Or(b,c)|0)|0);c=c+1|0}XJa(e,d)}while(0);return e|0}function LG(a){a=a|0;f[a>>2]=41452;uSa(a+168|0);uSa(a+156|0);uSa(a+144|0);uSa(a+132|0);xVa(a+96|0);q_(a+80|0);MTa(a+68|0);Uha(a+56|0);Zsa(a+44|0);LTa(a);return}function MG(a){a=a|0;f[a>>2]=41212;uSa(a+168|0);uSa(a+156|0);uSa(a+144|0);uSa(a+132|0);xVa(a+96|0);r_(a+80|0);MTa(a+68|0);Vha(a+56|0);_sa(a+44|0);LTa(a);return}function NG(a){a=a|0;f[a>>2]=41292;uSa(a+168|0);uSa(a+156|0);uSa(a+144|0);uSa(a+132|0);xVa(a+96|0);s_(a+80|0);MTa(a+68|0);Wha(a+56|0);$sa(a+44|0);LTa(a);return}function OG(a){a=a|0;f[a>>2]=41104;uSa(a+168|0);uSa(a+156|0);uSa(a+144|0);uSa(a+132|0);xVa(a+96|0);t_(a+80|0);MTa(a+68|0);Xha(a+56|0);ata(a+44|0);LTa(a);return}function PG(a){a=a|0;f[a>>2]=41372;uSa(a+168|0);uSa(a+156|0);uSa(a+144|0);uSa(a+132|0);xVa(a+96|0);u_(a+80|0);MTa(a+68|0);Yha(a+56|0);bta(a+44|0);LTa(a);return}function QG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+96|0;h=j;i=b+8|0;e=b+12|0;g=a+40|0;c=0;d=0;while(1){if(d>>>0>=(Bbb(f[e>>2]|0)|0)>>>0)break;l=_Ya(f[g>>2]|0)|0;k=JDa(i,d)|0;fA(h,l,f[k>>2]|0);k=lza(h)|0;V7(h);if(k)break;c=un(a,b,JDa(i,d)|0,c,0)|0;d=d+1|0}u=j;return}function RG(a,c){a=a|0;c=c|0;var d=0,e=0;a:do if((a|0)!=(c|0)){d=b[a>>0]|0;if(d<<24>>24!=95){if(((d<<24>>24)+-48|0)>>>0>=10)break;while(1){a=a+1|0;if((a|0)==(c|0)){a=c;break a}if(((b[a>>0]|0)+-48|0)>>>0>=10)break a}}d=a+1|0;if((d|0)!=(c|0)){d=b[d>>0]|0;if(((d<<24>>24)+-48|0)>>>0<10){a=a+2|0;break}if(d<<24>>24==95){d=a+2|0;while(1){if((d|0)==(c|0))break a;e=b[d>>0]|0;if(((e<<24>>24)+-48|0)>>>0>=10)break;d=d+1|0}return (e<<24>>24==95?d+1|0:a)|0}}}while(0);return a|0}function SG(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a+128>>2]|0;b=f[a+124>>2]|0;while(1){if((b|0)==(d|0))break;c=yCa(134008,76125)|0;yCa(xm(c,f[b>>2]|0)|0,122324)|0;hn(f[b>>2]|0,0);c=q1(a,f[b>>2]|0)|0;if(c|0){e=yCa(134008,76131)|0;zma(zm(e,f[c+8>>2]|0)|0,10)|0}b=b+4|0}return}function TG(a,b){a=a|0;b=b|0;var c=0,d=0;c=e$a(a)|0;a:do if(c)if(!b){d=c+12|0;break}else Ca(113456,113306,219,113467);else{c=Y_a(a)|0;if(c|0)switch(b|0){case 0:{d=c+12|0;break a}case 1:{d=c+16|0;break a}default:hb()}c=W_a(a)|0;if(!c)hb();switch(b|0){case 0:{d=c+16|0;break a}case 1:{d=c+8|0;break a}case 2:{d=c+12|0;break a}default:hb()}}while(0);return d|0}function UG(a){a=a|0;var c=0,d=0,e=0,f=0,g=0;while(1){d=b[a>>0]|0;c=d<<24>>24;e=a+1|0;if(!(o6a(c)|0))break;else a=e}switch(c|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:g=0}if((f|0)==5){d=b[e>>0]|0;g=a;a=e;c=d<<24>>24}if(!(Uab(c)|0)){c=0;a=0}else{e=d;c=0;d=0;do{d=BBa(c|0,d|0,10,0)|0;a=a+1|0;c=(e<<24>>24)+-48|0;c=NRa(d|0,I|0,c|0,((c|0)<0)<<31>>31|0)|0;d=I;e=b[a>>0]|0}while((Uab(e<<24>>24)|0)!=0);a=d}f=(g|0)==0;g=NRa(0,0,c|0,a|0)|0;I=f?I:a;return (f?g:c)|0}function VG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(d>>>0>1073741807)Mda();do if(d>>>0>=2){e=d+4&-4;if(e>>>0<=1073741823){g=n8(e<<2)|0;f[a>>2]=g;f[a+8>>2]=e|-2147483648;f[a+4>>2]=d;a=g;break}a=Ea(8)|0;x=0;ua(98,a|0,121963);g=x;x=0;if(g&1){g=Ia()|0;La(a|0);Ua(g|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else b[a+8+3>>0]=d;while(0);sWa(a,c,d);E1a(a+(d<<2)|0,0);return}function WG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;r2(d,a,b);b=f[d>>2]|0;d=wK(a,e,b+16|0)|0;LZ(a,f[e>>2]|0,d,b);u=c;return}function XG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=qSa(f[b>>2]|0)|0;if(!(f[c+16>>2]|0))Ca(77054,76797,157,77067);d=a+84|0;ki(a,c,b,(f[d>>2]|0)+-12|0);c=f[d>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;Zsa(c+(e*12|0)|0);b=e}f[d>>2]=c+-12;t3(a+44|0);return}function YG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=qSa(f[b>>2]|0)|0;if(!(f[c+16>>2]|0))Ca(77054,76797,157,77067);d=a+84|0;ki(a,c,b,(f[d>>2]|0)+-12|0);c=f[d>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;$sa(c+(e*12|0)|0);b=e}f[d>>2]=c+-12;v3(a+44|0);return}function ZG(a){a=a|0;var b=0,c=0,d=0;b=Kva(0,uZa(a)|0)|0;d=f[a+12>>2]|0;c=f[a+8>>2]|0;while(1){if((c|0)==(d|0))break;b=Kva(b,f[c>>2]|0)|0;c=c+4|0}b=Kva(b,BZa(a)|0)|0;d=f[a+24>>2]|0;c=f[a+20>>2]|0;while(1){if((c|0)==(d|0))break;b=Kva(b,f[c>>2]|0)|0;c=c+4|0}c=Kva(b,f[a+4>>2]|0)|0;b=a+32|0;if(Iab(f[b>>2]|0)|0)b=v8a(b)|0;else b=0;d=Kva(c,b)|0;return Kva(d,Ec(f[a+36>>2]|0)|0)|0}function _G(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(c>>>0>1073741807)Mda();do if(c>>>0>=2){e=c+4&-4;if(e>>>0<=1073741823){g=n8(e<<2)|0;f[a>>2]=g;f[a+8>>2]=e|-2147483648;f[a+4>>2]=c;a=g;break}a=Ea(8)|0;x=0;ua(98,a|0,121963);g=x;x=0;if(g&1){g=Ia()|0;La(a|0);Ua(g|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else b[a+8+3>>0]=c;while(0);rWa(a,c,d);E1a(a+(c<<2)|0,0);return}function $G(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+80|0;b=f[e>>2]|0;cD(a+16|0);c=a+72|0;d=f[c>>2]|0;if((d|0)==(f[a+76>>2]|0))IL(a+68|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}BH(b,f[e>>2]|0);b=a+112|0;c=f[b>>2]|0;if((c|0)==(f[a+116>>2]|0))IL(a+108|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function aH(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;d=b;k1(c,a);a=f[c>>2]|0;c=GL(d,a+16|0)|0;LZ(132632,f[d>>2]|0,c,a);u=b;return}function bH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+80|0;b=f[e>>2]|0;hD(a+16|0);c=a+72|0;d=f[c>>2]|0;if((d|0)==(f[a+76>>2]|0))IL(a+68|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}BH(b,f[e>>2]|0);b=a+112|0;c=f[b>>2]|0;if((c|0)==(f[a+116>>2]|0))IL(a+108|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function cH(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=b[c>>0]|0;do if(f<<24>>24){a=zWa(a,f<<24>>24)|0;if(a){e=b[c+1>>0]|0;if(e<<24>>24)if(b[a+1>>0]|0){d=b[c+2>>0]|0;if(!(d<<24>>24)){a=c$(a,f,e)|0;break}if(b[a+2>>0]|0){if(!(b[c+3>>0]|0)){a=$_(a,f,e,d)|0;break}if(b[a+3>>0]|0)if(!(b[c+4>>0]|0)){a=IX(a,c)|0;break}else{a=cj(a,c)|0;break}else a=0}else a=0}else a=0}else a=0}while(0);return a|0}function dH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+4|0;c=j;f[h>>2]=a;f[c>>2]=b;d=b;i=a;do if((a|0)!=0&(b|0)!=0){e=a+36|0;g=f[e>>2]|0;if((g|0)==(f[a+40>>2]|0))IL(a+32|0,c);else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}a=b+48|0;c=f[a>>2]|0;if((c|0)==(f[b+52>>2]|0)){IL(b+44|0,h);break}else{f[c>>2]=i;f[a>>2]=(f[a>>2]|0)+4;break}}while(0);u=j;return}function eH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2559,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function fH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;do if(a<<24>>24){a=yCa(134176,110568)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[c>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0,g=x,x=0,!(g&1)):0){JCa(c);Wq(a,d)|0;du(a)|0;break}g=Ia()|0;JCa(c);Ua(g|0)}while(0);u=e;return}function gH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function hH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)fp(a,b)}}else fp(a,b);return}function iH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1307,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function jH(a){a=a|0;if(!a)return;else{jH(f[a>>2]|0);jH(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function kH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=wfa(b,f[a>>2]|0)|0;ZXa(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){JCa(e);Wq(a,d)|0;du(a)|0;u=g;return b|0}h=Ia()|0;JCa(e);Ua(h|0);return 0}function lH(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;LGa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;maa(d,f[a>>2]|0);a=a+4|0}Boa(d,f[b+76>>2]|0,f[b+80>>2]|0);Boa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function mH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=u;u=u+32|0;i=e+16|0;j=e;h=a+44|0;g=f[h>>2]|0;m$a(j,0);f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];f[i+12>>2]=f[j+12>>2];a=Lya(g,b,a0(g,i)|0)|0;b=f[h>>2]|0;c=NKa(f[b>>2]|0,c,1)|0;d=NKa(f[f[h>>2]>>2]|0,d,1)|0;d=F$(g,a,Fpa(f[b>>2]|0,11,c,d)|0)|0;u=e;return d|0}function nH(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=zF(c,h,d)|0;d=f[g>>2]|0;if(!d){aia(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function oH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=u;u=u+32|0;g=e+16|0;h=e;i=a+44|0;a=f[i>>2]|0;j=NKa(f[a>>2]|0,c,1)|0;c=NKa(f[f[i>>2]>>2]|0,d,1)|0;c=Lya(a,b,Fpa(f[a>>2]|0,10,j,c)|0)|0;d=f[i>>2]|0;m$a(h,0);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];d=F$(a,c,a0(d,g)|0)|0;u=e;return d|0}function pH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1214,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function qH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1119,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function rH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=a+20|0;e=a+16|0;g=a+4|0;b=0;while(1){if(b>>>0>=(f[c>>2]|0)>>>0)break;d=(f[e>>2]|0)+b|0;d=f[(f[(f[g>>2]|0)+(d>>>10<<2)>>2]|0)+((d&1023)<<2)>>2]|0;if(d|0){IK(d);ubb(d)}b=b+1|0}d=a+44|0;e=a+40|0;g=a+28|0;b=0;while(1){if(b>>>0>=(f[d>>2]|0)>>>0)break;c=(f[e>>2]|0)+b|0;c=f[(f[(f[g>>2]|0)+(c>>>10<<2)>>2]|0)+((c&1023)<<2)>>2]|0;if(c|0)oc[f[(f[c>>2]|0)+4>>2]&1023](c);b=b+1|0}Nca(a+24|0);Nca(a);return}function sH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,899,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function tH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,994,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function uH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,774,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function vH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;do if(Iab(f[b+4>>2]|0)|0){d=b+12|0;e=f[d>>2]|0;if((f[e+4>>2]|0)==5){BVa(f[a+16>>2]|0,e)|0;break}else{e=f[a+36>>2]|0;Bbb(e)|0;U0a(c,e);e=Dpa(c,b,NKa(f[c>>2]|0,f[b+8>>2]|0,f[(f[d>>2]|0)+4>>2]|0)|0)|0;BVa(f[a+16>>2]|0,e)|0;bLa(b,0);break}}while(0);u=g;return}function wH(a){a=a|0;if(!a)return;else{wH(f[a>>2]|0);wH(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function xH(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);FNa(b+16|0);ubb(b);return}function yH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1186,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function zH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1091,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function AH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;e=i+4|0;g=i;b=f[b>>2]|0;c=o$a(b)|0;if(!c){b=C$a(b)|0;if(b|0?(d=f[b+8>>2]|0,Iab(d)|0):0){f[g>>2]=d;f[h>>2]=f[g>>2];a=sC(a+36|0,h)|0;f[b+8>>2]=a}}else{b=f[c+8>>2]|0;if(Iab(b)|0){f[e>>2]=b;f[h>>2]=f[e>>2];a=sC(a+36|0,h)|0;f[c+8>>2]=a}}u=i;return}function BH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+4|0;c=j;f[h>>2]=a;f[c>>2]=b;d=b;i=a;do if((a|0)!=0&(b|0)!=0){e=a+40|0;g=f[e>>2]|0;if((g|0)==(f[a+44>>2]|0))IL(a+36|0,c);else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}a=b+52|0;c=f[a>>2]|0;if((c|0)==(f[b+56>>2]|0)){IL(b+48|0,h);break}else{f[c>>2]=i;f[a>>2]=(f[a>>2]|0)+4;break}}while(0);u=j;return}function CH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,871,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function DH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,966,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function EH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,746,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function FH(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;tHa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;V2(d,f[a>>2]|0);a=a+4|0}Roa(d,f[b+76>>2]|0,f[b+80>>2]|0);Roa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=f[a+44>>2]|0;if(((f[a+40>>2]|0)!=(d|0)?(c=o$a(f[d+-4>>2]|0)|0,c|0):0)?(d=MCa(c+12|0)|0,(b|0)==(f[d>>2]|0)):0){QHa(e,b,c);b=a+76|0;c=f[b>>2]|0;if(c>>>0<(f[a+80>>2]|0)>>>0){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[b>>2]=(f[b>>2]|0)+12}else wE(a+72|0,e)}u=g;return}function HH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,i=0;f=~b;f=(f>>>0>4294967292?f:-4)+b+4&-4;d=b;e=a;c=b;while(1){if(d>>>0<=3)break;i=X(h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24,1540483477)|0;d=d+-4|0;e=e+4|0;c=(X(i>>>24^i,1540483477)|0)^(X(c,1540483477)|0)}d=a+f|0;switch(b-f|0){case 3:{c=(h[d+2>>0]|0)<<16^c;g=6;break}case 2:{g=6;break}case 1:{g=7;break}default:{}}if((g|0)==6){c=(h[d+1>>0]|0)<<8^c;g=7}if((g|0)==7)c=X(c^(h[d>>0]|0),1540483477)|0;i=X(c>>>13^c,1540483477)|0;return i>>>15^i|0}function IH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)ep(a,b)}}else ep(a,b);return}function JH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+192|0;e=g+92|0;d=g;if((f[a+4>>2]|0)!=5)if(!b)a=1;else{fA(e,c,b);do if(!(lza(e)|0)){x=0;va(101,d|0,c|0,a|0);c=x;x=0;if(c&1){g=Ia()|0;V7(e);Ua(g|0)}else{a=(xj(d,e)|0)^1;V7(d);break}}else a=0;while(0);V7(e)}else a=0;u=g;return a|0}function KH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,197,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function LH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+96|0;c=e;g=WHa(f[b+4>>2]|0)|0;d=f[f[a+4>>2]>>2]|0;if(g>>>0<(d+1|0)>>>0)a=1;else{g=f[a+12>>2]|0;a=y6(b,d)|0;fA(c,_Ya(f[g+52>>2]|0)|0,a);a=Iab(f[c+88>>2]|0)|0;V7(c)}u=e;return a|0}function MH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;az(c);if(Opa(d,b[f[c>>2]>>0]|0)|0)f4a(g,0);else{e=Rm(a,c,d)|0;f[g>>2]=e}az(c);a=f[c>>2]|0;e=b[a>>0]|0;if(!(Opa(d,e)|0))Ca(66073,65740,463,66093);if(e<<24>>24==59)f[c>>2]=a+1;g=s0(f[g>>2]|0)|0;u=h;return g|0}function NH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((a|0)==(b|0))break;if(LH(c,a)|0){d=5;break}a=a+12|0}a:do if((d|0)==5){d=a;while(1){do{a=a+12|0;if((a|0)==(b|0)){b=d;break a}}while(LH(c,a)|0);f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];d=d+12|0}}while(0);return b|0}function OH(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;NHa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Rfa(d,f[a>>2]|0);a=a+4|0}apa(d,f[b+76>>2]|0,f[b+80>>2]|0);apa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function PH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;f[a>>2]=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=0;do if((f[b+4>>2]|0)!=(f[b>>2]|0)){x=0;ua(1504,c|0,b|0);b=x;x=0;if(b&1){a=Ia()|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0){uSa(b);ubb(b)}Ua(a|0)}else{b=f[c>>2]|0;f[c>>2]=0;a=f[e>>2]|0;f[e>>2]=b;if(a|0){uSa(a);ubb(a)}f[c>>2]=0;break}}while(0);u=d;return}function QH(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;if((-17-c|0)>>>0>>0)Mda();if((b[a+11>>0]|0)<0)k=f[a>>2]|0;else k=a;if(c>>>0<2147483623){i=d+c|0;j=c<<1;i=i>>>0>>0?j:i;i=i>>>0<11?11:i+16&-16}else i=-17;j=P1a(i)|0;if(g|0)$Ta(j,k,g)|0;d=e-g|0;if(d|0)$Ta(j+g+h|0,k+g|0,d)|0;if((c|0)!=10)ubb(k);f[a>>2]=j;f[a+8>>2]=i|-2147483648;return}function RH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((a|0)==(b|0))break;if(rW(c,a)|0){d=5;break}a=a+12|0}a:do if((d|0)==5){d=a;while(1){do{a=a+12|0;if((a|0)==(b|0)){b=d;break a}}while(rW(c,a)|0);f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];d=d+12|0}}while(0);return b|0}function SH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;STa(e,c,d)|0;T0a(e+d|0,0);if((b[i>>0]|0)<0){f[a+4>>2]=d;break}else{b[i>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;zB(a,h,d-h|0,e,0,e,d,c)}while(0);return}function TH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;do if(a<<24>>24){a=yCa(134176,110589)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[c>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0,g=x,x=0,!(g&1)):0){JCa(c);Wq(a,d)|0;du(a)|0;break}g=Ia()|0;JCa(c);Ua(g|0)}while(0);u=e;return}function UH(a){a=a|0;var b=0;rJa(a);f[a>>2]=44420;b=a+44|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[a+64>>2]=1065353216;b=a+68|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+84>>2]=1065353216;b=a+88|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+104>>2]=1065353216;b=a+108|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+124>>2]=1065353216;b=a+128|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+144>>2]=1065353216;return}function VH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1928,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function WH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;j=f[g>>2]|0;h=c+-8|0;f[j+-8>>2]=f[h>>2];i=c+-4|0;f[j+-4>>2]=f[i>>2];f[h>>2]=0;f[i>>2]=0;f[g>>2]=(f[g>>2]|0)+-8;c=h}h=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=h;h=b+8|0;j=f[e>>2]|0;f[e>>2]=f[h>>2];f[h>>2]=j;h=a+8|0;j=b+12|0;i=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=i;f[b>>2]=f[g>>2];return}function XH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;b=p_(a+36|0,b)|0;do if((b|0)!=(a+40|0)){g=b+24|0;e=(f[g>>2]|0)+c|0;f[g>>2]=e;if((e|0)<=-1)Ca(71166,71128,171,71186);g=f[b+20>>2]|0;if(g|0){if(!e){TA(a,g);break}if((c|0)==1&(e|0)==1?(f[g+4>>2]|0)==5:0){if(!d)b=0;else b=f[d+4>>2]|0;lxa(a,g,b)}}}while(0);return}function YH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;e=h+8|0;j=h+4|0;g=h;i=f[b>>2]|0;f[j>>2]=f[c>>2];f[e>>2]=f[j>>2];c=cna(i,e)|0;if(!c){j=f[b+36>>2]|0;pc[f[(f[j>>2]|0)+20>>2]&4095](j,66937)}f[g>>2]=f[c+4>>2];f[e>>2]=f[g>>2];oT(a,b,e,d);u=h;return}function ZH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}h=h7a(c)|0;g=d+11|0;e=b[g>>0]|0;e=e<<24>>24<0?f[d+4>>2]|0:e&255;x=0;wa(161,a|0,c|0,h|0,e+h|0);c=x;x=0;if(!(c&1)?(x=0,ja(97,a|0,((b[g>>0]|0)<0?f[d>>2]|0:d)|0,e|0)|0,h=x,x=0,!(h&1)):0)return;h=Ia()|0;HTa(a);Ua(h|0)}function _H(a){a=a|0;if(!a)return;else{_H(f[a>>2]|0);_H(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function $H(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2162,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function aI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;oIa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;S6(d,f[a>>2]|0);a=a+4|0}Gpa(d,f[b+76>>2]|0,f[b+80>>2]|0);Gpa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function bI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;h=e<<24>>24<0;if(h){g=(f[a+8>>2]&2147483647)+-1|0;e=f[a+4>>2]|0}else{g=10;e=e&255}if((g-e|0)>>>0>=d>>>0){if(d|0){if(h)g=f[a>>2]|0;else g=a;$Ta(g+e|0,c,d)|0;e=e+d|0;if((b[i>>0]|0)<0)f[a+4>>2]=e;else b[i>>0]=e;T0a(g+e|0,0)}}else zB(a,g,e+d-g|0,e,e,0,d,c);return a|0}function cI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)hp(a,b)}}else hp(a,b);return}function dI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;b[g>>0]=48;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}e=c+11|0;d=b[e>>0]|0;d=d<<24>>24<0?f[c+4>>2]|0:d&255;x=0;wa(129,a|0,g|0,1,d+1|0);g=x;x=0;if(!(g&1)?(x=0,ja(49,a|0,((b[e>>0]|0)<0?f[c>>2]|0:c)|0,d|0)|0,g=x,x=0,!(g&1)):0){u=h;return}h=Ia()|0;HTa(a);Ua(h|0)}function eI(a){a=a|0;if(!a)return;else{eI(f[a>>2]|0);eI(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function fI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;U0a(d,b);switch(f[a+4>>2]|0){case 1:{c=mBa(f[d>>2]|0,23,a)|0;break}case 5:case 2:{c=a;break}case 3:{c=f[d>>2]|0;c=mBa(c,23,mBa(c,33,a)|0)|0;break}case 4:{c=mBa(f[d>>2]|0,34,a)|0;break}case 0:{c=Dpa(d,a,FSa(2,b)|0)|0;break}default:hb()}u=e;return c|0}function gI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2593,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function hI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;b=h;e=a+24|0;c=a+28|0;if((f[c>>2]|0)!=(f[e>>2]|0)){U0a(b,f[a+16>>2]|0);g=qwa(f[b>>2]|0,0)|0;c=f[c>>2]|0;d=g+12|0;b=f[e>>2]|0;while(1){if((b|0)==(c|0))break;aaa(d,f[b>>2]|0);b=b+4|0}a=a+20|0;aaa(d,f[(f[a>>2]|0)+36>>2]|0);XJa(g,f[(f[(f[a>>2]|0)+36>>2]|0)+4>>2]|0);f[(f[a>>2]|0)+36>>2]=g}u=h;return}function iI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+8|0;g=h;G9(e,Bbb(f[b+36>>2]|0)|0,b+48|0,d);x=0;va(155,a|0,e|0,c|0);d=x;x=0;do if(d&1){b=Ja(34968)|0;d=I;if((d|0)==(Db(34968)|0)){Fa(b|0)|0;f[g>>2]=f[33152];f[e>>2]=f[g>>2];hXa(a,e);Ga();break}else Ua(b|0)}while(0);u=h;return}function jI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2132,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function kI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;d=j;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e|0;h=g+1|0;i=Dab()|0;if(i>>>0>>0)_da();else{k=(f[a+8>>2]|0)-e|0;e=k<<1;nda(d,k>>>0>>1>>>0?(e>>>0>>0?h:e):i,g,a+8|0);i=d+8|0;h=f[i>>2]|0;b[h>>0]=b[c>>0]|0;f[i>>2]=h+1;XP(a,d);koa(d);u=j;return}}function lI(a,b){a=a|0;b=b|0;b=ru(a,b)|0;if(b|0)oQ(a,b);return}function mI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=f[a>>2]|0;f[e>>2]=f[f[c>>2]>>2];d=Wl(d+20|0,e)|0;c=f[a+4>>2]|0;if((rB(c,e)|0)!=0?(e=qm(c,e)|0,(f[e>>2]|0)==(f[d>>2]|0)):0)c=(b[d+9>>0]|0)==0;else c=0;u=g;return c|0}function nI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,351,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function oI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=xm(b,a)|0;ZXa(e,b+(f[(f[b>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){JCa(e);Wq(a,d)|0;du(a)|0;u=g;return b|0}h=Ia()|0;JCa(e);Ua(h|0);return 0}function pI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1688,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function qI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;d=b+12|0;if(f[d>>2]|0?$1a(f[b+8>>2]|0,f[a+36>>2]|0)|0:0){e=f[a+20>>2]|0;Bbb(e)|0;U0a(c,e);e=f[d>>2]|0;if((f[e+4>>2]|0)==5)BVa(f[a>>2]|0,e)|0;else{f[d>>2]=0;xqa(b);e=Dpa(c,gNa(f[c>>2]|0,e)|0,b)|0;BVa(f[a>>2]|0,e)|0}u=g;return}u=g;return}function rI(a,b){a=a|0;b=+b;var c=0,d=0,e=0;c=D$a(b)|0;if((c&2147483647)>>>0>2139095040){yCa(yCa(a,(c|0)<0?123398:135337)|0,118775)|0;c=Hha(b)|0;if(c|0){d=yCa(a,75303)|0;e=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[e>>2]=f[e>>2]&-75|8;zm(d,c)|0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]&-75|2}}else Zt(a,b);return}function sI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1984,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function tI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=a+12|0;d=a+16|0;if((Bbb(f[d>>2]|0)|0)==(b|0))aaa(g,c);else{aaa(g,0);e=Bbb(f[d>>2]|0)|0;while(1){d=e+-1|0;if(d>>>0<=b>>>0)break;i=JDa(g,e+-2|0)|0;i=f[i>>2]|0;h=JDa(g,d)|0;f[h>>2]=i;e=d}i=JDa(g,b)|0;f[i>>2]=c}XJa(a,f[a+4>>2]|0);return}function uI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1716,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function vI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;bJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;F2(d,f[a>>2]|0);a=a+4|0}lqa(d,f[b+76>>2]|0,f[b+80>>2]|0);lqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function wI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;cJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;A4(d,f[a>>2]|0);a=a+4|0}mqa(d,f[b+76>>2]|0,f[b+80>>2]|0);mqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function xI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;b=g;d=yCa(a,81460)|0;ZXa(b,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[b>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,c=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,h=x,x=0,!(h&1)):0){JCa(b);Wq(d,c)|0;du(d)|0;u=g;return a|0}h=Ia()|0;JCa(b);Ua(h|0);return 0}function yI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2283,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function zI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1243,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function AI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1023,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function BI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1148,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function CI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2013,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function DI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;a=f[d>>2]|0;do if(a){e=f[c>>2]|0;while(1)if(KVa(e,f[a+16>>2]|0)|0){d=f[a>>2]|0;if(!d){d=5;break}else a=d}else{c=a+4|0;d=f[c>>2]|0;if(!d){d=7;break}else a=d}if((d|0)==5){f[b>>2]=a;break}else if((d|0)==7){f[b>>2]=a;a=c;break}}else{f[b>>2]=d;a=d}while(0);return a|0}function EI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;zJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;sha(d,f[a>>2]|0);a=a+4|0}Dqa(d,f[b+76>>2]|0,f[b+80>>2]|0);Dqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function FI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;AJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;$ba(d,f[a>>2]|0);a=a+4|0}Eqa(d,f[b+76>>2]|0,f[b+80>>2]|0);Eqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function GI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,928,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function HI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,805,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function II(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;i=(Hr(a,f[b+28>>2]|0)|0)+6|0;e=b+8|0;I$a(g,e);GUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=i;while(1){if(!(lTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=LOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;RYa(g);b=i}u=h;return b|0}function JI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1511,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function KI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=p_(a+172|0,b)|0;if((h|0)!=(a+176|0)){u=i;return f[h+20>>2]|0}J_a();x=0;ia(52,e|0,72035)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)gCa();Ia()|0;gCa();return 0}function LI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=f[a+16>>2]|0;a:do if(c){b=f[(f[a+12>>2]|0)+4>>2]|0;c=f[c+4>>2]|0;do if((b|0)==(c|0)){d=a+4|0;f[d>>2]=b}else{if((o2a(b)|0)&(c|0)==5){d=a+4|0;f[d>>2]=b;break}if(!((o2a(c)|0)&(b|0)==5)){g=9;break a}d=a+4|0;f[d>>2]=c;b=c}while(0);if(!b){e=d;g=10}}else g=9;while(0);if((g|0)==9){e=a+4|0;f[e>>2]=0;g=10}if((g|0)==10?(f[(f[a+8>>2]|0)+4>>2]|0)==5:0)f[e>>2]=5;return}function MI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;c=j+4|0;f[h>>2]=b;d=b+12|0;e=N_a(f[d>>2]|0)|0;i=b;if(e|0?(g=e+8|0,(f[g>>2]|0)!=(f[b+8>>2]|0)):0){b=f[a+36>>2]|0;Bbb(b)|0;U0a(c,b);b=nBa(f[c>>2]|0,f[g>>2]|0,e)|0;f[d>>2]=b;b=a+48|0;c=f[b>>2]|0;if((c|0)==(f[a+52>>2]|0))IL(a+44|0,h);else{f[c>>2]=i;f[b>>2]=(f[b>>2]|0)+4}}u=j;return}function NI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1061,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function OI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2712,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function PI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+56|0;g=a+60|0;c=f[g>>2]|0;if((f[e>>2]|0)==(c|0))Ca(111004,111024,418,111093);f[g>>2]=c+-4;Ev(f[a+28>>2]|0,5)|0;E1a(d,f[33015]|0);c=f[g>>2]|0;if(c>>>0<(f[a+64>>2]|0)>>>0){f[c>>2]=f[d>>2];f[g>>2]=(f[g>>2]|0)+4}else IL(e,d);qw(a,f[b+16>>2]|0);u=h;return}function QI(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);bTa(b+16|0);ubb(b);return}function RI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if(d&2048){b[a>>0]=43;a=a+1|0}if(d&1024){b[a>>0]=35;a=a+1|0}g=d&260;e=d&16384;f=(g|0)==260;if(f)h=0;else{b[a>>0]=46;b[a+1>>0]=42;h=1;a=a+2|0}while(1){d=b[c>>0]|0;if(!(d<<24>>24))break;b[a>>0]=d;c=c+1|0;a=a+1|0}a:do switch(g&511){case 4:{d=e>>>9&255^102;break}case 256:{d=e>>>9&255^101;break}default:{d=e>>>9&255;if(f){d=d^97;break a}else{d=d^103;break a}}}while(0);b[a>>0]=d;return h|0}function SI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=p_(a+56|0,b)|0;if((h|0)!=(a+60|0)){u=i;return f[h+20>>2]|0}J_a();x=0;ia(52,e|0,92517)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)gCa();Ia()|0;gCa();return 0}function TI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,649,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function UI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2247,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function VI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2740,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function WI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1416,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function XI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;VJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;B1(d,f[a>>2]|0);a=a+4|0}dra(d,f[b+76>>2]|0,f[b+80>>2]|0);dra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function YI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;WJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;j3(d,f[a>>2]|0);a=a+4|0}era(d,f[b+76>>2]|0,f[b+80>>2]|0);era(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function ZI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=p_(a+208|0,b)|0;if((h|0)!=(a+212|0)){u=i;return f[h+20>>2]|0}J_a();x=0;ia(52,e|0,82039)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)gCa();Ia()|0;gCa();return 0}function _I(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1838,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function $I(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1897,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function aJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=zm(b,a)|0;ZXa(e,b+(f[(f[b>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){JCa(e);Wq(a,d)|0;du(a)|0;u=g;return b|0}h=Ia()|0;JCa(e);Ua(h|0);return 0}function bJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+56|0;g=a+60|0;c=f[g>>2]|0;if((f[e>>2]|0)==(c|0))Ca(111004,111024,418,111093);f[g>>2]=c+-4;Ev(f[a+28>>2]|0,5)|0;E1a(d,f[33015]|0);c=f[g>>2]|0;if(c>>>0<(f[a+64>>2]|0)>>>0){f[c>>2]=f[d>>2];f[g>>2]=(f[g>>2]|0)+4}else IL(e,d);$D(f[b+16>>2]|0);u=h;return}function cJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,169,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function dJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=p_(a+196|0,b)|0;if((h|0)!=(a+200|0)){u=i;return f[h+20>>2]|0}J_a();x=0;ia(52,e|0,118689)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)gCa();Ia()|0;gCa();return 0}function eJ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;do if((a|0)==(c|0)){f[d>>2]=4;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;a=0;break}i=f[33448]|0;f[33448]=0;fOa()|0;g=s$a(a,h,e)|0;a=I;e=f[33448]|0;if(!e)f[33448]=i;do if((f[h>>2]|0)==(c|0))if(a>>>0>0|(a|0)==0&g>>>0>65535|(e|0)==34){f[d>>2]=4;a=-1;break}else{a=g&65535;break}else{f[d>>2]=4;a=0}while(0)}while(0);u=j;return a|0}function fJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2649,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function gJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2860,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=p_(a+184|0,b)|0;if((h|0)!=(a+188|0)){u=i;return f[h+20>>2]|0}J_a();x=0;ia(52,e|0,91673)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)gCa();Ia()|0;gCa();return 0}function iJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=p_(a+220|0,b)|0;if((h|0)!=(a+224|0)){u=i;return f[h+20>>2]|0}J_a();x=0;ia(52,e|0,94077)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)gCa();Ia()|0;gCa();return 0}function jJ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;b[a+53>>0]=1;do if((f[a+4>>2]|0)==(d|0)){b[a+52>>0]=1;g=a+16|0;d=f[g>>2]|0;if(!d){f[g>>2]=c;f[a+24>>2]=e;f[a+36>>2]=1;if(!((e|0)==1?(f[a+48>>2]|0)==1:0))break;b[a+54>>0]=1;break}if((d|0)!=(c|0)){e=a+36|0;f[e>>2]=(f[e>>2]|0)+1;b[a+54>>0]=1;break}g=a+24|0;d=f[g>>2]|0;if((d|0)==2){f[g>>2]=e;d=e}if((d|0)==1?(f[a+48>>2]|0)==1:0)b[a+54>>0]=1}while(0);return}function kJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1806,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function lJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1377,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function mJ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}g=b[c+11>>0]|0;h=g<<24>>24<0;g=h?f[c+4>>2]|0:g&255;e=h7a(d)|0;x=0;wa(161,a|0,(h?f[c>>2]|0:c)|0,g|0,g+e|0);c=x;x=0;if(!(c&1)?(x=0,ja(97,a|0,d|0,e|0)|0,h=x,x=0,!(h&1)):0)return;h=Ia()|0;HTa(a);Ua(h|0)}function nJ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=a+8|0;j=e+3|0;h=b[j>>0]|0;i=h<<24>>24<0;if(i)g=(f[e>>2]&2147483647)+-1|0;else g=1;do if(g>>>0>=d>>>0){if(i)e=f[a>>2]|0;else e=a;pWa(e,c,d);E1a(e+(d<<2)|0,0);if((b[j>>0]|0)<0){f[a+4>>2]=d;break}else{b[j>>0]=d;break}}else{if(i)e=f[a+4>>2]|0;else e=h&255;lw(a,g,d-g|0,e,0,e,d,c)}while(0);return a|0}function oJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1597,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function pJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1336,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function qJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;yKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Aca(d,f[a>>2]|0);a=a+4|0}tra(d,f[b+76>>2]|0,f[b+80>>2]|0);tra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function rJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;zKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Bca(d,f[a>>2]|0);a=a+4|0}ura(d,f[b+76>>2]|0,f[b+80>>2]|0);ura(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function sJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;BKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Cca(d,f[a>>2]|0);a=a+4|0}yra(d,f[b+76>>2]|0,f[b+80>>2]|0);yra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function tJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;CKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Dca(d,f[a>>2]|0);a=a+4|0}zra(d,f[b+76>>2]|0,f[b+80>>2]|0);zra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function uJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2984,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2403,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function wJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2431,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function xJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2462,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function yJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2774,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function zJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1569,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function AJ(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=a+11|0;d=b[h>>0]|0;e=d<<24>>24<0;if(e){g=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{g=d&255;d=10}if((g|0)==(d|0)){QH(a,d,1,d,d,0);if((b[h>>0]|0)<0)d=8;else d=7}else if(e)d=8;else d=7;if((d|0)==7)b[h>>0]=g+1;else if((d|0)==8){h=f[a>>2]|0;f[a+4>>2]=g+1;a=h}h=a+g|0;T0a(h,c);T0a(h+1|0,0);return}function BJ(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!($1a(a,f[c+8>>2]|0)|0)){if($1a(a,f[c>>2]|0)|0){if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[c+32>>2]=e;f[h>>2]=d;g=c+40|0;f[g>>2]=(f[g>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[c+32>>2]=1}}else cwa(c,d,e);while(0);return}function CJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1746,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function DJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2103,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2678,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function FJ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a:do if(!($1a(a,f[c+8>>2]|0)|0)){h=f[a+12>>2]|0;g=a+16+(h<<3)|0;z6(a+16|0,c,d,e);if((h|0)>1){h=c+54|0;a=a+24|0;do{z6(a,c,d,e);if(b[h>>0]|0)break a;a=a+8|0}while(a>>>0>>0)}}else mY(c,d,e);while(0);return}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,3012,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function HJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,109,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2043,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function JJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2802,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function KJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,3142,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function LJ(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;switch(a|0){case 25:{E1a(b,f[33028]|0);break}case 27:{E1a(b,f[33029]|0);break}case 26:{E1a(b,f[33030]|0);break}case 28:{E1a(b,f[33031]|0);break}case 29:{E1a(b,f[33024]|0);break}case 31:{E1a(b,f[33025]|0);break}case 30:{E1a(b,f[33026]|0);break}case 32:{E1a(b,f[33027]|0);break}default:tab(b)}u=c;return f[b>>2]|0}function MJ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;h=e;g=n8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=g+8|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];b[a+8>>0]=1;f[h>>2]=f[c>>2];d=HH(h,4)|0;f[g+4>>2]=d;f[g>>2]=0;u=e;return}function NJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1539,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function OJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,1778,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function PJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2071,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function QJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2891,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function RJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;OKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;cia(d,f[a>>2]|0);a=a+4|0}Xra(d,f[b+76>>2]|0,f[b+80>>2]|0);Xra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function SJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;PKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;dia(d,f[a>>2]|0);a=a+4|0}Yra(d,f[b+76>>2]|0,f[b+80>>2]|0);Yra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;QKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;eia(d,f[a>>2]|0);a=a+4|0}Zra(d,f[b+76>>2]|0,f[b+80>>2]|0);Zra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function UJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;RKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Qca(d,f[a>>2]|0);a=a+4|0}_ra(d,f[b+76>>2]|0,f[b+80>>2]|0);_ra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,590,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2494,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2832,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function YJ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+16|0;g=i+4|0;h=i;b[a+9>>0]=0;ay(a,e)|0;if(!(b[a+8>>0]|0)){e=FV(a,e)|0;yCa(Lca(e,c)|0,81188)|0;f[h>>2]=f[d>>2];f[g>>2]=f[h>>2];kH(g,e)|0}u=i;return}function ZJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,436,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function _J(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2311,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function $J(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,3070,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function aK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,3040,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function bK(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=a+8|0;j=e+3|0;g=b[j>>0]|0;i=g<<24>>24<0;if(i){e=(f[e>>2]&2147483647)+-1|0;h=f[a+4>>2]|0}else{e=1;h=g&255}if((e-h|0)>>>0>=d>>>0){if(d|0){if(i)g=f[a>>2]|0;else g=a;sWa(g+(h<<2)|0,c,d);e=h+d|0;if((b[j>>0]|0)<0)f[a+4>>2]=e;else b[j>>0]=e;E1a(g+(e<<2)|0,0)}}else lw(a,e,h+d-e|0,h,h,0,d,c);return a|0}function cK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1461,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function dK(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;a:do if((a|0)!=(c|0)){switch(b[a>>0]|0){case 104:{e=a+1|0;d=QX(e,c)|0;if((d|0)==(e|0)|(d|0)==(c|0))break a;return ((b[d>>0]|0)==95?d+1|0:a)|0}case 118:break;default:break a}f=a+1|0;d=QX(f,c)|0;if((!((d|0)==(f|0)|(d|0)==(c|0))?(b[d>>0]|0)==95:0)?(f=d+1|0,e=QX(f,c)|0,!((e|0)==(f|0)|(e|0)==(c|0))):0)a=(b[e>>0]|0)==95?e+1|0:a}while(0);return a|0}function eK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-12|0;E4((f[g>>2]|0)+-12|0,h);f[g>>2]=(f[g>>2]|0)+-12;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function fK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,716,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function gK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2522,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function hK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;dLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;eda(d,f[a>>2]|0);a=a+4|0}xsa(d,f[b+76>>2]|0,f[b+80>>2]|0);xsa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function iK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;eLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;ria(d,f[a>>2]|0);a=a+4|0}ysa(d,f[b+76>>2]|0,f[b+80>>2]|0);ysa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function jK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;fLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;sia(d,f[a>>2]|0);a=a+4|0}zsa(d,f[b+76>>2]|0,f[b+80>>2]|0);zsa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function kK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,137,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function lK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,2621,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function mK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2925,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function nK(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;tU(a,c,d,e,g);qTa(a,b);x=0;ta(482,a|0);g=x;x=0;if((!(g&1)?(x=0,ua(1376,a|0,f[(f[a+40>>2]|0)+36>>2]|0),g=x,x=0,!(g&1)):0)?(x=0,ta(483,f[a+28>>2]|0),g=x,x=0,!(g&1)):0)return;g=Ia()|0;xfa(a);Ua(g|0)}function oK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;i=h[b+8>>0]|0;g=Bbb(f[b+12>>2]|0)|0;e=_2(a,f[b+16>>2]|0)|0;d=_2(a,f[b+20>>2]|0)|0;c=_2(a,f[b+24>>2]|0)|0;return H3(f[a+32>>2]|0,i,g,e,d,c,f[b+4>>2]|0)|0}function pK(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k;i=c+4|0;j=c+8|0;d=f[a>>2]|0;while(1){e=d&127;b[h>>0]=e;d=d>>7;if(!(iIa(a,d,e)|0))break;e=e|-128;b[h>>0]=e;g=f[i>>2]|0;if((g|0)==(f[j>>2]|0))WL(c,h);else{b[g>>0]=e;f[i>>2]=(f[i>>2]|0)+1}}d=f[i>>2]|0;if((d|0)==(f[j>>2]|0))WL(c,h);else{b[d>>0]=e;f[i>>2]=(f[i>>2]|0)+1}u=k;return}function qK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=g$a(b)|0;do if(!e){d=N_a(b)|0;if(!d){d=zS(a,b)|0;break}else{d=f[c+(f[d+8>>2]<<2)>>2]|0;break}}else{b=e+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];d=AT(a,d)|0}while(0);u=g;return d|0}function rK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i;h=f[(f[f[f[b>>2]>>2]>>2]|0)+4>>2]|0;d=f[a+36>>2]|0;Bbb(d)|0;U0a(c,d);d=f[a+32>>2]|0;Bbb(d)|0;d=xka(d,h)|0;e=Lya(c,d,f[f[f[b>>2]>>2]>>2]|0)|0;g=f[b+4>>2]|0;c=f[c>>2]|0;a=f[b>>2]|0;while(1){if((a|0)==(g|0))break;b=f[a>>2]|0;j=NKa(c,d,h)|0;f[b>>2]=j;a=a+4|0}u=i;return e|0}function sK(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;x=0;ua(88,g+8|0,f[e>>2]|0);e=x;x=0;if(e&1){e=Ia()|0;f[a>>2]=0;ubb(g);Ua(e|0)}else{f[g+20>>2]=0;b[c>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}}function tK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,322,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function uK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;if(AB(a+108|0,b+8|0)|0)Ca(108322,106510,260,108382);d=b+4|0;do if((f[d>>2]|0)==2){f[d>>2]=1;SN(c,a,f[b+12>>2]|0);x=0;va(161,a|0,b|0,c|0);d=x;x=0;if(d&1){e=Ia()|0;HCa(c);Ua(e|0)}else{HCa(c);break}}while(0);u=e;return}function vK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115821,115839,387,115862);rS(a,408,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}wsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=i;return}}function wK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;a=f[d>>2]|0;do if(a){e=f[c>>2]|0;while(1)if(e>>>0<(f[a+16>>2]|0)>>>0){d=f[a>>2]|0;if(!d){d=5;break}else a=d}else{c=a+4|0;d=f[c>>2]|0;if(!d){d=7;break}else a=d}if((d|0)==5){f[b>>2]=a;break}else if((d|0)==7){f[b>>2]=a;a=c;break}}else{f[b>>2]=d;a=d}while(0);return a|0}function xK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;CLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Iia(d,f[a>>2]|0);a=a+4|0}gta(d,f[b+76>>2]|0,f[b+80>>2]|0);gta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function yK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;DLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;m4(d,f[a>>2]|0);a=a+4|0}hta(d,f[b+76>>2]|0,f[b+80>>2]|0);hta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function zK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;ELa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;qda(d,f[a>>2]|0);a=a+4|0}ita(d,f[b+76>>2]|0,f[b+80>>2]|0);ita(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function AK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,557,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function BK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;FLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Jia(d,f[a>>2]|0);a=a+4|0}jta(d,f[b+76>>2]|0,f[b+80>>2]|0);jta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function CK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;GLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;n4(d,f[a>>2]|0);a=a+4|0}mta(d,f[b+76>>2]|0,f[b+80>>2]|0);mta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function DK(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;do if((a|0)==(c|0)){f[d>>2]=4;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;a=0;break}i=f[33448]|0;f[33448]=0;fOa()|0;a=s$a(a,h,e)|0;e=I;g=f[33448]|0;if(!g)f[33448]=i;do if((f[h>>2]|0)==(c|0))if(e>>>0>0|(e|0)==0&a>>>0>4294967295|(g|0)==34){f[d>>2]=4;a=-1;break}else break;else{f[d>>2]=4;a=0}while(0)}while(0);u=j;return a|0}function EK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,683,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function FK(a,b){a=a|0;b=b|0;var c=0;c=Bbb(f[b+16>>2]|0)|0;a:do if(c|0?c>>>0<(h[b+8>>0]|0)>>>0:0){c=b+4|0;switch(f[c>>2]|0){case 3:{f[c>>2]=1;c=mBa(f[f[a+44>>2]>>2]|0,45,b)|0;BVa(f[a+16>>2]|0,c)|0;break a}case 4:{f[c>>2]=2;c=mBa(f[f[a+44>>2]>>2]|0,46,b)|0;BVa(f[a+16>>2]|0,c)|0;break a}default:break a}}while(0);return}function GK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;h=a+4|0;f[h>>2]=b;e=N_a(b)|0;do if(!e){e=E_a(b)|0;if(!e){c=xka(c,f[b+4>>2]|0)|0;f[a>>2]=c;U0a(g,d);g=nBa(f[g>>2]|0,f[a>>2]|0,f[h>>2]|0)|0;f[h>>2]=g;break}else{f[a>>2]=f[e+8>>2];break}}else f[a>>2]=f[e+8>>2];while(0);u=i;return}function HK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,321,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function IK(a){a=a|0;var b=0,c=0,d=0,e=0;e=a+48|0;b=Bbb(f[a+64>>2]|0)|0;c=L6a(e)|0;while(1){d=b;if((c|0)==(d|0))break;b=f[b+12>>2]|0;if(b|0){yMa(b);ubb(b)}b=f[d+4>>2]|0}b=Bbb(f[a+16>>2]|0)|0;d=L6a(a)|0;while(1){c=b;if((d|0)==(c|0))break;b=f[b+12>>2]|0;if(b|0){yMa(b);ubb(b)}b=f[c+4>>2]|0}TDa(a+72|0);Oxa(e);TDa(a+24|0);Oxa(a);return}function JK(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}g=h7a(71964)|0;e=c+11|0;d=b[e>>0]|0;d=d<<24>>24<0?f[c+4>>2]|0:d&255;x=0;wa(129,a|0,71964,g|0,d+g|0);g=x;x=0;if(!(g&1)?(x=0,ja(49,a|0,((b[e>>0]|0)<0?f[c>>2]|0:c)|0,d|0)|0,g=x,x=0,!(g&1)):0)return;g=Ia()|0;HTa(a);Ua(g|0)}function KK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;i=(f[g>>2]|0)+-4|0;h=c+-4|0;j=f[h>>2]|0;f[h>>2]=0;f[i>>2]=j;f[g>>2]=(f[g>>2]|0)+-4;c=h}h=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=h;h=b+8|0;j=f[e>>2]|0;f[e>>2]=f[h>>2];f[h>>2]=j;h=a+8|0;j=b+12|0;i=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=i;f[b>>2]=f[g>>2];return}function LK(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;STa(e,c,d)|0;T0a(e+d|0,0);if((b[i>>0]|0)<0){f[a+4>>2]=d;break}else{b[i>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;nD(a,h,d-h|0,e,0,e,d,c)}while(0);return a|0}function MK(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;l0(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function NK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-40|0;oC((f[g>>2]|0)+-40|0,h);f[g>>2]=(f[g>>2]|0)+-40;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function OK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;Hg(a,b);fA(c,_Ya(f[a+40>>2]|0)|0,0);x=0;b=ia(123,c|0,b|0)|0;e=x;x=0;do if(!(e&1)){if(b?(x=0,ua(2525,a|0,c|0),e=x,x=0,e&1):0)break;e=a+92|0;f[e>>2]=(f[e>>2]|0)+-4;V7(c);u=d;return}while(0);e=Ia()|0;V7(c);Ua(e|0)}function PK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;h=g;c=b;f[h>>2]=c;d=a+128|0;e=f[d>>2]|0;do if(e>>>0<(f[a+132>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[h>>2]=0}else{x=0;ua(677,a+124|0,h|0);e=x;x=0;if(!(e&1)){a=f[h>>2]|0;f[h>>2]=0;if(!a)break;B_a(a);ubb(a);break}a=Ia()|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0){B_a(c);ubb(c)}Ua(a|0)}while(0);u=g;return b|0}function QK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2219,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function RK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;ZLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;vda(d,f[a>>2]|0);a=a+4|0}Qta(d,f[b+76>>2]|0,f[b+80>>2]|0);Qta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function SK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;_La(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;B4(d,f[a>>2]|0);a=a+4|0}Rta(d,f[b+76>>2]|0,f[b+80>>2]|0);Rta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function TK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;$La(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Yia(d,f[a>>2]|0);a=a+4|0}Sta(d,f[b+76>>2]|0,f[b+80>>2]|0);Sta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function UK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=132804;do if(b){if(b>>>0<=214748364){d=n8(b*20|0)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*20|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*20|0);return}function VK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,481,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function WK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,262,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function XK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2953,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function YK(a,b){a=a|0;b=b|0;var c=0;while(1){if((a|0)==(b|0))break;if(Rja(f[f[a>>2]>>2]|0)|0){c=5;break}a=a+4|0}a:do if((c|0)==5){c=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=c;break a}}while((Rja(f[f[a>>2]>>2]|0)|0)!=0);f[c>>2]=f[a>>2];c=c+4|0}}while(0);return b|0}function ZK(a){a=a|0;if(!a)return;else{ZK(f[a>>2]|0);ZK(f[a+4>>2]|0);nFa(a+16|0);ubb(a);return}}function _K(a){a=a|0;if(!a)return;else{_K(f[a>>2]|0);_K(f[a+4>>2]|0);oFa(a+16|0);ubb(a);return}}function $K(a){a=a|0;if(!a)return;else{$K(f[a>>2]|0);$K(f[a+4>>2]|0);pFa(a+16|0);ubb(a);return}}function aL(a){a=a|0;if(!a)return;else{aL(f[a>>2]|0);aL(f[a+4>>2]|0);qFa(a+16|0);ubb(a);return}}function bL(a){a=a|0;if(!a)return;else{bL(f[a>>2]|0);bL(f[a+4>>2]|0);rFa(a+16|0);ubb(a);return}}function cL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;e=g;U0a(e,c);switch(b|0){case 1:{d=mBa(f[e>>2]|0,24,a)|0;break}case 5:case 2:{d=a;break}case 3:{d=f[e>>2]|0;d=mBa(d,45,mBa(d,24,a)|0)|0;break}case 4:{d=mBa(f[e>>2]|0,46,a)|0;break}case 0:{d=gNa(f[e>>2]|0,a)|0;break}default:hb()}u=g;return d|0}function dL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;if((eX(a,f[b>>2]|0)|0)==(a+4|0)){e=a+12|0;lia(e,b);e=f[e>>2]|0;b=f[b>>2]|0;f[c>>2]=b;f[c+4>>2]=e;pC(d+8|0,a,b,c)}u=d;return}function eL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+32|0;g=d+16|0;h=d;b=mBa(f[a>>2]|0,23,b)|0;e=mBa(f[a>>2]|0,23,c)|0;SSa(h,32,0);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];c=a0(a,g)|0;c=Fpa(f[a>>2]|0,35,e,c)|0;c=Fpa(f[a>>2]|0,33,b,c)|0;u=d;return c|0}function fL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1657,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function gL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1628,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function hL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;lMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Oda(d,f[a>>2]|0);a=a+4|0}sua(d,f[b+76>>2]|0,f[b+80>>2]|0);sua(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function iL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;mMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;kja(d,f[a>>2]|0);a=a+4|0}tua(d,f[b+76>>2]|0,f[b+80>>2]|0);tua(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function jL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;nMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;lja(d,f[a>>2]|0);a=a+4|0}uua(d,f[b+76>>2]|0,f[b+80>>2]|0);uua(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function kL(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;tPa(f[c>>2]|0,117248)|0;a=b+8|0;if(Iab(f[a>>2]|0)|0){zma(f[c>>2]|0,32)|0;s4(f[a>>2]|0,f[c>>2]|0)|0}a=b+4|0;if(o2a(f[a>>2]|0)|0){c=yCa(f[c>>2]|0,75657)|0;zma(yCa(c,Aha(f[a>>2]|0)|0)|0,41)|0}return}function lL(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=(f[a+4>>2]|0)+68|0;f[e>>2]=f[a+12>>2];e=Xl(g,e)|0;g=e+4|0;b=f[g>>2]|0;c=f[a>>2]|0;d=f[e>>2]|0;while(1){if((d|0)==(b|0))break;if((f[d>>2]|0)==(c|0)){h=4;break}else d=d+4|0}if((h|0)==4)Ca(106443,106510,83,106544);if((b|0)==(f[e+8>>2]|0))IL(e,a);else{f[b>>2]=c;f[g>>2]=b+4}u=i;return}function mL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)Ip(a,b)}}else Ip(a,b);return}function nL(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}g=b[c+11>>0]|0;h=g<<24>>24<0;g=h?f[c+4>>2]|0:g&255;e=h7a(d)|0;x=0;wa(129,a|0,(h?f[c>>2]|0:c)|0,g|0,g+e|0);c=x;x=0;if(!(c&1)?(x=0,ja(49,a|0,d|0,e|0)|0,h=x,x=0,!(h&1)):0)return;h=Ia()|0;HTa(a);Ua(h|0)}function oL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2342,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function pL(a){a=a|0;Iea(a+104|0);uSa(a+92|0);uSa(a+80|0);Z5(a+68|0);uSa(a+52|0);NV(a+40|0);xVa(a);return}function qL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,841,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function rL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,1896,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function sL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+16|0;c=f[e>>2]|0;if((a|0)!=(c|0)){if(c|0)oc[f[(f[c>>2]|0)+20>>2]&1023](c)}else oc[f[(f[c>>2]|0)+16>>2]&1023](c);f[e>>2]=0;c=b+16|0;d=f[c>>2]|0;do if(d){if((b|0)!=(d|0)){f[e>>2]=d;f[c>>2]=0;break}b=Bbb(a)|0;f[e>>2]=b;e=f[c>>2]|0;x=0;ua(f[(f[e>>2]|0)+12>>2]|0,e|0,b|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}}else f[e>>2]=0;while(0);return a|0}function tL(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;h=e<<24>>24<0;if(h){g=(f[a+8>>2]&2147483647)+-1|0;e=f[a+4>>2]|0}else{g=10;e=e&255}if((g-e|0)>>>0>=d>>>0){if(d|0){if(h)g=f[a>>2]|0;else g=a;$Ta(g+e|0,c,d)|0;e=e+d|0;if((b[i>>0]|0)<0)f[a+4>>2]=e;else b[i>>0]=e;T0a(g+e|0,0)}}else nD(a,g,e+d-g|0,e,e,0,d,c);return a|0}function uL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,293,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function vL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2341,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function wL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,3101,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function xL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,2190,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function yL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=131960;do if(b){if(b>>>0<=1073741823){d=n8(b<<2)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<2)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<2);return}function zL(a){a=a|0;if(!a)return;else{zL(f[a>>2]|0);zL(f[a+4>>2]|0);iDa(a+16|0);ubb(a);return}}function AL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115821,115839,387,115862);rS(a,529,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}wsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115867,115839,392,115862);else if((b|0)==8){u=h;return}}function BL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+96|0;d=g;e=b+36|0;b=b+4|0;c=pg(a,f[e>>2]|0,(f[b>>2]|0)!=0)|0;if(!c)pVa(f[e>>2]|0);else f[e>>2]=c;if((f[b>>2]|0)==0?(a=_Ya(f[a+40>>2]|0)|0,fA(d,a,f[e>>2]|0),a=lza(d)|0,V7(d),!a):0)pVa(f[e>>2]|0);u=g;return}function CL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;e=i+4|0;g=i;b=f[b>>2]|0;c=o$a(b)|0;if(!c){b=C$a(b)|0;if(b|0?(d=f[b+8>>2]|0,Iab(d)|0):0){f[g>>2]=d;f[h>>2]=f[g>>2];_X(a+36|0,h)}}else{b=f[c+8>>2]|0;if(Iab(b)|0){f[e>>2]=b;f[h>>2]=f[e>>2];_X(a+36|0,h)}}u=i;return}function DL(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;Bs(a+16|0,b);MA(a);cm(a);f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(f[(f[a>>2]|0)+32>>2]|0,a|0,c|0);b=x;x=0;if(!(b&1)?(x=0,ua(3137,a|0,c|0),b=x,x=0,!(b&1)):0){uSa(c);u=d;return}d=Ia()|0;uSa(c);Ua(d|0)}function EL(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);I_a(b+16|0);ubb(b);return}function FL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g+8|0;d=g+4|0;e=g;if((f[b+8>>2]|0)==(f[a+24>>2]|0)?(b=ORa((LRa(f[b+12>>2]|0)|0)+8|0)|0,(b|0)==(f[a+28>>2]|0)):0){b=f[a+20>>2]|0;Bbb(b)|0;U0a(d,b);f[e>>2]=f[a+32>>2];f[c>>2]=f[e>>2];e=Qma(d,c,0,0)|0;BVa(f[a>>2]|0,e)|0}u=g;return}function GL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[33159]|0;do if(c){e=f[b>>2]|0;while(1)if(e>>>0<(f[c+16>>2]|0)>>>0){b=f[c>>2]|0;if(!b){b=5;break}else c=b}else{d=c+4|0;b=f[d>>2]|0;if(!b){b=7;break}else c=b}if((b|0)==5){f[a>>2]=c;break}else if((b|0)==7){f[a>>2]=c;c=d;break}}else{f[a>>2]=132636;c=132636}while(0);return c|0}function HL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;QMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;qka(d,f[a>>2]|0);a=a+4|0}Mva(d,f[b+76>>2]|0,f[b+80>>2]|0);Mva(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function IL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;gO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];f[g>>2]=e+4;uP(a,c);Cja(c);u=h;return}}function JL(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;b=g;c=f[32963]|0;d=(f[32964]|0)-c>>2;e=d+1|0;if(e>>>0>1073741823)_da();else{h=(f[32965]|0)-c|0;c=h>>1;YN(b,h>>2>>>0<536870911?(c>>>0>>0?e:c):1073741823,d);e=b+8|0;d=f[e>>2]|0;f[d>>2]=f[a>>2];f[e>>2]=d+4;dR(b);Cja(b);u=g;return}}function KL(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+4|0;tPa(f[c>>2]|0,93636)|0;a=b+8|0;if(Iab(f[a>>2]|0)|0){d=zma(f[c>>2]|0,32)|0;wfa(d,f[a>>2]|0)|0}a=b+4|0;if(o2a(f[a>>2]|0)|0){d=yCa(f[c>>2]|0,75657)|0;zma(yCa(d,Aha(f[a>>2]|0)|0)|0,41)|0}return}function LL(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k;do if((a|0)==(c|0)){f[d>>2]=4;e=0;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;e=0;a=0;break}i=f[33448]|0;f[33448]=0;fOa()|0;a=s$a(a,h,e)|0;e=I;g=f[33448]|0;if(!g)f[33448]=i;if((f[h>>2]|0)==(c|0)){if((g|0)==34){a=-1;e=-1;j=8}}else{a=0;e=0;j=8}if((j|0)==8)f[d>>2]=4}while(0);I=e;u=k;return a|0}function ML(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=107374182){d=n8(b*40|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*40|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*40|0);return}function NL(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=a+8|0;i=e+3|0;d=b[i>>0]|0;g=d<<24>>24<0;if(g){h=f[a+4>>2]|0;d=(f[e>>2]&2147483647)+-1|0}else{h=d&255;d=1}if((h|0)==(d|0)){dB(a,d,1,d,d);if((b[i>>0]|0)<0)d=8;else d=7}else if(g)d=8;else d=7;if((d|0)==7)b[i>>0]=h+1;else if((d|0)==8){i=f[a>>2]|0;f[a+4>>2]=h+1;a=i}i=a+(h<<2)|0;E1a(i,c);E1a(i+4|0,0);return}function OL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;b=S$a(b)|0;if(!b)hb();if((f[b+12>>2]|0)!=(c|0))if((f[b+16>>2]|0)==(c|0))e=1;else hb();else e=0;b=f[d+(e<<2)>>2]|0;f[g>>2]=b;fg(a,b,0)|0;e=a+60|0;d=f[e>>2]|0;if((d|0)==(f[a+64>>2]|0))IL(a+56|0,g);else{f[d>>2]=b;f[e>>2]=(f[e>>2]|0)+4}u=h;return}function PL(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[33199]|0;d=a+4|0;b=f[33200]|0;while(1){if((b|0)==(c|0))break;e=b+-20|0;zM((f[d>>2]|0)+-20|0,e);f[d>>2]=(f[d>>2]|0)+-20;b=e}e=f[33199]|0;f[33199]=f[d>>2];f[d>>2]=e;e=a+8|0;c=f[33200]|0;f[33200]=f[e>>2];f[e>>2]=c;e=a+12|0;c=f[33201]|0;f[33201]=f[e>>2];f[e>>2]=c;f[a>>2]=f[d>>2];return}function QL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;tNa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Lka(d,f[a>>2]|0);a=a+4|0}rwa(d,f[b+76>>2]|0,f[b+80>>2]|0);rwa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function RL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;uNa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Mka(d,f[a>>2]|0);a=a+4|0}swa(d,f[b+76>>2]|0,f[b+80>>2]|0);swa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function SL(a){a=a|0;rfa(a+104|0);uSa(a+92|0);uSa(a+80|0);u6(a+68|0);uSa(a+52|0);DW(a+40|0);xVa(a);return}function TL(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;h=n8(28)|0;f[a>>2]=h;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;f[h+8>>2]=f[e>>2];x=0;ua(2491,h+12|0,g|0);g=x;x=0;if(g&1){g=Ia()|0;f[a>>2]=0;ubb(h);Ua(g|0)}else{b[c>>0]=1;f[h+4>>2]=d;f[h>>2]=0;return}}function UL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;SNa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;qla(d,f[a>>2]|0);a=a+4|0}bxa(d,f[b+76>>2]|0,f[b+80>>2]|0);bxa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function VL(a,b){a=a|0;b=b|0;var c=0;c=g0a(a,0)|0;do if(!(FBa(f[c>>2]|0,133180)|0)){c=g0a(a,0)|0;if(FBa(f[c>>2]|0,133176)|0){a=g0a(a,3)|0;a=Bbb(f[a>>2]|0)|0;c=g0a(b,1)|0;Aga(a,PNa(Bbb(f[c>>2]|0)|0)|0)|0;break}else hb()}else{a=g0a(a,1)|0;a=Bbb(f[a>>2]|0)|0;c=g0a(b,1)|0;Aga(a,PNa(Bbb(f[c>>2]|0)|0)|0)|0}while(0);return}function WL(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e|0;h=g+1|0;if((h|0)<0)_da();else{j=(f[a+8>>2]|0)-e|0;e=j<<1;nda(d,j>>>0<1073741823?(e>>>0>>0?h:e):2147483647,g,a+8|0);h=d+8|0;g=f[h>>2]|0;b[g>>0]=b[c>>0]|0;f[h>>2]=g+1;XP(a,d);koa(d);u=i;return}}function XL(a){a=a|0;var b=0,c=0;f[a>>2]=44420;NQa(a+128|0);Bea(a+108|0);Bea(a+88|0);Uma(a+68|0);NQa(a+48|0);c=a+44|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)ubb(b);LTa(a);return}function YL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-16|0;OLa((f[g>>2]|0)+-16|0,h);f[g>>2]=(f[g>>2]|0)+-16;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function ZL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;_Na(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;$9(d,f[a>>2]|0);a=a+4|0}yxa(d,f[b+76>>2]|0,f[b+80>>2]|0);yxa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function _L(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=c+4|0;i=c+8|0;while(1){d=a&127;b[g>>0]=d;a=a>>>7;if(!(Iab(a)|0))break;d=d|-128;b[g>>0]=d;e=f[h>>2]|0;if((e|0)==(f[i>>2]|0))WL(c,g);else{b[e>>0]=d;f[h>>2]=(f[h>>2]|0)+1}}a=f[h>>2]|0;if((a|0)==(f[i>>2]|0))WL(c,g);else{b[a>>0]=d;f[h>>2]=(f[h>>2]|0)+1}u=j;return}function $L(a,c){a=a|0;c=c|0;var d=0;Hta(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);d=f[a+36>>2]|0;Bbb(d)|0;Usa(a,(b[d+114>>0]|0)==0,c);Eea(a,f[c+4>>2]|0,c,83510);Eea(a,f[(f[c+12>>2]|0)+4>>2]|0,c,83540);Eea(a,f[(f[c+16>>2]|0)+4>>2]|0,c,83576);return}function aM(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;x$(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function bM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;d=Cp(f[a+4>>2]|0)|0;f[h>>2]=d;d=f[a+20>>2]|0;d=ec[f[(f[d>>2]|0)+8>>2]&127](d,b,1)|0;f[g>>2]=f[h>>2];d=sn(Ywa(b,g,d)|0,a,b,c)|0;a=f[a+8>>2]|0;if(a)d=Dpa(b,d,ec[f[(f[a>>2]|0)+8>>2]&127](a,b,c)|0)|0;u=e;return d|0}function cM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-24|0;yY((f[g>>2]|0)+-24|0,h);f[g>>2]=(f[g>>2]|0)+-24;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function dM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;if(c|0){h=a+11|0;d=b[h>>0]|0;if(d<<24>>24<0){e=(f[a+8>>2]&2147483647)+-1|0;g=f[a+4>>2]|0}else{e=10;g=d&255}if((e-g|0)>>>0>>0){uM(a,e,g+c-e|0,g,g);d=b[h>>0]|0}if(d<<24>>24<0)e=f[a>>2]|0;else e=a;bMa(e+g|0,c,0)|0;d=g+c|0;if((b[h>>0]|0)<0)f[a+4>>2]=d;else b[h>>0]=d;T0a(e+d|0,0)}return a|0}function eM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;e=h;if(!($1a(a,b)|0))if((b|0)!=0?(g=ax(b,39368)|0,(g|0)!=0):0){b=e+4|0;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=g;f[e+8>>2]=a;f[e+12>>2]=-1;f[e+48>>2]=1;rc[f[(f[g>>2]|0)+28>>2]&255](g,e,f[c>>2]|0,1);if((f[e+24>>2]|0)==1){f[c>>2]=f[e+16>>2];b=1}else b=0}else b=0;else b=1;u=h;return b|0}function fM(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;oOa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;ega(d,f[a>>2]|0);a=a+4|0}Wxa(d,f[b+76>>2]|0,f[b+80>>2]|0);Wxa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function gM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;c=f[32988]|0;d=a+4|0;b=f[32989]|0;while(1){if((b|0)==(c|0))break;g=(f[d>>2]|0)+-4|0;e=b+-4|0;h=f[e>>2]|0;f[e>>2]=0;f[g>>2]=h;f[d>>2]=(f[d>>2]|0)+-4;b=e}h=f[32988]|0;f[32988]=f[d>>2];f[d>>2]=h;h=a+8|0;g=f[32989]|0;f[32989]=f[h>>2];f[h>>2]=g;h=a+12|0;g=f[32990]|0;f[32990]=f[h>>2];f[h>>2]=g;f[a>>2]=f[d>>2];return}function hM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=a+11|0;d=b[h>>0]|0;e=d<<24>>24<0;if(e){g=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{g=d&255;d=10}if((g|0)==(d|0)){uM(a,d,1,d,d);if((b[h>>0]|0)<0)d=8;else d=7}else if(e)d=8;else d=7;if((d|0)==7)b[h>>0]=g+1;else if((d|0)==8){h=f[a>>2]|0;f[a+4>>2]=g+1;a=h}h=a+g|0;T0a(h,c);T0a(h+1|0,0);return}function iM(a){a=a|0;Pga(a+104|0);uSa(a+92|0);uSa(a+80|0);C7(a+68|0);uSa(a+52|0);DW(a+40|0);xVa(a);return}function jM(a,c,d){a=a|0;c=c|0;d=d|0;a:do if((a|0)!=(c|0))switch(b[a>>0]|0){case 68:case 67:{a=Yk(a,c,d)|0;break a}case 85:{a=Se(a,c,d)|0;break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{a=hk(a,c,d)|0;break a}default:return Hc(a,c,d)|0}while(0);return a|0}function kM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;jX(a);f[a+116>>2]=b;f[a+120>>2]=c;tWa(a,d);x=0;ua(469,a|0,d|0);c=x;x=0;if(!(c&1)?(x=0,ua(470,a|0,d|0),d=x,x=0,!(d&1)):0)return;d=Ia()|0;pL(a);Ua(d|0)}function lM(a){a=a|0;nha(a+104|0);uSa(a+92|0);uSa(a+80|0);O7(a+68|0);uSa(a+52|0);DW(a+40|0);xVa(a);return}function mM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-24|0;jW((f[g>>2]|0)+-24|0,h);f[g>>2]=(f[g>>2]|0)+-24;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function nM(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=f[a+64>>2]|0;i=f[h+124>>2]|0;j=a+68|0;h=f[h+120>>2]|0;while(1){if((h|0)==(i|0))break;k=w2(a)|0;if((b[h+11>>0]|0)<0)c=f[h>>2]|0;else c=h;G$(a,c);d=h+12|0;e=h+16|0;c=0;while(1){g=f[d>>2]|0;if(c>>>0>=((f[e>>2]|0)-g|0)>>>0)break;aYa(f[j>>2]|0,b[g+c>>0]|0)|0;c=c+1|0}VA(a,k);h=h+24|0}return}function oM(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;t2(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function pM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+16|0;g=e;d=e+4|0;f[g>>2]=b;b=Vz(a+56|0,g)|0;if(b){h=b+12|0;g=f[a+36>>2]|0;Bbb(g)|0;U0a(d,g);g=oja(d,h)|0;f[b+16>>2]=f[h>>2];aaa(g+12|0,c);rt(g);c=g}u=e;return c|0}function qM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=Ea(20)|0;x=0;ua(88,c|0,b|0);b=x;x=0;if(!(b&1)){x=0;wa(138,d|0,c|0,0,f[a+36>>2]|0);b=x;x=0;if(b&1)b=1;else{x=0;va(98,d|0,32200,457);x=0;b=0}a=Ia()|0;HTa(c);if(b)e=6}else{a=Ia()|0;e=6}if((e|0)==6)La(d|0);Ua(a|0)}function rM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=h+4|0;cLa(g,(Bbb(f[a+32>>2]|0)|0)<<16,0);if((f[b>>2]|0)==1){d=ORa(b)|0;b=d;d=((d|0)<0)<<31>>31}else{b=jJa(b)|0;d=I}io(a,b,d,(Bbb(f[g>>2]|0)|0)-c|0,0,58447);cLa(e,b,d);u=h;return f[e>>2]|0}function sM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=b+8|0;h=f[g>>2]|0;c=a+32|0;kva(a,h>>>0<(fQa(Bbb(f[c>>2]|0)|0)|0)>>>0,b);h=b+12|0;d=f[(f[h>>2]|0)+4>>2]|0;if((d|0)!=5){e=f[b+4>>2]|0;if(e|0)Hfa(a,d,e,b);e=Bbb(f[c>>2]|0)|0;g=n9(e,f[g>>2]|0)|0;Zla(a,g,f[(f[h>>2]|0)+4>>2]|0,b)}return}function tM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=c-e>>2;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){b=e+(b<<2)|0;while(1){if((c|0)==(b|0))break;c=c+-4|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){uSa(a);ubb(a)}}f[g>>2]=b}}else hA(a,b-d|0);return}function uM(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;if((-17-c|0)>>>0>>0)Mda();if((b[a+11>>0]|0)<0)j=f[a>>2]|0;else j=a;if(c>>>0<2147483623){h=d+c|0;i=c<<1;h=h>>>0>>0?i:h;h=h>>>0<11?11:h+16&-16}else h=-17;i=n8(h)|0;if(g|0)$Ta(i,j,g)|0;d=e-g|0;if(d|0)$Ta(i+g|0,j+g|0,d)|0;if((c|0)!=10)ubb(j);f[a>>2]=i;f[a+8>>2]=h|-2147483648;return}function vM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=f[a+80>>2]|0;if(c|0){b=Bbb(f[a+16>>2]|0)|0;f[g>>2]=b;d=c+28|0;e=f[d>>2]|0;if(e>>>0<(f[c+32>>2]|0)>>>0){jXa(e,b);f[d>>2]=(f[d>>2]|0)+16}else{TF(c+24|0,g);b=f[g>>2]|0}g=dm(a+184|0,g)|0;f[g>>2]=b}u=h;return}function wM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;c=O4(a,b,c)|0;az(b);Dh(d,f[b>>2]|0);if((f[d+12>>2]|0)==0?$1a(f[d>>2]|0,f[33285]|0)|0:0){f[b>>2]=(f[b>>2]|0)+(f[d+8>>2]|0);d=h3(c,MV(a,b)|0)|0;u=e;return d|0}Ca(66131,65740,487,66173);return 0}function xM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;f[d>>2]=b;b=e+4|0;g=g0a(a,0)|0;if(!(FBa(f[g>>2]|0,133168)|0))Ca(66047,75338,1501,66061);g=Bbb($ta(1)|0)|0;f4a(b,Nqa(g,woa(d)|0)|0);g=UTa(c)|0;b=f[b>>2]|0;if(!g)Nqa(Bbb(b)|0,c)|0;g=g0a(a,1)|0;Nqa(Bbb(f[g>>2]|0)|0,b)|0;u=e;return}function yM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=b+16|0;e=a+20|0;c=f[b+12>>2]|0;while(1){if((c|0)==(d|0))break;b=E_a(f[c+16>>2]|0)|0;if(b|0){b=b+8|0;g=BUa(a,n9(f[e>>2]|0,f[b>>2]|0)|0)|0;f[b>>2]=g}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}return}function zM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=f[b>>2]|0;f[b>>2]=0;f[a>>2]=e;g=b+4|0;d=a+4|0;f[d>>2]=f[g>>2];f[g>>2]=0;g=a+8|0;h=b+8|0;c=f[h>>2]|0;f[g>>2]=c;i=b+12|0;j=f[i>>2]|0;f[a+12>>2]=j;f[a+16>>2]=f[b+16>>2];if(j|0){a=f[c+4>>2]|0;b=f[d>>2]|0;c=b+-1|0;if(c&b){if(a>>>0>=b>>>0)a=(a>>>0)%(b>>>0)|0}else a=c&a;f[e+(a<<2)>>2]=g;f[h>>2]=0;f[i>>2]=0}return}function AM(a,c){a=a|0;c=c|0;var d=0,e=0;f[a>>2]=c;f[a+4>>2]=0;d=a+20|0;b[d>>0]=0;b[a+21>>0]=0;f[a+24>>2]=0;f[a+28>>2]=0;e=a+44|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+60>>2]=1065353216;jOa(a,0);do if(!(b[d>>0]|0)){x=0;c=fa(64)|0;a=x;x=0;if(a&1){d=Ia()|0;NQa(e);Ua(d|0)}else{b[d>>0]=c&1;break}}while(0);return}function BM(a,c){a=a|0;c=c|0;var d=0,e=0;e=n8(72)|0;f[a>>2]=e;f[a+4>>2]=132704;d=a+8|0;b[d>>0]=0;a=e+16|0;c=f[c>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}Yxa(e+32|0);b[d>>0]=1;return}function CM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g+4|0;c=g;d=a+36|0;f4a(c,f[d>>2]|0);c=d_a(f[c>>2]|0)|0;c=wla(f[d>>2]|0,c)|0;f[b>>2]=c;d=a+4|0;e=f[d>>2]|0;if(e>>>0<(f[a+8>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}else IL(a,b);u=g;return}function DM(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+44|0;e=f[d>>2]|0;c=c+24|0;if(!(rB(e,c)|0))Ca(110228,109872,113,110002);else{e=Wl(e,c)|0;f[e>>2]=(f[e>>2]|0)+1;d=f[d>>2]|0;e=f[a+32>>2]|0;Bbb(e)|0;e=(Wl(d,e)|0)+8|0;b[e>>0]=0;return}}function EM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;M0a(a);c=f[c+8>>2]|0;if(!((c|0)!=0?(Mw(d,b,c),f[a>>2]=f[d>>2],f[a+4>>2]=f[d+4>>2],f[a+8>>2]=f[d+8>>2],f[a+12>>2]=f[d+12>>2],f[a+16>>2]=f[d+16>>2],D0a(a)|0):0))f[a+16>>2]=f[33118];u=e;return}function FM(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+64|0;c=f[d>>2]|0;qD(a);dH(c,f[d>>2]|0);c=(qSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+84|0;dH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function GM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if((c-a|0)>1){if((b[a>>0]|0)==83?(b[a+1>>0]|0)==116:0){e=a+2|0;if((e|0)==(c|0)){g=0;e=c}else{g=0;e=(b[e>>0]|0)==76?a+3|0:e}}else{g=1;e=a}c=jM(e,c,d)|0;e=(c|0)==(e|0);if(!(g|e)){e=f[d+4>>2]|0;if((f[d>>2]|0)!=(e|0)){uoa(e+-24|0,0,123570)|0;a=c}}else a=e?a:c}return a|0}function HM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;Kra(a);f[a>>2]=47308;f[a+32>>2]=c;gVa(e,f[a+4>>2]|0);x=0;c=ia(73,f[e>>2]|0,135192)|0;h=x;x=0;if(h&1){h=Ia()|0;JCa(e);QWa(a);Ua(h|0)}else{JCa(e);f[a+36>>2]=c;f[a+40>>2]=d;h=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=h;u=g;return}}function IM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;Sra(a);f[a>>2]=47372;f[a+32>>2]=c;gVa(e,f[a+4>>2]|0);x=0;c=ia(73,f[e>>2]|0,135184)|0;h=x;x=0;if(h&1){h=Ia()|0;JCa(e);YWa(a);Ua(h|0)}else{JCa(e);f[a+36>>2]=c;f[a+40>>2]=d;h=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=h;u=g;return}}function JM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;g=h;if(b[(f[a+44>>2]|0)+1>>0]|0?(e=Bbb(f[a+36>>2]|0)|0,f[g>>2]=f[c+8>>2],f[d>>2]=f[g>>2],e=bna(e,d)|0,ipa(a,(e|0)!=0,c,84421)|0):0){ipa(a,(b[e+12>>0]|0)!=0,c,84498)|0;qfa(a,f[(f[c+12>>2]|0)+4>>2]|0,f[e+4>>2]|0,c)}u=h;return}function KM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=214748364){d=n8(b*20|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*20|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*20|0);return}function LM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g;Gt(e,dca(a,b,d)|0,c);x=0;b=ia(55,e|0,f[a>>2]|0)|0;d=x;x=0;if(d&1){g=Ia()|0;HTa(e);Ua(g|0)}else{HTa(e);u=g;return b|0}return 0}function MM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+64|0;c=h+48|0;d=h+4|0;e=h+8|0;g=h;f[d>>2]=a;a=f[b>>2]|0;do if(Iab(a)|0){f[g>>2]=a;f[c>>2]=f[g>>2];zGa(e,c);x=0;ua(258,e|0,d|0);g=x;x=0;if(g&1){h=Ia()|0;I_a(e);Ua(h|0)}else{a=(f[e+32>>2]|0)!=0;I_a(e);break}}else a=0;while(0);u=h;return a|0}function NM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=_2(a,f[b+12>>2]|0)|0;d=_2(a,f[b+16>>2]|0)|0;c=_2(a,f[b+20>>2]|0)|0;return B9(f[a+32>>2]|0,e,d,c,f[b+24>>2]|0,f[b+8>>2]|0)|0}function OM(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b+12>>2]|0){case 0:{f[c>>2]=0;f[c+4>>2]=f[b>>2];b=(LP(a+40|0,c)|0)==0;break}case 3:{f[c>>2]=1;f[c+4>>2]=f[b>>2];b=(LP(a+40|0,c)|0)==0;break}default:b=0}u=d;return b|0}function PM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+64|0;c=h+48|0;d=h+4|0;e=h+8|0;g=h;f[d>>2]=a;a=f[b>>2]|0;do if(Iab(a)|0){f[g>>2]=a;f[c>>2]=f[g>>2];zGa(e,c);x=0;ua(258,e|0,d|0);g=x;x=0;if(g&1){h=Ia()|0;I_a(e);Ua(h|0)}else{a=f[e+32>>2]|0;I_a(e);break}}else a=0;while(0);u=h;return a|0}function QM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if((c|0)!=(b|0)){g=a+4|0;d=f[g>>2]|0;e=b;a=c;while(1){if((a|0)==(d|0))break;c=f[a>>2]|0;f[a>>2]=0;b=f[e>>2]|0;f[e>>2]=c;if(b|0){M_a(b);ubb(b)}e=e+4|0;a=a+4|0}a=f[g>>2]|0;while(1){if((a|0)==(e|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0){M_a(b);ubb(b)}}f[g>>2]=e}return}function RM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=357913941){d=n8(b*12|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*12|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*12|0);return}function SM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=d-c|0;if(g>>>0>4294967279)Mda();if(g>>>0<11)b[a+11>>0]=g;else{h=g+16&-16;e=P1a(h)|0;f[a>>2]=e;f[a+8>>2]=h|-2147483648;f[a+4>>2]=g;a=e}e=a;while(1){if((c|0)==(d|0))break;T0a(e,b[c>>0]|0);c=c+1|0;e=e+1|0}T0a(a+g|0,0);return}function TM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;EPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=wk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?ly(a,c)|0:0)?wk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function UM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;EPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=xk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?sy(a,c)|0:0)?xk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function VM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;EPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=yk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?ty(a,c)|0:0)?yk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function WM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;EPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=zk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?uy(a,c)|0:0)?zk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function XM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;EPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=Ak(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?my(a,c)|0:0)?Ak(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function YM(a,b){a=a|0;b=b|0;var c=0,d=0;c=jE(a,b)|0;if(c|0){d=f[c+12>>2]|0;switch(f[d+12>>2]|0){case 0:{Ca(76732,76746,43,76773);break}case 1:break;default:P8(d,b)}EP(a,c)}return}function ZM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-16|0;e7((f[g>>2]|0)+-16|0,h);f[g>>2]=(f[g>>2]|0)+-16;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function _M(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=178956970){d=n8(b*24|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*24|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*24|0);return}function $M(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=132792;do if(b){if(b>>>0<=107374182){d=n8(b*40|0)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*40|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*40|0);return}function aN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=c+12|0;d=a+16|0;c=c+8|0;do{Mu(a,b,f[e>>2]|0);if(!(D0a(a)|0))break}while($1a(f[d>>2]|0,f[c>>2]|0)|0);return}function bN(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;k=h&1;j=i&1;f[a>>2]=c;f[a+4>>2]=d;h=a+8|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];f[h+16>>2]=f[e+16>>2];RZ(a+32|0,g);h=a+56|0;i=a+177|0;c=h;d=c+120|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));b[h+120>>0]=0;b[i>>0]=k;b[a+178>>0]=j;return}function cN(a){a=a|0;var b=0,c=0,d=0;a=Y_a(a)|0;if((((((((a|0)!=0?(f[a+8>>2]|0)==12:0)?(d=g$a(f[a+16>>2]|0)|0,(d|0)!=0):0)?(ORa(d+8|0)|0)!=0:0)?(b=Y_a(f[a+12>>2]|0)|0,(b|0)!=0):0)?(f[b+8>>2]|0)==10:0)?(c=g$a(f[b+16>>2]|0)|0,(c|0)!=0):0)?(d=Q4(d)|0,d>>>0<=(Q4(c)|0)>>>0):0)a=f[b+12>>2]|0;else a=0;return a|0}function dN(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;a:do if((d|0)==(f[b>>2]|0))switch(d|0){case 0:{c=1;break a}case 1:{c=(f[a+8>>2]|0)==(f[b+8>>2]|0);break a}case 3:{c=+ONa(a)==+ONa(b);break a}case 2:{d=a+8|0;c=b+8|0;c=(f[d>>2]|0)==(f[c>>2]|0)?(f[d+4>>2]|0)==(f[c+4>>2]|0):0;break a}case 4:{c=+NNa(a)==+NNa(b);break a}default:hb()}else c=0;while(0);return c|0}function eN(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+80|0;c=f[d>>2]|0;RC(a+16|0);BH(c,f[d>>2]|0);c=(qSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+100|0;BH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function fN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;g=c+4|0;h=c;f[h>>2]=f[b+24>>2];e=_2(a,f[b+28>>2]|0)|0;d=_2(a,f[b+32>>2]|0)|0;f[g>>2]=f[h>>2];b=s8(a+32|0,b+8|0,g,e,d)|0;u=c;return b|0}function gN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;if(b>>>0<2)c=0;else{e=f[a>>2]|0;switch(e|0){case 1:{f4a(d,ORa(a)|0);c=EY(d)|0;break}case 2:{GXa(d,jJa(a)|0,I);c=bX(d)|0;break}case 4:case 3:{c=Dxa(e)|0;break}default:hb()}c=((b<<1)+2+c|0)>>>0<(X(c,b)|0)>>>0}u=g;return c|0}function hN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;f[c>>2]=(f[c>>2]|0)+1;c=f[32836]|0;do if((f[32837]|0)-c>>2>>>0<=b>>>0){x=0;ta(516,b+1|0);c=x;x=0;if(!(c&1)){c=f[32836]|0;break}c=Ia()|0;if(a|0)DBa(a);Ua(c|0)}while(0);c=f[c+(b<<2)>>2]|0;if(c|0?(e=c+4|0,d=f[e>>2]|0,f[e>>2]=d+-1,(d|0)==0):0)oc[f[(f[c>>2]|0)+8>>2]&1023](c);f[(f[32836]|0)+(b<<2)>>2]=a;return}function iN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;if(!(i4a(f[a>>2]|0)|0)){a=g$a(a)|0;if(((a|0)!=0?(g=Eia(a+8|0)|0,h=I,!(h>>>0>0|(h|0)==0&g>>>0>4294967295)):0)?(e=Bbb(b)|0,b=wOa(g|0,h|0,e|0,0)|0,a=I,!(a>>>0>0|(a|0)==0&b>>>0>4294967295)):0){cLa(d,g,h);a=e+(Bbb(f[d>>2]|0)|0)|0;a=a>>>0<=(Bbb(c)|0)>>>0}else a=0}else a=1;u=i;return a|0}function jN(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(32)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];e=g+12|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[g+28>>2]=1065353216;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function kN(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h;f[g>>2]=0;d=(b[c+11>>0]|0)<0?f[c>>2]|0:c;j=f[33448]|0;f[33448]=0;e=qZa(d,g,0)|0;c=I;i=f[33448]|0;f[33448]=j;if((i|0)==34)VV(a);if((f[g>>2]|0)==(d|0))WV(a);I=c;u=h;return e|0}function lN(a){a=a|0;if(!a)return;else{lN(f[a>>2]|0);lN(f[a+4>>2]|0);KNa(a+16|0);ubb(a);return}}function mN(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;d=k;e=a+36|0;g=a+40|0;h=c+8|0;i=c;b=a+32|0;a:while(1){a=f[e>>2]|0;a=hc[f[(f[a>>2]|0)+20>>2]&31](a,f[g>>2]|0,c,h,d)|0;l=(f[d>>2]|0)-i|0;if((GHa(c,1,l,f[b>>2]|0)|0)!=(l|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{j=4;break a}}}if((j|0)==4)a=((V0(f[b>>2]|0)|0)!=0)<<31>>31;u=k;return a|0}function nN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if(bc[f[(f[b>>2]|0)+28>>2]&511](b)|0){if(c|0){c=c+40|0;a=f[c>>2]|0;f[c>>2]=0;if(!a)break;uSa(a);ubb(a);break}a=f[a>>2]|0;b=f[a+40>>2]|0;a=f[a+36>>2]|0;while(1){if((a|0)==(b|0))break a;d=(f[a>>2]|0)+40|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0){uSa(c);ubb(c)}a=a+4|0}}while(0);return}function oN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=a+12|0;j=a+16|0;h=0;while(1){if((h|0)>=(d|0))break;e=f[i>>2]|0;g=f[j>>2]|0;if(e>>>0>>0){g=g-e|0;k=d-h|0;g=(k|0)<(g|0)?k:g;$Ta(c,e,g)|0;f[i>>2]=(f[i>>2]|0)+g;c=c+g|0;e=g}else{e=bc[f[(f[a>>2]|0)+40>>2]&511](a)|0;if((e|0)==-1)break;e=X6a(e)|0;b[c>>0]=e;c=c+1|0;e=1}h=e+h|0}return h|0}function pN(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b>>2]|0){case 1:{m$a(a,0-(f[b+8>>2]|0)|0);break}case 2:{c=b+8|0;SSa(a,NRa(0,0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}case 3:{m$a(c,f[b+8>>2]^-2147483648);LHa(a,c);break}case 4:{b=b+8|0;SSa(c,f[b>>2]|0,f[b+4>>2]^-2147483648);b=c+8|0;pGa(a,f[c>>2]|0,f[b>>2]|0,f[b+4>>2]|0);break}default:hb()}u=d;return}function qN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=d+74|0;g=b[e>>0]|0;b[e>>0]=g+255|g;e=d+4|0;g=f[e>>2]|0;h=(f[d+8>>2]|0)-g|0;if((h|0)>0){h=h>>>0>>0?h:c;Iu(a|0,g|0,h|0)|0;f[e>>2]=(f[e>>2]|0)+h;e=c-h|0;a=a+h|0}else e=c;a:do if(e){h=d+32|0;while(1){if(JX(d)|0)break;g=ec[f[h>>2]&127](d,a,e)|0;if((g+1|0)>>>0<2)break;e=e-g|0;if(!e)break a;else a=a+g|0}c=c-e|0}while(0);return c|0}function rN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if((c|0)!=(b|0)){g=a+4|0;d=f[g>>2]|0;e=b;a=c;while(1){if((a|0)==(d|0))break;c=f[a>>2]|0;f[a>>2]=0;b=f[e>>2]|0;f[e>>2]=c;if(b|0){LX(b);ubb(b)}e=e+4|0;a=a+4|0}a=f[g>>2]|0;while(1){if((a|0)==(e|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0){LX(b);ubb(b)}}f[g>>2]=e}return}function sN(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;do if((Vp(a)|0)!=(b|0)){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,99223,h7a(99223)|0);x=0;ua(1869,a|0,c|0);b=x;x=0;if(b&1){d=Ia()|0;HTa(c);Ua(d|0)}else{HTa(c);break}}while(0);u=d;return}function tN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=b;c=f[f[a>>2]>>2]|0;e=b;do if((c|0)!=(b|0)?!(GZ(b,c)|0):0){c=f[a+4>>2]|0;a=c+4|0;b=f[a>>2]|0;if((b|0)==(f[c+8>>2]|0)){IL(c,d);a=1;break}else{f[b>>2]=e;f[a>>2]=(f[a>>2]|0)+4;a=1;break}}else a=0;while(0);u=g;return a|0}function uN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;g=c;e=d-g|0;if(e>>>0>4294967279)Mda();if(e>>>0<11)b[a+11>>0]=e;else{i=e+16&-16;h=n8(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=e;a=h}h=d-g|0;g=a;e=c;while(1){if((e|0)==(d|0))break;T0a(g,b[e>>0]|0);g=g+1|0;e=e+1|0}T0a(a+h|0,0);return}function vN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;SSa(e,0,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];CAa(e,-9223372036854775808.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];CAa(e,9223372036854775808.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function wN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;SSa(e,0,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];kqa(e,-9223372036854775808.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];kqa(e,9223372036854775808.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function xN(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+80|0;c=f[d>>2]|0;cD(a+16|0);BH(c,f[d>>2]|0);c=(qSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+100|0;BH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function yN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(((e|0)/-20|0)*20|0)|0;f[g>>2]=c;if((e|0)>0){Iu(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function zN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=a+24|0;j=a+28|0;e=0;while(1){if((e|0)>=(d|0))break;g=f[i>>2]|0;h=f[j>>2]|0;if(g>>>0>>0){h=h-g|0;k=d-e|0;h=(k|0)<(h|0)?k:h;$Ta(g,c,h)|0;f[i>>2]=(f[i>>2]|0)+h;c=c+h|0;e=h+e|0}else{h=f[(f[a>>2]|0)+52>>2]|0;k=X6a(b[c>>0]|0)|0;if((dc[h&255](a,k)|0)==-1)break;c=c+1|0;e=e+1|0}}return e|0}function AN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;c=b+8|0;f[e>>2]=1;f[e+4>>2]=f[c>>2];if(!(LP(a+40|0,e)|0)){f[e>>2]=1;d=a+32|0;b=f[d>>2]|0;if(b>>>0<(f[a+36>>2]|0)>>>0){f[b>>2]=1;f[b+4>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+8}else yF(a+28|0,e,c)}u=g;return}function BN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}e=b[c+11>>0]|0;g=e<<24>>24<0;e=g?f[c+4>>2]|0:e&255;x=0;wa(129,a|0,(g?f[c>>2]|0:c)|0,e|0,e+1|0);c=x;x=0;if(!(c&1)?(x=0,ua(82,a|0,d|0),g=x,x=0,!(g&1)):0)return;g=Ia()|0;HTa(a);Ua(g|0)}function CN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-8|0;UUa((f[g>>2]|0)+-8|0,h);f[g>>2]=(f[g>>2]|0)+-8;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function DN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=536870911){d=n8(b<<3)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<3)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<3);return}function EN(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+80|0;c=f[d>>2]|0;hD(a+16|0);BH(c,f[d>>2]|0);c=(qSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+100|0;BH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function FN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=268435455){d=n8(b<<4)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<4)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<4);return}function GN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+96|0;c=g;b=E_a(b)|0;if((b|0?(d=f[b+8>>2]|0,e=f[a+4>>2]|0,UWa(f[e+24>>2]|0,d)|0):0)?(h=f[(f[f[a+8>>2]>>2]|0)+(d<<2)>>2]|0,(h|0)==(A$a(f[e+48>>2]|0,d)|0)):0){fA(c,f[a+12>>2]|0,f[b+12>>2]|0);h=lza(c)|0;V7(c);u=g;return (h?0:b)|0}u=g;return 0}function HN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(((e|0)/-12|0)*12|0)|0;f[g>>2]=c;if((e|0)>0){Iu(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function IN(a){a=a|0;if(!a)return;else{IN(f[a>>2]|0);IN(f[a+4>>2]|0);FNa(a+16|0);ubb(a);return}}function JN(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+128|0;k=h;l=h+116|0;i=h+104|0;j=h+112|0;f[l>>2]=k+100;yW(a,k,l,d,e,g);d=i;f[d>>2]=0;f[d+4>>2]=0;f[j>>2]=k;d=S0a(b,f[c>>2]|0)|0;a=kRa(f[a>>2]|0)|0;d=ai(b,j,d,i)|0;if(a|0)kRa(a)|0;if((d|0)==-1)vka(120822);else{f[c>>2]=b+(d<<2);u=h;return}}function KN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;e=b+8|0;I$a(g,e);GUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=15;while(1){if(!(lTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=LOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;RYa(g);b=i}u=h;return b|0}function LN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(72)|0;f[a>>2]=e;f[a+4>>2]=c+4;c=a+8|0;b[c>>0]=0;x=0;ua(88,e+16|0,f[d>>2]|0);d=x;x=0;if(d&1){d=Ia()|0;f[a>>2]=0;ubb(e);Ua(d|0)}else{Yxa(e+32|0);b[c>>0]=1;return}}function MN(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;do if((f[a+64>>2]|0)!=0?(g=a+12|0,e=f[g>>2]|0,(f[a+8>>2]|0)>>>0>>0):0){if($1a(c,-1)|0){f[g>>2]=e+-1;c=ZWa(c)|0;break}if(!(f[a+88>>2]&16)){d=X6a(c)|0;a=e+-1|0;if(!(v$a(d,b[a>>0]|0)|0)){c=-1;break}}else{d=X6a(c)|0;a=e+-1|0}f[g>>2]=a;b[a>>0]=d}else c=-1;while(0);return c|0}function NN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if((Zha()|0)>1)zma(xm(yCa(134008,76039)|0,c)|0,10)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=rza(d,c)|0;if(c|0?(x=0,xa(8,b|0,c|0,d|0,e|0,a|0),e=x,x=0,e&1):0){e=Ia()|0;uSa(a);Ua(e|0)}return}function ON(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j+4|0;g=j;i=oRa(f[b>>2]|0)|0;f[e>>2]=i;h=f[a+64>>2]|0;if(h|0){c=h+4|0;d=f[c>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=i;f[c>>2]=(f[c>>2]|0)+4}else IL(h,e);h=f[a+120>>2]|0;f[g>>2]=i;i=e_(h,g)|0;f[i>>2]=b}u=j;return}function PN(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;switch(a|0){case 5:{E1a(b,f[33034]|0);break}case 6:{E1a(b,f[33035]|0);break}case 3:{E1a(b,f[33032]|0);break}case 4:{E1a(b,f[33033]|0);break}case 30:{f[b>>2]=f[33147];break}case 31:{f[b>>2]=f[33146];break}case 28:{f[b>>2]=f[33145];break}case 29:{f[b>>2]=f[33144];break}default:tab(b)}u=c;return f[b>>2]|0}function QN(a,b){a=a|0;b=b|0;var c=0;zma(f[a>>2]|0,40)|0;zma(tPa(f[a>>2]|0,80872)|0,32)|0;c=f[a>>2]|0;zm(c,Bbb(f[b+8>>2]|0)|0)|0;if(T1a(b)|0){c=zma(f[a>>2]|0,32)|0;zm(c,Bbb(f[b+12>>2]|0)|0)|0}yCa(f[a>>2]|0,80935)|0;return}function RN(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(32)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=g+8|0;e=f[e>>2]|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];f[g+24>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function SN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=c;b=b+88|0;c=Vz(b,d)|0;if(!c)Ca(106610,106510,1587,106642);else{aba(a,c+12|0);pQ(b,d);u=e;return}}function TN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;Mw(d,b,c);if(D0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else M0a(a);u=e;return}function UN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-16|0;F4((f[g>>2]|0)+-16|0,h);f[g>>2]=(f[g>>2]|0)+-16;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function VN(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e+8|0;b=e;c=a+12|0;I$a(d,c);GUa(b,c);c=d+4|0;a=f[b>>2]|0;b=f[b+4>>2]|0;while(1){if(!(lTa(f[d>>2]|0,f[c>>2]|0,a,b)|0)){b=6;break}g=LOa(d)|0;if((f[(f[g>>2]|0)+4>>2]|0)==5){b=5;break}RYa(d)}if((b|0)==5)a=1;else if((b|0)==6)a=0;u=e;return a|0}function WN(){var a=0,b=0,c=0,d=0;c=u;u=u+16|0;b=c;a=yb(75705)|0;do if(a){f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;WZ(b,a,h7a(a)|0);x=0;a=ga(281,b|0)|0;d=x;x=0;if(d&1){d=Ia()|0;HTa(b);Ua(d|0)}else{HTa(b);a=(a|0)!=0;break}}else a=0;while(0);u=c;return a|0}function XN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-24|0;BU((f[g>>2]|0)+-24|0,h);f[g>>2]=(f[g>>2]|0)+-24;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function YN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=131860;do if(b){if(b>>>0<=1073741823){d=n8(b<<2)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<2)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<2);return}function ZN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+32|0;d=g;e=g+8|0;NS(a,b);x=0;ua(3136,e|0,b|0);b=x;x=0;if(b&1){g=Ia()|0;uSa(a);Ua(g|0)}else{h=f[a>>2]|0;b=f[a+4>>2]|0;f[d>>2]=c;f[d+4>>2]=e;Sg(h,b,d);uSa(e);u=g;return}}function _N(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;c=b+24|0;f[e>>2]=0;f[e+4>>2]=f[c>>2];if(!(LP(a+40|0,e)|0)){f[e>>2]=0;d=a+32|0;b=f[d>>2]|0;if(b>>>0<(f[a+36>>2]|0)>>>0){f[b>>2]=0;f[b+4>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+8}else yF(a+28|0,e,c)}u=g;return}function $N(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i;a=g$a(a)|0;if((a|0?(e=a+8|0,g=ORa(e)|0,h=Bbb(f[b>>2]|0)|0,(h|g|0)>=0):0)?(d=wOa(h|0,0,g|0,((g|0)<0)<<31>>31|0)|0,h=I,!(h>>>0>0|(h|0)==0&d>>>0>2147483647)):0){m$a(c,d);f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[e+12>>2]=f[c+12>>2];rHa(b,0,0)|0}u=i;return}function aO(a){a=a|0;if(!a)return;else{aO(f[a>>2]|0);aO(f[a+4>>2]|0);ubb(a);return}}function bO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1307;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1307,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function cO(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(1410,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;uSa(a);Ua(d|0)}else{Sha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function dO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=a+76|0;e=AB(d,b)|0;if(!e){e=f[a+36>>2]|0;Bbb(e)|0;U0a(g,e);a=f[a+32>>2]|0;Bbb(a)|0;a=xka(a,c)|0;e=qm(d,b)|0;f[e>>2]=a}else a=f[e+12>>2]|0;u=g;return a|0}function eO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;e=b+12|0;I$a(g,e);GUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=0;while(1){if(!(lTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=LOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;RYa(g);b=i}u=h;return b|0}function fO(a,b){a=a|0;b=b|0;var c=0;c=Bbb(f[b+16>>2]|0)|0;a:do if(c|0?c>>>0<(h[b+8>>0]|0)>>>0:0){c=b+32|0;switch(f[c>>2]|0){case 3:{f[c>>2]=1;c=b+28|0;b=mBa(f[f[a+44>>2]>>2]|0,33,f[c>>2]|0)|0;f[c>>2]=b;break a}case 4:{f[c>>2]=2;c=b+28|0;b=mBa(f[f[a+44>>2]>>2]|0,34,f[c>>2]|0)|0;f[c>>2]=b;break a}default:break a}}while(0);return}function gO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=1073741823){d=n8(b<<2)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121963);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<2)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<2);return}function hO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+64|0;c=f[d>>2]|0;f[b>>2]=c;qD(a);dH(c,f[d>>2]|0);d=a+84|0;e=f[d>>2]|0;if((e|0)==(f[a+88>>2]|0))IL(a+80|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function iO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;m$a(e,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];CAa(e,-2147483648.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];CAa(e,2147483648.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function jO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;m$a(e,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];kqa(e,-2147483649.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];kqa(e,2147483648.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function kO(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;G8(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function lO(a){a=a|0;if(!a)return;else{lO(f[a>>2]|0);lO(f[a+4>>2]|0);ubb(a);return}}function mO(a){a=a|0;if(!a)return;else{mO(f[a>>2]|0);mO(f[a+4>>2]|0);aSa(a+16|0);ubb(a);return}}function nO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=a+12|0;i=a+16|0;g=0;while(1){if((g|0)>=(c|0))break;d=f[h>>2]|0;e=f[i>>2]|0;if(d>>>0>>0){e=e-d>>2;j=c-g|0;e=(j|0)<(e|0)?j:e;sWa(b,d,e);f[h>>2]=(f[h>>2]|0)+(e<<2);b=b+(e<<2)|0;d=e}else{d=bc[f[(f[a>>2]|0)+40>>2]&511](a)|0;if((d|0)==-1)break;d=Bbb(d)|0;f[b>>2]=d;b=b+4|0;d=1}g=d+g|0}return g|0}function oO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1214;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1214,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function pO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1119;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1119,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function qO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;e=b+8|0;I$a(g,e);GUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=4;while(1){if(!(lTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=LOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;RYa(g);b=i}u=h;return b|0}function rO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e+4|0;f[d>>2]=b;b=e;g=g0a(a,0)|0;if(FBa(f[g>>2]|0,132848)|0){g=g0a(a,1)|0;g=Bbb(f[g>>2]|0)|0;a=Bbb($ta(2)|0)|0;f4a(b,Nqa(Nqa(a,woa(d)|0)|0,c)|0);Nqa(g,f[b>>2]|0)|0;u=e;return}else Ca(66822,75338,1650,66841)}function sO(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;f[g>>2]=d;c=kRa(f[a+8>>2]|0)|0;a=YF(h,0)|0;if(c|0)kRa(c)|0;a:do if((a+1|0)>>>0>=2){c=a+-1|0;if(c>>>0>(e-(f[g>>2]|0)|0)>>>0)c=1;else while(1){if(!c){c=0;break a}d=b[h>>0]|0;e=f[g>>2]|0;f[g>>2]=e+1;b[e>>0]=d;h=h+1|0;c=c+-1|0}}else c=2;while(0);u=i;return c|0}function tO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+80|0;c=f[d>>2]|0;f[b>>2]=c;RC(a+16|0);BH(c,f[d>>2]|0);d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))IL(a+96|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function uO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1186;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1186,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function vO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=899;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,899,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function wO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=994;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,994,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function xO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=774;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,774,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function yO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1091;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1091,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function zO(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Rt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)sIa(c+8|0);ubb(c)}u=e;return}function AO(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;d=a+4|0;e=f[d>>2]|0;g=f[a+8>>2]|0;do if((e|0)==(g<<5|0))if((e+1|0)<0)_da();else{h=g<<6;g=e+32&-32;FD(a,e>>>0<1073741823?(h>>>0>>0?g:h):2147483647);h=f[d>>2]|0;break}else h=e;while(0);f[d>>2]=h+1;d=(f[a>>2]|0)+(h>>>5<<2)|0;a=1<<(h&31);if(!(b[c>>0]|0))a=f[d>>2]&~a;else a=f[d>>2]|a;f[d>>2]=a;return}function BO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=a+24|0;i=a+28|0;d=0;while(1){if((d|0)>=(c|0))break;e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>>0){g=g-e>>2;j=c-d|0;g=(j|0)<(g|0)?j:g;sWa(e,b,g);f[h>>2]=(f[h>>2]|0)+(g<<2);b=b+(g<<2)|0;d=g+d|0}else{g=f[(f[a>>2]|0)+52>>2]|0;j=Bbb(f[b>>2]|0)|0;if((dc[g&255](a,j)|0)==-1)break;b=b+4|0;d=d+1|0}}return d|0}function CO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=871;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,871,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function DO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=966;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,966,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function EO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=746;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,746,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function FO(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+8|0;c=h;e=a+8|0;I$a(d,e);GUa(c,e);e=d+4|0;b=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(lTa(f[d>>2]|0,f[e>>2]|0,b,c)|0))break;i=LOa(d)|0;if((f[(f[i>>2]|0)+4>>2]|0)==5){g=4;break}RYa(d)}if((g|0)==4)f[a+4>>2]=5;u=h;return}function GO(a,b){a=a|0;b=b|0;var c=0;if((l_a()|0)>>>0>>0)_da();if(b>>>0<=357913941){c=n8(b*12|0)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b*12|0);return}a=Ea(8)|0;x=0;ua(98,a|0,121963);c=x;x=0;if(c&1){c=Ia()|0;La(a|0);Ua(c|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}function HO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>3)<<3)|0;f[g>>2]=c;if((e|0)>0){Iu(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function IO(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b>>2]|0){case 1:{m$a(a,f[b+8>>2]&2147483647);break}case 2:{c=b+8|0;SSa(a,f[c>>2]|0,f[c+4>>2]&2147483647);break}case 3:{m$a(c,f[b+8>>2]&2147483647);LHa(a,c);break}case 4:{b=b+8|0;SSa(c,f[b>>2]|0,f[b+4>>2]&2147483647);b=c+8|0;pGa(a,f[c>>2]|0,f[b>>2]|0,f[b+4>>2]|0);break}default:hb()}u=d;return}function JO(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;az(c);g=f[c>>2]|0;if((b[g>>0]|0)!=123)Ca(65969,65740,865,65981);f[c>>2]=g+1;Kab(d);Kab(e);a=Sx(a,c,66001,f[d>>2]|0,f[e>>2]|0)|0;d=f[c>>2]|0;if((b[d>>0]|0)==125){f[c>>2]=d+1;u=h;return a|0}else Ca(66004,65740,868,65981);return 0}function KO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;SSa(e,0,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];CAa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];CAa(e,18446744073709551616.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function LO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;SSa(e,0,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];kqa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];kqa(e,18446744073709551616.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function MO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>4)<<4)|0;f[g>>2]=c;if((e|0)>0){Iu(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function NO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;ZXa(h,d);x=0;d=ia(73,f[h>>2]|0,134912)|0;j=x;x=0;if(j&1){j=Ia()|0;JCa(h);Ua(j|0)}else{JCa(h);sY(a,g+16|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function OO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;ZXa(h,d);x=0;d=ia(73,f[h>>2]|0,134912)|0;j=x;x=0;if(j&1){j=Ia()|0;JCa(h);Ua(j|0)}else{JCa(h);TY(a,g+24|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function PO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;ZXa(h,d);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(j&1){j=Ia()|0;JCa(h);Ua(j|0)}else{JCa(h);tY(a,g+16|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function QO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;ZXa(h,d);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(j&1){j=Ia()|0;JCa(h);Ua(j|0)}else{JCa(h);UY(a,g+24|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function RO(a){a=a|0;var b=0,c=0,d=0;c=n8(136)|0;b=c+56|0;d=c+4|0;f[c>>2]=33420;f[b>>2]=33440;Gaa(b,d);f[c+128>>2]=0;f[c+132>>2]=-1;f[c>>2]=41756;f[b>>2]=41776;Sra(d);f[d>>2]=39940;d=c+36|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[d+(b<<2)>>2]=0;b=b+1|0}f[c+48>>2]=0;f[c+52>>2]=16;f[a>>2]=c;return}function SO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;a=f[a>>2]|0;if(!(l$a(f[b+16>>2]|0)|0)?(g=f[c>>2]|0,b=MCa(b+12|0)|0,GZ(g,f[b>>2]|0)|0):0){a=f[a+36>>2]|0;Bbb(a)|0;U0a(d,a);a=qwa(f[d>>2]|0,f[c>>2]|0)|0;f[c>>2]=a}else a=0;u=e;return a|0}function TO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+80|0;c=f[d>>2]|0;f[b>>2]=c;cD(a+16|0);BH(c,f[d>>2]|0);d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))IL(a+96|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function UO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=(f[a+8>>2]|0)-(f[a+4>>2]|0)|0;c=a+20|0;if((((g|0)==0?0:(g<<8)+-1|0)|0)==((f[c>>2]|0)+(f[a+16>>2]|0)|0))Jh(a);E9(d,a);f[f[d+4>>2]>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+1;u=e;return}function VO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+80|0;c=a+64|0;d=a+84|0;e=f[d>>2]|0;if((e|0)==(f[a+88>>2]|0))IL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}qD(a);a=f[b>>2]|0;dH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function WO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1928;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1928,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function XO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;c=(f[f[d>>2]>>2]|0)+(b<<2)|0;a=f[c>>2]|0;f[c>>2]=0;a:do if(f[a>>2]|0){c=f[a+4>>2]|0;a=b;while(1){a=a+1|0;e=f[d>>2]|0;b=f[e>>2]|0;if(a>>>0>=(f[e+4>>2]|0)-b>>2>>>0)break;e=b+(a<<2)|0;b=f[e>>2]|0;f[e>>2]=0;if((b|0?(f[b+4>>2]|0)==(c|0):0)?DPa(f[b>>2]|0)|0:0)break a}Ca(103187,103099,325,103204)}while(0);return}function YO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+80|0;c=f[d>>2]|0;f[b>>2]=c;hD(a+16|0);BH(c,f[d>>2]|0);d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))IL(a+96|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function ZO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=225;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,225,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function _O(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+16>>2]|0);OP(a,f[b+20>>2]|0);OP(a,f[b+24>>2]|0);kfa(a);u=c;return}function $O(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=j$a(a)|0;f[d>>2]=b;f[d+4>>2]=c;a=f[c+4>>2]|0;c=f[c>>2]|0;if(!((!(rab(c)|0)?!(Fab(c)|0):0)?!(vab(c)|0):0))e=4;a:do if((e|0)==4)if((a|0)==5)a=0;else{switch(b|0){case 2:case 5:case 7:break a;default:{}}a=0}while(0);f[d+8>>2]=a;return d|0}function aP(a){a=a|0;if(!a)return;else{aP(f[a>>2]|0);aP(f[a+4>>2]|0);ubb(a);return}}function bP(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+16|0;c=d;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,122067,h7a(122067)|0);x=0;a=ia(214,c|0,a|0)|0;b=I;e=x;x=0;if(e&1){e=Ia()|0;HTa(c);Ua(e|0)}else{HTa(c);I=b;u=d;return a|0}return 0}function cP(a,b){a=a|0;b=b|0;b=Vz(a,b)|0;if(b|0)zO(a,b);return}function dP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b+8|0;Yla(a,f[(f[c>>2]|0)+4>>2]|0,b,82696);e=b+12|0;Yla(a,f[(f[e>>2]|0)+4>>2]|0,b,82722);mwa(a,(f[(f[b+16>>2]|0)+4>>2]|4|0)==5,b);c=f[(f[c>>2]|0)+4>>2]|0;if((c|0)!=5?(d=f[(f[e>>2]|0)+4>>2]|0,(d|0)!=5):0)uma(a,c,d,b);return}function eP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;if((a|0)==(b|0)){f[c>>2]=4;d=0;a=0}else{h=f[33448]|0;f[33448]=0;fOa()|0;a=M$a(a,g,d)|0;d=I;e=f[33448]|0;if(!e)f[33448]=h;if((f[g>>2]|0)==(b|0)){if((e|0)==34){f[c>>2]=4;d=(d|0)>0|(d|0)==0&a>>>0>0;a=d?-1:0;d=d?2147483647:-2147483648}}else{f[c>>2]=4;a=0;d=0}}I=d;u=i;return a|0}function fP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+96|0;c=a+80|0;d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))IL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}RC(a+16|0);a=f[b>>2]|0;BH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function gP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2162;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2162,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function hP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;m$a(e,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];CAa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];CAa(e,4294967296.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function iP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;m$a(e,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];kqa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];kqa(e,4294967296.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function jP(a){a=a|0;if(!a)return;else{jP(f[a>>2]|0);jP(f[a+4>>2]|0);ubb(a);return}}function kP(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;e=g;f[e>>2]=0;c=(b[c+11>>0]|0)<0?f[c>>2]|0:c;i=f[33448]|0;f[33448]=0;d=Q0a(c,e)|0;h=f[33448]|0;f[33448]=i;if((h|0)==34)VV(a);if((f[e>>2]|0)==(c|0))WV(a);u=g;return d|0}function lP(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=u;u=u+16|0;h=b+8|0;i=b;c=f[a>>2]|0;U0a(b+4|0,f[c>>2]|0);f[i>>2]=f[f[a+4>>2]>>2];g=f[a+8>>2]|0;e=f[f[a+12>>2]>>2]|0;d=f[a+16>>2]|0;f[h>>2]=f[i>>2];d=ws(h,g,e,d)|0;c=c+84|0;a=f[c>>2]|0;f[c>>2]=d;if(a|0){LX(a);ubb(a)}u=b;return}function mP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;i=f[b+8>>2]|0;g=h[b+12>>0]|0;e=Bbb(f[b+16>>2]|0)|0;d=_2(a,f[b+20>>2]|0)|0;c=_2(a,f[b+24>>2]|0)|0;return I3(f[a+32>>2]|0,i,g,e,d,c,f[b+4>>2]|0)|0}function nP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2593;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2593,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function oP(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+12>>2]|0);OP(a,f[b+16>>2]|0);OP(a,f[b+20>>2]|0);kfa(a);u=c;return}function pP(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;zma(f[a>>2]|0,40)|0;GXa(c,f[a+28>>2]|0,f[a>>2]|0);_m(c,b);VBa(a);c=f[b+32>>2]|0;if(c|0?!(V6a(f[c>>2]|0)|0):0)OP(a,c);OP(a,f[b+28>>2]|0);kfa(a);u=d;return}function qP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;ZXa(e,b);x=0;b=ia(73,f[e>>2]|0,134920)|0;h=x;x=0;if((!(h&1)?(x=0,d=ga(f[(f[b>>2]|0)+16>>2]|0,b|0)|0,h=x,x=0,!(h&1)):0)?(f[c>>2]=d,x=0,ua(f[(f[b>>2]|0)+20>>2]|0,a|0,b|0),h=x,x=0,!(h&1)):0){JCa(e);u=g;return}h=Ia()|0;JCa(e);Ua(h|0)}function rP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2559;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2559,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function sP(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h;ZXa(g,c);x=0;c=ia(73,f[g>>2]|0,134896)|0;i=x;x=0;if((!(i&1)?(x=0,e=ga(f[(f[c>>2]|0)+16>>2]|0,c|0)|0,i=x,x=0,!(i&1)):0)?(b[d>>0]=e,x=0,ua(f[(f[c>>2]|0)+20>>2]|0,a|0,c|0),i=x,x=0,!(i&1)):0){JCa(g);u=h;return}i=Ia()|0;JCa(g);Ua(i|0)}function tP(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(2922,a|0,(d|0)/12|0|0);d=x;x=0;if(d&1){d=Ia()|0;uSa(a);Ua(d|0)}else{oba(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function uP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>2)<<2)|0;f[g>>2]=c;if((e|0)>0){Iu(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function vP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;GZa(a);e=f[b+40>>2]|0;b=f[b+36>>2]|0;while(1){if((b|0)==(e|0)){b=3;break}f[d>>2]=f[b>>2];x=0;c=ia(196,a|0,d|0)|0;h=x;x=0;if(h&1){b=6;break}f[c>>2]=0;b=b+4|0}if((b|0)==3){u=g;return}else if((b|0)==6){h=Ia()|0;mGa(a);Ua(h|0)}}function wP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1688;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1688,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function xP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=351;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,351,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function yP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1984;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1984,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function zP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=u;u=u+16|0;j=h+8|0;i=h+4|0;g=h;a=a+68|0;k=f[a>>2]|0;f4a(j,(e?2:0)|d&1);Yr(k,f[j>>2]|0)|0;e=f[a>>2]|0;f4a(i,Bbb(b)|0);Yr(e,f[i>>2]|0)|0;if(d){k=f[a>>2]|0;f4a(g,Bbb(c)|0);Yr(k,f[g>>2]|0)|0}u=h;return}function AP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+96|0;c=a+80|0;d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))IL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}cD(a+16|0);a=f[b>>2]|0;BH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function BP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1716;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1716,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function CP(a,c){a=a|0;c=c|0;var d=0;d=a+11|0;if((b[d>>0]|0)<0){T0a(f[a>>2]|0,0);f[a+4>>2]=0}else{T0a(a,0);b[d>>0]=0}x=0;ta(470,a|0);d=x;x=0;if(d&1){d=Ja(0)|0;r2a(d)}f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}sL(a+16|0,c+16|0)|0;return a|0}function DP(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;h=i+32|0;g=i+16|0;d=i;if(zWa(118709,b[c>>0]|0)|0){e=Saa(c)|0;f[d>>2]=a;f[d+4>>2]=e|32768;f[d+8>>2]=438;d=G_a(_a(5,d|0)|0)|0;if((d|0)>=0){if(e&524288|0){f[g>>2]=d;f[g+4>>2]=2;f[g+8>>2]=1;Za(221,g|0)|0}a=Ov(d,c)|0;if(!a){f[h>>2]=d;ab(6,h|0)|0;a=0}}else a=0}else{f[33448]=22;a=0}u=i;return a|0}function EP(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Rt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)dNa(c+8|0);ubb(c)}u=e;return}function FP(a){a=a|0;var b=0;UV(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function GP(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;ZXa(h,d);x=0;a=ia(73,f[h>>2]|0,134912)|0;d=x;x=0;if(d&1){g=Ia()|0;JCa(h);Ua(g|0)}else{JCa(h);G1(g+20|0,b,f[c>>2]|0,e,a);u=i;return f[b>>2]|0}return 0}function HP(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;ZXa(h,d);x=0;a=ia(73,f[h>>2]|0,134880)|0;d=x;x=0;if(d&1){g=Ia()|0;JCa(h);Ua(g|0)}else{JCa(h);H1(g+20|0,b,f[c>>2]|0,e,a);u=i;return f[b>>2]|0}return 0}function IP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+96|0;c=a+80|0;d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))IL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}hD(a+16|0);a=f[b>>2]|0;BH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function JP(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j+4|0;g=j;do if((b[c+12>>0]|0)==0?(h=f[d+4>>2]|0,o2a(h)|0):0)if(Iab(h)|0){mz(a,c,f[d+12>>2]|0);break}else Ca(101933,101947,85,101975);else i=6;while(0);if((i|0)==6){f[g>>2]=f[33152];f[e>>2]=f[g>>2];hXa(a,e)}u=j;return}function KP(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+8>>2]|0);OP(a,f[b+12>>2]|0);OP(a,f[b+16>>2]|0);kfa(a);u=c;return}function LP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=f[b>>2]|0;c=f[b+4>>2]|0;b=a+4|0;a:while(1){b=f[b>>2]|0;if(!b){b=0;break}a=f[b+16>>2]|0;do if((d|0)<(a|0))e=6;else{if((a|0)>=(d|0)){if(KVa(c,f[b+20>>2]|0)|0){e=6;break}if(!(KVa(f[b+20>>2]|0,c)|0)){b=1;break a}}b=b+4|0}while(0);if((e|0)==6)e=0}return b|0}function MP(){var a=0,b=0,c=0,d=0,e=0;e=u;u=u+16|0;a=e+8|0;d=e;b=e+4|0;c=pb(0)|0;if(c&65535|0){yCa(134176,52276)|0;xb(1)}cLa(a,c>>>16,0);c=f[32970]|0;f[c+92>>2]=f[a>>2];f[b>>2]=f[33117];f[a>>2]=f[b>>2];if(!(cna(c,a)|0)){b=f[32970]|0;a=f[b+92>>2]|0;f[d>>2]=a}else{cLa(d,65535,0);b=f[32970]|0;a=f[d>>2]|0}f[b+96>>2]=a;u=e;return}function NP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c+4|0;g=c;f[g>>2]=f[b+8>>2];d=_2(a,f[b+12>>2]|0)|0;b=_2(a,f[b+16>>2]|0)|0;f[e>>2]=f[g>>2];b=Qma(a+32|0,e,d,b)|0;u=c;return b|0}function OP(a,c){a=a|0;c=c|0;var d=0;if(!(b[a+8>>0]|0))Iwa(f[a>>2]|0,f[a+4>>2]|0)|0;if(b[a+20>>0]|0){d=yCa(f[a>>2]|0,118454)|0;yCa(yCa(d,Aha(f[c+4>>2]|0)|0)|0,81230)|0}ir(a,c);yCa(f[a>>2]|0,f[a+16>>2]|0)|0;return}function PP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(77054,76797,157,77067);c=a+84|0;d=f[c>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;_sa(d+(e*12|0)|0);b=e}f[c>>2]=d+-12;u3(a+44|0);return}function QP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(77054,76797,157,77067);c=a+84|0;d=f[c>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;ata(d+(e*12|0)|0);b=e}f[c>>2]=d+-12;w3(a+44|0);return}function RP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(77054,76797,157,77067);c=a+84|0;d=f[c>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;bta(d+(e*12|0)|0);b=e}f[c>>2]=d+-12;x3(a+44|0);return}function SP(a){a=a|0;if(!a)return;else{SP(f[a>>2]|0);SP(f[a+4>>2]|0);ubb(a);return}}function TP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=197;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,197,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function UP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1511;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1511,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function VP(a){a=a|0;var b=0;pb(39)|0;b=f[a+4>>2]|0;a=f[a>>2]|0;a:while(1){if((a|0)==(b|0)){a=3;break}switch(f[a>>2]|0){case 1:{rb(40,ORa(a)|0)|0;break}case 3:{qb(40,+(+ONa(a)))|0;break}case 4:{qb(40,+(+NNa(a)))|0;break}default:{a=8;break a}}a=a+16|0}if((a|0)==3)return;else if((a|0)==8)hb()}function WP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1061;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1061,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function XP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-e)|0;f[g>>2]=c;if((e|0)>0){Iu(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function YP(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;f[e>>2]=c;h=g+8|0;FWa(h,d,1);c=Ql(a,e)|0;f[c>>2]=f[h>>2];b[c+4>>0]=b[h+4>>0]|0;c=a+24|0;d=f[c>>2]|0;if((d|0)==(f[a+28>>2]|0))IL(a+20|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}u=g;return}function ZP(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=ARa(f[a+12>>2]|0)|0;b=LRa(f[a+16>>2]|0)|0;c=LRa(f[e+16>>2]|0)|0;a=f[e+12>>2]|0;b=b+8|0;c=c+8|0;if(!(dN(b,c)|0)){nT(d,c,b);f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];a=e}u=g;return a|0}function _P(a,b){a=a|0;b=b|0;if((LC(a,b)|0)==(a+4|0))a=0;else{a=(mT(a,b)|0)+32|0;a=kra(f[a>>2]|0)|0;zfa(a+4|0,b)|0}return a|0}function $P(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=649;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,649,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function aQ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;f[e>>2]=c;h=g+8|0;FWa(h,d,0);c=Ql(a,e)|0;f[c>>2]=f[h>>2];b[c+4>>0]=b[h+4>>0]|0;c=a+36|0;d=f[c>>2]|0;if((d|0)==(f[a+40>>2]|0))IL(a+32|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}u=g;return} -function dh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=ISa(d,z+160|0)|0;qP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=WEa(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;l=T5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}v=eP(i,f[v>>2]|0,e,r)|0;C=g;f[C>>2]=v;f[C+4>>2]=I;Sz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;i=T5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;HTa(B);HTa(A);u=z;return h|0}while(0);d=Ia()|0}}HTa(B);HTa(A);Ua(d|0);return 0}function eh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;sP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=WEa(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;l=$1a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}B=DK(i,f[t>>2]|0,e,q)|0;f[g>>2]=B;Sz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;i=$1a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;HTa(A);HTa(z);u=y;return h|0}while(0);d=Ia()|0}}HTa(A);HTa(z);Ua(d|0);return 0}function fh(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+208|0;j=z+196|0;A=z+184|0;B=z+172|0;v=z+168|0;w=z;s=z+164|0;t=z+160|0;i=f[e+4>>2]|0;sP(A,e,j);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[B+(e<<2)>>2]=0;e=e+1|0}r=WEa(i)|0;q=B+11|0;if((b[q>>0]|0)<0)e=(f[B+8>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,B|0,e|0);p=x;x=0;if(p&1)e=Ia()|0;else{i=(b[q>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i;f[s>>2]=w;f[t>>2]=0;o=B+4|0;p=B+8|0;n=b[j>>0]|0;j=i;i=a;l=a;while(1){if(!l){a=0;k=1;l=0}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;m=x;x=0;if(m&1){y=27;break}}else e=X6a(b[e>>0]|0)|0;m=$1a(e,-1)|0;i=m?0:i;a=m?0:a;k=m;l=m?0:l}if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;m=x;x=0;if(m&1){y=27;break}}else e=X6a(b[e>>0]|0)|0;if(!($1a(e,-1)|0))if(k)m=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(k){c=0;y=38;break}else m=0}c=b[q>>0]|0;c=c<<24>>24<0?f[o>>2]|0:c&255;if((f[v>>2]|0)==(j+c|0)){x=0;ua(108,B|0,c<<1|0);k=x;x=0;if(k&1){y=29;break}if((b[q>>0]|0)<0)e=(f[p>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,B|0,e|0);k=x;x=0;if(k&1){y=29;break}j=(b[q>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=j+c}c=l+12|0;e=f[c>>2]|0;k=l+16|0;if((e|0)==(f[k>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;C=x;x=0;if(C&1){y=27;break}}else e=X6a(b[e>>0]|0)|0;if(Ir(e&255,r,j,v,t,n,A,w,s,31216)|0){c=m;y=38;break}e=f[c>>2]|0;if((e|0)==(f[k>>2]|0)){x=0;ga(f[(f[l>>2]|0)+40>>2]|0,l|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=e+1;c=m}if((y|0)==27)e=Ia()|0;else if((y|0)==29)e=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;e=f[s>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(e-w|0)<160:0){t=f[t>>2]|0;C=e+4|0;f[s>>2]=C;f[e>>2]=t;e=C}C=eJ(j,f[v>>2]|0,g,r)|0;d[h>>1]=C;Sz(A,w,e,g);do if(!l){j=1;y=46}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[a>>2]|0)+36>>2]|0,l|0)|0;C=x;x=0;if(C&1)break}else e=X6a(b[e>>0]|0)|0;j=$1a(e,-1)|0;i=j?0:i;y=46}while(0);do if((y|0)==46){if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else e=X6a(b[e>>0]|0)|0;if(!($1a(e,-1)|0)){if(!j)y=53}else y=51}else y=51;if((y|0)==51?j:0)y=53;if((y|0)==53)f[g>>2]=f[g>>2]|2;HTa(B);HTa(A);u=z;return i|0}while(0);e=Ia()|0}}HTa(B);HTa(A);Ua(e|0);return 0}function gh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;sP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=WEa(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;l=$1a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}B=ND(i,f[t>>2]|0,e,q)|0;f[g>>2]=B;Sz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;i=$1a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;HTa(A);HTa(z);u=y;return h|0}while(0);d=Ia()|0}}HTa(A);HTa(z);Ua(d|0);return 0}function hh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+336|0;t=C+160|0;h=C+328|0;i=C+324|0;D=C+312|0;E=C+300|0;z=C+296|0;A=C;v=C+292|0;w=C+288|0;y=C+333|0;s=C+332|0;Mz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;p=E+4|0;q=E+8|0;o=f[h>>2]|0;m=f[i>>2]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;k=T5a(d)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[p>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;if(vo(d,y,s,i,z,o,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+4;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+QW(i,f[z>>2]|0,e);n[g>>2]=G;Sz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=Bbb(f[d>>2]|0)|0;i=T5a(d)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;HTa(E);HTa(D);u=C;return h|0}while(0);d=Ia()|0}}HTa(E);HTa(D);Ua(d|0);return 0}function ih(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+336|0;t=C+160|0;h=C+328|0;i=C+324|0;D=C+312|0;E=C+300|0;z=C+296|0;A=C;v=C+292|0;w=C+288|0;y=C+333|0;s=C+332|0;Mz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=f[h>>2]|0;m=f[i>>2]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;k=T5a(d)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;if(vo(d,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+4;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+PW(i,f[z>>2]|0,e);p[g>>3]=G;Sz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=Bbb(f[d>>2]|0)|0;i=T5a(d)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;HTa(E);HTa(D);u=C;return h|0}while(0);d=Ia()|0}}HTa(E);HTa(D);Ua(d|0);return 0}function jh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+336|0;t=C+160|0;h=C+328|0;i=C+324|0;D=C+312|0;E=C+300|0;z=C+296|0;A=C;v=C+292|0;w=C+288|0;y=C+333|0;s=C+332|0;Mz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=f[h>>2]|0;m=f[i>>2]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;k=T5a(d)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=Bbb(f[d>>2]|0)|0;if(vo(d,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+4;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+RW(i,f[z>>2]|0,e);p[g>>3]=G;Sz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=Bbb(f[d>>2]|0)|0;i=T5a(d)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;HTa(E);HTa(D);u=C;return h|0}while(0);d=Ia()|0}}HTa(E);HTa(D);Ua(d|0);return 0}function kh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;w=u;u=u+32|0;y=w+8|0;t=w+4|0;v=w;f[t>>2]=b;a:do if(!(Uz(a,t)|0)){f[y>>2]=b;s=HH(y,4)|0;q=a+4|0;j=f[q>>2]|0;r=(j|0)==0;b:do if(!r){m=j+-1|0;o=(m&j|0)==0;if(!o)if(s>>>0>>0)h=s;else h=(s>>>0)%(j>>>0)|0;else h=m&s;g=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!g)p=17;else do{g=f[g>>2]|0;if(!g){p=17;break b}i=f[g+4>>2]|0;if((i|0)!=(s|0)){if(!o){if(i>>>0>=j>>>0)i=(i>>>0)%(j>>>0)|0}else i=i&m;if((i|0)!=(h|0)){p=17;break b}}}while((f[g+8>>2]|0)!=(b|0))}else{h=0;p=17}while(0);if((p|0)==17){R6(y,a,s,t);b=a+12|0;k=+(((f[b>>2]|0)+1|0)>>>0);l=+n[a+16>>2];do if(r|l*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;p=~~+W(+(k/l))>>>0;x=0;ua(633,a|0,(r>>>0

>>0?p:r)|0);r=x;x=0;if(r&1){g=Ia()|0;h=f[y>>2]|0;f[y>>2]=0;if(h|0)ubb(h);Ua(g|0)}g=f[q>>2]|0;h=g+-1|0;if(!(h&g)){j=g;h=h&s;break}if(s>>>0>>0){j=g;h=s}else{j=g;h=(s>>>0)%(g>>>0)|0}}while(0);g=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!g){g=a+8|0;i=f[y>>2]|0;f[i>>2]=f[g>>2];f[g>>2]=i;f[(f[a>>2]|0)+(h<<2)>>2]=g;g=f[i>>2]|0;if(!g)g=y;else{g=f[g+4>>2]|0;h=j+-1|0;if(h&j){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&h;f[(f[a>>2]|0)+(g<<2)>>2]=i;g=y}}else{s=f[y>>2]|0;f[s>>2]=f[g>>2];f[g>>2]=s;g=y}f[b>>2]=(f[b>>2]|0)+1;f[g>>2]=0}g=Wk(d+44|0,t)|0;if((Zha()|0)>1){s=yCa(134008,76048)|0;t=yCa(xm(s,f[t>>2]|0)|0,123498)|0;yCa(zm(t,f[g+12>>2]|0)|0,76064)|0}b=d+24|0;m=e+4|0;o=e+8|0;g=g+8|0;while(1){g=f[g>>2]|0;if(!g)break a;f[y>>2]=f[g+8>>2];h=Xk(b,y)|0;i=f[h+12>>2]|0;if(i>>>0>=2)break;do if(!i){h=o5(c,f[y>>2]|0)|0;if(h|0?K6a(f[h>>2]|0)|0:0)break;f[v>>2]=0;h=f[m>>2]|0;if(h>>>0<(f[o>>2]|0)>>>0){f[h>>2]=0;f[m>>2]=(f[m>>2]|0)+4}else IL(e,v);if((Zha()|0)>1)yCa(134008,76099)|0}else{h=f[(f[h+8>>2]|0)+8>>2]|0;i=f[h+12>>2]|0;j=i;if((i|0)==(f[y>>2]|0)){kh(a,h,c,d,e);break}f[v>>2]=j;h=f[m>>2]|0;if((h|0)==(f[o>>2]|0))IL(e,v);else{f[h>>2]=j;f[m>>2]=(f[m>>2]|0)+4}if((Zha()|0)>1)zma(xm(yCa(134008,76112)|0,i)|0,10)|0}while(0)}Ca(76071,73170,97,76088)}while(0);u=w;return}function lh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0;x=u;u=u+112|0;s=x+8|0;v=x+4|0;w=x;r=c+12|0;p=a+28|0;o=c+16|0;t=a+20|0;i=0;while(1){d=f[o>>2]|0;e=Bbb(d)|0;if(i>>>0>=e>>>0)break;g=JDa(r,i)|0;g=S$a(f[g>>2]|0)|0;a:do if((g|0?(j=g+16|0,k=f[j>>2]|0,k|0):0)?!(o2a(f[g+4>>2]|0)|0):0){h=g+12|0;d=n$a(f[h>>2]|0)|0;do if((d|0)!=0?(l=d+16|0,(f[l>>2]|0)==0):0){e=g+8|0;if(JH(f[e>>2]|0,f[d+12>>2]|0,f[p>>2]|0)|0){f[l>>2]=f[e>>2];xqa(d);g=f[t>>2]|0;Bbb(g)|0;U0a(s,g);g=mCa(s,d)|0;h=JDa(r,i)|0;f[h>>2]=g;tI(c,i+1|0,f[j>>2]|0);break a}else{d=f[j>>2]|0;break}}else d=k;while(0);d=n$a(d)|0;if((d|0?(m=d+16|0,(f[m>>2]|0)==0):0)?(n=g+8|0,JH(f[n>>2]|0,f[d+12>>2]|0,f[p>>2]|0)|0):0){e=f[t>>2]|0;Bbb(e)|0;U0a(s,e);e=mBa(f[s>>2]|0,20,f[n>>2]|0)|0;f[m>>2]=e;xqa(d);e=f[t>>2]|0;Bbb(e)|0;U0a(s,e);e=mCa(s,d)|0;g=JDa(r,i)|0;f[g>>2]=e;tI(c,i+1|0,f[h>>2]|0)}}while(0);i=i+1|0}do if(e>>>0>1){i=a+24|0;h=0;b:while(1){if(h>>>0>=(d+-1|0)>>>0){d=19;break}d=JDa(r,h)|0;d=n$a(f[d>>2]|0)|0;do if((d|0?(q=d+16|0,f[q>>2]|0):0)?(f[d+4>>2]|0)!=5:0){if(f[d+12>>2]|0){d=24;break b}g=JDa(r,h+1|0)|0;g=n$a(f[g>>2]|0)|0;if(g|0?!(_1a(f[d+8>>2]|0,f[g+8>>2]|0)|0):0){if(f[g+12>>2]|0){d=28;break b}d=g+16|0;e=f[d>>2]|0;if(!e){m=f[t>>2]|0;Bbb(m)|0;U0a(s,m);m=gNa(f[s>>2]|0,f[q>>2]|0)|0;n=JDa(r,h)|0;f[n>>2]=m;break}if((b[i>>0]|0?(f[g+4>>2]|0)!=5:0)?(fA(s,f[p>>2]|0,e),n=lza(s)|0,V7(s),!n):0){n=f[t>>2]|0;Bbb(n)|0;U0a(s,n);n=Fpa(f[s>>2]|0,8,f[q>>2]|0,f[d>>2]|0)|0;f[q>>2]=n;pVa(g)}}}while(0);h=h+1|0;d=f[o>>2]|0}if((d|0)==19){Nc(a,c);h=c+8|0;if(!(Iab(f[h>>2]|0)|0))break;e=JDa(r,0)|0;e=n$a(f[e>>2]|0)|0;if(!e)break;g=e+16|0;if(!(f[g>>2]|0))break;d=f[h>>2]|0;if(!($1a(f[e+8>>2]|0,d)|0))break;if((f[e+4>>2]|0)==5)break;if(f[e+12>>2]|0)Ca(91194,91090,627,99913);f[v>>2]=d;f[s>>2]=f[v>>2];if((PM(c,s)|0)!=1)break;v=f[t>>2]|0;Bbb(v)|0;U0a(s,v);v=Cqa(s,mBa(f[s>>2]|0,20,f[g>>2]|0)|0,c,0)|0;BVa(f[a>>2]|0,v)|0;tab(w);f[h>>2]=f[w>>2];pVa(e);XJa(c,f[c+4>>2]|0);break}else if((d|0)==24)Ca(91170,91090,588,99913);else if((d|0)==28)Ca(91182,91090,591,99913)}while(0);u=x;return}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;y=u;u=u+112|0;s=y+84|0;d=y+80|0;p=y+48|0;e=y+76|0;g=y+96|0;h=y+72|0;i=y+68|0;j=y+64|0;k=y+60|0;A=y+28|0;m=y+44|0;n=y+40|0;z=y+16|0;v=y+12|0;w=y;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;WZ(p,111402,h7a(111402)|0);o=b;x=0;ia(59,p|0,b|0)|0;r=x;x=0;do if(r&1){b=Ia()|0;d=11}else{f[s>>2]=f[p>>2];f[s+4>>2]=f[p+4>>2];f[s+8>>2]=f[p+8>>2];b=0;while(1){if((b|0)==3)break;f[p+(b<<2)>>2]=0;b=b+1|0}x=0;ua(83,d|0,s|0);r=x;x=0;if(r&1){b=Ia()|0;HTa(s);d=11;break}HTa(s);HTa(p);q=f[d>>2]|0;f[e>>2]=q;f[s>>2]=f[e>>2];r=q;if(Sma(c,s)|0){J_a();x=0;ia(52,g|0,111418)|0;l=x;x=0;if(l&1){Ia()|0;gCa()}else gCa()}f[h>>2]=o;f[s>>2]=f[h>>2];d=Sma(c,s)|0;l=(d|0)!=0;if(l){b=d+4|0;k=d+8|0}else{f[i>>2]=o;f[s>>2]=f[i>>2];b=(hJ(c,s)|0)+16|0;f[j>>2]=f[b>>2];f[s>>2]=f[j>>2];j=(KI(c,s)|0)+8|0;f[k>>2]=f[b>>2];f[s>>2]=f[k>>2];b=(KI(c,s)|0)+4|0;k=j}j=f[b>>2]|0;U0a(p,c);f[A>>2]=0;g=A+4|0;f[g>>2]=0;h=A+8|0;f[h>>2]=0;i=k+4|0;e=0;while(1){if(e>>>0>=(f[i>>2]|0)-(f[k>>2]|0)>>2>>>0){d=18;break}x=0;b=ja(46,f[p>>2]|0,e|0,2)|0;d=x;x=0;if(d&1){d=25;break}x=0;b=ja(80,b|0,f[(f[k>>2]|0)+(e<<2)>>2]|0,c|0)|0;d=x;x=0;if(d&1){d=25;break}f[s>>2]=b;d=f[g>>2]|0;if(d>>>0>=(f[h>>2]|0)>>>0){x=0;ua(1835,A|0,s|0);d=x;x=0;if(d&1){d=25;break}}else{f[d>>2]=b;f[g>>2]=(f[g>>2]|0)+4}e=e+1|0}do if((d|0)==18){if(l){f[m>>2]=o;x=0;f[s>>2]=f[m>>2];b=ka(13,p|0,s|0,A|0,j|0)|0;p=x;x=0;if(p&1)d=31}else{f[n>>2]=o;x=0;f[s>>2]=f[n>>2];b=ka(10,p|0,s|0,A|0,j|0)|0;p=x;x=0;if(p&1)d=31}if((d|0)==31){b=Ia()|0;break}f[z>>2]=0;e=z+4|0;f[e>>2]=0;g=z+8|0;f[g>>2]=0;d=0;while(1){if(d>>>0>=15){d=30;break}f[s>>2]=2;h=f[e>>2]|0;if(h>>>0>=(f[g>>2]|0)>>>0){x=0;ua(1871,z|0,s|0);p=x;x=0;if(p&1){d=36;break}}else{f[h>>2]=2;f[e>>2]=h+4}d=d+1|0}do if((d|0)==30){f[v>>2]=q;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;x=0;b=ia(193,b|0,c|0)|0;q=x;x=0;if(!(q&1)?(x=0,f[s>>2]=f[v>>2],t=ma(28,s|0,z|0,2,w|0,b|0)|0,v=x,x=0,!(v&1)):0){uSa(w);f[t+32>>2]=f[a+16>>2];x=0;ua(73,c|0,t|0);w=x;x=0;if(w&1){b=Ia()|0;break}else{uSa(z);uSa(A);u=y;return r|0}}b=Ia()|0;uSa(w)}else if((d|0)==36)b=Ia()|0;while(0);uSa(z)}else if((d|0)==25)b=Ia()|0;while(0);uSa(A)}while(0);if((d|0)==11)HTa(p);Ua(b|0);return 0}function nh(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;A=u;u=u+304|0;j=A+300|0;B=A+288|0;C=A+276|0;w=A+272|0;y=A;v=A+268|0;t=A+264|0;i=f[e+4>>2]|0;r=ISa(e,A+160|0)|0;qP(B,e,j);f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[C+(e<<2)>>2]=0;e=e+1|0}s=WEa(i)|0;q=C+11|0;if((b[q>>0]|0)<0)e=(f[C+8>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,C|0,e|0);p=x;x=0;if(p&1)e=Ia()|0;else{i=(b[q>>0]|0)<0?f[C>>2]|0:C;f[w>>2]=i;f[v>>2]=y;f[t>>2]=0;o=C+4|0;p=C+8|0;n=f[j>>2]|0;j=i;i=a;l=a;while(1){if(!l){a=0;k=1;l=0}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;m=x;x=0;if(m&1){z=27;break}}else e=Bbb(f[e>>2]|0)|0;m=T5a(e)|0;i=m?0:i;a=m?0:a;k=m;l=m?0:l}if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;m=x;x=0;if(m&1){z=27;break}}else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0))if(k)m=c;else{z=38;break}else z=18}else z=18;if((z|0)==18){z=0;if(k){c=0;z=38;break}else m=0}c=b[q>>0]|0;c=c<<24>>24<0?f[o>>2]|0:c&255;if((f[w>>2]|0)==(j+c|0)){x=0;ua(108,C|0,c<<1|0);k=x;x=0;if(k&1){z=29;break}if((b[q>>0]|0)<0)e=(f[p>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,C|0,e|0);k=x;x=0;if(k&1){z=29;break}j=(b[q>>0]|0)<0?f[C>>2]|0:C;f[w>>2]=j+c}c=l+12|0;e=f[c>>2]|0;k=l+16|0;if((e|0)==(f[k>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;D=x;x=0;if(D&1){z=27;break}}else e=Bbb(f[e>>2]|0)|0;if(Jr(e,s,j,w,t,n,B,y,v,r)|0){c=m;z=38;break}e=f[c>>2]|0;if((e|0)==(f[k>>2]|0)){x=0;ga(f[(f[l>>2]|0)+40>>2]|0,l|0)|0;D=x;x=0;if(D&1){z=27;break}}else f[c>>2]=e+4;c=m}if((z|0)==27)e=Ia()|0;else if((z|0)==29)e=Ia()|0;else if((z|0)==38){D=b[B+11>>0]|0;e=f[v>>2]|0;if(((D<<24>>24<0?f[B+4>>2]|0:D&255)|0)!=0?(e-y|0)<160:0){t=f[t>>2]|0;D=e+4|0;f[v>>2]=D;f[e>>2]=t;e=D}D=eJ(j,f[w>>2]|0,g,s)|0;d[h>>1]=D;Sz(B,y,e,g);do if(!l){j=1;z=46}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[a>>2]|0)+36>>2]|0,l|0)|0;D=x;x=0;if(D&1)break}else e=Bbb(f[e>>2]|0)|0;j=T5a(e)|0;i=j?0:i;z=46}while(0);do if((z|0)==46){if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;D=x;x=0;if(D&1)break}else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0)){if(!j)z=53}else z=51}else z=51;if((z|0)==51?j:0)z=53;if((z|0)==53)f[g>>2]=f[g>>2]|2;HTa(C);HTa(B);u=A;return i|0}while(0);e=Ia()|0}}HTa(C);HTa(B);Ua(e|0);return 0}function oh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=ISa(d,z+160|0)|0;qP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=WEa(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;l=T5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}C=DK(i,f[v>>2]|0,e,r)|0;f[g>>2]=C;Sz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;i=T5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;HTa(B);HTa(A);u=z;return h|0}while(0);d=Ia()|0}}HTa(B);HTa(A);Ua(d|0);return 0}function ph(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=ISa(d,z+160|0)|0;qP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=WEa(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;l=T5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}C=ND(i,f[v>>2]|0,e,r)|0;f[g>>2]=C;Sz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;i=T5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;HTa(B);HTa(A);u=z;return h|0}while(0);d=Ia()|0}}HTa(B);HTa(A);Ua(d|0);return 0}function qh(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0;t=u;u=u+64|0;y=t+40|0;z=t+28|0;o=t+24|0;v=t+12|0;w=t;f[y>>2]=0;s=y+4|0;f[s>>2]=0;p=y+8|0;f[p>>2]=0;f[z>>2]=0;q=z+4|0;f[q>>2]=0;r=z+8|0;f[r>>2]=0;k=a+16|0;x=0;c=ga(313,k|0)|0;n=x;x=0;do if(n&1)g=6;else{f[o>>2]=c;l=a+4|0;m=a+8|0;n=a+12|0;d=c;j=c;a:while(1){x=0;ta(499,a|0);i=x;x=0;if(i&1){g=5;break}c=f[a>>2]|0;switch(b[c>>0]|0){case 0:{g=35;break a}case 40:{f[a>>2]=c+1;c=f[s>>2]|0;if((c|0)==(f[p>>2]|0)){x=0;ua(1891,y|0,o|0);j=x;x=0;if(j&1){g=5;break a}}else{f[c>>2]=d;f[s>>2]=(f[s>>2]|0)+4}x=0;e=ga(313,k|0)|0;j=x;x=0;if(j&1){g=5;break a}c=XKa(e,f[l>>2]|0,(f[a>>2]|0)+-1-(f[m>>2]|0)|0,f[n>>2]|0)|0;f[o>>2]=c;d=f[q>>2]|0;if((d|0)==(f[r>>2]|0)){x=0;ua(1892,z|0,n|0);j=x;x=0;if(j&1){g=5;break a}d=f[q>>2]|0}else{f[d>>2]=f[n>>2];d=(f[q>>2]|0)+4|0;f[q>>2]=d}if(((f[s>>2]|0)-(f[y>>2]|0)|0)!=(d-(f[z>>2]|0)|0)){g=17;break a}break}case 41:{f[a>>2]=c+1;d=f[y>>2]|0;g=f[s>>2]|0;if((d|0)==(g|0)){g=19;break a}h=g+-4|0;c=f[h>>2]|0;f[o>>2]=c;i=f[q>>2]|0;e=c;if((g-d|0)!=(i-(f[z>>2]|0)|0)){g=26;break a}f[s>>2]=h;d=i+-4|0;f[n>>2]=f[d>>2];f[q>>2]=d;x=0;d=ga(314,e|0)|0;i=x;x=0;if(i&1){g=27;break a}x=0;ua(1893,d|0,j|0);j=x;x=0;if(j&1){g=27;break a}break}default:{x=0;c=ga(314,j|0)|0;i=x;x=0;if(i&1){g=5;break a}x=0;d=ga(315,a|0)|0;i=x;x=0;if(i&1){g=5;break a}x=0;ua(1893,c|0,d|0);i=x;x=0;if(i&1){g=5;break a}else{e=j;c=j}}}d=c;j=e}if((g|0)==5){c=Ia()|0;g=7;break}else if((g|0)==17){x=0;wa(71,99449,99261,127,99482);x=0;g=6;break}else if((g|0)==19){e=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;w=h7a(99488)|0;x=0;va(87,v|0,99488,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,e|0,v|0);w=x;x=0;if(w&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(v);if(!d)break}else c=Ia()|0;La(e|0);break}else if((g|0)==26){x=0;wa(71,99449,99261,135,99482);x=0;c=Ia()|0}else if((g|0)==27)c=Ia()|0;else if((g|0)==35){if((f[s>>2]|0)==(f[y>>2]|0)){uSa(z);uSa(y);u=t;return j|0}e=Ea(20)|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;v=h7a(99507)|0;x=0;va(87,w|0,99507,v|0);v=x;x=0;if(!(v&1)){x=0;wa(138,e|0,w|0,f[j+28>>2]|0,f[j+32>>2]|0);v=x;x=0;if(v&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(w);if(!d)break}else c=Ia()|0;La(e|0);break}}while(0);if((g|0)==6){c=Ia()|0;g=7}uSa(z);uSa(y);Ua(c|0);return 0}function rh(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=u;u=u+80|0;l=k+60|0;m=k+48|0;j=k+72|0;n=k+36|0;o=k+24|0;p=k+12|0;q=k;rHa(c,0,0)|0;f[d>>2]=e;i=1;a:while(1){h=Or(a,i)|0;if(b8a(b[h>>0]|0)|0){c=50;break}h=jF(Or(a,i)|0)|0;e=zWa(h,61)|0;if(!e){c=4;break}e=e+1|0;if(!(b[e>>0]|0)){c=11;break}e=qZa(e,j,10)|0;g=I;if(b[f[j>>2]>>0]|0){c=18;break}switch(b[h>>0]|0){case 97:{if(g>>>0>0|(g|0)==0&e>>>0>4294967295){c=26;break a}rHa(d,e,g)|0;break}case 111:{if(g>>>0>0|(g|0)==0&e>>>0>4294967295){c=34;break a}rHa(c,e,g)|0;break}default:{c=41;break a}}i=i+1|0}do if((c|0)==4){h=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;q=h7a(93223)|0;x=0;va(87,l|0,93223,q|0);q=x;x=0;if(!(q&1)){x=0;ua(261,h|0,l|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(l);if(!g)break}else e=Ia()|0;La(h|0)}else if((c|0)==11){h=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;q=h7a(93253)|0;x=0;va(87,m|0,93253,q|0);q=x;x=0;if(!(q&1)){x=0;wa(138,h|0,m|0,f[a+28>>2]|0,f[a+32>>2]|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(m);if(!g)break}else e=Ia()|0;La(h|0)}else if((c|0)==18){h=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;q=h7a(93287)|0;x=0;va(87,n|0,93287,q|0);q=x;x=0;if(!(q&1)){x=0;wa(138,h|0,n|0,f[a+28>>2]|0,f[a+32>>2]|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(n);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==26){h=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;q=h7a(93318)|0;x=0;va(87,o|0,93318,q|0);q=x;x=0;if(!(q&1)){x=0;ua(261,h|0,o|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(o);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==34){h=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;q=h7a(93328)|0;x=0;va(87,p|0,93328,q|0);q=x;x=0;if(!(q&1)){x=0;ua(261,h|0,p|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(p);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==41){h=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;p=h7a(93339)|0;x=0;va(87,q|0,93339,p|0);p=x;x=0;if(!(p&1)){x=0;ua(261,h|0,q|0);p=x;x=0;if(p&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(q);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==50){u=k;return i|0}while(0);Ua(e|0);return 0}function sh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;g=j;d=j+4|0;e=a+4|0;c=l8(f[e>>2]|0,c)|0;f[g>>2]=c;if(!c)Ca(73237,73170,439,73273);switch(f[c>>2]|0){case 0:{c=yCa(134008,123454)|0;d=gm(a+8|0,g)|0;yCa(yCa(yCa(zm(c,f[d>>2]|0)|0,116870)|0,Aha(f[(f[g>>2]|0)+4>>2]|0)|0)|0,73279)|0;break}case 1:{if(Zha()|0){yCa(134008,73286)|0;jw(f[c+4>>2]|0,134008,1,0)|0;zma(134008,10)|0}c=yCa(134008,123454)|0;d=gm(a+8|0,g)|0;yCa(zm(c,f[d>>2]|0)|0,73289)|0;ci(a,f[g>>2]|0);break}case 2:{c=$Pa(c,0)|0;f[d>>2]=c;c=(f[c+16>>2]|0)-(f[c+12>>2]|0)>>2;m=yCa(134008,123454)|0;l=a+8|0;k=gm(l,g)|0;k=yCa(zm(m,f[k>>2]|0)|0,73293)|0;d=gm(l,d)|0;zm(k,f[d>>2]|0)|0;d=c+1|0;c=1;while(1){if(c>>>0>=d>>>0)break;yCa(134008,123498)|0;XE(a,$Pa(f[g>>2]|0,c)|0);c=c+1|0}break}case 3:{l=yCa(134008,73302)|0;m=$Pa(c,0)|0;f[d>>2]=m;m=gm(a+8|0,d)|0;m=zma(zm(l,f[m>>2]|0)|0,32)|0;zma(zm(m,f[(f[g>>2]|0)+4>>2]|0)|0,32)|0;XE(a,$Pa(f[g>>2]|0,1)|0);yCa(134008,73312)|0;break}case 4:{m=yCa(134008,123454)|0;l=gm(a+8|0,g)|0;l=yCa(zm(m,f[l>>2]|0)|0,73318)|0;m=f[g>>2]|0;zm(l,(f[m+16>>2]|0)-(f[m+12>>2]|0)>>2)|0;break}case 5:{m=$Pa(c,0)|0;k=yCa(134008,123454)|0;l=gm(a+8|0,g)|0;l=zma(zm(k,f[l>>2]|0)|0,58)|0;yCa(l,Aha(rT(m)|0)|0)|0;yCa(134008,73328)|0;XE(a,m);break}case 6:{yCa(134008,73337)|0;hb();break}default:hb()}d=f[g>>2]|0;c=f[d>>2]|0;if(!(!(rab(c)|0)?!(vab(c)|0):0))i=19;if(((i|0)==19?(h=f[e>>2]|0,(f[d+8>>2]|0)!=(f[(f[h+4>>2]|0)+8>>2]|0)):0)?Uz(h+88|0,g)|0:0){yCa(134008,73347)|0;b[a+28>>0]=1}zma(134008,10)|0;do if(Zha()|0){d=f[g>>2]|0;c=f[d>>2]|0;if(!(rab(c)|0)?!(vab(c)|0):0)break;Ny(a,d)}while(0);u=j;return}function th(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+48|0;A=z+28|0;m=z+20|0;v=z+24|0;y=z+8|0;w=z;tab(m);do switch(f[b+8>>2]|0){case 67:case 54:{fo(a,b);break}case 13:{E1a(A,f[33064]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 14:{E1a(A,f[33066]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 38:{E1a(A,f[33065]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 39:{E1a(A,f[33067]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 27:{E1a(A,f[33076]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 28:{E1a(A,f[33077]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 29:{E1a(A,f[33078]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 30:{E1a(A,f[33079]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 31:{E1a(A,f[33080]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}default:{}}while(0);do if((o|0)==12){j=t;s=a+48|0;r=v8a(m)|0;p=a+52|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){k=i+-1|0;l=(k&i|0)==0;if(!l)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=k&r;c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c)o=27;else do{c=f[c>>2]|0;if(!c){o=27;break a}h=f[c+4>>2]|0;if((h|0)!=(r|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){o=27;break a}}}while(!($1a(f[c+8>>2]|0,j)|0))}else{d=0;o=27}while(0);if((o|0)==27){R6(A,s,r,m);j=a+60|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+64>>2];do if(q|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(680,s|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r}else{i=c;d=(r>>>0)%(c>>>0)|0}}while(0);c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+56|0;h=f[A>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[s>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=A;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[s>>2]|0)+(c<<2)>>2]=h;c=A}}else{s=f[A>>2]|0;f[s>>2]=f[c>>2];f[c>>2]=s;c=A}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}c=f[a+44>>2]|0;f[v>>2]=t;f[w>>2]=f[b+12>>2];f[w+4>>2]=f[b+16>>2];f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;x=0;ua(168,y|0,2);t=x;x=0;if(t&1){A=Ia()|0;uSa(y);Ua(A|0)}mda(y,w,w+8|0);w=f[b+4>>2]|0;x=0;f[A>>2]=f[v>>2];c=ka(13,c|0,A|0,y|0,w|0)|0;A=x;x=0;if(A&1){A=Ia()|0;uSa(y);Ua(A|0)}else{BVa(f[a+16>>2]|0,c)|0;uSa(y);break}}while(0);u=z;return}function uh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=u;u=u+64|0;z=E+16|0;H=E+48|0;F=E+32|0;A=E;mD(H,a,1);x=0;va(159,F|0,a|0,1);B=x;x=0;if(B&1)h=Ia()|0;else{B=a+44|0;h=f[B>>2]|0;x=0;i=ga(320,H|0)|0;I=x;x=0;a:do if((((((!(I&1)?(j=f[B>>2]|0,x=0,k=ga(320,c|0)|0,I=x,x=0,!(I&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,I=x,x=0,!(I&1)):0)?(m=f[B>>2]|0,x=0,n=ga(320,e|0)|0,I=x,x=0,!(I&1)):0)?(x=0,o=ja(46,f[m>>2]|0,n|0,1)|0,I=x,x=0,!(I&1)):0)?(x=0,p=ka(7,f[j>>2]|0,0,l|0,o|0)|0,I=x,x=0,!(I&1)):0)?(x=0,C=ja(45,h|0,i|0,p|0)|0,I=x,x=0,!(I&1)):0){h=f[B>>2]|0;x=0;i=ga(320,F|0)|0;I=x;x=0;if((((((!(I&1)?(q=f[B>>2]|0,x=0,r=ga(320,d|0)|0,I=x,x=0,!(I&1)):0)?(x=0,s=ja(46,f[q>>2]|0,r|0,1)|0,I=x,x=0,!(I&1)):0)?(t=f[B>>2]|0,x=0,v=ga(320,g|0)|0,I=x,x=0,!(I&1)):0)?(x=0,w=ja(46,f[t>>2]|0,v|0,1)|0,I=x,x=0,!(I&1)):0)?(x=0,y=ka(7,f[q>>2]|0,0,s|0,w|0)|0,I=x,x=0,!(I&1)):0)?(x=0,D=ja(45,h|0,i|0,y|0)|0,I=x,x=0,!(I&1)):0){k=f[B>>2]|0;x=0;c=ga(320,F|0)|0;I=x;x=0;do if(!(I&1)){j=f[B>>2]|0;x=0;h=ga(320,F|0)|0;I=x;x=0;if(I&1)break;x=0;i=ja(46,f[j>>2]|0,h|0,1)|0;I=x;x=0;if(I&1)break;h=f[B>>2]|0;m$a(A,1);x=0;f[z>>2]=f[A>>2];f[z+4>>2]=f[A+4>>2];f[z+8>>2]=f[A+8>>2];f[z+12>>2]=f[A+12>>2];h=ia(50,h|0,z|0)|0;I=x;x=0;if(I&1)break;x=0;h=ka(7,f[j>>2]|0,0,i|0,h|0)|0;I=x;x=0;if(I&1)break;x=0;k=ja(45,k|0,c|0,h|0)|0;I=x;x=0;if(I&1)break;c=f[B>>2]|0;x=0;h=ga(320,H|0)|0;I=x;x=0;do if(!(I&1)){x=0;j=ja(46,f[c>>2]|0,h|0,1)|0;I=x;x=0;if(I&1)break;i=f[B>>2]|0;x=0;h=ga(320,e|0)|0;I=x;x=0;if(I&1)break;x=0;h=ja(46,f[i>>2]|0,h|0,1)|0;I=x;x=0;if(I&1)break;x=0;h=ka(7,f[c>>2]|0,18,j|0,h|0)|0;I=x;x=0;if(I&1)break;x=0;j=ka(8,c|0,h|0,k|0,0)|0;I=x;x=0;if(I&1)break;h=f[B>>2]|0;x=0;i=ga(320,H|0)|0;I=x;x=0;do if(!(I&1)){x=0;h=ja(46,f[h>>2]|0,i|0,1)|0;I=x;x=0;if(I&1)break;x=0;h=oa(46,f[B>>2]|0,b|0,C|0,D|0,j|0,h|0)|0;I=x;x=0;if(I&1)break;x=0;va(161,a|0,h|0,F|0);I=x;x=0;if(I&1)break;HCa(F);HCa(H);u=E;return h|0}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break}h=Ia()|0}else G=34;while(0);if((G|0)==34)h=Ia()|0;HCa(F)}HCa(H);Ua(h|0);return 0}function vh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0;s=u;u=u+32|0;t=s+12|0;p=s;a:do if(((a|0)!=(c|0)?(b[a>>0]|0)==70:0)?(e=a+1|0,(e|0)!=(c|0)):0){if((b[e>>0]|0)==89){e=a+2|0;if((e|0)==(c|0))break}g=Cc(e,c,d)|0;if((g|0)!=(e|0)){f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;nW(t,123276,h7a(123276)|0);q=d+4|0;n=t+11|0;o=t+4|0;l=p+11|0;m=p+4|0;k=0;e=g;b:while(1){c:while(1){if((e|0)==(c|0)){r=11;break b}switch(b[e>>0]|0){case 69:{r=17;break b}case 118:{e=e+1|0;break}case 82:{h=e+1|0;if((h|0)!=(c|0)?(b[h>>0]|0)==69:0){g=1;e=h;break c}else r=24;break}case 79:{h=e+1|0;if((h|0)!=(c|0)?(b[h>>0]|0)==69:0){g=2;e=h;break c}else r=24;break}default:r=24}d:do if((r|0)==24){r=0;g=((f[q>>2]|0)-(f[d>>2]|0)|0)/24|0;x=0;i=ja(100,e|0,c|0,d|0)|0;j=x;x=0;if(j&1){r=27;break b}j=((f[q>>2]|0)-(f[d>>2]|0)|0)/24|0;if((i|0)==(e|0)|(i|0)==(c|0)){r=50;break b}e=g;while(1){if(e>>>0>=j>>>0)break;h=b[n>>0]|0;if((h<<24>>24<0?f[o>>2]|0:h&255)>>>0>1?(x=0,ia(215,t|0,123498)|0,h=x,x=0,h&1):0){r=32;break b}x=0;ua(3194,p|0,(f[d>>2]|0)+(e*24|0)|0);h=x;x=0;if(h&1){r=36;break b}h=b[l>>0]|0;v=h<<24>>24<0;x=0;ja(97,t|0,(v?f[p>>2]|0:p)|0,(v?f[m>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){r=37;break b}HTa(p);e=e+1|0}e=g;while(1){if(e>>>0>=j>>>0){e=i;break d}h=f[q>>2]|0;g=0;while(1){if((g|0)==-1)break;v=g+-1|0;JJa(h+(v*24|0)|0);g=v}f[q>>2]=h+-24;e=e+1|0}}while(0)}k=g}e:do if((r|0)==11){g=f[q>>2]|0;e=0;while(1){if((e|0)==-1)break;v=e+-1|0;JJa(g+(v*24|0)|0);e=v}f[q>>2]=g+-24;r=50}else if((r|0)==17){g=e+1|0;x=0;ia(215,t|0,123274)|0;v=x;x=0;f:do if(!(v&1)){switch(k&3){case 1:{x=0;ia(215,t|0,124702)|0;v=x;x=0;if(v&1)break f;break}case 2:{x=0;ia(215,t|0,124705)|0;v=x;x=0;if(v&1)break f;break}default:{}}e=f[q>>2]|0;if((f[d>>2]|0)==(e|0)){r=50;break e}x=0;ia(215,e+-24|0,123308)|0;v=x;x=0;if(!(v&1)?(v=b[n>>0]|0,d=v<<24>>24<0,x=0,ka(38,(f[q>>2]|0)+-12|0,0,(d?f[t>>2]|0:t)|0,(d?f[o>>2]|0:v&255)|0)|0,v=x,x=0,!(v&1)):0){HTa(t);a=g;break a}}while(0);a=Ia()|0}else if((r|0)==27)a=Ia()|0;else if((r|0)==32)a=Ia()|0;else if((r|0)==36){a=Ia()|0;r=38}else if((r|0)==37){a=Ia()|0;HTa(p);r=38}while(0);if((r|0)!=38)if((r|0)==50){HTa(t);break}HTa(t);Ua(a|0)}}while(0);u=s;return a|0}function wh(a,c){a=a|0;c=c|0;var d=0,e=0,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=u;u=u+48|0;q=r+8|0;p=r;l=a+28|0;f[l>>2]=c;f[a+32>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80791)|0;s4(f[c>>2]|0,f[a>>2]|0)|0;d=f[a+24>>2]|0;if(d|0?(b[a+8>>0]|0)==0:0){e=a+44|0;if(!(f[a+56>>2]|0)){Go(q,d);KD(e,q);wHa(q)}j=yCa(f[a>>2]|0,80797)|0;k=qm(e,c)|0;yCa(zm(j,f[k>>2]|0)|0,80802)|0}k=c+40|0;if(f[k>>2]|0?(b[a+8>>0]|0)==0:0)yCa(f[a>>2]|0,80806)|0;d=c+32|0;if(Iab(f[d>>2]|0)|0){j=yCa(yCa(f[a>>2]|0,f[a+12>>2]|0)|0,80826)|0;zma(wfa(j,f[d>>2]|0)|0,41)|0}h=c+8|0;i=c+12|0;d=f[i>>2]|0;e=f[h>>2]|0;a:do if((d|0)!=(e|0)){j=a+12|0;g=0;while(1){if(g>>>0>=d-e>>2>>>0)break a;yCa(f[a>>2]|0,f[j>>2]|0)|0;zma(f[a>>2]|0,40)|0;d=tPa(f[a>>2]|0,80833)|0;d=zma(wfa(d,G3(g,f[l>>2]|0)|0)|0,32)|0;zma(yCa(d,Aha(n9(c,g)|0)|0)|0,41)|0;g=g+1|0;d=f[i>>2]|0;e=f[h>>2]|0}}while(0);d=c+4|0;if(f[d>>2]|0){yCa(f[a>>2]|0,f[a+12>>2]|0)|0;zma(f[a>>2]|0,40)|0;j=tPa(f[a>>2]|0,80840)|0;zma(yCa(j,Aha(f[d>>2]|0)|0)|0,41)|0}VBa(a);e=a+4|0;g=a+16|0;d=uZa(c)|0;while(1){if(d>>>0>=(fQa(c)|0)>>>0)break;Iwa(f[a>>2]|0,f[e>>2]|0)|0;zma(f[a>>2]|0,40)|0;j=tPa(f[a>>2]|0,80848)|0;j=zma(wfa(j,G3(d,f[l>>2]|0)|0)|0,32)|0;zma(yCa(j,Aha(n9(c,d)|0)|0)|0,41)|0;yCa(f[a>>2]|0,f[g>>2]|0)|0;d=d+1|0}if((b[a+21>>0]|0)!=0?(m=f[k>>2]|0,(m|0)!=0):0)lr(m,f[a>>2]|0,c)|0;else n=22;do if((n|0)==22){d=c+36|0;if(((b[a+20>>0]|0)==0?(o=f[d>>2]|0,rab(f[o>>2]|0)|0):0)?(o=(XRa(o)|0)+8|0,Gab(f[o>>2]|0)|0):0){g=(XRa(f[d>>2]|0)|0)+12|0;I$a(q,g);GUa(p,g);g=q+4|0;e=f[p>>2]|0;d=f[p+4>>2]|0;while(1){if(!(lTa(f[q>>2]|0,f[g>>2]|0,e,d)|0))break;p=LOa(q)|0;OP(a,f[p>>2]|0);RYa(q)}break}OP(a,f[d>>2]|0)}while(0);kfa(a);u=r;return}function xh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;n=m+44|0;i=m+32|0;j=m+20|0;h=m+16|0;g=m+4|0;e=m;d=f[a>>2]|0;c=b[d>>0]|0;if(c<<24>>24==36){l=d+1|0;f[a>>2]=l;k=1;c=b[l>>0]|0}else{k=0;l=d}a:do if(c<<24>>24==34){d=l+1|0;f[a>>2]=d;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[n+(c<<2)>>2]=0;c=c+1|0}b:while(1){c=b[d>>0]|0;switch(c<<24>>24){case 0:{g=10;break b}case 34:{g=30;break b}case 92:{x=0;ua(82,n|0,92);g=x;x=0;if(g&1){g=21;break b}c=b[(f[a>>2]|0)+1>>0]|0;if(!(c<<24>>24)){g=18;break b}x=0;ua(82,n|0,c|0);g=x;x=0;if(g&1){g=21;break b}else c=2;break}default:{x=0;ua(82,n|0,c|0);g=x;x=0;if(g&1){g=21;break b}else c=1}}d=(f[a>>2]|0)+c|0;f[a>>2]=d}do if((g|0)==10){e=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;m=h7a(99526)|0;x=0;va(87,i|0,99526,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,e|0,i|0,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0);a=x;x=0;if(a&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(i);if(!d)break}else c=Ia()|0;La(e|0)}else if((g|0)==18){e=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;m=h7a(99546)|0;x=0;va(87,j|0,99546,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,e|0,j|0,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0);a=x;x=0;if(a&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(j);if(!d)break}else c=Ia()|0;La(e|0)}else if((g|0)==21){c=Ia()|0;g=23}else if((g|0)==30){f[a>>2]=d+1;x=0;c=ga(313,a+16|0)|0;j=x;x=0;if(!(j&1)?(x=0,va(88,h|0,((b[n+11>>0]|0)<0?f[n>>2]|0:n)|0,0),j=x,x=0,!(j&1)):0){g=XGa(c,f[h>>2]|0,k,1)|0;XKa(g,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0,f[a+12>>2]|0)|0;HTa(n);g=46;break a}c=Ia()|0;g=23}while(0);HTa(n);g=47}else{d=l;c:while(1){if(!(c<<24>>24)){c=0;break}if(o6a(c<<24>>24)|0)break;switch(c<<24>>24){case 40:case 41:case 59:break c;default:{}}n=d+1|0;f[a>>2]=n;c=b[n>>0]|0;d=n}if((l|0)!=(d|0)){b[d>>0]=0;g=jRa(a+16|0)|0;fNa(e,l,0);n=XGa(g,f[e>>2]|0,k,0)|0;XKa(n,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0,f[a+12>>2]|0)|0;b[f[a>>2]>>0]=c;c=g;g=46;break}e=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;n=h7a(99347)|0;x=0;va(87,g|0,99347,n|0);n=x;x=0;if(!(n&1)){x=0;wa(138,e|0,g|0,f[a+4>>2]|0,(f[a>>2]|0)-(f[a+8>>2]|0)|0);n=x;x=0;if(n&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(g);if(!d){g=47;break}}else c=Ia()|0;La(e|0);g=47}while(0);if((g|0)==46){u=m;return c|0}else if((g|0)==47)Ua(c|0);return 0}function yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0;s=u;u=u+80|0;m=s+64|0;p=s+60|0;t=s+12|0;r=s;q=s+56|0;l=f[c+4>>2]|0;n=hSa(f[f[c>>2]>>2]|0)|0;U0a(p,a);U0a(m,a);o=qwa(f[m>>2]|0,0)|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;WZ(r,109929,h7a(109929)|0);x=0;ia(59,r|0,f[l>>2]|0)|0;k=x;x=0;do if(k&1){d=Ia()|0;j=11}else{f[t>>2]=f[r>>2];f[t+4>>2]=f[r+4>>2];f[t+8>>2]=f[r+8>>2];d=0;while(1){if((d|0)==3)break;f[r+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,m|0,t|0);k=x;x=0;if(k&1){d=Ia()|0;HTa(t);j=11;break}k=o+8|0;f[k>>2]=f[m>>2];HTa(t);HTa(r);f[f[c>>2]>>2]=o;Kza(t);f[t+36>>2]=f[k>>2];f[t+40>>2]=p;i=t+24|0;d=0;while(1){f[m>>2]=d;if(d>>>0>=(fQa(l)|0)>>>0){j=8;break}x=0;d=ia(80,l|0,d|0)|0;j=x;x=0;if(j&1){j=12;break}x=0;d=ia(96,b|0,d|0)|0;j=x;x=0;if(j&1){j=12;break}x=0;c=ia(149,i|0,m|0)|0;j=x;x=0;if(j&1){j=12;break}f[c>>2]=d;d=(f[m>>2]|0)+1|0}do if((j|0)==8){b=l+8|0;e=l+12|0;h=o+12|0;g=n+8|0;d=0;while(1){f[m>>2]=d;if(d>>>0>=(f[e>>2]|0)-(f[b>>2]|0)>>2>>>0)break;x=0;d=ia(149,i|0,m|0)|0;c=x;x=0;if(c&1){j=24;break}d=f[d>>2]|0;x=0;c=ia(75,g|0,f[m>>2]|0)|0;v=x;x=0;if(v&1){j=24;break}x=0;d=ja(45,p|0,d|0,f[c>>2]|0)|0;v=x;x=0;if(v&1){j=24;break}x=0;ua(81,h|0,d|0);v=x;x=0;if(v&1){j=24;break}d=(f[m>>2]|0)+1|0}if((j|0)==24){d=Ia()|0;break}e=l+20|0;g=l+24|0;b=0;while(1){if(b>>>0>=(f[g>>2]|0)-(f[e>>2]|0)>>2>>>0)break;d=(uZa(l)|0)+b|0;f[m>>2]=d;x=0;d=ia(190,i|0,m|0)|0;v=x;x=0;if(v&1){j=32;break}d=f[d>>2]|0;x=0;c=ia(191,f[(f[e>>2]|0)+(b<<2)>>2]|0,a|0)|0;v=x;x=0;if(v&1){j=32;break}x=0;d=ja(45,p|0,d|0,c|0)|0;v=x;x=0;if(v&1){j=32;break}x=0;ua(81,h|0,d|0);v=x;x=0;if(v&1){j=32;break}b=b+1|0}if((j|0)==32){d=Ia()|0;break}x=0;d=ia(189,f[l+36>>2]|0,a|0)|0;v=x;x=0;do if((!(v&1)?(f[r>>2]=d,x=0,ua(2592,t|0,r|0),v=x,x=0,!(v&1)):0)?(x=0,ua(81,h|0,f[r>>2]|0),v=x,x=0,!(v&1)):0){v=f[n+4>>2]|0;f[o+4>>2]=v;if((v|0)==0?(f[(f[r>>2]|0)+4>>2]|0)==5:0){f[q>>2]=f[k>>2];x=0;f[m>>2]=f[q>>2];d=ka(12,p|0,m|0,0,0)|0;v=x;x=0;if(v&1)break;x=0;ua(81,h|0,d|0);v=x;x=0;if(v&1)break}VKa(t);u=s;return}while(0);d=Ia()|0}else if((j|0)==12)d=Ia()|0;while(0);VKa(t)}while(0);if((j|0)==11)HTa(r);Ua(d|0)}function zh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;t=u;u=u+48|0;q=t+40|0;r=t+36|0;v=t+24|0;m=t;n=t+20|0;s=t+8|0;f[r>>2]=c;h=c;do if(b[a+12>>0]|0){d=yCa(134176,87660)|0;ZXa(q,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[q>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,p=x,x=0,!(p&1)):0){JCa(q);Wq(d,g)|0;du(d)|0;break}v=Ia()|0;JCa(q);Ua(v|0)}while(0);f[v>>2]=0;o=v+4|0;f[o>>2]=0;i=v+8|0;f[i>>2]=0;p=a+160|0;j=a+164|0;k=a+156|0;l=a+4|0;e=c;g=c;while(1){x=0;d=ga(308,a|0)|0;c=x;x=0;if(c&1){e=19;break}f[e+4>>2]=d;x=0;d=ga(309,a|0)|0;c=x;x=0;if(c&1){e=22;break}f[g+8>>2]=d;f[n>>2]=d;d=(f[g+4>>2]|0)!=0&1;f[q>>2]=f[n>>2];cUa(m,q,d);d=f[p>>2]|0;if(d>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1886,k|0,m|0);c=x;x=0;if(c&1){e=23;break}}else{e=m;g=f[e+4>>2]|0;c=d;f[c>>2]=f[e>>2];f[c+4>>2]=g;f[p>>2]=(f[p>>2]|0)+8}d=f[o>>2]|0;if((d|0)==(f[i>>2]|0)){x=0;ua(104,v|0,r|0);h=x;x=0;if(h&1){e=19;break}}else{f[d>>2]=h;f[o>>2]=(f[o>>2]|0)+4}x=0;d=ga(307,a|0)|0;h=x;x=0;if(h&1){e=19;break}if(d<<24>>24!=2){e=24;break}x=0;d=ga(221,f[l>>2]|0)|0;h=x;x=0;if(h&1){e=19;break}f[r>>2]=d;e=d;g=d;h=d}do if((e|0)==19){d=Ia()|0;e=21}else if((e|0)==22)d=Ia()|0;else if((e|0)==23)d=Ia()|0;else if((e|0)==24){x=0;ta(496,a|0);n=x;x=0;if(n&1){d=Ia()|0;e=21;break}h=a+188|0;i=a+192|0;j=a+196|0;k=a+168|0;g=0;while(1){d=f[o>>2]|0;if((d|0)==(f[v>>2]|0)){e=45;break}e=d+-4|0;d=f[e>>2]|0;f[r>>2]=d;f[o>>2]=e;e=f[i>>2]|0;c=e-(f[h>>2]|0)>>2;if(!g)e=d;else{f[q>>2]=g;if((f[j>>2]|0)>>>0<=e>>>0){x=0;ua(1835,h|0,q|0);n=x;x=0;if(n&1){e=32;break}}else{f[e>>2]=g;f[i>>2]=(f[i>>2]|0)+4;d=f[r>>2]|0}e=d}x=0;ta(497,a|0);n=x;x=0;if(n&1){e=38;break}d=(f[i>>2]|0)-(f[h>>2]|0)>>2;if(d>>>0>>0){f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;n=h7a(97463)|0;x=0;va(87,s|0,97463,n|0);n=x;x=0;if(n&1){e=39;break}x=0;ua(1869,a|0,s|0);n=x;x=0;if(n&1){e=40;break}HTa(s)}x=0;wa(143,a|0,e|0,c|0,d|0);n=x;x=0;if(n&1){e=39;break}l=f[r>>2]|0;m=f[l+4>>2]|0;d=l+8|0;n=(AB(k,d)|0)!=0;x=0;va(149,l|0,m|0,n|0);n=x;x=0;if(n&1){e=44;break}f[p>>2]=(f[p>>2]|0)+-8;Y4(k,d);g=e}if((e|0)==32){d=Ia()|0;break}else if((e|0)==38){d=Ia()|0;break}else if((e|0)==39){d=Ia()|0;break}else if((e|0)==40){d=Ia()|0;HTa(s);break}else if((e|0)==44){d=Ia()|0;break}else if((e|0)==45){uSa(v);u=t;return}}while(0);uSa(v);Ua(d|0)}function Ah(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;l=o+8|0;p=o+12|0;h=o;f[l>>2]=c;f[p>>2]=0;m=p+4|0;f[m>>2]=0;i=p+8|0;f[i>>2]=0;j=a+4|0;n=a+20|0;k=a+28|0;e=0;g=0;d=0;while(1){if((e|0)!=(g|0)){x=0;ia(115,f[a>>2]|0,f[j>>2]|0)|0;g=x;x=0;if(g&1){c=5;break}d=f[m>>2]|0}if((d|0)==(f[i>>2]|0)){x=0;ua(104,p|0,l|0);g=x;x=0;if(g&1){c=5;break}}else{f[d>>2]=c;f[m>>2]=(f[m>>2]|0)+4}if(b[n>>0]|0){x=0;d=ia(62,f[a>>2]|0,118454)|0;g=x;x=0;if(g&1){c=5;break}x=0;c=ga(228,f[(f[l>>2]|0)+4>>2]|0)|0;g=x;x=0;if(g&1){c=5;break}x=0;d=ia(62,d|0,c|0)|0;g=x;x=0;if(g&1){c=5;break}x=0;ia(62,d|0,81230)|0;g=x;x=0;if(g&1){c=5;break}}x=0;ia(71,f[a>>2]|0,40)|0;g=x;x=0;if(g&1){c=5;break}GXa(h,f[k>>2]|0,f[a>>2]|0);e=f[l>>2]|0;x=0;ua(641,h|0,e|0);g=x;x=0;if(g&1){c=23;break}x=0;ta(465,a|0);g=x;x=0;if(g&1){c=5;break}if(!(Bbb(f[e+16>>2]|0)|0)){c=24;break}d=e+12|0;x=0;c=ia(75,d|0,0)|0;g=x;x=0;if(g&1){c=5;break}if(!(rab(f[f[c>>2]>>2]|0)|0)){c=24;break}x=0;d=ia(75,d|0,0)|0;g=x;x=0;if(g&1){c=5;break}x=0;c=ga(217,f[d>>2]|0)|0;g=x;x=0;if(g&1){c=5;break}f[l>>2]=c;d=f[m>>2]|0;e=d;g=f[p>>2]|0}do if((c|0)==5)d=Ia()|0;else if((c|0)==23)d=Ia()|0;else if((c|0)==24){c=f[m>>2]|0;j=f[c+-4>>2]|0;d=c;a:while(1){if((d|0)==(f[p>>2]|0)){c=45;break}i=c+-4|0;e=f[i>>2]|0;f[l>>2]=e;f[m>>2]=i;i=e+12|0;h=e+16|0;g=0;while(1){if(g>>>0>=(Bbb(f[h>>2]|0)|0)>>>0)break;if((g|0)==0&(j|0)!=(e|0)){x=0;ta(466,a|0);k=x;x=0;if(k&1){c=30;break a}if(b[n>>0]|0){x=0;ia(62,f[a>>2]|0,75691)|0;k=x;x=0;if(k&1){c=30;break a}x=0;d=ia(75,i|0,0)|0;k=x;x=0;if(k&1){c=40;break a}x=0;d=ga(217,f[d>>2]|0)|0;k=x;x=0;if(k&1){c=40;break a}d=d+8|0;if(Iab(f[d>>2]|0)|0){x=0;c=ia(71,f[a>>2]|0,32)|0;k=x;x=0;if(k&1){c=40;break a}x=0;ia(76,c|0,f[d>>2]|0)|0;k=x;x=0;if(k&1){c=40;break a}}}x=0;ia(71,f[a>>2]|0,10)|0;k=x;x=0;if(k&1){c=30;break a}}else{x=0;d=ia(75,i|0,g|0)|0;k=x;x=0;if(k&1){c=30;break a}x=0;ua(642,a|0,f[d>>2]|0);k=x;x=0;if(k&1){c=30;break a}}g=g+1|0}c=f[m>>2]|0;d=c}if((c|0)==30){d=Ia()|0;break}else if((c|0)==40){d=Ia()|0;break}else if((c|0)==45){x=0;ta(466,a|0);m=x;x=0;do if(!(m&1)){if(b[n>>0]|0){x=0;ia(62,f[a>>2]|0,75691)|0;n=x;x=0;if(n&1)break;if(Iab(f[e+8>>2]|0)|0){x=0;d=ia(71,f[a>>2]|0,32)|0;n=x;x=0;if(n&1)break;x=0;ia(76,d|0,f[e+8>>2]|0)|0;n=x;x=0;if(n&1)break}}uSa(p);u=o;return}while(0);d=Ia()|0;break}}while(0);uSa(p);Ua(d|0)}function Bh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c+4|0;a:while(1){l=b;e=b+-4|0;b:while(1){k=a;d=l-k|0;g=d>>2;switch(g|0){case 1:case 0:break a;case 2:{m=4;break a}case 3:{m=6;break a}case 4:{m=7;break a}case 5:{m=8;break a}default:{}}if((d|0)<124){m=10;break a}i=a+(((g|0)/2|0)<<2)|0;if((d|0)>3996){d=(g|0)/4|0;d=lx(a,a+(d<<2)|0,i,i+(d<<2)|0,e,c)|0}else d=Xx(a,i,e,c)|0;if(Mv(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[i>>2]|0)|0)g=e;else{g=e;do{g=g+-4|0;if((a|0)==(g|0)){m=17;break b}}while(!(Mv(f[c>>2]|0,f[n>>2]|0,f[g>>2]|0,f[i>>2]|0)|0));j=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=j;d=d+1|0}h=a+4|0;c:do if(h>>>0>>0){j=i;while(1){while(1){i=h+4|0;if(Mv(f[c>>2]|0,f[n>>2]|0,f[h>>2]|0,f[j>>2]|0)|0)h=i;else break}do g=g+-4|0;while(!(Mv(f[c>>2]|0,f[n>>2]|0,f[g>>2]|0,f[j>>2]|0)|0));if(h>>>0>g>>>0){g=j;break c}o=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=o;j=(j|0)==(h|0)?g:j;h=i;d=d+1|0}}else g=i;while(0);if((h|0)!=(g|0)?Mv(f[c>>2]|0,f[n>>2]|0,f[g>>2]|0,f[h>>2]|0)|0:0){o=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=o;d=d+1|0}if(!d){g=Hq(a,h,c)|0;d=h+4|0;if(Hq(d,b,c)|0){m=46;break}if(g){e=2;a=d;m=51;break}}o=h;if((o-k|0)>=(l-o|0)){m=50;break}Bh(a,h,c);a=h+4|0}d:do if((m|0)==17){m=0;d=a+4|0;if(!(Mv(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[e>>2]|0)|0)){while(1){if((d|0)==(e|0))break a;if(Mv(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[d>>2]|0)|0)break;d=d+4|0}o=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=o;d=d+4|0}if((d|0)==(e|0))break a;while(1){while(1){g=d+4|0;if(Mv(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[d>>2]|0)|0)break;else d=g}do e=e+-4|0;while(Mv(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[e>>2]|0)|0);if(d>>>0>=e>>>0){e=4;a=d;m=51;break d}o=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=o;d=g}}else if((m|0)==46){e=g?1:2;b=g?b:h;m=51}else if((m|0)==50){m=0;Bh(h+4|0,b,c);b=h}while(0);if((m|0)==51){m=0;switch(e&7){case 2:case 4:case 0:break;default:break a}}}if((m|0)==4){if(Mv(f[c>>2]|0,f[n>>2]|0,f[e>>2]|0,f[a>>2]|0)|0){o=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=o}}else if((m|0)==6)Xx(a,a+4|0,e,c)|0;else if((m|0)==7)gC(a,a+4|0,a+8|0,e,c)|0;else if((m|0)==8)lx(a,a+4|0,a+8|0,a+12|0,e,c)|0;else if((m|0)==10)tF(a,b,c);return}function Ch(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;d=m+12|0;l=m+24|0;g=m;c=f[a+80>>2]|0;b=f[a+76>>2]|0;while(1){if((b|0)==(c|0))break;Hs(f[a>>2]|0,f[b>>2]|0);b=b+4|0}i=a+88|0;c=f[a+92>>2]|0;b=f[i>>2]|0;while(1){if((b|0)==(c|0))break;Ys(f[a>>2]|0,f[b>>2]|0);b=b+4|0}k=f[a>>2]|0;do if(((f[k+40>>2]|0)-(f[k+36>>2]|0)|0)!=((f[a+64>>2]|0)-(f[a+60>>2]|0)|0)){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;WZ(d,95006,h7a(95006)|0);x=0;ua(1869,a|0,d|0);k=x;x=0;if(k&1){b=Ia()|0;HTa(d);break}else{HTa(d);h=11;break}}else h=11;while(0);do if((h|0)==11){b=f[a+40>>2]|0;if((b|0)!=-1){k=vz(a,b)|0;f[(f[a>>2]|0)+116>>2]=k}d=f[a+148>>2]|0;e=a+132|0;c=f[a+144>>2]|0;a:while(1){if((c|0)==(d|0))break;f[l>>2]=f[c>>2];b=e_(e,l)|0;b=f[b>>2]|0;switch(f[(f[l>>2]|0)+8>>2]|0){case 0:{k=vz(a,b)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}case 1:{k=WT(0)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}case 2:{k=WT(0)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}case 3:{k=Gr(a,b)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}default:{f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,95048,h7a(95048)|0);x=0;ua(1869,a|0,g|0);k=x;x=0;if(k&1){h=24;break a}HTa(g);b=f[l>>2]|0}}Xs(f[a>>2]|0,b);c=c+4|0}if((h|0)==24){b=Ia()|0;HTa(g);break}g=a+104|0;c=f[a+100>>2]|0;while(1){if((c|0)==(g|0))break;d=f[c+16>>2]|0;e=f[c+24>>2]|0;b=f[c+20>>2]|0;while(1){if((b|0)==(e|0))break;f[(f[b>>2]|0)+24>>2]=f[f[(f[(f[a>>2]|0)+36>>2]|0)+(d<<2)>>2]>>2];b=b+4|0}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}g=a+116|0;c=f[a+112>>2]|0;while(1){if((c|0)==(g|0))break;d=f[c+16>>2]|0;e=f[c+24>>2]|0;b=f[c+20>>2]|0;while(1){if((b|0)==(e|0))break;f[(f[b>>2]|0)+24>>2]=f[f[(f[i>>2]|0)+(d<<2)>>2]>>2];b=b+4|0}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}k=a+224|0;c=f[a+220>>2]|0;while(1){if((c|0)==(k|0))break;d=f[c+16>>2]|0;e=f[c+24>>2]|0;b=f[c+20>>2]|0;while(1){if((b|0)==(e|0))break;g=f[(f[a>>2]|0)+76>>2]|0;h=vz(a,f[b>>2]|0)|0;f[l>>2]=h;i=g+(d<<4)+8|0;j=f[i>>2]|0;if(j>>>0<(f[g+(d<<4)+12>>2]|0)>>>0){f[j>>2]=h;f[i>>2]=(f[i>>2]|0)+4}else IL(g+(d<<4)+4|0,l);b=b+4|0}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}u=m;return}while(0);Ua(b|0)}function Dh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0.0;k=u;u=u+16|0;i=k;f[i>>2]=c;g=b[c>>0]|0;a:do if(!(UPa(g)|0)){b:do if(Z_a(g)|0)if(g<<24>>24==48){switch(b[c+1>>0]|0){case 88:case 120:break;default:{j=18;break b}}d=c+2|0;f[i>>2]=d;p[a>>3]=0.0;h=0.0;while(1){e=b[d>>0]|0;if((e+-48&255)>=10)if((e+-97&255)>=6)if((e+-65&255)<6)e=-55;else break b;else e=-87;else e=-48;l=h*16.0;p[a>>3]=l;l=l+ +(e+(b[d>>0]|0)|0);p[a>>3]=l;g=d+1|0;f[i>>2]=g;d=g;h=l}}else j=18;else{if(g<<24>>24==46?Z_a(b[c+1>>0]|0)|0:0){j=18;break}if(!(Opa(118307,g)|0)){if(Opa(118325,g)|0){f[a+12>>2]=6;d=c+1|0;j=b[d>>0]|0;b[d>>0]=0;Qf(a,c,0);b[d>>0]=j;f[i>>2]=d;j=57;break a}switch(g<<24>>24){case 39:case 34:{j=c+1|0;d=zWa(j,g<<24>>24)|0;b[d>>0]=0;Qf(a,j,1);d=d+1|0;f[i>>2]=d;f[a+12>>2]=3;j=57;break a}default:{zX(65809,c);hb()}}}do switch(g<<24>>24|0){case 33:{e=(b[c+1>>0]|0)==61?f[33244]|0:f[33251]|0;f[a>>2]=e;break}case 37:{e=f[33242]|0;f[a>>2]=e;break}case 38:{e=f[33253]|0;f[a>>2]=e;break}case 42:{e=f[33241]|0;f[a>>2]=e;break}case 43:{e=f[33256]|0;f[a>>2]=e;break}case 44:{e=f[33221]|0;f[a>>2]=e;break}case 45:{e=f[33255]|0;f[a>>2]=e;break}case 46:{e=f[33215]|0;f[a>>2]=e;break}case 47:{e=f[33243]|0;f[a>>2]=e;break}case 58:{e=f[33219]|0;f[a>>2]=e;break}case 60:{e=b[c+1>>0]|0;e=f[(e<<24>>24==60?132956:e<<24>>24==61?132988:132996)>>2]|0;f[a>>2]=e;break}case 61:{e=(b[c+1>>0]|0)==61?f[33245]|0:f[33210]|0;f[a>>2]=e;break}case 62:{e=b[c+1>>0]|0;if(e<<24>>24==62)e=(b[c+2>>0]|0)==62?132952:132960;else e=e<<24>>24==61?132992:132984;e=f[e>>2]|0;f[a>>2]=e;break}case 63:{e=f[33220]|0;f[a>>2]=e;break}case 94:{e=f[33252]|0;f[a>>2]=e;break}case 124:{e=f[33254]|0;f[a>>2]=e;break}case 126:{e=f[33250]|0;f[a>>2]=e;break}default:hb()}while(0);i=bV(e)|0;e=a+8|0;f[e>>2]=i;i=c+i|0;g=b[i>>0]|0;b[i>>0]=0;if(!(E8(f[a>>2]|0,c)|0)){b[c+(f[e>>2]|0)>>0]=g;f[a+12>>2]=1;break a}else Ca(65781,65740,282,65776)}while(0);if((j|0)==18){h=+k7a(c,i);p[a>>3]=h;d=f[i>>2]|0}e=c;while(1){if((e|0)==(d|0)){j=22;break}if((b[e>>0]|0)==46){e=5;break}else e=e+1|0}if((j|0)==22)if(SYa(h)|0)e=4;else{e=rPa(h)|0;e=e?4:5}f[a+12>>2]=e;if(d>>>0>c>>>0)j=57;else Ca(65728,65740,256,65776)}else{d=c;do{d=d+1|0;f[i>>2]=d;e=b[d>>0]|0}while(H_a(e)|0);if(!(e<<24>>24)){Qf(a,c,1);e=a}else{b[d>>0]=0;Qf(a,c,0);d=f[i>>2]|0;b[d>>0]=e;e=a}j=lBa(132808,e)|0;f[a+12>>2]=j?0:2;j=57}while(0);if((j|0)==57)f[a+8>>2]=d-c;u=k;return}function Eh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+80|0;p=z+72|0;B=z+56|0;A=z+40|0;y=z+24|0;n=z+8|0;l=z;q=z+4|0;f[B>>2]=0;m=B+4|0;f[m>>2]=0;j=B+8|0;f[j>>2]=0;s=b+8|0;I$a(p,s);GUa(A,s);s=a+44|0;k=p+4|0;h=f[A>>2]|0;i=f[A+4>>2]|0;while(1){if(!(lTa(f[p>>2]|0,f[k>>2]|0,h,i)|0)){g=3;break}x=0;d=ga(253,p|0)|0;g=x;x=0;if(g&1){g=16;break}d=f[d>>2]|0;f[y>>2]=d;e=f[m>>2]|0;g=d;if((e|0)==(f[j>>2]|0)){x=0;ua(640,B|0,y|0);e=x;x=0;if(e&1){g=16;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}if(sba(a,g)|0){x=0;va(160,n|0,a|0,g|0);g=x;x=0;if(g&1){g=17;break}d=f[s>>2]|0;x=0;e=ga(320,n|0)|0;g=x;x=0;if(g&1){g=18;break}x=0;d=ja(46,f[d>>2]|0,e|0,1)|0;g=x;x=0;if(g&1){g=18;break}f[l>>2]=d;e=f[m>>2]|0;if(e>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1835,B|0,l|0);g=x;x=0;if(g&1){g=18;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}HCa(n)}RYa(p)}a:do if((g|0)==3){d=f[b+4>>2]|0;b:do if((d|0)!=2){x=0;d=ja(76,f[c+16>>2]|0,B|0,d|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break a}else{BVa(f[a+16>>2]|0,d)|0;break}}else{x=0;va(159,A|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{x=0;va(159,y|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;n=x;x=0;do if((!(n&1)?(x=0,o=ja(76,f[c+16>>2]|0,B|0,1)|0,c=x,x=0,!(c&1)):0)?(x=0,t=ja(45,d|0,e|0,o|0)|0,o=x,x=0,!(o&1)):0){d=f[s>>2]|0;x=0;e=ga(320,y|0)|0;o=x;x=0;if((!(o&1)?(r=f[s>>2]|0,E1a(q,f[33071]|0),x=0,f[p>>2]=f[q>>2],r=ja(41,r|0,p|0,1)|0,q=x,x=0,!(q&1)):0)?(x=0,v=ja(45,d|0,e|0,r|0)|0,r=x,x=0,!(r&1)):0){d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;r=x;x=0;if(!(r&1)?(x=0,w=ja(46,f[d>>2]|0,e|0,1)|0,r=x,x=0,!(r&1)):0){x=0;d=ka(21,f[s>>2]|0,t|0,v|0,w|0)|0;w=x;x=0;do if(!(w&1)){x=0;va(161,a|0,d|0,y|0);w=x;x=0;if(w&1)break;BVa(f[a+16>>2]|0,d)|0;HCa(y);HCa(A);break b}while(0);d=Ia()|0;break}d=Ia()|0;break}d=Ia()|0}else g=41;while(0);if((g|0)==41)d=Ia()|0;HCa(y)}HCa(A)}break a}while(0);uSa(B);u=z;return}else if((g|0)==16){d=Ia()|0;g=21}else if((g|0)==17){d=Ia()|0;g=19}else if((g|0)==18){d=Ia()|0;HCa(n);g=19}while(0);if((g|0)==19)g=21;uSa(B);Ua(d|0)}function Fh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0;t=u;u=u+64|0;j=t+52|0;h=t+48|0;s=t+40|0;l=t+16|0;v=t;i=a+64|0;b=f[i>>2]|0;r=f[b+104>>2]|0;b=f[b+100>>2]|0;e=r;if((r|0)!=(b|0)){c=0;d=0;while(1){if((b|0)==(e|0))break;do if(!(sZa(b)|0))if(zZa(f[f[b>>2]>>2]|0)|0){c=c+1|0;break}else{d=d+1|0;break}while(0);b=b+16|0}e=c+d|0;do if((d+1|0)>>>0>99999){b=yCa(134176,87468)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;r=x;x=0;if(!(r&1)?(x=0,g=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,r=x,x=0,!(r&1)):0){JCa(j);Wq(b,g)|0;du(b)|0;break}v=Ia()|0;JCa(j);Ua(v|0)}while(0);r=A$(a,11)|0;q=f[a+68>>2]|0;f4a(h,e>>>0<99999?e:99999);Yr(q,f[h>>2]|0)|0;f[j>>2]=0;f[s>>2]=a;f[s+4>>2]=j;q=f[i>>2]|0;p=q+100|0;q=q+104|0;c=f[q>>2]|0;b=f[p>>2]|0;while(1){if((b|0)==(c|0))break;if(!(sZa(b)|0)?!(zZa(f[f[b>>2]>>2]|0)|0):0)FQ(s,b);b=b+16|0}g=0;while(1){b=f[p>>2]|0;if(g>>>0>=(f[q>>2]|0)-b>>4>>>0)break;b=b+(g<<4)|0;if(Oya(b)|0){if(((f[j>>2]|0)+2|0)>>>0>=1e5){k=25;break}FQ(s,b)}g=g+1|0}a:do if((k|0)==25){n=Eia((LRa(f[b>>2]|0)|0)+8|0)|0;b=g;o=I;b:while(1){e=f[p>>2]|0;d=(f[q>>2]|0)-e>>4;do{b=b+1|0;if(b>>>0>=d>>>0)break b;c=e+(b<<4)|0}while(!(Oya(c)|0));j=Eia((LRa(f[c>>2]|0)|0)+8|0)|0;m=I;k=(m|0)<(o|0)|(m|0)==(o|0)&j>>>0>>0;n=k?j:n;o=k?m:o}uWa(l);m$a(v,n);k=l+8|0;f[k>>2]=f[v>>2];f[k+4>>2]=f[v+4>>2];f[k+8>>2]=f[v+8>>2];f[k+12>>2]=f[v+12>>2];f[l+4>>2]=1;uQa(v,l);k=v+4|0;l=v+8|0;m=0-n|0;j=g;while(1){i=f[p>>2]|0;c=i;if(j>>>0>=(f[q>>2]|0)-i>>4>>>0){k=32;break}b=c+(j<<4)|0;if(Oya(b)|0){x=0;b=ga(241,f[b>>2]|0)|0;i=x;x=0;if(i&1){k=40;break}x=0;i=ga(252,b+8|0)|0;d=I;h=x;x=0;if(h&1){k=40;break}g=c+(j<<4)+4|0;h=c+(j<<4)+8|0;b=f[h>>2]|0;e=f[g>>2]|0;c=NRa(i|0,d|0,n|0,o|0)|0;c=wOa(c|0,I|0,b-e|0,0)|0;d=I;if((d|0)>0|((d|0)==0?c>>>0>((f[l>>2]|0)-(f[k>>2]|0)|0)>>>0:0)){x=0;ua(94,k|0,c|0);e=x;x=0;if(e&1){k=41;break}c=f[g>>2]|0;b=f[h>>2]|0}else c=e;b=b-c|0;if(b|0)fia((f[k>>2]|0)+i+m|0,c|0,b|0)|0}j=j+1|0}do if((k|0)==32){x=0;ua(1369,s|0,v|0);s=x;x=0;if(s&1){b=Ia()|0;break}else{I_a(v);break a}}else if((k|0)==40)b=Ia()|0;else if((k|0)==41)b=Ia()|0;while(0);I_a(v);Ua(b|0)}while(0);VA(a,r)}u=t;return}function Gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+80|0;p=z+72|0;B=z+56|0;A=z+40|0;y=z+24|0;n=z+8|0;l=z;q=z+4|0;f[B>>2]=0;m=B+4|0;f[m>>2]=0;j=B+8|0;f[j>>2]=0;s=b+8|0;I$a(p,s);GUa(A,s);s=a+44|0;k=p+4|0;h=f[A>>2]|0;i=f[A+4>>2]|0;while(1){if(!(lTa(f[p>>2]|0,f[k>>2]|0,h,i)|0)){g=3;break}x=0;d=ga(253,p|0)|0;g=x;x=0;if(g&1){g=16;break}d=f[d>>2]|0;f[y>>2]=d;e=f[m>>2]|0;g=d;if((e|0)==(f[j>>2]|0)){x=0;ua(640,B|0,y|0);e=x;x=0;if(e&1){g=16;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}if(sba(a,g)|0){x=0;va(160,n|0,a|0,g|0);g=x;x=0;if(g&1){g=17;break}d=f[s>>2]|0;x=0;e=ga(320,n|0)|0;g=x;x=0;if(g&1){g=18;break}x=0;d=ja(46,f[d>>2]|0,e|0,1)|0;g=x;x=0;if(g&1){g=18;break}f[l>>2]=d;e=f[m>>2]|0;if(e>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1835,B|0,l|0);g=x;x=0;if(g&1){g=18;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}HCa(n)}RYa(p)}a:do if((g|0)==3){d=f[b+4>>2]|0;b:do if((d|0)!=2){x=0;d=ja(77,f[c+16>>2]|0,B|0,d|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break a}else{BVa(f[a+16>>2]|0,d)|0;break}}else{x=0;va(159,A|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{x=0;va(159,y|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;n=x;x=0;do if((!(n&1)?(x=0,o=ja(77,f[c+16>>2]|0,B|0,1)|0,c=x,x=0,!(c&1)):0)?(x=0,t=ja(45,d|0,e|0,o|0)|0,o=x,x=0,!(o&1)):0){d=f[s>>2]|0;x=0;e=ga(320,y|0)|0;o=x;x=0;if((!(o&1)?(r=f[s>>2]|0,E1a(q,f[33071]|0),x=0,f[p>>2]=f[q>>2],r=ja(41,r|0,p|0,1)|0,q=x,x=0,!(q&1)):0)?(x=0,v=ja(45,d|0,e|0,r|0)|0,r=x,x=0,!(r&1)):0){d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;r=x;x=0;if(!(r&1)?(x=0,w=ja(46,f[d>>2]|0,e|0,1)|0,r=x,x=0,!(r&1)):0){x=0;d=ka(21,f[s>>2]|0,t|0,v|0,w|0)|0;w=x;x=0;do if(!(w&1)){x=0;va(161,a|0,d|0,y|0);w=x;x=0;if(w&1)break;BVa(f[a+16>>2]|0,d)|0;HCa(y);HCa(A);break b}while(0);d=Ia()|0;break}d=Ia()|0;break}d=Ia()|0}else g=41;while(0);if((g|0)==41)d=Ia()|0;HCa(y)}HCa(A)}break a}while(0);uSa(B);u=z;return}else if((g|0)==16){d=Ia()|0;g=21}else if((g|0)==17){d=Ia()|0;g=19}else if((g|0)==18){d=Ia()|0;HCa(n);g=19}while(0);if((g|0)==19)g=21;uSa(B);Ua(d|0)}function Hh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=u;u=u+112|0;p=m+88|0;i=m+64|0;j=m+36|0;k=m+48|0;l=m+24|0;n=m+12|0;o=m;a:do if((((c-a|0)>2?(b[a>>0]|0)==99:0)?(b[a+1>>0]|0)==118:0)?(e=d+63|0,q=b[e>>0]|0,b[e>>0]=0,h=a+2|0,g=Cc(h,c,d)|0,b[e>>0]=q,!((g|0)==(h|0)|(g|0)==(c|0))):0){if((b[g>>0]|0)!=95){e=Bc(g,c,d)|0;if((e|0)==(g|0)){e=a;break}}else{e=g+1|0;if((e|0)==(c|0)){e=a;break}g=b[e>>0]|0;b:do if(g<<24>>24==69){g=d+4|0;c=f[g>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;N5(c);f[g>>2]=(f[g>>2]|0)+24;break}else{SA(d);break}}else while(1){if(g<<24>>24==69)break b;g=Bc(e,c,d)|0;if((g|0)==(e|0)|(g|0)==(c|0)){e=a;break a}e=g;g=b[g>>0]|0}while(0);e=e+1|0}h=d+4|0;g=f[h>>2]|0;if(((g-(f[d>>2]|0)|0)/24|0)>>>0>=2){eY(p,g+-24|0);c=f[h>>2]|0;g=0;while(1){if((g|0)==-1)break;q=g+-1|0;JJa(c+(q*24|0)|0);g=q}f[h>>2]=c+-24;x=0;ua(3194,o|0,c+-48|0);q=x;x=0;if(q&1)e=Ia()|0;else{x=0;ja(101,o|0,0,123276)|0;q=x;x=0;if(q&1)e=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];g=0;while(1){if((g|0)==3)break;f[o+(g<<2)>>2]=0;g=g+1|0}x=0;ia(215,n|0,124440)|0;q=x;x=0;if(q&1)e=Ia()|0;else{f[l>>2]=f[n>>2];f[l+4>>2]=f[n+4>>2];f[l+8>>2]=f[n+8>>2];g=0;while(1){if((g|0)==3)break;f[n+(g<<2)>>2]=0;g=g+1|0}q=b[p+11>>0]|0;d=q<<24>>24<0;x=0;ja(97,l|0,(d?f[p>>2]|0:p)|0,(d?f[p+4>>2]|0:q&255)|0)|0;q=x;x=0;do if(q&1)e=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];g=0;while(1){if((g|0)==3)break;f[l+(g<<2)>>2]=0;g=g+1|0}x=0;ia(215,k|0,123274)|0;q=x;x=0;if(q&1){e=Ia()|0;HTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];g=0;while(1){if((g|0)==3)break;f[k+(g<<2)>>2]=0;g=g+1|0}NY(i,j);tA((f[h>>2]|0)+-24|0,i);JJa(i);HTa(j);HTa(k);HTa(l);HTa(n);HTa(o);HTa(p);break a}while(0);HTa(l)}HTa(n)}HTa(o)}HTa(p);Ua(e|0)}else e=a}else e=a;while(0);u=m;return e|0}function Ih(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=u;u=u+32|0;F=D+8|0;A=D+4|0;B=D;if(!(FMa(c)|0))Ca(113483,113306,160,113499);C=a+44|0;r=a+64|0;s=a+68|0;t=a+76|0;v=a+80|0;w=F+4|0;y=F+8|0;z=a+72|0;q=a+84|0;a=(TU(C,b)|0)+8|0;a:while(1){a=f[a>>2]|0;if(!a){E=5;break}p=f[a+8>>2]|0;f[A>>2]=p;f[F>>2]=p;o=HH(F,4)|0;l=f[s>>2]|0;m=(l|0)==0;b:do if(!m){h=l+-1|0;k=(h&l|0)==0;if(!k)if(o>>>0>>0)e=o;else e=(o>>>0)%(l>>>0)|0;else e=h&o;d=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!d)E=21;else do{d=f[d>>2]|0;if(!d){E=21;break b}g=f[d+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&h;if((g|0)!=(e|0)){E=21;break b}}}while((f[d+8>>2]|0)!=(p|0))}else{e=0;E=21}while(0);if((E|0)==21){E=0;R6(F,r,o,A);i=+(((f[t>>2]|0)+1|0)>>>0);j=+n[v>>2];do if(m|j*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(i/j))>>>0;x=0;ua(632,r|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){E=27;break a}d=f[s>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&o;break}if(o>>>0>>0){h=d;e=o}else{h=d;e=(o>>>0)%(d>>>0)|0}}else h=l;while(0);d=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!d){g=f[F>>2]|0;f[g>>2]=f[z>>2];f[z>>2]=g;f[(f[r>>2]|0)+(e<<2)>>2]=z;d=f[g>>2]|0;if(d|0){d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[r>>2]|0)+(d<<2)>>2]=g}}else{o=f[F>>2]|0;f[o>>2]=f[d>>2];f[d>>2]=o}f[t>>2]=(f[t>>2]|0)+1}Cm(C,c,p);f[F>>2]=0;f[w>>2]=0;f[y>>2]=0;g=0;e=p;while(1){f[B>>2]=g;d=f[e+12>>2]|0;if(g>>>0>=(f[e+16>>2]|0)-d>>2>>>0)break;d=d+(g<<2)|0;do if((f[d>>2]|0)==(b|0)){f[d>>2]=c;d=f[w>>2]|0;if((d|0)==(f[y>>2]|0)){x=0;ua(524,F|0,B|0);p=x;x=0;if(p&1){E=46;break a}else break}else{f[d>>2]=g;f[w>>2]=d+4;break}}while(0);g=g+1|0;e=f[A>>2]|0}d=f[F>>2]|0;k=f[w>>2]|0;if((d|0)==(k|0)){E=48;break}c:do switch(f[e>>2]|0){case 1:{h=f[e+4>>2]|0;while(1){if((d|0)==(k|0))break c;e=f[d>>2]|0;x=0;g=ia(200,q|0,c|0)|0;p=x;x=0;if(p&1){E=56;break a}x=0;e=ia(201,h|0,e|0)|0;p=x;x=0;if(p&1){E=56;break a}f[e>>2]=g;d=d+4|0}}case 5:case 3:case 2:break;default:{E=57;break a}}while(0);uSa(F)}if((E|0)==5){P4(C,b);u=D;return}else if((E|0)==27){a=Ia()|0;d=f[F>>2]|0;f[F>>2]=0;if(d|0)ubb(d);Ua(a|0)}else if((E|0)==46)a=Ia()|0;else if((E|0)==48){x=0;wa(71,113518,113306,177,113499);x=0;E=49}else if((E|0)==56)a=Ia()|0;else if((E|0)==57){x=0;sa(5);x=0;E=49}if((E|0)==49)a=Ia()|0;uSa(F);Ua(a|0)}function Jh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+4|0;g=m;b=a+16|0;c=f[b>>2]|0;a:do if(c>>>0>1023){f[b>>2]=c+-1024;h=a+4|0;g=f[h>>2]|0;j=f[g>>2]|0;g=g+4|0;f[h>>2]=g;i=a+8|0;b=f[i>>2]|0;c=a+12|0;k=f[c>>2]|0;d=k;do if((b|0)==(k|0)){k=f[a>>2]|0;e=k;if(g>>>0<=k>>>0){b=d-e|0;b=(b|0)==0?1:b>>1;gO(l,b,b>>>2,a+12|0);F8(l,f[h>>2]|0,f[i>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[h>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;Cja(l);b=f[i>>2]|0;break}d=g;c=((d-e>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-d|0;if(!d)b=e;else{fia(e|0,g|0,d|0)|0;b=(f[h>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[i>>2]=l;f[h>>2]=b;b=l}while(0);f[b>>2]=j;f[i>>2]=(f[i>>2]|0)+4}else{k=a+8|0;b=f[k>>2]|0;j=a+4|0;c=b-(f[j>>2]|0)>>2;i=a+12|0;d=f[i>>2]|0;e=d-(f[a>>2]|0)|0;if(c>>>0>2>>>0){if((d|0)!=(b|0)){k=n8(4096)|0;f[l>>2]=k;Dt(a,l);break}g=n8(4096)|0;f[l>>2]=g;lt(a,l);g=f[j>>2]|0;h=f[g>>2]|0;g=g+4|0;f[j>>2]=g;b=f[k>>2]|0;e=f[i>>2]|0;c=e;do if((b|0)==(e|0)){e=f[a>>2]|0;d=e;if(g>>>0<=e>>>0){b=c-d|0;b=(b|0)==0?1:b>>1;gO(l,b,b>>>2,a+12|0);F8(l,f[j>>2]|0,f[k>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[j>>2]|0;f[j>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[k>>2]|0;f[k>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;Cja(l);b=f[k>>2]|0;break}l=g;c=((l-d>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-l|0;if(!d)b=e;else{fia(e|0,g|0,d|0)|0;b=(f[j>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[k>>2]=l;f[j>>2]=b;b=l}while(0);f[b>>2]=h;f[k>>2]=(f[k>>2]|0)+4;break}gO(l,(e|0)==0?1:e>>1,c,a+12|0);x=0;b=ga(212,4096)|0;h=x;x=0;do if(!(h&1)){f[g>>2]=b;x=0;ua(1413,l|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;ubb(b);b=m;break}b=f[k>>2]|0;while(1){if((b|0)==(f[j>>2]|0)){c=23;break}b=b+-4|0;x=0;ua(1414,l|0,b|0);h=x;x=0;if(h&1){c=26;break}}if((c|0)==23){h=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=h;a=l+4|0;f[j>>2]=f[a>>2];f[a>>2]=b;a=l+8|0;j=f[k>>2]|0;f[k>>2]=f[a>>2];f[a>>2]=j;a=l+12|0;k=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=k;Cja(l);break a}else if((c|0)==26){b=Ia()|0;break}}else b=Ia()|0;while(0);Cja(l);Ua(b|0)}while(0);u=m;return}function Kh(a,b){a=a|0;b=b|0;do switch(b|0){case 0:{yCa(a,74587)|0;break}case 2:{yCa(a,74595)|0;break}case 4:{yCa(a,74603)|0;break}case 20:{yCa(a,74614)|0;break}case 1:{yCa(a,74622)|0;break}case 3:{yCa(a,74630)|0;break}case 5:{yCa(a,74638)|0;break}case 21:{yCa(a,74649)|0;break}case 6:{yCa(a,74657)|0;break}case 8:{yCa(a,74665)|0;break}case 10:{yCa(a,74673)|0;break}case 12:{yCa(a,74682)|0;break}case 14:{yCa(a,74692)|0;break}case 16:{yCa(a,74702)|0;break}case 18:{yCa(a,74714)|0;break}case 7:{yCa(a,74723)|0;break}case 9:{yCa(a,74731)|0;break}case 11:{yCa(a,74739)|0;break}case 13:{yCa(a,74748)|0;break}case 15:{yCa(a,74758)|0;break}case 17:{yCa(a,74768)|0;break}case 19:{yCa(a,74780)|0;break}case 22:{yCa(a,74789)|0;break}case 23:{yCa(a,74806)|0;break}case 24:{yCa(a,74823)|0;break}case 25:{yCa(a,74836)|0;break}case 26:{yCa(a,74852)|0;break}case 27:{yCa(a,74868)|0;break}case 28:{yCa(a,74884)|0;break}case 29:{yCa(a,74900)|0;break}case 30:{yCa(a,74916)|0;break}case 31:{yCa(a,74932)|0;break}case 32:{yCa(a,74948)|0;break}case 33:{yCa(a,74964)|0;break}case 34:{yCa(a,74984)|0;break}case 37:{yCa(a,75004)|0;break}case 38:{yCa(a,75022)|0;break}case 35:{yCa(a,75040)|0;break}case 36:{yCa(a,75058)|0;break}case 41:{yCa(a,75076)|0;break}case 42:{yCa(a,75094)|0;break}case 39:{yCa(a,75112)|0;break}case 40:{yCa(a,75130)|0;break}case 43:{yCa(a,75148)|0;break}case 44:{yCa(a,75164)|0;break}case 45:{yCa(a,75179)|0;break}case 46:{yCa(a,75199)|0;break}case 47:{yCa(a,75219)|0;break}case 48:{yCa(a,75233)|0;break}case 49:{yCa(a,75248)|0;break}case 50:{yCa(a,75262)|0;break}case 51:{yCa(a,75277)|0;break}default:hb()}while(0);return}function Lh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+4|0;g=m;b=a+16|0;c=f[b>>2]|0;a:do if(c>>>0>1023){f[b>>2]=c+-1024;h=a+4|0;g=f[h>>2]|0;j=f[g>>2]|0;g=g+4|0;f[h>>2]=g;i=a+8|0;b=f[i>>2]|0;c=a+12|0;k=f[c>>2]|0;d=k;do if((b|0)==(k|0)){k=f[a>>2]|0;e=k;if(g>>>0<=k>>>0){b=d-e|0;b=(b|0)==0?1:b>>1;gO(l,b,b>>>2,a+12|0);F8(l,f[h>>2]|0,f[i>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[h>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;Cja(l);b=f[i>>2]|0;break}d=g;c=((d-e>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-d|0;if(!d)b=e;else{fia(e|0,g|0,d|0)|0;b=(f[h>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[i>>2]=l;f[h>>2]=b;b=l}while(0);f[b>>2]=j;f[i>>2]=(f[i>>2]|0)+4}else{k=a+8|0;b=f[k>>2]|0;j=a+4|0;c=b-(f[j>>2]|0)>>2;i=a+12|0;d=f[i>>2]|0;e=d-(f[a>>2]|0)|0;if(c>>>0>2>>>0){if((d|0)!=(b|0)){k=n8(4096)|0;f[l>>2]=k;Dt(a,l);break}g=n8(4096)|0;f[l>>2]=g;lt(a,l);g=f[j>>2]|0;h=f[g>>2]|0;g=g+4|0;f[j>>2]=g;b=f[k>>2]|0;e=f[i>>2]|0;c=e;do if((b|0)==(e|0)){e=f[a>>2]|0;d=e;if(g>>>0<=e>>>0){b=c-d|0;b=(b|0)==0?1:b>>1;gO(l,b,b>>>2,a+12|0);F8(l,f[j>>2]|0,f[k>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[j>>2]|0;f[j>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[k>>2]|0;f[k>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;Cja(l);b=f[k>>2]|0;break}l=g;c=((l-d>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-l|0;if(!d)b=e;else{fia(e|0,g|0,d|0)|0;b=(f[j>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[k>>2]=l;f[j>>2]=b;b=l}while(0);f[b>>2]=h;f[k>>2]=(f[k>>2]|0)+4;break}gO(l,(e|0)==0?1:e>>1,c,a+12|0);x=0;b=ga(212,4096)|0;h=x;x=0;do if(!(h&1)){f[g>>2]=b;x=0;ua(1497,l|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;ubb(b);b=m;break}b=f[k>>2]|0;while(1){if((b|0)==(f[j>>2]|0)){c=23;break}b=b+-4|0;x=0;ua(1498,l|0,b|0);h=x;x=0;if(h&1){c=26;break}}if((c|0)==23){h=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=h;a=l+4|0;f[j>>2]=f[a>>2];f[a>>2]=b;a=l+8|0;j=f[k>>2]|0;f[k>>2]=f[a>>2];f[a>>2]=j;a=l+12|0;k=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=k;Cja(l);break a}else if((c|0)==26){b=Ia()|0;break}}else b=Ia()|0;while(0);Cja(l);Ua(b|0)}while(0);u=m;return}function Mh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+4|0;g=m;b=a+16|0;c=f[b>>2]|0;a:do if(c>>>0>1023){f[b>>2]=c+-1024;h=a+4|0;g=f[h>>2]|0;j=f[g>>2]|0;g=g+4|0;f[h>>2]=g;i=a+8|0;b=f[i>>2]|0;c=a+12|0;k=f[c>>2]|0;d=k;do if((b|0)==(k|0)){k=f[a>>2]|0;e=k;if(g>>>0<=k>>>0){b=d-e|0;b=(b|0)==0?1:b>>1;gO(l,b,b>>>2,a+12|0);F8(l,f[h>>2]|0,f[i>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[h>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;Cja(l);b=f[i>>2]|0;break}d=g;c=((d-e>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-d|0;if(!d)b=e;else{fia(e|0,g|0,d|0)|0;b=(f[h>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[i>>2]=l;f[h>>2]=b;b=l}while(0);f[b>>2]=j;f[i>>2]=(f[i>>2]|0)+4}else{k=a+8|0;b=f[k>>2]|0;j=a+4|0;c=b-(f[j>>2]|0)>>2;i=a+12|0;d=f[i>>2]|0;e=d-(f[a>>2]|0)|0;if(c>>>0>2>>>0){if((d|0)!=(b|0)){k=n8(4096)|0;f[l>>2]=k;Dt(a,l);break}g=n8(4096)|0;f[l>>2]=g;lt(a,l);g=f[j>>2]|0;h=f[g>>2]|0;g=g+4|0;f[j>>2]=g;b=f[k>>2]|0;e=f[i>>2]|0;c=e;do if((b|0)==(e|0)){e=f[a>>2]|0;d=e;if(g>>>0<=e>>>0){b=c-d|0;b=(b|0)==0?1:b>>1;gO(l,b,b>>>2,a+12|0);F8(l,f[j>>2]|0,f[k>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[j>>2]|0;f[j>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[k>>2]|0;f[k>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;Cja(l);b=f[k>>2]|0;break}l=g;c=((l-d>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-l|0;if(!d)b=e;else{fia(e|0,g|0,d|0)|0;b=(f[j>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[k>>2]=l;f[j>>2]=b;b=l}while(0);f[b>>2]=h;f[k>>2]=(f[k>>2]|0)+4;break}gO(l,(e|0)==0?1:e>>1,c,a+12|0);x=0;b=ga(212,4096)|0;h=x;x=0;do if(!(h&1)){f[g>>2]=b;x=0;ua(1505,l|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;ubb(b);b=m;break}b=f[k>>2]|0;while(1){if((b|0)==(f[j>>2]|0)){c=23;break}b=b+-4|0;x=0;ua(1506,l|0,b|0);h=x;x=0;if(h&1){c=26;break}}if((c|0)==23){h=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=h;a=l+4|0;f[j>>2]=f[a>>2];f[a>>2]=b;a=l+8|0;j=f[k>>2]|0;f[k>>2]=f[a>>2];f[a>>2]=j;a=l+12|0;k=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=k;Cja(l);break a}else if((c|0)==26){b=Ia()|0;break}}else b=Ia()|0;while(0);Cja(l);Ua(b|0)}while(0);u=m;return}function Nh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=a+4|0;i=f[z>>2]|0;y=a+100|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0;j=0;a:while(1){switch(i|0){case 46:{x=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0;j=1}if((x|0)==10){i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0;if((i|0)==48){l=0;j=0;do{i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0;l=wOa(l|0,j|0,-1,-1)|0;j=I}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;g=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else x=24}else x=24;if((x|0)==24){x=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;g=g+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;g=i?g:g+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=wOa(m|0,u|0,1,0)|0;q=i;r=1;p=I}i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(f[y>>2]|0)==0;if(!i)f[z>>2]=(f[z>>2]|0)+-1;if(e){if(!i?(w=f[z>>2]|0,f[z>>2]=w+-1,s|0):0)f[z>>2]=w+-2}else una(a,0);g=+(d|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;while(1){j=j<<4;x=m;m=wOa(m|0,l|0,1,0)|0;if(!((l|0)<0|(l|0)==0&x>>>0<7)){m=j;break}else l=I}}else m=v;if((i|32|0)==112){j=so(a,e)|0;i=I;if((j|0)==0&(i|0)==-2147483648){if(!e){una(a,0);g=0.0;break}if(!(f[y>>2]|0)){j=0;i=0}else{f[z>>2]=(f[z>>2]|0)+-1;j=0;i=0}}}else if(!(f[y>>2]|0)){j=0;i=0}else{f[z>>2]=(f[z>>2]|0)+-1;j=0;i=0}l=hMa(p|0,o|0,2)|0;l=wOa(l|0,I|0,-32,-1)|0;l=wOa(l|0,I|0,j|0,i|0)|0;i=I;if(!m){g=+(d|0)*0.0;break}z=0-c|0;e=((z|0)<0)<<31>>31;if((i|0)>(e|0)|(i|0)==(e|0)&l>>>0>z>>>0){f[33448]=34;g=+(d|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}z=c+-106|0;e=((z|0)<0)<<31>>31;if((i|0)<(e|0)|(i|0)==(e|0)&l>>>0>>0){f[33448]=34;g=+(d|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{z=!(g>=.5);j=j<<1|(z^1)&1;g=g+(z?g:g+-1.0);l=wOa(l|0,i|0,-1,-1)|0;i=I}while((j|0)>-1);n=g;m=j}else n=g;z=((b|0)<0)<<31>>31;c=NRa(32,0,c|0,((c|0)<0)<<31>>31|0)|0;i=wOa(c|0,I|0,l|0,i|0)|0;c=I;if((c|0)<(z|0)|(c|0)==(z|0)&i>>>0>>0)if((i|0)>0)x=65;else{j=0;i=84;x=67}else{i=b;x=65}if((x|0)==65)if((i|0)<53){j=i;i=84-i|0;x=67}else{k=0.0;g=+(d|0)}if((x|0)==67){g=+(d|0);k=+Aab(+YU(1.0,i),g);i=j}d=(m&1|0)==0&(n!=0.0&(i|0)<32);g=(d?0.0:n)*g+(k+g*+((m+(d&1)|0)>>>0))-k;if(!(g!=0.0))f[33448]=34;g=+Hab(g,l)}while(0);return +g}function Oh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+48|0;A=z+24|0;m=z+16|0;v=z+20|0;y=z+4|0;w=z;tab(m);switch(f[b+8>>2]|0){case 16:{E1a(A,f[33072]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 17:{E1a(A,f[33073]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 14:{E1a(A,f[33074]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 15:{E1a(A,f[33075]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 5:{E1a(A,f[33063]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 4:{E1a(A,f[33062]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 3:{E1a(A,f[33059]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 2:{E1a(A,f[33058]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}default:{}}do if((o|0)==10){j=t;s=a+48|0;r=v8a(m)|0;p=a+52|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){k=i+-1|0;l=(k&i|0)==0;if(!l)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=k&r;c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c)o=25;else do{c=f[c>>2]|0;if(!c){o=25;break a}h=f[c+4>>2]|0;if((h|0)!=(r|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){o=25;break a}}}while(!($1a(f[c+8>>2]|0,j)|0))}else{d=0;o=25}while(0);if((o|0)==25){R6(A,s,r,m);j=a+60|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+64>>2];do if(q|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(680,s|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r}else{i=c;d=(r>>>0)%(c>>>0)|0}}while(0);c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+56|0;h=f[A>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[s>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=A;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[s>>2]|0)+(c<<2)>>2]=h;c=A}}else{s=f[A>>2]|0;f[s>>2]=f[c>>2];f[c>>2]=s;c=A}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}c=f[a+44>>2]|0;f[v>>2]=t;f[w>>2]=f[b+12>>2];f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;x=0;ua(168,y|0,1);t=x;x=0;if(t&1){A=Ia()|0;uSa(y);Ua(A|0)}mda(y,w,w+4|0);w=f[b+4>>2]|0;x=0;f[A>>2]=f[v>>2];c=ka(13,c|0,A|0,y|0,w|0)|0;A=x;x=0;if(A&1){A=Ia()|0;uSa(y);Ua(A|0)}else{BVa(f[a+16>>2]|0,c)|0;uSa(y);break}}while(0);u=z;return}function Ph(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0;t=u;u=u+80|0;k=t+32|0;p=t+56|0;g=t+16|0;h=t+72|0;i=t+68|0;j=t+64|0;q=t;r=t+60|0;s=t+52|0;n=t+48|0;o=b+8|0;l=b+12|0;m=b+24|0;while(1){if(l$a(f[l>>2]|0)|0)break;e=MCa(o)|0;if(!($1a(f[e>>2]|0,f[m>>2]|0)|0))break;MEa(o)}c=0;while(1){if(c>>>0>=(Bbb(f[l>>2]|0)|0)>>>0)break;e=JDa(o,c)|0;if(!($1a(f[e>>2]|0,f[m>>2]|0)|0))break;c=c+1|0}if(c|0){d=c;while(1){e=Bbb(f[l>>2]|0)|0;if(d>>>0>=e>>>0)break;v=JDa(o,d)|0;e=JDa(o,d-c|0)|0;f[e>>2]=f[v>>2];d=d+1|0}H7(o,e-c|0);v=f[a+36>>2]|0;Bbb(v)|0;U0a(p,v);v=b+28|0;e=f[v>>2]|0;m$a(g,c);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];g=a0(p,k)|0;g=Fpa(f[p>>2]|0,1,e,g)|0;f[v>>2]=g}a:do if(!(f[b+32>>2]|0)){c=f[l>>2]|0;d=Bbb(c)|0;switch(d|0){case 0:{v=f[a+36>>2]|0;Bbb(v)|0;U0a(p,v);v=gNa(f[p>>2]|0,f[b+28>>2]|0)|0;f[h>>2]=f[b+24>>2];f[k>>2]=f[h>>2];v=Dpa(p,v,Qma(p,k,0,0)|0)|0;BVa(f[a+16>>2]|0,v)|0;break a}case 1:{s=f[a+36>>2]|0;Bbb(s)|0;U0a(p,s);s=f[b+28>>2]|0;f[i>>2]=f[b+24>>2];f[k>>2]=f[i>>2];v=Qma(p,k,0,0)|0;r=uMa(o)|0;f[j>>2]=f[r>>2];f[k>>2]=f[j>>2];v=Cqa(p,s,v,Qma(p,k,0,0)|0)|0;BVa(f[a+16>>2]|0,v)|0;break a}default:{v=f[a+40>>2]|0;Bbb(v)|0;v=(f[v+28>>2]|0)>0;if((d>>>0<13|v^1)&(v|d>>>0<128))break a;d=1;while(1){if(d>>>0>=(c+-1|0)>>>0)break;v=JDa(o,d)|0;if(_1a(f[v>>2]|0,f[m>>2]|0)|0)break a;d=d+1|0;c=f[l>>2]|0}v=f[a+36>>2]|0;Bbb(v)|0;U0a(p,v);v=f[a+32>>2]|0;Bbb(v)|0;v=xka(v,1)|0;j=f[p>>2]|0;m=nBa(j,v,f[b+28>>2]|0)|0;v=NKa(j,v,1)|0;m$a(q,(Bbb(f[l>>2]|0)|0)+-1|0);f[k>>2]=f[q>>2];f[k+4>>2]=f[q+4>>2];f[k+8>>2]=f[q+8>>2];f[k+12>>2]=f[q+12>>2];q=a0(p,k)|0;q=Fpa(f[p>>2]|0,15,v,q)|0;v=MCa(o)|0;f[r>>2]=f[v>>2];f[k>>2]=f[r>>2];v=Qma(p,k,0,0)|0;f[s>>2]=f[b+24>>2];f[k>>2]=f[s>>2];v=Cqa(p,q,v,Qma(p,k,0,0)|0)|0;s=uMa(o)|0;f[n>>2]=f[s>>2];f[k>>2]=f[n>>2];v=Cqa(p,m,v,Qma(p,k,0,0)|0)|0;BVa(f[a+16>>2]|0,v)|0;break a}}}while(0);u=t;return}function Qh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;h=n+4|0;k=n+8|0;j=n;f[h>>2]=c;e=f[c>>2]|0;m=a+48|0;d=f[e>>2]|0;g=c;a:do if(J6a(d)|0){d=a+52|0;f[d>>2]=f[m>>2];l=(WRa(e)|0)+16|0;if(f[l>>2]|0){VQa(a);break}c=f[d>>2]|0;if((c|0)==(f[a+56>>2]|0)){IL(m,h);break}else{f[c>>2]=g;f[d>>2]=(f[d>>2]|0)+4;break}}else{if(w6a(d)|0){c=f[m>>2]|0;d=a+52|0;f[d>>2]=c;if((f[a+56>>2]|0)==(c|0)){IL(m,h);break}else{f[c>>2]=g;f[d>>2]=(f[d>>2]|0)+4;break}}if(vab(d)|0){e=qSa(e)|0;if((f[(f[e+8>>2]|0)+4>>2]|0)==5){n0a(a);break}g=e+16|0;if(!(f[g>>2]|0)){VQa(a);break}h=a+64|0;l=f[h>>2]|0;c=l;if((l|0)==(f[a+60>>2]|0))Ca(91319,91090,86,91344);d=c+-12|0;f[k>>2]=0;i=k+4|0;f[i>>2]=0;o=k+8|0;f[o>>2]=0;f[k>>2]=f[d>>2];l=c+-8|0;f[i>>2]=f[l>>2];c=c+-4|0;f[o>>2]=f[c>>2];f[c>>2]=0;f[l>>2]=0;f[d>>2]=0;d=f[h>>2]|0;c=0;while(1){if((c|0)==-1)break;o=c+-1|0;uSa(d+(o*12|0)|0);c=o}f[h>>2]=d+-12;if((f[(f[e+12>>2]|0)+4>>2]|0)!=0?(f[(f[g>>2]|0)+4>>2]|0)!=0:0)d=25;else d=22;do if((d|0)==22){x=0;ta(489,k|0);o=x;x=0;if(!(o&1)?(x=0,ta(490,a|0),o=x,x=0,!(o&1)):0){d=25;break}c=Ia()|0}while(0);do if((d|0)==25){h=f[i>>2]|0;i=a+52|0;d=a+56|0;c=f[k>>2]|0;while(1){if((c|0)==(h|0)){d=27;break}e=f[c>>2]|0;f[j>>2]=e;g=f[i>>2]|0;if((g|0)==(f[d>>2]|0)){x=0;ua(1751,m|0,j|0);o=x;x=0;if(o&1){d=32;break}}else{f[g>>2]=e;f[i>>2]=(f[i>>2]|0)+4}c=c+4|0}if((d|0)==27){uSa(k);break a}else if((d|0)==32){c=Ia()|0;break}}while(0);uSa(k);Ua(c|0)}if(!(rab(d)|0)){if(V6a(d)|0){VQa(a);break}if(Fab(d)|0)break;c=d$a(e)|0;n0a(a);if(!c)break;Ph(a,c);break}l=XRa(e)|0;j=f[l+8>>2]|0;if(Iab(j)|0){k=(f[a+52>>2]|0)-(f[m>>2]|0)>>2;a=a+44|0;i=0;c=0;while(1){if((i|0)==(k|0))break;d=f[m>>2]|0;g=f[d+(i<<2)>>2]|0;h=n$a(f[g>>2]|0)|0;e=g;if((h|0)!=0?$1a(f[h+8>>2]|0,j)|0:0){d=f[h+12>>2]|0;if(!d)pVa(h);else f[g>>2]=d;b[a>>0]=1;c=c+1|0}else if(!c)c=0;else f[d+(i-c<<2)>>2]=e;i=i+1|0}if(c|0)cba(m,k-c|0);d=l+12|0;c=l+16|0;while(1){if(!(Bbb(f[c>>2]|0)|0))break a;o=MCa(d)|0;if(!(V6a(f[f[o>>2]>>2]|0)|0))break a;d7(d,(Bbb(f[c>>2]|0)|0)+-1|0);b[a>>0]=1}}}while(0);u=n;return}function Rh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+208|0;j=m+192|0;n=m;i=m+188|0;k=m+184|0;c=a+92|0;d=n+104|0;l=n+4|0;f[n>>2]=33580;f[d>>2]=33600;Gaa(n+104|0,l);f[n+176>>2]=0;f[n+180>>2]=-1;f[n>>2]=41940;f[d>>2]=41960;x=0;ta(476,l|0);h=x;x=0;do if(h&1)c=Ia()|0;else{if((Ez(l,(b[c+11>>0]|0)<0?f[c>>2]|0:c,16)|0)==0?(h=n+(f[(f[n>>2]|0)+-12>>2]|0)|0,x=0,ua(100,h|0,f[h+16>>2]|4|0),h=x,x=0,h&1):0){c=Ia()|0;DU(l);break}h=a+64|0;e=f[h>>2]|0;g=f[e+16>>2]|0;e=f[e+12>>2]|0;while(1){if((e|0)==(g|0)){d=9;break}c=f[e>>2]|0;if(!(f[c+12>>2]|0)){f[i>>2]=f[c>>2];x=0;f[j>>2]=f[i>>2];c=ia(134,a|0,j|0)|0;d=x;x=0;if(d&1){d=20;break}x=0;c=ia(113,n|0,c|0)|0;d=x;x=0;if(d&1){d=20;break}x=0;c=ia(62,c|0,116870)|0;d=x;x=0;if(d&1){d=20;break}x=0;d=ia(62,c|0,f[f[e>>2]>>2]|0)|0;c=x;x=0;if(c&1){d=20;break}ZXa(j,n+(f[(f[n>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(o&1){d=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;o=x;x=0;if(o&1){d=17;break}JCa(j);x=0;ia(79,d|0,c|0)|0;o=x;x=0;if(o&1){d=20;break}x=0;ga(227,d|0)|0;o=x;x=0;if(o&1){d=20;break}}e=e+4|0}do if((d|0)==9){e=f[h>>2]|0;g=f[e+40>>2]|0;e=f[e+36>>2]|0;while(1){if((e|0)==(g|0)){d=23;break}f[k>>2]=f[f[e>>2]>>2];x=0;f[j>>2]=f[k>>2];c=ia(134,a|0,j|0)|0;o=x;x=0;if(o&1){d=36;break}x=0;c=ia(113,n|0,c|0)|0;o=x;x=0;if(o&1){d=36;break}x=0;c=ia(62,c|0,116870)|0;o=x;x=0;if(o&1){d=36;break}x=0;d=ia(62,c|0,f[f[e>>2]>>2]|0)|0;o=x;x=0;if(o&1){d=36;break}ZXa(j,n+(f[(f[n>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(o&1){d=32;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;o=x;x=0;if(o&1){d=32;break}JCa(j);x=0;ia(79,d|0,c|0)|0;o=x;x=0;if(o&1){d=36;break}x=0;ga(227,d|0)|0;o=x;x=0;if(o&1){d=36;break}e=e+4|0}if((d|0)==23){x=0;c=ga(284,l|0)|0;o=x;x=0;do if(!(o&1)){if((c|0)==0?(o=n+(f[(f[n>>2]|0)+-12>>2]|0)|0,x=0,ua(100,o|0,f[o+16>>2]|4|0),o=x,x=0,o&1):0)break;rOa(n);u=m;return}while(0);c=Ia()|0;break}else if((d|0)==32){c=Ia()|0;JCa(j);break}else if((d|0)==36){c=Ia()|0;break}}else if((d|0)==17){c=Ia()|0;JCa(j)}else if((d|0)==20)c=Ia()|0;while(0);rOa(n);Ua(c|0)}while(0);m1a(d);Ua(c|0)}function Sh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;p=u;u=u+48|0;t=p+32|0;r=p+16|0;q=p;o=c+12|0;do if(Bbb(f[c+16>>2]|0)|0){d=c+4|0;if((f[d>>2]|0)==2)f[d>>2]=1;d=a+108|0;e=AB(d,c+8|0)|0;i=MCa(o)|0;if(!(sba(a,f[i>>2]|0)|0)){if(!e)break;Tl(a,c,e+12|0);break}g=MCa(o)|0;SN(t,a,f[g>>2]|0);g=(e|0)==0;a:do if(!g){h=e+12|0;x=0;i=ja(78,h|0,f[t>>2]|0,b[t+8>>0]|0)|0;v=x;x=0;if(v&1){d=Ia()|0;s=40;break}if(!i){x=0;ua(2491,r|0,h|0);v=x;x=0;if(v&1)d=Ia()|0;else{x=0;va(159,q|0,a|0,1);v=x;x=0;if(v&1)d=Ia()|0;else{ZR(d,e);h=a+44|0;d=f[h>>2]|0;x=0;e=ga(320,q|0)|0;v=x;x=0;b:do if((!(v&1)?(x=0,j=ga(218,o|0)|0,v=x,x=0,!(v&1)):0)?(x=0,n=ja(45,d|0,e|0,f[j>>2]|0)|0,v=x,x=0,!(v&1)):0){d=f[h>>2]|0;x=0;e=ga(320,r|0)|0;v=x;x=0;do if((!(v&1)?(k=f[h>>2]|0,x=0,l=ga(320,t|0)|0,v=x,x=0,!(v&1)):0)?(x=0,m=ja(46,f[k>>2]|0,l|0,1)|0,v=x,x=0,!(v&1)):0){x=0;g=ja(45,d|0,e|0,m|0)|0;v=x;x=0;if(v&1)break;d=f[h>>2]|0;x=0;e=ga(320,q|0)|0;v=x;x=0;do if(!(v&1)){x=0;d=ja(46,f[d>>2]|0,e|0,1)|0;v=x;x=0;if(v&1)break;x=0;e=ka(21,f[h>>2]|0,n|0,g|0,d|0)|0;v=x;x=0;if(v&1)break;x=0;d=ga(218,o|0)|0;v=x;x=0;if(v&1)break;f[d>>2]=e;x=0;va(161,a|0,c|0,r|0);v=x;x=0;if(v&1)break;HCa(q);HCa(r);s=30;break a}while(0);d=Ia()|0;break b}while(0);d=Ia()|0}else s=34;while(0);if((s|0)==34)d=Ia()|0;HCa(q)}HCa(r)}s=40}else s=10}else s=10;while(0);do if((s|0)==10){x=0;va(161,a|0,c|0,t|0);v=x;x=0;if(v&1){d=Ia()|0;s=40;break}if(g)s=30;else{ZR(d,e);s=30}}while(0);if((s|0)==30){HCa(t);break}else if((s|0)==40){HCa(t);Ua(d|0)}}while(0);u=p;return}function Th(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+80|0;b=n+76|0;i=n+72|0;j=n+68|0;k=n+56|0;h=n+40|0;e=n+12|0;m=n+24|0;o=n;l=a+16|0;a:do if(f[l>>2]|0){f[b>>2]=a;f[i>>2]=a;f[j>>2]=a;f[k>>2]=a;f[k+4>>2]=b;f[k+8>>2]=j;f[h>>2]=b;f[h+4>>2]=j;f[h+8>>2]=i;f[h+12>>2]=a;b:do if(DC(k,99036)|0){Gca(f[b>>2]|0);Nm(f[(f[j>>2]|0)+16>>2]|0,91);do if(!(Qja(f[i>>2]|0,93)|0)){g=a+244|0;while(1){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[m+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1882,h|0,m|0);e=x;x=0;if(e&1){c=22;break}p=f[a>>2]|0;c=p+132|0;d=p+136|0;b=f[d>>2]|0;e=(b-(f[c>>2]|0)|0)/12|0;if((f[p+140>>2]|0)==(b|0)){x=0;ua(90,c|0,m|0);p=x;x=0;if(p&1){c=23;break}}else{x=0;ua(88,b|0,m|0);p=x;x=0;if(p&1){c=23;break}f[d>>2]=(f[d>>2]|0)+12}x=0;b=ia(68,g|0,m|0)|0;p=x;x=0;if(p&1){c=23;break}f[b>>2]=e;HTa(m);if(!(Qja(f[i>>2]|0,44)|0)){c=21;break}}if((c|0)==21){Nm(f[(f[j>>2]|0)+16>>2]|0,93);break}else if((c|0)==22)b=Ia()|0;else if((c|0)==23)b=Ia()|0;HTa(m);break b}while(0);if(DC(k,99083)|0){Nm(f[(f[j>>2]|0)+16>>2]|0,34);if(Qja(f[i>>2]|0,34)|0)b=0;else{b=bp(f[l>>2]|0)|0;m=bp(f[l>>2]|0)|0;o=(bp(f[l>>2]|0)|0)+1|0;p=bp(f[l>>2]|0)|0;f[a+24>>2]=m;f[a+28>>2]=o;f[a+32>>2]=p}f[a+20>>2]=b;break a}d=Ea(12)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;p=h7a(99092)|0;x=0;va(87,o|0,99092,p|0);p=x;x=0;if(!(p&1)){x=0;ua(1881,d|0,o|0);p=x;x=0;if(p&1)c=1;else{x=0;va(98,d|0,34672,495);x=0;c=0}b=Ia()|0;HTa(o);if(!c)break}else b=Ia()|0;La(d|0)}else{d=Ea(12)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;p=h7a(99044)|0;x=0;va(87,e|0,99044,p|0);p=x;x=0;if(!(p&1)){x=0;ua(1881,d|0,e|0);p=x;x=0;if(p&1)c=1;else{x=0;va(98,d|0,34672,495);x=0;c=0}b=Ia()|0;HTa(e);if(!c)break}else b=Ia()|0;La(d|0)}while(0);Ua(b|0)}while(0);u=n;return}function Uh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=u;u=u+112|0;p=j+100|0;k=j+88|0;l=j+48|0;m=j+36|0;n=j+24|0;o=j;i=j+12|0;g=f[33181]|0;f[33181]=g+1;BY(p,g);g=p+11|0;h=p+4|0;while(1){e=b[g>>0]|0;if((e<<24>>24<0?f[h>>2]|0:e&255)>>>0>=3){e=14;break}x=0;ua(1284,k|0,p|0);e=x;x=0;if(e&1){e=13;break}if((b[g>>0]|0)<0){T0a(f[p>>2]|0,0);f[h>>2]=0}else{T0a(p,0);b[g>>0]=0}x=0;ta(470,p|0);e=x;x=0;if(e&1){e=8;break}f[p>>2]=f[k>>2];f[p+4>>2]=f[k+4>>2];f[p+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}HTa(k)}if((e|0)==8){o=Ja(0)|0;r2a(o)}else if((e|0)==13)d=Ia()|0;else if((e|0)==14){f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;d=h7a(86921)|0;x=0;va(87,o|0,86921,d|0);d=x;x=0;a:do if(d&1){d=Ia()|0;e=42}else{g=b[g>>0]|0;d=g<<24>>24<0;x=0;ja(49,o|0,(d?f[p>>2]|0:p)|0,(d?f[h>>2]|0:g&255)|0)|0;h=x;x=0;if(h&1)d=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];d=0;while(1){if((d|0)==3)break;f[o+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,n|0,123398)|0;h=x;x=0;if(h&1)d=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,m|0,a|0)|0;a=x;x=0;do if(a&1)d=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,l|0,86926)|0;a=x;x=0;if(a&1){d=Ia()|0;HTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];d=0;while(1){if((d|0)==3)break;f[l+(d<<2)>>2]=0;d=d+1|0}HTa(l);HTa(m);HTa(n);HTa(o);fR(l);k6a(l);x=0;ua(88,i|0,k|0);o=x;x=0;do if(!(o&1)){x=0;va(116,l|0,c|0,i|0);o=x;x=0;if(o&1){d=Ia()|0;HTa(i);break}else{HTa(i);Sua(l);HTa(k);HTa(p);u=j;return}}else d=Ia()|0;while(0);Sua(l);HTa(k);break a}while(0);HTa(m)}HTa(n)}HTa(o);e=42}while(0)}HTa(p);Ua(d|0)}function Vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+48|0;A=z+24|0;B=z+4|0;y=z;LF(a+84|0,b,Bbb(f[a+36>>2]|0)|0);o=a+208|0;p=a+212|0;uk(a+44|0,f[o>>2]|0,f[p>>2]|0);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=1065353216;p=f[p>>2]|0;q=a+64|0;r=a+68|0;v=a+76|0;s=a+80|0;t=a+72|0;o=f[o>>2]|0;a:while(1){if((o|0)==(p|0)){w=3;break}i=f[o>>2]|0;f[y>>2]=i;f[A>>2]=i;m=HH(A,4)|0;e=f[r>>2]|0;l=(e|0)==0;b:do if(!l){j=e+-1|0;k=(j&e|0)==0;if(!k)if(m>>>0>>0)c=m;else c=(m>>>0)%(e>>>0)|0;else c=j&m;b=f[(f[q>>2]|0)+(c<<2)>>2]|0;if(!b)w=19;else do{b=f[b>>2]|0;if(!b){w=19;break b}d=f[b+4>>2]|0;if((d|0)!=(m|0)){if(!k){if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0}else d=d&j;if((d|0)!=(c|0)){w=19;break b}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;w=19}while(0);if((w|0)==19){w=0;x=0;wa(150,A|0,q|0,m|0,y|0);k=x;x=0;if(k&1){w=39;break}g=+(((f[v>>2]|0)+1|0)>>>0);h=+n[s>>2];do if(l|h*+(e>>>0)>>0<3|(e+-1&e|0)!=0)&1;k=~~+W(+(g/h))>>>0;x=0;ua(632,q|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){w=26;break a}b=f[r>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&m;break}if(m>>>0>>0){e=b;c=m}else{e=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[q>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[A>>2]|0;f[d>>2]=f[t>>2];f[t>>2]=d;f[(f[q>>2]|0)+(c<<2)>>2]=t;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;if(c&e){if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0}else b=b&c;f[(f[q>>2]|0)+(b<<2)>>2]=d}}else{m=f[A>>2]|0;f[m>>2]=f[b>>2];f[b>>2]=m}f[v>>2]=(f[v>>2]|0)+1}o=o+4|0}do if((w|0)==3){b=a+72|0;c=a+64|0;while(1){if(!(f[v>>2]|0))break;s=f[b>>2]|0;t=f[s+8>>2]|0;x4(c,s);x=0;ua(2830,a|0,t|0);t=x;x=0;if(t&1){w=43;break}}if((w|0)==43){b=Ia()|0;break}d=f[a+192>>2]|0;e=a+108|0;c=f[a+188>>2]|0;while(1){if((c|0)==(d|0)){w=46;break}f[A>>2]=f[c>>2];x=0;b=ia(199,e|0,A|0)|0;w=x;x=0;if(w&1){w=51;break}b=f[b>>2]|0;f[y>>2]=b;if(Vz(B,y)|0){if(!(rab(f[b>>2]|0)|0)){w=50;break}f[(f[A>>2]|0)+12>>2]=f[b+4>>2]}c=c+4|0}if((w|0)==46){NQa(B);u=z;return}else if((w|0)==50){x=0;wa(71,113291,113306,75,115764);x=0;b=Ia()|0}else if((w|0)==51)b=Ia()|0}else if((w|0)==26){b=Ia()|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)ubb(c);w=40}else if((w|0)==39){b=Ia()|0;w=40}while(0);NQa(B);Ua(b|0)}function Wh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+48|0;n=p+32|0;q=p+4|0;l=p;o=p+16|0;m=a+12|0;do if(b[m>>0]|0){e=yCa(134176,98052)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){JCa(n);Wq(e,d)|0;du(e)|0;break}q=Ia()|0;JCa(n);Ua(q|0)}while(0);k=nq(a)|0;do if(b[m>>0]|0){c=zm(yCa(134176,97877)|0,k)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(n);Wq(c,g)|0;du(c)|0;break}q=Ia()|0;JCa(n);Ua(q|0)}while(0);yUa(q);g=a+132|0;h=a+148|0;i=a+152|0;j=a+144|0;e=0;while(1){if(e>>>0>=k>>>0){d=13;break}if(b[m>>0]|0){x=0;d=ia(62,134176,97883)|0;c=x;x=0;if(c&1){d=21;break}ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;r=x;x=0;if(r&1){d=18;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;r=x;x=0;if(r&1){d=18;break}JCa(n);x=0;ia(79,d|0,c|0)|0;r=x;x=0;if(r&1){d=21;break}x=0;ga(227,d|0)|0;r=x;x=0;if(r&1){d=21;break}}x=0;c=ga(212,12)|0;r=x;x=0;if(r&1){d=29;break}c1a(c);f[l>>2]=c;x=0;c=ga(305,a|0)|0;r=x;x=0;if(r&1){d=30;break}f[f[l>>2]>>2]=c;c=f[l>>2]|0;if(K5(q,c)|0){f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;r=h7a(98067)|0;x=0;va(87,o|0,98067,r|0);r=x;x=0;if(r&1){d=29;break}x=0;ua(1869,a|0,o|0);r=x;x=0;if(r&1){d=31;break}HTa(o);c=f[l>>2]|0}x=0;wa(82,n|0,q|0,c|0,c|0);r=x;x=0;if(r&1){d=29;break}x=0;c=ga(302,a|0)|0;r=x;x=0;if(r&1){d=29;break}f[(f[l>>2]|0)+8>>2]=c;x=0;c=ga(302,a|0)|0;r=x;x=0;if(r&1){d=40;break}x=0;d=ia(174,g|0,l|0)|0;r=x;x=0;if(r&1){d=40;break}f[d>>2]=c;c=f[h>>2]|0;if((c|0)==(f[i>>2]|0)){x=0;ua(1884,j|0,l|0);r=x;x=0;if(r&1){d=40;break}}else{f[c>>2]=f[l>>2];f[h>>2]=(f[h>>2]|0)+4}e=e+1|0}if((d|0)==13){MTa(q);u=p;return}else if((d|0)==18){c=Ia()|0;JCa(n);d=22}else if((d|0)==21){c=Ia()|0;d=22}else if((d|0)==29){c=Ia()|0;d=41}else if((d|0)==30){c=Ia()|0;d=41}else if((d|0)==31){c=Ia()|0;HTa(o);d=41}else if((d|0)==40){c=Ia()|0;d=41}MTa(q);Ua(c|0)}function Xh(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;k=e&1;a:do if(e){switch(d<<24>>24){case 18:{e=1;g=1;break}case 19:{e=1;g=2;break}case 16:{e=1;g=4;break}case 20:{e=2;g=1;break}case 21:{e=2;g=2;break}case 22:{e=2;g=4;break}case 17:{e=2;g=8;break}default:{d=0;break a}}d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=g;f[d+4>>2]=e;b[d+9>>0]=0;if(!(b[a+12>>0]|0))g=34;else{e=yCa(134176,97107)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[j>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,i=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,h=x,x=0,!(h&1)):0){JCa(j);Wq(e,i)|0;du(e)|0;g=34;break}l=Ia()|0;JCa(j);Ua(l|0)}}else{do switch(d<<24>>24){case 44:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=1;b[d+9>>0]=1;break}case 45:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=1;b[d+9>>0]=0;break}case 46:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=1;b[d+9>>0]=1;break}case 47:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=1;b[d+9>>0]=0;break}case 40:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=1;break}case 48:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=2;b[d+9>>0]=1;break}case 49:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=2;b[d+9>>0]=0;break}case 50:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=2;b[d+9>>0]=1;break}case 51:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=2;b[d+9>>0]=0;break}case 52:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=2;b[d+9>>0]=1;break}case 53:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=2;b[d+9>>0]=0;break}case 41:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=8;f[d+4>>2]=2;break}case 42:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=3;break}case 43:{d=kWa(f[a+4>>2]|0)|0;b[d+8>>0]=8;f[d+4>>2]=4;break}default:{d=0;break a}}while(0);if(!(b[a+12>>0]|0))g=34;else{e=yCa(134176,110809)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[j>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,i=x,x=0,!(i&1)):0){JCa(j);Wq(e,h)|0;du(e)|0;g=34;break}l=Ia()|0;JCa(j);Ua(l|0)}}while(0);if((g|0)==34){b[d+20>>0]=k;JF(a,d+16|0,d+12|0);k=dk(a)|0;f[d+24>>2]=k;JWa(d);f[c>>2]=d;d=1}u=l;return d|0}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;w=u;u=u+48|0;s=w+40|0;p=w+36|0;o=w+16|0;e=w;q=w+32|0;r=w+28|0;t=w+12|0;U0a(p,c);v=n8(88)|0;aX(v);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,109779,h7a(109779)|0);x=0;ia(59,e|0,f[b>>2]|0)|0;n=x;x=0;do if(n&1)d=Ia()|0;else{f[o>>2]=f[e>>2];f[o+4>>2]=f[e+4>>2];f[o+8>>2]=f[e+8>>2];d=0;while(1){if((d|0)==3)break;f[e+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,s|0,o|0);n=x;x=0;if(n&1){d=Ia()|0;HTa(o);break}f[v>>2]=f[s>>2];HTa(o);HTa(e);d=nSa(c+144|0)|0;f[d+24>>2]=f[b>>2];i=b+4|0;f[d+4>>2]=f[i>>2];j=f[b+12>>2]|0;k=d+8|0;l=v+8|0;m=v+12|0;n=v+16|0;h=f[b+8>>2]|0;while(1){if((h|0)==(j|0))break;g=f[h>>2]|0;f[s>>2]=g;do if((g|0)==2){e=(f[m>>2]|0)-(f[l>>2]|0)>>2;aaa(k,_la(p,e,e+1|0)|0);f[o>>2]=1;e=f[m>>2]|0;b=f[n>>2]|0;if(e>>>0>>0){f[e>>2]=1;g=e+4|0;f[m>>2]=g;e=b}else{IL(l,o);g=f[m>>2]|0;e=f[n>>2]|0}f[o>>2]=1;if(g>>>0>>0){f[g>>2]=1;f[m>>2]=g+4}else IL(l,o)}else{b=(f[m>>2]|0)-(f[l>>2]|0)>>2;e=f[p>>2]|0;if((g|0)!=3){aaa(k,NKa(e,b,g)|0);e=f[m>>2]|0;if((e|0)==(f[n>>2]|0)){IL(l,s);break}else{f[e>>2]=g;f[m>>2]=e+4;break}}e=NKa(e,b,4)|0;aaa(k,mBa(f[p>>2]|0,44,e)|0);f[o>>2]=4;e=f[m>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){f[e>>2]=4;f[m>>2]=e+4}else IL(l,o)}while(0);h=h+4|0}e=f[i>>2]|0;switch(e|0){case 2:{f[v+4>>2]=1;tab(q);f[s>>2]=f[q>>2];o=NF(v,s,2)|0;q=qwa(f[p>>2]|0,0)|0;n=q+12|0;aaa(n,Lya(p,o,d)|0);KT(a,c);f[r>>2]=f[33164];d=XQ(p,o)|0;f[s>>2]=f[r>>2];aaa(n,vsa(p,s,d)|0);aaa(n,QCa(p,o)|0);rt(q);d=q;break}case 3:{f[v+4>>2]=4;d=mBa(f[p>>2]|0,43,d)|0;break}default:f[v+4>>2]=e}f[v+36>>2]=d;d=f[v>>2]|0;f[t>>2]=d;f[s>>2]=f[t>>2];if(!(Sma(c,s)|0)){Hs(c,v);d=f[v>>2]|0}u=w;return d|0}while(0);HTa(e);Ua(d|0);return 0}function Zh(a){a=a|0;var c=0.0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+64|0;m=o+16|0;d=o+48|0;e=o+56|0;g=o+52|0;p=o+36|0;n=o;l=o+32|0;if(b[135320]|0)zma(yCa(yCa(134008,53055)|0,a)|0,10)|0;fNa(d,a,1);j=f[f[32969]>>2]|0;k=f[d>>2]|0;E1a(e,k);f[m>>2]=f[e>>2];j=(dJ(j,m)|0)+4|0;a=f[f[32969]>>2]|0;E1a(g,f[j>>2]|0);f[m>>2]=f[g>>2];a=ZI(a,m)|0;if(!a)Ca(116878,53069,537,53087);i=pb(6)|0;j=a+8|0;e=(f[a+12>>2]|0)-(f[j>>2]|0)>>2;f[p>>2]=0;g=p+4|0;f[g>>2]=0;h=p+8|0;f[h>>2]=0;d=0;a:while(1){if(d>>>0>=e>>>0){d=7;break}switch(f[(f[j>>2]|0)+(d<<2)>>2]|0){case 1:{if(d>>>0>>0)a=rb(7,d|0)|0;else a=0;m$a(m,a);a=f[g>>2]|0;if(a>>>0>=(f[h>>2]|0)>>>0){x=0;ua(95,p|0,m|0);a=x;x=0;if(a&1){d=15;break a}}else{f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[g>>2]=a+16}break}case 3:{if(d>>>0>>0)c=+kb(7,d|0);else c=0.0;CAa(m,c);a=f[g>>2]|0;if(a>>>0>=(f[h>>2]|0)>>>0){x=0;ua(95,p|0,m|0);a=x;x=0;if(a&1){d=22;break a}}else{f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[g>>2]=a+16}break}case 4:{if(d>>>0>>0)c=+kb(7,d|0);else c=0.0;kqa(m,c);a=f[g>>2]|0;if(a>>>0>=(f[h>>2]|0)>>>0){x=0;ua(95,p|0,m|0);a=x;x=0;if(a&1){d=29;break a}}else{f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[g>>2]=a+16}break}default:{d=30;break a}}d=d+1|0}if((d|0)==7){j=f[32969]|0;E1a(l,k);x=0;f[m>>2]=f[l>>2];wa(75,n|0,j|0,m|0,p|0);l=x;x=0;b:do if(!(l&1)){if(b[135320]|0){x=0;a=ia(62,134008,53183)|0;l=x;x=0;if(l&1)break;x=0;f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];f[m+12>>2]=f[n+12>>2];a=ia(70,a|0,m|0)|0;m=x;x=0;if(m&1)break;x=0;ia(71,a|0,10)|0;m=x;x=0;if(m&1)break}switch(f[n>>2]|0){case 0:{pb(8)|0;break}case 1:{x=0;a=ga(225,n|0)|0;n=x;x=0;if(n&1)break b;rb(9,a|0)|0;break}case 3:{x=0;c=+ea(1,n|0);n=x;x=0;if(n&1)break b;qb(9,+c)|0;break}case 4:{x=0;c=+ea(2,n|0);n=x;x=0;if(n&1)break b;qb(9,+c)|0;break}default:{x=0;sa(5);x=0;break b}}uSa(p);u=o;return}while(0);a=Ia()|0}else if((d|0)==15)a=Ia()|0;else if((d|0)==22)a=Ia()|0;else if((d|0)==29)a=Ia()|0;else if((d|0)==30){x=0;sa(5);x=0;a=Ia()|0}uSa(p);Ua(a|0)}function _h(){var a=0;f[32835]=0;f[32834]=49708;x=0;sa(11);a=x;x=0;if(a&1)a=Ia()|0;else{f[32870]=0;f[32871]=0;f[32872]=0;a=h7a(119761)|0;x=0;va(87,131480,119761,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{f[32837]=f[32836];q0a();x=0;sa(12);a=x;x=0;do if((((((((((((((!(a&1)?(p0a(),x=0,sa(13),a=x,x=0,!(a&1)):0)?(o1a(),x=0,sa(14),a=x,x=0,!(a&1)):0)?(L0a(),x=0,sa(15),a=x,x=0,!(a&1)):0)?(PZa(),x=0,sa(16),a=x,x=0,!(a&1)):0)?(OZa(),x=0,sa(17),a=x,x=0,!(a&1)):0)?(xZa(),x=0,sa(18),a=x,x=0,!(a&1)):0)?(yZa(),x=0,sa(19),a=x,x=0,!(a&1)):0)?(j2a(),x=0,sa(20),a=x,x=0,!(a&1)):0)?(i2a(),x=0,sa(21),a=x,x=0,!(a&1)):0)?(kVa(),x=0,sa(22),a=x,x=0,!(a&1)):0)?(jVa(),x=0,sa(23),a=x,x=0,!(a&1)):0)?(iVa(),x=0,sa(24),a=x,x=0,!(a&1)):0)?(hVa(),x=0,sa(25),a=x,x=0,!(a&1)):0)?(R_a(),x=0,sa(26),a=x,x=0,!(a&1)):0){Q_a();x=0;sa(27);a=x;x=0;if(a&1)break;P_a();x=0;sa(28);a=x;x=0;if(a&1)break;O_a();x=0;sa(29);a=x;x=0;if(a&1)break;_Ua();x=0;sa(30);a=x;x=0;if(a&1)break;ZUa();x=0;sa(31);a=x;x=0;if(a&1)break;YUa();x=0;sa(32);a=x;x=0;if(a&1)break;XUa();x=0;sa(33);a=x;x=0;if(a&1)break;dGa();x=0;sa(34);a=x;x=0;if(a&1)break;cGa();x=0;sa(35);a=x;x=0;if(a&1)break;oGa();x=0;sa(36);a=x;x=0;if(a&1)break;nGa();x=0;sa(37);a=x;x=0;if(a&1)break;e0a();x=0;sa(38);a=x;x=0;if(a&1)break;d0a();x=0;sa(39);a=x;x=0;if(a&1)break;return}while(0);a=Ia()|0;HTa(131480)}foa(131344)}Ua(a|0)}function $h(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+8|0;k=m;a:do if((a|0)!=(c|0)){b:do switch(b[a>>0]|0){case 84:{j=d+4|0;i=((f[j>>2]|0)-(f[d>>2]|0)|0)/24|0;h=Ej(a,c,d)|0;c=f[j>>2]|0;g=(c-(f[d>>2]|0)|0)/24|0;if((h|0)!=(a|0)&(g|0)==(i+1|0)){f[k>>2]=f[d+12>>2];FR(l,c+-24|0,k);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;ZX(l);break b}}else{f[e+12>>2]=f[l+12>>2];f[e>>2]=f[l>>2];d=l+4|0;f[e+4>>2]=f[d>>2];k=l+8|0;f[e+8>>2]=f[k>>2];f[k>>2]=0;f[d>>2]=0;f[l>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(l);a=h;break a}while(1){if((g|0)==(i|0))break a;e=0;while(1){if((e|0)==-1)break;l=e+-1|0;JJa(c+(l*24|0)|0);e=l}l=c+-24|0;f[j>>2]=l;g=g+-1|0;c=l}}case 68:{c=cp(a,c,d)|0;if((c|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[k>>2]=f[d+12>>2];FR(l,e+-24|0,k);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;ZX(l);break b}}else{f[e+12>>2]=f[l+12>>2];f[e>>2]=f[l>>2];d=l+4|0;f[e+4>>2]=f[d>>2];k=l+8|0;f[e+8>>2]=f[k>>2];f[k>>2]=0;f[d>>2]=0;f[l>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(l);a=c;break a}case 83:{e=Qg(a,c,d)|0;if((e|0)!=(a|0)){a=e;break a}if((c-a|0)<=2)break a;if((b[a+1>>0]|0)!=116)break a;j=a+2|0;g=jM(j,c,d)|0;if((g|0)==(j|0))break a;e=d+4|0;c=f[e>>2]|0;if((f[d>>2]|0)==(c|0))break a;uoa(c+-24|0,0,123570)|0;a=(f[e>>2]|0)+-24|0;f[k>>2]=f[d+12>>2];FR(l,a,k);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;ZX(l);break b}}else{f[e+12>>2]=f[l+12>>2];f[e>>2]=f[l>>2];d=l+4|0;f[e+4>>2]=f[d>>2];k=l+8|0;f[e+8>>2]=f[k>>2];f[k>>2]=0;f[d>>2]=0;f[l>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(l);a=g;break a}default:break a}while(0);Ua(a|0)}while(0);u=m;return a|0}function ai(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0;g=f[c>>2]|0;if((e|0)!=0?(i=f[e>>2]|0,(i|0)!=0):0)if(!a){j=g;e=d;l=25}else{f[e>>2]=0;e=d;k=g;l=46}else l=5;a:do if((l|0)==5){e=(a|0)!=0;if(f[f[11692]>>2]|0)if(e){i=a;e=d;l=32;break}else{e=d;l=15;break}if(!e){d=bV(g)|0;l=62;break}b:do if(d){j=a;e=d;while(1){i=b[g>>0]|0;if(!(i<<24>>24))break;g=g+1|0;f[j>>2]=i<<24>>24&57343;e=e+-1|0;if(!e)break b;else j=j+4|0}f[j>>2]=0;f[c>>2]=0;d=d-e|0;l=62;break a}while(0);f[c>>2]=g;l=62}while(0);c:while(1){d:do if((l|0)==15){while(1){i=b[g>>0]|0;if(((i&255)+-1|0)>>>0<127?(g&3|0)==0:0){l=f[g>>2]|0;i=l&255;if(!((l+-16843009|l)&-2139062144)){do{g=g+4|0;e=e+-4|0;i=f[g>>2]|0}while(((i+-16843009|i)&-2139062144|0)==0);i=i&255}}j=i&255;if((j+-1|0)>>>0>=127)break;e=e+-1|0;g=g+1|0}j=j+-194|0;if(j>>>0>50)l=56;else{i=f[23968+(j<<2)>>2]|0;j=g+1|0;l=25;continue c}}else if((l|0)==25){l=(h[j>>0]|0)>>>3;if((l+-16|l+(i>>26))>>>0>7){g=j;l=54}else{g=j+1|0;if(i&33554432){if((b[g>>0]&-64)<<24>>24!=-128){g=j;l=54;break}g=j+2|0;if(i&524288){if((b[g>>0]&-64)<<24>>24!=-128){g=j;l=54;break}g=j+3|0}}e=e+-1|0;l=15;continue c}}else if((l|0)==32){l=0;e:do if(e){j=i;while(1){k=b[g>>0]|0;i=k&255;a=i+-1|0;if(a>>>0<127){if((g&3|0)==0&e>>>0>4){i=j;while(1){j=f[g>>2]|0;if((j+-16843009|j)&-2139062144|0){a=g;k=j&255;break}f[i>>2]=j&255;f[i+4>>2]=h[g+1>>0];f[i+8>>2]=h[g+2>>0];a=g;g=g+4|0;k=i;i=i+16|0;f[k+12>>2]=h[a+3>>0];e=e+-4|0;if(e>>>0<=4){l=40;break}}if((l|0)==40){a=g;k=b[g>>0]|0}l=k&255;j=i;g=a;a=l+-1|0;i=l;l=42}}else l=42;if((l|0)==42){l=0;if(a>>>0>=127)break}g=g+1|0;f[j>>2]=i;e=e+-1|0;if(!e)break e;else j=j+4|0}i=i+-194|0;if(i>>>0>50){a=j;i=k;l=56;break d}i=f[23968+(i<<2)>>2]|0;a=j;k=g+1|0;l=46;continue c}while(0);f[c>>2]=g;l=62;continue c}else if((l|0)==46){l=0;j=h[k>>0]|0;g=j>>>3;if((g+-16|g+(i>>26))>>>0>7){g=k;l=54}else{g=k+1|0;i=j+-128|i<<6;do if((i|0)<0){j=(h[g>>0]|0)+-128|0;if(j>>>0<=63){g=k+2|0;i=j|i<<6;if((i|0)>=0)break;j=(h[g>>0]|0)+-128|0;if(j>>>0<=63){g=k+3|0;i=j|i<<6;break}}f[33448]=84;g=k+-1|0;break d}while(0);f[a>>2]=i;i=a+4|0;e=e+-1|0;l=32;continue c}}else if((l|0)==62)return d|0;while(0);if((l|0)==54){j=g+-1|0;if(!i){g=j;i=b[j>>0]|0;l=56}else{g=j;d=a;l=60}}if((l|0)==56)if(!(i<<24>>24)){if(a|0){f[a>>2]=0;f[c>>2]=0}d=d-e|0;l=62;continue}else{d=a;l=60}if((l|0)==60){f[33448]=84;if(!d){d=-1;l=62;continue}}f[c>>2]=g;d=-1;l=62}return 0}function bi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;p=o+8|0;m=o;f[p>>2]=0;l=p+4|0;f[l>>2]=0;k=p+8|0;f[k>>2]=0;n=a+48|0;j=a+52|0;i=0;a=f[n>>2]|0;while(1){if((a|0)==(j|0)){d=3;break}e=a+16|0;d=f[e>>2]|0;e=f[e+4>>2]|0;g=m;f[g>>2]=d;f[g+4>>2]=e;g=f[l>>2]|0;h=d;if((g|0)==(f[k>>2]|0)){x=0;ua(2279,p|0,m|0);g=x;x=0;if(g&1){d=16;break}}else{f[g>>2]=d;f[l>>2]=(f[l>>2]|0)+4}e=((b[h>>0]|0)==91?0:e)+i|0;d=f[a+4>>2]|0;if(!d)while(1){d=f[a+8>>2]|0;if((f[d>>2]|0)==(a|0)){a=d;break}else a=d}else{a=d;while(1){d=f[a>>2]|0;if(!d)break;else a=d}}i=e}do if((d|0)==3){f[m>>2]=104620;a=f[l>>2]|0;if(a>>>0>=(f[k>>2]|0)>>>0){x=0;ua(2278,p|0,m|0);k=x;x=0;if(k&1){a=Ia()|0;break}}else{f[a>>2]=104620;f[l>>2]=(f[l>>2]|0)+4}f[m>>2]=104620;x=0;a=ia(181,n|0,m|0)|0;k=x;x=0;if(k&1){a=Ia()|0;break}f[a>>2]=i;Rg(f[p>>2]|0,f[l>>2]|0);x=0;a=ia(84,134008,c|0)|0;c=x;x=0;if(!(c&1)?(x=0,ia(62,a|0,112640)|0,c=x,x=0,!(c&1)):0){g=f[l>>2]|0;e=f[p>>2]|0;while(1){if((e|0)==(g|0)){d=22;break}f[m>>2]=f[e>>2];x=0;a=ia(182,n|0,m|0)|0;l=x;x=0;if(l&1){d=28;break}d=f[a>>2]|0;if(d|0){x=0;a=ia(62,134008,123308)|0;l=x;x=0;if(l&1){d=28;break}l=(f[33502]|0)+-12|0;c=134008+(f[l>>2]|0)+4|0;f[c>>2]=f[c>>2]&-177|32;f[134008+(f[l>>2]|0)+12>>2]=15;x=0;a=ia(62,a|0,f[m>>2]|0)|0;l=x;x=0;if(l&1){d=37;break}x=0;a=ia(62,a|0,122324)|0;l=x;x=0;if(l&1){d=37;break}f[134008+(f[(f[33502]|0)+-12>>2]|0)+12>>2]=8;x=0;ia(77,a|0,d|0)|0;l=x;x=0;if(l&1){d=38;break}if(g9(f[m>>2]|0)|0){x=0;a=ia(182,132632,m|0)|0;l=x;x=0;if(l&1){d=39;break}a=d-(f[a>>2]|0)|0;if(a|0){l=(f[33502]|0)+-12|0;c=134008+(f[l>>2]|0)+4|0;f[c>>2]=f[c>>2]&-177|128;f[134008+(f[l>>2]|0)+12>>2]=8;l=134008+(f[l>>2]|0)+4|0;f[l>>2]=f[l>>2]|2048;x=0;ia(77,134008,a|0)|0;l=x;x=0;if(l&1){d=40;break}l=134008+(f[(f[33502]|0)+-12>>2]|0)+4|0;f[l>>2]=f[l>>2]&-2049}}x=0;ia(62,134008,112640)|0;l=x;x=0;if(l&1){d=28;break}}e=e+4|0}if((d|0)==22){uSa(p);u=o;return}else if((d|0)==28)a=Ia()|0;else if((d|0)==37)a=Ia()|0;else if((d|0)==38)a=Ia()|0;else if((d|0)==39)a=Ia()|0;else if((d|0)==40)a=Ia()|0;break}a=Ia()|0}else if((d|0)==16)a=Ia()|0;while(0);uSa(p);Ua(a|0)}function ci(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;if(!(rab(f[b>>2]|0)|0))Ca(113291,73170,517,73762);e=f[b+4>>2]|0;d=g$a(e)|0;do if(!d){c=e$a(e)|0;if(c|0){switch(f[c+8>>2]|0){case 1:case 0:{yCa(134008,73778)|0;break}case 3:case 2:{yCa(134008,73783)|0;break}case 5:case 4:{yCa(134008,73788)|0;break}default:hb()}zma(134008,32)|0;XE(a,$Pa(b,0)|0);break}c=Y_a(e)|0;if(!c)if(v6a(f[e>>2]|0)|0){yCa(134008,73864)|0;XE(a,$Pa(b,0)|0);yCa(134008,123498)|0;XE(a,$Pa(b,1)|0);yCa(134008,123498)|0;XE(a,$Pa(b,2)|0);break}else hb();do switch(f[c+8>>2]|0){case 25:case 0:{yCa(134008,93143)|0;break}case 26:case 1:{yCa(134008,117183)|0;break}case 27:case 2:{yCa(134008,73794)|0;break}case 28:case 3:{yCa(134008,73798)|0;break}case 29:case 4:{yCa(134008,73803)|0;break}case 30:case 5:{yCa(134008,73808)|0;break}case 31:case 6:{yCa(134008,73813)|0;break}case 32:case 7:{yCa(134008,93147)|0;break}case 33:case 8:{yCa(134008,93151)|0;break}case 34:case 9:{yCa(134008,93154)|0;break}case 35:case 10:{yCa(134008,73818)|0;break}case 36:case 11:{yCa(134008,73822)|0;break}case 37:case 12:{yCa(134008,73827)|0;break}case 38:case 13:{yCa(134008,73832)|0;break}case 39:case 14:{yCa(134008,73837)|0;break}case 40:case 15:{yCa(134008,73842)|0;break}case 41:case 16:{yCa(134008,73845)|0;break}case 42:case 17:{yCa(134008,73848)|0;break}case 43:case 18:{yCa(134008,73852)|0;break}case 44:case 19:{yCa(134008,73856)|0;break}case 45:case 20:{yCa(134008,73860)|0;break}default:hb()}while(0);zma(134008,32)|0;XE(a,$Pa(b,0)|0);yCa(134008,123498)|0;XE(a,$Pa(b,1)|0)}else{e=d+8|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];iba(c)}while(0);u=g;return}function di(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p+16|0;e=p+24|0;o=p+8|0;n=p;f[l>>2]=b;bda(e,a,l);l=f[e>>2]|0;f[l+8>>2]=b;c=Bbb(f[a+84>>2]|0)|0;d=l+12|0;f[d>>2]=c;x=0;c=ga(290,a|0)|0;m=x;x=0;a:do if(!(m&1)?(x=0,va(130,f[d>>2]|0,c|0,f[b+8>>2]|0),m=x,x=0,!(m&1)):0){h=b+16|0;m=a+100|0;b:do if(!(f[h>>2]|0)){c=f[e+4>>2]|0;d=c}else{f[o>>2]=l;g=o+4|0;d=f[e+4>>2]|0;f[g>>2]=d;k=d;if(d|0){j=d+4|0;f[j>>2]=(f[j>>2]|0)+1}i=a+104|0;c=f[i>>2]|0;j=a+108|0;do if(c>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1456,m|0,o|0);e=x;x=0;if(e&1){c=Ia()|0;voa(f[g>>2]|0);break a}else{c=f[g>>2]|0;break}}else{f[c>>2]=l;f[c+4>>2]=k;f[o>>2]=0;f[g>>2]=0;f[i>>2]=c+8;c=0}while(0);voa(c);x=0;va(131,n|0,a|0,h|0);h=x;x=0;c:do if(h&1)c=Ia()|0;else{c=f[n>>2]|0;f[o>>2]=c;e=o+4|0;h=n+4|0;g=f[h>>2]|0;f[e>>2]=g;f[n>>2]=0;f[h>>2]=0;h=f[i>>2]|0;do if(h>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1456,m|0,o|0);j=x;x=0;if(j&1){c=Ia()|0;voa(f[e>>2]|0);voa(0);break c}else{c=f[e>>2]|0;break}}else{f[h>>2]=c;f[h+4>>2]=g;f[o>>2]=0;f[e>>2]=0;f[i>>2]=h+8;c=0}while(0);voa(c);voa(0);c=k;break b}while(0);break a}while(0);f[o>>2]=l;e=o+4|0;f[e>>2]=d;if(d|0){k=d+4|0;f[k>>2]=(f[k>>2]|0)+1}i=a+104|0;g=f[i>>2]|0;j=a+108|0;do if(g>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1456,m|0,o|0);l=x;x=0;if(l&1){c=Ia()|0;voa(f[e>>2]|0);break a}else{c=f[e>>2]|0;break}}else{f[g>>2]=l;f[g+4>>2]=c;f[o>>2]=0;f[e>>2]=0;f[i>>2]=g+8;c=0}while(0);voa(c);x=0;va(131,n|0,a|0,b+12|0);b=x;x=0;d:do if(b&1)c=Ia()|0;else{e=f[n>>2]|0;f[o>>2]=e;g=o+4|0;c=n+4|0;h=f[c>>2]|0;f[g>>2]=h;f[n>>2]=0;f[c>>2]=0;c=f[i>>2]|0;do if(c>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1456,m|0,o|0);o=x;x=0;if(o&1){c=Ia()|0;voa(f[g>>2]|0);voa(0);break d}else{c=f[g>>2]|0;break}}else{f[c>>2]=e;f[c+4>>2]=h;f[o>>2]=0;f[g>>2]=0;f[i>>2]=c+8;c=0}while(0);voa(c);voa(0);voa(d);u=p;return}while(0)}else q=17;while(0);if((q|0)==17){c=Ia()|0;d=f[e+4>>2]|0}voa(d);Ua(c|0)}function ei(){var a=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e+4|0;c=e;b[d>>0]=0;f[c>>2]=0;a=f[33197]|0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,123565,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(123565,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=1;if(a>>>0<(f[33198]|0)>>>0){ALa(a,116662,1,1);a=(f[33197]|0)+40|0;f[33197]=a}else{eB(d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,116670,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(116670,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,116676,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(116676,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,116680,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(116680,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,116690,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(116690,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,116700,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(116700,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,123296,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(123296,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,123374,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(123374,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,123421,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(123421,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=3;if(a>>>0<(f[33198]|0)>>>0){ALa(a,116706,1,3);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(116706,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,123342,1,0);a=(f[33197]|0)+40|0;f[33197]=a}else{OA(123342,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){ALa(a,123344,1,0);f[33197]=(f[33197]|0)+40}else OA(123344,d,c);iT();c=0;while(1){a=f[33196]|0;if(c>>>0>=(((f[33197]|0)-a|0)/40|0)>>>0)break;a=a+(c*40|0)+8|0;while(1){a=f[a>>2]|0;if(!a)break;f[d>>2]=f[a+8>>2];g=jm((f[33199]|0)+((f[(f[33196]|0)+(c*40|0)+36>>2]|0)*20|0)|0,d)|0;f[g>>2]=c}c=c+1|0}u=e;return}function fi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+64|0;p=o+48|0;m=o+24|0;i=o;n=o+12|0;a:do if(((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==90:0)?(g=a+2|0,(b[g>>0]|0)==84):0)?(k=d+4|0,j=((f[k>>2]|0)-(f[d>>2]|0)|0)/24|0,l=Ej(g,c,d)|0,e=((f[k>>2]|0)-(f[d>>2]|0)|0)/24|0,(l|0)!=(g|0)):0){f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;nW(p,123487,h7a(123487)|0);b:do if((j|0)==(e|0))h=26;else{x=0;ua(3194,m|0,(f[d>>2]|0)+(j*24|0)|0);g=x;x=0;do if(g&1)a=Ia()|0;else{g=b[m+11>>0]|0;c=g<<24>>24<0;x=0;ja(97,p|0,(c?f[m>>2]|0:m)|0,(c?f[m+4>>2]|0:g&255)|0)|0;g=x;x=0;if(g&1){a=Ia()|0;HTa(m);break}HTa(m);g=m+11|0;h=m+4|0;a=j;while(1){a=a+1|0;if((a|0)==(e|0)){h=26;break b}x=0;ua(3194,i|0,(f[d>>2]|0)+(a*24|0)|0);c=x;x=0;if(c&1){h=21;break}x=0;ja(101,i|0,0,123498)|0;c=x;x=0;if(c&1){h=22;break}f[m>>2]=f[i>>2];f[m+4>>2]=f[i+4>>2];f[m+8>>2]=f[i+8>>2];c=0;while(1){if((c|0)==3)break;f[i+(c<<2)>>2]=0;c=c+1|0}c=b[g>>0]|0;q=c<<24>>24<0;x=0;ja(97,p|0,(q?f[m>>2]|0:m)|0,(q?f[h>>2]|0:c&255)|0)|0;c=x;x=0;if(c&1){h=23;break}HTa(m);HTa(i)}if((h|0)==21)a=Ia()|0;else if((h|0)==22){a=Ia()|0;h=24}else if((h|0)==23){a=Ia()|0;HTa(m);h=24}if((h|0)==24)HTa(i);break b}while(0)}while(0);do if((h|0)==26){x=0;ia(215,p|0,123274)|0;q=x;x=0;if(q&1){a=Ia()|0;break}while(1){if((e|0)==(j|0))break;c=f[k>>2]|0;a=0;while(1){if((a|0)==-1)break;q=a+-1|0;JJa(c+(q*24|0)|0);a=q}f[k>>2]=c+-24;e=e+-1|0}f[n>>2]=f[p>>2];f[n+4>>2]=f[p+4>>2];f[n+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}NY(m,n);a=f[k>>2]|0;if(a>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,m|0);q=x;x=0;if(q&1){a=Ia()|0;JJa(m);HTa(n);break}}else{yY(a,m);f[k>>2]=(f[k>>2]|0)+24}JJa(m);HTa(n);HTa(p);a=l;break a}while(0);HTa(p);Ua(a|0)}while(0);u=o;return a|0}function gi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+112|0;h=k+16|0;d=k;e=b+16|0;g=f[e>>2]|0;i=f[g+4>>2]|0;g=LRa(g)|0;g=g+8|0;a:do if(g4a(i)|0){C8(h,0,i);do if(dN(g,h)|0){c=f[b+8>>2]|0;if(((((c|0)!=(dn(i,9)|0)?(c|0)!=(dn(i,10)|0):0)?(c|0)!=(dn(i,11)|0):0)?(c|0)!=(dn(i,13)|0):0)?(c|0)!=(dn(i,14)|0):0){if((c|0)!=(dn(i,3)|0)?(c|0)!=(dn(i,12)|0):0)break;c=_Ya(f[a+40>>2]|0)|0;fA(h,c,f[b+12>>2]|0);c=lza(h)|0;V7(h);if(c)break;b=f[e>>2]|0;break a}b=f[b+12>>2]|0;break a}while(0);m$a(h,-1);if(!(dN(g,h)|0)?(SSa(d,-1,-1),!(dN(g,d)|0)):0)a=b+8|0;else{c=b+8|0;d=f[c>>2]|0;if((d|0)==(dn(i,12)|0)){b=f[b+12>>2]|0;break}if((d|0)==(dn(i,13)|0)?(a=_Ya(f[a+40>>2]|0)|0,fA(h,a,f[b+12>>2]|0),a=lza(h)|0,V7(h),!a):0){b=f[e>>2]|0;break}else a=c}c=f[a>>2]|0;e=dn(i,1)|0;if((c|0)!=(e|0)?(c|0)!=(dn(i,2)|0):0){j=31;break}c=Eia(g)|0;d=I;b:do if((c|0)<8192){switch(c|0){case 0:break;case 64:if(!d)break b;else{j=31;break a}default:{j=31;break a}}if((d|0)<65536)switch(d|0){case 4:case 512:break b;default:{j=31;break a}}if((d|0)<8388608)switch(d|0){case 65536:break b;default:{j=31;break a}}if((d|0)<1073741824)switch(d|0){case 8388608:break b;default:{j=31;break a}}else switch(d|0){case 1073741824:break b;default:{j=31;break a}}}else{if((c|0)<1048576){switch(c|0){case 8192:break;default:{j=31;break a}}if(!d)break;else{j=31;break a}}if((c|0)<134217728){switch(c|0){case 1048576:break;default:{j=31;break a}}if(!d)break;else{j=31;break a}}else{switch(c|0){case 134217728:break;default:{j=31;break a}}if(!d)break;else{j=31;break a}}}while(0);pN(h,g);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];i=dn(i,(f[a>>2]|0)==(e|0)?2:1)|0;f[a>>2]=i}else j=31;while(0);do if((j|0)==31){C8(h,1,i);if(dN(g,h)|0){c=f[b+8>>2]|0;if(((c|0)!=(dn(i,3)|0)?(c|0)!=(dn(i,5)|0):0)?(c|0)!=(dn(i,4)|0):0){b=0;break}b=f[b+12>>2]|0}else b=0}while(0);u=k;return b|0}function hi(a,b){a=a|0;b=b|0;var c=0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{c=iE(a,b)|0;break}case 2:{c=cQ(a,b)|0;break}case 3:{c=fY(a,b)|0;break}case 4:{c=NP(a,b)|0;break}case 5:{c=fN(a,b)|0;break}case 6:{c=IA(a,b)|0;break}case 7:{c=yA(a,b)|0;break}case 8:{c=ey(a,b)|0;break}case 9:{c=Uya(a,f[b+4>>2]|0,f[b+8>>2]|0)|0;break}case 10:{c=qX(a,f[b+4>>2]|0,f[b+8>>2]|0,f[b+12>>2]|0)|0;break}case 11:{c=D3(a,b)|0;break}case 12:{c=cX(a,b)|0;break}case 13:{c=oF(a,b)|0;break}case 14:{c=gA(a,b)|0;break}case 24:{c=mP(a,b)|0;break}case 25:{c=oK(a,b)|0;break}case 26:{c=NM(a,b)|0;break}case 27:{c=iW(a,b)|0;break}case 15:{c=g1(a,b)|0;break}case 16:{c=V9(a,f[b+8>>2]|0,f[b+12>>2]|0)|0;break}case 17:{c=qW(a,b)|0;break}case 18:{c=hS(a,b)|0;break}case 19:{c=Rea(a,f[b+8>>2]|0)|0;break}case 20:{c=jha(a,f[b+8>>2]|0)|0;break}case 21:{c=Ct(a,b)|0;break}case 22:{c=rMa(a)|0;break}case 23:{c=yHa(a)|0;break}default:hb()}while(0);return c|0}function ii(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+144|0;b=s+128|0;t=s+124|0;k=s+112|0;l=s+108|0;m=s+96|0;n=s+92|0;o=s+80|0;p=s+76|0;q=s+64|0;r=s+60|0;c=s+48|0;d=s+44|0;e=s+32|0;g=s+28|0;h=s+16|0;i=s+12|0;j=s;f[t>>2]=f[33174];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;WZ(k,106143,h7a(106143)|0);x=0;f[b>>2]=f[t>>2];va(158,a|0,b|0,k|0);t=x;x=0;do if(!(t&1)){HTa(k);f[l>>2]=f[33173];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;WZ(m,106148,h7a(106148)|0);x=0;f[b>>2]=f[l>>2];va(158,a|0,b|0,m|0);t=x;x=0;if(t&1){b=Ia()|0;HTa(m);break}HTa(m);f[n>>2]=f[33172];f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;WZ(o,106153,h7a(106153)|0);x=0;f[b>>2]=f[n>>2];va(158,a|0,b|0,o|0);t=x;x=0;if(t&1){b=Ia()|0;HTa(o);break}HTa(o);f[p>>2]=f[33171];f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;WZ(q,106158,h7a(106158)|0);x=0;f[b>>2]=f[p>>2];va(158,a|0,b|0,q|0);t=x;x=0;if(t&1){b=Ia()|0;HTa(q);break}HTa(q);f[r>>2]=f[33170];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,106143,h7a(106143)|0);x=0;f[b>>2]=f[r>>2];va(158,a|0,b|0,c|0);t=x;x=0;if(t&1){b=Ia()|0;HTa(c);break}HTa(c);f[d>>2]=f[33169];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,106148,h7a(106148)|0);x=0;f[b>>2]=f[d>>2];va(158,a|0,b|0,e|0);t=x;x=0;if(t&1){b=Ia()|0;HTa(e);break}HTa(e);f[g>>2]=f[33168];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,106153,h7a(106153)|0);x=0;f[b>>2]=f[g>>2];va(158,a|0,b|0,h|0);t=x;x=0;if(t&1){b=Ia()|0;HTa(h);break}HTa(h);f[i>>2]=f[33167];f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,106158,h7a(106158)|0);x=0;f[b>>2]=f[i>>2];va(158,a|0,b|0,j|0);t=x;x=0;if(t&1){b=Ia()|0;HTa(j);break}else{HTa(j);u=s;return}}else{b=Ia()|0;HTa(k)}while(0);Ua(b|0)}function ji(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=c+11|0;e=b[i>>0]|0;j=c+4|0;d=f[j>>2]|0;g=e&255;h=e<<24>>24<0?d:g;a:do if(!h)d0(a,c);else{do if((h7a(124096)|0)==(h|0)){x=0;d=ja(102,c|0,124096,h|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}if(!d){tta(c,124108);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124179,h7a(124179)|0);break a}else{e=b[i>>0]|0;h=e&255;d=f[j>>2]|0;break}}else h=g;while(0);g=h7a(124192)|0;do if((g|0)==((e<<24>>24<0?d:h)|0)){x=0;d=ja(102,c|0,124192,g|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}if(!d){tta(c,124205);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124255,h7a(124255)|0);break a}else{e=b[i>>0]|0;h=e&255;d=f[j>>2]|0;break}}while(0);g=h7a(124269)|0;do if((g|0)==((e<<24>>24<0?d:h)|0)){x=0;d=ja(102,c|0,124269,g|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}if(!d){tta(c,124282);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124332,h7a(124332)|0);break a}else{e=b[i>>0]|0;h=e&255;d=f[j>>2]|0;break}}while(0);g=h7a(124346)|0;do if((g|0)==((e<<24>>24<0?d:h)|0)){x=0;d=ja(102,c|0,124346,g|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}if(!d){tta(c,124360);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124411,h7a(124411)|0);break a}else{e=b[i>>0]|0;g=e&255;d=f[j>>2]|0;break}}else g=h;while(0);i=e<<24>>24<0;j=i?f[c>>2]|0:c;d=j+(i?d:g)|0;b:do if((b[d+-1>>0]|0)==62){h=1;c:while(1){d:while(1){i=d+-1|0;if((i|0)==(j|0))break c;g=d+-2|0;switch(b[g>>0]|0){case 60:{e=35;break d}case 62:{e=36;break d}default:d=i}}if((e|0)==35){d=h+-1|0;if(!d)break b}else if((e|0)==36)d=h+1|0;h=d;d=i}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break a;f[a+(d<<2)>>2]=0;d=d+1|0}}else g=d;while(0);d=g;while(1){e=d+-1|0;if((e|0)==(j|0)){d=j;break}if((b[e>>0]|0)==58)break;else d=e}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;SM(a,d,g)}while(0);return}function ki(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;n=v;r=v+4|0;f[n>>2]=c;s=c+16|0;j=f[s>>2]|0;o=c;if(!j)Ca(77054,76797,447,78061);a:do if(!(f[c+4>>2]|0)){p=a+44|0;q=c+12|0;l=f[q>>2]|0;m=(f[l+4>>2]|0)==5;k=f[j+4>>2]|0;g=(k|0)==5;if(!m){if(!g){i=e+4|0;h=f[e>>2]|0;while(1){if((h|0)==(i|0))break a;g=f[h+16>>2]|0;if(mfa(p,g)|0)break;g=f[h+4>>2]|0;if(!g)while(1){g=f[h+8>>2]|0;if((f[g>>2]|0)==(h|0))break;else h=g}else while(1){h=f[g>>2]|0;if(!h)break;else g=h}h=g}i=o$a(l)|0;if(m)h=i;else{h=i;t=23}}else{if(!(f[e+8>>2]|0))break;g=f[(f[e>>2]|0)+16>>2]|0;i=o$a(l)|0;h=i;t=23}do if((t|0)==23){if((i|0?Bbb(f[i+16>>2]|0)|0:0)?(m=MCa(i+12|0)|0,V6a(f[f[m>>2]>>2]|0)|0):0){k=f[s>>2]|0;j=k;k=f[k+4>>2]|0;break}g=a+160|0;h=f[g>>2]|0;if((h|0)==(f[a+164>>2]|0)){IL(a+156|0,n);break a}else{f[h>>2]=o;f[g>>2]=(f[g>>2]|0)+4;break a}}while(0);l=o$a(j)|0;if((k|0)==5){k=g;j=h;h=l;g=l}else{k=g;g=l;j=h;h=l;t=31}}else{if(g)Ca(78078,76797,471,78061);if(!(f[a+52>>2]|0))break;k=f[(f[p>>2]|0)+16>>2]|0;t=o$a(l)|0;h=o$a(j)|0;g=h;i=t;j=t;t=31}do if((t|0)==31){if((h|0?Bbb(f[h+16>>2]|0)|0:0)?(t=MCa(h+12|0)|0,V6a(f[f[t>>2]>>2]|0)|0):0)break;g=a+160|0;h=f[g>>2]|0;if((h|0)==(f[a+164>>2]|0)){IL(a+156|0,n);break a}else{f[h>>2]=o;f[g>>2]=(f[g>>2]|0)+4;break a}}while(0);if((f[(f[q>>2]|0)+4>>2]|0)!=5?(t=lT(e,k)|0,t=f[t>>2]|0,q=(iRa(f[t>>2]|0)|0)+12|0,q=f[q>>2]|0,e=JDa(i+12|0,(Bbb(f[i+16>>2]|0)|0)+-1|0)|0,f[e>>2]=q,pVa(f[t>>2]|0),rt(j),(f[i+4>>2]|0)==0):0)Ca(78112,76797,517,78061);if((f[(f[s>>2]|0)+4>>2]|0)!=5?(t=lT(p,k)|0,t=f[t>>2]|0,e=(iRa(f[t>>2]|0)|0)+12|0,e=f[e>>2]|0,s=JDa(h+12|0,(Bbb(f[h+16>>2]|0)|0)+-1|0)|0,f[s>>2]=e,pVa(f[t>>2]|0),rt(g),(f[h+4>>2]|0)==0):0)Ca(78138,76797,524,78061);LI(c);if(!(f[c+4>>2]|0))Ca(78165,76797,527,78061);else{t=f[a+36>>2]|0;Bbb(t)|0;U0a(r,t);t=Lya(r,k,c)|0;f[d>>2]=t;b[a+92>>0]=1;break}}while(0);u=v;return}function li(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f[d>>2]=a;z=p+8+3|0;G=p+4|0;A=o+8+3|0;B=o+4|0;C=(e&512|0)==0;D=(q|0)>0;E=n+11|0;F=n+4|0;y=0;while(1){if((y|0)==4)break;a:do switch(b[k+y>>0]|0){case 0:{f[c>>2]=f[d>>2];break}case 1:{f[c>>2]=f[d>>2];w=dc[f[(f[i>>2]|0)+44>>2]&255](i,32)|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w;break}case 3:{x=b[z>>0]|0;r=x<<24>>24<0;if((r?f[G>>2]|0:x&255)|0){w=f[(r?f[p>>2]|0:p)>>2]|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w}break}case 2:{v=b[A>>0]|0;r=v<<24>>24<0;v=r?f[B>>2]|0:v&255;if(!(C|(v|0)==0)){u=r?f[o>>2]|0:o;s=u+(v<<2)|0;t=f[d>>2]|0;r=t;while(1){if((u|0)==(s|0))break;f[r>>2]=f[u>>2];r=r+4|0;u=u+4|0}f[d>>2]=t+(v<<2)}break}case 4:{s=f[d>>2]|0;g=j?g+4|0:g;r=g;while(1){if(r>>>0>=h>>>0)break;if(!(ec[f[(f[i>>2]|0)+12>>2]&127](i,2048,f[r>>2]|0)|0))break;r=r+4|0}if(D){u=q;while(1){t=(u|0)>0;if(!(r>>>0>g>>>0&t))break;x=r+-4|0;v=f[x>>2]|0;w=f[d>>2]|0;f[d>>2]=w+4;f[w>>2]=v;u=u+-1|0;r=x}if(t)w=dc[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;else w=0;v=f[d>>2]|0;while(1){t=v+4|0;if((u|0)<=0)break;f[v>>2]=w;u=u+-1|0;v=t}f[d>>2]=t;f[v>>2]=l;t=r}else t=r;if((t|0)==(g|0)){w=dc[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;x=f[d>>2]|0;r=x+4|0;f[d>>2]=r;f[x>>2]=w}else{x=b[E>>0]|0;r=x<<24>>24<0;if(!((r?f[F>>2]|0:x&255)|0))r=-1;else r=b[(r?f[n>>2]|0:n)>>0]|0;u=0;v=0;x=t;while(1){if((x|0)==(g|0))break;t=f[d>>2]|0;if((v|0)==(r|0)){w=t+4|0;f[d>>2]=w;f[t>>2]=m;t=u+1|0;u=b[E>>0]|0;r=u<<24>>24<0;if(t>>>0<(r?f[F>>2]|0:u&255)>>>0){r=b[(r?f[n>>2]|0:n)+t>>0]|0;r=r<<24>>24==127?-1:r<<24>>24;u=t;v=0;t=w}else{r=v;u=t;v=0;t=w}}w=x+-4|0;H=f[w>>2]|0;f[d>>2]=t+4;f[t>>2]=H;v=v+1|0;x=w}r=f[d>>2]|0}if((s|0)!=(r|0))while(1){r=r+-4|0;if(s>>>0>=r>>>0)break a;H=f[s>>2]|0;f[s>>2]=f[r>>2];f[r>>2]=H;s=s+4|0}break}default:{}}while(0);y=y+1|0}r=b[z>>0]|0;g=r<<24>>24<0;r=g?f[G>>2]|0:r&255;if(r>>>0>1){s=f[p>>2]|0;v=g?s+4|0:G;r=(g?s:p)+(r<<2)|0;s=f[d>>2]|0;t=r;g=s;u=v;while(1){if((u|0)==(r|0))break;f[g>>2]=f[u>>2];g=g+4|0;u=u+4|0}f[d>>2]=s+((t-v|0)>>>2<<2)}switch((e&176)<<24>>24){case 32:{f[c>>2]=f[d>>2];break}case 16:break;default:f[c>>2]=a}return}function mi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n+12|0;l=n;if((d+-30&255)>41)e=0;else{m=gTa(f[a+4>>2]|0)|0;do switch(d<<24>>24){case 30:{i=4;e=1;g=0;break}case 32:{i=1;e=1;g=0;break}case 33:{i=2;e=1;g=0;break}case 31:{i=8;e=2;g=0;break}case 34:{i=1;e=2;g=0;break}case 35:{i=2;e=2;g=0;break}case 36:{i=4;e=2;g=0;break}case 37:{i=4;e=1;g=1;break}case 39:{i=1;e=1;g=1;break}case 40:{i=2;e=1;g=1;break}case 38:{i=8;e=2;g=1;break}case 41:{i=1;e=2;g=1;break}case 42:{i=2;e=2;g=1;break}case 43:{i=4;e=2;g=1;break}case 44:{i=4;e=1;g=2;break}case 46:{i=1;e=1;g=2;break}case 47:{i=2;e=1;g=2;break}case 45:{i=8;e=2;g=2;break}case 48:{i=1;e=2;g=2;break}case 49:{i=2;e=2;g=2;break}case 50:{i=4;e=2;g=2;break}case 51:{i=4;e=1;g=3;break}case 53:{i=1;e=1;g=3;break}case 54:{i=2;e=1;g=3;break}case 52:{i=8;e=2;g=3;break}case 55:{i=1;e=2;g=3;break}case 56:{i=2;e=2;g=3;break}case 57:{i=4;e=2;g=3;break}case 58:{i=4;e=1;g=4;break}case 60:{i=1;e=1;g=4;break}case 61:{i=2;e=1;g=4;break}case 59:{i=8;e=2;g=4;break}case 62:{i=1;e=2;g=4;break}case 63:{i=2;e=2;g=4;break}case 64:{i=4;e=2;g=4;break}case 65:{i=4;e=1;g=5;break}case 67:{i=1;e=1;g=5;break}case 68:{i=2;e=1;g=5;break}case 66:{i=8;e=2;g=5;break}case 69:{i=1;e=2;g=5;break}case 70:{i=2;e=2;g=5;break}case 71:{i=4;e=2;g=5;break}default:hb()}while(0);f[m+8>>2]=g;f[m+4>>2]=e;d=m+12|0;b[d>>0]=i;do if(b[a+12>>0]|0){e=yCa(134176,110775)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[k>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,j=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,i=x,x=0,!(i&1)):0){JCa(k);Wq(e,j)|0;du(e)|0;break}n=Ia()|0;JCa(k);Ua(n|0)}while(0);Kab(k);JF(a,k,m+16|0);k=Bbb(f[k>>2]|0)|0;do if((k|0)!=(h[d>>0]|0)){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,97072,h7a(97072)|0);x=0;ua(1869,a|0,l|0);k=x;x=0;if(k&1){n=Ia()|0;HTa(l);Ua(n|0)}else{HTa(l);break}}while(0);e=dk(a)|0;f[m+24>>2]=e;e=dk(a)|0;f[m+20>>2]=e;IMa(m);f[c>>2]=m;e=1}u=n;return e|0}function ni(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(c|0){case 0:{l=-149;m=24;k=4;break}case 1:{l=-1074;m=53;k=4;break}case 2:{l=-1074;m=53;k=4;break}default:e=0.0}a:do if((k|0)==4){o=a+4|0;n=a+100|0;do{c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0}while((o6a(c)|0)!=0);b:do switch(c|0){case 43:case 45:{i=1-(((c|0)==45&1)<<1)|0;c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;g=h[c>>0]|0;break b}else{g=cF(a)|0;break b}}default:{g=c;i=1}}while(0);c=0;while(1){if((g|32|0)!=(b[118713+c>>0]|0))break;do if(c>>>0<7){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0;break}else{g=cF(a)|0;break}}while(0);c=c+1|0;if(c>>>0>=8){c=8;break}}c:do switch(c&2147483647|0){case 8:break;case 3:{k=23;break}default:{j=(d|0)!=0;if(j&c>>>0>3)if((c|0)==8)break c;else{k=23;break c}d:do if(!c){c=0;do{if((g|32|0)!=(b[118775+c>>0]|0)){k=39;break d}do if(c>>>0<2){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0;break}else{g=cF(a)|0;break}}while(0);c=c+1|0}while(c>>>0<3)}else k=39;while(0);e:do if((k|0)==39){switch(c|0){case 3:break e;case 0:break;default:{if(f[n>>2]|0)f[o>>2]=(f[o>>2]|0)+-1;f[33448]=22;una(a,0);e=0.0;break a}}if((g|0)==48){c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0;if((c|32|0)==120){e=+Nh(a,m,l,i,d);break a}if(!(f[n>>2]|0))c=48;else{f[o>>2]=(f[o>>2]|0)+-1;c=48}}else c=g;e=+Qe(a,c,m,l,i,d);break a}while(0);c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0;if((c|0)!=40){if(!(f[n>>2]|0)){e=B;break a}f[o>>2]=(f[o>>2]|0)+-1;e=B;break a}c=1;while(1){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0}else g=cF(a)|0;if(!((g+-48|0)>>>0<10|(g+-65|0)>>>0<26)?!((g|0)==95|(g+-97|0)>>>0<26):0)break;c=c+1|0}if((g|0)==41){e=B;break a}g=(f[n>>2]|0)==0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if(!j){f[33448]=22;una(a,0);e=0.0;break a}if(!c){e=B;break a}while(1){c=c+-1|0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if(!c){e=B;break a}}}}while(0);if((k|0)==23){g=(f[n>>2]|0)==0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if((d|0)!=0&c>>>0>3)do{if(!g)f[o>>2]=(f[o>>2]|0)+-1;c=c+-1|0}while(c>>>0>3)}e=+(i|0)*C}while(0);return +e}function oi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+256|0;k=q+252|0;r=q+8|0;l=q;m=q+248|0;n=q+244|0;o=q+240|0;p=q+4|0;d=a+44|0;if(!(f[d>>2]|0)){SFa(k,Bbb(f[a+36>>2]|0)|0);j=f[k>>2]|0;f[k>>2]=0;c=f[d>>2]|0;f[d>>2]=j;if(c|0)ubb(c);f[k>>2]=0}i=a+48|0;bZ(i);oM(a+88|0);oM(a+108|0);kO(a+68|0);Wt(r);x=0;j=ia(157,b|0,r|0)|0;h=x;x=0;a:do if(h&1)c=Ia()|0;else{f[b+12>>2]=f[b+8>>2];f[b+24>>2]=f[b+20>>2];faa(b+44|0);D9(b+56|0);x=0;ta(500,j|0);h=x;x=0;do if(!(h&1)){c=0;d=0;while(1){f[l>>2]=d;if(d>>>0>=(fQa(j)|0)>>>0){d=30;break}if(!(_ta(j,d)|0)){d=12;break}x=0;d=ia(184,j|0,d|0)|0;h=x;x=0;if(h&1){d=21;break}f[m>>2]=d;x=0;f[k>>2]=f[m>>2];e=ga(319,k|0)|0;h=x;x=0;if(h&1){d=22;break}x=0;g=ia(80,j|0,f[l>>2]|0)|0;h=x;x=0;if(h&1){d=23;break}h=uZa(j)|0;h=(f[l>>2]|0)>>>0>>0?42:43;if((g|0)==2){f[n>>2]=d;x=0;f[k>>2]=f[n>>2];ja(h|0,b|0,k|0,1)|0;g=x;x=0;if(g&1){d=24;break}f[o>>2]=e;x=0;f[k>>2]=f[o>>2];ja(h|0,b|0,k|0,1)|0;h=x;x=0;if(h&1){d=24;break}x=0;d=ia(105,i|0,l|0)|0;h=x;x=0;if(h&1){d=24;break}f[d>>2]=c;c=c+2|0}else{f[p>>2]=d;x=0;f[k>>2]=f[p>>2];ja(h|0,b|0,k|0,g|0)|0;h=x;x=0;if(h&1){d=24;break}x=0;d=ia(105,i|0,l|0)|0;h=x;x=0;if(h&1){d=24;break}f[d>>2]=c;c=c+1|0}d=(f[l>>2]|0)+1|0}if((d|0)==12){x=0;wa(71,106677,106510,156,115764);x=0;c=Ia()|0}else if((d|0)==21)c=Ia()|0;else if((d|0)==22)c=Ia()|0;else if((d|0)==23)c=Ia()|0;else if((d|0)==24)c=Ia()|0;else if((d|0)==30){p=fQa(b)|0;f[a+148>>2]=p;x=0;ua(2459,a+16|0,b|0);b=x;x=0;if(b&1)break;cy(r);u=q;return}break a}while(0);c=Ia()|0}while(0);cy(r);Ua(c|0)}function pi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+240|0;k=s+32|0;t=s+144|0;r=s+52|0;q=s+48|0;m=s+16|0;n=s;d=a+40|0;h=f[d>>2]|0;Bbb(h)|0;a:do if((f[h+24>>2]|0)>=2?(f[h+28>>2]|0)<=0:0){l=b+8|0;if(((f[l>>2]|0)+-7|0)>>>0>=2)Ca(103628,103515,1003,103676);i=f[b+16>>2]|0;e=i;if((!(G6a(f[i>>2]|0)|0)?(j=f[b+12>>2]|0,g=j,j9(g)|0):0)?j9(i)|0:0){fA(t,_Ya(h)|0,g);b=_Ya(f[d>>2]|0)|0;x=0;va(101,r|0,b|0,i|0);b=x;x=0;b:do if(b&1)c=Ia()|0;else{d=lza(t)|0;h=lza(r)|0;c:do if(d&h)c=0;else{do if(h){x=0;ua(2161,k|0,g|0);b=x;x=0;if(b&1){c=Ia()|0;break}if((f[k>>2]|0)>>>0<7){c=0;break c}if(xj(t,r)|0){c=0;break c}else{g=i;e=j;p=26}}else{if(d){x=0;ua(2161,k|0,i|0);j=x;x=0;if(!(j&1))if((f[k>>2]|0)>>>0<7){c=0;break c}else{p=26;break}else{c=Ia()|0;break}}x=0;ua(2161,k|0,g|0);b=x;x=0;if(b&1){c=Ia()|0;break}g=f[k>>2]|0;x=0;ua(2161,k|0,i|0);i=x;x=0;if(i&1){c=Ia()|0;break}d=f[k>>2]|0;if((g>>>0>>0?d:g)>>>0<7){c=0;break c}p=g>>>0>d>>>0;g=p?e:j;e=p?j:e;p=26}while(0);do if((p|0)==26){p=f[a+36>>2]|0;Bbb(p)|0;U0a(q,p);if((f[l>>2]|0)==8){m$a(m,1);x=0;f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];f[k+12>>2]=f[m+12>>2];d=ia(50,q|0,k|0)|0;p=x;x=0;if(!(p&1)?(x=0,c=ka(8,q|0,g|0,d|0,e|0)|0,q=x,x=0,!(q&1)):0)p=32;else p=29}else{m$a(n,0);x=0;f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];f[k+12>>2]=f[n+12>>2];c=ia(50,q|0,k|0)|0;p=x;x=0;if(!(p&1)?(x=0,o=ka(8,q|0,g|0,e|0,c|0)|0,q=x,x=0,!(q&1)):0){c=o;p=32}else p=29}if((p|0)==29){c=Ia()|0;break}else if((p|0)==32)break c}while(0);V7(r);break b}while(0);V7(r);V7(t);break a}while(0);V7(t);Ua(c|0)}else c=0}else c=0;while(0);u=s;return c|0}function qi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;p=o;a:do if(b[c+24>>0]|0){if(!(b[c+25>>0]|0)){k=a+4|0;Iwa(f[a>>2]|0,f[k>>2]|0)|0;fz(a,c);zma(f[a>>2]|0,10)|0}else k=a+4|0;l=f[c+16>>2]|0;m=p+4|0;n=p+8|0;h=f[c+12>>2]|0;b:while(1){if((h|0)==(l|0))break a;$Qa(p,h);x=0;ia(115,f[a>>2]|0,f[k>>2]|0)|0;j=x;x=0;if(j&1){d=15;break}x=0;ia(71,f[a>>2]|0,40)|0;j=x;x=0;if(j&1){d=15;break}x=0;ia(130,f[a>>2]|0,80881)|0;j=x;x=0;if(j&1){d=15;break}x=0;ua(639,a|0,f[p>>2]|0);j=x;x=0;if(j&1){d=15;break}x=0;ia(62,f[a>>2]|0,80887)|0;j=x;x=0;if(j&1){d=15;break}e=f[n>>2]|0;g=f[m>>2]|0;d=0;while(1){if(d>>>0>=(e-g|0)>>>0)break;c=b[g+d>>0]|0;i=c&255;c:do switch(c<<24>>24){case 10:{x=0;ia(62,f[a>>2]|0,80894)|0;j=x;x=0;if(j&1){d=17;break b}break}case 13:{x=0;ia(62,f[a>>2]|0,80897)|0;j=x;x=0;if(j&1){d=17;break b}break}case 9:{x=0;ia(62,f[a>>2]|0,80901)|0;j=x;x=0;if(j&1){d=17;break b}break}case 12:{x=0;ia(62,f[a>>2]|0,80904)|0;j=x;x=0;if(j&1){d=17;break b}break}case 8:{x=0;ia(62,f[a>>2]|0,80908)|0;j=x;x=0;if(j&1){d=17;break b}break}case 92:{x=0;ia(62,f[a>>2]|0,80912)|0;j=x;x=0;if(j&1){d=17;break b}break}case 34:{x=0;ia(62,f[a>>2]|0,80915)|0;j=x;x=0;if(j&1){d=17;break b}break}case 39:{x=0;ia(62,f[a>>2]|0,80918)|0;j=x;x=0;if(j&1){d=17;break b}break}default:{j=f[a>>2]|0;if((c+-32&255)<95){x=0;ia(131,j|0,c|0)|0;j=x;x=0;if(j&1){d=17;break b}else break c}c=j+(f[(f[j>>2]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|8;x=0;c=ia(71,j|0,92)|0;q=x;x=0;if(q&1){d=17;break b}x=0;c=ia(77,c|0,i>>>4|0)|0;q=x;x=0;if(q&1){d=17;break b}x=0;ia(77,c|0,i&15|0)|0;q=x;x=0;if(q&1){d=17;break b}q=j+(f[(f[j>>2]|0)+-12>>2]|0)+4|0;f[q>>2]=f[q>>2]&-75|2}}while(0);d=d+1|0}x=0;ia(62,f[a>>2]|0,80890)|0;q=x;x=0;if(q&1){d=15;break}I_a(p);h=h+16|0}if((d|0)==15)c=Ia()|0;else if((d|0)==17)c=Ia()|0;I_a(p);Ua(c|0)}while(0);u=o;return}function ri(a,c,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,u=0,v=0,w=0,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;f[e>>2]=a;y=q+11|0;G=q+4|0;z=p+11|0;A=p+4|0;B=(g&512|0)==0;C=j+8|0;D=(r|0)>0;E=o+11|0;F=o+4|0;x=0;while(1){if((x|0)==4)break;a:do switch(b[l+x>>0]|0){case 0:{f[c>>2]=f[e>>2];break}case 1:{f[c>>2]=f[e>>2];v=dc[f[(f[j>>2]|0)+28>>2]&255](j,32)|0;w=f[e>>2]|0;f[e>>2]=w+1;b[w>>0]=v;break}case 3:{w=b[y>>0]|0;s=w<<24>>24<0;if((s?f[G>>2]|0:w&255)|0){v=b[(s?f[q>>2]|0:q)>>0]|0;w=f[e>>2]|0;f[e>>2]=w+1;b[w>>0]=v}break}case 2:{w=b[z>>0]|0;s=w<<24>>24<0;w=s?f[A>>2]|0:w&255;if(!(B|(w|0)==0)){t=s?f[p>>2]|0:p;u=t+w|0;v=f[e>>2]|0;s=v;while(1){if((t|0)==(u|0))break;b[s>>0]=b[t>>0]|0;s=s+1|0;t=t+1|0}f[e>>2]=v+w}break}case 4:{t=f[e>>2]|0;h=k?h+1|0:h;u=h;while(1){if(u>>>0>=i>>>0)break;s=b[u>>0]|0;if(s<<24>>24<=-1)break;if(!(d[(f[C>>2]|0)+(s<<24>>24<<1)>>1]&2048))break;u=u+1|0}if(D){v=r;while(1){s=(v|0)>0;if(!(u>>>0>h>>>0&s))break;w=u+-1|0;H=b[w>>0]|0;s=f[e>>2]|0;f[e>>2]=s+1;b[s>>0]=H;v=v+-1|0;u=w}if(s)w=dc[f[(f[j>>2]|0)+28>>2]&255](j,48)|0;else w=0;s=v;while(1){v=f[e>>2]|0;f[e>>2]=v+1;if((s|0)<=0)break;b[v>>0]=w;s=s+-1|0}b[v>>0]=m}b:do if((u|0)==(h|0)){w=dc[f[(f[j>>2]|0)+28>>2]&255](j,48)|0;H=f[e>>2]|0;f[e>>2]=H+1;b[H>>0]=w}else{H=b[E>>0]|0;s=H<<24>>24<0;if(!((s?f[F>>2]|0:H&255)|0))s=-1;else s=b[(s?f[o>>2]|0:o)>>0]|0;v=0;w=0;while(1){if((u|0)==(h|0))break b;if((w|0)==(s|0)){H=f[e>>2]|0;f[e>>2]=H+1;b[H>>0]=n;v=v+1|0;H=b[E>>0]|0;s=H<<24>>24<0;if(v>>>0<(s?f[F>>2]|0:H&255)>>>0){s=b[(s?f[o>>2]|0:o)+v>>0]|0;s=s<<24>>24==127?-1:s<<24>>24;w=0}else{s=w;w=0}}H=u+-1|0;J=b[H>>0]|0;I=f[e>>2]|0;f[e>>2]=I+1;b[I>>0]=J;w=w+1|0;u=H}}while(0);s=f[e>>2]|0;if((t|0)!=(s|0))while(1){s=s+-1|0;if(t>>>0>=s>>>0)break a;J=b[t>>0]|0;b[t>>0]=b[s>>0]|0;b[s>>0]=J;t=t+1|0}break}default:{}}while(0);x=x+1|0}s=b[y>>0]|0;h=s<<24>>24<0;s=h?f[G>>2]|0:s&255;if(s>>>0>1){h=h?f[q>>2]|0:q;u=h+s|0;v=f[e>>2]|0;t=s+-1|0;s=v;while(1){h=h+1|0;if((h|0)==(u|0))break;b[s>>0]=b[h>>0]|0;s=s+1|0}f[e>>2]=v+t}switch((g&176)<<24>>24){case 32:{f[c>>2]=f[e>>2];break}case 16:break;default:f[c>>2]=a}return}function si(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=u;u=u+80|0;j=g+48|0;k=g+60|0;l=g+36|0;m=g+24|0;n=g+12|0;o=g;h=pUa(f[a+4>>2]|0)|0;f[h+8>>2]=c;a=UQa(a,Or(b,1)|0)|0;i=h+12|0;f[i>>2]=a;hv(h);switch(c|0){case 5:case 3:case 1:case 19:case 17:case 15:case 13:case 11:case 9:case 7:case 21:case 4:case 2:case 0:case 18:case 16:case 14:case 12:case 10:case 8:case 6:case 20:{e=2;break}case 42:case 40:case 38:case 36:case 46:case 41:case 39:case 37:case 35:case 45:case 34:case 32:case 30:case 28:case 26:case 33:case 31:case 29:case 27:case 25:case 44:case 43:case 24:case 51:case 50:case 49:case 48:case 47:case 23:case 22:break;default:hb()}if((e|0)==2?(e=f[(f[i>>2]|0)+4>>2]|0,!((e|0)==5|(e|0)==(d|0))):0){e=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;g=h7a(93486)|0;x=0;va(87,o|0,93486,g|0);g=x;x=0;if(g&1){c=Ia()|0;a=1}else{x=0;a=ga(300,f[h>>2]|0)|0;h=x;x=0;if(!(h&1)?(x=0,ia(59,o|0,a|0)|0,h=x,x=0,!(h&1)):0){f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,n|0,122324)|0;h=x;x=0;if(h&1){c=Ia()|0;a=1}else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;a=ga(228,d|0)|0;d=x;x=0;if(!(d&1)?(x=0,ia(59,m|0,a|0)|0,d=x,x=0,!(d&1)):0){f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,l|0,93500)|0;d=x;x=0;if(d&1){c=Ia()|0;a=1}else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;a=ga(228,f[(f[i>>2]|0)+4>>2]|0)|0;i=x;x=0;if(!(i&1)?(x=0,ia(59,k|0,a|0)|0,i=x,x=0,!(i&1)):0){f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;wa(138,e|0,j|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}c=Ia()|0;HTa(j)}else{c=Ia()|0;a=1}HTa(k)}HTa(l)}else{c=Ia()|0;a=1}HTa(m)}HTa(n)}else{c=Ia()|0;a=1}HTa(o)}if(a)La(e|0);Ua(c|0)}u=g;return h|0}function ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=u;u=u+96|0;y=C+48|0;F=C+80|0;D=C+64|0;n=C+32|0;s=C+16|0;z=C;mD(F,a,1);x=0;va(159,D|0,a|0,1);A=x;x=0;if(A&1)c=Ia()|0;else{A=a+44|0;e=f[A>>2]|0;x=0;g=ga(320,D|0)|0;G=x;x=0;a:do if((((!(G&1)?(h=f[A>>2]|0,x=0,i=ga(320,c|0)|0,G=x,x=0,!(G&1)):0)?(x=0,j=ja(46,f[h>>2]|0,i|0,1)|0,G=x,x=0,!(G&1)):0)?(x=0,k=ja(53,f[h>>2]|0,0,j|0)|0,G=x,x=0,!(G&1)):0)?(x=0,B=ja(45,e|0,g|0,k|0)|0,G=x,x=0,!(G&1)):0){c=f[A>>2]|0;x=0;e=ga(320,D|0)|0;G=x;x=0;if(((!(G&1)?(x=0,l=ja(46,f[c>>2]|0,e|0,1)|0,G=x,x=0,!(G&1)):0)?(m=f[A>>2]|0,m$a(n,32),x=0,f[y>>2]=f[n>>2],f[y+4>>2]=f[n+4>>2],f[y+8>>2]=f[n+8>>2],f[y+12>>2]=f[n+12>>2],m=ia(50,m|0,y|0)|0,G=x,x=0,!(G&1)):0)?(x=0,v=ka(7,f[c>>2]|0,15,l|0,m|0)|0,G=x,x=0,!(G&1)):0){e=f[A>>2]|0;x=0;c=ga(320,d|0)|0;G=x;x=0;do if(((((!(G&1)?(x=0,o=ja(46,f[e>>2]|0,c|0,1)|0,G=x,x=0,!(G&1)):0)?(x=0,p=ja(53,f[e>>2]|0,0,o|0)|0,G=x,x=0,!(G&1)):0)?(q=f[A>>2]|0,m$a(s,32),x=0,f[y>>2]=f[s>>2],f[y+4>>2]=f[s+4>>2],f[y+8>>2]=f[s+8>>2],f[y+12>>2]=f[s+12>>2],q=ia(50,q|0,y|0)|0,G=x,x=0,!(G&1)):0)?(x=0,w=ka(7,f[e>>2]|0,0,p|0,q|0)|0,G=x,x=0,!(G&1)):0)?(r=f[A>>2]|0,x=0,t=ga(320,D|0)|0,G=x,x=0,!(G&1)):0){x=0;c=ja(46,f[r>>2]|0,t|0,1)|0;G=x;x=0;if(G&1)break;x=0;h=ka(8,e|0,v|0,w|0,c|0)|0;G=x;x=0;if(G&1)break;e=f[A>>2]|0;x=0;g=ga(320,F|0)|0;G=x;x=0;do if(!(G&1)){c=f[A>>2]|0;m$a(z,0);x=0;f[y>>2]=f[z>>2];f[y+4>>2]=f[z+4>>2];f[y+8>>2]=f[z+8>>2];f[y+12>>2]=f[z+12>>2];c=ia(50,c|0,y|0)|0;G=x;x=0;if(G&1)break;x=0;c=ja(45,e|0,g|0,c|0)|0;G=x;x=0;if(G&1)break;x=0;va(161,a|0,b|0,F|0);G=x;x=0;if(G&1)break;x=0;c=ma(26,f[A>>2]|0,b|0,B|0,c|0,h|0)|0;G=x;x=0;if(G&1)break;BVa(f[a+16>>2]|0,c)|0;HCa(D);HCa(F);u=C;return}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break}c=Ia()|0}else E=26;while(0);if((E|0)==26)c=Ia()|0;HCa(D)}HCa(F);Ua(c|0)}function ui(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;i=f[a>>2]|0;do if(i){j=f[i+12>>2]|0;if((j|0)==(f[i+16>>2]|0))i=bc[f[(f[i>>2]|0)+36>>2]&511](i)|0;else i=X6a(b[j>>0]|0)|0;if($1a(i,-1)|0){f[a>>2]=0;j=1;break}else{j=(f[a>>2]|0)==0;break}}else j=1;while(0);if(c){i=f[c+12>>2]|0;if((i|0)==(f[c+16>>2]|0))i=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else i=X6a(b[i>>0]|0)|0;if(!($1a(i,-1)|0))if(j){l=c;p=16}else p=15;else p=13}else p=13;if((p|0)==13)if(j)p=15;else{l=0;p=16}a:do if((p|0)==15){f[e>>2]=f[e>>2]|6;i=0}else if((p|0)==16){i=f[a>>2]|0;j=f[i+12>>2]|0;if((j|0)==(f[i+16>>2]|0))i=bc[f[(f[i>>2]|0)+36>>2]&511](i)|0;else i=X6a(b[j>>0]|0)|0;j=i&255;if(j<<24>>24>-1?(o=g+8|0,d[(f[o>>2]|0)+(i<<24>>24<<1)>>1]&2048):0){i=(ec[f[(f[g>>2]|0)+36>>2]&127](g,j,0)|0)<<24>>24;j=f[a>>2]|0;c=j+12|0;k=f[c>>2]|0;if((k|0)==(f[j+16>>2]|0))bc[f[(f[j>>2]|0)+40>>2]&511](j)|0;else f[c>>2]=k+1;m=l;while(1){i=i+-48|0;n=h+-1|0;j=f[a>>2]|0;do if(j){c=f[j+12>>2]|0;if((c|0)==(f[j+16>>2]|0))j=bc[f[(f[j>>2]|0)+36>>2]&511](j)|0;else j=X6a(b[c>>0]|0)|0;if($1a(j,-1)|0){f[a>>2]=0;k=1;break}else{k=(f[a>>2]|0)==0;break}}else k=1;while(0);if(!m){j=1;m=0}else{j=f[m+12>>2]|0;if((j|0)==(f[m+16>>2]|0))j=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0;else j=X6a(b[j>>0]|0)|0;c=$1a(j,-1)|0;j=c;l=c?0:l;m=c?0:m}c=f[a>>2]|0;if(!((h|0)>1&(k^j)))break;j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=X6a(b[j>>0]|0)|0;c=j&255;if(c<<24>>24<=-1)break a;if(!(d[(f[o>>2]|0)+(j<<24>>24<<1)>>1]&2048))break a;i=(i*10|0)+((ec[f[(f[g>>2]|0)+36>>2]&127](g,c,0)|0)<<24>>24)|0;j=f[a>>2]|0;c=j+12|0;k=f[c>>2]|0;if((k|0)==(f[j+16>>2]|0))bc[f[(f[j>>2]|0)+40>>2]&511](j)|0;else f[c>>2]=k+1;h=n}do if(c){j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=X6a(b[j>>0]|0)|0;if($1a(j,-1)|0){f[a>>2]=0;c=1;break}else{c=(f[a>>2]|0)==0;break}}else c=1;while(0);if(l){j=f[l+12>>2]|0;if((j|0)==(f[l+16>>2]|0))j=bc[f[(f[l>>2]|0)+36>>2]&511](l)|0;else j=X6a(b[j>>0]|0)|0;if(!($1a(j,-1)|0)){if(c)break}else p=60}else p=60;if((p|0)==60?!c:0)break;f[e>>2]=f[e>>2]|2;break}f[e>>2]=f[e>>2]|4;i=0}while(0);return i|0}function vi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;g=n+64|0;l=n+40|0;k=n+12|0;m=n+24|0;j=n;a:do if((c-a|0)>2?(b[a>>0]|0)==102:0){b:do switch(b[a+1>>0]|0){case 112:{e=QZ(a+2|0,c,g)|0;g=QX(e,c)|0;c:do if((g|0)!=(c|0)?(b[g>>0]|0)==95:0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;SM(m,e,g);x=0;ja(101,m|0,0,124465)|0;j=x;x=0;do if(j&1)a=Ia()|0;else{f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}NY(l,k);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(l);HTa(k);break}}else{yY(e,l);f[a>>2]=(f[a>>2]|0)+24}JJa(l);HTa(k);HTa(m);a=g+1|0;break c}while(0);HTa(m);break b}while(0);break a}case 76:{e=QX(a+2|0,c)|0;d:do if((((e|0)!=(c|0)?(b[e>>0]|0)==112:0)?(h=QZ(e+1|0,c,g)|0,i=QX(h,c)|0,(i|0)!=(c|0)):0)?(b[i>>0]|0)==95:0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;SM(m,h,i);x=0;ja(101,m|0,0,124465)|0;k=x;x=0;do if(k&1)a=Ia()|0;else{f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}NY(l,j);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(l);HTa(j);break}}else{yY(e,l);f[a>>2]=(f[a>>2]|0)+24}JJa(l);HTa(j);HTa(m);a=i+1|0;break d}while(0);HTa(m);break b}while(0);break a}default:break a}while(0);Ua(a|0)}while(0);u=n;return a|0}function wi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+64|0;q=p+52|0;k=p+48|0;e=p+24|0;l=p+12|0;o=p;r=p+36|0;h=a+36|0;n=Bbb(f[h>>2]|0)|0;c=b+24|0;f[k>>2]=f[c>>2];f[q>>2]=f[k>>2];n=Sma(n,q)|0;if(!n){k=yCa(134176,62367)|0;zma(wfa(k,f[c>>2]|0)|0,10)|0;hb()}c=f[n+4>>2]|0;d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;k=b+8|0;i=b+12|0;c=Bbb(f[i>>2]|0)|0;j=n+8|0;g=n+12|0;b=(f[g>>2]|0)-(f[j>>2]|0)>>2;a:do if(c>>>0>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,62389,h7a(62389)|0);x=0;va(95,a|0,e|0,n|0);b=x;x=0;if(b&1){c=Ia()|0;HTa(e);break}HTa(e);while(1){c=Bbb(f[i>>2]|0)|0;d=f[j>>2]|0;b=(f[g>>2]|0)-d>>2;if(c>>>0>=b>>>0){m=11;break a}m=f[d+(c<<2)>>2]|0;aaa(k,FSa(m,Bbb(f[h>>2]|0)|0)|0)}}else m=11;while(0);b:do if((m|0)==11){do if(c>>>0>b>>>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,62423,h7a(62423)|0);x=0;va(95,a|0,l|0,n|0);m=x;x=0;if(m&1){c=Ia()|0;HTa(l);break b}else{HTa(l);d7(k,(f[g>>2]|0)-(f[j>>2]|0)>>2);break}}while(0);d=0;while(1){if(d>>>0>=(Bbb(f[i>>2]|0)|0)>>>0){m=17;break}m=JDa(k,d)|0;m=f[(f[m>>2]|0)+4>>2]|0;if(!((m|0)==5?1:(m|0)==(f[(f[j>>2]|0)+(d<<2)>>2]|0))){AY(r,d);x=0;ia(83,r|0,62459)|0;m=x;x=0;if(m&1){m=29;break}f[q>>2]=f[r>>2];f[q+4>>2]=f[r+4>>2];f[q+8>>2]=f[r+8>>2];c=0;while(1){if((c|0)==3)break;f[r+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,q|0,62517)|0;m=x;x=0;if(m&1){m=30;break}f[o>>2]=f[q>>2];f[o+4>>2]=f[q+4>>2];f[o+8>>2]=f[q+8>>2];c=0;while(1){if((c|0)==3)break;f[q+(c<<2)>>2]=0;c=c+1|0}x=0;va(95,a|0,o|0,n|0);m=x;x=0;if(m&1){m=31;break}HTa(o);HTa(q);HTa(r)}d=d+1|0}if((m|0)==17){u=p;return}else if((m|0)==29)c=Ia()|0;else if((m|0)==30){c=Ia()|0;m=32}else if((m|0)==31){c=Ia()|0;HTa(o);m=32}if((m|0)==32)HTa(q);HTa(r)}while(0);Ua(c|0)}function xi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;s=u;u=u+32|0;v=s+12|0;t=s;a:do if(!(lVa(a)|0)){e=b+8|0;if(!(Iab(f[e>>2]|0)|0)){Lk(a,f[b+12>>2]|0)|0;break}r=a+140|0;cR(v,r);p=a+116|0;q=fQa(f[p>>2]|0)|0;d=0;while(1){if(d>>>0>=q>>>0){d=6;break}x=0;c=ia(80,f[p>>2]|0,d|0)|0;o=x;x=0;if(o&1){d=10;break}x=0;c=ia(119,a|0,c|0)|0;o=x;x=0;if(o&1){d=10;break}f[(f[r>>2]|0)+(d<<2)>>2]=c;d=d+1|0}if((d|0)==6){x=0;ua(679,t|0,r|0);o=x;x=0;if(o&1)c=Ia()|0;else{m=a+124|0;n=a+128|0;o=(f[n>>2]|0)-(f[m>>2]|0)>>2;x=0;ia(118,a|0,f[b+12>>2]|0)|0;l=x;x=0;do if(!(l&1)){x=0;j=ia(120,a+152|0,e|0)|0;l=x;x=0;if(l&1){c=Ia()|0;break}k=j+4|0;l=a+144|0;i=0;b:while(1){if(i>>>0>=q>>>0){d=15;break}x=0;c=ia(80,f[p>>2]|0,i|0)|0;h=x;x=0;if(h&1){d=21;break}c:do if(n_a(c)|0){g=f[(f[t>>2]|0)+(i<<2)>>2]|0;h=f[(f[v>>2]|0)+(i<<2)>>2]|0;e=f[k>>2]|0;b=f[j>>2]|0;while(1){if((b|0)==(e|0))break;c=f[b>>2]|0;if($1a(c,f[b+4>>2]|0)|0){d=26;break b}c=f[c+(i<<2)>>2]|0;x=0;d=ia(121,c|0,g|0)|0;w=x;x=0;if(w&1){d=31;break b}if(d){x=0;c=ia(121,c|0,h|0)|0;w=x;x=0;if(w&1){d=31;break b}if(c)break c}b=b+12|0}b=o;while(1){c=f[m>>2]|0;if(b>>>0>=(f[n>>2]|0)-c>>2>>>0)break;c=f[c+(b<<2)>>2]|0;d=f[c+16>>2]|0;c=f[c+12>>2]|0;while(1){if((c|0)==(d|0))break;if((f[c>>2]|0)==(g|0))f[c>>2]=h;c=c+4|0}b=b+1|0}d=f[l>>2]|0;c=f[r>>2]|0;while(1){if((c|0)==(d|0))break c;if((f[c>>2]|0)==(g|0))f[c>>2]=h;c=c+4|0}}while(0);i=i+1|0}if((d|0)==15){uSa(t);uSa(v);break a}else if((d|0)==21){c=Ia()|0;break}else if((d|0)==26){x=0;wa(71,76285,76199,331,76309);x=0;c=Ia()|0;break}else if((d|0)==31){c=Ia()|0;break}}else c=Ia()|0;while(0);uSa(t)}}else if((d|0)==10)c=Ia()|0;uSa(v);Ua(c|0)}while(0);u=s;return a|0}function yi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=u;u=u+64|0;e=i+40|0;d=i+36|0;j=i+24|0;k=i+12|0;l=i;a:do if(lRa(c)|0){E1a(d,jF(c)|0);f[e>>2]=f[d>>2];d=Gq(a+112|0,e)|0}else{x=0;d=ga(296,c|0)|0;h=x;x=0;do if(!(h&1)?(f[e>>2]=0,f[e+4>>2]=0,f[e+8>>2]=0,h=h7a(d)|0,x=0,va(87,e|0,d|0,h|0),h=x,x=0,!(h&1)):0){x=0;g=ga(301,e|0)|0;h=I;d=x;x=0;if(d&1){d=Ka(39472,39504)|0;n=I;HTa(e);e=n;n=9;break}HTa(e);e=f[a+112>>2]|0;d=(f[a+116>>2]|0)-e>>2;if(!(h>>>0>0|(h|0)==0&g>>>0>d>>>0)){if((g|0)==(d|0)&(h|0)==0){b[a+108>>0]=1;d=132340}else d=e+(d+~g<<2)|0;d=f[d>>2]|0;break a}g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;m=h7a(92798)|0;x=0;va(87,l|0,92798,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,g|0,l|0,f[c+28>>2]|0,f[c+32>>2]|0);m=x;x=0;if(m&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(l);if(!e){m=d;break}}else d=Ia()|0;La(g|0);m=d}else n=7;while(0);if((n|0)==7){d=Ka(39472,39504)|0;e=I;n=9}do if((n|0)==9){if((e|0)==(Db(39472)|0)){Fa(d|0)|0;g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;l=h7a(92751)|0;x=0;va(87,k|0,92751,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,g|0,k|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(k);if(e)n=23}else{d=Ia()|0;n=23}if((n|0)==23)La(g|0);x=0;sa(6);n=x;x=0;if(!(n&1)){m=d;break}}else{if((e|0)!=(Db(39504)|0)){m=d;break}Fa(d|0)|0;g=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;l=h7a(92772)|0;x=0;va(87,j|0,92772,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,g|0,j|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(j);if(e)n=19}else{d=Ia()|0;n=19}if((n|0)==19)La(g|0);x=0;sa(6);n=x;x=0;if(!(n&1)){m=d;break}}n=Ja(0)|0;r2a(n)}while(0);Ua(m|0)}while(0);u=i;return d|0}function zi(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+80|0;w=x+72|0;q=x+68|0;r=x+64|0;s=x+60|0;t=x+56|0;k=x+52|0;v=x+48|0;l=x+44|0;m=x+40|0;n=x+36|0;o=x+32|0;p=x+28|0;g=x+24|0;h=x;i=x+20|0;j=x+16|0;a:do switch(f[d+4>>2]|0){case 1:{switch(b[d+8>>0]|0){case 1:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+36>>2]|0;f[r>>2]=f[e>>2];f[w>>2]=f[r>>2];m$a(a,(dc[d&255](c,w)|0)&255);break a}else{d=f[g+32>>2]|0;f[q>>2]=f[e>>2];f[w>>2]=f[q>>2];m$a(a,(dc[d&255](c,w)|0)<<24>>24);break a}}case 2:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+44>>2]|0;f[t>>2]=f[e>>2];f[w>>2]=f[t>>2];m$a(a,(dc[d&255](c,w)|0)&65535);break a}else{d=f[g+40>>2]|0;f[s>>2]=f[e>>2];f[w>>2]=f[s>>2];m$a(a,(dc[d&255](c,w)|0)<<16>>16);break a}}case 4:{d=f[(f[c>>2]|0)+48>>2]|0;f[k>>2]=f[e>>2];f[w>>2]=f[k>>2];m$a(a,dc[d&255](c,w)|0);break a}default:hb()}break}case 2:{switch(b[d+8>>0]|0){case 1:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+36>>2]|0;f[l>>2]=f[e>>2];f[w>>2]=f[l>>2];SSa(a,(dc[d&255](c,w)|0)&255,0);break a}else{d=f[g+32>>2]|0;f[v>>2]=f[e>>2];f[w>>2]=f[v>>2];e=(dc[d&255](c,w)|0)<<24>>24;SSa(a,e,((e|0)<0)<<31>>31);break a}}case 2:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+44>>2]|0;f[n>>2]=f[e>>2];f[w>>2]=f[n>>2];SSa(a,(dc[d&255](c,w)|0)&65535,0);break a}else{d=f[g+40>>2]|0;f[m>>2]=f[e>>2];f[w>>2]=f[m>>2];e=(dc[d&255](c,w)|0)<<16>>16;SSa(a,e,((e|0)<0)<<31>>31);break a}}case 4:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+52>>2]|0;f[p>>2]=f[e>>2];f[w>>2]=f[p>>2];SSa(a,dc[d&255](c,w)|0,0);break a}else{d=f[g+48>>2]|0;f[o>>2]=f[e>>2];f[w>>2]=f[o>>2];e=dc[d&255](c,w)|0;SSa(a,e,((e|0)<0)<<31>>31);break a}}case 8:{d=f[(f[c>>2]|0)+56>>2]|0;f[g>>2]=f[e>>2];f[w>>2]=f[g>>2];SSa(a,dc[d&255](c,w)|0,I);break a}default:hb()}break}case 3:{d=f[(f[c>>2]|0)+52>>2]|0;f[i>>2]=f[e>>2];f[w>>2]=f[i>>2];m$a(h,dc[d&255](c,w)|0);LHa(a,h);break}case 4:{d=f[(f[c>>2]|0)+60>>2]|0;f[j>>2]=f[e>>2];f[w>>2]=f[j>>2];SSa(h,dc[d&255](c,w)|0,I);e=h+8|0;pGa(a,f[h>>2]|0,f[e>>2]|0,f[e+4>>2]|0);break}default:hb()}while(0);u=x;return}function Ai(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;r=u;u=u+256|0;q=r+216|0;j=r+112|0;v=r+232|0;p=r+224|0;t=r+220|0;l=r+250|0;n=r+240|0;o=r;f[v>>2]=j;f[v+4>>2]=512;ZXa(t,g);a=f[t>>2]|0;x=0;k=ia(73,a|0,134880)|0;m=x;x=0;if(m&1){a=Ia()|0;k=v}else{b[l>>0]=0;x=0;a=ra(1,c|0,f[d>>2]|0,e|0,a|0,f[g+4>>2]|0,h|0,l|0,k|0,v|0,p|0,j+100|0)|0;m=x;x=0;a:do if(m&1)s=9;else{b:do if(a){x=0;ka(f[(f[k>>2]|0)+32>>2]|0,k|0,121045,121055,n|0)|0;m=x;x=0;if(m&1)a=Ia()|0;else{k=f[p>>2]|0;g=f[v>>2]|0;a=k-g|0;if((a|0)>98){a=Kc(a+2|0)|0;j=a;if(!a){x=0;sa(10);x=0}else s=14}else{a=o;j=0;s=14}do if((s|0)==14){if(b[l>>0]|0){b[a>>0]=45;a=a+1|0}l=n+10|0;m=n;while(1){if(g>>>0>=k>>>0)break;e=b[g>>0]|0;k=n;while(1){if((k|0)==(l|0)){k=l;break}if((b[k>>0]|0)==e<<24>>24)break;k=k+1|0}b[a>>0]=b[121045+(k-m)>>0]|0;g=g+1|0;a=a+1|0;k=f[p>>2]|0}b[a>>0]=0;f[q>>2]=i;if((UKa(o,121056,q)|0)!=1){x=0;ta(513,121060);x=0;break}if(j|0)rg(j);break b}while(0);a=Ia()|0;if(j|0)rg(j)}break a}while(0);a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=X6a(b[j>>0]|0)|0;if($1a(a,-1)|0){f[c>>2]=0;k=1;break}else{k=(f[c>>2]|0)==0;break}}else k=1;while(0);a=f[d>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=X6a(b[j>>0]|0)|0;if(!($1a(a,-1)|0))if(k)break;else{s=44;break}else{f[d>>2]=0;s=42;break}}else s=42;while(0);if((s|0)==42?k:0)s=44;if((s|0)==44)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;JCa(t);a=f[v>>2]|0;f[v>>2]=0;if(a|0?(x=0,ta(f[v+4>>2]|0,a|0),v=x,x=0,v&1):0){v=Ja(0)|0;r2a(v)}u=r;return j|0}while(0);if((s|0)==9)a=Ia()|0;k=v;j=f[v>>2]|0}JCa(t);f[k>>2]=0;if(j|0?(x=0,ta(f[v+4>>2]|0,j|0),v=x,x=0,v&1):0){v=Ja(0)|0;r2a(v)}Ua(a|0);return 0}function Bi(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+48|0;m=p+40|0;n=p+28|0;k=p+24|0;o=p+12|0;q=p;l=a+12|0;do if(b[l>>0]|0){e=yCa(134176,97862)|0;ZXa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[m>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,j=x,x=0,!(j&1)):0){JCa(m);Wq(e,d)|0;du(e)|0;break}q=Ia()|0;JCa(m);Ua(q|0)}while(0);j=nq(a)|0;do if(b[l>>0]|0){c=zm(yCa(134176,97877)|0,j)|0;ZXa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[m>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(m);Wq(c,g)|0;du(c)|0;break}q=Ia()|0;JCa(m);Ua(q|0)}while(0);i=0;while(1){if(i>>>0>=j>>>0){d=13;break}if(b[l>>0]|0){d=yCa(134176,97883)|0;ZXa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[m>>2]|0,134880)|0;h=x;x=0;if(h&1){d=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){d=17;break}JCa(m);Wq(d,c)|0;du(d)|0}d=mF(a)|0;e=nq(a)|0;if(e>>>0>1){f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;WZ(n,97892,h7a(97892)|0);x=0;ua(1869,a|0,n|0);h=x;x=0;if(h&1){d=22;break}HTa(n)}g=lD(a)|0;h=f[a>>2]|0;zY(q,(f[h+52>>2]|0)-(f[h+48>>2]|0)>>2);x=0;ia(83,q|0,97925)|0;c=x;x=0;if(c&1){d=31;break}f[o>>2]=f[q>>2];f[o+4>>2]=f[q+4>>2];f[o+8>>2]=f[q+8>>2];c=0;while(1){if((c|0)==3)break;f[q+(c<<2)>>2]=0;c=c+1|0}x=0;ua(83,k|0,o|0);c=x;x=0;if(c&1){d=32;break}x=0;f[m>>2]=f[k>>2];c=ka(6,m|0,d|0,g|0,(e|0)==0|0)|0;g=x;x=0;if(g&1){d=32;break}x=0;ua(71,h|0,c|0);h=x;x=0;if(h&1){d=32;break}HTa(o);HTa(q);i=i+1|0}if((d|0)==13){u=p;return}else if((d|0)==17){q=Ia()|0;JCa(m);Ua(q|0)}else if((d|0)==22){c=Ia()|0;HTa(n)}else if((d|0)==31){c=Ia()|0;d=33}else if((d|0)==32){c=Ia()|0;HTa(o);d=33}if((d|0)==33)HTa(q);Ua(c|0)}function Ci(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;r=u;u=u+592|0;q=r+560|0;j=r+160|0;v=r+576|0;p=r+568|0;t=r+564|0;l=r+584|0;n=r+112|0;o=r;f[v>>2]=j;f[v+4>>2]=512;ZXa(t,g);a=f[t>>2]|0;x=0;k=ia(73,a|0,134912)|0;m=x;x=0;if(m&1){a=Ia()|0;k=v}else{b[l>>0]=0;x=0;a=ra(2,c|0,f[d>>2]|0,e|0,a|0,f[g+4>>2]|0,h|0,l|0,k|0,v|0,p|0,j+400|0)|0;m=x;x=0;a:do if(m&1)s=9;else{b:do if(a){x=0;ka(f[(f[k>>2]|0)+48>>2]|0,k|0,121171,121181,n|0)|0;m=x;x=0;if(m&1)a=Ia()|0;else{k=f[p>>2]|0;g=f[v>>2]|0;a=k-g|0;if((a|0)>392){a=Kc((a>>>2)+2|0)|0;j=a;if(!a){x=0;sa(10);x=0}else s=14}else{a=o;j=0;s=14}do if((s|0)==14){if(b[l>>0]|0){b[a>>0]=45;a=a+1|0}l=n+40|0;m=n;while(1){if(g>>>0>=k>>>0)break;e=f[g>>2]|0;k=n;while(1){if((k|0)==(l|0)){k=l;break}if((f[k>>2]|0)==(e|0))break;k=k+4|0}b[a>>0]=b[121171+(k-m>>2)>>0]|0;g=g+4|0;a=a+1|0;k=f[p>>2]|0}b[a>>0]=0;f[q>>2]=i;if((UKa(o,121056,q)|0)!=1){x=0;ta(513,121060);x=0;break}if(j|0)rg(j);break b}while(0);a=Ia()|0;if(j|0)rg(j)}break a}while(0);a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=Bbb(f[j>>2]|0)|0;if(T5a(a)|0){f[c>>2]=0;k=1;break}else{k=(f[c>>2]|0)==0;break}}else k=1;while(0);a=f[d>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=Bbb(f[j>>2]|0)|0;if(!(T5a(a)|0))if(k)break;else{s=44;break}else{f[d>>2]=0;s=42;break}}else s=42;while(0);if((s|0)==42?k:0)s=44;if((s|0)==44)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;JCa(t);a=f[v>>2]|0;f[v>>2]=0;if(a|0?(x=0,ta(f[v+4>>2]|0,a|0),v=x,x=0,v&1):0){v=Ja(0)|0;r2a(v)}u=r;return j|0}while(0);if((s|0)==9)a=Ia()|0;k=v;j=f[v>>2]|0}JCa(t);f[k>>2]=0;if(j|0?(x=0,ta(f[v+4>>2]|0,j|0),v=x,x=0,v&1):0){v=Ja(0)|0;r2a(v)}Ua(a|0);return 0}function Di(a,b){a=a|0;b=b|0;var c=0;c=b+12|0;Voa(a,f[(f[c>>2]|0)+4>>2]|0,b);c=f[(f[c>>2]|0)+4>>2]|0;a:do if((c|0)!=5)do switch(f[b+8>>2]|0){case 4:case 2:case 0:{aja(a,c,1,b,82915);break a}case 5:case 3:case 1:{aja(a,c,2,b,82952);break a}case 18:case 16:case 14:case 12:case 10:case 8:case 6:{aja(a,c,3,b,82989);break a}case 19:case 17:case 15:case 13:case 11:case 9:case 7:{aja(a,c,4,b,83026);break a}case 20:{Wqa(a,(c|0)==1,b,83063);break a}case 21:{Wqa(a,(c|0)==2,b,83089);break a}case 48:case 47:case 23:case 22:{aja(a,c,1,b,83115);break a}case 51:case 50:case 49:{aja(a,c,2,b,83115);break a}case 24:{aja(a,c,2,b,83143);break a}case 25:{aja(a,c,3,b,83169);break a}case 26:{aja(a,c,3,b,83169);break a}case 27:{aja(a,c,3,b,83169);break a}case 28:{aja(a,c,3,b,83169);break a}case 29:{aja(a,c,4,b,83169);break a}case 30:{aja(a,c,4,b,83169);break a}case 31:{aja(a,c,4,b,83169);break a}case 32:{aja(a,c,4,b,83169);break a}case 33:{aja(a,c,3,b,83196);break a}case 34:{aja(a,c,4,b,83233);break a}case 37:{aja(a,c,1,b,83270);break a}case 38:{aja(a,c,1,b,83270);break a}case 35:{aja(a,c,1,b,83270);break a}case 36:{aja(a,c,1,b,83270);break a}case 41:{aja(a,c,2,b,83270);break a}case 42:{aja(a,c,2,b,83270);break a}case 39:{aja(a,c,2,b,83270);break a}case 40:{aja(a,c,2,b,83270);break a}case 43:{aja(a,c,3,b,83299);break a}case 44:{aja(a,c,4,b,83328);break a}case 45:{aja(a,c,1,b,83356);break a}case 46:{aja(a,c,2,b,83393);break a}default:hb()}while(0);while(0);return}function Ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+64|0;q=p+40|0;o=p+28|0;l=p+16|0;m=p+4|0;n=p;k=a+132|0;d=f[k>>2]|0;a:do switch(d|0){case 0:break;case 1:{f[q>>2]=0;d=b+4|0;c=f[d>>2]|0;if(c>>>0<(f[b+8>>2]|0)>>>0){f[c>>2]=0;f[d>>2]=c+4}else IL(b,q);break}default:{c=a+32|0;if((BZa(Bbb(f[c>>2]|0)|0)|0)>>>0<2){l1(q,d);Taa(b,q);uSa(q);break a}NS(q,a+168|0);i=uZa(Bbb(f[c>>2]|0)|0)|0;d=f[q>>2]|0;c=0;while(1){if((c|0)==(i|0))break;f[d+(c<<2)>>2]=-1;c=c+1|0}x=0;ua(3129,o|0,f[k>>2]|0);j=x;x=0;if(j&1)c=Ia()|0;else{x=0;va(174,l|0,o|0,q|0);j=x;x=0;if(j&1)c=Ia()|0;else{Taa(o,l);uSa(l);x=0;wa(154,a|0,o|0,b|0,l|0);j=x;x=0;do if(j&1)c=Ia()|0;else{d=f[b>>2]|0;h=f[b+4>>2]|0;b:do if((d|0)==(h|0))c=d;else{c=d;g=d;e=d;while(1){d=g+4|0;if((d|0)==(h|0))break b;j=(f[e>>2]|0)>>>0<(f[d>>2]|0)>>>0;c=j?d:c;g=d;e=j?d:e}}while(0);j=f[c>>2]|0;x=0;ta(509,o|0);h=x;x=0;if(h&1){c=Ia()|0;break}e=i+-1|0;g=f[o>>2]|0;c=i;while(1){d=f[k>>2]|0;if(c>>>0>=d>>>0)break;f[g+(c<<2)>>2]=e-c+d;c=c+1|0}x=0;va(174,m|0,o|0,q|0);k=x;x=0;if(k&1){c=Ia()|0;break}Taa(o,m);uSa(m);f[m>>2]=0;c=m+4|0;f[c>>2]=0;f[m+8>>2]=0;x=0;wa(154,a|0,o|0,m|0,n|0);a=x;x=0;if(a&1){c=Ia()|0;uSa(m);break}d=f[m>>2]|0;h=f[c>>2]|0;c:do if((d|0)==(h|0))c=d;else{c=d;g=d;e=d;while(1){d=g+4|0;if((d|0)==(h|0))break c;a=(f[e>>2]|0)>>>0<(f[d>>2]|0)>>>0;c=a?d:c;g=d;e=a?d:e}}while(0);a=f[n>>2]|0;n=f[l>>2]|0;if(!(a>>>0<=n>>>0?!((a|0)==(n|0)?(f[c>>2]|0)>>>0>>0:0):0))_8(b,m);uSa(m);uSa(o);uSa(q);break a}while(0)}uSa(o)}uSa(q);Ua(c|0)}}while(0);u=p;return}function Fi(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+32|0;s=v+20|0;t=v+12|0;c=v+16|0;w=v;b=f[b>>2]|0;if(Iab(b)|0){j=f[f[a>>2]>>2]|0;f[c>>2]=b;f[s>>2]=f[c>>2];j=KI(j,s)|0;f[t>>2]=j;XA(w,j);q=a+4|0;b=f[q>>2]|0;r=j;c=Mr(b,w)|0;do if(!c){p=f[a+8>>2]|0;f[s>>2]=r;o=HH(s,4)|0;k=p+4|0;l=f[k>>2]|0;m=(l|0)==0;a:do if(!m){h=l+-1|0;i=(h&l|0)==0;if(!i)if(o>>>0>>0)c=o;else c=(o>>>0)%(l>>>0)|0;else c=h&o;a=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!a)a=18;else while(1){a=f[a>>2]|0;if(!a){a=18;break a}g=f[a+4>>2]|0;if((g|0)!=(o|0)){if(!i){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&h;if((g|0)!=(c|0)){a=18;break a}}if((f[a+8>>2]|0)==(j|0)){a=37;break}}}else{c=0;a=18}while(0);b:do if((a|0)==18){x=0;wa(135,s|0,p|0,o|0,t|0);j=x;x=0;if(j&1)a=39;else{h=p+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[p+16>>2];do if(m|e*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(1626,p|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){b=Ia()|0;c=f[s>>2]|0;f[s>>2]=0;if(c|0)ubb(c);break b}b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;c=c&o;break}if(o>>>0>>0){g=b;c=o}else{g=b;c=(o>>>0)%(b>>>0)|0}}else g=l;while(0);b=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!b){b=p+8|0;a=f[s>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;f[(f[p>>2]|0)+(c<<2)>>2]=b;b=f[a>>2]|0;if(!b)b=s;else{b=f[b+4>>2]|0;c=g+-1|0;if(c&g){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&c;f[(f[p>>2]|0)+(b<<2)>>2]=a;b=s}}else{p=f[s>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p;b=s}f[h>>2]=(f[h>>2]|0)+1;f[b>>2]=0;b=f[q>>2]|0;a=37}}while(0);if((a|0)==37){x=0;b=ia(155,b|0,w|0)|0;s=x;x=0;if(s&1)a=39;else{f[b>>2]=r;b=t;break}}if((a|0)==39)b=Ia()|0;HTa(w);Ua(b|0)}else b=c+20|0;while(0);b=f[f[b>>2]>>2]|0;HTa(w)}u=v;return b|0}function Gi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=f[c>>2]|0;if(d)if(f[c+4>>2]|0){e=cca(c)|0;d=f[e>>2]|0;if(!d){g=e;i=4}else{g=e;i=6}}else{g=c;e=c;i=6}else{g=c;e=c;i=4}if((i|0)==4){d=f[e+4>>2]|0;if(!d){l=e+8|0;m=0;k=e;d=0}else i=6}if((i|0)==6){l=e+8|0;f[d+8>>2]=f[l>>2];m=1;k=e}e=f[l>>2]|0;h=f[e>>2]|0;if((h|0)==(k|0)){f[e>>2]=d;if((k|0)==(a|0)){a=d;h=0}else h=f[e+4>>2]|0}else f[e+4>>2]=d;i=k+12|0;j=(b[i>>0]|0)!=0;if((k|0)!=(c|0)){s=c+8|0;e=f[s>>2]|0;f[l>>2]=e;f[((f[f[s>>2]>>2]|0)==(c|0)?e:e+4|0)>>2]=k;e=f[c>>2]|0;f[g>>2]=e;f[e+8>>2]=k;e=f[c+4>>2]|0;f[k+4>>2]=e;if(e|0)f[e+8>>2]=k;b[i>>0]=b[c+12>>0]|0;a=(a|0)==(c|0)?k:a}a:do if(j&(a|0)!=0){if(m){b[d+12>>0]=1;break}while(1){d=f[h+8>>2]|0;e=h+12|0;g=(b[e>>0]|0)!=0;if((f[d>>2]|0)==(h|0)){if(g)e=h;else{b[e>>0]=1;b[d+12>>0]=0;T6(d);s=f[h+4>>2]|0;e=f[s>>2]|0;a=(a|0)==(s|0)?h:a}g=f[e>>2]|0;h=(g|0)==0;if(!h?(r=g+12|0,(b[r>>0]|0)==0):0){d=r;i=46;break}d=f[e+4>>2]|0;if(d|0?(n=d+12|0,(b[n>>0]|0)==0):0){i=43;break}b[e+12>>0]=0;d=f[e+8>>2]|0;e=d+12|0;if((d|0)==(a|0)|(b[e>>0]|0)==0){i=42;break}}else{if(g)e=h;else{b[e>>0]=1;b[d+12>>0]=0;S7(d);s=f[h>>2]|0;e=f[s+4>>2]|0;a=(a|0)==(s|0)?h:a}g=f[e>>2]|0;if(g|0?(p=g+12|0,(b[p>>0]|0)==0):0){i=30;break}d=f[e+4>>2]|0;if(d|0?(q=d+12|0,(b[q>>0]|0)==0):0){d=q;i=34;break}b[e+12>>0]=0;e=f[e+8>>2]|0;if((e|0)==(a|0)){i=27;break}d=e+12|0;if(!(b[d>>0]|0)){i=29;break}else d=e}h=f[d+8>>2]|0;h=f[((f[h>>2]|0)==(d|0)?h+4|0:h)>>2]|0}do if((i|0)==27){d=a+12|0;i=29}else if((i|0)==30){d=f[e+4>>2]|0;if(!d)d=p;else{d=d+12|0;if(!(b[d>>0]|0)){i=34;break}d=g+12|0}b[d>>0]=1;b[e+12>>0]=0;T6(e);d=f[e+8>>2]|0;e=d;d=(f[d+4>>2]|0)+12|0;i=34}else if((i|0)==42){b[e>>0]=1;break a}else if((i|0)==43){if(!h?(o=g+12|0,(b[o>>0]|0)==0):0){d=o;i=46;break}b[n>>0]=1;b[e+12>>0]=0;S7(e);d=f[e+8>>2]|0;e=d;d=(f[d>>2]|0)+12|0;i=46}while(0);if((i|0)==29){b[d>>0]=1;break}else if((i|0)==34){s=f[e+8>>2]|0;r=s+12|0;b[e+12>>0]=b[r>>0]|0;b[r>>0]=1;b[d>>0]=1;S7(s);break}else if((i|0)==46){s=f[e+8>>2]|0;r=s+12|0;b[e+12>>0]=b[r>>0]|0;b[r>>0]=1;b[d>>0]=1;T6(s);break}}while(0);return}function Hi(a){a=+a;var c=0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0;E=u;u=u+80|0;x=E+64|0;w=E+56|0;z=E+48|0;y=E+40|0;v=E+32|0;t=E+24|0;C=E+16|0;r=E+8|0;s=E;D=qRa(a)|0;e=I;q=e&2147483647;do if(!(q>>>0>2146435072|(q|0)==2146435072&D>>>0>0)){if(0==0&(e&2146435072|0)==2146435072){c=(e|0)<0?75317:118713;break}D=a<0.0;a=D?-a:a;o=a%1.0==0.0;p[C>>3]=B;p[r>>3]=B;q=!(a>=0.0);n=0;a:while(1){if(n>>>0>=2){A=7;break}l=(n|0)!=0;m=l?126161:125153;b:do if(o){if(q){A=15;break a}if(dOa(a)|0){j=T9(a)|0;k=y;f[k>>2]=j;f[k+4>>2]=I;LFa(m,999,75390,y)|0;f[z>>2]=s;UKa(m,75327,z)|0;break}else{p[w>>3]=a;LFa(m,999,l?75395:75398,w)|0;f[x>>2]=s;UKa(m,75327,x)|0;break}}else{k=l?101:102;e=0;while(1){if(e>>>0>=19)break b;b[135323]=37;b[135324]=46;if(e>>>0<10){g=135327;h=135326;i=135325;j=48}else{b[135325]=49;g=135328;h=135327;i=135326;j=38}b[i>>0]=e+j;b[h>>0]=k;b[g>>0]=0;p[t>>3]=a;LFa(m,999,135323,t)|0;f[v>>2]=s;UKa(m,75327,v)|0;if(+p[s>>3]==a)break;else e=e+1|0}}while(0);d=+K(+(+p[s>>3]-a));p[(l?r:C)>>3]=d;g=zWa(m,46)|0;c:do if(!g){if(!(o&l)){h=m+(bV(m)|0)+-1|0;g=m;i=h;while(1){if((b[i>>0]|0)==48){if(i>>>0<=m>>>0){A=37;break}}else{e=i;if(!(i>>>0>m>>>0&(e-g|0)>24))break}i=i+-1|0}if((A|0)==37){A=0;e=i}e=h-e|0;if((e|0)>2){b[i+1>>0]=101;if((e|0)<10){b[i+2>>0]=e+48;b[i+3>>0]=0;break}if((e|0)<100){b[i+2>>0]=((e>>>0)/10|0)+48;b[i+3>>0]=(e>>>0)%10|0|48;b[i+4>>0]=0;break}if((e|0)>=1e3){A=45;break a}m=(e>>>0)/100|0;b[i+2>>0]=m+48;m=(((e+(X(m,-100)|0)|0)>>>0)/10|0|48)&255;b[i+3>>0]=m;b[i+4>>0]=(e>>>0)%10|0|48;b[i+5>>0]=0}}}else{while(1){e=g+1|0;if(((b[e>>0]|0)+-48&255)<10)g=e;else break}while(1){if((b[g>>0]|0)!=48)break;e=g;do{k=e;e=e+1|0;l=b[e>>0]|0;b[k>>0]=l}while(l<<24>>24!=0);g=g+-1|0}while(1){if((b[m>>0]|0)!=48)break c;e=m;do{k=e;e=e+1|0;l=b[e>>0]|0;b[k>>0]=l}while(l<<24>>24!=0)}}while(0);n=n+1|0}if((A|0)==7){d=+p[r>>3];a=+p[C>>3];if(d==a){c=bV(126161)|0;c=c>>>0<(bV(125153)|0)>>>0;c=c?126161:125153}else c=d>0]=45}break}else if((A|0)==15)Ca(75331,75338,894,75378);else if((A|0)==45)Ca(75403,75338,957,75378)}else c=(e|0)<0?75312:118775;while(0);u=E;return c|0}function Ii(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;j=u;u=u+16|0;d=j;e=g$a(a)|0;a:do if(!e){g=Y_a(a)|0;b:do if(!g){d=e$a(a)|0;if(d|0)switch(f[d+8>>2]|0){case 4:case 2:case 0:{i=6;break a}case 5:case 3:case 1:{i=7;break a}case 21:case 20:{i=1;break a}case 24:{i=Ii(f[d+12>>2]|0,c)|0;i=i>>>0<32?i:32;break a}default:break b}d=E_a(a)|0;if(d|0){i=Ii(f[d+12>>2]|0,c)|0;break a}d=N_a(a)|0;if(d|0){i=TWa(f[c+44>>2]|0,f[d+8>>2]|0)|0;break a}d=p$a(a)|0;if((d|0?ara(d)|0:0)?(b[d+9>>0]|0)==0:0){i=h[d+8>>0]<<3;break a}}else switch(f[g+8>>2]|0){case 14:case 13:case 6:case 5:case 4:case 3:case 2:case 1:case 0:{i=32;break a}case 7:{i=Ii(f[g+12>>2]|0,c)|0;c=Ii(f[g+16>>2]|0,c)|0;i=c>>>0>>0?c:i;break a}case 9:case 8:{i=Ii(f[g+12>>2]|0,c)|0;c=Ii(f[g+16>>2]|0,c)|0;i=i>>>0>>0?c:i;break a}case 10:{d=g$a(f[g+16>>2]|0)|0;if(!d){i=32;break a}i=(Ii(f[g+12>>2]|0,c)|0)+(Q4(d)|0)|0;i=i>>>0<32?i:32;break a}case 11:{d=g$a(f[g+16>>2]|0)|0;if(!d){i=32;break a}c=Ii(f[g+12>>2]|0,c)|0;i=Q4(d)|0;i=c-(c>>>0>>0?c:i)|0;break a}case 12:{e=g$a(f[g+16>>2]|0)|0;if(!e){i=32;break a}d=Ii(f[g+12>>2]|0,c)|0;if((d|0)==32){i=32;break a}i=Q4(e)|0;i=d-(d>>>0>>0?d:i)|0;break a}case 75:case 74:case 73:case 72:case 71:case 70:case 62:case 61:case 60:case 59:case 58:case 57:case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:{i=1;break a}default:break b}while(0);switch(f[a+4>>2]|0){case 1:{i=32;break a}case 2:{i=64;break a}case 5:{i=64;break a}default:hb()}}else switch(f[a+4>>2]|0){case 1:{l6(d,e+8|0);i=32-(ORa(d)|0)|0;break a}case 2:{l6(d,e+8|0);i=64-(jJa(d)|0)|0;break a}default:hb()}while(0);u=j;return i|0}function Ji(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;t=u;u=u+80|0;o=t+24|0;v=t;p=t+64|0;k=t+76|0;q=t+48|0;r=t+72|0;s=t+56|0;f[a+4>>2]=b;j=b+12|0;i=b+16|0;g=f[i>>2]|0;a=0;e=f[j>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e>>2]|0;if($1a(f[d+4>>2]|0,f[33047]|0)|0?$1a(f[d+8>>2]|0,f[33108]|0)|0:0){if((f[d+12>>2]|0)!=2){h=7;break}pb(10)|0;a=1}e=e+4|0}if((h|0)==7)Ca(55068,53069,183,55105);if(!a)rb(11,(Bbb(f[b+92>>2]|0)|0)<<16|0)|0;h=f[b+104>>2]|0;n=c+4|0;d=o+4|0;e=o+8|0;a=f[b+100>>2]|0;while(1){if((a|0)==(h|0)){h=13;break}$Qa(o,a);eha(p,n);x=0;va(92,v|0,p|0,f[o>>2]|0);m=x;x=0;if(m&1){h=17;break}x=0;g=ga(225,v|0)|0;m=x;x=0;if(m&1){h=17;break}m=f[d>>2]|0;tb(12,g|0,m|0,(f[e>>2]|0)-m|0)|0;I_a(o);a=a+16|0}if((h|0)==13){g=f[i>>2]|0;a=0;e=f[j>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e>>2]|0;if($1a(f[d+4>>2]|0,f[33047]|0)|0?$1a(f[d+8>>2]|0,f[33103]|0)|0:0){if((f[d+12>>2]|0)!=1){h=23;break}pb(13)|0;a=1}e=e+4|0}if((h|0)==23)Ca(55419,53069,210,55105);m=b+68|0;if(!a){f[k>>2]=f[m>>2];f[o>>2]=f[k>>2];rb(14,o|0)|0}pb(15)|0;j=f[b+80>>2]|0;k=v+4|0;l=v+8|0;i=f[b+76>>2]|0;a:while(1){if((i|0)==(j|0)){h=29;break}BPa(v,i);eha(q,n);x=0;va(92,o|0,q|0,f[v>>2]|0);c=x;x=0;if(c&1){h=36;break}x=0;a=ga(225,o|0)|0;c=x;x=0;if(c&1){h=36;break}x=0;va(85,p|0,a|0,((a|0)<0)<<31>>31|0);c=x;x=0;if(c&1){h=36;break}g=Bbb(f[p>>2]|0)|0;h=f[k>>2]|0;c=(f[l>>2]|0)-h>>2;if((c+g|0)>>>0>(Bbb(f[m>>2]|0)|0)>>>0){h=35;break}e=0;while(1){if((e|0)==(c|0))break;a=f[h+(e<<2)>>2]|0;f[r>>2]=a;x=0;f[o>>2]=f[r>>2];d=ia(48,b|0,o|0)|0;w=x;x=0;if(w&1){h=42;break a}if(!d){f[s>>2]=a;x=0;f[o>>2]=f[s>>2];a=ia(74,b|0,o|0)|0;w=x;x=0;if(w&1){h=45;break a}tb(17,g+e|0,f[a+4>>2]|0,f[a+8>>2]|0)|0}else sb(16,g+e|0,d|0)|0;e=e+1|0}I_a(v);i=i+16|0}if((h|0)==29){u=t;return}else if((h|0)==35){x=0;wa(71,55652,53069,232,55105);x=0;a=Ia()|0}else if((h|0)==36)a=Ia()|0;else if((h|0)==42)a=Ia()|0;else if((h|0)==45)a=Ia()|0;I_a(v)}else if((h|0)==17){a=Ia()|0;I_a(o)}Ua(a|0)}function Ki(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+64|0;m=s+32|0;n=s+48|0;o=s+16|0;p=s;r=k0(MV(a,c)|0)|0;az(c);d=f[c>>2]|0;if((b[d>>0]|0)!=123)Ca(65969,65740,536,66181);f[c>>2]=d+1;h=m+12|0;i=m+8|0;j=o+8|0;k=o+12|0;l=p+8|0;g=p+12|0;a:while(1){az(c);d=f[c>>2]|0;if((b[d>>0]|0)==125){q=29;break}Dh(m,d);do if(!(f[h>>2]|0)){d=f[m>>2]|0;if(!($1a(d,f[33218]|0)|0)){if(!($1a(d,f[33217]|0)|0)){q=24;break}f[c>>2]=(f[c>>2]|0)+(f[i>>2]|0);wQ(r);az(c);d=f[c>>2]|0;if((b[d>>0]|0)!=58){q=22;break a}f[c>>2]=d+1;break}f[c>>2]=(f[c>>2]|0)+(f[i>>2]|0);az(c);f4a(n,0);Dh(o,f[c>>2]|0);d=f[k>>2]|0;b:do if(y_a(d)|0){d=IY(o)|0;f[n>>2]=d;f[c>>2]=(f[c>>2]|0)+(f[j>>2]|0)}else{switch(d|0){case 1:break;case 2:{f[c>>2]=(f[c>>2]|0)+(f[j>>2]|0);az(c);d=Yw(a,IY(o)|0,c)|0;f[n>>2]=d;break b}default:{q=15;break a}}if(!($1a(f[o>>2]|0,f[33255]|0)|0)){q=11;break a}f[c>>2]=(f[c>>2]|0)+(f[j>>2]|0);az(c);Dh(p,f[c>>2]|0);if(!(y_a(f[g>>2]|0)|0)){q=13;break a}d=f[33255]|0;d=EX(d,IY(p)|0)|0;f[n>>2]=d;f[c>>2]=(f[c>>2]|0)+(f[l>>2]|0)}while(0);tS(r,d);az(c);d=f[c>>2]|0;if((b[d>>0]|0)!=58){q=18;break a}f[c>>2]=d+1}else q=24;while(0);if((q|0)==24){q=0;az(c);e=(b[f[c>>2]>>0]|0)==123;if(e)d=JO(a,c)|0;else d=Sx(a,c,66001,f[33218]|0,f[33217]|0)|0;PB(r,d,e)}}if((q|0)==11)Ca(66193,65740,554,66181);else if((q|0)==13)Ca(66212,65740,558,66181);else if((q|0)==15)Ca(66230,65740,563,66181);else if((q|0)==18)Ca(66250,65740,570,66181);else if((q|0)==22)Ca(66250,65740,577,66181);else if((q|0)==29){az(c);d=f[c>>2]|0;if((b[d>>0]|0)==125){f[c>>2]=d+1;u=s;return r|0}else Ca(66004,65740,590,66181)}return 0}function Li(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+4192|0;n=p+4176|0;q=p;r=p+4112|0;a:do if((a|0)!=0?(g=(c|0)!=0,o=(d|0)==0,!(g&o)):0){if(g)m=f[d>>2]|0;else m=0;Y0a(q);uU(r,q);i=r+48|0;h=r+61|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;b[i+12>>0]=0;b[h>>0]=1;i=r+32|0;j=r+36|0;g=f[j>>2]|0;if(g>>>0>=(f[r+40>>2]|0)>>>0){x=0;ua(3192,i|0,q|0);l=x;x=0;if(l&1)c=Ia()|0;else s=10}else{f4a(n,q);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=f[n>>2];f[j>>2]=(f[j>>2]|0)+16;s=10}if((s|0)==10){k=r+62|0;b[k>>0]=0;b[r+63>>0]=1;f[n>>2]=0;l=a+(bV(a)|0)|0;x=0;wa(160,a|0,l|0,r|0,n|0);g=x;x=0;b:do if(g&1)s=25;else{g=f[n>>2]|0;do if(!((g|0)!=0|(b[k>>0]|0)==0)){i=f[i>>2]|0;if((i|0)!=(f[j>>2]|0)?(f[i>>2]|0)!=(f[i+4>>2]|0):0){b[k>>0]=0;b[h>>0]=0;h=f[r>>2]|0;i=r+4|0;g=f[i>>2]|0;while(1){if((g|0)==(h|0))break;j=g+-24|0;JJa(j);g=j}f[i>>2]=h;h=f[r+16>>2]|0;i=r+20|0;g=f[i>>2]|0;while(1){if((g|0)==(h|0))break;j=g+-16|0;ZX(j);g=j}f[i>>2]=h;x=0;wa(160,a|0,l|0,r|0,n|0);a=x;x=0;if(a&1){s=25;break b}if(!(b[k>>0]|0)){g=f[n>>2]|0;s=26;break}else{f[n>>2]=-2;c=0;g=-2;break}}else s=27}else s=26;while(0);if((s|0)==26)if(!g)s=27;else c=0;do if((s|0)==27){h=r+4|0;i=Nla((f[h>>2]|0)+-24|0)|0;g=i+1|0;if(g>>>0>m>>>0){c=tZ(c,g)|0;if(!c){f[n>>2]=-1;c=0;g=-1;break}if(!o)f[d>>2]=g}else if(!c){c=0;g=0;break}n=f[h>>2]|0;m=n+-12|0;o=b[m+11>>0]|0;d=o<<24>>24<0;x=0;ja(97,n+-24|0,(d?f[m>>2]|0:m)|0,(d?f[n+-8>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){c=Ia()|0;break b}g=(f[h>>2]|0)+-24|0;if((b[g+11>>0]|0)<0)g=f[g>>2]|0;Iu(c|0,g|0,i|0)|0;b[c+i>>0]=0;g=0}while(0);if(e|0)f[e>>2]=g;e5(r);j1a(q);break a}while(0);if((s|0)==25)c=Ia()|0}e5(r);j1a(q);Ua(c|0)}else s=3;while(0);if((s|0)==3)if(!e)c=0;else{f[e>>2]=-3;c=0}u=p;return c|0}function Mi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=u;u=u+128|0;h=m+112|0;n=m+116|0;o=m+100|0;p=m+64|0;i=m+60|0;k=m+48|0;l=m+36|0;j=m;f[h>>2]=c;yUa(n);yUa(o);g=a+80|0;Iqa(p,f[g>>2]|0,n,o);x=0;ua(1894,p|0,h|0);h=x;x=0;if(h&1)c=Ia()|0;else{h=a+56|0;e=a+68|0;while(1){if(!b){c=0;a=33;break}x=0;c=ga(316,f[b+8>>2]|0)|0;d=x;x=0;if(d&1){a=9;break}f[i>>2]=c;x=0;c=ia(149,h|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if(!(f[c>>2]|0)){a=7;break}x=0;c=ia(149,h|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if((f[c>>2]|0)>>>0>1){a=30;break}x=0;c=ia(149,n|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if(f[c>>2]|0){a=16;break}x=0;c=ia(149,o|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}c=f[c>>2]|0;x=0;a=ia(149,e|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if((c|0)!=(f[a>>2]|0)){x=0;c=ia(149,o|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}c=f[c>>2]|0;x=0;a=ia(149,e|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if(c>>>0>=(f[a>>2]|0)>>>0){a=23;break}yUa(k);yUa(l);Iqa(j,f[g>>2]|0,k,l);x=0;ua(1894,j|0,b+12|0);d=x;x=0;if(d&1){a=29;break}x=0;c=ia(149,o|0,i|0)|0;d=x;x=0;if(d&1){a=29;break}d=f[c>>2]|0;x=0;c=ia(149,l|0,i|0)|0;a=x;x=0;if(a&1){a=29;break}c=f[c>>2]|0;x=0;a=ia(149,e|0,i|0)|0;q=x;x=0;if(q&1){a=29;break}q=(c+d|0)>>>0<(f[a>>2]|0)>>>0;I_a(j);MNa(l);MNa(k);if(q){a=30;break}}b=z2(f[b+16>>2]|0,f[g>>2]|0)|0}if((a|0)==7){x=0;wa(71,99940,99874,171,99961);x=0;a=10}else if((a|0)==9){c=Ia()|0;a=11}else if((a|0)==16){x=0;wa(71,99987,99874,173,99961);x=0;a=10}else if((a|0)==23){x=0;wa(71,100017,99874,175,99961);x=0;a=10}else if((a|0)==29){c=Ia()|0;I_a(j);MNa(l);MNa(k)}else if((a|0)==30){c=1;a=33}if((a|0)==10){c=Ia()|0;a=11}else if((a|0)==33){I_a(p);MNa(o);MNa(n);u=m;return c|0}}I_a(p);MNa(o);MNa(n);Ua(c|0);return 0}function Ni(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+48|0;m=q+28|0;n=q+24|0;r=q+12|0;j=q;k=a+12|0;do if(b[k>>0]|0){g=yCa(134176,95311)|0;ZXa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[m>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(m);Wq(g,e)|0;du(g)|0;break}r=Ia()|0;JCa(m);Ua(r|0)}while(0);i=nq(a)|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[r+(d<<2)>>2]=0;d=d+1|0}g=r+11|0;h=r+4|0;e=0;while(1){if(e>>>0>=i>>>0){d=11;break}x=0;d=ga(307,a|0)|0;s=x;x=0;if(s&1){d=17;break}if(!(d<<24>>24)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;s=h7a(95315)|0;x=0;va(87,j|0,95315,s|0);s=x;x=0;if(s&1){d=17;break}x=0;ua(1869,a|0,j|0);s=x;x=0;if(s&1){d=18;break}HTa(j)}x=0;va(147,m|0,r|0,d|0);s=x;x=0;if(s&1){d=29;break}if((b[g>>0]|0)<0){T0a(f[r>>2]|0,0);f[h>>2]=0}else{T0a(r,0);b[g>>0]=0}x=0;ta(470,r|0);s=x;x=0;if(s&1){d=24;break}f[r>>2]=f[m>>2];f[r+4>>2]=f[m+4>>2];f[r+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}HTa(m);e=e+1|0}if((d|0)==11){do if(b[k>>0]|0){x=0;c=ia(62,134176,95443)|0;s=x;x=0;if((!(s&1)?(x=0,l=ia(84,c|0,r|0)|0,s=x,x=0,!(s&1)):0)?(x=0,o=ia(62,l|0,95461)|0,s=x,x=0,!(s&1)):0){ZXa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[m>>2]|0,134880)|0;s=x;x=0;if(!(s&1)?(x=0,p=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,s=x,x=0,!(s&1)):0){JCa(m);x=0;ia(79,o|0,p|0)|0;s=x;x=0;if(s&1){d=38;break}x=0;ga(227,o|0)|0;s=x;x=0;if(s&1){d=38;break}else{d=40;break}}c=Ia()|0;JCa(m)}else d=38}else d=40;while(0);if((d|0)==40){x=0;ua(83,n|0,r|0);s=x;x=0;if(s&1)d=38;else{HTa(r);u=q;return f[n>>2]|0}}if((d|0)==38)c=Ia()|0}else if((d|0)==17)c=Ia()|0;else if((d|0)==18){c=Ia()|0;HTa(j)}else if((d|0)==24){s=Ja(0)|0;r2a(s)}else if((d|0)==29)c=Ia()|0;HTa(r);Ua(c|0);return 0}function Oi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;v=u;u=u+80|0;t=v+28|0;h=v+24|0;w=v+8|0;o=v+20|0;p=v;s=v+4|0;e=f[d+28>>2]|0;c=f[d+24>>2]|0;while(1){if((c|0)==(e|0))break;g=f[c>>2]|0;if(((f[g+8>>2]|0)==0?(f[h>>2]=f[g+4>>2],f[t>>2]=f[h>>2],i=Sma(d,t)|0,i|0):0)?H8(i)|0:0){r=Yh(a,i,d)|0;f[(f[c>>2]|0)+4>>2]=r}c=c+4|0}f[w>>2]=0;q=w+4|0;f[q>>2]=0;k=w+8|0;f[k>>2]=0;l=f[d+16>>2]|0;r=a+16|0;m=d+76|0;n=d+80|0;j=f[d+12>>2]|0;while(1){if((j|0)==(l|0)){h=10;break}c=f[j>>2]|0;if(!(f[c+12>>2]|0)){f[o>>2]=f[c+16>>2];x=0;f[t>>2]=f[o>>2];c=ia(162,d|0,t|0)|0;i=x;x=0;if(i&1){h=22;break}if(H8(c)|0){tab(t);x=0;c=ka(33,a|0,f[j>>2]|0,d|0,t|0)|0;i=x;x=0;if(i&1){h=29;break}f[p>>2]=c;x=0;e=ia(186,r|0,f[j>>2]|0)|0;i=x;x=0;if(i&1){h=29;break}i=f[t>>2]|0;f[e>>2]=i;e=f[q>>2]|0;if((e|0)==(f[k>>2]|0)){x=0;ua(2557,w|0,p|0);h=x;x=0;if(h&1){h=29;break}}else{f[e>>2]=c;f[q>>2]=(f[q>>2]|0)+4}g=f[n>>2]|0;c=f[m>>2]|0;while(1){if((c|0)==(g|0))break;h=f[c+8>>2]|0;e=f[c+4>>2]|0;while(1){if((e|0)==(h|0))break;if($1a(f[e>>2]|0,f[f[j>>2]>>2]|0)|0)f[e>>2]=i;e=e+4|0}c=c+16|0}}}j=j+4|0}a:do if((h|0)==10){do if(f[a+24>>2]|0){g=a+20|0;e=f[r>>2]|0;while(1){if((e|0)==(g|0))break;f[s>>2]=f[e+16>>2];f[t>>2]=f[s>>2];eF(d,t);c=f[e+4>>2]|0;if(!c)while(1){c=f[e+8>>2]|0;if((f[c>>2]|0)==(e|0))break;else e=c}else while(1){e=f[c>>2]|0;if(!e)break;else c=e}e=c}e=f[q>>2]|0;c=f[w>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(64,d|0,f[c>>2]|0);s=x;x=0;if(s&1){h=45;break}c=c+4|0}if((h|0)==45){c=Ia()|0;break a}mza(t,d);h4a(t);x=0;ua(2558,t|0,r|0);s=x;x=0;if(!(s&1)?(x=0,ta(438,t|0),s=x,x=0,!(s&1)):0){Tca(t);break}c=Ia()|0;Tca(t);break a}while(0);if(b[a+28>>0]|0?(x=0,ta(502,d|0),d=x,x=0,d&1):0){c=Ia()|0;break}uSa(w);u=v;return}else if((h|0)==22)c=Ia()|0;else if((h|0)==29)c=Ia()|0;while(0);uSa(w);Ua(c|0)}function Pi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;k=l+8|0;h=l;a:do if((c-a|0)>1){g=(b[a>>0]|0)==76?a+1|0:a;switch(b[g>>0]|0){case 78:{k=Pc(g,c,d)|0;a=(k|0)==(g|0)?a:k;break a}case 90:{k=Tj(g,c,d)|0;a=(k|0)==(g|0)?a:k;break a}default:{i=GM(g,c,d)|0;do if((i|0)==(g|0)){e=Qg(g,c,d)|0;if((e|0)==(g|0)|(e|0)==(c|0))break a;if((b[e>>0]|0)!=73)break a;h=jg(e,c,d)|0;if((h|0)==(e|0))break a;g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(k,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;JJa(e+(d*24|0)|0);a=d}f[g>>2]=e+-24;d=b[k+11>>0]|0;j=d<<24>>24<0;x=0;ja(97,e+-48|0,(j?f[k>>2]|0:k)|0,(j?f[k+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(k);break}else{HTa(k);a=h;break a}}else{if((i|0)==(c|0)){a=c;break a}if((b[i>>0]|0)!=73){a=i;break a}j=d+4|0;e=f[j>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[h>>2]=f[d+12>>2];FR(k,e+-24|0,h);e=d+20|0;g=f[e>>2]|0;if(g>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,k|0);h=x;x=0;if(h&1){a=Ia()|0;ZX(k);break}}else{f[g+12>>2]=f[k+12>>2];f[g>>2]=f[k>>2];h=k+4|0;f[g+4>>2]=f[h>>2];m=k+8|0;f[g+8>>2]=f[m>>2];f[m>>2]=0;f[h>>2]=0;f[k>>2]=0;f[e>>2]=(f[e>>2]|0)+16}ZX(k);g=jg(i,c,d)|0;if((g|0)==(i|0))break a;e=f[j>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(k,e+-24|0);e=f[j>>2]|0;a=0;while(1){if((a|0)==-1)break;m=a+-1|0;JJa(e+(m*24|0)|0);a=m}f[j>>2]=e+-24;m=b[k+11>>0]|0;d=m<<24>>24<0;x=0;ja(97,e+-48|0,(d?f[k>>2]|0:k)|0,(d?f[k+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){a=Ia()|0;HTa(k);break}else{HTa(k);a=g;break a}}while(0);Ua(a|0)}}}while(0);u=l;return a|0}function Qi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;g=a+24|0;f[g>>2]=c;zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80749)|0;VBa(a);e=f[c+4>>2]|0;h=a+4|0;i=a+16|0;d=f[c>>2]|0;while(1){if((d|0)==(e|0))break;Iwa(f[a>>2]|0,f[h>>2]|0)|0;zma(f[a>>2]|0,40)|0;zma(tPa(f[a>>2]|0,97307)|0,32)|0;zma(s4(f[f[d>>2]>>2]|0,f[a>>2]|0)|0,32)|0;Qs(a,f[d>>2]|0,0);j=yCa(f[a>>2]|0,123274)|0;yCa(j,f[i>>2]|0)|0;d=d+4|0}e=f[c+16>>2]|0;d=f[c+12>>2]|0;while(1){if((d|0)==(e|0))break;Iwa(f[a>>2]|0,f[h>>2]|0)|0;Es(a,f[d>>2]|0);yCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}e=f[c+52>>2]|0;d=f[c+48>>2]|0;while(1){if((d|0)==(e|0))break;Iwa(f[a>>2]|0,f[h>>2]|0)|0;vB(a,f[d>>2]|0);yCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}d=c+60|0;if(b[d>>0]|0)Tu(a,d);qi(a,c+88|0);e=f[c+28>>2]|0;d=f[c+24>>2]|0;while(1){if((d|0)==(e|0))break;Iwa(f[a>>2]|0,f[h>>2]|0)|0;$z(a,f[d>>2]|0);yCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}d=c+116|0;if(Iab(f[d>>2]|0)|0){Iwa(f[a>>2]|0,f[h>>2]|0)|0;zma(f[a>>2]|0,40)|0;j=zma(tPa(f[a>>2]|0,80756)|0,32)|0;zma(wfa(j,f[d>>2]|0)|0,41)|0;yCa(f[a>>2]|0,f[i>>2]|0)|0}e=f[c+40>>2]|0;d=f[c+36>>2]|0;while(1){if((d|0)==(e|0))break;Iwa(f[a>>2]|0,f[h>>2]|0)|0;wh(a,f[d>>2]|0);yCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}e=f[c+124>>2]|0;d=f[c+120>>2]|0;while(1){if((d|0)==(e|0))break;Iwa(f[a>>2]|0,f[h>>2]|0)|0;j=yCa(Lca(yCa(f[a>>2]|0,80762)|0,d)|0,80782)|0;zm(j,(f[d+16>>2]|0)-(f[d+12>>2]|0)|0)|0;yCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+24|0}kfa(a);yCa(f[a>>2]|0,f[i>>2]|0)|0;f[g>>2]=0;return}function Ri(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;z=u;u=u+992|0;i=z+912|0;E=z+904|0;k=z+800|0;m=z+976|0;a=z+400|0;y=z+980|0;s=z+972|0;t=z+968|0;B=z+956|0;C=z+944|0;D=z+932|0;n=z+928|0;l=z;v=z+924|0;w=z+920|0;f[m>>2]=k;p[E>>3]=h;j=LFa(k,100,121277,E)|0;do if(j>>>0>99){k=fOa()|0;p[i>>3]=h;k=Bja(m,k,121277,i)|0;m=f[m>>2]|0;if(!m){x=0;sa(10);x=0;j=0;i=0}else{i=m;a=Kc(k<<2)|0;j=a;if(a|0){r=k;k=m;F=7;break}x=0;sa(10);x=0}a=Ia()|0}else{r=j;j=0;i=0;F=7}while(0);if((F|0)==7){ZXa(E,e);m=f[E>>2]|0;x=0;q=ia(73,m|0,134912)|0;o=x;x=0;if(!(o&1)?(x=0,ka(f[(f[q>>2]|0)+48>>2]|0,q|0,k|0,k+r|0,a|0)|0,o=x,x=0,!(o&1)):0){if(!r)o=0;else o=(b[k>>0]|0)==45;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[B+(k<<2)>>2]=0;k=k+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[C+(k<<2)>>2]=0;k=k+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[D+(k<<2)>>2]=0;k=k+1|0}x=0;Aa(4,d|0,o|0,m|0,y|0,s|0,t|0,B|0,C|0,D|0,n|0);d=x;x=0;if(d&1)a=Ia()|0;else{d=f[n>>2]|0;if((r|0)>(d|0)){n=b[D+8+3>>0]|0;k=b[C+8+3>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+1+(r-d<<1)|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}else{n=b[D+8+3>>0]|0;k=b[C+8+3>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+2|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}k=m+n+k|0;if(k>>>0>100){l=Kc(k<<2)|0;k=l;if(!l){x=0;sa(10);x=0;a=Ia()|0}else F=29}else{k=0;F=29}if((F|0)==29){x=0;Ba(2,l|0,v|0,w|0,f[e+4>>2]|0,a|0,a+(r<<2)|0,q|0,o|0,y|0,f[s>>2]|0,f[t>>2]|0,B|0,C|0,D|0,d|0);F=x;x=0;if(!(F&1)?(x=0,A=oa(47,f[c>>2]|0,l|0,f[v>>2]|0,f[w>>2]|0,e|0,g|0)|0,F=x,x=0,!(F&1)):0){if(k|0)rg(k);jTa(D);jTa(C);HTa(B);JCa(E);if(j|0)rg(j);if(i|0)rg(i);u=z;return A|0}a=Ia()|0}if(k|0)rg(k)}jTa(D);jTa(C);HTa(B)}else a=Ia()|0;JCa(E)}if(j|0)rg(j);if(i|0)rg(i);Ua(a|0);return 0}function Si(a,b){a=a|0;b=b|0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{xn(a,b);break}case 2:{uo(a,b);break}case 3:{Xr(a,b);break}case 4:{Yt(a,b);break}case 5:{ku(a,b);break}case 6:{xs(a,b);break}case 7:{vt(a,b);break}case 8:{Cr(a,b);break}case 9:{nz(a,b);break}case 10:{rw(a,b);break}case 11:{lz(a,b);break}case 12:{gz(a,b);break}case 13:{pw(a,b);break}case 14:{Hu(a,b);break}case 24:{ct(a,b);break}case 25:{Rr(a,b);break}case 26:{bt(a,b);break}case 27:{bv(a,b);break}case 15:{ny(a,b);break}case 16:{nw(a,b);break}case 17:{Gu(a,b);break}case 18:{mt(a,b);break}case 19:{qz(a,b);break}case 20:{Oy(a,b);break}case 21:{cw(a,b);break}case 22:{UB(a,b);break}case 23:{uB(a,b);break}default:hb()}while(0);return}function Ti(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;z=u;u=u+416|0;i=z+336|0;E=z+328|0;k=z+224|0;m=z+392|0;a=z+112|0;y=z+400|0;s=z+397|0;t=z+396|0;B=z+380|0;C=z+368|0;D=z+356|0;n=z+352|0;l=z;v=z+348|0;w=z+344|0;f[m>>2]=k;p[E>>3]=h;j=LFa(k,100,121277,E)|0;do if(j>>>0>99){k=fOa()|0;p[i>>3]=h;k=Bja(m,k,121277,i)|0;m=f[m>>2]|0;if(!m){x=0;sa(10);x=0;j=0;i=0}else{i=m;a=Kc(k)|0;j=a;if(a|0){r=k;k=m;F=7;break}x=0;sa(10);x=0}a=Ia()|0}else{r=j;j=0;i=0;F=7}while(0);if((F|0)==7){ZXa(E,e);m=f[E>>2]|0;x=0;q=ia(73,m|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,ka(f[(f[q>>2]|0)+32>>2]|0,q|0,k|0,k+r|0,a|0)|0,o=x,x=0,!(o&1)):0){if(!r)o=0;else o=(b[k>>0]|0)==45;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[B+(k<<2)>>2]=0;k=k+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[C+(k<<2)>>2]=0;k=k+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[D+(k<<2)>>2]=0;k=k+1|0}x=0;Aa(3,d|0,o|0,m|0,y|0,s|0,t|0,B|0,C|0,D|0,n|0);d=x;x=0;if(d&1)a=Ia()|0;else{d=f[n>>2]|0;if((r|0)>(d|0)){n=b[D+11>>0]|0;k=b[C+11>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+1+(r-d<<1)|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}else{n=b[D+11>>0]|0;k=b[C+11>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+2|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}k=m+n+k|0;if(k>>>0>100){l=Kc(k)|0;k=l;if(!l){x=0;sa(10);x=0;a=Ia()|0}else F=29}else{k=0;F=29}if((F|0)==29){x=0;Ba(1,l|0,v|0,w|0,f[e+4>>2]|0,a|0,a+r|0,q|0,o|0,y|0,b[s>>0]|0,b[t>>0]|0,B|0,C|0,D|0,d|0);F=x;x=0;if(!(F&1)?(x=0,A=oa(39,f[c>>2]|0,l|0,f[v>>2]|0,f[w>>2]|0,e|0,g|0)|0,F=x,x=0,!(F&1)):0){if(k|0)rg(k);HTa(D);HTa(C);HTa(B);JCa(E);if(j|0)rg(j);if(i|0)rg(i);u=z;return A|0}a=Ia()|0}if(k|0)rg(k)}HTa(D);HTa(C);HTa(B)}else a=Ia()|0;JCa(E)}if(j|0)rg(j);if(i|0)rg(i);Ua(a|0);return 0}function Ui(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;r=u;u=u+336|0;l=r;t=r+96|0;s=r+52|0;h=r+328|0;p=r+28|0;i=r+16|0;j=r+40|0;if(!(rab(f[b>>2]|0)|0))Ca(113291,113306,109,113360);if(FMa(b)|0)Ca(113336,113306,110,113360);m=b+4|0;d=f[m>>2]|0;n=b+12|0;o=b+16|0;k=a+36|0;c=0;while(1){e=f[n>>2]|0;if(c>>>0>=(f[o>>2]|0)-e>>2>>>0)break;if(FMa(f[e+(c<<2)>>2]|0)|0?(g=TG(d,c)|0,!(G6a(f[f[g>>2]>>2]|0)|0)):0){e=g$a(f[(f[(f[n>>2]|0)+(c<<2)>>2]|0)+4>>2]|0)|0;w=f[k>>2]|0;Bbb(w)|0;U0a(t,w);e=e+8|0;f[l>>2]=f[e>>2];f[l+4>>2]=f[e+4>>2];f[l+8>>2]=f[e+8>>2];f[l+12>>2]=f[e+12>>2];e=a0(t,l)|0;f[g>>2]=e}c=c+1|0}Wt(t);U0a(s,t);x=0;ua(65,h|0,113383);w=x;x=0;do if(w&1){c=Ia()|0;v=19}else{f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;f[l>>2]=f[h>>2];c=ma(28,l|0,p|0,0,i|0,d|0)|0;w=x;x=0;if(w&1){c=Ia()|0;uSa(i);uSa(p);v=19;break}uSa(i);uSa(p);mza(s,t);h4a(s);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;w=h7a(113388)|0;x=0;va(87,j|0,113388,w|0);w=x;x=0;a:do if(!(w&1)){x=0;ua(80,s|0,j|0);w=x;x=0;if(w&1){c=Ia()|0;HTa(j);break}HTa(j);x=0;ua(74,s|0,c|0);w=x;x=0;if(!(w&1)){c=f[c+36>>2]|0;do if(G6a(f[c>>2]|0)|0){w=f[k>>2]|0;Bbb(w)|0;U0a(p,w);x=0;c=ga(241,c|0)|0;w=x;x=0;if(!(w&1)?(q=c+8|0,x=0,f[l>>2]=f[q>>2],f[l+4>>2]=f[q+4>>2],f[l+8>>2]=f[q+8>>2],f[l+12>>2]=f[q+12>>2],q=ia(50,p|0,l|0)|0,w=x,x=0,!(w&1)):0){f[m>>2]=q;if(FMa(b)|0){T_(a+44|0,b);f[o>>2]=f[n>>2];x=0;va(169,a|0,b|0,b|0);w=x;x=0;if(!(w&1))break}else{x=0;wa(71,113399,113306,144,113360);x=0}c=Ia()|0;break a}c=Ia()|0;break a}while(0);Tca(s);cy(t);u=r;return}else v=20}else v=20;while(0);if((v|0)==20)c=Ia()|0;Tca(s)}while(0);cy(t);Ua(c|0)}function Vi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=Bbb(f[h>>2]|0)|0;if(T5a(g)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(b){g=f[b+12>>2]|0;if((g|0)==(f[b+16>>2]|0))g=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else g=Bbb(f[g>>2]|0)|0;if(!(T5a(g)|0))if(h){j=b;n=16}else n=15;else n=13}else n=13;if((n|0)==13)if(h)n=15;else{j=0;n=16}a:do if((n|0)==15){f[c>>2]=f[c>>2]|6;g=0}else if((n|0)==16){g=f[a>>2]|0;h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=Bbb(f[h>>2]|0)|0;if(!(ec[f[(f[d>>2]|0)+12>>2]&127](d,2048,g)|0)){f[c>>2]=f[c>>2]|4;g=0;break}g=(ec[f[(f[d>>2]|0)+52>>2]&127](d,g,0)|0)<<24>>24;h=f[a>>2]|0;b=h+12|0;i=f[b>>2]|0;if((i|0)==(f[h+16>>2]|0))bc[f[(f[h>>2]|0)+40>>2]&511](h)|0;else f[b>>2]=i+4;k=j;i=j;while(1){g=g+-48|0;m=e+-1|0;h=f[a>>2]|0;do if(h){b=f[h+12>>2]|0;if((b|0)==(f[h+16>>2]|0))h=bc[f[(f[h>>2]|0)+36>>2]&511](h)|0;else h=Bbb(f[b>>2]|0)|0;if(T5a(h)|0){f[a>>2]=0;j=1;break}else{j=(f[a>>2]|0)==0;break}}else j=1;while(0);if(!k){l=i;k=0;h=1}else{h=f[k+12>>2]|0;if((h|0)==(f[k+16>>2]|0))h=bc[f[(f[k>>2]|0)+36>>2]&511](k)|0;else h=Bbb(f[h>>2]|0)|0;h=T5a(h)|0;l=h?0:i;k=h?0:k}b=f[a>>2]|0;if(!((e|0)>1&(j^h)))break;h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0))h=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else h=Bbb(f[h>>2]|0)|0;if(!(ec[f[(f[d>>2]|0)+12>>2]&127](d,2048,h)|0))break a;g=(g*10|0)+((ec[f[(f[d>>2]|0)+52>>2]&127](d,h,0)|0)<<24>>24)|0;h=f[a>>2]|0;b=h+12|0;i=f[b>>2]|0;if((i|0)==(f[h+16>>2]|0))bc[f[(f[h>>2]|0)+40>>2]&511](h)|0;else f[b>>2]=i+4;e=m;i=l}do if(b){h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0))h=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else h=Bbb(f[h>>2]|0)|0;if(T5a(h)|0){f[a>>2]=0;b=1;break}else{b=(f[a>>2]|0)==0;break}}else b=1;while(0);if(l){h=f[l+12>>2]|0;if((h|0)==(f[l+16>>2]|0))h=bc[f[(f[l>>2]|0)+36>>2]&511](l)|0;else h=Bbb(f[h>>2]|0)|0;if(!(T5a(h)|0)){if(b)break}else n=58}else n=58;if((n|0)==58?!b:0)break;f[c>>2]=f[c>>2]|2}while(0);return g|0}function Wi(a){a=a|0;var c=0,d=0,e=0,g=0,i=0;i=u;u=u+16|0;c=i;d=g$a(a)|0;a:do if(!d){e=Y_a(a)|0;b:do if(!e){c=e$a(a)|0;if(c|0)switch(f[c+8>>2]|0){case 4:case 2:case 0:{g=6;break a}case 5:case 3:case 1:{g=7;break a}case 21:case 20:{g=1;break a}case 24:{g=Wi(f[c+12>>2]|0)|0;g=g>>>0<32?g:32;break a}default:break b}c=E_a(a)|0;if(c|0){g=Wi(f[c+12>>2]|0)|0;break a}c=N_a(a)|0;if(c|0){g=VWa(f[c+4>>2]|0)|0;break a}c=p$a(a)|0;if((c|0?ara(c)|0:0)?(b[c+9>>0]|0)==0:0){g=h[c+8>>0]<<3;break a}}else switch(f[e+8>>2]|0){case 14:case 13:case 6:case 5:case 4:case 3:case 2:case 1:case 0:{g=32;break a}case 7:{g=Wi(f[e+12>>2]|0)|0;a=Wi(f[e+16>>2]|0)|0;g=a>>>0>>0?a:g;break a}case 9:case 8:{g=Wi(f[e+12>>2]|0)|0;a=Wi(f[e+16>>2]|0)|0;g=g>>>0>>0?a:g;break a}case 10:{c=g$a(f[e+16>>2]|0)|0;if(!c){g=32;break a}g=(Wi(f[e+12>>2]|0)|0)+(Q4(c)|0)|0;g=g>>>0<32?g:32;break a}case 11:{c=g$a(f[e+16>>2]|0)|0;if(!c){g=32;break a}a=Wi(f[e+12>>2]|0)|0;g=Q4(c)|0;g=a-(a>>>0>>0?a:g)|0;break a}case 12:{d=g$a(f[e+16>>2]|0)|0;if(!d){g=32;break a}c=Wi(f[e+12>>2]|0)|0;if((c|0)==32){g=32;break a}g=Q4(d)|0;g=c-(c>>>0>>0?c:g)|0;break a}case 75:case 74:case 73:case 72:case 71:case 70:case 62:case 61:case 60:case 59:case 58:case 57:case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:{g=1;break a}default:break b}while(0);switch(f[a+4>>2]|0){case 1:{g=32;break a}case 2:{g=64;break a}case 5:{g=64;break a}default:hb()}}else switch(f[a+4>>2]|0){case 1:{l6(c,d+8|0);g=32-(ORa(c)|0)|0;break a}case 2:{l6(c,d+8|0);g=64-(jJa(c)|0)|0;break a}default:hb()}while(0);u=i;return g|0}function Xi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do switch(d<<24>>24){case 103:{d=1;e=0;g=53;break}case 121:{d=2;e=1;g=53;break}case 104:{d=1;e=2;g=53;break}case 122:{d=2;e=3;g=53;break}case 105:{d=1;e=4;g=53;break}case 123:{d=2;e=5;g=53;break}case 69:{d=1;e=20;g=53;break}case 80:{d=1;e=21;g=53;break}case -116:{d=3;e=6;g=53;break}case -102:{d=4;e=7;g=53;break}case -117:{d=3;e=8;g=53;break}case -103:{d=4;e=9;g=53;break}case -115:{d=3;e=10;g=53;break}case -101:{d=4;e=11;g=53;break}case -114:{d=3;e=12;g=53;break}case -100:{d=4;e=13;g=53;break}case -112:{d=3;e=16;g=53;break}case -98:{d=4;e=17;g=53;break}case -111:{d=3;e=18;g=53;break}case -97:{d=4;e=19;g=53;break}case -77:{d=3;e=37;g=53;break}case -72:{d=4;e=38;g=53;break}case -78:{d=3;e=35;g=53;break}case -73:{d=4;e=36;g=53;break}case -75:{d=3;e=41;g=53;break}case -70:{d=4;e=42;g=53;break}case -76:{d=3;e=39;g=53;break}case -71:{d=4;e=40;g=53;break}case -84:{d=2;e=22;g=53;break}case -83:{d=2;e=23;g=53;break}case -89:{d=1;e=24;g=53;break}case -87:{d=1;e=27;g=53;break}case -85:{d=1;e=31;g=53;break}case -88:{d=1;e=25;g=53;break}case -86:{d=1;e=29;g=53;break}case -81:{d=2;e=28;g=53;break}case -79:{d=2;e=32;g=53;break}case -82:{d=2;e=26;g=53;break}case -80:{d=2;e=30;g=53;break}case -113:{d=3;e=14;g=53;break}case -99:{d=4;e=15;g=53;break}case -74:{d=3;e=44;g=53;break}case -69:{d=4;e=43;g=53;break}case -68:{d=1;e=33;g=53;break}case -67:{d=2;e=34;g=53;break}case -66:{d=3;e=45;g=53;break}case -65:{d=4;e=46;g=53;break}case -64:{d=1;e=47;g=53;break}case -63:{d=1;e=48;g=53;break}case -62:{d=2;e=49;g=53;break}case -61:{d=2;e=50;g=53;break}case -60:{d=2;e=51;g=53;break}default:d=0}while(0);if((g|0)==53){g=pUa(f[a+4>>2]|0)|0;f[g+8>>2]=e;f[g+4>>2]=d;do if(b[a+12>>0]|0){d=yCa(134176,110678)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(d,h)|0;du(d)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);d=dk(a)|0;f[g+12>>2]=d;hv(g);f[c>>2]=g;d=1}u=j;return d|0}function Yi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;l=n+24|0;k=n;m=n+40|0;i=n+44|0;d=f[c>>2]|0;if(!(G6a(d)|0)?!(V6a(d)|0):0){iI(k,a,c,1);do if(D0a(k)|0){h=k+16|0;d=f[h>>2]|0;g=d;if(!($1a(d,f[33152]|0)|0)){if($1a(d,f[33118]|0)|0){d=X_a(c)|0;if(!d){j=f[a+36>>2]|0;Bbb(j)|0;U0a(m,j);if(!(f[k>>2]|0))d=0;else{f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];d=a0(m,l)|0}m=IOa(m,d)|0;BVa(f[a+16>>2]|0,m)|0;break}d=d+8|0;if(!(f[k>>2]|0)){f[d>>2]=0;break}c=f[d>>2]|0;if(c|0?(e=g$a(c)|0,e|0):0){m=e+8|0;f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];f[m+12>>2]=f[k+12>>2];k2a(e);break}a=f[a+36>>2]|0;Bbb(a)|0;U0a(m,a);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];m=a0(m,l)|0;f[d>>2]=m;break}e=n$a(c)|0;if(!e){j=f[a+36>>2]|0;Bbb(j)|0;U0a(m,j);f[i>>2]=f[h>>2];if(!(f[k>>2]|0))d=0;else{f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];d=a0(m,l)|0}f[l>>2]=f[i>>2];m=Qma(m,l,d,0)|0;BVa(f[a+16>>2]|0,m)|0;break}f[e+8>>2]=g;f[e+16>>2]=0;d=e+12|0;if(!(f[k>>2]|0))f[d>>2]=0;else{c=f[d>>2]|0;if(c|0?(j=g$a(c)|0,j|0):0){m=j+8|0;f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];f[m+12>>2]=f[k+12>>2];k2a(j);xqa(e);break}a=f[a+36>>2]|0;Bbb(a)|0;U0a(m,a);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];m=a0(m,l)|0;f[d>>2]=m}xqa(e)}}else if(o2a(f[k>>2]|0)|0){j=f[a+36>>2]|0;Bbb(j)|0;U0a(m,j);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];m=a0(m,l)|0;BVa(f[a+16>>2]|0,m)|0;b[a+68>>0]=1;break}else{pVa(c);break}while(0)}u=n;return}function Zi(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;s=u;u=u+16|0;t=s;q=TTa(f[i>>2]|0,134912)|0;l=TTa(f[i>>2]|0,134920)|0;pc[f[(f[l>>2]|0)+20>>2]&4095](t,l);o=t+11|0;n=b[o>>0]|0;p=t+4|0;a:do if(!((n<<24>>24<0?f[p>>2]|0:n&255)|0)){x=0;ka(f[(f[q>>2]|0)+48>>2]|0,q|0,a|0,d|0,e|0)|0;r=x;x=0;if(r&1){i=Ia()|0;r=34;break}else{i=e+(d-a<<2)|0;f[h>>2]=i;r=33;break}}else{f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,i|0)|0;n=x;x=0;if(!(n&1)){k=f[h>>2]|0;f[h>>2]=k+4;f[k>>2]=i;k=a+1|0;r=9}break}default:{k=a;r=9}}b:do if((r|0)==9){c:do if((d-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:break c}x=0;j=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,48)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+4;f[n>>2]=j;x=0;i=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,b[i>>0]|0)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+4;f[n>>2]=i;k=k+2|0}while(0);d:do if((k|0)!=(d|0)){i=d;j=k;while(1){i=i+-1|0;if(j>>>0>=i>>>0)break d;n=b[j>>0]|0;b[j>>0]=b[i>>0]|0;b[i>>0]=n;j=j+1|0}}while(0);x=0;n=ga(f[(f[l>>2]|0)+16>>2]|0,l|0)|0;m=x;x=0;if(m&1){i=Ia()|0;r=34;break a}m=k;i=0;j=0;while(1){if(m>>>0>=d>>>0)break;l=b[((b[o>>0]|0)<0?f[t>>2]|0:t)+i>>0]|0;if(l<<24>>24!=0&(j|0)==(l<<24>>24|0)){j=f[h>>2]|0;f[h>>2]=j+4;f[j>>2]=n;j=b[o>>0]|0;i=i+(i>>>0<((j<<24>>24<0?f[p>>2]|0:j&255)+-1|0)>>>0&1)|0;j=0}x=0;l=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,b[m>>0]|0)|0;v=x;x=0;if(v&1){r=31;break}v=f[h>>2]|0;f[h>>2]=v+4;f[v>>2]=l;m=m+1|0;j=j+1|0}if((r|0)==31){i=Ia()|0;r=34;break a}j=a;i=e+(k-j<<2)|0;a=f[h>>2]|0;if((i|0)==(a|0)){a=j;r=33;break a}while(1){a=a+-4|0;if(i>>>0>=a>>>0)break;v=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=v;i=i+4|0}a=j;i=f[h>>2]|0;r=33;break a}while(0);i=Ia()|0;r=34}while(0);if((r|0)==33){f[g>>2]=(c|0)==(d|0)?i:e+(c-a<<2)|0;HTa(t);u=s;return}else if((r|0)==34){HTa(t);Ua(i|0)}}function _i(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;s=u;u=u+16|0;t=s;q=TTa(f[i>>2]|0,134880)|0;l=TTa(f[i>>2]|0,134896)|0;pc[f[(f[l>>2]|0)+20>>2]&4095](t,l);o=t+11|0;n=b[o>>0]|0;p=t+4|0;a:do if(!((n<<24>>24<0?f[p>>2]|0:n&255)|0)){x=0;ka(f[(f[q>>2]|0)+32>>2]|0,q|0,a|0,d|0,e|0)|0;r=x;x=0;if(r&1){i=Ia()|0;r=34;break}else{i=e+(d-a)|0;f[h>>2]=i;r=33;break}}else{f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,i|0)|0;n=x;x=0;if(!(n&1)){k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=i;k=a+1|0;r=9}break}default:{k=a;r=9}}b:do if((r|0)==9){c:do if((d-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:break c}x=0;j=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,48)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+1;b[n>>0]=j;x=0;i=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,b[i>>0]|0)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+1;b[n>>0]=i;k=k+2|0}while(0);d:do if((k|0)!=(d|0)){i=d;j=k;while(1){i=i+-1|0;if(j>>>0>=i>>>0)break d;n=b[j>>0]|0;b[j>>0]=b[i>>0]|0;b[i>>0]=n;j=j+1|0}}while(0);x=0;n=ga(f[(f[l>>2]|0)+16>>2]|0,l|0)|0;m=x;x=0;if(m&1){i=Ia()|0;r=34;break a}m=k;i=0;j=0;while(1){if(m>>>0>=d>>>0)break;l=b[((b[o>>0]|0)<0?f[t>>2]|0:t)+i>>0]|0;if(l<<24>>24!=0&(j|0)==(l<<24>>24|0)){j=f[h>>2]|0;f[h>>2]=j+1;b[j>>0]=n;j=b[o>>0]|0;i=i+(i>>>0<((j<<24>>24<0?f[p>>2]|0:j&255)+-1|0)>>>0&1)|0;j=0}x=0;l=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,b[m>>0]|0)|0;v=x;x=0;if(v&1){r=31;break}v=f[h>>2]|0;f[h>>2]=v+1;b[v>>0]=l;m=m+1|0;j=j+1|0}if((r|0)==31){i=Ia()|0;r=34;break a}j=a;i=e+(k-j)|0;a=f[h>>2]|0;if((i|0)==(a|0)){a=j;r=33;break a}while(1){a=a+-1|0;if(i>>>0>=a>>>0)break;v=b[i>>0]|0;b[i>>0]=b[a>>0]|0;b[a>>0]=v;i=i+1|0}a=j;i=f[h>>2]|0;r=33;break a}while(0);i=Ia()|0;r=34}while(0);if((r|0)==33){f[g>>2]=(c|0)==(d|0)?i:e+(c-a)|0;HTa(t);u=s;return}else if((r|0)==34){HTa(t);Ua(i|0)}}function $i(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;p=u;u=u+480|0;l=p+472|0;v=p+240|0;t=p+224|0;s=p+176|0;q=p+16|0;r=p;m=p+172|0;n=p+168|0;o=p+12|0;d=a+44|0;if(!(f[d>>2]|0)){SFa(l,c);k=f[l>>2]|0;f[l>>2]=0;e=f[d>>2]|0;f[d>>2]=k;if(e|0)ubb(e);f[l>>2]=0}EI(a+16|0,c);k=a+60|0;do if(f[k>>2]|0){Wt(v);f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;j=h7a(16)|0;x=0;va(87,t|0,16,j|0);j=x;x=0;if(j&1)d=Ia()|0;else{x=0;ua(93,s|0,((b[t+11>>0]|0)<0?f[t>>2]|0:t)|0);j=x;x=0;if(j&1)d=Ia()|0;else{x=0;d=ia(69,f[s+44>>2]|0,0)|0;j=x;x=0;if(!(j&1)?(x=0,wa(74,q|0,v|0,d|0,0),j=x,x=0,!(j&1)):0){yUa(r);h=a+56|0;i=a+48|0;j=r+4|0;a:while(1){if(!(f[k>>2]|0)){e=35;break}d=h;while(1){d=f[d>>2]|0;if(!d)break;f[m>>2]=f[d+8>>2];x=0;f[l>>2]=f[m>>2];va(139,v|0,l|0,r|0);g=x;x=0;if(g&1){e=20;break a}}bZ(i);e=f[r>>2]|0;while(1){if((e|0)==(j|0))break;g=f[e+16>>2]|0;f[n>>2]=g;f[l>>2]=f[n>>2];d=Sma(c,l)|0;if(!d){f[o>>2]=g;x=0;f[l>>2]=f[o>>2];d=ia(56,v|0,l|0)|0;g=x;x=0;if(g&1){e=34;break a}x=0;d=ia(157,d|0,c|0)|0;g=x;x=0;if(g&1){e=34;break a}}x=0;ua(1834,a|0,d|0);g=x;x=0;if(g&1){e=34;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}hqa(r)}if((e|0)==20)d=Ia()|0;else if((e|0)==34)d=Ia()|0;else if((e|0)==35){MTa(r);AS(q);v2a(s);HTa(t);cy(v);break}MTa(r);AS(q)}else d=Ia()|0;v2a(s)}HTa(t)}cy(v);Ua(d|0)}while(0);u=p;return}function aj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=yCa(134176,110809)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);jGa(a,f[c+24>>2]|0);e=c+4|0;d=f[e>>2]|0;a:do if((d|0)==5)dTa(f[a+28>>2]|0);else{b:do if(!(b[c+20>>0]|0))switch(d|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?45:44)|0;break b}case 2:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?47:46)|0;break b}case 4:{Ev(f[a+28>>2]|0,40)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?49:48)|0;break b}case 2:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?51:50)|0;break b}case 4:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?53:52)|0;break b}case 8:{Ev(f[a+28>>2]|0,41)|0;break b}default:hb()}break}case 3:{Ev(f[a+28>>2]|0,42)|0;break b}case 4:{Ev(f[a+28>>2]|0,43)|0;break b}default:hb()}else{d=a+28|0;Ev(f[d>>2]|0,-2)|0;switch(f[e>>2]|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,18)|0;break b}case 2:{Ev(f[d>>2]|0,19)|0;break b}case 4:{Ev(f[d>>2]|0,16)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,20)|0;break b}case 2:{Ev(f[d>>2]|0,21)|0;break b}case 4:{Ev(f[d>>2]|0,22)|0;break b}case 8:{Ev(f[d>>2]|0,17)|0;break b}default:hb()}break}default:hb()}}while(0);i=Bbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;CX(a,i,k,Bbb(f[c+12>>2]|0)|0)}while(0);u=j;return}function bj(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+48|0;i=p+36|0;n=p+40|0;o=p+32|0;k=p+16|0;m=p+8|0;j=p;f[i>>2]=g;l=f[b>>2]|0;if((f[l+4>>2]|0)!=5){U0a(n,h);g=qwa(f[n>>2]|0,0)|0;f[o>>2]=g;f[k>>2]=n;f[k+4>>2]=i;f[k+8>>2]=o;f[k+12>>2]=a;g=f[l>>2]|0;do if(sab(g)|0){h=(hSa(l)|0)+8|0;I$a(m,h);GUa(j,h);h=m+4|0;a=f[j>>2]|0;g=f[j+4>>2]|0;while(1){if(!(lTa(f[m>>2]|0,f[h>>2]|0,a,g)|0))break;Sy(k,LOa(m)|0);RYa(m)}}else{if(c8a(g)|0){h=(SQa(l)|0)+8|0;I$a(m,h);GUa(j,h);h=m+4|0;a=f[j>>2]|0;g=f[j+4>>2]|0;while(1){if(!(lTa(f[m>>2]|0,f[h>>2]|0,a,g)|0))break;Sy(k,LOa(m)|0);RYa(m)}break}if(!(K2a(g)|0))hb();h=(DQa(l)|0)+8|0;I$a(m,h);GUa(j,h);h=m+4|0;a=f[j>>2]|0;g=f[j+4>>2]|0;while(1){if(!(lTa(f[m>>2]|0,f[h>>2]|0,a,g)|0))break;Sy(k,LOa(m)|0);RYa(m)}Sy(k,(DQa(l)|0)+28|0)}while(0);a=f[c+4>>2]|0;g=f[c>>2]|0;while(1){if((g|0)==(a|0))break;f[m>>2]=f[g>>2];q=(f[o>>2]|0)+12|0;h=Dxa(1)|0;i=Jm(e,m)|0;i=f[i>>2]|0;j=Dxa(1)|0;k=NKa(f[n>>2]|0,d,1)|0;c=NKa(f[n>>2]|0,f[m>>2]|0,1)|0;aaa(q,sT(f[n>>2]|0,h,i,j,k,c,1)|0);g=g+4|0}aaa((f[o>>2]|0)+12|0,l);rt(f[o>>2]|0);f[b>>2]=f[o>>2]}u=p;return}function cj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+1056|0;v=x+1024|0;w=x;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;f[v+12>>2]=0;f[v+16>>2]=0;f[v+20>>2]=0;f[v+24>>2]=0;f[v+28>>2]=0;d=b[c>>0]|0;a:do if(d<<24>>24){p=0;do{if(!(b[a+p>>0]|0)){d=0;break a}t=d&255;s=v+(t>>>5<<2)|0;f[s>>2]=f[s>>2]|1<<(t&31);p=p+1|0;f[w+(t<<2)>>2]=p;d=b[c+p>>0]|0}while(d<<24>>24!=0);if(p>>>0>1){k=1;j=1;l=0;i=-1;m=1;while(1){d=b[c+(j+i)>>0]|0;e=b[c+m>>0]|0;do if(d<<24>>24==e<<24>>24)if((j|0)==(k|0)){g=k;d=1;e=k+l|0;break}else{g=k;d=j+1|0;e=l;break}else if((d&255)>(e&255)){g=m-i|0;d=1;e=m;break}else{g=1;d=1;e=l+1|0;i=l;break}while(0);m=d+e|0;if(m>>>0>=p>>>0)break;else{k=g;j=d;l=e}}m=1;l=1;n=0;e=-1;o=1;while(1){d=b[c+(l+e)>>0]|0;j=b[c+o>>0]|0;do if(d<<24>>24==j<<24>>24)if((l|0)==(m|0)){d=m;j=1;k=m+n|0;break}else{d=m;j=l+1|0;k=n;break}else if((d&255)<(j&255)){d=o-e|0;j=1;k=o;break}else{d=1;j=1;k=n+1|0;e=n;break}while(0);o=j+k|0;if(o>>>0>=p>>>0){t=p;j=24;break}else{m=d;l=j;n=k}}}else{g=1;i=-1;t=p;d=1;e=-1;j=24}}else{g=1;i=-1;t=0;d=1;e=-1;j=24}while(0);b:do if((j|0)==24){r=(e+1|0)>>>0>(i+1|0)>>>0;d=r?d:g;r=r?e:i;s=r+1|0;if(!(z5(c,c+d|0,s)|0)){m=t-d|0;q=m;l=d}else{m=t-r+-1|0;m=(r>>>0>m>>>0?r:m)+1|0;q=0;l=m;m=t-m|0}n=t|63;o=t+-1|0;p=(q|0)!=0;d=a;k=0;e=a;while(1){g=d;do if((e-g|0)>>>0>>0){i=CA(e,n)|0;if(i)if((i-g|0)>>>0>>0){d=0;break b}else break;else{i=e+n|0;break}}else i=e;while(0);e=h[d+o>>0]|0;c:do if(!(1<<(e&31)&f[v+(e>>>5<<2)>>2])){g=0;e=t}else{e=t-(f[w+(e<<2)>>2]|0)|0;if(e|0){g=0;e=p&(k|0)!=0&e>>>0>>0?m:e;break}j=s>>>0>k>>>0;e=j?s:k;g=b[c+e>>0]|0;d:do if(g<<24>>24){while(1){if(g<<24>>24!=(b[d+e>>0]|0))break;e=e+1|0;g=b[c+e>>0]|0;if(!(g<<24>>24))break d}g=0;e=e-r|0;break c}while(0);if(!j)break b;e=s;while(1){e=e+-1|0;if((b[c+e>>0]|0)!=(b[d+e>>0]|0)){g=q;e=l;break c}if(e>>>0<=k>>>0)break b}}while(0);d=d+e|0;k=g;e=i}}while(0);u=x;return d|0}function dj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;n=l+32|0;m=l+8|0;k=l;FHa(n);x=0;ua(1493,m|0,c|0);j=x;x=0;if(j&1)e=Ia()|0;else{g=m+8|0;e=m+16|0;a:while(1){if(!(Bbb(f[g>>2]|0)|0)){j=15;break}i=f[e>>2]|0;j=Bbb(i)|0;i=f[i+8>>2]|0;f[k>>2]=i;Dba(m,j);b:do if(!(yQa(n,i)|0)){x=0;ua(1459,n|0,k|0);j=x;x=0;if(j&1){j=9;break a}sZ(b,i);h=Bbb(f[i+40>>2]|0)|0;while(1){j=h;if((L6a(i+24|0)|0)==(j|0))break b;x=0;ua(1459,m|0,h+8|0);h=x;x=0;if(h&1){j=12;break a}h=f[j+4>>2]|0}}while(0)}do if((j|0)==9){e=Ia()|0;j=14}else if((j|0)==12){e=Ia()|0;j=14}else if((j|0)==15){if(!(Bbb(f[n+8>>2]|0)|0)){x=0;wa(71,89124,88981,570,89147);x=0;e=Ia()|0;break}e=Bbb(f[n+16>>2]|0)|0;b=L6a(n)|0;c:while(1){i=e;if((b|0)==(i|0))break;g=f[e+8>>2]|0;e=Bbb(f[g+16>>2]|0)|0;g=L6a(g)|0;while(1){h=e;if((g|0)==(h|0))break;e=f[e+8>>2]|0;f[k>>2]=e;if(!(yQa(n,e)|0)?(x=0,ua(1459,d|0,k|0),e=x,x=0,e&1):0){j=26;break c}e=f[h+4>>2]|0}e=f[i+4>>2]|0}if((j|0)==26){e=Ia()|0;break}x=0;b=ga(212,48)|0;k=x;x=0;if(!(k&1)?(AOa(b),x=0,ua(1494,f[a>>2]|0,b|0),k=x,x=0,!(k&1)):0){e=Bbb(f[c+16>>2]|0)|0;g=L6a(c)|0;while(1){h=e;if((g|0)==(h|0))break;x=0;wa(131,f[e+8>>2]|0,2,b|0,n|0);k=x;x=0;if(k&1){j=34;break}e=f[h+4>>2]|0}if((j|0)==34){e=Ia()|0;break}e=Bbb(f[d+16>>2]|0)|0;g=L6a(d)|0;while(1){h=e;if((g|0)==(h|0))break;x=0;wa(131,f[e+8>>2]|0,1,b|0,n|0);d=x;x=0;if(d&1){j=39;break}e=f[h+4>>2]|0}if((j|0)==39){e=Ia()|0;break}x=0;e=ja(69,a|0,n|0,c|0)|0;a=x;x=0;if(!(a&1)?(f[b+20>>2]=e,x=0,ia(142,b+24|0,c|0)|0,c=x,x=0,!(c&1)):0){TDa(m);TDa(n);u=l;return b|0}e=Ia()|0;break}e=Ia()|0}while(0);TDa(m)}TDa(n);Ua(e|0);return 0}function ej(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;d=n+4|0;g=n;h=c+8|0;e=f[h>>2]|0;if(Iab(e)|0){f[g>>2]=e;f[d>>2]=f[g>>2];Hl(a,d);j=a+48|0;h=AB(j,h)|0;if(!h)Ca(85258,85283,307,99913);i=h+12|0;g=h+16|0;d=f[g>>2]|0;if(b2a(d)|0){e=c+4|0;if(o2a(f[e>>2]|0)|0)yqa(a,(d|0)!=0,c,85919)|0;else yqa(a,(d|0)==0,c,85966)|0;d=f[i>>2]|0;if(o2a(d)|0?(k=f[e>>2]|0,o2a(k)|0):0)bja(a,k,d,c,86012);d=f[e>>2]|0;if((o2a(d)|0?f[g>>2]|0:0)?(l=f[i>>2]|0,(l|0)!=5):0)bja(a,d,l,c,86071);yqa(a,(f[g>>2]|0)!=-2,c,86126)|0;if(Bbb(f[c+16>>2]|0)|0){d=MCa(c+12|0)|0;d=f[(f[d>>2]|0)+4>>2]|0;if(o2a(d)|0?(m=f[i>>2]|0,(m|0)!=5):0)bja(a,d,m,c,86151);if(!d)yqa(a,(f[g>>2]|0)==0,c,86222)|0}}x4(j,h)}h=c+12|0;i=c+16|0;d=f[i>>2]|0;a:do if((Bbb(d)|0)>>>0>1){g=a+44|0;e=0;while(1){if(e>>>0>=(d+-1|0)>>>0)break a;m=JDa(h,e)|0;if(!(yqa(a,(o2a(f[(f[m>>2]|0)+4>>2]|0)|0)^1,c,86288)|0)?(b[(f[g>>2]|0)+8>>0]|0)==0:0){m=yCa(zm(yCa(TNa(a)|0,86392)|0,e)|0,86403)|0;l=JDa(h,e)|0;l=yCa(xm(m,f[l>>2]|0)|0,86406)|0;m=JDa(h,e)|0;yCa(Am(l,f[(f[m>>2]|0)+4>>2]|0)|0,112640)|0}e=e+1|0;d=f[i>>2]|0}}while(0);do if(Bbb(d)|0){e=MCa(h)|0;e=f[(f[e>>2]|0)+4>>2]|0;d=c+4|0;g=f[d>>2]|0;m=o2a(g)|0;h=o2a(e)|0;if(!m){kwa(a,h,c);break}if(h){bja(a,g,e,c,86494);break}else{Xoa(a,e,c);break}}else d=c+4|0;while(0);if(o2a(f[d>>2]|0)|0)yqa(a,(Bbb(f[i>>2]|0)|0)!=0,c,86613)|0;u=n;return}function fj(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+32|0;q=r+24|0;g=r+20|0;k=r+16|0;l=r+12|0;m=r+8|0;n=r+4|0;o=r;p=a+64|0;j=f[p>>2]|0;do if((f[j+16>>2]|0)!=(f[j+12>>2]|0)){j=a+72|0;do if(b[j>>0]|0){c=yCa(134176,87962)|0;ZXa(q,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[q>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(q);Wq(c,e)|0;du(c)|0;break}r=Ia()|0;JCa(q);Ua(r|0)}while(0);i=A$(a,2)|0;h=a+68|0;e=f[h>>2]|0;d=f[p>>2]|0;f4a(g,(f[d+16>>2]|0)-(f[d+12>>2]|0)>>2);Yr(e,f[g>>2]|0)|0;e=f[p>>2]|0;g=f[e+16>>2]|0;e=f[e+12>>2]|0;a:while(1){if((e|0)==(g|0)){c=9;break}if(b[j>>0]|0){d=yCa(134176,87861)|0;ZXa(q,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[q>>2]|0,134880)|0;s=x;x=0;if(s&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;s=x;x=0;if(s&1){c=13;break}JCa(q);Wq(d,c)|0;du(d)|0}G$(a,f[(f[e>>2]|0)+4>>2]|0);G$(a,f[(f[e>>2]|0)+8>>2]|0);c=f[h>>2]|0;f4a(k,f[(f[e>>2]|0)+12>>2]|0);Yr(c,f[k>>2]|0)|0;c=f[e>>2]|0;switch(f[c+12>>2]|0){case 0:{s=f[h>>2]|0;f[m>>2]=f[c+16>>2];f[q>>2]=f[m>>2];f4a(l,g0(a,q)|0);Yr(s,f[l>>2]|0)|0;break}case 1:{d=f[h>>2]|0;f4a(n,-16);Pr(d,f[n>>2]|0)|0;d=f[p>>2]|0;s=f[d+72>>2]|0;zP(a,f[d+68>>2]|0,s,(Bbb(s)|0)!=-1,0);break}case 2:{s=f[p>>2]|0;c=f[s+92>>2]|0;d=f[s+96>>2]|0;zP(a,c,d,(Bbb(d)|0)!=65535,(b[s+114>>0]|0)!=0);break}case 3:{Pr(f[h>>2]|0,m8(f[c+20>>2]|0)|0)|0;s=f[h>>2]|0;f4a(o,0);Yr(s,f[o>>2]|0)|0;break}default:{c=20;break a}}e=e+4|0}if((c|0)==9){VA(a,i);break}else if((c|0)==13){s=Ia()|0;JCa(q);Ua(s|0)}else if((c|0)==20)hb()}while(0);u=r;return}function gj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;l=u;u=u+96|0;g=l+80|0;d=l+56|0;i=l+32|0;j=l+16|0;k=l;Mu(d,b,f[c+20>>2]|0);if(!(D0a(d)|0)){Mu(i,b,f[c+24>>2]|0);if(D0a(i)|0){f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];f[a+16>>2]=f[i+16>>2];f[a+20>>2]=f[i+20>>2]}else{e=b+4|0;b=f[e>>2]|0;f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];f[g+12>>2]=f[d+12>>2];b=zu(b,c,g)|0;d=c+12|0;JA(j,f[e>>2]|0,b,h[d>>0]|0,f[c+4>>2]|0);f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[k+12>>2]=f[i+12>>2];switch(f[c+8>>2]|0){case 0:{tT(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 1:{nT(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 2:{qaa(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 3:{taa(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 4:{paa(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 5:{f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[k+12>>2]=f[i+12>>2];break}default:hb()}c=f[e>>2]|0;i=h[d>>0]|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];mw(c,b,i,g);f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[g+12>>2]=f[j+12>>2];rAa(a,g)}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=l;return}function hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+64|0;p=q+8|0;l=q;SFa(p,c);o=a+80|0;n=f[p>>2]|0;f[p>>2]=0;b=f[o>>2]|0;f[o>>2]=n;if(b|0)ubb(b);f[p>>2]=0;m=iUa(a)|0;i=a+100|0;j=n8(12)|0;n=d+36|0;rNa(j,a,f[n>>2]|0);r$(p,j);j=a+104|0;b=f[j>>2]|0;do if(b>>>0>=(f[a+108>>2]|0)>>>0){x=0;ua(1456,i|0,p|0);h=x;x=0;if(h&1){b=Ia()|0;voa(f[p+4>>2]|0);break}else{b=f[p+4>>2]|0;k=7;break}}else{f[b>>2]=f[p>>2];k=p+4|0;f[b+4>>2]=f[k>>2];f[p>>2]=0;f[k>>2]=0;f[j>>2]=b+8;b=0;k=7}while(0);do if((k|0)==7){voa(b);while(1){h=f[j>>2]|0;b=h;if((h|0)==(f[i>>2]|0))break;g=f[b+-8>>2]|0;h=f[b+-4>>2]|0;if(h){b=h+4|0;f[b>>2]=(f[b>>2]|0)+1;b=f[j>>2]|0}e=0;while(1){if((e|0)==-1)break;r=e+-1|0;voa(f[b+(r<<3)+4>>2]|0);e=r}f[j>>2]=b+-8;x=0;ta(f[f[g>>2]>>2]|0,g|0);r=x;x=0;if(r&1){k=17;break}voa(h)}if((k|0)==17){b=Ia()|0;voa(h);break}WXa(f[(f[a+84>>2]|0)+104>>2]|0);i=a+16|0;Gma(p,f[a+20>>2]|0,f[a+24>>2]|0,f[a+32>>2]|0);E9(l,i);j=p+4|0;k=d+4|0;h=f[l+4>>2]|0;b=f[j>>2]|0;while(1){if((b|0)==(h|0))break;r=f[b>>2]|0;g=XRa(f[r+104>>2]|0)|0;if(Gab(f[r+8>>2]|0)|0?(f[g+4>>2]|0)!=5:0){e=f[o>>2]|0;if(!(f[k>>2]|0))e=IOa(e,0)|0;else e=d_a(f[e>>2]|0)|0;aaa(g+12|0,e);rt(g)}b=b+4|0;f[j>>2]=b;e=f[p>>2]|0;if((b-(f[e>>2]|0)|0)==4096){b=e+4|0;f[p>>2]=b;b=f[b>>2]|0;f[j>>2]=b}}Gm(i,m);xSa(p,c,xka(d,1)|0);b=Xna(f[a+64>>2]|0,p)|0;f[n>>2]=b;if(f[k>>2]|0?(f[b+4>>2]|0)==0:0){r=Dpa(p,b,d_a(f[p>>2]|0)|0)|0;f[n>>2]=r}gX(p);x=0;ua(1457,p+16|0,n|0);r=x;x=0;if(r&1){b=Ia()|0;pDa(p);break}else{pDa(p);u=q;return}}while(0);Ua(b|0)}function ij(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+64|0;m=z+16|0;A=z+48|0;r=z+44|0;s=z+40|0;t=z;v=z+36|0;w=z+32|0;do if(b[d+112>>0]|0){f[A>>2]=0;o=A+4|0;f[o>>2]=0;p=A+8|0;f[p>>2]=0;y=d+100|0;q=f[d+104>>2]|0;n=f[y>>2]|0;a:while(1){if((n|0)==(q|0)){c=4;break}k=n+4|0;l=n+8|0;a=f[l>>2]|0;c=f[k>>2]|0;e=a;while(1){if((e|0)==(c|0))break;a=a+-1|0;if(b[a>>0]|0)break;f[l>>2]=a;e=a}a=g$a(f[n>>2]|0)|0;b:do if(!a){a=f[o>>2]|0;if((a|0)==(f[p>>2]|0)){x=0;ua(2402,A|0,n|0);l=x;x=0;if(l&1){c=18;break a}else break}x=0;ua(2401,a|0,n|0);l=x;x=0;if(l&1){c=18;break a}f[o>>2]=(f[o>>2]|0)+16}else{x=0;j=ga(225,a+8|0)|0;i=x;x=0;if(i&1){c=19;break a}a=0;while(1){h=f[k>>2]|0;g=(f[l>>2]|0)-h|0;if(a>>>0>=g>>>0)break b;i=a;while(1){if(i>>>0>=g>>>0)break;if(b[h+i>>0]|0)break;i=i+1|0}a=i;c=i;while(1){if(!(a>>>0>>0&(a-c|0)>>>0<8))break;if(!(b[h+c>>0]|0)){B=(b[h+a>>0]|0)==0;e=a+(B&1)|0;c=B?c:a}else{c=c+1|0;e=c}a=e}if((c|0)!=(i|0)){U0a(s,d);m$a(t,i+j|0);x=0;f[m>>2]=f[t>>2];f[m+4>>2]=f[t+4>>2];f[m+8>>2]=f[t+8>>2];f[m+12>>2]=f[t+12>>2];g=ia(50,s|0,m|0)|0;B=x;x=0;if(B&1){c=34;break a}f[r>>2]=g;h=(f[k>>2]|0)+i|0;f[v>>2]=h;c=c-i|0;f[w>>2]=c;e=f[o>>2]|0;if(e>>>0>=(f[p>>2]|0)>>>0){x=0;wa(145,A|0,r|0,v|0,w|0);B=x;x=0;if(B&1){c=35;break a}}else{x=0;va(85,m|0,c|0,0);B=x;x=0;if(B&1){c=35;break a}x=0;wa(139,e|0,g|0,h|0,f[m>>2]|0);B=x;x=0;if(B&1){c=35;break a}f[o>>2]=(f[o>>2]|0)+16}}}}while(0);n=n+16|0}if((c|0)==4){_8(y,A);hca(A);break}else if((c|0)==18)a=Ia()|0;else if((c|0)==19)a=Ia()|0;else if((c|0)==34){a=Ia()|0;c=36}else if((c|0)==35){a=Ia()|0;c=36}hca(A);Ua(a|0)}while(0);u=z;return}function jj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==114:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){eY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;JJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3194,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,123526)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,o|0,123523)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,l|0,123274)|0;r=x;x=0;if(r&1){a=Ia()|0;HTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}NY(j,k);tA((f[i>>2]|0)+-24|0,j);JJa(j);HTa(k);HTa(l);HTa(m);HTa(o);HTa(p);HTa(q);a=h;break a}while(0);HTa(m)}HTa(o)}HTa(p)}HTa(q);Ua(a|0)}while(0);u=n;return a|0}function kj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==100:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){eY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;JJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3194,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,124426)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,o|0,123523)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,l|0,123274)|0;r=x;x=0;if(r&1){a=Ia()|0;HTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}NY(j,k);tA((f[i>>2]|0)+-24|0,j);JJa(j);HTa(k);HTa(l);HTa(m);HTa(o);HTa(p);HTa(q);a=h;break a}while(0);HTa(m)}HTa(o)}HTa(p)}HTa(q);Ua(a|0)}while(0);u=n;return a|0}function lj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){eY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;JJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3194,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,123510)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,o|0,123523)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,l|0,123274)|0;r=x;x=0;if(r&1){a=Ia()|0;HTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}NY(j,k);tA((f[i>>2]|0)+-24|0,j);JJa(j);HTa(k);HTa(l);HTa(m);HTa(o);HTa(p);HTa(q);a=h;break a}while(0);HTa(m)}HTa(o)}HTa(p)}HTa(q);Ua(a|0)}while(0);u=n;return a|0}function mj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==99:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){eY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;JJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3194,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,124443)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,o|0,123523)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,l|0,123274)|0;r=x;x=0;if(r&1){a=Ia()|0;HTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}NY(j,k);tA((f[i>>2]|0)+-24|0,j);JJa(j);HTa(k);HTa(l);HTa(m);HTa(o);HTa(p);HTa(q);a=h;break a}while(0);HTa(m)}HTa(o)}HTa(p)}HTa(q);Ua(a|0)}while(0);u=n;return a|0}function nj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;v=u;u=u+112|0;q=v+12|0;s=v+4|0;m=v+8|0;n=v;j=c+8|0;if(((((Iab(f[j>>2]|0)|0?(t=o$a(f[c+12>>2]|0)|0,(t|0)!=0):0)?(l=t+12|0,r=t+16|0,(Bbb(f[r>>2]|0)|0)>>>0>=2):0)?(d=MCa(l)|0,d=n$a(f[d>>2]|0)|0,(d|0)!=0):0)?QQa(d)|0:0)?(i=d+8|0,!(_1a(f[i>>2]|0,f[j>>2]|0)|0)):0){p=(Bbb(f[r>>2]|0)|0)+-2|0;e=f[a+36>>2]|0;Bbb(e)|0;U0a(s,e);e=q+26|0;c=a+40|0;while(1){d=JDa(l,p)|0;d=f[d>>2]|0;g=S$a(d)|0;if(g|0){h=9;break}a=n$a(d)|0;if(a|0){h=21;break}fA(q,_Ya(f[c>>2]|0)|0,d);g=(b[e>>0]|0)!=0;V7(q);if((p|0)==0|g){c=0;break}p=p+-1|0}a:do if((h|0)==9){c=g+16|0;d=f[c>>2]|0;if(!d){if((f[(f[g+12>>2]|0)+4>>2]|0)!=5){c=0;break}s=FB(s,t,p+1|0,Bbb(f[r>>2]|0)|0)|0;f[c>>2]=s;LI(g);rt(t);c=1;break}if(o2a(f[g+4>>2]|0)|0)Ca(91250,91090,360,91277);f[q>>2]=s;a=g+12|0;e=f[a>>2]|0;do if((f[e+4>>2]|0)!=5)if((f[d+4>>2]|0)==5){s=Px(q,e,FB(s,t,p+1|0,Bbb(f[r>>2]|0)|0)|0)|0;f[a>>2]=s;LI(g);rt(t);break}else{c=0;break a}else{s=Px(q,d,FB(s,t,p+1|0,Bbb(f[r>>2]|0)|0)|0)|0;f[c>>2]=s;LI(g);rt(t)}while(0);c=1}else if((h|0)==21){d=a+16|0;c=f[d>>2]|0;if(((c|0)!=0?(f[a+12>>2]|0)==0:0)?(o=a+8|0,k=f[o>>2]|0,_1a(k,f[j>>2]|0)|0):0){if((p|0)==((Bbb(f[r>>2]|0)|0)+-2|0)){c=mBa(f[s>>2]|0,20,c)|0;f[d>>2]=c;f[i>>2]=f[o>>2];f[o>>2]=f[j>>2];c=1;break}c=f[t+8>>2]|0;if($1a(k,c)|0?(f[m>>2]=c,f[q>>2]=f[m>>2],(PM(t,q)|0)==1):0){m=f[d>>2]|0;f[n>>2]=f[o>>2];f[q>>2]=f[n>>2];c=Qma(s,q,0,0)|0;t=Cqa(s,m,c,FB(s,t,p+1|0,Bbb(f[r>>2]|0)|0)|0)|0;c=JDa(l,p)|0;f[c>>2]=t;c=1}else c=0}else c=0}while(0)}else c=0;u=v;return c|0}function oj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1215,b);d=(XRa(c)|0)+8|0;if(Iab(f[d>>2]|0)|0)rS(a,1216,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1214,JDa(d,b)|0);c=b}}case 2:{rS(a,1217,b);rS(a,1216,b);oO(a,(qSa(c)|0)+16|0);rS(a,1216,b);rS(a,1214,(qSa(c)|0)+12|0);rS(a,1216,b);rS(a,1214,(qSa(c)|0)+8|0);break}case 3:{rS(a,1218,b);rS(a,1214,(gSa(c)|0)+12|0);rS(a,1216,b);break}case 4:{rS(a,1219,b);rS(a,1216,b);oO(a,(WRa(c)|0)+16|0);oO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1220,b);rS(a,1216,b);oO(a,(IRa(c)|0)+32|0);rS(a,1214,(IRa(c)|0)+28|0);break}case 20:{rS(a,1221,b);rS(a,1216,b);oO(a,(zRa(c)|0)+8|0);break}case 23:{rS(a,1222,b);rS(a,1216,b);break}default:Be(a,b)}while(0);return}function pj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1120,b);d=(XRa(c)|0)+8|0;if(Iab(f[d>>2]|0)|0)rS(a,1121,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1119,JDa(d,b)|0);c=b}}case 2:{rS(a,1122,b);rS(a,1121,b);pO(a,(qSa(c)|0)+16|0);rS(a,1121,b);rS(a,1119,(qSa(c)|0)+12|0);rS(a,1121,b);rS(a,1119,(qSa(c)|0)+8|0);break}case 3:{rS(a,1123,b);rS(a,1119,(gSa(c)|0)+12|0);rS(a,1121,b);break}case 4:{rS(a,1124,b);rS(a,1121,b);pO(a,(WRa(c)|0)+16|0);pO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1125,b);rS(a,1121,b);pO(a,(IRa(c)|0)+32|0);rS(a,1119,(IRa(c)|0)+28|0);break}case 20:{rS(a,1126,b);rS(a,1121,b);pO(a,(zRa(c)|0)+8|0);break}case 23:{rS(a,1127,b);rS(a,1121,b);break}default:Ce(a,b)}while(0);return}function qj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+160|0;k=p+120|0;j=p+144|0;g=p+104|0;h=p+88|0;l=p+40|0;i=p;m=p+140|0;n=p+136|0;o=p+72|0;d=p+56|0;e=p+24|0;a:do switch(f[c+8>>2]|0){case 0:{m$a(g,65536);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];rAa(a,k);break}case 1:{m$a(h,Bbb(f[(f[b+4>>2]|0)+32>>2]|0)|0);f[k>>2]=f[h>>2];f[k+4>>2]=f[h+4>>2];f[k+8>>2]=f[h+8>>2];f[k+12>>2]=f[h+12>>2];rAa(a,k);break}case 2:{m$a(l,-1);h=JDa(c+16|0,0)|0;Mu(i,b,f[h>>2]|0);do if(!(D0a(i)|0)){c=b+4|0;g=Bbb(f[(f[c>>2]|0)+32>>2]|0)|0;b=ORa(i)|0;if(b>>>0>65535){f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];rAa(a,k);break}d=f[c>>2]|0;e=Bbb(f[d+32>>2]|0)|0;if(e>>>0>=~b>>>0){f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];rAa(a,k);break}b=e+b|0;if(b>>>0>(Bbb(f[(f[d>>2]|0)+96>>2]|0)|0)>>>0){f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];rAa(a,k);break}else{l=f[d+36>>2]|0;i=f[(f[l>>2]|0)+16>>2]|0;cLa(m,e<<16,0);cLa(n,b<<16,0);f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];qc[i&255](l,j,k);rHa((f[c>>2]|0)+32|0,b,0)|0;m$a(o,g);f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];f[k+12>>2]=f[o+12>>2];rAa(a,k);break}}else{f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];f[a+16>>2]=f[i+16>>2];f[a+20>>2]=f[i+20>>2]}while(0);break}case 3:if($1a(f[c+12>>2]|0,f[33119]|0)|0){m$a(d,1);f[k>>2]=f[d>>2];f[k+4>>2]=f[d+4>>2];f[k+8>>2]=f[d+8>>2];f[k+12>>2]=f[d+12>>2];rAa(a,k);break a}else{m$a(e,0);f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];rAa(a,k);break a}default:hb()}while(0);u=p;return}function rj(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+128|0;j=q;s=q+112|0;m=q+104|0;r=q+100|0;k=q+120|0;f[s>>2]=j;f[s+4>>2]=512;ZXa(r,g);a=f[r>>2]|0;x=0;l=ia(73,a|0,134880)|0;o=x;x=0;if(o&1){a=Ia()|0;e=s}else{b[k>>0]=0;n=f[d>>2]|0;o=n;x=0;a=ra(1,c|0,o|0,e|0,a|0,f[g+4>>2]|0,h|0,k|0,l|0,s|0,m|0,j+100|0)|0;g=x;x=0;a:do if(g&1)p=11;else{if(a){a=i+11|0;if((b[a>>0]|0)<0){T0a(f[i>>2]|0,0);f[i+4>>2]=0}else{T0a(i,0);b[a>>0]=0}if(b[k>>0]|0){x=0;a=ia(f[(f[l>>2]|0)+28>>2]|0,l|0,45)|0;k=x;x=0;if(k&1){p=11;break}x=0;ua(82,i|0,a|0);k=x;x=0;if(k&1){p=11;break}}x=0;g=ia(f[(f[l>>2]|0)+28>>2]|0,l|0,48)|0;l=x;x=0;if(l&1){a=Ia()|0;break}j=f[m>>2]|0;e=j+-1|0;a=f[s>>2]|0;while(1){if(a>>>0>=e>>>0)break;if((b[a>>0]|0)!=g<<24>>24)break;a=a+1|0}x=0;ja(94,i|0,a|0,j|0)|0;i=x;x=0;if(i&1){a=Ia()|0;break}}a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){p=11;break a}}else a=X6a(b[j>>0]|0)|0;if($1a(a,-1)|0){f[c>>2]=0;j=1;break}else{j=(f[c>>2]|0)==0;break}}else j=1;while(0);do if(n){a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0)){x=0;a=ga(f[(f[n>>2]|0)+36>>2]|0,o|0)|0;o=x;x=0;if(o&1){p=11;break a}}else a=X6a(b[a>>0]|0)|0;if(!($1a(a,-1)|0))if(j)break;else{p=35;break}else{f[d>>2]=0;p=33;break}}else p=33;while(0);if((p|0)==33?j:0)p=35;if((p|0)==35)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;JCa(r);a=f[s>>2]|0;f[s>>2]=0;if(a|0?(x=0,ta(f[s+4>>2]|0,a|0),s=x,x=0,s&1):0){s=Ja(0)|0;r2a(s)}u=q;return j|0}while(0);if((p|0)==11)a=Ia()|0;e=s;j=f[s>>2]|0}JCa(r);f[e>>2]=0;if(j|0?(x=0,ta(f[s+4>>2]|0,j|0),s=x,x=0,s&1):0){s=Ja(0)|0;r2a(s)}Ua(a|0);return 0}function sj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,995,b);d=(XRa(c)|0)+8|0;if(Iab(f[d>>2]|0)|0)rS(a,996,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,994,JDa(d,b)|0);c=b}}case 2:{rS(a,997,b);rS(a,996,b);wO(a,(qSa(c)|0)+16|0);rS(a,996,b);rS(a,994,(qSa(c)|0)+12|0);rS(a,996,b);rS(a,994,(qSa(c)|0)+8|0);break}case 3:{rS(a,998,b);rS(a,994,(gSa(c)|0)+12|0);rS(a,996,b);break}case 4:{rS(a,999,b);rS(a,996,b);wO(a,(WRa(c)|0)+16|0);wO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1e3,b);rS(a,996,b);wO(a,(IRa(c)|0)+32|0);rS(a,994,(IRa(c)|0)+28|0);break}case 20:{rS(a,1001,b);rS(a,996,b);wO(a,(zRa(c)|0)+8|0);break}case 23:{rS(a,1002,b);rS(a,996,b);break}default:Ke(a,b)}while(0);return}function tj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,900,b);d=(XRa(c)|0)+8|0;if(Iab(f[d>>2]|0)|0)rS(a,901,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,899,JDa(d,b)|0);c=b}}case 2:{rS(a,902,b);rS(a,901,b);vO(a,(qSa(c)|0)+16|0);rS(a,901,b);rS(a,899,(qSa(c)|0)+12|0);rS(a,901,b);rS(a,899,(qSa(c)|0)+8|0);break}case 3:{rS(a,903,b);rS(a,899,(gSa(c)|0)+12|0);rS(a,901,b);break}case 4:{rS(a,904,b);rS(a,901,b);vO(a,(WRa(c)|0)+16|0);vO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,905,b);rS(a,901,b);vO(a,(IRa(c)|0)+32|0);rS(a,899,(IRa(c)|0)+28|0);break}case 20:{rS(a,906,b);rS(a,901,b);vO(a,(zRa(c)|0)+8|0);break}case 23:{rS(a,907,b);rS(a,901,b);break}default:Le(a,b)}while(0);return}function uj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,775,b);d=(XRa(c)|0)+8|0;if(Iab(f[d>>2]|0)|0)rS(a,776,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,774,JDa(d,b)|0);c=b}}case 2:{rS(a,777,b);rS(a,776,b);xO(a,(qSa(c)|0)+16|0);rS(a,776,b);rS(a,774,(qSa(c)|0)+12|0);rS(a,776,b);rS(a,774,(qSa(c)|0)+8|0);break}case 3:{rS(a,778,b);rS(a,774,(gSa(c)|0)+12|0);rS(a,776,b);break}case 4:{rS(a,779,b);rS(a,776,b);xO(a,(WRa(c)|0)+16|0);xO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,780,b);rS(a,776,b);xO(a,(IRa(c)|0)+32|0);rS(a,774,(IRa(c)|0)+28|0);break}case 20:{rS(a,781,b);rS(a,776,b);xO(a,(zRa(c)|0)+8|0);break}case 23:{rS(a,782,b);rS(a,776,b);break}default:Me(a,b)}while(0);return}function vj(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+432|0;j=q;s=q+408|0;m=q+404|0;r=q+400|0;k=q+416|0;f[s>>2]=j;f[s+4>>2]=512;ZXa(r,g);a=f[r>>2]|0;x=0;l=ia(73,a|0,134912)|0;o=x;x=0;if(o&1){a=Ia()|0;e=s}else{b[k>>0]=0;n=f[d>>2]|0;o=n;x=0;a=ra(2,c|0,o|0,e|0,a|0,f[g+4>>2]|0,h|0,k|0,l|0,s|0,m|0,j+400|0)|0;g=x;x=0;a:do if(g&1)p=11;else{if(a){a=i+8+3|0;if((b[a>>0]|0)<0){E1a(f[i>>2]|0,0);f[i+4>>2]=0}else{E1a(i,0);b[a>>0]=0}if(b[k>>0]|0){x=0;a=ia(f[(f[l>>2]|0)+44>>2]|0,l|0,45)|0;k=x;x=0;if(k&1){p=11;break}x=0;ua(3188,i|0,a|0);k=x;x=0;if(k&1){p=11;break}}x=0;g=ia(f[(f[l>>2]|0)+44>>2]|0,l|0,48)|0;l=x;x=0;if(l&1){a=Ia()|0;break}j=f[m>>2]|0;e=j+-4|0;a=f[s>>2]|0;while(1){if(a>>>0>=e>>>0)break;if((f[a>>2]|0)!=(g|0))break;a=a+4|0}x=0;ja(95,i|0,a|0,j|0)|0;i=x;x=0;if(i&1){a=Ia()|0;break}}a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){p=11;break a}}else a=Bbb(f[j>>2]|0)|0;if(T5a(a)|0){f[c>>2]=0;j=1;break}else{j=(f[c>>2]|0)==0;break}}else j=1;while(0);do if(n){a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0)){x=0;a=ga(f[(f[n>>2]|0)+36>>2]|0,o|0)|0;o=x;x=0;if(o&1){p=11;break a}}else a=Bbb(f[a>>2]|0)|0;if(!(T5a(a)|0))if(j)break;else{p=35;break}else{f[d>>2]=0;p=33;break}}else p=33;while(0);if((p|0)==33?j:0)p=35;if((p|0)==35)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;JCa(r);a=f[s>>2]|0;f[s>>2]=0;if(a|0?(x=0,ta(f[s+4>>2]|0,a|0),s=x,x=0,s&1):0){s=Ja(0)|0;r2a(s)}u=q;return j|0}while(0);if((p|0)==11)a=Ia()|0;e=s;j=f[s>>2]|0}JCa(r);f[e>>2]=0;if(j|0?(x=0,ta(f[s+4>>2]|0,j|0),s=x,x=0,s&1):0){s=Ja(0)|0;r2a(s)}Ua(a|0);return 0}function wj(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;y=u;u=u+464|0;E=y+456|0;t=y+460|0;v=y+452|0;w=y+448|0;A=y+436|0;B=y+424|0;C=y+412|0;m=y+408|0;o=y;q=y+404|0;r=y+400|0;ZXa(E,e);j=f[E>>2]|0;x=0;s=ia(73,j|0,134912)|0;p=x;x=0;a:do if(p&1)a=Ia()|0;else{k=h+8+3|0;p=b[k>>0]|0;a=p<<24>>24<0;l=h+4|0;do if((a?f[l>>2]|0:p&255)|0){a=f[(a?f[h>>2]|0:h)>>2]|0;x=0;i=ia(f[(f[s>>2]|0)+44>>2]|0,s|0,45)|0;p=x;x=0;if(p&1){a=Ia()|0;break a}else{p=(a|0)==(i|0);break}}else p=0;while(0);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[C+(a<<2)>>2]=0;a=a+1|0}x=0;Aa(4,d|0,p|0,j|0,t|0,v|0,w|0,A|0,B|0,C|0,m|0);n=x;x=0;if(n&1)a=Ia()|0;else{d=b[k>>0]|0;n=d<<24>>24<0;d=n?f[l>>2]|0:d&255;k=f[m>>2]|0;if((d|0)>(k|0)){j=b[C+8+3>>0]|0;a=b[B+8+3>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+1+(d-k<<1)|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}else{j=b[C+8+3>>0]|0;a=b[B+8+3>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+2|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}a=i+j+a|0;if(a>>>0>100){a=Kc(a<<2)|0;i=a;if(!a){x=0;sa(10);x=0;a=Ia()|0}else D=24}else{a=o;i=0;D=24}if((D|0)==24){D=n?f[h>>2]|0:h;x=0;Ba(2,a|0,q|0,r|0,f[e+4>>2]|0,D|0,D+(d<<2)|0,s|0,p|0,t|0,f[v>>2]|0,f[w>>2]|0,A|0,B|0,C|0,k|0);D=x;x=0;if(!(D&1)?(x=0,z=oa(47,f[c>>2]|0,a|0,f[q>>2]|0,f[r>>2]|0,e|0,g|0)|0,D=x,x=0,!(D&1)):0){if(i|0)rg(i);jTa(C);jTa(B);HTa(A);JCa(E);u=y;return z|0}a=Ia()|0}if(i|0)rg(i)}jTa(C);jTa(B);HTa(A)}while(0);JCa(E);Ua(a|0);return 0}function xj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;a:do if((b[a+26>>0]|0)==0?(b[c+26>>0]|0)==0:0){if(!((b[a+77>>0]|0)==0?!(b[a+27>>0]|0):0))j=5;if((j|0)==5?GMa(c)|0:0){d=1;break}if(GMa(a)|0){if(b[c+77>>0]|0){d=1;break}if(b[c+27>>0]|0){d=1;break}}if(b[a+79>>0]|0?GMa(c)|0:0){d=1;break}if(b[c+79>>0]|0?GMa(a)|0:0){d=1;break}g=a+44|0;i=c+40|0;h=c+28|0;e=f[a+40>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e+16>>2]|0;if(mfa(i,d)|0){d=1;break a}if(mfa(h,d)|0){d=1;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}g=a+32|0;e=f[a+28>>2]|0;while(1){if((e|0)==(g|0))break;if(mfa(i,f[e+16>>2]|0)|0){d=1;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}if(c$a(f[a+60>>2]|0,f[a+72>>2]|0)|0?b[c+27>>0]|0:0){d=1;break}if(c$a(f[c+60>>2]|0,f[c+72>>2]|0)|0?b[a+27>>0]|0:0){d=1;break}g=a+68|0;i=c+64|0;h=c+52|0;e=f[a+64>>2]|0;while(1){if((e|0)==(g|0))break;f[k>>2]=f[e+16>>2];if(K5(i,k)|0){j=49;break}if(K5(h,k)|0){j=49;break}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}if((j|0)==49){d=1;break}g=a+56|0;e=f[a+52>>2]|0;while(1){if((e|0)==(g|0))break;f[k>>2]=f[e+16>>2];if(K5(i,k)|0){d=1;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}d=(b[c+78>>0]|0)==0;if(b[a+78>>0]|0?XDa(c)|0:0){d=1;break}if(!d?XDa(a)|0:0){d=1;break}d=0}else d=1;while(0);u=l;return d|0}function yj(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;i=u;u=u+64|0;d=i+36|0;l=i+40|0;e=i+24|0;j=i+12|0;k=i;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,79526,h7a(79526)|0);g=a+4|0;x=0;c=ga(228,f[g>>2]|0)|0;n=x;x=0;a:do if(!(n&1)?(x=0,ia(59,l|0,c|0)|0,n=x,x=0,!(n&1)):0){x=0;ua(1283,k|0,h[a+8>>0]|0);n=x;x=0;if(n&1)c=Ia()|0;else{x=0;ia(83,k|0,108286)|0;n=x;x=0;if(n&1)c=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];c=0;while(1){if((c|0)==3)break;f[k+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,j|0,108286)|0;n=x;x=0;do if(n&1)c=Ia()|0;else{f[e>>2]=f[j>>2];f[e+4>>2]=f[j+4>>2];f[e+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}n=b[e+11>>0]|0;c=n<<24>>24<0;x=0;ja(49,l|0,(c?f[e>>2]|0:e)|0,(c?f[e+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){c=Ia()|0;HTa(e);break}HTa(e);HTa(j);HTa(k);if((!(l6a(f[g>>2]|0)|0)?(b[a+9>>0]|0)==0:0)?(x=0,ia(59,l|0,79542)|0,n=x,x=0,n&1):0){m=16;break a}b:do if(b[a+20>>0]|0){x=0;ia(59,l|0,79524)|0;n=x;x=0;if(n&1){m=16;break a}}else{n=Bbb(f[a+16>>2]|0)|0;x=0;ua(91,e|0,n|0);n=x;x=0;do if(!(n&1)){n=b[e+11>>0]|0;k=n<<24>>24<0;x=0;ja(49,l|0,(k?f[e>>2]|0:e)|0,(k?f[e+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){c=Ia()|0;HTa(e);break}else{HTa(e);break b}}else c=Ia()|0;while(0);break a}while(0);x=0;ua(83,d|0,l|0);n=x;x=0;if(n&1){m=16;break a}HTa(l);u=i;return f[d>>2]|0}while(0);HTa(j)}HTa(k)}}else m=16;while(0);if((m|0)==16)c=Ia()|0;HTa(l);Ua(c|0);return 0}function zj(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;y=u;u=u+160|0;E=y+148|0;t=y+156|0;v=y+153|0;w=y+152|0;A=y+136|0;B=y+124|0;C=y+112|0;m=y+108|0;o=y;q=y+104|0;r=y+100|0;ZXa(E,e);j=f[E>>2]|0;x=0;s=ia(73,j|0,134880)|0;p=x;x=0;a:do if(p&1)a=Ia()|0;else{k=h+11|0;p=b[k>>0]|0;a=p<<24>>24<0;l=h+4|0;do if((a?f[l>>2]|0:p&255)|0){a=b[(a?f[h>>2]|0:h)>>0]|0;x=0;i=ia(f[(f[s>>2]|0)+28>>2]|0,s|0,45)|0;p=x;x=0;if(p&1){a=Ia()|0;break a}else{p=a<<24>>24==i<<24>>24;break}}else p=0;while(0);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[C+(a<<2)>>2]=0;a=a+1|0}x=0;Aa(3,d|0,p|0,j|0,t|0,v|0,w|0,A|0,B|0,C|0,m|0);n=x;x=0;if(n&1)a=Ia()|0;else{d=b[k>>0]|0;n=d<<24>>24<0;d=n?f[l>>2]|0:d&255;k=f[m>>2]|0;if((d|0)>(k|0)){j=b[C+11>>0]|0;a=b[B+11>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+1+(d-k<<1)|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}else{j=b[C+11>>0]|0;a=b[B+11>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+2|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}a=i+j+a|0;if(a>>>0>100){a=Kc(a)|0;i=a;if(!a){x=0;sa(10);x=0;a=Ia()|0}else D=24}else{a=o;i=0;D=24}if((D|0)==24){D=n?f[h>>2]|0:h;x=0;Ba(1,a|0,q|0,r|0,f[e+4>>2]|0,D|0,D+d|0,s|0,p|0,t|0,b[v>>0]|0,b[w>>0]|0,A|0,B|0,C|0,k|0);D=x;x=0;if(!(D&1)?(x=0,z=oa(39,f[c>>2]|0,a|0,f[q>>2]|0,f[r>>2]|0,e|0,g|0)|0,D=x,x=0,!(D&1)):0){if(i|0)rg(i);HTa(C);HTa(B);HTa(A);JCa(E);u=y;return z|0}a=Ia()|0}if(i|0)rg(i)}HTa(C);HTa(B);HTa(A)}while(0);JCa(E);Ua(a|0);return 0}function Aj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=yCa(134176,110809)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);e=c+4|0;d=f[e>>2]|0;a:do if((d|0)!=5){b:do if(!(b[c+20>>0]|0))switch(d|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?45:44)|0;break b}case 2:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?47:46)|0;break b}case 4:{Ev(f[a+28>>2]|0,40)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?49:48)|0;break b}case 2:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?51:50)|0;break b}case 4:{Ev(f[a+28>>2]|0,(b[c+9>>0]|0)==0?53:52)|0;break b}case 8:{Ev(f[a+28>>2]|0,41)|0;break b}default:hb()}break}case 3:{Ev(f[a+28>>2]|0,42)|0;break b}case 4:{Ev(f[a+28>>2]|0,43)|0;break b}default:hb()}else{d=a+28|0;Ev(f[d>>2]|0,-2)|0;switch(f[e>>2]|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,18)|0;break b}case 2:{Ev(f[d>>2]|0,19)|0;break b}case 4:{Ev(f[d>>2]|0,16)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,20)|0;break b}case 2:{Ev(f[d>>2]|0,21)|0;break b}case 4:{Ev(f[d>>2]|0,22)|0;break b}case 8:{Ev(f[d>>2]|0,17)|0;break b}default:hb()}break}default:hb()}}while(0);i=Bbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;CX(a,i,k,Bbb(f[c+12>>2]|0)|0)}while(0);u=j;return}function Bj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0;E=u;u=u+96|0;g=E+32|0;H=E+80|0;G=E+64|0;F=E+48|0;r=E+16|0;y=E;D=b+12|0;SN(H,a,f[D>>2]|0);x=0;va(159,G|0,a|0,1);h=x;x=0;if(h&1)b=Ia()|0;else{x=0;va(159,F|0,a|0,1);h=x;x=0;if(h&1)b=Ia()|0;else{h=b+8|0;switch(f[h>>2]|0){case 40:case 39:{d=36;e=8;break}case 42:case 41:{d=38;e=8;break}default:{x=0;sa(5);x=0;b=Ia()|0;c=I}}if((e|0)==8){e=a+44|0;b=f[e>>2]|0;x=0;c=ga(320,G|0)|0;J=x;x=0;a:do if(((((((((((((!(J&1)?(x=0,i=ja(45,b|0,c|0,f[D>>2]|0)|0,J=x,x=0,!(J&1)):0)?(j=f[e>>2]|0,x=0,k=ga(320,F|0)|0,J=x,x=0,!(J&1)):0)?(l=f[e>>2]|0,m$a(r,0),x=0,f[g>>2]=f[r>>2],f[g+4>>2]=f[r+4>>2],f[g+8>>2]=f[r+8>>2],f[g+12>>2]=f[r+12>>2],l=ia(50,l|0,g|0)|0,J=x,x=0,!(J&1)):0)?(x=0,m=ja(45,j|0,k|0,l|0)|0,J=x,x=0,!(J&1)):0)?(n=f[e>>2]|0,x=0,o=ga(320,G|0)|0,J=x,x=0,!(J&1)):0)?(x=0,p=ja(46,f[n>>2]|0,o|0,1)|0,J=x,x=0,!(J&1)):0)?(x=0,q=ja(53,f[n>>2]|0,38,p|0)|0,J=x,x=0,!(J&1)):0)?(s=f[e>>2]|0,kqa(y,4294967296.0),x=0,f[g>>2]=f[y>>2],f[g+4>>2]=f[y+4>>2],f[g+8>>2]=f[y+8>>2],f[g+12>>2]=f[y+12>>2],t=ia(50,s|0,g|0)|0,J=x,x=0,!(J&1)):0)?(v=f[e>>2]|0,x=0,w=ga(320,H|0)|0,J=x,x=0,!(J&1)):0)?(x=0,z=ja(46,f[v>>2]|0,w|0,1)|0,J=x,x=0,!(J&1)):0)?(x=0,A=ja(53,f[v>>2]|0,d|0,z|0)|0,J=x,x=0,!(J&1)):0)?(x=0,B=ka(7,f[s>>2]|0,65,t|0,A|0)|0,J=x,x=0,!(J&1)):0)?(x=0,C=ka(7,f[n>>2]|0,63,q|0,B|0)|0,J=x,x=0,!(J&1)):0){x=0;b=ka(29,b|0,i|0,m|0,C|0)|0;J=x;x=0;if(J&1)break;switch(f[h>>2]|0){case 41:case 39:{x=0;b=ja(53,f[f[e>>2]>>2]|0,44,b|0)|0;J=x;x=0;if(J&1)break a;break}default:{}}BVa(f[a+16>>2]|0,b)|0;HCa(F);HCa(G);HCa(H);u=E;return}while(0);b=Ia()|0}HCa(F)}HCa(G)}HCa(H);Ua(b|0)}function Cj(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;o=p+16|0;j=p;k=p+4|0;m=a+12|0;do if(b[m>>0]|0){e=yCa(134176,96201)|0;ZXa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[o>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,i=x,x=0,!(i&1)):0){JCa(o);Wq(e,d)|0;du(e)|0;break}p=Ia()|0;JCa(o);Ua(p|0)}while(0);b[a+200>>0]=0;d=a+192|0;e=a+196|0;g=a+188|0;while(1){h=ld(a,j)|0;i=f[j>>2]|0;if(!i){c=8;break}c=f[d>>2]|0;if((c|0)==(f[e>>2]|0))IL(g,j);else{f[c>>2]=i;f[d>>2]=(f[d>>2]|0)+4}if((f[(f[j>>2]|0)+4>>2]|0)==5){c=17;break}}a:do if((c|0)==8){f[a+204>>2]=h;if(!(b[m>>0]|0))break;c=yCa(134176,96223)|0;ZXa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[o>>2]|0,134880)|0;a=x;x=0;if(!(a&1)?(x=0,l=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,a=x,x=0,!(a&1)):0){JCa(o);Wq(c,l)|0;du(c)|0;break}p=Ia()|0;JCa(o);Ua(p|0)}else if((c|0)==17){g=a+36|0;c=f[g>>2]|0;do if((c|0)==(f[a+128>>2]|0)){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;WZ(k,96254,h7a(96254)|0);x=0;ua(1869,a|0,k|0);l=x;x=0;if(l&1){p=Ia()|0;HTa(k);Ua(p|0)}else{HTa(k);c=f[g>>2]|0;break}}while(0);l=b[(f[f[a+8>>2]>>2]|0)+c>>0]|0;e=l<<24>>24;switch(l<<24>>24){case 5:case 11:break;default:{wl(a);break a}}do if(b[m>>0]|0){c=yCa(134176,96301)|0;ZXa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[o>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,n=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(o);Wq(c,n)|0;du(c)|0;c=f[g>>2]|0;break}p=Ia()|0;JCa(o);Ua(p|0)}while(0);f[a+204>>2]=e;f[g>>2]=c+1}while(0);u=p;return} -function wf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,842,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,841,JDa(d,b)|0);c=b}}case 2:{rS(a,843,b);QR(a,(qSa(c)|0)+16|0);rS(a,841,(qSa(c)|0)+12|0);rS(a,841,(qSa(c)|0)+8|0);break}case 3:{rS(a,844,b);rS(a,841,(gSa(c)|0)+12|0);break}case 4:{rS(a,845,b);QR(a,(WRa(c)|0)+16|0);QR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,846,b);rS(a,841,(IRa(c)|0)+28|0);QR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,847,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,841,JDa(d,b)|0);c=b}}case 7:{rS(a,848,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,841,JDa(d,b)|0);c=b}}case 8:{rS(a,849,b);b=DQa(c)|0;rS(a,841,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,841,JDa(d,b)|0);c=b}}case 9:{rS(a,850,b);break}case 10:{rS(a,851,b);rS(a,841,(iRa(c)|0)+12|0);break}case 11:{rS(a,852,b);break}case 12:{rS(a,853,b);rS(a,841,(WQa(c)|0)+12|0);break}case 13:{rS(a,854,b);rS(a,841,(YRa(c)|0)+24|0);break}case 14:{rS(a,855,b);rS(a,841,(KRa(c)|0)+28|0);rS(a,841,(KRa(c)|0)+24|0);break}case 24:{rS(a,856,b);rS(a,841,(YQa(c)|0)+24|0);rS(a,841,(YQa(c)|0)+20|0);break}case 25:{rS(a,857,b);rS(a,841,(rQa(c)|0)+24|0);rS(a,841,(rQa(c)|0)+20|0);rS(a,841,(rQa(c)|0)+16|0);break}case 26:{rS(a,858,b);rS(a,841,(LQa(c)|0)+20|0);rS(a,841,(LQa(c)|0)+16|0);rS(a,841,(LQa(c)|0)+12|0);break}case 27:{rS(a,859,b);rS(a,841,(KQa(c)|0)+16|0);rS(a,841,(KQa(c)|0)+12|0);break}case 15:{rS(a,860,b);break}case 16:{rS(a,861,b);rS(a,841,(JRa(c)|0)+12|0);break}case 17:{rS(a,862,b);rS(a,841,(ARa(c)|0)+16|0);rS(a,841,(ARa(c)|0)+12|0);break}case 18:{rS(a,863,b);rS(a,841,(yRa(c)|0)+16|0);rS(a,841,(yRa(c)|0)+12|0);rS(a,841,(yRa(c)|0)+8|0);break}case 19:{rS(a,864,b);rS(a,841,(_Ra(c)|0)+8|0);break}case 20:{rS(a,865,b);QR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,866,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,841,JDa(d,b)|0);c=b}}case 22:{rS(a,867,b);break}case 23:{rS(a,868,b);break}default:hb()}while(0);return}function xf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,294,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,293,JDa(d,b)|0);c=b}}case 2:{rS(a,295,b);_R(a,(qSa(c)|0)+16|0);rS(a,293,(qSa(c)|0)+12|0);rS(a,293,(qSa(c)|0)+8|0);break}case 3:{rS(a,296,b);rS(a,293,(gSa(c)|0)+12|0);break}case 4:{rS(a,297,b);_R(a,(WRa(c)|0)+16|0);_R(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,298,b);rS(a,293,(IRa(c)|0)+28|0);_R(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,299,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,293,JDa(d,b)|0);c=b}}case 7:{rS(a,300,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,293,JDa(d,b)|0);c=b}}case 8:{rS(a,301,b);b=DQa(c)|0;rS(a,293,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,293,JDa(d,b)|0);c=b}}case 9:{rS(a,302,b);break}case 10:{rS(a,303,b);rS(a,293,(iRa(c)|0)+12|0);break}case 11:{rS(a,304,b);break}case 12:{rS(a,305,b);rS(a,293,(WQa(c)|0)+12|0);break}case 13:{rS(a,306,b);rS(a,293,(YRa(c)|0)+24|0);break}case 14:{rS(a,307,b);rS(a,293,(KRa(c)|0)+28|0);rS(a,293,(KRa(c)|0)+24|0);break}case 24:{rS(a,308,b);rS(a,293,(YQa(c)|0)+24|0);rS(a,293,(YQa(c)|0)+20|0);break}case 25:{rS(a,309,b);rS(a,293,(rQa(c)|0)+24|0);rS(a,293,(rQa(c)|0)+20|0);rS(a,293,(rQa(c)|0)+16|0);break}case 26:{rS(a,310,b);rS(a,293,(LQa(c)|0)+20|0);rS(a,293,(LQa(c)|0)+16|0);rS(a,293,(LQa(c)|0)+12|0);break}case 27:{rS(a,311,b);rS(a,293,(KQa(c)|0)+16|0);rS(a,293,(KQa(c)|0)+12|0);break}case 15:{rS(a,312,b);break}case 16:{rS(a,313,b);rS(a,293,(JRa(c)|0)+12|0);break}case 17:{rS(a,314,b);rS(a,293,(ARa(c)|0)+16|0);rS(a,293,(ARa(c)|0)+12|0);break}case 18:{rS(a,315,b);rS(a,293,(yRa(c)|0)+16|0);rS(a,293,(yRa(c)|0)+12|0);rS(a,293,(yRa(c)|0)+8|0);break}case 19:{rS(a,316,b);rS(a,293,(_Ra(c)|0)+8|0);break}case 20:{rS(a,317,b);_R(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,318,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,293,JDa(d,b)|0);c=b}}case 22:{rS(a,319,b);break}case 23:{rS(a,320,b);break}default:hb()}while(0);return}function yf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,530,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,529,JDa(d,b)|0);c=b}}case 2:{rS(a,531,b);lS(a,(qSa(c)|0)+16|0);rS(a,529,(qSa(c)|0)+12|0);rS(a,529,(qSa(c)|0)+8|0);break}case 3:{rS(a,532,b);rS(a,529,(gSa(c)|0)+12|0);break}case 4:{rS(a,533,b);lS(a,(WRa(c)|0)+16|0);lS(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,534,b);rS(a,529,(IRa(c)|0)+28|0);lS(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,535,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,529,JDa(d,b)|0);c=b}}case 7:{rS(a,536,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,529,JDa(d,b)|0);c=b}}case 8:{rS(a,537,b);b=DQa(c)|0;rS(a,529,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,529,JDa(d,b)|0);c=b}}case 9:{rS(a,538,b);break}case 10:{rS(a,539,b);rS(a,529,(iRa(c)|0)+12|0);break}case 11:{rS(a,540,b);break}case 12:{rS(a,541,b);rS(a,529,(WQa(c)|0)+12|0);break}case 13:{rS(a,542,b);rS(a,529,(YRa(c)|0)+24|0);break}case 14:{rS(a,543,b);rS(a,529,(KRa(c)|0)+28|0);rS(a,529,(KRa(c)|0)+24|0);break}case 24:{rS(a,544,b);rS(a,529,(YQa(c)|0)+24|0);rS(a,529,(YQa(c)|0)+20|0);break}case 25:{rS(a,545,b);rS(a,529,(rQa(c)|0)+24|0);rS(a,529,(rQa(c)|0)+20|0);rS(a,529,(rQa(c)|0)+16|0);break}case 26:{rS(a,546,b);rS(a,529,(LQa(c)|0)+20|0);rS(a,529,(LQa(c)|0)+16|0);rS(a,529,(LQa(c)|0)+12|0);break}case 27:{rS(a,547,b);rS(a,529,(KQa(c)|0)+16|0);rS(a,529,(KQa(c)|0)+12|0);break}case 15:{rS(a,548,b);break}case 16:{rS(a,549,b);rS(a,529,(JRa(c)|0)+12|0);break}case 17:{rS(a,550,b);rS(a,529,(ARa(c)|0)+16|0);rS(a,529,(ARa(c)|0)+12|0);break}case 18:{rS(a,551,b);rS(a,529,(yRa(c)|0)+16|0);rS(a,529,(yRa(c)|0)+12|0);rS(a,529,(yRa(c)|0)+8|0);break}case 19:{rS(a,552,b);rS(a,529,(_Ra(c)|0)+8|0);break}case 20:{rS(a,553,b);lS(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,554,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,529,JDa(d,b)|0);c=b}}case 22:{rS(a,555,b);break}case 23:{rS(a,556,b);break}default:hb()}while(0);return}function zf(a){a=a|0;var b=0,c=0.0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;y=u;u=u+64|0;z=y+48|0;A=y+36|0;D=y+16|0;B=y+4|0;w=y;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;o=f[a+44>>2]|0;p=a+120|0;r=D+4|0;s=D+12|0;t=D+16|0;v=D+8|0;m=f[a+40>>2]|0;a:while(1){if((m|0)==(o|0)){C=3;break}b=f[m>>2]|0;f[z>>2]=b;a=b;if(Uz(p,z)|0){f[A>>2]=b;f[z>>2]=b;l=HH(z,4)|0;j=f[r>>2]|0;k=(j|0)==0;b:do if(!k){h=j+-1|0;i=(h&j|0)==0;if(!i)if(l>>>0>>0)b=l;else b=(l>>>0)%(j>>>0)|0;else b=h&l;e=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!e)C=20;else do{e=f[e>>2]|0;if(!e){C=20;break b}g=f[e+4>>2]|0;if((g|0)!=(l|0)){if(!i){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&h;if((g|0)!=(b|0)){C=20;break b}}}while((f[e+8>>2]|0)!=(a|0))}else{b=0;C=20}while(0);if((C|0)==20){C=0;x=0;wa(156,z|0,D|0,l|0,A|0);q=x;x=0;if(q&1){C=41;break}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;k=~~+W(+(c/d))>>>0;x=0;ua(3139,D|0,(q>>>0>>0?k:q)|0);q=x;x=0;if(q&1){C=27;break a}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l}else{g=a;b=(l>>>0)%(a>>>0)|0}}else g=j;while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a){e=f[z>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(a|0){a=f[a+4>>2]|0;b=g+-1|0;if(b&g){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&b;f[(f[D>>2]|0)+(a<<2)>>2]=e}}else{q=f[z>>2]|0;f[q>>2]=f[a>>2];f[a>>2]=q}f[s>>2]=(f[s>>2]|0)+1;a=f[m>>2]|0}x=0;ua(3140,a+24|0,a|0);q=x;x=0;if(q&1){C=43;break}}m=m+4|0}if((C|0)==3){p=D+8|0;q=B+4|0;c:while(1){if(!(f[s>>2]|0)){C=105;break}a=f[p>>2]|0;i=f[a+8>>2]|0;x4(D,a);TYa(B);a=i+12|0;x=0;b=ja(91,i+36|0,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break}d:do if(b){if(((f[i+16>>2]|0)-(f[a>>2]|0)|0)>>>0>=((f[q>>2]|0)-(f[B>>2]|0)|0)>>>0){C=51;break c}x=0;ia(109,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}x=0;ua(3140,i+24|0,B|0);o=x;x=0;if(o&1){C=47;break c}h=f[i+4>>2]|0;b=f[i>>2]|0;e=h-b|0;a=f[B>>2]|0;g=(f[q>>2]|0)-a|0;e:do if((e|0)==(g|0))while(1){if((b|0)==(h|0)){C=103;break d}if((f[b>>2]|0)!=(f[a>>2]|0))break e;a=a+4|0;b=b+4|0}while(0);if(e>>>0>=g>>>0){C=60;break c}x=0;ia(109,i|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}o=f[i+52>>2]|0;m=f[i+48>>2]|0;while(1){if((m|0)==(o|0))break;h=f[m>>2]|0;f[w>>2]=h;f[z>>2]=h;l=HH(z,4)|0;g=f[r>>2]|0;k=(g|0)==0;f:do if(!k){i=g+-1|0;j=(i&g|0)==0;if(!j)if(l>>>0>>0)b=l;else b=(l>>>0)%(g>>>0)|0;else b=i&l;a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a)C=81;else do{a=f[a>>2]|0;if(!a){C=81;break f}e=f[a+4>>2]|0;if((e|0)!=(l|0)){do if(j)e=e&i;else{if(e>>>0>>0)break;e=(e>>>0)%(g>>>0)|0}while(0);if((e|0)!=(b|0)){C=81;break f}}}while((f[a+8>>2]|0)!=(h|0))}else{b=0;C=81}while(0);if((C|0)==81){C=0;x=0;wa(155,A|0,D|0,l|0,w|0);j=x;x=0;if(j&1){C=101;break c}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;j=~~+W(+(c/d))>>>0;x=0;ua(3139,D|0,(k>>>0>>0?j:k)|0);k=x;x=0;if(k&1){C=88;break c}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l;break}g=a;b=(l>>>0)%(a>>>0)|0}while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;do if(!a){e=f[A>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(!a)break;a=f[a+4>>2]|0;b=g+-1|0;do if(!(b&g))a=a&b;else{if(a>>>0>>0)break;a=(a>>>0)%(g>>>0)|0}while(0);f[(f[D>>2]|0)+(a<<2)>>2]=e}else{l=f[A>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=l}while(0);f[s>>2]=(f[s>>2]|0)+1}m=m+4|0}uSa(B)}else C=103;while(0);if((C|0)==103){C=0;uSa(B)}}if((C|0)==47){a=Ia()|0;C=49}else if((C|0)==51){x=0;wa(71,115622,72545,188,115662);x=0;C=48}else if((C|0)==60){x=0;wa(71,115675,72545,194,115662);x=0;C=48}else if((C|0)==88){a=Ia()|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)ubb(b);C=102}else if((C|0)==101){a=Ia()|0;C=102}else if((C|0)==105){NQa(D);u=y;return}if((C|0)==48){a=Ia()|0;C=49}uSa(B)}else if((C|0)==27){a=Ia()|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)ubb(b);C=42}else if((C|0)==41){a=Ia()|0;C=42}else if((C|0)==43)a=Ia()|0;NQa(D);Ua(a|0)}function Af(a){a=a|0;var b=0,c=0.0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;y=u;u=u+64|0;z=y+48|0;A=y+36|0;D=y+16|0;B=y+4|0;w=y;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;o=f[a+44>>2]|0;p=a+120|0;r=D+4|0;s=D+12|0;t=D+16|0;v=D+8|0;m=f[a+40>>2]|0;a:while(1){if((m|0)==(o|0)){C=3;break}b=f[m>>2]|0;f[z>>2]=b;a=b;if(Uz(p,z)|0){f[A>>2]=b;f[z>>2]=b;l=HH(z,4)|0;j=f[r>>2]|0;k=(j|0)==0;b:do if(!k){h=j+-1|0;i=(h&j|0)==0;if(!i)if(l>>>0>>0)b=l;else b=(l>>>0)%(j>>>0)|0;else b=h&l;e=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!e)C=20;else do{e=f[e>>2]|0;if(!e){C=20;break b}g=f[e+4>>2]|0;if((g|0)!=(l|0)){if(!i){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&h;if((g|0)!=(b|0)){C=20;break b}}}while((f[e+8>>2]|0)!=(a|0))}else{b=0;C=20}while(0);if((C|0)==20){C=0;x=0;wa(89,z|0,D|0,l|0,A|0);q=x;x=0;if(q&1){C=41;break}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;k=~~+W(+(c/d))>>>0;x=0;ua(586,D|0,(q>>>0>>0?k:q)|0);q=x;x=0;if(q&1){C=27;break a}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l}else{g=a;b=(l>>>0)%(a>>>0)|0}}else g=j;while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a){e=f[z>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(a|0){a=f[a+4>>2]|0;b=g+-1|0;if(b&g){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&b;f[(f[D>>2]|0)+(a<<2)>>2]=e}}else{q=f[z>>2]|0;f[q>>2]=f[a>>2];f[a>>2]=q}f[s>>2]=(f[s>>2]|0)+1;a=f[m>>2]|0}x=0;ua(587,a+24|0,a|0);q=x;x=0;if(q&1){C=43;break}}m=m+4|0}if((C|0)==3){p=D+8|0;q=B+4|0;c:while(1){if(!(f[s>>2]|0)){C=105;break}a=f[p>>2]|0;i=f[a+8>>2]|0;x4(D,a);TYa(B);a=i+12|0;x=0;b=ja(59,i+36|0,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break}d:do if(b){if(((f[i+16>>2]|0)-(f[a>>2]|0)|0)>>>0>=((f[q>>2]|0)-(f[B>>2]|0)|0)>>>0){C=51;break c}x=0;ia(109,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}x=0;ua(587,i+24|0,B|0);o=x;x=0;if(o&1){C=47;break c}h=f[i+4>>2]|0;b=f[i>>2]|0;e=h-b|0;a=f[B>>2]|0;g=(f[q>>2]|0)-a|0;e:do if((e|0)==(g|0))while(1){if((b|0)==(h|0)){C=103;break d}if((f[b>>2]|0)!=(f[a>>2]|0))break e;a=a+4|0;b=b+4|0}while(0);if(e>>>0>=g>>>0){C=60;break c}x=0;ia(109,i|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}o=f[i+52>>2]|0;m=f[i+48>>2]|0;while(1){if((m|0)==(o|0))break;h=f[m>>2]|0;f[w>>2]=h;f[z>>2]=h;l=HH(z,4)|0;g=f[r>>2]|0;k=(g|0)==0;f:do if(!k){i=g+-1|0;j=(i&g|0)==0;if(!j)if(l>>>0>>0)b=l;else b=(l>>>0)%(g>>>0)|0;else b=i&l;a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a)C=81;else do{a=f[a>>2]|0;if(!a){C=81;break f}e=f[a+4>>2]|0;if((e|0)!=(l|0)){do if(j)e=e&i;else{if(e>>>0>>0)break;e=(e>>>0)%(g>>>0)|0}while(0);if((e|0)!=(b|0)){C=81;break f}}}while((f[a+8>>2]|0)!=(h|0))}else{b=0;C=81}while(0);if((C|0)==81){C=0;x=0;wa(88,A|0,D|0,l|0,w|0);j=x;x=0;if(j&1){C=101;break c}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;j=~~+W(+(c/d))>>>0;x=0;ua(586,D|0,(k>>>0>>0?j:k)|0);k=x;x=0;if(k&1){C=88;break c}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l;break}g=a;b=(l>>>0)%(a>>>0)|0}while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;do if(!a){e=f[A>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(!a)break;a=f[a+4>>2]|0;b=g+-1|0;do if(!(b&g))a=a&b;else{if(a>>>0>>0)break;a=(a>>>0)%(g>>>0)|0}while(0);f[(f[D>>2]|0)+(a<<2)>>2]=e}else{l=f[A>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=l}while(0);f[s>>2]=(f[s>>2]|0)+1}m=m+4|0}uSa(B)}else C=103;while(0);if((C|0)==103){C=0;uSa(B)}}if((C|0)==47){a=Ia()|0;C=49}else if((C|0)==51){x=0;wa(71,115622,72545,188,115662);x=0;C=48}else if((C|0)==60){x=0;wa(71,115675,72545,194,115662);x=0;C=48}else if((C|0)==88){a=Ia()|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)ubb(b);C=102}else if((C|0)==101){a=Ia()|0;C=102}else if((C|0)==105){NQa(D);u=y;return}if((C|0)==48){a=Ia()|0;C=49}uSa(B)}else if((C|0)==27){a=Ia()|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)ubb(b);C=42}else if((C|0)==41){a=Ia()|0;C=42}else if((C|0)==43)a=Ia()|0;NQa(D);Ua(a|0)}function Bf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+64|0;m=l+40|0;k=l+24|0;n=l+12|0;i=l;a:do if(((c-a|0)>3?(b[a>>0]|0)==68:0)?(b[a+1>>0]|0)==118:0){e=a+2|0;h=b[e>>0]|0;do if((h+-49&255)<9){g=QX(e,c)|0;if((g|0)==(c|0))break a;if((b[g>>0]|0)!=95)break a;j=g-e|0;h=g+1|0;if((h|0)==(c|0))break a;if((b[h>>0]|0)==112){a=g+2|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;nW(n,e,j);x=0;ja(101,n|0,0,123325)|0;c=x;x=0;if(c&1)a=Ia()|0;else{f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];e=0;while(1){if((e|0)==3)break;f[n+(e<<2)>>2]=0;e=e+1|0}x=0;ia(215,k|0,123323)|0;c=x;x=0;do if(c&1)a=Ia()|0;else{f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}NY(m,i);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,m|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(m);HTa(i);break}}else{yY(g,m);f[e>>2]=(f[e>>2]|0)+24}JJa(m);HTa(i);HTa(k);HTa(n);break a}while(0);HTa(k)}HTa(n);break}else{i=Cc(h,c,d)|0;if((i|0)==(h|0))break a;g=d+4|0;if((f[d>>2]|0)==(f[g>>2]|0))break a;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;nW(n,e,j);x=0;ja(101,n|0,0,123314)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,k|0,123323)|0;d=x;x=0;do if(!(d&1)){f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}d=b[m+11>>0]|0;c=d<<24>>24<0;x=0;ja(97,(f[g>>2]|0)+-24|0,(c?f[m>>2]|0:m)|0,(c?f[m+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(m);break}else{HTa(m);HTa(k);HTa(n);a=i;break a}}else a=Ia()|0;while(0);HTa(k)}HTa(n);break}}else{f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[m+(g<<2)>>2]=0;g=g+1|0}do if(h<<24>>24!=95){x=0;i=ja(105,e|0,c|0,d|0)|0;h=x;x=0;if(h&1){a=Ia()|0;g=84;break}if((i|0)!=(e|0)){h=d+4|0;e=f[h>>2]|0;if((f[d>>2]|0)==(e|0))g=83;else{x=0;ua(3194,k|0,e+-24|0);g=x;x=0;if(g&1){a=Ia()|0;g=84;break}e=m+11|0;if((b[e>>0]|0)<0){T0a(f[m>>2]|0,0);f[m+4>>2]=0}else{T0a(m,0);b[e>>0]=0}wv(m);f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}HTa(k);g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;JJa(g+(o*24|0)|0);e=o}f[h>>2]=g+-24;e=i;g=63}}else g=63}else g=63;while(0);b:do if((g|0)==63){c:do if(((e|0)!=(c|0)?(b[e>>0]|0)==95:0)?(j=e+1|0,(j|0)!=(c|0)):0){x=0;g=ja(100,j|0,c|0,d|0)|0;o=x;x=0;if(o&1){a=Ia()|0;g=84;break b}if((g|0)!=(j|0)){e=d+4|0;if((f[d>>2]|0)==(f[e>>2]|0)){g=83;break b}x=0;va(185,n|0,123314,m|0);o=x;x=0;if(o&1)a=Ia()|0;else{x=0;ia(215,n|0,123323)|0;o=x;x=0;do if(!(o&1)){f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}o=b[k+11>>0]|0;d=o<<24>>24<0;x=0;ja(97,(f[e>>2]|0)+-24|0,(d?f[k>>2]|0:k)|0,(d?f[k+4>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){a=Ia()|0;HTa(k);break}else{HTa(k);HTa(n);a=g;break c}}else a=Ia()|0;while(0);HTa(n)}g=84;break b}}while(0);HTa(m);break a}while(0);if((g|0)==83){HTa(m);break a}else if((g|0)==84){HTa(m);break}}while(0);Ua(a|0)}while(0);u=l;return a|0}function Cf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+48|0;A=z+24|0;w=z+16|0;s=z+4|0;r=z;t=c+4|0;v=f[t>>2]|0;e=f[c>>2]|0;h=v;a:do if(((v-e|0)/12|0)>>>0>=2){i=a+108|0;while(1){if((e|0)==(h|0))break;g=f[e>>2]|0;if(g|0?mfa(i,g)|0:0)break a;if(mfa(i,f[e+4>>2]|0)|0)break a;qna(e);e=e+12|0}f[A>>2]=0;v=A+4|0;f[v>>2]=0;l=A+8|0;f[l>>2]=0;m=s+4|0;n=s+8|0;o=r+4|0;q=0;p=0;b:while(1){j=f[c>>2]|0;i=f[t>>2]|0;e=0;h=j;while(1){if((h|0)==(i|0))break;g=f[h+4>>2]|0;if(!g){i=12;break b}k=q>>>0<(zza(f[h>>2]|0,g)|0)>>>0;e=e|k^1;if(k)h=h+12|0;else break}if(e){i=37;break}x=0;j=ja(88,f[j>>2]|0,f[j+4>>2]|0,q|0)|0;k=x;x=0;if(k&1){i=18;break}f[w>>2]=j;i=f[t>>2]|0;k=j;e=0;h=f[c>>2]|0;while(1){if((h|0)==(i|0))break;x=0;g=ja(88,f[h>>2]|0,f[h+4>>2]|0,q|0)|0;B=x;x=0;if(B&1){i=22;break b}x=0;g=ia(156,j|0,g|0)|0;B=x;x=0;if(B&1){i=22;break b}e=e|g^1;if(g)h=h+12|0;else break}if(e){i=34;break}f[r>>2]=k;f[s>>2]=0;f[m>>2]=0;f[n>>2]=0;x=0;ua(168,s|0,1);B=x;x=0;if(B&1){i=27;break}mda(s,r,o);x=0;e=ia(208,s|0,d|0)|0;B=x;x=0;if(B&1){i=28;break}uSa(s);if(!e){i=34;break}e=f[v>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ua(640,A|0,w|0);B=x;x=0;if(B&1){i=18;break}}else{f[e>>2]=k;f[v>>2]=(f[v>>2]|0)+4}x=0;e=ga(325,j|0)|0;B=x;x=0;if(B&1){i=18;break}q=q+1|0;p=e+p|0}if((i|0)==12){x=0;wa(71,114601,114497,325,114612);x=0;e=Ia()|0}else if((i|0)==18){e=Ia()|0;i=36}else if((i|0)==22){e=Ia()|0;i=36}else if((i|0)==27){e=Ia()|0;uSa(s);i=29}else if((i|0)==28){e=Ia()|0;uSa(s);i=29}else if((i|0)==34)i=37;c:do if((i|0)==29)i=36;else if((i|0)==37){d:do if(p|0){do if(p>>>0<3){h=f[t>>2]|0;e=0;g=f[c>>2]|0;while(1){if((g|0)==(h|0))break;B=q>>>0<((Bbb(f[(f[g+4>>2]|0)+16>>2]|0)|0)+-1|0)>>>0;e=e|B^1;if(B)g=g+12|0;else break}if(!e){e=f[a+44>>2]|0;if((d|0)!=(f[e+-4>>2]|0)){x=0;wa(71,114636,114497,366,114612);x=0;e=Ia()|0;break c}g=f[a+40>>2]|0;e=e-g>>2;if(e>>>0<2)break d;e=o$a(f[g+(e+-2<<2)>>2]|0)|0;if(!e)break d;i=e+12|0;I$a(w,i);GUa(s,i);i=w+4|0;h=f[s>>2]|0;e=f[s+4>>2]|0;while(1){if(!(lTa(f[w>>2]|0,f[i>>2]|0,h,e)|0)){i=53;break}x=0;g=ga(253,w|0)|0;B=x;x=0;if(B&1){i=54;break}if((f[g>>2]|0)==(d|0)){i=51;break}RYa(w)}if((i|0)==51)break;else if((i|0)==53)break d;else if((i|0)==54){e=Ia()|0;break c}}}while(0);j=f[t>>2]|0;h=f[c>>2]|0;e:while(1){if((h|0)==(j|0)){i=57;break}i=h+4|0;x=0;ua(2921,a|0,f[i>>2]|0);B=x;x=0;if(B&1){i=62;break}if(!(Gab(f[h>>2]|0)|0)){x=0;e=ga(218,(f[i>>2]|0)+12|0)|0;B=x;x=0;if(B&1){i=63;break}e=f[e>>2]|0;x=0;ta(507,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=63;break}}else e=0;g=0;while(1){if(g>>>0>=(f[v>>2]|0)-(f[A>>2]|0)>>2>>>0)break;x=0;ta(507,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=69;break e}g=g+1|0}if(!(Gab(f[h>>2]|0)|0)?(x=0,ua(81,(f[i>>2]|0)+12|0,e|0),B=x,x=0,B&1):0){i=63;break}B=f[i>>2]|0;x=0;ua(1873,B|0,f[B+4>>2]|0);B=x;x=0;if(B&1){i=63;break}h=h+12|0}if((i|0)==57){b[a+56>>0]=1;g=f[a+36>>2]|0;Bbb(g)|0;U0a(w,g);x=0;g=ia(99,f[w>>2]|0,0)|0;B=x;x=0;do if(!(B&1)?(y=g+12|0,x=0,ua(81,y|0,d|0),B=x,x=0,!(B&1)):0){e=f[v>>2]|0;while(1){if((f[A>>2]|0)==(e|0))break;x=0;ua(81,y|0,f[e+-4>>2]|0);B=x;x=0;if(B&1){i=78;break}e=(f[v>>2]|0)+-4|0;f[v>>2]=e}if((i|0)==78){e=Ia()|0;break}e=f[d+4>>2]|0;x=0;ta(439,d|0);B=x;x=0;if(!(B&1)?(x=0,ua(1873,g|0,e|0),B=x,x=0,!(B&1)):0){BVa(f[a+16>>2]|0,g)|0;break d}e=Ia()|0}else i=79;while(0);if((i|0)==79)e=Ia()|0;break c}else if((i|0)==62){e=Ia()|0;break c}else if((i|0)==63){e=Ia()|0;break c}else if((i|0)==69){e=Ia()|0;break c}}while(0);uSa(A);break a}while(0);uSa(A);Ua(e|0)}while(0);u=z;return}function Df(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+48|0;A=z+24|0;w=z+16|0;s=z+4|0;r=z;t=c+4|0;v=f[t>>2]|0;e=f[c>>2]|0;h=v;a:do if(((v-e|0)/12|0)>>>0>=2){i=a+108|0;while(1){if((e|0)==(h|0))break;g=f[e>>2]|0;if(g|0?mfa(i,g)|0:0)break a;if(mfa(i,f[e+4>>2]|0)|0)break a;qna(e);e=e+12|0}f[A>>2]=0;v=A+4|0;f[v>>2]=0;l=A+8|0;f[l>>2]=0;m=s+4|0;n=s+8|0;o=r+4|0;q=0;p=0;b:while(1){j=f[c>>2]|0;i=f[t>>2]|0;e=0;h=j;while(1){if((h|0)==(i|0))break;g=f[h+4>>2]|0;if(!g){i=12;break b}k=q>>>0<(zza(f[h>>2]|0,g)|0)>>>0;e=e|k^1;if(k)h=h+12|0;else break}if(e){i=37;break}x=0;j=ja(87,f[j>>2]|0,f[j+4>>2]|0,q|0)|0;k=x;x=0;if(k&1){i=18;break}f[w>>2]=j;i=f[t>>2]|0;k=j;e=0;h=f[c>>2]|0;while(1){if((h|0)==(i|0))break;x=0;g=ja(87,f[h>>2]|0,f[h+4>>2]|0,q|0)|0;B=x;x=0;if(B&1){i=22;break b}x=0;g=ia(156,j|0,g|0)|0;B=x;x=0;if(B&1){i=22;break b}e=e|g^1;if(g)h=h+12|0;else break}if(e){i=34;break}f[r>>2]=k;f[s>>2]=0;f[m>>2]=0;f[n>>2]=0;x=0;ua(168,s|0,1);B=x;x=0;if(B&1){i=27;break}mda(s,r,o);x=0;e=ia(208,s|0,d|0)|0;B=x;x=0;if(B&1){i=28;break}uSa(s);if(!e){i=34;break}e=f[v>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ua(640,A|0,w|0);B=x;x=0;if(B&1){i=18;break}}else{f[e>>2]=k;f[v>>2]=(f[v>>2]|0)+4}x=0;e=ga(325,j|0)|0;B=x;x=0;if(B&1){i=18;break}q=q+1|0;p=e+p|0}if((i|0)==12){x=0;wa(71,114601,114497,325,114612);x=0;e=Ia()|0}else if((i|0)==18){e=Ia()|0;i=36}else if((i|0)==22){e=Ia()|0;i=36}else if((i|0)==27){e=Ia()|0;uSa(s);i=29}else if((i|0)==28){e=Ia()|0;uSa(s);i=29}else if((i|0)==34)i=37;c:do if((i|0)==29)i=36;else if((i|0)==37){d:do if(p|0){do if(p>>>0<3){h=f[t>>2]|0;e=0;g=f[c>>2]|0;while(1){if((g|0)==(h|0))break;B=q>>>0<((Bbb(f[(f[g+4>>2]|0)+16>>2]|0)|0)+-1|0)>>>0;e=e|B^1;if(B)g=g+12|0;else break}if(!e){e=f[a+44>>2]|0;if((d|0)!=(f[e+-4>>2]|0)){x=0;wa(71,114636,114497,366,114612);x=0;e=Ia()|0;break c}g=f[a+40>>2]|0;e=e-g>>2;if(e>>>0<2)break d;e=o$a(f[g+(e+-2<<2)>>2]|0)|0;if(!e)break d;i=e+12|0;I$a(w,i);GUa(s,i);i=w+4|0;h=f[s>>2]|0;e=f[s+4>>2]|0;while(1){if(!(lTa(f[w>>2]|0,f[i>>2]|0,h,e)|0)){i=53;break}x=0;g=ga(253,w|0)|0;B=x;x=0;if(B&1){i=54;break}if((f[g>>2]|0)==(d|0)){i=51;break}RYa(w)}if((i|0)==51)break;else if((i|0)==53)break d;else if((i|0)==54){e=Ia()|0;break c}}}while(0);j=f[t>>2]|0;h=f[c>>2]|0;e:while(1){if((h|0)==(j|0)){i=57;break}i=h+4|0;x=0;ua(2921,a|0,f[i>>2]|0);B=x;x=0;if(B&1){i=62;break}if(!(Gab(f[h>>2]|0)|0)){x=0;e=ga(218,(f[i>>2]|0)+12|0)|0;B=x;x=0;if(B&1){i=63;break}e=f[e>>2]|0;x=0;ta(507,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=63;break}}else e=0;g=0;while(1){if(g>>>0>=(f[v>>2]|0)-(f[A>>2]|0)>>2>>>0)break;x=0;ta(507,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=69;break e}g=g+1|0}if(!(Gab(f[h>>2]|0)|0)?(x=0,ua(81,(f[i>>2]|0)+12|0,e|0),B=x,x=0,B&1):0){i=63;break}B=f[i>>2]|0;x=0;ua(1873,B|0,f[B+4>>2]|0);B=x;x=0;if(B&1){i=63;break}h=h+12|0}if((i|0)==57){b[a+56>>0]=1;e=f[a+36>>2]|0;Bbb(e)|0;U0a(w,e);x=0;e=ia(99,f[w>>2]|0,0)|0;B=x;x=0;do if(!(B&1)?(y=e+12|0,x=0,ua(81,y|0,d|0),B=x,x=0,!(B&1)):0){g=f[v>>2]|0;while(1){if((f[A>>2]|0)==(g|0))break;x=0;ua(81,y|0,f[g+-4>>2]|0);B=x;x=0;if(B&1){i=78;break}g=(f[v>>2]|0)+-4|0;f[v>>2]=g}if((i|0)==78){e=Ia()|0;break}B=f[d+4>>2]|0;LI(d);x=0;ua(1873,e|0,B|0);B=x;x=0;if(B&1){e=Ia()|0;break}else{BVa(f[a+16>>2]|0,e)|0;break d}}else i=79;while(0);if((i|0)==79)e=Ia()|0;break c}else if((i|0)==62){e=Ia()|0;break c}else if((i|0)==63){e=Ia()|0;break c}else if((i|0)==69){e=Ia()|0;break c}}while(0);uSa(A);break a}while(0);uSa(A);Ua(e|0)}while(0);u=z;return}function Ef(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+96|0;o=n+72|0;p=n+48|0;l=n+36|0;h=n+24|0;k=n+12|0;j=n;do if(((((a|0)!=(c|0)?(b[a>>0]|0)==77:0)?(q=a+1|0,e=Cc(q,c,d)|0,(e|0)!=(q|0)):0)?(m=Cc(e,c,d)|0,(m|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){yY(o,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;q=a+-1|0;JJa(c+(q*24|0)|0);a=q}f[i>>2]=c+-24;yY(p,c+-48|0);g=o+12|0;a:do if((b[((b[g+11>>0]|0)<0?f[g>>2]|0:g)>>0]|0)==40){x=0;ia(215,o|0,123276)|0;q=x;x=0;if(q&1)a=Ia()|0;else{f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3194,j|0,p|0);q=x;x=0;if(q&1)a=Ia()|0;else{q=b[j+11>>0]|0;d=q<<24>>24<0;x=0;ja(97,k|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:q&255)|0)|0;q=x;x=0;do if(q&1)a=Ia()|0;else{f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,h|0,124698)|0;q=x;x=0;if(q&1){a=Ia()|0;HTa(h);break}f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}a=f[i>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){T0a(f[e>>2]|0,0);f[a+-20>>2]=0;a=e}else{T0a(e,0);b[c>>0]=0;a=e}wv(e);f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}HTa(l);HTa(h);HTa(j);HTa(k);x=0;ja(101,g|0,0,123274)|0;q=x;x=0;if(q&1){a=Ia()|0;c=81;break a}f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];f[l+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}a=f[i>>2]|0;e=a+-12|0;c=e+11|0;if((b[c>>0]|0)<0){T0a(f[e>>2]|0,0);f[a+-8>>2]=0;a=e}else{T0a(e,0);b[c>>0]=0;a=e}wv(e);f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}HTa(l);c=80;break a}while(0);HTa(j)}HTa(k)}c=81}else{x=0;ia(215,o|0,123308)|0;q=x;x=0;if(q&1)a=Ia()|0;else{f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3194,j|0,p|0);q=x;x=0;if(q&1)a=Ia()|0;else{q=b[j+11>>0]|0;d=q<<24>>24<0;x=0;ja(97,k|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:q&255)|0)|0;q=x;x=0;do if(q&1)a=Ia()|0;else{f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,h|0,124698)|0;q=x;x=0;if(q&1){a=Ia()|0;HTa(h);break}f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}a=f[i>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){T0a(f[e>>2]|0,0);f[a+-20>>2]=0;a=e}else{T0a(e,0);b[c>>0]=0;a=e}wv(e);f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}HTa(l);HTa(h);HTa(j);HTa(k);a=f[i>>2]|0;e=a+-12|0;c=e+11|0;if((b[c>>0]|0)<0){T0a(f[e>>2]|0,0);f[a+-8>>2]=0;a=e}else{T0a(e,0);b[c>>0]=0;a=e}wv(e);f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3){c=80;break a}f[g+(a<<2)>>2]=0;a=a+1|0}}while(0);HTa(j)}HTa(k)}c=81}while(0);if((c|0)==80){JJa(p);JJa(o);a=m;break}else if((c|0)==81){JJa(p);JJa(o);Ua(a|0)}}while(0);u=n;return a|0}function Ff(a){a=a|0;var b=0,c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;F=u;u=u+80|0;G=F+48|0;H=F+36|0;J=F+16|0;I=F+4|0;E=F;f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;f[J+16>>2]=1065353216;A=a+24|0;t=a+28|0;p=f[t>>2]|0;C=J+4|0;q=J+12|0;r=J+16|0;s=J+8|0;o=f[A>>2]|0;a:while(1){if((o|0)==(p|0)){B=3;break}k=f[(f[o>>2]|0)+8>>2]|0;f[H>>2]=k;c=k;b:do if(k|0){if((Zha()|0)>1){x=0;b=ia(62,134008,75840)|0;B=x;x=0;if(B&1){B=9;break a}x=0;b=ia(117,b|0,k|0)|0;B=x;x=0;if(B&1){B=9;break a}x=0;ia(71,b|0,10)|0;B=x;x=0;if(B&1){B=9;break a}}f[G>>2]=c;m=HH(G,4)|0;h=f[C>>2]|0;l=(h|0)==0;c:do if(!l){i=h+-1|0;j=(i&h|0)==0;if(!j)if(m>>>0>>0)c=m;else c=(m>>>0)%(h>>>0)|0;else c=i&m;b=f[(f[J>>2]|0)+(c<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b)break c;g=f[b+4>>2]|0;if((g|0)!=(m|0)){if(!j){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(c|0))break c}if((f[b+8>>2]|0)==(k|0))break b}}else c=0;while(0);x=0;wa(93,G|0,J|0,m|0,H|0);B=x;x=0;if(B&1){B=9;break a}d=+(((f[q>>2]|0)+1|0)>>>0);e=+n[r>>2];do if(l|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;z=~~+W(+(d/e))>>>0;x=0;ua(643,J|0,(B>>>0>>0?z:B)|0);B=x;x=0;if(B&1){B=33;break a}b=f[C>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&m;break}if(m>>>0>>0){h=b;c=m}else{h=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[J>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[G>>2]|0;f[g>>2]=f[s>>2];f[s>>2]=g;f[(f[J>>2]|0)+(c<<2)>>2]=s;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[J>>2]|0)+(b<<2)>>2]=g}}else{B=f[G>>2]|0;f[B>>2]=f[b>>2];f[b>>2]=B}f[q>>2]=(f[q>>2]|0)+1}while(0);o=o+4|0}if((B|0)==3){p=f[t>>2]|0;q=a+4|0;r=a+124|0;s=I+4|0;t=a+88|0;v=a+92|0;w=a+100|0;y=a+104|0;z=a+96|0;o=f[A>>2]|0;d:while(1){if((o|0)==(p|0)){B=47;break}b=f[o>>2]|0;if((b|0)!=(f[q>>2]|0)?(D=f[b+8>>2]|0,D|0):0){f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;f[G+16>>2]=0;gQa(G);x=0;xa(6,I|0,G|0,D|0,f[a>>2]|0,f[r>>2]|0);A=x;x=0;if(A&1){B=53;break}RWa(G);c=f[s>>2]|0;b=f[I>>2]|0;while(1){if((b|0)==(c|0))break;g=f[b>>2]|0;f[E>>2]=g;if(!g){B=56;break}if(!(wA(f[J>>2]|0,f[C>>2]|0,E)|0)){B=56;break}b=b+4|0}if((B|0)==56){B=0;if((Zha()|0)>1){x=0;ia(62,134008,75853)|0;A=x;x=0;if(A&1){B=62;break}x=0;ua(631,f[o>>2]|0,0);A=x;x=0;if(A&1){B=62;break}x=0;b=ia(62,134008,75877)|0;A=x;x=0;if(A&1){B=62;break}x=0;b=ia(117,b|0,g|0)|0;A=x;x=0;if(A&1){B=62;break}x=0;ia(71,b|0,10)|0;A=x;x=0;if(A&1){B=62;break}}i=f[o>>2]|0;f[G>>2]=i;m=HH(G,4)|0;h=f[v>>2]|0;l=(h|0)==0;e:do if(!l){j=h+-1|0;k=(j&h|0)==0;if(!k)if(m>>>0>>0)c=m;else c=(m>>>0)%(h>>>0)|0;else c=j&m;b=f[(f[t>>2]|0)+(c<<2)>>2]|0;if(!b)B=79;else do{b=f[b>>2]|0;if(!b){B=79;break e}g=f[b+4>>2]|0;if((g|0)!=(m|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(c|0)){B=79;break e}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;B=79}while(0);if((B|0)==79){B=0;x=0;wa(91,H|0,t|0,m|0,o|0);A=x;x=0;if(A&1){B=62;break}d=+(((f[w>>2]|0)+1|0)>>>0);e=+n[y>>2];do if(l|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(632,t|0,(A>>>0>>0?l:A)|0);A=x;x=0;if(A&1){B=86;break d}b=f[v>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&m;break}if(m>>>0>>0){h=b;c=m}else{h=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[t>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[H>>2]|0;f[g>>2]=f[z>>2];f[z>>2]=g;f[(f[t>>2]|0)+(c<<2)>>2]=z;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[t>>2]|0)+(b<<2)>>2]=g}}else{A=f[H>>2]|0;f[A>>2]=f[b>>2];f[b>>2]=A}f[w>>2]=(f[w>>2]|0)+1}}uSa(I)}o=o+4|0}if((B|0)==47){NQa(J);u=F;return}else if((B|0)==53){b=Ia()|0;RWa(G)}else if((B|0)==62){b=Ia()|0;B=63}else if((B|0)==86){b=Ia()|0;c=f[H>>2]|0;f[H>>2]=0;if(c|0)ubb(c);B=63}if((B|0)==63)uSa(I)}else if((B|0)==9){b=Ia()|0;B=10}else if((B|0)==33){b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)ubb(c);B=10}NQa(J);Ua(b|0)}function Gf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110662)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);jGa(a,f[c+12>>2]|0);jGa(a,f[c+16>>2]|0);a:do if((f[c+4>>2]|0)==5)dTa(f[a+28>>2]|0);else do switch(f[c+8>>2]|0){case 0:{Ev(f[a+28>>2]|0,106)|0;break a}case 1:{Ev(f[a+28>>2]|0,107)|0;break a}case 2:{Ev(f[a+28>>2]|0,108)|0;break a}case 3:{Ev(f[a+28>>2]|0,109)|0;break a}case 4:{Ev(f[a+28>>2]|0,110)|0;break a}case 5:{Ev(f[a+28>>2]|0,111)|0;break a}case 6:{Ev(f[a+28>>2]|0,112)|0;break a}case 7:{Ev(f[a+28>>2]|0,113)|0;break a}case 8:{Ev(f[a+28>>2]|0,114)|0;break a}case 9:{Ev(f[a+28>>2]|0,115)|0;break a}case 10:{Ev(f[a+28>>2]|0,116)|0;break a}case 11:{Ev(f[a+28>>2]|0,118)|0;break a}case 12:{Ev(f[a+28>>2]|0,117)|0;break a}case 13:{Ev(f[a+28>>2]|0,119)|0;break a}case 14:{Ev(f[a+28>>2]|0,120)|0;break a}case 15:{Ev(f[a+28>>2]|0,70)|0;break a}case 16:{Ev(f[a+28>>2]|0,71)|0;break a}case 17:{Ev(f[a+28>>2]|0,72)|0;break a}case 18:{Ev(f[a+28>>2]|0,73)|0;break a}case 19:{Ev(f[a+28>>2]|0,76)|0;break a}case 20:{Ev(f[a+28>>2]|0,77)|0;break a}case 21:{Ev(f[a+28>>2]|0,74)|0;break a}case 22:{Ev(f[a+28>>2]|0,75)|0;break a}case 23:{Ev(f[a+28>>2]|0,78)|0;break a}case 24:{Ev(f[a+28>>2]|0,79)|0;break a}case 25:{Ev(f[a+28>>2]|0,124)|0;break a}case 26:{Ev(f[a+28>>2]|0,125)|0;break a}case 27:{Ev(f[a+28>>2]|0,126)|0;break a}case 28:{Ev(f[a+28>>2]|0,127)|0;break a}case 29:{Ev(f[a+28>>2]|0,-128)|0;break a}case 30:{Ev(f[a+28>>2]|0,-127)|0;break a}case 31:{Ev(f[a+28>>2]|0,-126)|0;break a}case 32:{Ev(f[a+28>>2]|0,-125)|0;break a}case 33:{Ev(f[a+28>>2]|0,-124)|0;break a}case 34:{Ev(f[a+28>>2]|0,-123)|0;break a}case 35:{Ev(f[a+28>>2]|0,-122)|0;break a}case 36:{Ev(f[a+28>>2]|0,-120)|0;break a}case 37:{Ev(f[a+28>>2]|0,-121)|0;break a}case 38:{Ev(f[a+28>>2]|0,-119)|0;break a}case 39:{Ev(f[a+28>>2]|0,-118)|0;break a}case 40:{Ev(f[a+28>>2]|0,81)|0;break a}case 41:{Ev(f[a+28>>2]|0,82)|0;break a}case 42:{Ev(f[a+28>>2]|0,83)|0;break a}case 43:{Ev(f[a+28>>2]|0,84)|0;break a}case 44:{Ev(f[a+28>>2]|0,87)|0;break a}case 45:{Ev(f[a+28>>2]|0,88)|0;break a}case 46:{Ev(f[a+28>>2]|0,85)|0;break a}case 47:{Ev(f[a+28>>2]|0,86)|0;break a}case 48:{Ev(f[a+28>>2]|0,89)|0;break a}case 49:{Ev(f[a+28>>2]|0,90)|0;break a}case 50:{Ev(f[a+28>>2]|0,-110)|0;break a}case 51:{Ev(f[a+28>>2]|0,-109)|0;break a}case 52:{Ev(f[a+28>>2]|0,-108)|0;break a}case 53:{Ev(f[a+28>>2]|0,-107)|0;break a}case 54:{Ev(f[a+28>>2]|0,-104)|0;break a}case 55:{Ev(f[a+28>>2]|0,-106)|0;break a}case 56:{Ev(f[a+28>>2]|0,-105)|0;break a}case 57:{Ev(f[a+28>>2]|0,91)|0;break a}case 58:{Ev(f[a+28>>2]|0,92)|0;break a}case 59:{Ev(f[a+28>>2]|0,93)|0;break a}case 60:{Ev(f[a+28>>2]|0,95)|0;break a}case 61:{Ev(f[a+28>>2]|0,94)|0;break a}case 62:{Ev(f[a+28>>2]|0,96)|0;break a}case 63:{Ev(f[a+28>>2]|0,-96)|0;break a}case 64:{Ev(f[a+28>>2]|0,-95)|0;break a}case 65:{Ev(f[a+28>>2]|0,-94)|0;break a}case 66:{Ev(f[a+28>>2]|0,-93)|0;break a}case 67:{Ev(f[a+28>>2]|0,-90)|0;break a}case 68:{Ev(f[a+28>>2]|0,-92)|0;break a}case 69:{Ev(f[a+28>>2]|0,-91)|0;break a}case 70:{Ev(f[a+28>>2]|0,97)|0;break a}case 71:{Ev(f[a+28>>2]|0,98)|0;break a}case 72:{Ev(f[a+28>>2]|0,99)|0;break a}case 73:{Ev(f[a+28>>2]|0,101)|0;break a}case 74:{Ev(f[a+28>>2]|0,100)|0;break a}case 75:{Ev(f[a+28>>2]|0,102)|0;break a}default:hb()}while(0);while(0);u=i;return}function Hf(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;p=u;u=u+304|0;j=p+280|0;k=p+268|0;n=p+292|0;m=p;f[a>>2]=c;f[a+4>>2]=c+144;v=a+8|0;f[a+48>>2]=0;w=a+52|0;g=v;h=g+36|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));yUa(w);s=a+64|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[a+80>>2]=1065353216;t=a+84|0;f[t>>2]=0;q=a+88|0;yUa(q);r=a+112|0;Qua(r);x=0;g=ga(294,d|0)|0;h=x;x=0;a:do if(!(h&1)){if(!g){i=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;p=h7a(92257)|0;x=0;va(87,j|0,92257,p|0);p=x;x=0;if(!(p&1)){x=0;ua(261,i|0,j|0);p=x;x=0;if(p&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}g=Ia()|0;HTa(j);if(!h){h=g;break}}else g=Ia()|0;La(i|0);h=g;break}x=0;g=ia(69,d|0,0)|0;j=x;x=0;if(!(j&1)?(x=0,i=ga(295,g|0)|0,j=x,x=0,!(j&1)):0){if(_1a(i,f[33113]|0)|0){i=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;p=h7a(92289)|0;x=0;va(87,k|0,92289,p|0);p=x;x=0;if(!(p&1)){x=0;ua(261,i|0,k|0);p=x;x=0;if(p&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}g=Ia()|0;HTa(k);if(!h){h=g;break}}else g=Ia()|0;La(i|0);h=g;break}x=0;g=ga(294,d|0)|0;k=x;x=0;if(!(k&1)){b:do if((g|0)!=1){x=0;g=ia(69,d|0,1)|0;k=x;x=0;do if(!(k&1)){do if(lRa(g)|0)if(!e)h=2;else{x=0;g=ia(69,d|0,1)|0;k=x;x=0;if(!(k&1)?(x=0,l=ga(295,g|0)|0,k=x,x=0,!(k&1)):0){E1a(n,l);f[e>>2]=f[n>>2];h=2;break}h=Ia()|0;break a}else h=1;while(0);x=0;g=ga(294,d|0)|0;l=x;x=0;if(!(l&1)){if(h>>>0>>0){x=0;g=ia(69,d|0,h|0)|0;l=x;x=0;if(l&1)break;if(u8a(b[g>>0]|0)|0){f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;while(1){x=0;g=ga(294,d|0)|0;o=x;x=0;if(o&1){o=41;break}if(h>>>0>=g>>>0){o=44;break}i=h+1|0;x=0;g=ia(69,d|0,h|0)|0;o=x;x=0;if(o&1){o=42;break}x=0;g=ga(296,g|0)|0;o=x;x=0;if(o&1){o=42;break}h=bV(g)|0;if(h|0?(x=0,va(141,g|0,h|0,n|0),o=x,x=0,o&1):0){o=43;break}h=i}do if((o|0)==41)g=Ia()|0;else if((o|0)==42)g=Ia()|0;else if((o|0)==43)g=Ia()|0;else if((o|0)==44){sv(m,c,n,0);x=0;ta(447,m|0);d=x;x=0;if(d&1){g=Ia()|0;BA(m);break}else{BA(m);uSa(n);break b}}while(0);uSa(n);h=g;break a}}k=a+44|0;f[k>>2]=0;e=h;g=0;while(1){x=0;i=ga(294,d|0)|0;o=x;x=0;if(o&1){o=52;break}if(e>>>0>=i>>>0){o=51;break}x=0;j=ia(69,d|0,e|0)|0;o=x;x=0;if(o&1){o=61;break}x=0;ua(1866,a|0,j|0);o=x;x=0;if(o&1){o=61;break}x=0;ua(1867,a|0,j|0);o=x;x=0;if(o&1){o=61;break}x=0;i=ia(69,j|0,0)|0;o=x;x=0;if(o&1){o=61;break}x=0;i=ga(295,i|0)|0;o=x;x=0;if(o&1){o=61;break}if($1a(i,f[33111]|0)|0){x=0;i=ga(297,j|0)|0;o=x;x=0;if(o&1){o=61;break}g=g+((i^1)&1)|0}e=e+1|0}if((o|0)==51){f[k>>2]=(f[k>>2]|0)-g;while(1){x=0;g=ga(294,d|0)|0;n=x;x=0;if(n&1)break;if(h>>>0>=g>>>0)break b;x=0;g=ia(69,d|0,h|0)|0;n=x;x=0;if(n&1)break;x=0;ua(1868,a|0,g|0);n=x;x=0;if(n&1)break;h=h+1|0}h=Ia()|0;break a}else if((o|0)==52){h=Ia()|0;break a}else if((o|0)==61){h=Ia()|0;break a}}}while(0);h=Ia()|0;break a}while(0);u=p;return}else o=6}else o=6}else o=6;while(0);if((o|0)==6)h=Ia()|0;Foa(r);oEa(q);g=f[t>>2]|0;f[t>>2]=0;if(g|0){LX(g);ubb(g)}NQa(s);oEa(w);uSa(a+32|0);uSa(a+20|0);uSa(v);Ua(h|0)}function If(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=u;u=u+64|0;E=D+44|0;F=D+32|0;G=D+20|0;I=D;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=1065353216;C=b+36|0;f[E>>2]=f[C>>2];b=HH(E,4)|0;A=I+4|0;x=0;wa(155,G|0,I|0,b|0,C|0);C=x;x=0;do if(C&1){b=Ia()|0;H=58}else{B=I+12|0;C=I+16|0;z=~~+W(+(+(((f[B>>2]|0)+1|0)>>>0)/+n[C>>2]))>>>0;x=0;ua(3139,I|0,(z>>>0>1?z:1)|0);z=x;x=0;if(z&1){b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)ubb(c);H=58;break}d=f[A>>2]|0;e=d+-1|0;g=(e&d|0)==0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=e&b;c=f[(f[I>>2]|0)+(b<<2)>>2]|0;if(!c){h=I+8|0;c=f[G>>2]|0;f[c>>2]=f[h>>2];f[h>>2]=c;f[(f[I>>2]|0)+(b<<2)>>2]=h;b=f[c>>2]|0;if(!b){b=G;y=h;z=h;w=h}else{b=f[b+4>>2]|0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=b&e;f[(f[I>>2]|0)+(b<<2)>>2]=c;b=G;y=h;z=h;w=h}}else{w=f[G>>2]|0;f[w>>2]=f[c>>2];f[c>>2]=w;w=I+8|0;b=G;y=w;z=w}p=(f[B>>2]|0)+1|0;f[B>>2]=p;f[b>>2]=0;q=I+8|0;r=a+4|0;s=a+12|0;t=a+16|0;v=a+8|0;b=p;a:while(1){if(!b){H=100;break}l=f[q>>2]|0;m=f[l+8>>2]|0;f[G>>2]=m;x4(I,l);f[E>>2]=m;l=HH(E,4)|0;h=f[r>>2]|0;k=(h|0)==0;b:do if(!k){e=h+-1|0;g=(e&h|0)==0;if(!g)if(l>>>0>>0)c=l;else c=(l>>>0)%(h>>>0)|0;else c=e&l;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)H=35;else do{b=f[b>>2]|0;if(!b){H=35;break b}d=f[b+4>>2]|0;if((d|0)!=(l|0)){if(!g){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;if((d|0)!=(c|0)){H=35;break b}}}while((f[b+8>>2]|0)!=(m|0))}else{c=0;H=35}while(0);if((H|0)==35){H=0;x=0;wa(155,F|0,a|0,l|0,G|0);p=x;x=0;if(p&1){H=59;break}i=+(((f[s>>2]|0)+1|0)>>>0);j=+n[t>>2];do if(k|j*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;o=~~+W(+(i/j))>>>0;x=0;ua(3139,a|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){H=42;break a}b=f[r>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&l;break}if(l>>>0>>0){e=b;c=l}else{e=b;c=(l>>>0)%(b>>>0)|0}}else e=h;while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[F>>2]|0;f[d>>2]=f[v>>2];f[v>>2]=d;f[(f[a>>2]|0)+(c<<2)>>2]=v;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;if(c&e){if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=d}}else{p=f[F>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p}f[s>>2]=(f[s>>2]|0)+1}p=f[m+40>>2]|0;o=f[m+36>>2]|0;while(1){if((o|0)==(p|0))break;b=f[o>>2]|0;f[F>>2]=b;k=b;c:do if(!(Uz(a,F)|0)){f[E>>2]=b;m=HH(E,4)|0;e=f[A>>2]|0;l=(e|0)==0;d:do if(!l){g=e+-1|0;h=(g&e|0)==0;if(!h)if(m>>>0>>0)c=m;else c=(m>>>0)%(e>>>0)|0;else c=g&m;b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b)break d;d=f[b+4>>2]|0;if((d|0)!=(m|0)){do if(h)d=d&g;else{if(d>>>0>>0)break;d=(d>>>0)%(e>>>0)|0}while(0);if((d|0)!=(c|0))break d}if((f[b+8>>2]|0)==(k|0))break c}}else c=0;while(0);x=0;wa(155,E|0,I|0,m|0,F|0);k=x;x=0;if(k&1){H=96;break a}i=+(((f[B>>2]|0)+1|0)>>>0);j=+n[C>>2];do if(l|j*+(e>>>0)>>0<3|(e+-1&e|0)!=0)&1;k=~~+W(+(i/j))>>>0;x=0;ua(3139,I|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){H=84;break a}b=f[A>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&m;break}if(m>>>0>>0){e=b;c=m}else{e=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[E>>2]|0;f[d>>2]=f[y>>2];f[z>>2]=d;f[(f[I>>2]|0)+(c<<2)>>2]=w;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;do if(!(c&e))b=b&c;else{if(b>>>0>>0)break;b=(b>>>0)%(e>>>0)|0}while(0);f[(f[I>>2]|0)+(b<<2)>>2]=d}}else{m=f[E>>2]|0;f[m>>2]=f[b>>2];f[b>>2]=m}f[B>>2]=(f[B>>2]|0)+1}while(0);o=o+4|0}b=f[B>>2]|0}if((H|0)==42){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)ubb(c);H=60}else if((H|0)==59){b=Ia()|0;H=60}else if((H|0)==84){b=Ia()|0;c=f[E>>2]|0;f[E>>2]=0;if(c|0)ubb(c);H=97}else if((H|0)==96){b=Ia()|0;H=97}else if((H|0)==100){NQa(I);u=D;return}}while(0);NQa(I);NQa(a);Ua(b|0)}function Jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=u;u=u+64|0;E=D+44|0;F=D+32|0;G=D+20|0;I=D;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=1065353216;C=b+36|0;f[E>>2]=f[C>>2];b=HH(E,4)|0;A=I+4|0;x=0;wa(88,G|0,I|0,b|0,C|0);C=x;x=0;do if(C&1){b=Ia()|0;H=58}else{B=I+12|0;C=I+16|0;z=~~+W(+(+(((f[B>>2]|0)+1|0)>>>0)/+n[C>>2]))>>>0;x=0;ua(586,I|0,(z>>>0>1?z:1)|0);z=x;x=0;if(z&1){b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)ubb(c);H=58;break}d=f[A>>2]|0;e=d+-1|0;g=(e&d|0)==0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=e&b;c=f[(f[I>>2]|0)+(b<<2)>>2]|0;if(!c){h=I+8|0;c=f[G>>2]|0;f[c>>2]=f[h>>2];f[h>>2]=c;f[(f[I>>2]|0)+(b<<2)>>2]=h;b=f[c>>2]|0;if(!b){b=G;y=h;z=h;w=h}else{b=f[b+4>>2]|0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=b&e;f[(f[I>>2]|0)+(b<<2)>>2]=c;b=G;y=h;z=h;w=h}}else{w=f[G>>2]|0;f[w>>2]=f[c>>2];f[c>>2]=w;w=I+8|0;b=G;y=w;z=w}p=(f[B>>2]|0)+1|0;f[B>>2]=p;f[b>>2]=0;q=I+8|0;r=a+4|0;s=a+12|0;t=a+16|0;v=a+8|0;b=p;a:while(1){if(!b){H=100;break}l=f[q>>2]|0;m=f[l+8>>2]|0;f[G>>2]=m;x4(I,l);f[E>>2]=m;l=HH(E,4)|0;h=f[r>>2]|0;k=(h|0)==0;b:do if(!k){e=h+-1|0;g=(e&h|0)==0;if(!g)if(l>>>0>>0)c=l;else c=(l>>>0)%(h>>>0)|0;else c=e&l;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)H=35;else do{b=f[b>>2]|0;if(!b){H=35;break b}d=f[b+4>>2]|0;if((d|0)!=(l|0)){if(!g){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;if((d|0)!=(c|0)){H=35;break b}}}while((f[b+8>>2]|0)!=(m|0))}else{c=0;H=35}while(0);if((H|0)==35){H=0;x=0;wa(88,F|0,a|0,l|0,G|0);p=x;x=0;if(p&1){H=59;break}i=+(((f[s>>2]|0)+1|0)>>>0);j=+n[t>>2];do if(k|j*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;o=~~+W(+(i/j))>>>0;x=0;ua(586,a|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){H=42;break a}b=f[r>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&l;break}if(l>>>0>>0){e=b;c=l}else{e=b;c=(l>>>0)%(b>>>0)|0}}else e=h;while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[F>>2]|0;f[d>>2]=f[v>>2];f[v>>2]=d;f[(f[a>>2]|0)+(c<<2)>>2]=v;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;if(c&e){if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=d}}else{p=f[F>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p}f[s>>2]=(f[s>>2]|0)+1}p=f[m+40>>2]|0;o=f[m+36>>2]|0;while(1){if((o|0)==(p|0))break;b=f[o>>2]|0;f[F>>2]=b;k=b;c:do if(!(Uz(a,F)|0)){f[E>>2]=b;m=HH(E,4)|0;e=f[A>>2]|0;l=(e|0)==0;d:do if(!l){g=e+-1|0;h=(g&e|0)==0;if(!h)if(m>>>0>>0)c=m;else c=(m>>>0)%(e>>>0)|0;else c=g&m;b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b)break d;d=f[b+4>>2]|0;if((d|0)!=(m|0)){do if(h)d=d&g;else{if(d>>>0>>0)break;d=(d>>>0)%(e>>>0)|0}while(0);if((d|0)!=(c|0))break d}if((f[b+8>>2]|0)==(k|0))break c}}else c=0;while(0);x=0;wa(88,E|0,I|0,m|0,F|0);k=x;x=0;if(k&1){H=96;break a}i=+(((f[B>>2]|0)+1|0)>>>0);j=+n[C>>2];do if(l|j*+(e>>>0)>>0<3|(e+-1&e|0)!=0)&1;k=~~+W(+(i/j))>>>0;x=0;ua(586,I|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){H=84;break a}b=f[A>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&m;break}if(m>>>0>>0){e=b;c=m}else{e=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[E>>2]|0;f[d>>2]=f[y>>2];f[z>>2]=d;f[(f[I>>2]|0)+(c<<2)>>2]=w;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;do if(!(c&e))b=b&c;else{if(b>>>0>>0)break;b=(b>>>0)%(e>>>0)|0}while(0);f[(f[I>>2]|0)+(b<<2)>>2]=d}}else{m=f[E>>2]|0;f[m>>2]=f[b>>2];f[b>>2]=m}f[B>>2]=(f[B>>2]|0)+1}while(0);o=o+4|0}b=f[B>>2]|0}if((H|0)==42){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)ubb(c);H=60}else if((H|0)==59){b=Ia()|0;H=60}else if((H|0)==84){b=Ia()|0;c=f[E>>2]|0;f[E>>2]=0;if(c|0)ubb(c);H=97}else if((H|0)==96){b=Ia()|0;H=97}else if((H|0)==100){NQa(I);u=D;return}}while(0);NQa(I);NQa(a);Ua(b|0)}function Kf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=u;u=u+112|0;E=D+100|0;I=D+88|0;y=D+84|0;B=D+72|0;G=D+48|0;H=D+24|0;F=D;C=D+60|0;z=D+36|0;A=D+12|0;do if(b[a+12>>0]|0){d=yCa(134176,95177)|0;ZXa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[E>>2]|0,134880)|0;w=x;x=0;if(!(w&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,w=x,x=0,!(w&1)):0){JCa(E);Wq(d,g)|0;du(d)|0;break}I=Ia()|0;JCa(E);Ua(I|0)}while(0);v=a+36|0;d=f[v>>2]|0;w=d+c|0;n=E+4|0;o=F+11|0;p=F+4|0;q=a+88|0;r=a+92|0;s=a+76|0;t=a+80|0;a:while(1){if(d>>>0>=w>>>0){e=71;break}k=nq(a)|0;l=nq(a)|0;m=f[v>>2]|0;if((k|0)==1){k=nq(a)|0;yUa(I);j=0;while(1){if(j>>>0>=k>>>0)break;x=0;i=ga(302,a|0)|0;h=x;x=0;if(h&1){e=22;break a}x=0;g=ga(305,a|0)|0;h=x;x=0;if(h&1){e=23;break a}f[y>>2]=g;e=1;c=g;h=g;while(1){x=0;wa(82,E|0,I|0,y|0,y|0);d=x;x=0;if(d&1){e=24;break a}if(b[n>>0]|0)break;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;h=h7a(123565)|0;x=0;va(87,H|0,123565,h|0);h=x;x=0;if(h&1){e=37;break a}x=0;ia(83,H|0,g|0)|0;h=x;x=0;if(h&1){e=38;break a}f[G>>2]=f[H>>2];f[G+4>>2]=f[H+4>>2];f[G+8>>2]=f[H+8>>2];d=0;while(1){if((d|0)==3)break;f[H+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1283,F|0,e|0);h=x;x=0;if(h&1){e=39;break a}h=b[o>>0]|0;c=h<<24>>24<0;x=0;ja(49,G|0,(c?f[F>>2]|0:F)|0,(c?f[p>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){e=40;break a}f[B>>2]=f[G>>2];f[B+4>>2]=f[G+4>>2];f[B+8>>2]=f[G+8>>2];d=0;while(1){if((d|0)==3)break;f[G+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,B|0);h=x;x=0;if(h&1){e=41;break a}h=f[E>>2]|0;f[y>>2]=h;HTa(B);HTa(F);HTa(G);HTa(H);e=e+1|0;c=h}d=f[q>>2]|0;e=(f[r>>2]|0)-d>>2;do if(i>>>0>>0)f[f[d+(i<<2)>>2]>>2]=c;else{d=i-e|0;e=f[s>>2]|0;if(d>>>0<(f[t>>2]|0)-e>>2>>>0){f[f[e+(d<<2)>>2]>>2]=c;break}f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;i=h7a(h)|0;x=0;va(87,E|0,h|0,i|0);i=x;x=0;if(i&1){e=56;break a}x=0;ia(83,E|0,95218)|0;i=x;x=0;if(i&1){e=57;break a}f[C>>2]=f[E>>2];f[C+4>>2]=f[E+4>>2];f[C+8>>2]=f[E+8>>2];d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1869,a|0,C|0);i=x;x=0;if(i&1){e=58;break a}HTa(C);HTa(E)}while(0);j=j+1|0}if((f[v>>2]|0)!=(m+l|0)){f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;m=h7a(95240)|0;x=0;va(87,z|0,95240,m|0);m=x;x=0;if(m&1){e=66;break}x=0;ua(1869,a|0,z|0);m=x;x=0;if(m&1){e=67;break}HTa(z)}MTa(I);d=f[v>>2]|0}else{e=yCa(134176,95190)|0;e=zm(e,f[v>>2]|0)|0;ZXa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[E>>2]|0,134880)|0;k=x;x=0;if(k&1){e=11;break}x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;k=x;x=0;if(k&1){e=11;break}JCa(E);Wq(e,d)|0;du(e)|0;d=m+l|0;f[v>>2]=d}}b:switch(e|0){case 11:{I=Ia()|0;JCa(E);Ua(I|0)}case 22:{d=Ia()|0;e=70;break}case 23:{d=Ia()|0;e=70;break}case 24:{d=Ia()|0;e=62;break}case 37:{d=Ia()|0;e=45;break}case 38:{d=Ia()|0;e=44;break}case 39:{d=Ia()|0;e=43;break}case 40:{d=Ia()|0;e=42;break}case 41:{d=Ia()|0;HTa(B);e=42;break}case 56:{d=Ia()|0;e=60;break}case 57:{d=Ia()|0;e=59;break}case 58:{d=Ia()|0;HTa(C);e=59;break}case 66:{d=Ia()|0;e=70;break}case 67:{d=Ia()|0;HTa(z);e=70;break}case 71:{do if((d|0)!=(w|0)){f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;WZ(A,95277,h7a(95277)|0);x=0;ua(1869,a|0,A|0);I=x;x=0;if(I&1){d=Ia()|0;HTa(A);break b}else{HTa(A);break}}while(0);u=D;return}}if((e|0)==42){HTa(F);e=43}else if((e|0)==59){HTa(E);e=60}if((e|0)==43){HTa(G);e=44}else if((e|0)==60)e=62;if((e|0)==44){HTa(H);e=45}if((e|0)==45)e=62;if((e|0)==62)e=70;if((e|0)==70)MTa(I);Ua(d|0)}function Lf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+64|0;m=o+48|0;i=o+36|0;k=o+24|0;l=o+12|0;j=o;a:do if((c-a|0)>2){switch(b[a>>0]|0){case 84:break;case 71:switch(b[a+1>>0]|0){case 86:{m=a+2|0;e=Pi(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;uoa(g+-24|0,0,125106)|0;a=e;n=71;break a}case 82:{m=a+2|0;e=Pi(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;uoa(g+-24|0,0,125126)|0;a=e;n=71;break a}default:{n=71;break a}}default:{n=71;break a}}e=a+1|0;switch(b[e>>0]|0){case 86:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;uoa(g+-24|0,0,124955)|0;a=e;n=71;break a}case 84:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;uoa(g+-24|0,0,124967)|0;a=e;n=71;break a}case 73:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;uoa(g+-24|0,0,124976)|0;a=e;n=71;break a}case 83:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;uoa(g+-24|0,0,124990)|0;a=e;n=71;break a}case 99:{m=a+2|0;e=dK(m,c)|0;if((e|0)==(m|0)){n=71;break a}h=dK(e,c)|0;if((h|0)==(e|0)){n=71;break a}g=dd(h,c,d)|0;if((g|0)==(h|0)){n=71;break a}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;uoa(e+-24|0,0,125009)|0;a=g;n=71;break a}case 67:{h=a+2|0;e=Cc(h,c,d)|0;if((e|0)==(h|0)){n=71;break a}g=QX(e,c)|0;if((g|0)==(e|0)|(g|0)==(c|0)){n=71;break a}if((b[g>>0]|0)!=95){n=71;break a}g=g+1|0;h=Cc(g,c,d)|0;if((h|0)==(g|0)){n=71;break a}g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(m,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;n=a+-1|0;JJa(e+(n*24|0)|0);a=n}f[g>>2]=e+-24;x=0;ja(101,m|0,0,125036)|0;n=x;x=0;if(n&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,l|0,125061)|0;n=x;x=0;if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3194,j|0,(f[g>>2]|0)+-24|0);n=x;x=0;do if(n&1)a=Ia()|0;else{n=b[j+11>>0]|0;d=n<<24>>24<0;x=0;ja(97,k|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){a=Ia()|0;HTa(j);break}f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;g=a+-24|0;e=g+11|0;if((b[e>>0]|0)<0){T0a(f[g>>2]|0,0);f[a+-20>>2]=0;a=g}else{T0a(g,0);b[e>>0]=0;a=g}wv(g);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}HTa(i);HTa(j);HTa(k);HTa(l);HTa(m);a=h;n=71;break a}while(0);HTa(k)}HTa(l)}HTa(m);Ua(a|0)}default:{g=dK(e,c)|0;do if((g|0)!=(e|0)){e=dd(g,c,d)|0;if((e|0)!=(g|0)){g=f[d+4>>2]|0;if((f[d>>2]|0)!=(g|0)){g=g+-24|0;if((b[a+2>>0]|0)==118){uoa(g,0,125066)|0;g=0;break}else{uoa(g,0,125084)|0;g=0;break}}else{g=1;e=a}}else{g=0;e=a}}else{g=3;e=a}while(0);switch(g&3){case 3:case 0:{a=e;n=71;break a}default:{}}if(!g){a=e;n=71;break a}else break a}}}else n=71;while(0);u=o;return a|0}function Mf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;do if(b[a+33>>0]|0){i=yCa(134176,110775)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}m=Ia()|0;JCa(g);Ua(m|0)}while(0);if(((f[(f[c+20>>2]|0)+4>>2]|0)!=5?(f[(f[c+24>>2]|0)+4>>2]|0)!=5:0)?(j=c+4|0,(f[j>>2]|0)!=5):0){e=a+28|0;Ev(f[e>>2]|0,-2)|0;a:do switch(f[c+8>>2]|0){case 0:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,32)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,33)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,30)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,34)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,35)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,36)|0;k=d;break a}case 8:{Ev(f[e>>2]|0,31)|0;k=d;break a}default:hb()}break}default:hb()}break}case 1:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,39)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,40)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,37)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,41)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,42)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,43)|0;k=d;break a}case 8:{Ev(f[e>>2]|0,38)|0;k=d;break a}default:hb()}break}default:hb()}break}case 2:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,46)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,47)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,44)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,48)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,49)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,50)|0;k=d;break a}case 8:{Ev(f[e>>2]|0,45)|0;k=d;break a}default:hb()}break}default:hb()}break}case 3:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,53)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,54)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,51)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,55)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,56)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,57)|0;k=d;break a}case 8:{Ev(f[e>>2]|0,52)|0;k=d;break a}default:hb()}break}default:hb()}break}case 4:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,60)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,61)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,58)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,62)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,63)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,64)|0;k=d;break a}case 8:{Ev(f[e>>2]|0,59)|0;k=d;break a}default:hb()}break}default:hb()}break}case 5:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,67)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,68)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,65)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[e>>2]|0,69)|0;k=d;break a}case 2:{Ev(f[e>>2]|0,70)|0;k=d;break a}case 4:{Ev(f[e>>2]|0,71)|0;k=d;break a}case 8:{Ev(f[e>>2]|0,66)|0;k=d;break a}default:hb()}break}default:hb()}break}default:hb()}while(0);m=h[k>>0]|0;CX(a,m,m,Bbb(f[c+16>>2]|0)|0)}u=l;return}function Nf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=u;u=u+64|0;D=C+36|0;z=C+49|0;E=C+24|0;B=C+12|0;w=C;A=C+48|0;a:do if((b[c>>0]|0)==77){d=c;c=bV(c)|0;e=77;while(1){if(e<<24>>24==102)break;e=d+1|0;d=e;c=c+-1|0;e=b[e>>0]|0}c=d+c|0;while(1){c=c+-1|0;if((b[c>>0]|0)==125)break a;b[c>>0]=0}}else d=c;while(0);i=cH(d,54556)|0;j=(i|0)!=0;if(j)b[i>>0]=0;h=cH(d,54582)|0;do if(h|0){b[a>>0]=1;c=h;while(1)if((b[c>>0]|0)==123)break;else c=c+-1|0;e=123;while(1){if(e<<24>>24==40)break;e=c+-1|0;c=e;e=b[e>>0]|0}e=40;while(1){g=c+-1|0;if(e<<24>>24==32)break;c=g;e=b[g>>0]|0}e=32;while(1){if(e<<24>>24==102)break;e=c+-1|0;c=e;e=b[e>>0]|0}if(D0(c,54595,9)|0)Ca(54605,51387,233,54661);e=zWa(h,125)|0;if(e>>>0>(c+5|0)>>>0){b[c>>0]=47;b[c+1>>0]=42;b[e+-1>>0]=42;b[e>>0]=47;break}else Ca(54669,51387,235,54661)}while(0);if(j)b[i>>0]=47;do if(b[a+1>>0]|0){v=(~~(+((bV(d)|0)>>>0)*1.25)>>>0)+100|0;t=Kc(v)|0;f[a+36>>2]=t;v=t+v|0;m=f[32962]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;WZ(D,m,h7a(m)|0);m=D+11|0;n=b[m>>0]|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255;o=E+11|0;p=E+4|0;q=a+16|0;r=a+4|0;s=a+8|0;i=a+12|0;j=w+11|0;a=w+4|0;k=B+11|0;l=B+4|0;c=t;h=0;b:while(1){g=c;while(1){c=b[d>>0]|0;if(!(c<<24>>24)){c=80;break b}if((g+100|0)>>>0>=v>>>0){c=34;break b}if(dma(d,54744)|0){c=d+8|0;e=UXa(c,54752)|0;if(!e){c=80;break b}f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}d=e+1|0;if((b[e>>0]|0)!=32){x=0;ia(67,E|0,54705)|0;F=x;x=0;if(F&1){c=53;break b}}else{d=UXa(d,54755)|0;if(!d){c=68;break b}if((b[d>>0]|0)==34){F=d+1|0;d=UXa(F,54755)|0;b[d>>0]=0;x=0;ia(67,E|0,F|0)|0;F=x;x=0;if(F&1){c=49;break b}}else{x=0;ia(67,E|0,54705)|0;F=x;x=0;if(F&1){c=46;break b}}d=d+1|0}b[e>>0]=0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;F=h7a(c)|0;x=0;va(87,B|0,c|0,F|0);F=x;x=0;if(F&1){c=62;break b}if(!(Mr(q,E)|0)){c=f[s>>2]|0;e=(c-(f[r>>2]|0)|0)/12|0;if((f[i>>2]|0)==(c|0)){x=0;ua(90,r|0,E|0);F=x;x=0;if(F&1){c=63;break b}}else{x=0;ua(88,c|0,E|0);F=x;x=0;if(F&1){c=63;break b}f[s>>2]=(f[s>>2]|0)+12}x=0;c=ia(68,q|0,E|0)|0;F=x;x=0;if(F&1){c=63;break b}f[c>>2]=e}x=0;c=ia(68,q|0,E|0)|0;F=x;x=0;if(F&1){c=69;break b}x=0;ua(91,w|0,f[c>>2]|0);F=x;x=0;if(F&1){c=69;break b}l7a(g,(b[m>>0]|0)<0?f[D>>2]|0:D)|0;F=g+n|0;c=F+1|0;b[F>>0]=40;l7a(c,(b[j>>0]|0)<0?f[w>>2]|0:w)|0;F=b[j>>0]|0;F=c+(F<<24>>24<0?f[a>>2]|0:F&255)|0;c=F+1|0;b[F>>0]=44;l7a(c,(b[k>>0]|0)<0?f[B>>2]|0:B)|0;F=b[k>>0]|0;F=c+(F<<24>>24<0?f[l>>2]|0:F&255)|0;c=F+1|0;b[F>>0]=41;b[c>>0]=59;HTa(w);HTa(B);HTa(E)}else{if(!h){if(dma(d,54758)|0)break;if(dma(d,54763)|0)break}b[g>>0]=c;c=g;d=d+1|0}g=c+1|0}b[g>>0]=b[d>>0]|0;b[g+1>>0]=b[d+1>>0]|0;b[g+2>>0]=b[d+2>>0]|0;b[g+3>>0]=b[d+3>>0]|0;b[g+4>>0]=b[d+4>>0]|0;c=g+5|0;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;F=h7a(54768)|0;x=0;va(87,E|0,54768,F|0);F=x;x=0;if(F&1){c=78;break}l7a(c,(b[o>>0]|0)<0?f[E>>2]|0:E)|0;h=b[o>>0]|0;c=c+(h<<24>>24<0?f[p>>2]|0:h&255)|0;HTa(E);h=1;d=d+5|0}if((c|0)==34){x=0;sa(3);F=x;x=0;if(!(F&1)){x=0;ia(52,z|0,54715)|0;F=x;x=0;if(F&1){Ia()|0;gCa()}else gCa()}else c=37}else if((c|0)==46){d=Ia()|0;c=72}else if((c|0)==49){d=Ia()|0;c=72}else if((c|0)==53){d=Ia()|0;c=72}else if((c|0)==62){d=Ia()|0;c=71}else if((c|0)==63){d=Ia()|0;c=70}else if((c|0)==68){HTa(E);c=80}else if((c|0)==69){d=Ia()|0;c=70}else if((c|0)==78)y=Ia()|0;if((c|0)==70){HTa(B);c=71}else if((c|0)==80){if(g>>>0>>0){b[g>>0]=0;HTa(D);d=t;break}x=0;sa(3);F=x;x=0;if(!(F&1)){x=0;ia(52,A|0,54715)|0;F=x;x=0;if(F&1){Ia()|0;gCa()}else gCa()}else c=37}if((c|0)==37)y=Ia()|0;else if((c|0)==71)c=72;if((c|0)==72){HTa(E);y=d}HTa(D);Ua(y|0)}while(0);u=C;return d|0}function Of(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110662)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);a:do if((f[c+4>>2]|0)!=5)do switch(f[c+8>>2]|0){case 0:{Ev(f[a+28>>2]|0,106)|0;break a}case 1:{Ev(f[a+28>>2]|0,107)|0;break a}case 2:{Ev(f[a+28>>2]|0,108)|0;break a}case 3:{Ev(f[a+28>>2]|0,109)|0;break a}case 4:{Ev(f[a+28>>2]|0,110)|0;break a}case 5:{Ev(f[a+28>>2]|0,111)|0;break a}case 6:{Ev(f[a+28>>2]|0,112)|0;break a}case 7:{Ev(f[a+28>>2]|0,113)|0;break a}case 8:{Ev(f[a+28>>2]|0,114)|0;break a}case 9:{Ev(f[a+28>>2]|0,115)|0;break a}case 10:{Ev(f[a+28>>2]|0,116)|0;break a}case 11:{Ev(f[a+28>>2]|0,118)|0;break a}case 12:{Ev(f[a+28>>2]|0,117)|0;break a}case 13:{Ev(f[a+28>>2]|0,119)|0;break a}case 14:{Ev(f[a+28>>2]|0,120)|0;break a}case 15:{Ev(f[a+28>>2]|0,70)|0;break a}case 16:{Ev(f[a+28>>2]|0,71)|0;break a}case 17:{Ev(f[a+28>>2]|0,72)|0;break a}case 18:{Ev(f[a+28>>2]|0,73)|0;break a}case 19:{Ev(f[a+28>>2]|0,76)|0;break a}case 20:{Ev(f[a+28>>2]|0,77)|0;break a}case 21:{Ev(f[a+28>>2]|0,74)|0;break a}case 22:{Ev(f[a+28>>2]|0,75)|0;break a}case 23:{Ev(f[a+28>>2]|0,78)|0;break a}case 24:{Ev(f[a+28>>2]|0,79)|0;break a}case 25:{Ev(f[a+28>>2]|0,124)|0;break a}case 26:{Ev(f[a+28>>2]|0,125)|0;break a}case 27:{Ev(f[a+28>>2]|0,126)|0;break a}case 28:{Ev(f[a+28>>2]|0,127)|0;break a}case 29:{Ev(f[a+28>>2]|0,-128)|0;break a}case 30:{Ev(f[a+28>>2]|0,-127)|0;break a}case 31:{Ev(f[a+28>>2]|0,-126)|0;break a}case 32:{Ev(f[a+28>>2]|0,-125)|0;break a}case 33:{Ev(f[a+28>>2]|0,-124)|0;break a}case 34:{Ev(f[a+28>>2]|0,-123)|0;break a}case 35:{Ev(f[a+28>>2]|0,-122)|0;break a}case 36:{Ev(f[a+28>>2]|0,-120)|0;break a}case 37:{Ev(f[a+28>>2]|0,-121)|0;break a}case 38:{Ev(f[a+28>>2]|0,-119)|0;break a}case 39:{Ev(f[a+28>>2]|0,-118)|0;break a}case 40:{Ev(f[a+28>>2]|0,81)|0;break a}case 41:{Ev(f[a+28>>2]|0,82)|0;break a}case 42:{Ev(f[a+28>>2]|0,83)|0;break a}case 43:{Ev(f[a+28>>2]|0,84)|0;break a}case 44:{Ev(f[a+28>>2]|0,87)|0;break a}case 45:{Ev(f[a+28>>2]|0,88)|0;break a}case 46:{Ev(f[a+28>>2]|0,85)|0;break a}case 47:{Ev(f[a+28>>2]|0,86)|0;break a}case 48:{Ev(f[a+28>>2]|0,89)|0;break a}case 49:{Ev(f[a+28>>2]|0,90)|0;break a}case 50:{Ev(f[a+28>>2]|0,-110)|0;break a}case 51:{Ev(f[a+28>>2]|0,-109)|0;break a}case 52:{Ev(f[a+28>>2]|0,-108)|0;break a}case 53:{Ev(f[a+28>>2]|0,-107)|0;break a}case 54:{Ev(f[a+28>>2]|0,-104)|0;break a}case 55:{Ev(f[a+28>>2]|0,-106)|0;break a}case 56:{Ev(f[a+28>>2]|0,-105)|0;break a}case 57:{Ev(f[a+28>>2]|0,91)|0;break a}case 58:{Ev(f[a+28>>2]|0,92)|0;break a}case 59:{Ev(f[a+28>>2]|0,93)|0;break a}case 60:{Ev(f[a+28>>2]|0,95)|0;break a}case 61:{Ev(f[a+28>>2]|0,94)|0;break a}case 62:{Ev(f[a+28>>2]|0,96)|0;break a}case 63:{Ev(f[a+28>>2]|0,-96)|0;break a}case 64:{Ev(f[a+28>>2]|0,-95)|0;break a}case 65:{Ev(f[a+28>>2]|0,-94)|0;break a}case 66:{Ev(f[a+28>>2]|0,-93)|0;break a}case 67:{Ev(f[a+28>>2]|0,-90)|0;break a}case 68:{Ev(f[a+28>>2]|0,-92)|0;break a}case 69:{Ev(f[a+28>>2]|0,-91)|0;break a}case 70:{Ev(f[a+28>>2]|0,97)|0;break a}case 71:{Ev(f[a+28>>2]|0,98)|0;break a}case 72:{Ev(f[a+28>>2]|0,99)|0;break a}case 73:{Ev(f[a+28>>2]|0,101)|0;break a}case 74:{Ev(f[a+28>>2]|0,100)|0;break a}case 75:{Ev(f[a+28>>2]|0,102)|0;break a}default:hb()}while(0);while(0);u=i;return}function Pf(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+160|0;E=F+156|0;v=F+8|0;g=F+152|0;y=F+84|0;z=F+16|0;A=F+4|0;B=F+12|0;C=F;D=a+64|0;w=f[D>>2]|0;do if((f[w+40>>2]|0)!=(f[w+36>>2]|0)){w=a+72|0;do if(b[w>>0]|0){c=yCa(134176,87678)|0;ZXa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[E>>2]|0,134880)|0;t=x;x=0;if(!(t&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,t=x,x=0,!(t&1)):0){JCa(E);Wq(c,e)|0;du(c)|0;break}F=Ia()|0;JCa(E);Ua(F|0)}while(0);t=A$(a,10)|0;r=f[D>>2]|0;r=(f[r+40>>2]|0)-(f[r+36>>2]|0)>>2;s=a+68|0;m=f[s>>2]|0;f4a(g,r);Yr(m,f[g>>2]|0)|0;m=a+132|0;n=a+136|0;o=a+76|0;p=a+4|0;q=a+8|0;l=0;a:while(1){if(l>>>0>=r>>>0){c=9;break}j=(f[n>>2]|0)-(f[m>>2]|0)>>3;if(b[w>>0]|0){c=yCa(134176,87696)|0;d=f[s>>2]|0;d=zm(c,(f[d+4>>2]|0)-(f[d>>2]|0)|0)|0;ZXa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;k=x;x=0;if(k&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;k=x;x=0;if(k&1){c=13;break}JCa(E);Wq(d,c)|0;du(d)|0}i=Loa(a)|0;g=f[s>>2]|0;g=(f[g+4>>2]|0)-(f[g>>2]|0)|0;k=f[(f[(f[D>>2]|0)+36>>2]|0)+(l<<2)>>2]|0;if(b[w>>0]|0){d=yCa(134176,87709)|0;d=wfa(d,f[k>>2]|0)|0;ZXa(E,d+(f[(f[d>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=18;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=18;break}JCa(E);Wq(d,c)|0;du(d)|0}if((f[k+40>>2]|0)!=0?(f[o>>2]|0)==0:0){if(!(b[w>>0]|0))c=0;else{d=yCa(134176,87717)|0;ZXa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=25;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=25;break}JCa(E);Wq(d,c)|0;du(d)|0;c=b[w>>0]|0}Vl(y,k,a,f[s>>2]|0,c<<24>>24!=0);xfa(y)}else{if(!(b[w>>0]|0))c=0;else{d=yCa(134176,87732)|0;ZXa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=31;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=31;break}JCa(E);Wq(d,c)|0;du(d)|0;c=b[w>>0]|0}nK(z,k,a,f[s>>2]|0,(f[o>>2]|0)!=0,c<<24>>24!=0);xfa(z)}c=f[s>>2]|0;e=(f[c+4>>2]|0)-g-(f[c>>2]|0)|0;f[A>>2]=e;if(b[w>>0]|0){c=yCa(zm(yCa(zm(yCa(134176,87750)|0,e)|0,87762)|0,i)|0,87776)|0;d=f[s>>2]|0;d=zm(c,(f[d+4>>2]|0)-(f[d>>2]|0)|0)|0;ZXa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=37;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=37;break}JCa(E);Wq(d,c)|0;du(d)|0;c=f[s>>2]|0}f4a(B,e);h=sz(c,i,f[B>>2]|0)|0;b:do if((h|0)!=5){if(h>>>0>=5){c=41;break a}c=f[s>>2]|0;d=f[c>>2]|0;if(e){fia(d+i+h|0,d+g|0,e|0)|0;c=f[s>>2]|0}g=5-h|0;gia(c,(f[c+4>>2]|0)-g-(f[c>>2]|0)|0);if(f[o>>2]|0){e=f[m>>2]|0;d=(f[n>>2]|0)-e>>3;c=j;while(1){if(c>>>0>=d>>>0)break b;j=e+(c<<3)|0;f[j>>2]=(f[j>>2]|0)-g;c=c+1|0}}}while(0);c=h+i|0;f[C>>2]=c;d=f[p>>2]|0;if(d>>>0<(f[q>>2]|0)>>>0){f[v>>2]=f[k>>2];k=f[A>>2]|0;f[E>>2]=f[v>>2];dJa(d,E,c,k);f[p>>2]=(f[p>>2]|0)+12}else cA(a,k,C,A);l=l+1|0}if((c|0)==9){VA(a,t);break}else if((c|0)==13){F=Ia()|0;JCa(E);Ua(F|0)}else if((c|0)==18){F=Ia()|0;JCa(E);Ua(F|0)}else if((c|0)==25){F=Ia()|0;JCa(E);Ua(F|0)}else if((c|0)==31){F=Ia()|0;JCa(E);Ua(F|0)}else if((c|0)==37){F=Ia()|0;JCa(E);Ua(F|0)}else if((c|0)==41)Ca(87204,87234,250,87794)}while(0);u=F;return}function Qf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;r=v+16|0;t=v+4|0;s=v;f[s>>2]=c;if(!(b[130752]|0)){f[32971]=0;f[32972]=0;f[32973]=0;f[32974]=0;f[32975]=1065353216;Oa(448,131884,w|0)|0;p=130752;f[p>>2]=1;f[p+4>>2]=0}c=yC(f[32971]|0,f[32972]|0,c)|0;a:do if(!c){if(!(b[130760]|0))PWa(130760)|0;pSa(131904);if((b[130768]|0)==0?PWa(130768)|0:0){f[32983]=0;f[32984]=0;f[32985]=0;f[32986]=0;f[32987]=1065353216}g=f[32984]|0;c=f[s>>2]|0;e=yC(f[32983]|0,g,c)|0;b:do if(!e){c:do if(d){k=c;o=g}else{if((b[130776]|0)==0?PWa(130776)|0:0){f[32988]=0;f[32989]=0;f[32990]=0}x=0;ua(96,r|0,s|0);p=x;x=0;d:do if(p&1)c=Ia()|0;else{c=f[32989]|0;do if(c>>>0>=(f[32990]|0)>>>0){x=0;ta(449,r|0);p=x;x=0;if(p&1){c=Ia()|0;e=f[r>>2]|0;f[r>>2]=0;if(!e)break d;HTa(e);ubb(e);break d}else{c=f[r>>2]|0;f[r>>2]=0;if(!c)break;HTa(c);ubb(c);break}}else{f[c>>2]=f[r>>2];f[32989]=c+4;f[r>>2]=0}while(0);c=f[(f[32989]|0)+-4>>2]|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;f[s>>2]=c;k=c;o=f[32984]|0;break c}while(0);break b}while(0);c=k;p=a1a(k)|0;m=(o|0)==0;e:do if(!m){j=o+-1|0;l=(j&o|0)==0;if(!l)if(p>>>0>>0)g=p;else g=(p>>>0)%(o>>>0)|0;else g=j&p;e=f[(f[32983]|0)+(g<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break e;d=f[e+4>>2]|0;if((d|0)!=(p|0)){if(!l){if(d>>>0>=o>>>0)d=(d>>>0)%(o>>>0)|0}else d=d&j;if((d|0)!=(g|0))break e}if(x_a(f[e+8>>2]|0,k)|0){q=65;break b}}}else g=0;while(0);x=0;wa(76,r|0,131932,p|0,s|0);q=x;x=0;if(q&1)q=24;else{h=+(((f[32986]|0)+1|0)>>>0);i=+n[32987];do if(m|i*+(o>>>0)>>0<3|(o+-1&o|0)!=0)&1;o=~~+W(+(h/i))>>>0;x=0;ua(97,131932,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){c=Ia()|0;e=f[r>>2]|0;f[r>>2]=0;if(e|0)ubb(e);q=25;break b}e=f[32984]|0;g=e+-1|0;if(!(g&e)){j=e;g=g&p;break}if(p>>>0>>0){j=e;g=p}else{j=e;g=(p>>>0)%(e>>>0)|0}}else j=o;while(0);e=f[(f[32983]|0)+(g<<2)>>2]|0;if(!e){d=f[r>>2]|0;f[d>>2]=f[32985];f[32985]=d;f[(f[32983]|0)+(g<<2)>>2]=131940;e=f[d>>2]|0;if(!e)e=r;else{e=f[e+4>>2]|0;g=j+-1|0;if(g&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&g;f[(f[32983]|0)+(e<<2)>>2]=d;e=r}}else{q=f[r>>2]|0;f[q>>2]=f[e>>2];f[e>>2]=q;e=r}f[32986]=(f[32986]|0)+1;f[e>>2]=0;q=65}}else{k=f[e+8>>2]|0;f[s>>2]=k;c=k;q=65}while(0);f:do if((q|0)==65){p=a1a(k)|0;j=f[32972]|0;o=(j|0)==0;g:do if(!o){l=j+-1|0;m=(l&j|0)==0;if(!m)if(p>>>0>>0)g=p;else g=(p>>>0)%(j>>>0)|0;else g=l&p;e=f[(f[32971]|0)+(g<<2)>>2]|0;if(!e)q=80;else do{e=f[e>>2]|0;if(!e){q=80;break g}d=f[e+4>>2]|0;if((d|0)!=(p|0)){if(!m){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&l;if((d|0)!=(g|0)){q=80;break g}}}while(!(x_a(f[e+8>>2]|0,k)|0))}else{g=0;q=80}while(0);if((q|0)==80){x=0;wa(76,t|0,131884,p|0,s|0);s=x;x=0;if(s&1){q=24;break}h=+(((f[32974]|0)+1|0)>>>0);i=+n[32975];do if(o|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;r=~~+W(+(h/i))>>>0;x=0;ua(97,131884,(s>>>0>>0?r:s)|0);s=x;x=0;if(s&1){c=Ia()|0;e=f[t>>2]|0;f[t>>2]=0;if(e|0)ubb(e);q=25;break f}e=f[32972]|0;g=e+-1|0;if(!(g&e)){j=e;g=g&p;break}if(p>>>0>>0){j=e;g=p}else{j=e;g=(p>>>0)%(e>>>0)|0}}while(0);e=f[(f[32971]|0)+(g<<2)>>2]|0;if(!e){d=f[t>>2]|0;f[d>>2]=f[32973];f[32973]=d;f[(f[32971]|0)+(g<<2)>>2]=131892;e=f[d>>2]|0;if(!e)e=t;else{e=f[e+4>>2]|0;g=j+-1|0;if(g&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&g;f[(f[32971]|0)+(e<<2)>>2]=d;e=t}}else{s=f[t>>2]|0;f[s>>2]=f[e>>2];f[e>>2]=s;e=t}f[32974]=(f[32974]|0)+1;f[e>>2]=0}hJa(131904);break a}while(0);if((q|0)==24){c=Ia()|0;q=25}hJa(131904);Ua(c|0)}else{c=f[c+8>>2]|0;f[s>>2]=c}while(0);f[a>>2]=c;u=v;return}function Rf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=u;u=u+464|0;D=C+328|0;G=C+136|0;F=C+72|0;E=C+48|0;B=C+16|0;z=C;A=yCa(134008,73097)|0;zma(wfa(A,f[c>>2]|0)|0,10)|0;_D(G);A=Bbb(f[a+36>>2]|0)|0;x=0;va(103,G|0,c|0,A|0);A=x;x=0;do if(A&1)d=4;else{if((Zha()|0)>1?(x=0,ta(461,G|0),A=x,x=0,A&1):0){d=4;break}x=0;ua(630,F|0,c|0);A=x;x=0;if(A&1)a=Ia()|0;else{x=0;ta(462,F|0);A=x;x=0;if(A&1)a=Ia()|0;else{f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;f[E+12>>2]=0;f[E+16>>2]=1065353216;A=a+44|0;y=G+124|0;a:do if(!(b[A>>0]|0)){a=G+128|0;d=61}else{a=G+128|0;q=f[a>>2]|0;r=z+4|0;s=E+4|0;t=E+12|0;v=E+16|0;w=E+8|0;p=f[y>>2]|0;b:while(1){if((p|0)==(q|0)){d=61;break a}m=f[p>>2]|0;f[B>>2]=m;c=m+8|0;d=m;if(f[c>>2]|0){f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;gQa(D);x=0;xa(6,z|0,D|0,f[c>>2]|0,G|0,F|0);o=x;x=0;if(o&1){d=20;break}RWa(D);if((Zha()|0)>1){x=0;c=ia(62,134008,73111)|0;o=x;x=0;if(o&1){d=21;break}x=0;c=ia(78,c|0,(f[r>>2]|0)-(f[z>>2]|0)>>2|0)|0;o=x;x=0;if(o&1){d=21;break}x=0;ia(62,c|0,73131)|0;o=x;x=0;if(o&1){d=21;break}x=0;ua(631,m|0,0);o=x;x=0;if(o&1){d=21;break}}c:do if((f[r>>2]|0)-(f[z>>2]|0)>>2>>>0>1){f[D>>2]=d;o=HH(D,4)|0;g=f[s>>2]|0;l=(g|0)==0;d:do if(l)d=0;else{j=g+-1|0;k=(j&g|0)==0;do if(k)d=j&o;else{if(o>>>0>>0){d=o;break}d=(o>>>0)%(g>>>0)|0}while(0);c=f[(f[E>>2]|0)+(d<<2)>>2]|0;if(!c)break;while(1){c=f[c>>2]|0;if(!c)break d;e=f[c+4>>2]|0;if((e|0)!=(o|0)){do if(k)e=e&j;else{if(e>>>0>>0)break;e=(e>>>0)%(g>>>0)|0}while(0);if((e|0)!=(d|0))break d}if((f[c+8>>2]|0)==(m|0))break c}}while(0);x=0;wa(91,D|0,E|0,o|0,B|0);m=x;x=0;if(m&1){d=21;break b}h=+(((f[t>>2]|0)+1|0)>>>0);i=+n[v>>2];do if(l|i*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;l=~~+W(+(h/i))>>>0;x=0;ua(632,E|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){d=46;break b}c=f[s>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&o;break}if(o>>>0>>0){g=c;d=o;break}g=c;d=(o>>>0)%(c>>>0)|0}while(0);c=f[(f[E>>2]|0)+(d<<2)>>2]|0;do if(!c){e=f[D>>2]|0;f[e>>2]=f[w>>2];f[w>>2]=e;f[(f[E>>2]|0)+(d<<2)>>2]=w;c=f[e>>2]|0;if(!c)break;c=f[c+4>>2]|0;d=g+-1|0;do if(!(d&g))c=c&d;else{if(c>>>0>>0)break;c=(c>>>0)%(g>>>0)|0}while(0);f[(f[E>>2]|0)+(c<<2)>>2]=e}else{o=f[D>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}while(0);f[t>>2]=(f[t>>2]|0)+1}while(0);uSa(z)}p=p+4|0}if((d|0)==20){a=Ia()|0;RWa(D)}else if((d|0)==21){a=Ia()|0;d=22}else if((d|0)==46){a=Ia()|0;c=f[D>>2]|0;f[D>>2]=0;if(c|0)ubb(c);d=22}if((d|0)==22)uSa(z)}while(0);if((d|0)==61){e=f[a>>2]|0;g=B+28|0;d=D+20|0;a=f[y>>2]|0;while(1){if((a|0)==(e|0)){d=63;break}c=f[a>>2]|0;if(Z8(c)|0){x=0;xa(7,D|0,G|0,c|0,E|0,F|0);z=x;x=0;if(z&1){d=70;break}if(!(b8a(b[d>>0]|0)|0)){x=0;va(104,B|0,G|0,D|0);z=x;x=0;if(z&1){d=71;break}if(!((b[A>>0]|0)==0|(b[g>>0]|0)==0)){d=69;break}mWa(B)}VY(D)}a=a+4|0}if((d|0)==63){NQa(E);xV(F);nG(G);u=C;return}else if((d|0)==69){x=0;wa(71,73138,73170,674,115764);x=0;a=Ia()|0;mWa(B);d=73}else if((d|0)==70)a=Ia()|0;else if((d|0)==71){a=Ia()|0;d=73}if((d|0)==73)VY(D)}NQa(E)}xV(F)}}while(0);if((d|0)==4)a=Ia()|0;nG(G);Ua(a|0)}function Sf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;q=u;u=u+112|0;v=q;w=q+92|0;t=q+80|0;s=q+48|0;d=q+32|0;r=q+20|0;o=q+16|0;p=q+12|0;m=fQa(b)|0;f[w>>2]=0;n=w+4|0;f[n>>2]=0;e=w+8|0;f[e>>2]=0;c=0;while(1){if(c>>>0>=m>>>0){h=3;break}f[v>>2]=c;g=f[n>>2]|0;if(g>>>0>=(f[e>>2]|0)>>>0){x=0;ua(1507,w|0,v|0);l=x;x=0;if(l&1){h=8;break}}else{f[g>>2]=c;f[n>>2]=g+4}c=c+1|0}do if((h|0)==3){k=f[w>>2]|0;l=f[n>>2]|0;f[v>>2]=a;f[v+4>>2]=b;x=0;va(134,k|0,l|0,v|0);l=x;x=0;if(l&1){c=Ia()|0;break}e=(f[b+12>>2]|0)-(f[b+8>>2]|0)>>2;g=f[w>>2]|0;c=0;while(1){if(c>>>0>=e>>>0)break;if((f[g+(c<<2)>>2]|0)>>>0>>0)c=c+1|0;else{h=14;break}}if((h|0)==14){x=0;wa(71,90037,90071,61,113886);x=0;c=Ia()|0;break}c=0;while(1){if((c|0)==(e|0))break;f[g+(c<<2)>>2]=c;c=c+1|0}g=b+20|0;x=0;ua(1508,v|0,g|0);l=x;x=0;if(l&1)c=Ia()|0;else{h=b+24|0;f[h>>2]=f[g>>2];l=uZa(b)|0;i=a+44|0;j=b+28|0;k=f[v>>2]|0;while(1){c=f[w>>2]|0;if(l>>>0>=(f[n>>2]|0)-c>>2>>>0){h=32;break}f[t>>2]=f[c+(l<<2)>>2];x=0;c=ia(149,i|0,t|0)|0;e=x;x=0;if(e&1){h=26;break}if(!(f[c>>2]|0)){h=29;break}c=uZa(b)|0;c=k+((f[t>>2]|0)-c<<2)|0;e=f[h>>2]|0;if((e|0)==(f[j>>2]|0)){x=0;ua(260,g|0,c|0);e=x;x=0;if(e&1){h=26;break}}else{f[e>>2]=f[c>>2];f[h>>2]=e+4}l=l+1|0}do if((h|0)==26){c=Ia()|0;h=28}else if((h|0)==29){x=0;ua(588,w|0,l|0);l=x;x=0;if(l&1){c=Ia()|0;h=28;break}else{h=32;break}}while(0);if((h|0)!=28)if((h|0)==32){sda(a+44|0);f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;x=0;ua(588,t|0,m|0);m=x;x=0;if(m&1)c=Ia()|0;else{h=f[n>>2]|0;e=0;c=f[w>>2]|0;while(1){if(e>>>0>=h-c>>2>>>0)break;if(FVa(b,e)|0)g=e;else{c=f[w>>2]|0;g=f[c+(e<<2)>>2]|0}f[(f[t>>2]|0)+(g<<2)>>2]=e;e=e+1|0}pya(s,b,t);x=0;ua(1509,s|0,b+36|0);m=x;x=0;if(m&1)c=Ia()|0;else{j=b+44|0;yUa(d);g=b+48|0;h=d+4|0;e=f[j>>2]|0;while(1){if((e|0)==(g|0)){h=50;break}m=e+16|0;x=0;wa(133,d|0,h|0,f[m>>2]|0,m|0);m=x;x=0;if(m&1){h=64;break}c=f[e+4>>2]|0;if(!c)while(1){c=f[e+8>>2]|0;if((f[c>>2]|0)==(e|0))break;else e=c}else while(1){e=f[c>>2]|0;if(!e)break;else c=e}e=c}if((h|0)==50){i=b+56|0;yUa(r);g=b+60|0;h=r+4|0;e=f[i>>2]|0;while(1){if((e|0)==(g|0)){h=60;break}b=e+16|0;x=0;wa(134,r|0,h|0,b|0,b|0);b=x;x=0;if(b&1){h=65;break}c=f[e+4>>2]|0;if(!c)while(1){c=f[e+8>>2]|0;if((f[c>>2]|0)==(e|0))break;else e=c}else while(1){e=f[c>>2]|0;if(!e)break;else c=e}e=c}if((h|0)==60){faa(j);D9(i);g=d+8|0;e=0;while(1){c=f[w>>2]|0;if(e>>>0>=(f[n>>2]|0)-c>>2>>>0){h=62;break}c=c+(e<<2)|0;if((f[c>>2]|0)>>>0<(f[g>>2]|0)>>>0){x=0;c=ia(150,d|0,c|0)|0;b=x;x=0;if(b&1){h=71;break}f[o>>2]=f[c>>2];f[p>>2]=e;x=0;c=ia(151,j|0,p|0)|0;b=x;x=0;if(b&1){h=72;break}f[c>>2]=f[o>>2];x=0;c=ia(152,i|0,o|0)|0;b=x;x=0;if(b&1){h=71;break}f[c>>2]=e}e=e+1|0}if((h|0)==62){nIa(r);yJa(d);I_a(s);uSa(t);uSa(v);uSa(w);u=q;return}else if((h|0)==71)c=Ia()|0;else if((h|0)==72)c=Ia()|0;nIa(r)}else if((h|0)==65){c=Ia()|0;Kna(r)}yJa(d)}else if((h|0)==64){c=Ia()|0;Noa(d)}}I_a(s)}uSa(t)}uSa(v)}}else if((h|0)==8)c=Ia()|0;while(0);uSa(w);Ua(c|0)}function Tf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;B=u;u=u+64|0;C=B+48|0;A=B+36|0;D=B+16|0;c=B+8|0;s=B;Lk(a,f[b+28>>2]|0)|0;a:do if(!(lVa(a)|0)){f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;v=b+8|0;I$a(A,v);GUa(c,v);v=D+4|0;z=D+12|0;t=D+16|0;y=D+8|0;r=A+4|0;q=f[c>>2]|0;p=f[c+4>>2]|0;b:while(1){if(!(lTa(f[A>>2]|0,f[r>>2]|0,q,p)|0)){w=4;break}x=0;c=ga(256,A|0)|0;o=x;x=0;if(o&1){w=74;break}h=f[c>>2]|0;f[s>>2]=h;o=v8a(s)|0;g=f[v>>2]|0;m=(g|0)==0;c:do if(!m){i=g+-1|0;l=(i&g|0)==0;if(!l)if(o>>>0>>0)d=o;else d=(o>>>0)%(g>>>0)|0;else d=i&o;c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c)w=54;else do{c=f[c>>2]|0;if(!c){w=54;break c}e=f[c+4>>2]|0;if((e|0)!=(o|0)){if(!l){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0}else e=e&i;if((e|0)!=(d|0)){w=54;break c}}}while(!($1a(f[c+8>>2]|0,h)|0))}else{d=0;w=54}while(0);if((w|0)==54){w=0;x=0;wa(95,C|0,D|0,o|0,s|0);l=x;x=0;if(l&1){w=74;break}j=+(((f[z>>2]|0)+1|0)>>>0);k=+n[t>>2];do if(m|k*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;l=~~+W(+(j/k))>>>0;x=0;ua(680,D|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){w=61;break b}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&o;break}if(o>>>0>>0){g=c;d=o}else{g=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c){e=f[C>>2]|0;f[e>>2]=f[y>>2];f[y>>2]=e;f[(f[D>>2]|0)+(d<<2)>>2]=y;c=f[e>>2]|0;if(c|0){c=f[c+4>>2]|0;d=g+-1|0;if(d&g){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&d;f[(f[D>>2]|0)+(c<<2)>>2]=e}}else{o=f[C>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}f[z>>2]=(f[z>>2]|0)+1}RYa(A)}d:do if((w|0)==4){l=b+24|0;o=v8a(l)|0;g=f[v>>2]|0;m=(g|0)==0;e:do if(!m){h=g+-1|0;i=(h&g|0)==0;if(!i)if(o>>>0>>0)d=o;else d=(o>>>0)%(g>>>0)|0;else d=h&o;c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c)w=19;else do{c=f[c>>2]|0;if(!c){w=19;break e}e=f[c+4>>2]|0;if((e|0)!=(o|0)){if(!i){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0}else e=e&h;if((e|0)!=(d|0)){w=19;break e}}}while(!($1a(f[c+8>>2]|0,f[l>>2]|0)|0))}else{d=0;w=19}while(0);f:do if((w|0)==19){x=0;wa(95,A|0,D|0,o|0,l|0);s=x;x=0;g:do if(s&1)c=Ia()|0;else{k=+(((f[z>>2]|0)+1|0)>>>0);j=+n[t>>2];do if(m|j*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;s=~~+W(+(k/j))>>>0;x=0;ua(680,D|0,(t>>>0>>0?s:t)|0);t=x;x=0;if(t&1){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)ubb(d);break g}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&o;break}if(o>>>0>>0){g=c;d=o}else{g=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c){e=f[A>>2]|0;f[e>>2]=f[y>>2];f[y>>2]=e;f[(f[D>>2]|0)+(d<<2)>>2]=y;c=f[e>>2]|0;if(!c)c=A;else{c=f[c+4>>2]|0;d=g+-1|0;if(d&g){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&d;f[(f[D>>2]|0)+(c<<2)>>2]=e;c=A}}else{y=f[A>>2]|0;f[y>>2]=f[c>>2];f[c>>2]=y;c=A}f[z>>2]=(f[z>>2]|0)+1;f[c>>2]=0;break f}while(0);break d}while(0);h=a+152|0;i=a+140|0;c=D+8|0;while(1){c=f[c>>2]|0;if(!c){w=78;break}f[C>>2]=f[c+8>>2];x=0;d=ia(120,h|0,C|0)|0;A=x;x=0;if(A&1){w=87;break}e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0)){x=0;ua(681,d|0,i|0);A=x;x=0;if(A&1){w=87;break}}else{x=0;ua(679,g|0,i|0);A=x;x=0;if(A&1){w=87;break}f[e>>2]=(f[e>>2]|0)+12}}if((w|0)==78){NQa(D);break a}else if((w|0)==87){c=Ia()|0;break}}else if((w|0)==61){c=Ia()|0;d=f[C>>2]|0;f[C>>2]=0;if(d|0)ubb(d);w=75}else if((w|0)==74){c=Ia()|0;w=75}while(0);NQa(D);Ua(c|0)}while(0);A_a(a);u=B;return a|0}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;a:while(1){m=b;n=b+-4|0;q=a;b:while(1){l=q;a=m-l|0;c=a>>2;switch(c|0){case 1:case 0:break a;case 2:{o=4;break a}case 3:{o=6;break a}case 4:{o=7;break a}case 5:{o=8;break a}default:{}}if((a|0)<28){o=10;break a}g=q+(((c|0)/2|0)<<2)|0;if((a|0)>3996){a=(c|0)/4|0;a=er(q,q+(a<<2)|0,g,g+(a<<2)|0,n)|0}else a=ps(q,g,n)|0;e=f[q>>2]|0;j=+p[e+16>>3];h=+p[(f[g>>2]|0)+16>>3];if(S2(j,h)|0)c=n;else{c=n;do{c=c+-4|0;if((q|0)==(c|0)){o=17;break b}d=f[c>>2]|0}while(!(S2(+p[d+16>>3],h)|0));f[q>>2]=d;f[c>>2]=e;a=a+1|0}d=q+4|0;c:do if(d>>>0>>0){k=g;while(1){h=+p[(f[k>>2]|0)+16>>3];while(1){e=f[d>>2]|0;g=d+4|0;i=e;if(S2(+p[e+16>>3],h)|0)d=g;else break}do{c=c+-4|0;t=f[c>>2]|0;e=t}while(!(S2(+p[t+16>>3],h)|0));if(d>>>0>c>>>0){c=k;e=d;break c}f[d>>2]=e;f[c>>2]=i;k=(k|0)==(d|0)?c:k;d=g;a=a+1|0}}else{c=g;e=d}while(0);if((e|0)!=(c|0)?(r=f[c>>2]|0,s=f[e>>2]|0,S2(+p[r+16>>3],+p[s+16>>3])|0):0){f[e>>2]=r;f[c>>2]=s;a=a+1|0}if(!a){d=Uk(q,e)|0;a=e+4|0;if(Uk(a,b)|0){o=46;break}if(d){c=2;o=51;break}}t=e;if((t-l|0)>=(m-t|0)){o=50;break}Uf(q,e);q=e+4|0}d:do if((o|0)==17){o=0;a=q+4|0;t=f[n>>2]|0;d=t;if(!(S2(j,+p[t+16>>3])|0)){while(1){if((a|0)==(n|0))break a;c=f[a>>2]|0;if(S2(j,+p[c+16>>3])|0)break;a=a+4|0}f[a>>2]=d;f[n>>2]=c;a=a+4|0}if((a|0)==(n|0))break a;c=n;while(1){h=+p[(f[q>>2]|0)+16>>3];while(1){t=f[a>>2]|0;e=a+4|0;g=t;if(S2(h,+p[t+16>>3])|0)break;else a=e}do{c=c+-4|0;t=f[c>>2]|0;d=t}while(S2(h,+p[t+16>>3])|0);if(a>>>0>=c>>>0){c=4;o=51;break d}f[a>>2]=d;f[c>>2]=g;a=e}}else if((o|0)==46){c=d?1:2;a=q;b=d?b:e;o=51}else if((o|0)==50){o=0;Uf(e+4|0,b);a=q;b=e}while(0);if((o|0)==51){o=0;switch(c&7){case 2:case 4:case 0:break;default:break a}}}if((o|0)==4){b=f[n>>2]|0;a=f[q>>2]|0;if(S2(+p[b+16>>3],+p[a+16>>3])|0){f[q>>2]=b;f[n>>2]=a}}else if((o|0)==6)ps(q,q+4|0,n)|0;else if((o|0)==7)Ht(q,q+4|0,q+8|0,n)|0;else if((o|0)==8)er(q,q+4|0,q+8|0,q+12|0,n)|0;else if((o|0)==10)ht(q,b);return}function Vf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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=u;u=u+176|0;J=I+32|0;z=I+28|0;F=I+24|0;t=I+12|0;G=I;f[z>>2]=b;A=a+16|0;c=f[A>>2]|0;if(!(Bbb(c)|0))d1a(F,81074);else f[F>>2]=f[c>>2];e=b+4|0;i=f[e>>2]|0;Ar(b);j=f[e>>2]|0;a:do if((j|0)==(i|0))H=27;else{b:do if(!((j|0)==5&(o2a(i)|0))){d=J+56|0;k=J+4|0;f[J>>2]=33420;f[d>>2]=33440;Gaa(J+56|0,k);f[J+128>>2]=0;f[J+132>>2]=-1;f[J>>2]=41756;f[d>>2]=41776;Sra(k);f[k>>2]=39940;d=J+36|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}f[J+48>>2]=0;f[J+52>>2]=16;x=0;c=ia(62,J|0,81089)|0;d=x;x=0;do if(((((((((((!(d&1)?(x=0,l=ia(76,c|0,f[F>>2]|0)|0,d=x,x=0,!(d&1)):0)?(x=0,m=ia(62,l|0,81110)|0,l=x,x=0,!(l&1)):0)?(x=0,o=ia(117,m|0,b|0)|0,m=x,x=0,!(m&1)):0)?(x=0,p=ia(62,o|0,81115)|0,o=x,x=0,!(o&1)):0)?(x=0,q=ga(228,i|0)|0,o=x,x=0,!(o&1)):0)?(x=0,r=ia(62,p|0,q|0)|0,q=x,x=0,!(q&1)):0)?(x=0,s=ia(62,r|0,81128)|0,r=x,x=0,!(r&1)):0)?(x=0,v=ga(228,j|0)|0,r=x,x=0,!(r&1)):0)?(x=0,w=ia(62,s|0,v|0)|0,v=x,x=0,!(v&1)):0)?(x=0,ia(62,w|0,87602)|0,w=x,x=0,!(w&1)):0)?(y=f[a+24>>2]|0,x=0,ua(107,t|0,k|0),w=x,x=0,!(w&1)):0){w=Bbb(f[A>>2]|0)|0;x=0;wa(102,y|0,t|0,b|0,w|0);y=x;x=0;if(y&1){c=Ia()|0;HTa(t);break}else{HTa(t);JGa(J);break b}}else H=23;while(0);if((H|0)==23)c=Ia()|0;JGa(J);break a}while(0);f[e>>2]=i;H=27}while(0);c:do if((H|0)==27){p=a+28|0;f[J>>2]=b;o=HH(J,4)|0;l=a+32|0;i=f[l>>2]|0;m=(i|0)==0;d:do if(!m){j=i+-1|0;k=(j&i|0)==0;if(!k)if(o>>>0>>0)d=o;else d=(o>>>0)%(i>>>0)|0;else d=j&o;c=f[(f[p>>2]|0)+(d<<2)>>2]|0;if(!c)H=42;else{do{c=f[c>>2]|0;if(!c){H=42;break d}e=f[c+4>>2]|0;if((e|0)!=(o|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){H=42;break d}}}while((f[c+8>>2]|0)!=(b|0));d=J+56|0;e=J+4|0;f[J>>2]=33420;f[d>>2]=33440;Gaa(J+56|0,e);f[J+128>>2]=0;f[J+132>>2]=-1;f[J>>2]=41756;f[d>>2]=41776;Sra(e);f[e>>2]=39940;d=J+36|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}f[J+48>>2]=0;f[J+52>>2]=16;x=0;c=ia(62,J|0,81141)|0;z=x;x=0;do if(((((!(z&1)?(x=0,B=ia(76,c|0,f[F>>2]|0)|0,F=x,x=0,!(F&1)):0)?(x=0,C=ia(62,B|0,81110)|0,F=x,x=0,!(F&1)):0)?(x=0,D=ia(117,C|0,b|0)|0,F=x,x=0,!(F&1)):0)?(x=0,ia(71,D|0,10)|0,F=x,x=0,!(F&1)):0)?(E=f[a+24>>2]|0,x=0,ua(107,G|0,e|0),a=x,x=0,!(a&1)):0){a=Bbb(f[A>>2]|0)|0;x=0;wa(102,E|0,G|0,b|0,a|0);a=x;x=0;if(a&1){c=Ia()|0;HTa(G);break}else{HTa(G);JGa(J);break d}}else H=71;while(0);if((H|0)==71)c=Ia()|0;JGa(J);break c}}else{d=0;H=42}while(0);if((H|0)==42){R6(J,p,o,z);j=a+40|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+44>>2];do if(m|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;G=~~+W(+(g/h))>>>0;x=0;ua(643,p|0,(H>>>0>>0?G:H)|0);H=x;x=0;if(H&1){c=Ia()|0;d=f[J>>2]|0;f[J>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o}else{i=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[p>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+36|0;e=f[J>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=e;f[(f[p>>2]|0)+(d<<2)>>2]=c;c=f[e>>2]|0;if(!c)c=J;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[p>>2]|0)+(c<<2)>>2]=e;c=J}}else{a=f[J>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;c=J}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}u=I;return}while(0);Ua(c|0)}function Wf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;z=u;u=u+80|0;B=z+68|0;t=z+64|0;E=z+48|0;C=z+28|0;D=z+16|0;A=z;v=z+40|0;w=z+12|0;y=f[a>>2]|0;s=y+108|0;d=AB(s,c)|0;a:do if(!d){mD(E,y,1);q=v8a(c)|0;o=y+112|0;j=f[o>>2]|0;p=(j|0)==0;b:do if(!p){l=j+-1|0;m=(l&j|0)==0;if(!m)if(q>>>0>>0)e=q;else e=(q>>>0)%(j>>>0)|0;else e=l&q;d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d)r=17;else{k=f[c>>2]|0;do{d=f[d>>2]|0;if(!d){r=17;break b}g=f[d+4>>2]|0;if((g|0)!=(q|0)){if(!m){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&l;if((g|0)!=(e|0)){r=17;break b}}}while(!($1a(f[d+8>>2]|0,k)|0))}}else{e=0;r=17}while(0);c:do if((r|0)==17){x=0;xa(9,B|0,s|0,q|0,c|0,E|0);m=x;x=0;d:do if(m&1)d=Ia()|0;else{k=y+120|0;h=+(((f[k>>2]|0)+1|0)>>>0);i=+n[y+124>>2];do if(p|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;m=~~+W(+(h/i))>>>0;x=0;ua(2493,s|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(!(p&1)){d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){j=d;e=e&q;break}if(q>>>0>>0){j=d;e=q;break}j=d;e=(q>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0){if(b[B+8>>0]|0)AWa(e+8|0);ubb(e)}break d}while(0);d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d){d=y+116|0;g=f[B>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[s>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=B;else{d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;f[(f[s>>2]|0)+(d<<2)>>2]=g;d=B}}else{r=f[B>>2]|0;f[r>>2]=f[d>>2];f[d>>2]=r;d=B}f[k>>2]=(f[k>>2]|0)+1;f[d>>2]=0;break c}while(0);HCa(E);break a}while(0);HCa(E);g=AB(s,c)|0;r=41}else{g=d;r=41}while(0);if((r|0)==41){e=f[c>>2]|0;c=Bbb(e)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;WZ(D,c,h7a(c)|0);x=0;ia(83,D|0,108275)|0;c=x;x=0;if(c&1)d=Ia()|0;else{f[C>>2]=f[D>>2];f[C+4>>2]=f[D+4>>2];f[C+8>>2]=f[D+8>>2];d=0;while(1){if((d|0)==3)break;f[D+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,C|0,108286)|0;c=x;x=0;if(c&1)d=Ia()|0;else{f[E>>2]=f[C>>2];f[E+4>>2]=f[C+4>>2];f[E+8>>2]=f[C+8>>2];d=0;while(1){if((d|0)==3)break;f[C+(d<<2)>>2]=0;d=d+1|0}s=f[a+4>>2]|0;c=f[s>>2]|0;f[s>>2]=c+1;x=0;ua(1870,A|0,c|0);c=x;x=0;if(c&1)d=Ia()|0;else{c=b[A+11>>0]|0;s=c<<24>>24<0;x=0;ja(49,E|0,(s?f[A>>2]|0:A)|0,(s?f[A+4>>2]|0:c&255)|0)|0;c=x;x=0;do if(!(c&1)){f[B>>2]=f[E>>2];f[B+4>>2]=f[E+4>>2];f[B+8>>2]=f[E+8>>2];d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,t|0,B|0);c=x;x=0;if(c&1){d=Ia()|0;HTa(B);break}else{HTa(B);HTa(A);HTa(E);HTa(C);HTa(D);A=y+44|0;C=f[A>>2]|0;E=f[t>>2]|0;f[v>>2]=E;D=a+8|0;t=f[f[D>>2]>>2]|0;f[B>>2]=f[v>>2];v=fAa(C,B,t)|0;f[v+4>>2]=1;t=f[A>>2]|0;C=a+12|0;v=Lya(t,LPa(f[C>>2]|0)|0,v)|0;r=f[A>>2]|0;s=LPa(g+12|0)|0;c=f[A>>2]|0;y=LPa(f[a+16>>2]|0)|0;y=Lya(r,s,NKa(f[c>>2]|0,y,1)|0)|0;A=f[A>>2]|0;f[w>>2]=e;C=LPa(f[C>>2]|0)|0;C=NKa(f[A>>2]|0,C,1)|0;f[B>>2]=f[w>>2];C=Sza(t,v,y,Qma(A,B,C,0)|0)|0;f[f[D>>2]>>2]=C;u=z;return E|0}}else d=Ia()|0;while(0);HTa(A)}HTa(E)}HTa(C)}HTa(D)}Ua(d|0);return 0}function Xf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+80|0;t=v+16|0;w=v+4|0;e=v;f[w>>2]=0;r=w+4|0;f[r>>2]=0;s=w+8|0;f[s>>2]=0;g=c+116|0;d=f[g>>2]|0;do if(Iab(d)|0){f[e>>2]=d;x=0;f[t>>2]=f[e>>2];d=ia(56,c|0,t|0)|0;q=x;x=0;if(q&1){d=Ia()|0;break}if(V6a(f[f[d+36>>2]>>2]|0)|0){Kab(g);p=11;break}f[t>>2]=0;d=f[r>>2]|0;if(d>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,g|0);q=x;x=0;if(q&1){d=Ia()|0;break}}else{f[d>>2]=0;f[d+4>>2]=f[g>>2];f[r>>2]=(f[r>>2]|0)+8}p=11}else p=11;while(0);a:do if((p|0)==11){b:do if(b[a+16>>0]|0){e=f[c+40>>2]|0;d=f[c+36>>2]|0;while(1){if((d|0)==(e|0))break b;f[t>>2]=0;a=f[d>>2]|0;g=f[r>>2]|0;if(g>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,a|0);q=x;x=0;if(q&1)break}else{f[g>>2]=0;f[g+4>>2]=f[a>>2];f[r>>2]=(f[r>>2]|0)+8}d=d+4|0}d=Ia()|0;break a}while(0);h=f[c+28>>2]|0;e=0;q=0;g=f[c+24>>2]|0;c:while(1){if((g|0)==(h|0)){p=21;break}d=f[g>>2]|0;a=f[d+8>>2]|0;switch(a|0){case 0:{f[t>>2]=0;d=d+4|0;a=f[r>>2]|0;if(a>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,d|0);p=x;x=0;if(p&1){p=27;break c}}else{f[a>>2]=0;f[a+4>>2]=f[d>>2];f[r>>2]=(f[r>>2]|0)+8}d=q;break}case 3:{f[t>>2]=1;d=d+4|0;a=f[r>>2]|0;if(a>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,d|0);p=x;x=0;if(p&1){p=32;break c}}else{f[a>>2]=1;f[a+4>>2]=f[d>>2];f[r>>2]=(f[r>>2]|0)+8}d=q;break}default:{e=e|(a|0)==2;d=q|(a|0)==1}}q=d;g=g+4|0}if((p|0)==21){k=c+12|0;l=c+16|0;a=f[l>>2]|0;j=0;m=0;d=f[k>>2]|0;while(1){if((d|0)==(a|0))break;o=f[(f[d>>2]|0)+12>>2]|0;j=j|(o|0)==2;m=m|(o|0)==1;d=d+4|0}o=c+76|0;n=c+80|0;i=f[n>>2]|0;a=f[o>>2]|0;d:while(1){if((a|0)==(i|0))break;g=f[a+8>>2]|0;d=f[a+4>>2]|0;while(1){if((d|0)==(g|0))break;f[t>>2]=0;h=f[r>>2]|0;if(h>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,d|0);h=x;x=0;if(h&1){p=47;break d}}else{f[h>>2]=0;f[h+4>>2]=f[d>>2];f[r>>2]=(f[r>>2]|0)+8}d=d+4|0}a=a+16|0}if((p|0)==47){d=Ia()|0;break}x=0;va(137,t|0,c|0,w|0);s=x;x=0;if(s&1)d=Ia()|0;else{r=c+36|0;p=c+40|0;s=BD(f[r>>2]|0,f[p>>2]|0,t)|0;rN(r,s,f[p>>2]|0);p=c+48|0;s=c+52|0;r=kE(f[p>>2]|0,f[s>>2]|0,t)|0;kQ(p,r,f[s>>2]|0);s=YD(f[k>>2]|0,f[l>>2]|0,t)|0;kQ(k,s,f[l>>2]|0);x=0;ta(486,c|0);s=x;x=0;do if(!(s&1)){if(!e?(b[t+52>>0]|0)==0:0){if(j){e=c+100|0;d=f[c+104>>2]|0}else{e=c+100|0;d=f[e>>2]|0;g=c+104|0;a=f[g>>2]|0;while(1){if((a|0)==(d|0))break;s=a+-16|0;I_a(s);a=s}f[g>>2]=d}if((f[e>>2]|0)==(d|0)){b[c+112>>0]=0;b[c+113>>0]=0;x=0;ja(40,c+92|0,0,0)|0;s=x;x=0;if(s&1)break;x=0;ja(40,c+96|0,0,0)|0;s=x;x=0;if(s&1)break;qU(2,c)}}if(!q?(b[t+53>>0]|0)==0:0){if(m)d=f[n>>2]|0;else{d=f[o>>2]|0;e=f[n>>2]|0;while(1){if((e|0)==(d|0))break;s=e+-16|0;I_a(s);e=s}f[n>>2]=d}if((f[o>>2]|0)==(d|0)){b[c+60>>0]=0;b[c+61>>0]=0;x=0;ja(40,c+68|0,0,0)|0;s=x;x=0;if(s&1)break;x=0;ja(40,c+72|0,0,0)|0;s=x;x=0;if(s&1)break;qU(1,c)}}yAa(t);uSa(w);u=v;return}while(0);d=Ia()|0;yAa(t)}break}else if((p|0)==27){d=Ia()|0;break}else if((p|0)==32){d=Ia()|0;break}}while(0);uSa(w);Ua(d|0)}function Yf(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=u;u=u+32|0;F=C+20|0;w=C+16|0;E=C+4|0;y=C;z=a+16|0;A=a+44|0;B=E+4|0;v=a+24|0;c=f[a+12>>2]|0;a:while(1){if((c|0)==(z|0)){D=3;break}b=f[c+16>>2]|0;s=E_a(b)|0;f[w>>2]=s;t=s;if(!s){d=oRa(b)|0;f[E>>2]=d;d=NT(a,E)|0;s=d+4|0;d=f[d>>2]|0;while(1){if((d|0)==(s|0))break;f[y>>2]=f[d+16>>2];r=Wk(A,y)|0;k=f[E>>2]|0;f[F>>2]=k;q=HH(F,4)|0;o=r+4|0;j=f[o>>2]|0;p=(j|0)==0;b:do if(!p){l=j+-1|0;m=(l&j|0)==0;if(!m)if(q>>>0>>0)e=q;else e=(q>>>0)%(j>>>0)|0;else e=l&q;b=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!b)D=64;else do{b=f[b>>2]|0;if(!b){D=64;break b}i=f[b+4>>2]|0;if((i|0)!=(q|0)){if(!m){if(i>>>0>=j>>>0)i=(i>>>0)%(j>>>0)|0}else i=i&l;if((i|0)!=(e|0)){D=64;break b}}}while((f[b+8>>2]|0)!=(k|0))}else{e=0;D=64}while(0);if((D|0)==64){D=0;R6(F,r,q,E);k=r+12|0;g=+(((f[k>>2]|0)+1|0)>>>0);h=+n[r+16>>2];do if(p|h*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;p=~~+W(+(g/h))>>>0;x=0;ua(634,r|0,(t>>>0

>>0?p:t)|0);t=x;x=0;if(t&1){D=70;break a}b=f[o>>2]|0;e=b+-1|0;if(!(e&b)){j=b;e=e&q;break}if(q>>>0>>0){j=b;e=q}else{j=b;e=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!b){b=r+8|0;i=f[F>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=i;f[(f[r>>2]|0)+(e<<2)>>2]=b;b=f[i>>2]|0;if(b|0){b=f[b+4>>2]|0;e=j+-1|0;if(e&j){if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0}else b=b&e;f[(f[r>>2]|0)+(b<<2)>>2]=i}}else{t=f[F>>2]|0;f[t>>2]=f[b>>2];f[b>>2]=t}f[k>>2]=(f[k>>2]|0)+1}b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}}else{nV(E,f[s+12>>2]|0);q=f[B>>2]|0;p=f[E>>2]|0;while(1){if((p|0)==(q|0))break;f[y>>2]=f[p>>2];x=0;r=ia(111,v|0,y|0)|0;o=x;x=0;if(o&1){D=44;break a}f[F>>2]=t;o=HH(F,4)|0;k=r+4|0;l=f[k>>2]|0;m=(l|0)==0;c:do if(!m){i=l+-1|0;j=(i&l|0)==0;if(!j)if(o>>>0>>0)d=o;else d=(o>>>0)%(l>>>0)|0;else d=i&o;b=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!b)D=24;else do{b=f[b>>2]|0;if(!b){D=24;break c}e=f[b+4>>2]|0;if((e|0)!=(o|0)){if(!j){if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0}else e=e&i;if((e|0)!=(d|0)){D=24;break c}}}while((f[b+8>>2]|0)!=(s|0))}else{d=0;D=24}while(0);if((D|0)==24){D=0;x=0;wa(92,F|0,r|0,o|0,w|0);j=x;x=0;if(j&1){D=44;break a}j=r+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[r+16>>2];do if(m|h*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(g/h))>>>0;x=0;ua(633,r|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){D=31;break a}b=f[k>>2]|0;d=b+-1|0;if(!(d&b)){i=b;d=d&o;break}if(o>>>0>>0){i=b;d=o}else{i=b;d=(o>>>0)%(b>>>0)|0}}else i=l;while(0);b=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!b){b=r+8|0;e=f[F>>2]|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[(f[r>>2]|0)+(d<<2)>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;d=i+-1|0;if(d&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&d;f[(f[r>>2]|0)+(b<<2)>>2]=e}}else{r=f[F>>2]|0;f[r>>2]=f[b>>2];f[b>>2]=r}f[j>>2]=(f[j>>2]|0)+1}p=p+4|0}_$a(E)}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((D|0)==3){u=C;return}else if((D|0)==31){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)ubb(c)}else if((D|0)==44)b=Ia()|0;else if((D|0)==70){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)ubb(c);Ua(b|0)}_$a(E);Ua(b|0)}function Zf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;A=u;u=u+48|0;v=A+36|0;y=A+32|0;r=A+16|0;j=A;i=A+28|0;t=A+12|0;U0a(y,c);z=n8(20)|0;sPa(z);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,109744,h7a(109744)|0);x=0;ia(59,j|0,f[b>>2]|0)|0;w=x;x=0;a:do if(w&1){e=Ia()|0;k=21}else{f[r>>2]=f[j>>2];f[r+4>>2]=f[j+4>>2];f[r+8>>2]=f[j+8>>2];e=0;while(1){if((e|0)==3)break;f[j+(e<<2)>>2]=0;e=e+1|0}x=0;ua(83,v|0,r|0);w=x;x=0;if(w&1){e=Ia()|0;HTa(r);k=21;break}g=f[v>>2]|0;f[z>>2]=g;HTa(r);HTa(j);w=n8(24)|0;hPa(w);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,109755,h7a(109755)|0);x=0;ia(59,j|0,f[b>>2]|0)|0;s=x;x=0;do if(s&1)e=Ia()|0;else{f[r>>2]=f[j>>2];f[r+4>>2]=f[j+4>>2];f[r+8>>2]=f[j+8>>2];e=0;while(1){if((e|0)==3)break;f[j+(e<<2)>>2]=0;e=e+1|0}x=0;ua(83,v|0,r|0);s=x;x=0;if(s&1){e=Ia()|0;HTa(r);break}h=f[v>>2]|0;f[w>>2]=h;HTa(r);HTa(j);f[w+4>>2]=f[b+4>>2];f[w+8>>2]=f[b+8>>2];f[w+12>>2]=0;f[w+16>>2]=g;s=n8(88)|0;aX(s);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,109768,h7a(109768)|0);x=0;ia(59,j|0,f[b>>2]|0)|0;q=x;x=0;do if(q&1)e=Ia()|0;else{f[r>>2]=f[j>>2];f[r+4>>2]=f[j+4>>2];f[r+8>>2]=f[j+8>>2];e=0;while(1){if((e|0)==3)break;f[j+(e<<2)>>2]=0;e=e+1|0}x=0;ua(83,v|0,r|0);q=x;x=0;if(q&1){e=Ia()|0;HTa(r);break}f[s>>2]=f[v>>2];HTa(r);HTa(j);f[d>>2]=f[s>>2];e=eQa(c+144|0)|0;f[e+24>>2]=h;f[i>>2]=f[b+16>>2];f[v>>2]=f[i>>2];b=KI(c,v)|0;i=f[b+12>>2]|0;j=e+8|0;k=s+8|0;l=s+12|0;m=z+8|0;n=z+12|0;o=z+16|0;p=s+16|0;d=f[b+8>>2]|0;while(1){if((d|0)==(i|0))break;q=f[d>>2]|0;f[v>>2]=q;do if((q|0)==2){aaa(j,QCa(y,(f[l>>2]|0)-(f[k>>2]|0)>>2)|0);aaa(j,XQ(y,(f[l>>2]|0)-(f[k>>2]|0)>>2)|0);f[r>>2]=1;h=f[n>>2]|0;g=f[o>>2]|0;if(h>>>0>>0){f[h>>2]=1;h=h+4|0;f[n>>2]=h}else{IL(m,r);h=f[n>>2]|0;g=f[o>>2]|0}f[r>>2]=1;if(h>>>0>>0){f[h>>2]=1;f[n>>2]=h+4}else IL(m,r)}else{h=(f[l>>2]|0)-(f[k>>2]|0)>>2;g=f[y>>2]|0;if((q|0)!=3){aaa(j,NKa(g,h,q)|0);g=f[n>>2]|0;if((g|0)==(f[o>>2]|0)){IL(m,v);break}else{f[g>>2]=q;f[n>>2]=g+4;break}}g=NKa(g,h,3)|0;aaa(j,mBa(f[y>>2]|0,43,g)|0);f[r>>2]=4;g=f[n>>2]|0;if(g>>>0<(f[o>>2]|0)>>>0){f[g>>2]=4;f[n>>2]=g+4}else IL(m,r)}while(0);g=f[l>>2]|0;if((g|0)==(f[p>>2]|0))IL(k,v);else{f[g>>2]=q;f[l>>2]=g+4}d=d+4|0}h=b+4|0;g=f[h>>2]|0;switch(g|0){case 2:{f[e+4>>2]=1;KT(a,c);f[t>>2]=f[33164];f[v>>2]=f[t>>2];g=1;e=eL(y,e,ACa(y,v,1)|0)|0;break}case 3:{f[e+4>>2]=4;g=4;e=mBa(f[y>>2]|0,44,e)|0;break}default:f[e+4>>2]=g}f[s+36>>2]=e;f[z+4>>2]=g;f[s+4>>2]=f[h>>2];Hs(c,s);zs(c,z);u=A;return w|0}while(0);HTa(j);break a}while(0);HTa(j)}while(0);if((k|0)==21)HTa(j);Ua(e|0);return 0}function _f(a,b){a=a|0;b=b|0;do switch(b|0){case 0:{yCa(a,73943)|0;break}case 1:{yCa(a,73951)|0;break}case 2:{yCa(a,73959)|0;break}case 3:{yCa(a,73967)|0;break}case 4:{yCa(a,73977)|0;break}case 5:{yCa(a,73987)|0;break}case 6:{yCa(a,73997)|0;break}case 7:{yCa(a,74007)|0;break}case 8:{yCa(a,74015)|0;break}case 9:{yCa(a,74022)|0;break}case 10:{yCa(a,74030)|0;break}case 11:{yCa(a,74038)|0;break}case 12:{yCa(a,74048)|0;break}case 13:{yCa(a,74058)|0;break}case 14:{yCa(a,74067)|0;break}case 15:{yCa(a,74076)|0;break}case 16:{yCa(a,74083)|0;break}case 17:{yCa(a,74090)|0;break}case 18:{yCa(a,74099)|0;break}case 19:{yCa(a,74108)|0;break}case 20:{yCa(a,74117)|0;break}case 21:{yCa(a,74126)|0;break}case 22:{yCa(a,74135)|0;break}case 23:{yCa(a,74144)|0;break}case 24:{yCa(a,74153)|0;break}case 25:{yCa(a,74162)|0;break}case 26:{yCa(a,74170)|0;break}case 27:{yCa(a,74178)|0;break}case 28:{yCa(a,74186)|0;break}case 29:{yCa(a,74196)|0;break}case 30:{yCa(a,74206)|0;break}case 31:{yCa(a,74216)|0;break}case 32:{yCa(a,74226)|0;break}case 33:{yCa(a,74234)|0;break}case 34:{yCa(a,74241)|0;break}case 35:{yCa(a,74249)|0;break}case 36:{yCa(a,74257)|0;break}case 37:{yCa(a,74267)|0;break}case 38:{yCa(a,74277)|0;break}case 39:{yCa(a,74286)|0;break}case 40:{yCa(a,74295)|0;break}case 41:{yCa(a,74302)|0;break}case 42:{yCa(a,74309)|0;break}case 43:{yCa(a,74318)|0;break}case 44:{yCa(a,74327)|0;break}case 45:{yCa(a,74336)|0;break}case 46:{yCa(a,74345)|0;break}case 47:{yCa(a,74354)|0;break}case 48:{yCa(a,74363)|0;break}case 49:{yCa(a,74372)|0;break}case 50:{yCa(a,74381)|0;break}case 51:{yCa(a,74389)|0;break}case 52:{yCa(a,74397)|0;break}case 53:{yCa(a,74405)|0;break}case 54:{yCa(a,74413)|0;break}case 55:{yCa(a,74426)|0;break}case 56:{yCa(a,74434)|0;break}case 57:{yCa(a,74442)|0;break}case 58:{yCa(a,74449)|0;break}case 59:{yCa(a,74456)|0;break}case 60:{yCa(a,74463)|0;break}case 61:{yCa(a,74470)|0;break}case 62:{yCa(a,74477)|0;break}case 63:{yCa(a,74484)|0;break}case 64:{yCa(a,74492)|0;break}case 65:{yCa(a,74500)|0;break}case 66:{yCa(a,74508)|0;break}case 67:{yCa(a,74516)|0;break}case 68:{yCa(a,74529)|0;break}case 69:{yCa(a,74537)|0;break}case 70:{yCa(a,74545)|0;break}case 71:{yCa(a,74552)|0;break}case 72:{yCa(a,74559)|0;break}case 73:{yCa(a,74566)|0;break}case 74:{yCa(a,74573)|0;break}case 75:{yCa(a,74580)|0;break}default:hb()}while(0);return}function $f(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+96|0;r=p+84|0;q=p+72|0;i=p+60|0;k=p+48|0;l=p+36|0;m=p+24|0;n=p+12|0;o=p;g=Bc(a,c,e)|0;a:do if((g|0)!=(a|0)){j=Bc(g,c,e)|0;h=e+4|0;if((j|0)==(g|0)){g=f[h>>2]|0;c=0;while(1){if((c|0)==-1)break;r=c+-1|0;JJa(g+(r*24|0)|0);c=r}f[h>>2]=g+-24;break}c=f[h>>2]|0;if(((c-(f[e>>2]|0)|0)/24|0)>>>0>=2){eY(r,c+-24|0);c=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;e=a+-1|0;JJa(c+(e*24|0)|0);a=e}f[h>>2]=c+-24;x=0;ua(3194,q|0,c+-48|0);e=x;x=0;if(e&1)a=Ia()|0;else{a=f[h>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){T0a(f[e>>2]|0,0);f[a+-20>>2]=0}else{T0a(e,0);b[c>>0]=0}a=h7a(123312)|0;c=d+11|0;h=b[c>>0]|0;g=d+4|0;if((a|0)==((h<<24>>24<0?f[g>>2]|0:h&255)|0)){x=0;a=ja(102,d|0,123312,a|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}if((a|0)==0?(x=0,ua(3193,e|0,40),h=x,x=0,h&1):0)h=17;else h=18}else h=18;b:do if((h|0)==18){x=0;va(185,o|0,123276,q|0);a=x;x=0;if(a&1)a=Ia()|0;else{x=0;ia(215,o|0,123562)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}a=b[c>>0]|0;s=a<<24>>24<0;x=0;ja(97,n|0,(s?f[d>>2]|0:d)|0,(s?f[g>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,m|0,123271)|0;s=x;x=0;if(s&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}s=b[r+11>>0]|0;a=s<<24>>24<0;x=0;ja(97,l|0,(a?f[r>>2]|0:r)|0,(a?f[r+4>>2]|0:s&255)|0)|0;s=x;x=0;if(s&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,k|0,123274)|0;s=x;x=0;do if(s&1)a=Ia()|0;else{f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}s=b[i+11>>0]|0;a=s<<24>>24<0;x=0;ja(97,e|0,(a?f[i>>2]|0:i)|0,(a?f[i+4>>2]|0:s&255)|0)|0;s=x;x=0;if(s&1){a=Ia()|0;HTa(i);break}HTa(i);HTa(k);HTa(l);HTa(m);HTa(n);HTa(o);a=h7a(123312)|0;s=b[c>>0]|0;do if((a|0)==((s<<24>>24<0?f[g>>2]|0:s&255)|0)){x=0;a=ja(102,d|0,123312,a|0)|0;s=x;x=0;if(s&1){s=Ja(0)|0;r2a(s)}if(a|0)break;x=0;ua(3193,e|0,41);s=x;x=0;if(s&1){h=17;break b}}while(0);HTa(q);HTa(r);a=j;break a}while(0);HTa(k)}HTa(l)}HTa(m)}HTa(n)}HTa(o)}}while(0);if((h|0)==17)a=Ia()|0;HTa(q)}HTa(r);Ua(a|0)}}while(0);u=p;return a|0}function ag(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,v=0,w=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;K=u;u=u+96|0;L=K+72|0;k=K+68|0;l=K+64|0;m=K+60|0;N=K+12|0;G=K+56|0;H=K+52|0;I=K+48|0;J=K+44|0;A=K+40|0;B=K+36|0;C=K+4|0;D=K+32|0;E=K+8|0;F=K;q=a+24|0;i=a+28|0;j=f[i>>2]|0;h=f[q>>2]|0;while(1){if((h|0)==(j|0))break;d=f[h>>2]|0;a:do if(!((f[d+8>>2]|0)!=0|(b[c>>0]|0)==0)){f[k>>2]=f[d+4>>2];f[L>>2]=f[k>>2];e=ZI(a,L)|0;g=f[e+4>>2]|0;f[l>>2]=f[e>>2];f[L>>2]=f[l>>2];Lp(c,g,L,81762);g=f[e+12>>2]|0;d=f[e+8>>2]|0;while(1){if((d|0)==(g|0))break a;z=f[d>>2]|0;f[m>>2]=f[e>>2];f[L>>2]=f[m>>2];Lp(c,z,L,81810);d=d+4|0}}while(0);h=h+4|0}f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=1065353216;t=f[i>>2]|0;v=N+4|0;w=N+12|0;y=N+16|0;z=N+8|0;s=a+64|0;r=a+88|0;q=f[q>>2]|0;b:while(1){if((q|0)==(t|0)){M=10;break}m=f[q>>2]|0;e=f[m+4>>2]|0;switch(f[m+8>>2]|0){case 0:{f[G>>2]=e;f[L>>2]=f[G>>2];if(!(Sma(a,L)|0)){f[H>>2]=e;f[L>>2]=f[H>>2];d=ana(a,L)|0;if(!d)d=0;else d=(f[d+12>>2]|0)==0}else d=1;f[I>>2]=e;x=0;f[L>>2]=f[I>>2];ma(24,c|0,d|0,L|0,81857,0)|0;m=x;x=0;if(m&1){M=16;break b}break}case 3:{f[J>>2]=e;f[L>>2]=f[J>>2];if(!(bna(a,L)|0)){f[A>>2]=e;f[L>>2]=f[A>>2];d=ana(a,L)|0;if(!d)d=0;else d=(f[d+12>>2]|0)==3}else d=1;f[B>>2]=e;x=0;f[L>>2]=f[B>>2];ma(24,c|0,d|0,L|0,81895,0)|0;m=x;x=0;if(m&1){M=21;break b}break}case 1:{x=0;ua(65,C|0,81931);m=x;x=0;if(m&1){M=27;break b}d=e;if($1a(d,f[C>>2]|0)|0)d=1;else d=$1a(d,f[s>>2]|0)|0;f[D>>2]=e;x=0;f[L>>2]=f[D>>2];ma(24,c|0,d|0,L|0,81933,0)|0;m=x;x=0;if(m&1){M=27;break b}break}case 2:{x=0;ua(65,C|0,81931);m=x;x=0;if(m&1){M=33;break b}d=e;if($1a(d,f[C>>2]|0)|0)d=1;else d=$1a(d,f[r>>2]|0)|0;f[E>>2]=e;x=0;f[L>>2]=f[E>>2];ma(24,c|0,d|0,L|0,81968,0)|0;m=x;x=0;if(m&1){M=33;break b}break}default:{M=34;break b}}i=f[f[q>>2]>>2]|0;f[C>>2]=i;m=(rB(N,C)|0)!=0;f[F>>2]=i;x=0;f[L>>2]=f[F>>2];va(119,c|0,m|0,L|0);m=x;x=0;if(m&1){M=71;break}m=v8a(C)|0;h=f[v>>2]|0;l=(h|0)==0;c:do if(!l){j=h+-1|0;k=(j&h|0)==0;if(!k)if(m>>>0>>0)e=m;else e=(m>>>0)%(h>>>0)|0;else e=j&m;d=f[(f[N>>2]|0)+(e<<2)>>2]|0;if(!d)M=51;else do{d=f[d>>2]|0;if(!d){M=51;break c}g=f[d+4>>2]|0;if((g|0)!=(m|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(e|0)){M=51;break c}}}while(!($1a(f[d+8>>2]|0,i)|0))}else{e=0;M=51}while(0);if((M|0)==51){M=0;x=0;wa(95,L|0,N|0,m|0,C|0);k=x;x=0;if(k&1){M=71;break}o=+(((f[w>>2]|0)+1|0)>>>0);p=+n[y>>2];do if(l|p*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;k=~~+W(+(o/p))>>>0;x=0;ua(680,N|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){M=58;break b}d=f[v>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&m;break}if(m>>>0>>0){h=d;e=m}else{h=d;e=(m>>>0)%(d>>>0)|0}}while(0);d=f[(f[N>>2]|0)+(e<<2)>>2]|0;if(!d){g=f[L>>2]|0;f[g>>2]=f[z>>2];f[z>>2]=g;f[(f[N>>2]|0)+(e<<2)>>2]=z;d=f[g>>2]|0;if(d|0){d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[N>>2]|0)+(d<<2)>>2]=g}}else{m=f[L>>2]|0;f[m>>2]=f[d>>2];f[d>>2]=m}f[w>>2]=(f[w>>2]|0)+1}q=q+4|0}if((M|0)==10){NQa(N);u=K;return}else if((M|0)==16)d=Ia()|0;else if((M|0)==21)d=Ia()|0;else if((M|0)==27)d=Ia()|0;else if((M|0)==33)d=Ia()|0;else if((M|0)==34){x=0;sa(5);x=0;d=Ia()|0}else if((M|0)==58){d=Ia()|0;e=f[L>>2]|0;f[L>>2]=0;if(e|0)ubb(e);M=72}else if((M|0)==71){d=Ia()|0;M=72}NQa(N);Ua(d|0)}function bg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+48|0;q=v+36|0;j=v+32|0;k=v+28|0;w=v+16|0;l=v+12|0;m=v+4|0;n=v+8|0;t=v;o=a+4|0;d=$Ra(f[o>>2]|0)|0;f[j>>2]=d;f[k>>2]=c;f[w>>2]=0;r=w+4|0;f[r>>2]=0;i=w+8|0;f[i>>2]=0;s=a+112|0;e=0;g=0;h=c;a:while(1){if(e>>>0>=g>>>0){x=0;va(145,w|0,k|0,j|0);g=x;x=0;if(g&1){p=18;break}}else{f[e>>2]=h;f[e+4>>2]=d;f[r>>2]=e+8}f[l>>2]=1;tab(m);x=0;c=ga(294,h|0)|0;g=x;x=0;if(g&1){p=19;break}do if(c>>>0>1){x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=19;break a}if(u8a(b[c>>0]|0)|0){x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=19;break a}if(!(lRa(c)|0)){x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=19;break a}x=0;c=ga(295,c|0)|0;g=x;x=0;if(g&1){p=19;break a}x=0;c=ia(159,c|0,1)|0;g=x;x=0;if(g&1){p=19;break a}if(c|0){x=0;ua(65,q|0,117248);g=x;x=0;if(g&1){p=23;break a}c=f[q>>2]|0;f[m>>2]=c;break}}f[l>>2]=2;x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=20;break a}x=0;c=ga(295,c|0)|0;g=x;x=0;if(g&1){p=20;break a}E1a(q,c);c=f[q>>2]|0;f[m>>2]=c}else p=24}else p=24;while(0);if((p|0)==24){p=0;x=0;ua(65,q|0,117248);g=x;x=0;if(g&1){p=26;break}c=f[q>>2]|0;f[m>>2]=c}f[n>>2]=c;x=0;f[q>>2]=f[n>>2];c=ia(97,s|0,q|0)|0;g=x;x=0;if(g&1){p=31;break}f[d+8>>2]=c;x=0;c=ia(168,h|0,l|0)|0;g=x;x=0;if(g&1){p=19;break}f[d+4>>2]=c;d=f[l>>2]|0;x=0;c=ga(294,h|0)|0;g=x;x=0;if(g&1){p=19;break}if(d>>>0>=c>>>0){p=40;break}x=0;c=ia(69,h|0,d|0)|0;h=x;x=0;if(h&1){p=37;break}x=0;d=ia(69,c|0,0)|0;h=x;x=0;if(h&1){p=37;break}x=0;d=ga(295,d|0)|0;h=x;x=0;if(h&1){p=37;break}if(!($1a(d,f[33096]|0)|0)){p=40;break}x=0;d=ga(221,f[o>>2]|0)|0;h=x;x=0;if(h&1){p=37;break}f[j>>2]=d;f[k>>2]=c;e=f[r>>2]|0;g=f[i>>2]|0;h=c}if((p|0)==18)d=Ia()|0;else if((p|0)==19){d=Ia()|0;p=39}else if((p|0)==20){d=Ia()|0;p=39}else if((p|0)==23){d=Ia()|0;p=39}else if((p|0)==26){d=Ia()|0;p=39}else if((p|0)==31){d=Ia()|0;p=39}else if((p|0)==37){d=Ia()|0;p=39}else if((p|0)==40){d=f[w>>2]|0;g=(f[r>>2]|0)-d>>3;b:while(1){i=g+-1|0;if((g|0)<=0){p=42;break}j=f[d+(i<<3)>>2]|0;h=f[d+(i<<3)+4>>2]|0;x=0;d=ga(294,j|0)|0;p=x;x=0;if(p&1){p=53;break}c:do if(d>>>0>1){d=1;while(1){x=0;c=ga(294,j|0)|0;p=x;x=0;if(p&1){p=52;break b}if(d>>>0>=c>>>0)break;x=0;c=ia(69,j|0,d|0)|0;p=x;x=0;if(p&1){p=52;break b}if(!(u8a(b[c>>0]|0)|0))break;d=d+1|0}x=0;c=ga(294,j|0)|0;p=x;x=0;if(p&1){p=53;break b}if(d>>>0>>0){x=0;c=ia(69,j|0,d|0)|0;p=x;x=0;if(p&1){p=53;break b}x=0;c=ia(69,c|0,0)|0;p=x;x=0;if(p&1){p=53;break b}x=0;c=ga(295,c|0)|0;p=x;x=0;if(p&1){p=53;break b}d=d+(($1a(c,f[33109]|0)|0)&1)|0}c=f[w>>2]|0;if((g|0)<((f[r>>2]|0)-c>>3|0)){e=h+12|0;x=0;ua(81,e|0,f[c+(g<<3)+4>>2]|0);p=x;x=0;if(p&1){p=53;break b}d=d+1|0}else e=h+12|0;while(1){x=0;c=ga(294,j|0)|0;p=x;x=0;if(p&1){p=51;break b}if(d>>>0>=c>>>0)break c;x=0;c=ia(69,j|0,d|0)|0;p=x;x=0;if(p&1){p=51;break b}x=0;c=ia(166,a|0,c|0)|0;p=x;x=0;if(p&1){p=51;break b}x=0;ua(81,e|0,c|0);p=x;x=0;if(p&1){p=51;break b}d=d+1|0}}while(0);f[t>>2]=f[h+8>>2];x=0;f[q>>2]=f[t>>2];ua(257,s|0,q|0);p=x;x=0;if(p&1){p=53;break}x=0;ua(1873,h|0,f[h+4>>2]|0);p=x;x=0;if(p&1){p=53;break}g=i;d=f[w>>2]|0}if((p|0)==42){t=f[d+4>>2]|0;uSa(w);u=v;return t|0}else if((p|0)==51)d=Ia()|0;else if((p|0)==52)d=Ia()|0;else if((p|0)==53)d=Ia()|0}uSa(w);Ua(d|0);return 0}function cg(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;z=u;u=u+48|0;A=z+36|0;B=z+24|0;D=z+4|0;v=z;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;w=a+44|0;q=a+48|0;y=D+4|0;r=D+12|0;s=D+16|0;t=D+8|0;d=f[w>>2]|0;b=0;a:while(1){if((d|0)==(q|0)){C=3;break}l=d+20|0;p=v8a(l)|0;m=f[y>>2]|0;o=(m|0)==0;b:do if(!o){j=m+-1|0;k=(j&m|0)==0;if(!k)if(p>>>0>>0)c=p;else c=(p>>>0)%(m>>>0)|0;else c=j&p;h=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!h)C=19;else do{h=f[h>>2]|0;if(!h){C=19;break b}i=f[h+4>>2]|0;if((i|0)!=(p|0)){if(!k){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&j;if((i|0)!=(c|0)){C=19;break b}}}while(!($1a(f[h+8>>2]|0,f[l>>2]|0)|0))}else{c=0;C=19}while(0);if((C|0)==19){C=0;x=0;wa(95,A|0,D|0,p|0,l|0);l=x;x=0;if(l&1){C=45;break}e=+(((f[r>>2]|0)+1|0)>>>0);g=+n[s>>2];do if(o|g*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(680,D|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){C=26;break a}b=f[y>>2]|0;c=b+-1|0;if(!(c&b)){i=b;c=c&p;break}if(p>>>0>>0){i=b;c=p}else{i=b;c=(p>>>0)%(b>>>0)|0}}else i=m;while(0);b=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!b){h=f[A>>2]|0;f[h>>2]=f[t>>2];f[t>>2]=h;f[(f[D>>2]|0)+(c<<2)>>2]=t;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=i+-1|0;if(c&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&c;f[(f[D>>2]|0)+(b<<2)>>2]=h}}else{p=f[A>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p}b=(f[r>>2]|0)+1|0;f[r>>2]=b}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}if((C|0)==3){p=a+56|0;c=0;c:while(1){f[A>>2]=c;if(c>>>0>=(fQa(a)|0)>>>0){C=48;break}if(!(_ta(a,c)|0)){while(1){o=b+1|0;x=0;b=ga(226,b|0)|0;q=x;x=0;if(q&1){C=90;break c}f[v>>2]=b;if(!(rB(D,v)|0))break;b=o}x=0;b=ia(150,w|0,A|0)|0;q=x;x=0;if(q&1){C=91;break}f[b>>2]=f[v>>2];b=f[A>>2]|0;x=0;c=ia(152,p|0,v|0)|0;q=x;x=0;if(q&1){C=91;break}f[c>>2]=b;m=v8a(v)|0;h=f[y>>2]|0;l=(h|0)==0;d:do if(!l){j=h+-1|0;k=(j&h|0)==0;if(!k)if(m>>>0>>0)c=m;else c=(m>>>0)%(h>>>0)|0;else c=j&m;b=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!b)C=70;else{i=f[v>>2]|0;do{b=f[b>>2]|0;if(!b){C=70;break d}d=f[b+4>>2]|0;if((d|0)!=(m|0)){if(!k){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){C=70;break d}}}while(!($1a(f[b+8>>2]|0,i)|0))}}else{c=0;C=70}while(0);if((C|0)==70){C=0;x=0;wa(95,B|0,D|0,m|0,v|0);q=x;x=0;if(q&1){C=91;break}e=+(((f[r>>2]|0)+1|0)>>>0);g=+n[s>>2];do if(l|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(680,D|0,(q>>>0>>0?l:q)|0);q=x;x=0;if(q&1){C=77;break c}b=f[y>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&m;break}if(m>>>0>>0){h=b;c=m}else{h=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[B>>2]|0;f[d>>2]=f[t>>2];f[t>>2]=d;f[(f[D>>2]|0)+(c<<2)>>2]=t;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[D>>2]|0)+(b<<2)>>2]=d}}else{q=f[B>>2]|0;f[q>>2]=f[b>>2];f[b>>2]=q}f[r>>2]=(f[r>>2]|0)+1}b=o;c=f[A>>2]|0}c=c+1|0}if((C|0)==48){NQa(D);u=z;return}else if((C|0)==77){b=Ia()|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)ubb(c)}else if((C|0)==90)b=Ia()|0;else if((C|0)==91)b=Ia()|0}else if((C|0)==26){b=Ia()|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)ubb(c);C=46}else if((C|0)==45){b=Ia()|0;C=46}NQa(D);Ua(b|0)}function dg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;s=u;u=u+48|0;q=s+32|0;v=s+28|0;p=s+16|0;r=s+12|0;t=s;fMa(v);x=0;d=ia(69,c|0,1)|0;o=x;x=0;a:do if(o&1)d=Ia()|0;else{do if(u8a(b[d>>0]|0)|0){x=0;d=ia(69,c|0,1)|0;o=x;x=0;if(!(o&1)?(x=0,e=ga(295,d|0)|0,o=x,x=0,!(o&1)):0){E1a(q,e);f[f[v>>2]>>2]=f[q>>2];d=2;break}d=Ia()|0;break a}else d=1;while(0);x=0;j=ia(69,c|0,d|0)|0;o=x;x=0;do if(!(o&1)){o=f[v>>2]|0;k=o+8|0;l=o+12|0;m=o+16|0;n=o+4|0;i=1;b:while(1){x=0;d=ga(294,j|0)|0;h=x;x=0;if(h&1){d=14;break}if(i>>>0>=d>>>0){d=12;break}x=0;h=ia(69,j|0,i|0)|0;g=x;x=0;if(g&1){d=22;break}x=0;d=ia(69,h|0,0)|0;g=x;x=0;if(g&1){d=22;break}x=0;d=ga(295,d|0)|0;g=x;x=0;if(g&1){d=22;break}c:do if(!($1a(d,f[33110]|0)|0)){x=0;d=ia(69,h|0,0)|0;g=x;x=0;if(g&1){d=22;break b}x=0;d=ga(295,d|0)|0;g=x;x=0;if(g&1){d=22;break b}if($1a(d,f[33109]|0)|0){x=0;d=ga(294,h|0)|0;g=x;x=0;if(g&1){d=22;break b}if(d>>>0>2){d=37;break b}x=0;d=ia(69,h|0,1)|0;h=x;x=0;if(h&1){d=22;break b}x=0;d=ga(295,d|0)|0;h=x;x=0;if(h&1){d=22;break b}x=0;d=ia(159,d|0,0)|0;h=x;x=0;if(h&1){d=22;break b}f[n>>2]=d}}else{g=1;while(1){x=0;d=ga(294,h|0)|0;e=x;x=0;if(e&1){d=23;break b}if(g>>>0>=d>>>0)break c;x=0;d=ia(69,h|0,g|0)|0;e=x;x=0;if(e&1){d=31;break b}x=0;d=ga(295,d|0)|0;e=x;x=0;if(e&1){d=31;break b}x=0;d=ia(159,d|0,0)|0;e=x;x=0;if(e&1){d=31;break b}f[q>>2]=d;e=f[l>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(1871,k|0,q|0);e=x;x=0;if(e&1){d=31;break b}}else{f[e>>2]=d;f[l>>2]=e+4}g=g+1|0}}while(0);i=i+1|0}if((d|0)==12){d=f[o>>2]|0;do if(!(Iab(d)|0)){d=f[a>>2]|0;x=0;d=ga(226,(f[d+4>>2]|0)-(f[d>>2]|0)>>2|0)|0;p=x;x=0;if(p&1){d=Ia()|0;break a}else{f[o>>2]=d;break}}while(0);e=a+24|0;g=f[e>>2]|0;if((g|0)==(f[a+28>>2]|0)){x=0;ua(1502,a+20|0,o|0);p=x;x=0;if(p&1)break}else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}d=f[a>>2]|0;f[r>>2]=f[o>>2];f[q>>2]=f[r>>2];if(!(oma(d,q)|0)){f[v>>2]=0;x=0;ua(1872,d|0,o|0);t=x;x=0;if(t&1)break;f[v>>2]=0;u=s;return}g=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;s=h7a(94802)|0;x=0;va(87,t|0,94802,s|0);s=x;x=0;if(!(s&1)){x=0;wa(138,g|0,t|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(t);if(!e)break a}else d=Ia()|0;La(g|0);break a}else if((d|0)==14){d=Ia()|0;break a}else if((d|0)==22){d=Ia()|0;break a}else if((d|0)==23){d=Ia()|0;break a}else if((d|0)==31){d=Ia()|0;break a}else if((d|0)==37){g=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;t=h7a(94233)|0;x=0;va(87,p|0,94233,t|0);t=x;x=0;if(!(t&1)){x=0;wa(138,g|0,p|0,f[h+28>>2]|0,f[h+32>>2]|0);t=x;x=0;if(t&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(p);if(!e)break a}else d=Ia()|0;La(g|0);break a}}while(0);d=Ia()|0}while(0);e=f[v>>2]|0;f[v>>2]=0;if(e|0){M_a(e);ubb(e)}Ua(d|0)}function eg(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=u;u=u+16|0;n=o;if(a){m=TTa(d,135112)|0;if(c){pc[f[(f[m>>2]|0)+44>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+32>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){T0a(f[k>>2]|0,0);f[k+4>>2]=0}else{T0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);a=m}else{pc[f[(f[m>>2]|0)+40>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+28>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){T0a(f[k>>2]|0,0);f[k+4>>2]=0}else{T0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);a=m}d=bc[f[(f[m>>2]|0)+12>>2]&511](m)|0;b[g>>0]=d;d=bc[f[(f[m>>2]|0)+16>>2]&511](m)|0;b[h>>0]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](n,m);d=i+11|0;if((b[d>>0]|0)<0){T0a(f[i>>2]|0,0);f[i+4>>2]=0}else{T0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);pc[f[(f[a>>2]|0)+24>>2]&4095](n,m);d=j+11|0;if((b[d>>0]|0)<0){T0a(f[j>>2]|0,0);f[j+4>>2]=0}else{T0a(j,0);b[d>>0]=0}x=0;ta(470,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;r2a(i)}f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);d=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0}else{m=TTa(d,135104)|0;if(c){pc[f[(f[m>>2]|0)+44>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+32>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){T0a(f[k>>2]|0,0);f[k+4>>2]=0}else{T0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);a=m}else{pc[f[(f[m>>2]|0)+40>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+28>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){T0a(f[k>>2]|0,0);f[k+4>>2]=0}else{T0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);a=m}d=bc[f[(f[m>>2]|0)+12>>2]&511](m)|0;b[g>>0]=d;d=bc[f[(f[m>>2]|0)+16>>2]&511](m)|0;b[h>>0]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](n,m);d=i+11|0;if((b[d>>0]|0)<0){T0a(f[i>>2]|0,0);f[i+4>>2]=0}else{T0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);pc[f[(f[a>>2]|0)+24>>2]&4095](n,m);d=j+11|0;if((b[d>>0]|0)<0){T0a(f[j>>2]|0,0);f[j+4>>2]=0}else{T0a(j,0);b[d>>0]=0}x=0;ta(470,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;r2a(i)}f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}HTa(n);d=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0}f[l>>2]=d;u=o;return}function fg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;r=t;f[r>>2]=c;p=d+1|0;g=a+68|0;d=Vz(g,r)|0;a:do if(!d){q=a+36|0;if(!(Vz(q,r)|0)){b:do switch(f[c>>2]|0){case 4:case 0:break;case 1:{d=f[f[c+4>>2]>>2]|0;if(G6a(d)|0)break a;do if(p>>>0<(f[a+12>>2]|0)>>>0?(f[a+28>>2]|0)-(f[a+24>>2]|0)>>2>>>0<(f[a+16>>2]|0)>>>0:0){if((f[a+4>>2]|0)!=(c|0)?Vz(f[a+8>>2]|0,r)|0:0)break;if(m6a(d)|0)Ca(75908,73170,249,93143);d=0;while(1){if(d>>>0>=(f[c+16>>2]|0)-(f[c+12>>2]|0)>>2>>>0)break b;fg(a,$Pa(c,d)|0,p)|0;d=d+1|0;c=f[r>>2]|0}}while(0);c=rT(c)|0;if(!(o2a(c)|0))Ca(75887,73170,242,93143);e=vRa(c)|0;x=0;c=ia(116,g|0,r|0)|0;p=x;x=0;if(p&1){c=Ia()|0;if(e|0){B_a(e);ubb(e)}Ua(c|0)}else{d=f[c>>2]|0;f[c>>2]=e;if(d|0){B_a(d);ubb(d)}f[r>>2]=e;break b}}case 2:{e=fg(a,$Pa(c,0)|0,p)|0;if(!e)Ca(117248,73170,257,93143);g=(f[e+16>>2]|0)-(f[e+12>>2]|0)>>2;j=a+120|0;k=a+112|0;l=a+116|0;m=a+108|0;d=0;while(1){if((d|0)==(g|0))break;c=$Pa(e,d)|0;f[s>>2]=c;o=c;do if(!(sab(f[c>>2]|0)|0)){if(b[j>>0]|0){fg(a,c,p)|0;break}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){IL(m,s);break}else{f[c>>2]=o;f[k>>2]=(f[k>>2]|0)+4;break}}while(0);d=d+1|0}d=g+1|0;c=1;while(1){if(c>>>0>=d>>>0)break b;fg(a,$Pa(f[r>>2]|0,c)|0,p)|0;c=c+1|0}}case 3:{fg(a,$Pa(c,0)|0,p)|0;fg(a,$Pa(f[r>>2]|0,1)|0,p)|0;break}case 5:{fg(a,$Pa(c,0)|0,p)|0;break}case 6:{b[a+20>>0]=1;c=0;break a}default:hb()}while(0);if(Vz(q,r)|0)Ca(75936,73170,298,93143);c=a+28|0;d=f[c>>2]|0;if((d|0)==(f[a+32>>2]|0)){IL(a+24|0,r);c=r}else{f[d>>2]=f[r>>2];f[c>>2]=(f[c>>2]|0)+4;c=r}c=f[c>>2]|0;f[s>>2]=c;p=HH(s,4)|0;l=a+40|0;m=f[l>>2]|0;o=(m|0)==0;c:do if(!o){j=m+-1|0;k=(j&m|0)==0;if(!k)if(p>>>0>>0)d=p;else d=(p>>>0)%(m>>>0)|0;else d=j&p;e=f[(f[q>>2]|0)+(d<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break c;g=f[e+4>>2]|0;if((g|0)!=(p|0)){if(!k){if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0}else g=g&j;if((g|0)!=(d|0))break c}if((f[e+8>>2]|0)==(c|0))break a}}else d=0;while(0);R6(s,q,p,r);j=a+48|0;h=+(((f[j>>2]|0)+1|0)>>>0);i=+n[a+52>>2];do if(o|i*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;m=~~+W(+(h/i))>>>0;x=0;ua(632,q|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&p;break}if(p>>>0>>0){g=c;d=p}else{g=c;d=(p>>>0)%(c>>>0)|0}}else g=m;while(0);c=f[(f[q>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+44|0;e=f[s>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=e;f[(f[q>>2]|0)+(d<<2)>>2]=c;c=f[e>>2]|0;if(!c)c=s;else{c=f[c+4>>2]|0;d=g+-1|0;if(d&g){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&d;f[(f[q>>2]|0)+(c<<2)>>2]=e;c=s}}else{q=f[s>>2]|0;f[q>>2]=f[c>>2];f[c>>2]=q;c=s}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;c=f[r>>2]|0}}else c=f[d+12>>2]|0;while(0);u=t;return c|0}function gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;C=u;u=u+144|0;B=C+92|0;G=C+80|0;H=C+36|0;F=C+24|0;D=C+12|0;E=C;a=f[b+24>>2]|0;if((a|0)<=2?(f[b+28>>2]|0)<=0:0){n=c+36|0;a=(a|0)>1?10:1;m=n;z=c+40|0}else{n=c+36|0;z=c+40|0;a=(f[z>>2]|0)-(f[n>>2]|0)>>2;m=n}o=c+36|0;p=F+4|0;q=D+8|0;r=c+76|0;s=c+80|0;t=D+4|0;v=c+116|0;w=c+24|0;y=c+28|0;a:while(1){if(!a){b=72;break}a=a+-1|0;vP(G,c);mza(H,c);h4a(H);x=0;ua(2771,H|0,G|0);l=x;x=0;if(l&1){b=12;break}x=0;ta(438,H|0);l=x;x=0;if(l&1){b=12;break}yUa(F);i=f[z>>2]|0;h=f[o>>2]|0;while(1){if((h|0)==(i|0))break;f[B>>2]=f[h>>2];x=0;b=ia(196,G|0,B|0)|0;l=x;x=0;if(l&1){b=19;break a}x=0;b=ia(197,F|0,b|0)|0;l=x;x=0;if(l&1){b=19;break a}d=f[h>>2]|0;f[D>>2]=d;e=b+4|0;g=f[e>>2]|0;if(g>>>0>=(f[b+8>>2]|0)>>>0){x=0;ua(2772,b|0,D|0);l=x;x=0;if(l&1){b=20;break a}}else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}h=h+4|0}yUa(D);yUa(E);d=f[F>>2]|0;while(1){if((d|0)==(p|0))break;i=d+20|0;l=(f[d+24>>2]|0)-(f[i>>2]|0)|0;j=l>>2;b:do if((l|0)!=4){k=j+-1|0;h=0;while(1){if(h>>>0>=k>>>0)break b;l=f[(f[i>>2]|0)+(h<<2)>>2]|0;c:do if(!(K5(E,l)|0)){b=h;while(1){b=b+1|0;if(b>>>0>=j>>>0)break c;g=f[(f[i>>2]|0)+(b<<2)>>2]|0;if(!(K5(E,g)|0)){x=0;e=ia(198,l|0,g|0)|0;I=x;x=0;if(I&1){b=31;break a}if(e){x=0;e=ia(186,D|0,g|0)|0;I=x;x=0;if(I&1){b=31;break a}f[e>>2]=f[l>>2];x=0;wa(82,B|0,E|0,g|0,g|0);I=x;x=0;if(I&1){b=31;break a}}}}}while(0);h=h+1|0}}while(0);b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}if(!(f[q>>2]|0)){b=68;break}I=zD(f[m>>2]|0,f[z>>2]|0,E)|0;rN(n,I,f[z>>2]|0);x=0;ta(486,c|0);I=x;x=0;if(I&1){b=52;break}mza(B,c);h4a(B);x=0;ua(2773,B|0,D|0);I=x;x=0;if(I&1){b=67;break}x=0;ta(438,B|0);I=x;x=0;if(I&1){b=67;break}e=f[s>>2]|0;d=f[r>>2]|0;while(1){if((d|0)==(e|0))break;g=f[d+8>>2]|0;b=f[d+4>>2]|0;while(1){if((b|0)==(g|0))break;h=p_(D,b)|0;if((h|0)!=(t|0))f[b>>2]=f[h+20>>2];b=b+4|0}d=d+16|0}if(Iab(f[v>>2]|0)|0?(A=p_(D,v)|0,(A|0)!=(t|0)):0)f[v>>2]=f[A+20>>2];d=f[y>>2]|0;b=f[w>>2]|0;while(1){if((b|0)==(d|0))break;e=(f[b>>2]|0)+4|0;g=p_(D,e)|0;if((g|0)!=(t|0))f[e>>2]=f[g+20>>2];b=b+4|0}Tca(B);MTa(E);kHa(D);Jya(F);Tca(H);mGa(G)}if((b|0)==12)a=Ia()|0;else if((b|0)==19){a=Ia()|0;b=21}else if((b|0)==20){a=Ia()|0;b=21}else if((b|0)==31){a=Ia()|0;b=69}else if((b|0)==52){a=Ia()|0;b=69}else if((b|0)==67){a=Ia()|0;Tca(B);b=69}else if((b|0)==68){MTa(E);kHa(D);Jya(F);Tca(H);mGa(G);b=72}if((b|0)==21)b=70;else if((b|0)==69){MTa(E);kHa(D);b=70}else if((b|0)==72){u=C;return}if((b|0)==70)Jya(F);Tca(H);mGa(G);Ua(a|0)}function hg(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;n=u;u=u+16|0;m=n;if(a){a=TTa(d,135128)|0;if(c){pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){E1a(f[k>>2]|0,0);f[k+4>>2]=0}else{E1a(k,0);b[d>>0]=0}x=0;ta(515,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}jTa(m)}else{pc[f[(f[a>>2]|0)+40>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){E1a(f[k>>2]|0,0);f[k+4>>2]=0}else{E1a(k,0);b[d>>0]=0}x=0;ta(515,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}jTa(m)}d=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[g>>2]=d;d=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[h>>2]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);d=i+11|0;if((b[d>>0]|0)<0){T0a(f[i>>2]|0,0);f[i+4>>2]=0}else{T0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}HTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);d=j+8+3|0;if((b[d>>0]|0)<0){E1a(f[j>>2]|0,0);f[j+4>>2]=0}else{E1a(j,0);b[d>>0]=0}x=0;ta(515,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;r2a(i)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}jTa(m);d=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}else{a=TTa(d,135120)|0;if(c){pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){E1a(f[k>>2]|0,0);f[k+4>>2]=0}else{E1a(k,0);b[d>>0]=0}x=0;ta(515,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}jTa(m)}else{pc[f[(f[a>>2]|0)+40>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){E1a(f[k>>2]|0,0);f[k+4>>2]=0}else{E1a(k,0);b[d>>0]=0}x=0;ta(515,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;r2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}jTa(m)}d=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[g>>2]=d;d=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[h>>2]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);d=i+11|0;if((b[d>>0]|0)<0){T0a(f[i>>2]|0,0);f[i+4>>2]=0}else{T0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}HTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);d=j+8+3|0;if((b[d>>0]|0)<0){E1a(f[j>>2]|0,0);f[j+4>>2]=0}else{E1a(j,0);b[d>>0]=0}x=0;ta(515,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;r2a(i)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}jTa(m);d=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}f[l>>2]=d;u=n;return}function ig(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:do if(c>>>0>36){f[33448]=22;g=0;e=0}else{s=a+4|0;r=a+100|0;do{i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0}while((o6a(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=f[s>>2]|0;if(j>>>0<(f[r>>2]|0)>>>0){f[s>>2]=j+1;q=i;i=h[j>>0]|0;break b}else{q=i;i=cF(a)|0;break b}}default:q=0}while(0);j=(c|0)==0;do if((c|16|0)==16&(i|0)==48){i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0;if((i|32|0)!=120)if(j){p=8;o=47;break}else{o=32;break}i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0;if((h[28049+i>>0]|0)>15){e=(f[r>>2]|0)==0;if(!e)f[s>>2]=(f[s>>2]|0)+-1;if(!d){una(a,0);g=0;e=0;break a}if(e){g=0;e=0;break a}f[s>>2]=(f[s>>2]|0)+-1;g=0;e=0;break a}else{p=16;o=47}}else{c=j?10:c;if(c>>>0>(h[28049+i>>0]|0)>>>0)o=32;else{if(f[r>>2]|0)f[s>>2]=(f[s>>2]|0)+-1;una(a,0);f[33448]=22;g=0;e=0;break a}}while(0);c:do if((o|0)==32)if((c|0)==10){c=i+-48|0;if(c>>>0<10){i=0;do{i=(i*10|0)+c|0;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;j=h[c>>0]|0}else j=cF(a)|0;c=j+-48|0;d=c>>>0<10}while(d&i>>>0<429496729);if(d){m=0;do{d=BBa(i|0,m|0,10,0)|0;k=I;l=((c|0)<0)<<31>>31;p=~l;if(k>>>0>p>>>0|(k|0)==(p|0)&d>>>0>~c>>>0){n=10;c=j;j=m;o=76;break c}i=wOa(d|0,k|0,c|0,l|0)|0;m=I;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;j=h[c>>0]|0}else j=cF(a)|0;c=j+-48|0}while(c>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(c>>>0>9){d=q;c=m}else{n=10;c=j;j=m;o=76}}else{d=q;c=0}}else{d=q;c=0;i=0}}else{p=c;o=47}while(0);d:do if((o|0)==47){if(!(p+-1&p)){n=b[118722+((p*23|0)>>>5&7)>>0]|0;d=b[28049+i>>0]|0;j=d&255;if(p>>>0>j>>>0){i=0;do{i=j|i<>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0;d=b[28049+c>>0]|0;j=d&255}while(i>>>0<134217728&p>>>0>j>>>0);k=j;j=0}else{c=i;k=j;j=0;i=0}l=EMa(-1,-1,n|0)|0;m=I;if(p>>>0<=k>>>0|(m>>>0>>0|(m|0)==(j|0)&l>>>0>>0)){n=p;o=76;break}while(1){i=hMa(i|0,j|0,n|0)|0;j=I;i=i|d&255;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0;d=b[28049+c>>0]|0;if(p>>>0<=(d&255)>>>0|(j>>>0>m>>>0|(j|0)==(m|0)&i>>>0>l>>>0)){n=p;o=76;break d}}}j=b[28049+i>>0]|0;d=j&255;if(p>>>0>d>>>0){i=0;do{i=d+(X(i,p)|0)|0;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0;j=b[28049+c>>0]|0;d=j&255}while(i>>>0<119304647&p>>>0>d>>>0);k=0}else{c=i;i=0;k=0}if(p>>>0>d>>>0){m=sYa(-1,-1,p|0,0)|0;n=I;l=k;while(1){if(l>>>0>n>>>0|(l|0)==(n|0)&i>>>0>m>>>0){n=p;j=l;o=76;break d}d=BBa(i|0,l|0,p|0,0)|0;k=I;j=j&255;if(k>>>0>4294967295|(k|0)==-1&d>>>0>~j>>>0){n=p;j=l;o=76;break d}i=wOa(d|0,k|0,j|0,0)|0;d=I;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=cF(a)|0;j=b[28049+c>>0]|0;if(p>>>0<=(j&255)>>>0){n=p;j=d;o=76;break}else l=d}}else{n=p;j=k;o=76}}while(0);if((o|0)==76)if(n>>>0>(h[28049+c>>0]|0)>>>0){do{i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=cF(a)|0}while(n>>>0>(h[28049+i>>0]|0)>>>0);f[33448]=34;d=(e&1|0)==0&0==0?q:0;c=g;i=e}else{d=q;c=j}if(f[r>>2]|0)f[s>>2]=(f[s>>2]|0)+-1;if(!(c>>>0>>0|(c|0)==(g|0)&i>>>0>>0)){if(!((e&1|0)!=0|0!=0|(d|0)!=0)){f[33448]=34;e=wOa(e|0,g|0,-1,-1)|0;g=I;break}if(c>>>0>g>>>0|(c|0)==(g|0)&i>>>0>e>>>0){f[33448]=34;break}}e=((d|0)<0)<<31>>31;e=NRa(i^d|0,c^e|0,d|0,e|0)|0;g=I}while(0);I=g;return e|0}function jg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+64|0;A=C+32|0;D=C+16|0;y=C+12|0;B=C;a:do if((c-a|0)>1?(b[a>>0]|0)==73:0){w=d+61|0;v=d+36|0;if(b[w>>0]|0){h=f[v>>2]|0;g=f[h+-16>>2]|0;h=h+-12|0;e=f[h>>2]|0;while(1){if((e|0)==(g|0))break;z=e+-16|0;ZX(z);e=z}f[h>>2]=g}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;nW(D,123310,h7a(123310)|0);z=d+4|0;n=d+12|0;o=d+40|0;p=d+32|0;s=D+11|0;t=D+4|0;q=A+11|0;r=A+4|0;i=a+1|0;b:while(1){if((b[i>>0]|0)==69){g=55;break}if(b[w>>0]|0){f[y>>2]=f[n>>2];e=f[v>>2]|0;if(e>>>0>=(f[o>>2]|0)>>>0){x=0;ua(3199,p|0,y|0);m=x;x=0;if(m&1){g=16;break}}else{f0a(A,y);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=f[A>>2];f[v>>2]=(f[v>>2]|0)+16}}l=((f[z>>2]|0)-(f[d>>2]|0)|0)/24|0;x=0;m=ja(104,i|0,c|0,d|0)|0;k=x;x=0;if(k&1){g=23;break}g=((f[z>>2]|0)-(f[d>>2]|0)|0)/24|0;if(b[w>>0]|0){h=f[v>>2]|0;e=0;while(1){if((e|0)==-1)break;k=e+-1|0;jT(h+(k<<4)|0);e=k}f[v>>2]=h+-16}if((m|0)==(i|0)|(m|0)==(c|0)){g=66;break}c:do if(b[w>>0]|0){h=f[v>>2]|0;e=f[n>>2]|0;f[A>>2]=e;i=h+-12|0;j=f[i>>2]|0;if(j>>>0>=(f[h+-8>>2]|0)>>>0){x=0;ua(3200,h+-16|0,A|0);k=x;x=0;if(k&1){g=32;break b}}else{f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=e;f[i>>2]=(f[i>>2]|0)+16}e=l;while(1){if(e>>>0>=g>>>0)break c;h=f[(f[v>>2]|0)+-12>>2]|0;i=(f[d>>2]|0)+(e*24|0)|0;j=h+-12|0;k=f[j>>2]|0;if((k|0)==(f[h+-8>>2]|0)){x=0;ua(3201,h+-16|0,i|0);k=x;x=0;if(k&1){g=38;break b}}else{x=0;ua(3198,k|0,i|0);k=x;x=0;if(k&1){g=38;break b}f[j>>2]=(f[j>>2]|0)+24}e=e+1|0}}while(0);e=l;while(1){if(e>>>0>=g>>>0)break;k=b[s>>0]|0;if((k<<24>>24<0?f[t>>2]|0:k&255)>>>0>1?(x=0,ia(215,D|0,123498)|0,k=x,x=0,k&1):0){g=43;break b}x=0;ua(3194,A|0,(f[d>>2]|0)+(e*24|0)|0);k=x;x=0;if(k&1){g=47;break b}k=b[q>>0]|0;j=k<<24>>24<0;x=0;ja(97,D|0,(j?f[A>>2]|0:A)|0,(j?f[r>>2]|0:k&255)|0)|0;k=x;x=0;if(k&1){g=48;break b}HTa(A);e=e+1|0}while(1){if((g|0)==(l|0))break;h=f[z>>2]|0;e=0;while(1){if((e|0)==-1)break;k=e+-1|0;JJa(h+(k*24|0)|0);e=k}f[z>>2]=h+-24;g=g+-1|0}i=m}do if((g|0)==16)a=Ia()|0;else if((g|0)==23)a=Ia()|0;else if((g|0)==32)a=Ia()|0;else if((g|0)==38)a=Ia()|0;else if((g|0)==43)a=Ia()|0;else if((g|0)==47){a=Ia()|0;g=49}else if((g|0)==48){a=Ia()|0;HTa(A);g=49}else if((g|0)==55){a=i+1|0;y=b[s>>0]|0;w=y<<24>>24<0;if((b[(w?f[D>>2]|0:D)+(w?f[t>>2]|0:y&255)+-1>>0]|0)==62){x=0;ia(215,D|0,124689)|0;y=x;x=0;if(y&1)g=57}else{x=0;ia(215,D|0,123312)|0;y=x;x=0;if(y&1)g=57}if((g|0)==57){a=Ia()|0;break}f[B>>2]=f[D>>2];f[B+4>>2]=f[D+4>>2];f[B+8>>2]=f[D+8>>2];e=0;while(1){if((e|0)==3)break;f[D+(e<<2)>>2]=0;e=e+1|0}NY(A,B);e=f[z>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,A|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(A);HTa(B);break}}else{yY(e,A);f[z>>2]=(f[z>>2]|0)+24}JJa(A);HTa(B);HTa(D);break a}else if((g|0)==66){HTa(D);break a}while(0);HTa(D);Ua(a|0)}while(0);u=C;return a|0}function kg(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)Ca(110557,115839,78,110562);do switch(f[c>>2]|0){case 1:{Mk(a,b,c);break}case 2:{Vr(a,b,c);break}case 3:{aN(a,b,c);break}case 4:{jo(a,b,c);break}case 5:{jq(a,b,c);break}case 6:{Ur(a,b,c);break}case 7:{Us(a,b,c);break}case 8:{zo(a,b,c);break}case 9:{vX(a,f[f[b+8>>2]>>2]|0,f[c+8>>2]|0);break}case 10:{zt(a,b,c);break}case 11:{$F(a,f[b+4>>2]|0,c);break}case 12:{jz(a,b,c);break}case 13:{pt(a,b,c);break}case 14:{op(a,b,c);break}case 24:{gj(a,b,c);break}case 25:{el(a,b,c);break}case 26:{il(a,b,c);break}case 27:{ft(a,b,c);break}case 15:{R8(a,c);break}case 16:{yd(a,b,c);break}case 17:{_c(a,b,c);break}case 18:{_o(a,b,c);break}case 19:{kG(a,b,f[c+8>>2]|0);break}case 20:{FF(a,b,c);break}case 21:{qj(a,b,c);break}case 22:{KXa(a);break}case 23:{jPa(b);break}default:hb()}while(0);return}function lg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+112|0;s=p+40|0;l=p+36|0;q=p+24|0;r=p+12|0;m=p+8|0;n=p+4|0;o=p;wx(s,f[a>>2]|0);x=0;ta(462,s|0);k=x;x=0;if(k&1)a=Ia()|0;else{f[l>>2]=-1;f[q>>2]=0;h=q+4|0;f[h>>2]=0;i=q+8|0;f[i>>2]=0;f[r>>2]=0;j=r+4|0;f[j>>2]=0;k=r+8|0;f[k>>2]=0;e=a+8|0;g=s+44|0;b=0;a:while(1){f[m>>2]=b;d=f[e>>2]|0;a=f[d>>2]|0;if(b>>>0>=(f[d+4>>2]|0)-a>>2>>>0){d=4;break}d=f[a+(b<<2)>>2]|0;b:do if(d|0){x=0;a=ga(317,d|0)|0;c=x;x=0;if(c&1){d=12;break a}c=f[q>>2]|0;while(1){if(!a)break;b=f[h>>2]|0;if((b|0)==(c|0)){d=11;break a}while(1){b=b+-4|0;if((f[b>>2]|0)==-1)break;if((c|0)==(b|0)){d=18;break a}}f[h>>2]=b;a=a+-1|0}a=f[d>>2]|0;do if(iPa(a)|0){a=f[j>>2]|0;if((a|0)==(f[k>>2]|0)){x=0;ua(2102,r|0,q|0);c=x;x=0;if(c&1){d=12;break a}}else{x=0;ua(1407,a|0,q|0);c=x;x=0;if(c&1){d=12;break a}f[j>>2]=(f[j>>2]|0)+12}f[h>>2]=f[q>>2]}else{if(!(DPa(a)|0)){if(!(Iab(a)|0))break;f[h>>2]=c;break}a=f[j>>2]|0;if((f[r>>2]|0)==(a|0)){d=28;break a}b=a+-12|0;if((q|0)==(b|0))b=a;else{x=0;va(127,q|0,f[b>>2]|0,f[a+-8>>2]|0);c=x;x=0;if(c&1){d=12;break a}b=f[j>>2]|0}a=0;while(1){if((a|0)==-1)break;c=a+-1|0;uSa(b+(c*12|0)|0);a=c}f[j>>2]=b+-12}while(0);a=f[d+8>>2]|0;if(!(o2a(a)|0)){if(!((X5a(f[f[d+4>>2]>>2]|0)|0)&(a|0)==0))break;a=f[h>>2]|0;if((a|0)==(f[i>>2]|0)){x=0;ua(524,q|0,m|0);d=x;x=0;if(d&1){d=12;break a}else break}else{f[a>>2]=f[m>>2];f[h>>2]=a+4;break}}d=N_a(f[d+4>>2]|0)|0;f[n>>2]=d;do if(d){b=f[q>>2]|0;a=(f[h>>2]|0)-b|0;if(!a)break;a=a>>2;while(1){a=a+-1|0;c=f[b+(a<<2)>>2]|0;if((c|0)==-1){d=43;break}x=0;b=ga(257,f[(f[(f[f[e>>2]>>2]|0)+(c<<2)>>2]|0)+4>>2]|0)|0;d=x;x=0;if(d&1){d=53;break a}f[o>>2]=b;if((f[b+8>>2]|0)==(f[(f[n>>2]|0)+8>>2]|0)){x=0;b=ia(103,s|0,n|0)|0;d=x;x=0;if(d&1){d=54;break a}if((f[b+8>>2]|0)==1?(f[(f[b>>2]|0)+16>>2]|0)==(f[o>>2]|0):0){x=0;b=ia(179,g|0,o|0)|0;d=x;x=0;if(d&1){d=55;break a}if((f[b+12>>2]|0)==1){d=51;break}}}if(!a){d=57;break}b=f[q>>2]|0}if((d|0)==43)break;else if((d|0)==51){if((f[(f[b+8>>2]|0)+8>>2]|0)!=(f[n>>2]|0)){d=52;break a}f[(f[f[e>>2]>>2]|0)+(c<<2)>>2]=0;f[(f[f[e>>2]>>2]|0)+(f[m>>2]<<2)>>2]=0;f[(f[q>>2]|0)+(a<<2)>>2]=-1;break b}else if((d|0)==57)break}while(0);a=f[h>>2]|0;if((a|0)==(f[i>>2]|0)){x=0;ua(524,q|0,l|0);d=x;x=0;if(d&1){d=66;break a}else break}else{f[a>>2]=f[l>>2];f[h>>2]=a+4;break}}while(0);b=(f[m>>2]|0)+1|0}switch(d|0){case 4:{M9(r);uSa(q);xV(s);u=p;return}case 11:{x=0;wa(71,103081,103099,166,103124);x=0;d=13;break}case 12:{a=Ia()|0;d=14;break}case 18:{f[h>>2]=b;x=0;wa(71,103081,103099,171,103124);x=0;d=13;break}case 28:{x=0;wa(71,103136,103099,184,103124);x=0;d=13;break}case 52:{x=0;wa(71,103157,103099,211,103124);x=0;a=Ia()|0;d=59;break}case 53:{a=Ia()|0;d=59;break}case 54:{a=Ia()|0;d=59;break}case 55:{a=Ia()|0;d=59;break}case 66:{a=Ia()|0;break}}if((d|0)==13){a=Ia()|0;d=14}M9(r);uSa(q)}xV(s);Ua(a|0)}function mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+80|0;s=p+16|0;i=p;q=p+60|0;j=f[a+60>>2]|0;o=a+136|0;k=a+52|0;h=f[a+56>>2]|0;while(1){if((h|0)==(j|0))break;g=f[h>>2]|0;kha(g,f[o>>2]|0);e=f[h>>2]|0;a:do if((e|0)==(f[k>>2]|0)){d=0;while(1){c=f[o>>2]|0;if(d>>>0>=c>>>0)break;if(FVa(b,d)|0)c=YSa(a)|0;else{gUa(i,n9(b,d)|0);f[s>>2]=f[i>>2];f[s+4>>2]=f[i+4>>2];f[s+8>>2]=f[i+8>>2];f[s+12>>2]=f[i+12>>2];c=AT(a,s)|0}f[(f[g>>2]|0)+(d<<2)>>2]=c;d=d+1|0}e=f[h>>2]|0}else{d=0;while(1){c=f[o>>2]|0;if(d>>>0>=c>>>0)break a;f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}}while(0);d=e+12|0;kha(d,c);c=0;while(1){if(c>>>0>=(f[o>>2]|0)>>>0)break;f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}h=h+4|0}qra(s);x=0;ua(1405,s|0,f[k>>2]|0);n=x;x=0;do if(n&1)c=Ia()|0;else{m=q+4|0;n=q+4|0;l=s+20|0;b:while(1){if(l$a(f[l>>2]|0)|0){r=73;break}x=0;k=ga(288,s|0)|0;j=x;x=0;if(j&1){r=27;break}c=k+48|0;d=f[c>>2]|0;e=f[k+52>>2]|0;do if((d|0)!=(e|0)){if((e-d|0)==4){c=f[d>>2]|0;d=c+12|0;if((k|0)==(d|0))break;x=0;va(127,k|0,f[d>>2]|0,f[c+16>>2]|0);j=x;x=0;if(j&1){r=27;break b}else break}x=0;ua(1406,q|0,c|0);j=x;x=0;if(j&1){r=32;break b}j=f[q>>2]|0;i=0;while(1){if(i>>>0>=(f[o>>2]|0)>>>0)break;d=(f[k>>2]|0)+(i<<2)|0;if(!(BQ(a,k,i,f[d>>2]|0)|0)){h=f[m>>2]|0;c=f[(f[(f[j>>2]|0)+12>>2]|0)+(i<<2)>>2]|0;e=j;c:while(1){b=(c|0)==0;while(1){e=e+4|0;if((e|0)==(h|0))break c;g=f[(f[(f[e>>2]|0)+12>>2]|0)+(i<<2)>>2]|0;if(b)break;if(!((c|0)==(g|0)|(g|0)==0)){r=40;break c}}c=g}if((r|0)==40){r=0;x=0;c=ja(66,a|0,k|0,i|0)|0;b=x;x=0;if(b&1){r=44;break b}d=(f[k>>2]|0)+(i<<2)|0}f[d>>2]=c}i=i+1|0}uSa(q)}while(0);x=0;ua(1407,q|0,k|0);j=x;x=0;if(j&1){r=54;break}d=f[k+28>>2]|0;i=f[q>>2]|0;h=i;c=f[k+24>>2]|0;while(1){if((c|0)==(d|0))break;x=0;e=ga(257,f[f[c>>2]>>2]|0)|0;j=x;x=0;if(j&1){r=58;break b}x=0;g=ja(67,a|0,f[e+12>>2]|0,i|0)|0;j=x;x=0;if(j&1){r=58;break b}f[i+(f[e+8>>2]<<2)>>2]=g;c=c+4|0}g=k+12|0;d=f[n>>2]|0;j=f[g>>2]|0;e=d;b=j;d:do if((d-h|0)==((f[k+16>>2]|0)-j|0)){c=b;d=i;while(1){if((d|0)==(e|0))break;if((f[d>>2]|0)!=(f[c>>2]|0)){r=59;break d}c=c+4|0;d=d+4|0}uSa(q)}else r=59;while(0);if((r|0)==59){r=0;d=f[o>>2]|0;c=0;while(1){if(c>>>0>=d>>>0)break;if((f[i+(c<<2)>>2]|0)>>>0<(f[b+(c<<2)>>2]|0)>>>0){r=63;break b}else c=c+1|0}_8(g,q);d=f[k+40>>2]|0;c=f[k+36>>2]|0;while(1){if((c|0)==(d|0))break;x=0;ua(1405,s|0,f[c>>2]|0);k=x;x=0;if(k&1){r=69;break b}c=c+4|0}uSa(q)}}if((r|0)==27){c=Ia()|0;break}else if((r|0)==32){c=Ia()|0;r=45}else if((r|0)==44){c=Ia()|0;uSa(q);r=45}else if((r|0)==54)c=Ia()|0;else if((r|0)==58){c=Ia()|0;r=71}else if((r|0)==63){x=0;wa(71,88373,88412,294,88453);x=0;c=Ia()|0;r=71}else if((r|0)==69){c=Ia()|0;r=71}else if((r|0)==73){Mfa(s);u=p;return}if((r|0)==45)break;else if((r|0)==71)uSa(q)}while(0);Mfa(s);Ua(c|0)}function ng(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;n=u;u=u+16|0;m=n;if(a){a=TTa(c,135112)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+11|0;if((b[c>>0]|0)<0){T0a(f[k>>2]|0,0);f[k+4>>2]=0}else{T0a(k,0);b[c>>0]=0}x=0;ta(470,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;r2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+11|0;if((b[c>>0]|0)<0){T0a(f[j>>2]|0,0);f[j+4>>2]=0}else{T0a(j,0);b[c>>0]=0}x=0;ta(470,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;r2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;b[e>>0]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;b[g>>0]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){T0a(f[h>>2]|0,0);f[h+4>>2]=0}else{T0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;r2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+11|0;if((b[c>>0]|0)<0){T0a(f[i>>2]|0,0);f[i+4>>2]=0}else{T0a(i,0);b[c>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}else{a=TTa(c,135104)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+11|0;if((b[c>>0]|0)<0){T0a(f[k>>2]|0,0);f[k+4>>2]=0}else{T0a(k,0);b[c>>0]=0}x=0;ta(470,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;r2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+11|0;if((b[c>>0]|0)<0){T0a(f[j>>2]|0,0);f[j+4>>2]=0}else{T0a(j,0);b[c>>0]=0}x=0;ta(470,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;r2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;b[e>>0]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;b[g>>0]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){T0a(f[h>>2]|0,0);f[h+4>>2]=0}else{T0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;r2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+11|0;if((b[c>>0]|0)<0){T0a(f[i>>2]|0,0);f[i+4>>2]=0}else{T0a(i,0);b[c>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}f[l>>2]=c;u=n;return}function og(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;n=u;u=u+16|0;m=n;if(a){a=TTa(c,135128)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+8+3|0;if((b[c>>0]|0)<0){E1a(f[k>>2]|0,0);f[k+4>>2]=0}else{E1a(k,0);b[c>>0]=0}x=0;ta(515,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;r2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}jTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+8+3|0;if((b[c>>0]|0)<0){E1a(f[j>>2]|0,0);f[j+4>>2]=0}else{E1a(j,0);b[c>>0]=0}x=0;ta(515,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;r2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}jTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[e>>2]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[g>>2]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){T0a(f[h>>2]|0,0);f[h+4>>2]=0}else{T0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;r2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+8+3|0;if((b[c>>0]|0)<0){E1a(f[i>>2]|0,0);f[i+4>>2]=0}else{E1a(i,0);b[c>>0]=0}x=0;ta(515,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}jTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}else{a=TTa(c,135120)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+8+3|0;if((b[c>>0]|0)<0){E1a(f[k>>2]|0,0);f[k+4>>2]=0}else{E1a(k,0);b[c>>0]=0}x=0;ta(515,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;r2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}jTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+8+3|0;if((b[c>>0]|0)<0){E1a(f[j>>2]|0,0);f[j+4>>2]=0}else{E1a(j,0);b[c>>0]=0}x=0;ta(515,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;r2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}jTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[e>>2]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[g>>2]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){T0a(f[h>>2]|0,0);f[h+4>>2]=0}else{T0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;r2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}HTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+8+3|0;if((b[c>>0]|0)<0){E1a(f[i>>2]|0,0);f[i+4>>2]=0}else{E1a(i,0);b[c>>0]=0}x=0;ta(515,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;r2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}jTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}f[l>>2]=c;u=n;return}function pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+192|0;j=k+92|0;i=k;a:do if((f[b+4>>2]|0)!=5){h=a+40|0;e=0;b:while(1){switch(f[b>>2]|0){case 22:{b=0;break a}case 15:case 9:case 11:{a=7;break b}case 13:{a=4;break b}case 16:case 17:case 18:break;default:{a=41;break b}}if(c)break a;a=e$a(b)|0;do if(!a){a=Y_a(b)|0;if(!a){a=yRa(b)|0;d=_Ya(f[h>>2]|0)|0;g=a+8|0;fA(j,d,f[g>>2]|0);d=lza(j)|0;V7(j);if(d){d=_Ya(f[h>>2]|0)|0;fA(j,d,f[a+12>>2]|0);d=lza(j)|0;V7(j);if(d)break a;d=_Ya(f[h>>2]|0)|0;fA(j,d,f[a+16>>2]|0);d=lza(j)|0;V7(j);if(d)break a;d=2;b=f[g>>2]|0;break}d=_Ya(f[h>>2]|0)|0;g=a+12|0;fA(j,d,f[g>>2]|0);d=lza(j)|0;V7(j);if(d){d=_Ya(f[h>>2]|0)|0;fA(j,d,f[a+16>>2]|0);d=lza(j)|0;V7(j);if(d)break a;d=2;b=f[g>>2]|0;break}else{g=_Ya(f[h>>2]|0)|0;b=a+16|0;fA(j,g,f[b>>2]|0);g=lza(j)|0;V7(j);if(!g){b=0;break a}d=2;b=f[b>>2]|0;break}}fA(j,_Ya(f[h>>2]|0)|0,0);qga(j,a);do if(!(lza(j)|0)){d=_Ya(f[h>>2]|0)|0;g=a+12|0;x=0;va(101,i|0,d|0,f[g>>2]|0);d=x;x=0;if(d&1){a=22;break b}d=lza(i)|0;V7(i);if(d){d=_Ya(f[h>>2]|0)|0;x=0;va(101,i|0,d|0,f[a+16>>2]|0);d=x;x=0;if(d&1){a=23;break b}d=lza(i)|0;V7(i);if(d){d=1;e=b;break}d=2;b=f[g>>2]|0;break}else{g=_Ya(f[h>>2]|0)|0;a=a+16|0;x=0;va(101,i|0,g|0,f[a>>2]|0);g=x;x=0;if(g&1){a=28;break b}g=lza(i)|0;V7(i);if(!g){d=1;e=0;break}d=2;b=f[a>>2]|0;break}}else{d=1;e=b}while(0);V7(j)}else{fA(j,_Ya(f[h>>2]|0)|0,0);wMa(j,a);if(!(lza(j)|0)){g=_Ya(f[h>>2]|0)|0;a=a+12|0;x=0;va(101,i|0,g|0,f[a>>2]|0);g=x;x=0;if(g&1){a=15;break b}g=lza(i)|0;V7(i);if(g){d=2;b=f[a>>2]|0}else{d=1;e=0}}else{d=1;e=b}V7(j)}while(0);if((d|0)==1){b=e;break a}}if((a|0)==4){if(c)break;fA(j,_Ya(f[h>>2]|0)|0,b);c=lza(j)|0;V7(j);if(c)break;b=(YRa(b)|0)+24|0;b=f[b>>2]|0;break}else if((a|0)==7){b=c?b:0;break}else if((a|0)==15){b=Ia()|0;V7(j)}else if((a|0)==22){b=Ia()|0;a=30}else if((a|0)==23){b=Ia()|0;a=30}else if((a|0)==28){b=Ia()|0;a=30}else if((a|0)==41)break;if((a|0)==30)V7(j);Ua(b|0)}while(0);u=k;return b|0}function qg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;I=u;u=u+128|0;o=I+112|0;J=I+56|0;z=I+4|0;A=I+48|0;B=I;E=a+12|0;F=J+36|0;H=z+36|0;v=c+144|0;t=a+16|0;q=J+40|0;r=J+44|0;s=J+48|0;p=o+4|0;w=J+4|0;y=z+4|0;e=1;g=0;a:while(1){if(!e){n=58;break}e=0;h=0;while(1){if(e>>>0>=(Bbb(f[t>>2]|0)|0)>>>0){e=h;break}j=JDa(E,e)|0;j=f[j>>2]|0;i=o$a(j)|0;do if(!i){m=JDa(E,e)|0;m=q$a(f[m>>2]|0)|0;if(!m){i=JDa(E,e)|0;i=C$a(f[i>>2]|0)|0;if(!i)break;k=o$a(f[i+12>>2]|0)|0;if(!k)break;else{m=j;j=i;l=k;n=24;break}}l=m+8|0;i=o$a(f[l>>2]|0)|0;if((i|0)!=0?!(VN(i)|0):0){j=i+8|0;if(Iab(f[j>>2]|0)|0){f[o>>2]=i;hCa(J,d);f[F>>2]=f[j>>2];x=0;ua(2339,J|0,o|0);k=x;x=0;if(k&1){n=13;break a}x=0;k=ja(75,b[q>>0]|0,f[r>>2]|0,f[s>>2]|0)|0;K=x;x=0;if(K&1){n=13;break a}if(k)i=0;else{bQa(z,d);f[H>>2]=f[j>>2];$Wa(z,c);x=0;ua(2340,z|0,o|0);K=x;x=0;if(K&1){n=16;break a}xVa(z)}xVa(J);if(!i)break}g=i+12|0;h=MCa(g)|0;h=f[h>>2]|0;if(o2a(f[h+4>>2]|0)|0){f[l>>2]=h;oXa(m);K=MCa(g)|0;f[K>>2]=m}rt(i);m=JDa(E,e)|0;f[m>>2]=i;m=i;j=0;g=1;l=i;h=1;n=24}}else{m=j;j=0;l=i;n=24}while(0);if((n|0)==24){n=0;if(!(Iab(f[l+8>>2]|0)|0)?(C=l+12|0,D=Bbb(f[l+16>>2]|0)|0,(D|0)!=0):0){if(!j){i=0;n=33;break}k=f[j+8>>2]|0;i=D;while(1){j=i+-1|0;if((j|0)<=-1){i=0;break}K=JDa(C,j)|0;K=f[K>>2]|0;f[A>>2]=k;f[o>>2]=f[A>>2];if(MM(K,o)|0)break;else i=j}if((i|0)!=(D|0)){if(!i){i=0;n=33;break}K=MCa(C)|0;if(!(o2a(f[(f[K>>2]|0)+4>>2]|0)|0)){n=33;break}}}}e=e+1|0}if((n|0)==33){n=0;IVa(o,v);g=0;while(1){if((g|0)==(e|0))break;K=JDa(E,g)|0;aaa(o,f[K>>2]|0);g=g+1|0}h=(i|0)!=0;if(h)aaa(o,m);g=i;while(1){if(g>>>0>=D>>>0)break;K=JDa(C,g)|0;aaa(o,f[K>>2]|0);g=g+1|0}if(h?(d7(C,i),rt(l),G=C$a(m)|0,G|0):0)o_a(G);while(1){e=e+1|0;if(e>>>0>=(Bbb(f[t>>2]|0)|0)>>>0)break;K=JDa(E,e)|0;aaa(o,f[K>>2]|0)}if(!(l$a(f[p>>2]|0)|0)){h=MCa(o)|0;h=f[h>>2]|0;I$a(J,o);GUa(z,o);e=f[z>>2]|0;g=f[y>>2]|0;while(1){if(!(lTa(f[J>>2]|0,f[w>>2]|0,e,g)|0))break;i=LOa(J)|0;j=f[i>>2]|0;if((j|0)!=(h|0)?o2a(f[j+4>>2]|0)|0:0){U0a(B,c);K=gNa(f[B>>2]|0,f[i>>2]|0)|0;f[i>>2]=K}RYa(J)}}ema(E,o);e=1;g=1}e=(e&1)!=0}if((n|0)==13)e=Ia()|0;else if((n|0)==16){e=Ia()|0;xVa(z)}else if((n|0)==58){if(g)XJa(a,f[a+4>>2]|0);u=I;return}xVa(J);Ua(e|0)}function rg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;if(!a)return;c=a+-8|0;e=f[33306]|0;a=f[a+-4>>2]|0;b=a&-8;j=c+b|0;do if(!(a&1)){d=f[c>>2]|0;if(!(a&3))return;h=c+(0-d)|0;g=d+b|0;if(h>>>0>>0)return;if((f[33307]|0)==(h|0)){a=j+4|0;b=f[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}f[33304]=g;f[a>>2]=b&-2;f[h+4>>2]=g|1;f[h+g>>2]=g;return}c=d>>>3;if(d>>>0<256){a=f[h+8>>2]|0;b=f[h+12>>2]|0;if((b|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=b;f[b+8>>2]=a;i=h;b=g;break}}e=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;c=b+4|0;a=f[c>>2]|0;if(!a){a=f[b>>2]|0;if(!a){a=0;break}}else b=c;while(1){d=a+20|0;c=f[d>>2]|0;if(!c){d=a+16|0;c=f[d>>2]|0;if(!c)break;else{a=c;b=d}}else{a=c;b=d}}f[b>>2]=0}else{i=f[h+8>>2]|0;f[i+12>>2]=a;f[a+8>>2]=i}while(0);if(e){b=f[h+28>>2]|0;c=133512+(b<<2)|0;if((f[c>>2]|0)==(h|0)){f[c>>2]=a;if(!a){f[33303]=f[33303]&~(1<>2]|0)==(h|0)?i:e+20|0)>>2]=a;if(!a){i=h;b=g;break}}f[a+24>>2]=e;b=h+16|0;c=f[b>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}b=f[b+4>>2]|0;if(b){f[a+20>>2]=b;f[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=c;h=c}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){if((f[33308]|0)==(j|0)){j=(f[33305]|0)+b|0;f[33305]=j;f[33308]=i;f[i+4>>2]=j|1;if((i|0)!=(f[33307]|0))return;f[33307]=0;f[33304]=0;return}if((f[33307]|0)==(j|0)){j=(f[33304]|0)+b|0;f[33304]=j;f[33307]=h;f[i+4>>2]=j|1;f[h+j>>2]=j;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[j+8>>2]|0;a=f[j+12>>2]|0;if((a|0)==(b|0)){f[33302]=f[33302]&~(1<>2]=a;f[a+8>>2]=b;break}}else{g=f[j+24>>2]|0;a=f[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;c=b+4|0;a=f[c>>2]|0;if(!a){a=f[b>>2]|0;if(!a){c=0;break}}else b=c;while(1){d=a+20|0;c=f[d>>2]|0;if(!c){d=a+16|0;c=f[d>>2]|0;if(!c)break;else{a=c;b=d}}else{a=c;b=d}}f[b>>2]=0;c=a}else{c=f[j+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[j+28>>2]|0;b=133512+(a<<2)|0;if((f[b>>2]|0)==(j|0)){f[b>>2]=c;if(!c){f[33303]=f[33303]&~(1<>2]|0)==(j|0)?d:g+20|0)>>2]=c;if(!c)break}f[c+24>>2]=g;a=j+16|0;b=f[a>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}a=f[a+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[i+4>>2]=e|1;f[h+e>>2]=e;if((i|0)==(f[33307]|0)){f[33304]=e;return}}else{f[a>>2]=d&-2;f[i+4>>2]=b|1;f[h+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=133248+(a<<1<<2)|0;b=f[33302]|0;a=1<>2]|0}f[b>>2]=i;f[a+12>>2]=i;f[i+8>>2]=a;f[i+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)d=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;d=14-(g|h|d)+(j<>>15)|0;d=e>>>(d+7|0)&1|d<<1}else d=0;a=133512+(d<<2)|0;f[i+28>>2]=d;f[i+20>>2]=0;f[i+16>>2]=0;b=f[33303]|0;c=1<>2]=i;f[i+24>>2]=a;f[i+12>>2]=i;f[i+8>>2]=i}else{a=f[a>>2]|0;b:do if((f[a+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=a+16+(d>>>31<<2)|0;b=f[c>>2]|0;if(!b)break;if((f[b+4>>2]&-8|0)==(e|0)){a=b;break b}else{d=d<<1;a=b}}f[c>>2]=i;f[i+24>>2]=a;f[i+12>>2]=i;f[i+8>>2]=i;break a}while(0);h=a+8|0;j=f[h>>2]|0;f[j+12>>2]=i;f[h>>2]=i;f[i+8>>2]=j;f[i+12>>2]=a;f[i+24>>2]=0}while(0);j=(f[33310]|0)+-1|0;f[33310]=j;if(j|0)return;a=133664;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[33310]=-1;return}function sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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;q=u;u=u+48|0;r=q+32|0;s=q+20|0;o=q+8|0;m=q+4|0;n=q;awa(r,b);f[s>>2]=s;i=s+4|0;f[i>>2]=s;j=s+8|0;f[j>>2]=0;k=a+16|0;h=Bbb(f[k>>2]|0)|0;l=r+4|0;p=L6a(a)|0;a=h;while(1){d=a;if((p|0)==(d|0)){c=3;break}a=f[a+8>>2]|0;f[o>>2]=a;x=0;c=ia(143,l|0,o|0)|0;h=x;x=0;if(h&1){c=9;break}f[c>>2]=a;x=0;a=ia(141,b|0,o|0)|0;h=x;x=0;if(h&1){c=9;break}x=0;ua(1459,a|0,o|0);h=x;x=0;if(h&1){c=9;break}x=0;ua(1491,s|0,o|0);h=x;x=0;if(h&1){c=9;break}a=f[d+4>>2]|0}do if((c|0)==3){h=r+8|0;a:while(1){if(!(f[j>>2]|0)){c=31;break}f[o>>2]=f[(f[i>>2]|0)+8>>2];Tma(s);x=0;a=ia(143,l|0,o|0)|0;g=x;x=0;if(g&1){c=13;break}d=f[a>>2]|0;f[m>>2]=d;e=d;if(d){c=f[o>>2]|0;a=Bbb(f[c+16>>2]|0)|0;while(1){g=a;if((L6a(c)|0)==(g|0))break;a=f[a+8>>2]|0;f[n>>2]=a;c=eX(l,a)|0;if((c|0)==(h|0)){x=0;a=ia(143,l|0,n|0)|0;c=x;x=0;if(c&1){c=23;break a}f[a>>2]=e;x=0;a=ia(141,b|0,m|0)|0;c=x;x=0;if(c&1){c=23;break a}x=0;ua(1459,a|0,n|0);c=x;x=0;if(c&1){c=23;break a}x=0;ua(1491,s|0,n|0);c=x;x=0;if(c&1){c=23;break a}}else{c=f[c+20>>2]|0;if(!((c|0)==0|(c|0)==(d|0))?(x=0,ua(1495,r|0,a|0),c=x,x=0,c&1):0){c=25;break a}}a=f[g+4>>2]|0;c=f[o>>2]|0}}}if((c|0)==13)a=Ia()|0;else if((c|0)==23){a=Ia()|0;c=28}else if((c|0)==25){a=Ia()|0;c=28}else if((c|0)==31){h=o+4|0;i=o+8|0;a=Bbb(f[k>>2]|0)|0;b:while(1){j=a;if((p|0)==(j|0)){c=33;break}x=0;a=ia(141,b|0,a+8|0)|0;g=x;x=0;if(g&1){c=38;break}f[o>>2]=o;f[h>>2]=o;f[i>>2]=0;g=Bbb(f[a+16>>2]|0)|0;e=L6a(a)|0;a=g;while(1){g=a;if((e|0)==(g|0))break;c=f[a+8>>2]|0;f[m>>2]=c;a=Bbb(f[c+40>>2]|0)|0;while(1){d=a;if((L6a(c+24|0)|0)==(d|0))break;f[n>>2]=f[a+8>>2];x=0;a=ia(143,l|0,n|0)|0;c=x;x=0;if(c&1){c=47;break b}a=f[a>>2]|0;x=0;c=ia(143,l|0,m|0)|0;t=x;x=0;if(t&1){c=47;break b}if((a|0)!=(f[c>>2]|0)?(x=0,ua(1491,o|0,m|0),t=x,x=0,t&1):0){c=47;break b}a=f[d+4>>2]|0;c=f[m>>2]|0}a=f[g+4>>2]|0}while(1){if(!(f[i>>2]|0))break;t=f[(f[h>>2]|0)+8>>2]|0;Tma(o);x=0;ua(1495,r|0,t|0);t=x;x=0;if(t&1){c=50;break b}}dVa(o);a=f[j+4>>2]|0}if((c|0)==33){a=Bbb(f[k>>2]|0)|0;while(1){d=a;if((p|0)==(d|0)){c=54;break}a=a+8|0;x=0;c=ia(141,b|0,a|0)|0;t=x;x=0;if(t&1){c=59;break}if(!(Bbb(f[c+8>>2]|0)|0))aW(b,f[a>>2]|0);a=f[d+4>>2]|0}if((c|0)==54){dVa(s);nza(r);u=q;return}else if((c|0)==59){a=Ia()|0;break}}else if((c|0)==38){a=Ia()|0;break}else if((c|0)==47)a=Ia()|0;else if((c|0)==50)a=Ia()|0;dVa(o);break}}else if((c|0)==9)a=Ia()|0;while(0);dVa(s);nza(r);Ua(a|0)}function tg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110678)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);jGa(a,f[c+12>>2]|0);a:do if((f[c+4>>2]|0)==5)dTa(f[a+28>>2]|0);else do switch(f[c+8>>2]|0){case 0:{Ev(f[a+28>>2]|0,103)|0;break a}case 2:{Ev(f[a+28>>2]|0,104)|0;break a}case 4:{Ev(f[a+28>>2]|0,105)|0;break a}case 20:{Ev(f[a+28>>2]|0,69)|0;break a}case 1:{Ev(f[a+28>>2]|0,121)|0;break a}case 3:{Ev(f[a+28>>2]|0,122)|0;break a}case 5:{Ev(f[a+28>>2]|0,123)|0;break a}case 21:{Ev(f[a+28>>2]|0,80)|0;break a}case 6:{Ev(f[a+28>>2]|0,-116)|0;break a}case 8:{Ev(f[a+28>>2]|0,-117)|0;break a}case 10:{Ev(f[a+28>>2]|0,-115)|0;break a}case 12:{Ev(f[a+28>>2]|0,-114)|0;break a}case 14:{Ev(f[a+28>>2]|0,-113)|0;break a}case 16:{Ev(f[a+28>>2]|0,-112)|0;break a}case 18:{Ev(f[a+28>>2]|0,-111)|0;break a}case 7:{Ev(f[a+28>>2]|0,-102)|0;break a}case 9:{Ev(f[a+28>>2]|0,-103)|0;break a}case 11:{Ev(f[a+28>>2]|0,-101)|0;break a}case 13:{Ev(f[a+28>>2]|0,-100)|0;break a}case 15:{Ev(f[a+28>>2]|0,-99)|0;break a}case 17:{Ev(f[a+28>>2]|0,-98)|0;break a}case 19:{Ev(f[a+28>>2]|0,-97)|0;break a}case 22:{Ev(f[a+28>>2]|0,-84)|0;break a}case 23:{Ev(f[a+28>>2]|0,-83)|0;break a}case 24:{Ev(f[a+28>>2]|0,-89)|0;break a}case 27:{Ev(f[a+28>>2]|0,-87)|0;break a}case 28:{Ev(f[a+28>>2]|0,-81)|0;break a}case 25:{Ev(f[a+28>>2]|0,-88)|0;break a}case 26:{Ev(f[a+28>>2]|0,-82)|0;break a}case 31:{Ev(f[a+28>>2]|0,-85)|0;break a}case 32:{Ev(f[a+28>>2]|0,-79)|0;break a}case 29:{Ev(f[a+28>>2]|0,-86)|0;break a}case 30:{Ev(f[a+28>>2]|0,-80)|0;break a}case 37:{Ev(f[a+28>>2]|0,-77)|0;break a}case 38:{Ev(f[a+28>>2]|0,-72)|0;break a}case 35:{Ev(f[a+28>>2]|0,-78)|0;break a}case 36:{Ev(f[a+28>>2]|0,-73)|0;break a}case 41:{Ev(f[a+28>>2]|0,-75)|0;break a}case 42:{Ev(f[a+28>>2]|0,-70)|0;break a}case 39:{Ev(f[a+28>>2]|0,-76)|0;break a}case 40:{Ev(f[a+28>>2]|0,-71)|0;break a}case 44:{Ev(f[a+28>>2]|0,-74)|0;break a}case 43:{Ev(f[a+28>>2]|0,-69)|0;break a}case 33:{Ev(f[a+28>>2]|0,-68)|0;break a}case 34:{Ev(f[a+28>>2]|0,-67)|0;break a}case 45:{Ev(f[a+28>>2]|0,-66)|0;break a}case 46:{Ev(f[a+28>>2]|0,-65)|0;break a}case 47:{Ev(f[a+28>>2]|0,-64)|0;break a}case 48:{Ev(f[a+28>>2]|0,-63)|0;break a}case 49:{Ev(f[a+28>>2]|0,-62)|0;break a}case 50:{Ev(f[a+28>>2]|0,-61)|0;break a}case 51:{Ev(f[a+28>>2]|0,-60)|0;break a}default:hb()}while(0);while(0);u=i;return}function ug(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;y=u;u=u+240|0;w=y+192|0;t=y+160|0;B=y+220|0;z=y+208|0;v=y+204|0;q=y;r=y+200|0;s=y+196|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}ZXa(z,e);x=0;a=ia(73,f[z>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,ka(f[(f[a>>2]|0)+32>>2]|0,a|0,31216,31242,t|0)|0,p=x,x=0,!(p&1)):0){JCa(z);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}p=z+11|0;if((b[p>>0]|0)<0)a=(f[z+8>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);o=x;x=0;if(o&1)a=Ia()|0;else{a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a;f[r>>2]=q;f[s>>2]=0;n=z+4|0;o=z+8|0;i=f[c>>2]|0;j=i;a:while(1){if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;m=x;x=0;if(m&1){A=35;break}}else e=X6a(b[e>>0]|0)|0;if($1a(e,-1)|0){f[c>>2]=0;m=0;j=0;k=1}else{m=i;k=0}}else{m=0;j=0;k=1}i=f[d>>2]|0;do if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;l=x;x=0;if(l&1){A=35;break a}}else e=X6a(b[e>>0]|0)|0;if(!($1a(e,-1)|0))if(k)break;else{A=46;break a}else{f[d>>2]=0;A=25;break}}else A=25;while(0);if((A|0)==25){A=0;if(k){i=0;A=46;break}else i=0}e=b[p>>0]|0;e=e<<24>>24<0?f[n>>2]|0:e&255;if((f[v>>2]|0)==(a+e|0)){x=0;ua(108,z|0,e<<1|0);l=x;x=0;if(l&1){A=37;break}if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);l=x;x=0;if(l&1){A=37;break}a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a+e}k=m+12|0;e=f[k>>2]|0;l=m+16|0;if((e|0)==(f[l>>2]|0)){x=0;e=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else e=X6a(b[e>>0]|0)|0;if(Ir(e&255,16,a,v,s,0,B,q,r,t)|0){A=46;break}e=f[k>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ga(f[(f[m>>2]|0)+40>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else f[k>>2]=e+1;i=m}if((A|0)==35)a=Ia()|0;else if((A|0)==37)a=Ia()|0;else if((A|0)==46){x=0;ua(108,z|0,(f[v>>2]|0)-a|0);C=x;x=0;b:do if(!(C&1)){t=b[p>>0]|0;v=f[z>>2]|0;C=fOa()|0;f[w>>2]=h;if((Hla(t<<24>>24<0?v:z,C,0,w)|0)!=1)f[g>>2]=4;if(m){a=f[m+12>>2]|0;if((a|0)==(f[m+16>>2]|0)){x=0;a=ga(f[(f[j>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1)break}else a=X6a(b[a>>0]|0)|0;if($1a(a,-1)|0){f[c>>2]=0;e=1}else e=0}else e=1;do if(i){a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0)){x=0;a=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;C=x;x=0;if(C&1)break b}else a=X6a(b[a>>0]|0)|0;if(!($1a(a,-1)|0))if(e)break;else{A=63;break}else{f[d>>2]=0;A=61;break}}else A=61;while(0);if((A|0)==61?e:0)A=63;if((A|0)==63)f[g>>2]=f[g>>2]|2;C=f[c>>2]|0;HTa(z);HTa(B);u=y;return C|0}while(0);a=Ia()|0}}HTa(z)}else{a=Ia()|0;JCa(z)}HTa(B);Ua(a|0);return 0}function vg(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;y=u;u=u+112|0;j=y;l=(e-d|0)/12|0;do if(l>>>0>100){k=Kc(l)|0;if(!k){x=0;sa(10);x=0;d=Ia()|0;break}else{j=k;w=k;n=5;break}}else{w=0;n=5}while(0);if((n|0)==5){n=d;o=j;k=0;while(1){if((n|0)==(e|0))break;m=b[n+11>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if(!m){b[o>>0]=2;k=k+1|0;l=l+-1|0}else b[o>>0]=1;n=n+12|0;o=o+1|0}v=0;r=k;o=c;a:while(1){k=f[a>>2]|0;do if(k){m=f[k+12>>2]|0;if((m|0)==(f[k+16>>2]|0)){x=0;k=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;t=x;x=0;if(t&1){n=40;break a}}else k=X6a(b[m>>0]|0)|0;if($1a(k,-1)|0){f[a>>2]=0;n=1;break}else{n=(f[a>>2]|0)==0;break}}else n=1;while(0);if(!o){t=0;k=1;o=0}else{k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;t=x;x=0;if(t&1){n=40;break}}else k=X6a(b[k>>0]|0)|0;s=$1a(k,-1)|0;t=s?0:o;k=s;o=s?0:o}m=f[a>>2]|0;if(!((l|0)!=0&(n^k))){n=28;break}k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;s=x;x=0;if(s&1){n=46;break}}else k=X6a(b[k>>0]|0)|0;k=k&255;if(!i){x=0;k=ia(f[(f[g>>2]|0)+12>>2]|0,g|0,k|0)|0;s=x;x=0;if(s&1){n=46;break}else c=k}else c=k;s=v+1|0;p=d;o=0;q=j;k=r;while(1){if((p|0)==(e|0))break;do if((b[q>>0]|0)==1){n=p+11|0;if((b[n>>0]|0)<0)m=f[p>>2]|0;else m=p;m=b[m+v>>0]|0;if(!i){x=0;m=ia(f[(f[g>>2]|0)+12>>2]|0,g|0,m|0)|0;r=x;x=0;if(r&1){n=56;break a}}if(c<<24>>24!=m<<24>>24){b[q>>0]=0;m=o;l=l+-1|0;break}m=b[n>>0]|0;if(m<<24>>24<0)m=f[p+4>>2]|0;else m=m&255;if((m|0)==(s|0)){b[q>>0]=2;m=1;k=k+1|0;l=l+-1|0}else m=1}else m=o;while(0);p=p+12|0;o=m;q=q+1|0}b:do if(o){m=f[a>>2]|0;n=m+12|0;o=f[n>>2]|0;if((o|0)==(f[m+16>>2]|0)){x=0;ga(f[(f[m>>2]|0)+40>>2]|0,m|0)|0;v=x;x=0;if(v&1){n=72;break a}}else f[n>>2]=o+1;if((k+l|0)>>>0>1){n=d;o=j;while(1){if((n|0)==(e|0))break b;if((b[o>>0]|0)==2){m=b[n+11>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if((m|0)!=(s|0)){b[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}}while(0);v=s;r=k;o=t}if((n|0)==28){do if(m){k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;i=x;x=0;if(i&1)break}else k=X6a(b[k>>0]|0)|0;if($1a(k,-1)|0){f[a>>2]=0;l=1;n=35;break}else{l=(f[a>>2]|0)==0;n=35;break}}else{l=1;n=35}while(0);do if((n|0)==35){if(o){k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;a=x;x=0;if(a&1)break}else k=X6a(b[k>>0]|0)|0;if(!($1a(k,-1)|0)){if(!l)n=82}else n=80}else n=80;if((n|0)==80?l:0)n=82;if((n|0)==82)f[h>>2]=f[h>>2]|2;while(1){if((d|0)==(e|0)){n=88;break}if((b[j>>0]|0)==2)break;d=d+12|0;j=j+1|0}if((n|0)==88){f[h>>2]=f[h>>2]|4;d=e}if(w|0)rg(w);u=y;return d|0}while(0);d=Ia()|0}else if((n|0)==40)d=Ia()|0;else if((n|0)==46)d=Ia()|0;else if((n|0)==56)d=Ia()|0;else if((n|0)==72)d=Ia()|0;if(w)rg(w)}Ua(d|0);return 0}function wg(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;y=u;u=u+304|0;w=y+264|0;t=y+160|0;B=y+292|0;z=y+280|0;v=y+276|0;q=y;r=y+272|0;s=y+268|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}ZXa(z,e);x=0;a=ia(73,f[z>>2]|0,134912)|0;p=x;x=0;if(!(p&1)?(x=0,ka(f[(f[a>>2]|0)+48>>2]|0,a|0,31216,31242,t|0)|0,p=x,x=0,!(p&1)):0){JCa(z);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}p=z+11|0;if((b[p>>0]|0)<0)a=(f[z+8>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);o=x;x=0;if(o&1)a=Ia()|0;else{a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a;f[r>>2]=q;f[s>>2]=0;n=z+4|0;o=z+8|0;i=f[c>>2]|0;j=i;a:while(1){if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;m=x;x=0;if(m&1){A=35;break}}else e=Bbb(f[e>>2]|0)|0;if(T5a(e)|0){f[c>>2]=0;m=0;j=0;k=1}else{m=i;k=0}}else{m=0;j=0;k=1}i=f[d>>2]|0;do if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;l=x;x=0;if(l&1){A=35;break a}}else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0))if(k)break;else{A=46;break a}else{f[d>>2]=0;A=25;break}}else A=25;while(0);if((A|0)==25){A=0;if(k){i=0;A=46;break}else i=0}e=b[p>>0]|0;e=e<<24>>24<0?f[n>>2]|0:e&255;if((f[v>>2]|0)==(a+e|0)){x=0;ua(108,z|0,e<<1|0);l=x;x=0;if(l&1){A=37;break}if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);l=x;x=0;if(l&1){A=37;break}a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a+e}k=m+12|0;e=f[k>>2]|0;l=m+16|0;if((e|0)==(f[l>>2]|0)){x=0;e=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else e=Bbb(f[e>>2]|0)|0;if(Jr(e,16,a,v,s,0,B,q,r,t)|0){A=46;break}e=f[k>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ga(f[(f[m>>2]|0)+40>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else f[k>>2]=e+4;i=m}if((A|0)==35)a=Ia()|0;else if((A|0)==37)a=Ia()|0;else if((A|0)==46){x=0;ua(108,z|0,(f[v>>2]|0)-a|0);C=x;x=0;b:do if(!(C&1)){t=b[p>>0]|0;v=f[z>>2]|0;C=fOa()|0;f[w>>2]=h;if((Hla(t<<24>>24<0?v:z,C,0,w)|0)!=1)f[g>>2]=4;if(m){a=f[m+12>>2]|0;if((a|0)==(f[m+16>>2]|0)){x=0;a=ga(f[(f[j>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1)break}else a=Bbb(f[a>>2]|0)|0;if(T5a(a)|0){f[c>>2]=0;e=1}else e=0}else e=1;do if(i){a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0)){x=0;a=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;C=x;x=0;if(C&1)break b}else a=Bbb(f[a>>2]|0)|0;if(!(T5a(a)|0))if(e)break;else{A=63;break}else{f[d>>2]=0;A=61;break}}else A=61;while(0);if((A|0)==61?e:0)A=63;if((A|0)==63)f[g>>2]=f[g>>2]|2;C=f[c>>2]|0;HTa(z);HTa(B);u=y;return C|0}while(0);a=Ia()|0}}HTa(z)}else{a=Ia()|0;JCa(z)}HTa(B);Ua(a|0);return 0}function xg(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;w=u;u=u+112|0;j=w;l=(e-d|0)/12|0;do if(l>>>0>100){k=Kc(l)|0;if(!k){x=0;sa(10);x=0;d=Ia()|0;break}else{j=k;v=k;n=5;break}}else{v=0;n=5}while(0);if((n|0)==5){n=d;o=j;k=0;while(1){if((n|0)==(e|0))break;m=b[n+8+3>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if(!m){b[o>>0]=2;k=k+1|0;l=l+-1|0}else b[o>>0]=1;n=n+12|0;o=o+1|0}t=0;q=k;o=c;a:while(1){k=f[a>>2]|0;do if(k){m=f[k+12>>2]|0;if((m|0)==(f[k+16>>2]|0)){x=0;k=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;s=x;x=0;if(s&1){n=40;break a}}else k=Bbb(f[m>>2]|0)|0;if(T5a(k)|0){f[a>>2]=0;n=1;break}else{n=(f[a>>2]|0)==0;break}}else n=1;while(0);if(!o){s=0;k=1;o=0}else{k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;s=x;x=0;if(s&1){n=40;break}}else k=Bbb(f[k>>2]|0)|0;r=T5a(k)|0;s=r?0:o;k=r;o=r?0:o}m=f[a>>2]|0;if(!((l|0)!=0&(n^k))){n=28;break}k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;r=x;x=0;if(r&1){n=46;break}}else k=Bbb(f[k>>2]|0)|0;if(!i){x=0;k=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,k|0)|0;r=x;x=0;if(r&1){n=46;break}}r=t+1|0;c=d;o=0;p=j;while(1){if((c|0)==(e|0))break;do if((b[p>>0]|0)==1){n=c+8+3|0;if((b[n>>0]|0)<0)m=f[c>>2]|0;else m=c;m=f[m+(t<<2)>>2]|0;if(!i){x=0;m=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,m|0)|0;y=x;x=0;if(y&1){n=56;break a}}if((k|0)!=(m|0)){b[p>>0]=0;m=o;n=q;l=l+-1|0;break}m=b[n>>0]|0;if(m<<24>>24<0)m=f[c+4>>2]|0;else m=m&255;if((m|0)==(r|0)){b[p>>0]=2;m=1;n=q+1|0;l=l+-1|0}else{m=1;n=q}}else{m=o;n=q}while(0);c=c+12|0;o=m;p=p+1|0;q=n}b:do if(o){k=f[a>>2]|0;m=k+12|0;n=f[m>>2]|0;if((n|0)==(f[k+16>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;y=x;x=0;if(y&1){n=72;break a}}else f[m>>2]=n+4;if((q+l|0)>>>0>1){n=d;o=j;k=q;while(1){if((n|0)==(e|0))break b;if((b[o>>0]|0)==2){m=b[n+8+3>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if((m|0)!=(r|0)){b[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}else k=q}else k=q;while(0);t=r;q=k;o=s}if((n|0)==28){do if(m){k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;y=x;x=0;if(y&1)break}else k=Bbb(f[k>>2]|0)|0;if(T5a(k)|0){f[a>>2]=0;l=1;n=35;break}else{l=(f[a>>2]|0)==0;n=35;break}}else{l=1;n=35}while(0);do if((n|0)==35){if(o){k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;y=x;x=0;if(y&1)break}else k=Bbb(f[k>>2]|0)|0;if(!(T5a(k)|0)){if(!l)n=82}else n=80}else n=80;if((n|0)==80?l:0)n=82;if((n|0)==82)f[h>>2]=f[h>>2]|2;while(1){if((d|0)==(e|0)){n=88;break}if((b[j>>0]|0)==2)break;d=d+12|0;j=j+1|0}if((n|0)==88){f[h>>2]=f[h>>2]|4;d=e}if(v|0)rg(v);u=w;return d|0}while(0);d=Ia()|0}else if((n|0)==40)d=Ia()|0;else if((n|0)==46)d=Ia()|0;else if((n|0)==56)d=Ia()|0;else if((n|0)==72)d=Ia()|0;if(v)rg(v)}Ua(d|0);return 0}function yg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+48|0;t=s+24|0;i=s+12|0;l=s;m=c+12|0;do if(b[m>>0]|0){e=Am(yCa(134176,97361)|0,d)|0;ZXa(t,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[t>>2]|0,134880)|0;r=x;x=0;if(!(r&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,r=x,x=0,!(r&1)):0){JCa(t);Wq(e,h)|0;du(e)|0;break}s=Ia()|0;JCa(t);Ua(s|0)}while(0);e=c+156|0;h=c+160|0;g=(f[h>>2]|0)-(f[e>>2]|0)>>3;do if(g>>>0<(d+1|0)>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,97377,h7a(97377)|0);x=0;ua(1869,c|0,i|0);r=x;x=0;if(r&1){e=Ia()|0;HTa(i);break}else{HTa(i);g=(f[h>>2]|0)-(f[e>>2]|0)>>3;o=10;break}}else o=10;while(0);a:do if((o|0)==10){i=g+~d|0;do if(i>>>0>=g>>>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,97398,h7a(97398)|0);x=0;ua(1869,c|0,l|0);r=x;x=0;if(r&1){e=Ia()|0;HTa(l);break a}else{HTa(l);break}}while(0);do if(b[m>>0]|0){h=yCa(134176,97420)|0;h=wfa(h,f[(f[e>>2]|0)+(i<<3)>>2]|0)|0;g=yCa(h,97433)|0;g=Am(g,f[(f[e>>2]|0)+(i<<3)+4>>2]|0)|0;ZXa(t,h+(f[(f[h>>2]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[t>>2]|0,134880)|0;r=x;x=0;if(!(r&1)?(x=0,p=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,r=x,x=0,!(r&1)):0){JCa(t);Wq(g,p)|0;du(g)|0;break}s=Ia()|0;JCa(t);Ua(s|0)}while(0);r=(f[e>>2]|0)+(i<<3)|0;b:do if(!(b[c+201>>0]|0)){q=c+168|0;p=v8a(r)|0;l=c+172|0;m=f[l>>2]|0;o=(m|0)==0;c:do if(!o){i=m+-1|0;d=(i&m|0)==0;if(!d)if(p>>>0>>0)g=p;else g=(p>>>0)%(m>>>0)|0;else g=i&p;e=f[(f[q>>2]|0)+(g<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break c;h=f[e+4>>2]|0;if((h|0)!=(p|0)){if(!d){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0}else h=h&i;if((h|0)!=(g|0))break c}if($1a(f[e+8>>2]|0,f[r>>2]|0)|0)break b}}else g=0;while(0);R6(t,q,p,r);d=c+180|0;j=+(((f[d>>2]|0)+1|0)>>>0);k=+n[c+184>>2];do if(o|k*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;m=~~+W(+(j/k))>>>0;x=0;ua(680,q|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){e=Ia()|0;g=f[t>>2]|0;f[t>>2]=0;if(g|0)ubb(g);Ua(e|0)}e=f[l>>2]|0;g=e+-1|0;if(!(g&e)){i=e;g=g&p;break}if(p>>>0>>0){i=e;g=p}else{i=e;g=(p>>>0)%(e>>>0)|0}}else i=m;while(0);e=f[(f[q>>2]|0)+(g<<2)>>2]|0;if(!e){e=c+176|0;h=f[t>>2]|0;f[h>>2]=f[e>>2];f[e>>2]=h;f[(f[q>>2]|0)+(g<<2)>>2]=e;e=f[h>>2]|0;if(!e)e=t;else{e=f[e+4>>2]|0;g=i+-1|0;if(g&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&g;f[(f[q>>2]|0)+(e<<2)>>2]=h;e=t}}else{c=f[t>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=c;e=t}f[d>>2]=(f[d>>2]|0)+1;f[e>>2]=0}while(0);c=f[r+4>>2]|0;t=a;f[t>>2]=f[r>>2];f[t+4>>2]=c;u=s;return}while(0);Ua(e|0)}function zg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+48|0;m=y+36|0;l=y+32|0;s=y+28|0;t=y+24|0;v=y+20|0;w=y+16|0;x=y+12|0;n=y+8|0;o=y+4|0;q=y;a=f[a>>2]|0;j=Bbb(a)|0;i=f[a>>2]|0;a:do if(Gab(i)|0){if(c|0?(fNa(m,qNa(j)|0,1),r=Y8(c,m)|0,(r|0)!=9):0){k=r;break}if(!d){if(FBa(a,133092)|0){k=1;break}if(FBa(a,133088)|0){k=1;break}k=FBa(a,133084)|0;k=k?0:9;break}if(Gab(f[33301]|0)|0){k=pPa(j)|0;f[33301]=f[k>>2];k=2;break}if(FBa(a,133204)|0)k=2;else Ca(118331,118354,68,118402)}else{if(rab(i)|0){k=oPa(j)|0;k=((_ab(+p[k>>3])|0)^1)&1;break}r=g0a(a,0)|0;r=qNa(Bbb(f[r>>2]|0)|0)|0;b:do switch(b[r>>0]|0){case 117:{x=g0a(a,0)|0;if(FBa(f[x>>2]|0,133068)|0){x=g0a(a,1)|0;x=qNa(Bbb(f[x>>2]|0)|0)|0;switch(b[x>>0]|0){case 43:{k=1;break a}case 45:{k=g0a(a,2)|0;f[s>>2]=f[k>>2];f[t>>2]=f[e>>2];f[l>>2]=f[s>>2];f[m>>2]=f[t>>2];k=zg(l,c,d,m,g)|0;break a}case 126:case 33:{k=0;break a}default:break b}}break}case 99:{x=g0a(a,0)|0;if(!(FBa(f[x>>2]|0,133120)|0)){x=g0a(a,0)|0;if(!(FBa(f[x>>2]|0,133160)|0))break b;k=g0a(a,2)|0;f[v>>2]=f[k>>2];f[w>>2]=f[e>>2];f[l>>2]=f[v>>2];f[m>>2]=f[w>>2];k=zg(l,c,d,m,g)|0;break a}x=g0a(a,1)|0;x=f[x>>2]|0;Bbb(x)|0;if(Gab(f[x>>2]|0)|0){a=g0a(a,1)|0;a=pPa(Bbb(f[a>>2]|0)|0)|0;a=f[a>>2]|0;if($1a(a,f[33265]|0)|0){k=2;break a}if($1a(a,f[e>>2]|0)|0){k=2;break a}if(g){if($1a(a,f[33263]|0)|0){k=8;break a}if($1a(a,f[33262]|0)|0){k=8;break a}}if($1a(a,f[33261]|0)|0){k=3;break a}if($1a(a,f[33297]|0)|0){k=3;break a}if($1a(a,f[33260]|0)|0){k=4;break a}if($1a(a,f[33296]|0)|0){k=4;break a}if($1a(a,f[33259]|0)|0){k=5;break a}if($1a(a,f[33300]|0)|0){k=5;break a}if($1a(a,f[33258]|0)|0){k=6;break a}if($1a(a,f[33299]|0)|0){k=6;break a}if($1a(a,f[33257]|0)|0){k=7;break a}if($1a(a,f[33298]|0)|0){k=7;break a}}k=9;break a}case 98:{w=g0a(a,0)|0;if(FBa(f[w>>2]|0,133156)|0){w=g0a(a,1)|0;w=qNa(Bbb(f[w>>2]|0)|0)|0;switch(b[w>>0]|0){case 33:case 61:case 62:case 60:case 94:case 38:case 124:{k=0;break a}case 37:case 47:case 42:case 45:case 43:break;default:break b}k=g0a(a,2)|0;f[x>>2]=f[k>>2];f[n>>2]=f[e>>2];f[l>>2]=f[x>>2];f[m>>2]=f[n>>2];k=zg(l,c,d,m,g)|0;break a}break}case 115:{x=g0a(a,0)|0;if(FBa(f[x>>2]|0,133128)|0){k=g0a(a,2)|0;f[o>>2]=f[k>>2];f[q>>2]=f[e>>2];f[l>>2]=f[o>>2];f[m>>2]=f[q>>2];k=zg(l,c,d,m,g)|0;break a}g=g0a(a,0)|0;if(FBa(f[g>>2]|0,133124)|0){g=g0a(a,1)|0;g=f[g>>2]|0;Bbb(g)|0;if(Gab(f[g>>2]|0)|0){k=g0a(a,1)|0;k=g0a(f[k>>2]|0,1)|0;A_(m,qNa(Bbb(f[k>>2]|0)|0)|0);k=(b[m>>0]|0)==0?h[m+2>>0]|0:9;break a}else Ca(118413,118354,122,118402)}break}default:{}}while(0);k=9}while(0);u=y;return k|0}function Ag(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110678)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);a:do if((f[c+4>>2]|0)!=5)do switch(f[c+8>>2]|0){case 0:{Ev(f[a+28>>2]|0,103)|0;break a}case 2:{Ev(f[a+28>>2]|0,104)|0;break a}case 4:{Ev(f[a+28>>2]|0,105)|0;break a}case 20:{Ev(f[a+28>>2]|0,69)|0;break a}case 1:{Ev(f[a+28>>2]|0,121)|0;break a}case 3:{Ev(f[a+28>>2]|0,122)|0;break a}case 5:{Ev(f[a+28>>2]|0,123)|0;break a}case 21:{Ev(f[a+28>>2]|0,80)|0;break a}case 6:{Ev(f[a+28>>2]|0,-116)|0;break a}case 8:{Ev(f[a+28>>2]|0,-117)|0;break a}case 10:{Ev(f[a+28>>2]|0,-115)|0;break a}case 12:{Ev(f[a+28>>2]|0,-114)|0;break a}case 14:{Ev(f[a+28>>2]|0,-113)|0;break a}case 16:{Ev(f[a+28>>2]|0,-112)|0;break a}case 18:{Ev(f[a+28>>2]|0,-111)|0;break a}case 7:{Ev(f[a+28>>2]|0,-102)|0;break a}case 9:{Ev(f[a+28>>2]|0,-103)|0;break a}case 11:{Ev(f[a+28>>2]|0,-101)|0;break a}case 13:{Ev(f[a+28>>2]|0,-100)|0;break a}case 15:{Ev(f[a+28>>2]|0,-99)|0;break a}case 17:{Ev(f[a+28>>2]|0,-98)|0;break a}case 19:{Ev(f[a+28>>2]|0,-97)|0;break a}case 22:{Ev(f[a+28>>2]|0,-84)|0;break a}case 23:{Ev(f[a+28>>2]|0,-83)|0;break a}case 24:{Ev(f[a+28>>2]|0,-89)|0;break a}case 27:{Ev(f[a+28>>2]|0,-87)|0;break a}case 28:{Ev(f[a+28>>2]|0,-81)|0;break a}case 25:{Ev(f[a+28>>2]|0,-88)|0;break a}case 26:{Ev(f[a+28>>2]|0,-82)|0;break a}case 31:{Ev(f[a+28>>2]|0,-85)|0;break a}case 32:{Ev(f[a+28>>2]|0,-79)|0;break a}case 29:{Ev(f[a+28>>2]|0,-86)|0;break a}case 30:{Ev(f[a+28>>2]|0,-80)|0;break a}case 37:{Ev(f[a+28>>2]|0,-77)|0;break a}case 38:{Ev(f[a+28>>2]|0,-72)|0;break a}case 35:{Ev(f[a+28>>2]|0,-78)|0;break a}case 36:{Ev(f[a+28>>2]|0,-73)|0;break a}case 41:{Ev(f[a+28>>2]|0,-75)|0;break a}case 42:{Ev(f[a+28>>2]|0,-70)|0;break a}case 39:{Ev(f[a+28>>2]|0,-76)|0;break a}case 40:{Ev(f[a+28>>2]|0,-71)|0;break a}case 44:{Ev(f[a+28>>2]|0,-74)|0;break a}case 43:{Ev(f[a+28>>2]|0,-69)|0;break a}case 33:{Ev(f[a+28>>2]|0,-68)|0;break a}case 34:{Ev(f[a+28>>2]|0,-67)|0;break a}case 45:{Ev(f[a+28>>2]|0,-66)|0;break a}case 46:{Ev(f[a+28>>2]|0,-65)|0;break a}case 47:{Ev(f[a+28>>2]|0,-64)|0;break a}case 48:{Ev(f[a+28>>2]|0,-63)|0;break a}case 49:{Ev(f[a+28>>2]|0,-62)|0;break a}case 50:{Ev(f[a+28>>2]|0,-61)|0;break a}case 51:{Ev(f[a+28>>2]|0,-60)|0;break a}default:hb()}while(0);while(0);u=i;return}function Bg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;B=u;u=u+48|0;D=B+28|0;C=B+16|0;y=B+4|0;w=B;v=f[a+32>>2]|0;z=Bbb(v)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;A=D+12|0;b=0;while(1){f[C>>2]=b;if(b>>>0>=(fQa(z)|0)>>>0){c=3;break}x=0;b=ia(80,z|0,b|0)|0;t=x;x=0;if(t&1){c=4;break}if((b|0)==1){b=f[A>>2]|0;x=0;c=ga(258,1)|0;t=x;x=0;if(t&1){c=10;break}x=0;d=ia(105,D|0,C|0)|0;t=x;x=0;if(t&1){c=10;break}t=X(c,b)|0;f[d>>2]=t}b=(f[C>>2]|0)+1|0}a:do if((c|0)==3){n=f[a+60>>2]|0;o=a+136|0;p=y+4|0;q=y+8|0;r=C+4|0;s=a+184|0;l=D+4|0;t=a+36|0;b=0;j=-1;m=f[a+56>>2]|0;b:while(1){if((m|0)==(n|0)){c=14;break}e=f[m>>2]|0;f[C>>2]=e;if(Uz(o,C)|0){k=e+24|0;g=e+28|0;i=f[k>>2]|0;h=(f[g>>2]|0)-i>>4;c=0;d=-1;while(1){if((c|0)==(h|0))break;E=vab(f[i+(c<<4)>>2]|0)|0;E=E?c:d;c=c+1|0;d=E}if((d|0)!=-1){x=0;ua(522,C|0,e+12|0);E=x;x=0;if(E&1){c=25;break}d=(f[g>>2]|0)-(f[k>>2]|0)>>4;c=j;c:while(1){while(1){j=d+-1|0;if((d|0)<=0)break c;i=f[k>>2]|0;d=f[i+(j<<4)>>2]|0;if(Gab(d)|0){x=0;ua(523,C|0,f[i+(j<<4)+4>>2]|0);E=x;x=0;if(E&1){c=28;break b}}else{if(!(rab(d)|0))break;x=0;ia(106,C|0,f[i+(j<<4)+4>>2]|0)|0;E=x;x=0;if(E&1){c=28;break b}}d=j}if(!(vab(d)|0)){c=51;break b}f[y>>2]=0;f[p>>2]=0;f[q>>2]=0;e=f[r>>2]|0;d=f[C>>2]|0;while(1){if((d|0)==(e|0))break;g=f[d>>2]|0;f[w>>2]=g;do if(NC(f[D>>2]|0,f[l>>2]|0,g)|0){h=f[p>>2]|0;if((h|0)==(f[q>>2]|0)){x=0;ua(524,y|0,w|0);E=x;x=0;if(E&1){c=41;break b}else break}else{f[h>>2]=g;f[p>>2]=h+4;break}}while(0);d=d+4|0}if((f[y>>2]|0)!=(f[p>>2]|0)){if(!b){x=0;c=ia(96,v|0,1)|0;E=x;x=0;if(E&1){c=45;break b}}x=0;b=ia(107,s|0,i+(j<<4)+8|0)|0;E=x;x=0;if(E&1){c=48;break b}i=f[b>>2]|0;E=Bbb(f[t>>2]|0)|0;x=0;za(3,a|0,i|0,y|0,c|0,D|0,z|0,E|0);E=x;x=0;if(E&1){c=48;break b}else b=1}uSa(y);d=j}uSa(C)}else c=j}else c=j;j=c;m=m+4|0}if((c|0)==14){do if(b){x=0;b=ga(258,1)|0;E=x;x=0;if(!(E&1)?(C=X(f[A>>2]|0,b)|0,E=Bbb(f[t>>2]|0)|0,x=0,wa(87,j|0,z|0,C|0,E|0),E=x,x=0,!(E&1)):0)break;b=Ia()|0;break a}while(0);NQa(D);u=B;return}else if((c|0)==25)b=Ia()|0;else if((c|0)==28){b=Ia()|0;c=29}else if((c|0)==41){b=Ia()|0;c=50}else if((c|0)==45){b=Ia()|0;c=50}else if((c|0)==48){b=Ia()|0;c=50}else if((c|0)==51){x=0;sa(5);x=0;b=Ia()|0;c=29}if((c|0)==29)c=52;else if((c|0)==50){uSa(y);c=52}if((c|0)==52)uSa(C)}else if((c|0)==4){b=Ia()|0;c=12}else if((c|0)==10){b=Ia()|0;c=12}while(0);NQa(D);Ua(b|0)}function Cg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+48|0;m=q+44|0;r=q+40|0;l=q+32|0;g=q+12|0;i=q+16|0;h=q;p=g0a(c,0)|0;if(FBa(f[p>>2]|0,132396)|0?(p=g0a(c,1)|0,p=f[p>>2]|0,Bbb(p)|0,Gab(f[p>>2]|0)|0):0){c=g0a(c,1)|0;c=pPa(Bbb(f[c>>2]|0)|0)|0;c=f[c>>2]|0;f[m>>2]=c;fMa(r);f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;p=h7a(64991)|0;x=0;va(87,h|0,64991,p|0);p=x;x=0;a:do if(p&1){c=Ia()|0;s=16}else{x=0;ia(59,h|0,c|0)|0;p=x;x=0;do if(p&1)c=Ia()|0;else{f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];c=0;while(1){if((c|0)==3)break;f[h+(c<<2)>>2]=0;c=c+1|0}x=0;va(88,g|0,((b[i+11>>0]|0)<0?f[i>>2]|0:i)|0,0);p=x;x=0;if(p&1){c=Ia()|0;HTa(i);break}E1a(l,f[g>>2]|0);g=f[r>>2]|0;f[g>>2]=f[l>>2];HTa(i);HTa(h);p=g+4|0;f[p>>2]=d;k=e+8|0;I$a(l,k);GUa(i,k);k=l+4|0;j=f[i>>2]|0;e=f[i+4>>2]|0;n=g+12|0;h=g+16|0;o=g+8|0;i=g;while(1){if(!(lTa(f[l>>2]|0,f[k>>2]|0,j,e)|0))break;x=0;c=ga(253,l|0)|0;d=x;x=0;if(d&1){s=22;break}c=(f[c>>2]|0)+4|0;d=f[n>>2]|0;if((d|0)==(f[h>>2]|0)){x=0;ua(260,o|0,c|0);d=x;x=0;if(d&1){s=22;break}}else{f[d>>2]=f[c>>2];f[n>>2]=d+4}RYa(l)}if((s|0)==22){c=Ia()|0;d=r;s=49;break a}c=a+212|0;do if((eV(c,f[m>>2]|0)|0)==(a+216|0)){x=0;c=ia(54,c|0,m|0)|0;s=x;x=0;if(s&1){c=Ia()|0;d=r;s=49;break a}else{s=f[c>>2]|0;f[c>>2]=i;f[r>>2]=s;c=s;s=46;break}}else{x=0;c=ia(54,c|0,m|0)|0;m=x;x=0;if(m&1){c=Ia()|0;d=r;s=49;break a}j=f[c>>2]|0;if(UYa(g,j)|0){k=j+8|0;l=j+12|0;a=j+16|0;i=0;b:while(1){m=f[o>>2]|0;h=m;if(i>>>0>=(f[n>>2]|0)-m>>2>>>0)break;m=f[l>>2]|0;c=f[k>>2]|0;d=m;do if(m-c>>2>>>0>i>>>0){d=c+(i<<2)|0;e=f[d>>2]|0;c=f[h+(i<<2)>>2]|0;if(!e){f[d>>2]=c;break}if((e|0)!=(c|0))f[d>>2]=4}else{c=h+(i<<2)|0;if((f[a>>2]|0)==(d|0)){x=0;ua(260,k|0,c|0);m=x;x=0;if(m&1){s=33;break b}else break}else{f[d>>2]=f[c>>2];f[l>>2]=d+4;break}}while(0);i=i+1|0}if((s|0)==33){c=Ia()|0;f[r>>2]=0;s=50;break a}e=j+4|0;d=f[e>>2]|0;c=f[p>>2]|0;if(d){if(!((d|0)==(c|0)|(c|0)==0)){c=4;s=44}}else s=44;if((s|0)==44)f[e>>2]=c;f[r>>2]=0;c=g;s=47}else{c=g;s=46}}while(0);if((s|0)==46?(f[r>>2]=0,c|0):0)s=47;if((s|0)==47){M_a(c);ubb(c)}u=q;return}while(0);HTa(h);s=16}while(0);if((s|0)==16){d=r;g=f[r>>2]|0;s=49}if((s|0)==49){f[d>>2]=0;if(g)s=50}if((s|0)==50){M_a(g);ubb(g)}Ua(c|0)}Ca(64929,51387,482,64966)}function Dg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;A=u;u=u+48|0;B=A+32|0;C=A+16|0;v=A;t=c+12|0;d=f[t>>2]|0;do if(sba(a,d)|0){if(!d)Ca(108288,106510,268,108311);SN(C,a,d);z=a+108|0;w=c+8|0;d=AB(z,w)|0;a:do if(!d){p=v8a(w)|0;m=a+112|0;j=f[m>>2]|0;o=(j|0)==0;b:do if(!o){k=j+-1|0;l=(k&j|0)==0;if(!l)if(p>>>0>>0)e=p;else e=(p>>>0)%(j>>>0)|0;else e=k&p;d=f[(f[z>>2]|0)+(e<<2)>>2]|0;if(!d)y=20;else do{d=f[d>>2]|0;if(!d){y=20;break b}g=f[d+4>>2]|0;if((g|0)!=(p|0)){if(!l){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&k;if((g|0)!=(e|0)){y=20;break b}}}while(!($1a(f[d+8>>2]|0,f[w>>2]|0)|0))}else{e=0;y=20}while(0);c:do if((y|0)==20){x=0;xa(9,B|0,z|0,p|0,w|0,C|0);y=x;x=0;d:do if(y&1)d=Ia()|0;else{k=a+120|0;h=+(((f[k>>2]|0)+1|0)>>>0);i=+n[a+124>>2];do if(o|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;w=~~+W(+(h/i))>>>0;x=0;ua(2493,z|0,(y>>>0>>0?w:y)|0);y=x;x=0;if(!(y&1)){d=f[m>>2]|0;e=d+-1|0;if(!(e&d)){j=d;e=e&p;break}if(p>>>0>>0){j=d;e=p;break}j=d;e=(p>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0){if(b[B+8>>0]|0)AWa(e+8|0);ubb(e)}break d}while(0);d=f[(f[z>>2]|0)+(e<<2)>>2]|0;if(!d){d=a+116|0;g=f[B>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[z>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=B;else{d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;f[(f[z>>2]|0)+(d<<2)>>2]=g;d=B}}else{a=f[B>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;d=B}f[k>>2]=(f[k>>2]|0)+1;f[d>>2]=0;break c}while(0);y=65;break a}while(0);f[c+4>>2]=1;y=56}else{x=0;ua(2491,B|0,d+12|0);z=x;x=0;if(z&1)d=Ia()|0;else{x=0;va(159,v|0,a|0,1);z=x;x=0;if(z&1)d=Ia()|0;else{g=a+44|0;d=f[g>>2]|0;x=0;e=ga(320,v|0)|0;z=x;x=0;if(!(z&1)?(x=0,j=ja(45,d|0,e|0,f[t>>2]|0)|0,z=x,x=0,!(z&1)):0){d=f[g>>2]|0;x=0;e=ga(320,B|0)|0;z=x;x=0;if((((((!(z&1)?(k=f[g>>2]|0,x=0,l=ga(320,C|0)|0,z=x,x=0,!(z&1)):0)?(x=0,m=ja(46,f[k>>2]|0,l|0,1)|0,z=x,x=0,!(z&1)):0)?(x=0,o=ja(45,d|0,e|0,m|0)|0,z=x,x=0,!(z&1)):0)?(p=f[g>>2]|0,x=0,q=ga(320,v|0)|0,z=x,x=0,!(z&1)):0)?(x=0,r=ja(46,f[p>>2]|0,q|0,1)|0,z=x,x=0,!(z&1)):0)?(f[t>>2]=r,f[c+4>>2]=1,x=0,s=ka(31,f[g>>2]|0,j|0,o|0,c|0)|0,c=x,x=0,!(c&1)):0){BVa(f[a+16>>2]|0,s)|0;HCa(v);HCa(B);y=56;break}d=Ia()|0}else d=Ia()|0;HCa(v)}HCa(B)}y=65}while(0);if((y|0)==56){HCa(C);break}else if((y|0)==65){HCa(C);Ua(d|0)}}while(0);u=A;return}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:while(1){l=b;e=b+-4|0;b:while(1){k=a;d=l-k|0;g=d>>2;switch(g|0){case 1:case 0:break a;case 2:{m=4;break a}case 3:{m=6;break a}case 4:{m=7;break a}case 5:{m=8;break a}default:{}}if((d|0)<28){m=10;break a}i=a+(((g|0)/2|0)<<2)|0;if((d|0)>3996){d=(g|0)/4|0;d=Dv(a,a+(d<<2)|0,i,i+(d<<2)|0,e,c)|0}else d=Cw(a,i,e,c)|0;if(iD(c,a,i)|0)g=e;else{g=e;do{g=g+-4|0;if((a|0)==(g|0)){m=17;break b}}while(!(iD(c,g,i)|0));j=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=j;d=d+1|0}h=a+4|0;c:do if(h>>>0>>0){j=i;while(1){while(1){i=h+4|0;if(iD(c,h,j)|0)h=i;else break}do g=g+-4|0;while(!(iD(c,g,j)|0));if(h>>>0>g>>>0){g=j;break c}n=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=n;j=(j|0)==(h|0)?g:j;h=i;d=d+1|0}}else g=i;while(0);if((h|0)!=(g|0)?iD(c,g,h)|0:0){n=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=n;d=d+1|0}if(!d){g=Fl(a,h,c)|0;d=h+4|0;if(Fl(d,b,c)|0){m=46;break}if(g){e=2;a=d;m=51;break}}n=h;if((n-k|0)>=(l-n|0)){m=50;break}Eg(a,h,c);a=h+4|0}d:do if((m|0)==17){m=0;d=a+4|0;if(!(iD(c,a,e)|0)){while(1){if((d|0)==(e|0))break a;if(iD(c,a,d)|0)break;d=d+4|0}n=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=n;d=d+4|0}if((d|0)==(e|0))break a;while(1){while(1){g=d+4|0;if(iD(c,a,d)|0)break;else d=g}do e=e+-4|0;while(iD(c,a,e)|0);if(d>>>0>=e>>>0){e=4;a=d;m=51;break d}n=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=n;d=g}}else if((m|0)==46){e=g?1:2;b=g?b:h;m=51}else if((m|0)==50){m=0;Eg(h+4|0,b,c);b=h}while(0);if((m|0)==51){m=0;switch(e&7){case 2:case 4:case 0:break;default:break a}}}if((m|0)==4){if(iD(c,e,a)|0){n=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=n}}else if((m|0)==6)Cw(a,a+4|0,e,c)|0;else if((m|0)==7)Zz(a,a+4|0,a+8|0,e,c)|0;else if((m|0)==8)Dv(a,a+4|0,a+8|0,a+12|0,e,c)|0;else if((m|0)==10)Rs(a,b,c);return}function Fg(a,c,e,g,h,i,j,k){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|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,v=0,w=0,y=0,z=0,A=0;A=u;u=u+16|0;r=A+12|0;q=A+8|0;t=A+4|0;v=A;ZXa(r,g);x=0;y=ia(73,f[r>>2]|0,134880)|0;s=x;x=0;if(s&1){A=Ia()|0;JCa(r);Ua(A|0)}JCa(r);f[h>>2]=0;s=y+8|0;l=0;a:while(1){if(!((j|0)!=(k|0)&(l|0)==0))break;m=c;if(!c){o=0;p=0;n=1}else{l=f[c+12>>2]|0;if((l|0)==(f[c+16>>2]|0))l=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else l=X6a(b[l>>0]|0)|0;l=$1a(l,-1)|0;o=l?0:c;p=l?0:c;n=l;m=l?0:m}c=e;if(e){l=f[e+12>>2]|0;if((l|0)==(f[e+16>>2]|0))l=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else l=X6a(b[l>>0]|0)|0;if(!($1a(l,-1)|0)){if(!n){z=61;break}}else{c=0;z=14}}else z=14;if((z|0)==14){z=0;if(n){e=0;z=61;break}else e=0}b:do if((ec[f[(f[y>>2]|0)+36>>2]&127](y,b[j>>0]|0,0)|0)<<24>>24==37){n=j+1|0;if((n|0)==(k|0)){z=61;break a}l=ec[f[(f[y>>2]|0)+36>>2]&127](y,b[n>>0]|0,0)|0;switch(l<<24>>24){case 48:case 69:{j=j+2|0;if((j|0)==(k|0)){z=61;break a}o=l;l=ec[f[(f[y>>2]|0)+36>>2]&127](y,b[j>>0]|0,0)|0;j=n;break}default:o=0}p=f[(f[a>>2]|0)+36>>2]|0;f[t>>2]=m;f[v>>2]=c;f[q>>2]=f[t>>2];f[r>>2]=f[v>>2];j=j+2|0;c=lc[p&15](a,q,r,g,h,i,l,o)|0}else{c=b[j>>0]|0;if(c<<24>>24>-1?(w=f[s>>2]|0,d[w+(c<<24>>24<<1)>>1]&8192):0){do{j=j+1|0;if((j|0)==(k|0)){j=k;break}c=b[j>>0]|0;if(c<<24>>24<=-1)break}while((d[w+(c<<24>>24<<1)>>1]&8192)!=0);c=o;m=e;o=e;l=p;while(1){if(!l){p=0;l=1}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0))e=bc[f[(f[l>>2]|0)+36>>2]&511](l)|0;else e=X6a(b[e>>0]|0)|0;n=$1a(e,-1)|0;c=n?0:c;p=n?0:l;l=n}if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))e=bc[f[(f[o>>2]|0)+36>>2]&511](o)|0;else e=X6a(b[e>>0]|0)|0;if(!($1a(e,-1)|0))if(l)e=m;else{e=m;break b}else{e=0;z=40}}else{e=m;z=40}if((z|0)==40){z=0;if(l)break b;else o=0}m=p+12|0;l=f[m>>2]|0;n=p+16|0;if((l|0)==(f[n>>2]|0))l=bc[f[(f[p>>2]|0)+36>>2]&511](p)|0;else l=X6a(b[l>>0]|0)|0;if((l&255)<<24>>24<=-1)break b;if(!(d[(f[s>>2]|0)+(l<<24>>24<<1)>>1]&8192))break b;l=f[m>>2]|0;if((l|0)==(f[n>>2]|0))bc[f[(f[p>>2]|0)+40>>2]&511](p)|0;else f[m>>2]=l+1;m=e;l=p}}l=p+12|0;c=f[l>>2]|0;m=p+16|0;if((c|0)==(f[m>>2]|0))c=bc[f[(f[p>>2]|0)+36>>2]&511](p)|0;else c=X6a(b[c>>0]|0)|0;n=dc[f[(f[y>>2]|0)+12>>2]&255](y,c&255)|0;if(n<<24>>24!=(dc[f[(f[y>>2]|0)+12>>2]&255](y,b[j>>0]|0)|0)<<24>>24){f[h>>2]=4;c=o;break}c=f[l>>2]|0;if((c|0)==(f[m>>2]|0))bc[f[(f[p>>2]|0)+40>>2]&511](p)|0;else f[l>>2]=c+1;j=j+1|0;c=o}while(0);l=f[h>>2]|0}if((z|0)==61){f[h>>2]=4;c=p}if(!c){c=0;l=1}else{j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=X6a(b[j>>0]|0)|0;l=$1a(j,-1)|0;c=l?0:c}if(e){j=f[e+12>>2]|0;if((j|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=X6a(b[j>>0]|0)|0;if(!($1a(e,-1)|0)){if(!l)z=74}else z=72}else z=72;if((z|0)==72?l:0)z=74;if((z|0)==74)f[h>>2]=f[h>>2]|2;u=A;return c|0}function Gg(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+16|0;y=w;v=TTa(f[i>>2]|0,134912)|0;r=TTa(f[i>>2]|0,134920)|0;pc[f[(f[r>>2]|0)+20>>2]&4095](y,r);f[h>>2]=e;i=b[a>>0]|0;a:do switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,i|0)|0;s=x;x=0;if(s&1){i=Ia()|0;break a}else{k=f[h>>2]|0;f[h>>2]=k+4;f[k>>2]=i;k=a+1|0;t=5;break a}}default:{k=a;t=5}}while(0);b:do if((t|0)==5){s=d;c:do if((s-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:{t=6;break c}}x=0;j=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,48)|0;q=x;x=0;if(!(q&1)?(m=f[h>>2]|0,f[h>>2]=m+4,f[m>>2]=j,m=k+2|0,x=0,l=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,b[i>>0]|0)|0,q=x,x=0,!(q&1)):0){i=f[h>>2]|0;f[h>>2]=i+4;f[i>>2]=l;i=m;while(1){if(i>>>0>=d>>>0){k=m;j=i;t=20;break c}t=b[i>>0]|0;fOa()|0;if(!(ibb(t<<24>>24)|0)){k=m;j=i;t=20;break c}i=i+1|0}}}else t=6;while(0);d:do if((t|0)==6){i=k;while(1){if(i>>>0>=d>>>0){j=i;t=20;break d}t=b[i>>0]|0;fOa()|0;if(!(jbb(t<<24>>24)|0)){j=i;t=20;break d}i=i+1|0}}while(0);e:do if((t|0)==20){p=y+11|0;o=b[p>>0]|0;q=y+4|0;f:do if((o<<24>>24<0?f[q>>2]|0:o&255)|0){g:do if((k|0)!=(j|0)){i=j;l=k;while(1){i=i+-1|0;if(l>>>0>=i>>>0)break g;o=b[l>>0]|0;b[l>>0]=b[i>>0]|0;b[i>>0]=o;l=l+1|0}}while(0);x=0;o=ga(f[(f[r>>2]|0)+16>>2]|0,r|0)|0;n=x;x=0;if(n&1){i=Ia()|0;break b}n=k;i=0;l=0;while(1){if(n>>>0>=j>>>0)break;m=b[((b[p>>0]|0)<0?f[y>>2]|0:y)+i>>0]|0;if(m<<24>>24>0&(l|0)==(m<<24>>24|0)){l=f[h>>2]|0;f[h>>2]=l+4;f[l>>2]=o;l=b[p>>0]|0;i=i+(i>>>0<((l<<24>>24<0?f[q>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}x=0;m=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,b[n>>0]|0)|0;z=x;x=0;if(z&1){t=39;break}z=f[h>>2]|0;f[h>>2]=z+4;f[z>>2]=m;n=n+1|0;l=l+1|0}if((t|0)==39){i=Ia()|0;break b}i=e+(k-a<<2)|0;l=f[h>>2]|0;if((i|0)==(l|0))k=v;else{k=l;while(1){k=k+-4|0;if(i>>>0>=k>>>0){k=v;i=l;break f}z=f[i>>2]|0;f[i>>2]=f[k>>2];f[k>>2]=z;i=i+4|0}}}else{x=0;ka(f[(f[v>>2]|0)+48>>2]|0,v|0,k|0,j|0,f[h>>2]|0)|0;z=x;x=0;if(z&1)break e;i=(f[h>>2]|0)+(j-k<<2)|0;f[h>>2]=i;k=v}while(0);while(1){if(j>>>0>=d>>>0)break;i=b[j>>0]|0;if(i<<24>>24==46){t=43;break}x=0;i=ia(f[(f[k>>2]|0)+44>>2]|0,v|0,i|0)|0;z=x;x=0;if(z&1){t=14;break}q=f[h>>2]|0;z=q+4|0;f[h>>2]=z;f[q>>2]=i;j=j+1|0;i=z}if((t|0)==14){i=Ia()|0;break b}if((t|0)==43){x=0;i=ga(f[(f[r>>2]|0)+12>>2]|0,r|0)|0;z=x;x=0;if(z&1)break;t=f[h>>2]|0;z=t+4|0;f[h>>2]=z;f[t>>2]=i;j=j+1|0;i=z}x=0;ka(f[(f[v>>2]|0)+48>>2]|0,v|0,j|0,d|0,i|0)|0;z=x;x=0;if(!(z&1)){z=(f[h>>2]|0)+(s-j<<2)|0;f[h>>2]=z;f[g>>2]=(c|0)==(d|0)?z:e+(c-a<<2)|0;HTa(y);u=w;return}}while(0);i=Ia()|0}while(0);HTa(y);Ua(i|0)}function Hg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+256|0;r=z+240|0;s=z+232|0;v=z+216|0;k=z+208|0;w=z+100|0;y=z;i=E_a(c)|0;if(!i){c=N_a(c)|0;if(c|0?(j=c+8|0,d=fqa(a+64|0,f[j>>2]|0)|0,d|0):0){e=f[d+8>>2]|0;d=e;c=e;while(1){c=f[c>>2]|0;if(!c)break;y=c;w=(f[y+8>>2]|0)>>>0<(f[e+8>>2]|0)>>>0;d=w?c:d;e=w?y:e}f[j>>2]=f[d+8>>2]}}else{e=a+64|0;j=i+8|0;YM(e,f[j>>2]|0);i=i+12|0;c=f[i>>2]|0;d=N_a(c)|0;if(d){vd(e,f[j>>2]|0,f[d+8>>2]|0);c=f[i>>2]|0}if(pT(a,c)|0){mKa(k,c);t=a+44|0;d=ru(t,k)|0;do if(!d){q=f[j>>2]|0;Yya(y,c,q,_Ya(f[a+40>>2]|0)|0);UUa(w,k);qza(w+8|0,y);UUa(r,w);q=Bbb(f[r+4>>2]|0)|0;o=a+48|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){l=i+-1|0;m=(l&i|0)==0;if(!m)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=l&q;c=f[(f[t>>2]|0)+(d<<2)>>2]|0;if(!c)e=23;else{j=r+4|0;k=s+4|0;while(1){c=f[c>>2]|0;if(!c){e=23;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!m){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&l;if((e|0)!=(d|0)){e=23;break a}}UUa(r,c+8|0);UUa(s,w);x=0;e=ka(32,f[r>>2]|0,f[j>>2]|0,f[s>>2]|0,f[k>>2]|0)|0;A=x;x=0;if(A&1)break;if(e){e=44;break a}}c=Ia()|0;e=47}}else{d=0;e=23}while(0);b:do if((e|0)==23){x=0;wa(147,v|0,t|0,q|0,w|0);A=x;x=0;if(A&1){c=Ia()|0;e=47;break}j=a+56|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+60>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;s=~~+W(+(g/h))>>>0;x=0;ua(2556,t|0,(A>>>0>>0?s:A)|0);A=x;x=0;if(!(A&1)){c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q;break}i=c;d=(q>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[v>>2]|0;f[v>>2]=0;if(d|0){if(b[v+8>>0]|0)oWa(d+8|0);ubb(d)}e=47;break b}while(0);c=f[(f[t>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+52|0;e=f[v>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=e;f[(f[t>>2]|0)+(d<<2)>>2]=c;c=f[e>>2]|0;if(!c)c=v;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[t>>2]|0)+(c<<2)>>2]=e;c=v}}else{A=f[v>>2]|0;f[A>>2]=f[c>>2];f[c>>2]=A;c=v}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;e=44}while(0);if((e|0)==44){oWa(w);b1a(y);break}else if((e|0)==47){oWa(w);b1a(y);Ua(c|0)}}else{A=f[a+36>>2]|0;Bbb(A)|0;U0a(r,A);A=NKa(f[r>>2]|0,f[d+20>>2]|0,f[c+4>>2]|0)|0;f[i>>2]=A;b[a+84>>0]=1}while(0)}}u=z;return}function Ig(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;C=u;u=u+48|0;G=C+32|0;F=C+16|0;D=C;mD(G,a,1);x=0;va(159,F|0,a|0,1);z=x;x=0;if(z&1)h=Ia()|0;else{x=0;va(159,D|0,a|0,1);z=x;x=0;if(z&1)h=Ia()|0;else{z=a+44|0;h=f[z>>2]|0;x=0;i=ga(320,G|0)|0;H=x;x=0;a:do if((((((!(H&1)?(j=f[z>>2]|0,x=0,k=ga(320,c|0)|0,H=x,x=0,!(H&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,H=x,x=0,!(H&1)):0)?(m=f[z>>2]|0,x=0,n=ga(320,e|0)|0,H=x,x=0,!(H&1)):0)?(x=0,o=ja(46,f[m>>2]|0,n|0,1)|0,H=x,x=0,!(H&1)):0)?(x=0,p=ka(7,f[j>>2]|0,1,l|0,o|0)|0,H=x,x=0,!(H&1)):0)?(x=0,A=ja(45,h|0,i|0,p|0)|0,H=x,x=0,!(H&1)):0){h=f[z>>2]|0;x=0;i=ga(320,D|0)|0;H=x;x=0;if((((((!(H&1)?(q=f[z>>2]|0,x=0,r=ga(320,c|0)|0,H=x,x=0,!(H&1)):0)?(x=0,s=ja(46,f[q>>2]|0,r|0,1)|0,H=x,x=0,!(H&1)):0)?(t=f[z>>2]|0,x=0,v=ga(320,e|0)|0,H=x,x=0,!(H&1)):0)?(x=0,w=ja(46,f[t>>2]|0,v|0,1)|0,H=x,x=0,!(H&1)):0)?(x=0,y=ka(7,f[q>>2]|0,18,s|0,w|0)|0,H=x,x=0,!(H&1)):0)?(x=0,B=ja(45,h|0,i|0,y|0)|0,H=x,x=0,!(H&1)):0){l=f[z>>2]|0;x=0;m=ga(320,F|0)|0;H=x;x=0;do if(!(H&1)){k=f[z>>2]|0;x=0;h=ga(320,D|0)|0;H=x;x=0;if(H&1)break;x=0;j=ja(46,f[k>>2]|0,h|0,1)|0;H=x;x=0;if(H&1)break;i=f[z>>2]|0;x=0;h=ga(320,g|0)|0;H=x;x=0;if(H&1)break;x=0;h=ja(46,f[i>>2]|0,h|0,1)|0;H=x;x=0;if(H&1)break;x=0;h=ka(7,f[k>>2]|0,0,j|0,h|0)|0;H=x;x=0;if(H&1)break;x=0;n=ja(45,l|0,m|0,h|0)|0;H=x;x=0;if(H&1)break;l=f[z>>2]|0;x=0;m=ga(320,F|0)|0;H=x;x=0;do if(!(H&1)){k=f[z>>2]|0;x=0;h=ga(320,d|0)|0;H=x;x=0;if(H&1)break;x=0;j=ja(46,f[k>>2]|0,h|0,1)|0;H=x;x=0;if(H&1)break;h=f[z>>2]|0;x=0;i=ga(320,F|0)|0;H=x;x=0;if(H&1)break;x=0;h=ja(46,f[h>>2]|0,i|0,1)|0;H=x;x=0;if(H&1)break;x=0;h=ka(7,f[k>>2]|0,1,j|0,h|0)|0;H=x;x=0;if(H&1)break;x=0;j=ja(45,l|0,m|0,h|0)|0;H=x;x=0;if(H&1)break;h=f[z>>2]|0;x=0;i=ga(320,G|0)|0;H=x;x=0;do if(!(H&1)){x=0;h=ja(46,f[h>>2]|0,i|0,1)|0;H=x;x=0;if(H&1)break;x=0;h=pa(15,f[z>>2]|0,b|0,A|0,B|0,n|0,j|0,h|0)|0;H=x;x=0;if(H&1)break;x=0;va(161,a|0,h|0,F|0);H=x;x=0;if(H&1)break;HCa(D);HCa(F);HCa(G);u=C;return h|0}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break}h=Ia()|0}else E=38;while(0);if((E|0)==38)h=Ia()|0;HCa(D)}HCa(F)}HCa(G);Ua(h|0);return 0}function Jg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+144|0;s=t+128|0;n=t+120|0;w=t+28|0;v=t+16|0;o=t+12|0;p=t+8|0;q=t;if(!(c>>>0>>0&((c|0)!=-1&(d|0)!=-1)))Ca(114980,115062,149,115091);l=a+12|0;fA(w,f[l>>2]|0,0);x=0;e=ia(75,f[a>>2]|0,d|0)|0;r=x;x=0;if(!(r&1)?(x=0,ua(292,w|0,f[e>>2]|0),r=x,x=0,!(r&1)):0){b[w+26>>0]=0;f[v>>2]=0;m=v+4|0;f[m>>2]=0;h=v+8|0;f[h>>2]=0;i=a+16|0;j=q+4|0;k=n+4|0;r=s+8|0;e=d;a:while(1){e=e+-1|0;x=0;g=ia(75,f[a>>2]|0,e|0)|0;y=x;x=0;if(y&1){k=23;break}x=0;g=ia(209,a|0,f[g>>2]|0)|0;y=x;x=0;if(y&1){k=23;break}f[o>>2]=g;if(!g){x=0;g=ia(75,f[a>>2]|0,e|0)|0;y=x;x=0;if(y&1){k=23;break}x=0;ua(292,w|0,f[g>>2]|0);y=x;x=0;if(y&1){k=23;break}}else{y=Vz(i,o)|0;g=y;if(!y){f[p>>2]=o;f[q>>2]=f[l>>2];f[j>>2]=o;x=0;wa(153,s|0,i|0,p|0,q|0);y=x;x=0;if(y&1){k=25;break}g=f[s>>2]|0;x=0;va(172,n|0,i|0,g|0);y=x;x=0;if(y&1){k=13;break}y=(b[k>>0]|0)!=0;f[s>>2]=0;if(!(y|(g|0)==0)){if(b[r>>0]|0)QYa(g+8|0);ubb(g)}g=f[n>>2]|0}g=g+12|0;do if(xj(w,g)|0){x=0;ua(3098,w|0,g|0);y=x;x=0;if(y&1){k=29;break a}}else{g=f[m>>2]|0;if((g|0)==(f[h>>2]|0)){x=0;ua(3099,v|0,o|0);y=x;x=0;if(y&1){k=29;break a}else break}else{f[g>>2]=f[o>>2];f[m>>2]=(f[m>>2]|0)+4;break}}while(0);if((e|0)==(c|0)){k=40;break}}if(!e){k=37;break}}b:do if((k|0)==13){d=Ia()|0;f[s>>2]=0;if(g|0){if(b[r>>0]|0)QYa(g+8|0);ubb(g)}k=26}else if((k|0)==23){d=Ia()|0;k=24}else if((k|0)==25){d=Ia()|0;k=26}else if((k|0)==29){d=Ia()|0;k=39}else if((k|0)==37){x=0;wa(71,115107,115062,184,115091);x=0;d=Ia()|0;k=24}else if((k|0)==40){y=(f[m>>2]|0)-(f[v>>2]|0)|0;j=y>>2;do if(y){i=j+-1|0;e=0;while(1){if(c>>>0>d>>>0)break;if(e>>>0>>0){x=0;g=ia(75,f[a>>2]|0,c|0)|0;y=x;x=0;if(y&1){k=49;break}if((f[g>>2]|0)==(f[(f[v>>2]|0)+(i-e<<2)>>2]|0))e=e+1|0;else k=50}else k=50;if((k|0)==50){k=0;if(!e)e=0;else{x=0;g=ia(75,f[a>>2]|0,c|0)|0;y=x;x=0;if(y&1){k=49;break}g=f[g>>2]|0;x=0;h=ia(75,f[a>>2]|0,c-e|0)|0;y=x;x=0;if(y&1){k=49;break}f[h>>2]=g}}c=c+1|0}if((k|0)==49){d=Ia()|0;break b}if((e|0)!=(j|0)){x=0;wa(71,115113,115062,206,115091);x=0;d=Ia()|0;break b}e=0;while(1){if(e>>>0>=j>>>0){k=57;break}g=f[(f[v>>2]|0)+(e<<2)>>2]|0;x=0;h=ia(75,f[a>>2]|0,d-e|0)|0;y=x;x=0;if(y&1){k=60;break}f[h>>2]=g;e=e+1|0}if((k|0)==57){d=d-j|0;break}else if((k|0)==60){d=Ia()|0;break b}}while(0);uSa(v);V7(w);u=t;return d+1|0}while(0);if((k|0)==24)k=39;else if((k|0)==26)k=39;uSa(v)}else d=Ia()|0;V7(w);Ua(d|0);return 0}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;y=u;u=u+80|0;A=y;w=y+56|0;v=y+48|0;d=A+48|0;e=A;do{FHa(e);e=e+24|0}while((e|0)!=(d|0));s=w+8|0;t=w+16|0;r=0;j=c;h=0;e=0;g=0;a:while(1){o=j;p=g;b:while(1){h=1-h|0;q=A+(h*24|0)|0;ira(q);switch(Bbb(f[o+8>>2]|0)|0){case 0:{z=60;break a}case 1:break;default:break b}g=f[(f[o+16>>2]|0)+8>>2]|0;if(!(Bbb(f[g+32>>2]|0)|0)){x=0;g=ka(14,a|0,b|0,g|0,q|0)|0;o=x;x=0;if(o&1){z=10;break a}if(p|0)f[p+8>>2]=g;e=(e|0)==0?g:e;if(!(Bbb(f[A+(h*24|0)+8>>2]|0)|0)){z=60;break a}}else{x=0;g=ka(15,a|0,b|0,o|0,q|0)|0;o=x;x=0;if(o&1){z=15;break a}if(p|0)f[p+8>>2]=g;e=(e|0)==0?g:e;if(!(Bbb(f[A+(h*24|0)+8>>2]|0)|0)){z=60;break a}}o=q;p=g}FHa(w);x=0;ua(1492,o|0,w|0);n=x;x=0;if(n&1){z=23;break}if(Bbb(f[s>>2]|0)|0){g=Bbb(f[t>>2]|0)|0;m=L6a(w)|0;while(1){n=g;if((m|0)==(n|0))break;j=g;k=f[j+8>>2]|0;j=j+12|0;g=f[n+4>>2]|0;i=Bbb(f[k+40>>2]|0)|0;k=L6a(k+24|0)|0;while(1){l=i;if((k|0)==(l|0))break;if(!(yQa(j,f[i+8>>2]|0)|0)){z=28;break}i=f[l+4>>2]|0}if((z|0)==28){z=0;TAa(w,n)}}g=Bbb(f[s>>2]|0)|0;if((g|0)==2){k=f[t>>2]|0;Bbb(k)|0;g=f[k+8>>2]|0;f[v>>2]=g;i=Bbb(f[k+12+8>>2]|0)|0;k=f[k+4>>2]|0;j=f[k+8>>2]|0;k=Bbb(f[k+20>>2]|0)|0;c:do if((i|0)!=(k|0)){if((i|0)>(k|0))f[v>>2]=j;else g=j;x=0;l=ia(141,w|0,v|0)|0;n=x;x=0;if(n&1){z=43;break a}i=Bbb(f[l+16>>2]|0)|0;m=L6a(l)|0;while(1){n=i;if((m|0)==(n|0))break;j=f[i+8>>2]|0;i=Bbb(f[j+16>>2]|0)|0;j=L6a(j)|0;while(1){k=i;if((j|0)==(k|0))break;if(!(yQa(l,f[i+8>>2]|0)|0))break c;i=f[k+4>>2]|0}i=f[n+4>>2]|0}aW(w,g)}while(0);g=Bbb(f[s>>2]|0)|0}if(g|0){i=Bbb(f[o+16>>2]|0)|0;j=L6a(o)|0;g=0;while(1){k=i;if((j|0)==(k|0))break;n=(_Qa(c,f[i+8>>2]|0)|0)==0;g=g|n^1;if(!n)break;i=f[k+4>>2]|0}x=0;k=oa(41,a|0,b|0,o|0,w|0,q|0,g|0)|0;n=x;x=0;if(n&1){z=52;break}if(p|0)f[p+8>>2]=k;e=(e|0)==0?k:e;i=(Bbb(f[A+(h*24|0)+8>>2]|0)|0)==0;g=i?e:r;uka(w);if(i){e=g;z=60;break}else{r=g;j=i?o:q;g=i?p:k;continue}}}x=0;k=ka(15,a|0,b|0,o|0,q|0)|0;n=x;x=0;if(n&1){z=57;break}if(p|0)f[p+8>>2]=k;e=(e|0)==0?k:e;i=(Bbb(f[A+(h*24|0)+8>>2]|0)|0)==0;g=i?e:r;uka(w);if(i){e=g;z=60;break}else{r=g;j=i?o:q;g=i?p:k}}if((z|0)==10)e=Ia()|0;else if((z|0)==15)e=Ia()|0;else if((z|0)==23){e=Ia()|0;z=59}else if((z|0)==43){e=Ia()|0;z=59}else if((z|0)==52){e=Ia()|0;z=59}else if((z|0)==57){e=Ia()|0;z=59}else if((z|0)==60){do{d=d+-24|0;TDa(d)}while((d|0)!=(A|0));u=y;return e|0}if((z|0)==59)uka(w);do{d=d+-24|0;TDa(d)}while((d|0)!=(A|0));Ua(e|0);return 0}function Lg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;v=u;u=u+48|0;k=v+40|0;w=v+24|0;m=v+12|0;y=v;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;f[m>>2]=0;g=m+4|0;f[g>>2]=0;f[m+8>>2]=0;f[y>>2]=0;l=y+4|0;f[l>>2]=0;f[y+8>>2]=0;t=a+132|0;x=0;ua(588,d|0,f[t>>2]|0);r=x;x=0;do if((!(r&1)?(x=0,ua(3131,w|0,f[t>>2]|0),r=x,x=0,!(r&1)):0)?(r=f[t>>2]|0,r=X(r,r)|0,x=0,ua(3132,m|0,r|0),r=x,x=0,!(r&1)):0){j=f[m>>2]|0;i=f[g>>2]|0;g=j;i=(g+(i>>>5<<2)-j<<3)+(i&31)|0;if(i|0){f[k>>2]=j;f[k+4>>2]=0;VS(k,i)}r=a+32|0;o=uZa(Bbb(f[r>>2]|0)|0)|0;q=X(f[t>>2]|0,o)|0;x=0;ua(3133,y|0,q|0);q=x;x=0;if(q&1){i=Ia()|0;break}i=f[y>>2]|0;g=(f[l>>2]|0)-i|0;while(1){if((g|0)<=0)break;q=i;b[q>>0]=0;g=g+-1|0;i=q+1|0}f[e>>2]=0;q=a+184|0;g=f[m>>2]|0;p=a+156|0;a=0;while(1){if(a>>>0>=o>>>0){n=25;break}if((f[(f[c>>2]|0)+(a<<2)>>2]|0)!=(a|0)){n=13;break}f[(f[d>>2]|0)+(a<<2)>>2]=a;i=Bbb(f[r>>2]|0)|0;x=0;i=ia(80,i|0,a|0)|0;n=x;x=0;if(n&1){n=16;break}f[(f[w>>2]|0)+(a<<2)>>2]=i;j=o;while(1){k=f[t>>2]|0;if(j>>>0>=k>>>0)break;l=(X(k,a)|0)+j|0;m=g+(l>>>5<<2)|0;i=1<<(l&31);if(yya(k,f[q>>2]|0,a,j)|0)i=f[m>>2]|i;else i=f[m>>2]&~i;f[m>>2]=i;n=QAa(k,f[p>>2]|0,a,j)|0;b[(f[y>>2]|0)+l>>0]=n;j=j+1|0}a=a+1|0}if((n|0)==13){x=0;wa(71,115368,115382,219,115414);x=0;i=Ia()|0;break}else if((n|0)==16){i=Ia()|0;break}else if((n|0)==25){k=a;i=f[t>>2]|0;a:while(1){if(a>>>0>=i>>>0){n=45;break}n=f[(f[c>>2]|0)+(a<<2)>>2]|0;m=0;i=-1;j=-1;while(1){if(m>>>0>=k>>>0)break;o=(X(f[t>>2]|0,m)|0)+n|0;if(!(1<<(o&31)&f[g+(o>>>5<<2)>>2])){l=Bbb(f[r>>2]|0)|0;x=0;l=ia(80,l|0,n|0)|0;o=x;x=0;if(o&1){n=36;break a}if((l|0)==(f[(f[w>>2]|0)+(m<<2)>>2]|0)?(s=(X(f[t>>2]|0,m)|0)+n|0,s=b[(f[y>>2]|0)+s>>0]|0,(j|0)==-1|(s&255)>(i&255)):0){f[(f[d>>2]|0)+(n<<2)>>2]=m;i=s;j=m}}m=m+1|0}if((j|0)==-1){f[(f[d>>2]|0)+(n<<2)>>2]=k;i=Bbb(f[r>>2]|0)|0;x=0;i=ia(80,i|0,n|0)|0;o=x;x=0;if(o&1){n=40;break}f[(f[w>>2]|0)+(k<<2)>>2]=i;i=k+1|0;o=(QAa(f[t>>2]|0,f[p>>2]|0,k,n)|0)&255;f[e>>2]=(f[e>>2]|0)+o;o=X(f[t>>2]|0,i)|0;x=0;ua(3133,y|0,o|0);o=x;x=0;if(o&1){n=40;break}else m=i}else{f[e>>2]=(f[e>>2]|0)+(i&255);m=k;k=j}l=a+1|0;j=l;while(1){i=f[t>>2]|0;if(j>>>0>=i>>>0)break;a=f[(f[c>>2]|0)+(j<<2)>>2]|0;o=a+(X(i,k)|0)|0;C=yya(i,f[q>>2]|0,n,a)|0;z=g+(o>>>5<<2)|0;B=f[z>>2]|0;A=1<<(o&31);f[z>>2]=C|(A&B|0)!=0?B|A:B&~A;a=(QAa(i,f[p>>2]|0,n,a)|0)&255;o=(f[y>>2]|0)+o|0;b[o>>0]=(h[o>>0]|0)+a;j=j+1|0}k=m;a=l}if((n|0)==36){i=Ia()|0;break}else if((n|0)==40){i=Ia()|0;break}else if((n|0)==45){uSa(y);I1a(g);uSa(w);u=v;return}}}else n=14;while(0);if((n|0)==14){i=Ia()|0;g=f[m>>2]|0}uSa(y);I1a(g);uSa(w);Ua(i|0)}function Mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;t=u;u=u+80|0;p=t+16|0;o=t+64|0;h=t+68|0;i=t+56|0;l=t+60|0;m=t+52|0;j=t+48|0;e=t;g=t+32|0;v=t+36|0;f[h>>2]=a;E1a(l,f[33047]|0);d1a(m,72474);f[o>>2]=f[l>>2];f[p>>2]=f[m>>2];m=IB(d,o,p)|0;f[i>>2]=m;if(!m){J_a();x=0;ia(52,t+72|0,72483)|0;m=x;x=0;if(m&1){Ia()|0;gCa()}else gCa()}k=xab(c)|0;U0a(o,d);l=qwa(f[o>>2]|0,0)|0;m=l+12|0;d=f[h>>2]|0;f[j>>2]=f[f[i>>2]>>2];f[p>>2]=f[j>>2];aaa(m,Lya(o,d,ACa(o,p,1)|0)|0);j=NKa(f[o>>2]|0,f[h>>2]|0,1)|0;m$a(e,k);f[p>>2]=f[e>>2];f[p+4>>2]=f[e+4>>2];f[p+8>>2]=f[e+8>>2];f[p+12>>2]=f[e+12>>2];k=a0(o,p)|0;k=Fpa(f[o>>2]|0,0,j,k)|0;f[g>>2]=f[f[i>>2]>>2];f[p>>2]=f[g>>2];aaa(m,vsa(o,p,k)|0);f[p>>2]=o;f[p+4>>2]=i;f[p+8>>2]=h;k=b+36|0;DQ(v,f[k>>2]|0);i=f[v+4>>2]|0;h=f[v>>2]|0;while(1){if((h|0)==(i|0)){c=7;break}j=f[h>>2]|0;x=0;c=ga(219,f[j>>2]|0)|0;g=x;x=0;if(g&1){c=21;break}e=c+8|0;g=f[e>>2]|0;if((g|0)!=0?(f[g+4>>2]|0)!=5:0){x=0;a=ia(99,f[o>>2]|0,0)|0;g=x;x=0;if(g&1){c=22;break}x=0;d=ia(96,b|0,f[(f[e>>2]|0)+4>>2]|0)|0;g=x;x=0;if(g&1){c=23;break}g=a+12|0;x=0;c=ja(45,o|0,d|0,f[e>>2]|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;ua(81,g|0,c|0);w=x;x=0;if(w&1){c=23;break}x=0;c=ga(259,p|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;ua(81,g|0,c|0);w=x;x=0;if(w&1){c=23;break}x=0;c=ja(46,f[o>>2]|0,d|0,f[(f[e>>2]|0)+4>>2]|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;c=ia(108,o|0,c|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;ua(81,g|0,c|0);w=x;x=0;if(w&1){c=23;break}x=0;ta(439,a|0);w=x;x=0;if(w&1){c=23;break}}else{x=0;a=ga(259,p|0)|0;w=x;x=0;if(w&1){c=21;break}x=0;a=ja(51,o|0,a|0,c|0)|0;w=x;x=0;if(w&1){c=21;break}}f[j>>2]=a;h=h+4|0}a:do if((c|0)==7){a=f[k>>2]|0;b:do switch(f[a+4>>2]|0){case 0:{x=0;ua(81,m|0,a|0);w=x;x=0;if((!(w&1)?(x=0,n=ga(259,p|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,n|0),w=x,x=0,!(w&1)):0)c=40;break}case 5:{x=0;ua(81,m|0,a|0);w=x;x=0;if(!(w&1))c=40;break}default:{c=b+4|0;x=0;a=ia(96,b|0,f[c>>2]|0)|0;w=x;x=0;if((((((!(w&1)?(x=0,q=ja(45,o|0,a|0,f[k>>2]|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,q|0),w=x,x=0,!(w&1)):0)?(x=0,r=ga(259,p|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,r|0),w=x,x=0,!(w&1)):0)?(x=0,s=ja(46,f[o>>2]|0,a|0,f[c>>2]|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,s|0),w=x,x=0,!(w&1)):0){c=40;break b}a=Ia()|0;break a}}while(0);if((c|0)==40?(x=0,ta(439,l|0),w=x,x=0,!(w&1)):0){f[k>>2]=l;_$a(v);u=t;return}a=Ia()|0}else if((c|0)==21)a=Ia()|0;else if((c|0)==22)a=Ia()|0;else if((c|0)==23)a=Ia()|0;while(0);_$a(v);Ua(a|0)}function Ng(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+16|0;y=w;v=TTa(f[i>>2]|0,134880)|0;s=TTa(f[i>>2]|0,134896)|0;pc[f[(f[s>>2]|0)+20>>2]&4095](y,s);f[h>>2]=e;i=b[a>>0]|0;a:do switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,i|0)|0;r=x;x=0;if(r&1){i=Ia()|0;break a}else{k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=i;k=a+1|0;t=5;break a}}default:{k=a;t=5}}while(0);b:do if((t|0)==5){r=d;c:do if((r-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:{t=6;break c}}x=0;j=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,48)|0;q=x;x=0;if(!(q&1)?(m=f[h>>2]|0,f[h>>2]=m+1,b[m>>0]=j,m=k+2|0,x=0,l=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,b[i>>0]|0)|0,q=x,x=0,!(q&1)):0){i=f[h>>2]|0;f[h>>2]=i+1;b[i>>0]=l;i=m;while(1){if(i>>>0>=d>>>0){k=m;t=20;break c}t=b[i>>0]|0;fOa()|0;if(!(ibb(t<<24>>24)|0)){k=m;t=20;break c}i=i+1|0}}}else t=6;while(0);d:do if((t|0)==6){i=k;while(1){if(i>>>0>=d>>>0){t=20;break d}t=b[i>>0]|0;fOa()|0;if(!(jbb(t<<24>>24)|0)){t=20;break d}i=i+1|0}}while(0);e:do if((t|0)==20){p=y+11|0;o=b[p>>0]|0;q=y+4|0;f:do if((o<<24>>24<0?f[q>>2]|0:o&255)|0){g:do if((k|0)!=(i|0)){j=i;l=k;while(1){j=j+-1|0;if(l>>>0>=j>>>0)break g;o=b[l>>0]|0;b[l>>0]=b[j>>0]|0;b[j>>0]=o;l=l+1|0}}while(0);x=0;o=ga(f[(f[s>>2]|0)+16>>2]|0,s|0)|0;n=x;x=0;if(n&1){i=Ia()|0;break b}n=k;j=0;l=0;while(1){if(n>>>0>=i>>>0)break;m=b[((b[p>>0]|0)<0?f[y>>2]|0:y)+j>>0]|0;if(m<<24>>24>0&(l|0)==(m<<24>>24|0)){l=f[h>>2]|0;f[h>>2]=l+1;b[l>>0]=o;l=b[p>>0]|0;j=j+(j>>>0<((l<<24>>24<0?f[q>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}x=0;m=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,b[n>>0]|0)|0;z=x;x=0;if(z&1){t=39;break}z=f[h>>2]|0;f[h>>2]=z+1;b[z>>0]=m;n=n+1|0;l=l+1|0}if((t|0)==39){i=Ia()|0;break b}k=e+(k-a)|0;j=f[h>>2]|0;if((k|0)==(j|0))k=v;else while(1){j=j+-1|0;if(k>>>0>=j>>>0){k=v;break f}z=b[k>>0]|0;b[k>>0]=b[j>>0]|0;b[j>>0]=z;k=k+1|0}}else{x=0;ka(f[(f[v>>2]|0)+32>>2]|0,v|0,k|0,i|0,f[h>>2]|0)|0;z=x;x=0;if(z&1)break e;f[h>>2]=(f[h>>2]|0)+(i-k);k=v}while(0);while(1){if(i>>>0>=d>>>0)break;j=b[i>>0]|0;if(j<<24>>24==46){t=43;break}x=0;j=ia(f[(f[k>>2]|0)+28>>2]|0,v|0,j|0)|0;z=x;x=0;if(z&1){t=14;break}z=f[h>>2]|0;f[h>>2]=z+1;b[z>>0]=j;i=i+1|0}if((t|0)==14){i=Ia()|0;break b}if((t|0)==43){x=0;j=ga(f[(f[s>>2]|0)+12>>2]|0,s|0)|0;z=x;x=0;if(z&1)break;z=f[h>>2]|0;f[h>>2]=z+1;b[z>>0]=j;i=i+1|0}x=0;ka(f[(f[v>>2]|0)+32>>2]|0,v|0,i|0,d|0,f[h>>2]|0)|0;z=x;x=0;if(!(z&1)){z=(f[h>>2]|0)+(r-i)|0;f[h>>2]=z;f[g>>2]=(c|0)==(d|0)?z:e+(c-a)|0;HTa(y);u=w;return}}while(0);i=Ia()|0}while(0);HTa(y);Ua(i|0)}function Og(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=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;I=u;u=u+96|0;w=I+32|0;M=I+80|0;L=I+64|0;J=I+48|0;n=I+16|0;o=I;z=c+4|0;a:do if((f[z>>2]|0)==2){if(b[c+20>>0]|0)Ca(107295,106510,453,107344);mD(M,a,1);x=0;va(159,L|0,a|0,1);G=x;x=0;if(G&1)d=Ia()|0;else{x=0;va(159,J|0,a|0,1);G=x;x=0;if(G&1)d=Ia()|0;else{G=a+44|0;d=f[G>>2]|0;x=0;e=ga(320,J|0)|0;y=x;x=0;do if(!(y&1)?(B=c+24|0,x=0,H=ja(45,d|0,e|0,f[B>>2]|0)|0,y=x,x=0,!(y&1)):0){y=c+8|0;do if((b[y>>0]|0)==8){d=f[G>>2]|0;x=0;e=ga(320,L|0)|0;w=x;x=0;if((((!(w&1)?(h=f[G>>2]|0,i=(b[c+9>>0]|0)!=0,j=(Bbb(f[c+12>>2]|0)|0)+4|0,x=0,k=ga(320,J|0)|0,w=x,x=0,!(w&1)):0)?(x=0,l=ja(46,f[h>>2]|0,k|0,1)|0,w=x,x=0,!(w&1)):0)?(x=0,m=pa(10,f[h>>2]|0,4,i|0,j|0,1,l|0,1)|0,w=x,x=0,!(w&1)):0)?(x=0,g=ja(45,d|0,e|0,m|0)|0,w=x,x=0,!(w&1)):0)K=28}else{g=f[G>>2]|0;if(!(b[c+9>>0]|0)){x=0;e=ga(320,L|0)|0;v=x;x=0;if(v&1)break;d=f[G>>2]|0;m$a(o,0);x=0;f[w>>2]=f[o>>2];f[w+4>>2]=f[o+4>>2];f[w+8>>2]=f[o+8>>2];f[w+12>>2]=f[o+12>>2];d=ia(50,d|0,w|0)|0;w=x;x=0;if(w&1)break;x=0;d=ja(45,g|0,e|0,d|0)|0;w=x;x=0;if(w&1)break;else{g=d;K=28;break}}x=0;d=ga(320,L|0)|0;o=x;x=0;if(((((!(o&1)?(p=f[G>>2]|0,x=0,q=ga(320,M|0)|0,o=x,x=0,!(o&1)):0)?(x=0,r=ja(46,f[p>>2]|0,q|0,1)|0,q=x,x=0,!(q&1)):0)?(s=f[G>>2]|0,m$a(n,31),x=0,f[w>>2]=f[n>>2],f[w+4>>2]=f[n+4>>2],f[w+8>>2]=f[n+8>>2],f[w+12>>2]=f[n+12>>2],s=ia(50,s|0,w|0)|0,w=x,x=0,!(w&1)):0)?(x=0,t=ka(7,f[p>>2]|0,12,r|0,s|0)|0,w=x,x=0,!(w&1)):0)?(x=0,v=ja(45,g|0,d|0,t|0)|0,w=x,x=0,!(w&1)):0){g=v;K=28}}while(0);if((K|0)==28){f[z>>2]=1;z=b[y>>0]|0;b[y>>0]=(z&255)<4?z:4;y=c+16|0;z=Bbb(f[y>>2]|0)|0;x=0;ja(40,y|0,(z>>>0<4?z:4)|0,0)|0;z=x;x=0;if(z&1){d=Ia()|0;break}d=f[G>>2]|0;x=0;e=ga(320,J|0)|0;z=x;x=0;if(!(z&1)?(x=0,A=ja(46,f[d>>2]|0,e|0,1)|0,z=x,x=0,!(z&1)):0){f[B>>2]=A;d=f[G>>2]|0;x=0;e=ga(320,M|0)|0;B=x;x=0;do if(((!(B&1)?(x=0,C=ja(45,d|0,e|0,c|0)|0,c=x,x=0,!(c&1)):0)?(D=f[G>>2]|0,x=0,E=ga(320,M|0)|0,G=x,x=0,!(G&1)):0)?(x=0,F=ja(46,f[D>>2]|0,E|0,1)|0,G=x,x=0,!(G&1)):0){x=0;d=ma(27,d|0,H|0,C|0,g|0,F|0)|0;H=x;x=0;if(H&1)break;BVa(f[a+16>>2]|0,d)|0;x=0;va(161,a|0,d|0,L|0);a=x;x=0;if(a&1)break;HCa(J);HCa(L);HCa(M);break a}while(0);d=Ia()|0;break}}d=Ia()|0}else K=16;while(0);if((K|0)==16)d=Ia()|0;HCa(J)}HCa(L)}HCa(M);Ua(d|0)}while(0);u=I;return}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+b|0;c=f[a+4>>2]|0;do if(!(c&1)){e=f[a>>2]|0;if(!(c&3))return;h=a+(0-e)|0;b=e+b|0;if((f[33307]|0)==(h|0)){a=i+4|0;c=f[a>>2]|0;if((c&3|0)!=3)break;f[33304]=b;f[a>>2]=c&-2;f[h+4>>2]=b|1;f[i>>2]=b;return}d=e>>>3;if(e>>>0<256){a=f[h+8>>2]|0;c=f[h+12>>2]|0;if((c|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=c;f[c+8>>2]=a;break}}g=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){c=h+16|0;d=c+4|0;a=f[d>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}}else c=d;while(1){e=a+20|0;d=f[e>>2]|0;if(!d){e=a+16|0;d=f[e>>2]|0;if(!d)break;else{a=d;c=e}}else{a=d;c=e}}f[c>>2]=0}else{e=f[h+8>>2]|0;f[e+12>>2]=a;f[a+8>>2]=e}while(0);if(g){c=f[h+28>>2]|0;d=133512+(c<<2)|0;if((f[d>>2]|0)==(h|0)){f[d>>2]=a;if(!a){f[33303]=f[33303]&~(1<>2]|0)==(h|0)?e:g+20|0)>>2]=a;if(!a)break}f[a+24>>2]=g;c=h+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(c){f[a+20>>2]=c;f[c+24>>2]=a}}}else h=a;while(0);a=i+4|0;d=f[a>>2]|0;if(!(d&2)){if((f[33308]|0)==(i|0)){i=(f[33305]|0)+b|0;f[33305]=i;f[33308]=h;f[h+4>>2]=i|1;if((h|0)!=(f[33307]|0))return;f[33307]=0;f[33304]=0;return}if((f[33307]|0)==(i|0)){i=(f[33304]|0)+b|0;f[33304]=i;f[33307]=h;f[h+4>>2]=i|1;f[h+i>>2]=i;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){a=f[i+8>>2]|0;b=f[i+12>>2]|0;if((b|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=b;f[b+8>>2]=a;break}}else{g=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;c=a+4|0;b=f[c>>2]|0;if(!b){b=f[a>>2]|0;if(!b){c=0;break}}else a=c;while(1){d=b+20|0;c=f[d>>2]|0;if(!c){d=b+16|0;c=f[d>>2]|0;if(!c)break;else{b=c;a=d}}else{b=c;a=d}}f[a>>2]=0;c=b}else{c=f[i+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);if(g|0){b=f[i+28>>2]|0;a=133512+(b<<2)|0;if((f[a>>2]|0)==(i|0)){f[a>>2]=c;if(!c){f[33303]=f[33303]&~(1<>2]|0)==(i|0)?d:g+20|0)>>2]=c;if(!c)break}f[c+24>>2]=g;b=i+16|0;a=f[b>>2]|0;if(a|0){f[c+16>>2]=a;f[a+24>>2]=c}b=f[b+4>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}}while(0);f[h+4>>2]=e|1;f[h+e>>2]=e;if((h|0)==(f[33307]|0)){f[33304]=e;return}}else{f[a>>2]=d&-2;f[h+4>>2]=b|1;f[h+b>>2]=b;e=b}b=e>>>3;if(e>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=h;f[b+12>>2]=h;f[h+8>>2]=b;f[h+12>>2]=c;return}b=e>>>8;if(b)if(e>>>0>16777215)d=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;d=14-(c|g|d)+(i<>>15)|0;d=e>>>(d+7|0)&1|d<<1}else d=0;b=133512+(d<<2)|0;f[h+28>>2]=d;f[h+20>>2]=0;f[h+16>>2]=0;a=f[33303]|0;c=1<>2]=h;f[h+24>>2]=b;f[h+12>>2]=h;f[h+8>>2]=h;return}b=f[b>>2]|0;a:do if((f[b+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(e|0)){b=a;break a}else{d=d<<1;b=a}}f[c>>2]=h;f[h+24>>2]=b;f[h+12>>2]=h;f[h+8>>2]=h;return}while(0);g=b+8|0;i=f[g>>2]|0;f[i+12>>2]=h;f[g>>2]=h;f[h+8>>2]=i;f[h+12>>2]=b;f[h+24>>2]=0;return}function Qg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;i=l;a:do if((c-a|0)>1?(b[a>>0]|0)==83:0){h=b[a+1>>0]|0;b:do switch(h|0){case 97:{L3(i,124602);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(i);break b}}else{yY(g,i);f[e>>2]=(f[e>>2]|0)+24}JJa(i);a=a+2|0;break a}case 98:{K3(i,124617);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(i);break b}}else{yY(g,i);f[e>>2]=(f[e>>2]|0)+24}JJa(i);a=a+2|0;break a}case 115:{O3(i,124096);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(i);break b}}else{yY(g,i);f[e>>2]=(f[e>>2]|0)+24}JJa(i);a=a+2|0;break a}case 105:{N3(i,124192);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(i);break b}}else{yY(g,i);f[e>>2]=(f[e>>2]|0)+24}JJa(i);a=a+2|0;break a}case 111:{N3(i,124269);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(i);break b}}else{yY(g,i);f[e>>2]=(f[e>>2]|0)+24}JJa(i);a=a+2|0;break a}case 100:{M3(i,124346);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(i);break b}}else{yY(g,i);f[e>>2]=(f[e>>2]|0)+24}JJa(i);a=a+2|0;break a}case 95:{e=f[d+16>>2]|0;if((e|0)==(f[d+20>>2]|0))break a;h=f[e+4>>2]|0;i=d+4|0;j=d+8|0;e=f[e>>2]|0;while(1){if((e|0)==(h|0))break;g=f[i>>2]|0;if((g|0)==(f[j>>2]|0))Oz(d,e);else{x6(g,e);f[i>>2]=(f[i>>2]|0)+24}e=e+24|0}a=a+2|0;break a}default:{g=h+-48|0;e=g>>>0<10;if(!e?(Tab(h)|0)==0:0)break a;k=a+2|0;e=e?g:h+-55|0;while(1){if((k|0)==(c|0))break a;g=b[k>>0]|0;h=g<<24>>24;j=h+-48|0;i=j>>>0<10;if(!i?(Tab(h)|0)==0:0)break;k=k+1|0;e=(i?j:h+-55|0)+(e*36|0)|0}if(g<<24>>24!=95)break a;e=e+1|0;c=f[d+16>>2]|0;g=c;if(e>>>0>=(f[d+20>>2]|0)-c>>4>>>0)break a;h=f[g+(e<<4)+4>>2]|0;i=d+4|0;j=d+8|0;a=f[g+(e<<4)>>2]|0;while(1){if((a|0)==(h|0))break;e=f[i>>2]|0;if((e|0)==(f[j>>2]|0))Oz(d,a);else{x6(e,a);f[i>>2]=(f[i>>2]|0)+24}a=a+24|0}a=k+1|0;break a}}while(0);Ua(a|0)}while(0);u=l;return a|0}function Rg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:while(1){m=b;c=b+-4|0;o=a;b:while(1){l=o;a=m-l|0;d=a>>2;switch(d|0){case 1:case 0:break a;case 2:{n=4;break a}case 3:{n=6;break a}case 4:{n=7;break a}case 5:{n=8;break a}default:{}}if((a|0)<124){n=10;break a}j=o+(((d|0)/2|0)<<2)|0;if((a|0)>3996){a=(d|0)/4|0;a=sx(o,o+(a<<2)|0,j,j+(a<<2)|0,c)|0}else a=Py(o,j,c)|0;i=f[o>>2]|0;e=f[j>>2]|0;g=i;if(WPa(i,e)|0)d=c;else{d=c;do{d=d+-4|0;if((o|0)==(d|0)){n=17;break b}h=f[d>>2]|0}while(!(WPa(h,e)|0));f[o>>2]=h;f[d>>2]=g;a=a+1|0}e=o+4|0;c:do if(e>>>0>>0){k=j;while(1){j=f[k>>2]|0;while(1){g=f[e>>2]|0;h=e+4|0;i=g;if(WPa(g,j)|0)e=h;else break}do{d=d+-4|0;r=f[d>>2]|0;g=r}while(!(WPa(r,j)|0));if(e>>>0>d>>>0){d=k;break c}f[e>>2]=g;f[d>>2]=i;k=(k|0)==(e|0)?d:k;e=h;a=a+1|0}}else d=j;while(0);if((e|0)!=(d|0)?(p=f[d>>2]|0,q=f[e>>2]|0,WPa(p,q)|0):0){f[e>>2]=p;f[d>>2]=q;a=a+1|0}if(!a){d=Gp(o,e)|0;a=e+4|0;if(Gp(a,b)|0){n=46;break}if(d){c=2;n=51;break}}r=e;if((r-l|0)>=(m-r|0)){n=50;break}Rg(o,e);o=e+4|0}d:do if((n|0)==17){n=0;a=o+4|0;r=f[c>>2]|0;e=r;if(!(WPa(i,r)|0)){while(1){if((a|0)==(c|0))break a;d=f[a>>2]|0;if(WPa(i,d)|0)break;a=a+4|0}f[a>>2]=e;f[c>>2]=d;a=a+4|0}if((a|0)==(c|0))break a;while(1){h=f[o>>2]|0;while(1){r=f[a>>2]|0;e=a+4|0;g=r;if(WPa(h,r)|0)break;else a=e}do{c=c+-4|0;r=f[c>>2]|0;d=r}while(WPa(h,r)|0);if(a>>>0>=c>>>0){c=4;n=51;break d}f[a>>2]=d;f[c>>2]=g;a=e}}else if((n|0)==46){c=d?1:2;a=o;b=d?b:e;n=51}else if((n|0)==50){n=0;Rg(e+4|0,b);a=o;b=e}while(0);if((n|0)==51){n=0;switch(c&7){case 2:case 4:case 0:break;default:break a}}}if((n|0)==4){a=f[c>>2]|0;b=f[o>>2]|0;if(WPa(a,b)|0){f[o>>2]=a;f[c>>2]=b}}else if((n|0)==6)Py(o,o+4|0,c)|0;else if((n|0)==7)_B(o,o+4|0,o+8|0,c)|0;else if((n|0)==8)sx(o,o+4|0,o+8|0,o+12|0,c)|0;else if((n|0)==10)sE(o,b);return}function Sg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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;u=c+4|0;a:while(1){o=b;p=b+-4|0;r=a;b:while(1){n=r;a=o-n|0;d=a>>2;switch(d|0){case 1:case 0:break a;case 2:{q=4;break a}case 3:{q=6;break a}case 4:{q=7;break a}case 5:{q=8;break a}default:{}}if((a|0)<124){q=10;break a}k=r+(((d|0)/2|0)<<2)|0;if((a|0)>3996){a=(d|0)/4|0;a=Gx(r,r+(a<<2)|0,k,k+(a<<2)|0,p,c)|0}else a=bA(r,k,p,f[f[c>>2]>>2]|0,f[u>>2]|0)|0;j=f[r>>2]|0;e=f[k>>2]|0;i=f[u>>2]|0;h=f[f[c>>2]>>2]|0;if(T4(h,i,j,e)|0)d=p;else{d=p;do{d=d+-4|0;if((r|0)==(d|0)){q=17;break b}g=f[d>>2]|0}while(!(T4(h,i,g,e)|0));f[r>>2]=g;f[d>>2]=j;a=a+1|0}e=r+4|0;c:do if(e>>>0>>0){m=k;while(1){l=f[m>>2]|0;k=f[u>>2]|0;j=f[f[c>>2]>>2]|0;while(1){h=f[e>>2]|0;i=e+4|0;if(T4(j,k,h,l)|0)e=i;else break}do{d=d+-4|0;g=f[d>>2]|0}while(!(T4(j,k,g,l)|0));if(e>>>0>d>>>0){d=m;g=e;break c}f[e>>2]=g;f[d>>2]=h;m=(m|0)==(e|0)?d:m;e=i;a=a+1|0}}else{d=k;g=e}while(0);if((g|0)!=(d|0)?(s=f[d>>2]|0,t=f[g>>2]|0,T4(f[f[c>>2]>>2]|0,f[u>>2]|0,s,t)|0):0){f[g>>2]=s;f[d>>2]=t;a=a+1|0}if(!a){e=Yo(r,g,c)|0;a=g+4|0;if(Yo(a,b,c)|0){q=46;break}if(e){d=2;q=51;break}}m=g;if((m-n|0)>=(o-m|0)){q=50;break}Sg(r,g,c);r=g+4|0}d:do if((q|0)==17){q=0;a=r+4|0;e=f[p>>2]|0;if(!(T4(h,i,j,e)|0)){while(1){if((a|0)==(p|0))break a;d=f[a>>2]|0;if(T4(h,i,j,d)|0)break;a=a+4|0}f[a>>2]=e;f[p>>2]=d;a=a+4|0}if((a|0)==(p|0))break a;d=p;while(1){k=f[r>>2]|0;j=f[u>>2]|0;i=f[f[c>>2]>>2]|0;while(1){g=f[a>>2]|0;h=a+4|0;if(T4(i,j,k,g)|0)break;else a=h}do{d=d+-4|0;e=f[d>>2]|0}while(T4(i,j,k,e)|0);if(a>>>0>=d>>>0){d=4;q=51;break d}f[a>>2]=e;f[d>>2]=g;a=h}}else if((q|0)==46){d=e?1:2;a=r;b=e?b:g;q=51}else if((q|0)==50){q=0;Sg(g+4|0,b,c);a=r;b=g}while(0);if((q|0)==51){q=0;switch(d&7){case 2:case 4:case 0:break;default:break a}}}if((q|0)==4){a=f[p>>2]|0;b=f[r>>2]|0;if(T4(f[f[c>>2]>>2]|0,f[u>>2]|0,a,b)|0){f[r>>2]=a;f[p>>2]=b}}else if((q|0)==6)bA(r,r+4|0,p,f[f[c>>2]>>2]|0,f[u>>2]|0)|0;else if((q|0)==7)UA(r,r+4|0,r+8|0,p,c)|0;else if((q|0)==8)Gx(r,r+4|0,r+8|0,r+12|0,p,c)|0;else if((q|0)==10)qC(r,b,c);return}function Tg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+240|0;t=C+160|0;h=C+231|0;i=C+230|0;D=C+216|0;E=C+204|0;z=C+200|0;A=C;v=C+196|0;w=C+192|0;y=C+229|0;s=C+228|0;Nz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;p=E+4|0;q=E+8|0;o=b[h>>0]|0;m=b[i>>0]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;k=$1a(d,-1)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[p>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;if(bo(d&255,y,s,i,z,o,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+1;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+QW(i,f[z>>2]|0,e);n[g>>2]=G;Sz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=X6a(b[d>>0]|0)|0;i=$1a(d,-1)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;HTa(E);HTa(D);u=C;return h|0}while(0);d=Ia()|0}}HTa(E);HTa(D);Ua(d|0);return 0}function Ug(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+240|0;t=C+160|0;h=C+231|0;i=C+230|0;D=C+216|0;E=C+204|0;z=C+200|0;A=C;v=C+196|0;w=C+192|0;y=C+229|0;s=C+228|0;Nz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=b[h>>0]|0;m=b[i>>0]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;k=$1a(d,-1)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;if(bo(d&255,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+1;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+PW(i,f[z>>2]|0,e);p[g>>3]=G;Sz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=X6a(b[d>>0]|0)|0;i=$1a(d,-1)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;HTa(E);HTa(D);u=C;return h|0}while(0);d=Ia()|0}}HTa(E);HTa(D);Ua(d|0);return 0}function Vg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+240|0;t=C+160|0;h=C+231|0;i=C+230|0;D=C+216|0;E=C+204|0;z=C+200|0;A=C;v=C+196|0;w=C+192|0;y=C+229|0;s=C+228|0;Nz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=b[h>>0]|0;m=b[i>>0]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;k=$1a(d,-1)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=X6a(b[d>>0]|0)|0;if(bo(d&255,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+1;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+RW(i,f[z>>2]|0,e);p[g>>3]=G;Sz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=X6a(b[d>>0]|0)|0;i=$1a(d,-1)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;HTa(E);HTa(D);u=C;return h|0}while(0);d=Ia()|0}}HTa(E);HTa(D);Ua(d|0);return 0}function Wg(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+48|0;r=q+24|0;n=q+12|0;o=q;p=a+12|0;do if(b[p>>0]|0){e=yCa(134176,98675)|0;ZXa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[r>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){JCa(r);Wq(e,d)|0;du(e)|0;break}s=Ia()|0;JCa(r);Ua(s|0)}while(0);m=nq(a)|0;do if(b[p>>0]|0){c=zm(yCa(134176,97877)|0,m)|0;ZXa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[r>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(r);Wq(c,g)|0;du(c)|0;break}s=Ia()|0;JCa(r);Ua(s|0)}while(0);l=0;a:while(1){if(l>>>0>=m>>>0){s=13;break}if(b[p>>0]|0){d=yCa(134176,97883)|0;ZXa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[r>>2]|0,134880)|0;k=x;x=0;if(k&1){s=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;k=x;x=0;if(k&1){s=17;break}JCa(r);Wq(d,c)|0;du(d)|0}k=n8(20)|0;sPa(k);c=oq(a)|0;if((c|0)!=-32){BY(r,c);x=0;ia(83,r|0,98693)|0;j=x;x=0;if(j&1){s=26;break}f[n>>2]=f[r>>2];f[n+4>>2]=f[r+4>>2];f[n+8>>2]=f[r+8>>2];c=0;while(1){if((c|0)==3)break;f[r+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1869,a|0,n|0);j=x;x=0;if(j&1){s=27;break}HTa(n);HTa(r)}j=nq(a)|0;if(b[p>>0]|0){d=zm(yCa(134176,98713)|0,j)|0;ZXa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[r>>2]|0,134880)|0;i=x;x=0;if(i&1){s=32;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;i=x;x=0;if(i&1){s=32;break}JCa(r);Wq(d,c)|0;du(d)|0}g=k+12|0;h=k+16|0;i=k+8|0;c=0;while(1){if((c|0)==(j|0))break;d=mF(a)|0;f[r>>2]=d;e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[g>>2]=e+4}else IL(i,r);c=c+1|0}switch(nq(a)|0){case 0:{c=0;break}case 1:{s=44;break}default:{f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;WZ(o,98726,h7a(98726)|0);x=0;ua(1869,a|0,o|0);s=x;x=0;if(s&1){s=43;break a}HTa(o);s=44}}if((s|0)==44){s=0;c=ix(a)|0}f[k+4>>2]=c;j=f[a>>2]|0;j=WT((f[j+4>>2]|0)-(f[j>>2]|0)>>2)|0;f[k>>2]=j;zs(f[a>>2]|0,k);l=l+1|0}if((s|0)==13){u=q;return}else if((s|0)==17){s=Ia()|0;JCa(r);Ua(s|0)}else if((s|0)==26){c=Ia()|0;s=28}else if((s|0)==27){c=Ia()|0;HTa(n);s=28}else if((s|0)==32){s=Ia()|0;JCa(r);Ua(s|0)}else if((s|0)==43){c=Ia()|0;HTa(o)}if((s|0)==28)HTa(r);Ua(c|0)}function Xg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;n=u;u=u+16|0;E=n;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=b;C=b+8|0;k=b+12|0;y=c+4|0;a:do if(((f[k>>2]|0)-(f[C>>2]|0)>>2|0)==((f[y>>2]|0)-(f[c>>2]|0)>>4|0)){D=fQa(b)|0;x=0;ua(106,a|0,D|0);D=x;x=0;if(D&1)D=15;else{e=0;while(1){if(e>>>0>=(fQa(b)|0)>>>0){D=19;break}D=f[c>>2]|0;d=D;if(e>>>0<(f[y>>2]|0)-D>>4>>>0){if(!(FVa(b,e)|0)){D=24;break}d=d+(e<<4)|0;if((f[(f[C>>2]|0)+(e<<2)>>2]|0)!=(f[d>>2]|0)){D=26;break}D=(f[a>>2]|0)+(e<<4)|0;f[D>>2]=f[d>>2];f[D+4>>2]=f[d+4>>2];f[D+8>>2]=f[d+8>>2];f[D+12>>2]=f[d+12>>2]}else{if(!(LVa(b,e)|0)){D=45;break}x=0;d=ia(80,b|0,e|0)|0;D=x;x=0;if(D&1){D=20;break}f[(f[a>>2]|0)+(e<<4)>>2]=d}e=e+1|0}do if((D|0)==19){u=n;return}else if((D|0)==20){d=Ia()|0;break a}else if((D|0)==24){x=0;wa(71,57364,101307,717,57385);x=0}else if((D|0)==26){x=0;d=ia(62,134176,57312)|0;y=x;x=0;if((((((((((!(y&1)?(x=0,z=ia(76,d|0,f[b>>2]|0)|0,b=x,x=0,!(b&1)):0)?(x=0,o=ia(62,z|0,57399)|0,b=x,x=0,!(b&1)):0)?(x=0,p=ga(228,f[(f[C>>2]|0)+(e<<2)>>2]|0)|0,C=x,x=0,!(C&1)):0)?(x=0,q=ia(62,o|0,p|0)|0,C=x,x=0,!(C&1)):0)?(x=0,r=ia(62,q|0,57415)|0,C=x,x=0,!(C&1)):0)?(x=0,s=ia(78,r|0,e|0)|0,C=x,x=0,!(C&1)):0)?(x=0,t=ia(62,s|0,57431)|0,C=x,x=0,!(C&1)):0)?(x=0,v=ga(228,f[(f[c>>2]|0)+(e<<4)>>2]|0)|0,C=x,x=0,!(C&1)):0)?(x=0,w=ia(62,t|0,v|0)|0,C=x,x=0,!(C&1)):0)?(x=0,A=ia(62,w|0,123565)|0,C=x,x=0,!(C&1)):0){ZXa(E,z+(f[(f[z>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[E>>2]|0,134880)|0;C=x;x=0;if(!(C&1)?(x=0,B=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,C=x,x=0,!(C&1)):0){JCa(E);x=0;ia(79,A|0,B|0)|0;E=x;x=0;if(E&1)break;x=0;ga(227,A|0)|0;E=x;x=0;if(E&1)break;x=0;sa(5);x=0;break}d=Ia()|0;JCa(E);break a}}else if((D|0)==45){x=0;wa(71,57438,101307,727,57385);x=0}while(0);d=Ia()|0}}else{x=0;d=ia(62,134176,57312)|0;B=x;x=0;if((((((!(B&1)?(x=0,e=ia(76,d|0,f[b>>2]|0)|0,B=x,x=0,!(B&1)):0)?(x=0,g=ia(62,e|0,57323)|0,B=x,x=0,!(B&1)):0)?(x=0,h=ia(78,g|0,(f[k>>2]|0)-(f[C>>2]|0)>>2|0)|0,C=x,x=0,!(C&1)):0)?(x=0,i=ia(62,h|0,57334)|0,C=x,x=0,!(C&1)):0)?(x=0,j=ia(78,i|0,(f[y>>2]|0)-(f[c>>2]|0)>>4|0)|0,C=x,x=0,!(C&1)):0)?(x=0,l=ia(62,j|0,57352)|0,C=x,x=0,!(C&1)):0){ZXa(E,e+(f[(f[e>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[E>>2]|0,134880)|0;C=x;x=0;if(!(C&1)?(x=0,m=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,C=x,x=0,!(C&1)):0){JCa(E);x=0;ia(79,l|0,m|0)|0;E=x;x=0;if(E&1){D=15;break}x=0;ga(227,l|0)|0;E=x;x=0;if(E&1){D=15;break}x=0;sa(5);x=0;D=15;break}d=Ia()|0;JCa(E)}else D=15}while(0);if((D|0)==15)d=Ia()|0;uSa(a);Ua(d|0)}function Yg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;sP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=WEa(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;l=$1a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}t=LL(i,f[t>>2]|0,e,q)|0;B=g;f[B>>2]=t;f[B+4>>2]=I;Sz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;i=$1a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;HTa(A);HTa(z);u=y;return h|0}while(0);d=Ia()|0}}HTa(A);HTa(z);Ua(d|0);return 0}function Zg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do switch(d<<24>>24){case 106:{d=1;e=0;g=77;break}case 124:{d=2;e=25;g=77;break}case -110:{d=3;e=50;g=77;break}case -96:{d=4;e=63;g=77;break}case 107:{d=1;e=1;g=77;break}case 125:{d=2;e=26;g=77;break}case -109:{d=3;e=51;g=77;break}case -95:{d=4;e=64;g=77;break}case 108:{d=1;e=2;g=77;break}case 126:{d=2;e=27;g=77;break}case -108:{d=3;e=52;g=77;break}case -94:{d=4;e=65;g=77;break}case 109:{d=1;e=3;g=77;break}case 127:{d=2;e=28;g=77;break}case 110:{d=1;e=4;g=77;break}case -128:{d=2;e=29;g=77;break}case 111:{d=1;e=5;g=77;break}case -127:{d=2;e=30;g=77;break}case 112:{d=1;e=6;g=77;break}case -126:{d=2;e=31;g=77;break}case 113:{d=1;e=7;g=77;break}case -125:{d=2;e=32;g=77;break}case 114:{d=1;e=8;g=77;break}case -124:{d=2;e=33;g=77;break}case 115:{d=1;e=9;g=77;break}case -123:{d=2;e=34;g=77;break}case 116:{d=1;e=10;g=77;break}case -122:{d=2;e=35;g=77;break}case 118:{d=1;e=11;g=77;break}case -120:{d=2;e=36;g=77;break}case 117:{d=1;e=12;g=77;break}case -121:{d=2;e=37;g=77;break}case 119:{d=1;e=13;g=77;break}case -119:{d=2;e=38;g=77;break}case 120:{d=1;e=14;g=77;break}case -118:{d=2;e=39;g=77;break}case -107:{d=3;e=53;g=77;break}case -93:{d=4;e=66;g=77;break}case -104:{d=3;e=54;g=77;break}case -90:{d=4;e=67;g=77;break}case -106:{d=3;e=55;g=77;break}case -92:{d=4;e=68;g=77;break}case -105:{d=3;e=56;g=77;break}case -91:{d=4;e=69;g=77;break}case 70:{d=1;e=15;g=77;break}case 81:{d=2;e=40;g=77;break}case 91:{d=3;e=57;g=77;break}case 97:{d=4;e=70;g=77;break}case 71:{d=1;e=16;g=77;break}case 82:{d=2;e=41;g=77;break}case 92:{d=3;e=58;g=77;break}case 98:{d=4;e=71;g=77;break}case 72:{d=1;e=17;g=77;break}case 83:{d=2;e=42;g=77;break}case 73:{d=1;e=18;g=77;break}case 84:{d=2;e=43;g=77;break}case 76:{d=1;e=19;g=77;break}case 87:{d=2;e=44;g=77;break}case 77:{d=1;e=20;g=77;break}case 88:{d=2;e=45;g=77;break}case 74:{d=1;e=21;g=77;break}case 85:{d=2;e=46;g=77;break}case 75:{d=1;e=22;g=77;break}case 86:{d=2;e=47;g=77;break}case 78:{d=1;e=23;g=77;break}case 89:{d=2;e=48;g=77;break}case 79:{d=1;e=24;g=77;break}case 90:{d=2;e=49;g=77;break}case 93:{d=3;e=59;g=77;break}case 99:{d=4;e=72;g=77;break}case 95:{d=3;e=60;g=77;break}case 101:{d=4;e=73;g=77;break}case 94:{d=3;e=61;g=77;break}case 100:{d=4;e=74;g=77;break}case 96:{d=3;e=62;g=77;break}case 102:{d=4;e=75;g=77;break}default:d=0}while(0);if((g|0)==77){g=ZTa(f[a+4>>2]|0)|0;f[g+8>>2]=e;f[g+4>>2]=d;do if(b[a+12>>0]|0){d=yCa(134176,110662)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(d,h)|0;du(d)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);d=dk(a)|0;f[g+16>>2]=d;d=dk(a)|0;f[g+12>>2]=d;OY(g);f[c>>2]=g;d=1}u=j;return d|0}function _g(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;sP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=WEa(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;l=$1a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=X6a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}t=eP(i,f[t>>2]|0,e,q)|0;B=g;f[B>>2]=t;f[B+4>>2]=I;Sz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;i=$1a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=X6a(b[d>>0]|0)|0;if(!($1a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;HTa(A);HTa(z);u=y;return h|0}while(0);d=Ia()|0}}HTa(A);HTa(z);Ua(d|0);return 0}function $g(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;k=o+12|0;j=o+8|0;m=o+4|0;n=o;f[g>>2]=0;ZXa(k,e);x=0;l=ia(73,f[k>>2]|0,134912)|0;q=x;x=0;if(q&1){q=Ia()|0;JCa(k);Ua(q|0)}JCa(k);do switch(i<<24>>24|0){case 65:case 97:{TY(a,h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 104:case 66:case 98:{sY(a,h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 99:{q=a+8|0;q=bc[f[(f[q>>2]|0)+12>>2]&511](q)|0;p=b[q+8+3>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+((i?f[q+4>>2]|0:p&255)<<2)|0)|0;f[c>>2]=p;p=28;break}case 101:case 100:{Z4(h+12|0,c,f[d>>2]|0,g,l);p=28;break}case 68:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31264,31296)|0;f[c>>2]=p;p=28;break}case 70:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31296,31328)|0;f[c>>2]=p;p=28;break}case 72:{P5(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 73:{y4(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 106:{_4(h+28|0,c,f[d>>2]|0,g,l);p=28;break}case 109:{j5(h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 77:{E5(h+4|0,c,f[d>>2]|0,g,l);p=28;break}case 116:case 110:{mo(c,f[d>>2]|0,g,l);p=28;break}case 112:{iF(a,h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 114:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31328,31372)|0;f[c>>2]=p;p=28;break}case 82:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31376,31396)|0;f[c>>2]=p;p=28;break}case 83:{D5(h,c,f[d>>2]|0,g,l);p=28;break}case 84:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31408,31440)|0;f[c>>2]=p;p=28;break}case 119:{C5(h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 120:{q=f[(f[a>>2]|0)+20>>2]|0;f[m>>2]=f[c>>2];f[n>>2]=f[d>>2];f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];j=jc[q&63](a,j,k,e,g,h)|0;break}case 88:{q=a+8|0;q=bc[f[(f[q>>2]|0)+24>>2]&511](q)|0;p=b[q+8+3>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+((i?f[q+4>>2]|0:p&255)<<2)|0)|0;f[c>>2]=p;p=28;break}case 121:{G1(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 89:{gba(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 37:{Fn(c,f[d>>2]|0,g,l);p=28;break}default:{f[g>>2]=f[g>>2]|4;p=28}}while(0);if((p|0)==28)j=f[c>>2]|0;u=o;return j|0}function ah(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;k=o+12|0;j=o+8|0;m=o+4|0;n=o;f[g>>2]=0;ZXa(k,e);x=0;l=ia(73,f[k>>2]|0,134880)|0;q=x;x=0;if(q&1){q=Ia()|0;JCa(k);Ua(q|0)}JCa(k);do switch(i<<24>>24|0){case 65:case 97:{UY(a,h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 104:case 66:case 98:{tY(a,h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 99:{q=a+8|0;q=bc[f[(f[q>>2]|0)+12>>2]&511](q)|0;p=b[q+11>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+(i?f[q+4>>2]|0:p&255)|0)|0;f[c>>2]=p;p=28;break}case 101:case 100:{$4(h+12|0,c,f[d>>2]|0,g,l);p=28;break}case 68:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120459,120467)|0;f[c>>2]=p;p=28;break}case 70:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120467,120475)|0;f[c>>2]=p;p=28;break}case 72:{Q5(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 73:{z4(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 106:{a5(h+28|0,c,f[d>>2]|0,g,l);p=28;break}case 109:{k5(h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 77:{H5(h+4|0,c,f[d>>2]|0,g,l);p=28;break}case 116:case 110:{Vn(c,f[d>>2]|0,g,l);p=28;break}case 112:{kF(a,h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 114:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120475,120486)|0;f[c>>2]=p;p=28;break}case 82:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120486,120491)|0;f[c>>2]=p;p=28;break}case 83:{G5(h,c,f[d>>2]|0,g,l);p=28;break}case 84:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120491,120499)|0;f[c>>2]=p;p=28;break}case 119:{F5(h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 120:{q=f[(f[a>>2]|0)+20>>2]|0;f[m>>2]=f[c>>2];f[n>>2]=f[d>>2];f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];j=jc[q&63](a,j,k,e,g,h)|0;break}case 88:{q=a+8|0;q=bc[f[(f[q>>2]|0)+24>>2]&511](q)|0;p=b[q+11>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+(i?f[q+4>>2]|0:p&255)|0)|0;f[c>>2]=p;p=28;break}case 121:{H1(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 89:{hba(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 37:{jn(c,f[d>>2]|0,g,l);p=28;break}default:{f[g>>2]=f[g>>2]|4;p=28}}while(0);if((p|0)==28)j=f[c>>2]|0;u=o;return j|0}function bh(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;p=v+12|0;o=v+8|0;q=v+4|0;r=v;ZXa(p,d);x=0;s=ia(73,f[p>>2]|0,134912)|0;n=x;x=0;if(n&1){v=Ia()|0;JCa(p);Ua(v|0)}JCa(p);f[e>>2]=0;j=0;a:while(1){if(!((h|0)!=(i|0)&(j|0)==0))break;k=b;if(!b){m=0;n=0;l=1}else{j=f[b+12>>2]|0;if((j|0)==(f[b+16>>2]|0))j=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else j=Bbb(f[j>>2]|0)|0;j=T5a(j)|0;m=j?0:b;n=j?0:b;l=j;k=j?0:k}b=c;if(c){j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=Bbb(f[j>>2]|0)|0;if(!(T5a(j)|0)){if(!l){t=58;break}}else{b=0;t=14}}else t=14;if((t|0)==14){t=0;if(l){c=0;t=58;break}else c=0}b:do if((ec[f[(f[s>>2]|0)+52>>2]&127](s,f[h>>2]|0,0)|0)<<24>>24==37){l=h+4|0;if((l|0)==(i|0)){t=58;break a}j=ec[f[(f[s>>2]|0)+52>>2]&127](s,f[l>>2]|0,0)|0;switch(j<<24>>24){case 48:case 69:{h=h+8|0;if((h|0)==(i|0)){t=58;break a}m=j;j=ec[f[(f[s>>2]|0)+52>>2]&127](s,f[h>>2]|0,0)|0;h=l;break}default:m=0}n=f[(f[a>>2]|0)+36>>2]|0;f[q>>2]=k;f[r>>2]=b;f[o>>2]=f[q>>2];f[p>>2]=f[r>>2];h=h+8|0;b=lc[n&15](a,o,p,d,e,g,j,m)|0}else{if(!(ec[f[(f[s>>2]|0)+12>>2]&127](s,8192,f[h>>2]|0)|0)){j=n+12|0;b=f[j>>2]|0;k=n+16|0;if((b|0)==(f[k>>2]|0))b=bc[f[(f[n>>2]|0)+36>>2]&511](n)|0;else b=Bbb(f[b>>2]|0)|0;l=dc[f[(f[s>>2]|0)+28>>2]&255](s,b)|0;if((l|0)!=(dc[f[(f[s>>2]|0)+28>>2]&255](s,f[h>>2]|0)|0)){f[e>>2]=4;b=m;break}b=f[j>>2]|0;if((b|0)==(f[k>>2]|0))bc[f[(f[n>>2]|0)+40>>2]&511](n)|0;else f[j>>2]=b+4;h=h+4|0;b=m;break}do{h=h+4|0;if((h|0)==(i|0)){h=i;break}}while(ec[f[(f[s>>2]|0)+12>>2]&127](s,8192,f[h>>2]|0)|0);b=m;k=c;j=n;m=c;while(1){if(!j){n=0;j=1}else{c=f[j+12>>2]|0;if((c|0)==(f[j+16>>2]|0))c=bc[f[(f[j>>2]|0)+36>>2]&511](j)|0;else c=Bbb(f[c>>2]|0)|0;l=T5a(c)|0;b=l?0:b;n=l?0:j;j=l}if(m){c=f[m+12>>2]|0;if((c|0)==(f[m+16>>2]|0))c=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0;else c=Bbb(f[c>>2]|0)|0;if(!(T5a(c)|0))if(j)c=k;else{c=k;break b}else{c=0;t=38}}else{c=k;t=38}if((t|0)==38){t=0;if(j)break b;else m=0}k=n+12|0;j=f[k>>2]|0;l=n+16|0;if((j|0)==(f[l>>2]|0))j=bc[f[(f[n>>2]|0)+36>>2]&511](n)|0;else j=Bbb(f[j>>2]|0)|0;if(!(ec[f[(f[s>>2]|0)+12>>2]&127](s,8192,j)|0))break b;j=f[k>>2]|0;if((j|0)==(f[l>>2]|0))bc[f[(f[n>>2]|0)+40>>2]&511](n)|0;else f[k>>2]=j+4;k=c;j=n}}while(0);j=f[e>>2]|0}if((t|0)==58){f[e>>2]=4;b=n}if(!b){b=0;j=1}else{h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0))h=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else h=Bbb(f[h>>2]|0)|0;j=T5a(h)|0;b=j?0:b}if(c){h=f[c+12>>2]|0;if((h|0)==(f[c+16>>2]|0))c=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=Bbb(f[h>>2]|0)|0;if(!(T5a(c)|0)){if(!j)t=71}else t=69}else t=69;if((t|0)==69?j:0)t=71;if((t|0)==71)f[e>>2]=f[e>>2]|2;u=v;return b|0}function ch(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=ISa(d,z+160|0)|0;qP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=WEa(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;l=T5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Bbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}v=LL(i,f[v>>2]|0,e,r)|0;C=g;f[C>>2]=v;f[C+4>>2]=I;Sz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;i=T5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Bbb(f[d>>2]|0)|0;if(!(T5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;HTa(B);HTa(A);u=z;return h|0}while(0);d=Ia()|0}}HTa(B);HTa(A);Ua(d|0);return 0} -function Dj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=yCa(134176,110794)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);jGa(a,f[c+24>>2]|0);jGa(a,f[c+28>>2]|0);if((f[c+4>>2]|0)==5)dTa(f[a+28>>2]|0);else{a:do if(!(b[c+20>>0]|0))switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,58)|0;break a}case 2:{Ev(f[a+28>>2]|0,59)|0;break a}case 4:{Ev(f[a+28>>2]|0,54)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,60)|0;break a}case 2:{Ev(f[a+28>>2]|0,61)|0;break a}case 4:{Ev(f[a+28>>2]|0,62)|0;break a}case 8:{Ev(f[a+28>>2]|0,55)|0;break a}default:hb()}break}case 3:{Ev(f[a+28>>2]|0,56)|0;break a}case 4:{Ev(f[a+28>>2]|0,57)|0;break a}default:hb()}else{d=a+28|0;Ev(f[d>>2]|0,-2)|0;switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,25)|0;break a}case 2:{Ev(f[d>>2]|0,26)|0;break a}case 4:{Ev(f[d>>2]|0,23)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,27)|0;break a}case 2:{Ev(f[d>>2]|0,28)|0;break a}case 4:{Ev(f[d>>2]|0,29)|0;break a}case 8:{Ev(f[d>>2]|0,24)|0;break a}default:hb()}break}default:hb()}}while(0);i=Bbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;CX(a,i,k,Bbb(f[c+12>>2]|0)|0)}u=j;return}function Ej(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;l=m+16|0;k=m;a:do if((c-a|0)>1?(b[a>>0]|0)==84:0){e=b[a+1>>0]|0;do if(e<<24>>24==95){e=f[d+36>>2]|0;if((f[d+32>>2]|0)==(e|0))break a;g=f[e+-16>>2]|0;if((g|0)==(f[e+-12>>2]|0)){h4(l);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);k=x;x=0;if(k&1){a=Ia()|0;JJa(l);break}}else{yY(g,l);f[e>>2]=(f[e>>2]|0)+24}JJa(l);b[d+62>>0]=1;a=a+2|0;break a}h=f[g+4>>2]|0;c=d+4|0;i=d+8|0;e=f[g>>2]|0;while(1){if((e|0)==(h|0))break;g=f[c>>2]|0;if((g|0)==(f[i>>2]|0))Oz(d,e);else{x6(g,e);f[c>>2]=(f[c>>2]|0)+24}e=e+24|0}a=a+2|0;break a}else{e=(e<<24>>24)+-48|0;if(e>>>0>=10)break a;j=a+2|0;while(1){if((j|0)==(c|0))break a;g=b[j>>0]|0;h=(g<<24>>24)+-48|0;if(h>>>0>=10)break;e=h+(e*10|0)|0;j=j+1|0}if(g<<24>>24!=95)break a;g=f[d+36>>2]|0;if((f[d+32>>2]|0)==(g|0))break a;e=e+1|0;c=f[g+-16>>2]|0;i=c;if(e>>>0>=(f[g+-12>>2]|0)-c>>4>>>0){g=j+1|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;SM(k,a,g);NY(l,k);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);j=x;x=0;if(j&1){a=Ia()|0;JJa(l);HTa(k);break}}else{yY(e,l);f[a>>2]=(f[a>>2]|0)+24}JJa(l);HTa(k);b[d+62>>0]=1;a=g;break a}g=f[i+(e<<4)+4>>2]|0;h=d+4|0;c=d+8|0;a=f[i+(e<<4)>>2]|0;while(1){if((a|0)==(g|0))break;e=f[h>>2]|0;if((e|0)==(f[c>>2]|0))Oz(d,a);else{x6(e,a);f[h>>2]=(f[h>>2]|0)+24}a=a+24|0}a=j+1|0;break a}while(0);Ua(a|0)}while(0);u=m;return a|0}function Fj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;z=u;u=u+16|0;y=z+4|0;r=z;f[r>>2]=c;w=hsa(c)|0;t=a+4|0;i=f[t>>2]|0;v=(i|0)==0;a:do if(!v){q=i+-1|0;o=(q&i|0)==0;if(!o)if(w>>>0>>0)e=w;else e=(w>>>0)%(i>>>0)|0;else e=q&w;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)s=23;else{p=b[c+11>>0]|0;m=p<<24>>24<0;p=m?f[c+4>>2]|0:p&255;m=m?f[c>>2]|0:c;while(1){d=f[d>>2]|0;if(!d){s=23;break a}c=f[d+4>>2]|0;if((c|0)!=(w|0)){if(!o){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&q;if((c|0)!=(e|0)){s=23;break a}}k=d+8|0;c=b[k+11>>0]|0;j=c<<24>>24<0;c=c&255;b:do if(((j?f[d+12>>2]|0:c)|0)==(p|0)){if(j)if(!(AQa(f[k>>2]|0,m,p)|0))break a;else break;l=m;j=k;while(1){if(!c)break a;if((b[j>>0]|0)!=(b[l>>0]|0))break b;l=l+1|0;j=j+1|0;c=c+-1|0}}while(0)}}}else{e=0;s=23}while(0);if((s|0)==23){sK(y,a,w,r);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(v|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;s=~~+W(+(g/h))>>>0;x=0;ua(1627,a|0,(v>>>0>>0?s:v)|0);v=x;x=0;if(!(v&1)){d=f[t>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&w;break}if(w>>>0>>0){i=d;e=w;break}i=d;e=(w>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0){if(b[y+8>>0]|0)kYa(e+8|0);ubb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){w=a+8|0;d=f[y>>2]|0;f[d>>2]=f[w>>2];f[w>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=w;e=f[d>>2]|0;if(!e)e=y;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=y}}else{a=f[y>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=y;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=z;return d+20|0}function Gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+48|0;l=n+28|0;o=n+8|0;h=n;i=n+24|0;j=n+20|0;k=n+4|0;c=f[a+84>>2]|0;m=Bbb(c)|0;c=c+108|0;if(f[c>>2]|0)Ca(89566,89591,231,89617);f[c>>2]=f[b+28>>2];yUa(o);d=b+8|0;e=Bbb(f[b+12>>2]|0)|0;g=0;while(1){f[h>>2]=g;if(g>>>0>=e>>>0){g=5;break}x=0;c=ia(100,d|0,g|0)|0;p=x;x=0;if(p&1){g=11;break}x=0;c=ia(147,o|0,c|0)|0;p=x;x=0;if(p&1){g=11;break}x=0;wa(132,l|0,c|0,g|0,h|0);p=x;x=0;if(p&1){g=11;break}g=g+1|0}a:do if((g|0)==5){e=o+4|0;d=f[o>>2]|0;while(1){if((d|0)==(e|0))break;f[i>>2]=f[d+16>>2];x=0;f[l>>2]=f[i>>2];c=ia(148,a|0,l|0)|0;p=x;x=0;if(p&1){g=22;break}x=0;va(132,m|0,c|0,d+20|0);p=x;x=0;if(p&1){g=22;break}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}if((g|0)==22){c=Ia()|0;break}c=b+24|0;do if(!(K5(o,c)|0)){f[j>>2]=f[c>>2];x=0;f[l>>2]=f[j>>2];c=ia(148,a|0,l|0)|0;p=x;x=0;if(!(p&1)){yUa(l);x=0;va(132,m|0,c|0,l|0);p=x;x=0;if(p&1){c=Ia()|0;sXa(l);break a}else{sXa(l);g=34;break}}}else{x=0;d=ga(290,a|0)|0;p=x;x=0;if(!(p&1)){yUa(l);x=0;va(132,m|0,d|0,l|0);p=x;x=0;if(p&1){c=Ia()|0;sXa(l);break a}sXa(l);f[k>>2]=f[c>>2];x=0;f[l>>2]=f[k>>2];c=ia(148,a|0,l|0)|0;p=x;x=0;if(!(p&1)?(x=0,va(130,d|0,c|0,0),p=x,x=0,!(p&1)):0){g=34;break}}c=Ia()|0;break a}while(0);if((g|0)==34?(x=0,ta(485,a|0),p=x,x=0,!(p&1)):0){Pxa(o);u=n;return}c=Ia()|0}else if((g|0)==11)c=Ia()|0;while(0);Pxa(o);Ua(c|0)}function Hj(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+16|0;A=y+4|0;w=y;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;B=a+20|0;f[B>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;d=(bV(c)|0)+1|0;x=0;ua(94,B|0,d|0);v=x;x=0;if(v&1)c=Ia()|0;else{v=f[B>>2]|0;u1a(v,c,d)|0;p=a+4|0;q=a+12|0;r=a+16|0;s=a+8|0;c=v;a:while(1){t=zWa(c,32)|0;v=(t|0)!=0;if(v)b[t>>0]=0;x=0;va(88,w|0,c|0,1);o=x;x=0;if(o&1){z=42;break}o=v8a(w)|0;i=f[p>>2]|0;m=(i|0)==0;b:do if(!m){k=i+-1|0;l=(k&i|0)==0;if(!l)if(o>>>0>>0)d=o;else d=(o>>>0)%(i>>>0)|0;else d=k&o;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)z=22;else{j=f[w>>2]|0;do{c=f[c>>2]|0;if(!c){z=22;break b}h=f[c+4>>2]|0;if((h|0)!=(o|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){z=22;break b}}}while(!(wXa(f[c+8>>2]|0,j)|0))}}else{d=0;z=22}while(0);if((z|0)==22){z=0;x=0;wa(158,A|0,a|0,o|0,w|0);l=x;x=0;if(l&1){z=42;break}e=+(((f[q>>2]|0)+1|0)>>>0);g=+n[r>>2];do if(m|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(84,a|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){z=29;break a}c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o}else{i=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){h=f[A>>2]|0;f[h>>2]=f[s>>2];f[s>>2]=h;f[(f[a>>2]|0)+(d<<2)>>2]=s;c=f[h>>2]|0;if(c|0){c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=h}}else{o=f[A>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}f[q>>2]=(f[q>>2]|0)+1}if(v)c=t+1|0;else{z=44;break}}if((z|0)==29){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)ubb(d)}else if((z|0)==42)c=Ia()|0;else if((z|0)==44){u=y;return}}uSa(B);NQa(a);Ua(c|0)}function Ij(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1250,b);a=(XRa(c)|0)+8|0;if(Iab(f[a>>2]|0)|0)rS(d,1251,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1243,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1252,b);rS(d,1251,b);NQ(d,(qSa(c)|0)+16|0);rS(d,1251,b);rS(d,1243,(qSa(c)|0)+12|0);rS(d,1251,b);rS(d,1243,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1253,b);rS(d,1243,(gSa(c)|0)+12|0);rS(d,1251,b);break}case 4:{d=a+16|0;rS(d,1254,b);rS(d,1251,b);NQ(d,(WRa(c)|0)+16|0);NQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1255,b);rS(d,1251,b);NQ(d,(IRa(c)|0)+32|0);rS(d,1243,(IRa(c)|0)+28|0);break}case 20:{d=a+16|0;rS(d,1256,b);rS(d,1251,b);NQ(d,(zRa(c)|0)+8|0);break}case 23:{d=a+16|0;rS(d,1257,b);rS(d,1251,b);break}default:Kd(a,b)}while(0);return}function Jj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1030,b);a=(XRa(c)|0)+8|0;if(Iab(f[a>>2]|0)|0)rS(d,1031,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1023,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1032,b);rS(d,1031,b);OQ(d,(qSa(c)|0)+16|0);rS(d,1031,b);rS(d,1023,(qSa(c)|0)+12|0);rS(d,1031,b);rS(d,1023,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1033,b);rS(d,1023,(gSa(c)|0)+12|0);rS(d,1031,b);break}case 4:{d=a+16|0;rS(d,1034,b);rS(d,1031,b);OQ(d,(WRa(c)|0)+16|0);OQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1035,b);rS(d,1031,b);OQ(d,(IRa(c)|0)+32|0);rS(d,1023,(IRa(c)|0)+28|0);break}case 20:{d=a+16|0;rS(d,1036,b);rS(d,1031,b);OQ(d,(zRa(c)|0)+8|0);break}case 23:{d=a+16|0;rS(d,1037,b);rS(d,1031,b);break}default:Ld(a,b)}while(0);return}function Kj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1155,b);a=(XRa(c)|0)+8|0;if(Iab(f[a>>2]|0)|0)rS(d,1156,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1148,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1157,b);rS(d,1156,b);PQ(d,(qSa(c)|0)+16|0);rS(d,1156,b);rS(d,1148,(qSa(c)|0)+12|0);rS(d,1156,b);rS(d,1148,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1158,b);rS(d,1148,(gSa(c)|0)+12|0);rS(d,1156,b);break}case 4:{d=a+16|0;rS(d,1159,b);rS(d,1156,b);PQ(d,(WRa(c)|0)+16|0);PQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1160,b);rS(d,1156,b);PQ(d,(IRa(c)|0)+32|0);rS(d,1148,(IRa(c)|0)+28|0);break}case 20:{d=a+16|0;rS(d,1161,b);rS(d,1156,b);PQ(d,(zRa(c)|0)+8|0);break}case 23:{d=a+16|0;rS(d,1162,b);rS(d,1156,b);break}default:Md(a,b)}while(0);return}function Lj(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;y=u;u=u+16|0;o=y;f[o>>2]=d;f[a>>2]=c;f[a+4>>2]=d;f[a+8>>2]=e;i=a+12|0;f[i>>2]=10;j=a+16|0;f[j>>2]=30;k=a+20|0;b[k>>0]=0;p=a+24|0;l=a+28|0;q=a+36|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[p+12>>2]=0;f[p+16>>2]=0;f[p+20>>2]=0;f[p+24>>2]=0;f[a+52>>2]=1065353216;r=a+56|0;s=a+68|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;f[r+16>>2]=0;f[r+20>>2]=0;f[r+24>>2]=0;f[a+84>>2]=1065353216;t=a+88|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;f[t+12>>2]=0;f[a+104>>2]=1065353216;v=a+108|0;m=a+112|0;n=a+120|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;b[v+12>>0]=0;f[a+124>>2]=g;do if((Zha()|0)>1){x=0;e=ia(62,134008,75725)|0;g=x;x=0;if((!(g&1)?(x=0,h=ia(76,e|0,f[f[c+116>>2]>>2]|0)|0,g=x,x=0,!(g&1)):0)?(x=0,ia(62,h|0,87602)|0,h=x,x=0,!(h&1)):0){w=6;break}e=Ia()|0}else w=6;while(0);a:do if((w|0)==6){e=yb(75745)|0;if(e|0){h=yR(e)|0;f[i>>2]=h}e=yb(75776)|0;if(e|0){i=yR(e)|0;f[j>>2]=i}x=0;ja(61,a|0,d|0,0)|0;d=x;x=0;if(d&1){e=Ia()|0;break}b:do if(!(b[k>>0]|0)){e=f[p>>2]|0;switch((f[l>>2]|0)-e>>2|0){case 0:{b[k>>0]=1;break b}case 1:{w=15;break}default:{}}if((w|0)==15?Gab(f[f[e>>2]>>2]|0)|0:0){b[k>>0]=1;break}x=0;ta(463,a|0);d=x;x=0;if(d&1){e=Ia()|0;break a}b[n>>0]=1;g=f[m>>2]|0;e=f[v>>2]|0;while(1){if((e|0)==(g|0))break;x=0;ja(61,a|0,f[e>>2]|0,0)|0;n=x;x=0;if(n&1){w=23;break}e=e+4|0}if((w|0)==23){e=Ia()|0;break a}e=Vz(c+84|0,o)|0;if(e|0?(x=0,ua(635,a|0,f[e+12>>2]|0),w=x,x=0,w&1):0){e=Ia()|0;break a}}while(0);u=y;return}while(0);uSa(v);NQa(t);X8(s);uSa(r);NQa(q);uSa(p);Ua(e|0)}function Mj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;z=u;u=u+16|0;y=z+4|0;r=z;f[r>>2]=c;w=hsa(c)|0;t=a+4|0;i=f[t>>2]|0;v=(i|0)==0;a:do if(!v){q=i+-1|0;o=(q&i|0)==0;if(!o)if(w>>>0>>0)e=w;else e=(w>>>0)%(i>>>0)|0;else e=q&w;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)s=23;else{p=b[c+11>>0]|0;m=p<<24>>24<0;p=m?f[c+4>>2]|0:p&255;m=m?f[c>>2]|0:c;while(1){d=f[d>>2]|0;if(!d){s=23;break a}c=f[d+4>>2]|0;if((c|0)!=(w|0)){if(!o){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&q;if((c|0)!=(e|0)){s=23;break a}}k=d+8|0;c=b[k+11>>0]|0;j=c<<24>>24<0;c=c&255;b:do if(((j?f[d+12>>2]|0:c)|0)==(p|0)){if(j)if(!(AQa(f[k>>2]|0,m,p)|0))break a;else break;l=m;j=k;while(1){if(!c)break a;if((b[j>>0]|0)!=(b[l>>0]|0))break b;l=l+1|0;j=j+1|0;c=c+-1|0}}while(0)}}}else{e=0;s=23}while(0);if((s|0)==23){sK(y,a,w,r);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(v|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;s=~~+W(+(g/h))>>>0;x=0;ua(102,a|0,(v>>>0>>0?s:v)|0);v=x;x=0;if(!(v&1)){d=f[t>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&w;break}if(w>>>0>>0){i=d;e=w;break}i=d;e=(w>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0){if(b[y+8>>0]|0)kYa(e+8|0);ubb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){w=a+8|0;d=f[y>>2]|0;f[d>>2]=f[w>>2];f[w>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=w;e=f[d>>2]|0;if(!e)e=y;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=y}}else{a=f[y>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=y;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=z;return d+20|0}function Nj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,935,b);a=(XRa(c)|0)+8|0;if(Iab(f[a>>2]|0)|0)rS(d,936,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,928,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,937,b);rS(d,936,b);TQ(d,(qSa(c)|0)+16|0);rS(d,936,b);rS(d,928,(qSa(c)|0)+12|0);rS(d,936,b);rS(d,928,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,938,b);rS(d,928,(gSa(c)|0)+12|0);rS(d,936,b);break}case 4:{d=a+16|0;rS(d,939,b);rS(d,936,b);TQ(d,(WRa(c)|0)+16|0);TQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,940,b);rS(d,936,b);TQ(d,(IRa(c)|0)+32|0);rS(d,928,(IRa(c)|0)+28|0);break}case 20:{d=a+16|0;rS(d,941,b);rS(d,936,b);TQ(d,(zRa(c)|0)+8|0);break}case 23:{d=a+16|0;rS(d,942,b);rS(d,936,b);break}default:Vd(a,b)}while(0);return}function Oj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,812,b);a=(XRa(c)|0)+8|0;if(Iab(f[a>>2]|0)|0)rS(d,813,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,805,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,814,b);rS(d,813,b);UQ(d,(qSa(c)|0)+16|0);rS(d,813,b);rS(d,805,(qSa(c)|0)+12|0);rS(d,813,b);rS(d,805,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,815,b);rS(d,805,(gSa(c)|0)+12|0);rS(d,813,b);break}case 4:{d=a+16|0;rS(d,816,b);rS(d,813,b);UQ(d,(WRa(c)|0)+16|0);UQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,817,b);rS(d,813,b);UQ(d,(IRa(c)|0)+32|0);rS(d,805,(IRa(c)|0)+28|0);break}case 20:{d=a+16|0;rS(d,818,b);rS(d,813,b);UQ(d,(zRa(c)|0)+8|0);break}case 23:{d=a+16|0;rS(d,819,b);rS(d,813,b);break}default:Wd(a,b)}while(0);return}function Pj(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;v=u;u=u+16|0;y=v;wka(a,b);x=0;ua(3139,a|0,f[b+4>>2]|0);t=x;x=0;do if(!(t&1)){c=f[b+8>>2]|0;t=a+4|0;p=a+12|0;r=a+16|0;s=a+8|0;q=c;b=c;a:while(1){if(!b){w=39;break}l=c+8|0;i=f[l>>2]|0;f[y>>2]=i;o=HH(y,4)|0;h=f[t>>2]|0;m=(h|0)==0;b:do if(!m){j=h+-1|0;k=(j&h|0)==0;if(!k)if(o>>>0>>0)c=o;else c=(o>>>0)%(h>>>0)|0;else c=j&o;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)w=19;else do{b=f[b>>2]|0;if(!b){w=19;break b}g=f[b+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(c|0)){w=19;break b}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;w=19}while(0);if((w|0)==19){w=0;x=0;wa(155,y|0,a|0,o|0,l|0);l=x;x=0;if(l&1){w=40;break}d=+(((f[p>>2]|0)+1|0)>>>0);e=+n[r>>2];do if(m|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(3139,a|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){w=26;break a}b=f[t>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&o;break}if(o>>>0>>0){h=b;c=o}else{h=b;c=(o>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[y>>2]|0;f[g>>2]=f[s>>2];f[s>>2]=g;f[(f[a>>2]|0)+(c<<2)>>2]=s;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=g}}else{o=f[y>>2]|0;f[o>>2]=f[b>>2];f[b>>2]=o}f[p>>2]=(f[p>>2]|0)+1}c=f[q>>2]|0;q=c;b=c}if((w|0)==26){b=Ia()|0;c=f[y>>2]|0;f[y>>2]=0;if(c|0)ubb(c);break}else if((w|0)==39){u=v;return}else if((w|0)==40){b=Ia()|0;break}}else b=Ia()|0;while(0);Dja(a);Ua(b|0)}function Qj(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;v=u;u=u+16|0;y=v;wka(a,b);x=0;ua(586,a|0,f[b+4>>2]|0);t=x;x=0;do if(!(t&1)){c=f[b+8>>2]|0;t=a+4|0;p=a+12|0;r=a+16|0;s=a+8|0;q=c;b=c;a:while(1){if(!b){w=39;break}l=c+8|0;i=f[l>>2]|0;f[y>>2]=i;o=HH(y,4)|0;h=f[t>>2]|0;m=(h|0)==0;b:do if(!m){j=h+-1|0;k=(j&h|0)==0;if(!k)if(o>>>0>>0)c=o;else c=(o>>>0)%(h>>>0)|0;else c=j&o;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)w=19;else do{b=f[b>>2]|0;if(!b){w=19;break b}g=f[b+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(c|0)){w=19;break b}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;w=19}while(0);if((w|0)==19){w=0;x=0;wa(88,y|0,a|0,o|0,l|0);l=x;x=0;if(l&1){w=40;break}d=+(((f[p>>2]|0)+1|0)>>>0);e=+n[r>>2];do if(m|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(586,a|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){w=26;break a}b=f[t>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&o;break}if(o>>>0>>0){h=b;c=o}else{h=b;c=(o>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[y>>2]|0;f[g>>2]=f[s>>2];f[s>>2]=g;f[(f[a>>2]|0)+(c<<2)>>2]=s;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=g}}else{o=f[y>>2]|0;f[o>>2]=f[b>>2];f[b>>2]=o}f[p>>2]=(f[p>>2]|0)+1}c=f[q>>2]|0;q=c;b=c}if((w|0)==26){b=Ia()|0;c=f[y>>2]|0;f[y>>2]=0;if(c|0)ubb(c);break}else if((w|0)==39){u=v;return}else if((w|0)==40){b=Ia()|0;break}}else b=Ia()|0;while(0);Dja(a);Ua(b|0)}function Rj(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+48|0;s=t+32|0;g=t+28|0;l=t+24|0;m=t+20|0;n=t+16|0;o=t+12|0;p=t+8|0;q=t+4|0;r=t;h=a+64|0;k=f[h>>2]|0;do if((f[k+28>>2]|0)!=(f[k+24>>2]|0)){k=a+72|0;do if(b[k>>0]|0){c=yCa(134176,87845)|0;ZXa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[s>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(s);Wq(c,e)|0;du(c)|0;break}t=Ia()|0;JCa(s);Ua(t|0)}while(0);j=A$(a,7)|0;i=a+68|0;e=f[i>>2]|0;d=f[h>>2]|0;f4a(g,(f[d+28>>2]|0)-(f[d+24>>2]|0)>>2);Yr(e,f[g>>2]|0)|0;e=f[h>>2]|0;g=f[e+28>>2]|0;e=f[e+24>>2]|0;a:while(1){if((e|0)==(g|0)){c=9;break}if(b[k>>0]|0){d=yCa(134176,87861)|0;ZXa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[s>>2]|0,134880)|0;h=x;x=0;if(h&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=13;break}JCa(s);Wq(d,c)|0;du(d)|0}G$(a,f[f[e>>2]>>2]|0);c=f[i>>2]|0;f4a(l,f[(f[e>>2]|0)+8>>2]|0);Yr(c,f[l>>2]|0)|0;c=f[e>>2]|0;switch(f[c+8>>2]|0){case 0:{h=f[i>>2]|0;f[n>>2]=f[c+4>>2];f[s>>2]=f[n>>2];f4a(m,V1(a,s)|0);Yr(h,f[m>>2]|0)|0;break}case 1:{h=f[i>>2]|0;f4a(o,0);Yr(h,f[o>>2]|0)|0;break}case 2:{h=f[i>>2]|0;f4a(p,0);Yr(h,f[p>>2]|0)|0;break}case 3:{h=f[i>>2]|0;f[r>>2]=f[c+4>>2];f[s>>2]=f[r>>2];f4a(q,$1(a,s)|0);Yr(h,f[q>>2]|0)|0;break}default:{c=20;break a}}e=e+4|0}if((c|0)==9){VA(a,j);break}else if((c|0)==13){t=Ia()|0;JCa(s);Ua(t|0)}else if((c|0)==20)hb()}while(0);u=t;return}function Sj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;r=s;p=c+4|0;q=a+132|0;if(((f[p>>2]|0)-(f[c>>2]|0)>>2|0)!=(f[q>>2]|0))Ca(115553,115382,338,115581);n=f[a+60>>2]|0;k=a+36|0;m=f[a+56>>2]|0;while(1){if((m|0)==(n|0))break;l=f[m>>2]|0;o=f[l+28>>2]|0;l=f[l+24>>2]|0;while(1){if((l|0)==(o|0))break;d=f[l>>2]|0;do if(!(Gab(d)|0)){if(rab(d)|0){h=l+8|0;i=iRa(f[f[h>>2]>>2]|0)|0;d=i+8|0;j=f[(f[c>>2]|0)+(f[d>>2]<<2)>>2]|0;f[d>>2]=j;d=f[i+12>>2]|0;g=N_a(d)|0;e=d;if(g|0?(f[g+8>>2]|0)==(j|0):0){b6(l);break}if(!(b[l+12>>0]|0)){f[f[h>>2]>>2]=e;if(Iab(f[i+4>>2]|0)|0)break;i=iYa(i)|0;j=f[h>>2]|0;f[i+8>>2]=f[j>>2];f[j>>2]=i;break}d=S$a(d)|0;if(d|0){e=d+12|0;g=N_a(f[e>>2]|0)|0;if(g|0?(f[g+8>>2]|0)==(j|0):0){j=f[h>>2]|0;iV(j,i,d,e,d+16|0,Bbb(f[k>>2]|0)|0);break}g=d+16|0;t=N_a(f[g>>2]|0)|0;if(t|0?(f[t+8>>2]|0)==(j|0):0){t=f[h>>2]|0;iV(t,i,d,g,e,Bbb(f[k>>2]|0)|0)}}}}else{t=(oRa(f[f[l+8>>2]>>2]|0)|0)+8|0;f[t>>2]=f[(f[c>>2]|0)+(f[t>>2]<<2)>>2]}while(0);l=l+16|0}m=m+4|0}j=a+32|0;h=f[j>>2]|0;k=uZa(Bbb(h)|0)|0;g=f[p>>2]|0;d=0;e=f[c>>2]|0;while(1){if((e|0)==(g|0))break;t=(f[e>>2]|0)+1|0;d=d>>>0>>0?t:d;e=e+4|0}PR(r,h+20|0);t=f[j>>2]|0;Bbb(t)|0;x=0;ua(3131,t+20|0,d-k|0);t=x;x=0;if(t&1){t=Ia()|0;uSa(r);Ua(t|0)}i=f[q>>2]|0;h=f[c>>2]|0;e=f[r>>2]|0;d=k;while(1){if(d>>>0>=i>>>0)break;g=f[h+(d<<2)>>2]|0;if(g>>>0>=k>>>0){c=f[e+(d-k<<2)>>2]|0;t=f[j>>2]|0;Bbb(t)|0;f[(f[t+20>>2]|0)+(g-k<<2)>>2]=c}d=d+1|0}t=f[j>>2]|0;Bbb(t)|0;faa(t+44|0);t=f[j>>2]|0;Bbb(t)|0;D9(t+56|0);uSa(r);u=s;return}function Tj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;a:do if(((((a|0)!=(c|0)?(b[a>>0]|0)==90:0)?(j=a+1|0,e=dd(j,c,d)|0,!((e|0)==(j|0)|(e|0)==(c|0))):0)?(b[e>>0]|0)==69:0)?(g=e+1|0,(g|0)!=(c|0)):0){switch(b[g>>0]|0){case 115:{a=RG(e+2|0,c)|0;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;Dsa(e+-24|0,124635)|0;break a}case 100:{e=e+2|0;if((e|0)==(c|0))break a;e=QX(e,c)|0;if((e|0)==(c|0))break a;if((b[e>>0]|0)!=95)break a;j=e+1|0;g=Pi(j,c,d)|0;c=d+4|0;if((g|0)==(j|0)){g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;JJa(g+(j*24|0)|0);e=j}f[c>>2]=g+-24;break a}e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(h,e+-24|0);e=f[c>>2]|0;a=0;while(1){if((a|0)==-1)break;j=a+-1|0;JJa(e+(j*24|0)|0);a=j}f[c>>2]=e+-24;x=0;ia(215,e+-48|0,123348)|0;j=x;x=0;if(!(j&1)?(j=b[h+11>>0]|0,d=j<<24>>24<0,x=0,ja(97,(f[c>>2]|0)+-24|0,(d?f[h>>2]|0:h)|0,(d?f[h+4>>2]|0:j&255)|0)|0,j=x,x=0,!(j&1)):0){HTa(h);a=g;break a}a=Ia()|0;HTa(h);break}default:{e=Pi(g,c,d)|0;if((e|0)==(g|0)){g=d+4|0;c=f[g>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;JJa(c+(j*24|0)|0);e=j}f[g>>2]=c+-24;break a}a=RG(e,c)|0;c=d+4|0;e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(h,e+-24|0);g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;JJa(g+(j*24|0)|0);e=j}f[c>>2]=g+-24;x=0;ia(215,g+-48|0,123348)|0;j=x;x=0;if(!(j&1)?(j=b[h+11>>0]|0,d=j<<24>>24<0,x=0,ja(97,(f[c>>2]|0)+-24|0,(d?f[h>>2]|0:h)|0,(d?f[h+4>>2]|0:j&255)|0)|0,j=x,x=0,!(j&1)):0){HTa(h);break a}a=Ia()|0;HTa(h)}}Ua(a|0)}while(0);u=i;return a|0}function Uj(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0;h=Bbb(d)|0;do if(rab(f[d>>2]|0)|0)if(e){m$a(a,iaa(h)|0);break}else{d=oPa(h)|0;kqa(a,+p[d>>3]);break}else{if(Cea(h,f[33267]|0)|0){h=g0a(d,1)|0;if(FBa(f[h>>2]|0,133024)|0?(h=g0a(d,2)|0,h=f[h>>2]|0,Bbb(h)|0,rab(f[h>>2]|0)|0):0){d=g0a(d,2)|0;d=oPa(Bbb(f[d>>2]|0)|0)|0;kqa(a,+p[d>>3]);break}h=g0a(d,1)|0;if(FBa(f[h>>2]|0,133020)|0?(h=g0a(d,2)|0,h=f[h>>2]|0,Bbb(h)|0,rab(f[h>>2]|0)|0):0){h=g0a(d,2)|0;h=oPa(Bbb(f[h>>2]|0)|0)|0;g=-+p[h>>3];if(SYa(g)|0){m$a(a,~~g);break}if(rPa(g)|0){m$a(a,~~g>>>0);break}else Ca(64712,51387,675,64757)}h=g0a(d,1)|0;if(((FBa(f[h>>2]|0,133024)|0?(h=g0a(d,2)|0,h=Bbb(f[h>>2]|0)|0,Cea(h,f[33267]|0)|0):0)?(h=g0a(d,2)|0,h=g0a(f[h>>2]|0,1)|0,FBa(f[h>>2]|0,133020)|0):0)?(h=g0a(d,2)|0,h=g0a(f[h>>2]|0,2)|0,h=f[h>>2]|0,Bbb(h)|0,rab(f[h>>2]|0)|0):0){d=g0a(d,2)|0;d=g0a(f[d>>2]|0,2)|0;d=oPa(Bbb(f[d>>2]|0)|0)|0;kqa(a,-+p[d>>3]);break}h=g0a(d,1)|0;if(((FBa(f[h>>2]|0,133020)|0?(h=g0a(d,2)|0,h=Bbb(f[h>>2]|0)|0,Cea(h,f[33267]|0)|0):0)?(h=g0a(d,2)|0,h=g0a(f[h>>2]|0,1)|0,FBa(f[h>>2]|0,133024)|0):0)?(h=g0a(d,2)|0,h=g0a(f[h>>2]|0,2)|0,h=f[h>>2]|0,Bbb(h)|0,rab(f[h>>2]|0)|0):0){d=g0a(d,2)|0;d=g0a(f[d>>2]|0,2)|0;d=oPa(Bbb(f[d>>2]|0)|0)|0;kqa(a,-+p[d>>3]);break}}else if(((b[c+98>>0]|0?Cea(h,f[33099]|0)|0:0)?(h=g0a(d,1)|0,h=f[h>>2]|0,Bbb(h)|0,Gab(f[h>>2]|0)|0):0)?(h=g0a(d,1)|0,FBa(f[h>>2]|0,131540)|0):0){h=g0a(d,2)|0;h=g0a(f[h>>2]|0,0)|0;h=oPa(Bbb(f[h>>2]|0)|0)|0;g=+p[h>>3];h=+K(g)>=1.0?(g>0.0?~~+Y(+J(g/4294967296.0),4294967295.0)>>>0:~~+W((g-+(~~g>>>0))/4294967296.0)>>>0):0;d=g0a(d,2)|0;d=g0a(f[d>>2]|0,1)|0;d=oPa(Bbb(f[d>>2]|0)|0)|0;d=wOa(0,~~+p[d>>3]>>>0|0,~~g>>>0|0,h|0)|0;SSa(a,d,I);break}yXa(a)}while(0);return}function Vj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;l=n+16|0;j=n+12|0;m=n+8|0;k=n;h=n+4|0;f[j>>2]=b;g=b+12|0;switch(Bbb(f[b+16>>2]|0)|0){case 1:{c=b+8|0;if((((Iab(f[c>>2]|0)|0?(e=JDa(g,0)|0,e=o$a(f[e>>2]|0)|0,f[l>>2]=e,e|0):0)?(d=f[e+8>>2]|0,Iab(d)|0):0)?_1a(d,f[c>>2]|0)|0:0)?(f[e+4>>2]|0)==(f[b+4>>2]|0):0){h=a+36|0;c=hY(h,l)|0;i=f[c+4>>2]|0;d=a+48|0;c=f[c>>2]|0;while(1){if((c|0)==(i|0))break;f[m>>2]=f[c>>2];e=(f[j>>2]|0)+8|0;b=jZ(d,m)|0;f[b>>2]=f[e>>2];b=hY(h,j)|0;e=b+4|0;g=f[e>>2]|0;if((g|0)==(f[b+8>>2]|0))IL(b,m);else{f[g>>2]=f[m>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+4|0}CU(h,f[l>>2]|0)}break}case 2:{c=JDa(g,0)|0;c=o$a(f[c>>2]|0)|0;f[m>>2]=c;d=JDa(g,1)|0;d=n$a(f[d>>2]|0)|0;if((c|0?(d|0)!=0&(Iab(f[c+8>>2]|0)|0):0)?QQa(d)|0:0){j=a+36|0;i=hY(j,m)|0;e=i+4|0;g=f[e>>2]|0;d=d+8|0;b=a+48|0;c=f[i>>2]|0;while(1){if((c|0)==(g|0))break;f[l>>2]=f[c>>2];o=jZ(b,l)|0;f[o>>2]=f[d>>2];c=c+4|0}f[h>>2]=f[d>>2];g=f[a+24>>2]|0;o=f[a+28>>2]|0;f[l>>2]=f[h>>2];o=o$a(GD(g,o,l)|0)|0;f[k>>2]=o;a:do if(o|0){h=f[e>>2]|0;c=f[i>>2]|0;while(1){if((c|0)==(h|0))break a;d=f[c>>2]|0;f[l>>2]=d;b=hY(j,k)|0;e=b+4|0;g=f[e>>2]|0;if((g|0)==(f[b+8>>2]|0))IL(b,l);else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}c=c+4|0}}while(0);CU(j,f[m>>2]|0)}break}default:{}}u=n;return}function Wj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+96|0;j=l+40|0;k=l+88|0;m=l+76|0;n=l+16|0;e=l+72|0;h=l+68|0;g=l;f[k>>2]=0;f[m>>2]=0;c=m+4|0;f[c>>2]=0;f[m+8>>2]=0;nna(n,k,m,n);x=0;va(156,f[n+16>>2]|0,b|0,1);d=x;x=0;a:do if(d&1)c=Ia()|0;else{o=f[c>>2]|0;c=f[m>>2]|0;d=o;b:do if(o-c>>2>>>0<2){c=g$a(f[b+16>>2]|0)|0;if(c){x=0;c=ga(225,c+8|0)|0;o=x;x=0;if(o&1){c=Ia()|0;break a}if(!c)c=f[b+12>>2]|0;else c=0}else c=0}else{while(1){if((c|0)==(d|0))break;o=f[c>>2]|0;m$a(j,0);o=o+8|0;f[o>>2]=f[j>>2];f[o+4>>2]=f[j+4>>2];f[o+8>>2]=f[j+8>>2];f[o+12>>2]=f[j+12>>2];c=c+4|0}f[e>>2]=b;YMa(j,_Ya(f[a+40>>2]|0)|0);x=0;ua(2160,j|0,e|0);o=x;x=0;c:do if(o&1){c=Ia()|0;I_a(j)}else{I_a(j);c=f[e>>2]|0;d:do if(f[k>>2]|0){c=g$a(c)|0;if(!c){d=f[a+36>>2]|0;Bbb(d)|0;U0a(h,d);d=f[e>>2]|0;m$a(g,f[k>>2]|0);x=0;f[j>>2]=f[g>>2];f[j+4>>2]=f[g+4>>2];f[j+8>>2]=f[g+8>>2];f[j+12>>2]=f[g+12>>2];c=ia(50,h|0,j|0)|0;o=x;x=0;if(!(o&1)?(x=0,i=ka(7,f[h>>2]|0,0,d|0,c|0)|0,o=x,x=0,!(o&1)):0){c=i;break}c=Ia()|0;break c}d=c+8|0;x=0;a=ga(225,d|0)|0;o=x;x=0;do if(!(o&1))if(!a){m$a(j,f[k>>2]|0);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];break d}else{x=0;wa(71,103742,103515,984,103765);x=0;break}while(0);c=Ia()|0;break c}while(0);break b}while(0);break a}while(0);sta(n);uSa(m);u=l;return c|0}while(0);sta(n);uSa(m);Ua(c|0);return 0}function Xj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,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=u;u=u+144|0;l=o+112|0;q=o+88|0;e=o+100|0;g=o+72|0;h=o+68|0;p=o+48|0;m=o+4|0;n=o;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;WZ(q,111400,h7a(111400)|0);d=0;while(1){if(d>>>0>=15){i=3;break}x=0;ua(82,q|0,106);k=x;x=0;if(k&1){i=6;break}d=d+1|0}do if((i|0)==3){x=0;ua(88,e|0,q|0);k=x;x=0;if(k&1){d=Ia()|0;break}x=0;d=ia(55,e|0,c|0)|0;k=x;x=0;if(k&1){d=Ia()|0;HTa(e);break}k=a+16|0;f[k>>2]=f[d>>2];HTa(e);x=0;va(85,h|0,0,0);j=x;x=0;if((!(j&1)?(x=0,f[l>>2]=f[h>>2],va(166,g|0,c|0,l|0),j=x,x=0,!(j&1)):0)?(x=0,ta(504,g|0),j=x,x=0,!(j&1)):0){f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[p+12>>2]=0;f[p+16>>2]=1065353216;i=f[c+80>>2]|0;h=f[c+76>>2]|0;a:while(1){if((h|0)==(i|0)){i=13;break}j=f[h+8>>2]|0;g=f[h+4>>2]|0;while(1){if((g|0)==(j|0))break;d=AB(p,g)|0;if(!d){x=0;d=ja(79,a|0,f[g>>2]|0,c|0)|0;e=x;x=0;if(e&1){i=24;break a}x=0;e=ia(192,p|0,g|0)|0;r=x;x=0;if(r&1){i=24;break a}f[e>>2]=d;f[g>>2]=d}else f[g>>2]=f[d+12>>2];g=g+4|0}h=h+16|0}if((i|0)==13){r=b+20|0;f[l>>2]=f[r>>2];f[l+4>>2]=f[r+4>>2];f[l+8>>2]=f[r+8>>2];f[l+12>>2]=f[r+12>>2];f[l+16>>2]=f[r+16>>2];m3(m,c,l);h4a(m);f[n>>2]=f[k>>2];x=0;f[l>>2]=f[n>>2];ua(2706,m|0,l|0);r=x;x=0;if(!(r&1)?(x=0,ta(438,m|0),r=x,x=0,!(r&1)):0){Tca(m);NQa(p);HTa(q);u=o;return}d=Ia()|0;Tca(m)}else if((i|0)==24)d=Ia()|0;NQa(p)}else d=Ia()|0}else if((i|0)==6)d=Ia()|0;while(0);HTa(q);Ua(d|0)}function Yj(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;g=u;u=u+64|0;d=g+36|0;k=g+40|0;e=g+24|0;i=g+12|0;j=g;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;WZ(k,79507,h7a(79507)|0);x=0;c=ga(228,f[a+32>>2]|0)|0;m=x;x=0;a:do if(!(m&1)?(x=0,ia(59,k|0,c|0)|0,m=x,x=0,!(m&1)):0){x=0;ua(1283,j|0,h[a+8>>0]|0);m=x;x=0;if(m&1)c=Ia()|0;else{x=0;ia(83,j|0,108286)|0;m=x;x=0;if(m&1)c=Ia()|0;else{f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,i|0,108286)|0;m=x;x=0;do if(m&1)c=Ia()|0;else{f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];c=0;while(1){if((c|0)==3)break;f[i+(c<<2)>>2]=0;c=c+1|0}m=b[e+11>>0]|0;c=m<<24>>24<0;x=0;ja(49,k|0,(c?f[e>>2]|0:e)|0,(c?f[e+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){c=Ia()|0;HTa(e);break}HTa(e);HTa(i);HTa(j);b:do if(b[a+20>>0]|0){x=0;ia(59,k|0,79524)|0;m=x;x=0;if(m&1){l=15;break a}}else{m=Bbb(f[a+16>>2]|0)|0;x=0;ua(91,e|0,m|0);m=x;x=0;do if(!(m&1)){m=b[e+11>>0]|0;j=m<<24>>24<0;x=0;ja(49,k|0,(j?f[e>>2]|0:e)|0,(j?f[e+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){c=Ia()|0;HTa(e);break}else{HTa(e);break b}}else c=Ia()|0;while(0);break a}while(0);x=0;ua(83,d|0,k|0);m=x;x=0;if(m&1){l=15;break a}HTa(k);u=g;return f[d>>2]|0}while(0);HTa(i)}HTa(j)}}else l=15;while(0);if((l|0)==15)c=Ia()|0;HTa(k);Ua(c|0);return 0}function Zj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+80|0;i=q+48|0;l=q+68|0;m=q+64|0;n=q+32|0;o=q+16|0;p=q;j=f[(f[b+12>>2]|0)+4>>2]|0;f[l>>2]=j;k=f[b+4>>2]|0;b=b+8|0;h=f[b>>2]|0;e=(j|0)==4;U0a(m,a);c=e?73:60;d=e?75:62;e=e?71:58;yXa(n);yXa(o);yXa(p);switch(h|0){case 25:{iO(n,o,p);break}case 27:{hP(n,o,p);break}case 26:{vN(n,o,p);break}case 28:{KO(n,o,p);break}case 29:{jO(n,o,p);break}case 31:{iP(n,o,p);break}case 30:{wN(n,o,p);break}case 32:{LO(n,o,p);break}default:hb()}g=n8(88)|0;aX(g);b=LJ(f[b>>2]|0)|0;f[g>>2]=b;b=g+12|0;a=f[b>>2]|0;if((a|0)==(f[g+16>>2]|0))IL(g+8|0,l);else{f[a>>2]=j;f[b>>2]=a+4}f[g+4>>2]=k;k=f[m>>2]|0;h=mBa(k,h,NKa(k,0,j)|0)|0;l=g+36|0;f[l>>2]=h;k=NKa(k,0,j)|0;f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];f[i+12>>2]=f[o+12>>2];o=a0(m,i)|0;o=Fpa(f[m>>2]|0,c,k,o)|0;f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];k=a0(m,i)|0;k=Cqa(m,o,k,f[l>>2]|0)|0;f[l>>2]=k;k=NKa(f[m>>2]|0,0,j)|0;f[i>>2]=f[p>>2];f[i+4>>2]=f[p+4>>2];f[i+8>>2]=f[p+8>>2];f[i+12>>2]=f[p+12>>2];o=a0(m,i)|0;o=Fpa(f[m>>2]|0,d,k,o)|0;f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];p=a0(m,i)|0;p=Cqa(m,o,p,f[l>>2]|0)|0;f[l>>2]=p;p=NKa(f[m>>2]|0,0,j)|0;o=NKa(f[m>>2]|0,0,j)|0;o=Fpa(f[m>>2]|0,e,p,o)|0;f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];p=a0(m,i)|0;p=Cqa(m,o,p,f[l>>2]|0)|0;f[l>>2]=p;u=q;return g|0}function _j(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2526,b);a=(XRa(c)|0)+8|0;if(Iab(f[a>>2]|0)|0)rS(d,2527,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2522,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2528,b);rS(d,2527,b);mS(d,(qSa(c)|0)+16|0);rS(d,2527,b);rS(d,2522,(qSa(c)|0)+12|0);rS(d,2527,b);rS(d,2522,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2529,b);rS(d,2522,(gSa(c)|0)+12|0);rS(d,2527,b);break}case 4:{d=a+16|0;rS(d,2530,b);rS(d,2527,b);mS(d,(WRa(c)|0)+16|0);mS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2531,b);rS(d,2527,b);mS(d,(IRa(c)|0)+32|0);rS(d,2522,(IRa(c)|0)+28|0);break}case 20:{d=a+16|0;rS(d,2532,b);rS(d,2527,b);mS(d,(zRa(c)|0)+8|0);break}case 23:{d=a+16|0;rS(d,2533,b);rS(d,2527,b);break}default:ve(a,b)}while(0);return}function $j(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0;r=u;u=u+64|0;p=r+48|0;s=r+32|0;t=r+8|0;i=r+24|0;q=r;d=b+4|0;a:do if((f[d>>2]|0)==2?(f[d>>2]=1,n=b+36|0,c=f[n>>2]|0,sba(a,c)|0):0){SN(s,a,c);x=0;va(159,t|0,a|0,1);g=x;x=0;if(g&1)c=Ia()|0;else{g=a+44|0;c=f[g>>2]|0;x=0;d=ga(320,t|0)|0;e=x;x=0;do if(!(e&1)?(x=0,j=ja(45,c|0,d|0,f[n>>2]|0)|0,e=x,x=0,!(e&1)):0){c=f[g>>2]|0;E1a(i,f[33071]|0);d=f[g>>2]|0;x=0;e=ga(320,s|0)|0;v=x;x=0;if((!(v&1)?(x=0,h=ja(46,f[d>>2]|0,e|0,1)|0,v=x,x=0,!(v&1)):0)?(x=0,f[p>>2]=f[i>>2],k=ja(47,c|0,p|0,h|0)|0,v=x,x=0,!(v&1)):0){c=f[g>>2]|0;x=0;d=ga(320,t|0)|0;v=x;x=0;if((!(v&1)?(x=0,l=ja(46,f[c>>2]|0,d|0,1)|0,v=x,x=0,!(v&1)):0)?(x=0,m=ka(21,f[g>>2]|0,j|0,k|0,l|0)|0,v=x,x=0,!(v&1)):0){f[n>>2]=m;HCa(t);HCa(s);o=19;break a}c=Ia()|0;break}c=Ia()|0}else o=14;while(0);if((o|0)==14)c=Ia()|0;HCa(t)}HCa(s)}else o=19;while(0);if((o|0)==19){h=a+148|0;e=a+128|0;d=fQa(b)|0;c=0;while(1){if(d>>>0>=(f[h>>2]|0)>>>0){o=21;break}g=c+1|0;BY(t,c);x=0;ia(83,t|0,106429)|0;v=x;x=0;if(v&1){o=28;break}f[p>>2]=f[t>>2];f[p+4>>2]=f[t+4>>2];f[p+8>>2]=f[t+8>>2];c=0;while(1){if((c|0)==3)break;f[t+(c<<2)>>2]=0;c=c+1|0}x=0;ua(83,s|0,p|0);v=x;x=0;if(v&1){o=29;break}HTa(p);HTa(t);f[q>>2]=f[s>>2];f[t>>2]=d;c=Im(e,t)|0;c=f[c>>2]|0;f[p>>2]=f[q>>2];NF(b,p,c)|0;d=d+1|0;c=g}if((o|0)==21){u=r;return}else if((o|0)==28)c=Ia()|0;else if((o|0)==29){c=Ia()|0;HTa(p)}HTa(t)}Ua(c|0)}function ak(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=u;u=u+48|0;n=k+24|0;l=k;j=k+12|0;e=f[a+12>>2]|0;f[n>>2]=0;h=n+4|0;f[h>>2]=0;i=n+8|0;f[i>>2]=0;x=0;ta(498,f[f[a>>2]>>2]|0);g=x;x=0;a:do if((!(g&1)?(x=0,ua(1889,f[(f[f[a+4>>2]>>2]|0)+16>>2]|0,34),g=x,x=0,!(g&1)):0)?(x=0,d=ia(176,f[f[a+8>>2]>>2]|0,34)|0,g=x,x=0,!(g&1)):0){b:do if(!d){g=e+16|0;c:while(1){x=0;d=ga(311,f[g>>2]|0)|0;e=x;x=0;if(e&1){m=12;break}switch(d|0){case 34:break b;case -1:{m=8;break c}default:{}}d=d&255;b[j>>0]=d;e=f[h>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;ua(1890,n|0,j|0);e=x;x=0;if(e&1){m=20;break}}else{b[e>>0]=d;f[h>>2]=(f[h>>2]|0)+1}}if((m|0)==8){g=Ea(12)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;k=h7a(99132)|0;x=0;va(87,l|0,99132,k|0);k=x;x=0;if(!(k&1)){x=0;ua(1881,g|0,l|0);k=x;x=0;if(k&1)e=1;else{x=0;va(98,g|0,34672,495);x=0;e=0}d=Ia()|0;HTa(l);if(!e)break a}else d=Ia()|0;La(g|0);break a}else if((m|0)==12){d=Ia()|0;break a}else if((m|0)==20){d=Ia()|0;break a}}while(0);x=0;ta(498,f[f[a>>2]>>2]|0);l=x;x=0;if(!(l&1)){i=f[n>>2]|0;l=f[h>>2]|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;va(151,j|0,i|0,l|0);l=x;x=0;if(l&1){d=Ia()|0;break}d=c+11|0;if((b[d>>0]|0)<0){T0a(f[c>>2]|0,0);f[c+4>>2]=0}else{T0a(c,0);b[d>>0]=0}x=0;ta(470,c|0);m=x;x=0;if(m&1){m=Ja(0)|0;r2a(m)}f[c>>2]=f[j>>2];f[c+4>>2]=f[j+4>>2];f[c+8>>2]=f[j+8>>2];d=0;while(1){if((d|0)==3)break;f[j+(d<<2)>>2]=0;d=d+1|0}HTa(j);uSa(n);u=k;return}else m=11}else m=11;while(0);if((m|0)==11)d=Ia()|0;uSa(n);Ua(d|0)}function bk(a){a=a|0;var c=0,d=0,e=0;a:do switch(f[a>>2]|0){case 0:{a=a+8|0;if(!(f[a>>2]|0)){yCa(134176,118433)|0;break a}else{e=zma(134176,34)|0;zma(yCa(e,f[a>>2]|0)|0,34)|0;break a}}case 1:{f[134176+(f[(f[33544]|0)+-12>>2]|0)+8>>2]=17;Bm(134176,+p[a+8>>3])|0;break}case 2:{d=a+8|0;if(!(Bbb(f[(f[d>>2]|0)+4>>2]|0)|0)){yCa(134176,118442)|0;break a}zma(134176,91)|0;c=0;while(1){a=f[d>>2]|0;if(c>>>0>=(Bbb(f[a+4>>2]|0)|0)>>>0)break;if(c){yCa(134176,123498)|0;a=f[d>>2]|0}e=JDa(a,c)|0;bk(Bbb(f[e>>2]|0)|0);c=c+1|0}zma(134176,93)|0;break}case 3:{yCa(134176,118445)|0;break}case 4:{yCa(134176,(b[a+8>>0]|0)==0?124476:124482)|0;break}case 5:{zma(134176,123)|0;e=1;a=(f[a+8>>2]|0)+8|0;while(1){a=f[a>>2]|0;if(!a)break;d=a;c=f[d+8>>2]|0;d=f[d+12>>2]|0;if(!e)yCa(134176,123498)|0;e=zma(134176,34)|0;yCa(yCa(e,Bbb(c)|0)|0,118450)|0;bk(Bbb(d)|0);e=0}zma(134176,125)|0;break}case 6:{yCa(134176,118454)|0;bk(Bbb(f[a+8>>2]|0)|0);yCa(134176,123498)|0;e=Wab(PPa(a)|0)|0;bk(Bbb(f[e>>2]|0)|0);yCa(134176,123323)|0;break}case 7:{d=yCa(134176,118456)|0;e=Wab(mOa(a)|0)|0;yCa(yCa(d,f[e>>2]|0)|0,118459)|0;yCa(134176,123498)|0;e=Vab(mOa(a)|0)|0;bk(Bbb(f[e>>2]|0)|0);yCa(134176,123323)|0;break}default:{}}while(0);return}function ck(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0;s=u;u=u+64|0;n=s+52|0;r=s+40|0;v=s+24|0;o=s+20|0;p=s+16|0;t=s+4|0;q=s;do if(b[a+12>>0]|0){c=yCa(134176,95962)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(n);Wq(c,e)|0;du(c)|0;break}v=Ia()|0;JCa(n);Ua(v|0)}while(0);i=nq(a)|0;j=t+4|0;k=t+8|0;h=0;a:while(1){if(h>>>0>=i>>>0){d=8;break}if(nq(a)|0){f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;WZ(r,95982,h7a(95982)|0);x=0;ua(1869,a|0,r|0);m=x;x=0;if(m&1){d=12;break}HTa(r)}FXa(v);x=0;l=ga(306,a|0)|0;m=x;x=0;if(m&1){d=23;break}f[o>>2]=l;x=0;m=ga(302,a|0)|0;g=x;x=0;if(g&1){d=24;break}f[p>>2]=m;f[t>>2]=0;f[j>>2]=0;f[k>>2]=0;x=0;ua(94,t|0,m|0);g=x;x=0;if(g&1){d=25;break}c=0;while(1){if(c>>>0>=m>>>0)break;x=0;d=ga(307,a|0)|0;g=x;x=0;if(g&1){d=28;break a}b[(f[t>>2]|0)+c>>0]=d;c=c+1|0}c=f[a>>2]|0;d=f[t>>2]|0;f[q>>2]=d;e=c+104|0;g=f[e>>2]|0;if(g>>>0>=(f[c+108>>2]|0)>>>0){x=0;wa(142,c+100|0,o|0,q|0,p|0);m=x;x=0;if(m&1){d=30;break}}else{x=0;va(85,n|0,m|0,0);m=x;x=0;if(m&1){d=30;break}x=0;wa(139,g|0,l|0,d|0,f[n>>2]|0);m=x;x=0;if(m&1){d=30;break}f[e>>2]=(f[e>>2]|0)+16}uSa(t);I_a(v);h=h+1|0}if((d|0)==8){u=s;return}else if((d|0)==12){c=Ia()|0;HTa(r)}else if((d|0)==23){c=Ia()|0;d=33}else if((d|0)==24){c=Ia()|0;d=32}else if((d|0)==25){c=Ia()|0;d=31}else if((d|0)==28){c=Ia()|0;d=31}else if((d|0)==30){c=Ia()|0;d=31}if((d|0)==31){uSa(t);d=32}if((d|0)==32)d=33;if((d|0)==33)I_a(v);Ua(c|0)}function dk(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;c=o+20|0;j=o+16|0;p=o+4|0;e=o;b=Dm(a)|0;f[c>>2]=b;a:do if(!(f[b+4>>2]|0)){U0a(j,f[a>>2]|0);f[p>>2]=0;h=p+4|0;f[h>>2]=0;d=p+8|0;f[d>>2]=0;x=0;ua(640,p|0,c|0);g=x;x=0;b:do if(g&1)b=Ia()|0;else{do{x=0;b=ga(310,a|0)|0;g=x;x=0;if(g&1){i=10;break}f[e>>2]=b;c=f[h>>2]|0;if((c|0)==(f[d>>2]|0)){x=0;ua(640,p|0,e|0);g=x;x=0;if(g&1){i=10;break}}else{f[c>>2]=b;f[h>>2]=(f[h>>2]|0)+4}}while(!(f[b+4>>2]|0));if((i|0)==10){b=Ia()|0;break}e=f[j>>2]|0;x=0;b=ia(99,e|0,0)|0;g=x;x=0;do if(!(g&1)){g=b+12|0;c=f[h>>2]|0;while(1){if((f[p>>2]|0)==(c|0))break;x=0;ua(81,g|0,f[c+-4>>2]|0);d=x;x=0;if(d&1){i=16;break}c=(f[h>>2]|0)+-4|0;f[h>>2]=c}if((i|0)==16){b=Ia()|0;break}x=0;ua(1887,a|0,96598);i=x;x=0;if(!(i&1)){x=0;c=ia(75,g|0,0)|0;i=x;x=0;c:do if(!(i&1)){d=f[(f[c>>2]|0)+4>>2]|0;do if(!(o2a(d)|0)){if((d|0)!=5){x=0;wa(71,112102,87234,1378,96637);x=0;break c}}else{x=0;c=ia(96,f[a+124>>2]|0,d|0)|0;a=x;x=0;if(((((!(a&1)?(x=0,k=ia(75,g|0,0)|0,a=x,x=0,!(a&1)):0)?(x=0,l=ja(45,j|0,c|0,f[k>>2]|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(75,g|0,0)|0,k=x,x=0,!(k&1)):0)?(f[m>>2]=l,x=0,n=ja(46,e|0,c|0,d|0)|0,m=x,x=0,!(m&1)):0)?(x=0,ua(81,g|0,n|0),n=x,x=0,!(n&1)):0)break;b=Ia()|0;break b}while(0);x=0;ta(439,b|0);n=x;x=0;if(!(n&1)){uSa(p);break a}}while(0);b=Ia()|0;break b}else i=17}else i=17;while(0);if((i|0)==17)b=Ia()|0}while(0);uSa(p);Ua(b|0)}while(0);u=o;return b|0}function ek(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;h=e&1;a:do if(e)switch(d<<24>>24){case 25:{d=1;e=1;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 26:{d=1;e=2;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 23:{d=1;e=4;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 27:{d=2;e=1;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 28:{d=2;e=2;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 29:{d=2;e=4;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 24:{d=2;e=8;g=qUa(f[a+4>>2]|0)|0;i=20;break a}default:{d=0;break a}}else switch(d<<24>>24){case 58:{d=1;e=1;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 59:{d=1;e=2;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 54:{d=1;e=4;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 60:{d=2;e=1;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 61:{d=2;e=2;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 62:{d=2;e=4;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 55:{d=2;e=8;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 56:{d=3;e=4;g=qUa(f[a+4>>2]|0)|0;i=20;break a}case 57:{d=4;e=8;g=qUa(f[a+4>>2]|0)|0;i=20;break a}default:{d=0;break a}}while(0);if((i|0)==20){b[g+8>>0]=e;f[g+32>>2]=d;b[g+20>>0]=h;do if(b[a+12>>0]|0){d=yCa(134176,110794)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[j>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,k=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,i=x,x=0,!(i&1)):0){JCa(j);Wq(d,k)|0;du(d)|0;break}l=Ia()|0;JCa(j);Ua(l|0)}while(0);JF(a,g+16|0,g+12|0);d=dk(a)|0;f[g+28>>2]=d;d=dk(a)|0;f[g+24>>2]=d;poa(g);f[c>>2]=g;d=1}u=l;return d|0}function fk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(h){if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=m2a(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}else{if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (I=o,p)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (I=o,p)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}o=0;p=k>>>((m2a(i|0)|0)>>>0);return (I=o,p)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;o=0;p=0;return (I=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=wOa(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;NRa(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=NRa(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function gk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;k=p+8|0;l=p+4|0;m=p;o=a+44|0;i=f[o>>2]|0;n=b+24|0;c=eV(i+212|0,f[n>>2]|0)|0;a:do if((c|0)!=(i+216|0)){g=f[c+20>>2]|0;e=g+8|0;g=g+12|0;h=b+8|0;d=b+12|0;c=0;b:while(1){if(c>>>0>=(f[g>>2]|0)-(f[e>>2]|0)>>2>>>0)break;c:do if(c>>>0<(Bbb(f[d>>2]|0)|0)>>>0){q=JDa(h,c)|0;i=f[(f[e>>2]|0)+(c<<2)>>2]|0;if((f[(f[q>>2]|0)+4>>2]|0)!=(i|0)){if((i|0)!=4?(q=JDa(h,c)|0,(f[(f[q>>2]|0)+4>>2]|0)!=5):0){j=10;break b}q=JDa(h,c)|0;switch(f[(f[q>>2]|0)+4>>2]|0){case 1:{q=f[o>>2]|0;i=JDa(h,c)|0;i=mBa(f[q+8>>2]|0,36,f[i>>2]|0)|0;q=JDa(h,c)|0;f[q>>2]=i;break c}case 3:{q=f[o>>2]|0;i=JDa(h,c)|0;i=mBa(f[q+8>>2]|0,43,f[i>>2]|0)|0;q=JDa(h,c)|0;f[q>>2]=i;break c}default:break c}}}else{q=ZVa(f[(f[o>>2]|0)+4>>2]|0)|0;i=f[(f[e>>2]|0)+(c<<2)>>2]|0;f[q+8>>2]=i;f[q+4>>2]=i;aaa(h,q)}while(0);c=c+1|0}if((j|0)==10)Ca(62745,51387,1311,62810);g=a+16|0;c=Bbb(f[a+36>>2]|0)|0;f[m>>2]=f[n>>2];f[k>>2]=f[m>>2];d=(hJ(c,k)|0)+16|0;f[l>>2]=f[d>>2];f[k>>2]=f[l>>2];c=(KI(c,k)|0)+4|0;c=f[c>>2]|0;d=b+4|0;e=f[d>>2]|0;if((e|0)!=(c|0)){f[d>>2]=c;if((c|0)!=4){if(!e)break;Ca(62826,51387,1345,62810)}switch(e|0){case 0:break a;case 1:{q=Um(mBa(f[(f[o>>2]|0)+8>>2]|0,29,b)|0,(f[o>>2]|0)+40|0)|0;f4a(f[g>>2]|0,q);break a}case 3:{q=mBa(f[(f[o>>2]|0)+8>>2]|0,44,b)|0;f4a(f[g>>2]|0,q);break a}default:hb()}}}while(0);u=p;return}function hk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;n=m+40|0;l=m+16|0;j=m;a:do if(((a|0)!=(c|0)?(e=(b[a>>0]|0)+-48|0,e>>>0<10):0)?(g=a+1|0,(g|0)!=(c|0)):0){k=e;while(1){h=(b[g>>0]|0)+-48|0;if(h>>>0>=10)break;e=g+1|0;if((e|0)==(c|0))break a;k=h+(k*10|0)|0;g=e}if((c-g|0)>>>0>=k>>>0){f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;nW(n,g,k);x=0;va(183,l|0,n|0,10);c=x;x=0;b:do if(c&1)a=Ia()|0;else{a=h7a(124656)|0;c=b[l+11>>0]|0;do if((a|0)==((c<<24>>24<0?f[l+4>>2]|0:c&255)|0)){x=0;a=ja(102,l|0,124656,a|0)|0;c=x;x=0;if(c&1){c=Ja(0)|0;r2a(c)}else{i=(a|0)==0;break}}else i=0;while(0);HTa(l);c:do if(i){x=0;ta(521,l|0);j=x;x=0;do if(j&1)a=Ia()|0;else{a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(l);break}}else{yY(e,l);f[a>>2]=(f[a>>2]|0)+24}JJa(l);break c}while(0);break b}else{f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}NY(l,j);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(l);HTa(j);break b}}else{yY(e,l);f[a>>2]=(f[a>>2]|0)+24}JJa(l);HTa(j)}while(0);HTa(n);a=g+k|0;break a}while(0);HTa(n);Ua(a|0)}}while(0);u=m;return a|0}function ik(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+64|0;j=n+52|0;e=n+40|0;h=n+28|0;k=n+16|0;l=n+12|0;m=n;do if(b[a+12>>0]|0){c=yCa(134176,95466)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,o=x,x=0,!(o&1)):0){JCa(j);Wq(c,g)|0;du(c)|0;break}o=Ia()|0;JCa(j);Ua(o|0)}while(0);do if((nq(a)|0)!=1){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,95498,h7a(95498)|0);x=0;ua(1869,a|0,e|0);o=x;x=0;if(o&1){c=Ia()|0;HTa(e);break}else{HTa(e);i=10;break}}else i=10;while(0);a:do if((i|0)==10){c=(f[a>>2]|0)+60|0;do if(b[c>>0]|0){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,95537,h7a(95537)|0);x=0;ua(1869,a|0,h|0);o=x;x=0;if(o&1){c=Ia()|0;HTa(h);break a}else{HTa(h);c=(f[a>>2]|0)+60|0;break}}while(0);b[c>>0]=1;do if((oq(a)|0)!=-16){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;WZ(k,95579,h7a(95579)|0);x=0;ua(1869,a|0,k|0);o=x;x=0;if(o&1){c=Ia()|0;HTa(k);break a}else{HTa(k);break}}while(0);o=f[a>>2]|0;cLa(l,-1,0);WB(a,o+68|0,o+72|0,j,f[l>>2]|0);do if(b[j>>0]|0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;WZ(m,95614,h7a(95614)|0);x=0;ua(1869,a|0,m|0);o=x;x=0;if(o&1){c=Ia()|0;HTa(m);break a}else{HTa(m);break}}while(0);u=n;return}while(0);Ua(c|0)}function jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+64|0;n=p+52|0;g=p+48|0;s=p+44|0;r=p+40|0;d=p+36|0;e=p+32|0;j=p+20|0;k=p+16|0;l=p+12|0;o=p;E1a(s,f[33047]|0);f[r>>2]=f[33150];i=b+12|0;q=f[i>>2]|0;h=b+16|0;c=f[h>>2]|0;f[g>>2]=f[s>>2];f[n>>2]=f[r>>2];c=c6(q,c,g,n)|0;if(!c){s=n8(24)|0;hPa(s);r=f[33150]|0;f[a+16>>2]=r;f[s>>2]=r;E1a(n,f[33047]|0);f[s+4>>2]=f[n>>2];f[s+8>>2]=f[33150];f[s+12>>2]=3;f[s+20>>2]=1;Ys(b,s)}else f[a+16>>2]=f[c>>2];E1a(d,f[33047]|0);f[e>>2]=f[33149];s=f[i>>2]|0;c=f[h>>2]|0;f[g>>2]=f[d>>2];f[n>>2]=f[e>>2];c=c6(s,c,g,n)|0;do if(!c){c=n8(24)|0;hPa(c);d=f[33149]|0;f[a+20>>2]=d;f[c>>2]=d;E1a(n,f[33047]|0);f[c+4>>2]=f[n>>2];f[c+8>>2]=f[33149];f[c+12>>2]=0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,88354,h7a(88354)|0);x=0;d=ia(55,j|0,b|0)|0;s=x;x=0;if(s&1){c=Ia()|0;HTa(j);break}else{f[c+16>>2]=f[d>>2];HTa(j);Ys(b,c);m=9;break}}else{f[a+20>>2]=f[c>>2];m=9}while(0);a:do if((m|0)==9){E1a(k,f[33047]|0);f[l>>2]=f[33148];s=f[i>>2]|0;c=f[h>>2]|0;f[g>>2]=f[k>>2];f[n>>2]=f[l>>2];c=c6(s,c,g,n)|0;do if(!c){d=n8(24)|0;hPa(d);c=f[33148]|0;f[a+24>>2]=c;f[d>>2]=c;E1a(n,f[33047]|0);f[d+4>>2]=f[n>>2];f[d+8>>2]=f[33148];f[d+12>>2]=0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;WZ(o,88354,h7a(88354)|0);x=0;c=ia(55,o|0,b|0)|0;s=x;x=0;if(s&1){c=Ia()|0;HTa(o);break a}else{f[d+16>>2]=f[c>>2];HTa(o);Ys(b,d);break}}else f[a+24>>2]=f[c>>2];while(0);u=p;return}while(0);Ua(c|0)}function kk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=yCa(134176,110794)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);if((f[c+4>>2]|0)!=5){a:do if(!(b[c+20>>0]|0))switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,58)|0;break a}case 2:{Ev(f[a+28>>2]|0,59)|0;break a}case 4:{Ev(f[a+28>>2]|0,54)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[a+28>>2]|0,60)|0;break a}case 2:{Ev(f[a+28>>2]|0,61)|0;break a}case 4:{Ev(f[a+28>>2]|0,62)|0;break a}case 8:{Ev(f[a+28>>2]|0,55)|0;break a}default:hb()}break}case 3:{Ev(f[a+28>>2]|0,56)|0;break a}case 4:{Ev(f[a+28>>2]|0,57)|0;break a}default:hb()}else{d=a+28|0;Ev(f[d>>2]|0,-2)|0;switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,25)|0;break a}case 2:{Ev(f[d>>2]|0,26)|0;break a}case 4:{Ev(f[d>>2]|0,23)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Ev(f[d>>2]|0,27)|0;break a}case 2:{Ev(f[d>>2]|0,28)|0;break a}case 4:{Ev(f[d>>2]|0,29)|0;break a}case 8:{Ev(f[d>>2]|0,24)|0;break a}default:hb()}break}default:hb()}}while(0);i=Bbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;CX(a,i,k,Bbb(f[c+12>>2]|0)|0)}u=j;return}function lk(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;l=n+12|0;m=n;k=a+12|0;do if(b[k>>0]|0){e=yCa(134176,98442)|0;ZXa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[l>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,j=x,x=0,!(j&1)):0){JCa(l);Wq(e,d)|0;du(e)|0;break}n=Ia()|0;JCa(l);Ua(n|0)}while(0);j=nq(a)|0;do if(b[k>>0]|0){c=zm(yCa(134176,97877)|0,j)|0;ZXa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[l>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(l);Wq(c,g)|0;du(c)|0;break}n=Ia()|0;JCa(l);Ua(n|0)}while(0);g=a+64|0;h=a+68|0;i=a+60|0;e=0;while(1){if(e>>>0>=j>>>0){c=13;break}if(b[k>>0]|0){d=yCa(134176,97883)|0;ZXa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[l>>2]|0,134880)|0;o=x;x=0;if(o&1){c=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;o=x;x=0;if(o&1){c=17;break}JCa(l);Wq(d,c)|0;du(d)|0}d=nq(a)|0;c=f[a>>2]|0;if(d>>>0>=(f[c+4>>2]|0)-(f[c>>2]|0)>>2>>>0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;WZ(m,98468,h7a(98468)|0);x=0;ua(1869,a|0,m|0);o=x;x=0;if(o&1){c=22;break}HTa(m);c=f[a>>2]|0}c=f[(f[c>>2]|0)+(d<<2)>>2]|0;f[l>>2]=c;d=f[g>>2]|0;if(d>>>0<(f[h>>2]|0)>>>0){f[d>>2]=c;f[g>>2]=(f[g>>2]|0)+4}else IL(i,l);e=e+1|0}if((c|0)==13){u=n;return}else if((c|0)==17){o=Ia()|0;JCa(l);Ua(o|0)}else if((c|0)==22){o=Ia()|0;HTa(m);Ua(o|0)}}function mk(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+80|0;c=k+60|0;d=k+48|0;e=k+36|0;g=k+24|0;h=k+12|0;i=k;j=a+24|0;if((f[j>>2]|0)<=1?(f[a+28>>2]|0)<=1:0)l=7;else l=3;do if((l|0)==3)if(!(b[a+33>>0]|0)){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,68176,h7a(68176)|0);x=0;ua(80,a|0,c|0);m=x;x=0;if(m&1){a=Ia()|0;HTa(c);break}else{HTa(c);l=7;break}}else l=7;while(0);a:do if((l|0)==7){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;WZ(d,67770,h7a(67770)|0);x=0;ua(80,a|0,d|0);m=x;x=0;if(m&1){a=Ia()|0;HTa(d);break}HTa(d);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,69671,h7a(69671)|0);x=0;ua(80,a|0,e|0);m=x;x=0;if(m&1){a=Ia()|0;HTa(e);break}HTa(e);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,68615,h7a(68615)|0);x=0;ua(80,a|0,g|0);m=x;x=0;if(m&1){a=Ia()|0;HTa(g);break}HTa(g);if(!((f[j>>2]|0)<=1?(f[a+28>>2]|0)<=0:0))l=12;do if((l|0)==12){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,68074,h7a(68074)|0);x=0;ua(80,a|0,h|0);m=x;x=0;if(m&1){a=Ia()|0;HTa(h);break a}HTa(h);f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,68863,h7a(68863)|0);x=0;ua(80,a|0,i|0);m=x;x=0;if(m&1){a=Ia()|0;HTa(i);break a}else{HTa(i);break}}while(0);u=k;return}while(0);Ua(a|0)}function nk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+128|0;j=i+56|0;k=i+12|0;h=i;tAa(j);b[j>>0]=d&1;e=j+1|0;b[e>>0]=d>>>1&1;f[j+4>>2]=c;c=j+8|0;b[c>>0]=d>>>2&1;mza(k,a);x=0;ua(1285,k|0,j|0);g=x;x=0;a:do if(!(g&1)?(h4a(k),x=0,ta(438,k|0),g=x,x=0,!(g&1)):0){if(b[e>>0]|0){x=0;ua(1286,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1287,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;va(117,f[a+48>>2]|0,f[a+52>>2]|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1288,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1289,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1290,a|0,j|0);g=x;x=0;if(g&1){d=10;break}}if(SAa()|0?(x=0,ua(1291,a|0,j|0),g=x,x=0,g&1):0){d=10;break}g=j+9|0;b:do if(!((b[g>>0]&1|b[c>>0])<<24>>24)){e=f[a+40>>2]|0;c=f[a+36>>2]|0;while(1){if((c|0)==(e|0)){d=16;break}x=0;d=ia(128,j|0,f[c>>2]|0)|0;a=x;x=0;if(a&1){d=21;break}x=0;ua(107,h|0,d+4|0);a=x;x=0;if(a&1){d=21;break}x=0;ia(84,134176,h|0)|0;a=x;x=0;if(a&1){d=22;break}HTa(h);c=c+4|0}if((d|0)==16){x=0;c=ia(128,j|0,0)|0;a=x;x=0;do if(!(a&1)?(x=0,ua(107,h|0,c+4|0),a=x,x=0,!(a&1)):0){x=0;ia(84,134176,h|0)|0;a=x;x=0;if(a&1){c=Ia()|0;HTa(h);break}else{HTa(h);break b}}else d=27;while(0);if((d|0)==27)c=Ia()|0;break a}else if((d|0)==21)c=Ia()|0;else if((d|0)==22){c=Ia()|0;HTa(h)}break a}while(0);h=(b[g>>0]&1)!=0;Tca(k);Hqa(j);u=i;return h|0}else d=10;while(0);if((d|0)==10)c=Ia()|0;Tca(k);Hqa(j);Ua(c|0);return 0}function ok(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;p=q+20|0;g=q+16|0;l=q+12|0;m=q+8|0;n=q+4|0;o=q;h=a+64|0;k=f[h>>2]|0;do if((f[k+4>>2]|0)!=(f[k>>2]|0)){k=a+72|0;do if(b[k>>0]|0){c=yCa(134176,87978)|0;ZXa(p,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[p>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(p);Wq(c,e)|0;du(c)|0;break}q=Ia()|0;JCa(p);Ua(q|0)}while(0);j=A$(a,1)|0;i=a+68|0;e=f[i>>2]|0;d=f[h>>2]|0;f4a(g,(f[d+4>>2]|0)-(f[d>>2]|0)>>2);Yr(e,f[g>>2]|0)|0;e=f[h>>2]|0;g=f[e+4>>2]|0;e=f[e>>2]|0;while(1){if((e|0)==(g|0)){c=9;break}if(b[k>>0]|0){d=yCa(134176,87861)|0;ZXa(p,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[p>>2]|0,134880)|0;h=x;x=0;if(h&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=13;break}JCa(p);Wq(d,c)|0;du(d)|0}c=f[i>>2]|0;f4a(l,-32);Pr(c,f[l>>2]|0)|0;c=f[i>>2]|0;d=f[e>>2]|0;f4a(m,(f[d+12>>2]|0)-(f[d+8>>2]|0)>>2);Yr(c,f[m>>2]|0)|0;c=f[e>>2]|0;d=f[c+12>>2]|0;c=f[c+8>>2]|0;while(1){if((c|0)==(d|0))break;h=f[i>>2]|0;Pr(h,m8(f[c>>2]|0)|0)|0;c=c+4|0}c=f[i>>2]|0;if(!(f[(f[e>>2]|0)+4>>2]|0)){f4a(n,0);Yr(c,f[n>>2]|0)|0}else{f4a(o,1);Yr(c,f[o>>2]|0)|0;h=f[i>>2]|0;Pr(h,m8(f[(f[e>>2]|0)+4>>2]|0)|0)|0}e=e+4|0}if((c|0)==9){VA(a,j);break}else if((c|0)==13){q=Ia()|0;JCa(p);Ua(q|0)}}while(0);u=q;return}function pk(a,b){a=a|0;b=b|0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{Ul(a,b);break}case 2:{ar(a,b);break}case 3:{Xt(a,b);break}case 4:{us(a,b);break}case 5:{yn(a,b);break}case 6:{wr(a,b);break}case 7:{qs(a,b);break}case 8:{vp(a,b);break}case 9:{$v(a,b);break}case 10:{Au(a,b);break}case 11:{qv(a,b);break}case 12:{fw(a,b);break}case 13:{aj(a,b);break}case 14:{Dj(a,b);break}case 24:{bf(a,b);break}case 25:{bm(a,b);break}case 26:{sr(a,b);break}case 27:{rv(a,b);break}case 15:{mp(a,b);break}case 16:{tg(a,b);break}case 17:{Gf(a,b);break}case 18:{xv(a,b);break}case 19:{wB(a,b);break}case 20:{ZA(a,b);break}case 21:{Ks(a,b);break}case 22:{DE(a);break}case 23:{mE(a);break}default:hb()}while(0);return}function qk(a,b){a=a|0;b=b|0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{bn(a,b);break}case 2:{Qt(a,b);break}case 3:{Uu(a,b);break}case 4:{Jx(a,b);break}case 5:{Uo(a,b);break}case 6:{et(a,b);break}case 7:{$s(a,b);break}case 8:{ls(a,b);break}case 9:{$v(a,b);break}case 10:{xy(a,b);break}case 11:{qv(a,b);break}case 12:{iy(a,b);break}case 13:{Aj(a,b);break}case 14:{kk(a,b);break}case 24:{Mf(a,b);break}case 25:{_n(a,b);break}case 26:{Lt(a,b);break}case 27:{iz(a,b);break}case 15:{mp(a,b);break}case 16:{Ag(a,b);break}case 17:{Of(a,b);break}case 18:{oD(a,b);break}case 19:{BE(a);break}case 20:{nE(a,b);break}case 21:{yt(a,b);break}case 22:{DE(a);break}case 23:{mE(a);break}default:hb()}while(0);return}function rk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0;x=u;u=u+112|0;t=x+64|0;n=x+36|0;v=x;nRa(n);o=n+4|0;p=n+8|0;q=n+9|0;r=n+16|0;s=n+20|0;w=c+114|0;h=41564;while(1){if((h|0)==41580)break;l=f[h>>2]|0;f[o>>2]=l;i=41580;while(1){if((i|0)==41596)break;m=f[i>>2]|0;b[p>>0]=m;a:do if(m>>>0<=(Dxa(l)|0)>>>0){j=79501;while(1){if((j|0)==79503)break a;k=b[j>>0]|0;b[q>>0]=k;b:do if(k<<24>>24==0|(l6a(l)|0)^1){k=41596;while(1){if((k|0)==41612)break b;d=f[k>>2]|0;rHa(r,d,0)|0;c:do if(d>>>0<=m>>>0){e=(d|0)==(m|0);d=79503;while(1){if((d|0)==79505)break c;y=b[d>>0]|0;g=y<<24>>24!=0;b[s>>0]=y;do if(e|g^1){if(g?(b[w>>0]|0)==0:0)break;f[t>>2]=f[n>>2];f[t+4>>2]=f[n+4>>2];f[t+8>>2]=f[n+8>>2];f[t+12>>2]=f[n+12>>2];f[t+16>>2]=f[n+16>>2];f[t+20>>2]=f[n+20>>2];f[t+24>>2]=f[n+24>>2];Gn(a,t,c)}while(0);d=d+1|0}}while(0);k=k+4|0}}while(0);j=j+1|0}}while(0);i=i+4|0}h=h+4|0}jNa(v);m=v+32|0;n=v+4|0;o=v+8|0;p=v+16|0;q=v+20|0;k=41612;while(1){if((k|0)==41628)break;r=f[k>>2]|0;f[m>>2]=r;f[n>>2]=0;l=41628;while(1){if((l|0)==41644)break;s=f[l>>2]|0;b[o>>0]=s;d:do if(s>>>0<=(Dxa(r)|0)>>>0){j=41644;while(1){if((j|0)==41660)break d;d=f[j>>2]|0;rHa(p,d,0)|0;e:do if(d>>>0<=s>>>0){i=(d|0)==(s|0);h=79505;while(1){if((h|0)==79507)break e;y=b[h>>0]|0;d=y<<24>>24!=0;b[q>>0]=y;do if(i|d^1){if(d?(b[w>>0]|0)==0:0)break;d=t;e=v;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));Bn(a,t,c)}while(0);h=h+1|0}}while(0);j=j+4|0}}while(0);l=l+4|0}k=k+4|0}u=x;return}function sk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=u;u=u+16|0;k=h;d=b+8|0;e=f[d>>2]|0;a:do if(Tna(e)|0){g=f[b+4>>2]|0;c=f[b+12>>2]|0;if((g|0)!=5?(f[c+4>>2]|0)!=5:0){b:do if(!(sba(a,c)|0)){switch(g|0){case 4:case 2:break b;default:{}}Ca(106925,106510,904,106914)}while(0);do switch(e|0){case 3:case 1:{Xn(a,b);break a}case 21:{DD(a,b);break a}case 22:{Un(a,b);break a}case 23:{ry(a,b);break a}case 24:{T5(a,b);break a}case 34:{Qo(a,b);break a}case 46:{ap(a,b);break a}case 32:case 30:case 28:case 26:{wd(a,b);break a}case 42:case 41:case 40:case 39:{Bj(a,b);break a}case 5:{c=yCa(134176,106992)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;a=ia(73,f[k>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,i=ia(f[(f[a>>2]|0)+28>>2]|0,a|0,10)|0,j=x,x=0,!(j&1)):0){JCa(k);Wq(c,i)|0;du(c)|0;hb()}j=Ia()|0;JCa(k);Ua(j|0)}default:{c=Am(yCa(134176,107029)|0,f[d>>2]|0)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;a=ia(73,f[k>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,j=ia(f[(f[a>>2]|0)+28>>2]|0,a|0,10)|0,i=x,x=0,!(i&1)):0){JCa(k);Wq(c,j)|0;du(c)|0;hb()}j=Ia()|0;JCa(k);Ua(j|0)}}while(0)}if(sba(a,c)|0)Ca(106888,106510,900,106914);else{BVa(f[a+16>>2]|0,c)|0;break}}while(0);u=h;return}function tk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=f[l>>2]|0;c=m&-8;i=a+c|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(c>>>0>=(b+4|0)>>>0?(c-b|0)>>>0<=f[33422]<<1>>>0:0)return a|0;a=0;return a|0}if(c>>>0>=b>>>0){c=c-b|0;if(c>>>0<=15)return a|0;k=a+b|0;f[l>>2]=m&1|b|2;f[k+4>>2]=c|3;m=i+4|0;f[m>>2]=f[m>>2]|1;Pg(k,c);return a|0}if((f[33308]|0)==(i|0)){k=(f[33305]|0)+c|0;c=k-b|0;d=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}f[l>>2]=m&1|b|2;f[d+4>>2]=c|1;f[33308]=d;f[33305]=c;return a|0}if((f[33307]|0)==(i|0)){d=(f[33304]|0)+c|0;if(d>>>0>>0){a=0;return a|0}c=d-b|0;if(c>>>0>15){k=a+b|0;d=a+d|0;f[l>>2]=m&1|b|2;f[k+4>>2]=c|1;f[d>>2]=c;d=d+4|0;f[d>>2]=f[d>>2]&-2;d=k}else{f[l>>2]=m&1|d|2;d=a+d+4|0;f[d>>2]=f[d>>2]|1;d=0;c=0}f[33304]=c;f[33307]=d;return a|0}d=f[i+4>>2]|0;if(d&2|0){a=0;return a|0}j=(d&-8)+c|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;e=d>>>3;do if(d>>>0<256){d=f[i+8>>2]|0;c=f[i+12>>2]|0;if((c|0)==(d|0)){f[33302]=f[33302]&~(1<>2]=c;f[c+8>>2]=d;break}}else{h=f[i+24>>2]|0;c=f[i+12>>2]|0;do if((c|0)==(i|0)){d=i+16|0;e=d+4|0;c=f[e>>2]|0;if(!c){c=f[d>>2]|0;if(!c){e=0;break}}else d=e;while(1){g=c+20|0;e=f[g>>2]|0;if(!e){g=c+16|0;e=f[g>>2]|0;if(!e)break;else{c=e;d=g}}else{c=e;d=g}}f[d>>2]=0;e=c}else{e=f[i+8>>2]|0;f[e+12>>2]=c;f[c+8>>2]=e;e=c}while(0);if(h|0){c=f[i+28>>2]|0;d=133512+(c<<2)|0;if((f[d>>2]|0)==(i|0)){f[d>>2]=e;if(!e){f[33303]=f[33303]&~(1<>2]|0)==(i|0)?g:h+20|0)>>2]=e;if(!e)break}f[e+24>>2]=h;c=i+16|0;d=f[c>>2]|0;if(d|0){f[e+16>>2]=d;f[d+24>>2]=e}c=f[c+4>>2]|0;if(c|0){f[e+20>>2]=c;f[c+24>>2]=e}}}while(0);if(k>>>0<16){f[l>>2]=m&1|j|2;m=a+j+4|0;f[m>>2]=f[m>>2]|1;return a|0}else{i=a+b|0;f[l>>2]=m&1|b|2;f[i+4>>2]=k|3;m=a+j+4|0;f[m>>2]=f[m>>2]|1;Pg(i,k);return a|0}return 0}function uk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+32|0;A=z+8|0;v=z+4|0;w=z;a:while(1){if((b|0)==(c|0)){y=3;break}r=f[b>>2]|0;t=f[r+16>>2]|0;r=f[r+12>>2]|0;while(1){if((r|0)==(t|0))break;f[v>>2]=f[r>>2];s=$k(a,v)|0;k=f[b>>2]|0;f[w>>2]=k;f[A>>2]=k;q=HH(A,4)|0;o=s+4|0;j=f[o>>2]|0;p=(j|0)==0;b:do if(!p){l=j+-1|0;m=(l&j|0)==0;if(!m)if(q>>>0>>0)e=q;else e=(q>>>0)%(j>>>0)|0;else e=l&q;d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d)y=22;else do{d=f[d>>2]|0;if(!d){y=22;break b}i=f[d+4>>2]|0;if((i|0)!=(q|0)){if(!m){if(i>>>0>=j>>>0)i=(i>>>0)%(j>>>0)|0}else i=i&l;if((i|0)!=(e|0)){y=22;break b}}}while((f[d+8>>2]|0)!=(k|0))}else{e=0;y=22}while(0);if((y|0)==22){y=0;R6(A,s,q,w);k=s+12|0;g=+(((f[k>>2]|0)+1|0)>>>0);h=+n[s+16>>2];do if(p|h*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(632,s|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1)break a;d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){j=d;e=e&q;break}if(q>>>0>>0){j=d;e=q}else{j=d;e=(q>>>0)%(d>>>0)|0}}while(0);d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d){d=s+8|0;i=f[A>>2]|0;f[i>>2]=f[d>>2];f[d>>2]=i;f[(f[s>>2]|0)+(e<<2)>>2]=d;d=f[i>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;f[(f[s>>2]|0)+(d<<2)>>2]=i}}else{s=f[A>>2]|0;f[s>>2]=f[d>>2];f[d>>2]=s}f[k>>2]=(f[k>>2]|0)+1}r=r+4|0}b=b+4|0}if((y|0)==3){u=z;return}b=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)ubb(d);Ua(b|0)}function vk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=u;u=u+48|0;l=k+24|0;m=k+12|0;n=k;i=a;f[i>>2]=0;f[i+4>>2]=0;i=b+16|0;b=0;e=0;while(1){j=(kra(f[i>>2]|0)|0)<<24>>24;d=(j&128|0)==0;h=j&127;o=(b|0)==0&(e|0)==0;c=NRa(64,0,b|0,e|0)|0;c=hMa(1,0,c|0)|0;c=wOa(c|0,I|0,127,0)|0;g=I;c=o?127:c;c=c&h;if(!(d|(c|0)==(h|0)&0==0)){c=3;break}g=hMa(c|0,0,b|0)|0;h=a;g=f[h>>2]|g;h=f[h+4>>2]|I;o=a;f[o>>2]=g;f[o+4>>2]=h;if(d){c=17;break}b=wOa(b|0,e|0,7,0)|0;if(b>>>0>63){c=11;break}else e=I}do if((c|0)==3){d=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;o=h7a(95684)|0;x=0;va(87,l|0,95684,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,d|0,l|0);o=x;x=0;if(o&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(l);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==11){d=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;o=h7a(95727)|0;x=0;va(87,m|0,95727,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,d|0,m|0);o=x;x=0;if(o&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(m);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==17){if((j&64|0?(b+7|0)>>>0<64:0)?(o=57-b|0,m=hMa(g|0,h|0,o|0)|0,o=wJa(m|0,I|0,o|0)|0,m=I,l=a,f[l>>2]=o,f[l+4>>2]=m,(m|0)>-1|(m|0)==-1&o>>>0>4294967295):0){d=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;o=h7a(95740)|0;x=0;va(87,n|0,95740,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,d|0,n|0);o=x;x=0;if(o&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(n);if(!c)break}else b=Ia()|0;La(d|0);break}u=k;return}while(0);Ua(b|0)}function wk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;aEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Bbb(j)|0;aaa(i,xWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=gSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(zqa(c)|0))break;k=iRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;YHa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76886,76797,626,76914)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Bbb(e)|0;U0a(k,e);e=d+12|0;n=F$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(e)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(e,xWa(n+144|0)|0)}n=f[g>>2]|0;Bbb(n)|0;U0a(k,n);d=d+16|0;n=F$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(d)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(d,xWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];t3(a+44|0);L_(a+56|0);hqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function xk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;bEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Bbb(j)|0;aaa(i,xWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=gSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(zqa(c)|0))break;k=iRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;YHa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76886,76797,626,76914)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Bbb(e)|0;U0a(k,e);e=d+12|0;n=F$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(e)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(e,xWa(n+144|0)|0)}n=f[g>>2]|0;Bbb(n)|0;U0a(k,n);d=d+16|0;n=F$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(d)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(d,xWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];u3(a+44|0);M_(a+56|0);hqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function yk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;cEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Bbb(j)|0;aaa(i,xWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=gSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(zqa(c)|0))break;k=iRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;YHa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76886,76797,626,76914)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Bbb(e)|0;U0a(k,e);e=d+12|0;n=F$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(e)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(e,xWa(n+144|0)|0)}n=f[g>>2]|0;Bbb(n)|0;U0a(k,n);d=d+16|0;n=F$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(d)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(d,xWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];v3(a+44|0);N_(a+56|0);hqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function zk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;dEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Bbb(j)|0;aaa(i,xWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=gSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(zqa(c)|0))break;k=iRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;YHa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76886,76797,626,76914)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Bbb(e)|0;U0a(k,e);e=d+12|0;n=F$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(e)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(e,xWa(n+144|0)|0)}n=f[g>>2]|0;Bbb(n)|0;U0a(k,n);d=d+16|0;n=F$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(d)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(d,xWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];w3(a+44|0);O_(a+56|0);hqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function Ak(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;eEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Bbb(j)|0;aaa(i,xWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=gSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(zqa(c)|0))break;k=iRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;YHa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76886,76797,626,76914)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Bbb(e)|0;U0a(k,e);e=d+12|0;n=F$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(e)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(e,xWa(n+144|0)|0)}n=f[g>>2]|0;Bbb(n)|0;U0a(k,n);d=d+16|0;n=F$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Bbb(f[n+16>>2]|0)|0)!=0?(n=MCa(d)|0,V6a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Bbb(n)|0;aaa(d,xWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];x3(a+44|0);P_(a+56|0);hqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function Bk(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!($1a(a,f[c+8>>2]|0)|0)){if(!($1a(a,f[c>>2]|0)|0)){q=f[a+12>>2]|0;k=a+16+(q<<3)|0;l5(a+16|0,c,d,e,g);h=a+24|0;if((q|0)<=1)break;a=f[a+8>>2]|0;if((a&2|0)==0?(j=c+36|0,(f[j>>2]|0)!=1):0){if(!(a&1)){a=c+54|0;while(1){if(b[a>>0]|0)break a;if((f[j>>2]|0)==1)break a;l5(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}a=c+24|0;i=c+54|0;while(1){if(b[i>>0]|0)break a;if((f[j>>2]|0)==1?(f[a>>2]|0)==1:0)break a;l5(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}a=c+54|0;while(1){if(b[a>>0]|0)break a;l5(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((f[c+16>>2]|0)!=(d|0)?(q=c+20|0,(f[q>>2]|0)!=(d|0)):0){f[c+32>>2]=e;p=c+44|0;if((f[p>>2]|0)==4)break;k=a+16+(f[a+12>>2]<<3)|0;e=c+52|0;l=c+53|0;n=c+54|0;m=a+8|0;o=c+24|0;h=0;i=a+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){a=18;break}b[e>>0]=0;b[l>>0]=0;T2(i,c,d,d,1,g);if(b[n>>0]|0){a=18;break}do if(b[l>>0]|0){if(!(b[e>>0]|0))if(!(f[m>>2]&1)){h=1;a=18;break b}else{h=1;a=j;break}if((f[o>>2]|0)==1){a=23;break b}if(!(f[m>>2]&2)){a=23;break b}else{h=1;a=1}}else a=j;while(0);i=i+8|0;j=a}do if((a|0)==18){if((!j?(f[q>>2]=d,d=c+40|0,f[d>>2]=(f[d>>2]|0)+1,(f[c+36>>2]|0)==1):0)?(f[o>>2]|0)==2:0){b[n>>0]=1;if(h){a=23;break}else{h=4;break}}if(h)a=23;else h=4}while(0);if((a|0)==23)h=3;f[p>>2]=h;break}if((e|0)==1)f[c+32>>2]=1}else cwa(c,d,e);while(0);return}function Ck(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=IRa(f[b>>2]|0)|0;yUa(w);p=i+8|0;I$a(r,p);GUa(g,p);p=a+84|0;s=a+80|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+40|0;n=a+44|0;while(1){if(!(lTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(K5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(68,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(140,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(1426,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}RYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(K5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(68,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(140,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(1426,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);jWa(a+16|0);MTa(w);u=v;return}while(0);MTa(w);Ua(b|0)}function Dk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k;do if(!(b[a+12>>0]|0))h=a+4|0;else{g=yCa(tm(yCa(134176,87569)|0,c,d)|0,87596)|0;e=a+4|0;g=yCa(zm(g,(f[e>>2]|0)-(f[a>>2]|0)|0)|0,123274)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,i=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,l=x,x=0,!(l&1)):0){JCa(j);Wq(g,i)|0;du(g)|0;h=e;break}l=Ia()|0;JCa(j);Ua(l|0)}while(0);e=c&255;b[j>>0]=e;g=f[h>>2]|0;i=a+8|0;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{WL(a,j);g=f[h>>2]|0}e=EMa(c|0,d|0,8)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{WL(a,j);g=f[h>>2]|0}e=EMa(c|0,d|0,16)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{WL(a,j);g=f[h>>2]|0}e=EMa(c|0,d|0,24)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{WL(a,j);g=f[h>>2]|0}e=d&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{WL(a,j);g=f[h>>2]|0}e=EMa(c|0,d|0,40)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{WL(a,j);g=f[h>>2]|0}e=EMa(c|0,d|0,48)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{WL(a,j);g=f[h>>2]|0}e=EMa(c|0,d|0,56)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;f[h>>2]=(f[h>>2]|0)+1}else WL(a,j);u=k;return a|0}function Ek(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,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=u;u=u+16|0;p=r;a:do if(((((c-a|0)>3?(b[a>>0]|0)==99:0)?(b[a+1>>0]|0)==108:0)?(n=a+2|0,i=Bc(n,c,d)|0,!((i|0)==(n|0)|(i|0)==(c|0))):0)?(o=d+4|0,e=f[o>>2]|0,(f[d>>2]|0)!=(e|0)):0){l=e+-12|0;n=b[l+11>>0]|0;m=n<<24>>24<0;bI(e+-24|0,m?f[l>>2]|0:l,m?f[e+-8>>2]|0:n&255)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}e=f[o>>2]|0;h=e+-12|0;g=h+11|0;if((b[g>>0]|0)<0){T0a(f[h>>2]|0,0);f[e+-8>>2]=0;e=h}else{T0a(h,0);b[g>>0]=0;e=h}wv(h);f[e>>2]=f[p>>2];f[e+4>>2]=f[p+4>>2];f[e+8>>2]=f[p+8>>2];e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}HTa(p);Dsa((f[o>>2]|0)+-24|0,123276)|0;m=p+11|0;n=p+4|0;e=0;g=i;while(1){if((b[g>>0]|0)==69)break;l=Bc(g,c,d)|0;if((l|0)==(g|0)|(l|0)==(c|0)){e=a;break a}h=f[o>>2]|0;if((f[d>>2]|0)==(h|0)){e=a;break a}eY(p,h+-24|0);k=f[o>>2]|0;h=0;while(1){if((h|0)==-1)break;j=h+-1|0;JJa(k+(j*24|0)|0);h=j}h=k+-24|0;f[o>>2]=h;j=b[m>>0]|0;i=j<<24>>24<0;j=i?f[n>>2]|0:j&255;if(j)if((f[d>>2]|0)!=(h|0)){x=0;ja(97,k+-48|0,(i?f[p>>2]|0:p)|0,j|0)|0;k=x;x=0;if(k&1){q=24;break}else{h=1;g=l}}else{h=0;e=a}else{h=1;g=l}HTa(p);if(!h)break a}if((q|0)==24){r=Ia()|0;HTa(p);Ua(r|0)}e=f[o>>2]|0;if((f[d>>2]|0)!=(e|0)){Dsa(e+-24|0,123274)|0;e=g+1|0}else e=a}else e=a;while(0);u=r;return e|0}function Fk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=IRa(f[b>>2]|0)|0;yUa(w);p=i+8|0;I$a(r,p);GUa(g,p);p=a+84|0;s=a+80|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+40|0;n=a+44|0;while(1){if(!(lTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(K5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(92,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(210,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(3152,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}RYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(K5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(92,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(210,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(3152,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);jWa(a+16|0);MTa(w);u=v;return}while(0);MTa(w);Ua(b|0)}function Gk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;e=j+40|0;i=j+28|0;k=j+16|0;h=j+12|0;l=j;do if(!(b[(f[a>>2]|0)+60>>0]|0)){g=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;l=h7a(92682)|0;x=0;va(87,i|0,92682,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,g|0,i|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(i);if(!e)break}else d=Ia()|0;La(g|0)}else{g=FPa(f[a+4>>2]|0)|0;d=Or(c,1)|0;i=jF(Or(d,0)|0)|0;fNa(e,97307,1);if(_1a(i,f[e>>2]|0)|0){g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;l=h7a(92691)|0;x=0;va(87,k|0,92691,l|0);l=x;x=0;if(!(l&1)){x=0;wa(138,g|0,k|0,f[c+28>>2]|0,f[c+32>>2]|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(k);if(!e)break}else d=Ia()|0;La(g|0);break}k=jF(Or(d,1)|0)|0;d=f[a>>2]|0;E1a(h,k);f[e>>2]=f[h>>2];d=oma(d,e)|0;if(d|0){f[g+24>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];u7(a,c,(XXa(c)|0)+-1|0,g);l=UQa(a,Or(c,(XXa(c)|0)+-1|0)|0)|0;f[g+28>>2]=l;ZMa(g);u=j;return g|0}g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;k=h7a(92724)|0;x=0;va(87,l|0,92724,k|0);k=x;x=0;if(!(k&1)){x=0;wa(138,g|0,l|0,f[c+28>>2]|0,f[c+32>>2]|0);k=x;x=0;if(k&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(l);if(!e)break}else d=Ia()|0;La(g|0)}while(0);Ua(d|0);return 0}function Hk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=IRa(f[b>>2]|0)|0;yUa(w);p=i+8|0;I$a(r,p);GUa(g,p);p=a+68|0;s=a+64|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+24|0;n=a+28|0;while(1){if(!(lTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(K5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(58,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(104,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(491,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}RYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(K5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(58,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(104,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(491,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);jWa(a);MTa(w);u=v;return}while(0);MTa(w);Ua(b|0)}function Ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=IRa(f[b>>2]|0)|0;yUa(w);p=i+8|0;I$a(r,p);GUa(g,p);p=a+84|0;s=a+80|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+40|0;n=a+44|0;while(1){if(!(lTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(K5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(60,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(110,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(600,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}RYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(K5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(60,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(110,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(600,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);jWa(a+16|0);MTa(w);u=v;return}while(0);MTa(w);Ua(b|0)}function Jk(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=u;u=u+144|0;h=l+128|0;i=l+124|0;o=l+64|0;m=l+44|0;n=l+24|0;j=l+8|0;e=l+20|0;g=l+4|0;k=l;f[i>>2]=a;DGa(o);x=0;ua(1625,o|0,a|0);d=x;x=0;if(d&1)a=Ia()|0;else{f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=1065353216;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;f[n+12>>2]=0;f[n+16>>2]=1065353216;f[j>>2]=i;f[j+4>>2]=m;f[j+8>>2]=n;b=f[o+28>>2]|0;a=f[o+24>>2]|0;while(1){if((a|0)==(b|0)){e=4;break}c=f[a>>2]|0;f[e>>2]=f[c+16>>2];x=0;f[h>>2]=f[e>>2];d=ia(154,j|0,h|0)|0;p=x;x=0;if(p&1){e=8;break}f[c+16>>2]=d;a=a+4|0}do if((e|0)==4){b=f[o+40>>2]|0;a=f[o+36>>2]|0;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;f[g>>2]=f[c+32>>2];x=0;f[h>>2]=f[g>>2];d=ia(154,j|0,h|0)|0;p=x;x=0;if(p&1){e=13;break}f[c+32>>2]=d;a=a+4|0}if((e|0)==13){a=Ia()|0;break}b=f[o+52>>2]|0;a=f[o+48>>2]|0;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;f[k>>2]=f[c+24>>2];x=0;f[h>>2]=f[k>>2];d=ia(154,j|0,h|0)|0;p=x;x=0;if(p&1){e=17;break}f[c+24>>2]=d;a=a+4|0}if((e|0)==17){a=Ia()|0;break}k=f[i>>2]|0;p=CD(f[k>>2]|0,f[k+4>>2]|0,n)|0;QM(k,p,f[(f[i>>2]|0)+4>>2]|0);x=0;ta(486,f[i>>2]|0);p=x;x=0;if(p&1){a=Ia()|0;break}else{NQa(n);Mca(m);xya(o);u=l;return}}else if((e|0)==8)a=Ia()|0;while(0);NQa(n);Mca(m)}xya(o);Ua(a|0)}function Kk(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)Ca(110557,115839,78,110562);do switch(f[c>>2]|0){case 1:{_k(a,b,c);break}case 2:{pu(a,b,c);break}case 3:{Jbb();break}case 4:{xp(a,b,c);break}case 5:{es(a,b,c);break}case 6:{Jbb();break}case 7:{Jbb();break}case 8:{Jbb();break}case 9:{Jbb();break}case 10:{Jbb();break}case 11:{pX(a,f[b+4>>2]|0,c);break}case 12:{Jbb();break}case 13:{Jbb();break}case 14:{Jbb();break}case 24:{KXa(a);break}case 25:{KXa(a);break}case 26:{KXa(a);break}case 27:{KXa(a);break}case 15:{R8(a,c);break}case 16:{Bd(a,b,c);break}case 17:{ad(a,b,c);break}case 18:{pr(a,b,c);break}case 19:{TN(a,b,f[c+8>>2]|0);break}case 20:{EM(a,b,c);break}case 21:{Jbb();break}case 22:{KXa(a);break}case 23:{jPa(b);break}default:hb()}while(0);return}function Lk(a,b){a=a|0;b=b|0;var c=0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{c=UOa(a,b)|0;break}case 2:{c=UOa(a,b)|0;break}case 3:{c=UOa(a,b)|0;break}case 4:{c=UOa(a,b)|0;break}case 5:{c=UOa(a,b)|0;break}case 6:{c=UOa(a,b)|0;break}case 7:{c=UOa(a,b)|0;break}case 8:{c=UOa(a,b)|0;break}case 9:{c=UOa(a,b)|0;break}case 10:{c=UOa(a,b)|0;break}case 11:{c=UOa(a,b)|0;break}case 12:{c=UOa(a,b)|0;break}case 13:{c=UOa(a,b)|0;break}case 14:{c=UOa(a,b)|0;break}case 24:{c=UOa(a,b)|0;break}case 25:{c=UOa(a,b)|0;break}case 26:{c=UOa(a,b)|0;break}case 27:{c=UOa(a,b)|0;break}case 15:{c=UOa(a,b)|0;break}case 16:{c=UOa(a,b)|0;break}case 17:{c=UOa(a,b)|0;break}case 18:{c=UOa(a,b)|0;break}case 19:{c=UOa(a,b)|0;break}case 20:{c=UOa(a,b)|0;break}case 21:{c=UOa(a,b)|0;break}case 22:{c=UOa(a,b)|0;break}case 23:{c=UOa(a,b)|0;break}default:hb()}while(0);return c|0}function Mk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+48|0;j=o;k=o+44|0;p=o+32|0;l=o+28|0;m=o+24|0;f[k>>2]=c;f[p>>2]=0;n=p+4|0;f[n>>2]=0;e=p+8|0;f[e>>2]=0;x=0;ua(104,p|0,k|0);i=x;x=0;do if(!(i&1)){while(1){if(!(Bbb(f[c+16>>2]|0)|0))break;c=c+12|0;x=0;d=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}if(!(rab(f[f[d>>2]>>2]|0)|0))break;x=0;c=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}x=0;c=ga(217,f[c>>2]|0)|0;i=x;x=0;if(i&1){g=12;break}f[k>>2]=c;d=f[n>>2]|0;if((d|0)==(f[e>>2]|0)){x=0;ua(104,p|0,k|0);i=x;x=0;if(i&1){g=12;break}}else{f[d>>2]=c;f[n>>2]=(f[n>>2]|0)+4}}if((g|0)==12){c=Ia()|0;g=14;break}M0a(a);d=f[n>>2]|0;i=f[d+-4>>2]|0;c=d;a:while(1){if((c|0)==(f[p>>2]|0)){g=29;break}h=d+-4|0;d=f[h>>2]|0;f[k>>2]=d;f[n>>2]=h;b:do if(D0a(a)|0){f[l>>2]=f[d+8>>2];f[j>>2]=f[l>>2];vNa(a,j)}else{g=d+12|0;e=d+16|0;c=0;while(1){if(c>>>0>=(Bbb(f[e>>2]|0)|0)>>>0)break b;if(!((c|0)==0&(i|0)!=(d|0))){x=0;h=ia(75,g|0,c|0)|0;q=x;x=0;if(q&1){g=27;break a}x=0;va(93,j|0,b|0,f[h>>2]|0);q=x;x=0;if(q&1){g=27;break a}f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];f[a+16>>2]=f[j+16>>2];if(D0a(a)|0)break}c=c+1|0}f[m>>2]=f[d+8>>2];f[j>>2]=f[m>>2];vNa(a,j)}while(0);d=f[n>>2]|0;c=d}if((g|0)==27){c=Ia()|0;break}else if((g|0)==29){uSa(p);u=o;return}}else{c=Ia()|0;g=14}while(0);uSa(p);Ua(c|0)}function Nk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0;t=u;u=u+64|0;l=t+24|0;h=t+56|0;v=t+40|0;j=t;k=b+16|0;e=f[k>>2]|0;if(e>>>0>250){e=f[b+36>>2]|0;pc[f[(f[e>>2]|0)+20>>2]&4095](e,57181);e=f[k>>2]|0}f[k>>2]=e+1;i=b+20|0;r=b+24|0;g=f[r>>2]|0;s=g-(f[i>>2]|0)|0;if((f[b+28>>2]|0)==(g|0))IL(i,c);else{f[g>>2]=f[c>>2];f[r>>2]=(f[r>>2]|0)+4}g=f[b>>2]|0;f[h>>2]=f[c>>2];f[l>>2]=f[h>>2];g=ZI(g,l)|0;if(!g)Ca(116878,101307,965,57193);Xg(v,g,d);bW(l,b,v);x=0;va(93,j|0,l|0,f[g+36>>2]|0);d=x;x=0;if(d&1)e=Ia()|0;else{if(D0a(j)|0?!($1a(f[j+16>>2]|0,f[33118]|0)|0):0){x=0;wa(71,57214,101307,977,57193);x=0}else{f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];c=g+4|0;if((f[c>>2]|0)==(f[a>>2]|0)){f[k>>2]=e;e=f[i>>2]|0;g=f[r>>2]|0;c=g;while(1){if((c-e|0)>>>0<=s>>>0)break;q=g+-4|0;f[r>>2]=q;c=q;g=q}_$a(v);u=t;return}x=0;e=ia(62,134176,57262)|0;t=x;x=0;if((((((!(t&1)?(x=0,m=ia(76,e|0,f[g>>2]|0)|0,t=x,x=0,!(t&1)):0)?(x=0,n=ia(62,m|0,57271)|0,t=x,x=0,!(t&1)):0)?(x=0,f[l>>2]=f[a>>2],f[l+4>>2]=f[a+4>>2],f[l+8>>2]=f[a+8>>2],f[l+12>>2]=f[a+12>>2],o=ia(70,n|0,l|0)|0,t=x,x=0,!(t&1)):0)?(x=0,p=ia(62,o|0,57285)|0,t=x,x=0,!(t&1)):0)?(x=0,q=ia(77,p|0,f[c>>2]|0)|0,t=x,x=0,!(t&1)):0)?(x=0,ia(71,q|0,10)|0,t=x,x=0,!(t&1)):0){x=0;sa(5);x=0}}e=Ia()|0}_$a(v);Ua(e|0)}function Ok(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){jN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(1411,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)sIa(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function Pk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+48|0;i=j+24|0;k=j+12|0;l=j;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;WZ(a,66888,h7a(66888)|0);h=c+20|0;e=i+11|0;g=i+4|0;c=(f[c+24>>2]|0)-(f[h>>2]|0)>>2;while(1){d=c+-1|0;if((c|0)<=0){d=3;break}f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;c=h7a(66928)|0;x=0;va(87,l|0,66928,c|0);c=x;x=0;if(c&1){d=15;break}x=0;ia(59,l|0,f[(f[h>>2]|0)+(d<<2)>>2]|0)|0;c=x;x=0;if(c&1){d=16;break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];c=0;while(1){if((c|0)==3)break;f[l+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,k|0,112640)|0;c=x;x=0;if(c&1){d=17;break}f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];c=0;while(1){if((c|0)==3)break;f[k+(c<<2)>>2]=0;c=c+1|0}c=b[e>>0]|0;m=c<<24>>24<0;x=0;ja(49,a|0,(m?f[i>>2]|0:i)|0,(m?f[g>>2]|0:c&255)|0)|0;c=x;x=0;if(c&1){d=18;break}HTa(i);HTa(k);HTa(l);c=d}if((d|0)==3){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;m=h7a(66932)|0;x=0;va(87,i|0,66932,m|0);m=x;x=0;do if(!(m&1)){m=b[i+11>>0]|0;l=m<<24>>24<0;x=0;ja(49,a|0,(l?f[i>>2]|0:i)|0,(l?f[i+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){c=Ia()|0;HTa(i);break}else{HTa(i);u=j;return}}else c=Ia()|0;while(0)}else if((d|0)==15){c=Ia()|0;d=21}else if((d|0)==16){c=Ia()|0;d=20}else if((d|0)==17){c=Ia()|0;d=19}else if((d|0)==18){c=Ia()|0;HTa(i);d=19}if((d|0)==19){HTa(k);d=20}if((d|0)==20){HTa(l);d=21}HTa(a);Ua(c|0)}function Qk(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;n=p+24|0;g=p+12|0;o=p;do if(b[a+12>>0]|0){e=yCa(134176,97969)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){JCa(n);Wq(e,d)|0;du(e)|0;break}p=Ia()|0;JCa(n);Ua(p|0)}while(0);m=nq(a)|0;do if((m|0)==-1){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,97990,h7a(97990)|0);x=0;ua(1869,a|0,g|0);l=x;x=0;if(l&1){c=Ia()|0;HTa(g);break}else{HTa(g);h=10;break}}else h=10;while(0);do if((h|0)==10){l=a+220|0;k=0;while(1){if(k>>>0>=m>>>0){h=12;break}if(nq(a)|0){f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;WZ(o,98008,h7a(98008)|0);x=0;ua(1869,a|0,o|0);j=x;x=0;if(j&1){h=16;break}HTa(o)}c=f[a>>2]|0;d=lD(a)|0;f[n>>2]=d;e=c+80|0;g=f[e>>2]|0;if(g>>>0<(f[c+84>>2]|0)>>>0){uQa(g,d);f[e>>2]=(f[e>>2]|0)+16}else PF(c+76|0,n);f[n>>2]=k;d=hY(l,n)|0;e=nq(a)|0;g=d+4|0;h=d+8|0;c=0;while(1){if((c|0)==(e|0))break;i=nq(a)|0;f[n>>2]=i;j=f[g>>2]|0;if(j>>>0<(f[h>>2]|0)>>>0){f[j>>2]=i;f[g>>2]=j+4}else IL(d,n);c=c+1|0}k=k+1|0}if((h|0)==12){u=p;return}else if((h|0)==16){c=Ia()|0;HTa(o);break}}while(0);Ua(c|0)}function Rk(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+224|0;j=s+216|0;k=s+128|0;l=s+212|0;m=s+208|0;n=s+200|0;o=s;p=s+192|0;q=s+188|0;t=s+176|0;i=s+168|0;r=s+160|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[t+(c<<2)>>2]=0;c=c+1|0}f[i+4>>2]=0;f[i>>2]=49564;g=b[h+8+3>>0]|0;c=g<<24>>24<0;d=c?f[h>>2]|0:h;g=d+((c?f[h+4>>2]|0:g&255)<<2)|0;h=k+32|0;c=0;a:while(1){if(!((c|0)!=2&d>>>0>>0)){d=17;break}f[m>>2]=d;x=0;e=qa(f[(f[i>>2]|0)+12>>2]|0,i|0,j|0,d|0,g|0,m|0,k|0,h|0,l|0)|0;c=x;x=0;if(c&1){d=15;break}if((e|0)==2?1:(f[m>>2]|0)==(d|0)){d=9;break}c=k;while(1){if(c>>>0>=(f[l>>2]|0)>>>0)break;x=0;ua(82,t|0,b[c>>0]|0);d=x;x=0;if(d&1){d=14;break a}c=c+1|0}d=f[m>>2]|0;c=e}if((d|0)==9){x=0;ta(513,120822);x=0;c=Ia()|0;d=16}else if((d|0)==14){c=Ia()|0;d=16}else if((d|0)==15){c=Ia()|0;d=16}else if((d|0)==17){d=(b[t+11>>0]|0)<0?f[t>>2]|0:t;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}g=Bbb(d)|0;f[r+4>>2]=0;f[r>>2]=49612;g=d+(bV(g)|0)|0;h=g;i=o+128|0;c=0;b:while(1){if(!((c|0)!=2&d>>>0>>0)){d=30;break}f[q>>2]=d;x=0;e=qa(f[(f[r>>2]|0)+16>>2]|0,r|0,n|0,d|0,((h-d|0)>32?d+32|0:g)|0,q|0,o|0,i|0,p|0)|0;m=x;x=0;if(m&1){d=32;break}if((e|0)==2?1:(f[q>>2]|0)==(d|0)){d=25;break}c=o;while(1){if(c>>>0>=(f[p>>2]|0)>>>0)break;x=0;ua(3188,a|0,f[c>>2]|0);m=x;x=0;if(m&1){d=31;break b}c=c+4|0}d=f[q>>2]|0;c=e}if((d|0)==25){x=0;ta(513,120822);x=0;c=Ia()|0}else if((d|0)==30){HTa(t);u=s;return}else if((d|0)==31)c=Ia()|0;else if((d|0)==32)c=Ia()|0;jTa(a)}HTa(t);Ua(c|0)}function Sk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=(e|0)==1;do if(!($1a(b,f[33256]|0)|0)){if($1a(b,f[33255]|0)|0){g=i?1:(e|0)==3?51:64;break}if($1a(b,f[33241]|0)|0){g=i?2:(e|0)==3?52:65;break}if(!($1a(b,f[33253]|0)|0))if(!($1a(b,f[33254]|0)|0))if(!($1a(b,f[33252]|0)|0))if(!($1a(b,f[33239]|0)|0))if(!($1a(b,f[33240]|0)|0))if(!($1a(b,f[33238]|0)|0)){if($1a(b,f[33245]|0)|0){g=i?15:(e|0)==3?57:70;break}if($1a(b,f[33244]|0)|0){g=i?16:(e|0)==3?58:71;break}if(kQa(a,c)|0)c=1;else c=kQa(a,d)|0;if($1a(b,f[33243]|0)|0)if(i){g=c?4:3;break}else{g=(e|0)==3?53:66;break}if($1a(b,f[33242]|0)|0){u=j;return (i&c?6:5)|0}if($1a(b,f[33248]|0)|0)if(i){g=c?24:23;break}else{g=(e|0)==3?62:75;break}if($1a(b,f[33246]|0)|0)if(i){g=c?22:21;break}else{g=(e|0)==3?61:74;break}if($1a(b,f[33247]|0)|0)if(i){g=c?20:19;break}else{g=(e|0)==3?60:73;break}if($1a(b,f[33249]|0)|0)if(i){g=c?18:17;break}else{g=(e|0)==3?59:72;break}else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,64693,h7a(64693)|0);x=0;ua(66,h|0,b|0);i=x;x=0;if(i&1){j=Ia()|0;HTa(h);Ua(j|0)}else{HTa(h);hb()}}}else g=11;else g=12;else g=10;else g=9;else g=8;else g=7}else g=i?0:(e|0)==3?50:63;while(0);u=j;return g|0}function Tk(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;c=t;d=f[a>>2]|0;if(!(b[d>>0]|0)){b[d>>0]=1;r=f[f[a+4>>2]>>2]|0;E1a(c,f[33042]|0);f[s>>2]=f[c>>2];NF(r,s,1)|0;r=f[a+8>>2]|0;q=v8a(132168)|0;l=r+4|0;m=f[l>>2]|0;o=(m|0)==0;a:do if(!o){j=m+-1|0;k=(j&m|0)==0;if(!k)if(q>>>0>>0)d=q;else d=(q>>>0)%(m>>>0)|0;else d=j&q;h=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!h)p=17;else{c=f[33042]|0;do{h=f[h>>2]|0;if(!h){p=17;break a}i=f[h+4>>2]|0;if((i|0)!=(q|0)){if(!k){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&j;if((i|0)!=(d|0)){p=17;break a}}}while(!(wXa(f[h+8>>2]|0,c)|0))}}else{d=0;p=17}while(0);if((p|0)==17){R6(s,r,q,132168);j=r+12|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[r+16>>2];do if(o|g*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(84,r|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}else i=m;while(0);c=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!c){c=r+8|0;h=f[s>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[r>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=s;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[r>>2]|0)+(c<<2)>>2]=h;c=s}}else{r=f[s>>2]|0;f[r>>2]=f[c>>2];f[c>>2]=r;c=s}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;c=f[33042]|0}aQ(f[a+12>>2]|0,c,0)}u=t;return}function Uk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;a:do switch(b-a>>2|0){case 1:case 0:{c=1;break}case 2:{e=b+-4|0;c=f[e>>2]|0;d=f[a>>2]|0;if(S2(+p[c+16>>3],+p[d+16>>3])|0){f[a>>2]=c;f[e>>2]=d;c=1}else c=1;break}case 3:{ps(a,a+4|0,b+-4|0)|0;c=1;break}case 4:{Ht(a,a+4|0,a+8|0,b+-4|0)|0;c=1;break}case 5:{er(a,a+4|0,a+8|0,a+12|0,b+-4|0)|0;c=1;break}default:{d=a+8|0;ps(a,a+4|0,d)|0;j=a+12|0;c=0;while(1){if((j|0)==(b|0)){c=1;break a}i=f[j>>2]|0;h=i+16|0;if(S2(+p[h>>3],+p[(f[d>>2]|0)+16>>3])|0){f[j>>2]=0;e=j;while(1){k=f[d>>2]|0;f[d>>2]=0;g=f[e>>2]|0;f[e>>2]=k;if(g|0){uSa(g);ubb(g)}if((d|0)==(a|0)){d=a;break}e=d+-4|0;if(S2(+p[h>>3],+p[(f[e>>2]|0)+16>>3])|0){k=d;d=e;e=k}else break}e=f[d>>2]|0;f[d>>2]=i;if(e|0){uSa(e);ubb(e)}c=c+1|0;if((c|0)==8)break}d=j;j=j+4|0}c=(j+4|0)==(b|0)}}while(0);return c|0}function Vk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;l=s+4|0;m=s;n=b+4|0;o=a+16|0;p=a+20|0;q=b+12|0;r=a+28|0;j=a+32|0;k=a+24|0;c=f[b>>2]|0;a:while(1){if((c|0)==(n|0)){b=3;break}d=f[c+16>>2]|0;b=c+20|0;b:do switch(f[c+28>>2]|0){case 0:break;case 1:{b=f[(f[b>>2]|0)+16>>2]|0;if(b|0){f[d+8>>2]=f[b+8>>2];break b}if(!(FVa(f[p>>2]|0,f[d+8>>2]|0)|0)){h=FSa(f[d+4>>2]|0,f[o>>2]|0)|0;f[l>>2]=d;i=e_(q,l)|0;f[f[i>>2]>>2]=h}break}default:{i=BUa(a,f[d+4>>2]|0)|0;h=d+8|0;g=f[h>>2]|0;f[h>>2]=i;U0a(l,f[o>>2]|0);h=c+24|0;d=f[b>>2]|0;while(1){if((d|0)==(h|0))break;b=f[d+16>>2]|0;if(!b){b=f[p>>2]|0;if(FVa(b,g)|0){b=n9(b,g)|0;b=Lya(l,i,NKa(f[l>>2]|0,g,b)|0)|0;f[m>>2]=b;e=f[r>>2]|0;if(e>>>0<(f[j>>2]|0)>>>0){f[e>>2]=b;f[r>>2]=(f[r>>2]|0)+4}else IL(k,m)}}else{b=b+12|0;e=f[b>>2]|0;f[m>>2]=e;e=nBa(f[l>>2]|0,i,e)|0;f[b>>2]=e;if(mfa(q,f[m>>2]|0)|0){t=e_(q,m)|0;if((f[t>>2]|0)!=(b|0)){b=15;break a}t=e_(q,m)|0;f[t>>2]=e+12}}b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}}}while(0);b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((b|0)==3){u=s;return}else if((b|0)==15)Ca(72323,72361,119,72385)}function Wk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){jN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(646,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)sIa(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function Xk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){jN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(647,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)sIa(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function Yk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+64|0;j=l+40|0;g=l+24|0;h=l;k=l+12|0;a:do if((c-a|0)>1?(i=d+4|0,e=f[i>>2]|0,(f[d>>2]|0)!=(e|0)):0){b:do switch(b[a>>0]|0){case 67:{switch(b[a+1>>0]|0){case 53:case 51:case 50:case 49:break;default:break a}ji(g,e+-24|0);NY(j,g);c=f[i>>2]|0;if(c>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,j|0);k=x;x=0;if(k&1){a=Ia()|0;JJa(j);HTa(g);break b}}else{yY(c,j);f[i>>2]=(f[i>>2]|0)+24}JJa(j);HTa(g);b[d+60>>0]=1;a=a+2|0;break a}case 68:{switch(b[a+1>>0]|0){case 53:case 50:case 49:case 48:break;default:break a}ji(k,e+-24|0);x=0;ja(101,k|0,0,123346)|0;g=x;x=0;do if(g&1)a=Ia()|0;else{f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];c=0;while(1){if((c|0)==3)break;f[k+(c<<2)>>2]=0;c=c+1|0}NY(j,h);c=f[i>>2]|0;if(c>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,j|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(j);HTa(h);break}}else{yY(c,j);f[i>>2]=(f[i>>2]|0)+24}JJa(j);HTa(h);HTa(k);b[d+60>>0]=1;a=a+2|0;break a}while(0);HTa(k);break}default:break a}while(0);Ua(a|0)}while(0);u=l;return a|0}function Zk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){dW(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(1306,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)ona(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function _k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+48|0;j=o;k=o+44|0;p=o+32|0;l=o+28|0;m=o+24|0;f[k>>2]=c;f[p>>2]=0;n=p+4|0;f[n>>2]=0;e=p+8|0;f[e>>2]=0;x=0;ua(104,p|0,k|0);i=x;x=0;do if(!(i&1)){while(1){if(!(Bbb(f[c+16>>2]|0)|0))break;c=c+12|0;x=0;d=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}if(!(rab(f[f[d>>2]>>2]|0)|0))break;x=0;c=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}x=0;c=ga(217,f[c>>2]|0)|0;i=x;x=0;if(i&1){g=12;break}f[k>>2]=c;d=f[n>>2]|0;if((d|0)==(f[e>>2]|0)){x=0;ua(104,p|0,k|0);i=x;x=0;if(i&1){g=12;break}}else{f[d>>2]=c;f[n>>2]=(f[n>>2]|0)+4}}if((g|0)==12){c=Ia()|0;g=14;break}M0a(a);d=f[n>>2]|0;i=f[d+-4>>2]|0;c=d;a:while(1){if((c|0)==(f[p>>2]|0)){g=29;break}h=d+-4|0;d=f[h>>2]|0;f[k>>2]=d;f[n>>2]=h;b:do if(D0a(a)|0){f[l>>2]=f[d+8>>2];f[j>>2]=f[l>>2];vNa(a,j)}else{g=d+12|0;e=d+16|0;c=0;while(1){if(c>>>0>=(Bbb(f[e>>2]|0)|0)>>>0)break b;if(!((c|0)==0&(i|0)!=(d|0))){x=0;h=ia(75,g|0,c|0)|0;q=x;x=0;if(q&1){g=27;break a}x=0;va(92,j|0,b|0,f[h>>2]|0);q=x;x=0;if(q&1){g=27;break a}f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];f[a+16>>2]=f[j+16>>2];if(D0a(a)|0)break}c=c+1|0}f[m>>2]=f[d+8>>2];f[j>>2]=f[m>>2];vNa(a,j)}while(0);d=f[n>>2]|0;c=d}if((g|0)==27){c=Ia()|0;break}else if((g|0)==29){uSa(p);u=o;return}}else{c=Ia()|0;g=14}while(0);uSa(p);Ua(c|0)}function $k(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){jN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(2831,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)sIa(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function al(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+16|0;c=o+4|0;p=o+8|0;e=o;f[c>>2]=b;a:do if(Iab(f[b+8>>2]|0)|0){xba(p,a,c);d=f[p>>2]|0;f[d+8>>2]=b;j=d;x=0;c=ga(289,a|0)|0;m=x;x=0;b:do if(!(m&1)?(f[d+12>>2]=c,f[e>>2]=f[b+8>>2],x=0,f[n>>2]=f[e>>2],va(129,a|0,n|0,c|0),m=x,x=0,!(m&1)):0){h=a+100|0;f[n>>2]=j;c=n+4|0;d=f[p+4>>2]|0;f[c>>2]=d;if(d|0){m=d+4|0;f[m>>2]=(f[m>>2]|0)+1}i=a+104|0;e=f[i>>2]|0;g=a+108|0;do if(e>>>0>=(f[g>>2]|0)>>>0){x=0;ua(1456,h|0,n|0);m=x;x=0;if(m&1){p=Ia()|0;voa(f[c>>2]|0);c=p;break b}else{c=f[c>>2]|0;break}}else{f[e>>2]=j;f[e+4>>2]=d;f[n>>2]=0;f[c>>2]=0;f[i>>2]=e+8;c=0}while(0);voa(c);voa(d);l=i;k=15;break a}else k=12;while(0);if((k|0)==12){c=Ia()|0;d=f[p+4>>2]|0}voa(d)}else{g=a+108|0;h=a+100|0;l=a+104|0;k=15}while(0);do if((k|0)==15){j=b+12|0;m=n+4|0;k=p+4|0;c=Bbb(f[b+16>>2]|0)|0;while(1){i=c+-1|0;if((c|0)<=0){k=17;break}S9(p,a,JDa(j,i)|0);c=f[p>>2]|0;f[n>>2]=c;d=f[k>>2]|0;f[m>>2]=d;f[p>>2]=0;f[k>>2]=0;e=f[l>>2]|0;if(e>>>0<(f[g>>2]|0)>>>0){f[e>>2]=c;f[e+4>>2]=d;f[n>>2]=0;f[m>>2]=0;f[l>>2]=e+8;c=0}else{x=0;ua(1456,h|0,n|0);b=x;x=0;if(b&1){k=23;break}c=f[m>>2]|0}voa(c);voa(0);c=i}if((k|0)==17){u=o;return}else if((k|0)==23){c=Ia()|0;voa(f[m>>2]|0);voa(0);break}}while(0);Ua(c|0)}function bl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+48|0;c=h+40|0;g=h+28|0;i=h+16|0;d=h+12|0;j=h;e=a+84|0;a:do if(!(f[e>>2]|0)){d=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;j=h7a(92451)|0;x=0;va(87,g|0,92451,j|0);j=x;x=0;if(!(j&1)){x=0;wa(138,d|0,g|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;HTa(g);if(!c)break}else a=Ia()|0;La(d|0)}else{do if(!(lRa(b)|0)){a=yR(jF(b)|0)|0;if(a>>>0>=(fQa(f[e>>2]|0)|0)>>>0){d=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=h7a(92501)|0;x=0;va(87,j|0,92501,i|0);i=x;x=0;if(!(i&1)){x=0;wa(138,d|0,j|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;HTa(j);if(!c)break a}else a=Ia()|0;La(d|0);break a}}else{a=jF(b)|0;j=f[e>>2]|0;E1a(c,a);if(K5(j+56|0,c)|0){b=f[e>>2]|0;E1a(d,a);f[c>>2]=f[d>>2];a=SI(b,c)|0;break}d=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;j=h7a(92486)|0;x=0;va(87,i|0,92486,j|0);j=x;x=0;if(!(j&1)){x=0;wa(138,d|0,i|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;HTa(i);if(!c)break a}else a=Ia()|0;La(d|0);break a}while(0);u=h;return a|0}while(0);Ua(a|0);return 0}function cl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+208|0;m=k+192|0;l=k+32|0;e=k+24|0;h=k+12|0;i=k;PQa(m,(b[a>>0]|0)!=0);x=0;wa(130,l|0,c|0,m|0,(b[a>>0]|0)!=0|0);g=x;x=0;if(g&1)c=Ia()|0;else{a_a(l,(b[a+2>>0]|0)!=0);g=a+16|0;c=b[g+11>>0]|0;if(c<<24>>24<0)c=f[a+20>>2]|0;else c=c&255;do if(c){x=0;ta(477,e|0);c=x;x=0;if(c&1){c=Ia()|0;break}e=f[e>>2]|0;x=0;va(124,e|0,g|0,16);j=x;x=0;if(!(j&1)?(x=0,ua(88,h|0,a+28|0),j=x,x=0,!(j&1)):0){x=0;va(125,l|0,e|0,h|0);j=x;x=0;if(j&1){c=Ia()|0;HTa(h);j=31;break}else{HTa(h);j=15;break}}else j=13}else{e=0;j=15}while(0);a:do if((j|0)==15){g=a+4|0;c=b[g+11>>0]|0;if(c<<24>>24<0)c=f[a+8>>2]|0;else c=c&255;do if(c|0){x=0;ua(88,i|0,g|0);j=x;x=0;if(j&1){j=13;break a}x=0;ua(1368,l|0,i|0);j=x;x=0;if(j&1){c=Ia()|0;HTa(i);j=31;break a}else{HTa(i);break}}while(0);x=0;ta(478,l|0);j=x;x=0;if(!(j&1)?(x=0,va(126,f[m>>2]|0,f[m+4>>2]|0,d|0),j=x,x=0,!(j&1)):0){c=e;if(e|0){x=0;g=ga(284,c+4|0)|0;j=x;x=0;if(j&1){j=13;break}if((g|0)==0?(j=e+(f[(f[e>>2]|0)+-12>>2]|0)|0,x=0,ua(100,j|0,f[j+16>>2]|4|0),j=x,x=0,j&1):0){j=13;break}oc[f[(f[e>>2]|0)+4>>2]&1023](c)}dZ(l);uSa(m);u=k;return}else j=13}while(0);if((j|0)==13){c=Ia()|0;j=31}if((j|0)==31)if(e)oc[f[(f[e>>2]|0)+4>>2]&1023](e);dZ(l)}uSa(m);Ua(c|0)}function dl(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=u;u=u+112|0;e=h+80|0;j=h+40|0;i=h+20|0;g=h;eza();tha(j);b[j+1>>0]=1;x=0;a=ia(65,j|0,a|0)|0;d=x;x=0;do if(d&1)k=4;else{if(b[135320]|0?(x=0,ia(62,134176,52216)|0,d=x,x=0,d&1):0){k=4;break}x=0;ta(443,i|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;d=ia(66,i|0,a|0)|0;a=x;x=0;a:do if(!(a&1)?(x=0,c=ga(212,232)|0,a=x,x=0,!(a&1)):0){x=0;ta(444,c|0);a=x;x=0;if(a&1){a=Ia()|0;ubb(c);break}f[32970]=c;a=pb(0)|0;do if(!(a&65535)){x=0;va(85,e|0,a>>>16|0,0);c=x;x=0;if(c&1){a=Ia()|0;break a}a=f[32970]|0;c=f[e>>2]|0;f[a+92>>2]=c;do if(b[j>>0]|0){x=0;va(85,e|0,65535,0);c=x;x=0;if(c&1){a=Ia()|0;break a}else{a=f[32970]|0;c=f[e>>2]|0;break}}else f[e>>2]=c;while(0);f[a+96>>2]=c;if(b[135320]|0?(x=0,ia(62,134176,52344)|0,c=x,x=0,c&1):0)break;x=0;a=ga(212,236)|0;c=x;x=0;if(!(c&1)?(c=f[32970]|0,f[g>>2]=0,f[g+4>>2]=0,f[g+8>>2]=0,f[g+12>>2]=0,f[g+16>>2]=0,cFa(g),f[e>>2]=f[g>>2],f[e+4>>2]=f[g+4>>2],f[e+8>>2]=f[g+8>>2],f[e+12>>2]=f[g+12>>2],f[e+16>>2]=f[g+16>>2],gt(a,c,j,e),f[32966]=a,x=0,ua(89,a|0,d|0),g=x,x=0,!(g&1)):0){zUa(i);fja(j);u=h;return}}else{x=0;ia(62,134176,52276)|0;h=x;x=0;if(!(h&1)){x=0;ta(440,1);x=0}}while(0);a=Ia()|0}else k=13;while(0);if((k|0)==13)a=Ia()|0;zUa(i)}}while(0);if((k|0)==4)a=Ia()|0;fja(j);Ua(a|0)}function el(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;l=u;u=u+112|0;g=l+88|0;d=l+64|0;i=l+40|0;j=l+16|0;k=l;Mu(d,b,f[c+16>>2]|0);if(!(D0a(d)|0)){Mu(i,b,f[c+20>>2]|0);if(!(D0a(i)|0)){Mu(j,b,f[c+24>>2]|0);if(D0a(j)|0){f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];f[a+16>>2]=f[j+16>>2];f[a+20>>2]=f[j+20>>2]}else{e=b+4|0;b=f[e>>2]|0;f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];f[g+12>>2]=f[d+12>>2];b=Bu(b,c,g)|0;d=c+8|0;JA(k,f[e>>2]|0,b,h[d>>0]|0,f[c+4>>2]|0);if(dN(k,i)|0){c=f[e>>2]|0;i=h[d>>0]|0;f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[g+12>>2]=f[j+12>>2];mw(c,b,i,g)}f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];rAa(a,g)}}else{f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];f[a+16>>2]=f[i+16>>2];f[a+20>>2]=f[i+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=l;return}function fl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+48|0;k=p;l=p+44|0;q=p+32|0;m=p+28|0;n=p+24|0;f[l>>2]=c;f[q>>2]=0;o=q+4|0;f[o>>2]=0;e=q+8|0;f[e>>2]=0;x=0;ua(104,q|0,l|0);j=x;x=0;do if(!(j&1)){while(1){if(!(Bbb(f[c+16>>2]|0)|0))break;x=0;d=ia(75,c+12|0,0)|0;j=x;x=0;if(j&1){g=12;break}if(!(rab(f[f[d>>2]>>2]|0)|0))break;x=0;c=ia(75,c+12|0,0)|0;j=x;x=0;if(j&1){g=12;break}x=0;c=ga(217,f[c>>2]|0)|0;j=x;x=0;if(j&1){g=12;break}f[l>>2]=c;d=f[o>>2]|0;if((d|0)==(f[e>>2]|0)){x=0;ua(104,q|0,l|0);j=x;x=0;if(j&1){g=12;break}}else{f[d>>2]=c;f[o>>2]=(f[o>>2]|0)+4}}if((g|0)==12){c=Ia()|0;g=14;break}M0a(a);d=f[o>>2]|0;j=f[d+-4>>2]|0;c=d;a:while(1){if((c|0)==(f[q>>2]|0)){g=29;break}i=d+-4|0;e=f[i>>2]|0;f[l>>2]=e;f[o>>2]=i;b:do if(D0a(a)|0){f[m>>2]=f[e+8>>2];f[k>>2]=f[m>>2];vNa(a,k)}else{g=e+12|0;d=e+16|0;h=(j|0)!=(e|0);c=0;while(1){if(c>>>0>=(Bbb(f[d>>2]|0)|0)>>>0)break b;if(!((c|0)==0&h)){x=0;i=ia(75,g|0,c|0)|0;r=x;x=0;if(r&1){g=27;break a}x=0;va(155,k|0,b|0,f[i>>2]|0);r=x;x=0;if(r&1){g=27;break a}f[a>>2]=f[k>>2];f[a+4>>2]=f[k+4>>2];f[a+8>>2]=f[k+8>>2];f[a+12>>2]=f[k+12>>2];f[a+16>>2]=f[k+16>>2];if(D0a(a)|0)break}c=c+1|0}f[n>>2]=f[e+8>>2];f[k>>2]=f[n>>2];vNa(a,k)}while(0);d=f[o>>2]|0;c=d}if((g|0)==27){c=Ia()|0;break}else if((g|0)==29){uSa(q);u=p;return}}else{c=Ia()|0;g=14}while(0);uSa(q);Ua(c|0)}function gl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;a:do if((c-a|0)>1){e=b[a>>0]|0;b:do switch(e<<24>>24){case 100:case 111:{if((b[a+1>>0]|0)==110){g=a+2|0;if(e<<24>>24!=111){i=eU(g,c,d)|0;a=(i|0)==(g|0)?a:i;break a}e=Hc(g,c,d)|0;if((e|0)==(g|0))break a;a=jg(e,c,d)|0;if((a|0)==(e|0)){a=e;break a}c=d+4|0;e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(i,e+-24|0);g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;d=e+-1|0;JJa(g+(d*24|0)|0);e=d}f[c>>2]=g+-24;d=b[i+11>>0]|0;c=d<<24>>24<0;x=0;ja(97,g+-48|0,(c?f[i>>2]|0:i)|0,(c?f[i+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(i);break b}else{HTa(i);break a}}else h=15;break}default:h=15}while(0);do if((h|0)==15){e=ww(a,c,d)|0;if((e|0)!=(a|0)){a=e;break a}e=Hc(a,c,d)|0;if((e|0)==(a|0))break a;a=jg(e,c,d)|0;if((a|0)==(e|0)){a=e;break a}c=d+4|0;e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(i,e+-24|0);g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;d=e+-1|0;JJa(g+(d*24|0)|0);e=d}f[c>>2]=g+-24;d=b[i+11>>0]|0;h=d<<24>>24<0;x=0;ja(97,g+-48|0,(h?f[i>>2]|0:i)|0,(h?f[i+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(i);break}else{HTa(i);break a}}while(0);Ua(a|0)}while(0);u=j;return a|0}function hl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;r=v8a(c)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){l=i+-1|0;k=(l&i|0)==0;if(!k)if(r>>>0>>0)e=r;else e=(r>>>0)%(i>>>0)|0;else e=l&r;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)o=16;else{j=f[c>>2]|0;do{d=f[d>>2]|0;if(!d){o=16;break a}c=f[d+4>>2]|0;if((c|0)!=(r|0)){if(!k){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&l;if((c|0)!=(e|0)){o=16;break a}}}while(!($1a(f[d+8>>2]|0,j)|0))}}else{e=0;o=16}while(0);if((o|0)==16){ZS(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(712,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&r;break}if(r>>>0>>0){i=d;e=r;break}i=d;e=(r>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[s>>2]|0;f[s>>2]=0;if(e|0){if(b[s+8>>0]|0)sMa(e+8|0);ubb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){r=a+8|0;d=f[s>>2]|0;f[d>>2]=f[r>>2];f[r>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=r;e=f[d>>2]|0;if(!e)e=s;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=s}}else{a=f[s>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=s;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=t;return d+12|0}function il(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+144|0;d=l+120|0;e=l+96|0;g=l+72|0;h=l+32|0;i=l;j=l+56|0;k=l+16|0;Mu(e,b,f[c+12>>2]|0);if(!(D0a(e)|0)){Mu(g,b,f[c+16>>2]|0);if(!(D0a(g)|0)){Mu(h,b,f[c+20>>2]|0);if(!(D0a(h)|0)){h=c+24|0;c=Dxa(f[h>>2]|0)|0;b=b+4|0;m=f[b>>2]|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];e=rM(m,d,c)|0;JA(i,f[b>>2]|0,e,c,f[h>>2]|0);if(m_a(i,g)|0){m$a(j,1);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];rAa(a,d)}else{m$a(k,0);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];rAa(a,d)}}else{f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2]}}else{f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}u=l;return}function jl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;r=u;u=u+32|0;t=r+16|0;s=r;d=f[c+28>>2]|0;a:do if(sba(a,d)|0){k=c+12|0;if((Bbb(f[k>>2]|0)|0)>>>0>=4294967292)Ca(107202,106510,502,107234);if(b[c+20>>0]|0)Ca(107245,106510,503,107234);SN(t,a,d);e=c+8|0;d=b[e>>0]|0;b[s>>0]=4;b[e>>0]=b[((d&255)>4?s:e)>>0]|0;e=c+16|0;l=Bbb(f[e>>2]|0)|0;x=0;ja(40,e|0,(l>>>0<4?l:4)|0,0)|0;l=x;x=0;b:do if(l&1)d=Ia()|0;else{f[c+32>>2]=1;c:do if(d<<24>>24==8){x=0;va(159,s|0,a|0,1);l=x;x=0;if(l&1)d=Ia()|0;else{l=a+44|0;d=f[l>>2]|0;x=0;e=ga(320,s|0)|0;v=x;x=0;if(((!(v&1)?(g=c+24|0,x=0,q=ja(45,d|0,e|0,f[g>>2]|0)|0,v=x,x=0,!(v&1)):0)?(h=f[l>>2]|0,x=0,i=ga(320,s|0)|0,v=x,x=0,!(v&1)):0)?(x=0,j=ja(46,f[h>>2]|0,i|0,1)|0,v=x,x=0,!(v&1)):0){f[g>>2]=j;g=f[l>>2]|0;d=(Bbb(f[k>>2]|0)|0)+4|0;x=0;e=ga(320,s|0)|0;v=x;x=0;do if(((!(v&1)?(x=0,m=ja(46,f[g>>2]|0,e|0,1)|0,v=x,x=0,!(v&1)):0)?(n=f[l>>2]|0,x=0,o=ga(320,t|0)|0,v=x,x=0,!(v&1)):0)?(x=0,p=ja(46,f[n>>2]|0,o|0,1)|0,v=x,x=0,!(v&1)):0){x=0;d=pa(7,f[g>>2]|0,4,d|0,1,m|0,p|0,1)|0;v=x;x=0;if(v&1)break;x=0;d=ka(30,f[l>>2]|0,q|0,c|0,d|0)|0;v=x;x=0;if(v&1)break;BVa(f[a+16>>2]|0,d)|0;HCa(s);break c}while(0);d=Ia()|0}else d=Ia()|0;HCa(s)}break b}while(0);HCa(t);break a}while(0);HCa(t);Ua(d|0)}while(0);u=r;return}function kl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){dW(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(645,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)SCa(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function ll(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;s=u;u=u+112|0;o=s+104|0;w=s+88|0;t=s+72|0;r=s+68|0;v=s+56|0;d=s+52|0;q=s+32|0;n=s+24|0;e=s+16|0;l=s+8|0;m=s+4|0;p=s;c=f[b+32>>2]|0;a:do if(sba(a,c)|0){SN(w,a,c);x=0;va(159,t|0,a|0,1);k=x;x=0;if(k&1)c=Ia()|0;else{f[r>>2]=b;f[v>>2]=0;i=v+4|0;f[i>>2]=0;j=v+8|0;f[j>>2]=0;f[d>>2]=0;f[q>>2]=a;f[q+4>>2]=d;f[q+8>>2]=r;f[q+12>>2]=t;f[q+16>>2]=w;k=b+8|0;I$a(n,k);GUa(e,k);h=n+4|0;g=f[e>>2]|0;e=f[e+4>>2]|0;while(1){if(!(lTa(f[n>>2]|0,f[h>>2]|0,g,e)|0)){d=5;break}x=0;c=ga(256,n|0)|0;d=x;x=0;if(d&1){d=13;break}f[m>>2]=f[c>>2];x=0;f[o>>2]=f[m>>2];c=ia(185,q|0,o|0)|0;d=x;x=0;if(d&1){d=14;break}f[l>>2]=c;d=f[i>>2]|0;if(d>>>0>=(f[j>>2]|0)>>>0){x=0;ua(68,v|0,l|0);d=x;x=0;if(d&1){d=14;break}}else{f[d>>2]=c;f[i>>2]=(f[i>>2]|0)+4}RYa(n)}do if((d|0)==5){x=0;ua(2492,k|0,v|0);n=x;x=0;if(n&1){c=Ia()|0;break}f[p>>2]=f[b+24>>2];x=0;f[o>>2]=f[p>>2];c=ia(185,q|0,o|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}else{f[b+24>>2]=c;BVa(f[a+16>>2]|0,f[r>>2]|0)|0;uSa(v);HCa(t);HCa(w);break a}}else if((d|0)==13){c=Ia()|0;d=15}else if((d|0)==14){c=Ia()|0;d=15}while(0);uSa(v);HCa(t)}HCa(w);Ua(c|0)}while(0);u=s;return}function ml(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+64|0;i=s+48|0;k=s+8|0;l=s;o=c+8|0;d=pg(a,f[o>>2]|0,0)|0;f[o>>2]=d;a:do if(d){e=E_a(d)|0;if(e|0)if(Iab(f[e+4>>2]|0)|0){bLa(e,0);Kia(a,e)|0;break}else Ca(76935,71068,286,76948);e=o$a(d)|0;b:do if(((e|0?(m=e+12|0,g=MCa(m)|0,g=f[g>>2]|0,h=f[g+4>>2]|0,o2a(h)|0):0)?(j=e+4|0,(f[j>>2]|0)==(h|0)):0)?(pg(a,g,0)|0)==0:0){d=f[e+8>>2]|0;do if(Iab(d)|0){f[l>>2]=d;f[i>>2]=f[l>>2];zGa(k,i);b[k+28>>0]=1;f[i>>2]=e;x=0;ua(258,k|0,i|0);l=x;x=0;if(l&1){s=Ia()|0;I_a(k);Ua(s|0)}if(f[k+32>>2]|0){l=(f[k+36>>2]|0)==0;I_a(k);if(l)break;else break b}else{I_a(k);break}}while(0);d=MCa(m)|0;f[d>>2]=0;MEa(m);f[j>>2]=0;d=Bbb(f[e+16>>2]|0)|0;if(d>>>0>1){Kia(a,e)|0;break a}if((d|0)==1){c=JDa(m,0)|0;Kia(a,f[c>>2]|0)|0;break a}else{pVa(c);break a}}while(0);e=S$a(f[o>>2]|0)|0;if((e|0?(p=e+16|0,n=f[p>>2]|0,q=n,n|0):0)?(r=e+4|0,o2a(f[r>>2]|0)|0):0){g=e+12|0;i=f[g>>2]|0;h=f[i+4>>2]|0;d=f[n+4>>2]|0;if((h|0)==5?o2a(d)|0:0){f[o>>2]=q;f[p>>2]=c;f[r>>2]=0;Kia(a,e)|0;break}if((d|0)==5?o2a(h)|0:0){f[o>>2]=i;f[g>>2]=c;f[r>>2]=0;Kia(a,e)|0}}}else pVa(c);while(0);u=s;return}function nl(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,x=0,y=0;t=u;u=u+16|0;r=t+4|0;n=t;m=a+64|0;if(!(f[m>>2]|0))c=-1;else{d=R_(a)|0;s=a+12|0;c=f[s>>2]|0;if(!c){c=r+1|0;f[a+8>>2]=r;f[s>>2]=c;q=a+16|0;f[q>>2]=c}else q=a+16|0;if(d){d=f[q>>2]|0;o=0}else{d=f[q>>2]|0;o=(d-(f[a+8>>2]|0)|0)/2|0;o=o>>>0<4?o:4}do if((c|0)==(d|0)){d=a+8|0;fia(f[d>>2]|0,c+(0-o)|0,o|0)|0;if(b[a+98>>0]|0){c=f[d>>2]|0;c=qN(c+o|0,(f[q>>2]|0)-o-c|0,f[m>>2]|0)|0;if(!c){c=-1;break}p=(f[d>>2]|0)+o|0;f[s>>2]=p;f[q>>2]=p+c;c=X6a(b[p>>0]|0)|0;break}k=a+40|0;j=f[k>>2]|0;l=a+36|0;c=f[l>>2]|0;e=j;g=c;if((j|0)==(c|0)){i=a+32|0;j=k;c=g}else{i=a+32|0;fia(f[i>>2]|0,c|0,e-g|0)|0;j=k;e=f[k>>2]|0;c=f[l>>2]|0}g=f[i>>2]|0;e=g+(e-c)|0;f[l>>2]=e;if((g|0)==(a+44|0))c=8;else c=f[a+52>>2]|0;v=g+c|0;f[k>>2]=v;g=a+60|0;c=(f[g>>2]|0)-o|0;v=v-e|0;h=a+72|0;y=h;x=f[y+4>>2]|0;w=a+80|0;f[w>>2]=f[y>>2];f[w+4>>2]=x;e=qN(e,v>>>0>>0?v:c,f[m>>2]|0)|0;if(!e)c=-1;else{c=f[a+68>>2]|0;if(!c){y=Ea(4)|0;uab(y);Pa(y|0,39536,426)}x=(f[l>>2]|0)+e|0;f[k>>2]=x;y=f[d>>2]|0;if((lc[f[(f[c>>2]|0)+16>>2]&15](c,h,f[i>>2]|0,x,l,y+o|0,y+(f[g>>2]|0)|0,n)|0)!=3){e=f[n>>2]|0;c=(f[d>>2]|0)+o|0;if((e|0)==(c|0))c=-1;else{f[s>>2]=c;f[q>>2]=e;p=24}}else{c=f[i>>2]|0;p=f[j>>2]|0;f[d>>2]=c;f[s>>2]=c;f[q>>2]=p;p=24}if((p|0)==24)c=X6a(b[c>>0]|0)|0}}else{c=X6a(b[c>>0]|0)|0;d=a+8|0}while(0);if((f[d>>2]|0)==(r|0)){f[d>>2]=0;f[s>>2]=0;f[q>>2]=0}}u=t;return c|0}function ol(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+16|0;h=l+8|0;i=l+4|0;j=l;lXa(a);f[a+24>>2]=c;m=a+28|0;f[m>>2]=0;k=a+32|0;f[k>>2]=0;f[a+36>>2]=0;n=a+40|0;yUa(n);b[a+52>>0]=0;b[a+53>>0]=0;if((m|0)!=(d|0)?(x=0,va(138,m|0,f[d>>2]|0,f[d+4>>2]|0),e=x,x=0,e&1):0)d=Ia()|0;else g=3;do if((g|0)==3){e=f[c+104>>2]|0;d=f[c+100>>2]|0;while(1){if((d|0)==(e|0))break;x=0;ua(1656,a|0,d|0);o=x;x=0;if(o&1){g=9;break}d=d+16|0}if((g|0)==9){d=Ia()|0;break}e=f[c+80>>2]|0;d=f[c+76>>2]|0;while(1){if((d|0)==(e|0))break;x=0;ua(1656,a|0,d|0);o=x;x=0;if(o&1){g=14;break}d=d+16|0}if((g|0)==14){d=Ia()|0;break}a:while(1){o=f[k>>2]|0;d=o;if((o|0)==(f[m>>2]|0)){g=27;break}e=d+-8|0;f[k>>2]=e;do if(!(LP(n,e)|0)){x=0;wa(136,h|0,n|0,e|0,e|0);o=x;x=0;if(o&1){g=21;break a}d=f[d+-4>>2]|0;if(!(f[e>>2]|0)){f[i>>2]=d;f[h>>2]=f[i>>2];d=Sma(c,h)|0;if(!d)break;x=0;ua(1656,a|0,d+36|0);o=x;x=0;if(o&1){g=22;break a}else break}else{f[j>>2]=d;f[h>>2]=f[j>>2];d=bna(c,h)|0;if(!d)break;x=0;ua(1656,a|0,d+8|0);o=x;x=0;if(o&1){g=26;break a}else break}}while(0)}if((g|0)==21){d=Ia()|0;break}else if((g|0)==22){d=Ia()|0;break}else if((g|0)==26){d=Ia()|0;break}else if((g|0)==27){u=l;return}}while(0);AIa(n);uSa(m);I_a(a);Ua(d|0)}function pl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;k=n+12|0;i=n+8|0;l=n;j=a+12|0;do if(b[j>>0]|0){g=yCa(134176,110959)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,o=x,x=0,!(o&1)):0){JCa(k);Wq(g,e)|0;du(g)|0;break}o=Ia()|0;JCa(k);Ua(o|0)}while(0);g=dk(a)|0;f[c+28>>2]=g;g=nq(a)|0;do if(b[j>>0]|0){d=zm(yCa(134176,97341)|0,g)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,o=x,x=0,!(o&1)):0){JCa(k);Wq(d,h)|0;du(d)|0;break}o=Ia()|0;JCa(k);Ua(o|0)}while(0);e=c+8|0;d=0;while(1){if((d|0)==(g|0))break;yg(l,a,nq(a)|0);f[i>>2]=f[l>>2];f[k>>2]=f[i>>2];j8(e,k);d=d+1|0}yg(l,a,nq(a)|0);d=c+24|0;f[d>>2]=f[l>>2];do if(b[j>>0]|0){e=yCa(134176,97351)|0;d=wfa(e,f[d>>2]|0)|0;ZXa(k,d+(f[(f[d>>2]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,m=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,o=x,x=0,!(o&1)):0){JCa(k);Wq(d,m)|0;du(d)|0;break}o=Ia()|0;JCa(k);Ua(o|0)}while(0);if(f[l+4>>2]|0){o=dk(a)|0;f[c+32>>2]=o}i7a(c);u=n;return}function ql(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){ZS(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(715,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)I_a(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function rl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=c;q=f[c>>2]|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while((f[c+8>>2]|0)!=(q|0))}else{d=0;m=16}while(0);if((m|0)==16){TS(r,a,q,l);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(804,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(!(p&1)){c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q;break}i=c;d=(q>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0){if(b[r+8>>0]|0)dNa(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function sl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=f[b>>2]|0;n=b+4|0;e=f[n>>2]|0;g=e;h=d;while(1){if((d|0)==(e|0))break;if($1a(f[d>>2]|0,f[d+4>>2]|0)|0){o=5;break}else d=d+16|0}if((o|0)==5)Ca(76341,76199,626,76372);d=g-h|0;m=d>>4;a:do if(!d){if(!(lVa(a)|0))Ca(76378,76199,631,76372)}else{eMa(a);if((d|0)==16){d=f[b>>2]|0;if((d|0)==(c|0))break;Ay(c,f[d>>2]|0,f[d+4>>2]|0);break}k=a+116|0;l=fQa(f[k>>2]|0)|0;d=0;j=0;while(1){if((j|0)==(l|0))break a;b:do if(n_a(n9(f[k>>2]|0,j)|0)|0){h=f[b>>2]|0;i=f[n>>2]|0;e=h;while(1){if((e|0)==(i|0))break;g=f[(f[e>>2]|0)+(j<<2)>>2]|0;if(sab(f[g>>2]|0)|0){o=17;break}else e=e+16|0}if((o|0)==17){o=0;f[(f[c>>2]|0)+(j<<2)>>2]=g;break}e=0;while(1){if((h|0)==(i|0))break b;g=f[(f[h>>2]|0)+(j<<2)>>2]|0;if(e){if((g|0)!=(e|0))break}else{f[(f[c>>2]|0)+(j<<2)>>2]=g;e=g}h=h+16|0}c:do if(!d){d=DXa()|0;h=PK(a,d)|0;g=0;while(1){if((g|0)==(m|0))break c;e=f[(f[b>>2]|0)+(g<<4)+12>>2]|0;if(!(sab(f[e>>2]|0)|0)){e=Ura(h,g,e)|0;PK(a,e)|0}i6(h,e);g=g+1|0}}while(0);g=PK(a,pHa(d,j)|0)|0;h=f[n>>2]|0;e=f[b>>2]|0;while(1){if((e|0)==(h|0))break;i6(g,rga(a,f[(f[e>>2]|0)+(j<<2)>>2]|0,0)|0);e=e+16|0}f[(f[c>>2]|0)+(j<<2)>>2]=g}while(0);j=j+1|0}}while(0);return}function tl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+272|0;m=o;n=o+256|0;do if(!(b[c>>0]|0)){c=yb(118783)|0;if(c|0?b[c>>0]|0:0)break;c=yb(30704+(a*12|0)|0)|0;if(c|0?b[c>>0]|0:0)break;c=yb(118790)|0;if(c|0?b[c>>0]|0:0)break;c=118795}while(0);d=0;a:while(1){switch(b[c+d>>0]|0){case 47:case 0:break a;default:{}}d=d+1|0;if(d>>>0>=15){d=15;break}}e=b[c>>0]|0;if(e<<24>>24!=46?(b[c+d>>0]|0)==0:0)if(e<<24>>24==67)l=15;else{k=c;l=16}else{c=118795;l=15}if((l|0)==15)if(!(b[c+1>>0]|0))l=18;else{k=c;l=16}b:do if((l|0)==16)if((E8(k,118795)|0)!=0?(E8(k,118803)|0)!=0:0){c=f[33453]|0;if(c|0)do{if(!(E8(k,c+8|0)|0))break b;c=f[c+24>>2]|0}while((c|0)!=0);Sa(133816);c=f[33453]|0;c:do if(c|0){while(1){if(!(E8(k,c+8|0)|0))break;c=f[c+24>>2]|0;if(!c)break c}cb(133816);break b}while(0);d:do if(((f[33434]|0)==0?(g=yb(118809)|0,(g|0)!=0):0)?(b[g>>0]|0)!=0:0){i=254-d|0;j=d+1|0;e=g;while(1){h=PE(e,58)|0;c=b[h>>0]|0;g=h-e+((c<<24>>24!=0)<<31>>31)|0;if(g>>>0>>0){Iu(m|0,e|0,g|0)|0;e=m+g|0;b[e>>0]=47;Iu(e+1|0,k|0,d|0)|0;b[m+(j+g)>>0]=0;e=Ta(m|0,n|0)|0;if(e|0)break;c=b[h>>0]|0}e=h+(c<<24>>24!=0&1)|0;if(!(b[e>>0]|0)){l=41;break d}}c=Kc(28)|0;if(!c){lGa(e,f[n>>2]|0);l=41;break}else{f[c>>2]=e;f[c+4>>2]=f[n>>2];n=c+8|0;Iu(n|0,k|0,d|0)|0;b[n+d>>0]=0;f[c+24>>2]=f[33453];f[33453]=c;break}}else l=41;while(0);if((l|0)==41){c=Kc(28)|0;if(c){f[c>>2]=23936;f[c+4>>2]=20;n=c+8|0;Iu(n|0,k|0,d|0)|0;b[n+d>>0]=0;f[c+24>>2]=f[33453];f[33453]=c}}cb(133816);c=(a|0)==0&(c|0)==0?46152:c}else{c=k;l=18}while(0);do if((l|0)==18){if((a|0)==0?(b[c+1>>0]|0)==46:0){c=46152;break}c=0}while(0);u=o;return c|0}function ul(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;m=l+16|0;h=l+36|0;g=l;k=l+32|0;do if(!(b[(f[a>>2]|0)+60>>0]|0)){d=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;m=h7a(92368)|0;x=0;va(87,h|0,92368,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,d|0,h|0,f[c+28>>2]|0,f[c+32>>2]|0);m=x;x=0;if(m&1)g=1;else{x=0;va(98,d|0,32200,457);x=0;g=0}e=Ia()|0;HTa(h);if(!g)break}else e=Ia()|0;La(d|0)}else{if(!e){e=ZVa(f[a+4>>2]|0)|0;m$a(g,0);f[m>>2]=f[g>>2];f[m+4>>2]=f[g+4>>2];f[m+8>>2]=f[g+8>>2];f[m+12>>2]=f[g+12>>2];Zpa(e,m)|0}uQa(m,e);h=m+4|0;i=m+8|0;j=m+12|0;while(1){x=0;e=ga(294,c|0)|0;g=x;x=0;if(g&1){g=19;break}if(d>>>0>=e>>>0){g=23;break}x=0;e=ia(69,c|0,d|0)|0;g=x;x=0;if(g&1){g=22;break}x=0;e=ia(167,a|0,e|0)|0;g=x;x=0;if(g&1){g=22;break}f[k>>2]=e;g=f[i>>2]|0;if(g>>>0>=(f[j>>2]|0)>>>0){x=0;ua(68,h|0,k|0);g=x;x=0;if(g&1){g=22;break}}else{f[g>>2]=e;f[i>>2]=(f[i>>2]|0)+4}d=d+1|0}do if((g|0)==19){e=Ia()|0;g=21}else if((g|0)==22)e=Ia()|0;else if((g|0)==23){e=f[a>>2]|0;g=e+80|0;d=f[g>>2]|0;if((d|0)==(f[e+84>>2]|0)){x=0;ua(1875,e+76|0,m|0);c=x;x=0;if(c&1)g=20;else g=27}else{x=0;ua(1874,d|0,m|0);c=x;x=0;if(c&1)g=20;else{f[g>>2]=(f[g>>2]|0)+16;g=27}}if((g|0)==20){e=Ia()|0;g=21;break}else if((g|0)==27){I_a(m);u=l;return}}while(0);I_a(m)}while(0);Ua(e|0)}function vl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=HH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){ZS(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(2770,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)I_a(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function wl(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+32|0;o=q+16|0;r=q+4|0;m=q;n=a+12|0;do if(b[n>>0]|0){e=yCa(134176,96349)|0;ZXa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[o>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,l=x,x=0,!(l&1)):0){JCa(o);Wq(e,d)|0;du(e)|0;break}r=Ia()|0;JCa(o);Ua(r|0)}while(0);i=a+188|0;gR(r,i);j=a+201|0;k=b[j>>0]|0;b[j>>0]=1;d=a+192|0;f[d>>2]=f[i>>2];l=a+200|0;e=a+196|0;while(1){b[l>>0]=1;x=0;h=ia(175,a|0,m|0)|0;g=x;x=0;if(g&1){e=16;break}c=f[m>>2]|0;g=c;if(!c){e=9;break}c=f[d>>2]|0;if((c|0)==(f[e>>2]|0)){x=0;ua(640,i|0,m|0);h=x;x=0;if(h&1){e=16;break}}else{f[c>>2]=g;f[d>>2]=(f[d>>2]|0)+4}}a:do if((e|0)==9){do if(b[n>>0]|0){x=0;c=ia(62,134176,96372)|0;n=x;x=0;if(!(n&1)){ZXa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[o>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,p=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,n=x,x=0,!(n&1)):0){JCa(o);x=0;ia(79,c|0,p|0)|0;p=x;x=0;if(p&1)break;x=0;ga(227,c|0)|0;p=x;x=0;if(p&1)break;else{e=19;break}}c=Ia()|0;JCa(o);break a}}else e=19;while(0);do if((e|0)==19){f[a+204>>2]=h;b[l>>0]=0;b[j>>0]=k;if((i|0)!=(r|0)?(x=0,va(148,i|0,f[r>>2]|0,f[r+4>>2]|0),p=x,x=0,p&1):0)break;uSa(r);u=q;return}while(0);c=Ia()|0}else if((e|0)==16)c=Ia()|0;while(0);uSa(r);Ua(c|0)}function xl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;t=u;u=u+96|0;v=t+36|0;s=t;m=a+44|0;n=a+16|0;o=a+60|0;p=a+64|0;q=a+48|0;r=a+52|0;k=a+72|0;l=a+76|0;j=0;while(1){b[m>>0]=0;lJa(n,c);if((f[o>>2]|0)!=(f[p>>2]|0)){w=4;break}i=0;while(1){d=f[q>>2]|0;if(i>>>0>=(f[r>>2]|0)-d>>2>>>0)break;d=f[d+(i<<2)>>2]|0;e=X_a(f[d>>2]|0)|0;if(e|0){g=f[e+8>>2]|0;if(!g)pVa(e);else f[d>>2]=g;b[m>>0]=1}i=i+1|0}f[r>>2]=d;e=f[l>>2]|0;d=f[k>>2]|0;while(1){if((d|0)==(e|0))break;i=(nj(a,f[d>>2]|0)|0)&1;b[m>>0]=h[m>>0]|i;d=d+4|0}f[l>>2]=f[k>>2];if(!(b[m>>0]|0))break;else j=1}if((w|0)==4)Ca(91074,91090,445,115764);do if(j){gX(v);d=a+36|0;r=f[d>>2]|0;Bbb(r)|0;x=0;va(94,v+16|0,c|0,r|0);r=x;x=0;if(r&1){d=Ia()|0;pDa(v);break}else{pDa(v);w=21;break}}else{d=a+36|0;w=21}while(0);if((w|0)==21){SIa(v);$Wa(v,Bbb(f[d>>2]|0)|0);x=0;ua(1685,v|0,c|0);w=x;x=0;if(!(w&1)?(x=0,ua(1686,v|0,c|0),w=x,x=0,!(w&1)):0){w=a+40|0;uEa(s,_Ya(f[w>>2]|0)|0);$Wa(s,Bbb(f[d>>2]|0)|0);w=f[w>>2]|0;Bbb(w)|0;b[s+24>>0]=(f[w+28>>2]|0)>0&1;x=0;ua(1687,s|0,c|0);w=x;x=0;do if(!(w&1)){if(b[s+32>>0]|0?(x=0,ta(487,f[c+36>>2]|0),w=x,x=0,w&1):0)break;I_a(s);uha(v);u=t;return}while(0);d=Ia()|0;I_a(s)}else d=Ia()|0;uha(v)}Ua(d|0)}function yl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=E_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=eX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=iRa(f[f[e+20>>2]>>2]|0)|0;if(Iab(f[g+4>>2]|0)|0)Ca(77085,76797,293,77104);else{p=f[g+12>>2]|0;g=iYa(g)|0;f[g+8>>2]=p;oXa(g);QI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;fA(n,_Ya(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(1154,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Mxa(a,h)|0:0){d=f[h+8>>2]|0;e=a+44|0;if(mfa(e,d)|0){x=0;wa(71,77114,76797,310,77104);x=0;d=Ia()|0;break a}p=_Ya(f[g>>2]|0)|0;x=0;va(113,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=d;YOa(k+4|0,l);x=0;wa(100,j|0,e|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;bTa(k);QYa(l);break}else{bTa(k);QYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);p=a+136|0;f[p>>2]=(f[p>>2]|0)+-4;V7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;V7(n);Ua(d|0)}function zl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;r=v8a(c)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){l=i+-1|0;k=(l&i|0)==0;if(!k)if(r>>>0>>0)e=r;else e=(r>>>0)%(i>>>0)|0;else e=l&r;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)o=16;else{j=f[c>>2]|0;do{d=f[d>>2]|0;if(!d){o=16;break a}c=f[d+4>>2]|0;if((c|0)!=(r|0)){if(!k){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&l;if((c|0)!=(e|0)){o=16;break a}}}while(!($1a(f[d+8>>2]|0,j)|0))}}else{e=0;o=16}while(0);if((o|0)==16){ZS(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(2591,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&r;break}if(r>>>0>>0){i=d;e=r;break}i=d;e=(r>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[s>>2]|0;f[s>>2]=0;if(e|0){if(b[s+8>>0]|0)I_a(e+8|0);ubb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){r=a+8|0;d=f[s>>2]|0;f[d>>2]=f[r>>2];f[r>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=r;e=f[d>>2]|0;if(!e)e=s;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=s}}else{a=f[s>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=s;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=t;return d+12|0}function Al(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;k=m+24|0;j=m+20|0;l=m+12|0;h=m+16|0;i=m;do if(b[a+12>>0]|0){e=yCa(134176,110945)|0;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[k>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,g=x,x=0,!(g&1)):0){JCa(k);Wq(e,d)|0;du(e)|0;break}m=Ia()|0;JCa(k);Ua(m|0)}while(0);d=nq(a)|0;f[j>>2]=d;g=a+88|0;e=a+92|0;if(d>>>0<(f[e>>2]|0)-(f[g>>2]|0)>>2>>>0){c=eQa(f[a+4>>2]|0)|0;f[l>>2]=c;i=f[(f[g>>2]|0)+(d<<2)>>2]|0;d=f[a>>2]|0;f[h>>2]=f[i+16>>2];f[k>>2]=f[h>>2];h=KI(d,k)|0;d=hY(a+112|0,j)|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))IL(d,l);else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}f[c+24>>2]=f[i>>2];SS(a,c,h);X$a(c)}else{c=nSa(f[a+4>>2]|0)|0;f[k>>2]=c;g=(f[j>>2]|0)-((f[e>>2]|0)-(f[g>>2]|0)>>2)|0;e=a+60|0;d=f[e>>2]|0;do if(g>>>0>=(f[a+64>>2]|0)-d>>2>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,97292,h7a(97292)|0);x=0;ua(1869,a|0,i|0);j=x;x=0;if(j&1){m=Ia()|0;HTa(i);Ua(m|0)}else{HTa(i);d=f[e>>2]|0;break}}while(0);SS(a,c,f[d+(g<<2)>>2]|0);f[l>>2]=g;d=hY(a+100|0,l)|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))IL(d,k);else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}X$a(c)}u=m;return c|0}function Bl(a,b){a=+a;b=+b;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;p[s>>3]=a;h=f[s>>2]|0;j=f[s+4>>2]|0;p[s>>3]=b;l=f[s>>2]|0;m=f[s+4>>2]|0;d=EMa(h|0,j|0,52)|0;d=d&2047;k=EMa(l|0,m|0,52)|0;k=k&2047;n=j&-2147483648;g=hMa(l|0,m|0,1)|0;i=I;a:do if(!((g|0)==0&(i|0)==0)?(e=qRa(b)|0,c=I&2147483647,!((d|0)==2047|(c>>>0>2146435072|(c|0)==2146435072&e>>>0>0))):0){c=hMa(h|0,j|0,1)|0;e=I;if(!(e>>>0>i>>>0|(e|0)==(i|0)&c>>>0>g>>>0))return +((c|0)==(g|0)&(e|0)==(i|0)?a*0.0:a);if(!d){c=hMa(h|0,j|0,12)|0;e=I;if((e|0)>-1|(e|0)==-1&c>>>0>4294967295){d=0;do{d=d+-1|0;c=hMa(c|0,e|0,1)|0;e=I}while((e|0)>-1|(e|0)==-1&c>>>0>4294967295)}else d=0;h=hMa(h|0,j|0,1-d|0)|0;g=I}else g=j&1048575|1048576;if(!k){e=hMa(l|0,m|0,12)|0;i=I;if((i|0)>-1|(i|0)==-1&e>>>0>4294967295){c=0;do{c=c+-1|0;e=hMa(e|0,i|0,1)|0;i=I}while((i|0)>-1|(i|0)==-1&e>>>0>4294967295)}else c=0;l=hMa(l|0,m|0,1-c|0)|0;k=c;j=I}else j=m&1048575|1048576;e=NRa(h|0,g|0,l|0,j|0)|0;c=I;i=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;b:do if((d|0)>(k|0)){while(1){if(i){if((e|0)==0&(c|0)==0)break}else{e=h;c=g}h=hMa(e|0,c|0,1)|0;g=I;d=d+-1|0;e=NRa(h|0,g|0,l|0,j|0)|0;c=I;i=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;if((d|0)<=(k|0))break b}b=a*0.0;break a}while(0);if(i){if((e|0)==0&(c|0)==0){b=a*0.0;break}}else{c=g;e=h}if(c>>>0<1048576|(c|0)==1048576&e>>>0<0)do{e=hMa(e|0,c|0,1)|0;c=I;d=d+-1|0}while(c>>>0<1048576|(c|0)==1048576&e>>>0<0);if((d|0)>0){m=wOa(e|0,c|0,0,-1048576)|0;c=I;d=hMa(d|0,0,52)|0;c=c|I;d=m|d}else{d=EMa(e|0,c|0,1-d|0)|0;c=I}f[s>>2]=d;f[s+4>>2]=c|n;b=+p[s>>3]}else o=3;while(0);if((o|0)==3){b=a*b;b=b/b}return +b}function Cl(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+24|0;i=n;j=n+12|0;m=QX(a,c)|0;if(!((m|0)==(a|0)|(m|0)==(c|0))?(b[m>>0]|0)==69:0){k=d+11|0;g=b[k>>0]|0;l=d+4|0;a:do if((g<<24>>24<0?f[l>>2]|0:g&255)>>>0<=3){c=e+4|0;g=f[c>>2]|0;if(g>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;N5(g);f[c>>2]=(f[c>>2]|0)+24;g=c;break}else{SA(e);g=c;break}}else{ZH(j,123276,d);x=0;ia(215,j|0,123274)|0;g=x;x=0;do if(g&1)a=Ia()|0;else{f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}NY(h,i);g=e+4|0;c=f[g>>2]|0;if(c>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(3196,e|0,h|0);e=x;x=0;if(e&1){a=Ia()|0;JJa(h);HTa(i);break}}else{yY(c,h);f[g>>2]=(f[g>>2]|0)+24}JJa(h);HTa(i);HTa(j);break a}while(0);HTa(j);Ua(a|0)}while(0);if((b[a>>0]|0)==110){AJ((f[g>>2]|0)+-24|0,45);a=a+1|0}Lq((f[g>>2]|0)+-24|0,a,m);a=b[k>>0]|0;c=a<<24>>24<0;a=c?f[l>>2]|0:a&255;if(a>>>0<4)bI((f[g>>2]|0)+-24|0,c?f[d>>2]|0:d,a)|0;a=m+1|0}u=n;return a|0}function Dl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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;e=a+4|0;a:do if(c){if(c>>>0>1073741823){d=Ea(8)|0;x=0;ua(98,d|0,121963);a=x;x=0;if(a&1){a=Ia()|0;La(d|0);Ua(a|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}u=n8(c<<2)|0;d=f[a>>2]|0;f[a>>2]=u;if(d|0)ubb(d);f[e>>2]=c;d=0;while(1){if((d|0)==(c|0))break;f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}g=a+8|0;d=f[g>>2]|0;if(d|0){e=f[d+4>>2]|0;t=c+-1|0;u=(t&c|0)==0;if(!u){if(e>>>0>=c>>>0)e=(e>>>0)%(c>>>0)|0}else e=e&t;f[(f[a>>2]|0)+(e<<2)>>2]=g;while(1){s=d;b:while(1){while(1){d=f[s>>2]|0;if(!d)break a;g=f[d+4>>2]|0;if(!u){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0}else g=g&t;if((g|0)==(e|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;n=d+8|0;o=n+11|0;p=d+12|0;r=d;c:while(1){h=f[r>>2]|0;q=h;if(!h){h=0;v=38;break}j=h+8|0;i=b[o>>0]|0;l=i<<24>>24<0;i=i&255;m=l?f[p>>2]|0:i;w=b[j+11>>0]|0;k=w<<24>>24<0;if((m|0)!=((k?f[h+12>>2]|0:w&255)|0)){v=38;break}j=k?f[j>>2]|0:j;d:do if(l){if(AQa(f[n>>2]|0,j,m)|0){h=q;break c}}else{k=n;while(1){if(!i)break d;if((b[k>>0]|0)!=(b[j>>0]|0)){h=q;break c}j=j+1|0;k=k+1|0;i=i+-1|0}}while(0);r=h}if((v|0)==38)v=0;f[s>>2]=h;f[r>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=d}s=d}f[h>>2]=s;e=g}}}else{d=f[a>>2]|0;f[a>>2]=0;if(d|0)ubb(d);f[e>>2]=0}while(0);return}function El(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;j=p+20|0;c=p+16|0;h=p+12|0;l=p+8|0;m=p+4|0;o=p;n=a+64|0;g=f[n>>2]|0;d=f[g+36>>2]|0;a:do if((f[g+40>>2]|0)==(d|0)){e=f[g+16>>2]|0;c=f[g+12>>2]|0;while(1){if((c|0)==(e|0))break a;d=f[c>>2]|0;if(!(f[d+12>>2]|0))break;else c=c+4|0}f[h>>2]=f[d>>2];f[j>>2]=f[h>>2];V1(a,j)|0;i=7}else{f[c>>2]=f[f[d>>2]>>2];f[j>>2]=f[c>>2];V1(a,j)|0;i=7}while(0);do if((i|0)==7){do if(b[a+72>>0]|0){c=yCa(134176,87404)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(j);Wq(c,k)|0;du(c)|0;break}p=Ia()|0;JCa(j);Ua(p|0)}while(0);g=A$(a,0)|0;G$(a,87463);h=CMa(a)|0;i=a+68|0;d=f[i>>2]|0;j=a+24|0;f4a(l,f[j>>2]|0);Yr(d,f[l>>2]|0)|0;d=f[n>>2]|0;e=f[d+16>>2]|0;c=0;d=f[d+12>>2]|0;while(1){if((d|0)==(e|0))break;if(!(f[(f[d>>2]|0)+12>>2]|0)){l=f[i>>2]|0;f4a(m,c);Yr(l,f[m>>2]|0)|0;G$(a,f[f[d>>2]>>2]|0);c=c+1|0}d=d+4|0}d=f[n>>2]|0;e=f[d+40>>2]|0;d=f[d+36>>2]|0;while(1){if((d|0)==(e|0))break;n=f[i>>2]|0;f4a(o,c);Yr(n,f[o>>2]|0)|0;G$(a,f[f[d>>2]>>2]|0);c=c+1|0;d=d+4|0}if((c|0)==(f[j>>2]|0)){vWa(a,h);VA(a,g);break}else Ca(87418,87234,464,87452)}while(0);u=p;return}function Fl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;k=l;a:do switch(b-a>>2|0){case 1:case 0:{d=1;break}case 2:{d=b+-4|0;if(iD(c,d,a)|0){k=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=k;d=1}else d=1;break}case 3:{Cw(a,a+4|0,b+-4|0,c)|0;d=1;break}case 4:{Zz(a,a+4|0,a+8|0,b+-4|0,c)|0;d=1;break}case 5:{Dv(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;d=1;break}default:{e=a+8|0;Cw(a,a+4|0,e,c)|0;i=a+12|0;d=0;b:while(1){if((i|0)==(b|0)){d=1;break a}if(iD(c,i,e)|0){g=f[i>>2]|0;f[i>>2]=0;f[k>>2]=g;g=i;while(1){m=f[e>>2]|0;f[e>>2]=0;h=f[g>>2]|0;f[g>>2]=m;if(h|0){LX(h);ubb(h)}if((e|0)==(a|0)){e=a;break}g=e+-4|0;x=0;h=ja(71,c|0,k|0,g|0)|0;m=x;x=0;if(m&1)break b;if(h){m=e;e=g;g=m}else break}m=f[k>>2]|0;f[k>>2]=0;g=f[e>>2]|0;f[e>>2]=m;if(g|0){LX(g);ubb(g)}d=d+1|0;e=f[k>>2]|0;f[k>>2]=0;if(e|0){LX(e);ubb(e)}if((d|0)==8){j=25;break}}e=i;i=i+4|0}if((j|0)==25){d=(i+4|0)==(b|0);break a}d=Ia()|0;e=f[k>>2]|0;f[k>>2]=0;if(e|0){LX(e);ubb(e)}Ua(d|0)}}while(0);u=l;return d|0}function Gl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(479,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function Hl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+16|0;w=v+4|0;s=v;j=f[b>>2]|0;t=j;if(Iab(j)|0){r=a+72|0;q=v8a(b)|0;o=a+76|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;l=(k&i|0)==0;if(!l)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!c)m=17;else while(1){c=f[c>>2]|0;if(!c){m=17;break a}h=f[c+4>>2]|0;if((h|0)!=(q|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){m=17;break a}}if($1a(f[c+8>>2]|0,j)|0){c=0;break}}}else{d=0;m=17}while(0);if((m|0)==17){R6(w,r,q,b);j=a+84|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+88>>2];do if(p|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(680,r|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[w>>2]|0;f[w>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+80|0;h=f[w>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[r>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=w;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[r>>2]|0)+(c<<2)>>2]=h;c=w}}else{r=f[w>>2]|0;f[r>>2]=f[c>>2];f[c>>2]=r;c=w}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;c=1}f[s>>2]=t;f[w>>2]=f[s>>2];W2(a,c,w,85388)}u=v;return}function Il(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){vQ(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(255,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function Jl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=E_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=eX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=iRa(f[f[e+20>>2]>>2]|0)|0;if(Iab(f[g+4>>2]|0)|0)Ca(77085,76797,293,77104);else{p=f[g+12>>2]|0;g=iYa(g)|0;f[g+8>>2]=p;oXa(g);QI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;fA(n,_Ya(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(1249,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Bga(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(mfa(d,e)|0){x=0;wa(71,77114,76797,310,77104);x=0;d=Ia()|0;break a}p=_Ya(f[g>>2]|0)|0;x=0;va(114,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;YOa(k+4|0,l);x=0;wa(101,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;bTa(k);QYa(l);break}else{bTa(k);QYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);V7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;V7(n);Ua(d|0)}function Kl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=E_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=eX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=iRa(f[f[e+20>>2]>>2]|0)|0;if(Iab(f[g+4>>2]|0)|0)Ca(77085,76797,293,77104);else{p=f[g+12>>2]|0;g=iYa(g)|0;f[g+8>>2]=p;oXa(g);QI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;fA(n,_Ya(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(1029,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Mxa(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(mfa(d,e)|0){x=0;wa(71,77114,76797,310,77104);x=0;d=Ia()|0;break a}p=_Ya(f[g>>2]|0)|0;x=0;va(112,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;YOa(k+4|0,l);x=0;wa(99,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;bTa(k);QYa(l);break}else{bTa(k);QYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);V7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;V7(n);Ua(d|0)}function Ll(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=E_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=eX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=iRa(f[f[e+20>>2]>>2]|0)|0;if(Iab(f[g+4>>2]|0)|0)Ca(77085,76797,293,77104);else{p=f[g+12>>2]|0;g=iYa(g)|0;f[g+8>>2]=p;oXa(g);QI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;fA(n,_Ya(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(934,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Bga(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(mfa(d,e)|0){x=0;wa(71,77114,76797,310,77104);x=0;d=Ia()|0;break a}p=_Ya(f[g>>2]|0)|0;x=0;va(111,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;YOa(k+4|0,l);x=0;wa(98,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;bTa(k);QYa(l);break}else{bTa(k);QYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);V7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;V7(n);Ua(d|0)}function Ml(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=E_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=eX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=iRa(f[f[e+20>>2]>>2]|0)|0;if(Iab(f[g+4>>2]|0)|0)Ca(77085,76797,293,77104);else{p=f[g+12>>2]|0;g=iYa(g)|0;f[g+8>>2]=p;oXa(g);QI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;fA(n,_Ya(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(811,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Mxa(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(mfa(d,e)|0){x=0;wa(71,77114,76797,310,77104);x=0;d=Ia()|0;break a}p=_Ya(f[g>>2]|0)|0;x=0;va(110,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;YOa(k+4|0,l);x=0;wa(97,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;bTa(k);QYa(l);break}else{bTa(k);QYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);V7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;V7(n);Ua(d|0)}function Nl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+80|0;l=p+48|0;m=p+68|0;n=p+64|0;e=p+32|0;o=p+16|0;g=p;i=b+8|0;d=f[i>>2]|0;k=f[b+4>>2]|0;f[m>>2]=k;c=(k|0)==2;U0a(n,a);a=f[n>>2]|0;j=NKa(a,0,k)|0;a=Fpa(a,d,j,NKa(a,1,k)|0)|0;j=c?21:20;if(c){SSa(e,0,-2147483648);SSa(o,0,0)}else{m$a(e,-2147483648);m$a(o,0)}if((d|0)==((c?28:3)|0)){b=c?40:15;if(c)SSa(g,-1,-1);else m$a(g,-1);d=NKa(f[n>>2]|0,0,k)|0;f[l>>2]=f[e>>2];f[l+4>>2]=f[e+4>>2];f[l+8>>2]=f[e+8>>2];f[l+12>>2]=f[e+12>>2];e=a0(n,l)|0;e=Fpa(f[n>>2]|0,b,d,e)|0;d=NKa(f[n>>2]|0,1,k)|0;f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];f[l+8>>2]=f[g+8>>2];f[l+12>>2]=f[g+12>>2];h=a0(n,l)|0;h=Fpa(f[n>>2]|0,b,d,h)|0;h=Fpa(f[n>>2]|0,7,e,h)|0;f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];a=Cqa(n,h,a0(n,l)|0,a)|0}h=n8(88)|0;aX(h);e=PN(f[i>>2]|0)|0;f[h>>2]=e;e=h+8|0;g=h+12|0;c=f[g>>2]|0;d=h+16|0;b=f[d>>2]|0;if((c|0)==(b|0)){IL(e,m);c=f[g>>2]|0;b=f[d>>2]|0}else{f[c>>2]=k;c=c+4|0;f[g>>2]=c}if((c|0)==(b|0))IL(e,m);else{f[c>>2]=k;f[g>>2]=c+4}f[h+4>>2]=k;m=NKa(f[n>>2]|0,1,k)|0;m=mBa(f[n>>2]|0,j,m)|0;f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];o=Cqa(n,m,a0(n,l)|0,a)|0;f[h+36>>2]=o;u=p;return h|0}function Ol(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1412,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function Pl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+32|0;y=w+8|0;t=w+4|0;s=w;v=n8(32)|0;TPa(v);jaa(f[a>>2]|0,v);FHa(y);i=Bbb(f[e+16>>2]|0)|0;p=v+20|0;q=L6a(e)|0;a:while(1){r=i;if((q|0)==(r|0)){j=3;break}o=f[i+8>>2]|0;f[t>>2]=o;n=i+12|0;ira(y);x=0;ua(1459,y|0,t|0);m=x;x=0;if(m&1){j=8;break}i=Bbb(f[i+28>>2]|0)|0;l=L6a(n)|0;while(1){m=i;if((l|0)==(m|0))break;k=f[i+8>>2]|0;sZ(c,k);i=Bbb(f[k+16>>2]|0)|0;k=L6a(k)|0;while(1){j=i;if((k|0)==(j|0))break;z=f[i+8>>2]|0;f[s>>2]=z;i=f[j+4>>2]|0;j=z;if(!(yQa(n,j)|0)){x=0;ua(1459,g|0,s|0);z=x;x=0;if(z&1){j=16;break a}x=0;wa(131,j|0,1,v|0,n|0);z=x;x=0;if(z&1){j=16;break a}}}i=f[m+4>>2]|0}x=0;i=ja(69,a|0,n|0,y|0)|0;z=x;x=0;if(z&1){j=8;break}x=0;j=ia(144,p|0,o+100|0)|0;z=x;x=0;if(z&1){j=8;break}f[j>>2]=i;if(h)b[o+112>>0]=1;i=f[r+4>>2]|0}do if((j|0)==3){i=Bbb(f[d+16>>2]|0)|0;j=L6a(d)|0;while(1){k=i;if((j|0)==(k|0)){j=23;break}z=f[i+8>>2]|0;f[t>>2]=z;if(!(yQa(e,z)|0)?(x=0,ua(1459,g|0,t|0),z=x,x=0,z&1):0){j=27;break}i=f[k+4>>2]|0}if((j|0)==23){TDa(y);u=w;return v|0}else if((j|0)==27){i=Ia()|0;break}}else if((j|0)==8){i=Ia()|0;j=21}else if((j|0)==16){i=Ia()|0;j=21}while(0);TDa(y);Ua(i|0);return 0}function Ql(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=v8a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(wXa(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){yV(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(101,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function Rl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){TT(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2041,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+16|0}function Sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){TT(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2042,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+16|0}function Tl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;e=w+4|0;p=w;f[p>>2]=c;v=a+88|0;f[e>>2]=c;t=HH(e,4)|0;r=a+92|0;l=f[r>>2]|0;s=(l|0)==0;a:do if(!s){m=l+-1|0;o=(m&l|0)==0;if(!o)if(t>>>0>>0)h=t;else h=(t>>>0)%(l>>>0)|0;else h=m&t;g=f[(f[v>>2]|0)+(h<<2)>>2]|0;if(!g)q=16;else do{g=f[g>>2]|0;if(!g){q=16;break a}i=f[g+4>>2]|0;if((i|0)!=(t|0)){if(!o){if(i>>>0>=l>>>0)i=(i>>>0)%(l>>>0)|0}else i=i&m;if((i|0)!=(h|0)){q=16;break a}}}while((f[g+8>>2]|0)!=(c|0))}else{h=0;q=16}while(0);if((q|0)==16){TL(e,v,t,p,d);c=a+100|0;j=+(((f[c>>2]|0)+1|0)>>>0);k=+n[a+104>>2];do if(s|k*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;q=~~+W(+(j/k))>>>0;x=0;ua(2490,v|0,(s>>>0>>0?q:s)|0);s=x;x=0;if(!(s&1)){g=f[r>>2]|0;h=g+-1|0;if(!(h&g)){l=g;h=h&t;break}if(t>>>0>>0){l=g;h=t;break}l=g;h=(t>>>0)%(g>>>0)|0;break}g=Ia()|0;h=f[e>>2]|0;f[e>>2]=0;if(h|0){if(b[e+8>>0]|0)AWa(h+8|0);ubb(h)}Ua(g|0)}while(0);g=f[(f[v>>2]|0)+(h<<2)>>2]|0;if(!g){g=a+96|0;i=f[e>>2]|0;f[i>>2]=f[g>>2];f[g>>2]=i;f[(f[v>>2]|0)+(h<<2)>>2]=g;g=f[i>>2]|0;if(g){g=f[g+4>>2]|0;h=l+-1|0;if(h&l){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&h;f[(f[v>>2]|0)+(g<<2)>>2]=i}}else{v=f[e>>2]|0;f[v>>2]=f[g>>2];f[g>>2]=v}f[c>>2]=(f[c>>2]|0)+1;f[e>>2]=0}u=w;return}function Ul(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+16|0;l=o+8|0;h=o;m=a+33|0;do if(b[m>>0]|0){g=yCa(134176,87660)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(n);Wq(g,e)|0;du(g)|0;break}o=Ia()|0;JCa(n);Ua(o|0)}while(0);e=a+28|0;Ev(f[e>>2]|0,2)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,m8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))IL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}j=c+12|0;I$a(l,j);GUa(h,j);j=c;k=l+4|0;i=f[h>>2]|0;g=f[h+4>>2]|0;d=0;while(1){if(!(lTa(f[l>>2]|0,f[k>>2]|0,i,g)|0)){d=11;break}h=LOa(l)|0;h=f[h>>2]|0;if(b[m>>0]|0){zm(yCa(zm(yCa(134176,87675)|0,j)|0,111105)|0,d)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[n>>2]|0,134880)|0;p=x;x=0;if(p&1){d=15;break}x=0;e=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0;p=x;x=0;if(p&1){d=15;break}JCa(n);Wq(134176,e)|0;du(134176)|0;d=d+1|0}jGa(a,h);RYa(l)}if((d|0)==11){HS(a,c);u=o;return}else if((d|0)==15){p=Ia()|0;JCa(n);Ua(p|0)}}function Vl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;GV(a,c,d,e);qTa(a,b);x=0;ta(480,a|0);e=x;x=0;do if(!(e&1)){c=f[b+40>>2]|0;d=f[c+4>>2]|0;c=f[c>>2]|0;a:while(1){if((c|0)==(d|0)){c=4;break}b=f[c>>2]|0;b:do if(b|0)switch(f[b>>2]|0){case 6:case 3:case 1:case 0:{x=0;ua(1371,a|0,f[b+4>>2]|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 2:{x=0;b=ga(217,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1372,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 4:{x=0;b=ga(260,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1373,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 5:{x=0;b=ga(260,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1374,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 7:{x=0;b=ga(261,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1375,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}default:{c=18;break a}}while(0);c=c+4|0}if((c|0)==4){x=0;ta(481,f[a+28>>2]|0);e=x;x=0;if(e&1){c=5;break}return}else if((c|0)==9){b=Ia()|0;break}else if((c|0)==18){x=0;sa(5);x=0;b=Ia()|0;break}}else c=5;while(0);if((c|0)==5)b=Ia()|0;xfa(a);Ua(b|0)}function Wl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=v8a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!($1a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){IT(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2590,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function Xl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=c;q=f[c>>2]|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while((f[c+8>>2]|0)!=(q|0))}else{d=0;m=16}while(0);if((m|0)==16){ZS(r,a,q,l);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(2461,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(!(p&1)){c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q;break}i=c;d=(q>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0){if(b[r+8>>0]|0)I_a(d+8|0);ubb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function Yl(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=u;u=u+80|0;l=q+64|0;n=q+48|0;o=q+32|0;p=q+16|0;m=q;switch(b|0){case 42:{i=17;j=19;k=24;break}case 44:{i=17;j=19;k=22;break}case 46:{i=21;j=23;k=20;break}case 48:{i=21;j=23;k=18;break}default:hb()}b=a+44|0;s=f[b>>2]|0;r=LPa(e)|0;r=NKa(f[s>>2]|0,r,1)|0;t=f[b>>2]|0;a=LPa(h)|0;a=NKa(f[t>>2]|0,a,1)|0;a=Fpa(f[s>>2]|0,i,r,a)|0;r=f[b>>2]|0;i=LPa(e)|0;i=NKa(f[r>>2]|0,i,1)|0;e=f[b>>2]|0;h=LPa(h)|0;h=NKa(f[e>>2]|0,h,1)|0;h=Fpa(f[r>>2]|0,j,i,h)|0;j=f[b>>2]|0;d=LPa(d)|0;d=NKa(f[j>>2]|0,d,1)|0;i=f[b>>2]|0;e=LPa(g)|0;e=NKa(f[i>>2]|0,e,1)|0;e=Fpa(f[j>>2]|0,k,d,e)|0;d=f[b>>2]|0;m$a(n,0);f[l>>2]=f[n>>2];f[l+4>>2]=f[n+4>>2];f[l+8>>2]=f[n+8>>2];f[l+12>>2]=f[n+12>>2];g=a0(d,l)|0;n=f[b>>2]|0;m$a(o,1);f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];n=Cqa(d,e,g,a0(n,l)|0)|0;o=f[b>>2]|0;m$a(p,0);f[l>>2]=f[p>>2];f[l+4>>2]=f[p+4>>2];f[l+8>>2]=f[p+8>>2];f[l+12>>2]=f[p+12>>2];p=Cqa(o,h,n,a0(o,l)|0)|0;o=f[b>>2]|0;m$a(m,1);f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[l+12>>2]=f[m+12>>2];p=Cqa(o,a,a0(o,l)|0,p)|0;p=F$(f[b>>2]|0,c,p)|0;u=q;return p|0}function Zl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(714,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function _l(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+80|0;j=l+48|0;k=l+64|0;e=l+32|0;g=l+16|0;h=l;d=b+28|0;b=f[d>>2]|0;c=o$a(b)|0;if(c){b=MCa(c+12|0)|0;b=f[b>>2]|0}c=k_a(b)|0;do if(!c){b=Y_a(b)|0;if(b|0){d=b+16|0;c=f[d>>2]|0;if(c8a(f[c>>2]|0)|0){i=(SQa(c)|0)+24|0;i=f[i>>2]|0;f[k>>2]=i;b=f[a+44>>2]|0;if((eV(b+16|0,i)|0)==(b+20|0))break;else{k=YX(b+16|0,k)|0;m$a(g,f[k>>2]|0);f[j>>2]=f[g>>2];f[j+4>>2]=f[g+4>>2];f[j+8>>2]=f[g+8>>2];f[j+12>>2]=f[g+12>>2];k=a0(b+8|0,j)|0;f[d>>2]=k;break}}b=b+12|0;c=k_a(f[b>>2]|0)|0;if(c|0?(g=f[c+24>>2]|0,f[k>>2]=g,i=f[a+44>>2]|0,(eV(i+16|0,g)|0)!=(i+20|0)):0){k=YX(i+16|0,k)|0;m$a(h,f[k>>2]|0);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];k=a0(i+8|0,j)|0;f[b>>2]=k}}}else{i=f[c+24>>2]|0;f[k>>2]=i;b=f[a+44>>2]|0;if((eV(b+16|0,i)|0)!=(b+20|0)){k=YX(b+16|0,k)|0;m$a(e,f[k>>2]|0);f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];k=a0(b+8|0,j)|0;f[d>>2]=k}}while(0);u=l;return}function $l(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(713,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function am(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+32|0;n=m+16|0;l=m+28|0;j=m+12|0;o=m;k=gTa(f[a+4>>2]|0)|0;f[k+4>>2]=d;i=k+12|0;b[i>>0]=e;do if(D0(g,93143,3)|0)if(D0(g,93147,3)|0)if(D0(g,93151,2)|0)if(D0(g,117183,3)|0)if(D0(g,93154,3)|0)if(!(D0(g,93158,4)|0)){d=5;p=13}else{g=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;o=h7a(93163)|0;x=0;va(87,n|0,93163,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,g|0,n|0);o=x;x=0;if(o&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(n);if(!e)break}else d=Ia()|0;La(g|0)}else{d=4;p=13}else{d=1;p=13}else{d=3;p=13}else{d=2;p=13}else{d=0;p=13}while(0);if((p|0)==13){f[k+8>>2]=d;Kab(l);cLa(j,h[i>>0]|0,0);d=rh(c,k+16|0,l,f[j>>2]|0)|0;n=Bbb(f[l>>2]|0)|0;if((n|0)==(h[i>>0]|0|0)){p=UQa(a,Or(c,d)|0)|0;f[k+20>>2]=p;p=UQa(a,Or(c,d+1|0)|0)|0;f[k+24>>2]=p;IMa(k);u=m;return k|0}g=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;n=h7a(93187)|0;x=0;va(87,o|0,93187,n|0);n=x;x=0;if(!(n&1)){x=0;ua(261,g|0,o|0);n=x;x=0;if(n&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(o);if(e)p=19}else{d=Ia()|0;p=19}if((p|0)==19)La(g|0)}Ua(d|0);return 0}function bm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k;do if(b[a+33>>0]|0){i=yCa(134176,110752)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}l=Ia()|0;JCa(g);Ua(l|0)}while(0);l=c+16|0;jGa(a,f[l>>2]|0);do if(((f[(f[l>>2]|0)+4>>2]|0)!=5?(l=c+20|0,jGa(a,f[l>>2]|0),(f[(f[l>>2]|0)+4>>2]|0)!=5):0)?(l=c+24|0,jGa(a,f[l>>2]|0),(f[(f[l>>2]|0)+4>>2]|0)!=5):0){e=c+4|0;g=a+28|0;d=f[g>>2]|0;if((f[e>>2]|0)==5){dTa(d);break}Ev(d,-2)|0;a:do switch(f[e>>2]|0){case 1:{d=c+8|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,74)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,75)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,72)|0;j=d;break a}default:hb()}break}case 2:{d=c+8|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,76)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,77)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,78)|0;j=d;break a}case 8:{Ev(f[g>>2]|0,73)|0;j=d;break a}default:hb()}break}default:hb()}while(0);l=h[j>>0]|0;CX(a,l,l,Bbb(f[c+12>>2]|0)|0)}while(0);u=k;return}function cm(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;n=m;d=a+184|0;c=f[a+132>>2]|0;Ps(d,X(c,c)|0);d=f[d>>2]|0;c=f[a+188>>2]|0;c=(d+(c>>>5<<2)-d<<3)+(c&31)|0;if(c|0){f[n>>2]=d;f[n+4>>2]=0;VS(n,c)}j=f[a+60>>2]|0;k=a+136|0;l=n+4|0;i=f[a+56>>2]|0;a:while(1){if((i|0)==(j|0)){d=5;break}c=f[i>>2]|0;f[n>>2]=c;if(Uz(k,n)|0){dYa(n,c+12|0);x=0;ua(3138,a|0,n|0);h=x;x=0;if(h&1){d=11;break}c=f[i>>2]|0;h=c+24|0;c=(f[c+28>>2]|0)-(f[h>>2]|0)>>4;while(1){g=c+-1|0;if((c|0)<=0)break;d=f[h>>2]|0;e=f[d+(g<<4)+4>>2]|0;b:do if(!(Gab(f[d+(g<<4)>>2]|0)|0)){x=0;c=ia(106,n|0,e|0)|0;e=x;x=0;if(e&1){d=16;break a}if(c)b[d+(g<<4)+12>>0]=1}else{x=0;ua(523,n|0,e|0);d=x;x=0;if(d&1){d=16;break a}d=f[l>>2]|0;c=f[n>>2]|0;while(1){if((c|0)==(d|0))break b;Rga(a,f[c>>2]|0,e);c=c+4|0}}while(0);c=g}uSa(n)}i=i+4|0}if((d|0)==5){dYa(n,f[a+52>>2]|0);d=uZa(Bbb(f[a+32>>2]|0)|0)|0;c=0;while(1){if(c>>>0>=d>>>0){d=25;break}x=0;ua(523,n|0,c|0);l=x;x=0;if(l&1){d=29;break}c=c+1|0}do if((d|0)==25){x=0;ua(3138,a|0,n|0);a=x;x=0;if(a&1){c=Ia()|0;break}else{uSa(n);u=m;return}}else if((d|0)==29)c=Ia()|0;while(0);uSa(n)}else if((d|0)==11){c=Ia()|0;d=23}else if((d|0)==16){c=Ia()|0;d=23}if((d|0)==23)uSa(n);Ua(c|0)}function dm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(526,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function em(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(711,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function fm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2282,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function gm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(638,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function hm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1408,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function im(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=v8a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(wXa(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1877,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function jm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=v8a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(wXa(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(3182,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function km(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=v8a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!($1a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){EU(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2711,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function lm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=HH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2101,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function mm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=v8a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!($1a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1568,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function nm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=yba(b)|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while(!(dN(c+8|0,b)|0))}else{d=0;m=16}while(0);if((m|0)==16){RN(r,a,q,l);b=a+12|0;g=+(((f[b>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(678,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[b>>2]=(f[b>>2]|0)+1;f[d>>2]=0}u=s;return c+24|0}function om(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+80|0;i=k+68|0;e=k+64|0;l=k+8|0;j=k;yCa(134008,100459)|0;b=f[c+40>>2]|0;a=f[c+36>>2]|0;while(1){if((a|0)==(b|0))break;h=yCa(134008,100922)|0;yCa(wfa(h,f[f[a>>2]>>2]|0)|0,100926)|0;a=a+4|0}b=f[c+16>>2]|0;a=f[c+12>>2]|0;while(1){if((a|0)==(b|0))break;if(!(f[(f[a>>2]|0)+12>>2]|0)){h=yCa(134008,100922)|0;yCa(wfa(h,f[f[a>>2]>>2]|0)|0,100966)|0}a=a+4|0}b=f[c+28>>2]|0;a=f[c+24>>2]|0;while(1){if((a|0)==(b|0))break;d=f[a>>2]|0;if(!(f[d+8>>2]|0)){f[e>>2]=f[d+4>>2];f[i>>2]=f[e>>2];h=ZI(c,i)|0;g=yCa(134008,100922)|0;yCa(wfa(g,f[h>>2]|0)|0,101010)|0}a=a+4|0}PD(l,c);g=f[c+80>>2]|0;e=f[c+76>>2]|0;a:while(1){if((e|0)==(g|0)){b=16;break}h=f[e+8>>2]|0;d=f[e+4>>2]|0;while(1){if((d|0)==(h|0))break;f[j>>2]=f[d>>2];x=0;f[i>>2]=f[j>>2];a=ia(56,c|0,i|0)|0;b=x;x=0;if(b&1){b=25;break a}x=0;b=ia(62,134008,100922)|0;m=x;x=0;if(m&1){b=25;break a}x=0;a=ia(76,b|0,f[a>>2]|0)|0;m=x;x=0;if(m&1){b=25;break a}x=0;ia(62,a|0,101052)|0;m=x;x=0;if(m&1){b=25;break a}d=d+4|0}e=e+16|0}do if((b|0)==16){x=0;ia(62,134008,101049)|0;m=x;x=0;if(m&1){a=Ia()|0;break}else{Xya(l);u=k;return}}else if((b|0)==25)a=Ia()|0;while(0);Xya(l);Ua(a|0)}function pm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;c=s+4|0;m=s;f[m>>2]=b;r=v8a(b)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){l=i+-1|0;k=(l&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=l&r;h=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!h)o=16;else{j=f[b>>2]|0;do{h=f[h>>2]|0;if(!h){o=16;break a}b=f[h+4>>2]|0;if((b|0)!=(r|0)){if(!k){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&l;if((b|0)!=(d|0)){o=16;break a}}}while(!($1a(f[h+8>>2]|0,j)|0))}}else{d=0;o=16}while(0);if((o|0)==16){KS(c,a,r,m);j=a+12|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(q|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(1366,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){b=Ia()|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)ubb(d);Ua(b|0)}b=f[p>>2]|0;d=b+-1|0;if(!(d&b)){i=b;d=d&r;break}if(r>>>0>>0){i=b;d=r}else{i=b;d=(r>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!b){b=a+8|0;h=f[c>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[(f[a>>2]|0)+(d<<2)>>2]=b;b=f[h>>2]|0;if(b){b=f[b+4>>2]|0;d=i+-1|0;if(d&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&d;f[(f[a>>2]|0)+(b<<2)>>2]=h}}else{a=f[c>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}u=s;return}function qm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=v8a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!($1a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){dW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1304,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function rm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=yba(b)|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while(!(dN(c+8|0,b)|0))}else{d=0;m=16}while(0);if((m|0)==16){RN(r,a,q,l);b=a+12|0;g=+(((f[b>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(1409,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)ubb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[b>>2]=(f[b>>2]|0)+1;f[d>>2]=0}u=s;return c+24|0}function sm(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;j=p+12|0;m=p+8|0;n=p;x=0;ua(99,n|0,a|0);l=x;x=0;a:do if(l&1){e=Ja(0)|0;g=a;h=a;o=20}else{b:do if(b[n>>0]|0){ZXa(j,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;k=ia(73,f[j>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){e=Ja(0)|0;JCa(j)}else{JCa(j);g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[g+24>>2]|0;h=g+76|0;e=f[h>>2]|0;do if($1a(-1,e)|0){ZXa(j,g);x=0;e=ia(73,f[j>>2]|0,134880)|0;q=x;x=0;if(!(q&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,32)|0,q=x,x=0,!(q&1)):0){JCa(j);e=i<<24>>24;f[h>>2]=e;o=10;break}e=Ja(0)|0;JCa(j)}else o=10;while(0);do if((o|0)==10){q=f[(f[k>>2]|0)+28>>2]|0;f[m>>2]=l;x=0;f[j>>2]=f[m>>2];e=oa(q|0,k|0,j|0,g|0,e&255|0,c|0,d|0)|0;q=x;x=0;if(q&1){e=Ja(0)|0;break}if(e|0)break b;q=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,q|0,f[q+16>>2]|5|0);q=x;x=0;if(!(q&1))break b;e=Ja(0)|0;break c}while(0)}while(0);eD(n);g=a;h=a;o=20;break a}while(0);eD(n)}while(0);do if((o|0)==20){Fa(e|0)|0;x=0;ta(450,h+(f[(f[g>>2]|0)+-12>>2]|0)|0);q=x;x=0;if(!(q&1)){Ga();break}e=Ia()|0;x=0;sa(6);q=x;x=0;if(q&1){q=Ja(0)|0;r2a(q)}else Ua(e|0)}while(0);u=p;return a|0}function tm(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;j=p+12|0;m=p+8|0;n=p;x=0;ua(99,n|0,a|0);l=x;x=0;a:do if(l&1){e=Ja(0)|0;g=a;h=a;o=20}else{b:do if(b[n>>0]|0){ZXa(j,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;k=ia(73,f[j>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){e=Ja(0)|0;JCa(j)}else{JCa(j);g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[g+24>>2]|0;h=g+76|0;e=f[h>>2]|0;do if($1a(-1,e)|0){ZXa(j,g);x=0;e=ia(73,f[j>>2]|0,134880)|0;q=x;x=0;if(!(q&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,32)|0,q=x,x=0,!(q&1)):0){JCa(j);e=i<<24>>24;f[h>>2]=e;o=10;break}e=Ja(0)|0;JCa(j)}else o=10;while(0);do if((o|0)==10){q=f[(f[k>>2]|0)+20>>2]|0;f[m>>2]=l;x=0;f[j>>2]=f[m>>2];e=oa(q|0,k|0,j|0,g|0,e&255|0,c|0,d|0)|0;q=x;x=0;if(q&1){e=Ja(0)|0;break}if(e|0)break b;q=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,q|0,f[q+16>>2]|5|0);q=x;x=0;if(!(q&1))break b;e=Ja(0)|0;break c}while(0)}while(0);eD(n);g=a;h=a;o=20;break a}while(0);eD(n)}while(0);do if((o|0)==20){Fa(e|0)|0;x=0;ta(450,h+(f[(f[g>>2]|0)+-12>>2]|0)|0);q=x;x=0;if(!(q&1)){Ga();break}e=Ia()|0;x=0;sa(6);q=x;x=0;if(q&1){q=Ja(0)|0;r2a(q)}else Ua(e|0)}while(0);u=p;return a|0}function um(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)Ca(110557,115839,78,110562);do switch(f[c>>2]|0){case 1:{fl(a,b,c);break}case 2:{hy(a,b,c);break}case 3:{rsa(a);break}case 4:{mr(a,b,c);break}case 5:{qt(a,b,c);break}case 6:{rsa(a);break}case 7:{rsa(a);break}case 8:{rsa(a);break}case 9:{cC(a,f[b+8>>2]|0,c);break}case 10:{JP(a,b,c);break}case 11:{vS(a,b,c);break}case 12:{rsa(a);break}case 13:{rsa(a);break}case 14:{rsa(a);break}case 24:{rsa(a);break}case 25:{rsa(a);break}case 26:{rsa(a);break}case 27:{rsa(a);break}case 15:{R8(a,c);break}case 16:{Ed(a,b,c);break}case 17:{ed(a,b,c);break}case 18:{Zs(a,b,c);break}case 19:{fV(a,b,f[c+8>>2]|0);break}case 20:{QT(a,b,c);break}case 21:{rsa(a);break}case 22:{KXa(a);break}case 23:{jPa(b);break}default:hb()}while(0);return}function vm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){ZXa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;JCa(i)}else{JCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if($1a(-1,d)|0){ZXa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){JCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;JCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+24>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c&65535|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);eD(m);e=a;g=a;n=20;break a}while(0);eD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;r2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function wm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;d=g$a(b)|0;f[g>>2]=d;h=d;a:do if(!d){g=Y_a(b)|0;if(g|0)switch(f[g+8>>2]|0){case 0:{a=a+8|0;Z0(f[(f[a>>2]|0)+16>>2]|0,f[g+12>>2]|0,c);Z0(f[(f[a>>2]|0)+16>>2]|0,f[g+16>>2]|0,c);break a}case 1:{d=g+12|0;b=f[d>>2]|0;e=g$a(b)|0;do if(e)if(!(ORa(e+8|0)|0)){b=a+8|0;break}else{b=f[d>>2]|0;i=13;break}else i=13;while(0);if((i|0)==13){a=a+8|0;Z0(f[(f[a>>2]|0)+16>>2]|0,b,c);b=a}Z0(f[(f[b>>2]|0)+16>>2]|0,f[g+16>>2]|0,0-c|0);break a}case 10:{b=g$a(f[g+16>>2]|0)|0;if(!b)break a;i=f[a+8>>2]|0;a=f[g+12>>2]|0;c=X(qoa(Q4(b)|0)|0,c)|0;Z0(f[i+16>>2]|0,a,c);break a}case 2:{d=f[g+12>>2]|0;b=g$a(d)|0;if(b|0){i=f[a+8>>2]|0;a=f[g+16>>2]|0;c=X(ORa(b+8|0)|0,c)|0;Z0(f[i+16>>2]|0,a,c);break a}b=g$a(f[g+16>>2]|0)|0;if(!b)break a;a=f[a+8>>2]|0;c=X(ORa(b+8|0)|0,c)|0;Z0(f[a+16>>2]|0,d,c);break a}default:break a}}else{b=ORa(d+8|0)|0;if(b|0){d=X(b,c)|0;b=f[a>>2]|0;f[b>>2]=(f[b>>2]|0)+d;b=f[a+4>>2]|0;d=b+4|0;e=f[d>>2]|0;if((e|0)==(f[b+8>>2]|0)){IL(b,g);break}else{f[e>>2]=h;f[d>>2]=(f[d>>2]|0)+4;break}}}while(0);u=j;return}function xm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){ZXa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;JCa(i)}else{JCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if($1a(-1,d)|0){ZXa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){JCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;JCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+40>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);eD(m);e=a;g=a;n=20;break a}while(0);eD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;r2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function ym(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;g=q+36|0;k=q+32|0;l=q+28|0;m=q+24|0;n=q+20|0;o=q+16|0;p=q+12|0;h=q+8|0;i=q+4|0;j=q;a:do switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{o=f[(f[a>>2]|0)+64>>2]|0;f[k>>2]=f[d>>2];p=(ORa(e)|0)&255;f[g>>2]=f[k>>2];qc[o&255](a,g,p);break a}case 2:{o=f[(f[a>>2]|0)+68>>2]|0;f[l>>2]=f[d>>2];p=(ORa(e)|0)&65535;f[g>>2]=f[l>>2];qc[o&255](a,g,p);break a}case 4:{o=f[(f[a>>2]|0)+72>>2]|0;f[m>>2]=f[d>>2];p=ORa(e)|0;f[g>>2]=f[m>>2];qc[o&255](a,g,p);break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{o=f[(f[a>>2]|0)+64>>2]|0;f[n>>2]=f[d>>2];p=jJa(e)|0;f[g>>2]=f[n>>2];qc[o&255](a,g,p&255);break a}case 2:{n=f[(f[a>>2]|0)+68>>2]|0;f[o>>2]=f[d>>2];p=jJa(e)|0;f[g>>2]=f[o>>2];qc[n&255](a,g,p&65535);break a}case 4:{n=f[(f[a>>2]|0)+72>>2]|0;f[p>>2]=f[d>>2];o=jJa(e)|0;f[g>>2]=f[p>>2];qc[n&255](a,g,o);break a}case 8:{o=f[(f[a>>2]|0)+76>>2]|0;f[h>>2]=f[d>>2];p=jJa(e)|0;f[g>>2]=f[h>>2];rc[o&255](a,g,p,I);break a}default:hb()}break}case 3:{o=f[(f[a>>2]|0)+72>>2]|0;f[i>>2]=f[d>>2];p=mQa(e)|0;f[g>>2]=f[i>>2];qc[o&255](a,g,p);break}case 4:{o=f[(f[a>>2]|0)+76>>2]|0;f[j>>2]=f[d>>2];p=AHa(e)|0;f[g>>2]=f[j>>2];rc[o&255](a,g,p,I);break}default:hb()}while(0);u=q;return}function zm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){ZXa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;JCa(i)}else{JCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if($1a(-1,d)|0){ZXa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){JCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;JCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+24>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);eD(m);e=a;g=a;n=20;break a}while(0);eD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;r2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function Am(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){ZXa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;JCa(i)}else{JCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if($1a(-1,d)|0){ZXa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){JCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;JCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+16>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);eD(m);e=a;g=a;n=20;break a}while(0);eD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;r2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function Bm(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){ZXa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;JCa(i)}else{JCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if($1a(-1,d)|0){ZXa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){JCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;JCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+32>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=la(p|0,j|0,i|0,e|0,d&255|0,+c)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);eD(m);e=a;g=a;n=20;break a}while(0);eD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;r2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function Cm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+32|0;d=s+8|0;r=s+4|0;l=s;f[r>>2]=b;f[l>>2]=c;r=$k(a,r)|0;f[d>>2]=c;q=HH(d,4)|0;p=r+4|0;i=f[p>>2]|0;o=(i|0)==0;a:do if(!o){j=i+-1|0;k=(j&i|0)==0;if(!k)if(q>>>0>>0)b=q;else b=(q>>>0)%(i>>>0)|0;else b=j&q;a=f[(f[r>>2]|0)+(b<<2)>>2]|0;if(!a)m=16;else do{a=f[a>>2]|0;if(!a){m=16;break a}h=f[a+4>>2]|0;if((h|0)!=(q|0)){if(!k){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&j;if((h|0)!=(b|0)){m=16;break a}}}while((f[a+8>>2]|0)!=(c|0))}else{b=0;m=16}while(0);if((m|0)==16){R6(d,r,q,l);j=r+12|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[r+16>>2];do if(o|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(632,r|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){a=Ia()|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)ubb(b);Ua(a|0)}a=f[p>>2]|0;b=a+-1|0;if(!(b&a)){i=a;b=b&q;break}if(q>>>0>>0){i=a;b=q}else{i=a;b=(q>>>0)%(a>>>0)|0}}while(0);a=f[(f[r>>2]|0)+(b<<2)>>2]|0;if(!a){a=r+8|0;h=f[d>>2]|0;f[h>>2]=f[a>>2];f[a>>2]=h;f[(f[r>>2]|0)+(b<<2)>>2]=a;a=f[h>>2]|0;if(a){a=f[a+4>>2]|0;b=i+-1|0;if(b&i){if(a>>>0>=i>>>0)a=(a>>>0)%(i>>>0)|0}else a=a&b;f[(f[r>>2]|0)+(a<<2)>>2]=h}}else{r=f[d>>2]|0;f[r>>2]=f[a>>2];f[a>>2]=r}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=s;return}function Dm(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;j=l+12|0;h=l;g=a+12|0;do if(b[g>>0]|0){e=yCa(134176,96073)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(e,d)|0;du(e)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);d=a+192|0;c=f[d>>2]|0;a:do if((f[a+188>>2]|0)==(c|0)){if(b[a+200>>0]|0){do if(b[g>>0]|0){c=yCa(134176,96090)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,i=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(j);Wq(c,i)|0;du(c)|0;break}m=Ia()|0;JCa(j);Ua(m|0)}while(0);c=ySa(f[a+4>>2]|0)|0;break}zY(j,f[a+36>>2]|0);x=0;ia(83,j|0,96136)|0;m=x;x=0;do if(!(m&1)){f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1869,a|0,h|0);m=x;x=0;if(m&1){c=Ia()|0;HTa(h);break}else{HTa(h);HTa(j);c=f[d>>2]|0;k=23;break a}}else c=Ia()|0;while(0);HTa(j);Ua(c|0)}else k=23;while(0);if((k|0)==23){m=c+-4|0;c=f[m>>2]|0;f[d>>2]=m}u=l;return c|0}function Em(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;g=l+24|0;i=l+12|0;j=l;do if(b[a+12>>0]|0){h=yCa(134176,110903)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}m=Ia()|0;JCa(g);Ua(m|0)}while(0);e=nq(a)|0;d=f[a>>2]|0;do if(e>>>0>=(f[d+4>>2]|0)-(f[d>>2]|0)>>2>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,97222,h7a(97222)|0);x=0;ua(1869,a|0,i|0);m=x;x=0;if(m&1){d=Ia()|0;HTa(i);break}else{HTa(i);d=f[a>>2]|0;k=10;break}}else k=10;while(0);a:do if((k|0)==10){i=f[(f[d>>2]|0)+(e<<2)>>2]|0;do if(nq(a)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,97255,h7a(97255)|0);x=0;ua(1869,a|0,j|0);m=x;x=0;if(m&1){d=Ia()|0;HTa(j);break a}else{HTa(j);break}}while(0);f[c+24>>2]=f[i>>2];e=(f[i+12>>2]|0)-(f[i+8>>2]|0)>>2;g=c+8|0;d7(g,e);h=dk(a)|0;f[c+28>>2]=h;h=e+-1|0;d=0;while(1){if((d|0)==(e|0))break;k=dk(a)|0;m=JDa(g,h-d|0)|0;f[m>>2]=k;d=d+1|0}f[c+4>>2]=f[i+4>>2];ZMa(c);u=l;return}while(0);Ua(d|0)}function Fm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r+4|0;k=r;f[k>>2]=b;p=f[b>>2]|0;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(!o){j=h+-1|0;i=(j&h|0)==0;if(!i)if(p>>>0>>0)c=p;else c=(p>>>0)%(h>>>0)|0;else c=j&p;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)l=16;else do{b=f[b>>2]|0;if(!b){l=16;break a}d=f[b+4>>2]|0;if((d|0)!=(p|0)){if(!i){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){l=16;break a}}}while((f[b+8>>2]|0)!=(p|0))}else{c=0;l=16}while(0);if((l|0)==16){dW(q,a,p,k);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(521,a|0,(o>>>0>>0?l:o)|0);o=x;x=0;if(o&1){b=Ia()|0;c=f[q>>2]|0;f[q>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[m>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&p;break}if(p>>>0>>0){h=b;c=p}else{h=b;c=(p>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){p=a+8|0;b=f[q>>2]|0;f[b>>2]=f[p>>2];f[p>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=p;c=f[b>>2]|0;if(!c)c=q;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=q}}else{a=f[q>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=q;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=r;return b+12|0}function Gm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+96|0;k=n+56|0;q=n+60|0;p=n+32|0;o=n+8|0;l=n;f[k>>2]=b;lPa(q,a);x=0;ua(1458,q|0,b|0);j=x;x=0;do if(j&1)b=Ia()|0;else{j=a+20|0;e=a+16|0;g=a+4|0;h=q+4|0;b=0;a:while(1){if(b>>>0>=(f[j>>2]|0)>>>0)break;d=(f[e>>2]|0)+b|0;d=f[(f[(f[g>>2]|0)+(d>>>10<<2)>>2]|0)+((d&1023)<<2)>>2]|0;f[p>>2]=d;b:do if(yQa(h,d)|0){c=Bbb(f[d+16>>2]|0)|0;while(1){i=c;if((L6a(d)|0)==(i|0))break b;x=0;ua(1459,(f[c+8>>2]|0)+24|0,p|0);c=x;x=0;if(c&1){m=12;break a}c=f[i+4>>2]|0}}while(0);b=b+1|0}if((m|0)==12){b=Ia()|0;break}FHa(p);b=Bbb(f[q+20>>2]|0)|0;c=L6a(h)|0;while(1){d=b;if((c|0)==(d|0)){m=14;break}f[o>>2]=f[b+8>>2];x=0;ua(1459,p|0,o|0);m=x;x=0;if(m&1){m=17;break}b=f[d+4>>2]|0}if((m|0)==14){FHa(o);x=0;ua(1459,o|0,k|0);k=x;x=0;do if(!(k&1)){AXa(l,a);x=0;b=ja(69,l|0,p|0,o|0)|0;l=x;x=0;if(l&1){b=Ia()|0;break}f[a+48>>2]=b;if(!b){x=0;wa(71,88976,88981,970,89011);x=0;m=21;break}else{TDa(o);TDa(p);HWa(q);u=n;return}}else m=21;while(0);if((m|0)==21)b=Ia()|0;TDa(o)}else if((m|0)==17)b=Ia()|0;TDa(p)}while(0);HWa(q);Ua(b|0)}function Hm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+48|0;j=i+24|0;k=i+12|0;l=i;f[a>>2]=0;c=b+16|0;g=0;while(1){h=(kra(f[c>>2]|0)|0)<<24>>24;e=(h&128|0)==0;d=h&127;b=((g|0)==0?127:(1<<32-g)+127|0)&d;if(!(e|(b|0)==(d|0))){c=3;break}b=f[a>>2]|b<>2]=b;d=g+7|0;if(e){c=17;break}if(d>>>0>31){c=11;break}else g=d}do if((c|0)==3){d=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;l=h7a(95684)|0;x=0;va(87,j|0,95684,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,d|0,j|0);l=x;x=0;if(l&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(j);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==11){d=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;l=h7a(95727)|0;x=0;va(87,k|0,95727,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,d|0,k|0);l=x;x=0;if(l&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(k);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==17){if(d>>>0<32&(h&64|0)!=0?(k=25-g|0,k=b<>k,f[a>>2]=k,(k|0)>-1):0){d=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;k=h7a(95740)|0;x=0;va(87,l|0,95740,k|0);k=x;x=0;if(!(k&1)){x=0;ua(261,d|0,l|0);k=x;x=0;if(k&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;HTa(l);if(!c)break}else b=Ia()|0;La(d|0);break}u=i;return}while(0);Ua(b|0)}function Im(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r+4|0;k=r;f[k>>2]=b;p=f[b>>2]|0;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(!o){j=h+-1|0;i=(j&h|0)==0;if(!i)if(p>>>0>>0)c=p;else c=(p>>>0)%(h>>>0)|0;else c=j&p;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)l=16;else do{b=f[b>>2]|0;if(!b){l=16;break a}d=f[b+4>>2]|0;if((d|0)!=(p|0)){if(!i){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){l=16;break a}}}while((f[b+8>>2]|0)!=(p|0))}else{c=0;l=16}while(0);if((l|0)==16){dW(q,a,p,k);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(2460,a|0,(o>>>0>>0?l:o)|0);o=x;x=0;if(o&1){b=Ia()|0;c=f[q>>2]|0;f[q>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[m>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&p;break}if(p>>>0>>0){h=b;c=p}else{h=b;c=(p>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){p=a+8|0;b=f[q>>2]|0;f[b>>2]=f[p>>2];f[p>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=p;c=f[b>>2]|0;if(!c)c=q;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=q}}else{a=f[q>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=q;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=r;return b+12|0}function Jm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r+4|0;k=r;f[k>>2]=b;p=f[b>>2]|0;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(!o){j=h+-1|0;i=(j&h|0)==0;if(!i)if(p>>>0>>0)c=p;else c=(p>>>0)%(h>>>0)|0;else c=j&p;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)l=16;else do{b=f[b>>2]|0;if(!b){l=16;break a}d=f[b+4>>2]|0;if((d|0)!=(p|0)){if(!i){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){l=16;break a}}}while((f[b+8>>2]|0)!=(p|0))}else{c=0;l=16}while(0);if((l|0)==16){dW(q,a,p,k);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(525,a|0,(o>>>0>>0?l:o)|0);o=x;x=0;if(o&1){b=Ia()|0;c=f[q>>2]|0;f[q>>2]=0;if(c|0)ubb(c);Ua(b|0)}b=f[m>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&p;break}if(p>>>0>>0){h=b;c=p}else{h=b;c=(p>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){p=a+8|0;b=f[q>>2]|0;f[b>>2]=f[p>>2];f[p>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=p;c=f[b>>2]|0;if(!c)c=q;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=q}}else{a=f[q>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=q;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=r;return b+12|0}function Km(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=f[a+4>>2]|0;c=f[a>>2]|0;while(1){if((c|0)==(e|0))break;d=n8(20)|0;x=0;ua(2280,d|0,f[c>>2]|0);h=x;x=0;if(h&1){g=6;break}zs(b,d);c=c+4|0}if((g|0)==6){h=Ia()|0;ubb(d);Ua(h|0)}d=f[a+16>>2]|0;c=f[a+12>>2]|0;while(1){if((c|0)==(d|0))break;h=n8(24)|0;g=f[c>>2]|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[h+16>>2]=f[g+16>>2];f[h+20>>2]=f[g+20>>2];Ys(b,h);c=c+4|0}d=f[a+28>>2]|0;c=f[a+24>>2]|0;while(1){if((c|0)==(d|0))break;h=n8(12)|0;g=f[c>>2]|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];Xs(b,h);c=c+4|0}d=f[a+40>>2]|0;c=f[a+36>>2]|0;while(1){if((c|0)==(d|0))break;Ft(f[c>>2]|0,b)|0;c=c+4|0}d=f[a+52>>2]|0;c=f[a+48>>2]|0;while(1){if((c|0)==(d|0))break;h=n8(16)|0;g=f[c>>2]|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];Ws(b,h);c=c+4|0}f0(b+60|0,a+60|0)|0;d=f[b+80>>2]|0;c=f[b+76>>2]|0;while(1){if((c|0)==(d|0))break;h=PY(f[c>>2]|0,b)|0;f[c>>2]=h;c=c+16|0}hX(b+88|0,a+88|0)|0;d=f[b+104>>2]|0;c=f[b+100>>2]|0;while(1){if((c|0)==(d|0))break;h=PY(f[c>>2]|0,b)|0;f[c>>2]=h;c=c+16|0}f[b+116>>2]=f[a+116>>2];if((b|0)!=(a|0)){uu(b+120|0,f[a+120>>2]|0,f[a+124>>2]|0);ns(b+132|0,f[a+132>>2]|0,f[a+136>>2]|0)}return}function Lm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+48|0;m=o+24|0;h=o+16|0;l=o+20|0;n=o+12|0;p=o;f[h>>2]=e;do if(!(sab(f[d>>2]|0)|0)){i=ql(a+44|0,h)|0;e=Pma(a,d,0)|0;f[l>>2]=e;j=i+4|0;h=f[j>>2]|0;k=i+8|0;if((h|0)==(f[k>>2]|0))IL(i,l);else{f[h>>2]=e;f[j>>2]=(f[j>>2]|0)+4}e=jC(a,d,1,0)|0;f[n>>2]=e;h=f[j>>2]|0;if((h|0)==(f[k>>2]|0)){IL(i,n);k=e;break}else{f[h>>2]=e;f[j>>2]=(f[j>>2]|0)+4;k=e;break}}else{f[n>>2]=a;f[l>>2]=a;k=a}while(0);f[p>>2]=0;i=p+4|0;f[i>>2]=0;j=p+8|0;f[j>>2]=0;if(!($1a(f[b>>2]|0,f[b+4>>2]|0)|0)?(x=0,va(106,p|0,b|0,l|0),l=x,x=0,l&1):0)h=11;else h=13;a:do if((h|0)==13){do if(!($1a(f[c>>2]|0,f[c+4>>2]|0)|0)){e=f[i>>2]|0;if(e>>>0>=(f[j>>2]|0)>>>0){x=0;va(106,p|0,c|0,n|0);n=x;x=0;if(n&1){h=11;break a}else break}x=0;ua(679,m|0,c|0);n=x;x=0;if(n&1){h=11;break a}x=0;va(107,e|0,m|0,k|0);n=x;x=0;if(n&1){e=Ia()|0;uSa(m);break a}else{uSa(m);f[i>>2]=(f[i>>2]|0)+16;break}}while(0);x=0;va(108,a|0,p|0,g|0);n=x;x=0;if(n&1)h=11;else{Haa(p);u=o;return}}while(0);if((h|0)==11)e=Ia()|0;Haa(p);Ua(e|0)}function Mm(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+36|0;j=l+24|0;m=l+12|0;k=l;h=Bc(a,c,e)|0;a:do if((h|0)!=(a|0)?(g=e+4|0,(f[e>>2]|0)!=(f[g>>2]|0)):0){mJ(m,d,123276);x=0;ua(3194,k|0,(f[g>>2]|0)+-24|0);e=x;x=0;if(e&1)a=Ia()|0;else{e=b[k+11>>0]|0;d=e<<24>>24<0;x=0;ja(97,m|0,(d?f[k>>2]|0:k)|0,(d?f[k+4>>2]|0:e&255)|0)|0;e=x;x=0;do if(e&1)a=Ia()|0;else{f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,j|0,123274)|0;e=x;x=0;if(e&1){a=Ia()|0;HTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;d=a+-24|0;c=d+11|0;if((b[c>>0]|0)<0){T0a(f[d>>2]|0,0);f[a+-20>>2]=0;a=d}else{T0a(d,0);b[c>>0]=0;a=d}wv(d);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}HTa(i);HTa(j);HTa(k);HTa(m);a=h;break a}while(0);HTa(k)}HTa(m);Ua(a|0)}while(0);u=l;return a|0}function Nm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;c=u;u=u+64|0;e=c+36|0;g=c+48|0;h=c+24|0;i=c+12|0;k=c;j=Ns(a)|0;d=j&255;if((j<<24>>24|0)==(b<<24>>24|0)){u=c;return}j=Ea(12)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;c=h7a(99171)|0;x=0;va(87,k|0,99171,c|0);c=x;x=0;if(c&1){c=Ia()|0;a=1}else{x=0;ua(82,k|0,b|0);b=x;x=0;if(b&1){c=Ia()|0;a=1}else{f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,i|0,99199)|0;b=x;x=0;if(b&1){c=Ia()|0;a=1}else{f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ua(82,h|0,d|0);d=x;x=0;if(d&1){c=Ia()|0;a=1}else{f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,g|0,99207)|0;d=x;x=0;if(d&1){c=Ia()|0;a=1}else{f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}x=0;ua(1881,j|0,e|0);d=x;x=0;if(d&1)a=1;else{x=0;va(98,j|0,34672,495);x=0;a=0}c=Ia()|0;HTa(e)}HTa(g)}HTa(h)}HTa(i)}HTa(k)}if(a)La(j|0);Ua(c|0)}function Om(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+8|0;j=k;g=a+26|0;b[g>>0]=(b[g>>0]|0)==0?b[c+26>>0]|0:1;g=a+27|0;b[g>>0]=(b[g>>0]|0)==0?b[c+27>>0]|0:1;g=a+76|0;b[g>>0]=(b[g>>0]|0)==0?b[c+76>>0]|0:1;g=a+77|0;b[g>>0]=(b[g>>0]|0)==0?b[c+77>>0]|0:1;g=c+32|0;h=a+28|0;e=f[c+28>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e+16>>2]|0;f[j>>2]=d;nH(i,h,d,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}g=c+44|0;h=a+40|0;e=f[c+40>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e+16>>2]|0;f[j>>2]=d;nH(i,h,d,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}g=c+56|0;h=a+52|0;e=f[c+52>>2]|0;while(1){if((e|0)==(g|0))break;f[j>>2]=f[e+16>>2];bG(i,h,j,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}h=c+68|0;g=a+64|0;e=f[c+64>>2]|0;while(1){if((e|0)==(h|0))break;f[j>>2]=f[e+16>>2];bG(i,g,j,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}u=k;return}function Pm(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;n=o;i=Bbb(f[e>>2]|0)|0;p=Bbb(f[d+16>>2]|0)|0;j=d+8|0;e=b[j>>0]|0;c=e&255;a:do if(p>>>0>=c>>>0?(c+-1&i|0)==0:0){c=d+4|0;if(l6a(f[c>>2]|0)|0)switch(e<<24>>24){case 4:{CAa(a,+kb(31,i|0));break a}case 8:{kqa(a,+kb(32,i|0));break a}default:hb()}b:do switch(e<<24>>24){case 1:if(!(b[d+9>>0]|0)){l=rb(26,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}else{l=rb(25,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}case 2:if(!(b[d+9>>0]|0)){l=rb(28,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}else{l=rb(27,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}case 4:if(!(b[d+9>>0]|0)){k=rb(30,i|0)|0;l=0;break b}else{l=rb(29,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}case 8:{k=rb(29,i|0)|0;l=rb(29,i+4|0)|0;break}default:hb()}while(0);if((f[c>>2]|0)==1){m$a(a,k);break}else{SSa(a,k,l);break}}else m=3;while(0);if((m|0)==3){p=d+4|0;m=(l6a(f[p>>2]|0)|0)&1;e=d+9|0;g=+ob(24,i|0,c|0,m|0,h[e>>0]|0,n|0);c=f[p>>2]|0;c:do if(!(l6a(c)|0)){if((c|0)!=2){m$a(a,~~g);break}if((b[j>>0]|0)==8){p=n;SSa(a,f[p>>2]|0,f[p+4>>2]|0);break}if(!(b[e>>0]|0)){SSa(a,~~g>>>0,0);break}else{p=~~g;SSa(a,p,((p|0)<0)<<31>>31);break}}else switch(b[j>>0]|0){case 4:{CAa(a,g);break c}case 8:{kqa(a,g);break c}default:hb()}while(0)}u=o;return}function Qm(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o+8|0;g=o+4|0;m=o;i=a+64|0;l=f[i>>2]|0;do if((f[l+52>>2]|0)!=(f[l+48>>2]|0)){l=a+72|0;do if(b[l>>0]|0){c=yCa(134176,87871)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(n);Wq(c,e)|0;du(c)|0;break}o=Ia()|0;JCa(n);Ua(o|0)}while(0);k=A$(a,6)|0;j=a+68|0;d=f[j>>2]|0;e=f[i>>2]|0;f4a(g,(f[e+52>>2]|0)-(f[e+48>>2]|0)>>2);Yr(d,f[g>>2]|0)|0;d=f[i>>2]|0;e=f[d+52>>2]|0;d=f[d+48>>2]|0;while(1){if((d|0)==(e|0)){c=9;break}if(b[l>>0]|0){g=yCa(134176,87861)|0;ZXa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;i=x;x=0;if(i&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;i=x;x=0;if(i&1){c=13;break}JCa(n);Wq(g,c)|0;du(g)|0}i=f[j>>2]|0;Pr(i,m8(f[(f[d>>2]|0)+4>>2]|0)|0)|0;i=f[j>>2]|0;f4a(m,h[(f[d>>2]|0)+12>>0]|0);Yr(i,f[m>>2]|0)|0;U7(a,f[(f[d>>2]|0)+8>>2]|0);Ev(f[j>>2]|0,11)|0;d=d+4|0}if((c|0)==9){VA(a,k);break}else if((c|0)==13){o=Ia()|0;JCa(n);Ua(o|0)}}while(0);u=o;return}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+64|0;h=m+56|0;d=m;e=m+48|0;j=m+40|0;k=m+32|0;l=m+24|0;g=m+16|0;az(b);Dh(d,f[b>>2]|0);f[b>>2]=(f[b>>2]|0)+(f[d+8>>2]|0);a:do switch(f[d+12>>2]|0){case 0:{i=Mp(a,d,b,c)|0;break}case 2:{i=en(a,d,b,c)|0;break}case 5:case 4:case 3:{mTa(e,IY(d)|0);f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];i=pd(a,h,b,c)|0;break}case 6:{d=f[d>>2]|0;if($1a(d,f[33225]|0)|0){mTa(j,IF(a,b)|0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];i=pd(a,h,b,c)|0;break a}if($1a(d,f[33224]|0)|0){mTa(k,aC(a,b)|0);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];i=pd(a,h,b,c)|0;break a}if($1a(d,f[33223]|0)|0){mTa(l,at(a,b)|0);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];i=pd(a,h,b,c)|0;break a}else hb();break}case 1:{cSa(g,f[d>>2]|0);f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];i=pd(a,h,b,c)|0;break}default:hb()}while(0);u=m;return i|0}function Sm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;j=n;m=b+8|0;c=f[m>>2]|0;d=g$a(c)|0;a:do if(!d){if((f[c+4>>2]|0)==5){d=a+44|0;Moa(d,f[b+12>>2]|0);c=f[b+16>>2]|0;if(c|0)Moa(d,c);Kia(a,f[m>>2]|0)|0;break}h=b+16|0;c=f[h>>2]|0;i=c;if(!c){if(!(V6a(f[f[b+12>>2]>>2]|0)|0))break;b=f[a+36>>2]|0;Bbb(b)|0;U0a(j,b);Kia(a,gNa(f[j>>2]|0,f[m>>2]|0)|0)|0;break}d=f[c>>2]|0;if(V6a(d)|0){f[h>>2]=0;break}e=b+12|0;g=f[e>>2]|0;c=f[g>>2]|0;if(V6a(c)|0){f[e>>2]=i;f[h>>2]=0;a=f[a+36>>2]|0;Bbb(a)|0;U0a(j,a);a=mBa(f[j>>2]|0,20,f[m>>2]|0)|0;f[m>>2]=a;break}if((K6a(c)|0?K6a(d)|0:0)?(k=(_Ra(g)|0)+8|0,k=f[k>>2]|0,l=(_Ra(f[h>>2]|0)|0)+8|0,l=f[l>>2]|0,(f[k+4>>2]|0)==(f[l+4>>2]|0)):0){f[e>>2]=k;f[h>>2]=l;LI(b);m=f[a+36>>2]|0;Bbb(m)|0;U0a(j,m);Kia(a,gNa(f[j>>2]|0,b)|0)|0}}else{m=Eia(d+8|0)|0;do if((m|0)==0&(I|0)==0){c=f[b+16>>2]|0;d=a+44|0;if(!c){Moa(d,b);pVa(b);break a}else{Moa(d,f[b+12>>2]|0);break}}else{c=f[b+12>>2]|0;d=f[b+16>>2]|0;if(d)Moa(a+44|0,d)}while(0);Kia(a,c)|0}while(0);u=n;return}function Tm(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;m=l;i=a+4|0;j=a+8|0;k=(f[j>>2]|0)-(f[i>>2]|0)>>2;g=((k*25|0)>>>0)/100|0;e=((k*50|0)>>>0)/100|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;x=0;ua(3130,m|0,e|0);d=x;x=0;do if(!(d&1)){b=0;while(1){if(b>>>0>=e>>>0)break;n=f[a>>2]|0;d=L7(a)|0;d=f[(f[i>>2]|0)+(d<<2)>>2]|0;c=L7(a)|0;x=0;c=ja(90,n|0,d|0,f[(f[i>>2]|0)+(c<<2)>>2]|0)|0;d=x;x=0;if(d&1){h=10;break}n=(f[m>>2]|0)+(b<<2)|0;d=f[n>>2]|0;f[n>>2]=c;if(d|0){uSa(d);ubb(d)}b=b+1|0}if((h|0)==10){b=Ia()|0;break}b=0;while(1){if(b>>>0>=e>>>0)break;d=(f[i>>2]|0)+(b+g<<2)|0;n=(f[m>>2]|0)+(b<<2)|0;h=f[d>>2]|0;f[d>>2]=f[n>>2];f[n>>2]=h;b=b+1|0}b=g+e|0;while(1){if(b>>>0>=k>>>0){h=20;break}x=0;c=ga(326,f[a>>2]|0)|0;n=x;x=0;if(n&1){h=19;break}n=(f[i>>2]|0)+(b<<2)|0;d=f[n>>2]|0;f[n>>2]=c;if(d|0){uSa(d);ubb(d)}b=b+1|0}if((h|0)==19){b=Ia()|0;break}else if((h|0)==20){I8(f[a+4>>2]|0,f[j>>2]|0);MY(m);u=l;return}}else b=Ia()|0;while(0);MY(m);Ua(b|0)}function Um(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;c=o+28|0;h=o+20|0;i=o+24|0;n=o+8|0;j=o+4|0;k=o;g=LJ(f[a+8>>2]|0)|0;l=g;m=Bbb(f[b+24>>2]|0)|0;do if(!((m|0)==0|(Iab(g)|0)^1)){d=f[b+28>>2]|0;e=Bbb(d)|0;U0a(h,d);g=a+4|0;do if((m|0)==2&(f[g>>2]|0)!=2){Zw(b);m=naa(f[a+12>>2]|0,d+144|0)|0;E1a(i,f[33024]|0);f[j>>2]=m;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;x=0;ua(168,n|0,1);m=x;x=0;if(m&1){o=Ia()|0;uSa(n);Ua(o|0)}mda(n,j,j+4|0);x=0;f[c>>2]=f[i>>2];a=ka(10,h|0,c|0,n|0,1)|0;m=x;x=0;if(m&1){a=Ia()|0;uSa(n);c=15;break}else{uSa(n);c=14;break}}else{jY(a,e,b);f[k>>2]=l;f[j>>2]=f[a+12>>2];f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;x=0;ua(168,n|0,1);m=x;x=0;if(m&1){o=Ia()|0;uSa(n);Ua(o|0)}mda(n,j,j+4|0);a=f[g>>2]|0;x=0;f[c>>2]=f[k>>2];a=ka(13,h|0,c|0,n|0,a|0)|0;m=x;x=0;if(m&1){a=Ia()|0;uSa(n);c=15;break}else{uSa(n);c=14;break}}while(0);if((c|0)==14)break;else if((c|0)==15)Ua(a|0)}while(0);u=o;return a|0}function Vm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(J6a(c)|0)){if(!(rab(c)|0)){if(vab(c)|0){g=(qSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76972,76797,128,76999)}if(w8a(c)|0){e=IRa(d)|0;b=e+8|0;I$a(i,b);GUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=LOa(i)|0;f[j>>2]=f[h>>2];bG(k,b,j,j);RYa(i)}e=e+24|0;bG(k,b,e,e);e=18}else e=18}}else{c=WRa(d)|0;if(f[c+12>>2]|0){e=c+8|0;bG(k,a+68|0,e,e);e=18;break}e=WW(a+56|0,c+8|0)|0;f[k>>2]=b;E4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(1258,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;TMa(k);Ua(l|0)}}else{OLa(d,k);f[c>>2]=(f[c>>2]|0)+16}TMa(k);e=18}while(0);if((e|0)==18)t3(a+44|0);u=l;return}function Wm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(J6a(c)|0)){if(!(rab(c)|0)){if(vab(c)|0){g=(qSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76972,76797,128,76999)}if(w8a(c)|0){e=IRa(d)|0;b=e+8|0;I$a(i,b);GUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=LOa(i)|0;f[j>>2]=f[h>>2];bG(k,b,j,j);RYa(i)}e=e+24|0;bG(k,b,e,e);e=18}else e=18}}else{c=WRa(d)|0;if(f[c+12>>2]|0){e=c+8|0;bG(k,a+68|0,e,e);e=18;break}e=WW(a+56|0,c+8|0)|0;f[k>>2]=b;E4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(1038,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;VMa(k);Ua(l|0)}}else{OLa(d,k);f[c>>2]=(f[c>>2]|0)+16}VMa(k);e=18}while(0);if((e|0)==18)v3(a+44|0);u=l;return}function Xm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(J6a(c)|0)){if(!(rab(c)|0)){if(vab(c)|0){g=(qSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76972,76797,128,76999)}if(w8a(c)|0){e=IRa(d)|0;b=e+8|0;I$a(i,b);GUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=LOa(i)|0;f[j>>2]=f[h>>2];bG(k,b,j,j);RYa(i)}e=e+24|0;bG(k,b,e,e);e=18}else e=18}}else{c=WRa(d)|0;if(f[c+12>>2]|0){e=c+8|0;bG(k,a+68|0,e,e);e=18;break}e=WW(a+56|0,c+8|0)|0;f[k>>2]=b;E4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(1163,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;XMa(k);Ua(l|0)}}else{OLa(d,k);f[c>>2]=(f[c>>2]|0)+16}XMa(k);e=18}while(0);if((e|0)==18)x3(a+44|0);u=l;return}function Ym(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(J6a(c)|0)){if(!(rab(c)|0)){if(vab(c)|0){g=(qSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76972,76797,128,76999)}if(w8a(c)|0){e=IRa(d)|0;b=e+8|0;I$a(i,b);GUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=LOa(i)|0;f[j>>2]=f[h>>2];bG(k,b,j,j);RYa(i)}e=e+24|0;bG(k,b,e,e);e=18}else e=18}}else{c=WRa(d)|0;if(f[c+12>>2]|0){e=c+8|0;bG(k,a+68|0,e,e);e=18;break}e=WW(a+56|0,c+8|0)|0;f[k>>2]=b;E4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(943,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;UMa(k);Ua(l|0)}}else{OLa(d,k);f[c>>2]=(f[c>>2]|0)+16}UMa(k);e=18}while(0);if((e|0)==18)u3(a+44|0);u=l;return}function Zm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(J6a(c)|0)){if(!(rab(c)|0)){if(vab(c)|0){g=(qSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76972,76797,128,76999)}if(w8a(c)|0){e=IRa(d)|0;b=e+8|0;I$a(i,b);GUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=LOa(i)|0;f[j>>2]=f[h>>2];bG(k,b,j,j);RYa(i)}e=e+24|0;bG(k,b,e,e);e=18}else e=18}}else{c=WRa(d)|0;if(f[c+12>>2]|0){e=c+8|0;bG(k,a+68|0,e,e);e=18;break}e=WW(a+56|0,c+8|0)|0;f[k>>2]=b;E4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(820,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;WMa(k);Ua(l|0)}}else{OLa(d,k);f[c>>2]=(f[c>>2]|0)+16}WMa(k);e=18}while(0);if((e|0)==18)w3(a+44|0);u=l;return}function _m(a,b){a=a|0;b=b|0;if(!b)Ca(110557,115839,78,110562);do switch(f[b>>2]|0){case 1:{kL(a,b);break}case 2:{dY(a,b);break}case 3:{KL(a,b);break}case 4:{l3(a,b);break}case 5:{ZB(a,b);break}case 6:{Lma(a,b);break}case 7:{Lma(a,b);break}case 8:{fha(f[a+4>>2]|0,b);break}case 9:{fea(a,b);break}case 10:{MX(a,b);break}case 11:{ula(a,b);break}case 12:{tla(a,b);break}case 13:{eu(a,b);break}case 14:{tu(a,b);break}case 24:{Cz(a,b);break}case 25:{PU(a,b);break}case 26:{TW(a,b);break}case 27:{q3(a,b);break}case 15:{k7(f[a+4>>2]|0,b);break}case 16:{Kh(f[a+4>>2]|0,f[b+8>>2]|0);break}case 17:{_f(f[a+4>>2]|0,f[b+8>>2]|0);break}case 18:{wRa(f[a+4>>2]|0);break}case 19:{dUa(f[a+4>>2]|0);break}case 20:{oTa(f[a+4>>2]|0);break}case 21:{mQ(a,b);break}case 22:{CUa(f[a+4>>2]|0);break}case 23:{HRa(f[a+4>>2]|0);break}default:hb()}while(0);return}function $m(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;h=n+24|0;j=n;i=n+20|0;m=n+8|0;do if(b[a+12>>0]|0){g=yCa(134176,110990)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(h);Wq(g,e)|0;du(g)|0;break}n=Ia()|0;JCa(h);Ua(n|0)}while(0);g=ix(a)|0;k=c+4|0;f[k>>2]=g;g=Rz(a)|0;f[c+8>>2]=g;l=c+8|0;f[i>>2]=g;f[h>>2]=f[i>>2];cUa(j,h,0);g=a+160|0;d=f[g>>2]|0;if(d>>>0<(f[a+164>>2]|0)>>>0){h=j;i=f[h+4>>2]|0;j=d;f[j>>2]=f[h>>2];f[j+4>>2]=i;f[g>>2]=(f[g>>2]|0)+8}else sF(a+156|0,j);e=a+188|0;j=a+192|0;d=(f[j>>2]|0)-(f[e>>2]|0)>>2;Cj(a);e=(f[j>>2]|0)-(f[e>>2]|0)>>2;if((e-d|0)==1)d=Dm(a)|0;else{do if(e>>>0>>0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;WZ(m,97463,h7a(97463)|0);x=0;ua(1869,a|0,m|0);j=x;x=0;if(j&1){n=Ia()|0;HTa(m);Ua(n|0)}else{HTa(m);break}}while(0);m=$Ra(f[a+4>>2]|0)|0;hr(a,m,d,e);XJa(m,f[k>>2]|0);d=m}f[c+12>>2]=d;f[g>>2]=(f[g>>2]|0)+-8;Y4(a+168|0,l);YHa(c,f[k>>2]|0);u=n;return}function an(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+64|0;h=k;l=k+44|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=1065353216;i=c+36|0;j=c+40|0;b=f[j>>2]|0;a=f[i>>2]|0;while(1){if((a|0)==(b|0)){g=3;break}x=0;ia(153,l|0,f[a>>2]|0)|0;g=x;x=0;if(g&1){g=6;break}a=a+4|0}do if((g|0)==3){mza(h,c);h4a(h);x=0;ua(1567,h|0,l|0);e=x;x=0;if(!(e&1)?(x=0,ta(438,h|0),e=x,x=0,!(e&1)):0){Tca(h);a=c+116|0;if(Iab(f[a>>2]|0)|0){x=0;a=ia(153,l|0,a|0)|0;e=x;x=0;if(!(e&1)){f[a>>2]=(f[a>>2]|0)+1;g=13}}else g=13;if((g|0)==13){b=f[c+28>>2]|0;a=f[c+24>>2]|0;while(1){if((a|0)==(b|0))break;x=0;d=ia(153,l|0,(f[a>>2]|0)+4|0)|0;e=x;x=0;if(e&1){g=18;break}f[d>>2]=(f[d>>2]|0)+1;a=a+4|0}if((g|0)==18){a=Ia()|0;break}e=f[c+80>>2]|0;b=f[c+76>>2]|0;a:while(1){if((b|0)==(e|0))break;d=f[b+8>>2]|0;a=f[b+4>>2]|0;while(1){if((a|0)==(d|0))break;x=0;c=ia(153,l|0,a|0)|0;m=x;x=0;if(m&1){g=26;break a}f[c>>2]=(f[c>>2]|0)+1;a=a+4|0}b=b+16|0}if((g|0)==26){a=Ia()|0;break}i=f[i>>2]|0;m=f[j>>2]|0;f[h>>2]=l;x=0;va(135,i|0,m|0,h|0);m=x;x=0;if(!(m&1)){NQa(l);u=k;return}}a=Ia()|0;break}a=Ia()|0;Tca(h)}else if((g|0)==6)a=Ia()|0;while(0);NQa(l);Ua(a|0)}function bn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+16|0;j=m+8|0;i=m;k=a+33|0;do if(b[k>>0]|0){g=yCa(134176,87660)|0;ZXa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[l>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,h=x,x=0,!(h&1)):0){JCa(l);Wq(g,e)|0;du(g)|0;break}m=Ia()|0;JCa(l);Ua(m|0)}while(0);e=a+28|0;Ev(f[e>>2]|0,2)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,m8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))IL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}h=c+12|0;I$a(j,h);GUa(i,h);h=j+4|0;a=f[i>>2]|0;g=f[i+4>>2]|0;d=0;while(1){if(!(lTa(f[j>>2]|0,f[h>>2]|0,a,g)|0)){d=11;break}LOa(j)|0;if(b[k>>0]|0){zm(yCa(zm(yCa(134176,87675)|0,c)|0,111105)|0,d)|0;ZXa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[l>>2]|0,134880)|0;i=x;x=0;if(i&1){d=15;break}x=0;e=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0;i=x;x=0;if(i&1){d=15;break}JCa(l);Wq(134176,e)|0;du(134176)|0;d=d+1|0}RYa(j)}if((d|0)==11){u=m;return}else if((d|0)==15){m=Ia()|0;JCa(l);Ua(m|0)}}function cn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,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=u;u=u+16|0;p=r+8|0;q=r;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121963);r=x;x=0;if(r&1){r=Ia()|0;La(c|0);Ua(r|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}o=n8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)ubb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;d=f[e>>2]|0;if(d|0){c=f[d+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(!o){if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0}else c=c&n;f[(f[a>>2]|0)+(c<<2)>>2]=e;l=p+4|0;m=q+4|0;while(1){k=d;b:while(1){while(1){d=f[k>>2]|0;if(!d)break a;e=f[d+4>>2]|0;if(!o){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&n;if((e|0)==(c|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;g=d+8|0;j=d;while(1){h=f[j>>2]|0;if(!h){i=30;break}UUa(p,g);UUa(q,h+8|0);if(!(MAa(f[p>>2]|0,f[l>>2]|0,f[q>>2]|0,f[m>>2]|0)|0)){i=32;break}j=f[j>>2]|0}if((i|0)==30){h=j;g=0}else if((i|0)==32){h=j;g=f[j>>2]|0}f[k>>2]=g;f[h>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=d}k=d}f[g>>2]=k;c=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)ubb(c);f[d>>2]=0}while(0);u=r;return}function dn(a,b){a=a|0;b=b|0;a:do switch(a|0){case 1:do switch(b|0){case 1:{a=0;break a}case 2:{a=1;break a}case 3:{a=2;break a}case 4:{a=4;break a}case 5:{a=3;break a}case 7:{a=6;break a}case 8:{a=5;break a}case 9:{a=10;break a}case 10:{a=11;break a}case 11:{a=12;break a}case 12:{a=7;break a}case 13:{a=8;break a}case 14:{a=9;break a}case 15:{a=15;break a}case 16:{a=16;break a}default:{a=76;break a}}while(0);case 2:do switch(b|0){case 1:{a=25;break a}case 2:{a=26;break a}case 3:{a=27;break a}case 4:{a=29;break a}case 5:{a=28;break a}case 7:{a=31;break a}case 8:{a=30;break a}case 9:{a=35;break a}case 10:{a=36;break a}case 11:{a=37;break a}case 12:{a=32;break a}case 13:{a=33;break a}case 14:{a=34;break a}case 15:{a=40;break a}case 16:{a=41;break a}default:{a=76;break a}}while(0);case 3:switch(b|0){case 1:{a=50;break a}case 2:{a=51;break a}case 3:{a=52;break a}case 4:{a=53;break a}case 5:{a=53;break a}case 15:{a=57;break a}case 16:{a=58;break a}default:{a=76;break a}}case 4:switch(b|0){case 1:{a=63;break a}case 2:{a=64;break a}case 3:{a=65;break a}case 4:{a=66;break a}case 5:{a=66;break a}case 15:{a=70;break a}case 16:{a=71;break a}default:{a=76;break a}}default:a=76}while(0);return a|0}function en(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+48|0;l=o+32|0;g=o+24|0;h=o+16|0;j=o+8|0;m=o;az(d);i=f[d>>2]|0;k=b[i>>0]|0;a:do switch(k<<24>>24){case 40:{mTa(g,Yw(a,IY(c)|0,d)|0);f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];g=pd(a,l,d,e)|0;break}case 91:{mTa(h,gD(a,IY(c)|0,d)|0);f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];g=pd(a,l,d,e)|0;break}case 58:{k=f[a+4>>2]|0;if((f[k+-8>>2]|0)!=(f[k+-12>>2]|0)){g=IY(c)|0;n=12;break a}f[d>>2]=i+1;az(d);f4a(l,0);if((b[f[d>>2]>>0]|0)==123)g=JO(a,d)|0;else g=Rm(a,d,e)|0;g=KX(f[c>>2]|0,g)|0;break}default:{g=IY(c)|0;if(k<<24>>24==46){mTa(j,OT(g,d)|0);f[l>>2]=f[j>>2];f[l+4>>2]=f[j+4>>2];g=pd(a,l,d,e)|0}else n=12}}while(0);if((n|0)==12){mTa(m,g);f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];g=pd(a,l,d,e)|0}u=o;return g|0}function fn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k;i=a+72|0;do if(b[i>>0]|0){e=yCa(134176,87126)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){JCa(j);Wq(e,d)|0;du(e)|0;break}k=Ia()|0;JCa(j);Ua(k|0)}while(0);g=f[a+56>>2]|0;h=a+68|0;a=f[a+52>>2]|0;while(1){if((a|0)==(g|0)){c=8;break}if(!(b[i>>0]|0)){e=a;c=a+8|0}else{c=yCa(134176,87135)|0;c=yCa(Am(c,b[f[a>>2]>>0]|0)|0,123344)|0;c=yCa(Am(c,b[(f[a>>2]|0)+1>>0]|0)|0,87150)|0;e=f[h>>2]|0;e=yCa(zm(c,(f[e+4>>2]|0)-(f[e>>2]|0)|0)|0,87155)|0;c=a+8|0;e=zm(e,f[c>>2]|0)|0;ZXa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(l&1){c=13;break}x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;l=x;x=0;if(l&1){c=13;break}JCa(j);Wq(e,d)|0;du(e)|0;e=a}d=f[h>>2]|0;Ix(d,f[c>>2]|0,(f[d+4>>2]|0)-(f[d>>2]|0)|0);d=a+4|0;c=0;while(1){if(c>>>0>=(f[d>>2]|0)>>>0)break;aYa(f[h>>2]|0,b[(f[e>>2]|0)+c>>0]|0)|0;c=c+1|0}a=a+12|0}if((c|0)==8){u=k;return}else if((c|0)==13){l=Ia()|0;JCa(j);Ua(l|0)}}function gn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+96|0;e=i+68|0;k=i+56|0;j=i+12|0;d=i;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;h=b+36|0;_8(k,h);x=0;ta(486,b|0);l=x;x=0;do if(l&1)a=Ia()|0;else{a=a+8|0;while(1){a=f[a>>2]|0;if(!a)break;x=0;ua(73,b|0,f[a+8>>2]|0);l=x;x=0;if(l&1){g=8;break}}if((g|0)==8){a=Ia()|0;break}l=c+20|0;f[e>>2]=f[l>>2];f[e+4>>2]=f[l+4>>2];f[e+8>>2]=f[l+8>>2];f[e+12>>2]=f[l+12>>2];f[e+16>>2]=f[l+16>>2];m3(j,b,e);h4a(j);t_a(j,0);f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;l=h7a(109908)|0;x=0;va(87,d|0,109908,l|0);l=x;x=0;do if(!(l&1)){x=0;ua(80,j|0,d|0);l=x;x=0;if(l&1){a=Ia()|0;HTa(d);break}HTa(d);x=0;ta(434,j|0);l=x;x=0;if(!(l&1)?(x=0,ta(438,j|0),l=x,x=0,!(l&1)):0){c=f[b+40>>2]|0;a=f[h>>2]|0;while(1){if((a|0)==(c|0))break;f[a>>2]=0;a=a+4|0}_8(k,h);x=0;ta(486,b|0);l=x;x=0;if(!(l&1)){Tca(j);C1(k);u=i;return}else g=15}else g=15}else g=15;while(0);if((g|0)==15)a=Ia()|0;Tca(j)}while(0);C1(k);Ua(a|0)}function hn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=h+8|0;f[e>>2]=b;f[g>>2]=e;f[g+4>>2]=134008;Nha(g);zma(xm(zma(134008,91)|0,a)|0,32)|0;switch(f[a>>2]|0){case 0:{xm(zma(yCa(yCa(134008,75978)|0,Aha(f[a+4>>2]|0)|0)|0,32)|0,a)|0;c=10;break}case 1:{yCa(134008,75983)|0;jw(f[a+4>>2]|0,134008,1,0)|0;c=10;break}case 2:{zm(yCa(134008,75989)|0,f[a+4>>2]|0)|0;c=10;break}case 3:{zm(yCa(134008,75994)|0,f[a+4>>2]|0)|0;c=10;break}case 4:{yCa(zm(yCa(134008,76e3)|0,(f[a+16>>2]|0)-(f[a+12>>2]|0)>>2)|0,76008)|0;break}case 5:{yCa(134008,76018)|0;c=10;break}case 6:{yCa(134008,76023)|0;c=10;break}default:hb()}if((c|0)==10){c=a+12|0;b=a+16|0;if((f[c>>2]|0)!=(f[b>>2]|0)){zma(134008,10)|0;d=f[b>>2]|0;b=f[c>>2]|0;while(1){if((b|0)==(d|0))break;hn(f[b>>2]|0,(f[e>>2]|0)+1|0);b=b+4|0}Nha(g)}g=yCa(134008,76027)|0;yCa(xm(g,f[a+8>>2]|0)|0,87602)|0}u=h;return}function jn(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=X6a(b[h>>0]|0)|0;if($1a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0))g=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else g=X6a(b[g>>0]|0)|0;if(!($1a(g,-1)|0))if(h){i=c;j=16}else j=15;else j=13}else j=13;if((j|0)==13)if(h)j=15;else{i=0;j=16}do if((j|0)==15)f[d>>2]=f[d>>2]|6;else if((j|0)==16){g=f[a>>2]|0;h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=X6a(b[h>>0]|0)|0;if((ec[f[(f[e>>2]|0)+36>>2]&127](e,g&255,0)|0)<<24>>24!=37){f[d>>2]=f[d>>2]|4;break}g=f[a>>2]|0;h=g+12|0;c=f[h>>2]|0;if((c|0)==(f[g+16>>2]|0)){bc[f[(f[g>>2]|0)+40>>2]&511](g)|0;g=f[a>>2]|0;if(!g)h=1;else j=24}else{f[h>>2]=c+1;j=24}do if((j|0)==24){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=X6a(b[h>>0]|0)|0;if($1a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}while(0);if(i){g=f[i+12>>2]|0;if((g|0)==(f[i+16>>2]|0))g=bc[f[(f[i>>2]|0)+36>>2]&511](i)|0;else g=X6a(b[g>>0]|0)|0;if(!($1a(g,-1)|0)){if(h)break}else j=35}else j=35;if((j|0)==35?!h:0)break;f[d>>2]=f[d>>2]|2}while(0);return}function kn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+352|0;m=v+320|0;l=v+304|0;i=v+296|0;h=v+280|0;k=v+272|0;q=v+240|0;n=v+340|0;g=v;t=v+336|0;r=v+332|0;s=v+328|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=RI(k+1|0,119974,f[o>>2]|0)|0;f[n>>2]=q;a=fOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Cga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Cga(q,30,a,k,i)|0}do if((a|0)>29){a=fOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Bja(n,a,k,l)|0}else{p[m>>3]=e;a=Bja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=yS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<3)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){ZXa(s,c);x=0;za(7,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;JCa(s)}else{JCa(s);x=0;a=oa(47,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0}function ln(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+352|0;m=v+320|0;l=v+304|0;i=v+296|0;h=v+280|0;k=v+272|0;q=v+240|0;n=v+340|0;g=v;t=v+336|0;r=v+332|0;s=v+328|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=RI(k+1|0,135337,f[o>>2]|0)|0;f[n>>2]=q;a=fOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Cga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Cga(q,30,a,k,i)|0}do if((a|0)>29){a=fOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Bja(n,a,k,l)|0}else{p[m>>3]=e;a=Bja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=yS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<3)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){ZXa(s,c);x=0;za(7,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;JCa(s)}else{JCa(s);x=0;a=oa(47,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0}function mn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+176|0;m=v+144|0;l=v+128|0;i=v+120|0;h=v+104|0;k=v+96|0;q=v+64|0;n=v+164|0;g=v;t=v+160|0;r=v+156|0;s=v+152|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=RI(k+1|0,119974,f[o>>2]|0)|0;f[n>>2]=q;a=fOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Cga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Cga(q,30,a,k,i)|0}do if((a|0)>29){a=fOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Bja(n,a,k,l)|0}else{p[m>>3]=e;a=Bja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=yS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<1)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){ZXa(s,c);x=0;za(5,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;JCa(s)}else{JCa(s);x=0;a=oa(39,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0}function nn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+176|0;m=v+144|0;l=v+128|0;i=v+120|0;h=v+104|0;k=v+96|0;q=v+64|0;n=v+164|0;g=v;t=v+160|0;r=v+156|0;s=v+152|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=RI(k+1|0,135337,f[o>>2]|0)|0;f[n>>2]=q;a=fOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Cga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Cga(q,30,a,k,i)|0}do if((a|0)>29){a=fOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Bja(n,a,k,l)|0}else{p[m>>3]=e;a=Bja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=yS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<1)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){ZXa(s,c);x=0;za(5,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;JCa(s)}else{JCa(s);x=0;a=oa(39,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0} -function Us(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+80|0;h=k+40|0;i=k+60|0;d=k;j=k+24|0;g=k+56|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;wa(77,d|0,b|0,c+8|0,i|0);e=x;x=0;do if(!(e&1)){if(D0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else{b=f[b+4>>2]|0;d=f[b+36>>2]|0;e=f[(f[d>>2]|0)+8>>2]|0;b=f[b>>2]|0;f[g>>2]=f[c+24>>2];x=0;f[h>>2]=f[g>>2];b=ia(74,b|0,h|0)|0;g=x;x=0;if(g&1)break;x=0;wa(e|0,j|0,d|0,b|0,i|0);g=x;x=0;if(g&1)break;f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];rAa(a,h)}uSa(i);u=k;return}while(0);k=Ia()|0;uSa(i);Ua(k|0)}function Vs(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;TYa(a);h=a+12|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[a+28>>2]=1065353216;i=a+32|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[a+48>>2]=1065353216;j=a+52|0;f[j>>2]=0;f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=c;f[a+68>>2]=d;b[a+72>>0]=e&1;b[a+73>>0]=1;c=a+76|0;g=a+80|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;c=0;while(1){if((c|0)==3)break;f[g+(c<<2)>>2]=0;c=c+1|0}e=a+92|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[e+(c<<2)>>2]=0;c=c+1|0}c=a+104|0;SGa(c);d=a+132|0;f[d>>2]=0;f[a+136>>2]=0;f[a+140>>2]=0;x=0;ta(479,a|0);k=x;x=0;if(k&1){k=Ia()|0;uSa(d);Nya(c);HTa(e);HTa(g);uSa(j);NQa(i);NQa(h);_$a(a);Ua(k|0)}else return}function Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Iab(c)|0)){J_a();x=0;ia(52,i+13|0,93963)|0;k=x;x=0;if(k&1){Ia()|0;gCa()}else gCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(bna(a,j)|0){J_a();x=0;ia(52,g|0,93993)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)gCa();Ia()|0;gCa()}c=b;f[j>>2]=c;d=a+52|0;e=f[d>>2]|0;do if(e>>>0<(f[a+56>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(1880,a+48|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;ubb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0)ubb(d);Ua(c|0)}while(0);k=vZ(a+220|0,b)|0;f[k>>2]=b;u=i;return}function Xs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Iab(c)|0)){J_a();x=0;ia(52,i+13|0,93758)|0;k=x;x=0;if(k&1){Ia()|0;gCa()}else gCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(cna(a,j)|0){J_a();x=0;ia(52,g|0,93788)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)gCa();Ia()|0;gCa()}c=b;f[j>>2]=c;d=a+28|0;e=f[d>>2]|0;do if(e>>>0<(f[a+32>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(1879,a+24|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;ubb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0)ubb(d);Ua(c|0)}while(0);k=vZ(a+196|0,b)|0;f[k>>2]=b;u=i;return}function Ys(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Iab(c)|0)){J_a();x=0;ia(52,i+13|0,71914)|0;k=x;x=0;if(k&1){Ia()|0;gCa()}else gCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(ana(a,j)|0){J_a();x=0;ia(52,g|0,71944)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)gCa();Ia()|0;gCa()}c=b;f[j>>2]=c;d=a+16|0;e=f[d>>2]|0;do if(e>>>0<(f[a+20>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(465,a+12|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;ubb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0)ubb(d);Ua(c|0)}while(0);k=vZ(a+184|0,b)|0;f[k>>2]=b;u=i;return}function Zs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+80|0;d=h+48|0;e=h+24|0;g=h;mz(d,b,f[c+8>>2]|0);if(!(D0a(d)|0)){mz(e,b,f[c+12>>2]|0);if(!(D0a(e)|0)){mz(g,b,f[c+16>>2]|0);if(D0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{g=(ORa(g)|0)==0;g=g?e:d;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=h;return}function _s(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+64|0;c=j+16|0;d=j+56|0;e=j+60|0;i=j+44|0;g=j+32|0;h=j;do if((f[b+4>>2]|0)!=5){k=f[a+36>>2]|0;Bbb(k)|0;U0a(d,k);k=Yj(b)|0;f[e>>2]=k;f[g>>2]=f[b+24>>2];m$a(h,Bbb(f[b+12>>2]|0)|0);f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];h=a0(d,c)|0;f[g+4>>2]=h;f[g+8>>2]=f[b+28>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,3);h=x;x=0;if(h&1){k=Ia()|0;uSa(i);Ua(k|0)}mda(i,g,g+12|0);x=0;f[c>>2]=f[e>>2];c=ka(13,d|0,c|0,i|0,0)|0;k=x;x=0;if(k&1){k=Ia()|0;uSa(i);Ua(k|0)}else{BVa(f[a+16>>2]|0,c)|0;uSa(i);break}}while(0);u=j;return}function $s(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=yCa(134176,110925)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;LOa(i)|0;RYa(i)}m=Ev(f[a+28>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];f4a(j,V1(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function at(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;h=l;tW(a,(((f[a+4>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);j=R5()|0;e=h+12|0;g=h+8|0;a:while(1){az(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 0:{k=3;break a}case 125:{i=d;break a}default:{}}Dh(h,d);if((f[e>>2]&-2|0)!=2){k=5;break}f[c>>2]=(f[c>>2]|0)+(f[g>>2]|0);az(c);d=f[c>>2]|0;if((b[d>>0]|0)!=58){k=7;break}f[c>>2]=d+1;d=Rm(a,c,66819)|0;rO(j,f[h>>2]|0,d);az(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 125:{k=11;break a}case 44:break;default:{k=10;break a}}f[c>>2]=d+1}if((k|0)==3)Ca(66707,65740,701,66763);else if((k|0)==5)Ca(66779,65740,704,66763);else if((k|0)==7)Ca(66250,65740,707,66763);else if((k|0)==10)hb();else if((k|0)==11)i=d;f[c>>2]=i+1;u=l;return j|0}function bt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110732)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=c+12|0;Tpa(a,f[j>>2]|0);if(((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,Tpa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)?(j=c+20|0,Tpa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)DS(a,c);u=i;return}function ct(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110775)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=c+20|0;Tpa(a,f[j>>2]|0);do if((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+24|0,Tpa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)if((f[c+4>>2]|0)==5){CM(a);break}else{DS(a,c);break}while(0);u=i;return}function dt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;d=fqa(a+40|0,f[h>>2]|0)|0;do if(d|0){g=a+24|0;c=-1;d=d+8|0;while(1){d=f[d>>2]|0;if(!d)break;e=f[d+8>>2]|0;if(!((c|0)!=-1?(i=W7(f[f[g>>2]>>2]|0,f[h>>2]|0,e)|0,i>>>0<=(W7(f[f[g>>2]>>2]|0,f[h>>2]|0,c)|0)>>>0):0))c=e}if((c|0)==-1)Ca(76779,76797,729,76829);d=f[h>>2]|0;if((c|0)!=(d|0)?(e=W7(f[f[g>>2]>>2]|0,d,c)|0,i=f[h>>2]|0,e>>>0>(W7(f[f[g>>2]>>2]|0,i,i)|0)>>>0):0){d=f[f[g>>2]>>2]|0;e=d+(c<<2)|0;f[e>>2]=(f[e>>2]|0)+1;d=d+(f[h>>2]<<2)|0;e=f[d>>2]|0;if(!e)Ca(76843,76797,736,76829);else{f[d>>2]=e+-1;f[h>>2]=c;b[a+36>>0]=1;break}}}while(0);return}function et(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=yCa(134176,110945)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;LOa(i)|0;RYa(i)}m=Ev(f[a+28>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];f4a(j,V1(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function ft(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+80|0;d=i+64|0;e=i+40|0;g=i+16|0;h=i;Mu(e,b,f[c+12>>2]|0);if(!(D0a(e)|0)){Mu(g,b,f[c+16>>2]|0);if(D0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{m$a(h,0);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];rAa(a,d)}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}u=i;return}function gt(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=c+144;U0a(a+8|0,c);f[a+12>>2]=0;yUa(a+16|0);f[a+28>>2]=d;b[a+32>>0]=0;f[a+36>>2]=2;mja(a+40|0,2,c,1);d=a+76|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];b[a+96>>0]=1;b[a+97>>0]=0;b[a+98>>0]=0;yUa(a+100|0);yUa(a+112|0);Kab(a+124|0);Kab(a+128|0);Kab(a+132|0);Kab(a+136|0);Kab(a+140|0);Kab(a+144|0);Kab(a+148|0);Kab(a+152|0);Kab(a+156|0);Kab(a+160|0);Kab(a+164|0);Kab(a+168|0);Kab(a+172|0);Kab(a+176|0);Kab(a+180|0);Kab(a+184|0);Kab(a+188|0);Kab(a+192|0);Kab(a+196|0);Kab(a+200|0);Kab(a+204|0);Kab(a+208|0);yUa(a+212|0);yUa(a+224|0);return}function ht(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=a+8|0;ps(a,a+4|0,c)|0;h=a+12|0;while(1){if((h|0)==(b|0))break;i=f[h>>2]|0;g=i+16|0;if(S2(+p[g>>3],+p[(f[c>>2]|0)+16>>3])|0){f[h>>2]=0;d=h;while(1){j=f[c>>2]|0;f[c>>2]=0;e=f[d>>2]|0;f[d>>2]=j;if(e|0){uSa(e);ubb(e)}if((c|0)==(a|0)){c=a;break}d=c+-4|0;if(S2(+p[g>>3],+p[(f[d>>2]|0)+16>>3])|0){j=c;c=d;d=j}else break}d=f[c>>2]|0;f[c>>2]=i;if(d|0){uSa(d);ubb(d)}}c=h;h=h+4|0}return}function it(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+4|0;i=f[k>>2]|0;j=f[a>>2]|0;g=j;do if((i|0)==(j|0)){j=a+8|0;h=f[j>>2]|0;d=a+12|0;m=f[d>>2]|0;c=m;if(h>>>0>=m>>>0){c=c-g|0;c=(c|0)==0?1:c>>1;gO(e,c,(c+3|0)>>>2,f[a+16>>2]|0);F8(e,f[k>>2]|0,f[j>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=m;Cja(e);c=f[k>>2]|0;break}a=h;e=((c-a>>2)+1|0)/2|0;d=h+(e<<2)|0;a=a-i|0;c=d+(0-(a>>2)<<2)|0;if(!a){c=d;a=d}else{fia(c|0,i|0,a|0)|0;a=(f[j>>2]|0)+(e<<2)|0}f[k>>2]=c;f[j>>2]=a}else c=i;while(0);f[c+-4>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+-4;u=l;return}function jt(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0;l=u;u=u+16|0;m=l+4|0;k=l;f[m>>2]=0;c=m+4|0;f[c>>2]=0;f[m+8>>2]=0;x=0;wa(154,f[a>>2]|0,b|0,m|0,k|0);j=x;x=0;do if(j&1)c=Ia()|0;else{e=f[m>>2]|0;j=f[c>>2]|0;a:do if((e|0)==(j|0))c=e;else{c=e;i=e;g=e;while(1){e=i+4|0;if((e|0)==(j|0))break a;n=(f[g>>2]|0)>>>0<(f[e>>2]|0)>>>0;c=n?e:c;i=e;g=n?e:g}}while(0);e=f[c>>2]|0;g=f[(f[a>>2]|0)+132>>2]|0;if(g>>>0>>0){x=0;wa(71,115435,115382,436,115465);x=0;c=Ia()|0;break}h=1.0/(+(g>>>0)*2.0);c=0;d=+((g-e|0)>>>0);while(1){if((c|0)==(g|0))break;o=(f[(f[b>>2]|0)+(c<<2)>>2]|0)==(c|0)?h+d:d;c=c+1|0;d=o}CRa(b,d*100.0+ +((f[k>>2]|0)>>>0));uSa(m);u=l;return}while(0);uSa(m);Ua(c|0)}function kt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+8|0;g=l;gY(d,Bbb(f[c+4>>2]|0)|0);I$a(k,c);GUa(g,c);i=d+4|0;j=d+8|0;c=k+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;while(1){if(!(lTa(f[k>>2]|0,f[c>>2]|0,e,g)|0)){c=9;break}h=LOa(k)|0;Mu(a,b,f[h>>2]|0);if(D0a(a)|0){c=8;break}h=f[i>>2]|0;if((h|0)==(f[j>>2]|0))FE(d,a);else{f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];f[i>>2]=(f[i>>2]|0)+16}RYa(k)}if((c|0)!=8)if((c|0)==9)M0a(a);u=l;return}function lt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+4|0;i=f[k>>2]|0;j=f[a>>2]|0;g=j;do if((i|0)==(j|0)){j=a+8|0;h=f[j>>2]|0;d=a+12|0;m=f[d>>2]|0;c=m;if(h>>>0>=m>>>0){c=c-g|0;c=(c|0)==0?1:c>>1;gO(e,c,(c+3|0)>>>2,a+12|0);F8(e,f[k>>2]|0,f[j>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=m;Cja(e);c=f[k>>2]|0;break}a=h;e=((c-a>>2)+1|0)/2|0;d=h+(e<<2)|0;a=a-i|0;c=d+(0-(a>>2)<<2)|0;if(!a){c=d;a=d}else{fia(c|0,i|0,a|0)|0;a=(f[j>>2]|0)+(e<<2)|0}f[k>>2]=c;f[j>>2]=a}else c=i;while(0);f[c+-4>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+-4;u=l;return}function mt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110646)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+8>>2]|0);Tpa(a,f[c+12>>2]|0);Tpa(a,f[c+16>>2]|0);if((f[c+4>>2]|0)==5)CM(a);else DS(a,c);u=i;return}function nt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+1040|0;l=p;n=p+1024|0;g=f[b>>2]|0;f[n>>2]=g;o=(a|0)!=0;h=o?d:256;i=o?a:l;d=g;a:do if((h|0)!=0&(g|0)!=0){a=0;j=c;k=i;while(1){i=j>>>2;c=i>>>0>=h>>>0;if(!(j>>>0>131|c)){c=j;i=k;break a}d=c?h:i;c=j-d|0;d=ai(k,n,d,e)|0;if((d|0)==-1)break;i=(k|0)==(l|0);h=h-(i?0:d)|0;i=i?k:k+(d<<2)|0;a=d+a|0;d=f[n>>2]|0;g=d;if((h|0)!=0&(d|0)!=0){j=c;k=i}else break a}g=f[n>>2]|0;a=-1;i=k;h=0;d=g}else a=0;while(0);b:do if((d|0)!=0?(h|0)!=0&(c|0)!=0:0){while(1){g=ot(i,d,c,e)|0;if((g+2|0)>>>0<3)break;d=d+g|0;c=c-g|0;h=h+-1|0;a=a+1|0;if(!((h|0)!=0&(c|0)!=0)){m=15;break}else i=i+4|0}if((m|0)==15){f[n>>2]=d;break}f[n>>2]=d;switch(g|0){case -1:{a=-1;break b}case 0:{f[n>>2]=0;d=0;break b}default:{f[e>>2]=0;break b}}}else d=g;while(0);if(o)f[b>>2]=d;u=p;return a|0}function ot(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;j=(e|0)==0?133808:e;e=f[j>>2]|0;a:do if(!c)if(!e)e=0;else k=19;else{i=(a|0)==0?g:a;if(!d)e=-2;else{if(!e){e=b[c>>0]|0;if(e<<24>>24>-1){f[i>>2]=e&255;e=e<<24>>24!=0&1;break}if(!(f[f[11692]>>2]|0)){f[i>>2]=e<<24>>24&57343;e=1;break}e=(e&255)+-194|0;if(e>>>0>50){k=19;break}e=f[23968+(e<<2)>>2]|0;g=d+-1|0;if(g){c=c+1|0;k=11}}else{g=d;k=11}b:do if((k|0)==11){a=h[c>>0]|0;m=a>>>3;if((m+-16|m+(e>>26))>>>0>7){k=19;break a}e=a+-128|e<<6;a=g+-1|0;if((e|0)<0)do{c=c+1|0;if(!a)break b;g=b[c>>0]|0;if((g&-64)<<24>>24!=-128){k=19;break a}e=(g&255)+-128|e<<6;a=a+-1|0}while((e|0)<0);f[j>>2]=0;f[i>>2]=e;e=d-a|0;break a}while(0);f[j>>2]=e;e=-2}}while(0);if((k|0)==19){f[j>>2]=0;f[33448]=84;e=-1}u=l;return e|0}function pt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+64|0;d=i+40|0;e=i+16|0;g=i;h=i+56|0;Mu(e,b,f[c+24>>2]|0);if(D0a(e)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}else{b=b+4|0;j=f[b>>2]|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];j=Bu(j,c,d)|0;e=f[(f[b>>2]|0)+36>>2]|0;b=f[(f[e>>2]|0)+24>>2]|0;f[h>>2]=j;f[d>>2]=f[h>>2];rc[b&255](g,e,c,d);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];rAa(a,d)}u=i;return}function qt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;i=j+24|0;d=j;M0a(a);yXa(i);e=f[c+32>>2]|0;if(e){mz(d,b,e);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];if(!(D0a(a)|0)){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];h=a;g=5}}else{h=a;g=5}if((g|0)==5?(mz(d,b,f[c+28>>2]|0),f[h>>2]=f[d>>2],f[h+4>>2]=f[d+4>>2],f[h+8>>2]=f[d+8>>2],f[h+12>>2]=f[d+12>>2],f[h+16>>2]=f[d+16>>2],!(D0a(a)|0)):0){d=Eia(a)|0;g=I;b=f[c+24>>2]|0;if((g|0)>-1|(g|0)==-1&d>>>0>4294967295?(Bbb(f[c+12>>2]|0)|0)>>>0>d>>>0:0){b=JDa(c+8|0,d)|0;b=f[b>>2]|0}f[a+16>>2]=b;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2]}u=j;return}function rt(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+64|0;g=i+48|0;e=i;c=i+44|0;b=f[a+8>>2]|0;do if(Iab(b)|0){f[c>>2]=b;f[g>>2]=f[c>>2];zT(e,a,g);h=p$(f[e+32>>2]|0,f[e+36>>2]|0)|0;f[a+4>>2]=h;x=0;va(102,a|0,0,0);h=x;x=0;if(h&1){i=Ia()|0;fWa(e);Ua(i|0)}else{fWa(e);break}}else{b=a+12|0;if(!(Bbb(f[a+16>>2]|0)|0)){f[a+4>>2]=0;break}c=MCa(b)|0;c=f[(f[c>>2]|0)+4>>2]|0;d=a+4|0;f[d>>2]=c;if(!(o2a(c)|0|(c|0)==5)){I$a(g,b);GUa(e,b);a=g+4|0;c=f[e>>2]|0;b=f[e+4>>2]|0;while(1){if(!(lTa(f[g>>2]|0,f[a>>2]|0,c,b)|0))break;e=LOa(g)|0;if((f[(f[e>>2]|0)+4>>2]|0)==5){h=7;break}RYa(g)}if((h|0)==7)f[d>>2]=5;u=i;return}}while(0);u=i;return}function st(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+96|0;h=k+4|0;e=k;g=a+12|0;d=a+16|0;c=f[d>>2]|0;do if((Bbb(c)|0)==1){c=JDa(g,0)|0;c=f[c>>2]|0;f[e>>2]=f[a+8>>2];f[h>>2]=f[e>>2];if(MM(c,h)|0){c=f[d>>2]|0;j=10;break}e=JDa(g,0)|0;e=f[e>>2]|0;fA(h,_Ya(f[b+40>>2]|0)|0,e);g=lza(h)|0;V7(h);d=f[e+4>>2]|0;if(!g?!(o2a(d)|0):0){i=f[b+36>>2]|0;Bbb(i)|0;U0a(h,i);i=vu(h,a)|0;break}c=f[a+4>>2]|0;if((c|0)!=(d|0))if((o2a(c)|0)&(d|0)==5)j=12;else Ca(71202,71264,47,71287);else i=e}else j=10;while(0);if((j|0)==10)if(!(Bbb(c)|0)){eUa(a)|0;j=12}else j=12;if((j|0)==12)i=a;u=k;return i|0}function tt(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;e=u;u=u+16|0;g=e;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[g+(c<<2)>>2]=0;c=c+1|0}d=b[h+11>>0]|0;i=d<<24>>24<0;c=i?f[h>>2]|0:h;d=c+(i?f[h+4>>2]|0:d&255)|0;while(1){if(c>>>0>=d>>>0){d=9;break}x=0;ua(82,g|0,b[c>>0]|0);i=x;x=0;if(i&1){d=8;break}c=c+1|0}do if((d|0)==8)c=Ia()|0;else if((d|0)==9){c=(b[g+11>>0]|0)<0?f[g>>2]|0:g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}d=c+(bV(Bbb(c)|0)|0)|0;while(1){if(c>>>0>=d>>>0){d=17;break}x=0;ua(82,a|0,b[c>>0]|0);i=x;x=0;if(i&1){d=16;break}c=c+1|0}if((d|0)==16){c=Ia()|0;HTa(a);break}else if((d|0)==17){HTa(g);u=e;return}}while(0);HTa(g);Ua(c|0)}function ut(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+8|0;c=f[k>>2]|0;g=a+12|0;j=f[g>>2]|0;h=j;do if((c|0)==(j|0)){j=a+4|0;i=f[j>>2]|0;m=f[a>>2]|0;d=m;if(i>>>0<=m>>>0){c=h-d|0;c=(c|0)==0?1:c>>1;gO(e,c,c>>>2,f[a+16>>2]|0);F8(e,f[j>>2]|0,f[k>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=m;Cja(e);c=f[k>>2]|0;break}m=i;a=((m-d>>2)+1|0)/-2|0;e=i+(a<<2)|0;d=c-m|0;if(!d)c=e;else{fia(e|0,i|0,d|0)|0;c=(f[j>>2]|0)+(a<<2)|0}m=e+(d>>2<<2)|0;f[k>>2]=m;f[j>>2]=c;c=m}while(0);f[c>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+4;u=l;return}function vt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j+8|0;h=j;do if(b[a+33>>0]|0){g=yCa(134176,110925)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(g,e)|0;du(g)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);g=c+8|0;I$a(i,g);GUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;k=LOa(i)|0;Tpa(a,f[k>>2]|0);RYa(i)}DS(a,c);u=j;return}function wt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=b+12|0;e=f[(f[d>>2]|0)+4>>2]|0;if((e|0)!=5?(c=f[(f[b+16>>2]|0)+4>>2]|0,(c|0)!=5):0)wma(a,e,c,b);switch(f[b+8>>2]|0){case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 5:case 4:case 3:case 2:case 1:case 0:{Sca(a,f[(f[d>>2]|0)+4>>2]|0,1,b,82840);break}case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 39:case 38:case 37:case 36:case 35:case 34:case 33:case 32:case 31:case 30:case 29:case 28:case 27:case 26:case 25:{Sca(a,f[(f[d>>2]|0)+4>>2]|0,2,b,82847);break}case 62:case 61:case 60:case 59:case 58:case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:{Sca(a,f[(f[d>>2]|0)+4>>2]|0,3,b,82854);break}case 75:case 74:case 73:case 72:case 71:case 70:case 69:case 68:case 67:case 66:case 65:case 64:case 63:{Sca(a,f[(f[d>>2]|0)+4>>2]|0,4,b,82861);break}default:hb()}return}function xt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;h=f[b>>2]|0;g=Iab(h)|0;i=f[c>>2]|0;d=g^(Iab(i)|0);if(d|g^1)d=d^1;else{g=f[a>>2]|0;d=g+4|0;e=f[d>>2]|0;if((e|0)==(f[g+8>>2]|0))IL(g,b);else{f[e>>2]=h;f[d>>2]=(f[d>>2]|0)+4}d=WW(f[a+4>>2]|0,b)|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))IL(d,c);else{f[g>>2]=i;f[e>>2]=(f[e>>2]|0)+4}d=f[a+8>>2]|0;h=a+12|0;e=f[h>>2]|0;f[j>>2]=e;g=d+4|0;b=f[g>>2]|0;if(b>>>0<(f[d+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=(f[g>>2]|0)+4}else IL(d,j);b=f[a+16>>2]|0;d=f[h>>2]|0;f[j>>2]=d;e=b+4|0;g=f[e>>2]|0;if(g>>>0<(f[b+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else IL(b,j);d=1}u=k;return d|0}function yt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l+4|0;j=l;do if(b[a+33>>0]|0){h=yCa(134176,110602)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}m=Ia()|0;JCa(g);Ua(m|0)}while(0);d=c+8|0;switch(f[d>>2]|0){case 1:{k=9;break}case 2:{k=8;break}default:hb()}a:do if((k|0)==8){JDa(c+16|0,0)|0;switch(f[d>>2]|0){case 1:{k=9;break a}case 2:{i=a+28|0;Ev(f[i>>2]|0,64)|0;break a}default:hb()}}while(0);if((k|0)==9){i=a+28|0;Ev(f[i>>2]|0,63)|0}m=f[i>>2]|0;f4a(j,0);Yr(m,f[j>>2]|0)|0;u=l;return}function zt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;g=f[c+8>>2]|0;Mu(e,b,f[c+12>>2]|0);do if(!(D0a(e)|0)){d=c+4|0;c=f[d>>2]|0;if(Iab(c)|0?(f[e>>2]|0)!=(c|0):0)Ca(58155,101307,798,101975);g=(f[f[b+8>>2]>>2]|0)+(g<<4)|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];if(Iab(f[d>>2]|0)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2];break}else{M0a(a);break}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}while(0);u=h;return}function At(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;e=i+20|0;d=i+16|0;g=i+12|0;j=i;h=fTa(f[a+4>>2]|0)|0;c=Zx(a,Or(b,1)|0)|0;f[h+8>>2]=c;a=f[a>>2]|0;f[d>>2]=c;f[e>>2]=f[d>>2];d=bna(a,e)|0;do if(!d){f[g>>2]=c;f[e>>2]=f[g>>2];a=ana(a,e)|0;if(a|0?(f[a+12>>2]|0)==3:0){a=a+20|0;break}d=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=h7a(92607)|0;x=0;va(87,j|0,92607,i|0);i=x;x=0;if(!(i&1)){x=0;wa(138,d|0,j|0,f[b+28>>2]|0,f[b+32>>2]|0);i=x;x=0;if(i&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;HTa(j);if(c)k=11}else{a=Ia()|0;k=11}if((k|0)==11)La(d|0);Ua(a|0)}else a=d+4|0;while(0);f[h+4>>2]=f[a>>2];u=i;return h|0}function Bt(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;f[d>>2]=a;f[h>>2]=e;a=f[d>>2]|0;a:while(1){if(a>>>0>=c>>>0){a=0;break}i=f[a>>2]|0;if(i>>>0>1114111|(i&-2048|0)==55296){a=2;break}do if(i>>>0>=128){if(i>>>0<2048){a=f[h>>2]|0;if((g-a|0)<2){a=1;break a}f[h>>2]=a+1;b[a>>0]=i>>>6|192;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i&63|128;break}a=f[h>>2]|0;e=g-a|0;if(i>>>0<65536){if((e|0)<3){a=1;break a}f[h>>2]=a+1;b[a>>0]=i>>>12|224;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i>>>6&63|128;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i&63|128;break}else{if((e|0)<4){a=1;break a}f[h>>2]=a+1;b[a>>0]=i>>>18|240;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i>>>12&63|128;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i>>>6&63|128;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i&63|128;break}}else{a=f[h>>2]|0;if((g-a|0)<1){a=1;break a}f[h>>2]=a+1;b[a>>0]=i}while(0);a=(f[d>>2]|0)+4|0;f[d>>2]=a}return a|0}function Ct(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;k=m+16|0;n=m+4|0;l=m;f[n>>2]=0;h=n+4|0;f[h>>2]=0;i=n+8|0;f[i>>2]=0;j=b+16|0;g=b+20|0;e=0;while(1){if(e>>>0>=(Bbb(f[g>>2]|0)|0)>>>0){d=3;break}x=0;c=ia(75,j|0,e|0)|0;d=x;x=0;if(d&1){d=10;break}x=0;c=ia(158,a|0,f[c>>2]|0)|0;d=x;x=0;if(d&1){d=10;break}f[k>>2]=c;d=f[h>>2]|0;if(d>>>0>=(f[i>>2]|0)>>>0){x=0;ua(1835,n|0,k|0);d=x;x=0;if(d&1){d=10;break}}else{f[d>>2]=c;f[h>>2]=(f[h>>2]|0)+4}e=e+1|0}do if((d|0)==3){c=f[b+8>>2]|0;f[l>>2]=f[b+12>>2];b=f[a+32>>2]|0;x=0;f[k>>2]=f[l>>2];c=ka(19,b|0,c|0,k|0,n|0)|0;l=x;x=0;if(l&1){c=Ia()|0;break}else{uSa(n);u=m;return c|0}}else if((d|0)==10)c=Ia()|0;while(0);uSa(n);Ua(c|0);return 0}function Dt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+8|0;c=f[k>>2]|0;g=a+12|0;j=f[g>>2]|0;h=j;do if((c|0)==(j|0)){j=a+4|0;i=f[j>>2]|0;m=f[a>>2]|0;d=m;if(i>>>0<=m>>>0){c=h-d|0;c=(c|0)==0?1:c>>1;gO(e,c,c>>>2,a+12|0);F8(e,f[j>>2]|0,f[k>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=m;Cja(e);c=f[k>>2]|0;break}m=i;a=((m-d>>2)+1|0)/-2|0;e=i+(a<<2)|0;d=c-m|0;if(!d)c=e;else{fia(e|0,i|0,d|0)|0;c=(f[j>>2]|0)+(a<<2)|0}m=e+(d>>2<<2)|0;f[k>>2]=m;f[j>>2]=c;c=m}while(0);f[c>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+4;u=l;return}function Et(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;d=j+20|0;m=j+16|0;h=j+12|0;k=j;i=eTa(f[a+4>>2]|0)|0;g=Zx(a,Or(c,1)|0)|0;f[i+8>>2]=g;e=f[a>>2]|0;f[m>>2]=g;f[d>>2]=f[m>>2];if(bna(e,d)|0?(f[h>>2]=g,f[d>>2]=f[h>>2],m=(bna(e,d)|0)+12|0,(b[m>>0]|0)==0):0){e=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;m=h7a(92543)|0;x=0;va(87,k|0,92543,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,e|0,k|0,f[c+28>>2]|0,f[c+32>>2]|0);m=x;x=0;if(m&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}d=Ia()|0;HTa(k);if(a)l=8}else{d=Ia()|0;l=8}if((l|0)==8)La(e|0);Ua(d|0)}m=UQa(a,Or(c,2)|0)|0;f[i+12>>2]=m;iWa(i);u=j;return i|0}function Ft(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=n8(88)|0;aX(g);f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];c=a+8|0;d=g+8|0;if((c|0)!=(d|0))Ay(d,f[c>>2]|0,f[a+12>>2]|0);c=a+20|0;d=g+20|0;if((c|0)!=(d|0))Ay(d,f[c>>2]|0,f[a+24>>2]|0);tab(e);f[g+32>>2]=f[e>>2];U8(g+44|0,a+44|0)|0;p8(g+56|0,a+56|0)|0;jU(g+68|0,a+68|0)|0;e=PY(f[a+36>>2]|0,b)|0;f[g+36>>2]=e;if(!(f[a+40>>2]|0)){Hs(b,g);u=h;return g|0}else Ca(91944,91959,67,91983);return 0}function Gt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;g=i;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}x=0;d=ga(254,b|0)|0;e=x;x=0;do if(!(e&1)?(x=0,ua(82,a|0,d|0),e=x,x=0,!(e&1)):0){I$a(h,c);GUa(g,c);c=h+4|0;e=f[g>>2]|0;b=f[g+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[c>>2]|0,e,b)|0)){b=8;break}x=0;d=ga(253,h|0)|0;g=x;x=0;if(g&1){b=14;break}x=0;d=ga(254,f[(f[d>>2]|0)+4>>2]|0)|0;g=x;x=0;if(g&1){b=14;break}x=0;ua(82,a|0,d|0);g=x;x=0;if(g&1){b=14;break}RYa(h)}if((b|0)==8){u=i;return}else if((b|0)==14){d=Ia()|0;break}}else b=9;while(0);if((b|0)==9)d=Ia()|0;HTa(a);Ua(d|0)}function Ht(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=ps(a,b,c)|0;g=f[d>>2]|0;h=f[c>>2]|0;if(S2(+p[g+16>>3],+p[h+16>>3])|0){f[c>>2]=g;f[d>>2]=h;d=e+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(S2(+p[g+16>>3],+p[h+16>>3])|0){f[b>>2]=g;f[c>>2]=h;g=f[b>>2]|0;h=f[a>>2]|0;if(S2(+p[g+16>>3],+p[h+16>>3])|0){f[a>>2]=g;f[b>>2]=h;e=e+3|0}else e=e+2|0}else e=d}return e|0}function It(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;c=e+24|0;d=e+28|0;h=e+12|0;g=e;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,99924,h7a(99924)|0);x=0;ua(1283,g|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[g+11>>0]|0;i=a<<24>>24<0;x=0;ja(49,h|0,(i?f[g>>2]|0:g)|0,(i?f[g+4>>2]|0:a&255)|0)|0;a=x;x=0;do if(!(a&1)){f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);i=x;x=0;if(i&1){a=Ia()|0;HTa(d);break}else{HTa(d);HTa(g);HTa(h);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);HTa(g)}HTa(h);Ua(a|0);return 0}function Jt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;c=e+24|0;d=e+28|0;h=e+12|0;g=e;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,99932,h7a(99932)|0);x=0;ua(1283,g|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[g+11>>0]|0;i=a<<24>>24<0;x=0;ja(49,h|0,(i?f[g>>2]|0:g)|0,(i?f[g+4>>2]|0:a&255)|0)|0;a=x;x=0;do if(!(a&1)){f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);i=x;x=0;if(i&1){a=Ia()|0;HTa(d);break}else{HTa(d);HTa(g);HTa(h);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);HTa(g)}HTa(h);Ua(a|0);return 0}function Kt(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;g=f[a+16>>2]|0;h=f[g+4>>2]|0;b=f[a+8>>2]|0;if((b|0)!=(dn(h,15)|0)?(b|0)!=(dn(h,16)|0):0)b=0;else c=3;do if((c|0)==3){b=f[a+12>>2]|0;if(g4a(f[b+4>>2]|0)|0?(i=Y_a(b)|0,(i|0)!=0):0){b=f[i+8>>2]|0;d=dn(h,1)|0;if((b|0)!=(d|0)?(b|0)!=(dn(h,2)|0):0){b=0;break}e=g$a(f[i+16>>2]|0)|0;if(e){b=g$a(g)|0;if(b|0){b=Qy(a,i,e,0,b)|0;break}c=Y_a(g)|0;if(c){b=f[c+8>>2]|0;if((b|0)!=(d|0)?(b|0)!=(dn(h,2)|0):0){b=0;break}b=g$a(f[c+16>>2]|0)|0;if(b)b=Qy(a,i,e,c,b)|0;else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function Lt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110732)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);a:do if(((f[(f[c+12>>2]|0)+4>>2]|0)!=5?(f[(f[c+16>>2]|0)+4>>2]|0)!=5:0)?(f[(f[c+20>>2]|0)+4>>2]|0)!=5:0){d=a+28|0;Ev(f[d>>2]|0,-2)|0;switch(f[c+24>>2]|0){case 1:{Ev(f[d>>2]|0,1)|0;CX(a,4,4,0);break a}case 2:{Ev(f[d>>2]|0,2)|0;CX(a,8,8,0);break a}default:hb()}}while(0);u=i;return}function Mt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+32|0;j=k+16|0;l=k+4|0;g=k;f[l>>2]=0;h=l+4|0;f[h>>2]=0;i=l+8|0;f[i>>2]=0;while(1){if((b|0)==(c|0)){e=3;break}f[g>>2]=a;e=f[h>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;va(109,l|0,b|0,g|0);e=x;x=0;if(e&1){e=11;break}}else{x=0;ua(679,j|0,b|0);m=x;x=0;if(m&1){e=11;break}x=0;va(107,e|0,j|0,a|0);m=x;x=0;if(m&1){e=7;break}uSa(j);f[h>>2]=(f[h>>2]|0)+16}b=b+12|0}do if((e|0)==3){x=0;va(108,a|0,l|0,d|0);m=x;x=0;if(m&1){b=Ia()|0;break}else{Haa(l);u=k;return}}else if((e|0)==7){b=Ia()|0;uSa(j);e=12}else if((e|0)==11){b=Ia()|0;e=12}while(0);Haa(l);Ua(b|0)}function Nt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;do if((f[b+16>>2]|0)==0?(f[b+12>>2]|0)==0:0){d=o$a(f[(f[a+44>>2]|0)+-4>>2]|0)|0;if((d|0?(c=d+12|0,e=MCa(c)|0,(b|0)==(f[e>>2]|0)):0)?(e=MCa(c)|0,!(o2a(f[(f[e>>2]|0)+4>>2]|0)|0)):0){e=WW(a+60|0,b+8|0)|0;QHa(g,b,d);a=e+4|0;c=f[a>>2]|0;if(c>>>0<(f[e+8>>2]|0)>>>0){f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];f[a>>2]=(f[a>>2]|0)+12}else wE(e,g);break}e=b+8|0;bG(g,a+96|0,e,e)}else h=3;while(0);if((h|0)==3){h=b+8|0;bG(g,a+96|0,h,h)}u=i;return}function Ot(a,c){a=a|0;c=c|0;var d=0,e=0,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=u;u=u+64|0;q=r;j=a+56|0;b[j>>0]=1;k=a+16|0;l=a+72|0;m=a+84|0;n=a+60|0;o=a+76|0;p=a+88|0;g=a+96|0;h=a+108|0;i=q+16|0;e=a+36|0;d=1;while(1){if(!(d<<24>>24)){d=8;break}b[j>>0]=0;ZKa(k,c);Vc(a,l,0)|0;Vc(a,m,0)|0;L1(n);f[o>>2]=f[l>>2];f[p>>2]=f[m>>2];hqa(g);coa(h);if(!(b[j>>0]|0))d=0;else{gX(q);d=f[e>>2]|0;Bbb(d)|0;x=0;va(94,i|0,c|0,d|0);d=x;x=0;if(d&1){d=7;break}pDa(q);d=b[j>>0]|0}}if((d|0)==7){r=Ia()|0;pDa(q);Ua(r|0)}else if((d|0)==8){u=r;return}}function Pt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;d=l+4|0;g=l;k=a+44|0;a:do if((b[(f[k>>2]|0)+1>>0]|0?(e=Bbb(f[a+36>>2]|0)|0,f[g>>2]=f[c+24>>2],f[d>>2]=f[g>>2],e=oma(e,d)|0,ioa(a,(e|0)!=0,c,84861)|0):0)?(Paa(a,f[(f[c+28>>2]|0)+4>>2]|0,1,c,84891)|0,i=c+8|0,h=c+12|0,g=Bbb(f[h>>2]|0)|0,j=e+8|0,ioa(a,(g|0)==((f[e+12>>2]|0)-(f[j>>2]|0)>>2|0),c,84927)|0):0){d=0;while(1){if(d>>>0>=(Bbb(f[h>>2]|0)|0)>>>0)break a;g=JDa(i,d)|0;if(!(Paa(a,f[(f[g>>2]|0)+4>>2]|0,f[(f[j>>2]|0)+(d<<2)>>2]|0,c,84956)|0)?(b[(f[k>>2]|0)+8>>0]|0)==0:0)yCa(zm(yCa(TNa(a)|0,84984)|0,d)|0,87602)|0;d=d+1|0}}while(0);u=l;return}function Qt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=yCa(134176,111056)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(h);Wq(g,e)|0;du(g)|0;break}j=Ia()|0;JCa(h);Ua(j|0)}while(0);if((f[(f[c+8>>2]|0)+4>>2]|0)!=5){e=a+28|0;Ev(f[e>>2]|0,4)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,m8((d|0)==5?0:d)|0)|0;E1a(h,f[33015]|0);d=a+60|0;e=f[d>>2]|0;if(e>>>0<(f[a+64>>2]|0)>>>0){f[e>>2]=f[h>>2];f[d>>2]=(f[d>>2]|0)+4}else IL(a+56|0,h);$D(f[c+12>>2]|0)}u=i;return}function Rt(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=f[c+4>>2]|0;e=f[d+4>>2]|0;l=k+-1|0;m=(l&k|0)==0;if(!m)if(e>>>0>>0)i=e;else i=(e>>>0)%(k>>>0)|0;else i=l&e;h=(f[c>>2]|0)+(i<<2)|0;n=f[h>>2]|0;while(1){e=f[n>>2]|0;if((e|0)==(d|0))break;else n=e}j=c+8|0;if((n|0)!=(j|0)){e=f[n+4>>2]|0;if(!m){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&l;if((e|0)==(i|0))h=d;else g=14}else g=14;do if((g|0)==14){e=f[d>>2]|0;if(e|0){e=f[e+4>>2]|0;if(!m){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&l;if((e|0)==(i|0)){h=d;break}}f[h>>2]=0;h=d}while(0);g=f[h>>2]|0;e=g;if(g){g=f[g+4>>2]|0;if(!m){if(g>>>0>=k>>>0)g=(g>>>0)%(k>>>0)|0}else g=g&l;if((g|0)!=(i|0)){f[(f[c>>2]|0)+(g<<2)>>2]=n;e=f[d>>2]|0}}f[n>>2]=e;f[h>>2]=0;c=c+12|0;f[c>>2]=(f[c>>2]|0)+-1;f[a>>2]=d;f[a+4>>2]=j;b[a+8>>0]=1;return}function St(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;a:do if(a>>>0>>0){b:do if((b[a>>0]|0)!=95){if((Cc(a,c,d)|0)!=(c|0)){f[e>>2]=-2;break a}}else{if((c-a|0)<=3){f[e>>2]=-2;break a}switch(b[a+1>>0]|0){case 90:{g=a+2|0;a=dd(g,c,d)|0;if(!((a|0)==(g|0)|(a|0)==(c|0))?(b[a>>0]|0)==46:0)a=zp(a,c,d)|0;if((a|0)==(c|0))break b;f[e>>2]=-2;break a}case 95:{g=11;break}default:{}}if(((g|0)==11?(b[a+2>>0]|0)==95:0)?(b[a+3>>0]|0)==90:0){g=a+4|0;a=dd(g,c,d)|0;if((a|0)==(g|0)|(a|0)==(c|0)){f[e>>2]=-2;break a}if((kC(a,c,f[d>>2]|0,f[d+4>>2]|0)|0)==(c|0))break;f[e>>2]=-2;break a}f[e>>2]=-2;break a}while(0);if((f[e>>2]|0)==0?(f[d>>2]|0)==(f[d+4>>2]|0):0)f[e>>2]=-2}else f[e>>2]=-2;while(0);return}function Tt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+8|0;h=l;zma(f[a>>2]|0,40)|0;GXa(k,f[a+28>>2]|0,f[a>>2]|0);_m(k,c);VBa(a);e=f[c+12>>2]|0;d=o$a(e)|0;j=a+20|0;if((d|0)!=0&(b[j>>0]|0)==0?Gab(f[d+8>>2]|0)|0:0){g=d+12|0;I$a(k,g);GUa(h,g);g=k+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[k>>2]|0,f[g>>2]|0,e,d)|0))break;h=LOa(k)|0;OP(a,f[h>>2]|0);RYa(k)}}else OP(a,e);kfa(a);if(b[j>>0]|0?(yCa(f[a>>2]|0,75667)|0,i=c+8|0,Iab(f[i>>2]|0)|0):0){k=zma(f[a>>2]|0,32)|0;wfa(k,f[i>>2]|0)|0}u=l;return}function Ut(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;f[j>>2]=0;g=j+4|0;f[g>>2]=0;h=j+8|0;f[h>>2]=0;k=a+44|0;e=a+48|0;c=f[k>>2]|0;a:while(1){if((c|0)==(e|0))break;do if(xj(b,c+24|0)|0){a=c+16|0;d=f[g>>2]|0;if((d|0)==(f[h>>2]|0)){x=0;ua(524,j|0,a|0);d=x;x=0;if(d&1){i=18;break a}else break}else{f[d>>2]=f[a>>2];f[g>>2]=d+4;break}}while(0);a=f[c+4>>2]|0;if(!a)while(1){a=f[c+8>>2]|0;if((f[a>>2]|0)==(c|0))break;else c=a}else while(1){c=f[a>>2]|0;if(!c)break;else a=c}c=a}if((i|0)==18){l=Ia()|0;uSa(j);Ua(l|0)}c=f[g>>2]|0;a=f[j>>2]|0;while(1){if((a|0)==(c|0))break;IU(k,f[a>>2]|0);a=a+4|0}uSa(j);u=l;return}function Vt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;i=l+8|0;h=l;e=b+12|0;j=b+4|0;do if(Bbb(f[b+16>>2]|0)|0){g=f[j>>2]|0;d=MCa(e)|0;d=f[(f[d>>2]|0)+4>>2]|0;f[j>>2]=d;if(!(o2a(d)|0)){b=b+8|0;if(Iab(f[b>>2]|0)|0?(c=p_(a+44|0,b)|0,(c|0)!=(a+48|0)):0){b=f[c+20>>2]|0;if((b|0)!=5){f[j>>2]=b;break}f[j>>2]=g;if(o2a(g)|0)break;Ca(61798,61463,128,99913)}if(!d){I$a(i,e);GUa(h,e);a=i+4|0;c=f[h>>2]|0;b=f[h+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[a>>2]|0,c,b)|0))break;h=LOa(i)|0;if((f[(f[h>>2]|0)+4>>2]|0)==5){k=14;break}RYa(i)}if((k|0)==14)f[j>>2]=5}}}else f[j>>2]=0;while(0);u=l;return}function Wt(a){a=a|0;var b=0,c=0,d=0;b=a+60|0;c=a;d=c+60|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));x=0;ta(445,b|0);d=x;x=0;do if(!(d&1)){x=0;ta(446,a+88|0);d=x;x=0;if(d&1){d=Ia()|0;YXa(b);b=d;break}else{tab(a+116|0);d=a+120|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;SGa(a+144|0);yUa(a+172|0);yUa(a+184|0);yUa(a+196|0);yUa(a+208|0);yUa(a+220|0);return}}else b=Ia()|0;while(0);K4(a+48|0);C1(a+36|0);K4(a+24|0);K4(a+12|0);d1(a);Ua(b|0)}function Xt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110990)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);e=a+28|0;Ev(f[e>>2]|0,3)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,m8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))IL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}qw(a,f[c+12>>2]|0);US(a,c);u=i;return}function Yt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110975)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);d=f[c+12>>2]|0;if(d|0)Tpa(a,d);d=c+16|0;e=f[d>>2]|0;if(e|0)Tpa(a,e);DS(a,c);if(f[d>>2]|0?(f[c+4>>2]|0)==5:0)CM(a);u=i;return}function Zt(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0;d=qRa(c)|0;e=I;g=(e|0)<0;do if(c==0.0&g)yCa(a,75300)|0;else{h=e&2147483647;if(h>>>0>2146435072|(h|0)==2146435072&d>>>0>0){yCa(yCa(a,g?123398:135337)|0,118775)|0;d=v6(c)|0;e=I;if((d|0)==0&(e|0)==0)break;h=yCa(a,75303)|0;g=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[g>>2]=f[g>>2]&-75|8;sm(h,d,e)|0;h=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[h>>2]=f[h>>2]&-75|2;break}if(0==0&(e&2146435072|0)==2146435072){yCa(a,g?75307:118767)|0;break}d=Hi(c)|0;switch(b[d>>0]|0){case 46:{zma(a,48)|0;break}case 45:{e=d+1|0;if((b[e>>0]|0)==46){yCa(a,75300)|0;d=e}break}default:{}}yCa(a,d)|0}while(0);return}function _t(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;e=k+4|0;i=k;j=a+64|0;g=f[j>>2]|0;if(b[g+60>>0]|0?(b[g+61>>0]|0)==0:0){do if(b[a+72>>0]|0){d=yCa(134176,87902)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[c>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,l=x,x=0,!(l&1)):0){JCa(c);Wq(d,h)|0;du(d)|0;break}l=Ia()|0;JCa(c);Ua(l|0)}while(0);l=A$(a,4)|0;h=a+68|0;g=f[h>>2]|0;f4a(e,1);Yr(g,f[e>>2]|0)|0;h=f[h>>2]|0;f4a(i,-16);Pr(h,f[i>>2]|0)|0;j=f[j>>2]|0;i=f[j+68>>2]|0;j=f[j+72>>2]|0;zP(a,i,j,(Bbb(j)|0)!=-1,0);VA(a,l)}u=k;return}function $t(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119976]|0;b[a+1>>0]=b[119977]|0;b[a+2>>0]=b[119978]|0;b[a+3>>0]=b[119979]|0;b[a+4>>0]=b[119980]|0;b[a+5>>0]=b[119981]|0;m=d+4|0;UX(a+1|0,124541,1,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o+13|0;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;f[k>>2]=g;g=n+(Cga(n,q,p,a,k)|0)|0;m=yS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*((o<<1|24)+-1<<2)|0)+15&-16)|0;ZXa(j,d);x=0;za(6,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;JCa(j);Ua(q|0)}else{JCa(j);q=qu(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function au(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;do if(!($1a(a,f[c+8>>2]|0)|0)){if(!($1a(a,f[c>>2]|0)|0)){i=f[a+8>>2]|0;sc[f[(f[i>>2]|0)+24>>2]&15](i,c,d,e,g);break}if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[c+32>>2]=e;i=c+44|0;if((f[i>>2]|0)==4)break;e=c+52|0;b[e>>0]=0;j=c+53|0;b[j>>0]=0;a=f[a+8>>2]|0;tc[f[(f[a>>2]|0)+20>>2]&15](a,c,d,d,1,g);if(b[j>>0]|0)if(!(b[e>>0]|0)){e=1;a=11}else a=15;else{e=0;a=11}do if((a|0)==11){f[h>>2]=d;j=c+40|0;f[j>>2]=(f[j>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0){b[c+54>>0]=1;if(e){a=15;break}else{e=4;break}}if(e)a=15;else e=4}while(0);if((a|0)==15)e=3;f[i>>2]=e;break}if((e|0)==1)f[c+32>>2]=1}else cwa(c,d,e);while(0);return}function bu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119976]|0;b[a+1>>0]=b[119977]|0;b[a+2>>0]=b[119978]|0;b[a+3>>0]=b[119979]|0;b[a+4>>0]=b[119980]|0;b[a+5>>0]=b[119981]|0;m=d+4|0;UX(a+1|0,124541,1,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o+13|0;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;f[k>>2]=g;g=n+(Cga(n,q,p,a,k)|0)|0;m=yS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*((o<<1|24)+-1|0)|0)+15&-16)|0;ZXa(j,d);x=0;za(4,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;JCa(j);Ua(q|0)}else{JCa(j);q=Ku(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function cu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=((f[a+4>>2]|0)-(f[a>>2]|0)>>2)+-2|0;a:while(1){if((g|0)<=-1){j=16;break}i=f[a>>2]|0;d=f[i+(g<<2)>>2]|0;i=f[i+(g+1<<2)>>2]|0;c=f[d>>2]|0;if(rab(c)|0){d=XRa(d)|0;e=d+12|0;d=d+16|0;c=0;while(1){if(c>>>0>=((Bbb(f[d>>2]|0)|0)+-1|0)>>>0)break;k=JDa(e,c)|0;if((f[k>>2]|0)==(i|0)){h=0;break a}else c=c+1|0}k=MCa(e)|0;if((f[k>>2]|0)!=(i|0)){j=8;break}}else{if(!(vab(c)|0)){j=14;break}c=qSa(d)|0;if((i|0)==(f[c+8>>2]|0)){h=1;break}d=f[c+16>>2]|0;if(!d){h=0;break}if(!((i|0)==(d|0)?1:(i|0)==(f[c+12>>2]|0))){j=13;break}}g=g+-1|0}if((j|0)==8)Ca(118551,118579,35,118611);else if((j|0)==13)Ca(118624,118579,41,118611);else if((j|0)==14)h=(K6a(c)|0)^1;else if((j|0)==16)h=(f[b+4>>2]|0)!=0;return h|0}function du(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;a:do if(f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0){x=0;ua(99,c|0,a|0);d=x;x=0;b:do if(d&1)c=Ja(0)|0;else{do if(b[c>>0]|0){d=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;x=0;d=ga(f[(f[d>>2]|0)+24>>2]|0,d|0)|0;g=x;x=0;if(!(g&1)){if((d|0)!=-1)break;g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,g|0,f[g+16>>2]|1|0);g=x;x=0;if(!(g&1))break}g=Ja(0)|0;eD(c);c=g;break b}while(0);eD(c);break a}while(0);Fa(c|0)|0;x=0;ta(450,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=x;x=0;if(!(g&1)){Ga();break}c=Ia()|0;x=0;sa(6);g=x;x=0;if(g&1){g=Ja(0)|0;r2a(g)}else Ua(c|0)}while(0);u=e;return a|0}function eu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=a+4|0;e=Bbb(f[g>>2]|0)|0;d=c+4|0;yCa(e,Aha(f[d>>2]|0)|0)|0;if(b[c+20>>0]|0)yCa(f[g>>2]|0,75518)|0;yCa(f[g>>2]|0,75541)|0;e=c+8|0;a=b[e>>0]|0;if(!((a&255)>=4?!((a&255)<8&(f[d>>2]|0)==2):0)){switch(a<<24>>24){case 1:{zma(f[g>>2]|0,56)|0;break}case 2:{yCa(f[g>>2]|0,75509)|0;break}case 4:{yCa(f[g>>2]|0,75512)|0;break}default:hb()}yCa(f[g>>2]|0,(b[c+9>>0]|0)==0?75515:75547)|0}a=c+12|0;if(Bbb(f[a>>2]|0)|0){d=yCa(f[g>>2]|0,75482)|0;zm(d,Bbb(f[a>>2]|0)|0)|0}a=c+16|0;c=Bbb(f[a>>2]|0)|0;if((c|0)!=(h[e>>0]|0)){g=yCa(f[g>>2]|0,75533)|0;zm(g,Bbb(f[a>>2]|0)|0)|0}return}function fu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;k=j;c=b+8|0;d=Jm(a+48|0,c)|0;d=f[d>>2]|0;f[c>>2]=d;c=f[b+12>>2]|0;a:do if(sba(a,c)|0){if(Iab(f[b+4>>2]|0)|0){iq(a,b);break}SN(k,a,c);e=a+44|0;g=f[e>>2]|0;c=d+1|0;x=0;d=ga(320,k|0)|0;m=x;x=0;do if((!(m&1)?(x=0,h=ja(46,f[g>>2]|0,d|0,1)|0,m=x,x=0,!(m&1)):0)?(x=0,i=ja(45,g|0,c|0,h|0)|0,m=x,x=0,!(m&1)):0){x=0;c=ja(70,f[e>>2]|0,b|0,i|0)|0;m=x;x=0;if(m&1){c=Ia()|0;break}else{BVa(f[a+16>>2]|0,c)|0;HCa(k);break a}}else l=10;while(0);if((l|0)==10)c=Ia()|0;HCa(k);Ua(c|0)}while(0);u=j;return}function gu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119976]|0;b[a+1>>0]=b[119977]|0;b[a+2>>0]=b[119978]|0;b[a+3>>0]=b[119979]|0;b[a+4>>0]=b[119980]|0;b[a+5>>0]=b[119981]|0;m=d+4|0;UX(a+1|0,124541,0,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o|12;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;f[k>>2]=g;g=n+(Cga(n,q,p,a,k)|0)|0;m=yS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*((o<<1|21)<<2)|0)+15&-16)|0;ZXa(j,d);x=0;za(6,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;JCa(j);Ua(q|0)}else{JCa(j);q=qu(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function hu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;if(!(bc[f[(f[b>>2]|0)+20>>2]&511](b)|0))Ca(80704,80302,465,80731);g=bc[f[(f[b>>2]|0)+24>>2]&511](b)|0;a:do if(SAa()|0){x=0;d=ga(212,16)|0;e=x;x=0;do if(!(e&1)){x=0;ua(1293,d|0,c|0);e=x;x=0;if(e&1){c=Ia()|0;ubb(d);d=c;break}else{e=d;h=9;break a}}else d=Ia()|0;while(0);if(g)h=19}else{e=0;h=9}while(0);if((h|0)==9){x=0;wa(f[(f[g>>2]|0)+16>>2]|0,g|0,a|0,f[a>>2]|0,c|0);h=x;x=0;do if(!(h&1)?(x=0,va(118,a|0,b|0,c|0),h=x,x=0,!(h&1)):0){if(SAa()|0?(x=0,ta(471,e|0),h=x,x=0,h&1):0)break;if(e|0)ubb(e);oc[f[(f[g>>2]|0)+4>>2]&1023](g);return}while(0);d=Ia()|0;if(!e)h=19;else{ubb(e);h=19}}if((h|0)==19)oc[f[(f[g>>2]|0)+4>>2]&1023](g);Ua(d|0)}function iu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119976]|0;b[a+1>>0]=b[119977]|0;b[a+2>>0]=b[119978]|0;b[a+3>>0]=b[119979]|0;b[a+4>>0]=b[119980]|0;b[a+5>>0]=b[119981]|0;m=d+4|0;UX(a+1|0,124541,0,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o|12;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;f[k>>2]=g;g=n+(Cga(n,q,p,a,k)|0)|0;m=yS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*(o<<1|21)|0)+15&-16)|0;ZXa(j,d);x=0;za(4,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;JCa(j);Ua(q|0)}else{JCa(j);q=Ku(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function ju(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+11|0;g=b[i>>0]|0;h=g<<24>>24<0;if(h){k=f[a+4>>2]|0;e=(f[a+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}c=k>>>0<11;j=c?10:(k+16&-16)+-1|0;a:do if((j|0)!=(e|0)){do if(c){c=f[a>>2]|0;if(h){d=c;g=0;e=a;h=15}else{$Ta(a,c,(g&255)+1|0)|0;ubb(c);h=18}}else{d=j+1|0;if(j>>>0<=e>>>0){x=0;c=ga(212,d|0)|0;e=x;x=0;if(e&1){k=Ja(0)|0;Fa(k|0)|0;Ga();break a}}else c=n8(d)|0;if(h){d=f[a>>2]|0;g=1;e=c;h=15;break}else{$Ta(c,a,(g&255)+1|0)|0;e=c;c=a+4|0;h=17;break}}while(0);if((h|0)==15){c=a+4|0;$Ta(e,d,(f[c>>2]|0)+1|0)|0;ubb(d);if(g){d=j+1|0;h=17}else h=18}if((h|0)==17){f[a+8>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==18){b[i>>0]=k;break}}while(0);return}function ku(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110959)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);d=f[c+32>>2]|0;if(d|0)Tpa(a,d);Tpa(a,f[c+28>>2]|0);if(uAa(c)|0)DS(a,c);else CM(a);u=i;return}function lu(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=a+4|0;g=f[e>>2]|0;do if(g){e=D1a(a)|0;k=b[d+11>>0]|0;j=k<<24>>24<0;k=j?f[d+4>>2]|0:k&255;j=j?f[d>>2]|0:d;a=g;while(1){d=a+16|0;g=b[d+11>>0]|0;h=g<<24>>24<0;d=h?f[d>>2]|0:d;g=h?f[a+20>>2]|0:g&255;h=g>>>0>>0;l=AQa(j,d,h?g:k)|0;i=k>>>0>>0;if((((l|0)==0?(i?-2147483648:0):l)|0)<0){d=f[a>>2]|0;if(!d){d=5;break}else{e=a;a=d}}else{l=AQa(d,j,i?k:g)|0;if((((l|0)==0?(h?-2147483648:0):l)|0)>=0){d=9;break}e=a+4|0;d=f[e>>2]|0;if(!d){d=8;break}else a=d}}if((d|0)==5){f[c>>2]=a;e=a;break}else if((d|0)==8){f[c>>2]=a;break}else if((d|0)==9){f[c>>2]=a;break}}else f[c>>2]=e;while(0);return e|0}function mu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;c=q+20|0;j=q+16|0;l=q+12|0;n=q+8|0;o=q+4|0;p=q;i=f[a+80>>2]|0;d=a+68|0;h=f[a+76>>2]|0;while(1){if((h|0)==(i|0))break;m=f[h>>2]|0;Qp(b,f[m+4>>2]|0,1,m,81361,0)|0;m=f[h>>2]|0;g=h+4|0;k=h+8|0;cLa(j,(f[k>>2]|0)-(f[g>>2]|0)>>2,0);cLa(l,Bbb(f[d>>2]|0)|0,0);m=iN(m,f[j>>2]|0,f[l>>2]|0)|0;Tv(b,m,f[h>>2]|0,81390,0)|0;k=f[k>>2]|0;g=f[g>>2]|0;while(1){if((g|0)==(k|0))break;e=f[g>>2]|0;f[n>>2]=e;f[c>>2]=f[n>>2];if(!(Sma(a,c)|0)){f[o>>2]=e;f[c>>2]=f[o>>2];m=(ana(a,c)|0)!=0}else m=1;f[p>>2]=e;f[c>>2]=f[p>>2];Ou(b,m,c,81426,0)|0;g=g+4|0}h=h+16|0}u=q;return}function nu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+32|0;c=l+28|0;e=l+24|0;g=l+8|0;j=l+12|0;h=l;d=PN(f[a+8>>2]|0)|0;i=d;do if(Iab(d)|0?(Bbb(f[b+24>>2]|0)|0)!=0:0){d=f[a+4>>2]|0;n=f[b+28>>2]|0;m=Bbb(n)|0;U0a(e,n);NX(a,m,b);f[g>>2]=i;f[h>>2]=f[a+12>>2];f[h+4>>2]=f[a+16>>2];f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;ua(168,j|0,2);i=x;x=0;if(i&1){n=Ia()|0;uSa(j);Ua(n|0)}mda(j,h,h+8|0);x=0;f[c>>2]=f[g>>2];a=ka(13,e|0,c|0,j|0,d|0)|0;n=x;x=0;if(n&1){n=Ia()|0;uSa(j);Ua(n|0)}else{uSa(j);break}}else k=3;while(0);u=l;return a|0}function ou(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0.0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;i=k+8|0;g=k+4|0;j=k;if(b[135320]|0){l=yCa(134008,56456)|0;zma(yCa(l,f[d>>2]|0)|0,10)|0}VP(e);h=+mb(19,f[d+4>>2]|0,f[d+8>>2]|0);if(!(b[135320]|0)){d=d+16|0;e=c+4|0}else{m=yCa(Bm(yCa(134008,56710)|0,h)|0,56736)|0;e=c+4|0;l=f[e>>2]|0;d=d+16|0;f[g>>2]=f[d>>2];f[i>>2]=f[g>>2];l=(KI(l,i)|0)+4|0;zma(Am(m,f[l>>2]|0)|0,10)|0}m=f[e>>2]|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];m=(KI(m,i)|0)+4|0;fba(a,h,f[m>>2]|0);u=k;return}function pu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+48|0;d=g+16|0;e=g;Mw(d,b,f[c+8>>2]|0);do if(!(D0a(d)|0))if(!(ORa(d)|0)){c=f[c+16>>2]|0;if(!c){M0a(a);break}else{Mw(a,b,c);break}}else{Mw(a,b,f[c+12>>2]|0);if(D0a(a)|0)break;if(f[c+16>>2]|0)break;yXa(e);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];break}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}while(0);u=g;return}function qu(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;l=m;a:do if(!a)a=0;else{n=c;i=e-n>>2;k=g+12|0;j=f[k>>2]|0;i=(j|0)>(i|0)?j-i|0:0;j=d;n=j-n|0;g=n>>2;if((n|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,c,g)|0)!=(g|0):0){a=0;break}do if((i|0)>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_G(l,i,h);x=0;g=ja(f[(f[a>>2]|0)+48>>2]|0,a|0,((b[l+8+3>>0]|0)<0?f[l>>2]|0:l)|0,i|0)|0;n=x;x=0;if(!(n&1)){jTa(l);if((g|0)==(i|0))break;else{a=0;break a}}else{n=Ia()|0;jTa(l);Ua(n|0)}}while(0);n=e-j|0;e=n>>2;if((n|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,d,e)|0)!=(e|0):0){a=0;break}f[k>>2]=0}while(0);u=m;return a|0}function ru(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;i=n+8|0;j=n;UUa(i,b);k=Bbb(f[i+4>>2]|0)|0;l=f[a+4>>2]|0;a:do if(l){m=l+-1|0;g=(m&l|0)==0;if(!g)if(k>>>0>>0)h=k;else h=(k>>>0)%(l>>>0)|0;else h=m&k;a=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(a){d=i+4|0;e=j+4|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;if((c|0)==(k|0)){UUa(i,a+8|0);UUa(j,b);if(MAa(f[i>>2]|0,f[d>>2]|0,f[j>>2]|0,f[e>>2]|0)|0)break a}else{if(!g){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0}else c=c&m;if((c|0)!=(h|0)){a=0;break a}}}}else a=0}else a=0;while(0);u=n;return a|0}function su(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;while(1){if((a|0)==(b|0))break;g=f[a>>2]|0;f[h>>2]=g;j=(Uz(c,h)|0)==0;d=g+48|0;e=f[d>>2]|0;g=g+52|0;if(j){f[g>>2]=e;j=f[a>>2]|0;f[j+40>>2]=f[j+36>>2]}else{j=$C(e,f[g>>2]|0,c)|0;hla(d,j,f[(f[a>>2]|0)+52>>2]|0);j=f[a>>2]|0;g=j+36|0;j=$C(f[g>>2]|0,f[j+40>>2]|0,c)|0;hla(g,j,f[(f[a>>2]|0)+40>>2]|0)}a=a+4|0}u=i;return}function tu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;i=a+4|0;g=Bbb(f[i>>2]|0)|0;d=c+32|0;yCa(g,Aha(f[d>>2]|0)|0)|0;if(b[c+20>>0]|0)yCa(f[i>>2]|0,75518)|0;yCa(f[i>>2]|0,75526)|0;g=c+8|0;a=b[g>>0]|0;if(!((a&255)>=4?!((a&255)<8&(f[d>>2]|0)==2):0))e=5;a:do if((e|0)==5)switch(a<<24>>24){case 1:{zma(f[i>>2]|0,56)|0;break a}case 2:{yCa(f[i>>2]|0,75509)|0;break a}case 4:{yCa(f[i>>2]|0,75512)|0;break a}default:hb()}while(0);a=c+12|0;if(Bbb(f[a>>2]|0)|0){e=yCa(f[i>>2]|0,75482)|0;zm(e,Bbb(f[a>>2]|0)|0)|0}a=c+16|0;c=Bbb(f[a>>2]|0)|0;if((c|0)!=(h[g>>0]|0)){i=yCa(f[i>>2]|0,75533)|0;zm(i,Bbb(f[a>>2]|0)|0)|0}return}function uu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=(c-b|0)/24|0;d=a+8|0;h=f[a>>2]|0;do if(e>>>0>(((f[d>>2]|0)-h|0)/24|0)>>>0){i5(a);if(e>>>0>178956970)_da();else{i=((f[d>>2]|0)-(f[a>>2]|0)|0)/24|0;j=i<<1;zja(a,i>>>0<89478485?(j>>>0>>0?e:j):178956970);Zba(a,b,c);break}}else{j=a+4|0;i=((f[j>>2]|0)-h|0)/24|0;g=e>>>0>i>>>0;i=g?b+(i*24|0)|0:c;e=h;d=b;while(1){if((d|0)==(i|0))break;T8(e,d)|0;e=e+24|0;d=d+24|0}if(g){Zba(a,i,c);break}d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-24|0;cQa(c);d=c}f[j>>2]=e}while(0);return}function vu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+32|0;c=g+16|0;d=g;yXa(d);switch(f[b+4>>2]|0){case 1:{m$a(c,0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 2:{SSa(c,0,0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 3:{CAa(c,0.0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 4:{kqa(c,0.0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 0:{c=eUa(b)|0;break}case 5:{c=aXa(b)|0;break}default:e=8}if((e|0)==8){f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];c=a0(a,c)|0}u=g;return c|0}function wu(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k;Sra(a);f[a>>2]=41872;f[a+32>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;c=a+52|0;i=a+68|0;j=a+98|0;e=c;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));d[c+44>>1]=0;b[c+46>>0]=0;c=a+4|0;gVa(h,f[c>>2]|0);x=0;e=ga(286,f[h>>2]|0)|0;g=x;x=0;if(g&1){g=Ja(0)|0;r2a(g)}JCa(h);do if(e){gVa(h,f[c>>2]|0);x=0;c=ia(73,f[h>>2]|0,135184)|0;g=x;x=0;if(g&1){c=Ia()|0;JCa(h);break}else{f[i>>2]=c;JCa(h);l=f[i>>2]|0;l=(bc[f[(f[l>>2]|0)+28>>2]&511](l)|0)&1;b[j>>0]=l;l=7;break}}else l=7;while(0);do if((l|0)==7){x=0;ja(f[(f[a>>2]|0)+12>>2]|0,a|0,0,4096)|0;l=x;x=0;if(l&1){c=Ia()|0;break}else{u=k;return}}while(0);YWa(a);Ua(c|0)}function xu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+64|0;d=g+24|0;e=g;c=eX(a,f[b>>2]|0)|0;a:do if((c|0)==(a+4|0)){c=a+12|0;FHa(e);f[d>>2]=f[b>>2];x=0;ua(1493,d+4|0,e|0);h=x;x=0;do if(!(h&1)){x=0;ua(1496,c|0,d|0);h=x;x=0;if(h&1){c=Ia()|0;HWa(d);break}else{HWa(d);TDa(e);c=f[c>>2]|0;h=f[b>>2]|0;f[e>>2]=h;f[e+4>>2]=c;pC(d,a,h,e);break a}}else c=Ia()|0;while(0);TDa(e);Ua(c|0)}else c=f[c+20>>2]|0;while(0);u=g;return c+12|0}function yu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+272|0;j=m;k=m+256|0;e=f[b>>2]|0;f[k>>2]=e;l=(a|0)!=0;h=l?d:256;g=l?a:j;d=e;a:do if((h|0)!=0&(e|0)!=0){a=0;i=c;while(1){c=i>>>0>=h>>>0;if(!(c|i>>>0>32)){c=i;i=h;break a}d=c?h:i;c=i-d|0;d=rr(g,k,d)|0;if((d|0)==-1)break;e=(g|0)==(j|0);h=h-(e?0:d)|0;g=e?g:g+d|0;a=d+a|0;d=f[k>>2]|0;e=d;if((h|0)!=0&(d|0)!=0)i=c;else{i=h;break a}}e=f[k>>2]|0;a=-1;i=0;d=e}else{a=0;i=h}while(0);do if((d|0)!=0?(i|0)!=0&(c|0)!=0:0){h=c;e=i;while(1){c=YF(g,f[d>>2]|0)|0;if((c+1|0)>>>0<2){e=11;break}d=d+4|0;h=h+-1|0;e=e-c|0;a=c+a|0;if(!((e|0)!=0&(h|0)!=0)){e=13;break}else g=g+c|0}if((e|0)==11){j=(c|0)==0;f[k>>2]=j?0:d;a=j?a:-1;d=j?0:d;break}else if((e|0)==13){f[k>>2]=d;break}}else d=e;while(0);if(l)f[b>>2]=d;u=m;return a|0}function zu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;e=j+4|0;g=j+8|0;i=j;cLa(g,(Bbb(f[a+32>>2]|0)|0)<<16,0);if((f[c>>2]|0)==1){d=ORa(c)|0;c=d;d=((d|0)<0)<<31>>31}else{c=jJa(c)|0;d=I}l=b+16|0;m=Bbb(f[l>>2]|0)|0;k=Bbb(f[g>>2]|0)|0;io(a,m,0,k,0,58262);io(a,c,d,k-(Bbb(f[l>>2]|0)|0)|0,0,58278);d=wOa(c|0,d|0,Bbb(f[l>>2]|0)|0,0)|0;g=I;b=b+12|0;io(a,h[b>>0]|0,0,k,0,58293);cLa(i,d,g);sX(a,f[i>>2]|0,h[b>>0]|0);cLa(e,d,g);u=j;return f[e>>2]|0}function Au(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+4|0;i=j;do if(b[a+33>>0]|0){h=yCa(134176,110862)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);jGa(a,f[c+12>>2]|0);d=a+28|0;g=f[d>>2]|0;k=c+4|0;h=Iab(f[k>>2]|0)|0;h=Ev(g,h?34:33)|0;c=e_(a+44|0,c+8|0)|0;f4a(i,f[c>>2]|0);Yr(h,f[i>>2]|0)|0;if((f[k>>2]|0)==5)dTa(f[d>>2]|0);u=j;return}function Bu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;e=j+4|0;g=j+8|0;i=j;cLa(g,(Bbb(f[a+32>>2]|0)|0)<<16,0);if((f[c>>2]|0)==1){d=ORa(c)|0;c=d;d=((d|0)<0)<<31>>31}else{c=jJa(c)|0;d=I}l=b+12|0;m=Bbb(f[l>>2]|0)|0;k=Bbb(f[g>>2]|0)|0;io(a,m,0,k,0,58262);io(a,c,d,k-(Bbb(f[l>>2]|0)|0)|0,0,58278);d=wOa(c|0,d|0,Bbb(f[l>>2]|0)|0,0)|0;g=I;b=b+8|0;io(a,h[b>>0]|0,0,k,0,58293);cLa(i,d,g);sX(a,f[i>>2]|0,h[b>>0]|0);cLa(e,d,g);u=j;return f[e>>2]|0}function Cu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;k=o+16|0;g=o+8|0;i=o;l=b+8|0;I$a(k,l);GUa(g,l);l=a+32|0;j=b+32|0;m=a+36|0;n=a+40|0;h=k+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;d=a+28|0;while(1){if(!(lTa(f[k>>2]|0,f[h>>2]|0,e,g)|0))break;c=LOa(k)|0;if($1a(f[c>>2]|0,f[d>>2]|0)|0){a=f[j>>2]|0;if(!a)a=0;else a=f[a+4>>2]|0;f[i>>2]=a;c=f[m>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[c>>2]=a;f[m>>2]=c+4}else IL(l,i)}RYa(k)}if($1a(f[b+24>>2]|0,f[d>>2]|0)|0){a=f[j>>2]|0;if(!a)a=0;else a=f[a+4>>2]|0;f[k>>2]=a;c=f[m>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[c>>2]=a;f[m>>2]=c+4}else IL(l,k)}u=o;return}function Du(){var a=0,c=0;if((b[130928]|0)==0?PWa(130928)|0:0){c=129824;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=129992)}YEa(129824,120374)|0;YEa(129836,120381)|0;YEa(129848,120388)|0;YEa(129860,120396)|0;YEa(129872,120406)|0;YEa(129884,120415)|0;YEa(129896,120422)|0;YEa(129908,120431)|0;YEa(129920,120435)|0;YEa(129932,120439)|0;YEa(129944,120443)|0;YEa(129956,120447)|0;YEa(129968,120451)|0;YEa(129980,120455)|0;return}function Eu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;e=a+104|0;i=a+4|0;f[a>>2]=33580;f[e>>2]=33600;Gaa(a+104|0,i);f[a+176>>2]=0;f[a+180>>2]=-1;f[a>>2]=41940;f[e>>2]=41960;x=0;ta(476,i|0);i=x;x=0;if(i&1){i=Ia()|0;m1a(e);Ua(i|0)}f[g>>2]=a;x=0;ua(88,g+4|0,b|0);i=x;x=0;do if(!(i&1)){f[g+16>>2]=c;f[g+20>>2]=d;x=0;b=ga(285,g|0)|0;i=x;x=0;if(i&1){b=Ia()|0;BGa(g);break}else{i=a+188|0;f[a+184>>2]=31180;f[i>>2]=31200;Gaa(i,b);f[a+260>>2]=0;f[a+264>>2]=-1;BGa(g);u=h;return}}else b=Ia()|0;while(0);rOa(a);Ua(b|0)}function Fu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=c-b>>4;d=a+8|0;h=f[a>>2]|0;do if(e>>>0>(f[d>>2]|0)-h>>4>>>0){b5(a);if(e>>>0>268435455)_da();else{i=(f[d>>2]|0)-(f[a>>2]|0)|0;j=i>>3;ila(a,i>>4>>>0<134217727?(j>>>0>>0?e:j):268435455);wba(a,b,c);break}}else{j=a+4|0;i=(f[j>>2]|0)-h>>4;g=e>>>0>i>>>0;i=g?b+(i<<4)|0:c;e=h;d=b;while(1){if((d|0)==(i|0))break;Oea(e,d)|0;e=e+16|0;d=d+16|0}if(g){wba(a,i,c);break}d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-16|0;I_a(c);d=c}f[j>>2]=e}while(0);return}function Gu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110662)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+12>>2]|0);Tpa(a,f[c+16>>2]|0);if((f[c+4>>2]|0)==5)CM(a);else DS(a,c);u=i;return}function Hu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110794)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+24>>2]|0);Tpa(a,f[c+28>>2]|0);if((f[c+4>>2]|0)==5)CM(a);else DS(a,c);u=i;return}function Iu(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return wb(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Ju(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=c-b>>4;d=a+8|0;h=f[a>>2]|0;do if(e>>>0>(f[d>>2]|0)-h>>4>>>0){b5(a);if(e>>>0>268435455)_da();else{i=(f[d>>2]|0)-(f[a>>2]|0)|0;j=i>>3;ila(a,i>>4>>>0<134217727?(j>>>0>>0?e:j):268435455);Iba(a,b,c);break}}else{j=a+4|0;i=(f[j>>2]|0)-h>>4;g=e>>>0>i>>>0;i=g?b+(i<<4)|0:c;e=h;d=b;while(1){if((d|0)==(i|0))break;Wea(e,d)|0;e=e+16|0;d=d+16|0}if(g){Iba(a,i,c);break}d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-16|0;I_a(c);d=c}f[j>>2]=e}while(0);return}function Ku(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;l=m;a:do if(!a)a=0;else{n=c;i=e-n|0;k=g+12|0;j=f[k>>2]|0;i=(j|0)>(i|0)?j-i|0:0;j=d;g=j-n|0;if((g|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,c,g)|0)!=(g|0):0){a=0;break}do if((i|0)>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;a_(l,i,h);x=0;g=ja(f[(f[a>>2]|0)+48>>2]|0,a|0,((b[l+11>>0]|0)<0?f[l>>2]|0:l)|0,i|0)|0;n=x;x=0;if(!(n&1)){HTa(l);if((g|0)==(i|0))break;else{a=0;break a}}else{n=Ia()|0;HTa(l);Ua(n|0)}}while(0);e=e-j|0;if((e|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,d,e)|0)!=(e|0):0){a=0;break}f[k>>2]=0}while(0);u=m;return a|0}function Lu(){var a=0,c=0;if((b[131008]|0)==0?PWa(131008)|0:0){c=130576;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=130744)}XEa(130576,48768)|0;XEa(130588,48796)|0;XEa(130600,48824)|0;XEa(130612,48856)|0;XEa(130624,48896)|0;XEa(130636,48932)|0;XEa(130648,48960)|0;XEa(130660,48996)|0;XEa(130672,49012)|0;XEa(130684,49028)|0;XEa(130696,49044)|0;XEa(130708,49060)|0;XEa(130720,49076)|0;XEa(130732,49092)|0;return}function Mu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;kg(a,b,c);do if(!(D0a(a)|0)){d=c+4|0;e=f[d>>2]|0;g=o2a(e)|0;b=f[a>>2]|0;if(g){if((b|0)==(e|0))break}else if((o2a(b)|0)^1|(b|0)==(e|0))break;g=yCa(134176,101251)|0;g=yCa(yCa(g,Aha(f[d>>2]|0)|0)|0,101261)|0;zma(xm(yCa(yCa(g,Aha(f[a>>2]|0)|0)|0,101271)|0,c)|0,10)|0;if((f[a>>2]|0)!=(f[d>>2]|0))Ca(101278,101307,128,110562)}while(0);return}function Nu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;e=k;g=k+4|0;f[e>>2]=b;h=iRa(f[b>>2]|0)|0;j=a+16|0;i=f[a+80>>2]|0;do if(!i)if(Iab(f[h+4>>2]|0)|0){f[b>>2]=f[h+12>>2];break}else{j=f[a+36>>2]|0;Bbb(j)|0;U0a(g,j);j=gNa(f[g>>2]|0,f[h+12>>2]|0)|0;f[b>>2]=j;break}else{f[g>>2]=1;d=h+8|0;a=i+28|0;c=f[a>>2]|0;if(c>>>0<(f[i+32>>2]|0)>>>0){kV(c,1,f[d>>2]|0,b);f[a>>2]=(f[a>>2]|0)+16}else EA(i+24|0,g,d,e);a=PX(f[h+12>>2]|0)|0;if(a|0){i=a+8|0;d_(j,f[d>>2]|0,f[i>>2]|0);d_(j,f[d>>2]|0,f[i>>2]|0)}}while(0);u=k;return}function Ou(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;g=k+28|0;h=k+4|0;j=k+16|0;i=k;a:do if(b)b=1;else{f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,d,h7a(d)|0);x=0;ia(83,j|0,81342)|0;d=x;x=0;do if(!(d&1)){f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];b=0;while(1){if((b|0)==3)break;f[j+(b<<2)>>2]=0;b=b+1|0}f[i>>2]=f[c>>2];x=0;f[g>>2]=f[i>>2];wa(103,a|0,h|0,g|0,e|0);i=x;x=0;if(i&1){b=Ia()|0;HTa(h);break}else{HTa(h);HTa(j);b=0;break a}}else b=Ia()|0;while(0);HTa(j);Ua(b|0)}while(0);u=k;return b|0}function Pu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h;i=h+8|0;f[e>>2]=c;g=n8(24)|0;wWa(g);jaa(f[a>>2]|0,g);f[g+20>>2]=c;f[c+96>>2]=g;a:do if((Bbb(f[b+8>>2]|0)|0)>>>0>1){sZ(b,c);tX(c,d,b);FHa(i);x=0;ua(1459,i|0,e|0);e=x;x=0;do if(!(e&1)){a=Bbb(f[d+16>>2]|0)|0;b=L6a(d)|0;while(1){c=a;if((b|0)==(c|0)){b=5;break}x=0;wa(131,f[a+8>>2]|0,1,g|0,i|0);e=x;x=0;if(e&1){b=9;break}a=f[c+4>>2]|0}if((b|0)==5){TDa(i);break a}else if((b|0)==9){a=Ia()|0;break}}else a=Ia()|0;while(0);TDa(i);Ua(a|0)}while(0);u=h;return g|0}function Qu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h;f[a+4>>2]=0;x=0;va(150,c|0,a|0,1);d=x;x=0;do if(d&1){c=-1;g=8}else{if(b[c>>0]|0){c=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;d=x;x=0;if(d&1){c=-1;g=8;break}}else c=X6a(b[d>>0]|0)|0;if($1a(c,-1)|0?(d=a+(f[(f[a>>2]|0)+-12>>2]|0)|0,x=0,ua(100,d|0,f[d+16>>2]|2|0),d=x,x=0,d&1):0){g=8;break}}else c=-1;e=c}while(0);do if((g|0)==8){g=Ja(0)|0;Fa(g|0)|0;x=0;ta(450,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=x;x=0;if(!(g&1)){Ga();e=c;break}c=Ia()|0;x=0;sa(6);g=x;x=0;if(g&1){g=Ja(0)|0;r2a(g)}else Ua(c|0)}while(0);u=h;return e|0}function Ru(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;e=m;h=m+16|0;i=h6()|0;j=e+12|0;k=e+8|0;a:while(1){az(c);d=f[c>>2]|0;if((b[d>>0]|0)==59){g=d;break}Dh(e,d);if((f[j>>2]|0)!=2){l=4;break}f4a(h,0);f[c>>2]=(f[c>>2]|0)+(f[k>>2]|0);az(c);d=f[c>>2]|0;if((b[d>>0]|0)==61){f[c>>2]=d+1;az(c);d=Rm(a,c,66044)|0;f[h>>2]=d}else d=f[h>>2]|0;xM(i,f[e>>2]|0,d);az(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 59:{l=11;break a}case 44:break;default:{l=10;break a}}f[c>>2]=d+1}if((l|0)==4)Ca(66016,65740,437,66035);else if((l|0)==10)hb();else if((l|0)==11)g=d;f[c>>2]=g+1;u=m;return i|0}function Su(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i+4|0;j=i+8|0;h=i;f[d>>2]=b;f[j>>2]=j;e=j+4|0;f[e>>2]=j;g=j+8|0;f[g>>2]=0;x=0;ua(1491,j|0,d|0);d=x;x=0;if(d&1)b=Ia()|0;else{d=a+4|0;a:while(1){if(!(f[g>>2]|0)){a=17;break}a=f[(f[e>>2]|0)+8>>2]|0;f[h>>2]=a;Tma(j);if(!(yQa(d,a)|0)){x=0;ua(1459,d|0,h|0);c=x;x=0;if(c&1){a=6;break}b=Bbb(f[a+16>>2]|0)|0;while(1){c=b;if((L6a(a)|0)==(c|0))break;x=0;ua(1491,j|0,b+8|0);b=x;x=0;if(b&1){a=14;break a}b=f[c+4>>2]|0}}}if((a|0)==6)b=Ia()|0;else if((a|0)==14)b=Ia()|0;else if((a|0)==17){dVa(j);u=i;return}}dVa(j);Ua(b|0)}function Tu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;a:do if(b[c>>0]|0){if(!(b[c+1>>0]|0)){h=a+4|0;Iwa(f[a>>2]|0,f[h>>2]|0)|0;QN(a,c);yCa(f[a>>2]|0,f[a+16>>2]|0)|0}else h=a+4|0;i=f[c+20>>2]|0;g=f[c+16>>2]|0;while(1){if((g|0)==(i|0))break a;d=g+4|0;c=g+8|0;if((f[d>>2]|0)!=(f[c>>2]|0)){Iwa(f[a>>2]|0,f[h>>2]|0)|0;zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80929)|0;ir(a,f[g>>2]|0);e=f[c>>2]|0;c=f[d>>2]|0;while(1){if((c|0)==(e|0))break;d=f[c>>2]|0;zma(f[a>>2]|0,32)|0;s4(d,f[a>>2]|0)|0;c=c+4|0}yCa(f[a>>2]|0,87602)|0}g=g+16|0}}while(0);return}function Uu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110990)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);e=a+28|0;Ev(f[e>>2]|0,3)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,m8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))IL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}$D(f[c+12>>2]|0);u=i;return}function Vu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;k=m+32|0;g=m+16|0;e=m;i=a+28|0;d=f[i>>2]|0;f[e>>2]=d;j=a+20|0;d=(f[j>>2]|0)-d|0;f[e+4>>2]=d;f[e+8>>2]=b;f[e+12>>2]=c;d=d+c|0;h=a+60|0;f[g>>2]=f[h>>2];f[g+4>>2]=e;f[g+8>>2]=2;g=G_a(Ya(146,g|0)|0)|0;a:do if((d|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;d=d-g|0;o=f[e+4>>2]|0;n=g>>>0>o>>>0;e=n?e+8|0:e;b=b+(n<<31>>31)|0;o=g-(n?o:0)|0;f[e>>2]=(f[e>>2]|0)+o;n=e+4|0;f[n>>2]=(f[n>>2]|0)-o;f[k>>2]=f[h>>2];f[k+4>>2]=e;f[k+8>>2]=b;g=G_a(Ya(146,k|0)|0)|0;if((d|0)==(g|0)){l=3;break a}}f[a+16>>2]=0;f[i>>2]=0;f[j>>2]=0;f[a>>2]=f[a>>2]|32;if((b|0)==2)c=0;else c=c-(f[e+4>>2]|0)|0}else l=3;while(0);if((l|0)==3){o=f[a+44>>2]|0;f[a+16>>2]=o+(f[a+48>>2]|0);f[i>>2]=o;f[j>>2]=o}u=m;return c|0}function Wu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+8|0;i=j;f[k>>2]=0;h=k+4|0;f[h>>2]=0;g=k+8|0;f[g>>2]=0;c=a+52|0;a:while(1){c=f[c>>2]|0;if(!c){d=3;break}d=c;do if(xj(b,d+24|0)|0){d=d+8|0;e=f[h>>2]|0;if((e|0)==(f[g>>2]|0)){x=0;ua(2534,k|0,d|0);e=x;x=0;if(e&1){d=9;break a}else break}else{UUa(e,d);f[h>>2]=(f[h>>2]|0)+8;break}}while(0)}do if((d|0)==3){e=f[h>>2]|0;d=a+44|0;c=f[k>>2]|0;while(1){if((c|0)==(e|0)){d=11;break}UUa(i,c);x=0;ua(2535,d|0,i|0);a=x;x=0;if(a&1){d=14;break}c=c+8|0}if((d|0)==11){uSa(k);u=j;return}else if((d|0)==14){c=Ia()|0;break}}else if((d|0)==9)c=Ia()|0;while(0);uSa(k);Ua(c|0)}function Xu(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;UX(o+1|0,124546,1,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1;q=n+23|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Cga(m,q,p,o,k)|0)|0;e=yS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1|44)+-1<<2)|0)+15&-16)|0;ZXa(j,c);x=0;za(6,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;JCa(j);Ua(r|0)}else{JCa(j);r=qu(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function Yu(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=((f[a+4>>2]|0)-(f[a>>2]|0)>>2)+-2|0;a:while(1){if((e|0)<=-1){h=0;break}g=f[a>>2]|0;c=f[g+(e<<2)>>2]|0;g=f[g+(e+1<<2)>>2]|0;b=f[c>>2]|0;if(rab(b)|0){c=XRa(c)|0;d=c+12|0;c=c+16|0;b=0;while(1){if(b>>>0>=((Bbb(f[c>>2]|0)|0)+-1|0)>>>0)break;j=JDa(d,b)|0;if((f[j>>2]|0)==(g|0)){h=0;break a}else b=b+1|0}j=MCa(d)|0;if((f[j>>2]|0)!=(g|0)){i=8;break}}else{if(!(vab(b)|0)){i=14;break}b=qSa(c)|0;if((g|0)==(f[b+8>>2]|0)){h=0;break}c=f[b+16>>2]|0;if(!c){h=0;break}if(!((g|0)==(c|0)?1:(g|0)==(f[b+12>>2]|0))){i=13;break}}e=e+-1|0}if((i|0)==8)Ca(118551,118579,62,118670);else if((i|0)==13)Ca(118624,118579,68,118670);else if((i|0)==14)h=K6a(b)|0;return h|0}function Zu(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;UX(o+1|0,124546,0,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1|22;q=n+1|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Cga(m,q,p,o,k)|0)|0;e=yS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1)+-1<<2)|0)+15&-16)|0;ZXa(j,c);x=0;za(6,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;JCa(j);Ua(r|0)}else{JCa(j);r=qu(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function _u(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;UX(o+1|0,124546,1,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1;q=n+23|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Cga(m,q,p,o,k)|0)|0;e=yS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1|44)+-1|0)|0)+15&-16)|0;ZXa(j,c);x=0;za(4,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;JCa(j);Ua(r|0)}else{JCa(j);r=Ku(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function $u(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;l=o+16|0;e=o+8|0;m=o+4|0;n=o;do if(!($1a(c,-1)|0)){k=X6a(c)|0;b[e>>0]=k;if(b[a+44>>0]|0)if((GHa(e,1,1,f[a+32>>2]|0)|0)==1){d=14;break}else{a=-1;break}f[m>>2]=l;d=e+1|0;g=a+36|0;h=a+40|0;i=l+8|0;j=l;k=a+32|0;while(1){a=f[g>>2]|0;a=lc[f[(f[a>>2]|0)+12>>2]&15](a,f[h>>2]|0,e,d,n,l,i,m)|0;if((f[n>>2]|0)==(e|0)){d=13;break}if((a|0)==3){d=7;break}if(a>>>0>=2){d=13;break}e=(f[m>>2]|0)-j|0;if((GHa(l,1,e,f[k>>2]|0)|0)!=(e|0)){d=13;break}if((a|0)==1)e=f[n>>2]|0;else{d=12;break}}if((d|0)==7)if((GHa(e,1,1,f[k>>2]|0)|0)==1)d=12;else d=13;if((d|0)==12){d=14;break}else if((d|0)==13){a=-1;break}}else d=14;while(0);if((d|0)==14)a=ZWa(c)|0;u=o;return a|0}function av(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;UX(o+1|0,124546,0,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1|22;q=n+1|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=fOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Cga(m,q,p,o,k)|0)|0;e=yS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1)+-1|0)|0)+15&-16)|0;ZXa(j,c);x=0;za(4,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;JCa(j);Ua(r|0)}else{JCa(j);r=Ku(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function bv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110712)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=c+12|0;Tpa(a,f[j>>2]|0);if((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,Tpa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)DS(a,c);u=i;return}function cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;a:do switch(f[a+4>>2]|0){case 1:{if((b+-1|0)>>>0<2){d=(b|0)==1?24:16;U0a(g,c);b=E_(d,1,c)|0;e=f[g>>2]|0;g=Fpa(e,10,a,b)|0;d=Fpa(e,12,g,E_(d,1,c)|0)|0;break a}if((b|0)==4)d=a;else Ca(64860,64871,81,64887);break}case 2:{switch(b|0){case 8:{d=a;break a}case 1:{e=56;break}case 4:case 2:{e=(b|0)==2?48:32;break}default:Ca(64918,64871,98,64887)}U0a(g,c);d=E_(e,2,c)|0;g=f[g>>2]|0;d=Fpa(g,37,Fpa(g,35,a,d)|0,E_(e,2,c)|0)|0;break}default:Ca(64899,64871,84,64887)}while(0);u=h;return d|0}function dv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+64|0;c=j+16|0;g=j+48|0;d=j+52|0;i=j+36|0;e=j+32|0;k=j;a=f[a+36>>2]|0;Bbb(a)|0;U0a(g,a);f[d>>2]=f[33161];a=f[33183]|0;f[33183]=a+1;m$a(k,a);f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];a=a0(g,c)|0;f[e>>2]=a;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,1);a=x;x=0;if(a&1){k=Ia()|0;uSa(i);Ua(k|0)}mda(i,e,e+4|0);x=0;f[c>>2]=f[d>>2];c=ka(10,g|0,c|0,i|0,0)|0;k=x;x=0;if(!(k&1)?(x=0,h=ja(51,g|0,c|0,b|0)|0,k=x,x=0,!(k&1)):0){uSa(i);u=j;return h|0}k=Ia()|0;uSa(i);Ua(k|0);return 0}function ev(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+48|0;l=k+24|0;i=k+12|0;j=k;gw(l,b);e=f[a+4>>2]|0;g=j+4|0;h=j+8|0;c=l+4|0;d=i+4|0;b=f[a>>2]|0;while(1){if((b|0)==(e|0)){b=1;a=9;break}x=0;ua(2981,i|0,f[b>>2]|0);a=x;x=0;if(a&1){a=6;break}f[j>>2]=0;f[g>>2]=0;f[h>>2]=0;x=0;xa(10,f[l>>2]|0,c|0,f[i>>2]|0,d|0,j|0);a=x;x=0;if(a&1){a=7;break}a=(f[g>>2]|0)==(f[j>>2]|0);uSa(j);MTa(i);if(a)b=b+4|0;else{b=0;a=9;break}}if((a|0)==6)b=Ia()|0;else if((a|0)==7){b=Ia()|0;uSa(j);MTa(i)}else if((a|0)==9){MTa(l);u=k;return b|0}MTa(l);Ua(b|0);return 0}function fv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;f[a>>2]=b;i=a+4|0;f[i>>2]=0;h=a+8|0;f[h>>2]=0;f[a+12>>2]=0;q8(a+16|0,1337);x=0;ua(3130,i|0,c|0);g=x;x=0;do if(!(g&1)){d=0;while(1){if(d>>>0>=c>>>0){b=10;break}x=0;e=ga(326,b|0)|0;g=x;x=0;if(g&1){b=9;break}j=(f[i>>2]|0)+(d<<2)|0;g=f[j>>2]|0;f[j>>2]=e;if(g|0){uSa(g);ubb(g)}d=d+1|0}if((b|0)==9){d=Ia()|0;break}else if((b|0)==10){I8(f[a+4>>2]|0,f[h>>2]|0);return}}else d=Ia()|0;while(0);MY(i);Ua(d|0)}function gv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j+16|0;c=j+8|0;g=j;i=o$a(b)|0;if((i|0)!=0?(f[c>>2]=f[i+8>>2],f[h>>2]=f[c>>2],!(MM(i,h)|0)):0){e=i+12|0;I$a(h,e);GUa(g,e);d=h+4|0;c=f[g>>2]|0;b=f[g+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[d>>2]|0,c,b)|0))break;g=LOa(h)|0;Tpa(a,f[g>>2]|0);RYa(h)}if((f[i+4>>2]|0)==5?(i=MCa(e)|0,(f[(f[i>>2]|0)+4>>2]|0)!=5):0)CM(a)}else Tpa(a,b);u=j;return}function hv(a){a=a|0;var b=0,c=0,d=0;c=f[(f[a+12>>2]|0)+4>>2]|0;a:do if((c|0)==5)b=5;else{d=a+8|0;do switch(f[d>>2]|0){case 19:case 17:case 15:case 13:case 11:case 9:case 7:case 5:case 3:case 1:case 18:case 16:case 14:case 12:case 10:case 8:case 6:case 4:case 2:case 0:{b=c;break a}case 21:case 20:{b=1;break a}case 48:case 47:{b=1;break a}case 51:case 50:case 49:case 23:case 22:{b=2;break a}case 24:{b=1;break a}case 43:{b=4;break a}case 44:{b=3;break a}case 33:case 31:case 29:case 27:case 25:{b=1;break a}case 34:case 32:case 30:case 28:case 26:{b=2;break a}case 41:case 39:case 37:case 35:case 45:{b=3;break a}case 42:case 40:case 38:case 36:case 46:{b=4;break a}default:{zma(Am(yCa(134176,93641)|0,f[d>>2]|0)|0,10)|0;hb()}}while(0)}while(0);f[a+4>>2]=b;return}function iv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;i=k+16|0;c=k;j=k+8|0;S9(c,a,b+12|0);d=f[c>>2]|0;f[i>>2]=d;e=i+4|0;h=c+4|0;g=f[h>>2]|0;f[e>>2]=g;f[c>>2]=0;f[h>>2]=0;h=a+104|0;c=f[h>>2]|0;do if(c>>>0>=(f[a+108>>2]|0)>>>0){x=0;ua(1456,a+100|0,i|0);h=x;x=0;if(h&1){k=Ia()|0;voa(f[e>>2]|0);voa(0);Ua(k|0)}else{c=f[e>>2]|0;break}}else{f[c>>2]=d;f[c+4>>2]=g;f[i>>2]=0;f[e>>2]=0;f[h>>2]=c+8;c=0}while(0);voa(c);voa(0);c=b+8|0;if(Iab(f[c>>2]|0)|0){h=Bbb(f[a+84>>2]|0)|0;b=iUa(a)|0;f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];sFa(a,i,b);QPa(h,b,0)}u=k;return}function jv(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;m=l;k=f[a+60>>2]|0;d=f[a+56>>2]|0;a:while(1){if((d|0)==(k|0)){c=3;break}NS(m,f[d>>2]|0);c=f[d>>2]|0;e=f[c+28>>2]|0;g=f[m>>2]|0;c=f[c+24>>2]|0;while(1){if((c|0)==(e|0))break;h=f[c>>2]|0;x=0;b=ga(257,f[h>>2]|0)|0;j=x;x=0;if(j&1){c=11;break a}i=b+8|0;j=f[g+(f[i>>2]<<2)>>2]|0;x=0;b=ja(67,a|0,f[b+12>>2]|0,g|0)|0;n=x;x=0;if(n&1){c=12;break a}if((b|0)==(j|0)){x=0;ta(484,h|0);n=x;x=0;if(n&1){c=13;break a}}else f[g+(f[i>>2]<<2)>>2]=b;c=c+4|0}uSa(m);d=d+4|0}if((c|0)==3){u=l;return}else if((c|0)==11)b=Ia()|0;else if((c|0)==12)b=Ia()|0;else if((c|0)==13)b=Ia()|0;uSa(m);Ua(b|0)}function kv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k;do if((((((c-a|0)>2?(b[a>>0]|0)==112:0)?(b[a+1>>0]|0)==116:0)?(l=a+2|0,e=Bc(l,c,d)|0,(e|0)!=(l|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){eY(j,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;l=a+-1|0;JJa(c+(l*24|0)|0);a=l}f[i>>2]=c+-24;x=0;ia(215,c+-48|0,123544)|0;l=x;x=0;if(!(l&1)?(l=b[j+11>>0]|0,d=l<<24>>24<0,x=0,ja(97,(f[i>>2]|0)+-24|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:l&255)|0)|0,l=x,x=0,!(l&1)):0){HTa(j);a=h;break}l=Ia()|0;HTa(j);Ua(l|0)}while(0);u=k;return a|0}function lv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;l=o+16|0;e=o+8|0;m=o+4|0;n=o;do if(!(T5a(c)|0)){k=Bbb(c)|0;f[e>>2]=k;if(b[a+44>>0]|0)if((GHa(e,4,1,f[a+32>>2]|0)|0)==1){d=14;break}else{a=-1;break}f[m>>2]=l;d=e+4|0;g=a+36|0;h=a+40|0;i=l+8|0;j=l;k=a+32|0;while(1){a=f[g>>2]|0;a=lc[f[(f[a>>2]|0)+12>>2]&15](a,f[h>>2]|0,e,d,n,l,i,m)|0;if((f[n>>2]|0)==(e|0)){d=13;break}if((a|0)==3){d=7;break}if(a>>>0>=2){d=13;break}e=(f[m>>2]|0)-j|0;if((GHa(l,1,e,f[k>>2]|0)|0)!=(e|0)){d=13;break}if((a|0)==1)e=f[n>>2]|0;else{d=12;break}}if((d|0)==7)if((GHa(e,1,1,f[k>>2]|0)|0)==1)d=12;else d=13;if((d|0)==12){d=14;break}else if((d|0)==13){a=-1;break}}else d=14;while(0);if((d|0)==14)a=UVa(c)|0;u=o;return a|0}function mv(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m+4|0;k=m;l=rb(20,c|0)|0;if(!l)pc[f[(f[b>>2]|0)+20>>2]&4095](b,56929);if((l|0)==(-1|0)){VP(d);fba(a,+kb(21,c|0),e)}else{h=l;e=h+8|0;h=h+12|0;if(((f[h>>2]|0)-(f[e>>2]|0)>>2|0)!=((f[d+4>>2]|0)-(f[d>>2]|0)>>4|0))pc[f[(f[b>>2]|0)+20>>2]&4095](b,56948);c=0;while(1){i=f[e>>2]|0;if(c>>>0>=(f[h>>2]|0)-i>>2>>>0)break;if((f[i+(c<<2)>>2]|0)!=(f[(f[d>>2]|0)+(c<<4)>>2]|0))pc[f[(f[b>>2]|0)+20>>2]&4095](b,56981);c=c+1|0}f[k>>2]=f[l>>2];f[j>>2]=f[k>>2];Nk(a,g,j,d)}u=m;return}function nv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=b;e=c-k>>3;d=a+8|0;g=f[a>>2]|0;j=g;do if(e>>>0>(f[d>>2]|0)-g>>3>>>0){IAa(a);if(e>>>0>536870911)_da();else{j=(f[d>>2]|0)-(f[a>>2]|0)|0;k=j>>2;ama(a,j>>3>>>0<268435455?(k>>>0>>0?e:k):536870911);lfa(a,b,c);break}}else{i=a+4|0;h=(f[i>>2]|0)-g>>3;g=e>>>0>h>>>0;h=g?b+(h<<3)|0:c;e=j;d=b;while(1){if((d|0)==(h|0))break;f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];e=e+8|0;d=d+8|0}if(g){lfa(a,h,c);break}else{f[i>>2]=j+((h-k|0)>>>3<<3);break}}while(0);return}function ov(a,b){a=a|0;b=b|0;var c=0;do switch(f[b+8>>2]|0){case 71:case 70:case 58:case 57:case 41:case 40:case 16:case 15:case 75:case 73:case 74:case 72:case 62:case 60:case 61:case 59:case 48:case 49:case 46:case 47:case 44:case 45:case 42:case 43:case 23:case 24:case 21:case 22:case 19:case 20:case 17:case 18:case 69:case 68:case 67:case 64:case 63:case 56:case 55:case 54:case 51:case 50:case 39:case 38:case 37:case 36:case 35:case 34:case 33:case 32:case 26:case 25:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 1:case 0:{c=1;break}case 2:{c=2;break}case 3:{c=3;break}case 4:{c=3;break}case 5:{c=3;break}case 6:{c=3;break}case 27:{c=2;break}case 28:{c=3;break}case 29:{c=3;break}case 30:{c=3;break}case 31:{c=3;break}case 52:{c=2;break}case 53:{c=3;break}case 65:{c=2;break}case 66:{c=3;break}default:hb()}while(0);c=(Hr(a,f[b+12>>2]|0)|0)+c|0;return c+(Hr(a,f[b+16>>2]|0)|0)|0}function pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;f[d>>2]=b;e=g;do if($1a(b,f[33210]|0)|0){b=Bbb(a)|0;if(Gab(f[a>>2]|0)|0){d=wSa()|0;a=pPa(b)|0;f4a(e,jna(d,f[a>>2]|0,c)|0);break}else{f4a(e,Bqa(PTa()|0,a,c)|0);break}}else if($1a(b,f[33221]|0)|0){d=Bbb($ta(3)|0)|0;f4a(e,Nqa(Nqa(Nqa(d,woa(133128)|0)|0,a)|0,c)|0);break}else{b=Bbb($ta(4)|0)|0;b=Nqa(b,woa(133156)|0)|0;f4a(e,Nqa(Nqa(Nqa(b,woa(d)|0)|0,a)|0,c)|0);break}while(0);u=g;return f[e>>2]|0}function qv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;i=l+8|0;j=l+4|0;k=l;do if(!(b[a+33>>0]|0))d=a+28|0;else{g=yCa(134176,110842)|0;d=a+28|0;e=f[d>>2]|0;e=zm(g,(f[e+4>>2]|0)+1-(f[e>>2]|0)|0)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,m=x,x=0,!(m&1)):0){JCa(i);Wq(e,h)|0;du(e)|0;break}m=Ia()|0;JCa(i);Ua(m|0)}while(0);m=Ev(f[d>>2]|0,35)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+8>>2];f[i>>2]=f[k>>2];f4a(j,$1(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function rv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110712)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=c+12|0;jGa(a,f[j>>2]|0);if((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,jGa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0){Ev(Ev(f[a+28>>2]|0,-2)|0,0)|0;CX(a,4,4,0)}u=i;return}function sv(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=c+144;f[a+8>>2]=d;b[a+12>>0]=e&1;c=a+16|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[a+40>>2]=-1;b[a+44>>0]=0;yUa(a+48|0);f[a+60>>2]=0;f[a+64>>2]=0;f[a+68>>2]=0;c=a+76|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;yUa(a+100|0);yUa(a+112|0);f[a+124>>2]=0;f[a+128>>2]=-1;yUa(a+132|0);c=a+184|0;d=a+144|0;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[c>>2]=1065353216;f[a+188>>2]=0;f[a+192>>2]=0;f[a+196>>2]=0;f[a+204>>2]=11;yUa(a+208|0);yUa(a+220|0);e=a+244|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+260>>2]=1065353216;f[a+264>>2]=0;return}function tv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;c=j+4|0;g=j;i=a+64|0;e=f[i>>2]|0;if(b[e+112>>0]|0?(b[e+113>>0]|0)==0:0){do if(b[a+72>>0]|0){d=yCa(134176,87887)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[c>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){JCa(c);Wq(d,h)|0;du(d)|0;break}k=Ia()|0;JCa(c);Ua(k|0)}while(0);k=A$(a,5)|0;e=f[a+68>>2]|0;f4a(g,1);Yr(e,f[g>>2]|0)|0;i=f[i>>2]|0;e=f[i+92>>2]|0;g=f[i+96>>2]|0;h=(Bbb(g)|0)!=65535;zP(a,e,g,h,(b[i+114>>0]|0)!=0);VA(a,k)}u=j;return}function uv(a){a=a|0;var c=0,d=0,e=0,g=0;a:do if(!(b[a+32>>0]|0)){e=a+4|0;g=a+28|0;d=f[a>>2]|0;while(1){if((d|0)==(e|0))break;Hs(f[g>>2]|0,f[d+20>>2]|0);c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}e=a+16|0;d=f[a+12>>2]|0;while(1){if((d|0)==(e|0))break a;Ys(f[g>>2]|0,f[d+20>>2]|0);c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}}while(0);M7(a);a8(a+12|0);return}function vv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h+12|0;i=h;e=(zWa(jF(Or(b,0)|0)|0,46)|0)+11|0;f[g>>2]=e;e=Op(g,(Dxa(c)|0)&255)|0;d=zWa(f[g>>2]|0,46)|0;f[g>>2]=d;if(d|0){d=d+1|0;f[g>>2]=d;if(!(D0(d,93135,7)|0))d=Is(a,b,c,e)|0;else d=am(a,b,c,e,d)|0;u=h;return d|0}b=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=h7a(93102)|0;x=0;va(87,i|0,93102,h|0);h=x;x=0;if(!(h&1)){x=0;ua(261,b|0,i|0);h=x;x=0;if(h&1)a=1;else{x=0;va(98,b|0,32200,457);x=0;a=0}d=Ia()|0;HTa(i);if(a)j=7}else{d=Ia()|0;j=7}if((j|0)==7)La(b|0);Ua(d|0);return 0}function wv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+11|0;d=b[i>>0]|0;e=d<<24>>24<0;if(e){k=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{k=d&255;g=10}c=k>>>0<11;j=c?10:(k+16&-16)+-1|0;a:do if((j|0)!=(g|0)){do if(c){c=f[a>>2]|0;if(e){g=0;d=c;e=a;h=12}else{$Ta(a,c,(d&255)+1|0)|0;ubb(c);h=15}}else{d=j+1|0;e=P1a(d)|0;if(j>>>0<=g>>>0&(e|0)==0)break a;c=b[i>>0]|0;if(c<<24>>24<0){g=1;d=f[a>>2]|0;h=12;break}else{$Ta(e,a,(c&255)+1|0)|0;c=a+4|0;h=14;break}}while(0);if((h|0)==12){c=a+4|0;$Ta(e,d,(f[c>>2]|0)+1|0)|0;ubb(d);if(g){d=j+1|0;h=14}else h=15}if((h|0)==14){f[a+8>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==15){b[i>>0]=k;break}}while(0);return}function xv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110646)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);jGa(a,f[c+8>>2]|0);jGa(a,f[c+12>>2]|0);jGa(a,f[c+16>>2]|0);a=f[a+28>>2]|0;if((f[c+4>>2]|0)==5)dTa(a);else Ev(a,27)|0;u=i;return}function yv(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=u;u=u+256|0;d=c+224|0;e=c+180|0;g=c+160|0;b=c;URa(g);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];f[d+16>>2]=f[g+16>>2];m3(e,a,d);h4a(e);x=0;ta(437,e|0);g=x;x=0;if(!(g&1)?(x=0,ta(438,e|0),g=x,x=0,!(g&1)):0){PQa(d,0);x=0;wa(130,b|0,a|0,d|0,0);g=x;x=0;do if(!(g&1)){x=0;ta(478,b|0);g=x;x=0;if(g&1){a=Ia()|0;dZ(b);break}else{g=(f[d+4>>2]|0)-(f[d>>2]|0)|0;dZ(b);uSa(d);Tca(e);u=c;return g|0}}else a=Ia()|0;while(0);uSa(d)}else a=Ia()|0;Tca(e);Ua(a|0);return 0}function zv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;d=k+4|0;e=k;g=c+12|0;h=f[g>>2]|0;do if(!(ZSa(h)|0)){i=c+16|0;j=f[i>>2]|0;if(!(ZSa(j)|0)){f[e>>2]=f[c+8>>2];f[d>>2]=f[e>>2];Rca(a,d);if(f[i>>2]|0)break;b[a+104>>0]=0;break}if(!h){Tba(a,j)|0;break}else{j=f[a+36>>2]|0;Bbb(j)|0;j=$Ra(j+144|0)|0;e=j+12|0;d7(e,2);g=Xba(a,f[g>>2]|0)|0;h=JDa(e,0)|0;f[h>>2]=g;h=f[i>>2]|0;i=JDa(e,1)|0;f[i>>2]=h;XJa(j,f[c+4>>2]|0);Tba(a,j)|0;break}}else Tba(a,h)|0;while(0);u=k;return}function Av(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;d=h+28|0;e=h+4|0;i=h+16|0;g=h;a:do if(b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,82004,h7a(82004)|0);x=0;ia(83,i|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}f[g>>2]=f[c>>2];x=0;f[d>>2]=f[g>>2];wa(103,a|0,e|0,d|0,0);g=x;x=0;if(g&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(i);break a}}else b=Ia()|0;while(0);HTa(i);Ua(b|0)}while(0);u=h;return}function Bv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;h=i+20|0;j=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;d=g+1|0;if(d>>>0>268435455)_da();k=(f[a+8>>2]|0)-e|0;e=k>>3;FN(j,k>>4>>>0<134217727?(e>>>0>>0?d:e):268435455,g,a+8|0);d=j+8|0;e=f[d>>2]|0;x=0;ua(679,h|0,b|0);b=x;x=0;do if(!(b&1)){x=0;va(107,e|0,h|0,f[c>>2]|0);k=x;x=0;if(k&1){d=Ia()|0;uSa(h);break}else{uSa(h);f[d>>2]=e+16;ZM(a,j);gca(j);u=i;return}}else d=Ia()|0;while(0);gca(j);Ua(d|0)}function Cv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+80|0;c=e+72|0;h=e+4|0;d=e;PQa(g,0);f4a(c,Bbb(f[a+36>>2]|0)|0);XU(h,c,g);qTa(h,b);x=0;ua(2677,h|0,f[b+36>>2]|0);c=x;x=0;do if(c&1)a=Ia()|0;else{x=0;ta(503,d|0);c=x;x=0;if(c&1){a=Ia()|0;break}b=b+40|0;a=f[d>>2]|0;f[d>>2]=0;c=f[b>>2]|0;f[b>>2]=a;if(!c)f[d>>2]=0;else{uSa(c);ubb(c);f[d>>2]=0;a=f[b>>2]|0}_8(a,h);xfa(h);uSa(g);u=e;return}while(0);xfa(h);uSa(g);Ua(a|0)}function Dv(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=Zz(a,b,c,d,g)|0;if(iD(g,e,d)|0){i=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=i;e=h+1|0;if(iD(g,d,c)|0){e=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=e;e=h+2|0;if(iD(g,c,b)|0){i=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=i;if(iD(g,b,a)|0){e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=h+4|0}else e=h+3|0}}}else e=h;return e|0}function Ev(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do if(!(b[a+12>>0]|0))d=a+4|0;else{e=yCa(Am(yCa(134176,87175)|0,c&255)|0,87596)|0;d=a+4|0;e=yCa(zm(e,(f[d>>2]|0)-(f[a>>2]|0)|0)|0,123274)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(e,h)|0;du(e)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);b[i>>0]=c;e=f[d>>2]|0;if(e>>>0<(f[a+8>>2]|0)>>>0){b[e>>0]=c;f[d>>2]=(f[d>>2]|0)+1}else WL(a,i);u=j;return a|0}function Fv(){var a=0,c=0,d=0,e=0;if(b[135320]|0?(d=yCa(134176,52410)|0,zma(xm(d,f[32970]|0)|0,10)|0,b[135320]|0):0)yCa(134176,52434)|0;pb(2)|0;a=f[32970]|0;c=f[a+28>>2]|0;a=f[a+24>>2]|0;while(1){if((a|0)==(c|0))break;d=f[a>>2]|0;if(!(f[d+8>>2]|0))rb(3,f[d>>2]|0)|0;a=a+4|0}a=f[32970]|0;c=f[a+16>>2]|0;a=f[a+12>>2]|0;while(1){if((a|0)==(c|0))break;d=f[a>>2]|0;tb(4,f[d+4>>2]|0,f[d+8>>2]|0,f[d>>2]|0)|0;a=a+4|0}if(b[135320]|0)yCa(134176,52910)|0;a=n8(40)|0;c=f[32970]|0;x=0;d=ga(212,8)|0;e=x;x=0;if(!(e&1)?(e=d,f[e>>2]=0,f[e+4>>2]=0,Cya(d),x=0,va(91,a|0,c|0,d|0),e=x,x=0,!(e&1)):0){f[32969]=a;pb(5)|0;return}e=Ia()|0;ubb(a);Ua(e|0)}function Gv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+24|0;j=l;k=l+12|0;if(((((c-a|0)>2?(b[a>>0]|0)==116:0)?(b[a+1>>0]|0)==119:0)?(m=a+2|0,g=Bc(m,c,d)|0,(g|0)!=(m|0)):0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){eY(k,e+-24|0);x=0;ja(101,k|0,0,123472)|0;m=x;x=0;if(m&1){m=Ia()|0;HTa(k);Ua(m|0)}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}NY(i,j);tA((f[h>>2]|0)+-24|0,i);JJa(i);HTa(j);HTa(k);a=g}u=l;return a|0}function Hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;l=k+4|0;g=k;f[l>>2]=0;h=l+4|0;f[h>>2]=0;i=l+8|0;f[i>>2]=0;j=c+4|0;d=f[c>>2]|0;while(1){if((d|0)==(j|0)){d=3;break}c=f[d+16>>2]|0;f[g>>2]=c;e=f[h>>2]|0;if((e|0)==(f[i>>2]|0)){x=0;ua(524,l|0,g|0);e=x;x=0;if(e&1){d=14;break}}else{f[e>>2]=c;f[h>>2]=e+4}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}do if((d|0)==3){x=0;va(133,a|0,b|0,l|0);b=x;x=0;if(b&1){c=Ia()|0;break}else{uSa(l);u=k;return}}else if((d|0)==14)c=Ia()|0;while(0);uSa(l);Ua(c|0)}function Iv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+12|0;j=h+8|0;d=h+4|0;e=h;g=Yx(a,Or(b,1)|0)|0;i=f[a>>2]|0;f[j>>2]=g;f[c>>2]=f[j>>2];i=ana(i,c)|0;if((i|0)!=0?(f[i+12>>2]|0)==0:0){j=eQa(f[a+4>>2]|0)|0;f[j+24>>2]=g;i=f[a>>2]|0;f[d>>2]=g;f[c>>2]=f[d>>2];g=hJ(i,c)|0;i=f[a>>2]|0;f[e>>2]=f[g+16>>2];f[c>>2]=f[e>>2];c=(KI(i,c)|0)+4|0;f[j+4>>2]=f[c>>2];u7(a,b,XXa(b)|0,j);c=j}else{c=nSa(f[a+4>>2]|0)|0;f[c+24>>2]=g;j=vZ(a+52|0,c+24|0)|0;f[c+4>>2]=f[j>>2];u7(a,b,XXa(b)|0,c);X$a(c)}u=h;return c|0}function Jv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;h=k+16|0;i=k+4|0;e=k+8|0;g=k;l=$1a(c,-1)|0;j=a+52|0;d=(b[j>>0]|0)!=0;a:do if(l){if(!d){c=f[a+48>>2]|0;l=(($1a(c,-1)|0)^1)&1;b[j>>0]=l}}else{do if(d){d=a+48|0;l=X6a(f[d>>2]|0)|0;b[e>>0]=l;l=f[a+36>>2]|0;switch(lc[f[(f[l>>2]|0)+12>>2]&15](l,f[a+40>>2]|0,e,e+1|0,g,h,h+8|0,i)|0){case 1:case 2:{c=-1;break a}case 3:{b[h>>0]=f[d>>2];f[i>>2]=h+1;break}default:{}}a=a+32|0;while(1){e=f[i>>2]|0;if(e>>>0<=h>>>0){a=11;break}l=e+-1|0;f[i>>2]=l;if((o0(b[l>>0]|0,f[a>>2]|0)|0)==-1){a=14;break}}if((a|0)==11)break;else if((a|0)==14){c=-1;break a}}else d=a+48|0;while(0);f[d>>2]=c;b[j>>0]=1}while(0);u=k;return c|0}function Kv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;do if((f[b+4>>2]|0)==5){h=a+48|0;d=a+36|0;while(1){f[g>>2]=b;b=e_(h,g)|0;b=f[b>>2]|0;if(!b){e=11;break}c=b+4|0;if((f[c>>2]|0)==5){e=11;break}a=o$a(b)|0;if(!a){a=S$a(b)|0;if(a){LI(a);if((f[c>>2]|0)!=5){e=12;break}}else e=13}else{e=MCa(a+12|0)|0;if(o2a(f[(f[e>>2]|0)+4>>2]|0)|0){e=12;break}a=a+8|0;if(Iab(f[a>>2]|0)|0?(e=(CW(d,a)|0)+4|0,(f[e>>2]|0)!=0):0){e=12;break}else e=13}if((e|0)==13){e=0;f[c>>2]=5}}if((e|0)==11)break;else if((e|0)==12)break}while(0);u=i;return}function Lv(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;switch(b|0){case 32:{i=7;break}case 33:{i=8;break}case 34:{i=9;break}default:hb()}l=a+44|0;k=f[l>>2]|0;n=LPa(h)|0;m=f[l>>2]|0;b=LPa(e)|0;b=NKa(f[m>>2]|0,b,1)|0;e=f[l>>2]|0;j=LPa(h)|0;j=NKa(f[e>>2]|0,j,1)|0;j=Lya(k,n,Fpa(f[m>>2]|0,i,b,j)|0)|0;b=f[l>>2]|0;e=LPa(d)|0;e=NKa(f[b>>2]|0,e,1)|0;d=f[l>>2]|0;g=LPa(g)|0;g=NKa(f[d>>2]|0,g,1)|0;g=Sza(k,c,j,Fpa(f[b>>2]|0,i,e,g)|0)|0;Tl(a,g,h);return g|0}function Mv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+4|0;j=k;f[i>>2]=c;f[j>>2]=d;e=FVa(b,c)|0;g=FVa(b,d)|0;if(e)if(g)if((FVa(b,d)|0)&e)b=c>>>0>>0;else h=6;else b=1;else if(e|g^1)h=6;else b=0;do if((h|0)==6){c=a+44|0;b=e_(c,i)|0;b=f[b>>2]|0;h=e_(c,j)|0;h=(b|0)==(f[h>>2]|0);b=e_(c,i)|0;b=f[b>>2]|0;if(!h){j=e_(c,j)|0;b=b>>>0>(f[j>>2]|0)>>>0;break}if(!b){b=(f[i>>2]|0)>>>0<(f[j>>2]|0)>>>0;break}else{b=a+56|0;i=e_(b,i)|0;i=f[i>>2]|0;b=e_(b,j)|0;b=i>>>0<(f[b>>2]|0)>>>0;break}}while(0);u=k;return b|0}function Nv(a){a=a|0;var b=0,c=0;a:while(1){if((f[a+4>>2]|0)==5)break;b=E_a(a)|0;do if(!b){b=o$a(a)|0;if(b|0){if(Iab(f[b+8>>2]|0)|0)break a;if(!(Bbb(f[b+16>>2]|0)|0))break a;a=MCa(b+12|0)|0;a=f[a>>2]|0;break}b=C$a(a)|0;if(b|0){a=f[b+12>>2]|0;break}b=S$a(a)|0;if(!b){b=n$a(a)|0;if(!b)break a;if(!(f[b+16>>2]|0))break a;b=f[b+12>>2]|0;if(!b)break a;else{a=b;break}}else{c=f[b+16>>2]|0;if(!c)break a;b=f[b+12>>2]|0;if((f[b+4>>2]|0)==5){a=c;break}if((f[c+4>>2]|0)==5){a=b;break}else break a}}else{if(!(Iab(f[b+4>>2]|0)|0))break a;a=f[b+12>>2]|0}while(0)}return a|0}function Ov(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+64|0;j=k+40|0;h=k+24|0;g=k+16|0;e=k;i=k+56|0;if(zWa(118709,b[c>>0]|0)|0){d=Kc(1156)|0;if(!d)d=0;else{gH(d|0,0,124)|0;if(!(zWa(c,43)|0))f[d>>2]=(b[c>>0]|0)==114?8:4;if(zWa(c,101)|0){f[e>>2]=a;f[e+4>>2]=2;f[e+8>>2]=1;Za(221,e|0)|0}if((b[c>>0]|0)==97){f[g>>2]=a;f[g+4>>2]=3;c=Za(221,g|0)|0;if(!(c&1024)){f[h>>2]=a;f[h+4>>2]=4;f[h+8>>2]=c|1024;Za(221,h|0)|0}e=f[d>>2]|128;f[d>>2]=e}else e=f[d>>2]|0;f[d+60>>2]=a;f[d+44>>2]=d+132;f[d+48>>2]=1024;c=d+75|0;b[c>>0]=-1;if((e&8|0)==0?(f[j>>2]=a,f[j+4>>2]=21523,f[j+8>>2]=i,($a(54,j|0)|0)==0):0)b[c>>0]=10;f[d+32>>2]=15;f[d+36>>2]=13;f[d+40>>2]=14;f[d+12>>2]=147;if(!(f[33433]|0))f[d+76>>2]=-1;_Ma(d)|0}}else{f[33448]=22;d=0}u=k;return d|0}function Pv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;h=k+16|0;i=k+8|0;e=k+4|0;g=k;l=T5a(c)|0;j=a+52|0;d=(b[j>>0]|0)!=0;a:do if(l){if(!d){c=f[a+48>>2]|0;l=((T5a(c)|0)^1)&1;b[j>>0]=l}}else{do if(d){d=a+48|0;l=Bbb(f[d>>2]|0)|0;f[e>>2]=l;l=f[a+36>>2]|0;switch(lc[f[(f[l>>2]|0)+12>>2]&15](l,f[a+40>>2]|0,e,e+4|0,g,h,h+8|0,i)|0){case 1:case 2:{c=-1;break a}case 3:{b[h>>0]=f[d>>2];f[i>>2]=h+1;break}default:{}}a=a+32|0;while(1){e=f[i>>2]|0;if(e>>>0<=h>>>0){a=11;break}l=e+-1|0;f[i>>2]=l;if((o0(b[l>>0]|0,f[a>>2]|0)|0)==-1){a=14;break}}if((a|0)==11)break;else if((a|0)==14){c=-1;break a}}else d=a+48|0;while(0);f[d>>2]=c;b[j>>0]=1}while(0);u=k;return c|0}function Qv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;d=k+4|0;g=k;i=a+64|0;if(Iab(f[(f[i>>2]|0)+116>>2]|0)|0){do if(b[a+72>>0]|0){j=yCa(134176,87831)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[c>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(c);Wq(j,h)|0;du(j)|0;break}l=Ia()|0;JCa(c);Ua(l|0)}while(0);l=A$(a,8)|0;j=f[a+68>>2]|0;d1a(g,f[(f[i>>2]|0)+116>>2]|0);f[c>>2]=f[g>>2];f4a(d,V1(a,c)|0);Yr(j,f[d>>2]|0)|0;VA(a,l)}u=k;return}function Rv(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+64|0;e=i;g=i+16|0;h=a+64|0;c=f[h>>2]|0;d=f[c+40>>2]|0;c=f[c+36>>2]|0;while(1){if((c|0)==(d|0)){b=3;break}b=f[c>>2]|0;if(Gab(f[b+32>>2]|0)|0){XA(e,b);x=0;b=ia(55,e|0,f[h>>2]|0)|0;j=x;x=0;if(j&1){b=7;break}f[(f[c>>2]|0)+32>>2]=f[b>>2];HTa(e)}c=c+4|0}if((b|0)==3){Go(g,f[h>>2]|0);KD(a+12|0,g);KD(a+32|0,g+20|0);wHa(g);u=i;return}else if((b|0)==7){j=Ia()|0;HTa(e);Ua(j|0)}}function Sv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,d,h7a(d)|0);x=0;ia(83,h|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(121,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(h);b=0;break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=i;return b|0}function Tv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,d,h7a(d)|0);x=0;ia(83,h|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(102,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(h);b=0;break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=i;return b|0}function Uv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,d,h7a(d)|0);x=0;ia(83,h|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(122,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(h);b=0;break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=i;return b|0}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,d,h7a(d)|0);x=0;ia(83,h|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(117,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(h);b=0;break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=i;return b|0}function Wv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;h=l+8|0;i=l+4|0;j=l;k=d+8|0;while(1){if((a|0)==(c|0))break;e=f[a>>2]|0;g=(f[e+8>>2]|0)!=0;f[i>>2]=f[e>>2];f[h>>2]=f[i>>2];Ou(d,g,h,81660,0)|0;g=f[a>>2]|0;e=f[f[g+8>>2]>>2]|0;if(G6a(e)|0)e=1;else e=i4a(e)|0;f[j>>2]=f[g>>2];f[h>>2]=f[j>>2];Ou(d,e,h,81689,0)|0;e=f[a>>2]|0;g=f[e+8>>2]|0;g=(Qp(d,f[e+4>>2]|0,f[g+4>>2]|0,g,81715,0)|0)^1;if((b[k>>0]|0)==0&g){g=yCa(ay(d,0)|0,81750)|0;yCa(wfa(g,f[f[a>>2]>>2]|0)|0,87602)|0}a=a+4|0}u=l;return}function Xv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;c=b+8|0;i=Jm(a+48|0,c)|0;i=f[i>>2]|0;f[c>>2]=i;c=b+4|0;do if((f[c>>2]|0)==2){f[c>>2]=1;mD(k,a,1);c=a+44|0;d=f[c>>2]|0;x=0;e=ga(320,k|0)|0;l=x;x=0;if((!(l&1)?(x=0,g=ja(46,f[f[c>>2]>>2]|0,i+1|0,1)|0,l=x,x=0,!(l&1)):0)?(x=0,h=ja(45,d|0,e|0,g|0)|0,l=x,x=0,!(l&1)):0){x=0;c=ja(70,f[c>>2]|0,h|0,b|0)|0;l=x;x=0;if(!(l&1)?(BVa(f[a+16>>2]|0,c)|0,x=0,va(161,a|0,c|0,k|0),l=x,x=0,!(l&1)):0){HCa(k);break}c=Ia()|0}else c=Ia()|0;HCa(k);Ua(c|0)}while(0);u=j;return}function Yv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,d,h7a(d)|0);x=0;ia(83,h|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(128,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(h);b=0;break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=i;return b|0}function Zv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,d,h7a(d)|0);x=0;ia(83,h|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(123,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(h);b=0;break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=i;return b|0}function _v(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+12|0;i=a+104|0;a:do if((b[i>>0]|0)==0?(g=c+16|0,e=f[g>>2]|0,(Bbb(e)|0)>>>0>1):0){d=0;while(1){if(d>>>0>=(e+-1|0)>>>0)break a;e=JDa(h,d)|0;d=d+1|0;if((f[(f[e>>2]|0)+4>>2]|0)==5)break;e=f[g>>2]|0}d7(h,d)}while(0);d=c+8|0;if(Iab(f[d>>2]|0)|0){e=a+108|0;if(!(b[i>>0]|0))g=(K5(e,d)|0)!=0&1;else g=1;b[i>>0]=g;X7(e,d)}if((Bbb(f[c+16>>2]|0)|0)==1?(i=JDa(h,0)|0,w8a(f[(f[i>>2]|0)+4>>2]|0)|0):0)Tba(a,Qza(c,a)|0)|0;else n_(a+44|0,c);return}function $v(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k+4|0;j=k;do if(!(b[a+33>>0]|0))d=a+28|0;else{h=yCa(134176,110884)|0;d=a+28|0;e=f[d>>2]|0;e=zm(h,(f[e+4>>2]|0)+1-(f[e>>2]|0)|0)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[g>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,i=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,l=x,x=0,!(l&1)):0){JCa(g);Wq(e,i)|0;du(e)|0;break}l=Ia()|0;JCa(g);Ua(l|0)}while(0);l=Ev(f[d>>2]|0,32)|0;c=e_(a+44|0,c+8|0)|0;f4a(j,f[c>>2]|0);Yr(l,f[j>>2]|0)|0;u=k;return}function aw(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i+12|0;h=i;do if(b[a+1>>0]|0){e=b[d+11>>0]|0;if(e<<24>>24<0)e=f[d+4>>2]|0;else e=e&255;if(e){w4(g,d);x=0;va(121,a|0,c|0,g|0);h=x;x=0;if(h&1){e=Ia()|0;HTa(g);g=13;break}else{HTa(g);g=12;break}}else g=9}else g=9;while(0);do if((g|0)==9){w4(h,d);x=0;va(122,a|0,c|0,h|0);d=x;x=0;if(d&1){e=Ia()|0;HTa(h);g=13;break}else{HTa(h);g=12;break}}while(0);if((g|0)==12){u=i;return}else if((g|0)==13)Ua(e|0)}function bw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;Qra(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);h=f[a+36>>2]|0;Bbb(h)|0;rra(a,(b[h+114>>0]|0)==0,c);h=c+4|0;XX(a,b[c+8>>0]|0,f[h>>2]|0,c);Oaa(a,f[(f[c+16>>2]|0)+4>>2]|0,1,c,83797);i=c+20|0;d=f[(f[i>>2]|0)+4>>2]|0;g=c+24|0;if((d|0)!=5){e=f[(f[g>>2]|0)+4>>2]|0;if((e|0)!=5){yja(a,d,e,c);d=f[(f[i>>2]|0)+4>>2]|0}}else d=5;Oaa(a,f[h>>2]|0,d,c,83863);Oaa(a,f[h>>2]|0,f[(f[g>>2]|0)+4>>2]|0,c,83903);Qka(a,f[(f[i>>2]|0)+4>>2]|0,c,83946);return}function cw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110602)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);switch(f[c+8>>2]|0){case 1:break;case 2:{j=JDa(c+16|0,0)|0;Tpa(a,f[j>>2]|0);break}default:hb()}DS(a,c);u=i;return}function dw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+48|0;e=g;h=g+4|0;f[e>>2]=b;YIa(h);x=0;ua(2983,h|0,e|0);e=x;x=0;do if(!(e&1)){yUa(a);d=h+28|0;e=a+4|0;c=f[h+24>>2]|0;while(1){if((c|0)==(d|0)){c=13;break}b=c+16|0;x=0;wa(152,a|0,e|0,b|0,b|0);b=x;x=0;if(b&1){c=12;break}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((c|0)==12){b=Ia()|0;ULa(a);break}else if((c|0)==13){VRa(h);u=g;return}}else b=Ia()|0;while(0);VRa(h);Ua(b|0)}function ew(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if($1a(a,f[c+8>>2]|0)|0)jJ(c,d,e,g);else{p=c+52|0;i=b[p>>0]|0;j=c+53|0;k=b[j>>0]|0;o=f[a+12>>2]|0;l=a+16+(o<<3)|0;b[p>>0]=0;b[j>>0]=0;T2(a+16|0,c,d,e,g,h);a:do if((o|0)>1){m=c+24|0;n=a+8|0;o=c+54|0;a=a+24|0;do{if(b[o>>0]|0)break a;if(!(b[p>>0]|0)){if(b[j>>0]|0?(f[n>>2]&1|0)==0:0)break a}else{if((f[m>>2]|0)==1)break a;if(!(f[n>>2]&2))break a}b[p>>0]=0;b[j>>0]=0;T2(a,c,d,e,g,h);a=a+8|0}while(a>>>0>>0)}while(0);b[p>>0]=i;b[j>>0]=k}return}function fw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;d=k+8|0;h=k+4|0;i=k;do if(b[a+33>>0]|0){j=yCa(134176,110823)|0;ZXa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[d>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(d);Wq(j,g)|0;du(j)|0;break}l=Ia()|0;JCa(d);Ua(l|0)}while(0);jGa(a,f[c+12>>2]|0);l=Ev(f[a+28>>2]|0,36)|0;j=f[a+24>>2]|0;f[i>>2]=f[c+8>>2];f[d>>2]=f[i>>2];f4a(h,$1(j,d)|0);Yr(l,f[h>>2]|0)|0;u=k;return}function gw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+48|0;e=g;h=g+4|0;f[e>>2]=b;YIa(h);x=0;ua(2982,h|0,e|0);e=x;x=0;do if(!(e&1)){yUa(a);d=h+28|0;e=a+4|0;c=f[h+24>>2]|0;while(1){if((c|0)==(d|0)){c=13;break}b=c+16|0;x=0;wa(152,a|0,e|0,b|0,b|0);b=x;x=0;if(b&1){c=12;break}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((c|0)==12){b=Ia()|0;ULa(a);break}else if((c|0)==13){VRa(h);u=g;return}}else b=Ia()|0;while(0);VRa(h);Ua(b|0)}function hw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+80|0;d=h;e=h+36|0;i=Bbb(f[b+4>>2]|0)|0;c=Bbb(f[b>>2]|0)|0;i=i-c|0;g=i+1|0;do if(i){if(!g){JT(d,a,32);c=kaa(d)|0;break}i=32-(_(g|0)|0)|0;JT(e,a,i+(((-1>>>(33-i|0)&g|0)==0)<<31>>31)|0);do c=kaa(e)|0;while(c>>>0>=g>>>0);c=(Bbb(f[b>>2]|0)|0)+c|0}while(0);u=h;return c|0}function iw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+96|0;h=j+4|0;e=j;g=a+12|0;d=a+16|0;c=f[d>>2]|0;do if((Bbb(c)|0)==1){c=JDa(g,0)|0;c=f[c>>2]|0;f[e>>2]=f[a+8>>2];f[h>>2]=f[e>>2];if(MM(c,h)|0){c=f[d>>2]|0;i=7;break}c=JDa(g,0)|0;c=f[c>>2]|0;fA(h,_Ya(f[b+40>>2]|0)|0,c);g=lza(h)|0;V7(h);if(!g?!(o2a(f[c+4>>2]|0)|0):0){b=f[b+36>>2]|0;Bbb(b)|0;U0a(h,b);a=vu(h,a)|0}else a=c}else i=7;while(0);if((i|0)==7)if(!(Bbb(c)|0))eUa(a)|0;u=j;return a|0}function jw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+64|0;h=k;do if(!a)yCa(b,73872)|0;else{AM(h,b);jOa(h,c);if(!d){x=0;c=fa(64)|0;d=x;x=0;if(!(d&1))if(c)j=6;else j=11}else j=6;if(((((j|0)==6?(U2a(h),x=0,i=ia(62,b|0,118454)|0,d=x,x=0,!(d&1)):0)?(x=0,e=ga(228,f[a+4>>2]|0)|0,d=x,x=0,!(d&1)):0)?(x=0,g=ia(62,i|0,e|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,g|0,81230)|0,i=x,x=0,!(i&1)):0)j=11;if((j|0)==11?(x=0,ua(639,h|0,a|0),j=x,x=0,!(j&1)):0){dWa(h);break}k=Ia()|0;dWa(h);Ua(k|0)}while(0);u=k;return b|0}function kw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e;d=c+1|0;i=tB(Or(b,c)|0,94183)|0;f[(f[a>>2]|0)+92>>2]=i;do if((d|0)!=(XXa(b)|0)){d=UG(jF(Or(b,d)|0)|0)|0;b=I;if(!(b>>>0>0|(b|0)==0&d>>>0>65535)){rHa((f[a>>2]|0)+96|0,d,b)|0;d=c+2|0;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;i=h7a(94205)|0;x=0;va(87,g|0,94205,i|0);i=x;x=0;if(!(i&1)){x=0;ua(261,a|0,g|0);i=x;x=0;if(i&1)b=1;else{x=0;va(98,a|0,32200,457);x=0;b=0}d=Ia()|0;HTa(g);if(b)h=8}else{d=Ia()|0;h=8}if((h|0)==8)La(a|0);Ua(d|0)}while(0);u=e;return d|0}function lw(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((1073741806-c|0)>>>0>>0)Mda();l=a+8|0;if((b[l+3>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<536870887){d=d+c|0;k=c<<1;d=d>>>0>>0?k:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823){d=Ea(8)|0;x=0;ua(98,d|0,121963);i=x;x=0;if(i&1){i=Ia()|0;La(d|0);Ua(i|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}}else d=1073741807;k=n8(d<<2)|0;if(g|0)sWa(k,m,g);if(i|0)sWa(k+(g<<2)|0,j,i);e=e-h|0;j=e-g|0;if(j|0)sWa(k+(g<<2)+(i<<2)|0,m+(g<<2)+(h<<2)|0,j);if((c|0)!=1)ubb(m);f[a>>2]=k;f[l>>2]=d|-2147483648;i=e+i|0;f[a+4>>2]=i;E1a(k+(i<<2)|0,0);return}function mw(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=u;u=u+112|0;h=g+56|0;i=g+48|0;n=g+24|0;m=g;j=g+72|0;k=g+108|0;uWa(n);m$a(h,Bbb(c)|0);l=n+8|0;f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];f[l+12>>2]=f[h+12>>2];f[n+4>>2]=1;uWa(m);l=m+8|0;f[l>>2]=f[e>>2];f[l+4>>2]=f[e+4>>2];f[l+8>>2]=f[e+8>>2];f[l+12>>2]=f[e+12>>2];l=f[e>>2]|0;f[m+4>>2]=l;jNa(j);b[j+8>>0]=d;rHa(j+16|0,d,0)|0;b[j+20>>0]=1;f[j+24>>2]=n;f[j+28>>2]=m;f[j+32>>2]=l;d=f[a+36>>2]|0;a=f[(f[d>>2]|0)+28>>2]|0;f[k>>2]=c;f[i>>2]=f[k>>2];f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];rc[a&255](d,j,i,h);u=g;return}function nw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110678)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+12>>2]|0);if((f[c+4>>2]|0)==5)CM(a);else DS(a,c);u=i;return}function ow(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+32|0;zfa(h,c)|0;g=a+44|0;f[g>>2]=0;i=a+48|0;e=f[i>>2]|0;if(e&8|0){c=b[h+11>>0]|0;if(c<<24>>24<0){c=f[h>>2]|0;d=c;c=c+(f[a+36>>2]|0)|0}else{d=h;c=h+(c&255)|0}f[g>>2]=c;f[a+8>>2]=d;f[a+12>>2]=d;f[a+16>>2]=c}if(e&16|0){e=h+11|0;c=b[e>>0]|0;if(c<<24>>24<0){d=f[a+36>>2]|0;f[g>>2]=(f[h>>2]|0)+d;c=(f[a+40>>2]&2147483647)+-1|0}else{d=c&255;f[g>>2]=h+d;c=10}AU(h,c);e=b[e>>0]|0;if(e<<24>>24<0){c=f[h>>2]|0;e=f[a+36>>2]|0}else{c=h;e=e&255}g=a+24|0;f[g>>2]=c;f[a+20>>2]=c;f[a+28>>2]=c+e;if(f[i>>2]&3|0){while(1){if((d|0)>=0)break;a=c+2147483647|0;f[g>>2]=a;d=d+-2147483647|0;c=a}if(d|0)f[g>>2]=c+d}}return}function pw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110809)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+24>>2]|0);if((f[c+4>>2]|0)==5)CM(a);else DS(a,c);u=i;return}function qw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j+16|0;c=j+8|0;g=j;i=o$a(b)|0;if((i|0)!=0?(f[c>>2]=f[i+8>>2],f[h>>2]=f[c>>2],!(MM(i,h)|0)):0){e=i+12|0;I$a(h,e);GUa(g,e);d=h+4|0;c=f[g>>2]|0;b=f[g+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[d>>2]|0,c,b)|0))break;g=LOa(h)|0;jGa(a,f[g>>2]|0);RYa(h)}if((f[i+4>>2]|0)==5?(i=MCa(e)|0,(f[(f[i>>2]|0)+4>>2]|0)!=5):0)dTa(f[a+28>>2]|0)}else jGa(a,b);u=j;return}function rw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110862)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+12>>2]|0);DS(a,c);if((f[c+4>>2]|0)==5)CM(a);u=i;return}function sw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;b[c+12>>0]=(c|0)==(a|0)&1;g=c;while(1){if((g|0)==(a|0))break;i=f[g+8>>2]|0;d=i+12|0;if(b[d>>0]|0)break;h=i+8|0;c=f[h>>2]|0;e=f[c>>2]|0;if((e|0)==(i|0)){e=f[c+4>>2]|0;if(!e){j=7;break}e=e+12|0;if(b[e>>0]|0){j=7;break}}else{if(!e){j=12;break}e=e+12|0;if(b[e>>0]|0){j=12;break}}b[d>>0]=1;b[c+12>>0]=(c|0)==(a|0)&1;b[e>>0]=1;g=c}if((j|0)==7){if((f[i>>2]|0)!=(g|0)){S7(i);c=f[h>>2]|0;d=c+12|0;c=f[c+8>>2]|0}b[d>>0]=1;b[c+12>>0]=0;T6(c)}else if((j|0)==12){if((f[i>>2]|0)==(g|0)){T6(i);c=f[h>>2]|0;d=c+12|0;c=f[c+8>>2]|0}b[d>>0]=1;b[c+12>>0]=0;S7(c)}return}function tw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=b+8|0;c=b+12|0;d=0;while(1){if(d>>>0>=(Bbb(f[c>>2]|0)|0)>>>0){c=11;break}g=JDa(h,d)|0;if(w8a(f[(f[g>>2]|0)+4>>2]|0)|0){c=4;break}d=d+1|0}do if((c|0)==4){if(!d){b=JDa(h,0)|0;b=f[b>>2]|0;Tba(a,b)|0;break}g=f[a+36>>2]|0;Bbb(g)|0;g=$Ra(g+144|0)|0;d=d+1|0;e=g+12|0;d7(e,d);c=0;while(1){if((c|0)==(d|0))break;j=JDa(h,c)|0;j=Xba(a,f[j>>2]|0)|0;i=JDa(e,c)|0;f[i>>2]=j;c=c+1|0}XJa(g,f[b+4>>2]|0);Tba(a,g)|0;b=g}while(0);return b|0}function uw(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+32|0;d=h;e=f[33201]|0;b=f[33200]|0;do if(((e-b|0)/20|0)>>>0>>0){g=f[33199]|0;c=(b-g|0)/20|0;b=c+a|0;if(b>>>0>214748364)_da();else{e=(e-g|0)/20|0;g=e<<1;UK(d,e>>>0<107374182?(g>>>0>>0?b:g):214748364,c);c0(d,a);PL(d);M1(d);break}}else j1(a);while(0);u=h;return}function vw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(!b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,d,h7a(d)|0);x=0;ia(83,i|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(120,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(i);break a}}else b=Ia()|0;while(0);HTa(i);Ua(b|0)}while(0);u=h;return}function ww(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;do if((a|0)!=(c|0)?(e=hk(a,c,d)|0,(e|0)!=(a|0)):0){g=jg(e,c,d)|0;if((g|0)!=(e|0)){e=d+4|0;c=f[e>>2]|0;if(((c-(f[d>>2]|0)|0)/24|0)>>>0>=2){eY(h,c+-24|0);c=f[e>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;JJa(c+(d*24|0)|0);a=d}f[e>>2]=c+-24;d=b[h+11>>0]|0;e=d<<24>>24<0;x=0;ja(97,c+-48|0,(e?f[h>>2]|0:h)|0,(e?f[h+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){i=Ia()|0;HTa(h);Ua(i|0)}else{HTa(h);a=g;break}}}else a=e}while(0);u=i;return a|0}function xw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(!b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,d,h7a(d)|0);x=0;ia(83,i|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(110,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(i);break a}}else b=Ia()|0;while(0);HTa(i);Ua(b|0)}while(0);u=h;return}function yw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,d,h7a(d)|0);x=0;ia(83,i|0,81642)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(116,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(i);break a}}else b=Ia()|0;while(0);HTa(i);Ua(b|0)}while(0);u=h;return}function zw(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if((a|0)!=(c|0))switch(b[a>>0]|0){case 88:{f=a+1|0;e=Bc(f,c,d)|0;if((e|0)==(f|0)|(e|0)==(c|0))break a;a=(b[e>>0]|0)==69?e+1|0:a;break a}case 74:{e=a+1|0;if((e|0)==(c|0))break a;while(1){if((b[e>>0]|0)==69)break;f=zw(e,c,d)|0;if((f|0)==(e|0))break a;else e=f}a=e+1|0;break a}case 76:{f=a+1|0;if((f|0)!=(c|0)?(b[f>>0]|0)==90:0){f=a+2|0;e=dd(f,c,d)|0;if((e|0)==(f|0)|(e|0)==(c|0))break a;a=(b[e>>0]|0)==69?e+1|0:a;break a}a=cd(a,c,d)|0;break a}default:{a=Cc(a,c,d)|0;break a}}while(0);return a|0}function Aw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83470,h7a(83470)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(113,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Bw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83430,h7a(83430)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(113,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Cw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=iD(d,b,a)|0;g=iD(d,c,b)|0;do if(e){e=f[a>>2]|0;if(g){f[a>>2]=f[c>>2];f[c>>2]=e;a=1;break}f[a>>2]=f[b>>2];f[b>>2]=e;if(iD(d,c,b)|0){a=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=a;a=2}else a=1}else if(g){g=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=g;if(iD(d,b,a)|0){g=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=g;a=2}else a=1}else a=0;while(0);return a|0}function Dw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=TTa(f[c>>2]|0,135184)|0;f[a+68>>2]=c;d=a+98|0;e=b[d>>0]|0;c=bc[f[(f[c>>2]|0)+28>>2]&511](c)|0;b[d>>0]=c&1;do if((e&255|0)!=(c&1|0)){e=a+8|0;d=a+96|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;e=(b[d>>0]|0)!=0;if(c){c=a+32|0;if(e)rbb(f[c>>2]|0);h=a+97|0;b[d>>0]=b[h>>0]|0;g=a+60|0;f[a+52>>2]=f[g>>2];a=a+56|0;f[c>>2]=f[a>>2];f[g>>2]=0;f[a>>2]=0;b[h>>0]=0;break}if(!e?(g=a+32|0,h=f[g>>2]|0,(h|0)!=(a+44|0)):0){e=f[a+52>>2]|0;f[a+60>>2]=e;f[a+56>>2]=h;b[a+97>>0]=0;a=qbb(e)|0;f[g>>2]=a;b[d>>0]=1;break}h=f[a+52>>2]|0;f[a+60>>2]=h;h=qbb(h)|0;f[a+56>>2]=h;b[a+97>>0]=1}while(0);return}function Ew(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83470,h7a(83470)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(111,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Fw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83470,h7a(83470)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(112,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Gw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83430,h7a(83430)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(111,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Hw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83430,h7a(83430)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(112,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Iw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83470,h7a(83470)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(114,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Jw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,84570,h7a(84570)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(118,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Kw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83430,h7a(83430)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(114,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Lw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(!b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,d,h7a(d)|0);x=0;ia(83,i|0,81342)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(104,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;HTa(g);break}else{HTa(g);HTa(i);break a}}else b=Ia()|0;while(0);HTa(i);Ua(b|0)}while(0);u=h;return}function Mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;Kk(a,b,c);do if(!(D0a(a)|0)){d=c+4|0;e=f[d>>2]|0;g=o2a(e)|0;b=f[a>>2]|0;if(g){if((b|0)==(e|0))break}else if((o2a(b)|0)^1|(b|0)==(e|0))break;g=yCa(134176,101251)|0;g=yCa(yCa(g,Aha(f[d>>2]|0)|0)|0,101261)|0;zma(xm(yCa(yCa(g,Aha(f[a>>2]|0)|0)|0,101271)|0,c)|0,10)|0;if((f[a>>2]|0)!=(f[d>>2]|0))Ca(101278,101307,128,110562)}while(0);return}function Nw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,84600,h7a(84600)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(119,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Ow(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,85136,h7a(85136)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(124,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Pw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,82749,h7a(82749)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(108,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Qw(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;c=g+16|0;d=g;e=g+20|0;h=g+4|0;a=Bbb(f[a>>2]|0)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,a,h7a(a)|0);x=0;ia(59,h|0,108413)|0;a=x;x=0;do if(!(a&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;va(88,d|0,((b[e+11>>0]|0)<0?f[e>>2]|0:e)|0,0);a=x;x=0;if(a&1){a=Ia()|0;HTa(e);break}else{E1a(c,f[d>>2]|0);HTa(e);HTa(h);u=g;return f[c>>2]|0}}else a=Ia()|0;while(0);HTa(h);Ua(a|0);return 0}function Rw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83470,h7a(83470)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(115,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Sw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,86417,h7a(86417)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(128,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Tw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83430,h7a(83430)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(115,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Uw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,85230,h7a(85230)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(125,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Vw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,85350,h7a(85350)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(126,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Ww(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,83430,h7a(83430)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(116,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Xw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,82668,h7a(82668)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(107,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function Yw(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=a+4|0;tW(a,(((f[j>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);e=f[d>>2]|0;if((b[e>>0]|0)!=40)Ca(65897,65740,620,66262);f[d>>2]=e+1;i=w0(c)|0;a:while(1){az(d);c=f[d>>2]|0;if((b[c>>0]|0)==41){g=c;break}Tea(i,Rm(a,d,66272)|0);az(d);c=f[d>>2]|0;switch(b[c>>0]|0){case 41:{g=c;break a}case 44:break;default:{h=7;break a}}f[d>>2]=c+1}if((h|0)==7)hb();f[d>>2]=g+1;e=f[j>>2]|0;a=e+-12|0;if((f[e+-8>>2]|0)!=(f[a>>2]|0))Ca(66275,65740,636,66262);c=0;while(1){if((c|0)==-1)break;h=c+-1|0;uSa(e+(h*12|0)|0);c=h}f[j>>2]=a;return i|0}function Zw(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+32|0;b=e+16|0;d=e+12|0;c=e;E1a(d,f[33024]|0);f[b>>2]=f[d>>2];do if(!(xAa(a,b)|0)){g=Bbb(f[a+28>>2]|0)|0;d=n8(24)|0;hPa(d);E1a(b,f[33024]|0);f[d>>2]=f[b>>2];E1a(b,f[33020]|0);f[d+4>>2]=f[b>>2];E1a(b,f[33024]|0);f[d+8>>2]=f[b>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,124695,h7a(124695)|0);x=0;b=ia(55,c|0,g|0)|0;g=x;x=0;if(g&1){g=Ia()|0;HTa(c);Ua(g|0)}else{f[d+16>>2]=f[b>>2];HTa(c);f[d+12>>2]=0;Ela(a,d);break}}while(0);u=e;return}function _w(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,85484,h7a(85484)|0);x=0;ia(83,h|0,81642)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(127,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function $w(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,85457,h7a(85457)|0);x=0;ia(83,h|0,81342)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(127,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function ax(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+64|0;n=q;p=f[a>>2]|0;o=a+(f[p+-8>>2]|0)|0;p=f[p+-4>>2]|0;f[n>>2]=c;f[n+4>>2]=a;f[n+8>>2]=39384;g=n+12|0;h=n+16|0;i=n+20|0;j=n+24|0;k=n+28|0;l=n+32|0;m=n+40|0;a=$1a(p,c)|0;c=g;e=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(e|0));d[g+40>>1]=0;b[g+42>>0]=0;a:do if(a){f[n+48>>2]=1;tc[f[(f[p>>2]|0)+20>>2]&15](p,n,o,o,1,0);a=(f[j>>2]|0)==1?o:0}else{sc[f[(f[p>>2]|0)+24>>2]&15](p,n,o,1,0);switch(f[n+36>>2]|0){case 0:{a=(f[m>>2]|0)==1&(f[k>>2]|0)==1&(f[l>>2]|0)==1?f[i>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((f[j>>2]|0)!=1?!((f[m>>2]|0)==0&(f[k>>2]|0)==1&(f[l>>2]|0)==1):0){a=0;break}a=f[h>>2]|0}while(0);u=q;return a|0}function bx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{j=(f[a+8>>2]|0)-d|0;i=j>>3;RX(c,j>>4>>>0<134217727?(i>>>0>>0?g:i):268435455,e,a+12|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=0;i=e+4|0;f[i>>2]=0;j=e+8|0;f[j>>2]=0;f[e+12>>2]=f[b+12>>2];f[e>>2]=f[b>>2];d=b+4|0;f[i>>2]=f[d>>2];i=b+8|0;f[j>>2]=f[i>>2];f[i>>2]=0;f[d>>2]=0;f[b>>2]=0;f[g>>2]=e+16;_A(a,c);yT(c);u=h;return}}function cx(a,b){a=a|0;b=b|0;var c=0;nbb(135232)|0;while(1){if((f[a>>2]|0)!=1)break;Ob(135260,135232)|0}do if(!(f[a>>2]|0)){f[a>>2]=1;x=0;ga(330,135232)|0;c=x;x=0;if((((!(c&1)?(x=0,ta(517,b|0),c=x,x=0,!(c&1)):0)?(x=0,ga(331,135232)|0,c=x,x=0,!(c&1)):0)?(f[a>>2]=-1,x=0,ga(330,135232)|0,c=x,x=0,!(c&1)):0)?(x=0,ga(332,135260)|0,c=x,x=0,!(c&1)):0)break;c=Ja(0)|0;Fa(c|0)|0;x=0;ga(331,135232)|0;c=x;x=0;if((!(c&1)?(f[a>>2]=0,x=0,ga(330,135232)|0,c=x,x=0,!(c&1)):0)?(x=0,ga(332,135260)|0,c=x,x=0,!(c&1)):0){x=0;sa(8);x=0}a=Ia()|0;x=0;sa(6);c=x;x=0;if(c&1){c=Ja(0)|0;r2a(c)}else Ua(a|0)}else nbb(135232)|0;while(0);return}function dx(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=c+8|0;g=a+44|0;h=eX(g,f[e>>2]|0)|0;if((h|0)!=(a+48|0)){i=h+20|0;d=iRa(f[f[i>>2]>>2]|0)|0;do if((b[a+93>>0]|0)==0?(f[(f[a+120>>2]|0)+(f[e>>2]<<2)>>2]|0)!=1:0){BVa(f[a+16>>2]|0,d)|0;if(Iab(f[d+4>>2]|0)|0)Ca(76958,76797,231,76829);else{bLa(d,1);break}}else j=4;while(0);if((j|0)==4)BVa(f[a+16>>2]|0,f[d+12>>2]|0)|0;f[f[i>>2]>>2]=c;eUa(c)|0;QI(g,h);b[a+92>>0]=1}return}function ex(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+96|0;i=k;g=a+40|0;l=_Ya(f[g>>2]|0)|0;fA(i,l,f[c>>2]|0);l=lza(i)|0;V7(i);if((!l?(j=un(a,b,c,0,0)|0,l=_Ya(f[g>>2]|0)|0,fA(i,l,f[d>>2]|0),l=lza(i)|0,V7(i),!l):0)?(h=un(a,b,d,j,0)|0,l=_Ya(f[g>>2]|0)|0,fA(i,l,f[e>>2]|0),l=lza(i)|0,V7(i),!l):0)un(a,b,e,h,0)|0;u=k;return}function fx(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+48|0;b=g+32|0;h=g+28|0;c=g+16|0;d=g+12|0;e=g;f[h>>2]=f[33166];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,105871,h7a(105871)|0);x=0;f[b>>2]=f[h>>2];va(157,a|0,b|0,c|0);h=x;x=0;do if(!(h&1)){HTa(c);f[d>>2]=f[33165];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,105871,h7a(105871)|0);x=0;f[b>>2]=f[d>>2];va(157,a|0,b|0,e|0);h=x;x=0;if(h&1){b=Ia()|0;HTa(e);break}else{HTa(e);u=g;return}}else{b=Ia()|0;HTa(c)}while(0);Ua(b|0)}function gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=b;k=c-i|0;e=a+8|0;d=f[a>>2]|0;j=d;do if(k>>>0>((f[e>>2]|0)-d|0)>>>0){IAa(a);d=Dab()|0;if(d>>>0>>0)_da();else{i=(f[e>>2]|0)-(f[a>>2]|0)|0;j=i<<1;jra(a,i>>>0>>1>>>0?(j>>>0>>0?k:j):d);cja(a,b,c,k);break}}else{h=a+4|0;g=(f[h>>2]|0)-d|0;e=k>>>0>g>>>0;g=e?b+g|0:c;d=g-i|0;if(d|0)fia(j|0,b|0,d|0)|0;if(e){cja(a,g,c,k-(f[h>>2]|0)+(f[a>>2]|0)|0);break}else{f[h>>2]=j+d;break}}while(0);return}function hx(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+192|0;l=m+32|0;i=m+184|0;j=m;k=m+180|0;b[i>>0]=b[119968]|0;b[i+1>>0]=b[119969]|0;b[i+2>>0]=b[119970]|0;b[i+3>>0]=b[119971]|0;b[i+4>>0]=b[119972]|0;b[i+5>>0]=b[119973]|0;a=fOa()|0;f[l>>2]=g;i=Cga(j,20,a,i,l)|0;a=j+i|0;g=yS(j,a,f[d+4>>2]|0)|0;ZXa(k,d);x=0;h=ia(73,f[k>>2]|0,134912)|0;n=x;x=0;if(n&1){n=Ia()|0;JCa(k);Ua(n|0)}else{JCa(k);fc[f[(f[h>>2]|0)+48>>2]&63](h,j,a,l)|0;n=l+(i<<2)|0;n=qu(f[c>>2]|0,l,(g|0)==(a|0)?n:l+(g-j<<2)|0,n,d,e)|0;u=m;return n|0}return 0}function ix(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+32|0;d=g;e=g+12|0;b=oq(a)|0;switch(b|0){case -64:{b=0;break}case -1:{b=1;break}case -2:{b=2;break}case -3:{b=3;break}case -4:{b=4;break}default:{BY(e,b);x=0;ia(83,e|0,97667)|0;g=x;x=0;do if(!(g&1)){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1869,a|0,d|0);g=x;x=0;if(g&1){c=Ia()|0;HTa(d);break}else{HTa(d);HTa(e);hb()}}else c=Ia()|0;while(0);HTa(e);Ua(c|0)}}u=g;return b|0}function jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;e=i+24|0;d=i+16|0;h=i;g=i+12|0;do if(!(K5(c,b)|0)){bG(e,c,b,b);f[d>>2]=f[b>>2];f[e>>2]=f[d>>2];d=(ZI(a,e)|0)+36|0;CV(h,f[d>>2]|0);d=f[h+4>>2]|0;b=f[h>>2]|0;while(1){if((b|0)==(d|0)){b=4;break}f[g>>2]=f[(f[b>>2]|0)+24>>2];x=0;f[e>>2]=f[g>>2];va(139,a|0,e|0,c|0);j=x;x=0;if(j&1){b=7;break}b=b+4|0}if((b|0)==4){_$a(h);break}else if((b|0)==7){j=Ia()|0;_$a(h);Ua(j|0)}}while(0);u=i;return}function kx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;h=k+12|0;i=k+16|0;j=k;f[h>>2]=b;c=oU((f[a>>2]|0)+64|0,h)|0;while(1){g=f[c>>2]|0;f[i>>2]=g;e=g;if(!g){b=8;break}c=f[a>>2]|0;d=Vz(c+44|0,i)|0;if(d){cR(j,d+12|0);x=0;wa(94,a|0,e|0,b|0,f[j>>2]|0);d=x;x=0;if(d&1){b=6;break}uSa(j);c=f[a>>2]|0}f[h>>2]=g;b=e;c=oU(c+64|0,i)|0}if((b|0)==6){k=Ia()|0;uSa(j);Ua(k|0)}else if((b|0)==8){u=k;return}}function lx(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=gC(a,b,c,d,g)|0;h=g+4|0;if(Mv(f[g>>2]|0,f[h>>2]|0,f[e>>2]|0,f[d>>2]|0)|0){j=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=j;e=i+1|0;if(Mv(f[g>>2]|0,f[h>>2]|0,f[d>>2]|0,f[c>>2]|0)|0){e=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=e;e=i+2|0;if(Mv(f[g>>2]|0,f[h>>2]|0,f[c>>2]|0,f[b>>2]|0)|0){j=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=j;if(Mv(f[g>>2]|0,f[h>>2]|0,f[b>>2]|0,f[a>>2]|0)|0){e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=i+4|0}else e=i+3|0}}}else e=i;return e|0}function mx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,d,h7a(d)|0);x=0;ia(83,h|0,81342)|0;d=x;x=0;do if(!(d&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;va(120,a|0,e|0,c|0);c=x;x=0;if(c&1){b=Ia()|0;HTa(e);break}else{HTa(e);HTa(h);break a}}else b=Ia()|0;while(0);HTa(h);Ua(b|0)}while(0);u=g;return}function nx(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;m=l+44|0;n=l+24|0;j=l;k=n8(184)|0;c=f[c>>2]|0;d=f[d>>2]|0;f[n>>2]=f[e>>2];f[n+4>>2]=f[e+4>>2];f[n+8>>2]=f[e+8>>2];f[n+12>>2]=f[e+12>>2];f[n+16>>2]=f[e+16>>2];TJa(j,f[g>>2]|0);h=(b[h>>0]|0)!=0;i=(b[i>>0]|0)!=0;x=0;f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];f[m+12>>2]=f[n+12>>2];f[m+16>>2]=f[n+16>>2];za(2,k|0,c|0,d|0,m|0,j|0,h|0,i|0);i=x;x=0;if(i&1){n=Ia()|0;sta(j);ubb(k);Ua(n|0)}else{f[a>>2]=k;sta(j);u=l;return}}function ox(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=b+16|0;c=b+20|0;e=0;while(1){if(e>>>0>=(Bbb(f[c>>2]|0)|0)>>>0)break;g=JDa(h,e)|0;if(w8a(f[(f[g>>2]|0)+4>>2]|0)|0){d=4;break}e=e+1|0}do if((d|0)==4){if(!e){h=JDa(h,0)|0;Tba(a,f[h>>2]|0)|0;break}g=f[a+36>>2]|0;Bbb(g)|0;g=$Ra(g+144|0)|0;d=e+1|0;e=g+12|0;d7(e,d);c=0;while(1){if((c|0)==(d|0))break;j=JDa(h,c)|0;j=Xba(a,f[j>>2]|0)|0;i=JDa(e,c)|0;f[i>>2]=j;c=c+1|0}XJa(g,f[b+4>>2]|0);Tba(a,g)|0}while(0);return}function px(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=b+8|0;c=b+12|0;e=0;while(1){if(e>>>0>=(Bbb(f[c>>2]|0)|0)>>>0)break;g=JDa(h,e)|0;if(w8a(f[(f[g>>2]|0)+4>>2]|0)|0){d=4;break}e=e+1|0}do if((d|0)==4){if(!e){h=JDa(h,0)|0;Tba(a,f[h>>2]|0)|0;break}g=f[a+36>>2]|0;Bbb(g)|0;g=$Ra(g+144|0)|0;d=e+1|0;e=g+12|0;d7(e,d);c=0;while(1){if((c|0)==(d|0))break;j=JDa(h,c)|0;j=Xba(a,f[j>>2]|0)|0;i=JDa(e,c)|0;f[i>>2]=j;c=c+1|0}XJa(g,f[b+4>>2]|0);Tba(a,g)|0}while(0);return}function qx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0;g=+mAa(d);e=qRa(g)|0;h=I&2147483647;if(h>>>0>2146435072|(h|0)==2146435072&e>>>0>0)pc[f[f[b>>2]>>2]&4095](b,101755);e=(f[d>>2]|0)==3;if((f[c+4>>2]|0)==1){if(e){if(!(VZa(mQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101774)}else{h=AHa(d)|0;if(!(CJa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101774)}m$a(a,~~g>>>0)}else{if(e){if(!(TZa(mQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101799)}else{h=AHa(d)|0;if(!(oLa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101799)}SSa(a,~~g>>>0,+K(g)>=1.0?(g>0.0?~~+Y(+J(g/4294967296.0),4294967295.0)>>>0:~~+W((g-+(~~g>>>0))/4294967296.0)>>>0):0)}return}function rx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=f[a+56>>2]|0;d=h+(b*20|0)+16|0;f[d>>2]=(f[d>>2]|0)+1;d=a+40|0;e=a+44|0;c=f[d>>2]|0;a=(f[e>>2]|0)-c>>2;do if(a>>>0>1){a=f[c+(a+-2<<2)>>2]|0;if(u4(a)|0){a=Jva(a)|0;d=h+(b*20|0)+8|0;e=f[d>>2]|0;c=h+(b*20|0)+12|0;if(e){if((f[c>>2]|0)!=(a|0)){a=0;i=5}}else i=5;if((i|0)==5)f[c>>2]=a;f[d>>2]=e+1;break}c=f[d>>2]|0;a=(f[e>>2]|0)-c>>2;if(a>>>0>2?(g=f[c+(a+-3<<2)>>2]|0,EQ(g)|0):0){a=VHa(g)|0;d=h+(b*20|0)|0;e=f[d>>2]|0;c=h+(b*20|0)+4|0;if(e){if((f[c>>2]|0)!=(a|0)){a=0;i=11}}else i=11;if((i|0)==11)f[c>>2]=a;f[d>>2]=e+1}}while(0);return}function sx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=_B(a,b,c,d)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(WPa(g,h)|0){f[d>>2]=g;f[e>>2]=h;e=i+1|0;g=f[d>>2]|0;h=f[c>>2]|0;if(WPa(g,h)|0){f[c>>2]=g;f[d>>2]=h;e=i+2|0;g=f[c>>2]|0;h=f[b>>2]|0;if(WPa(g,h)|0){f[b>>2]=g;f[c>>2]=h;e=f[b>>2]|0;g=f[a>>2]|0;if(WPa(e,g)|0){f[a>>2]=e;f[b>>2]=g;e=i+4|0}else e=i+3|0}}}else e=i;return e|0}function tx(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+96|0;l=m+32|0;i=m+76|0;j=m;k=m+72|0;b[i>>0]=b[119968]|0;b[i+1>>0]=b[119969]|0;b[i+2>>0]=b[119970]|0;b[i+3>>0]=b[119971]|0;b[i+4>>0]=b[119972]|0;b[i+5>>0]=b[119973]|0;a=fOa()|0;f[l>>2]=g;i=Cga(j,20,a,i,l)|0;a=j+i|0;g=yS(j,a,f[d+4>>2]|0)|0;ZXa(k,d);x=0;h=ia(73,f[k>>2]|0,134880)|0;n=x;x=0;if(n&1){n=Ia()|0;JCa(k);Ua(n|0)}else{JCa(k);fc[f[(f[h>>2]|0)+32>>2]&63](h,j,a,l)|0;n=l+i|0;n=Ku(f[c>>2]|0,l,(g|0)==(a|0)?n:l+(g-j)|0,n,d,e)|0;u=m;return n|0}return 0}function ux(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=c+12|0;d=j;while(1){d=f[d>>2]|0;e=E_a(d)|0;if(!e)break;else d=e+12|0}d=N_a(d)|0;h=a+40|0;e=c+8|0;g=f[e>>2]|0;do if(d){d=d+8|0;if(!(c9(h,g,f[d>>2]|0)|0)){YM(h,g);vd(h,f[e>>2]|0,f[d>>2]|0);break}if(b[a+28>>0]|0){if(Iab(f[c+4>>2]|0)|0)BVa(f[a>>2]|0,f[j>>2]|0)|0;else{U0a(i,f[a+32>>2]|0);j=gNa(f[i>>2]|0,f[j>>2]|0)|0;BVa(f[a>>2]|0,j)|0}b[a+36>>0]=1}}else YM(h,g);while(0);u=k;return}function vx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;do if(b[a+12>>0]|0){i=Am(yCa(134176,97441)|0,d&255)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){JCa(h);Wq(i,g)|0;du(i)|0;break}k=Ia()|0;JCa(h);Ua(k|0)}while(0);yg(h,a,nq(a)|0);f[c+8>>2]=f[h>>2];if(d<<24>>24==13){k=dk(a)|0;f[c+16>>2]=k}if(f[h+4>>2]|0){k=dk(a)|0;f[c+12>>2]=k}xqa(c);u=j;return}function wx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+128|0;c=h;yUa(a);d=a+12|0;yUa(d);e=a+24|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+40>>2]=1065353216;g=a+44|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[a+60>>2]=1065353216;x=0;wa(84,c|0,a|0,d|0,b|0);b=x;x=0;if(b&1){h=Ia()|0;d6(g);e6(e);tDa(d);doa(a);Ua(h|0)}else{pL(c);u=h;return}}function xx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=b;e=c-i>>3;d=a+8|0;k=f[a>>2]|0;j=k;do if(e>>>0>(f[d>>2]|0)-k>>3>>>0){IAa(a);if(e>>>0>536870911)_da();else{j=(f[d>>2]|0)-(f[a>>2]|0)|0;k=j>>2;ama(a,j>>3>>>0<268435455?(k>>>0>>0?e:k):536870911);lfa(a,b,c);break}}else{h=a+4|0;g=(f[h>>2]|0)-k>>3;e=e>>>0>g>>>0;g=e?b+(g<<3)|0:c;d=g-i|0;if(d|0)fia(k|0,b|0,d|0)|0;if(e){lfa(a,g,c);break}else{f[h>>2]=j+(d>>3<<3);break}}while(0);return}function yx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;c=f[a>>2]|0;while(1){c=Y_a(c)|0;if(!c)break;if(f[c+8>>2]|0)break;g=c+12|0;e=g$a(f[g>>2]|0)|0;c=c+16|0;d=g$a(f[c>>2]|0)|0;if((e|0)!=0?(h=ORa(e+8|0)|0,h>>>0<1024):0)rHa(b,(Bbb(f[b>>2]|0)|0)+h|0,0)|0;else{if(!d)break;c=ORa(d+8|0)|0;if(c>>>0>=1024)break;rHa(b,(Bbb(f[b>>2]|0)|0)+c|0,0)|0;c=g}c=f[c>>2]|0;f[a>>2]=c}c=g$a(f[a>>2]|0)|0;if(c|0){h=c+8|0;a=ORa(h)|0;m$a(i,(Bbb(f[b>>2]|0)|0)+a|0);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];rHa(b,0,0)|0}u=j;return}function zx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0;g=+mAa(d);e=qRa(g)|0;h=I&2147483647;if(h>>>0>2146435072|(h|0)==2146435072&e>>>0>0)pc[f[f[b>>2]>>2]&4095](b,101824);e=(f[d>>2]|0)==3;if((f[c+4>>2]|0)==1){if(e){if(!(WZa(mQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101843)}else{h=AHa(d)|0;if(!(DJa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101843)}m$a(a,~~g)}else{if(e){if(!(UZa(mQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101868)}else{h=AHa(d)|0;if(!(pLa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101868)}SSa(a,~~g>>>0,+K(g)>=1.0?(g>0.0?~~+Y(+J(g/4294967296.0),4294967295.0)>>>0:~~+W((g-+(~~g>>>0))/4294967296.0)>>>0):0)}return}function Ax(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;c=d;e=d+12|0;a:do if(!(f[a+124>>2]|0)){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,96658,h7a(96658)|0);x=0;ia(59,e|0,b|0)|0;b=x;x=0;do if(!(b&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1869,a|0,c|0);a=x;x=0;if(a&1){b=Ia()|0;HTa(c);break}else{HTa(c);HTa(e);break a}}else b=Ia()|0;while(0);HTa(e);Ua(b|0)}while(0);u=d;return}function Bx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=D1a(a)|0;h=f[c>>2]|0;g=f[c+4>>2]|0;a=e;a:while(1){c=f[a+16>>2]|0;do if((h|0)>=(c|0)){if((c|0)>=(h|0)){if(KVa(g,f[a+20>>2]|0)|0){i=6;break}if(!(KVa(f[a+20>>2]|0,g)|0)){i=11;break a}}d=a+4|0;c=f[d>>2]|0;if(!c){i=10;break a}else a=c}else i=6;while(0);if((i|0)==6){i=0;c=f[a>>2]|0;if(!c){i=7;break}else{d=a;a=c}}}if((i|0)==7){f[b>>2]=a;d=a;break}else if((i|0)==10){f[b>>2]=a;break}else if((i|0)==11){f[b>>2]=a;break}}else f[b>>2]=d;while(0);return d|0}function Cx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;d=j+16|0;e=j+12|0;c=j+4|0;g=j+8|0;h=j;i=IUa(f[a+4>>2]|0)|0;f[e>>2]=1;tab(c);if((XXa(b)|0)>>>0>1?lRa(Or(b,1)|0)|0:0){f[e>>2]=2;E1a(d,jF(Or(b,1)|0)|0);k=f[d>>2]|0;f[c>>2]=k;c=k}else{d1a(d,92599);k=f[d>>2]|0;f[c>>2]=k;c=k}l=a+112|0;f[g>>2]=c;f[d>>2]=f[g>>2];g=sC(l,d)|0;f[i+8>>2]=g;g=mG(b,e)|0;k=i+4|0;f[k>>2]=g;g=KG(a,b,f[e>>2]|0,g)|0;f[i+12>>2]=g;f[h>>2]=f[i+8>>2];f[d>>2]=f[h>>2];_X(l,d);YHa(i,f[k>>2]|0);u=j;return i|0}function Dx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;d=e;g=e+12|0;a:do if(!b){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,c,h7a(c)|0);x=0;ia(83,g|0,81342)|0;c=x;x=0;do if(!(c&1)){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];b=0;while(1){if((b|0)==3)break;f[g+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1335,a|0,d|0);a=x;x=0;if(a&1){b=Ia()|0;HTa(d);break}else{HTa(d);HTa(g);break a}}else b=Ia()|0;while(0);HTa(g);Ua(b|0)}while(0);u=e;return}function Ex(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k+8|0;c=k;if((tw(a,b)|0)==(b|0)?(j=b+28|0,w8a(f[(f[j>>2]|0)+4>>2]|0)|0):0){e=f[a+36>>2]|0;Bbb(e)|0;e=$Ra(e+144|0)|0;g=b+8|0;I$a(i,g);GUa(c,g);g=e+12|0;h=i+4|0;d=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(lTa(f[i>>2]|0,f[h>>2]|0,d,c)|0))break;l=LOa(i)|0;aaa(g,Xba(a,f[l>>2]|0)|0);RYa(i)}aaa(g,f[j>>2]|0);XJa(e,f[b+4>>2]|0);Tba(a,e)|0}u=k;return}function Fx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i;ED(j,a,c,d);e=f[j+4>>2]|0;g=d+4|0;h=0;a=f[j>>2]|0;while(1){if((a|0)==(e|0)){c=3;break}x=0;c=ga(325,f[a>>2]|0)|0;k=x;x=0;if(k&1){c=6;break}h=(X((((f[g>>2]|0)-(f[d>>2]|0)|0)/12|0)+-1|0,c)|0)+h|0;a=a+4|0}do if((c|0)==3){e=f[g>>2]|0;c=f[d>>2]|0;a=f[b+32>>2]|0;Bbb(a)|0;x=0;a=ia(208,j|0,f[a+36>>2]|0)|0;k=x;x=0;if(k&1){a=Ia()|0;break}else{uSa(j);u=i;return a&h>>>0>(((e-c|0)/12|0)+3|0)>>>0|0}}else if((c|0)==6)a=Ia()|0;while(0);uSa(j);Ua(a|0);return 0}function Gx(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=UA(a,b,c,d,g)|0;h=f[e>>2]|0;i=f[d>>2]|0;k=f[g+4>>2]|0;j=f[f[g>>2]>>2]|0;if(T4(j,k,h,i)|0){f[d>>2]=h;f[e>>2]=i;g=l+1|0;e=f[d>>2]|0;h=f[c>>2]|0;if(T4(j,k,e,h)|0){f[c>>2]=e;f[d>>2]=h;g=l+2|0;e=f[c>>2]|0;h=f[b>>2]|0;if(T4(j,k,e,h)|0){f[b>>2]=e;f[c>>2]=h;g=f[b>>2]|0;e=f[a>>2]|0;if(T4(j,k,g,e)|0){f[a>>2]=g;f[b>>2]=e;g=l+4|0}else g=l+3|0}}}else g=l;return g|0}function Hx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;e=1;while(1){if(!(e>>>0<3&e>>>0<(XXa(a)|0)>>>0))break;j=Or(a,e)|0;if(!(u8a(b[j>>0]|0)|0))break;if(FRa(Or(a,e)|0)|0){E1a(h,jF(Or(a,e)|0)|0);f[d>>2]=f[h>>2]}else{if(!(lRa(Or(a,e)|0)|0))break;E1a(h,jF(Or(a,e)|0)|0);f[c>>2]=f[h>>2]}e=e+1|0}if(((e>>>0<(XXa(a)|0)>>>0?(j=Or(a,e)|0,b8a(b[j>>0]|0)|0):0)?(g=Or(a,e)|0,(XXa(g)|0)!=0):0)?(j=jF(Or(g,0)|0)|0,$1a(j,f[33105]|0)|0):0){E1a(h,jF(Or(g,1)|0)|0);f[d>>2]=f[h>>2];e=e+1|0}u=i;return e|0}function Ix(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do if(b[a+12>>0]|0){e=yCa(zm(yCa(zm(yCa(134176,87187)|0,d)|0,87596)|0,c)|0,123274)|0;ZXa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,k=x,x=0,!(k&1)):0){JCa(i);Wq(e,h)|0;du(e)|0;break}k=Ia()|0;JCa(i);Ua(k|0)}while(0);b[(f[a>>2]|0)+c>>0]=d;b[(f[a>>2]|0)+(c+1)>>0]=d>>>8;b[(f[a>>2]|0)+(c+2)>>0]=d>>>16;b[(f[a>>2]|0)+(c+3)>>0]=d>>>24;u=j;return}function Jx(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;d=k+8|0;h=k+4|0;i=k;do if(b[a+33>>0]|0){j=yCa(134176,110975)|0;ZXa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[d>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(d);Wq(j,g)|0;du(j)|0;break}l=Ia()|0;JCa(d);Ua(l|0)}while(0);l=Ev(f[a+28>>2]|0,(f[c+16>>2]|0)==0?12:13)|0;f[i>>2]=f[c+8>>2];f[d>>2]=f[i>>2];f4a(h,VZ(a,d)|0);Yr(l,f[h>>2]|0)|0;u=k;return}function Kx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+64|0;i=j;f[c>>2]=f[f[c>>2]>>2];if(!(eGa(a,b)|0))if(((b|0)!=0?(d=ax(b,39568)|0,(d|0)!=0):0)?(f[d+8>>2]&~f[a+8>>2]|0)==0:0){b=f[a+12>>2]|0;a=d+12|0;if(!($1a(b,f[a>>2]|0)|0)?!($1a(b,39600)|0):0)if((((b|0)!=0?(g=ax(b,39368)|0,(g|0)!=0):0)?(e=f[a>>2]|0,(e|0)!=0):0)?(h=ax(e,39368)|0,(h|0)!=0):0){a=i+4|0;b=a+52|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));f[i>>2]=h;f[i+8>>2]=g;f[i+12>>2]=-1;f[i+48>>2]=1;rc[f[(f[h>>2]|0)+28>>2]&255](h,i,f[c>>2]|0,1);if((f[i+24>>2]|0)==1){f[c>>2]=f[i+16>>2];a=1}else a=0}else a=0;else a=1}else a=0;else a=1;u=j;return a|0}function Lx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+96|0;i=l;j=b+8|0;e=b+12|0;g=a+40|0;c=0;d=0;while(1){if(c>>>0>=(Bbb(f[e>>2]|0)|0)>>>0){k=5;break}n=_Ya(f[g>>2]|0)|0;m=JDa(j,c)|0;fA(i,n,f[m>>2]|0);m=lza(i)|0;V7(i);if(m)break;n=un(a,b,JDa(j,c)|0,d,0)|0;c=c+1|0;d=n}if((k|0)==5?(n=_Ya(f[g>>2]|0)|0,h=b+28|0,fA(i,n,f[h>>2]|0),n=lza(i)|0,V7(i),!n):0)un(a,b,h,d,0)|0;u=l;return}function Mx(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=lu(c,h,d)|0;d=f[g>>2]|0;if(!d){LN(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function Nx(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+288|0;h=g+268|0;e=g;eza();if(b[135320]|0)yCa(134176,52386)|0;d=n8(232)|0;x=0;ta(444,d|0);i=x;x=0;if(i&1){i=Ia()|0;ubb(d);d=i}else{f[32970]=d;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;x=0;ua(94,h|0,c|0);i=x;x=0;if(i&1)d=Ia()|0;else{d=0;while(1){if((d|0)>=(c|0))break;b[(f[h>>2]|0)+d>>0]=b[a+d>>0]|0;d=d+1|0}sv(e,f[32970]|0,h,0);x=0;ta(447,e|0);i=x;x=0;if(!(i&1)?(x=0,sa(4),i=x,x=0,!(i&1)):0){BA(e);uSa(h);u=g;return}d=Ia()|0;BA(e)}uSa(h)}Ua(d|0)}function Ox(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(f[a>>2]|0)+1794895138|0;h=rYa(f[a+8>>2]|0,o)|0;e=rYa(f[a+12>>2]|0,o)|0;g=rYa(f[a+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=c-(h<<2)|0,e>>>0>>0&g>>>0>>0):0)?((g|e)&3|0)==0:0){n=e>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;e=rYa(f[a+(g<<2)>>2]|0,o)|0;g=rYa(f[a+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&e>>>0<(c-g|0)>>>0)){e=0;break a}if(b[a+(g+e)>>0]|0){e=0;break a}e=E8(d,a+g|0)|0;if(!e)break;e=(e|0)<0;if((h|0)==1){e=0;break a}l=e?l:k;h=e?j:h-j|0}e=i+m|0;g=rYa(f[a+(e<<2)>>2]|0,o)|0;e=rYa(f[a+(e+1<<2)>>2]|0,o)|0;if(e>>>0>>0&g>>>0<(c-e|0)>>>0)e=(b[a+(e+g)>>0]|0)==0?a+e|0:0;else e=0}else e=0;while(0);return e|0}function Px(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i+8|0;h=i;if(((b|0)!=0?(d=o$a(b)|0,(d|0)!=0):0)?!(Iab(f[d+8>>2]|0)|0):0)if(o2a(f[d+4>>2]|0)|0)Ca(91290,91090,375,123618);else e=d;else e=qwa(f[f[a>>2]>>2]|0,b)|0;a=o$a(c)|0;if(!a)aaa(e+12|0,c);else{a=a+12|0;I$a(g,a);GUa(h,a);a=e+12|0;b=g+4|0;d=h+4|0;while(1){if(!(lTa(f[g>>2]|0,f[b>>2]|0,f[h>>2]|0,f[d>>2]|0)|0))break;c=LOa(g)|0;aaa(a,f[c>>2]|0);RYa(g)}}rt(e);u=i;return e|0}function Qx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;c=d;e=d+12|0;a:do if(b){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,81467,h7a(81467)|0);x=0;ia(83,e|0,81642)|0;b=x;x=0;do if(!(b&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1335,a|0,c|0);a=x;x=0;if(a&1){b=Ia()|0;HTa(c);break}else{HTa(c);HTa(e);break a}}else b=Ia()|0;while(0);HTa(e);Ua(b|0)}while(0);u=d;return}function Rx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e+12|0;g=e;c=lRa(b)|0;b=jF(b)|0;do if(c){E1a(d,b);b=f[d>>2]|0}else{c=yR(Bbb(b)|0)|0;b=f[a+20>>2]|0;if(c>>>0<(f[a+24>>2]|0)-b>>2>>>0){b=f[b+(c<<2)>>2]|0;f[d>>2]=b;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=h7a(94432)|0;x=0;va(87,g|0,94432,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,a|0,g|0);e=x;x=0;if(e&1)c=1;else{x=0;va(98,a|0,32200,457);x=0;c=0}b=Ia()|0;HTa(g);if(c)h=9}else{b=Ia()|0;h=9}if((h|0)==9)La(a|0);Ua(b|0)}while(0);u=e;return b|0}function Sx(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;h=o;i=$5()|0;j=h+12|0;k=h+12|0;a:while(1){az(c);l=f[c>>2]|0;m=b[l>>0]|0;switch(m<<24>>24){case 0:break a;case 59:{f[c>>2]=l+1;break}default:{if(Opa(d,m)|0)break a;if((!(tXa(e)|0)?(Dh(h,l),(f[j>>2]|0)==0):0)?$1a(f[h>>2]|0,e)|0:0){n=8;break a}if((!(tXa(g)|0)?(Dh(h,f[c>>2]|0),(f[k>>2]|0)==0):0)?$1a(f[h>>2]|0,g)|0:0){n=13;break a}Kea(i,ID(a,c,d)|0)}}}u=o;return i|0}function Tx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=a+4|0;d=f[a>>2]|0;a:do if((f[i>>2]|0)!=(d|0)){xma(c,f[d>>2]|0)|0;e=f[i>>2]|0;d=f[a>>2]|0;b:do if(e-d>>2>>>0>1){g=1;while(1){if(g>>>0>=e-d>>2>>>0)break b;ys(h,c,f[d+(g<<2)>>2]|0);fSa(c,h)|0;uSa(h);g=g+1|0;d=f[a>>2]|0;e=f[i>>2]|0}}while(0);i=f[b+4>>2]|0;d=f[b>>2]|0;e=f[c>>2]|0;g=i;if((i-d|0)==((f[c+4>>2]|0)-e|0))while(1){if((d|0)==(g|0)){d=0;break a}if((f[d>>2]|0)!=(f[e>>2]|0)){d=1;break a}e=e+4|0;d=d+4|0}else d=1}else d=0;while(0);u=j;return d|0}function Ux(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=u;u=u+32|0;c=e+12|0;f=e;d=sbb()|0;w4(c,b);x=0;d=ia(63,d|0,c|0)|0;g=x;x=0;if(g&1){g=Ia()|0;HTa(c);Ua(g|0)}HTa(c);if(d|0){J_(a,d);u=e;return}J_a();x=0;a=ia(52,e+24|0,54207)|0;g=x;x=0;if(!(g&1)?(x=0,ua(88,f|0,b|0),g=x,x=0,!(g&1)):0){x=0;a=ia(64,a|0,f|0)|0;g=x;x=0;if(!(g&1)?(x=0,ia(52,a|0,112640)|0,g=x,x=0,!(g&1)):0){HTa(f);gCa()}Ia()|0;HTa(f)}else Ia()|0;gCa()}function Vx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;h=f[d+16>>2]|0;d=f[d+12>>2]|0;while(1){if((d|0)==(h|0))break;a=f[d>>2]|0;if((f[a+12>>2]|0)==3){e=+mb(18,f[a+4>>2]|0,f[a+8>>2]|0);if(b[135320]|0){a=yCa(134008,56406)|0;zma(Bm(yCa(wfa(a,f[f[d>>2]>>2]|0)|0,56432)|0,e)|0,10)|0}fba(g,e,f[(f[d>>2]|0)+20>>2]|0);a=aY(c,f[d>>2]|0)|0;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2]}d=d+4|0}u=i;return}function Wx(a){a=a|0;var b=0,c=0,d=0;a:do switch(f[a>>2]|0){case 1:{b=f[f[a+4>>2]>>2]|0;if(F6a(b)|0){b=FMa($Pa(a,0)|0)|0;break a}if(x6a(b)|0){if(!(FMa($Pa(a,0)|0)|0)){b=0;break a}b=FMa($Pa(a,1)|0)|0;break a}if((v6a(b)|0?FMa($Pa(a,0)|0)|0:0)?FMa($Pa(a,1)|0)|0:0)b=FMa($Pa(a,2)|0)|0;else b=0;break}case 2:{c=a+12|0;d=a+16|0;b=1;while(1){if(b>>>0>=(f[d>>2]|0)-(f[c>>2]|0)>>2>>>0){b=1;break a}if(FMa($Pa(a,b)|0)|0)b=b+1|0;else{b=0;break}}break}default:b=0}while(0);return b|0}function Xx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=d+4|0;g=Mv(f[d>>2]|0,f[e>>2]|0,f[b>>2]|0,f[a>>2]|0)|0;h=Mv(f[d>>2]|0,f[e>>2]|0,f[c>>2]|0,f[b>>2]|0)|0;do if(g){g=f[a>>2]|0;if(h){f[a>>2]=f[c>>2];f[c>>2]=g;e=1;break}f[a>>2]=f[b>>2];f[b>>2]=g;if(Mv(f[d>>2]|0,f[e>>2]|0,f[c>>2]|0,g)|0){e=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=e;e=2}else e=1}else if(h){h=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=h;if(Mv(f[d>>2]|0,f[e>>2]|0,f[b>>2]|0,f[a>>2]|0)|0){e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=2}else e=1}else e=0;while(0);return e|0}function Yx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e+12|0;g=e;c=lRa(b)|0;b=jF(b)|0;do if(c){E1a(d,b);b=f[d>>2]|0}else{c=yR(Bbb(b)|0)|0;b=f[a+8>>2]|0;if(c>>>0<(f[a+12>>2]|0)-b>>2>>>0){b=f[b+(c<<2)>>2]|0;f[d>>2]=b;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=h7a(92387)|0;x=0;va(87,g|0,92387,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,a|0,g|0);e=x;x=0;if(e&1)c=1;else{x=0;va(98,a|0,32200,457);x=0;c=0}b=Ia()|0;HTa(g);if(c)h=9}else{b=Ia()|0;h=9}if((h|0)==9)La(a|0);Ua(b|0)}while(0);u=e;return b|0}function Zx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e+12|0;g=e;c=lRa(b)|0;b=jF(b)|0;do if(c){E1a(d,b);b=f[d>>2]|0}else{c=yR(Bbb(b)|0)|0;b=f[a+32>>2]|0;if(c>>>0<(f[a+36>>2]|0)-b>>2>>>0){b=f[b+(c<<2)>>2]|0;f[d>>2]=b;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=h7a(92567)|0;x=0;va(87,g|0,92567,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,a|0,g|0);e=x;x=0;if(e&1)c=1;else{x=0;va(98,a|0,32200,457);x=0;c=0}b=Ia()|0;HTa(g);if(c)h=9}else{b=Ia()|0;h=9}if((h|0)==9)La(a|0);Ua(b|0)}while(0);u=e;return b|0}function _x(a){a=a|0;var c=0,d=0;OD(a);d=a+76|0;if(f[d>>2]|0)RE(a);ok(a);fj(a);on(a);_t(a);tv(a);Qm(a);Rj(a);Qv(a);wo(a);Pf(a);Fh(a);if(b[a+73>>0]|0)El(a);if(f[d>>2]|0){c=b[a+80+11>>0]|0;if(c<<24>>24<0)c=f[a+84>>2]|0;else c=c&255;if(c|0)eA(a)}c=b[a+92+11>>0]|0;if(c<<24>>24<0)c=f[a+96>>2]|0;else c=c&255;if(c|0)Rh(a);if(f[d>>2]|0)iB(a);nM(a);fn(a);return}function $x(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;g=k+24|0;h=k+16|0;c=k+8|0;i=k+4|0;j=k;d=b+8|0;I$a(h,d);GUa(c,d);d=a+44|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;l=LOa(h)|0;f[i>>2]=f[l>>2];l=GW(d,i)|0;f[j>>2]=b;nH(g,l,b,j);RYa(h)}l=GW(d,b+24|0)|0;f[h>>2]=b;nH(g,l,b,h);u=k;return}function ay(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;c=d;e=d+4|0;f[c>>2]=b;g=a+12|0;pSa(g);b=a+40|0;a=Vz(b,c)|0;a:do if(!a){x=0;ta(475,e|0);a=x;x=0;do if(a&1)b=Ia()|0;else{x=0;b=ia(133,b|0,c|0)|0;c=x;x=0;if(c&1){b=Ia()|0;a=f[e>>2]|0;f[e>>2]=0;if(!a)break;oc[f[(f[a>>2]|0)+4>>2]&1023](a);break}c=f[e>>2]|0;f[e>>2]=0;a=f[b>>2]|0;f[b>>2]=c;if(a|0)oc[f[(f[a>>2]|0)+4>>2]&1023](a);f[e>>2]=0;break a}while(0);hJa(g);Ua(b|0)}else b=a+12|0;while(0);e=f[b>>2]|0;hJa(g);u=d;return e|0}function by(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i+12|0;h=i;e=lu(132700,g,c)|0;c=f[e>>2]|0;if(!c){BM(h,d);c=f[h>>2]|0;LZ(132700,f[g>>2]|0,e,c);e=1}else e=0;f[a>>2]=c;b[a+4>>0]=e;u=i;return}function cy(a){a=a|0;VCa(a+220|0);WBa(a+208|0);WCa(a+196|0);UCa(a+184|0);eAa(a+172|0);Nya(a+144|0);B5(a+132|0);sca(a+120|0);EXa(a+88|0);YXa(a+60|0);K4(a+48|0);C1(a+36|0);K4(a+24|0);K4(a+12|0);d1(a);return}function dy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=f[a+44>>2]|0;if(((f[a+40>>2]|0)!=(d|0)?(c=o$a(f[d+-4>>2]|0)|0,(c|0)!=0):0)?(d=MCa(c+12|0)|0,(b|0)==(f[d>>2]|0)):0){QHa(e,b,c);b=a+88|0;c=f[b>>2]|0;if(c>>>0<(f[a+92>>2]|0)>>>0){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[b>>2]=(f[b>>2]|0)+12}else wE(a+84|0,e)}else{xQa(e,b,Bbb(f[a+16>>2]|0)|0);b=a+88|0;c=f[b>>2]|0;if(c>>>0<(f[a+92>>2]|0)>>>0){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[b>>2]=(f[b>>2]|0)+12}else wE(a+84|0,e)}u=g;return}function ey(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;d=h+16|0;i=h;c=h+4|0;f[i>>2]=f[b+24>>2];e=_2(a,f[b+28>>2]|0)|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;g=f[b+4>>2]|0;x=0;f[d>>2]=f[i>>2];g=ma(25,a+32|0,d|0,e|0,c|0,g|0)|0;e=x;x=0;if(e&1){i=Ia()|0;uSa(c);Ua(i|0)}uSa(c);d=b+8|0;e=g+8|0;b=b+12|0;c=0;while(1){if(c>>>0>=(Bbb(f[b>>2]|0)|0)>>>0)break;i=JDa(d,c)|0;aaa(e,_2(a,f[i>>2]|0)|0);c=c+1|0}u=h;return g|0}function fy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+8|0;d=h+4|0;j=h;e=WRa(f[b>>2]|0)|0;g=a+16|0;f[j>>2]=f[e+8>>2];i=f[a+40>>2]|0;b=f[a+44>>2]|0;f[c>>2]=f[j>>2];b=GD(i,b,c)|0;f[d>>2]=b;d=hY(a+84|0,d)|0;b=a+80|0;a=d+4|0;c=f[a>>2]|0;if((c|0)==(f[d+8>>2]|0))IL(d,b);else{f[c>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4}if(!(f[e+16>>2]|0))jWa(g);else{j=f[b>>2]|0;RC(g);BH(j,f[b>>2]|0)}u=h;return}function gy(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=c;a:do if(!((g^a)&3)){e=(d|0)!=0;if(e&(g&3|0)!=0)do{g=b[c>>0]|0;b[a>>0]=g;if(!(g<<24>>24))break a;d=d+-1|0;c=c+1|0;a=a+1|0;e=(d|0)!=0}while(e&(c&3|0)!=0);if(e){if(b[c>>0]|0){b:do if(d>>>0>3){e=c;while(1){c=f[e>>2]|0;if((c&-2139062144^-2139062144)&c+-16843009|0){c=e;break b}f[a>>2]=c;d=d+-4|0;c=e+4|0;a=a+4|0;if(d>>>0>3)e=c;else break}}while(0);h=13}}else d=0}else h=13;while(0);c:do if((h|0)==13)if(!d)d=0;else while(1){h=b[c>>0]|0;b[a>>0]=h;if(!(h<<24>>24))break c;d=d+-1|0;a=a+1|0;if(!d){d=0;break}else c=c+1|0}while(0);gH(a|0,0,d|0)|0;return}function hy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+48|0;d=g+16|0;e=g;mz(d,b,f[c+8>>2]|0);do if(!(D0a(d)|0))if(!(ORa(d)|0)){c=f[c+16>>2]|0;if(!c){M0a(a);break}else{mz(a,b,c);break}}else{mz(a,b,f[c+12>>2]|0);if(D0a(a)|0)break;if(f[c+16>>2]|0)break;yXa(e);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];break}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}while(0);u=g;return}function iy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;d=k+8|0;h=k+4|0;i=k;do if(b[a+33>>0]|0){j=yCa(134176,110823)|0;ZXa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[d>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){JCa(d);Wq(j,g)|0;du(j)|0;break}l=Ia()|0;JCa(d);Ua(l|0)}while(0);l=Ev(f[a+28>>2]|0,36)|0;j=f[a+24>>2]|0;f[i>>2]=f[c+8>>2];f[d>>2]=f[i>>2];f4a(h,$1(j,d)|0);Yr(l,f[h>>2]|0)|0;u=k;return}function jy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+8|0;d=h+4|0;j=h;e=WRa(f[b>>2]|0)|0;g=a+16|0;f[j>>2]=f[e+8>>2];i=f[a+40>>2]|0;b=f[a+44>>2]|0;f[c>>2]=f[j>>2];b=GD(i,b,c)|0;f[d>>2]=b;d=hY(a+84|0,d)|0;b=a+80|0;a=d+4|0;c=f[a>>2]|0;if((c|0)==(f[d+8>>2]|0))IL(d,b);else{f[c>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4}if(!(f[e+16>>2]|0))jWa(g);else{j=f[b>>2]|0;cD(g);BH(j,f[b>>2]|0)}u=h;return}function ky(a){a=a|0;var b=0;do switch(a|0){case 0:{hb();break}case 1:{b=117248;break}case 2:{b=117209;break}case 3:{b=93636;break}case 4:{b=117166;break}case 5:{b=117150;break}case 6:{b=117178;break}case 7:{b=67032;break}case 8:{b=67018;break}case 9:{b=97192;break}case 10:{b=93626;break}case 11:{b=93615;break}case 12:{b=93604;break}case 13:{b=93599;break}case 14:{b=93593;break}case 15:{b=117238;break}case 16:{b=93587;break}case 17:{b=117219;break}case 18:{b=93580;break}case 19:{b=93575;break}case 20:{b=117212;break}case 21:{b=93570;break}case 22:{b=93566;break}case 23:{b=101332;break}case 25:{b=93551;break}case 24:{b=93540;break}case 26:{b=93528;break}case 27:{b=93516;break}default:hb()}while(0);return b|0}function ly(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;EPa(a+96|0,c);xIa(g);h=Bbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=1;x=0;ua(1184,g|0,c|0);h=x;x=0;do if(!(h&1)){oMa(d);f[d+24>>2]=a;x=0;ua(1185,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;I_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;I_a(d);lNa(g);u=e;return h|0}}else a=Ia()|0;while(0);lNa(g);Ua(a|0);return 0}function my(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;EPa(a+96|0,c);xIa(g);h=Bbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=0;x=0;ua(1089,g|0,c|0);h=x;x=0;do if(!(h&1)){oMa(d);f[d+24>>2]=a;x=0;ua(1090,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;I_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;I_a(d);lNa(g);u=e;return h|0}}else a=Ia()|0;while(0);lNa(g);Ua(a|0);return 0}function ny(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){d=yCa(xm(yCa(134176,110693)|0,c)|0,110708)|0;d=Am(d,f[c+4>>2]|0)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(d,h)|0;du(d)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);DS(a,c);u=i;return}function oy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;j=l+20|0;k=l;h=f[a>>2]|0;e=(f[a+4>>2]|0)-h>>4;g=e+1|0;if(g>>>0>268435455)_da();i=(f[a+8>>2]|0)-h|0;h=i>>3;FN(k,i>>4>>>0<134217727?(h>>>0>>0?g:h):268435455,e,a+8|0);h=k+8|0;i=f[h>>2]|0;g=f[b>>2]|0;e=f[c>>2]|0;x=0;va(85,j|0,f[d>>2]|0,0);d=x;x=0;if(!(d&1)?(x=0,wa(139,i|0,g|0,e|0,f[j>>2]|0),j=x,x=0,!(j&1)):0){f[h>>2]=i+16;UN(a,k);Kda(k);u=l;return}l=Ia()|0;Kda(k);Ua(l|0)}function py(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+8|0;c=h+4|0;i=h;g=WRa(f[b>>2]|0)|0;f[i>>2]=f[g+8>>2];e=f[a+24>>2]|0;b=f[a+28>>2]|0;f[d>>2]=f[i>>2];b=GD(e,b,d)|0;f[c>>2]=b;b=hY(a+68|0,c)|0;c=a+64|0;d=b+4|0;e=f[d>>2]|0;if((e|0)==(f[b+8>>2]|0))IL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}if(!(f[g+16>>2]|0))jWa(a);else{i=f[c>>2]|0;qD(a);dH(i,f[c>>2]|0)}u=h;return}function qy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+8|0;d=h+4|0;j=h;e=WRa(f[b>>2]|0)|0;g=a+16|0;f[j>>2]=f[e+8>>2];i=f[a+40>>2]|0;b=f[a+44>>2]|0;f[c>>2]=f[j>>2];b=GD(i,b,c)|0;f[d>>2]=b;d=hY(a+84|0,d)|0;b=a+80|0;a=d+4|0;c=f[a>>2]|0;if((c|0)==(f[d+8>>2]|0))IL(d,b);else{f[c>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4}if(!(f[e+16>>2]|0))jWa(g);else{j=f[b>>2]|0;hD(g);BH(j,f[b>>2]|0)}u=h;return}function ry(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+48|0;c=m+16|0;h=m+32|0;i=m;mD(h,a,1);j=a+44|0;k=f[j>>2]|0;x=0;l=ga(320,h|0)|0;n=x;x=0;if((((!(n&1)?(d=f[j>>2]|0,m$a(i,0),x=0,f[c>>2]=f[i>>2],f[c+4>>2]=f[i+4>>2],f[c+8>>2]=f[i+8>>2],f[c+12>>2]=f[i+12>>2],d=ia(50,d|0,c|0)|0,n=x,x=0,!(n&1)):0)?(x=0,e=ja(45,k|0,l|0,d|0)|0,n=x,x=0,!(n&1)):0)?(x=0,g=ja(70,k|0,e|0,f[b+12>>2]|0)|0,n=x,x=0,!(n&1)):0)?(x=0,va(161,a|0,g|0,h|0),n=x,x=0,!(n&1)):0){BVa(f[a+16>>2]|0,g)|0;HCa(h);u=m;return}n=Ia()|0;HCa(h);Ua(n|0)}function sy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;EPa(a+96|0,c);xIa(g);h=Bbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=0;x=0;ua(869,g|0,c|0);h=x;x=0;do if(!(h&1)){oMa(d);f[d+24>>2]=a;x=0;ua(870,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;I_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;I_a(d);lNa(g);u=e;return h|0}}else a=Ia()|0;while(0);lNa(g);Ua(a|0);return 0}function ty(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;EPa(a+96|0,c);xIa(g);h=Bbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=1;x=0;ua(964,g|0,c|0);h=x;x=0;do if(!(h&1)){oMa(d);f[d+24>>2]=a;x=0;ua(965,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;I_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;I_a(d);lNa(g);u=e;return h|0}}else a=Ia()|0;while(0);lNa(g);Ua(a|0);return 0}function uy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;EPa(a+96|0,c);xIa(g);h=Bbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=0;x=0;ua(744,g|0,c|0);h=x;x=0;do if(!(h&1)){oMa(d);f[d+24>>2]=a;x=0;ua(745,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;I_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;I_a(d);lNa(g);u=e;return h|0}}else a=Ia()|0;while(0);lNa(g);Ua(a|0);return 0}function vy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;h=j+20|0;i=j;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;d=g+1|0;if(d>>>0>268435455)_da();k=(f[a+8>>2]|0)-e|0;e=k>>3;FN(i,k>>4>>>0<134217727?(e>>>0>>0?d:e):268435455,g,a+8|0);e=i+8|0;g=f[e>>2]|0;d=f[b>>2]|0;c=f[c>>2]|0;x=0;va(85,h|0,c|0,((c|0)<0)<<31>>31|0);c=x;x=0;if(!(c&1)?(x=0,wa(139,g|0,d|0,135337,f[h>>2]|0),k=x,x=0,!(k&1)):0){f[e>>2]=g+16;UN(a,i);Kda(i);u=j;return}k=Ia()|0;Kda(i);Ua(k|0)}function wy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/40|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/40|0;d=c+b|0;if(d>>>0>107374182)_da();else{e=(h-e|0)/40|0;h=e<<1;ML(g,e>>>0<53687091?(h>>>0>>0?d:h):107374182,c,a+8|0);f_(g,b);NK(a,g);J4(g);break}}else K_(a,b);while(0);u=i;return}function xy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+4|0;h=j;do if(b[a+33>>0]|0){i=yCa(134176,110862)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}k=Ia()|0;JCa(g);Ua(k|0)}while(0);i=f[a+28>>2]|0;k=Iab(f[c+4>>2]|0)|0;k=Ev(i,k?34:33)|0;i=e_(a+44|0,c+8|0)|0;f4a(h,f[i>>2]|0);Yr(k,f[h>>2]|0)|0;u=j;return}function yy(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;az(c);e=f[c>>2]|0;if((b[e>>0]|0)!=40)Ca(65897,65740,501,66442);f[c>>2]=e+1;i=Rm(a,c,65707)|0;az(c);e=f[c>>2]|0;if((b[e>>0]|0)!=59)Ca(66451,65740,505,66442);f[c>>2]=e+1;h=Rm(a,c,65707)|0;az(c);e=f[c>>2]|0;if((b[e>>0]|0)!=59)Ca(66451,65740,509,66442);f[c>>2]=e+1;e=Rm(a,c,123274)|0;az(c);g=f[c>>2]|0;if((b[g>>0]|0)==41){f[c>>2]=g+1;return fX(i,h,e,O4(a,c,d)|0)|0}else Ca(66119,65740,513,66442);return 0}function zy(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;j=m+16|0;k=m+4|0;l=m;f[k>>2]=0;e=k+4|0;f[e>>2]=0;g=k+8|0;f[g>>2]=0;h=f[a+16>>2]|0;b=f[a+12>>2]|0;a:while(1){if((b|0)==(h|0))break;c=f[b>>2]|0;do if(!(f[c+12>>2]|0)){d=f[e>>2]|0;if((d|0)==(f[g>>2]|0)){x=0;ua(1502,k|0,c|0);d=x;x=0;if(d&1){i=12;break a}else break}else{f[d>>2]=f[c>>2];f[e>>2]=(f[e>>2]|0)+4;break}}while(0);b=b+4|0}if((i|0)==12){m=Ia()|0;uSa(k);Ua(m|0)}c=f[e>>2]|0;b=f[k>>2]|0;while(1){if((b|0)==(c|0))break;f[l>>2]=f[b>>2];f[j>>2]=f[l>>2];eF(a,j);b=b+4|0}uSa(k);u=m;return}function Ay(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=b;e=c-i>>2;d=a+8|0;k=f[a>>2]|0;j=k;do if(e>>>0>(f[d>>2]|0)-k>>2>>>0){IAa(a);if(e>>>0>1073741823)_da();else{j=(f[d>>2]|0)-(f[a>>2]|0)|0;k=j>>1;boa(a,j>>2>>>0<536870911?(k>>>0>>0?e:k):1073741823);Sha(a,b,c);break}}else{h=a+4|0;g=(f[h>>2]|0)-k>>2;e=e>>>0>g>>>0;g=e?b+(g<<2)|0:c;d=g-i|0;if(d|0)fia(k|0,b|0,d|0)|0;if(e){Sha(a,g,c);break}else{f[h>>2]=j+(d>>2<<2);break}}while(0);return}function By(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=XRa(f[b>>2]|0)|0;if((Iab(f[g+8>>2]|0)|0?(i=a+68|0,c=eX(i,g)|0,(c|0)!=(a+72|0)):0)?(h=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[h>>2]|0)):0){e=a+64|0;c=f[e>>2]|0;qD(a);dH(c,f[e>>2]|0);c=f[d>>2]|0;b=f[h>>2]|0;while(1){if((b|0)==(c|0))break;dH(f[b>>2]|0,f[e>>2]|0);b=b+4|0}CU(i,g)}return}function Cy(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=KB(c,h,d)|0;d=f[g>>2]|0;if(!d){dQ(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function Dy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=a+56|0;i=a+60|0;c=f[i>>2]|0;if((f[h>>2]|0)==(c|0))Ca(111004,111024,418,111093);f[i>>2]=c+-4;e=$O(f[a+36>>2]|0,4,b)|0;f[g>>2]=e;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=e;f[c>>2]=(f[c>>2]|0)+4}else IL(a,g);E1a(g,f[33015]|0);c=f[i>>2]|0;if(c>>>0<(f[a+64>>2]|0)>>>0){f[c>>2]=f[g>>2];f[i>>2]=(f[i>>2]|0)+4}else IL(h,g);gv(a,f[b+16>>2]|0);u=j;return}function Ey(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;g=f[b>>2]|0;c=g;if(Iab(g)|0){d=f[a>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))IL(d,b);else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}b=WW(f[a+4>>2]|0,b)|0;d=f[a+8>>2]|0;c=f[d>>2]|0;f[d>>2]=c+1;f[h>>2]=c;d=b+4|0;e=f[d>>2]|0;if(e>>>0<(f[b+8>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4}else IL(b,h);e=f[a+12>>2]|0;b=f[a+16>>2]|0;f[h>>2]=b;c=e+4|0;d=f[c>>2]|0;if(d>>>0<(f[e+8>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else IL(e,h)}u=i;return}function Fy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;rS(c,1244,b);d=f[b>>2]|0;if(vab(f[d>>2]|0)|0?(e=(qSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){rS(c,1245,b);rS(c,1243,(qSa(d)|0)+16|0);rS(c,1246,b);rS(c,1243,(qSa(d)|0)+12|0);rS(c,1247,b);rS(c,1243,(qSa(d)|0)+8|0)}else Ij(a,b);rS(c,1248,b);return}function Gy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;rS(c,1024,b);d=f[b>>2]|0;if(vab(f[d>>2]|0)|0?(e=(qSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){rS(c,1025,b);rS(c,1023,(qSa(d)|0)+16|0);rS(c,1026,b);rS(c,1023,(qSa(d)|0)+12|0);rS(c,1027,b);rS(c,1023,(qSa(d)|0)+8|0)}else Jj(a,b);rS(c,1028,b);return}function Hy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;rS(c,1149,b);d=f[b>>2]|0;if(vab(f[d>>2]|0)|0?(e=(qSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){rS(c,1150,b);rS(c,1148,(qSa(d)|0)+16|0);rS(c,1151,b);rS(c,1148,(qSa(d)|0)+12|0);rS(c,1152,b);rS(c,1148,(qSa(d)|0)+8|0)}else Kj(a,b);rS(c,1153,b);return}function Iy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+64|0;i=p+48|0;j=p+40|0;k=p+32|0;l=p+24|0;m=p+16|0;n=p+8|0;o=p;d=a+4|0;q=f[d>>2]|0;h=f[b>>2]|0;e=f[b+4>>2]|0;g=f[c>>2]|0;c=f[c+4>>2]|0;f[d>>2]=q-e+c+(g-h<<3);d=q&31;b=(f[a>>2]|0)+(q>>>5<<2)|0;if((e|0)==(d|0)){f[i>>2]=h;f[i+4>>2]=e;f[j>>2]=g;f[j+4>>2]=c;f[k>>2]=b;f[k+4>>2]=e;oz(o,i,j,k)}else{f[l>>2]=h;f[l+4>>2]=e;f[m>>2]=g;f[m+4>>2]=c;f[n>>2]=b;f[n+4>>2]=d;up(o,l,m,n)}u=p;return}function Jy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=XRa(f[b>>2]|0)|0;if((Iab(f[h+8>>2]|0)|0?(e=a+16|0,i=a+84|0,c=eX(i,h)|0,(c|0)!=(a+88|0)):0)?(g=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[g>>2]|0)):0){c=a+80|0;a=f[c>>2]|0;RC(e);BH(a,f[c>>2]|0);a=f[d>>2]|0;b=f[g>>2]|0;while(1){if((b|0)==(a|0))break;BH(f[b>>2]|0,f[c>>2]|0);b=b+4|0}CU(i,h)}return}function Ky(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;c=g+16|0;d=g;e=g+20|0;h=g+4|0;i=f[a>>2]|0;f[a>>2]=i+1;zY(h,i);x=0;ia(83,h|0,98437)|0;a=x;x=0;do if(!(a&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;va(88,d|0,((b[e+11>>0]|0)<0?f[e>>2]|0:e)|0,0);i=x;x=0;if(i&1){a=Ia()|0;HTa(e);break}else{E1a(c,f[d>>2]|0);HTa(e);HTa(h);u=g;return f[c>>2]|0}}else a=Ia()|0;while(0);HTa(h);Ua(a|0);return 0}function Ly(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;h=k+24|0;i=k+20|0;j=k;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>3;d=g+1|0;if(d>>>0>536870911)_da();l=(f[a+8>>2]|0)-e|0;e=l>>2;DN(j,l>>3>>>0<268435455?(e>>>0>>0?d:e):536870911,g,a+8|0);d=j+8|0;e=f[d>>2]|0;x=0;ua(83,i|0,b|0);b=x;x=0;if(b&1){l=Ia()|0;vha(j);Ua(l|0)}else{l=f[c>>2]|0;f[h>>2]=f[i>>2];cUa(e,h,l);f[d>>2]=e+8;HO(a,j);vha(j);u=k;return}}function My(a,b){a=a|0;b=b|0;var c=0;c=o$a(b)|0;do if(!c){c=C$a(b)|0;if(c|0){iv(a,c);break}c=S$a(b)|0;if(c|0){di(a,c);break}c=n$a(b)|0;if(c|0){BT(a,c);break}c=d$a(b)|0;if(c|0){Gj(a,c);break}c=X_a(b)|0;if(c|0){jqa(a,c);break}c=ZZa(b)|0;if(!c){aaa((K$a(f[(f[a+84>>2]|0)+104>>2]|0)|0)+12|0,b);break}else{jqa(a,c);break}}else al(a,c);while(0);return}function Ny(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;if(!(Zha()|0))Ca(73366,73170,607,73374);e=f[b+16>>2]|0;c=a+4|0;d=f[b+12>>2]|0;while(1){if((d|0)==(e|0)){g=6;break}h=f[d>>2]|0;if((h|0)==(l8(f[c>>2]|0,h)|0))d=d+4|0;else break}do if((g|0)==6){if(HC(b)|0){h=yCa(134008,73397)|0;yCa(wfa(h,f[f[(f[a>>2]|0)+116>>2]>>2]|0)|0,73454)|0;break}if(!(vab(f[b>>2]|0)|0)?Wx(b)|0:0){h=yCa(134008,73460)|0;yCa(wfa(h,f[f[(f[a>>2]|0)+116>>2]>>2]|0)|0,73454)|0}}while(0);return}function Oy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110616)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);d=f[c+8>>2]|0;if(d|0)Tpa(a,d);DS(a,c);u=i;return}function Py(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=f[b>>2]|0;i=f[a>>2]|0;j=WPa(e,i)|0;g=f[c>>2]|0;d=WPa(g,e)|0;h=i;do if(j){if(d){f[a>>2]=g;f[c>>2]=h;d=1;break}f[a>>2]=e;f[b>>2]=h;d=f[c>>2]|0;if(WPa(d,i)|0){f[b>>2]=d;f[c>>2]=h;d=2}else d=1}else if(d){f[b>>2]=g;f[c>>2]=e;d=f[b>>2]|0;e=f[a>>2]|0;if(WPa(d,e)|0){f[a>>2]=d;f[b>>2]=e;d=2}else d=1}else d=0;while(0);return d|0}function Qy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;g=i+16|0;h=i;k=f[(f[a+16>>2]|0)+4>>2]|0;j=c+8|0;f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[g+12>>2]=f[j+12>>2];j=f[b+8>>2]|0;c=dn(k,2)|0;if((j|0)==(c|0)){pN(h,g);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2]}if(d|0?(f[d+8>>2]|0)==(c|0):0){pN(h,g);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2]}k=e+8|0;nT(h,k,g);f[k>>2]=f[h>>2];f[k+4>>2]=f[h+4>>2];f[k+8>>2]=f[h+8>>2];f[k+12>>2]=f[h+12>>2];f[a+12>>2]=f[b+12>>2];u=i;return a|0}function Ry(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+224|0;m=q+208|0;n=q+160|0;o=q+80|0;p=q;e=n;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[m>>2]=f[d>>2];if((zd(0,c,m,o,n)|0)<0)d=-1;else{d=f[a>>2]|0;l=d&32;if((b[a+74>>0]|0)<1)f[a>>2]=d&-33;e=a+48|0;if(!(f[e>>2]|0)){g=a+44|0;h=f[g>>2]|0;f[g>>2]=p;i=a+28|0;f[i>>2]=p;j=a+20|0;f[j>>2]=p;f[e>>2]=80;k=a+16|0;f[k>>2]=p+80;d=zd(a,c,m,o,n)|0;if(h){ec[f[a+36>>2]&127](a,0,0)|0;d=(f[j>>2]|0)==0?-1:d;f[g>>2]=h;f[e>>2]=0;f[k>>2]=0;f[i>>2]=0;f[j>>2]=0}}else d=zd(a,c,m,o,n)|0;p=f[a>>2]|0;f[a>>2]=p|l;d=(p&32|0)==0?d:-1}u=q;return d|0}function Sy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h;g=f[a+12>>2]|0;c=xka(f[f[a+4>>2]>>2]|0,f[(f[b>>2]|0)+4>>2]|0)|0;d=Lya(f[a>>2]|0,c,f[b>>2]|0)|0;i=a+8|0;aaa((f[f[i>>2]>>2]|0)+12|0,d);rt(f[f[i>>2]>>2]|0);g=g+184|0;f[e>>2]=b;if(Uz(g,e)|0){f[e>>2]=b;i=dm(g,e)|0;f[i>>2]=d+12}i=NKa(f[f[a>>2]>>2]|0,c,f[(f[b>>2]|0)+4>>2]|0)|0;f[b>>2]=i;u=h;return}function Ty(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i;d=a+4|0;e=a+16|0;g=a+24|0;b=a+20|0;while(1){if(l$a(f[b>>2]|0)|0){b=3;break}j=f[e>>2]|0;f[c>>2]=f[(f[(f[d>>2]|0)+(j>>>10<<2)>>2]|0)+((j&1023)<<2)>>2];j=Ol(g,c)|0;f[j>>2]=(f[j>>2]|0)+-1;X$(a);j=Ol(g,c)|0;h=f[c>>2]|0;if(!(f[j>>2]|0)){b=5;break}}if((b|0)==3)Ca(88464,88473,51,88512);else if((b|0)==5){u=i;return h|0}return 0}function Uy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;rS(c,929,b);d=f[b>>2]|0;if(vab(f[d>>2]|0)|0?(e=(qSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){rS(c,930,b);rS(c,928,(qSa(d)|0)+16|0);rS(c,931,b);rS(c,928,(qSa(d)|0)+12|0);rS(c,932,b);rS(c,928,(qSa(d)|0)+8|0)}else Nj(a,b);rS(c,933,b);return}function Vy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;rS(c,806,b);d=f[b>>2]|0;if(vab(f[d>>2]|0)|0?(e=(qSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){rS(c,807,b);rS(c,805,(qSa(d)|0)+16|0);rS(c,808,b);rS(c,805,(qSa(d)|0)+12|0);rS(c,809,b);rS(c,805,(qSa(d)|0)+8|0)}else Oj(a,b);rS(c,810,b);return}function Wy(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+32|0;b=d+12|0;c=d+16|0;e=d;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,65155,h7a(65155)|0);x=0;ia(59,e|0,a|0)|0;a=x;x=0;do if(!(a&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];a=0;while(1){if((a|0)==3)break;f[e+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,b|0,c|0);a=x;x=0;if(a&1){a=Ia()|0;HTa(c);break}else{HTa(c);HTa(e);u=d;return f[b>>2]|0}}else a=Ia()|0;while(0);HTa(e);Ua(a|0);return 0}function Xy(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+32|0;b=d+12|0;c=d+16|0;e=d;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,64997,h7a(64997)|0);x=0;ia(59,e|0,a|0)|0;a=x;x=0;do if(!(a&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];a=0;while(1){if((a|0)==3)break;f[e+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,b|0,c|0);a=x;x=0;if(a&1){a=Ia()|0;HTa(c);break}else{HTa(c);HTa(e);u=d;return f[b>>2]|0}}else a=Ia()|0;while(0);HTa(e);Ua(a|0);return 0}function Yy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)cn(a,b)}}else cn(a,b);return}function Zy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=XRa(f[b>>2]|0)|0;if((Iab(f[h+8>>2]|0)|0?(e=a+16|0,i=a+84|0,c=eX(i,h)|0,(c|0)!=(a+88|0)):0)?(g=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[g>>2]|0)):0){c=a+80|0;a=f[c>>2]|0;cD(e);BH(a,f[c>>2]|0);a=f[d>>2]|0;b=f[g>>2]|0;while(1){if((b|0)==(a|0))break;BH(f[b>>2]|0,f[c>>2]|0);b=b+4|0}CU(i,h)}return}function _y(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;c=i+20|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;h=g+1|0;if(h>>>0>268435455)_da();else{j=(f[a+8>>2]|0)-e|0;e=j>>3;RX(d,j>>4>>>0<134217727?(e>>>0>>0?h:e):268435455,g,a+12|0);h=d+8|0;g=f[h>>2]|0;f4a(c,b);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=f[c>>2];f[h>>2]=g+16;_A(a,d);IQ(d);u=i;return}}function $y(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=XRa(f[b>>2]|0)|0;if((Iab(f[h+8>>2]|0)|0?(e=a+16|0,i=a+84|0,c=eX(i,h)|0,(c|0)!=(a+88|0)):0)?(g=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[g>>2]|0)):0){c=a+80|0;a=f[c>>2]|0;hD(e);BH(a,f[c>>2]|0);a=f[d>>2]|0;b=f[g>>2]|0;while(1){if((b|0)==(a|0))break;BH(f[b>>2]|0,f[c>>2]|0);b=b+4|0}CU(i,h)}return}function az(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a>>2]|0;a:while(1){d=b[c>>0]|0;if(!(d<<24>>24))break;b:do if(cMa(d)|0){c=c+1|0;g=5}else{if((b[c>>0]|0)!=47)break a;switch(b[c+1>>0]|0){case 47:{e=c+2|0;while(1){f[a>>2]=e;h=b[e>>0]|0;d=h<<24>>24==0;c=e+1|0;if(d^h<<24>>24!=10)e=c;else break}if(d){c=e;break b}else{g=5;break b}}case 42:break;default:break a}d=c+2|0;c:while(1){f[a>>2]=d;switch(b[d>>0]|0){case 0:break c;case 42:{c=d+1|0;if((b[c>>0]|0)==47)break c;break}default:c=d+1|0}d=c}c=d+2|0;g=5}while(0);if((g|0)==5){g=0;f[a>>2]=c}}return}function bz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;g=a+64|0;h=f[g>>2]|0;qD(a);dH(h,f[g>>2]|0);g=gSa(f[b>>2]|0)|0;h=a+96|0;if(Iab(f[g+8>>2]|0)|0){e=f[(f[h>>2]|0)+-4>>2]|0;c=a+68|0;f[d>>2]=g;b=hY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;dH(f[b>>2]|0,e);b=b+4|0}CU(c,g)}f[h>>2]=(f[h>>2]|0)+-4;u=i;return}function cz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;e=f[c>>2]|0;do if(e|0){g=b[d+11>>0]|0;if(g<<24>>24<0)g=f[d+4>>2]|0;else g=g&255;if(g){ZEa(d,122324)|0;e=f[c>>2]|0}vSa(h,e,f[c+4>>2]|0);c=b[h+11>>0]|0;g=c<<24>>24<0;x=0;ja(49,d|0,(g?f[h>>2]|0:h)|0,(g?f[h+4>>2]|0:c&255)|0)|0;c=x;x=0;if(c&1){i=Ia()|0;HTa(h);Ua(i|0)}else{HTa(h);break}}while(0);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];e=0;while(1){if((e|0)==3)break;f[d+(e<<2)>>2]=0;e=e+1|0}u=i;return}function dz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;c=i+20|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;h=g+1|0;if(h>>>0>268435455)_da();else{j=(f[a+8>>2]|0)-e|0;e=j>>3;RX(d,j>>4>>>0<134217727?(e>>>0>>0?h:e):268435455,g,a+12|0);h=d+8|0;g=f[h>>2]|0;f0a(c,b);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=f[c>>2];f[h>>2]=g+16;_A(a,d);IQ(d);u=i;return}}function ez(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k+8|0;g=k;if(!(b[a+28>>0]|0)){if((f[(f[c+28>>2]|0)+4>>2]|0)!=5){d=c+32|0;i=f[d>>2]|0;if(!((i|0)!=0?(f[i+4>>2]|0)==5:0))e=6}}else{d=c+32|0;e=6}if((e|0)==6){h=c+8|0;I$a(j,h);GUa(g,h);h=j+4|0;i=f[g>>2]|0;g=f[g+4>>2]|0;e=a+24|0;while(1){if(!(lTa(f[j>>2]|0,f[h>>2]|0,i,g)|0))break;l=LOa(j)|0;if($1a(f[l>>2]|0,f[e>>2]|0)|0)I9(a,f[d>>2]|0);RYa(j)}if($1a(f[c+24>>2]|0,f[e>>2]|0)|0)I9(a,f[d>>2]|0)}u=k;return}function fz(a,c){a=a|0;c=c|0;var d=0,e=0;zma(f[a>>2]|0,40)|0;zma(tPa(f[a>>2]|0,81460)|0,32)|0;zma(s4(f[c>>2]|0,f[a>>2]|0)|0,32)|0;d=c+26|0;if(b[d>>0]|0){zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80921)|0}e=f[a>>2]|0;zm(e,Bbb(f[c+4>>2]|0)|0)|0;if(y1a(c)|0){e=zma(f[a>>2]|0,32)|0;zm(e,Bbb(f[c+8>>2]|0)|0)|0}if(b[d>>0]|0)yCa(f[a>>2]|0,123274)|0;yCa(f[a>>2]|0,123274)|0;return}function gz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110823)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+12>>2]|0);DS(a,c);u=i;return}function hz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+48|0;d=h+16|0;i=h+36|0;j=h+32|0;e=h;g=a+16|0;c=a+36|0;a=Bbb(f[c>>2]|0)|0;f[j>>2]=f[b+24>>2];f[d>>2]=f[j>>2];b=(hJ(a,d)|0)+16|0;f[i>>2]=f[b>>2];f[d>>2]=f[i>>2];a=(KI(a,d)|0)+4|0;a=f[a>>2]|0;if(!a){j=f[c>>2]|0;Bbb(j)|0;j=xWa(j+144|0)|0;BVa(f[g>>2]|0,j)|0}else{yXa(e);f[e>>2]=a;j=f[c>>2]|0;Bbb(j)|0;j=ZVa(j+144|0)|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];Zpa(j,d)|0;BVa(f[g>>2]|0,j)|0}u=h;return}function iz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110712)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);if((f[(f[c+12>>2]|0)+4>>2]|0)!=5?(f[(f[c+16>>2]|0)+4>>2]|0)!=5:0){Ev(Ev(f[a+28>>2]|0,-2)|0,0)|0;CX(a,4,4,0)}u=i;return}function jz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;d=g+24|0;e=g;f[d>>2]=f[c+8>>2];Mu(e,b,f[c+12>>2]|0);if(D0a(e)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}else{d=aY((f[b+4>>2]|0)+4|0,d)|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];M0a(a)}u=g;return}function kz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;h=a+80|0;e=f[h>>2]|0;RC(a+16|0);BH(e,f[h>>2]|0);h=gSa(f[b>>2]|0)|0;e=a+112|0;if(Iab(f[h+8>>2]|0)|0){g=f[(f[e>>2]|0)+-4>>2]|0;c=a+84|0;f[d>>2]=h;b=hY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;BH(f[b>>2]|0,g);b=b+4|0}CU(c,h)}f[e>>2]=(f[e>>2]|0)+-4;u=i;return}function lz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){e=yCa(134176,110842)|0;d=f[a+28>>2]|0;d=zm(e,(f[d+4>>2]|0)+1-(f[d>>2]|0)|0)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(d,h)|0;du(d)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);DS(a,c);u=i;return}function mz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;um(a,b,c);do if(!(D0a(a)|0)){d=c+4|0;e=f[d>>2]|0;g=o2a(e)|0;b=f[a>>2]|0;if(g){if((b|0)==(e|0))break}else if((o2a(b)|0)^1|(b|0)==(e|0))break;g=yCa(134176,101251)|0;g=yCa(yCa(g,Aha(f[d>>2]|0)|0)|0,101261)|0;zma(xm(yCa(yCa(g,Aha(f[a>>2]|0)|0)|0,101271)|0,c)|0,10)|0;if((f[a>>2]|0)!=(f[d>>2]|0))Ca(101278,101307,128,110562)}while(0);return}function nz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){e=yCa(134176,110884)|0;d=f[a+28>>2]|0;d=zm(e,(f[d+4>>2]|0)+1-(f[d>>2]|0)|0)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(d,h)|0;du(d)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);DS(a,c);u=i;return}function oz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=f[b>>2]|0;g=f[b+4>>2]|0;c=((f[c>>2]|0)-i<<3)+(f[c+4>>2]|0)-g|0;e=i;if((c|0)>0){if(!g){h=d;e=i}else{i=32-g|0;h=(c|0)<(i|0)?c:i;i=-1>>>(i-h|0)&-1<>2]|0;f[g>>2]=f[g>>2]&~i|f[e>>2]&i;e=d+4|0;i=(f[e>>2]|0)+h|0;f[d>>2]=g+(i>>>5<<2);f[e>>2]=i&31;e=(f[b>>2]|0)+4|0;f[b>>2]=e;c=c-h|0;h=d}g=(c|0)/32|0;fia(f[d>>2]|0,e|0,g<<2|0)|0;e=c-(g<<5)|0;c=(f[h>>2]|0)+(g<<2)|0;f[h>>2]=c;if((e|0)>0){g=(f[b>>2]|0)+(g<<2)|0;f[b>>2]=g;i=-1>>>(32-e|0);c=f[h>>2]|0;f[c>>2]=f[c>>2]&~i|f[g>>2]&i;f[d+4>>2]=e}}else c=f[d>>2]|0;f[a>>2]=c;f[a+4>>2]=f[d+4>>2];return}function pz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=d+4|0;g=(f[h>>2]|0)-(f[d>>2]|0)|0;gia(d,g+c|0);g=(f[d>>2]|0)+g|0;a:while(1){c=b[a>>0]|0;b:do switch(c<<24>>24){case 0:break a;case 92:{c=b[a+1>>0]|0;switch(c<<24>>24){case 92:case 39:case 34:{e=2;break b}case 110:{e=2;c=10;break b}case 116:{e=2;c=9;break b}default:{e=3;c=((MB(c)|0)<<4)+(MB(b[a+2>>0]|0)|0)&255;break b}}}default:e=1}while(0);b[g>>0]=c;a=a+e|0;g=g+1|0}e=f[d>>2]|0;c=e;if(g>>>0>>0)Ca(99240,99261,1512,99290);a=g-c|0;if(a>>>0>((f[h>>2]|0)-c|0)>>>0)Ca(99305,99261,1514,99290);else{gia(d,a);return}}function qz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110632)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Tpa(a,f[c+8>>2]|0);DS(a,c);u=i;return}function rz(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=WC(c,h,d)|0;d=f[g>>2]|0;if(!d){JY(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function sz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;do if(b[a+12>>0]|0){e=yCa(zm(yCa(zm(yCa(134176,87275)|0,d)|0,87596)|0,c)|0,123274)|0;ZXa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,k=x,x=0,!(k&1)):0){JCa(h);Wq(e,i)|0;du(e)|0;break}k=Ia()|0;JCa(h);Ua(k|0)}while(0);k=Xea(d,a,c)|0;u=j;return k|0}function tz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;h=a+80|0;e=f[h>>2]|0;cD(a+16|0);BH(e,f[h>>2]|0);h=gSa(f[b>>2]|0)|0;e=a+112|0;if(Iab(f[h+8>>2]|0)|0){g=f[(f[e>>2]|0)+-4>>2]|0;c=a+84|0;f[d>>2]=h;b=hY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;BH(f[b>>2]|0,g);b=b+4|0}CU(c,h)}f[e>>2]=(f[e>>2]|0)+-4;u=i;return}function uz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;h=a+80|0;e=f[h>>2]|0;hD(a+16|0);BH(e,f[h>>2]|0);h=gSa(f[b>>2]|0)|0;e=a+112|0;if(Iab(f[h+8>>2]|0)|0){g=f[(f[e>>2]|0)+-4>>2]|0;c=a+84|0;f[d>>2]=h;b=hY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;BH(f[b>>2]|0,g);b=b+4|0}CU(c,h)}f[e>>2]=(f[e>>2]|0)+-4;u=i;return}function vz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=f[a+88>>2]|0;d=(f[a+92>>2]|0)-c>>2;do if(d>>>0>b>>>0){b=f[c+(b<<2)>>2]|0;if(!(f[b+12>>2]|0)){e=b;break}else Ca(95064,87234,891,95103)}else{c=b-d|0;b=f[a>>2]|0;do if(c>>>0>=(f[b+40>>2]|0)-(f[b+36>>2]|0)>>2>>>0){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,95124,h7a(95124)|0);x=0;ua(1869,a|0,g|0);e=x;x=0;if(e&1){h=Ia()|0;HTa(g);Ua(h|0)}else{HTa(g);b=f[a>>2]|0;break}}while(0);e=f[(f[b+36>>2]|0)+(c<<2)>>2]|0}while(0);u=h;return f[e>>2]|0}function wz(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;i=a+44|0;a=f[i>>2]|0;j=NKa(f[a>>2]|0,c,1)|0;h=Fpa(f[a>>2]|0,11,j,h)|0;g=Fpa(f[a>>2]|0,7,g,h)|0;h=f[i>>2]|0;a=NKa(f[h>>2]|0,d,1)|0;d=NKa(f[f[i>>2]>>2]|0,e,1)|0;d=Fpa(f[h>>2]|0,10,a,d)|0;a=f[i>>2]|0;b=Lya(a,b,Fpa(f[a>>2]|0,8,g,d)|0)|0;d=f[i>>2]|0;g=NKa(f[d>>2]|0,c,1)|0;h=NKa(f[f[i>>2]>>2]|0,e,1)|0;return F$(a,b,Fpa(f[d>>2]|0,10,g,h)|0)|0}function xz(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;if(Iab(f[d>>2]|0)|0){c=WW(a+56|0,d)|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;Gd(a,b);if(Iab(f[d>>2]|0)|0){b=a+68|0;if(K5(b,d)|0){t3(a+44|0);X7(b,d)}if(c){t3(a+44|0);$T(a+56|0,d)}}return}function yz(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;if(Iab(f[d>>2]|0)|0){c=WW(a+56|0,d)|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;Hd(a,b);if(Iab(f[d>>2]|0)|0){b=a+68|0;if(K5(b,d)|0){v3(a+44|0);X7(b,d)}if(c){v3(a+44|0);bU(a+56|0,d)}}return}function zz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;i=n+24|0;j=n+16|0;h=n+8|0;k=n;l=a+4|0;d=f[l>>2]|0;if(((d|0)!=5?(e=a+12|0,Bbb(f[a+16>>2]|0)|0):0)?!(o2a(d)|0):0){I$a(j,e);GUa(h,e);g=j+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(lTa(f[j>>2]|0,f[g>>2]|0,e,d)|0))break;h=LOa(j)|0;if((f[(f[h>>2]|0)+4>>2]|0)==5){m=7;break}RYa(j)}do if((m|0)==7){if(b){if(c)break}else{f[k>>2]=f[a+8>>2];f[i>>2]=f[k>>2];if(MM(a,i)|0)break}f[l>>2]=5}while(0)}u=n;return}function Az(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}x=0;d=ga(254,b|0)|0;e=x;x=0;do if(!(e&1)?(x=0,ua(82,a|0,d|0),e=x,x=0,!(e&1)):0){e=f[c+4>>2]|0;d=f[c>>2]|0;while(1){if((d|0)==(e|0)){b=8;break}x=0;b=ga(254,f[d+4>>2]|0)|0;c=x;x=0;if(c&1){b=13;break}x=0;ua(82,a|0,b|0);c=x;x=0;if(c&1){b=13;break}d=d+8|0}if((b|0)==8)return;else if((b|0)==13){d=Ia()|0;break}}else b=9;while(0);if((b|0)==9)d=Ia()|0;HTa(a);Ua(d|0)}function Bz(a){a=a|0;var c=0,d=0,e=0;eza();if(b[135320]|0)yCa(134176,52356)|0;c=n8(48)|0;x=0;ua(93,c|0,a|0);d=x;x=0;do if(d&1){a=Ia()|0;ubb(c)}else{f[32967]=c;a=f[c+44>>2]|0;if(b[135320]|0?(zma(bC(134008,a)|0,10)|0,b[135320]|0):0)yCa(134176,52344)|0;c=n8(232)|0;x=0;ta(444,c|0);d=x;x=0;if(d&1){a=Ia()|0;ubb(c);break}f[32970]=c;d=n8(152)|0;x=0;a=ia(69,a|0,0)|0;e=x;x=0;if(!(e&1)?(x=0,wa(74,d|0,c|0,a|0,0),e=x,x=0,!(e&1)):0){f[32968]=d;MP();return}a=Ia()|0;ubb(d)}while(0);Ua(a|0)}function Cz(a,c){a=a|0;c=c|0;var d=0;d=a+4|0;AD(f[d>>2]|0,f[c+4>>2]|0,b[c+12>>0]|0);switch(f[c+8>>2]|0){case 0:{yCa(f[d>>2]|0,93143)|0;break}case 1:{yCa(f[d>>2]|0,117183)|0;break}case 2:{yCa(f[d>>2]|0,93147)|0;break}case 3:{yCa(f[d>>2]|0,93151)|0;break}case 4:{yCa(f[d>>2]|0,93154)|0;break}case 5:{yCa(f[d>>2]|0,93158)|0;break}default:{}}a=c+16|0;if(Bbb(f[a>>2]|0)|0){d=yCa(f[d>>2]|0,75482)|0;zm(d,Bbb(f[a>>2]|0)|0)|0}return}function Dz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;g=l_a()|0;if(g>>>0>>0)_da();j=((f[a+8>>2]|0)-c|0)/12|0;c=j<<1;RM(h,j>>>0>>1>>>0?(c>>>0>>0?e:c):g,d,a+8|0);d=h+8|0;e=f[d>>2]|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}f[d>>2]=e+12;uF(a,h);Q6(h);u=i;return}function Ez(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+64|0;a:do if(!(f[e>>2]|0)){do switch(c&-3|0){case 48:case 16:{d=87071;break}case 1:case 17:{d=87073;break}case 8:{d=87075;break}case 24:{d=87077;break}case 56:{d=87080;break}case 9:case 25:{d=87083;break}case 52:case 20:{d=87086;break}case 5:case 21:{d=87089;break}case 12:{d=87092;break}case 28:{d=87095;break}case 60:{d=87099;break}case 13:case 29:{d=87103;break}default:{a=0;break a}}while(0);d=DP(b,d)|0;f[e>>2]=d;if(d){f[a+88>>2]=c;if((c&2|0)!=0?(q2a(d,0,2)|0)!=0:0){oY(f[e>>2]|0)|0;f[e>>2]=0;a=0}}else a=0}else a=0;while(0);return a|0}function Fz(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;a=a+44|0;i=f[a>>2]|0;j=NKa(f[i>>2]|0,d,1)|0;g=Fpa(f[i>>2]|0,7,g,j)|0;g=Fpa(f[i>>2]|0,10,g,h)|0;i=f[a>>2]|0;c=NKa(f[i>>2]|0,c,1)|0;h=NKa(f[f[a>>2]>>2]|0,e,1)|0;h=Fpa(f[i>>2]|0,11,c,h)|0;c=f[a>>2]|0;d=NKa(f[c>>2]|0,d,1)|0;e=NKa(f[f[a>>2]>>2]|0,e,1)|0;e=Lya(c,b,Fpa(f[c>>2]|0,11,d,e)|0)|0;return F$(c,e,Fpa(f[f[a>>2]>>2]|0,8,g,h)|0)|0}function Gz(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;a=a+44|0;i=f[a>>2]|0;j=NKa(f[i>>2]|0,d,1)|0;g=Fpa(f[i>>2]|0,7,g,j)|0;g=Fpa(f[i>>2]|0,10,g,h)|0;i=f[a>>2]|0;c=NKa(f[i>>2]|0,c,1)|0;h=NKa(f[f[a>>2]>>2]|0,e,1)|0;h=Fpa(f[i>>2]|0,11,c,h)|0;c=f[a>>2]|0;d=NKa(f[c>>2]|0,d,1)|0;e=NKa(f[f[a>>2]>>2]|0,e,1)|0;e=Lya(c,b,Fpa(f[c>>2]|0,12,d,e)|0)|0;return F$(c,e,Fpa(f[f[a>>2]>>2]|0,8,g,h)|0)|0}function Hz(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=WC(c,h,d)|0;d=f[g>>2]|0;if(!d){_Z(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function Iz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;e=c+20|0;if((b[e>>0]|0)!=0?(Rwa(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c),(b[e>>0]|0)!=0):0){d=f[a+36>>2]|0;Bbb(d)|0;d=(b[d+114>>0]|0)==0}else d=0;jwa(a,d,c);g=c+8|0;d=c+32|0;XX(a,b[g>>0]|0,f[d>>2]|0,c);i=Bbb(f[c+16>>2]|0)|0;Pq(a,i,f[c+4>>2]|0,h[g>>0]|0,(b[e>>0]|0)!=0,c);fda(a,f[(f[c+24>>2]|0)+4>>2]|0,1,c,84174);e=c+28|0;Woa(a,f[(f[e>>2]|0)+4>>2]|0,c);fda(a,f[(f[e>>2]|0)+4>>2]|0,f[d>>2]|0,c,84239);return}function Jz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;h=u;u=u+48|0;i=h+16|0;l=h;j=h+32|0;g=h+36|0;k=NKa(f[c>>2]|0,d,1)|0;m$a(l,(Bbb(b)|0)+-1|0);f[i>>2]=f[l>>2];f[i+4>>2]=f[l+4>>2];f[i+8>>2]=f[l+8>>2];f[i+12>>2]=f[l+12>>2];d=a0(c,i)|0;d=Fpa(f[c>>2]|0,7,k,d)|0;f[j>>2]=f[a+24>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;x=0;f[i>>2]=f[j>>2];b=ka(10,c|0,i|0,g|0,0)|0;a=x;x=0;if(!(a&1)?(x=0,e=ka(8,c|0,d|0,b|0,0)|0,l=x,x=0,!(l&1)):0){uSa(g);u=h;return e|0}l=Ia()|0;uSa(g);Ua(l|0);return 0}function Kz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=v8a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((b|0)==(e|0)){if(wXa(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function Lz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;e=g;f[e>>2]=b;f[e+4>>2]=c;b=g+20|0;c=g+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,d,h7a(d)|0);x=0;va(181,b|0,e|0,c|0);d=x;x=0;do if(!(d&1)){x=0;ua(3190,a|0,b|0);d=x;x=0;if(d&1){g=Ia()|0;HTa(b);b=g;break}else{HTa(b);HTa(c);f[a>>2]=50288;c=e;d=f[c+4>>2]|0;e=a+8|0;f[e>>2]=f[c>>2];f[e+4>>2]=d;u=g;return}}else b=Ia()|0;while(0);HTa(c);Ua(b|0)}function Mz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;ZXa(k,b);b=f[k>>2]|0;x=0;g=ia(73,b|0,134912)|0;l=x;x=0;if(!(l&1)?(x=0,ka(f[(f[g>>2]|0)+48>>2]|0,g|0,31216,31248,c|0)|0,l=x,x=0,!(l&1)):0){x=0;b=ia(73,b|0,134920)|0;l=x;x=0;if(((!(l&1)?(x=0,h=ga(f[(f[b>>2]|0)+12>>2]|0,b|0)|0,l=x,x=0,!(l&1)):0)?(f[d>>2]=h,x=0,i=ga(f[(f[b>>2]|0)+16>>2]|0,b|0)|0,l=x,x=0,!(l&1)):0)?(f[e>>2]=i,x=0,ua(f[(f[b>>2]|0)+20>>2]|0,a|0,b|0),l=x,x=0,!(l&1)):0){JCa(k);u=j;return}b=Ia()|0}else b=Ia()|0;JCa(k);Ua(b|0)}function Nz(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;l=k;ZXa(l,c);c=f[l>>2]|0;x=0;h=ia(73,c|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,ka(f[(f[h>>2]|0)+32>>2]|0,h|0,31216,31248,d|0)|0,m=x,x=0,!(m&1)):0){x=0;c=ia(73,c|0,134896)|0;m=x;x=0;if(((!(m&1)?(x=0,i=ga(f[(f[c>>2]|0)+12>>2]|0,c|0)|0,m=x,x=0,!(m&1)):0)?(b[e>>0]=i,x=0,j=ga(f[(f[c>>2]|0)+16>>2]|0,c|0)|0,m=x,x=0,!(m&1)):0)?(b[g>>0]=j,x=0,ua(f[(f[c>>2]|0)+20>>2]|0,a|0,c|0),m=x,x=0,!(m&1)):0){JCa(l);u=k;return}c=Ia()|0}else c=Ia()|0;JCa(l);Ua(c|0)}function Oz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/24|0;e=d+1|0;if(e>>>0>178956970)_da();i=((f[a+8>>2]|0)-c|0)/24|0;c=i<<1;y_(g,i>>>0<89478485?(c>>>0>>0?e:c):178956970,d,a+12|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(3198,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;wY(g);Ua(i|0)}else{f[c>>2]=d+24;cM(a,g);wY(g);u=h;return}}function Pz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;g=j+24|0;h=j+20|0;i=j;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>3;e=d+1|0;if(e>>>0>536870911)_da();k=(f[a+8>>2]|0)-c|0;c=k>>2;DN(i,k>>3>>>0<268435455?(c>>>0>>0?e:c):536870911,d,a+8|0);c=i+8|0;d=f[c>>2]|0;x=0;ua(65,h|0,111899);e=x;x=0;if(e&1){k=Ia()|0;vha(i);Ua(k|0)}else{k=f[b>>2]|0;f[g>>2]=f[h>>2];cUa(d,g,k);f[c>>2]=d+8;HO(a,i);vha(i);u=j;return}}function Qz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;do if(SAa()|0){x=0;c=ga(212,20)|0;e=x;x=0;if(e&1){c=Ia()|0;break}x=0;ua(1294,c|0,f[a>>2]|0);e=x;x=0;if(e&1){b=Ia()|0;ubb(c);c=b;break}else{d=a;e=c;g=8;break}}else{d=a;e=0;g=8}while(0);if((g|0)==8){x=0;va(f[(f[b>>2]|0)+12>>2]|0,b|0,a|0,f[d>>2]|0);g=x;x=0;do if(!(g&1)?(x=0,va(118,a|0,b|0,0),g=x,x=0,!(g&1)):0){if(SAa()|0?(x=0,ta(472,e|0),g=x,x=0,g&1):0)break;if(e|0){I_a(e);ubb(e)}return}while(0);c=Ia()|0;if(e){I_a(e);ubb(e)}}Ua(c|0)}function Rz(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;d=u;u=u+32|0;b=d+12|0;c=d+16|0;e=d;Ax(a,97644);g=a+72|0;a=f[g>>2]|0;f[g>>2]=a+1;zY(e,a);x=0;ia(83,e|0,97660)|0;a=x;x=0;do if(!(a&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];a=0;while(1){if((a|0)==3)break;f[e+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,b|0,c|0);g=x;x=0;if(g&1){a=Ia()|0;HTa(c);break}else{HTa(c);HTa(e);u=d;return f[b>>2]|0}}else a=Ia()|0;while(0);HTa(e);Ua(a|0);return 0}function Sz(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=a+11|0;h=b[j>>0]|0;k=a+4|0;g=f[k>>2]|0;i=h&255;do if((h<<24>>24<0?g:i)|0){if((c|0)!=(d|0)){g=d;h=c;while(1){g=g+-4|0;if(h>>>0>=g>>>0)break;i=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=i;h=h+4|0}h=b[j>>0]|0;i=h&255;g=f[k>>2]|0}j=h<<24>>24<0;a=j?f[a>>2]|0:a;k=d+-4|0;j=a+(j?g:i)|0;g=a;while(1){h=b[g>>0]|0;i=h<<24>>24>0&h<<24>>24!=127;if(c>>>0>=k>>>0)break;if(i?(f[c>>2]|0)!=(h<<24>>24|0):0){l=11;break}c=c+4|0;g=(j-g|0)>1?g+1|0:g}if((l|0)==11){f[e>>2]=4;break}if(i?((f[k>>2]|0)+-1|0)>>>0>=h<<24>>24>>>0:0)f[e>>2]=4}while(0);return}function Tz(){z8a();X7a();S7a();R7a();Q7a();N7a();M7a();L7a();K7a();J7a();I7a();H7a();G7a();F7a();E7a();D7a();C7a();B7a();A7a();z7a();e7a();y7a();x7a();d7a();w7a();v7a();c7a();b7a();a7a();u7a();t7a();$6a();s7a();r7a();q7a();p7a();o7a();n7a();m7a();return}function Uz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;h=f[b>>2]|0;f[e>>2]=h;e=HH(e,4)|0;g=f[a+4>>2]|0;a:do if(g){i=g+-1|0;c=(i&g|0)==0;if(!c)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=i&e;b=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b){b=0;break a}a=f[b+4>>2]|0;if((e|0)==(a|0)){if((f[b+8>>2]|0)==(h|0))break a}else{if(!c){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&i;if((a|0)!=(d|0)){b=0;break a}}}else b=0}else b=0;while(0);u=j;return b|0}function Vz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;h=f[b>>2]|0;f[e>>2]=h;e=HH(e,4)|0;g=f[a+4>>2]|0;a:do if(g){i=g+-1|0;c=(i&g|0)==0;if(!c)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=i&e;b=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b){b=0;break a}a=f[b+4>>2]|0;if((a|0)==(e|0)){if((f[b+8>>2]|0)==(h|0))break a}else{if(!c){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&i;if((a|0)!=(d|0)){b=0;break a}}}else b=0}else b=0;while(0);u=j;return b|0}function Wz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d;if(b[(f[a>>2]|0)+112>>0]|0){g=Or(c,1)|0;g=b8a(b[g>>0]|0)|0;g=g?1:2;wn(a,c,g+1|0,UQa(a,Or(c,g)|0)|0);u=d;return}d=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=h7a(94097)|0;x=0;va(87,e|0,94097,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,d|0,e|0);c=x;x=0;if(c&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;HTa(e);if(c)g=7}else{a=Ia()|0;g=7}if((g|0)==7)La(d|0);Ua(a|0)}function Xz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+8|0;g=a+96|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;if(b[g>>0]|0)rbb(f[a+32>>2]|0);i=a+97|0;if(b[i>>0]|0)rbb(f[a+56>>2]|0);e=a+52|0;f[e>>2]=d;do if(d>>>0>8){e=b[a+98>>0]|0;if((c|0)!=0&e<<24>>24!=0){f[a+32>>2]=c;b[g>>0]=0;h=13;break}else{h=qbb(d)|0;f[a+32>>2]=h;b[g>>0]=1;h=10;break}}else{f[a+32>>2]=a+44;f[e>>2]=8;b[g>>0]=0;e=b[a+98>>0]|0;h=10}while(0);if((h|0)==10)if(!(e<<24>>24)){e=(d|0)>8?d:8;f[a+60>>2]=e;if((c|0)!=0&e>>>0>7)g=0;else{g=1;c=qbb(e)|0}}else h=13;if((h|0)==13){f[a+60>>2]=0;g=0;c=0}f[a+56>>2]=c;b[i>>0]=g;return a|0}function Yz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+20>>0]|0){h=yCa(134176,113415)|0;h=wfa(h,f[c>>2]|0)|0;ZXa(g,h+(f[(f[h>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);e=f[a+12>>2]|0;d=f[a+8>>2]|0;while(1){if((d|0)==(e|0))break;hu(a,f[d>>2]|0,c);d=d+4|0}u=i;return}function Zz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=Cw(a,b,c,e)|0;if(iD(e,d,c)|0){h=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=h;d=g+1|0;if(iD(e,c,b)|0){h=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=h;if(iD(e,b,a)|0){h=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=h;g=g+3|0}else g=g+2|0}else g=d}return g|0}function _z(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+64|0;d=g;gX(d);c=a+36|0;e=Bbb(f[c>>2]|0)|0;x=0;va(94,d+16|0,b|0,e|0);e=x;x=0;do if(!(e&1)){pDa(d);e=b+36|0;kK(a+16|0,e);if((f[b+4>>2]|0)==0?o2a(f[(f[e>>2]|0)+4>>2]|0)|0:0){U0a(d,Bbb(f[c>>2]|0)|0);a=gNa(f[d>>2]|0,f[e>>2]|0)|0;f[e>>2]=a}gX(d);e=Bbb(f[c>>2]|0)|0;x=0;va(94,d+16|0,b|0,e|0);e=x;x=0;if(e&1){c=Ia()|0;pDa(d);break}else{pDa(d);u=g;return}}else{c=Ia()|0;pDa(d)}while(0);Ua(c|0)}function $z(a,b){a=a|0;b=b|0;zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80859)|0;yCa(mna(f[a>>2]|0,f[b>>2]|0)|0,123271)|0;switch(f[b+8>>2]|0){case 0:{yCa(f[a>>2]|0,80867)|0;break}case 1:{yCa(f[a>>2]|0,80872)|0;break}case 2:{yCa(f[a>>2]|0,81460)|0;break}case 3:{yCa(f[a>>2]|0,118300)|0;break}default:hb()}zma(f[a>>2]|0,32)|0;yCa(s4(f[b+4>>2]|0,f[a>>2]|0)|0,80878)|0;return}function aA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;if(!c){c=0;h=0}else{c=f[c+4>>2]|0;tna(a,c,d);h=1}b=AB(a+48|0,b)|0;do if(Joa(a,(b|0)!=0,d,85198)|0){e=b+12|0;a=b+16|0;d=f[a>>2]|0;if(!(b2a(d)|0)){GXa(g,c,h);h=f[g+4>>2]|0;i=e;f[i>>2]=f[g>>2];f[i+4>>2]=h;break}b=f[e>>2]|0;if((b|0)!=5){if(!((c|0)==5|(c|0)==(b|0))){c=0;i=8}}else i=8;if((i|0)==8)f[e>>2]=c;if((h|0)!=(d|0))f[a>>2]=-2}while(0);u=j;return}function bA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=f[b>>2]|0;j=f[a>>2]|0;k=T4(d,e,g,j)|0;h=f[c>>2]|0;i=T4(d,e,h,g)|0;do if(k){if(i){f[a>>2]=h;f[c>>2]=j;g=1;break}f[a>>2]=g;f[b>>2]=j;g=f[c>>2]|0;if(T4(d,e,g,j)|0){f[b>>2]=g;f[c>>2]=j;g=2}else g=1}else if(i){f[b>>2]=h;f[c>>2]=g;g=f[b>>2]|0;h=f[a>>2]|0;if(T4(d,e,g,h)|0){f[a>>2]=g;f[b>>2]=h;g=2}else g=1}else g=0;while(0);return g|0}function cA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l+24|0;i=l+20|0;j=l;k=f[a>>2]|0;g=((f[a+4>>2]|0)-k|0)/12|0;h=g+1|0;if(h>>>0>357913941)_da();else{m=((f[a+8>>2]|0)-k|0)/12|0;k=m<<1;RM(j,m>>>0<178956970?(k>>>0>>0?h:k):357913941,g,a+8|0);k=j+8|0;h=f[k>>2]|0;f[i>>2]=f[b>>2];c=f[c>>2]|0;d=f[d>>2]|0;f[e>>2]=f[i>>2];dJa(h,e,c,d);f[k>>2]=h+12;HN(a,j);_fa(j);u=l;return}}function dA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+12|0;j=k;h=WC(c,i,d)|0;d=f[h>>2]|0;if(!d){fZ(j,c,e,g);d=f[j>>2]|0;LZ(c,f[i>>2]|0,h,d);h=1}else h=0;f[a>>2]=d;b[a+4>>0]=h;u=k;return}function eA(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+72>>0]|0){g=yCa(134176,87366)|0;ZXa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){JCa(c);Wq(g,e)|0;du(g)|0;break}i=Ia()|0;JCa(c);Ua(i|0)}while(0);d=A$(a,0)|0;G$(a,87387);c=a+80|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;G$(a,c);VA(a,d);u=h;return}function fA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;lXa(a);b[a+26>>0]=0;b[a+27>>0]=0;g=a+28|0;yUa(g);h=a+40|0;yUa(h);i=a+52|0;yUa(i);j=a+64|0;yUa(j);e=a+80|0;f[a+76>>2]=0;yUa(e);b[a+24>>0]=b[c+12>>0]|0;b[a+25>>0]=b[c+13>>0]|0;if(d|0?(x=0,ua(292,a|0,d|0),d=x,x=0,d&1):0){d=Ia()|0;MTa(e);MTa(j);MTa(i);sXa(h);sXa(g);I_a(a);Ua(d|0)}return}function gA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;i=(b[c+20>>0]|0)==0;d=a+32|0;e=h[c+8>>0]|0;g=Bbb(f[c+12>>2]|0)|0;if(i){j=Bbb(f[c+16>>2]|0)|0;i=_2(a,f[c+24>>2]|0)|0;a=_2(a,f[c+28>>2]|0)|0;a=sT(f[d>>2]|0,e,g,j,i,a,f[c+32>>2]|0)|0}else{j=_2(a,f[c+24>>2]|0)|0;a=_2(a,f[c+28>>2]|0)|0;a=Mra(f[d>>2]|0,e,g,j,a,f[c+32>>2]|0)|0}return a|0}function hA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>2>>>0>>0){e=f[a>>2]|0;c=c-e>>2;d=c+b|0;if(d>>>0>1073741823)_da();else{e=h-e|0;h=e>>1;gO(g,e>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823,c,a+8|0);oHa(g,b);KK(a,g);HY(g);break}}else ZIa(a,b);while(0);u=i;return}function iA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;g=l;f[a>>2]=c;k=a+4|0;f[k>>2]=0;h=a+8|0;f[h>>2]=0;i=a+12|0;f[i>>2]=0;j=f[c+40>>2]|0;c=f[c+36>>2]|0;while(1){if((c|0)==(j|0)){c=3;break}d=f[c>>2]|0;f[g>>2]=d;e=f[h>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;ua(1300,k|0,g|0);e=x;x=0;if(e&1){c=9;break}}else{x=0;ua(1293,e|0,d|0);e=x;x=0;if(e&1){c=9;break}f[h>>2]=(f[h>>2]|0)+16}c=c+4|0}if((c|0)==3){k=f[a>>2]|0;k=(wya(f[k+36>>2]|0,f[k+40>>2]|0)|0)&1;b[a+16>>0]=k;u=l;return}else if((c|0)==9){l=Ia()|0;uSa(k);Ua(l|0)}}function jA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;d=j+32|0;e=j+24|0;f[e>>2]=b;g=j+8|0;h=j;i=a+100|0;if((eV(i,b)|0)==(a+104|0)){qMa(g,c);rA(d,i,b,e,g);g=f[a>>2]|0;E1a(h,b);i=FSa(c,f[a>>2]|0)|0;f[d>>2]=f[h>>2];Ws(g,eka(d,c,i,0)|0);u=j;return}else Ca(53443,51387,426,53491)}function kA(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;b=f[d>>2]|0;if(Iab(b)|0){c=WW(a+56|0,d)|0;b=f[d>>2]|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;if(Iab(b)|0){b=a+68|0;if(K5(b,d)|0){u3(a+44|0);X7(b,d)}if(c){u3(a+44|0);aU(a+56|0,d)}}return}function lA(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;b=f[d>>2]|0;if(Iab(b)|0){c=WW(a+56|0,d)|0;b=f[d>>2]|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;if(Iab(b)|0){b=a+68|0;if(K5(b,d)|0){w3(a+44|0);X7(b,d)}if(c){w3(a+44|0);cU(a+56|0,d)}}return}function mA(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;b=f[d>>2]|0;if(Iab(b)|0){c=WW(a+56|0,d)|0;b=f[d>>2]|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;if(Iab(b)|0){b=a+68|0;if(K5(b,d)|0){x3(a+44|0);X7(b,d)}if(c){x3(a+44|0);dU(a+56|0,d)}}return}function nA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;if(e>>>0>357913941)_da();i=((f[a+8>>2]|0)-c|0)/12|0;c=i<<1;RM(g,i>>>0<178956970?(c>>>0>>0?e:c):357913941,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(88,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;Q6(g);Ua(i|0)}else{f[c>>2]=d+12;uF(a,g);Q6(g);u=h;return}}function oA(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h;g=a+36|0;c=f[g>>2]|0;if(!c)Ca(97710,87234,828,97718);do if(b[a+12>>0]|0){c=yCa(134176,97728)|0;c=yCa(zm(c,f[g>>2]|0)|0,123274)|0;ZXa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;a=ia(73,f[d>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[a>>2]|0)+28>>2]|0,a|0,10)|0,i=x,x=0,!(i&1)):0){JCa(d);Wq(c,e)|0;du(c)|0;c=f[g>>2]|0;break}i=Ia()|0;JCa(d);Ua(i|0)}while(0);f[g>>2]=c+-1;u=h;return}function pA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=yCa(134176,110646)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=dk(a)|0;f[c+16>>2]=j;j=dk(a)|0;f[c+12>>2]=j;j=dk(a)|0;f[c+8>>2]=j;raa(c);u=i;return}function qA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=a+11|0;g=b[k>>0]|0;h=g<<24>>24<0;if(h)j=f[a+4>>2]|0;else j=g&255;if(j>>>0>>0)Lda();if(h)g=(f[a+8>>2]&2147483647)+-1|0;else g=10;if((g-j|0)>>>0>=e>>>0){if(e|0){if(h)i=f[a>>2]|0;else i=a;g=j-c|0;h=i+c|0;if(g){STa(h+e|0,h,g)|0;d=h>>>0<=d>>>0&(i+j|0)>>>0>d>>>0?d+e|0:d}STa(h,d,e)|0;d=j+e|0;if((b[k>>0]|0)<0)f[a+4>>2]=d;else b[k>>0]=d;T0a(i+d|0,0)}}else zB(a,g,j+e-g|0,j,c,0,e,d);return a|0}function rA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+12|0;j=k;h=WC(c,i,d)|0;d=f[h>>2]|0;if(!d){wU(j,c,e,g);d=f[j>>2]|0;LZ(c,f[i>>2]|0,h,d);h=1}else h=0;f[a>>2]=d;b[a+4>>0]=h;u=k;return}function sA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;c=l+32|0;g=l+24|0;e=l+8|0;h=l+16|0;i=l;j=b+8|0;I$a(g,j);GUa(e,j);j=b+32|0;k=g+4|0;d=f[e>>2]|0;e=f[e+4>>2]|0;while(1){if(!(lTa(f[g>>2]|0,f[k>>2]|0,d,e)|0))break;m=LOa(g)|0;f[h>>2]=f[m>>2];m=f[j>>2]|0;f[c>>2]=f[h>>2];aA(a,c,m,b);RYa(g)}f[i>>2]=f[b+24>>2];m=f[j>>2]|0;f[c>>2]=f[i>>2];aA(a,c,m,b);lwa(a,(f[(f[b+28>>2]|0)+4>>2]|4|0)==5,b);u=l;return}function tA(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+11|0;if((b[d>>0]|0)<0){T0a(f[a>>2]|0,0);f[a+4>>2]=0;d=a}else{T0a(a,0);b[d>>0]=0;d=a}wv(a);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}e=a+12|0;c=c+12|0;d=e+11|0;if((b[d>>0]|0)<0){T0a(f[e>>2]|0,0);f[a+16>>2]=0;d=e}else{T0a(e,0);b[d>>0]=0;d=e}wv(e);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}return}function uA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;d=Bbb(f[a+16>>2]|0)|0;g=c+8|0;e=f[g>>2]|0;do if(!(FVa(d,e)|0)?((n9(d,e)|0)+-1|0)>>>0<=1:0){c=Nv(f[c+12>>2]|0)|0;g=f[g>>2]|0;d=f[f[a+24>>2]>>2]|0;a=d+(g<<3)|0;i=Wi(c)|0;e=f[a>>2]|0;f[a>>2]=e>>>0>>0?i:e;if(!(EQ(c)|0)){c=p$a(c)|0;if(((c|0)!=0?ara(c)|0:0)?(b[c+9>>0]|0)!=0:0)e=h[c+8>>0]<<3;else e=-1}else e=VHa(c)|0;c=d+(g<<3)+4|0;d=f[c>>2]|0;if(!d){f[c>>2]=e;break}if((d|0)!=(e|0))f[c>>2]=-1}while(0);return}function vA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=yba(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;if((c|0)==(e|0)){if(dN(a+8|0,b)|0)break a}else{if(!i){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&h;if((c|0)!=(d|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function wA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;g=f[c>>2]|0;f[e>>2]=g;e=HH(e,4)|0;a:do if(b){h=b+-1|0;i=(h&b|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(b>>>0)|0;else d=h&e;c=f[a+(d<<2)>>2]|0;if(c)while(1){c=f[c>>2]|0;if(!c){c=0;break a}a=f[c+4>>2]|0;if((e|0)==(a|0)){if((f[c+8>>2]|0)==(g|0))break a}else{if(!i){if(a>>>0>=b>>>0)a=(a>>>0)%(b>>>0)|0}else a=a&h;if((a|0)!=(d|0)){c=0;break a}}}else c=0}else c=0;while(0);u=j;return c|0}function xA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=zF(c,h,d)|0;d=f[g>>2]|0;if(!d){SY(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function yA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h+16|0;d=h;c=h+4|0;f[d>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;g=f[b+4>>2]|0;x=0;f[e>>2]=f[d>>2];g=ka(10,a+32|0,e|0,c|0,g|0)|0;e=x;x=0;if(e&1){h=Ia()|0;uSa(c);Ua(h|0)}uSa(c);d=b+8|0;e=g+8|0;b=b+12|0;c=0;while(1){if(c>>>0>=(Bbb(f[b>>2]|0)|0)>>>0)break;i=JDa(d,c)|0;aaa(e,_2(a,f[i>>2]|0)|0);c=c+1|0}u=h;return g|0}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)_da();else{j=((f[a+8>>2]|0)-d|0)/12|0;i=j<<1;RM(c,j>>>0<178956970?(i>>>0>>0?g:i):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=0;i=e+4|0;f[i>>2]=0;j=e+8|0;f[j>>2]=0;f[e>>2]=f[b>>2];d=b+4|0;f[i>>2]=f[d>>2];i=b+8|0;f[j>>2]=f[i>>2];f[i>>2]=0;f[d>>2]=0;f[b>>2]=0;f[g>>2]=e+12;tD(a,c);Vaa(c);u=h;return}}function AA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=JD(c,h,d)|0;d=f[g>>2]|0;if(!d){vW(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function BA(a){a=a|0;Mca(a+244|0);xFa(a+220|0);yJa(a+208|0);uSa(a+188|0);NQa(a+168|0);uSa(a+156|0);uSa(a+144|0);jHa(a+132|0);pxa(a+112|0);Lza(a+100|0);uSa(a+88|0);uSa(a+76|0);uSa(a+60|0);POa(a+48|0);return}function CA(a,c){a=a|0;c=c|0;var d=0,e=0;d=(c|0)!=0;a:do if(d&(a&3|0)!=0)while(1){if(!(b[a>>0]|0)){c=a;break a}a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){e=5;break}}else e=5;while(0);b:do if((e|0)==5){do if(d){if(!(b[a>>0]|0))if(!c)break;else{c=a;break b}c:do if(c>>>0>3)while(1){d=f[a>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0)break c;a=a+4|0;c=c+-4|0;if(c>>>0<=3){e=11;break}}else e=11;while(0);if((e|0)==11)if(!c)break;while(1){if(!(b[a>>0]|0)){c=a;break b}c=c+-1|0;if(!c)break;else a=a+1|0}}while(0);c=0}while(0);return c|0}function DA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=JD(c,h,d)|0;d=f[g>>2]|0;if(!d){SY(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function EA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;i=j;g=f[a>>2]|0;h=(f[a+4>>2]|0)-g>>4;e=h+1|0;if(e>>>0>268435455)_da();k=(f[a+8>>2]|0)-g|0;g=k>>3;FN(i,k>>4>>>0<134217727?(g>>>0>>0?e:g):268435455,h,a+8|0);e=i+8|0;g=f[e>>2]|0;x=0;wa(90,g|0,f[b>>2]|0,f[c>>2]|0,f[d>>2]|0);d=x;x=0;if(d&1){k=Ia()|0;wha(i);Ua(k|0)}else{f[e>>2]=g+16;MO(a,i);wha(i);u=j;return}}function FA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+12|0;j=k;h=WC(c,i,d)|0;d=f[h>>2]|0;if(!d){ZW(j,c,e,g);d=f[j>>2]|0;LZ(c,f[i>>2]|0,h,d);h=1}else h=0;f[a>>2]=d;b[a+4>>0]=h;u=k;return}function GA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=WC(c,h,d)|0;d=f[g>>2]|0;if(!d){K1(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function HA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;RX(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+12|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=f[b>>2];f[g>>2]=e+16;_A(a,c);yT(c);u=h;return}}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h+16|0;d=h;c=h+4|0;f[d>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;g=f[b+4>>2]|0;x=0;f[e>>2]=f[d>>2];g=ka(13,a+32|0,e|0,c|0,g|0)|0;e=x;x=0;if(e&1){h=Ia()|0;uSa(c);Ua(h|0)}uSa(c);d=b+8|0;e=g+8|0;b=b+12|0;c=0;while(1){if(c>>>0>=(Bbb(f[b>>2]|0)|0)>>>0)break;i=JDa(d,c)|0;aaa(e,_2(a,f[i>>2]|0)|0);c=c+1|0}u=h;return g|0}function JA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=u;u=u+80|0;i=h+24|0;l=h;j=h+40|0;k=h+68|0;sX(c,d,e);uWa(l);m$a(i,Bbb(d)|0);m=l+8|0;f[m>>2]=f[i>>2];f[m+4>>2]=f[i+4>>2];f[m+8>>2]=f[i+8>>2];f[m+12>>2]=f[i+12>>2];f[l+4>>2]=1;nRa(j);b[j+8>>0]=e;b[j+9>>0]=1;rHa(j+16|0,e,0)|0;b[j+20>>0]=1;f[j+24>>2]=l;f[j+4>>2]=g;g=f[c+36>>2]|0;e=f[(f[g>>2]|0)+24>>2]|0;f[k>>2]=d;f[i>>2]=f[k>>2];rc[e&255](a,g,j,i);u=h;return}function KA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;b=k+8|0;d=k;g=a+4|0;h=a+8|0;i=a+16|0;Gma(b,f[g>>2]|0,f[h>>2]|0,f[i>>2]|0);E9(d,a);e=b+4|0;d=f[d+4>>2]|0;b=f[b>>2]|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;c=c+4|0;f[e>>2]=c;if((c-(f[b>>2]|0)|0)==4096){b=b+4|0;c=f[b>>2]|0;f[e>>2]=c}}f[a+20>>2]=0;c=f[g>>2]|0;b=c;while(1){b=(f[h>>2]|0)-b>>2;if(b>>>0<=2)break;ubb(f[c>>2]|0);e=(f[g>>2]|0)+4|0;f[g>>2]=e;b=e;c=e}switch(b|0){case 1:{b=512;j=11;break}case 2:{b=1024;j=11;break}default:{}}if((j|0)==11)f[i>>2]=b;u=k;return}function LA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;zma(f[a>>2]|0,40)|0;GXa(e,f[a+28>>2]|0,f[a>>2]|0);_m(e,b);e=b+16|0;do if(!(f[e>>2]|0)){b=b+12|0;c=f[b>>2]|0;if(c|0?!(V6a(f[c>>2]|0)|0):0){VBa(a);d=7;break}zma(f[a>>2]|0,41)|0}else{VBa(a);b=b+12|0;d=7}while(0);if((d|0)==7){b=f[b>>2]|0;if(b|0?!(V6a(f[b>>2]|0)|0):0)OP(a,b);b=f[e>>2]|0;if(b|0)OP(a,b);kfa(a)}u=g;return}function MA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=a+16|0;k=f[a+72>>2]|0;d=f[a+68>>2]|0;while(1){if((d|0)==(k|0))break;g=f[d>>2]|0;e=g+48|0;g=g+52|0;c=1;while(1){a=f[e>>2]|0;if(c>>>0>=(f[g>>2]|0)-a>>2>>>0)break;a=f[a+(c<<2)>>2]|0;a:do if((f[a+40>>2]|0)-(f[a+36>>2]|0)>>2>>>0<=1){b=f[a+28>>2]|0;a=f[a+24>>2]|0;while(1){if((a|0)==(b|0))break a;if(rab(f[a>>2]|0)|0?(i=iRa(f[f[a+8>>2]>>2]|0)|0,j=PX(f[i+12>>2]|0)|0,j|0):0)d_(h,f[i+8>>2]|0,f[j+8>>2]|0);a=a+16|0}}while(0);c=c+1|0}d=d+4|0}return}function NA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=b+4|0;if((f[g>>2]|0)==5)CM(a);b=$O(f[a+36>>2]|0,2,b)|0;f[e>>2]=b;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else IL(a,e);b=a+60|0;c=f[b>>2]|0;if((f[a+56>>2]|0)==(c|0))Ca(111004,111024,378,111125);f[b>>2]=c+-4;if((f[g>>2]|0)==5)CM(a);u=h;return}function OA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;i=j;e=f[33196]|0;g=((f[33197]|0)-e|0)/40|0;h=g+1|0;if(h>>>0>107374182)_da();k=((f[33198]|0)-e|0)/40|0;e=k<<1;$M(i,k>>>0<53687091?(e>>>0>>0?h:e):107374182,g);e=i+8|0;g=f[e>>2]|0;x=0;wa(157,g|0,a|0,(b[c>>0]|0)!=0|0,f[d>>2]|0);d=x;x=0;if(d&1){k=Ia()|0;$ca(i);Ua(k|0)}else{f[e>>2]=g+40;LQ(i);$ca(i);u=j;return}}function PA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;i=b+12|0;e=b+16|0;c=f[e>>2]|0;a:do if(Bbb(c)|0){g=a+36|0;d=0;while(1){if(d>>>0>=(c+-1|0)>>>0)break;c=JDa(i,d)|0;c=f[c>>2]|0;if(o2a(f[c+4>>2]|0)|0){U0a(h,Bbb(f[g>>2]|0)|0);k=gNa(f[h>>2]|0,c)|0;c=JDa(i,d)|0;f[c>>2]=k}d=d+1|0;c=f[e>>2]|0}if($r(a,MCa(i)|0)|0){CTa(a);switch(f[b+4>>2]|0){case 5:case 0:break a;default:{}}Ca(61415,61463,298,99913)}}while(0);u=j;return}function QA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;d=j+4|0;g=j+8|0;h=j;f[d>>2]=b;b=Vz(c+68|0,d)|0;if(b|0?(i=b+12|0,e=a+148|0,JPa(i,f[e>>2]|0,f[a+152>>2]|0,f[a+156>>2]|0)|0):0){b=f[a+68>>2]|0;b=(f[b+4>>2]|0)-(f[b>>2]|0)|0;f[g>>2]=b;f[h>>2]=i;c=a+136|0;d=f[c>>2]|0;if(d>>>0<(f[a+140>>2]|0)>>>0){f[d>>2]=b;f[d+4>>2]=i;f[c>>2]=d+8}else yF(a+132|0,g,h);f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2]}u=j;return}function RA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111004,111024,467,111043);f[c>>2]=d+-4;e=b+4|0;if((f[e>>2]|0)==5)CM(a);c=$O(f[a+36>>2]|0,7,b)|0;f[g>>2]=c;d=a+4|0;b=f[d>>2]|0;if(b>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c;f[d>>2]=(f[d>>2]|0)+4}else IL(a,g);if((f[e>>2]|0)==5)CM(a);u=h;return}function SA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;b=g;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/24|0;e=d+1|0;if(e>>>0>178956970)_da();else{h=((f[a+8>>2]|0)-c|0)/24|0;c=h<<1;y_(b,h>>>0<89478485?(c>>>0>>0?e:c):178956970,d,a+12|0);e=b+8|0;d=f[e>>2]|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;N5(d);f[e>>2]=d+24;cM(a,b);wY(b);u=g;return}}function TA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+8|0;g=j;do if((f[b+4>>2]|0)!=5){c=b+12|0;if(!(l$a(f[b+16>>2]|0)|0)?(e=MCa(c)|0,o2a(f[(f[e>>2]|0)+4>>2]|0)|0):0)break;I$a(h,c);GUa(g,c);e=h+4|0;d=f[g>>2]|0;c=f[g+4>>2]|0;while(1){if(!(lTa(f[h>>2]|0,f[e>>2]|0,d,c)|0))break;g=LOa(h)|0;if((f[(f[g>>2]|0)+4>>2]|0)==5){i=7;break}RYa(h)}if((i|0)==7)lxa(a,b,5)}while(0);u=j;return}function UA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=e+4|0;g=bA(a,b,c,f[f[e>>2]>>2]|0,f[k>>2]|0)|0;h=f[d>>2]|0;i=f[c>>2]|0;k=f[k>>2]|0;j=f[f[e>>2]>>2]|0;if(T4(j,k,h,i)|0){f[c>>2]=h;f[d>>2]=i;h=g+1|0;e=f[c>>2]|0;d=f[b>>2]|0;if(T4(j,k,e,d)|0){f[b>>2]=e;f[c>>2]=d;e=f[b>>2]|0;d=f[a>>2]|0;if(T4(j,k,e,d)|0){f[a>>2]=e;f[b>>2]=d;g=g+3|0}else g=g+2|0}else g=h}return g|0}function VA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;h=a+68|0;e=f[h>>2]|0;g=(f[e+4>>2]|0)-(f[e>>2]|0)|0;f4a(i,-5-b+g|0);i=sz(e,b,f[i>>2]|0)|0;a:do if((i|0)!=5){if(i>>>0>=5)Ca(87204,87234,107,87261);c=f[h>>2]|0;k=f[c>>2]|0;d=k+b|0;e=d+5|0;b=k+g-e|0;if(b){fia(d+i|0,e|0,b|0)|0;c=f[h>>2]|0}e=5-i|0;gia(c,(f[c+4>>2]|0)-e-(f[c>>2]|0)|0);if(f[a+76>>2]|0){d=f[a+132>>2]|0;b=(f[a+136>>2]|0)-d>>3;c=f[a+144>>2]|0;while(1){if(c>>>0>=b>>>0)break a;k=d+(c<<3)|0;f[k>>2]=(f[k>>2]|0)-e;c=c+1|0}}}while(0);u=j;return}function WA(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+52>>2]|0;c=f[b+48>>2]|0;while(1){if((c|0)==(d|0))break;Bha(a,f[c>>2]|0);c=c+4|0}d=f[b+40>>2]|0;c=f[b+36>>2]|0;while(1){if((c|0)==(d|0))break;e0(a,f[c>>2]|0);c=c+4|0}r7(a,f[b+76>>2]|0,f[b+80>>2]|0);r7(a,f[b+100>>2]|0,f[b+104>>2]|0);return}function XA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}x=0;c=ga(254,f[b+4>>2]|0)|0;d=x;x=0;do if(!(d&1)?(x=0,ua(82,a|0,c|0),d=x,x=0,!(d&1)):0){d=f[b+12>>2]|0;c=f[b+8>>2]|0;while(1){if((c|0)==(d|0)){b=8;break}x=0;b=ga(254,f[c>>2]|0)|0;e=x;x=0;if(e&1){b=13;break}x=0;ua(82,a|0,b|0);e=x;x=0;if(e&1){b=13;break}c=c+4|0}if((b|0)==8)return;else if((b|0)==13){c=Ia()|0;break}}else b=9;while(0);if((b|0)==9)c=Ia()|0;HTa(a);Ua(c|0)}function YA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=yCa(134176,110823)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);j=Gr(a,nq(a)|0)|0;f[c+8>>2]=j;j=dk(a)|0;f[c+12>>2]=j;iWa(c);u=i;return}function ZA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110616)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);c=f[c+8>>2]|0;if(c|0)jGa(a,c);Ev(f[a+28>>2]|0,15)|0;u=i;return}function _A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;l=f[g>>2]|0;i=l+-16|0;h=c+-16|0;f[i>>2]=0;j=l+-12|0;f[j>>2]=0;k=l+-8|0;f[k>>2]=0;f[l+-4>>2]=f[c+-4>>2];f[i>>2]=f[h>>2];i=c+-12|0;f[j>>2]=f[i>>2];j=c+-8|0;f[k>>2]=f[j>>2];f[j>>2]=0;f[i>>2]=0;f[h>>2]=0;f[g>>2]=(f[g>>2]|0)+-16;c=h}j=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=j;j=b+8|0;l=f[e>>2]|0;f[e>>2]=f[j>>2];f[j>>2]=l;j=a+8|0;l=b+12|0;k=f[j>>2]|0;f[j>>2]=f[l>>2];f[l>>2]=k;f[b>>2]=f[g>>2];return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)lo(a,b)}}else lo(a,b);return}function aB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=JD(c,h,d)|0;d=f[g>>2]|0;if(!d){zZ(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function bB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=JD(c,h,d)|0;d=f[g>>2]|0;if(!d){w$(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function cB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=v8a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((e|0)==(b|0)){if(wXa(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function dB(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;if((1073741807-c|0)>>>0>>0)Mda();j=a+8|0;if((b[j+3>>0]|0)<0)i=f[a>>2]|0;else i=a;if(c>>>0<536870887){d=d+c|0;h=c<<1;d=d>>>0>>0?h:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823){d=Ea(8)|0;x=0;ua(98,d|0,121963);j=x;x=0;if(j&1){j=Ia()|0;La(d|0);Ua(j|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}}else d=1073741807;h=n8(d<<2)|0;if(g|0)sWa(h,i,g);e=e-g|0;if(e|0)sWa(h+(g<<2)|0,i+(g<<2)|0,e);if((c|0)!=1)ubb(i);f[a>>2]=h;f[j>>2]=d|-2147483648;return}function eB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;d=f[33196]|0;e=((f[33197]|0)-d|0)/40|0;g=e+1|0;if(g>>>0>107374182)_da();j=((f[33198]|0)-d|0)/40|0;d=j<<1;$M(h,j>>>0<53687091?(d>>>0>>0?g:d):107374182,e);d=h+8|0;e=f[d>>2]|0;x=0;wa(157,e|0,116662,(b[a>>0]|0)!=0|0,f[c>>2]|0);c=x;x=0;if(c&1){j=Ia()|0;$ca(h);Ua(j|0)}else{f[d>>2]=e+40;LQ(h);$ca(h);u=i;return}}function fB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=f[a>>2]|0;if((((f[b+4>>2]|0)==5?(f[c+4>>2]|0)!=5:0)?(g=n$a(b)|0,(g|0)!=0):0)?QQa(g)|0:0){b=f[i+20>>2]|0;Bbb(b)|0;U0a(h,b);b=f[(f[f[a+4>>2]>>2]|0)+8>>2]|0;e=g+16|0;f[e>>2]=b;if(d){d=mBa(f[h>>2]|0,20,b)|0;f[e>>2]=d}xqa(g);b=f[a+8>>2]|0;f[(f[b>>2]|0)+12>>2]=c;b=Dpa(h,g,f[b>>2]|0)|0;BVa(f[i>>2]|0,b)|0;b=1}else b=0;u=j;return b|0}function gB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[a>>2]|0;a:do if((c|0)==(f[b>>2]|0)){switch(c|0){case 4:case 0:{c=(a|0)==(b|0);break a}case 1:{if(!(GZ(f[a+4>>2]|0,f[b+4>>2]|0)|0)){c=0;break a}break}case 3:{if((f[a+4>>2]|0)!=(f[b+4>>2]|0)){c=0;break a}break}default:{}}g=a+12|0;d=a+16|0;c=f[d>>2]|0;a=f[g>>2]|0;e=b+12|0;if((c-a|0)==((f[b+16>>2]|0)-(f[e>>2]|0)|0)){b=0;while(1){if(b>>>0>=c-a>>2>>>0){c=1;break a}if(mYa(f[a+(b<<2)>>2]|0,f[(f[e>>2]|0)+(b<<2)>>2]|0)|0){c=0;break a}b=b+1|0;a=f[g>>2]|0;c=f[d>>2]|0}}else c=0}else c=0;while(0);return c|0}function hB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+96|0;d=h;e=b+12|0;c=f[e>>2]|0;g=f[c+4>>2]|0;c=LRa(c)|0;do if(g4a(g)|0?(C8(d,0,g),dN(c+8|0,d)|0):0){c=f[b+8>>2]|0;if(((c|0)!=(dn(g,9)|0)?(c|0)!=(dn(g,10)|0):0)?(c|0)!=(dn(g,11)|0):0){c=0;break}g=_Ya(f[a+40>>2]|0)|0;fA(d,g,f[b+16>>2]|0);g=lza(d)|0;V7(d);if(!g)c=f[e>>2]|0;else c=0}else c=0;while(0);u=h;return c|0}function iB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=f[a+136>>2]|0;h=a+76|0;d=0;e=0;a=f[a+132>>2]|0;b=1;c=0;while(1){if((a|0)==(g|0))break;if(d|0)yCa(f[h>>2]|0,123344)|0;l=f[a>>2]|0;k=f[a+4>>2]|0;BV(f[h>>2]|0,l-d|0);BV(f[h>>2]|0,(f[k>>2]|0)-e|0);j=k+4|0;BV(f[h>>2]|0,(f[j>>2]|0)-b|0);i=k+8|0;BV(f[h>>2]|0,(f[i>>2]|0)-c|0);d=l;e=f[k>>2]|0;a=a+8|0;b=f[j>>2]|0;c=f[i>>2]|0}yCa(f[h>>2]|0,87318)|0;return}function jB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;b=g;c=f[32988]|0;d=(f[32989]|0)-c>>2;e=d+1|0;if(e>>>0>1073741823)_da();else{h=(f[32990]|0)-c|0;c=h>>1;yL(b,h>>2>>>0<536870911?(c>>>0>>0?e:c):1073741823,d);e=b+8|0;d=f[e>>2]|0;c=f[a>>2]|0;f[a>>2]=0;f[d>>2]=c;f[e>>2]=d+4;gM(b);hZ(b);u=g;return}}function kB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;gO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;KK(a,c);HV(c);u=h;return}}function lB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)_da();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;RM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;E4(e,b);f[g>>2]=e+12;eK(a,c);k$(c);u=h;return}}function mB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)_da();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;RM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;E4(e,b);f[g>>2]=e+12;eK(a,c);l$(c);u=h;return}}function nB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)_da();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;RM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;E4(e,b);f[g>>2]=e+12;eK(a,c);m$(c);u=h;return}}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)_da();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;RM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;E4(e,b);f[g>>2]=e+12;eK(a,c);n$(c);u=h;return}}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)_da();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;RM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;E4(e,b);f[g>>2]=e+12;eK(a,c);o$(c);u=h;return}}function qB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;j=k+4|0;f[i>>2]=a;e=Bbb(f[a+40>>2]|0)|0;while(1){h=a+24|0;g=e;if((L6a(h)|0)==(g|0))break;e=f[e+8>>2]|0;f[j>>2]=e;if(yQa(d,e)|0){l=EE(e,i)|0;l=f[l>>2]|0;f[l>>2]=c;f[l+4>>2]=b;g=f[g+4>>2]|0;sZ(h,e);dL(a+72|0,j);sZ(e,a);e=EE(e+48|0,i)|0;f[e>>2]=l;e=g}else e=f[g+4>>2]|0}u=k;return}function rB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=v8a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((e|0)==(b|0)){if($1a(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function sB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=JD(c,h,d)|0;d=f[g>>2]|0;if(!d){L0(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function tB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+12|0;h=g;d=UG(jF(a)|0)|0;e=I;if(!(e>>>0>0|(e|0)==0&d>>>0>4294967295)){cLa(c,d,e);u=g;return f[c>>2]|0}e=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=h7a(b)|0;x=0;va(87,h|0,b|0,g|0);b=x;x=0;if(!(b&1)){x=0;wa(138,e|0,h|0,f[a+28>>2]|0,f[a+32>>2]|0);b=x;x=0;if(b&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(h);if(d)i=7}else{c=Ia()|0;i=7}if((i|0)==7)La(e|0);Ua(c|0);return 0}function uB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110568)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);DS(a,c);u=i;return}function vB(a,c){a=a|0;c=c|0;var d=0;zma(f[a>>2]|0,40)|0;tPa(f[a>>2]|0,80945)|0;zma(s4(f[c>>2]|0,f[a>>2]|0)|0,32)|0;d=f[a>>2]|0;if(!(b[c+12>>0]|0))zma(yCa(d,Aha(f[c+4>>2]|0)|0)|0,32)|0;else{d=yCa(d,80953)|0;yCa(yCa(d,Aha(f[c+4>>2]|0)|0)|0,123562)|0}ir(a,f[c+8>>2]|0);zma(f[a>>2]|0,41)|0;return}function wB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=yCa(134176,110632)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);jGa(a,f[c+8>>2]|0);Ev(f[a+28>>2]|0,26)|0;u=i;return}function xB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=QE(c,h,d)|0;d=f[g>>2]|0;if(!d){K1(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function yB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)_da();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;gO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;KK(a,c);wW(c);u=h;return}}function zB(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((-18-c|0)>>>0>>0)Mda();if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=P1a(k)|0;if(g|0)$Ta(l,m,g)|0;if(i|0)$Ta(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)$Ta(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)ubb(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;T0a(l+i|0,0);return}function AB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=v8a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((b|0)==(e|0)){if($1a(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function BB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/12|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/12|0;d=c+b|0;if(d>>>0>357913941)_da();else{e=(h-e|0)/12|0;h=e<<1;RM(g,e>>>0<178956970?(h>>>0>>0?d:h):357913941,c,a+8|0);Eya(g,b);tD(a,g);Vaa(g);break}}else UAa(a,b);while(0);u=i;return}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/20|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/20|0;d=c+b|0;if(d>>>0>214748364)_da();else{e=(h-e|0)/20|0;h=e<<1;KM(g,e>>>0<107374182?(h>>>0>>0?d:h):214748364,c,a+8|0);s2(g,b);yN(a,g);yfa(g);break}}else n3(a,b);while(0);u=i;return}function DB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=zF(c,h,d)|0;d=f[g>>2]|0;if(!d){zZ(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function EB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=rga(a,Lk(a,f[b+8>>2]|0)|0,b)|0;if(!(sab(f[e>>2]|0)|0)){c=rga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(sab(f[c>>2]|0)|0)){d=Pma(a,Lk(a,f[b+16>>2]|0)|0,b)|0;if(sab(f[d>>2]|0)|0)c=d;else{b=dIa(b,b)|0;a=PK(a,b)|0;i6(a,d);i6(a,e);i6(a,c);c=b}}}else c=e;return c|0}function FB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;if((c+1|0)==(d|0)){e=b+12|0;g=JDa(e,c)|0;g=f[g>>2]|0}else{h=$Ra(f[a>>2]|0)|0;i=h+12|0;e=b+12|0;g=c;while(1){if(g>>>0>=d>>>0)break;j=JDa(e,g)|0;aaa(i,f[j>>2]|0);g=g+1|0}rt(h);g=h}a:do if((Bbb(f[b+16>>2]|0)|0)==(d|0))d7(e,c);else while(1){if(c>>>0>=d>>>0)break a;i=xWa(f[a>>2]|0)|0;j=JDa(e,c)|0;f[j>>2]=i;c=c+1|0}while(0);rt(b);return g|0}function GB(a,c){a=a|0;c=c|0;var d=0;Ita(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);d=f[a+36>>2]|0;Bbb(d)|0;Vsa(a,(b[d+114>>0]|0)==0,c);Bba(a,f[c+4>>2]|0,1,c,83614);Bba(a,f[(f[c+12>>2]|0)+4>>2]|0,1,c,83644);d=c+16|0;Qka(a,f[(f[d>>2]|0)+4>>2]|0,c,83680);Bba(a,f[(f[d>>2]|0)+4>>2]|0,f[c+24>>2]|0,c,83717);Bba(a,f[(f[c+20>>2]|0)+4>>2]|0,2,c,83761);return}function HB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;i=n8(104)|0;f[a>>2]=i;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;g=i+8|0;k=f[e>>2]|0;e=f[e+4>>2]|0;f[g>>2]=f[f[d>>2]>>2];x=0;va(101,i+12|0,k|0,f[e>>2]|0);e=x;x=0;if(e&1){k=Ia()|0;f[a>>2]=0;ubb(i);Ua(k|0)}else{b[c>>0]=1;f[h>>2]=f[g>>2];k=HH(h,4)|0;f[i+4>>2]=k;f[i>>2]=0;u=j;return}}function IB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;tab(g);h=f[a+16>>2]|0;e=f[b>>2]|0;b=f[c>>2]|0;c=f[a+12>>2]|0;while(1){if((c|0)==(h|0))break;d=f[c>>2]|0;if($1a(f[d+4>>2]|0,e)|0?$1a(f[d+8>>2]|0,b)|0:0){i=5;break}c=c+4|0}if((i|0)==5)f[g>>2]=f[d>>2];e=f[g>>2]|0;a:do if(Gab(e)|0)b=0;else{g=f[a+52>>2]|0;c=f[a+48>>2]|0;while(1){if((c|0)==(g|0)){b=0;break a}b=f[c>>2]|0;d=v_a(f[b+8>>2]|0)|0;if(d|0?$1a(f[d+8>>2]|0,e)|0:0)break a;c=c+4|0}}while(0);u=j;return b|0}function JB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=JD(c,h,d)|0;d=f[g>>2]|0;if(!d){K1(i,c,e);d=f[i>>2]|0;LZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function KB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=D1a(a)|0;while(1){a=e+16|0;if(y5(c,a)|0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(!(y5(a,c)|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function LB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111004,111024,431,111068);f[c>>2]=d+-4;e=$O(f[a+36>>2]|0,5,b)|0;f[g>>2]=e;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=e;f[c>>2]=(f[c>>2]|0)+4}else IL(a,g);do if((f[b+4>>2]|0)==5)if(!(f[b+16>>2]|0))Ca(111079,111024,443,111068);else{CM(a);break}while(0);u=h;return}function MB(a){a=a|0;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;d=c;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)>=6)if((a+-65&255)<6)a=-55;else{c=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;b=h7a(99327)|0;x=0;va(87,d|0,99327,b|0);b=x;x=0;if(!(b&1)){x=0;ua(261,c|0,d|0);b=x;x=0;if(b&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;HTa(d);if(b)e=9}else{a=Ia()|0;e=9}if((e|0)==9)La(c|0);Ua(a|0)}else a=-87;else a=-48;u=c;return a+b|0}function NB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=f[b>>2]|0;e=(f[b+4>>2]|0)-g>>2;i=0;while(1){if(i>>>0>=e>>>0)break;d=f[g+(i<<2)>>2]|0;if(w8a(f[d+4>>2]|0)|0){h=4;break}i=i+1|0}if((h|0)==4){if(i){d=f[a+36>>2]|0;Bbb(d)|0;d=$Ra(d+144|0)|0;g=d+12|0;e=0;while(1){h=f[b>>2]|0;if((e|0)==(i|0))break;aaa(g,Xba(a,f[h+(e<<2)>>2]|0)|0);e=e+1|0}aaa(g,f[h+(i<<2)>>2]|0);XJa(d,c)}Tba(a,d)|0}return}function OB(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o;m=n8(20)|0;sPa(m);n=a+11|0;if((b[n>>0]|0)<0){j=a;k=a;c=f[a>>2]|0}else{j=a;k=a;c=a}e=Ooa(b[c>>0]|0)|0;f[m+4>>2]=e;e=a+4|0;g=m+8|0;h=m+12|0;i=m+16|0;d=1;while(1){a=b[n>>0]|0;c=a<<24>>24<0;if(c)a=f[e>>2]|0;else a=a&255;if(d>>>0>=a>>>0)break;if(c)a=f[k>>2]|0;else a=j;a=Ooa(b[a+d>>0]|0)|0;f[l>>2]=a;c=f[h>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[c>>2]=a;f[h>>2]=c+4}else IL(g,l);d=d+1|0}u=o;return m|0}function PB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=g0a(a,0)|0;if(!(FBa(f[d>>2]|0,133104)|0))Ca(66344,75338,1593,66406);d=g0a(b,0)|0;if(!(FBa(f[d>>2]|0,133172)|0))Ca(66425,75338,1594,66406);a:do if(c){d=g0a(a,2)|0;Nqa(Bbb(I0(Bbb(I0(Bbb(f[d>>2]|0)|0)|0)|0)|0)|0,b)|0}else{c=0;while(1){d=g0a(b,1)|0;if(c>>>0>=(cIa(Bbb(f[d>>2]|0)|0)|0)>>>0)break a;e=g0a(a,2)|0;e=Bbb(I0(Bbb(I0(Bbb(f[e>>2]|0)|0)|0)|0)|0)|0;d=g0a(b,1)|0;d=g0a(f[d>>2]|0,c)|0;Nqa(e,f[d>>2]|0)|0;c=c+1|0}}while(0);return}function QB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=yCa(134176,110616)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){JCa(g);Wq(h,e)|0;du(h)|0;break}j=Ia()|0;JCa(g);Ua(j|0)}while(0);Ax(a,117212);if(f[(f[a+124>>2]|0)+4>>2]|0){j=dk(a)|0;f[c+8>>2]=j}u=i;return}function RB(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=d+16|0;g=f[e>>2]|0;if(!g)if(!(d8(d)|0)){g=f[e>>2]|0;h=5}else e=0;else h=5;a:do if((h|0)==5){j=d+20|0;i=f[j>>2]|0;e=i;if((g-i|0)>>>0>>0){e=ec[f[d+36>>2]&127](d,a,c)|0;break}b:do if((b[d+75>>0]|0)<0|(c|0)==0){h=0;g=a}else{i=c;while(1){g=i+-1|0;if((b[a+g>>0]|0)==10)break;if(!g){h=0;g=a;break b}else i=g}e=ec[f[d+36>>2]&127](d,a,i)|0;if(e>>>0>>0)break a;h=i;g=a+i|0;c=c-i|0;e=f[j>>2]|0}while(0);Iu(e|0,g|0,c|0)|0;f[j>>2]=(f[j>>2]|0)+c;e=h+c|0}while(0);return e|0} -function Dc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=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;G=u;u=u+208|0;E=G+196|0;J=G+168|0;h=G+184|0;i=G+172|0;D=G+132|0;m=G+120|0;l=G+156|0;n=G+144|0;q=G+108|0;r=G+104|0;y=G+92|0;s=G+88|0;t=G+76|0;B=G+64|0;C=G+52|0;v=G+40|0;z=G+28|0;w=G+16|0;F=G+12|0;H=G;kOa(J);x=0;d=ga(294,c|0)|0;A=x;x=0;a:do if(A&1)I=10;else{do if((d|0)==4){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}if(b8a(b[d>>0]|0)|0){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if($1a(d,f[33111]|0)|0){f[(f[J>>2]|0)+12>>2]=0;i=1;break}x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if($1a(d,f[33108]|0)|0){f[(f[J>>2]|0)+12>>2]=2;d=f[a>>2]|0;e=d+112|0;if(!(b[e>>0]|0)){b[e>>0]=1;b[d+113>>0]=1;i=1;break}g=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;c=h7a(94511)|0;x=0;va(87,h|0,94511,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,h|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(h);if(!e)break a}else d=Ia()|0;La(g|0);break a}x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if(!($1a(d,f[33103]|0)|0)){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if(!($1a(d,f[32999]|0)|0)){i=0;break}f[(f[J>>2]|0)+12>>2]=3;i=1;break}f[(f[J>>2]|0)+12>>2]=1;d=f[a>>2]|0;e=d+60|0;if(!(b[e>>0]|0)){b[e>>0]=1;b[d+61>>0]=1;i=1;break}g=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;c=h7a(93665)|0;x=0;va(87,i|0,93665,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,i|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(i);if(!e)break a}else d=Ia()|0;La(g|0);break a}else i=0}else i=0;while(0);x=0;d=ga(294,c|0)|0;A=x;x=0;b:do if(!(A&1)){do if(d>>>0>3){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1)break b;if(u8a(b[d>>0]|0)|0){x=0;d=ia(69,c|0,1)|0;A=x;x=0;if(!(A&1)?(x=0,g=ga(295,d|0)|0,A=x,x=0,!(A&1)):0){E1a(E,g);f[f[J>>2]>>2]=f[E>>2];e=2;h=1;break}d=Ia()|0;break a}else I=49}else I=49;while(0);do if((I|0)==49)if(i){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1)break b;x=0;d=ga(294,d|0)|0;A=x;x=0;if(A&1)break b;if(d>>>0>1){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1)break b;x=0;d=ia(69,d|0,1)|0;A=x;x=0;if(A&1)break b;if(lRa(d)|0){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if((!(A&1)?(x=0,j=ia(69,d|0,1)|0,A=x,x=0,!(A&1)):0)?(x=0,k=ga(295,j|0)|0,A=x,x=0,!(A&1)):0){E1a(E,k);f[f[J>>2]>>2]=f[E>>2];e=1;h=2;break}d=Ia()|0;break a}else{e=1;h=1}}else{e=1;h=1}}else{e=1;h=1}while(0);A=f[J>>2]|0;c:do if(!(Iab(f[A>>2]|0)|0))switch(f[A+12>>2]|0){case 0:{k=a+44|0;l=f[k>>2]|0;f[k>>2]=l+1;x=0;ua(1283,m|0,l|0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94532)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;HTa(D);break}f[A>>2]=f[E>>2];HTa(D);HTa(m);d=a+12|0;g=f[d>>2]|0;if((g|0)==(f[a+16>>2]|0)){x=0;ua(1502,a+8|0,A|0);m=x;x=0;if(m&1)break b;else break c}else{f[g>>2]=f[A>>2];f[d>>2]=(f[d>>2]|0)+4;break c}}else d=Ia()|0;while(0);HTa(m)}break a}case 3:{k=a+48|0;l=f[k>>2]|0;f[k>>2]=l+1;x=0;ua(1283,m|0,l|0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94549)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;HTa(D);break}f[A>>2]=f[E>>2];HTa(D);HTa(m);d=a+36|0;g=f[d>>2]|0;if((g|0)==(f[a+40>>2]|0)){x=0;ua(1502,a+32|0,A|0);m=x;x=0;if(m&1)break b;else break c}else{f[g>>2]=f[A>>2];f[d>>2]=(f[d>>2]|0)+4;break c}}else d=Ia()|0;while(0);HTa(m)}break a}case 2:{x=0;ua(1283,m|0,0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94563)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;HTa(D);break}else{f[A>>2]=f[E>>2];HTa(D);HTa(m);break c}}else d=Ia()|0;while(0);HTa(m)}break a}case 1:{x=0;ua(1283,m|0,0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94578)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;HTa(D);break}else{f[A>>2]=f[E>>2];HTa(D);HTa(m);break c}}else d=Ia()|0;while(0);HTa(m)}break a}default:{g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;c=h7a(94592)|0;x=0;va(87,l|0,94592,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,l|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(l);if(!e)break a}else d=Ia()|0;La(g|0);break a}}while(0);x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(!(m&1)){if(FRa(d)|0){if(!i)f[A+12>>2]=0}else{x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(m&1)break;x=0;d=ga(295,d|0)|0;m=x;x=0;if(m&1)break;if(!($1a(d,f[33108]|0)|0)){x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(m&1)break;x=0;d=ga(295,d|0)|0;m=x;x=0;if(m&1)break;if(!($1a(d,f[33103]|0)|0)){x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(m&1)break;x=0;d=ga(295,d|0)|0;m=x;x=0;if(m&1)break;if($1a(d,f[32999]|0)|0)d=3;else{g=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=h7a(94607)|0;x=0;va(87,n|0,94607,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,n|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(n);if(!e)break a}else d=Ia()|0;La(g|0);break a}}else d=1}else d=2;f[A+12>>2]=d;e=e+1|0}g=e+1|0;x=0;d=ia(69,c|0,e|0)|0;n=x;x=0;if(!(n&1)?(x=0,o=ga(295,d|0)|0,n=x,x=0,!(n&1)):0){E1a(E,o);f[A+4>>2]=f[E>>2];x=0;d=ia(69,c|0,g|0)|0;o=x;x=0;if(o&1)break;if(!(u8a(b[d>>0]|0)|0)){g=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;c=h7a(94626)|0;x=0;va(87,q|0,94626,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,q|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(q);if(!e)break a}else d=Ia()|0;La(g|0);break a}e=e+2|0;x=0;d=ia(69,c|0,g|0)|0;q=x;x=0;if(!(q&1)?(x=0,p=ga(295,d|0)|0,q=x,x=0,!(q&1)):0){E1a(E,p);f[A+8>>2]=f[E>>2];if(i){x=0;d=ia(69,c|0,3)|0;q=x;x=0;if(q&1){d=Ia()|0;break a}else n=d}else n=c;d=i?h:e;d:do switch(f[A+12>>2]|0){case 0:{x=0;ta(491,D|0);z=x;x=0;do if(z&1)d=Ia()|0;else{x=0;e=ga(294,n|0)|0;z=x;x=0;e:do if(z&1)I=171;else{f:do if(e>>>0>d>>>0){x=0;m=ia(69,n|0,d|0)|0;z=x;x=0;if(z&1){d=Ia()|0;break e}x=0;e=ia(69,m|0,0)|0;z=x;x=0;g:do if(!(z&1)){x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1)break;h:do if($1a(e,f[33110]|0)|0){h=f[D>>2]|0;j=h+8|0;k=h+12|0;l=h+16|0;i=1;while(1){x=0;e=ga(294,m|0)|0;z=x;x=0;if(z&1){I=174;break}if(i>>>0>=e>>>0)break h;x=0;e=ia(69,m|0,i|0)|0;z=x;x=0;if(z&1){I=182;break}x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1){I=182;break}x=0;e=ia(159,e|0,0)|0;z=x;x=0;if(z&1){I=182;break}f[E>>2]=e;g=f[k>>2]|0;if(g>>>0>=(f[l>>2]|0)>>>0){x=0;ua(1871,j|0,E|0);z=x;x=0;if(z&1){I=182;break}}else{f[g>>2]=e;f[k>>2]=g+4}i=i+1|0}if((I|0)==174){d=Ia()|0;break e}else if((I|0)==182){d=Ia()|0;break e}}else{if($1a(e,f[33109]|0)|0){x=0;e=ia(69,m|0,1)|0;z=x;x=0;if(z&1)break g;x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1)break g;x=0;e=ia(159,e|0,0)|0;z=x;x=0;if(z&1)break g;h=f[D>>2]|0;f[h+4>>2]=e;break}if(!($1a(e,f[33100]|0)|0)){g=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;c=h7a(94674)|0;x=0;va(87,t|0,94674,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,t|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(t);if(!e)break e}else d=Ia()|0;La(g|0);break e}x=0;e=ia(69,m|0,1)|0;z=x;x=0;do if(!(z&1)){x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1)break;z=f[a>>2]|0;E1a(r,e);f[E>>2]=f[r>>2];if(oma(z,E)|0){z=f[a>>2]|0;E1a(s,e);x=0;f[E>>2]=f[s>>2];e=ia(162,z|0,E|0)|0;z=x;x=0;if(z&1)break;g=f[D>>2]|0;x=0;ia(171,g|0,e|0)|0;z=x;x=0;if(z&1)break;else{h=g;break h}}g=Ea(20)|0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;c=h7a(94645)|0;x=0;va(87,y|0,94645,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,y|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(y);if(!e)break e}else d=Ia()|0;La(g|0);break e}while(0);d=Ia()|0;break e}while(0);x=0;e=ga(294,n|0)|0;z=x;x=0;if(z&1)break;d=d+1|0;if(e>>>0<=d>>>0){g=D;d=h;break f}x=0;e=ia(69,n|0,d|0)|0;z=x;x=0;do if(!(z&1)){x=0;d=ia(69,e|0,0)|0;z=x;x=0;if(z&1)break;x=0;d=ga(295,d|0)|0;z=x;x=0;if(z&1)break;if(!(_1a(d,f[33109]|0)|0)){x=0;d=ia(69,e|0,1)|0;B=x;x=0;if(B&1)break;x=0;d=ga(295,d|0)|0;B=x;x=0;if(B&1)break;x=0;d=ia(159,d|0,0)|0;B=x;x=0;if(B&1)break;f[h+4>>2]=d;g=D;d=h;break f}g=Ea(20)|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;c=h7a(94693)|0;x=0;va(87,B|0,94693,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,B|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(B);if(!e)break e}else d=Ia()|0;La(g|0);break e}while(0);d=Ia()|0;break e}while(0);d=Ia()|0;break e}else{g=D;d=f[D>>2]|0}while(0);x=0;ua(76,C|0,d|0);B=x;x=0;if(B&1){I=171;break}x=0;e=ia(55,C|0,f[a>>2]|0)|0;B=x;x=0;if(B&1){d=Ia()|0;HTa(C);break}f[A+16>>2]=f[e>>2];HTa(C);f[g>>2]=0;if(!d){d=A;e=A}else{M_a(d);ubb(d);e=f[J>>2]|0;d=e}g=e;I=293;break d}while(0);if((I|0)==171)d=Ia()|0;e=f[D>>2]|0;f[D>>2]=0;if(!e)break;M_a(e);ubb(e)}while(0);break a}case 3:{x=0;e=ia(69,n|0,d|0)|0;D=x;x=0;if(!(D&1)){if(u8a(b[e>>0]|0)|0){x=0;d=ia(69,n|0,d|0)|0;D=x;x=0;if(D&1)break d;x=0;d=ga(295,d|0)|0;D=x;x=0;if(D&1)break d;x=0;d=ia(159,d|0,0)|0;D=x;x=0;if(D&1)break d;f[A+20>>2]=d;d=A;g=A;I=293;break d}x=0;e=ia(69,n|0,d|0)|0;H=x;x=0;do if(!(H&1)){x=0;d=ia(69,e|0,0)|0;H=x;x=0;if(H&1)break;x=0;d=ga(295,d|0)|0;H=x;x=0;if(H&1)break;if(_1a(d,f[33084]|0)|0){g=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;c=h7a(94709)|0;x=0;va(87,v|0,94709,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,v|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(v);if(!e)break a}else d=Ia()|0;La(g|0);break a}x=0;d=ia(69,e|0,1)|0;H=x;x=0;if(H&1)break;x=0;d=ga(295,d|0)|0;H=x;x=0;if(H&1)break;x=0;d=ia(159,d|0,0)|0;H=x;x=0;if(H&1)break;f[A+20>>2]=d;g=Ea(20)|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;H=h7a(93865)|0;x=0;va(87,z|0,93865,H|0);H=x;x=0;if(!(H&1)){x=0;wa(138,g|0,z|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(z);if(!e)break a}else d=Ia()|0;La(g|0);break a}while(0);d=Ia()|0;break a}break}case 1:{x=0;e=ga(294,n|0)|0;D=x;x=0;if(!(D&1)){i:do if(d>>>0<(e+-1|0)>>>0){e=d+1|0;x=0;d=ia(69,n|0,d|0)|0;D=x;x=0;do if(!(D&1)){x=0;d=ia(172,d|0,94722)|0;D=x;x=0;if(D&1)break;f[(f[a>>2]|0)+68>>2]=d;d=e;break i}while(0);d=Ia()|0;break a}while(0);x=0;e=ga(294,n|0)|0;D=x;x=0;if(D&1)break d;if(d>>>0>=(e+-1|0)>>>0){x=0;ja(40,(f[a>>2]|0)+72|0,-1,0)|0;D=x;x=0;if(D&1)break d;else{d=A;g=A;I=293;break d}}x=0;d=ia(69,n|0,d|0)|0;D=x;x=0;do if(!(D&1)){x=0;d=ia(172,d|0,94748)|0;D=x;x=0;if(D&1)break;f[(f[a>>2]|0)+72>>2]=d;d=A;g=A;I=293;break d}while(0);d=Ia()|0;break a}break}case 2:{x=0;e=ia(69,n|0,d|0)|0;D=x;x=0;if(!(D&1)){if(!(b8a(b[e>>0]|0)|0)){x=0;ja(74,a|0,n|0,d|0)|0;D=x;x=0;if(D&1)break d;else{d=A;g=A;I=293;break d}}x=0;e=ia(69,n|0,d|0)|0;D=x;x=0;j:do if(!(D&1)){x=0;d=ia(69,e|0,0)|0;D=x;x=0;if(D&1)break;do if(u8a(b[d>>0]|0)|0){x=0;d=ia(69,e|0,0)|0;D=x;x=0;if(D&1)break j;x=0;d=ga(295,d|0)|0;D=x;x=0;if(D&1)break j;x=0;va(88,E|0,94134,1);D=x;x=0;if(D&1){d=Ia()|0;break a}if(!($1a(d,f[E>>2]|0)|0))break;b[(f[a>>2]|0)+114>>0]=1;x=0;ja(74,a|0,e|0,1)|0;D=x;x=0;if(D&1)break j;else{d=A;g=A;I=293;break d}}while(0);g=Ea(20)|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;c=h7a(94773)|0;x=0;va(87,w|0,94773,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,w|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(w);if(!e)break a}else d=Ia()|0;La(g|0);break a}while(0);d=Ia()|0;break a}break}default:{d=A;g=A;I=293}}while(0);do if((I|0)==293){e=f[a>>2]|0;f[F>>2]=f[d>>2];f[E>>2]=f[F>>2];if(!(ana(e,E)|0)){f[J>>2]=0;x=0;ua(64,e|0,g|0);c=x;x=0;if(c&1)break;f[J>>2]=0;u=G;return}g=Ea(20)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;G=h7a(93727)|0;x=0;va(87,H|0,93727,G|0);G=x;x=0;if(!(G&1)){x=0;wa(138,g|0,H|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(H);if(!e)break a}else d=Ia()|0;La(g|0);break a}while(0);d=Ia()|0;break a}d=Ia()|0;break a}d=Ia()|0;break a}}while(0);d=Ia()|0}while(0);if((I|0)==10)d=Ia()|0;e=f[J>>2]|0;f[J>>2]=0;if(e|0)ubb(e);Ua(d|0)}function Ec(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;v=u;u=u+112|0;i=v+104|0;j=v+100|0;t=v+96|0;q=v+92|0;r=v+88|0;w=v+76|0;d=v+72|0;y=v+60|0;s=v+48|0;z=v+32|0;k=v+12|0;l=v+56|0;m=v+44|0;n=v+8|0;o=v+4|0;p=v;f[j>>2]=a;f[t>>2]=0;f[q>>2]=t;f[r>>2]=t;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;f[d>>2]=0;yUa(y);v0a(s);f[z>>2]=0;e=z+4|0;f[e>>2]=0;g=z+8|0;f[g>>2]=0;f[k>>2]=w;f[k+4>>2]=y;f[k+8>>2]=d;f[k+12>>2]=z;f[k+16>>2]=s;x=0;ua(640,z|0,j|0);d=x;x=0;a:do if(d&1)b=6;else{b:while(1){a=f[e>>2]|0;if((a|0)==(f[z>>2]|0)){b=252;break}a=a+-4|0;d=f[a>>2]|0;f[j>>2]=d;f[e>>2]=a;a=d;c:do if(d|0){if((s|0)==(a|0)){x=0;ua(1301,w|0,y|0);d=x;x=0;if(d&1){b=5;break b}else break}IQa(f[q>>2]|0,f[a>>2]|0);IQa(f[q>>2]|0,f[(f[j>>2]|0)+4>>2]|0);a=f[j>>2]|0;do switch(f[a>>2]|0){case 23:case 22:break c;case 1:{x=0;a=ga(217,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[l>>2]=f[a+8>>2];x=0;f[i>>2]=f[l>>2];ua(1302,k|0,i|0);d=x;x=0;if(d&1){b=5;break b}x=0;a=ga(217,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Bbb(f[a+16>>2]|0)|0;IQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(217,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=16;break b}if(c>>>0>=(Bbb(f[a+16>>2]|0)|0)>>>0)break c;x=0;a=ga(217,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=16;break b}x=0;a=ia(75,a+12|0,c|0)|0;d=x;x=0;if(d&1){b=16;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=16;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 2:{x=0;a=ga(260,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(260,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}b=a+12|0;a=f[e>>2]|0;if((a|0)==(f[g>>2]|0)){x=0;ua(640,z|0,b|0);d=x;x=0;if(d&1){b=5;break b}}else{f[a>>2]=f[b>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(260,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 3:{x=0;a=ga(261,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[m>>2]=f[a+8>>2];x=0;f[i>>2]=f[m>>2];ua(1302,k|0,i|0);d=x;x=0;if(d&1){b=5;break b}x=0;a=ga(261,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 4:{x=0;a=ga(262,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[n>>2]=f[a+8>>2];f[i>>2]=f[n>>2];aZ(y,r,q,i);x=0;a=ga(262,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(262,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 5:{x=0;a=ga(263,a|0)|0;d=x;x=0;if(d&1){b=5;break b}b=Bbb(f[a+12>>2]|0)|0;IQa(f[q>>2]|0,b);b=0;while(1){x=0;a=ga(263,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=55;break b}d=b>>>0<(Bbb(f[a+12>>2]|0)|0)>>>0;a=f[j>>2]|0;if(!d)break;x=0;a=ga(263,a|0)|0;d=x;x=0;if(d&1){b=55;break b}x=0;a=ia(100,a+8|0,b|0)|0;d=x;x=0;if(d&1){b=55;break b}f[o>>2]=f[a>>2];f[i>>2]=f[o>>2];aZ(y,r,q,i);b=b+1|0}x=0;a=ga(263,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[p>>2]=f[a+24>>2];f[i>>2]=f[p>>2];aZ(y,r,q,i);x=0;a=ga(263,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+28|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(263,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+32|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 6:{x=0;a=ga(264,a|0)|0;d=x;x=0;if(d&1){b=5;break b}WIa(t,f[a+24>>2]|0,0);x=0;a=ga(264,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Bbb(f[a+12>>2]|0)|0;IQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(264,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=72;break b}if(c>>>0>=(Bbb(f[a+12>>2]|0)|0)>>>0)break c;x=0;a=ga(264,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=72;break b}x=0;a=ia(75,a+8|0,c|0)|0;d=x;x=0;if(d&1){b=72;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=72;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 7:{x=0;a=ga(265,a|0)|0;d=x;x=0;if(d&1){b=5;break b}WIa(t,f[a+24>>2]|0,0);x=0;a=ga(265,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Bbb(f[a+12>>2]|0)|0;IQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(265,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=84;break b}if(c>>>0>=(Bbb(f[a+12>>2]|0)|0)>>>0)break c;x=0;a=ga(265,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=84;break b}x=0;a=ia(75,a+8|0,c|0)|0;d=x;x=0;if(d&1){b=84;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=84;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 8:{x=0;a=ga(266,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+28|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}WIa(t,f[a+24>>2]|0,0);x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Bbb(f[a+12>>2]|0)|0;IQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=100;break b}if(c>>>0>=(Bbb(f[a+12>>2]|0)|0)>>>0)break c;x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=100;break b}x=0;a=ia(75,a+8|0,c|0)|0;d=x;x=0;if(d&1){b=100;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=100;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 9:{x=0;a=ga(267,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+8>>2]|0);break c}case 10:{x=0;a=ga(257,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(257,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 11:{x=0;a=ga(220,a|0)|0;d=x;x=0;if(d&1){b=5;break b}WIa(t,f[a+8>>2]|0,0);break c}case 12:{x=0;a=ga(268,a|0)|0;d=x;x=0;if(d&1){b=5;break b}WIa(t,f[a+8>>2]|0,0);x=0;a=ga(268,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 13:{x=0;a=ga(269,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,h[a+8>>0]|0);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}x=0;a=ga(270,a|0)|0;d=x;x=0;if(d&1){b=5;break b}if(a){x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,h[a+9>>0]|0)}x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+12>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+16>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,h[a+20>>0]|0);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 14:{x=0;a=ga(271,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,h[a+8>>0]|0);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+12>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+16>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+32>>2]|0);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,h[a+20>>0]|0);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+28|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 25:{x=0;a=ga(272,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,h[a+8>>0]|0);x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+12>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+20|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 24:{x=0;a=ga(273,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,h[a+12>>0]|0);x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+16>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+20|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 26:{x=0;a=ga(274,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+8>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+24>>2]|0);x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+20|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 27:{x=0;a=ga(275,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Bbb(f[a+8>>2]|0)|0;IQa(f[q>>2]|0,a);x=0;a=ga(275,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(275,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 15:{x=0;a=ga(241,a|0)|0;d=x;x=0;if(d&1){b=201;break b}b=a+4|0;IQa(f[q>>2]|0,f[b>>2]|0);x=0;c=ga(283,a+8|0)|0;d=I;a=x;x=0;if(a&1){b=202;break b}x=0;a=ga(258,f[b>>2]|0)|0;b=x;x=0;if(b&1){b=202;break b}if((a|0)==4){IQa(f[q>>2]|0,c);break c}else{WIa(t,c,d);break c}}case 16:{x=0;a=ga(276,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(276,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 17:{x=0;a=ga(277,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(277,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(277,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 18:{x=0;a=ga(278,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(278,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(278,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 19:{x=0;a=ga(279,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 20:{x=0;a=ga(219,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 21:{x=0;a=ga(280,a|0)|0;d=x;x=0;if(d&1){b=5;break b}IQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}WIa(t,f[a+12>>2]|0,0);x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Bbb(f[a+20>>2]|0)|0;IQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=244;break b}if(c>>>0>=(Bbb(f[a+20>>2]|0)|0)>>>0)break c;x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=244;break b}x=0;a=ia(75,a+16|0,c|0)|0;d=x;x=0;if(d&1){b=244;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=244;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}default:{b=251;break b}}while(0)}while(0)}switch(b|0){case 5:{a=Ia()|0;break a}case 16:{a=Ia()|0;break a}case 55:{a=Ia()|0;break a}case 72:{a=Ia()|0;break a}case 84:{a=Ia()|0;break a}case 100:{a=Ia()|0;break a}case 201:{a=Ia()|0;break a}case 202:{a=Ia()|0;break a}case 244:{a=Ia()|0;break a}case 251:{x=0;sa(5);x=0;b=6;break a}case 252:{t=f[t>>2]|0;uSa(z);Aza(y);uSa(w);u=v;return t|0}}}while(0);if((b|0)==6)a=Ia()|0;uSa(z);Aza(y);uSa(w);Ua(a|0);return 0}function Fc(a,c,d,e,g,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;U=u;u=u+512|0;P=U+496|0;o=U;_=U+488|0;K=U+480|0;L=U+476|0;M=U+500|0;N=U+472|0;O=U+468|0;V=U+456|0;W=U+444|0;X=U+432|0;Y=U+420|0;Z=U+408|0;Q=U+404|0;T=U+400|0;f[P>>2]=n;f[_>>2]=o;f[_+4>>2]=512;f[K>>2]=o;f[L>>2]=o+400;f[V>>2]=0;f[V+4>>2]=0;f[V+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[V+(n<<2)>>2]=0;n=n+1|0}f[W>>2]=0;f[W+4>>2]=0;f[W+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[W+(n<<2)>>2]=0;n=n+1|0}f[X>>2]=0;f[X+4>>2]=0;f[X+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[X+(n<<2)>>2]=0;n=n+1|0}f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[Y+(n<<2)>>2]=0;n=n+1|0}f[Z>>2]=0;f[Z+4>>2]=0;f[Z+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[Z+(n<<2)>>2]=0;n=n+1|0}x=0;Aa(2,d|0,e|0,M|0,N|0,O|0,V|0,W|0,X|0,Y|0,Q|0);R=x;x=0;a:do if(!(R&1)){f[m>>2]=f[l>>2];E=X+8+3|0;F=X+4|0;G=Y+8+3|0;H=Y+4|0;I=V+11|0;J=V+4|0;y=(g&512|0)!=0;z=W+8+3|0;A=M+3|0;B=W+4|0;C=Z+8+3|0;D=Z+4|0;R=0;w=0;n=f[Q>>2]|0;v=o;b:while(1){if(w>>>0>=4){S=264;break}e=f[a>>2]|0;do if(e){d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}}else e=Bbb(f[d>>2]|0)|0;if(T5a(e)|0){f[a>>2]=0;d=1;break}else{d=(f[a>>2]|0)==0;break}}else d=1;while(0);if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;t=x;x=0;if(t&1){S=35;break}}else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0)){if(!d){S=264;break}}else S=31}else S=31;if((S|0)==31){S=0;if(d){c=0;S=264;break}else c=0}c:do switch(b[M+w>>0]|0){case 1:{if((w|0)!=3){d=f[a>>2]|0;e=f[d+12>>2]|0;if((e|0)==(f[d+16>>2]|0)){x=0;e=ga(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;S=x;x=0;if(S&1){S=35;break b}}else e=Bbb(f[e>>2]|0)|0;x=0;e=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,e|0)|0;S=x;x=0;if(S&1){S=35;break b}if(!e){S=49;break b}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;S=x;x=0;if(S&1){S=35;break b}}else{f[d>>2]=g+4;e=Bbb(f[g>>2]|0)|0}x=0;ua(3188,Z|0,e|0);S=x;x=0;if(S&1){S=35;break b}else S=51}else{d=R;e=v}break}case 0:{if((w|0)==3){d=R;e=v}else S=51;break}case 3:{o=b[E>>0]|0;e=o<<24>>24<0?f[F>>2]|0:o&255;g=b[G>>0]|0;q=g<<24>>24<0?f[H>>2]|0:g&255;if((e|0)==(0-q|0)){d=R;e=v}else{if(!e){e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}o=b[G>>0]|0}else{e=Bbb(f[d>>2]|0)|0;o=g}if((e|0)!=(f[(o<<24>>24<0?f[Y>>2]|0:Y)>>2]|0)){d=R;e=v;break c}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[G>>0]|0}else{f[d>>2]=g+4;e=o}b[j>>0]=1;d=(e<<24>>24<0?f[H>>2]|0:e&255)>>>0>1?Y:R;e=v;break c}g=f[a>>2]|0;p=g+12|0;r=f[p>>2]|0;d=f[g+16>>2]|0;e=(r|0)==(d|0);if(!q){if(e){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}o=b[E>>0]|0}else e=Bbb(f[r>>2]|0)|0;if((e|0)!=(f[(o<<24>>24<0?f[X>>2]|0:X)>>2]|0)){b[j>>0]=1;d=R;e=v;break c}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[E>>0]|0}else{f[d>>2]=g+4;e=o}d=(e<<24>>24<0?f[F>>2]|0:e&255)>>>0>1?X:R;e=v;break c}if(e){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}g=f[a>>2]|0;q=g+12|0;p=q;o=b[E>>0]|0;q=f[q>>2]|0;d=f[g+16>>2]|0}else{e=Bbb(f[r>>2]|0)|0;q=r}d=(q|0)==(d|0);if((e|0)==(f[(o<<24>>24<0?f[X>>2]|0:X)>>2]|0)){if(d){x=0;ga(f[(f[g>>2]|0)+40>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[E>>0]|0}else{f[p>>2]=q+4;e=o}d=(e<<24>>24<0?f[F>>2]|0:e&255)>>>0>1?X:R;e=v;break c}if(d){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}}else e=Bbb(f[q>>2]|0)|0;o=b[G>>0]|0;if((e|0)!=(f[(o<<24>>24<0?f[Y>>2]|0:Y)>>2]|0)){S=118;break b}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[G>>0]|0}else{f[d>>2]=g+4;e=o}b[j>>0]=1;d=(e<<24>>24<0?f[H>>2]|0:e&255)>>>0>1?Y:R;e=v}break}case 2:{if(w>>>0<2|(R|0)!=0){g=b[z>>0]|0;d=f[W>>2]|0;e=g<<24>>24<0?d:W;if(w)S=123}else{if(!(y|(w|0)==2&(b[A>>0]|0)!=0)){d=0;e=v;break c}g=b[z>>0]|0;d=f[W>>2]|0;e=g<<24>>24<0?d:W;S=123}d:do if((S|0)==123){S=0;if((h[M+(w+-1)>>0]|0)<2){while(1){t=g<<24>>24<0;o=e;if(((t?d:W)+((t?f[B>>2]|0:g&255)<<2)|0)==(o|0))break;x=0;d=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,f[o>>2]|0)|0;t=x;x=0;if(t&1){S=130;break b}if(!d){S=128;break}e=o+4|0;g=b[z>>0]|0;d=f[W>>2]|0}if((S|0)==128){S=0;g=b[z>>0]|0;d=f[W>>2]|0}p=g<<24>>24<0?d:W;t=p;s=e-t>>2;r=b[C>>0]|0;o=r<<24>>24<0;q=f[D>>2]|0;r=r&255;if(s>>>0>(o?q:r)>>>0)e=t;else{q=o?(f[Z>>2]|0)+(q<<2)|0:Z+(r<<2)|0;o=q+(0-s<<2)|0;while(1){if((o|0)==(q|0))break d;if((f[o>>2]|0)!=(f[p>>2]|0)){e=t;break d}p=p+4|0;o=o+4|0}}}}while(0);p=c;q=e;o=c;while(1){t=g<<24>>24<0;if((q|0)==((t?d:W)+((t?f[B>>2]|0:g&255)<<2)|0)){c=p;break}c=f[a>>2]|0;do if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;t=x;x=0;if(t&1){S=160;break b}}else c=Bbb(f[e>>2]|0)|0;if(T5a(c)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(o){c=f[o+12>>2]|0;if((c|0)==(f[o+16>>2]|0)){x=0;c=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;t=x;x=0;if(t&1){S=160;break b}}else c=Bbb(f[c>>2]|0)|0;if(!(T5a(c)|0))if(e)c=p;else{c=p;break}else{c=0;S=150}}else{c=p;S=150}if((S|0)==150){S=0;if(e)break;else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=160;break b}}else e=Bbb(f[d>>2]|0)|0;if((e|0)!=(f[q>>2]|0))break;e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=161;break b}}else f[d>>2]=g+4;p=c;q=q+4|0;g=b[z>>0]|0;d=f[W>>2]|0}if(y?(t=b[z>>0]|0,s=t<<24>>24<0,(q|0)!=((s?f[W>>2]|0:W)+((s?f[B>>2]|0:t&255)<<2)|0)):0){S=164;break b}else{d=R;e=v}break}case 4:{p=0;q=c;r=c;e=v;o=c;while(1){c=f[a>>2]|0;do if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;v=x;x=0;if(v&1){S=188;break b}}else c=Bbb(f[d>>2]|0)|0;if(T5a(c)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(r){c=f[r+12>>2]|0;if((c|0)==(f[r+16>>2]|0)){x=0;c=ga(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;v=x;x=0;if(v&1){S=188;break b}}else c=Bbb(f[c>>2]|0)|0;if(!(T5a(c)|0))if(g){c=q;s=o}else{c=q;break}else{c=0;d=0;S=177}}else{c=q;d=o;S=177}if((S|0)==177){S=0;if(g){o=d;break}else{s=d;r=0}}d=f[a>>2]|0;g=f[d+12>>2]|0;if((g|0)==(f[d+16>>2]|0)){x=0;d=ga(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;v=x;x=0;if(v&1){S=191;break b}}else d=Bbb(f[g>>2]|0)|0;x=0;g=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,2048,d|0)|0;v=x;x=0;if(v&1){S=191;break b}if(g){g=f[m>>2]|0;if((g|0)==(f[P>>2]|0)){x=0;va(177,l|0,m|0,P|0);v=x;x=0;if(v&1){S=191;break b}g=f[m>>2]|0}f[m>>2]=g+4;f[g>>2]=d;p=p+1|0}else{v=b[I>>0]|0;if(!((d|0)==(f[O>>2]|0)&(p|0?((v<<24>>24<0?f[J>>2]|0:v&255)|0)!=0:0))){o=s;break}if((e|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);v=x;x=0;if(v&1){S=191;break b}e=f[K>>2]|0}v=e+4|0;f[K>>2]=v;f[e>>2]=p;p=0;e=v}d=f[a>>2]|0;g=d+12|0;o=f[g>>2]|0;if((o|0)==(f[d+16>>2]|0)){x=0;ga(f[(f[d>>2]|0)+40>>2]|0,d|0)|0;v=x;x=0;if(v&1){S=188;break b}}else f[g>>2]=o+4;q=c;o=s}if(p|0?(f[_>>2]|0)!=(e|0):0){if((e|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);v=x;x=0;if(v&1){S=189;break b}e=f[K>>2]|0}v=e+4|0;f[K>>2]=v;f[e>>2]=p;p=v}else p=e;e:do if((n|0)>0){e=f[a>>2]|0;do if(e){d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=189;break b}}else e=Bbb(f[d>>2]|0)|0;if(T5a(e)|0){f[a>>2]=0;d=1;break}else{d=(f[a>>2]|0)==0;break}}else d=1;while(0);if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;e=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;v=x;x=0;if(v&1){S=189;break b}}else e=Bbb(f[e>>2]|0)|0;if(!(T5a(e)|0)){if(!d){S=226;break b}}else{c=0;S=220}}else S=220;if((S|0)==220){S=0;if(d){S=226;break b}else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=189;break b}}else e=Bbb(f[d>>2]|0)|0;if((e|0)!=(f[N>>2]|0)){S=226;break b}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=189;break b}}else f[d>>2]=g+4;g=o;while(1){if((n|0)<=0)break e;e=f[a>>2]|0;do if(e){d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Bbb(f[d>>2]|0)|0;if(T5a(e)|0){f[a>>2]=0;d=1;break}else{d=(f[a>>2]|0)==0;break}}else d=1;while(0);do if(g){e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Bbb(f[e>>2]|0)|0;if(T5a(e)|0){c=0;S=244;break}if(d)o=g;else{S=251;break b}}else S=244;while(0);if((S|0)==244){S=0;if(d){S=251;break b}else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Bbb(f[d>>2]|0)|0;x=0;e=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,2048,e|0)|0;v=x;x=0;if(v&1){S=187;break b}if(!e){S=251;break b}if((f[m>>2]|0)==(f[P>>2]|0)?(x=0,va(177,l|0,m|0,P|0),v=x,x=0,v&1):0){S=187;break b}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Bbb(f[d>>2]|0)|0;d=f[m>>2]|0;f[m>>2]=d+4;f[d>>2]=e;n=n+-1|0;e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else f[d>>2]=g+4;g=o}}while(0);if((f[m>>2]|0)==(f[l>>2]|0)){S=262;break b}else{d=R;e=p}break}default:{d=R;e=v}}while(0);f:do if((S|0)==51){S=0;g=c;d=c;while(1){c=f[a>>2]|0;do if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;t=x;x=0;if(t&1){S=34;break b}}else c=Bbb(f[e>>2]|0)|0;if(T5a(c)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(d){c=f[d+12>>2]|0;if((c|0)==(f[d+16>>2]|0)){x=0;c=ga(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;t=x;x=0;if(t&1){S=34;break b}}else c=Bbb(f[c>>2]|0)|0;if(!(T5a(c)|0))if(e){c=g;o=d}else{d=R;c=g;e=v;break f}else{c=0;S=64}}else{c=g;S=64}if((S|0)==64){S=0;if(e){d=R;e=v;break f}else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=34;break b}}else e=Bbb(f[d>>2]|0)|0;x=0;e=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,e|0)|0;t=x;x=0;if(t&1){S=34;break b}if(!e){d=R;e=v;break f}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=34;break b}}else{f[d>>2]=g+4;e=Bbb(f[g>>2]|0)|0}x=0;ua(3188,Z|0,e|0);t=x;x=0;if(t&1){S=34;break b}else{g=c;d=o}}}while(0);R=d;w=w+1|0;v=e}g:switch(S|0){case 34:{c=Ia()|0;S=36;break}case 35:{c=Ia()|0;S=36;break}case 49:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 118:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 130:{c=Ia()|0;f[Q>>2]=n;break a}case 160:{c=Ia()|0;f[Q>>2]=n;break a}case 161:{c=Ia()|0;f[Q>>2]=n;break a}case 164:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 187:{U=Ia()|0;f[Q>>2]=n;n=U;S=190;break}case 188:{U=Ia()|0;f[Q>>2]=n;n=U;S=190;break}case 189:{U=Ia()|0;f[Q>>2]=n;n=U;S=190;break}case 191:{c=Ia()|0;f[Q>>2]=n;break a}case 226:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 251:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 262:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 264:{f[Q>>2]=n;h:do if(R|0){o=R+8+3|0;p=R+4|0;g=1;i:while(1){n=b[o>>0]|0;if(n<<24>>24<0)n=f[p>>2]|0;else n=n&255;if(g>>>0>=n>>>0)break h;n=f[a>>2]|0;do if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){x=0;n=ga(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;Q=x;x=0;if(Q&1){S=291;break i}}else n=Bbb(f[e>>2]|0)|0;if(T5a(n)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(c){n=f[c+12>>2]|0;if((n|0)==(f[c+16>>2]|0)){x=0;n=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;Q=x;x=0;if(Q&1){S=291;break}}else n=Bbb(f[n>>2]|0)|0;if(!(T5a(n)|0)){if(!e){S=290;break}}else S=282}else S=282;if((S|0)==282){S=0;if(e){S=290;break}else c=0}n=f[a>>2]|0;e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){x=0;n=ga(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;Q=x;x=0;if(Q&1){S=291;break}}else n=Bbb(f[e>>2]|0)|0;if((b[o>>0]|0)<0)e=f[R>>2]|0;else e=R;if((n|0)!=(f[e+(g<<2)>>2]|0)){S=290;break}n=f[a>>2]|0;e=n+12|0;d=f[e>>2]|0;if((d|0)==(f[n+16>>2]|0)){x=0;ga(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;Q=x;x=0;if(Q&1){S=291;break}}else f[e>>2]=d+4;g=g+1|0}if((S|0)==290){f[i>>2]=f[i>>2]|4;c=0;S=300;break g}else if((S|0)==291){c=Ia()|0;break a}}while(0);n=f[_>>2]|0;if((n|0)!=(v|0)){f[T>>2]=0;Sz(V,n,v,T);if(!(f[T>>2]|0)){c=1;S=300;break}else{f[i>>2]=f[i>>2]|4;c=0;S=300;break}}else{c=1;S=300}break}}if((S|0)==36){f[Q>>2]=n;break}else if((S|0)==190){c=n;break}else if((S|0)==300){jTa(Z);jTa(Y);jTa(X);jTa(W);HTa(V);n=f[_>>2]|0;f[_>>2]=0;if(n|0?(x=0,ta(f[_+4>>2]|0,n|0),_=x,x=0,_&1):0){_=Ja(0)|0;r2a(_)}u=U;return c|0}}else c=Ia()|0;while(0);jTa(Z);jTa(Y);jTa(X);jTa(W);HTa(V);n=f[_>>2]|0;f[_>>2]=0;if(n|0?(x=0,ta(f[_+4>>2]|0,n|0),_=x,x=0,_&1):0){_=Ja(0)|0;r2a(_)}Ua(c|0);return 0}function Gc(a,c,e,g,i,j,k,l,m,n,o){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=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;U=u;u=u+512|0;P=U+488|0;p=U;_=U+480|0;K=U+472|0;L=U+468|0;M=U+496|0;N=U+493|0;O=U+492|0;V=U+456|0;W=U+444|0;X=U+432|0;Y=U+420|0;Z=U+408|0;Q=U+404|0;T=U+400|0;f[P>>2]=o;f[_>>2]=p;f[_+4>>2]=512;f[K>>2]=p;f[L>>2]=p+400;f[V>>2]=0;f[V+4>>2]=0;f[V+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[V+(o<<2)>>2]=0;o=o+1|0}f[W>>2]=0;f[W+4>>2]=0;f[W+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[W+(o<<2)>>2]=0;o=o+1|0}f[X>>2]=0;f[X+4>>2]=0;f[X+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[X+(o<<2)>>2]=0;o=o+1|0}f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[Y+(o<<2)>>2]=0;o=o+1|0}f[Z>>2]=0;f[Z+4>>2]=0;f[Z+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[Z+(o<<2)>>2]=0;o=o+1|0}x=0;Aa(1,e|0,g|0,M|0,N|0,O|0,V|0,W|0,X|0,Y|0,Q|0);R=x;x=0;a:do if(!(R&1)){f[n>>2]=f[m>>2];D=l+8|0;E=X+11|0;F=X+4|0;G=Y+11|0;H=Y+4|0;I=V+11|0;J=V+4|0;w=(i&512|0)!=0;y=W+11|0;z=M+3|0;A=W+4|0;B=Z+11|0;C=Z+4|0;R=0;v=0;t=p;b:while(1){if(v>>>0>=4){S=263;break}o=f[a>>2]|0;do if(o){g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}}else o=X6a(b[g>>0]|0)|0;if($1a(o,-1)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;o=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;s=x;x=0;if(s&1){S=35;break}}else o=X6a(b[o>>0]|0)|0;if(!($1a(o,-1)|0)){if(!g){S=263;break}}else S=31}else S=31;if((S|0)==31){S=0;if(g){c=0;S=263;break}else c=0}c:do switch(b[M+v>>0]|0){case 1:{if((v|0)!=3){o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;S=x;x=0;if(S&1){S=35;break b}}else o=X6a(b[g>>0]|0)|0;if((o&255)<<24>>24<=-1){S=49;break b}if(!(d[(f[D>>2]|0)+(o<<24>>24<<1)>>1]&8192)){S=49;break b}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;S=x;x=0;if(S&1){S=35;break b}}else{f[g>>2]=e+1;o=X6a(b[e>>0]|0)|0}x=0;ua(82,Z|0,o&255|0);S=x;x=0;if(S&1){S=35;break b}else S=51}else{g=R;o=t}break}case 0:{if((v|0)==3){g=R;o=t}else S=51;break}case 3:{l=b[E>>0]|0;o=l<<24>>24<0?f[F>>2]|0:l&255;e=b[G>>0]|0;p=e<<24>>24<0?f[H>>2]|0:e&255;if((o|0)==(0-p|0)){g=R;o=t}else{if(!o){o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}l=b[G>>0]|0}else{o=X6a(b[g>>0]|0)|0;l=e}if((b[(l<<24>>24<0?f[Y>>2]|0:Y)>>0]|0)!=(o&255)<<24>>24){g=R;o=t;break c}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[G>>0]|0}else{f[g>>2]=e+1;o=l}b[k>>0]=1;g=(o<<24>>24<0?f[H>>2]|0:o&255)>>>0>1?Y:R;o=t;break c}e=f[a>>2]|0;i=e+12|0;q=f[i>>2]|0;g=f[e+16>>2]|0;o=(q|0)==(g|0);if(!p){if(o){x=0;o=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}l=b[E>>0]|0}else o=X6a(b[q>>0]|0)|0;if((b[(l<<24>>24<0?f[X>>2]|0:X)>>0]|0)!=(o&255)<<24>>24){b[k>>0]=1;g=R;o=t;break c}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[E>>0]|0}else{f[g>>2]=e+1;o=l}g=(o<<24>>24<0?f[F>>2]|0:o&255)>>>0>1?X:R;o=t;break c}if(o){x=0;o=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}e=f[a>>2]|0;p=e+12|0;i=p;l=b[E>>0]|0;p=f[p>>2]|0;g=f[e+16>>2]|0}else{o=X6a(b[q>>0]|0)|0;p=q}g=(p|0)==(g|0);if((b[(l<<24>>24<0?f[X>>2]|0:X)>>0]|0)==(o&255)<<24>>24){if(g){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[E>>0]|0}else{f[i>>2]=p+1;o=l}g=(o<<24>>24<0?f[F>>2]|0:o&255)>>>0>1?X:R;o=t;break c}if(g){x=0;o=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}}else o=X6a(b[p>>0]|0)|0;l=b[G>>0]|0;if((b[(l<<24>>24<0?f[Y>>2]|0:Y)>>0]|0)!=(o&255)<<24>>24){S=118;break b}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[G>>0]|0}else{f[g>>2]=e+1;o=l}b[k>>0]=1;g=(o<<24>>24<0?f[H>>2]|0:o&255)>>>0>1?Y:R;o=t}break}case 2:{if(v>>>0<2|(R|0)!=0){o=b[y>>0]|0;g=o<<24>>24<0;i=f[W>>2]|0;e=g?i:W;l=e;if(!v){e=l;g=i}else{s=i;S=123}}else{if(!(w|(v|0)==2&(b[z>>0]|0)!=0)){g=0;o=t;break c}o=b[y>>0]|0;g=o<<24>>24<0;s=f[W>>2]|0;l=g?s:W;e=l;S=123}d:do if((S|0)==123){S=0;if((h[M+(v+-1)>>0]|0)<2){g=e+(g?f[A>>2]|0:o&255)|0;r=l;while(1){i=r;if((g|0)==(i|0))break;p=b[i>>0]|0;if(p<<24>>24<=-1)break;if(!(d[(f[D>>2]|0)+(p<<24>>24<<1)>>1]&8192))break;r=i+1|0}g=r-l|0;p=b[B>>0]|0;q=p<<24>>24<0;i=f[C>>2]|0;p=p&255;if(g>>>0<=(q?i:p)>>>0){$=(f[Z>>2]|0)+i|0;g=0-g|0;p=Z+p|0;i=q?$:p;g=q?$+g|0:p+g|0;while(1){if((g|0)==(i|0)){e=r;g=s;break d}if((b[g>>0]|0)!=(b[e>>0]|0)){e=l;g=s;break d}e=e+1|0;g=g+1|0}}else{e=l;g=s}}else{e=l;g=s}}while(0);i=c;p=e;l=c;while(1){$=o<<24>>24<0;if((p|0)==(($?g:W)+($?f[A>>2]|0:o&255)|0)){c=i;break}c=f[a>>2]|0;do if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=158;break b}}else c=X6a(b[o>>0]|0)|0;if($1a(c,-1)|0){f[a>>2]=0;o=1;break}else{o=(f[a>>2]|0)==0;break}}else o=1;while(0);if(l){c=f[l+12>>2]|0;if((c|0)==(f[l+16>>2]|0)){x=0;c=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;$=x;x=0;if($&1){S=158;break b}}else c=X6a(b[c>>0]|0)|0;if(!($1a(c,-1)|0))if(o)c=i;else{c=i;break}else{c=0;S=148}}else{c=i;S=148}if((S|0)==148){S=0;if(o)break;else l=0}o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=158;break b}}else o=X6a(b[g>>0]|0)|0;if((b[p>>0]|0)!=(o&255)<<24>>24)break;o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;$=x;x=0;if($&1){S=159;break b}}else f[g>>2]=e+1;i=c;p=p+1|0;o=b[y>>0]|0;g=f[W>>2]|0}if(w?($=b[y>>0]|0,s=$<<24>>24<0,(p|0)!=((s?f[W>>2]|0:W)+(s?f[A>>2]|0:$&255)|0)):0){S=162;break b}else{g=R;o=t}break}case 4:{r=b[O>>0]|0;l=0;o=c;e=c;i=t;p=c;while(1){c=f[a>>2]|0;do if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=186;break b}}else c=X6a(b[g>>0]|0)|0;if($1a(c,-1)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(e){c=f[e+12>>2]|0;if((c|0)==(f[e+16>>2]|0)){x=0;c=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;$=x;x=0;if($&1){S=186;break b}}else c=X6a(b[c>>0]|0)|0;if(!($1a(c,-1)|0))if(g)q=e;else break;else{o=0;c=0;S=175}}else{c=p;S=175}if((S|0)==175){S=0;if(g){p=c;break}else{p=c;q=0}}c=f[a>>2]|0;g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=189;break b}}else c=X6a(b[g>>0]|0)|0;g=c&255;if(g<<24>>24>-1?(d[(f[D>>2]|0)+(c<<24>>24<<1)>>1]&2048)!=0:0){c=f[n>>2]|0;if((c|0)==(f[P>>2]|0)){x=0;va(175,m|0,n|0,P|0);$=x;x=0;if($&1){S=189;break b}c=f[n>>2]|0}f[n>>2]=c+1;b[c>>0]=g;l=l+1|0}else{$=b[I>>0]|0;if(!(r<<24>>24==g<<24>>24&(l|0?(($<<24>>24<0?f[J>>2]|0:$&255)|0)!=0:0)))break;if((i|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);$=x;x=0;if($&1){S=189;break b}c=f[K>>2]|0}else c=i;i=c+4|0;f[K>>2]=i;f[c>>2]=l;l=0}c=f[a>>2]|0;g=c+12|0;e=f[g>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;ga(f[(f[c>>2]|0)+40>>2]|0,c|0)|0;$=x;x=0;if($&1){S=186;break b}}else f[g>>2]=e+1;e=q}if(l|0?(f[_>>2]|0)!=(i|0):0){if((i|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);$=x;x=0;if($&1){S=187;break b}c=f[K>>2]|0}else c=i;i=c+4|0;f[K>>2]=i;f[c>>2]=l}c=f[Q>>2]|0;if((c|0)>0){g=f[a>>2]|0;do if(g){e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=187;break b}}else g=X6a(b[e>>0]|0)|0;if($1a(g,-1)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(p){g=f[p+12>>2]|0;if((g|0)==(f[p+16>>2]|0)){x=0;g=ga(f[(f[p>>2]|0)+36>>2]|0,p|0)|0;$=x;x=0;if($&1){S=187;break b}}else g=X6a(b[g>>0]|0)|0;if(!($1a(g,-1)|0)){if(!e){S=224;break b}}else{o=0;S=218}}else S=218;if((S|0)==218){S=0;if(e){S=224;break b}else p=0}g=f[a>>2]|0;e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=187;break b}}else g=X6a(b[e>>0]|0)|0;if((b[N>>0]|0)!=(g&255)<<24>>24){S=224;break b}g=f[a>>2]|0;e=g+12|0;l=f[e>>2]|0;if((l|0)==(f[g+16>>2]|0)){x=0;ga(f[(f[g>>2]|0)+40>>2]|0,g|0)|0;$=x;x=0;if($&1){S=187;break b}}else f[e>>2]=l+1;l=p;while(1){if((c|0)<=0)break;g=f[a>>2]|0;do if(g){e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=X6a(b[e>>0]|0)|0;if($1a(g,-1)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);do if(l){g=f[l+12>>2]|0;if((g|0)==(f[l+16>>2]|0)){x=0;g=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=X6a(b[g>>0]|0)|0;if($1a(g,-1)|0){o=0;S=242;break}if(e)p=l;else{S=249;break b}}else S=242;while(0);if((S|0)==242){S=0;if(e){S=249;break b}else p=0}g=f[a>>2]|0;e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=X6a(b[e>>0]|0)|0;if((g&255)<<24>>24<=-1){S=249;break b}if(!(d[(f[D>>2]|0)+(g<<24>>24<<1)>>1]&2048)){S=249;break b}if((f[n>>2]|0)==(f[P>>2]|0)?(x=0,va(175,m|0,n|0,P|0),$=x,x=0,$&1):0){S=185;break b}g=f[a>>2]|0;e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=X6a(b[e>>0]|0)|0;e=f[n>>2]|0;f[n>>2]=e+1;b[e>>0]=g;c=c+-1|0;g=f[a>>2]|0;e=g+12|0;l=f[e>>2]|0;if((l|0)==(f[g+16>>2]|0)){x=0;ga(f[(f[g>>2]|0)+40>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else f[e>>2]=l+1;l=p}f[Q>>2]=c;c=o}else c=o;if((f[n>>2]|0)==(f[m>>2]|0)){S=261;break b}else{g=R;o=i}break}default:{g=R;o=t}}while(0);e:do if((S|0)==51){S=0;e=c;g=c;while(1){c=f[a>>2]|0;do if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=34;break b}}else c=X6a(b[o>>0]|0)|0;if($1a(c,-1)|0){f[a>>2]=0;o=1;break}else{o=(f[a>>2]|0)==0;break}}else o=1;while(0);if(g){c=f[g+12>>2]|0;if((c|0)==(f[g+16>>2]|0)){x=0;c=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=34;break b}}else c=X6a(b[c>>0]|0)|0;if(!($1a(c,-1)|0))if(o){c=e;l=g}else{g=R;c=e;o=t;break e}else{c=0;S=64}}else{c=e;S=64}if((S|0)==64){S=0;if(o){g=R;o=t;break e}else l=0}o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=34;break b}}else o=X6a(b[g>>0]|0)|0;if((o&255)<<24>>24<=-1){g=R;o=t;break e}if(!(d[(f[D>>2]|0)+(o<<24>>24<<1)>>1]&8192)){g=R;o=t;break e}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;$=x;x=0;if($&1){S=34;break b}}else{f[g>>2]=e+1;o=X6a(b[e>>0]|0)|0}x=0;ua(82,Z|0,o&255|0);$=x;x=0;if($&1){S=34;break b}else{e=c;g=l}}}while(0);R=g;v=v+1|0;t=o}f:switch(S|0){case 34:{c=Ia()|0;S=36;break}case 35:{c=Ia()|0;S=36;break}case 49:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 118:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 158:{o=Ia()|0;break a}case 159:{o=Ia()|0;break a}case 162:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 185:{$=Ia()|0;f[Q>>2]=c;c=$;S=188;break}case 186:{c=Ia()|0;S=188;break}case 187:{c=Ia()|0;S=188;break}case 189:{o=Ia()|0;break a}case 224:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 249:{f[Q>>2]=c;f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 261:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 263:{g:do if(R|0){i=R+11|0;p=R+4|0;l=1;h:while(1){o=b[i>>0]|0;if(o<<24>>24<0)o=f[p>>2]|0;else o=o&255;if(l>>>0>=o>>>0)break g;o=f[a>>2]|0;do if(o){g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=290;break h}}else o=X6a(b[g>>0]|0)|0;if($1a(o,-1)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;o=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=290;break}}else o=X6a(b[o>>0]|0)|0;if(!($1a(o,-1)|0)){if(!g){S=289;break}}else S=281}else S=281;if((S|0)==281){S=0;if(g){S=289;break}else c=0}o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=290;break}}else o=X6a(b[g>>0]|0)|0;if((b[i>>0]|0)<0)g=f[R>>2]|0;else g=R;if((b[g+l>>0]|0)!=(o&255)<<24>>24){S=289;break}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;$=x;x=0;if($&1){S=290;break}}else f[g>>2]=e+1;l=l+1|0}if((S|0)==289){f[j>>2]=f[j>>2]|4;o=0;S=299;break f}else if((S|0)==290){o=Ia()|0;break a}}while(0);c=f[_>>2]|0;if((c|0)!=(t|0)){f[T>>2]=0;Sz(V,c,t,T);if(!(f[T>>2]|0)){o=1;S=299;break}else{f[j>>2]=f[j>>2]|4;o=0;S=299;break}}else{o=1;S=299}break}}if((S|0)==36){o=c;break}else if((S|0)==188){o=c;break}else if((S|0)==299){HTa(Z);HTa(Y);HTa(X);HTa(W);HTa(V);c=f[_>>2]|0;f[_>>2]=0;if(c|0?(x=0,ta(f[_+4>>2]|0,c|0),$=x,x=0,$&1):0){$=Ja(0)|0;r2a($)}u=U;return o|0}}else o=Ia()|0;while(0);HTa(Z);HTa(Y);HTa(X);HTa(W);HTa(V);c=f[_>>2]|0;f[_>>2]=0;if(c|0?(x=0,ta(f[_+4>>2]|0,c|0),$=x,x=0,$&1):0){$=Ja(0)|0;r2a($)}Ua(o|0);return 0}function Hc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;a:do if((c-a|0)>1){b:do switch(b[a>>0]|0){case 97:switch(b[a+1>>0]|0){case 97:{P3(g,123576);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 110:case 100:{W3(g,123587);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 78:{P3(g,123597);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 83:{W3(g,123608);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 99:switch(b[a+1>>0]|0){case 108:{P3(g,123618);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 109:{W3(g,123629);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 111:{W3(g,123639);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 118:{e=d+63|0;i=b[e>>0]|0;b[e>>0]=0;g=a+2|0;c=Cc(g,c,d)|0;b[e>>0]=i;if((c|0)==(g|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;uoa(e+-24|0,0,123649)|0;b[d+60>>0]=1;a=c;break a}default:break a}case 100:switch(b[a+1>>0]|0){case 97:{K3(g,123659);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 101:{W3(g,123677);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 108:{V3(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 118:{W3(g,123687);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 86:{P3(g,123697);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 101:switch(b[a+1>>0]|0){case 111:{W3(g,123708);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 79:{P3(g,123718);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 113:{P3(g,123729);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 103:switch(b[a+1>>0]|0){case 101:{P3(g,123740);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 116:{W3(g,123751);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 105:{if((b[a+1>>0]|0)!=120)break a;P3(g,123761);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 108:switch(b[a+1>>0]|0){case 101:{P3(g,123772);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 105:{i=a+2|0;c=hk(i,c,d)|0;if((c|0)==(i|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;uoa(e+-24|0,0,123783)|0;a=c;break a}case 115:{P3(g,123795);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 83:{O3(g,123806);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 116:{W3(g,123818);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 109:switch(b[a+1>>0]|0){case 105:{W3(g,123828);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 73:{P3(g,123838);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 108:{W3(g,123677);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 76:{P3(g,123849);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 109:{P3(g,123860);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 110:switch(b[a+1>>0]|0){case 97:{L3(g,123871);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 101:{P3(g,123886);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 103:{W3(g,123828);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 116:{W3(g,123897);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 119:{N3(g,123907);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 111:switch(b[a+1>>0]|0){case 111:{P3(g,123920);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 114:{W3(g,123931);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 82:{P3(g,123941);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 112:switch(b[a+1>>0]|0){case 109:{O3(g,123952);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 108:{W3(g,123964);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 76:{P3(g,123974);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 112:{P3(g,123985);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 115:{W3(g,123964);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 116:{P3(g,123996);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 113:{if((b[a+1>>0]|0)!=117)break a;W3(g,124007);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 114:switch(b[a+1>>0]|0){case 109:{W3(g,124017);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 77:{P3(g,124027);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 115:{P3(g,124038);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 83:{O3(g,124049);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}case 118:{if(((b[a+1>>0]|0)+-48|0)>>>0>=10)break a;i=a+2|0;c=hk(i,c,d)|0;if((c|0)==(i|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;uoa(e+-24|0,0,123649)|0;a=c;break a}default:break a}while(0);Ua(a|0)}while(0);u=h;return a|0}function Ic(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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,ha=0,ja=0;ca=u;u=u+272|0;aa=ca+268|0;da=ca+248|0;O=ca+244|0;h=ca+240|0;i=ca+264|0;k=ca+252|0;W=ca+236|0;ha=ca+224|0;ea=ca+212|0;fa=ca+200|0;V=ca+184|0;X=ca+176|0;J=ca+160|0;L=ca+156|0;M=ca+148|0;Q=ca+116|0;K=ca+80|0;B=ca+72|0;C=ca+68|0;H=ca+188|0;D=ca+180|0;I=ca+164|0;E=ca+152|0;F=ca+136|0;R=ca+104|0;S=ca+92|0;N=ca+76|0;T=ca+64|0;Y=ca+52|0;Z=ca+40|0;U=ca+28|0;$=ca+16|0;_=ca+12|0;ba=ca;tab(O);tab(h);l=Hx(c,O,h)|0;g=Iab(f[O>>2]|0)|0;if(d){if(!g)f[O>>2]=f[(f[a+8>>2]|0)+((f[a+44>>2]|0)+-1<<2)>>2]}else{e=a+44|0;if(!g){P=WT(f[e>>2]|0)|0;f[O>>2]=P}f[e>>2]=(f[e>>2]|0)+1}P=f[h>>2]|0;e=P;a:do if(Iab(P)|0){aAa(da);j=f[da>>2]|0;f[j>>2]=e;f[j+4>>2]=f[O>>2];f[j+8>>2]=0;g=f[a>>2]|0;f[i>>2]=e;f[aa>>2]=f[i>>2];do if(!(cna(g,aa)|0)){f[da>>2]=0;x=0;ua(70,g|0,j|0);P=x;x=0;if(P&1){e=Ia()|0;f[da>>2]=0;break}else{f[da>>2]=0;G=a;ja=22;break a}}else{h=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;ha=h7a(93685)|0;x=0;va(87,k|0,93685,ha|0);ha=x;x=0;if(!(ha&1)){x=0;wa(138,h|0,k|0,f[c+28>>2]|0,f[c+32>>2]|0);ha=x;x=0;if(ha&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(k);if(g)ja=16}else{e=Ia()|0;ja=16}if((ja|0)==16)La(h|0);f[da>>2]=0;if(j)ubb(j)}while(0)}else{G=a;ja=22}while(0);if((ja|0)==22){f[W>>2]=0;q=a+100|0;f[q>>2]=0;f[a+104>>2]=0;A=a+108|0;b[A>>0]=0;f[ha>>2]=0;r=ha+4|0;f[r>>2]=0;s=ha+8|0;f[s>>2]=0;f[ea>>2]=0;t=ea+4|0;f[t>>2]=0;v=ea+8|0;f[v>>2]=0;f[fa>>2]=0;w=fa+4|0;f[w>>2]=0;y=fa+8|0;f[y>>2]=0;f[V>>2]=0;tab(X);f[J>>2]=0;tab(L);tab(M);f[Q>>2]=a;f[Q+4>>2]=O;f[Q+8>>2]=ea;f[Q+12>>2]=V;f[Q+16>>2]=fa;f[K>>2]=J;f[K+4>>2]=a;f[K+8>>2]=W;z=a+88|0;P=a+84|0;e=f[L>>2]|0;p=f[M>>2]|0;o=f[X>>2]|0;b:while(1){x=0;g=ga(294,c|0)|0;n=x;x=0;if(n&1){ja=38;break}if(l>>>0>=g>>>0){ja=126;break}x=0;n=ia(69,c|0,l|0)|0;m=x;x=0;if(m&1){ja=41;break}x=0;g=ia(69,n|0,0)|0;m=x;x=0;if(m&1){ja=42;break}x=0;m=ga(295,g|0)|0;k=x;x=0;if(k&1){ja=42;break}c:do if(!($1a(m,f[33110]|0)|0)?!($1a(m,f[33101]|0)|0):0){if($1a(m,f[33109]|0)|0){x=0;g=ga(294,n|0)|0;m=x;x=0;if(m&1){ja=42;break b}if(g>>>0>2){ja=70;break b}x=0;g=ia(69,n|0,1)|0;n=x;x=0;if(n&1){ja=42;break b}x=0;g=ga(295,g|0)|0;n=x;x=0;if(n&1){ja=42;break b}x=0;g=ia(159,g|0,0)|0;n=x;x=0;if(n&1){ja=42;break b}f[V>>2]=g;h=o;g=p;break}if($1a(m,f[33100]|0)|0){x=0;g=ia(69,n|0,1)|0;n=x;x=0;if(n&1){ja=87;break b}x=0;h=ia(161,a|0,g|0)|0;n=x;x=0;if(n&1){ja=87;break b}g=f[G>>2]|0;f[D>>2]=h;f[aa>>2]=f[D>>2];if(!(oma(g,aa)|0)){ja=84;break b}f[E>>2]=h;x=0;f[aa>>2]=f[E>>2];g=ia(162,g|0,aa|0)|0;o=x;x=0;if(o&1){ja=94;break b}f[V>>2]=f[g+4>>2];n=g+8|0;k=g+12|0;j=0;while(1){if(j>>>0>=(f[k>>2]|0)-(f[n>>2]|0)>>2>>>0){g=p;break c}x=0;g=ga(226,j|0)|0;o=x;x=0;if(o&1){ja=101;break b}f[B>>2]=g;m=f[(f[n>>2]|0)+(j<<2)>>2]|0;f[C>>2]=m;i=f[r>>2]|0;if(i>>>0>=(f[s>>2]|0)>>>0){x=0;va(142,ha|0,B|0,C|0);o=x;x=0;if(o&1){ja=102;break b}}else{E1a(da,g);f[aa>>2]=f[da>>2];cUa(i,aa,m);f[r>>2]=(f[r>>2]|0)+8}E1a(aa,g);x=0;g=ia(163,z|0,aa|0)|0;o=x;x=0;if(o&1){ja=103;break b}f[g>>2]=m;j=j+1|0}}if($1a(m,f[33104]|0)|0){x=0;g=ia(69,n|0,1)|0;m=x;x=0;if(m&1){ja=112;break b}x=0;g=ga(295,g|0)|0;m=x;x=0;if(m&1){ja=112;break b}E1a(aa,g);e=f[aa>>2]|0;x=0;g=ia(69,n|0,2)|0;n=x;x=0;if(n&1){ja=113;break b}x=0;g=ga(295,g|0)|0;n=x;x=0;if(n&1){ja=113;break b}E1a(aa,g);h=o;g=f[aa>>2]|0;break}k=f[r>>2]|0;m=f[ha>>2]|0;g=m;h=k;if(((k|0)!=(m|0)?(f[t>>2]|0)==(f[ea>>2]|0):0)?(x=0,va(143,ea|0,g|0,h|0),m=x,x=0,m&1):0){ja=42;break b}if((f[P>>2]|0)==0?(x=0,ta(492,Q|0),m=x,x=0,m&1):0){ja=42;break b}x=0;g=ia(164,a|0,n|0)|0;n=x;x=0;if(n&1){ja=122;break b}if(!(f[W>>2]|0)){f[W>>2]=g;h=o;g=p;break}x=0;ta(493,K|0);n=x;x=0;if(n&1){ja=122;break b}x=0;ua(81,(f[J>>2]|0)+12|0,g|0);n=x;x=0;if(n&1){ja=122;break b}else{h=o;g=p}}else ja=30;while(0);d:do if((ja|0)==30){ja=0;j=1;while(1){x=0;g=ga(294,n|0)|0;k=x;x=0;if(k&1){ja=43;break b}if(j>>>0>=g>>>0){h=o;g=p;break d}Kab(B);f[C>>2]=0;x=0;g=ia(69,n|0,j|0)|0;k=x;x=0;if(k&1){ja=44;break b}do if(lRa(g)|0)ja=49;else{x=0;g=ia(69,n|0,j|0)|0;k=x;x=0;if(k&1){ja=44;break b}x=0;g=ga(295,g|0)|0;k=x;x=0;if(k&1){ja=44;break b}x=0;h=ia(159,g|0,1)|0;k=x;x=0;if(k&1){ja=44;break b}f[C>>2]=h;if(!h){ja=49;break}x=0;g=ga(226,f[q>>2]|0)|0;k=x;x=0;if(k&1){ja=48;break b}f[B>>2]=g;i=h}while(0);if((ja|0)==49){ja=0;x=0;g=ia(69,n|0,j|0)|0;k=x;x=0;if(k&1){ja=55;break b}x=0;k=ga(295,g|0)|0;i=x;x=0;if(i&1){ja=55;break b}f[B>>2]=k;h=j+1|0;x=0;g=ia(69,n|0,h|0)|0;j=x;x=0;if(j&1){ja=44;break b}x=0;g=ga(295,g|0)|0;j=x;x=0;if(j&1){ja=44;break b}x=0;i=ia(159,g|0,0)|0;j=x;x=0;if(j&1){ja=44;break b}f[C>>2]=i;j=h;g=k}j=j+1|0;do if($1a(m,f[33110]|0)|0){h=f[t>>2]|0;if(h>>>0>=(f[v>>2]|0)>>>0){x=0;va(142,ea|0,B|0,C|0);k=x;x=0;if(k&1){ja=44;break b}else break}else{E1a(da,g);f[aa>>2]=f[da>>2];cUa(h,aa,i);f[t>>2]=(f[t>>2]|0)+8;break}}else{h=f[w>>2]|0;if(h>>>0>=(f[y>>2]|0)>>>0){x=0;va(142,fa|0,B|0,C|0);k=x;x=0;if(k&1){ja=44;break b}else break}else{E1a(da,g);f[aa>>2]=f[da>>2];cUa(h,aa,i);f[w>>2]=(f[w>>2]|0)+8;break}}while(0);f[q>>2]=(f[q>>2]|0)+1;E1a(aa,g);x=0;g=ia(163,z|0,aa|0)|0;k=x;x=0;if(k&1){ja=65;break b}f[g>>2]=i}}while(0);l=l+1|0;p=g;o=h}e:switch(ja|0){case 38:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=40;break}case 41:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 42:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 43:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 44:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 48:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 55:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 65:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 70:{f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;h=Ea(20)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;da=h7a(94233)|0;x=0;va(87,H|0,94233,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,H|0,f[n+28>>2]|0,f[n+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(H);if(!g)break}else e=Ia()|0;La(h|0);break}case 84:{f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;h=Ea(20)|0;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;da=h7a(94254)|0;x=0;va(87,I|0,94254,da|0);da=x;x=0;if(!(da&1)){x=0;ua(261,h|0,I|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(I);if(!g)break}else e=Ia()|0;La(h|0);break}case 87:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 94:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;break}case 101:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;ja=105;break}case 102:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;ja=104;break}case 103:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;ja=104;break}case 112:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 113:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 122:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 126:{f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;do if(Gab(o)|0){x=0;va(144,F|0,f[V>>2]|0,ea|0);I=x;x=0;if(I&1){e=Ia()|0;break e}x=0;i=ga(298,F|0)|0;I=x;x=0;if(I&1){e=Ia()|0;HTa(F);break e}HTa(F);e=f[G>>2]|0;g=f[e+4>>2]|0;e=f[e>>2]|0;while(1){if((e|0)==(g|0))break;h=f[e>>2]|0;if(sW(h,i)|0){ja=135;break}e=e+4|0}if((ja|0)==135)f[X>>2]=f[h>>2];if(Iab(f[X>>2]|0)|0){M_a(i);ubb(i);e=f[L>>2]|0;break}h=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;da=h7a(94276)|0;x=0;va(87,R|0,94276,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,R|0,f[c+28>>2]|0,f[c+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(R);if(g)ja=143}else{e=Ia()|0;ja=143}if((ja|0)==143)La(h|0);M_a(i);ubb(i);break e}while(0);f:do if(Iab(e)|0){if(!d){h=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;da=h7a(94311)|0;x=0;va(87,S|0,94311,da|0);da=x;x=0;if(!(da&1)){x=0;ua(261,h|0,S|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(S);if(!g)break e}else e=Ia()|0;La(h|0);break e}x=0;ta(432,da|0);ba=x;x=0;g:do if(ba&1)e=Ia()|0;else{g=f[da>>2]|0;f[g>>2]=f[O>>2];f[g+4>>2]=f[L>>2];f[g+8>>2]=f[M>>2];f[g+12>>2]=0;e=f[G>>2]|0;f[N>>2]=f[X>>2];x=0;f[aa>>2]=f[N>>2];e=ia(162,e|0,aa|0)|0;ba=x;x=0;do if(ba&1){e=Ia()|0;f[da>>2]=0;if(!g)break g}else{f[g+16>>2]=f[e>>2];e=f[G>>2]|0;f[T>>2]=f[g>>2];f[aa>>2]=f[T>>2];if(ana(e,aa)|0){i=Ea(20)|0;f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;ca=h7a(93727)|0;x=0;va(87,Y|0,93727,ca|0);ca=x;x=0;if(!(ca&1)){x=0;wa(138,i|0,Y|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}e=Ia()|0;HTa(Y);if(h)ja=163}else{e=Ia()|0;ja=163}if((ja|0)==163)La(i|0);f[da>>2]=0;break}f[da>>2]=0;x=0;ua(64,e|0,g|0);c=x;x=0;if(c&1){e=Ia()|0;f[da>>2]=0;break g}if(!(f[P>>2]|0)){k8(a+88|0);Yba(a+112|0);f[da>>2]=0;break f}h=Ea(20)|0;f[Z>>2]=0;f[Z+4>>2]=0;f[Z+8>>2]=0;c=h7a(94335)|0;x=0;va(87,Z|0,94335,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,Z|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(Z);if(g)ja=172}else{e=Ia()|0;ja=172}if((ja|0)==172)La(h|0);f[da>>2]=0;break g}while(0);ubb(g)}while(0);break e}else{if(d){h=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;da=h7a(94369)|0;x=0;va(87,U|0,94369,da|0);da=x;x=0;if(!(da&1)){x=0;ua(261,h|0,U|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(U);if(!g)break e}else e=Ia()|0;La(h|0);break e}if(b[A>>0]|0){x=0;ta(493,K|0);da=x;x=0;if(!(da&1)){e=f[J>>2]|0;f[e+8>>2]=f[33085];ja=190}}else{e=f[J>>2]|0;ja=190}do if((ja|0)==190){if(e|0?(x=0,ua(1873,e|0,f[V>>2]|0),da=x,x=0,da&1):0)break;e=f[P>>2]|0;if(!e){x=0;ta(492,Q|0);da=x;x=0;if(da&1)break;x=0;e=ga(282,f[a+4>>2]|0)|0;da=x;x=0;if(da&1)break;f[W>>2]=e;e=f[P>>2]|0}if((f[e+4>>2]|0)!=(f[V>>2]|0)){h=Ea(20)|0;f[$>>2]=0;f[$+4>>2]=0;f[$+8>>2]=0;da=h7a(94392)|0;x=0;va(87,$|0,94392,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,$|0,f[c+28>>2]|0,f[c+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa($);if(!g)break e}else e=Ia()|0;La(h|0);break e}f[e+36>>2]=f[W>>2];f[(f[P>>2]|0)+32>>2]=f[X>>2];e=f[G>>2]|0;g=f[P>>2]|0;f[_>>2]=f[g>>2];f[aa>>2]=f[_>>2];if(!(Sma(e,aa)|0)){f[P>>2]=0;x=0;ua(73,e|0,g|0);ja=x;x=0;if(ja&1)break;k8(a+88|0);Yba(a+112|0);break f}h=Ea(20)|0;f[ba>>2]=0;f[ba+4>>2]=0;f[ba+8>>2]=0;da=h7a(94413)|0;x=0;va(87,ba|0,94413,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,ba|0,f[c+28>>2]|0,f[c+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(ba);if(!g)break e}else e=Ia()|0;La(h|0);break e}while(0);e=Ia()|0;ja=40;break e}while(0);uSa(fa);uSa(ea);uSa(ha);u=ca;return}}if((ja|0)!=40)if((ja|0)!=66)if((ja|0)==104)ja=105;uSa(fa);uSa(ea);uSa(ha)}Ua(e|0)}function Jc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;t=u;u=u+400|0;w=t+160|0;j=t+384|0;v=t+16|0;s=t;k=t+372|0;l=t+360|0;q=t+348|0;n=t+336|0;o=t+324|0;m=t+312|0;r=t+300|0;d=ZVa(d)|0;f[d+4>>2]=c;a:do if(l6a(c)|0){if($1a(a,f[33091]|0)|0)switch(c|0){case 3:{CAa(w,C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{kqa(w,C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}if($1a(a,f[33090]|0)|0)switch(c|0){case 3:{CAa(w,-C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{kqa(w,-C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}if($1a(a,f[33092]|0)|0)switch(c|0){case 3:{CAa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{kqa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}p=(b[a>>0]|0)==45;e=a+1|0;g=p?e:a;if(p)i=e;else i=(b[g>>0]|0)==43?g+1|0:g;if(((b[i>>0]|0)==110?(b[i+1>>0]|0)==97:0)?(b[i+2>>0]|0)==110:0){e=(b[i+3>>0]|0)==58;g=i+4|0;h=e?g:0;do if(e){if((b[g>>0]|0)==48?(b[i+5>>0]|0)==120:0)break;g=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;w=h7a(92845)|0;x=0;va(87,j|0,92845,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,j|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(j);if(!e){h=168;break a}}else d=Ia()|0;La(g|0);h=168;break a}while(0);switch(c|0){case 3:{b:do if(e){f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;WZ(s,h,h7a(h)|0);g=v+60|0;h=v+8|0;f[v>>2]=34572;f[g>>2]=34592;f[v+4>>2]=0;Gaa(v+60|0,h);f[v+132>>2]=0;f[v+136>>2]=-1;f[v>>2]=43024;f[g>>2]=43044;Sra(h);f[h>>2]=39940;i=v+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[v+52>>2]=0;f[v+56>>2]=8;x=0;ua(1878,h|0,s|0);r=x;x=0;if(r&1){d=Ia()|0;HTa(i);YWa(h);m1a(g);HTa(s)}else{HTa(s);r=v+(f[(f[v>>2]|0)+-12>>2]|0)+4|0;f[r>>2]=f[r>>2]&-75|8;x=0;ia(169,v|0,w|0)|0;r=x;x=0;do if(r&1)d=Ia()|0;else{if(!(f[v+(f[(f[v>>2]|0)+-12>>2]|0)+16>>2]&5)){f[w>>2]=f[w>>2]|2139095040;KGa(v);break b}g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;w=h7a(92859)|0;x=0;va(87,k|0,92859,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,k|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(k);if(!e)break}else d=Ia()|0;La(g|0)}while(0);KGa(v)}h=168;break a}else f[w>>2]=2143289344;while(0);e=f[w>>2]|0;if(p){e=e|-2147483648;f[w>>2]=e}if(((D$a(+d8a(w))|0)&2147483647)>>>0<=2139095040){e=e|1;f[w>>2]=e}m$a(s,e);LHa(v,s);h=d+8|0;f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];h=167;break a}case 4:{c:do if(e){f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;WZ(s,h,h7a(h)|0);g=v+60|0;h=v+8|0;f[v>>2]=34572;f[g>>2]=34592;f[v+4>>2]=0;Gaa(v+60|0,h);f[v+132>>2]=0;f[v+136>>2]=-1;f[v>>2]=43024;f[g>>2]=43044;Sra(h);f[h>>2]=39940;i=v+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[v+52>>2]=0;f[v+56>>2]=8;x=0;ua(1878,h|0,s|0);r=x;x=0;if(r&1){d=Ia()|0;HTa(i);YWa(h);m1a(g);HTa(s)}else{HTa(s);r=v+(f[(f[v>>2]|0)+-12>>2]|0)+4|0;f[r>>2]=f[r>>2]&-75|8;x=0;ia(170,v|0,w|0)|0;r=x;x=0;do if(r&1)d=Ia()|0;else{if(!(f[v+(f[(f[v>>2]|0)+-12>>2]|0)+16>>2]&5)){a=w;c=f[a+4>>2]|2146435072;r=w;f[r>>2]=f[a>>2];f[r+4>>2]=c;KGa(v);break c}g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;w=h7a(92878)|0;x=0;va(87,l|0,92878,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,l|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(l);if(!e)break}else d=Ia()|0;La(g|0)}while(0);KGa(v)}h=168;break a}else{r=w;f[r>>2]=0;f[r+4>>2]=2146959360}while(0);e=w;g=f[e>>2]|0;e=f[e+4>>2]|0;if(p){e=e|-2147483648;r=w;f[r>>2]=g;f[r+4>>2]=e}r=qRa(+e8a(w))|0;c=I&2147483647;if(!(c>>>0>2146435072|(c|0)==2146435072&r>>>0>0)){g=g|1;f[w>>2]=g;f[w+4>>2]=e}SSa(s,g,e);h=s+8|0;pGa(v,f[s>>2]|0,f[h>>2]|0,f[h+4>>2]|0);h=d+8|0;f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];h=167;break a}default:{d=0;h=167;break a}}}if($1a(a,f[33089]|0)|0)switch(c|0){case 3:{CAa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{kqa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}else h=81}else h=81;while(0);d:do if((h|0)==81){e:do switch(c|0){case 1:{g=b[a>>0]|0;switch(g<<24>>24){case 48:{e=a+1|0;if((b[e>>0]|0)==120)h=86;else{e=a;h=103}break}case 45:{e=a+1|0;if((b[e>>0]|0)==48?(b[a+2>>0]|0)==120:0)h=86;else h=103;break}default:{e=a;h=103}}if((h|0)==86){j=g<<24>>24==45;g=j?e:a;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;WZ(v,g,h7a(g)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Gaa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Sra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1878,h|0,v|0);a=x;x=0;if(a&1){d=Ia()|0;HTa(i);YWa(h);m1a(g);HTa(v)}else{HTa(v);a=w+(f[(f[w>>2]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]&-75|8;x=0;ia(169,w|0,v|0)|0;a=x;x=0;do if(a&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){v=f[v>>2]|0;m$a(s,j?0-v|0:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];KGa(w);break e}g=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;v=h7a(92897)|0;x=0;va(87,q|0,92897,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,q|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(q);if(!e)break}else d=Ia()|0;La(g|0)}while(0);KGa(w)}h=168;break d}else if((h|0)==103){f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;WZ(v,e,h7a(e)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Gaa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Sra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1878,h|0,v|0);q=x;x=0;if(q&1){d=Ia()|0;HTa(i);YWa(h);m1a(g);HTa(v)}else{HTa(v);x=0;ia(169,w|0,v|0)|0;q=x;x=0;do if(q&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){v=f[v>>2]|0;m$a(s,(b[a>>0]|0)==45?0-v|0:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];KGa(w);break e}g=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;v=h7a(92897)|0;x=0;va(87,n|0,92897,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,n|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(n);if(!e)break}else d=Ia()|0;La(g|0)}while(0);KGa(w)}h=168;break d}break}case 2:{g=b[a>>0]|0;switch(g<<24>>24){case 48:{e=a+1|0;if((b[e>>0]|0)==120)h=124;else{e=a;h=141}break}case 45:{e=a+1|0;if((b[e>>0]|0)==48?(b[a+2>>0]|0)==120:0)h=124;else h=141;break}default:{e=a;h=141}}if((h|0)==124){j=g<<24>>24==45;g=j?e:a;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;WZ(v,g,h7a(g)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Gaa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Sra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1878,h|0,v|0);a=x;x=0;if(a&1){d=Ia()|0;HTa(i);YWa(h);m1a(g);HTa(v)}else{HTa(v);a=w+(f[(f[w>>2]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]&-75|8;x=0;ia(170,w|0,v|0)|0;a=x;x=0;do if(a&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){a=f[v>>2]|0;v=f[v+4>>2]|0;q=NRa(0,0,a|0,v|0)|0;SSa(s,j?q:a,j?I:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];KGa(w);break e}g=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;v=h7a(92916)|0;x=0;va(87,o|0,92916,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,o|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(o);if(!e)break}else d=Ia()|0;La(g|0)}while(0);KGa(w)}h=168;break d}else if((h|0)==141){f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;WZ(v,e,h7a(e)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Gaa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Sra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1878,h|0,v|0);q=x;x=0;if(q&1){d=Ia()|0;HTa(i);YWa(h);m1a(g);HTa(v)}else{HTa(v);x=0;ia(170,w|0,v|0)|0;q=x;x=0;do if(q&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){a=(b[a>>0]|0)==45;q=f[v>>2]|0;v=f[v+4>>2]|0;p=NRa(0,0,q|0,v|0)|0;SSa(s,a?p:q,a?I:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];KGa(w);break e}g=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;v=h7a(92916)|0;x=0;va(87,m|0,92916,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,m|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(m);if(!e)break}else d=Ia()|0;La(g|0)}while(0);KGa(w)}h=168;break d}break}case 3:{CAa(v,+j7a(a,w));w=d+8|0;f[w>>2]=f[v>>2];f[w+4>>2]=f[v+4>>2];f[w+8>>2]=f[v+8>>2];f[w+12>>2]=f[v+12>>2];break}case 4:{kqa(v,+k7a(a,w));w=d+8|0;f[w>>2]=f[v>>2];f[w+4>>2]=f[v+4>>2];f[w+8>>2]=f[v+8>>2];f[w+12>>2]=f[v+12>>2];break}default:{d=0;h=167;break d}}while(0);if((f[d+8>>2]|0)==(c|0))h=167;else{g=Ea(20)|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;w=h7a(92935)|0;x=0;va(87,r|0,92935,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,r|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(r);if(!e){h=168;break}}else d=Ia()|0;La(g|0);h=168}}while(0);if((h|0)==167){u=t;return d|0}else if((h|0)==168)Ua(d|0);return 0}function Kc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0,w=0,x=0;x=u;u=u+16|0;n=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=f[33302]|0;c=m>>>a;if(c&3|0){b=(c&1^1)+a|0;a=133248+(b<<1<<2)|0;c=a+8|0;d=f[c>>2]|0;e=d+8|0;g=f[e>>2]|0;if((g|0)==(a|0))f[33302]=m&~(1<>2]=a;f[c>>2]=g}w=b<<3;f[d+4>>2]=w|3;w=d+w+4|0;f[w>>2]=f[w>>2]|1;w=e;u=x;return w|0}l=f[33304]|0;if(k>>>0>l>>>0){if(c|0){b=2<>>12&16;b=b>>>i;c=b>>>5&8;b=b>>>c;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;d=b>>>1&1;d=(c|i|g|a|d)+(b>>>d)|0;b=133248+(d<<1<<2)|0;a=b+8|0;g=f[a>>2]|0;i=g+8|0;c=f[i>>2]|0;if((c|0)==(b|0)){a=m&~(1<>2]=b;f[a>>2]=c;a=m}w=d<<3;h=w-k|0;f[g+4>>2]=k|3;e=g+k|0;f[e+4>>2]=h|1;f[g+w>>2]=h;if(l|0){d=f[33307]|0;b=l>>>3;c=133248+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=c}f[33304]=h;f[33307]=e;w=i;u=x;return w|0}g=f[33303]|0;if(g){c=(g&0-g)+-1|0;e=c>>>12&16;c=c>>>e;d=c>>>5&8;c=c>>>d;h=c>>>2&4;c=c>>>h;i=c>>>1&2;c=c>>>i;j=c>>>1&1;j=f[133512+((d|e|h|i|j)+(c>>>j)<<2)>>2]|0;c=j;i=j;j=(f[j+4>>2]&-8)-k|0;while(1){a=f[c+16>>2]|0;if(!a){a=f[c+20>>2]|0;if(!a)break}h=(f[a+4>>2]&-8)-k|0;e=h>>>0>>0;c=a;i=e?a:i;j=e?h:j}h=i+k|0;if(h>>>0>i>>>0){e=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=f[a>>2]|0;if(!b){a=i+16|0;b=f[a>>2]|0;if(!b){c=0;break}}while(1){d=b+20|0;c=f[d>>2]|0;if(!c){d=b+16|0;c=f[d>>2]|0;if(!c)break;else{b=c;a=d}}else{b=c;a=d}}f[a>>2]=0;c=b}else{c=f[i+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(e|0){b=f[i+28>>2]|0;a=133512+(b<<2)|0;if((i|0)==(f[a>>2]|0)){f[a>>2]=c;if(!c){f[33303]=g&~(1<>2]|0)==(i|0)?w:e+20|0)>>2]=c;if(!c)break}f[c+24>>2]=e;b=f[i+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[i+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(j>>>0<16){w=j+k|0;f[i+4>>2]=w|3;w=i+w+4|0;f[w>>2]=f[w>>2]|1}else{f[i+4>>2]=k|3;f[h+4>>2]=j|1;f[h+j>>2]=j;if(l|0){d=f[33307]|0;b=l>>>3;c=133248+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=c}f[33304]=j;f[33307]=h}w=i+8|0;u=x;return w|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;d=f[33303]|0;if(d){e=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{m=(a+1048320|0)>>>16&8;r=a<>>16&4;r=r<>>16&2;j=14-(i|m|j)+(r<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;c=f[133512+(j<<2)>>2]|0;a:do if(!c){c=0;a=0;r=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(f[c+4>>2]&-8)-k|0;if(h>>>0>>0)if(!h){a=c;e=0;r=65;break a}else{a=c;e=h}r=f[c+20>>2]|0;c=f[c+16+(i>>>31<<2)>>2]|0;g=(r|0)==0|(r|0)==(c|0)?g:r;if(!c){c=g;r=61;break}else i=i<<1}}while(0);if((r|0)==61){if((c|0)==0&(a|0)==0){a=2<>>12&16;m=m>>>h;g=m>>>5&8;m=m>>>g;i=m>>>2&4;m=m>>>i;j=m>>>1&2;m=m>>>j;c=m>>>1&1;a=0;c=f[133512+((g|h|i|j|c)+(m>>>c)<<2)>>2]|0}if(!c){i=a;h=e}else r=65}if((r|0)==65){g=c;while(1){m=(f[g+4>>2]&-8)-k|0;c=m>>>0>>0;e=c?m:e;a=c?g:a;c=f[g+16>>2]|0;if(!c)c=f[g+20>>2]|0;if(!c){i=a;h=e;break}else g=c}}if(((i|0)!=0?h>>>0<((f[33304]|0)-k|0)>>>0:0)?(l=i+k|0,l>>>0>i>>>0):0){g=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=f[a>>2]|0;if(!b){a=i+16|0;b=f[a>>2]|0;if(!b){b=0;break}}while(1){e=b+20|0;c=f[e>>2]|0;if(!c){e=b+16|0;c=f[e>>2]|0;if(!c)break;else{b=c;a=e}}else{b=c;a=e}}f[a>>2]=0}else{w=f[i+8>>2]|0;f[w+12>>2]=b;f[b+8>>2]=w}while(0);do if(g){a=f[i+28>>2]|0;c=133512+(a<<2)|0;if((i|0)==(f[c>>2]|0)){f[c>>2]=b;if(!b){d=d&~(1<>2]|0)==(i|0)?w:g+20|0)>>2]=b;if(!b)break}f[b+24>>2]=g;a=f[i+16>>2]|0;if(a|0){f[b+16>>2]=a;f[a+24>>2]=b}a=f[i+20>>2]|0;if(a){f[b+20>>2]=a;f[a+24>>2]=b}}while(0);b:do if(h>>>0<16){w=h+k|0;f[i+4>>2]=w|3;w=i+w+4|0;f[w>>2]=f[w>>2]|1}else{f[i+4>>2]=k|3;f[l+4>>2]=h|1;f[l+h>>2]=h;b=h>>>3;if(h>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=l;f[b+12>>2]=l;f[l+8>>2]=b;f[l+12>>2]=c;break}b=h>>>8;if(b)if(h>>>0>16777215)c=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;c=14-(t|v|c)+(w<>>15)|0;c=h>>>(c+7|0)&1|c<<1}else c=0;b=133512+(c<<2)|0;f[l+28>>2]=c;a=l+16|0;f[a+4>>2]=0;f[a>>2]=0;a=1<>2]=l;f[l+24>>2]=b;f[l+12>>2]=l;f[l+8>>2]=l;break}b=f[b>>2]|0;c:do if((f[b+4>>2]&-8|0)!=(h|0)){d=h<<((c|0)==31?0:25-(c>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{d=d<<1;b=a}}f[c>>2]=l;f[l+24>>2]=b;f[l+12>>2]=l;f[l+8>>2]=l;break b}while(0);v=b+8|0;w=f[v>>2]|0;f[w+12>>2]=l;f[v>>2]=l;f[l+8>>2]=w;f[l+12>>2]=b;f[l+24>>2]=0}while(0);w=i+8|0;u=x;return w|0}else m=k}else m=k}else m=-1;while(0);c=f[33304]|0;if(c>>>0>=m>>>0){b=c-m|0;a=f[33307]|0;if(b>>>0>15){w=a+m|0;f[33307]=w;f[33304]=b;f[w+4>>2]=b|1;f[a+c>>2]=b;f[a+4>>2]=m|3}else{f[33304]=0;f[33307]=0;f[a+4>>2]=c|3;w=a+c+4|0;f[w>>2]=f[w>>2]|1}w=a+8|0;u=x;return w|0}h=f[33305]|0;if(h>>>0>m>>>0){t=h-m|0;f[33305]=t;w=f[33308]|0;v=w+m|0;f[33308]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}if(!(f[33420]|0)){f[33422]=4096;f[33421]=4096;f[33423]=-1;f[33424]=-1;f[33425]=0;f[33413]=0;f[33420]=n&-16^1431655768;a=4096}else a=f[33422]|0;i=m+48|0;j=m+47|0;g=a+j|0;e=0-a|0;k=g&e;if(k>>>0<=m>>>0){w=0;u=x;return w|0}a=f[33412]|0;if(a|0?(l=f[33410]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){w=0;u=x;return w|0}d:do if(!(f[33413]&4)){c=f[33308]|0;e:do if(c){d=133656;while(1){a=f[d>>2]|0;if(a>>>0<=c>>>0?(q=d+4|0,(a+(f[q>>2]|0)|0)>>>0>c>>>0):0)break;a=f[d+8>>2]|0;if(!a){r=128;break e}else d=a}b=g-h&e;if(b>>>0<2147483647){a=nba(b|0)|0;if((a|0)==((f[d>>2]|0)+(f[q>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;r=145;break d}}else{d=a;r=136}}else b=0}else r=128;while(0);do if((r|0)==128){c=nba(0)|0;if((c|0)!=(-1|0)?(b=c,o=f[33421]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=f[33410]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){q=f[33412]|0;if(q|0?p>>>0<=o>>>0|p>>>0>q>>>0:0){b=0;break}a=nba(b|0)|0;if((a|0)==(c|0)){h=b;g=c;r=145;break d}else{d=a;r=136}}else b=0}while(0);do if((r|0)==136){c=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(d|0)!=(-1|0))))if((d|0)==(-1|0)){b=0;break}else{h=b;g=d;r=145;break d}a=f[33422]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=d;r=145;break d}if((nba(a|0)|0)==(-1|0)){nba(c|0)|0;b=0;break}else{h=a+b|0;g=d;r=145;break d}}while(0);f[33413]=f[33413]|4;r=143}else{b=0;r=143}while(0);if(((r|0)==143?k>>>0<2147483647:0)?(v=nba(k|0)|0,q=nba(0)|0,s=q-v|0,t=s>>>0>(m+40|0)>>>0,!((v|0)==(-1|0)|t^1|v>>>0>>0&((v|0)!=(-1|0)&(q|0)!=(-1|0))^1)):0){h=t?s:b;g=v;r=145}if((r|0)==145){b=(f[33410]|0)+h|0;f[33410]=b;if(b>>>0>(f[33411]|0)>>>0)f[33411]=b;j=f[33308]|0;f:do if(j){b=133656;while(1){a=f[b>>2]|0;c=b+4|0;d=f[c>>2]|0;if((g|0)==(a+d|0)){r=154;break}e=f[b+8>>2]|0;if(!e)break;else b=e}if(((r|0)==154?(f[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){f[c>>2]=d+h;w=(f[33305]|0)+h|0;t=j+8|0;t=(t&7|0)==0?0:0-t&7;v=j+t|0;t=w-t|0;f[33308]=v;f[33305]=t;f[v+4>>2]=t|1;f[j+w+4>>2]=40;f[33309]=f[33424];break}if(g>>>0<(f[33306]|0)>>>0)f[33306]=g;c=g+h|0;b=133656;while(1){if((f[b>>2]|0)==(c|0)){r=162;break}a=f[b+8>>2]|0;if(!a)break;else b=a}if((r|0)==162?(f[b+12>>2]&8|0)==0:0){f[b>>2]=g;l=b+4|0;f[l>>2]=(f[l>>2]|0)+h;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;b=c+8|0;b=c+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;f[l+4>>2]=m|3;g:do if((j|0)==(b|0)){w=(f[33305]|0)+i|0;f[33305]=w;f[33308]=k;f[k+4>>2]=w|1}else{if((f[33307]|0)==(b|0)){w=(f[33304]|0)+i|0;f[33304]=w;f[33307]=k;f[k+4>>2]=w|1;f[k+w>>2]=w;break}a=f[b+4>>2]|0;if((a&3|0)==1){h=a&-8;d=a>>>3;h:do if(a>>>0<256){a=f[b+8>>2]|0;c=f[b+12>>2]|0;if((c|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=c;f[c+8>>2]=a;break}}else{g=f[b+24>>2]|0;a=f[b+12>>2]|0;do if((a|0)==(b|0)){c=b+16|0;d=c+4|0;a=f[d>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}}else c=d;while(1){e=a+20|0;d=f[e>>2]|0;if(!d){e=a+16|0;d=f[e>>2]|0;if(!d)break;else{a=d;c=e}}else{a=d;c=e}}f[c>>2]=0}else{w=f[b+8>>2]|0;f[w+12>>2]=a;f[a+8>>2]=w}while(0);if(!g)break;c=f[b+28>>2]|0;d=133512+(c<<2)|0;do if((f[d>>2]|0)!=(b|0)){w=g+16|0;f[((f[w>>2]|0)==(b|0)?w:g+20|0)>>2]=a;if(!a)break h}else{f[d>>2]=a;if(a|0)break;f[33303]=f[33303]&~(1<>2]=g;c=b+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(!c)break;f[a+20>>2]=c;f[c+24>>2]=a}while(0);b=b+h|0;e=h+i|0}else e=i;b=b+4|0;f[b>>2]=f[b>>2]&-2;f[k+4>>2]=e|1;f[k+e>>2]=e;b=e>>>3;if(e>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=k;f[b+12>>2]=k;f[k+8>>2]=b;f[k+12>>2]=c;break}b=e>>>8;do if(!b)d=0;else{if(e>>>0>16777215){d=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(t|v|d)+(w<>>15)|0;d=e>>>(d+7|0)&1|d<<1}while(0);b=133512+(d<<2)|0;f[k+28>>2]=d;a=k+16|0;f[a+4>>2]=0;f[a>>2]=0;a=f[33303]|0;c=1<>2]=k;f[k+24>>2]=b;f[k+12>>2]=k;f[k+8>>2]=k;break}b=f[b>>2]|0;i:do if((f[b+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(e|0)){b=a;break i}else{d=d<<1;b=a}}f[c>>2]=k;f[k+24>>2]=b;f[k+12>>2]=k;f[k+8>>2]=k;break g}while(0);v=b+8|0;w=f[v>>2]|0;f[w+12>>2]=k;f[v>>2]=k;f[k+8>>2]=w;f[k+12>>2]=b;f[k+24>>2]=0}while(0);w=l+8|0;u=x;return w|0}b=133656;while(1){a=f[b>>2]|0;if(a>>>0<=j>>>0?(w=a+(f[b+4>>2]|0)|0,w>>>0>j>>>0):0)break;b=f[b+8>>2]|0}e=w+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;c=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;v=g+t|0;t=c-t|0;f[33308]=v;f[33305]=t;f[v+4>>2]=t|1;f[g+c+4>>2]=40;f[33309]=f[33424];c=a+4|0;f[c>>2]=27;f[b>>2]=f[33414];f[b+4>>2]=f[33415];f[b+8>>2]=f[33416];f[b+12>>2]=f[33417];f[33414]=g;f[33415]=h;f[33417]=0;f[33416]=b;b=a+24|0;do{v=b;b=b+4|0;f[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;f[c>>2]=f[c>>2]&-2;f[j+4>>2]=g|1;f[a>>2]=g;b=g>>>3;if(g>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=j;f[b+12>>2]=j;f[j+8>>2]=b;f[j+12>>2]=c;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(t|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;c=133512+(d<<2)|0;f[j+28>>2]=d;f[j+20>>2]=0;f[e>>2]=0;b=f[33303]|0;a=1<>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}b=f[c>>2]|0;j:do if((f[b+4>>2]&-8|0)!=(g|0)){d=g<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{d=d<<1;b=a}}f[c>>2]=j;f[j+24>>2]=b;f[j+12>>2]=j;f[j+8>>2]=j;break f}while(0);v=b+8|0;w=f[v>>2]|0;f[w+12>>2]=j;f[v>>2]=j;f[j+8>>2]=w;f[j+12>>2]=b;f[j+24>>2]=0}}else{w=f[33306]|0;if((w|0)==0|g>>>0>>0)f[33306]=g;f[33414]=g;f[33415]=h;f[33417]=0;f[33311]=f[33420];f[33310]=-1;f[33315]=133248;f[33314]=133248;f[33317]=133256;f[33316]=133256;f[33319]=133264;f[33318]=133264;f[33321]=133272;f[33320]=133272;f[33323]=133280;f[33322]=133280;f[33325]=133288;f[33324]=133288;f[33327]=133296;f[33326]=133296;f[33329]=133304;f[33328]=133304;f[33331]=133312;f[33330]=133312;f[33333]=133320;f[33332]=133320;f[33335]=133328;f[33334]=133328;f[33337]=133336;f[33336]=133336;f[33339]=133344;f[33338]=133344;f[33341]=133352;f[33340]=133352;f[33343]=133360;f[33342]=133360;f[33345]=133368;f[33344]=133368;f[33347]=133376;f[33346]=133376;f[33349]=133384;f[33348]=133384;f[33351]=133392;f[33350]=133392;f[33353]=133400;f[33352]=133400;f[33355]=133408;f[33354]=133408;f[33357]=133416;f[33356]=133416;f[33359]=133424;f[33358]=133424;f[33361]=133432;f[33360]=133432;f[33363]=133440;f[33362]=133440;f[33365]=133448;f[33364]=133448;f[33367]=133456;f[33366]=133456;f[33369]=133464;f[33368]=133464;f[33371]=133472;f[33370]=133472;f[33373]=133480;f[33372]=133480;f[33375]=133488;f[33374]=133488;f[33377]=133496;f[33376]=133496;w=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;v=g+t|0;t=w-t|0;f[33308]=v;f[33305]=t;f[v+4>>2]=t|1;f[g+w+4>>2]=40;f[33309]=f[33424]}while(0);b=f[33305]|0;if(b>>>0>m>>>0){t=b-m|0;f[33305]=t;w=f[33308]|0;v=w+m|0;f[33308]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}}f[33448]=12;w=0;u=x;return w|0}function Lc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+192|0;C=D+96|0;r=D;q=D+188|0;if((((f[c+4>>2]|0)==5?(e=f[c>>2]|0,!(J6a(e)|0)):0)?!(w8a(e)|0):0)?!(vab(e)|0):0)d=0;else B=5;a:do if((B|0)==5){z=Y_a(c)|0;b:do if(!z){j=e$a(c)|0;if(j|0){if((f[j+8>>2]|0)!=20){d=0;break a}i=j+12|0;e=f[i>>2]|0;d=Y_a(e)|0;c:do if(d|0){g=d+8|0;do switch(f[g>>2]|0){case 15:{f[g>>2]=16;break a}case 16:{f[g>>2]=15;break a}case 17:{f[g>>2]=23;break a}case 18:{f[g>>2]=24;break a}case 19:{f[g>>2]=21;break a}case 20:{f[g>>2]=22;break a}case 21:{f[g>>2]=19;break a}case 22:{f[g>>2]=20;break a}case 23:{f[g>>2]=17;break a}case 24:{f[g>>2]=18;break a}case 40:{f[g>>2]=41;break a}case 41:{f[g>>2]=40;break a}case 42:{f[g>>2]=48;break a}case 43:{f[g>>2]=49;break a}case 44:{f[g>>2]=46;break a}case 45:{f[g>>2]=47;break a}case 46:{f[g>>2]=44;break a}case 47:{f[g>>2]=45;break a}case 48:{f[g>>2]=42;break a}case 49:{f[g>>2]=43;break a}case 57:{f[g>>2]=58;break a}case 58:{f[g>>2]=57;break a}case 70:{f[g>>2]=71;break a}case 71:{f[g>>2]=70;break a}default:break c}while(0)}while(0);d=EQ(e)|0;if(!d){d=0;break a}d=xR(a,d,VHa(f[i>>2]|0)|0)|0;f[i>>2]=d;d=j;break a}e=u_a(c)|0;if(e|0){d=v_a(f[e+12>>2]|0)|0;if(!d){d=0;break a}if(!($1a(f[d+8>>2]|0,f[e+8>>2]|0)|0)){d=0;break a}pVa(c);d=0;break a}l=S$a(c)|0;if(l|0){m=l+8|0;e=kp(a,f[m>>2]|0)|0;f[m>>2]=e;i=l+16|0;g=f[i>>2]|0;j=g;if(!g){d=0;break a}k=e$a(e)|0;if((k|0)!=0?(f[k+8>>2]|0)==20:0){e=f[k+12>>2]|0;f[m>>2]=e;B=l+12|0;g=f[B>>2]|0;f[B>>2]=j;f[i>>2]=g}if((f[e+4>>2]|0)==5){d=0;break a}k=l+12|0;if(!(GZ(f[k>>2]|0,g)|0)){d=0;break a}j=_Ya(f[a+40>>2]|0)|0;fA(C,j,f[m>>2]|0);j=lza(C)|0;V7(C);g=f[k>>2]|0;i=l+4|0;e=(f[g+4>>2]|0)==(f[i>>2]|0);if(!(j|e^1)){d=g;break a}a=f[a+36>>2]|0;Bbb(a)|0;U0a(C,a);do if(e){d=gNa(f[C>>2]|0,f[m>>2]|0)|0;d=Dpa(C,d,f[k>>2]|0)|0}else{if(o2a(f[i>>2]|0)|0?(f[(f[k>>2]|0)+4>>2]|0)==5:0){e=f[C>>2]|0;d=qwa(e,0)|0;g=d+12|0;if(j)aaa(g,gNa(e,f[m>>2]|0)|0);aaa(g,f[k>>2]|0);XJa(d,f[i>>2]|0);break}Ca(103566,103515,718,103553)}while(0);break a}i=W_a(c)|0;if(!i){d=n$a(c)|0;if(d|0){d=d+16|0;e=f[d>>2]|0;if(!e){d=0;break a}a=kp(a,e)|0;f[d>>2]=a;d=0;break a}d=p$a(c)|0;if(d|0){$N(f[d+24>>2]|0,d+12|0);d=0;break a}g=f$a(c)|0;if(!g){d=0;break a}$N(f[g+24>>2]|0,g+12|0);i=g+28|0;d=f[i>>2]|0;e=Y_a(d)|0;if(!e){d=e$a(d)|0;if(!d){d=0;break a}if((f[d+8>>2]|0)!=24){d=0;break a}f[g+32>>2]=2;f[i>>2]=f[d+12>>2];d=0;break a}if((f[e+8>>2]|0)!=7){d=EQ(e)|0;if(!d){d=0;break a}a=VHa(e)|0;if(a>>>0>0]<<3>>>0){d=0;break a}f[i>>2]=d;d=0;break a}d=g$a(f[e+16>>2]|0)|0;if(!d){d=0;break a}if((f[d+4>>2]|0)!=1){d=0;break a}C=ORa(d+8|0)|0;a=b[g+8>>0]|0;if(!((C|0)==255&a<<24>>24==1)?!((C|0)==65535&a<<24>>24==2):0){d=0;break a}f[i>>2]=f[e+12>>2];d=0;break a}j=i+16|0;d=kp(a,f[j>>2]|0)|0;f[j>>2]=d;g=e$a(d)|0;if((g|0)!=0?(f[g+8>>2]|0)==20:0){B=a+40|0;e=_Ya(f[B>>2]|0)|0;d=i+8|0;fA(C,e,f[d>>2]|0);B=_Ya(f[B>>2]|0)|0;e=i+12|0;x=0;va(101,r|0,B|0,f[e>>2]|0);B=x;x=0;if(B&1){d=Ia()|0;V7(C);break}if(!(xj(C,r)|0)){f[j>>2]=f[g+12>>2];B=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=B}V7(r);V7(C);d=f[j>>2]|0}d=g$a(d)|0;do if(d){B=Eia(d+8|0)|0;if(!((B|0)==0&(I|0)==0)){B=_Ya(f[a+40>>2]|0)|0;d=i+12|0;fA(C,B,f[d>>2]|0);B=lza(C)|0;V7(C);if(B)break;d=f[i+8>>2]|0;break a}B=_Ya(f[a+40>>2]|0)|0;d=i+8|0;fA(C,B,f[d>>2]|0);B=lza(C)|0;V7(C);if(B){a=f[a+36>>2]|0;Bbb(a)|0;U0a(C,a);d=gNa(f[C>>2]|0,f[d>>2]|0)|0;d=Dpa(C,d,f[i+12>>2]|0)|0;break a}else{d=f[i+12>>2]|0;break a}}else d=i+12|0;while(0);e=i+8|0;if(!(GZ(f[e>>2]|0,f[d>>2]|0)|0)){d=0;break a}d=a+40|0;B=_Ya(f[d>>2]|0)|0;fA(C,B,f[e>>2]|0);d:do if(!(lza(C)|0)){B=_Ya(f[d>>2]|0)|0;x=0;va(101,r|0,B|0,f[j>>2]|0);B=x;x=0;e:do if(B&1)d=Ia()|0;else{f:do if(lza(r)|0){if(xj(r,C)|0){V7(r);break d}d=f[a+36>>2]|0;Bbb(d)|0;U0a(q,d);x=0;d=ia(125,f[q>>2]|0,f[j>>2]|0)|0;a=x;x=0;do if(!(a&1)){x=0;d=ja(51,q|0,d|0,f[e>>2]|0)|0;a=x;x=0;if(a&1)break;break f}while(0);d=Ia()|0;V7(r);break e}else d=f[e>>2]|0;while(0);V7(r);V7(C);break a}while(0);V7(C);break b}while(0);V7(C);d=0;break a}else{c=z+8|0;if((mxa(f[c>>2]|0)|0?(g=z+12|0,q=f[g>>2]|0,i=q,G6a(f[q>>2]|0)|0):0)?(j=z+16|0,k=f[j>>2]|0,!(G6a(f[k>>2]|0)|0)):0){f[g>>2]=k;f[j>>2]=i}d=cN(z)|0;g:do if(!d){d=f[c>>2]|0;switch(d|0){case 16:case 15:{k=z+16|0;g=g$a(f[k>>2]|0)|0;if(g|0){if((d|0)==15?(ORa(g+8|0)|0)==0:0){d=f[a+36>>2]|0;Bbb(d)|0;U0a(C,d);d=mBa(f[C>>2]|0,20,f[z+12>>2]|0)|0;break a}d=z+12|0;e=EQ(f[d>>2]|0)|0;if(!e)break g;i=VHa(f[d>>2]|0)|0;p=xR(a,e,i)|0;f[d>>2]=p;d=g+8|0;p=ORa(d)|0;e=z1a(i)|0;q=t6a(p&~e)|0;if(!((q|0)!=0&q>>>0<(32-i|0)>>>0)?!((p&1<>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];d=z;break a}if(i>>>0<32){m$a(C,-2147483648);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];d=z;break a}else Ca(103505,103515,455,103553)}i=z+12|0;j=EQ(f[i>>2]|0)|0;if(!j){d=p$a(f[i>>2]|0)|0;if(!d)break g;e=EQ(f[k>>2]|0)|0;if(!e)break g;g=VHa(f[k>>2]|0)|0;i=d+9|0;if(!(b[i>>0]|0))break g;if((g|0)!=(h[d+8>>0]<<3|0))break g;b[i>>0]=0;d=xR(a,e,g)|0;f[k>>2]=d;d=z;break a}d=EQ(f[k>>2]|0)|0;if(d|0){e=VHa(f[i>>2]|0)|0;if((VHa(f[k>>2]|0)|0)!=(e|0))break g;C=xR(a,j,e)|0;f[i>>2]=C;d=xR(a,d,e)|0;f[k>>2]=d;d=z;break a}g=p$a(f[k>>2]|0)|0;if(!g)break g;d=VHa(f[i>>2]|0)|0;e=g+9|0;if(!(b[e>>0]|0))break g;if((d|0)!=(h[g+8>>0]<<3|0))break g;b[e>>0]=0;d=xR(a,j,d)|0;f[i>>2]=d;d=z;break a}case 0:{e=z+12|0;d=Y_a(f[e>>2]|0)|0;if(((d|0?(f[d+8>>2]|0)==1:0)?(l=d+12|0,m=g$a(f[l>>2]|0)|0,m|0):0)?(ORa(m+8|0)|0)==0:0){f[l>>2]=f[z+16>>2];break a}d=Y_a(f[z+16>>2]|0)|0;if(((d|0?(f[d+8>>2]|0)==1:0)?(o=d+12|0,p=g$a(f[o>>2]|0)|0,p|0):0)?(ORa(p+8|0)|0)==0:0){f[o>>2]=f[e>>2];break a}d=Wj(a,z)|0;if(!d)break g;else break a}case 1:{d=Wj(a,z)|0;if(!d)break g;else break a}default:break g}}else{e=vY(z,C)|0;g=f[C>>2]|0;do if(((g|0)==0?(n=p$a(Nv(d)|0)|0,(n|0)!=0):0)?u8a(b[n+20>>0]|0)|0:0){r=b[n+8>>0]|0;if(!((e|0)==8&r<<24>>24==1)?!((e|0)==16&r<<24>>24==2):0){B=18;break}i=n+9|0;if((n|0)==(d|0)|(b[i>>0]|0)!=0)b[i>>0]=1;else B=18}else B=18;while(0);if((B|0)==18){if((g+(Ii(d,a)|0)|0)>>>0>=e>>>0?!(r3(a,d,e)|0):0)break;d=ZP(z)|0}break a}while(0);k=z+16|0;j=g$a(f[k>>2]|0)|0;h:do if(j){do if((f[c>>2]|0)==7){e=ORa(j+8|0)|0;i=z+12|0;d=f[i>>2]|0;if((e|0)==-1)break a;g=p$a(d)|0;if(!g){e=roa(e)|0;if(!e)break;if((Ii(d,a)|0)>>>0>e>>>0)break;d=f[i>>2]|0;break a}else{r=b[g+8>>0]|0;if(!((e|0)==255&r<<24>>24==1)?!((e|0)==65535&r<<24>>24==2):0)break;b[g+9>>0]=0;break a}}while(0);d=gi(a,z)|0;if(d|0)break a;e=z+12|0;d=Y_a(f[e>>2]|0)|0;i:do if((d|0?(s=f[d+8>>2]|0,(s|0)==(f[c>>2]|0)):0)?(t=g$a(f[d+16>>2]|0)|0,t|0):0)switch(s|0){case 7:{a=t+8|0;qaa(C,a,j+8|0);f[a>>2]=f[C>>2];f[a+4>>2]=f[C+4>>2];f[a+8>>2]=f[C+8>>2];f[a+12>>2]=f[C+12>>2];break a}case 8:{a=t+8|0;taa(C,a,j+8|0);f[a>>2]=f[C>>2];f[a+4>>2]=f[C+4>>2];f[a+8>>2]=f[C+8>>2];f[a+12>>2]=f[C+12>>2];break a}case 37:case 36:case 35:case 12:case 11:case 10:{g=(Q4(t)|0)+(Q4(j)|0)|0;i=j+4|0;if((g|0)!=($Ga(g,f[i>>2]|0)|0))break i;C8(C,g,f[i>>2]|0);a=t+8|0;f[a>>2]=f[C>>2];f[a+4>>2]=f[C+4>>2];f[a+8>>2]=f[C+8>>2];f[a+12>>2]=f[C+12>>2];break a}default:break i}while(0);if((f[j+4>>2]|0)==1?(v=ORa(j+8|0)|0,yVa(v)|0):0)switch(f[c>>2]|0){case 2:{d=l_(z,v)|0;break a}case 6:{d=f1(z,v)|0;break a}default:break h}}else e=z+12|0;while(0);if(G6a(f[f[e>>2]>>2]|0)|0?(w=hB(a,z)|0,w|0):0){d=w;break a}d=f[c>>2]|0;if((d|0)==7){d=e$a(f[e>>2]|0)|0;if((((d|0)!=0?(f[d+8>>2]|0)==20:0)?(y=e$a(f[k>>2]|0)|0,(y|0)!=0):0)?(f[y+8>>2]|0)==20:0){C=d+12|0;a=f[C>>2]|0;f[C>>2]=z;f[e>>2]=a;f[k>>2]=f[y+12>>2];f[c>>2]=8;break a}else B=94}else if((d+-7|0)>>>0<2)B=94;if((B|0)==94){d=pi(a,z)|0;if(d|0)break a;d=f[c>>2]|0}if(R7(d)|0?(A=Kt(z)|0,A|0):0){d=A;break a}B=_Ya(f[a+40>>2]|0)|0;fA(C,B,f[e>>2]|0);if(lza(C)|0){V7(C);d=0;break a}x=0;d=ia(156,f[e>>2]|0,f[k>>2]|0)|0;B=x;x=0;if(B&1){d=Ia()|0;V7(C);break}V7(C);if(!d){d=0;break a}d=pG(a,z)|0;break a}while(0);Ua(d|0)}while(0);u=D;return d|0}function Mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+96|0;w=B+72|0;A=B+56|0;s=B+64|0;C=B+40|0;v=B+36|0;q=B+20|0;n=B+8|0;j=B+32|0;l=B;o=B+16|0;f[s>>2]=b;f[C>>2]=0;z=C+4|0;f[z>>2]=0;t=C+8|0;f[t>>2]=0;y=a+16|0;g=a+36|0;i=f[g>>2]|0;Bbb(i)|0;U0a(v,i);i=NFa(f[b>>2]|0)|0;m=a+56|0;c=Vz(m,s)|0;e=(c|0)==0;a:do if(!i){if(!e)_8(C,c+12|0);e=E_a(b)|0;if(e|0){if(!(Iab(f[e+4>>2]|0)|0)){r=164;break}d=e+12|0;c=f[d>>2]|0;if((f[c+4>>2]|0)==5){Uoa(y,c)|0;r=164;break}bLa(e,0);f[w>>2]=e;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,w|0);q=x;x=0;if(q&1){c=Ia()|0;break}}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ja(46,f[v>>2]|0,f[e+8>>2]|0,f[(f[d>>2]|0)+4>>2]|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}else{Uoa(y,c)|0;r=164;break}}i=n$a(b)|0;if(i|0){b=i+12|0;c=f[b>>2]|0;if(!c){r=164;break}g=f[c+4>>2]|0;if(!(o2a(g)|0))if((g|0)==5){Uoa(y,c)|0;r=164;break}else{x=0;wa(71,112102,112037,222,112062);x=0;c=Ia()|0;break}f[j>>2]=f[i+8>>2];x=0;f[w>>2]=f[j>>2];e=ja(82,a|0,w|0,g|0)|0;q=x;x=0;b:do if(!(q&1)){x=0;c=ja(45,v|0,e|0,f[b>>2]|0)|0;q=x;x=0;do if(!(q&1)){f[w>>2]=c;d=f[z>>2]|0;if(d>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,w|0);q=x;x=0;if(q&1)break}else{f[d>>2]=c;f[z>>2]=(f[z>>2]|0)+4}do if(f[i+16>>2]|0){f[w>>2]=i;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,w|0);q=x;x=0;if(q&1){c=Ia()|0;break a}}else{f[c>>2]=i;f[z>>2]=(f[z>>2]|0)+4}c=f[i+4>>2]|0;if(o2a(c)|0){x=0;c=ja(46,f[v>>2]|0,e|0,g|0)|0;q=x;x=0;if(q&1)break b;Uoa(y,c)|0;break}if((c|0)!=5){x=0;wa(71,112078,112037,215,112062);x=0;break b}x=0;c=ga(322,f[v>>2]|0)|0;q=x;x=0;if(q&1)break b;Uoa(y,c)|0}while(0);f[b>>2]=0;xqa(i);r=164;break a}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break}i=d$a(b)|0;if((i|0)!=0?(p=i+32|0,h=f[p>>2]|0,(h|0)!=0):0){j=f[h+4>>2]|0;if(!(o2a(j)|0))if((j|0)==5){Uoa(y,h)|0;r=164;break}else{x=0;wa(71,112102,112037,249,112062);x=0;c=Ia()|0;break}b=f[a+32>>2]|0;Bbb(b)|0;x=0;b=ia(96,b|0,j|0)|0;m=x;x=0;if(m&1){c=Ia()|0;break}x=0;c=ja(45,v|0,b|0,f[p>>2]|0)|0;m=x;x=0;do if(!(m&1)){f[w>>2]=c;d=f[z>>2]|0;if(d>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,w|0);m=x;x=0;if(m&1)break}else{f[d>>2]=c;f[z>>2]=(f[z>>2]|0)+4}yUa(q);g=i+8|0;I$a(A,g);GUa(n,g);g=A+4|0;e=f[n>>2]|0;c=f[n+4>>2]|0;while(1){if(!(lTa(f[A>>2]|0,f[g>>2]|0,e,c)|0)){r=135;break}x=0;d=ga(256,A|0)|0;r=x;x=0;if(r&1){r=141;break}f[l>>2]=f[d>>2];x=0;wa(82,w|0,q|0,l|0,l|0);r=x;x=0;if(r&1){r=141;break}RYa(A)}do if((r|0)==135){n=i+24|0;x=0;wa(82,A|0,q|0,n|0,n|0);n=x;x=0;if(n&1){c=Ia()|0;break}g=q+4|0;d=f[q>>2]|0;while(1){if((d|0)==(g|0)){r=159;break}f[o>>2]=f[d+16>>2];x=0;f[w>>2]=f[o>>2];c=ja(82,a|0,w|0,j|0)|0;r=x;x=0;if(r&1){r=158;break}x=0;e=ja(46,f[v>>2]|0,b|0,j|0)|0;r=x;x=0;if(r&1){r=158;break}x=0;c=ja(45,v|0,c|0,e|0)|0;r=x;x=0;if(r&1){r=158;break}f[A>>2]=c;e=f[z>>2]|0;if(e>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,A|0);r=x;x=0;if(r&1){r=158;break}}else{f[e>>2]=c;f[z>>2]=(f[z>>2]|0)+4}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}if((r|0)==158){c=Ia()|0;break}else if((r|0)==159){f[p>>2]=0;i7a(i);MTa(q);r=164;break a}}else if((r|0)==141)c=Ia()|0;while(0);MTa(q);break a}while(0);c=Ia()|0}else r=164}else{if(!e){x=0;wa(71,111999,112037,94,112062);x=0;c=Ia()|0;break}l=o$a(b)|0;if(l|0){k=f[g>>2]|0;Bbb(k)|0;IVa(w,k+144|0);k=l+12|0;I$a(A,k);GUa(q,k);j=A+4|0;i=f[q>>2]|0;h=f[q+4>>2]|0;c:while(1){if(!(lTa(f[A>>2]|0,f[j>>2]|0,i,h)|0)){r=21;break}x=0;c=ga(253,A|0)|0;r=x;x=0;if(r&1){r=13;break}g=f[c>>2]|0;f[n>>2]=g;c=Vz(m,n)|0;if(c|0){b=c+12|0;d=c+16|0;e=f[d>>2]|0;c=f[b>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(81,w|0,f[c>>2]|0);r=x;x=0;if(r&1){r=17;break c}c=c+4|0}f[d>>2]=f[b>>2]}x=0;ua(81,w|0,g|0);r=x;x=0;if(r&1){r=14;break}RYa(A)}d:do if((r|0)==13){c=Ia()|0;r=20}else if((r|0)==14){c=Ia()|0;r=20}else if((r|0)==17){c=Ia()|0;r=20}else if((r|0)==21){ema(k,w);g=f[l+4>>2]|0;e:do if(o2a(g)|0){c=AB(a+76|0,l+8|0)|0;if(!c){c=f[a+32>>2]|0;Bbb(c)|0;x=0;c=ia(96,c|0,g|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break d}}else c=f[c+12>>2]|0;x=0;e=ga(218,k|0)|0;q=x;x=0;do if(!(q&1)){d=f[e>>2]|0;if(o2a(f[d+4>>2]|0)|0){x=0;d=ja(45,v|0,c|0,d|0)|0;q=x;x=0;if(q&1)break;f[e>>2]=d}x=0;ua(1873,l|0,0);q=x;x=0;if(!(q&1)){x=0;c=ja(46,f[v>>2]|0,c|0,g|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break d}Uoa(y,c)|0;f[A>>2]=l;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,A|0);q=x;x=0;if(q&1){c=Ia()|0;break d}}else{f[c>>2]=l;f[z>>2]=(f[z>>2]|0)+4}break e}}while(0);c=Ia()|0;break d}while(0);x=0;ua(1873,l|0,0);q=x;x=0;if(q&1){c=Ia()|0;break}else{r=164;break a}}while(0);break}l=S$a(b)|0;if(!l){h=C$a(b)|0;if(!h){x=0;sa(5);x=0;c=Ia()|0;break}i=h+12|0;b=f[i>>2]|0;g=h+4|0;c=f[g>>2]|0;do if(o2a(c)|0){e=f[a+32>>2]|0;Bbb(e)|0;x=0;e=ia(96,e|0,c|0)|0;q=x;x=0;if((!(q&1)?(x=0,k=ja(45,v|0,e|0,f[i>>2]|0)|0,q=x,x=0,!(q&1)):0)?(f[i>>2]=k,x=0,d=ja(46,f[v>>2]|0,e|0,c|0)|0,q=x,x=0,!(q&1)):0){f[w>>2]=h;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,w|0);q=x;x=0;if(q&1){c=Ia()|0;break a}}else{f[c>>2]=h;f[z>>2]=(f[z>>2]|0)+4}f[g>>2]=0;c=f[i>>2]|0;break}c=Ia()|0;break a}else{d=h;c=b}while(0);x=0;c=ja(81,a|0,b|0,c|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}else{f[i>>2]=c;o_a(h);Uoa(y,d)|0;r=164;break}}x=0;b=ja(81,a|0,f[l+8>>2]|0,l|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}i=l+12|0;h=f[i>>2]|0;k=l+16|0;j=f[k>>2]|0;d=f[l+4>>2]|0;f[w>>2]=0;f:do if(o2a(d)|0){e=f[a+32>>2]|0;Bbb(e)|0;x=0;e=ia(96,e|0,d|0)|0;q=x;x=0;do if(!(q&1)){c=f[i>>2]|0;if(o2a(f[c+4>>2]|0)|0){x=0;c=ja(45,v|0,e|0,c|0)|0;q=x;x=0;if(q&1)break;f[i>>2]=c}c=f[k>>2]|0;if(c|0?o2a(f[c+4>>2]|0)|0:0){x=0;c=ja(45,v|0,e|0,c|0)|0;q=x;x=0;if(q&1)break;f[k>>2]=c}f[w>>2]=b;x=0;c=ja(46,f[v>>2]|0,e|0,d|0)|0;q=x;x=0;if(!(q&1)){g=c;c=f[i>>2]|0;d=b;e=b;r=59;break f}}while(0);c=Ia()|0}else{g=b;c=h;d=0;e=0;r=59}while(0);g:do if((r|0)==59){x=0;c=ja(81,a|0,h|0,c|0)|0;q=x;x=0;h:do if(!(q&1)){f[i>>2]=c;c=f[k>>2]|0;if(c|0){x=0;c=ja(81,a|0,j|0,c|0)|0;q=x;x=0;if(q&1)break;f[k>>2]=c}LI(l);do if(d|0){x=0;ta(506,d|0);q=x;x=0;if(q&1){c=Ia()|0;break g}c=f[z>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(640,C|0,w|0);q=x;x=0;if(q&1)break h;else break}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4;break}}while(0);Uoa(y,g)|0;r=164;break a}while(0);c=Ia()|0}while(0)}while(0);i:do if((r|0)==164){c=f[f[y>>2]>>2]|0;g=Bbb(c)|0;f[s>>2]=g;e=g;x=0;ta(506,g|0);q=x;x=0;if(q&1){c=Ia()|0;break}d=f[c>>2]|0;j:do if(!(G6a(d)|0)){b=f[c+4>>2]|0;k:do switch(b|0){case 5:{c=f[z>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(640,C|0,s|0);t=x;x=0;if(t&1)break k}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ga(322,f[v>>2]|0)|0;v=x;x=0;if(!(v&1)){Uoa(y,c)|0;break j}break}case 0:{if(V6a(d)|0)break j;c=f[z>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(640,C|0,s|0);t=x;x=0;if(t&1)break k}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ga(250,f[v>>2]|0)|0;v=x;x=0;if(!(v&1)){Uoa(y,c)|0;break j}break}default:{e=f[a+32>>2]|0;Bbb(e)|0;x=0;e=ia(96,e|0,b|0)|0;s=x;x=0;l:do if(!(s&1)){x=0;c=ja(45,v|0,e|0,g|0)|0;s=x;x=0;do if(!(s&1)){f[w>>2]=c;d=f[z>>2]|0;if(d>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1835,C|0,w|0);t=x;x=0;if(t&1)break}else{f[d>>2]=c;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ja(46,f[v>>2]|0,e|0,b|0)|0;v=x;x=0;if(v&1)break l;Uoa(y,c)|0;break j}while(0);c=Ia()|0;break i}while(0);c=Ia()|0;break i}}while(0);c=Ia()|0;break i}while(0);m:do if((f[C>>2]|0)!=(f[z>>2]|0)){x=0;c=ga(323,y|0)|0;v=x;x=0;n:do if(v&1)c=Ia()|0;else{f[w>>2]=c;o:do if((c|0)!=0?!(NFa(f[c>>2]|0)|0):0){x=0;i=ia(194,a+56|0,w|0)|0;y=x;x=0;if(y&1){c=Ia()|0;break n}d=f[z>>2]|0;e=i+4|0;g=i+8|0;c=f[C>>2]|0;while(1){if((c|0)==(d|0))break o;b=f[c>>2]|0;f[A>>2]=b;h=f[e>>2]|0;if((h|0)==(f[g>>2]|0)){x=0;ua(640,i|0,A|0);z=x;x=0;if(z&1)break}else{f[h>>2]=b;f[e>>2]=(f[e>>2]|0)+4}c=c+4|0}c=Ia()|0;break n}else r=202;while(0);do if((r|0)==202){c=Bbb(f[f[y>>2]>>2]|0)|0;f[A>>2]=c;x=0;c=ia(195,a+56|0,A|0)|0;A=x;x=0;if(A&1){c=Ia()|0;break n}else{_8(c,C);break}}while(0);break m}while(0);break i}while(0);uSa(C);u=B;return}while(0);uSa(C);Ua(c|0)}function Nc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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,X=0;P=u;u=u+192|0;R=P+16|0;V=P+172|0;S=P+160|0;X=P+136|0;T=P+120|0;Q=P+108|0;M=P;N=P+156|0;O=P+132|0;L=c+12|0;v=c+16|0;d=f[v>>2]|0;a:do if((Bbb(d)|0)>>>0>=2){w=a+28|0;y=X+16|0;z=X+4|0;A=X+12|0;B=X+16|0;C=X+8|0;D=V+16|0;E=V+4|0;F=V+12|0;G=V+16|0;H=V+8|0;I=T+4|0;J=T+8|0;K=a+32|0;t=a+20|0;c=0;b:while(1){if(c>>>0>=(d+-1|0)>>>0)break a;d=JDa(L,c)|0;d=h7(f[d>>2]|0)|0;if(d){fA(R,f[w>>2]|0,d);s=lza(R)|0;V7(R);j=c+1|0;if(s)c=j;else{f[X>>2]=0;f[X+4>>2]=0;f[X+8>>2]=0;f[X+12>>2]=0;f[y>>2]=1065353216;x=0;a=ia(75,L|0,c|0)|0;s=x;x=0;if(s&1){U=86;break}x=0;p=ga(291,f[a>>2]|0)|0;s=x;x=0;if(s&1){U=86;break}f[R>>2]=p;m=f[z>>2]|0;o=(m|0)==0;c:do if(!o){k=m+-1|0;l=(k&m|0)==0;if(!l)if(p>>>0>>0)e=p;else e=(p>>>0)%(m>>>0)|0;else e=k&p;a=f[(f[X>>2]|0)+(e<<2)>>2]|0;if(!a)U=25;else do{a=f[a>>2]|0;if(!a){U=25;break c}i=f[a+4>>2]|0;if((i|0)!=(p|0)){if(!l){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&k;if((i|0)!=(e|0)){U=25;break c}}}while((f[a+8>>2]|0)!=(p|0))}else{e=0;U=25}while(0);if((U|0)==25){U=0;x=0;wa(137,S|0,X|0,p|0,R|0);s=x;x=0;if(s&1){U=86;break}g=+(((f[A>>2]|0)+1|0)>>>0);h=+n[B>>2];do if(o|h*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;r=~~+W(+(g/h))>>>0;x=0;ua(803,X|0,(s>>>0>>0?r:s)|0);s=x;x=0;if(s&1){U=32;break b}a=f[z>>2]|0;e=a+-1|0;if(!(e&a)){k=a;e=e&p;break}if(p>>>0>>0){k=a;e=p}else{k=a;e=(p>>>0)%(a>>>0)|0}}else k=m;while(0);a=f[(f[X>>2]|0)+(e<<2)>>2]|0;if(!a){i=f[S>>2]|0;f[i>>2]=f[C>>2];f[C>>2]=i;f[(f[X>>2]|0)+(e<<2)>>2]=C;a=f[i>>2]|0;if(a|0){a=f[a+4>>2]|0;e=k+-1|0;if(e&k){if(a>>>0>=k>>>0)a=(a>>>0)%(k>>>0)|0}else a=a&e;f[(f[X>>2]|0)+(a<<2)>>2]=i}}else{s=f[S>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=s}f[A>>2]=(f[A>>2]|0)+1}s=j;d:while(1){if(s>>>0>=(Bbb(f[v>>2]|0)|0)>>>0)break;x=0;a=ia(75,L|0,s|0)|0;r=x;x=0;if(r&1){U=88;break b}x=0;a=ga(292,f[a>>2]|0)|0;r=x;x=0;if(r&1){U=88;break b}x=0;a=ia(156,a|0,d|0)|0;r=x;x=0;if(r&1){U=88;break b}if(!a)break;x=0;a=ia(75,L|0,s|0)|0;r=x;x=0;if(r&1){U=89;break b}x=0;p=ga(291,f[a>>2]|0)|0;r=x;x=0;if(r&1){U=89;break b}f[R>>2]=p;m=f[z>>2]|0;o=(m|0)==0;e:do if(o)e=0;else{k=m+-1|0;l=(k&m|0)==0;do if(l)e=k&p;else{if(p>>>0>>0){e=p;break}e=(p>>>0)%(m>>>0)|0}while(0);a=f[(f[X>>2]|0)+(e<<2)>>2]|0;if(!a)break;while(1){a=f[a>>2]|0;if(!a)break e;i=f[a+4>>2]|0;if((i|0)!=(p|0)){do if(l)i=i&k;else{if(i>>>0>>0)break;i=(i>>>0)%(m>>>0)|0}while(0);if((i|0)!=(e|0))break e}if((f[a+8>>2]|0)==(p|0)){U=67;break d}}}while(0);x=0;wa(137,V|0,X|0,p|0,R|0);r=x;x=0;if(r&1){U=89;break b}g=+(((f[A>>2]|0)+1|0)>>>0);h=+n[B>>2];do if(o|h*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;q=~~+W(+(g/h))>>>0;x=0;ua(803,X|0,(r>>>0>>0?q:r)|0);r=x;x=0;if(r&1){U=75;break b}a=f[z>>2]|0;e=a+-1|0;if(!(e&a)){k=a;e=e&p;break}if(p>>>0>>0){k=a;e=p;break}k=a;e=(p>>>0)%(a>>>0)|0}else k=m;while(0);a=f[(f[X>>2]|0)+(e<<2)>>2]|0;do if(!a){i=f[V>>2]|0;f[i>>2]=f[C>>2];f[C>>2]=i;f[(f[X>>2]|0)+(e<<2)>>2]=C;a=f[i>>2]|0;if(!a)break;a=f[a+4>>2]|0;e=k+-1|0;do if(!(e&k))a=a&e;else{if(a>>>0>>0)break;a=(a>>>0)%(k>>>0)|0}while(0);f[(f[X>>2]|0)+(a<<2)>>2]=i}else{r=f[V>>2]|0;f[r>>2]=f[a>>2];f[a>>2]=r}while(0);f[A>>2]=(f[A>>2]|0)+1;s=s+1|0}if((U|0)==67)U=0;k=s-c|0;if(k>>>0>2){x=0;a=ia(75,L|0,c|0)|0;r=x;x=0;if(r&1){U=98;break}x=0;a=ga(291,f[a>>2]|0)|0;r=x;x=0;if(r&1){U=98;break}r=a;i=a;while(1){if(j>>>0>=s>>>0)break;x=0;a=ia(75,L|0,j|0)|0;q=x;x=0;if(q&1){U=103;break b}a=f[a>>2]|0;x=0;e=ga(291,a|0)|0;q=x;x=0;if(q&1){U=104;break b}x=0;a=ga(291,a|0)|0;q=x;x=0;if(q&1){U=105;break b}j=j+1|0;r=e>>>0>>0?e:r;i=i>>>0>>0?a:i}q=i-r|0;if(!(q>>>0>1024|q>>>0>(k*3|0)>>>0)){f[V>>2]=0;f[V+4>>2]=0;f[V+8>>2]=0;f[V+12>>2]=0;f[D>>2]=1065353216;q=c;while(1){if(q>>>0>=s>>>0)break;x=0;a=ia(75,L|0,q|0)|0;p=x;x=0;if(p&1){U=146;break b}x=0;a=ga(293,f[a>>2]|0)|0;p=x;x=0;if(p&1){U=146;break b}m=a+8|0;p=v8a(m)|0;j=f[E>>2]|0;o=(j|0)==0;f:do if(o){e=0;U=126}else{k=j+-1|0;l=(k&j|0)==0;do if(l)e=k&p;else{if(p>>>0>>0){e=p;break}e=(p>>>0)%(j>>>0)|0}while(0);a=f[(f[V>>2]|0)+(e<<2)>>2]|0;if(!a){U=126;break}do{a=f[a>>2]|0;if(!a){U=126;break f}i=f[a+4>>2]|0;if((i|0)!=(p|0)){do if(l)i=i&k;else{if(i>>>0>>0)break;i=(i>>>0)%(j>>>0)|0}while(0);if((i|0)!=(e|0)){U=126;break f}}}while(!($1a(f[a+8>>2]|0,f[m>>2]|0)|0))}while(0);if((U|0)==126){U=0;x=0;wa(95,R|0,V|0,p|0,m|0);m=x;x=0;if(m&1){U=146;break b}g=+(((f[F>>2]|0)+1|0)>>>0);h=+n[G>>2];do if(o|h*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(680,V|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){U=133;break b}a=f[E>>2]|0;e=a+-1|0;if(!(e&a)){j=a;e=e&p;break}if(p>>>0>>0){j=a;e=p;break}j=a;e=(p>>>0)%(a>>>0)|0}while(0);a=f[(f[V>>2]|0)+(e<<2)>>2]|0;do if(!a){i=f[R>>2]|0;f[i>>2]=f[H>>2];f[H>>2]=i;f[(f[V>>2]|0)+(e<<2)>>2]=H;a=f[i>>2]|0;if(!a)break;a=f[a+4>>2]|0;e=j+-1|0;do if(!(e&j))a=a&e;else{if(a>>>0>>0)break;a=(a>>>0)%(j>>>0)|0}while(0);f[(f[V>>2]|0)+(a<<2)>>2]=i}else{p=f[R>>2]|0;f[p>>2]=f[a>>2];f[a>>2]=p}while(0);f[F>>2]=(f[F>>2]|0)+1}q=q+1|0}tab(S);e=0;do{x=0;ua(91,Q|0,e|0);e=e+1|0;q=x;x=0;if(q&1){U=155;break b}x=0;ia(83,Q|0,91205)|0;q=x;x=0;if(q&1){U=156;break b}f[T>>2]=f[Q>>2];f[T+4>>2]=f[Q+4>>2];f[T+8>>2]=f[Q+8>>2];a=0;while(1){if((a|0)==3)break;f[Q+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,R|0,T|0);q=x;x=0;if(q&1){U=157;break b}a=f[R>>2]|0;f[S>>2]=a;HTa(T);HTa(Q)}while((rB(V,S)|0)!=0);f[T>>2]=0;f[I>>2]=0;f[J>>2]=0;k=c;e=a;while(1){if(k>>>0>=s>>>0)break;x=0;a=ia(75,L|0,k|0)|0;q=x;x=0;if(q&1){U=173;break b}x=0;a=ga(293,f[a>>2]|0)|0;q=x;x=0;if(q&1){U=173;break b}j=f[a+8>>2]|0;x=0;a=ia(75,L|0,k|0)|0;q=x;x=0;if(q&1){U=175;break b}x=0;a=ga(291,f[a>>2]|0)|0;q=x;x=0;if(q&1){U=175;break b}e=a-r|0;while(1){a=f[I>>2]|0;q=f[T>>2]|0;i=q;if(a-q>>2>>>0>e>>>0)break;if((f[J>>2]|0)==(a|0)){x=0;ua(1502,T|0,S|0);q=x;x=0;if(q&1){U=174;break b}}else{f[a>>2]=f[S>>2];f[I>>2]=(f[I>>2]|0)+4}}a=f[S>>2]|0;if(!($1a(f[i+(e<<2)>>2]|0,a)|0)){U=178;break b}f[i+(e<<2)>>2]=j;k=k+1|0;e=a}q=f[t>>2]|0;Bbb(q)|0;U0a(Q,q);if(r){m$a(M,r);x=0;f[R>>2]=f[M>>2];f[R+4>>2]=f[M+4>>2];f[R+8>>2]=f[M+8>>2];f[R+12>>2]=f[M+12>>2];a=ia(50,Q|0,R|0)|0;r=x;x=0;if(r&1){U=183;break}x=0;d=ka(7,f[Q>>2]|0,1,d|0,a|0)|0;r=x;x=0;if(r&1){U=183;break}}f[N>>2]=e;f[O>>2]=e;x=0;f[R>>2]=f[O>>2];d=ka(18,Q|0,T|0,R|0,d|0)|0;r=x;x=0;if(r&1){U=183;break}x=0;f[R>>2]=f[N>>2];d=ja(72,Q|0,R|0,d|0)|0;r=x;x=0;if(r&1){U=183;break}e=s+-1|0;x=0;a=ia(75,L|0,e|0)|0;r=x;x=0;if(r&1){U=183;break}f[a>>2]=d;while(1){if(c>>>0>=e>>>0)break;x=0;d=ia(75,L|0,c|0)|0;r=x;x=0;if(r&1){U=192;break b}pVa(f[d>>2]|0);c=c+1|0}b[K>>0]=1;uSa(T);NQa(V)}}NQa(X);c=s}}else c=c+1|0;d=f[v>>2]|0}switch(U|0){case 32:{c=Ia()|0;d=f[S>>2]|0;f[S>>2]=0;if(d|0)ubb(d);U=87;break}case 75:{c=Ia()|0;d=f[V>>2]|0;f[V>>2]=0;if(d|0)ubb(d);U=90;break}case 86:{c=Ia()|0;U=87;break}case 88:{c=Ia()|0;break}case 89:{c=Ia()|0;U=90;break}case 98:{c=Ia()|0;break}case 103:{c=Ia()|0;break}case 104:{c=Ia()|0;break}case 105:{c=Ia()|0;break}case 133:{c=Ia()|0;d=f[R>>2]|0;f[R>>2]=0;if(d|0)ubb(d);U=147;break}case 146:{c=Ia()|0;U=147;break}case 155:{c=Ia()|0;U=159;break}case 156:{c=Ia()|0;U=158;break}case 157:{c=Ia()|0;HTa(T);U=158;break}case 173:{c=Ia()|0;U=194;break}case 174:{c=Ia()|0;U=176;break}case 175:{c=Ia()|0;U=176;break}case 178:{x=0;wa(71,91214,91090,843,91242);x=0;c=Ia()|0;U=176;break}case 183:{c=Ia()|0;U=193;break}case 192:{c=Ia()|0;U=193;break}}if((U|0)!=87)if((U|0)!=90)if((U|0)==147)U=196;else if((U|0)==158){HTa(Q);U=159}else if((U|0)==176)U=194;else if((U|0)==193)U=194;if((U|0)==159)U=195;else if((U|0)==194){uSa(T);U=195}if((U|0)==195)U=196;if((U|0)==196)NQa(V);NQa(X);Ua(c|0)}while(0);u=P;return}function Oc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;M=u;u=u+128|0;N=M+104|0;t=M+100|0;O=M+88|0;A=M+76|0;B=M+68|0;G=M+52|0;F=M+40|0;C=M+36|0;w=M+24|0;E=M+12|0;D=M;y=M+72|0;z=M+64|0;L=qwa(f[c>>2]|0,0)|0;if(!((b[a+112>>0]|0)==0|d^1))aaa(L+12|0,F_(c,0)|0);e=f[a+104>>2]|0;if(e|0)aaa(L+12|0,e);s=a+48|0;e=Bbb(f[a+56>>2]|0)|0;if(!e)rt(L);else{g=(f[a+96>>2]|0)+8|0;h=f[g>>2]|0;n=nUa(h)|0;J=(n|0)!=0;if(J?(f[g>>2]=f[h+8>>2],(f[n+28>>2]|0)==(e|0)):0)H=(f[a+108>>2]|0)!=0;else H=1;f[t>>2]=0;m=a+64|0;g=Bbb(f[m>>2]|0)|0;v=a+108|0;I=L6a(s)|0;e=g;k=0;i=0;j=0;while(1){l=e;if((I|0)==(l|0))break;h=f[e+12>>2]|0;if(!(f[v>>2]|0))if(!(f[h+8>>2]|0))K=16;else h=k;else if(!(f[h+12>>2]|0))K=16;else h=k;if((K|0)==16){K=0;if(j|0){K=17;break}h=f[e+8>>2]|0;j=h;i=j}e=f[l+4>>2]|0;k=h}if((K|0)==17)Ca(89190,88981,202,89004);f[t>>2]=k;if(!i)Ca(89275,88981,206,89004);a:do if(!(f[v>>2]|0)){f[N>>2]=0;r=N+4|0;f[r>>2]=0;q=N+8|0;f[q>>2]=0;p=n+20|0;o=n+20|0;e=0;n=0;a=0;b:while(1){m=g;l=(I|0)==(m|0);if(!l){h=f[g+8>>2]|0;if((h|0)!=(f[t>>2]|0)){g=f[g+12>>2]|0;if(!(f[g+8>>2]|0)){K=28;break}else{j=h;k=g;K=31}}else{h=n;g=a}}else{g=f[t>>2]|0;x=0;h=ia(146,s|0,t|0)|0;K=x;x=0;if(K&1){K=25;break}j=g;k=f[h>>2]|0;K=31}do if((K|0)==31){K=0;if(H)i=(b[j+112>>0]|0)!=0;else i=0;if(J?hra(p,f[j+100>>2]|0)|0:0){g=k+4|0;if((f[g>>2]|0)!=1){K=36;break b}f[g>>2]=0;h=1}else h=0;if(!((!i?!(h|(f[k+4>>2]|0)!=0):0)?!(f[k+16>>2]|0):0)){x=0;g=ka(17,k|0,c|0,j|0,i|0)|0;G=x;x=0;if(G&1){K=46;break b}if(h){h=(rX(o,f[j+100>>2]|0)|0)+20|0;h=f[h>>2]|0;x=0;h=ja(f[(f[h>>2]|0)+8>>2]|0,h|0,c|0,d|0)|0;G=x;x=0;if(G&1){K=46;break b}x=0;g=ja(70,c|0,g|0,h|0)|0;G=x;x=0;if(G&1){K=46;break b}}if(g|0){if(l){K=49;break b}x=0;i=ka(8,c|0,f[k+8>>2]|0,g|0,0)|0;G=x;x=0;if(G&1){K=69;break b}f[O>>2]=i;g=f[r>>2]|0;h=i;if((g|0)==(f[q>>2]|0)){x=0;ua(1499,N|0,O|0);G=x;x=0;if(G&1){K=69;break b}}else{f[g>>2]=h;f[r>>2]=(f[r>>2]|0)+4}if(!n){if(e|0){K=68;break b}g=i;e=i}else{f[n+16>>2]=h;LI(n);g=f[O>>2]|0}h=g;g=a;break}}x=0;g=ja(53,f[c>>2]|0,20,f[k+8>>2]|0)|0;G=x;x=0;if(G&1){K=78;break b}if(a){x=0;g=ka(7,f[c>>2]|0,7,a|0,g|0)|0;G=x;x=0;if(G&1){K=78;break b}}if(l){K=81;break b}else h=n}while(0);n=h;a=g;g=f[m+4>>2]|0}c:do if((K|0)==25){e=Ia()|0;K=26}else if((K|0)==28){x=0;wa(71,89289,88981,227,89004);x=0;e=Ia()|0;K=26}else if((K|0)==36){x=0;wa(71,89308,88981,235,89004);x=0;e=Ia()|0}else if((K|0)==46)e=Ia()|0;else if((K|0)==49){d:do if(a){x=0;g=ka(8,c|0,a|0,g|0,0)|0;d=x;x=0;if(!(d&1)){x=0;h=ga(260,g|0)|0;d=x;x=0;do if(!(d&1)){f[O>>2]=h;i=f[r>>2]|0;if(i>>>0>=(f[q>>2]|0)>>>0){x=0;ua(1501,N|0,O|0);O=x;x=0;if(O&1)break}else{f[i>>2]=h;f[r>>2]=(f[r>>2]|0)+4}K=58;break d}while(0);e=Ia()|0;break c}}else K=58;while(0);if((K|0)==58){if(n|0){f[n+16>>2]=g;LI(n);K=81;break}if(!e){e=g;K=81;break}x=0;wa(71,89339,88981,257,89004);x=0}e=Ia()|0}else if((K|0)==68){x=0;wa(71,89339,88981,267,89004);x=0;e=Ia()|0;K=70}else if((K|0)==69){e=Ia()|0;K=70}else if((K|0)==78)e=Ia()|0;while(0);if((K|0)!=26)if((K|0)!=70)if((K|0)==81){while(1){g=f[r>>2]|0;if((g|0)==(f[N>>2]|0))break;d=g+-4|0;O=f[d>>2]|0;f[r>>2]=d;LI(O)}uSa(N);break}uSa(N);K=181}else{f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;WZ(N,89345,h7a(89345)|0);x=0;ua(1283,A|0,f[a+100>>2]|0);t=x;x=0;do if(t&1){e=Ia()|0;K=101}else{t=b[A+11>>0]|0;s=t<<24>>24<0;x=0;ja(49,N|0,(s?f[A>>2]|0:A)|0,(s?f[A+4>>2]|0:t&255)|0)|0;t=x;x=0;if(t&1){e=Ia()|0;HTa(A);K=101;break}f[O>>2]=f[N>>2];f[O+4>>2]=f[N+4>>2];f[O+8>>2]=f[N+8>>2];e=0;while(1){if((e|0)==3)break;f[N+(e<<2)>>2]=0;e=e+1|0}HTa(A);HTa(N);x=0;va(128,N|0,O|0,89353);t=x;x=0;do if(t&1){e=Ia()|0;K=104}else{x=0;ua(83,A|0,N|0);t=x;x=0;if(t&1){e=Ia()|0;HTa(N);K=104;break}HTa(N);x=0;va(128,N|0,O|0,89362);t=x;x=0;do if(t&1){e=Ia()|0;K=107}else{x=0;ua(83,B|0,N|0);t=x;x=0;if(t&1){e=Ia()|0;HTa(N);K=107;break}HTa(N);yUa(G);x=0;t=ia(99,f[c>>2]|0,0)|0;s=x;x=0;if(s&1)e=Ia()|0;else{f[F>>2]=0;o=F+4|0;f[o>>2]=0;p=F+8|0;f[p>>2]=0;q=n+20|0;r=D+11|0;s=D+4|0;n=n+20|0;e=t;g=Bbb(f[m>>2]|0)|0;e:while(1){m=g;if((I|0)==(m|0)){K=98;break}j=g;k=f[j+8>>2]|0;j=f[j+12>>2]|0;tab(C);a=j+12|0;if(!(f[a>>2]|0)){l=f[A>>2]|0;f[C>>2]=l}else{x=0;va(128,E|0,O|0,89369);K=x;x=0;if(K&1){K=118;break}x=0;ua(1283,D|0,f[k+100>>2]|0);K=x;x=0;if(K&1){K=119;break}K=b[r>>0]|0;l=K<<24>>24<0;x=0;ja(49,E|0,(l?f[D>>2]|0:D)|0,(l?f[s>>2]|0:K&255)|0)|0;K=x;x=0;if(K&1){K=120;break}f[w>>2]=f[E>>2];f[w+4>>2]=f[E+4>>2];f[w+8>>2]=f[E+8>>2];g=0;while(1){if((g|0)==3)break;f[E+(g<<2)>>2]=0;g=g+1|0}x=0;ua(83,N|0,w|0);K=x;x=0;if(K&1){K=121;break}l=f[N>>2]|0;f[C>>2]=l;HTa(w);HTa(D);HTa(E)}if(H)i=(b[k+112>>0]|0)!=0;else i=0;do if(J){if(!(hra(q,f[k+100>>2]|0)|0)){h=0;break}g=j+4|0;if((f[g>>2]|0)!=1){K=131;break e}f[g>>2]=0;h=1}else h=0;while(0);do if(!i){if(h|(f[j+4>>2]|0)!=0){K=136;break}if(!(f[j+16>>2]|0))K=150;else K=136}else K=136;while(0);do if((K|0)==136){x=0;g=ka(17,j|0,c|0,k|0,i|0)|0;K=x;x=0;if(K&1){K=141;break e}if(h){h=(rX(n,f[k+100>>2]|0)|0)+20|0;h=f[h>>2]|0;x=0;h=ja(f[(f[h>>2]|0)+8>>2]|0,h|0,c|0,d|0)|0;K=x;x=0;if(K&1){K=141;break e}x=0;g=ja(70,c|0,g|0,h|0)|0;K=x;x=0;if(K&1){K=141;break e}}if(!g){K=150;break}x=0;h=ia(99,f[c>>2]|0,0)|0;K=x;x=0;if(K&1){K=149;break e}i=h+12|0;x=0;ua(81,i|0,e|0);K=x;x=0;if(K&1){K=149;break e}f[e+8>>2]=l;x=0;ua(81,i|0,g|0);K=x;x=0;if(K&1){K=149;break e}if((f[g+4>>2]|0)==5){e=h;K=157;break}f[y>>2]=f[B>>2];x=0;f[N>>2]=f[y>>2];e=ka(12,c|0,N|0,0,0)|0;K=x;x=0;if(K&1){K=149;break e}x=0;ua(81,i|0,e|0);K=x;x=0;if(K&1){K=149;break e}else{e=h;K=157}}while(0);do if((K|0)==150){j=f[B>>2]|0;f[C>>2]=j;g=f[a>>2]|0;if(g|0){K=158;break}i=f[o>>2]|0;g=f[A>>2]|0;h=f[F>>2]|0;while(1){if((h|0)==(i|0))break;if($1a(f[h>>2]|0,g)|0)f[h>>2]=j;h=h+4|0}f[A>>2]=j;K=157}while(0);if((K|0)==157){K=0;g=f[a>>2]|0;if(g)K=158}f:do if((K|0)==158){k=f[g+4>>2]|0;g=f[g>>2]|0;while(1){if((g|0)==(k|0))break f;h=f[g>>2]|0;while(1){i=f[o>>2]|0;j=f[F>>2]|0;if(i-j>>2>>>0>h>>>0)break;if((f[p>>2]|0)==(i|0)){x=0;ua(1502,F|0,A|0);K=x;x=0;if(K&1){K=166;break e}}else{f[i>>2]=f[A>>2];f[o>>2]=(f[o>>2]|0)+4}}f[j+(h<<2)>>2]=f[C>>2];g=g+4|0}}while(0);g=f[m+4>>2]|0}if((K|0)==98){f[e+8>>2]=f[B>>2];f[z>>2]=f[A>>2];g=f[v>>2]|0;x=0;f[N>>2]=f[z>>2];g=ka(18,c|0,F|0,N|0,g|0)|0;N=x;x=0;do if(!(N&1)){x=0;ua(81,t+12|0,g|0);N=x;x=0;if(N&1)break;uSa(F);TCa(G);HTa(O);break a}while(0);e=Ia()|0}else if((K|0)==118){e=Ia()|0;K=124}else if((K|0)==119){e=Ia()|0;K=123}else if((K|0)==120){e=Ia()|0;K=122}else if((K|0)==121){e=Ia()|0;HTa(w);K=122}else if((K|0)==131){x=0;wa(71,89308,88981,315,89004);x=0;e=Ia()|0;K=169}else if((K|0)==141){e=Ia()|0;K=169}else if((K|0)==149){e=Ia()|0;K=169}else if((K|0)==166){e=Ia()|0;K=169}if((K|0)==122){HTa(D);K=123}if((K|0)==123){HTa(E);K=124}if((K|0)==124)K=169;uSa(F)}TCa(G)}while(0)}while(0);HTa(O)}while(0);if((K|0)==101)HTa(N);K=181}while(0);if((K|0)==181)Ua(e|0);if(e|0)aaa(L+12|0,e);rt(L)}u=M;return L|0}function Pc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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=u;u=u+48|0;S=U+36|0;V=U+24|0;Q=U+8|0;R=U;a:do if((a|0)!=(c|0)?(b[a>>0]|0)==78:0){g=QZ(a+1|0,c,S)|0;b:do if((g|0)!=(c|0)){h=d+52|0;f[h>>2]=0;switch(b[g>>0]|0){case 82:{e=1;O=6;break}case 79:{e=2;O=6;break}default:{}}if((O|0)==6){f[h>>2]=e;g=g+1|0}P=d+4|0;e=f[P>>2]|0;if(e>>>0<(f[d+8>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;N5(e);f[P>>2]=(f[P>>2]|0)+24}else SA(d);if(((c-g|0)>1?(b[g>>0]|0)==83:0)?(b[g+1>>0]|0)==116:0){tta((f[P>>2]|0)+-24|0,124652);g=g+2|0}if((g|0)==(c|0)){g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;V=e+-1|0;JJa(g+(V*24|0)|0);e=V}f[P>>2]=g+-24;break}k=V+11|0;l=V+4|0;j=d+12|0;N=d+20|0;m=d+24|0;n=Q+11|0;o=Q+4|0;p=Q+11|0;q=Q+4|0;r=Q+12|0;s=Q+4|0;t=Q+8|0;v=d+16|0;w=Q+12|0;y=Q+4|0;z=Q+8|0;A=Q+11|0;B=Q+4|0;C=Q+12|0;D=Q+4|0;E=Q+8|0;F=Q+11|0;G=Q+4|0;H=Q+12|0;I=Q+4|0;J=Q+8|0;K=Q+12|0;L=Q+4|0;M=Q+8|0;i=0;c:while(1){d:while(1){e=b[g>>0]|0;if(e<<24>>24==69){O=146;break c}switch(e<<24>>24|0){case 83:{O=23;break d}case 84:{O=50;break d}case 68:{O=75;break d}case 73:{h=jg(g,c,d)|0;if((h|0)==(g|0)|(h|0)==(c|0))break b;eY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;O=e+-1|0;JJa(g+(O*24|0)|0);e=O}f[P>>2]=g+-24;O=b[k>>0]|0;e=O<<24>>24<0;x=0;ja(97,g+-48|0,(e?f[V>>2]|0:V)|0,(e?f[l>>2]|0:O&255)|0)|0;O=x;x=0;if(O&1){O=112;break c}O=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,O|0,R|0);O=x;x=0;if(O&1){O=113;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3195,v|0,Q|0);O=x;x=0;if(O&1){O=114;break c}}else{f[e+12>>2]=f[r>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[s>>2];f[e+8>>2]=f[t>>2];f[t>>2]=0;f[s>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}ZX(Q);HTa(V);g=h;break}case 76:{g=g+1|0;if((g|0)==(c|0))break b;break}default:{O=119;break d}}}e:do if((O|0)==23){O=0;i=g+1|0;if((i|0)!=(c|0)?(b[i>>0]|0)==116:0){O=119;break}i=Qg(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;eY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;JJa(g+(h*24|0)|0);e=h}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3203,h|0,V|0);h=x;x=0;if(h&1){O=40;break c}}else{x=0;va(185,Q|0,123348,V|0);h=x;x=0;if(h&1){O=41;break c}h=b[A>>0]|0;g=h<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(g?f[Q>>2]|0:Q)|0,(g?f[B>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){O=42;break c}HTa(Q);h=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,h|0,R|0);h=x;x=0;if(h&1){O=44;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3195,v|0,Q|0);h=x;x=0;if(h&1){O=45;break c}}else{f[e+12>>2]=f[K>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[L>>2];f[e+8>>2]=f[M>>2];f[M>>2]=0;f[L>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}ZX(Q)}HTa(V);g=i}else if((O|0)==50){O=0;i=Ej(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;eY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;JJa(g+(h*24|0)|0);e=h}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3203,h|0,V|0);h=x;x=0;if(h&1){O=61;break c}}else{x=0;va(185,Q|0,123348,V|0);h=x;x=0;if(h&1){O=62;break c}h=b[p>>0]|0;g=h<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(g?f[Q>>2]|0:Q)|0,(g?f[q>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){O=63;break c}HTa(Q)}h=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,h|0,R|0);h=x;x=0;if(h&1){O=71;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3195,v|0,Q|0);h=x;x=0;if(h&1){O=72;break c}}else{f[e+12>>2]=f[C>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[D>>2];f[e+8>>2]=f[E>>2];f[E>>2]=0;f[D>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}ZX(Q);HTa(V);g=i}else if((O|0)==75){O=0;e=g+1|0;if((e|0)!=(c|0))switch(b[e>>0]|0){case 84:case 116:break;default:{O=119;break e}}i=cp(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;eY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;JJa(g+(h*24|0)|0);e=h}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3203,h|0,V|0);h=x;x=0;if(h&1){O=88;break c}}else{x=0;va(185,Q|0,123348,V|0);h=x;x=0;if(h&1){O=89;break c}h=b[F>>0]|0;g=h<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(g?f[Q>>2]|0:Q)|0,(g?f[G>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){O=90;break c}HTa(Q)}h=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,h|0,R|0);h=x;x=0;if(h&1){O=98;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3195,v|0,Q|0);h=x;x=0;if(h&1){O=99;break c}}else{f[e+12>>2]=f[H>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[I>>2];f[e+8>>2]=f[J>>2];f[J>>2]=0;f[I>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}ZX(Q);HTa(V);g=i}while(0);if((O|0)==119){i=jM(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;eY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;O=e+-1|0;JJa(g+(O*24|0)|0);e=O}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3203,h|0,V|0);O=x;x=0;if(O&1){O=130;break}}else{x=0;va(185,Q|0,123348,V|0);O=x;x=0;if(O&1){O=131;break}O=b[n>>0]|0;h=O<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(h?f[Q>>2]|0:Q)|0,(h?f[o>>2]|0:O&255)|0)|0;O=x;x=0;if(O&1){O=132;break}HTa(Q)}O=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,O|0,R|0);O=x;x=0;if(O&1){O=141;break}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3195,v|0,Q|0);O=x;x=0;if(O&1){O=142;break}}else{f[e+12>>2]=f[w>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[y>>2];f[e+8>>2]=f[z>>2];f[z>>2]=0;f[y>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}ZX(Q);HTa(V);g=i}i=1}switch(O|0){case 40:{a=Ia()|0;O=49;break}case 41:{a=Ia()|0;O=43;break}case 42:{a=Ia()|0;HTa(Q);O=43;break}case 44:{a=Ia()|0;O=46;break}case 45:{a=Ia()|0;ZX(Q);O=46;break}case 61:{a=Ia()|0;O=74;break}case 62:{a=Ia()|0;O=64;break}case 63:{a=Ia()|0;HTa(Q);O=64;break}case 71:{a=Ia()|0;O=73;break}case 72:{a=Ia()|0;ZX(Q);O=73;break}case 88:{a=Ia()|0;O=101;break}case 89:{a=Ia()|0;O=91;break}case 90:{a=Ia()|0;HTa(Q);O=91;break}case 98:{a=Ia()|0;O=100;break}case 99:{a=Ia()|0;ZX(Q);O=100;break}case 112:{a=Ia()|0;O=116;break}case 113:{a=Ia()|0;O=115;break}case 114:{a=Ia()|0;ZX(Q);O=115;break}case 130:{a=Ia()|0;O=144;break}case 131:{a=Ia()|0;O=133;break}case 132:{a=Ia()|0;HTa(Q);O=133;break}case 141:{a=Ia()|0;O=143;break}case 142:{a=Ia()|0;ZX(Q);O=143;break}case 146:{a=g+1|0;f[d+48>>2]=f[S>>2];if(i?(T=f[N>>2]|0,(f[d+16>>2]|0)!=(T|0)):0){e=0;while(1){if((e|0)==-1)break;V=e+-1|0;ZX(T+(V<<4)|0);e=V}f[N>>2]=T+-16}break a}}if((O|0)==43)O=49;else if((O|0)==46)O=49;else if((O|0)==64)O=74;else if((O|0)==73)O=74;else if((O|0)==91)O=101;else if((O|0)==100)O=101;else if((O|0)==115)O=116;else if((O|0)==133)O=144;else if((O|0)==143)O=144;if((O|0)==49)HTa(V);else if((O|0)==74)HTa(V);else if((O|0)==101)HTa(V);else if((O|0)==116)HTa(V);else if((O|0)==144)HTa(V);Ua(a|0)}while(0)}while(0);u=U;return a|0}function Qc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;I=u;u=u+144|0;F=I+136|0;L=I+132|0;o=I+124|0;p=I+120|0;J=I+104|0;q=I+128|0;t=I+108|0;v=I+92|0;z=I+80|0;A=I+68|0;y=I+64|0;D=I+52|0;B=I+40|0;C=I+28|0;G=I+16|0;E=I+12|0;H=I;Aua(L);x=0;e=ia(69,c|0,1)|0;w=x;x=0;a:do if(w&1)K=12;else{do if(lRa(e)|0){x=0;e=ia(69,c|0,1)|0;w=x;x=0;if(w&1){K=12;break a}if(u8a(b[e>>0]|0)|0){x=0;e=ia(69,c|0,1)|0;w=x;x=0;if(w&1){K=12;break a}x=0;e=ga(295,e|0)|0;w=x;x=0;if(w&1){K=12;break a}x=0;e=ga(299,e|0)|0;w=x;x=0;if(w&1){K=12;break a}if(e){K=14;break}}x=0;e=ia(69,c|0,1)|0;w=x;x=0;if(!(w&1)?(x=0,g=ga(295,e|0)|0,w=x,x=0,!(w&1)):0){E1a(F,g);i=f[L>>2]|0;f[i>>2]=f[F>>2];h=2;w=L;g=a+48|0;n=i;break}e=Ia()|0;break a}else K=14;while(0);do if((K|0)==14){g=a+48|0;x=0;e=ga(226,f[g>>2]|0)|0;w=x;x=0;if(w&1){e=Ia()|0;break a}else{i=f[L>>2]|0;f[i>>2]=e;h=1;w=L;n=i;break}}while(0);f[g>>2]=(f[g>>2]|0)+1;e=a+36|0;g=f[e>>2]|0;if((g|0)==(f[a+40>>2]|0)){x=0;ua(1502,a+32|0,i|0);K=x;x=0;if(K&1){K=12;break}}else{f[g>>2]=f[i>>2];f[e>>2]=(f[e>>2]|0)+4}tab(o);tab(p);j=0;k=0;e=0;l=f[o>>2]|0;m=f[p>>2]|0;b:while(1){x=0;g=ga(294,c|0)|0;K=x;x=0;if(K&1){K=36;break}if(h>>>0>=g>>>0){K=68;break}x=0;g=ia(69,c|0,h|0)|0;K=x;x=0;if(K&1){K=36;break}if(!(b8a(b[g>>0]|0)|0)){K=68;break}x=0;i=ia(69,c|0,h|0)|0;K=x;x=0;if(K&1){K=39;break}x=0;g=ia(69,i|0,0)|0;K=x;x=0;if(K&1){K=39;break}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=39;break}do if(!($1a(g,f[33105]|0)|0)){x=0;g=ia(69,i|0,0)|0;K=x;x=0;if(K&1){K=39;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=39;break b}if($1a(g,f[33104]|0)|0){x=0;g=ia(69,i|0,1)|0;K=x;x=0;if(K&1){K=59;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=59;break b}E1a(F,g);l=f[F>>2]|0;x=0;g=ia(69,i|0,2)|0;K=x;x=0;if(K&1){K=60;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=60;break b}E1a(F,g);i=f[F>>2]|0;g=l;break}x=0;g=ia(69,i|0,0)|0;K=x;x=0;if(K&1){K=39;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=39;break b}if(!($1a(g,f[33084]|0)|0)){K=68;break b}x=0;e=ia(69,i|0,1)|0;K=x;x=0;if(K&1){K=39;break b}x=0;e=ga(295,e|0)|0;K=x;x=0;if(K&1){K=39;break b}x=0;e=ia(159,e|0,0)|0;K=x;x=0;if(K&1){K=39;break b}else{j=1;i=m;g=l}}else{x=0;ta(494,J|0);K=x;x=0;if(K&1){K=40;break b}x=0;g=ia(69,i|0,1)|0;K=x;x=0;if(K&1){K=41;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=41;break b}E1a(F,g);g=f[J>>2]|0;K=f[F>>2]|0;f[g>>2]=K;f[g+4>>2]=f[n>>2];f[g+8>>2]=3;i=f[a>>2]|0;f[q>>2]=K;f[F>>2]=f[q>>2];if(cna(i,F)|0){K=33;break b}f[J>>2]=0;x=0;ua(70,i|0,g|0);K=x;x=0;if(K&1){K=42;break b}f[J>>2]=0;k=1;i=m;g=l}while(0);h=h+1|0;l=g;m=i}c:do if((K|0)==33){f[o>>2]=l;f[p>>2]=m;i=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;K=h7a(93685)|0;x=0;va(87,t|0,93685,K|0);K=x;x=0;if(!(K&1)){x=0;wa(138,i|0,t|0,f[c+28>>2]|0,f[c+32>>2]|0);K=x;x=0;if(K&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}e=Ia()|0;HTa(t);if(!h){K=48;break}}else e=Ia()|0;La(i|0);K=48}else if((K|0)==36){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;K=38}else if((K|0)==39){e=Ia()|0;f[o>>2]=l;f[p>>2]=m}else if((K|0)==40){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;K=50}else if((K|0)==41){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;g=f[J>>2]|0;K=48}else if((K|0)==42){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;f[J>>2]=0;K=50}else if((K|0)==59){e=Ia()|0;f[o>>2]=l;f[p>>2]=m}else if((K|0)==60){e=Ia()|0;f[o>>2]=l;f[p>>2]=m}else if((K|0)==68){f[o>>2]=l;f[p>>2]=m;i=l;if(j&k){h=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;J=h7a(93808)|0;x=0;va(87,v|0,93808,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,v|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(v);if(!g)break}else e=Ia()|0;La(h|0);break}if(!e){g=h+1|0;x=0;e=ia(69,c|0,h|0)|0;v=x;x=0;if((!(v&1)?(x=0,r=ga(295,e|0)|0,v=x,x=0,!(v&1)):0)?(x=0,s=ia(159,r|0,0)|0,v=x,x=0,!(v&1)):0){e=s;h=g;K=79}}else K=79;d:do if((K|0)==79){e:do if(Iab(i)|0){if(!d){h=Ea(20)|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;c=h7a(93839)|0;x=0;va(87,z|0,93839,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,z|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(z);if(!g)break c}else e=Ia()|0;La(h|0);break c}if(j){h=Ea(20)|0;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;J=h7a(93865)|0;x=0;va(87,A|0,93865,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,A|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(A);if(!g)break c}else e=Ia()|0;La(h|0);break c}x=0;ta(432,J|0);H=x;x=0;do if(!(H&1)){i=f[J>>2]|0;H=f[n>>2]|0;f[i>>2]=H;f[i+4>>2]=l;f[i+8>>2]=m;f[i+12>>2]=3;f[i+20>>2]=e;e=f[a>>2]|0;f[y>>2]=H;f[F>>2]=f[y>>2];if(!(ana(e,F)|0)){f[J>>2]=0;x=0;ua(64,e|0,i|0);c=x;x=0;if(c&1){e=Ia()|0;f[J>>2]=0;break}else{f[J>>2]=0;break e}}h=Ea(20)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;I=h7a(93727)|0;x=0;va(87,D|0,93727,I|0);I=x;x=0;if(!(I&1)){x=0;wa(138,h|0,D|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(D);if(g)K=103}else{e=Ia()|0;K=103}if((K|0)==103)La(h|0);f[J>>2]=0;if(i)ubb(i)}else e=Ia()|0;while(0);break c}else{if(d){h=Ea(20)|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;c=h7a(93896)|0;x=0;va(87,B|0,93896,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,B|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(B);if(!g)break c}else e=Ia()|0;La(h|0);break c}f[(f[w>>2]|0)+4>>2]=e;x=0;e=ga(294,c|0)|0;J=x;x=0;if(J&1)break d;if(h>>>0>=e>>>0){h=Ea(20)|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;J=h7a(93921)|0;x=0;va(87,C|0,93921,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,C|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(C);if(!g)break c}else e=Ia()|0;La(h|0);break c}x=0;e=ia(69,c|0,h|0)|0;J=x;x=0;if(J&1)break d;x=0;e=ia(166,a|0,e|0)|0;J=x;x=0;if(J&1)break d;g=f[w>>2]|0;f[g+8>>2]=e;b[g+12>>0]=j&1;x=0;e=ga(294,c|0)|0;J=x;x=0;if(J&1)break d;if((h+1|0)!=(e|0)){h=Ea(20)|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;c=h7a(93941)|0;x=0;va(87,G|0,93941,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,G|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(G);if(!g)break c}else e=Ia()|0;La(h|0);break c}e=f[a>>2]|0;f[E>>2]=f[g>>2];f[F>>2]=f[E>>2];if(!(bna(e,F)|0)){K=f[w>>2]|0;f[w>>2]=0;x=0;ua(71,e|0,K|0);K=x;x=0;if(K&1)break d;else break}h=Ea(20)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;J=h7a(93727)|0;x=0;va(87,H|0,93727,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,H|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(H);if(!g)break c}else e=Ia()|0;La(h|0);break c}while(0);e=f[w>>2]|0;f[w>>2]=0;if(e|0)ubb(e);u=I;return}while(0);e=Ia()|0;K=38}while(0);if((K|0)!=38)if((K|0)==48){f[J>>2]=0;if(!g)K=50;else{ubb(g);K=50}}}while(0);if((K|0)==12)e=Ia()|0;g=f[L>>2]|0;f[L>>2]=0;if(g|0)ubb(g);Ua(e|0)}function Rc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;g=h;a:do if((a|0)!=(c|0)){b:do switch(b[a>>0]|0){case 118:{b4(g,124713);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 119:{f4(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 98:{b4(g,124718);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 99:{b4(g,124487);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 97:{O3(g,124492);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 104:{M3(g,124504);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 115:{a4(g,124518);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 116:{L3(g,124524);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 105:{c4(g,124723);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 106:{N3(g,124727);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 108:{b4(g,124740);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 109:{M3(g,124745);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 120:{W3(g,124759);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 121:{U3(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 110:{$3(g,124553);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 111:{K3(g,124562);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 102:{a4(g,124769);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 100:{g4(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 101:{O3(g,124775);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 103:{P3(g,124787);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 122:{c4(g,124798);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+1|0;break a}case 117:{e=a+1|0;g=hk(e,c,d)|0;a=(g|0)==(e|0)?a:g;break a}case 68:{e=a+1|0;if((e|0)==(c|0))break a;switch(b[e>>0]|0){case 100:{W3(g,124802);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 101:{P3(g,124812);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 102:{W3(g,124823);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 104:{W3(g,124833);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 105:{$3(g,124843);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 115:{$3(g,124852);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 97:{b4(g,124861);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}case 110:{L3(g,124866);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(g);break b}}else{yY(e,g);f[c>>2]=(f[c>>2]|0)+24}JJa(g);a=a+2|0;break a}default:break a}}default:break a}while(0);Ua(a|0)}while(0);u=h;return a|0}function Sc(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;la=u;u=u+1520|0;a=la+1488|0;b=la+1464|0;m=la+1440|0;z=la+1416|0;K=la+1392|0;V=la+1368|0;ea=la+1344|0;ia=la+1320|0;ja=la+1296|0;ka=la+1272|0;c=la+1248|0;d=la+1224|0;e=la+1200|0;f=la+1176|0;g=la+1152|0;h=la+1128|0;i=la+1104|0;j=la+1080|0;k=la+1056|0;l=la+1032|0;n=la+1008|0;o=la+984|0;p=la+960|0;q=la+936|0;r=la+912|0;s=la+888|0;t=la+864|0;v=la+840|0;w=la+816|0;y=la+792|0;A=la+768|0;B=la+744|0;C=la+720|0;D=la+696|0;E=la+672|0;F=la+648|0;G=la+624|0;H=la+600|0;I=la+576|0;J=la+552|0;L=la+528|0;M=la+504|0;N=la+480|0;O=la+456|0;P=la+432|0;Q=la+408|0;R=la+384|0;S=la+360|0;T=la+336|0;U=la+312|0;W=la+288|0;X=la+264|0;Y=la+240|0;Z=la+216|0;_=la+192|0;$=la+168|0;aa=la+144|0;ba=la+120|0;ca=la+96|0;da=la+72|0;fa=la+48|0;ga=la+24|0;ha=la;iHa(a,1);x=0;va(99,67414,67430,a|0);ma=x;x=0;do if(!(ma&1)){sta(a);iHa(b,2);x=0;va(99,67463,67488,b|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(b);break}sta(b);iHa(m,3);x=0;va(99,67534,67547,m|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(m);break}sta(m);iHa(z,4);x=0;va(99,67607,67620,z|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(z);break}sta(z);iHa(K,5);x=0;va(99,67650,67665,K|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(K);break}sta(K);iHa(V,6);x=0;va(99,67701,67705,V|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(V);break}sta(V);iHa(ea,7);x=0;va(99,67730,67734,ea|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ea);break}sta(ea);iHa(ia,8);x=0;va(99,67770,67801,ia|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ia);break}sta(ia);iHa(ja,9);x=0;va(99,67829,67846,ja|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ja);break}sta(ja);iHa(ka,10);x=0;va(99,67894,67902,ka|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ka);break}sta(ka);iHa(c,11);x=0;va(99,67938,67949,c|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(c);break}sta(c);iHa(d,12);x=0;va(99,68036,68049,d|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(d);break}sta(d);iHa(e,13);x=0;va(99,68074,68092,e|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(e);break}sta(e);iHa(f,14);x=0;va(99,68110,68119,f|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(f);break}sta(f);iHa(g,15);x=0;va(99,68176,68196,g|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(g);break}sta(g);iHa(h,16);x=0;va(99,68244,68266,h|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(h);break}sta(h);iHa(i,17);x=0;va(99,68316,68326,i|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(i);break}sta(i);iHa(j,18);x=0;va(99,68379,68393,j|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(j);break}sta(j);iHa(k,19);x=0;va(99,68451,68471,k|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(k);break}sta(k);iHa(l,20);x=0;va(99,68514,68532,l|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(l);break}sta(l);iHa(n,21);x=0;va(99,68597,68532,n|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(n);break}sta(n);iHa(o,22);x=0;va(99,68615,68630,o|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(o);break}sta(o);iHa(p,23);x=0;va(99,68682,68695,p|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(p);break}sta(p);iHa(q,24);x=0;va(99,68726,68739,q|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(q);break}sta(q);iHa(r,25);x=0;va(99,68769,68777,r|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(r);break}sta(r);iHa(s,26);x=0;va(99,68793,68796,s|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(s);break}sta(s);iHa(t,27);x=0;va(99,68806,68828,t|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(t);break}sta(t);iHa(v,28);x=0;va(99,68863,68881,v|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(v);break}sta(v);iHa(w,29);x=0;va(99,68899,68915,w|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(w);break}sta(w);iHa(y,30);x=0;va(99,68951,68967,y|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(y);break}sta(y);iHa(A,31);x=0;va(99,113388,69025,A|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(A);break}sta(A);iHa(B,32);x=0;va(99,109908,69071,B|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(B);break}sta(B);iHa(C,33);x=0;va(99,73273,69152,C|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(C);break}sta(C);iHa(D,34);x=0;va(99,69181,69196,D|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(D);break}sta(D);iHa(E,35);x=0;va(99,69234,69245,E|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(E);break}sta(E);iHa(F,36);x=0;va(99,69279,69296,F|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(F);break}sta(F);iHa(G,37);x=0;va(99,69313,69328,G|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(G);break}sta(G);iHa(H,38);x=0;va(99,69379,69403,H|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(H);break}sta(H);iHa(I,39);x=0;va(99,69448,69466,I|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(I);break}sta(I);iHa(J,40);x=0;va(99,69506,69521,J|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(J);break}sta(J);iHa(L,41);x=0;va(99,69565,69579,L|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(L);break}sta(L);iHa(M,42);x=0;va(99,69603,69621,M|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(M);break}sta(M);iHa(N,43);x=0;va(99,69671,69701,N|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(N);break}sta(N);iHa(O,44);x=0;va(99,69732,69774,O|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(O);break}sta(O);iHa(P,45);x=0;va(99,69828,69848,P|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(P);break}sta(P);iHa(Q,46);x=0;va(99,69904,69922,Q|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(Q);break}sta(Q);iHa(R,47);x=0;va(99,69958,69973,R|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(R);break}sta(R);iHa(S,48);x=0;va(99,70006,70015,S|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(S);break}sta(S);iHa(T,49);x=0;va(99,70069,70073,T|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(T);break}sta(T);iHa(U,50);x=0;va(99,70101,70111,U|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(U);break}sta(U);iHa(W,51);x=0;va(99,70169,70185,W|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(W);break}sta(W);iHa(X,52);x=0;va(99,70228,70254,X|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(X);break}sta(X);iHa(Y,53);x=0;va(99,70337,70359,Y|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(Y);break}sta(Y);iHa(Z,54);x=0;va(99,70412,70440,Z|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(Z);break}sta(Z);iHa(_,55);x=0;va(99,70498,70532,_|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(_);break}sta(_);iHa($,56);x=0;va(99,70598,70608,$|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta($);break}sta($);iHa(aa,57);x=0;va(99,70636,70657,aa|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(aa);break}sta(aa);iHa(ba,58);x=0;va(99,70709,70724,ba|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ba);break}sta(ba);iHa(ca,59);x=0;va(99,70782,70786,ca|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ca);break}sta(ca);iHa(da,60);x=0;va(99,70842,70858,da|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(da);break}sta(da);iHa(fa,61);x=0;va(99,70910,70923,fa|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(fa);break}sta(fa);iHa(ga,62);x=0;va(99,70969,70975,ga|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ga);break}sta(ga);iHa(ha,63);x=0;va(99,71029,71036,ha|0);ma=x;x=0;if(ma&1){a=Ia()|0;sta(ha);break}else{sta(ha);u=la;return}}else{ma=Ia()|0;sta(a);a=ma}while(0);Ua(a|0)}function Tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;E=u;u=u+192|0;F=E+48|0;G=E+32|0;I=E+160|0;K=E+96|0;J=E+72|0;B=E+68|0;C=E+64|0;D=E+16|0;A=E;wx(K,b);x=0;ta(462,K|0);z=x;x=0;if(z&1)b=Ia()|0;else{f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;f[J+16>>2]=1065353216;q=K+16|0;v=J+4|0;w=J+12|0;y=J+16|0;z=J+8|0;c=f[K+12>>2]|0;b=0;a:while(1){if((c|0)==(q|0)){H=4;break}j=f[c+16>>2]|0;f[G>>2]=j;f[F>>2]=j;p=HH(F,4)|0;m=f[v>>2]|0;o=(m|0)==0;b:do if(!o){k=m+-1|0;l=(k&m|0)==0;if(!l)if(p>>>0>>0)d=p;else d=(p>>>0)%(m>>>0)|0;else d=k&p;h=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!h)H=21;else while(1){h=f[h>>2]|0;if(!h){H=21;break b}i=f[h+4>>2]|0;if((i|0)!=(p|0)){if(!l){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&k;if((i|0)!=(d|0)){H=21;break b}}if((f[h+8>>2]|0)==(j|0)){d=b;break}}}else{d=0;H=21}while(0);if((H|0)==21){H=0;x=0;wa(93,I|0,J|0,p|0,G|0);t=x;x=0;if(t&1){H=47;break}e=+(((f[w>>2]|0)+1|0)>>>0);g=+n[y>>2];do if(o|g*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;s=~~+W(+(e/g))>>>0;x=0;ua(643,J|0,(t>>>0>>0?s:t)|0);t=x;x=0;if(t&1){H=28;break a}b=f[v>>2]|0;d=b+-1|0;if(!(d&b)){i=b;d=d&p;break}if(p>>>0>>0){i=b;d=p}else{i=b;d=(p>>>0)%(b>>>0)|0}}else i=m;while(0);b=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!b){h=f[I>>2]|0;f[h>>2]=f[z>>2];f[z>>2]=h;f[(f[J>>2]|0)+(d<<2)>>2]=z;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;d=i+-1|0;if(d&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&d;f[(f[J>>2]|0)+(b<<2)>>2]=h}}else{t=f[I>>2]|0;f[t>>2]=f[b>>2];f[b>>2]=t}d=(f[w>>2]|0)+1|0;f[w>>2]=d}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b;b=d}if((H|0)==4){f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=1065353216;q=J+8|0;r=a+48|0;s=K+44|0;t=K+24|0;p=a+32|0;c:while(1){if(!b){H=185;break}o=f[q>>2]|0;b=f[o+8>>2]|0;x4(J,o);o=E_a(b)|0;f[B>>2]=o;d:do if(o){x=0;b=ia(178,I|0,B|0)|0;o=x;x=0;if(o&1){H=53;break c}if(!(Iab(f[b>>2]|0)|0)){x=0;va(154,F|0,a|0,f[(f[B>>2]|0)+12>>2]|0);o=x;x=0;if(o&1){H=60;break c}x=0;b=ia(178,I|0,B|0)|0;o=x;x=0;if(o&1){H=60;break c}f[b>>2]=f[F>>2];f[b+4>>2]=f[F+4>>2];f[b+8>>2]=f[F+8>>2];f[b+12>>2]=f[F+12>>2];if(Iab(f[F>>2]|0)|0){x=0;b=ia(179,s|0,B|0)|0;o=x;x=0;if(o&1){H=61;break c}b=b+8|0;while(1){b=f[b>>2]|0;if(!b){H=182;break d}j=f[b+8>>2]|0;f[G>>2]=j;f[F>>2]=j;o=HH(F,4)|0;i=f[v>>2]|0;m=(i|0)==0;e:do if(!m){k=i+-1|0;l=(k&i|0)==0;if(!l)if(o>>>0>>0)d=o;else d=(o>>>0)%(i>>>0)|0;else d=k&o;c=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!c)H=77;else do{c=f[c>>2]|0;if(!c){H=77;break e}h=f[c+4>>2]|0;if((h|0)!=(o|0)){do if(l)h=h&k;else{if(h>>>0>>0)break;h=(h>>>0)%(i>>>0)|0}while(0);if((h|0)!=(d|0)){H=77;break e}}}while((f[c+8>>2]|0)!=(j|0))}else{d=0;H=77}while(0);if((H|0)==77){H=0;x=0;wa(144,F|0,J|0,o|0,G|0);l=x;x=0;if(l&1){H=97;break c}e=+(((f[w>>2]|0)+1|0)>>>0);g=+n[y>>2];do if(m|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(643,J|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){H=84;break c}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o;break}i=c;d=(o>>>0)%(c>>>0)|0}while(0);c=f[(f[J>>2]|0)+(d<<2)>>2]|0;do if(!c){h=f[F>>2]|0;f[h>>2]=f[z>>2];f[z>>2]=h;f[(f[J>>2]|0)+(d<<2)>>2]=z;c=f[h>>2]|0;if(!c)break;c=f[c+4>>2]|0;d=i+-1|0;do if(!(d&i))c=c&d;else{if(c>>>0>>0)break;c=(c>>>0)%(i>>>0)|0}while(0);f[(f[J>>2]|0)+(c<<2)>>2]=h}else{o=f[F>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}while(0);f[w>>2]=(f[w>>2]|0)+1}}}else H=182}else H=181}else{x=0;b=ga(267,b|0)|0;o=x;x=0;if(o&1){H=102;break c}f[C>>2]=b;x=0;b=ia(180,r|0,C|0)|0;o=x;x=0;if(o&1){H=102;break c}if(Iab(f[b>>2]|0)|0){H=181;break}yXa(D);x=0;b=ia(103,K|0,C|0)|0;o=x;x=0;if(o&1){H=106;break c}i=b+4|0;h=1;b=f[b>>2]|0;while(1){if((b|0)==(i|0))break;f[F>>2]=f[b+16>>2];yXa(G);if(!(f[F>>2]|0)){c=Bbb(f[p>>2]|0)|0;d=f[(f[C>>2]|0)+8>>2]|0;if(!(LVa(c,d)|0)){H=114;break}x=0;c=ia(80,c|0,d|0)|0;o=x;x=0;if(o&1){H=113;break c}x=0;ua(2012,A|0,c|0);o=x;x=0;if(o&1){H=113;break c}f[G>>2]=f[A>>2];f[G+4>>2]=f[A+4>>2];f[G+8>>2]=f[A+8>>2];f[G+12>>2]=f[A+12>>2]}else{x=0;c=ia(178,I|0,F|0)|0;o=x;x=0;if(o&1){H=112;break c}f[G>>2]=f[c>>2];f[G+4>>2]=f[c+4>>2];f[G+8>>2]=f[c+8>>2];f[G+12>>2]=f[c+12>>2]}if(Gab(f[G>>2]|0)|0){H=118;break}if(!h){x=0;c=ia(114,D|0,G|0)|0;o=x;x=0;if(o&1){H=112;break c}if(!c){H=123;break}}else{f[D>>2]=f[G>>2];f[D+4>>2]=f[G+4>>2];f[D+8>>2]=f[G+8>>2];f[D+12>>2]=f[G+12>>2]}c=f[b+4>>2]|0;if(!c)while(1){c=f[b+8>>2]|0;if((f[c>>2]|0)==(b|0)){b=c;break}else b=c}else{b=c;while(1){c=f[b>>2]|0;if(!c)break;else b=c}}h=0}if((H|0)==114){yXa(D);H=124}else if((H|0)==118){yXa(D);H=124}else if((H|0)==123){yXa(D);H=124}if((H|0)==124)H=0;f:do if(Iab(f[D>>2]|0)|0){x=0;b=ia(180,r|0,C|0)|0;o=x;x=0;if(o&1){H=138;break c}f[b>>2]=f[D>>2];f[b+4>>2]=f[D+4>>2];f[b+8>>2]=f[D+8>>2];f[b+12>>2]=f[D+12>>2];x=0;b=ia(111,t|0,C|0)|0;o=x;x=0;if(o&1){H=139;break c}b=b+8|0;while(1){b=f[b>>2]|0;if(!b)break f;j=f[b+8>>2]|0;f[A>>2]=j;f[F>>2]=j;o=HH(F,4)|0;i=f[v>>2]|0;m=(i|0)==0;g:do if(m){d=0;H=155}else{k=i+-1|0;l=(k&i|0)==0;do if(l)d=k&o;else{if(o>>>0>>0){d=o;break}d=(o>>>0)%(i>>>0)|0}while(0);c=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!c){H=155;break}do{c=f[c>>2]|0;if(!c){H=155;break g}h=f[c+4>>2]|0;if((h|0)!=(o|0)){do if(l)h=h&k;else{if(h>>>0>>0)break;h=(h>>>0)%(i>>>0)|0}while(0);if((h|0)!=(d|0)){H=155;break g}}}while((f[c+8>>2]|0)!=(j|0))}while(0);if((H|0)==155){H=0;x=0;wa(144,G|0,J|0,o|0,A|0);l=x;x=0;if(l&1){H=175;break c}e=+(((f[w>>2]|0)+1|0)>>>0);g=+n[y>>2];do if(m|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(643,J|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){H=162;break c}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o;break}i=c;d=(o>>>0)%(c>>>0)|0}while(0);c=f[(f[J>>2]|0)+(d<<2)>>2]|0;do if(!c){h=f[G>>2]|0;f[h>>2]=f[z>>2];f[z>>2]=h;f[(f[J>>2]|0)+(d<<2)>>2]=z;c=f[h>>2]|0;if(!c)break;c=f[c+4>>2]|0;d=i+-1|0;do if(!(d&i))c=c&d;else{if(c>>>0>>0)break;c=(c>>>0)%(i>>>0)|0}while(0);f[(f[J>>2]|0)+(c<<2)>>2]=h}else{o=f[G>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}while(0);f[w>>2]=(f[w>>2]|0)+1}}}while(0);H=182}while(0);if((H|0)==181)H=0;else if((H|0)==182)H=0;b=f[w>>2]|0}switch(H|0){case 53:{b=Ia()|0;break}case 60:{b=Ia()|0;break}case 61:{b=Ia()|0;break}case 84:{b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)ubb(c);H=98;break}case 97:{b=Ia()|0;H=98;break}case 102:{b=Ia()|0;H=180;break}case 106:{b=Ia()|0;H=179;break}case 112:{b=Ia()|0;H=133;break}case 113:{b=Ia()|0;H=133;break}case 138:{b=Ia()|0;H=179;break}case 139:{b=Ia()|0;H=179;break}case 162:{b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)ubb(c);H=176;break}case 175:{b=Ia()|0;H=176;break}case 185:{NQa(I);NQa(J);xV(K);u=E;return}}if((H|0)!=98)if((H|0)==133)H=179;else if((H|0)==176)H=179;if((H|0)==179)H=180;NQa(I)}else if((H|0)==28){b=Ia()|0;c=f[I>>2]|0;f[I>>2]=0;if(c|0)ubb(c);H=48}else if((H|0)==47){b=Ia()|0;H=48}NQa(J)}xV(K);Ua(b|0)}function Uc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;a:do if(a>>>0<212){b=oda(30784,30976,a)|0;b=f[b>>2]|0}else{if(a>>>0>4294967291){b=Ea(8)|0;x=0;ua(3186,b|0,118985);i=x;x=0;if(i&1){i=Ia()|0;La(b|0);Ua(i|0)}else{f[b>>2]=50512;Pa(b|0,39520,420)}}h=(a>>>0)/210|0;g=h*210|0;b=0;c=g;g=(oda(30976,31168,a-g|0)|0)-30976>>2;while(1){e=(f[30976+(g<<2)>>2]|0)+c|0;a=5;while(1){if(a>>>0>=47){i=10;break}c=f[30784+(a<<2)>>2]|0;d=(e>>>0)/(c>>>0)|0;if(d>>>0>>0){b=e;break a}if((e|0)==(X(d,c)|0))break;else a=a+1|0}b:do if((i|0)==10){i=0;d=211;c:while(1){a=(e>>>0)/(d>>>0)|0;do if(a>>>0>=d>>>0)if((e|0)!=(X(a,d)|0)){a=d+10|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+12|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+16|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+18|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+22|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+28|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e}else{if((e|0)==(X(c,a)|0)){c=9;break}a=d+30|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+36|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+40|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+42|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+46|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+52|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+58|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+60|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+66|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+70|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+72|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+78|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+82|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+88|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+96|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+100|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+102|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+106|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+108|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+112|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+120|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+126|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+130|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+136|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+138|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+142|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+148|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+150|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+156|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+162|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+166|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+168|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+172|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+178|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+180|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+186|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+190|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+192|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+196|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+198|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+208|0;c=(e>>>0)/(a>>>0)|0;j=c>>>0>>0;c=(e|0)==(X(c,a)|0);a=j|c?a:d+210|0;c=j?1:c?9:0;b=j?e:b}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else{a=d;c=9}else{a=d;c=1;b=e}while(0);switch(c&15){case 9:break b;case 0:{d=a;break}default:break c}}if(c)break a}while(0);j=g+1|0;e=(j|0)==48;c=h+(e&1)|0;h=c;c=c*210|0;g=e?0:j}}while(0);return b|0}function Vc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;A=u;u=u+176|0;w=A+144|0;p=A+140|0;h=A+160|0;n=A+136|0;q=A+132|0;C=A+120|0;i=A+104|0;B=A+88|0;y=A+76|0;z=A+24|0;o=A+4|0;s=A+64|0;t=A+16|0;v=A;f[p>>2]=d;r=c+4|0;d=f[r>>2]|0;e=f[c>>2]|0;a:do if(((d-e|0)/12|0)>>>0<2)d=0;else{d=RH(e,d,a)|0;Cha(c,d,f[r>>2]|0);f[n>>2]=h;f[q>>2]=n;tP(C,c);d=f[C>>2]|0;e=C+4|0;g=f[e>>2]|0;f[i>>2]=h;f[i+4>>2]=p;f[i+8>>2]=n;f[i+12>>2]=a;x=0;f[w>>2]=f[i>>2];f[w+4>>2]=f[i+4>>2];f[w+8>>2]=f[i+8>>2];f[w+12>>2]=f[i+12>>2];d=ja(84,d|0,g|0,w|0)|0;m=x;x=0;b:do if(m&1)d=Ia()|0;else{Cha(C,d,g);m=f[e>>2]|0;d=f[C>>2]|0;j=m;c:do if(((m-d|0)/12|0)>>>0>1){yUa(w);while(1){if((d|0)==(j|0)){m=6;break}x=0;e=ia(205,d|0,f[p>>2]|0)|0;m=x;x=0;if(m&1){m=15;break}f[B>>2]=e;i=e;x=0;e=ga(324,e|0)|0;m=x;x=0;if(m&1){m=16;break}f[y>>2]=e;x=0;e=ia(206,w|0,y|0)|0;m=x;x=0;if(m&1){m=16;break}g=e+4|0;h=f[g>>2]|0;if((h|0)==(f[e+8>>2]|0)){x=0;ua(640,e|0,B|0);m=x;x=0;if(m&1){m=16;break}}else{f[h>>2]=i;f[g>>2]=(f[g>>2]|0)+4}d=d+12|0}do if((m|0)==6){j=w+4|0;k=y+4|0;l=y+8|0;m=o+4|0;e=f[w>>2]|0;d:while(1){if((e|0)==(j|0)){m=46;break}h=e+20|0;i=e+24|0;g=f[i>>2]|0;d=f[h>>2]|0;e:do switch(g-d>>2|0){case 0:{m=21;break d}case 1:break;default:while(1){if(g-d>>2>>>0<=1)break e;f[B>>2]=f[d>>2];f[y>>2]=0;f[k>>2]=0;f[l>>2]=0;x=0;d=ka(36,d|0,g|0,B|0,y|0)|0;g=x;x=0;if(g&1){m=29;break d}hla(h,d,f[i>>2]|0);d=f[h>>2]|0;if((f[i>>2]|0)-d>>2>>>0>1){f[z>>2]=f[d>>2];x=0;ua(2919,o|0,C|0);g=x;x=0;if(g&1){m=30;break d}d=f[m>>2]|0;x=0;g=ma(29,f[o>>2]|0,d|0,n|0,p|0,z|0)|0;D=x;x=0;if(D&1){m=31;break d}Cha(o,g,d);x=0;d=ja(85,a|0,o|0,(f[p>>2]|0)+1|0)|0;D=x;x=0;if(D&1){m=32;break d}uSa(o);if(d){m=36;break d}}_8(h,y);uSa(y);d=f[h>>2]|0;g=f[i>>2]|0}}while(0);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}if((m|0)==21){x=0;wa(71,114480,114497,535,114526);x=0;d=Ia()|0;break}else if((m|0)==29)d=Ia()|0;else if((m|0)==30){d=Ia()|0;m=34}else if((m|0)==31){d=Ia()|0;m=33}else if((m|0)==32){d=Ia()|0;m=33}else if((m|0)==36){uSa(y);oxa(w);d=1;break c}else if((m|0)==46){oxa(w);m=47;break c}if((m|0)==33){uSa(o);m=34}uSa(y)}else if((m|0)==15){d=Ia()|0;m=17}else if((m|0)==16){d=Ia()|0;m=17}while(0);oxa(w);break b}else m=47;while(0);f:do if((m|0)==47){d=f[p>>2]|0;if(d){x=0;d=ka(37,q|0,a|0,d|0,c|0)|0;D=x;x=0;if(D&1){d=Ia()|0;break b}if(d){x=0;wa(151,B|0,q|0,f[p>>2]|0,c|0);D=x;x=0;if(D&1)d=Ia()|0;else{b[a+56>>0]=1;l=f[a+36>>2]|0;Bbb(l)|0;U0a(y,l);l=a+32|0;D=Bbb(f[l>>2]|0)|0;x=0;ua(2920,z|0,D|0);D=x;x=0;if(D&1)d=Ia()|0;else{f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;D=h7a(114551)|0;x=0;va(87,s|0,114551,D|0);D=x;x=0;g:do if(!(D&1)){x=0;j=ia(207,z|0,s|0)|0;D=x;x=0;if(D&1){d=Ia()|0;HTa(s);break}HTa(s);i=f[r>>2]|0;k=B+4|0;h=f[c>>2]|0;h:while(1){if((h|0)==(i|0)){m=57;break}g=h+4|0;d=f[g>>2]|0;if(d){x=0;ua(2921,a|0,d|0);D=x;x=0;if(D&1){m=67;break}d=0;while(1){e=f[g>>2]|0;if(d>>>0>=(f[k>>2]|0)-(f[B>>2]|0)>>2>>>0)break;x=0;ta(507,e+12|0);D=x;x=0;if(D&1){m=70;break h}d=d+1|0}f[t>>2]=j;x=0;f[w>>2]=f[t>>2];d=ka(12,y|0,w|0,0,0)|0;D=x;x=0;if(D&1){m=67;break}x=0;ua(81,e+12|0,d|0);D=x;x=0;if(D&1){m=67;break}D=f[g>>2]|0;x=0;ua(1873,D|0,f[D+4>>2]|0);D=x;x=0;if(D&1){m=67;break}}else{x=0;ua(2921,a|0,f[h>>2]|0);D=x;x=0;if(D&1){m=67;break}f[v>>2]=j;x=0;f[w>>2]=f[v>>2];d=ka(12,y|0,w|0,0,0)|0;D=x;x=0;if(D&1){m=67;break}f[f[h+8>>2]>>2]=d}h=h+12|0}if((m|0)==57){h=f[l>>2]|0;Bbb(h)|0;h=f[h+36>>2]|0;x=0;i=ia(99,f[y>>2]|0,0)|0;D=x;x=0;i:do if(!(D&1)){f[i+8>>2]=j;e=h+4|0;d=f[e>>2]|0;j:do switch(d|0){case 5:{x=0;ua(81,i+12|0,h|0);D=x;x=0;if(D&1)break i;break}case 0:{e=i+12|0;x=0;ua(81,e|0,h|0);D=x;x=0;if(D&1)break i;x=0;d=ia(108,y|0,0)|0;D=x;x=0;if(D&1)break i;x=0;ua(81,e|0,d|0);D=x;x=0;if(D&1)break i;break}default:{g=o$a(h)|0;do if(!g)m=87;else{x=0;ta(439,g|0);D=x;x=0;if(D&1)break;d=f[e>>2]|0;m=87}while(0);do if((m|0)==87){e=i+12|0;if((d|0)==5){x=0;ua(81,e|0,h|0);D=x;x=0;if(D&1)break;else break j}x=0;d=ia(108,y|0,h|0)|0;D=x;x=0;if(D&1)break;x=0;ua(81,e|0,d|0);D=x;x=0;if(!(D&1))break j}while(0);d=Ia()|0;break g}}while(0);x=0;ta(439,i|0);D=x;x=0;if(!(D&1)){x=0;e=ia(99,f[y>>2]|0,0)|0;D=x;x=0;do if(D&1)m=99;else{g=e+12|0;x=0;ua(81,g|0,i|0);D=x;x=0;if(D&1){m=99;break}d=f[k>>2]|0;while(1){if((f[B>>2]|0)==(d|0))break;x=0;ua(81,g|0,f[d+-4>>2]|0);D=x;x=0;if(D&1){m=98;break}d=(f[k>>2]|0)+-4|0;f[k>>2]=d}if((m|0)==98){d=Ia()|0;break}D=f[l>>2]|0;Bbb(D)|0;x=0;ua(1873,e|0,f[D+4>>2]|0);D=x;x=0;if(D&1){m=99;break}d=f[l>>2]|0;Bbb(d)|0;f[d+36>>2]=e;VRa(z);uSa(B);d=1;break f}while(0);if((m|0)==99)d=Ia()|0;break g}}while(0);d=Ia()|0;break}else if((m|0)==67){d=Ia()|0;break}else if((m|0)==70){d=Ia()|0;break}}else d=Ia()|0;while(0);VRa(z)}uSa(B)}break b}else d=0}else d=0}while(0);uSa(C);break a}while(0);uSa(C);Ua(d|0)}while(0);u=A;return d|0}function Wc(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+80|0;v=w+60|0;s=w+56|0;f[s>>2]=c;l=w+52|0;g=w+48|0;z=w+40|0;p=w+16|0;m=w+4|0;o=w+44|0;n=w+36|0;q=w;r=w+32|0;t=w+28|0;f[l>>2]=e;h=g0a(d,0)|0;if(!(FBa(f[h>>2]|0,132864)|0))Ca(53506,51387,804,123618);h=g0a(d,1)|0;h=f[h>>2]|0;Kab(g);c=Bbb(h)|0;a:do if(!(Cea(c,f[33216]|0)|0)){if(!(Gab(f[h>>2]|0)|0))Ca(53927,51387,892,123618);j=pPa(c)|0;j=f[j>>2]|0;f[g>>2]=j;if($1a(j,f[33047]|0)|0){c=g0a(d,2)|0;c=pPa(Bbb(f[c>>2]|0)|0)|0;c=f[c>>2]|0;if($1a(c,f[33237]|0)|0){h=a+200|0;if(Gab(f[h>>2]|0)|0){f[h>>2]=f[s>>2];y=100;break}else Ca(53946,51387,897,123618)}if($1a(c,f[33269]|0)|0){a=a+196|0;if(Gab(f[a>>2]|0)|0){f[a>>2]=f[s>>2];y=157;break}else Ca(53969,51387,901,123618)}else y=100}else y=100}else{c=g0a(h,1)|0;c=f[c>>2]|0;Bbb(c)|0;if(!(Gab(f[c>>2]|0)|0))Ca(53525,51387,809,123618);c=g0a(h,2)|0;if(FBa(f[c>>2]|0,132064)|0){c=g0a(d,2)|0;if(FBa(f[c>>2]|0,132068)|0){c=a+124|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53547,51387,812,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,132072)|0){c=a+128|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53566,51387,816,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,132076)|0){c=a+132|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53586,51387,820,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,132148)|0){c=a+136|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53607,51387,824,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,132152)|0){c=a+140|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53625,51387,828,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,132156)|0){c=a+144|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53645,51387,832,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,132160)|0){c=a+148|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53664,51387,836,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131764)|0){c=a+152|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53683,51387,840,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131768)|0){c=a+156|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53701,51387,844,123618)}}else{c=g0a(h,2)|0;if(FBa(f[c>>2]|0,131772)|0){c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131776)|0){c=a+160|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53719,51387,850,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131780)|0){c=a+164|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53741,51387,854,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131784)|0){c=a+168|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53764,51387,858,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131788)|0){c=a+172|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53790,51387,862,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131792)|0){c=a+176|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53823,51387,866,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131796)|0){c=a+180|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53844,51387,870,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131800)|0){c=a+184|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53865,51387,874,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131804)|0){c=a+188|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53886,51387,878,123618)}c=g0a(d,2)|0;if(FBa(f[c>>2]|0,131808)|0){c=a+192|0;if(Gab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53906,51387,882,123618)}}}c=g0a(h,1)|0;c=qNa(Bbb(f[c>>2]|0)|0)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;WZ(v,c,h7a(c)|0);x=0;ua(82,v|0,46);c=x;x=0;do if(((!(c&1)?(x=0,i=ia(45,h|0,2)|0,h=x,x=0,!(h&1)):0)?(j=Bbb(f[i>>2]|0)|0,x=0,j=ga(222,j|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(59,v|0,j|0)|0,j=x,x=0,!(j&1)):0){x=0;va(88,z|0,((b[v+11>>0]|0)<0?f[v>>2]|0:v)|0,0);j=x;x=0;if(j&1){a=Ia()|0;break}else{f[g>>2]=f[z>>2];HTa(v);y=100;break a}}else y=86;while(0);if((y|0)==86)a=Ia()|0;HTa(v);y=162}while(0);b:do if((y|0)==100){kOa(z);E1a(v,f[s>>2]|0);c=f[z>>2]|0;f[c>>2]=f[v>>2];E1a(v,f[g>>2]|0);f[c+4>>2]=f[v>>2];x=0;g=ia(45,d|0,2)|0;y=x;x=0;c:do if(!(y&1)?(k=Bbb(f[g>>2]|0)|0,x=0,k=ga(214,k|0)|0,y=x,x=0,!(y&1)):0){E1a(v,f[k>>2]|0);i=c+8|0;g=f[v>>2]|0;f[i>>2]=g;do if($1a(f[c+4>>2]|0,f[32999]|0)|0){if(!($1a(g,f[33e3]|0)|0)?!($1a(g,f[33001]|0)|0):0){y=108;break}f[l>>2]=4;g=c+12|0;e=4;y=109}else y=108;while(0);if((y|0)==108){g=c+12|0;if(!e){f[g>>2]=0;y=133}else y=109}d:do if((y|0)==109){f[g>>2]=3;f[c+20>>2]=e;x=0;xa(5,v|0,a+100|0,f[s>>2]|0,s|0,l|0);y=x;x=0;if(y&1)y=107;else{x=0;va(88,v|0,67097,1);y=x;x=0;do if(y&1)a=Ia()|0;else{if(!(_1a(f[s>>2]|0,f[v>>2]|0)|0)){y=133;break d}x=0;va(88,p|0,67107,1);y=x;x=0;if(y&1){a=Ia()|0;break}if(!(_1a(f[s>>2]|0,f[p>>2]|0)|0)){y=133;break d}l=f[c>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;y=h7a(l)|0;x=0;va(87,m|0,l|0,y|0);y=x;x=0;if(y&1)a=Ia()|0;else{x=0;ia(59,m|0,53992)|0;y=x;x=0;do if(!(y&1)){f[p>>2]=f[m>>2];f[p+4>>2]=f[m+4>>2];f[p+8>>2]=f[m+8>>2];g=0;while(1){if((g|0)==3)break;f[m+(g<<2)>>2]=0;g=g+1|0}x=0;ua(83,v|0,p|0);y=x;x=0;if(y&1){a=Ia()|0;HTa(p);break}f[c>>2]=f[v>>2];HTa(p);HTa(m);h=f[a>>2]|0;E1a(o,f[s>>2]|0);f[n>>2]=f[c>>2];x=0;f[v>>2]=f[n>>2];g=ja(41,a+8|0,v|0,e|0)|0;y=x;x=0;if(y&1){y=107;break d}x=0;f[v>>2]=f[o>>2];g=ka(6,v|0,e|0,g|0,0)|0;y=x;x=0;if(y&1){y=107;break d}x=0;ua(71,h|0,g|0);y=x;x=0;if(y&1){y=107;break d}else{y=133;break d}}else a=Ia()|0;while(0);HTa(m)}y=159;break c}while(0);y=158}}while(0);e:do if((y|0)==133){x=0;va(88,p|0,67097,1);y=x;x=0;f:do if(y&1)a=Ia()|0;else{do if(!($1a(f[s>>2]|0,f[p>>2]|0)|0)){x=0;va(88,q|0,67107,1);y=x;x=0;if(y&1){a=Ia()|0;y=151;break}if($1a(f[s>>2]|0,f[q>>2]|0)|0){h=1;y=139}else y=153}else{h=0;y=139}while(0);g:do if((y|0)==139){g=f[a>>2]|0;f[r>>2]=f[i>>2];x=0;f[v>>2]=f[r>>2];g=ia(60,g|0,v|0)|0;s=x;x=0;h:do if(!(s&1)){do if(!g){g=f[a>>2]|0;f[t>>2]=f[i>>2];x=0;f[v>>2]=f[t>>2];g=ia(61,g|0,v|0)|0;v=x;x=0;if(v&1)break h;g=(g|0)!=0;if(h)if(g)break;else{y=153;break g}else if(g)break;else{y=153;break g}}else if(h)break;else break;while(0);f[z>>2]=0;ubb(c);break g}while(0);a=Ia()|0;if(!h)break f;y=151}while(0);if((y|0)==151)break;if((y|0)==153){y=f[a>>2]|0;f[z>>2]=0;x=0;ua(64,y|0,c|0);y=x;x=0;if(y&1){c=0;y=107;break e}f[z>>2]=0}y=157;break b}while(0);y=158}while(0);if((y|0)==107){a=Ia()|0;y=159;break}else if((y|0)==158){f[z>>2]=0;y=160;break}}else y=106;while(0);if((y|0)==106){a=Ia()|0;y=159}if((y|0)==159){f[z>>2]=0;if(c)y=160}if((y|0)==160)ubb(c);y=162}while(0);if((y|0)==157){u=w;return}else if((y|0)==162)Ua(a|0)}function Xc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=u;u=u+752|0;E=C+520|0;k=C+504|0;G=C+488|0;F=C+312|0;p=C+472|0;D=C+64|0;s=C+308|0;t=C+296|0;v=C+24|0;w=C+12|0;A=C;B=C+48|0;l=C+36|0;q=c+24|0;o=c+28|0;e=f[c+52>>2]|0;r=a+16|0;d=f[c+48>>2]|0;while(1){if((d|0)==(e|0))break;sHa(r,f[d>>2]|0);d=d+4|0}j=c+76|0;i=c+80|0;Qoa(r,f[j>>2]|0,f[i>>2]|0);g=c+100|0;d=c+104|0;Qoa(r,f[g>>2]|0,f[d>>2]|0);n=c+36|0;m=c+40|0;e=(f[m>>2]|0)-(f[n>>2]|0)>>2;z=a+48|0;f[E>>2]=104504;h=e_(z,E)|0;f[h>>2]=e;if(b[c+112>>0]|0){h=f[d>>2]|0;e=0;d=f[g>>2]|0;while(1){if((d|0)==(h|0))break;e=(f[d+8>>2]|0)+e-(f[d+4>>2]|0)|0;d=d+16|0}f[E>>2]=104512;h=e_(z,E)|0;f[h>>2]=e}if(b[c+60>>0]|0){g=f[i>>2]|0;e=0;d=f[j>>2]|0;while(1){if((d|0)==(g|0))break;e=((f[d+8>>2]|0)-(f[d+4>>2]|0)>>2)+e|0;d=d+16|0}f[E>>2]=104526;j=e_(z,E)|0;f[j>>2]=e}a:do if(!(b[a+44>>0]|0)){g=f[m>>2]|0;e=0;d=f[n>>2]|0;while(1){if((d|0)==(g|0))break;yaa(r,f[d>>2]|0);e=(BZa(f[d>>2]|0)|0)+e|0;d=d+4|0}f[E>>2]=104539;G=e_(z,E)|0;f[G>>2]=e;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,104614,h7a(104614)|0);x=0;ua(2275,a|0,l|0);G=x;x=0;if(G&1){d=Ia()|0;HTa(l);h=120;break}else{HTa(l);hda(z);h=119;break}}else{f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;WZ(k,118300,h7a(118300)|0);x=0;ua(2275,a|0,k|0);l=x;x=0;if(l&1){d=Ia()|0;HTa(k);h=120;break}HTa(k);PQa(G,0);x=0;wa(130,F|0,c|0,G|0,0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ta(478,F|0);l=x;x=0;b:do if(l&1)d=Ia()|0;else{h=0;while(1){d=f[n>>2]|0;if(h>>>0>=(f[m>>2]|0)-d>>2>>>0){h=20;break}g=f[d+(h<<2)>>2]|0;Vba(z);x=0;ua(2276,r|0,g|0);l=x;x=0;if(l&1){h=34;break}d=BZa(g)|0;f[E>>2]=104539;x=0;e=ia(181,z|0,E|0)|0;l=x;x=0;if(l&1){h=35;break}f[e>>2]=d;d=f[(f[F>>2]|0)+(h*12|0)+8>>2]|0;f[E>>2]=104546;x=0;e=ia(181,z|0,E|0)|0;l=x;x=0;if(l&1){h=36;break}f[e>>2]=d;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;l=h7a(104561)|0;x=0;va(87,E|0,104561,l|0);l=x;x=0;if(l&1){h=37;break}x=0;ia(59,E|0,f[g>>2]|0)|0;l=x;x=0;if(l&1){h=38;break}f[p>>2]=f[E>>2];f[p+4>>2]=f[E+4>>2];f[p+8>>2]=f[E+8>>2];d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}x=0;ua(2275,a|0,p|0);l=x;x=0;if(l&1){h=39;break}HTa(p);HTa(E);h=h+1|0}if((h|0)==20){x=0;ta(444,E|0);r=x;x=0;if(r&1)d=Ia()|0;else{x=0;ua(2277,c|0,E|0);r=x;x=0;if(!(r&1)?(x=0,y=ga(318,E|0)|0,r=x,x=0,!(r&1)):0){cy(E);h=f[o>>2]|0;g=f[q>>2]|0;while(1){if((g|0)==(h|0)){h=46;break}x=0;ta(444,D|0);r=x;x=0;if(r&1){h=73;break}x=0;ua(2277,c|0,D|0);r=x;x=0;if(r&1){h=74;break}f[s>>2]=f[f[g>>2]>>2];f[E>>2]=f[s>>2];fF(D,E);Vba(z);x=0;d=ga(318,D|0)|0;r=x;x=0;if(r&1){h=74;break}f[E>>2]=104568;x=0;e=ia(181,z|0,E|0)|0;r=x;x=0;if(r&1){h=75;break}f[e>>2]=y-d;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;r=h7a(104597)|0;x=0;va(87,A|0,104597,r|0);r=x;x=0;if(r&1){h=76;break}x=0;ia(59,A|0,f[f[g>>2]>>2]|0)|0;r=x;x=0;if(r&1){h=77;break}f[w>>2]=f[A>>2];f[w+4>>2]=f[A+4>>2];f[w+8>>2]=f[A+8>>2];d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,w|0,123271)|0;r=x;x=0;if(r&1){h=78;break}f[v>>2]=f[w>>2];f[v+4>>2]=f[w+4>>2];f[v+8>>2]=f[w+8>>2];d=0;while(1){if((d|0)==3)break;f[w+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,v|0,f[(f[g>>2]|0)+4>>2]|0)|0;r=x;x=0;if(r&1){h=79;break}f[E>>2]=f[v>>2];f[E+4>>2]=f[v+4>>2];f[E+8>>2]=f[v+8>>2];d=0;while(1){if((d|0)==3)break;f[v+(d<<2)>>2]=0;d=d+1|0}x=0;ua(82,E|0,41);r=x;x=0;if(r&1){h=80;break}f[t>>2]=f[E>>2];f[t+4>>2]=f[E+4>>2];f[t+8>>2]=f[E+8>>2];d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}x=0;ua(2275,a|0,t|0);r=x;x=0;if(r&1){h=81;break}HTa(t);HTa(E);HTa(v);HTa(w);HTa(A);cy(D);g=g+4|0}switch(h|0){case 46:{g=c+116|0;c:do if(!(Gab(f[g>>2]|0)|0)){x=0;ta(444,E|0);A=x;x=0;if(A&1)d=Ia()|0;else{x=0;ua(2277,c|0,E|0);A=x;x=0;do if(A&1)h=101;else{tab(D);f[E+116>>2]=f[D>>2];Vba(z);x=0;e=ga(318,E|0)|0;A=x;x=0;if(A&1){h=101;break}f[D>>2]=104568;x=0;d=ia(181,z|0,D|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break}f[d>>2]=y-e;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;A=h7a(104606)|0;x=0;va(87,D|0,104606,A|0);A=x;x=0;if(A&1)d=Ia()|0;else{x=0;ia(59,D|0,f[g>>2]|0)|0;A=x;x=0;do if(!(A&1)){f[B>>2]=f[D>>2];f[B+4>>2]=f[D+4>>2];f[B+8>>2]=f[D+8>>2];d=0;while(1){if((d|0)==3)break;f[D+(d<<2)>>2]=0;d=d+1|0}x=0;ua(2275,a|0,B|0);a=x;x=0;if(a&1){d=Ia()|0;HTa(B);break}else{HTa(B);HTa(D);cy(E);break c}}else d=Ia()|0;while(0);HTa(D)}}while(0);if((h|0)==101)d=Ia()|0;cy(E)}break b}while(0);Vba(132632);dZ(F);uSa(G);h=119;break a}case 73:{d=Ia()|0;break}case 74:{d=Ia()|0;h=87;break}case 75:{d=Ia()|0;h=87;break}case 76:{d=Ia()|0;h=86;break}case 77:{d=Ia()|0;h=85;break}case 78:{d=Ia()|0;h=84;break}case 79:{d=Ia()|0;h=83;break}case 80:{d=Ia()|0;h=82;break}case 81:{d=Ia()|0;HTa(t);h=82;break}}if((h|0)==82){HTa(E);h=83}if((h|0)==83){HTa(v);h=84}if((h|0)==84){HTa(w);h=85}if((h|0)==85){HTa(A);h=86}if((h|0)==86)h=87;if((h|0)==87)cy(D);break}d=Ia()|0;cy(E)}break}else if((h|0)==34){d=Ia()|0;break}else if((h|0)==35){d=Ia()|0;break}else if((h|0)==36){d=Ia()|0;break}else if((h|0)==37)d=Ia()|0;else if((h|0)==38){d=Ia()|0;h=40}else if((h|0)==39){d=Ia()|0;HTa(p);h=40}if((h|0)==40)HTa(E)}while(0);dZ(F)}uSa(G);h=120}while(0);if((h|0)==119){u=C;return}else if((h|0)==120)Ua(d|0)}function Yc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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,X=0,Y=0,Z=0,_=0,$=0,aa=0;U=u;u=u+144|0;V=U+128|0;X=U+116|0;$=U+84|0;P=U+68|0;aa=U+56|0;_=U+40|0;Q=U+112|0;R=U+108|0;S=U+104|0;T=U+72|0;Z=U+24|0;Y=U+12|0;M=U+52|0;N=U;O=U+36|0;f[$>>2]=0;f[$+4>>2]=0;f[$+8>>2]=0;f[$+12>>2]=0;f[$+16>>2]=1065353216;U0a(P,f[a>>2]|0);f[aa>>2]=0;g=aa+4|0;f[g>>2]=0;f[aa+8>>2]=0;J=f[a>>2]|0;K=f[J+76>>2]|0;d=K;do if((f[J+80>>2]|0)!=(K|0)?(e=d+4|0,(aa|0)!=(e|0)):0){x=0;va(167,aa|0,f[e>>2]|0,f[d+8>>2]|0);K=x;x=0;if(K&1){c=Ia()|0;break}else{d=f[aa>>2]|0;K=f[g>>2]|0;h=6;break}}else{d=0;K=0;h=6}while(0);a:do if((h|0)==6){y=_+11|0;z=_+4|0;A=$+4|0;B=$+12|0;C=$+16|0;D=$+8|0;E=Z+4|0;F=Z+8|0;G=N+4|0;H=N+8|0;I=X+4|0;J=X+8|0;w=d;b:while(1){if((w|0)==(K|0)){h=8;break}x=0;va(88,V|0,111884,1);v=x;x=0;if(v&1){h=11;break}c:do if(!($1a(f[w>>2]|0,f[V>>2]|0)|0)){f[_>>2]=0;f[_+4>>2]=0;f[_+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[_+(d<<2)>>2]=0;d=d+1|0}d=f[a>>2]|0;f[Q>>2]=f[w>>2];f[V>>2]=f[Q>>2];e=ana(d,V)|0;if(!e){f[S>>2]=f[w>>2];x=0;f[V>>2]=f[S>>2];d=ia(56,d|0,V|0)|0;v=x;x=0;if(v&1){h=39;break b}x=0;ua(2707,X|0,d|0);v=x;x=0;if(v&1){h=39;break b}if((b[y>>0]|0)<0){T0a(f[_>>2]|0,0);f[z>>2]=0}else{T0a(_,0);b[y>>0]=0}x=0;ta(470,_|0);v=x;x=0;if(v&1){h=34;break b}f[_>>2]=f[X>>2];f[_+4>>2]=f[X+4>>2];f[_+8>>2]=f[X+8>>2];d=0;while(1){if((d|0)==3)break;f[X+(d<<2)>>2]=0;d=d+1|0}HTa(X)}else{f[R>>2]=f[e+16>>2];x=0;f[V>>2]=f[R>>2];d=ia(162,d|0,V|0)|0;v=x;x=0;if(v&1){h=27;break b}x=0;ua(76,X|0,d|0);v=x;x=0;if(v&1){h=27;break b}if((b[y>>0]|0)<0){T0a(f[_>>2]|0,0);f[z>>2]=0}else{T0a(_,0);b[y>>0]=0}x=0;ta(470,_|0);v=x;x=0;if(v&1){h=22;break b}f[_>>2]=f[X>>2];f[_+4>>2]=f[X+4>>2];f[_+8>>2]=f[X+8>>2];d=0;while(1){if((d|0)==3)break;f[X+(d<<2)>>2]=0;d=d+1|0}HTa(X)}x=0;ua(88,T|0,_|0);v=x;x=0;if(v&1){h=43;break b}x=0;v=ia(55,T|0,f[a>>2]|0)|0;t=x;x=0;if(t&1){h=44;break b}HTa(T);d:do if(!(u9(v)|0)){t=hsa(_)|0;h=f[A>>2]|0;s=(h|0)==0;e:do if(!s){o=h+-1|0;p=(o&h|0)==0;if(!p)if(t>>>0>>0)e=t;else e=(t>>>0)%(h>>>0)|0;else e=o&t;d=f[(f[$>>2]|0)+(e<<2)>>2]|0;if(d){q=b[y>>0]|0;r=q<<24>>24<0;q=r?f[z>>2]|0:q&255;r=r?f[_>>2]|0:_;while(1){d=f[d>>2]|0;if(!d)break e;g=f[d+4>>2]|0;if((g|0)!=(t|0)){do if(p)g=g&o;else{if(g>>>0>>0)break;g=(g>>>0)%(h>>>0)|0}while(0);if((g|0)!=(e|0))break e}l=d+8|0;g=b[l+11>>0]|0;k=g<<24>>24<0;g=g&255;f:do if(((k?f[d+12>>2]|0:g)|0)==(q|0)){if(k)if(!(AQa(f[l>>2]|0,r,q)|0))break d;else break;m=r;k=l;while(1){if(!g)break d;if((b[k>>0]|0)!=(b[m>>0]|0))break f;m=m+1|0;k=k+1|0;g=g+-1|0}}while(0)}}}else e=0;while(0);x=0;wa(149,V|0,$|0,t|0,_|0);r=x;x=0;if(r&1){h=87;break b}i=+(((f[B>>2]|0)+1|0)>>>0);j=+n[C>>2];do if(s|j*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;r=~~+W(+(i/j))>>>0;x=0;ua(2708,$|0,(s>>>0>>0?r:s)|0);s=x;x=0;if(s&1){h=74;break b}d=f[A>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&t;break}if(t>>>0>>0){h=d;e=t}else{h=d;e=(t>>>0)%(d>>>0)|0}}while(0);d=f[(f[$>>2]|0)+(e<<2)>>2]|0;if(!d){g=f[V>>2]|0;f[g>>2]=f[D>>2];f[D>>2]=g;f[(f[$>>2]|0)+(e<<2)>>2]=D;d=f[g>>2]|0;if(d|0){d=f[d+4>>2]|0;e=h+-1|0;do if(!(e&h))d=d&e;else{if(d>>>0>>0)break;d=(d>>>0)%(h>>>0)|0}while(0);f[(f[$>>2]|0)+(d<<2)>>2]=g}}else{t=f[V>>2]|0;f[t>>2]=f[d>>2];f[d>>2]=t}f[B>>2]=(f[B>>2]|0)+1;f[Z>>2]=0;f[E>>2]=0;f[F>>2]=0;f[V>>2]=1;x=0;ua(2709,Z|0,V|0);t=x;x=0;if(t&1){h=93;break b}m=v+8|0;o=v+12|0;g=f[o>>2]|0;d=0;e=f[m>>2]|0;while(1){if((e|0)==(g|0))break;h=d+1|0;x=0;ua(1283,Y|0,d|0);t=x;x=0;if(t&1){h=100;break b}d=f[E>>2]|0;if(d>>>0>=(f[F>>2]|0)>>>0){x=0;va(168,Z|0,Y|0,e|0);t=x;x=0;if(t&1){h=101;break b}}else{x=0;ua(83,X|0,Y|0);t=x;x=0;if(t&1){h=101;break b}t=f[e>>2]|0;f[V>>2]=f[X>>2];cUa(d,V,t);f[E>>2]=(f[E>>2]|0)+8}HTa(Y);d=h;e=e+4|0}f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;t=h7a(111904)|0;x=0;va(87,Y|0,111904,t|0);t=x;x=0;if(t&1){h=113;break b}t=b[y>>0]|0;s=t<<24>>24<0;x=0;ja(49,Y|0,(s?f[_>>2]|0:_)|0,(s?f[z>>2]|0:t&255)|0)|0;t=x;x=0;if(t&1){h=114;break b}f[X>>2]=f[Y>>2];f[X+4>>2]=f[Y+4>>2];f[X+8>>2]=f[Y+8>>2];d=0;while(1){if((d|0)==3)break;f[Y+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,M|0,X|0);t=x;x=0;if(t&1){h=115;break b}l=f[v+4>>2]|0;f[N>>2]=0;f[G>>2]=0;f[H>>2]=0;x=0;f[V>>2]=f[M>>2];l=ka(20,V|0,Z|0,l|0,N|0)|0;t=x;x=0;if(t&1){h=116;break b}uSa(N);HTa(X);HTa(Y);g=f[P>>2]|0;x=0;h=ja(46,g|0,0,1)|0;t=x;x=0;if(t&1){h=120;break b}f[X>>2]=0;f[I>>2]=0;f[J>>2]=0;d=0;while(1){e=f[m>>2]|0;if(d>>>0>=(f[o>>2]|0)-e>>2>>>0)break;k=d+1|0;x=0;d=ja(46,g|0,k|0,f[e+(d<<2)>>2]|0)|0;t=x;x=0;if(t&1){h=126;break b}f[V>>2]=d;e=f[I>>2]|0;if(e>>>0>=(f[J>>2]|0)>>>0){x=0;ua(1835,X|0,V|0);t=x;x=0;if(t&1){h=126;break b}}else{f[e>>2]=d;f[I>>2]=(f[I>>2]|0)+4}d=k}x=0;d=ka(35,P|0,v|0,h|0,X|0)|0;v=x;x=0;if(v&1){h=132;break b}f[l+36>>2]=d;x=0;ua(73,f[a>>2]|0,l|0);v=x;x=0;if(v&1){h=132;break b}v=f[a>>2]|0;f[O>>2]=f[l>>2];x=0;f[V>>2]=f[O>>2];ua(2710,v|0,V|0);v=x;x=0;if(v&1){h=132;break b}uSa(X);uSa(Z);HTa(_);break c}while(0);HTa(_)}while(0);w=w+4|0}switch(h|0){case 8:{uSa(aa);rxa($);u=U;return}case 11:{c=Ia()|0;break a}case 22:{r2a(Ja(0)|0);break}case 27:{c=Ia()|0;break}case 34:{r2a(Ja(0)|0);break}case 39:{c=Ia()|0;break}case 43:{c=Ia()|0;break}case 44:{c=Ia()|0;HTa(T);break}case 74:{c=Ia()|0;d=f[V>>2]|0;f[V>>2]=0;if(d|0){if(b[V+8>>0]|0)HTa(d+8|0);ubb(d)}h=88;break}case 87:{c=Ia()|0;h=88;break}case 93:{c=Ia()|0;h=134;break}case 100:{c=Ia()|0;h=102;break}case 101:{c=Ia()|0;HTa(Y);h=102;break}case 113:{c=Ia()|0;h=119;break}case 114:{c=Ia()|0;h=118;break}case 115:{c=Ia()|0;h=117;break}case 116:{c=Ia()|0;uSa(N);h=117;break}case 120:{c=Ia()|0;h=134;break}case 126:{c=Ia()|0;h=133;break}case 132:{c=Ia()|0;h=133;break}}if((h|0)!=88)if((h|0)==102)h=134;else if((h|0)==117){HTa(X);h=118}else if((h|0)==133){uSa(X);h=134}if((h|0)==118){HTa(Y);h=119}if((h|0)==119)h=134;if((h|0)==134)uSa(Z);HTa(_)}while(0);uSa(aa);rxa($);Ua(c|0)}function Zc(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;H=u;u=u+112|0;z=H+104|0;I=H+92|0;J=H+80|0;M=H+44|0;K=H+32|0;D=H+68|0;E=H+56|0;F=H+28|0;G=H+16|0;A=H+12|0;B=H;C=a+12|0;do if(b[C>>0]|0){d=yCa(134176,98509)|0;ZXa(z,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[z>>2]|0,134880)|0;y=x;x=0;if(!(y&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,y=x,x=0,!(y&1)):0){JCa(z);Wq(d,g)|0;du(d)|0;break}M=Ia()|0;JCa(z);Ua(M|0)}while(0);y=nq(a)|0;do if(b[C>>0]|0){d=zm(yCa(134176,97877)|0,y)|0;ZXa(z,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[z>>2]|0,134880)|0;w=x;x=0;if(!(w&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,w=x,x=0,!(w&1)):0){JCa(z);Wq(d,h)|0;du(d)|0;break}M=Ia()|0;JCa(z);Ua(M|0)}while(0);j=K+11|0;k=K+4|0;l=K+11|0;m=K+4|0;n=K+11|0;o=K+4|0;p=K+11|0;q=K+4|0;r=a+92|0;s=a+96|0;t=a+88|0;v=K+11|0;w=K+4|0;i=0;a:while(1){if(i>>>0>=y>>>0){L=13;break}if(b[C>>0]|0){e=yCa(134176,97883)|0;ZXa(z,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[z>>2]|0,134880)|0;h=x;x=0;if(h&1){L=17;break}x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;h=x;x=0;if(h&1){L=17;break}JCa(z);Wq(e,d)|0;du(e)|0}h=n8(24)|0;hPa(h);f[z>>2]=h;e=Ni(a)|0;f[h+4>>2]=e;e=Ni(a)|0;f[h+8>>2]=e;e=nq(a)|0;f[h+12>>2]=e;g=h;b:do switch(e|0){case 0:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;WZ(M,98524,h7a(98524)|0);x=0;ua(1870,K|0,i|0);e=x;x=0;if(e&1){L=42;break a}e=b[j>>0]|0;d=e<<24>>24<0;x=0;ja(49,M|0,(d?f[K>>2]|0:K)|0,(d?f[k>>2]|0:e&255)|0)|0;e=x;x=0;if(e&1){L=43;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);e=x;x=0;if(e&1){L=44;break a}f[h>>2]=f[I>>2];HTa(J);HTa(K);HTa(M);e=nq(a)|0;d=f[a>>2]|0;if(e>>>0>=(f[d+4>>2]|0)-(f[d>>2]|0)>>2>>>0){AY(M,e);x=0;ia(83,M|0,98533)|0;d=x;x=0;if(d&1){L=47;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,J|0,98557)|0;d=x;x=0;if(d&1){L=48;break a}f[I>>2]=f[J>>2];f[I+4>>2]=f[J+4>>2];f[I+8>>2]=f[J+8>>2];d=0;while(1){if((d|0)==3)break;f[J+(d<<2)>>2]=0;d=d+1|0}d=f[a>>2]|0;x=0;ua(1870,K|0,(f[d+4>>2]|0)-(f[d>>2]|0)>>2|0);d=x;x=0;if(d&1){L=49;break a}d=b[v>>0]|0;N=d<<24>>24<0;x=0;ja(49,I|0,(N?f[K>>2]|0:K)|0,(N?f[w>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){L=50;break a}f[D>>2]=f[I>>2];f[D+4>>2]=f[I+4>>2];f[D+8>>2]=f[I+8>>2];d=0;while(1){if((d|0)==3)break;f[I+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1869,a|0,D|0);N=x;x=0;if(N&1){L=51;break a}HTa(D);HTa(K);HTa(I);HTa(J);HTa(M);d=f[a>>2]|0}N=f[f[(f[d>>2]|0)+(e<<2)>>2]>>2]|0;f[h+16>>2]=N;if(!(Iab(N)|0)){L=57;break a}d=f[r>>2]|0;if((d|0)==(f[s>>2]|0)){IL(t,z);break b}else{f[d>>2]=g;f[r>>2]=(f[r>>2]|0)+4;break b}}case 1:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;WZ(M,98597,h7a(98597)|0);x=0;ua(1870,K|0,i|0);N=x;x=0;if(N&1){L=70;break a}N=b[l>>0]|0;L=N<<24>>24<0;x=0;ja(49,M|0,(L?f[K>>2]|0:K)|0,(L?f[m>>2]|0:N&255)|0)|0;N=x;x=0;if(N&1){L=71;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);N=x;x=0;if(N&1){L=72;break a}f[h>>2]=f[I>>2];HTa(J);HTa(K);HTa(M);if((oq(a)|0)!=-16){f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;WZ(E,98606,h7a(98606)|0);x=0;ua(1869,a|0,E|0);N=x;x=0;if(N&1){L=75;break a}HTa(E)}N=f[a>>2]|0;b[N+60>>0]=1;b[N+61>>0]=1;cLa(F,-1,0);WB(a,N+68|0,N+72|0,I,f[F>>2]|0);if(b[I>>0]|0){f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;WZ(G,95614,h7a(95614)|0);x=0;ua(1869,a|0,G|0);N=x;x=0;if(N&1){L=79;break a}HTa(G)}L=107;break}case 2:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;WZ(M,98641,h7a(98641)|0);x=0;ua(1870,K|0,i|0);N=x;x=0;if(N&1){L=88;break a}N=b[n>>0]|0;L=N<<24>>24<0;x=0;ja(49,M|0,(L?f[K>>2]|0:K)|0,(L?f[o>>2]|0:N&255)|0)|0;N=x;x=0;if(N&1){L=89;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);N=x;x=0;if(N&1){L=90;break a}f[h>>2]=f[I>>2];HTa(J);HTa(K);HTa(M);L=f[a>>2]|0;b[L+112>>0]=1;b[L+113>>0]=1;cLa(A,65535,0);WB(a,L+92|0,L+96|0,L+114|0,f[A>>2]|0);L=107;break}case 3:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;WZ(M,98650,h7a(98650)|0);x=0;ua(1870,K|0,i|0);N=x;x=0;if(N&1){L=100;break a}N=b[p>>0]|0;L=N<<24>>24<0;x=0;ja(49,M|0,(L?f[K>>2]|0:K)|0,(L?f[q>>2]|0:N&255)|0)|0;N=x;x=0;if(N&1){L=101;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);N=x;x=0;if(N&1){L=102;break a}f[h>>2]=f[I>>2];HTa(J);HTa(K);HTa(M);L=mF(a)|0;f[h+20>>2]=L;nq(a)|0;L=107;break}default:{f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;WZ(B,98659,h7a(98659)|0);x=0;ua(1869,a|0,B|0);N=x;x=0;if(N&1){L=109;break a}HTa(B);L=107}}while(0);if((L|0)==107){L=0;Ys(f[a>>2]|0,h)}i=i+1|0}switch(L|0){case 13:{u=H;return}case 17:{N=Ia()|0;JCa(z);Ua(N|0)}case 42:{c=Ia()|0;L=46;break}case 43:{c=Ia()|0;L=45;break}case 44:{c=Ia()|0;HTa(J);L=45;break}case 47:{c=Ia()|0;L=55;break}case 48:{c=Ia()|0;L=54;break}case 49:{c=Ia()|0;L=53;break}case 50:{c=Ia()|0;L=52;break}case 51:{c=Ia()|0;HTa(D);L=52;break}case 57:{Ca(98561,87234,934,98585);break}case 70:{c=Ia()|0;L=74;break}case 71:{c=Ia()|0;L=73;break}case 72:{c=Ia()|0;HTa(J);L=73;break}case 75:{c=Ia()|0;HTa(E);break}case 79:{c=Ia()|0;HTa(G);break}case 88:{c=Ia()|0;L=92;break}case 89:{c=Ia()|0;L=91;break}case 90:{c=Ia()|0;HTa(J);L=91;break}case 100:{c=Ia()|0;L=104;break}case 101:{c=Ia()|0;L=103;break}case 102:{c=Ia()|0;HTa(J);L=103;break}case 109:{c=Ia()|0;HTa(B);break}}if((L|0)==45){HTa(K);L=46}else if((L|0)==52){HTa(K);L=53}else if((L|0)==73){HTa(K);L=74}else if((L|0)==91){HTa(K);L=92}else if((L|0)==103){HTa(K);L=104}if((L|0)==46)HTa(M);else if((L|0)==53){HTa(I);L=54}else if((L|0)==74)HTa(M);else if((L|0)==92)HTa(M);else if((L|0)==104)HTa(M);if((L|0)==54){HTa(J);L=55}if((L|0)==55)HTa(M);Ua(c|0)}function _c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=u;u=u+704|0;h=Z+680|0;d=Z+96|0;O=Z+48|0;U=Z+16|0;V=Z+664|0;W=Z+648|0;X=Z+632|0;Y=Z+616|0;i=Z+600|0;j=Z+584|0;k=Z+568|0;l=Z+552|0;m=Z+536|0;n=Z+520|0;o=Z+504|0;p=Z+488|0;q=Z+472|0;r=Z+456|0;s=Z+440|0;t=Z+424|0;v=Z+408|0;w=Z+392|0;x=Z+376|0;y=Z+360|0;z=Z+344|0;A=Z+328|0;B=Z+312|0;C=Z+296|0;D=Z+280|0;E=Z+264|0;F=Z+248|0;G=Z+232|0;H=Z+216|0;J=Z+200|0;K=Z+184|0;L=Z+168|0;M=Z+152|0;N=Z+136|0;P=Z+120|0;Q=Z+80|0;R=Z+64|0;S=Z+32|0;T=Z;e=c+12|0;Mu(d,b,f[e>>2]|0);if(!(D0a(d)|0)?(f[O>>2]=f[d>>2],f[O+4>>2]=f[d+4>>2],f[O+8>>2]=f[d+8>>2],f[O+12>>2]=f[d+12>>2],g=c+16|0,Mu(h,b,f[g>>2]|0),f[d>>2]=f[h>>2],f[d+4>>2]=f[h+4>>2],f[d+8>>2]=f[h+8>>2],f[d+12>>2]=f[h+12>>2],f[d+16>>2]=f[h+16>>2],!(D0a(d)|0)):0){f[U>>2]=f[d>>2];f[U+4>>2]=f[d+4>>2];f[U+8>>2]=f[d+8>>2];f[U+12>>2]=f[d+12>>2];d=f[(f[e>>2]|0)+4>>2]|0;if(o2a(d)|0?(f[O>>2]|0)!=(d|0):0)Ca(101344,101307,310,101416);d=f[(f[g>>2]|0)+4>>2]|0;if(o2a(d)|0?(f[U>>2]|0)!=(d|0):0)Ca(101428,101307,311,101416);a:do switch(f[c+8>>2]|0){case 63:case 50:case 25:case 0:{tT(V,O,U);f[h>>2]=f[V>>2];f[h+4>>2]=f[V+4>>2];f[h+8>>2]=f[V+8>>2];f[h+12>>2]=f[V+12>>2];rAa(a,h);break}case 64:case 51:case 26:case 1:{nT(W,O,U);f[h>>2]=f[W>>2];f[h+4>>2]=f[W+4>>2];f[h+8>>2]=f[W+8>>2];f[h+12>>2]=f[W+12>>2];rAa(a,h);break}case 65:case 52:case 27:case 2:{gT(X,O,U);f[h>>2]=f[X>>2];f[h+4>>2]=f[X+4>>2];f[h+8>>2]=f[X+8>>2];f[h+12>>2]=f[X+12>>2];rAa(a,h);break}case 3:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101503);if((Eia(O)|0)==-2147483648&(I|0)==-1?(X=Eia(U)|0,(X|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101518);v5(Y,O,U);f[h>>2]=f[Y>>2];f[h+4>>2]=f[Y+4>>2];f[h+8>>2]=f[Y+8>>2];f[h+12>>2]=f[Y+12>>2];rAa(a,h);break}case 4:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101537);R3(i,O,U);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];rAa(a,h);break}case 5:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101552);if((Eia(O)|0)==-2147483648&(I|0)==-1?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0){m$a(j,0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];rAa(a,h);break a}u5(k,O,U);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];f[h+12>>2]=f[k+12>>2];rAa(a,h);break}case 6:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101567);Q3(l,O,U);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];f[h+8>>2]=f[l+8>>2];f[h+12>>2]=f[l+12>>2];rAa(a,h);break}case 28:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101582);if((Eia(O)|0)==0&(I|0)==-2147483648?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101597);v5(m,O,U);f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];f[h+12>>2]=f[m+12>>2];rAa(a,h);break}case 29:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101616);R3(n,O,U);f[h>>2]=f[n>>2];f[h+4>>2]=f[n+4>>2];f[h+8>>2]=f[n+8>>2];f[h+12>>2]=f[n+12>>2];rAa(a,h);break}case 30:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101631);if((Eia(O)|0)==0&(I|0)==-2147483648?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0){SSa(o,0,0);f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];f[h+12>>2]=f[o+12>>2];rAa(a,h);break a}u5(p,O,U);f[h>>2]=f[p>>2];f[h+4>>2]=f[p+4>>2];f[h+8>>2]=f[p+8>>2];f[h+12>>2]=f[p+12>>2];rAa(a,h);break}case 31:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101646);Q3(q,O,U);f[h>>2]=f[q>>2];f[h+4>>2]=f[q+4>>2];f[h+8>>2]=f[q+8>>2];f[h+12>>2]=f[q+12>>2];rAa(a,h);break}case 66:case 53:{rs(r,O,U);f[h>>2]=f[r>>2];f[h+4>>2]=f[r+4>>2];f[h+8>>2]=f[r+8>>2];f[h+12>>2]=f[r+12>>2];rAa(a,h);break}case 32:case 7:{qaa(s,O,U);f[h>>2]=f[s>>2];f[h+4>>2]=f[s+4>>2];f[h+8>>2]=f[s+8>>2];f[h+12>>2]=f[s+12>>2];rAa(a,h);break}case 33:case 8:{taa(t,O,U);f[h>>2]=f[t>>2];f[h+4>>2]=f[t+4>>2];f[h+8>>2]=f[t+8>>2];f[h+12>>2]=f[t+12>>2];rAa(a,h);break}case 34:case 9:{paa(v,O,U);f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];rAa(a,h);break}case 35:case 10:{B0(w,O,U);f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];rAa(a,h);break}case 36:case 11:{Y$(x,O,U);f[h>>2]=f[x>>2];f[h+4>>2]=f[x+4>>2];f[h+8>>2]=f[x+8>>2];f[h+12>>2]=f[x+12>>2];rAa(a,h);break}case 37:case 12:{r0(y,O,U);f[h>>2]=f[y>>2];f[h+4>>2]=f[y+4>>2];f[h+8>>2]=f[y+8>>2];f[h+12>>2]=f[y+12>>2];rAa(a,h);break}case 38:case 13:{M0(z,O,U);f[h>>2]=f[z>>2];f[h+4>>2]=f[z+4>>2];f[h+8>>2]=f[z+8>>2];f[h+12>>2]=f[z+12>>2];rAa(a,h);break}case 39:case 14:{H0(A,O,U);f[h>>2]=f[A>>2];f[h+4>>2]=f[A+4>>2];f[h+8>>2]=f[A+8>>2];f[h+12>>2]=f[A+12>>2];rAa(a,h);break}case 70:case 57:case 40:case 15:{eT(B,O,U);f[h>>2]=f[B>>2];f[h+4>>2]=f[B+4>>2];f[h+8>>2]=f[B+8>>2];f[h+12>>2]=f[B+12>>2];rAa(a,h);break}case 71:case 58:case 41:case 16:{dT(C,O,U);f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];f[h+12>>2]=f[C+12>>2];rAa(a,h);break}case 42:case 17:{f$(D,O,U);f[h>>2]=f[D>>2];f[h+4>>2]=f[D+4>>2];f[h+8>>2]=f[D+8>>2];f[h+12>>2]=f[D+12>>2];rAa(a,h);break}case 43:case 18:{j_(E,O,U);f[h>>2]=f[E>>2];f[h+4>>2]=f[E+4>>2];f[h+8>>2]=f[E+8>>2];f[h+12>>2]=f[E+12>>2];rAa(a,h);break}case 44:case 19:{Z_(F,O,U);f[h>>2]=f[F>>2];f[h+4>>2]=f[F+4>>2];f[h+8>>2]=f[F+8>>2];f[h+12>>2]=f[F+12>>2];rAa(a,h);break}case 45:case 20:{g_(G,O,U);f[h>>2]=f[G>>2];f[h+4>>2]=f[G+4>>2];f[h+8>>2]=f[G+8>>2];f[h+12>>2]=f[G+12>>2];rAa(a,h);break}case 46:case 21:{g$(H,O,U);f[h>>2]=f[H>>2];f[h+4>>2]=f[H+4>>2];f[h+8>>2]=f[H+8>>2];f[h+12>>2]=f[H+12>>2];rAa(a,h);break}case 47:case 22:{k_(J,O,U);f[h>>2]=f[J>>2];f[h+4>>2]=f[J+4>>2];f[h+8>>2]=f[J+8>>2];f[h+12>>2]=f[J+12>>2];rAa(a,h);break}case 48:case 23:{__(K,O,U);f[h>>2]=f[K>>2];f[h+4>>2]=f[K+4>>2];f[h+8>>2]=f[K+8>>2];f[h+12>>2]=f[K+12>>2];rAa(a,h);break}case 49:case 24:{h_(L,O,U);f[h>>2]=f[L>>2];f[h+4>>2]=f[L+4>>2];f[h+8>>2]=f[L+8>>2];f[h+12>>2]=f[L+12>>2];rAa(a,h);break}case 72:case 59:{tca(M,O,U);f[h>>2]=f[M>>2];f[h+4>>2]=f[M+4>>2];f[h+8>>2]=f[M+8>>2];f[h+12>>2]=f[M+12>>2];rAa(a,h);break}case 73:case 60:{ica(N,O,U);f[h>>2]=f[N>>2];f[h+4>>2]=f[N+4>>2];f[h+8>>2]=f[N+8>>2];f[h+12>>2]=f[N+12>>2];rAa(a,h);break}case 74:case 61:{uca(P,O,U);f[h>>2]=f[P>>2];f[h+4>>2]=f[P+4>>2];f[h+8>>2]=f[P+8>>2];f[h+12>>2]=f[P+12>>2];rAa(a,h);break}case 75:case 62:{jca(Q,O,U);f[h>>2]=f[Q>>2];f[h+4>>2]=f[Q+4>>2];f[h+8>>2]=f[Q+8>>2];f[h+12>>2]=f[Q+12>>2];rAa(a,h);break}case 67:case 54:{VT(R,O,U);f[h>>2]=f[R>>2];f[h+4>>2]=f[R+4>>2];f[h+8>>2]=f[R+8>>2];f[h+12>>2]=f[R+12>>2];rAa(a,h);break}case 68:case 55:{Jo(S,O,U);f[h>>2]=f[S>>2];f[h+4>>2]=f[S+4>>2];f[h+8>>2]=f[S+8>>2];f[h+12>>2]=f[S+12>>2];rAa(a,h);break}case 69:case 56:{Ko(T,O,U);f[h>>2]=f[T>>2];f[h+4>>2]=f[T+4>>2];f[h+8>>2]=f[T+8>>2];f[h+12>>2]=f[T+12>>2];rAa(a,h);break}default:hb()}while(0)}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=Z;return}function $c(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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,X=0,Y=0,Z=0,_=0,$=0,aa=0;T=u;u=u+416|0;Q=T+352|0;L=T+340|0;P=T+336|0;Y=T+296|0;J=T+414|0;K=T+413|0;Z=T+248|0;S=T+236|0;_=T+224|0;$=T+208|0;aa=T+152|0;H=T+136|0;t=T+288|0;v=T+284|0;w=T+280|0;E=T+240|0;F=T+220|0;G=T+204|0;I=T+412|0;U=T+48|0;V=T+24|0;R=T;d=T+72|0;e=g0a(c,1)|0;e=pPa(Bbb(f[e>>2]|0)|0)|0;e=f[e>>2]|0;if(b[a+32>>0]|0){N=yCa(134008,52108)|0;O=g0a(c,1)|0;O=pPa(Bbb(f[O>>2]|0)|0)|0;zma(yCa(N,f[O>>2]|0)|0,10)|0}s=n8(88)|0;aX(s);f[P>>2]=s;E1a(Q,e);f[s>>2]=f[Q>>2];s=g0a(c,2)|0;s=f[s>>2]|0;M=g0a(c,3)|0;M=f[M>>2]|0;Qua(Y);rBa(Z);Kab(S);f[_>>2]=0;N=_+4|0;f[N>>2]=0;f[_+8>>2]=0;f[$>>2]=0;O=$+4|0;f[O>>2]=0;f[$+8>>2]=0;Eda(aa);y=a+132|0;z=a+98|0;A=Z+4|0;B=Z+12|0;C=Z+16|0;D=Z+8|0;r=0;a:while(1){e=Bbb(s)|0;x=0;c=ga(213,e|0)|0;q=x;x=0;if(q&1){X=7;break}if(r>>>0>=c>>>0){X=6;break}x=0;e=ia(45,M|0,r|0)|0;q=x;x=0;if(q&1){X=49;break}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(223,e|0)|0;q=x;x=0;if(q&1){X=50;break}p=Wab(e)|0;p=f[p>>2]|0;f[H>>2]=p;q=Vab(e)|0;f[t>>2]=f[q>>2];f[v>>2]=f[y>>2];q=(b[z>>0]|0)!=0;x=0;f[L>>2]=f[t>>2];f[Q>>2]=f[v>>2];q=ma(21,L|0,0,0,Q|0,q|0)|0;o=x;x=0;if(o&1){X=51;break}e=f[P>>2]|0;E1a(w,p);x=0;c=ga(224,q|0)|0;o=x;x=0;if(o&1){X=51;break}x=0;f[Q>>2]=f[w>>2];ja(42,e|0,Q|0,c|0)|0;o=x;x=0;if(o&1){X=51;break}o=v8a(H)|0;l=f[A>>2]|0;m=(l|0)==0;b:do if(!m){j=l+-1|0;k=(j&l|0)==0;if(!k)if(o>>>0>>0)c=o;else c=(o>>>0)%(l>>>0)|0;else c=j&o;e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;if(!e)X=28;else do{e=f[e>>2]|0;if(!e){X=28;break b}g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&j;if((g|0)!=(c|0)){X=28;break b}}}while(!(wXa(f[e+8>>2]|0,p)|0))}else{c=0;X=28}while(0);if((X|0)==28){X=0;x=0;wa(73,L|0,Z|0,o|0,H|0);k=x;x=0;if(k&1){X=51;break}h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[C>>2];do if(m|i*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(h/i))>>>0;x=0;ua(84,Z|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){X=35;break a}e=f[A>>2]|0;c=e+-1|0;if(!(c&e)){j=e;c=c&o;break}if(o>>>0>>0){j=e;c=o}else{j=e;c=(o>>>0)%(e>>>0)|0}}else j=l;while(0);e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;if(!e){g=f[L>>2]|0;f[g>>2]=f[D>>2];f[D>>2]=g;f[(f[Z>>2]|0)+(c<<2)>>2]=D;e=f[g>>2]|0;if(e|0){e=f[e+4>>2]|0;c=j+-1|0;if(c&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&c;f[(f[Z>>2]|0)+(e<<2)>>2]=g}}else{o=f[L>>2]|0;f[o>>2]=f[e>>2];f[e>>2]=o}f[B>>2]=(f[B>>2]|0)+1}x=0;va(89,aa|0,p|0,q|0);q=x;x=0;if(q&1){X=51;break}r=r+1|0}c:do if((X|0)==6){x=0;e=ga(213,e|0)|0;w=x;x=0;do if(w&1)d=Ia()|0;else{t=e;d:while(1){e=Bbb(M)|0;x=0;e=ga(213,e|0)|0;w=x;x=0;if(w&1){X=65;break}if(t>>>0>=e>>>0){X=118;break}x=0;e=ia(45,M|0,t|0)|0;w=x;x=0;if(w&1){X=65;break}e=Bbb(f[e>>2]|0)|0;x=0;e=ia(46,e|0,f[33292]|0)|0;w=x;x=0;if(w&1){X=65;break}if(!e){X=118;break}x=0;e=ia(45,M|0,t|0)|0;w=x;x=0;if(w&1){X=68;break}s=f[e>>2]|0;r=0;while(1){x=0;e=ia(45,s|0,1)|0;w=x;x=0;if(w&1){X=69;break d}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(213,e|0)|0;w=x;x=0;if(w&1){X=69;break d}if(r>>>0>=e>>>0)break;x=0;e=ia(45,s|0,1)|0;w=x;x=0;if(w&1){X=114;break d}x=0;e=ia(45,f[e>>2]|0,r|0)|0;w=x;x=0;if(w&1){X=114;break d}c=f[e>>2]|0;x=0;e=ia(45,c|0,0)|0;w=x;x=0;if(w&1){X=115;break d}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;w=x;x=0;if(w&1){X=115;break d}q=f[e>>2]|0;f[H>>2]=q;x=0;e=ia(45,c|0,1)|0;w=x;x=0;if(w&1){X=116;break d}f[E>>2]=f[e>>2];f[F>>2]=f[y>>2];p=(b[z>>0]|0)!=0;x=0;f[L>>2]=f[E>>2];f[Q>>2]=f[F>>2];p=ma(21,L|0,0,1,Q|0,p|0)|0;w=x;x=0;if(w&1){X=116;break d}e=f[P>>2]|0;E1a(G,q);x=0;c=ga(224,p|0)|0;w=x;x=0;if(w&1){X=116;break d}x=0;f[Q>>2]=f[G>>2];ja(43,e|0,Q|0,c|0)|0;w=x;x=0;if(w&1){X=116;break d}o=v8a(H)|0;l=f[A>>2]|0;m=(l|0)==0;e:do if(m){c=0;X=93}else{j=l+-1|0;k=(j&l|0)==0;do if(k)c=j&o;else{if(o>>>0>>0){c=o;break}c=(o>>>0)%(l>>>0)|0}while(0);e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;if(!e){X=93;break}do{e=f[e>>2]|0;if(!e){X=93;break e}g=f[e+4>>2]|0;if((g|0)!=(o|0)){do if(k)g=g&j;else{if(g>>>0>>0)break;g=(g>>>0)%(l>>>0)|0}while(0);if((g|0)!=(c|0)){X=93;break e}}}while(!(wXa(f[e+8>>2]|0,q)|0))}while(0);if((X|0)==93){X=0;x=0;wa(73,Q|0,Z|0,o|0,H|0);w=x;x=0;if(w&1){X=116;break d}h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[C>>2];do if(m|i*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;v=~~+W(+(h/i))>>>0;x=0;ua(84,Z|0,(w>>>0>>0?v:w)|0);w=x;x=0;if(w&1){X=100;break d}e=f[A>>2]|0;c=e+-1|0;if(!(c&e)){j=e;c=c&o;break}if(o>>>0>>0){j=e;c=o;break}j=e;c=(o>>>0)%(e>>>0)|0}else j=l;while(0);e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;do if(!e){g=f[Q>>2]|0;f[g>>2]=f[D>>2];f[D>>2]=g;f[(f[Z>>2]|0)+(c<<2)>>2]=D;e=f[g>>2]|0;if(!e)break;e=f[e+4>>2]|0;c=j+-1|0;do if(!(c&j))e=e&c;else{if(e>>>0>>0)break;e=(e>>>0)%(j>>>0)|0}while(0);f[(f[Z>>2]|0)+(e<<2)>>2]=g}else{w=f[Q>>2]|0;f[w>>2]=f[e>>2];f[e>>2]=w}while(0);f[B>>2]=(f[B>>2]|0)+1}x=0;va(90,aa|0,q|0,p|0);w=x;x=0;if(w&1){X=116;break d}r=r+1|0}t=t+1|0}if((X|0)==65){d=Ia()|0;break}else if((X|0)==68){d=Ia()|0;break c}else if((X|0)==69){d=Ia()|0;break c}else if((X|0)==100){d=Ia()|0;e=f[Q>>2]|0;f[Q>>2]=0;if(e|0)ubb(e)}else if((X|0)==114){d=Ia()|0;break c}else if((X|0)==115)d=Ia()|0;else if((X|0)==116)d=Ia()|0;else if((X|0)==118){b[L>>0]=0;f[H>>2]=L;f[H+4>>2]=P;f[H+8>>2]=Z;f[H+12>>2]=aa;b[I>>0]=0;g=U+16|0;f[g>>2]=0;f[V+16>>2]=0;f[d>>2]=Z;f[d+4>>2]=a;f[d+8>>2]=P;f[d+12>>2]=aa;f[d+16>>2]=R;f[d+20>>2]=V;f[d+24>>2]=H;f[d+28>>2]=I;f[d+32>>2]=S;f[d+36>>2]=Y;f[d+40>>2]=J;f[d+44>>2]=_;f[d+48>>2]=U;f[d+52>>2]=$;f[d+56>>2]=K;x=0;c=Q;e=c+60|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));ua(85,R|0,Q|0);L=x;x=0;if(L&1)d=Ia()|0;else{f[Q>>2]=a;f[Q+4>>2]=R;S1(V,Q);f[Q>>2]=a;f[Q+4>>2]=R;R1(U,Q);x=0;e=ja(48,f[g>>2]|0,M|0,t|0)|0;Q=x;x=0;do if(!(Q&1)){d=f[P>>2]|0;f[d+36>>2]=e;if((f[N>>2]|0)==(f[_>>2]|0)?(f[O>>2]|0)==(f[$>>2]|0):0)if(Gab(f[S>>2]|0)|0){sta(R);sta(V);sta(U);QEa(aa);uSa($);uSa(_);xOa(Z);Foa(Y);u=T;return d|0}else{x=0;wa(71,52195,51387,2757,52179);x=0;break}x=0;wa(71,52127,51387,2756,52179);x=0}while(0);d=Ia()|0;sta(R)}sta(V);sta(U);break c}break c}while(0)}else if((X|0)==7)d=Ia()|0;else if((X|0)==35){d=Ia()|0;e=f[L>>2]|0;f[L>>2]=0;if(e|0)ubb(e);X=52}else if((X|0)==49)d=Ia()|0;else if((X|0)==50)d=Ia()|0;else if((X|0)==51){d=Ia()|0;X=52}while(0);QEa(aa);uSa($);uSa(_);xOa(Z);Foa(Y);Ua(d|0);return 0}function ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=u;u=u+704|0;h=Z+680|0;d=Z+96|0;O=Z+48|0;U=Z+16|0;V=Z+664|0;W=Z+648|0;X=Z+632|0;Y=Z+616|0;i=Z+600|0;j=Z+584|0;k=Z+568|0;l=Z+552|0;m=Z+536|0;n=Z+520|0;o=Z+504|0;p=Z+488|0;q=Z+472|0;r=Z+456|0;s=Z+440|0;t=Z+424|0;v=Z+408|0;w=Z+392|0;x=Z+376|0;y=Z+360|0;z=Z+344|0;A=Z+328|0;B=Z+312|0;C=Z+296|0;D=Z+280|0;E=Z+264|0;F=Z+248|0;G=Z+232|0;H=Z+216|0;J=Z+200|0;K=Z+184|0;L=Z+168|0;M=Z+152|0;N=Z+136|0;P=Z+120|0;Q=Z+80|0;R=Z+64|0;S=Z+32|0;T=Z;e=c+12|0;Mw(d,b,f[e>>2]|0);if(!(D0a(d)|0)?(f[O>>2]=f[d>>2],f[O+4>>2]=f[d+4>>2],f[O+8>>2]=f[d+8>>2],f[O+12>>2]=f[d+12>>2],g=c+16|0,Mw(h,b,f[g>>2]|0),f[d>>2]=f[h>>2],f[d+4>>2]=f[h+4>>2],f[d+8>>2]=f[h+8>>2],f[d+12>>2]=f[h+12>>2],f[d+16>>2]=f[h+16>>2],!(D0a(d)|0)):0){f[U>>2]=f[d>>2];f[U+4>>2]=f[d+4>>2];f[U+8>>2]=f[d+8>>2];f[U+12>>2]=f[d+12>>2];d=f[(f[e>>2]|0)+4>>2]|0;if(o2a(d)|0?(f[O>>2]|0)!=(d|0):0)Ca(101344,101307,310,101416);d=f[(f[g>>2]|0)+4>>2]|0;if(o2a(d)|0?(f[U>>2]|0)!=(d|0):0)Ca(101428,101307,311,101416);a:do switch(f[c+8>>2]|0){case 63:case 50:case 25:case 0:{tT(V,O,U);f[h>>2]=f[V>>2];f[h+4>>2]=f[V+4>>2];f[h+8>>2]=f[V+8>>2];f[h+12>>2]=f[V+12>>2];rAa(a,h);break}case 64:case 51:case 26:case 1:{nT(W,O,U);f[h>>2]=f[W>>2];f[h+4>>2]=f[W+4>>2];f[h+8>>2]=f[W+8>>2];f[h+12>>2]=f[W+12>>2];rAa(a,h);break}case 65:case 52:case 27:case 2:{gT(X,O,U);f[h>>2]=f[X>>2];f[h+4>>2]=f[X+4>>2];f[h+8>>2]=f[X+8>>2];f[h+12>>2]=f[X+12>>2];rAa(a,h);break}case 3:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101503);if((Eia(O)|0)==-2147483648&(I|0)==-1?(X=Eia(U)|0,(X|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101518);v5(Y,O,U);f[h>>2]=f[Y>>2];f[h+4>>2]=f[Y+4>>2];f[h+8>>2]=f[Y+8>>2];f[h+12>>2]=f[Y+12>>2];rAa(a,h);break}case 4:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101537);R3(i,O,U);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];rAa(a,h);break}case 5:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101552);if((Eia(O)|0)==-2147483648&(I|0)==-1?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0){m$a(j,0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];rAa(a,h);break a}u5(k,O,U);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];f[h+12>>2]=f[k+12>>2];rAa(a,h);break}case 6:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101567);Q3(l,O,U);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];f[h+8>>2]=f[l+8>>2];f[h+12>>2]=f[l+12>>2];rAa(a,h);break}case 28:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101582);if((Eia(O)|0)==0&(I|0)==-2147483648?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101597);v5(m,O,U);f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];f[h+12>>2]=f[m+12>>2];rAa(a,h);break}case 29:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101616);R3(n,O,U);f[h>>2]=f[n>>2];f[h+4>>2]=f[n+4>>2];f[h+8>>2]=f[n+8>>2];f[h+12>>2]=f[n+12>>2];rAa(a,h);break}case 30:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101631);if((Eia(O)|0)==0&(I|0)==-2147483648?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0){SSa(o,0,0);f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];f[h+12>>2]=f[o+12>>2];rAa(a,h);break a}u5(p,O,U);f[h>>2]=f[p>>2];f[h+4>>2]=f[p+4>>2];f[h+8>>2]=f[p+8>>2];f[h+12>>2]=f[p+12>>2];rAa(a,h);break}case 31:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101646);Q3(q,O,U);f[h>>2]=f[q>>2];f[h+4>>2]=f[q+4>>2];f[h+8>>2]=f[q+8>>2];f[h+12>>2]=f[q+12>>2];rAa(a,h);break}case 66:case 53:{rs(r,O,U);f[h>>2]=f[r>>2];f[h+4>>2]=f[r+4>>2];f[h+8>>2]=f[r+8>>2];f[h+12>>2]=f[r+12>>2];rAa(a,h);break}case 32:case 7:{qaa(s,O,U);f[h>>2]=f[s>>2];f[h+4>>2]=f[s+4>>2];f[h+8>>2]=f[s+8>>2];f[h+12>>2]=f[s+12>>2];rAa(a,h);break}case 33:case 8:{taa(t,O,U);f[h>>2]=f[t>>2];f[h+4>>2]=f[t+4>>2];f[h+8>>2]=f[t+8>>2];f[h+12>>2]=f[t+12>>2];rAa(a,h);break}case 34:case 9:{paa(v,O,U);f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];rAa(a,h);break}case 35:case 10:{B0(w,O,U);f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];rAa(a,h);break}case 36:case 11:{Y$(x,O,U);f[h>>2]=f[x>>2];f[h+4>>2]=f[x+4>>2];f[h+8>>2]=f[x+8>>2];f[h+12>>2]=f[x+12>>2];rAa(a,h);break}case 37:case 12:{r0(y,O,U);f[h>>2]=f[y>>2];f[h+4>>2]=f[y+4>>2];f[h+8>>2]=f[y+8>>2];f[h+12>>2]=f[y+12>>2];rAa(a,h);break}case 38:case 13:{M0(z,O,U);f[h>>2]=f[z>>2];f[h+4>>2]=f[z+4>>2];f[h+8>>2]=f[z+8>>2];f[h+12>>2]=f[z+12>>2];rAa(a,h);break}case 39:case 14:{H0(A,O,U);f[h>>2]=f[A>>2];f[h+4>>2]=f[A+4>>2];f[h+8>>2]=f[A+8>>2];f[h+12>>2]=f[A+12>>2];rAa(a,h);break}case 70:case 57:case 40:case 15:{eT(B,O,U);f[h>>2]=f[B>>2];f[h+4>>2]=f[B+4>>2];f[h+8>>2]=f[B+8>>2];f[h+12>>2]=f[B+12>>2];rAa(a,h);break}case 71:case 58:case 41:case 16:{dT(C,O,U);f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];f[h+12>>2]=f[C+12>>2];rAa(a,h);break}case 42:case 17:{f$(D,O,U);f[h>>2]=f[D>>2];f[h+4>>2]=f[D+4>>2];f[h+8>>2]=f[D+8>>2];f[h+12>>2]=f[D+12>>2];rAa(a,h);break}case 43:case 18:{j_(E,O,U);f[h>>2]=f[E>>2];f[h+4>>2]=f[E+4>>2];f[h+8>>2]=f[E+8>>2];f[h+12>>2]=f[E+12>>2];rAa(a,h);break}case 44:case 19:{Z_(F,O,U);f[h>>2]=f[F>>2];f[h+4>>2]=f[F+4>>2];f[h+8>>2]=f[F+8>>2];f[h+12>>2]=f[F+12>>2];rAa(a,h);break}case 45:case 20:{g_(G,O,U);f[h>>2]=f[G>>2];f[h+4>>2]=f[G+4>>2];f[h+8>>2]=f[G+8>>2];f[h+12>>2]=f[G+12>>2];rAa(a,h);break}case 46:case 21:{g$(H,O,U);f[h>>2]=f[H>>2];f[h+4>>2]=f[H+4>>2];f[h+8>>2]=f[H+8>>2];f[h+12>>2]=f[H+12>>2];rAa(a,h);break}case 47:case 22:{k_(J,O,U);f[h>>2]=f[J>>2];f[h+4>>2]=f[J+4>>2];f[h+8>>2]=f[J+8>>2];f[h+12>>2]=f[J+12>>2];rAa(a,h);break}case 48:case 23:{__(K,O,U);f[h>>2]=f[K>>2];f[h+4>>2]=f[K+4>>2];f[h+8>>2]=f[K+8>>2];f[h+12>>2]=f[K+12>>2];rAa(a,h);break}case 49:case 24:{h_(L,O,U);f[h>>2]=f[L>>2];f[h+4>>2]=f[L+4>>2];f[h+8>>2]=f[L+8>>2];f[h+12>>2]=f[L+12>>2];rAa(a,h);break}case 72:case 59:{tca(M,O,U);f[h>>2]=f[M>>2];f[h+4>>2]=f[M+4>>2];f[h+8>>2]=f[M+8>>2];f[h+12>>2]=f[M+12>>2];rAa(a,h);break}case 73:case 60:{ica(N,O,U);f[h>>2]=f[N>>2];f[h+4>>2]=f[N+4>>2];f[h+8>>2]=f[N+8>>2];f[h+12>>2]=f[N+12>>2];rAa(a,h);break}case 74:case 61:{uca(P,O,U);f[h>>2]=f[P>>2];f[h+4>>2]=f[P+4>>2];f[h+8>>2]=f[P+8>>2];f[h+12>>2]=f[P+12>>2];rAa(a,h);break}case 75:case 62:{jca(Q,O,U);f[h>>2]=f[Q>>2];f[h+4>>2]=f[Q+4>>2];f[h+8>>2]=f[Q+8>>2];f[h+12>>2]=f[Q+12>>2];rAa(a,h);break}case 67:case 54:{VT(R,O,U);f[h>>2]=f[R>>2];f[h+4>>2]=f[R+4>>2];f[h+8>>2]=f[R+8>>2];f[h+12>>2]=f[R+12>>2];rAa(a,h);break}case 68:case 55:{Jo(S,O,U);f[h>>2]=f[S>>2];f[h+4>>2]=f[S+4>>2];f[h+8>>2]=f[S+8>>2];f[h+12>>2]=f[S+12>>2];rAa(a,h);break}case 69:case 56:{Ko(T,O,U);f[h>>2]=f[T>>2];f[h+4>>2]=f[T+4>>2];f[h+8>>2]=f[T+8>>2];f[h+12>>2]=f[T+12>>2];rAa(a,h);break}default:hb()}while(0)}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=Z;return}function bd(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;I=u;u=u+336|0;c=I+324|0;d=I+312|0;e=I+300|0;C=I+288|0;D=I+276|0;E=I+264|0;F=I+252|0;G=I+240|0;H=I+228|0;g=I+216|0;h=I+204|0;i=I+192|0;j=I+180|0;k=I+168|0;l=I+156|0;m=I+144|0;n=I+132|0;o=I+120|0;p=I+108|0;q=I+96|0;r=I+84|0;s=I+72|0;t=I+60|0;v=I+48|0;w=I+36|0;y=I+24|0;z=I+12|0;A=I;B=a+24|0;do if((f[B>>2]|0)>3){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;WZ(c,67894,h7a(67894)|0);x=0;ua(80,a|0,c|0);K=x;x=0;if(K&1){K=Ia()|0;HTa(c);c=K;break}HTa(c);f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;WZ(d,68316,h7a(68316)|0);x=0;ua(80,a|0,d|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(d);break}else{HTa(d);J=7;break}}else J=7;while(0);a:do if((J|0)==7){do if(!(b[a+33>>0]|0)){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;WZ(e,67701,h7a(67701)|0);x=0;ua(80,a|0,e|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(e);break a}else{HTa(e);c=a;break}}else c=a;while(0);f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;WZ(C,69603,h7a(69603)|0);x=0;ua(80,c|0,C|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(C);break}HTa(C);f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;WZ(D,69828,h7a(69828)|0);x=0;ua(80,c|0,D|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(D);break}HTa(D);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;WZ(E,68806,h7a(68806)|0);x=0;ua(80,c|0,E|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(E);break}HTa(E);if((f[B>>2]|0)<=1?(f[a+28>>2]|0)<=1:0)J=27;else J=17;do if((J|0)==17){f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;WZ(F,68899,h7a(68899)|0);x=0;ua(80,c|0,F|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(F);break a}HTa(F);if((f[B>>2]|0)<=2?(f[a+28>>2]|0)<=1:0){J=27;break}f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;WZ(G,109908,h7a(109908)|0);x=0;ua(80,c|0,G|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(G);break a}else{HTa(G);break}}while(0);do if((J|0)==27){f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;WZ(H,113388,h7a(113388)|0);x=0;ua(80,c|0,H|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(H);break a}else{HTa(H);break}}while(0);if(!((f[B>>2]|0)<=1?(f[a+28>>2]|0)<=1:0))J=32;do if((J|0)==32){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,67534,h7a(67534)|0);x=0;ua(80,c|0,g|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(g);break a}else{HTa(g);break}}while(0);f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;WZ(h,70412,h7a(70412)|0);x=0;ua(80,c|0,h|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(h);break}HTa(h);f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;WZ(i,71029,h7a(71029)|0);x=0;ua(80,c|0,i|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(i);break}HTa(i);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;WZ(j,69958,h7a(69958)|0);x=0;ua(80,c|0,j|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(j);break}HTa(j);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;WZ(k,69603,h7a(69603)|0);x=0;ua(80,c|0,k|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(k);break}HTa(k);if(!((f[B>>2]|0)<=2?(f[a+28>>2]|0)<=1:0))J=41;do if((J|0)==41){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;WZ(l,68726,h7a(68726)|0);x=0;ua(80,c|0,l|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(l);break a}else{HTa(l);break}}while(0);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;WZ(m,67414,h7a(67414)|0);x=0;ua(80,c|0,m|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(m);break}HTa(m);f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;WZ(n,70169,h7a(70169)|0);x=0;ua(80,c|0,n|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(n);break}HTa(n);f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;WZ(o,71029,h7a(71029)|0);x=0;ua(80,c|0,o|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(o);break}HTa(o);f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;WZ(p,69958,h7a(69958)|0);x=0;ua(80,c|0,p|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(p);break}HTa(p);if(!((f[B>>2]|0)<=2?(f[a+28>>2]|0)<=0:0))J=54;do if((J|0)==54){f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;WZ(q,67607,h7a(67607)|0);x=0;ua(80,c|0,q|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(q);break a}else{HTa(q);break}}while(0);f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;WZ(r,68682,h7a(68682)|0);x=0;ua(80,c|0,r|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(r);break}HTa(r);f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;WZ(s,69603,h7a(69603)|0);x=0;ua(80,c|0,s|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(s);break}HTa(s);f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;WZ(t,68682,h7a(68682)|0);x=0;ua(80,c|0,t|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(t);break}HTa(t);f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;WZ(v,68806,h7a(68806)|0);x=0;ua(80,c|0,v|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(v);break}HTa(v);do if((f[B>>2]|0)<=2){if((f[a+28>>2]|0)>1){J=67;break}f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;WZ(y,113388,h7a(113388)|0);x=0;ua(80,c|0,y|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(y);break a}else{HTa(y);break}}else J=67;while(0);do if((J|0)==67){f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;WZ(w,109908,h7a(109908)|0);x=0;ua(80,c|0,w|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(w);break a}else{HTa(w);break}}while(0);if(!((f[B>>2]|0)<=1?(f[a+28>>2]|0)<=0:0))J=79;do if((J|0)==79){f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;WZ(z,70069,h7a(70069)|0);x=0;ua(80,c|0,z|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(z);break a}else{HTa(z);break}}while(0);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;WZ(A,71029,h7a(71029)|0);x=0;ua(80,c|0,A|0);K=x;x=0;if(K&1){c=Ia()|0;HTa(A);break}else{HTa(A);u=I;return}}while(0);Ua(c|0)}function cd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+96|0;o=p+64|0;j=p+48|0;l=p+36|0;m=p+24|0;n=p+12|0;k=p;a:do if((c-a|0)>3?(b[a>>0]|0)==76:0){e=a+1|0;b:do switch(b[e>>0]|0){case 84:break a;case 119:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124468,h7a(124468)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 98:{if((b[a+3>>0]|0)!=69)break a;switch(b[a+2>>0]|0){case 48:{a4(o,124476);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,o|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(o);break b}}else{yY(g,o);f[e>>2]=(f[e>>2]|0)+24}JJa(o);a=a+4|0;break a}case 49:{b4(o,124482);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,o|0);d=x;x=0;if(d&1){a=Ia()|0;JJa(o);break b}}else{yY(g,o);f[e>>2]=(f[e>>2]|0)+24}JJa(o);a=a+4|0;break a}default:break a}}case 99:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124487,h7a(124487)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 97:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124492,h7a(124492)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 104:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124504,h7a(124504)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 115:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124518,h7a(124518)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124524,h7a(124524)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 105:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,135337,h7a(135337)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 106:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124539,h7a(124539)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 108:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124541,h7a(124541)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 109:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124543,h7a(124543)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 120:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124546,h7a(124546)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 121:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124549,h7a(124549)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 110:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124553,h7a(124553)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 111:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;nW(o,124562,h7a(124562)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(o);break b}else{HTa(o);a=(e|0)==(g|0)?a:e;break a}}case 102:{n=a+2|0;o=So(n,c,d)|0;a=(o|0)==(n|0)?a:o;break a}case 100:{n=a+2|0;o=yo(n,c,d)|0;a=(o|0)==(n|0)?a:o;break a}case 101:{n=a+2|0;o=$o(n,c,d)|0;a=(o|0)==(n|0)?a:o;break a}case 95:{if((b[a+2>>0]|0)!=90)break a;o=a+3|0;e=dd(o,c,d)|0;if((e|0)==(o|0)|(e|0)==(c|0))break a;a=(b[e>>0]|0)==69?e+1|0:a;break a}default:{i=Cc(e,c,d)|0;if((i|0)==(e|0)|(i|0)==(c|0))break a;if((b[i>>0]|0)==69){a=i+1|0;break a}h=i;while(1){if((h|0)==(c|0))break a;e=b[h>>0]|0;if(((e<<24>>24)+-48|0)>>>0>=10)break;h=h+1|0}if(!((h|0)!=(i|0)&e<<24>>24==69))break a;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break a;eY(n,e+-24|0);x=0;ja(101,n|0,0,123276)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,m|0,123274)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;va(186,k|0,i|0,h|0);d=x;x=0;do if(d&1)a=Ia()|0;else{d=b[k+11>>0]|0;c=d<<24>>24<0;x=0;ja(97,l|0,(c?f[k>>2]|0:k)|0,(c?f[k+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(k);break}f[j>>2]=f[l>>2];f[j+4>>2]=f[l+4>>2];f[j+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}NY(o,j);tA((f[g>>2]|0)+-24|0,o);JJa(o);HTa(j);HTa(k);HTa(l);HTa(m);HTa(n);a=h+1|0;break a}while(0);HTa(l)}HTa(m)}HTa(n)}}while(0);Ua(a|0)}while(0);u=p;return a|0}function dd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+64|0;A=z+56|0;B=z+48|0;w=z+40|0;y=z+24|0;s=z+12|0;q=z;do if((a|0)!=(c|0)){v=d+56|0;eVa(A,v);f[v>>2]=(f[v>>2]|0)+1;e=d+61|0;WUa(B,e);if((f[v>>2]|0)>>>0>1)b[e>>0]=1;a:do switch(b[a>>0]|0){case 84:case 71:{x=0;c=ja(98,a|0,c|0,d|0)|0;y=x;x=0;if(y&1){c=Ia()|0;m=111}else{e=1;m=110}break}default:{x=0;l=ja(99,a|0,c|0,d|0)|0;v=x;x=0;if(v&1){c=Ia()|0;m=111;break a}t=f[d+48>>2]|0;v=f[d+52>>2]|0;b:do if((l|0)!=(a|0)){if((l|0)!=(c|0)){switch(b[l>>0]|0){case 46:case 69:{c=l;break b}default:{}}WUa(w,e);b[e>>0]=0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[y+(e<<2)>>2]=0;e=e+1|0}r=d+4|0;i=f[r>>2]|0;c:do if((f[d>>2]|0)!=(i|0)){e=i+-24|0;j=b[e+11>>0]|0;k=j<<24>>24<0;if(k)g=f[i+-20>>2]|0;else g=j&255;if(g){d:do if(!(b[d+60>>0]|0)){if(k){g=f[e>>2]|0;h=f[i+-20>>2]|0}else{g=e;h=j&255}if((b[g+h+-1>>0]|0)==62){if(k){g=f[i+-20>>2]|0;h=f[e>>2]|0}else{g=j&255;h=e}if((b[h+(g+-2)>>0]|0)!=45){if(k){g=f[i+-20>>2]|0;h=f[e>>2]|0}else{g=j&255;h=e}if((b[h+(g+-2)>>0]|0)!=62){x=0;i=ja(100,l|0,c|0,d|0)|0;p=x;x=0;if(p&1){m=20;break}if((i|0)==(l|0)){c=a;e=0;break c}p=f[r>>2]|0;g=p;if(((p-(f[d>>2]|0)|0)/24|0)>>>0<2){c=a;e=0;break c}h=g+-24|0;f[s>>2]=f[h>>2];f[s+4>>2]=f[h+4>>2];f[s+8>>2]=f[h+8>>2];e=0;while(1){if((e|0)==3)break;f[h+(e<<2)>>2]=0;e=e+1|0}g=g+-12|0;h=y+11|0;if((b[h>>0]|0)<0){T0a(f[y>>2]|0,0);f[y+4>>2]=0}else{T0a(y,0);b[h>>0]=0}wv(y);f[y>>2]=f[g>>2];f[y+4>>2]=f[g+4>>2];f[y+8>>2]=f[g+8>>2];e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}p=b[h>>0]|0;if(!(((p<<24>>24<0?f[y+4>>2]|0:p&255)|0)==0?(x=0,ua(3193,s|0,32),p=x,x=0,p&1):0))m=49;do if((m|0)==49){g=f[r>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;JJa(g+(p*24|0)|0);e=p}f[r>>2]=g+-24;p=b[s+11>>0]|0;o=p<<24>>24<0;x=0;ka(38,g+-48|0,0,(o?f[s>>2]|0:s)|0,(o?f[s+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1)break;HTa(s);g=i;e=(f[r>>2]|0)+-24|0;m=54;break d}while(0);c=Ia()|0;HTa(s)}else{g=l;m=54}}else{g=l;m=54}}else{g=l;m=54}}else{g=l;m=54}while(0);e:do if((m|0)==54){x=0;ua(3193,e|0,40);p=x;x=0;if(!(p&1)){if((g|0)!=(c|0)?(b[g>>0]|0)==118:0){c=g+1|0;g=f[d>>2]|0;e=f[r>>2]|0}else m=58;do if((m|0)==58){m=s+11|0;n=s+4|0;o=q+11|0;p=q+4|0;k=1;e=g;f:while(1){h=e;e=f[r>>2]|0;g=f[d>>2]|0;while(1){i=(e-g|0)/24|0;x=0;l=ja(100,h|0,c|0,d|0)|0;j=x;x=0;if(j&1){m=62;break f}e=f[r>>2]|0;g=f[d>>2]|0;j=(e-g|0)/24|0;if((l|0)==(h|0)){m=93;break f}if(j>>>0>i>>>0)break;else h=l}f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[s+(e<<2)>>2]=0;e=e+1|0}e=i;while(1){if(e>>>0>=j>>>0)break;h=b[m>>0]|0;if((h<<24>>24<0?f[n>>2]|0:h&255)|0?(x=0,ia(215,s|0,123498)|0,h=x,x=0,h&1):0){m=72;break f}x=0;ua(3194,q|0,(f[d>>2]|0)+(e*24|0)|0);h=x;x=0;if(h&1){m=76;break f}h=b[o>>0]|0;g=h<<24>>24<0;x=0;ja(97,s|0,(g?f[q>>2]|0:q)|0,(g?f[p>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){m=77;break f}HTa(q);e=e+1|0}e=i;while(1){if(e>>>0>=j>>>0)break;h=f[r>>2]|0;g=0;while(1){if((g|0)==-1)break;i=g+-1|0;JJa(h+(i*24|0)|0);g=i}f[r>>2]=h+-24;e=e+1|0}h=b[m>>0]|0;e=f[n>>2]|0;g=h&255;if((h<<24>>24<0?e:g)|0){i=f[r>>2]|0;if((f[d>>2]|0)==(i|0)){m=106;break}if(!k){x=0;ia(215,i+-24|0,123498)|0;k=x;x=0;if(k&1){m=89;break}h=b[m>>0]|0;g=h&255;i=f[r>>2]|0;e=f[n>>2]|0}k=h<<24>>24<0;x=0;ja(97,i+-24|0,(k?f[s>>2]|0:s)|0,(k?e:g)|0)|0;k=x;x=0;if(k&1){m=89;break}else e=0}else e=k;HTa(s);k=e;e=l}if((m|0)==62){c=Ia()|0;break e}else if((m|0)==72)c=Ia()|0;else if((m|0)==76){c=Ia()|0;m=78}else if((m|0)==77){c=Ia()|0;HTa(q);m=78}else if((m|0)==89)c=Ia()|0;else if((m|0)==93){c=h;break}else if((m|0)==106){HTa(s);c=a;e=0;break c}HTa(s);break e}while(0);if((g|0)==(e|0)){c=a;e=0;break c}x=0;ua(3193,e+-24|0,41);s=x;x=0;if(!(s&1)){if(t&1|0?(x=0,ia(215,(f[r>>2]|0)+-24|0,123221)|0,s=x,x=0,s&1):0){m=20;break}if(t&2|0?(x=0,ia(215,(f[r>>2]|0)+-24|0,123228)|0,s=x,x=0,s&1):0){m=20;break}if(t&4|0?(x=0,ia(215,(f[r>>2]|0)+-24|0,123238)|0,t=x,x=0,t&1):0){m=20;break}switch(v|0){case 1:{x=0;ia(215,(f[r>>2]|0)+-24|0,124702)|0;v=x;x=0;if(v&1){m=20;break e}break}case 2:{x=0;ia(215,(f[r>>2]|0)+-24|0,124705)|0;v=x;x=0;if(v&1){m=20;break e}break}default:{}}v=b[y+11>>0]|0;t=v<<24>>24<0;x=0;ja(97,(f[r>>2]|0)+-24|0,(t?f[y>>2]|0:y)|0,(t?f[y+4>>2]|0:v&255)|0)|0;v=x;x=0;if(!(v&1)){e=1;break c}else m=20}else m=20}else m=20}while(0);if((m|0)==20)c=Ia()|0;HTa(y);i$a(f[w>>2]|0,b[w+4>>0]|0);m=111;break a}else{c=a;e=0}}else{c=a;e=0}while(0);HTa(y);i$a(f[w>>2]|0,b[w+4>>0]|0);if(!e){e=0;m=110;break a}}}else c=a;while(0);e=1;m=110}}while(0);if((m|0)==110){i$a(f[B>>2]|0,b[B+4>>0]|0);f4a(f[A>>2]|0,f[A+4>>2]|0);if(e){m=112;break}else{c=a;break}}else if((m|0)==111){i$a(f[B>>2]|0,b[B+4>>0]|0);f4a(f[A>>2]|0,f[A+4>>2]|0);Ua(c|0)}}else{c=a;m=112}while(0);u=z;return c|0} -function bQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1838;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1838,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function cQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=_2(a,f[b+8>>2]|0)|0;d=_2(a,f[b+12>>2]|0)|0;c=_2(a,f[b+16>>2]|0)|0;return jla(a+32|0,e,d,c,f[b+4>>2]|0)|0}function dQ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(48)|0;f[a>>2]=e;f[a+4>>2]=c+4;c=e+16|0;d=f[d>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];f[e+32>>2]=0;f[e+36>>2]=0;f[e+40>>2]=0;b[a+8>>0]=1;return}function eQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;g=b+8|0;if(Iab(f[g>>2]|0)|0)X7(a+108|0,g);b=b+12|0;c=f[b>>2]|0;if(w8a(f[c+4>>2]|0)|0?(f[e>>2]=f[g>>2],f[d>>2]=f[e>>2],!(MM(c,d)|0)):0)Tba(a,f[b>>2]|0)|0;u=h;return}function fQ(a){a=a|0;if(!a)return;else{fQ(f[a>>2]|0);fQ(f[a+4>>2]|0);bTa(a+16|0);ubb(a);return}}function gQ(a){a=a|0;if(!a)return;else{gQ(f[a>>2]|0);gQ(f[a+4>>2]|0);bTa(a+16|0);ubb(a);return}}function hQ(a){a=a|0;if(!a)return;else{hQ(f[a>>2]|0);hQ(f[a+4>>2]|0);bTa(a+16|0);ubb(a);return}}function iQ(a){a=a|0;if(!a)return;else{iQ(f[a>>2]|0);iQ(f[a+4>>2]|0);bTa(a+16|0);ubb(a);return}}function jQ(a){a=a|0;if(!a)return;else{jQ(f[a>>2]|0);jQ(f[a+4>>2]|0);bTa(a+16|0);ubb(a);return}}function kQ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if((c|0)!=(b|0)){g=a+4|0;d=f[g>>2]|0;e=b;a=c;while(1){if((a|0)==(d|0))break;c=f[a>>2]|0;f[a>>2]=0;b=f[e>>2]|0;f[e>>2]=c;if(b|0)ubb(b);e=e+4|0;a=a+4|0}a=f[g>>2]|0;while(1){if((a|0)==(e|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b)}f[g>>2]=e}return}function lQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2984;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2984,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function mQ(a,b){a=a|0;b=b|0;switch(f[b+8>>2]|0){case 0:{tPa(f[a+4>>2]|0,73895)|0;break}case 1:{tPa(f[a+4>>2]|0,73904)|0;break}case 2:{tPa(f[a+4>>2]|0,73919)|0;break}case 3:{wfa(tPa(f[a+4>>2]|0,73931)|0,f[b+12>>2]|0)|0;break}default:hb()}return}function nQ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=d-c|0;if(g>>>0>4294967279)Mda();if(g>>>0<11)b[a+11>>0]=g;else{h=g+16&-16;e=n8(h)|0;f[a>>2]=e;f[a+8>>2]=h|-2147483648;f[a+4>>2]=g;a=e}e=a;while(1){if((c|0)==(d|0))break;T0a(e,b[c>>0]|0);c=c+1|0;e=e+1|0}T0a(a+g|0,0);return}function oQ(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Rt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)oWa(c+8|0);ubb(c)}u=e;return}function pQ(a,b){a=a|0;b=b|0;b=Vz(a,b)|0;if(b|0)ZR(a,b);return}function qQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3012;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,3012,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function rQ(a,b){a=a|0;b=b|0;var c=0;switch(f[b+8>>2]|0){case 42:case 40:case 38:case 36:case 46:case 41:case 39:case 37:case 35:case 45:case 34:case 32:case 30:case 28:case 26:case 33:case 31:case 29:case 27:case 25:case 44:case 43:case 24:case 23:case 22:case 21:case 20:case 17:case 15:case 13:case 11:case 9:case 7:case 5:case 3:case 1:case 16:case 14:case 12:case 10:case 8:case 6:case 4:case 2:case 0:{c=1;break}case 19:case 18:{c=2;break}default:hb()}return (Hr(a,f[b+12>>2]|0)|0)+c|0}function sQ(a){a=a|0;var b=0;NZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;do if(Iab(f[b>>2]|0)|0){d=a+44|0;if((p_(d,b)|0)==(a+48|0)){tab(c);f[b>>2]=f[c>>2];break}else{cW(d,b);break}}while(0);u=e;return}function uQ(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;jT(e);b=e}f[d>>2]=c;e=f[a>>2]|0;RCa(f[a+12>>2]|0,e,(f[a+8>>2]|0)-e>>4)}return}function vQ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];e=g+12|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function wQ(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=g0a(a,0)|0;if(FBa(f[d>>2]|0,133104)|0){d=g0a(a,2)|0;d=Bbb(f[d>>2]|0)|0;a=Bbb($ta(2)|0)|0;a=Nqa(a,Dza()|0)|0;f4a(b,Nqa(a,$ta(0)|0)|0);Nqa(d,f[b>>2]|0)|0;u=c;return}else Ca(66344,75338,1587,66384)}function xQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2132;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2132,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function yQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1461;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1461,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function zQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);ubb(b);return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2925;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2925,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function BQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;h=g;f[h>>2]=b;a=Vz(a+184|0,h)|0;if((a|0)!=0?(e=jE(a+12|0,c)|0,(e|0)!=0):0)a=(f[e+12>>2]|0)==(d|0);else a=0;u=g;return a|0}function CQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);b=b+8|0;if(!(f[b>>2]|0))zma(f[a>>2]|0,41)|0;else{VBa(a);OP(a,f[b>>2]|0);kfa(a)}u=c;return}function DQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+48|0;e=d+12|0;c=d+16|0;g=d;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;T_a(c);jUa(g);f[c+24>>2]=f[g>>2];f[c+28>>2]=a;x=0;ua(527,c|0,e|0);b=x;x=0;if(b&1){g=Ia()|0;I_a(c);uSa(a);Ua(g|0)}else{I_a(c);u=d;return}}function EQ(a){a=a|0;var b=0,c=0,d=0,e=0;a=Y_a(a)|0;if((((((((a|0)!=0?(f[a+8>>2]|0)==12:0)?(e=g$a(f[a+16>>2]|0)|0,(e|0)!=0):0)?(b=e+8|0,(ORa(b)|0)!=0):0)?(c=Y_a(f[a+12>>2]|0)|0,(c|0)!=0):0)?(f[c+8>>2]|0)==10:0)?(d=g$a(f[c+16>>2]|0)|0,(d|0)!=0):0)?dN(b,d+8|0)|0:0)a=f[c+12>>2]|0;else a=0;return a|0}function FQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;g=c;e=f[a>>2]|0;d=e+68|0;h=f[d>>2]|0;f4a(g,0);Yr(h,f[g>>2]|0)|0;U7(e,f[b>>2]|0);Ev(f[d>>2]|0,11)|0;d=f[b+4>>2]|0;m0(e,d,(f[b+8>>2]|0)-d|0);b=f[a+4>>2]|0;f[b>>2]=(f[b>>2]|0)+1;u=c;return}function GQ(a){a=a|0;if(!a)return;else{GQ(f[a>>2]|0);GQ(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function HQ(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;WZ(b,122031,h7a(122031)|0);x=0;a=ia(213,b|0,a|0)|0;d=x;x=0;if(d&1){d=Ia()|0;HTa(b);Ua(d|0)}else{HTa(b);u=c;return a|0}return 0}function IQ(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;jT(d)}b=f[a>>2]|0;if(b|0)RCa(f[f[a+16>>2]>>2]|0,b,(f[a+12>>2]|0)-b>>4);return}function JQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=557;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,557,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function KQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2283;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2283,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function LQ(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[33196]|0;d=a+4|0;b=f[33197]|0;while(1){if((b|0)==(c|0))break;e=b+-40|0;qBa((f[d>>2]|0)+-40|0,e);f[d>>2]=(f[d>>2]|0)+-40;b=e}e=f[33196]|0;f[33196]=f[d>>2];f[d>>2]=e;e=a+8|0;c=f[33197]|0;f[33197]=f[e>>2];f[e>>2]=c;e=a+12|0;c=f[33198]|0;f[33198]=f[e>>2];f[e>>2]=c;f[a>>2]=f[d>>2];return}function MQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=683;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,683,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function NQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1243;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1243,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function OQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1023;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1023,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function PQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1148;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1148,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function QQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2013;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2013,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function RQ(a,b,c){a=a|0;b=b|0;c=c|0;b=f[c+40>>2]|0;a=f[c+36>>2]|0;while(1){if((a|0)==(b|0))break;c=yCa(134008,104482)|0;c=yCa(wfa(c,f[f[a>>2]>>2]|0)|0,110708)|0;zma(zm(c,x0(f[(f[a>>2]|0)+36>>2]|0)|0)|0,10)|0;a=a+4|0}return}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=321;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,321,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function TQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=928;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,928,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=805;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,805,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function VQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2219;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2219,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function WQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2712;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2712,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function XQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+32|0;e=c+16|0;g=c;d=NKa(f[a>>2]|0,b,2)|0;SSa(g,32,0);f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];b=a0(a,e)|0;b=Fpa(f[a>>2]|0,36,d,b)|0;b=mBa(f[a>>2]|0,24,b)|0;u=c;return b|0}function YQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2247;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2247,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function ZQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2740;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2740,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function _Q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2953;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2953,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function $Q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1416;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1416,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function aR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=481;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,481,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function bR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=262;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,262,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function cR(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(644,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;uSa(a);Ua(d|0)}else{Sha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function dR(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;d=f[32963]|0;g=a+4|0;b=d;e=(f[32964]|0)-b|0;c=(f[g>>2]|0)+(0-(e>>2)<<2)|0;f[g>>2]=c;if((e|0)>0){Iu(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0;b=f[32963]|0}else d=g;f[32963]=c;f[d>>2]=b;g=a+8|0;e=f[32964]|0;f[32964]=f[g>>2];f[g>>2]=e;g=a+12|0;e=f[32965]|0;f[32965]=f[g>>2];f[g>>2]=e;f[a>>2]=f[d>>2];return}function eR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1897;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1897,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function fR(a){a=a|0;var c=0,d=0;Jab(a);b[a+1>>0]=1;b[a+2>>0]=0;d=a+4|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}d=a+16|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}d=a+28|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}return}function gR(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(168,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;uSa(a);Ua(d|0)}else{Sha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function hR(a){a=a|0;if(!a)return;else{hR(f[a>>2]|0);hR(f[a+4>>2]|0);RTa(a+16|0);ubb(a);return}}function iR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1657;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1657,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function jR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1628;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1628,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function kR(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;d=j+8|0;g=j+4|0;h=j;if(b[(f[a+44>>2]|0)+1>>0]|0){i=Bbb(f[a+36>>2]|0)|0;e=f[c+8>>2]|0;f[g>>2]=e;f[d>>2]=f[g>>2];if(!(bna(i,d)|0)){f[h>>2]=e;f[d>>2]=f[h>>2];d=(ana(i,d)|0)!=0}else d=1;Kua(a,d,c)}u=j;return}function lR(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&a>>>0>4294967295){do{e=a;a=sYa(a|0,c|0,10,0)|0;f=c;c=I;g=BBa(a|0,c|0,-10,-1)|0;g=wOa(e|0,f|0,g|0,I|0)|0;d=d+-1|0;b[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=a}else c=a;if(c)do{g=c;c=(c>>>0)/10|0;f=(g+(X(c,-10)|0)|48)&255;d=d+-1|0;b[d>>0]=f}while(g>>>0>=10);return d|0}function mR(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[32836]|0;e=a+4|0;d=(f[32837]|0)-c|0;b=(f[e>>2]|0)+(0-(d>>2)<<2)|0;f[e>>2]=b;if((d|0)>0){Iu(b|0,c|0,d|0)|0;c=e;b=f[e>>2]|0}else c=e;e=f[32836]|0;f[32836]=b;f[c>>2]=e;e=a+8|0;d=f[32837]|0;f[32837]=f[e>>2];f[e>>2]=d;e=a+12|0;d=f[32838]|0;f[32838]=f[e>>2];f[e>>2]=d;f[a>>2]=f[c>>2];return}function nR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2649;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2649,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function oR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2860;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2860,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function pR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=169;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,169,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function qR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;b=a+48|0;c=a+64|0;d=f[c>>2]|0;if(d>>>0<(f[a+68>>2]|0)>>>0){f[d>>2]=0;g=d+4|0;f[g>>2]=0;e=d+8|0;f[e>>2]=0;f[d>>2]=f[b>>2];d=a+52|0;f[g>>2]=f[d>>2];a=a+56|0;f[e>>2]=f[a>>2];f[a>>2]=0;f[d>>2]=0;f[b>>2]=0;f[c>>2]=(f[c>>2]|0)+12}else zA(a+60|0,b);return}function rR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1806;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1806,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function sR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1377;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1377,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function tR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1597;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1597,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function uR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1336;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1336,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function vR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2342;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2342,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function wR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=u;u=u+64|0;b=e;f[a+16>>2]=c;f[a+20>>2]=d;wx(b,d);x=0;ua(467,a|0,b|0);d=x;x=0;if((!(d&1)?(x=0,ua(468,a|0,b|0),d=x,x=0,!(d&1)):0)?(x=0,ta(460,a|0),d=x,x=0,!(d&1)):0){xV(b);u=e;return}d=Ia()|0;xV(b);Ua(d|0)}function xR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+48|0;g=d+16|0;e=d+32|0;h=d;a=f[a+36>>2]|0;Bbb(a)|0;U0a(e,a);m$a(h,z1a(c)|0);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];c=a0(e,g)|0;c=Fpa(f[e>>2]|0,7,b,c)|0;u=d;return c|0}function yR(a){a=a|0;var c=0,d=0,e=0,f=0,g=0;while(1){c=b[a>>0]|0;e=c<<24>>24;d=a+1|0;if(!(o6a(e)|0))break;else a=d}switch(e|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:{g=0;d=a;a=e}}if((f|0)==5){c=b[d>>0]|0;g=a;a=c<<24>>24}if(!(Uab(a)|0))a=0;else{a=0;do{d=d+1|0;a=(a*10|0)+48-(c<<24>>24)|0;c=b[d>>0]|0}while((Uab(c<<24>>24)|0)!=0)}return ((g|0)==0?0-a|0:a)|0}function zR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2403;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2403,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function AR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2431;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2431,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function BR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2462;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2462,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function CR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2774;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2774,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function DR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1569;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1569,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function ER(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+16|0;i=e|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=d>>31|((d|0)<0?-1:0)<<1;j=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=NRa(h^a|0,g^b|0,h|0,g|0)|0;b=I;fk(a,b,NRa(k^c|0,j^d|0,k|0,j|0)|0,I,i)|0;d=NRa(f[i>>2]^h|0,f[i+4>>2]^g|0,h|0,g|0)|0;c=I;u=e;return (I=c,d)|0}function FR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a+12>>2]=f[c>>2];hna(a);x=0;ua(3198,f[d>>2]|0,b|0);c=x;x=0;if(c&1){d=Ia()|0;ZX(a);Ua(d|0)}else{f[d>>2]=(f[d>>2]|0)+24;return}}function GR(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;f[c>>2]=a;a=b;d=Bbb($ta(4)|0)|0;d=Nqa(d,woa(133176)|0)|0;c=Nqa(d,woa(c)|0)|0;c=Nqa(c,$ta(0)|0)|0;f4a(a,Nqa(c,$ta(0)|0)|0);u=b;return f[a>>2]|0}function HR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+48|0;b=d;jk(a,c);mza(b,c);h4a(b);x=0;ta(467,b|0);e=x;x=0;if((!(e&1)?(x=0,ta(438,b|0),e=x,x=0,!(e&1)):0)?(x=0,ua(1279,a|0,c|0),e=x,x=0,!(e&1)):0){Tca(b);u=d;return}e=Ia()|0;Tca(b);Ua(e|0)}function IR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1746;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1746,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function JR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2103;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2103,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function KR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2678;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2678,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function LR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2043;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2043,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function MR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1896;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1896,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2802;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2802,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3142;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,3142,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function PR(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(1510,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;uSa(a);Ua(d|0)}else{Sha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function QR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=841;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,841,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function RR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=109;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,109,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function SR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1539;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1539,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function TR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1778;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,1778,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function UR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2341;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2341,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function VR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2071;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2071,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3101;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,3101,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2891;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2891,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function YR(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(105,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;uSa(a);Ua(d|0)}else{Sha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function ZR(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Rt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)AWa(c+8|0);ubb(c)}u=e;return}function _R(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=293;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,293,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function $R(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2494;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2494,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function aS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2190;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2190,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function bS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2832;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2832,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function cS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=590;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,590,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function dS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2311;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2311,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function eS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3070;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,3070,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function fS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3040;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,3040,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function gS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a+9>>0]=0;ay(a,e)|0;if(!(b[a+8>>0]|0)){e=FV(a,e)|0;yCa(Lca(e,c)|0,81188)|0;oI(d,e)|0}return}function hS(a,b){a=a|0;b=b|0;var c=0,d=0;d=_2(a,f[b+16>>2]|0)|0;c=_2(a,f[b+8>>2]|0)|0;return Ioa(a+32|0,d,c,_2(a,f[b+12>>2]|0)|0)|0}function iS(a){a=a|0;if(!a)return;else{iS(f[a>>2]|0);iS(f[a+4>>2]|0);ubb(a);return}}function jS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=436;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,436,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function kS(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;d=f[a+8>>2]|0;g=f[a>>2]|0;e=f[g>>2]|0;f[g>>2]=e+1;g=a+4|0;if(e>>>0<(f[f[g>>2]>>2]|0)>>>0){c=f[(f[(f[d>>2]|0)+36>>2]|0)+(e<<2)>>2]|0;a=f[a+12>>2]|0;b=f[a+4>>2]|0;a=f[a>>2]|0;while(1){if((a|0)==(b|0))break;hu(d,f[a>>2]|0,c);a=a+4|0}a=(e+1|0)==(f[f[g>>2]>>2]|0)&1}else a=1;return a|0}function lS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=529;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,529,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function mS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2522;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2522,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function nS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a+9>>0]=0;ay(a,e)|0;if(!(b[a+8>>0]|0)){e=FV(a,e)|0;yCa(Lca(e,c)|0,81188)|0;rG(d,e)|0}return}function oS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(103,a|0,d|0);e=x;x=0;if(e&1){e=Ia()|0;uSa(a);Ua(e|0)}else{cja(a,f[b>>2]|0,f[c>>2]|0,d);break}}while(0);return}function pS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=716;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,716,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function qS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2621;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,2621,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function rS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i+4|0;e=i;f[d>>2]=b;f[e>>2]=c;if(!(f[c>>2]|0))Ca(115879,115839,372,115886);g=a+8|0;h=f[g>>2]|0;if(h>>>0<(f[a+12>>2]|0)>>>0){GXa(h,b,c);f[g>>2]=(f[g>>2]|0)+8}else wF(a+4|0,d,e);u=i;return}function sS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b+8|0;e=f[c>>2]|0;d=a+32|0;Spa(a,e>>>0<(fQa(Bbb(f[d>>2]|0)|0)|0)>>>0,b,84703);e=b+4|0;Spa(a,o2a(f[e>>2]|0)|0,b,84740);e=f[e>>2]|0;d=Bbb(f[d>>2]|0)|0;Spa(a,(e|0)==(n9(d,f[c>>2]|0)|0),b,84829);return}function tS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=g0a(a,0)|0;if(FBa(f[e>>2]|0,133104)|0){e=g0a(a,2)|0;e=Bbb(f[e>>2]|0)|0;b=Nqa(Bbb($ta(2)|0)|0,b)|0;f4a(c,Nqa(b,$ta(0)|0)|0);Nqa(e,f[c>>2]|0)|0;u=d;return}else Ca(66344,75338,1581,66365)}function uS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=137;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,137,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function vS(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;e=h+8|0;j=h+4|0;g=h;i=f[c+4>>2]|0;f[j>>2]=f[d+8>>2];f[e>>2]=f[j>>2];d=bna(i,e)|0;if((d|0)!=0?(b[d+12>>0]|0)==0:0)mz(a,c,f[d+8>>2]|0);else{f[g>>2]=f[33152];f[e>>2]=f[g>>2];hXa(a,e)}u=h;return}function wS(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;fA(c,_Ya(f[a+40>>2]|0)|0,0);if(cOa(c,f[b>>2]|0)|0?(x=0,ua(1249,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;V7(c);Ua(d|0)}V7(c);u=d;return}function xS(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;fA(c,_Ya(f[a+40>>2]|0)|0,0);if(cOa(c,f[b>>2]|0)|0?(x=0,ua(1029,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;V7(c);Ua(d|0)}V7(c);u=d;return}function yS(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;a:do switch((d&176)<<24>>24){case 16:{d=b[a>>0]|0;switch(d<<24>>24){case 43:case 45:{a=a+1|0;break a}default:{}}if((c-a|0)>1&d<<24>>24==48){switch(b[a+1>>0]|0){case 88:case 120:break;default:{e=7;break a}}a=a+2|0}else e=7;break}case 32:{a=c;break}default:e=7}while(0);return a|0}function zS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;b=a+164|0;c=Vz(b,d)|0;if(!c){a=YSa(a)|0;b=hm(b,d)|0;f[b>>2]=a;b=a}else b=f[c+12>>2]|0;u=e;return b|0}function AS(a){a=a|0;var b=0,c=0;Foa(a+112|0);oEa(a+88|0);c=a+84|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){LX(b);ubb(b)}NQa(a+64|0);oEa(a+52|0);uSa(a+32|0);uSa(a+20|0);uSa(a+8|0);return}function BS(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;fA(c,_Ya(f[a+40>>2]|0)|0,0);if(cOa(c,f[b>>2]|0)|0?(x=0,ua(934,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;V7(c);Ua(d|0)}V7(c);u=d;return}function CS(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;fA(c,_Ya(f[a+40>>2]|0)|0,0);if(cOa(c,f[b>>2]|0)|0?(x=0,ua(811,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;V7(c);Ua(d|0)}V7(c);u=d;return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;b=wla(f[a+36>>2]|0,b)|0;f[e>>2]=b;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else IL(a,e);u=g;return}function ES(a){a=a|0;if(!a)return;else{ES(f[a>>2]|0);ES(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function FS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=322;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,322,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function GS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+8|0;g=e+4|0;d=e;b=f[b>>2]|0;f[g>>2]=b;f[c>>2]=f[g>>2];if(!(Sma(a,c)|0))Ca(111913,111926,163,111957);f[d>>2]=b;f[c>>2]=f[d>>2];if(!(cna(a,c)|0)){g=n8(12)|0;c1a(g);f[g+4>>2]=b;f[g>>2]=b;f[g+8>>2]=0;Xs(a,g)}u=e;return}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b+4|0;b=a+28|0;if((f[c>>2]|0)==5)dTa(f[b>>2]|0);Ev(f[b>>2]|0,11)|0;d=a+60|0;e=f[d>>2]|0;if((f[a+56>>2]|0)==(e|0))Ca(111004,111024,378,111125);f[d>>2]=e+-4;if((f[c>>2]|0)==5)dTa(f[b>>2]|0);return}function IS(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=(f[a+24>>2]|0)==0|b;f[a+16>>2]=b;if(!(f[a+20>>2]&b)){u=c;return}a=Ea(16)|0;u$a();f[d>>2]=1;f[d+4>>2]=47296;x=0;ua(3187,a|0,d|0);d=x;x=0;if(d&1){d=Ia()|0;La(a|0);a=d}else{x=0;va(98,a|0,38056,342);x=0;a=Ia()|0}Ua(a|0)}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=408;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){GXa(g,408,b);f[e>>2]=(f[e>>2]|0)+8;break}else{wF(a+4|0,c,d);break}}while(0);u=h;return}function KS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];n2a(g+12|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function LS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;x=0;ua(88,g+8|0,e|0);e=x;x=0;if(e&1){e=Ia()|0;f[a>>2]=0;ubb(g);Ua(e|0)}else{b[c>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}}function MS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=HSa(f[a+4>>2]|0)|0;f[d+4>>2]=1;f[d+24>>2]=c;c=UQa(a,Or(b,1)|0)|0;f[d+12>>2]=c;c=UQa(a,Or(b,2)|0)|0;f[d+16>>2]=c;c=UQa(a,Or(b,3)|0)|0;f[d+20>>2]=c;Epa(d);return d|0}function NS(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(585,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;uSa(a);Ua(d|0)}else{Sha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function OS(a){a=a|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;d=f[a>>2]|0;if(!($1a(f[d>>2]|0,f[a+4>>2]|0)|0))Ca(80283,80302,386,80324);if((b[a+8>>0]|0?f[d+40>>2]|0:0)?(d=ZG(d)|0,(d|0)!=(f[a+12>>2]|0)):0){J_a();x=0;ia(52,c|0,80330)|0;d=x;x=0;if(d&1){Ia()|0;gCa()}else gCa()}u=e;return}function PS(a){a=a|0;var b=0,c=0,d=0;a=n$a(a)|0;if(((((((a|0)!=0?(d=f[a+16>>2]|0,(d|0)!=0):0)?(f[a+12>>2]|0)==0:0)?(f[a+4>>2]|0)==0:0)?(b=Y_a(d)|0,(b|0)!=0):0)?(f[b+8>>2]|0)==15:0)?(c=g$a(f[b+16>>2]|0)|0,(c|0)!=0):0){d=(ORa(c+8|0)|0)>>>0<2147483647;a=d?a:0}else a=0;return a|0}function QS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=(c-e|0)/40|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){a=e+(b*40|0)|0;while(1){if((c|0)==(a|0))break;e=c+-40|0;Exa(e);c=e}f[g>>2]=a}}else wy(a,b-d|0);return}function RS(a,b){a=a|0;b=b|0;if(!b)return;else{RS(a,f[b>>2]|0);RS(a,f[b+4>>2]|0);I_a(b+16|0);ubb(b);return}}function SS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;if(!c)Ca(97307,97312,923,97332);h=(f[c+12>>2]|0)-(f[c+8>>2]|0)>>2;e=b+8|0;d7(e,h);g=h+-1|0;d=0;while(1){if((d|0)==(h|0))break;j=dk(a)|0;i=JDa(e,g-d|0)|0;f[i>>2]=j;d=d+1|0}f[b+4>>2]=f[c+4>>2];return}function TS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];f[g+12>>2]=0;f[g+16>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function US(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111004,111024,467,111043);f[c>>2]=d+-4;c=b+4|0;b=a+28|0;if((f[c>>2]|0)==5)dTa(f[b>>2]|0);Ev(f[b>>2]|0,11)|0;if((f[c>>2]|0)==5)dTa(f[b>>2]|0);return}function VS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;if(!c){d=a;c=f[a>>2]|0}else{g=32-c|0;d=g>>>0>b>>>0?b:g;e=f[a>>2]|0;f[e>>2]=f[e>>2]&~(-1>>>(g-d|0)&-1<>2]=c;b=b-d|0;d=a}a=b>>>5;gH(c|0,0,a<<2|0)|0;b=b&31;if(b|0){g=(f[d>>2]|0)+(a<<2)|0;f[d>>2]=g;f[g>>2]=f[g>>2]&~(-1>>>(32-b|0))}return}function WS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=0;a=(TU(a,b)|0)+8|0;while(1){a=f[a>>2]|0;if(!a){a=3;break}d=f[a+8>>2]|0;g=f[d+16>>2]|0;e=0;d=f[d+12>>2]|0;while(1){if((d|0)==(g|0))break;h=(f[d>>2]|0)==(b|0);e=e|h;c=c+(h&1)|0;d=d+4|0}if(!e){a=8;break}}if((a|0)==3)return c|0;else if((a|0)==8)Ca(113535,113541,77,113564);return 0}function XS(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0;j=u;u=u+16|0;g=j;i=a&255;b[g>>0]=i;d=f[11555]|0;if(!d)if(!(d8(46204)|0)){d=f[11555]|0;e=4}else c=-1;else e=4;do if((e|0)==4){e=f[11556]|0;if(e>>>0>>0?(c=a&255,(c|0)!=(b[46279]|0)):0){f[11556]=e+1;b[e>>0]=i;break}if((ec[f[46240>>2]&127](46204,g,1)|0)==1)c=h[g>>0]|0;else c=-1}while(0);u=j;return c|0}function YS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(116)|0;f[a>>2]=g;f[a+4>>2]=c+8;UUa(g+8|0,e);qza(g+16|0,e+8|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function ZS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function _S(a,b){a=a|0;b=b|0;var c=0,d=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113900,76797,149,77037);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){E4(d,b);f[c>>2]=(f[c>>2]|0)+12}else lB(a+80|0,b);return}function $S(a,b){a=a|0;b=b|0;var c=0,d=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113900,76797,149,77037);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){E4(d,b);f[c>>2]=(f[c>>2]|0)+12}else mB(a+80|0,b);return}function aT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113900,76797,149,77037);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){E4(d,b);f[c>>2]=(f[c>>2]|0)+12}else nB(a+80|0,b);return}function bT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113900,76797,149,77037);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){E4(d,b);f[c>>2]=(f[c>>2]|0)+12}else oB(a+80|0,b);return}function cT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113900,76797,149,77037);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){E4(d,b);f[c>>2]=(f[c>>2]|0)+12}else pB(a+80|0,b);return}function dT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)!=(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;c=c+8|0;m$a(a,((f[b>>2]|0)!=(f[c>>2]|0)?1:(f[b+4>>2]|0)!=(f[c+4>>2]|0))&1);break}case 3:{m$a(a,+ONa(b)!=+ONa(c)&1);break}case 4:{m$a(a,+NNa(b)!=+NNa(c)&1);break}default:hb()}return}function eT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)==(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;c=c+8|0;m$a(a,((f[b>>2]|0)==(f[c>>2]|0)?(f[b+4>>2]|0)==(f[c+4>>2]|0):0)&1);break}case 3:{m$a(a,+ONa(b)==+ONa(c)&1);break}case 4:{m$a(a,+NNa(b)==+NNa(c)&1);break}default:hb()}return}function fT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;if(!c){d=a;c=f[a>>2]|0}else{g=32-c|0;d=g>>>0>b>>>0?b:g;e=f[a>>2]|0;f[e>>2]=f[e>>2]|-1>>>(g-d|0)&-1<>2]=c;b=b-d|0;d=a}a=b>>>5;gH(c|0,-1,a<<2|0)|0;b=b&31;if(b|0){g=(f[d>>2]|0)+(a<<2)|0;f[d>>2]=g;f[g>>2]=f[g>>2]|-1>>>(32-b|0)}return}function gT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,X(f[c+8>>2]|0,f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,BBa(f[c>>2]|0,f[c+4>>2]|0,f[b>>2]|0,f[b+4>>2]|0)|0,I);break}case 3:{CAa(a,+ONa(b)*+ONa(c));break}case 4:{kqa(a,+NNa(b)*+NNa(c));break}default:hb()}return}function hT(){var a=0,b=0,c=0,d=0;c=u;u=u+16|0;a=c;x=0;b=ia(211,1,a|0)|0;d=x;x=0;do if(!(d&1))if(!b){b=f[a>>2]|0;d=f[a+4>>2]|0;b=BBa(b|0,((b|0)<0)<<31>>31|0,1e9,0)|0;d=wOa(b|0,I|0,d|0,((d|0)<0)<<31>>31|0)|0;u=c;return d|0}else{x=0;ua(3185,f[33448]|0,118822);x=0;break}while(0);d=Ja(0)|0;r2a(d);return 0}function iT(){var a=0,b=0,c=0,d=0;a=f[33200]|0;d=f[33199]|0;b=a-d|0;c=(b|0)/20|0;if(c>>>0>=4){if((b|0)!=80){b=d+80|0;while(1){if((a|0)==(b|0))break;d=a+-20|0;NQa(d);a=d}f[33200]=b}}else uw(4-c|0);return}function jT(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;ZX(e);b=e}f[d>>2]=c;e=f[a>>2]|0;RCa(f[a+12>>2]|0,e,(f[a+8>>2]|0)-e>>4)}return}function kT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+48|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;zSa(c);f[c+24>>2]=b;f[c+28>>2]=a;x=0;ua(682,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;I_a(c);uSa(a);Ua(e|0)}else{I_a(c);u=d;return}}function lT(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=zF(a,c,b)|0;b=f[b>>2]|0;if(b|0){u=c;return b+20|0}b=Ea(8)|0;x=0;ua(98,b|0,112973);c=x;x=0;if(c&1){c=Ia()|0;La(b|0);Ua(c|0)}else{f[b>>2]=50492;Pa(b|0,39504,418)}return 0}function mT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;Mx(c,a,b,e);u=d;return (f[c>>2]|0)+32|0}function nT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)-(f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,NRa(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}case 3:{CAa(a,+ONa(b)-+ONa(c));break}case 4:{kqa(a,+NNa(b)-+NNa(c));break}default:hb()}return}function oT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[b+16>>2]=0;f[b+24>>2]=f[b+20>>2];f[h>>2]=f[c>>2];f[g>>2]=f[h>>2];Nk(a,b,g,d);u=e;return}function pT(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;if((!(m6a(f[b>>2]|0)|0)?o2a(f[b+4>>2]|0)|0:0)?(fA(c,_Ya(f[a+40>>2]|0)|0,b),a=lza(c)|0,V7(c),!a):0)a=(x0(b)|0)>>>0>1;else a=0;u=d;return a|0}function qT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;if(yQa(a,b)|0)Ca(89624,88981,143,89667);b=n8(20)|0;x=0;ua(1503,b|0,c|0);c=x;x=0;if(c&1){e=Ia()|0;ubb(b);Ua(e|0)}else{d=EE(a,d)|0;f[d>>2]=b;u=e;return}}function rT(a){a=a|0;var b=0,c=0;a:while(1)switch(f[a>>2]|0){case 0:{c=3;break a}case 1:{c=4;break a}case 6:{b=5;break a}case 2:{a=$Pa(a,1)|0;break}case 5:{a=$Pa(a,0)|0;break}default:{c=8;break a}}if((c|0)==3){a=a+4|0;c=9}else if((c|0)==4){a=(f[a+4>>2]|0)+4|0;c=9}else if((c|0)==8)hb();if((c|0)==9)b=f[a>>2]|0;return b|0}function sT(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=qUa(a)|0;b[a+20>>0]=0;b[a+8>>0]=c;rHa(a+12|0,d,0)|0;rHa(a+16|0,e,0)|0;f[a+24>>2]=g;g=a+28|0;f[g>>2]=h;f[a+32>>2]=i;poa(a);h=f[(f[g>>2]|0)+4>>2]|0;if((h|0)==(i|0)|(o2a(h)|0)^1)return a|0;else Ca(54304,54111,278,54371);return 0}function tT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,(f[c+8>>2]|0)+(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,wOa(f[c>>2]|0,f[c+4>>2]|0,f[b>>2]|0,f[b+4>>2]|0)|0,I);break}case 3:{CAa(a,+ONa(b)+ +ONa(c));break}case 4:{kqa(a,+NNa(b)+ +NNa(c));break}default:hb()}return}function uT(a){a=a|0;var c=0,d=0,e=0;e=a+92|0;if(!(f[e>>2]&16)){f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;c=f[a+52>>2]|0;do if(c>>>0>8)if(!(b[a+98>>0]|0)){d=f[a+56>>2]|0;c=d+((f[a+60>>2]|0)+-1)|0;break}else{d=f[a+32>>2]|0;c=d+(c+-1)|0;break}else{c=0;d=0}while(0);f[a+24>>2]=d;f[a+20>>2]=d;f[a+28>>2]=c;f[e>>2]=16}return}function vT(a){a=a|0;if(!a)return;else{vT(f[a>>2]|0);vT(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function wT(a){a=a|0;if(!a)return;else{wT(f[a>>2]|0);wT(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function xT(a,c,d){a=a|0;c=c|0;d=d|0;b[a+9>>0]=0;ay(a,0)|0;if(!(b[a+8>>0]|0)){a=FV(a,0)|0;yCa(Lca(a,c)|0,81188)|0;aJ(d,a)|0}return}function yT(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;ZX(d)}b=f[a>>2]|0;if(b|0)RCa(f[f[a+16>>2]>>2]|0,b,(f[a+12>>2]|0)-b>>4);return}function zT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;lXa(a);f[a+24>>2]=b;f[a+28>>2]=f[c>>2];c=a+32|0;f[c>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;f[e>>2]=b;x=0;ua(528,a|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;uSa(c);I_a(a);Ua(e|0)}else{u=d;return}}function AT(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+144|0;d=vA(c,b)|0;if(!d){a=YSa(a)|0;d=rm(c,b)|0;f[d>>2]=a}else a=f[d+24>>2]|0;return a|0}function BT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;g=d;c=Bbb(f[a+84>>2]|0)|0;f[g>>2]=f[b+8>>2];f[e>>2]=f[g>>2];e=dMa(a,e)|0;b=b+16|0;QPa(c,e,f[b>>2]|0);if(!(f[b>>2]|0))h0a(a);else QPa(c,iUa(a)|0,0);u=d;return}function CT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=(f[a+4>>2]|0)-(f[a>>2]|0)>>4;while(1){e=c+-1|0;if((c|0)<=0)break;d=f[a>>2]|0;c=f[d+(e<<4)>>2]|0;if(!(Gab(c)|0)){if(rab(c)|0)AW(b,f[d+(e<<4)+4>>2]|0)|0}else uC(b,f[d+(e<<4)+4>>2]|0);c=e}return}function DT(a){a=a|0;var b=0;NZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function ET(a){a=a|0;var b=0;NZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function FT(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+20>>2]|0);OP(a,f[b+24>>2]|0);kfa(a);u=c;return}function GT(a){a=a|0;var b=0,c=0;b=f[a+8>>2]|0;do if(b){c=f[b>>2]|0;if((c|0)==(a|0)){f[b>>2]=0;a=f[b+4>>2]|0;if(!a)break;b=Wwa(a)|0;break}else{f[b+4>>2]=0;if(!c)break;b=Wwa(c)|0;break}}else b=0;while(0);return b|0}function HT(a){a=a|0;var b=0;b_(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function IT(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];YVa(g+12|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function JT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;f[a>>2]=b;f[a+4>>2]=c;d=(c>>>5)+((c&31|0)!=0&1)|0;f[a+12>>2]=d;b=(c>>>0)/(d>>>0)|0;f[a+8>>2]=b;f[a+20>>2]=0;e=d+((X(b,d)|0)-c)|0;f[a+16>>2]=e;f[a+24>>2]=0;f[a+28>>2]=d>>>0>c>>>0?0:-1>>>(32-b|0);f[a+32>>2]=b>>>0<31?-1>>>(31-b|0):-1;return}function KT(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+8|0;i=h+4|0;e=h;g=f[33164]|0;f[i>>2]=g;f[d>>2]=f[i>>2];if(!(bna(c,d)|0)){f[e>>2]=g;i=FSa(1,c)|0;f[d>>2]=f[e>>2];Ws(c,eka(d,1,i,0)|0);b[a+28>>0]=1}u=h;return}function LT(a){a=a|0;if(!a)return;else{LT(f[a>>2]|0);LT(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function MT(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+32|0;do if(b[d>>0]|0){a=f[a+28>>2]|0;d=a+4|0;e=f[d>>2]|0;if((e|0)==(f[a+8>>2]|0)){IL(a,c);break}else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4;break}}else{b[d>>0]=1;kf(a,c)}while(0);return}function NT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;xA(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function OT(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=f[c>>2]|0;if((b[e>>0]|0)!=46)Ca(66501,65740,655,66513);e=e+1|0;f[c>>2]=e;Dh(d,e);if((f[d+12>>2]|0)==2){f[c>>2]=(f[c>>2]|0)+(f[d+8>>2]|0);e=VX(a,f[d>>2]|0)|0;u=g;return e|0}else Ca(66526,65740,658,66513);return 0}function PT(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+12>>2]|0);OP(a,f[b+16>>2]|0);kfa(a);u=c;return}function QT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;M0a(a);c=f[c+8>>2]|0;if(!((c|0)!=0?(mz(d,b,c),f[a>>2]=f[d>>2],f[a+4>>2]=f[d+4>>2],f[a+8>>2]=f[d+8>>2],f[a+12>>2]=f[d+12>>2],f[a+16>>2]=f[d+16>>2],D0a(a)|0):0))f[a+16>>2]=f[33118];u=e;return}function RT(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+24>>2]|0);OP(a,f[b+28>>2]|0);kfa(a);u=c;return}function ST(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((c|0)==1)b=b-(f[a+8>>2]|0)+(f[a+4>>2]|0)|0;d=a+20|0;e=a+28|0;if((f[d>>2]|0)>>>0>(f[e>>2]|0)>>>0?(ec[f[a+36>>2]&127](a,0,0)|0,(f[d>>2]|0)==0):0)b=-1;else{f[a+16>>2]=0;f[e>>2]=0;f[d>>2]=0;if((ec[f[a+40>>2]&127](a,b,c)|0)<0)b=-1;else{f[a+8>>2]=0;f[a+4>>2]=0;f[a>>2]=f[a>>2]&-17;b=0}}return b|0}function TT(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(32)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];yXa(g+16|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function UT(a){a=a|0;var b=0;h$(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function VT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;switch(f[b>>2]|0){case 3:{m$a(d,f[c+8>>2]&-2147483648|f[b+8>>2]&2147483647);LHa(a,d);break}case 4:{b=b+8|0;SSa(d,f[b>>2]|0,f[c+8+4>>2]&-2147483648|f[b+4>>2]&2147483647);c=d+8|0;pGa(a,f[d>>2]|0,f[c>>2]|0,f[c+4>>2]|0);break}default:hb()}u=e;return}function WT(a){a=a|0;var c=0,d=0,e=0,g=0;g=u;u=u+32|0;c=g+4|0;d=g;e=g+8|0;zY(e,a);x=0;va(88,d|0,((b[e+11>>0]|0)<0?f[e>>2]|0:e)|0,0);a=x;x=0;if(a&1){g=Ia()|0;HTa(e);Ua(g|0)}else{E1a(c,f[d>>2]|0);HTa(e);u=g;return f[c>>2]|0}return 0}function XT(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+48|0;c=d;mza(c,a);z0a(c,-1);h4a(c);x=0;ua(1292,c|0,b|0);a=x;x=0;if(!(a&1)?(x=0,ta(438,c|0),a=x,x=0,!(a&1)):0){Tca(c);u=d;return b|0}d=Ia()|0;Tca(c);Ua(d|0);return 0}function YT(a){a=a|0;var b=0;l0(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function ZT(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111004,111024,431,111068);f[c>>2]=d+-4;a=a+28|0;Ev(f[a>>2]|0,11)|0;do if((f[b+4>>2]|0)==5)if(!(f[b+16>>2]|0))Ca(111079,111024,443,111068);else{dTa(f[a>>2]|0);break}while(0);return}function _T(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c+8|0;d=c;f[d>>2]=a;by(b,a,d);u=c;return (f[b>>2]|0)+32|0}function $T(a,b){a=a|0;b=b|0;b=p_(a,b)|0;if((b|0)!=(a+4|0))dG(a,b);return}function aU(a,b){a=a|0;b=b|0;b=p_(a,b)|0;if((b|0)!=(a+4|0))eG(a,b);return}function bU(a,b){a=a|0;b=b|0;b=p_(a,b)|0;if((b|0)!=(a+4|0))fG(a,b);return}function cU(a,b){a=a|0;b=b|0;b=p_(a,b)|0;if((b|0)!=(a+4|0))gG(a,b);return}function dU(a,b){a=a|0;b=b|0;b=p_(a,b)|0;if((b|0)!=(a+4|0))hG(a,b);return}function eU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((a|0)!=(b|0)){d=$h(a,b,c)|0;if((d|0)==(a|0))d=ww(a,b,c)|0;if((d|0)!=(a|0)?(e=f[c+4>>2]|0,(f[c>>2]|0)!=(e|0)):0)uoa(e+-24|0,0,123346)|0;else d=a}else d=a;return d|0}function fU(a){a=a|0;if(!a)return;else{fU(f[a>>2]|0);fU(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function gU(a,c){a=a|0;c=c|0;b[a+9>>0]=0;ay(a,0)|0;if(!(b[a+8>>0]|0)){a=FV(a,0)|0;yCa(Lca(a,c)|0,81188)|0;xI(a)|0}return}function hU(a){a=a|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}if((b[a+11>>0]|0)<0)c=(f[a+8>>2]&2147483647)+-1|0;else c=10;x=0;ua(108,a|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;HTa(a);Ua(c|0)}else return}function iU(a){a=a|0;if(!a)return;else{iU(f[a>>2]|0);iU(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function jU(a,b){a=a|0;b=b|0;if((a|0)!=(b|0)){f[a+16>>2]=f[b+16>>2];Tn(a,f[b+8>>2]|0,0)}return a|0}function kU(a){a=a|0;var b=0,c=0,d=0;b=n8(184)|0;c=b+104|0;d=b+4|0;f[b>>2]=33580;f[c>>2]=33600;Gaa(c,d);f[b+176>>2]=0;f[b+180>>2]=-1;f[b>>2]=41940;f[c>>2]=41960;x=0;ta(476,d|0);d=x;x=0;if(d&1){d=Ia()|0;m1a(c);ubb(b);Ua(d|0)}else{f[a>>2]=b;return}}function lU(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;f[a>>2]=49708;d=a+8|0;e=a+12|0;c=0;while(1){b=f[d>>2]|0;if(c>>>0>=(f[e>>2]|0)-b>>2>>>0)break;b=f[b+(c<<2)>>2]|0;if(b|0?(h=b+4|0,g=f[h>>2]|0,f[h>>2]=g+-1,(g|0)==0):0)oc[f[(f[b>>2]|0)+8>>2]&1023](b);c=c+1|0}HTa(a+144|0);foa(d);return}function mU(a){a=a|0;var b=0;wCa(a);f[a>>2]=42056;f[a+140>>2]=1;b=a+144|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+160>>2]=1065353216;b=a+164|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+180>>2]=1065353216;b=a+184|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+200>>2]=1065353216;return}function nU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;rz(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function oU(a,b){a=a|0;b=b|0;a=Vz(a,b)|0;if(a|0)return a+12|0;a=Ea(8)|0;x=0;ua(98,a|0,75807);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50492;Pa(a|0,39504,418)}return 0}function pU(a){a=a|0;var b=0;NZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function qU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;f[e>>2]=a;d=b+12|0;b=b+16|0;a=fC(f[d>>2]|0,f[b>>2]|0,e)|0;kQ(d,a,f[b>>2]|0);u=c;return}function rU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d+24|0;c=d;f[e>>2]=b;Fna(c,a,e);x=0;va(162,a|0,b|0,c|0);b=x;x=0;if(b&1){e=Ia()|0;sta(c);Ua(e|0)}else{sta(c);u=d;return}}function sU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=DI(a,e,b+16|0)|0;LZ(a,f[e>>2]|0,d,b);u=c;return}function tU(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;yUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=e&1;b[a+33>>0]=g&1;g=f[c+64>>2]|0;Bbb(g)|0;f[a+36>>2]=g+144;yUa(a+44|0);f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=0;return}function uU(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f4a(d,b);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=f[d>>2];f4a(d,b);Pya(a+16|0,d);f4a(d,b);Pya(a+32|0,d);u=c;return}function vU(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;UO(a,d);b=Ol(a+24|0,d)|0;f[b>>2]=(f[b>>2]|0)+1;u=c;return}function wU(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(36)|0;f[a>>2]=g;f[a+4>>2]=c+4;f[g+16>>2]=f[d>>2];d=g+20|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];b[a+8>>0]=1;return}function xU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;c=g;d=a+44|0;if(!(f[d>>2]|0)){SFa(c,Bbb(f[a+36>>2]|0)|0);h=f[c>>2]|0;f[c>>2]=0;e=f[d>>2]|0;f[d>>2]=h;if(e|0)ubb(e);f[c>>2]=0}fIa(a+16|0,b);u=g;return}function yU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(X5a(f[b>>2]|0)|0){d=f[a+24>>2]|0;a=iRa(b)|0;f[e>>2]=a;b=d+4|0;c=f[b>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=a;f[b>>2]=(f[b>>2]|0)+4}else IL(d,e)}u=g;return}function zU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(m6a(f[b>>2]|0)|0){d=f[a+24>>2]|0;a=oRa(b)|0;f[e>>2]=a;b=d+4|0;c=f[b>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=a;f[b>>2]=(f[b>>2]|0)+4}else IL(d,e)}u=g;return}function AU(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=a+11|0;d=b[e>>0]|0;g=d<<24>>24<0;if(g)d=f[a+4>>2]|0;else d=d&255;do if(d>>>0>=c>>>0)if(g){T0a((f[a>>2]|0)+c|0,0);f[a+4>>2]=c;break}else{T0a(a+c|0,0);b[e>>0]=c;break}else dM(a,c-d|0)|0;while(0);return}function BU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}g=a+12|0;c=b+12|0;f[g>>2]=0;e=a+16|0;f[e>>2]=0;d=a+20|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+16|0;f[e>>2]=f[a>>2];b=b+20|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function CU(a,b){a=a|0;b=b|0;b=eX(a,b)|0;if((b|0)!=(a+4|0))EL(a,b);return}function DU(a){a=a|0;var c=0;f[a>>2]=41872;x=0;ga(284,a|0)|0;c=x;x=0;if(c&1?(c=Ja(0)|0,Fa(c|0)|0,x=0,sa(6),c=x,x=0,c&1):0){c=Ja(0)|0;YWa(a);r2a(c)}if(b[a+96>>0]|0)rbb(f[a+32>>2]|0);if(b[a+97>>0]|0)rbb(f[a+56>>2]|0);YWa(a);return}function EU(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(16)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];tab(g+12|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function FU(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;Kra(134576);f[33644]=47436;f[33652]=46328;f[33654]=134632;f[33656]=-1;b[134628]=0;gVa(a,f[33645]|0);x=0;ua(29,134576,a|0);d=x;x=0;if(d&1){d=Ia()|0;JCa(a);QWa(134576);Ua(d|0)}else{JCa(a);u=c;return}}function GU(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;Sra(134512);f[33628]=47500;f[33636]=46328;f[33638]=134568;f[33640]=-1;b[134564]=0;gVa(a,f[33629]|0);x=0;ua(30,134512,a|0);d=x;x=0;if(d&1){d=Ia()|0;JCa(a);YWa(134512);Ua(d|0)}else{JCa(a);u=c;return}}function HU(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+64|0;c=d;K7(c);a=Bbb(f[a+36>>2]|0)|0;x=0;va(96,c+16|0,b|0,a|0);b=x;x=0;if(b&1){d=Ia()|0;hRa(c);Ua(d|0)}else{hRa(c);u=d;return}}function IU(a,b){a=a|0;b=b|0;b=eX(a,b)|0;if((b|0)!=(a+4|0))QI(a,b);return}function JU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;g=n$a(b)|0;if(!g){d=d$a(b)|0;if(d|0)Fq(a,d,c)}else{f[e>>2]=f[g+8>>2];g=f[g+12>>2]|0;f[d>>2]=f[e>>2];XH(a,d,c,g)}u=h;return}function KU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=wK(a,e,b+16|0)|0;LZ(a,f[e>>2]|0,d,b);u=c;return}function LU(a,b,c){a=a|0;b=b|0;c=c|0;$Wa(a,c);tWa(a,b);c=a+-16|0;_Ga(c+16|0,b);v$(c,b);tWa(a,0);$Wa(a,0);return}function MU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;c=e;fla(c,a+44|0,b);g=a+48|0;h=f[c>>2]|0;f[c>>2]=0;d=f[g>>2]|0;f[g>>2]=h;if(d|0){sAa(d);ubb(d)}f[c>>2]=0;RK(a+16|0,b);u=e;return}function NU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;Cy(c,a,b,e);u=d;return (f[c>>2]|0)+32|0}function OU(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+20>>2]&511](j)|0;i=b[j+8+3>>0]|0;k=i<<24>>24<0;l=k?f[j>>2]|0:j;return bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,l,l+((k?f[j+4>>2]|0:i&255)<<2)|0)|0}function PU(a,c){a=a|0;c=c|0;var d=0;d=a+4|0;AD(f[d>>2]|0,f[c+4>>2]|0,b[c+8>>0]|0);yCa(f[d>>2]|0,93135)|0;a=c+12|0;if(Bbb(f[a>>2]|0)|0){d=yCa(f[d>>2]|0,75482)|0;zm(d,Bbb(f[a>>2]|0)|0)|0}return}function QU(a,c){a=a|0;c=c|0;var d=0;if(!(f[(f[f[a+24>>2]>>2]|0)+(f[c+8>>2]<<2)>>2]|0)){d=f[c+12>>2]|0;if(Iab(f[c+4>>2]|0)|0)BVa(f[a>>2]|0,d)|0;else{c=iYa(c)|0;f[c+8>>2]=d;oXa(c)}b[a+28>>0]=1}return}function RU(a){a=a|0;if(!a)return;else{RU(f[a>>2]|0);RU(f[a+4>>2]|0);ubb(a);return}}function SU(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+1040|0;g=i+1024|0;d=i;h=f[33448]|0;e=mia(nya(c,d)|0,d)|0;if(!(b[e>>0]|0)){f[g>>2]=c;LFa(d,1024,122118,g)|0}else d=e;f[33448]=h;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;WZ(a,d,h7a(d)|0);u=i;return}function TU(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;a=Vz(a,e)|0;if(!a)if((b[130832]|0)==0?(PWa(130832)|0)!=0:0){f[33184]=0;f[33185]=0;f[33186]=0;f[33187]=0;f[33188]=1065353216;a=132736}else a=132736;else a=a+12|0;u=d;return a|0}function UU(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;x=0;ua(588,a|0,d|0);c=x;x=0;if(c&1){d=Ia()|0;uSa(a);Ua(d|0)}c=f[b>>2]|0;a=f[a>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[a+(f[c+(b<<2)>>2]<<2)>>2]=b;b=b+1|0}return}function VU(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+32|0;b=d;c=d+16|0;az(a);Dh(b,f[a>>2]|0);if((f[b+12>>2]|0)==2){f[a>>2]=(f[a>>2]|0)+(f[b+8>>2]|0);a=f[b>>2]|0;f[c>>2]=a}else{Kab(c);a=f[c>>2]|0}c=$U(a)|0;u=d;return c|0}function WU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;c=d;YMa(c,a+44|0);x=0;ua(2131,c|0,b|0);e=x;x=0;if(e&1){e=Ia()|0;I_a(c);Ua(e|0)}else{I_a(c);Tza(a+16|0,b);u=d;return}}function XU(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;yUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=0;b[a+33>>0]=0;d=f[c>>2]|0;Bbb(d)|0;f[a+36>>2]=d+144;yUa(a+44|0);f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=0;return}function YU(a,b){a=+a;b=b|0;var c=0,d=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;d=(b|0)<-2044;c=b+2044|0;a=d?a*2.2250738585072014e-308:a;b=d?((c|0)>-1022?c:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;c=(b|0)>2046;d=b+-2046|0;a=c?a*8988465674311579538646525.0e283:a;b=c?((d|0)<1023?d:1023):b+-1023|0}c=hMa(b+1023|0,0,52)|0;d=I;f[s>>2]=c;f[s+4>>2]=d;return +(a*+p[s>>3])}function ZU(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+48|0;c=d;iha(c,b);x=0;ua(1305,c|0,a|0);b=x;x=0;if(b&1){d=Ia()|0;TGa(c);Ua(d|0)}else{TGa(c);u=d;return}}function _U(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=NU(a+44|0,b+8|0)|0;b=Bbb(f[a+16>>2]|0)|0;f[e>>2]=b;a=d+4|0;c=f[a>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=b;f[a>>2]=(f[a>>2]|0)+4}else IL(d,e);u=g;return}function $U(a){a=a|0;var b=0,c=0,d=0,e=0;e=u;u=u+16|0;b=e+4|0;f[b>>2]=a;c=e;d=Bbb($ta(2)|0)|0;d=Nqa(d,woa(133108)|0)|0;if(tXa(a)|0)a=Dza()|0;else a=woa(b)|0;f4a(c,Nqa(d,a)|0);u=e;return f[c>>2]|0}function aV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if($1a(f[b+8>>2]|0,f[a+28>>2]|0)|0){b=f[b+12>>2]|0;if(!b)b=0;else b=f[b+4>>2]|0;f[e>>2]=b;c=a+36|0;d=f[c>>2]|0;if(d>>>0<(f[a+40>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4}else IL(a+32|0,e)}u=g;return}function bV(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3))d=5;else{c=e;while(1){if(!(b[a>>0]|0)){a=c;break a}a=a+1|0;c=a;if(!(c&3)){d=5;break}}}while(0);if((d|0)==5){while(1){c=f[a>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))a=a+4|0;else break}if((c&255)<<24>>24)do a=a+1|0;while((b[a>>0]|0)!=0)}return a-e|0}function cV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;Hz(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function dV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;g=c+8|0;e=c+4|0;d=c;f[g>>2]=b;f[a+12>>2]=b;b=bV(b)|0;f[a+16>>2]=b;b=I5()|0;Kab(e);Kab(d);VL(b,Sx(a,g,65707,f[e>>2]|0,f[d>>2]|0)|0);u=c;return b|0}function eV(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=v1(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?!(KVa(b,f[c+16>>2]|0)|0):0)a=c;return a|0}function fV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;mz(d,b,c);if(D0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else M0a(a);u=e;return}function gV(){var a=0,b=0,c=0,d=0;d=u;u=u+16|0;c=d;pSa(132544);a=f[33143]|0;if(!a){x=0;ta(473,c|0);b=x;x=0;if(b&1){d=Ia()|0;hJa(132544);Ua(d|0)}b=f[33143]|0;a=f[c>>2]|0;f[33143]=a;f[c>>2]=0;if(b){DMa(b);ubb(b);a=f[33143]|0}}hJa(132544);u=d;return a|0}function hV(a){a=a|0;if(!a)return;else{hV(f[a>>2]|0);hV(f[a+4>>2]|0);ubb(a);return}}function iV(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;j=Iab(f[b+4>>2]|0)|0;f[a>>2]=c;f[b+12>>2]=f[e>>2];via(b);f[e>>2]=b;if(!j){f[d>>2]=0;if(!(f[c+12>>2]|0)){U0a(h,g);pha(h,c)}LI(c)}u=i;return}function jV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;T_a(c);f[c+24>>2]=a;x=0;ua(1060,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;I_a(c);uSa(a);Ua(e|0)}else{I_a(c);u=d;return}}function kV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=d;f[a+8>>2]=e;b[a+12>>0]=0;switch(c|0){case 2:{Ca(72531,72545,55,72576);break}case 0:{if(!(m6a(f[f[e>>2]>>2]|0)|0))Ca(72591,72545,56,72576);break}case 1:{if(!(X5a(f[f[e>>2]>>2]|0)|0))Ca(72617,72545,57,72576);break}default:{}}return}function lV(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;e=EMa(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){a=+lV(a*18446744073709551616.0,b);c=(f[b>>2]|0)+-64|0}else c=0;f[b>>2]=c;break}case 2047:break;default:{f[b>>2]=(e&2047)+-1022;f[s>>2]=c;f[s+4>>2]=d&-2146435073|1071644672;a=+p[s>>3]}}return +a}function mV(a){a=a|0;var b=0,c=0,d=0,e=0;e=u;u=u+16|0;b=e+4|0;f[b>>2]=a;c=e;d=Bbb($ta(2)|0)|0;d=Nqa(d,woa(133112)|0)|0;if(tXa(a)|0)a=Dza()|0;else a=woa(b)|0;f4a(c,Nqa(d,a)|0);u=e;return f[c>>2]|0}function nV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;T_a(c);f[c+24>>2]=a;x=0;ua(648,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;I_a(c);uSa(a);Ua(e|0)}else{I_a(c);u=d;return}}function oV(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=$Ra(f[a+4>>2]|0)|0;d=Or(c,1)|0;d=u8a(b[d>>0]|0)|0;g=e+12|0;d=d?2:1;while(1){if(d>>>0>=(XXa(c)|0)>>>0)break;aaa(g,UQa(a,Or(c,d)|0)|0);d=d+1|0}rt(e);return e|0}function pV(a){a=a|0;var b=0,c=0,d=0;do if((f[a+76>>2]|0)>=0?(Lbb()|0)!=0:0){b=a+4|0;c=f[b>>2]|0;if(c>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c+1;b=h[c>>0]|0;break}else{b=Twa(a)|0;break}}else d=3;while(0);do if((d|0)==3){b=a+4|0;c=f[b>>2]|0;if(c>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c+1;b=h[c>>0]|0;break}else{b=Twa(a)|0;break}}while(0);return b|0}function qV(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+32|0;b=d;c=d+16|0;az(a);Dh(b,f[a>>2]|0);if((f[b+12>>2]|0)==2){f[a>>2]=(f[a>>2]|0)+(f[b+8>>2]|0);a=f[b>>2]|0;f[c>>2]=a}else{Kab(c);a=f[c>>2]|0}c=mV(a)|0;u=d;return c|0}function rV(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,1717,b);Xe(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,1718,b);return}function sV(a){a=a|0;var b=0;nKa(a);f[a>>2]=41452;yUa(a+44|0);yUa(a+56|0);yUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;XOa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tV(a){a=a|0;var b=0;oKa(a);f[a>>2]=41212;yUa(a+44|0);yUa(a+56|0);yUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;XOa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function uV(a){a=a|0;var b=0;pKa(a);f[a>>2]=41292;yUa(a+44|0);yUa(a+56|0);yUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;XOa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function vV(a){a=a|0;var b=0;qKa(a);f[a>>2]=41104;yUa(a+44|0);yUa(a+56|0);yUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;XOa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function wV(a){a=a|0;var b=0;rKa(a);f[a>>2]=41372;yUa(a+44|0);yUa(a+56|0);yUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;XOa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function xV(a){a=a|0;d6(a+44|0);e6(a+24|0);tDa(a+12|0);doa(a);return}function yV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function zV(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+20>>2]&511](j)|0;i=b[j+11>>0]|0;k=i<<24>>24<0;l=k?f[j>>2]|0:j;return Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,l,l+(k?f[j+4>>2]|0:i&255)|0)|0}function AV(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a>>2]|0;if(sab(c)|0){c=(hSa(a)|0)+4|0;f[c>>2]=b;c=f[a>>2]|0}if(!(c8a(c)|0)){if(K2a(c)|0){c=(DQa(a)|0)+4|0;d=7}}else{c=(SQa(a)|0)+4|0;d=7}if((d|0)==7)f[c>>2]=b;return}function BV(a,b){a=a|0;b=b|0;var c=0;c=b<<1;b=(b|0)>-1?c:0-c|1;while(1){c=b&31;b=b>>>5;if(!b)break;do if(c>>>0>=20)if(c>>>0<30){c=c+28|0;break}else{c=(c|0)==30?43:47;break}else c=c+103|0;while(0);zma(a,c&255)|0}zma(a,(c>>>0<26?65:71)+c&255)|0;return}function CV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;T_a(c);f[c+24>>2]=a;x=0;ua(1837,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;I_a(c);uSa(a);Ua(e|0)}else{I_a(c);u=d;return}}function DV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a+9>>0]=0;ay(a,e)|0;if(!(b[a+8>>0]|0)){e=FV(a,e)|0;yCa(yCa(e,c)|0,81188)|0;rG(d,e)|0}return}function EV(a){a=a|0;var b=0;d5(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function FV(a,c){a=a|0;c=c|0;var d=0;d=ay(a,c)|0;do if(!(b[a+8>>0]|0))if(!c){yCa(d,81233)|0;break}else{yCa(d,81195)|0;wfa(d,f[c>>2]|0)|0;yCa(d,81230)|0;break}while(0);return d|0}function GV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;yUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=0;b[a+33>>0]=e&1;e=f[c+64>>2]|0;Bbb(e)|0;f[a+36>>2]=e+144;yUa(a+44|0);f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=0;return}function HV(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){Mwa(b);ubb(b)}}b=f[a>>2]|0;if(b|0)ubb(b);return}function IV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(sab(f[b>>2]|0)|0){d=f[a+24>>2]|0;a=hSa(b)|0;f[e>>2]=a;b=d+4|0;c=f[b>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=a;f[b>>2]=(f[b>>2]|0)+4}else IL(d,e)}u=g;return}function JV(a){a=a|0;var c=0,d=0,e=0,g=0;do if((f[11570]|0)>=0?(Lbb()|0)!=0:0){c=a&255;if((a&255|0)!=(b[46279]|0)?(e=f[11556]|0,e>>>0<(f[11555]|0)>>>0):0){f[11556]=e+1;b[e>>0]=c;break}XS(a)|0}else g=3;while(0);do if((g|0)==3){c=a&255;if((a&255|0)!=(b[46279]|0)?(d=f[11556]|0,d>>>0<(f[11555]|0)>>>0):0){f[11556]=d+1;b[d>>0]=c;break}XS(a)|0}while(0);return}function KV(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=a+2496|0;g=f[b>>2]|0;c=((g+1|0)>>>0)%624|0;d=a+(g<<2)|0;e=f[a+(c<<2)>>2]|0;a=0-(e&1)&-1727483681^f[a+((((g+397|0)>>>0)%624|0)<<2)>>2]^(e&2147483646|f[d>>2]&-2147483648)>>>1;f[d>>2]=a;a=a>>>11^a;f[b>>2]=c;a=a<<7&-1658038656^a;a=a<<15&-272236544^a;return a>>>18^a|0}function LV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;if(e>>>0>4294967279)Mda();if(e>>>0<11)b[a+11>>0]=d;else{g=e+16&-16;e=P1a(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}$Ta(a,c,d)|0;T0a(a+d|0,0);return}function MV(a,c){a=a|0;c=c|0;var d=0;az(c);d=f[c>>2]|0;if((b[d>>0]|0)!=40)Ca(65897,65740,905,66105);f[c>>2]=d+1;a=Rm(a,c,123274)|0;az(c);d=f[c>>2]|0;if((b[d>>0]|0)==41){f[c>>2]=d+1;return a|0}else Ca(66119,65740,909,66105);return 0}function NV(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){Mwa(c);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function OV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;ZXa(c,a);x=0;a=ia(73,f[c>>2]|0,134912)|0;e=x;x=0;if(!(e&1)?(x=0,ka(f[(f[a>>2]|0)+48>>2]|0,a|0,31216,31242,b|0)|0,e=x,x=0,!(e&1)):0){JCa(c);u=d;return b|0}e=Ia()|0;JCa(c);Ua(e|0);return 0}function PV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=Bbb($ta(4)|0)|0;a=Nqa(Nqa(Nqa(g,woa(133148)|0)|0,a)|0,b)|0;if(UTa(c)|0)c=Dza()|0;f4a(d,Nqa(a,c)|0);u=e;return f[d>>2]|0}function QV(a,b){a=a|0;b=b|0;var c=0,d=0;do if((b|0)==(f[a+24>>2]|0)){b=(f[b+12>>2]|0)+4|0;c=a+36|0;d=f[c>>2]|0;if((d|0)==(f[a+40>>2]|0)){IL(a+32|0,b);break}else{f[d>>2]=f[b>>2];f[c>>2]=d+4;break}}else if($1a(f[b+8>>2]|0,f[a+28>>2]|0)|0)f[a+36>>2]=f[a+32>>2];while(0);return}function RV(a){a=a|0;var b=0;x$(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function SV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=(f[a+8>>2]|0)-(f[a+4>>2]|0)|0;c=a+20|0;if((((g|0)==0?0:(g<<8)+-1|0)|0)==((f[c>>2]|0)+(f[a+16>>2]|0)|0))Lh(a);E9(d,a);f[f[d+4>>2]>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+1;u=e;return}function TV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=(f[a+8>>2]|0)-(f[a+4>>2]|0)|0;c=a+20|0;if((((g|0)==0?0:(g<<8)+-1|0)|0)==((f[c>>2]|0)+(f[a+16>>2]|0)|0))Mh(a);E9(d,a);f[f[d+4>>2]>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+1;u=e;return}function UV(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;ona(a+8|0);ubb(a);a=b}return}function VV(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;nL(b,a,122052);x=0;ta(518,b|0);a=x;x=0;if(a&1){c=Ia()|0;HTa(b);Ua(c|0)}else{HTa(b);u=c;return}}function WV(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;nL(b,a,122036);x=0;ta(519,b|0);a=x;x=0;if(a&1){c=Ia()|0;HTa(b);Ua(c|0)}else{HTa(b);u=c;return}}function XV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=b;e=b;do if((f[b+12>>2]|0)==0?Iab(f[b+16>>2]|0)|0:0){b=a+28|0;c=f[b>>2]|0;if((c|0)==(f[a+32>>2]|0)){IL(a+24|0,d);break}else{f[c>>2]=e;f[b>>2]=(f[b>>2]|0)+4;break}}while(0);u=g;return}function YV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BQa(a,b);b=a+16|0;$Wa(b,c);r1(b,d);return}function ZV(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+8|0;a:do if(f[b>>2]|0){c=f[a+4>>2]|0;d=(f[a>>2]|0)+4|0;e=f[c>>2]|0;f[e+4>>2]=f[d>>2];f[f[d>>2]>>2]=e;f[b>>2]=0;b=c;while(1){if((b|0)==(a|0))break a;e=f[b+4>>2]|0;HWa(b+8|0);ubb(b);b=e}}while(0);return}function _V(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=b[a+11>>0]|0;g=e<<24>>24<0;if(g)h=f[a+4>>2]|0;else h=e&255;if((d|0)==-1)Lda();if(g)a=f[a>>2]|0;e=h>>>0>d>>>0;a=AQa(a,c,e?d:h)|0;if(!a)return (h>>>0>>0?-1:e&1)|0;else return a|0;return 0}function $V(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=a+8|0;b=0;d=0;while(1){g=f[e>>2]|0;c=f[g>>2]|0;if(d>>>0>=(f[g+4>>2]|0)-c>>2>>>0)break;c=f[c+(d<<2)>>2]|0;do if(c){if(!b){b=(f[c+8>>2]|0)==5;break}if(VOa(f[c>>2]|0)|0)b=0;else{XO(a,d);b=1}}while(0);d=d+1|0}return}function aW(a,b){a=a|0;b=b|0;b=eX(a,b)|0;if((b|0)!=(a+4|0)){w7(a+12|0,f[b+20>>2]|0);zQ(a,b)}return}function bW(a,b,c){a=a|0;b=b|0;c=c|0;Gwa(a);f[a>>2]=39856;f[a+4>>2]=b;f[a+8>>2]=c;return}function cW(a,b){a=a|0;b=b|0;b=p_(a,b)|0;if((b|0)!=(a+4|0))xH(a,b);return}function dW(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(16)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];f[g+12>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function eW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d+24|0;c=d;f[e>>2]=b;$pa(c,a,e);x=0;va(163,a|0,b|0,c|0);b=x;x=0;if(b&1){e=Ia()|0;sta(c);Ua(e|0)}else{sta(c);u=d;return}}function fW(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;d=b;c=GL(d,a+16|0)|0;LZ(132632,f[d>>2]|0,c,a);u=b;return}function gW(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+104|0;g=a+124|0;h=(f[g>>2]|0)+-1|0;if(!(b[e>>0]|0))d=(1<<(h&31)&f[(f[a+120>>2]|0)+(h>>>5<<2)>>2]|0)!=0&1;else d=1;b[e>>0]=d;f[g>>2]=h;d=f[c+8>>2]|0;if(w8a(f[d+4>>2]|0)|0)Tba(a,d)|0;Cna(a+44|0,c);return}function hW(a,b){a=a|0;b=b|0;RQa(a,b);f[a+24>>2]=f[b+24>>2];E4(a+28|0,b+28|0);E4(a+40|0,b+40|0);E4(a+52|0,b+52|0);E4(a+64|0,b+64|0);f[a+76>>2]=f[b+76>>2];E4(a+80|0,b+80|0);return}function iW(a,b){a=a|0;b=b|0;var c=0,d=0;d=_2(a,f[b+12>>2]|0)|0;c=_2(a,f[b+16>>2]|0)|0;return Zna(f[a+32>>2]|0,d,c,f[b+8>>2]|0)|0}function jW(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+16|0;d=f[c>>2]|0;do if(d){if((b|0)!=(d|0)){f[a+16>>2]=d;f[c>>2]=0;break}d=Bbb(a)|0;f[a+16>>2]=d;c=f[c>>2]|0;x=0;ua(f[(f[c>>2]|0)+12>>2]|0,c|0,d|0);d=x;x=0;if(d&1){d=Ja(0)|0;r2a(d)}}else f[a+16>>2]=0;while(0);return}function kW(a){a=a|0;if(!a)return;else{kW(f[a>>2]|0);kW(f[a+4>>2]|0);I_a(a+16|0);ubb(a);return}}function lW(a,b){a=a|0;b=b|0;if(!b)return;else{lW(a,f[b>>2]|0);lW(a,f[b+4>>2]|0);ubb(b);return}}function mW(a){a=a|0;var b=0;t2(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function nW(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(d>>>0>4294967279)Mda();if(d>>>0<11)b[a+11>>0]=d;else{g=d+16&-16;e=P1a(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}$Ta(a,c,d)|0;T0a(a+d|0,0);return}function oW(a,b){a=a|0;b=b|0;var c=0,d=0;c=XTa(f[a+4>>2]|0)|0;d=UQa(a,Or(b,1)|0)|0;f[c+8>>2]=d;d=UQa(a,Or(b,2)|0)|0;f[c+12>>2]=d;b=UQa(a,Or(b,3)|0)|0;f[c+16>>2]=b;raa(c);return c|0}function pW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=b;f[a+12>>2]=0;d=a+16|0;SGa(d);c=a+44|0;f[c>>2]=0;f[a+4>>2]=1;f[a+8>>2]=b;b=0;while(1){if(b|0){b=6;break}x=0;b=ga(312,a|0)|0;e=x;x=0;if(e&1){b=5;break}f[c>>2]=b}if((b|0)==5){e=Ia()|0;Nya(d);Ua(e|0)}else if((b|0)==6)return}function qW(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+8>>2]|0;c=_2(a,f[b+12>>2]|0)|0;b=_2(a,f[b+16>>2]|0)|0;return Fpa(f[a+32>>2]|0,d,c,b)|0}function rW(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;if((c|0)!=0?(mfa(a+108|0,c)|0)!=0:0)c=1;else d=3;do if((d|0)==3){c=f[b+4>>2]|0;if(c|0?mfa(a+108|0,c)|0:0){c=1;break}qna(b);c=0}while(0);return c|0}function sW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:do if((f[a+4>>2]|0)==(f[b+4>>2]|0)?(e=f[a+8>>2]|0,c=(f[a+12>>2]|0)-e>>2,a=f[b+8>>2]|0,d=a,e,(c|0)==((f[b+12>>2]|0)-a>>2|0)):0){a=0;while(1){if(a>>>0>=c>>>0){a=1;break a}if((f[e+(a<<2)>>2]|0)==(f[d+(a<<2)>>2]|0))a=a+1|0;else{a=0;break}}}else a=0;while(0);return a|0}function tW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=(c-e|0)/12|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){a=e+(b*12|0)|0;while(1){if((c|0)==(a|0))break;e=c+-12|0;uSa(e);c=e}f[g>>2]=a}}else BB(a,b-d|0);return}function uW(a){a=a|0;if(!a)return;else{uW(f[a>>2]|0);uW(f[a+4>>2]|0);ubb(a);return}}function vW(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(28)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];d=e+20|0;c=d;f[c>>2]=0;f[c+4>>2]=0;$$a(d);b[a+8>>0]=1;return}function wW(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){_Ba(b);ubb(b)}}b=f[a>>2]|0;if(b|0)ubb(b);return}function xW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=d;j=a+8|0;h=0;i=0;a:while(1){if((c|0)==(d|0)|h>>>0>=e>>>0)break;g=kRa(f[j>>2]|0)|0;a=MZa(c,k-c|0,b)|0;if(g|0)kRa(g)|0;switch(a|0){case -2:case -1:break a;case 0:{a=1;break}default:{}}h=h+1|0;i=a+i|0;c=c+a|0}return i|0}function yW(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=u;u=u+16|0;i=l;b[i>>0]=37;j=i+1|0;b[j>>0]=g;k=i+2|0;b[k>>0]=h;b[i+3>>0]=0;if(h<<24>>24){b[j>>0]=h;b[k>>0]=g}k=J1a(c,f[d>>2]|0)|0;k=c+(Xb(c|0,k|0,i|0,e|0,f[a>>2]|0)|0)|0;f[d>>2]=k;u=l;return}function zW(a,b){a=a|0;b=b|0;var c=0,d=0;sKa(a);f[a>>2]=40780;f[a+44>>2]=b;d=a+48|0;f[d>>2]=0;if(b|0)return;x=0;wa(71,71723,71747,281,71773);x=0;b=Ia()|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0){sAa(c);ubb(c)}LTa(a);Ua(b|0)}function AW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=f[a>>2]|0;g=a+4|0;e=f[g>>2]|0;h=Y7(c,e,b)|0;d=e;if((h|0)!=(e|0)?(f[h>>2]|0)==(b|0):0){b=h+4|0;e=d-b|0;if(e){fia(h|0,b|0,e|0)|0;d=f[g>>2]|0;c=f[a>>2]|0}kha(a,(d-c>>2)+-1|0);c=1}else c=0;return c|0}function BW(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=a+20|0;h=a+28|0;if((f[b>>2]|0)>>>0>(f[h>>2]|0)>>>0?(ec[f[a+36>>2]&127](a,0,0)|0,(f[b>>2]|0)==0):0)a=-1;else{c=a+4|0;d=f[c>>2]|0;e=a+8|0;g=f[e>>2]|0;if(d>>>0>>0)ec[f[a+40>>2]&127](a,d-g|0,1)|0;f[a+16>>2]=0;f[h>>2]=0;f[b>>2]=0;f[e>>2]=0;f[c>>2]=0;a=0}return a|0}function CW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;AA(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function DW(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){_Ba(c);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function EW(a,b){a=a|0;b=b|0;if(!b)return;else{EW(a,f[b>>2]|0);EW(a,f[b+4>>2]|0);ubb(b);return}}function FW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];c=a+4|0;d=b+4|0;f[c>>2]=0;e=a+8|0;f[e>>2]=0;g=a+12|0;f[g>>2]=0;f[c>>2]=f[d>>2];c=b+8|0;f[e>>2]=f[c>>2];e=b+12|0;f[g>>2]=f[e>>2];f[e>>2]=0;f[c>>2]=0;f[d>>2]=0;d=b+16|0;c=f[d+4>>2]|0;b=a+16|0;f[b>>2]=f[d>>2];f[b+4>>2]=c;return}function GW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;DA(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function HW(a){a=a|0;var b=0;A3(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function IW(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;g=a+11|0;c=b[g>>0]|0;if(c<<24>>24<0){h=f[a>>2]|0;d=f[a+4>>2]|0}else{h=a;d=c&255}e=(d|0)!=0&1;d=d-e|0;if(d){STa(h,h+e|0,d)|0;c=b[g>>0]|0}if(c<<24>>24<0)f[a+4>>2]=d;else b[g>>0]=d;T0a(h+d|0,0);return}function JW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;d=b+36|0;e=f[d>>2]|0;if(o2a(f[e+4>>2]|0)|0){b=f[a+36>>2]|0;Bbb(b)|0;U0a(c,b);b=IOa(c,f[d>>2]|0)|0;f[d>>2]=b}else b=e;a=pM(a,e,b)|0;f[d>>2]=a;u=g;return}function KW(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+96|0;d=e;if($1a(f[c+8>>2]|0,f[a+36>>2]|0)|0){if(f[c+16>>2]|0){g=a+44|0;f[g>>2]=(f[g>>2]|0)+1}fA(d,f[a+52>>2]|0,f[c+12>>2]|0);g=lza(d)|0;V7(d);if(g)b[a+40>>0]=1}u=e;return}function LW(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+48|0;e=a+44|0;f=a+68|0;g=a+16|0;do{bZ(d);if(b[e>>0]|0)Tc(a,c);b[f>>0]=0;kEa(g,c);if(!(b[e>>0]|0))break}while((b[f>>0]|0)!=0);return}function MW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((eX(a+48|0,b)|0)!=(a+52|0))Ca(71092,71128,128,71153);m7(a,b,c);if(!((d|0)!=0?(f[d+4>>2]|0)==(f[b+4>>2]|0):0))Kv(a,b);return}function NW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;f[d>>2]=c;c=a+24|0;kha(c,fQa(b)|0);c=f[c>>2]|0;b=(f[a+28>>2]|0)-c>>2;while(1){if((b|0)<=0)break;g=c;f[g>>2]=0;b=b+-1|0;c=g+4|0}qL(a,d);u=e;return}function OW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(zqa(b)|0){b=Bbb(f[a+16>>2]|0)|0;f[e>>2]=b;c=a+172|0;d=f[c>>2]|0;if(d>>>0<(f[a+176>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else IL(a+168|0,e)}u=g;return}function PW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=f[33448]|0;f[33448]=0;fOa()|0;d=+x8a(a,e);a=f[33448]|0;if(!a)f[33448]=g;if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function QW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=f[33448]|0;f[33448]=0;fOa()|0;d=+n9a(a,e);a=f[33448]|0;if(!a)f[33448]=g;if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function RW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=f[33448]|0;f[33448]=0;fOa()|0;d=+o9a(a,e);a=f[33448]|0;if(!a)f[33448]=g;if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function SW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+128|0;h=i;e=h;g=e+124|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));e=h+4|0;f[e>>2]=a;g=h+8|0;f[g>>2]=-1;f[h+44>>2]=a;f[h+76>>2]=-1;una(h,0);d=+ni(h,c,1);c=(f[e>>2]|0)-(f[g>>2]|0)+(f[h+108>>2]|0)|0;if(b|0)f[b>>2]=(c|0)==0?a:a+c|0;u=i;return +d}function TW(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=f[c>>2]|0;yCa(yCa(a,Aha(f[b+24>>2]|0)|0)|0,75491)|0;a=b+8|0;if(Bbb(f[a>>2]|0)|0){c=yCa(f[c>>2]|0,75482)|0;zm(c,Bbb(f[a>>2]|0)|0)|0}return}function UW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=NRa(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return NRa((fk(h,g,NRa(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function VW(a){a=a|0;if(!a)return;else{VW(f[a>>2]|0);VW(f[a+4>>2]|0);ubb(a);return}}function WW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;aB(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function XW(a){a=a|0;var c=0,d=0,e=0;c=0;while(1){if(c>>>0>=(XXa(a)|0)>>>0){c=0;break}d=Or(a,c)|0;if(((b8a(b[d>>0]|0)|0?XXa(d)|0:0)?(e=Or(d,0)|0,u8a(b[e>>0]|0)|0):0)?(e=jF(Or(d,0)|0)|0,$1a(e,f[33104]|0)|0):0){c=1;break}c=c+1|0}return c|0}function YW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;if((c|0?(g=o$a(f[c+4>>2]|0)|0,g|0):0)?(f[e>>2]=f[g+8>>2],f[d>>2]=f[e>>2],!(MM(g,d)|0)):0)f[a>>2]=0;a=a+4|0}u=h;return}function ZW(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(32)|0;f[a>>2]=g;f[a+4>>2]=c+4;f[g+16>>2]=f[d>>2];d=g+20|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];b[a+8>>0]=1;return}function _W(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+32|0;e=c+16|0;g=c;d=oUa(a)|0;m$a(g,b);f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];b=a0(a,e)|0;b=Fpa(f[a>>2]|0,15,d,b)|0;u=c;return b|0}function $W(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b>>2]|0){case 1:{m$a(c,0);eT(a,b,c);break}case 2:{SSa(c,0,0);eT(a,b,c);break}case 3:{CAa(c,0.0);eT(a,b,c);break}case 4:{kqa(c,0.0);eT(a,b,c);break}default:hb()}u=d;return}function aX(a){a=a|0;var b=0;tab(a);b=a+4|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;tab(a+32|0);f[a+40>>2]=0;yUa(a+44|0);yUa(a+56|0);b=a+68|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+84>>2]=1065353216;return}function bX(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;PQa(b,0);x=0;ja(83,b|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=x;x=0;if(a&1){c=Ia()|0;uSa(b);Ua(c|0)}else{a=(f[b+4>>2]|0)-(f[b>>2]|0)|0;uSa(b);u=c;return a|0}return 0}function cX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];b=_2(a,f[b+12>>2]|0)|0;f[d>>2]=f[e>>2];b=vsa(a+32|0,d,b)|0;u=c;return b|0}function dX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e;d=f[a>>2]|0;if((f[a+8>>2]|0)-d>>3>>>0>>0){DN(c,b,(f[a+4>>2]|0)-d>>3,a+8|0);HO(a,c);vha(c)}u=e;return}function eX(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=X3(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?(f[c+16>>2]|0)>>>0<=b>>>0:0)a=c;return a|0}function fX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;h=Bbb($ta(5)|0)|0;f4a(e,Nqa(Nqa(Nqa(Nqa(Nqa(h,woa(133132)|0)|0,a)|0,b)|0,c)|0,d)|0);u=g;return f[e>>2]|0}function gX(a){a=a|0;var b=0,c=0;rIa(a);f[a>>2]=40248;b=a+44|0;yUa(b);x=0;ia(67,a+4|0,61507)|0;c=x;x=0;if(c&1){c=Ia()|0;oEa(b);LTa(a);Ua(c|0)}else return}function hX(a,c){a=a|0;c=c|0;var e=0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];if((a|0)!=(c|0))Fu(a+12|0,f[c+12>>2]|0,f[c+16>>2]|0);e=a+24|0;c=c+24|0;d[e>>1]=d[c>>1]|0;b[e+2>>0]=b[c+2>>0]|0;return a|0}function iX(a){a=a|0;var b=0;b=u;u=u+16|0;x=0;sa(a|0);a=x;x=0;if(!(a&1)){x=0;ua(3191,122781,b|0);x=0}a=Ja(0)|0;Fa(a|0)|0;x=0;ua(3191,122821,b+8|0);x=0;a=Ja(0)|0;x=0;sa(6);b=x;x=0;if(b&1){b=Ja(0)|0;r2a(b)}else r2a(a)}function jX(a){a=a|0;var b=0;XOa(a);b=a+40|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;yUa(a+68|0);b=a+80|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;yUa(a+104|0);return}function kX(a){a=a|0;if(!a)return;else{kX(f[a>>2]|0);kX(f[a+4>>2]|0);ubb(a);return}}function lX(a){a=a|0;if(!a)return;else{lX(f[a>>2]|0);lX(f[a+4>>2]|0);ubb(a);return}}function mX(a){a=a|0;if(!a)return;else{mX(f[a>>2]|0);mX(f[a+4>>2]|0);ubb(a);return}}function nX(a){a=a|0;if(!a)return;else{nX(f[a>>2]|0);nX(f[a+4>>2]|0);ubb(a);return}}function oX(a){a=a|0;if(!a)return;else{oX(f[a>>2]|0);oX(f[a+4>>2]|0);ubb(a);return}}function pX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;c=aY(b,c+8|0)|0;f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[e+12>>2]=f[c+12>>2];rAa(a,e);u=d;return}function qX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=Iab(b)|0;e=a+32|0;b=_2(a,d)|0;if(g)b=nBa(f[e>>2]|0,c,b)|0;else b=Lya(e,c,b)|0;return b|0}function rX(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=r4(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?(f[c+16>>2]|0)<=(b|0):0)a=c;return a|0}function sX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;cLa(e,(Bbb(f[a+32>>2]|0)|0)<<16,0);b=Bbb(b)|0;io(a,b,0,(Bbb(f[e>>2]|0)|0)-c|0,0,58447);u=d;return}function tX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=Bbb(f[a+16>>2]|0)|0;g=(c|0)==0;d=L6a(a)|0;a=e;while(1){e=a;if((d|0)==(e|0))break;a=a+8|0;if(!(!g?!(yQa(c,f[a>>2]|0)|0):0))dL(b,a);a=f[e+4>>2]|0}return}function uX(a,c){a=a|0;c=c|0;var d=0,e=0;do if(!(b[a+28>>0]|0)){e=f[c+16>>2]|0;if(e|0?(f[e+4>>2]|0)==5:0)break;e=f[c+12>>2]|0;if(!((e|0)!=0?(f[e+4>>2]|0)==5:0))d=6}else d=6;while(0);if((d|0)==6?$1a(f[c+8>>2]|0,f[a+24>>2]|0)|0:0)I9(a,f[c+12>>2]|0);return}function vX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;b=b+(c<<4)|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];rAa(a,e);u=d;return}function wX(a){a=a|0;if(!a)return;else{wX(f[a>>2]|0);wX(f[a+4>>2]|0);ubb(a);return}}function xX(a){a=a|0;if(!a)return;else{xX(f[a>>2]|0);xX(f[a+4>>2]|0);ubb(a);return}}function yX(a,b){a=a|0;b=b|0;if(!b)return;else{yX(a,f[b>>2]|0);yX(a,f[b+4>>2]|0);ubb(b);return}}function zX(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=a;MOa(0,0,d);d=200;a=2;a:while(1){e=b[c>>0]|0;switch(e<<24>>24){case 0:break a;case 10:{a=a+-1|0;if(!a)break a;break}default:{}}d=d+-1|0;if(!d)break;JV(e<<24>>24);c=c+1|0}GHa(73223,2,1,46204)|0;u=g;return}function AX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=b;e=b;do if(Iab(f[b+32>>2]|0)|0){b=a+40|0;c=f[b>>2]|0;if((c|0)==(f[a+44>>2]|0)){IL(a+36|0,d);break}else{f[c>>2]=e;f[b>>2]=(f[b>>2]|0)+4;break}}while(0);u=g;return}function BX(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,1462,b);ff(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,1463,b);return}function CX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;h=e+4|0;g=e;a=a+28|0;i=f[a>>2]|0;f4a(h,ena((b|0)==0?c:b)|0);Yr(i,f[h>>2]|0)|0;c=f[a>>2]|0;f4a(g,d);Yr(c,f[g>>2]|0)|0;u=e;return}function DX(a){a=a|0;if(!a)return;else{DX(f[a>>2]|0);DX(f[a+4>>2]|0);ubb(a);return}}function EX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;f[d>>2]=a;a=c;e=Bbb($ta(3)|0)|0;e=Nqa(e,woa(133068)|0)|0;f4a(a,Nqa(Nqa(e,woa(d)|0)|0,b)|0);u=c;return f[a>>2]|0}function FX(a,b){a=a|0;b=b|0;var c=0;yUa(a);c=a+12|0;f[c>>2]=c;f[a+16>>2]=c;f[a+20>>2]=0;x=0;ia(142,a|0,b|0)|0;b=x;x=0;if(b&1){b=Ia()|0;dVa(c);Uwa(a);Ua(b|0)}else return}function GX(){var a=0,c=0;if((b[130896]|0)==0?PWa(130896)|0:0){c=129248;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=129536)}YEa(129248,120238)|0;YEa(129260,120241)|0;return}function HX(a,b,c){a=a|0;b=b|0;c=c|0;if(!(c<<24>>24)){x=0;ua(3185,1,118860);x=0;c=Ja(0)|0;r2a(c)}x=0;b=ia(212,a|0,b|0)|0;a=x;x=0;do if(!(a&1))if(!b)return;else{x=0;ua(3185,b|0,118903);x=0;break}while(0);a=Ja(0)|0;r2a(a)}function IX(a,c){a=a|0;c=c|0;var d=0,e=0;e=(h[c+1>>0]|0)<<16|(h[c>>0]|0)<<24|(h[c+2>>0]|0)<<8|(h[c+3>>0]|0);d=a+3|0;c=b[d>>0]|0;a=(h[a+1>>0]|0)<<16|(h[a>>0]|0)<<24|(h[a+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((a|0)==(e|0)|c))do{d=d+1|0;c=b[d>>0]|0;a=a<<8|c&255;c=c<<24>>24==0}while(!((a|0)==(e|0)|c));return (c?0:d+-3|0)|0}function JX(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=a+20|0;d=a+28|0;if((f[c>>2]|0)>>>0>(f[d>>2]|0)>>>0)ec[f[a+36>>2]&127](a,0,0)|0;f[a+16>>2]=0;f[d>>2]=0;f[c>>2]=0;c=f[a>>2]|0;if(!(c&4)){d=(f[a+44>>2]|0)+(f[a+48>>2]|0)|0;f[a+8>>2]=d;f[a+4>>2]=d;c=c<<27>>31}else{f[a>>2]=c|32;c=-1}return c|0}function KX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;f[d>>2]=a;a=c;e=Bbb($ta(3)|0)|0;e=Nqa(e,woa(133116)|0)|0;f4a(a,Nqa(Nqa(e,woa(d)|0)|0,b)|0);u=c;return f[a>>2]|0}function LX(a){a=a|0;var b=0,c=0;NQa(a+68|0);nIa(a+56|0);yJa(a+44|0);c=a+40|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){uSa(b);ubb(b)}uSa(a+20|0);uSa(a+8|0);return}function MX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=Iab(f[b+4>>2]|0)|0;c=a+4|0;d=f[c>>2]|0;if(e)tPa(d,75577)|0;else tPa(d,75588)|0;e=f[c>>2]|0;wfa(e,G3(f[b+8>>2]|0,f[a>>2]|0)|0)|0;return}function NX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d+4|0;g=d;h=PN(f[a+8>>2]|0)|0;f[g>>2]=h;f[e>>2]=f[g>>2];if(!(UBa(c,e)|0))sla(c,Nl(b,a)|0);u=d;return}function OX(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+80|0;d=c;b=c+4|0;f[d>>2]=a;kSa(b);x=0;ua(1460,b|0,d|0);a=x;x=0;if(a&1){d=Ia()|0;jSa(b);Ua(d|0)}else{jSa(b);u=c;return}}function PX(a){a=a|0;var b=0,c=0;b=N_a(a)|0;do if(!b){a=S$a(a)|0;if(a|0){b=N_a(f[a+12>>2]|0)|0;if(b|0)break;b=f[a+16>>2]|0;if(b|0?(c=N_a(b)|0,c|0):0){b=c;break}}b=0}while(0);return b|0}function QX(a,c){a=a|0;c=c|0;var d=0,e=0;a:do if((a|0)!=(c|0)?(d=(b[a>>0]|0)==110?a+1|0:a,(d|0)!=(c|0)):0){e=b[d>>0]|0;if(e<<24>>24==48){d=d+1|0;break}if((e+-49&255)<9)do{d=d+1|0;if((d|0)==(c|0)){d=c;break a}}while(((b[d>>0]|0)+-48|0)>>>0<10);else d=a}else d=a;while(0);return d|0}function RX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;if(!b)d=0;else d=uJa(f[d>>2]|0,b)|0;f[a>>2]=d;c=d+(c<<4)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<4);return}function SX(a,b){a=a|0;b=b|0;if(!b)return;else{SX(a,f[b>>2]|0);SX(a,f[b+4>>2]|0);ubb(b);return}}function TX(a){a=a|0;var c=0,d=0,e=0;c=a+44|0;e=f[c>>2]|0;d=f[a+24>>2]|0;if(e>>>0>>0){f[c>>2]=d;e=d}if(f[a+48>>2]&8){c=a+16|0;d=f[c>>2]|0;if(d>>>0>>0){f[c>>2]=e;d=e}c=f[a+12>>2]|0;if(c>>>0>>0)c=X6a(b[c>>0]|0)|0;else c=-1}else c=-1;return c|0}function UX(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;if(e&2048){b[a>>0]=43;a=a+1|0}if(e&512){b[a>>0]=35;a=a+1|0}f=a;while(1){a=b[c>>0]|0;if(!(a<<24>>24))break;b[f>>0]=a;c=c+1|0;f=f+1|0}switch(e&74){case 64:{a=111;break}case 8:{a=e>>>9&32^120;break}default:a=d?100:117}b[f>>0]=a;return}function VX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;f[d>>2]=b;b=c;e=Bbb($ta(3)|0)|0;a=Nqa(Nqa(e,woa(132864)|0)|0,a)|0;f4a(b,Nqa(a,woa(d)|0)|0);u=c;return f[b>>2]|0}function WX(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;lra(c+16|0,b);HU(c,b);tWa(a,0);return}function XX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;switch(b<<24>>24){case 4:case 2:case 1:break;case 8:{if((c|0)!=5)eqa(a,Dxa(c)|0,d);break}default:DV(f[a+44>>2]|0,84054,d,Bbb(f[a+32>>2]|0)|0)}return}function YX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;GA(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function ZX(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;JJa(e);b=e}f[d>>2]=c;e=f[a>>2]|0;VIa(f[a+12>>2]|0,e,((f[a+8>>2]|0)-e|0)/24|0)}return}function _X(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+4|0;d=f[c>>2]|0;if($1a(f[d+-4>>2]|0,f[b>>2]|0)|0){f[c>>2]=d+-4;d=(WW(a+12|0,gZ(a+24|0,b)|0)|0)+4|0;f[d>>2]=(f[d>>2]|0)+-4;return}else Ca(65010,65036,253,65052)}function $X(){var a=0,c=0;if((b[130976]|0)==0?PWa(130976)|0:0){c=13e4;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=130288)}XEa(13e4,48224)|0;XEa(130012,48236)|0;return}function aY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;bB(c,a,b,e);u=d;return (f[c>>2]|0)+24|0}function bY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+64|0;b=d;AM(b,f[a+16>>2]|0);jOa(b,1);x=0;ua(1303,b|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;dWa(b);Ua(c|0)}else{dWa(b);u=d;return}}function cY(a,c){a=a|0;c=c|0;var d=0,e=0;d=0;while(1){if((h[28800+d>>0]|0)==(a|0)){e=4;break}d=d+1|0;if((d|0)==87){a=87;e=5;break}}if((e|0)==4)if(!d)d=28896;else{a=d;e=5}if((e|0)==5){d=28896;do{do{e=d;d=d+1|0}while((b[e>>0]|0)!=0);a=a+-1|0}while((a|0)!=0)}return N6a(d,f[c+20>>2]|0)|0}function dY(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;tPa(f[c>>2]|0,117209)|0;a=b+4|0;if(o2a(f[a>>2]|0)|0){c=yCa(f[c>>2]|0,75657)|0;zma(yCa(c,Aha(f[a>>2]|0)|0)|0,41)|0}return}function eY(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=c+12|0;d=b[g+11>>0]|0;e=d<<24>>24<0;bI(c,e?f[g>>2]|0:g,e?f[c+16>>2]|0:d&255)|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}return}function fY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];b=_2(a,f[b+12>>2]|0)|0;f[d>>2]=f[e>>2];b=Ywa(a+32|0,d,b)|0;u=c;return b|0}function gY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e;d=f[a>>2]|0;if((f[a+8>>2]|0)-d>>4>>>0>>0){FN(c,b,(f[a+4>>2]|0)-d>>4,a+8|0);MO(a,c);wha(c)}u=e;return}function hY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;DB(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function iY(a){a=a|0;f[a>>2]=42056;IZ(a+184|0);NQa(a+164|0);NQa(a+144|0);GGa(a);return}function jY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d+4|0;g=d;h=LJ(f[a+8>>2]|0)|0;f[g>>2]=h;f[e>>2]=f[g>>2];if(!(UBa(c,e)|0))sla(c,Zj(b,a)|0);u=d;return}function kY(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;c=(qSa(f[c>>2]|0)|0)+16|0;if(!(f[c>>2]|0))Ca(113900,113849,204,113930);else{e=a+120|0;c=a+124|0;g=(f[c>>2]|0)+-1|0;d=(1<<(g&31)&f[(f[e>>2]|0)+(g>>>5<<2)>>2]|0)!=0&1;f[c>>2]=g;c=a+104|0;AO(e,c);b[c>>0]=d;return}}function lY(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,1427,b);Rd(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,1428,b);return}function mY(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=a+16|0;g=f[e>>2]|0;do if(g){if((g|0)!=(c|0)){d=a+36|0;f[d>>2]=(f[d>>2]|0)+1;f[a+24>>2]=2;b[a+54>>0]=1;break}a=a+24|0;if((f[a>>2]|0)==2)f[a>>2]=d}else{f[e>>2]=c;f[a+24>>2]=d;f[a+36>>2]=1}while(0);return}function nY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+12>>2]|0);kfa(a);u=c;return}function oY(a){a=a|0;var b=0,c=0,d=0;Tua(a);d=(f[a>>2]&1|0)!=0;if(!d){Cbb();c=f[a+52>>2]|0;b=a+56|0;if(c|0)f[c+56>>2]=f[b>>2];b=f[b>>2]|0;if(b|0)f[b+52>>2]=c;if((f[33451]|0)==(a|0))f[33451]=b;xbb()}b=V0(a)|0;b=bc[f[a+12>>2]&511](a)|0|b;c=f[a+92>>2]|0;if(c|0)rg(c);if(!d)rg(a);return b|0}function pY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if((f[a+24>>2]|0)==(b|0)){d=f[a+28>>2]|0;b=Bbb(f[a>>2]|0)|0;f[e>>2]=b;a=d+4|0;c=f[a>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=b;f[a>>2]=(f[a>>2]|0)+4}else IL(d,e)}u=g;return}function qY(a,b,c){a=a|0;b=b|0;c=c|0;BQa(a,b);b=a+16|0;$Wa(b,c);Q2(b,c);return}function rY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;f[e>>2]=b;d=f[a+80>>2]|0;do if(d|0){a=d+28|0;c=f[a>>2]|0;if((c|0)==(f[d+32>>2]|0)){IL(d+24|0,e);break}else{f[c>>2]=b;f[a>>2]=(f[a>>2]|0)+4;break}}while(0);u=g;return}function sY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[(f[a>>2]|0)+4>>2]&511](a)|0;d=(xg(c,d,a,a+288|0,g,e,0)|0)-a|0;if((d|0)<288)f[b>>2]=((d|0)/12|0|0)%12|0;return}function tY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[(f[a>>2]|0)+4>>2]&511](a)|0;d=(vg(c,d,a,a+288|0,g,e,0)|0)-a|0;if((d|0)<288)f[b>>2]=((d|0)/12|0|0)%12|0;return}function uY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+24>>2]|0);kfa(a);u=c;return}function vY(a,b){a=a|0;b=b|0;var c=0,d=0;d=(ARa(a)|0)+12|0;d=(ARa(f[d>>2]|0)|0)+16|0;d=Q4(f[d>>2]|0)|0;c=(ARa(a)|0)+16|0;c=d-(Q4(f[c>>2]|0)|0)|0;f[b>>2]=c;return VHa(a)|0}function wY(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-24|0;f[c>>2]=d;JJa(d)}b=f[a>>2]|0;if(b|0)VIa(f[f[a+16>>2]>>2]|0,b,((f[a+12>>2]|0)-b|0)/24|0);return}function xY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);VBa(a);OP(a,f[b+8>>2]|0);kfa(a);u=c;return}function yY(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}c=a+12|0;a=b+12|0;f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}return}function zY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;hU(c);x=0;va(180,a|0,c|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;HTa(c);Ua(d|0)}else{HTa(c);u=d;return}}function AY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;hU(c);x=0;va(179,a|0,c|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;HTa(c);Ua(d|0)}else{HTa(c);u=d;return}}function BY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;hU(c);x=0;va(178,a|0,c|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;HTa(c);Ua(d|0)}else{HTa(c);u=d;return}}function CY(a){a=a|0;if(!a)return;else{CY(f[a>>2]|0);CY(f[a+4>>2]|0);ubb(a);return}}function DY(a,b){a=a|0;b=b|0;var c=0,d=0;_d(a,b);d=f[b>>2]|0;c=f[d>>2]|0;if(rab(c)|0){rS(a+16|0,1337,b);c=f[d>>2]|0}if(Fab(c)|0)rS(a+16|0,1338,b);return}function EY(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;PQa(b,0);x=0;ia(139,b|0,f[a>>2]|0)|0;a=x;x=0;if(a&1){c=Ia()|0;uSa(b);Ua(c|0)}else{a=(f[b+4>>2]|0)-(f[b>>2]|0)|0;uSa(b);u=c;return a|0}return 0}function FY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+64|0;b=d;AM(b,f[a+16>>2]|0);U2a(b);x=0;ua(1303,b|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;dWa(b);Ua(c|0)}else{dWa(b);u=d;return}}function GY(a,b){a=a|0;b=b|0;if(!b)return;else{GY(a,f[b>>2]|0);GY(a,f[b+4>>2]|0);ubb(b);return}}function HY(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){uSa(b);ubb(b)}}b=f[a>>2]|0;if(b|0)ubb(b);return}function IY(a){a=a|0;var b=0;switch(f[a+12>>2]|0){case 2:{b=ZBa(f[a>>2]|0)|0;break}case 3:{b=y$(f[a>>2]|0)|0;break}case 4:{b=z_a(~~+p[a>>3]>>>0)|0;break}case 5:{b=mLa(+p[a>>3])|0;break}default:hb()}return b|0}function JY(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(36)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];qQa(e+20|0);b[a+8>>0]=1;return}function KY(a){a=a|0;var c=0,d=0,e=0;b[a>>0]=0;b[a+1>>0]=0;tab(a+4|0);cLa(a+8|0,0,0);cLa(a+12|0,-1,0);c=a+16|0;f[c>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;x=0;d=ga(226,0)|0;e=x;x=0;if(e&1){e=Ia()|0;hca(c);Ua(e|0)}else{f[a+4>>2]=d;return}}function LY(a,b){a=a|0;b=b|0;var c=0,d=0;c=n8(12)|0;d=f[b>>2]|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;b=h7a(d)|0;x=0;va(87,c|0,d|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;ubb(c);Ua(d|0)}else{f[a>>2]=c;return}}function MY(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){uSa(c);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function NY(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}a=a+12|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}return}function OY(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+12>>2]|0;if(b|0?(c=f[a+16>>2]|0,c|0):0){d=f[b+4>>2]|0;do if((d|0)!=5?(f[c+4>>2]|0)!=5:0){b=a+4|0;if(R7(f[a+8>>2]|0)|0){f[b>>2]=1;break}else{f[b>>2]=d;break}}else e=6;while(0);if((e|0)==6)f[a+4>>2]=5;return}Ca(93472,91141,530,91161)}function PY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+32|0;c=d;YPa(c);x=0;a=ja(73,a|0,b|0,c|0)|0;b=x;x=0;if(b&1){d=Ia()|0;sta(c);Ua(d|0)}else{sta(c);u=d;return a|0}return 0}function QY(a){a=a|0;if(!a)return;else{QY(f[a>>2]|0);QY(f[a+4>>2]|0);ubb(a);return}}function RY(a){a=a|0;if(!a)return;else{RY(f[a>>2]|0);RY(f[a+4>>2]|0);ubb(a);return}}function SY(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(32)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];yUa(e+20|0);b[a+8>>0]=1;return}function TY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[f[a>>2]>>2]&511](a)|0;d=(xg(c,d,a,a+168|0,g,e,0)|0)-a|0;if((d|0)<168)f[b>>2]=((d|0)/12|0|0)%7|0;return}function UY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[f[a>>2]>>2]&511](a)|0;d=(vg(c,d,a,a+168|0,g,e,0)|0)-a|0;if((d|0)<168)f[b>>2]=((d|0)/12|0|0)%7|0;return}function VY(a){a=a|0;uSa(a+108|0);NQa(a+88|0);X8(a+68|0);uSa(a+56|0);NQa(a+36|0);uSa(a+24|0);return}function WY(a){a=a|0;var c=0,e=0,g=0;tab(a);cLa(a+4|0,0,0);cLa(a+8|0,65535,0);c=a+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;d[c+12>>1]=0;b[c+14>>0]=0;x=0;e=ga(226,0)|0;g=x;x=0;if(g&1){g=Ia()|0;hca(c);Ua(g|0)}else{f[a>>2]=e;return}}function XY(a){a=a|0;var b=0;bAa(a);f[a>>2]=40408;f[a+56>>2]=0;x=0;ia(67,a+4|0,62838)|0;b=x;x=0;if(b&1){b=Ia()|0;hRa(a);Ua(b|0)}else return}function YY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;xB(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function ZY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=(c-e|0)/24|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){a=e+(b*24|0)|0;while(1){if((c|0)==(a|0))break;e=c+-24|0;cQa(e);c=e}f[g>>2]=a}}else GC(a,b-d|0);return}function _Y(a){a=a|0;var b=0;G8(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function $Y(a){a=a|0;f[a>>2]=45828;sRa(a+108|0);MTa(a+96|0);uSa(a+84|0);uSa(a+72|0);_oa(a+60|0);hRa(a);return}function aZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=p_(a,d)|0;if((e|0)==(a+4|0))WIa(f[b>>2]|0,f[d>>2]|0,0);else IQa(f[c>>2]|0,f[(f[e+24>>2]|0)+-4>>2]|0);return}function bZ(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;Vya(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function cZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,492,b);qf(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,493,b);return}function dZ(a){a=a|0;uSa(a+132|0);Nya(a+104|0);HTa(a+92|0);HTa(a+80|0);uSa(a+52|0);NQa(a+32|0);NQa(a+12|0);_$a(a);return}function eZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;_r(a+44|0,b);d=a+104|0;kha(d,fQa(b)|0);d=f[d>>2]|0;c=(f[a+108>>2]|0)-d>>2;while(1){if((c|0)<=0)break;e=d;f[e>>2]=0;c=c+-1|0;d=e+4|0}$J(a+16|0,b+36|0);return}function fZ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(36)|0;f[a>>2]=g;f[a+4>>2]=c+4;f[g+16>>2]=f[d>>2];qMa(g+20|0,f[e>>2]|0);b[a+8>>0]=1;return}function gZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;sB(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function hZ(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){HTa(b);ubb(b)}}b=f[a>>2]|0;if(b|0)ubb(b);return}function iZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,3153,b);ke(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,3154,b);return}function jZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;$B(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function kZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a:do if(!(b[a+44>>0]|0)){e=0;while(1){if((e|0)>=(d|0))break a;h=f[(f[a>>2]|0)+52>>2]|0;g=X6a(b[c>>0]|0)|0;if((dc[h&255](a,g)|0)==-1)break a;e=e+1|0;c=c+1|0}}else e=GHa(c,1,d,f[a+32>>2]|0)|0;while(0);return e|0}function lZ(a,b){a=a|0;b=b|0;var c=0;switch(f[b+8>>2]|0){case 2:{Gta(a,Bbb(f[b+20>>2]|0)|0,b);c=JDa(b+16|0,0)|0;Oja(a,f[(f[c>>2]|0)+4>>2]|0,b);break}case 3:case 1:case 0:break;default:hb()}return}function mZ(a){a=a|0;if(!a)return;else{mZ(f[a>>2]|0);mZ(f[a+4>>2]|0);ubb(a);return}}function nZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=a+12|0;f[g>>2]=0;f[a+16>>2]=131360;do if(c)if(c>>>0<29&(b[131472]|0)==0){b[131472]=1;e=131360;break}else{e=n8(c<<2)|0;break}else e=0;while(0);f[a>>2]=e;d=e+(d<<2)|0;f[a+8>>2]=d;f[a+4>>2]=d;f[g>>2]=e+(c<<2);return}function oZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(!(((b|0)!=0?(e=o$a(b)|0,(e|0)!=0):0)?!(Iab(f[e+8>>2]|0)|0):0))e=qwa(f[a>>2]|0,b)|0;f[e+8>>2]=f[c>>2];if(d|0){aaa(e+12|0,d);rt(e)}return e|0}function pZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[h>>2]=f[b+24>>2];b=f[b+28>>2]|0;f[g>>2]=f[h>>2];d=v2(a,g,b,c,d)|0;u=e;return d|0}function qZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,601,b);ze(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,602,b);return}function rZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);WX(b,d);return}function sZ(a,b){a=a|0;b=b|0;b=eX(a,b)|0;if((b|0)!=(a+4|0)){Sla(a+12|0,f[b+20>>2]|0);zQ(a,b)}return}function tZ(a,b){a=a|0;b=b|0;var c=0,d=0;if(!a){b=Kc(b)|0;return b|0}if(b>>>0>4294967231){f[33448]=12;b=0;return b|0}c=tk(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(c|0){b=c+8|0;return b|0}c=Kc(b)|0;if(!c){b=0;return b|0}d=f[a+-4>>2]|0;d=(d&-8)-((d&3|0)==0?8:4)|0;Iu(c|0,a|0,(d>>>0>>0?d:b)|0)|0;rg(a);b=c;return b|0}function uZ(a,b){a=a|0;b=b|0;var c=0;c=n8(36)|0;f[c>>2]=0;x=0;ua(1500,c+8|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;ubb(c);Ua(b|0)}else{f[c+4>>2]=a;b=f[a>>2]|0;f[c>>2]=b;f[b+4>>2]=c;f[a>>2]=c;c=a+8|0;f[c>>2]=(f[c>>2]|0)+1;return}}function vZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;JB(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function wZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=u;u=u+64|0;c=e;AM(c,f[a+16>>2]|0);b[c+21>>0]=1;x=0;ua(1303,c|0,d|0);d=x;x=0;if(d&1){d=Ia()|0;dWa(c);Ua(d|0)}else{dWa(c);u=e;return}}function xZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;tU(a,c,d,0,e);x=0;ua(1370,a|0,b|0);e=x;x=0;if(e&1){e=Ia()|0;xfa(a);Ua(e|0)}else return}function yZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,3041,b);ue(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a+16|0,3042,b);return}function zZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(32)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];f[e+20>>2]=0;f[e+24>>2]=0;f[e+28>>2]=0;b[a+8>>0]=1;return}function AZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Z2(b,d);return}function BZ(a){a=a|0;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=BTa(f[(f[a>>2]|0)+4>>2]|0)|0;a=f[f[a+4>>2]>>2]|0;E1a(e,f[33042]|0);f[d>>2]=f[e>>2];a=SI(a,d)|0;f[b+8>>2]=a;f[b+4>>2]=1;u=c;return b|0}function CZ(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;rS(c,226,b);Cd(a,b);rS(c,227,b);return}function DZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+128|0;h=j;f[h>>2]=0;i=h+4|0;f[i>>2]=a;f[h+44>>2]=a;g=h+8|0;f[g>>2]=(a|0)<0?-1:a+2147483647|0;f[h+76>>2]=-1;una(h,0);c=ig(h,c,1,d,e)|0;if(b|0)f[b>>2]=a+((f[i>>2]|0)+(f[h+108>>2]|0)-(f[g>>2]|0));u=j;return c|0}function EZ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;if(e>>>0>4294967279)Mda();if(e>>>0<11)b[a+11>>0]=d;else{g=e+16&-16;e=n8(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}$Ta(a,c,d)|0;T0a(a+d|0,0);return}function FZ(a){a=a|0;if(!a)return;else{FZ(f[a>>2]|0);FZ(f[a+4>>2]|0);ubb(a);return}}function GZ(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+32|0;c=d;ZQa(c);x=0;a=ja(62,a|0,b|0,c|0)|0;b=x;x=0;if(b&1){d=Ia()|0;sta(c);Ua(d|0)}else{sta(c);u=d;return a|0}return 0}function HZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,2343,b);pf(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,2344,b);return}function IZ(a){a=a|0;sQ(a);return}function JZ(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;b=g0a(a,0)|0;if(FBa(f[b>>2]|0,133176)|0){b=g0a(a,2)|0;b=Bbb(f[b>>2]|0)|0;Nqa(b,woa(c)|0)|0;u=d;return}else Ca(65927,75338,1491,65944)}function KZ(a){a=+a;var b=0,c=0,d=0,e=0,g=0;d=u;u=u+16|0;b=d;c=d+8|0;p[b>>3]=a;e=qRa(a)|0;g=I&2147483647;if(g>>>0>2146435072|(g|0)==2146435072&e>>>0>0){e=x$a(b)|0;g=c;f[g>>2]=e;f[g+4>>2]=I|524288;a=+e8a(c);u=d;return +a}else Ca(75414,75448,125,101717);return +(0.0)}function LZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=b;f[c>>2]=d;b=f[f[a>>2]>>2]|0;if(b){f[a>>2]=b;d=f[c>>2]|0}sw(f[a+4>>2]|0,d);a=a+8|0;f[a>>2]=(f[a>>2]|0)+1;return}function MZ(a,b){a=a|0;b=b|0;var c=0;c=f[a+44>>2]|0;a=b+24|0;if(!(rB(c,a)|0))Ca(90353,90385,50,110002);else{c=mm(c,a)|0;f[c>>2]=(f[c>>2]|0)+1;return}}function NZ(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;sIa(a+8|0);ubb(a);a=b}return}function OZ(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e>>>0<=20)if(e>>>0>=3){if(((f[a>>2]|0)==1?(b[a+9>>0]|0)==0:0)?(f[d>>2]|0)>>>0<16:0){a=1;break}if((f[c+4>>2]|0)>2?(f[c+8>>2]|0)==0:0)a=(b[a+8>>0]&1)!=0;else a=0}else a=1;else a=0;while(0);return a|0}function PZ(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a=c;while(1){if((e|0)==(f|0)){h=7;break}if((a|0)==(d|0)){a=-1;break}c=b[a>>0]|0;g=b[e>>0]|0;if(c<<24>>24>24){a=-1;break}if(g<<24>>24>24){a=1;break}e=e+1|0;a=a+1|0}if((h|0)==7)a=(a|0)!=(d|0)&1;return a|0}function QZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;f[d>>2]=0;if((a|0)!=(c|0)){e=b[a>>0]|0;if(e<<24>>24==114){f[d>>2]=4;e=a+1|0;a=e;c=4;e=b[e>>0]|0}else c=0;if(e<<24>>24==86){c=c|2;f[d>>2]=c;e=a+1|0;a=e;e=b[e>>0]|0}if(e<<24>>24==75){f[d>>2]=c|1;a=a+1|0}}return a|0}function RZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+16|0;d=f[c>>2]|0;do if(d)if((b|0)==(d|0)){d=Bbb(a)|0;f[a+16>>2]=d;c=f[c>>2]|0;pc[f[(f[c>>2]|0)+12>>2]&4095](c,d);break}else{d=bc[f[(f[d>>2]|0)+8>>2]&511](d)|0;f[a+16>>2]=d;break}else f[a+16>>2]=0;while(0);return}function SZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,2372,b);tf(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)rS(a,2373,b);return}function TZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;f[a>>2]=b;e=a+4|0;f[e>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;b=Bbb(d)|0;x=0;ua(94,e|0,b|0);a=x;x=0;if(a&1){c=Ia()|0;uSa(e);Ua(c|0)}if(b|0)fia(f[e>>2]|0,c|0,b|0)|0;return}function UZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;lXa(a);f[a+24>>2]=b;x=0;ua(2924,a|0,e|0);c=x;x=0;if(c&1){e=Ia()|0;I_a(a);Ua(e|0)}else{u=d;return}}function VZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a+56>>2]|0;e=(f[a+60>>2]|0)-c>>2;b=f[b>>2]|0;d=e;while(1){a=d+-1|0;if((d|0)<=0){a=4;break}if($1a(f[c+(a<<2)>>2]|0,b)|0){a=5;break}else d=a}if((a|0)==4)hb();else if((a|0)==5)return 1-d+-1+e|0;return 0}function WZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(d>>>0>4294967279)Mda();if(d>>>0<11)b[a+11>>0]=d;else{g=d+16&-16;e=n8(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}$Ta(a,c,d)|0;T0a(a+d|0,0);return}function XZ(a,c){a=a|0;c=c|0;var d=0,e=0;e=TTa(f[c>>2]|0,135192)|0;d=a+36|0;f[d>>2]=e;e=bc[f[(f[e>>2]|0)+24>>2]&511](e)|0;c=a+44|0;f[c>>2]=e;d=f[d>>2]|0;d=(bc[f[(f[d>>2]|0)+28>>2]&511](d)|0)&1;b[a+53>>0]=d;if((f[c>>2]|0)>8)vka(119610);else return}function YZ(a,c){a=a|0;c=c|0;var d=0,e=0;e=TTa(f[c>>2]|0,135184)|0;d=a+36|0;f[d>>2]=e;e=bc[f[(f[e>>2]|0)+24>>2]&511](e)|0;c=a+44|0;f[c>>2]=e;d=f[d>>2]|0;d=(bc[f[(f[d>>2]|0)+28>>2]&511](d)|0)&1;b[a+53>>0]=d;if((f[c>>2]|0)>8)vka(119610);else return}function ZZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=Bbb($ta(4)|0)|0;f4a(d,Nqa(Nqa(Nqa(Nqa(g,woa(133160)|0)|0,a)|0,b)|0,c)|0);u=e;return f[d>>2]|0}function _Z(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(32)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];Kab(e+20|0);b[a+8>>0]=1;return}function $Z(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(116)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[d>>2];YOa(e+20|0,d+4|0);b[a+8>>0]=1;return}function a_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(c>>>0>4294967279)Mda();if(c>>>0<11)b[a+11>>0]=c;else{g=c+16&-16;e=n8(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=c;a=e}bMa(a,c,d)|0;T0a(a+c|0,0);return}function b_(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;sMa(a+8|0);ubb(a);a=b}return}function c_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=ZTa(f[a+4>>2]|0)|0;f[d+8>>2]=c;c=UQa(a,Or(b,1)|0)|0;f[d+12>>2]=c;c=UQa(a,Or(b,2)|0)|0;f[d+16>>2]=c;OY(d);return d|0}function d_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=X(f[a+116>>2]|0,d>>>0>>0?d:c)|0;e=(f[a+140>>2]|0)+(e+(c>>>0>>0?d:c))|0;g=b[e>>0]|0;b[e>>0]=g<<24>>24==-1?-1:(g&255)+1&255;a=f[a+152>>2]|0;c=a+(c<<2)|0;f[c>>2]=(f[c>>2]|0)+1;d=a+(d<<2)|0;f[d>>2]=(f[d>>2]|0)+1;return}function e_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;CC(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function f_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+8|0;a=f[e>>2]|0;do{c=a;d=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));eKa(a);a=(f[e>>2]|0)+40|0;f[e>>2]=a;b=b+-1|0}while((b|0)!=0);return}function g_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)>>>0<=(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,(e>>>0>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0<=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function h_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)>>>0>=(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,(e>>>0>d>>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0>=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function i_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;if(!(Iab(f[b+4>>2]|0)|0)?(e=p$a(f[b+12>>2]|0)|0,f[c>>2]=e,e|0):0){b=f[b+8>>2]|0;e=lm(a+68|0,c)|0;f[e>>2]=b}u=d;return}function j_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)>>>0<(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,(e>>>0>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0<(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function k_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)>>>0>(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,(e>>>0>d>>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0>(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function l_(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=KMa(b)|0;f[a+8>>2]=10;m$a(d,b);b=(LRa(f[a+16>>2]|0)|0)+8|0;f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];f[b+12>>2]=f[d+12>>2];u=c;return a|0}function m_(a,b){a=a|0;b=b|0;b=eX(a,b)|0;if((b|0)!=(a+4|0))zQ(a,b);return}function n_(a,b){a=a|0;b=b|0;var c=0;do if(o2a(f[b+4>>2]|0)|0){c=b+8|0;if(Iab(f[c>>2]|0)|0?(c=(CW(a+36|0,c)|0)+4|0,(f[c>>2]|0)>0):0)break;TA(a,b)}while(0);return}function o_(a){a=a|0;if(!a)return;else{o_(f[a>>2]|0);o_(f[a+4>>2]|0);ubb(a);return}}function p_(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=y3(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?!(KVa(f[b>>2]|0,f[c+16>>2]|0)|0):0)a=c;return a|0}function q_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;Zsa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function r_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;_sa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function s_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;$sa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function t_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;ata(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function u_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;bta(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function v_(a,b){a=a|0;b=b|0;fJa(a);f[a>>2]=41792;f[a+44>>2]=b;b=a+48|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+64>>2]=1065353216;f[a+68>>2]=5;b=a+72|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+88>>2]=1065353216;return}function w_(a){a=a|0;var b=0;do if(rab(f[a>>2]|0)|0){a=f[a+4>>2]|0;b=Y_a(a)|0;if(b|0){a=R7(f[b+8>>2]|0)|0;break}a=e$a(a)|0;if(a)a=Z6a(f[a+8>>2]|0)|0;else a=0}else a=0;while(0);return a|0}function x_(a,b){a=a|0;b=b|0;RAa(a);f[a>>2]=40328;f[a+44>>2]=b;x=0;ia(67,a+4|0,61881)|0;b=x;x=0;if(b&1){b=Ia()|0;LTa(a);Ua(b|0)}else return}function y_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;if(!b)d=0;else d=uOa(f[d>>2]|0,b)|0;f[a>>2]=d;c=d+(c*24|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*24|0);return}function z_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;g=d;f[g>>2]=f[b+8>>2];c=f[b+12>>2]|0;f[e>>2]=f[g>>2];aA(a,e,c,b);c=f[b+16>>2]|0;if(c|0)Swa(a,(f[c+4>>2]|4|0)==5,b);u=d;return}function A_(a,c){a=a|0;c=c|0;var d=0,e=0;if((((b[c>>0]|0)==72?(b[c+1>>0]|0)==69:0)?(b[c+2>>0]|0)==65:0)?(b[c+3>>0]|0)==80:0){b[a>>0]=1;d=b[c+4>>0]|0;e=d<<24>>24==85;b[a+1>>0]=e&1;d=d<<24>>24==70;b[a+2>>0]=d&1;c=qDa(c+(e|d?5:4)|0)|0;f[a+4>>2]=c;f[a+8>>2]=d?((c|0)==64?1:2):0}else b[a>>0]=0;return}function B_(a){a=a|0;var b=0;zNa(a);f[a>>2]=45828;yUa(a+60|0);b=a+72|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;yUa(a+96|0);yUa(a+108|0);return}function C_(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b;d=(f[a>>2]|0)+4|0;e=(f[d>>2]|0)+-4|0;f[c>>2]=f[e>>2];f[d>>2]=e;a=(WW(f[a+4>>2]|0,c)|0)+4|0;f[a>>2]=(f[a>>2]|0)+-4;u=b;return}function D_(a){a=a|0;jH(f[a+4>>2]|0);return}function E_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;c=ZVa(c+144|0)|0;C8(e,a,b);a=c+8|0;f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[c+4>>2]=b;u=d;return c|0}function F_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+32|0;d=c+16|0;g=c;e=f[a+4>>2]|0;m$a(g,b);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];b=Lya(a,e,a0(a,d)|0)|0;u=c;return b|0}function G_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a:do if(!(b[a+44>>0]|0)){e=0;while(1){if((e|0)>=(d|0))break a;h=f[(f[a>>2]|0)+52>>2]|0;g=Bbb(f[c>>2]|0)|0;if((dc[h&255](a,g)|0)==-1)break a;e=e+1|0;c=c+4|0}}else e=GHa(c,4,d,f[a+32>>2]|0)|0;while(0);return e|0}function H_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;zM(a,b);g=a+20|0;c=b+20|0;f[g>>2]=0;e=a+24|0;f[e>>2]=0;d=a+28|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+24|0;f[e>>2]=f[a>>2];b=b+28|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function I_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;KOa(a,b);b=a+16|0;$Wa(b,c);Rfa(b,d);return}function J_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+12|0;e=f[d>>2]|0;if((e|0)==(f[a+16>>2]|0))IL(a+8|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}qc[f[(f[b>>2]|0)+8>>2]&255](b,a,f[a>>2]|0);u=g;return}function K_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+4|0;a=f[e>>2]|0;do{c=a;d=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));eKa(a);a=(f[e>>2]|0)+40|0;f[e>>2]=a;b=b+-1|0}while((b|0)!=0);return}function L_(a){a=a|0;var b=0;b=a+4|0;ZK(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function M_(a){a=a|0;var b=0;b=a+4|0;_K(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function N_(a){a=a|0;var b=0;b=a+4|0;$K(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function O_(a){a=a|0;var b=0;b=a+4|0;aL(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function P_(a){a=a|0;var b=0;b=a+4|0;bL(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function Q_(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;a:do if(a|0)switch(c|0){case -2:{b[a>>0]=e;break a}case -1:{d[a>>1]=e;break a}case 0:{f[a>>2]=e;break a}case 1:{f[a>>2]=e;break a}case 3:{c=a;f[c>>2]=e;f[c+4>>2]=g;break a}default:break a}while(0);return}function R_(a){a=a|0;var c=0,d=0,e=0;c=a+92|0;if(!(f[c>>2]&8)){f[a+24>>2]=0;f[a+20>>2]=0;f[a+28>>2]=0;d=(b[a+98>>0]|0)==0;e=f[(d?a+56|0:a+32|0)>>2]|0;d=e+(f[(d?a+60|0:a+52|0)>>2]|0)|0;f[a+8>>2]=e;f[a+12>>2]=d;f[a+16>>2]=d;f[c>>2]=8;a=1}else a=0;return a|0}function S_(a,b,c){a=a|0;b=b|0;c=c|0;return V8(f[(f[a+4>>2]|0)+44>>2]|0,f[f[a+8>>2]>>2]|0,b,f[c>>2]|0)|0}function T_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;f[c>>2]=b;d=f[b+16>>2]|0;b=f[b+12>>2]|0;while(1){if((b|0)==(d|0))break;g3(TU(a,f[b>>2]|0)|0,c);b=b+4|0}u=e;return}function U_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+64|0;b=d;AM(b,f[a+16>>2]|0);x=0;ua(1303,b|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;dWa(b);Ua(c|0)}else{dWa(b);u=d;return}}function V_(){var a=0;pBa();x=0;sa(7);a=x;x=0;if(a&1){a=Ia()|0;Lia(132700);Ua(a|0)}else return}function W_(a,b){a=a|0;b=b|0;var c=0;lXa(a);c=a+24|0;yUa(c);f[a+36>>2]=0;x=0;ua(2923,a|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;MTa(c);I_a(a);Ua(b|0)}else return}function X_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;lXa(a);f[a+24>>2]=b;x=0;ua(350,a|0,e|0);c=x;x=0;if(c&1){e=Ia()|0;I_a(a);Ua(e|0)}else{u=d;return}}function Y_(a){a=a|0;wH(f[a+4>>2]|0);return}function Z_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)<=(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,((e|0)<(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0<=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function __(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)>=(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,((e|0)>(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0>=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function $_(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d&255)<<16|(c&255)<<24|(e&255)<<8;e=a+2|0;d=b[e>>0]|0;c=(h[a+1>>0]|0)<<16|(h[a>>0]|0)<<24|(d&255)<<8;d=d<<24>>24==0;if(!((c|0)==(f|0)|d))do{e=e+1|0;d=b[e>>0]|0;c=(c|d&255)<<8;d=d<<24>>24==0}while(!((c|0)==(f|0)|d));return (d?0:e+-2|0)|0}function a$(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+64|0;c=f[b>>2]|0;if(c){x=0;d=ga(f[(f[a>>2]|0)+24>>2]|0,a|0)|0;e=x;x=0;if(e&1){e=Ia()|0;oY(c)|0;Ua(e|0)}if(!(oY(c)|0)){f[b>>2]=0;a=(d|0)==0?a:0}else a=0}else a=0;return a|0}function b$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=c;if(!a){e=Ea(4)|0;f[e>>2]=0;s6a(e);Pa(e|0,37840,324)}else{d=ec[f[(f[a>>2]|0)+24>>2]&127](a,b,d)|0;u=e;return d|0}return 0}function c$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=(c&255)<<8|d&255;d=a+1|0;c=b[d>>0]|0;a:do if(!(c<<24>>24))d=0;else{c=(h[a>>0]|0)<<8|c&255;while(1){a=c&65535;if((a|0)==(e|0))break;d=d+1|0;c=b[d>>0]|0;if(!(c<<24>>24)){d=0;break a}else c=a<<8|c&255}d=d+-1|0}while(0);return d|0}function d$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;e=g;f[d>>2]=b;f[e>>2]=c;if(!a){g=Ea(4)|0;f[g>>2]=0;s6a(g);Pa(g|0,37840,324)}else{e=ec[f[(f[a>>2]|0)+24>>2]&127](a,d,e)|0;u=g;return e|0}return 0}function e$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e+4|0;f[d>>2]=b;b=e;f[b>>2]=c;if(!a){e=Ea(4)|0;f[e>>2]=0;s6a(e);Pa(e|0,37840,324)}else{d=ec[f[(f[a>>2]|0)+24>>2]&127](a,d,b)|0;u=e;return d|0}return 0}function f$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)<(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,((e|0)<(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0<(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function g$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)>(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;m$a(a,((e|0)>(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0>(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function h$(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;SCa(a+8|0);ubb(a);a=b}return}function i$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a=b;while(1){if((d|0)==(e|0)){h=7;break}if((a|0)==(c|0)){a=-1;break}b=f[a>>2]|0;g=f[d>>2]|0;if((b|0)<(g|0)){a=-1;break}if((g|0)<(b|0)){a=1;break}d=d+4|0;a=a+4|0}if((h|0)==7)a=(a|0)!=(c|0)&1;return a|0}function j$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BQa(a,b);b=a+16|0;$Wa(b,c);V2(b,d);return}function k$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;Zsa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function l$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;_sa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function m$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;$sa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function n$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;ata(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function o$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;bta(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function p$(a,b){a=a|0;b=b|0;var c=0,d=0;c=5;while(1){if((a|0)==(b|0))break;d=f[a>>2]|0;a:do if(!c)c=0;else switch(d|0){case 0:{c=0;break a}case 5:break a;default:{c=(c|0)==5?d:(c|0)==(d|0)?c:0;break a}}while(0);a=a+4|0}return c|0}function q$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Nda(b,d);return}function r$(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=b;x=0;c=ga(212,16)|0;d=x;x=0;if(!(d&1)){f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=42256;f[c+12>>2]=b;f[a+4>>2]=c;return}a=Ia()|0;if(b|0)ubb(b);Ua(a|0)}function s$(a,b){a=a|0;b=b|0;var c=0,d=0;c=GSa(f[a+4>>2]|0)|0;f[c+4>>2]=1;d=UQa(a,Or(b,1)|0)|0;f[c+12>>2]=d;b=UQa(a,Or(b,2)|0)|0;f[c+16>>2]=b;gDa(c);return c|0}function t$(a,b){a=a|0;b=b|0;var c=0,d=0;c=ATa(f[a+4>>2]|0)|0;d=bl(a,Or(b,1)|0)|0;f[c+8>>2]=d;b=UQa(a,Or(b,2)|0)|0;f[c+12>>2]=b;bLa(c,1);via(c);return c|0}function u$(a,b){a=a|0;b=b|0;var c=0,d=0;c=ATa(f[a+4>>2]|0)|0;d=bl(a,Or(b,1)|0)|0;f[c+8>>2]=d;b=UQa(a,Or(b,2)|0)|0;f[c+12>>2]=b;bLa(c,0);via(c);return c|0}function v$(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;if(f[b+4>>2]|0?(d=b+36|0,(f[(f[d>>2]|0)+4>>2]|0)==0):0){U0a(c,Bbb(f[a+36>>2]|0)|0);b=f[d>>2]|0;c=F$(c,b,d_a(f[c>>2]|0)|0)|0;f[d>>2]=c}u=e;return}function w$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(40)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];yXa(e+24|0);b[a+8>>0]=1;return}function x$(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;dNa(a+8|0);ubb(a);a=b}return}function y$(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;f[c>>2]=a;a=b;d=Bbb($ta(2)|0)|0;d=Nqa(d,woa(133100)|0)|0;f4a(a,Nqa(d,woa(c)|0)|0);u=b;return f[a>>2]|0}function z$(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;d=0;while(1){if((d|0)==(e|0))break;g=d+1|0;c=g;while(1){if((c|0)==(e|0))break;h=f[b>>2]|0;Pia(a,f[h+(d<<2)>>2]|0,f[h+(c<<2)>>2]|0);c=c+1|0}d=g}return}function A$(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a+68>>2]|0;f4a(d,b);Yr(e,f[d>>2]|0)|0;if(f[a+76>>2]|0)f[a+144>>2]=(f[a+136>>2]|0)-(f[a+132>>2]|0)>>3;e=Loa(a)|0;u=c;return e|0}function B$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BQa(a,b);b=a+16|0;$Wa(b,c);S6(b,d);return}function C$(a){a=a|0;if(!a)return;else{C$(f[a>>2]|0);C$(f[a+4>>2]|0);ubb(a);return}}function D$(a){a=a|0;if(!a)return;else{D$(f[a>>2]|0);D$(f[a+4>>2]|0);ubb(a);return}}function E$(a){a=a|0;_H(f[a+4>>2]|0);return}function F$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b){d=o$a(b)|0;if(!d)d=qwa(f[a>>2]|0,b)|0}else d=qwa(f[a>>2]|0,0)|0;if(c|0){aaa(d+12|0,c);rt(d)}return d|0}function G$(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;h=g;e=bV(c)|0;d=a+68|0;a=f[d>>2]|0;f4a(h,e);Yr(a,f[h>>2]|0)|0;a=0;while(1){if((a|0)>=(e|0))break;Ev(f[d>>2]|0,b[c+a>>0]|0)|0;a=a+1|0}u=g;return}function H$(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=f[a+68>>2]|0;f4a(c,1);Yr(d,f[c>>2]|0)|0;if(f[a+76>>2]|0)f[a+144>>2]=(f[a+136>>2]|0)-(f[a+132>>2]|0)>>3;d=Loa(a)|0;u=b;return d|0}function I$(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(Xua(b,f[a+24>>2]|0)|0){a=f[a+32>>2]|0;b=bUa(f[b+12>>2]|0)|0;f[c>>2]=b;c=e_(a,c)|0;f[c>>2]=(f[c>>2]|0)+1}u=d;return}function J$(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=(Uz(a,d)|0)==0;u=c;return b|0}function K$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;if(yQa(a,b)|0)Ca(89624,88981,138,89655);else{b=n8(20)|0;FQa(b,c);d=EE(a,d)|0;f[d>>2]=b;u=e;return}}function L$(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=Gl(a,d)|0;u=c;return f[b>>2]|0}function M$(a){a=a|0;eI(f[a+4>>2]|0);return}function N$(a){a=a|0;var b=0,c=0;c=f[a+4>>2]|0;b=0;while(1){if((b|0)==(c|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[a+12>>2]=0;a=a+8|0;c=f[a>>2]|0;f[a>>2]=0;return c|0}function O$(a,b){a=a|0;b=b|0;var c=0,d=0;b=b+8|0;c=e_(a+44|0,b)|0;f[c>>2]=(f[c>>2]|0)+1;c=a+56|0;if(!(mfa(c,f[b>>2]|0)|0)){d=f[a+64>>2]|0;a=e_(c,b)|0;f[a>>2]=d}return}function P$(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;HTa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0);f[a+8>>2]=0;f[d>>2]=0;f[a>>2]=0}return}function Q$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);mea(b,d);return}function R$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);nea(b,d);return}function S$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);oea(b,d);return}function T$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);pea(b,d);return}function U$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);qea(b,d);return}function V$(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);o6(b,c);return}function W$(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b+4|0;e=b;d=f[a>>2]|0;f[e>>2]=f[f[f[a+4>>2]>>2]>>2];a=NKa(f[d>>2]|0,f[f[a+8>>2]>>2]|0,1)|0;f[c>>2]=f[e>>2];a=vsa(d,c,a)|0;u=b;return a|0}function X$(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+4|0;c=f[b>>2]|0;d=a+16|0;e=f[d>>2]|0;a=a+20|0;f[a>>2]=(f[a>>2]|0)+-1;a=e+1|0;f[d>>2]=a;if(a>>>0>2047){ubb(f[c>>2]|0);f[b>>2]=(f[b>>2]|0)+4;f[d>>2]=(f[d>>2]|0)+-1024}return}function Y$(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)>>>($Ga(f[c+8>>2]|0,1)|0));break}case 2:{b=b+8|0;SSa(a,EMa(f[b>>2]|0,f[b+4>>2]|0,$Ga(f[c+8>>2]|0,2)|0)|0,I);break}default:hb()}return}function Z$(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;b=eX(a+44|0,b)|0;if((b|0)==(a+48|0)){tab(c);b=f[c>>2]|0}else{b=f[b+20>>2]|0;f[c>>2]=b}u=d;return b|0}function _$(a,b,c){a=a|0;b=b|0;c=c|0;$Wa(a,c);tWa(a,b);_z(a+-16|0,b);tWa(a,0);$Wa(a,0);return}function $$(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+8|0;a:do if(f[b>>2]|0){c=f[a+4>>2]|0;d=(f[a>>2]|0)+4|0;e=f[c>>2]|0;f[e+4>>2]=f[d>>2];f[f[d>>2]>>2]=e;f[b>>2]=0;b=c;while(1){if((b|0)==(a|0))break a;e=f[b+4>>2]|0;ubb(b);b=e}}while(0);return}function a0(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;if(o2a(c)|0){a=ZVa(f[a>>2]|0)|0;d=a+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];f[a+4>>2]=c;return a|0}else Ca(54084,54111,312,54132);return 0}function b0(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;d=a+8|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;g=e+-4|0;f[d>>2]=g;e=g}d=f[a>>2]|0;do if(d|0){c=f[a+16>>2]|0;if((d|0)==(c|0)){b[c+112>>0]=0;break}else{ubb(d);break}}while(0);return}function c0(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=1065353216;b=(f[c>>2]|0)+20|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function d0(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0)nW(a,f[c>>2]|0,f[c+4>>2]|0);else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}return}function e0(a,b){a=a|0;b=b|0;tWa(a,b);sga(a,b);tWa(a,0);return}function f0(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];if((a|0)!=(b|0))Ju(a+16|0,f[b+16>>2]|0,f[b+20>>2]|0);return a|0}function g0(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a+64>>2]|0;d=f[c>>2]|0;c=(f[c+4>>2]|0)-d>>2;a=f[b>>2]|0;b=0;while(1){if(b>>>0>=c>>>0){a=5;break}if($1a(f[f[d+(b<<2)>>2]>>2]|0,a)|0){a=6;break}b=b+1|0}if((a|0)==5)hb();else if((a|0)==6)return b|0;return 0}function h0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=Bbb(f[b+4>>2]|0)|0;if((f[a+8>>2]|0)>>>0>>0)NMa(a,d);c=0;while(1){if((c|0)==(d|0))break;e=JDa(b,c)|0;f[(f[a>>2]|0)+(c<<2)>>2]=f[e>>2];c=c+1|0}f[a+4>>2]=d;return}function i0(a,b){a=a|0;b=b|0;var c=0,d=0;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;if((f[a+8>>2]|0)>>>0>>0)NMa(a,d);c=0;while(1){if((c|0)==(d|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=f[(f[b>>2]|0)+(c<<2)>>2];c=c+1|0}f[a+4>>2]=d;return}function j0(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=f[b>>2]|0;f[d>>2]=0;f[d+4>>2]=f[b>>2];b=(LP(a+40|0,d)|0)==0;u=c;return b|0}function k0(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=Bbb($ta(3)|0)|0;a=Nqa(Nqa(d,woa(133104)|0)|0,a)|0;f4a(b,Nqa(a,$ta(0)|0)|0);u=c;return f[b>>2]|0}function l0(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;oWa(a+8|0);ubb(a);a=b}return}function m0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;h=g;e=a+68|0;a=f[e>>2]|0;f4a(h,d);Yr(a,f[h>>2]|0)|0;a=0;while(1){if((a|0)==(d|0))break;Ev(f[e>>2]|0,b[c+a>>0]|0)|0;a=a+1|0}u=g;return}function n0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Kga(b,d);return}function o0(a,c){a=a|0;c=c|0;var d=0,e=0;do if((a|0)!=-1){e=c+4|0;d=f[e>>2]|0;if(!d){JX(c)|0;d=f[e>>2]|0;if(!d){a=-1;break}}if(d>>>0>((f[c+44>>2]|0)+-8|0)>>>0){d=d+-1|0;f[e>>2]=d;b[d>>0]=a;f[c>>2]=f[c>>2]&-17}else a=-1}else a=-1;while(0);return a|0}function p0(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=f[b>>2]|0;f[d>>2]=1;f[d+4>>2]=f[b>>2];b=(LP(a+40|0,d)|0)==0;u=c;return b|0}function q0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Po(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function r0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,f[b+8>>2]>>($Ga(f[c+8>>2]|0,1)|0));break}case 2:{b=b+8|0;SSa(a,wJa(f[b>>2]|0,f[b+4>>2]|0,$Ga(f[c+8>>2]|0,2)|0)|0,I);break}default:hb()}return}function s0(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;b=d;c=Bbb($ta(2)|0)|0;c=Nqa(c,woa(133152)|0)|0;if(UTa(a)|0)a=Dza()|0;f4a(b,Nqa(c,a)|0);u=d;return f[b>>2]|0}function t0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=u;u=u+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){c=c-d|0;gH(f|0,b<<24>>24|0,(c>>>0<256?c:256)|0)|0;if(c>>>0>255){d=c;do{LWa(a,f,256);d=d+-256|0}while(d>>>0>255);c=c&255}LWa(a,f,c)}u=g;return}function u0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Mn(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function v0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Bt(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function w0(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=Bbb($ta(3)|0)|0;a=Nqa(Nqa(d,woa(133120)|0)|0,a)|0;f4a(b,Nqa(a,$ta(0)|0)|0);u=c;return f[b>>2]|0}function x0(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+32|0;d=c;b=c+4|0;f[d>>2]=a;nXa(b);x=0;ua(2218,b|0,d|0);a=x;x=0;if(a&1){d=Ia()|0;I_a(b);Ua(d|0)}else{d=f[b+24>>2]|0;I_a(b);u=c;return d|0}return 0}function y0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);t7(b,d);return}function z0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;iI(d,b,c,0);if(D0a(d)|0)yXa(a);else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2]}u=e;return}function A0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Ro(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function B0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,f[b+8>>2]<<($Ga(f[c+8>>2]|0,1)|0));break}case 2:{b=b+8|0;SSa(a,hMa(f[b>>2]|0,f[b+4>>2]|0,$Ga(f[c+8>>2]|0,2)|0)|0,I);break}default:hb()}return}function C0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BQa(a,b);b=a+16|0;$Wa(b,c);Jia(b,d);return}function D0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;e=b[a>>0]|0;a:do if(!(e<<24>>24))e=0;else while(1){d=d+-1|0;f=b[c>>0]|0;if(!(e<<24>>24==f<<24>>24&((d|0)!=0&f<<24>>24!=0)))break a;a=a+1|0;c=c+1|0;e=b[a>>0]|0;if(!(e<<24>>24)){e=0;break}}while(0);return (e&255)-(h[c>>0]|0)|0}function E0(a){a=a|0;if(((((((b[a+26>>0]|0)==0?(b[a+27>>0]|0)==0:0)?!(c$a(f[a+36>>2]|0,f[a+48>>2]|0)|0):0)?(b[a+76>>0]|0)==0:0)?(b[a+77>>0]|0)==0:0)?!(c$a(f[a+60>>2]|0,f[a+72>>2]|0)|0):0)?(b[a+78>>0]|0)==0:0)a=(b[a+79>>0]|0)!=0;else a=1;return a|0}function F0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=c+4|0;while(1){if(XPa(d)|0)break;HX(a,f[c>>2]|0,b[e>>0]|0)}return}function G0(a){a=a|0;FP(a);return}function H0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,AZa(f[b+8>>2]|0,f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,Ima(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function I0(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;if(!(vab(f[a>>2]|0)|0))Ca(53407,75338,426,91385);a=f[a+8>>2]|0;if(!(Bbb(f[a+4>>2]|0)|0)){f4a(b,0);a=f[b>>2]|0}else{a=MCa(a)|0;a=f[a>>2]|0;f[b>>2]=a}u=c;return a|0}function J0(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);n6(b,c);return}function K0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=sn(Oc(f[a+20>>2]|0,b,c)|0,a,b,c)|0;a=f[a+8>>2]|0;if(a)d=Dpa(b,d,ec[f[(f[a>>2]|0)+8>>2]&127](a,b,c)|0)|0;return d|0}function L0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(24)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];tab(e+20|0);b[a+8>>0]=1;return}function M0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,QZa(f[b+8>>2]|0,f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,Oma(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function N0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);maa(b,d);return}function O0(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){B_a(b);ubb(b)}}b=f[a>>2]|0;if(b|0)ubb(b);return}function P0(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){M_a(b);ubb(b)}}b=f[a>>2]|0;if(b|0)ubb(b);return}function Q0(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(z2(b,f[a+24>>2]|0)|0){a=f[a+28>>2]|0;b=WFa(f[b+8>>2]|0)|0;f[c>>2]=b;c=e_(a,c)|0;f[c>>2]=(f[c>>2]|0)+1}u=d;return}function R0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;CQa(a,b);b=a+16|0;$Wa(b,c);sia(b,d);return}function S0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[h>>2]=f[b+24>>2];f[g>>2]=f[h>>2];d=L8(a,g,c,d)|0;u=e;return d|0}function T0(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;a=GW(a+44|0,b+8|0)|0;f[d>>2]=b;nH(c+8|0,a,b,d);u=c;return}function U0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);yaa(b,d);return}function V0(a){a=a|0;var b=0;if(!a){if(!(f[11644]|0))a=0;else a=V0(f[11644]|0)|0;Cbb();b=f[33451]|0;if(b)do{if((f[b+20>>2]|0)>>>0>(f[b+28>>2]|0)>>>0)a=BW(b)|0|a;b=f[b+56>>2]|0}while((b|0)!=0);xbb()}else a=BW(a)|0;return a|0}function W0(a){a=a|0;var b=0;if(!(f[f[a>>2]>>2]|0)){b=$Ra(f[(f[a+4>>2]|0)+4>>2]|0)|0;f[f[a>>2]>>2]=b;b=a+8|0;aaa((f[f[a>>2]>>2]|0)+12|0,f[f[b>>2]>>2]|0);f[f[b>>2]>>2]=f[f[a>>2]>>2]}return}function X0(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){R0a(f[c>>2]|0);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function Y0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=b[c+11>>0]|0;g=e<<24>>24<0;e=g?f[c+4>>2]|0:e&255;nW(a,g?f[c>>2]|0:c,e>>>0>>0?e:d);return}function Z0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;e=g;f[d>>2]=b;f[e>>2]=c;if(!a){g=Ea(4)|0;f[g>>2]=0;s6a(g);Pa(g|0,37840,324)}else{qc[f[(f[a>>2]|0)+24>>2]&255](a,d,e);u=g;return}}function _0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BQa(a,b);b=a+16|0;$Wa(b,c);lja(b,d);return}function $0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;CQa(a,b);b=a+16|0;$Wa(b,c);Iia(b,d);return}function a1(a){a=a|0;if(!a)return;else{a1(f[a>>2]|0);a1(f[a+4>>2]|0);ubb(a);return}}function b1(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(24)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[d>>2];f[e+20>>2]=f[d+4>>2];b[a+8>>0]=1;return}function c1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){B_a(c);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function d1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){M_a(c);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function e1(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if($1a(a,f[b+8>>2]|0)|0)jJ(b,c,d,e);else{a=f[a+8>>2]|0;tc[f[(f[a>>2]|0)+20>>2]&15](a,b,c,d,e,g)}return}function f1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[a+8>>2]=7;m$a(d,b+-1|0);b=(LRa(f[a+16>>2]|0)|0)+8|0;f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];f[b+12>>2]=f[d+12>>2];u=c;return a|0}function g1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];b=a0(a+32|0,d)|0;u=c;return b|0}function h1(a,b,c){a=a|0;b=b|0;c=c|0;return rca(f[(f[a+4>>2]|0)+44>>2]|0,f[f[a+8>>2]>>2]|0,b,f[c>>2]|0)|0}function i1(a,b,c){a=a|0;b=b|0;c=c|0;w4(a,b);x=0;ua(290,a+16|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;HTa(a);Ua(c|0)}else return}function j1(a){a=a|0;var b=0,c=0,d=0;c=f[33200]|0;b=a;d=c;while(1){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=1065353216;b=b+-1|0;if(!b)break;else d=d+20|0}f[33200]=c+(a*20|0);return}function k1(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=n8(24)|0;f[a>>2]=g;f[a+4>>2]=132636;e=c;d=f[e+4>>2]|0;c=g+16|0;f[c>>2]=f[e>>2];f[c+4>>2]=d;b[a+8>>0]=1;return}function l1(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;x=0;ua(588,a|0,b|0);c=x;x=0;if(c&1){b=Ia()|0;uSa(a);Ua(b|0)}c=f[a>>2]|0;a=0;while(1){if((a|0)==(b|0))break;f[c+(a<<2)>>2]=a;a=a+1|0}return}function m1(a){a=a|0;var b=0;a:do switch(f[a+8>>2]|0){case 3:case 1:case 0:{f[a+4>>2]=1;break}case 2:{b=JDa(a+16|0,0)|0;a=a+4|0;if((f[(f[b>>2]|0)+4>>2]|0)==5){f[a>>2]=5;break a}else{f[a>>2]=1;break a}}default:hb()}while(0);return}function n1(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+48|0;c=d;if((Bbb(f[b+16>>2]|0)|0)>>>0>=3){Ss(c,b,a+44|0,a+104|0,_Ya(f[a+40>>2]|0)|0);qPa(c)}u=d;return}function o1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;BQa(a,b);b=a+16|0;$Wa(b,c);Mka(b,d);return}function p1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);$2(b,d);return}function q1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;a=Vz(a+84|0,d)|0;if(!a)a=0;else a=E_a(f[a+12>>2]|0)|0;u=c;return a|0}function r1(a,b){a=a|0;b=b|0;tWa(a,b);Xla(a+-16+16|0,b);tWa(a,0);return}function s1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);zma(f[a>>2]|0,41)|0;u=c;return}function t1(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+64|0;c=d;gX(c);a=f[a+36>>2]|0;Bbb(a)|0;x=0;va(94,c+16|0,b|0,a|0);b=x;x=0;if(b&1){d=Ia()|0;pDa(c);Ua(d|0)}else{pDa(c);u=d;return}}function u1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=a+4|0;while(1){if((b|0)==(c|0))break;d=f[a>>2]|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[a>>2]=(f[a>>2]|0)+12;b=b+12|0}return}function v1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if(!b)break;d=KVa(f[b+16>>2]|0,a)|0;c=d?c:b;b=f[(d?b+4|0:b)>>2]|0}return c|0}function w1(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){LX(b);ubb(b)}}b=f[a>>2]|0;if(b|0)ubb(b);return}function x1(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;soa(b);b=(f[c>>2]|0)+24|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function y1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);F2(b,d);return}function z1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);A4(b,d);return}function A1(){var a=0;f[32836]=0;f[32837]=0;f[32838]=0;b[131472]=0;x=0;sa(40);a=x;x=0;if(a&1){a=Ia()|0;foa(131344);Ua(a|0)}else{Jta(28);return}}function B1(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;uIa(c+16|0,b);fUa(f[c+52>>2]|0);tWa(a,0);return}function C1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){LX(c);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function D1(a,b,c){a=a|0;b=b|0;c=c|0;KOa(a,b);b=a+16|0;$Wa(b,c);dda(b,c);return}function E1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);sha(b,d);return}function F1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);$ba(b,d);return}function G1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,4)|0;if(!(f[d>>2]&4)){if((c|0)<69)c=c+2e3|0;else c=(c|0)<100?c+1900|0:c;f[a>>2]=c+-1900}return}function H1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,4)|0;if(!(f[d>>2]&4)){if((c|0)<69)c=c+2e3|0;else c=(c|0)<100?c+1900|0:c;f[a>>2]=c+-1900}return}function I1(a,b){a=a|0;b=b|0;zma(Lca(134176,a)|0,32)|0;bk(Bbb(b)|0);zma(134176,10)|0;hb()}function J1(a,b){a=a|0;b=b|0;var c=0,d=0;P$(a);f[a>>2]=f[b>>2];c=b+4|0;f[a+4>>2]=f[c>>2];d=b+8|0;f[a+8>>2]=f[d>>2];f[d>>2]=0;f[c>>2]=0;f[b>>2]=0;return}function K1(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(24)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];f[e+20>>2]=0;b[a+8>>0]=1;return}function L1(a){a=a|0;var b=0;b=a+4|0;GQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function M1(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-20|0;f[c>>2]=d;NQa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function N1(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111004,111024,431,111068);f[c>>2]=d+-4;Ev(f[a+28>>2]|0,11)|0;if((f[b+4>>2]|0)==5?(f[b+16>>2]|0)==0:0)Ca(111079,111024,443,111068);return}function O1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);B1(b,d);return}function P1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);j3(b,d);return}function Q1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a>>2]|0;a=p_(d,b)|0;if((a|0)!=(d+4|0))b=(f[a+24>>2]|0)+-4|0;return $1a(f[b>>2]|0,f[c>>2]|0)|0}function R1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;oza(d,f[b>>2]|0,f[b+4>>2]|0);Ep(d,a);sta(d);u=c;return}function S1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;pza(d,f[b>>2]|0,f[b+4>>2]|0);Ep(d,a);sta(d);u=c;return}function T1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=(Uz(a,d)|0)==0;u=c;return b|0}function U1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){SD(c);ubb(c)}}f[e>>2]=d;ubb(f[a>>2]|0)}return}function V1(a,b){a=a|0;b=b|0;a=a+12|0;if(!(rB(a,b)|0))Ca(87321,87234,394,87349);else{b=qm(a,b)|0;return f[b>>2]|0}return 0}function W1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Aca(b,d);return}function X1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Bca(b,d);return}function Y1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);s7(b,d);return}function Z1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Cca(b,d);return}function _1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Dca(b,d);return}function $1(a,b){a=a|0;b=b|0;a=a+32|0;if(!(rB(a,b)|0))Ca(87619,87234,399,87645);else{b=qm(a,b)|0;return f[b>>2]|0}return 0}function a2(a,b,c){a=a|0;b=b|0;c=c|0;BQa(a,b);b=a+16|0;$Wa(b,c);Pca(b,c);return}function b2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);cia(b,d);return}function c2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);dia(b,d);return}function d2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);eia(b,d);return}function e2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Qca(b,d);return}function f2(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;soa(b);b=(f[c>>2]|0)+24|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function g2(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);K9(b,c);return}function h2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;ira(a);e=b+12|0;b=b+16|0;while(1){b=f[b>>2]|0;c=b;if((e|0)==(c|0))break;f[d>>2]=f[b+8>>2];dL(a,d);b=c+4|0}u=g;return a|0}function i2(a,b){a=a|0;b=b|0;tWa(a,b);qja(a,b);tWa(a,0);return}function j2(a,b){a=a|0;b=b|0;tWa(a,b);rja(a,b);tWa(a,0);return}function k2(a,b){a=a|0;b=b|0;tWa(a,b);sja(a,b);tWa(a,0);return}function l2(a,b){a=a|0;b=b|0;tWa(a,b);tja(a,b);tWa(a,0);return}function m2(a,b){a=a|0;b=b|0;tWa(a,b);uja(a,b);tWa(a,0);return}function n2(a){a=a|0;var b=0;jX(a);b=a+120|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+136>>2]=1065353216;a=a+140|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function o2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);eda(b,d);return}function p2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);ria(b,d);return}function q2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c+4|0;g=c;e=f[a+40>>2]|0;f[g>>2]=f[a+36>>2];f[d>>2]=f[g>>2];b=Qma(e,d,b,0)|0;f4a(f[a>>2]|0,b);u=c;return}function r2(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=n8(24)|0;f[a>>2]=g;f[a+4>>2]=c+4;e=d;c=f[e+4>>2]|0;d=g+16|0;f[d>>2]=f[e>>2];f[d+4>>2]=c;b[a+8>>0]=1;return}function s2(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;zXa(b);b=(f[c>>2]|0)+20|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function t2(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;AWa(a+8|0);ubb(a);a=b}return}function u2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=FPa(f[a>>2]|0)|0;f[a+24>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+28>>2]=c;i0(a+8|0,d);return a|0}function v2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=FPa(f[a>>2]|0)|0;f[a+24>>2]=f[b>>2];f[a+4>>2]=e;f[a+28>>2]=c;i0(a+8|0,d);return a|0}function w2(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=f[a+68>>2]|0;f4a(c,0);Yr(d,f[c>>2]|0)|0;if(f[a+76>>2]|0)f[a+144>>2]=(f[a+136>>2]|0)-(f[a+132>>2]|0)>>3;d=Loa(a)|0;u=b;return d|0}function x2(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;a=a+4|0;while(1){if((b|0)==(c|0))break;g=b;e=f[g+4>>2]|0;d=f[a>>2]|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;f[a>>2]=(f[a>>2]|0)+8;b=b+8|0}return}function y2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=Bbb($ta(3)|0)|0;f4a(c,Nqa(Nqa(Nqa(e,woa(133124)|0)|0,a)|0,b)|0);u=d;return f[c>>2]|0}function z2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((((a|0?(d=S$a(a)|0,d|0):0)?(e=Y_a(f[d+8>>2]|0)|0,e|0):0)?(f[e+8>>2]|0)==15:0)?(c=N_a(f[e+12>>2]|0)|0,c|0):0)return ((f[c+8>>2]|0)==(b|0)?d:0)|0;return 0}function A2(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=(f[c+40>>2]|0)-(f[c+36>>2]|0)>>2;e=a+40|0;g=0;while(1){f[e>>2]=g;if(g>>>0>d>>>0)break;pp(a,c);if(!(md(a,b,c)|0))break;g=(f[e>>2]|0)+1|0}return}function B2(a,b){a=a|0;b=b|0;$Wa(a,b);WA(a,b);$Wa(a,0);return}function C2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);m4(b,d);return}function D2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);qda(b,d);return}function E2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);n4(b,d);return}function F2(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;THa(c+16|0,b);Pda(c,b);tWa(a,0);return}function G2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Lka(b,d);return}function H2(a,b){a=a|0;b=b|0;tWa(a,b);Yja(a,b);tWa(a,0);return}function I2(a,b){a=a|0;b=b|0;tWa(a,b);Zja(a,b);tWa(a,0);return}function J2(a,b){a=a|0;b=b|0;tWa(a,b);_ja(a,b);tWa(a,0);return}function K2(a,b){a=a|0;b=b|0;tWa(a,b);$ja(a,b);tWa(a,0);return}function L2(a,b){a=a|0;b=b|0;tWa(a,b);aka(a,b);tWa(a,0);return}function M2(a,b,c){a=a|0;b=b|0;c=c|0;BQa(a,b);b=a+16|0;$Wa(b,c);uda(b,c);return}function N2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);vda(b,d);return}function O2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);B4(b,d);return}function P2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Yia(b,d);return}function Q2(a,b){a=a|0;b=b|0;$Wa(a,b);SB(a+-16+16|0,b);$Wa(a,0);return}function R2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b+8>>2]|0;d=a+68|0;do if(c){e=f[d>>2]|0;c=f[c+4>>2]|0;if((e|0)==5){f[d>>2]=c;break}if((c|0)!=5)vma(a,c,e,b)}else f[d>>2]=0;while(0);return}function S2(a,b){a=+a;b=+b;a=+kXa(a);return a>+kXa(b)|0}function T2(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=f[a+4>>2]|0;h=i>>8;if(i&1)h=f[(f[d>>2]|0)+h>>2]|0;a=f[a>>2]|0;tc[f[(f[a>>2]|0)+20>>2]&15](a,b,c,d+h|0,(i&2|0)==0?2:e,g);return}function U2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=Bbb($ta(3)|0)|0;f4a(c,Nqa(Nqa(Nqa(e,woa(133140)|0)|0,a)|0,b)|0);u=d;return f[c>>2]|0}function V2(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;PFa(c+16|0,b);JW(c,b);tWa(a,0);return}function W2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e+4|0;i=e;h=f[a+44>>2]|0;f[i>>2]=f[c>>2];c=Bbb(f[a+32>>2]|0)|0;f[g>>2]=f[i>>2];Ou(h,b,g,d,c)|0;u=e;return}function X2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);Oda(b,d);return}function Y2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);kja(b,d);return}function Z2(a,b){a=a|0;b=b|0;tWa(a,b);xoa(a+-16+16|0,b);tWa(a,0);return}function _2(a,b){a=a|0;b=b|0;var c=0;if(b){c=L4(f[a+24>>2]|0,b)|0;if(!c)c=hi(a,b)|0}else c=0;return c|0}function $2(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;_Ga(c+16|0,b);v$(c,b);tWa(a,0);return}function a3(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;zma(f[a>>2]|0,40)|0;GXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);HF(a,b);u=c;return}function b3(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Nba(b,c);return}function c3(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Oba(b,c);return}function d3(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Pba(b,c);return}function e3(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Qba(b,c);return}function f3(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Rba(b,c);return}function g3(a,b){a=a|0;b=b|0;b=Vz(a,b)|0;if(b|0)x4(a,b);return}function h3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=Bbb($ta(3)|0)|0;f4a(c,Nqa(Nqa(Nqa(e,woa(133136)|0)|0,b)|0,a)|0);u=d;return f[c>>2]|0}function i3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+32|0;d=c+16|0;e=c;gUa(e,b);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];b=OC(a,d)|0;u=c;return b|0}function j3(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;vIa(c+16|0,b);Do(c,b);tWa(a,0);return}function k3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+52|0;e=f[d>>2]|0;if((e|0)==(f[a+56>>2]|0))IL(a+48|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function l3(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=f[a>>2]|0;if(!(f[b+16>>2]|0))tPa(c,75653)|0;else tPa(c,75646)|0;s4(f[b+8>>2]|0,f[a>>2]|0)|0;return}function m3(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=c;f[a+4>>2]=c+144;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;c=a+20|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];f[c+16>>2]=f[d+16>>2];b[a+40>>0]=0;return}function n3(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;zXa(b);b=(f[c>>2]|0)+20|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function o3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);qka(b,d);return}function p3(a){a=a|0;var b=0;JKa(a);f[a>>2]=45268;b=a+56|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+72>>2]=1065353216;b=a+76|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+92>>2]=1065353216;return}function q3(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;tPa(f[c>>2]|0,92446)|0;a=b+8|0;if(Bbb(f[a>>2]|0)|0){c=yCa(f[c>>2]|0,75482)|0;zm(c,Bbb(f[a>>2]|0)|0)|0}return}function r3(a,b,c){a=a|0;b=b|0;c=c|0;if(EQ(b)|0)return (VHa(b)|0)==(c|0)|0;b=N_a(b)|0;if(!b)b=0;else b=(f[(f[a+44>>2]|0)+(f[b+8>>2]<<3)+4>>2]|0)==(c|0);return b|0}function s3(a){a=a|0;a=(PS(a)|0)+16|0;a=(ARa(f[a>>2]|0)|0)+16|0;return ORa((LRa(f[a>>2]|0)|0)+8|0)|0}function t3(a){a=a|0;var b=0;b=a+4|0;fQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function u3(a){a=a|0;var b=0;b=a+4|0;jQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function v3(a){a=a|0;var b=0;b=a+4|0;gQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function w3(a){a=a|0;var b=0;b=a+4|0;hQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function x3(a){a=a|0;var b=0;b=a+4|0;iQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function y3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a>>2]|0;a=c;while(1){if(!b)break;c=KVa(f[b+16>>2]|0,d)|0;a=c?a:b;b=f[(c?b+4|0:b)>>2]|0}return a|0}function z3(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-40|0;Exa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function A3(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;QYa(a+8|0);ubb(a);a=b}return}function B3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=$r(a,b+12|0)|0;d=b+16|0;if(!(f[d>>2]|0)){if(c)e=4}else if(c|($r(a,d)|0))e=4;if((e|0)==4?(CTa(a),f[b+4>>2]|0):0)Ca(61480,61463,310,61499);return}function C3(a,b){a=a|0;b=b|0;b=E_a(b)|0;do if(b|0)if(Iab(f[b+4>>2]|0)|0){bLa(b,0);BVa(f[a+16>>2]|0,b)|0;break}else Ca(76935,76797,246,76948);while(0);return}function D3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];b=f[b+4>>2]|0;f[d>>2]=f[e>>2];b=ACa(a+32|0,d,b)|0;u=c;return b|0}function E3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;a=a+4|0;e=(f[a>>2]|0)+-4|0;f[d>>2]=f[e>>2];f[a>>2]=e;b=(WW(b,d)|0)+4|0;f[b>>2]=(f[b>>2]|0)+-4;u=c;return}function F3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=f[e+4>>2]|0;c=a;f[c>>2]=f[e>>2];f[c+4>>2]=d;if((a|0)!=(b|0))Ay(a+8|0,f[b+8>>2]|0,f[b+12>>2]|0);return a|0}function G3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;tab(d);if(!b){c=d;b=f[d>>2]|0}else{b=Z$(b,a)|0;f[d>>2]=b;c=d}if(!(Iab(b)|0)){b=WT(a)|0;f[c>>2]=b}u=e;return b|0}function H3(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=MRa(a)|0;b[a+8>>0]=c;rHa(a+12|0,d,0)|0;f[a+16>>2]=e;f[a+20>>2]=g;f[a+24>>2]=h;f[a+4>>2]=i;Jza(a);return a|0}function I3(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=gTa(a)|0;f[a+8>>2]=c;b[a+12>>0]=d;rHa(a+16|0,e,0)|0;f[a+20>>2]=g;f[a+24>>2]=h;f[a+4>>2]=i;IMa(a);return a|0}function J3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);qla(b,d);return}function K3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,17);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function L3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,14);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function M3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,13);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function N3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,12);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function O3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,11);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function P3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,10);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function Q3(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,((f[b+8>>2]|0)>>>0)%((f[c+8>>2]|0)>>>0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,oya(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function R3(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,((f[b+8>>2]|0)>>>0)/((f[c+8>>2]|0)>>>0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,sYa(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function S3(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Aba(b,c);return}function T3(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124667,21);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function U3(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124888,18);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function V3(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124061,15);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function W3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,9);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function X3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if(!b)break;d=(f[b+16>>2]|0)>>>0>>0;c=d?c:b;b=f[(d?b+4|0:b)>>2]|0}return c|0}function Y3(a,b){a=a|0;b=b|0;zma(yCa(zma(Lca(134176,a)|0,32)|0,b)|0,10)|0;hb()}function Z3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(88)|0;aX(g);f[g>>2]=f[a>>2];f[g+4>>2]=c;f[g+36>>2]=e;_8(g+8|0,b);_8(g+20|0,d);return g|0}function _3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);$9(b,d);return}function $3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,8);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function a4(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,5);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function b4(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,4);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function c4(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,b,3);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function d4(a,c,d){a=a|0;c=c|0;d=d|0;d=(Ez(a+4|0,(b[c+11>>0]|0)<0?f[c>>2]|0:c,d|16)|0)==0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;if(d)IS(a,f[a+16>>2]|4);else IS(a,0);return}function e4(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Sba(b,c);return}function f4(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124468,7);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function g4(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124881,6);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function h4(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nW(a,124692,2);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function i4(a){a=a|0;var b=0,c=0;b=a+4|0;c=YK(f[a>>2]|0,f[b>>2]|0)|0;hla(a,c,f[b>>2]|0);return}function j4(a,b,c){a=a|0;b=b|0;c=c|0;BQa(a,b);b=a+16|0;$Wa(b,c);hga(b,c);return}function k4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qTa(a,b);b=a+16|0;$Wa(b,c);ega(b,d);return}function l4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;wc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0)}function m4(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;iKa(c+16|0,b);Sf(c,b);tWa(a,0);return}function n4(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;lKa(c+16|0,b);Xo(c,b);tWa(a,0);return}function o4(a){a=a|0;var b=0;b=f[a+60>>2]|0;if(b|0)rbb(b);b=f[a+56>>2]|0;if(b|0){LX(b);ubb(b)}KHa(a+128|0);xKa(a+100|0);X0(a+72|0);sta(a+32|0);return}function p4(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0)ubb(b)}b=f[a>>2]|0;if(b|0)ubb(b);return}function q4(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;rS(c,2741,b);Qd(a,b);rS(c,2742,b);return}function r4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if(!b)break;d=(f[b+16>>2]|0)<(a|0);c=d?c:b;b=f[(d?b+4|0:b)>>2]|0}return c|0}function s4(a,b){a=a|0;b=b|0;if(!(UXa(a,75562)|0))wfa(b,a)|0;else zma(wfa(zma(b,34)|0,a)|0,34)|0;return b|0}function t4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=BRa(f[a>>2]|0)|0;i0(a+8|0,b);f[a+24>>2]=f[c>>2];f[a+32>>2]=0;f[a+28>>2]=d;return a|0}function u4(a){a=a|0;var b=0,c=0;a=Y_a(a)|0;if((((a|0)!=0?(f[a+8>>2]|0)==7:0)?(b=a+16|0,c=g$a(f[b>>2]|0)|0,(c|0)!=0):0)?(roa(ORa(c+8|0)|0)|0)!=0:0)a=f[b>>2]|0;else a=0;return a|0}function v4(a){a=a|0;aO(f[a+4>>2]|0);return}function w4(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0)WZ(a,f[c>>2]|0,f[c+4>>2]|0);else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}return}function x4(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Rt(d,a,b);b=f[d>>2]|0;f[d>>2]=0;if(b|0)ubb(b);u=c;return}function y4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<12&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function z4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<12&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function A4(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;$ia(c,b);xTa(f[c+116>>2]|0);tWa(a,0);return}function B4(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;HKa(c+16|0,b);$Ja(c,b);tWa(a,0);return}function C4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(a-b>>2>>>0>=c>>>0){if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=f[b>>2];if(!c)break;else{b=b+4|0;d=d+4|0}}}}else do{c=c+-1|0;f[a+(c<<2)>>2]=f[b+(c<<2)>>2]}while((c|0)!=0);return a|0}function D4(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;if(Iab(f[b>>2]|0)|0)bG(c,a+24|0,b,b);u=c;return}function E4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];d=f[b+4>>2]|0;f[a+4>>2]=d;e=b+8|0;g=f[e>>2]|0;f[a+8>>2]=g;c=a+4|0;if(!g)f[a>>2]=c;else{f[d+8>>2]=c;g=b+4|0;f[b>>2]=g;f[g>>2]=0;f[e>>2]=0}return}function F4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];g=a+4|0;c=b+4|0;f[g>>2]=0;e=a+8|0;f[e>>2]=0;d=a+12|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+8|0;f[e>>2]=f[a>>2];b=b+12|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function G4(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Jca(b,c);return}function H4(){var a=0,b=0,c=0;x=0;a=fa(67)|0;c=x;x=0;if(c&1){c=Ja(0)|0;r2a(c)}if((a|0?(b=f[a>>2]|0,b|0):0)?(c=b+48|0,(f[c>>2]&-256|0)==1126902528?(f[c+4>>2]|0)==1129074247:0):0)iX(f[b+12>>2]|0);iX(B1a()|0)}function I4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=n8(16)|0;e=b;d=f[e+4>>2]|0;b=c+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=d;f[c+4>>2]=a;b=f[a>>2]|0;f[c>>2]=b;f[b+4>>2]=c;f[a>>2]=c;b=a+8|0;f[b>>2]=(f[b>>2]|0)+1;return}function J4(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-40|0;f[c>>2]=d;Exa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function K4(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0)ubb(c)}f[e>>2]=d;ubb(f[a>>2]|0)}return}function L4(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;if(!a){d=Ea(4)|0;f[d>>2]=0;s6a(d);Pa(d|0,37840,324)}else{c=dc[f[(f[a>>2]|0)+24>>2]&255](a,c)|0;u=d;return c|0}return 0}function M4(a,b,c){a=a|0;b=b|0;c=c|0;CQa(a,b);b=a+16|0;$Wa(b,c);Ufa(b,c);return}function N4(a){a=a|0;var b=0;b=a+4|0;RU(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function O4(a,c,d){a=a|0;c=c|0;d=d|0;az(c);if((b[f[c>>2]>>0]|0)==123)a=JO(a,c)|0;else a=ID(a,c,d)|0;return a|0}function P4(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;cP(a,d);u=c;return}function Q4(a){a=a|0;var b=0;a=LRa(a)|0;switch(f[a+4>>2]|0){case 1:{b=$Ga(ORa(a+8|0)|0,1)|0;break}case 2:{b=$Ga(jJa(a+8|0)|0,2)|0;break}default:hb()}return b|0}function R4(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);rla(b,c);return}function S4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;g=e;d=e+20|0;f[g>>2]=f[a+60>>2];f[g+4>>2]=0;f[g+8>>2]=b;f[g+12>>2]=d;f[g+16>>2]=c;if((G_a(Wa(140,g|0)|0)|0)<0){f[d>>2]=-1;a=-1}else a=f[d>>2]|0;u=e;return a|0}function T4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+(c<<2)>>2]|0;a=f[a+(d<<2)>>2]|0;if(e>>>0<=a>>>0)if((e|0)==(a|0)){a=f[b>>2]|0;a=(f[a+(c<<2)>>2]|0)>>>0<(f[a+(d<<2)>>2]|0)>>>0}else a=0;else a=1;return a|0}function U4(a){a=a|0;lO(f[a+4>>2]|0);return}function V4(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;rS(c,1898,b);Sd(a,b);rS(c,1899,b);return}function W4(a,b,c){a=a|0;b=b|0;c=c|0;BQa(a,b);b=a+16|0;$Wa(b,c);Nga(b,c);return}function X4(a,b,c){a=a|0;b=b|0;c=c|0;CQa(a,b);b=a+16|0;$Wa(b,c);fga(b,c);return}function Y4(a,b){a=a|0;b=b|0;b=AB(a,b)|0;if(b|0)x4(a,b);return}function Z4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<31&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function _4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,3)|0;b=f[d>>2]|0;if((c|0)<366&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function $4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<31&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function a5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,3)|0;b=f[d>>2]|0;if((c|0)<366&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function b5(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;I_a(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0);f[a+8>>2]=0;f[d>>2]=0;f[a>>2]=0}return}function c5(a){a=a|0;var b=0;b=a+4|0;RS(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function d5(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;kYa(a+8|0);ubb(a);a=b}return}function e5(a){a=a|0;uQ(a+32|0);jT(a+16|0);ZX(a);return}function f5(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;pSa(c);x=0;ia(129,a+88|0,b|0)|0;b=x;x=0;if(b&1){b=Ia()|0;hJa(c);Ua(b|0)}else{yFa(a+36|0);hJa(c);return}}function g5(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;f[c>>2]=b;do if(!b){if((f[(f[a+8>>2]|0)+4>>2]|0)!=5){b=f[a+16>>2]|0;if(!b)break;if((f[(f[a+12>>2]|0)+4>>2]|0)!=5)break;if((f[b+4>>2]|0)!=5)break}f[c>>2]=5}while(0);return}function h5(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;w4(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+12;b=b+12|0}return}function i5(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;cQa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0);f[a+8>>2]=0;f[d>>2]=0;f[a>>2]=0}return}function j5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<13&(b&4|0)==0)f[a>>2]=c+-1;else f[d>>2]=b|4;return}function k5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<13&(b&4|0)==0)f[a>>2]=c+-1;else f[d>>2]=b|4;return}function l5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=f[a+4>>2]|0;g=h>>8;if(h&1)g=f[(f[c>>2]|0)+g>>2]|0;a=f[a>>2]|0;sc[f[(f[a>>2]|0)+24>>2]&15](a,b,c+g|0,(h&2|0)==0?2:d,e);return}function m5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+76|0;e=f[d>>2]|0;if((e|0)==(f[a+80>>2]|0))IL(a+72|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function n5(a,b,c){a=a|0;b=b|0;c=c|0;BQa(a,b);b=a+16|0;$Wa(b,c);Pha(b,c);return}function o5(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;a=Vz(a+64|0,d)|0;if(!a)a=0;else a=f[a+12>>2]|0;u=c;return a|0}function p5(a,b){a=a|0;b=b|0;b=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113900,76797,143,77015);else{t3(a+44|0);return}}function q5(a,b){a=a|0;b=b|0;b=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113900,76797,143,77015);else{u3(a+44|0);return}}function r5(a,b){a=a|0;b=b|0;b=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113900,76797,143,77015);else{v3(a+44|0);return}}function s5(a,b){a=a|0;b=b|0;b=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113900,76797,143,77015);else{w3(a+44|0);return}}function t5(a,b){a=a|0;b=b|0;b=(qSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113900,76797,143,77015);else{x3(a+44|0);return}}function u5(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)%(f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,ER(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function v5(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,(f[b+8>>2]|0)/(f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,UW(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function w5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if($1a(a,f[b+8>>2]|0)|0)mY(b,c,d);else{a=f[a+8>>2]|0;rc[f[(f[a>>2]|0)+28>>2]&255](a,b,c,d)}return}function x5(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=kWa(a)|0;b[a+20>>0]=0;b[a+8>>0]=c;b[a+9>>0]=d&1;rHa(a+12|0,e,0)|0;rHa(a+16|0,g,0)|0;f[a+24>>2]=h;f[a+4>>2]=i;return a|0}function y5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a>>2]|0;d=f[b>>2]|0;if((c|0)>=(d|0))if((c|0)>(d|0))a=0;else{d=Dga(a)|0;e=I;a=Dga(b)|0;c=I;a=(e|0)<(c|0)|(e|0)==(c|0)&d>>>0>>0}else a=1;return a|0}function z5(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function A5(a){a=a|0;if(!a)return;else{A5(f[a>>2]|0);A5(f[a+4>>2]|0);ubb(a);return}}function B5(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;HTa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function C5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,1)|0;b=f[d>>2]|0;if((c|0)<7&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function D5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<61&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function E5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<60&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function F5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,1)|0;b=f[d>>2]|0;if((c|0)<7&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function G5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<61&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function H5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<60&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function I5(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Bbb($ta(2)|0)|0;c=Nqa(c,woa(133180)|0)|0;f4a(a,Nqa(c,$ta(0)|0)|0);u=b;return f[a>>2]|0}function J5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;xqa(b);f[e>>2]=f[b+8>>2];b=mUa(f[b+12>>2]|0)|0;f[d>>2]=f[e>>2];Eca(a,d,b);u=c;return}function K5(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;b=a+4|0;while(1){b=f[b>>2]|0;if(!b){b=0;break}a=f[b+16>>2]|0;if(!(KVa(c,a)|0)){if(!(KVa(a,c)|0)){b=1;break}b=b+4|0}}return b|0}function L5(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);kea(b,c);return}function M5(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);lea(b,c);return}function N5(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}a=a+12|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function O5(a){a=a|0;aP(f[a+4>>2]|0);return}function P5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<24&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function Q5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<24&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function R5(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Bbb($ta(2)|0)|0;c=Nqa(c,woa(132848)|0)|0;f4a(a,Nqa(c,$ta(0)|0)|0);u=b;return f[a>>2]|0}function S5(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;c=d;b=f[a>>2]|0;if(Iab(b)|0)b=(b|0)==3&1;else{kT(c,f[a+4>>2]|0);b=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;_$a(c)}u=d;return b|0}function T5(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+12|0;SN(d,a,f[b>>2]|0);HCa(d);BVa(f[a+16>>2]|0,f[b>>2]|0)|0;u=c;return}function U5(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;x=0;ua(92,a|0,1);b=x;x=0;if(b&1){b=Ia()|0;M9(a);Ua(b|0)}else return}function V5(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Mja(b,c);return}function W5(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Dea(b,c);return}function X5(){var a=0,c=0,d=0;c=u;u=u+16|0;d=c;Pk(d,f[32969]|0);a=JNa((b[d+11>>0]|0)<0?f[d>>2]|0:d)|0;HTa(d);u=c;return a|0}function Y5(a){a=a|0;jP(f[a+4>>2]|0);return}function Z5(a){a=a|0;D_(a);return}function _5(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{m$a(a,l0a(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;b=bYa(f[b>>2]|0,f[b+4>>2]|0)|0;SSa(a,b,((b|0)<0)<<31>>31);break}default:hb()}return}function $5(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Bbb($ta(2)|0)|0;c=Nqa(c,woa(133172)|0)|0;f4a(a,Nqa(c,$ta(0)|0)|0);u=b;return f[a>>2]|0}function a6(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Bbb($ta(2)|0)|0;c=Nqa(c,woa(132852)|0)|0;f4a(a,Nqa(c,$ta(0)|0)|0);u=b;return f[a>>2]|0}function b6(a){a=a|0;var b=0,c=0;b=a+8|0;c=iRa(f[f[b>>2]>>2]|0)|0;if(Iab(f[c+4>>2]|0)|0){c=oRa(f[c+12>>2]|0)|0;f[f[b>>2]>>2]=c}else pVa(c);f[a>>2]=2;return}function c6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[c>>2]|0;d=f[d>>2]|0;while(1){if((a|0)==(b|0)){c=0;break}c=f[a>>2]|0;if($1a(f[c+4>>2]|0,e)|0?$1a(f[c+8>>2]|0,d)|0:0)break;a=a+4|0}return c|0}function d6(a){a=a|0;DT(a);return}function e6(a){a=a|0;ET(a);return}function f6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Uea(b,c);return}function g6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Vea(b,c);return}function h6(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Bbb($ta(2)|0)|0;c=Nqa(c,woa(133168)|0)|0;f4a(a,Nqa(c,$ta(0)|0)|0);u=b;return f[a>>2]|0}function i6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+16|0;e=f[d>>2]|0;if((e|0)==(f[a+20>>2]|0))IL(a+12|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function j6(a,b){a=a|0;b=b|0;tWa(a,b);CHa(a,b);AX(a,b);tWa(a,0);return}function k6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Rqa(b,c)}function l6(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{m$a(a,E0a(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;b=pYa(f[b>>2]|0,f[b+4>>2]|0)|0;SSa(a,b,((b|0)<0)<<31>>31);break}default:hb()}return}function m6(a){a=a|0;var b=0,c=0,d=0;b=n8(116)|0;x=0;c=ia(99,f[f[a+80>>2]>>2]|0,0)|0;d=x;x=0;if(d&1){d=Ia()|0;ubb(b);Ua(d|0)}else{v7(b,c,0);Jfa(a+16|0,b);return b|0}return 0}function n6(a,b){a=a|0;b=b|0;$Wa(a,b);dD(a+-16+16|0,b);$Wa(a,0);return}function o6(a,b){a=a|0;b=b|0;$Wa(a,b);RD(a+-16+16|0,b);$Wa(a,0);return}function p6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);z8(b,c);return}function q6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);A8(b,c);return}function r6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Nka(b,c);return}function s6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);ofa(b,c);return}function t6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);pfa(b,c);return}function u6(a){a=a|0;Y_(a);return}function v6(a){a=+a;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;b=c;p[b>>3]=a;d=qRa(a)|0;e=I&2147483647;if(e>>>0>2146435072|(e|0)==2146435072&d>>>0>0){e=x$a(b)|0;I=I&1048575;u=c;return e|0}else Ca(75414,75448,112,75471);return 0}function w6(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;rS(c,2072,b);ne(a,b);rS(c,2073,b);return}function x6(a,b){a=a|0;b=b|0;d0(a,b);x=0;ua(3197,a+12|0,b+12|0);b=x;x=0;if(b&1){b=Ia()|0;HTa(a);Ua(b|0)}else return}function y6(a,b){a=a|0;b=b|0;var c=0;c=f[a+4>>2]|0;if(c)a=JDa(c+12|0,(WHa(c)|0)+~b|0)|0;return f[a>>2]|0}function z6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[a+4>>2]|0;e=g>>8;if(g&1)e=f[(f[c>>2]|0)+e>>2]|0;a=f[a>>2]|0;rc[f[(f[a>>2]|0)+28>>2]&255](a,b,c+e|0,(g&2|0)==0?2:d);return}function A6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Dfa(b,c);return}function B6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Efa(b,c);return}function C6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Ffa(b,c);return}function D6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Gfa(b,c);return}function E6(a){a=a|0;var b=0;b=a+4|0;uW(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function F6(a,b){a=a|0;b=b|0;rS(a,379,b);of(a,b);rS(a,380,b);return}function G6(a){a=a|0;var b=0;eba(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function H6(a){a=+a;var b=0,c=0,d=0;d=u;u=u+16|0;b=d;c=d+4|0;n[b>>2]=a;if(((D$a(a)|0)&2147483647)>>>0>2139095040){b=v8a(b)|0|4194304;f[c>>2]=b;a=+d8a(c);u=d;return +a}else Ca(75414,75448,119,101717);return +(0.0)}function I6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Sfa(b,c);return}function J6(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Tfa(b,c);return}function K6(a,b){a=a|0;b=b|0;var c=0;c=n8(48)|0;Mma(c,b);J_(a,c);return}function L6(a){a=a|0;ZK(f[a+4>>2]|0);return}function M6(a){a=a|0;_K(f[a+4>>2]|0);return}function N6(a){a=a|0;$K(f[a+4>>2]|0);return}function O6(a){a=a|0;aL(f[a+4>>2]|0);return}function P6(a){a=a|0;bL(f[a+4>>2]|0);return}function Q6(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;HTa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function R6(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(12)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[e>>2];b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function S6(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;UF(c,b);t1(c,b);tWa(a,0);return}function T6(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a>>2]|0;c=b+4|0;d=f[c>>2]|0;f[a>>2]=d;if(d|0)f[d+8>>2]=a;d=a+8|0;f[b+8>>2]=f[d>>2];e=f[d>>2]|0;f[((f[e>>2]|0)==(a|0)?e:e+4|0)>>2]=b;f[c>>2]=a;f[d>>2]=b;return}function U6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;TMa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function V6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;UMa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function W6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;VMa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function X6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;WMa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function Y6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;XMa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function Z6(a){a=a|0;var b=0;b=Ea(8)|0;x=0;ua(3189,b|0,a|0);a=x;x=0;if(a&1){a=Ia()|0;La(b|0);Ua(a|0)}else{f[b>>2]=50452;Pa(b|0,39472,418)}}function _6(a){a=a|0;var b=0,c=0;f[a>>2]=42136;v8(a+100|0);XCa(a+88|0);c=a+80|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)ubb(b);rH(a+16|0);GVa(a);return}function $6(a,b){a=a|0;b=b|0;var c=0;if(((!(UTa(b)|0)?(Bbb(b)|0,vab(f[b>>2]|0)|0):0)?(c=g0a(b,0)|0,FBa(f[c>>2]|0,133156)|0):0)?kQa(a,b)|0:0)b=1;else b=0;return b|0}function a7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);gga(b,c);return}function b7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);k9(b,c);return}function c7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);iga(b,c);return}function d7(a,b){a=a|0;b=b|0;var c=0,d=0;if((f[a+8>>2]|0)>>>0>>0)Fca(a,b);d=a+4|0;c=f[d>>2]|0;while(1){if(c>>>0>=b>>>0)break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}f[d>>2]=b;return}function e7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;d=a+4|0;f[d>>2]=0;e=a+8|0;f[e>>2]=0;f[a>>2]=f[b>>2];c=b+4|0;f[d>>2]=f[c>>2];d=b+8|0;f[e>>2]=f[d>>2];f[d>>2]=0;f[c>>2]=0;f[b>>2]=0;f[a+12>>2]=f[b+12>>2];return}function f7(a,b){a=a|0;b=b|0;tWa(a,b);cra(a,b);tWa(a,0);return}function g7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Oha(b,c);return}function h7(a){a=a|0;a=PS(a)|0;if(!a)a=0;else{a=(ARa(f[a+16>>2]|0)|0)+12|0;a=f[a>>2]|0}return a|0}function i7(a){a=a|0;SP(f[a+4>>2]|0);return}function j7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=mSa(a)|0;f[a+8>>2]=b;f[a+12>>2]=f[c>>2];i0(a+16|0,d);m1(a);return a|0}function k7(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];LE(a,d)|0;u=c;return}function l7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=d+16|0;d=1;while(1){if(d>>>0>=c>>>0)break;aaa(e,UQa(a,Or(b,d)|0)|0);d=d+1|0}return}function m7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=b;b=e_(a+48|0,e)|0;f[b>>2]=c;JU(a,f[e>>2]|0,(c|0)==0?-1:1);u=d;return}function n7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);M8(b,c);return}function o7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);v9(b,c);return}function p7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);xga(b,c);return}function q7(a){a=a|0;var b=0,c=0;b=n8(32)|0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=41144;c=b+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[b+28>>2]=1065353216;f[a>>2]=c;f[a+4>>2]=b;return}function r7(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;iH(a,b);b=b+16|0}return}function s7(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;oi(c,b);$j(c,b);tWa(a,0);return}function t7(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;LW(c,b);t1(c,b);tWa(a,0);return}function u7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=d+8|0;d=2;while(1){if(d>>>0>=c>>>0)break;aaa(e,UQa(a,Or(b,d)|0)|0);d=d+1|0}return}function v7(a,c,d){a=a|0;c=c|0;d=d|0;FHa(a);FHa(a+24|0);FHa(a+48|0);FHa(a+72|0);f[a+96>>2]=0;f[a+100>>2]=-1;f[a+104>>2]=c;f[a+108>>2]=d;b[a+112>>0]=0;return}function w7(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+4|0;d=f[b>>2]|0;f[d+4>>2]=f[c>>2];f[f[c>>2]>>2]=d;a=a+8|0;f[a>>2]=(f[a>>2]|0)+-1;HWa(b+8|0);ubb(b);return}function x7(a){a=a|0;var b=0;b=Ea(8)|0;x=0;ua(3189,b|0,a|0);a=x;x=0;if(a&1){a=Ia()|0;La(b|0);Ua(a|0)}else{f[b>>2]=50492;Pa(b|0,39504,418)}}function y7(a){a=a|0;var b=0;switch(f[a>>2]|0){case 2:{h$a(f[a+8>>2]|0);break}case 5:{b=f[a+8>>2]|0;if(b|0){NQa(b);ubb(b)}break}default:{}}f[a>>2]=3;p[a+8>>3]=0.0;return}function z7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Lga(b,c);return}function A7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Mga(b,c);return}function B7(a){a=a|0;zL(f[a+4>>2]|0);return}function C7(a){a=a|0;E$(a);return}function D7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=eQa(f[a>>2]|0)|0;f[a+4>>2]=d;f[a+24>>2]=f[b>>2];i0(a+8|0,c);return a|0}function E7(a,b){a=a|0;b=b|0;tWa(a,b);Vra(a,b);tWa(a,0);return}function F7(a){a=a|0;var b=0,c=0;b=iRa(f[a>>2]|0)|0;c=f[b+12>>2]|0;if(Iab(f[b+4>>2]|0)|0)f[a>>2]=c;else{b=iYa(b)|0;f[b+8>>2]=c;oXa(b)}return}function G7(a,b){a=a|0;b=b|0;var c=0;c=n8(48)|0;Hea(c,b);J_(a,c);return}function H7(a,b){a=a|0;b=b|0;var c=0,d=0;if((f[a+8>>2]|0)>>>0>>0)mca(a,b);d=a+4|0;c=f[d>>2]|0;while(1){if(c>>>0>=b>>>0)break;tab((f[a>>2]|0)+(c<<2)|0);c=c+1|0}f[d>>2]=b;return}function I7(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Ay(a,f[b>>2]|0,f[b+4>>2]|0);p[a+16>>3]=+p[b+16>>3];return}function J7(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;while(1){a=f[a>>2]|0;if(!a){a=0;break}c=f[a+16>>2]|0;if((c|0)<=(b|0)){if((c|0)>=(b|0)){a=1;break}a=a+4|0}}return a|0}function K7(a){a=a|0;var b=0;yNa(a);f[a>>2]=40168;x=0;ia(67,a+4|0,61110)|0;b=x;x=0;if(b&1){b=Ia()|0;hRa(a);Ua(b|0)}else return}function L7(a){a=a|0;var b=0;b=KV(a+16|0)|0;return (b>>>0)%((f[a+8>>2]|0)-(f[a+4>>2]|0)>>2>>>0)|0|0}function M7(a){a=a|0;var b=0;b=a+4|0;VW(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function N7(a){a=a|0;var b=0;b=a+4|0;lW(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function O7(a){a=a|0;M$(a);return}function P7(a){a=a|0;var b=0;b=KV(f[a>>2]|0)|0;return f[a+28>>2]&b|0}function Q7(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(f[b+40>>2]|0){ypa(c,b,_Ya(f[a+40>>2]|0)|0);s9(c)}u=d;return}function R7(a){a=a|0;switch(a|0){case 62:case 61:case 60:case 59:case 58:case 57:case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:case 75:case 74:case 73:case 72:case 71:case 70:{a=1;break}default:a=0}return a|0}function S7(a){a=a|0;var b=0,c=0,d=0;d=a+4|0;b=f[d>>2]|0;c=f[b>>2]|0;f[d>>2]=c;if(c|0)f[c+8>>2]=a;d=a+8|0;f[b+8>>2]=f[d>>2];c=f[d>>2]|0;f[((f[c>>2]|0)==(a|0)?c:c+4|0)>>2]=b;f[b>>2]=a;f[d>>2]=b;return}function T7(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;rS(c,138,b);Ge(a,b);rS(c,139,b);return}function U7(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+80|0;e=d;xZ(e,c,a,f[a+68>>2]|0,(b[a+72>>0]|0)!=0);xfa(e);u=d;return}function V7(a){a=a|0;MTa(a+80|0);MTa(a+64|0);MTa(a+52|0);sXa(a+40|0);sXa(a+28|0);I_a(a);return}function W7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=f[a+(c<<2)>>2]|0;do if((b|0)==(c|0))if(!a)Ca(76877,76797,717,123618);else{d=a+-1|0;break}else d=a;while(0);return d|0}function X7(a,b){a=a|0;b=b|0;b=p_(a,b)|0;if((b|0)!=(a+4|0))zQ(a,b);return}function Y7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;b=b-a>>2;a:while(1){while(1){if(!b)break a;d=(b|0)/2|0;e=a+(d<<2)|0;if((f[e>>2]|0)>>>0>>0)break;else b=d}b=b+-1-d|0;a=e+4|0}return a|0}function Z7(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Eha(b,c);return}function _7(a,b){a=a|0;b=b|0;var c=0;c=n8(48)|0;Una(c,b);J_(a,c);return}function $7(a,b){a=a|0;b=b|0;var c=0,d=0;a=a+16|0;f[a>>2]=0;c=n8(20)|0;f[c>>2]=41668;d=c+4|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];f[a>>2]=c;return}function a8(a){a=a|0;var b=0;b=a+4|0;lX(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function b8(a){a=a|0;var b=0;b=a+4|0;mX(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function c8(a){a=a|0;var b=0,c=0,d=0;b=f[a+24>>2]|0;d=(f[a+28>>2]|0)-b|0;a=d>>2;do if((d|0)!=4)if(a>>>0>1){c=f[b+(a+-2<<2)>>2]|0;break}else Ca(112122,115839,712,112150);else c=0;while(0);return c|0}function d8(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=f[a>>2]|0;if(!(c&8)){f[a+8>>2]=0;f[a+4>>2]=0;d=f[a+44>>2]|0;f[a+28>>2]=d;f[a+20>>2]=d;f[a+16>>2]=d+(f[a+48>>2]|0);a=0}else{f[a>>2]=c|32;a=-1}return a|0}function e8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;TMa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function f8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;UMa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function g8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;VMa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function h8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;WMa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function i8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;XMa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function j8(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=f[d>>2]|0;if((c|0)==(f[a+8>>2]|0)){mca(a,(c<<1)+2|0);c=f[d>>2]|0}f[(f[a>>2]|0)+(c<<2)>>2]=f[b>>2];f[d>>2]=(f[d>>2]|0)+1;return}function k8(a){a=a|0;var b=0;b=a+4|0;EW(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function l8(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;b=Vz(a+68|0,c)|0;u=d;return f[((b|0)==0?c:b+12|0)>>2]|0}function m8(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;c=d;switch(a|0){case 0:{b=-64;break}case 1:{b=-1;break}case 2:{b=-2;break}case 3:{b=-3;break}case 4:{b=-4;break}default:hb()}f4a(c,b);u=d;return f[c>>2]|0}function n8(a){a=a|0;var b=0,c=0;c=(a|0)==0?1:a;while(1){b=Kc(c)|0;if(b|0){a=6;break}a=l1a()|0;if(!a){a=5;break}nc[a&63]()}if((a|0)==5){c=Ea(4)|0;pab(c);Pa(c|0,39424,416)}else if((a|0)==6)return b|0;return 0}function o8(a){a=a|0;if(!a)return;else{o8(f[a>>2]|0);o8(f[a+4>>2]|0);ubb(a);return}}function p8(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Jq(a,f[b>>2]|0,b+4|0);return a|0}function q8(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=b;c=1;while(1){if((c|0)==624)break;d=(X(b>>>30^b,1812433253)|0)+c|0;f[a+(c<<2)>>2]=d;c=c+1|0;b=d}f[a+2496>>2]=0;return}function r8(a){a=a|0;HT(a);return}function s8(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=BRa(f[a>>2]|0)|0;h0(a+8|0,b);f[a+24>>2]=f[c>>2];f[a+32>>2]=e;f[a+28>>2]=d;return a|0}function t8(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);bia(b,c);return}function u8(a){a=+a;var b=0,c=0,d=0;p[s>>3]=a;b=f[s>>2]|0;c=f[s+4>>2]|0;d=EMa(b|0,c|0,52)|0;switch(d&2047){case 0:{b=(b|0)==0&(c&2147483647|0)==0?2:3;break}case 2047:{b=(b|0)==0&(c&1048575|0)==0&1;break}default:b=4}return b|0}function v8(a){a=a|0;var b=0,c=0,d=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;voa(f[b+-4>>2]|0);b=b+-8|0}f[d>>2]=c;ubb(f[a>>2]|0)}return}function w8(a){a=a|0;var b=0;IJa(a);f[a>>2]=40004;x=0;ia(67,a+4|0,60640)|0;b=x;x=0;if(b&1){b=Ia()|0;LTa(a);Ua(b|0)}else return}function x8(a,b){a=a|0;b=b|0;var c=0,d=0;d=(Hr(a,f[b+8>>2]|0)|0)+1|0;c=Hr(a,f[b+12>>2]|0)|0;b=EJa(a,f[b+16>>2]|0)|0;return d+(c>>>0>>0?b:c)|0}function y8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=((f[c>>2]|0)-e|0)/20|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b*20|0)}else CB(a,b-d|0);return}function z8(a,b){a=a|0;b=b|0;$Wa(a,b);qJ(a+-16+16|0,b);fx(b);$Wa(a,0);return}function A8(a,b){a=a|0;b=b|0;$Wa(a,b);rJ(a+-16+16|0,b);ii(b);$Wa(a,0);return}function B8(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+28|0;d=f[c>>2]|0;if((d|0)==(f[a+32>>2]|0))IL(a+24|0,b);else{f[d>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+4}return}function C8(a,b,c){a=a|0;b=b|0;c=c|0;switch(c|0){case 1:{m$a(a,b);break}case 2:{SSa(a,b,((b|0)<0)<<31>>31);break}case 3:{CAa(a,+(b|0));break}case 4:{kqa(a,+(b|0));break}default:hb()}return}function D8(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);qia(b,c);return}function E8(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a>>0]|0;e=b[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)a=e;else{do{a=a+1|0;c=c+1|0;d=b[a>>0]|0;e=b[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));a=e}return (d&255)-(a&255)|0}function F8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+8|0;a=b;while(1){if((a|0)==(c|0))break;f[f[d>>2]>>2]=f[a>>2];f[d>>2]=(f[d>>2]|0)+4;a=a+4|0}return}function G8(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;I_a(a+8|0);ubb(a);a=b}return}function H8(a){a=a|0;var b=0,c=0;c=f[a+12>>2]|0;b=f[a+8>>2]|0;while(1){if((b|0)==(c|0)){b=4;break}if((f[b>>2]|1|0)==3){b=5;break}else b=b+4|0}if((b|0)==4)return (f[a+4>>2]&-2|0)==2|0;else if((b|0)==5)return 1;return 0}function I8(a,b){a=a|0;b=b|0;Uf(a,b);return}function J8(a,b,c){a=a|0;b=b|0;c=c|0;qTa(a,b);b=a+16|0;$Wa(b,c);Hia(b,c);return}function K8(a){a=a|0;var b=0,c=0,d=0,e=0;e=u;u=u+32|0;b=e+16|0;c=e+12|0;d=e;WLa(d,511,0,a);if((f[a>>2]|0)!=-1){f[b>>2]=d;f[c>>2]=b;cx(a,c)}u=e;return (f[a+4>>2]|0)+-1|0}function L8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=nSa(f[a>>2]|0)|0;f[a+4>>2]=d;f[a+24>>2]=f[b>>2];i0(a+8|0,c);return a|0}function M8(a,b){a=a|0;b=b|0;var c=0;$Wa(a,b);c=a+-16|0;MU(c,b);QXa(f[c+48>>2]|0);$Wa(a,0);return}function N8(a){a=a|0;var b=0;b=q$a(a)|0;if(b)a=f[b+8>>2]|0;if(!(vab(f[a>>2]|0)|0)){a=n$a(a)|0;if(!a)a=0;else a=(f[a+16>>2]|0)!=0}else a=1;return a|0}function O8(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;hqa(a+80|0);uL(a,e);if(f[a+88>>2]|0)b[a+26>>0]=1;u=d;return}function P8(a,b){a=a|0;b=b|0;b=jE(a,b)|0;if(b|0)x4(a,b);return}function Q8(a,b){a=a|0;b=b|0;var c=0;c=fQa(b)|0;f[a+136>>2]=c;CE(a+16|0,b);mg(a,b);jv(a);return}function R8(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];rAa(a,d);u=c;return}function S8(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;e=g;f[a+36>>2]=13;if((f[a>>2]&64|0)==0?(f[e>>2]=f[a+60>>2],f[e+4>>2]=21523,f[e+8>>2]=g+16,$a(54,e|0)|0):0)b[a+75>>0]=-1;e=Vu(a,c,d)|0;u=g;return e|0}function T8(a,b){a=a|0;b=b|0;zfa(a,b)|0;if((a|0)!=(b|0))gx(a+12|0,f[b+12>>2]|0,f[b+16>>2]|0);return a|0}function U8(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Sq(a,f[b>>2]|0,b+4|0);return a|0}function V8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pZ(a,b,c,d)|0}function W8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;f[c>>2]=d+-8;voa(f[d+-4>>2]|0)}a=f[a>>2]|0;if(a|0)ubb(a);return}function X8(a){a=a|0;UT(a);return}function Y8(a,b){a=a|0;b=b|0;a=Kz(a,b)|0;if(!a)a=9;else a=f[a+12>>2]|0;return a|0}function Z8(a){a=a|0;if((f[a+8>>2]|0)!=0?rab(f[a>>2]|0)|0:0){a=f[f[a+4>>2]>>2]|0;if(!(F6a(a)|0)?!(x6a(a)|0):0)a=v6a(a)|0;else a=1}else a=0;return a|0}function _8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=a+4|0;c=b+4|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+8|0;b=b+8|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;return}function $8(a){a=a|0;if(!a)return;else{$8(f[a>>2]|0);$8(f[a+4>>2]|0);ubb(a);return}}function a9(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];b=OC(a,d)|0;u=c;return b|0}function b9(a){a=a|0;f[a+12>>2]=f[a+8>>2];f[a+24>>2]=f[a+20>>2];faa(a+44|0);D9(a+56|0);return}function c9(a,b,c){a=a|0;b=b|0;c=c|0;do if((b|0)==(c|0))a=1;else{a=fqa(a,b)|0;if(a|0?jE(a,c)|0:0){a=1;break}a=0}while(0);return a|0}function d9(a,b){a=a|0;b=b|0;var c=0,d=0;b=b+8|0;c=f[a+36>>2]|0;d=c+(f[b>>2]<<2)|0;f[d>>2]=(f[d>>2]|0)+1;b=f[b>>2]|0;if((f[c+(b<<2)>>2]|0)>>>0>1){d=(f[a+24>>2]|0)+(b>>>5<<2)|0;f[d>>2]=f[d>>2]&~(1<<(b&31))}return}function e9(a,b,c){a=a|0;b=b|0;c=c|0;c=JDa(b+12|0,(zza(a,b)|0)+~c|0)|0;return f[c>>2]|0}function f9(a){a=a|0;YT(a);return}function g9(a){a=a|0;var b=0,c=0;b=132636;while(1){b=f[b>>2]|0;if(!b){b=0;break}c=f[b+16>>2]|0;if(c>>>0<=a>>>0){if(c>>>0>=a>>>0){b=1;break}b=b+4|0}}return b|0}function h9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;qc[f[(f[a>>2]|0)+12>>2]&255](d,a,b);if((f[d+4>>2]|0)==(f[c+4>>2]|0))a=(f[d>>2]|0)==(f[c>>2]|0);else a=0;u=e;return a|0}function i9(a,b){a=a|0;b=b|0;var c=0;c=BTa(f[a+4>>2]|0)|0;b=bl(a,Or(b,1)|0)|0;f[c+8>>2]=b;b=n9(f[a+84>>2]|0,b)|0;f[c+4>>2]=b;return c|0}function j9(a){a=a|0;var b=0;b=e$a(a)|0;if(!b){a=Y_a(a)|0;if(!a)a=0;else a=R7(f[a+8>>2]|0)|0}else a=Z6a(f[b+8>>2]|0)|0;return a|0}function k9(a,b){a=a|0;b=b|0;$Wa(a,b);zK(a+-16+16|0,b);zy(b);$Wa(a,0);return}function l9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;f[c>>2]=0;d=n8(64)|0;f[d>>2]=40488;e=d+4|0;a=e+60|0;do{f[e>>2]=f[b>>2];e=e+4|0;b=b+4|0}while((e|0)<(a|0));f[c>>2]=d;return}function m9(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=Bbb($ta(2)|0)|0;f4a(b,Nqa(Nqa(d,woa(132856)|0)|0,a)|0);u=c;return f[b>>2]|0}function n9(a,b){a=a|0;b=b|0;var c=0,d=0;do if(!(FVa(a,b)|0))if(LVa(a,b)|0){c=b-(uZa(a)|0)|0;d=a+20|0;break}else hb();else{c=b;d=a+8|0}while(0);return f[(f[d>>2]|0)+(c<<2)>>2]|0}function o9(a,b){a=a|0;b=b|0;b=y6(b,f[f[a+4>>2]>>2]|0)|0;return (GZ(b,f[f[a+8>>2]>>2]|0)|0)^1|0}function p9(a){a=a|0;var b=0;b=a+4|0;yX(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function q9(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{m$a(a,t6a(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;b=B0a(f[b>>2]|0,f[b+4>>2]|0)|0;SSa(a,b,((b|0)<0)<<31>>31);break}default:hb()}return}function r9(a,b){a=a|0;b=b|0;csa(a,rQa(f[b>>2]|0)|0);return}function s9(a){a=a|0;var b=0;$V(a);b=f[a+4>>2]|0;if(!((f[b+4>>2]|0)<=2?(f[b+8>>2]|0)<=0:0))lg(a);b=f[a+8>>2]|0;YW(f[b>>2]|0,f[b+4>>2]|0);$V(a);return}function t9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c+4|0;g=c;d=n8(48)|0;f[g>>2]=f[b>>2];f[e>>2]=f[g>>2];WDa(d,e);J_(a,d);u=c;return}function u9(a){a=a|0;var b=0;a:do if((f[a+4>>2]|0)==2)a=1;else{b=f[a+12>>2]|0;a=f[a+8>>2]|0;while(1){if((a|0)==(b|0)){a=0;break a}if((f[a>>2]|0)==2){a=1;break}else a=a+4|0}}while(0);return a|0}function v9(a,b){a=a|0;b=b|0;$Wa(a,b);SK(a+-16+16|0,b);ZE(b);$Wa(a,0);return}function w9(a){a=a|0;var b=0;f[a>>2]=46984;x=0;ta(510,a|0);b=x;x=0;if(b&1){b=Ja(0)|0;r2a(b)}else{JCa(a+28|0);rg(f[a+32>>2]|0);rg(f[a+36>>2]|0);rg(f[a+48>>2]|0);rg(f[a+60>>2]|0);return}}function x9(a){a=a|0;f[a>>2]=44668;uSa(a+88|0);UNa(a+64|0);f9(a+44|0);LTa(a);return}function y9(a,b){a=a|0;b=b|0;csa(a,DQa(f[b>>2]|0)|0);return}function z9(a,c){a=a|0;c=c|0;var d=0;d=Or(c,1)|0;d=b8a(b[d>>0]|0)|0;d=d?1:2;ul(a,c,d+1|0,UQa(a,Or(c,d)|0)|0);return}function A9(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+44|0;d=f[c>>2]|0;if((d|0)==(f[a+48>>2]|0))IL(a+40|0,b);else{f[d>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+4}return}function B9(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=HSa(a)|0;f[a+8>>2]=g;f[a+12>>2]=b;f[a+16>>2]=c;f[a+20>>2]=d;f[a+24>>2]=e;Epa(a);return a|0}function C9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+128|0;d=g;e=d;h=e+124|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(h|0));f[d+32>>2]=93;f[d+44>>2]=a;f[d+76>>2]=-1;f[d+84>>2]=a;h=fd(d,b,c)|0;u=g;return h|0}function D9(a){a=a|0;var b=0;b=a+4|0;SX(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function E9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=(f[b+16>>2]|0)+(f[b+20>>2]|0)|0;e=f[b+4>>2]|0;d=e+(c>>>10<<2)|0;if((f[b+8>>2]|0)==(e|0))b=0;else b=(f[d>>2]|0)+((c&1023)<<2)|0;f[a>>2]=d;f[a+4>>2]=b;return}function F9(a,b){a=a|0;b=b|0;csa(a,EQa(f[b>>2]|0)|0);return}function G9(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;r_a(a);f[a>>2]=43512;f[a+4>>2]=c;f[a+8>>2]=d;b[a+12>>0]=e&1;return}function H9(a,b){a=a|0;b=b|0;var c=0;c=(Hr(a,f[b+16>>2]|0)|0)+2|0;c=c+(Hr(a,f[b+8>>2]|0)|0)|0;return c+(Hr(a,f[b+12>>2]|0)|0)|0}function I9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+32|0;d=f[e>>2]|0;f[e>>2]=d+1;if(!d)f[a+36>>2]=5;if(b){b=f[b+4>>2]|0;if((b|0)!=5)c=5}else{b=0;c=5}if((c|0)==5)f[a+36>>2]=b;return}function J9(a){a=a|0;iS(f[a+4>>2]|0);return}function K9(a,b){a=a|0;b=b|0;$Wa(a,b);GF(a+-16+16|0,b);$Wa(a,0);return}function L9(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;sta(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function M9(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;uSa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function N9(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;SH(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)}return}function O9(a,b){a=a|0;b=b|0;csa(a,SQa(f[b>>2]|0)|0);return}function P9(a,b){a=a|0;b=b|0;csa(a,KQa(f[b>>2]|0)|0);return}function Q9(a,b){a=a|0;b=b|0;csa(a,LQa(f[b>>2]|0)|0);return}function R9(a){a=a|0;pU(a);return}function S9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=n8(24)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=42296;e=d+12|0;rNa(e,b,f[c>>2]|0);f[a>>2]=e;f[a+4>>2]=d;return}function T9(a){a=+a;var b=0,c=0;qRa(a)|0;if((I|0)>=0){b=+K(a)>=1.0?(a>0.0?~~+Y(+J(a/4294967296.0),4294967295.0)>>>0:~~+W((a-+(~~a>>>0))/4294967296.0)>>>0):0;if(a<18446744073709551616.0)c=~~a>>>0;else{b=-1;c=-1}}else{b=0;c=0}I=b;return c|0}function U9(a){a=a|0;var b=0;if(!(f[a>>2]&128))b=1;else b=(f[a+20>>2]|0)>>>0>(f[a+28>>2]|0)>>>0?2:1;b=ec[f[a+40>>2]&127](a,0,b)|0;if((b|0)>=0)b=b-(f[a+8>>2]|0)+(f[a+4>>2]|0)+(f[a+20>>2]|0)-(f[a+28>>2]|0)|0;return b|0}function V9(a,b,c){a=a|0;b=b|0;c=c|0;c=_2(a,c)|0;return mBa(f[a+32>>2]|0,b,c)|0}function W9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];f[d>>2]=f[e>>2];a=Gq(a+36|0,d)|0;f[b+8>>2]=a;u=c;return}function X9(a){a=a|0;var b=0,c=0;b=n8(20)|0;c=a+4|0;f[b>>2]=41668;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];return b|0}function Y9(a,b){a=a|0;b=b|0;csa(a,WQa(f[b>>2]|0)|0);return}function Z9(a,b){a=a|0;b=b|0;csa(a,XQa(f[b>>2]|0)|0);return}function _9(a,b){a=a|0;b=b|0;csa(a,YQa(f[b>>2]|0)|0);return}function $9(a,b){a=a|0;b=b|0;var c=0;tWa(a,b);c=a+-16|0;Hra(c,b);BL(c,b);tWa(a,0);return}function aaa(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=f[d>>2]|0;if((c|0)==(f[a+8>>2]|0)){Fca(a,(c<<1)+2|0);c=f[d>>2]|0}f[(f[a>>2]|0)+(c<<2)>>2]=b;f[d>>2]=c+1;return}function baa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;JG(a,b);b=b+16|0}return}function caa(a){a=a|0;if(!a)return;else{caa(f[a>>2]|0);caa(f[a+4>>2]|0);ubb(a);return}}function daa(a,b){a=a|0;b=b|0;csa(a,iRa(f[b>>2]|0)|0);return}function eaa(a,b){a=a|0;b=b|0;csa(a,oRa(f[b>>2]|0)|0);return}function faa(a){a=a|0;var b=0;b=a+4|0;GY(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function gaa(a){a=a|0;lN(f[a+4>>2]|0);return}function haa(a){a=a|0;var b=0,c=0,d=0;b=n8(12)|0;f[b>>2]=44460;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function iaa(a){a=a|0;var b=0;b=oPa(a)|0;if(!(+p[b>>3]%1.0==0.0))Ca(54020,75338,254,54046);b=oPa(a)|0;b=~~+p[b>>3];a=oPa(a)|0;if(+p[a>>3]==+(b|0))return b|0;else Ca(54057,75338,256,54046);return 0}function jaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;f[d>>2]=b;g=a+60|0;e=f[g>>2]|0;f[g>>2]=e+1;f[b+4>>2]=e;SV(a+24|0,d);u=c;return}function kaa(a){a=a|0;return P7(a)|0}function laa(a,b,c){a=a|0;b=b|0;c=c|0;toa(a+4|0,f[b>>2]|0,f[c>>2]|0);return}function maa(a,b){a=a|0;b=b|0;tWa(a,b);tFa(a+-16+16|0,b);tWa(a,0);return}function naa(a,b){a=a|0;b=b|0;var c=0;switch(f[a+4>>2]|0){case 3:{c=pUa(b)|0;f[c+8>>2]=43;f[c+12>>2]=a;f[c+4>>2]=4;break}case 4:{c=a;break}default:Ca(71856,71874,120,71901)}return c|0}function oaa(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=f[d>>2]|0;if((c|0)==(f[a+8>>2]|0)){wda(a,(c<<1)+2|0);c=f[d>>2]|0}f[(f[a>>2]|0)+(c<<2)>>2]=b;f[d>>2]=c+1;return}function paa(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,f[c+8>>2]^f[b+8>>2]);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,f[c>>2]^f[b>>2],f[c+4>>2]^f[b+4>>2]);break}default:hb()}return}function qaa(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,f[c+8>>2]&f[b+8>>2]);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,f[c>>2]&f[b>>2],f[c+4>>2]&f[b+4>>2]);break}default:hb()}return}function raa(a){a=a|0;var b=0,c=0;b=f[a+8>>2]|0;if(b|0?(c=f[a+12>>2]|0,c|0):0){b=f[b+4>>2]|0;if((b|0)!=5?(f[c+4>>2]|0)!=5:0)b=(f[(f[a+16>>2]|0)+4>>2]|0)==5?5:b;else b=5;f[a+4>>2]=b;return}Ca(91123,91141,541,91161)}function saa(a,c){a=a|0;c=c|0;if(b[a+32>>0]|0)QA(f[a+24>>2]|0,c,f[a+40>>2]|0);pk(a,c);return}function taa(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{m$a(a,f[c+8>>2]|f[b+8>>2]);break}case 2:{b=b+8|0;c=c+8|0;SSa(a,f[c>>2]|f[b>>2],f[c+4>>2]|f[b+4>>2]);break}default:hb()}return}function uaa(a,b){a=a|0;b=b|0;csa(a,IRa(f[b>>2]|0)|0);return}function vaa(a,b){a=a|0;b=b|0;csa(a,yRa(f[b>>2]|0)|0);return}function waa(a,b){a=a|0;b=b|0;csa(a,zRa(f[b>>2]|0)|0);return}function xaa(a,b){a=a|0;b=b|0;csa(a,ARa(f[b>>2]|0)|0);return}function yaa(a,b){a=a|0;b=b|0;tWa(a,b);OFa(a+-16+16|0,b);tWa(a,0);return}function zaa(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;b=d;f[b>>2]=a;c=f[32964]|0;if((c|0)==(f[32965]|0))JL(b);else{f[c>>2]=a;f[32964]=(f[32964]|0)+4}u=d;return}function Aaa(a){a=a|0;IN(f[a+4>>2]|0);return}function Baa(a,b){a=a|0;b=b|0;var c=0;c=Ea(16)|0;N$a();x=0;wa(159,c|0,a|0,50276,b|0);b=x;x=0;if(b&1){b=Ia()|0;La(c|0);Ua(b|0)}else Pa(c|0,39344,409)}function Caa(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;rS(c,2523,b);_j(a,b);rS(c,2524,b);return}function Daa(a){a=a|0;var b=0;xMa(a);f[a>>2]=43656;b=a+56|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[a+84>>2]=1065353216;return}function Eaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;f[d>>2]=f[c>>2];d=lG(0,0,b,d)|0;if((d|0)>=0?(e=d+1|0,g=Kc(e)|0,f[a>>2]=g,(g|0)!=0):0)a=lG(g,e,b,c)|0;else a=-1;u=h;return a|0}function Faa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=a+84|0;g=f[d>>2]|0;h=c+256|0;e=CA(g,h)|0;e=(e|0)==0?h:e-g|0;c=e>>>0>>0?e:c;Iu(b|0,g|0,c|0)|0;f[a+4>>2]=g+c;b=g+e|0;f[a+8>>2]=b;f[d>>2]=b;return c|0}function Gaa(a,b){a=a|0;b=b|0;var c=0;f[a+24>>2]=b;f[a+16>>2]=(b|0)==0&1;f[a+20>>2]=0;f[a+4>>2]=4098;f[a+12>>2]=0;f[a+8>>2]=6;c=a+28|0;b=a+32|0;a=b+40|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(a|0));dka(c);return}function Haa(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;_$a(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function Iaa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{m$a(a,(ORa(b)|0)<<16>>16);break}case 2:{SSa(a,wJa(hMa(jJa(b)|0,I|0,48)|0,I|0,48)|0,I);break}default:hb()}return}function Jaa(a,b){a=a|0;b=b|0;csa(a,JRa(f[b>>2]|0)|0);return}function Kaa(a,b){a=a|0;b=b|0;csa(a,KRa(f[b>>2]|0)|0);return}function Laa(a,b){a=a|0;b=b|0;csa(a,LRa(f[b>>2]|0)|0);return}function Maa(a,b){a=a|0;b=b|0;csa(a,WRa(f[b>>2]|0)|0);return}function Naa(a,b){a=a|0;b=b|0;csa(a,XRa(f[b>>2]|0)|0);return}function Oaa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Sp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function Paa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;return Fp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0)|0}function Qaa(a,b,c){a=a|0;b=b|0;c=c|0;Sn(a,b,c);return}function Raa(a,b){a=a|0;b=b|0;w4(a,b);x=0;ua(2281,a+12|0,b+12|0);b=x;x=0;if(b&1){b=Ia()|0;HTa(a);Ua(b|0)}else return}function Saa(a){a=a|0;var c=0,d=0,e=0;d=(zWa(a,43)|0)==0;c=b[a>>0]|0;d=d?c<<24>>24!=114&1:2;e=(zWa(a,120)|0)==0;d=e?d:d|128;a=(zWa(a,101)|0)==0;a=a?d:d|524288;a=c<<24>>24==114?a:a|64;a=c<<24>>24==119?a|512:a;return (c<<24>>24==97?a|1024:a)|0}function Taa(a,b){a=a|0;b=b|0;var c=0,d=0;IAa(a);f[a>>2]=f[b>>2];c=b+4|0;f[a+4>>2]=f[c>>2];d=b+8|0;f[a+8>>2]=f[d>>2];f[d>>2]=0;f[c>>2]=0;f[b>>2]=0;return}function Uaa(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-24|0;f[c>>2]=d;sta(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function Vaa(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;uSa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function Waa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{m$a(a,(ORa(b)|0)<<24>>24);break}case 2:{SSa(a,wJa(hMa(jJa(b)|0,I|0,56)|0,I|0,56)|0,I);break}default:hb()}return}function Xaa(a,b){a=a|0;b=b|0;csa(a,gSa(f[b>>2]|0)|0);return}function Yaa(a,b){a=a|0;b=b|0;csa(a,YRa(f[b>>2]|0)|0);return}function Zaa(a,b){a=a|0;b=b|0;csa(a,ZRa(f[b>>2]|0)|0);return}function _aa(a,b){a=a|0;b=b|0;csa(a,_Ra(f[b>>2]|0)|0);return}function $aa(a,b){a=a|0;b=b|0;csa(a,hSa(f[b>>2]|0)|0);return}function aba(a,c){a=a|0;c=c|0;var d=0;d=LPa(c)|0;f[a>>2]=d;f[a+4>>2]=f[c+4>>2];b[a+8>>0]=0;f[a+12>>2]=f[c+12>>2];a=c+8|0;if(!(b[a>>0]|0)){b[a>>0]=1;return}else Ca(106656,106510,48,106669)}function bba(a,b){a=a|0;b=b|0;var c=0;c=n8(48)|0;x=0;ua(87,c|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;ubb(c);Ua(b|0)}else{J_(a,c);return}}function cba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>2;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<2)}else zE(a,b-d|0);return}function dba(a){a=a|0;GQ(f[a+4>>2]|0);return}function eba(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;HTa(a+8|0);ubb(a);a=b}return}function fba(a,b,c){a=a|0;b=+b;c=c|0;switch(c|0){case 0:{yXa(a);break}case 1:{m$a(a,~~b);break}case 3:{CAa(a,b);break}case 4:{kqa(a,b);break}default:hb()}return}function gba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,4)|0;if(!(f[d>>2]&4))f[a>>2]=c+-1900;return}function hba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,4)|0;if(!(f[d>>2]&4))f[a>>2]=c+-1900;return}function iba(a){a=a|0;var b=0;b=Eia(a)|0;b=zma(tm(134008,b,I)|0,58)|0;yCa(b,Aha(f[a>>2]|0)|0)|0;return}function jba(a,b){a=a|0;b=b|0;csa(a,iSa(f[b>>2]|0)|0);return}function kba(a,b){a=a|0;b=b|0;ux(a,iRa(f[b>>2]|0)|0);return}function lba(a,b){a=a|0;b=b|0;dt(a,oRa(f[b>>2]|0)|0);return}function mba(a,b){a=a|0;b=b|0;b=(XRa(f[b>>2]|0)|0)+8|0;if(Iab(f[b>>2]|0)|0)pm(a+48|0,b);return}function nba(a){a=a|0;var b=0,c=0;c=f[r>>2]|0;b=c+a|0;if((a|0)>0&(b|0)<(c|0)|(b|0)<0){da()|0;Va(12);return -1}f[r>>2]=b;if((b|0)>(ca()|0)?(ba()|0)==0:0){f[r>>2]=c;Va(12);return -1}return c|0}function oba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;a=c-b|0;if((a|0)>0){Iu(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+(((a>>>0)/12|0)*12|0)}return}function pba(a){a=a|0;mO(f[a+4>>2]|0);return}function qba(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=44460;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function rba(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;d=a+84|0;b[d>>0]=1;e=a+16|0;f=1;while(1){if(!(f<<24>>24))break;b[d>>0]=0;Fia(a);pMa(e,c);f=b[d>>0]|0}return}function sba(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=(Vz(a+88|0,d)|0)!=0;u=c;return b|0}function tba(a){a=a|0;var b=0;uKa(a);f[a>>2]=45588;gQa(a+44|0);b=a+64|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+80>>2]=1065353216;_D(a+84|0);return}function uba(a,b){a=a|0;b=b|0;var c=0;c=n8(12)|0;x=0;ua(1407,c|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;ubb(c);Ua(b|0)}else{f[a>>2]=c;return}}function vba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=Cp(b)|0;f[e>>2]=b;f[d>>2]=f[e>>2];b=Qma(a,d,0,0)|0;u=c;return b|0}function wba(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;$Qa(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+16;b=b+16|0}return}function xba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=n8(28)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=42364;e=d+12|0;yOa(e,b,f[c>>2]|0);f[a>>2]=e;f[a+4>>2]=d;return}function yba(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b;d=f[a>>2]|0;e=Dga(a)|0;a=c;f[a>>2]=e;f[a+4>>2]=I;a=kMa(d,0,HH(c,8)|0,0)|0;u=b;return a|0}function zba(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=1&(c|0)<257)$Xa(a,c);else{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;WZ(a,119443,h7a(119443)|0)}return}function Aba(a,b){a=a|0;b=b|0;$Wa(a,b);wG(a+-16+16|0,b);$Wa(a,0);return}function Bba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Tp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function Cba(a,b){a=a|0;b=b|0;b=(gSa(f[b>>2]|0)|0)+8|0;if(Iab(f[b>>2]|0)|0)pm(a+48|0,b);return}function Dba(a,b){a=a|0;b=b|0;m_(a,f[b+8>>2]|0);Sla(a+12|0,b);return}function Eba(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=41668;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];f[b+12>>2]=f[a+12>>2];return}function Fba(a){a=a|0;var b=0,c=0,d=0;c=n8(64)|0;f[c>>2]=40488;d=c+4|0;a=a+4|0;b=d+60|0;do{f[d>>2]=f[a>>2];d=d+4|0;a=a+4|0}while((d|0)<(b|0));return c|0}function Gba(a,b){a=a|0;b=b|0;csa(a,qSa(f[b>>2]|0)|0);return}function Hba(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;b=f[b+8>>2]|0;if(sba(a,b)|0){SN(c,a,b);HCa(c)}u=d;return}function Iba(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;BPa(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+16;b=b+16|0}return}function Jba(a){a=a|0;var b=0,c=0;b=n8(16)|0;c=a+4|0;f[b>>2]=43856;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];return b|0}function Kba(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 Ega(a,F$(a,b,c)|0,d,e,f,g)|0}function Lba(a,b){a=a|0;b=b|0;vya(a+16|0,rQa(f[b>>2]|0)|0);return}function Mba(a,b){a=a|0;b=b|0;QU(a,iRa(f[b>>2]|0)|0);return}function Nba(a,b){a=a|0;b=b|0;$Wa(a,b);AG(a+-16+16|0,b);$Wa(a,0);return}function Oba(a,b){a=a|0;b=b|0;$Wa(a,b);BG(a+-16+16|0,b);$Wa(a,0);return}function Pba(a,b){a=a|0;b=b|0;$Wa(a,b);CG(a+-16+16|0,b);$Wa(a,0);return}function Qba(a,b){a=a|0;b=b|0;$Wa(a,b);DG(a+-16+16|0,b);$Wa(a,0);return}function Rba(a,b){a=a|0;b=b|0;$Wa(a,b);EG(a+-16+16|0,b);$Wa(a,0);return}function Sba(a,b){a=a|0;b=b|0;$Wa(a,b);FG(a+-16+16|0,b);$Wa(a,0);return}function Tba(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a+16>>2]|0;d=Bbb(f[c>>2]|0)|0;if((d|0)!=(b|0)){BVa(c,b)|0;yE(a+44|0,d,b)}return b|0}function Uba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>3;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<3)}else LD(a,b-d|0);return}function Vba(a){a=a|0;var b=0;b=a+4|0;o_(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function Wba(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a>>2]|0;if((c|0)==(f[b>>2]|0))if(!c)a=1;else{d=Dga(a)|0;a=I;c=Dga(b)|0;a=(d|0)==(c|0)&(a|0)==(I|0)}else a=0;return a|0}function Xba(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if((f[b+4>>2]|0)!=5){a=f[a+36>>2]|0;Bbb(a)|0;U0a(c,a);b=gNa(f[c>>2]|0,b)|0}u=d;return b|0}function Yba(a){a=a|0;f[a+4>>2]=f[a>>2];c5(a+12|0);p9(a+24|0);return}function Zba(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;Raa(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+24;b=b+24|0}return}function _ba(a,b){a=a|0;b=b|0;vya(a+16|0,DQa(f[b>>2]|0)|0);return}function $ba(a,b){a=a|0;b=b|0;tWa(a,b);gIa(a+-16+16|0,b);tWa(a,0);return}function aca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Wp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function bca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;switch(b|0){case 5:case 2:case 1:break;default:DV(a,d,c,e)}return}function cca(a){a=a|0;var b=0;b=f[a+4>>2]|0;if(!b)while(1){b=f[a+8>>2]|0;if((f[b>>2]|0)==(a|0))break;else a=b}else while(1){a=f[b>>2]|0;if(!a)break;else b=a}return b|0}function dca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!(UTa(b)|0)?(d=g0a(b,0)|0,VFa(f[d>>2]|0)|0):0)b=CGa(a,b,c)|0;else b=0;return b|0}function eca(a){a=a|0;var b=0,c=0;c=(f[a+4>>2]|0)-(f[a>>2]|0)>>2;while(1){b=c+-1|0;if((c|0)<=0)break;Ar(f[(f[a>>2]|0)+(b<<2)>>2]|0);c=b}return}function fca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=Dp(b)|0;f[e>>2]=b;f[d>>2]=f[e>>2];b=Qma(a,d,0,0)|0;u=c;return b|0}function gca(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;_$a(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function hca(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;I_a(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function ica(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{m$a(a,+ONa(b)<=+ONa(c)&1);break}case 4:{m$a(a,+NNa(b)<=+NNa(c)&1);break}default:hb()}return}function jca(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{m$a(a,+ONa(b)>=+ONa(c)&1);break}case 4:{m$a(a,+NNa(b)>=+NNa(c)&1);break}default:hb()}return}function kca(a,b){a=a|0;b=b|0;vya(a+16|0,EQa(f[b>>2]|0)|0);return}function lca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a>>2]|0;b=Yx(a,Or(b,1)|0)|0;f[d>>2]=b;DZa(e,d);u=c;return}function mca(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;NMa(a,b);c=a+4|0;b=0;while(1){if(b>>>0>=(f[c>>2]|0)>>>0)break;f[(f[a>>2]|0)+(b<<2)>>2]=f[d+(b<<2)>>2];b=b+1|0}return}function nca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>4;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<4)}else XD(a,b-d|0);return}function oca(a){a=a|0;var b=0,c=0,d=0;b=n8(12)|0;f[b>>2]=44504;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function pca(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;eH(a,b);b=b+16|0}return}function qca(a,b){a=a|0;b=b|0;tWa(a,b);RFa(a,b);tWa(a,0);return}function rca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return S0(a,b,c,d)|0} -function sca(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;cQa(e);b=e}f[d>>2]=c;ubb(f[a>>2]|0)}return}function tca(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{m$a(a,+ONa(b)<+ONa(c)&1);break}case 4:{m$a(a,+NNa(b)<+NNa(c)&1);break}default:hb()}return}function uca(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{m$a(a,+ONa(b)>+ONa(c)&1);break}case 4:{m$a(a,+NNa(b)>+NNa(c)&1);break}default:hb()}return}function vca(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=ky(b)|0;f[d>>2]=b;a=e_(a+48|0,d)|0;f[a>>2]=(f[a>>2]|0)+1;u=c;return}function wca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=$Ra(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];h0(a+12|0,c);XJa(a,d);return a|0}function xca(a,b){a=a|0;b=b|0;vya(a+16|0,SQa(f[b>>2]|0)|0);return}function yca(a,b){a=a|0;b=b|0;vya(a+16|0,KQa(f[b>>2]|0)|0);return}function zca(a,b){a=a|0;b=b|0;vya(a+16|0,LQa(f[b>>2]|0)|0);return}function Aca(a,b){a=a|0;b=b|0;tWa(a,b);KIa(a+-16+16|0,b);tWa(a,0);return}function Bca(a,b){a=a|0;b=b|0;tWa(a,b);LIa(a+-16+16|0,b);tWa(a,0);return}function Cca(a,b){a=a|0;b=b|0;tWa(a,b);NIa(a+-16+16|0,b);tWa(a,0);return}function Dca(a,b){a=a|0;b=b|0;tWa(a,b);OIa(a+-16+16|0,b);tWa(a,0);return}function Eca(a,b,c){a=a|0;b=b|0;c=c|0;if(!((c|0)==5?(K5(a+44|0,b)|0)!=0:0)){b=vZ(a+44|0,b)|0;f[b>>2]=c}return}function Fca(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;NMa(a,b);c=f[a+4>>2]|0;b=0;while(1){if((b|0)==(c|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=f[d+(b<<2)>>2];b=b+1|0}return}function Gca(a){a=a|0;a=a+16|0;while(1){if((Qu(f[a>>2]|0)|0)!=32?(Qu(f[a>>2]|0)|0)!=10:0)break;Ns(f[a>>2]|0)|0}return}function Hca(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Fg(a,f[b>>2]|0,f[c>>2]|0,d,e,g,120499,120507)|0}function Ica(a,b){a=a|0;b=b|0;b=(zRa(f[b>>2]|0)|0)+8|0;q2(a,f[b>>2]|0);return}function Jca(a,b){a=a|0;b=b|0;$Wa(a,b);lH(a+-16+16|0,b);$Wa(a,0);return}function Kca(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==112:0){e=a+2|0;d=Bc(e,c,d)|0;a=(d|0)==(e|0)?a:d}return a|0}function Lca(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[c+11>>0]|0;e=d<<24>>24<0;return $n(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}function Mca(a){a=a|0;EV(a);return}function Nca(a){a=a|0;var b=0,c=0;KA(a);c=f[a+8>>2]|0;b=f[a+4>>2]|0;while(1){if((b|0)==(c|0))break;ubb(f[b>>2]|0);b=b+4|0}Cja(a);return}function Oca(a,b){a=a|0;b=b|0;FL(a,iRa(f[b>>2]|0)|0);return}function Pca(a,b){a=a|0;b=b|0;$Wa(a,b);FH(a+-16+16|0,b);$Wa(a,0);return}function Qca(a,b){a=a|0;b=b|0;tWa(a,b);mJa(a+-16+16|0,b);tWa(a,0);return}function Rca(a,c){a=a|0;c=c|0;var d=0;d=u;u=u+16|0;if(b[a+104>>0]|0)bG(d,a+108|0,c,c);u=d;return}function Sca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Xp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function Tca(a){a=a|0;var b=0,c=0,d=0;d=a+8|0;b=f[a+12>>2]|0;a=f[d>>2]|0;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;if(c|0)oc[f[(f[c>>2]|0)+4>>2]&1023](c);a=a+4|0}uSa(d);return}function Uca(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return bh(a,f[b>>2]|0,f[c>>2]|0,d,e,g,31440,31472)|0}function Vca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)>256){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;WZ(a,122083,h7a(122083)|0)}else $Xa(a,c);return}function Wca(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=40488;c=b+4|0;b=a+4|0;a=c+60|0;do{f[c>>2]=f[b>>2];c=c+4|0;b=b+4|0}while((c|0)<(a|0));return}function Xca(a,b){a=a|0;b=b|0;vya(a+16|0,WQa(f[b>>2]|0)|0);return}function Yca(a,b){a=a|0;b=b|0;vya(a+16|0,XQa(f[b>>2]|0)|0);return}function Zca(a,b){a=a|0;b=b|0;vya(a+16|0,YQa(f[b>>2]|0)|0);return}function _ca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)!=(b|0)){a=a+4|0;d=(f[a>>2]|0)-c|0;if(d|0)fia(b|0,c|0,d|0)|0;f[a>>2]=b+(d>>3<<3)}return}function $ca(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-40|0;f[c>>2]=d;N2a(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function ada(a){a=a|0;RV(a);return}function bda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=n8(36)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=42324;e=d+12|0;nLa(e,b,f[c>>2]|0);f[a>>2]=e;f[a+4>>2]=d;return}function cda(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)>256){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;WZ(a,122226,h7a(122226)|0)}else $Xa(a,c);return}function dda(a,b){a=a|0;b=b|0;$Wa(a,b);OH(a+-16+16|0,b);$Wa(a,0);return}function eda(a,b){a=a|0;b=b|0;tWa(a,b);OJa(a+-16+16|0,b);tWa(a,0);return}function fda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Yp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function gda(a,b){a=a|0;b=b|0;var c=0;Ev(f[a+28>>2]|0,11)|0;b=a+60|0;c=f[b>>2]|0;if((f[a+56>>2]|0)==(c|0))Ca(111004,111024,378,111125);else{f[b>>2]=c+-4;return}}function hda(a){a=a|0;if((a|0)!=132632)or(f[a>>2]|0,a+4|0);return}function ida(a,b){a=a|0;b=b|0;var c=0;c=b+8|0;Lk(a,f[c>>2]|0)|0;c=em(a+64|0,c)|0;f[c>>2]=b;return a|0}function jda(a,b){a=a|0;b=b|0;vya(a+16|0,iRa(f[b>>2]|0)|0);return}function kda(a,b){a=a|0;b=b|0;vya(a+16|0,oRa(f[b>>2]|0)|0);return}function lda(a,b){a=a|0;b=b|0;var c=0;b=a+60|0;c=f[b>>2]|0;if((f[a+56>>2]|0)==(c|0))Ca(111004,111024,467,111043);else{f[b>>2]=c+-4;Ev(f[a+28>>2]|0,11)|0;return}}function mda(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;f[f[a>>2]>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4;b=b+4|0}return}function nda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;if(!b)d=0;else d=n8(b)|0;f[a>>2]=d;c=d+c|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+b;return}function oda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=a;a=b-a>>2;while(1){if(!a)break;b=(a|0)/2|0;g=d+(b<<2)|0;e=(f[g>>2]|0)>>>0>>0;d=e?g+4|0:d;a=e?a+-1-b|0:b}return d|0}function pda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=nSa(f[a>>2]|0)|0;f[a+4>>2]=d;f[a+24>>2]=f[b>>2];h0(a+8|0,c);return a|0}function qda(a,b){a=a|0;b=b|0;tWa(a,b);jKa(a+-16+16|0,b);tWa(a,0);return}function rda(a){a=a|0;var c=0,d=0,e=0;d=f[a>>2]|0;e=b[d>>0]|0;if(!(Uab(e<<24>>24)|0))c=0;else{c=0;do{c=(c*10|0)+-48+(e<<24>>24)|0;d=d+1|0;f[a>>2]=d;e=b[d>>0]|0}while((Uab(e<<24>>24)|0)!=0)}return c|0}function sda(a){a=a|0;var b=0;b=a+4|0;D$(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function tda(a){a=a|0;ES(f[a+4>>2]|0);return}function uda(a,b){a=a|0;b=b|0;$Wa(a,b);aI(a+-16+16|0,b);$Wa(a,0);return}function vda(a,b){a=a|0;b=b|0;tWa(a,b);GKa(a+-16+16|0,b);tWa(a,0);return}function wda(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;tQa(a,b);c=f[a+4>>2]|0;b=0;while(1){if((b|0)==(c|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=f[d+(b<<2)>>2];b=b+1|0}return}function xda(a){a=a|0;fQ(f[a+4>>2]|0);return}function yda(a){a=a|0;jQ(f[a+4>>2]|0);return}function zda(a){a=a|0;gQ(f[a+4>>2]|0);return}function Ada(a){a=a|0;hQ(f[a+4>>2]|0);return}function Bda(a){a=a|0;iQ(f[a+4>>2]|0);return}function Cda(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=43856;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];return}function Dda(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=44504;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function Eda(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;b=a+20|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f4a(a+48|0,0);return}function Fda(a,b){a=a|0;b=b|0;vya(a+16|0,IRa(f[b>>2]|0)|0);return}function Gda(a,b){a=a|0;b=b|0;vya(a+16|0,yRa(f[b>>2]|0)|0);return}function Hda(a,b){a=a|0;b=b|0;vya(a+16|0,zRa(f[b>>2]|0)|0);return}function Ida(a,b){a=a|0;b=b|0;vya(a+16|0,ARa(f[b>>2]|0)|0);return}function Jda(a,b){a=a|0;b=b|0;a=f[(f[a+4>>2]|0)+36>>2]|0;pc[f[(f[a>>2]|0)+20>>2]&4095](a,b);return}function Kda(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;I_a(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function Lda(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,124179);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50492;Pa(a|0,39504,418)}}function Mda(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,124179);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}function Nda(a,b){a=a|0;b=b|0;tWa(a,b);WU(a+-16|0,b);tWa(a,0);return}function Oda(a,b){a=a|0;b=b|0;tWa(a,b);YKa(a+-16+16|0,b);tWa(a,0);return}function Pda(a,b){a=a|0;b=b|0;var c=0;c=x0(f[b+36>>2]|0)|0;b=(Wl(f[a+44>>2]|0,b)|0)+4|0;f[b>>2]=c;return}function Qda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Zp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function Rda(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;nH(c+8|0,a,b,d);u=c;return}function Sda(a,c){a=a|0;c=c|0;b[a>>0]=0;f[a+4>>2]=c;c=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;if(!(f[c+16>>2]|0)){c=f[c+72>>2]|0;if(c|0)du(c)|0;b[a>>0]=1}return}function Tda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return hh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Uda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return ih(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Vda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return jh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Wda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Tg(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Xda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Ug(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Yda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Vg(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Zda(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,122347);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50492;Pa(a|0,39504,418)}}function _da(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,122347);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}function $da(a,b){a=a|0;b=b|0;vya(a+16|0,JRa(f[b>>2]|0)|0);return}function aea(a,b){a=a|0;b=b|0;vya(a+16|0,KRa(f[b>>2]|0)|0);return}function bea(a,b){a=a|0;b=b|0;vya(a+16|0,LRa(f[b>>2]|0)|0);return}function cea(a,b){a=a|0;b=b|0;vya(a+16|0,WRa(f[b>>2]|0)|0);return}function dea(a,b){a=a|0;b=b|0;vya(a+16|0,XRa(f[b>>2]|0)|0);return}function eea(a,b){a=a|0;b=b|0;Axa(a,rQa(f[b>>2]|0)|0);return}function fea(a,b){a=a|0;b=b|0;var c=0;c=tPa(f[a+4>>2]|0,75599)|0;wfa(c,G3(f[b+8>>2]|0,f[a>>2]|0)|0)|0;return}function gea(a){a=a|0;uSa(a+152|0);uSa(a+140|0);NQa(a+120|0);iM(a);return}function hea(a){a=a|0;var b=0,c=0;b=n8(60)|0;x=0;ta(442,b|0);c=x;x=0;if(c&1){c=Ia()|0;ubb(b);Ua(c|0)}else{J_(a,b);return}}function iea(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+8|0;a=b;b=f[c>>2]|0;do{d=b;f[d>>2]=0;f[d+4>>2]=0;b=(f[c>>2]|0)+8|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function jea(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-24|0;f[c>>2]=d;cQa(d)}a=f[a>>2]|0;if(a|0)ubb(a);return}function kea(a,b){a=a|0;b=b|0;$Wa(a,b);vI(a+-16+16|0,b);$Wa(a,0);return}function lea(a,b){a=a|0;b=b|0;$Wa(a,b);wI(a+-16+16|0,b);$Wa(a,0);return}function mea(a,b){a=a|0;b=b|0;tWa(a,b);TM(a+-16|0,b);tWa(a,0);return}function nea(a,b){a=a|0;b=b|0;tWa(a,b);UM(a+-16|0,b);tWa(a,0);return}function oea(a,b){a=a|0;b=b|0;tWa(a,b);VM(a+-16|0,b);tWa(a,0);return}function pea(a,b){a=a|0;b=b|0;tWa(a,b);WM(a+-16|0,b);tWa(a,0);return}function qea(a,b){a=a|0;b=b|0;tWa(a,b);XM(a+-16|0,b);tWa(a,0);return}function rea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Np(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function sea(a){a=a|0;var b=0,c=0,d=0,e=0;c=a+32|0;d=a+36|0;b=f[a+40>>2]|0;while(1){if(!b)break;e=b+-1|0;qc[f[(f[c>>2]|0)+(e<<2)>>2]&255](0,a,f[(f[d>>2]|0)+(e<<2)>>2]|0);b=e}return}function tea(a,b){a=a|0;b=b|0;vya(a+16|0,gSa(f[b>>2]|0)|0);return}function uea(a,b){a=a|0;b=b|0;vya(a+16|0,YRa(f[b>>2]|0)|0);return}function vea(a,b){a=a|0;b=b|0;vya(a+16|0,ZRa(f[b>>2]|0)|0);return}function wea(a,b){a=a|0;b=b|0;vya(a+16|0,_Ra(f[b>>2]|0)|0);return}function xea(a,b){a=a|0;b=b|0;vya(a+16|0,hSa(f[b>>2]|0)|0);return}function yea(a,b){a=a|0;b=b|0;Axa(a,DQa(f[b>>2]|0)|0);return}function zea(a,b){a=a|0;b=b|0;var c=0;c=YTa(f[a+4>>2]|0)|0;if((XXa(b)|0)>>>0>1){b=UQa(a,Or(b,1)|0)|0;f[c+8>>2]=b}return c|0}function Aea(a){a=a|0;uSa(a+152|0);uSa(a+140|0);NQa(a+120|0);lM(a);return}function Bea(a){a=a|0;mW(a);return}function Cea(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;if(vab(f[a>>2]|0)|0){b=Kya(a,0)|0;b=FBa(f[b>>2]|0,c)|0}else b=0;u=d;return b|0}function Dea(a,b){a=a|0;b=b|0;$Wa(a,b);FI(a+-16+16|0,b);$Wa(a,0);return}function Eea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;qq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function Fea(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;bG(c,a+64|0,b,b);u=c;return}function Gea(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;bG(c,a+52|0,b,b);u=c;return}function Hea(a,b){a=a|0;b=b|0;yza(a);f[a>>2]=44788;f[a+44>>2]=b;return}function Iea(a){a=a|0;v4(a);return}function Jea(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=d-c|0;a=g;g=c;while(1){if((g|0)==(d|0))break;i=f[g>>2]|0;b[a>>0]=i>>>0<128?i&255:e;a=a+1|0;g=g+4|0}return c+(h>>>2<<2)|0}function Kea(a,b){a=a|0;b=b|0;var c=0;c=g0a(a,0)|0;if(FBa(f[c>>2]|0,133172)|0){c=g0a(a,1)|0;Nqa(Bbb(f[c>>2]|0)|0,b)|0;return}else Ca(66856,75338,1397,66874)}function Lea(a,b){a=a|0;b=b|0;var c=0;c=g0a(a,0)|0;if(FBa(f[c>>2]|0,132852)|0){c=g0a(a,1)|0;Nqa(Bbb(f[c>>2]|0)|0,b)|0;return}else Ca(66731,75338,1640,66749)}function Mea(a,b){a=a|0;b=b|0;vya(a+16|0,iSa(f[b>>2]|0)|0);return}function Nea(a,b){a=a|0;b=b|0;Axa(a,EQa(f[b>>2]|0)|0);return}function Oea(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];if((a|0)!=(b|0))gx(a+4|0,f[b+4>>2]|0,f[b+8>>2]|0);return a|0}function Pea(){var a=0,b=0,c=0,d=0;d=u;u=u+16|0;a=d;b=f[32963]|0;c=(f[32964]|0)-b>>2;if(c>>>0>1){c=f[b+(c+-2<<2)>>2]|0;f[a>>2]=c;a=c}else{f4a(a,0);a=f[a>>2]|0}u=d;return a|0}function Qea(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;bG(c,a+24|0,b,b);u=c;return}function Rea(a,b){a=a|0;b=b|0;b=_2(a,b)|0;return gNa(f[a+32>>2]|0,b)|0}function Sea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if($1a(a,f[b+8>>2]|0)|0)jJ(b,c,d,e);return}function Tea(a,b){a=a|0;b=b|0;var c=0;c=g0a(a,0)|0;if(FBa(f[c>>2]|0,133120)|0){c=g0a(a,2)|0;Nqa(Bbb(f[c>>2]|0)|0,b)|0;return}else Ca(66315,75338,1434,66331)}function Uea(a,b){a=a|0;b=b|0;$Wa(a,b);XI(a+-16+16|0,b);$Wa(a,0);return}function Vea(a,b){a=a|0;b=b|0;$Wa(a,b);YI(a+-16+16|0,b);$Wa(a,0);return}function Wea(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];if((a|0)!=(b|0))Ay(a+4|0,f[b+4>>2]|0,f[b+8>>2]|0);return a|0}function Xea(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=0;do{i=a;a=a>>>7;g=Iab(a)|0;h=e;e=e+1|0;b[(f[c>>2]|0)+(h+d)>>0]=g?i|128:i&127}while(g);return e|0}function Yea(a){a=a|0;var b=0,c=0;b=f[a>>2]|0;c=a+4|0;f[a>>2]=c;f[(f[c>>2]|0)+8>>2]=0;f[c>>2]=0;f[a+8>>2]=0;a=f[b+4>>2]|0;return ((a|0)==0?b:a)|0}function Zea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return ch(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function _ea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return nh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function $ea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return oh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function afa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Yg(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function bfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return fh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function cfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return eh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function dfa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{kqa(a,+((f[b+8>>2]|0)>>>0));break}case 2:{b=b+8|0;kqa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+((f[b+4>>2]|0)>>>0));break}default:hb()}return}function efa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{CAa(a,+((f[b+8>>2]|0)>>>0));break}case 2:{b=b+8|0;CAa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+((f[b+4>>2]|0)>>>0));break}default:hb()}return}function ffa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;KH(a,b);b=b+16|0}return}function gfa(a,b){a=a|0;b=b|0;Axa(a,SQa(f[b>>2]|0)|0);return}function hfa(a,b){a=a|0;b=b|0;Axa(a,KQa(f[b>>2]|0)|0);return}function ifa(a,b){a=a|0;b=b|0;Axa(a,LQa(f[b>>2]|0)|0);return}function jfa(a,b){a=a|0;b=b|0;var c=0;c=b+8|0;tQ(a,c);if(!(Iab(f[c>>2]|0)|0))BVa(f[a+16>>2]|0,f[b+12>>2]|0)|0;return}function kfa(a){a=a|0;var c=0,d=0;if(!(b[a+8>>0]|0)){d=a+4|0;c=(f[d>>2]|0)+-1|0;f[d>>2]=c;Iwa(f[a>>2]|0,c)|0}zma(f[a>>2]|0,41)|0;return}function lfa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;a=c-b|0;if((a|0)>0){Iu(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+(a>>>3<<3)}return}function mfa(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;while(1){a=f[a>>2]|0;if(!a){a=0;break}c=f[a+16>>2]|0;if(c>>>0<=b>>>0){if(c>>>0>=b>>>0){a=1;break}a=a+4|0}}return a|0}function nfa(a,b){a=a|0;b=b|0;vya(a+16|0,qSa(f[b>>2]|0)|0);return}function ofa(a,b){a=a|0;b=b|0;$Wa(a,b);sJ(a+-16+16|0,b);$Wa(a,0);return}function pfa(a,b){a=a|0;b=b|0;$Wa(a,b);tJ(a+-16+16|0,b);$Wa(a,0);return}function qfa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;bq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function rfa(a){a=a|0;U4(a);return}function sfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return dh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function tfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return ph(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function ufa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return _g(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function vfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return gh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function wfa(a,b){a=a|0;b=b|0;if(!b)yCa(a,56444)|0;else yCa(zma(a,36)|0,b)|0;return a|0}function xfa(a){a=a|0;uSa(a+56|0);LNa(a+44|0);mIa(a+12|0);uSa(a);return}function yfa(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-20|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)ubb(a);return}function zfa(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;LK(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function Afa(a,b){a=a|0;b=b|0;Axa(a,WQa(f[b>>2]|0)|0);return}function Bfa(a,b){a=a|0;b=b|0;Axa(a,XQa(f[b>>2]|0)|0);return}function Cfa(a,b){a=a|0;b=b|0;Axa(a,YQa(f[b>>2]|0)|0);return}function Dfa(a,b){a=a|0;b=b|0;$Wa(a,b);RJ(a+-16+16|0,b);$Wa(a,0);return}function Efa(a,b){a=a|0;b=b|0;$Wa(a,b);SJ(a+-16+16|0,b);$Wa(a,0);return}function Ffa(a,b){a=a|0;b=b|0;$Wa(a,b);TJ(a+-16+16|0,b);$Wa(a,0);return}function Gfa(a,b){a=a|0;b=b|0;$Wa(a,b);UJ(a+-16+16|0,b);$Wa(a,0);return}function Hfa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;cq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function Ifa(a,b){a=a|0;b=b|0;var c=0;if(!(f[(f[a+36>>2]|0)+(b<<2)>>2]|0)){c=(f[a+24>>2]|0)+(b>>>5<<2)|0;f[c>>2]=f[c>>2]&~(1<<(b&31))}c=(f[a+48>>2]|0)+(b<<2)|0;f[c>>2]=(f[c>>2]|0)+1;return}function Jfa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;f[d>>2]=b;g=a+56|0;e=f[g>>2]|0;f[g>>2]=e+1;f[b+100>>2]=e;TV(a,d);u=c;return}function Kfa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Lfa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=MV(a,b)|0;return U2(d,O4(a,b,c)|0)|0}function Mfa(a){a=a|0;NQa(a+24|0);JHa(a);return}function Nfa(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+4|0;a=b;b=f[c>>2]|0;do{d=b;f[d>>2]=0;f[d+4>>2]=0;b=(f[c>>2]|0)+8|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Ofa(a){a=a|0;RU(f[a+4>>2]|0);return}function Pfa(a,b){a=a|0;b=b|0;Axa(a,iRa(f[b>>2]|0)|0);return}function Qfa(a,b){a=a|0;b=b|0;Axa(a,oRa(f[b>>2]|0)|0);return}function Rfa(a,b){a=a|0;b=b|0;tWa(a,b);Q8(a+-16|0,b);tWa(a,0);return}function Sfa(a,b){a=a|0;b=b|0;$Wa(a,b);hK(a+-16+16|0,b);$Wa(a,0);return}function Tfa(a,b){a=a|0;b=b|0;$Wa(a,b);iK(a+-16+16|0,b);$Wa(a,0);return}function Ufa(a,b){a=a|0;b=b|0;$Wa(a,b);jK(a+-16+16|0,b);$Wa(a,0);return}function Vfa(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;nH(c,a+40|0,f[b>>2]|0,b);u=c;return}function Wfa(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;nH(c,a+28|0,f[b>>2]|0,b);u=c;return}function Xfa(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;bG(c,a+80|0,b,b);u=c;return}function Yfa(a,b){a=+a;b=+b;var c=0,d=0;p[s>>3]=a;d=f[s>>2]|0;c=f[s+4>>2]|0;p[s>>3]=b;c=f[s+4>>2]&-2147483648|c&2147483647;f[s>>2]=d;f[s+4>>2]=c;return +(+p[s>>3])}function Zfa(a){a=a|0;var b=0,c=0;c=f[32836]|0;b=(f[32837]|0)-c>>2;if(b>>>0>=a>>>0){if(b>>>0>a>>>0)f[32837]=c+(a<<2)}else pD(a-b|0);return}function _fa(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-12|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)ubb(a);return}function $fa(a,b,c){a=a|0;b=b|0;c=c|0;return fsa(a+4|0,b,f[c>>2]|0)|0}function aga(a,b,c){a=a|0;b=b|0;c=c|0;return gsa(a+4|0,b,f[c>>2]|0)|0}function bga(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;while(1){b=Lc(a,b)|0;if(!b)break;BVa(f[c>>2]|0,b)|0}return}function cga(a){a=a|0;HW(a);return}function dga(a,b){a=a|0;b=b|0;fE(a,SQa(f[b>>2]|0)|0);return}function ega(a,b){a=a|0;b=b|0;tWa(a,b);iNa(a+-16+16|0,b);tWa(a,0);return}function fga(a,b){a=a|0;b=b|0;$Wa(a,b);xK(a+-16+16|0,b);$Wa(a,0);return}function gga(a,b){a=a|0;b=b|0;$Wa(a,b);yK(a+-16+16|0,b);$Wa(a,0);return}function hga(a,b){a=a|0;b=b|0;$Wa(a,b);BK(a+-16+16|0,b);$Wa(a,0);return}function iga(a,b){a=a|0;b=b|0;$Wa(a,b);CK(a+-16+16|0,b);$Wa(a,0);return}function jga(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;f[c>>2]=f[a>>2];while(1){e=(f[c>>2]|0)+(4-1)&~(4-1);a=f[e>>2]|0;f[c>>2]=e+4;if(b>>>0>1)b=b+-1|0;else break}u=d;return a|0}function kga(a){a=a|0;vT(f[a+4>>2]|0);return}function lga(a){a=a|0;wT(f[a+4>>2]|0);return}function mga(a){a=a|0;RS(a,f[a+4>>2]|0);return}function nga(a){a=a|0;hV(f[a+4>>2]|0);return}function oga(a){a=a|0;f[a>>2]=45268;NQa(a+76|0);Uma(a+56|0);hRa(a);return}function pga(a,b){a=a|0;b=b|0;$Wa(a,b);yD(a,b);$Wa(a,0);return}function qga(a,c){a=a|0;c=c|0;a:do if(!(b[a+24>>0]|0)){switch(f[c+8>>2]|0){case 31:case 30:case 29:case 28:case 6:case 5:case 4:case 3:break;default:break a}b[a+78>>0]=1}while(0);return}function rga(a,b,c){a=a|0;b=b|0;c=c|0;if(!(sab(f[b>>2]|0)|0)?w_(b)|0:0){b=KDa(b,c)|0;PK(a,b)|0}return b|0}function sga(a,b){a=a|0;b=b|0;iH(a,b+36|0);return}function tga(a,b){a=a|0;b=b|0;Axa(a,IRa(f[b>>2]|0)|0);return}function uga(a,b){a=a|0;b=b|0;Axa(a,yRa(f[b>>2]|0)|0);return}function vga(a,b){a=a|0;b=b|0;Axa(a,zRa(f[b>>2]|0)|0);return}function wga(a,b){a=a|0;b=b|0;Axa(a,ARa(f[b>>2]|0)|0);return}function xga(a,b){a=a|0;b=b|0;$Wa(a,b);TK(a+-16+16|0,b);$Wa(a,0);return}function yga(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Pp(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function zga(a){a=a|0;hR(f[a+4>>2]|0);return}function Aga(a,b){a=a|0;b=b|0;var c=0;y7(a);f[a>>2]=2;c=fFa()|0;f[a+8>>2]=c;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];return a|0}function Bga(a,c){a=a|0;c=c|0;do if(Iab(f[c+4>>2]|0)|0)a=0;else{if(b[a+93>>0]|0?(f[(f[a+120>>2]|0)+(f[c+8>>2]<<2)>>2]|0)>>>0>1:0){a=0;break}a=1}while(0);return a|0}function Cga(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=u;u=u+16|0;h=g;f[h>>2]=e;e=kRa(c)|0;c=lG(a,b,d,h)|0;if(e|0)kRa(e)|0;u=g;return c|0}function Dga(a){a=a|0;var b=0,c=0;switch(f[a>>2]|0){case 3:case 1:{c=f[a+8>>2]|0;b=((c|0)<0)<<31>>31;break}case 4:case 2:{c=a+8|0;b=f[c+4>>2]|0;c=f[c>>2]|0;break}default:hb()}I=b;return c|0}function Ega(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 zna(a,F$(a,b,c)|0,d,e,f)|0}function Fga(a,b){a=a|0;b=b|0;Axa(a,JRa(f[b>>2]|0)|0);return}function Gga(a,b){a=a|0;b=b|0;Axa(a,KRa(f[b>>2]|0)|0);return}function Hga(a,b){a=a|0;b=b|0;Axa(a,LRa(f[b>>2]|0)|0);return}function Iga(a,b){a=a|0;b=b|0;Axa(a,WRa(f[b>>2]|0)|0);return}function Jga(a,b){a=a|0;b=b|0;Axa(a,XRa(f[b>>2]|0)|0);return}function Kga(a,b){a=a|0;b=b|0;tWa(a,b);ICa(a+-16|0,b);tWa(a,0);return}function Lga(a,b){a=a|0;b=b|0;$Wa(a,b);hL(a+-16+16|0,b);$Wa(a,0);return}function Mga(a,b){a=a|0;b=b|0;$Wa(a,b);iL(a+-16+16|0,b);$Wa(a,0);return}function Nga(a,b){a=a|0;b=b|0;$Wa(a,b);jL(a+-16+16|0,b);$Wa(a,0);return}function Oga(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Qp(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0)|0;return}function Pga(a){a=a|0;O5(a);return}function Qga(a,b){a=a|0;b=b|0;var c=0;c=Bbb(b)|0;if(Gab(f[b>>2]|0)|0){c=pPa(c)|0;return VX(a,f[c>>2]|0)|0}else Ca(66667,75338,1625,66683);return 0}function Rga(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)!=(c|0)){d=X(f[a+132>>2]|0,c>>>0>>0?c:b)|0;b=d+(b>>>0>>0?c:b)|0;c=(f[a+184>>2]|0)+(b>>>5<<2)|0;f[c>>2]=1<<(b&31)|f[c>>2]}return}function Sga(a){a=a|0;var b=0,c=0;c=f[a>>2]|0;a=(f[a+4>>2]|0)-c|0;b=a>>2;if(!a)Ca(115504,115512,37,115541);a=0;while(1){if((a|0)==(b|0))break;f[c+(a<<2)>>2]=a;a=a+1|0}return}function Tga(a,c){a=a|0;c=c|0;cHa(a);f[a>>2]=43472;b[a+44>>0]=c&1;c=a+48|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+64>>2]=1065353216;return}function Uga(a,b,c){a=a|0;b=b|0;c=c|0;if($Sa(a,b)|0){c=b+(xab(c)|0)|0;a=a+4096|0;if((c|0)==(f[a>>2]|0))f[a>>2]=b}else rg(b);return}function Vga(a,c){a=a|0;c=c|0;bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=TTa(f[c>>2]|0,135192)|0;f[a+36>>2]=c;c=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=c;return}function Wga(a,c){a=a|0;c=c|0;bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=TTa(f[c>>2]|0,135184)|0;f[a+36>>2]=c;c=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=c;return}function Xga(a){a=a|0;var b=0,c=0,d=0;b=n8(12)|0;f[b>>2]=40576;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function Yga(a){a=a|0;var b=0,c=0,d=0;b=n8(12)|0;f[b>>2]=40532;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function Zga(a,b){a=a|0;b=b|0;Uua(a,iRa(f[b>>2]|0)|0);return}function _ga(a,b){a=a|0;b=b|0;Uua(a,oRa(f[b>>2]|0)|0);return}function $ga(a,b){a=a|0;b=b|0;Axa(a,gSa(f[b>>2]|0)|0);return}function aha(a,b){a=a|0;b=b|0;Axa(a,YRa(f[b>>2]|0)|0);return}function bha(a,b){a=a|0;b=b|0;Axa(a,ZRa(f[b>>2]|0)|0);return}function cha(a,b){a=a|0;b=b|0;Axa(a,_Ra(f[b>>2]|0)|0);return}function dha(a,b){a=a|0;b=b|0;Axa(a,hSa(f[b>>2]|0)|0);return}function eha(a,b){a=a|0;b=b|0;sOa(a);f[a>>2]=39832;f[a+4>>2]=b;return}function fha(a,b){a=a|0;b=b|0;a=tPa(a,75610)|0;zma(wfa(a,f[b+24>>2]|0)|0,41)|0;return}function gha(a,b){a=a|0;b=b|0;var c=0;c=f[a+44>>2]|0;a=b+24|0;b=p_(c,a)|0;if((b|0)!=(c+4|0))f[a>>2]=f[b+20>>2];return}function hha(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;return mc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function iha(a,b){a=a|0;b=b|0;lXa(a);f[a+24>>2]=b;b=a+28|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+44>>2]=1065353216;return}function jha(a,b){a=a|0;b=b|0;return IOa(a+32|0,_2(a,b)|0)|0}function kha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>2;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<2)}else KF(a,b-d|0);return}function lha(a){a=a|0;if(!a)return;else{lha(f[a>>2]|0);lha(f[a+4>>2]|0);ubb(a);return}}function mha(a){a=a|0;LT(f[a+4>>2]|0);return}function nha(a){a=a|0;Y5(a);return}function oha(a){a=a|0;var b=0;a=a+8|0;b=kRa(f[a>>2]|0)|0;if(b|0)kRa(b)|0;a=f[a>>2]|0;if(!a)return 1;a=kRa(a)|0;b=r6a()|0;if(a|0)kRa(a)|0;return (b|0)==1|0}function pha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b+12|0;c=b+16|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;b=b+8|0;a=mBa(f[a>>2]|0,20,f[b>>2]|0)|0;f[b>>2]=a;return}function qha(a,b){a=a|0;b=b|0;bF(a,SQa(f[b>>2]|0)|0);return}function rha(a,b){a=a|0;b=b|0;Axa(a,iSa(f[b>>2]|0)|0);return}function sha(a,b){a=a|0;b=b|0;tWa(a,b);xU(a+-16|0,b);tWa(a,0);return}function tha(a){a=a|0;var c=0;b[a>>0]=0;b[a+1>>0]=0;c=a+4|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[a+32>>2]=1065353216;f[a+36>>2]=0;return}function uha(a){a=a|0;sDa(a+48|0);usa(a+36|0);xVa(a);return}function vha(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-8|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)ubb(a);return}function wha(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-16|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)ubb(a);return}function xha(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{kqa(a,+(f[b+8>>2]|0));break}case 2:{b=b+8|0;kqa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+(f[b+4>>2]|0));break}default:hb()}return}function yha(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{CAa(a,+(f[b+8>>2]|0));break}case 2:{b=b+8|0;CAa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+(f[b+4>>2]|0));break}default:hb()}return}function zha(a,b,c){a=a|0;b=b|0;c=c|0;if($1a(b,f[33215]|0)|0)c=Qga(a,c)|0;else c=pv(a,b,c)|0;return c|0}function Aha(a){a=a|0;var b=0;switch(a|0){case 0:{b=73268;break}case 1:{b=73264;break}case 2:{b=117046;break}case 3:{b=73260;break}case 4:{b=73256;break}case 5:{b=101332;break}default:hb()}return b|0}function Bha(a,b){a=a|0;b=b|0;iH(a,b+8|0);return}function Cha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)!=(b|0)){a=a+4|0;d=(f[a>>2]|0)-c|0;if(d|0)fia(b|0,c|0,d|0)|0;f[a>>2]=b+(((d|0)/12|0)*12|0)}return}function Dha(a,b){a=a|0;b=b|0;_l(a,DQa(f[b>>2]|0)|0);return}function Eha(a,b){a=a|0;b=b|0;$Wa(a,b);HL(a+-16+16|0,b);$Wa(a,0);return}function Fha(a){a=a|0;EIa(a);f[a>>2]=45668;SIa(a+44|0);yUa(a+108|0);f[a+120>>2]=0;f[a+124>>2]=0;f[a+128>>2]=0;return}function Gha(a,b){a=a|0;b=b|0;var c=0;c=n8(12)|0;c1a(c);b=f[b>>2]|0;f[c>>2]=b;f[c+4>>2]=b;f[c+8>>2]=0;Xs(f[f[a>>2]>>2]|0,c);return}function Hha(a){a=+a;var b=0,c=0;c=u;u=u+16|0;b=c;n[b>>2]=a;if(((D$a(a)|0)&2147483647)>>>0>2139095040){b=(v8a(b)|0)&8388607;u=c;return b|0}else Ca(75414,75448,105,75471);return 0}function Iha(a,b){a=a|0;b=b|0;rGa(a,rQa(f[b>>2]|0)|0);return}function Jha(a,b){a=a|0;b=b|0;sGa(a,rQa(f[b>>2]|0)|0);return}function Kha(a,b){a=a|0;b=b|0;Axa(a,qSa(f[b>>2]|0)|0);return}function Lha(a){a=a|0;var b=0,c=0;f[a>>2]=42936;NQa(a+48|0);c=a+44|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)ubb(b);LTa(a);return}function Mha(a){a=a|0;f[a>>2]=42736;uSa(a+72|0);M9(a+60|0);uSa(a+48|0);LTa(a);return}function Nha(a){a=a|0;var b=0,c=0;c=a+4|0;b=0;while(1){if(b>>>0>=(f[f[a>>2]>>2]|0)>>>0)break;zma(f[c>>2]|0,32)|0;b=b+1|0}return}function Oha(a,b){a=a|0;b=b|0;$Wa(a,b);QL(a+-16+16|0,b);$Wa(a,0);return}function Pha(a,b){a=a|0;b=b|0;$Wa(a,b);RL(a+-16+16|0,b);$Wa(a,0);return}function Qha(a,c){a=a|0;c=c|0;var d=0;d=(Hr(a,f[c+24>>2]|0)|0)+2|0;a=d+(Hr(a,f[c+28>>2]|0)|0)|0;return a+(0-(b[c+20>>0]|0)&10)|0}function Rha(a,b){a=a|0;b=b|0;var c=0;c=n8(48)|0;Fwa(c,b);J_(a,c);return}function Sha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;a=c-b|0;if((a|0)>0){Iu(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+(a>>>2<<2)}return}function Tha(a){a=a|0;fU(f[a+4>>2]|0);return}function Uha(a){a=a|0;L6(a);return}function Vha(a){a=a|0;M6(a);return}function Wha(a){a=a|0;N6(a);return}function Xha(a){a=a|0;O6(a);return}function Yha(a){a=a|0;P6(a);return}function Zha(){var a=0;if((b[130800]|0)==0?PWa(130800)|0:0){a=yb(76159)|0;f[33178]=a}if((b[130808]|0)==0?PWa(130808)|0:0){a=f[33178]|0;if(!a)a=0;else a=yR(a)|0;f[33179]=a}return f[33179]|0}function _ha(a,b){a=a|0;b=b|0;rGa(a,DQa(f[b>>2]|0)|0);return}function $ha(a,b){a=a|0;b=b|0;sGa(a,DQa(f[b>>2]|0)|0);return}function aia(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=n8(20)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[d>>2];b[a+8>>0]=1;return}function bia(a,b){a=a|0;b=b|0;$Wa(a,b);UL(a+-16+16|0,b);$Wa(a,0);return}function cia(a,b){a=a|0;b=b|0;tWa(a,b);xl(a+-16|0,b);tWa(a,0);return}function dia(a,b){a=a|0;b=b|0;tWa(a,b);Q7(a+-16|0,b);tWa(a,0);return}function eia(a,b){a=a|0;b=b|0;tWa(a,b);Cv(a+-16|0,b);tWa(a,0);return}function fia(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Iu(a,c,d)|0;return a|0}function gia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+b}else WF(a,b-d|0);return}function hia(a){a=a|0;iU(f[a+4>>2]|0);return}function iia(a,b){a=a|0;b=b|0;rGa(a,EQa(f[b>>2]|0)|0);return}function jia(a,b){a=a|0;b=b|0;sGa(a,EQa(f[b>>2]|0)|0);return}function kia(a){a=a|0;var b=0;b=n8(48)|0;x=0;ua(87,b|0,f[a+44>>2]|0);a=x;x=0;if(a&1){a=Ia()|0;ubb(b);Ua(a|0)}else return b|0;return 0}function lia(a,b){a=a|0;b=b|0;var c=0;c=n8(12)|0;f[c+8>>2]=f[b>>2];f[c+4>>2]=a;b=f[a>>2]|0;f[c>>2]=b;f[b+4>>2]=c;f[a>>2]=c;b=a+8|0;f[b>>2]=(f[b>>2]|0)+1;return}function mia(a,b){a=a|0;b=b|0;var c=0,d=0;switch(a|0){case 0:{c=b;break}case -1:{a=f[33448]|0;d=3;break}default:d=3}if((d|0)==3)if((a|0)==22)c=135337;else hb();return c|0}function nia(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=40576;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function oia(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=40532;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function pia(a,b){a=a|0;b=b|0;rE(a,iRa(f[b>>2]|0)|0);return}function qia(a,b){a=a|0;b=b|0;$Wa(a,b);ZL(a+-16+16|0,b);$Wa(a,0);return}function ria(a,b){a=a|0;b=b|0;tWa(a,b);jpa(a+-16|0,b);tWa(a,0);return}function sia(a,b){a=a|0;b=b|0;tWa(a,b);DL(a+-16|0,b);tWa(a,0);return}function tia(a){a=a|0;var b=0;TIa(a);f[a>>2]=42936;b=a+44|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[a+64>>2]=1065353216;return}function uia(a){a=a|0;uW(f[a+4>>2]|0);return}function via(a){a=a|0;var b=0;b=f[(f[a+12>>2]|0)+4>>2]|0;a=a+4|0;do if((b|0)!=5)if(Iab(f[a>>2]|0)|0){f[a>>2]=b;break}else{f[a>>2]=0;break}else f[a>>2]=5;while(0);return}function wia(a,b){a=a|0;b=b|0;rGa(a,SQa(f[b>>2]|0)|0);return}function xia(a,b){a=a|0;b=b|0;rGa(a,KQa(f[b>>2]|0)|0);return}function yia(a,b){a=a|0;b=b|0;rGa(a,LQa(f[b>>2]|0)|0);return}function zia(a,b){a=a|0;b=b|0;sGa(a,SQa(f[b>>2]|0)|0);return}function Aia(a,b){a=a|0;b=b|0;sGa(a,KQa(f[b>>2]|0)|0);return}function Bia(a,b){a=a|0;b=b|0;sGa(a,LQa(f[b>>2]|0)|0);return}function Cia(a,b){a=a|0;b=b|0;No(a,ARa(f[b>>2]|0)|0);return}function Dia(a,c){a=a|0;c=c|0;f[a>>2]=c;q8(a+4|0,42);b[a+2504>>0]=1;return}function Eia(a){a=a|0;var b=0,c=0;switch(f[a>>2]|0){case 1:{c=f[a+8>>2]|0;b=((c|0)<0)<<31>>31;break}case 2:{c=a+8|0;b=f[c+4>>2]|0;c=f[c>>2]|0;break}default:hb()}I=b;return c|0}function Fia(a){a=a|0;MK(a+44|0);zva(a+64|0);return}function Gia(a,b){a=a|0;b=b|0;gk(a,SQa(f[b>>2]|0)|0);return}function Hia(a,b){a=a|0;b=b|0;$Wa(a,b);fM(a+-16+16|0,b);$Wa(a,0);return}function Iia(a,b){a=a|0;b=b|0;tWa(a,b);HDa(a+-16|0,b);tWa(a,0);return}function Jia(a,b){a=a|0;b=b|0;tWa(a,b);NE(a+-16|0,b);tWa(a,0);return}function Kia(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a+16>>2]|0;c=Bbb(f[d>>2]|0)|0;BVa(d,b)|0;yE(a+44|0,c,b);return b|0}function Lia(a){a=a|0;B7(a);return}function Mia(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{CAa(a,+A0a(+(+ONa(b))));break}case 4:{kqa(a,+A0a(+(+NNa(b))));break}default:hb()}return}function Nia(){var a=0,b=0,c=0;a=n8(60)|0;b=a;c=b+60|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));bra(a);return a|0}function Oia(a){a=a|0;var b=0,c=0;b=a+4|0;c=Bbb(f[(f[b>>2]|0)+84>>2]|0)|0;a=a+12|0;QPa(c,f[a>>2]|0,0);ZCa(f[b>>2]|0,f[a>>2]|0)|0;return}function Pia(a,b,c){a=a|0;b=b|0;c=c|0;if(b>>>0>>0){b=(X(f[a+132>>2]|0,b)|0)+c|0;c=(f[a+184>>2]|0)+(b>>>5<<2)|0;f[c>>2]=1<<(b&31)|f[c>>2];return}else Ca(115594,115382,74,115605)}function Qia(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>357913941)_da();else{c=n8(b*12|0)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b*12|0);return}}function Ria(a,b){a=a|0;b=b|0;b=b+8|0;if(nQa(f[a+116>>2]|0,f[b>>2]|0)|0?!(lVa(a)|0):0)a=f[(f[a+140>>2]|0)+(f[b>>2]<<2)>>2]|0;return a|0}function Sia(a,b){a=a|0;b=b|0;rGa(a,WQa(f[b>>2]|0)|0);return}function Tia(a,b){a=a|0;b=b|0;rGa(a,XQa(f[b>>2]|0)|0);return}function Uia(a,b){a=a|0;b=b|0;rGa(a,YQa(f[b>>2]|0)|0);return}function Via(a,b){a=a|0;b=b|0;sGa(a,WQa(f[b>>2]|0)|0);return}function Wia(a,b){a=a|0;b=b|0;sGa(a,XQa(f[b>>2]|0)|0);return}function Xia(a,b){a=a|0;b=b|0;sGa(a,YQa(f[b>>2]|0)|0);return}function Yia(a,b){a=a|0;b=b|0;tWa(a,b);Vh(a+-16|0,b);tWa(a,0);return}function Zia(a,b){a=a|0;b=b|0;var c=0;c=lWa(f[a+4>>2]|0)|0;b=UQa(a,Or(b,1)|0)|0;f[c+8>>2]=b;oXa(c);return c|0}function _ia(a,b){a=a|0;b=b|0;var c=0;Hs(a,b);c=n8(12)|0;c1a(c);b=f[b>>2]|0;f[c+4>>2]=b;f[c>>2]=b;f[c+8>>2]=0;Xs(a,c);return}function $ia(a,c){a=a|0;c=c|0;b[a+104>>0]=1;c=c+36|0;HK(a+44|0,c);gJ(a+16|0,c);return}function aja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;kq(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function bja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;lq(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function cja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a+4|0;a=c-b|0;if((a|0)>0){Iu(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a}return}function dja(a){a=a|0;i7(a);return}function eja(a,b){a=a|0;b=b|0;qIa(a,rQa(f[b>>2]|0)|0);return}function fja(a){a=a|0;rg(f[a+36>>2]|0);Mca(a+16|0);B5(a+4|0);return}function gja(a,b){a=a|0;b=b|0;rGa(a,iRa(f[b>>2]|0)|0);return}function hja(a,b){a=a|0;b=b|0;rGa(a,oRa(f[b>>2]|0)|0);return}function ija(a,b){a=a|0;b=b|0;sGa(a,iRa(f[b>>2]|0)|0);return}function jja(a,b){a=a|0;b=b|0;sGa(a,oRa(f[b>>2]|0)|0);return}function kja(a,b){a=a|0;b=b|0;tWa(a,b);eZ(a+-16|0,b);tWa(a,0);return}function lja(a,b){a=a|0;b=b|0;tWa(a,b);Ot(a+-16|0,b);tWa(a,0);return}function mja(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;yUa(a);yUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=e&1;return}function nja(a){a=a|0;jLa(a);f[a>>2]=43232;yUa(a+56|0);yUa(a+68|0);f[a+84>>2]=0;return}function oja(a,b){a=a|0;b=b|0;a=$Ra(f[a>>2]|0)|0;i0(a+12|0,b);rt(a);return a|0}function pja(a,b){a=a|0;b=b|0;qIa(a,DQa(f[b>>2]|0)|0);return}function qja(a,b){a=a|0;b=b|0;pH(a,b+36|0);return}function rja(a,b){a=a|0;b=b|0;sH(a,b+36|0);return}function sja(a,b){a=a|0;b=b|0;tH(a,b+36|0);return}function tja(a,b){a=a|0;b=b|0;uH(a,b+36|0);return}function uja(a,b){a=a|0;b=b|0;qH(a,b+36|0);return}function vja(a){a=a|0;MY(a+4|0);return}function wja(a){a=a|0;var c=0;if((bc[f[(f[a>>2]|0)+36>>2]&511](a)|0)==-1)a=-1;else{c=a+12|0;a=f[c>>2]|0;f[c>>2]=a+1;a=X6a(b[a>>0]|0)|0}return a|0}function xja(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128)a=j[25968+(a<<1)>>1]|0;else a=0;d[e>>1]=a;e=e+2|0;b=b+4|0}return c|0}function yja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;tq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function zja(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>178956970)_da();else{c=n8(b*24|0)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b*24|0);return}}function Aja(a,b){a=a|0;b=b|0;qIa(a,EQa(f[b>>2]|0)|0);return}function Bja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=kRa(b)|0;b=Eaa(a,c,g)|0;if(d|0)kRa(d)|0;u=e;return b|0}function Cja(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-4|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)ubb(a);return}function Dja(a){a=a|0;var b=0;Vya(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)ubb(b);return}function Eja(a,b){a=a|0;b=b|0;rGa(a,IRa(f[b>>2]|0)|0);return}function Fja(a,b){a=a|0;b=b|0;rGa(a,yRa(f[b>>2]|0)|0);return}function Gja(a,b){a=a|0;b=b|0;rGa(a,zRa(f[b>>2]|0)|0);return}function Hja(a,b){a=a|0;b=b|0;rGa(a,ARa(f[b>>2]|0)|0);return}function Ija(a,b){a=a|0;b=b|0;sGa(a,IRa(f[b>>2]|0)|0);return}function Jja(a,b){a=a|0;b=b|0;sGa(a,yRa(f[b>>2]|0)|0);return}function Kja(a,b){a=a|0;b=b|0;sGa(a,zRa(f[b>>2]|0)|0);return}function Lja(a,b){a=a|0;b=b|0;sGa(a,ARa(f[b>>2]|0)|0);return}function Mja(a,b){a=a|0;b=b|0;$Wa(a,b);$i(a+-16|0,b);$Wa(a,0);return}function Nja(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Cq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Oja(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Dq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Pja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;pq(g,b,c,d,e,Bbb(f[a+32>>2]|0)|0);return}function Qja(a,b){a=a|0;b=b|0;a=a+16|0;if((Qu(f[a>>2]|0)|0)==(b<<24>>24|0)){Ns(f[a>>2]|0)|0;a=1}else a=0;return a|0}function Rja(a){a=a|0;var b=0;b=X_a(a)|0;if(!b)a=(WRa(a)|0)+12|0;else a=b+8|0;return f[a>>2]|0}function Sja(a){a=a|0;VW(f[a+4>>2]|0);return}function Tja(a){a=a|0;lW(a,f[a+4>>2]|0);return}function Uja(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}a=f[c>>2]|0;if(a>>>0>=128)break;if(!((d[25968+(a<<1)>>1]&b)<<16>>16))break;c=c+4|0}return c|0}function Vja(a,b){a=a|0;b=b|0;qIa(a,SQa(f[b>>2]|0)|0);return}function Wja(a,b){a=a|0;b=b|0;qIa(a,KQa(f[b>>2]|0)|0);return}function Xja(a,b){a=a|0;b=b|0;qIa(a,LQa(f[b>>2]|0)|0);return}function Yja(a,b){a=a|0;b=b|0;yH(a,b+36|0);return}function Zja(a,b){a=a|0;b=b|0;CH(a,b+36|0);return}function _ja(a,b){a=a|0;b=b|0;DH(a,b+36|0);return}function $ja(a,b){a=a|0;b=b|0;EH(a,b+36|0);return}function aka(a,b){a=a|0;b=b|0;zH(a,b+36|0);return}function bka(a){a=a|0;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=n8(48)|0;f[e>>2]=f[a+44>>2];f[d>>2]=f[e>>2];WDa(b,d);u=c;return b|0}function cka(a,c){a=a|0;c=c|0;var d=0;d=c+8|0;if(Iab(f[d>>2]|0)|0)X7(a+80|0,d);if((f[c+4>>2]|0)==5)b[a+26>>0]=1;return}function dka(a){a=a|0;var b=0,c=0;x=0;b=fa(66)|0;c=x;x=0;if(c&1){c=Ja(0)|0;r2a(c)}else{c=f[b>>2]|0;f[a>>2]=c;c=c+4|0;f[c>>2]=(f[c>>2]|0)+1;return}}function eka(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=n8(16)|0;wab(g);f[g>>2]=f[a>>2];f[g+4>>2]=c;f[g+8>>2]=d;b[g+12>>0]=(e|0)==0&1;return g|0}function fka(a,b){a=a|0;b=b|0;rGa(a,JRa(f[b>>2]|0)|0);return}function gka(a,b){a=a|0;b=b|0;rGa(a,KRa(f[b>>2]|0)|0);return}function hka(a,b){a=a|0;b=b|0;rGa(a,LRa(f[b>>2]|0)|0);return}function ika(a,b){a=a|0;b=b|0;rGa(a,WRa(f[b>>2]|0)|0);return}function jka(a,b){a=a|0;b=b|0;rGa(a,XRa(f[b>>2]|0)|0);return}function kka(a,b){a=a|0;b=b|0;sGa(a,JRa(f[b>>2]|0)|0);return}function lka(a,b){a=a|0;b=b|0;sGa(a,KRa(f[b>>2]|0)|0);return}function mka(a,b){a=a|0;b=b|0;sGa(a,LRa(f[b>>2]|0)|0);return}function nka(a,b){a=a|0;b=b|0;sGa(a,WRa(f[b>>2]|0)|0);return}function oka(a,b){a=a|0;b=b|0;sGa(a,XRa(f[b>>2]|0)|0);return}function pka(a,b){a=a|0;b=b|0;lh(a,XRa(f[b>>2]|0)|0);return}function qka(a,b){a=a|0;b=b|0;tWa(a,b);Rf(a+-16|0,b);tWa(a,0);return}function rka(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;RZ(d,b);Ep(d,a);sta(d);u=c;return a|0}function ska(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{yXa(b);b=(f[c>>2]|0)+16|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function tka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[c+100>>2]|0;b=c+104|0;a=f[b>>2]|0;while(1){if((a|0)==(d|0))break;c=a+-16|0;I_a(c);a=c}f[b>>2]=d;return}function uka(a){a=a|0;GIa(a+12|0);dja(a);return}function vka(a){a=a|0;var b=0;b=Ea(8)|0;x=0;ua(3186,b|0,a|0);a=x;x=0;if(a&1){a=Ia()|0;La(b|0);Ua(a|0)}else Pa(b|0,39456,420)}function wka(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=f[b+16>>2];return}function xka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;tab(e);f[d>>2]=f[e>>2];b=NF(a,d,b)|0;u=c;return b|0}function yka(a,b){a=a|0;b=b|0;rGa(a,gSa(f[b>>2]|0)|0);return}function zka(a,b){a=a|0;b=b|0;rGa(a,YRa(f[b>>2]|0)|0);return}function Aka(a,b){a=a|0;b=b|0;rGa(a,ZRa(f[b>>2]|0)|0);return}function Bka(a,b){a=a|0;b=b|0;rGa(a,_Ra(f[b>>2]|0)|0);return}function Cka(a,b){a=a|0;b=b|0;rGa(a,hSa(f[b>>2]|0)|0);return}function Dka(a,b){a=a|0;b=b|0;sGa(a,gSa(f[b>>2]|0)|0);return}function Eka(a,b){a=a|0;b=b|0;sGa(a,YRa(f[b>>2]|0)|0);return}function Fka(a,b){a=a|0;b=b|0;sGa(a,ZRa(f[b>>2]|0)|0);return}function Gka(a,b){a=a|0;b=b|0;sGa(a,_Ra(f[b>>2]|0)|0);return}function Hka(a,b){a=a|0;b=b|0;sGa(a,hSa(f[b>>2]|0)|0);return}function Ika(a,b){a=a|0;b=b|0;qIa(a,WQa(f[b>>2]|0)|0);return}function Jka(a,b){a=a|0;b=b|0;qIa(a,XQa(f[b>>2]|0)|0);return}function Kka(a,b){a=a|0;b=b|0;qIa(a,YQa(f[b>>2]|0)|0);return}function Lka(a,b){a=a|0;b=b|0;tWa(a,b);rba(a+-16|0,b);tWa(a,0);return}function Mka(a,b){a=a|0;b=b|0;tWa(a,b);_z(a+-16|0,b);tWa(a,0);return}function Nka(a,b){a=a|0;b=b|0;$Wa(a,b);fs(a+-16|0,b);$Wa(a,0);return}function Oka(a,b){a=a|0;b=b|0;tWa(a,b);_E(a,b);tWa(a,0);return}function Pka(a){a=a|0;f[a>>2]=45668;I1a(f[a+120>>2]|0);MTa(a+108|0);Kqa(a+44|0);LTa(a);return}function Qka(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;bca(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function Rka(a){a=a|0;var b=0,c=0;b=n8(44)|0;x=0;ta(441,b|0);c=x;x=0;if(c&1){c=Ia()|0;ubb(b);Ua(c|0)}else{J_(a,b);return}}function Ska(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=f[c>>2];a=ec[f[(f[a>>2]|0)+16>>2]&127](a,b,d)|0;if(a)f[c>>2]=f[d>>2];u=e;return a&1|0}function Tka(a){a=a|0;kX(f[a+4>>2]|0);return}function Uka(a){a=a|0;lX(f[a+4>>2]|0);return}function Vka(a){a=a|0;mX(f[a+4>>2]|0);return}function Wka(a){a=a|0;nX(f[a+4>>2]|0);return}function Xka(a){a=a|0;oX(f[a+4>>2]|0);return}function Yka(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Zka(a){a=a|0;if((b[130864]|0)==0?PWa(130864)|0:0){f[33741]=0;f[33742]=0;f[33743]=0;WZ(134964,120196,h7a(120196)|0)}return 134964}function _ka(a){a=a|0;if((b[130872]|0)==0?PWa(130872)|0:0){f[33744]=0;f[33745]=0;f[33746]=0;WZ(134976,120205,h7a(120205)|0)}return 134976}function $ka(a){a=a|0;if((b[130880]|0)==0?PWa(130880)|0:0){f[33747]=0;f[33748]=0;f[33749]=0;WZ(134988,120217,h7a(120217)|0)}return 134988}function ala(a){a=a|0;if((b[130856]|0)==0?PWa(130856)|0:0){f[33738]=0;f[33739]=0;f[33740]=0;WZ(134952,120187,h7a(120187)|0)}return 134952}function bla(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{CAa(a,+Kb(+(+ONa(b))));break}case 4:{kqa(a,+Lb(+(+NNa(b))));break}default:hb()}return}function cla(){var a=0,b=0,c=0;a=n8(60)|0;b=a;c=b+60|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));sra(a);return a|0}function dla(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;jI(a,b);b=b+16|0}return}function ela(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;b=a+20|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+36>>2]=1065353216;return}function fla(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=n8(36)|0;mja(d,f[b>>2]|0,c,0);f[a>>2]=d;return}function gla(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=h[28784+(a&15)>>0]|0|e;a=EMa(a|0,c|0,4)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function hla(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)!=(b|0)){a=a+4|0;d=(f[a>>2]|0)-c|0;if(d|0)fia(b|0,c|0,d|0)|0;f[a>>2]=b+(d>>2<<2)}return}function ila(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>268435455)_da();else{c=n8(b<<4)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b<<4);return}}function jla(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=fVa(f[a>>2]|0)|0;f[a+8>>2]=b;f[a+12>>2]=c;f[a+16>>2]=d;g5(a,e);return a|0}function kla(a,b){a=a|0;b=b|0;rGa(a,iSa(f[b>>2]|0)|0);return}function lla(a,b){a=a|0;b=b|0;sGa(a,iSa(f[b>>2]|0)|0);return}function mla(a,b){a=a|0;b=b|0;qIa(a,iRa(f[b>>2]|0)|0);return}function nla(a,b){a=a|0;b=b|0;qIa(a,oRa(f[b>>2]|0)|0);return}function ola(a,b){a=a|0;b=b|0;ZC(a,WRa(f[b>>2]|0)|0);return}function pla(a,b){a=a|0;b=b|0;Vj(a,XRa(f[b>>2]|0)|0);return}function qla(a,b){a=a|0;b=b|0;tWa(a,b);VPa(a+-16|0,b);tWa(a,0);return}function rla(a,b){a=a|0;b=b|0;$Wa(a,b);Xc(a+-16|0,b);$Wa(a,0);return}function sla(a,c){a=a|0;c=c|0;var d=0;d=vZ(a,c)|0;f[d>>2]=c;if(b[a+32>>0]|0)Hs(f[a+28>>2]|0,c);return}function tla(a,b){a=a|0;b=b|0;a=a+4|0;tPa(f[a>>2]|0,75550)|0;s4(f[b+8>>2]|0,f[a>>2]|0)|0;return}function ula(a,b){a=a|0;b=b|0;a=a+4|0;tPa(f[a>>2]|0,75565)|0;s4(f[b+8>>2]|0,f[a>>2]|0)|0;return}function vla(a,b){a=a|0;b=b|0;b=n$a(b)|0;if((b|0?$1a(f[b+8>>2]|0,f[a+36>>2]|0)|0:0)?f[b+16>>2]|0:0){a=a+48|0;f[a>>2]=(f[a>>2]|0)+1}return}function wla(a,b){a=a|0;b=b|0;return $O(a,0,b)|0}function xla(a){a=a|0;wX(f[a+4>>2]|0);return}function yla(a){a=a|0;xX(f[a+4>>2]|0);return}function zla(a){a=a|0;EW(a,f[a+4>>2]|0);return}function Ala(a){a=a|0;if((b[130944]|0)==0?PWa(130944)|0:0){f[33758]=0;f[33759]=0;f[33760]=0;VG(135032,48056,g7a(48056)|0)}return 135032}function Bla(a){a=a|0;if((b[130952]|0)==0?PWa(130952)|0:0){f[33761]=0;f[33762]=0;f[33763]=0;VG(135044,48092,g7a(48092)|0)}return 135044}function Cla(a){a=a|0;if((b[130960]|0)==0?PWa(130960)|0:0){f[33764]=0;f[33765]=0;f[33766]=0;VG(135056,48140,g7a(48140)|0)}return 135056}function Dla(a){a=a|0;if((b[130936]|0)==0?PWa(130936)|0:0){f[33755]=0;f[33756]=0;f[33757]=0;VG(135020,48020,g7a(48020)|0)}return 135020}function Ela(a,c){a=a|0;c=c|0;var d=0;d=vZ(a+12|0,c)|0;f[d>>2]=c;if(b[a+32>>0]|0)Ys(f[a+28>>2]|0,c);return}function Fla(a,b){a=a|0;b=b|0;var c=0;b=b+8|0;c=f[b>>2]|0;if(LVa(f[a+24>>2]|0,c)|0)f[b>>2]=f[(f[f[a+28>>2]>>2]|0)+(c<<2)>>2];return}function Gla(a,b){a=a|0;b=b|0;var c=0,d=0;d=bV(b)|0;c=n8(d+13|0)|0;f[c>>2]=d;f[c+4>>2]=d;f[c+8>>2]=0;c=L6a(c)|0;Iu(c|0,b|0,d+1|0)|0;f[a>>2]=c;return}function Hla(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=u;u=u+16|0;c=e;f[c>>2]=d;b=kRa(b)|0;c=C9(a,119758,c)|0;if(b|0)kRa(b)|0;u=e;return c|0}function Ila(a,b){a=a|0;b=b|0;Fla(a,iRa(f[b>>2]|0)|0);return}function Jla(a,b){a=a|0;b=b|0;Fla(a,oRa(f[b>>2]|0)|0);return}function Kla(a,c){a=a|0;c=c|0;var d=0;f[a>>2]=c;f[a+4>>2]=f[c>>2];d=(f[c+40>>2]|0)!=0;b[a+8>>0]=d&1;if(d){d=ZG(c)|0;f[a+12>>2]=d}return}function Lla(a){a=a|0;DX(f[a+4>>2]|0);return}function Mla(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if($1a(a,f[b+8>>2]|0)|0)mY(b,c,d);return}function Nla(a){a=a|0;var c=0,d=0;c=b[a+11>>0]|0;if(c<<24>>24<0)d=f[a+4>>2]|0;else d=c&255;c=b[a+12+11>>0]|0;if(c<<24>>24<0)c=f[a+16>>2]|0;else c=c&255;return c+d|0}function Ola(a,b){a=a|0;b=b|0;rGa(a,qSa(f[b>>2]|0)|0);return}function Pla(a,b){a=a|0;b=b|0;sGa(a,qSa(f[b>>2]|0)|0);return}function Qla(a,b){a=a|0;b=b|0;eC(a,hSa(f[b>>2]|0)|0);return}function Rla(a,b){a=a|0;b=b|0;m7(a,b,0);m_(a+48|0,b);return}function Sla(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+4|0;d=f[b>>2]|0;f[d+4>>2]=f[c>>2];f[f[c>>2]>>2]=d;a=a+8|0;f[a>>2]=(f[a>>2]|0)+-1;ubb(b);return}function Tla(a,b){a=a|0;b=b|0;qIa(a,IRa(f[b>>2]|0)|0);return}function Ula(a,b){a=a|0;b=b|0;qIa(a,yRa(f[b>>2]|0)|0);return}function Vla(a,b){a=a|0;b=b|0;qIa(a,zRa(f[b>>2]|0)|0);return}function Wla(a,b){a=a|0;b=b|0;qIa(a,ARa(f[b>>2]|0)|0);return}function Xla(a,b){a=a|0;b=b|0;JG(a,b+36|0);return}function Yla(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;Iq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function Zla(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;uq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function _la(a,b,c){a=a|0;b=b|0;c=c|0;b=NKa(f[a>>2]|0,b,1)|0;return eL(a,b,NKa(f[a>>2]|0,c,1)|0)|0}function $la(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0)_da();else{b=((b+-1|0)>>>5)+1|0;c=n8(b<<2)|0;f[a>>2]=c;f[a+4>>2]=0;f[a+8>>2]=b;return}}function ama(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>536870911)_da();else{c=n8(b<<3)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b<<3);return}}function bma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;fD(a,c,d);return}function cma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;nQ(a,c,d);return}function dma(a,c){a=a|0;c=c|0;var d=0,e=0;while(1){d=b[c>>0]|0;if(!(d<<24>>24)){c=1;break}e=b[a>>0]|0;if(!(e<<24>>24?e<<24>>24==d<<24>>24:0)){c=0;break}c=c+1|0;a=a+1|0}return c|0}function ema(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=f[b>>2];c=b+4|0;f[a+4>>2]=f[c>>2];d=b+8|0;f[a+8>>2]=f[d>>2];f[b>>2]=0;f[d>>2]=0;f[c>>2]=0;return}function fma(a,b){a=a|0;b=b|0;qIa(a,JRa(f[b>>2]|0)|0);return}function gma(a,b){a=a|0;b=b|0;qIa(a,KRa(f[b>>2]|0)|0);return}function hma(a,b){a=a|0;b=b|0;qIa(a,LRa(f[b>>2]|0)|0);return}function ima(a,b){a=a|0;b=b|0;qIa(a,WRa(f[b>>2]|0)|0);return}function jma(a,b){a=a|0;b=b|0;qIa(a,XRa(f[b>>2]|0)|0);return}function kma(a){a=a|0;var c=0;c=f[a+44>>2]|0;a=f[a+32>>2]|0;Bbb(a)|0;a=(Wl(c,a)|0)+8|0;b[a>>0]=0;return}function lma(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;UZ(d,a+108|0,b);I_a(d);u=c;return}function mma(a){a=a|0;var b=0,c=0;b=n8(56)|0;x=0;ta(451,b|0);c=x;x=0;if(c&1){c=Ia()|0;ubb(b);Ua(c|0)}else{J_(a,b);return}}function nma(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{yXa(b);b=(f[c>>2]|0)+16|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function oma(a,b){a=a|0;b=b|0;b=p_(a+172|0,b)|0;if((b|0)==(a+176|0))b=0;else b=f[b+20>>2]|0;return b|0}function pma(a,b){a=a|0;b=b|0;qIa(a,gSa(f[b>>2]|0)|0);return}function qma(a,b){a=a|0;b=b|0;qIa(a,YRa(f[b>>2]|0)|0);return}function rma(a,b){a=a|0;b=b|0;qIa(a,ZRa(f[b>>2]|0)|0);return}function sma(a,b){a=a|0;b=b|0;qIa(a,_Ra(f[b>>2]|0)|0);return}function tma(a,b){a=a|0;b=b|0;qIa(a,hSa(f[b>>2]|0)|0);return}function uma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;vq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function vma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;wq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function wma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;xq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function xma(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Ay(a,f[b>>2]|0,f[b+4>>2]|0);return a|0}function yma(a){a=a|0;var b=0;a=n8(60)|0;x=0;ta(442,a|0);b=x;x=0;if(b&1){b=Ia()|0;ubb(a);Ua(b|0)}else return a|0;return 0}function zma(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;b[e>>0]=c;c=$n(a,e,1)|0;u=d;return c|0}function Ama(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Bma(a,b){a=a|0;b=b|0;if(!a){b=Ea(4)|0;f[b>>2]=0;s6a(b);Pa(b|0,37840,324)}else{pc[f[(f[a>>2]|0)+24>>2]&4095](a,b);return}}function Cma(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{CAa(a,+J(+(+ONa(b))));break}case 4:{kqa(a,+J(+(+NNa(b))));break}default:hb()}return}function Dma(a){a=a|0;f[a>>2]=41792;NQa(a+72|0);NQa(a+48|0);LTa(a);return}function Ema(a){a=a|0;var b=0;b=n8(48)|0;Hea(b,f[a+44>>2]|0);return b|0}function Fma(){var a=0,b=0;b=f[33158]|0;f[33158]=132636;f[(f[33159]|0)+8>>2]=0;f[33159]=0;f[33160]=0;a=f[b+4>>2]|0;return ((a|0)==0?b:a)|0}function Gma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b+(d>>>10<<2)|0;if((c|0)==(b|0))b=0;else b=(f[e>>2]|0)+((d&1023)<<2)|0;f[a>>2]=e;f[a+4>>2]=b;return}function Hma(a,b){a=a|0;b=b|0;return Dya(a+4|0,b)|0}function Ima(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=EMa(a|0,b|0,c&63|0)|0;f=I;d=NRa(0,0,c|0,d|0)|0;d=hMa(a|0,b|0,d&63|0)|0;I=f|I;return e|d|0}function Jma(a,b){a=a|0;b=b|0;qIa(a,iSa(f[b>>2]|0)|0);return}function Kma(a,b){a=a|0;b=b|0;qp(a,qSa(f[b>>2]|0)|0);return}function Lma(a,b){a=a|0;b=b|0;a=a+4|0;tPa(f[a>>2]|0,75631)|0;s4(f[b+24>>2]|0,f[a>>2]|0)|0;return}function Mma(a,b){a=a|0;b=b|0;DIa(a);f[a>>2]=44988;f[a+44>>2]=b;return}function Nma(a){a=a|0;kW(f[a+4>>2]|0);return}function Oma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=hMa(a|0,b|0,c&63|0)|0;f=I;d=NRa(0,0,c|0,d|0)|0;d=EMa(a|0,b|0,d&63|0)|0;I=f|I;return e|d|0}function Pma(a,b,c){a=a|0;b=b|0;c=c|0;if(!(sab(f[b>>2]|0)|0)?!(w_(b)|0):0)b=jC(a,b,0,c)|0;return b|0}function Qma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=rUa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+12>>2]=c;f[a+16>>2]=d;xqa(a);return a|0}function Rma(a,b){a=a|0;b=b|0;JG(a,b+8|0);return}function Sma(a,b){a=a|0;b=b|0;b=p_(a+208|0,b)|0;if((b|0)==(a+212|0))b=0;else b=f[b+20>>2]|0;return b|0}function Tma(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=b+4|0;d=f[b>>2]|0;f[d+4>>2]=f[c>>2];f[f[c>>2]>>2]=d;a=a+8|0;f[a>>2]=(f[a>>2]|0)+-1;ubb(b);return}function Uma(a){a=a|0;_Y(a);return}function Vma(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{CAa(a,+L(+(+ONa(b))));break}case 4:{kqa(a,+L(+(+NNa(b))));break}default:hb()}return}function Wma(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{CAa(a,+W(+(+ONa(b))));break}case 4:{kqa(a,+W(+(+NNa(b))));break}default:hb()}return}function Xma(a){a=a|0;kya(a);f[a>>2]=42136;cAa(a+16|0);f[a+80>>2]=0;f[a+84>>2]=0;yUa(a+88|0);f[a+100>>2]=0;f[a+104>>2]=0;f[a+108>>2]=0;return}function Yma(a,b){a=a|0;b=b|0;if($1a(f[a>>2]|0,f[33036]|0)|0?$1a(f[b>>2]|0,f[33037]|0)|0:0)Ca(54150,51387,706,54184);return}function Zma(a){a=a|0;CY(f[a+4>>2]|0);return}function _ma(a,b){a=a|0;b=b|0;qIa(a,qSa(f[b>>2]|0)|0);return}function $ma(a,b){a=a|0;b=b|0;wi(a,hSa(f[b>>2]|0)|0);return}function ana(a,b){a=a|0;b=b|0;b=p_(a+184|0,b)|0;if((b|0)==(a+188|0))b=0;else b=f[b+20>>2]|0;return b|0}function bna(a,b){a=a|0;b=b|0;b=p_(a+220|0,b)|0;if((b|0)==(a+224|0))b=0;else b=f[b+20>>2]|0;return b|0}function cna(a,b){a=a|0;b=b|0;b=p_(a+196|0,b)|0;if((b|0)==(a+200|0))b=0;else b=f[b+20>>2]|0;return b|0}function dna(a,b){a=a|0;b=b|0;RMa(a+16|0,rQa(f[b>>2]|0)|0);return}function ena(a){a=a|0;var b=0;switch(a|0){case 1:{b=0;break}case 2:{b=1;break}case 4:{b=2;break}case 8:{b=3;break}case 16:{b=4;break}case 32:{b=5;break}default:hb()}return b|0}function fna(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;zq(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function gna(a,b){a=a|0;b=b|0;var c=0;c=Bbb(f[a+36>>2]|0)|0;qg(b,c,_Ya(f[a+40>>2]|0)|0);return}function hna(a){a=a|0;var b=0;b=uOa(f[a+12>>2]|0,1)|0;f[a+4>>2]=b;f[a>>2]=b;f[a+8>>2]=b+24;return}function ina(a){a=a|0;yX(a,f[a+4>>2]|0);return}function jna(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Wab(mOa(a)|0)|0;f[d>>2]=b;b=Vab(mOa(a)|0)|0;f[b>>2]=c;return a|0}function kna(){var a=0;a=n8(32)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;xNa(a);return a|0}function lna(a){a=a|0;var b=0;HGa(a);f[a>>2]=40900;b=a+184|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+200>>2]=1065353216;return}function mna(a,b){a=a|0;b=b|0;zma(a,34)|0;yCa(a,b)|0;return zma(a,34)|0}function nna(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=43856;f[a+4>>2]=b;f[a+8>>2]=c;f[a+12>>2]=d;f[a+16>>2]=a;return}function ona(a){a=a|0;var b=0;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(a|0)oc[f[(f[a>>2]|0)+4>>2]&1023](a);return}function pna(a,b){a=a|0;b=b|0;CBa(f[a+4>>2]|0,b);return}function qna(a){a=a|0;var b=0;if((f[a>>2]|0?(b=f[a+4>>2]|0,b|0):0)?(b=MCa(b+12|0)|0,(f[b>>2]|0)!=(f[a>>2]|0)):0)Ca(114565,114497,108,114592);return}function rna(a,b){a=a|0;b=b|0;aD(a,IRa(f[b>>2]|0)|0);return}function sna(a,b){a=a|0;b=b|0;RMa(a+16|0,DQa(f[b>>2]|0)|0);return}function tna(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Uq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function una(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a+104>>2]=b;c=f[a+8>>2]|0;d=f[a+4>>2]|0;e=c-d|0;f[a+108>>2]=e;if((b|0)!=0&(e|0)>(b|0))f[a+100>>2]=d+b;else f[a+100>>2]=c;return}function vna(a){a=a|0;QY(f[a+4>>2]|0);return}function wna(a){a=a|0;RY(f[a+4>>2]|0);return}function xna(a,b){a=a|0;b=b|0;yCa(134008,73226)|0;XE(a,b);yCa(134008,73230)|0;return}function yna(a,b){a=a|0;b=b|0;var c=0;a:do if(a>>>0<4)c=1;else switch(a|0){case 4:{c=b?3:1;break a}case 8:{c=b?4:2;break a}default:hb()}while(0);return c|0}function zna(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Sza(a,F$(a,b,c)|0,d,e)|0}function Ana(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;yI(a,b);b=b+16|0}return}function Bna(a){a=a|0;f[a>>2]=43232;MNa(a+68|0);MNa(a+56|0);hRa(a);return}function Cna(a,b){a=a|0;b=b|0;var c=0;c=b+4|0;if(o2a(f[c>>2]|0)|0?(LI(b),(f[c>>2]|0)==5):0)Kv(a,b);return}function Dna(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;vc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Ena(a){a=+a;var b=0;b=(n[s>>2]=a,f[s>>2]|0);switch((b>>>23&255)<<24>>24){case 0:{b=(b&2147483647|0)==0?2:3;break}case -1:{b=(b&8388607|0)==0&1;break}default:b=4}return b|0}function Fna(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=44460;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function Gna(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;d=f[a+8>>2]|0;c=(f[a>>2]|0)+(d>>1)|0;if(!(d&1))a=b;else a=f[(f[c>>2]|0)+b>>2]|0;oc[a&1023](c);return}function Hna(a){a=a|0;Cza(a);a=a+32|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function Ina(a,b){a=a|0;b=b|0;RMa(a+16|0,EQa(f[b>>2]|0)|0);return}function Jna(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;c=wOa(b|0,c|0,1,0)|0;b=I;if(!(b>>>0>0|(b|0)==0&c>>>0>1)?(e=(f[a+4>>2]|0)<0,g=(d&64)==0,g|e):0)return g&e|0;return 1}function Kna(a){a=a|0;SX(a,f[a+4>>2]|0);return}function Lna(a){a=a|0;J9(a);return}function Mna(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}a=f[c>>2]|0;if(a>>>0<128?(d[25968+(a<<1)>>1]&b)<<16>>16:0)break;c=c+4|0}return c|0}function Nna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;zI(a,b);b=b+16|0}return}function Ona(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;GI(a,b);b=b+16|0}return}function Pna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;AI(a,b);b=b+16|0}return}function Qna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;HI(a,b);b=b+16|0}return}function Rna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;BI(a,b);b=b+16|0}return}function Sna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;CI(a,b);b=b+16|0}return}function Tna(a){a=a|0;switch(a|0){case 46:case 42:case 41:case 40:case 39:case 34:case 32:case 30:case 28:case 26:case 24:case 23:case 22:case 21:case 5:case 3:case 1:{a=1;break}default:a=0}return a|0}function Una(a,b){a=a|0;b=b|0;tJa(a);f[a>>2]=42536;f[a+44>>2]=b;return}function Vna(a){a=a|0;f[a>>2]=45588;nG(a+84|0);NQa(a+64|0);XLa(a+44|0);LTa(a);return}function Wna(a){a=a|0;var b=0,c=0,d=0;b=n8(68)|0;c=b;d=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));Aya(b);f[a>>2]=b;return}function Xna(a,b){a=a|0;b=b|0;if(!a)Ca(88976,88981,974,89004);else{b=ec[f[(f[a>>2]|0)+8>>2]&127](a,b,0)|0;OX(b);return b|0}return 0}function Yna(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a2a(a);Kab(a+16|0);f[a>>2]=7;d=Wab(a)|0;f[d>>2]=b;a=Vab(a)|0;f[a>>2]=c;return}function Zna(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=GSa(a)|0;f[a+8>>2]=d;f[a+12>>2]=b;f[a+16>>2]=c;gDa(a);return a|0}function _na(a,b){a=a|0;b=b|0;RMa(a+16|0,SQa(f[b>>2]|0)|0);return}function $na(a,b){a=a|0;b=b|0;RMa(a+16|0,KQa(f[b>>2]|0)|0);return}function aoa(a,b){a=a|0;b=b|0;RMa(a+16|0,LQa(f[b>>2]|0)|0);return}function boa(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>1073741823)_da();else{c=n8(b<<2)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b<<2);return}}function coa(a){a=a|0;var b=0;b=a+4|0;o8(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function doa(a){a=a|0;gaa(a);return}function eoa(a,c){a=a|0;c=c|0;var d=0;d=a+8|0;a=c;c=f[d>>2]|0;do{b[c>>0]=0;c=(f[d>>2]|0)+1|0;f[d>>2]=c;a=a+-1|0}while((a|0)!=0);return}function foa(a){a=a|0;var c=0;c=f[a>>2]|0;do if(c|0){f[a+4>>2]=c;if((c|0)==(a+16|0)){b[a+128>>0]=0;break}else{ubb(c);break}}while(0);return}function goa(a){a=a|0;WNa(a);f[a>>2]=44668;gQa(a+44|0);gQa(a+64|0);f[a+88>>2]=0;f[a+92>>2]=0;f[a+96>>2]=0;return}function hoa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;cJ(a,b);b=b+16|0}Jbb()}function ioa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Sv(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function joa(a){a=a|0;mZ(f[a+4>>2]|0);return}function koa(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-1|0;f[c>>2]=e;d=e}ubb(f[a>>2]|0);return}function loa(a,b){a=a|0;b=b|0;npa(a,XRa(f[b>>2]|0)|0);return}function moa(a,b){a=a|0;b=b|0;RMa(a+16|0,WQa(f[b>>2]|0)|0);return}function noa(a,b){a=a|0;b=b|0;RMa(a+16|0,XQa(f[b>>2]|0)|0);return}function ooa(a,b){a=a|0;b=b|0;RMa(a+16|0,YQa(f[b>>2]|0)|0);return}function poa(a){a=a|0;var b=0;if(!(f[a+32>>2]|0))Ca(93454,91141,386,91161);if((f[(f[a+24>>2]|0)+4>>2]|0)==5)b=5;else b=(f[(f[a+28>>2]|0)+4>>2]|0)==5?5:0;f[a+4>>2]=b;return}function qoa(a){a=a|0;switch(a|0){case 0:{a=1;break}case 1:{a=2;break}case 2:{a=4;break}case 3:{a=8;break}case 4:{a=16;break}case 5:{a=32;break}default:a=1<>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function toa(a,b,c){a=a|0;b=b|0;c=c|0;wm(a,b,c);return}function uoa(a,b,c){a=a|0;b=b|0;c=c|0;return qA(a,b,c,h7a(c)|0)|0}function voa(a){a=a|0;var b=0,c=0;if(a|0?(c=a+4|0,b=f[c>>2]|0,f[c>>2]=b+-1,(b|0)==0):0){oc[f[(f[a>>2]|0)+8>>2]&1023](a);Vua(a)}return}function woa(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;f4a(b,OPa(aUa()|0,a)|0);u=c;return f[b>>2]|0}function xoa(a,b){a=a|0;b=b|0;eH(a,b+36|0);return}function yoa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+16|0;Lg(a,b,c,d);u=d;return}function zoa(a){a=a|0;Aaa(a);return}function Aoa(a,b){a=a|0;b=b|0;npa(a,gSa(f[b>>2]|0)|0);return}function Boa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;OI(a,b);b=b+16|0}return}function Coa(a,b){a=a|0;b=b|0;RMa(a+16|0,iRa(f[b>>2]|0)|0);return}function Doa(a,b){a=a|0;b=b|0;RMa(a+16|0,oRa(f[b>>2]|0)|0);return}function Eoa(){var a=0,b=0,c=0;a=n8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Hna(a);return a|0}function Foa(a){a=a|0;kHa(a+24|0);rya(a+12|0);uSa(a);return}function Goa(a,b){a=a|0;b=b|0;Si(a,b);return}function Hoa(a){a=a|0;var b=0;if((bc[f[(f[a>>2]|0)+36>>2]&511](a)|0)==-1)a=-1;else{b=a+12|0;a=f[b>>2]|0;f[b>>2]=a+4;a=Bbb(f[a>>2]|0)|0}return a|0}function Ioa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=XTa(f[a>>2]|0)|0;f[a+16>>2]=b;f[a+8>>2]=c;f[a+12>>2]=d;raa(a);return a|0}function Joa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Tv(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function Koa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Uv(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function Loa(a){a=a|0;var b=0,c=0;b=a+68|0;c=f[b>>2]|0;a=(f[c+4>>2]|0)-(f[c>>2]|0)|0;yp(c,0)|0;Ev(f[b>>2]|0,0)|0;return a|0}function Moa(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;X_(d,a,b);I_a(d);u=c;return}function Noa(a){a=a|0;GY(a,f[a+4>>2]|0);return}function Ooa(a){a=a|0;var b=0;switch(a<<24>>24|0){case 105:{b=1;break}case 106:{b=2;break}case 102:{b=3;break}case 100:{b=4;break}case 118:{b=0;break}default:hb()}return b|0}function Poa(a,b){a=a|0;b=b|0;D4(a,XRa(f[b>>2]|0)|0);return}function Qoa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;UI(a,b);b=b+16|0}return}function Roa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;VI(a,b);b=b+16|0}return}function Soa(a){a=a|0;f[a>>2]=43656;NQa(a+68|0);uSa(a+56|0);hRa(a);return}function Toa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=c+8|0;tc[f[(f[b>>2]|0)+16>>2]&15](a,b,f[c>>2]|0,f[c+4>>2]|0,0,d);return}function Uoa(a,b){a=a|0;b=b|0;BVa(f[a>>2]|0,b)|0;f[(f[a+28>>2]|0)+-4>>2]=b;return b|0}function Voa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Xq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Woa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Yq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Xoa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Zq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Yoa(a,b){a=a|0;b=b|0;var c=0,d=0;c=xab(b)|0;d=a+4096|0;b=f[d>>2]|0;if((a+4096-b|0)>>>0>>0)b=Kc(c)|0;else f[d>>2]=b+c;return b|0}function Zoa(a){a=a|0;FZ(f[a+4>>2]|0);return}function _oa(a){a=a|0;dba(a);return}function $oa(a,b){a=a|0;b=b|0;D4(a,gSa(f[b>>2]|0)|0);return}function apa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;WI(a,b);b=b+16|0}return}function bpa(a,b){a=a|0;b=b|0;RMa(a+16|0,IRa(f[b>>2]|0)|0);return}function cpa(a,b){a=a|0;b=b|0;RMa(a+16|0,yRa(f[b>>2]|0)|0);return}function dpa(a,b){a=a|0;b=b|0;RMa(a+16|0,zRa(f[b>>2]|0)|0);return}function epa(a,b){a=a|0;b=b|0;RMa(a+16|0,ARa(f[b>>2]|0)|0);return}function fpa(a,b){a=a|0;b=b|0;b=oRa(f[b>>2]|0)|0;_Sa(f[a+24>>2]|0,f[b+8>>2]|0);return}function gpa(a,b){a=a|0;b=b|0;IC(a,IRa(f[b>>2]|0)|0);return}function hpa(){var a=0;a=u;u=u+16|0;J_a();x=0;ia(52,a|0,80526)|0;a=x;x=0;if(a&1){Ia()|0;gCa()}else gCa()}function ipa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Vv(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function jpa(a,b){a=a|0;b=b|0;var c=0;c=ZG(b)|0;b=lT(f[a+44>>2]|0,b)|0;f[b>>2]=c;return}function kpa(a){a=a|0;var b=0,c=0;f[a>>2]=40780;c=a+48|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){sAa(b);ubb(b)}LTa(a);return}function lpa(a){a=a|0;var b=0;b=n8(52)|0;x=0;ua(291,b|0,f[a+44>>2]|0);a=x;x=0;if(a&1){a=Ia()|0;ubb(b);Ua(a|0)}else return b|0;return 0}function mpa(a){a=a|0;var b=0,c=0,d=0;b=n8(44)|0;c=b;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));eSa(b);J_(a,b);return}function npa(a,b){a=a|0;b=b|0;b=b+8|0;if(Iab(f[b>>2]|0)|0)X7(a+24|0,b);return}function opa(a,c){a=a|0;c=c|0;var d=0;d=a+4|0;a=c;c=f[d>>2]|0;do{b[c>>0]=0;c=(f[d>>2]|0)+1|0;f[d>>2]=c;a=a+-1|0}while((a|0)!=0);return}function ppa(a){a=a|0;pba(a);return}function qpa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a2a(a);f4a(a+16|0,0);f[a>>2]=6;d=Vab(a)|0;f[d>>2]=b;a=Wab(a)|0;f[a>>2]=c;return}function rpa(a,b){a=a|0;b=b|0;eH(a,b+8|0);return}function spa(a,b){a=a|0;b=b|0;RMa(a+16|0,JRa(f[b>>2]|0)|0);return}function tpa(a,b){a=a|0;b=b|0;RMa(a+16|0,KRa(f[b>>2]|0)|0);return}function upa(a,b){a=a|0;b=b|0;RMa(a+16|0,LRa(f[b>>2]|0)|0);return}function vpa(a,b){a=a|0;b=b|0;RMa(a+16|0,WRa(f[b>>2]|0)|0);return}function wpa(a,b){a=a|0;b=b|0;RMa(a+16|0,XRa(f[b>>2]|0)|0);return}function xpa(a,b){a=a|0;b=b|0;vMa(a,rQa(f[b>>2]|0)|0);return}function ypa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=c;c=b+40|0;f[a+8>>2]=f[c>>2];if(!(f[c>>2]|0))Ca(103213,103099,84,103227);else return}function zpa(a,b){a=a|0;b=b|0;var c=0;c=b+20|0;un(a,b,b+24|0,un(a,b,c,0,0)|0,c)|0;return}function Apa(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1)a=f[26992+(a<<24>>24<<2)>>2]&255;b[c>>0]=a;c=c+1|0}return d|0}function Bpa(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1)a=f[24688+(a<<24>>24<<2)>>2]&255;b[c>>0]=a;c=c+1|0}return d|0}function Cpa(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;d=b+4|0;c=b;Kab(d);f4a(c,0);Yna(a,f[d>>2]|0,f[c>>2]|0);u=b;return}function Dpa(a,b,c){a=a|0;b=b|0;c=c|0;b=qwa(f[a>>2]|0,b)|0;aaa(b+12|0,c);rt(b);return b|0}function Epa(a){a=a|0;var b=0;b=a+4|0;f[b>>2]=1;if(!(((f[(f[a+12>>2]|0)+4>>2]|0)!=5?(f[(f[a+16>>2]|0)+4>>2]|0)!=5:0)?(f[(f[a+20>>2]|0)+4>>2]|0)!=5:0))f[b>>2]=5;return}function Fpa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=ZTa(a)|0;f[a+8>>2]=b;f[a+12>>2]=c;f[a+16>>2]=d;OY(a);return a|0}function Gpa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;$I(a,b);b=b+16|0}return}function Hpa(a,b){a=a|0;b=b|0;RMa(a+16|0,gSa(f[b>>2]|0)|0);return}function Ipa(a,b){a=a|0;b=b|0;RMa(a+16|0,YRa(f[b>>2]|0)|0);return}function Jpa(a,b){a=a|0;b=b|0;RMa(a+16|0,ZRa(f[b>>2]|0)|0);return}function Kpa(a,b){a=a|0;b=b|0;RMa(a+16|0,_Ra(f[b>>2]|0)|0);return}function Lpa(a,b){a=a|0;b=b|0;RMa(a+16|0,hSa(f[b>>2]|0)|0);return}function Mpa(a,b){a=a|0;b=b|0;vMa(a,DQa(f[b>>2]|0)|0);return}function Npa(a,b){a=a|0;b=b|0;b=nu(b,f[a+48>>2]|0)|0;BVa(f[a+16>>2]|0,b)|0;return}function Opa(a,c){a=a|0;c=c|0;var d=0;while(1){d=b[a>>0]|0;if(!(d<<24>>24)){a=0;break}if(d<<24>>24==c<<24>>24){a=1;break}else a=a+1|0}return a|0}function Ppa(a){a=a|0;var b=0;switch(a|0){case 1:{b=105;break}case 2:{b=106;break}case 3:{b=102;break}case 4:{b=100;break}case 0:{b=118;break}default:hb()}return b|0}function Qpa(a,b){a=a|0;b=b|0;W9(a,WRa(f[b>>2]|0)|0);return}function Rpa(a,b){a=a|0;b=b|0;aQa(a+16|0,rQa(f[b>>2]|0)|0);return}function Spa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;vw(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function Tpa(a,b){a=a|0;b=b|0;Goa(a,b);return}function Upa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1;return}function Vpa(a,b){a=a|0;b=b|0;RMa(a+16|0,iSa(f[b>>2]|0)|0);return}function Wpa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;gL(a,b);b=b+16|0}return}function Xpa(a,b){a=a|0;b=b|0;vMa(a,EQa(f[b>>2]|0)|0);return}function Ypa(a,b){a=a|0;b=b|0;b=(gSa(f[b>>2]|0)|0)+12|0;OW(a,f[b>>2]|0);return}function Zpa(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[a+4>>2]=f[c>>2];return a|0}function _pa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;RZ(a+8|0,c);U0a(a+32|0,b);return}function $pa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=44504;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function aqa(a,b){a=a|0;b=b|0;var c=0;c=f[a>>2]|0;if((f[a+4>>2]|0)-c>>2>>>0>b>>>0)return c+(b<<2)|0;else Zda();return 0}function bqa(a,b){a=a|0;b=b|0;b=(_Ra(f[b>>2]|0)|0)+8|0;C3(a,f[b>>2]|0);return}function cqa(a,b){a=a|0;b=b|0;b=oRa(f[b>>2]|0)|0;FTa(f[a+104>>2]|0,f[b+8>>2]|0);return}function dqa(a,b){a=a|0;b=b|0;aQa(a+16|0,DQa(f[b>>2]|0)|0);return}function eqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Mq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function fqa(a,b){a=a|0;b=b|0;a=jE(a,b)|0;if(!a)a=0;else a=f[a+12>>2]|0;return a|0}function gqa(a){a=a|0;var b=0;switch(a|0){case 1:{b=0;break}case 3:{b=2;break}case 4:{b=1;break}case 2:{b=8;break}case 0:{b=9;break}default:hb()}return b|0}function hqa(a){a=a|0;var b=0;b=a+4|0;caa(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function iqa(a,b){a=a|0;b=b|0;var c=0;y7(a);f[a>>2]=2;c=fFa()|0;f[a+8>>2]=c;xHa(c,b);return a|0}function jqa(a,b){a=a|0;b=b|0;aaa((K$a(f[(f[a+84>>2]|0)+104>>2]|0)|0)+12|0,b);h0a(a);return}function kqa(a,b){a=a|0;b=+b;var c=0,d=0;c=u;u=u+16|0;d=c;p[d>>3]=b;f[a>>2]=4;d=x$a(d)|0;a=a+8|0;f[a>>2]=d;f[a+4>>2]=I;u=c;return}function lqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;fJ(a,b);b=b+16|0}return}function mqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;gJ(a,b);b=b+16|0}return}function nqa(a,b){a=a|0;b=b|0;vMa(a,SQa(f[b>>2]|0)|0);return}function oqa(a,b){a=a|0;b=b|0;vMa(a,KQa(f[b>>2]|0)|0);return}function pqa(a,b){a=a|0;b=b|0;vMa(a,LQa(f[b>>2]|0)|0);return}function qqa(a,b){a=a|0;b=b|0;iOa(a,rQa(f[b>>2]|0)|0);return}function rqa(a){a=a|0;var b=0;switch(a|0){case 0:{b=1;break}case 1:{b=4;break}case 2:{b=3;break}case 8:{b=2;break}case 9:{b=0;break}default:hb()}return b|0}function sqa(a,b){a=a|0;b=b|0;b=Um(b,f[a+48>>2]|0)|0;BVa(f[a+16>>2]|0,b)|0;return}function tqa(a,b){a=a|0;b=b|0;var c=0;c=b+32|0;un(a,b,b+28|0,un(a,b,c,0,0)|0,c)|0;return}function uqa(a,b){a=a|0;b=b|0;if(jDa(a,b)|0)return f[(f[a+8>>2]|0)+(b<<2)>>2]|0;else{b=Ea(4)|0;uab(b);Pa(b|0,39536,426)}return 0}function vqa(a,b){a=a|0;b=b|0;RMa(a+16|0,qSa(f[b>>2]|0)|0);return}function wqa(a,b){a=a|0;b=b|0;aQa(a+16|0,EQa(f[b>>2]|0)|0);return}function xqa(a){a=a|0;var b=0;b=f[a+16>>2]|0;if((b|0)!=0?(f[b+4>>2]|0)!=5:0){b=f[a+12>>2]|0;if(!b)b=0;else b=f[b+4>>2]|0}else b=5;f[a+4>>2]=b;return}function yqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Yv(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function zqa(a){a=a|0;a=E_a(a)|0;if((a|0)!=0?o2a(f[(f[a+12>>2]|0)+4>>2]|0)|0:0)a=1;else a=0;return a|0}function Aqa(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;b[f>>0]=a<<24>>24>-1?a:e;f=f+1|0;c=c+1|0}return d|0}function Bqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Vab(PPa(a)|0)|0;f[d>>2]=b;b=Wab(PPa(a)|0)|0;f[b>>2]=c;return a|0}function Cqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=fVa(f[a>>2]|0)|0;f[a+8>>2]=b;f[a+12>>2]=c;f[a+16>>2]=d;LI(a);return a|0}function Dqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;kJ(a,b);b=b+16|0}return}function Eqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;lJ(a,b);b=b+16|0}return}function Fqa(a,b){a=a|0;b=b|0;iOa(a,DQa(f[b>>2]|0)|0);return}function Gqa(a,b){a=a|0;b=b|0;jZa(a);IVa(a+8|0,b);tab(a+24|0);f[a+28>>2]=0;f[a+32>>2]=0;f[a+4>>2]=5;return}function Hqa(a){a=a|0;G0(a+40|0);xKa(a+12|0);return}function Iqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;lXa(a);f[a+24>>2]=b;f[a+28>>2]=c;f[a+32>>2]=d;return}function Jqa(a){a=a|0;f[a>>2]=42416;MNa(a+56|0);MNa(a+44|0);LTa(a);return}function Kqa(a){a=a|0;UDa(a+48|0);qxa(a+36|0);xVa(a);return}function Lqa(a,b){a=a|0;b=b|0;var c=0;c=b+24|0;un(a,b,b+28|0,un(a,b,c,0,0)|0,c)|0;return}function Mqa(a,b){a=a|0;b=b|0;var c=0;c=b+12|0;un(a,b,b+16|0,un(a,b,c,0,0)|0,c)|0;return}function Nqa(a,b){a=a|0;b=b|0;if(vab(f[a>>2]|0)|0){oaa(f[a+8>>2]|0,b);return a|0}else Ca(53407,75338,414,65709);return 0}function Oqa(a,b){a=a|0;b=b|0;vMa(a,WQa(f[b>>2]|0)|0);return}function Pqa(a,b){a=a|0;b=b|0;vMa(a,XQa(f[b>>2]|0)|0);return}function Qqa(a,b){a=a|0;b=b|0;vMa(a,YQa(f[b>>2]|0)|0);return}function Rqa(a,b){a=a|0;b=b|0;$Wa(a,b);qG(a+-16+16|0,b)}function Sqa(a,b){a=a|0;b=b|0;aQa(a+16|0,SQa(f[b>>2]|0)|0);return}function Tqa(a,b){a=a|0;b=b|0;aQa(a+16|0,KQa(f[b>>2]|0)|0);return}function Uqa(a,b){a=a|0;b=b|0;aQa(a+16|0,LQa(f[b>>2]|0)|0);return}function Vqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;yw(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function Wqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;xw(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function Xqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Zv(e,b,c,d,Bbb(f[a+32>>2]|0)|0)|0}function Yqa(a,b,c){a=a|0;b=b|0;c=c|0;f[a+76>>2]=b;zfa(a+80|0,c)|0;return}function Zqa(a,b){a=a|0;b=b|0;var c=0;c=(Hr(a,f[b+28>>2]|0)|0)+2|0;return c+(EJa(a,f[b+32>>2]|0)|0)|0}function _qa(a){a=a|0;o_(f[a+4>>2]|0);return}function $qa(a,b){a=a|0;b=b|0;b=kN(a,b)|0;return b|0}function ara(a){a=a|0;var b=0;b=f[a+4>>2]|0;if((b|0)!=5?!(l6a(b)|0):0){a=h[a+8>>0]|0;a=(Dxa(b)|0)>>>0>a>>>0}else a=0;return a|0}function bra(a){a=a|0;nVa(a);a=a+36|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function cra(a,b){a=a|0;b=b|0;pI(a,b+36|0);return}function dra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;oJ(a,b);b=b+16|0}return}function era(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;pJ(a,b);b=b+16|0}return}function fra(a,b){a=a|0;b=b|0;iOa(a,EQa(f[b>>2]|0)|0);return}function gra(a,b){a=a|0;b=b|0;bRa(a,rQa(f[b>>2]|0)|0);return}function hra(a,b){a=a|0;b=b|0;return (J7(a,b)|0)!=0|0}function ira(a){a=a|0;N4(a);$$(a+12|0);return}function jra(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0)_da();else{c=n8(b)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+b;return}}function kra(a){a=a|0;if(!a){a=Ea(4)|0;f[a>>2]=0;s6a(a);Pa(a|0,37840,324)}else return bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;return 0}function lra(a,b){a=a|0;b=b|0;KH(a,b+36|0);return}function mra(a,b){a=a|0;b=b|0;JOa(a+16|0,rQa(f[b>>2]|0)|0);return}function nra(a,b){a=a|0;b=b|0;aRa(a+16|0,rQa(f[b>>2]|0)|0);return}function ora(a,b){a=a|0;b=b|0;vMa(a,iRa(f[b>>2]|0)|0);return}function pra(a,b){a=a|0;b=b|0;vMa(a,oRa(f[b>>2]|0)|0);return}function qra(a){a=a|0;var b=0,c=0;c=a+40|0;b=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));f[c>>2]=1065353216;return}function rra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Aw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function sra(a){a=a|0;ZNa(a);a=a+36|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function tra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;vJ(a,b);b=b+16|0}return}function ura(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;wJ(a,b);b=b+16|0}return}function vra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;xJ(a,b);b=b+16|0}return}function wra(a,b){a=a|0;b=b|0;b=(WQa(f[b>>2]|0)|0)+4|0;DTa(f[b>>2]|0);return}function xra(a,b){a=a|0;b=b|0;b=(XQa(f[b>>2]|0)|0)+4|0;ETa(f[b>>2]|0);return}function yra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;yJ(a,b);b=b+16|0}return}function zra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;zJ(a,b);b=b+16|0}return}function Ara(a,b){a=a|0;b=b|0;iOa(a,SQa(f[b>>2]|0)|0);return}function Bra(a,b){a=a|0;b=b|0;iOa(a,KQa(f[b>>2]|0)|0);return}function Cra(a,b){a=a|0;b=b|0;iOa(a,LQa(f[b>>2]|0)|0);return}function Dra(a,b){a=a|0;b=b|0;bRa(a,DQa(f[b>>2]|0)|0);return}function Era(a,b){a=a|0;b=b|0;aQa(a+16|0,WQa(f[b>>2]|0)|0);return}function Fra(a,b){a=a|0;b=b|0;aQa(a+16|0,XQa(f[b>>2]|0)|0);return}function Gra(a,b){a=a|0;b=b|0;aQa(a+16|0,YQa(f[b>>2]|0)|0);return}function Hra(a,b){a=a|0;b=b|0;b=b+36|0;HK(a+44|0,b);tK(a+16|0,b);return}function Ira(){var a=0;f[32781]=0;f[32780]=49820;f[32782]=46;f[32783]=44;f[32784]=0;f[32785]=0;f[32786]=0;a=0;while(1){if((a|0)==3)break;f[131136+(a<<2)>>2]=0;a=a+1|0}return}function Jra(){var a=0;f[32775]=0;f[32774]=49780;b[131104]=46;b[131105]=44;f[32777]=0;f[32778]=0;f[32779]=0;a=0;while(1){if((a|0)==3)break;f[131108+(a<<2)>>2]=0;a=a+1|0}return}function Kra(a){a=a|0;f[a>>2]=47064;dka(a+4|0);a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function Lra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=0;while(1){if((b|0)==(c|0))break;d=(f[b>>2]|0)+(a<<4)|0;e=d&-268435456;a=(e>>>24|e)^d;b=b+4|0}return a|0}function Mra(a,c,d,e,f,g){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;g=sT(a,c,d,c,e,f,g)|0;b[g+20>>0]=1;return g|0}function Nra(a,b){a=a|0;b=b|0;JOa(a+16|0,DQa(f[b>>2]|0)|0);return}function Ora(a,b){a=a|0;b=b|0;aRa(a+16|0,DQa(f[b>>2]|0)|0);return}function Pra(a,b){a=a|0;b=b|0;Os(a,DQa(f[b>>2]|0)|0);return}function Qra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Bw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Rra(a){a=a|0;aKa(a);f[a>>2]=42416;yUa(a+44|0);yUa(a+56|0);return}function Sra(a){a=a|0;f[a>>2]=47e3;dka(a+4|0);a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function Tra(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a=0;while(1){if((c|0)==(d|0))break;e=(a<<4)+(b[c>>0]|0)|0;f=e&-268435456;a=(f>>>24|f)^e;c=c+1|0}return a|0}function Ura(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=n8(24)|0;BLa(d,3);i6(d,a);f[d+4>>2]=b;i6(d,c);return d|0}function Vra(a,b){a=a|0;b=b|0;uI(a,b+36|0);return}function Wra(a,b){a=a|0;b=b|0;b=(zRa(f[b>>2]|0)|0)+8|0;Jxa(a,f[b>>2]|0);return}function Xra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;CJ(a,b);b=b+16|0}return}function Yra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;DJ(a,b);b=b+16|0}return}function Zra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;EJ(a,b);b=b+16|0}return}function _ra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;HJ(a,b);b=b+16|0}return}function $ra(a,b){a=a|0;b=b|0;bRa(a,EQa(f[b>>2]|0)|0);return}function asa(a,b){a=a|0;b=b|0;aQa(a+16|0,iRa(f[b>>2]|0)|0);return}function bsa(a,b){a=a|0;b=b|0;aQa(a+16|0,oRa(f[b>>2]|0)|0);return}function csa(a,b){a=a|0;b=b|0;Vf(a,b);return}function dsa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;Lw(e,b,c,d,Bbb(f[a+32>>2]|0)|0);return}function esa(a,c,d){a=a|0;c=c|0;d=d|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=a&7|48;a=EMa(a|0,c|0,3)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function fsa(a,b,c){a=a|0;b=b|0;c=c|0;return VD(a,f[b>>2]|0,c)|0}function gsa(a,b,c){a=a|0;b=b|0;c=c|0;return dp(a,f[b>>2]|0,c)|0}function hsa(a){a=a|0;var c=0,d=0;c=b[a+11>>0]|0;d=c<<24>>24<0;return HH(d?f[a>>2]|0:a,d?f[a+4>>2]|0:c&255)|0}function isa(a,b){a=a|0;b=b|0;JOa(a+16|0,EQa(f[b>>2]|0)|0);return}function jsa(a,b){a=a|0;b=b|0;aRa(a+16|0,EQa(f[b>>2]|0)|0);return}function ksa(a,b){a=a|0;b=b|0;vMa(a,IRa(f[b>>2]|0)|0);return}function lsa(a,b){a=a|0;b=b|0;vMa(a,yRa(f[b>>2]|0)|0);return}function msa(a,b){a=a|0;b=b|0;vMa(a,zRa(f[b>>2]|0)|0);return}function nsa(a,b){a=a|0;b=b|0;vMa(a,ARa(f[b>>2]|0)|0);return}function osa(a,b){a=a|0;b=b|0;iOa(a,WQa(f[b>>2]|0)|0);return}function psa(a,b){a=a|0;b=b|0;iOa(a,XQa(f[b>>2]|0)|0);return}function qsa(a,b){a=a|0;b=b|0;iOa(a,YQa(f[b>>2]|0)|0);return}function rsa(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;d=b;f[d>>2]=f[33152];f[c>>2]=f[d>>2];hXa(a,c);u=b;return}function ssa(a,b){a=a|0;b=b|0;f4a(f[a>>2]|0,b);f[(f[a+28>>2]|0)+-4>>2]=b;return}function tsa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;w4(a,b);f[a+12>>2]=c;f[a+16>>2]=d;return}function usa(a){a=a|0;tda(a);return}function vsa(a,b,c){a=a|0;b=b|0;c=c|0;a=eTa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+12>>2]=c;iWa(a);return a|0}function wsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=b+8|0;c=(f[b>>2]|0)+-8|0;e=c;d=f[e+4>>2]|0;f[a>>2]=f[e>>2];f[a+4>>2]=d;f[b>>2]=c;return}function xsa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;IJ(a,b);b=b+16|0}return}function ysa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;JJ(a,b);b=b+16|0}return}function zsa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;KJ(a,b);b=b+16|0}return}function Asa(a,b){a=a|0;b=b|0;bRa(a,SQa(f[b>>2]|0)|0);return}function Bsa(a,b){a=a|0;b=b|0;bRa(a,KQa(f[b>>2]|0)|0);return}function Csa(a,b){a=a|0;b=b|0;bRa(a,LQa(f[b>>2]|0)|0);return}function Dsa(a,b){a=a|0;b=b|0;return bI(a,b,h7a(b)|0)|0}function Esa(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;d=b+4|0;c=b;f4a(d,0);f4a(c,0);qpa(a,f[d>>2]|0,f[c>>2]|0);u=b;return}function Fsa(a,b){a=a|0;b=b|0;rQa(f[b>>2]|0)|0;CVa(a);return}function Gsa(a,b){a=a|0;b=b|0;JOa(a+16|0,SQa(f[b>>2]|0)|0);return}function Hsa(a,b){a=a|0;b=b|0;JOa(a+16|0,KQa(f[b>>2]|0)|0);return}function Isa(a,b){a=a|0;b=b|0;JOa(a+16|0,LQa(f[b>>2]|0)|0);return}function Jsa(a,b){a=a|0;b=b|0;aRa(a+16|0,SQa(f[b>>2]|0)|0);return}function Ksa(a,b){a=a|0;b=b|0;aRa(a+16|0,KQa(f[b>>2]|0)|0);return}function Lsa(a,b){a=a|0;b=b|0;aRa(a+16|0,LQa(f[b>>2]|0)|0);return}function Msa(a,b){a=a|0;b=b|0;vMa(a,JRa(f[b>>2]|0)|0);return}function Nsa(a,b){a=a|0;b=b|0;vMa(a,KRa(f[b>>2]|0)|0);return}function Osa(a,b){a=a|0;b=b|0;vMa(a,LRa(f[b>>2]|0)|0);return}function Psa(a,b){a=a|0;b=b|0;vMa(a,WRa(f[b>>2]|0)|0);return}function Qsa(a,b){a=a|0;b=b|0;vMa(a,XRa(f[b>>2]|0)|0);return}function Rsa(a,b){a=a|0;b=b|0;iOa(a,iRa(f[b>>2]|0)|0);return}function Ssa(a,b){a=a|0;b=b|0;iOa(a,oRa(f[b>>2]|0)|0);return}function Tsa(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=c;U0a(a+4|0,c);d=f[d>>2]|0;f[a+8>>2]=d;d=(Bbb(d)|0)==0&1;b[a+12>>0]=d;return}function Usa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Ew(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Vsa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Fw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Wsa(a,c){a=a|0;c=c|0;rq(a,c);if(Fab(f[c>>2]|0)|0)b[a+26>>0]=1;return E0(a)|0}function Xsa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=f[d>>2]|0;a=(f[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;Iu(e|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a;return c|0}function Ysa(a,b){a=a|0;b=b|0;return (K5(a,b)|0)!=0|0}function Zsa(a){a=a|0;xda(a);return}function _sa(a){a=a|0;yda(a);return}function $sa(a){a=a|0;zda(a);return}function ata(a){a=a|0;Ada(a);return}function bta(a){a=a|0;Bda(a);return}function cta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128)a=f[26992+(a<<2)>>2]|0;f[b>>2]=a;b=b+4|0}return c|0}function dta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128)a=f[24688+(a<<2)>>2]|0;f[b>>2]=a;b=b+4|0}return c|0}function eta(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)>256){N$a();b=50276}else{G$a();b=50272}f[a>>2]=c;f[a+4>>2]=b;return}function fta(a,b){a=a|0;b=b|0;KH(a,b+8|0);return}function gta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;VJ(a,b);b=b+16|0}return}function hta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;NJ(a,b);b=b+16|0}return}function ita(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;OJ(a,b);b=b+16|0}return}function jta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;PJ(a,b);b=b+16|0}return}function kta(a,b){a=a|0;b=b|0;b=(oRa(f[b>>2]|0)|0)+8|0;rx(a,f[b>>2]|0);return}function lta(a,b){a=a|0;b=b|0;b=(oRa(f[b>>2]|0)|0)+8|0;Ifa(a,f[b>>2]|0);return}function mta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;QJ(a,b);b=b+16|0}return}function nta(a,b){a=a|0;b=b|0;aQa(a+16|0,IRa(f[b>>2]|0)|0);return}function ota(a,b){a=a|0;b=b|0;aQa(a+16|0,yRa(f[b>>2]|0)|0);return}function pta(a,b){a=a|0;b=b|0;aQa(a+16|0,zRa(f[b>>2]|0)|0);return}function qta(a,b){a=a|0;b=b|0;aQa(a+16|0,ARa(f[b>>2]|0)|0);return}function rta(){J8a();r8a();o8a();l8a();j8a();h8a();$7a();_7a();return}function sta(a){a=a|0;var b=0;b=f[a+16>>2]|0;if((a|0)!=(b|0)){if(b|0)oc[f[(f[b>>2]|0)+20>>2]&1023](b)}else oc[f[(f[b>>2]|0)+16>>2]&1023](b);return}function tta(a,b){a=a|0;b=b|0;SH(a,b,h7a(b)|0);return}function uta(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==107458?a+4|0:0)|0}function vta(a,b){a=a|0;b=b|0;DQa(f[b>>2]|0)|0;CVa(a);return}function wta(a,b){a=a|0;b=b|0;vMa(a,gSa(f[b>>2]|0)|0);return}function xta(a,b){a=a|0;b=b|0;vMa(a,YRa(f[b>>2]|0)|0);return}function yta(a,b){a=a|0;b=b|0;vMa(a,ZRa(f[b>>2]|0)|0);return}function zta(a,b){a=a|0;b=b|0;vMa(a,_Ra(f[b>>2]|0)|0);return}function Ata(a,b){a=a|0;b=b|0;vMa(a,hSa(f[b>>2]|0)|0);return}function Bta(a,b){a=a|0;b=b|0;bRa(a,WQa(f[b>>2]|0)|0);return}function Cta(a,b){a=a|0;b=b|0;bRa(a,XQa(f[b>>2]|0)|0);return}function Dta(a,b){a=a|0;b=b|0;bRa(a,YQa(f[b>>2]|0)|0);return}function Eta(a){a=a|0;a=a>>>1|a;a=a>>>2|a;a=a>>>4|a;a=a>>>8|a;a=a>>>16|a;if(!a)a=32;else{a=23904+((X(a,130329821)|0)>>>27)|0;a=h[a>>0]|0}return a|0}function Fta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Tq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Gta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Rq(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Hta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Gw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Ita(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Hw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Jta(a){a=a|0;var b=0;b=f[32837]|0;do{f[b>>2]=0;b=(f[32837]|0)+4|0;f[32837]=b;a=a+-1|0}while((a|0)!=0);return}function Kta(a,b){a=a|0;b=b|0;JOa(a+16|0,WQa(f[b>>2]|0)|0);return}function Lta(a,b){a=a|0;b=b|0;JOa(a+16|0,XQa(f[b>>2]|0)|0);return}function Mta(a,b){a=a|0;b=b|0;JOa(a+16|0,YQa(f[b>>2]|0)|0);return}function Nta(a,b){a=a|0;b=b|0;aRa(a+16|0,WQa(f[b>>2]|0)|0);return}function Ota(a,b){a=a|0;b=b|0;aRa(a+16|0,XQa(f[b>>2]|0)|0);return}function Pta(a,b){a=a|0;b=b|0;aRa(a+16|0,YQa(f[b>>2]|0)|0);return}function Qta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;ZJ(a,b);b=b+16|0}return}function Rta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;WJ(a,b);b=b+16|0}return}function Sta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;XJ(a,b);b=b+16|0}return}function Tta(a,b){a=a|0;b=b|0;aQa(a+16|0,JRa(f[b>>2]|0)|0);return}function Uta(a,b){a=a|0;b=b|0;aQa(a+16|0,KRa(f[b>>2]|0)|0);return}function Vta(a,b){a=a|0;b=b|0;aQa(a+16|0,LRa(f[b>>2]|0)|0);return}function Wta(a,b){a=a|0;b=b|0;aQa(a+16|0,WRa(f[b>>2]|0)|0);return}function Xta(a,b){a=a|0;b=b|0;aQa(a+16|0,XRa(f[b>>2]|0)|0);return}function Yta(a){a=a|0;f[a>>2]=42616;zoa(a+44|0);LTa(a);return}function Zta(a,b){a=a|0;b=b|0;var c=0;c=(EJa(a,f[b+12>>2]|0)|0)+1|0;return c+(EJa(a,f[b+16>>2]|0)|0)|0}function _ta(a,b){a=a|0;b=b|0;return (eX(a+44|0,b)|0)!=(a+48|0)|0}function $ta(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;f4a(b,iqa(aUa()|0,a)|0);u=c;return f[b>>2]|0}function aua(a,b){a=a|0;b=b|0;EQa(f[b>>2]|0)|0;CVa(a);return}function bua(a,b){a=a|0;b=b|0;b=(ZRa(f[b>>2]|0)|0)+8|0;bVa(a,f[b>>2]|0);return}function cua(a,b){a=a|0;b=b|0;MD(a,rQa(f[b>>2]|0)|0);return}function dua(a,b){a=a|0;b=b|0;vMa(a,iSa(f[b>>2]|0)|0);return}function eua(a,b){a=a|0;b=b|0;iOa(a,IRa(f[b>>2]|0)|0);return}function fua(a,b){a=a|0;b=b|0;iOa(a,yRa(f[b>>2]|0)|0);return}function gua(a,b){a=a|0;b=b|0;iOa(a,zRa(f[b>>2]|0)|0);return}function hua(a,b){a=a|0;b=b|0;iOa(a,ARa(f[b>>2]|0)|0);return}function iua(a,b){a=a|0;b=b|0;bRa(a,iRa(f[b>>2]|0)|0);return}function jua(a,b){a=a|0;b=b|0;bRa(a,oRa(f[b>>2]|0)|0);return}function kua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Iw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function lua(a){a=a|0;C$(f[a+4>>2]|0);return}function mua(a){a=a|0;D$(f[a+4>>2]|0);return}function nua(a,b){a=a|0;b=b|0;JOa(a+16|0,iRa(f[b>>2]|0)|0);return}function oua(a,b){a=a|0;b=b|0;JOa(a+16|0,oRa(f[b>>2]|0)|0);return}function pua(a,b){a=a|0;b=b|0;aRa(a+16|0,iRa(f[b>>2]|0)|0);return}function qua(a,b){a=a|0;b=b|0;aRa(a+16|0,oRa(f[b>>2]|0)|0);return}function rua(a,b){a=a|0;b=b|0;DQa(f[b>>2]|0)|0;SZa(a);return}function sua(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;_J(a,b);b=b+16|0}return}function tua(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;$J(a,b);b=b+16|0}return}function uua(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;aK(a,b);b=b+16|0}return}function vua(a,b){a=a|0;b=b|0;aQa(a+16|0,gSa(f[b>>2]|0)|0);return}function wua(a,b){a=a|0;b=b|0;aQa(a+16|0,YRa(f[b>>2]|0)|0);return}function xua(a,b){a=a|0;b=b|0;aQa(a+16|0,ZRa(f[b>>2]|0)|0);return}function yua(a,b){a=a|0;b=b|0;aQa(a+16|0,_Ra(f[b>>2]|0)|0);return}function zua(a,b){a=a|0;b=b|0;aQa(a+16|0,hSa(f[b>>2]|0)|0);return}function Aua(a){a=a|0;var b=0;b=n8(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;wab(b);f[a>>2]=b;return}function Bua(a,b){a=a|0;b=b|0;SQa(f[b>>2]|0)|0;CVa(a);return}function Cua(a,b){a=a|0;b=b|0;KQa(f[b>>2]|0)|0;CVa(a);return}function Dua(a,b){a=a|0;b=b|0;LQa(f[b>>2]|0)|0;CVa(a);return}function Eua(a,b){a=a|0;b=b|0;k3(a,DQa(f[b>>2]|0)|0);return}function Fua(a,b){a=a|0;b=b|0;iOa(a,JRa(f[b>>2]|0)|0);return}function Gua(a,b){a=a|0;b=b|0;iOa(a,KRa(f[b>>2]|0)|0);return}function Hua(a,b){a=a|0;b=b|0;iOa(a,LRa(f[b>>2]|0)|0);return}function Iua(a,b){a=a|0;b=b|0;iOa(a,WRa(f[b>>2]|0)|0);return}function Jua(a,b){a=a|0;b=b|0;iOa(a,XRa(f[b>>2]|0)|0);return}function Kua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Jw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Lua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Kw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Mua(a){a=a|0;var b=0;a=n8(44)|0;x=0;ta(441,a|0);b=x;x=0;if(b&1){b=Ia()|0;ubb(a);Ua(b|0)}else return a|0;return 0}function Nua(a,b){a=a|0;b=b|0;return kP(a,b)|0}function Oua(a,b){a=a|0;b=b|0;vMa(a,qSa(f[b>>2]|0)|0);return}function Pua(a,b){a=a|0;b=b|0;aQa(a+16|0,iSa(f[b>>2]|0)|0);return}function Qua(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;yUa(a+12|0);yUa(a+24|0);f[a+36>>2]=0;return}function Rua(a){a=a|0;var b=0;FJa(a);f[a>>2]=42736;a=a+48|0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Sua(a){a=a|0;HTa(a+28|0);HTa(a+16|0);HTa(a+4|0);return}function Tua(a){a=a|0;var b=0;if(f[a+68>>2]|0){b=f[a+116>>2]|0;a=a+112|0;if(b|0)f[b+112>>2]=f[a>>2];a=f[a>>2]|0;f[((a|0)==0?46812:a+116|0)>>2]=b}return}function Uua(a,b){a=a|0;b=b|0;b=b+8|0;a=e_(a+24|0,b)|0;f[b>>2]=f[a>>2];return}function Vua(a){a=a|0;var b=0,c=0;b=a+8|0;if(!((f[b>>2]|0)!=0?(c=f[b>>2]|0,f[b>>2]=c+-1,(c|0)!=0):0))oc[f[(f[a>>2]|0)+16>>2]&1023](a);return}function Wua(a){a=+a;var b=0,c=0;c=u;u=u+16|0;b=c;f4a(b,$Ua(aUa()|0,a)|0);u=c;return f[b>>2]|0}function Xua(a,b){a=a|0;b=b|0;var c=0;if((a|0)!=0?(c=E_a(a)|0,(c|0)!=0):0)a=(f[c+8>>2]|0)==(b|0)?c:0;else a=0;return a|0}function Yua(a,b){a=a|0;b=b|0;Ex(a,DQa(f[b>>2]|0)|0);return}function Zua(a,b){a=a|0;b=b|0;bw(a,rQa(f[b>>2]|0)|0);return}function _ua(a,b){a=a|0;b=b|0;dx(a,oRa(f[b>>2]|0)|0);return}function $ua(a,b){a=a|0;b=b|0;sq(a,oRa(f[b>>2]|0)|0);return}function ava(a,b){a=a|0;b=b|0;iOa(a,gSa(f[b>>2]|0)|0);return}function bva(a,b){a=a|0;b=b|0;iOa(a,YRa(f[b>>2]|0)|0);return}function cva(a,b){a=a|0;b=b|0;iOa(a,ZRa(f[b>>2]|0)|0);return}function dva(a,b){a=a|0;b=b|0;iOa(a,_Ra(f[b>>2]|0)|0);return}function eva(a,b){a=a|0;b=b|0;iOa(a,hSa(f[b>>2]|0)|0);return}function fva(a,b){a=a|0;b=b|0;bRa(a,IRa(f[b>>2]|0)|0);return}function gva(a,b){a=a|0;b=b|0;bRa(a,yRa(f[b>>2]|0)|0);return}function hva(a,b){a=a|0;b=b|0;bRa(a,zRa(f[b>>2]|0)|0);return}function iva(a,b){a=a|0;b=b|0;bRa(a,ARa(f[b>>2]|0)|0);return}function jva(a,b,c){a=a|0;b=b|0;c=c|0;Xf(a,c);Jk(c);return}function kva(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Nw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function lva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=f[e+4>>2]|0;c=a;f[c>>2]=f[e>>2];f[c+4>>2]=d;PR(a+8|0,b+8|0);return}function mva(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;$(23)}function nva(a,b){a=a|0;b=b|0;WQa(f[b>>2]|0)|0;CVa(a);return}function ova(a,b){a=a|0;b=b|0;XQa(f[b>>2]|0)|0;CVa(a);return}function pva(a,b){a=a|0;b=b|0;YQa(f[b>>2]|0)|0;CVa(a);return}function qva(a,b){a=a|0;b=b|0;JOa(a+16|0,IRa(f[b>>2]|0)|0);return}function rva(a,b){a=a|0;b=b|0;JOa(a+16|0,yRa(f[b>>2]|0)|0);return}function sva(a,b){a=a|0;b=b|0;JOa(a+16|0,zRa(f[b>>2]|0)|0);return}function tva(a,b){a=a|0;b=b|0;JOa(a+16|0,ARa(f[b>>2]|0)|0);return}function uva(a,b){a=a|0;b=b|0;aRa(a+16|0,IRa(f[b>>2]|0)|0);return}function vva(a,b){a=a|0;b=b|0;aRa(a+16|0,yRa(f[b>>2]|0)|0);return}function wva(a,b){a=a|0;b=b|0;aRa(a+16|0,zRa(f[b>>2]|0)|0);return}function xva(a,b){a=a|0;b=b|0;aRa(a+16|0,ARa(f[b>>2]|0)|0);return}function yva(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((a|0)==(c|0))break;YNa(d,b[a>>0]|0);a=a+1|0}return}function zva(a){a=a|0;aM(a);return}function Ava(a,b){a=a|0;b=b|0;b=(_Ra(f[b>>2]|0)|0)+8|0;cza(a,f[b>>2]|0);return}function Bva(a,b){a=a|0;b=b|0;iOa(a,iSa(f[b>>2]|0)|0);return}function Cva(a,b){a=a|0;b=b|0;bRa(a,JRa(f[b>>2]|0)|0);return}function Dva(a,b){a=a|0;b=b|0;bRa(a,KRa(f[b>>2]|0)|0);return}function Eva(a,b){a=a|0;b=b|0;bRa(a,LRa(f[b>>2]|0)|0);return}function Fva(a,b){a=a|0;b=b|0;bRa(a,WRa(f[b>>2]|0)|0);return}function Gva(a,b){a=a|0;b=b|0;bRa(a,XRa(f[b>>2]|0)|0);return}function Hva(a,b){a=a|0;b=b|0;aQa(a+16|0,qSa(f[b>>2]|0)|0);return}function Iva(a){a=a|0;f[a>>2]=45748;ppa(a+44|0);LTa(a);return}function Jva(a){a=a|0;a=(ARa(a)|0)+16|0;return roa(ORa((LRa(f[a>>2]|0)|0)+8|0)|0)|0}function Kva(a,b){a=a|0;b=b|0;var c=0;c=5381;while(1){if(!a)break;c=c*33^a&255;a=a>>>8}while(1){if(!b)break;a=c*33^b&255;b=b>>>8;c=a}return c|0}function Lva(a,b){a=a|0;b=b|0;Qea(a,WRa(f[b>>2]|0)|0);return}function Mva(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;fK(a,b);b=b+16|0}return}function Nva(a,b){a=a|0;b=b|0;iRa(f[b>>2]|0)|0;CVa(a);return}function Ova(a,b){a=a|0;b=b|0;oRa(f[b>>2]|0)|0;CVa(a);return}function Pva(a,b){a=a|0;b=b|0;JOa(a+16|0,JRa(f[b>>2]|0)|0);return}function Qva(a,b){a=a|0;b=b|0;JOa(a+16|0,KRa(f[b>>2]|0)|0);return}function Rva(a,b){a=a|0;b=b|0;JOa(a+16|0,LRa(f[b>>2]|0)|0);return}function Sva(a,b){a=a|0;b=b|0;JOa(a+16|0,WRa(f[b>>2]|0)|0);return}function Tva(a,b){a=a|0;b=b|0;JOa(a+16|0,XRa(f[b>>2]|0)|0);return}function Uva(a,b){a=a|0;b=b|0;aRa(a+16|0,JRa(f[b>>2]|0)|0);return}function Vva(a,b){a=a|0;b=b|0;aRa(a+16|0,KRa(f[b>>2]|0)|0);return}function Wva(a,b){a=a|0;b=b|0;aRa(a+16|0,LRa(f[b>>2]|0)|0);return}function Xva(a,b){a=a|0;b=b|0;aRa(a+16|0,WRa(f[b>>2]|0)|0);return}function Yva(a,b){a=a|0;b=b|0;aRa(a+16|0,XRa(f[b>>2]|0)|0);return}function Zva(a,b){a=a|0;b=b|0;EQa(f[b>>2]|0)|0;h_a(a);return}function _va(a,c){a=a|0;c=c|0;c=(KRa(f[c>>2]|0)|0)+20|0;mEa(a,b[c>>0]|0);return}function $va(a){a=a|0;var b=0;a=n8(56)|0;x=0;ta(452,a|0);b=x;x=0;if(b&1){b=Ia()|0;ubb(a);Ua(b|0)}else return a|0;return 0}function awa(a,b){a=a|0;b=b|0;f[a>>2]=b;yUa(a+4|0);return}function bwa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;WZ(a,124476,h7a(124476)|0);return}function cwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((f[a+4>>2]|0)==(b|0)?(d=a+28|0,(f[d>>2]|0)!=1):0)f[d>>2]=c;return}function dwa(a,b){a=a|0;b=b|0;Pt(a,DQa(f[b>>2]|0)|0);return}function ewa(a,b){a=a|0;b=b|0;bRa(a,gSa(f[b>>2]|0)|0);return}function fwa(a,b){a=a|0;b=b|0;bRa(a,YRa(f[b>>2]|0)|0);return}function gwa(a,b){a=a|0;b=b|0;bRa(a,ZRa(f[b>>2]|0)|0);return}function hwa(a,b){a=a|0;b=b|0;bRa(a,_Ra(f[b>>2]|0)|0);return}function iwa(a,b){a=a|0;b=b|0;bRa(a,hSa(f[b>>2]|0)|0);return}function jwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Rw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function kwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Sw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function lwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Ow(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function mwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Pw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function nwa(a){a=a|0;var b=0,c=0;c=a+64|0;b=f[c>>2]|0;f[c>>2]=0;if((b|0)==((f[a+4>>2]|0)-(f[a>>2]|0)>>2|0))return;else Ca(80022,79958,210,80044)}function owa(a,b){a=a|0;b=b|0;var c=0;c=n8(20)|0;hQa(c,b);J_(a,c);return}function pwa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;WZ(a,124482,h7a(124482)|0);return}function qwa(a,b){a=a|0;b=b|0;a=$Ra(a)|0;if(b|0){aaa(a+12|0,b);rt(a)}return a|0}function rwa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;gK(a,b);b=b+16|0}return}function swa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;kK(a,b);b=b+16|0}return}function twa(a,b){a=a|0;b=b|0;JOa(a+16|0,gSa(f[b>>2]|0)|0);return}function uwa(a,b){a=a|0;b=b|0;JOa(a+16|0,YRa(f[b>>2]|0)|0);return}function vwa(a,b){a=a|0;b=b|0;JOa(a+16|0,ZRa(f[b>>2]|0)|0);return}function wwa(a,b){a=a|0;b=b|0;JOa(a+16|0,_Ra(f[b>>2]|0)|0);return}function xwa(a,b){a=a|0;b=b|0;JOa(a+16|0,hSa(f[b>>2]|0)|0);return}function ywa(a,b){a=a|0;b=b|0;aRa(a+16|0,gSa(f[b>>2]|0)|0);return}function zwa(a,b){a=a|0;b=b|0;aRa(a+16|0,YRa(f[b>>2]|0)|0);return}function Awa(a,b){a=a|0;b=b|0;aRa(a+16|0,ZRa(f[b>>2]|0)|0);return}function Bwa(a,b){a=a|0;b=b|0;aRa(a+16|0,_Ra(f[b>>2]|0)|0);return}function Cwa(a,b){a=a|0;b=b|0;aRa(a+16|0,hSa(f[b>>2]|0)|0);return}function Dwa(a,b){a=a|0;b=b|0;iOa(a,qSa(f[b>>2]|0)|0);return}function Ewa(){var a=0,b=0;a=n8(52)|0;x=0;ua(291,a|0,1);b=x;x=0;if(b&1){b=Ia()|0;ubb(a);Ua(b|0)}else return a|0;return 0}function Fwa(a,b){a=a|0;b=b|0;sJa(a);f[a>>2]=45428;f[a+44>>2]=b;return}function Gwa(a){a=a|0;f[a>>2]=39868;return}function Hwa(a){a=a|0;var b=0,c=0,d=0;c=a+4|0;d=f[c>>2]|0;b=f[a>>2]|0;while(1){if((b|0)==(d|0))break;rbb(f[b>>2]|0);b=b+4|0}f[c>>2]=f[a>>2];return}function Iwa(a,b){a=a|0;b=b|0;var c=0;c=0;while(1){if((c|0)==(b|0))break;yCa(a,123308)|0;c=c+1|0}return a|0}function Jwa(a){a=a|0;Kr(a,h7a(124695)|0);return}function Kwa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;VG(a,49852,g7a(49852)|0);return}function Lwa(a){a=a|0;var b=0;a=f[a+8>>2]|0;if(a){b=kRa(a)|0;a=r6a()|0;if(b)kRa(b)|0}else a=1;return a|0}function Mwa(a){a=a|0;uSa(a+44|0);uSa(a+32|0);MMa(a);return}function Nwa(a){a=a|0;var b=0;a=n8(56)|0;x=0;ta(451,a|0);b=x;x=0;if(b&1){b=Ia()|0;ubb(a);Ua(b|0)}else return a|0;return 0}function Owa(a,b){a=a|0;b=b|0;rU(a,DQa(f[b>>2]|0)|0);return}function Pwa(a,b){a=a|0;b=b|0;bRa(a,iSa(f[b>>2]|0)|0);return}function Qwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Vw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Rwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Tw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Swa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Uw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Twa(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;if((JX(a)|0)==0?(ec[f[a+32>>2]&127](a,b,1)|0)==1:0)a=h[b>>0]|0;else a=-1;u=c;return a|0}function Uwa(a){a=a|0;Ofa(a);return}function Vwa(a){a=a|0;var b=0,c=0;a=$0a(f[a>>2]|0)|0;c=a+8|0;b=f[c>>2]|0;f[c>>2]=b+-1;if((b+-1|0)<0)ubb(a);return}function Wwa(a){a=a|0;var b=0;while(1){b=f[a>>2]|0;if(!b){b=f[a+4>>2]|0;if(!b)break;else a=b}else a=b}return a|0}function Xwa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;VG(a,49876,g7a(49876)|0);return}function Ywa(a,b,c){a=a|0;b=b|0;c=c|0;a=IUa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+12>>2]=c;o_a(a);return a|0}function Zwa(a,b){a=a|0;b=b|0;IRa(f[b>>2]|0)|0;CVa(a);return}function _wa(a,b){a=a|0;b=b|0;yRa(f[b>>2]|0)|0;CVa(a);return}function $wa(a,b){a=a|0;b=b|0;zRa(f[b>>2]|0)|0;CVa(a);return}function axa(a,b){a=a|0;b=b|0;ARa(f[b>>2]|0)|0;CVa(a);return}function bxa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;lK(a,b);b=b+16|0}return}function cxa(a,b){a=a|0;b=b|0;JOa(a+16|0,iSa(f[b>>2]|0)|0);return}function dxa(a,b){a=a|0;b=b|0;aRa(a+16|0,iSa(f[b>>2]|0)|0);return}function exa(a,b){a=a|0;b=b|0;lYa(rQa(f[b>>2]|0)|0);return}function fxa(a){a=a|0;var b=0;b=n8(48)|0;Mma(b,f[a+44>>2]|0);return b|0}function gxa(a,c){a=a|0;c=c|0;UHa(a);f[a>>2]=43980;b[a+44>>0]=c&1;yUa(a+48|0);return}function hxa(a,c){a=a|0;c=c|0;c=(YRa(f[c>>2]|0)|0)+20|0;UEa(a,b[c>>0]|0);return}function ixa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Ww(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function jxa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Xw(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function kxa(){var a=0,b=0;a=n8(52)|0;x=0;ua(291,a|0,2);b=x;x=0;if(b&1){b=Ia()|0;ubb(a);Ua(b|0)}else return a|0;return 0}function lxa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=b+4|0;if((f[d>>2]|0)!=(c|0)){f[d>>2]=c;Kv(a,b)}return}function mxa(a){a=a|0;switch(a|0){case 41:case 40:case 34:case 33:case 32:case 27:case 25:case 16:case 15:case 9:case 8:case 7:case 2:case 0:{a=1;break}default:a=0}return a|0}function nxa(a,b){a=a|0;b=b|0;var c=0;c=f[a>>2]|0;if(((f[a+4>>2]|0)-c|0)>>>0>b>>>0)return c+b|0;else Zda();return 0}function oxa(a){a=a|0;kga(a);return}function pxa(a){a=a|0;lga(a);return}function qxa(a){a=a|0;nga(a);return}function rxa(a){a=a|0;G6(a);return}function sxa(a){a=a|0;var c=0;kya(a);f[a>>2]=44868;b[a+16>>0]=0;c=a+20|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+36>>2]=1065353216;return}function txa(a,b){a=a|0;b=b|0;JRa(f[b>>2]|0)|0;CVa(a);return}function uxa(a,b){a=a|0;b=b|0;KRa(f[b>>2]|0)|0;CVa(a);return}function vxa(a,b){a=a|0;b=b|0;LRa(f[b>>2]|0)|0;CVa(a);return}function wxa(a,b){a=a|0;b=b|0;WRa(f[b>>2]|0)|0;CVa(a);return}function xxa(a,b){a=a|0;b=b|0;XRa(f[b>>2]|0)|0;CVa(a);return}function yxa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;tK(a,b);b=b+16|0}return}function zxa(a,b){a=a|0;b=b|0;bRa(a,qSa(f[b>>2]|0)|0);return}function Axa(a,b){a=a|0;b=b|0;qOa(f[a+24>>2]|0,b);return}function Bxa(){var a=0;a=n8(28)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;HOa(a);return a|0}function Cxa(a,b){a=a|0;b=b|0;var c=0;c=f[(f[b+8>>2]|0)+4>>2]|0;jxa(a,o2a(c)|0|(c|0)==5,b);return}function Dxa(a){a=a|0;var b=0;switch(a|0){case 0:{hb();break}case 3:case 1:{b=4;break}case 2:{b=8;break}case 4:{b=8;break}default:hb()}return b|0}function Exa(a){a=a|0;uSa(a+28|0);uSa(a+16|0);uSa(a+4|0);return}function Fxa(a){a=a|0;return zMa(a+4|0)|0}function Gxa(a,b){a=a|0;b=b|0;JOa(a+16|0,qSa(f[b>>2]|0)|0);return}function Hxa(a,b){a=a|0;b=b|0;aRa(a+16|0,qSa(f[b>>2]|0)|0);return}function Ixa(a,b){a=a|0;b=b|0;b=(_Ra(f[b>>2]|0)|0)+8|0;vla(a,f[b>>2]|0);return}function Jxa(a,c){a=a|0;c=c|0;if(ZSa(c)|0)Tba(a,c)|0;else b[a+104>>0]=0;return}function Kxa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;_w(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function Lxa(a){a=a|0;var b=0;switch(a|0){case 1:{b=0;break}case 2:{b=1;break}case 4:{b=2;break}case 8:{b=3;break}default:hb()}return b|0}function Mxa(a,b){a=a|0;b=b|0;if(Iab(f[b+4>>2]|0)|0)a=0;else a=(f[(f[a+120>>2]|0)+(f[b+8>>2]<<2)>>2]|0)>>>0<2;return a|0}function Nxa(a){a=a|0;FKa(a);f[a>>2]=45908;DGa(a+44|0);f[a+104>>2]=0;f[a+108>>2]=0;f[a+112>>2]=0;return}function Oxa(a){a=a|0;dVa(a+12|0);Lna(a);return}function Pxa(a){a=a|0;zga(a);return}function Qxa(a,b){a=a|0;b=b|0;if(n_a(b)|0){b=vRa(b)|0;PK(a,b)|0;a=b}return a|0}function Rxa(a,b){a=a|0;b=b|0;gSa(f[b>>2]|0)|0;CVa(a);return}function Sxa(a,b){a=a|0;b=b|0;YRa(f[b>>2]|0)|0;CVa(a);return}function Txa(a,b){a=a|0;b=b|0;ZRa(f[b>>2]|0)|0;CVa(a);return}function Uxa(a,b){a=a|0;b=b|0;_Ra(f[b>>2]|0)|0;CVa(a);return}function Vxa(a,b){a=a|0;b=b|0;hSa(f[b>>2]|0)|0;CVa(a);return}function Wxa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;vK(a,b);b=b+16|0}return}function Xxa(a,b){a=a|0;b=b|0;VYa(DQa(f[b>>2]|0)|0);return}function Yxa(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}f[a+32>>2]=0;return}function Zxa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==107889?a+4|0:0)|0}function _xa(a,b){a=a|0;b=b|0;AN(a,WQa(f[b>>2]|0)|0);return}function $xa(a,b){a=a|0;b=b|0;AN(a,XQa(f[b>>2]|0)|0);return}function aya(a,b){a=a|0;b=b|0;As(a,SQa(f[b>>2]|0)|0);return}function bya(a,b){a=a|0;b=b|0;$L(a,KQa(f[b>>2]|0)|0);return}function cya(a,b){a=a|0;b=b|0;GB(a,LQa(f[b>>2]|0)|0);return}function dya(a,b){a=a|0;b=b|0;rQa(f[b>>2]|0)|0;b$a()}function eya(a,b){a=a|0;b=b|0;xz(a,XRa(f[b>>2]|0)|0);return}function fya(a,b){a=a|0;b=b|0;kA(a,XRa(f[b>>2]|0)|0);return}function gya(a,b){a=a|0;b=b|0;yz(a,XRa(f[b>>2]|0)|0);return}function hya(a,b){a=a|0;b=b|0;lA(a,XRa(f[b>>2]|0)|0);return}function iya(a,b){a=a|0;b=b|0;mA(a,XRa(f[b>>2]|0)|0);return}function jya(a,b){a=a|0;b=b|0;iLa(a,rQa(f[b>>2]|0)|0);return}function kya(a){a=a|0;var b=0;f[a>>2]=40084;b=a+4|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function lya(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;$w(d,b,c,Bbb(f[a+32>>2]|0)|0);return}function mya(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=f[b>>2];if(!c)break;else{b=b+4|0;d=d+4|0}}}return a|0}function nya(a,c){a=a|0;c=c|0;var d=0;a=g8a(a)|0;d=bV(a)|0;if(d>>>0<1024){Iu(c|0,a|0,d+1|0)|0;a=0}else{Iu(c|0,a|0,1023)|0;b[c+1023>>0]=0;a=34}return a|0}function oya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g|0;fk(a,b,c,d,e)|0;u=g;return (I=f[e+4>>2]|0,f[e>>2]|0)|0}function pya(a,b,c){a=a|0;b=b|0;c=c|0;lXa(a);f[a+24>>2]=b;f[a+28>>2]=c;return}function qya(a){a=a|0;a1(f[a+4>>2]|0);return}function rya(a){a=a|0;mga(a);return}function sya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a;f[d>>2]=0;f[d+4>>2]=0;d=a+8|0;f[d>>2]=-1;f[d+4>>2]=-1;return}function tya(a,b){a=a|0;b=b|0;iSa(f[b>>2]|0)|0;CVa(a);return}function uya(a,b){a=a|0;b=b|0;rQa(f[b>>2]|0)|0;e1a(a);return}function vya(a,b){a=a|0;b=b|0;En(a+-16|0,b);return}function wya(a,b){a=a|0;b=b|0;while(1){if((a|0)==(b|0)){a=0;break}if(!(f[(f[a>>2]|0)+40>>2]|0))a=a+4|0;else{a=1;break}}return a|0}function xya(a){a=a|0;uSa(a+48|0);uSa(a+36|0);uSa(a+24|0);I_a(a);return}function yya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=X(d>>>0>>0?d:c,a)|0;d=a+(c>>>0>>0?d:c)|0;return (1<<(d&31)&f[b+(d>>>5<<2)>>2]|0)!=0|0}function zya(a){a=a|0;var b=0;b=n8(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[a>>2]=b;return}function Aya(a){a=a|0;var c=0,d=0;c=a+16|0;d=c+48|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+12>>0]=0;return}function Bya(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;return lc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Cya(a){a=a|0;SMa(a);f[a>>2]=39656;f[a+4>>2]=0;return}function Dya(a,b){a=a|0;b=b|0;return xc(a,f[b>>2]|0)|0}function Eya(a,b){a=a|0;b=b|0;var c=0;a=a+8|0;c=f[a>>2]|0;gH(c|0,0,b*12|0)|0;f[a>>2]=c+(b*12|0);return}function Fya(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;f=x5(a,c,0,d,c,e,f)|0;b[f+20>>0]=1;return f|0}function Gya(a,b){a=a|0;b=b|0;UE(a,YQa(f[b>>2]|0)|0);return}function Hya(a,b){a=a|0;b=b|0;rQa(f[b>>2]|0)|0;_Ja(a);return}function Iya(a,b){a=a|0;b=b|0;ez(a,IRa(f[b>>2]|0)|0);return}function Jya(a){a=a|0;mha(a);return}function Kya(a,b){a=a|0;b=b|0;if(vab(f[a>>2]|0)|0)return JDa(f[a+8>>2]|0,b)|0;else Ca(53407,75338,409,123761);return 0}function Lya(a,b,c){a=a|0;b=b|0;c=c|0;a=ATa(f[a>>2]|0)|0;f[a+8>>2]=b;f[a+12>>2]=c;via(a);return a|0}function Mya(a){a=a|0;uSa(a+48|0);uSa(a+36|0);I1a(f[a+24>>2]|0);I_a(a);return}function Nya(a){a=a|0;var b=0,c=0;Hwa(a);b=a+24|0;if(f[b>>2]|0?(c=f[b>>2]|0,c|0):0){Nya(c);ubb(c)}uSa(a);return}function Oya(a){a=a|0;if(sZa(a)|0)a=0;else a=zZa(f[f[a>>2]>>2]|0)|0;return a|0}function Pya(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=f[b>>2];return}function Qya(a,b){a=a|0;b=b|0;qSa(f[b>>2]|0)|0;CVa(a);return}function Rya(a,b){a=a|0;b=b|0;MI(a,iRa(f[b>>2]|0)|0);return}function Sya(a,b){a=a|0;b=b|0;Lx(a,DQa(f[b>>2]|0)|0);return}function Tya(a){a=a|0;var b=0;b=n8(48)|0;Una(b,f[a+44>>2]|0);return b|0}function Uya(a,b,c){a=a|0;b=b|0;c=c|0;return NKa(f[a+32>>2]|0,c,b)|0}function Vya(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;ubb(a);a=b}return}function Wya(a,b){a=a|0;b=b|0;SQa(f[b>>2]|0)|0;PSa(a);return}function Xya(a){a=a|0;uSa(a+44|0);MTa(a+32|0);I_a(a);return}function Yya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=b;f[a+4>>2]=c;fA(a+8|0,d,b);return}function Zya(a,b){a=a|0;b=b|0;JM(a,WQa(f[b>>2]|0)|0);return}function _ya(a,b){a=a|0;b=b|0;kR(a,XQa(f[b>>2]|0)|0);return}function $ya(a,b){a=a|0;b=b|0;iG(a,YQa(f[b>>2]|0)|0);return}function aza(a,b){a=a|0;b=b|0;Sr(a,SQa(f[b>>2]|0)|0);return}function bza(a,b){a=a|0;b=b|0;uX(a,WRa(f[b>>2]|0)|0);return}function cza(a,b){a=a|0;b=b|0;if(!(o2a(f[b+4>>2]|0)|0))BVa(f[a>>2]|0,b)|0;return}function dza(a,b){a=a|0;b=b|0;b=b+8|0;if(Iab(f[b>>2]|0)|0)X7(a+80|0,b);return}function eza(){var a=0;if((f[32966]|0)==0&(f[32967]|0)==0&(f[32968]|0)==0&(f[32969]|0)==0){a=(pb(1)|0)!=0&1;b[135320]=a;return}else Ca(54381,53069,48,54493)}function fza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((f[a>>2]|0)==(b|0)?(f[a+4>>2]|0)==(c|0):0)b=(f[a+8>>2]|0)==(d|0);else b=0;return b|0}function gza(a,c){a=a|0;c=c|0;b[a>>0]=1;IVa(a+4|0,c);Kab(a+20|0);f[a+28>>2]=-1;f[a+32>>2]=-1;f[a+36>>2]=0;return}function hza(a,b){a=a|0;b=b|0;KQa(f[b>>2]|0)|0;e1a(a);return}function iza(a,b){a=a|0;b=b|0;LQa(f[b>>2]|0)|0;e1a(a);return}function jza(a,b){a=a|0;b=b|0;b_a(KQa(f[b>>2]|0)|0);return}function kza(a,b){a=a|0;b=b|0;c_a(LQa(f[b>>2]|0)|0);return}function lza(a){a=a|0;if((!(XDa(a)|0)?(f[a+48>>2]|0)==0:0)?(b[a+26>>0]|0)==0:0)a=(b[a+78>>0]|0)!=0;else a=1;return a|0}function mza(a,c){a=a|0;c=c|0;f[a>>2]=c;f[a+4>>2]=c+144;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;cFa(a+20|0);b[a+40>>0]=0;return}function nza(a){a=a|0;IGa(a+4|0);return}function oza(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=40576;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function pza(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=40532;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function qza(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=f[e+4>>2]|0;c=a;f[c>>2]=f[e>>2];f[c+4>>2]=d;hW(a+8|0,b+8|0);return}function rza(a,b){a=a|0;b=b|0;a=o5(a,b)|0;if(!a)a=0;else a=E_a(a)|0;return a|0}function sza(a,b){a=a|0;b=b|0;_N(a,SQa(f[b>>2]|0)|0);return}function tza(a,b){a=a|0;b=b|0;KQa(f[b>>2]|0)|0;_Ja(a);return}function uza(a,b){a=a|0;b=b|0;LQa(f[b>>2]|0)|0;_Ja(a);return}function vza(a,b){a=a|0;b=b|0;hz(a,SQa(f[b>>2]|0)|0);return}function wza(a,b){a=a|0;b=b|0;GH(a,EQa(f[b>>2]|0)|0);return}function xza(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;sVa(a);return}function yza(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44828;return}function zza(a,b){a=a|0;b=b|0;b=Bbb(f[b+16>>2]|0)|0;return b+(((Gab(a)|0)^1)<<31>>31)|0}function Aza(a){a=a|0;Tha(a);return}function Bza(a){a=a|0;dFa(a);f[a>>2]=43816;f[a+44>>2]=0;f[a+48>>2]=0;f[a+52>>2]=0;return}function Cza(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=1065353216;return}function Dza(){var a=0,b=0;b=u;u=u+16|0;a=b;f4a(a,w$a(aUa()|0)|0);u=b;return f[a>>2]|0}function Eza(a,b){a=a|0;b=b|0;YQa(f[b>>2]|0)|0;e1a(a);return}function Fza(a,b){a=a|0;b=b|0;SRa(a,SQa(f[b>>2]|0)|0);return}function Gza(a,b){a=a|0;b=b|0;MF(a,WQa(f[b>>2]|0)|0);return}function Hza(a,b){a=a|0;b=b|0;sM(a,iRa(f[b>>2]|0)|0);return}function Iza(a,b){a=a|0;b=b|0;sS(a,oRa(f[b>>2]|0)|0);return}function Jza(a){a=a|0;if(!(((f[(f[a+16>>2]|0)+4>>2]|0)!=5?(f[(f[a+20>>2]|0)+4>>2]|0)!=5:0)?(f[(f[a+24>>2]|0)+4>>2]|0)!=5:0))f[a+4>>2]=5;return}function Kza(a){a=a|0;lXa(a);yUa(a+24|0);tab(a+36|0);return}function Lza(a){a=a|0;hia(a);return}function Mza(a,b){a=a|0;b=b|0;YQa(f[b>>2]|0)|0;_Ja(a);return}function Nza(a,b){a=a|0;b=b|0;Qea(a,XRa(f[b>>2]|0)|0);return}function Oza(a,b,c){a=a|0;b=b|0;c=c|0;Uj(a,b,c,1);if(!(f[a>>2]|0))Ca(64770,51387,693,64787);else return}function Pza(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;fA(a+4|0,c,f[b>>2]|0);return}function Qza(a,b){a=a|0;b=b|0;return iw(a,b)|0}function Rza(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Sza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return F$(a,F$(a,b,c)|0,d)|0}function Tza(a,b){a=a|0;b=b|0;jI(a,b+36|0);return}function Uza(a,b){a=a|0;b=b|0;MF(a,iRa(f[b>>2]|0)|0);return}function Vza(a,b){a=a|0;b=b|0;Eo(a,iRa(f[b>>2]|0)|0);return}function Wza(a,b){a=a|0;b=b|0;xo(a,oRa(f[b>>2]|0)|0);return}function Xza(a,b){a=a|0;b=b|0;fu(a,iRa(f[b>>2]|0)|0);return}function Yza(a,b){a=a|0;b=b|0;Xv(a,oRa(f[b>>2]|0)|0);return}function Zza(a,b){a=a|0;b=b|0;EQa(f[b>>2]|0)|0;p1a(a);return}function _za(a,b){a=a|0;b=b|0;Fea(a,WQa(f[b>>2]|0)|0);return}function $za(a,b){a=a|0;b=b|0;Gea(a,XQa(f[b>>2]|0)|0);return}function aAa(a){a=a|0;var b=0;b=n8(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;c1a(b);f[a>>2]=b;return}function bAa(a){a=a|0;kya(a);XOa(a+16|0);f[a>>2]=40448;return}function cAa(a){a=a|0;var c=0,d=0,e=0;c=a+56|0;d=a;e=d+52|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));b[a+52>>0]=0;f[c>>2]=1;f[a+60>>2]=0;return}function dAa(a){a=a|0;var b=0;b=f[a>>2]|0;if(b){b=Rb(b|0,0)|0;if(!b){f[a>>2]=0;return}}else b=22;Baa(b,122327)}function eAa(a){a=a|0;uia(a);return}function fAa(a,b,c){a=a|0;b=b|0;c=c|0;c=qwa(f[a>>2]|0,c)|0;f[c+8>>2]=f[b>>2];rt(c);return c|0}function gAa(a,b){a=a|0;b=b|0;U_a(WQa(f[b>>2]|0)|0);return}function hAa(a,b){a=a|0;b=b|0;V_a(YQa(f[b>>2]|0)|0);return}function iAa(a,b){a=a|0;b=b|0;Qea(a,gSa(f[b>>2]|0)|0);return}function jAa(){var a=0,b=0;a=u;u=u+16|0;if(!(Ub(135308,41)|0)){b=Qb(f[33828]|0)|0;u=a;return b|0}else GQa(122629,a);return 0}function kAa(){var a=0;if(!(b[131472]|0)){b[131472]=1;a=131360}else a=n8(112)|0;f[32837]=a;f[32836]=a;f[32838]=a+112;return}function lAa(a){a=a|0;AMa(a);ubb(a);return}function mAa(a){a=a|0;var b=0.0;switch(f[a>>2]|0){case 3:{b=+ONa(a);break}case 4:{b=+NNa(a);break}default:hb()}return +b}function nAa(a,b){a=a|0;b=b|0;Nn(a,XRa(f[b>>2]|0)|0);return}function oAa(a,b){a=a|0;b=b|0;_q(a,IRa(f[b>>2]|0)|0);return}function pAa(a,b){a=a|0;b=b|0;cE(a,yRa(f[b>>2]|0)|0);return}function qAa(a,b){a=a|0;b=b|0;YE(a,ARa(f[b>>2]|0)|0);return}function rAa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];tab(a+16|0);return}function sAa(a){a=a|0;UCa(a+12|0);WBa(a);return}function tAa(a){a=a|0;var c=0,d=0,e=0;c=a+56|0;d=a+12|0;e=d+44|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[c>>2]=1065353216;b[a+9>>0]=1;return}function uAa(a){a=a|0;var b=0;b=f[a+32>>2]|0;if((b|0)!=0?(f[b+4>>2]|0)==5:0)a=0;else a=(f[(f[a+28>>2]|0)+4>>2]|0)!=5;return a|0}function vAa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;PVa(a);return}function wAa(a,b){a=a|0;b=b|0;DQa(f[b>>2]|0)|0;Y1a(a);return}function xAa(a,b){a=a|0;b=b|0;return (p_(a+12|0,b)|0)!=(a+16|0)|0}function yAa(a){a=a|0;AIa(a+40|0);uSa(a+28|0);I_a(a);return}function zAa(a,b){a=a|0;b=b|0;if(!b)Ca(103709,103713,26,103729);else{b=Hr(a,b)|0;f[a>>2]=b;return}}function AAa(a,b){a=a|0;b=b|0;jWa(a);return}function BAa(a,b){a=a|0;b=b|0;jWa(a+16|0);return}function CAa(a,b){a=a|0;b=+b;var c=0,d=0;c=u;u=u+16|0;d=c;n[d>>2]=b;f[a>>2]=3;d=v8a(d)|0;f[a+8>>2]=d;u=c;return}function DAa(a,b){a=a|0;b=b|0;th(a,ARa(f[b>>2]|0)|0);return}function EAa(a,b){a=a|0;b=b|0;I$(a,iRa(f[b>>2]|0)|0);return}function FAa(a,b){a=a|0;b=b|0;Vfa(a,iRa(f[b>>2]|0)|0);return}function GAa(a,b){a=a|0;b=b|0;Wfa(a,oRa(f[b>>2]|0)|0);return}function HAa(a,b){a=a|0;b=b|0;w4(a,b);f[a+12>>2]=-1;f[a+16>>2]=-1;return}function IAa(a){a=a|0;var b=0,c=0;b=f[a>>2]|0;if(b|0){c=a+4|0;f[c>>2]=b;ubb(b);f[a+8>>2]=0;f[c>>2]=0;f[a>>2]=0}return}function JAa(a){a=a|0;f[a>>2]=39884;f[a+64>>2]=39924;f[a+8>>2]=39904;XBa(a+12|0);return}function KAa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==103788?a+4|0:0)|0}function LAa(a){a=a|0;var b=0;b=n8(8)|0;f[b>>2]=40124;f[b+4>>2]=f[a+4>>2];return b|0}function MAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==(d|0))a=GZ(a,c)|0;else a=0;return a|0}function NAa(a,b){a=a|0;b=b|0;DQa(f[b>>2]|0)|0;BXa(a);return}function OAa(a,b){a=a|0;b=b|0;B$a(iRa(f[b>>2]|0)|0);return}function PAa(a,b){a=a|0;b=b|0;Lca(134176,b)|0;return a|0}function QAa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;a=X(e>>>0>>0?e:d,a)|0;return b[c+(a+(d>>>0>>0?e:d))>>0]|0}function RAa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=40368;return}function SAa(){var a=0;if((b[130824]|0)==0?PWa(130824)|0:0){a=yb(88058)|0;if(!a)a=0;else a=yR(a)|0;f[33182]=a}return f[33182]|0}function TAa(a,b){a=a|0;b=b|0;aW(a,f[b+8>>2]|0);return}function UAa(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=f[a>>2]|0;gH(c|0,0,b*12|0)|0;f[a>>2]=c+(b*12|0);return}function VAa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;WVa(a);return}function WAa(a,b){a=a|0;b=b|0;KRa(f[b>>2]|0)|0;e1a(a);return}function XAa(a,b){a=a|0;b=b|0;MF(a,JRa(f[b>>2]|0)|0);return}function YAa(a,b){a=a|0;b=b|0;aF(a,KRa(f[b>>2]|0)|0);return}function ZAa(a,b){a=a|0;b=b|0;zv(a,WRa(f[b>>2]|0)|0);return}function _Aa(a,b){a=a|0;b=b|0;_v(a,XRa(f[b>>2]|0)|0);return}function $Aa(a,b){a=a|0;b=b|0;$x(a,IRa(f[b>>2]|0)|0);return}function aBa(a,b){a=a|0;b=b|0;sA(a,IRa(f[b>>2]|0)|0);return}function bBa(a,b){a=a|0;b=b|0;dP(a,yRa(f[b>>2]|0)|0);return}function cBa(a,b){a=a|0;b=b|0;R2(a,zRa(f[b>>2]|0)|0);return}function dBa(a,b){a=a|0;b=b|0;wt(a,ARa(f[b>>2]|0)|0);return}function eBa(a,b){a=a|0;b=b|0;YQa(f[b>>2]|0)|0;N0a()}function fBa(a,b){a=a|0;b=b|0;O$(a,iRa(f[b>>2]|0)|0);return}function gBa(a,b){a=a|0;b=b|0;O$(a,oRa(f[b>>2]|0)|0);return}function hBa(a,b){a=a|0;b=b|0;i_(a,iRa(f[b>>2]|0)|0);return}function iBa(a,b){a=a|0;b=b|0;d9(a,iRa(f[b>>2]|0)|0);return}function jBa(a,b){a=a|0;b=b|0;zpa(a,YQa(f[b>>2]|0)|0);return}function kBa(){var a=0,c=0,d=0;a=n8(44)|0;c=a;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));sxa(a);b[a+16>>0]=1;return a|0}function lBa(a,b){a=a|0;b=b|0;return (cB(a,b)|0)!=0|0}function mBa(a,b,c){a=a|0;b=b|0;c=c|0;a=pUa(a)|0;f[a+8>>2]=b;f[a+12>>2]=c;hv(a);return a|0}function nBa(a,b,c){a=a|0;b=b|0;c=c|0;a=ATa(a)|0;f[a+8>>2]=b;f[a+12>>2]=c;bLa(a,1);return a|0}function oBa(a,b){a=a|0;b=b|0;jI(a,b+8|0);return}function pBa(){f[33176]=0;f[33177]=0;f[33175]=132704;return}function qBa(a,b){a=a|0;b=b|0;var c=0,d=0;H_(a,b);d=b+32|0;c=f[d+4>>2]|0;b=a+32|0;f[b>>2]=f[d>>2];f[b+4>>2]=c;return}function rBa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function sBa(a,b){a=a|0;b=b|0;YRa(f[b>>2]|0)|0;e1a(a);return}function tBa(a,b){a=a|0;b=b|0;Oh(a,JRa(f[b>>2]|0)|0);return}function uBa(a,b){a=a|0;b=b|0;fO(a,KRa(f[b>>2]|0)|0);return}function vBa(a,b){a=a|0;b=b|0;_s(a,KRa(f[b>>2]|0)|0);return}function wBa(a,b){a=a|0;b=b|0;ll(a,IRa(f[b>>2]|0)|0);return}function xBa(a,b){a=a|0;b=b|0;yTa(a,yRa(f[b>>2]|0)|0);return}function yBa(a,b){a=a|0;b=b|0;Vo(a,zRa(f[b>>2]|0)|0);return}function zBa(a,b){a=a|0;b=b|0;He(a,ARa(f[b>>2]|0)|0);return}function ABa(a,b){a=a|0;b=b|0;uA(a,iRa(f[b>>2]|0)|0);return}function BBa(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=Kfa(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function CBa(a,b){a=a|0;b=b|0;QF(a,b);return}function DBa(a){a=a|0;var b=0,c=0;c=a+4|0;b=f[c>>2]|0;f[c>>2]=b+-1;if(!b)oc[f[(f[a>>2]|0)+8>>2]&1023](a);return}function EBa(a,b,c){a=a|0;b=b|0;c=c|0;return m9(Rm(a,b,c)|0)|0}function FBa(a,b){a=a|0;b=b|0;Bbb(a)|0;if(Gab(f[a>>2]|0)|0)a=$1a(f[a+8>>2]|0,f[b>>2]|0)|0;else a=0;return a|0}function GBa(a,b){a=a|0;b=b|0;_N(a,hSa(f[b>>2]|0)|0);return}function HBa(a,b){a=a|0;b=b|0;SQa(f[b>>2]|0)|0;BXa(a);return}function IBa(a,b){a=a|0;b=b|0;O1a(SQa(f[b>>2]|0)|0);return}function JBa(a,b){a=a|0;b=b|0;vC(a,IRa(f[b>>2]|0)|0);return}function KBa(a,c){a=a|0;c=c|0;f[a>>2]=50432;Gla(a+4|0,(b[c+11>>0]|0)<0?f[c>>2]|0:c);return}function LBa(a,b){a=a|0;b=b|0;gSa(f[b>>2]|0)|0;kma(a);return}function MBa(a,b){a=a|0;b=b|0;T0(a,WRa(f[b>>2]|0)|0);return}function NBa(a,b){a=a|0;b=b|0;Kn(a,XRa(f[b>>2]|0)|0);return}function OBa(a,b){a=a|0;b=b|0;Di(a,JRa(f[b>>2]|0)|0);return}function PBa(a,b){a=a|0;b=b|0;Iz(a,KRa(f[b>>2]|0)|0);return}function QBa(a,b){a=a|0;b=b|0;z_(a,WRa(f[b>>2]|0)|0);return}function RBa(a,b){a=a|0;b=b|0;ej(a,XRa(f[b>>2]|0)|0);return}function SBa(a,b){a=a|0;b=b|0;qI(a,WRa(f[b>>2]|0)|0);return}function TBa(a,b){a=a|0;b=b|0;KEa(a,XRa(f[b>>2]|0)|0);return}function UBa(a,b){a=a|0;b=b|0;return (p_(a,b)|0)!=(a+4|0)|0}function VBa(a){a=a|0;if(!(b[a+8>>0]|0)){zma(f[a>>2]|0,10)|0;a=a+4|0;f[a>>2]=(f[a>>2]|0)+1}return}function WBa(a){a=a|0;Sja(a);return}function XBa(a){a=a|0;f[a>>2]=39940;HTa(a+32|0);YWa(a);return}function YBa(a,b){a=a|0;b=b|0;f[b>>2]=40124;f[b+4>>2]=f[a+4>>2];return}function ZBa(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=a;a=woa(c)|0;u=b;return a|0}function _Ba(a){a=a|0;uSa(a+48|0);uSa(a+36|0);YJa(a);return}function $Ba(a,b){a=a|0;b=b|0;DM(a,hSa(f[b>>2]|0)|0);return}function aCa(a,b){a=a|0;b=b|0;eQ(a,gSa(f[b>>2]|0)|0);return}function bCa(a,b){a=a|0;b=b|0;RF(a,YRa(f[b>>2]|0)|0);return}function cCa(a,b){a=a|0;b=b|0;RRa(a,ZRa(f[b>>2]|0)|0);return}function dCa(a,b){a=a|0;b=b|0;SF(a,_Ra(f[b>>2]|0)|0);return}function eCa(a,b){a=a|0;b=b|0;SRa(a,hSa(f[b>>2]|0)|0);return}function fCa(a,b){a=a|0;b=b|0;zRa(f[b>>2]|0)|0;p1a(a);return}function gCa(){var a=0;x=0;ia(62,134176,112640)|0;a=x;x=0;if(!(a&1)){x=0;ta(440,1);x=0}a=Ja(0)|0;r2a(a)}function hCa(a,c){a=a|0;c=c|0;XOa(a);tab(a+36|0);b[a+40>>0]=0;f[a+44>>2]=0;f[a+48>>2]=0;f[a+52>>2]=c;return}function iCa(a){a=a|0;Uma(a+20|0);NQa(a);return}function jCa(a){a=a|0;f[a>>2]=45908;uSa(a+104|0);Mya(a+44|0);LTa(a);return}function kCa(a,c){a=a|0;c=c|0;f[a>>2]=50412;Gla(a+4|0,(b[c+11>>0]|0)<0?f[c>>2]|0:c);return}function lCa(a){a=a|0;a=k_a(a)|0;if(!((a|0)!=0?$1a(f[a+24>>2]|0,f[32962]|0)|0:0))a=0;return a|0}function mCa(a,b){a=a|0;b=b|0;if(o2a(f[b+4>>2]|0)|0)b=gNa(f[a>>2]|0,b)|0;return b|0}function nCa(a,b){a=a|0;b=b|0;LUa(a,KRa(f[b>>2]|0)|0);return}function oCa(a,b){a=a|0;b=b|0;sk(a,JRa(f[b>>2]|0)|0);return}function pCa(a,b){a=a|0;b=b|0;jl(a,KRa(f[b>>2]|0)|0);return}function qCa(a,b){a=a|0;b=b|0;gq(a,LRa(f[b>>2]|0)|0);return}function rCa(a,b){a=a|0;b=b|0;Dg(a,WRa(f[b>>2]|0)|0);return}function sCa(a,b){a=a|0;b=b|0;Sh(a,XRa(f[b>>2]|0)|0);return}function tCa(a,b){a=a|0;b=b|0;xC(a,IRa(f[b>>2]|0)|0);return}function uCa(a,b){a=a|0;b=b|0;qga(a,ARa(f[b>>2]|0)|0);return}function vCa(a){a=a|0;f[a>>2]=40900;NQa(a+184|0);SLa(a);return}function wCa(a){a=a|0;kya(a);jX(a+16|0);f[a>>2]=42096;return}function xCa(a,b){a=a|0;b=b|0;var c=0;c=n8(92)|0;v_(c,b);J_(a,c);return}function yCa(a,b){a=a|0;b=b|0;return $n(a,b,h7a(b)|0)|0}function zCa(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function ACa(a,b,c){a=a|0;b=b|0;c=c|0;a=fTa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+4>>2]=c;return a|0}function BCa(a,b){a=a|0;b=b|0;FK(a,YRa(f[b>>2]|0)|0);return}function CCa(a,b){a=a|0;b=b|0;Ts(a,YRa(f[b>>2]|0)|0);return}function DCa(a,b){a=a|0;b=b|0;I0a(yRa(f[b>>2]|0)|0);return}function ECa(a,b){a=a|0;b=b|0;J0a(ARa(f[b>>2]|0)|0);return}function FCa(a,b){a=a|0;b=b|0;J5(a,WRa(f[b>>2]|0)|0);return}function GCa(a,b){a=a|0;b=b|0;Vt(a,XRa(f[b>>2]|0)|0);return}function HCa(a){a=a|0;if((b[a+8>>0]|0)==0?(x=0,ta(501,a|0),a=x,x=0,a&1):0){a=Ja(0)|0;r2a(a)}return}function ICa(a,b){a=a|0;b=b|0;ODa(a+16|0,b);xd(a);return}function JCa(a){a=a|0;var b=0,c=0;a=f[a>>2]|0;c=a+4|0;b=f[c>>2]|0;f[c>>2]=b+-1;if(!b)oc[f[(f[a>>2]|0)+8>>2]&1023](a);return}function KCa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==2){b=jJa(b)|0;b=wJa(0,b|0,32)|0;SSa(a,b,I);return}else hb()}function LCa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==1){b=f[b+8>>2]|0;SSa(a,b,((b|0)<0)<<31>>31);return}else Ca(93004,75448,203,101920)}function MCa(a){a=a|0;var b=0;b=f[a+4>>2]|0;if(!b)Ca(91353,99429,193,91385);else return (f[a>>2]|0)+(b+-1<<2)|0;return 0}function NCa(a,b){a=a|0;b=b|0;_F(a,IRa(f[b>>2]|0)|0);return}function OCa(a,b){a=a|0;b=b|0;nWa(a,SQa(f[b>>2]|0)|0);return}function PCa(a,c,d){a=a|0;c=c|0;d=d|0;if(!((b[a+8>>0]|d)<<24>>24))return (f[a>>2]|0)==(c|0)|0;else Ca(108392,106510,67,123729);return 0}function QCa(a,b){a=a|0;b=b|0;b=NKa(f[a>>2]|0,b,2)|0;return mBa(f[a>>2]|0,24,b)|0}function RCa(a,b,c){a=a|0;b=b|0;c=c|0;Uga(a,b,c<<4);return}function SCa(a){a=a|0;var b=0;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(a|0){B_a(a);ubb(a)}return}function TCa(a){a=a|0;Tka(a);return}function UCa(a){a=a|0;Uka(a);return}function VCa(a){a=a|0;Vka(a);return}function WCa(a){a=a|0;Tja(a);return}function XCa(a){a=a|0;Wka(a);return}function YCa(a){a=a|0;Xka(a);return}function ZCa(a,b){a=a|0;b=b|0;var c=0;a=a+84|0;c=f[a>>2]|0;if(c|0)WXa(f[c+104>>2]|0);f[a>>2]=b;return b|0}function _Ca(a,b){a=a|0;b=b|0;jfa(a,gSa(f[b>>2]|0)|0);return}function $Ca(a,b){a=a|0;b=b|0;mC(a,gSa(f[b>>2]|0)|0);return}function aDa(a,b){a=a|0;b=b|0;XC(a,YRa(f[b>>2]|0)|0);return}function bDa(a,b){a=a|0;b=b|0;lZ(a,ZRa(f[b>>2]|0)|0);return}function cDa(a,b){a=a|0;b=b|0;Cxa(a,_Ra(f[b>>2]|0)|0);return}function dDa(a,b){a=a|0;b=b|0;js(a,hSa(f[b>>2]|0)|0);return}function eDa(){var a=0,b=0,c=0;a=n8(88)|0;b=a;c=b+88|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));nja(a);return a|0}function fDa(a){a=a|0;RGa(a);f[a>>2]=44060;f[a+44>>2]=0;f[a+48>>2]=0;f[a+52>>2]=0;return}function gDa(a){a=a|0;var b=0;b=a+4|0;f[b>>2]=1;if(!((f[(f[a+12>>2]|0)+4>>2]|0)!=5?(f[(f[a+16>>2]|0)+4>>2]|0)!=5:0))f[b>>2]=5;return}function hDa(a){a=a|0;var b=0;b=u;u=u+16|0;rg(a);if(!(Vb(f[33828]|0,0)|0)){u=b;return}else GQa(122728,b)}function iDa(a){a=a|0;xRa(a+16|0);HTa(a);return}function jDa(a,b){a=a|0;b=b|0;var c=0;c=f[a+8>>2]|0;if((f[a+12>>2]|0)-c>>2>>>0>b>>>0)a=(f[c+(b<<2)>>2]|0)!=0;else a=0;return a|0}function kDa(a,b){a=a|0;b=b|0;wMa(a,JRa(f[b>>2]|0)|0);return}function lDa(a,b){a=a|0;b=b|0;Xfa(a,WRa(f[b>>2]|0)|0);return}function mDa(a,b){a=a|0;b=b|0;dza(a,XRa(f[b>>2]|0)|0);return}function nDa(a,b){a=a|0;b=b|0;Npa(a,ARa(f[b>>2]|0)|0);return}function oDa(a,b){a=a|0;b=b|0;MPa(a,iRa(f[b>>2]|0)|0);return}function pDa(a){a=a|0;f[a>>2]=40248;oEa(a+44|0);LTa(a);return}function qDa(a){a=a|0;var c=0,d=0;d=(b[a>>0]|0)+-48|0;while(1){a=a+1|0;c=b[a>>0]|0;if(!(c<<24>>24))break;d=(d*10|0)+-48+(c<<24>>24)|0}return d|0}function rDa(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;a=Bbb(f[a+60>>2]|0)|0;f[c>>2]=a;a=G_a(ab(6,c|0)|0)|0;u=b;return a|0}function sDa(a){a=a|0;xla(a);return}function tDa(a){a=a|0;yla(a);return}function uDa(a){a=a|0;return ZPa(f[a+4>>2]|0)|0}function vDa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;b[e>>0]=b[c>>0]|0;e=e+1|0;c=c+1|0}return d|0}function wDa(a,b){a=a|0;b=b|0;wVa(a,YRa(f[b>>2]|0)|0);return}function xDa(a,b){a=a|0;b=b|0;uK(a,gSa(f[b>>2]|0)|0);return}function yDa(a,b){a=a|0;b=b|0;Og(a,YRa(f[b>>2]|0)|0);return}function zDa(a,b){a=a|0;b=b|0;Hba(a,_Ra(f[b>>2]|0)|0);return}function ADa(a,b){a=a|0;b=b|0;eW(a,hSa(f[b>>2]|0)|0);return}function BDa(a,b){a=a|0;b=b|0;gha(a,hSa(f[b>>2]|0)|0);return}function CDa(a,b){a=a|0;b=b|0;MZ(a,hSa(f[b>>2]|0)|0);return}function DDa(a,b){a=a|0;b=b|0;g1a(JRa(f[b>>2]|0)|0);return}function EDa(a,b){a=a|0;b=b|0;h1a(KRa(f[b>>2]|0)|0);return}function FDa(a,b){a=a|0;b=b|0;i1a(LRa(f[b>>2]|0)|0);return}function GDa(){var a=0,b=0,c=0;a=n8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Bza(a);return a|0}function HDa(a,b){a=a|0;b=b|0;Fs(a+16|0,b);Bg(a);return}function IDa(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 kc[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function JDa(a,b){a=a|0;b=b|0;if((f[a+4>>2]|0)>>>0>b>>>0)return (f[a>>2]|0)+(b<<2)|0;else Ca(99408,99429,169,123761);return 0}function KDa(a,b){a=a|0;b=b|0;var c=0;c=n8(24)|0;BLa(c,5);i6(c,a);f[c+8>>2]=b;return c|0}function LDa(a,b){a=a|0;b=b|0;TC(XRa(f[b>>2]|0)|0);return}function MDa(a,b){a=a|0;b=b|0;KW(a,WRa(f[b>>2]|0)|0);return}function NDa(a,b){a=a|0;b=b|0;_U(a,LRa(f[b>>2]|0)|0);return}function ODa(a,b){a=a|0;b=b|0;yI(a,b+36|0);return}function PDa(a,b){a=a|0;b=b|0;tqa(a,IRa(f[b>>2]|0)|0);return}function QDa(a,b){a=a|0;b=b|0;VNa(a,yRa(f[b>>2]|0)|0);return}function RDa(a,b){a=a|0;b=b|0;AC(a,IRa(f[b>>2]|0)|0);return}function SDa(a,b){a=a|0;b=b|0;dy(a,zRa(f[b>>2]|0)|0);return}function TDa(a){a=a|0;dVa(a+12|0);Uwa(a);return}function UDa(a){a=a|0;Lla(a);return}function VDa(a,b){a=a|0;b=b|0;m5(a,gSa(f[b>>2]|0)|0);return}function WDa(a,b){a=a|0;b=b|0;RHa(a);f[a>>2]=45188;f[a+44>>2]=f[b>>2];return}function XDa(a){a=a|0;if(((b[a+27>>0]|0)==0?(f[a+72>>2]|0)==0:0)?(b[a+77>>0]|0)==0:0)a=(b[a+79>>0]|0)!=0;else a=1;return a|0}function YDa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;f[e>>2]=b[c>>0];e=e+4|0;c=c+1|0}return d|0}function ZDa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65646?a+4|0:0)|0}function _Da(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65452?a+4|0:0)|0}function $Da(a,b){a=a|0;b=b|0;gW(a,qSa(f[b>>2]|0)|0);return}function aEa(a,b){a=a|0;b=b|0;zI(a,b+36|0);return}function bEa(a,b){a=a|0;b=b|0;GI(a,b+36|0);return}function cEa(a,b){a=a|0;b=b|0;AI(a,b+36|0);return}function dEa(a,b){a=a|0;b=b|0;HI(a,b+36|0);return}function eEa(a,b){a=a|0;b=b|0;BI(a,b+36|0);return}function fEa(a,b){a=a|0;b=b|0;ZRa(f[b>>2]|0)|0;eWa(a);return}function gEa(a,b){a=a|0;b=b|0;hSa(f[b>>2]|0)|0;Y1a(a);return}function hEa(a,b){a=a|0;b=b|0;sqa(a,JRa(f[b>>2]|0)|0);return}function iEa(a,b){a=a|0;b=b|0;Mqa(a,ARa(f[b>>2]|0)|0);return}function jEa(a,b){a=a|0;b=b|0;Cu(a,IRa(f[b>>2]|0)|0);return}function kEa(a,b){a=a|0;b=b|0;CI(a,b+36|0);return}function lEa(){var a=0;a=n8(20)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;NWa(a);return a|0}function mEa(a,c){a=a|0;c=c|0;var d=0;b[a+77>>0]=1;d=a+79|0;b[d>>0]=b[d>>0]|c;if(!(b[a+24>>0]|0))b[a+78>>0]=1;return}function nEa(a){a=a|0;AGa(a);f[a>>2]=46032;f[a+184>>2]=0;f[a+188>>2]=0;f[a+192>>2]=0;return}function oEa(a){a=a|0;zla(a);return}function pEa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==91996?a+4|0:0)|0}function qEa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65171?a+4|0:0)|0}function rEa(a,b){a=a|0;b=b|0;cka(a,gSa(f[b>>2]|0)|0);return}function sEa(a,b){a=a|0;b=b|0;if(_1a(f[a>>2]|0,f[b>>2]|0)|0)a=0;else a=sW(a,b)|0;return a|0}function tEa(a,b){a=a|0;b=b|0;qk(a,b);return}function uEa(a,c){a=a|0;c=c|0;lXa(a);f[a+28>>2]=c;b[a+32>>0]=0;return}function vEa(a,b){a=a|0;b=b|0;return VE(a,b,h7a(b)|0)|0}function wEa(a,b,c){a=a|0;b=b|0;c=c|0;cR(a,b);f[a+12>>2]=c;return}function xEa(a,b){a=a|0;b=b|0;hSa(f[b>>2]|0)|0;BXa(a);return}function yEa(a,b){a=a|0;b=b|0;MPa(a,JRa(f[b>>2]|0)|0);return}function zEa(a,b){a=a|0;b=b|0;Lqa(a,KRa(f[b>>2]|0)|0);return}function AEa(a,b){a=a|0;b=b|0;Mqa(a,WRa(f[b>>2]|0)|0);return}function BEa(a,b){a=a|0;b=b|0;gna(a,XRa(f[b>>2]|0)|0);return}function CEa(a,b){a=a|0;b=b|0;n1(a,XRa(f[b>>2]|0)|0);return}function DEa(a,b){a=a|0;b=b|0;Nt(a,WRa(f[b>>2]|0)|0);return}function EEa(a,b){a=a|0;b=b|0;ss(a,XRa(f[b>>2]|0)|0);return}function FEa(a,b){a=a|0;b=b|0;K1a(gSa(f[b>>2]|0)|0);return}function GEa(a,b){a=a|0;b=b|0;L1a(YRa(f[b>>2]|0)|0);return}function HEa(a,b){a=a|0;b=b|0;M1a(ZRa(f[b>>2]|0)|0);return}function IEa(a,b){a=a|0;b=b|0;N1a(_Ra(f[b>>2]|0)|0);return}function JEa(a,b){a=a|0;b=b|0;O1a(hSa(f[b>>2]|0)|0);return}function KEa(a,b){a=a|0;b=b|0;var c=0;c=Bbb(f[a+20>>2]|0)|0;qg(b,c,f[a+40>>2]|0);return}function LEa(a,b){a=a|0;b=b|0;if((f[b+4>>2]|0)==2)b=mBa(f[a+8>>2]|0,24,b)|0;return b|0}function MEa(a){a=a|0;var b=0;a=a+4|0;b=f[a>>2]|0;if(!b)Ca(91353,99429,198,91376);else{f[a>>2]=b+-1;return}}function NEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=b;if(!c)break;else d=d+4|0}}return a|0}function OEa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_G(a,1,45);return}function PEa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a_(a,1,45);return}function QEa(a){a=a|0;uSa(a+32|0);uSa(a+20|0);NQa(a);return}function REa(a,b){a=a|0;b=b|0;TRa(KRa(f[b>>2]|0)|0);return}function SEa(a,b){a=a|0;b=b|0;lQa(a,zRa(f[b>>2]|0)|0);return}function TEa(){var a=0,b=0,c=0;a=n8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));$Fa(a);return a|0}function UEa(a,c){a=a|0;c=c|0;var d=0;b[a+76>>0]=1;d=a+79|0;b[d>>0]=b[d>>0]|c;if(!(b[a+24>>0]|0))b[a+78>>0]=1;return}function VEa(a){a=+a;var b=0;if(a>-2147483648.0&a<2147483647.0)b=~~a;else{b=qRa(a)|0;b=EMa(b|0,I|0,63)|0;b=b+2147483647|0}return b|0}function WEa(a){a=a|0;switch(a&74){case 64:{a=8;break}case 8:{a=16;break}case 0:{a=0;break}default:a=10}return a|0}function XEa(a,b){a=a|0;b=b|0;return nJ(a,b,g7a(b)|0)|0}function YEa(a,b){a=a|0;b=b|0;return LK(a,b,h7a(b)|0)|0}function ZEa(a,b){a=a|0;b=b|0;return tL(a,b,h7a(b)|0)|0}function _Ea(a,b){a=a|0;b=b|0;vH(a,iRa(f[b>>2]|0)|0);return}function $Ea(a,b){a=a|0;b=b|0;kr(a,qSa(f[b>>2]|0)|0);return}function aFa(a,b){a=a|0;b=b|0;aV(a,WRa(f[b>>2]|0)|0);return}function bFa(a,b){a=a|0;b=b|0;_C(a,XRa(f[b>>2]|0)|0);return}function cFa(a){a=a|0;var c=0;b[a>>0]=0;b[a+1>>0]=1;b[a+2>>0]=0;c=a+4|0;f[a+16>>2]=0;f[c>>2]=0;f[c+4>>2]=0;d[c+8>>1]=0;return}function dFa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=43900;return}function eFa(a){a=a|0;A5(f[a+4>>2]|0);return}function fFa(){var a=0;a=zr(132756,12)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;R2a(a);return a|0}function gFa(a,b){a=a|0;b=b|0;TRa(YRa(f[b>>2]|0)|0);return}function hFa(a,b){a=a|0;b=b|0;QLa(a,gSa(f[b>>2]|0)|0);return}function iFa(a,b){a=a|0;b=b|0;yI(a,b+8|0);return}function jFa(){var a=0;a=n8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f_a(a);return a|0}function kFa(){var a=0,b=0,c=0;a=n8(48)|0;b=a;c=b+48|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));ESa(a);return a|0}function lFa(){var a=0,b=0,c=0;a=n8(48)|0;b=a;c=b+48|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));zOa(a);return a|0}function mFa(){var a=0,b=0,c=0;a=n8(68)|0;b=a;c=b+68|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));tia(a);return a|0}function nFa(a){a=a|0;U6(a+4|0);return}function oFa(a){a=a|0;V6(a+4|0);return}function pFa(a){a=a|0;W6(a+4|0);return}function qFa(a){a=a|0;X6(a+4|0);return}function rFa(a){a=a|0;Y6(a+4|0);return}function sFa(a,b,c){a=a|0;b=b|0;c=c|0;b=vZ(a+88|0,b)|0;f[b>>2]=c;return}function tFa(a,b){a=a|0;b=b|0;OI(a,b+36|0);return}function uFa(a,b){a=a|0;b=b|0;VK(a,b+36|0);return}function vFa(a,b){a=a|0;b=b|0;rVa(a,qSa(f[b>>2]|0)|0);return}function wFa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;f[a>>2]=c;b[a+4>>0]=d&1;b[a+5>>0]=e&1;f[a+8>>2]=g;return}function xFa(a){a=a|0;Nma(a);return}function yFa(a){a=a|0;x=0;ga(328,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;r2a(a)}else return}function zFa(a,b){a=a|0;b=b|0;zI(a,b+8|0);return}function AFa(a,b){a=a|0;b=b|0;GI(a,b+8|0);return}function BFa(a,b){a=a|0;b=b|0;AI(a,b+8|0);return}function CFa(a,b){a=a|0;b=b|0;HI(a,b+8|0);return}function DFa(a,b){a=a|0;b=b|0;BI(a,b+8|0);return}function EFa(a,b){a=a|0;b=b|0;dQa(a,YRa(f[b>>2]|0)|0);return}function FFa(a,b){a=a|0;b=b|0;lQa(a,_Ra(f[b>>2]|0)|0);return}function GFa(a,b){a=a|0;b=b|0;nWa(a,hSa(f[b>>2]|0)|0);return}function HFa(a,b){a=a|0;b=b|0;CI(a,b+8|0);return}function IFa(){var a=0,b=0,c=0;a=n8(84)|0;b=a;c=b+84|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Rua(a);return a|0}function JFa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));TSa(a);return a|0}function KFa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));USa(a);return a|0}function LFa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=lG(a,b,c,g)|0;u=e;return d|0}function MFa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==61825?a+4|0:0)|0}function NFa(a){a=a|0;if(!(rab(a)|0)?!(vab(a)|0):0)a=Fab(a)|0;else a=1;return a|0}function OFa(a,b){a=a|0;b=b|0;UI(a,b+36|0);return}function PFa(a,b){a=a|0;b=b|0;VI(a,b+36|0);return}function QFa(a,b){a=a|0;b=b|0;EF(a,qSa(f[b>>2]|0)|0);return}function RFa(a,b){a=a|0;b=b|0;XK(a,b+36|0);return}function SFa(a,b){a=a|0;b=b|0;var c=0;c=n8(4)|0;U0a(c,b);f[a>>2]=c;return}function TFa(a){a=a|0;NQa(a+12|0);return}function UFa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==73516?a+4|0:0)|0}function VFa(a){a=a|0;Bbb(a)|0;if(Gab(f[a>>2]|0)|0)a=_1a(f[a+8>>2]|0,f[33282]|0)|0;else a=0;return a|0}function WFa(a){a=a|0;a=(ARa(a)|0)+16|0;return ORa((LRa(f[a>>2]|0)|0)+8|0)|0}function XFa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==4){SSa(a,c,d);f[a>>2]=2;return}else Ca(101661,75448,52,101679)}function YFa(a,b){a=a|0;b=b|0;QV(a,gSa(f[b>>2]|0)|0);return}function ZFa(a,b,c){a=a|0;b=b|0;c=c|0;f[a+4>>2]=b;if((b|0)==0?Bbb(f[a+16>>2]|0)|0:0)zz(a,1,c);return}function _Fa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));cTa(a);return a|0}function $Fa(a){a=a|0;eJa(a);f[a>>2]=42616;yUa(a+44|0);return}function aGa(a){a=a|0;f[a>>2]=43472;NQa(a+48|0);LTa(a);return}function bGa(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;uc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function cGa(){f[32817]=0;f[32816]=49904;jab();f[32816]=47944;f[32818]=47992;return}function dGa(){f[32813]=0;f[32812]=49904;kab();f[32812]=47860;f[32814]=47908;return}function eGa(a,b){a=a|0;b=b|0;if($1a(a,b)|0)a=1;else a=$1a(b,39608)|0;return a|0}function fGa(a,b){a=a|0;b=b|0;PA(a,XRa(f[b>>2]|0)|0);return}function gGa(a,b){a=a|0;b=b|0;WI(a,b+36|0);return}function hGa(a,b){a=a|0;b=b|0;Q0(a,qSa(f[b>>2]|0)|0);return}function iGa(a,b){a=a|0;b=b|0;cJ(a,b+8|0);Jbb()}function jGa(a,b){a=a|0;b=b|0;saa(a,b);return}function kGa(a){a=a|0;var b=0,c=0;a=n8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));fDa(a);return a|0}function lGa(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=a;f[d+4>>2]=b;G_a(bb(91,d|0)|0)|0;u=c;return}function mGa(a){a=a|0;Zma(a);return}function nGa(){var a=0;f[32825]=0;f[32824]=49904;a=fOa()|0;f[32826]=a;f[32824]=49140;return}function oGa(){var a=0;f[32821]=0;f[32820]=49904;a=fOa()|0;f[32822]=a;f[32820]=49116;return}function pGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==2){SSa(a,c,d);f[a>>2]=4;return}else Ca(92976,75448,38,92994)}function qGa(a,b){a=a|0;b=b|0;w2a(qSa(f[b>>2]|0)|0);return}function rGa(a,b){a=a|0;b=b|0;yU(a,b);return}function sGa(a,b){a=a|0;b=b|0;zU(a,b);return}function tGa(){var a=0,b=0,c=0;a=n8(68)|0;b=a;c=b+68|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Rra(a);return a|0}function uGa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));zTa(a);return a|0}function vGa(){var a=0,b=0,c=0;a=n8(88)|0;b=a;c=b+88|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Daa(a);return a|0}function wGa(){var a=0,b=0,c=0;a=n8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));PHa(a);return a|0}function xGa(a,b){a=a|0;b=b|0;if((b|0)==0&0==0)a=(Eta(a)|0)+32|0;else a=Eta(b)|0;return a|0}function yGa(a,c){a=a|0;c=c|0;a=(Hr(a,f[c+24>>2]|0)|0)+1|0;return a+(0-(b[c+20>>0]|0)&10)|0}function zGa(a,c){a=a|0;c=c|0;lXa(a);f[a+24>>2]=f[c>>2];b[a+28>>0]=1;f[a+32>>2]=0;return}function AGa(a){a=a|0;kya(a);n2(a+16|0);f[a>>2]=46076;return}function BGa(a){a=a|0;HTa(a+4|0);return}function CGa(a,b,c){a=a|0;b=b|0;c=c|0;return rqa(hs(a,b,c)|0)|0}function DGa(a){a=a|0;var b=0;lXa(a);a=a+24|0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function EGa(a,b){a=a|0;b=b|0;XT(a,Rab(b)|0)|0;return}function FGa(a,b){a=a|0;b=b|0;gZa(a);IVa(a+8|0,b);tab(a+24|0);return}function GGa(a){a=a|0;SL(a+16|0);GVa(a);return}function HGa(a){a=a|0;kya(a);n2(a+16|0);f[a>>2]=40940;return}function IGa(a){a=a|0;wna(a);return}function JGa(a){a=a|0;lHa(a);m1a(a+56|0);return}function KGa(a){a=a|0;mHa(a);m1a(a+60|0);return}function LGa(a,b){a=a|0;b=b|0;OI(a,b+8|0);return}function MGa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));KTa(a);return a|0}function NGa(){var a=0,b=0,c=0;a=n8(116)|0;b=a;c=b+116|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Nxa(a);return a|0}function OGa(){var a=0,b=0,c=0;a=n8(120)|0;b=a;c=b+120|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));B_(a);return a|0}function PGa(a,b){a=a|0;b=b|0;zfa(a+92|0,b)|0;return}function QGa(a){a=a|0;f[a>>2]=46032;I1a(f[a+184>>2]|0);rLa(a);return}function RGa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44100;return}function SGa(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=32768;b=Ibb()|0;f[a+20>>2]=b;f[a+24>>2]=0;return}function TGa(a){a=a|0;NQa(a+28|0);I_a(a);return}function UGa(a){a=a|0;var b=0;b=n8(8)|0;f[b>>2]=43148;f[b+4>>2]=f[a+4>>2];return b|0}function VGa(a){a=a|0;var b=0;b=n8(8)|0;f[b>>2]=43104;f[b+4>>2]=f[a+4>>2];return b|0}function WGa(a){a=a|0;var b=0;b=n8(8)|0;f[b>>2]=43060;f[b+4>>2]=f[a+4>>2];return b|0}function XGa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a>>0]=0;f[a+20>>2]=c;b[a+24>>0]=d&1;b[a+25>>0]=e&1;return a|0}function YGa(a,b){a=a|0;b=b|0;np(a,XRa(f[b>>2]|0)|0);return}function ZGa(a,b){a=a|0;b=b|0;$I(a,b+36|0);return}function _Ga(a,b){a=a|0;b=b|0;cJ(a,b+36|0);return}function $Ga(a,b){a=a|0;b=b|0;var c=0;switch(b|0){case 1:{c=31;break}case 2:{c=63;break}default:hb()}return c&a|0}function aHa(a){a=a|0;var b=0;b=n8(48)|0;Fwa(b,f[a+44>>2]|0);return b|0}function bHa(a){a=a|0;GGa(a);ubb(a);return}function cHa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=43536;return}function dHa(a,b){a=a|0;b=b|0;hZa(a);IVa(a+8|0,b);tab(a+24|0);return}function eHa(a){a=a|0;JGa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function fHa(a){a=a|0;mPa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function gHa(a){a=a|0;KGa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function hHa(a){a=a|0;nPa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function iHa(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;f[c>>2]=0;if(b|0){f[a>>2]=46116;f[a+4>>2]=b;f[c>>2]=a}return}function jHa(a){a=a|0;vna(a);return}function kHa(a){a=a|0;ina(a);return}function lHa(a){a=a|0;f[a>>2]=41756;f[a+56>>2]=41776;XBa(a+4|0);return}function mHa(a){a=a|0;f[a>>2]=43024;f[a+60>>2]=43044;XBa(a+8|0);return}function nHa(a){a=a|0;JAa(a);m1a(a+64|0);return}function oHa(a,b){a=a|0;b=b|0;var c=0;a=a+8|0;c=f[a>>2]|0;gH(c|0,0,b<<2|0)|0;f[a>>2]=c+(b<<2);return}function pHa(a,b){a=a|0;b=b|0;var c=0;c=n8(24)|0;BLa(c,2);i6(c,a);f[c+4>>2]=b;return c|0}function qHa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==3){m$a(a,f[b+8>>2]|0);f[a>>2]=1;return}else Ca(101689,75448,45,101707)}function rHa(a,b,c){a=a|0;b=b|0;c=c|0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)Ca(53343,53386,59,123608);else{f[a>>2]=b;return a|0}return 0}function sHa(a,b){a=a|0;b=b|0;UI(a,b+8|0);return}function tHa(a,b){a=a|0;b=b|0;VI(a,b+8|0);return}function uHa(){var a=0,b=0,c=0;a=n8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));fDa(a);return a|0}function vHa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));WTa(a);return a|0}function wHa(a){a=a|0;NQa(a+20|0);NQa(a);return}function xHa(a,b){a=a|0;b=b|0;if((f[a+8>>2]|0)>>>0>>0)wda(a,b);return}function yHa(a){a=a|0;return d_a(f[a+32>>2]|0)|0}function zHa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==80065?a+4|0:0)|0}function AHa(a){a=a|0;if((f[a>>2]|0)==4){a=a+8|0;I=f[a+4>>2]|0;return f[a>>2]|0}else Ca(101661,55015,67,55053);return 0}function BHa(a){a=a|0;var b=0,c=0;a=n8(100)|0;b=a;c=b+100|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));goa(a);return a|0}function CHa(a,b){a=a|0;b=b|0;gL(a,b+36|0);return}function DHa(a,b){a=a|0;b=b|0;qo(a,qSa(f[b>>2]|0)|0);return}function EHa(a,b){a=a|0;b=b|0;var c=0;c=n8(48)|0;YLa(c,b);J_(a,c);return}function FHa(a){a=a|0;var b=0;yUa(a);b=a+12|0;f[b>>2]=b;f[a+16>>2]=b;f[a+20>>2]=0;return}function GHa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=X(c,b)|0;a=RB(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function HHa(a){a=a|0;nHa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function IHa(a){a=a|0;IPa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function JHa(a){a=a|0;Nca(a);return}function KHa(a){a=a|0;x=0;ga(327,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;r2a(a)}else return}function LHa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==1){m$a(a,f[b+8>>2]|0);f[a>>2]=3;return}else Ca(93004,75448,31,93022)}function MHa(a,b){a=a|0;b=b|0;bs(a,hSa(f[b>>2]|0)|0);return}function NHa(a,b){a=a|0;b=b|0;WI(a,b+8|0);return}function OHa(a,b){a=a|0;b=b|0;if(!a)a=(KMa(b)|0)+32|0;else a=KMa(a)|0;return a|0}function PHa(a){a=a|0;cKa(a);f[a>>2]=45748;yUa(a+44|0);return}function QHa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=c;f[a+8>>2]=0;qna(a);return}function RHa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45228;return}function SHa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==89405?a+12|0:0)|0}function THa(a,b){a=a|0;b=b|0;fJ(a,b+36|0);return}function UHa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44020;return}function VHa(a){a=a|0;a=(ARa(a)|0)+16|0;return 32-(Q4(f[a>>2]|0)|0)|0}function WHa(a){a=a|0;if(!a)a=1;else a=Bbb(f[a+16>>2]|0)|0;return a|0}function XHa(a,b){a=a|0;b=b|0;ml(a,_Ra(f[b>>2]|0)|0);return}function YHa(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;f[c>>2]=b;if((b|0)==0?(f[(f[a+12>>2]|0)+4>>2]|0)==5:0)f[c>>2]=5;return}function ZHa(a,b){a=a|0;b=b|0;BYa(a);tab(a+12|0);IVa(a+16|0,b);return}function _Ha(a,b,c){a=a|0;b=b|0;c=c|0;if(b>>>0>>0)Ca(105585,105547,130,113535);else return b>>>0>c>>>0|a<<24>>24!=0|0;return 0}function $Ha(a,b){a=a|0;b=b|0;f[b>>2]=43148;f[b+4>>2]=f[a+4>>2];return}function aIa(a,b){a=a|0;b=b|0;f[b>>2]=43104;f[b+4>>2]=f[a+4>>2];return}function bIa(a,b){a=a|0;b=b|0;f[b>>2]=43060;f[b+4>>2]=f[a+4>>2];return}function cIa(a){a=a|0;if(vab(f[a>>2]|0)|0)return Bbb(f[(f[a+8>>2]|0)+4>>2]|0)|0;else Ca(53407,75338,393,53417);return 0}function dIa(a,b){a=a|0;b=b|0;var c=0;c=n8(24)|0;BLa(c,1);f[c+4>>2]=a;f[c+8>>2]=b;return c|0}function eIa(a){a=a|0;f[a>>2]=43980;VLa(a+48|0);LTa(a);return}function fIa(a,b){a=a|0;b=b|0;kJ(a,b+36|0);return}function gIa(a,b){a=a|0;b=b|0;lJ(a,b+36|0);return}function hIa(a,b){a=a|0;b=b|0;nZa(a);tab(a+8|0);IVa(a+12|0,b);return}function iIa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((b+1|0)>>>0<=1?(d=(f[a>>2]|0)<0,e=(c&64)==0,e|d):0)return e&d|0;return 1}function jIa(){var a=0,b=0,c=0;a=n8(112)|0;b=a;c=b+112|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Xma(a);return a|0}function kIa(){var a=0,b=0,c=0;a=n8(100)|0;b=a;c=b+100|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));goa(a);return a|0}function lIa(a,b){a=a|0;b=b|0;var c=0;c=n8(48)|0;TKa(c,b);J_(a,c);return}function mIa(a){a=a|0;joa(a);return}function nIa(a){a=a|0;Kna(a);return}function oIa(a,b){a=a|0;b=b|0;$I(a,b+8|0);return}function pIa(a,b){a=a|0;b=b|0;iZa(a);IVa(a+8|0,b);tab(a+24|0);return}function qIa(a,b){a=a|0;b=b|0;IV(a,b);return}function rIa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=40288;return}function sIa(a){a=a|0;NQa(a+4|0);return}function tIa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==4){CAa(a,+NNa(b));return}else Ca(101661,75448,240,101729)}function uIa(a,b){a=a|0;b=b|0;oJ(a,b+36|0);return}function vIa(a,b){a=a|0;b=b|0;pJ(a,b+36|0);return}function wIa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));sxa(a);return a|0}function xIa(a){a=a|0;T_a(a);b[a+36>>0]=0;gQa(a+40|0);return}function yIa(a){a=a|0;var b=0;f[a>>2]=49660;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(fOa()|0))P2a(f[a>>2]|0);return}function zIa(a){a=a|0;o8(f[a+4>>2]|0);return}function AIa(a){a=a|0;qya(a);return}function BIa(a,b){a=a|0;b=b|0;MLa(gSa(f[b>>2]|0)|0);return}function CIa(a,b){a=a|0;b=b|0;gL(a,b+8|0);return}function DIa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45028;return}function EIa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45708;return}function FIa(a,b,c){a=a|0;b=b|0;c=c|0;return ww(a,b,c)|0}function GIa(a){a=a|0;ZV(a);return}function HIa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==3){kqa(a,+ONa(b));return}else Ca(101689,75448,213,101743)}function IIa(a){a=a|0;if(!(b[a>>0]|0))Ca(66638,65740,322,66645);else return f[a+4>>2]|0;return 0}function JIa(a,b){a=a|0;b=b|0;B3(a,qSa(f[b>>2]|0)|0);return}function KIa(a,b){a=a|0;b=b|0;vJ(a,b+36|0);return}function LIa(a,b){a=a|0;b=b|0;wJ(a,b+36|0);return}function MIa(a,b){a=a|0;b=b|0;xJ(a,b+36|0);return}function NIa(a,b){a=a|0;b=b|0;yJ(a,b+36|0);return}function OIa(a,b){a=a|0;b=b|0;zJ(a,b+36|0);return}function PIa(){var a=0,b=0,c=0;a=n8(96)|0;b=a;c=b+96|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));p3(a);return a|0}function QIa(){var a=0,b=0,c=0;a=n8(104)|0;b=a;c=b+104|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));KPa(a);return a|0}function RIa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=e;b[a+8>>0]=0;f[a+12>>2]=d;return}function SIa(a){a=a|0;XOa(a);yUa(a+36|0);yUa(a+48|0);return}function TIa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=43192;return}function UIa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=42016;return}function VIa(a,b,c){a=a|0;b=b|0;c=c|0;Uga(a,b,c*24|0);return}function WIa(a,b,c){a=a|0;b=b|0;c=c|0;c=Kva(Kva(f[a>>2]|0,c)|0,b)|0;f[a>>2]=c;return}function XIa(a,b){a=a|0;b=b|0;zva(a+40|0);return}function YIa(a){a=a|0;lXa(a);yUa(a+24|0);return}function ZIa(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=f[a>>2]|0;gH(c|0,0,b<<2|0)|0;f[a>>2]=c+(b<<2);return}function _Ia(a){a=a|0;Zoa(a);return}function $Ia(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return vr(c,d,e)|0}function aJa(a){a=a|0;var c=0,d=0;c=5381;while(1){d=b[a>>0]|0;if(!(d<<24>>24))break;a=a+1|0;c=c*33^d<<24>>24}return c|0}function bJa(a,b){a=a|0;b=b|0;fJ(a,b+8|0);return}function cJa(a,b){a=a|0;b=b|0;gJ(a,b+8|0);return}function dJa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=f[b>>2];f[a+4>>2]=c;f[a+8>>2]=d;return}function eJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=42656;return}function fJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=41832;return}function gJa(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 jc[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function hJa(a){a=a|0;x=0;ga(330,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;r2a(a)}else return}function iJa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Nr(c,d,e)|0}function jJa(a){a=a|0;if((f[a>>2]|0)==2){a=a+8|0;I=f[a+4>>2]|0;return f[a>>2]|0}else Ca(92976,55015,60,55031);return 0}function kJa(a){a=a|0;if(!(b[a>>0]|0))return f[a+4>>2]|0;else Ca(66653,65740,326,66661);return 0}function lJa(a,b){a=a|0;b=b|0;CJ(a,b+36|0);return}function mJa(a,b){a=a|0;b=b|0;HJ(a,b+36|0);return}function nJa(a,b){a=a|0;b=b|0;hb();return 0}function oJa(){var a=0,b=0,c=0;a=n8(36)|0;b=a;c=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));lSa(a);return a|0}function pJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44300;return}function qJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44380;return}function rJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44548;return}function sJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45468;return}function tJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=42576;return}function uJa(a,b){a=a|0;b=b|0;return Yoa(a,b<<4)|0}function vJa(a){a=a|0;bk(Bbb(a)|0);zma(134176,10)|0;hb()}function wJa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>c;return a>>>c|(b&(1<>c-32|0}function xJa(a){a=a|0;var b=0;b=a+16|0;f[b>>2]=f[b>>2]|1;if(!(f[a+20>>2]&1))return;else Na()}function yJa(a){a=a|0;Noa(a);return}function zJa(a,b){a=a|0;b=b|0;kJ(a,b+8|0);return}function AJa(a,b){a=a|0;b=b|0;lJ(a,b+8|0);return}function BJa(a){a=a|0;f[a>>2]=43816;uSa(a+44|0);LTa(a);return}function CJa(a,b){a=a|0;b=b|0;return b>>>0<1106247679|(b|0)==1106247679&a>>>0<4292870145|(b|0)<0&(b>>>0<3220176896|(b|0)==-1074790400&a>>>0<0)|0}function DJa(a,b){a=a|0;b=b|0;return b>>>0<1105199103|(b|0)==1105199103&a>>>0<4290772993|(b|0)<0&(b>>>0<3252682752|(b|0)==-1042284544&a>>>0<1)|0}function EJa(a,b){a=a|0;b=b|0;if(!b)a=0;else a=Hr(a,b)|0;return a|0}function FJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=42776;return}function GJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=43776;return}function HJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45108;return}function IJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=40044;return}function JJa(a){a=a|0;HTa(a+12|0);HTa(a);return}function KJa(a,b){a=a|0;b=b|0;f[b>>2]=42976;return}function LJa(a){a=a|0;return 36056}function MJa(a,b){a=a|0;b=b|0;Sm(a,qSa(f[b>>2]|0)|0);return}function NJa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function OJa(a,b){a=a|0;b=b|0;IJ(a,b+36|0);return}function PJa(a,b){a=a|0;b=b|0;KJ(a,b+36|0);return}function QJa(){var a=0,b=0,c=0;a=n8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));XVa(a);return a|0}function RJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=43616;return}function SJa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45548;return}function TJa(a,b){a=a|0;b=b|0;f[a>>2]=40124;f[a+4>>2]=b;f[a+16>>2]=a;return}function UJa(a){a=a|0;$8(f[a+4>>2]|0);return}function VJa(a,b){a=a|0;b=b|0;oJ(a,b+8|0);return}function WJa(a,b){a=a|0;b=b|0;pJ(a,b+8|0);return}function XJa(a,b){a=a|0;b=b|0;f[a+4>>2]=b;if((b|0)==0?Bbb(f[a+16>>2]|0)|0:0)zz(a,0,0);return}function YJa(a){a=a|0;uSa(a+24|0);uSa(a+12|0);uSa(a);return}function ZJa(){var a=0;a=n8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;w0a(a);return a|0}function _Ja(a){a=a|0;b[a+76>>0]=1;b[a+77>>0]=1;b[a+79>>0]=1;if(!(b[a+24>>0]|0))b[a+78>>0]=1;return}function $Ja(a,b){a=a|0;b=b|0;b=b+36|0;a=dv(a,f[b>>2]|0)|0;f[b>>2]=a;return}function aKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=42456;return}function bKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=42896;return}function cKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45788;return}function dKa(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;$(13);return 0}function eKa(a){a=a|0;var b=0;a=a+4|0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function fKa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==2){m$a(a,c);return}else Ca(92976,75448,235,101893)}function gKa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==1){SSa(a,f[b+8>>2]|0,0);return}else Ca(93004,75448,208,101907)}function hKa(a,b){a=a|0;b=b|0;VJ(a,b+36|0);return}function iKa(a,b){a=a|0;b=b|0;NJ(a,b+36|0);return}function jKa(a,b){a=a|0;b=b|0;OJ(a,b+36|0);return}function kKa(a,b){a=a|0;b=b|0;PJ(a,b+36|0);return}function lKa(a,b){a=a|0;b=b|0;QJ(a,b+36|0);return}function mKa(a,b){a=a|0;b=b|0;f[a>>2]=b;if(b|0){b=Ec(b)|0;f[a+4>>2]=b}return}function nKa(a){a=a|0;kya(a);T_a(a+16|0);f[a>>2]=41492;return}function oKa(a){a=a|0;kya(a);T_a(a+16|0);f[a>>2]=41252;return}function pKa(a){a=a|0;kya(a);T_a(a+16|0);f[a>>2]=41332;return}function qKa(a){a=a|0;kya(a);T_a(a+16|0);f[a>>2]=41172;return}function rKa(a){a=a|0;kya(a);T_a(a+16|0);f[a>>2]=41412;return}function sKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=40820;return}function tKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44628;return}function uKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45628;return}function vKa(a){a=a|0;lXa(a);tab(a+32|0);return}function wKa(a,b){a=a|0;b=b|0;Lz(a,f[b>>2]|0,f[b+4>>2]|0,119544);f[a>>2]=47284;return}function xKa(a){a=a|0;x=0;ga(329,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;r2a(a)}else return}function yKa(a,b){a=a|0;b=b|0;vJ(a,b+8|0);return}function zKa(a,b){a=a|0;b=b|0;wJ(a,b+8|0);return}function AKa(a,b){a=a|0;b=b|0;xJ(a,b+8|0);return}function BKa(a,b){a=a|0;b=b|0;yJ(a,b+8|0);return}function CKa(a,b){a=a|0;b=b|0;zJ(a,b+8|0);return}function DKa(){var a=0;a=n8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;G0a(a);return a|0}function EKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44180;return}function FKa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=45948;return}function GKa(a,b){a=a|0;b=b|0;ZJ(a,b+36|0);return}function HKa(a,b){a=a|0;b=b|0;WJ(a,b+36|0);return}function IKa(a,b){a=a|0;b=b|0;xL(a,b+36|0);return}function JKa(a){a=a|0;kya(a);XOa(a+16|0);f[a>>2]=45308;return}function KKa(){var a=0;a=u;u=u+16|0;if(!(Sb(135312,520)|0)){u=a;return}else GQa(122678,a)}function LKa(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;return ic[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function MKa(a,b){a=a|0;b=b|0;return (b|0)==(a|0)|0}function NKa(a,b,c){a=a|0;b=b|0;c=c|0;a=BTa(a)|0;f[a+8>>2]=b;f[a+4>>2]=c;return a|0}function OKa(a,b){a=a|0;b=b|0;CJ(a,b+8|0);return}function PKa(a,b){a=a|0;b=b|0;DJ(a,b+8|0);return}function QKa(a,b){a=a|0;b=b|0;EJ(a,b+8|0);return}function RKa(a,b){a=a|0;b=b|0;HJ(a,b+8|0);return}function SKa(){var a=0;a=n8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;O0a(a);return a|0}function TKa(a,b){a=a|0;b=b|0;SJa(a);f[a>>2]=45508;f[a+44>>2]=b;return}function UKa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;c=C9(a,b,e)|0;u=d;return c|0}function VKa(a){a=a|0;MNa(a+24|0);I_a(a);return}function WKa(a){a=a|0;if((b[130984]|0)==0?PWa(130984)|0:0){To();f[33768]=130288}return f[33768]|0}function XKa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a+28>>2]=b;f[a+32>>2]=c;f[a+36>>2]=d;return a|0}function YKa(a,b){a=a|0;b=b|0;_J(a,b+36|0);return}function ZKa(a,b){a=a|0;b=b|0;aK(a,b+36|0);return}function _Ka(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=41064;return}function $Ka(a){a=a|0;if((b[130904]|0)==0?PWa(130904)|0:0){Mo();f[33751]=129536}return f[33751]|0}function aLa(a){a=a|0;a=n8(8)|0;f[a>>2]=42976;return a|0}function bLa(a,b){a=a|0;b=b|0;if(b)b=f[(f[a+12>>2]|0)+4>>2]|0;else b=0;f[a+4>>2]=b;via(a);return}function cLa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)Ca(53343,53386,56,53399);else return}function dLa(a,b){a=a|0;b=b|0;IJ(a,b+8|0);return}function eLa(a,b){a=a|0;b=b|0;JJ(a,b+8|0);return}function fLa(a,b){a=a|0;b=b|0;KJ(a,b+8|0);return}function gLa(){var a=0;a=n8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;X0a(a);return a|0}function hLa(a,b){a=a|0;b=b|0;b=a+28|0;f[b>>2]=(f[b>>2]|0)+-4;return}function iLa(a,b){a=a|0;b=b|0;ex(a,b,b+16|0,b+20|0,b+24|0);return}function jLa(a){a=a|0;kya(a);XOa(a+16|0);f[a>>2]=43272;return}function kLa(){Qab();p6a();R6a();Q6a();P6a();O6a();return}function lLa(a,b){a=a|0;b=b|0;f[b>>2]=41020;return}function mLa(a){a=+a;var b=0;b=f[33256]|0;return EX(b,Wua(a)|0)|0}function nLa(a,b,c){a=a|0;b=b|0;c=c|0;tYa(a,b);f[a>>2]=42352;f[a+8>>2]=c;f[a+20>>2]=0;return}function oLa(a,b){a=a|0;b=b|0;return b>>>0<1139802112|(b|0)==1139802112&a>>>0<0|(b|0)<0&(b>>>0<3220176896|(b|0)==-1074790400&a>>>0<0)|0}function pLa(a,b){a=a|0;b=b|0;return b>>>0<1138753536|(b|0)==1138753536&a>>>0<0|(b|0)<0&(b>>>0<3286237184|(b|0)==-1008730112&a>>>0<1)|0}function qLa(a){a=a|0;f[a>>2]=44060;uSa(a+44|0);LTa(a);return}function rLa(a){a=a|0;gea(a+16|0);GVa(a);return}function sLa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=44948;return}function tLa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;OVa(a);return}function uLa(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;tc[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function vLa(a){a=a|0;if((b[130920]|0)==0?PWa(130920)|0:0){Du();f[33752]=129824}return f[33752]|0}function wLa(a){a=a|0;if((b[130888]|0)==0?PWa(130888)|0:0){GX();f[33750]=129248}return f[33750]|0}function xLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==98862?a+4|0:0)|0}function yLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==96783?a+4|0:0)|0}function zLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==95788?a+4|0:0)|0}function ALa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;Hj(a,c);b[a+32>>0]=d&1;f[a+36>>2]=e;return}function BLa(a,b){a=a|0;b=b|0;f[a>>2]=b;b=a+8|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;return}function CLa(a,b){a=a|0;b=b|0;VJ(a,b+8|0);return}function DLa(a,b){a=a|0;b=b|0;NJ(a,b+8|0);return}function ELa(a,b){a=a|0;b=b|0;OJ(a,b+8|0);return}function FLa(a,b){a=a|0;b=b|0;PJ(a,b+8|0);return}function GLa(a,b){a=a|0;b=b|0;QJ(a,b+8|0);return}function HLa(){var a=0;a=n8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f1a(a);return a|0}function ILa(a,b){a=a|0;b=b|0;w4(a,b);return}function JLa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=40660;return}function KLa(a){a=a|0;if((b[131e3]|0)==0?PWa(131e3)|0:0){Lu();f[33769]=130576}return f[33769]|0}function LLa(a){a=a|0;if((b[130968]|0)==0?PWa(130968)|0:0){$X();f[33767]=13e4}return f[33767]|0}function MLa(a){a=a|0;if(V6a(f[f[a+12>>2]>>2]|0)|0)pVa(a);return}function NLa(a,c){a=a|0;c=c|0;fNa(a,(b[c+11>>0]|0)<0?f[c>>2]|0:c,0);return}function OLa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];E4(a+4|0,b+4|0);return}function PLa(a){a=+a;var b=0;qRa(a)|0;if((I|0)>=0)if(a<4294967295.0)b=~~a>>>0;else b=-1;else b=0;return b|0}function QLa(a,b){a=a|0;b=b|0;b=b+12|0;a=dv(a,f[b>>2]|0)|0;f[b>>2]=a;return}function RLa(a){a=a|0;rLa(a);ubb(a);return}function SLa(a){a=a|0;Aea(a+16|0);GVa(a);return}function TLa(a){a=a|0;kya(a);lXa(a+16|0);f[a>>2]=40740;return}function ULa(a){a=a|0;caa(f[a+4>>2]|0);return}function VLa(a){a=a|0;_qa(a);return}function WLa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=d;f[a+4>>2]=b;f[a+8>>2]=c;return}function XLa(a){a=a|0;R9(a);return}function YLa(a,b){a=a|0;b=b|0;sLa(a);f[a>>2]=44908;f[a+44>>2]=b;return}function ZLa(a,b){a=a|0;b=b|0;ZJ(a,b+8|0);return}function _La(a,b){a=a|0;b=b|0;WJ(a,b+8|0);return}function $La(a,b){a=a|0;b=b|0;XJ(a,b+8|0);return}function aMa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];FX(a+4|0,b+4|0);return}function bMa(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)gH(a|0,(X6a(c)|0)&255|0,b|0)|0;return a|0}function cMa(a){a=a|0;a=a+-9<<24>>24;if((a&255)<24)return (8388627>>>(a&255)&1|0)!=0|0;else return 0;return 0}function dMa(a,b){a=a|0;b=b|0;b=vZ(a+88|0,b)|0;return f[b>>2]|0}function eMa(a){a=a|0;cba(a+140|0,fQa(f[a+116>>2]|0)|0);return}function fMa(a){a=a|0;var b=0;b=n8(20)|0;sPa(b);f[a>>2]=b;return}function gMa(a){a=a|0;SLa(a);ubb(a);return}function hMa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>2]|0;if(a|0)ubb(a);return}function jMa(a){a=a|0;var b=0;b=n8(8)|0;f[b>>2]=46116;f[b+4>>2]=f[a+4>>2];return b|0}function kMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=Kva(Kva(Kva(a,b)|0,c)|0,d)|0;I=0;return d|0}function lMa(a,b){a=a|0;b=b|0;_J(a,b+8|0);return}function mMa(a,b){a=a|0;b=b|0;$J(a,b+8|0);return}function nMa(a,b){a=a|0;b=b|0;aK(a,b+8|0);return}function oMa(a){a=a|0;lXa(a);b[a+28>>0]=0;return}function pMa(a,b){a=a|0;b=b|0;gK(a,b+36|0);return}function qMa(a,c){a=a|0;c=c|0;f[a>>2]=c;b[a+4>>0]=0;Kab(a+8|0);Kab(a+12|0);return}function rMa(a){a=a|0;return x1a(f[a+32>>2]|0)|0}function sMa(a){a=a|0;M9(a+4|0);return}function tMa(a){a=a|0;a=n8(8)|0;f[a>>2]=41020;return a|0}function uMa(a){a=a|0;if(!(f[a+4>>2]|0))Ca(91353,99429,212,91370);else return f[a>>2]|0;return 0}function vMa(a,b){a=a|0;b=b|0;Rda(f[a+24>>2]|0,b);return}function wMa(a,c){a=a|0;c=c|0;if((b[a+24>>0]|0)==0?((f[c+8>>2]|0)+-25|0)>>>0<8:0)b[a+78>>0]=1;return}function xMa(a){a=a|0;kya(a);XOa(a+16|0);f[a>>2]=43696;return}function yMa(a){a=a|0;var b=0;b=a+12|0;a=f[b>>2]|0;f[b>>2]=0;if(a|0){uSa(a);ubb(a)}return}function zMa(a){a=a|0;return kS(a)|0}function AMa(a){a=a|0;f[a>>2]=41144;RWa(a+12|0);return}function BMa(a,b){a=a|0;b=b|0;rQa(f[b>>2]|0)|0;return}function CMa(a){a=a|0;return H$(a)|0}function DMa(a){a=a|0;KHa(a+16|0);U1(a);return}function EMa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function FMa(a){a=a|0;if((f[a>>2]|0)==1)a=G6a(f[f[a+4>>2]>>2]|0)|0;else a=0;return a|0}function GMa(a){a=a|0;if((b[a+27>>0]|0)==0?(b[a+76>>0]|0)==0:0)a=(b[a+77>>0]|0)!=0;else a=1;return a|0}function HMa(a){a=a|0;return 36088}function IMa(a){a=a|0;if(!((f[(f[a+20>>2]|0)+4>>2]|0)!=5?(f[(f[a+24>>2]|0)+4>>2]|0)!=5:0))f[a+4>>2]=5;return}function JMa(a,b){a=a|0;b=b|0;DQa(f[b>>2]|0)|0;return}function KMa(a){a=a|0;if(!a)a=32;else{a=23872+((X(0-a&a,125613361)|0)>>>27)|0;a=h[a>>0]|0}return a|0}function LMa(){var a=0;a=n8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;S1a(a);return a|0}function MMa(a){a=a|0;NQa(a+12|0);uSa(a);return}function NMa(a,b){a=a|0;b=b|0;f[a+8>>2]=b;b=zr(f[a+12>>2]|0,b<<2)|0;f[a>>2]=b;return}function OMa(){G8a();p8a();m8a();k8a();i8a();return}function PMa(a,b){a=a|0;b=b|0;f[b>>2]=46116;f[b+4>>2]=f[a+4>>2];return}function QMa(a,b){a=a|0;b=b|0;fK(a,b+8|0);return}function RMa(a,b){a=a|0;b=b|0;bga(a+-16|0,b);return}function SMa(a){a=a|0;f[a>>2]=39744;return}function TMa(a){a=a|0;Zsa(a+4|0);return}function UMa(a){a=a|0;_sa(a+4|0);return}function VMa(a){a=a|0;$sa(a+4|0);return}function WMa(a){a=a|0;ata(a+4|0);return}function XMa(a){a=a|0;bta(a+4|0);return}function YMa(a,b){a=a|0;b=b|0;lXa(a);f[a+24>>2]=b;return}function ZMa(a){a=a|0;FO(a);if((f[(f[a+28>>2]|0)+4>>2]|0)==5)f[a+4>>2]=5;return}function _Ma(a){a=a|0;var b=0;Cbb();b=f[33451]|0;f[a+56>>2]=b;if(b|0)f[b+52>>2]=a;f[33451]=a;xbb();return a|0}function $Ma(){hN(131240,K8(135160)|0);return}function aNa(){hN(131232,K8(135152)|0);return}function bNa(){hN(131224,K8(135144)|0);return}function cNa(){hN(131216,K8(135136)|0);return}function dNa(a){a=a|0;voa(f[a+8>>2]|0);return}function eNa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=d-c|0;return (d>>>0>>0?d:e)|0}function fNa(a,b,c){a=a|0;b=b|0;c=c|0;if(!b)Ca(53274,53276,64,53313);else{Qf(a,b,c);return}}function gNa(a,b){a=a|0;b=b|0;a=lWa(a)|0;f[a+8>>2]=b;oXa(a);return a|0}function hNa(a,b){a=a|0;b=b|0;EQa(f[b>>2]|0)|0;return}function iNa(a,b){a=a|0;b=b|0;vK(a,b+36|0);return}function jNa(a){a=a|0;IYa(a);Kab(a+12|0);Kab(a+16|0);f[a+32>>2]=0;return}function kNa(a,b){a=a|0;b=b|0;b=a+44|0;f[b>>2]=(f[b>>2]|0)+-4;return}function lNa(a){a=a|0;UNa(a+40|0);I_a(a);return}function mNa(){hN(131296,K8(135096)|0);return}function nNa(){hN(131280,K8(135088)|0);return}function oNa(){hN(131264,K8(135080)|0);return}function pNa(){hN(131248,K8(135012)|0);return}function qNa(a){a=a|0;if(Gab(f[a>>2]|0)|0)return f[a+8>>2]|0;else Ca(53321,75338,230,54009);return 0}function rNa(a,b,c){a=a|0;b=b|0;c=c|0;tYa(a,b);f[a>>2]=42284;f[a+8>>2]=c;return}function sNa(a){a=a|0;a=a-(a>>>1&1431655765)|0;a=(a>>>2&858993459)+(a&858993459)|0;return (X((a>>>4)+a&252645135,16843009)|0)>>>24|0}function tNa(a,b){a=a|0;b=b|0;gK(a,b+8|0);return}function uNa(a,b){a=a|0;b=b|0;kK(a,b+8|0);return}function vNa(a,b){a=a|0;b=b|0;a=a+16|0;if($1a(f[a>>2]|0,f[b>>2]|0)|0)Kab(a);return}function wNa(a){a=a|0;f[a>>2]=44748;kHa(a+16|0);GVa(a);return}function xNa(a){a=a|0;kya(a);f[a>>2]=44748;yUa(a+16|0);b[a+28>>0]=0;return}function yNa(a){a=a|0;kya(a);XOa(a+16|0);f[a>>2]=40208;return}function zNa(a){a=a|0;kya(a);XOa(a+16|0);f[a>>2]=45868;return}function ANa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Ox(f[b>>2]|0,f[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function BNa(){hN(131176,K8(134944)|0);return}function CNa(){hN(131168,K8(134936)|0);return}function DNa(){hN(131160,K8(134928)|0);return}function ENa(){hN(131152,K8(134904)|0);return}function FNa(a){a=a|0;sRa(a+4|0);return}function GNa(a,b){a=a|0;b=b|0;SQa(f[b>>2]|0)|0;return}function HNa(a,b){a=a|0;b=b|0;KQa(f[b>>2]|0)|0;return}function INa(a,b){a=a|0;b=b|0;LQa(f[b>>2]|0)|0;return}function JNa(a){a=a|0;var b=0,c=0;b=(bV(a)|0)+1|0;c=Kc(b)|0;if(!c)a=0;else a=Iu(c|0,a|0,b|0)|0;return a|0}function KNa(a){a=a|0;tSa(a+4|0);return}function LNa(a){a=a|0;lua(a);return}function MNa(a){a=a|0;mua(a);return}function NNa(a){a=a|0;if((f[a>>2]|0)==4)return +(+e8a(a+8|0));else Ca(101661,55015,62,60597);return +(0.0)}function ONa(a){a=a|0;if((f[a>>2]|0)==3)return +(+d8a(a+8|0));else Ca(101689,55015,61,60590);return +(0.0)}function PNa(a){a=a|0;if(vab(f[a>>2]|0)|0)return f[a+8>>2]|0;else Ca(53407,75338,242,65719);return 0}function QNa(a,c){a=a|0;c=c|0;_Ka(a);f[a>>2]=40980;b[a+44>>0]=c&1;return}function RNa(a,b){a=a|0;b=b|0;b=lT(a+44|0,b)|0;return f[b>>2]|0}function SNa(a,b){a=a|0;b=b|0;lK(a,b+8|0);return}function TNa(a){a=a|0;var b=0;b=f[a+44>>2]|0;return ay(b,Bbb(f[a+32>>2]|0)|0)|0}function UNa(a){a=a|0;ada(a);return}function VNa(a,b){a=a|0;b=b|0;ex(a,b,b+8|0,b+12|0,b+16|0);return}function WNa(a){a=a|0;kya(a);T_a(a+16|0);f[a>>2]=44708;return}function XNa(a,b,c){a=a|0;b=b|0;c=c|0;if(c>>>0<128)a=(d[25968+(c<<1)>>1]&b)<<16>>16!=0;else a=0;return a|0}function YNa(a,b){a=a|0;b=b|0;zma(a+184|0,b)|0;return}function ZNa(a){a=a|0;TYa(a);TYa(a+12|0);f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;return}function _Na(a,b){a=a|0;b=b|0;tK(a,b+8|0);return}function $Na(a,b){a=a|0;b=b|0;WQa(f[b>>2]|0)|0;return}function aOa(a,b){a=a|0;b=b|0;XQa(f[b>>2]|0)|0;return}function bOa(a,b){a=a|0;b=b|0;YQa(f[b>>2]|0)|0;return}function cOa(a,c){a=a|0;c=c|0;if(Fab(c)|0){b[a+26>>0]=1;c=1}else c=0;return c|0}function dOa(a){a=+a;qRa(a)|0;if((I|0)<0)return 0;else return a<=18446744073709551616.0&(_ab(a)|0)|0;return 0}function eOa(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 hc[a&31](b|0,c|0,d|0,e|0,f|0)|0}function fOa(){var a=0;if((b[130848]|0)==0?PWa(130848)|0:0){a=rF(2147483647,119761,0)|0;f[33722]=a}return f[33722]|0}function gOa(a,b,c){a=a|0;b=b|0;c=c|0;return ((f[b>>2]|0)==(c|0)?(f[b+4>>2]|0)==(a|0):0)|0}function hOa(a,b){a=a|0;b=b|0;iRa(f[b>>2]|0)|0;return}function iOa(a,b){a=a|0;b=b|0;pY(a,f[b>>2]|0);return}function jOa(a,c){a=a|0;c=c|0;b[a+8>>0]=c&1;f[a+12>>2]=c?135337:123308;f[a+16>>2]=c?135337:112640;return}function kOa(a){a=a|0;var b=0;b=n8(24)|0;hPa(b);f[a>>2]=b;return}function lOa(a){a=a|0;f[a>>2]=41940;f[a+104>>2]=41960;DU(a+4|0);return}function mOa(a){a=a|0;if(c8a(f[a>>2]|0)|0)return a|0;else Ca(118461,118476,79,118518);return 0}function nOa(a,b){a=a|0;b=b|0;oRa(f[b>>2]|0)|0;return}function oOa(a,b){a=a|0;b=b|0;vK(a,b+8|0);return}function pOa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=b;f[a+4>>2]=c;f[a+8>>2]=d;return}function qOa(a,b){a=a|0;b=b|0;Rla(a,b);return}function rOa(a){a=a|0;lOa(a);m1a(a+104|0);return}function sOa(a){a=a|0;f[a>>2]=39844;return}function tOa(a){a=a|0;var b=0;b=n8(4)|0;f[b>>2]=0;f[a>>2]=b;return}function uOa(a,b){a=a|0;b=b|0;return Yoa(a,b*24|0)|0}function vOa(){}function wOa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function xOa(a){a=a|0;uSa(a+20|0);NQa(a);return}function yOa(a,b,c){a=a|0;b=b|0;c=c|0;tYa(a,b);f[a>>2]=42392;f[a+8>>2]=c;return}function zOa(a){a=a|0;qJa(a);f[a>>2]=44340;f[a+44>>2]=0;return}function AOa(a){a=a|0;pRa(a,2);f[a>>2]=42216;f[a+20>>2]=0;FHa(a+24|0);return}function BOa(a,b,c){a=a|0;b=b|0;c=c|0;rb(22,Bbb(f[c>>2]|0)|0)|0;return}function COa(a,b){a=a|0;b=b|0;f[a>>2]=43148;f[a+4>>2]=b;f[a+16>>2]=a;return}function DOa(a,b){a=a|0;b=b|0;f[a>>2]=43104;f[a+4>>2]=b;f[a+16>>2]=a;return}function EOa(a,b){a=a|0;b=b|0;f[a>>2]=43060;f[a+4>>2]=b;f[a+16>>2]=a;return}function FOa(){if((b[131496]|0)==0?PWa(131496)|0:0){RUa();f[33807]=135224}return f[33807]|0}function GOa(){if((b[131328]|0)==0?PWa(131328)|0:0){vXa();f[33805]=135216}return f[33805]|0}function HOa(a){a=a|0;kya(a);f[a>>2]=41532;tab(a+16|0);tab(a+20|0);tab(a+24|0);return}function IOa(a,b){a=a|0;b=b|0;a=YTa(f[a>>2]|0)|0;f[a+8>>2]=b;return a|0}function JOa(a,b){a=a|0;b=b|0;vca(a+-16|0,f[b>>2]|0);return}function KOa(a,b){a=a|0;b=b|0;f[a+132>>2]=b;return}function LOa(a){a=a|0;return JDa(f[a>>2]|0,f[a+4>>2]|0)|0}function MOa(a,b,c){a=a|0;b=b|0;c=c|0;b=u;u=u+16|0;a=b;f[a>>2]=c;Ry(46204,65822,a)|0;u=b;return}function NOa(a){a=a|0;rOa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function OOa(a){a=a|0;EVa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function POa(a){a=a|0;eFa(a);return}function QOa(a,b){a=a|0;b=b|0;IRa(f[b>>2]|0)|0;return}function ROa(a,b){a=a|0;b=b|0;yRa(f[b>>2]|0)|0;return}function SOa(a,b){a=a|0;b=b|0;zRa(f[b>>2]|0)|0;return}function TOa(a,b){a=a|0;b=b|0;ARa(f[b>>2]|0)|0;return}function UOa(a,b){a=a|0;b=b|0;return yq(a,b)|0}function VOa(a){a=a|0;a=a+-2|0;if(a>>>0<6)return (45>>>(a&63)&1)!=0|0;else return 0;return 0}function WOa(a,b){a=a|0;b=b|0;AO(a+120|0,a+104|0);return}function XOa(a){a=a|0;lXa(a);f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;return}function YOa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];hW(a+4|0,b+4|0);return}function ZOa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return gc[a&7](b|0,c|0,d|0,e|0,+f)|0}function _Oa(a){a=a|0;cXa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function $Oa(a){a=a|0;RVa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function aPa(a){a=a|0;dXa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function bPa(a){a=a|0;SVa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function cPa(a,b){a=a|0;b=b|0;JRa(f[b>>2]|0)|0;return}function dPa(a,b){a=a|0;b=b|0;KRa(f[b>>2]|0)|0;return}function ePa(a,b){a=a|0;b=b|0;LRa(f[b>>2]|0)|0;return}function fPa(a,b){a=a|0;b=b|0;WRa(f[b>>2]|0)|0;return}function gPa(a,b){a=a|0;b=b|0;XRa(f[b>>2]|0)|0;return}function hPa(a){a=a|0;tab(a);tab(a+4|0);tab(a+8|0);tab(a+16|0);f[a+20>>2]=0;return}function iPa(a){a=a|0;a=a+-1|0;if(a>>>0<6)return (37>>>(a&63)&1)!=0|0;else return 0;return 0}function jPa(a){a=a|0;pc[f[f[a>>2]>>2]&4095](a,101332);hb()}function kPa(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;$(22)}function lPa(a,b){a=a|0;b=b|0;f4a(a,b);FHa(a+4|0);return}function mPa(a){a=a|0;JGa(a);ubb(a);return}function nPa(a){a=a|0;KGa(a);ubb(a);return}function oPa(a){a=a|0;if(rab(f[a>>2]|0)|0)return a+8|0;else Ca(53422,75338,238,53433);return 0}function pPa(a){a=a|0;if(Gab(f[a>>2]|0)|0)return a+8|0;else Ca(53321,75338,234,53332);return 0}function qPa(a){a=a|0;cga(a+16|0);return}function rPa(a){a=+a;qRa(a)|0;if((I|0)<0)return 0;else return a<=4294967295.0&(_ab(a)|0)|0;return 0}function sPa(a){a=a|0;tab(a);a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function tPa(a,b){a=a|0;b=b|0;yCa(a,b)|0;return a|0}function uPa(a){a=a|0;return 35416}function vPa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==116512?a+4|0:0)|0}function wPa(a,b){a=a|0;b=b|0;gSa(f[b>>2]|0)|0;return}function xPa(a,b){a=a|0;b=b|0;YRa(f[b>>2]|0)|0;return}function yPa(a,b){a=a|0;b=b|0;ZRa(f[b>>2]|0)|0;return}function zPa(a,b){a=a|0;b=b|0;_Ra(f[b>>2]|0)|0;return}function APa(a,b){a=a|0;b=b|0;hSa(f[b>>2]|0)|0;return}function BPa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];YR(a+4|0,b+4|0);return}function CPa(a){a=a|0;kZa(a);tab(a+8|0);f[a+12>>2]=0;f[a+16>>2]=0;return}function DPa(a){a=a|0;a=a+-2|0;if(a>>>0<6)return (41>>>(a&63)&1)!=0|0;else return 0;return 0}function EPa(a,b){a=a|0;b=b|0;NW(a,b,f[b+36>>2]|0);return}function FPa(a){a=a|0;var b=0;b=zr(a,32)|0;FGa(b,a);return b|0}function GPa(a){a=a|0;nHa(a+-8|0);return}function HPa(a){a=a|0;IPa(a+-8|0);return}function IPa(a){a=a|0;nHa(a);ubb(a);return}function JPa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (fza(a,b,c,d)|0)^1|0}function KPa(a){a=a|0;JLa(a);f[a>>2]=40620;SIa(a+44|0);return}function LPa(a){a=a|0;if(!(b[a+8>>0]|0))return f[a>>2]|0;else Ca(106552,106510,72,106559);return 0}function MPa(a,b){a=a|0;b=b|0;un(a,b,b+12|0,0,0)|0;return}function NPa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;sc[a&15](b|0,c|0,d|0,e|0,f|0)}function OPa(a,b){a=a|0;b=b|0;y7(a);f[a>>2]=0;f0a(a+8|0,b);return a|0}function PPa(a){a=a|0;if(sab(f[a>>2]|0)|0)return a|0;else Ca(118531,118476,74,118542);return 0}function QPa(a,b,c){a=a|0;b=b|0;c=c|0;K$(a,b,c);return}function RPa(a,b){a=a|0;b=b|0;iSa(f[b>>2]|0)|0;return}function SPa(a){a=a|0;f[a>>2]=40620;Kqa(a+44|0);LTa(a);return}function TPa(a){a=a|0;pRa(a,1);f[a>>2]=42176;yUa(a+20|0);return}function UPa(a){a=a|0;if((a+-97&255)<26)return 1;else return a<<24>>24==36|(a<<24>>24==95|(a+-65&255)<26)|0;return 0}function VPa(a,b){a=a|0;b=b|0;lK(a+16|0,b+36|0);return}function WPa(a,b){a=a|0;b=b|0;return (E8(b,a)|0)>0|0}function XPa(a){a=a|0;return HUa(a)|0}function YPa(a){a=a|0;f[a>>2]=42976;f[a+16>>2]=a;return}function ZPa(a){a=a|0;return aZa(a)|0}function _Pa(a){a=a|0;f[a>>2]=44868;NQa(a+20|0);GVa(a);return}function $Pa(a,b){a=a|0;b=b|0;b=aqa(a+12|0,b)|0;return f[b>>2]|0}function aQa(a,b){a=a|0;b=b|0;Yi(a+-16|0,b);return}function bQa(a,b){a=a|0;b=b|0;XOa(a);tab(a+36|0);f[a+40>>2]=b;return}function cQa(a){a=a|0;uSa(a+12|0);HTa(a);return}function dQa(a,b){a=a|0;b=b|0;un(a,b,b+24|0,0,0)|0;return}function eQa(a){a=a|0;var b=0;b=zr(a,28)|0;dHa(b,a);return b|0}function fQa(a){a=a|0;return ((f[a+24>>2]|0)-(f[a+20>>2]|0)>>2)+((f[a+12>>2]|0)-(f[a+8>>2]|0)>>2)|0}function gQa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;return}function hQa(a,b){a=a|0;b=b|0;kya(a);f[a>>2]=41712;f[a+16>>2]=b;return}function iQa(a,b){a=a|0;b=b|0;qSa(f[b>>2]|0)|0;return}function jQa(a,b){a=a|0;b=b|0;wfa(134176,f[b>>2]|0)|0;return a|0}function kQa(a,b){a=a|0;b=b|0;return (Qn(b,f[a+132>>2]|0)|0)==2|0}function lQa(a,b){a=a|0;b=b|0;un(a,b,b+8|0,0,0)|0;return}function mQa(a){a=a|0;if((f[a>>2]|0)==3)return f[a+8>>2]|0;else Ca(101689,55015,66,55038);return 0}function nQa(a,b){a=a|0;b=b|0;return n_a(n9(a,b)|0)|0}function oQa(a){a=a|0;var b=0;b=n8(92)|0;v_(b,f[a+44>>2]|0);return b|0}function pQa(a,b){a=a|0;b=b|0;return naa(b,f[a+4>>2]|0)|0}function qQa(a){a=a|0;f[a>>2]=0;b[a+4>>0]=0;Kab(a+8|0);Kab(a+12|0);return}function rQa(a){a=a|0;if((f[a>>2]|0)==25)return a|0;else Ca(60604,53386,206,60635);return 0}function sQa(a){a=a|0;XBa(a);ubb(a);return}function tQa(a,b){a=a|0;b=b|0;f[a+8>>2]=b;b=zr(132756,b<<2)|0;f[a>>2]=b;return}function uQa(a,b){a=a|0;b=b|0;f[a>>2]=b;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function vQa(a,b){a=a|0;b=b|0;Hs(f[a>>2]|0,b);return}function wQa(a){a=a|0;XT(a,134008)|0;return}function xQa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=0;f[a+8>>2]=c;return}function yQa(a,b){a=a|0;b=b|0;return (_Qa(a,b)|0)!=0|0}function zQa(a){a=a|0;lha(f[a+4>>2]|0);return}function AQa(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=z5(a,b,c)|0;return a|0}function BQa(a,b){a=a|0;b=b|0;f[a+52>>2]=b;return}function CQa(a,b){a=a|0;b=b|0;f[a+180>>2]=b;return}function DQa(a){a=a|0;if((f[a>>2]|0)==8)return a|0;else Ca(60604,53386,206,60635);return 0}function EQa(a){a=a|0;if((f[a>>2]|0)==23)return a|0;else Ca(60604,53386,206,60635);return 0}function FQa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+8>>2]=b;f[a+12>>2]=0;f[a+16>>2]=0;return}function GQa(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;f[c>>2]=b;Ry(46204,a,c)|0;JV(10);hb()}function HQa(a){a=a|0;sta(a+8|0);return}function IQa(a,b){a=a|0;b=b|0;b=Kva(f[a>>2]|0,b)|0;f[a>>2]=b;return}function JQa(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function KQa(a){a=a|0;if((f[a>>2]|0)==27)return a|0;else Ca(60604,53386,206,60635);return 0}function LQa(a){a=a|0;if((f[a>>2]|0)==26)return a|0;else Ca(60604,53386,206,60635);return 0}function MQa(a){a=a|0;Gna(f[f[a>>2]>>2]|0);return}function NQa(a){a=a|0;Dja(a);return}function OQa(){var a=0;a=n8(180)|0;gH(a|0,0,180)|0;vV(a);return a|0}function PQa(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+12>>0]=c&1;return}function QQa(a){a=a|0;if(!(f[a+16>>2]|0))a=(f[a+12>>2]|0)==0;else a=0;return a|0}function RQa(a,b){a=a|0;b=b|0;FW(a,b);return}function SQa(a){a=a|0;if((f[a>>2]|0)==7)return a|0;else Ca(60604,53386,206,60635);return 0}function TQa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function UQa(a,b){a=a|0;b=b|0;return Oo(a,b)|0}function VQa(a){a=a|0;i4(a+48|0);return}function WQa(a){a=a|0;if((f[a>>2]|0)==12)return a|0;else Ca(60604,53386,206,60635);return 0}function XQa(a){a=a|0;if((f[a>>2]|0)==11)return a|0;else Ca(60604,53386,206,60635);return 0}function YQa(a){a=a|0;if((f[a>>2]|0)==24)return a|0;else Ca(60604,53386,206,60635);return 0}function ZQa(a){a=a|0;f[a>>2]=41020;f[a+16>>2]=a;return}function _Qa(a,b){a=a|0;b=b|0;return mfa(a,b)|0}function $Qa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];oS(a+4|0,b+4|0);return}function aRa(a,b){a=a|0;b=b|0;Mc(a+-16|0,b);return}function bRa(a,b){a=a|0;b=b|0;cr(a,b);return}function cRa(a){a=a|0;a=n8(180)|0;gH(a|0,0,180)|0;sV(a);return a|0}function dRa(a){a=a|0;a=n8(180)|0;gH(a|0,0,180)|0;tV(a);return a|0}function eRa(a){a=a|0;a=n8(180)|0;gH(a|0,0,180)|0;uV(a);return a|0}function fRa(a){a=a|0;a=n8(180)|0;gH(a|0,0,180)|0;vV(a);return a|0}function gRa(a){a=a|0;a=n8(180)|0;gH(a|0,0,180)|0;wV(a);return a|0}function hRa(a){a=a|0;xVa(a+16|0);GVa(a);return}function iRa(a){a=a|0;if((f[a>>2]|0)==10)return a|0;else Ca(60604,53386,206,60635);return 0}function jRa(a){a=a|0;var b=0;b=zr(a,40)|0;gza(b,a);return b|0}function kRa(a){a=a|0;var b=0;b=f[11692]|0;if(a|0)f[11692]=(a|0)==(-1|0)?133768:a;return ((b|0)==133768?-1:b)|0}function lRa(a){a=a|0;if(u8a(b[a>>0]|0)|0)a=(b[a+24>>0]|0)!=0;else a=0;return a|0}function mRa(a,b,c){a=a|0;b=b|0;c=c|0;return $1a(a,b)|0}function nRa(a){a=a|0;JYa(a);Kab(a+12|0);Kab(a+16|0);return}function oRa(a){a=a|0;if((f[a>>2]|0)==9)return a|0;else Ca(60604,53386,206,60635);return 0}function pRa(a,b){a=a|0;b=b|0;f[a>>2]=42196;f[a+4>>2]=-1;f[a+8>>2]=0;f[a+16>>2]=b;return}function qRa(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function rRa(a){a=a|0;var c=0;f[a>>2]=49728;c=f[a+8>>2]|0;if(c|0?b[a+12>>0]|0:0)rbb(c);return}function sRa(a){a=a|0;zIa(a);return}function tRa(a){a=a|0;return 32264}function uRa(a){a=a|0;return 32240}function vRa(a){a=a|0;var b=0;b=n8(24)|0;BLa(b,0);f[b+4>>2]=a;return b|0}function wRa(a){a=a|0;yCa(Bbb(a)|0,93580)|0;return}function xRa(a){a=a|0;sta(a+16|0);HTa(a);return}function yRa(a){a=a|0;if((f[a>>2]|0)==18)return a|0;else Ca(60604,53386,206,60635);return 0}function zRa(a){a=a|0;if((f[a>>2]|0)==20)return a|0;else Ca(60604,53386,206,60635);return 0}function ARa(a){a=a|0;if((f[a>>2]|0)==17)return a|0;else Ca(60604,53386,206,60635);return 0}function BRa(a){a=a|0;var b=0;b=zr(a,36)|0;Gqa(b,a);return b|0}function CRa(a,b){a=a|0;b=+b;p[a+16>>3]=b;return}function DRa(a){a=a|0;return 34544}function ERa(a){a=a|0;return 32208}function FRa(a){a=a|0;if(u8a(b[a>>0]|0)|0)a=(b[a+25>>0]|0)!=0;else a=0;return a|0}function GRa(){var a=0;a=n8(180)|0;gH(a|0,0,180)|0;tV(a);return a|0}function HRa(a){a=a|0;tPa(a,101332)|0;return}function IRa(a){a=a|0;if((f[a>>2]|0)==5)return a|0;else Ca(60604,53386,206,60635);return 0}function JRa(a){a=a|0;if((f[a>>2]|0)==16)return a|0;else Ca(60604,53386,206,60635);return 0}function KRa(a){a=a|0;if((f[a>>2]|0)==14)return a|0;else Ca(60604,53386,206,60635);return 0}function LRa(a){a=a|0;if((f[a>>2]|0)==15)return a|0;else Ca(60604,53386,206,60635);return 0}function MRa(a){a=a|0;a=zr(a,28)|0;xza(a);return a|0}function NRa(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 (I=d,a-c>>>0|0)|0}function ORa(a){a=a|0;if((f[a>>2]|0)==1)return f[a+8>>2]|0;else Ca(93004,55015,59,60583);return 0}function PRa(){var a=0;a=n8(196)|0;gH(a|0,0,196)|0;oYa(a);return a|0}function QRa(a,b){a=a|0;b=b|0;return Co(a,b,0)|0}function RRa(a,b){a=a|0;b=b|0;ox(a,b);return}function SRa(a,b){a=a|0;b=b|0;px(a,b);return}function TRa(a){a=a|0;yx(a+24|0,a+12|0);return}function URa(a){a=a|0;cFa(a);RXa(a);return}function VRa(a){a=a|0;MTa(a+24|0);I_a(a);return}function WRa(a){a=a|0;if((f[a>>2]|0)==4)return a|0;else Ca(60604,53386,206,60635);return 0}function XRa(a){a=a|0;if((f[a>>2]|0)==1)return a|0;else Ca(60604,53386,206,60635);return 0}function YRa(a){a=a|0;if((f[a>>2]|0)==13)return a|0;else Ca(60604,53386,206,60635);return 0}function ZRa(a){a=a|0;if((f[a>>2]|0)==21)return a|0;else Ca(60604,53386,206,60635);return 0}function _Ra(a){a=a|0;if((f[a>>2]|0)==19)return a|0;else Ca(60604,53386,206,60635);return 0}function $Ra(a){a=a|0;var b=0;b=zr(a,28)|0;hIa(b,a);return b|0}function aSa(a){a=a|0;uSa(a+16|0);return}function bSa(a){a=a|0;var b=0;b=f[a>>2]|0;if((b|0)!=(fOa()|0))P2a(f[a>>2]|0);return}function cSa(a,c){a=a|0;c=c|0;b[a>>0]=0;f[a+4>>2]=c;return}function dSa(){var a=0;a=n8(180)|0;gH(a|0,0,180)|0;wV(a);return a|0}function eSa(a){a=a|0;UIa(a);f[a>>2]=41976;return}function fSa(a,b){a=a|0;b=b|0;Taa(a,b);return a|0}function gSa(a){a=a|0;if((f[a>>2]|0)==3)return a|0;else Ca(60604,53386,206,60635);return 0}function hSa(a){a=a|0;if((f[a>>2]|0)==6)return a|0;else Ca(60604,53386,206,60635);return 0}function iSa(a){a=a|0;if((f[a>>2]|0)==22)return a|0;else Ca(60604,53386,206,60635);return 0}function jSa(a){a=a|0;Foa(a+36|0);xVa(a);return}function kSa(a){a=a|0;XOa(a);Qua(a+36|0);return}function lSa(a){a=a|0;kya(a);f[a>>2]=40860;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;return}function mSa(a){a=a|0;var b=0;b=zr(a,32)|0;ZHa(b,a);return b|0}function nSa(a){a=a|0;var b=0;b=zr(a,28)|0;pIa(b,a);return b|0}function oSa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return fc[a&63](b|0,c|0,d|0,e|0)|0}function pSa(a){a=a|0;a=nbb(a|0)|0;if(!a)return;else Baa(a,121945)}function qSa(a){a=a|0;if((f[a>>2]|0)==2)return a|0;else Ca(60604,53386,206,60635);return 0}function rSa(){hN(131080,K8(135200)|0);return}function sSa(){hN(131088,K8(135208)|0);return}function tSa(a){a=a|0;UJa(a);return}function uSa(a){a=a|0;var b=0;b=f[a>>2]|0;if(b|0){f[a+4>>2]=b;ubb(b)}return}function vSa(a,b,c){a=a|0;b=b|0;c=c|0;qc[f[(f[c>>2]|0)+24>>2]&255](a,c,b);return}function wSa(){var a=0;a=zr(132756,24)|0;Cpa(a);return a|0}function xSa(a,b,c){a=a|0;b=b|0;c=c|0;U0a(a,b);f[a+4>>2]=c;return}function ySa(a){a=a|0;a=zr(a,8)|0;c2a(a);return a|0}function zSa(a){a=a|0;lXa(a);b[a+32>>0]=0;return}function ASa(){hN(131064,K8(135192)|0);return}function BSa(){hN(131056,K8(135184)|0);return}function CSa(a){a=a|0;cXa(a+184|0);rOa(a);return}function DSa(){var a=0;a=n8(180)|0;gH(a|0,0,180)|0;uV(a);return a|0}function ESa(a){a=a|0;pJa(a);f[a>>2]=44260;return}function FSa(a,b){a=a|0;b=b|0;return E_(0,a,b)|0}function GSa(a){a=a|0;a=zr(a,20)|0;tLa(a);return a|0}function HSa(a){a=a|0;a=zr(a,28)|0;vAa(a);return a|0}function ISa(a,b){a=a|0;b=b|0;return OV(a,b)|0}function JSa(a,b){a=a|0;b=b|0;w4(a,b+16|0);return}function KSa(a,b){a=a|0;b=b|0;w4(a,b+12|0);return}function LSa(a){a=a|0;return 31960}function MSa(){var a=0;a=n8(204)|0;gH(a|0,0,204)|0;mU(a);return a|0}function NSa(a){a=a|0;a=n8(204)|0;gH(a|0,0,204)|0;mU(a);return a|0}function OSa(a){a=a|0;return (QRa(a,1)|0)!=0|0}function PSa(a){a=a|0;b[a+27>>0]=1;if(b[a+25>>0]|0)b[a+26>>0]=1;return}function QSa(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=f[24688+(b<<24>>24<<2)>>2]&255;return b|0}function RSa(a){a=a|0;return 32720}function SSa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=2;a=a+8|0;f[a>>2]=b;f[a+4>>2]=c;return}function TSa(a){a=a|0;GJa(a);f[a>>2]=43736;return}function USa(a){a=a|0;HJa(a);f[a>>2]=45068;return}function VSa(a){a=a|0;var b=0;b=n8(48)|0;TKa(b,f[a+44>>2]|0);return b|0}function WSa(a,b){a=a|0;b=b|0;return (Hr(a,b)|0)*5|0}function XSa(a){a=a|0;f[a>>2]=42176;_Ia(a+20|0);return}function YSa(a){a=a|0;var b=0;b=a+140|0;a=f[b>>2]|0;f[b>>2]=a+1;return a|0}function ZSa(a){a=a|0;if(!a)a=0;else a=(f[a+4>>2]|0)==5;return a|0}function _Sa(a,b){a=a|0;b=b|0;b=a+(b<<2)|0;f[b>>2]=(f[b>>2]|0)+1;return}function $Sa(a,b){a=a|0;b=b|0;return (a+4096|0)>>>0>=b>>>0&a>>>0<=b>>>0|0}function aTa(){A8a();Y7a();U7a();T7a();return}function bTa(a){a=a|0;QYa(a+4|0);return}function cTa(a){a=a|0;RJa(a);f[a>>2]=43576;return}function dTa(a){a=a|0;Ev(a,0)|0;return}function eTa(a){a=a|0;a=zr(a,16)|0;SUa(a);return a|0}function fTa(a){a=a|0;a=zr(a,12)|0;TUa(a);return a|0}function gTa(a){a=a|0;a=zr(a,28)|0;VAa(a);return a|0}function hTa(a){a=a|0;var b=0;b=a;while(1)if(!(f[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function iTa(a,b){a=a|0;b=b|0;return (b|0)==(a|0)|0}function jTa(a){a=a|0;if((b[a+8+3>>0]|0)<0)ubb(f[a>>2]|0);return}function kTa(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function lTa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (a|0)!=(c|0)|(b|0)!=(d|0)|0}function mTa(a,c){a=a|0;c=c|0;b[a>>0]=1;f[a+4>>2]=c;return}function nTa(){var a=0;a=n8(180)|0;gH(a|0,0,180)|0;sV(a);return a|0}function oTa(a){a=a|0;tPa(a,117212)|0;return}function pTa(a){a=a|0;Ev(a,11)|0;return}function qTa(a,b){a=a|0;b=b|0;f[a+40>>2]=b;return}function rTa(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;$(12);return 0}function sTa(){hN(131208,K8(135128)|0);return}function tTa(){hN(131200,K8(135120)|0);return}function uTa(){hN(131192,K8(135112)|0);return}function vTa(){hN(131184,K8(135104)|0);return}function wTa(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=f[26992+((b&255)<<2)>>2]&255;return b|0}function xTa(a){a=a|0;if(!a)return;else Ca(113821,113849,399,113886)}function yTa(a,b){a=a|0;b=b|0;po(a,b);return}function zTa(a){a=a|0;bKa(a);f[a>>2]=42856;return}function ATa(a){a=a|0;a=zr(a,16)|0;dZa(a);return a|0}function BTa(a){a=a|0;a=zr(a,12)|0;tZa(a);return a|0}function CTa(a){a=a|0;eca(a+40|0);return}function DTa(a){a=a|0;if((a|0)==2)Ca(107354,106510,448,107391);else return}function ETa(a){a=a|0;if((a|0)==2)Ca(107406,106510,443,107443);else return}function FTa(a,b){a=a|0;b=b|0;a=a+(b<<2)|0;f[a>>2]=(f[a>>2]|0)+1;return}function GTa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;rc[a&255](b|0,c|0,d|0,e|0)}function HTa(a){a=a|0;if((b[a+11>>0]|0)<0)ubb(f[a>>2]|0);return}function ITa(a){a=a|0;var b=0;b=n8(48)|0;YLa(b,f[a+44>>2]|0);return b|0}function JTa(a,c){a=a|0;c=c|0;kya(a);f[a>>2]=42696;b[a+16>>0]=c&1;return}function KTa(a){a=a|0;tKa(a);f[a>>2]=44588;return}function LTa(a){a=a|0;I_a(a+16|0);GVa(a);return}function MTa(a){a=a|0;ULa(a);return}function NTa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=c;f[a+4>>2]=b;return}function OTa(a){a=a|0;return 33376}function PTa(){var a=0;a=zr(132756,24)|0;Esa(a);return a|0}function QTa(){var a=0;a=n8(132)|0;gH(a|0,0,132)|0;Fha(a);return a|0}function RTa(a){a=a|0;sXa(a+4|0);return}function STa(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)fia(a|0,b|0,c|0)|0;return a|0}function TTa(a,b){a=a|0;b=b|0;return uqa(a,K8(b)|0)|0}function UTa(a){a=a|0;if(!(Bbb(a)|0))a=1;else a=Fab(f[a>>2]|0)|0;return a|0}function VTa(a,b){a=a|0;b=b|0;yCa(134176,b)|0;return a|0}function WTa(a){a=a|0;EKa(a);f[a>>2]=44140;return}function XTa(a){a=a|0;a=zr(a,20)|0;CZa(a);return a|0}function YTa(a){a=a|0;a=zr(a,12)|0;u6a(a);return a|0}function ZTa(a){a=a|0;a=zr(a,20)|0;EZa(a);return a|0}function _Ta(){Dbb();Dbb();Dbb();Dbb();return}function $Ta(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Iu(a|0,b|0,c|0)|0;return a|0}function aUa(){var a=0;a=zr(132756,16)|0;a2a(a);return a|0}function bUa(a){a=a|0;return ORa((LRa(a)|0)+8|0)|0}function cUa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=f[b>>2];f[a+4>>2]=c;return}function dUa(a){a=a|0;tPa(a,93575)|0;return}function eUa(a){a=a|0;return eZa(a)|0}function fUa(a){a=a|0;if(!a)return;else Ca(90711,90732,90,113886)}function gUa(a,b){a=a|0;b=b|0;C8(a,0,b);return}function hUa(a,b){a=a|0;b=b|0;GXa(a,b,(f[b+4>>2]|0)-(f[b>>2]|0)>>2);return}function iUa(a){a=a|0;return ZCa(a,m6(a)|0)|0}function jUa(a){a=a|0;CYa(a);f[a+8>>2]=0;f[a+4>>2]=5;return}function kUa(){var a=0;a=n8(20)|0;JTa(a,1);return a|0}function lUa(a,b){a=a|0;b=b|0;return Hr(a,b)|0}function mUa(a){a=a|0;if(!a)a=0;else a=f[a+4>>2]|0;return a|0}function nUa(a){a=a|0;if(!a)return 0;else return ((f[a+16>>2]|0)==1?a:0)|0;return 0}function oUa(a){a=a|0;return NKa(f[a>>2]|0,f[a+4>>2]|0,1)|0}function pUa(a){a=a|0;a=zr(a,16)|0;RZa(a);return a|0}function qUa(a){a=a|0;a=zr(a,36)|0;H6a(a);return a|0}function rUa(a){a=a|0;a=zr(a,20)|0;j0a(a);return a|0}function sUa(a){a=a|0;f[a>>2]=49820;HTa(a+16|0);return}function tUa(a){a=a|0;f[a>>2]=49780;HTa(a+12|0);return}function uUa(){hN(131120,K8(134920)|0);return}function vUa(){hN(131096,K8(134896)|0);return}function wUa(){hN(131320,K8(135176)|0);return}function xUa(){hN(131312,K8(135168)|0);return}function yUa(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;return}function zUa(a){a=a|0;M9(a);return}function AUa(a){a=a|0;f[a>>2]=40860;uSa(a+24|0);GVa(a);return}function BUa(a,b){a=a|0;b=b|0;return xka(f[a+20>>2]|0,b)|0}function CUa(a){a=a|0;tPa(a,93566)|0;return}function DUa(a){a=a|0;var c=0;c=n8(72)|0;Tga(c,(b[a+44>>0]|0)!=0);return c|0}function EUa(){hN(131024,K8(134872)|0);return}function FUa(){hN(131016,K8(134864)|0);return}function GUa(a,b){a=a|0;b=b|0;GXa(a,b,f[b+4>>2]|0);return}function HUa(a){a=a|0;return (f[a+64>>2]|0)==((f[a+4>>2]|0)-(f[a>>2]|0)>>2|0)|0}function IUa(a){a=a|0;a=zr(a,16)|0;HVa(a);return a|0}function JUa(){var a=0;f[32767]=0;f[32766]=49660;a=fOa()|0;f[32768]=a;return}function KUa(){var a=0;a=n8(152)|0;gH(a|0,0,152)|0;UH(a);return a|0}function LUa(a,b){a=a|0;b=b|0;Nq(a,b);return}function MUa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=b;f[a+8>>2]=0;return}function NUa(a){a=a|0;if(!a)return 0;else return ((f[a+16>>2]|0)==0?a:0)|0;return 0}function OUa(a){a=a|0;if(a|0)oc[f[(f[a>>2]|0)+4>>2]&1023](a);return}function PUa(){hN(131048,K8(134912)|0);return}function QUa(){hN(131032,K8(134880)|0);return}function RUa(){var a=0;a=GOa()|0;gVa(135224,f[a>>2]|0);return}function SUa(a){a=a|0;KYa(a);tab(a+8|0);return}function TUa(a){a=a|0;LYa(a);tab(a+8|0);return}function UUa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];return}function VUa(a,b){a=a|0;b=b|0;return EJa(a,b)|0}function WUa(a,c){a=a|0;c=c|0;f[a>>2]=c;b[a+4>>0]=b[c>>0]|0;return}function XUa(){f[32811]=0;f[32810]=49472;return}function YUa(){f[32809]=0;f[32808]=49444;return}function ZUa(){f[32807]=0;f[32806]=49416;return}function _Ua(){f[32805]=0;f[32804]=49388;return}function $Ua(a,b){a=a|0;b=+b;y7(a);f[a>>2]=1;p[a+8>>3]=b;return a|0}function aVa(a){a=a|0;My(f[a+4>>2]|0,f[a+8>>2]|0);return}function bVa(a,c){a=a|0;c=c|0;if((c+-1|0)>>>0<2)b[a+52>>0]=1;return}function cVa(a){a=a|0;if(!a)return 0;else return ((f[a+16>>2]|0)==2?a:0)|0;return 0}function dVa(a){a=a|0;$$(a);return}function eVa(a,b){a=a|0;b=b|0;f[a>>2]=b;f[a+4>>2]=f[b>>2];return}function fVa(a){a=a|0;a=zr(a,20)|0;f8a(a);return a|0}function gVa(a,b){a=a|0;b=b|0;f[a>>2]=b;a=b+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function hVa(){f[32795]=0;f[32794]=47808;return}function iVa(){f[32793]=0;f[32792]=47756;return}function jVa(){f[32791]=0;f[32790]=47692;return}function kVa(){f[32789]=0;f[32788]=47628;return}function lVa(a){a=a|0;return $1a(f[a+140>>2]|0,f[a+144>>2]|0)|0}function mVa(a){a=a|0;hRa(a);ubb(a);return}function nVa(a){a=a|0;var b=0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function oVa(){var a=0;a=n8(196)|0;gH(a|0,0,196)|0;nEa(a);return a|0}function pVa(a){a=a|0;__a(a);return}function qVa(a,b){a=a|0;b=b|0;return ((f[a+4>>2]|0)-(f[a>>2]|0)|0)>>>0>b>>>0|0}function rVa(a,b){a=a|0;b=b|0;ro(a,b);return}function sVa(a){a=a|0;xYa(a);Kab(a+12|0);return}function tVa(a){a=a|0;bSa(a+8|0);ubb(a);return}function uVa(a,b){a=a|0;b=b|0;a=sNa(a)|0;return (sNa(b)|0)+a|0}function vVa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hb()}function wVa(a,b){a=a|0;b=b|0;Qq(a,b);return}function xVa(a){a=a|0;uSa(a+24|0);I_a(a);return}function yVa(a){a=a|0;if(!a)a=0;else a=(sNa(a)|0)==1;return a|0}function zVa(a,b){a=a|0;b=b|0;if(b>>>0<128)b=f[26992+(b<<2)>>2]|0;return b|0}function AVa(a,b){a=a|0;b=b|0;if(b>>>0<128)b=f[24688+(b<<2)>>2]|0;return b|0}function BVa(a,b){a=a|0;b=b|0;f[a>>2]=b;return b|0}function CVa(a){a=a|0;IWa(a);return}function DVa(){var a=0;a=n8(204)|0;gH(a|0,0,204)|0;lna(a);return a|0}function EVa(a){a=a|0;rOa(a);ubb(a);return}function FVa(a,b){a=a|0;b=b|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2>>>0>b>>>0|0}function GVa(a){a=a|0;f[a>>2]=40084;HTa(a+4|0);return}function HVa(a){a=a|0;lZa(a);tab(a+8|0);return}function IVa(a,b){a=a|0;b=b|0;TYa(a);f[a+12>>2]=b;return}function JVa(a,b){a=a|0;b=b|0;f[a>>2]=50432;Gla(a+4|0,b);return}function KVa(a,b){a=a|0;b=b|0;return (E8((a|0)==0?135337:a,(b|0)==0?135337:b)|0)<0|0}function LVa(a,b){a=a|0;b=b|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2>>>0<=b>>>0|0}function MVa(){var a=0;a=n8(20)|0;JTa(a,0);return a|0}function NVa(){var a=0;a=n8(276)|0;gH(a|0,0,276)|0;tba(a);return a|0}function OVa(a){a=a|0;vYa(a);Kab(a+8|0);return}function PVa(a){a=a|0;wYa(a);Kab(a+8|0);return}function QVa(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;$(11);return 0}function RVa(a){a=a|0;cXa(a);ubb(a);return}function SVa(a){a=a|0;dXa(a);ubb(a);return}function TVa(a){a=a|0;DU(a);ubb(a);return}function UVa(a){a=a|0;var b=0;b=T5a(a)|0;return (b?0:a)|0}function VVa(a){a=a|0;return jDa(a,K8(135184)|0)|0}function WVa(a){a=a|0;yYa(a);Kab(a+16|0);return}function XVa(a){a=a|0;TLa(a);f[a>>2]=40700;return}function YVa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;b[a+8>>0]=1;b[a+9>>0]=0;return}function ZVa(a){a=a|0;a=zr(a,24)|0;uWa(a);return a|0}function _Va(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec[a&127](b|0,c|0,d|0)|0}function $Va(a){a=a|0;if(!a)a=0;else a=(ax(a,39568)|0)!=0&1;return a|0}function aWa(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0>>0|0}function bWa(a,b){a=a|0;b=b|0;f[a>>2]=50412;Gla(a+4|0,b);return}function cWa(a){a=a|0;a=n8(196)|0;oYa(a);return a|0}function dWa(a){a=a|0;NQa(a+44|0);return}function eWa(a){a=a|0;b[a+27>>0]=1;b[a+77>>0]=1;b[a+79>>0]=1;return}function fWa(a){a=a|0;uSa(a+32|0);I_a(a);return}function gWa(a){a=a|0;var b=0;b=f[33723]|0;f[33723]=b+1;f[a+4>>2]=b+1;return}function hWa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=b;return}function iWa(a){a=a|0;if((f[(f[a+12>>2]|0)+4>>2]|0)==5)f[a+4>>2]=5;return}function jWa(a){a=a|0;f[a+64>>2]=0;return}function kWa(a){a=a|0;a=zr(a,28)|0;nRa(a);return a|0}function lWa(a){a=a|0;a=zr(a,12)|0;k0a(a);return a|0}function mWa(a){a=a|0;NQa(a+8|0);return}function nWa(a,b){a=a|0;b=b|0;QG(a,b);return}function oWa(a){a=a|0;b1a(a+8|0);return}function pWa(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)C4(a,b,c)|0;return}function qWa(a){a=a|0;A_a(a);return a|0}function rWa(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)NEa(a,c,b)|0;return}function sWa(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)mya(a,b,c)|0;return}function tWa(a,b){a=a|0;b=b|0;f[a+16>>2]=b;return}function uWa(a){a=a|0;HYa(a);yXa(a+8|0);return}function vWa(a,b){a=a|0;b=b|0;VA(a,b);return}function wWa(a){a=a|0;pRa(a,0);f[a>>2]=42236;f[a+20>>2]=0;return}function xWa(a){a=a|0;a=zr(a,8)|0;v0a(a);return a|0}function yWa(){y8a();W7a();n8a();return}function zWa(a,c){a=a|0;c=c|0;a=PE(a,c)|0;return ((b[a>>0]|0)==(c&255)<<24>>24?a:0)|0}function AWa(a){a=a|0;HCa(a+4|0);return}function BWa(a){a=a|0;hWa(a,2147483647);return}function CWa(a){a=a|0;return 34696}function DWa(a){a=a|0;return 34664}function EWa(a){a=a|0;return 34632}function FWa(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=c;b[a+4>>0]=d&1;return}function GWa(a,b){a=a|0;b=b|0;f[a+52>>2]=f[a+48>>2];return}function HWa(a){a=a|0;TDa(a+4|0);return}function IWa(a){a=a|0;a=a+24|0;f[a>>2]=(f[a>>2]|0)+1;return}function JWa(a){a=a|0;if((f[(f[a+24>>2]|0)+4>>2]|0)==5)f[a+4>>2]=5;return}function KWa(a){a=a|0;a=(f[a+4>>2]|0)-(f[a>>2]|0)>>2;return (a>>>0>1?a:1)|0}function LWa(a,b,c){a=a|0;b=b|0;c=c|0;if(!(f[a>>2]&32))RB(b,c,a)|0;return}function MWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ca(a|0,b|0,c|0,d|0)}function NWa(a){a=a|0;kya(a);f[a>>2]=45148;tab(a+16|0);return}function OWa(a){a=a|0;zYa(a);f[a+4>>2]=5;return}function PWa(a){a=a|0;if((b[a>>0]|0)==1)a=0;else{b[a>>0]=1;a=1}return a|0}function QWa(a){a=a|0;f[a>>2]=47064;JCa(a+4|0);return}function RWa(a){a=a|0;NQa(a);return}function SWa(a,b){a=a|0;b=b|0;Pa(Ea(1)|0,34968,0)}function TWa(a,b){a=a|0;b=b|0;return f[a+(b<<3)>>2]|0}function UWa(a,b){a=a|0;b=b|0;return (f[a+(b>>>5<<2)>>2]&1<<(b&31)|0)!=0|0}function VWa(a){a=a|0;return ZYa(a)|0}function WWa(){var a=0;a=Ea(4)|0;pab(a);Pa(a|0,39424,416)}function XWa(a){a=a|0;bSa(a+8|0);return}function YWa(a){a=a|0;f[a>>2]=47e3;JCa(a+4|0);return}function ZWa(a){a=a|0;var b=0;b=$1a(a,-1)|0;return (b?0:a)|0}function _Wa(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function $Wa(a,b){a=a|0;b=b|0;f[a+20>>2]=b;return}function aXa(a){a=a|0;OWa(a);return a|0}function bXa(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;$(21)}function cXa(a){a=a|0;m1a(a+4|0);return}function dXa(a){a=a|0;m1a(a+8|0);return}function eXa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qc[a&255](b|0,c|0,d|0)}function fXa(a){a=a|0;return Lab(f[a+4>>2]|0)|0}function gXa(a){a=a|0;LTa(a);ubb(a);return}function hXa(a,b){a=a|0;b=b|0;yXa(a);f[a+16>>2]=f[b>>2];return}function iXa(a){a=a|0;a=n8(88)|0;nja(a);return a|0}function jXa(a,b){a=a|0;b=b|0;f[a>>2]=2;f[a+8>>2]=b;return}function kXa(a){a=+a;return +a}function lXa(a){a=a|0;NJa(a);return}function mXa(){C8a();Z7a();V7a();return}function nXa(a){a=a|0;lXa(a);f[a+24>>2]=0;return}function oXa(a){a=a|0;f[a+4>>2]=(f[(f[a+8>>2]|0)+4>>2]|0)==5?5:0;return}function pXa(a){a=a|0;a=n8(56)|0;Bza(a);return a|0}function qXa(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function rXa(a,b){a=a|0;b=b|0;rb(23,b|0)|0;return}function sXa(a){a=a|0;zQa(a);return}function tXa(a){a=a|0;if(!a)a=1;else a=(b[a>>0]|0)==0;return a|0}function uXa(a){a=a|0;a=n8(132)|0;Fha(a);return a|0}function vXa(){X1a();f[33804]=131336;return}function wXa(a,b){a=a|0;b=b|0;return $1a(a,b)|0}function xXa(a,b){a=a|0;b=b|0;Fia(a);return}function yXa(a){a=a|0;f[a>>2]=0;a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;return}function zXa(a){a=a|0;f[a>>2]=0;f[a+8>>2]=0;f[a+16>>2]=0;return}function AXa(a,b){a=a|0;b=b|0;f4a(a,b);return}function BXa(a){a=a|0;vM(a);return}function CXa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(10);return 0}function DXa(){var a=0;a=n8(24)|0;BLa(a,4);return a|0}function EXa(a){a=a|0;hca(a+12|0);return}function FXa(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function GXa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=c;return}function HXa(a){a=a|0;mZa(a);f[a+16>>2]=0;return}function IXa(a){a=a|0;a=n8(68)|0;tia(a);return a|0}function JXa(a){a=a|0;a=n8(44)|0;eSa(a);return a|0}function KXa(a){a=a|0;M0a(a);return}function LXa(a){a=a|0;LG(a);ubb(a);return}function MXa(a){a=a|0;MG(a);ubb(a);return}function NXa(a){a=a|0;NG(a);ubb(a);return}function OXa(a){a=a|0;OG(a);ubb(a);return}function PXa(a){a=a|0;PG(a);ubb(a);return}function QXa(a){a=a|0;uv(a);return}function RXa(a){a=a|0;f[a+4>>2]=2;f[a+8>>2]=1;return}function SXa(a){a=a|0;f[a>>2]=42216;TDa(a+24|0);return}function TXa(a,b){a=a|0;b=b|0;if(!a)a=0;else a=YF(a,b)|0;return a|0}function UXa(a,c){a=a|0;c=c|0;c=a+(OF(a,c)|0)|0;return ((b[c>>0]|0)==0?0:c)|0}function VXa(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function WXa(a){a=a|0;rt(K$a(a)|0);return}function XXa(a){a=a|0;a=(vF(a)|0)+4|0;return Bbb(f[a>>2]|0)|0}function YXa(a){a=a|0;hca(a+16|0);return}function ZXa(a,b){a=a|0;b=b|0;gVa(a,f[b+28>>2]|0);return}function _Xa(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function $Xa(a,b){a=a|0;b=b|0;SU(a,b);return}function aYa(a,b){a=a|0;b=b|0;return Ev(a,b)|0}function bYa(a,b){a=a|0;b=b|0;return OHa(a,b)|0}function cYa(a){a=a|0;a=n8(56)|0;$Fa(a);return a|0}function dYa(a,b){a=a|0;b=b|0;NS(a,b);return}function eYa(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function fYa(a){a=a|0;QWa(a);ubb(a);return}function gYa(a){a=a|0;YWa(a);ubb(a);return}function hYa(a){a=a|0;kya(a);f[a>>2]=41712;f[a+16>>2]=134008;return}function iYa(a){a=a|0;k0a(a);return a|0}function jYa(a){a=a|0;a=n8(152)|0;UH(a);return a|0}function kYa(a){a=a|0;HTa(a);return}function lYa(a){a=a|0;Jza(a);return}function mYa(a,b){a=a|0;b=b|0;return (gB(a,b)|0)^1|0}function nYa(){var a=0;a=n8(72)|0;Tga(a,1);return a|0}function oYa(a){a=a|0;nEa(a);f[a>>2]=45988;return}function pYa(a,b){a=a|0;b=b|0;return xGa(a,b)|0}function qYa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;$(9);return 0}function rYa(a,b){a=a|0;b=b|0;var c=0;c=NZa(a|0)|0;return ((b|0)==0?a:c)|0}function sYa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return fk(a,b,c,d,0)|0}function tYa(a,b){a=a|0;b=b|0;f[a>>2]=42404;f[a+4>>2]=b;return}function uYa(){var a=0;a=n8(20)|0;Z$a(a);return a|0}function vYa(a){a=a|0;pZa(a,27);return}function wYa(a){a=a|0;pZa(a,26);return}function xYa(a){a=a|0;pZa(a,25);return}function yYa(a){a=a|0;pZa(a,24);return}function zYa(a){a=a|0;pZa(a,23);return}function AYa(a){a=a|0;pZa(a,22);return}function BYa(a){a=a|0;pZa(a,21);return}function CYa(a){a=a|0;pZa(a,20);return}function DYa(a){a=a|0;pZa(a,19);return}function EYa(a){a=a|0;pZa(a,18);return}function FYa(a){a=a|0;pZa(a,17);return}function GYa(a){a=a|0;pZa(a,16);return}function HYa(a){a=a|0;pZa(a,15);return}function IYa(a){a=a|0;pZa(a,14);return}function JYa(a){a=a|0;pZa(a,13);return}function KYa(a){a=a|0;pZa(a,12);return}function LYa(a){a=a|0;pZa(a,11);return}function MYa(a){a=a|0;pZa(a,10);return}function NYa(a){a=a|0;a=n8(84)|0;Rua(a);return a|0}function OYa(a){a=a|0;a=n8(44)|0;TSa(a);return a|0}function PYa(a){a=a|0;a=n8(44)|0;USa(a);return a|0}function QYa(a){a=a|0;V7(a+4|0);return}function RYa(a){a=a|0;a=a+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function SYa(a){a=+a;return a<=2147483647.0&((_ab(a)|0)&a>=-2147483648.0)|0}function TYa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function UYa(a,b){a=a|0;b=b|0;return (sEa(a,b)|0)^1|0}function VYa(a){a=a|0;ZMa(a);return}function WYa(a){a=a|0;f[a>>2]=50432;Vwa(a+4|0);return}function XYa(){var a=0;a=n8(48)|0;QNa(a,1);return a|0}function YYa(a){a=a|0;a=n8(196)|0;nEa(a);return a|0}function ZYa(a){a=a|0;return ((a|0)==1?32:(a|0)==2?64:-1)|0}function _Ya(a){a=a|0;return a+20|0}function $Ya(a){a=a|0;if(!a)a=1;else a=(f[a>>2]|0)==0&1;return a|0}function aZa(a){a=a|0;return Fr(a)|0}function bZa(a){a=a|0;yIa(a);ubb(a);return}function cZa(){f[32759]=0;f[32758]=49728;b[131044]=0;f[32760]=25968;return}function dZa(a){a=a|0;MYa(a);return}function eZa(a){a=a|0;v0a(a);return a|0}function fZa(a){a=a|0;pZa(a,9);return}function gZa(a){a=a|0;pZa(a,8);return}function hZa(a){a=a|0;pZa(a,7);return}function iZa(a){a=a|0;pZa(a,6);return}function jZa(a){a=a|0;pZa(a,5);return}function kZa(a){a=a|0;pZa(a,4);return}function lZa(a){a=a|0;pZa(a,3);return}function mZa(a){a=a|0;pZa(a,2);return}function nZa(a){a=a|0;pZa(a,1);return}function oZa(a){a=a|0;a=n8(44)|0;cTa(a);return a|0}function pZa(a,b){a=a|0;b=b|0;f[a>>2]=b;f[a+4>>2]=0;return}function qZa(a,b,c){a=a|0;b=b|0;c=c|0;c=DZ(a,b,c,0,-2147483648)|0;return c|0}function rZa(a){a=a|0;f[a>>2]=50412;Vwa(a+4|0);return}function sZa(a){a=a|0;return (f[a+8>>2]|0)==(f[a+4>>2]|0)|0}function tZa(a){a=a|0;fZa(a);return}function uZa(a){a=a|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2|0}function vZa(a){a=a|0;zm(134176,a)|0;return}function wZa(a){a=a|0;a=n8(204)|0;lna(a);return a|0}function xZa(){f[32771]=0;f[32770]=50040;return}function yZa(){f[32773]=0;f[32772]=50088;return}function zZa(a){a=a|0;return G6a(a)|0}function AZa(a,b){a=a|0;b=b|0;return a>>>(b&31)|a<<(0-b&31)|0}function BZa(a){a=a|0;return (f[a+24>>2]|0)-(f[a+20>>2]|0)>>2|0}function CZa(a){a=a|0;EYa(a);return}function DZa(a,b){a=a|0;b=b|0;f[a+116>>2]=f[b>>2];return}function EZa(a){a=a|0;FYa(a);return}function FZa(a){a=a|0;iY(a);ubb(a);return}function GZa(a){a=a|0;yUa(a);return}function HZa(a){a=a|0;a=n8(68)|0;Rra(a);return a|0}function IZa(a){a=a|0;a=n8(88)|0;Daa(a);return a|0}function JZa(a){a=a|0;a=n8(56)|0;PHa(a);return a|0}function KZa(a,b,c){a=a|0;b=b|0;c=c|0;return dc[a&255](b|0,c|0)|0}function LZa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(20)}function MZa(a,b,c){a=a|0;b=b|0;c=c|0;return ot(0,a,b,(c|0)==0?133824:c)|0}function NZa(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function OZa(){JUa();return}function PZa(){f[32765]=0;f[32764]=49992;return}function QZa(a,b){a=a|0;b=b|0;return a<<(b&31)|a>>>(0-b&31)|0}function RZa(a){a=a|0;GYa(a);return}function SZa(a){a=a|0;b[a+53>>0]=1;return}function TZa(a){a=a|0;return a>>>0<1602224128|(a|0)<0&a>>>0<3212836864|0}function UZa(a){a=a|0;return a>>>0<1593835520|(a|0)<0&a>>>0<3741319169|0}function VZa(a){a=a|0;return a>>>0<1333788672|(a|0)<0&a>>>0<3212836864|0}function WZa(a){a=a|0;return a>>>0<1325400064|(a|0)<0&a>>>0<3472883713|0}function XZa(a){a=a|0;a=n8(276)|0;tba(a);return a|0}function YZa(a){a=a|0;return ((f[a>>2]|0)==8?a:0)|0}function ZZa(a){a=a|0;return ((f[a>>2]|0)==23?a:0)|0}function _Za(){var a=0;a=n8(60)|0;gxa(a,1);return a|0}function $Za(){var a=0;a=n8(20)|0;H0a(a);return a|0}function a_a(a,c){a=a|0;c=c|0;b[a+73>>0]=c&1;return}function b_a(a){a=a|0;gDa(a);return}function c_a(a){a=a|0;Epa(a);return}function d_a(a){a=a|0;return ySa(a)|0}function e_a(a,b,c){a=a|0;b=b|0;c=c|0;return}function f_a(a){a=a|0;kya(a);f[a>>2]=45388;return}function g_a(){var a=0;a=n8(72)|0;Tga(a,0);return a|0}function h_a(a){a=a|0;b[a+104>>0]=0;return}function i_a(a){a=a|0;a=n8(116)|0;Nxa(a);return a|0}function j_a(a){a=a|0;a=n8(120)|0;B_(a);return a|0}function k_a(a){a=a|0;return ((f[a>>2]|0)==7?a:0)|0}function l_a(){return 357913941}function m_a(a,b){a=a|0;b=b|0;return (dN(a,b)|0)^1|0}function n_a(a){a=a|0;return g4a(a)|0}function o_a(a){a=a|0;f[a+4>>2]=f[(f[a+12>>2]|0)+4>>2];return}function p_a(){var a=0;a=n8(20)|0;P0a(a);return a|0}function q_a(a){a=a|0;Bna(a);ubb(a);return}function r_a(a){a=a|0;f[a>>2]=43524;return}function s_a(a){a=a|0;a=n8(44)|0;WTa(a);return a|0}function t_a(a,c){a=a|0;c=c|0;b[a+22>>0]=c&1;return}function u_a(a){a=a|0;return ((f[a>>2]|0)==12?a:0)|0}function v_a(a){a=a|0;return ((f[a>>2]|0)==11?a:0)|0}function w_a(a){a=a|0;return 37808}function x_a(a,b){a=a|0;b=b|0;return (E8(a,b)|0)==0|0}function y_a(a){a=a|0;return (a|1|0)==5|0}function z_a(a){a=a|0;return Wua(+(a>>>0))|0}function A_a(a){a=a|0;f[a+144>>2]=f[a+140>>2];return}function B_a(a){a=a|0;uSa(a+12|0);return}function C_a(a){a=a|0;return (a+-25|0)>>>0<25|0}function D_a(a,b){a=a|0;b=b|0;hb()}function E_a(a){a=a|0;return ((f[a>>2]|0)==10?a:0)|0}function F_a(a,b,c){a=a|0;b=b|0;c=c|0;c=DZ(a,b,c,-1,-1)|0;return c|0}function G_a(a){a=a|0;if(a>>>0>4294963200){f[33448]=0-a;a=-1}return a|0}function H_a(a){a=a|0;return (a+-48&255)<10|(UPa(a)|0)|0}function I_a(a){a=a|0;uSa(a+4|0);return}function J_a(){yCa(134176,54142)|0;return}function K_a(a){a=a|0;BJa(a);ubb(a);return}function L_a(){var a=0;a=n8(48)|0;QNa(a,0);return a|0}function M_a(a){a=a|0;uSa(a+8|0);return}function N_a(a){a=a|0;return ((f[a>>2]|0)==9?a:0)|0}function O_a(){f[32803]=0;f[32802]=49332;return}function P_a(){f[32801]=0;f[32800]=49276;return}function Q_a(){f[32799]=0;f[32798]=49220;return}function R_a(){f[32797]=0;f[32796]=49164;return}function S_a(a){a=a|0;return 2}function T_a(a){a=a|0;lXa(a);return}function U_a(a){a=a|0;iWa(a);return}function V_a(a){a=a|0;IMa(a);return}function W_a(a){a=a|0;return ((f[a>>2]|0)==18?a:0)|0}function X_a(a){a=a|0;return ((f[a>>2]|0)==20?a:0)|0}function Y_a(a){a=a|0;return ((f[a>>2]|0)==17?a:0)|0}function Z_a(a){a=a|0;return (a+-48&255)<10|0}function __a(a){a=a|0;v0a(a);return}function $_a(a){a=a|0;wNa(a);ubb(a);return}function a$a(a){a=a|0;Pka(a);ubb(a);return}function b$a(){Ca(107090,106510,530,107131)}function c$a(a,b){a=a|0;b=b|0;return (0-b|0)!=(a|0)|0}function d$a(a){a=a|0;return ((f[a>>2]|0)==5?a:0)|0}function e$a(a){a=a|0;return ((f[a>>2]|0)==16?a:0)|0}function f$a(a){a=a|0;return ((f[a>>2]|0)==14?a:0)|0}function g$a(a){a=a|0;return ((f[a>>2]|0)==15?a:0)|0}function h$a(a){a=a|0;f[a+4>>2]=0;return}function i$a(a,c){a=a|0;c=c|0;b[a>>0]=c;return}function j$a(a){a=a|0;return zr(a,12)|0}function k$a(a,b,c){a=a|0;b=b|0;c=+c;return cc[a&1](b|0,+c)|0}function l$a(a){a=a|0;return (Bbb(a)|0)==0|0}function m$a(a,b){a=a|0;b=b|0;f[a>>2]=1;f[a+8>>2]=b;return}function n$a(a){a=a|0;return ((f[a>>2]|0)==4?a:0)|0}function o$a(a){a=a|0;return ((f[a>>2]|0)==1?a:0)|0}function p$a(a){a=a|0;return ((f[a>>2]|0)==13?a:0)|0}function q$a(a){a=a|0;return ((f[a>>2]|0)==19?a:0)|0}function r$a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(8);return 0}function s$a(a,b,c){a=a|0;b=b|0;c=c|0;c=F_a(a,b,c)|0;return c|0}function t$a(a,b,c){a=a|0;b=b|0;c=c|0;Pa(a|0,b|0,c|0)}function u$a(){if(!(b[130840]|0))PWa(130840)|0;return} -function ed(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=u;u=u+704|0;h=Z+680|0;d=Z+96|0;O=Z+48|0;U=Z+16|0;V=Z+664|0;W=Z+648|0;X=Z+632|0;Y=Z+616|0;i=Z+600|0;j=Z+584|0;k=Z+568|0;l=Z+552|0;m=Z+536|0;n=Z+520|0;o=Z+504|0;p=Z+488|0;q=Z+472|0;r=Z+456|0;s=Z+440|0;t=Z+424|0;v=Z+408|0;w=Z+392|0;x=Z+376|0;y=Z+360|0;z=Z+344|0;A=Z+328|0;B=Z+312|0;C=Z+296|0;D=Z+280|0;E=Z+264|0;F=Z+248|0;G=Z+232|0;H=Z+216|0;J=Z+200|0;K=Z+184|0;L=Z+168|0;M=Z+152|0;N=Z+136|0;P=Z+120|0;Q=Z+80|0;R=Z+64|0;S=Z+32|0;T=Z;e=c+12|0;mz(d,b,f[e>>2]|0);if(!(D0a(d)|0)?(f[O>>2]=f[d>>2],f[O+4>>2]=f[d+4>>2],f[O+8>>2]=f[d+8>>2],f[O+12>>2]=f[d+12>>2],g=c+16|0,mz(h,b,f[g>>2]|0),f[d>>2]=f[h>>2],f[d+4>>2]=f[h+4>>2],f[d+8>>2]=f[h+8>>2],f[d+12>>2]=f[h+12>>2],f[d+16>>2]=f[h+16>>2],!(D0a(d)|0)):0){f[U>>2]=f[d>>2];f[U+4>>2]=f[d+4>>2];f[U+8>>2]=f[d+8>>2];f[U+12>>2]=f[d+12>>2];d=f[(f[e>>2]|0)+4>>2]|0;if(o2a(d)|0?(f[O>>2]|0)!=(d|0):0)Ca(101344,101307,310,101416);d=f[(f[g>>2]|0)+4>>2]|0;if(o2a(d)|0?(f[U>>2]|0)!=(d|0):0)Ca(101428,101307,311,101416);a:do switch(f[c+8>>2]|0){case 63:case 50:case 25:case 0:{tT(V,O,U);f[h>>2]=f[V>>2];f[h+4>>2]=f[V+4>>2];f[h+8>>2]=f[V+8>>2];f[h+12>>2]=f[V+12>>2];rAa(a,h);break}case 64:case 51:case 26:case 1:{nT(W,O,U);f[h>>2]=f[W>>2];f[h+4>>2]=f[W+4>>2];f[h+8>>2]=f[W+8>>2];f[h+12>>2]=f[W+12>>2];rAa(a,h);break}case 65:case 52:case 27:case 2:{gT(X,O,U);f[h>>2]=f[X>>2];f[h+4>>2]=f[X+4>>2];f[h+8>>2]=f[X+8>>2];f[h+12>>2]=f[X+12>>2];rAa(a,h);break}case 3:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101503);if((Eia(O)|0)==-2147483648&(I|0)==-1?(X=Eia(U)|0,(X|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101518);v5(Y,O,U);f[h>>2]=f[Y>>2];f[h+4>>2]=f[Y+4>>2];f[h+8>>2]=f[Y+8>>2];f[h+12>>2]=f[Y+12>>2];rAa(a,h);break}case 4:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101537);R3(i,O,U);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];rAa(a,h);break}case 5:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101552);if((Eia(O)|0)==-2147483648&(I|0)==-1?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0){m$a(j,0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];rAa(a,h);break a}u5(k,O,U);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];f[h+12>>2]=f[k+12>>2];rAa(a,h);break}case 6:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101567);Q3(l,O,U);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];f[h+8>>2]=f[l+8>>2];f[h+12>>2]=f[l+12>>2];rAa(a,h);break}case 28:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101582);if((Eia(O)|0)==0&(I|0)==-2147483648?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101597);v5(m,O,U);f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];f[h+12>>2]=f[m+12>>2];rAa(a,h);break}case 29:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101616);R3(n,O,U);f[h>>2]=f[n>>2];f[h+4>>2]=f[n+4>>2];f[h+8>>2]=f[n+8>>2];f[h+12>>2]=f[n+12>>2];rAa(a,h);break}case 30:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101631);if((Eia(O)|0)==0&(I|0)==-2147483648?(Y=Eia(U)|0,(Y|0)==-1&(I|0)==-1):0){SSa(o,0,0);f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];f[h+12>>2]=f[o+12>>2];rAa(a,h);break a}u5(p,O,U);f[h>>2]=f[p>>2];f[h+4>>2]=f[p+4>>2];f[h+8>>2]=f[p+8>>2];f[h+12>>2]=f[p+12>>2];rAa(a,h);break}case 31:{if((Eia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101646);Q3(q,O,U);f[h>>2]=f[q>>2];f[h+4>>2]=f[q+4>>2];f[h+8>>2]=f[q+8>>2];f[h+12>>2]=f[q+12>>2];rAa(a,h);break}case 66:case 53:{rs(r,O,U);f[h>>2]=f[r>>2];f[h+4>>2]=f[r+4>>2];f[h+8>>2]=f[r+8>>2];f[h+12>>2]=f[r+12>>2];rAa(a,h);break}case 32:case 7:{qaa(s,O,U);f[h>>2]=f[s>>2];f[h+4>>2]=f[s+4>>2];f[h+8>>2]=f[s+8>>2];f[h+12>>2]=f[s+12>>2];rAa(a,h);break}case 33:case 8:{taa(t,O,U);f[h>>2]=f[t>>2];f[h+4>>2]=f[t+4>>2];f[h+8>>2]=f[t+8>>2];f[h+12>>2]=f[t+12>>2];rAa(a,h);break}case 34:case 9:{paa(v,O,U);f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];rAa(a,h);break}case 35:case 10:{B0(w,O,U);f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];rAa(a,h);break}case 36:case 11:{Y$(x,O,U);f[h>>2]=f[x>>2];f[h+4>>2]=f[x+4>>2];f[h+8>>2]=f[x+8>>2];f[h+12>>2]=f[x+12>>2];rAa(a,h);break}case 37:case 12:{r0(y,O,U);f[h>>2]=f[y>>2];f[h+4>>2]=f[y+4>>2];f[h+8>>2]=f[y+8>>2];f[h+12>>2]=f[y+12>>2];rAa(a,h);break}case 38:case 13:{M0(z,O,U);f[h>>2]=f[z>>2];f[h+4>>2]=f[z+4>>2];f[h+8>>2]=f[z+8>>2];f[h+12>>2]=f[z+12>>2];rAa(a,h);break}case 39:case 14:{H0(A,O,U);f[h>>2]=f[A>>2];f[h+4>>2]=f[A+4>>2];f[h+8>>2]=f[A+8>>2];f[h+12>>2]=f[A+12>>2];rAa(a,h);break}case 70:case 57:case 40:case 15:{eT(B,O,U);f[h>>2]=f[B>>2];f[h+4>>2]=f[B+4>>2];f[h+8>>2]=f[B+8>>2];f[h+12>>2]=f[B+12>>2];rAa(a,h);break}case 71:case 58:case 41:case 16:{dT(C,O,U);f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];f[h+12>>2]=f[C+12>>2];rAa(a,h);break}case 42:case 17:{f$(D,O,U);f[h>>2]=f[D>>2];f[h+4>>2]=f[D+4>>2];f[h+8>>2]=f[D+8>>2];f[h+12>>2]=f[D+12>>2];rAa(a,h);break}case 43:case 18:{j_(E,O,U);f[h>>2]=f[E>>2];f[h+4>>2]=f[E+4>>2];f[h+8>>2]=f[E+8>>2];f[h+12>>2]=f[E+12>>2];rAa(a,h);break}case 44:case 19:{Z_(F,O,U);f[h>>2]=f[F>>2];f[h+4>>2]=f[F+4>>2];f[h+8>>2]=f[F+8>>2];f[h+12>>2]=f[F+12>>2];rAa(a,h);break}case 45:case 20:{g_(G,O,U);f[h>>2]=f[G>>2];f[h+4>>2]=f[G+4>>2];f[h+8>>2]=f[G+8>>2];f[h+12>>2]=f[G+12>>2];rAa(a,h);break}case 46:case 21:{g$(H,O,U);f[h>>2]=f[H>>2];f[h+4>>2]=f[H+4>>2];f[h+8>>2]=f[H+8>>2];f[h+12>>2]=f[H+12>>2];rAa(a,h);break}case 47:case 22:{k_(J,O,U);f[h>>2]=f[J>>2];f[h+4>>2]=f[J+4>>2];f[h+8>>2]=f[J+8>>2];f[h+12>>2]=f[J+12>>2];rAa(a,h);break}case 48:case 23:{__(K,O,U);f[h>>2]=f[K>>2];f[h+4>>2]=f[K+4>>2];f[h+8>>2]=f[K+8>>2];f[h+12>>2]=f[K+12>>2];rAa(a,h);break}case 49:case 24:{h_(L,O,U);f[h>>2]=f[L>>2];f[h+4>>2]=f[L+4>>2];f[h+8>>2]=f[L+8>>2];f[h+12>>2]=f[L+12>>2];rAa(a,h);break}case 72:case 59:{tca(M,O,U);f[h>>2]=f[M>>2];f[h+4>>2]=f[M+4>>2];f[h+8>>2]=f[M+8>>2];f[h+12>>2]=f[M+12>>2];rAa(a,h);break}case 73:case 60:{ica(N,O,U);f[h>>2]=f[N>>2];f[h+4>>2]=f[N+4>>2];f[h+8>>2]=f[N+8>>2];f[h+12>>2]=f[N+12>>2];rAa(a,h);break}case 74:case 61:{uca(P,O,U);f[h>>2]=f[P>>2];f[h+4>>2]=f[P+4>>2];f[h+8>>2]=f[P+8>>2];f[h+12>>2]=f[P+12>>2];rAa(a,h);break}case 75:case 62:{jca(Q,O,U);f[h>>2]=f[Q>>2];f[h+4>>2]=f[Q+4>>2];f[h+8>>2]=f[Q+8>>2];f[h+12>>2]=f[Q+12>>2];rAa(a,h);break}case 67:case 54:{VT(R,O,U);f[h>>2]=f[R>>2];f[h+4>>2]=f[R+4>>2];f[h+8>>2]=f[R+8>>2];f[h+12>>2]=f[R+12>>2];rAa(a,h);break}case 68:case 55:{Jo(S,O,U);f[h>>2]=f[S>>2];f[h+4>>2]=f[S+4>>2];f[h+8>>2]=f[S+8>>2];f[h+12>>2]=f[S+12>>2];rAa(a,h);break}case 69:case 56:{Ko(T,O,U);f[h>>2]=f[T>>2];f[h+4>>2]=f[T+4>>2];f[h+8>>2]=f[T+8>>2];f[h+12>>2]=f[T+12>>2];rAa(a,h);break}default:hb()}while(0)}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=Z;return}function fd(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0.0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0;N=u;u=u+288|0;H=N+264|0;J=N;K=N+260|0;L=N+272|0;g=b[c>>0]|0;a:do if(g<<24>>24){z=a+4|0;A=a+100|0;B=a+108|0;C=a+8|0;D=J+10|0;E=J+33|0;F=J+46|0;G=J+94|0;y=H+4|0;k=c;v=0;c=0;i=0;j=g;g=0;b:while(1){c:do if(!(o6a(j&255)|0)){j=j<<24>>24==37;d:do if(j){o=k+1|0;l=b[o>>0]|0;e:do switch(l<<24>>24){case 37:break d;case 42:{x=0;k=k+2|0;break}default:{j=l&255;if(Uab(j)|0?(b[k+2>>0]|0)==36:0){x=jga(e,j+-48|0)|0;k=k+3|0;break e}k=(f[e>>2]|0)+(4-1)&~(4-1);x=f[k>>2]|0;f[e>>2]=k+4;k=o}}while(0);j=b[k>>0]|0;if(!(Uab(j&255)|0)){l=0;r=k;o=j}else{l=0;do{l=(l*10|0)+-48+(j&255)|0;k=k+1|0;j=b[k>>0]|0}while((Uab(j&255)|0)!=0);r=k;o=j}q=r+1|0;if(o<<24>>24==109){j=(x|0)!=0&1;i=0;k=q;r=r+2|0;o=b[q>>0]|0;g=0}else{j=0;k=r;r=q}switch(o<<24>>24){case 104:{w=(b[r>>0]|0)==104;o=w?-2:-1;k=w?k+2|0:r;break}case 108:{w=(b[r>>0]|0)==108;o=w?3:1;k=w?k+2|0:r;break}case 106:{o=3;k=r;break}case 116:case 122:{o=1;k=r;break}case 76:{o=2;k=r;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{o=0;break}default:{M=141;break b}}s=h[k>>0]|0;t=(s&47|0)==3;s=t?s|32:s;t=t?1:o;r=s&255;switch(r<<24>>24){case 99:{l=(l|0)>1?l:1;break}case 91:break;case 110:{Q_(x,t,v,((v|0)<0)<<31>>31);l=v;break c}default:{una(a,0);do{o=f[z>>2]|0;if(o>>>0<(f[A>>2]|0)>>>0){f[z>>2]=o+1;o=h[o>>0]|0}else o=cF(a)|0}while((o6a(o)|0)!=0);if(!(f[A>>2]|0))o=f[z>>2]|0;else{o=(f[z>>2]|0)+-1|0;f[z>>2]=o}v=(f[B>>2]|0)+v+o-(f[C>>2]|0)|0}}una(a,l);q=f[z>>2]|0;o=f[A>>2]|0;if(q>>>0>>0)f[z>>2]=q+1;else{if((cF(a)|0)<0){M=141;break b}o=f[A>>2]|0}if(o|0)f[z>>2]=(f[z>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){gH(J|0,-1,257)|0;b[J>>0]=0;if((s|0)==115){b[E>>0]=0;d[D>>1]=0;d[D+2>>1]=0;b[D+4>>0]=0}}else{s=k+1|0;r=(b[s>>0]|0)==94;o=r&1;k=r?k+2|0:s;gH(J|0,o|0,257)|0;b[J>>0]=0;switch(b[k>>0]|0){case 45:{r=(o^1)&255;b[F>>0]=r;k=k+1|0;break}case 93:{r=(o^1)&255;b[G>>0]=r;k=k+1|0;break}default:r=(o^1)&255}while(1){o=b[k>>0]|0;h:do switch(o<<24>>24){case 0:{M=141;break b}case 93:break g;case 45:{q=k+1|0;o=b[q>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}k=b[k+-1>>0]|0;if((k&255)<(o&255)){k=k&255;do{k=k+1|0;b[J+k>>0]=r;o=b[q>>0]|0}while(k>>>0<(o&255)>>>0);k=q}else k=q;break}default:{}}while(0);b[J+((o&255)+1)>>0]=r;k=k+1|0}}while(0);o=w?l+1|0:31;s=(t|0)==1;t=(j|0)!=0;i:do if(s){if(t){g=Kc(o<<2)|0;if(!g){i=0;g=0;M=141;break b}}else g=x;f[H>>2]=0;f[y>>2]=0;r=o;i=0;j:while(1){q=(g|0)==0;do{k:while(1){o=f[z>>2]|0;if(o>>>0<(f[A>>2]|0)>>>0){f[z>>2]=o+1;o=h[o>>0]|0}else o=cF(a)|0;if(!(b[J+(o+1)>>0]|0))break j;b[L>>0]=o;switch(ot(K,L,1,H)|0){case -1:{i=0;M=141;break b}case -2:break;default:break k}}if(!q){f[g+(i<<2)>>2]=f[K>>2];i=i+1|0}}while(!(t&(i|0)==(r|0)));i=r<<1|1;o=tZ(g,i<<2)|0;if(!o){i=0;M=141;break b}else{q=r;r=i;g=o;i=q}}if(!($Ya(H)|0)){i=0;M=141;break b}else{r=i;i=0;q=g}}else{if(t){i=Kc(o)|0;if(!i){i=0;g=0;M=141;break b}q=o;g=0;while(1){do{o=f[z>>2]|0;if(o>>>0<(f[A>>2]|0)>>>0){f[z>>2]=o+1;o=h[o>>0]|0}else o=cF(a)|0;if(!(b[J+(o+1)>>0]|0)){r=g;q=0;g=0;break i}b[i+g>>0]=o;g=g+1|0}while((g|0)!=(q|0));g=q<<1|1;o=tZ(i,g)|0;if(!o){g=0;M=141;break b}else{r=q;q=g;i=o;g=r}}}if(!x)while(1){g=f[z>>2]|0;if(g>>>0<(f[A>>2]|0)>>>0){f[z>>2]=g+1;g=h[g>>0]|0}else g=cF(a)|0;if(!(b[J+(g+1)>>0]|0)){r=0;i=0;q=0;g=0;break i}}i=0;while(1){g=f[z>>2]|0;if(g>>>0<(f[A>>2]|0)>>>0){f[z>>2]=g+1;g=h[g>>0]|0}else g=cF(a)|0;if(!(b[J+(g+1)>>0]|0)){r=i;i=x;q=0;g=0;break i}b[x+i>>0]=g;i=i+1|0}}while(0);if(!(f[A>>2]|0))o=f[z>>2]|0;else{o=(f[z>>2]|0)+-1|0;f[z>>2]=o}o=o-(f[C>>2]|0)+(f[B>>2]|0)|0;if(!o)break b;if(!((o|0)==(l|0)|w^1))break b;do if(t)if(s){f[x>>2]=q;break}else{f[x>>2]=i;break}while(0);if(!w){if(q|0)f[q+(r<<2)>>2]=0;if(!i){i=0;break f}b[i+r>>0]=0}break}case 120:case 88:case 112:{l=16;M=129;break}case 111:{l=8;M=129;break}case 117:case 100:{l=10;M=129;break}case 105:{l=0;M=129;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{m=+ni(a,t,0);if((f[B>>2]|0)==((f[C>>2]|0)-(f[z>>2]|0)|0))break b;if(x)switch(t|0){case 0:{n[x>>2]=m;break f}case 1:{p[x>>3]=m;break f}case 2:{p[x>>3]=m;break f}default:break f}break}default:{}}while(0);do if((M|0)==129){M=0;l=ig(a,l,0,-1,-1)|0;if((f[B>>2]|0)==((f[C>>2]|0)-(f[z>>2]|0)|0))break b;if((x|0)!=0&(s|0)==112){f[x>>2]=l;break}else{Q_(x,t,l,I);break}}while(0);c=c+((x|0)!=0&1)|0;l=(f[B>>2]|0)+v+(f[z>>2]|0)-(f[C>>2]|0)|0;break c}while(0);k=k+(j&1)|0;una(a,0);j=f[z>>2]|0;if(j>>>0<(f[A>>2]|0)>>>0){f[z>>2]=j+1;j=h[j>>0]|0}else j=cF(a)|0;if((j|0)!=(h[k>>0]|0)){M=21;break b}l=v+1|0}else{while(1){j=k+1|0;if(!(o6a(h[j>>0]|0)|0))break;else k=j}una(a,0);do{j=f[z>>2]|0;if(j>>>0<(f[A>>2]|0)>>>0){f[z>>2]=j+1;j=h[j>>0]|0}else j=cF(a)|0}while((o6a(j)|0)!=0);if(!(f[A>>2]|0))j=f[z>>2]|0;else{j=(f[z>>2]|0)+-1|0;f[z>>2]=j}l=(f[B>>2]|0)+v+j-(f[C>>2]|0)|0}while(0);k=k+1|0;j=b[k>>0]|0;if(!(j<<24>>24))break a;else v=l}if((M|0)==21){if(f[A>>2]|0)f[z>>2]=(f[z>>2]|0)+-1;if((c|0)!=0|(j|0)>-1)break;else{j=0;c=i;M=142}}else if((M|0)==141)if(!c){c=i;M=142}if((M|0)==142){i=c;c=-1}if(j){rg(i);rg(g)}}else c=0;while(0);u=N;return c|0}function gd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+12|0;m=o;e=c;a:do if((e-a|0)>2){if((b[a>>0]|0)==103){g=(b[a+1>>0]|0)==115;i=g;g=g?a+2|0:a}else{i=0;g=a}h=gl(g,c,d)|0;if((h|0)!=(g|0)){if(!i){a=h;break}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break;uoa(e+-24|0,0,123348)|0;a=h;break}if(((e-g|0)>2?(b[g>>0]|0)==115:0)?(b[g+1>>0]|0)==114:0){h=g+2|0;b:do if((b[h>>0]|0)==78){l=g+3|0;e=$h(l,c,d)|0;if((e|0)==(l|0)|(e|0)==(c|0))break a;h=jg(e,c,d)|0;l=d+4|0;do if((h|0)==(e|0))k=d;else{e=f[l>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(n,e+-24|0);g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;k=e+-1|0;JJa(g+(k*24|0)|0);e=k}f[l>>2]=g+-24;k=b[n+11>>0]|0;j=k<<24>>24<0;x=0;ja(97,g+-48|0,(j?f[n>>2]|0:n)|0,(j?f[n+4>>2]|0:k&255)|0)|0;k=x;x=0;if(k&1){a=Ia()|0;HTa(n);break b}if((h|0)!=(c|0)){HTa(n);e=h;k=d;break}g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;m=e+-1|0;JJa(g+(m*24|0)|0);e=m}f[l>>2]=g+-24;HTa(n);break a}while(0);i=m+11|0;j=m+4|0;while(1){if((b[e>>0]|0)==69){g=43;break}h=FIa(e,c,d)|0;if((h|0)==(e|0)|(h|0)==(c|0))break a;e=f[l>>2]|0;if(((e-(f[k>>2]|0)|0)/24|0)>>>0<2)break a;eY(n,e+-24|0);g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;JJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;x=0;ja(101,n|0,0,123348)|0;p=x;x=0;if(p&1){g=40;break}f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];e=0;while(1){if((e|0)==3)break;f[n+(e<<2)>>2]=0;e=e+1|0}p=b[i>>0]|0;g=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(g?f[m>>2]|0:m)|0,(g?f[j>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){g=41;break}HTa(m);HTa(n);e=h}if((g|0)==40)a=Ia()|0;else if((g|0)==41){a=Ia()|0;HTa(m)}else if((g|0)==43){p=e+1|0;g=gl(p,c,d)|0;if((g|0)==(p|0)){g=f[l>>2]|0;if((f[d>>2]|0)==(g|0))break a;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;JJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;break a}e=f[l>>2]|0;if(((e-(f[k>>2]|0)|0)/24|0)>>>0<2)break a;eY(n,e+-24|0);e=f[l>>2]|0;a=0;while(1){if((a|0)==-1)break;p=a+-1|0;JJa(e+(p*24|0)|0);a=p}f[l>>2]=e+-24;x=0;ja(101,n|0,0,123348)|0;p=x;x=0;do if(!(p&1)){f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}p=b[m+11>>0]|0;d=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(d?f[m>>2]|0:m)|0,(d?f[m+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;HTa(m);break}else{HTa(m);HTa(n);a=g;break a}}else a=Ia()|0;while(0);HTa(n);break}HTa(n)}else{e=$h(h,c,d)|0;if((e|0)!=(h|0)){i=jg(e,c,d)|0;do if((i|0)!=(e|0)){h=d+4|0;e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(n,e+-24|0);g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;JJa(g+(p*24|0)|0);e=p}f[h>>2]=g+-24;p=b[n+11>>0]|0;l=p<<24>>24<0;x=0;ja(97,g+-48|0,(l?f[n>>2]|0:n)|0,(l?f[n+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;HTa(n);break b}else{HTa(n);e=i;break}}while(0);h=gl(e,c,d)|0;if((h|0)==(e|0)){g=d+4|0;h=f[g>>2]|0;if((f[d>>2]|0)==(h|0))break a;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;JJa(h+(p*24|0)|0);e=p}f[g>>2]=h+-24;break a}g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(n,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;p=a+-1|0;JJa(e+(p*24|0)|0);a=p}f[g>>2]=e+-24;x=0;ja(101,n|0,0,123348)|0;p=x;x=0;do if(!(p&1)){f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}p=b[m+11>>0]|0;d=p<<24>>24<0;x=0;ja(97,(f[g>>2]|0)+-24|0,(d?f[m>>2]|0:m)|0,(d?f[m+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;HTa(m);break}else{HTa(m);HTa(n);a=h;break a}}else a=Ia()|0;while(0);HTa(n);break}j=FIa(h,c,d)|0;if((j|0)==(h|0)|(j|0)==(c|0))break a;if(i){e=d+4|0;g=f[e>>2]|0;if((f[d>>2]|0)==(g|0))break a;uoa(g+-24|0,0,123348)|0;l=e}else l=d+4|0;i=m+11|0;k=m+4|0;e=j;while(1){if((b[e>>0]|0)==69){g=111;break}h=FIa(e,c,d)|0;if((h|0)==(e|0)|(h|0)==(c|0))break a;e=f[l>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(n,e+-24|0);g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;JJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;x=0;ja(101,n|0,0,123348)|0;p=x;x=0;if(p&1){g=108;break}f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];e=0;while(1){if((e|0)==3)break;f[n+(e<<2)>>2]=0;e=e+1|0}p=b[i>>0]|0;j=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(j?f[m>>2]|0:m)|0,(j?f[k>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){g=109;break}HTa(m);HTa(n);e=h}if((g|0)==108)a=Ia()|0;else if((g|0)==109){a=Ia()|0;HTa(m)}else if((g|0)==111){p=e+1|0;g=gl(p,c,d)|0;if((g|0)==(p|0)){g=f[l>>2]|0;if((f[d>>2]|0)==(g|0))break a;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;JJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;break a}e=f[l>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(n,e+-24|0);e=f[l>>2]|0;a=0;while(1){if((a|0)==-1)break;p=a+-1|0;JJa(e+(p*24|0)|0);a=p}f[l>>2]=e+-24;x=0;ja(101,n|0,0,123348)|0;p=x;x=0;do if(!(p&1)){f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}p=b[m+11>>0]|0;d=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(d?f[m>>2]|0:m)|0,(d?f[m+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;HTa(m);break}else{HTa(m);HTa(n);a=g;break a}}else a=Ia()|0;while(0);HTa(n);break}HTa(n)}while(0);Ua(a|0)}}while(0);u=o;return a|0}function hd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;s=u;u=u+112|0;w=s+88|0;t=s+76|0;v=s+64|0;r=s+52|0;o=s+16|0;p=s;q=s+40|0;h=c;a:do if((h-a|0)>3){e=b[a>>0]|0;if(e<<24>>24==103){n=(b[a+1>>0]|0)==115;e=n?a+2|0:a;g=e;e=b[e>>0]|0}else{n=0;g=a}if(e<<24>>24==110){e=b[g+1>>0]|0;switch(e<<24>>24){case 97:case 119:break;default:{e=a;break a}}m=e<<24>>24==97;e=g+2|0;b:do if((e|0)!=(c|0)){l=0;while(1){if((b[e>>0]|0)==95)break;g=Bc(e,c,d)|0;if((g|0)==(e|0)|(g|0)==(c|0))break b;else{l=1;e=g}}k=e+1|0;g=Cc(k,c,d)|0;if(!((g|0)==(k|0)|(g|0)==(c|0))){e=b[g>>0]|0;c:do if(!((h-g|0)>2&e<<24>>24==112))if(e<<24>>24==69)k=0;else break b;else{if((b[g+1>>0]|0)!=105)break b;e=g+2|0;while(1){if((b[e>>0]|0)==69){k=1;g=e;break c}k=e;e=Bc(e,c,d)|0;if((e|0)==(k|0)|(e|0)==(c|0))break b}}while(0);f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[w+(e<<2)>>2]=0;e=e+1|0}do if(k){c=d+4|0;e=f[c>>2]|0;if((f[d>>2]|0)==(e|0)){e=a;g=1;h=102}else{x=0;ua(3194,t|0,e+-24|0);j=x;x=0;if(j&1){e=Ia()|0;h=107;break}e=w+11|0;if((b[e>>0]|0)<0){T0a(f[w>>2]|0,0);f[w+4>>2]=0}else{T0a(w,0);b[e>>0]=0}wv(w);f[w>>2]=f[t>>2];f[w+4>>2]=f[t+4>>2];f[w+8>>2]=f[t+8>>2];e=0;while(1){if((e|0)==3)break;f[t+(e<<2)>>2]=0;e=e+1|0}HTa(t);h=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;JJa(h+(j*24|0)|0);e=j}e=h+-24|0;f[c>>2]=e;j=d;h=35}}else{e=d+4|0;c=e;j=d;e=f[e>>2]|0;h=35}while(0);d:do if((h|0)==35)if((f[j>>2]|0)==(e|0)){e=a;g=1;h=102}else{x=0;ua(3194,t|0,e+-24|0);i=x;x=0;do if(!(i&1)){i=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;JJa(i+(h*24|0)|0);e=h}h=i+-24|0;f[c>>2]=h;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[v+(e<<2)>>2]=0;e=e+1|0}do if(l)if((f[j>>2]|0)==(h|0)){e=a;g=1;h=101}else{x=0;ua(3194,r|0,i+-48|0);j=x;x=0;if(j&1){e=Ia()|0;h=105;break}e=v+11|0;if((b[e>>0]|0)<0){T0a(f[v>>2]|0,0);f[v+4>>2]=0}else{T0a(v,0);b[e>>0]=0}wv(v);f[v>>2]=f[r>>2];f[v+4>>2]=f[r+4>>2];f[v+8>>2]=f[r+8>>2];e=0;while(1){if((e|0)==3)break;f[r+(e<<2)>>2]=0;e=e+1|0}HTa(r);h=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;JJa(h+(j*24|0)|0);e=j}f[c>>2]=h+-24;h=58}else h=58;while(0);e:do if((h|0)==58){f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[r+(e<<2)>>2]=0;e=e+1|0}if(n?(x=0,ua(3202,r|0,123348),n=x,x=0,n&1):0)h=63;else h=64;f:do if((h|0)==64){if(m){x=0;ia(215,r|0,123558)|0;n=x;x=0;if(n&1){h=63;break}}else{x=0;ia(215,r|0,123308)|0;n=x;x=0;if(n&1){h=63;break}}g:do if(l){x=0;va(185,p|0,123276,v|0);n=x;x=0;if(n&1)e=Ia()|0;else{x=0;ia(215,p|0,123562)|0;n=x;x=0;do if(!(n&1)){f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}n=b[o+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,r|0,(m?f[o>>2]|0:o)|0,(m?f[o+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){e=Ia()|0;HTa(o);break}else{HTa(o);HTa(p);break g}}else e=Ia()|0;while(0);HTa(p)}break f}while(0);n=b[t+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,r|0,(m?f[t>>2]|0:t)|0,(m?f[t+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1)h=63;else{h:do if(k){x=0;va(185,p|0,123271,w|0);n=x;x=0;if(n&1)e=Ia()|0;else{x=0;ia(215,p|0,123274)|0;n=x;x=0;do if(!(n&1)){f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}n=b[o+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,r|0,(m?f[o>>2]|0:o)|0,(m?f[o+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){e=Ia()|0;HTa(o);break}else{HTa(o);HTa(p);break h}}else e=Ia()|0;while(0);HTa(p)}break f}while(0);f[q>>2]=f[r>>2];f[q+4>>2]=f[r+4>>2];f[q+8>>2]=f[r+8>>2];e=0;while(1){if((e|0)==3)break;f[r+(e<<2)>>2]=0;e=e+1|0}NY(o,q);e=f[c>>2]|0;do if(e>>>0<(f[d+8>>2]|0)>>>0){yY(e,o);f[c>>2]=(f[c>>2]|0)+24}else{x=0;ua(3196,d|0,o|0);p=x;x=0;if(!(p&1))break;e=Ia()|0;JJa(o);HTa(q);break f}while(0);JJa(o);HTa(q);HTa(r);e=g+1|0;g=0;h=101;break e}}while(0);if((h|0)==63)e=Ia()|0;HTa(r);h=105}while(0);if((h|0)==101){HTa(v);HTa(t);h=102;break d}else if((h|0)==105){HTa(v);HTa(t);break}}else e=Ia()|0;while(0);h=107}while(0);if((h|0)==102){HTa(w);if(!g)break a;else break}else if((h|0)==107){HTa(w);Ua(e|0)}}}while(0);e=a}else e=a}else e=a;while(0);u=s;return e|0}function id(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;T=u;u=u+96|0;R=T+92|0;I=T+64|0;g=T+80|0;M=T+68|0;N=T+56|0;U=T+32|0;V=T+8|0;O=T+4|0;P=T;Q=T+60|0;J=T+44|0;K=T+20|0;L=a+12|0;do if(b[L>>0]|0){c=yCa(134176,98089)|0;ZXa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[R>>2]|0,134880)|0;H=x;x=0;if(!(H&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,H=x,x=0,!(H&1)):0){JCa(R);Wq(c,e)|0;du(c)|0;break}V=Ia()|0;JCa(R);Ua(V|0)}while(0);G=nq(a)|0;H=a+60|0;do if((G|0)!=((f[a+64>>2]|0)-(f[H>>2]|0)>>2|0)){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;WZ(g,98106,h7a(98106)|0);x=0;ua(1869,a|0,g|0);F=x;x=0;if(F&1){c=Ia()|0;HTa(g);break}else{HTa(g);h=10;break}}else h=10;while(0);a:do if((h|0)==10){l=a+36|0;m=a+128|0;n=U+4|0;o=U+8|0;p=V+4|0;q=V+8|0;r=a+124|0;s=a+72|0;t=a+44|0;v=a+201|0;w=a+180|0;y=a+156|0;z=a+160|0;A=a+188|0;B=a+192|0;C=a+264|0;D=a+80|0;E=a+84|0;F=a+76|0;k=0;b:while(1){c=(b[L>>0]|0)==0;if(k>>>0>=G>>>0){h=12;break}if(!c){d=yCa(134176,98154)|0;d=zm(d,f[l>>2]|0)|0;ZXa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[R>>2]|0,134880)|0;j=x;x=0;if(j&1){h=16;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;j=x;x=0;if(j&1){h=16;break}JCa(R);Wq(d,c)|0;du(d)|0}c=nq(a)|0;if(!c){f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;WZ(M,98167,h7a(98167)|0);x=0;ua(1869,a|0,M|0);j=x;x=0;if(j&1){h=21;break}HTa(M)}f[m>>2]=(f[l>>2]|0)+c;j=f[(f[H>>2]|0)+(k<<2)>>2]|0;if(b[L>>0]|0){zm(yCa(134176,98187)|0,k)|0;ZXa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[R>>2]|0,134880)|0;i=x;x=0;if(i&1){h=25;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;i=x;x=0;if(i&1){h=25;break}JCa(R);Wq(134176,c)|0;du(134176)|0}f[N>>2]=0;f[U>>2]=0;f[n>>2]=0;f[o>>2]=0;f[V>>2]=0;f[p>>2]=0;f[q>>2]=0;d=j+8|0;e=j+12|0;c=0;while(1){if(c>>>0>=(f[e>>2]|0)-(f[d>>2]|0)>>2>>>0)break;x=0;g=ga(303,N|0)|0;i=x;x=0;if(i&1){h=36;break b}f[O>>2]=g;h=(f[d>>2]|0)+(c<<2)|0;i=f[n>>2]|0;if(i>>>0>=(f[o>>2]|0)>>>0){x=0;va(146,U|0,O|0,h|0);i=x;x=0;if(i&1){h=36;break b}}else{f[I>>2]=g;h=f[h>>2]|0;f[R>>2]=f[I>>2];cUa(i,R,h);f[n>>2]=(f[n>>2]|0)+8}c=c+1|0}x=0;h=ga(302,a|0)|0;i=x;x=0;if(i&1){h=39;break}g=0;while(1){if(g>>>0>=h>>>0)break;x=0;c=ga(302,a|0)|0;i=x;x=0;if(i&1){h=49;break b}x=0;i=ga(304,a|0)|0;e=x;x=0;if(e&1){h=50;break b}f[O>>2]=i;while(1){if(!c)break;x=0;d=ga(303,N|0)|0;e=x;x=0;if(e&1){h=51;break b}f[P>>2]=d;e=f[p>>2]|0;if(e>>>0>=(f[q>>2]|0)>>>0){x=0;va(146,V|0,P|0,O|0);e=x;x=0;if(e&1){h=51;break b}}else{f[I>>2]=d;f[R>>2]=f[I>>2];cUa(e,R,i);f[p>>2]=(f[p>>2]|0)+8}c=c+-1|0}g=g+1|0}U0a(O,f[a>>2]|0);x=0;c=ga(226,k|0)|0;i=x;x=0;if(i&1){h=63;break}f[Q>>2]=c;e=f[j+4>>2]|0;x=0;f[R>>2]=f[Q>>2];e=ka(20,R|0,U|0,e|0,V|0)|0;i=x;x=0;if(i&1){h=63;break}f[I>>2]=e;f[e+32>>2]=f[j>>2];d=e;f[r>>2]=d;if(b[L>>0]|0){x=0;c=ia(62,134176,98196)|0;j=x;x=0;if(j&1){h=64;break}x=0;ia(78,c|0,k|0)|0;j=x;x=0;if(j&1){h=64;break}ZXa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[R>>2]|0,134880)|0;j=x;x=0;if(j&1){h=60;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;j=x;x=0;if(j&1){h=60;break}JCa(R);x=0;ia(79,134176,c|0)|0;j=x;x=0;if(j&1){h=64;break}x=0;ga(227,134176)|0;j=x;x=0;if(j&1){h=64;break}}f[s>>2]=0;b[t>>0]=0;b[v>>0]=0;if(f[w>>2]|0){h=68;break}if((f[y>>2]|0)!=(f[z>>2]|0)){h=70;break}if((f[A>>2]|0)!=(f[B>>2]|0)){h=72;break}if(f[C>>2]|0){h=74;break}x=0;c=ia(173,a|0,f[e+4>>2]|0)|0;j=x;x=0;if(j&1){h=64;break}f[e+36>>2]=c;if(f[C>>2]|0){h=77;break}if((f[z>>2]|0)!=(f[y>>2]|0)){h=79;break}if(f[w>>2]|0){h=81;break}if((f[A>>2]|0)!=(f[B>>2]|0)){f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;j=h7a(98327)|0;x=0;va(87,J|0,98327,j|0);j=x;x=0;if(j&1){h=64;break}x=0;ua(1869,a|0,J|0);j=x;x=0;if(j&1){h=86;break}HTa(J)}if((f[l>>2]|0)!=(f[m>>2]|0)){f[K>>2]=0;f[K+4>>2]=0;f[K+8>>2]=0;j=h7a(98360)|0;x=0;va(87,K|0,98360,j|0);j=x;x=0;if(j&1){h=64;break}x=0;ua(1869,a|0,K|0);j=x;x=0;if(j&1){h=91;break}HTa(K)}f[r>>2]=0;b[t>>0]=0;c=f[D>>2]|0;if((c|0)==(f[E>>2]|0)){x=0;ua(63,F|0,I|0);j=x;x=0;if(j&1){h=64;break}}else{f[c>>2]=d;f[D>>2]=(f[D>>2]|0)+4}uSa(V);uSa(U);k=k+1|0}switch(h|0){case 12:{do if(!c){c=yCa(134176,98416)|0;ZXa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[R>>2]|0,134880)|0;V=x;x=0;if(!(V&1)?(x=0,S=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,V=x,x=0,!(V&1)):0){JCa(R);Wq(c,S)|0;du(c)|0;break}V=Ia()|0;JCa(R);Ua(V|0)}while(0);u=T;return}case 16:{V=Ia()|0;JCa(R);Ua(V|0)}case 21:{c=Ia()|0;HTa(M);break a}case 25:{V=Ia()|0;JCa(R);Ua(V|0)}case 36:{c=Ia()|0;break}case 39:{c=Ia()|0;break}case 49:{c=Ia()|0;break}case 50:{c=Ia()|0;h=53;break}case 51:{c=Ia()|0;h=53;break}case 60:{c=Ia()|0;JCa(R);h=66;break}case 63:{c=Ia()|0;h=96;break}case 64:{c=Ia()|0;h=66;break}case 68:{x=0;wa(71,98218,87234,1048,98247);x=0;h=65;break}case 70:{x=0;wa(71,98261,87234,1049,98247);x=0;h=65;break}case 72:{x=0;wa(71,98280,87234,1050,98247);x=0;h=65;break}case 74:{x=0;wa(71,96010,87234,1051,98247);x=0;h=65;break}case 77:{x=0;wa(71,96010,87234,1053,98247);x=0;h=65;break}case 79:{x=0;wa(71,98304,87234,1054,98247);x=0;h=65;break}case 81:{x=0;wa(71,98218,87234,1055,98247);x=0;h=65;break}case 86:{c=Ia()|0;HTa(J);h=96;break}case 91:{c=Ia()|0;HTa(K);h=96;break}}if((h|0)!=53)if((h|0)==65){c=Ia()|0;h=66}if((h|0)==66)h=96;uSa(V);uSa(U)}while(0);Ua(c|0)}function jd(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;A=u;u=u+144|0;C=A+120|0;q=A+108|0;D=A+96|0;y=A+84|0;z=A+72|0;F=A+60|0;G=A+48|0;H=A+36|0;E=A+24|0;B=A+12|0;h=A;OE(a);Th(a);i=a+36|0;j=a+8|0;k=a+48|0;l=C+4|0;m=a+208|0;n=E+11|0;o=E+4|0;p=E+11|0;r=E+4|0;s=B+11|0;t=B+4|0;v=B+11|0;w=B+4|0;a:while(1){if(!(qVa(f[j>>2]|0,f[i>>2]|0)|0)){I=113;break}e=nq(a)|0;g=nq(a)|0;c=f[i>>2]|0;d=f[j>>2]|0;if((c+g|0)>>>0>((f[d+4>>2]|0)-(f[d>>2]|0)|0)>>>0){f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;WZ(q,94826,h7a(94826)|0);x=0;ua(1869,a|0,q|0);d=x;x=0;if(d&1){I=6;break}HTa(q);c=f[i>>2]|0}b:do switch(e|0){case 10:{I=24;break}case 0:{I=30;break}default:{f[D>>2]=e;DF(C,k,e,D);if(!(b[l>>0]|0)){AY(C,e);x=0;ia(83,C|0,94862)|0;d=x;x=0;if(d&1){I=15;break a}f[y>>2]=f[C>>2];f[y+4>>2]=f[C+4>>2];f[y+8>>2]=f[C+8>>2];d=0;while(1){if((d|0)==3)break;f[C+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1869,a|0,y|0);d=x;x=0;if(d&1){I=16;break a}HTa(y);HTa(C)}do switch(e|0){case 10:{I=24;break b}case 8:{xF(a);break b}case 5:{Rn(a);break b}case 1:{Wg(a);break b}case 2:{Zc(a);break b}case 3:{lk(a);break b}case 7:{Wh(a);break b}case 9:{Qk(a);break b}case 6:{Bi(a);faa(m);Gr(a,-1)|0;break b}case 11:{ck(a);break b}case 4:{ik(a);break b}default:{I=30;break b}}while(0)}}while(0);if((I|0)==24){I=0;id(a)}else if((I|0)==30){I=0;WE(a,g);e=c+g|0;if((f[i>>2]|0)>>>0>e>>>0){zY(H,c);x=0;ia(83,H|0,94892)|0;d=x;x=0;if(d&1){I=55;break}f[G>>2]=f[H>>2];f[G+4>>2]=f[H+4>>2];f[G+8>>2]=f[H+8>>2];d=0;while(1){if((d|0)==3)break;f[H+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,G|0,94927)|0;d=x;x=0;if(d&1){I=56;break}f[F>>2]=f[G>>2];f[F+4>>2]=f[G+4>>2];f[F+8>>2]=f[G+8>>2];d=0;while(1){if((d|0)==3)break;f[G+(d<<2)>>2]=0;d=d+1|0}x=0;ua(91,E|0,g|0);d=x;x=0;if(d&1){I=57;break}d=b[n>>0]|0;J=d<<24>>24<0;x=0;ja(49,F|0,(J?f[E>>2]|0:E)|0,(J?f[o>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){I=58;break}f[D>>2]=f[F>>2];f[D+4>>2]=f[F+4>>2];f[D+8>>2]=f[F+8>>2];d=0;while(1){if((d|0)==3)break;f[F+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,D|0,94942)|0;J=x;x=0;if(J&1){I=59;break}f[C>>2]=f[D>>2];f[C+4>>2]=f[D+4>>2];f[C+8>>2]=f[D+8>>2];d=0;while(1){if((d|0)==3)break;f[D+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1870,B|0,f[i>>2]|0);J=x;x=0;if(J&1){I=60;break}J=b[s>>0]|0;d=J<<24>>24<0;x=0;ja(49,C|0,(d?f[B>>2]|0:B)|0,(d?f[t>>2]|0:J&255)|0)|0;J=x;x=0;if(J&1){I=61;break}f[z>>2]=f[C>>2];f[z+4>>2]=f[C+4>>2];f[z+8>>2]=f[C+8>>2];d=0;while(1){if((d|0)==3)break;f[C+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1869,a|0,z|0);J=x;x=0;if(J&1){I=62;break}HTa(z);HTa(B);HTa(C);HTa(D);HTa(E);HTa(F);HTa(G);HTa(H)}f[i>>2]=e}if((f[i>>2]|0)!=(c+g|0)){zY(H,c);x=0;ia(83,H|0,94976)|0;J=x;x=0;if(J&1){I=97;break}f[G>>2]=f[H>>2];f[G+4>>2]=f[H+4>>2];f[G+8>>2]=f[H+8>>2];c=0;while(1){if((c|0)==3)break;f[H+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,G|0,94927)|0;J=x;x=0;if(J&1){I=98;break}f[F>>2]=f[G>>2];f[F+4>>2]=f[G+4>>2];f[F+8>>2]=f[G+8>>2];c=0;while(1){if((c|0)==3)break;f[G+(c<<2)>>2]=0;c=c+1|0}x=0;ua(91,E|0,g|0);J=x;x=0;if(J&1){I=99;break}J=b[p>>0]|0;g=J<<24>>24<0;x=0;ja(49,F|0,(g?f[E>>2]|0:E)|0,(g?f[r>>2]|0:J&255)|0)|0;J=x;x=0;if(J&1){I=100;break}f[D>>2]=f[F>>2];f[D+4>>2]=f[F+4>>2];f[D+8>>2]=f[F+8>>2];c=0;while(1){if((c|0)==3)break;f[F+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,D|0,94942)|0;J=x;x=0;if(J&1){I=101;break}f[C>>2]=f[D>>2];f[C+4>>2]=f[D+4>>2];f[C+8>>2]=f[D+8>>2];c=0;while(1){if((c|0)==3)break;f[D+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1870,B|0,f[i>>2]|0);J=x;x=0;if(J&1){I=102;break}J=b[v>>0]|0;g=J<<24>>24<0;x=0;ja(49,C|0,(g?f[B>>2]|0:B)|0,(g?f[w>>2]|0:J&255)|0)|0;J=x;x=0;if(J&1){I=103;break}f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];c=0;while(1){if((c|0)==3)break;f[C+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1869,a|0,h|0);J=x;x=0;if(J&1){I=104;break}HTa(h);HTa(B);HTa(C);HTa(D);HTa(E);HTa(F);HTa(G);HTa(H)}}switch(I|0){case 6:{c=Ia()|0;HTa(q);break}case 15:{c=Ia()|0;I=17;break}case 16:{c=Ia()|0;HTa(y);I=17;break}case 55:{c=Ia()|0;I=69;break}case 56:{c=Ia()|0;I=68;break}case 57:{c=Ia()|0;I=67;break}case 58:{c=Ia()|0;I=66;break}case 59:{c=Ia()|0;I=65;break}case 60:{c=Ia()|0;I=64;break}case 61:{c=Ia()|0;I=63;break}case 62:{c=Ia()|0;HTa(z);I=63;break}case 97:{c=Ia()|0;I=111;break}case 98:{c=Ia()|0;I=110;break}case 99:{c=Ia()|0;I=109;break}case 100:{c=Ia()|0;I=108;break}case 101:{c=Ia()|0;I=107;break}case 102:{c=Ia()|0;I=106;break}case 103:{c=Ia()|0;I=105;break}case 104:{c=Ia()|0;HTa(h);I=105;break}case 113:{Ch(a);u=A;return}}if((I|0)==17)HTa(C);else if((I|0)==63){HTa(B);I=64}else if((I|0)==105){HTa(B);I=106}if((I|0)==64){HTa(C);I=65}else if((I|0)==106){HTa(C);I=107}if((I|0)==65){HTa(D);I=66}else if((I|0)==107){HTa(D);I=108}if((I|0)==66){HTa(E);I=67}else if((I|0)==108){HTa(E);I=109}if((I|0)==67){HTa(F);I=68}else if((I|0)==109){HTa(F);I=110}if((I|0)==68){HTa(G);I=69}else if((I|0)==110){HTa(G);I=111}if((I|0)==69)HTa(H);else if((I|0)==111)HTa(H);Ua(c|0)}function kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+80|0;r=t+72|0;o=t+68|0;d=t+64|0;y=t+40|0;p=t+52|0;m=t+36|0;q=t+24|0;n=t+20|0;w=t+16|0;s=t+12|0;v=t;c=jF(Or(b,0)|0)|0;a:do if(!($1a(c,f[33100]|0)|0)){if(!(_1a(c,f[33111]|0)|0)){tab(o);tab(d);g=Hx(b,o,d)|0;c=f[o>>2]|0;if(!(Iab(c)|0)){c=WT(f[a+44>>2]|0)|0;f[o>>2]=c}d=a+12|0;e=f[d>>2]|0;if((e|0)==(f[a+16>>2]|0))IL(a+8|0,o);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}l=a+44|0;f[l>>2]=(f[l>>2]|0)+1;l=a+52|0;j=vZ(l,o)|0;f[j>>2]=0;f[y>>2]=0;j=y+4|0;f[j>>2]=0;k=y+8|0;f[k>>2]=0;c=0;b:while(1){x=0;d=ga(294,b|0)|0;i=x;x=0;if(i&1){j=21;break}if(g>>>0>=d>>>0){j=74;break}x=0;i=ia(69,b|0,g|0)|0;h=x;x=0;if(h&1){j=22;break}x=0;d=ia(69,i|0,0)|0;h=x;x=0;if(h&1){j=23;break}x=0;d=ga(295,d|0)|0;h=x;x=0;if(h&1){j=23;break}c:do if(!($1a(d,f[33109]|0)|0)){if($1a(d,f[33100]|0)|0){x=0;c=ia(69,i|0,1)|0;h=x;x=0;if(h&1){j=39;break b}x=0;c=ia(161,a|0,c|0)|0;h=x;x=0;if(h&1){j=39;break b}d=f[a>>2]|0;f[m>>2]=c;f[r>>2]=f[m>>2];if(!(oma(d,r)|0)){j=36;break b}f[n>>2]=c;x=0;f[r>>2]=f[n>>2];c=ia(162,d|0,r|0)|0;i=x;x=0;if(i&1){j=39;break b}d=f[c+4>>2]|0;x=0;e=ia(160,l|0,o|0)|0;i=x;x=0;if(i&1){j=39;break b}f[e>>2]=d;break}if($1a(d,f[33110]|0)|0){x=0;d=ga(294,i|0)|0;h=x;x=0;if(h&1){j=23;break b}if(d>>>0>1){x=0;d=ia(69,i|0,1)|0;h=x;x=0;if(h&1){j=60;break b}if(lRa(d)|0){x=0;d=ia(69,i|0,2)|0;i=x;x=0;if(i&1){j=62;break b}x=0;d=ga(295,d|0)|0;i=x;x=0;if(i&1){j=62;break b}x=0;d=ia(159,d|0,1)|0;i=x;x=0;if(i&1){j=62;break b}f[r>>2]=d;e=f[j>>2]|0;if(e>>>0>=(f[k>>2]|0)>>>0){x=0;ua(1871,y|0,r|0);i=x;x=0;if(i&1){j=62;break b}}else{f[e>>2]=d;f[j>>2]=e+4}break}e=1;while(1){x=0;d=ga(294,i|0)|0;h=x;x=0;if(h&1){j=59;break b}if(e>>>0>=d>>>0)break c;h=e+1|0;x=0;d=ia(69,i|0,e|0)|0;e=x;x=0;if(e&1){j=72;break b}x=0;d=ga(295,d|0)|0;e=x;x=0;if(e&1){j=72;break b}x=0;d=ia(159,d|0,1)|0;e=x;x=0;if(e&1){j=72;break b}f[r>>2]=d;e=f[j>>2]|0;if(e>>>0>=(f[k>>2]|0)>>>0){x=0;ua(1871,y|0,r|0);e=x;x=0;if(e&1){j=72;break b}}else{f[e>>2]=d;f[j>>2]=e+4}e=h}}}}else{x=0;d=ga(294,i|0)|0;h=x;x=0;if(h&1){j=23;break b}if(d>>>0>2){j=18;break b}x=0;d=ia(69,i|0,1)|0;i=x;x=0;if(i&1){j=23;break b}x=0;d=ga(295,d|0)|0;i=x;x=0;if(i&1){j=23;break b}x=0;d=ia(159,d|0,0)|0;i=x;x=0;if(i&1){j=23;break b}x=0;e=ia(160,l|0,o|0)|0;i=x;x=0;if(i&1){j=23;break b}f[e>>2]=d}while(0);g=g+1|0}d:switch(j|0){case 18:{e=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;w=h7a(94233)|0;x=0;va(87,p|0,94233,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,e|0,p|0,f[i+28>>2]|0,f[i+32>>2]|0);w=x;x=0;if(w&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(p);if(!d)break}else c=Ia()|0;La(e|0);break}case 21:{c=Ia()|0;break}case 22:{c=Ia()|0;break}case 23:{c=Ia()|0;break}case 36:{e=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;w=h7a(94254)|0;x=0;va(87,q|0,94254,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,e|0,q|0,f[i+28>>2]|0,f[i+32>>2]|0);w=x;x=0;if(w&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;HTa(q);if(!d)break}else c=Ia()|0;La(e|0);break}case 39:{c=Ia()|0;break}case 59:{c=Ia()|0;j=61;break}case 60:{c=Ia()|0;j=61;break}case 62:{c=Ia()|0;break}case 72:{c=Ia()|0;break}case 74:{e:do if(!c){x=0;ta(491,w|0);q=x;x=0;do if(q&1)c=Ia()|0;else{x=0;c=ia(160,l|0,o|0)|0;q=x;x=0;f:do if(q&1)j=80;else{d=f[w>>2]|0;f[d+4>>2]=f[c>>2];Taa(d+8|0,y);g=f[a>>2]|0;e=f[g>>2]|0;g=f[g+4>>2]|0;h=g;i=e;c=1;while(1){if((e|0)==(g|0))break;q=sW(f[e>>2]|0,d)|0;c=c&(q^1);if(q)break;else e=e+4|0}do if(!c){f[w>>2]=0;if(d|0){M_a(d);ubb(d)}}else{x=0;c=ga(226,h-i>>2|0)|0;q=x;x=0;if(q&1){c=Ia()|0;e=w;j=101;break f}f[d>>2]=c;e=a+24|0;g=f[e>>2]|0;if((g|0)==(f[a+28>>2]|0)){x=0;ua(1502,a+20|0,d|0);q=x;x=0;if(q&1){j=80;break f}}else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}c=f[a>>2]|0;f[s>>2]=f[d>>2];f[r>>2]=f[s>>2];if(!(oma(c,r)|0)){f[w>>2]=0;x=0;ua(1872,c|0,d|0);v=x;x=0;if(v&1){j=80;break f}f[w>>2]=0;break}g=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;t=h7a(94802)|0;x=0;va(87,v|0,94802,t|0);t=x;x=0;if(!(t&1)){x=0;wa(138,g|0,v|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}c=Ia()|0;HTa(v);if(e)j=94}else{c=Ia()|0;j=94}if((j|0)==94)La(g|0);f[w>>2]=0;break f}while(0);break e}while(0);if((j|0)==80){c=Ia()|0;e=w;d=f[w>>2]|0;j=101}if((j|0)==101){f[e>>2]=0;if(!d)break}M_a(d);ubb(d)}while(0);break d}while(0);uSa(y);break a}}uSa(y);Ua(c|0)}}else dg(a,b);while(0);u=t;return}function ld(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+48|0;s=r+36|0;d=r+24|0;o=r+12|0;m=r;p=a+36|0;do if((f[p>>2]|0)==(f[a+128>>2]|0)){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;WZ(d,96254,h7a(96254)|0);x=0;ua(1869,a|0,d|0);n=x;x=0;if(n&1){s=Ia()|0;HTa(d);d=s;break}else{HTa(d);e=5;break}}else e=5;while(0);a:do if((e|0)==5){n=a+12|0;do if(b[n>>0]|0){e=yCa(134176,96404)|0;k=a+264|0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;d=yCa(Am(e,d)|0,87150)|0;d=zm(d,f[p>>2]|0)|0;ZXa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[s>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){JCa(s);Wq(d,g)|0;du(d)|0;break}r=Ia()|0;JCa(s);Ua(r|0)}while(0);g=a+20|0;d=f[g>>2]|0;b:do if(d|0){h=a+24|0;i=a+232|0;j=a+124|0;k=a+44|0;while(1){if(!d)break b;e=f[p>>2]|0;if(d>>>0>e>>>0)break b;if(d>>>0>>0){e=yCa(134176,96421)|0;e=zm(e,f[g>>2]|0)|0;ZXa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[s>>2]|0,134880)|0;t=x;x=0;if(t&1)break;x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;t=x;x=0;if(t&1)break;JCa(s);Wq(e,d)|0;du(e)|0}f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];b[k>>0]=(f[j>>2]|0)!=0&1;as(a);d=f[g>>2]|0}t=Ia()|0;JCa(s);Ua(t|0)}while(0);g=Fr(a)|0;do if(!(b[n>>0]|0))d=g&255;else{d=g&255;e=Am(yCa(134176,96455)|0,d)|0;ZXa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[s>>2]|0,134880)|0;t=x;x=0;if(!(t&1)?(x=0,l=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,t=x,x=0,!(t&1)):0){JCa(s);Wq(e,l)|0;du(e)|0;break}t=Ia()|0;JCa(s);Ua(t|0)}while(0);c:do switch(g<<24>>24){case 2:{g=$Ra(f[a+4>>2]|0)|0;f[c>>2]=g;zh(a,XRa(g)|0);g=2;break}case 4:{g=fVa(f[a+4>>2]|0)|0;f[c>>2]=g;Qr(a,qSa(g)|0);g=4;break}case 3:{g=IUa(f[a+4>>2]|0)|0;f[c>>2]=g;$m(a,gSa(g)|0);g=3;break}case 13:case 12:{t=rUa(f[a+4>>2]|0)|0;f[c>>2]=t;vx(a,WRa(t)|0,g);break}case 14:{g=BRa(f[a+4>>2]|0)|0;f[c>>2]=g;pl(a,IRa(g)|0);g=14;break}case 16:{g=Al(a)|0;f[c>>2]=g;g=16;break}case 17:{g=FPa(f[a+4>>2]|0)|0;f[c>>2]=g;Em(a,DQa(g)|0);g=17;break}case 32:{g=BTa(f[a+4>>2]|0)|0;f[c>>2]=g;gs(a,oRa(g)|0);g=32;break}case 33:case 34:{t=ATa(f[a+4>>2]|0)|0;f[c>>2]=t;is(a,iRa(t)|0,g);break}case 35:{g=fTa(f[a+4>>2]|0)|0;f[c>>2]=g;Aq(a,XQa(g)|0);g=35;break}case 36:{g=eTa(f[a+4>>2]|0)|0;f[c>>2]=g;YA(a,WQa(g)|0);g=36;break}case 27:{g=XTa(f[a+4>>2]|0)|0;f[c>>2]=g;pA(a,yRa(g)|0);g=27;break}case 15:{g=YTa(f[a+4>>2]|0)|0;f[c>>2]=g;QB(a,zRa(g)|0);g=15;break}case 1:{g=xWa(f[a+4>>2]|0)|0;f[c>>2]=g;iSa(g)|0;TH(b[n>>0]|0);g=1;break}case 0:{g=ySa(f[a+4>>2]|0)|0;f[c>>2]=g;EQa(g)|0;fH(b[n>>0]|0);g=0;break}case 26:{g=lWa(f[a+4>>2]|0)|0;f[c>>2]=g;aE(a,_Ra(g)|0);g=26;break}case 5:case 11:{f[c>>2]=0;break}case -2:{g=Fr(a)|0;if(((((!(Xh(a,c,g,1)|0)?!(ek(a,c,g,1)|0):0)?!(mi(a,c,g)|0):0)?!(Zn(a,c,g)|0):0)?!(Wo(a,c,g)|0):0)?!(Eq(a,c,g)|0):0){BY(s,g&255);x=0;ia(83,s|0,96478)|0;t=x;x=0;do if(!(t&1)){f[o>>2]=f[s>>2];f[o+4>>2]=f[s+4>>2];f[o+8>>2]=f[s+8>>2];d=0;while(1){if((d|0)==3)break;f[s+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1869,a|0,o|0);t=x;x=0;if(t&1){d=Ia()|0;HTa(o);break}else{HTa(o);HTa(s);break c}}else d=Ia()|0;while(0);HTa(s);break a}break}default:if(((((!(Zg(a,c,g)|0)?!(Xi(a,c,g)|0):0)?!(co(a,c,g)|0):0)?!(Xh(a,c,g,0)|0):0)?!(ek(a,c,g,0)|0):0)?!(Jp(a,c,g)|0):0){BY(s,d);x=0;ia(83,s|0,96513)|0;t=x;x=0;do if(!(t&1)){f[m>>2]=f[s>>2];f[m+4>>2]=f[s+4>>2];f[m+8>>2]=f[s+8>>2];d=0;while(1){if((d|0)==3)break;f[s+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1869,a|0,m|0);t=x;x=0;if(t&1){d=Ia()|0;HTa(m);break}else{HTa(m);HTa(s);break c}}else d=Ia()|0;while(0);HTa(s);break a}}while(0);if(!((b[a+44>>0]|0)==0|(f[c>>2]|0)==0)){o=a+232|0;t=Il((f[a+124>>2]|0)+68|0,c)|0;f[t>>2]=f[o>>2];f[t+4>>2]=f[o+4>>2];f[t+8>>2]=f[o+8>>2]}do if(b[n>>0]|0){e=yCa(134176,96528)|0;t=a+264|0;d=f[t>>2]|0;f[t>>2]=d+-1;d=yCa(Am(e,d)|0,87150)|0;d=zm(d,f[p>>2]|0)|0;ZXa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[s>>2]|0,134880)|0;t=x;x=0;if(!(t&1)?(x=0,q=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,t=x,x=0,!(t&1)):0){JCa(s);Wq(d,q)|0;du(d)|0;break}t=Ia()|0;JCa(s);Ua(t|0)}while(0);u=r;return g&255|0}while(0);Ua(d|0);return 0}function md(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;K=u;u=u+144|0;H=K+92|0;M=K+72|0;N=K+32|0;L=K+12|0;E=K+8|0;F=K+4|0;G=K;ela(N);I=d+36|0;J=d+40|0;s=f[J>>2]|0;D=a+20|0;t=c+20|0;v=N+4|0;z=N+12|0;w=N+16|0;y=N+8|0;r=f[I>>2]|0;a:while(1){if((r|0)==(s|0)){C=3;break}x=0;e=ia(187,D|0,f[r>>2]|0)|0;C=x;x=0;if(C&1){C=40;break}b:do if(OZ(e,t)|0){o=f[r>>2]|0;q=v8a(o)|0;k=f[v>>2]|0;p=(k|0)==0;c:do if(!p){l=k+-1|0;m=(l&k|0)==0;if(!m)if(q>>>0>>0)g=q;else g=(q>>>0)%(k>>>0)|0;else g=l&q;e=f[(f[N>>2]|0)+(g<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break c;j=f[e+4>>2]|0;if((j|0)!=(q|0)){if(!m){if(j>>>0>=k>>>0)j=(j>>>0)%(k>>>0)|0}else j=j&l;if((j|0)!=(g|0))break c}if($1a(f[e+8>>2]|0,f[o>>2]|0)|0)break b}}else g=0;while(0);x=0;wa(95,M|0,N|0,q|0,o|0);C=x;x=0;if(C&1){C=40;break a}h=+(((f[z>>2]|0)+1|0)>>>0);i=+n[w>>2];do if(p|i*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;B=~~+W(+(h/i))>>>0;x=0;ua(680,N|0,(C>>>0>>0?B:C)|0);C=x;x=0;if(C&1){C=28;break a}e=f[v>>2]|0;g=e+-1|0;if(!(g&e)){k=e;g=g&q;break}if(q>>>0>>0){k=e;g=q}else{k=e;g=(q>>>0)%(e>>>0)|0}}while(0);e=f[(f[N>>2]|0)+(g<<2)>>2]|0;if(!e){j=f[M>>2]|0;f[j>>2]=f[y>>2];f[y>>2]=j;f[(f[N>>2]|0)+(g<<2)>>2]=y;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=k+-1|0;if(g&k){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&g;f[(f[N>>2]|0)+(e<<2)>>2]=j}}else{C=f[M>>2]|0;f[C>>2]=f[e>>2];f[e>>2]=C}f[z>>2]=(f[z>>2]|0)+1}while(0);r=r+4|0}d:do if((C|0)==3){e:do if(!(f[z>>2]|0))e=0;else{g=f[J>>2]|0;A=N+20|0;e=f[I>>2]|0;while(1){if((e|0)==(g|0))break;x=0;ia(188,A|0,f[e>>2]|0)|0;B=x;x=0;if(B&1){C=48;break}e=e+4|0}if((C|0)==48){e=Ia()|0;break d}mza(H,d);h4a(H);x=0;ua(2588,H|0,N|0);B=x;x=0;if(!(B&1)?(x=0,ta(438,H|0),B=x,x=0,!(B&1)):0){Tca(H);f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=1065353216;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[L+12>>2]=0;f[L+16>>2]=1065353216;v=f[J>>2]|0;w=L+4|0;B=L+12|0;y=L+16|0;z=L+8|0;t=f[I>>2]|0;f:while(1){if((t|0)==(v|0)){C=52;break}e=f[t>>2]|0;g:do if(!(rB(M,e)|0)){x=0;e=ia(188,A|0,e|0)|0;s=x;x=0;if(s&1){C=58;break f}s=f[e+4>>2]|0;r=f[e>>2]|0;while(1){if((r|0)==(s|0))break g;e=f[r+4>>2]|0;f[E>>2]=e;if(!(wA(f[L>>2]|0,f[w>>2]|0,E)|0)){f[F>>2]=f[e>>2];x=0;va(164,d|0,f[t>>2]|0,r|0);q=x;x=0;if(q&1){C=100;break f}x=0;e=ia(132,M|0,F|0)|0;q=x;x=0;if(q&1){C=100;break f}f[e>>2]=(f[e>>2]|0)+1;l=f[t>>2]|0;f[G>>2]=l;f[H>>2]=l;q=HH(H,4)|0;k=f[w>>2]|0;p=(k|0)==0;h:do if(p){g=0;C=77}else{m=k+-1|0;o=(m&k|0)==0;do if(o)g=m&q;else{if(q>>>0>>0){g=q;break}g=(q>>>0)%(k>>>0)|0}while(0);e=f[(f[L>>2]|0)+(g<<2)>>2]|0;if(!e){C=77;break}do{e=f[e>>2]|0;if(!e){C=77;break h}j=f[e+4>>2]|0;if((j|0)!=(q|0)){do if(o)j=j&m;else{if(j>>>0>>0)break;j=(j>>>0)%(k>>>0)|0}while(0);if((j|0)!=(g|0)){C=77;break h}}}while((f[e+8>>2]|0)!=(l|0))}while(0);if((C|0)==77){C=0;x=0;wa(148,H|0,L|0,q|0,G|0);o=x;x=0;if(o&1){C=102;break f}h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[y>>2];do if(p|i*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;o=~~+W(+(h/i))>>>0;x=0;ua(2589,L|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){C=84;break f}e=f[w>>2]|0;g=e+-1|0;if(!(g&e)){k=e;g=g&q;break}if(q>>>0>>0){k=e;g=q;break}k=e;g=(q>>>0)%(e>>>0)|0}while(0);e=f[(f[L>>2]|0)+(g<<2)>>2]|0;do if(!e){j=f[H>>2]|0;f[j>>2]=f[z>>2];f[z>>2]=j;f[(f[L>>2]|0)+(g<<2)>>2]=z;e=f[j>>2]|0;if(!e)break;e=f[e+4>>2]|0;g=k+-1|0;do if(!(g&k))e=e&g;else{if(e>>>0>>0)break;e=(e>>>0)%(k>>>0)|0}while(0);f[(f[L>>2]|0)+(e<<2)>>2]=j}else{q=f[H>>2]|0;f[q>>2]=f[e>>2];f[e>>2]=q}while(0);f[B>>2]=(f[B>>2]|0)+1}x=0;e=ia(132,M|0,F|0)|0;q=x;x=0;if(q&1){C=100;break f}e=f[e>>2]|0;x=0;g=ia(187,D|0,F|0)|0;q=x;x=0;if(q&1){C=100;break f}if(e>>>0>(f[g>>2]|0)>>>0){C=99;break f}}r=r+8|0}}while(0);t=t+4|0}do if((C|0)==52){e=L+8|0;while(1){e=f[e>>2]|0;if(!e)break;x=0;ta(487,f[(f[e+8>>2]|0)+36>>2]|0);H=x;x=0;if(H&1){C=113;break}}if((C|0)==113){e=Ia()|0;break}if(!((b[a+16>>0]|0)==0|(f[B>>2]|0)==0)?(x=0,va(165,L|0,d|0,c|0),H=x,x=0,H&1):0){e=Ia()|0;break}x=0;e=ka(34,f[I>>2]|0,f[J>>2]|0,a|0,M|0)|0;H=x;x=0;if(H&1){e=Ia()|0;break}else{rN(I,e,f[J>>2]|0);e=(f[M+12>>2]|0)!=0;NQa(L);NQa(M);break e}}else if((C|0)==58)e=Ia()|0;else if((C|0)==84){e=Ia()|0;g=f[H>>2]|0;f[H>>2]=0;if(g|0)ubb(g);C=103}else if((C|0)==99){x=0;wa(71,109819,109872,327,109898);x=0;e=Ia()|0;C=101}else if((C|0)==100){e=Ia()|0;C=101}else if((C|0)==102){e=Ia()|0;C=103}while(0);if((C|0)==101)C=107;else if((C|0)==103)C=107;NQa(L);NQa(M);break d}e=Ia()|0;Tca(H);break d}while(0);iCa(N);u=K;return e|0}else if((C|0)==28){e=Ia()|0;g=f[M>>2]|0;f[M>>2]=0;if(g|0)ubb(g);C=41}else if((C|0)==40){e=Ia()|0;C=41}while(0);iCa(N);Ua(e|0);return 0}function nd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;G=u;u=u+176|0;H=G+160|0;l=G+156|0;J=G+8|0;D=G+152|0;k=G;if((b[130816]|0)==0?PWa(130816)|0:0){E=SAa()|0;f[33180]=E}a:do if((b[a+40>>0]|0)==0?(b[a+20>>0]|0)!=0|(f[33180]|0)!=0:0){E=(b[a+22>>0]|0)==0?0:2;c=yCa(134176,79545)|0;ZXa(H,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[H>>2]|0,134880)|0;C=x;x=0;if(!(C&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,C=x,x=0,!(C&1)):0){JCa(H);Wq(c,e)|0;du(c)|0;g=a+8|0;h=f[g>>2]|0;i=a+12|0;j=f[i>>2]|0;C=0;e=h;while(1){if((e|0)==(j|0))break;c=f[e>>2]|0;d=b[c+4+11>>0]|0;if(d<<24>>24<0)c=f[c+8>>2]|0;else c=d&255;C=C>>>0>>0?c:C;e=e+4|0}if((f[33180]|0)>2){d1a(l,79576);Uh(f[l>>2]|0,f[a>>2]|0);B=a;h=f[g>>2]|0;j=f[i>>2]|0}else B=a;k=J+64|0;l=J+8|0;A=J+12|0;o=J+4|0;p=J+64|0;q=J+136|0;r=J+140|0;s=J+44|0;t=J+56|0;v=J+60|0;w=J+8|0;z=a+36|0;m=0.0;b:while(1){if((h|0)==(j|0)){d=20;break}i=f[h>>2]|0;f[l>>2]=39904;f[J>>2]=31588;f[k>>2]=31608;f[o>>2]=0;Gaa(p,A);f[q>>2]=0;f[r>>2]=-1;f[J>>2]=39884;f[k>>2]=39924;f[l>>2]=39904;Sra(A);f[A>>2]=39940;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[s+(c<<2)>>2]=0;c=c+1|0}f[t>>2]=0;f[v>>2]=24;if((f[33180]|0)==2?(x=0,ia(127,f[B>>2]|0,w|0)|0,y=x,x=0,y&1):0){d=29;break}x=0;c=ia(62,134176,79652)|0;y=x;x=0;if(y&1){d=29;break}y=i+4|0;x=0;c=ia(84,c|0,y|0)|0;g=x;x=0;if(g&1){d=29;break}x=0;ia(62,c|0,79682)|0;g=x;x=0;if(g&1){d=29;break}e=y+11|0;g=i+8|0;d=0;while(1){c=b[e>>0]|0;if(c<<24>>24<0)c=f[g>>2]|0;else c=c&255;if(d>>>0>=(C-c|0)>>>0)break;x=0;ia(71,134176,32)|0;c=x;x=0;if(c&1){d=41;break b}d=d+1|0}e=hT()|0;g=I;x=0;c=ga(f[(f[i>>2]|0)+20>>2]|0,i|0)|0;d=x;x=0;if(d&1){d=45;break}c:do if(!c){x=0;ua(1280,a|0,i|0);i=x;x=0;if(i&1){d=45;break b}}else{c=f[B>>2]|0;d=f[c+40>>2]|0;c=f[c+36>>2]|0;while(1){if((c|0)==(d|0))break c;x=0;va(115,a|0,i|0,f[c>>2]|0);K=x;x=0;if(K&1){d=48;break b}c=c+4|0}}while(0);c=hT()|0;c=NRa(c|0,I|0,e|0,g|0)|0;n=(+(c>>>0)+4294967296.0*+(I|0))/1.0e9;x=0;c=ha(1,134176,+n)|0;K=x;x=0;if(K&1){d=69;break}x=0;d=ia(62,c|0,79609)|0;K=x;x=0;if(K&1){d=69;break}ZXa(H,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[H>>2]|0,134880)|0;K=x;x=0;if(K&1){d=54;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;K=x;x=0;if(K&1){d=54;break}JCa(H);x=0;ia(79,d|0,c|0)|0;K=x;x=0;if(K&1){d=69;break}x=0;ga(227,d|0)|0;K=x;x=0;if(K&1){d=69;break}m=m+n;x=0;ia(62,134176,79687)|0;K=x;x=0;if(K&1){d=69;break}x=0;c=ja(65,f[B>>2]|0,f[z>>2]|0,E|0)|0;K=x;x=0;if(K&1){d=72;break}if(!c){d=60;break}if((f[33180]|0)>2){x=0;ua(83,D|0,y|0);K=x;x=0;if(K&1){d=69;break}x=0;ua(1281,f[D>>2]|0,f[B>>2]|0);K=x;x=0;if(K&1){d=69;break}}nHa(J);h=h+4|0}d:do if((d|0)==20){c=yCa(Bm(yCa(134176,79583)|0,m)|0,79609)|0;ZXa(H,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[H>>2]|0,134880)|0;K=x;x=0;if(!(K&1)?(x=0,F=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,K=x,x=0,!(K&1)):0){JCa(H);Wq(c,F)|0;du(c)|0;yCa(134176,79619)|0;if(nk(f[B>>2]|0,f[z>>2]|0,E)|0){d=101;break a}wQa(f[B>>2]|0);yCa(134176,79905)|0;hb()}K=Ia()|0;JCa(H);Ua(K|0)}else if((d|0)==29)c=Ia()|0;else if((d|0)==41)c=Ia()|0;else if((d|0)==45)c=Ia()|0;else if((d|0)==48)c=Ia()|0;else if((d|0)==54){c=Ia()|0;JCa(H);d=71}else if((d|0)==60){x=0;ta(468,f[B>>2]|0);K=x;x=0;e:do if(!(K&1)){f:do if((f[33180]|0)<=1){x=0;c=ia(62,134176,79716)|0;K=x;x=0;if(K&1)break e;x=0;c=ia(84,c|0,y|0)|0;K=x;x=0;if(K&1)break e;x=0;ia(62,c|0,79777)|0;K=x;x=0;if(K&1)break e}else{x=0;c=ia(62,134176,79716)|0;K=x;x=0;if(K&1)break e;x=0;c=ia(84,c|0,y|0)|0;K=x;x=0;if(K&1)break e;x=0;c=ia(62,c|0,79728)|0;K=x;x=0;if(K&1)break e;x=0;ua(107,H|0,A|0);K=x;x=0;if(K&1)c=Ia()|0;else{x=0;c=ia(84,c|0,H|0)|0;K=x;x=0;do if(!(K&1)){x=0;ia(62,c|0,112640)|0;K=x;x=0;if(K&1)break;HTa(H);break f}while(0);c=Ia()|0;HTa(H)}break d}while(0);x=0;sa(5);x=0}while(0);c=Ia()|0;d=71}else if((d|0)==69){c=Ia()|0;d=71}else if((d|0)==72)c=Ia()|0;while(0);nHa(J);d=102;break}K=Ia()|0;JCa(H);Ua(K|0)}else d=86;while(0);g:do if((d|0)==86){f[H>>2]=0;g=H+4|0;f[g>>2]=0;h=H+8|0;f[h>>2]=0;f[J>>2]=H;f[J+4>>2]=a;i=f[a+12>>2]|0;e=f[a+8>>2]|0;h:while(1){if((e|0)==(i|0)){d=88;break}c=f[e>>2]|0;f[k>>2]=c;j=c;x=0;d=ga(f[(f[c>>2]|0)+20>>2]|0,c|0)|0;K=x;x=0;if(K&1){d=94;break}do if(d){c=f[g>>2]|0;if((c|0)==(f[h>>2]|0)){x=0;ua(1282,H|0,k|0);K=x;x=0;if(K&1){d=94;break h}else break}else{f[c>>2]=j;f[g>>2]=(f[g>>2]|0)+4;break}}else{x=0;ta(469,J|0);K=x;x=0;if(K&1){d=94;break h}x=0;ua(1280,a|0,c|0);K=x;x=0;if(K&1){d=94;break h}}while(0);e=e+4|0}do if((d|0)==88){x=0;ta(469,J|0);K=x;x=0;if(K&1){c=Ia()|0;break}else{uSa(H);d=101;break g}}else if((d|0)==94)c=Ia()|0;while(0);uSa(H);d=102}while(0);if((d|0)==101){u=G;return}else if((d|0)==102)Ua(c|0)}function od(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;s=u;u=u+80|0;q=s+76|0;e=s+68|0;l=s+72|0;m=s+64|0;p=s+52|0;n=s+40|0;k=s+28|0;o=s+16|0;r=s+12|0;t=s;aAa(e);x=0;d=ia(69,c|0,1)|0;w=x;x=0;a:do if(!(w&1)?(x=0,g=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){E1a(q,g);f[f[e>>2]>>2]=f[q>>2];x=0;d=ia(69,c|0,2)|0;w=x;x=0;b:do if(!(w&1)){c:do if(b8a(b[d>>0]|0)|0){x=0;g=ia(69,c|0,2)|0;w=x;x=0;do if(!(w&1)){x=0;d=ia(69,g|0,1)|0;w=x;x=0;if(!(w&1)?(x=0,h=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){E1a(q,h);f[(f[e>>2]|0)+4>>2]=f[q>>2];x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if($1a(d,f[33111]|0)|0){g=f[e>>2]|0;f[g+8>>2]=0;h=g;break c}x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if($1a(d,f[33108]|0)|0){g=f[e>>2]|0;f[g+8>>2]=2;h=g;break c}x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if($1a(d,f[33103]|0)|0){g=f[e>>2]|0;f[g+8>>2]=1;h=g;break c}x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if(!($1a(d,f[32999]|0)|0)){h=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;w=h7a(94013)|0;x=0;va(87,n|0,94013,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,h|0,n|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;HTa(n);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}i=f[e>>2]|0;f[i+8>>2]=3;d=f[a>>2]|0;g=f[i+4>>2]|0;f[l>>2]=g;f[q>>2]=f[l>>2];if(!(bna(d,q)|0)){h=i;g=i;break c}f[m>>2]=g;x=0;f[q>>2]=f[m>>2];d=ia(165,d|0,q|0)|0;w=x;x=0;if(w&1)break;if(!(b[d+12>>0]|0)){g=f[e>>2]|0;h=g;break c}h=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;w=h7a(93808)|0;x=0;va(87,p|0,93808,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,h|0,p|0,f[c+28>>2]|0,f[c+32>>2]|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;HTa(p);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}g=Ia()|0;break a}while(0);g=Ia()|0;break a}else{x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;if(!(lRa(d)|0)){x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if((((Bbb(b[d>>0]|0)|0)<<24>>24)+-48|0)>>>0>=10){x=0;d=ia(69,c|0,3)|0;w=x;x=0;if(!(w&1)?(x=0,i=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){E1a(q,i);f[(f[e>>2]|0)+4>>2]=f[q>>2];x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if($1a(d,f[33108]|0)|0){if(b[(f[a>>2]|0)+112>>0]|0){g=f[e>>2]|0;f[g+8>>2]=2;h=g;break}h=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;w=h7a(94028)|0;x=0;va(87,k|0,94028,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,h|0,k|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;HTa(k);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if($1a(d,f[33103]|0)|0){g=f[e>>2]|0;f[g+8>>2]=1;h=g;break}x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if($1a(d,f[32999]|0)|0){g=f[e>>2]|0;f[g+8>>2]=3;h=g;break}h=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;w=h7a(94058)|0;x=0;va(87,o|0,94058,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,h|0,o|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;HTa(o);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}g=Ia()|0;break a}}x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(!(w&1)?(x=0,j=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){E1a(q,j);g=f[e>>2]|0;f[g+4>>2]=f[q>>2];f[g+8>>2]=0;h=g;break}g=Ia()|0;break a}while(0);d=f[a>>2]|0;f[r>>2]=f[h>>2];f[q>>2]=f[r>>2];if(!(cna(d,q)|0)){f[e>>2]=0;x=0;ua(70,d|0,g|0);w=x;x=0;if(w&1)break;d=f[e>>2]|0;f[e>>2]=0;if(d|0)ubb(d);u=s;return}h=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;w=h7a(93685)|0;x=0;va(87,t|0,93685,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,h|0,t|0,f[c+28>>2]|0,f[c+32>>2]|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;HTa(t);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}while(0);g=Ia()|0}else v=12;while(0);if((v|0)==12)g=Ia()|0;d=f[e>>2]|0;f[e>>2]=0;if(d|0)ubb(d);Ua(g|0)}function pd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;t=w+24|0;r=w+8|0;k=w;o=a+4|0;n=f[o>>2]|0;p=n+-12|0;az(d);h=f[d>>2]|0;g=b[h>>0]|0;a:do if(g<<24>>24!=0?!(Opa(e,g)|0):0){l=n+-8|0;g=f[l>>2]|0;m=(g|0)==(f[p>>2]|0);do if(!(b[c>>0]|0))if((f[n+-4>>2]|0)==(g|0)){sF(p,c);break}else{n=c;c=f[n+4>>2]|0;p=g;f[p>>2]=f[n>>2];f[p+4>>2]=c;f[l>>2]=(f[l>>2]|0)+8;break}else{Dh(r,h);if((f[r+12>>2]|0)!=1){g=f[d>>2]|0;switch(b[g>>0]|0){case 40:{mTa(t,Yw(a,IIa(c)|0,d)|0);j=t;i=f[j>>2]|0;j=f[j+4>>2]|0;s=c;f[s>>2]=i;f[s+4>>2]=j;break}case 91:{mTa(t,gD(a,IIa(c)|0,d)|0);j=t;i=f[j>>2]|0;j=f[j+4>>2]|0;s=c;f[s>>2]=i;f[s+4>>2]=j;break}default:{zX(66544,g);hb()}}s=k;f[s>>2]=i;f[s+4>>2]=j;f[t>>2]=f[k>>2];f[t+4>>2]=f[k+4>>2];s=pd(a,t,d,e)|0;break a}g=f[l>>2]|0;h=n+-4|0;if((g|0)==(f[h>>2]|0))sF(p,c);else{k=c;n=f[k+4>>2]|0;c=g;f[c>>2]=f[k>>2];f[c+4>>2]=n;f[l>>2]=(f[l>>2]|0)+8}f[d>>2]=(f[d>>2]|0)+(f[r+8>>2]|0);cSa(t,f[r>>2]|0);g=f[l>>2]|0;if(g>>>0<(f[h>>2]|0)>>>0){n=t;c=f[n+4>>2]|0;p=g;f[p>>2]=f[n>>2];f[p+4>>2]=c;f[l>>2]=(f[l>>2]|0)+8}else sF(p,t)}while(0);g=Rm(a,d,e)|0;if(m){e=f[o>>2]|0;d=e+-12|0;a=f[33197]|0;e=e+-8|0;n=f[33196]|0;b:while(1){if((n|0)==(a|0))break;c:do if(!(b[n+32>>0]|0)){m=n+36|0;g=0;while(1){h=f[d>>2]|0;if((g|0)>=((f[e>>2]|0)-h>>3|0))break c;h=h+(g<<3)|0;if(!(b[h>>0]|0)){j=kJa(h)|0;f[t>>2]=j;do if(lBa(n,t)|0){h=f[m>>2]|0;i=(g|0)>0;if(i&(h|0)==0){h=f[d>>2]|0;if((g|0)>=(((f[e>>2]|0)-h>>3)+-1|0))break;l=g+-1|0;i=IIa(h+(l<<3)|0)|0;mTa(r,zha(i,j,IIa((f[d>>2]|0)+(g+1<<3)|0)|0)|0);i=r;j=f[i+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[i>>2];f[h+4>>2]=j;h=f[d>>2]|0;j=h+(g<<3)+8|0;i=j+8|0;k=(f[e>>2]|0)-i|0;if(k){fia(j|0,i|0,k|0)|0;h=f[d>>2]|0}i=j+(k>>3<<3)|0;f[e>>2]=i;g=h+(g<<3)+-8|0;h=g+8|0;i=i-h|0;if(i|0)fia(g|0,h|0,i|0)|0;f[e>>2]=g+(i>>3<<3);g=l;break}if((h|0)==1?(p=f[d>>2]|0,q=p,(g|0)<(((f[e>>2]|0)-p>>3)+-1|0)):0){if(i?b[q+(g+-1<<3)>>0]|0:0)break;mTa(r,EX(j,IIa(q+(g+1<<3)|0)|0)|0);j=r;i=f[j+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[j>>2];f[h+4>>2]=i;h=(f[d>>2]|0)+(g<<3)+8|0;i=h+8|0;j=(f[e>>2]|0)-i|0;if(j|0)fia(h|0,i|0,j|0)|0;f[e>>2]=h+(j>>3<<3);g=g+-2|0;g=(g|0)>0?g:0}}while(0)}g=g+1|0}}else{l=n+36|0;k=(f[e>>2]|0)-(f[d>>2]|0)>>3;while(1){g=k+-1|0;if((g|0)<=-1)break c;h=(f[d>>2]|0)+(g<<3)|0;if(!(b[h>>0]|0)){j=kJa(h)|0;f[t>>2]=j;d:do if(lBa(n,t)|0){h=f[l>>2]|0;i=(g|0)>0;if(i&(h|0)==0){h=f[d>>2]|0;if((g|0)>=(((f[e>>2]|0)-h>>3)+-1|0))break;i=IIa(h+(k+-2<<3)|0)|0;mTa(r,zha(i,j,IIa((f[d>>2]|0)+(k<<3)|0)|0)|0);i=r;j=f[i+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[i>>2];f[h+4>>2]=j;h=f[d>>2]|0;j=h+(k<<3)|0;i=j+8|0;k=(f[e>>2]|0)-i|0;if(k){fia(j|0,i|0,k|0)|0;h=f[d>>2]|0}j=j+(k>>3<<3)|0;f[e>>2]=j;h=h+(g<<3)+-8|0;i=h+8|0;j=j-i|0;if(j|0)fia(h|0,i|0,j|0)|0;f[e>>2]=h+(j>>3<<3);break}switch(h|0){case 1:break;case 3:{if(_1a(j,f[33219]|0)|0)break d;h=f[d>>2]|0;if(!((g|0)>2?(g|0)<(((f[e>>2]|0)-h>>3)+-1|0):0)){v=51;break b}if(_1a(kJa(h+(k+-3<<3)|0)|0,f[33220]|0)|0)break d;p=k+-4|0;o=IIa((f[d>>2]|0)+(p<<3)|0)|0;mTa(r,ZZ(o,IIa((f[d>>2]|0)+(k+-2<<3)|0)|0,IIa((f[d>>2]|0)+(k<<3)|0)|0)|0);o=r;c=f[o+4>>2]|0;p=(f[d>>2]|0)+(p<<3)|0;f[p>>2]=f[o>>2];f[p+4>>2]=c;g=(f[d>>2]|0)+(g<<3)|0;_ca(d,g+-16|0,g+16|0);g=(f[e>>2]|0)-(f[d>>2]|0)>>3;break d}default:break d}p=f[d>>2]|0;h=p;if((g|0)<(((f[e>>2]|0)-p>>3)+-1|0)){if(i?b[h+(k+-2<<3)>>0]|0:0)break;mTa(r,EX(j,IIa(h+(k<<3)|0)|0)|0);j=r;i=f[j+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[j>>2];f[h+4>>2]=i;h=(f[d>>2]|0)+(k<<3)|0;i=h+8|0;j=(f[e>>2]|0)-i|0;if(j|0)fia(h|0,i|0,j|0)|0;f[e>>2]=h+(j>>3<<3)}}while(0)}k=g}}while(0);n=n+40|0}if((v|0)==51)Ca(66570,65740,803,66604);g=f[d>>2]|0;if(((f[e>>2]|0)-g|0)==8){s=IIa(g)|0;f[e>>2]=f[d>>2];break}else Ca(66620,65740,830,66604)}else s=g}else v=3;while(0);if((v|0)==3){g=n+-8|0;h=f[g>>2]|0;do if((h|0)!=(f[p>>2]|0))if((f[n+-4>>2]|0)==(h|0)){sF(p,c);break}else{s=c;t=f[s+4>>2]|0;v=h;f[v>>2]=f[s>>2];f[v+4>>2]=t;f[g>>2]=(f[g>>2]|0)+8;break}while(0);s=IIa(c)|0}u=w;return s|0}function qd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=u;u=u+96|0;v=A;w=A+80|0;y=A+72|0;E=A+56|0;C=A+44|0;D=A+32|0;B=A+12|0;z=A+8|0;r=fQa(b)|0;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;x=0;ua(471,E|0,r|0);t=x;x=0;if(t&1)b=Ia()|0;else{f[C>>2]=0;s=C+4|0;f[s>>2]=0;t=C+8|0;f[t>>2]=0;f[D>>2]=0;n=D+4|0;f[n>>2]=0;f[D+8>>2]=0;o=a+40|0;d=a+44|0;x=0;ua(472,D|0,(f[d>>2]|0)-(f[o>>2]|0)>>2|0);q=x;x=0;if(q&1)b=Ia()|0;else{f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=1065353216;c=0;while(1){b=f[o>>2]|0;if(c>>>0>=(f[d>>2]|0)-b>>2>>>0){h=5;break}e=f[D>>2]|0;f[v>>2]=f[b+(c<<2)>>2];x=0;b=ia(101,B|0,v|0)|0;q=x;x=0;if(q&1){h=10;break}f[b>>2]=e+(c*40|0);c=c+1|0}do if((h|0)==5){k=a+36|0;l=v+4|0;q=0;j=0;a:while(1){b=f[n>>2]|0;p=f[D>>2]|0;m=p;if(j>>>0>=((b-p|0)/40|0)>>>0){h=12;break}e=m+(j*40|0)|0;h=(f[o>>2]|0)+(j<<2)|0;b=f[h>>2]|0;i=(b|0)==(f[k>>2]|0)?e:q;f[e>>2]=-1;_8(m+(j*40|0)+4|0,b);b=f[h>>2]|0;e=b+44|0;c=m+(j*40|0)+16|0;b=b+48|0;x=0;ua(473,c|0,(f[b>>2]|0)-(f[e>>2]|0)>>2|0);q=x;x=0;if(q&1){h=23;break}g=f[b>>2]|0;d=f[c>>2]|0;b=f[e>>2]|0;while(1){if((b|0)==(g|0))break;x=0;c=ia(102,B|0,f[b>>2]|0)|0;q=x;x=0;if(q&1){h=22;break a}f[d>>2]=c;d=d+4|0;b=b+4|0}e=m+(j*40|0)+28|0;x=0;ua(474,e|0,f[(f[h>>2]|0)+24>>2]|0);q=x;x=0;if(q&1){h=23;break}g=m+(j*40|0)+32|0;d=m+(j*40|0)+36|0;b=(f[h>>2]|0)+20|0;while(1){b=f[b>>2]|0;if(!b)break;q=b+8|0;c=f[q+4>>2]|0;f[v>>2]=f[q>>2];f[l>>2]=c;c=f[g>>2]|0;if(c>>>0>=(f[d>>2]|0)>>>0){x=0;ua(475,e|0,v|0);q=x;x=0;if(q&1){h=29;break a}}else{m=v;p=f[m+4>>2]|0;q=c;f[q>>2]=f[m>>2];f[q+4>>2]=p;f[g>>2]=(f[g>>2]|0)+8}}q=i;j=j+1|0}if((h|0)==12){p=b;if(!q){x=0;wa(71,72404,72430,127,72454);x=0;b=Ia()|0;break}o=a+116|0;b=0;b:while(1){if((m|0)==(p|0)){h=33;break}k=m+4|0;c=(f[m+8>>2]|0)-(f[k>>2]|0)>>2;while(1){j=c+-1|0;if((c|0)<=0)break;c=f[(f[k>>2]|0)+(j<<2)>>2]|0;d=N_a(c)|0;f[w>>2]=d;h=d;do if(d){c=f[d+8>>2]|0;d=f[E>>2]|0;e=d+(c*12|0)+4|0;g=f[e>>2]|0;if((g|0)==(f[d+(c*12|0)+8>>2]|0)){x=0;ua(476,d+(c*12|0)|0,w|0);a=x;x=0;if(a&1){h=41;break b}else break}else{f[g>>2]=h;f[e>>2]=(f[e>>2]|0)+4;break}}else{x=0;d=ga(257,c|0)|0;a=x;x=0;if(a&1){h=46;break b}f[y>>2]=d;g=f[d+8>>2]|0;h=f[E>>2]|0;e=h+(g*12|0)|0;g=h+(g*12|0)+4|0;h=f[g>>2]|0;c=f[e>>2]|0;while(1){if((c|0)==(h|0))break;f[z>>2]=f[c>>2];x=0;i=ia(103,f[o>>2]|0,z|0)|0;a=x;x=0;if(a&1){h=50;break b}x=0;wa(85,v|0,i|0,d|0,y|0);a=x;x=0;if(a&1){h=50;break b}c=c+4|0}f[g>>2]=f[e>>2]}while(0);c=j}n=m;l=0;while(1){if(l>>>0>=r>>>0)break;k=f[E>>2]|0;j=k+(l*12|0)|0;k=k+(l*12|0)+4|0;if((f[j>>2]|0)!=(f[k>>2]|0)){f[v>>2]=m;c=f[s>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(477,C|0,v|0);a=x;x=0;if(a&1){h=68;break b}}else{f[c>>2]=n;f[s>>2]=(f[s>>2]|0)+4}while(1){c=f[s>>2]|0;if((f[C>>2]|0)==(c|0))break;d=c+-4|0;c=f[d>>2]|0;f[s>>2]=d;d=f[c+16>>2]|0;i=f[c+20>>2]|0;c:do if((d|0)==(i|0)){if((c|0)==(q|0)){d=f[k>>2]|0;c=f[j>>2]|0;while(1){if((c|0)==(d|0))break c;f[v>>2]=f[c>>2];x=0;e=ia(103,f[o>>2]|0,v|0)|0;a=x;x=0;if(a&1){h=72;break b}f[y>>2]=0;x=0;wa(86,w|0,e|0,0,y|0);a=x;x=0;if(a&1){h=73;break b}c=c+4|0}}}else while(1){if((d|0)==(i|0))break c;e=f[d>>2]|0;f[v>>2]=e;d:do if((f[e>>2]|0)!=(b|0)){f[e>>2]=b;g=f[e+32>>2]|0;c=f[e+28>>2]|0;while(1){if((c|0)==(g|0)){h=79;break}if(iTa(l,f[c>>2]|0)|0){h=82;break}c=c+8|0}do if((h|0)!=79)if((h|0)==82){if((c|0)==(g|0))break;h=f[k>>2]|0;e=c+4|0;c=f[j>>2]|0;while(1){if((c|0)==(h|0))break d;f[w>>2]=f[c>>2];x=0;g=ia(103,f[o>>2]|0,w|0)|0;a=x;x=0;if(a&1){h=89;break b}x=0;wa(85,y|0,g|0,f[e>>2]|0,e|0);a=x;x=0;if(a&1){h=89;break b}c=c+4|0}}while(0);c=f[s>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(478,C|0,v|0);a=x;x=0;if(a&1){h=85;break b}else break}else{f[c>>2]=e;f[s>>2]=(f[s>>2]|0)+4;break}}while(0);d=d+4|0}while(0)}f[k>>2]=f[j>>2];b=b+1|0}l=l+1|0}m=m+40|0}if((h|0)==33){NQa(B);z3(D);uSa(C);M9(E);u=A;return}else if((h|0)==41)b=Ia()|0;else if((h|0)==46){b=Ia()|0;h=51}else if((h|0)==50){b=Ia()|0;h=51}else if((h|0)==68){b=Ia()|0;break}else if((h|0)==72){b=Ia()|0;h=74}else if((h|0)==73){b=Ia()|0;h=74}else if((h|0)==85){b=Ia()|0;h=94}else if((h|0)==89){b=Ia()|0;h=94}if((h|0)!=51)if((h|0)==74)break;else if((h|0)==94)break;break}else if((h|0)==22)b=Ia()|0;else if((h|0)==23)b=Ia()|0;else if((h|0)==29){b=Ia()|0;break}}else if((h|0)==10)b=Ia()|0;while(0);NQa(B)}z3(D);uSa(C)}M9(E);Ua(b|0)}function rd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;g=f[c>>2]|0;f[d>>2]=g;e=f[g>>2]|0;a:do if(!(b[a+104>>0]|0))do switch(e|0){case 23:break a;case 1:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);aXa(f[d>>2]|0)|0;MW(c,f[d>>2]|0,g,0);break a}case 2:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 3:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 4:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 5:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 6:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 7:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 8:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 9:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);aXa(f[d>>2]|0)|0;MW(c,f[d>>2]|0,g,0);break a}case 10:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 11:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 12:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 13:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 14:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 15:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 16:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 17:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 18:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 19:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 20:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 21:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 22:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);aXa(f[d>>2]|0)|0;MW(c,f[d>>2]|0,g,0);break a}case 25:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 24:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 26:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}case 27:{c=a+44|0;g=e_(a+92|0,d)|0;g=f[g>>2]|0;Moa(c,f[d>>2]|0);c2a(f[d>>2]|0);MW(c,f[d>>2]|0,g,0);break a}default:hb()}while(0);else{if(!(vab(e)|0)){Ud(a,c);break}a=a+16|0;rS(a,2861,c);e=(qSa(g)|0)+16|0;if(f[e>>2]|0){rS(a,2860,(qSa(g)|0)+16|0);rS(a,2862,c)}rS(a,2860,(qSa(g)|0)+12|0);rS(a,2863,c);rS(a,2860,(qSa(g)|0)+8|0)}while(0);u=h;return}function sd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0;y=u;u=u+112|0;s=y;k=y+96|0;i=y+88|0;j=y+72|0;g=y+68|0;o=y+92|0;q=y+76|0;m=y+64|0;p=y+52|0;n=y+40|0;t=y+36|0;z=y+24|0;v=y+20|0;w=y+16|0;e=f[a>>2]|0;h=e+112|0;do if(!(b[h>>0]|0)){b[h>>0]=1;b[e+113>>0]=d&1;b[e+114>>0]=0;if(lRa(Or(c,1)|0)|0){E1a(s,jF(Or(c,1)|0)|0);f[(f[a>>2]|0)+88>>2]=f[s>>2];e=2}else e=1;tab(i);tab(j);k=Or(c,e)|0;a:do if(b8a(b[k>>0]|0)|0){h=Or(c,e)|0;k=jF(Or(h,0)|0)|0;b:do if($1a(k,f[33105]|0)|0){aAa(g);x=0;h=ia(69,h|0,1)|0;p=x;x=0;do if(!(p&1)?(x=0,l=ga(295,h|0)|0,p=x,x=0,!(p&1)):0){E1a(s,l);h=f[g>>2]|0;p=f[s>>2]|0;f[h>>2]=p;f[h+4>>2]=f[(f[a>>2]|0)+88>>2];f[h+8>>2]=2;d=f[a>>2]|0;f[o>>2]=p;f[s>>2]=f[o>>2];if(!(cna(d,s)|0)){f[g>>2]=0;x=0;ua(70,d|0,h|0);q=x;x=0;if(q&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;break b}}i=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;z=h7a(93685)|0;x=0;va(87,q|0,93685,z|0);z=x;x=0;if(!(z&1)){x=0;wa(138,i|0,q|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)d=1;else{x=0;va(98,i|0,32200,457);x=0;d=0}e=Ia()|0;HTa(q);if(!d){r=25;break}}else e=Ia()|0;La(i|0);r=25}else r=18;while(0);if((r|0)==18){e=Ia()|0;h=f[g>>2]|0;r=25}if((r|0)==25){f[g>>2]=0;if(h)ubb(h)}r=78;break a}else{q=jF(Or(h,0)|0)|0;if(!($1a(q,f[33104]|0)|0)){r=jF(Or(h,0)|0)|0;fNa(s,94134,1);if($1a(r,f[s>>2]|0)|0){b[(f[a>>2]|0)+114>>0]=1;kw(a,h,1)|0;break}if(XXa(h)|0?(z=jF(Or(h,0)|0)|0,!(_1a(z,f[33104]|0)|0)):0){h=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=h7a(94141)|0;x=0;va(87,n|0,94141,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,n|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(n);if(!g){r=78;break a}}else e=Ia()|0;La(h|0);r=78;break a}wn(a,Or(c,e)|0,1,0);c=f[a>>2]|0;r=f[c+100>>2]|0;rHa(c+92|0,(f[r+8>>2]|0)-(f[r+4>>2]|0)|0,0)|0;r=77;break a}E1a(s,jF(Or(h,1)|0)|0);q=f[s>>2]|0;f[i>>2]=q;E1a(s,jF(Or(h,2)|0)|0);h=f[s>>2]|0;f[j>>2]=h;kOa(g);i=f[g>>2]|0;f[i+12>>2]=2;f[i+4>>2]=q;f[i+8>>2]=h;f[i>>2]=q;h=f[a>>2]|0;f[m>>2]=q;f[s>>2]=f[m>>2];do if(!(ana(h,s)|0)){f[g>>2]=0;x=0;ua(64,h|0,i|0);r=x;x=0;if(r&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;break b}}else{d=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;z=h7a(93727)|0;x=0;va(87,p|0,93727,z|0);z=x;x=0;if(!(z&1)){x=0;wa(138,d|0,p|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)h=1;else{x=0;va(98,d|0,32200,457);x=0;h=0}e=Ia()|0;HTa(p);if(h)r=36}else{e=Ia()|0;r=36}if((r|0)==36)La(d|0);f[g>>2]=0;if(i)ubb(i)}while(0);r=78;break a}while(0);e=e+1|0;r=54}else r=54;while(0);c:do if((r|0)==54){if(!(b[(f[a>>2]|0)+114>>0]|0))e=kw(a,c,e)|0;m=a+4|0;n=z+4|0;o=z+8|0;while(1){if(e>>>0>=(XXa(c)|0)>>>0){r=77;break c}h=Or(c,e)|0;Kab(g);r=jF(Or(h,0)|0)|0;if($1a(r,f[33107]|0)|0){rHa(g,0,0)|0;h=Or(h,1)|0}else{r=tB(Or(h,1)|0,94159)|0;f[g>>2]=r;h=Or(h,2)|0}h=jF(h)|0;l=ZVa(f[m>>2]|0)|0;f[t>>2]=l;f[l+4>>2]=1;m$a(s,Bbb(f[g>>2]|0)|0);d=l+8|0;f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];d=bV(h)|0;if(!d){h=f[a>>2]|0;f[z>>2]=0;d=h+104|0;i=f[d>>2]|0;if(i>>>0<(f[h+108>>2]|0)>>>0){cLa(s,0,0);TZ(i,l,135337,f[s>>2]|0);f[d>>2]=(f[d>>2]|0)+16}else vy(h+100|0,t,z)}else{f[z>>2]=0;f[n>>2]=0;f[o>>2]=0;x=0;va(141,h|0,d|0,z|0);r=x;x=0;if(r&1){r=69;break}h=f[a>>2]|0;d=f[z>>2]|0;f[v>>2]=d;i=(f[n>>2]|0)-d|0;f[w>>2]=i;j=h+104|0;k=f[j>>2]|0;if(k>>>0>=(f[h+108>>2]|0)>>>0){x=0;wa(140,h+100|0,t|0,v|0,w|0);r=x;x=0;if(r&1){r=70;break}}else{x=0;va(85,s|0,i|0,0);r=x;x=0;if(r&1){r=70;break}x=0;wa(139,k|0,l|0,d|0,f[s>>2]|0);r=x;x=0;if(r&1){r=70;break}f[j>>2]=(f[j>>2]|0)+16}uSa(z)}e=e+1|0}if((r|0)==69)e=Ia()|0;else if((r|0)==70)e=Ia()|0;uSa(z);r=78}while(0);if((r|0)==77){u=y;return}else if((r|0)==78)break}else{h=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;c=h7a(94116)|0;x=0;va(87,k|0,94116,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,k|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(k);if(!g)break}else e=Ia()|0;La(h|0)}while(0);Ua(e|0)}function td(a,c,d,e,g,i){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,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=u;u=u+560|0;l=G+32|0;v=G+536|0;F=G;E=F;m=G+540|0;f[v>>2]=0;D=m+12|0;qRa(c)|0;j=I;if((j|0)<0){c=-c;qRa(c)|0;C=1;B=118748;j=I}else{C=(g&2049|0)!=0&1;B=(g&2048|0)==0?((g&1|0)==0?118749:118754):118751}do if(0==0&(j&2146435072|0)==2146435072){F=(i&32|0)!=0;j=C+3|0;t0(a,32,d,j,g&-65537);LWa(a,B,C);LWa(a,c!=c|0.0!=0.0?(F?118775:118779):F?118767:118771,3);t0(a,32,d,j,g^8192)}else{q=+Pab(c,v)*2.0;j=q!=0.0;if(j)f[v>>2]=(f[v>>2]|0)+-1;t=i|32;if((t|0)==97){o=i&32;r=(o|0)==0?B:B+9|0;p=C|2;j=12-e|0;do if(!(e>>>0>11|(j|0)==0)){c=8.0;do{j=j+-1|0;c=c*16.0}while((j|0)!=0);if((b[r>>0]|0)==45){c=-(c+(-q-c));break}else{c=q+c-c;break}}else c=q;while(0);k=f[v>>2]|0;j=(k|0)<0?0-k|0:k;j=lR(j,((j|0)<0)<<31>>31,D)|0;if((j|0)==(D|0)){j=m+11|0;b[j>>0]=48}b[j+-1>>0]=(k>>31&2)+43;n=j+-2|0;b[n>>0]=i+15;k=(e|0)<1;l=(g&8|0)==0;m=F;do{C=~~c;j=m+1|0;b[m>>0]=o|h[28784+C>>0];c=(c-+(C|0))*16.0;if((j-E|0)==1?!(l&(k&c==0.0)):0){b[j>>0]=46;m=m+2|0}else m=j}while(c!=0.0);if((e|0)!=0?(-2-E+m|0)<(e|0):0){k=D;l=n;j=e+2+k-l|0}else{k=D;l=n;j=k-E-l+m|0}D=j+p|0;t0(a,32,d,D,g);LWa(a,r,p);t0(a,48,d,D,g^65536);E=m-E|0;LWa(a,F,E);F=k-l|0;t0(a,48,j-(E+F)|0,0,0);LWa(a,n,F);t0(a,32,d,D,g^8192);j=D;break}k=(e|0)<0?6:e;if(j){j=(f[v>>2]|0)+-28|0;f[v>>2]=j;c=q*268435456.0}else{c=q;j=f[v>>2]|0}A=(j|0)<0?l:l+288|0;l=A;do{y=~~c>>>0;f[l>>2]=y;l=l+4|0;c=(c-+(y>>>0))*1.0e9}while(c!=0.0);y=A;if((j|0)>0){o=A;while(1){n=(j|0)<29?j:29;j=l+-4|0;if(j>>>0>=o>>>0){m=0;do{s=hMa(f[j>>2]|0,0,n|0)|0;s=wOa(s|0,I|0,m|0,0)|0;w=I;m=sYa(s|0,w|0,1e9,0)|0;x=BBa(m|0,I|0,-1e9,-1)|0;x=wOa(s|0,w|0,x|0,I|0)|0;f[j>>2]=x;j=j+-4|0}while(j>>>0>=o>>>0);if(m){x=o+-4|0;f[x>>2]=m;m=x}else m=o}else m=o;a:do if(l>>>0>m>>>0){j=l;while(1){l=j+-4|0;if(f[l>>2]|0){l=j;break a}if(l>>>0>m>>>0)j=l;else break}}while(0);j=(f[v>>2]|0)-n|0;f[v>>2]=j;if((j|0)>0)o=m;else break}}else m=A;if((j|0)<0){e=((k+25|0)/9|0)+1|0;s=(t|0)==102;do{r=0-j|0;r=(r|0)<9?r:9;if(m>>>0>>0){n=(1<>>r;p=0;j=m;do{x=f[j>>2]|0;f[j>>2]=(x>>>r)+p;p=X(x&n,o)|0;j=j+4|0}while(j>>>0>>0);m=(f[m>>2]|0)==0?m+4|0:m;if(p){f[l>>2]=p;l=l+4|0}}else m=(f[m>>2]|0)==0?m+4|0:m;j=s?A:m;l=(l-j>>2|0)>(e|0)?j+(e<<2)|0:l;j=(f[v>>2]|0)+r|0;f[v>>2]=j}while((j|0)<0);s=m}else s=m;if(s>>>0>>0){j=(y-s>>2)*9|0;n=f[s>>2]|0;if(n>>>0>=10){m=10;do{m=m*10|0;j=j+1|0}while(n>>>0>=m>>>0)}}else j=0;v=(t|0)==103;w=(k|0)!=0;m=k-((t|0)==102?0:j)+((w&v)<<31>>31)|0;if((m|0)<(((l-y>>2)*9|0)+-9|0)){x=m+9216|0;m=(x|0)/9|0;e=A+4+(m+-1024<<2)|0;m=x+(X(m,-9)|0)|0;if((m|0)<8){n=10;while(1){n=n*10|0;if((m|0)<7)m=m+1|0;else break}}else n=10;o=f[e>>2]|0;m=(o>>>0)/(n>>>0)|0;r=X(m,n)|0;o=o-r|0;p=(e+4|0)==(l|0);if(!(p&(o|0)==0)){c=(m&1|0)==0?9007199254740992.0:9007199254740994.0;x=n>>>1;q=o>>>0>>0?.5:p&(o|0)==(x|0)?1.0:1.5;if(C){x=(b[B>>0]|0)==45;q=x?-q:q;c=x?-c:c}f[e>>2]=r;if(c+q!=c){x=r+n|0;f[e>>2]=x;if(x>>>0>999999999){n=e;j=s;while(1){m=n+-4|0;f[n>>2]=0;if(m>>>0>>0){j=j+-4|0;f[j>>2]=0}x=(f[m>>2]|0)+1|0;f[m>>2]=x;if(x>>>0>999999999)n=m;else{n=j;break}}}else{m=e;n=s}j=(y-n>>2)*9|0;p=f[n>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else{m=e;n=s}}else{m=e;n=s}x=m+4|0;l=l>>>0>x>>>0?x:l}else n=s;e=0-j|0;b:do if(l>>>0>n>>>0)while(1){m=l+-4|0;if(f[m>>2]|0){x=l;t=1;break b}if(m>>>0>n>>>0)l=m;else{x=m;t=0;break}}else{x=l;t=0}while(0);do if(v){k=k+((w^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){o=i+-1|0;k=k+-1-j|0}else{o=i+-2|0;k=k+-1|0}if(!(g&8)){if(t?(z=f[x+-4>>2]|0,(z|0)!=0):0)if(!((z>>>0)%10|0)){m=0;l=10;do{l=l*10|0;m=m+1|0}while(!((z>>>0)%(l>>>0)|0|0))}else m=0;else m=9;l=((x-y>>2)*9|0)+-9|0;if((o|32|0)==102){i=l-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=l+j-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else o=i;while(0);s=(k|0)!=0;p=s?1:g>>>3&1;r=(o|32|0)==102;if(r){w=0;j=(j|0)>0?j:0}else{l=(j|0)<0?e:j;l=lR(l,((l|0)<0)<<31>>31,D)|0;m=D;if((m-l|0)<2)do{l=l+-1|0;b[l>>0]=48}while((m-l|0)<2);b[l+-1>>0]=(j>>31&2)+43;j=l+-2|0;b[j>>0]=o;w=j;j=m-j|0}j=C+1+k+p+j|0;t0(a,32,d,j,g);LWa(a,B,C);t0(a,48,d,j,g^65536);if(r){p=n>>>0>A>>>0?A:n;r=F+9|0;n=r;o=F+8|0;m=p;do{l=lR(f[m>>2]|0,0,r)|0;if((m|0)==(p|0)){if((l|0)==(r|0)){b[o>>0]=48;l=o}}else if(l>>>0>F>>>0){gH(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}LWa(a,l,n-l|0);m=m+4|0}while(m>>>0<=A>>>0);if(!((g&8|0)==0&(s^1)))LWa(a,123565,1);if(m>>>0>>0&(k|0)>0)while(1){l=lR(f[m>>2]|0,0,r)|0;if(l>>>0>F>>>0){gH(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}LWa(a,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0>>0&(k|0)>9)){k=l;break}else k=l}t0(a,48,k+9|0,9,0)}else{v=t?x:n+4|0;if(n>>>0>>0&(k|0)>-1){e=F+9|0;s=(g&8|0)==0;t=e;p=0-E|0;r=F+8|0;o=n;do{l=lR(f[o>>2]|0,0,e)|0;if((l|0)==(e|0)){b[r>>0]=48;l=r}do if((o|0)==(n|0)){m=l+1|0;LWa(a,l,1);if(s&(k|0)<1){l=m;break}LWa(a,123565,1);l=m}else{if(l>>>0<=F>>>0)break;gH(F|0,48,l+p|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}while(0);E=t-l|0;LWa(a,l,(k|0)>(E|0)?E:k);k=k-E|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}t0(a,48,k+18|0,18,0);LWa(a,w,D-w|0)}t0(a,32,d,j,g^8192)}while(0);u=G;return ((j|0)<(d|0)?d:j)|0}function ud(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0;t=u;u=u+96|0;r=t+80|0;i=t+68|0;j=t+64|0;l=t+60|0;g=t+56|0;n=t+52|0;q=t+40|0;p=t+28|0;o=t+24|0;s=t+12|0;m=t;e=f[a>>2]|0;h=e+60|0;a:do if(!(b[h>>0]|0)){b[h>>0]=1;b[e+61>>0]=d&1;if((XXa(c)|0)!=1){if(lRa(Or(c,1)|0)|0){E1a(r,jF(Or(c,1)|0)|0);f[(f[a>>2]|0)+64>>2]=f[r>>2];e=2}else e=1;if((e|0)!=(XXa(c)|0)){tab(j);tab(l);i=Or(c,e)|0;do if(b8a(b[i>>0]|0)|0){h=Or(c,e)|0;i=jF(Or(h,0)|0)|0;b:do if($1a(i,f[33105]|0)|0){aAa(g);x=0;h=ia(69,h|0,1)|0;s=x;x=0;do if(!(s&1)?(x=0,k=ga(295,h|0)|0,s=x,x=0,!(s&1)):0){E1a(r,k);h=f[g>>2]|0;s=f[r>>2]|0;f[h>>2]=s;f[h+4>>2]=f[(f[a>>2]|0)+64>>2];f[h+8>>2]=1;i=f[a>>2]|0;f[n>>2]=s;f[r>>2]=f[n>>2];if(!(cna(i,r)|0)){f[g>>2]=0;x=0;ua(70,i|0,h|0);s=x;x=0;if(s&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;v=57;break b}}j=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;v=h7a(93685)|0;x=0;va(87,q|0,93685,v|0);v=x;x=0;if(!(v&1)){x=0;wa(138,j|0,q|0,f[c+28>>2]|0,f[c+32>>2]|0);v=x;x=0;if(v&1)i=1;else{x=0;va(98,j|0,32200,457);x=0;i=0}e=Ia()|0;HTa(q);if(!i){v=27;break}}else e=Ia()|0;La(j|0);v=27}else v=20;while(0);if((v|0)==20){e=Ia()|0;h=f[g>>2]|0;v=27}if((v|0)==27){f[g>>2]=0;if(h)ubb(h)}v=58}else{q=jF(Or(h,0)|0)|0;if(!($1a(q,f[33104]|0)|0)){h=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;v=h7a(93744)|0;x=0;va(87,m|0,93744,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,h|0,m|0);v=x;x=0;if(v&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(m);if(!g){v=58;break}}else e=Ia()|0;La(h|0);v=58;break}E1a(r,jF(Or(h,1)|0)|0);i=f[r>>2]|0;f[j>>2]=i;E1a(r,jF(Or(h,2)|0)|0);h=f[r>>2]|0;f[l>>2]=h;if(!d){h=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;v=h7a(93702)|0;x=0;va(87,p|0,93702,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,h|0,p|0);v=x;x=0;if(v&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(p);if(!g){v=58;break}}else e=Ia()|0;La(h|0);v=58;break}kOa(g);j=f[g>>2]|0;f[j+12>>2]=1;f[j+4>>2]=i;f[j+8>>2]=h;f[j>>2]=i;h=f[a>>2]|0;f[o>>2]=i;f[r>>2]=f[o>>2];do if(!(ana(h,r)|0)){f[g>>2]=0;x=0;ua(64,h|0,j|0);v=x;x=0;if(v&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;v=57;break b}}else{i=Ea(20)|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;t=h7a(93727)|0;x=0;va(87,s|0,93727,t|0);t=x;x=0;if(!(t&1)){x=0;wa(138,i|0,s|0,f[c+28>>2]|0,f[c+32>>2]|0);t=x;x=0;if(t&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}e=Ia()|0;HTa(s);if(h)v=45}else{e=Ia()|0;v=45}if((v|0)==45)La(i|0);f[g>>2]=0;if(j)ubb(j)}while(0);v=58}while(0);if((v|0)==57){e=e+1|0;break}else if((v|0)==58)break a}while(0);do if((e|0)!=(XXa(c)|0)){if(!(lRa(Or(c,e)|0)|0)){v=jF(Or(c,e)|0)|0;if($1a(v,f[33086]|0)|0){ul(a,Or(c,e+1|0)|0,1,0);e=f[a>>2]|0;v=f[e+76>>2]|0;g=v;if((f[e+80>>2]|0)==(v|0)){v=e+72|0;rHa(v,0,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}else{v=e+72|0;rHa(v,(f[g+8>>2]|0)-(f[g+4>>2]|0)>>2,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}}v=jF(Or(c,(XXa(c)|0)+-1|0)|0)|0;if($1a(v,f[33086]|0)|0){if(e>>>0<((XXa(c)|0)+-1|0)>>>0){v=yR(jF(Or(c,e)|0)|0)|0;rHa((f[a>>2]|0)+68|0,v,((v|0)<0)<<31>>31)|0;e=e+1|0}if(e>>>0>=((XXa(c)|0)+-1|0)>>>0)break;v=yR(jF(Or(c,e)|0)|0)|0;rHa((f[a>>2]|0)+72|0,v,((v|0)<0)<<31>>31)|0;break}}ul(a,c,e,0);e=f[a>>2]|0;v=f[e+76>>2]|0;g=v;if((f[e+80>>2]|0)==(v|0)){v=e+72|0;rHa(v,0,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}else{v=e+72|0;rHa(v,(f[g+8>>2]|0)-(f[g+4>>2]|0)>>2,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}}while(0)}}u=t;return}else{h=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;v=h7a(93665)|0;x=0;va(87,i|0,93665,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,h|0,i|0);v=x;x=0;if(v&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;HTa(i);if(!g)break}else e=Ia()|0;La(h|0)}while(0);Ua(e|0)}function vd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;z=u;u=u+48|0;y=z+32|0;o=z+20|0;w=z+16|0;t=z;v=z+8|0;f[w>>2]=b;f[t>>2]=c;q=jE(a,c)|0;a:do if(!q){q7(v);q=f[v>>2]|0;b=f[w>>2]|0;p=q+4|0;h=f[p>>2]|0;m=(h|0)==0;s=q;b:do if(!m){i=h+-1|0;l=(i&h|0)==0;if(!l)if(b>>>0>>0)e=b;else e=(b>>>0)%(h>>>0)|0;else e=i&b;d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d)r=53;else while(1){d=f[d>>2]|0;if(!d){r=53;break b}g=f[d+4>>2]|0;if((g|0)!=(b|0)){if(!l){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(e|0)){r=53;break b}}if((f[d+8>>2]|0)==(b|0)){m=c;r=72;break}}}else{e=0;r=53}while(0);c:do if((r|0)==53){x=0;wa(96,o|0,q|0,b|0,w|0);c=x;x=0;if(c&1)r=113;else{i=q+12|0;j=+(((f[i>>2]|0)+1|0)>>>0);k=+n[q+16>>2];do if(m|k*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;c=~~+W(+(j/k))>>>0;x=0;ua(803,q|0,(m>>>0>>0?c:m)|0);m=x;x=0;if(m&1){d=Ia()|0;e=f[o>>2]|0;f[o>>2]=0;if(e|0)ubb(e);break c}d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&b;break}if(b>>>0>>0){h=d;e=b}else{h=d;e=(b>>>0)%(d>>>0)|0}}while(0);d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d){d=q+8|0;g=f[o>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[q>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=o;else{d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[q>>2]|0)+(d<<2)>>2]=g;d=o}}else{r=f[o>>2]|0;f[r>>2]=f[d>>2];f[d>>2]=r;d=o}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0;h=f[p>>2]|0;m=f[t>>2]|0;r=72}}while(0);d:do if((r|0)==72){c=(h|0)==0;e:do if(!c){i=h+-1|0;l=(i&h|0)==0;if(!l)if(m>>>0>>0)e=m;else e=(m>>>0)%(h>>>0)|0;else e=i&m;d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d)r=87;else do{d=f[d>>2]|0;if(!d){r=87;break e}g=f[d+4>>2]|0;if((g|0)!=(m|0)){if(!l){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(e|0)){r=87;break e}}}while((f[d+8>>2]|0)!=(m|0))}else{e=0;r=87}while(0);if((r|0)==87){x=0;wa(96,y|0,q|0,m|0,t|0);o=x;x=0;if(o&1){r=113;break}i=q+12|0;j=+(((f[i>>2]|0)+1|0)>>>0);k=+n[q+16>>2];do if(c|k*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;b=~~+W(+(j/k))>>>0;x=0;ua(803,q|0,(o>>>0>>0?b:o)|0);o=x;x=0;if(o&1){d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0)ubb(e);break d}d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&m;break}if(m>>>0>>0){h=d;e=m}else{h=d;e=(m>>>0)%(d>>>0)|0}}while(0);d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d){d=q+8|0;g=f[y>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[q>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=y;else{d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[q>>2]|0)+(d<<2)>>2]=g;d=y}}else{r=f[y>>2]|0;f[r>>2]=f[d>>2];f[d>>2]=r;d=y}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}x=0;e=ia(122,a|0,w|0)|0;y=x;x=0;if(!(y&1)){i=f[v+4>>2]|0;d=i;h=(i|0)==0;if(h)g=0;else{g=i+4|0;f[g>>2]=(f[g>>2]|0)+1;g=d}f[e>>2]=s;y=e+4|0;e=f[y>>2]|0;f[y>>2]=g;voa(e);x=0;e=ia(122,a|0,t|0)|0;a=x;x=0;if(!(a&1)){if(h)d=0;else{a=i+4|0;f[a>>2]=(f[a>>2]|0)+1}f[e>>2]=s;y=e+4|0;a=f[y>>2]|0;f[y>>2]=d;voa(a);voa(i);break a}else r=113}else r=113}while(0);if((r|0)==113)d=Ia()|0;voa(f[v+4>>2]|0);Ua(d|0)}else{p=q+12|0;o=f[p>>2]|0;c=o+4|0;h=f[c>>2]|0;m=(h|0)==0;f:do if(!m){i=h+-1|0;l=(i&h|0)==0;if(!l)if(h>>>0>b>>>0)e=b;else e=(b>>>0)%(h>>>0)|0;else e=i&b;d=f[(f[o>>2]|0)+(e<<2)>>2]|0;if(!d)r=17;else do{d=f[d>>2]|0;if(!d){r=17;break f}g=f[d+4>>2]|0;if((g|0)!=(b|0)){if(!l){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(e|0)){r=17;break f}}}while((f[d+8>>2]|0)!=(b|0))}else{e=0;r=17}while(0);if((r|0)==17){R6(y,o,b,w);i=o+12|0;j=+(((f[i>>2]|0)+1|0)>>>0);k=+n[o+16>>2];do if(m|k*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;t=~~+W(+(j/k))>>>0;x=0;ua(803,o|0,(v>>>0>>0?t:v)|0);v=x;x=0;if(v&1){d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0)ubb(e);Ua(d|0)}d=f[c>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&b;break}if(d>>>0>b>>>0){h=d;e=b}else{h=d;e=(b>>>0)%(d>>>0)|0}}while(0);d=f[(f[o>>2]|0)+(e<<2)>>2]|0;if(!d){d=o+8|0;g=f[y>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[o>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=y;else{d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[o>>2]|0)+(d<<2)>>2]=g;d=y}}else{v=f[y>>2]|0;f[v>>2]=f[d>>2];f[d>>2]=v;d=y}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}g=rl(a,w)|0;e=f[p>>2]|0;d=f[q+16>>2]|0;if(!d)d=0;else{a=d+4|0;f[a>>2]=(f[a>>2]|0)+1}f[g>>2]=e;y=g+4|0;a=f[y>>2]|0;f[y>>2]=d;voa(a)}while(0);u=z;return}function wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;O=u;u=u+112|0;J=O+64|0;D=O+32|0;H=O+16|0;r=O;R=O+96|0;P=O+80|0;K=O+48|0;yXa(D);yXa(H);yXa(r);switch(f[b+8>>2]|0){case 28:case 26:{CAa(J,0.0);f[D>>2]=f[J>>2];f[D+4>>2]=f[J+4>>2];f[D+8>>2]=f[J+8>>2];f[D+12>>2]=f[J+12>>2];CAa(J,1.0);f[H>>2]=f[J>>2];f[H+4>>2]=f[J+4>>2];f[H+8>>2]=f[J+8>>2];f[H+12>>2]=f[J+12>>2];CAa(J,4294967296.0);f[r>>2]=f[J>>2];f[r+4>>2]=f[J+4>>2];f[r+8>>2]=f[J+8>>2];f[r+12>>2]=f[J+12>>2];N=27;p=37;G=8;c=12;C=10;q=51;A=53;d=55;E=61;I=62;M=3;break}case 32:case 30:{kqa(J,0.0);f[D>>2]=f[J>>2];f[D+4>>2]=f[J+4>>2];f[D+8>>2]=f[J+8>>2];f[D+12>>2]=f[J+12>>2];kqa(J,1.0);f[H>>2]=f[J>>2];f[H+4>>2]=f[J+4>>2];f[H+8>>2]=f[J+8>>2];f[H+12>>2]=f[J+12>>2];kqa(J,4294967296.0);f[r>>2]=f[J>>2];f[r+4>>2]=f[J+4>>2];f[r+8>>2]=f[J+8>>2];f[r+12>>2]=f[J+12>>2];N=31;p=38;G=9;c=13;C=11;q=64;A=66;d=68;E=74;I=75;M=4;break}default:hb()}mD(R,a,M);x=0;va(159,P|0,a|0,1);L=x;x=0;if(L&1)c=Ia()|0;else{L=a+44|0;e=f[L>>2]|0;x=0;g=ga(320,R|0)|0;S=x;x=0;a:do if((((((((!(S&1)?(x=0,h=ja(46,f[e>>2]|0,g|0,M|0)|0,S=x,x=0,!(S&1)):0)?(i=f[L>>2]|0,x=0,f[J>>2]=f[r>>2],f[J+4>>2]=f[r+4>>2],f[J+8>>2]=f[r+8>>2],f[J+12>>2]=f[r+12>>2],i=ia(50,i|0,J|0)|0,S=x,x=0,!(S&1)):0)?(x=0,j=ka(7,f[e>>2]|0,A|0,h|0,i|0)|0,S=x,x=0,!(S&1)):0)?(x=0,k=ja(53,f[e>>2]|0,c|0,j|0)|0,S=x,x=0,!(S&1)):0)?(l=f[L>>2]|0,x=0,f[J>>2]=f[r>>2],f[J+4>>2]=f[r+4>>2],f[J+8>>2]=f[r+8>>2],f[J+12>>2]=f[r+12>>2],m=ia(50,l|0,J|0)|0,S=x,x=0,!(S&1)):0)?(n=f[L>>2]|0,x=0,f[J>>2]=f[H>>2],f[J+4>>2]=f[H+4>>2],f[J+8>>2]=f[H+8>>2],f[J+12>>2]=f[H+12>>2],n=ia(50,n|0,J|0)|0,S=x,x=0,!(S&1)):0)?(x=0,o=ka(7,f[l>>2]|0,q|0,m|0,n|0)|0,S=x,x=0,!(S&1)):0)?(x=0,F=ka(7,f[e>>2]|0,d|0,k|0,o|0)|0,S=x,x=0,!(S&1)):0){d=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if((((((!(S&1)?(x=0,s=ja(46,f[d>>2]|0,c|0,M|0)|0,S=x,x=0,!(S&1)):0)?(t=f[L>>2]|0,x=0,v=ga(320,R|0)|0,S=x,x=0,!(S&1)):0)?(x=0,w=ja(46,f[t>>2]|0,v|0,M|0)|0,S=x,x=0,!(S&1)):0)?(x=0,y=ja(53,f[t>>2]|0,N|0,w|0)|0,S=x,x=0,!(S&1)):0)?(x=0,z=ja(53,f[t>>2]|0,p|0,y|0)|0,S=x,x=0,!(S&1)):0)?(x=0,B=ka(7,f[d>>2]|0,q|0,s|0,z|0)|0,S=x,x=0,!(S&1)):0){c=f[L>>2]|0;x=0;f[J>>2]=f[r>>2];f[J+4>>2]=f[r+4>>2];f[J+8>>2]=f[r+8>>2];f[J+12>>2]=f[r+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;c=ka(7,f[d>>2]|0,A|0,B|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;g=ja(53,f[d>>2]|0,C|0,c|0)|0;S=x;x=0;if(S&1)break;h=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if(!(S&1)){x=0;d=ja(46,f[h>>2]|0,c|0,M|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;x=0;f[J>>2]=f[D>>2];f[J+4>>2]=f[D+4>>2];f[J+8>>2]=f[D+8>>2];f[J+12>>2]=f[D+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;e=ka(7,f[h>>2]|0,E|0,d|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;d=ja(53,f[f[L>>2]>>2]|0,N|0,F|0)|0;S=x;x=0;if(S&1)break;x=0;c=ja(53,f[f[L>>2]>>2]|0,N|0,g|0)|0;S=x;x=0;if(S&1)break;x=0;g=ka(8,h|0,e|0,d|0,c|0)|0;S=x;x=0;if(S&1)break;e=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if(!(S&1)){x=0;c=ja(46,f[e>>2]|0,c|0,M|0)|0;S=x;x=0;if(S&1)break;x=0;d=ja(53,f[e>>2]|0,G|0,c|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;x=0;f[J>>2]=f[H>>2];f[J+4>>2]=f[H+4>>2];f[J+8>>2]=f[H+8>>2];f[J+12>>2]=f[H+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;d=ka(7,f[e>>2]|0,I|0,d|0,c|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;m$a(K,0);x=0;f[J>>2]=f[K>>2];f[J+4>>2]=f[K+4>>2];f[J+8>>2]=f[K+8>>2];f[J+12>>2]=f[K+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;e=ka(8,e|0,d|0,g|0,c|0)|0;S=x;x=0;if(S&1)break;h=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if(!(S&1)){x=0;g=ja(45,h|0,c|0,f[b+12>>2]|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;x=0;d=ga(320,P|0)|0;S=x;x=0;if(S&1)break;x=0;e=ja(45,c|0,d|0,e|0)|0;S=x;x=0;if(S&1)break;d=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;if(S&1)break;x=0;c=ja(46,f[d>>2]|0,c|0,M|0)|0;S=x;x=0;if(S&1)break;x=0;c=ja(53,f[d>>2]|0,N|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;c=ka(28,h|0,g|0,e|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;va(161,a|0,c|0,P|0);S=x;x=0;if(S&1)break;BVa(f[a+16>>2]|0,c)|0;HCa(P);HCa(R);u=O;return}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break a}while(0);c=Ia()|0}else Q=50;while(0);if((Q|0)==50)c=Ia()|0;HCa(P)}HCa(R);Ua(c|0)}function xd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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;o=u;u=u+176|0;s=o+112|0;q=o+92|0;r=o+72|0;n=o+8|0;j=o+4|0;k=o;m=a+44|0;l=a+48|0;a:do if((f[m>>2]|0)!=(f[l>>2]|0)){e=a+32|0;wx(s,Bbb(f[e>>2]|0)|0);x=0;ta(462,s|0);i=x;x=0;if(i&1)a=Ia()|0;else{f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=1065353216;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;f[r+16>>2]=1065353216;h=f[l>>2]|0;i=s+44|0;g=f[m>>2]|0;b:while(1){if((g|0)==(h|0)){p=5;break}a=f[g>>2]|0;f[n>>2]=a;x=0;a=ga(257,f[a+12>>2]|0)|0;d=x;x=0;if(d&1){p=12;break}f[j>>2]=a;x=0;a=ia(179,i|0,j|0)|0;d=x;x=0;if(d&1){p=13;break}d=a+12|0;do if(f[d>>2]|0){a=a+8|0;b=a;while(1){b=f[b>>2]|0;if(!b){p=26;break}c=f[b+8>>2]|0;f[k>>2]=c;if((f[c+8>>2]|0)!=(f[(f[j>>2]|0)+8>>2]|0)){p=15;break b}x=0;c=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=23;break b}if((f[c+8>>2]|0)!=1)break;x=0;c=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=23;break b}if((f[(f[c>>2]|0)+16>>2]|0)!=(f[j>>2]|0)){p=20;break b}}if((p|0)==26){p=0;b=(f[n>>2]|0)+8|0;while(1){a=f[a>>2]|0;if(!a)break;f[(f[a+8>>2]|0)+8>>2]=f[b>>2]}a=f[j>>2]|0;x=0;b=ia(183,q|0,n|0)|0;t=x;x=0;if(t&1){p=13;break b}f[b>>2]=a;break}if(f[d>>2]|0){x=0;a=ia(179,i|0,n|0)|0;t=x;x=0;if(t&1){p=35;break b}if(f[a+12>>2]|0){d=a+8|0;a=d;while(1){a=f[a>>2]|0;if(!a)break;t=f[a+8>>2]|0;f[k>>2]=t;if((f[t+8>>2]|0)!=(f[(f[n>>2]|0)+8>>2]|0)){p=37;break b}x=0;b=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=45;break b}if((f[b+8>>2]|0)!=1){p=43;break}x=0;b=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=45;break b}if((f[(f[b>>2]|0)+16>>2]|0)!=(f[n>>2]|0)){p=42;break b}}if((p|0)==43){p=0;break}c=f[j>>2]|0;b=c+8|0;a=d;while(1){a=f[a>>2]|0;if(!a)break;f[(f[a+8>>2]|0)+8>>2]=f[b>>2]}x=0;a=ia(183,r|0,n|0)|0;t=x;x=0;if(t&1){p=53;break b}f[a>>2]=c}}}while(0);g=g+4|0}c:switch(p|0){case 5:{if(!((f[q+12>>2]|0)==0?!(f[r+12>>2]|0):0))p=57;d:do if((p|0)==57){t=Bbb(f[e>>2]|0)|0;x=0;ua(630,n|0,t|0);t=x;x=0;if(t&1)a=Ia()|0;else{x=0;ta(462,n|0);t=x;x=0;do if(t&1)a=Ia()|0;else{a=q+8|0;e:while(1){a=f[a>>2]|0;if(!a){p=61;break}b=a;e=f[b+8>>2]|0;f[j>>2]=f[b+12>>2];x=0;b=ia(179,i|0,j|0)|0;t=x;x=0;if(t&1){p=67;break}b=b+8|0;c=b;while(1){c=f[c>>2]|0;if(!c)break;f[k>>2]=f[c+8>>2];x=0;d=ia(103,n|0,k|0)|0;t=x;x=0;if(t&1){p=76;break e}if((f[d+8>>2]|0)!=1){p=71;break}if((f[(f[d>>2]|0)+16>>2]|0)!=(e|0)){p=71;break}}if((p|0)==71){p=0;c=(f[j>>2]|0)+8|0;while(1){b=f[b>>2]|0;if(!b)break;f[(f[b+8>>2]|0)+8>>2]=f[c>>2]}}}if((p|0)==61){a=r+8|0;f:while(1){a=f[a>>2]|0;if(!a){p=80;break}e=a;f[j>>2]=f[e+8>>2];e=f[e+12>>2]|0;x=0;b=ia(179,i|0,j|0)|0;t=x;x=0;if(t&1){p=84;break}b=b+8|0;c=b;while(1){c=f[c>>2]|0;if(!c)break;f[k>>2]=f[c+8>>2];x=0;d=ia(103,n|0,k|0)|0;t=x;x=0;if(t&1){p=93;break f}if((f[d+8>>2]|0)!=1){p=88;break}if((f[(f[d>>2]|0)+16>>2]|0)!=(e|0)){p=88;break}}if((p|0)==88){p=0;c=(f[j>>2]|0)+8|0;while(1){b=f[b>>2]|0;if(!b)break;f[(f[b+8>>2]|0)+8>>2]=f[c>>2]}}}if((p|0)==80){xV(n);break d}else if((p|0)==84)a=Ia()|0;else if((p|0)==93)a=Ia()|0;break}else if((p|0)==67)a=Ia()|0;else if((p|0)==76)a=Ia()|0}while(0);xV(n)}break c}while(0);d=f[l>>2]|0;a=f[m>>2]|0;while(1){if((a|0)==(d|0)){p=100;break}b=(f[a>>2]|0)+12|0;x=0;c=ga(257,f[b>>2]|0)|0;t=x;x=0;if(t&1){p=103;break}f[b>>2]=f[c+12>>2];a=a+4|0}if((p|0)==100){NQa(r);NQa(q);xV(s);break a}else if((p|0)==103){a=Ia()|0;break}break}case 12:{a=Ia()|0;p=55;break}case 13:{a=Ia()|0;p=55;break}case 15:{x=0;wa(71,104947,104986,113,105015);x=0;p=24;break}case 20:{x=0;wa(71,105030,104986,116,105015);x=0;p=24;break}case 23:{a=Ia()|0;p=25;break}case 35:{a=Ia()|0;p=55;break}case 37:{x=0;wa(71,105084,104986,143,105015);x=0;p=46;break}case 42:{x=0;wa(71,105120,104986,146,105015);x=0;p=46;break}case 45:{a=Ia()|0;p=47;break}case 53:{a=Ia()|0;p=55;break}}if((p|0)==24){a=Ia()|0;p=25}else if((p|0)==46){a=Ia()|0;p=47}if((p|0)==25)p=55;else if((p|0)==47)p=55;NQa(r);NQa(q)}xV(s);Ua(a|0)}while(0);u=o;return}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,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;L=u;u=u+528|0;d=L+504|0;A=L+16|0;F=L;G=L+488|0;H=L+472|0;I=L+456|0;J=L+440|0;K=L+424|0;e=L+408|0;g=L+392|0;h=L+376|0;i=L+360|0;j=L+344|0;k=L+328|0;l=L+312|0;m=L+296|0;n=L+280|0;o=L+264|0;p=L+248|0;q=L+232|0;r=L+216|0;s=L+200|0;t=L+184|0;v=L+168|0;w=L+152|0;x=L+136|0;y=L+120|0;z=L+104|0;B=L+88|0;C=L+72|0;D=L+56|0;E=L+40|0;Mu(A,b,f[c+12>>2]|0);if(D0a(A)|0){f[a>>2]=f[A>>2];f[a+4>>2]=f[A+4>>2];f[a+8>>2]=f[A+8>>2];f[a+12>>2]=f[A+12>>2];f[a+16>>2]=f[A+16>>2];f[a+20>>2]=f[A+20>>2]}else{f[F>>2]=f[A>>2];f[F+4>>2]=f[A+4>>2];f[F+8>>2]=f[A+8>>2];f[F+12>>2]=f[A+12>>2];do switch(f[c+8>>2]|0){case 1:case 0:{l6(G,F);f[d>>2]=f[G>>2];f[d+4>>2]=f[G+4>>2];f[d+8>>2]=f[G+8>>2];f[d+12>>2]=f[G+12>>2];rAa(a,d);break}case 3:case 2:{_5(H,F);f[d>>2]=f[H>>2];f[d+4>>2]=f[H+4>>2];f[d+8>>2]=f[H+8>>2];f[d+12>>2]=f[H+12>>2];rAa(a,d);break}case 5:case 4:{q9(I,F);f[d>>2]=f[I>>2];f[d+4>>2]=f[I+4>>2];f[d+8>>2]=f[I+8>>2];f[d+12>>2]=f[I+12>>2];rAa(a,d);break}case 21:case 20:{$W(J,F);f[d>>2]=f[J>>2];f[d+4>>2]=f[J+4>>2];f[d+8>>2]=f[J+8>>2];f[d+12>>2]=f[J+12>>2];rAa(a,d);break}case 45:{LHa(K,F);f[d>>2]=f[K>>2];f[d+4>>2]=f[K+4>>2];f[d+8>>2]=f[K+8>>2];f[d+12>>2]=f[K+12>>2];rAa(a,d);break}case 46:{K=F+8|0;pGa(e,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];rAa(a,d);break}case 22:{LCa(g,F);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];rAa(a,d);break}case 23:{gKa(h,F);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];rAa(a,d);break}case 24:{K=F+8|0;fKa(i,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];rAa(a,d);break}case 41:case 37:{efa(j,F);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];rAa(a,d);break}case 42:case 38:{dfa(k,F);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];rAa(a,d);break}case 39:case 35:{yha(l,F);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d+12>>2]=f[l+12>>2];rAa(a,d);break}case 40:case 36:{xha(m,F);f[d>>2]=f[m>>2];f[d+4>>2]=f[m+4>>2];f[d+8>>2]=f[m+8>>2];f[d+12>>2]=f[m+12>>2];rAa(a,d);break}case 49:case 47:{Waa(n,F);f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d+12>>2]=f[n+12>>2];rAa(a,d);break}case 50:case 48:{Iaa(o,F);f[d>>2]=f[o>>2];f[d+4>>2]=f[o+4>>2];f[d+8>>2]=f[o+8>>2];f[d+12>>2]=f[o+12>>2];rAa(a,d);break}case 51:{KCa(p,F);f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];rAa(a,d);break}case 7:case 6:{pN(q,F);f[d>>2]=f[q>>2];f[d+4>>2]=f[q+4>>2];f[d+8>>2]=f[q+8>>2];f[d+12>>2]=f[q+12>>2];rAa(a,d);break}case 9:case 8:{IO(r,F);f[d>>2]=f[r>>2];f[d+4>>2]=f[r+4>>2];f[d+8>>2]=f[r+8>>2];f[d+12>>2]=f[r+12>>2];rAa(a,d);break}case 11:case 10:{Wma(s,F);f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];rAa(a,d);break}case 13:case 12:{Cma(t,F);f[d>>2]=f[t>>2];f[d+4>>2]=f[t+4>>2];f[d+8>>2]=f[t+8>>2];f[d+12>>2]=f[t+12>>2];rAa(a,d);break}case 15:case 14:{bla(v,F);f[d>>2]=f[v>>2];f[d+4>>2]=f[v+4>>2];f[d+8>>2]=f[v+8>>2];f[d+12>>2]=f[v+12>>2];rAa(a,d);break}case 17:case 16:{Mia(w,F);f[d>>2]=f[w>>2];f[d+4>>2]=f[w+4>>2];f[d+8>>2]=f[w+8>>2];f[d+12>>2]=f[w+12>>2];rAa(a,d);break}case 19:case 18:{Vma(x,F);f[d>>2]=f[x>>2];f[d+4>>2]=f[x+4>>2];f[d+8>>2]=f[x+8>>2];f[d+12>>2]=f[x+12>>2];rAa(a,d);break}case 30:case 26:case 29:case 25:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];zx(y,b,c,d);f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2];f[d+12>>2]=f[y+12>>2];rAa(a,d);break}case 32:case 28:case 31:case 27:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];qx(z,b,c,d);f[d>>2]=f[z>>2];f[d+4>>2]=f[z+4>>2];f[d+8>>2]=f[z+8>>2];f[d+12>>2]=f[z+12>>2];rAa(a,d);break}case 33:{qHa(B,F);f[d>>2]=f[B>>2];f[d+4>>2]=f[B+4>>2];f[d+8>>2]=f[B+8>>2];f[d+12>>2]=f[B+12>>2];rAa(a,d);break}case 43:{HIa(C,F);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];rAa(a,d);break}case 34:{K=F+8|0;XFa(D,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[D>>2];f[d+4>>2]=f[D+4>>2];f[d+8>>2]=f[D+8>>2];f[d+12>>2]=f[D+12>>2];rAa(a,d);break}case 44:{VC(E,F);f[d>>2]=f[E>>2];f[d+4>>2]=f[E+4>>2];f[d+8>>2]=f[E+8>>2];f[d+12>>2]=f[E+12>>2];rAa(a,d);break}default:hb()}while(0)}u=L;return}function zd(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;B=F+56|0;C=F+40|0;z=F;D=F+48|0;E=F+60|0;f[B>>2]=c;w=(a|0)!=0;x=z+40|0;y=x;z=z+39|0;A=D+4|0;i=0;c=0;k=0;a:while(1){do{do if((c|0)>-1)if((i|0)>(2147483647-c|0)){f[33448]=75;c=-1;break}else{c=i+c|0;break}while(0);q=f[B>>2]|0;i=b[q>>0]|0;if(!(i<<24>>24)){v=93;break a}j=q;b:while(1){switch(i<<24>>24){case 37:{v=10;break b}case 0:{i=j;break b}default:{}}t=j+1|0;f[B>>2]=t;i=b[t>>0]|0;j=t}c:do if((v|0)==10){v=0;i=j;do{if((b[j+1>>0]|0)!=37)break c;i=i+1|0;j=j+2|0;f[B>>2]=j}while((b[j>>0]|0)==37)}while(0);i=i-q|0;if(w)LWa(a,q,i)}while((i|0)!=0);j=f[B>>2]|0;i=b[j+1>>0]|0;if(!(Uab(i)|0)){r=-1;n=k;i=1}else{t=(b[j+2>>0]|0)==36;r=t?i+-48|0:-1;n=t?1:k;i=t?3:1}l=j+i|0;f[B>>2]=l;i=b[l>>0]|0;j=(i<<24>>24)+-32|0;if(j>>>0>31|(1<>2]=l;i=b[l>>0]|0;j=(i<<24>>24)+-32|0;if(j>>>0>31|(1<>24==42){j=m+1|0;i=b[j>>0]|0;if((Uab(i)|0)!=0?(b[m+2>>0]|0)==36:0){f[h+(i+-48<<2)>>2]=10;i=f[g+((b[j>>0]|0)+-48<<3)>>2]|0;l=1;j=m+3|0}else{if(n|0){c=-1;break}if(w){l=(f[e>>2]|0)+(4-1)&~(4-1);i=f[l>>2]|0;f[e>>2]=l+4;l=0}else{i=0;l=0}}f[B>>2]=j;t=(i|0)<0;s=t?0-i|0:i;k=t?k|8192:k;t=l}else{i=rda(B)|0;if((i|0)<0){c=-1;break}s=i;t=n;j=f[B>>2]|0}do if((b[j>>0]|0)==46){i=j+1|0;if((b[i>>0]|0)!=42){f[B>>2]=i;n=rda(B)|0;i=f[B>>2]|0;break}l=j+2|0;i=b[l>>0]|0;if(Uab(i)|0?(b[j+3>>0]|0)==36:0){f[h+(i+-48<<2)>>2]=10;n=f[g+((b[l>>0]|0)+-48<<3)>>2]|0;i=j+4|0;f[B>>2]=i;break}if(t|0){c=-1;break a}if(w){o=(f[e>>2]|0)+(4-1)&~(4-1);i=f[o>>2]|0;f[e>>2]=o+4}else i=0;f[B>>2]=l;n=i;i=l}else{n=-1;i=j}while(0);o=0;while(1){if(((b[i>>0]|0)+-65|0)>>>0>57){c=-1;break a}j=i+1|0;f[B>>2]=j;l=b[(b[i>>0]|0)+-65+(28320+(o*58|0))>>0]|0;m=l&255;if((m+-1|0)>>>0<8){o=m;i=j}else break}if(!(l<<24>>24)){c=-1;break}j=(r|0)>-1;do if(l<<24>>24==19)if(j){c=-1;break a}else v=52;else{if(j){f[h+(r<<2)>>2]=m;m=g+(r<<3)|0;r=f[m+4>>2]|0;v=C;f[v>>2]=f[m>>2];f[v+4>>2]=r;v=52;break}if(!w){c=0;break a}ip(C,m,e);v=53}while(0);if((v|0)==52){v=0;if(w)v=53;else i=0}d:do if((v|0)==53){v=0;i=b[i>>0]|0;i=(o|0)!=0&(i&15|0)==3?i&-33:i;j=k&-65537;r=(k&8192|0)==0?k:j;e:do switch(i|0){case 110:switch((o&255)<<24>>24){case 0:{f[f[C>>2]>>2]=c;i=0;break d}case 1:{f[f[C>>2]>>2]=c;i=0;break d}case 2:{i=f[C>>2]|0;f[i>>2]=c;f[i+4>>2]=((c|0)<0)<<31>>31;i=0;break d}case 3:{d[f[C>>2]>>1]=c;i=0;break d}case 4:{b[f[C>>2]>>0]=c;i=0;break d}case 6:{f[f[C>>2]>>2]=c;i=0;break d}case 7:{i=f[C>>2]|0;f[i>>2]=c;f[i+4>>2]=((c|0)<0)<<31>>31;i=0;break d}default:{i=0;break d}}case 112:{i=120;j=n>>>0>8?n:8;k=r|8;v=65;break}case 88:case 120:{j=n;k=r;v=65;break}case 111:{j=C;i=f[j>>2]|0;j=f[j+4>>2]|0;m=esa(i,j,x)|0;k=y-m|0;o=0;l=118731;n=(r&8|0)==0|(n|0)>(k|0)?n:k+1|0;k=r;v=71;break}case 105:case 100:{j=C;i=f[j>>2]|0;j=f[j+4>>2]|0;if((j|0)<0){i=NRa(0,0,i|0,j|0)|0;j=I;k=C;f[k>>2]=i;f[k+4>>2]=j;k=1;l=118731;v=70;break e}else{k=(r&2049|0)!=0&1;l=(r&2048|0)==0?((r&1|0)==0?118731:118733):118732;v=70;break e}}case 117:{j=C;k=0;l=118731;i=f[j>>2]|0;j=f[j+4>>2]|0;v=70;break}case 99:{b[z>>0]=f[C>>2];q=z;o=0;l=118731;m=1;i=y;break}case 109:{i=g8a(f[33448]|0)|0;v=75;break}case 115:{i=f[C>>2]|0;i=(i|0)==0?118741:i;v=75;break}case 67:{f[D>>2]=f[C>>2];f[A>>2]=0;f[C>>2]=D;n=-1;k=D;v=80;break}case 83:if(!n){t0(a,32,s,0,r);i=0;v=90;break e}else{k=f[C>>2]|0;v=80;break e}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{i=td(a,+p[C>>3],s,n,r,i)|0;break d}default:{o=0;l=118731;m=n;j=r;i=y}}while(0);f:do if((v|0)==65){r=C;q=f[r>>2]|0;r=f[r+4>>2]|0;m=gla(q,r,x,i&32)|0;l=(k&8|0)==0|(q|0)==0&(r|0)==0;o=l?0:2;l=l?118731:118731+(i>>>4)|0;n=j;i=q;j=r;v=71}else if((v|0)==70){m=lR(i,j,x)|0;o=k;k=r;v=71}else if((v|0)==75){v=0;r=CA(i,n)|0;k=(r|0)==0;q=i;o=0;l=118731;m=k?n:r-i|0;i=k?i+n|0:r}else if((v|0)==80){v=0;m=k;i=0;while(1){j=f[m>>2]|0;if(!j)break;j=TXa(E,j)|0;l=(j|0)<0;if(l|j>>>0>(n-i|0)>>>0){v=84;break}i=j+i|0;if(n>>>0>i>>>0)m=m+4|0;else break}if((v|0)==84){v=0;if(l){c=-1;break a}}t0(a,32,s,i,r);if(!i){i=0;v=90}else{l=0;while(1){j=f[k>>2]|0;if(!j){v=90;break f}j=TXa(E,j)|0;l=j+l|0;if((l|0)>(i|0)){v=90;break f}LWa(a,E,j);if(l>>>0>=i>>>0){v=90;break}else k=k+4|0}}}while(0);if((v|0)==71){v=0;j=(i|0)!=0|(j|0)!=0;i=(n|0)!=0|j;j=y-m+((j^1)&1)|0;q=i?m:x;m=i?((n|0)>(j|0)?n:j):0;j=(n|0)>-1?k&-65537:k;i=y}else if((v|0)==90){v=0;t0(a,32,s,i,r^8192);i=(s|0)>(i|0)?s:i;break}n=i-q|0;m=(m|0)<(n|0)?n:m;r=m+o|0;i=(s|0)<(r|0)?r:s;t0(a,32,i,r,j);LWa(a,l,o);t0(a,48,i,r,j^65536);t0(a,48,m,n,0);LWa(a,q,n);t0(a,32,i,r,j^8192)}while(0);k=t}g:do if((v|0)==93)if(!a)if(!k)c=0;else{c=1;while(1){i=f[h+(c<<2)>>2]|0;if(!i)break;ip(g+(c<<3)|0,i,e);c=c+1|0;if(c>>>0>=10){c=1;break g}}j=0;while(1){i=c+1|0;if(j|0){c=-1;break g}if(i>>>0>=10){c=1;break g}c=i;j=f[h+(i<<2)>>2]|0}}while(0);u=F;return c|0}function Ad(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;T=u;u=u+128|0;O=T+96|0;U=T+112|0;p=T+80|0;q=T+64|0;r=T+48|0;I=T+32|0;M=T+16|0;P=T;if((b+-35|0)>>>0>=3)Ca(106824,106510,1190,106877);mD(U,a,1);R=a+44|0;i=f[R>>2]|0;x=0;j=ga(320,U|0)|0;W=x;x=0;a:do if(((((!(W&1)?(k=f[R>>2]|0,x=0,l=ga(320,g|0)|0,W=x,x=0,!(W&1)):0)?(x=0,m=ja(46,f[k>>2]|0,l|0,1)|0,W=x,x=0,!(W&1)):0)?(n=f[R>>2]|0,m$a(p,31),x=0,f[O>>2]=f[p>>2],f[O+4>>2]=f[p+4>>2],f[O+8>>2]=f[p+8>>2],f[O+12>>2]=f[p+12>>2],n=ia(50,n|0,O|0)|0,W=x,x=0,!(W&1)):0)?(x=0,o=ka(7,f[k>>2]|0,7,m|0,n|0)|0,W=x,x=0,!(W&1)):0)?(x=0,S=ja(45,i|0,j|0,o|0)|0,W=x,x=0,!(W&1)):0){j=f[R>>2]|0;m$a(q,32);x=0;f[O>>2]=f[q>>2];f[O+4>>2]=f[q+4>>2];f[O+8>>2]=f[q+8>>2];f[O+12>>2]=f[q+12>>2];i=ia(50,j|0,O|0)|0;W=x;x=0;if(((((!(W&1)?(s=f[R>>2]|0,x=0,t=ga(320,g|0)|0,W=x,x=0,!(W&1)):0)?(x=0,v=ja(46,f[s>>2]|0,t|0,1)|0,W=x,x=0,!(W&1)):0)?(w=f[R>>2]|0,m$a(r,63),x=0,f[O>>2]=f[r>>2],f[O+4>>2]=f[r+4>>2],f[O+8>>2]=f[r+8>>2],f[O+12>>2]=f[r+12>>2],w=ia(50,w|0,O|0)|0,W=x,x=0,!(W&1)):0)?(x=0,y=ka(7,f[s>>2]|0,7,v|0,w|0)|0,W=x,x=0,!(W&1)):0)?(x=0,Q=ka(7,f[j>>2]|0,20,i|0,y|0)|0,W=x,x=0,!(W&1)):0){switch(b|0){case 35:{x=0;i=ga(320,h|0)|0;W=x;x=0;if(((!(W&1)?(x=0,z=ga(320,d|0)|0,W=x,x=0,!(W&1)):0)?(x=0,A=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,B=ka(23,a|0,i|0,z|0,A|0)|0,W=x,x=0,!(W&1)):0)o=B;else V=22;break}case 37:{x=0;i=ga(320,h|0)|0;W=x;x=0;if(((!(W&1)?(x=0,C=ga(320,e|0)|0,W=x,x=0,!(W&1)):0)?(x=0,D=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,E=ka(24,a|0,i|0,C|0,D|0)|0,W=x,x=0,!(W&1)):0)o=E;else V=22;break}case 36:{x=0;i=ga(320,h|0)|0;W=x;x=0;if(((!(W&1)?(x=0,F=ga(320,e|0)|0,W=x,x=0,!(W&1)):0)?(x=0,G=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,H=ka(25,a|0,i|0,F|0,G|0)|0,W=x,x=0,!(W&1)):0)o=H;else V=22;break}default:{x=0;sa(5);x=0;V=22}}if((V|0)==22){i=Ia()|0;break}j=f[R>>2]|0;m$a(I,1);x=0;f[O>>2]=f[I>>2];f[O+4>>2]=f[I+4>>2];f[O+8>>2]=f[I+8>>2];f[O+12>>2]=f[I+12>>2];i=ia(50,j|0,O|0)|0;W=x;x=0;do if(((!(W&1)?(J=f[R>>2]|0,x=0,K=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,L=ja(46,f[J>>2]|0,K|0,1)|0,W=x,x=0,!(W&1)):0)?(x=0,N=ka(7,f[j>>2]|0,10,i|0,L|0)|0,W=x,x=0,!(W&1)):0){i=f[R>>2]|0;m$a(M,1);x=0;f[O>>2]=f[M>>2];f[O+4>>2]=f[M+4>>2];f[O+8>>2]=f[M+8>>2];f[O+12>>2]=f[M+12>>2];i=ia(50,i|0,O|0)|0;W=x;x=0;if(W&1)break;x=0;n=ka(7,f[j>>2]|0,1,N|0,i|0)|0;W=x;x=0;if(W&1)break;l=f[R>>2]|0;m$a(P,32);x=0;f[O>>2]=f[P>>2];f[O+4>>2]=f[P+4>>2];f[O+8>>2]=f[P+8>>2];f[O+12>>2]=f[P+12>>2];k=ia(50,l|0,O|0)|0;W=x;x=0;do if(!(W&1)){i=f[R>>2]|0;x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1)break;x=0;i=ja(46,f[i>>2]|0,j|0,1)|0;W=x;x=0;if(W&1)break;x=0;m=ka(7,f[l>>2]|0,1,k|0,i|0)|0;W=x;x=0;if(W&1)break;b:do switch(b|0){case 35:{x=0;l=ga(320,h|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;k=ga(320,d|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=ga(320,e|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=pa(16,a|0,l|0,k|0,i|0,j|0,n|0,m|0)|0;W=x;x=0;if(W&1)V=50;break}case 37:{x=0;l=ga(320,h|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;k=ga(320,d|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=ga(320,e|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=pa(17,a|0,l|0,k|0,i|0,j|0,n|0,m|0)|0;W=x;x=0;if(W&1)V=50;break}case 36:{x=0;l=ga(320,h|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;k=ga(320,d|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=ga(320,e|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=pa(18,a|0,l|0,k|0,i|0,j|0,n|0,m|0)|0;W=x;x=0;if(W&1)V=50;break}default:{x=0;sa(5);x=0;V=50}}while(0);if((V|0)==50){i=Ia()|0;break a}x=0;i=ka(8,f[R>>2]|0,Q|0,o|0,i|0)|0;W=x;x=0;do if(!(W&1)){x=0;i=ka(26,f[R>>2]|0,c|0,S|0,i|0)|0;W=x;x=0;if(W&1)break;x=0;va(161,a|0,i|0,h|0);W=x;x=0;if(W&1)break;HCa(U);u=T;return i|0}while(0);i=Ia()|0;break a}while(0);i=Ia()|0;break a}while(0);i=Ia()|0;break}i=Ia()|0}else V=16;while(0);if((V|0)==16)i=Ia()|0;HCa(U);Ua(i|0);return 0}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,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;L=u;u=u+528|0;d=L+504|0;A=L+16|0;F=L;G=L+488|0;H=L+472|0;I=L+456|0;J=L+440|0;K=L+424|0;e=L+408|0;g=L+392|0;h=L+376|0;i=L+360|0;j=L+344|0;k=L+328|0;l=L+312|0;m=L+296|0;n=L+280|0;o=L+264|0;p=L+248|0;q=L+232|0;r=L+216|0;s=L+200|0;t=L+184|0;v=L+168|0;w=L+152|0;x=L+136|0;y=L+120|0;z=L+104|0;B=L+88|0;C=L+72|0;D=L+56|0;E=L+40|0;Mw(A,b,f[c+12>>2]|0);if(D0a(A)|0){f[a>>2]=f[A>>2];f[a+4>>2]=f[A+4>>2];f[a+8>>2]=f[A+8>>2];f[a+12>>2]=f[A+12>>2];f[a+16>>2]=f[A+16>>2];f[a+20>>2]=f[A+20>>2]}else{f[F>>2]=f[A>>2];f[F+4>>2]=f[A+4>>2];f[F+8>>2]=f[A+8>>2];f[F+12>>2]=f[A+12>>2];do switch(f[c+8>>2]|0){case 1:case 0:{l6(G,F);f[d>>2]=f[G>>2];f[d+4>>2]=f[G+4>>2];f[d+8>>2]=f[G+8>>2];f[d+12>>2]=f[G+12>>2];rAa(a,d);break}case 3:case 2:{_5(H,F);f[d>>2]=f[H>>2];f[d+4>>2]=f[H+4>>2];f[d+8>>2]=f[H+8>>2];f[d+12>>2]=f[H+12>>2];rAa(a,d);break}case 5:case 4:{q9(I,F);f[d>>2]=f[I>>2];f[d+4>>2]=f[I+4>>2];f[d+8>>2]=f[I+8>>2];f[d+12>>2]=f[I+12>>2];rAa(a,d);break}case 21:case 20:{$W(J,F);f[d>>2]=f[J>>2];f[d+4>>2]=f[J+4>>2];f[d+8>>2]=f[J+8>>2];f[d+12>>2]=f[J+12>>2];rAa(a,d);break}case 45:{LHa(K,F);f[d>>2]=f[K>>2];f[d+4>>2]=f[K+4>>2];f[d+8>>2]=f[K+8>>2];f[d+12>>2]=f[K+12>>2];rAa(a,d);break}case 46:{K=F+8|0;pGa(e,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];rAa(a,d);break}case 22:{LCa(g,F);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];rAa(a,d);break}case 23:{gKa(h,F);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];rAa(a,d);break}case 24:{K=F+8|0;fKa(i,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];rAa(a,d);break}case 41:case 37:{efa(j,F);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];rAa(a,d);break}case 42:case 38:{dfa(k,F);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];rAa(a,d);break}case 39:case 35:{yha(l,F);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d+12>>2]=f[l+12>>2];rAa(a,d);break}case 40:case 36:{xha(m,F);f[d>>2]=f[m>>2];f[d+4>>2]=f[m+4>>2];f[d+8>>2]=f[m+8>>2];f[d+12>>2]=f[m+12>>2];rAa(a,d);break}case 49:case 47:{Waa(n,F);f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d+12>>2]=f[n+12>>2];rAa(a,d);break}case 50:case 48:{Iaa(o,F);f[d>>2]=f[o>>2];f[d+4>>2]=f[o+4>>2];f[d+8>>2]=f[o+8>>2];f[d+12>>2]=f[o+12>>2];rAa(a,d);break}case 51:{KCa(p,F);f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];rAa(a,d);break}case 7:case 6:{pN(q,F);f[d>>2]=f[q>>2];f[d+4>>2]=f[q+4>>2];f[d+8>>2]=f[q+8>>2];f[d+12>>2]=f[q+12>>2];rAa(a,d);break}case 9:case 8:{IO(r,F);f[d>>2]=f[r>>2];f[d+4>>2]=f[r+4>>2];f[d+8>>2]=f[r+8>>2];f[d+12>>2]=f[r+12>>2];rAa(a,d);break}case 11:case 10:{Wma(s,F);f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];rAa(a,d);break}case 13:case 12:{Cma(t,F);f[d>>2]=f[t>>2];f[d+4>>2]=f[t+4>>2];f[d+8>>2]=f[t+8>>2];f[d+12>>2]=f[t+12>>2];rAa(a,d);break}case 15:case 14:{bla(v,F);f[d>>2]=f[v>>2];f[d+4>>2]=f[v+4>>2];f[d+8>>2]=f[v+8>>2];f[d+12>>2]=f[v+12>>2];rAa(a,d);break}case 17:case 16:{Mia(w,F);f[d>>2]=f[w>>2];f[d+4>>2]=f[w+4>>2];f[d+8>>2]=f[w+8>>2];f[d+12>>2]=f[w+12>>2];rAa(a,d);break}case 19:case 18:{Vma(x,F);f[d>>2]=f[x>>2];f[d+4>>2]=f[x+4>>2];f[d+8>>2]=f[x+8>>2];f[d+12>>2]=f[x+12>>2];rAa(a,d);break}case 30:case 26:case 29:case 25:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];zx(y,b,c,d);f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2];f[d+12>>2]=f[y+12>>2];rAa(a,d);break}case 32:case 28:case 31:case 27:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];qx(z,b,c,d);f[d>>2]=f[z>>2];f[d+4>>2]=f[z+4>>2];f[d+8>>2]=f[z+8>>2];f[d+12>>2]=f[z+12>>2];rAa(a,d);break}case 33:{qHa(B,F);f[d>>2]=f[B>>2];f[d+4>>2]=f[B+4>>2];f[d+8>>2]=f[B+8>>2];f[d+12>>2]=f[B+12>>2];rAa(a,d);break}case 43:{HIa(C,F);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];rAa(a,d);break}case 34:{K=F+8|0;XFa(D,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[D>>2];f[d+4>>2]=f[D+4>>2];f[d+8>>2]=f[D+8>>2];f[d+12>>2]=f[D+12>>2];rAa(a,d);break}case 44:{VC(E,F);f[d>>2]=f[E>>2];f[d+4>>2]=f[E+4>>2];f[d+8>>2]=f[E+8>>2];f[d+12>>2]=f[E+12>>2];rAa(a,d);break}default:hb()}while(0)}u=L;return}function Cd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,228,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,225,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,229,b);ZO(d,(qSa(c)|0)+16|0);rS(d,225,(qSa(c)|0)+12|0);rS(d,225,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,230,b);rS(d,225,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,231,b);ZO(d,(WRa(c)|0)+16|0);ZO(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,232,b);rS(d,225,(IRa(c)|0)+28|0);ZO(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,233,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,225,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,234,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,225,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,235,b);b=DQa(c)|0;rS(d,225,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,225,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,236,b);break}case 10:{d=a+16|0;rS(d,237,b);rS(d,225,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,238,b);break}case 12:{d=a+16|0;rS(d,239,b);rS(d,225,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,240,b);rS(d,225,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,241,b);rS(d,225,(KRa(c)|0)+28|0);rS(d,225,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,242,b);rS(d,225,(YQa(c)|0)+24|0);rS(d,225,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,243,b);rS(d,225,(rQa(c)|0)+24|0);rS(d,225,(rQa(c)|0)+20|0);rS(d,225,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,244,b);rS(d,225,(LQa(c)|0)+20|0);rS(d,225,(LQa(c)|0)+16|0);rS(d,225,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,245,b);rS(d,225,(KQa(c)|0)+16|0);rS(d,225,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,246,b);break}case 16:{d=a+16|0;rS(d,247,b);rS(d,225,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,248,b);rS(d,225,(ARa(c)|0)+16|0);rS(d,225,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,249,b);rS(d,225,(yRa(c)|0)+16|0);rS(d,225,(yRa(c)|0)+12|0);rS(d,225,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,250,b);rS(d,225,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,251,b);ZO(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,252,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,225,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,253,b);break}case 23:{rS(a+16|0,254,b);break}default:hb()}while(0);return}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2560,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2559,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2561,b);rP(d,(qSa(c)|0)+16|0);rS(d,2559,(qSa(c)|0)+12|0);rS(d,2559,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2562,b);rS(d,2559,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2563,b);rP(d,(WRa(c)|0)+16|0);rP(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2564,b);rS(d,2559,(IRa(c)|0)+28|0);rP(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2565,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2559,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2566,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2559,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2567,b);b=DQa(c)|0;rS(d,2559,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2559,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2568,b);break}case 10:{d=a+16|0;rS(d,2569,b);rS(d,2559,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2570,b);break}case 12:{d=a+16|0;rS(d,2571,b);rS(d,2559,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2572,b);rS(d,2559,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2573,b);rS(d,2559,(KRa(c)|0)+28|0);rS(d,2559,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2574,b);rS(d,2559,(YQa(c)|0)+24|0);rS(d,2559,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2575,b);rS(d,2559,(rQa(c)|0)+24|0);rS(d,2559,(rQa(c)|0)+20|0);rS(d,2559,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2576,b);rS(d,2559,(LQa(c)|0)+20|0);rS(d,2559,(LQa(c)|0)+16|0);rS(d,2559,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2577,b);rS(d,2559,(KQa(c)|0)+16|0);rS(d,2559,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2578,b);break}case 16:{d=a+16|0;rS(d,2579,b);rS(d,2559,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2580,b);rS(d,2559,(ARa(c)|0)+16|0);rS(d,2559,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2581,b);rS(d,2559,(yRa(c)|0)+16|0);rS(d,2559,(yRa(c)|0)+12|0);rS(d,2559,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2582,b);rS(d,2559,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2583,b);rP(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2584,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2559,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2585,b);break}case 23:{rS(a+16|0,2586,b);break}default:hb()}while(0);return}function Ed(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,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;L=u;u=u+528|0;d=L+504|0;A=L+16|0;F=L;G=L+488|0;H=L+472|0;I=L+456|0;J=L+440|0;K=L+424|0;e=L+408|0;g=L+392|0;h=L+376|0;i=L+360|0;j=L+344|0;k=L+328|0;l=L+312|0;m=L+296|0;n=L+280|0;o=L+264|0;p=L+248|0;q=L+232|0;r=L+216|0;s=L+200|0;t=L+184|0;v=L+168|0;w=L+152|0;x=L+136|0;y=L+120|0;z=L+104|0;B=L+88|0;C=L+72|0;D=L+56|0;E=L+40|0;mz(A,b,f[c+12>>2]|0);if(D0a(A)|0){f[a>>2]=f[A>>2];f[a+4>>2]=f[A+4>>2];f[a+8>>2]=f[A+8>>2];f[a+12>>2]=f[A+12>>2];f[a+16>>2]=f[A+16>>2];f[a+20>>2]=f[A+20>>2]}else{f[F>>2]=f[A>>2];f[F+4>>2]=f[A+4>>2];f[F+8>>2]=f[A+8>>2];f[F+12>>2]=f[A+12>>2];do switch(f[c+8>>2]|0){case 1:case 0:{l6(G,F);f[d>>2]=f[G>>2];f[d+4>>2]=f[G+4>>2];f[d+8>>2]=f[G+8>>2];f[d+12>>2]=f[G+12>>2];rAa(a,d);break}case 3:case 2:{_5(H,F);f[d>>2]=f[H>>2];f[d+4>>2]=f[H+4>>2];f[d+8>>2]=f[H+8>>2];f[d+12>>2]=f[H+12>>2];rAa(a,d);break}case 5:case 4:{q9(I,F);f[d>>2]=f[I>>2];f[d+4>>2]=f[I+4>>2];f[d+8>>2]=f[I+8>>2];f[d+12>>2]=f[I+12>>2];rAa(a,d);break}case 21:case 20:{$W(J,F);f[d>>2]=f[J>>2];f[d+4>>2]=f[J+4>>2];f[d+8>>2]=f[J+8>>2];f[d+12>>2]=f[J+12>>2];rAa(a,d);break}case 45:{LHa(K,F);f[d>>2]=f[K>>2];f[d+4>>2]=f[K+4>>2];f[d+8>>2]=f[K+8>>2];f[d+12>>2]=f[K+12>>2];rAa(a,d);break}case 46:{K=F+8|0;pGa(e,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];rAa(a,d);break}case 22:{LCa(g,F);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];rAa(a,d);break}case 23:{gKa(h,F);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];rAa(a,d);break}case 24:{K=F+8|0;fKa(i,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];rAa(a,d);break}case 41:case 37:{efa(j,F);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];rAa(a,d);break}case 42:case 38:{dfa(k,F);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];rAa(a,d);break}case 39:case 35:{yha(l,F);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d+12>>2]=f[l+12>>2];rAa(a,d);break}case 40:case 36:{xha(m,F);f[d>>2]=f[m>>2];f[d+4>>2]=f[m+4>>2];f[d+8>>2]=f[m+8>>2];f[d+12>>2]=f[m+12>>2];rAa(a,d);break}case 49:case 47:{Waa(n,F);f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d+12>>2]=f[n+12>>2];rAa(a,d);break}case 50:case 48:{Iaa(o,F);f[d>>2]=f[o>>2];f[d+4>>2]=f[o+4>>2];f[d+8>>2]=f[o+8>>2];f[d+12>>2]=f[o+12>>2];rAa(a,d);break}case 51:{KCa(p,F);f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];rAa(a,d);break}case 7:case 6:{pN(q,F);f[d>>2]=f[q>>2];f[d+4>>2]=f[q+4>>2];f[d+8>>2]=f[q+8>>2];f[d+12>>2]=f[q+12>>2];rAa(a,d);break}case 9:case 8:{IO(r,F);f[d>>2]=f[r>>2];f[d+4>>2]=f[r+4>>2];f[d+8>>2]=f[r+8>>2];f[d+12>>2]=f[r+12>>2];rAa(a,d);break}case 11:case 10:{Wma(s,F);f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];rAa(a,d);break}case 13:case 12:{Cma(t,F);f[d>>2]=f[t>>2];f[d+4>>2]=f[t+4>>2];f[d+8>>2]=f[t+8>>2];f[d+12>>2]=f[t+12>>2];rAa(a,d);break}case 15:case 14:{bla(v,F);f[d>>2]=f[v>>2];f[d+4>>2]=f[v+4>>2];f[d+8>>2]=f[v+8>>2];f[d+12>>2]=f[v+12>>2];rAa(a,d);break}case 17:case 16:{Mia(w,F);f[d>>2]=f[w>>2];f[d+4>>2]=f[w+4>>2];f[d+8>>2]=f[w+8>>2];f[d+12>>2]=f[w+12>>2];rAa(a,d);break}case 19:case 18:{Vma(x,F);f[d>>2]=f[x>>2];f[d+4>>2]=f[x+4>>2];f[d+8>>2]=f[x+8>>2];f[d+12>>2]=f[x+12>>2];rAa(a,d);break}case 30:case 26:case 29:case 25:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];zx(y,b,c,d);f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2];f[d+12>>2]=f[y+12>>2];rAa(a,d);break}case 32:case 28:case 31:case 27:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];qx(z,b,c,d);f[d>>2]=f[z>>2];f[d+4>>2]=f[z+4>>2];f[d+8>>2]=f[z+8>>2];f[d+12>>2]=f[z+12>>2];rAa(a,d);break}case 33:{qHa(B,F);f[d>>2]=f[B>>2];f[d+4>>2]=f[B+4>>2];f[d+8>>2]=f[B+8>>2];f[d+12>>2]=f[B+12>>2];rAa(a,d);break}case 43:{HIa(C,F);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];rAa(a,d);break}case 34:{K=F+8|0;XFa(D,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[D>>2];f[d+4>>2]=f[D+4>>2];f[d+8>>2]=f[D+8>>2];f[d+12>>2]=f[D+12>>2];rAa(a,d);break}case 44:{VC(E,F);f[d>>2]=f[E>>2];f[d+4>>2]=f[E+4>>2];f[d+8>>2]=f[E+8>>2];f[d+12>>2]=f[E+12>>2];rAa(a,d);break}default:hb()}while(0)}u=L;return}function Fd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,198,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,197,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,199,b);TP(d,(qSa(c)|0)+16|0);rS(d,197,(qSa(c)|0)+12|0);rS(d,197,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,200,b);rS(d,197,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,201,b);TP(d,(WRa(c)|0)+16|0);TP(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,202,b);rS(d,197,(IRa(c)|0)+28|0);TP(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,203,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,197,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,204,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,197,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,205,b);b=DQa(c)|0;rS(d,197,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,197,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,206,b);break}case 10:{d=a+16|0;rS(d,207,b);rS(d,197,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,208,b);break}case 12:{d=a+16|0;rS(d,209,b);rS(d,197,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,210,b);rS(d,197,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,211,b);rS(d,197,(KRa(c)|0)+28|0);rS(d,197,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,212,b);rS(d,197,(YQa(c)|0)+24|0);rS(d,197,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,213,b);rS(d,197,(rQa(c)|0)+24|0);rS(d,197,(rQa(c)|0)+20|0);rS(d,197,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,214,b);rS(d,197,(LQa(c)|0)+20|0);rS(d,197,(LQa(c)|0)+16|0);rS(d,197,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,215,b);rS(d,197,(KQa(c)|0)+16|0);rS(d,197,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,216,b);break}case 16:{d=a+16|0;rS(d,217,b);rS(d,197,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,218,b);rS(d,197,(ARa(c)|0)+16|0);rS(d,197,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,219,b);rS(d,197,(yRa(c)|0)+16|0);rS(d,197,(yRa(c)|0)+12|0);rS(d,197,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,220,b);rS(d,197,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,221,b);TP(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,222,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,197,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,223,b);break}case 23:{rS(a+16|0,224,b);break}default:hb()}while(0);return}function Gd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+224|0;p=B+204|0;C=B+208|0;A=B+192|0;m=B+184|0;n=B+92|0;o=B;f[p>>2]=c;q=c;if(Iab(f[c+8>>2]|0)|0?(d=c+8|0,(K5(a+68|0,d)|0)==0):0){y=a+56|0;z=WW(y,d)|0;e=f[z>>2]|0;f[C>>2]=e;v=z+4|0;g=f[v>>2]|0;f[C+4>>2]=g;t=z+8|0;f[C+8>>2]=f[t>>2];f[t>>2]=0;f[v>>2]=0;f[z>>2]=0;$T(y,d);y=e;a:do if((g|0)!=(e|0)){x=0;d=ga(262,f[f[y>>2]>>2]|0)|0;z=x;x=0;do if(z&1)w=4;else{if(f[d+12>>2]|0){x=0;wa(71,77992,76797,338,78041);x=0;w=4;break}z=a+44|0;h=a+48|0;v=g-e>>4;e=f[z>>2]|0;b:while(1){if((e|0)==(h|0))break a;t=f[e+16>>2]|0;d=0;while(1){if(d>>>0>=v>>>0)break b;if(!(mfa(y+(d<<4)+4|0,t)|0))break;else d=d+1|0}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}l=A+4|0;k=a+40|0;j=0;while(1){if(j>>>0>=v>>>0){w=44;break}x=0;d=ia(126,y+(j<<4)+4|0,t|0)|0;i=x;x=0;if(i&1){w=29;break}h=f[d>>2]|0;x=0;d=ga(262,f[f[y+(j<<4)>>2]>>2]|0)|0;i=x;x=0;if(i&1){w=30;break}x=0;i=ga(257,f[h>>2]|0)|0;g=x;x=0;if(g&1){w=31;break}g=d+16|0;d=f[g>>2]|0;if(d|0){x=0;ua(1059,A|0,d|0);e=x;x=0;if(e&1){w=32;break}e=f[l>>2]|0;d=f[A>>2]|0;while(1){if((d|0)==(e|0))break;if((f[d>>2]|0)==(i|0)){w=34;break}else d=d+4|0}if((w|0)==34){w=0;v0a(m);f[h>>2]=m;e=_Ya(f[k>>2]|0)|0;x=0;va(101,n|0,e|0,f[g>>2]|0);g=x;x=0;if(g&1){w=36;break}g=_Ya(f[k>>2]|0)|0;x=0;va(101,o|0,g|0,i|0);g=x;x=0;if(g&1){w=37;break}f[h>>2]=i;i=xj(n,o)|0;V7(o);V7(n);if(i){w=41;break}}_$a(A)}j=j+1|0}if((w|0)==29){d=Ia()|0;break}else if((w|0)==30){d=Ia()|0;break}else if((w|0)==31){d=Ia()|0;break}else if((w|0)==32)d=Ia()|0;else if((w|0)==36){d=Ia()|0;w=38}else if((w|0)==37){d=Ia()|0;V7(n);w=38}else if((w|0)==41){_$a(A);break a}else if((w|0)==44){g=c+16|0;if(Bbb(f[g>>2]|0)|0){h=c+12|0;x=0;d=ga(218,h|0)|0;o=x;x=0;if(!(o&1))if(V6a(f[f[d>>2]>>2]|0)|0){x=0;d=ia(126,z|0,t|0)|0;q=x;x=0;if(q&1){d=Ia()|0;break}d=f[d>>2]|0;x=0;e=ga(257,f[d>>2]|0)|0;q=x;x=0;if(!(q&1)?(r=f[e+12>>2]|0,s=(Bbb(f[g>>2]|0)|0)+-1|0,x=0,s=ia(75,h|0,s|0)|0,q=x,x=0,!(q&1)):0){f[s>>2]=r;f[c+4>>2]=f[r+4>>2];pVa(f[d>>2]|0);k=a+36|0;j=0;while(1){if(j>>>0>=v>>>0){w=56;break}x=0;d=ia(126,y+(j<<4)+4|0,t|0)|0;w=x;x=0;if(w&1){w=63;break}g=f[d>>2]|0;i=f[y+(j<<4)>>2]|0;x=0;h=ga(262,f[i>>2]|0)|0;w=x;x=0;if(w&1){w=64;break}d=h+12|0;if(f[d>>2]|0){w=62;break}x=0;e=ga(257,f[g>>2]|0)|0;w=x;x=0;if(w&1){w=71;break}if(!(f[h+16>>2]|0)){f[d>>2]=f[e+12>>2];pVa(e)}else{f[d>>2]=e;bLa(e,1);d=f[k>>2]|0;Bbb(d)|0;x=0;d=ga(282,d+144|0)|0;w=x;x=0;if(w&1){w=71;break}f[g>>2]=d;xqa(h);d=f[k>>2]|0;Bbb(d)|0;U0a(A,d);x=0;d=ia(125,f[A>>2]|0,h|0)|0;w=x;x=0;if(w&1){w=72;break}f[i>>2]=d}j=j+1|0}if((w|0)==56){d=f[k>>2]|0;Bbb(d)|0;U0a(A,d);x=0;d=ja(45,A|0,t|0,c|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break}else{BVa(f[a+16>>2]|0,d)|0;t3(z);b[a+92>>0]=1;break a}}else if((w|0)==62){x=0;wa(71,91194,76797,423,78041);x=0;d=Ia()|0}else if((w|0)==63){d=Ia()|0;break}else if((w|0)==64)d=Ia()|0;else if((w|0)==71){d=Ia()|0;break}else if((w|0)==72){d=Ia()|0;break}break}d=Ia()|0;break}else w=47}else w=47;do if((w|0)==47){d=a+148|0;e=f[d>>2]|0;if((e|0)==(f[a+152>>2]|0)){x=0;ua(104,a+144|0,p|0);a=x;x=0;if(a&1)break;else break a}else{f[e>>2]=q;f[d>>2]=(f[d>>2]|0)+4;break a}}while(0);d=Ia()|0;break}if((w|0)==38)_$a(A)}while(0);if((w|0)==4)d=Ia()|0;U6(C);Ua(d|0)}while(0);U6(C)}u=B;return}function Hd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+224|0;p=B+204|0;C=B+208|0;A=B+192|0;m=B+184|0;n=B+92|0;o=B;f[p>>2]=c;q=c;if(Iab(f[c+8>>2]|0)|0?(d=c+8|0,(K5(a+68|0,d)|0)==0):0){y=a+56|0;z=WW(y,d)|0;e=f[z>>2]|0;f[C>>2]=e;v=z+4|0;g=f[v>>2]|0;f[C+4>>2]=g;t=z+8|0;f[C+8>>2]=f[t>>2];f[t>>2]=0;f[v>>2]=0;f[z>>2]=0;bU(y,d);y=e;a:do if((g|0)!=(e|0)){x=0;d=ga(262,f[f[y>>2]>>2]|0)|0;z=x;x=0;do if(z&1)w=4;else{if(f[d+12>>2]|0){x=0;wa(71,77992,76797,338,78041);x=0;w=4;break}z=a+44|0;h=a+48|0;v=g-e>>4;e=f[z>>2]|0;b:while(1){if((e|0)==(h|0))break a;t=f[e+16>>2]|0;d=0;while(1){if(d>>>0>=v>>>0)break b;if(!(mfa(y+(d<<4)+4|0,t)|0))break;else d=d+1|0}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}l=A+4|0;k=a+40|0;j=0;while(1){if(j>>>0>=v>>>0){w=44;break}x=0;d=ia(124,y+(j<<4)+4|0,t|0)|0;i=x;x=0;if(i&1){w=29;break}h=f[d>>2]|0;x=0;d=ga(262,f[f[y+(j<<4)>>2]>>2]|0)|0;i=x;x=0;if(i&1){w=30;break}x=0;i=ga(257,f[h>>2]|0)|0;g=x;x=0;if(g&1){w=31;break}g=d+16|0;d=f[g>>2]|0;if(d|0){x=0;ua(1059,A|0,d|0);e=x;x=0;if(e&1){w=32;break}e=f[l>>2]|0;d=f[A>>2]|0;while(1){if((d|0)==(e|0))break;if((f[d>>2]|0)==(i|0)){w=34;break}else d=d+4|0}if((w|0)==34){w=0;v0a(m);f[h>>2]=m;e=_Ya(f[k>>2]|0)|0;x=0;va(101,n|0,e|0,f[g>>2]|0);g=x;x=0;if(g&1){w=36;break}g=_Ya(f[k>>2]|0)|0;x=0;va(101,o|0,g|0,i|0);g=x;x=0;if(g&1){w=37;break}f[h>>2]=i;i=xj(n,o)|0;V7(o);V7(n);if(i){w=41;break}}_$a(A)}j=j+1|0}if((w|0)==29){d=Ia()|0;break}else if((w|0)==30){d=Ia()|0;break}else if((w|0)==31){d=Ia()|0;break}else if((w|0)==32)d=Ia()|0;else if((w|0)==36){d=Ia()|0;w=38}else if((w|0)==37){d=Ia()|0;V7(n);w=38}else if((w|0)==41){_$a(A);break a}else if((w|0)==44){g=c+16|0;if(Bbb(f[g>>2]|0)|0){h=c+12|0;x=0;d=ga(218,h|0)|0;o=x;x=0;if(!(o&1))if(V6a(f[f[d>>2]>>2]|0)|0){x=0;d=ia(124,z|0,t|0)|0;q=x;x=0;if(q&1){d=Ia()|0;break}d=f[d>>2]|0;x=0;e=ga(257,f[d>>2]|0)|0;q=x;x=0;if(!(q&1)?(r=f[e+12>>2]|0,s=(Bbb(f[g>>2]|0)|0)+-1|0,x=0,s=ia(75,h|0,s|0)|0,q=x,x=0,!(q&1)):0){f[s>>2]=r;f[c+4>>2]=f[r+4>>2];pVa(f[d>>2]|0);k=a+36|0;j=0;while(1){if(j>>>0>=v>>>0){w=56;break}x=0;d=ia(124,y+(j<<4)+4|0,t|0)|0;w=x;x=0;if(w&1){w=63;break}g=f[d>>2]|0;i=f[y+(j<<4)>>2]|0;x=0;h=ga(262,f[i>>2]|0)|0;w=x;x=0;if(w&1){w=64;break}d=h+12|0;if(f[d>>2]|0){w=62;break}x=0;e=ga(257,f[g>>2]|0)|0;w=x;x=0;if(w&1){w=71;break}if(!(f[h+16>>2]|0)){f[d>>2]=f[e+12>>2];pVa(e)}else{f[d>>2]=e;bLa(e,1);d=f[k>>2]|0;Bbb(d)|0;x=0;d=ga(282,d+144|0)|0;w=x;x=0;if(w&1){w=71;break}f[g>>2]=d;xqa(h);d=f[k>>2]|0;Bbb(d)|0;U0a(A,d);x=0;d=ia(125,f[A>>2]|0,h|0)|0;w=x;x=0;if(w&1){w=72;break}f[i>>2]=d}j=j+1|0}if((w|0)==56){d=f[k>>2]|0;Bbb(d)|0;U0a(A,d);x=0;d=ja(45,A|0,t|0,c|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break}else{BVa(f[a+16>>2]|0,d)|0;v3(z);b[a+92>>0]=1;break a}}else if((w|0)==62){x=0;wa(71,91194,76797,423,78041);x=0;d=Ia()|0}else if((w|0)==63){d=Ia()|0;break}else if((w|0)==64)d=Ia()|0;else if((w|0)==71){d=Ia()|0;break}else if((w|0)==72){d=Ia()|0;break}break}d=Ia()|0;break}else w=47}else w=47;do if((w|0)==47){d=a+148|0;e=f[d>>2]|0;if((e|0)==(f[a+152>>2]|0)){x=0;ua(104,a+144|0,p|0);a=x;x=0;if(a&1)break;else break a}else{f[e>>2]=q;f[d>>2]=(f[d>>2]|0)+4;break a}}while(0);d=Ia()|0;break}if((w|0)==38)_$a(A)}while(0);if((w|0)==4)d=Ia()|0;W6(C);Ua(d|0)}while(0);W6(C)}u=B;return}function Id(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2133,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2132,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2134,b);xQ(d,(qSa(c)|0)+16|0);rS(d,2132,(qSa(c)|0)+12|0);rS(d,2132,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2135,b);rS(d,2132,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2136,b);xQ(d,(WRa(c)|0)+16|0);xQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2137,b);rS(d,2132,(IRa(c)|0)+28|0);xQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2138,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2132,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2139,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2132,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2140,b);b=DQa(c)|0;rS(d,2132,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2132,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2141,b);break}case 10:{d=a+16|0;rS(d,2142,b);rS(d,2132,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2143,b);break}case 12:{d=a+16|0;rS(d,2144,b);rS(d,2132,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2145,b);rS(d,2132,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2146,b);rS(d,2132,(KRa(c)|0)+28|0);rS(d,2132,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2147,b);rS(d,2132,(YQa(c)|0)+24|0);rS(d,2132,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2148,b);rS(d,2132,(rQa(c)|0)+24|0);rS(d,2132,(rQa(c)|0)+20|0);rS(d,2132,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2149,b);rS(d,2132,(LQa(c)|0)+20|0);rS(d,2132,(LQa(c)|0)+16|0);rS(d,2132,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2150,b);rS(d,2132,(KQa(c)|0)+16|0);rS(d,2132,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2151,b);break}case 16:{d=a+16|0;rS(d,2152,b);rS(d,2132,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2153,b);rS(d,2132,(ARa(c)|0)+16|0);rS(d,2132,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2154,b);rS(d,2132,(yRa(c)|0)+16|0);rS(d,2132,(yRa(c)|0)+12|0);rS(d,2132,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2155,b);rS(d,2132,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2156,b);xQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2157,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2132,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2158,b);break}case 23:{rS(a+16|0,2159,b);break}default:hb()}while(0);return}function Jd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2284,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2283,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2285,b);KQ(d,(qSa(c)|0)+16|0);rS(d,2283,(qSa(c)|0)+12|0);rS(d,2283,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2286,b);rS(d,2283,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2287,b);KQ(d,(WRa(c)|0)+16|0);KQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2288,b);rS(d,2283,(IRa(c)|0)+28|0);KQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2289,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2283,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2290,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2283,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2291,b);b=DQa(c)|0;rS(d,2283,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2283,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2292,b);break}case 10:{d=a+16|0;rS(d,2293,b);rS(d,2283,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2294,b);break}case 12:{d=a+16|0;rS(d,2295,b);rS(d,2283,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2296,b);rS(d,2283,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2297,b);rS(d,2283,(KRa(c)|0)+28|0);rS(d,2283,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2298,b);rS(d,2283,(YQa(c)|0)+24|0);rS(d,2283,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2299,b);rS(d,2283,(rQa(c)|0)+24|0);rS(d,2283,(rQa(c)|0)+20|0);rS(d,2283,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2300,b);rS(d,2283,(LQa(c)|0)+20|0);rS(d,2283,(LQa(c)|0)+16|0);rS(d,2283,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2301,b);rS(d,2283,(KQa(c)|0)+16|0);rS(d,2283,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2302,b);break}case 16:{d=a+16|0;rS(d,2303,b);rS(d,2283,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2304,b);rS(d,2283,(ARa(c)|0)+16|0);rS(d,2283,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2305,b);rS(d,2283,(yRa(c)|0)+16|0);rS(d,2283,(yRa(c)|0)+12|0);rS(d,2283,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2306,b);rS(d,2283,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2307,b);KQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2308,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2283,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2309,b);break}case 23:{rS(a+16|0,2310,b);break}default:hb()}while(0);return}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1250,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1243,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1252,b);NQ(d,(qSa(c)|0)+16|0);rS(d,1243,(qSa(c)|0)+12|0);rS(d,1243,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1253,b);rS(d,1243,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1254,b);NQ(d,(WRa(c)|0)+16|0);NQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1255,b);rS(d,1243,(IRa(c)|0)+28|0);NQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1259,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1243,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1260,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1243,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1261,b);b=DQa(c)|0;rS(d,1243,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1243,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1262,b);break}case 10:{d=a+16|0;rS(d,1263,b);rS(d,1243,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1264,b);break}case 12:{d=a+16|0;rS(d,1265,b);rS(d,1243,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1266,b);rS(d,1243,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1267,b);rS(d,1243,(KRa(c)|0)+28|0);rS(d,1243,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1268,b);rS(d,1243,(YQa(c)|0)+24|0);rS(d,1243,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1269,b);rS(d,1243,(rQa(c)|0)+24|0);rS(d,1243,(rQa(c)|0)+20|0);rS(d,1243,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1270,b);rS(d,1243,(LQa(c)|0)+20|0);rS(d,1243,(LQa(c)|0)+16|0);rS(d,1243,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1271,b);rS(d,1243,(KQa(c)|0)+16|0);rS(d,1243,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1272,b);break}case 16:{d=a+16|0;rS(d,1273,b);rS(d,1243,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1274,b);rS(d,1243,(ARa(c)|0)+16|0);rS(d,1243,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1275,b);rS(d,1243,(yRa(c)|0)+16|0);rS(d,1243,(yRa(c)|0)+12|0);rS(d,1243,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1276,b);rS(d,1243,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1256,b);NQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1277,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1243,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1278,b);break}case 23:{rS(a+16|0,1257,b);break}default:hb()}while(0);return}function Ld(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1030,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1023,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1032,b);OQ(d,(qSa(c)|0)+16|0);rS(d,1023,(qSa(c)|0)+12|0);rS(d,1023,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1033,b);rS(d,1023,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1034,b);OQ(d,(WRa(c)|0)+16|0);OQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1035,b);rS(d,1023,(IRa(c)|0)+28|0);OQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1039,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1023,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1040,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1023,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1041,b);b=DQa(c)|0;rS(d,1023,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1023,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1042,b);break}case 10:{d=a+16|0;rS(d,1043,b);rS(d,1023,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1044,b);break}case 12:{d=a+16|0;rS(d,1045,b);rS(d,1023,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1046,b);rS(d,1023,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1047,b);rS(d,1023,(KRa(c)|0)+28|0);rS(d,1023,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1048,b);rS(d,1023,(YQa(c)|0)+24|0);rS(d,1023,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1049,b);rS(d,1023,(rQa(c)|0)+24|0);rS(d,1023,(rQa(c)|0)+20|0);rS(d,1023,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1050,b);rS(d,1023,(LQa(c)|0)+20|0);rS(d,1023,(LQa(c)|0)+16|0);rS(d,1023,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1051,b);rS(d,1023,(KQa(c)|0)+16|0);rS(d,1023,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1052,b);break}case 16:{d=a+16|0;rS(d,1053,b);rS(d,1023,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1054,b);rS(d,1023,(ARa(c)|0)+16|0);rS(d,1023,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1055,b);rS(d,1023,(yRa(c)|0)+16|0);rS(d,1023,(yRa(c)|0)+12|0);rS(d,1023,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1056,b);rS(d,1023,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1036,b);OQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1057,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1023,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1058,b);break}case 23:{rS(a+16|0,1037,b);break}default:hb()}while(0);return}function Md(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1155,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1148,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1157,b);PQ(d,(qSa(c)|0)+16|0);rS(d,1148,(qSa(c)|0)+12|0);rS(d,1148,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1158,b);rS(d,1148,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1159,b);PQ(d,(WRa(c)|0)+16|0);PQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1160,b);rS(d,1148,(IRa(c)|0)+28|0);PQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1164,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1148,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1165,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1148,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1166,b);b=DQa(c)|0;rS(d,1148,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1148,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1167,b);break}case 10:{d=a+16|0;rS(d,1168,b);rS(d,1148,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1169,b);break}case 12:{d=a+16|0;rS(d,1170,b);rS(d,1148,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1171,b);rS(d,1148,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1172,b);rS(d,1148,(KRa(c)|0)+28|0);rS(d,1148,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1173,b);rS(d,1148,(YQa(c)|0)+24|0);rS(d,1148,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1174,b);rS(d,1148,(rQa(c)|0)+24|0);rS(d,1148,(rQa(c)|0)+20|0);rS(d,1148,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1175,b);rS(d,1148,(LQa(c)|0)+20|0);rS(d,1148,(LQa(c)|0)+16|0);rS(d,1148,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1176,b);rS(d,1148,(KQa(c)|0)+16|0);rS(d,1148,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1177,b);break}case 16:{d=a+16|0;rS(d,1178,b);rS(d,1148,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1179,b);rS(d,1148,(ARa(c)|0)+16|0);rS(d,1148,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1180,b);rS(d,1148,(yRa(c)|0)+16|0);rS(d,1148,(yRa(c)|0)+12|0);rS(d,1148,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1181,b);rS(d,1148,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1161,b);PQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1182,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1148,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1183,b);break}case 23:{rS(a+16|0,1162,b);break}default:hb()}while(0);return}function Nd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2014,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2013,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2015,b);QQ(d,(qSa(c)|0)+16|0);rS(d,2013,(qSa(c)|0)+12|0);rS(d,2013,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2016,b);rS(d,2013,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2017,b);QQ(d,(WRa(c)|0)+16|0);QQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2018,b);rS(d,2013,(IRa(c)|0)+28|0);QQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2019,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2013,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2020,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2013,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2021,b);b=DQa(c)|0;rS(d,2013,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2013,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2022,b);break}case 10:{d=a+16|0;rS(d,2023,b);rS(d,2013,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2024,b);break}case 12:{d=a+16|0;rS(d,2025,b);rS(d,2013,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2026,b);rS(d,2013,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2027,b);rS(d,2013,(KRa(c)|0)+28|0);rS(d,2013,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2028,b);rS(d,2013,(YQa(c)|0)+24|0);rS(d,2013,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2029,b);rS(d,2013,(rQa(c)|0)+24|0);rS(d,2013,(rQa(c)|0)+20|0);rS(d,2013,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2030,b);rS(d,2013,(LQa(c)|0)+20|0);rS(d,2013,(LQa(c)|0)+16|0);rS(d,2013,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2031,b);rS(d,2013,(KQa(c)|0)+16|0);rS(d,2013,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2032,b);break}case 16:{d=a+16|0;rS(d,2033,b);rS(d,2013,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2034,b);rS(d,2013,(ARa(c)|0)+16|0);rS(d,2013,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2035,b);rS(d,2013,(yRa(c)|0)+16|0);rS(d,2013,(yRa(c)|0)+12|0);rS(d,2013,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2036,b);rS(d,2013,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2037,b);QQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2038,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2013,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2039,b);break}case 23:{rS(a+16|0,2040,b);break}default:hb()}while(0);return}function Od(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2713,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2712,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2714,b);WQ(d,(qSa(c)|0)+16|0);rS(d,2712,(qSa(c)|0)+12|0);rS(d,2712,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2715,b);rS(d,2712,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2716,b);WQ(d,(WRa(c)|0)+16|0);WQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2717,b);rS(d,2712,(IRa(c)|0)+28|0);WQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2718,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2712,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2719,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2712,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2720,b);b=DQa(c)|0;rS(d,2712,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2712,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2721,b);break}case 10:{d=a+16|0;rS(d,2722,b);rS(d,2712,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2723,b);break}case 12:{d=a+16|0;rS(d,2724,b);rS(d,2712,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2725,b);rS(d,2712,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2726,b);rS(d,2712,(KRa(c)|0)+28|0);rS(d,2712,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2727,b);rS(d,2712,(YQa(c)|0)+24|0);rS(d,2712,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2728,b);rS(d,2712,(rQa(c)|0)+24|0);rS(d,2712,(rQa(c)|0)+20|0);rS(d,2712,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2729,b);rS(d,2712,(LQa(c)|0)+20|0);rS(d,2712,(LQa(c)|0)+16|0);rS(d,2712,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2730,b);rS(d,2712,(KQa(c)|0)+16|0);rS(d,2712,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2731,b);break}case 16:{d=a+16|0;rS(d,2732,b);rS(d,2712,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2733,b);rS(d,2712,(ARa(c)|0)+16|0);rS(d,2712,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2734,b);rS(d,2712,(yRa(c)|0)+16|0);rS(d,2712,(yRa(c)|0)+12|0);rS(d,2712,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2735,b);rS(d,2712,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2736,b);WQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2737,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2712,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2738,b);break}case 23:{rS(a+16|0,2739,b);break}default:hb()}while(0);return}function Pd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2248,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2247,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2249,b);YQ(d,(qSa(c)|0)+16|0);rS(d,2247,(qSa(c)|0)+12|0);rS(d,2247,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2250,b);rS(d,2247,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2251,b);YQ(d,(WRa(c)|0)+16|0);YQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2252,b);rS(d,2247,(IRa(c)|0)+28|0);YQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2253,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2247,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2254,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2247,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2255,b);b=DQa(c)|0;rS(d,2247,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2247,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2256,b);break}case 10:{d=a+16|0;rS(d,2257,b);rS(d,2247,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2258,b);break}case 12:{d=a+16|0;rS(d,2259,b);rS(d,2247,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2260,b);rS(d,2247,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2261,b);rS(d,2247,(KRa(c)|0)+28|0);rS(d,2247,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2262,b);rS(d,2247,(YQa(c)|0)+24|0);rS(d,2247,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2263,b);rS(d,2247,(rQa(c)|0)+24|0);rS(d,2247,(rQa(c)|0)+20|0);rS(d,2247,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2264,b);rS(d,2247,(LQa(c)|0)+20|0);rS(d,2247,(LQa(c)|0)+16|0);rS(d,2247,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2265,b);rS(d,2247,(KQa(c)|0)+16|0);rS(d,2247,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2266,b);break}case 16:{d=a+16|0;rS(d,2267,b);rS(d,2247,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2268,b);rS(d,2247,(ARa(c)|0)+16|0);rS(d,2247,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2269,b);rS(d,2247,(yRa(c)|0)+16|0);rS(d,2247,(yRa(c)|0)+12|0);rS(d,2247,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2270,b);rS(d,2247,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2271,b);YQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2272,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2247,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2273,b);break}case 23:{rS(a+16|0,2274,b);break}default:hb()}while(0);return}function Qd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2743,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2740,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2744,b);ZQ(d,(qSa(c)|0)+16|0);rS(d,2740,(qSa(c)|0)+12|0);rS(d,2740,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2745,b);rS(d,2740,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2746,b);ZQ(d,(WRa(c)|0)+16|0);ZQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2747,b);rS(d,2740,(IRa(c)|0)+28|0);ZQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2748,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2740,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2749,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2740,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2750,b);b=DQa(c)|0;rS(d,2740,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2740,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2751,b);break}case 10:{d=a+16|0;rS(d,2752,b);rS(d,2740,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2753,b);break}case 12:{d=a+16|0;rS(d,2754,b);rS(d,2740,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2755,b);rS(d,2740,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2756,b);rS(d,2740,(KRa(c)|0)+28|0);rS(d,2740,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2757,b);rS(d,2740,(YQa(c)|0)+24|0);rS(d,2740,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2758,b);rS(d,2740,(rQa(c)|0)+24|0);rS(d,2740,(rQa(c)|0)+20|0);rS(d,2740,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2759,b);rS(d,2740,(LQa(c)|0)+20|0);rS(d,2740,(LQa(c)|0)+16|0);rS(d,2740,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2760,b);rS(d,2740,(KQa(c)|0)+16|0);rS(d,2740,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2761,b);break}case 16:{d=a+16|0;rS(d,2762,b);rS(d,2740,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2763,b);rS(d,2740,(ARa(c)|0)+16|0);rS(d,2740,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2764,b);rS(d,2740,(yRa(c)|0)+16|0);rS(d,2740,(yRa(c)|0)+12|0);rS(d,2740,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2765,b);rS(d,2740,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2766,b);ZQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2767,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2740,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2768,b);break}case 23:{rS(a+16|0,2769,b);break}default:hb()}while(0);return}function Rd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1429,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1416,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1430,b);$Q(d,(qSa(c)|0)+16|0);rS(d,1416,(qSa(c)|0)+12|0);rS(d,1416,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1431,b);rS(d,1416,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1432,b);$Q(d,(WRa(c)|0)+16|0);$Q(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1433,b);rS(d,1416,(IRa(c)|0)+28|0);$Q(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1434,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1416,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1435,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1416,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1436,b);b=DQa(c)|0;rS(d,1416,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1416,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1437,b);break}case 10:{d=a+16|0;rS(d,1438,b);rS(d,1416,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1439,b);break}case 12:{d=a+16|0;rS(d,1440,b);rS(d,1416,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1441,b);rS(d,1416,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1442,b);rS(d,1416,(KRa(c)|0)+28|0);rS(d,1416,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1443,b);rS(d,1416,(YQa(c)|0)+24|0);rS(d,1416,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1444,b);rS(d,1416,(rQa(c)|0)+24|0);rS(d,1416,(rQa(c)|0)+20|0);rS(d,1416,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1445,b);rS(d,1416,(LQa(c)|0)+20|0);rS(d,1416,(LQa(c)|0)+16|0);rS(d,1416,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1446,b);rS(d,1416,(KQa(c)|0)+16|0);rS(d,1416,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1447,b);break}case 16:{d=a+16|0;rS(d,1448,b);rS(d,1416,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1449,b);rS(d,1416,(ARa(c)|0)+16|0);rS(d,1416,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1450,b);rS(d,1416,(yRa(c)|0)+16|0);rS(d,1416,(yRa(c)|0)+12|0);rS(d,1416,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1451,b);rS(d,1416,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1452,b);$Q(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1453,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1416,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1454,b);break}case 23:{rS(a+16|0,1455,b);break}default:hb()}while(0);return}function Sd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1900,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1897,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1901,b);eR(d,(qSa(c)|0)+16|0);rS(d,1897,(qSa(c)|0)+12|0);rS(d,1897,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1902,b);rS(d,1897,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1903,b);eR(d,(WRa(c)|0)+16|0);eR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1904,b);rS(d,1897,(IRa(c)|0)+28|0);eR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1905,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1897,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1906,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1897,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1907,b);b=DQa(c)|0;rS(d,1897,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1897,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1908,b);break}case 10:{d=a+16|0;rS(d,1909,b);rS(d,1897,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1910,b);break}case 12:{d=a+16|0;rS(d,1911,b);rS(d,1897,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1912,b);rS(d,1897,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1913,b);rS(d,1897,(KRa(c)|0)+28|0);rS(d,1897,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1914,b);rS(d,1897,(YQa(c)|0)+24|0);rS(d,1897,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1915,b);rS(d,1897,(rQa(c)|0)+24|0);rS(d,1897,(rQa(c)|0)+20|0);rS(d,1897,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1916,b);rS(d,1897,(LQa(c)|0)+20|0);rS(d,1897,(LQa(c)|0)+16|0);rS(d,1897,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1917,b);rS(d,1897,(KQa(c)|0)+16|0);rS(d,1897,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1918,b);break}case 16:{d=a+16|0;rS(d,1919,b);rS(d,1897,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1920,b);rS(d,1897,(ARa(c)|0)+16|0);rS(d,1897,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1921,b);rS(d,1897,(yRa(c)|0)+16|0);rS(d,1897,(yRa(c)|0)+12|0);rS(d,1897,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1922,b);rS(d,1897,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1923,b);eR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1924,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1897,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1925,b);break}case 23:{rS(a+16|0,1926,b);break}default:hb()}while(0);return}function Td(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2650,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2649,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2651,b);nR(d,(qSa(c)|0)+16|0);rS(d,2649,(qSa(c)|0)+12|0);rS(d,2649,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2652,b);rS(d,2649,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2653,b);nR(d,(WRa(c)|0)+16|0);nR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2654,b);rS(d,2649,(IRa(c)|0)+28|0);nR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2655,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2649,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2656,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2649,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2657,b);b=DQa(c)|0;rS(d,2649,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2649,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2658,b);break}case 10:{d=a+16|0;rS(d,2659,b);rS(d,2649,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2660,b);break}case 12:{d=a+16|0;rS(d,2661,b);rS(d,2649,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2662,b);rS(d,2649,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2663,b);rS(d,2649,(KRa(c)|0)+28|0);rS(d,2649,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2664,b);rS(d,2649,(YQa(c)|0)+24|0);rS(d,2649,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2665,b);rS(d,2649,(rQa(c)|0)+24|0);rS(d,2649,(rQa(c)|0)+20|0);rS(d,2649,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2666,b);rS(d,2649,(LQa(c)|0)+20|0);rS(d,2649,(LQa(c)|0)+16|0);rS(d,2649,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2667,b);rS(d,2649,(KQa(c)|0)+16|0);rS(d,2649,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2668,b);break}case 16:{d=a+16|0;rS(d,2669,b);rS(d,2649,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2670,b);rS(d,2649,(ARa(c)|0)+16|0);rS(d,2649,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2671,b);rS(d,2649,(yRa(c)|0)+16|0);rS(d,2649,(yRa(c)|0)+12|0);rS(d,2649,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2672,b);rS(d,2649,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2673,b);nR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2674,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2649,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2675,b);break}case 23:{rS(a+16|0,2676,b);break}default:hb()}while(0);return}function Ud(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2864,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2860,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2861,b);oR(d,(qSa(c)|0)+16|0);rS(d,2860,(qSa(c)|0)+12|0);rS(d,2860,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2865,b);rS(d,2860,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2866,b);oR(d,(WRa(c)|0)+16|0);oR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2867,b);rS(d,2860,(IRa(c)|0)+28|0);oR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2868,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2860,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2869,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2860,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2870,b);b=DQa(c)|0;rS(d,2860,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2860,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2871,b);break}case 10:{d=a+16|0;rS(d,2872,b);rS(d,2860,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2873,b);break}case 12:{d=a+16|0;rS(d,2874,b);rS(d,2860,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2875,b);rS(d,2860,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2876,b);rS(d,2860,(KRa(c)|0)+28|0);rS(d,2860,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2877,b);rS(d,2860,(YQa(c)|0)+24|0);rS(d,2860,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2878,b);rS(d,2860,(rQa(c)|0)+24|0);rS(d,2860,(rQa(c)|0)+20|0);rS(d,2860,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2879,b);rS(d,2860,(LQa(c)|0)+20|0);rS(d,2860,(LQa(c)|0)+16|0);rS(d,2860,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2880,b);rS(d,2860,(KQa(c)|0)+16|0);rS(d,2860,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2881,b);break}case 16:{d=a+16|0;rS(d,2882,b);rS(d,2860,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2883,b);rS(d,2860,(ARa(c)|0)+16|0);rS(d,2860,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2884,b);rS(d,2860,(yRa(c)|0)+16|0);rS(d,2860,(yRa(c)|0)+12|0);rS(d,2860,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2885,b);rS(d,2860,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2886,b);oR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2887,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2860,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2888,b);break}case 23:{rS(a+16|0,2889,b);break}default:hb()}while(0);return}function Vd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,935,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,928,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,937,b);TQ(d,(qSa(c)|0)+16|0);rS(d,928,(qSa(c)|0)+12|0);rS(d,928,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,938,b);rS(d,928,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,939,b);TQ(d,(WRa(c)|0)+16|0);TQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,940,b);rS(d,928,(IRa(c)|0)+28|0);TQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,944,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,928,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,945,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,928,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,946,b);b=DQa(c)|0;rS(d,928,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,928,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,947,b);break}case 10:{d=a+16|0;rS(d,948,b);rS(d,928,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,949,b);break}case 12:{d=a+16|0;rS(d,950,b);rS(d,928,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,951,b);rS(d,928,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,952,b);rS(d,928,(KRa(c)|0)+28|0);rS(d,928,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,953,b);rS(d,928,(YQa(c)|0)+24|0);rS(d,928,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,954,b);rS(d,928,(rQa(c)|0)+24|0);rS(d,928,(rQa(c)|0)+20|0);rS(d,928,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,955,b);rS(d,928,(LQa(c)|0)+20|0);rS(d,928,(LQa(c)|0)+16|0);rS(d,928,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,956,b);rS(d,928,(KQa(c)|0)+16|0);rS(d,928,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,957,b);break}case 16:{d=a+16|0;rS(d,958,b);rS(d,928,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,959,b);rS(d,928,(ARa(c)|0)+16|0);rS(d,928,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,960,b);rS(d,928,(yRa(c)|0)+16|0);rS(d,928,(yRa(c)|0)+12|0);rS(d,928,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,961,b);rS(d,928,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,941,b);TQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,962,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,928,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,963,b);break}case 23:{rS(a+16|0,942,b);break}default:hb()}while(0);return}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,812,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,805,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,814,b);UQ(d,(qSa(c)|0)+16|0);rS(d,805,(qSa(c)|0)+12|0);rS(d,805,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,815,b);rS(d,805,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,816,b);UQ(d,(WRa(c)|0)+16|0);UQ(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,817,b);rS(d,805,(IRa(c)|0)+28|0);UQ(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,821,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,805,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,822,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,805,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,823,b);b=DQa(c)|0;rS(d,805,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,805,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,824,b);break}case 10:{d=a+16|0;rS(d,825,b);rS(d,805,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,826,b);break}case 12:{d=a+16|0;rS(d,827,b);rS(d,805,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,828,b);rS(d,805,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,829,b);rS(d,805,(KRa(c)|0)+28|0);rS(d,805,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,830,b);rS(d,805,(YQa(c)|0)+24|0);rS(d,805,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,831,b);rS(d,805,(rQa(c)|0)+24|0);rS(d,805,(rQa(c)|0)+20|0);rS(d,805,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,832,b);rS(d,805,(LQa(c)|0)+20|0);rS(d,805,(LQa(c)|0)+16|0);rS(d,805,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,833,b);rS(d,805,(KQa(c)|0)+16|0);rS(d,805,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,834,b);break}case 16:{d=a+16|0;rS(d,835,b);rS(d,805,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,836,b);rS(d,805,(ARa(c)|0)+16|0);rS(d,805,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,837,b);rS(d,805,(yRa(c)|0)+16|0);rS(d,805,(yRa(c)|0)+12|0);rS(d,805,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,838,b);rS(d,805,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,818,b);UQ(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,839,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,805,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,840,b);break}case 23:{rS(a+16|0,819,b);break}default:hb()}while(0);return}function Xd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1807,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1806,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1808,b);rR(d,(qSa(c)|0)+16|0);rS(d,1806,(qSa(c)|0)+12|0);rS(d,1806,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1809,b);rS(d,1806,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1810,b);rR(d,(WRa(c)|0)+16|0);rR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1811,b);rS(d,1806,(IRa(c)|0)+28|0);rR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1812,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1806,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1813,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1806,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1814,b);b=DQa(c)|0;rS(d,1806,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1806,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1815,b);break}case 10:{d=a+16|0;rS(d,1816,b);rS(d,1806,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1817,b);break}case 12:{d=a+16|0;rS(d,1818,b);rS(d,1806,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1819,b);rS(d,1806,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1820,b);rS(d,1806,(KRa(c)|0)+28|0);rS(d,1806,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1821,b);rS(d,1806,(YQa(c)|0)+24|0);rS(d,1806,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1822,b);rS(d,1806,(rQa(c)|0)+24|0);rS(d,1806,(rQa(c)|0)+20|0);rS(d,1806,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1823,b);rS(d,1806,(LQa(c)|0)+20|0);rS(d,1806,(LQa(c)|0)+16|0);rS(d,1806,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1824,b);rS(d,1806,(KQa(c)|0)+16|0);rS(d,1806,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1825,b);break}case 16:{d=a+16|0;rS(d,1826,b);rS(d,1806,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1827,b);rS(d,1806,(ARa(c)|0)+16|0);rS(d,1806,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1828,b);rS(d,1806,(yRa(c)|0)+16|0);rS(d,1806,(yRa(c)|0)+12|0);rS(d,1806,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1829,b);rS(d,1806,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1830,b);rR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1831,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1806,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1832,b);break}case 23:{rS(a+16|0,1833,b);break}default:hb()}while(0);return}function Yd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1378,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1377,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1379,b);sR(d,(qSa(c)|0)+16|0);rS(d,1377,(qSa(c)|0)+12|0);rS(d,1377,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1380,b);rS(d,1377,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1381,b);sR(d,(WRa(c)|0)+16|0);sR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1382,b);rS(d,1377,(IRa(c)|0)+28|0);sR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1383,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1377,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1384,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1377,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1385,b);b=DQa(c)|0;rS(d,1377,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1377,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1386,b);break}case 10:{d=a+16|0;rS(d,1387,b);rS(d,1377,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1388,b);break}case 12:{d=a+16|0;rS(d,1389,b);rS(d,1377,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1390,b);rS(d,1377,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1391,b);rS(d,1377,(KRa(c)|0)+28|0);rS(d,1377,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1392,b);rS(d,1377,(YQa(c)|0)+24|0);rS(d,1377,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1393,b);rS(d,1377,(rQa(c)|0)+24|0);rS(d,1377,(rQa(c)|0)+20|0);rS(d,1377,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1394,b);rS(d,1377,(LQa(c)|0)+20|0);rS(d,1377,(LQa(c)|0)+16|0);rS(d,1377,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1395,b);rS(d,1377,(KQa(c)|0)+16|0);rS(d,1377,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1396,b);break}case 16:{d=a+16|0;rS(d,1397,b);rS(d,1377,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1398,b);rS(d,1377,(ARa(c)|0)+16|0);rS(d,1377,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1399,b);rS(d,1377,(yRa(c)|0)+16|0);rS(d,1377,(yRa(c)|0)+12|0);rS(d,1377,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1400,b);rS(d,1377,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1401,b);sR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1402,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1377,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1403,b);break}case 23:{rS(a+16|0,1404,b);break}default:hb()}while(0);return}function Zd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1598,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1597,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1599,b);tR(d,(qSa(c)|0)+16|0);rS(d,1597,(qSa(c)|0)+12|0);rS(d,1597,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1600,b);rS(d,1597,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1601,b);tR(d,(WRa(c)|0)+16|0);tR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1602,b);rS(d,1597,(IRa(c)|0)+28|0);tR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1603,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1597,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1604,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1597,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1605,b);b=DQa(c)|0;rS(d,1597,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1597,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1606,b);break}case 10:{d=a+16|0;rS(d,1607,b);rS(d,1597,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1608,b);break}case 12:{d=a+16|0;rS(d,1609,b);rS(d,1597,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1610,b);rS(d,1597,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1611,b);rS(d,1597,(KRa(c)|0)+28|0);rS(d,1597,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1612,b);rS(d,1597,(YQa(c)|0)+24|0);rS(d,1597,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1613,b);rS(d,1597,(rQa(c)|0)+24|0);rS(d,1597,(rQa(c)|0)+20|0);rS(d,1597,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1614,b);rS(d,1597,(LQa(c)|0)+20|0);rS(d,1597,(LQa(c)|0)+16|0);rS(d,1597,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1615,b);rS(d,1597,(KQa(c)|0)+16|0);rS(d,1597,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1616,b);break}case 16:{d=a+16|0;rS(d,1617,b);rS(d,1597,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1618,b);rS(d,1597,(ARa(c)|0)+16|0);rS(d,1597,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1619,b);rS(d,1597,(yRa(c)|0)+16|0);rS(d,1597,(yRa(c)|0)+12|0);rS(d,1597,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1620,b);rS(d,1597,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1621,b);tR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1622,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1597,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1623,b);break}case 23:{rS(a+16|0,1624,b);break}default:hb()}while(0);return}function _d(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1339,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1336,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1340,b);uR(d,(qSa(c)|0)+16|0);rS(d,1336,(qSa(c)|0)+12|0);rS(d,1336,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1341,b);rS(d,1336,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1342,b);uR(d,(WRa(c)|0)+16|0);uR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1343,b);rS(d,1336,(IRa(c)|0)+28|0);uR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1344,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1336,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1345,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1336,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1346,b);b=DQa(c)|0;rS(d,1336,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1336,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1347,b);break}case 10:{d=a+16|0;rS(d,1348,b);rS(d,1336,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1349,b);break}case 12:{d=a+16|0;rS(d,1350,b);rS(d,1336,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1351,b);rS(d,1336,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1352,b);rS(d,1336,(KRa(c)|0)+28|0);rS(d,1336,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1353,b);rS(d,1336,(YQa(c)|0)+24|0);rS(d,1336,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1354,b);rS(d,1336,(rQa(c)|0)+24|0);rS(d,1336,(rQa(c)|0)+20|0);rS(d,1336,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1355,b);rS(d,1336,(LQa(c)|0)+20|0);rS(d,1336,(LQa(c)|0)+16|0);rS(d,1336,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1356,b);rS(d,1336,(KQa(c)|0)+16|0);rS(d,1336,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1357,b);break}case 16:{d=a+16|0;rS(d,1358,b);rS(d,1336,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1359,b);rS(d,1336,(ARa(c)|0)+16|0);rS(d,1336,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1360,b);rS(d,1336,(yRa(c)|0)+16|0);rS(d,1336,(yRa(c)|0)+12|0);rS(d,1336,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1361,b);rS(d,1336,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1362,b);uR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1363,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1336,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1364,b);break}case 23:{rS(a+16|0,1365,b);break}default:hb()}while(0);return}function $d(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+96|0;p=o+72|0;n=o+48|0;m=o+36|0;j=o+24|0;k=o+12|0;l=o;a:do if(((a|0)!=(c|0)?(b[a>>0]|0)==65:0)?(i=a+1|0,(i|0)!=(c|0)):0){e=b[i>>0]|0;if(e<<24>>24==95){n=a+2|0;c=Cc(n,c,d)|0;if((c|0)==(n|0))break;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break;Y0(p,e+-12|0,2);a=h7a(123268)|0;n=b[p+11>>0]|0;if((a|0)==((n<<24>>24<0?f[p+4>>2]|0:n&255)|0)){x=0;a=ja(102,p|0,123268,a|0)|0;n=x;x=0;if(n&1){n=Ja(0)|0;r2a(n)}HTa(p);if(!a)IW((f[g>>2]|0)+-12|0)}else HTa(p);uoa((f[g>>2]|0)+-12|0,0,124709)|0;a=c;break}if((e+-49&255)<9){g=QX(i,c)|0;if((g|0)==(c|0))break;if((b[g>>0]|0)!=95)break;l=g+1|0;h=Cc(l,c,d)|0;if((h|0)==(l|0))break;c=d+4|0;e=f[c>>2]|0;if((f[d>>2]|0)==(e|0))break;Y0(p,e+-12|0,2);a=h7a(123268)|0;l=b[p+11>>0]|0;if((a|0)==((l<<24>>24<0?f[p+4>>2]|0:l&255)|0)){x=0;a=ja(102,p|0,123268,a|0)|0;l=x;x=0;if(l&1){l=Ja(0)|0;r2a(l)}HTa(p);if(!a)IW((f[c>>2]|0)+-12|0)}else HTa(p);e=(f[c>>2]|0)+-12|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;SM(m,i,g);x=0;ja(101,m|0,0,123268)|0;l=x;x=0;if(l&1)a=Ia()|0;else{f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,n|0,123323)|0;l=x;x=0;do if(!(l&1)){f[p>>2]=f[n>>2];f[p+4>>2]=f[n+4>>2];f[p+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}l=b[p+11>>0]|0;k=l<<24>>24<0;x=0;ka(38,e|0,0,(k?f[p>>2]|0:p)|0,(k?f[p+4>>2]|0:l&255)|0)|0;l=x;x=0;if(l&1){a=Ia()|0;HTa(p);break}else{HTa(p);HTa(n);HTa(m);a=h;break a}}else a=Ia()|0;while(0);HTa(n)}HTa(m)}else{e=Bc(i,c,d)|0;if((e|0)==(i|0)|(e|0)==(c|0))break;if((b[e>>0]|0)!=95)break;i=e+1|0;h=Cc(i,c,d)|0;if((h|0)==(i|0))break;g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break;yY(p,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;JJa(e+(d*24|0)|0);a=d}f[g>>2]=e+-24;yY(n,e+-48|0);a=f[g>>2]|0;c=a+-24|0;e=c+11|0;if((b[e>>0]|0)<0){T0a(f[c>>2]|0,0);f[a+-20>>2]=0;a=c}else{T0a(c,0);b[e>>0]=0;a=c}wv(c);f[a>>2]=f[p>>2];f[a+4>>2]=f[p+4>>2];f[a+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}e=p+12|0;x=0;va(183,m|0,e|0,2);d=x;x=0;if(d&1)a=Ia()|0;else{a=h7a(123268)|0;d=b[m+11>>0]|0;if((a|0)==((d<<24>>24<0?f[m+4>>2]|0:d&255)|0)){x=0;a=ja(102,m|0,123268,a|0)|0;d=x;x=0;if(d&1){d=Ja(0)|0;r2a(d)}HTa(m);if(!a)IW(e)}else HTa(m);x=0;ua(3194,l|0,n|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;ja(101,l|0,0,123268)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,k|0,123323)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}d=b[e+11>>0]|0;i=d<<24>>24<0;x=0;ja(97,j|0,(i?f[e>>2]|0:e)|0,(i?f[p+16>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(j);break}f[m>>2]=f[j>>2];f[m+4>>2]=f[j+4>>2];f[m+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;c=a+-12|0;e=c+11|0;if((b[e>>0]|0)<0){T0a(f[c>>2]|0,0);f[a+-8>>2]=0;a=c}else{T0a(c,0);b[e>>0]=0;a=c}wv(c);f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}HTa(m);HTa(j);HTa(k);HTa(l);JJa(n);JJa(p);a=h;break a}while(0);HTa(k)}HTa(l)}}JJa(n);JJa(p)}Ua(a|0)}while(0);u=o;return a|0}function ae(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2404,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2403,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2405,b);zR(d,(qSa(c)|0)+16|0);rS(d,2403,(qSa(c)|0)+12|0);rS(d,2403,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2406,b);rS(d,2403,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2407,b);zR(d,(WRa(c)|0)+16|0);zR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2408,b);rS(d,2403,(IRa(c)|0)+28|0);zR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2409,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2403,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2410,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2403,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2411,b);b=DQa(c)|0;rS(d,2403,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2403,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2412,b);break}case 10:{d=a+16|0;rS(d,2413,b);rS(d,2403,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2414,b);break}case 12:{d=a+16|0;rS(d,2415,b);rS(d,2403,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2416,b);rS(d,2403,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2417,b);rS(d,2403,(KRa(c)|0)+28|0);rS(d,2403,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2418,b);rS(d,2403,(YQa(c)|0)+24|0);rS(d,2403,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2419,b);rS(d,2403,(rQa(c)|0)+24|0);rS(d,2403,(rQa(c)|0)+20|0);rS(d,2403,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2420,b);rS(d,2403,(LQa(c)|0)+20|0);rS(d,2403,(LQa(c)|0)+16|0);rS(d,2403,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2421,b);rS(d,2403,(KQa(c)|0)+16|0);rS(d,2403,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2422,b);break}case 16:{d=a+16|0;rS(d,2423,b);rS(d,2403,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2424,b);rS(d,2403,(ARa(c)|0)+16|0);rS(d,2403,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2425,b);rS(d,2403,(yRa(c)|0)+16|0);rS(d,2403,(yRa(c)|0)+12|0);rS(d,2403,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2426,b);rS(d,2403,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2427,b);zR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2428,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2403,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2429,b);break}case 23:{rS(a+16|0,2430,b);break}default:hb()}while(0);return}function be(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2432,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2431,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2433,b);AR(d,(qSa(c)|0)+16|0);rS(d,2431,(qSa(c)|0)+12|0);rS(d,2431,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2434,b);rS(d,2431,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2435,b);AR(d,(WRa(c)|0)+16|0);AR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2436,b);rS(d,2431,(IRa(c)|0)+28|0);AR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2437,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2431,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2438,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2431,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2439,b);b=DQa(c)|0;rS(d,2431,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2431,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2440,b);break}case 10:{d=a+16|0;rS(d,2441,b);rS(d,2431,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2442,b);break}case 12:{d=a+16|0;rS(d,2443,b);rS(d,2431,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2444,b);rS(d,2431,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2445,b);rS(d,2431,(KRa(c)|0)+28|0);rS(d,2431,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2446,b);rS(d,2431,(YQa(c)|0)+24|0);rS(d,2431,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2447,b);rS(d,2431,(rQa(c)|0)+24|0);rS(d,2431,(rQa(c)|0)+20|0);rS(d,2431,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2448,b);rS(d,2431,(LQa(c)|0)+20|0);rS(d,2431,(LQa(c)|0)+16|0);rS(d,2431,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2449,b);rS(d,2431,(KQa(c)|0)+16|0);rS(d,2431,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2450,b);break}case 16:{d=a+16|0;rS(d,2451,b);rS(d,2431,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2452,b);rS(d,2431,(ARa(c)|0)+16|0);rS(d,2431,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2453,b);rS(d,2431,(yRa(c)|0)+16|0);rS(d,2431,(yRa(c)|0)+12|0);rS(d,2431,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2454,b);rS(d,2431,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2455,b);AR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2456,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2431,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2457,b);break}case 23:{rS(a+16|0,2458,b);break}default:hb()}while(0);return}function ce(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2463,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2462,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2464,b);BR(d,(qSa(c)|0)+16|0);rS(d,2462,(qSa(c)|0)+12|0);rS(d,2462,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2465,b);rS(d,2462,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2466,b);BR(d,(WRa(c)|0)+16|0);BR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2467,b);rS(d,2462,(IRa(c)|0)+28|0);BR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2468,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2462,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2469,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2462,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2470,b);b=DQa(c)|0;rS(d,2462,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2462,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2471,b);break}case 10:{d=a+16|0;rS(d,2472,b);rS(d,2462,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2473,b);break}case 12:{d=a+16|0;rS(d,2474,b);rS(d,2462,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2475,b);rS(d,2462,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2476,b);rS(d,2462,(KRa(c)|0)+28|0);rS(d,2462,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2477,b);rS(d,2462,(YQa(c)|0)+24|0);rS(d,2462,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2478,b);rS(d,2462,(rQa(c)|0)+24|0);rS(d,2462,(rQa(c)|0)+20|0);rS(d,2462,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2479,b);rS(d,2462,(LQa(c)|0)+20|0);rS(d,2462,(LQa(c)|0)+16|0);rS(d,2462,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2480,b);rS(d,2462,(KQa(c)|0)+16|0);rS(d,2462,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2481,b);break}case 16:{d=a+16|0;rS(d,2482,b);rS(d,2462,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2483,b);rS(d,2462,(ARa(c)|0)+16|0);rS(d,2462,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2484,b);rS(d,2462,(yRa(c)|0)+16|0);rS(d,2462,(yRa(c)|0)+12|0);rS(d,2462,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2485,b);rS(d,2462,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2486,b);BR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2487,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2462,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2488,b);break}case 23:{rS(a+16|0,2489,b);break}default:hb()}while(0);return}function de(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2775,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2774,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2776,b);CR(d,(qSa(c)|0)+16|0);rS(d,2774,(qSa(c)|0)+12|0);rS(d,2774,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2777,b);rS(d,2774,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2778,b);CR(d,(WRa(c)|0)+16|0);CR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2779,b);rS(d,2774,(IRa(c)|0)+28|0);CR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2780,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2774,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2781,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2774,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2782,b);b=DQa(c)|0;rS(d,2774,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2774,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2783,b);break}case 10:{d=a+16|0;rS(d,2784,b);rS(d,2774,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2785,b);break}case 12:{d=a+16|0;rS(d,2786,b);rS(d,2774,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2787,b);rS(d,2774,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2788,b);rS(d,2774,(KRa(c)|0)+28|0);rS(d,2774,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2789,b);rS(d,2774,(YQa(c)|0)+24|0);rS(d,2774,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2790,b);rS(d,2774,(rQa(c)|0)+24|0);rS(d,2774,(rQa(c)|0)+20|0);rS(d,2774,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2791,b);rS(d,2774,(LQa(c)|0)+20|0);rS(d,2774,(LQa(c)|0)+16|0);rS(d,2774,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2792,b);rS(d,2774,(KQa(c)|0)+16|0);rS(d,2774,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2793,b);break}case 16:{d=a+16|0;rS(d,2794,b);rS(d,2774,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2795,b);rS(d,2774,(ARa(c)|0)+16|0);rS(d,2774,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2796,b);rS(d,2774,(yRa(c)|0)+16|0);rS(d,2774,(yRa(c)|0)+12|0);rS(d,2774,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2797,b);rS(d,2774,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2798,b);CR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2799,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2774,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2800,b);break}case 23:{rS(a+16|0,2801,b);break}default:hb()}while(0);return}function ee(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1570,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1569,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1571,b);DR(d,(qSa(c)|0)+16|0);rS(d,1569,(qSa(c)|0)+12|0);rS(d,1569,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1572,b);rS(d,1569,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1573,b);DR(d,(WRa(c)|0)+16|0);DR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1574,b);rS(d,1569,(IRa(c)|0)+28|0);DR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1575,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1569,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1576,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1569,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1577,b);b=DQa(c)|0;rS(d,1569,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1569,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1578,b);break}case 10:{d=a+16|0;rS(d,1579,b);rS(d,1569,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1580,b);break}case 12:{d=a+16|0;rS(d,1581,b);rS(d,1569,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1582,b);rS(d,1569,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1583,b);rS(d,1569,(KRa(c)|0)+28|0);rS(d,1569,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1584,b);rS(d,1569,(YQa(c)|0)+24|0);rS(d,1569,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1585,b);rS(d,1569,(rQa(c)|0)+24|0);rS(d,1569,(rQa(c)|0)+20|0);rS(d,1569,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1586,b);rS(d,1569,(LQa(c)|0)+20|0);rS(d,1569,(LQa(c)|0)+16|0);rS(d,1569,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1587,b);rS(d,1569,(KQa(c)|0)+16|0);rS(d,1569,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1588,b);break}case 16:{d=a+16|0;rS(d,1589,b);rS(d,1569,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1590,b);rS(d,1569,(ARa(c)|0)+16|0);rS(d,1569,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1591,b);rS(d,1569,(yRa(c)|0)+16|0);rS(d,1569,(yRa(c)|0)+12|0);rS(d,1569,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1592,b);rS(d,1569,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1593,b);DR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1594,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1569,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1595,b);break}case 23:{rS(a+16|0,1596,b);break}default:hb()}while(0);return}function fe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1752,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1746,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1748,b);IR(d,(qSa(c)|0)+16|0);rS(d,1746,(qSa(c)|0)+12|0);rS(d,1746,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1753,b);rS(d,1746,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1754,b);IR(d,(WRa(c)|0)+16|0);IR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1755,b);rS(d,1746,(IRa(c)|0)+28|0);IR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1756,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1746,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1757,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1746,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1758,b);b=DQa(c)|0;rS(d,1746,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1746,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1759,b);break}case 10:{d=a+16|0;rS(d,1760,b);rS(d,1746,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1761,b);break}case 12:{d=a+16|0;rS(d,1762,b);rS(d,1746,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1763,b);rS(d,1746,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1764,b);rS(d,1746,(KRa(c)|0)+28|0);rS(d,1746,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1765,b);rS(d,1746,(YQa(c)|0)+24|0);rS(d,1746,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1766,b);rS(d,1746,(rQa(c)|0)+24|0);rS(d,1746,(rQa(c)|0)+20|0);rS(d,1746,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1767,b);rS(d,1746,(LQa(c)|0)+20|0);rS(d,1746,(LQa(c)|0)+16|0);rS(d,1746,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1768,b);rS(d,1746,(KQa(c)|0)+16|0);rS(d,1746,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1769,b);break}case 16:{d=a+16|0;rS(d,1770,b);rS(d,1746,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1771,b);rS(d,1746,(ARa(c)|0)+16|0);rS(d,1746,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1772,b);rS(d,1746,(yRa(c)|0)+16|0);rS(d,1746,(yRa(c)|0)+12|0);rS(d,1746,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1773,b);rS(d,1746,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1774,b);IR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1775,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1746,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1776,b);break}case 23:{rS(a+16|0,1777,b);break}default:hb()}while(0);return}function ge(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2104,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2103,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2105,b);JR(d,(qSa(c)|0)+16|0);rS(d,2103,(qSa(c)|0)+12|0);rS(d,2103,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2106,b);rS(d,2103,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2107,b);JR(d,(WRa(c)|0)+16|0);JR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2108,b);rS(d,2103,(IRa(c)|0)+28|0);JR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2109,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2103,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2110,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2103,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2111,b);b=DQa(c)|0;rS(d,2103,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2103,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2112,b);break}case 10:{d=a+16|0;rS(d,2113,b);rS(d,2103,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2114,b);break}case 12:{d=a+16|0;rS(d,2115,b);rS(d,2103,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2116,b);rS(d,2103,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2117,b);rS(d,2103,(KRa(c)|0)+28|0);rS(d,2103,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2118,b);rS(d,2103,(YQa(c)|0)+24|0);rS(d,2103,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2119,b);rS(d,2103,(rQa(c)|0)+24|0);rS(d,2103,(rQa(c)|0)+20|0);rS(d,2103,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2120,b);rS(d,2103,(LQa(c)|0)+20|0);rS(d,2103,(LQa(c)|0)+16|0);rS(d,2103,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2121,b);rS(d,2103,(KQa(c)|0)+16|0);rS(d,2103,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2122,b);break}case 16:{d=a+16|0;rS(d,2123,b);rS(d,2103,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2124,b);rS(d,2103,(ARa(c)|0)+16|0);rS(d,2103,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2125,b);rS(d,2103,(yRa(c)|0)+16|0);rS(d,2103,(yRa(c)|0)+12|0);rS(d,2103,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2126,b);rS(d,2103,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2127,b);JR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2128,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2103,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2129,b);break}case 23:{rS(a+16|0,2130,b);break}default:hb()}while(0);return}function he(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2679,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2678,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2680,b);KR(d,(qSa(c)|0)+16|0);rS(d,2678,(qSa(c)|0)+12|0);rS(d,2678,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2681,b);rS(d,2678,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2682,b);KR(d,(WRa(c)|0)+16|0);KR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2683,b);rS(d,2678,(IRa(c)|0)+28|0);KR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2684,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2678,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2685,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2678,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2686,b);b=DQa(c)|0;rS(d,2678,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2678,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2687,b);break}case 10:{d=a+16|0;rS(d,2688,b);rS(d,2678,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2689,b);break}case 12:{d=a+16|0;rS(d,2690,b);rS(d,2678,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2691,b);rS(d,2678,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2692,b);rS(d,2678,(KRa(c)|0)+28|0);rS(d,2678,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2693,b);rS(d,2678,(YQa(c)|0)+24|0);rS(d,2678,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2694,b);rS(d,2678,(rQa(c)|0)+24|0);rS(d,2678,(rQa(c)|0)+20|0);rS(d,2678,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2695,b);rS(d,2678,(LQa(c)|0)+20|0);rS(d,2678,(LQa(c)|0)+16|0);rS(d,2678,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2696,b);rS(d,2678,(KQa(c)|0)+16|0);rS(d,2678,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2697,b);break}case 16:{d=a+16|0;rS(d,2698,b);rS(d,2678,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2699,b);rS(d,2678,(ARa(c)|0)+16|0);rS(d,2678,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2700,b);rS(d,2678,(yRa(c)|0)+16|0);rS(d,2678,(yRa(c)|0)+12|0);rS(d,2678,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2701,b);rS(d,2678,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2702,b);KR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2703,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2678,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2704,b);break}case 23:{rS(a+16|0,2705,b);break}default:hb()}while(0);return}function ie(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2044,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2043,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2045,b);LR(d,(qSa(c)|0)+16|0);rS(d,2043,(qSa(c)|0)+12|0);rS(d,2043,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2046,b);rS(d,2043,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2047,b);LR(d,(WRa(c)|0)+16|0);LR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2048,b);rS(d,2043,(IRa(c)|0)+28|0);LR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2049,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2043,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2050,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2043,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2051,b);b=DQa(c)|0;rS(d,2043,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2043,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2052,b);break}case 10:{d=a+16|0;rS(d,2053,b);rS(d,2043,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2054,b);break}case 12:{d=a+16|0;rS(d,2055,b);rS(d,2043,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2056,b);rS(d,2043,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2057,b);rS(d,2043,(KRa(c)|0)+28|0);rS(d,2043,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2058,b);rS(d,2043,(YQa(c)|0)+24|0);rS(d,2043,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2059,b);rS(d,2043,(rQa(c)|0)+24|0);rS(d,2043,(rQa(c)|0)+20|0);rS(d,2043,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2060,b);rS(d,2043,(LQa(c)|0)+20|0);rS(d,2043,(LQa(c)|0)+16|0);rS(d,2043,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2061,b);rS(d,2043,(KQa(c)|0)+16|0);rS(d,2043,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2062,b);break}case 16:{d=a+16|0;rS(d,2063,b);rS(d,2043,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2064,b);rS(d,2043,(ARa(c)|0)+16|0);rS(d,2043,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2065,b);rS(d,2043,(yRa(c)|0)+16|0);rS(d,2043,(yRa(c)|0)+12|0);rS(d,2043,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2066,b);rS(d,2043,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2067,b);LR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2068,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2043,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2069,b);break}case 23:{rS(a+16|0,2070,b);break}default:hb()}while(0);return} -function xc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,fa=0,ha=0,la=0,na=0,qa=0,ra=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0;zb=u;u=u+512|0;xb=zb+192|0;vb=zb+32|0;l=zb+500|0;z=zb+488|0;v=zb+484|0;w=zb+480|0;m=zb+506|0;D=zb+476|0;S=zb+472|0;Da=zb+460|0;Ga=zb+448|0;ca=zb+176|0;X=zb+160|0;A=zb+436|0;T=zb+144|0;ya=zb+424|0;_=zb+420|0;za=zb+128|0;Ja=zb+112|0;Y=zb+505|0;Ka=zb+504|0;Aa=zb+96|0;V=zb+80|0;$a=zb+416|0;Ya=zb+412|0;B=zb+408|0;$=zb+404|0;G=zb+400|0;H=zb+396|0;ub=zb+252|0;da=zb+392|0;ha=zb+388|0;fb=zb+384|0;gb=zb+380|0;hb=zb+376|0;U=zb+372|0;Z=zb+368|0;Va=zb+248|0;Pa=zb+364|0;Qa=zb+360|0;Za=zb+208|0;Ra=zb+356|0;Ta=zb+352|0;aa=zb+348|0;fa=zb+344|0;Wa=zb+340|0;Xa=zb+336|0;_a=zb+332|0;Ea=zb+328|0;Fa=zb+324|0;bb=zb+320|0;db=zb+316|0;eb=zb+312|0;E=zb+308|0;ab=zb+64|0;cb=zb+48|0;jb=zb+304|0;ib=zb+16|0;qb=zb+300|0;rb=zb+296|0;sb=zb+292|0;kb=zb+288|0;lb=zb+284|0;mb=zb;nb=zb+280|0;ob=zb+276|0;pb=zb+272|0;tb=zb+268|0;C=zb+256|0;yb=f[a+4>>2]|0;zaa(c);k=Bbb(c)|0;e=f[c>>2]|0;a:do if(Gab(e)|0){x=0;d=ga(214,k|0)|0;c=x;x=0;b:do if(c&1)d=Ia()|0;else{e=f[d>>2]|0;f[vb>>2]=e;c:do if(!(lBa(f[a>>2]|0,vb)|0))if(!($1a(e,f[33043]|0)|0)){d=yb+100|0;if((eV(d,e)|0)==(yb+104|0)){x=0;d=ia(62,134176,e|0)|0;zb=x;x=0;if(!(zb&1)?(x=0,ia(71,d|0,10)|0,zb=x,x=0,!(zb&1)):0){x=0;wa(71,63878,51387,1647,123618);x=0}d=Ia()|0;break b}else{x=0;d=ia(86,d|0,vb|0)|0;c=x;x=0;if(!(c&1)?(E1a(v,f[vb>>2]|0),q=f[d>>2]|0,x=0,f[xb>>2]=f[v>>2],q=ja(41,yb+8|0,xb|0,q|0)|0,yb=x,x=0,!(yb&1)):0){d=q;break}d=Ia()|0;break b}}else{x=0;d=ga(231,f[yb+4>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break b}E1a(xb,f[33043]|0);f[d+24>>2]=f[xb>>2];f[d+4>>2]=0;if(b[135321]|0)break;b[135321]=1;x=0;g=ga(212,24)|0;c=x;x=0;do if(!(c&1)?(hPa(g),E1a(xb,f[33043]|0),f[g>>2]=f[xb>>2],E1a(xb,f[33020]|0),f[g+4>>2]=f[xb>>2],E1a(xb,f[33043]|0),f[g+8>>2]=f[xb>>2],f[z>>2]=0,f[z+4>>2]=0,f[z+8>>2]=0,c=h7a(88354)|0,x=0,va(87,z|0,88354,c|0),c=x,x=0,!(c&1)):0){x=0;e=ia(55,z|0,f[yb>>2]|0)|0;c=x;x=0;if(!(c&1)){f[g+16>>2]=f[e>>2];HTa(z);f[g+12>>2]=0;x=0;ua(64,f[yb>>2]|0,g|0);yb=x;x=0;if(yb&1)break;else break c}else{d=Ia()|0;HTa(z);break b}}while(0);d=Ia()|0;break b}else{x=0;d=ga(230,f[yb+4>>2]|0)|0;yb=x;x=0;if((!(yb&1)?(n=f[f[a+8>>2]>>2]|0,E1a(l,f[vb>>2]|0),x=0,f[xb>>2]=f[l>>2],n=ia(85,n|0,xb|0)|0,yb=x,x=0,!(yb&1)):0)?(f[d+8>>2]=n,o=Y8(f[a+12>>2]|0,vb)|0,x=0,o=ga(224,o|0)|0,yb=x,x=0,!(yb&1)):0){f[d+4>>2]=o;break}d=Ia()|0;break b}while(0);wb=1537;break a}while(0);wb=1538}else{if(rab(e)|0){x=0;d=ga(232,f[yb+4>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break}x=0;e=ga(215,k|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break}h=+p[e>>3];do if(!(SYa(h)|0))if(rPa(h)|0){m$a(xb,PLa(h)|0);yb=d+8|0;f[yb>>2]=f[xb>>2];f[yb+4>>2]=f[xb+4>>2];f[yb+8>>2]=f[xb+8>>2];f[yb+12>>2]=f[xb+12>>2];break}else{kqa(xb,h);yb=d+8|0;f[yb>>2]=f[xb>>2];f[yb+4>>2]=f[xb+4>>2];f[yb+8>>2]=f[xb+8>>2];f[yb+12>>2]=f[xb+12>>2];break}else{m$a(xb,VEa(h)|0);yb=d+8|0;f[yb>>2]=f[xb>>2];f[yb+4>>2]=f[xb+4>>2];f[yb+8>>2]=f[xb+8>>2];f[yb+12>>2]=f[xb+12>>2]}while(0);f[d+4>>2]=f[d+8>>2];wb=1537;break}if(c8a(e)|0){x=0;g=ga(223,k|0)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break}e=Wab(g)|0;j=f[e>>2]|0;f[vb>>2]=j;d:do if(lBa(f[a>>2]|0,vb)|0){x=0;d=ga(233,f[yb+4>>2]|0)|0;yb=x;x=0;if((!(yb&1)?(r=f[f[a+8>>2]>>2]|0,E1a(w,f[e>>2]|0),x=0,f[xb>>2]=f[w>>2],r=ia(85,r|0,xb|0)|0,yb=x,x=0,!(yb&1)):0)?(f[d+8>>2]=r,yb=f[a+16>>2]|0,s=Vab(g)|0,x=0,s=ia(87,f[yb+16>>2]|0,f[s>>2]|0)|0,yb=x,x=0,!(yb&1)):0){f[d+12>>2]=s;bLa(d,0);via(d);wb=71;break}d=Ia()|0;wb=72}else{if((eV(yb+100|0,j)|0)==(yb+104|0)){x=0;sa(3);c=x;x=0;if(c&1){d=Ia()|0;wb=72;break}x=0;e=ia(52,m|0,63974)|0;c=x;x=0;if(!(c&1)?(x=0,ia(52,e|0,j|0)|0,c=x,x=0,!(c&1)):0)gCa();Ia()|0;gCa()}i=yb+8|0;E1a(D,j);yb=f[a+16>>2]|0;e=Vab(g)|0;x=0;e=ia(87,f[yb+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(!(yb&1)?(x=0,f[xb>>2]=f[D>>2],d=ja(47,i|0,xb|0,e|0)|0,yb=x,x=0,!(yb&1)):0){e=Pea()|0;e:do if(!(UTa(e)|0)){e=Bbb(e)|0;x=0;g=ia(46,e|0,f[33096]|0)|0;yb=x;x=0;do if(!(yb&1)){if(g)break e;x=0;e=ia(46,e|0,f[33287]|0)|0;yb=x;x=0;if(!(yb&1)){if(e)break e;E1a(S,j);e=f[(f[d+12>>2]|0)+4>>2]|0;x=0;f[xb>>2]=f[S>>2];e=ja(41,i|0,xb|0,e|0)|0;yb=x;x=0;if(!(yb&1)){x=0;d=ja(51,i|0,d|0,e|0)|0;yb=x;x=0;if(yb&1)break;wb=71;break d}}}while(0);d=Ia()|0;wb=72;break d}while(0);wb=71;break}d=Ia()|0;wb=72}while(0);if((wb|0)==71){wb=1537;break}else if((wb|0)==72){wb=1538;break}}if(sab(e)|0){x=0;j=ga(234,k|0)|0;vb=x;x=0;do if(!(vb&1)?(g=Vab(j)|0,i=Bbb(f[g>>2]|0)|0,x=0,i=ia(46,i|0,f[33281]|0)|0,vb=x,x=0,!(vb&1)):0){if(!i){x=0;wa(71,64018,51387,1687,123618);x=0;break}e=f[g>>2]|0;x=0;d=ia(45,e|0,1)|0;vb=x;x=0;do if(!(vb&1)){vb=f[d>>2]|0;Bbb(vb)|0;if(!(Gab(f[vb>>2]|0)|0)){x=0;wa(71,64049,51387,1689,123618);x=0;break}x=0;d=ia(45,e|0,1)|0;vb=x;x=0;f:do if(!(vb&1)?(t=Bbb(f[d>>2]|0)|0,x=0,t=ga(214,t|0)|0,vb=x,x=0,!(vb&1)):0){vb=f[t>>2]|0;f[xb>>2]=vb;d=yb+112|0;if((eV(d,vb)|0)==(yb+116|0)){x=0;wa(71,64071,51387,1691,123618);x=0;d=Ia()|0;break}x=0;i=ia(88,d|0,xb|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break}k=yb+4|0;x=0;d=ga(235,f[k>>2]|0)|0;xb=x;x=0;g:do if(!(xb&1)){b[d+20>>0]=0;b[d+8>>0]=f[i>>2];x=0;ja(40,d+12|0,0,0)|0;xb=x;x=0;if(xb&1)break;x=0;ja(40,d+16|0,f[i>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;g=f[a+20>>2]|0;x=0;e=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;e=ja(48,f[g+16>>2]|0,f[e>>2]|0,f[i>>2]|0)|0;xb=x;x=0;if(xb&1)break;f[d+24>>2]=e;xb=f[a+16>>2]|0;e=Wab(j)|0;x=0;e=ia(87,f[xb+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;j=d+28|0;f[j>>2]=e;x=0;e=ga(224,f[i+8>>2]|0)|0;xb=x;x=0;if(xb&1)break;g=d+32|0;f[g>>2]=e;x=0;ta(454,d|0);xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;g=f[j>>2]|0;i=f[g+4>>2]|0;do if((e|0)!=(i|0)){if((e|0)==3&(i|0)==4){x=0;e=ga(236,f[k>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break f}else{f[e+8>>2]=44;f[e+12>>2]=f[j>>2];f[e+4>>2]=3;f[j>>2]=e;break}}if((e|0)==4&(i|0)==3){x=0;e=ia(89,yb|0,g|0)|0;yb=x;x=0;if(yb&1)break g;f[j>>2]=e;break}f[Da>>2]=0;f[Da+4>>2]=0;f[Da+8>>2]=0;yb=h7a(64103)|0;x=0;va(87,Da|0,64103,yb|0);yb=x;x=0;if(yb&1)break g;x=0;ua(69,Da|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;HTa(Da);break f}else{HTa(Da);break}}while(0);wb=1537;break a}while(0);d=Ia()|0}else wb=87;while(0);if((wb|0)==87)d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break}x=0;d=ia(45,c|0,0)|0;Da=x;x=0;h:do if(!(Da&1)?(j=Bbb(f[d>>2]|0)|0,x=0,j=ga(214,j|0)|0,Da=x,x=0,!(Da&1)):0){d=f[j>>2]|0;if($1a(d,f[33289]|0)|0){x=0;d=ia(45,c|0,1)|0;vb=x;x=0;if(vb&1)break;if(!(FBa(f[d>>2]|0,133016)|0)){x=0;d=ia(45,c|0,1)|0;vb=x;x=0;if(vb&1)break;if(FBa(f[d>>2]|0,132952)|0)wb=120}else wb=120;if((wb|0)==120){x=0;d=ia(45,c|0,3)|0;wb=x;x=0;if(wb&1)break;wb=f[d>>2]|0;Bbb(wb)|0;if(rab(f[wb>>2]|0)|0){x=0;d=ia(45,c|0,3)|0;wb=x;x=0;if(wb&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;wb=x;x=0;if(wb&1)break;if(+p[d>>3]==0.0){e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;do if(!(yb&1)){x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(256,d|0,1);yb=x;x=0;if(!(yb&1)){wb=1537;break a}}while(0);d=Ia()|0;wb=1538;break a}}}i=yb+4|0;x=0;j=ga(237,f[i>>2]|0)|0;wb=x;x=0;do if((((((!(wb&1)?(J=a+16|0,K=f[J>>2]|0,x=0,L=ia(45,c|0,2)|0,a=x,x=0,!(a&1)):0)?(x=0,M=ia(87,f[K+16>>2]|0,f[L>>2]|0)|0,a=x,x=0,!(a&1)):0)?(xa=j+12|0,f[xa>>2]=M,N=f[J>>2]|0,x=0,O=ia(45,c|0,3)|0,a=x,x=0,!(a&1)):0)?(x=0,P=ia(87,f[N+16>>2]|0,f[O>>2]|0)|0,a=x,x=0,!(a&1)):0)?(Ba=j+16|0,f[Ba>>2]=P,x=0,Q=ia(45,c|0,1)|0,a=x,x=0,!(a&1)):0)?(R=Bbb(f[Q>>2]|0)|0,x=0,R=ga(214,R|0)|0,a=x,x=0,!(a&1)):0){g=f[R>>2]|0;x=0;d=ia(45,c|0,2)|0;a=x;x=0;if(a&1)break;e=f[d>>2]|0;x=0;d=ia(45,c|0,3)|0;c=x;x=0;if(c&1)break;x=0;d=ma(22,yb|0,g|0,e|0,f[d>>2]|0,f[(f[xa>>2]|0)+4>>2]|0)|0;c=x;x=0;if(c&1)break;e=j+8|0;f[e>>2]=d;x=0;ta(455,j|0);c=x;x=0;if(c&1)break;do if((f[e>>2]|0)==5){if(!(l6a(f[j+4>>2]|0)|0))break;x=0;d=ga(231,f[i>>2]|0)|0;c=x;x=0;do if(!(c&1)){E1a(xb,f[33023]|0);f[d+24>>2]=f[xb>>2];g=d+8|0;x=0;e=ia(89,yb|0,f[xa>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,g|0,e|0);c=x;x=0;if(c&1)break;x=0;e=ia(89,yb|0,f[Ba>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,g|0,e|0);c=x;x=0;if(c&1)break;f[d+4>>2]=4;if(b[135322]|0){wb=1537;break a}b[135322]=1;x=0;g=ga(212,24)|0;c=x;x=0;do if(!(c&1)){hPa(g);E1a(xb,f[33023]|0);f[g>>2]=f[xb>>2];E1a(xb,f[33020]|0);f[g+4>>2]=f[xb>>2];E1a(xb,f[33023]|0);f[g+8>>2]=f[xb>>2];f[Ga>>2]=0;f[Ga+4>>2]=0;f[Ga+8>>2]=0;c=h7a(64119)|0;x=0;va(87,Ga|0,64119,c|0);c=x;x=0;if(c&1)break;x=0;e=ia(55,Ga|0,f[yb>>2]|0)|0;c=x;x=0;if(!(c&1)){f[g+16>>2]=f[e>>2];HTa(Ga);f[g+12>>2]=0;x=0;ua(64,f[yb>>2]|0,g|0);yb=x;x=0;if(yb&1)break;else{wb=1537;break a}}else{d=Ia()|0;HTa(Ga);wb=1538;break a}}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(90,j|0,yb+40|0)|0;yb=x;x=0;if(!(yb&1)){wb=1537;break a}}while(0);d=Ia()|0;wb=1538;break a}if($1a(d,f[33281]|0)|0){x=0;d=ia(45,c|0,1)|0;wb=x;x=0;do if(!(wb&1)){wb=f[d>>2]|0;d=Bbb(wb)|0;if(!(Gab(f[wb>>2]|0)|0)){x=0;wa(71,64123,51387,1753,123618);x=0;break}x=0;d=ga(214,d|0)|0;wb=x;x=0;do if(wb&1)d=Ia()|0;else{wb=f[d>>2]|0;f[xb>>2]=wb;d=yb+112|0;if((eV(d,wb)|0)==(yb+116|0)){x=0;wa(71,64071,51387,1755,123618);x=0;d=Ia()|0;break}x=0;i=ia(88,d|0,xb|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break}x=0;d=ga(238,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){b[d+20>>0]=0;b[d+8>>0]=f[i>>2];b[d+9>>0]=b[i+5>>0]|0;x=0;ja(40,d+12|0,0,0)|0;yb=x;x=0;if(yb&1)break;x=0;ja(40,d+16|0,f[i>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;g=f[a+20>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ja(48,f[g+16>>2]|0,f[e>>2]|0,f[i>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+24>>2]=e;x=0;e=ia(91,f[i>>2]|0,(b[i+4>>0]|0)==0|0)|0;yb=x;x=0;if(yb&1)break;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}do if($1a(d,f[33267]|0)|0){x=0;d=ia(45,c|0,1)|0;ub=x;x=0;if(ub&1)break h;if(FBa(f[d>>2]|0,133024)|0){x=0;wa(80,vb|0,yb|0,c|0,1);ub=x;x=0;i:do if(ub&1)wb=185;else{j:do if(!(f[vb>>2]|0)){d=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;xb=x;x=0;k:do if(!(xb&1)){x=0;d=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;switch(f[d+4>>2]|0){case 1:{x=0;g=ga(236,f[yb+4>>2]|0)|0;xb=x;x=0;do if(!(xb&1)){x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;e=ia(92,yb|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[g+8>>2]=e?38:36;f[g+12>>2]=d;f[g+4>>2]=4;d=g;break j}while(0);d=Ia()|0;break i}case 3:{x=0;d=ia(89,yb|0,d|0)|0;yb=x;x=0;if(yb&1)break k;else break j}default:{x=0;ua(256,d|0,4);yb=x;x=0;if(yb&1)break k;else break j}}}while(0);d=Ia()|0;break i}else{x=0;f[xb>>2]=f[vb>>2];f[xb+4>>2]=f[vb+4>>2];f[xb+8>>2]=f[vb+8>>2];f[xb+12>>2]=f[vb+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1){wb=185;break i}}while(0);wb=1537;break a}while(0);if((wb|0)==185)d=Ia()|0;wb=1538;break a}x=0;d=ia(45,c|0,1)|0;wb=x;x=0;if(wb&1)break h;if(FBa(f[d>>2]|0,133020)|0){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;wb=f[d>>2]|0;Bbb(wb)|0;l:do if(!(rab(f[wb>>2]|0)|0)){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;d=Bbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33267]|0)|0;wb=x;x=0;if(wb&1)break h;do if(d){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;x=0;d=ia(45,f[d>>2]|0,1)|0;wb=x;x=0;if(wb&1)break h;if(!(FBa(f[d>>2]|0,133024)|0))break;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;x=0;d=ia(45,f[d>>2]|0,2)|0;wb=x;x=0;if(wb&1)break h;wb=f[d>>2]|0;Bbb(wb)|0;if(rab(f[wb>>2]|0)|0)break l}while(0);x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;i=ja(52,yb|0,f[d>>2]|0,f[a+12>>2]|0)|0;wb=x;x=0;if(wb&1)break;d=f[yb+4>>2]|0;if(!i){x=0;d=ga(237,d|0)|0;wb=x;x=0;do if(!(wb&1)){f[d+8>>2]=1;m$a(ca,0);x=0;f[xb>>2]=f[ca>>2];f[xb+4>>2]=f[ca+4>>2];f[xb+8>>2]=f[ca+8>>2];f[xb+12>>2]=f[ca+12>>2];e=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}x=0;d=ga(236,d|0)|0;yb=x;x=0;m:do if(!(yb&1)){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;switch(i|0){case 1:{e=4;g=7;break}case 2:{e=3;g=6;break}default:{x=0;sa(5);x=0;break m}}f[d+8>>2]=g;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ga(232,f[yb+4>>2]|0)|0;a=x;x=0;if(a&1){d=Ia()|0;wb=1538;break a}x=0;va(97,xb|0,yb|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break a}else{wb=d+8|0;f[wb>>2]=f[xb>>2];f[wb+4>>2]=f[xb+4>>2];f[wb+8>>2]=f[xb+8>>2];f[wb+12>>2]=f[xb+12>>2];f[d+4>>2]=f[wb>>2];wb=1537;break a}}x=0;d=ia(45,c|0,1)|0;wb=x;x=0;if(wb&1)break h;if(!(FBa(f[d>>2]|0,133e3)|0)){x=0;d=ia(45,c|0,1)|0;xb=x;x=0;if(xb&1)break h;if(!(FBa(f[d>>2]|0,133004)|0)){f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;yb=h7a(64142)|0;x=0;va(87,A|0,64142,yb|0);yb=x;x=0;if(yb&1)break h;x=0;ua(69,A|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;HTa(A);wb=1538;break a}else{HTa(A);break}}x=0;d=ga(236,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[d+8>>2]=20;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;d=Bbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33267]|0)|0;wb=x;x=0;if(wb&1)break h;do if(d){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;x=0;d=ia(45,f[d>>2]|0,1)|0;wb=x;x=0;if(wb&1)break h;if(!(FBa(f[d>>2]|0,133e3)|0))break;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;e=Pea()|0;x=0;e=ia(93,yb|0,e|0)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}g=(f[i+4>>2]|0)==4;d=g^1;if(e|d)d=e|g?(e^1|d?27:31):25;else d=29;x=0;d=ja(53,f[yb+8>>2]|0,d|0,i|0)|0;c=x;x=0;if(!(c&1)?(x=0,Ca=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Ca;wb=1537;break a}d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ga(237,f[yb+4>>2]|0)|0;wb=x;x=0;do if(!(wb&1)){f[d+8>>2]=9;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;c=x;x=0;if(c&1)break;f[d+12>>2]=e;m$a(X,-1);x=0;f[xb>>2]=f[X>>2];f[xb+4>>2]=f[X+4>>2];f[xb+8>>2]=f[X+8>>2];f[xb+12>>2]=f[X+12>>2];e=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}else{if($1a(d,f[33287]|0)|0){i=a+16|0;d=f[i>>2]|0;x=0;e=ia(45,c|0,1)|0;xb=x;x=0;if(!(xb&1)?(x=0,F=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0,xb=x,x=0,!(xb&1)):0){d=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;xb=x;x=0;do if(!(xb&1)?(x=0,ba=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0,xb=x,x=0,!(xb&1)):0){j=yb+8|0;x=0;g=ia(95,yb|0,F|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,c|0,3)|0;yb=x;x=0;if(yb&1)break;if(!(UTa(f[d>>2]|0)|0)){e=f[i>>2]|0;x=0;d=ia(45,c|0,3)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break}else d=0;x=0;d=ka(8,j|0,g|0,ba|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}d=Ia()|0;wb=1538;break a}if(!($1a(d,f[33099]|0)|0)){if($1a(d,f[33288]|0)|0){x=0;d=ia(45,c|0,1)|0;xb=x;x=0;n:do if(!(xb&1)){if(!(UTa(f[d>>2]|0)|0)){x=0;d=ia(45,c|0,1)|0;xb=x;x=0;if(xb&1)break;x=0;d=ja(57,yb|0,f[d>>2]|0,f[a+12>>2]|0)|0;xb=x;x=0;if(xb&1)break}else d=0;e=(f[f[a+8>>2]>>2]|0)+4|0;do if(!(b[f[a+28>>2]>>0]|0))f[e>>2]=d;else{if((f[e>>2]|0)==(d|0))break;x=0;wa(71,64449,51387,2262,123618);x=0;break n}while(0);x=0;d=ga(244,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){x=0;e=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;if(!(UTa(f[e>>2]|0)|0)){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break}else e=0;f[d+8>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if($1a(d,f[33096]|0)|0){tab(vb);g=a+32|0;d=f[f[g>>2]>>2]|0;o:do if(Iab(d)|0){e=f[a+36>>2]|0;x=0;d=ga(245,d|0)|0;ub=x;x=0;do if(!(ub&1)){f[B>>2]=d;x=0;f[xb>>2]=f[B>>2];i=ia(97,e|0,xb|0)|0;ub=x;x=0;if(ub&1)break;f[vb>>2]=i;Kab(xb);f[f[g>>2]>>2]=f[xb>>2];d=f[a+44>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)!=(f[d+8>>2]|0)){f[g>>2]=i;f[e>>2]=(f[e>>2]|0)+4;wb=972;break o}x=0;ua(77,d|0,vb|0);ub=x;x=0;if(!(ub&1)){wb=972;break o}d=Ia()|0;break o}while(0);d=Ia()|0}else wb=972;while(0);p:do if((wb|0)==972){e=f[a+48>>2]|0;x=0;d=ia(45,c|0,1)|0;c=x;x=0;q:do if(!(c&1)){x=0;d=ja(48,f[e+16>>2]|0,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;c=f[vb>>2]|0;g=c;r:do if(Iab(c)|0){c=(f[a+44>>2]|0)+4|0;f[c>>2]=(f[c>>2]|0)+-4;c=f[a+36>>2]|0;f[$>>2]=g;x=0;f[xb>>2]=f[$>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1)break q;e=o$a(d)|0;do if(e|0){e=e+8|0;if(!(Gab(f[e>>2]|0)|0))break;f[e>>2]=g;break r}while(0);x=0;e=ga(221,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[e+8>>2]=g;x=0;ua(81,e+12|0,d|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,e|0);yb=x;x=0;if(yb&1)break;d=e;break r}while(0);d=Ia()|0;break p}while(0);wb=1537;break a}while(0);d=Ia()|0}while(0);wb=1538;break a}if($1a(d,f[33278]|0)|0){x=0;d=ga(246,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){e=a+44|0;yb=f[e>>2]|0;if((f[yb+4>>2]|0)==(f[yb>>2]|0)){x=0;wa(71,64474,51387,2295,123618);x=0;break}x=0;g=ia(45,c|0,1)|0;yb=x;x=0;s:do if(yb&1)d=Ia()|0;else{t:do if(UTa(f[g>>2]|0)|0)E1a(vb,f[(f[(f[e>>2]|0)+4>>2]|0)+-4>>2]|0);else{g=f[a+36>>2]|0;x=0;e=ia(45,c|0,1)|0;yb=x;x=0;do if(!(yb&1)){e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ga(245,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[G>>2]=e;x=0;f[xb>>2]=f[G>>2];e=ia(98,g|0,xb|0)|0;yb=x;x=0;if(yb&1)break;E1a(vb,e);break t}while(0);d=Ia()|0;break s}while(0);f[d+8>>2]=f[vb>>2];wb=1537;break a}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if($1a(d,f[33277]|0)|0){x=0;d=ga(246,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){e=a+52|0;yb=f[e>>2]|0;if((f[yb+4>>2]|0)==(f[yb>>2]|0)){x=0;wa(71,64496,51387,2300,123618);x=0;break}x=0;g=ia(45,c|0,1)|0;yb=x;x=0;u:do if(yb&1)d=Ia()|0;else{v:do if(UTa(f[g>>2]|0)|0)E1a(vb,f[(f[(f[e>>2]|0)+4>>2]|0)+-4>>2]|0);else{g=f[a+36>>2]|0;x=0;e=ia(45,c|0,1)|0;yb=x;x=0;do if(!(yb&1)){e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ga(247,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[H>>2]=e;x=0;f[xb>>2]=f[H>>2];e=ia(98,g|0,xb|0)|0;yb=x;x=0;if(yb&1)break;E1a(vb,e);break v}while(0);d=Ia()|0;break u}while(0);f[d+8>>2]=f[vb>>2];wb=1537;break a}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if($1a(d,f[33285]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;do if(!(tb&1)){tb=f[d>>2]|0;Bbb(tb)|0;if(rab(f[tb>>2]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(216,d|0)|0;tb=x;x=0;if(tb&1)break;k=(d|0)==1}else k=0;v=yb+4|0;x=0;d=ga(248,f[v>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}Kab(vb);Kab(ub);g=a+32|0;e=f[f[g>>2]>>2]|0;do if(Gab(e)|0){x=0;va(88,xb|0,64521,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=f[xb>>2];x=0;va(88,xb|0,64531,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}else{e=f[xb>>2]|0;f[ub>>2]=e;t=vb;wb=1042;break}}else{x=0;e=ga(245,e|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=e;x=0;e=ga(247,f[f[g>>2]>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}else{f[ub>>2]=e;Kab(xb);f[f[g>>2]>>2]=f[xb>>2];t=vb;wb=1042;break}}while(0);w:do if((wb|0)==1042){s=a+36|0;g=f[s>>2]|0;E1a(da,f[t>>2]|0);x=0;f[xb>>2]=f[da>>2];g=ia(97,g|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=g;o=f[s>>2]|0;E1a(ha,e);x=0;f[xb>>2]=f[ha>>2];o=ia(97,o|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[ub>>2]=o;E1a(xb,o);q=d+8|0;f[q>>2]=f[xb>>2];r=a+44|0;e=f[r>>2]|0;g=e+4|0;i=f[g>>2]|0;j=o;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,vb|0);vb=x;x=0;if(!(vb&1))wb=1047}else{f[i>>2]=f[t>>2];f[g>>2]=(f[g>>2]|0)+4;wb=1047}x:do if((wb|0)==1047){n=a+52|0;e=f[n>>2]|0;g=e+4|0;i=f[g>>2]|0;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,ub|0);wb=x;x=0;if(wb&1)break}else{f[i>>2]=j;f[g>>2]=(f[g>>2]|0)+4}y:do if(k){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break x;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;c=x;x=0;if(c&1)break x;i=d+12|0;f[i>>2]=e;g=yb+8|0}else{x=0;i=ga(246,f[v>>2]|0)|0;wb=x;x=0;if(wb&1){d=Ia()|0;break w}E1a(xb,f[t>>2]|0);f[i+8>>2]=f[xb>>2];x=0;l=ga(249,f[v>>2]|0)|0;wb=x;x=0;do if(!(wb&1)){m=yb+8|0;k=a+16|0;e=f[k>>2]|0;x=0;g=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ja(53,f[m>>2]|0,20,e|0)|0;yb=x;x=0;if(yb&1)break;f[l+8>>2]=e;f[l+12>>2]=i;LI(l);x=0;e=ga(221,f[v>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){j=e+12|0;x=0;ua(81,j|0,l|0);yb=x;x=0;if(yb&1)break;i=f[k>>2]|0;x=0;g=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;g=ia(87,f[i+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,j|0,g|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,e|0);yb=x;x=0;if(yb&1)break;i=d+12|0;f[i>>2]=e;g=m;break y}while(0);d=Ia()|0;break w}while(0);d=Ia()|0;break w}while(0);E1a(fb,f[t>>2]|0);x=0;f[xb>>2]=f[fb>>2];g=ka(11,g|0,e|0,xb|0,0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break w}x=0;e=ga(246,f[v>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[e+8>>2]=f[q>>2];x=0;ua(81,g+12|0,e|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,g|0);yb=x;x=0;if(yb&1)break;f[i>>2]=g;o_a(d);yb=(f[n>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=(f[r>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=f[s>>2]|0;E1a(gb,o);x=0;f[xb>>2]=f[gb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;yb=f[s>>2]|0;E1a(hb,f[t>>2]|0);x=0;f[xb>>2]=f[hb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break w}while(0);d=Ia()|0}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if($1a(d,f[33284]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1)break h;tb=f[d>>2]|0;Bbb(tb)|0;do if(rab(f[tb>>2]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1)break h;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;tb=x;x=0;if(tb&1)break h;if(!(+p[d>>3]==0.0))break;Kab(vb);e=a+32|0;d=f[f[e>>2]>>2]|0;do if(Gab(d)|0){x=0;va(88,xb|0,64540,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}else{d=f[xb>>2]|0;f[vb>>2]=d;m=vb;wb=1094;break}}else{x=0;d=ga(245,d|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}else{f[vb>>2]=d;Kab(xb);f[f[e>>2]>>2]=f[xb>>2];m=vb;wb=1094;break}}while(0);do if((wb|0)==1094){l=a+36|0;tb=f[l>>2]|0;E1a(U,d);x=0;f[xb>>2]=f[U>>2];d=ia(97,tb|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=d;d=f[l>>2]|0;x=0;ua(65,Z|0,64548);tb=x;x=0;do if(tb&1)wb=1115;else{x=0;f[xb>>2]=f[Z>>2];d=ia(97,d|0,xb|0)|0;tb=x;x=0;if(tb&1){wb=1115;break}f[ub>>2]=d;j=a+44|0;e=f[j>>2]|0;g=e+4|0;i=f[g>>2]|0;k=d;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,vb|0);vb=x;x=0;if(vb&1){wb=1115;break}}else{f[i>>2]=f[m>>2];f[g>>2]=(f[g>>2]|0)+4}i=a+52|0;d=f[i>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0)){x=0;ua(77,d|0,ub|0);vb=x;x=0;if(vb&1){wb=1115;break}}else{f[g>>2]=k;f[e>>2]=(f[e>>2]|0)+4}e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(c&1)wb=1116;else{x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1){wb=1116;break}f[Va>>2]=d;c=(f[i>>2]|0)+4|0;f[c>>2]=(f[c>>2]|0)+-4;c=(f[j>>2]|0)+4|0;f[c>>2]=(f[c>>2]|0)+-4;c=f[l>>2]|0;f[Pa>>2]=k;x=0;f[xb>>2]=f[Pa>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1116;break}c=f[l>>2]|0;E1a(Qa,f[m>>2]|0);x=0;f[xb>>2]=f[Qa>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1116;break}f[Ra>>2]=k;f[xb>>2]=f[Ra>>2];zGa(Za,xb);x=0;ua(258,Za|0,Va|0);c=x;x=0;z:do if(c&1)d=Ia()|0;else{d=f[yb+4>>2]|0;A:do if(!(f[Za+32>>2]|0)){x=0;d=ga(221,d|0)|0;c=x;x=0;do if(!(c&1)){g=d+12|0;x=0;ua(81,g|0,f[Va>>2]|0);c=x;x=0;if(c&1)break;if(o2a(f[(f[Va>>2]|0)+4>>2]|0)|0){x=0;e=ga(250,f[yb+8>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,g|0,e|0);yb=x;x=0;if(yb&1)break}E1a(xb,f[m>>2]|0);f[d+8>>2]=f[xb>>2];x=0;ta(439,d|0);yb=x;x=0;if(!(yb&1))break A}while(0);d=Ia()|0;break z}else{x=0;d=ga(248,d|0)|0;c=x;x=0;if(!(c&1)?(f[d+12>>2]=f[Va>>2],f[d+8>>2]=k,o_a(d),E1a(Ta,f[m>>2]|0),x=0,f[xb>>2]=f[Ta>>2],Sa=ka(11,yb+8|0,d|0,xb|0,0)|0,yb=x,x=0,!(yb&1)):0){d=Sa;break}d=Ia()|0;break z}while(0);I_a(Za);wb=1537;break a}while(0);I_a(Za)}while(0);if((wb|0)==1116)d=Ia()|0}while(0);if((wb|0)==1115)d=Ia()|0}while(0);wb=1538;break a}while(0);q=yb+4|0;x=0;d=ga(248,f[q>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}Kab(vb);Kab(ub);g=a+32|0;e=f[f[g>>2]>>2]|0;do if(Gab(e)|0){x=0;va(88,xb|0,64566,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=f[xb>>2];x=0;va(88,xb|0,64573,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}else{e=f[xb>>2]|0;f[ub>>2]=e;r=vb;wb=1142;break}}else{x=0;e=ga(245,e|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=e;x=0;e=ga(247,f[f[g>>2]>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}else{f[ub>>2]=e;Kab(xb);f[f[g>>2]>>2]=f[xb>>2];r=vb;wb=1142;break}}while(0);B:do if((wb|0)==1142){o=a+36|0;g=f[o>>2]|0;E1a(aa,f[r>>2]|0);x=0;f[xb>>2]=f[aa>>2];g=ia(97,g|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=g;n=f[o>>2]|0;E1a(fa,e);x=0;f[xb>>2]=f[fa>>2];n=ia(97,n|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[ub>>2]=n;E1a(xb,n);f[d+8>>2]=f[xb>>2];m=a+44|0;e=f[m>>2]|0;g=e+4|0;i=f[g>>2]|0;j=n;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,vb|0);vb=x;x=0;if(!(vb&1))wb=1147}else{f[i>>2]=f[r>>2];f[g>>2]=(f[g>>2]|0)+4;wb=1147}do if((wb|0)==1147){l=a+52|0;e=f[l>>2]|0;g=e+4|0;i=f[g>>2]|0;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,ub|0);wb=x;x=0;if(wb&1)break}else{f[i>>2]=j;f[g>>2]=(f[g>>2]|0)+4}j=a+16|0;e=f[j>>2]|0;x=0;g=ia(45,c|0,2)|0;a=x;x=0;if(a&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;a=x;x=0;if(a&1)break;k=d+12|0;f[k>>2]=e;a=(f[l>>2]|0)+4|0;f[a>>2]=(f[a>>2]|0)+-4;a=(f[m>>2]|0)+4|0;f[a>>2]=(f[a>>2]|0)+-4;a=f[o>>2]|0;E1a(Wa,n);x=0;f[xb>>2]=f[Wa>>2];ua(257,a|0,xb|0);a=x;x=0;if(a&1)break;a=f[o>>2]|0;E1a(Xa,f[r>>2]|0);x=0;f[xb>>2]=f[Xa>>2];ua(257,a|0,xb|0);a=x;x=0;if(a&1)break;x=0;i=ga(246,f[q>>2]|0)|0;a=x;x=0;do if(!(a&1)){E1a(xb,n);f[i+8>>2]=f[xb>>2];g=f[j>>2]|0;x=0;e=ia(45,c|0,1)|0;c=x;x=0;if(c&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;c=x;x=0;if(c&1)break;f[i+16>>2]=e;xqa(i);e=f[k>>2]|0;E1a(_a,f[r>>2]|0);x=0;f[xb>>2]=f[_a>>2];e=ka(11,yb+8|0,e|0,xb|0,i|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break B}else{f[k>>2]=e;o_a(d);wb=1537;break a}}while(0);d=Ia()|0;break B}while(0);d=Ia()|0}while(0);wb=1538;break a}if($1a(d,f[33283]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}z=f[d>>2]|0;x=0;d=ia(45,c|0,2)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}q=f[d>>2]|0;x=0;d=ia(45,c|0,3)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}v=f[d>>2]|0;x=0;d=ia(45,c|0,4)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}r=f[d>>2]|0;w=yb+4|0;x=0;y=ga(248,f[w>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}Kab(vb);Kab(ub);e=a+32|0;d=f[f[e>>2]>>2]|0;do if(Gab(d)|0){x=0;va(88,xb|0,64579,1);c=x;x=0;if(c&1){d=Ia()|0;break}f[vb>>2]=f[xb>>2];x=0;va(88,xb|0,64587,1);c=x;x=0;if(c&1){d=Ia()|0;break}else{d=f[xb>>2]|0;f[ub>>2]=d;t=vb;wb=1187;break}}else{x=0;d=ga(245,d|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}f[vb>>2]=d;x=0;d=ga(247,f[f[e>>2]>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}else{f[ub>>2]=d;Kab(xb);f[f[e>>2]>>2]=f[xb>>2];t=vb;wb=1187;break}}while(0);C:do if((wb|0)==1187){s=a+36|0;e=f[s>>2]|0;E1a(Ea,f[t>>2]|0);x=0;f[xb>>2]=f[Ea>>2];e=ia(97,e|0,xb|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}f[vb>>2]=e;n=f[s>>2]|0;E1a(Fa,d);x=0;f[xb>>2]=f[Fa>>2];n=ia(97,n|0,xb|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}f[ub>>2]=n;E1a(xb,n);m=y+8|0;f[m>>2]=f[xb>>2];o=a+44|0;d=f[o>>2]|0;e=d+4|0;g=f[e>>2]|0;i=n;if((g|0)==(f[d+8>>2]|0)){x=0;ua(77,d|0,vb|0);c=x;x=0;if(!(c&1))wb=1192}else{f[g>>2]=f[t>>2];f[e>>2]=(f[e>>2]|0)+4;wb=1192}do if((wb|0)==1192){l=a+52|0;d=f[l>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0)){x=0;ua(77,d|0,ub|0);c=x;x=0;if(c&1)break}else{f[g>>2]=i;f[e>>2]=(f[e>>2]|0)+4}x=0;e=ga(246,f[w>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break C}E1a(xb,f[t>>2]|0);f[e+8>>2]=f[xb>>2];x=0;i=ga(249,f[w>>2]|0)|0;c=x;x=0;do if(!(c&1)){j=yb+8|0;k=a+16|0;x=0;d=ia(87,f[(f[k>>2]|0)+16>>2]|0,q|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(53,f[j>>2]|0,20,d|0)|0;yb=x;x=0;if(yb&1)break;f[i+8>>2]=d;f[i+12>>2]=e;LI(i);x=0;g=ga(221,f[w>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){e=g+12|0;x=0;ua(81,e|0,i|0);yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[(f[k>>2]|0)+16>>2]|0,r|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,e|0,d|0);yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[(f[k>>2]|0)+16>>2]|0,v|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,e|0,d|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,g|0);yb=x;x=0;if(yb&1)break;e=y+12|0;f[e>>2]=g;x=0;d=ga(246,f[w>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break C}f[d+8>>2]=f[m>>2];yb=f[e>>2]|0;E1a(bb,f[t>>2]|0);x=0;f[xb>>2]=f[bb>>2];d=ka(11,j|0,yb|0,xb|0,d|0)|0;yb=x;x=0;do if(!(yb&1)){f[e>>2]=d;o_a(y);yb=(f[l>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=(f[o>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=f[s>>2]|0;E1a(db,n);x=0;f[xb>>2]=f[db>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;yb=f[s>>2]|0;E1a(eb,f[t>>2]|0);x=0;f[xb>>2]=f[eb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;x=0;d=ga(221,f[w>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){g=d+12|0;x=0;e=ia(87,f[(f[k>>2]|0)+16>>2]|0,z|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,g|0,e|0);yb=x;x=0;if(yb&1)break;x=0;ua(81,g|0,y|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,d|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break C}while(0);d=Ia()|0;break C}while(0);d=Ia()|0;break C}while(0);d=Ia()|0;break C}while(0);d=Ia()|0}while(0);wb=1538;break a}if($1a(d,f[33279]|0)|0){e=a+32|0;if(!(Gab(f[f[e>>2]>>2]|0)|0)){x=0;wa(71,52195,51387,2465,123618);x=0;break h}x=0;d=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break h;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(214,d|0)|0;yb=x;x=0;if(yb&1)break h;f[f[e>>2]>>2]=f[d>>2];e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break h;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break h;else{wb=1537;break a}}if($1a(d,f[33290]|0)|0){x=0;d=ga(249,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){i=a+16|0;e=f[i>>2]|0;x=0;g=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+8>>2]=e;e=f[i>>2]|0;x=0;g=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;g=f[i>>2]|0;x=0;e=ia(45,c|0,3)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;LI(d);wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}if($1a(d,f[33282]|0)|0){x=0;d=ia(45,c|0,1)|0;ub=x;x=0;if(ub&1)break h;ub=f[d>>2]|0;Bbb(ub)|0;D:do if(sab(f[ub>>2]|0)|0){x=0;d=ia(45,c|0,1)|0;ub=x;x=0;do if(!(ub&1)){k=Bbb(f[d>>2]|0)|0;x=0;k=ga(234,k|0)|0;ub=x;x=0;if(ub&1)break;e=Vab(k)|0;e=f[e>>2]|0;d=Bbb(e)|0;x=0;d=ia(46,d|0,f[33281]|0)|0;ub=x;x=0;do if(!(ub&1)){if(!d)break D;x=0;d=ia(45,e|0,1)|0;ub=x;x=0;if(ub&1)break;ub=f[d>>2]|0;Bbb(ub)|0;if(!(Gab(f[ub>>2]|0)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33289]|0)|0;ub=x;x=0;if(ub&1)break;if(!d)break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;ub=x;x=0;if(ub&1)break;if(!(FBa(f[d>>2]|0,132960)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;ub=x;x=0;if(ub&1)break;ub=f[d>>2]|0;Bbb(ub)|0;if(!(Gab(f[ub>>2]|0)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;ub=x;x=0;if(ub&1)break;j=yb+200|0;if(!(FBa(f[d>>2]|0,j)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,3)|0;ub=x;x=0;if(ub&1)break;ub=f[d>>2]|0;Bbb(ub)|0;if(!(rab(f[ub>>2]|0)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,3)|0;ub=x;x=0;if(ub&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;ub=x;x=0;if(ub&1)break;if(!(+p[d>>3]==2.0))break D;x=0;d=ia(45,e|0,1)|0;ub=x;x=0;E:do if(ub&1)wb=1291;else{d=Bbb(f[d>>2]|0)|0;x=0;d=ga(214,d|0)|0;ub=x;x=0;if(ub&1){wb=1291;break}ub=f[d>>2]|0;f[xb>>2]=ub;d=yb+112|0;F:do if((eV(d,ub)|0)!=(yb+116|0)){x=0;d=ia(88,d|0,xb|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break E}g=f[d+8>>2]|0;f4a(vb,0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;G:do if(xb&1)wb=1293;else{d=Bbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33289]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break}do if(d){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(FBa(f[d>>2]|0,133016)|0)){wb=1294;break}x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Bbb(xb)|0;if(!(rab(f[xb>>2]|0)|0)){wb=1294;break}x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Bbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(+p[d>>3]==0.0)){wb=1294;break}x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}else{i=0;wb=1314}}else wb=1294;while(0);H:do if((wb|0)==1294){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Bbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33267]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}do if(d){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(FBa(f[d>>2]|0,133024)|0))break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}else{i=1;wb=1314;break H}}while(0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Bbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33099]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!d)break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Bbb(xb)|0;if(!(Gab(f[xb>>2]|0)|0))break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(FBa(f[d>>2]|0,yb+132|0)|0))break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}else{i=2;wb=1314}}while(0);I:do if((wb|0)==1314){e=f[d>>2]|0;f[vb>>2]=e;d=Bbb(e)|0;x=0;d=ia(46,d|0,f[33281]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!d)break;x=0;d=ia(45,e|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Bbb(xb)|0;if(!(Gab(f[xb>>2]|0)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Bbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33289]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!d)break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(FBa(f[d>>2]|0,132960)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Bbb(xb)|0;if(!(Gab(f[xb>>2]|0)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(FBa(f[d>>2]|0,j)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Bbb(xb)|0;if(!(rab(f[xb>>2]|0)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Bbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(+p[d>>3]==2.0))break;e=Wab(k)|0;e=f[e>>2]|0;J:do if(!g){g=(i|0)==1;if((i+-1|0)>>>0>=2)break I;x=0;d=ga(236,f[yb+4>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[d+8>>2]=45;x=0;e=ia(87,f[(f[a+16>>2]|0)+16>>2]|0,e|0)|0;c=x;x=0;if(c&1)break;f[d+12>>2]=e;f[d+4>>2]=3;if(!g)break J;x=0;d=ia(89,yb|0,d|0)|0;yb=x;x=0;if(!(yb&1))break J}while(0);d=Ia()|0;break G}else{if(!((g|0)==2&(i|0)==0))break I;x=0;d=ga(236,f[yb+4>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[d+8>>2]=33;x=0;e=ia(87,f[(f[a+16>>2]|0)+16>>2]|0,e|0)|0;c=x;x=0;if(c&1)break;g=d+12|0;f[g>>2]=e;if((f[e+4>>2]|0)==4){x=0;e=ja(53,f[yb+8>>2]|0,44,e|0)|0;yb=x;x=0;if(yb&1)break;f[g>>2]=e}f[d+4>>2]=1;break J}while(0);d=Ia()|0;break G}while(0);wb=1537;break a}while(0);break F}while(0);if((wb|0)==1293)d=Ia()|0;break E}while(0);break D}while(0);if((wb|0)==1291)d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ga(221,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){j=d+12|0;i=a+16|0;e=f[i>>2]|0;x=0;g=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,j|0,e|0);yb=x;x=0;if(yb&1)break;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,j|0,e|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,d|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}if(!($1a(d,f[33276]|0)|0))break;Kab(vb);e=a+32|0;d=f[f[e>>2]>>2]|0;do if(Gab(d)|0){x=0;va(88,xb|0,117150,1);hb=x;x=0;if(hb&1){d=Ia()|0;break}else{d=f[xb>>2]|0;f[vb>>2]=d;e=vb;wb=1376;break}}else{x=0;d=ga(245,d|0)|0;hb=x;x=0;if(hb&1){d=Ia()|0;break}else{f[vb>>2]=d;Kab(xb);f[f[e>>2]>>2]=f[xb>>2];e=vb;wb=1376;break}}while(0);K:do if((wb|0)==1376){F=a+36|0;wb=f[F>>2]|0;E1a(E,d);x=0;f[xb>>2]=f[E>>2];d=ia(97,wb|0,xb|0)|0;wb=x;x=0;if(wb&1){d=Ia()|0;break}f[vb>>2]=d;D=a+44|0;g=f[D>>2]|0;i=g+4|0;j=f[i>>2]|0;do if((j|0)==(f[g+8>>2]|0)){x=0;ua(77,g|0,vb|0);wb=x;x=0;if(!(wb&1))break;d=Ia()|0;break K}else{f[j>>2]=d;f[i>>2]=(f[i>>2]|0)+4}while(0);C=yb+4|0;x=0;o=ga(251,f[C>>2]|0)|0;wb=x;x=0;do if(!(wb&1)){d=f[a+16>>2]|0;x=0;g=ia(45,c|0,1)|0;wb=x;x=0;if(wb&1)break;x=0;d=ia(87,f[d+16>>2]|0,f[g>>2]|0)|0;wb=x;x=0;if(wb&1)break;z=o+28|0;f[z>>2]=d;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1){d=Ia()|0;break K}B=f[d>>2]|0;m=0;n=0;j=0;k=0;t=0;v=0;while(1){A=Bbb(B)|0;x=0;d=ga(213,A|0)|0;c=x;x=0;if(c&1){wb=1391;break}if(n>>>0>=d>>>0){wb=1387;break}x=0;d=ia(45,B|0,n|0)|0;c=x;x=0;if(c&1){wb=1398;break}x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1){wb=1399;break}d=f[d>>2]|0;Bbb(d)|0;if(Fab(f[d>>2]|0)|0){l=m;g=t;d=v}else{x=0;va(97,xb|0,yb|0,d|0);c=x;x=0;if(c&1){wb=1400;break}x=0;d=ga(252,xb|0)|0;i=I;c=x;x=0;if(c&1){wb=1400;break}c=(i|0)<(v|0)|(i|0)==(v|0)&d>>>0>>0;g=(i|0)>(k|0)|(i|0)==(k|0)&d>>>0>j>>>0;l=1;j=m?(g?d:j):d;k=m?(g?i:k):i;g=m?(c?d:t):d;d=m?(c?i:v):i}m=l;n=n+1|0;t=g;v=d}if((wb|0)==1387){h=+(j>>>0)+4294967296.0*+(k|0)-(+(t>>>0)+4294967296.0*+(v|0));x=0;d=ga(221,f[C>>2]|0)|0;c=x;x=0;do if(!(c&1)){L:do if(h>=0.0&h<10240.0){M:do switch(f[(f[z>>2]|0)+4>>2]|0){case 1:{x=0;i=ga(237,f[C>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[i+8>>2]=1;f[i+12>>2]=f[z>>2];m$a(ab,t);x=0;f[xb>>2]=f[ab>>2];f[xb+4>>2]=f[ab+4>>2];f[xb+8>>2]=f[ab+8>>2];f[xb+12>>2]=f[ab+12>>2];g=ia(50,yb+8|0,xb|0)|0;c=x;x=0;if(c&1)break;f[i+16>>2]=g;f[i+4>>2]=1;s=0;g=i;wb=1431;break M}while(0);d=Ia()|0;break K}case 2:{x=0;i=ga(237,f[C>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[i+8>>2]=26;f[i+12>>2]=f[z>>2];m=yb+8|0;SSa(cb,t,v);x=0;f[xb>>2]=f[cb>>2];f[xb+4>>2]=f[cb+4>>2];f[xb+8>>2]=f[cb+8>>2];f[xb+12>>2]=f[cb+12>>2];g=ia(50,m|0,xb|0)|0;c=x;x=0;if(c&1)break;f[i+16>>2]=g;f[i+4>>2]=2;x=0;j=ia(96,f[f[a+8>>2]>>2]|0,2)|0;c=x;x=0;if(c&1){d=Ia()|0;break K}x=0;k=ia(99,f[m>>2]|0,0)|0;c=x;x=0;do if(!(c&1)){l=k+12|0;x=0;g=ja(45,m|0,j|0,i|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,l|0,g|0);c=x;x=0;if(c&1)break;tab(jb);x=0;i=ja(46,f[m>>2]|0,j|0,2)|0;c=x;x=0;if(c&1)break;SSa(ib,32,0);x=0;f[xb>>2]=f[ib>>2];f[xb+4>>2]=f[ib+4>>2];f[xb+8>>2]=f[ib+8>>2];f[xb+12>>2]=f[ib+12>>2];g=ia(50,m|0,xb|0)|0;c=x;x=0;if(c&1)break;x=0;g=ka(7,f[m>>2]|0,36,i|0,g|0)|0;c=x;x=0;if(c&1)break;x=0;g=ja(53,f[m>>2]|0,24,g|0)|0;c=x;x=0;if(c&1)break;x=0;f[xb>>2]=f[jb>>2];i=ka(12,m|0,xb|0,0,g|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,l|0,i|0);c=x;x=0;if(c&1)break;x=0;g=ja(46,f[m>>2]|0,j|0,2)|0;c=x;x=0;if(c&1)break;x=0;ua(81,l|0,g|0);c=x;x=0;if(c&1)break;x=0;ta(439,k|0);c=x;x=0;if(c&1)break;x=0;g=ja(53,f[m>>2]|0,24,k|0)|0;c=x;x=0;if(c&1)break;s=i;wb=1431;break M}while(0);d=Ia()|0;break K}while(0);d=Ia()|0;break K}default:{x=0;wa(71,64594,51387,2589,123618);x=0}}while(0);do if((wb|0)==1431){f[z>>2]=g;x=0;ua(81,d+12|0,o|0);c=x;x=0;if(c&1)break;n=a+48|0;q=o+24|0;m=o+24|0;r=o+8|0;o=o+12|0;l=0;while(1){x=0;g=ga(213,A|0)|0;c=x;x=0;if(c&1){wb=1436;break}if(l>>>0>=g>>>0){wb=1435;break}x=0;g=ia(45,B|0,l|0)|0;c=x;x=0;if(c&1){wb=1445;break}i=f[g>>2]|0;x=0;g=ia(45,i|0,0)|0;c=x;x=0;if(c&1){wb=1446;break}j=f[g>>2]|0;x=0;g=ia(45,i|0,1)|0;c=x;x=0;if(c&1){wb=1447;break}x=0;k=ja(48,f[(f[n>>2]|0)+16>>2]|0,f[g>>2]|0,0)|0;c=x;x=0;if(c&1){wb=1448;break}tab(ub);Bbb(j)|0;if(Fab(f[j>>2]|0)|0){g=f[F>>2]|0;x=0;ua(65,qb|0,64621);c=x;x=0;if(c&1){wb=1449;break}x=0;f[xb>>2]=f[qb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1449;break}f[m>>2]=g;f[ub>>2]=g}else{x=0;va(97,xb|0,yb|0,j|0);c=x;x=0;if(c&1){wb=1454;break}x=0;g=ga(252,xb|0)|0;i=I;c=x;x=0;if(c&1){wb=1454;break}if((i|0)<(v|0)|(i|0)==(v|0)&g>>>0>>0){wb=1453;break}i=NRa(g|0,i|0,t|0,v|0)|0;j=I;if(!((j|0)>-1|(j|0)==-1&i>>>0>4294967295)){wb=1457;break}g=f[F>>2]|0;x=0;ua(65,rb|0,64660);c=x;x=0;if(c&1){wb=1462;break}x=0;f[xb>>2]=f[rb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1462;break}f[ub>>2]=g;if(!(j>>>0<0|(j|0)==0&i>>>0<(Bbb(f[o>>2]|0)|0)>>>0)?(x=0,ua(259,r|0,i+1|0),c=x,x=0,c&1):0){wb=1463;break}x=0;i=ia(100,r|0,i|0)|0;c=x;x=0;if(c&1){wb=1463;break}f[i>>2]=g}x=0;i=ga(221,f[C>>2]|0)|0;c=x;x=0;if(c&1){wb=1472;break}f[d+8>>2]=g;j=i+12|0;x=0;ua(81,j|0,d|0);c=x;x=0;if(c&1){wb=1472;break}x=0;ua(81,j|0,k|0);c=x;x=0;if(c&1){wb=1472;break}x=0;ta(439,i|0);c=x;x=0;if(c&1){wb=1472;break}c=f[F>>2]|0;f[sb>>2]=g;x=0;f[xb>>2]=f[sb>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1472;break}l=l+1|0;d=i}switch(wb|0){case 1435:{E1a(xb,f[e>>2]|0);i=f[xb>>2]|0;f[d+8>>2]=i;g=f[q>>2]|0;if(Gab(g)|0){f[q>>2]=i;g=i}if(s|0)f[s+8>>2]=g;i=0;while(1){if(i>>>0>=(Bbb(f[o>>2]|0)|0)>>>0)break L;x=0;g=ia(100,r|0,i|0)|0;yb=x;x=0;if(yb&1)break;if(Gab(f[g>>2]|0)|0){x=0;g=ia(100,r|0,i|0)|0;yb=x;x=0;if(yb&1)break;f[g>>2]=f[q>>2]}i=i+1|0}d=Ia()|0;break K}case 1436:{d=Ia()|0;break K}case 1445:{d=Ia()|0;break K}case 1446:{d=Ia()|0;break K}case 1447:{d=Ia()|0;break K}case 1448:{d=Ia()|0;break K}case 1449:{d=Ia()|0;break}case 1453:{x=0;wa(71,64636,51387,2632,123618);x=0;wb=1455;break}case 1454:{d=Ia()|0;break}case 1457:{x=0;wa(71,64649,51387,2634,123618);x=0;wb=1455;break}case 1462:{d=Ia()|0;break}case 1463:{d=Ia()|0;break}case 1472:{d=Ia()|0;break}}if((wb|0)==1455)d=Ia()|0;break K}while(0);d=Ia()|0;break K}else{x=0;t=ia(96,f[f[a+8>>2]>>2]|0,f[(f[z>>2]|0)+4>>2]|0)|0;c=x;x=0;do if(!(c&1)){y=d+12|0;w=yb+8|0;x=0;g=ja(45,w|0,t|0,f[z>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,y|0,g|0);c=x;x=0;if(c&1)break;r=a+48|0;v=o+24|0;q=o+24|0;o=0;s=0;l=0;while(1){x=0;g=ga(213,A|0)|0;c=x;x=0;if(c&1){wb=1494;break}if(o>>>0>=g>>>0){wb=1491;break}x=0;g=ia(45,B|0,o|0)|0;c=x;x=0;if(c&1){wb=1503;break}i=f[g>>2]|0;x=0;g=ia(45,i|0,0)|0;c=x;x=0;if(c&1){wb=1504;break}m=f[g>>2]|0;x=0;g=ia(45,i|0,1)|0;c=x;x=0;if(c&1){wb=1505;break}x=0;n=ja(48,f[(f[r>>2]|0)+16>>2]|0,f[g>>2]|0,0)|0;c=x;x=0;if(c&1){wb=1506;break}tab(ub);Bbb(m)|0;c=Fab(f[m>>2]|0)|0;g=f[F>>2]|0;if(c){x=0;ua(65,kb|0,64621);c=x;x=0;if(c&1){wb=1507;break}x=0;f[xb>>2]=f[kb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1507;break}f[q>>2]=g;f[ub>>2]=g;j=s}else{x=0;ua(65,lb|0,64660);c=x;x=0;if(c&1){wb=1517;break}x=0;f[xb>>2]=f[lb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1517;break}f[ub>>2]=g;k=f[(f[z>>2]|0)+4>>2]|0;x=0;j=ja(46,f[w>>2]|0,t|0,k|0)|0;c=x;x=0;if(c&1){wb=1518;break}x=0;va(97,mb|0,yb|0,m|0);c=x;x=0;if(c&1){wb=1518;break}x=0;f[xb>>2]=f[mb>>2];f[xb+4>>2]=f[mb+4>>2];f[xb+8>>2]=f[mb+8>>2];f[xb+12>>2]=f[mb+12>>2];i=ia(50,w|0,xb|0)|0;c=x;x=0;if(c&1){wb=1518;break}x=0;i=ka(7,f[w>>2]|0,((k|0)==1?15:40)|0,j|0,i|0)|0;c=x;x=0;if(c&1){wb=1518;break}f[nb>>2]=g;x=0;f[xb>>2]=f[nb>>2];j=ka(12,w|0,xb|0,0,0)|0;c=x;x=0;if(c&1){wb=1518;break}x=0;i=ka(8,w|0,i|0,j|0,l|0)|0;c=x;x=0;if(c&1){wb=1518;break}l=i;j=(s|0)==0?i:s}x=0;k=ga(221,f[C>>2]|0)|0;c=x;x=0;if(c&1){wb=1524;break}f[d+8>>2]=g;i=k+12|0;x=0;ua(81,i|0,d|0);c=x;x=0;if(c&1){wb=1524;break}x=0;ua(81,i|0,n|0);c=x;x=0;if(c&1){wb=1524;break}c=f[F>>2]|0;f[ob>>2]=g;x=0;f[xb>>2]=f[ob>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1524;break}o=o+1|0;s=j;d=k}switch(wb|0){case 1491:{E1a(xb,f[e>>2]|0);i=f[xb>>2]|0;f[d+8>>2]=i;g=f[v>>2]|0;if(Gab(g)|0){f[v>>2]=i;g=i}f[pb>>2]=g;x=0;f[xb>>2]=f[pb>>2];g=ka(12,w|0,xb|0,0,0)|0;yb=x;x=0;if(!(yb&1)?(f[s+16>>2]=g,x=0,ua(81,y|0,l|0),yb=x,x=0,!(yb&1)):0)break L;d=Ia()|0;break K}case 1494:{d=Ia()|0;break K}case 1503:{d=Ia()|0;break K}case 1504:{d=Ia()|0;break K}case 1505:{d=Ia()|0;break K}case 1506:{d=Ia()|0;break K}case 1507:{d=Ia()|0;break}case 1517:{d=Ia()|0;break}case 1518:{d=Ia()|0;break}case 1524:{d=Ia()|0;break}}break K}while(0);d=Ia()|0;break K}while(0);yb=(f[D>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=f[F>>2]|0;E1a(tb,f[e>>2]|0);x=0;f[xb>>2]=f[tb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break K}else if((wb|0)==1391){d=Ia()|0;break K}else if((wb|0)==1398){d=Ia()|0;break K}else if((wb|0)==1399){d=Ia()|0;break K}else if((wb|0)==1400){d=Ia()|0;break K}}while(0);d=Ia()|0}while(0);wb=1538;break a}x=0;d=ia(45,c|0,1)|0;ub=x;x=0;if(ub&1)break h;ub=f[d>>2]|0;Bbb(ub)|0;if(!(Gab(f[ub>>2]|0)|0)){x=0;d=ga(242,f[yb+4>>2]|0)|0;ub=x;x=0;if(ub&1){d=Ia()|0;wb=1538;break a}x=0;e=ia(45,c|0,1)|0;ub=x;x=0;N:do if(!(ub&1)){n=f[e>>2]|0;x=0;e=ia(45,n|0,0)|0;ub=x;x=0;if(ub&1)break;do if(FBa(f[e>>2]|0,133124)|0){x=0;e=ia(45,n|0,1)|0;ub=x;x=0;if(ub&1)break N;ub=f[e>>2]|0;Bbb(ub)|0;if(!(Gab(f[ub>>2]|0)|0))break;x=0;e=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(45,f[e>>2]|0,0)|0;ub=x;x=0;if(ub&1)break N;if(!(FBa(f[e>>2]|0,133156)|0))break;x=0;e=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(45,f[e>>2]|0,1)|0;ub=x;x=0;if(ub&1)break N;if(!(FBa(f[e>>2]|0,133012)|0))break;x=0;e=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(45,f[e>>2]|0,3)|0;ub=x;x=0;if(ub&1)break N;ub=f[e>>2]|0;Bbb(ub)|0;if(!(rab(f[ub>>2]|0)|0))break;l=a+16|0;e=f[l>>2]|0;x=0;g=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;ub=x;x=0;if(ub&1)break N;m=d+28|0;f[m>>2]=e;x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}j=f[e>>2]|0;k=d+8|0;i=0;while(1){e=Bbb(j)|0;x=0;e=ga(213,e|0)|0;c=x;x=0;if(c&1){wb=933;break}if(i>>>0>=e>>>0)break;e=f[l>>2]|0;x=0;g=ia(45,j|0,i|0)|0;c=x;x=0;if(c&1){wb=933;break}x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;c=x;x=0;if(c&1){wb=933;break}x=0;ua(81,k|0,e|0);c=x;x=0;if(c&1){wb=933;break}i=i+1|0}if((wb|0)==933){d=Ia()|0;wb=1538;break a}e=Pea()|0;x=0;e=ka(9,yb|0,e|0,d+8|0,f[a+12>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[d+24>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];g=yb+8|0;i=f[m>>2]|0;x=0;e=ia(45,n|0,1)|0;yb=x;x=0;if(yb&1)break;e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;yb=x;x=0;if(yb&1)break;E1a(Ya,f[e>>2]|0);f[vb>>2]=0;f[vb+4>>2]=0;f[vb+8>>2]=0;x=0;f[xb>>2]=f[Ya>>2];e=ka(10,g|0,xb|0,vb|0,1)|0;yb=x;x=0;do if(!(yb&1)){x=0;e=ka(7,f[g>>2]|0,0,i|0,e|0)|0;yb=x;x=0;if(yb&1)break;f[m>>2]=e;uSa(vb);wb=1537;break a}while(0);d=Ia()|0;uSa(vb);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;wa(71,64330,51387,2247,123618);x=0}while(0);d=Ia()|0;wb=1538;break a}x=0;d=ia(45,c|0,1)|0;ub=x;x=0;O:do if(!(ub&1)?(y=Bbb(f[d>>2]|0)|0,x=0,y=ga(214,y|0)|0,ub=x,x=0,!(ub&1)):0){l=f[y>>2]|0;if($1a(l,f[yb+124>>2]|0)|0){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;xb=x;x=0;if(xb&1)break;if((d|0)!=2){x=0;wa(71,64152,51387,1856,123618);x=0;break}x=0;d=ga(237,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[d+8>>2]=2;i=a+16|0;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}e=yb+128|0;do if(!($1a(l,f[e>>2]|0)|0)){if($1a(l,f[yb+196>>2]|0)|0)break;if($1a(l,f[yb+132>>2]|0)|0){x=0;d=ia(45,c|0,2)|0;ub=x;x=0;if(ub&1)break O;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;ub=x;x=0;if(ub&1)break O;if((d|0)!=1){x=0;wa(71,64172,51387,1873,123618);x=0;break O}x=0;d=ia(45,c|0,2)|0;ub=x;x=0;P:do if(ub&1)wb=329;else{x=0;d=ia(45,f[d>>2]|0,0)|0;ub=x;x=0;if(ub&1){wb=329;break}x=0;wa(80,vb|0,yb|0,f[d>>2]|0,0);ub=x;x=0;if(ub&1){wb=329;break}Q:do if((f[vb>>2]|0)==4){x=0;h=+ea(2,vb|0);c=x;x=0;if(c&1){wb=329;break P}CAa(T,h);x=0;f[xb>>2]=f[T>>2];f[xb+4>>2]=f[T+4>>2];f[xb+8>>2]=f[T+8>>2];f[xb+12>>2]=f[T+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1){wb=329;break P}}else{x=0;d=ga(236,f[yb+4>>2]|0)|0;xb=x;x=0;R:do if(!(xb&1)){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;f[d+12>>2]=e;g=e+4|0;S:do switch(f[g>>2]|0){case 3:{d=e;break Q}case 4:{f[d+8>>2]=44;break}case 1:{x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break R;x=0;e=ia(45,f[e>>2]|0,0)|0;c=x;x=0;if(c&1)break R;x=0;g=ia(92,yb|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break R;e=d+8|0;if(g){f[e>>2]=37;break S}else{f[e>>2]=35;break S}}case 0:{f[g>>2]=3;d=e;break Q}default:{f[ya>>2]=0;f[ya+4>>2]=0;f[ya+8>>2]=0;yb=h7a(64192)|0;x=0;va(87,ya|0,64192,yb|0);yb=x;x=0;if(yb&1)break R;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;do if(!(yb&1)){x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(69,ya|0,f[e>>2]|0);yb=x;x=0;if(yb&1)break;HTa(ya);break S}while(0);d=Ia()|0;HTa(ya);break P}}while(0);f[d+4>>2]=3;break Q}while(0);d=Ia()|0;break P}while(0);wb=1537;break a}while(0);if((wb|0)==329)d=Ia()|0;wb=1538;break a}if($1a(l,f[yb+136>>2]|0)|0){e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;T:do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;g=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;e=g+4|0;switch(f[e>>2]|0){case 1:{x=0;ta(456,f[a+24>>2]|0);c=x;x=0;if(c&1)break T;l=yb+4|0;x=0;i=ga(233,f[l>>2]|0)|0;c=x;x=0;do if(!(c&1)){e=a+8|0;d=f[f[e>>2]>>2]|0;E1a(_,f[33042]|0);x=0;f[xb>>2]=f[_>>2];d=ia(85,d|0,xb|0)|0;c=x;x=0;if(c&1)break;f[i+8>>2]=d;f[i+12>>2]=g;bLa(i,0);via(i);f[vb>>2]=yb;f[vb+4>>2]=f[e>>2];x=0;k=ga(237,f[l>>2]|0)|0;c=x;x=0;U:do if(c&1)wb=377;else{f[k+8>>2]=17;x=0;d=ga(239,vb|0)|0;c=x;x=0;if(c&1){wb=377;break}f[k+12>>2]=d;e=yb+8|0;m$a(za,0);x=0;f[xb>>2]=f[za>>2];f[xb+4>>2]=f[za+4>>2];f[xb+8>>2]=f[za+8>>2];f[xb+12>>2]=f[za+12>>2];d=ia(50,e|0,xb|0)|0;yb=x;x=0;if(yb&1){wb=377;break}f[k+16>>2]=d;x=0;ta(455,k|0);yb=x;x=0;if(yb&1){wb=377;break}x=0;d=ga(221,f[l>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){j=d+12|0;x=0;ua(81,j|0,i|0);yb=x;x=0;if(yb&1)break;x=0;i=ga(237,f[l>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[i+8>>2]=1;m$a(Ja,0);x=0;f[xb>>2]=f[Ja>>2];f[xb+4>>2]=f[Ja+4>>2];f[xb+8>>2]=f[Ja+8>>2];f[xb+12>>2]=f[Ja+12>>2];e=ia(50,e|0,xb|0)|0;yb=x;x=0;if(yb&1)break;f[i+12>>2]=e;x=0;e=ga(239,vb|0)|0;yb=x;x=0;if(yb&1)break;f[i+16>>2]=e;f[i+4>>2]=1;x=0;g=ga(240,f[l>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[g+8>>2]=i;x=0;e=ga(239,vb|0)|0;yb=x;x=0;if(yb&1)break;f[g+12>>2]=e;f[g+16>>2]=k;f[g+4>>2]=1;x=0;ua(81,j|0,g|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,d|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break U}while(0);d=Ia()|0;break U}while(0);d=Ia()|0}while(0);if((wb|0)==377)d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}case 4:case 3:{x=0;d=ga(236,f[yb+4>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break a}else{wb=f[e>>2]|0;f[d+8>>2]=(wb|0)==3?8:9;f[d+12>>2]=g;f[d+4>>2]=wb;wb=1537;break a}}default:{x=0;sa(5);x=0;break T}}}while(0);d=Ia()|0;wb=1538;break a}g=yb+140|0;do if(!($1a(l,f[g>>2]|0)|0)){if($1a(l,f[yb+148>>2]|0)|0)break;if($1a(l,f[yb+144>>2]|0)|0)break;k=yb+152|0;do if(!($1a(l,f[k>>2]|0)|0)){if($1a(l,f[yb+156>>2]|0)|0)break;e=yb+160|0;do if(!($1a(l,f[e>>2]|0)|0)){if($1a(l,f[yb+164>>2]|0)|0)break;if($1a(l,f[yb+168>>2]|0)|0)break;if($1a(l,f[yb+172>>2]|0)|0)break;if($1a(l,f[yb+176>>2]|0)|0)break;if($1a(l,f[yb+180>>2]|0)|0)break;if($1a(l,f[yb+184>>2]|0)|0)break;if($1a(l,f[yb+188>>2]|0)|0)break;if($1a(l,f[yb+192>>2]|0)|0)break;V:do if(!(b[yb+98>>0]|0))wb=872;else{x=0;d=ia(45,c|0,2)|0;vb=x;x=0;W:do if(!(vb&1)){e=Bbb(f[d>>2]|0)|0;x=0;e=ga(213,e|0)|0;vb=x;x=0;if(vb&1)break;d=b[l>>0]|0;switch(d<<24>>24|0){case 108:{do if((e|0)==2){x=0;d=ia(45,c|0,2)|0;vb=x;x=0;if(vb&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;vb=x;x=0;if(vb&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(216,d|0)|0;vb=x;x=0;if(!(vb&1))wb=557}else{d=0;wb=557}while(0);do if((wb|0)==557){if($1a(l,f[32927]|0)|0){e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,1,1,0,1,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32928]|0)|0){g=u2a(d,2)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,2,1,0,g|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32929]|0)|0){g=u2a(d,4)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,4,1,0,g|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32930]|0)|0){g=u2a(d,8)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,8,1,0,g|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32931]|0)|0){g=u2a(d,4)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,4,1,0,g|0,d|0,3)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!($1a(l,f[32932]|0)|0)){wb=872;break V}g=u2a(d,8)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,8,1,0,g|0,d|0,4)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}case 115:{do if((e|0)==3){x=0;d=ia(45,c|0,2)|0;vb=x;x=0;if(vb&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;vb=x;x=0;if(vb&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(216,d|0)|0;vb=x;x=0;if(!(vb&1)){g=d;wb=598}}else{g=0;wb=598}while(0);do if((wb|0)==598){if($1a(l,f[32933]|0)|0){g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,1,0,1,i|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32934]|0)|0){j=u2a(g,2)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,2,0,j|0,i|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32935]|0)|0){j=u2a(g,4)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,4,0,j|0,i|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32936]|0)|0){j=u2a(g,8)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,8,0,j|0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!($1a(l,f[32937]|0)|0)){if(!($1a(l,f[32938]|0)|0)){wb=872;break V}j=u2a(g,8)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,8,0,j|0,i|0,d|0,4)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}j=a+16|0;e=f[j>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;do if(!(xb&1)){x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;k=yb+8|0;if((f[d+4>>2]|0)==4){x=0;d=ja(53,f[k>>2]|0,44,d|0)|0;yb=x;x=0;if(yb&1)break;i=d}else i=d;g=u2a(g,4)|0;e=f[j>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=pa(7,f[k>>2]|0,4,0,g|0,d|0,i|0,3)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}case 105:switch(e|0){case 1:{e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;wb=x;x=0;if(wb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;wb=x;x=0;if(wb&1)break;if($1a(l,f[32884]|0)|0){if((f[d+4>>2]|0)!=1){x=0;ua(256,d|0,2);yb=x;x=0;if(yb&1)break;else{wb=1537;break a}}x=0;d=ga(241,d|0)|0;c=x;x=0;if(c&1)break;x=0;d=ga(225,d+8|0)|0;c=x;x=0;if(c&1)break;SSa(Aa,d,((d|0)<0)<<31>>31);x=0;f[xb>>2]=f[Aa>>2];f[xb+4>>2]=f[Aa+4>>2];f[xb+8>>2]=f[Aa+8>>2];f[xb+12>>2]=f[Aa+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32880]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,2,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32881]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,4,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32882]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,45,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32883]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,33,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32909]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,24,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32910]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,22,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32911]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,23,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32912]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,39,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32913]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,40,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32914]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,41,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32915]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,42,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32916]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,26,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,la=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=la;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32917]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,30,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,na=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=na;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32918]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,28,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,qa=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=qa;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32919]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,32,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,ra=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=ra;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32920]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,46,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32921]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,34,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32922]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,3,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32923]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,1,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32924]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,5,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!($1a(l,f[32953]|0)|0)){wb=872;break V}x=0;d=ma(23,f[yb+8>>2]|0,8,0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}case 2:{if($1a(l,f[32885]|0)|0){x=0;va(97,V|0,yb|0,c|0);c=x;x=0;if(c&1)break W;x=0;f[xb>>2]=f[V>>2];f[xb+4>>2]=f[V+4>>2];f[xb+8>>2]=f[V+8>>2];f[xb+12>>2]=f[V+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;wb=x;x=0;if(wb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;wb=x;x=0;if(wb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,1)|0;wb=x;x=0;if(wb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;wb=x;x=0;if(wb&1)break;if($1a(l,f[32886]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,25,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32887]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,26,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32888]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,27,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32889]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,29,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,La=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=La;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32890]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,28,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,Ma=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Ma;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32891]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,31,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,Na=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Na;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32892]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,30,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,Oa=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Oa;wb=1537;break a}d=Ia()|0;wb=1538;break a}if($1a(l,f[32893]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,32,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32894]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,33,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32895]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,34,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32896]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,35,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32897]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,37,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32898]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,36,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32899]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,40,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32900]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,41,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32901]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,45,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32902]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,44,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32903]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,49,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32904]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,48,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32905]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,43,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32906]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,42,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32907]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,47,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32908]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,46,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32954]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=oa(40,f[yb+8>>2]|0,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32958]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,0,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32959]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,1,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32955]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,2,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32956]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,3,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if($1a(l,f[32957]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,4,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!($1a(l,f[32960]|0)|0)){wb=872;break V}b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,5,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}case 3:{if(!($1a(l,f[32961]|0)|0)){wb=872;break V}b[(f[yb>>2]|0)+114>>0]=1;i=a+16|0;e=f[i>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break W;x=0;j=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[i>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break W;x=0;g=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[i>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break W;x=0;d=pa(9,f[yb+8>>2]|0,8,0,j|0,g|0,d|0,2)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}default:break V}case 102:{if($1a(l,f[32925]|0)|0){g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break W;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break W;x=0;d=ka(7,f[yb+8>>2]|0,54,i|0,d|0)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}if(!($1a(l,f[32926]|0)|0)){wb=872;break V}g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break W;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break W;x=0;d=ka(7,f[yb+8>>2]|0,67,i|0,d|0)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}default:break V}}while(0);d=Ia()|0;wb=1538;break a}while(0);if((wb|0)==872)d=b[l>>0]|0;switch(d<<24>>24){case 102:{if(!(D0(l,f[32939]|0,7)|0))wb=876;else n=0;break}case 109:{if(!(D0(l,f[32940]|0,8)|0))wb=876;else n=0;break}default:n=0}if((wb|0)==876)n=1;x=0;d=ia(45,c|0,2)|0;vb=x;x=0;X:do if(!(vb&1)){j=f[d>>2]|0;Y:do if(!n){d=f[yb>>2]|0;E1a($a,l);x=0;f[xb>>2]=f[$a>>2];d=ia(60,d|0,xb|0)|0;vb=x;x=0;if(vb&1){wb=883;break X}e=f[yb+4>>2]|0;if(d|0){x=0;e=ga(231,e|0)|0;vb=x;x=0;if(vb&1){wb=883;break X}E1a(xb,l);f[e+24>>2]=f[xb>>2];d=e;l=e+8|0;m=e;e=0;break}x=0;e=ga(243,e|0)|0;vb=x;x=0;if(vb&1){d=Ia()|0;break X}else{E1a(xb,l);f[e+24>>2]=f[xb>>2];d=e;l=e+8|0;m=0;e=0;break}}else{x=0;g=ga(242,f[yb+4>>2]|0)|0;xb=x;x=0;do if(!(xb&1)){d=f[a+16>>2]|0;x=0;e=ia(45,j|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;f[g+28>>2]=d;d=g;l=g+8|0;m=0;e=1;break Y}while(0);d=Ia()|0;break X}while(0);k=a+16|0;while(1){g=Bbb(j)|0;x=0;g=ga(213,g|0)|0;xb=x;x=0;if(xb&1){wb=896;break}if(e>>>0>=g>>>0)break;g=f[k>>2]|0;x=0;i=ia(45,j|0,e|0)|0;xb=x;x=0;if(xb&1){wb=896;break}x=0;g=ia(87,f[g+16>>2]|0,f[i>>2]|0)|0;xb=x;x=0;if(xb&1){wb=896;break}x=0;ua(81,l|0,g|0);xb=x;x=0;if(xb&1){wb=896;break}e=e+1|0}if((wb|0)==896){d=Ia()|0;break}do if(n){e=YZa(d)|0;g=Pea()|0;x=0;g=ka(9,yb|0,g|0,e+8|0,f[a+12>>2]|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break X}else{f[e+24>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];break}}while(0);if(!m){wb=1537;break a}e=Pea()|0;x=0;e=ja(56,yb|0,e|0,f[a+12>>2]|0)|0;xb=x;x=0;if(xb&1){wb=883;break}f[m+4>>2]=e;x=0;wa(81,yb|0,c|0,e|0,m|0);yb=x;x=0;if(!(yb&1)){wb=1537;break a}else wb=883}else wb=883;while(0);if((wb|0)==883)d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;wb=x;x=0;if(wb&1)break;wb=f[d>>2]|0;d=Bbb(wb)|0;if(!(Gab(f[wb>>2]|0)|0)){x=0;wa(71,64123,51387,1989,123618);x=0;break}x=0;d=ga(214,d|0)|0;wb=x;x=0;Z:do if(wb&1)d=Ia()|0;else{wb=f[d>>2]|0;f[xb>>2]=wb;d=yb+112|0;if((eV(d,wb)|0)==(yb+116|0)){x=0;wa(71,64071,51387,1991,123618);x=0;d=Ia()|0;break}x=0;m=ia(88,d|0,xb|0)|0;xb=x;x=0;_:do if(!(xb&1)){b[(f[yb>>2]|0)+114>>0]=1;$:do if($1a(l,f[e>>2]|0)|0){g=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;e=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=ma(23,f[yb+8>>2]|0,g|0,0,d|0,e|0)|0;c=x;x=0;if(c&1)break;if(!(b[m+5>>0]|0))break $;x=0;d=ja(54,d|0,f[m>>2]|0,f[yb>>2]|0)|0;yb=x;x=0;if(!(yb&1))break $}while(0);d=Ia()|0;break Z}else{if($1a(l,f[yb+164>>2]|0)|0){x=0;j=ga(224,f[m+8>>2]|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break Z}x=0;k=ia(96,f[f[a+8>>2]>>2]|0,j|0)|0;xb=x;x=0;do if(!(xb&1)){l=yb+8|0;i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;yb=x;x=0;if(yb&1)break;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(55,f[l>>2]|0,k|0,d|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=oa(40,f[l>>2]|0,i|0,0,g|0,d|0,j|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(46,f[l>>2]|0,k|0,j|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(51,l|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break;break $}while(0);d=Ia()|0;break Z}if($1a(l,f[yb+168>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,5,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if($1a(l,f[yb+172>>2]|0)|0){k=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;j=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,3)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(9,f[yb+8>>2]|0,k|0,0,j|0,i|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if($1a(l,f[yb+176>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,0,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if($1a(l,f[yb+180>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,1,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if($1a(l,f[yb+184>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,2,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if($1a(l,f[yb+188>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,3,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if(!($1a(l,f[yb+192>>2]|0)|0)){x=0;sa(5);x=0;break _}i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,4,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _}while(0);wb=1537;break a}while(0);d=Ia()|0}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break O;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;xb=x;x=0;if(xb&1)break O;if((d|0)!=2){x=0;wa(71,64152,51387,1964,123618);x=0;break O}x=0;d=ga(237,f[yb+4>>2]|0)|0;yb=x;x=0;aa:do if(!(yb&1)){i=a+16|0;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;j=d+12|0;f[j>>2]=e;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;e=f[(f[j>>2]|0)+4>>2]|0;switch(e|0){case 3:{Ha=$1a(l,f[k>>2]|0)|0;Ha=Ha?56:55;break}case 4:{Ha=$1a(l,f[k>>2]|0)|0;Ha=Ha?69:68;break}default:{x=0;sa(3);yb=x;x=0;if(yb&1)break aa;x=0;ia(52,Ka|0,64277)|0;yb=x;x=0;if(yb&1){Ia()|0;gCa()}else gCa()}}f[d+8>>2]=Ha;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=ga(236,f[yb+4>>2]|0)|0;c=x;x=0;ba:do if(!(c&1)){f[d+12>>2]=e;e=f[e+4>>2]|0;ca:do switch(e|0){case 3:{if($1a(l,f[g>>2]|0)|0){W=12;break ca}W=$1a(l,f[yb+144>>2]|0)|0;W=W?10:18;break}case 4:{if($1a(l,f[g>>2]|0)|0){W=13;break ca}W=$1a(l,f[yb+144>>2]|0)|0;W=W?11:19;break}default:{x=0;sa(3);yb=x;x=0;if(yb&1)break ba;x=0;ia(52,Y|0,64216)|0;yb=x;x=0;if(yb&1){Ia()|0;gCa()}else gCa()}}while(0);f[d+8>>2]=W;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;d=Bbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;xb=x;x=0;if(xb&1)break;if((d|0)!=1){x=0;wa(71,64172,51387,1865,123618);x=0;break}x=0;d=ga(236,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){g=$1a(l,f[e>>2]|0)|0;f[d+8>>2]=g?0:2;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;yb=h7a(64672)|0;x=0;va(87,C|0,64672,yb|0);yb=x;x=0;if(!(yb&1)){x=0;ua(69,C|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;HTa(C);wb=1538;break a}else{HTa(C);d=0;wb=1537;break a}}}while(0);d=Ia()|0;wb=1538}while(0);if((wb|0)==1537){U6a();u=zb;return d|0}else if((wb|0)==1538){U6a();Ua(d|0)}return 0}function yc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=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,ha=0,la=0,ma=0,na=0,oa=0,qa=0,ra=0,ya=0,Aa=0,Ba=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0;La=u;u=u+368|0;Ka=La+16|0;Na=La+312|0;Qa=La+248|0;e=La+356|0;Pa=La+220|0;Oa=La+200|0;M=La+120|0;N=La+108|0;O=La+100|0;P=La+96|0;Q=La+88|0;C=La+80|0;D=La+68|0;E=La+60|0;Ma=La+40|0;oa=La+36|0;h=La+360|0;F=La+300|0;G=La+288|0;H=La+284|0;I=La+272|0;J=La+268|0;K=La+264|0;L=La;S=La+260|0;T=La+361|0;V=La+244|0;Y=La+240|0;Z=La+236|0;_=La+224|0;aa=La+216|0;ba=La+204|0;ca=La+188|0;da=La+176|0;ea=La+164|0;fa=La+152|0;ha=La+140|0;la=La+128|0;ma=La+124|0;na=La+116|0;qa=La+112|0;ra=La+104|0;ya=La+92|0;Aa=La+84|0;Ba=La+76|0;Da=La+72|0;Ea=La+64|0;Fa=La+56|0;Ja=La+52|0;Ga=g0a(c,0)|0;if(!(FBa(f[Ga>>2]|0,133180)|0))Ca(51368,51387,739,51404);c=g0a(c,1)|0;c=g0a(f[c>>2]|0,0)|0;c=f[c>>2]|0;Ga=g0a(c,0)|0;if(!(FBa(f[Ga>>2]|0,133176)|0))Ca(51415,51387,741,51404);R=g0a(c,3)|0;R=f[R>>2]|0;Ga=g0a(R,0)|0;Ga=g0a(f[Ga>>2]|0,0)|0;do if(FBa(f[Ga>>2]|0,133100)|0){Ga=g0a(R,0)|0;Ga=g0a(f[Ga>>2]|0,1)|0;Ga=pPa(Bbb(f[Ga>>2]|0)|0)|0;fNa(Ka,117889,1);if(!($1a(f[Ga>>2]|0,f[Ka>>2]|0)|0)?(Ga=g0a(R,0)|0,Ga=g0a(f[Ga>>2]|0,1)|0,Ga=pPa(Bbb(f[Ga>>2]|0)|0)|0,fNa(Na,117878,1),!($1a(f[Ga>>2]|0,f[Na>>2]|0)|0)):0)break;f[Qa>>2]=0;W=Qa+4|0;f[W>>2]=0;g=Qa+8|0;f[g>>2]=0;$=a+28|0;a:do if(!(b[f[$>>2]>>0]|0))Ha=21;else{c=f[a>>2]|0;x=0;va(85,e|0,0,0);Ga=x;x=0;if(Ga&1)d=Ia()|0;else{f[Ka>>2]=f[e>>2];Tsa(Na,c,Ka);x=0;c=ga(211,Na|0)|0;Ga=x;x=0;do if(!(Ga&1)){f[Ka>>2]=c;e=f[W>>2]|0;if((e|0)==(f[g>>2]|0)){x=0;ua(63,Qa|0,Ka|0);Ga=x;x=0;if(Ga&1)break}else{f[e>>2]=c;f[W>>2]=(f[W>>2]|0)+4}x=0;ja(40,(f[a>>2]|0)+96|0,65535,0)|0;Ga=x;x=0;if(!(Ga&1)){Ha=21;break a}}while(0);d=Ia()|0}}while(0);if((Ha|0)==21){x=0;ta(432,Pa|0);Ga=x;x=0;if(Ga&1)d=Ia()|0;else{Ga=f[Pa>>2]|0;f[Ga>>2]=f[33108];E1a(Ka,f[33047]|0);f[Ga+4>>2]=f[Ka>>2];f[Ga+8>>2]=f[33108];f[Ga+12>>2]=2;X=f[a>>2]|0;b[X+112>>0]=1;b[X+113>>0]=1;f[Pa>>2]=0;x=0;ua(64,X|0,Ga|0);Ga=x;x=0;if(Ga&1)d=Ia()|0;else{x=0;ta(432,Oa|0);Ga=x;x=0;do if(Ga&1)d=Ia()|0;else{Ga=f[Oa>>2]|0;f[Ga>>2]=f[33103];E1a(Ka,f[33047]|0);f[Ga+4>>2]=f[Ka>>2];f[Ga+8>>2]=f[33103];f[Ga+12>>2]=1;X=f[a>>2]|0;f[Oa>>2]=0;x=0;ua(64,X|0,Ga|0);Ga=x;x=0;if(Ga&1){d=Ia()|0;f[Oa>>2]=0;break}c=f[a>>2]|0;b[c+60>>0]=1;b[c+61>>0]=1;x=0;c=ga(212,24)|0;Ga=x;x=0;b:do if(!(Ga&1)){hPa(c);x=0;ua(65,Ka|0,67107);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}f[c>>2]=f[Ka>>2];x=0;ua(65,Ka|0,117867);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}f[c+4>>2]=f[Ka>>2];x=0;ua(65,Ka|0,67107);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}f[c+8>>2]=f[Ka>>2];f[c+12>>2]=3;f[c+20>>2]=1;x=0;ua(64,f[a>>2]|0,c|0);Ga=x;x=0;if(!(Ga&1)){x=0;c=ga(212,24)|0;Ga=x;x=0;do if(!(Ga&1)){hPa(c);x=0;ua(65,Ka|0,67097);Ga=x;x=0;if(Ga&1){d=Ia()|0;break b}f[c>>2]=f[Ka>>2];x=0;ua(65,Ka|0,117867);Ga=x;x=0;if(Ga&1){d=Ia()|0;break b}f[c+4>>2]=f[Ka>>2];x=0;ua(65,Ka|0,67097);Ga=x;x=0;if(Ga&1){d=Ia()|0;break b}f[c+8>>2]=f[Ka>>2];f[c+12>>2]=3;f[c+20>>2]=1;x=0;ua(64,f[a>>2]|0,c|0);Ga=x;x=0;if(Ga&1)break;Kab(M);Kab(N);Kab(O);Kab(P);Kab(Q);Kab(C);Kab(D);Kab(E);X=a+97|0;c:do if(!(b[X>>0]|0))Ha=62;else{f[Ka>>2]=0;e=1;g=0;while(1){c=Bbb(R)|0;x=0;c=ga(213,c|0)|0;Ha=x;x=0;if(Ha&1){Ha=53;break}if(e>>>0>=c>>>0){Ha=39;break}x=0;c=ia(45,R|0,e|0)|0;Ha=x;x=0;if(Ha&1){Ha=53;break}x=0;c=ia(45,f[c>>2]|0,0)|0;Ha=x;x=0;if(Ha&1){Ha=53;break}e=e+1|0;g=g+((FBa(f[c>>2]|0,133176)|0)&1)|0}do if((Ha|0)==39){f[Ka>>2]=g;f[Ma>>2]=f[a>>2];f[oa>>2]=a;b[h>>0]=0;x=0;za(1,Na|0,Ma|0,Ka|0,a+76|0,oa|0,a+32|0,h|0);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}Ha=a+12|0;Ga=f[Na>>2]|0;f[Na>>2]=0;c=f[Ha>>2]|0;f[Ha>>2]=Ga;if(c|0){o4(c);ubb(c)}Ha=62;break c}else if((Ha|0)==53){d=Ia()|0;f[Ka>>2]=g}while(0)}while(0);d:do if((Ha|0)==62){c=(f[a>>2]|0)+72|0;x=0;ja(40,c|0,0,0)|0;Ga=x;x=0;e:do if(!(Ga&1)){f[(f[a>>2]|0)+68>>2]=f[c>>2];y=a+132|0;z=a+16|0;Ga=a+8|0;A=a+112|0;B=a+116|0;v=a+204|0;w=a+208|0;t=1;i=0;g=0;e=0;n=0;f:while(1){j=Bbb(R)|0;x=0;c=ga(213,j|0)|0;s=x;x=0;if(s&1){Ha=67;break}if(t>>>0>=c>>>0){Ha=66;break}x=0;c=ia(45,R|0,t|0)|0;s=x;x=0;if(s&1){Ha=75;break}s=f[c>>2]|0;x=0;c=ia(45,s|0,0)|0;r=x;x=0;if(r&1){Ha=75;break}g:do if(FBa(f[c>>2]|0,133168)|0){r=0;o=i;q=g;h=e;c=n;while(1){x=0;e=ia(45,s|0,1)|0;n=x;x=0;if(n&1){Ha=76;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(213,e|0)|0;n=x;x=0;if(n&1){Ha=76;break f}if(r>>>0>=e>>>0){i=o;g=q;e=h;break g}x=0;e=ia(45,s|0,1)|0;n=x;x=0;if(n&1){Ha=86;break f}x=0;e=ia(45,f[e>>2]|0,r|0)|0;n=x;x=0;if(n&1){Ha=86;break f}g=f[e>>2]|0;x=0;e=ia(45,g|0,0)|0;n=x;x=0;if(n&1){Ha=87;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;n=x;x=0;if(n&1){Ha=87;break f}f[Na>>2]=f[e>>2];x=0;e=ia(45,g|0,1)|0;n=x;x=0;if(n&1){Ha=88;break f}n=f[e>>2]|0;e=Bbb(n)|0;do if(rab(f[n>>2]|0)|0){x=0;e=ga(215,e|0)|0;n=x;x=0;if(n&1){Ha=88;break f}if(!(+p[e>>3]==0.0)){Ha=85;break f}x=0;va(86,a|0,f[Na>>2]|0,1);n=x;x=0;if(n&1){Ha=88;break f}else{e=o;g=q}}else{x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(FBa(f[e>>2]|0,133156)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(FBa(f[e>>2]|0,133016)|0)){Ha=101;break f}x=0;e=ia(45,n|0,3)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Bbb(m)|0;if(!(rab(f[m>>2]|0)|0)){Ha=101;break f}x=0;e=ia(45,n|0,3)|0;m=x;x=0;if(m&1){Ha=88;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(215,e|0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(+p[e>>3]==0.0)){Ha=101;break f}x=0;e=ia(45,n|0,2)|0;n=x;x=0;if(n&1){Ha=104;break f}x=0;wa(72,a|0,f[Na>>2]|0,f[e>>2]|0,1);n=x;x=0;if(n&1){Ha=104;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(FBa(f[e>>2]|0,133068)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(FBa(f[e>>2]|0,133024)|0)){Ha=109;break f}x=0;e=ia(45,n|0,2)|0;n=x;x=0;if(n&1){Ha=115;break f}e=f[e>>2]|0;g=Bbb(e)|0;if(!(rab(f[e>>2]|0)|0)){x=0;wa(72,a|0,f[Na>>2]|0,e|0,4);n=x;x=0;if(n&1){Ha=115;break f}else{e=o;g=q;break}}x=0;e=ga(215,g|0)|0;n=x;x=0;if(n&1){Ha=115;break f}if(!(+p[e>>3]==0.0)){Ha=114;break f}x=0;va(86,a|0,f[Na>>2]|0,4);n=x;x=0;if(n&1){Ha=115;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(FBa(f[e>>2]|0,132396)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Bbb(m)|0;if(!(Gab(f[m>>2]|0)|0)){Ha=132;break f}x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(FBa(f[e>>2]|0,y)|0)){Ha=132;break f}x=0;e=ia(45,n|0,2)|0;m=x;x=0;if(m&1){Ha=88;break f}x=0;e=ia(45,f[e>>2]|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Bbb(m)|0;if(!(rab(f[m>>2]|0)|0)){Ha=132;break f}x=0;e=ia(45,n|0,2)|0;n=x;x=0;if(n&1){Ha=88;break f}x=0;e=ia(45,f[e>>2]|0,0)|0;n=x;x=0;if(n&1){Ha=88;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(215,e|0)|0;n=x;x=0;if(n&1){Ha=88;break f}if(!(+p[e>>3]==0.0)){Ha=132;break f}x=0;va(86,a|0,f[Na>>2]|0,3);n=x;x=0;if(n&1){Ha=88;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(FBa(f[e>>2]|0,132864)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Bbb(m)|0;do if(Gab(f[m>>2]|0)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=145;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;m=x;x=0;if(m&1){Ha=145;break f}g=f[e>>2]|0;x=0;e=ia(45,n|0,2)|0;m=x;x=0;if(m&1){Ha=146;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;m=x;x=0;if(m&1){Ha=146;break f}if(!($1a(g,f[32999]|0)|0))break;e=f[e>>2]|0;if($1a(e,f[33005]|0)|0){f[M>>2]=f[Na>>2];break}if($1a(e,f[33006]|0)|0){f[N>>2]=f[Na>>2];break}if($1a(e,f[33007]|0)|0){f[O>>2]=f[Na>>2];break}if($1a(e,f[33008]|0)|0){f[P>>2]=f[Na>>2];break}if($1a(e,f[33009]|0)|0){f[Q>>2]=f[Na>>2];break}if($1a(e,f[33010]|0)|0){f[C>>2]=f[Na>>2];break}if($1a(e,f[33011]|0)|0){f[D>>2]=f[Na>>2];break}if(!($1a(e,f[33012]|0)|0))break;f[E>>2]=f[Na>>2]}while(0);x=0;wa(72,a|0,f[Na>>2]|0,n|0,0);n=x;x=0;if(n&1){Ha=88;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(FBa(f[e>>2]|0,132856)|0)){x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(FBa(f[e>>2]|0,132852)|0)){f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;n=h7a(51927)|0;x=0;va(87,I|0,51927,n|0);n=x;x=0;if(n&1){Ha=88;break f}x=0;ua(69,I|0,g|0);n=x;x=0;if(n&1){Ha=240;break f}HTa(I);e=o;g=q;break}e=f[a>>2]|0;g=e+76|0;i=e+80|0;if((f[i>>2]|0)==(f[g>>2]|0)){x=0;ua(65,H|0,67097);m=x;x=0;if(m&1){Ha=218;break f}x=0;f[Ka>>2]=f[H>>2];j=ja(41,Ga|0,Ka|0,1)|0;m=x;x=0;if(m&1){Ha=218;break f}f[Ma>>2]=j;k=f[i>>2]|0;if(k>>>0>=(f[e+84>>2]|0)>>>0){x=0;ua(67,g|0,Ma|0);m=x;x=0;if(m&1){Ha=218;break f}}else{uQa(k,j);f[i>>2]=(f[i>>2]|0)+16}e=f[a>>2]|0}j=f[e+76>>2]|0;l=j+4|0;m=j+8|0;e=f[m>>2]|0;g=f[l>>2]|0;x=0;i=ia(47,z|0,Na|0)|0;k=x;x=0;if(k&1){Ha=225;break f}f[i>>2]=e-g>>2;x=0;e=ia(45,n|0,1)|0;n=x;x=0;if(n&1){Ha=226;break f}k=f[e>>2]|0;i=j+12|0;g=0;while(1){e=Bbb(k)|0;x=0;e=ga(213,e|0)|0;n=x;x=0;if(n&1){Ha=227;break f}if(g>>>0>=e>>>0)break;x=0;e=ia(45,k|0,g|0)|0;n=x;x=0;if(n&1){Ha=234;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;n=x;x=0;if(n&1){Ha=234;break f}E1a(Ka,f[e>>2]|0);e=f[m>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;ua(68,l|0,Ka|0);n=x;x=0;if(n&1){Ha=235;break f}}else{f[e>>2]=f[Ka>>2];f[m>>2]=(f[m>>2]|0)+4}g=g+1|0}e=(f[a>>2]|0)+72|0;x=0;ja(40,e|0,(f[m>>2]|0)-(f[l>>2]|0)>>2|0,0)|0;n=x;x=0;if(n&1){Ha=226;break f}f[(f[a>>2]|0)+68>>2]=f[e>>2];e=o;g=q;break}x=0;e=ia(45,n|0,1)|0;n=x;x=0;if(n&1){Ha=88;break f}e=f[e>>2]|0;x=0;g=ia(45,e|0,0)|0;n=x;x=0;if(n&1){Ha=88;break f}if(!(FBa(f[g>>2]|0,132396)|0)){Ha=167;break f}x=0;e=ia(45,e|0,1)|0;n=x;x=0;if(n&1){Ha=174;break f}e=f[e>>2]|0;g=Bbb(e)|0;x=0;i=ia(46,g|0,f[33216]|0)|0;n=x;x=0;if(n&1){Ha=174;break f}do if(i){x=0;e=ia(45,e|0,2)|0;n=x;x=0;if(n&1){Ha=176;break f}e=Bbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;n=x;x=0;if(n&1){Ha=176;break f}e=f[e>>2]|0;if($1a(e,f[33005]|0)|0){e=1;g=1;h=1;c=0;break}if($1a(e,f[33006]|0)|0){e=2;g=1;h=1;c=0;break}if($1a(e,f[33007]|0)|0){e=4;g=1;h=1;c=0;break}if($1a(e,f[33008]|0)|0){e=1;g=1;h=0;c=0;break}if($1a(e,f[33009]|0)|0){e=2;g=1;h=0;c=0;break}if($1a(e,f[33010]|0)|0){e=4;g=1;h=0;c=0;break}if($1a(e,f[33011]|0)|0){e=4;g=0;h=1;c=2;break}if($1a(e,f[33012]|0)|0){e=8;g=0;h=1;c=1;break}f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;n=h7a(51825)|0;x=0;va(87,F|0,51825,n|0);n=x;x=0;if(n&1){Ha=176;break f}x=0;ua(66,F|0,e|0);n=x;x=0;if(n&1){Ha=187;break f}HTa(F);e=o;g=q}else{if(!(Gab(f[e>>2]|0)|0)){Ha=189;break f}x=0;e=ga(214,g|0)|0;n=x;x=0;if(n&1){Ha=192;break f}e=f[e>>2]|0;if($1a(e,f[M>>2]|0)|0){e=1;g=1;h=1;c=0;break}if($1a(e,f[N>>2]|0)|0){e=2;g=1;h=1;c=0;break}if($1a(e,f[O>>2]|0)|0){e=4;g=1;h=1;c=0;break}if($1a(e,f[P>>2]|0)|0){e=1;g=1;h=0;c=0;break}if($1a(e,f[Q>>2]|0)|0){e=2;g=1;h=0;c=0;break}if($1a(e,f[C>>2]|0)|0){e=4;g=1;h=0;c=0;break}if($1a(e,f[D>>2]|0)|0){e=4;g=0;h=1;c=2;break}if($1a(e,f[E>>2]|0)|0){e=8;g=0;h=1;c=1;break}f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;n=h7a(51869)|0;x=0;va(87,G|0,51869,n|0);n=x;x=0;if(n&1){Ha=192;break f}x=0;ua(66,G|0,e|0);n=x;x=0;if(n&1){Ha=203;break f}HTa(G);e=o;g=q}while(0);if((eV(A,f[Na>>2]|0)|0)!=(B|0)){Ha=205;break f}wFa(Ma,e,g,h,c);x=0;xa(4,Ka|0,A|0,f[Na>>2]|0,Na|0,Ma|0);q=x;x=0;if(q&1){Ha=208;break f}}while(0);r=r+1|0;o=e;q=g}}else{x=0;c=ia(45,s|0,0)|0;r=x;x=0;if(r&1){Ha=75;break f}if(!(FBa(f[c>>2]|0,133152)|0)){c=n;break}x=0;c=ia(45,s|0,1)|0;s=x;x=0;if(s&1){Ha=251;break f}x=0;c=ia(45,f[c>>2]|0,1)|0;s=x;x=0;if(s&1){Ha=252;break f}m=f[c>>2]|0;yUa(Na);l=0;while(1){c=Bbb(m)|0;x=0;c=ga(213,c|0)|0;s=x;x=0;if(s&1){Ha=253;break f}if(l>>>0>=c>>>0)break;x=0;c=ia(45,m|0,l|0)|0;s=x;x=0;if(s&1){Ha=266;break f}j=f[c>>2]|0;x=0;c=ia(45,j|0,0)|0;s=x;x=0;if(s&1){Ha=267;break f}c=Bbb(f[c>>2]|0)|0;x=0;c=ga(214,c|0)|0;s=x;x=0;if(s&1){Ha=267;break f}h=f[c>>2]|0;x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=267;break f}s=f[c>>2]|0;Bbb(s)|0;do if(Gab(f[s>>2]|0)|0){x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=269;break f}c=Bbb(f[c>>2]|0)|0;x=0;c=ga(214,c|0)|0;s=x;x=0;if(s&1){Ha=269;break f}k=f[c>>2]|0;x=0;ua(65,Ka|0,51947);s=x;x=0;if(s&1){Ha=271;break f}if($1a(h,f[Ka>>2]|0)|0){c=f[a>>2]|0;E1a(J,k);x=0;f[Ka>>2]=f[J>>2];c=ia(48,c|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=269;break f}if(!c)break;else{Ha=265;break f}}if(!($1a(h,f[33268]|0)|0)){if($1a(h,f[33270]|0)|0){c=w;Ha=274}}else{c=v;Ha=274}if((Ha|0)==274){Ha=0;f[c>>2]=k}E1a(Ka,h);if(K5(Na,Ka)|0){E1a(Ka,k);E1a(Ma,h);x=0;c=ia(49,Na|0,Ma|0)|0;s=x;x=0;if(s&1){Ha=278;break f}f[(f[c>>2]|0)+4>>2]=f[Ka>>2];break}x=0;j=ga(212,12)|0;s=x;x=0;if(s&1){Ha=283;break f}c1a(j);E1a(Ka,h);f[j>>2]=f[Ka>>2];E1a(Ka,k);f[j+4>>2]=f[Ka>>2];f[j+8>>2]=0;x=0;ua(70,f[a>>2]|0,j|0);s=x;x=0;if(s&1){Ha=283;break f}E1a(Ka,h);x=0;c=ia(49,Na|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=284;break f}f[c>>2]=j}else{x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=267;break f}s=f[c>>2]|0;Bbb(s)|0;if(!(rab(f[s>>2]|0)|0)){Ha=287;break f}E1a(Ka,h);if(K5(Na,Ka)|0){Ha=289;break f}x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=299;break f}c=Bbb(f[c>>2]|0)|0;x=0;c=ga(216,c|0)|0;s=x;x=0;if(s&1){Ha=299;break f}E1a(K,h);m$a(L,c);x=0;f[Ka>>2]=f[L>>2];f[Ka+4>>2]=f[L+4>>2];f[Ka+8>>2]=f[L+8>>2];f[Ka+12>>2]=f[L+12>>2];c=ia(50,Ga|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=300;break f}x=0;f[Ka>>2]=f[K>>2];c=ka(6,Ka|0,1,c|0,1)|0;s=x;x=0;if(s&1){Ha=300;break f}x=0;ua(71,f[a>>2]|0,c|0);s=x;x=0;if(s&1){Ha=300;break f}x=0;j=ga(212,12)|0;s=x;x=0;if(s&1){Ha=301;break f}c1a(j);E1a(Ka,h);f[j>>2]=f[Ka>>2];f[j+4>>2]=f[c>>2];f[j+8>>2]=3;x=0;ua(70,f[a>>2]|0,j|0);s=x;x=0;if(s&1){Ha=301;break f}E1a(Ka,h);x=0;c=ia(49,Na|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=302;break f}f[c>>2]=j}while(0);l=l+1|0}WCa(Na);c=n}while(0);t=t+1|0;n=c}switch(Ha|0){case 66:{h=a+12|0;g=1;h:while(1){x=0;c=ga(213,j|0)|0;Ha=x;x=0;if(Ha&1){Ha=309;break}if(g>>>0>=c>>>0){Ha=308;break}x=0;c=ia(45,R|0,g|0)|0;Ha=x;x=0;if(Ha&1){Ha=320;break}c=f[c>>2]|0;x=0;e=ia(45,c|0,0)|0;Ha=x;x=0;if(Ha&1){Ha=320;break}do if(FBa(f[e>>2]|0,133176)|0){x=0;e=ia(51,a|0,c|0)|0;Ha=x;x=0;if(Ha&1){Ha=321;break h}c=f[a>>2]|0;f[S>>2]=f[e>>2];x=0;f[Ka>>2]=f[S>>2];c=ia(48,c|0,Ka|0)|0;Ha=x;x=0;if(Ha&1){Ha=321;break h}if(c|0){Ha=316;break h}if(!(b[X>>0]|0)){x=0;ua(73,f[a>>2]|0,e|0);Ha=x;x=0;if(Ha&1){Ha=321;break h}else break}else{x=0;ua(72,f[h>>2]|0,e|0);Ha=x;x=0;if(Ha&1){Ha=321;break h}else break}}while(0);g=g+1|0}do if((Ha|0)==308){i:do if(b[X>>0]|0){x=0;ta(433,f[h>>2]|0);V=x;x=0;if(V&1)break e;V=f[a>>2]|0;U=a+76|0;f[Ka>>2]=f[U>>2];f[Ka+4>>2]=f[U+4>>2];f[Ka+8>>2]=f[U+8>>2];f[Ka+12>>2]=f[U+12>>2];f[Ka+16>>2]=f[U+16>>2];m3(Na,V,Ka);x=0;ta(434,Na|0);V=x;x=0;do if(!(V&1)){c=Bbb(a+40|0)|0;e=c+4|0;c=f[c>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(74,Na|0,f[c+20>>2]|0);V=x;x=0;if(V&1){Ha=343;break}d=f[c+4>>2]|0;if(!d)while(1){d=f[c+8>>2]|0;if((f[d>>2]|0)==(c|0))break;else c=d}else while(1){c=f[d>>2]|0;if(!c)break;else d=c}c=d}if((Ha|0)==343){d=Ia()|0;break}c=f[W>>2]|0;d=f[Qa>>2]|0;while(1){if((d|0)==(c|0)){Ha=345;break}x=0;ua(74,Na|0,f[d>>2]|0);Ha=x;x=0;if(Ha&1){Ha=348;break}d=d+4|0}if((Ha|0)==345){Tca(Na);break i}else if((Ha|0)==348){d=Ia()|0;break}}else d=Ia()|0;while(0);Tca(Na);break d}while(0);J1((f[a>>2]|0)+132|0,(f[$>>2]|0)+4|0);f[Ma>>2]=0;k=Ma+4|0;f[k>>2]=0;g=Ma+8|0;f[g>>2]=0;e=f[a>>2]|0;h=f[e+16>>2]|0;i=a+212|0;j=a+216|0;e=f[e+12>>2]|0;j:while(1){if((e|0)==(h|0)){Ha=352;break}d=f[e>>2]|0;if(!(f[d+12>>2]|0)){c=f[d>>2]|0;f[oa>>2]=c;Ha=(eV(i,c)|0)==(j|0);d=f[e>>2]|0;do if(Ha){if(!(_1a(f[d+4>>2]|0,f[33020]|0)|0))break;d=f[k>>2]|0;if((d|0)==(f[g>>2]|0)){x=0;ua(77,Ma|0,oa|0);Ha=x;x=0;if(Ha&1){Ha=366;break j}else break}else{f[d>>2]=c;f[k>>2]=(f[k>>2]|0)+4;break}}else{f[Y>>2]=f[d+4>>2];f[Z>>2]=f[d+8>>2];x=0;f[Na>>2]=f[Y>>2];f[Ka>>2]=f[Z>>2];ua(75,Na|0,Ka|0);Ha=x;x=0;if(Ha&1){Ha=356;break j}x=0;d=ia(54,i|0,oa|0)|0;Ha=x;x=0;if(Ha&1){Ha=356;break j}x=0;ua(76,_|0,f[d>>2]|0);Ha=x;x=0;if(Ha&1){Ha=356;break j}x=0;d=ia(55,_|0,f[a>>2]|0)|0;Ha=x;x=0;if(Ha&1){Ha=361;break j}f[(f[e>>2]|0)+16>>2]=f[d>>2];HTa(_)}while(0)}e=e+4|0}do if((Ha|0)==352){c=f[k>>2]|0;d=f[Ma>>2]|0;while(1){if((d|0)==(c|0))break;_=f[a>>2]|0;E1a(aa,f[d>>2]|0);x=0;f[Ka>>2]=f[aa>>2];ua(78,_|0,Ka|0);_=x;x=0;if(_&1){Ha=374;break}d=d+4|0}if((Ha|0)==374){d=Ia()|0;break}aa=f[a>>2]|0;_=a+76|0;f[Ka>>2]=f[_>>2];f[Ka+4>>2]=f[_+4>>2];f[Ka+8>>2]=f[_+8>>2];f[Ka+12>>2]=f[_+12>>2];f[Ka+16>>2]=f[_+16>>2];m3(Na,aa,Ka);z0a(Na,f[a+92>>2]|0);if(b[a+32>>0]|0){a0a(Na);t_a(Na,0)}x=0;ua(79,Na|0,a|0);aa=x;x=0;k:do if(aa&1)Ha=376;else{do if(b[a+96>>0]|0){f[ba>>2]=0;f[ba+4>>2]=0;f[ba+8>>2]=0;aa=h7a(68244)|0;x=0;va(87,ba|0,68244,aa|0);aa=x;x=0;if(aa&1){Ha=376;break k}x=0;ua(80,Na|0,ba|0);aa=x;x=0;if(aa&1){d=Ia()|0;HTa(ba);break k}else{HTa(ba);break}}while(0);do if(!(b[X>>0]|0)){if(!(b[(f[$>>2]|0)+1>>0]|0))break;x=0;ta(435,Na|0);ha=x;x=0;if(ha&1){Ha=376;break k}}else{f[ca>>2]=0;f[ca+4>>2]=0;f[ca+8>>2]=0;ba=h7a(71029)|0;x=0;va(87,ca|0,71029,ba|0);ba=x;x=0;if(ba&1){Ha=376;break k}x=0;ua(80,Na|0,ca|0);ba=x;x=0;if(ba&1){d=Ia()|0;HTa(ca);break k}HTa(ca);f[da>>2]=0;f[da+4>>2]=0;f[da+8>>2]=0;ca=h7a(69603)|0;x=0;va(87,da|0,69603,ca|0);ca=x;x=0;if(ca&1){Ha=376;break k}x=0;ua(80,Na|0,da|0);ca=x;x=0;if(ca&1){d=Ia()|0;HTa(da);break k}HTa(da);f[ea>>2]=0;f[ea+4>>2]=0;f[ea+8>>2]=0;da=h7a(68682)|0;x=0;va(87,ea|0,68682,da|0);da=x;x=0;if(da&1){Ha=376;break k}x=0;ua(80,Na|0,ea|0);da=x;x=0;if(da&1){d=Ia()|0;HTa(ea);break k}HTa(ea);f[fa>>2]=0;f[fa+4>>2]=0;f[fa+8>>2]=0;ea=h7a(68806)|0;x=0;va(87,fa|0,68806,ea|0);ea=x;x=0;if(ea&1){Ha=376;break k}x=0;ua(80,Na|0,fa|0);ea=x;x=0;if(ea&1){d=Ia()|0;HTa(fa);break k}HTa(fa);f[ha>>2]=0;f[ha+4>>2]=0;f[ha+8>>2]=0;fa=h7a(68951)|0;x=0;va(87,ha|0,68951,fa|0);fa=x;x=0;if(fa&1){Ha=376;break k}x=0;ua(80,Na|0,ha|0);fa=x;x=0;if(fa&1){d=Ia()|0;HTa(ha);break k}else{HTa(ha);break}}while(0);do if(b[(f[$>>2]|0)+1>>0]|0){x=0;ta(436,Na|0);ha=x;x=0;if(ha&1){Ha=376;break k}f[la>>2]=0;f[la+4>>2]=0;f[la+8>>2]=0;ha=h7a(71029)|0;x=0;va(87,la|0,71029,ha|0);ha=x;x=0;if(ha&1){Ha=376;break k}x=0;ua(80,Na|0,la|0);ha=x;x=0;if(ha&1){d=Ia()|0;HTa(la);break k}else{HTa(la);break}}while(0);if(b[X>>0]|0?(x=0,ta(437,Na|0),la=x,x=0,la&1):0){Ha=376;break}x=0;ta(438,Na|0);la=x;x=0;if(la&1){Ha=376;break}if(b[(f[$>>2]|0)+1>>0]|0?(la=f[a>>2]|0,f[ma>>2]=f[32962],x=0,f[Ka>>2]=f[ma>>2],ua(78,la|0,Ka|0),ma=x,x=0,ma&1):0){Ha=376;break}e=a+204|0;l:do if(Iab(f[e>>2]|0)|0){d=a+208|0;if(!(Iab(f[d>>2]|0)|0))break;tab(oa);ma=f[a>>2]|0;E1a(na,f[d>>2]|0);x=0;f[Ka>>2]=f[na>>2];d=ia(56,ma|0,Ka|0)|0;na=x;x=0;m:do if(na&1)Ha=420;else{d=f[d+36>>2]|0;c=f[d>>2]|0;if(rab(c)|0){x=0;d=ga(217,d|0)|0;na=x;x=0;if(na&1){Ha=420;break}x=0;d=ga(218,d+12|0)|0;na=x;x=0;if(na&1){Ha=420;break}c=f[d>>2]|0;d=c;c=f[c>>2]|0}if(w6a(c)|0){x=0;d=ga(219,d|0)|0;na=x;x=0;if(na&1){Ha=420;break}d=f[d+8>>2]|0}x=0;d=ga(220,d|0)|0;na=x;x=0;if(na&1){d=Ia()|0;break}m=f[d+8>>2]|0;f[oa>>2]=m;n=f[a>>2]|0;E1a(qa,f[e>>2]|0);x=0;f[Ka>>2]=f[qa>>2];n=ia(56,n|0,Ka|0)|0;qa=x;x=0;do if(!(qa&1)){if(Iab(f[n+32>>2]|0)|0){x=0;wa(71,52071,51387,1502,51404);x=0;break}b9(n);x=0;ua(65,ra|0,52088);qa=x;x=0;do if(!(qa&1)){x=0;f[Ka>>2]=f[ra>>2];e=ja(42,n|0,Ka|0,1)|0;ra=x;x=0;if(ra&1)break;x=0;ua(65,ya|0,52091);ra=x;x=0;do if(!(ra&1)){x=0;f[Ka>>2]=f[ya>>2];d=ja(42,n|0,Ka|0,1)|0;ya=x;x=0;if(ya&1)break;x=0;ua(65,Aa|0,52094);ya=x;x=0;do if(!(ya&1)){x=0;f[Ka>>2]=f[Aa>>2];g=ja(42,n|0,Ka|0,1)|0;Aa=x;x=0;if(Aa&1)break;x=0;ua(65,Ba|0,52097);Aa=x;x=0;do if(!(Aa&1)){x=0;f[Ka>>2]=f[Ba>>2];c=ja(42,n|0,Ka|0,1)|0;Ba=x;x=0;if(Ba&1)break;x=0;ua(65,Da|0,87075);Ba=x;x=0;do if(!(Ba&1)){x=0;f[Ka>>2]=f[Da>>2];h=ja(42,n|0,Ka|0,1)|0;Da=x;x=0;if(Da&1)break;x=0;ua(65,Ea|0,52100);Da=x;x=0;do if(!(Da&1)){x=0;f[Ka>>2]=f[Ea>>2];l=ja(43,n|0,Ka|0,2)|0;Ea=x;x=0;if(Ea&1)break;x=0;ua(65,Fa|0,52104);Ea=x;x=0;do if(!(Ea&1)){x=0;f[Ka>>2]=f[Fa>>2];i=ja(43,n|0,Ka|0,2)|0;Fa=x;x=0;if(Fa&1)break;x=0;j=ga(221,f[a+4>>2]|0)|0;a=x;x=0;do if(!(a&1)){k=j+12|0;x=0;d=ja(44,Ga|0,e|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;d=ja(45,Ga|0,l|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;x=0;d=ja(44,Ga|0,g|0,c|0)|0;a=x;x=0;if(a&1)break;x=0;d=ja(45,Ga|0,i|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;x=0;g=ja(46,f[Ga>>2]|0,h|0,1)|0;a=x;x=0;if(a&1)break;x=0;e=ja(46,f[Ga>>2]|0,h|0,1)|0;a=x;x=0;if(a&1)break;x=0;d=ja(46,f[Ga>>2]|0,l|0,2)|0;a=x;x=0;if(a&1)break;x=0;c=ja(46,f[Ga>>2]|0,i|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ka(7,f[Ga>>2]|0,31,d|0,c|0)|0;a=x;x=0;if(a&1)break;x=0;d=pa(7,f[Ga>>2]|0,8,0,8,e|0,d|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ka(8,Ga|0,g|0,d|0,0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;x=0;c=ja(46,f[Ga>>2]|0,l|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ja(46,f[Ga>>2]|0,i|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ka(7,f[Ga>>2]|0,29,c|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;d=ja(45,Ga|0,l|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;f[Ja>>2]=m;x=0;d=ia(57,Ga|0,l|0)|0;a=x;x=0;if(a&1)break;x=0;f[Ka>>2]=f[Ja>>2];d=ja(47,Ga|0,Ka|0,d|0)|0;Ka=x;x=0;if(Ka&1)break;x=0;ua(81,k|0,d|0);Ka=x;x=0;if(Ka&1)break;x=0;d=ia(58,Ga|0,l|0)|0;Ka=x;x=0;if(Ka&1)break;x=0;ua(81,k|0,d|0);Ka=x;x=0;if(Ka&1)break;x=0;ta(439,j|0);Ka=x;x=0;if(Ka&1)break;f[n+36>>2]=j;break l}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0}while(0);if((Ha|0)==420)d=Ia()|0;break k}while(0);Tca(Na);uSa(Ma);f[Oa>>2]=0;f[Pa>>2]=0;uSa(Qa);u=La;return}while(0);if((Ha|0)==376)d=Ia()|0;Tca(Na)}else if((Ha|0)==356){d=Ia()|0;Ha=369}else if((Ha|0)==361){d=Ia()|0;HTa(_);Ha=369}else if((Ha|0)==366){d=Ia()|0;Ha=369}while(0);uSa(Ma);break d}else if((Ha|0)==309){d=Ia()|0;break d}else if((Ha|0)==316){x=0;sa(3);Na=x;x=0;if(Na&1){d=Ia()|0;break}x=0;c=ia(52,T|0,52050)|0;Na=x;x=0;do if(!(Na&1)){f[V>>2]=f[e>>2];x=0;f[Ka>>2]=f[V>>2];ia(53,c|0,Ka|0)|0;Na=x;x=0;if(Na&1)break;gCa()}while(0);Ia()|0;gCa()}else if((Ha|0)==320)d=Ia()|0;else if((Ha|0)==321)d=Ia()|0;while(0);break d}case 67:{d=Ia()|0;break d}case 75:{d=Ia()|0;break d}case 76:{d=Ia()|0;break d}case 85:{x=0;wa(71,51565,51387,989,51404);x=0;Ha=89;break}case 86:{d=Ia()|0;break d}case 87:{d=Ia()|0;break}case 88:{d=Ia()|0;Ha=90;break}case 101:{x=0;wa(71,51589,51387,993,51404);x=0;Ha=89;break}case 104:{d=Ia()|0;break}case 109:{x=0;wa(71,51658,51387,998,51404);x=0;Ha=89;break}case 114:{x=0;wa(71,51675,51387,1002,51404);x=0;d=Ia()|0;Ha=116;break}case 115:{d=Ia()|0;Ha=116;break}case 132:{x=0;wa(71,51700,51387,1009,51404);x=0;Ha=89;break}case 145:{d=Ia()|0;break}case 146:{d=Ia()|0;break}case 167:{x=0;wa(71,51808,51387,1041,51404);x=0;Ha=89;break}case 174:{d=Ia()|0;Ha=175;break}case 176:{d=Ia()|0;break}case 187:{d=Ia()|0;HTa(F);break}case 189:{x=0;wa(71,51845,51387,1068,51404);x=0;d=Ia()|0;Ha=175;break}case 192:{d=Ia()|0;break}case 203:{d=Ia()|0;HTa(G);break}case 205:{x=0;wa(71,51895,51387,1090,51404);x=0;d=Ia()|0;break}case 208:{d=Ia()|0;break}case 218:{d=Ia()|0;break}case 225:{d=Ia()|0;break}case 226:{d=Ia()|0;break}case 227:{d=Ia()|0;break}case 234:{d=Ia()|0;break}case 235:{d=Ia()|0;break}case 240:{d=Ia()|0;HTa(I);break}case 251:{d=Ia()|0;break d}case 252:{d=Ia()|0;break d}case 253:{d=Ia()|0;Ha=304;break}case 265:{x=0;wa(71,51974,51387,1125,51404);x=0;d=Ia()|0;Ha=270;break}case 266:{d=Ia()|0;Ha=304;break}case 267:{d=Ia()|0;Ha=268;break}case 269:{d=Ia()|0;Ha=270;break}case 271:{d=Ia()|0;Ha=304;break}case 278:{d=Ia()|0;Ha=304;break}case 283:{d=Ia()|0;Ha=304;break}case 284:{d=Ia()|0;Ha=304;break}case 287:{x=0;wa(71,52005,51387,1145,51404);x=0;d=Ia()|0;Ha=268;break}case 289:{x=0;wa(71,52025,51387,1146,51404);x=0;d=Ia()|0;Ha=304;break}case 299:{d=Ia()|0;Ha=304;break}case 300:{d=Ia()|0;Ha=304;break}case 301:{d=Ia()|0;Ha=304;break}case 302:{d=Ia()|0;Ha=304;break}}if((Ha|0)==89){d=Ia()|0;Ha=90}else if((Ha|0)!=116)if((Ha|0)!=175)if((Ha|0)==268)Ha=304;else if((Ha|0)==270)Ha=304;if((Ha|0)!=90)if((Ha|0)==304){WCa(Na);break d}break d}while(0);d=Ia()|0}while(0);break b}while(0);d=Ia()|0}else Ha=44}else Ha=44;while(0);if((Ha|0)==44)d=Ia()|0;f[Oa>>2]=0}while(0)}f[Pa>>2]=0}}uSa(Qa);Ua(d|0)}while(0);Ca(51439,51387,743,51404)}function zc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;G=u;u=u+160|0;n=G+144|0;m=G+140|0;D=G+136|0;E=G+132|0;H=G+120|0;I=G+108|0;F=G+96|0;J=G+76|0;K=G+64|0;o=G+40|0;p=G+28|0;q=G+16|0;r=G+104|0;s=G+88|0;t=G+60|0;v=G+36|0;w=G+32|0;y=G+24|0;z=G+12|0;A=G+8|0;B=G+4|0;C=G;f[D>>2]=a;f[E>>2]=c;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;yUa(I);v0a(F);f[J>>2]=0;i=J+4|0;f[i>>2]=0;j=J+8|0;f[j>>2]=0;f[K>>2]=0;k=K+4|0;f[k>>2]=0;l=K+8|0;f[l>>2]=0;f[o>>2]=H;f[o+4>>2]=I;f[o+8>>2]=J;f[o+12>>2]=F;f[o+16>>2]=K;f[p>>2]=I;f[q>>2]=H;f[q+4>>2]=I;x=0;ua(640,J|0,D|0);h=x;x=0;do if(h&1)L=10;else{a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){x=0;ua(640,K|0,E|0);h=x;x=0;if(h&1){L=10;break}h=E}else{f[a>>2]=f[E>>2];f[k>>2]=(f[k>>2]|0)+4;h=E}g=d+16|0;a:while(1){a=f[i>>2]|0;c=(a|0)==(f[J>>2]|0);d=f[k>>2]|0;e=(d|0)==(f[K>>2]|0);if(c|e){L=486;break}c=a+-4|0;a=f[c>>2]|0;f[D>>2]=a;f[i>>2]=c;c=d+-4|0;e=f[c>>2]|0;f[h>>2]=e;f[k>>2]=c;c=a;d=(a|0)!=0;a=e;if((e|0)==0^(d^1)){a=0;break}b:do if(d){if((F|0)==(c|0)){x=0;ta(464,q|0);e=x;x=0;if(e&1){L=9;break a}else break}x=0;a=ja(63,f[g>>2]|0,c|0,a|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a){a=f[D>>2]|0;c=f[a>>2]|0;if((c|0)!=(f[f[E>>2]>>2]|0)){a=0;break a}do switch(c|0){case 23:case 22:break b;case 1:{x=0;a=ga(217,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[r>>2]=f[a+8>>2];x=0;a=ga(217,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[s>>2]=f[a+8>>2];x=0;f[m>>2]=f[r>>2];f[n>>2]=f[s>>2];a=ja(64,o|0,m|0,n|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a){a=0;break a}x=0;a=ga(217,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(217,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((Bbb(a)|0)!=(Bbb(f[c+16>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(217,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=28;break a}if(d>>>0>=(Bbb(f[a+16>>2]|0)|0)>>>0)break b;x=0;a=ga(217,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=28;break a}x=0;a=ia(75,a+12|0,d|0)|0;e=x;x=0;if(e&1){L=28;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=28;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(217,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=28;break a}x=0;a=ia(75,a+12|0,d|0)|0;e=x;x=0;if(e&1){L=28;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=28;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 2:{x=0;a=ga(260,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(260,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(260,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(260,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(260,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(260,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 3:{x=0;a=ga(261,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[t>>2]=f[a+8>>2];x=0;a=ga(261,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[v>>2]=f[a+8>>2];x=0;f[m>>2]=f[t>>2];f[n>>2]=f[v>>2];a=ja(64,o|0,m|0,n|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a){a=0;break a}x=0;a=ga(261,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(261,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 4:{x=0;a=ga(262,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[w>>2]=f[a+8>>2];x=0;a=ga(262,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[y>>2]=f[a+8>>2];f[m>>2]=f[w>>2];f[n>>2]=f[y>>2];if(!(Q1(p,m,n)|0)){a=0;break a}x=0;a=ga(262,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(262,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(262,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(262,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 5:{x=0;a=ga(263,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+12>>2]|0)|0)){a=0;break a}c=0;while(1){x=0;a=ga(263,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=101;break a}e=c>>>0<(Bbb(f[a+12>>2]|0)|0)>>>0;a=f[D>>2]|0;if(!e)break;x=0;a=ga(263,a|0)|0;e=x;x=0;if(e&1){L=101;break a}x=0;a=ia(100,a+8|0,c|0)|0;e=x;x=0;if(e&1){L=101;break a}f[z>>2]=f[a>>2];x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=101;break a}x=0;a=ia(100,a+8|0,c|0)|0;e=x;x=0;if(e&1){L=101;break a}f[A>>2]=f[a>>2];f[m>>2]=f[z>>2];f[n>>2]=f[A>>2];if(Q1(p,m,n)|0)c=c+1|0;else{a=0;break a}}x=0;a=ga(263,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[B>>2]=f[a+24>>2];x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[C>>2]=f[a+24>>2];f[m>>2]=f[B>>2];f[n>>2]=f[C>>2];if(!(Q1(p,m,n)|0)){a=0;break a}x=0;a=ga(263,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(263,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+32|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+32|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 6:{x=0;a=ga(264,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(264,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(_1a(f[a+24>>2]|0,f[c+24>>2]|0)|0){a=0;break a}x=0;a=ga(264,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(264,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+12>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(264,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=135;break a}if(d>>>0>=(Bbb(f[a+12>>2]|0)|0)>>>0)break b;x=0;a=ga(264,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=135;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=135;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=135;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(264,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=135;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=135;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=135;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 7:{x=0;a=ga(265,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(265,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(_1a(f[a+24>>2]|0,f[c+24>>2]|0)|0){a=0;break a}x=0;a=ga(265,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(265,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+12>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(265,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=156;break a}if(d>>>0>=(Bbb(f[a+12>>2]|0)|0)>>>0)break b;x=0;a=ga(265,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=156;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=156;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=156;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(265,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=156;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=156;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=156;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 8:{x=0;a=ga(266,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(_1a(f[a+24>>2]|0,f[c+24>>2]|0)|0){a=0;break a}x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+12>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=185;break a}if(d>>>0>=(Bbb(f[a+12>>2]|0)|0)>>>0)break b;x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=185;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=185;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=185;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=185;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=185;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=185;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 9:{x=0;a=ga(267,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(267,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)==(f[c+8>>2]|0))break b;else{a=0;break a}}case 10:{x=0;a=ga(257,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(257,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(257,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+4>>2]|0;x=0;c=ga(257,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+4>>2]|0)){a=0;break a}x=0;a=ga(257,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(257,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 11:{x=0;a=ga(220,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(220,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(_1a(f[a+8>>2]|0,f[c+8>>2]|0)|0){a=0;break a}else break b}case 12:{x=0;a=ga(268,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(268,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(_1a(f[a+8>>2]|0,f[c+8>>2]|0)|0){a=0;break a}x=0;a=ga(268,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(268,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 13:{x=0;a=ga(269,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+8>>0]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+8>>0]|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;a=ga(270,a|0)|0;e=x;x=0;if(e&1){L=9;break a}do if(a){x=0;a=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;a=ga(270,a|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a)break;x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+9>>0]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+9>>0]|0)){a=0;break a}}while(0);x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+12>>2]|0)|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+16>>2]|0)|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+20>>0]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+20>>0]|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 14:{x=0;a=ga(271,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+8>>0]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+8>>0]|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+12>>2]|0)|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+16>>2]|0)|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+32>>2]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+32>>2]|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+20>>0]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+20>>0]|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 25:{x=0;a=ga(272,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+8>>0]|0;x=0;c=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+8>>0]|0)){a=0;break a}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+12>>2]|0)|0)){a=0;break a}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 24:{x=0;a=ga(273,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+12>>0]|0;x=0;c=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+12>>0]|0)){a=0;break a}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+16>>2]|0)|0)){a=0;break a}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 26:{x=0;a=ga(274,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+24>>2]|0;x=0;c=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+24>>2]|0)){a=0;break a}x=0;a=ga(274,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(274,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(274,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 27:{x=0;a=ga(275,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(275,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(275,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(275,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 15:{x=0;a=ga(241,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(241,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;a=ia(114,a+8|0,c+8|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a)break b;else{a=0;break a}}case 16:{x=0;a=ga(276,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(276,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(276,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(276,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 17:{x=0;a=ga(277,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(277,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(277,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(277,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(277,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(277,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 18:{x=0;a=ga(278,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(278,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(278,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(278,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(278,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(278,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 19:{x=0;a=ga(279,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(279,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 20:{x=0;a=ga(219,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(219,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 21:{x=0;a=ga(280,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(_1a(f[a+12>>2]|0,f[c+12>>2]|0)|0){a=0;break a}x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+20>>2]|0;x=0;c=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Bbb(a)|0;if((e|0)!=(Bbb(f[c+20>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=473;break a}if(d>>>0>=(Bbb(f[a+20>>2]|0)|0)>>>0)break b;x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=473;break a}x=0;a=ia(75,a+16|0,d|0)|0;e=x;x=0;if(e&1){L=473;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=473;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=473;break a}x=0;a=ia(75,a+16|0,d|0)|0;e=x;x=0;if(e&1){L=473;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=473;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}default:{L=485;break a}}while(0)}}while(0)}if((L|0)==9){a=Ia()|0;break}else if((L|0)==28){a=Ia()|0;break}else if((L|0)==101){a=Ia()|0;break}else if((L|0)==135){a=Ia()|0;break}else if((L|0)==156){a=Ia()|0;break}else if((L|0)==185){a=Ia()|0;break}else if((L|0)==473){a=Ia()|0;break}else if((L|0)==485){x=0;sa(5);x=0;L=10;break}else if((L|0)==486)a=c&e;uSa(K);uSa(J);rya(I);uSa(H);u=G;return a|0}while(0);if((L|0)==10)a=Ia()|0;uSa(K);uSa(J);rya(I);uSa(H);Ua(a|0);return 0}function Ac(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=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;Q=u;u=u+432|0;S=Q;K=Q+400|0;R=Q+412|0;L=Q+388|0;M=Q+376|0;N=Q+364|0;O=Q+352|0;P=Q+340|0;z=Q+328|0;A=Q+316|0;B=Q+304|0;C=Q+292|0;D=Q+280|0;E=Q+268|0;F=Q+256|0;G=Q+244|0;H=Q+232|0;I=Q+220|0;J=Q+208|0;h=Q+196|0;i=Q+184|0;j=Q+172|0;k=Q+160|0;l=Q+148|0;m=Q+136|0;n=Q+124|0;o=Q+112|0;p=Q+100|0;q=Q+88|0;r=Q+76|0;s=Q+64|0;t=Q+52|0;v=Q+40|0;w=Q+28|0;y=Q+16|0;d=jF(Or(c,0)|0)|0;e=zWa(d,46)|0;a:do if(e){d=Co(d,0,1)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;f[S+12>>2]=0;u1a(S,e+1|0,15)|0;b:do switch(b[S>>0]|0){case 97:{P=(b[S+1>>0]|0)+-98<<24>>24;c:do switch(((P&255)>>>1|P<<7&255)<<24>>24){case 0:{d=si(a,c,(d|0)==3?8:9,d)|0;g=295;break b}case 1:{switch(d|0){case 1:{d=0;break}case 2:{d=25;break}default:d=(d|0)==3?50:63}d=c_(a,c,d)|0;g=295;break b}case 6:{d=c_(a,c,(d|0)==1?7:32)|0;g=295;break b}case 9:{if(!(D0(S,92423,7)|0))switch(b[S+7>>0]|0){case 108:{d=bE(a,c,d,1)|0;g=295;break b}case 115:{d=TD(a,c,d,1)|0;g=295;break b}case 114:{d=vv(a,c,d)|0;g=295;break b}default:break c}break}default:{}}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[K>>2]=f[R>>2];f[K+4>>2]=f[R+4>>2];f[K+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,K|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(K);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 99:{d:do switch(b[S+1>>0]|0){case 101:{d=si(a,c,(d|0)==3?10:11,d)|0;g=295;break b}case 108:{d=si(a,c,(d|0)!=1&1,d)|0;g=295;break b}case 111:{switch(b[S+2>>0]|0){case 112:{d=c_(a,c,(d|0)==3?54:67)|0;g=295;break b}case 110:break;default:break d}switch(b[S+3>>0]|0){case 118:break;case 115:{d=BC(a,c,d)|0;g=295;break b}default:break d}switch(b[S+8>>0]|0){case 115:{g=(d|0)==3;d=si(a,c,(b[S+11>>0]|0)==51?(g?35:36):g?39:40,d)|0;g=295;break b}case 117:{g=(d|0)==3;d=si(a,c,(b[S+11>>0]|0)==51?(g?37:38):g?41:42,d)|0;g=295;break b}default:break d}}case 116:{d=si(a,c,(d|0)==1?2:3,d)|0;g=295;break b}default:{}}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[L>>2]=f[R>>2];f[L+4>>2]=f[R+4>>2];f[L+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,L|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(L);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 100:{switch(b[S+1>>0]|0){case 105:{g=49;break}case 101:{d=si(a,c,44,d)|0;g=295;break b}default:{}}e:do if((g|0)==49)switch(b[S+3>>0]|0){case 95:{d=(d|0)==1;d=c_(a,c,(b[S+4>>0]|0)==117?(d?4:29):d?3:28)|0;g=295;break b}case 0:{d=c_(a,c,(d|0)==3?53:66)|0;g=295;break b}default:break e}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[M>>2]=f[R>>2];f[M+4>>2]=f[R+4>>2];f[M+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,M|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(M);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 101:{switch(b[S+1>>0]|0){case 113:{g=65;break}case 120:switch(b[S+6>>0]|0){case 56:{d=si(a,c,(d|0)==1?47:49,d)|0;g=295;break b}case 49:{d=si(a,c,(d|0)==1?48:50,d)|0;g=295;break b}case 51:{d=si(a,c,51,d)|0;g=295;break b}default:{d=si(a,c,(b[S+7>>0]|0)==117?23:22,d)|0;g=295;break b}}default:{}}f:do if((g|0)==65){switch(b[S+2>>0]|0){case 0:break;case 122:{d=si(a,c,(d|0)==1?20:21,d)|0;g=295;break b}default:break f}switch(d|0){case 1:{d=15;break}case 2:{d=40;break}default:d=(d|0)==3?57:70}d=c_(a,c,d)|0;g=295;break b}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[N>>2]=f[R>>2];f[N+4>>2]=f[R+4>>2];f[N+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,N|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(N);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 102:{if((b[S+1>>0]|0)==108){d=si(a,c,(d|0)==3?12:13,d)|0;g=295;break b}g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[O>>2]=f[R>>2];f[O+4>>2]=f[R+4>>2];f[O+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,O|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(O);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 103:{g:do switch(b[S+1>>0]|0){case 116:switch(b[S+2>>0]|0){case 95:{d=(d|0)==1;d=c_(a,c,(b[S+3>>0]|0)==117?(d?22:47):d?21:46)|0;g=295;break b}case 0:{d=c_(a,c,(d|0)==3?61:74)|0;g=295;break b}default:break g}case 101:switch(b[S+2>>0]|0){case 95:{d=(d|0)==1;d=c_(a,c,(b[S+3>>0]|0)==117?(d?24:49):d?23:48)|0;g=295;break b}case 0:{d=c_(a,c,(d|0)==3?62:75)|0;g=295;break b}default:break g}default:{}}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[P>>2]=f[R>>2];f[P+4>>2]=f[R+4>>2];f[P+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,P|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(P);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 108:{h:do switch(b[S+1>>0]|0){case 116:switch(b[S+2>>0]|0){case 95:{d=(d|0)==1;d=c_(a,c,(b[S+3>>0]|0)==117?(d?18:43):d?17:42)|0;g=295;break b}case 0:{d=c_(a,c,(d|0)==3?59:72)|0;g=295;break b}default:break h}case 101:switch(b[S+2>>0]|0){case 95:{d=(d|0)==1;d=c_(a,c,(b[S+3>>0]|0)==117?(d?20:45):d?19:44)|0;g=295;break b}case 0:{d=c_(a,c,(d|0)==3?60:73)|0;g=295;break b}default:break h}case 111:{d=bE(a,c,d,0)|0;g=295;break b}default:{}}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[z>>2]=f[R>>2];f[z+4>>2]=f[R+4>>2];f[z+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,z|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(z);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 109:switch(b[S+1>>0]|0){case 105:{d=c_(a,c,(d|0)==3?55:68)|0;g=295;break b}case 97:{d=c_(a,c,(d|0)==3?56:69)|0;g=295;break b}case 117:{switch(d|0){case 1:{d=2;break}case 2:{d=27;break}default:d=(d|0)==3?52:65}d=c_(a,c,d)|0;g=295;break b}default:{g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[A>>2]=f[R>>2];f[A+4>>2]=f[R+4>>2];f[A+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,A|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(A);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break b}}case 110:{i:do if((b[S+1>>0]|0)==101)switch(b[S+2>>0]|0){case 0:{switch(d|0){case 1:{d=16;break}case 2:{d=41;break}default:d=(d|0)==3?58:71}d=c_(a,c,d)|0;g=295;break b}case 97:{d=si(a,c,(d|0)==3?16:17,d)|0;g=295;break b}case 103:{d=si(a,c,(d|0)==3?6:7,d)|0;g=295;break b}default:break i}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[B>>2]=f[R>>2];f[B+4>>2]=f[R+4>>2];f[B+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,B|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(B);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 111:{if((b[S+1>>0]|0)==114){d=c_(a,c,(d|0)==1?8:33)|0;g=295;break b}g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[C>>2]=f[R>>2];f[C+4>>2]=f[R+4>>2];f[C+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,C|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(C);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 112:switch(b[S+1>>0]|0){case 114:{d=si(a,c,43,d)|0;g=295;break b}case 111:{d=si(a,c,(d|0)==1?4:5,d)|0;g=295;break b}default:{g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[D>>2]=f[R>>2];f[D+4>>2]=f[R+4>>2];f[D+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,D|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(D);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break b}}case 114:{j:do switch(b[S+1>>0]|0){case 101:switch(b[S+2>>0]|0){case 109:{d=(d|0)==1;d=c_(a,c,(b[S+4>>0]|0)==117?(d?6:31):d?5:30)|0;g=295;break b}case 105:{g=l6a(d)|0;d=si(a,c,g?((d|0)==3?45:46):(d|0)==1?33:34,d)|0;g=295;break b}default:break j}case 111:{if((b[S+2>>0]|0)==116){d=(d|0)==1;d=c_(a,c,(b[S+3>>0]|0)==108?(d?13:38):d?14:39)|0;g=295;break b}break}default:{}}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[E>>2]=f[R>>2];f[E+4>>2]=f[R+4>>2];f[E+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,E|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(E);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 115:switch(b[S+1>>0]|0){case 104:if((b[S+2>>0]|0)==108){d=c_(a,c,(d|0)==1?10:35)|0;g=295;break b}else{d=(d|0)==1;d=c_(a,c,(b[S+4>>0]|0)==117?(d?11:36):d?12:37)|0;g=295;break b}case 117:{switch(d|0){case 1:{d=1;break}case 2:{d=26;break}default:d=(d|0)==3?51:64}d=c_(a,c,d)|0;g=295;break b}case 113:{d=si(a,c,(d|0)==3?18:19,d)|0;g=295;break b}case 116:{d=TD(a,c,d,0)|0;g=295;break b}default:{g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[F>>2]=f[R>>2];f[F+4>>2]=f[R+4>>2];f[F+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,F|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(F);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break b}}case 116:{k:do if((b[S+1>>0]|0)==114)switch(b[S+6>>0]|0){case 115:{g=(d|0)==1;d=si(a,c,(b[S+9>>0]|0)==51?(g?25:26):g?29:30,d)|0;g=295;break b}case 117:{g=(d|0)==1;d=si(a,c,(b[S+9>>0]|0)==51?(g?27:28):g?31:32,d)|0;g=295;break b}default:{if((b[S+2>>0]|0)!=117)break k;d=si(a,c,(d|0)==3?14:15,d)|0;g=295;break b}}while(0);g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[G>>2]=f[R>>2];f[G+4>>2]=f[R+4>>2];f[G+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,G|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(G);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 119:{if(!(D0(S,92441,4)|0)){d=MS(a,c,d)|0;g=295;break b}if((b[S+1>>0]|0)==114){d=si(a,c,24,d)|0;g=295;break b}g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[H>>2]=f[R>>2];f[H+4>>2]=f[R+4>>2];f[H+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,H|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(H);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}case 120:{if((b[S+1>>0]|0)==111){d=c_(a,c,(d|0)==1?9:34)|0;g=295;break b}g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[I>>2]=f[R>>2];f[I+4>>2]=f[R+4>>2];f[I+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,I|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(I);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296;break}default:{g=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;Q=h7a(92431)|0;x=0;va(87,R|0,92431,Q|0);Q=x;x=0;do if(!(Q&1)){x=0;ia(59,R|0,S|0)|0;S=x;x=0;if(S&1){d=Ia()|0;HTa(R);break}f[J>>2]=f[R>>2];f[J+4>>2]=f[R+4>>2];f[J+8>>2]=f[R+8>>2];d=0;while(1){if((d|0)==3)break;f[R+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,J|0);S=x;x=0;if(S&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(J);HTa(R);if(!e){g=296;break b}}else d=Ia()|0;while(0);La(g|0);g=296}}while(0);if((g|0)==295){g=523;break}else if((g|0)==296){g=524;break}}else do switch(b[d>>0]|0){case 98:switch(b[d+1>>0]|0){case 108:{d=bg(a,c)|0;g=523;break a}case 114:{if((b[d+2>>0]|0)==95?(b[d+3>>0]|0)==116:0){d=Dr(a,c)|0;g=523;break a}d=TE(a,c)|0;g=523;break a}default:{g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[h>>2]=f[S>>2];f[h+4>>2]=f[S+4>>2];f[h+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,h|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(h);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}}case 99:{switch(b[d+1>>0]|0){case 97:{g=316;break}case 117:{d=Lo(a,c,1)|0;g=523;break a}default:{}}if((g|0)==316){if($1a(d,f[33099]|0)|0){d=Iv(a,c)|0;g=523;break a}if($1a(d,f[33098]|0)|0){d=cG(a,c)|0;g=523;break a}if($1a(d,f[33097]|0)|0){d=Gk(a,c)|0;g=523;break a}}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[i>>2]=f[S>>2];f[i+4>>2]=f[S+4>>2];f[i+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,i|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(i);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 100:{if((b[d+1>>0]|0)==114){d=Zia(a,c)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[j>>2]=f[S>>2];f[j+4>>2]=f[S+4>>2];f[j+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,j|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(j);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 101:{if((b[d+1>>0]|0)==108){d=oV(a,c)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[k>>2]=f[S>>2];f[k+4>>2]=f[S+4>>2];f[k+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,k|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(k);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 103:{switch(b[d+1>>0]|0){case 101:{g=361;break}case 114:{d=Lo(a,c,2)|0;g=523;break a}default:{}}l:do if((g|0)==361)switch(b[d+4>>0]|0){case 108:{d=i9(a,c)|0;g=523;break a}case 103:{d=At(a,c)|0;g=523;break a}default:break l}while(0);g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[l>>2]=f[S>>2];f[l+4>>2]=f[S+4>>2];f[l+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,l|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(l);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 104:{if((b[d+1>>0]|0)==97){d=Lo(a,c,3)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[m>>2]=f[S>>2];f[m+4>>2]=f[S+4>>2];f[m+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,m|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(m);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 105:{if((b[d+1>>0]|0)==102){d=nr(a,c)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[n>>2]=f[S>>2];f[n+4>>2]=f[S+4>>2];f[n+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,n|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(n);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 108:{if((b[d+1>>0]|0)==111){d=Cx(a,c)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[o>>2]=f[S>>2];f[o+4>>2]=f[S+4>>2];f[o+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,o|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(o);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 110:{if((b[d+1>>0]|0)==111){d=xWa(f[a+4>>2]|0)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[p>>2]=f[S>>2];f[p+4>>2]=f[S+4>>2];f[p+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,p|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(p);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 112:{if((b[d+1>>0]|0)==97){d=Lo(a,c,0)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[q>>2]=f[S>>2];f[q+4>>2]=f[S+4>>2];f[q+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,q|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(q);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 115:{m:do if((b[d+1>>0]|0)==101){switch(b[d+2>>0]|0){case 116:break;case 108:{d=oW(a,c)|0;g=523;break a}default:break m}switch(b[d+4>>0]|0){case 108:{d=u$(a,c)|0;g=523;break a}case 103:{d=Et(a,c)|0;g=523;break a}default:break m}}while(0);g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[r>>2]=f[S>>2];f[r+4>>2]=f[S+4>>2];f[r+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,r|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(r);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 114:{if((b[d+1>>0]|0)==101){d=zea(a,c)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[s>>2]=f[S>>2];f[s+4>>2]=f[S+4>>2];f[s+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,s|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(s);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 116:{switch(b[d+1>>0]|0){case 104:{d=oV(a,c)|0;g=523;break a}case 101:{g=473;break}default:{}}if((g|0)==473?(b[d+2>>0]|0)==101:0){d=t$(a,c)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[t>>2]=f[S>>2];f[t+4>>2]=f[S+4>>2];f[t+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,t|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(t);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 117:{if((b[d+1>>0]|0)==110){d=ySa(f[a+4>>2]|0)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[v>>2]=f[S>>2];f[v+4>>2]=f[S+4>>2];f[v+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,v|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(v);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}case 119:{if(!(D0(d,92446,4)|0)){d=s$(a,c)|0;g=523;break a}g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[w>>2]=f[S>>2];f[w+4>>2]=f[S+4>>2];f[w+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,w|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(w);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}default:{g=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;R=h7a(92431)|0;x=0;va(87,S|0,92431,R|0);R=x;x=0;do if(!(R&1)){x=0;ia(59,S|0,d|0)|0;R=x;x=0;if(R&1){d=Ia()|0;HTa(S);break}f[y>>2]=f[S>>2];f[y+4>>2]=f[S+4>>2];f[y+8>>2]=f[S+8>>2];d=0;while(1){if((d|0)==3)break;f[S+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,y|0);R=x;x=0;if(R&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;HTa(y);HTa(S);if(!e){g=524;break a}}else d=Ia()|0;while(0);La(g|0);g=524;break a}}while(0);while(0);if((g|0)==523){u=Q;return d|0}else if((g|0)==524)Ua(d|0);return 0}function Bc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;v=u;u=u+208|0;w=v+176|0;s=v+128|0;t=v+104|0;r=v+64|0;k=v+164|0;p=v+48|0;q=v+36|0;i=v+152|0;j=v+140|0;l=v+88|0;m=v+24|0;n=v+12|0;o=v;g=c;e=g-a|0;a:do if((e|0)>1){if((e|0)>3?(b[a>>0]|0)==103:0){h=(b[a+1>>0]|0)==115;e=h?a+2|0:a}else{e=a;h=0}b:do switch(b[e>>0]|0){case 76:{a=cd(a,c,d)|0;break a}case 84:{a=Ej(a,c,d)|0;break a}case 102:{a=vi(a,c,d)|0;break a}case 97:switch(b[e+1>>0]|0){case 97:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123278,h7a(123278)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 100:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123296,h7a(123296)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 110:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123296,h7a(123296)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 78:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123339,h7a(123339)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 83:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123342,h7a(123342)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{a=ho(a,c,d)|0;break a}case 122:{a=go(a,c,d)|0;break a}default:break a}case 99:switch(b[e+1>>0]|0){case 99:{a=mj(a,c,d)|0;break a}case 108:{a=Ek(a,c,d)|0;break a}case 109:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123344,h7a(123344)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 111:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123346,h7a(123346)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 118:{a=Hh(a,c,d)|0;break a}default:break a}case 100:switch(b[e+1>>0]|0){case 97:{q=e+2|0;c=Bc(q,c,d)|0;if((c|0)==(q|0))break a;e=d+4|0;if((f[d>>2]|0)==(f[e>>2]|0))break a;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;c:do if(h)nW(t,123348,h7a(123348)|0);else{a=0;while(1){if((a|0)==3)break c;f[t+(a<<2)>>2]=0;a=a+1|0}}while(0);x=0;ia(215,t|0,123351)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3194,r|0,(f[e>>2]|0)+-24|0);d=x;x=0;do if(d&1)a=Ia()|0;else{d=b[r+11>>0]|0;q=d<<24>>24<0;x=0;ja(97,s|0,(q?f[r>>2]|0:r)|0,(q?f[r+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(r);break}f[w>>2]=f[s>>2];f[w+4>>2]=f[s+4>>2];f[w+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}a=f[e>>2]|0;g=a+-24|0;e=g+11|0;if((b[e>>0]|0)<0){T0a(f[g>>2]|0,0);f[a+-20>>2]=0;a=g}else{T0a(g,0);b[e>>0]=0;a=g}wv(g);f[a>>2]=f[w>>2];f[a+4>>2]=f[w+4>>2];f[a+8>>2]=f[w+8>>2];a=0;while(1){if((a|0)==3)break;f[w+(a<<2)>>2]=0;a=a+1|0}HTa(w);HTa(r);HTa(s);HTa(t);a=c;break a}while(0);HTa(s)}HTa(t);break b}case 99:{a=kj(a,c,d)|0;break a}case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123294,h7a(123294)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 108:{q=e+2|0;c=Bc(q,c,d)|0;if((c|0)==(q|0))break a;e=d+4|0;if((f[d>>2]|0)==(f[e>>2]|0))break a;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;d:do if(h)nW(t,123348,h7a(123348)|0);else{a=0;while(1){if((a|0)==3)break d;f[t+(a<<2)>>2]=0;a=a+1|0}}while(0);x=0;ia(215,t|0,123361)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3194,r|0,(f[e>>2]|0)+-24|0);d=x;x=0;do if(d&1)a=Ia()|0;else{d=b[r+11>>0]|0;q=d<<24>>24<0;x=0;ja(97,s|0,(q?f[r>>2]|0:r)|0,(q?f[r+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(r);break}f[w>>2]=f[s>>2];f[w+4>>2]=f[s+4>>2];f[w+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}a=f[e>>2]|0;g=a+-24|0;e=g+11|0;if((b[e>>0]|0)<0){T0a(f[g>>2]|0,0);f[a+-20>>2]=0;a=g}else{T0a(g,0);b[e>>0]=0;a=g}wv(g);f[a>>2]=f[w>>2];f[a+4>>2]=f[w+4>>2];f[a+8>>2]=f[w+8>>2];a=0;while(1){if((a|0)==3)break;f[w+(a<<2)>>2]=0;a=a+1|0}HTa(w);HTa(r);HTa(s);HTa(t);a=c;break a}while(0);HTa(s)}HTa(t);break b}case 110:{a=gd(a,c,d)|0;break a}case 115:{a=Cs(a,c,d)|0;break a}case 116:{a=Ds(a,c,d)|0;break a}case 118:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123369,h7a(123369)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 86:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123371,h7a(123371)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 101:switch(b[e+1>>0]|0){case 111:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123374,h7a(123374)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 79:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123376,h7a(123376)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 113:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123379,h7a(123379)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 103:switch(b[e+1>>0]|0){case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123382,h7a(123382)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123312,h7a(123312)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 105:{if((b[e+1>>0]|0)!=120)break a;o=a+2|0;e=Bc(o,c,d)|0;if((e|0)==(o|0))break a;g=Bc(e,c,d)|0;c=d+4|0;if((g|0)==(e|0)){g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;JJa(g+(w*24|0)|0);e=w}f[c>>2]=g+-24;break a}e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(w,e+-24|0);e=f[c>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;JJa(e+(d*24|0)|0);a=d}f[c>>2]=e+-24;x=0;ua(3194,s|0,e+-48|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;va(185,q|0,123276,s|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;ia(215,q|0,123385)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[p>>2]=f[q>>2];f[p+4>>2]=f[q+4>>2];f[p+8>>2]=f[q+8>>2];a=0;while(1){if((a|0)==3)break;f[q+(a<<2)>>2]=0;a=a+1|0}d=b[w+11>>0]|0;o=d<<24>>24<0;x=0;ja(97,p|0,(o?f[w>>2]|0:w)|0,(o?f[w+4>>2]|0:d&255)|0)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[r>>2]=f[p>>2];f[r+4>>2]=f[p+4>>2];f[r+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,r|0,123323)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(r);break}f[k>>2]=f[r>>2];f[k+4>>2]=f[r+4>>2];f[k+8>>2]=f[r+8>>2];a=0;while(1){if((a|0)==3)break;f[r+(a<<2)>>2]=0;a=a+1|0}NY(t,k);tA((f[c>>2]|0)+-24|0,t);JJa(t);HTa(k);HTa(r);HTa(p);HTa(q);HTa(s);HTa(w);a=g;break a}while(0);HTa(p)}HTa(q)}HTa(s)}HTa(w);break}case 108:switch(b[e+1>>0]|0){case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123388,h7a(123388)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 115:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123391,h7a(123391)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 83:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123394,h7a(123394)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123310,h7a(123310)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 109:switch(b[e+1>>0]|0){case 105:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123398,h7a(123398)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 73:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123400,h7a(123400)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 108:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123294,h7a(123294)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 76:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123403,h7a(123403)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 109:{e=a+2|0;if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){g=a+3|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123406,h7a(123406)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}c=Bc(e,c,d)|0;if((c|0)==(e|0))break a;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break a;eY(t,e+-24|0);x=0;ja(101,t|0,0,123276)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,s|0,123409)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(s);break}f[i>>2]=f[s>>2];f[i+4>>2]=f[s+4>>2];f[i+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}NY(w,i);tA((f[g>>2]|0)+-24|0,w);JJa(w);HTa(i);HTa(s);HTa(t);a=c;break a}while(0);HTa(t);break b}default:break a}case 110:switch(b[e+1>>0]|0){case 119:case 97:{a=hd(a,c,d)|0;break a}case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123413,h7a(123413)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 103:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123398,h7a(123398)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123416,h7a(123416)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 120:{t=a+2|0;w=Io(t,c,d)|0;a=(w|0)==(t|0)?a:w;break a}default:break a}case 111:switch(b[e+1>>0]|0){case 110:{a=gd(a,c,d)|0;break a}case 111:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123418,h7a(123418)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 114:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123421,h7a(123421)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 82:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123423,h7a(123423)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 112:switch(b[e+1>>0]|0){case 109:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123426,h7a(123426)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 108:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123430,h7a(123430)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 76:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123432,h7a(123432)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 112:{e=a+2|0;if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){g=a+3|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123435,h7a(123435)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}c=Bc(e,c,d)|0;if((c|0)==(e|0))break a;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break a;eY(t,e+-24|0);x=0;ja(101,t|0,0,123276)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,s|0,123438)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(s);break}f[j>>2]=f[s>>2];f[j+4>>2]=f[s+4>>2];f[j+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}NY(w,j);tA((f[g>>2]|0)+-24|0,w);JJa(w);HTa(j);HTa(s);HTa(t);a=c;break a}while(0);HTa(t);break b}case 115:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123430,h7a(123430)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{a=kv(a,c,d)|0;break a}default:break a}case 113:{if((b[e+1>>0]|0)!=117)break a;k=a+2|0;e=Bc(k,c,d)|0;if((e|0)==(k|0))break a;g=Bc(e,c,d)|0;if((g|0)==(e|0)){g=d+4|0;c=f[g>>2]|0;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;JJa(c+(w*24|0)|0);e=w}f[g>>2]=c+-24;break a}c=Bc(g,c,d)|0;h=d+4|0;if((c|0)==(g|0)){c=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;JJa(c+(w*24|0)|0);e=w}g=c+-24|0;f[h>>2]=g;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;JJa(g+(w*24|0)|0);e=w}f[h>>2]=c+-48;break a}e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<3)break a;eY(w,e+-24|0);e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;JJa(e+(d*24|0)|0);a=d}f[h>>2]=e+-24;x=0;ua(3194,s|0,e+-48|0);d=x;x=0;if(d&1)a=Ia()|0;else{e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;JJa(e+(d*24|0)|0);a=d}f[h>>2]=e+-24;x=0;ua(3194,t|0,e+-48|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;va(185,o|0,123276,t|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;ia(215,o|0,123442)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}d=b[s+11>>0]|0;k=d<<24>>24<0;x=0;ja(97,n|0,(k?f[s>>2]|0:s)|0,(k?f[s+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,m|0,123448)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[q>>2]=f[m>>2];f[q+4>>2]=f[m+4>>2];f[q+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}d=b[w+11>>0]|0;k=d<<24>>24<0;x=0;ja(97,q|0,(k?f[w>>2]|0:w)|0,(k?f[w+4>>2]|0:d&255)|0)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[p>>2]=f[q>>2];f[p+4>>2]=f[q+4>>2];f[p+8>>2]=f[q+8>>2];a=0;while(1){if((a|0)==3)break;f[q+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,p|0,123274)|0;d=x;x=0;if(d&1){a=Ia()|0;HTa(p);break}f[l>>2]=f[p>>2];f[l+4>>2]=f[p+4>>2];f[l+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}NY(r,l);tA((f[h>>2]|0)+-24|0,r);JJa(r);HTa(l);HTa(p);HTa(q);HTa(m);HTa(n);HTa(o);HTa(t);HTa(s);HTa(w);a=c;break a}while(0);HTa(q)}HTa(m)}HTa(n)}HTa(o)}HTa(t)}HTa(s)}HTa(w);break}case 114:switch(b[e+1>>0]|0){case 99:{a=jj(a,c,d)|0;break a}case 109:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123454,h7a(123454)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 77:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123456,h7a(123456)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 115:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123459,h7a(123459)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}case 83:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;nW(w,123462,h7a(123462)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;HTa(w);break b}else{HTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 115:switch(b[e+1>>0]|0){case 99:{a=lj(a,c,d)|0;break a}case 112:{a=Kca(a,c,d)|0;break a}case 114:{a=gd(a,c,d)|0;break a}case 116:{a=hq(a,c,d)|0;break a}case 122:{a=fq(a,c,d)|0;break a}case 90:{if((g-e|0)<=2)break a;switch(b[e+2>>0]|0){case 84:{a=fi(a,c,d)|0;break a}case 102:{a=Kp(a,c,d)|0;break a}default:break a}}default:break a}case 116:switch(b[e+1>>0]|0){case 105:case 101:{a=oo(a,c,d)|0;break a}case 114:{a4(w,123466);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,w|0);t=x;x=0;if(t&1){a=Ia()|0;JJa(w);break b}}else{yY(g,w);f[e>>2]=(f[e>>2]|0)+24}JJa(w);a=a+2|0;break a}case 119:{a=Gv(a,c,d)|0;break a}default:break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{a=gd(a,c,d)|0;break a}default:break a}while(0);Ua(a|0)}while(0);u=v;return a|0}function Cc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;A=u;u=u+144|0;z=A+128|0;w=A+104|0;t=A+40|0;i=A+88|0;p=A+24|0;m=A+76|0;o=A+12|0;n=A;k=A+64|0;a:do if((a|0)!=(c|0)){switch(b[a>>0]|0){case 75:case 86:case 114:{f[z>>2]=0;e=QZ(a,c,z)|0;b:do if((e|0)!=(a|0)?(q=(b[e>>0]|0)==70,s=d+4|0,l=((f[s>>2]|0)-(f[d>>2]|0)|0)/24|0,r=Cc(e,c,d)|0,s=((f[s>>2]|0)-(f[d>>2]|0)|0)/24|0,(r|0)!=(e|0)):0){p=d+20|0;e=f[p>>2]|0;if(q){a=0;while(1){if((a|0)==-1)break;y=a+-1|0;ZX(e+(y<<4)|0);a=y}e=e+-16|0;f[p>>2]=e}a=f[d+12>>2]|0;f[w>>2]=a;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[p>>2]=(f[p>>2]|0)+16}else HA(d+16|0,w);o=f[z>>2]|0;m=(o&1|0)==0;n=(o&2|0)==0;o=(o&4|0)==0;while(1){if(l>>>0>=s>>>0){a=r;break b}if(q){g=f[d>>2]|0;k=g+(l*24|0)+12|0;h=b[k+11>>0]|0;a=h<<24>>24<0;if(a){i=f[g+(l*24|0)+16>>2]|0;e=f[k>>2]|0}else{i=h&255;e=k}j=i+-2|0;if((b[e+j>>0]|0)==38)a=i+-3|0;else{if(a){e=f[k>>2]|0;a=f[g+(l*24|0)+16>>2]|0}else{e=k;a=h&255}a=(b[e+a+-1>>0]|0)==38?j:i}if(!m){uoa(k,a,123221)|0;a=a+6|0}if(!n){uoa((f[d>>2]|0)+(l*24|0)+12|0,a,123228)|0;a=a+9|0}if(!o)uoa((f[d>>2]|0)+(l*24|0)+12|0,a,123238)|0}else{if(!m)Dsa((f[d>>2]|0)+(l*24|0)|0,123221)|0;if(!n)Dsa((f[d>>2]|0)+(l*24|0)|0,123228)|0;if(!o)Dsa((f[d>>2]|0)+(l*24|0)|0,123238)|0}a=f[p>>2]|0;e=(f[d>>2]|0)+(l*24|0)|0;g=a+-12|0;h=f[g>>2]|0;if((h|0)==(f[a+-8>>2]|0))Oz(a+-16|0,e);else{x6(h,e);f[g>>2]=(f[g>>2]|0)+24}l=l+1|0}}while(0);break a}default:{}}e=Rc(a,c,d)|0;if((e|0)==(a|0)){c:do switch(b[a>>0]|0){case 65:{g=$d(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];FR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=g;break a}case 67:{v=a+1|0;h=Cc(v,c,d)|0;if((h|0)==(v|0))break a;e=d+4|0;g=f[e>>2]|0;if((f[d>>2]|0)==(g|0))break a;Dsa(g+-24|0,123248)|0;a=(f[e>>2]|0)+-24|0;f[w>>2]=f[d+12>>2];FR(z,a,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=h;break a}case 70:{g=vh(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];FR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=g;break a}case 71:{v=a+1|0;h=Cc(v,c,d)|0;if((h|0)==(v|0))break a;e=d+4|0;g=f[e>>2]|0;if((f[d>>2]|0)==(g|0))break a;Dsa(g+-24|0,123257)|0;a=(f[e>>2]|0)+-24|0;f[w>>2]=f[d+12>>2];FR(z,a,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=h;break a}case 77:{g=Ef(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];FR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=g;break a}case 79:{n=d+4|0;g=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;w=a+1|0;m=Cc(w,c,d)|0;n=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;if((m|0)==(w|0))break a;a=f[d+12>>2]|0;f[z>>2]=a;l=d+20|0;e=f[l>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[l>>2]=(f[l>>2]|0)+16}else HA(d+16|0,z);j=z+11|0;k=z+4|0;while(1){if(g>>>0>=n>>>0){a=m;break a}Y0(z,(f[d>>2]|0)+(g*24|0)+12|0,2);a=h7a(123268)|0;w=b[j>>0]|0;if((a|0)==((w<<24>>24<0?f[k>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123268,a|0)|0;w=x;x=0;if(w&1)break;a=(a|0)==0}else a=0;HTa(z);e=f[d>>2]|0;h=e+(g*24|0)|0;if(!a){a=e+(g*24|0)+12|0;if((b[a+11>>0]|0)<0)a=f[a>>2]|0;if((b[a>>0]|0)==40){Dsa(h,123276)|0;uoa((f[d>>2]|0)+(g*24|0)+12|0,0,123274)|0}}else{Dsa(h,123271)|0;uoa((f[d>>2]|0)+(g*24|0)+12|0,0,123274)|0}Dsa((f[d>>2]|0)+(g*24|0)|0,123278)|0;a=f[l>>2]|0;e=(f[d>>2]|0)+(g*24|0)|0;h=a+-12|0;i=f[h>>2]|0;if((i|0)==(f[a+-8>>2]|0))Oz(a+-16|0,e);else{x6(i,e);f[h>>2]=(f[h>>2]|0)+24}g=g+1|0}A=Ja(0)|0;r2a(A);break}case 80:{p=d+4|0;g=((f[p>>2]|0)-(f[d>>2]|0)|0)/24|0;q=a+1|0;o=Cc(q,c,d)|0;p=((f[p>>2]|0)-(f[d>>2]|0)|0)/24|0;if((o|0)==(q|0))break a;a=f[d+12>>2]|0;f[z>>2]=a;n=d+20|0;e=f[n>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[n>>2]=(f[n>>2]|0)+16}else HA(d+16|0,z);j=z+11|0;k=z+4|0;l=z+11|0;m=z+4|0;while(1){if(g>>>0>=p>>>0){a=o;break a}Y0(z,(f[d>>2]|0)+(g*24|0)+12|0,2);a=h7a(123268)|0;w=b[j>>0]|0;if((a|0)==((w<<24>>24<0?f[k>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123268,a|0)|0;w=x;x=0;if(w&1){y=109;break}a=(a|0)==0}else a=0;HTa(z);e=f[d>>2]|0;h=e+(g*24|0)|0;if(!a){a=e+(g*24|0)+12|0;if((b[a+11>>0]|0)<0)a=f[a>>2]|0;if((b[a>>0]|0)==40){Dsa(h,123276)|0;uoa((f[d>>2]|0)+(g*24|0)+12|0,0,123274)|0}}else{Dsa(h,123271)|0;uoa((f[d>>2]|0)+(g*24|0)+12|0,0,123274)|0}if((b[q>>0]|0)==85){Y0(z,(f[d>>2]|0)+(g*24|0)|0,12);a=h7a(123281)|0;w=b[l>>0]|0;if((a|0)==((w<<24>>24<0?f[m>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123281,a|0)|0;w=x;x=0;if(w&1){y=122;break}e=(a|0)!=0}else e=1;HTa(z);a=(f[d>>2]|0)+(g*24|0)|0;if(e)y=124;else Jwa(a)}else{a=(f[d>>2]|0)+(g*24|0)|0;y=124}if((y|0)==124){y=0;Dsa(a,123294)|0}a=f[n>>2]|0;e=(f[d>>2]|0)+(g*24|0)|0;h=a+-12|0;i=f[h>>2]|0;if((i|0)==(f[a+-8>>2]|0))Oz(a+-16|0,e);else{x6(i,e);f[h>>2]=(f[h>>2]|0)+24}g=g+1|0}if((y|0)==109){A=Ja(0)|0;r2a(A)}else if((y|0)==122){A=Ja(0)|0;r2a(A)}break}case 82:{n=d+4|0;g=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;w=a+1|0;m=Cc(w,c,d)|0;n=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;if((m|0)==(w|0))break a;a=f[d+12>>2]|0;f[z>>2]=a;l=d+20|0;e=f[l>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[l>>2]=(f[l>>2]|0)+16}else HA(d+16|0,z);j=z+11|0;k=z+4|0;while(1){if(g>>>0>=n>>>0){a=m;break a}Y0(z,(f[d>>2]|0)+(g*24|0)+12|0,2);a=h7a(123268)|0;w=b[j>>0]|0;if((a|0)==((w<<24>>24<0?f[k>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123268,a|0)|0;w=x;x=0;if(w&1)break;a=(a|0)==0}else a=0;HTa(z);e=f[d>>2]|0;h=e+(g*24|0)|0;if(!a){a=e+(g*24|0)+12|0;if((b[a+11>>0]|0)<0)a=f[a>>2]|0;if((b[a>>0]|0)==40){Dsa(h,123276)|0;uoa((f[d>>2]|0)+(g*24|0)+12|0,0,123274)|0}}else{Dsa(h,123271)|0;uoa((f[d>>2]|0)+(g*24|0)+12|0,0,123274)|0}Dsa((f[d>>2]|0)+(g*24|0)|0,123296)|0;a=f[l>>2]|0;e=(f[d>>2]|0)+(g*24|0)|0;h=a+-12|0;i=f[h>>2]|0;if((i|0)==(f[a+-8>>2]|0))Oz(a+-16|0,e);else{x6(i,e);f[h>>2]=(f[h>>2]|0)+24}g=g+1|0}A=Ja(0)|0;r2a(A);break}case 84:{n=d+4|0;j=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;l=Ej(a,c,d)|0;k=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;if((l|0)==(a|0))break a;o=d+16|0;m=d+12|0;a=f[m>>2]|0;f[z>>2]=a;p=d+20|0;e=f[p>>2]|0;q=d+24|0;if(e>>>0<(f[q>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[p>>2]=(f[p>>2]|0)+16}else HA(o,z);a=j;while(1){if(a>>>0>=k>>>0)break;e=f[p>>2]|0;g=(f[d>>2]|0)+(a*24|0)|0;h=e+-12|0;i=f[h>>2]|0;if((i|0)==(f[e+-8>>2]|0))Oz(e+-16|0,g);else{x6(i,g);f[h>>2]=(f[h>>2]|0)+24}a=a+1|0}if(!((k|0)==(j+1|0)&(b[d+63>>0]|0)!=0)){a=l;break a}a=jg(l,c,d)|0;if((a|0)==(l|0)){a=l;break a}eY(z,(f[n>>2]|0)+-24|0);g=f[n>>2]|0;e=0;while(1){if((e|0)==-1)break;d=e+-1|0;JJa(g+(d*24|0)|0);e=d}f[n>>2]=g+-24;d=b[z+11>>0]|0;v=d<<24>>24<0;x=0;ja(97,g+-48|0,(v?f[z>>2]|0:z)|0,(v?f[z+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1)a=Ia()|0;else{d=(f[n>>2]|0)+-24|0;f[t>>2]=f[m>>2];x=0;va(182,w|0,d|0,t|0);d=x;x=0;do if(d&1)a=Ia()|0;else{e=f[p>>2]|0;if(e>>>0>=(f[q>>2]|0)>>>0){x=0;ua(3195,o|0,w|0);d=x;x=0;if(d&1){a=Ia()|0;ZX(w);break}}else{f[e+12>>2]=f[w+12>>2];f[e>>2]=f[w>>2];d=w+4|0;f[e+4>>2]=f[d>>2];y=w+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[w>>2]=0;f[p>>2]=(f[p>>2]|0)+16}ZX(w);HTa(z);break a}while(0)}HTa(z);v=a;break}case 85:{e=a+1|0;if((e|0)==(c|0))break a;g=hk(e,c,d)|0;if((g|0)==(e|0))break a;j=Cc(g,c,d)|0;if((j|0)==(g|0))break a;h=d+4|0;e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(z,e+-24|0);e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;v=a+-1|0;JJa(e+(v*24|0)|0);a=v}f[h>>2]=e+-24;x=0;va(183,w|0,e+-48|0,9);v=x;x=0;d:do if(v&1)a=Ia()|0;else{a=h7a(123298)|0;v=b[w+11>>0]|0;e:do if((a|0)==((v<<24>>24<0?f[w+4>>2]|0:v&255)|0)){x=0;a=ja(102,w|0,123298,a|0)|0;v=x;x=0;if(v&1){v=Ja(0)|0;r2a(v)}HTa(w);if(!a){x=0;ua(3194,w|0,(f[h>>2]|0)+-24|0);v=x;x=0;if(v&1)a=Ia()|0;else{e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;v=a+-1|0;JJa(e+(v*24|0)|0);a=v}f[h>>2]=e+-24;a=w+11|0;g=b[a>>0]|0;v=g<<24>>24<0;e=w+4|0;c=v?f[w>>2]|0:w;x=0;g=ja(103,c+9|0,c+(v?f[e>>2]|0:g&255)|0,d|0)|0;v=x;x=0;f:do if(v&1)a=Ia()|0;else{g:do if((g|0)==(((b[a>>0]|0)<0?f[w>>2]|0:w)+9|0)){x=0;va(184,p|0,z|0,123308);v=x;x=0;if(v&1)a=Ia()|0;else{v=b[a>>0]|0;c=v<<24>>24<0;x=0;ja(97,p|0,(c?f[w>>2]|0:w)|0,(c?f[e>>2]|0:v&255)|0)|0;v=x;x=0;h:do if(v&1)a=Ia()|0;else{f[k>>2]=f[p>>2];f[k+4>>2]=f[p+4>>2];f[k+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}NY(t,k);a=f[h>>2]|0;do if(a>>>0<(f[d+8>>2]|0)>>>0){yY(a,t);f[h>>2]=(f[h>>2]|0)+24}else{x=0;ua(3196,d|0,t|0);v=x;x=0;if(!(v&1))break;a=Ia()|0;JJa(t);HTa(k);break h}while(0);JJa(t);HTa(k);HTa(p);break g}while(0);HTa(p)}break f}else{x=0;va(184,o|0,z|0,123310);v=x;x=0;if(v&1)a=Ia()|0;else{x=0;ua(3194,n|0,(f[h>>2]|0)+-24|0);v=x;x=0;if(v&1)a=Ia()|0;else{v=b[n+11>>0]|0;c=v<<24>>24<0;x=0;ja(97,o|0,(c?f[n>>2]|0:n)|0,(c?f[n+4>>2]|0:v&255)|0)|0;v=x;x=0;do if(v&1)a=Ia()|0;else{f[p>>2]=f[o>>2];f[p+4>>2]=f[o+4>>2];f[p+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ia(215,p|0,123312)|0;v=x;x=0;if(v&1){a=Ia()|0;HTa(p);break}f[m>>2]=f[p>>2];f[m+4>>2]=f[p+4>>2];f[m+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}NY(t,m);tA((f[h>>2]|0)+-24|0,t);JJa(t);HTa(m);HTa(p);HTa(n);HTa(o);break g}while(0);HTa(n)}HTa(o)}break f}while(0);HTa(w);break e}while(0);HTa(w)}break d}else y=190}else{HTa(w);y=190}while(0);i:do if((y|0)==190){x=0;va(184,t|0,z|0,123308);v=x;x=0;if(v&1)a=Ia()|0;else{x=0;ua(3194,p|0,(f[h>>2]|0)+-24|0);v=x;x=0;do if(v&1)a=Ia()|0;else{v=b[p+11>>0]|0;c=v<<24>>24<0;x=0;ja(97,t|0,(c?f[p>>2]|0:p)|0,(c?f[p+4>>2]|0:v&255)|0)|0;v=x;x=0;if(v&1){a=Ia()|0;HTa(p);break}f[i>>2]=f[t>>2];f[i+4>>2]=f[t+4>>2];f[i+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}NY(w,i);tA((f[h>>2]|0)+-24|0,w);JJa(w);HTa(i);HTa(p);HTa(t);break i}while(0);HTa(t)}break d}while(0);v=(f[h>>2]|0)+-24|0;f[t>>2]=f[d+12>>2];x=0;va(182,w|0,v|0,t|0);v=x;x=0;do if(v&1)a=Ia()|0;else{a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,w|0);d=x;x=0;if(d&1){a=Ia()|0;ZX(w);break}}else{f[e+12>>2]=f[w+12>>2];f[e>>2]=f[w>>2];d=w+4|0;f[e+4>>2]=f[d>>2];y=w+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[w>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(w);HTa(z);a=j;break a}while(0)}while(0);HTa(z);v=a;break}case 83:{v=a+1|0;if((v|0)!=(c|0)?(b[v>>0]|0)==116:0){g=Pi(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];FR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=g;break a}g=Qg(a,c,d)|0;if((g|0)==(a|0))break a;a=jg(g,c,d)|0;if((a|0)==(g|0)){a=g;break a}h=d+4|0;e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2){a=g;break a}eY(z,e+-24|0);g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;v=e+-1|0;JJa(g+(v*24|0)|0);e=v}f[h>>2]=g+-24;v=b[z+11>>0]|0;c=v<<24>>24<0;x=0;ja(97,g+-48|0,(c?f[z>>2]|0:z)|0,(c?f[z+4>>2]|0:v&255)|0)|0;v=x;x=0;if(v&1)a=Ia()|0;else{v=(f[h>>2]|0)+-24|0;f[t>>2]=f[d+12>>2];x=0;va(182,w|0,v|0,t|0);v=x;x=0;do if(v&1)a=Ia()|0;else{e=d+20|0;g=f[e>>2]|0;if(g>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,w|0);d=x;x=0;if(d&1){a=Ia()|0;ZX(w);break}}else{f[g+12>>2]=f[w+12>>2];f[g>>2]=f[w>>2];d=w+4|0;f[g+4>>2]=f[d>>2];y=w+8|0;f[g+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[w>>2]=0;f[e>>2]=(f[e>>2]|0)+16}ZX(w);HTa(z);break a}while(0)}HTa(z);v=a;break}case 68:{e=a+1|0;if((e|0)==(c|0))y=307;else switch(b[e>>0]|0){case 112:{l=d+4|0;g=((f[l>>2]|0)-(f[d>>2]|0)|0)/24|0;y=a+2|0;k=Cc(y,c,d)|0;l=((f[l>>2]|0)-(f[d>>2]|0)|0)/24|0;if((k|0)==(y|0)){y=307;break c}a=f[d+12>>2]|0;f[z>>2]=a;j=d+20|0;e=f[j>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[j>>2]=(f[j>>2]|0)+16}else HA(d+16|0,z);a=g;while(1){if(a>>>0>=l>>>0){a=k;break a}e=f[j>>2]|0;g=(f[d>>2]|0)+(a*24|0)|0;h=e+-12|0;i=f[h>>2]|0;if((i|0)==(f[e+-8>>2]|0))Oz(e+-16|0,g);else{x6(i,g);f[h>>2]=(f[h>>2]|0)+24}a=a+1|0}}case 84:case 116:{g=cp(a,c,d)|0;if((g|0)==(a|0)){y=307;break c}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];FR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=g;break a}case 118:{g=Bf(a,c,d)|0;if((g|0)==(a|0)){y=307;break c}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];FR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=g;break a}default:{y=307;break c}}break}default:y=307}while(0);do if((y|0)==307){e=Rc(a,c,d)|0;if((e|0)!=(a|0)){a=e;break a}g=Pi(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];FR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3195,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;ZX(z);break}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}ZX(z);a=g;break a}while(0);Ua(v|0)}else a=e}while(0);u=A;return a|0} -function je(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2803,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2802,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2804,b);NR(d,(qSa(c)|0)+16|0);rS(d,2802,(qSa(c)|0)+12|0);rS(d,2802,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2805,b);rS(d,2802,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2806,b);NR(d,(WRa(c)|0)+16|0);NR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2807,b);rS(d,2802,(IRa(c)|0)+28|0);NR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2808,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2802,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2809,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2802,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2810,b);b=DQa(c)|0;rS(d,2802,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2802,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2811,b);break}case 10:{d=a+16|0;rS(d,2812,b);rS(d,2802,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2813,b);break}case 12:{d=a+16|0;rS(d,2814,b);rS(d,2802,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2815,b);rS(d,2802,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2816,b);rS(d,2802,(KRa(c)|0)+28|0);rS(d,2802,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2817,b);rS(d,2802,(YQa(c)|0)+24|0);rS(d,2802,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2818,b);rS(d,2802,(rQa(c)|0)+24|0);rS(d,2802,(rQa(c)|0)+20|0);rS(d,2802,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2819,b);rS(d,2802,(LQa(c)|0)+20|0);rS(d,2802,(LQa(c)|0)+16|0);rS(d,2802,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2820,b);rS(d,2802,(KQa(c)|0)+16|0);rS(d,2802,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2821,b);break}case 16:{d=a+16|0;rS(d,2822,b);rS(d,2802,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2823,b);rS(d,2802,(ARa(c)|0)+16|0);rS(d,2802,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2824,b);rS(d,2802,(yRa(c)|0)+16|0);rS(d,2802,(yRa(c)|0)+12|0);rS(d,2802,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2825,b);rS(d,2802,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2826,b);NR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2827,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2802,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2828,b);break}case 23:{rS(a+16|0,2829,b);break}default:hb()}while(0);return}function ke(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,3155,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3142,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,3156,b);OR(d,(qSa(c)|0)+16|0);rS(d,3142,(qSa(c)|0)+12|0);rS(d,3142,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,3157,b);rS(d,3142,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,3158,b);OR(d,(WRa(c)|0)+16|0);OR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,3159,b);rS(d,3142,(IRa(c)|0)+28|0);OR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,3160,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3142,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,3161,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3142,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,3162,b);b=DQa(c)|0;rS(d,3142,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3142,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,3163,b);break}case 10:{d=a+16|0;rS(d,3164,b);rS(d,3142,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,3165,b);break}case 12:{d=a+16|0;rS(d,3166,b);rS(d,3142,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,3167,b);rS(d,3142,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,3168,b);rS(d,3142,(KRa(c)|0)+28|0);rS(d,3142,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,3169,b);rS(d,3142,(YQa(c)|0)+24|0);rS(d,3142,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,3170,b);rS(d,3142,(rQa(c)|0)+24|0);rS(d,3142,(rQa(c)|0)+20|0);rS(d,3142,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,3171,b);rS(d,3142,(LQa(c)|0)+20|0);rS(d,3142,(LQa(c)|0)+16|0);rS(d,3142,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,3172,b);rS(d,3142,(KQa(c)|0)+16|0);rS(d,3142,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,3173,b);break}case 16:{d=a+16|0;rS(d,3174,b);rS(d,3142,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,3175,b);rS(d,3142,(ARa(c)|0)+16|0);rS(d,3142,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,3176,b);rS(d,3142,(yRa(c)|0)+16|0);rS(d,3142,(yRa(c)|0)+12|0);rS(d,3142,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,3177,b);rS(d,3142,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,3178,b);OR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,3179,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3142,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,3180,b);break}case 23:{rS(a+16|0,3181,b);break}default:hb()}while(0);return}function le(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1540,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1539,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1541,b);SR(d,(qSa(c)|0)+16|0);rS(d,1539,(qSa(c)|0)+12|0);rS(d,1539,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1542,b);rS(d,1539,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1543,b);SR(d,(WRa(c)|0)+16|0);SR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1544,b);rS(d,1539,(IRa(c)|0)+28|0);SR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1545,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1539,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1546,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1539,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1547,b);b=DQa(c)|0;rS(d,1539,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1539,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1548,b);break}case 10:{d=a+16|0;rS(d,1549,b);rS(d,1539,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1550,b);break}case 12:{d=a+16|0;rS(d,1551,b);rS(d,1539,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1552,b);rS(d,1539,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1553,b);rS(d,1539,(KRa(c)|0)+28|0);rS(d,1539,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1554,b);rS(d,1539,(YQa(c)|0)+24|0);rS(d,1539,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1555,b);rS(d,1539,(rQa(c)|0)+24|0);rS(d,1539,(rQa(c)|0)+20|0);rS(d,1539,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1556,b);rS(d,1539,(LQa(c)|0)+20|0);rS(d,1539,(LQa(c)|0)+16|0);rS(d,1539,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1557,b);rS(d,1539,(KQa(c)|0)+16|0);rS(d,1539,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1558,b);break}case 16:{d=a+16|0;rS(d,1559,b);rS(d,1539,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1560,b);rS(d,1539,(ARa(c)|0)+16|0);rS(d,1539,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1561,b);rS(d,1539,(yRa(c)|0)+16|0);rS(d,1539,(yRa(c)|0)+12|0);rS(d,1539,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1562,b);rS(d,1539,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1563,b);SR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1564,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1539,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1565,b);break}case 23:{rS(a+16|0,1566,b);break}default:hb()}while(0);return}function me(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,1779,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1778,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,1780,b);TR(d,(qSa(c)|0)+16|0);rS(d,1778,(qSa(c)|0)+12|0);rS(d,1778,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,1781,b);rS(d,1778,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,1782,b);TR(d,(WRa(c)|0)+16|0);TR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,1783,b);rS(d,1778,(IRa(c)|0)+28|0);TR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,1784,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1778,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,1785,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1778,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,1786,b);b=DQa(c)|0;rS(d,1778,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1778,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,1787,b);break}case 10:{d=a+16|0;rS(d,1788,b);rS(d,1778,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,1789,b);break}case 12:{d=a+16|0;rS(d,1790,b);rS(d,1778,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,1791,b);rS(d,1778,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,1792,b);rS(d,1778,(KRa(c)|0)+28|0);rS(d,1778,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,1793,b);rS(d,1778,(YQa(c)|0)+24|0);rS(d,1778,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,1794,b);rS(d,1778,(rQa(c)|0)+24|0);rS(d,1778,(rQa(c)|0)+20|0);rS(d,1778,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,1795,b);rS(d,1778,(LQa(c)|0)+20|0);rS(d,1778,(LQa(c)|0)+16|0);rS(d,1778,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,1796,b);rS(d,1778,(KQa(c)|0)+16|0);rS(d,1778,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,1797,b);break}case 16:{d=a+16|0;rS(d,1798,b);rS(d,1778,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,1799,b);rS(d,1778,(ARa(c)|0)+16|0);rS(d,1778,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,1800,b);rS(d,1778,(yRa(c)|0)+16|0);rS(d,1778,(yRa(c)|0)+12|0);rS(d,1778,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,1801,b);rS(d,1778,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,1802,b);TR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,1803,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,1778,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,1804,b);break}case 23:{rS(a+16|0,1805,b);break}default:hb()}while(0);return}function ne(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2074,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2071,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2075,b);VR(d,(qSa(c)|0)+16|0);rS(d,2071,(qSa(c)|0)+12|0);rS(d,2071,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2076,b);rS(d,2071,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2077,b);VR(d,(WRa(c)|0)+16|0);VR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2078,b);rS(d,2071,(IRa(c)|0)+28|0);VR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2079,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2071,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2080,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2071,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2081,b);b=DQa(c)|0;rS(d,2071,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2071,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2082,b);break}case 10:{d=a+16|0;rS(d,2083,b);rS(d,2071,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2084,b);break}case 12:{d=a+16|0;rS(d,2085,b);rS(d,2071,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2086,b);rS(d,2071,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2087,b);rS(d,2071,(KRa(c)|0)+28|0);rS(d,2071,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2088,b);rS(d,2071,(YQa(c)|0)+24|0);rS(d,2071,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2089,b);rS(d,2071,(rQa(c)|0)+24|0);rS(d,2071,(rQa(c)|0)+20|0);rS(d,2071,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2090,b);rS(d,2071,(LQa(c)|0)+20|0);rS(d,2071,(LQa(c)|0)+16|0);rS(d,2071,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2091,b);rS(d,2071,(KQa(c)|0)+16|0);rS(d,2071,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2092,b);break}case 16:{d=a+16|0;rS(d,2093,b);rS(d,2071,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2094,b);rS(d,2071,(ARa(c)|0)+16|0);rS(d,2071,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2095,b);rS(d,2071,(yRa(c)|0)+16|0);rS(d,2071,(yRa(c)|0)+12|0);rS(d,2071,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2096,b);rS(d,2071,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2097,b);VR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2098,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2071,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2099,b);break}case 23:{rS(a+16|0,2100,b);break}default:hb()}while(0);return}function oe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2892,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2891,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2893,b);XR(d,(qSa(c)|0)+16|0);rS(d,2891,(qSa(c)|0)+12|0);rS(d,2891,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2894,b);rS(d,2891,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2895,b);XR(d,(WRa(c)|0)+16|0);XR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2896,b);rS(d,2891,(IRa(c)|0)+28|0);XR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2897,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2891,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2898,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2891,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2899,b);b=DQa(c)|0;rS(d,2891,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2891,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2900,b);break}case 10:{d=a+16|0;rS(d,2901,b);rS(d,2891,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2902,b);break}case 12:{d=a+16|0;rS(d,2903,b);rS(d,2891,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2904,b);rS(d,2891,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2905,b);rS(d,2891,(KRa(c)|0)+28|0);rS(d,2891,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2906,b);rS(d,2891,(YQa(c)|0)+24|0);rS(d,2891,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2907,b);rS(d,2891,(rQa(c)|0)+24|0);rS(d,2891,(rQa(c)|0)+20|0);rS(d,2891,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2908,b);rS(d,2891,(LQa(c)|0)+20|0);rS(d,2891,(LQa(c)|0)+16|0);rS(d,2891,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2909,b);rS(d,2891,(KQa(c)|0)+16|0);rS(d,2891,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2910,b);break}case 16:{d=a+16|0;rS(d,2911,b);rS(d,2891,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2912,b);rS(d,2891,(ARa(c)|0)+16|0);rS(d,2891,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2913,b);rS(d,2891,(yRa(c)|0)+16|0);rS(d,2891,(yRa(c)|0)+12|0);rS(d,2891,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2914,b);rS(d,2891,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2915,b);XR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2916,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2891,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2917,b);break}case 23:{rS(a+16|0,2918,b);break}default:hb()}while(0);return}function pe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2495,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2494,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2496,b);$R(d,(qSa(c)|0)+16|0);rS(d,2494,(qSa(c)|0)+12|0);rS(d,2494,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2497,b);rS(d,2494,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2498,b);$R(d,(WRa(c)|0)+16|0);$R(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2499,b);rS(d,2494,(IRa(c)|0)+28|0);$R(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2500,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2494,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2501,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2494,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2502,b);b=DQa(c)|0;rS(d,2494,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2494,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2503,b);break}case 10:{d=a+16|0;rS(d,2504,b);rS(d,2494,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2505,b);break}case 12:{d=a+16|0;rS(d,2506,b);rS(d,2494,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2507,b);rS(d,2494,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2508,b);rS(d,2494,(KRa(c)|0)+28|0);rS(d,2494,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2509,b);rS(d,2494,(YQa(c)|0)+24|0);rS(d,2494,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2510,b);rS(d,2494,(rQa(c)|0)+24|0);rS(d,2494,(rQa(c)|0)+20|0);rS(d,2494,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2511,b);rS(d,2494,(LQa(c)|0)+20|0);rS(d,2494,(LQa(c)|0)+16|0);rS(d,2494,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2512,b);rS(d,2494,(KQa(c)|0)+16|0);rS(d,2494,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2513,b);break}case 16:{d=a+16|0;rS(d,2514,b);rS(d,2494,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2515,b);rS(d,2494,(ARa(c)|0)+16|0);rS(d,2494,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2516,b);rS(d,2494,(yRa(c)|0)+16|0);rS(d,2494,(yRa(c)|0)+12|0);rS(d,2494,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2517,b);rS(d,2494,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2518,b);$R(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2519,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2494,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2520,b);break}case 23:{rS(a+16|0,2521,b);break}default:hb()}while(0);return}function qe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2833,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2832,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2834,b);bS(d,(qSa(c)|0)+16|0);rS(d,2832,(qSa(c)|0)+12|0);rS(d,2832,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2835,b);rS(d,2832,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2836,b);bS(d,(WRa(c)|0)+16|0);bS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2837,b);rS(d,2832,(IRa(c)|0)+28|0);bS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2838,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2832,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2839,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2832,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2840,b);b=DQa(c)|0;rS(d,2832,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2832,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2841,b);break}case 10:{d=a+16|0;rS(d,2842,b);rS(d,2832,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2843,b);break}case 12:{d=a+16|0;rS(d,2844,b);rS(d,2832,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2845,b);rS(d,2832,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2846,b);rS(d,2832,(KRa(c)|0)+28|0);rS(d,2832,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2847,b);rS(d,2832,(YQa(c)|0)+24|0);rS(d,2832,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2848,b);rS(d,2832,(rQa(c)|0)+24|0);rS(d,2832,(rQa(c)|0)+20|0);rS(d,2832,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2849,b);rS(d,2832,(LQa(c)|0)+20|0);rS(d,2832,(LQa(c)|0)+16|0);rS(d,2832,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2850,b);rS(d,2832,(KQa(c)|0)+16|0);rS(d,2832,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2851,b);break}case 16:{d=a+16|0;rS(d,2852,b);rS(d,2832,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2853,b);rS(d,2832,(ARa(c)|0)+16|0);rS(d,2832,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2854,b);rS(d,2832,(yRa(c)|0)+16|0);rS(d,2832,(yRa(c)|0)+12|0);rS(d,2832,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2855,b);rS(d,2832,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2856,b);bS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2857,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2832,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2858,b);break}case 23:{rS(a+16|0,2859,b);break}default:hb()}while(0);return}function re(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,170,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,169,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,171,b);pR(d,(qSa(c)|0)+16|0);rS(d,169,(qSa(c)|0)+12|0);rS(d,169,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,172,b);rS(d,169,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,173,b);pR(d,(WRa(c)|0)+16|0);pR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,174,b);rS(d,169,(IRa(c)|0)+28|0);pR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,175,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,169,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,176,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,169,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,177,b);b=DQa(c)|0;rS(d,169,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,169,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,178,b);break}case 10:{d=a+16|0;rS(d,179,b);rS(d,169,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,180,b);break}case 12:{d=a+16|0;rS(d,181,b);rS(d,169,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,182,b);rS(d,169,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,183,b);rS(d,169,(KRa(c)|0)+28|0);rS(d,169,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,184,b);rS(d,169,(YQa(c)|0)+24|0);rS(d,169,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,185,b);rS(d,169,(rQa(c)|0)+24|0);rS(d,169,(rQa(c)|0)+20|0);rS(d,169,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,186,b);rS(d,169,(LQa(c)|0)+20|0);rS(d,169,(LQa(c)|0)+16|0);rS(d,169,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,187,b);rS(d,169,(KQa(c)|0)+16|0);rS(d,169,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,188,b);break}case 16:{d=a+16|0;rS(d,189,b);rS(d,169,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,190,b);rS(d,169,(ARa(c)|0)+16|0);rS(d,169,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,191,b);rS(d,169,(yRa(c)|0)+16|0);rS(d,169,(yRa(c)|0)+12|0);rS(d,169,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,192,b);rS(d,169,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,193,b);pR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,194,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,169,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,195,b);break}case 23:{rS(a+16|0,196,b);break}default:hb()}while(0);return}function se(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2312,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2311,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2313,b);dS(d,(qSa(c)|0)+16|0);rS(d,2311,(qSa(c)|0)+12|0);rS(d,2311,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2314,b);rS(d,2311,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2315,b);dS(d,(WRa(c)|0)+16|0);dS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2316,b);rS(d,2311,(IRa(c)|0)+28|0);dS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2317,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2311,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2318,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2311,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2319,b);b=DQa(c)|0;rS(d,2311,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2311,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2320,b);break}case 10:{d=a+16|0;rS(d,2321,b);rS(d,2311,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2322,b);break}case 12:{d=a+16|0;rS(d,2323,b);rS(d,2311,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2324,b);rS(d,2311,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2325,b);rS(d,2311,(KRa(c)|0)+28|0);rS(d,2311,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2326,b);rS(d,2311,(YQa(c)|0)+24|0);rS(d,2311,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2327,b);rS(d,2311,(rQa(c)|0)+24|0);rS(d,2311,(rQa(c)|0)+20|0);rS(d,2311,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2328,b);rS(d,2311,(LQa(c)|0)+20|0);rS(d,2311,(LQa(c)|0)+16|0);rS(d,2311,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2329,b);rS(d,2311,(KQa(c)|0)+16|0);rS(d,2311,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2330,b);break}case 16:{d=a+16|0;rS(d,2331,b);rS(d,2311,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2332,b);rS(d,2311,(ARa(c)|0)+16|0);rS(d,2311,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2333,b);rS(d,2311,(yRa(c)|0)+16|0);rS(d,2311,(yRa(c)|0)+12|0);rS(d,2311,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2334,b);rS(d,2311,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2335,b);dS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2336,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2311,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2337,b);break}case 23:{rS(a+16|0,2338,b);break}default:hb()}while(0);return}function te(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,3071,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3070,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,3072,b);eS(d,(qSa(c)|0)+16|0);rS(d,3070,(qSa(c)|0)+12|0);rS(d,3070,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,3073,b);rS(d,3070,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,3074,b);eS(d,(WRa(c)|0)+16|0);eS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,3075,b);rS(d,3070,(IRa(c)|0)+28|0);eS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,3076,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3070,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,3077,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3070,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,3078,b);b=DQa(c)|0;rS(d,3070,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3070,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,3079,b);break}case 10:{d=a+16|0;rS(d,3080,b);rS(d,3070,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,3081,b);break}case 12:{d=a+16|0;rS(d,3082,b);rS(d,3070,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,3083,b);rS(d,3070,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,3084,b);rS(d,3070,(KRa(c)|0)+28|0);rS(d,3070,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,3085,b);rS(d,3070,(YQa(c)|0)+24|0);rS(d,3070,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,3086,b);rS(d,3070,(rQa(c)|0)+24|0);rS(d,3070,(rQa(c)|0)+20|0);rS(d,3070,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,3087,b);rS(d,3070,(LQa(c)|0)+20|0);rS(d,3070,(LQa(c)|0)+16|0);rS(d,3070,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,3088,b);rS(d,3070,(KQa(c)|0)+16|0);rS(d,3070,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,3089,b);break}case 16:{d=a+16|0;rS(d,3090,b);rS(d,3070,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,3091,b);rS(d,3070,(ARa(c)|0)+16|0);rS(d,3070,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,3092,b);rS(d,3070,(yRa(c)|0)+16|0);rS(d,3070,(yRa(c)|0)+12|0);rS(d,3070,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,3093,b);rS(d,3070,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,3094,b);eS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,3095,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3070,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,3096,b);break}case 23:{rS(a+16|0,3097,b);break}default:hb()}while(0);return}function ue(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,3043,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3040,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,3044,b);fS(d,(qSa(c)|0)+16|0);rS(d,3040,(qSa(c)|0)+12|0);rS(d,3040,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,3045,b);rS(d,3040,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,3046,b);fS(d,(WRa(c)|0)+16|0);fS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,3047,b);rS(d,3040,(IRa(c)|0)+28|0);fS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,3048,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3040,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,3049,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3040,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,3050,b);b=DQa(c)|0;rS(d,3040,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3040,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,3051,b);break}case 10:{d=a+16|0;rS(d,3052,b);rS(d,3040,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,3053,b);break}case 12:{d=a+16|0;rS(d,3054,b);rS(d,3040,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,3055,b);rS(d,3040,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,3056,b);rS(d,3040,(KRa(c)|0)+28|0);rS(d,3040,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,3057,b);rS(d,3040,(YQa(c)|0)+24|0);rS(d,3040,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,3058,b);rS(d,3040,(rQa(c)|0)+24|0);rS(d,3040,(rQa(c)|0)+20|0);rS(d,3040,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,3059,b);rS(d,3040,(LQa(c)|0)+20|0);rS(d,3040,(LQa(c)|0)+16|0);rS(d,3040,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,3060,b);rS(d,3040,(KQa(c)|0)+16|0);rS(d,3040,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,3061,b);break}case 16:{d=a+16|0;rS(d,3062,b);rS(d,3040,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,3063,b);rS(d,3040,(ARa(c)|0)+16|0);rS(d,3040,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,3064,b);rS(d,3040,(yRa(c)|0)+16|0);rS(d,3040,(yRa(c)|0)+12|0);rS(d,3040,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,3065,b);rS(d,3040,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,3066,b);fS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,3067,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,3040,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,3068,b);break}case 23:{rS(a+16|0,3069,b);break}default:hb()}while(0);return}function ve(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2526,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2522,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2528,b);mS(d,(qSa(c)|0)+16|0);rS(d,2522,(qSa(c)|0)+12|0);rS(d,2522,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2529,b);rS(d,2522,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2530,b);mS(d,(WRa(c)|0)+16|0);mS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2531,b);rS(d,2522,(IRa(c)|0)+28|0);mS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2536,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2522,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2537,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2522,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2538,b);b=DQa(c)|0;rS(d,2522,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2522,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2539,b);break}case 10:{d=a+16|0;rS(d,2540,b);rS(d,2522,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2541,b);break}case 12:{d=a+16|0;rS(d,2542,b);rS(d,2522,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2543,b);rS(d,2522,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2544,b);rS(d,2522,(KRa(c)|0)+28|0);rS(d,2522,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2545,b);rS(d,2522,(YQa(c)|0)+24|0);rS(d,2522,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2546,b);rS(d,2522,(rQa(c)|0)+24|0);rS(d,2522,(rQa(c)|0)+20|0);rS(d,2522,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2547,b);rS(d,2522,(LQa(c)|0)+20|0);rS(d,2522,(LQa(c)|0)+16|0);rS(d,2522,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2548,b);rS(d,2522,(KQa(c)|0)+16|0);rS(d,2522,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2549,b);break}case 16:{d=a+16|0;rS(d,2550,b);rS(d,2522,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2551,b);rS(d,2522,(ARa(c)|0)+16|0);rS(d,2522,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2552,b);rS(d,2522,(yRa(c)|0)+16|0);rS(d,2522,(yRa(c)|0)+12|0);rS(d,2522,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2553,b);rS(d,2522,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2532,b);mS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2554,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2522,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2555,b);break}case 23:{rS(a+16|0,2533,b);break}default:hb()}while(0);return}function we(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,2622,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2621,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,2623,b);qS(d,(qSa(c)|0)+16|0);rS(d,2621,(qSa(c)|0)+12|0);rS(d,2621,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,2624,b);rS(d,2621,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,2625,b);qS(d,(WRa(c)|0)+16|0);qS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,2626,b);rS(d,2621,(IRa(c)|0)+28|0);qS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,2627,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2621,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,2628,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2621,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,2629,b);b=DQa(c)|0;rS(d,2621,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2621,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,2630,b);break}case 10:{d=a+16|0;rS(d,2631,b);rS(d,2621,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,2632,b);break}case 12:{d=a+16|0;rS(d,2633,b);rS(d,2621,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,2634,b);rS(d,2621,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,2635,b);rS(d,2621,(KRa(c)|0)+28|0);rS(d,2621,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,2636,b);rS(d,2621,(YQa(c)|0)+24|0);rS(d,2621,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,2637,b);rS(d,2621,(rQa(c)|0)+24|0);rS(d,2621,(rQa(c)|0)+20|0);rS(d,2621,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,2638,b);rS(d,2621,(LQa(c)|0)+20|0);rS(d,2621,(LQa(c)|0)+16|0);rS(d,2621,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,2639,b);rS(d,2621,(KQa(c)|0)+16|0);rS(d,2621,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,2640,b);break}case 16:{d=a+16|0;rS(d,2641,b);rS(d,2621,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,2642,b);rS(d,2621,(ARa(c)|0)+16|0);rS(d,2621,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,2643,b);rS(d,2621,(yRa(c)|0)+16|0);rS(d,2621,(yRa(c)|0)+12|0);rS(d,2621,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,2644,b);rS(d,2621,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,2645,b);qS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,2646,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,2621,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,2647,b);break}case 23:{rS(a+16|0,2648,b);break}default:hb()}while(0);return}function xe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,110,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,109,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,111,b);RR(d,(qSa(c)|0)+16|0);rS(d,109,(qSa(c)|0)+12|0);rS(d,109,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,112,b);rS(d,109,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,113,b);RR(d,(WRa(c)|0)+16|0);RR(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,114,b);rS(d,109,(IRa(c)|0)+28|0);RR(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,115,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,109,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,116,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,109,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,117,b);b=DQa(c)|0;rS(d,109,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,109,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,118,b);break}case 10:{d=a+16|0;rS(d,119,b);rS(d,109,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,120,b);break}case 12:{d=a+16|0;rS(d,121,b);rS(d,109,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,122,b);rS(d,109,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,123,b);rS(d,109,(KRa(c)|0)+28|0);rS(d,109,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,124,b);rS(d,109,(YQa(c)|0)+24|0);rS(d,109,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,125,b);rS(d,109,(rQa(c)|0)+24|0);rS(d,109,(rQa(c)|0)+20|0);rS(d,109,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,126,b);rS(d,109,(LQa(c)|0)+20|0);rS(d,109,(LQa(c)|0)+16|0);rS(d,109,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,127,b);rS(d,109,(KQa(c)|0)+16|0);rS(d,109,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,128,b);break}case 16:{d=a+16|0;rS(d,129,b);rS(d,109,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,130,b);rS(d,109,(ARa(c)|0)+16|0);rS(d,109,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,131,b);rS(d,109,(yRa(c)|0)+16|0);rS(d,109,(yRa(c)|0)+12|0);rS(d,109,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,132,b);rS(d,109,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,133,b);RR(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,134,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,109,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,135,b);break}case 23:{rS(a+16|0,136,b);break}default:hb()}while(0);return}function ye(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1308,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1307,JDa(d,b)|0);c=b}}case 2:{rS(a,1309,b);bO(a,(qSa(c)|0)+16|0);rS(a,1307,(qSa(c)|0)+12|0);rS(a,1307,(qSa(c)|0)+8|0);break}case 3:{rS(a,1310,b);rS(a,1307,(gSa(c)|0)+12|0);break}case 4:{rS(a,1311,b);bO(a,(WRa(c)|0)+16|0);bO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1312,b);rS(a,1307,(IRa(c)|0)+28|0);bO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1313,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1307,JDa(d,b)|0);c=b}}case 7:{rS(a,1314,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1307,JDa(d,b)|0);c=b}}case 8:{rS(a,1315,b);b=DQa(c)|0;rS(a,1307,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1307,JDa(d,b)|0);c=b}}case 9:{rS(a,1316,b);break}case 10:{rS(a,1317,b);rS(a,1307,(iRa(c)|0)+12|0);break}case 11:{rS(a,1318,b);break}case 12:{rS(a,1319,b);rS(a,1307,(WQa(c)|0)+12|0);break}case 13:{rS(a,1320,b);rS(a,1307,(YRa(c)|0)+24|0);break}case 14:{rS(a,1321,b);rS(a,1307,(KRa(c)|0)+28|0);rS(a,1307,(KRa(c)|0)+24|0);break}case 24:{rS(a,1322,b);rS(a,1307,(YQa(c)|0)+24|0);rS(a,1307,(YQa(c)|0)+20|0);break}case 25:{rS(a,1323,b);rS(a,1307,(rQa(c)|0)+24|0);rS(a,1307,(rQa(c)|0)+20|0);rS(a,1307,(rQa(c)|0)+16|0);break}case 26:{rS(a,1324,b);rS(a,1307,(LQa(c)|0)+20|0);rS(a,1307,(LQa(c)|0)+16|0);rS(a,1307,(LQa(c)|0)+12|0);break}case 27:{rS(a,1325,b);rS(a,1307,(KQa(c)|0)+16|0);rS(a,1307,(KQa(c)|0)+12|0);break}case 15:{rS(a,1326,b);break}case 16:{rS(a,1327,b);rS(a,1307,(JRa(c)|0)+12|0);break}case 17:{rS(a,1328,b);rS(a,1307,(ARa(c)|0)+16|0);rS(a,1307,(ARa(c)|0)+12|0);break}case 18:{rS(a,1329,b);rS(a,1307,(yRa(c)|0)+16|0);rS(a,1307,(yRa(c)|0)+12|0);rS(a,1307,(yRa(c)|0)+8|0);break}case 19:{rS(a,1330,b);rS(a,1307,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1331,b);bO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1332,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1307,JDa(d,b)|0);c=b}}case 22:{rS(a,1333,b);break}case 23:{rS(a,1334,b);break}default:hb()}while(0);return}function ze(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,603,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,590,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,604,b);cS(d,(qSa(c)|0)+16|0);rS(d,590,(qSa(c)|0)+12|0);rS(d,590,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,605,b);rS(d,590,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,606,b);cS(d,(WRa(c)|0)+16|0);cS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,607,b);rS(d,590,(IRa(c)|0)+28|0);cS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,608,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,590,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,609,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,590,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,610,b);b=DQa(c)|0;rS(d,590,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,590,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,611,b);break}case 10:{d=a+16|0;rS(d,612,b);rS(d,590,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,613,b);break}case 12:{d=a+16|0;rS(d,614,b);rS(d,590,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,615,b);rS(d,590,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,616,b);rS(d,590,(KRa(c)|0)+28|0);rS(d,590,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,617,b);rS(d,590,(YQa(c)|0)+24|0);rS(d,590,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,618,b);rS(d,590,(rQa(c)|0)+24|0);rS(d,590,(rQa(c)|0)+20|0);rS(d,590,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,619,b);rS(d,590,(LQa(c)|0)+20|0);rS(d,590,(LQa(c)|0)+16|0);rS(d,590,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,620,b);rS(d,590,(KQa(c)|0)+16|0);rS(d,590,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,621,b);break}case 16:{d=a+16|0;rS(d,622,b);rS(d,590,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,623,b);rS(d,590,(ARa(c)|0)+16|0);rS(d,590,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,624,b);rS(d,590,(yRa(c)|0)+16|0);rS(d,590,(yRa(c)|0)+12|0);rS(d,590,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,625,b);rS(d,590,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,626,b);cS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,627,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,590,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,628,b);break}case 23:{rS(a+16|0,629,b);break}default:hb()}while(0);return}function Ae(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,437,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,436,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,438,b);jS(d,(qSa(c)|0)+16|0);rS(d,436,(qSa(c)|0)+12|0);rS(d,436,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,439,b);rS(d,436,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,440,b);jS(d,(WRa(c)|0)+16|0);jS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,441,b);rS(d,436,(IRa(c)|0)+28|0);jS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,442,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,436,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,443,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,436,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,444,b);b=DQa(c)|0;rS(d,436,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,436,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,445,b);break}case 10:{d=a+16|0;rS(d,446,b);rS(d,436,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,447,b);break}case 12:{d=a+16|0;rS(d,448,b);rS(d,436,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,449,b);rS(d,436,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,450,b);rS(d,436,(KRa(c)|0)+28|0);rS(d,436,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,451,b);rS(d,436,(YQa(c)|0)+24|0);rS(d,436,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,452,b);rS(d,436,(rQa(c)|0)+24|0);rS(d,436,(rQa(c)|0)+20|0);rS(d,436,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,453,b);rS(d,436,(LQa(c)|0)+20|0);rS(d,436,(LQa(c)|0)+16|0);rS(d,436,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,454,b);rS(d,436,(KQa(c)|0)+16|0);rS(d,436,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,455,b);break}case 16:{d=a+16|0;rS(d,456,b);rS(d,436,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,457,b);rS(d,436,(ARa(c)|0)+16|0);rS(d,436,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,458,b);rS(d,436,(yRa(c)|0)+16|0);rS(d,436,(yRa(c)|0)+12|0);rS(d,436,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,459,b);rS(d,436,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,460,b);jS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,461,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,436,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,462,b);break}case 23:{rS(a+16|0,463,b);break}default:hb()}while(0);return}function Be(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1215,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1214,JDa(d,b)|0);c=b}}case 2:{rS(a,1217,b);oO(a,(qSa(c)|0)+16|0);rS(a,1214,(qSa(c)|0)+12|0);rS(a,1214,(qSa(c)|0)+8|0);break}case 3:{rS(a,1218,b);rS(a,1214,(gSa(c)|0)+12|0);break}case 4:{rS(a,1219,b);oO(a,(WRa(c)|0)+16|0);oO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1220,b);rS(a,1214,(IRa(c)|0)+28|0);oO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1223,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1214,JDa(d,b)|0);c=b}}case 7:{rS(a,1224,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1214,JDa(d,b)|0);c=b}}case 8:{rS(a,1225,b);b=DQa(c)|0;rS(a,1214,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1214,JDa(d,b)|0);c=b}}case 9:{rS(a,1226,b);break}case 10:{rS(a,1227,b);rS(a,1214,(iRa(c)|0)+12|0);break}case 11:{rS(a,1228,b);break}case 12:{rS(a,1229,b);rS(a,1214,(WQa(c)|0)+12|0);break}case 13:{rS(a,1230,b);rS(a,1214,(YRa(c)|0)+24|0);break}case 14:{rS(a,1231,b);rS(a,1214,(KRa(c)|0)+28|0);rS(a,1214,(KRa(c)|0)+24|0);break}case 24:{rS(a,1232,b);rS(a,1214,(YQa(c)|0)+24|0);rS(a,1214,(YQa(c)|0)+20|0);break}case 25:{rS(a,1233,b);rS(a,1214,(rQa(c)|0)+24|0);rS(a,1214,(rQa(c)|0)+20|0);rS(a,1214,(rQa(c)|0)+16|0);break}case 26:{rS(a,1234,b);rS(a,1214,(LQa(c)|0)+20|0);rS(a,1214,(LQa(c)|0)+16|0);rS(a,1214,(LQa(c)|0)+12|0);break}case 27:{rS(a,1235,b);rS(a,1214,(KQa(c)|0)+16|0);rS(a,1214,(KQa(c)|0)+12|0);break}case 15:{rS(a,1236,b);break}case 16:{rS(a,1237,b);rS(a,1214,(JRa(c)|0)+12|0);break}case 17:{rS(a,1238,b);rS(a,1214,(ARa(c)|0)+16|0);rS(a,1214,(ARa(c)|0)+12|0);break}case 18:{rS(a,1239,b);rS(a,1214,(yRa(c)|0)+16|0);rS(a,1214,(yRa(c)|0)+12|0);rS(a,1214,(yRa(c)|0)+8|0);break}case 19:{rS(a,1240,b);rS(a,1214,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1221,b);oO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1241,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1214,JDa(d,b)|0);c=b}}case 22:{rS(a,1242,b);break}case 23:{rS(a,1222,b);break}default:hb()}while(0);return}function Ce(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1120,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1119,JDa(d,b)|0);c=b}}case 2:{rS(a,1122,b);pO(a,(qSa(c)|0)+16|0);rS(a,1119,(qSa(c)|0)+12|0);rS(a,1119,(qSa(c)|0)+8|0);break}case 3:{rS(a,1123,b);rS(a,1119,(gSa(c)|0)+12|0);break}case 4:{rS(a,1124,b);pO(a,(WRa(c)|0)+16|0);pO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1125,b);rS(a,1119,(IRa(c)|0)+28|0);pO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1128,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1119,JDa(d,b)|0);c=b}}case 7:{rS(a,1129,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1119,JDa(d,b)|0);c=b}}case 8:{rS(a,1130,b);b=DQa(c)|0;rS(a,1119,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1119,JDa(d,b)|0);c=b}}case 9:{rS(a,1131,b);break}case 10:{rS(a,1132,b);rS(a,1119,(iRa(c)|0)+12|0);break}case 11:{rS(a,1133,b);break}case 12:{rS(a,1134,b);rS(a,1119,(WQa(c)|0)+12|0);break}case 13:{rS(a,1135,b);rS(a,1119,(YRa(c)|0)+24|0);break}case 14:{rS(a,1136,b);rS(a,1119,(KRa(c)|0)+28|0);rS(a,1119,(KRa(c)|0)+24|0);break}case 24:{rS(a,1137,b);rS(a,1119,(YQa(c)|0)+24|0);rS(a,1119,(YQa(c)|0)+20|0);break}case 25:{rS(a,1138,b);rS(a,1119,(rQa(c)|0)+24|0);rS(a,1119,(rQa(c)|0)+20|0);rS(a,1119,(rQa(c)|0)+16|0);break}case 26:{rS(a,1139,b);rS(a,1119,(LQa(c)|0)+20|0);rS(a,1119,(LQa(c)|0)+16|0);rS(a,1119,(LQa(c)|0)+12|0);break}case 27:{rS(a,1140,b);rS(a,1119,(KQa(c)|0)+16|0);rS(a,1119,(KQa(c)|0)+12|0);break}case 15:{rS(a,1141,b);break}case 16:{rS(a,1142,b);rS(a,1119,(JRa(c)|0)+12|0);break}case 17:{rS(a,1143,b);rS(a,1119,(ARa(c)|0)+16|0);rS(a,1119,(ARa(c)|0)+12|0);break}case 18:{rS(a,1144,b);rS(a,1119,(yRa(c)|0)+16|0);rS(a,1119,(yRa(c)|0)+12|0);rS(a,1119,(yRa(c)|0)+8|0);break}case 19:{rS(a,1145,b);rS(a,1119,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1126,b);pO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1146,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1119,JDa(d,b)|0);c=b}}case 22:{rS(a,1147,b);break}case 23:{rS(a,1127,b);break}default:hb()}while(0);return}function De(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,717,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,716,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,718,b);pS(d,(qSa(c)|0)+16|0);rS(d,716,(qSa(c)|0)+12|0);rS(d,716,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,719,b);rS(d,716,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,720,b);pS(d,(WRa(c)|0)+16|0);pS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,721,b);rS(d,716,(IRa(c)|0)+28|0);pS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,722,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,716,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,723,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,716,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,724,b);b=DQa(c)|0;rS(d,716,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,716,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,725,b);break}case 10:{d=a+16|0;rS(d,726,b);rS(d,716,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,727,b);break}case 12:{d=a+16|0;rS(d,728,b);rS(d,716,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,729,b);rS(d,716,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,730,b);rS(d,716,(KRa(c)|0)+28|0);rS(d,716,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,731,b);rS(d,716,(YQa(c)|0)+24|0);rS(d,716,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,732,b);rS(d,716,(rQa(c)|0)+24|0);rS(d,716,(rQa(c)|0)+20|0);rS(d,716,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,733,b);rS(d,716,(LQa(c)|0)+20|0);rS(d,716,(LQa(c)|0)+16|0);rS(d,716,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,734,b);rS(d,716,(KQa(c)|0)+16|0);rS(d,716,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,735,b);break}case 16:{d=a+16|0;rS(d,736,b);rS(d,716,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,737,b);rS(d,716,(ARa(c)|0)+16|0);rS(d,716,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,738,b);rS(d,716,(yRa(c)|0)+16|0);rS(d,716,(yRa(c)|0)+12|0);rS(d,716,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,739,b);rS(d,716,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,740,b);pS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,741,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,716,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,742,b);break}case 23:{rS(a+16|0,743,b);break}default:hb()}while(0);return}function Ee(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1187,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1186,JDa(d,b)|0);c=b}}case 2:{rS(a,1188,b);uO(a,(qSa(c)|0)+16|0);rS(a,1186,(qSa(c)|0)+12|0);rS(a,1186,(qSa(c)|0)+8|0);break}case 3:{rS(a,1189,b);rS(a,1186,(gSa(c)|0)+12|0);break}case 4:{rS(a,1190,b);uO(a,(WRa(c)|0)+16|0);uO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1191,b);rS(a,1186,(IRa(c)|0)+28|0);uO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1192,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1186,JDa(d,b)|0);c=b}}case 7:{rS(a,1193,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1186,JDa(d,b)|0);c=b}}case 8:{rS(a,1194,b);b=DQa(c)|0;rS(a,1186,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1186,JDa(d,b)|0);c=b}}case 9:{rS(a,1195,b);break}case 10:{rS(a,1196,b);rS(a,1186,(iRa(c)|0)+12|0);break}case 11:{rS(a,1197,b);break}case 12:{rS(a,1198,b);rS(a,1186,(WQa(c)|0)+12|0);break}case 13:{rS(a,1199,b);rS(a,1186,(YRa(c)|0)+24|0);break}case 14:{rS(a,1200,b);rS(a,1186,(KRa(c)|0)+28|0);rS(a,1186,(KRa(c)|0)+24|0);break}case 24:{rS(a,1201,b);rS(a,1186,(YQa(c)|0)+24|0);rS(a,1186,(YQa(c)|0)+20|0);break}case 25:{rS(a,1202,b);rS(a,1186,(rQa(c)|0)+24|0);rS(a,1186,(rQa(c)|0)+20|0);rS(a,1186,(rQa(c)|0)+16|0);break}case 26:{rS(a,1203,b);rS(a,1186,(LQa(c)|0)+20|0);rS(a,1186,(LQa(c)|0)+16|0);rS(a,1186,(LQa(c)|0)+12|0);break}case 27:{rS(a,1204,b);rS(a,1186,(KQa(c)|0)+16|0);rS(a,1186,(KQa(c)|0)+12|0);break}case 15:{rS(a,1205,b);break}case 16:{rS(a,1206,b);rS(a,1186,(JRa(c)|0)+12|0);break}case 17:{rS(a,1207,b);rS(a,1186,(ARa(c)|0)+16|0);rS(a,1186,(ARa(c)|0)+12|0);break}case 18:{rS(a,1208,b);rS(a,1186,(yRa(c)|0)+16|0);rS(a,1186,(yRa(c)|0)+12|0);rS(a,1186,(yRa(c)|0)+8|0);break}case 19:{rS(a,1209,b);rS(a,1186,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1210,b);uO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1211,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1186,JDa(d,b)|0);c=b}}case 22:{rS(a,1212,b);break}case 23:{rS(a,1213,b);break}default:hb()}while(0);return}function Fe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1092,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1091,JDa(d,b)|0);c=b}}case 2:{rS(a,1093,b);yO(a,(qSa(c)|0)+16|0);rS(a,1091,(qSa(c)|0)+12|0);rS(a,1091,(qSa(c)|0)+8|0);break}case 3:{rS(a,1094,b);rS(a,1091,(gSa(c)|0)+12|0);break}case 4:{rS(a,1095,b);yO(a,(WRa(c)|0)+16|0);yO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1096,b);rS(a,1091,(IRa(c)|0)+28|0);yO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1097,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1091,JDa(d,b)|0);c=b}}case 7:{rS(a,1098,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1091,JDa(d,b)|0);c=b}}case 8:{rS(a,1099,b);b=DQa(c)|0;rS(a,1091,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1091,JDa(d,b)|0);c=b}}case 9:{rS(a,1100,b);break}case 10:{rS(a,1101,b);rS(a,1091,(iRa(c)|0)+12|0);break}case 11:{rS(a,1102,b);break}case 12:{rS(a,1103,b);rS(a,1091,(WQa(c)|0)+12|0);break}case 13:{rS(a,1104,b);rS(a,1091,(YRa(c)|0)+24|0);break}case 14:{rS(a,1105,b);rS(a,1091,(KRa(c)|0)+28|0);rS(a,1091,(KRa(c)|0)+24|0);break}case 24:{rS(a,1106,b);rS(a,1091,(YQa(c)|0)+24|0);rS(a,1091,(YQa(c)|0)+20|0);break}case 25:{rS(a,1107,b);rS(a,1091,(rQa(c)|0)+24|0);rS(a,1091,(rQa(c)|0)+20|0);rS(a,1091,(rQa(c)|0)+16|0);break}case 26:{rS(a,1108,b);rS(a,1091,(LQa(c)|0)+20|0);rS(a,1091,(LQa(c)|0)+16|0);rS(a,1091,(LQa(c)|0)+12|0);break}case 27:{rS(a,1109,b);rS(a,1091,(KQa(c)|0)+16|0);rS(a,1091,(KQa(c)|0)+12|0);break}case 15:{rS(a,1110,b);break}case 16:{rS(a,1111,b);rS(a,1091,(JRa(c)|0)+12|0);break}case 17:{rS(a,1112,b);rS(a,1091,(ARa(c)|0)+16|0);rS(a,1091,(ARa(c)|0)+12|0);break}case 18:{rS(a,1113,b);rS(a,1091,(yRa(c)|0)+16|0);rS(a,1091,(yRa(c)|0)+12|0);rS(a,1091,(yRa(c)|0)+8|0);break}case 19:{rS(a,1114,b);rS(a,1091,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1115,b);yO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1116,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1091,JDa(d,b)|0);c=b}}case 22:{rS(a,1117,b);break}case 23:{rS(a,1118,b);break}default:hb()}while(0);return}function Ge(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,140,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,137,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,141,b);uS(d,(qSa(c)|0)+16|0);rS(d,137,(qSa(c)|0)+12|0);rS(d,137,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,142,b);rS(d,137,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,143,b);uS(d,(WRa(c)|0)+16|0);uS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,144,b);rS(d,137,(IRa(c)|0)+28|0);uS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,145,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,137,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,146,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,137,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,147,b);b=DQa(c)|0;rS(d,137,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,137,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,148,b);break}case 10:{d=a+16|0;rS(d,149,b);rS(d,137,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,150,b);break}case 12:{d=a+16|0;rS(d,151,b);rS(d,137,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,152,b);rS(d,137,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,153,b);rS(d,137,(KRa(c)|0)+28|0);rS(d,137,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,154,b);rS(d,137,(YQa(c)|0)+24|0);rS(d,137,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,155,b);rS(d,137,(rQa(c)|0)+24|0);rS(d,137,(rQa(c)|0)+20|0);rS(d,137,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,156,b);rS(d,137,(LQa(c)|0)+20|0);rS(d,137,(LQa(c)|0)+16|0);rS(d,137,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,157,b);rS(d,137,(KQa(c)|0)+16|0);rS(d,137,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,158,b);break}case 16:{d=a+16|0;rS(d,159,b);rS(d,137,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,160,b);rS(d,137,(ARa(c)|0)+16|0);rS(d,137,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,161,b);rS(d,137,(yRa(c)|0)+16|0);rS(d,137,(yRa(c)|0)+12|0);rS(d,137,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,162,b);rS(d,137,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,163,b);uS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,164,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,137,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,165,b);break}case 23:{rS(a+16|0,166,b);break}default:hb()}while(0);return}function He(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+112|0;k=l+96|0;d=l+80|0;e=l+48|0;q=l+64|0;p=l+32|0;o=l+16|0;m=l;j=b+8|0;a:do if(C_a(f[j>>2]|0)|0){g=b+12|0;c=f[g>>2]|0;if(!(sba(a,c)|0)){BVa(f[a+16>>2]|0,c)|0;b=f[b+16>>2]|0;if(!(sba(a,b)|0))break;SN(d,a,b);HCa(d);break}d=b+16|0;if(!(sba(a,f[d>>2]|0)|0)){p=f[a+44>>2]|0;q=gNa(f[p>>2]|0,c)|0;q=F$(p,q,f[d>>2]|0)|0;BVa(f[a+16>>2]|0,q)|0;SN(e,a,f[g>>2]|0);HCa(e);break}mD(q,a,1);x=0;va(160,p|0,a|0,f[g>>2]|0);e=x;x=0;if(e&1)b=Ia()|0;else{x=0;va(159,o|0,a|0,1);e=x;x=0;if(e&1)b=Ia()|0;else{x=0;va(160,m|0,a|0,f[d>>2]|0);e=x;x=0;if(e&1)b=Ia()|0;else{e=a+44|0;b=f[e>>2]|0;x=0;c=ga(320,o|0)|0;r=x;x=0;b:do if(!(r&1)?(x=0,h=ja(45,b|0,c|0,f[d>>2]|0)|0,r=x,x=0,!(r&1)):0){b=f[e>>2]|0;x=0;c=ga(320,q|0)|0;r=x;x=0;if(!(r&1)?(x=0,i=ja(45,b|0,c|0,f[g>>2]|0)|0,r=x,x=0,!(r&1)):0){x=0;b=ja(70,f[e>>2]|0,i|0,h|0)|0;r=x;x=0;c:do if(!(r&1)){c=f[j>>2]|0;do switch(c|0){case 25:{x=0;b=oa(42,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}case 26:{x=0;b=oa(43,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}case 39:case 38:case 31:case 30:case 29:case 28:case 27:{x=0;b=ia(62,134176,106770)|0;r=x;x=0;if(r&1)break c;x=0;c=ia(77,b|0,f[j>>2]|0)|0;r=x;x=0;if(r&1)break c;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[k>>2]|0,134880)|0;r=x;x=0;do if(!(r&1)){x=0;b=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0;r=x;x=0;if(r&1)break;JCa(k);x=0;ia(79,c|0,b|0)|0;r=x;x=0;if(r&1)break c;x=0;ga(227,c|0)|0;r=x;x=0;if(r&1)break c;x=0;sa(5);x=0;break c}while(0);b=Ia()|0;JCa(k);break b}case 34:case 33:case 32:{x=0;b=pa(11,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}case 36:case 37:case 35:{x=0;b=pa(12,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}case 40:{x=0;b=oa(44,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}case 41:{x=0;b=oa(45,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}case 48:case 46:case 44:case 42:{x=0;b=pa(13,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}case 49:case 47:case 45:case 43:{x=0;b=pa(14,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;BVa(f[a+16>>2]|0,b)|0;break}default:{x=0;b=ia(62,134176,106803)|0;r=x;x=0;if(r&1)break c;x=0;c=ia(77,b|0,f[j>>2]|0)|0;r=x;x=0;if(r&1)break c;ZXa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[k>>2]|0,134880)|0;r=x;x=0;do if(!(r&1)){x=0;b=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0;r=x;x=0;if(r&1)break;JCa(k);x=0;ia(79,c|0,b|0)|0;r=x;x=0;if(r&1)break c;x=0;ga(227,c|0)|0;r=x;x=0;if(r&1)break c;x=0;sa(5);x=0;break c}while(0);b=Ia()|0;JCa(k);break b}}while(0);HCa(m);HCa(o);HCa(p);HCa(q);break a}while(0);b=Ia()|0;break}b=Ia()|0}else n=19;while(0);if((n|0)==19)b=Ia()|0;HCa(m)}HCa(o)}HCa(p)}HCa(q);Ua(b|0)}while(0);u=l;return}function Ie(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,323,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,322,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,324,b);FS(d,(qSa(c)|0)+16|0);rS(d,322,(qSa(c)|0)+12|0);rS(d,322,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,325,b);rS(d,322,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,326,b);FS(d,(WRa(c)|0)+16|0);FS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,327,b);rS(d,322,(IRa(c)|0)+28|0);FS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,328,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,322,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,329,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,322,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,330,b);b=DQa(c)|0;rS(d,322,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,322,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,331,b);break}case 10:{d=a+16|0;rS(d,332,b);rS(d,322,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,333,b);break}case 12:{d=a+16|0;rS(d,334,b);rS(d,322,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,335,b);rS(d,322,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,336,b);rS(d,322,(KRa(c)|0)+28|0);rS(d,322,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,337,b);rS(d,322,(YQa(c)|0)+24|0);rS(d,322,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,338,b);rS(d,322,(rQa(c)|0)+24|0);rS(d,322,(rQa(c)|0)+20|0);rS(d,322,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,339,b);rS(d,322,(LQa(c)|0)+20|0);rS(d,322,(LQa(c)|0)+16|0);rS(d,322,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,340,b);rS(d,322,(KQa(c)|0)+16|0);rS(d,322,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,341,b);break}case 16:{d=a+16|0;rS(d,342,b);rS(d,322,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,343,b);rS(d,322,(ARa(c)|0)+16|0);rS(d,322,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,344,b);rS(d,322,(yRa(c)|0)+16|0);rS(d,322,(yRa(c)|0)+12|0);rS(d,322,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,345,b);rS(d,322,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,346,b);FS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,347,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,322,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,348,b);break}case 23:{rS(a+16|0,349,b);break}default:hb()}while(0);return}function Je(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;rS(d,409,b);b=XRa(c)|0;c=b+12|0;b=Bbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,408,JDa(c,a)|0);b=a}}case 2:{d=a+16|0;rS(d,410,b);JS(d,(qSa(c)|0)+16|0);rS(d,408,(qSa(c)|0)+12|0);rS(d,408,(qSa(c)|0)+8|0);break}case 3:{d=a+16|0;rS(d,411,b);rS(d,408,(gSa(c)|0)+12|0);break}case 4:{d=a+16|0;rS(d,412,b);JS(d,(WRa(c)|0)+16|0);JS(d,(WRa(c)|0)+12|0);break}case 5:{d=a+16|0;rS(d,413,b);rS(d,408,(IRa(c)|0)+28|0);JS(d,(IRa(c)|0)+32|0);break}case 6:{d=a+16|0;rS(d,414,b);b=hSa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,408,JDa(c,a)|0);b=a}}case 7:{d=a+16|0;rS(d,415,b);b=SQa(c)|0;c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,408,JDa(c,a)|0);b=a}}case 8:{d=a+16|0;rS(d,416,b);b=DQa(c)|0;rS(d,408,(DQa(c)|0)+28|0);c=b+8|0;b=Bbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,408,JDa(c,a)|0);b=a}}case 9:{rS(a+16|0,417,b);break}case 10:{d=a+16|0;rS(d,418,b);rS(d,408,(iRa(c)|0)+12|0);break}case 11:{rS(a+16|0,419,b);break}case 12:{d=a+16|0;rS(d,420,b);rS(d,408,(WQa(c)|0)+12|0);break}case 13:{d=a+16|0;rS(d,421,b);rS(d,408,(YRa(c)|0)+24|0);break}case 14:{d=a+16|0;rS(d,422,b);rS(d,408,(KRa(c)|0)+28|0);rS(d,408,(KRa(c)|0)+24|0);break}case 24:{d=a+16|0;rS(d,423,b);rS(d,408,(YQa(c)|0)+24|0);rS(d,408,(YQa(c)|0)+20|0);break}case 25:{d=a+16|0;rS(d,424,b);rS(d,408,(rQa(c)|0)+24|0);rS(d,408,(rQa(c)|0)+20|0);rS(d,408,(rQa(c)|0)+16|0);break}case 26:{d=a+16|0;rS(d,425,b);rS(d,408,(LQa(c)|0)+20|0);rS(d,408,(LQa(c)|0)+16|0);rS(d,408,(LQa(c)|0)+12|0);break}case 27:{d=a+16|0;rS(d,426,b);rS(d,408,(KQa(c)|0)+16|0);rS(d,408,(KQa(c)|0)+12|0);break}case 15:{rS(a+16|0,427,b);break}case 16:{d=a+16|0;rS(d,428,b);rS(d,408,(JRa(c)|0)+12|0);break}case 17:{d=a+16|0;rS(d,429,b);rS(d,408,(ARa(c)|0)+16|0);rS(d,408,(ARa(c)|0)+12|0);break}case 18:{d=a+16|0;rS(d,430,b);rS(d,408,(yRa(c)|0)+16|0);rS(d,408,(yRa(c)|0)+12|0);rS(d,408,(yRa(c)|0)+8|0);break}case 19:{d=a+16|0;rS(d,431,b);rS(d,408,(_Ra(c)|0)+8|0);break}case 20:{d=a+16|0;rS(d,432,b);JS(d,(zRa(c)|0)+8|0);break}case 21:{d=a+16|0;rS(d,433,b);b=ZRa(c)|0;c=b+16|0;b=Bbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;rS(d,408,JDa(c,a)|0);b=a}}case 22:{rS(a+16|0,434,b);break}case 23:{rS(a+16|0,435,b);break}default:hb()}while(0);return}function Ke(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,995,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,994,JDa(d,b)|0);c=b}}case 2:{rS(a,997,b);wO(a,(qSa(c)|0)+16|0);rS(a,994,(qSa(c)|0)+12|0);rS(a,994,(qSa(c)|0)+8|0);break}case 3:{rS(a,998,b);rS(a,994,(gSa(c)|0)+12|0);break}case 4:{rS(a,999,b);wO(a,(WRa(c)|0)+16|0);wO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1e3,b);rS(a,994,(IRa(c)|0)+28|0);wO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1003,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,994,JDa(d,b)|0);c=b}}case 7:{rS(a,1004,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,994,JDa(d,b)|0);c=b}}case 8:{rS(a,1005,b);b=DQa(c)|0;rS(a,994,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,994,JDa(d,b)|0);c=b}}case 9:{rS(a,1006,b);break}case 10:{rS(a,1007,b);rS(a,994,(iRa(c)|0)+12|0);break}case 11:{rS(a,1008,b);break}case 12:{rS(a,1009,b);rS(a,994,(WQa(c)|0)+12|0);break}case 13:{rS(a,1010,b);rS(a,994,(YRa(c)|0)+24|0);break}case 14:{rS(a,1011,b);rS(a,994,(KRa(c)|0)+28|0);rS(a,994,(KRa(c)|0)+24|0);break}case 24:{rS(a,1012,b);rS(a,994,(YQa(c)|0)+24|0);rS(a,994,(YQa(c)|0)+20|0);break}case 25:{rS(a,1013,b);rS(a,994,(rQa(c)|0)+24|0);rS(a,994,(rQa(c)|0)+20|0);rS(a,994,(rQa(c)|0)+16|0);break}case 26:{rS(a,1014,b);rS(a,994,(LQa(c)|0)+20|0);rS(a,994,(LQa(c)|0)+16|0);rS(a,994,(LQa(c)|0)+12|0);break}case 27:{rS(a,1015,b);rS(a,994,(KQa(c)|0)+16|0);rS(a,994,(KQa(c)|0)+12|0);break}case 15:{rS(a,1016,b);break}case 16:{rS(a,1017,b);rS(a,994,(JRa(c)|0)+12|0);break}case 17:{rS(a,1018,b);rS(a,994,(ARa(c)|0)+16|0);rS(a,994,(ARa(c)|0)+12|0);break}case 18:{rS(a,1019,b);rS(a,994,(yRa(c)|0)+16|0);rS(a,994,(yRa(c)|0)+12|0);rS(a,994,(yRa(c)|0)+8|0);break}case 19:{rS(a,1020,b);rS(a,994,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1001,b);wO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1021,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,994,JDa(d,b)|0);c=b}}case 22:{rS(a,1022,b);break}case 23:{rS(a,1002,b);break}default:hb()}while(0);return}function Le(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,900,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,899,JDa(d,b)|0);c=b}}case 2:{rS(a,902,b);vO(a,(qSa(c)|0)+16|0);rS(a,899,(qSa(c)|0)+12|0);rS(a,899,(qSa(c)|0)+8|0);break}case 3:{rS(a,903,b);rS(a,899,(gSa(c)|0)+12|0);break}case 4:{rS(a,904,b);vO(a,(WRa(c)|0)+16|0);vO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,905,b);rS(a,899,(IRa(c)|0)+28|0);vO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,908,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,899,JDa(d,b)|0);c=b}}case 7:{rS(a,909,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,899,JDa(d,b)|0);c=b}}case 8:{rS(a,910,b);b=DQa(c)|0;rS(a,899,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,899,JDa(d,b)|0);c=b}}case 9:{rS(a,911,b);break}case 10:{rS(a,912,b);rS(a,899,(iRa(c)|0)+12|0);break}case 11:{rS(a,913,b);break}case 12:{rS(a,914,b);rS(a,899,(WQa(c)|0)+12|0);break}case 13:{rS(a,915,b);rS(a,899,(YRa(c)|0)+24|0);break}case 14:{rS(a,916,b);rS(a,899,(KRa(c)|0)+28|0);rS(a,899,(KRa(c)|0)+24|0);break}case 24:{rS(a,917,b);rS(a,899,(YQa(c)|0)+24|0);rS(a,899,(YQa(c)|0)+20|0);break}case 25:{rS(a,918,b);rS(a,899,(rQa(c)|0)+24|0);rS(a,899,(rQa(c)|0)+20|0);rS(a,899,(rQa(c)|0)+16|0);break}case 26:{rS(a,919,b);rS(a,899,(LQa(c)|0)+20|0);rS(a,899,(LQa(c)|0)+16|0);rS(a,899,(LQa(c)|0)+12|0);break}case 27:{rS(a,920,b);rS(a,899,(KQa(c)|0)+16|0);rS(a,899,(KQa(c)|0)+12|0);break}case 15:{rS(a,921,b);break}case 16:{rS(a,922,b);rS(a,899,(JRa(c)|0)+12|0);break}case 17:{rS(a,923,b);rS(a,899,(ARa(c)|0)+16|0);rS(a,899,(ARa(c)|0)+12|0);break}case 18:{rS(a,924,b);rS(a,899,(yRa(c)|0)+16|0);rS(a,899,(yRa(c)|0)+12|0);rS(a,899,(yRa(c)|0)+8|0);break}case 19:{rS(a,925,b);rS(a,899,(_Ra(c)|0)+8|0);break}case 20:{rS(a,906,b);vO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,926,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,899,JDa(d,b)|0);c=b}}case 22:{rS(a,927,b);break}case 23:{rS(a,907,b);break}default:hb()}while(0);return}function Me(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,775,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,774,JDa(d,b)|0);c=b}}case 2:{rS(a,777,b);xO(a,(qSa(c)|0)+16|0);rS(a,774,(qSa(c)|0)+12|0);rS(a,774,(qSa(c)|0)+8|0);break}case 3:{rS(a,778,b);rS(a,774,(gSa(c)|0)+12|0);break}case 4:{rS(a,779,b);xO(a,(WRa(c)|0)+16|0);xO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,780,b);rS(a,774,(IRa(c)|0)+28|0);xO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,783,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,774,JDa(d,b)|0);c=b}}case 7:{rS(a,784,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,774,JDa(d,b)|0);c=b}}case 8:{rS(a,785,b);b=DQa(c)|0;rS(a,774,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,774,JDa(d,b)|0);c=b}}case 9:{rS(a,786,b);break}case 10:{rS(a,787,b);rS(a,774,(iRa(c)|0)+12|0);break}case 11:{rS(a,788,b);break}case 12:{rS(a,789,b);rS(a,774,(WQa(c)|0)+12|0);break}case 13:{rS(a,790,b);rS(a,774,(YRa(c)|0)+24|0);break}case 14:{rS(a,791,b);rS(a,774,(KRa(c)|0)+28|0);rS(a,774,(KRa(c)|0)+24|0);break}case 24:{rS(a,792,b);rS(a,774,(YQa(c)|0)+24|0);rS(a,774,(YQa(c)|0)+20|0);break}case 25:{rS(a,793,b);rS(a,774,(rQa(c)|0)+24|0);rS(a,774,(rQa(c)|0)+20|0);rS(a,774,(rQa(c)|0)+16|0);break}case 26:{rS(a,794,b);rS(a,774,(LQa(c)|0)+20|0);rS(a,774,(LQa(c)|0)+16|0);rS(a,774,(LQa(c)|0)+12|0);break}case 27:{rS(a,795,b);rS(a,774,(KQa(c)|0)+16|0);rS(a,774,(KQa(c)|0)+12|0);break}case 15:{rS(a,796,b);break}case 16:{rS(a,797,b);rS(a,774,(JRa(c)|0)+12|0);break}case 17:{rS(a,798,b);rS(a,774,(ARa(c)|0)+16|0);rS(a,774,(ARa(c)|0)+12|0);break}case 18:{rS(a,799,b);rS(a,774,(yRa(c)|0)+16|0);rS(a,774,(yRa(c)|0)+12|0);rS(a,774,(yRa(c)|0)+8|0);break}case 19:{rS(a,800,b);rS(a,774,(_Ra(c)|0)+8|0);break}case 20:{rS(a,781,b);xO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,801,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,774,JDa(d,b)|0);c=b}}case 22:{rS(a,802,b);break}case 23:{rS(a,782,b);break}default:hb()}while(0);return}function Ne(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,872,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,871,JDa(d,b)|0);c=b}}case 2:{rS(a,873,b);CO(a,(qSa(c)|0)+16|0);rS(a,871,(qSa(c)|0)+12|0);rS(a,871,(qSa(c)|0)+8|0);break}case 3:{rS(a,874,b);rS(a,871,(gSa(c)|0)+12|0);break}case 4:{rS(a,875,b);CO(a,(WRa(c)|0)+16|0);CO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,876,b);rS(a,871,(IRa(c)|0)+28|0);CO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,877,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,871,JDa(d,b)|0);c=b}}case 7:{rS(a,878,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,871,JDa(d,b)|0);c=b}}case 8:{rS(a,879,b);b=DQa(c)|0;rS(a,871,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,871,JDa(d,b)|0);c=b}}case 9:{rS(a,880,b);break}case 10:{rS(a,881,b);rS(a,871,(iRa(c)|0)+12|0);break}case 11:{rS(a,882,b);break}case 12:{rS(a,883,b);rS(a,871,(WQa(c)|0)+12|0);break}case 13:{rS(a,884,b);rS(a,871,(YRa(c)|0)+24|0);break}case 14:{rS(a,885,b);rS(a,871,(KRa(c)|0)+28|0);rS(a,871,(KRa(c)|0)+24|0);break}case 24:{rS(a,886,b);rS(a,871,(YQa(c)|0)+24|0);rS(a,871,(YQa(c)|0)+20|0);break}case 25:{rS(a,887,b);rS(a,871,(rQa(c)|0)+24|0);rS(a,871,(rQa(c)|0)+20|0);rS(a,871,(rQa(c)|0)+16|0);break}case 26:{rS(a,888,b);rS(a,871,(LQa(c)|0)+20|0);rS(a,871,(LQa(c)|0)+16|0);rS(a,871,(LQa(c)|0)+12|0);break}case 27:{rS(a,889,b);rS(a,871,(KQa(c)|0)+16|0);rS(a,871,(KQa(c)|0)+12|0);break}case 15:{rS(a,890,b);break}case 16:{rS(a,891,b);rS(a,871,(JRa(c)|0)+12|0);break}case 17:{rS(a,892,b);rS(a,871,(ARa(c)|0)+16|0);rS(a,871,(ARa(c)|0)+12|0);break}case 18:{rS(a,893,b);rS(a,871,(yRa(c)|0)+16|0);rS(a,871,(yRa(c)|0)+12|0);rS(a,871,(yRa(c)|0)+8|0);break}case 19:{rS(a,894,b);rS(a,871,(_Ra(c)|0)+8|0);break}case 20:{rS(a,895,b);CO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,896,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,871,JDa(d,b)|0);c=b}}case 22:{rS(a,897,b);break}case 23:{rS(a,898,b);break}default:hb()}while(0);return}function Oe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,967,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,966,JDa(d,b)|0);c=b}}case 2:{rS(a,968,b);DO(a,(qSa(c)|0)+16|0);rS(a,966,(qSa(c)|0)+12|0);rS(a,966,(qSa(c)|0)+8|0);break}case 3:{rS(a,969,b);rS(a,966,(gSa(c)|0)+12|0);break}case 4:{rS(a,970,b);DO(a,(WRa(c)|0)+16|0);DO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,971,b);rS(a,966,(IRa(c)|0)+28|0);DO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,972,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,966,JDa(d,b)|0);c=b}}case 7:{rS(a,973,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,966,JDa(d,b)|0);c=b}}case 8:{rS(a,974,b);b=DQa(c)|0;rS(a,966,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,966,JDa(d,b)|0);c=b}}case 9:{rS(a,975,b);break}case 10:{rS(a,976,b);rS(a,966,(iRa(c)|0)+12|0);break}case 11:{rS(a,977,b);break}case 12:{rS(a,978,b);rS(a,966,(WQa(c)|0)+12|0);break}case 13:{rS(a,979,b);rS(a,966,(YRa(c)|0)+24|0);break}case 14:{rS(a,980,b);rS(a,966,(KRa(c)|0)+28|0);rS(a,966,(KRa(c)|0)+24|0);break}case 24:{rS(a,981,b);rS(a,966,(YQa(c)|0)+24|0);rS(a,966,(YQa(c)|0)+20|0);break}case 25:{rS(a,982,b);rS(a,966,(rQa(c)|0)+24|0);rS(a,966,(rQa(c)|0)+20|0);rS(a,966,(rQa(c)|0)+16|0);break}case 26:{rS(a,983,b);rS(a,966,(LQa(c)|0)+20|0);rS(a,966,(LQa(c)|0)+16|0);rS(a,966,(LQa(c)|0)+12|0);break}case 27:{rS(a,984,b);rS(a,966,(KQa(c)|0)+16|0);rS(a,966,(KQa(c)|0)+12|0);break}case 15:{rS(a,985,b);break}case 16:{rS(a,986,b);rS(a,966,(JRa(c)|0)+12|0);break}case 17:{rS(a,987,b);rS(a,966,(ARa(c)|0)+16|0);rS(a,966,(ARa(c)|0)+12|0);break}case 18:{rS(a,988,b);rS(a,966,(yRa(c)|0)+16|0);rS(a,966,(yRa(c)|0)+12|0);rS(a,966,(yRa(c)|0)+8|0);break}case 19:{rS(a,989,b);rS(a,966,(_Ra(c)|0)+8|0);break}case 20:{rS(a,990,b);DO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,991,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,966,JDa(d,b)|0);c=b}}case 22:{rS(a,992,b);break}case 23:{rS(a,993,b);break}default:hb()}while(0);return}function Pe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,747,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,746,JDa(d,b)|0);c=b}}case 2:{rS(a,748,b);EO(a,(qSa(c)|0)+16|0);rS(a,746,(qSa(c)|0)+12|0);rS(a,746,(qSa(c)|0)+8|0);break}case 3:{rS(a,749,b);rS(a,746,(gSa(c)|0)+12|0);break}case 4:{rS(a,750,b);EO(a,(WRa(c)|0)+16|0);EO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,751,b);rS(a,746,(IRa(c)|0)+28|0);EO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,752,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,746,JDa(d,b)|0);c=b}}case 7:{rS(a,753,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,746,JDa(d,b)|0);c=b}}case 8:{rS(a,754,b);b=DQa(c)|0;rS(a,746,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,746,JDa(d,b)|0);c=b}}case 9:{rS(a,755,b);break}case 10:{rS(a,756,b);rS(a,746,(iRa(c)|0)+12|0);break}case 11:{rS(a,757,b);break}case 12:{rS(a,758,b);rS(a,746,(WQa(c)|0)+12|0);break}case 13:{rS(a,759,b);rS(a,746,(YRa(c)|0)+24|0);break}case 14:{rS(a,760,b);rS(a,746,(KRa(c)|0)+28|0);rS(a,746,(KRa(c)|0)+24|0);break}case 24:{rS(a,761,b);rS(a,746,(YQa(c)|0)+24|0);rS(a,746,(YQa(c)|0)+20|0);break}case 25:{rS(a,762,b);rS(a,746,(rQa(c)|0)+24|0);rS(a,746,(rQa(c)|0)+20|0);rS(a,746,(rQa(c)|0)+16|0);break}case 26:{rS(a,763,b);rS(a,746,(LQa(c)|0)+20|0);rS(a,746,(LQa(c)|0)+16|0);rS(a,746,(LQa(c)|0)+12|0);break}case 27:{rS(a,764,b);rS(a,746,(KQa(c)|0)+16|0);rS(a,746,(KQa(c)|0)+12|0);break}case 15:{rS(a,765,b);break}case 16:{rS(a,766,b);rS(a,746,(JRa(c)|0)+12|0);break}case 17:{rS(a,767,b);rS(a,746,(ARa(c)|0)+16|0);rS(a,746,(ARa(c)|0)+12|0);break}case 18:{rS(a,768,b);rS(a,746,(yRa(c)|0)+16|0);rS(a,746,(yRa(c)|0)+12|0);rS(a,746,(yRa(c)|0)+8|0);break}case 19:{rS(a,769,b);rS(a,746,(_Ra(c)|0)+8|0);break}case 20:{rS(a,770,b);EO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,771,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,746,JDa(d,b)|0);c=b}}case 22:{rS(a,772,b);break}case 23:{rS(a,773,b);break}default:hb()}while(0);return}function Qe(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0.0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0;G=u;u=u+512|0;D=G;E=d+c|0;F=0-E|0;C=a+4|0;B=a+100|0;j=0;a:while(1){switch(b|0){case 46:{z=7;break a}case 48:break;default:{v=0;p=j;j=0;o=0;break a}}b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=cF(a)|0;j=1}if((z|0)==7){b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=cF(a)|0;if((b|0)==48){j=0;b=0;while(1){j=wOa(j|0,b|0,-1,-1)|0;o=I;b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=cF(a)|0;if((b|0)==48)b=o;else{v=1;p=1;break}}}else{v=1;p=j;j=0;o=0}}f[D>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){A=D+496|0;w=0;l=0;s=0;x=v;y=p;z=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;j=p;o=n}else break c;else{p=wOa(p|0,n|0,1,0)|0;n=I;v=(b|0)!=48;if((l|0)>=125){if(!v)break;f[A>>2]=f[A>>2]|1;break}m=D+(l<<2)|0;if(!w)b=z;else b=b+-48+((f[m>>2]|0)*10|0)|0;f[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;l=l+(y&1)|0;s=v?p:s;y=1}while(0);b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=cF(a)|0;z=b+-48|0;m=(b|0)==46;if(!(m|z>>>0<10)){v=x;m=y;z=31;break b}}b=w;m=(y|0)!=0;z=39}else{w=0;l=0;s=0;m=p;p=0;n=0;z=31}while(0);do if((z|0)==31){A=(v|0)==0;j=A?p:j;o=A?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;z=39;break}else{b=w;z=41;break}m=so(a,g)|0;b=I;if((m|0)==0&(b|0)==-2147483648){if(!g){una(a,0);i=0.0;break}if(!(f[B>>2]|0)){m=0;b=0}else{f[C>>2]=(f[C>>2]|0)+-1;m=0;b=0}}j=wOa(m|0,b|0,j|0,o|0)|0;b=w;o=I;z=43}while(0);if((z|0)==39)if(f[B>>2]|0){f[C>>2]=(f[C>>2]|0)+-1;if(m)z=43;else z=42}else z=41;if((z|0)==41)if(m)z=43;else z=42;do if((z|0)==42){f[33448]=22;una(a,0);i=0.0}else if((z|0)==43){m=f[D>>2]|0;if(!m){i=+(e|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((j|0)==(p|0)&(o|0)==(n|0))?(c|0)>30|(m>>>c|0)==0:0){i=+(e|0)*+(m>>>0);break}a=(d|0)/-2|0;C=((a|0)<0)<<31>>31;if((o|0)>(C|0)|(o|0)==(C|0)&j>>>0>a>>>0){f[33448]=34;i=+(e|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=d+-106|0;C=((a|0)<0)<<31>>31;if((o|0)<(C|0)|(o|0)==(C|0)&j>>>0>>0){f[33448]=34;i=+(e|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=D+(l<<2)|0;m=f[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}f[n>>2]=m}l=l+1|0}if((s|0)<9?(s|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(e|0)*+((f[D>>2]|0)>>>0);break}if((j|0)<9){i=+(e|0)*+((f[D>>2]|0)>>>0)/+(f[28016+(8-j<<2)>>2]|0);break}a=c+27+(X(j,-3)|0)|0;b=f[D>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(e|0)*+(b>>>0)*+(f[28016+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)m=0;else{s=(j|0)>-1?b:b+9|0;o=f[28016+(8-s<<2)>>2]|0;if(l){p=1e9/(o|0)|0;n=0;m=0;b=0;do{B=D+(b<<2)|0;C=f[B>>2]|0;a=(C>>>0)/(o>>>0)|0;C=C-(X(a,o)|0)|0;a=a+n|0;f[B>>2]=a;n=X(p,C)|0;a=(b|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;b=b+1|0}while((b|0)!=(l|0));if(!n)b=l;else{f[D+(l<<2)>>2]=n;b=l+1|0}}else{m=0;b=0}l=b;j=9-s+j|0}b=0;d:while(1){v=(j|0)<18;w=(j|0)==18;x=D+(m<<2)|0;while(1){if(!v){if(!w)break d;if((f[x>>2]|0)>>>0>=9007199){j=18;break d}}n=0;y=l;l=l+127|0;while(1){p=l&127;o=D+(p<<2)|0;l=hMa(f[o>>2]|0,0,29)|0;l=wOa(l|0,I|0,n|0,0)|0;n=I;if(n>>>0>0|(n|0)==0&l>>>0>1e9){s=sYa(l|0,n|0,1e9,0)|0;a=BBa(s|0,I|0,-1e9,-1)|0;l=wOa(l|0,n|0,a|0,I|0)|0}else s=0;f[o>>2]=l;a=(p|0)==(m|0);o=(p|0)!=(y+127&127|0)|a?y:(l|0)==0?p:y;if(a)break;else{n=s;y=o;l=p+-1|0}}b=b+-29|0;if(!s)l=y;else break}m=m+127&127;l=o+127&127;n=D+((o+126&127)<<2)|0;if((m|0)==(o|0))f[n>>2]=f[n>>2]|f[D+(l<<2)>>2];else l=y;f[D+(m<<2)>>2]=s;j=j+9|0}e:while(1){w=l+1&127;x=D+((l+127&127)<<2)|0;while(1){p=(j|0)==18;v=(j|0)>27?9:1;y=m;while(1){o=0;while(1){m=o+y&127;if((m|0)==(l|0)){z=92;break}m=f[D+(m<<2)>>2]|0;n=f[46824+(o<<2)>>2]|0;if(m>>>0>>0){z=92;break}if(m>>>0>n>>>0)break;if((o+1|0)>>>0<2)o=1;else{z=92;break}}if((z|0)==92?(z=0,p):0)break e;b=v+b|0;if((y|0)==(l|0))y=l;else break}p=(1<>>v;o=0;m=y;n=y;do{B=D+(n<<2)|0;C=f[B>>2]|0;a=(C>>>v)+o|0;f[B>>2]=a;o=X(C&p,s)|0;a=(n|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;n=n+1&127}while((n|0)!=(l|0));if(o|0){if((w|0)!=(m|0))break;f[x>>2]=f[x>>2]|1}}f[D+(l<<2)>>2]=o;l=w}i=0.0;j=l;m=0;do{n=m+y&127;l=j+1&127;if((n|0)==(j|0)){f[D+(l+-1<<2)>>2]=0;j=l}i=i*1.0e9+ +((f[D+(n<<2)>>2]|0)>>>0);m=m+1|0}while((m|0)!=2);t=+(e|0);k=i*t;n=b+53|0;o=n-d|0;p=(o|0)<(c|0);m=p?((o|0)>0?o:0):c;if((m|0)<53){H=+Aab(+YU(1.0,105-m|0),k);q=+Yab(k,+YU(1.0,53-m|0));r=H;i=q;q=H+(k-q)}else{r=0.0;i=0.0;q=k}l=y+2&127;if((l|0)!=(j|0)){l=f[D+(l<<2)>>2]|0;do if(l>>>0>=5e8){if((l|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(j|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((l|0)==0?(y+3&127|0)==(j|0):0)break;i=t*.25+i}while(0);if((53-m|0)>1?!(+Yab(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=q+k-r;do if((n&2147483647|0)>(-2-E|0)){E=!(+K(+i)>=9007199254740992.0);b=b+((E^1)&1)|0;i=E?i:i*.5;if((b+50|0)<=(F|0)?!(k!=0.0&(p&((m|0)!=(o|0)|E))):0)break;f[33448]=34}while(0);i=+Hab(i,b)}while(0);u=G;return +i}function Re(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1929,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1928,JDa(d,b)|0);c=b}}case 2:{rS(a,1930,b);WO(a,(qSa(c)|0)+16|0);rS(a,1928,(qSa(c)|0)+12|0);rS(a,1928,(qSa(c)|0)+8|0);break}case 3:{rS(a,1931,b);rS(a,1928,(gSa(c)|0)+12|0);break}case 4:{rS(a,1932,b);WO(a,(WRa(c)|0)+16|0);WO(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1933,b);rS(a,1928,(IRa(c)|0)+28|0);WO(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1934,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1928,JDa(d,b)|0);c=b}}case 7:{rS(a,1935,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1928,JDa(d,b)|0);c=b}}case 8:{rS(a,1936,b);b=DQa(c)|0;rS(a,1928,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1928,JDa(d,b)|0);c=b}}case 9:{rS(a,1937,b);break}case 10:{rS(a,1938,b);rS(a,1928,(iRa(c)|0)+12|0);break}case 11:{rS(a,1939,b);break}case 12:{rS(a,1940,b);rS(a,1928,(WQa(c)|0)+12|0);break}case 13:{rS(a,1941,b);rS(a,1928,(YRa(c)|0)+24|0);break}case 14:{rS(a,1942,b);rS(a,1928,(KRa(c)|0)+28|0);rS(a,1928,(KRa(c)|0)+24|0);break}case 24:{rS(a,1943,b);rS(a,1928,(YQa(c)|0)+24|0);rS(a,1928,(YQa(c)|0)+20|0);break}case 25:{rS(a,1944,b);rS(a,1928,(rQa(c)|0)+24|0);rS(a,1928,(rQa(c)|0)+20|0);rS(a,1928,(rQa(c)|0)+16|0);break}case 26:{rS(a,1945,b);rS(a,1928,(LQa(c)|0)+20|0);rS(a,1928,(LQa(c)|0)+16|0);rS(a,1928,(LQa(c)|0)+12|0);break}case 27:{rS(a,1946,b);rS(a,1928,(KQa(c)|0)+16|0);rS(a,1928,(KQa(c)|0)+12|0);break}case 15:{rS(a,1947,b);break}case 16:{rS(a,1948,b);rS(a,1928,(JRa(c)|0)+12|0);break}case 17:{rS(a,1949,b);rS(a,1928,(ARa(c)|0)+16|0);rS(a,1928,(ARa(c)|0)+12|0);break}case 18:{rS(a,1950,b);rS(a,1928,(yRa(c)|0)+16|0);rS(a,1928,(yRa(c)|0)+12|0);rS(a,1928,(yRa(c)|0)+8|0);break}case 19:{rS(a,1951,b);rS(a,1928,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1952,b);WO(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1953,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1928,JDa(d,b)|0);c=b}}case 22:{rS(a,1954,b);break}case 23:{rS(a,1955,b);break}default:hb()}while(0);return}function Se(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+64|0;l=n+40|0;g=n+24|0;h=n+12|0;k=n;a:do if((c-a|0)>2?(b[a>>0]|0)==85:0){b:do switch(b[a+1>>0]|0){case 116:{f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;nW(g,124077,h7a(124077)|0);NY(l,g);h=d+4|0;e=f[h>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);m=x;x=0;if(m&1){a=Ia()|0;JJa(l);HTa(g);break b}}else{yY(e,l);f[h>>2]=(f[h>>2]|0)+24}JJa(l);HTa(g);g=a+2|0;if((g|0)==(c|0)){g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;m=e+-1|0;JJa(g+(m*24|0)|0);e=m}f[h>>2]=g+-24;break a}if(((b[g>>0]|0)+-48|0)>>>0<10){e=a+3|0;while(1){if((e|0)==(c|0)){e=c;break}if(((b[e>>0]|0)+-48|0)>>>0>=10)break;e=e+1|0}Lq((f[h>>2]|0)+-24|0,g,e)}else e=g;AJ((f[h>>2]|0)+-24|0,39);if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){a=e+1|0;break a}g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;m=e+-1|0;JJa(g+(m*24|0)|0);e=m}f[h>>2]=g+-24;break a}case 108:{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;nW(h,124086,h7a(124086)|0);NY(l,h);m=d+4|0;e=f[m>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3196,d|0,l|0);j=x;x=0;if(j&1){a=Ia()|0;JJa(l);HTa(h);break b}}else{yY(e,l);f[m>>2]=(f[m>>2]|0)+24}JJa(l);HTa(h);g=a+2|0;c:do if((b[g>>0]|0)==118){AJ((f[m>>2]|0)+-24|0,41);e=a+3|0}else{e=Cc(g,c,d)|0;if((e|0)==(g|0)){g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;c=e+-1|0;JJa(g+(c*24|0)|0);e=c}f[m>>2]=g+-24;break a}g=f[m>>2]|0;if(((g-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;eY(l,g+-24|0);h=f[m>>2]|0;g=0;while(1){if((g|0)==-1)break;j=g+-1|0;JJa(h+(j*24|0)|0);g=j}f[m>>2]=h+-24;i=l+11|0;g=b[i>>0]|0;o=g<<24>>24<0;j=l+4|0;x=0;ja(97,h+-48|0,(o?f[l>>2]|0:l)|0,(o?f[j>>2]|0:g&255)|0)|0;h=x;x=0;do if(!(h&1)){while(1){x=0;h=ja(100,e|0,c|0,d|0)|0;o=x;x=0;if(o&1){g=45;break}if((h|0)==(e|0)){g=64;break}e=f[m>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2){g=95;break}x=0;ua(3194,k|0,e+-24|0);o=x;x=0;if(o&1){g=63;break}if((b[i>>0]|0)<0){T0a(f[l>>2]|0,0);f[j>>2]=0}else{T0a(l,0);b[i>>0]=0}wv(l);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}HTa(k);g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;JJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;o=b[i>>0]|0;if((o<<24>>24<0?f[j>>2]|0:o&255)|0){x=0;ia(215,g+-48|0,123498)|0;o=x;x=0;if(o&1){g=45;break}o=b[i>>0]|0;g=o<<24>>24<0;x=0;ja(97,(f[m>>2]|0)+-24|0,(g?f[l>>2]|0:l)|0,(g?f[j>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){g=45;break}}e=h}if((g|0)==45){a=Ia()|0;g=47;break}else if((g|0)==63){a=Ia()|0;break}else if((g|0)==64){x=0;ia(215,(f[m>>2]|0)+-24|0,123274)|0;o=x;x=0;if(o&1){g=46;break}HTa(l);break c}else if((g|0)==95){HTa(l);break a}}else g=46;while(0);if((g|0)==46){a=Ia()|0;g=47}HTa(l);break b}while(0);if((e|0)!=(c|0)?(b[e>>0]|0)==69:0){i=e+1|0;if((i|0)==(c|0)){g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;JJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;break a}if(((b[i>>0]|0)+-48|0)>>>0<10){e=e+2|0;while(1){if((e|0)==(c|0)){e=c;break}if(((b[e>>0]|0)+-48|0)>>>0>=10)break;e=e+1|0}g=(f[m>>2]|0)+-24|0;if((b[g+11>>0]|0)<0)h=f[g>>2]|0;else h=g;ao(g,h+7|0,i,e)|0}else e=i;if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){a=e+1|0;break a}g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;JJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;break a}g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;JJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;break a}default:break a}while(0);Ua(a|0)}while(0);u=n;return a|0}function Te(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2163,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2162,JDa(d,b)|0);c=b}}case 2:{rS(a,2164,b);gP(a,(qSa(c)|0)+16|0);rS(a,2162,(qSa(c)|0)+12|0);rS(a,2162,(qSa(c)|0)+8|0);break}case 3:{rS(a,2165,b);rS(a,2162,(gSa(c)|0)+12|0);break}case 4:{rS(a,2166,b);gP(a,(WRa(c)|0)+16|0);gP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2167,b);rS(a,2162,(IRa(c)|0)+28|0);gP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2168,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2162,JDa(d,b)|0);c=b}}case 7:{rS(a,2169,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2162,JDa(d,b)|0);c=b}}case 8:{rS(a,2170,b);b=DQa(c)|0;rS(a,2162,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2162,JDa(d,b)|0);c=b}}case 9:{rS(a,2171,b);break}case 10:{rS(a,2172,b);rS(a,2162,(iRa(c)|0)+12|0);break}case 11:{rS(a,2173,b);break}case 12:{rS(a,2174,b);rS(a,2162,(WQa(c)|0)+12|0);break}case 13:{rS(a,2175,b);rS(a,2162,(YRa(c)|0)+24|0);break}case 14:{rS(a,2176,b);rS(a,2162,(KRa(c)|0)+28|0);rS(a,2162,(KRa(c)|0)+24|0);break}case 24:{rS(a,2177,b);rS(a,2162,(YQa(c)|0)+24|0);rS(a,2162,(YQa(c)|0)+20|0);break}case 25:{rS(a,2178,b);rS(a,2162,(rQa(c)|0)+24|0);rS(a,2162,(rQa(c)|0)+20|0);rS(a,2162,(rQa(c)|0)+16|0);break}case 26:{rS(a,2179,b);rS(a,2162,(LQa(c)|0)+20|0);rS(a,2162,(LQa(c)|0)+16|0);rS(a,2162,(LQa(c)|0)+12|0);break}case 27:{rS(a,2180,b);rS(a,2162,(KQa(c)|0)+16|0);rS(a,2162,(KQa(c)|0)+12|0);break}case 15:{rS(a,2181,b);break}case 16:{rS(a,2182,b);rS(a,2162,(JRa(c)|0)+12|0);break}case 17:{rS(a,2183,b);rS(a,2162,(ARa(c)|0)+16|0);rS(a,2162,(ARa(c)|0)+12|0);break}case 18:{rS(a,2184,b);rS(a,2162,(yRa(c)|0)+16|0);rS(a,2162,(yRa(c)|0)+12|0);rS(a,2162,(yRa(c)|0)+8|0);break}case 19:{rS(a,2185,b);rS(a,2162,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2186,b);gP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2187,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2162,JDa(d,b)|0);c=b}}case 22:{rS(a,2188,b);break}case 23:{rS(a,2189,b);break}default:hb()}while(0);return}function Ue(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2594,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2593,JDa(d,b)|0);c=b}}case 2:{rS(a,2595,b);nP(a,(qSa(c)|0)+16|0);rS(a,2593,(qSa(c)|0)+12|0);rS(a,2593,(qSa(c)|0)+8|0);break}case 3:{rS(a,2596,b);rS(a,2593,(gSa(c)|0)+12|0);break}case 4:{rS(a,2597,b);nP(a,(WRa(c)|0)+16|0);nP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2598,b);rS(a,2593,(IRa(c)|0)+28|0);nP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2599,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2593,JDa(d,b)|0);c=b}}case 7:{rS(a,2600,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2593,JDa(d,b)|0);c=b}}case 8:{rS(a,2601,b);b=DQa(c)|0;rS(a,2593,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2593,JDa(d,b)|0);c=b}}case 9:{rS(a,2602,b);break}case 10:{rS(a,2603,b);rS(a,2593,(iRa(c)|0)+12|0);break}case 11:{rS(a,2604,b);break}case 12:{rS(a,2605,b);rS(a,2593,(WQa(c)|0)+12|0);break}case 13:{rS(a,2606,b);rS(a,2593,(YRa(c)|0)+24|0);break}case 14:{rS(a,2607,b);rS(a,2593,(KRa(c)|0)+28|0);rS(a,2593,(KRa(c)|0)+24|0);break}case 24:{rS(a,2608,b);rS(a,2593,(YQa(c)|0)+24|0);rS(a,2593,(YQa(c)|0)+20|0);break}case 25:{rS(a,2609,b);rS(a,2593,(rQa(c)|0)+24|0);rS(a,2593,(rQa(c)|0)+20|0);rS(a,2593,(rQa(c)|0)+16|0);break}case 26:{rS(a,2610,b);rS(a,2593,(LQa(c)|0)+20|0);rS(a,2593,(LQa(c)|0)+16|0);rS(a,2593,(LQa(c)|0)+12|0);break}case 27:{rS(a,2611,b);rS(a,2593,(KQa(c)|0)+16|0);rS(a,2593,(KQa(c)|0)+12|0);break}case 15:{rS(a,2612,b);break}case 16:{rS(a,2613,b);rS(a,2593,(JRa(c)|0)+12|0);break}case 17:{rS(a,2614,b);rS(a,2593,(ARa(c)|0)+16|0);rS(a,2593,(ARa(c)|0)+12|0);break}case 18:{rS(a,2615,b);rS(a,2593,(yRa(c)|0)+16|0);rS(a,2593,(yRa(c)|0)+12|0);rS(a,2593,(yRa(c)|0)+8|0);break}case 19:{rS(a,2616,b);rS(a,2593,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2617,b);nP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2618,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2593,JDa(d,b)|0);c=b}}case 22:{rS(a,2619,b);break}case 23:{rS(a,2620,b);break}default:hb()}while(0);return}function Ve(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1689,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1688,JDa(d,b)|0);c=b}}case 2:{rS(a,1690,b);wP(a,(qSa(c)|0)+16|0);rS(a,1688,(qSa(c)|0)+12|0);rS(a,1688,(qSa(c)|0)+8|0);break}case 3:{rS(a,1691,b);rS(a,1688,(gSa(c)|0)+12|0);break}case 4:{rS(a,1692,b);wP(a,(WRa(c)|0)+16|0);wP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1693,b);rS(a,1688,(IRa(c)|0)+28|0);wP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1694,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1688,JDa(d,b)|0);c=b}}case 7:{rS(a,1695,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1688,JDa(d,b)|0);c=b}}case 8:{rS(a,1696,b);b=DQa(c)|0;rS(a,1688,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1688,JDa(d,b)|0);c=b}}case 9:{rS(a,1697,b);break}case 10:{rS(a,1698,b);rS(a,1688,(iRa(c)|0)+12|0);break}case 11:{rS(a,1699,b);break}case 12:{rS(a,1700,b);rS(a,1688,(WQa(c)|0)+12|0);break}case 13:{rS(a,1701,b);rS(a,1688,(YRa(c)|0)+24|0);break}case 14:{rS(a,1702,b);rS(a,1688,(KRa(c)|0)+28|0);rS(a,1688,(KRa(c)|0)+24|0);break}case 24:{rS(a,1703,b);rS(a,1688,(YQa(c)|0)+24|0);rS(a,1688,(YQa(c)|0)+20|0);break}case 25:{rS(a,1704,b);rS(a,1688,(rQa(c)|0)+24|0);rS(a,1688,(rQa(c)|0)+20|0);rS(a,1688,(rQa(c)|0)+16|0);break}case 26:{rS(a,1705,b);rS(a,1688,(LQa(c)|0)+20|0);rS(a,1688,(LQa(c)|0)+16|0);rS(a,1688,(LQa(c)|0)+12|0);break}case 27:{rS(a,1706,b);rS(a,1688,(KQa(c)|0)+16|0);rS(a,1688,(KQa(c)|0)+12|0);break}case 15:{rS(a,1707,b);break}case 16:{rS(a,1708,b);rS(a,1688,(JRa(c)|0)+12|0);break}case 17:{rS(a,1709,b);rS(a,1688,(ARa(c)|0)+16|0);rS(a,1688,(ARa(c)|0)+12|0);break}case 18:{rS(a,1710,b);rS(a,1688,(yRa(c)|0)+16|0);rS(a,1688,(yRa(c)|0)+12|0);rS(a,1688,(yRa(c)|0)+8|0);break}case 19:{rS(a,1711,b);rS(a,1688,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1712,b);wP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1713,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1688,JDa(d,b)|0);c=b}}case 22:{rS(a,1714,b);break}case 23:{rS(a,1715,b);break}default:hb()}while(0);return}function We(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1985,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1984,JDa(d,b)|0);c=b}}case 2:{rS(a,1986,b);yP(a,(qSa(c)|0)+16|0);rS(a,1984,(qSa(c)|0)+12|0);rS(a,1984,(qSa(c)|0)+8|0);break}case 3:{rS(a,1987,b);rS(a,1984,(gSa(c)|0)+12|0);break}case 4:{rS(a,1988,b);yP(a,(WRa(c)|0)+16|0);yP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1989,b);rS(a,1984,(IRa(c)|0)+28|0);yP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1990,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1984,JDa(d,b)|0);c=b}}case 7:{rS(a,1991,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1984,JDa(d,b)|0);c=b}}case 8:{rS(a,1992,b);b=DQa(c)|0;rS(a,1984,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1984,JDa(d,b)|0);c=b}}case 9:{rS(a,1993,b);break}case 10:{rS(a,1994,b);rS(a,1984,(iRa(c)|0)+12|0);break}case 11:{rS(a,1995,b);break}case 12:{rS(a,1996,b);rS(a,1984,(WQa(c)|0)+12|0);break}case 13:{rS(a,1997,b);rS(a,1984,(YRa(c)|0)+24|0);break}case 14:{rS(a,1998,b);rS(a,1984,(KRa(c)|0)+28|0);rS(a,1984,(KRa(c)|0)+24|0);break}case 24:{rS(a,1999,b);rS(a,1984,(YQa(c)|0)+24|0);rS(a,1984,(YQa(c)|0)+20|0);break}case 25:{rS(a,2e3,b);rS(a,1984,(rQa(c)|0)+24|0);rS(a,1984,(rQa(c)|0)+20|0);rS(a,1984,(rQa(c)|0)+16|0);break}case 26:{rS(a,2001,b);rS(a,1984,(LQa(c)|0)+20|0);rS(a,1984,(LQa(c)|0)+16|0);rS(a,1984,(LQa(c)|0)+12|0);break}case 27:{rS(a,2002,b);rS(a,1984,(KQa(c)|0)+16|0);rS(a,1984,(KQa(c)|0)+12|0);break}case 15:{rS(a,2003,b);break}case 16:{rS(a,2004,b);rS(a,1984,(JRa(c)|0)+12|0);break}case 17:{rS(a,2005,b);rS(a,1984,(ARa(c)|0)+16|0);rS(a,1984,(ARa(c)|0)+12|0);break}case 18:{rS(a,2006,b);rS(a,1984,(yRa(c)|0)+16|0);rS(a,1984,(yRa(c)|0)+12|0);rS(a,1984,(yRa(c)|0)+8|0);break}case 19:{rS(a,2007,b);rS(a,1984,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2008,b);yP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2009,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1984,JDa(d,b)|0);c=b}}case 22:{rS(a,2010,b);break}case 23:{rS(a,2011,b);break}default:hb()}while(0);return}function Xe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1719,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1716,JDa(d,b)|0);c=b}}case 2:{rS(a,1720,b);BP(a,(qSa(c)|0)+16|0);rS(a,1716,(qSa(c)|0)+12|0);rS(a,1716,(qSa(c)|0)+8|0);break}case 3:{rS(a,1721,b);rS(a,1716,(gSa(c)|0)+12|0);break}case 4:{rS(a,1722,b);BP(a,(WRa(c)|0)+16|0);BP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1723,b);rS(a,1716,(IRa(c)|0)+28|0);BP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1724,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1716,JDa(d,b)|0);c=b}}case 7:{rS(a,1725,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1716,JDa(d,b)|0);c=b}}case 8:{rS(a,1726,b);b=DQa(c)|0;rS(a,1716,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1716,JDa(d,b)|0);c=b}}case 9:{rS(a,1727,b);break}case 10:{rS(a,1728,b);rS(a,1716,(iRa(c)|0)+12|0);break}case 11:{rS(a,1729,b);break}case 12:{rS(a,1730,b);rS(a,1716,(WQa(c)|0)+12|0);break}case 13:{rS(a,1731,b);rS(a,1716,(YRa(c)|0)+24|0);break}case 14:{rS(a,1732,b);rS(a,1716,(KRa(c)|0)+28|0);rS(a,1716,(KRa(c)|0)+24|0);break}case 24:{rS(a,1733,b);rS(a,1716,(YQa(c)|0)+24|0);rS(a,1716,(YQa(c)|0)+20|0);break}case 25:{rS(a,1734,b);rS(a,1716,(rQa(c)|0)+24|0);rS(a,1716,(rQa(c)|0)+20|0);rS(a,1716,(rQa(c)|0)+16|0);break}case 26:{rS(a,1735,b);rS(a,1716,(LQa(c)|0)+20|0);rS(a,1716,(LQa(c)|0)+16|0);rS(a,1716,(LQa(c)|0)+12|0);break}case 27:{rS(a,1736,b);rS(a,1716,(KQa(c)|0)+16|0);rS(a,1716,(KQa(c)|0)+12|0);break}case 15:{rS(a,1737,b);break}case 16:{rS(a,1738,b);rS(a,1716,(JRa(c)|0)+12|0);break}case 17:{rS(a,1739,b);rS(a,1716,(ARa(c)|0)+16|0);rS(a,1716,(ARa(c)|0)+12|0);break}case 18:{rS(a,1740,b);rS(a,1716,(yRa(c)|0)+16|0);rS(a,1716,(yRa(c)|0)+12|0);rS(a,1716,(yRa(c)|0)+8|0);break}case 19:{rS(a,1741,b);rS(a,1716,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1742,b);BP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1743,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1716,JDa(d,b)|0);c=b}}case 22:{rS(a,1744,b);break}case 23:{rS(a,1745,b);break}default:hb()}while(0);return}function Ye(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,352,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,351,JDa(d,b)|0);c=b}}case 2:{rS(a,353,b);xP(a,(qSa(c)|0)+16|0);rS(a,351,(qSa(c)|0)+12|0);rS(a,351,(qSa(c)|0)+8|0);break}case 3:{rS(a,354,b);rS(a,351,(gSa(c)|0)+12|0);break}case 4:{rS(a,355,b);xP(a,(WRa(c)|0)+16|0);xP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,356,b);rS(a,351,(IRa(c)|0)+28|0);xP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,357,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,351,JDa(d,b)|0);c=b}}case 7:{rS(a,358,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,351,JDa(d,b)|0);c=b}}case 8:{rS(a,359,b);b=DQa(c)|0;rS(a,351,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,351,JDa(d,b)|0);c=b}}case 9:{rS(a,360,b);break}case 10:{rS(a,361,b);rS(a,351,(iRa(c)|0)+12|0);break}case 11:{rS(a,362,b);break}case 12:{rS(a,363,b);rS(a,351,(WQa(c)|0)+12|0);break}case 13:{rS(a,364,b);rS(a,351,(YRa(c)|0)+24|0);break}case 14:{rS(a,365,b);rS(a,351,(KRa(c)|0)+28|0);rS(a,351,(KRa(c)|0)+24|0);break}case 24:{rS(a,366,b);rS(a,351,(YQa(c)|0)+24|0);rS(a,351,(YQa(c)|0)+20|0);break}case 25:{rS(a,367,b);rS(a,351,(rQa(c)|0)+24|0);rS(a,351,(rQa(c)|0)+20|0);rS(a,351,(rQa(c)|0)+16|0);break}case 26:{rS(a,368,b);rS(a,351,(LQa(c)|0)+20|0);rS(a,351,(LQa(c)|0)+16|0);rS(a,351,(LQa(c)|0)+12|0);break}case 27:{rS(a,369,b);rS(a,351,(KQa(c)|0)+16|0);rS(a,351,(KQa(c)|0)+12|0);break}case 15:{rS(a,370,b);break}case 16:{rS(a,371,b);rS(a,351,(JRa(c)|0)+12|0);break}case 17:{rS(a,372,b);rS(a,351,(ARa(c)|0)+16|0);rS(a,351,(ARa(c)|0)+12|0);break}case 18:{rS(a,373,b);rS(a,351,(yRa(c)|0)+16|0);rS(a,351,(yRa(c)|0)+12|0);rS(a,351,(yRa(c)|0)+8|0);break}case 19:{rS(a,374,b);rS(a,351,(_Ra(c)|0)+8|0);break}case 20:{rS(a,375,b);xP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,376,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,351,JDa(d,b)|0);c=b}}case 22:{rS(a,377,b);break}case 23:{rS(a,378,b);break}default:hb()}while(0);return}function Ze(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1512,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1511,JDa(d,b)|0);c=b}}case 2:{rS(a,1513,b);UP(a,(qSa(c)|0)+16|0);rS(a,1511,(qSa(c)|0)+12|0);rS(a,1511,(qSa(c)|0)+8|0);break}case 3:{rS(a,1514,b);rS(a,1511,(gSa(c)|0)+12|0);break}case 4:{rS(a,1515,b);UP(a,(WRa(c)|0)+16|0);UP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1516,b);rS(a,1511,(IRa(c)|0)+28|0);UP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1517,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1511,JDa(d,b)|0);c=b}}case 7:{rS(a,1518,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1511,JDa(d,b)|0);c=b}}case 8:{rS(a,1519,b);b=DQa(c)|0;rS(a,1511,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1511,JDa(d,b)|0);c=b}}case 9:{rS(a,1520,b);break}case 10:{rS(a,1521,b);rS(a,1511,(iRa(c)|0)+12|0);break}case 11:{rS(a,1522,b);break}case 12:{rS(a,1523,b);rS(a,1511,(WQa(c)|0)+12|0);break}case 13:{rS(a,1524,b);rS(a,1511,(YRa(c)|0)+24|0);break}case 14:{rS(a,1525,b);rS(a,1511,(KRa(c)|0)+28|0);rS(a,1511,(KRa(c)|0)+24|0);break}case 24:{rS(a,1526,b);rS(a,1511,(YQa(c)|0)+24|0);rS(a,1511,(YQa(c)|0)+20|0);break}case 25:{rS(a,1527,b);rS(a,1511,(rQa(c)|0)+24|0);rS(a,1511,(rQa(c)|0)+20|0);rS(a,1511,(rQa(c)|0)+16|0);break}case 26:{rS(a,1528,b);rS(a,1511,(LQa(c)|0)+20|0);rS(a,1511,(LQa(c)|0)+16|0);rS(a,1511,(LQa(c)|0)+12|0);break}case 27:{rS(a,1529,b);rS(a,1511,(KQa(c)|0)+16|0);rS(a,1511,(KQa(c)|0)+12|0);break}case 15:{rS(a,1530,b);break}case 16:{rS(a,1531,b);rS(a,1511,(JRa(c)|0)+12|0);break}case 17:{rS(a,1532,b);rS(a,1511,(ARa(c)|0)+16|0);rS(a,1511,(ARa(c)|0)+12|0);break}case 18:{rS(a,1533,b);rS(a,1511,(yRa(c)|0)+16|0);rS(a,1511,(yRa(c)|0)+12|0);rS(a,1511,(yRa(c)|0)+8|0);break}case 19:{rS(a,1534,b);rS(a,1511,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1535,b);UP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1536,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1511,JDa(d,b)|0);c=b}}case 22:{rS(a,1537,b);break}case 23:{rS(a,1538,b);break}default:hb()}while(0);return}function _e(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1062,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1061,JDa(d,b)|0);c=b}}case 2:{rS(a,1063,b);WP(a,(qSa(c)|0)+16|0);rS(a,1061,(qSa(c)|0)+12|0);rS(a,1061,(qSa(c)|0)+8|0);break}case 3:{rS(a,1064,b);rS(a,1061,(gSa(c)|0)+12|0);break}case 4:{rS(a,1065,b);WP(a,(WRa(c)|0)+16|0);WP(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1066,b);rS(a,1061,(IRa(c)|0)+28|0);WP(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1067,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1061,JDa(d,b)|0);c=b}}case 7:{rS(a,1068,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1061,JDa(d,b)|0);c=b}}case 8:{rS(a,1069,b);b=DQa(c)|0;rS(a,1061,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1061,JDa(d,b)|0);c=b}}case 9:{rS(a,1070,b);break}case 10:{rS(a,1071,b);rS(a,1061,(iRa(c)|0)+12|0);break}case 11:{rS(a,1072,b);break}case 12:{rS(a,1073,b);rS(a,1061,(WQa(c)|0)+12|0);break}case 13:{rS(a,1074,b);rS(a,1061,(YRa(c)|0)+24|0);break}case 14:{rS(a,1075,b);rS(a,1061,(KRa(c)|0)+28|0);rS(a,1061,(KRa(c)|0)+24|0);break}case 24:{rS(a,1076,b);rS(a,1061,(YQa(c)|0)+24|0);rS(a,1061,(YQa(c)|0)+20|0);break}case 25:{rS(a,1077,b);rS(a,1061,(rQa(c)|0)+24|0);rS(a,1061,(rQa(c)|0)+20|0);rS(a,1061,(rQa(c)|0)+16|0);break}case 26:{rS(a,1078,b);rS(a,1061,(LQa(c)|0)+20|0);rS(a,1061,(LQa(c)|0)+16|0);rS(a,1061,(LQa(c)|0)+12|0);break}case 27:{rS(a,1079,b);rS(a,1061,(KQa(c)|0)+16|0);rS(a,1061,(KQa(c)|0)+12|0);break}case 15:{rS(a,1080,b);break}case 16:{rS(a,1081,b);rS(a,1061,(JRa(c)|0)+12|0);break}case 17:{rS(a,1082,b);rS(a,1061,(ARa(c)|0)+16|0);rS(a,1061,(ARa(c)|0)+12|0);break}case 18:{rS(a,1083,b);rS(a,1061,(yRa(c)|0)+16|0);rS(a,1061,(yRa(c)|0)+12|0);rS(a,1061,(yRa(c)|0)+8|0);break}case 19:{rS(a,1084,b);rS(a,1061,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1085,b);WP(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1086,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1061,JDa(d,b)|0);c=b}}case 22:{rS(a,1087,b);break}case 23:{rS(a,1088,b);break}default:hb()}while(0);return}function $e(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;A=u;u=u+48|0;B=A+36|0;y=A+32|0;j=A+24|0;k=A+20|0;m=A+28|0;l=A;p=A+16|0;s=A+12|0;t=A+8|0;z=A+4|0;g=a+40|0;h=a+44|0;b=a+52|0;c=0;while(1){f[B>>2]=c;d=f[g>>2]|0;if(c>>>0>=(uZa(d)|0)>>>0)break;v=f[b>>2]|0;c=e_(h,B)|0;f[c>>2]=v;c=(f[B>>2]|0)+1|0}c=f[d+24>>2]|0;v=a+12|0;b=f[d+20>>2]|0;while(1){if((b|0)==(c|0))break;f[B>>2]=f[b>>2];i=YY(v,B)|0;f[i>>2]=(f[i>>2]|0)+1;b=b+4|0}yUa(B);c=f[g>>2]|0;b=uZa(c)|0;a:while(1){f[y>>2]=b;if(b>>>0>=(fQa(c)|0)>>>0){i=9;break}d=uZa(c)|0;x=0;b=ia(80,c|0,b|0)|0;i=x;x=0;if(i&1){i=16;break}f[j>>2]=b;x=0;b=ia(136,B|0,j|0)|0;i=x;x=0;if(i&1){i=16;break}f[b>>2]=(f[b>>2]|0)+1;do if((f[j>>2]|0)==1){f[k>>2]=1;x=0;b=ia(135,B|0,k|0)|0;i=x;x=0;if(i&1){i=18;break a}b=f[b>>2]|0;x=0;c=ia(137,h|0,y|0)|0;i=x;x=0;if(i&1){i=18;break a}f[c>>2]=d+-1+b}else{f[k>>2]=1;x=0;b=ia(135,v|0,k|0)|0;i=x;x=0;if(i&1){i=24;break a}d=(f[b>>2]|0)+d|0;if((f[j>>2]|0)==2){f[k>>2]=2;x=0;b=ia(135,B|0,k|0)|0;i=x;x=0;if(i&1){i=25;break a}b=f[b>>2]|0;x=0;c=ia(137,h|0,y|0)|0;i=x;x=0;if(i&1){i=25;break a}f[c>>2]=d+-1+b;break}f[k>>2]=2;x=0;b=ia(135,v|0,k|0)|0;i=x;x=0;if(i&1){i=31;break a}e=(f[b>>2]|0)+d|0;if((f[j>>2]|0)==3){f[k>>2]=3;x=0;b=ia(135,B|0,k|0)|0;i=x;x=0;if(i&1){i=32;break a}b=f[b>>2]|0;x=0;c=ia(137,h|0,y|0)|0;i=x;x=0;if(i&1){i=32;break a}f[c>>2]=e+-1+b;break}f[k>>2]=3;x=0;b=ia(135,v|0,k|0)|0;i=x;x=0;if(i&1){i=38;break a}d=f[b>>2]|0;if((f[j>>2]|0)!=4){i=40;break a}f[k>>2]=4;x=0;b=ia(135,B|0,k|0)|0;i=x;x=0;if(i&1){i=39;break a}b=f[b>>2]|0;x=0;c=ia(137,h|0,y|0)|0;i=x;x=0;if(i&1){i=39;break a}f[c>>2]=e+-1+d+b}while(0);b=(f[y>>2]|0)+1|0;c=f[g>>2]|0}b:switch(i|0){case 9:{h=a+28|0;g=f[h>>2]|0;f[y>>2]=1;x=0;b=ia(135,v|0,y|0)|0;a=x;x=0;if(a&1)b=Ia()|0;else{e=f[b>>2]|0;f[j>>2]=2;x=0;b=ia(135,v|0,j|0)|0;j=x;x=0;if(j&1)b=Ia()|0;else{d=f[b>>2]|0;f[k>>2]=3;x=0;b=ia(135,v|0,k|0)|0;k=x;x=0;if(k&1)b=Ia()|0;else{c=f[b>>2]|0;f[l>>2]=4;x=0;b=ia(135,v|0,l|0)|0;l=x;x=0;if(!(l&1)?(f4a(m,((d|0)!=0&1)+((e|0)!=0&1)+((c|0)!=0&1)+((f[b>>2]|0)!=0&1)|0),x=0,ia(138,g|0,f[m>>2]|0)|0,m=x,x=0,!(m&1)):0){f[y>>2]=1;x=0;b=ia(135,v|0,y|0)|0;m=x;x=0;if(m&1){b=Ia()|0;break}do if(f[b>>2]|0){b=f[h>>2]|0;f[y>>2]=1;x=0;c=ia(135,v|0,y|0)|0;m=x;x=0;if(((!(m&1)?(f4a(p,f[c>>2]|0),x=0,n=ia(138,b|0,f[p>>2]|0)|0,p=x,x=0,!(p&1)):0)?(x=0,o=ga(287,1)|0,p=x,x=0,!(p&1)):0)?(x=0,ia(139,n|0,o|0)|0,p=x,x=0,!(p&1)):0)break;b=Ia()|0;break b}while(0);f[y>>2]=2;x=0;b=ia(135,v|0,y|0)|0;p=x;x=0;if(p&1){b=Ia()|0;break}do if(f[b>>2]|0){b=f[h>>2]|0;f[y>>2]=2;x=0;c=ia(135,v|0,y|0)|0;p=x;x=0;if(((!(p&1)?(f4a(s,f[c>>2]|0),x=0,q=ia(138,b|0,f[s>>2]|0)|0,s=x,x=0,!(s&1)):0)?(x=0,r=ga(287,2)|0,s=x,x=0,!(s&1)):0)?(x=0,ia(139,q|0,r|0)|0,s=x,x=0,!(s&1)):0)break;b=Ia()|0;break b}while(0);f[y>>2]=3;x=0;b=ia(135,v|0,y|0)|0;s=x;x=0;if(s&1){b=Ia()|0;break}c:do if(f[b>>2]|0){b=f[h>>2]|0;f[y>>2]=3;x=0;c=ia(135,v|0,y|0)|0;s=x;x=0;do if(!(s&1)?(f4a(t,f[c>>2]|0),x=0,w=ia(138,b|0,f[t>>2]|0)|0,t=x,x=0,!(t&1)):0){x=0;b=ga(287,3)|0;t=x;x=0;if(t&1)break;x=0;ia(139,w|0,b|0)|0;w=x;x=0;if(w&1)break;break c}while(0);b=Ia()|0;break b}while(0);f[y>>2]=4;x=0;b=ia(135,v|0,y|0)|0;w=x;x=0;if(w&1){b=Ia()|0;break}d:do if(f[b>>2]|0){c=f[h>>2]|0;f[y>>2]=4;x=0;b=ia(135,v|0,y|0)|0;y=x;x=0;do if(!(y&1)){f4a(z,f[b>>2]|0);x=0;b=ia(138,c|0,f[z>>2]|0)|0;z=x;x=0;if(z&1)break;x=0;c=ga(287,4)|0;z=x;x=0;if(z&1)break;x=0;ia(139,b|0,c|0)|0;z=x;x=0;if(z&1)break;break d}while(0);b=Ia()|0;break b}while(0);mIa(B);u=A;return}b=Ia()|0}}}break}case 16:{b=Ia()|0;i=17;break}case 18:{b=Ia()|0;i=42;break}case 24:{b=Ia()|0;i=42;break}case 25:{b=Ia()|0;i=42;break}case 31:{b=Ia()|0;i=42;break}case 32:{b=Ia()|0;i=42;break}case 38:{b=Ia()|0;i=42;break}case 39:{b=Ia()|0;i=42;break}case 40:{x=0;sa(5);x=0;b=Ia()|0;i=17;break}}if((i|0)==17)i=42;mIa(B);Ua(b|0)}function af(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1839,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1838,JDa(d,b)|0);c=b}}case 2:{rS(a,1840,b);bQ(a,(qSa(c)|0)+16|0);rS(a,1838,(qSa(c)|0)+12|0);rS(a,1838,(qSa(c)|0)+8|0);break}case 3:{rS(a,1841,b);rS(a,1838,(gSa(c)|0)+12|0);break}case 4:{rS(a,1842,b);bQ(a,(WRa(c)|0)+16|0);bQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1843,b);rS(a,1838,(IRa(c)|0)+28|0);bQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1844,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1838,JDa(d,b)|0);c=b}}case 7:{rS(a,1845,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1838,JDa(d,b)|0);c=b}}case 8:{rS(a,1846,b);b=DQa(c)|0;rS(a,1838,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1838,JDa(d,b)|0);c=b}}case 9:{rS(a,1847,b);break}case 10:{rS(a,1848,b);rS(a,1838,(iRa(c)|0)+12|0);break}case 11:{rS(a,1849,b);break}case 12:{rS(a,1850,b);rS(a,1838,(WQa(c)|0)+12|0);break}case 13:{rS(a,1851,b);rS(a,1838,(YRa(c)|0)+24|0);break}case 14:{rS(a,1852,b);rS(a,1838,(KRa(c)|0)+28|0);rS(a,1838,(KRa(c)|0)+24|0);break}case 24:{rS(a,1853,b);rS(a,1838,(YQa(c)|0)+24|0);rS(a,1838,(YQa(c)|0)+20|0);break}case 25:{rS(a,1854,b);rS(a,1838,(rQa(c)|0)+24|0);rS(a,1838,(rQa(c)|0)+20|0);rS(a,1838,(rQa(c)|0)+16|0);break}case 26:{rS(a,1855,b);rS(a,1838,(LQa(c)|0)+20|0);rS(a,1838,(LQa(c)|0)+16|0);rS(a,1838,(LQa(c)|0)+12|0);break}case 27:{rS(a,1856,b);rS(a,1838,(KQa(c)|0)+16|0);rS(a,1838,(KQa(c)|0)+12|0);break}case 15:{rS(a,1857,b);break}case 16:{rS(a,1858,b);rS(a,1838,(JRa(c)|0)+12|0);break}case 17:{rS(a,1859,b);rS(a,1838,(ARa(c)|0)+16|0);rS(a,1838,(ARa(c)|0)+12|0);break}case 18:{rS(a,1860,b);rS(a,1838,(yRa(c)|0)+16|0);rS(a,1838,(yRa(c)|0)+12|0);rS(a,1838,(yRa(c)|0)+8|0);break}case 19:{rS(a,1861,b);rS(a,1838,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1862,b);bQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1863,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1838,JDa(d,b)|0);c=b}}case 22:{rS(a,1864,b);break}case 23:{rS(a,1865,b);break}default:hb()}while(0);return}function bf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k;do if(b[a+33>>0]|0){i=yCa(134176,110775)|0;ZXa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){JCa(g);Wq(i,e)|0;du(i)|0;break}l=Ia()|0;JCa(g);Ua(l|0)}while(0);l=c+20|0;jGa(a,f[l>>2]|0);do if((f[(f[l>>2]|0)+4>>2]|0)!=5?(l=c+24|0,jGa(a,f[l>>2]|0),(f[(f[l>>2]|0)+4>>2]|0)!=5):0){e=c+4|0;g=a+28|0;d=f[g>>2]|0;if((f[e>>2]|0)==5){dTa(d);break}Ev(d,-2)|0;a:do switch(f[c+8>>2]|0){case 0:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,32)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,33)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,30)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,34)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,35)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,36)|0;j=d;break a}case 8:{Ev(f[g>>2]|0,31)|0;j=d;break a}default:hb()}break}default:hb()}break}case 1:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,39)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,40)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,37)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,41)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,42)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,43)|0;j=d;break a}case 8:{Ev(f[g>>2]|0,38)|0;j=d;break a}default:hb()}break}default:hb()}break}case 2:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,46)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,47)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,44)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,48)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,49)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,50)|0;j=d;break a}case 8:{Ev(f[g>>2]|0,45)|0;j=d;break a}default:hb()}break}default:hb()}break}case 3:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,53)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,54)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,51)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,55)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,56)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,57)|0;j=d;break a}case 8:{Ev(f[g>>2]|0,52)|0;j=d;break a}default:hb()}break}default:hb()}break}case 4:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,60)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,61)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,58)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,62)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,63)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,64)|0;j=d;break a}case 8:{Ev(f[g>>2]|0,59)|0;j=d;break a}default:hb()}break}default:hb()}break}case 5:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,67)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,68)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,65)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Ev(f[g>>2]|0,69)|0;j=d;break a}case 2:{Ev(f[g>>2]|0,70)|0;j=d;break a}case 4:{Ev(f[g>>2]|0,71)|0;j=d;break a}case 8:{Ev(f[g>>2]|0,66)|0;j=d;break a}default:hb()}break}default:hb()}break}default:hb()}while(0);l=h[j>>0]|0;CX(a,l,l,Bbb(f[c+16>>2]|0)|0)}while(0);u=k;return}function cf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2985,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2984,JDa(d,b)|0);c=b}}case 2:{rS(a,2986,b);lQ(a,(qSa(c)|0)+16|0);rS(a,2984,(qSa(c)|0)+12|0);rS(a,2984,(qSa(c)|0)+8|0);break}case 3:{rS(a,2987,b);rS(a,2984,(gSa(c)|0)+12|0);break}case 4:{rS(a,2988,b);lQ(a,(WRa(c)|0)+16|0);lQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2989,b);rS(a,2984,(IRa(c)|0)+28|0);lQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2990,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2984,JDa(d,b)|0);c=b}}case 7:{rS(a,2991,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2984,JDa(d,b)|0);c=b}}case 8:{rS(a,2992,b);b=DQa(c)|0;rS(a,2984,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2984,JDa(d,b)|0);c=b}}case 9:{rS(a,2993,b);break}case 10:{rS(a,2994,b);rS(a,2984,(iRa(c)|0)+12|0);break}case 11:{rS(a,2995,b);break}case 12:{rS(a,2996,b);rS(a,2984,(WQa(c)|0)+12|0);break}case 13:{rS(a,2997,b);rS(a,2984,(YRa(c)|0)+24|0);break}case 14:{rS(a,2998,b);rS(a,2984,(KRa(c)|0)+28|0);rS(a,2984,(KRa(c)|0)+24|0);break}case 24:{rS(a,2999,b);rS(a,2984,(YQa(c)|0)+24|0);rS(a,2984,(YQa(c)|0)+20|0);break}case 25:{rS(a,3e3,b);rS(a,2984,(rQa(c)|0)+24|0);rS(a,2984,(rQa(c)|0)+20|0);rS(a,2984,(rQa(c)|0)+16|0);break}case 26:{rS(a,3001,b);rS(a,2984,(LQa(c)|0)+20|0);rS(a,2984,(LQa(c)|0)+16|0);rS(a,2984,(LQa(c)|0)+12|0);break}case 27:{rS(a,3002,b);rS(a,2984,(KQa(c)|0)+16|0);rS(a,2984,(KQa(c)|0)+12|0);break}case 15:{rS(a,3003,b);break}case 16:{rS(a,3004,b);rS(a,2984,(JRa(c)|0)+12|0);break}case 17:{rS(a,3005,b);rS(a,2984,(ARa(c)|0)+16|0);rS(a,2984,(ARa(c)|0)+12|0);break}case 18:{rS(a,3006,b);rS(a,2984,(yRa(c)|0)+16|0);rS(a,2984,(yRa(c)|0)+12|0);rS(a,2984,(yRa(c)|0)+8|0);break}case 19:{rS(a,3007,b);rS(a,2984,(_Ra(c)|0)+8|0);break}case 20:{rS(a,3008,b);lQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,3009,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2984,JDa(d,b)|0);c=b}}case 22:{rS(a,3010,b);break}case 23:{rS(a,3011,b);break}default:hb()}while(0);return}function df(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,650,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,649,JDa(d,b)|0);c=b}}case 2:{rS(a,651,b);$P(a,(qSa(c)|0)+16|0);rS(a,649,(qSa(c)|0)+12|0);rS(a,649,(qSa(c)|0)+8|0);break}case 3:{rS(a,652,b);rS(a,649,(gSa(c)|0)+12|0);break}case 4:{rS(a,653,b);$P(a,(WRa(c)|0)+16|0);$P(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,654,b);rS(a,649,(IRa(c)|0)+28|0);$P(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,655,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,649,JDa(d,b)|0);c=b}}case 7:{rS(a,656,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,649,JDa(d,b)|0);c=b}}case 8:{rS(a,657,b);b=DQa(c)|0;rS(a,649,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,649,JDa(d,b)|0);c=b}}case 9:{rS(a,658,b);break}case 10:{rS(a,659,b);rS(a,649,(iRa(c)|0)+12|0);break}case 11:{rS(a,660,b);break}case 12:{rS(a,661,b);rS(a,649,(WQa(c)|0)+12|0);break}case 13:{rS(a,662,b);rS(a,649,(YRa(c)|0)+24|0);break}case 14:{rS(a,663,b);rS(a,649,(KRa(c)|0)+28|0);rS(a,649,(KRa(c)|0)+24|0);break}case 24:{rS(a,664,b);rS(a,649,(YQa(c)|0)+24|0);rS(a,649,(YQa(c)|0)+20|0);break}case 25:{rS(a,665,b);rS(a,649,(rQa(c)|0)+24|0);rS(a,649,(rQa(c)|0)+20|0);rS(a,649,(rQa(c)|0)+16|0);break}case 26:{rS(a,666,b);rS(a,649,(LQa(c)|0)+20|0);rS(a,649,(LQa(c)|0)+16|0);rS(a,649,(LQa(c)|0)+12|0);break}case 27:{rS(a,667,b);rS(a,649,(KQa(c)|0)+16|0);rS(a,649,(KQa(c)|0)+12|0);break}case 15:{rS(a,668,b);break}case 16:{rS(a,669,b);rS(a,649,(JRa(c)|0)+12|0);break}case 17:{rS(a,670,b);rS(a,649,(ARa(c)|0)+16|0);rS(a,649,(ARa(c)|0)+12|0);break}case 18:{rS(a,671,b);rS(a,649,(yRa(c)|0)+16|0);rS(a,649,(yRa(c)|0)+12|0);rS(a,649,(yRa(c)|0)+8|0);break}case 19:{rS(a,672,b);rS(a,649,(_Ra(c)|0)+8|0);break}case 20:{rS(a,673,b);$P(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,674,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,649,JDa(d,b)|0);c=b}}case 22:{rS(a,675,b);break}case 23:{rS(a,676,b);break}default:hb()}while(0);return}function ef(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,3013,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3012,JDa(d,b)|0);c=b}}case 2:{rS(a,3014,b);qQ(a,(qSa(c)|0)+16|0);rS(a,3012,(qSa(c)|0)+12|0);rS(a,3012,(qSa(c)|0)+8|0);break}case 3:{rS(a,3015,b);rS(a,3012,(gSa(c)|0)+12|0);break}case 4:{rS(a,3016,b);qQ(a,(WRa(c)|0)+16|0);qQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,3017,b);rS(a,3012,(IRa(c)|0)+28|0);qQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,3018,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3012,JDa(d,b)|0);c=b}}case 7:{rS(a,3019,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3012,JDa(d,b)|0);c=b}}case 8:{rS(a,3020,b);b=DQa(c)|0;rS(a,3012,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3012,JDa(d,b)|0);c=b}}case 9:{rS(a,3021,b);break}case 10:{rS(a,3022,b);rS(a,3012,(iRa(c)|0)+12|0);break}case 11:{rS(a,3023,b);break}case 12:{rS(a,3024,b);rS(a,3012,(WQa(c)|0)+12|0);break}case 13:{rS(a,3025,b);rS(a,3012,(YRa(c)|0)+24|0);break}case 14:{rS(a,3026,b);rS(a,3012,(KRa(c)|0)+28|0);rS(a,3012,(KRa(c)|0)+24|0);break}case 24:{rS(a,3027,b);rS(a,3012,(YQa(c)|0)+24|0);rS(a,3012,(YQa(c)|0)+20|0);break}case 25:{rS(a,3028,b);rS(a,3012,(rQa(c)|0)+24|0);rS(a,3012,(rQa(c)|0)+20|0);rS(a,3012,(rQa(c)|0)+16|0);break}case 26:{rS(a,3029,b);rS(a,3012,(LQa(c)|0)+20|0);rS(a,3012,(LQa(c)|0)+16|0);rS(a,3012,(LQa(c)|0)+12|0);break}case 27:{rS(a,3030,b);rS(a,3012,(KQa(c)|0)+16|0);rS(a,3012,(KQa(c)|0)+12|0);break}case 15:{rS(a,3031,b);break}case 16:{rS(a,3032,b);rS(a,3012,(JRa(c)|0)+12|0);break}case 17:{rS(a,3033,b);rS(a,3012,(ARa(c)|0)+16|0);rS(a,3012,(ARa(c)|0)+12|0);break}case 18:{rS(a,3034,b);rS(a,3012,(yRa(c)|0)+16|0);rS(a,3012,(yRa(c)|0)+12|0);rS(a,3012,(yRa(c)|0)+8|0);break}case 19:{rS(a,3035,b);rS(a,3012,(_Ra(c)|0)+8|0);break}case 20:{rS(a,3036,b);qQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,3037,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3012,JDa(d,b)|0);c=b}}case 22:{rS(a,3038,b);break}case 23:{rS(a,3039,b);break}default:hb()}while(0);return}function ff(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1464,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1461,JDa(d,b)|0);c=b}}case 2:{rS(a,1465,b);yQ(a,(qSa(c)|0)+16|0);rS(a,1461,(qSa(c)|0)+12|0);rS(a,1461,(qSa(c)|0)+8|0);break}case 3:{rS(a,1466,b);rS(a,1461,(gSa(c)|0)+12|0);break}case 4:{rS(a,1467,b);yQ(a,(WRa(c)|0)+16|0);yQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1468,b);rS(a,1461,(IRa(c)|0)+28|0);yQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1469,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1461,JDa(d,b)|0);c=b}}case 7:{rS(a,1470,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1461,JDa(d,b)|0);c=b}}case 8:{rS(a,1471,b);b=DQa(c)|0;rS(a,1461,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1461,JDa(d,b)|0);c=b}}case 9:{rS(a,1472,b);break}case 10:{rS(a,1473,b);rS(a,1461,(iRa(c)|0)+12|0);break}case 11:{rS(a,1474,b);break}case 12:{rS(a,1475,b);rS(a,1461,(WQa(c)|0)+12|0);break}case 13:{rS(a,1476,b);rS(a,1461,(YRa(c)|0)+24|0);break}case 14:{rS(a,1477,b);rS(a,1461,(KRa(c)|0)+28|0);rS(a,1461,(KRa(c)|0)+24|0);break}case 24:{rS(a,1478,b);rS(a,1461,(YQa(c)|0)+24|0);rS(a,1461,(YQa(c)|0)+20|0);break}case 25:{rS(a,1479,b);rS(a,1461,(rQa(c)|0)+24|0);rS(a,1461,(rQa(c)|0)+20|0);rS(a,1461,(rQa(c)|0)+16|0);break}case 26:{rS(a,1480,b);rS(a,1461,(LQa(c)|0)+20|0);rS(a,1461,(LQa(c)|0)+16|0);rS(a,1461,(LQa(c)|0)+12|0);break}case 27:{rS(a,1481,b);rS(a,1461,(KQa(c)|0)+16|0);rS(a,1461,(KQa(c)|0)+12|0);break}case 15:{rS(a,1482,b);break}case 16:{rS(a,1483,b);rS(a,1461,(JRa(c)|0)+12|0);break}case 17:{rS(a,1484,b);rS(a,1461,(ARa(c)|0)+16|0);rS(a,1461,(ARa(c)|0)+12|0);break}case 18:{rS(a,1485,b);rS(a,1461,(yRa(c)|0)+16|0);rS(a,1461,(yRa(c)|0)+12|0);rS(a,1461,(yRa(c)|0)+8|0);break}case 19:{rS(a,1486,b);rS(a,1461,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1487,b);yQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1488,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1461,JDa(d,b)|0);c=b}}case 22:{rS(a,1489,b);break}case 23:{rS(a,1490,b);break}default:hb()}while(0);return}function gf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2926,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2925,JDa(d,b)|0);c=b}}case 2:{rS(a,2927,b);AQ(a,(qSa(c)|0)+16|0);rS(a,2925,(qSa(c)|0)+12|0);rS(a,2925,(qSa(c)|0)+8|0);break}case 3:{rS(a,2928,b);rS(a,2925,(gSa(c)|0)+12|0);break}case 4:{rS(a,2929,b);AQ(a,(WRa(c)|0)+16|0);AQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2930,b);rS(a,2925,(IRa(c)|0)+28|0);AQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2931,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2925,JDa(d,b)|0);c=b}}case 7:{rS(a,2932,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2925,JDa(d,b)|0);c=b}}case 8:{rS(a,2933,b);b=DQa(c)|0;rS(a,2925,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2925,JDa(d,b)|0);c=b}}case 9:{rS(a,2934,b);break}case 10:{rS(a,2935,b);rS(a,2925,(iRa(c)|0)+12|0);break}case 11:{rS(a,2936,b);break}case 12:{rS(a,2937,b);rS(a,2925,(WQa(c)|0)+12|0);break}case 13:{rS(a,2938,b);rS(a,2925,(YRa(c)|0)+24|0);break}case 14:{rS(a,2939,b);rS(a,2925,(KRa(c)|0)+28|0);rS(a,2925,(KRa(c)|0)+24|0);break}case 24:{rS(a,2940,b);rS(a,2925,(YQa(c)|0)+24|0);rS(a,2925,(YQa(c)|0)+20|0);break}case 25:{rS(a,2941,b);rS(a,2925,(rQa(c)|0)+24|0);rS(a,2925,(rQa(c)|0)+20|0);rS(a,2925,(rQa(c)|0)+16|0);break}case 26:{rS(a,2942,b);rS(a,2925,(LQa(c)|0)+20|0);rS(a,2925,(LQa(c)|0)+16|0);rS(a,2925,(LQa(c)|0)+12|0);break}case 27:{rS(a,2943,b);rS(a,2925,(KQa(c)|0)+16|0);rS(a,2925,(KQa(c)|0)+12|0);break}case 15:{rS(a,2944,b);break}case 16:{rS(a,2945,b);rS(a,2925,(JRa(c)|0)+12|0);break}case 17:{rS(a,2946,b);rS(a,2925,(ARa(c)|0)+16|0);rS(a,2925,(ARa(c)|0)+12|0);break}case 18:{rS(a,2947,b);rS(a,2925,(yRa(c)|0)+16|0);rS(a,2925,(yRa(c)|0)+12|0);rS(a,2925,(yRa(c)|0)+8|0);break}case 19:{rS(a,2948,b);rS(a,2925,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2949,b);AQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2950,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2925,JDa(d,b)|0);c=b}}case 22:{rS(a,2951,b);break}case 23:{rS(a,2952,b);break}default:hb()}while(0);return}function hf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2220,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2219,JDa(d,b)|0);c=b}}case 2:{rS(a,2221,b);VQ(a,(qSa(c)|0)+16|0);rS(a,2219,(qSa(c)|0)+12|0);rS(a,2219,(qSa(c)|0)+8|0);break}case 3:{rS(a,2222,b);rS(a,2219,(gSa(c)|0)+12|0);break}case 4:{rS(a,2223,b);VQ(a,(WRa(c)|0)+16|0);VQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2224,b);rS(a,2219,(IRa(c)|0)+28|0);VQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2225,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2219,JDa(d,b)|0);c=b}}case 7:{rS(a,2226,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2219,JDa(d,b)|0);c=b}}case 8:{rS(a,2227,b);b=DQa(c)|0;rS(a,2219,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2219,JDa(d,b)|0);c=b}}case 9:{rS(a,2228,b);break}case 10:{rS(a,2229,b);rS(a,2219,(iRa(c)|0)+12|0);break}case 11:{rS(a,2230,b);break}case 12:{rS(a,2231,b);rS(a,2219,(WQa(c)|0)+12|0);break}case 13:{rS(a,2232,b);rS(a,2219,(YRa(c)|0)+24|0);break}case 14:{rS(a,2233,b);rS(a,2219,(KRa(c)|0)+28|0);rS(a,2219,(KRa(c)|0)+24|0);break}case 24:{rS(a,2234,b);rS(a,2219,(YQa(c)|0)+24|0);rS(a,2219,(YQa(c)|0)+20|0);break}case 25:{rS(a,2235,b);rS(a,2219,(rQa(c)|0)+24|0);rS(a,2219,(rQa(c)|0)+20|0);rS(a,2219,(rQa(c)|0)+16|0);break}case 26:{rS(a,2236,b);rS(a,2219,(LQa(c)|0)+20|0);rS(a,2219,(LQa(c)|0)+16|0);rS(a,2219,(LQa(c)|0)+12|0);break}case 27:{rS(a,2237,b);rS(a,2219,(KQa(c)|0)+16|0);rS(a,2219,(KQa(c)|0)+12|0);break}case 15:{rS(a,2238,b);break}case 16:{rS(a,2239,b);rS(a,2219,(JRa(c)|0)+12|0);break}case 17:{rS(a,2240,b);rS(a,2219,(ARa(c)|0)+16|0);rS(a,2219,(ARa(c)|0)+12|0);break}case 18:{rS(a,2241,b);rS(a,2219,(yRa(c)|0)+16|0);rS(a,2219,(yRa(c)|0)+12|0);rS(a,2219,(yRa(c)|0)+8|0);break}case 19:{rS(a,2242,b);rS(a,2219,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2243,b);VQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2244,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2219,JDa(d,b)|0);c=b}}case 22:{rS(a,2245,b);break}case 23:{rS(a,2246,b);break}default:hb()}while(0);return}function jf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2954,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2953,JDa(d,b)|0);c=b}}case 2:{rS(a,2955,b);_Q(a,(qSa(c)|0)+16|0);rS(a,2953,(qSa(c)|0)+12|0);rS(a,2953,(qSa(c)|0)+8|0);break}case 3:{rS(a,2956,b);rS(a,2953,(gSa(c)|0)+12|0);break}case 4:{rS(a,2957,b);_Q(a,(WRa(c)|0)+16|0);_Q(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2958,b);rS(a,2953,(IRa(c)|0)+28|0);_Q(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2959,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2953,JDa(d,b)|0);c=b}}case 7:{rS(a,2960,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2953,JDa(d,b)|0);c=b}}case 8:{rS(a,2961,b);b=DQa(c)|0;rS(a,2953,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2953,JDa(d,b)|0);c=b}}case 9:{rS(a,2962,b);break}case 10:{rS(a,2963,b);rS(a,2953,(iRa(c)|0)+12|0);break}case 11:{rS(a,2964,b);break}case 12:{rS(a,2965,b);rS(a,2953,(WQa(c)|0)+12|0);break}case 13:{rS(a,2966,b);rS(a,2953,(YRa(c)|0)+24|0);break}case 14:{rS(a,2967,b);rS(a,2953,(KRa(c)|0)+28|0);rS(a,2953,(KRa(c)|0)+24|0);break}case 24:{rS(a,2968,b);rS(a,2953,(YQa(c)|0)+24|0);rS(a,2953,(YQa(c)|0)+20|0);break}case 25:{rS(a,2969,b);rS(a,2953,(rQa(c)|0)+24|0);rS(a,2953,(rQa(c)|0)+20|0);rS(a,2953,(rQa(c)|0)+16|0);break}case 26:{rS(a,2970,b);rS(a,2953,(LQa(c)|0)+20|0);rS(a,2953,(LQa(c)|0)+16|0);rS(a,2953,(LQa(c)|0)+12|0);break}case 27:{rS(a,2971,b);rS(a,2953,(KQa(c)|0)+16|0);rS(a,2953,(KQa(c)|0)+12|0);break}case 15:{rS(a,2972,b);break}case 16:{rS(a,2973,b);rS(a,2953,(JRa(c)|0)+12|0);break}case 17:{rS(a,2974,b);rS(a,2953,(ARa(c)|0)+16|0);rS(a,2953,(ARa(c)|0)+12|0);break}case 18:{rS(a,2975,b);rS(a,2953,(yRa(c)|0)+16|0);rS(a,2953,(yRa(c)|0)+12|0);rS(a,2953,(yRa(c)|0)+8|0);break}case 19:{rS(a,2976,b);rS(a,2953,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2977,b);_Q(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2978,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2953,JDa(d,b)|0);c=b}}case 22:{rS(a,2979,b);break}case 23:{rS(a,2980,b);break}default:hb()}while(0);return}function kf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,684,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,683,JDa(d,b)|0);c=b}}case 2:{rS(a,685,b);MQ(a,(qSa(c)|0)+16|0);rS(a,683,(qSa(c)|0)+12|0);rS(a,683,(qSa(c)|0)+8|0);break}case 3:{rS(a,686,b);rS(a,683,(gSa(c)|0)+12|0);break}case 4:{rS(a,687,b);MQ(a,(WRa(c)|0)+16|0);MQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,688,b);rS(a,683,(IRa(c)|0)+28|0);MQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,689,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,683,JDa(d,b)|0);c=b}}case 7:{rS(a,690,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,683,JDa(d,b)|0);c=b}}case 8:{rS(a,691,b);b=DQa(c)|0;rS(a,683,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,683,JDa(d,b)|0);c=b}}case 9:{rS(a,692,b);break}case 10:{rS(a,693,b);rS(a,683,(iRa(c)|0)+12|0);break}case 11:{rS(a,694,b);break}case 12:{rS(a,695,b);rS(a,683,(WQa(c)|0)+12|0);break}case 13:{rS(a,696,b);rS(a,683,(YRa(c)|0)+24|0);break}case 14:{rS(a,697,b);rS(a,683,(KRa(c)|0)+28|0);rS(a,683,(KRa(c)|0)+24|0);break}case 24:{rS(a,698,b);rS(a,683,(YQa(c)|0)+24|0);rS(a,683,(YQa(c)|0)+20|0);break}case 25:{rS(a,699,b);rS(a,683,(rQa(c)|0)+24|0);rS(a,683,(rQa(c)|0)+20|0);rS(a,683,(rQa(c)|0)+16|0);break}case 26:{rS(a,700,b);rS(a,683,(LQa(c)|0)+20|0);rS(a,683,(LQa(c)|0)+16|0);rS(a,683,(LQa(c)|0)+12|0);break}case 27:{rS(a,701,b);rS(a,683,(KQa(c)|0)+16|0);rS(a,683,(KQa(c)|0)+12|0);break}case 15:{rS(a,702,b);break}case 16:{rS(a,703,b);rS(a,683,(JRa(c)|0)+12|0);break}case 17:{rS(a,704,b);rS(a,683,(ARa(c)|0)+16|0);rS(a,683,(ARa(c)|0)+12|0);break}case 18:{rS(a,705,b);rS(a,683,(yRa(c)|0)+16|0);rS(a,683,(yRa(c)|0)+12|0);rS(a,683,(yRa(c)|0)+8|0);break}case 19:{rS(a,706,b);rS(a,683,(_Ra(c)|0)+8|0);break}case 20:{rS(a,707,b);MQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,708,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,683,JDa(d,b)|0);c=b}}case 22:{rS(a,709,b);break}case 23:{rS(a,710,b);break}default:hb()}while(0);return}function lf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,558,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,557,JDa(d,b)|0);c=b}}case 2:{rS(a,559,b);JQ(a,(qSa(c)|0)+16|0);rS(a,557,(qSa(c)|0)+12|0);rS(a,557,(qSa(c)|0)+8|0);break}case 3:{rS(a,560,b);rS(a,557,(gSa(c)|0)+12|0);break}case 4:{rS(a,561,b);JQ(a,(WRa(c)|0)+16|0);JQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,562,b);rS(a,557,(IRa(c)|0)+28|0);JQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,563,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,557,JDa(d,b)|0);c=b}}case 7:{rS(a,564,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,557,JDa(d,b)|0);c=b}}case 8:{rS(a,565,b);b=DQa(c)|0;rS(a,557,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,557,JDa(d,b)|0);c=b}}case 9:{rS(a,566,b);break}case 10:{rS(a,567,b);rS(a,557,(iRa(c)|0)+12|0);break}case 11:{rS(a,568,b);break}case 12:{rS(a,569,b);rS(a,557,(WQa(c)|0)+12|0);break}case 13:{rS(a,570,b);rS(a,557,(YRa(c)|0)+24|0);break}case 14:{rS(a,571,b);rS(a,557,(KRa(c)|0)+28|0);rS(a,557,(KRa(c)|0)+24|0);break}case 24:{rS(a,572,b);rS(a,557,(YQa(c)|0)+24|0);rS(a,557,(YQa(c)|0)+20|0);break}case 25:{rS(a,573,b);rS(a,557,(rQa(c)|0)+24|0);rS(a,557,(rQa(c)|0)+20|0);rS(a,557,(rQa(c)|0)+16|0);break}case 26:{rS(a,574,b);rS(a,557,(LQa(c)|0)+20|0);rS(a,557,(LQa(c)|0)+16|0);rS(a,557,(LQa(c)|0)+12|0);break}case 27:{rS(a,575,b);rS(a,557,(KQa(c)|0)+16|0);rS(a,557,(KQa(c)|0)+12|0);break}case 15:{rS(a,576,b);break}case 16:{rS(a,577,b);rS(a,557,(JRa(c)|0)+12|0);break}case 17:{rS(a,578,b);rS(a,557,(ARa(c)|0)+16|0);rS(a,557,(ARa(c)|0)+12|0);break}case 18:{rS(a,579,b);rS(a,557,(yRa(c)|0)+16|0);rS(a,557,(yRa(c)|0)+12|0);rS(a,557,(yRa(c)|0)+8|0);break}case 19:{rS(a,580,b);rS(a,557,(_Ra(c)|0)+8|0);break}case 20:{rS(a,581,b);JQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,582,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,557,JDa(d,b)|0);c=b}}case 22:{rS(a,583,b);break}case 23:{rS(a,584,b);break}default:hb()}while(0);return}function mf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1658,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1657,JDa(d,b)|0);c=b}}case 2:{rS(a,1659,b);iR(a,(qSa(c)|0)+16|0);rS(a,1657,(qSa(c)|0)+12|0);rS(a,1657,(qSa(c)|0)+8|0);break}case 3:{rS(a,1660,b);rS(a,1657,(gSa(c)|0)+12|0);break}case 4:{rS(a,1661,b);iR(a,(WRa(c)|0)+16|0);iR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1662,b);rS(a,1657,(IRa(c)|0)+28|0);iR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1663,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1657,JDa(d,b)|0);c=b}}case 7:{rS(a,1664,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1657,JDa(d,b)|0);c=b}}case 8:{rS(a,1665,b);b=DQa(c)|0;rS(a,1657,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1657,JDa(d,b)|0);c=b}}case 9:{rS(a,1666,b);break}case 10:{rS(a,1667,b);rS(a,1657,(iRa(c)|0)+12|0);break}case 11:{rS(a,1668,b);break}case 12:{rS(a,1669,b);rS(a,1657,(WQa(c)|0)+12|0);break}case 13:{rS(a,1670,b);rS(a,1657,(YRa(c)|0)+24|0);break}case 14:{rS(a,1671,b);rS(a,1657,(KRa(c)|0)+28|0);rS(a,1657,(KRa(c)|0)+24|0);break}case 24:{rS(a,1672,b);rS(a,1657,(YQa(c)|0)+24|0);rS(a,1657,(YQa(c)|0)+20|0);break}case 25:{rS(a,1673,b);rS(a,1657,(rQa(c)|0)+24|0);rS(a,1657,(rQa(c)|0)+20|0);rS(a,1657,(rQa(c)|0)+16|0);break}case 26:{rS(a,1674,b);rS(a,1657,(LQa(c)|0)+20|0);rS(a,1657,(LQa(c)|0)+16|0);rS(a,1657,(LQa(c)|0)+12|0);break}case 27:{rS(a,1675,b);rS(a,1657,(KQa(c)|0)+16|0);rS(a,1657,(KQa(c)|0)+12|0);break}case 15:{rS(a,1676,b);break}case 16:{rS(a,1677,b);rS(a,1657,(JRa(c)|0)+12|0);break}case 17:{rS(a,1678,b);rS(a,1657,(ARa(c)|0)+16|0);rS(a,1657,(ARa(c)|0)+12|0);break}case 18:{rS(a,1679,b);rS(a,1657,(yRa(c)|0)+16|0);rS(a,1657,(yRa(c)|0)+12|0);rS(a,1657,(yRa(c)|0)+8|0);break}case 19:{rS(a,1680,b);rS(a,1657,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1681,b);iR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1682,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1657,JDa(d,b)|0);c=b}}case 22:{rS(a,1683,b);break}case 23:{rS(a,1684,b);break}default:hb()}while(0);return}function nf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1629,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1628,JDa(d,b)|0);c=b}}case 2:{rS(a,1630,b);jR(a,(qSa(c)|0)+16|0);rS(a,1628,(qSa(c)|0)+12|0);rS(a,1628,(qSa(c)|0)+8|0);break}case 3:{rS(a,1631,b);rS(a,1628,(gSa(c)|0)+12|0);break}case 4:{rS(a,1632,b);jR(a,(WRa(c)|0)+16|0);jR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1633,b);rS(a,1628,(IRa(c)|0)+28|0);jR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1634,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1628,JDa(d,b)|0);c=b}}case 7:{rS(a,1635,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1628,JDa(d,b)|0);c=b}}case 8:{rS(a,1636,b);b=DQa(c)|0;rS(a,1628,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1628,JDa(d,b)|0);c=b}}case 9:{rS(a,1637,b);break}case 10:{rS(a,1638,b);rS(a,1628,(iRa(c)|0)+12|0);break}case 11:{rS(a,1639,b);break}case 12:{rS(a,1640,b);rS(a,1628,(WQa(c)|0)+12|0);break}case 13:{rS(a,1641,b);rS(a,1628,(YRa(c)|0)+24|0);break}case 14:{rS(a,1642,b);rS(a,1628,(KRa(c)|0)+28|0);rS(a,1628,(KRa(c)|0)+24|0);break}case 24:{rS(a,1643,b);rS(a,1628,(YQa(c)|0)+24|0);rS(a,1628,(YQa(c)|0)+20|0);break}case 25:{rS(a,1644,b);rS(a,1628,(rQa(c)|0)+24|0);rS(a,1628,(rQa(c)|0)+20|0);rS(a,1628,(rQa(c)|0)+16|0);break}case 26:{rS(a,1645,b);rS(a,1628,(LQa(c)|0)+20|0);rS(a,1628,(LQa(c)|0)+16|0);rS(a,1628,(LQa(c)|0)+12|0);break}case 27:{rS(a,1646,b);rS(a,1628,(KQa(c)|0)+16|0);rS(a,1628,(KQa(c)|0)+12|0);break}case 15:{rS(a,1647,b);break}case 16:{rS(a,1648,b);rS(a,1628,(JRa(c)|0)+12|0);break}case 17:{rS(a,1649,b);rS(a,1628,(ARa(c)|0)+16|0);rS(a,1628,(ARa(c)|0)+12|0);break}case 18:{rS(a,1650,b);rS(a,1628,(yRa(c)|0)+16|0);rS(a,1628,(yRa(c)|0)+12|0);rS(a,1628,(yRa(c)|0)+8|0);break}case 19:{rS(a,1651,b);rS(a,1628,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1652,b);jR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1653,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1628,JDa(d,b)|0);c=b}}case 22:{rS(a,1654,b);break}case 23:{rS(a,1655,b);break}default:hb()}while(0);return}function of(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,381,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,321,JDa(d,b)|0);c=b}}case 2:{rS(a,382,b);SQ(a,(qSa(c)|0)+16|0);rS(a,321,(qSa(c)|0)+12|0);rS(a,321,(qSa(c)|0)+8|0);break}case 3:{rS(a,383,b);rS(a,321,(gSa(c)|0)+12|0);break}case 4:{rS(a,384,b);SQ(a,(WRa(c)|0)+16|0);SQ(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,385,b);rS(a,321,(IRa(c)|0)+28|0);SQ(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,386,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,321,JDa(d,b)|0);c=b}}case 7:{rS(a,387,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,321,JDa(d,b)|0);c=b}}case 8:{rS(a,388,b);b=DQa(c)|0;rS(a,321,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,321,JDa(d,b)|0);c=b}}case 9:{rS(a,389,b);break}case 10:{rS(a,390,b);rS(a,321,(iRa(c)|0)+12|0);break}case 11:{rS(a,391,b);break}case 12:{rS(a,392,b);rS(a,321,(WQa(c)|0)+12|0);break}case 13:{rS(a,393,b);rS(a,321,(YRa(c)|0)+24|0);break}case 14:{rS(a,394,b);rS(a,321,(KRa(c)|0)+28|0);rS(a,321,(KRa(c)|0)+24|0);break}case 24:{rS(a,395,b);rS(a,321,(YQa(c)|0)+24|0);rS(a,321,(YQa(c)|0)+20|0);break}case 25:{rS(a,396,b);rS(a,321,(rQa(c)|0)+24|0);rS(a,321,(rQa(c)|0)+20|0);rS(a,321,(rQa(c)|0)+16|0);break}case 26:{rS(a,397,b);rS(a,321,(LQa(c)|0)+20|0);rS(a,321,(LQa(c)|0)+16|0);rS(a,321,(LQa(c)|0)+12|0);break}case 27:{rS(a,398,b);rS(a,321,(KQa(c)|0)+16|0);rS(a,321,(KQa(c)|0)+12|0);break}case 15:{rS(a,399,b);break}case 16:{rS(a,400,b);rS(a,321,(JRa(c)|0)+12|0);break}case 17:{rS(a,401,b);rS(a,321,(ARa(c)|0)+16|0);rS(a,321,(ARa(c)|0)+12|0);break}case 18:{rS(a,402,b);rS(a,321,(yRa(c)|0)+16|0);rS(a,321,(yRa(c)|0)+12|0);rS(a,321,(yRa(c)|0)+8|0);break}case 19:{rS(a,403,b);rS(a,321,(_Ra(c)|0)+8|0);break}case 20:{rS(a,404,b);SQ(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,405,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,321,JDa(d,b)|0);c=b}}case 22:{rS(a,406,b);break}case 23:{rS(a,407,b);break}default:hb()}while(0);return}function pf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2345,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2342,JDa(d,b)|0);c=b}}case 2:{rS(a,2346,b);vR(a,(qSa(c)|0)+16|0);rS(a,2342,(qSa(c)|0)+12|0);rS(a,2342,(qSa(c)|0)+8|0);break}case 3:{rS(a,2347,b);rS(a,2342,(gSa(c)|0)+12|0);break}case 4:{rS(a,2348,b);vR(a,(WRa(c)|0)+16|0);vR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2349,b);rS(a,2342,(IRa(c)|0)+28|0);vR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2350,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2342,JDa(d,b)|0);c=b}}case 7:{rS(a,2351,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2342,JDa(d,b)|0);c=b}}case 8:{rS(a,2352,b);b=DQa(c)|0;rS(a,2342,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2342,JDa(d,b)|0);c=b}}case 9:{rS(a,2353,b);break}case 10:{rS(a,2354,b);rS(a,2342,(iRa(c)|0)+12|0);break}case 11:{rS(a,2355,b);break}case 12:{rS(a,2356,b);rS(a,2342,(WQa(c)|0)+12|0);break}case 13:{rS(a,2357,b);rS(a,2342,(YRa(c)|0)+24|0);break}case 14:{rS(a,2358,b);rS(a,2342,(KRa(c)|0)+28|0);rS(a,2342,(KRa(c)|0)+24|0);break}case 24:{rS(a,2359,b);rS(a,2342,(YQa(c)|0)+24|0);rS(a,2342,(YQa(c)|0)+20|0);break}case 25:{rS(a,2360,b);rS(a,2342,(rQa(c)|0)+24|0);rS(a,2342,(rQa(c)|0)+20|0);rS(a,2342,(rQa(c)|0)+16|0);break}case 26:{rS(a,2361,b);rS(a,2342,(LQa(c)|0)+20|0);rS(a,2342,(LQa(c)|0)+16|0);rS(a,2342,(LQa(c)|0)+12|0);break}case 27:{rS(a,2362,b);rS(a,2342,(KQa(c)|0)+16|0);rS(a,2342,(KQa(c)|0)+12|0);break}case 15:{rS(a,2363,b);break}case 16:{rS(a,2364,b);rS(a,2342,(JRa(c)|0)+12|0);break}case 17:{rS(a,2365,b);rS(a,2342,(ARa(c)|0)+16|0);rS(a,2342,(ARa(c)|0)+12|0);break}case 18:{rS(a,2366,b);rS(a,2342,(yRa(c)|0)+16|0);rS(a,2342,(yRa(c)|0)+12|0);rS(a,2342,(yRa(c)|0)+8|0);break}case 19:{rS(a,2367,b);rS(a,2342,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2368,b);vR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2369,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2342,JDa(d,b)|0);c=b}}case 22:{rS(a,2370,b);break}case 23:{rS(a,2371,b);break}default:hb()}while(0);return}function qf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,494,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,481,JDa(d,b)|0);c=b}}case 2:{rS(a,495,b);aR(a,(qSa(c)|0)+16|0);rS(a,481,(qSa(c)|0)+12|0);rS(a,481,(qSa(c)|0)+8|0);break}case 3:{rS(a,496,b);rS(a,481,(gSa(c)|0)+12|0);break}case 4:{rS(a,497,b);aR(a,(WRa(c)|0)+16|0);aR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,498,b);rS(a,481,(IRa(c)|0)+28|0);aR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,499,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,481,JDa(d,b)|0);c=b}}case 7:{rS(a,500,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,481,JDa(d,b)|0);c=b}}case 8:{rS(a,501,b);b=DQa(c)|0;rS(a,481,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,481,JDa(d,b)|0);c=b}}case 9:{rS(a,502,b);break}case 10:{rS(a,503,b);rS(a,481,(iRa(c)|0)+12|0);break}case 11:{rS(a,504,b);break}case 12:{rS(a,505,b);rS(a,481,(WQa(c)|0)+12|0);break}case 13:{rS(a,506,b);rS(a,481,(YRa(c)|0)+24|0);break}case 14:{rS(a,507,b);rS(a,481,(KRa(c)|0)+28|0);rS(a,481,(KRa(c)|0)+24|0);break}case 24:{rS(a,508,b);rS(a,481,(YQa(c)|0)+24|0);rS(a,481,(YQa(c)|0)+20|0);break}case 25:{rS(a,509,b);rS(a,481,(rQa(c)|0)+24|0);rS(a,481,(rQa(c)|0)+20|0);rS(a,481,(rQa(c)|0)+16|0);break}case 26:{rS(a,510,b);rS(a,481,(LQa(c)|0)+20|0);rS(a,481,(LQa(c)|0)+16|0);rS(a,481,(LQa(c)|0)+12|0);break}case 27:{rS(a,511,b);rS(a,481,(KQa(c)|0)+16|0);rS(a,481,(KQa(c)|0)+12|0);break}case 15:{rS(a,512,b);break}case 16:{rS(a,513,b);rS(a,481,(JRa(c)|0)+12|0);break}case 17:{rS(a,514,b);rS(a,481,(ARa(c)|0)+16|0);rS(a,481,(ARa(c)|0)+12|0);break}case 18:{rS(a,515,b);rS(a,481,(yRa(c)|0)+16|0);rS(a,481,(yRa(c)|0)+12|0);rS(a,481,(yRa(c)|0)+8|0);break}case 19:{rS(a,516,b);rS(a,481,(_Ra(c)|0)+8|0);break}case 20:{rS(a,517,b);aR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,518,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,481,JDa(d,b)|0);c=b}}case 22:{rS(a,519,b);break}case 23:{rS(a,520,b);break}default:hb()}while(0);return}function rf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,263,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,262,JDa(d,b)|0);c=b}}case 2:{rS(a,264,b);bR(a,(qSa(c)|0)+16|0);rS(a,262,(qSa(c)|0)+12|0);rS(a,262,(qSa(c)|0)+8|0);break}case 3:{rS(a,265,b);rS(a,262,(gSa(c)|0)+12|0);break}case 4:{rS(a,266,b);bR(a,(WRa(c)|0)+16|0);bR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,267,b);rS(a,262,(IRa(c)|0)+28|0);bR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,268,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,262,JDa(d,b)|0);c=b}}case 7:{rS(a,269,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,262,JDa(d,b)|0);c=b}}case 8:{rS(a,270,b);b=DQa(c)|0;rS(a,262,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,262,JDa(d,b)|0);c=b}}case 9:{rS(a,271,b);break}case 10:{rS(a,272,b);rS(a,262,(iRa(c)|0)+12|0);break}case 11:{rS(a,273,b);break}case 12:{rS(a,274,b);rS(a,262,(WQa(c)|0)+12|0);break}case 13:{rS(a,275,b);rS(a,262,(YRa(c)|0)+24|0);break}case 14:{rS(a,276,b);rS(a,262,(KRa(c)|0)+28|0);rS(a,262,(KRa(c)|0)+24|0);break}case 24:{rS(a,277,b);rS(a,262,(YQa(c)|0)+24|0);rS(a,262,(YQa(c)|0)+20|0);break}case 25:{rS(a,278,b);rS(a,262,(rQa(c)|0)+24|0);rS(a,262,(rQa(c)|0)+20|0);rS(a,262,(rQa(c)|0)+16|0);break}case 26:{rS(a,279,b);rS(a,262,(LQa(c)|0)+20|0);rS(a,262,(LQa(c)|0)+16|0);rS(a,262,(LQa(c)|0)+12|0);break}case 27:{rS(a,280,b);rS(a,262,(KQa(c)|0)+16|0);rS(a,262,(KQa(c)|0)+12|0);break}case 15:{rS(a,281,b);break}case 16:{rS(a,282,b);rS(a,262,(JRa(c)|0)+12|0);break}case 17:{rS(a,283,b);rS(a,262,(ARa(c)|0)+16|0);rS(a,262,(ARa(c)|0)+12|0);break}case 18:{rS(a,284,b);rS(a,262,(yRa(c)|0)+16|0);rS(a,262,(yRa(c)|0)+12|0);rS(a,262,(yRa(c)|0)+8|0);break}case 19:{rS(a,285,b);rS(a,262,(_Ra(c)|0)+8|0);break}case 20:{rS(a,286,b);bR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,287,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,262,JDa(d,b)|0);c=b}}case 22:{rS(a,288,b);break}case 23:{rS(a,289,b);break}default:hb()}while(0);return}function sf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,1956,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1896,JDa(d,b)|0);c=b}}case 2:{rS(a,1957,b);MR(a,(qSa(c)|0)+16|0);rS(a,1896,(qSa(c)|0)+12|0);rS(a,1896,(qSa(c)|0)+8|0);break}case 3:{rS(a,1958,b);rS(a,1896,(gSa(c)|0)+12|0);break}case 4:{rS(a,1959,b);MR(a,(WRa(c)|0)+16|0);MR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,1960,b);rS(a,1896,(IRa(c)|0)+28|0);MR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,1961,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1896,JDa(d,b)|0);c=b}}case 7:{rS(a,1962,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1896,JDa(d,b)|0);c=b}}case 8:{rS(a,1963,b);b=DQa(c)|0;rS(a,1896,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1896,JDa(d,b)|0);c=b}}case 9:{rS(a,1964,b);break}case 10:{rS(a,1965,b);rS(a,1896,(iRa(c)|0)+12|0);break}case 11:{rS(a,1966,b);break}case 12:{rS(a,1967,b);rS(a,1896,(WQa(c)|0)+12|0);break}case 13:{rS(a,1968,b);rS(a,1896,(YRa(c)|0)+24|0);break}case 14:{rS(a,1969,b);rS(a,1896,(KRa(c)|0)+28|0);rS(a,1896,(KRa(c)|0)+24|0);break}case 24:{rS(a,1970,b);rS(a,1896,(YQa(c)|0)+24|0);rS(a,1896,(YQa(c)|0)+20|0);break}case 25:{rS(a,1971,b);rS(a,1896,(rQa(c)|0)+24|0);rS(a,1896,(rQa(c)|0)+20|0);rS(a,1896,(rQa(c)|0)+16|0);break}case 26:{rS(a,1972,b);rS(a,1896,(LQa(c)|0)+20|0);rS(a,1896,(LQa(c)|0)+16|0);rS(a,1896,(LQa(c)|0)+12|0);break}case 27:{rS(a,1973,b);rS(a,1896,(KQa(c)|0)+16|0);rS(a,1896,(KQa(c)|0)+12|0);break}case 15:{rS(a,1974,b);break}case 16:{rS(a,1975,b);rS(a,1896,(JRa(c)|0)+12|0);break}case 17:{rS(a,1976,b);rS(a,1896,(ARa(c)|0)+16|0);rS(a,1896,(ARa(c)|0)+12|0);break}case 18:{rS(a,1977,b);rS(a,1896,(yRa(c)|0)+16|0);rS(a,1896,(yRa(c)|0)+12|0);rS(a,1896,(yRa(c)|0)+8|0);break}case 19:{rS(a,1978,b);rS(a,1896,(_Ra(c)|0)+8|0);break}case 20:{rS(a,1979,b);MR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,1980,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,1896,JDa(d,b)|0);c=b}}case 22:{rS(a,1981,b);break}case 23:{rS(a,1982,b);break}default:hb()}while(0);return}function tf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2374,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2341,JDa(d,b)|0);c=b}}case 2:{rS(a,2375,b);UR(a,(qSa(c)|0)+16|0);rS(a,2341,(qSa(c)|0)+12|0);rS(a,2341,(qSa(c)|0)+8|0);break}case 3:{rS(a,2376,b);rS(a,2341,(gSa(c)|0)+12|0);break}case 4:{rS(a,2377,b);UR(a,(WRa(c)|0)+16|0);UR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2378,b);rS(a,2341,(IRa(c)|0)+28|0);UR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2379,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2341,JDa(d,b)|0);c=b}}case 7:{rS(a,2380,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2341,JDa(d,b)|0);c=b}}case 8:{rS(a,2381,b);b=DQa(c)|0;rS(a,2341,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2341,JDa(d,b)|0);c=b}}case 9:{rS(a,2382,b);break}case 10:{rS(a,2383,b);rS(a,2341,(iRa(c)|0)+12|0);break}case 11:{rS(a,2384,b);break}case 12:{rS(a,2385,b);rS(a,2341,(WQa(c)|0)+12|0);break}case 13:{rS(a,2386,b);rS(a,2341,(YRa(c)|0)+24|0);break}case 14:{rS(a,2387,b);rS(a,2341,(KRa(c)|0)+28|0);rS(a,2341,(KRa(c)|0)+24|0);break}case 24:{rS(a,2388,b);rS(a,2341,(YQa(c)|0)+24|0);rS(a,2341,(YQa(c)|0)+20|0);break}case 25:{rS(a,2389,b);rS(a,2341,(rQa(c)|0)+24|0);rS(a,2341,(rQa(c)|0)+20|0);rS(a,2341,(rQa(c)|0)+16|0);break}case 26:{rS(a,2390,b);rS(a,2341,(LQa(c)|0)+20|0);rS(a,2341,(LQa(c)|0)+16|0);rS(a,2341,(LQa(c)|0)+12|0);break}case 27:{rS(a,2391,b);rS(a,2341,(KQa(c)|0)+16|0);rS(a,2341,(KQa(c)|0)+12|0);break}case 15:{rS(a,2392,b);break}case 16:{rS(a,2393,b);rS(a,2341,(JRa(c)|0)+12|0);break}case 17:{rS(a,2394,b);rS(a,2341,(ARa(c)|0)+16|0);rS(a,2341,(ARa(c)|0)+12|0);break}case 18:{rS(a,2395,b);rS(a,2341,(yRa(c)|0)+16|0);rS(a,2341,(yRa(c)|0)+12|0);rS(a,2341,(yRa(c)|0)+8|0);break}case 19:{rS(a,2396,b);rS(a,2341,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2397,b);UR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2398,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2341,JDa(d,b)|0);c=b}}case 22:{rS(a,2399,b);break}case 23:{rS(a,2400,b);break}default:hb()}while(0);return}function uf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,3102,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3101,JDa(d,b)|0);c=b}}case 2:{rS(a,3103,b);WR(a,(qSa(c)|0)+16|0);rS(a,3101,(qSa(c)|0)+12|0);rS(a,3101,(qSa(c)|0)+8|0);break}case 3:{rS(a,3104,b);rS(a,3101,(gSa(c)|0)+12|0);break}case 4:{rS(a,3105,b);WR(a,(WRa(c)|0)+16|0);WR(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,3106,b);rS(a,3101,(IRa(c)|0)+28|0);WR(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,3107,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3101,JDa(d,b)|0);c=b}}case 7:{rS(a,3108,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3101,JDa(d,b)|0);c=b}}case 8:{rS(a,3109,b);b=DQa(c)|0;rS(a,3101,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3101,JDa(d,b)|0);c=b}}case 9:{rS(a,3110,b);break}case 10:{rS(a,3111,b);rS(a,3101,(iRa(c)|0)+12|0);break}case 11:{rS(a,3112,b);break}case 12:{rS(a,3113,b);rS(a,3101,(WQa(c)|0)+12|0);break}case 13:{rS(a,3114,b);rS(a,3101,(YRa(c)|0)+24|0);break}case 14:{rS(a,3115,b);rS(a,3101,(KRa(c)|0)+28|0);rS(a,3101,(KRa(c)|0)+24|0);break}case 24:{rS(a,3116,b);rS(a,3101,(YQa(c)|0)+24|0);rS(a,3101,(YQa(c)|0)+20|0);break}case 25:{rS(a,3117,b);rS(a,3101,(rQa(c)|0)+24|0);rS(a,3101,(rQa(c)|0)+20|0);rS(a,3101,(rQa(c)|0)+16|0);break}case 26:{rS(a,3118,b);rS(a,3101,(LQa(c)|0)+20|0);rS(a,3101,(LQa(c)|0)+16|0);rS(a,3101,(LQa(c)|0)+12|0);break}case 27:{rS(a,3119,b);rS(a,3101,(KQa(c)|0)+16|0);rS(a,3101,(KQa(c)|0)+12|0);break}case 15:{rS(a,3120,b);break}case 16:{rS(a,3121,b);rS(a,3101,(JRa(c)|0)+12|0);break}case 17:{rS(a,3122,b);rS(a,3101,(ARa(c)|0)+16|0);rS(a,3101,(ARa(c)|0)+12|0);break}case 18:{rS(a,3123,b);rS(a,3101,(yRa(c)|0)+16|0);rS(a,3101,(yRa(c)|0)+12|0);rS(a,3101,(yRa(c)|0)+8|0);break}case 19:{rS(a,3124,b);rS(a,3101,(_Ra(c)|0)+8|0);break}case 20:{rS(a,3125,b);WR(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,3126,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,3101,JDa(d,b)|0);c=b}}case 22:{rS(a,3127,b);break}case 23:{rS(a,3128,b);break}default:hb()}while(0);return}function vf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{rS(a,2191,b);c=XRa(c)|0;d=c+12|0;c=Bbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2190,JDa(d,b)|0);c=b}}case 2:{rS(a,2192,b);aS(a,(qSa(c)|0)+16|0);rS(a,2190,(qSa(c)|0)+12|0);rS(a,2190,(qSa(c)|0)+8|0);break}case 3:{rS(a,2193,b);rS(a,2190,(gSa(c)|0)+12|0);break}case 4:{rS(a,2194,b);aS(a,(WRa(c)|0)+16|0);aS(a,(WRa(c)|0)+12|0);break}case 5:{rS(a,2195,b);rS(a,2190,(IRa(c)|0)+28|0);aS(a,(IRa(c)|0)+32|0);break}case 6:{rS(a,2196,b);c=hSa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2190,JDa(d,b)|0);c=b}}case 7:{rS(a,2197,b);c=SQa(c)|0;d=c+8|0;c=Bbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2190,JDa(d,b)|0);c=b}}case 8:{rS(a,2198,b);b=DQa(c)|0;rS(a,2190,(DQa(c)|0)+28|0);d=b+8|0;c=Bbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2190,JDa(d,b)|0);c=b}}case 9:{rS(a,2199,b);break}case 10:{rS(a,2200,b);rS(a,2190,(iRa(c)|0)+12|0);break}case 11:{rS(a,2201,b);break}case 12:{rS(a,2202,b);rS(a,2190,(WQa(c)|0)+12|0);break}case 13:{rS(a,2203,b);rS(a,2190,(YRa(c)|0)+24|0);break}case 14:{rS(a,2204,b);rS(a,2190,(KRa(c)|0)+28|0);rS(a,2190,(KRa(c)|0)+24|0);break}case 24:{rS(a,2205,b);rS(a,2190,(YQa(c)|0)+24|0);rS(a,2190,(YQa(c)|0)+20|0);break}case 25:{rS(a,2206,b);rS(a,2190,(rQa(c)|0)+24|0);rS(a,2190,(rQa(c)|0)+20|0);rS(a,2190,(rQa(c)|0)+16|0);break}case 26:{rS(a,2207,b);rS(a,2190,(LQa(c)|0)+20|0);rS(a,2190,(LQa(c)|0)+16|0);rS(a,2190,(LQa(c)|0)+12|0);break}case 27:{rS(a,2208,b);rS(a,2190,(KQa(c)|0)+16|0);rS(a,2190,(KQa(c)|0)+12|0);break}case 15:{rS(a,2209,b);break}case 16:{rS(a,2210,b);rS(a,2190,(JRa(c)|0)+12|0);break}case 17:{rS(a,2211,b);rS(a,2190,(ARa(c)|0)+16|0);rS(a,2190,(ARa(c)|0)+12|0);break}case 18:{rS(a,2212,b);rS(a,2190,(yRa(c)|0)+16|0);rS(a,2190,(yRa(c)|0)+12|0);rS(a,2190,(yRa(c)|0)+8|0);break}case 19:{rS(a,2213,b);rS(a,2190,(_Ra(c)|0)+8|0);break}case 20:{rS(a,2214,b);aS(a,(zRa(c)|0)+8|0);break}case 21:{rS(a,2215,b);c=ZRa(c)|0;d=c+16|0;c=Bbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;rS(a,2190,JDa(d,b)|0);c=b}}case 22:{rS(a,2216,b);break}case 23:{rS(a,2217,b);break}default:hb()}while(0);return} -function v$a(a,b){a=a|0;b=b|0;return a<<24>>24==b<<24>>24|0}function w$a(a){a=a|0;y7(a);f[a>>2]=3;return a|0}function x$a(a){a=a|0;I=f[a+4>>2]|0;return f[a>>2]|0}function y$a(a){a=a|0;Lha(a);ubb(a);return}function z$a(){var a=0;a=n8(60)|0;gxa(a,0);return a|0}function A$a(a,b){a=a|0;b=b|0;return f[a+(b<<2)>>2]|0}function B$a(a){a=a|0;via(a);return}function C$a(a){a=a|0;return ((f[a>>2]|0)==3?a:0)|0}function D$a(a){a=+a;return (n[s>>2]=a,f[s>>2]|0)|0}function E$a(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function F$a(a,b,c){a=a|0;b=b|0;c=c|0;pc[a&4095](b|0,c|0)}function G$a(){if(!(b[131504]|0))PWa(131504)|0;return}function H$a(a){a=a|0;return rp(a,0)|0}function I$a(a,b){a=a|0;b=b|0;GXa(a,b,0);return}function J$a(a){a=a|0;a=n8(112)|0;Xma(a);return a|0}function K$a(a){a=a|0;return XRa(a)|0}function L$a(a,b,c){a=a|0;b=b|0;c=c|0;hb()}function M$a(a,b,c){a=a|0;b=b|0;c=c|0;c=qZa(a,b,c)|0;return c|0}function N$a(){if(!(b[131512]|0))PWa(131512)|0;return}function O$a(a){a=a|0;return Zo(a,0)|0}function P$a(a){a=a|0;Yta(a);ubb(a);return}function Q$a(a){a=a|0;Dma(a);ubb(a);return}function R$a(a){a=a|0;i7a(a);return}function S$a(a){a=a|0;return ((f[a>>2]|0)==2?a:0)|0}function T$a(){A6a();h6a();return}function U$a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;$(7);return 0}function V$a(a,b){a=a|0;b=b|0;return Ob(a|0,b|0)|0}function W$a(a){a=a|0;return (a|0)!=46180&((a|0)!=0&(a|0)!=133704)&1|0}function X$a(a){a=a|0;FO(a);return}function Y$a(){var a=0;a=n8(20)|0;hYa(a);return a|0}function Z$a(a){a=a|0;hYa(a);f[a>>2]=43432;return}function _$a(a){a=a|0;uSa(a);return}function $$a(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;return}function a0a(a){a=a|0;b[a+20>>0]=1;b[a+22>>0]=1;return}function b0a(){I8a();q8a();return}function c0a(a){a=a|0;C2a(a);ubb(a);return}function d0a(){f[32831]=0;f[32830]=49532;return}function e0a(){f[32829]=0;f[32828]=49500;return}function f0a(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];return}function g0a(a,b){a=a|0;b=b|0;return Kya(Bbb(a)|0,b)|0}function h0a(a){a=a|0;iUa(a)|0;return}function i0a(a){a=a|0;a=n8(96)|0;p3(a);return a|0}function j0a(a){a=a|0;CPa(a);f[a+4>>2]=5;return}function k0a(a){a=a|0;DYa(a);return}function l0a(a){a=a|0;return KMa(a)|0}function m0a(a){a=a|0;XL(a);ubb(a);return}function n0a(a){a=a|0;f[a+52>>2]=f[a+48>>2];return}function o0a(a,b){a=a|0;b=b|0;return -1}function p0a(){f[32757]=0;f[32756]=47596;return}function q0a(){f[32755]=0;f[32754]=47564;return}function r0a(a){a=a|0;return rp(a,1)|0}function s0a(a){a=a|0;return Zo(a,1)|0}function t0a(a,b){a=a|0;b=b|0;return 0}function u0a(a){a=a|0;a=n8(104)|0;KPa(a);return a|0}function v0a(a){a=a|0;AYa(a);return}function w0a(a){a=a|0;kya(a);f[a>>2]=42496;return}function x0a(a){a=a|0;xqa(a);return}function y0a(a){a=a|0;rt(a);return}function z0a(a,b){a=a|0;b=b|0;f[a+36>>2]=b;return}function A0a(a){a=+a;return a-+J(a)!=.5?+n6a(a):+n6a(a/2.0)*2.0}function B0a(a,b){a=a|0;b=b|0;return uVa(a,b)|0}function C0a(a){a=a|0;a=n8(36)|0;lSa(a);return a|0}function D0a(a){a=a|0;return Iab(f[a+16>>2]|0)|0}function E0a(a){a=a|0;return Eta(a)|0}function F0a(a){a=a|0;Mha(a);ubb(a);return}function G0a(a){a=a|0;kya(a);f[a>>2]=45348;return}function H0a(a){a=a|0;hYa(a);f[a>>2]=43312;return}function I0a(a){a=a|0;raa(a);return}function J0a(a){a=a|0;OY(a);return}function K0a(a,b,c){a=a|0;b=b|0;c=c|0;return ST(a,b,c)|0}function L0a(){f[32763]=0;f[32762]=49924;return}function M0a(a){a=a|0;yXa(a);tab(a+16|0);return}function N0a(){Ca(107150,106510,526,107187)}function O0a(a){a=a|0;kya(a);f[a>>2]=43352;return}function P0a(a){a=a|0;hYa(a);f[a>>2]=43392;return}function Q0a(a,b){a=a|0;b=b|0;b=DZ(a,b,10,-2147483648,0)|0;return b|0}function R0a(a){a=a|0;if(!a)return;else H4()}function S0a(a,b){a=a|0;b=b|0;return b-a>>2|0}function T0a(a,c){a=a|0;c=c|0;b[a>>0]=c;return}function U0a(a,b){a=a|0;b=b|0;f[a>>2]=b+144;return}function V0a(a){a=a|0;a=n8(44)|0;XVa(a);return a|0}function W0a(a){a=a|0;QGa(a);ubb(a);return}function X0a(a){a=a|0;kya(a);f[a>>2]=44220;return}function Y0a(a){a=a|0;f[a+4096>>2]=a;return}function Z0a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(19)}function _0a(){yUa(132632);return}function $0a(a){a=a|0;return a+-12|0}function a1a(a){a=a|0;return aJa(a)|0}function b1a(a){a=a|0;V7(a+8|0);return}function c1a(a){a=a|0;tab(a);tab(a+4|0);return}function d1a(a,b){a=a|0;b=b|0;fNa(a,b,0);return}function e1a(a){a=a|0;b[a+52>>0]=1;return}function f1a(a){a=a|0;kya(a);f[a>>2]=42816;return}function g1a(a){a=a|0;hv(a);return}function h1a(a){a=a|0;poa(a);return}function i1a(a){a=a|0;k2a(a);return}function j1a(a){a=a|0;f[a+4096>>2]=0;return}function k1a(a){a=a|0;return (((a|32)+-97|0)>>>0<6|(Uab(a)|0)!=0)&1|0}function l1a(){var a=0;a=f[33829]|0;f[33829]=a+0;return a|0}function m1a(a){a=a|0;w9(a);return}function n1a(a){a=a|0;j6a(a);ubb(a);return}function o1a(){cZa();return}function p1a(a){a=a|0;b[a+26>>0]=1;return}function q1a(a){a=a|0;vCa(a);ubb(a);return}function r1a(a){a=a|0;Jqa(a);ubb(a);return}function s1a(a){a=a|0;Soa(a);ubb(a);return}function t1a(a){a=a|0;Iva(a);ubb(a);return}function u1a(a,b,c){a=a|0;b=b|0;c=c|0;gy(a,b,c);return a|0}function v1a(a,b){a=a|0;b=b|0;return Pb(a|0,b|0)|0}function w1a(a,b){a=a|0;b=b|0;return jb(a|0,b|0)|0}function x1a(a){a=a|0;return xWa(a)|0}function y1a(a){a=a|0;return (Bbb(f[a+8>>2]|0)|0)!=65535|0}function z1a(a){a=a|0;return ((a|0)>31?-1:-1>>>(32-a|0))|0}function A1a(a,b,c){a=a|0;b=b|0;c=c|0;return Faa(a,b,c)|0}function B1a(){var a=0;a=f[12575]|0;f[12575]=a+0;return a|0}function C1a(a){a=a|0;lU(a);ubb(a);return}function D1a(a){a=a|0;return a+4|0}function E1a(a,b){a=a|0;b=b|0;f[a>>2]=b;return}function F1a(a){a=a|0;kpa(a);ubb(a);return}function G1a(a){a=a|0;Vna(a);ubb(a);return}function H1a(a){a=a|0;XSa(a);ubb(a);return}function I1a(a){a=a|0;if(a|0)ubb(a);return}function J1a(a,b){a=a|0;b=b|0;return b-a|0}function K1a(a){a=a|0;o_a(a);return}function L1a(a){a=a|0;JWa(a);return}function M1a(a){a=a|0;m1(a);return}function N1a(a){a=a|0;oXa(a);return}function O1a(a){a=a|0;X$a(a);return}function P1a(a){a=a|0;return Kc(a)|0}function Q1a(a){a=a|0;sUa(a);ubb(a);return}function R1a(a){a=a|0;tUa(a);ubb(a);return}function S1a(a){a=a|0;kya(a);f[a>>2]=43940;return}function T1a(a){a=a|0;return (Bbb(f[a+12>>2]|0)|0)!=-1|0}function U1a(a){a=a|0;qLa(a);ubb(a);return}function V1a(a){a=a|0;jCa(a);ubb(a);return}function W1a(a){a=a|0;$Y(a);ubb(a);return}function X1a(){_h();return}function Y1a(a){a=a|0;b[a+27>>0]=1;return}function Z1a(a){a=a|0;WYa(a);ubb(a);return}function _1a(a,b){a=a|0;b=b|0;return (a|0)!=(b|0)|0}function $1a(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function a2a(a){a=a|0;f[a>>2]=3;p[a+8>>3]=0.0;return}function b2a(a){a=a|0;return (a|0)!=-1|0}function c2a(a){a=a|0;OWa(a);return}function d2a(a){a=a|0;pDa(a);ubb(a);return}function e2a(a){a=a|0;aGa(a);ubb(a);return}function f2a(){f[33199]=0;f[33200]=0;f[33201]=0;return}function g2a(){f[33196]=0;f[33197]=0;f[33198]=0;return}function h2a(){f[32963]=0;f[32964]=0;f[32965]=0;return}function i2a(){Ira();return}function j2a(){Jra();return}function k2a(a){a=a|0;f[a+4>>2]=f[a+8>>2];return}function l2a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(6);return 0}function m2a(a){a=a|0;return (a?31-(_(a^a-1)|0)|0:32)|0}function n2a(a){a=a|0;f[a+4>>2]=-1;return}function o2a(a){a=a|0;return (a|0)!=0&(a|0)!=5|0}function p2a(a,b){a=a|0;b=b|0;return bc[a&511](b|0)|0}function q2a(a,b,c){a=a|0;b=b|0;c=c|0;return K0a(a,b,c)|0}function r2a(a){a=a|0;Fa(a|0)|0;H4()}function s2a(a){a=a|0;return f[a+12>>2]|0}function t2a(a,b){a=a|0;b=b|0;return b<<24>>24|0}function u2a(a,b){a=a|0;b=b|0;return ((a|0)==0?b:a)|0}function v2a(a){a=a|0;Nya(a+16|0);return}function w2a(a){a=a|0;LI(a);return}function x2a(a){a=a|0;w9(a);ubb(a);return}function y2a(a){a=a|0;rRa(a);ubb(a);return}function z2a(a){a=a|0;rZa(a);ubb(a);return}function A2a(a){a=a|0;return f[a+8>>2]|0}function B2a(a){a=a|0;return Tb(a|0)|0}function C2a(a){a=a|0;j6a(a);return}function D2a(a){a=a|0;return b[a+9>>0]|0}function E2a(a){a=a|0;return b[a+8>>0]|0}function F2a(a){a=a|0;return -1}function G2a(a){a=a|0;return (E8(a,87463)|0)==0|0}function H2a(a){a=a|0;_6(a);ubb(a);return}function I2a(a){a=a|0;x9(a);ubb(a);return}function J2a(a){a=a|0;_Pa(a);ubb(a);return}function K2a(a){a=a|0;return (a|0)==8|0}function L2a(a){a=a|0;SXa(a);ubb(a);return}function M2a(a){a=a|0;return Mb(a|0)|0}function N2a(a){a=a|0;xOa(a);return}function O2a(a,b){a=a|0;b=b|0;return +$b[a&3](b|0)}function P2a(a){a=a|0;if(W$a(a)|0)rg(a);return}function Q2a(a){a=a|0;return Bbb(f[a+4>>2]|0)|0}function R2a(a){a=a|0;TYa(a);return}function S2a(a){a=a|0;eIa(a);ubb(a);return}function T2a(a){a=a|0;oga(a);ubb(a);return}function U2a(a){a=a|0;b[a+20>>0]=1;return}function V2a(a){a=a|0;return Nb(a|0)|0}function W2a(){fNa(132848,116836,1);return}function X2a(){fNa(132852,116843,1);return}function Y2a(){fNa(132320,117368,1);return}function Z2a(){fNa(132856,116849,1);return}function _2a(){fNa(132316,117384,1);return}function $2a(){fNa(132860,123565,1);return}function a3a(){fNa(132312,117400,1);return}function b3a(){fNa(132864,116853,1);return}function c3a(){fNa(132308,117416,1);return}function d3a(){fNa(132868,116857,1);return}function e3a(){fNa(132304,117432,1);return}function f3a(){fNa(132872,116865,1);return}function g3a(){fNa(132300,117447,1);return}function h3a(){fNa(132876,116870,1);return}function i3a(){fNa(132296,117464,1);return}function j3a(){fNa(132880,116872,1);return}function k3a(){fNa(132292,117481,1);return}function l3a(){fNa(132884,123344,1);return}function m3a(){fNa(132288,117500,1);return}function n3a(){fNa(132888,116874,1);return}function o3a(){fNa(132284,117519,1);return}function p3a(){fNa(132892,116876,1);return}function q3a(){fNa(132280,117542,1);return}function r3a(){fNa(132896,118454,1);return}function s3a(){fNa(132276,117565,1);return}function t3a(){fNa(132900,123276,1);return}function u3a(){fNa(132272,117587,1);return}function v3a(){fNa(132904,116878,1);return}function w3a(){fNa(132268,117606,1);return}function x3a(){fNa(132908,135337,1);return}function y3a(){fNa(132264,117622,1);return}function z3a(){fNa(132912,116887,1);return}function A3a(){fNa(132260,117638,1);return}function B3a(){fNa(132916,116890,1);return}function C3a(){fNa(132256,117654,1);return}function D3a(){fNa(132920,116898,1);return}function E3a(){fNa(132252,117670,1);return}function F3a(){fNa(132924,116906,1);return}function G3a(){fNa(132248,117688,1);return}function H3a(){fNa(132928,116914,1);return}function I3a(){fNa(132244,117706,1);return}function J3a(){fNa(132932,116921,1);return}function K3a(){fNa(132240,117721,1);return}function L3a(){fNa(132936,116929,1);return}function M3a(){fNa(132236,117736,1);return}function N3a(){fNa(132940,116936,1);return}function O3a(){fNa(132232,117751,1);return}function P3a(){fNa(132944,116943,1);return}function Q3a(){fNa(132228,117766,1);return}function R3a(){fNa(132948,116949,1);return}function S3a(){fNa(132224,117775,1);return}function T3a(){fNa(132952,116963,1);return}function U3a(){fNa(132220,117784,1);return}function V3a(){fNa(132956,123391,1);return}function W3a(){fNa(132216,117794,1);return}function X3a(){fNa(132960,123459,1);return}function Y3a(){fNa(132212,117805,1);return}function Z3a(){fNa(132964,123294,1);return}function _3a(){fNa(132208,117816,1);return}function $3a(){fNa(132968,123454,1);return}function a4a(){fNa(132204,117827,1);return}function b4a(){fNa(132972,123369,1);return}function c4a(){fNa(132200,117837,1);return}function d4a(){fNa(132976,123413,1);return}function e4a(){return 1073741823}function f4a(a,b){a=a|0;b=b|0;f[a>>2]=b;return}function g4a(a){a=a|0;return (a+-1|0)>>>0<2|0}function h4a(a){a=a|0;b[a+40>>0]=1;return}function i4a(a){a=a|0;return (a|0)==11|0}function j4a(a,b){a=a|0;b=b|0;u=a;v=b}function k4a(){fNa(132196,117846,1);return}function l4a(){fNa(132980,123379,1);return}function m4a(){fNa(132192,117856,1);return}function n4a(){fNa(132984,123312,1);return}function o4a(){fNa(132188,117867,1);return}function p4a(){fNa(132988,123388,1);return}function q4a(){fNa(132184,117871,1);return}function r4a(){fNa(132992,123382,1);return}function s4a(){fNa(132180,117878,1);return}function t4a(){fNa(132996,123310,1);return}function u4a(){fNa(132176,117889,1);return}function v4a(){fNa(132172,117897,1);return}function w4a(){fNa(133004,123416,1);return}function x4a(){fNa(132168,117906,1);return}function y4a(){fNa(133008,123374,1);return}function z4a(){fNa(132164,117924,1);return}function A4a(){fNa(133012,123296,1);return}function B4a(){fNa(132160,117928,1);return}function C4a(){fNa(133016,123421,1);return}function D4a(){fNa(132156,117933,1);return}function E4a(){fNa(133020,123398,1);return}function F4a(){fNa(132152,117938,1);return}function G4a(){fNa(133024,123430,1);return}function H4a(){fNa(132148,117944,1);return}function I4a(){fNa(133028,116967,1);return}function J4a(){fNa(132144,117948,1);return}function K4a(){fNa(133032,116980,1);return}function L4a(){fNa(132140,117960,1);return}function M4a(){fNa(133036,116993,1);return}function N4a(){fNa(132136,117969,1);return}function O4a(){fNa(133040,117006,1);return}function P4a(){fNa(132132,117978,1);return}function Q4a(){fNa(133044,117021,1);return}function R4a(){fNa(132128,117987,1);return}function S4a(){fNa(133048,117036,1);return}function T4a(){fNa(132124,117996,1);return}function U4a(){fNa(133052,117046,1);return}function V4a(){fNa(132120,118010,1);return}function W4a(){fNa(133056,117816,1);return}function X4a(){fNa(132116,118023,1);return}function Y4a(){fNa(133060,117050,1);return}function Z4a(){fNa(132112,118035,1);return}function _4a(){fNa(133064,117062,1);return}function $4a(){fNa(132108,118046,1);return}function a5a(){fNa(133068,117076,1);return}function b5a(){fNa(132104,118060,1);return}function c5a(){fNa(133072,117089,1);return}function d5a(){fNa(132100,118073,1);return}function e5a(){fNa(133076,117103,1);return}function f5a(){fNa(132096,118085,1);return}function g5a(){fNa(133080,117118,1);return}function h5a(){fNa(132092,118096,1);return}function i5a(){fNa(133084,117130,1);return}function j5a(){fNa(132088,118104,1);return}function k5a(){fNa(133088,118775,1);return}function l5a(){fNa(132084,118108,1);return}function m5a(){fNa(133092,118767,1);return}function n5a(){fNa(132080,118112,1);return}function o5a(){fNa(133096,117139,1);return}function p5a(){fNa(132076,118121,1);return}function q5a(){fNa(133100,117143,1);return}function r5a(){fNa(132072,118128,1);return}function s5a(){fNa(133104,117150,1);return}function t5a(){fNa(132068,118134,1);return}function u5a(){fNa(133108,117157,1);return}function v5a(){fNa(132064,118139,1);return}function w5a(){fNa(133112,117166,1);return}function x5a(){fNa(132060,118144,1);return}function y5a(){fNa(133116,117172,1);return}function z5a(){fNa(132056,118164,1);return}function A5a(){fNa(133120,117178,1);return}function B5a(){fNa(132052,118174,1);return}function C5a(){fNa(133124,117183,1);return}function D5a(){fNa(132048,118186,1);return}function E5a(){fNa(133128,117187,1);return}function F5a(){fNa(132044,118199,1);return}function G5a(){fNa(133132,117191,1);return}function H5a(){fNa(132040,118212,1);return}function I5a(){fNa(133136,117195,1);return}function J5a(){fNa(132036,118224,1);return}function K5a(){fNa(133140,117198,1);return}function L5a(){fNa(132032,118236,1);return}function M5a(){fNa(133144,117204,1);return}function N5a(){fNa(132028,118247,1);return}function O5a(){fNa(133148,117209,1);return}function P5a(){fNa(132024,118258,1);return}function Q5a(){fNa(133152,117212,1);return}function R5a(){fNa(132020,118269,1);return}function S5a(){fNa(133156,117219,1);return}function T5a(a){a=a|0;return (a|0)==-1|0}function U5a(a){a=a|0;return 2147483647}function V5a(a){a=a|0;SPa(a);ubb(a);return}function W5a(a){a=a|0;AUa(a);ubb(a);return}function X5a(a){a=a|0;return (a|0)==10|0}function Y5a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(18)}function Z5a(a){a=a|0;return nbb(a|0)|0}function _5a(){fNa(132016,118279,1);return}function $5a(){fNa(133160,117226,1);return}function a6a(){fNa(133e3,123346,1);return}function b6a(){fNa(132012,118713,1);return}function c6a(){fNa(133164,117238,1);return}function d6a(){fNa(132008,118775,1);return}function e6a(){fNa(133168,117244,1);return}function f6a(){fNa(132004,118287,1);return}function g6a(){fNa(133172,117248,1);return}function h6a(){fNa(132480,67151,1);return}function i6a(){fNa(133176,117254,1);return}function j6a(a){a=a|0;WYa(a);return}function k6a(a){a=a|0;b[a+1>>0]=0;return}function l6a(a){a=a|0;return (a+-3|0)>>>0<2|0}function m6a(a){a=a|0;return (a|0)==9|0}function n6a(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function o6a(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function p6a(){fNa(133200,117349,1);return}function q6a(){fNa(132e3,118296,1);return}function r6a(){return ((f[f[11692]>>2]|0)==0?1:4)|0}function s6a(a){a=a|0;f[a>>2]=46964;return}function t6a(a){a=a|0;return sNa(a)|0}function u6a(a){a=a|0;jUa(a);return}function v6a(a){a=a|0;return (a|0)==18|0}function w6a(a){a=a|0;return (a|0)==20|0}function x6a(a){a=a|0;return (a|0)==17|0}function y6a(a,b){a=a|0;b=b|0;oc[a&1023](b|0)}function z6a(){fNa(131996,118300,1);return}function A6a(){fNa(132484,67161,1);return}function B6a(){Hj(132808,116710);return}function C6a(){fNa(132840,123342,1);return}function D6a(){fNa(132844,123466,1);return}function E6a(){fNa(133180,117260,1);return}function F6a(a){a=a|0;return (a|0)==16|0}function G6a(a){a=a|0;return (a|0)==15|0}function H6a(a){a=a|0;jNa(a);return}function I6a(a){a=a|0;GVa(a);ubb(a);return}function J6a(a){a=a|0;return (a|0)==4|0}function K6a(a){a=a|0;return (a|0)==19|0}function L6a(a){a=a|0;return a+12|0}function M6a(){s8a();return}function N6a(a,b){a=a|0;b=b|0;return ANa(a,b)|0}function O6a(){fNa(133184,117269,1);return}function P6a(){fNa(133188,117290,1);return}function Q6a(){fNa(133192,117311,1);return}function R6a(){fNa(133196,117330,1);return}function S6a(a){a=a|0;return 4}function T6a(a,b){a=a|0;b=b|0;return b|0}function U6a(){f[32964]=(f[32964]|0)+-4;return}function V6a(a){a=a|0;return (a|0)==22|0}function W6a(){return (f7a()|0)>0|0}function X6a(a){a=a|0;return a&255|0}function Y6a(a){a=a|0;return 127}function Z6a(a){a=a|0;return (a|1|0)==21|0}function _6a(a,b){a=a|0;b=b|0;return +(+SW(a,b,2))}function $6a(){d1a(132352,116865);return}function a7a(){d1a(132364,118287);return}function b7a(){d1a(132368,118296);return}function c7a(){d1a(132372,117204);return}function d7a(){d1a(132384,117248);return}function e7a(){d1a(132396,117178);return}function f7a(){return (Qa()|0)&1|0}function g7a(a){a=a|0;return hTa(a)|0}function h7a(a){a=a|0;return bV(a)|0}function i7a(a){a=a|0;f[a+4>>2]=5;return}function j7a(a,b){a=a|0;b=b|0;return +(+SW(a,b,0))}function k7a(a,b){a=a|0;b=b|0;return +(+SW(a,b,1))}function l7a(a,b){a=a|0;b=b|0;gE(a,b);return a|0}function m7a(){d1a(132324,66958);return}function n7a(){d1a(132328,73273);return}function o7a(){d1a(132332,66963);return}function p7a(){d1a(132336,66972);return}function q7a(){d1a(132340,66976);return}function r7a(){d1a(132344,66996);return}function s7a(){d1a(132348,67004);return}function t7a(){d1a(132356,75312);return}function u7a(){d1a(132360,75317);return}function v7a(){d1a(132376,67007);return}function w7a(){d1a(132380,67012);return}function x7a(){d1a(132388,67018);return}function y7a(){d1a(132392,67032);return}function z7a(){d1a(132400,97307);return}function A7a(){d1a(132404,67044);return}function B7a(){d1a(132408,67050);return}function C7a(){d1a(132412,80872);return}function D7a(){d1a(132416,67055);return}function E7a(){d1a(132420,67062);return}function F7a(){d1a(132424,67069);return}function G7a(){d1a(132428,67077);return}function H7a(){d1a(132432,81460);return}function I7a(){d1a(132436,67082);return}function J7a(){d1a(132440,80982);return}function K7a(){d1a(132444,80867);return}function L7a(){d1a(132448,80756);return}function M7a(){d1a(132452,80749);return}function N7a(){d1a(132456,67089);return}function O7a(a,b){a=a|0;b=b|0;return}function P7a(a,b,c){a=a|0;b=b|0;c=c|0;$(5);return 0}function Q7a(){d1a(132460,67097);return}function R7a(){d1a(132464,67107);return}function S7a(){d1a(132468,67118);return}function T7a(){d1a(132576,67182);return}function U7a(){d1a(132580,67191);return}function V7a(){d1a(132592,67218);return}function W7a(){d1a(132652,117118);return}function X7a(){d1a(132472,67135);return}function Y7a(){d1a(132584,67200);return}function Z7a(){d1a(132596,67229);return}function _7a(){d1a(132668,67350);return}function $7a(){d1a(132672,67358);return}function a8a(a){a=a|0;return 122135}function b8a(a){a=a|0;return a<<24>>24!=0|0}function c8a(a){a=a|0;return (a|0)==7|0}function d8a(a){a=a|0;return +(+n[a>>2])}function e8a(a){a=a|0;return +(+p[a>>3])}function f8a(a){a=a|0;HXa(a);return}function g8a(a){a=a|0;return cY(a,f[11692]|0)|0}function h8a(){d1a(132676,67366);return}function i8a(){d1a(132612,67279);return}function j8a(){d1a(132680,67374);return}function k8a(){d1a(132616,67288);return}function l8a(){d1a(132684,67382);return}function m8a(){d1a(132620,67297);return}function n8a(){d1a(132648,67338);return}function o8a(){d1a(132688,67390);return}function p8a(){d1a(132624,67306);return}function q8a(){d1a(132660,93593);return}function r8a(){d1a(132692,67398);return}function s8a(){d1a(132604,117172);return}function t8a(a){a=a|0;return 122260}function u8a(a){a=a|0;return a<<24>>24==0|0}function v8a(a){a=a|0;return f[a>>2]|0}function w8a(a){a=a|0;return (a|0)==5|0}function x8a(a,b){a=a|0;b=b|0;return +(+_6a(a,b))}function y8a(){d1a(132656,117130);return}function z8a(){d1a(132476,67146);return}function A8a(){d1a(132588,67209);return}function B8a(){d1a(131796,117183);return}function C8a(){d1a(132600,67238);return}function D8a(){d1a(131768,118108);return}function E8a(){d1a(131764,118104);return}function F8a(){d1a(132608,67253);return}function G8a(){d1a(132628,67315);return}function H8a(){d1a(132644,67324);return}function I8a(){d1a(132664,93599);return}function J8a(){d1a(132696,67406);return}function K8a(){m9a();return}function L8a(){d1a(131848,51347);return}function M8a(){d1a(131844,51319);return}function N8a(){d1a(131840,51298);return}function O8a(){d1a(131836,51282);return}function P8a(){d1a(131832,51266);return}function Q8a(){d1a(131828,51250);return}function R8a(){d1a(131824,51235);return}function S8a(){d1a(131820,51219);return}function T8a(){d1a(131816,51201);return}function U8a(){d1a(131812,51184);return}function V8a(){d1a(131808,93154);return}function W8a(){d1a(131804,93151);return}function X8a(){d1a(131800,93147);return}function Y8a(){d1a(131792,93143);return}function Z8a(){d1a(131788,51168);return}function _8a(){d1a(131784,51159);return}function $8a(){d1a(131780,93593);return}function a9a(){d1a(131776,93599);return}function b9a(){d1a(131772,51151);return}function c9a(){d1a(131760,51142);return}function d9a(){d1a(131756,51134);return}function e9a(){d1a(131752,51127);return}function f9a(){d1a(131748,51120);return}function g9a(){d1a(131744,51113);return}function h9a(){d1a(131740,51106);return}function i9a(){d1a(131736,51099);return}function j9a(){d1a(131732,51092);return}function k9a(){d1a(131728,51086);return}function l9a(){d1a(131724,51080);return}function m9a(){SGa(132756);return}function n9a(a,b){a=a|0;b=b|0;return +(+j7a(a,b))}function o9a(a,b){a=a|0;b=b|0;return +(+k7a(a,b))}function p9a(){Da(133828);return}function q9a(){d1a(131720,51074);return}function r9a(){d1a(131716,51068);return}function s9a(){d1a(131712,51062);return}function t9a(){d1a(131708,51056);return}function u9a(){d1a(131704,51043);return}function v9a(){d1a(131540,117036);return}function w9a(){d1a(131700,51030);return}function x9a(){d1a(131696,51020);return}function y9a(){d1a(131692,51011);return}function z9a(){d1a(131688,51002);return}function A9a(){d1a(131684,50993);return}function B9a(){d1a(131680,50984);return}function C9a(){d1a(131676,50976);return}function D9a(){d1a(131672,50968);return}function E9a(){d1a(131668,50960);return}function F9a(){d1a(131664,50952);return}function G9a(){d1a(131536,117046);return}function H9a(){d1a(131660,50944);return}function I9a(){d1a(131656,50936);return}function J9a(){d1a(131652,50928);return}function K9a(){d1a(131648,50920);return}function L9a(){d1a(131644,50911);return}function M9a(){d1a(131640,50902);return}function N9a(){d1a(131636,50892);return}function O9a(){d1a(131632,50884);return}function P9a(){d1a(131628,50876);return}function Q9a(){d1a(131624,50868);return}function R9a(){d1a(131620,50860);return}function S9a(){d1a(131616,50852);return}function T9a(){d1a(131612,50844);return}function U9a(){d1a(131608,50836);return}function V9a(){d1a(131604,50828);return}function W9a(){d1a(131600,50821);return}function X9a(){d1a(131596,50814);return}function Y9a(){d1a(131592,50805);return}function Z9a(){d1a(131588,50796);return}function _9a(){d1a(131584,50788);return}function $9a(){d1a(131580,50780);return}function aab(){d1a(131576,50773);return}function bab(){d1a(131572,50765);return}function cab(){d1a(131568,50756);return}function dab(){d1a(131564,50747);return}function eab(){d1a(131560,50738);return}function fab(){d1a(131556,50729);return}function gab(){d1a(131552,50721);return}function hab(){d1a(131548,50713);return}function iab(){d1a(131544,50705);return}function jab(){f[32818]=50172;return}function kab(){f[32814]=50136;return}function lab(){H8a();return}function mab(){d1a(131532,50696);return}function nab(){d1a(131528,50687);return}function oab(){d1a(131524,50677);return}function pab(a){a=a|0;f[a>>2]=50392;return}function qab(a){a=a|0;return 119479}function rab(a){a=a|0;return (a|0)==1|0}function sab(a){a=a|0;return (a|0)==6|0}function tab(a){a=a|0;Kab(a);return}function uab(a){a=a|0;f[a>>2]=50532;return}function vab(a){a=a|0;return (a|0)==2|0}function wab(a){a=a|0;tab(a);return}function xab(a){a=a|0;return a+15&-16|0}function yab(){K8a();return}function zab(){F8a();return}function Aab(a,b){a=+a;b=+b;return +(+Yfa(a,b))}function Bab(){Br();return}function Cab(){d1a(131520,50668);return}function Dab(){return 2147483647}function Eab(a){a=a|0;return 118934}function Fab(a){a=a|0;return (a|0)==3|0}function Gab(a){a=a|0;return (a|0)==0|0}function Hab(a,b){a=+a;b=b|0;return +(+YU(a,b))}function Iab(a){a=a|0;return (a|0)!=0|0}function Jab(a){a=a|0;b[a>>0]=0;return}function Kab(a){a=a|0;f[a>>2]=0;return}function Lab(a){a=a|0;return ac[a&127]()|0}function Mab(a,b,c){a=a|0;b=b|0;c=c|0;$(17)}function Nab(){V_();return}function Oab(){_0a();return}function Pab(a,b){a=+a;b=b|0;return +(+lV(a,b))}function Qab(){Kab(133204);return}function Rab(a){a=a|0;return a+184|0}function Sab(){Nab();return}function Tab(a){a=a|0;return (a+-65|0)>>>0<26|0}function Uab(a){a=a|0;return (a+-48|0)>>>0<10|0}function Vab(a){a=a|0;return a+8|0}function Wab(a){a=a|0;return a+16|0}function Xab(a){a=a|0;return 1}function Yab(a,b){a=+a;b=+b;return +(+Bl(a,b))}function Zab(a){a=a|0;return U9(a)|0}function _ab(a){a=+a;return a%1.0==0.0|0}function $ab(a){a=a|0;hb();return 0}function abb(){ei();return}function bbb(){Bab();return}function cbb(a,b){a=a|0;b=b|0;$(4);return 0}function dbb(a){a=a|0;return 122871}function ebb(a){a=a|0;hb()}function fbb(a){a=a|0;nc[a&63]()}function gbb(a,b){a=a|0;b=+b;$(3);return 0}function hbb(a){a=a|0;return 123007}function ibb(a){a=a|0;return k1a(a)|0}function jbb(a){a=a|0;return Uab(a)|0}function kbb(){Ma()}function lbb(a,b){a=a|0;b=b|0;$(16)}function mbb(a){a=a|0;Jb()}function nbb(a){a=a|0;return 0}function obb(a){a=a|0;xb(a|0)}function pbb(){Ga()}function qbb(a){a=a|0;return n8(a)|0}function rbb(a){a=a|0;ubb(a);return}function sbb(){return 132700}function tbb(a){a=a|0;u=a}function ubb(a){a=a|0;rg(a);return}function vbb(a){a=a|0;I=a}function wbb(a){a=a|0;return}function xbb(){cb(133796);return}function ybb(){Na()}function zbb(a){a=a|0;$(0);return 0.0}function Abb(a){a=a|0;$(2);return 0}function Bbb(a){a=a|0;return a|0}function Cbb(){Sa(133796);return}function Dbb(){return}function Ebb(){return I|0}function Fbb(){return u|0}function Gbb(a){a=a|0;$(15)}function Hbb(){return 133828}function Ibb(){return 46580}function Jbb(){hb()}function Kbb(){$(1);return 0}function Lbb(){return 0}function Mbb(){$(14)} +function rn(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;n=m;i=m+36|0;l=m+32|0;j=m+28|0;k=m+24|0;a:do if(!(f[e+4>>2]&1)){f[l>>2]=-1;o=f[(f[a>>2]|0)+16>>2]|0;f[j>>2]=f[c>>2];f[k>>2]=f[d>>2];f[i>>2]=f[j>>2];f[n>>2]=f[k>>2];i=jc[o&63](a,i,n,e,g,l)|0;f[c>>2]=i;switch(f[l>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}}else{dYa(n,e);x=0;j=ia(73,f[n>>2]|0,134880)|0;o=x;x=0;do if(o&1){i=Ia()|0;OCa(n)}else{OCa(n);dYa(n,e);x=0;i=ia(73,f[n>>2]|0,134896)|0;o=x;x=0;if(o&1){i=Ia()|0;OCa(n);break}OCa(n);x=0;ua(f[(f[i>>2]|0)+24>>2]|0,n|0,i|0);o=x;x=0;do if(!(o&1)){x=0;ua(f[(f[i>>2]|0)+28>>2]|0,n+12|0,i|0);o=x;x=0;if(o&1){i=Ia()|0;MTa(n);break}a=n+24|0;x=0;i=pa(19,c|0,f[d>>2]|0,n|0,a|0,j|0,g|0,1)|0;o=x;x=0;if(o&1){i=Ia()|0;j=I;do{a=a+-12|0;MTa(a)}while((a|0)!=(n|0));break}else{b[h>>0]=(i|0)==(n|0)&1;i=f[c>>2]|0;do{a=a+-12|0;MTa(a)}while((a|0)!=(n|0));break a}}else i=Ia()|0;while(0)}while(0);Ua(i|0)}while(0);u=m;return i|0}function sn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;h=b+8|0;e=f[h>>2]|0;if(!e)b=a;else{b=v$a(a)|0;if((b|0)!=0?!(Qab(f[b+8>>2]|0)|0):0)j=c;else{b=vwa(f[c>>2]|0,a)|0;j=c;e=f[h>>2]|0}a=e;while(1){if(!a)break;e=sUa(a)|0;if(!e){i=19;break}g=e+24|0;e=f[e+20>>2]|0;while(1){if((e|0)==(g|0))break;a=f[e+20>>2]|0;k=Dp(f[e+16>>2]|0)|0;f[b+8>>2]=k;tt(b);b=vwa(f[j>>2]|0,b)|0;faa(b+12|0,ec[f[(f[a>>2]|0)+8>>2]&127](a,c,d)|0);tt(b);a=f[e+4>>2]|0;if(!a)while(1){a=f[e+8>>2]|0;if((f[a>>2]|0)==(e|0)){e=a;break}else e=a}else{e=a;while(1){a=f[e>>2]|0;if(!a)break;else e=a}}}a=f[(f[h>>2]|0)+8>>2]|0;f[h>>2]=a}a:do if((i|0)==19){e=SUa(a)|0;if(e|0){k=Dp(f[(f[e+20>>2]|0)+100>>2]|0)|0;f[b+8>>2]=k;break}a=hVa(a)|0;if(!a)Ca(89025,88985,80,89030);g=Jbb(f[a+32>>2]|0)|0;if(!g)Ca(89054,88985,81,89030);e=f[a+40>>2]|0;if((g|0)==1){k=Dp(f[(f[e+8>>2]|0)+100>>2]|0)|0;f[b+8>>2]=k;break}e=Jbb(e)|0;g=T6a(a+24|0)|0;while(1){a=e;if((g|0)==(a|0))break a;k=Dp(f[(f[e+8>>2]|0)+100>>2]|0)|0;f[b+8>>2]=k;tt(b);k=vwa(f[j>>2]|0,b)|0;tt(k);b=k;e=f[a+4>>2]|0}}while(0);tt(b)}return b|0}function tn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;g=s+8|0;l=s+4|0;m=s;n=a+64|0;if(!(f[n>>2]|0))d=-1;else{wT(a);q=a+20|0;r=f[q>>2]|0;o=a+28|0;p=f[o>>2]|0;k=g2a(c,-1)|0;d=a+24|0;e=f[d>>2]|0;if(k)g=r;else{if(!e){f[d>>2]=g;f[q>>2]=g;f[o>>2]=g+1;e=g}g=d7a(c)|0;b[e>>0]=g;e=(f[d>>2]|0)+1|0;f[d>>2]=e;g=f[q>>2]|0}a:do if((e|0)==(g|0))h=25;else{do if(!(b[a+98>>0]|0)){i=a+32|0;f[l>>2]=f[i>>2];j=a+68|0;k=a+72|0;h=a+52|0;a=g;while(1){g=f[j>>2]|0;if(!g){h=12;break}t=f[i>>2]|0;e=lc[f[(f[g>>2]|0)+12>>2]&15](g,k,a,e,m,t,t+(f[h>>2]|0)|0,l)|0;g=f[q>>2]|0;if((f[m>>2]|0)==(g|0)){h=23;break}if((e|0)==3){h=15;break}if(e>>>0>=2){h=23;break}a=f[i>>2]|0;t=(f[l>>2]|0)-a|0;if((LHa(a,1,t,f[n>>2]|0)|0)!=(t|0)){h=23;break}if((e|0)!=1){h=21;break}a=f[m>>2]|0;e=f[d>>2]|0;f[q>>2]=a;f[o>>2]=e}if((h|0)==12){t=Ea(4)|0;Cab(t);Pa(t|0,39536,426)}else if((h|0)==15){t=(f[d>>2]|0)-g|0;if((LHa(g,1,t,f[n>>2]|0)|0)==(t|0))h=22;else h=23}else if((h|0)==21)h=22;if((h|0)==22)break;else if((h|0)==23){d=-1;break a}}else{t=e-g|0;if((LHa(g,1,t,f[n>>2]|0)|0)!=(t|0)){d=-1;break a}}while(0);f[d>>2]=r;f[q>>2]=r;f[o>>2]=p;h=25}while(0);if((h|0)==25)d=dXa(c)|0}u=s;return d|0}function un(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;p=o+4|0;k=o;f[p>>2]=0;n=p+4|0;f[n>>2]=0;l=p+8|0;f[l>>2]=0;m=a+24|0;j=0;i=0;e=f[a+20>>2]|0;while(1){if((e|0)==(m|0)){e=3;break}x=0;g=ia(146,b|0,f[e+16>>2]|0)|0;h=x;x=0;if(h&1){e=19;break}h=f[e+20>>2]|0;x=0;h=ja(f[(f[h>>2]|0)+8>>2]|0,h|0,b|0,c|0)|0;q=x;x=0;if(q&1){e=19;break}x=0;h=ka(8,b|0,g|0,h|0,0)|0;q=x;x=0;if(q&1){e=19;break}f[k>>2]=h;g=f[n>>2]|0;if((g|0)==(f[l>>2]|0)){x=0;ua(1500,p|0,k|0);q=x;x=0;if(q&1){e=19;break}}else{f[g>>2]=h;f[n>>2]=(f[n>>2]|0)+4}if(!i){j=h;i=h}else{f[i+16>>2]=h;NI(i);i=f[k>>2]|0}g=f[e+4>>2]|0;if(!g)while(1){g=f[e+8>>2]|0;if((f[g>>2]|0)==(e|0)){e=g;break}else e=g}else{e=g;while(1){g=f[e>>2]|0;if(!g)break;else e=g}}}if((e|0)==3){while(1){e=f[n>>2]|0;if((e|0)==(f[p>>2]|0))break;m=e+-4|0;q=f[m>>2]|0;f[n>>2]=m;NI(q)}x=0;e=ia(99,f[b>>2]|0,j|0)|0;q=x;x=0;do if(!(q&1)?(x=0,d=ka(16,e|0,a|0,b|0,c|0)|0,q=x,x=0,!(q&1)):0){e=f[a+8>>2]|0;if(e){x=0;e=ja(f[(f[e>>2]|0)+8>>2]|0,e|0,b|0,c|0)|0;q=x;x=0;if(q&1)break;x=0;d=ja(51,b|0,d|0,e|0)|0;q=x;x=0;if(q&1)break}zSa(p);u=o;return d|0}while(0);d=Ia()|0}else if((e|0)==19)d=Ia()|0;zSa(p);Ua(d|0);return 0}function vn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+192|0;i=m+92|0;j=m;g=f[c>>2]|0;do if(g){if((e|0)!=0?(f[e>>2]|0)!=0:0){h=a+40|0;gA(i,fZa(f[h>>2]|0)|0,g);g=f[e>>2]|0;if(g|0){h=fZa(f[h>>2]|0)|0;x=0;va(101,j|0,h|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;_7(i);Ua(m|0)}h=xj(j,i)|0;_7(j);if(h){_7(i);g=d;break}}_7(i);g=f[c>>2]|0}g=v$a(g)|0;if(((g|0)!=0?!(Qab(f[g+8>>2]|0)|0):0)?(l=g+12|0,k=g+16|0,(Jbb(f[k>>2]|0)|0)>>>0>1):0){e=b+4|0;if((f[e>>2]|0)==0?XN(g)|0:0){g=d;break}h=RCa(l)|0;h=f[h>>2]|0;j=f[h+4>>2]|0;if((j|0)!=5?(f[g+4>>2]|0)==(j|0):0){f[c>>2]=h;if(!d){d=RCa(l)|0;f[d>>2]=b;aKa(g,f[e>>2]|0);GVa(f[a+16>>2]|0,g)|0;break}e=d+12|0;c=RCa(e)|0;if((f[c>>2]|0)!=(b|0))Ca(105521,105548,377,105577);REa(e);g=0;while(1){if(g>>>0>=((Jbb(f[k>>2]|0)|0)+-1|0)>>>0)break;c=ODa(l,g)|0;faa(e,f[c>>2]|0);g=g+1|0}faa(e,b);g=d}else g=d}else g=d}else g=d;while(0);u=m;return g|0}function wn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+64|0;j=n+16|0;k=n+52|0;o=n+40|0;h=n;l=n+36|0;m=n+32|0;f[k>>2]=d;f[o>>2]=0;i=o+4|0;f[i>>2]=0;f[o+8>>2]=0;while(1){x=0;e=ga(294,b|0)|0;g=x;x=0;if(g&1){c=9;break}if(c>>>0>=e>>>0){c=14;break}g=c+1|0;x=0;c=ia(69,b|0,c|0)|0;e=x;x=0;if(e&1){c=12;break}x=0;c=ga(296,c|0)|0;e=x;x=0;if(e&1){c=12;break}e=dV(c)|0;if(e|0?(x=0,va(141,c|0,e|0,o|0),e=x,x=0,e&1):0){c=13;break}c=g}a:do if((c|0)==9){d=Ia()|0;c=11}else if((c|0)==12)d=Ia()|0;else if((c|0)==13)d=Ia()|0;else if((c|0)==14){do if(!d){x=0;d=ga(232,f[a+4>>2]|0)|0;b=x;x=0;if(b&1){d=Ia()|0;c=11;break a}else{t$a(h,0);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];cqa(d,j)|0;f[k>>2]=d;break}}while(0);b=f[a>>2]|0;h=f[o>>2]|0;f[l>>2]=h;c=(f[i>>2]|0)-h|0;f[m>>2]=c;e=b+104|0;g=f[e>>2]|0;if(g>>>0<(f[b+108>>2]|0)>>>0){x=0;va(85,j|0,c|0,0);m=x;x=0;if(!(m&1)?(x=0,wa(139,g|0,d|0,h|0,f[j>>2]|0),m=x,x=0,!(m&1)):0){f[e>>2]=(f[e>>2]|0)+16;c=22}else c=23}else{x=0;wa(141,b+100|0,k|0,l|0,m|0);m=x;x=0;if(m&1)c=23;else c=22}if((c|0)==22){zSa(o);u=n;return}else if((c|0)==23){d=Ia()|0;break}}while(0);zSa(o);Ua(d|0)}function xn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+16|0;m=o+8|0;h=o;d=bP(f[a+36>>2]|0,1,c)|0;f[n>>2]=d;e=a+4|0;g=f[e>>2]|0;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else LL(a,n);d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))LL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}j=c+12|0;Q$a(m,j);LUa(h,j);j=a+33|0;k=c;l=m+4|0;i=f[h>>2]|0;g=f[h+4>>2]|0;d=0;while(1){if(!(qTa(f[m>>2]|0,f[l>>2]|0,i,g)|0)){d=9;break}h=QOa(m)|0;h=f[h>>2]|0;if(b[j>>0]|0){zm(DCa(zm(DCa(134176,87679)|0,k)|0,111106)|0,d)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[n>>2]|0,134880)|0;p=x;x=0;if(p&1){d=13;break}x=0;e=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0;p=x;x=0;if(p&1){d=13;break}OCa(n);Wq(134176,e)|0;fu(134176)|0;d=d+1|0}Ypa(a,h);YYa(m)}if((d|0)==9){OA(a,c);u=o;return}else if((d|0)==13){p=Ia()|0;OCa(n);Ua(p|0)}}function yn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;k=q+36|0;i=q+32|0;l=q+24|0;j=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;do if(b[a+33>>0]|0){d=DCa(134176,110960)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,h=x,x=0,!(h&1)):0){OCa(k);Wq(d,g)|0;fu(d)|0;break}q=Ia()|0;OCa(k);Ua(q|0)}while(0);d=f[c+32>>2]|0;if(d|0)oGa(a,d);oGa(a,f[c+28>>2]|0);g=zAa(c)|0;h=a+28|0;d=f[h>>2]|0;if(g){e=Gv(d,14)|0;g=c+8|0;n4a(i,Jbb(f[c+12>>2]|0)|0);Yr(e,f[i>>2]|0)|0;Q$a(l,g);LUa(j,g);g=l+4|0;e=f[j>>2]|0;d=f[j+4>>2]|0;while(1){if(!(qTa(f[l>>2]|0,f[g>>2]|0,e,d)|0))break;i=QOa(l)|0;j=f[h>>2]|0;f[n>>2]=f[i>>2];f[k>>2]=f[n>>2];n4a(m,ZZ(a,k)|0);Yr(j,f[m>>2]|0)|0;YYa(l)}n=f[h>>2]|0;f[p>>2]=f[c+24>>2];f[k>>2]=f[p>>2];n4a(o,ZZ(a,k)|0);Yr(n,f[o>>2]|0)|0}else iTa(d);u=q;return}function zn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;e=t;l=f[d+8>>2]|0;f[e>>2]=l;e=JH(e,4)|0;s=d+4|0;f[s>>2]=e;r=c+4|0;k=f[r>>2]|0;q=(k|0)==0;a:do if(!q){m=k+-1|0;o=(m&k|0)==0;if(!o)if(e>>>0>>0)h=e;else h=(e>>>0)%(k>>>0)|0;else h=m&e;e=f[(f[c>>2]|0)+(h<<2)>>2]|0;if(!e){e=h;p=15}else while(1){e=f[e>>2]|0;if(!e){e=h;p=15;break a}g=f[e+4>>2]|0;if(!o){if(g>>>0>=k>>>0)g=(g>>>0)%(k>>>0)|0}else g=g&m;if((g|0)!=(h|0)){e=h;p=15;break a}if((f[e+8>>2]|0)==(l|0)){g=0;break}}}else{e=0;p=15}while(0);if((p|0)==15){l=c+12|0;i=+(((f[l>>2]|0)+1|0)>>>0);j=+n[c+16>>2];do if(q|j*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;e=~~+W(+(i/j))>>>0;oL(c,h>>>0>>0?e:h);h=f[r>>2]|0;e=f[s>>2]|0;g=h+-1|0;if(!(g&h)){k=h;e=g&e;break}if(e>>>0>>0)k=h;else{k=h;e=(e>>>0)%(h>>>0)|0}}while(0);g=f[(f[c>>2]|0)+(e<<2)>>2]|0;if(!g){s=c+8|0;f[d>>2]=f[s>>2];f[s>>2]=d;f[(f[c>>2]|0)+(e<<2)>>2]=s;e=f[d>>2]|0;if(!e)e=d;else{e=f[e+4>>2]|0;g=k+-1|0;if(g&k){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&g;f[(f[c>>2]|0)+(e<<2)>>2]=d;e=d}}else{f[d>>2]=f[g>>2];f[g>>2]=d;e=d}f[l>>2]=(f[l>>2]|0)+1;g=1}f[a>>2]=e;b[a+4>>0]=g;u=t;return}function An(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;g=m+12|0;n=m+16|0;j=m+8|0;k=m+4|0;l=m;f[g>>2]=b;f[n>>2]=n;h=n+4|0;f[h>>2]=n;i=n+8|0;f[i>>2]=0;x=0;ua(1492,n|0,g|0);g=x;x=0;if(g&1)b=Ia()|0;else{e=a+4|0;g=a+8|0;a:while(1){if(!(f[i>>2]|0)){c=23;break}f[j>>2]=f[(f[h>>2]|0)+8>>2];Yma(n);x=0;b=ia(144,e|0,j|0)|0;d=x;x=0;if(d&1){c=9;break}d=f[b>>2]|0;f[k>>2]=d;b=f[a>>2]|0;if(DQa(b,d)|0){x=0;b=ia(142,b|0,k|0)|0;d=x;x=0;if(d&1){c=9;break}wZ(b,f[j>>2]|0)}x=0;b=ia(144,e|0,j|0)|0;d=x;x=0;if(d&1){c=9;break}b:do if(f[b>>2]|0){x=0;b=ia(144,e|0,j|0)|0;d=x;x=0;if(d&1){c=9;break a}f[b>>2]=0;b=f[j>>2]|0;c=Jbb(f[b+16>>2]|0)|0;while(1){d=c;if((T6a(b)|0)==(d|0))break b;c=f[c+8>>2]|0;f[l>>2]=c;c=hX(e,c)|0;if((c|0)!=(g|0)?(f[c+20>>2]|0)!=0:0){x=0;ua(1492,n|0,l|0);c=x;x=0;if(c&1){c=20;break a}b=f[j>>2]|0}c=f[d+4>>2]|0}}while(0)}if((c|0)==9)b=Ia()|0;else if((c|0)==20)b=Ia()|0;else if((c|0)==23){iVa(n);u=m;return}}iVa(n);Ua(b|0)}function Bn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;m=o;n=s8(88)|0;dX(n);i=Yj(b)|0;f[n>>2]=i;i=n+8|0;f[m>>2]=1;j=n+12|0;e=f[j>>2]|0;g=n+16|0;d=f[g>>2]|0;if(e>>>0>>0){f[e>>2]=1;e=e+4|0;f[j>>2]=e}else{LL(i,m);e=f[j>>2]|0;d=f[g>>2]|0}f[m>>2]=1;if(e>>>0>>0){f[e>>2]=1;e=e+4|0;f[j>>2]=e}else{LL(i,m);e=f[j>>2]|0;d=f[g>>2]|0}l=b+32|0;if((e|0)==(d|0))LL(i,l);else{f[e>>2]=f[l>>2];f[j>>2]=e+4}f[m>>2]=1;d=n+24|0;e=f[d>>2]|0;if(e>>>0<(f[n+28>>2]|0)>>>0){f[e>>2]=1;f[d>>2]=e+4}else LL(n+20|0,m);f[n+4>>2]=0;_0a(m,c);d=f[m>>2]|0;j=vwa(d,0)|0;k=j+12|0;i=SKa(d,0,1)|0;faa(k,Qya(m,3,Kpa(d,0,i,SKa(d,1,1)|0)|0)|0);faa(k,gr(a,m,3,h[b+8>>0]|0)|0);d=f[b+16>>2]|0;if((Jbb(d)|0)>>>0>1)faa(k,Lz(a,d,m,3)|0);g=vUa(c+144|0)|0;i=g;d=b;e=i+36|0;do{f[i>>2]=f[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(e|0));b=SKa(f[m>>2]|0,3,1)|0;f[g+24>>2]=b;m=SKa(f[m>>2]|0,2,f[l>>2]|0)|0;f[g+28>>2]=m;faa(k,g);aKa(j,0);f[n+36>>2]=j;Is(c,n);u=o;return}function Cn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;g=k+24|0;i=k;h=(f[a+4>>2]|0)-(f[a>>2]|0)|0;j=h>>2;a:do if(!h){d=f[c>>2]|0;if((f[c+4>>2]|0)==(d|0))Ca(79934,79955,163,79981);while(1){if(pra(f[d+16>>2]|0)|0)break a;d=f[c>>2]|0}}else{uSa(132516);do if((((f[c+4>>2]|0)-(f[c>>2]|0)|0)/24|0|0)==(j|0)){h=a+12|0;if(b[h>>0]|0){x=0;wa(71,80010,79955,174,79981);x=0;e=9;break}b[h>>0]=1;f[g>>2]=132488;b[g+4>>0]=1;x=0;ta(458,132488);d=x;x=0;if(d&1)d=Ia()|0;else{x=0;ta(474,a|0);d=x;x=0;do if(!(d&1)){d=0;while(1){if(d>>>0>=j>>>0){e=23;break}e=f[(f[a>>2]|0)+(d<<2)>>2]|0;x=0;ua(1298,i|0,(f[c>>2]|0)+(d*24|0)|0);l=x;x=0;if(l&1){e=21;break}x=0;ua(1299,e|0,i|0);l=x;x=0;if(l&1){e=22;break}xta(i);d=d+1|0}if((e|0)==21){d=Ia()|0;break}else if((e|0)==22){d=Ia()|0;xta(i);break}else if((e|0)==23){J0(a+16|0,g,a);b[h>>0]=0;mJa(132488);mJa(132516);break a}}else d=Ia()|0;while(0);mJa(132488)}}else{x=0;wa(71,79986,79955,173,79981);x=0;e=9}while(0);if((e|0)==9)d=Ia()|0;mJa(132516);Ua(d|0)}while(0);u=k;return}function Dn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;l=j+28|0;k=j+16|0;h=j+4|0;i=j;d=(f[a>>2]|0)+3|0;while(1){c=b[d>>0]|0;if(c<<24>>24==32)d=d+1|0;else break}g=d;a:while(1){switch(c<<24>>24){case 10:case 0:break a;default:{}}c=g+1|0;g=c;c=b[c>>0]|0}c=d;while(1){if(c>>>0>=g>>>0)break;if((b[c>>0]|0)==58){e=10;break}c=c+1|0}b:do if((e|0)==10){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;pQ(l,d,c);e=c+1|0;c=e;while(1){if(c>>>0>=g>>>0){d=0;break}if((b[c>>0]|0)==58){d=1;break}c=c+1|0}f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;va(152,k|0,e|0,c|0);e=x;x=0;c:do if(e&1)c=Ia()|0;else{do if(d){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;x=0;va(152,h|0,c+1|0,g|0);g=x;x=0;if(g&1)c=Ia()|0;else{x=0;c=ia(178,a+16|0,12)|0;g=x;x=0;if(!(g&1)?(x=0,va(88,i|0,((b[l+11>>0]|0)<0?f[l>>2]|0:l)|0,0),g=x,x=0,!(g&1)):0){e=AR((b[k+11>>0]|0)<0?f[k>>2]|0:k)|0;g=AR((b[h+11>>0]|0)<0?f[h>>2]|0:h)|0;uOa(c,f[i>>2]|0,e,g);f[a+12>>2]=c;MTa(h);break}c=Ia()|0;MTa(h)}MTa(k);break c}while(0);MTa(k);MTa(l);break b}while(0);MTa(l);Ua(c|0)}while(0);u=j;return}function En(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;b=qCa(b)|0;j=a+56|0;if(!b){b=f[j>>2]|0;if(b|0){i=f[a+32>>2]|0;Jbb(i)|0;i=i+68|0;g=ODa(b+8|0,0)|0;g=TRa((QRa(f[g>>2]|0)|0)+8|0)|0;h=f[a+36>>2]|0;Jbb(h)|0;if((((f[h+136>>2]|0)-(f[h+132>>2]|0)|0)/12|0)>>>0<=g>>>0)Ca(63630,51387,1410,112063);h=ODa((f[j>>2]|0)+8|0,1)|0;h=TRa((QRa(f[h>>2]|0)|0)+8|0)|0;e=f[a+40>>2]|0;d=(f[a+44>>2]|0)-e>>2;a=d;a:while(1){b=a+-1|0;c=f[e+(b<<2)>>2]|0;f[k>>2]=c;if(!b){b=0;break}a=f[f[e+(a+-2<<2)>>2]>>2]|0;if(zab(a)|0)break;if(Nab(a)|0)break;if(Dab(a)|0)break;switch(f[c+4>>2]|0){case 5:case 0:break a;default:{}}a=b}b:do if(!(Vz(i,k)|0))l=17;else while(1){b=b+1|0;if(b>>>0>=d>>>0)break b;f[k>>2]=f[e+(b<<2)>>2];if(!(Vz(i,k)|0)){l=17;break}}while(0);if((l|0)==17){l=Il(i,k)|0;f[l>>2]=g;f[l+4>>2]=h;f[l+8>>2]=0}f[j>>2]=0}}else{f[j>>2]=b;l=f[a+36>>2]|0;Jbb(l)|0;xsa(a+16|0,DWa(l+144|0)|0)}u=m;return}function Fn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=f[a>>2]|0;do if(e){g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Jbb(f[g>>2]|0)|0;if($5a(e)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(b){e=f[b+12>>2]|0;if((e|0)==(f[b+16>>2]|0))e=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0))if(g){h=b;i=16}else i=15;else i=13}else i=13;if((i|0)==13)if(g)i=15;else{h=0;i=16}do if((i|0)==15)f[c>>2]=f[c>>2]|6;else if((i|0)==16){e=f[a>>2]|0;g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Jbb(f[g>>2]|0)|0;if((ec[f[(f[d>>2]|0)+52>>2]&127](d,e,0)|0)<<24>>24!=37){f[c>>2]=f[c>>2]|4;break}e=f[a>>2]|0;g=e+12|0;b=f[g>>2]|0;if((b|0)==(f[e+16>>2]|0)){bc[f[(f[e>>2]|0)+40>>2]&511](e)|0;e=f[a>>2]|0;if(!e)g=1;else i=24}else{f[g>>2]=b+4;i=24}do if((i|0)==24){g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Jbb(f[g>>2]|0)|0;if($5a(e)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}while(0);if(h){e=f[h+12>>2]|0;if((e|0)==(f[h+16>>2]|0))e=bc[f[(f[h>>2]|0)+36>>2]&511](h)|0;else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0)){if(g)break}else i=35}else i=35;if((i|0)==35?!g:0)break;f[c>>2]=f[c>>2]|2}while(0);return}function Gn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o;n=s8(88)|0;dX(n);j=yj(c)|0;f[n>>2]=j;j=n+8|0;f[l>>2]=1;k=n+12|0;g=f[k>>2]|0;i=n+16|0;e=f[i>>2]|0;if(g>>>0>>0){f[g>>2]=1;g=g+4|0;f[k>>2]=g}else{LL(j,l);g=f[k>>2]|0;e=f[i>>2]|0}f[l>>2]=1;if(g>>>0>>0){f[g>>2]=1;f[k>>2]=g+4}else LL(j,l);f[l>>2]=1;e=n+24|0;g=f[e>>2]|0;if(g>>>0<(f[n+28>>2]|0)>>>0){f[g>>2]=1;f[e>>2]=g+4}else LL(n+20|0,l);g=f[c+4>>2]|0;f[n+4>>2]=g;_0a(l,d);e=f[l>>2]|0;i=vwa(e,0)|0;j=i+12|0;k=SKa(e,0,1)|0;faa(j,Qya(l,2,Kpa(e,0,k,SKa(e,1,1)|0)|0)|0);faa(j,gr(a,l,2,h[c+8>>0]|0)|0);e=f[c+16>>2]|0;if((Jbb(e)|0)>>>0>1)faa(j,Lz(a,e,l,2)|0);e=qWa(d+144|0)|0;f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[e+12>>2]=f[c+12>>2];f[e+16>>2]=f[c+16>>2];f[e+20>>2]=f[c+20>>2];f[e+24>>2]=f[c+24>>2];l=SKa(f[l>>2]|0,2,1)|0;f[e+24>>2]=l;if((b[e+20>>0]|0)!=0?(m=e+9|0,(b[m>>0]|0)!=0):0){e=ev(e,h[e+8>>0]|0,d)|0;b[m>>0]=0}faa(j,e);aKa(i,g);f[n+36>>2]=i;Is(d,n);u=o;return}function Hn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;i=l+3|0;g=b[i>>0]|0;h=g<<24>>24<0;if(h){m=f[a+4>>2]|0;e=(f[l>>2]&2147483647)+-1|0}else{m=g&255;e=1}c=m>>>0<2;j=c?1:(m+4&-4)+-1|0;a:do if((j|0)!=(e|0)){do if(c){c=f[a>>2]|0;if(h){d=c;g=0;e=a;k=24}else{yWa(a,c,(g&255)+1|0);Cbb(c);k=27}}else{d=j+1|0;c=d>>>0>1073741823;b:do if(j>>>0>e>>>0){if(!c){c=s8(d<<2)|0;break}c=Ea(8)|0;x=0;ua(98,c|0,121961);m=x;x=0;if(m&1){m=Ia()|0;La(c|0);Ua(m|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}else{do if(c){c=Ea(8)|0;x=0;ua(98,c|0,121961);m=x;x=0;if(m&1){m=Ja(0)|0;La(c|0);c=m;break}else{f[c>>2]=50472;x=0;va(98,c|0,39488,418);x=0;k=17;break}}else{x=0;c=ga(212,d<<2|0)|0;k=x;x=0;if(k&1)k=17;else break b}while(0);if((k|0)==17)c=Ja(0)|0;Fa(c|0)|0;Ga();break a}while(0);if(h){d=f[a>>2]|0;g=1;e=c;k=24;break}else{yWa(c,a,(g&255)+1|0);e=c;c=a+4|0;k=26;break}}while(0);if((k|0)==24){c=a+4|0;yWa(e,d,(f[c>>2]|0)+1|0);Cbb(d);if(g){d=j+1|0;k=26}else k=27}if((k|0)==26){f[l>>2]=d|-2147483648;f[c>>2]=m;f[a>>2]=e;break}else if((k|0)==27){b[i>>0]=m;break}}while(0);return}function In(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+48|0;d=j+40|0;l=j+24|0;i=j+8|0;e=j+36|0;c=j+20|0;g=j+4|0;h=j;b=f[33117]|0;f[e>>2]=f[33114];f[d>>2]=f[e>>2];hUa(i,d,1);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;x=0;ua(3184,l|0,1);e=x;x=0;if(e&1){k=Ia()|0;zSa(l);Ua(k|0)}C2(l,i,i+8|0);e=a+4|0;f[c>>2]=b;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;f[d>>2]=f[c>>2];c=ka(20,d|0,l|0,1,i|0)|0;b=x;x=0;a:do if(b&1){b=Ia()|0;zSa(i)}else{zSa(i);Bab(g);x=0;b=ja(46,f[e>>2]|0,0,1)|0;m=x;x=0;do if(!(m&1)){f[h>>2]=b;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,1);m=x;x=0;if(m&1){b=Ia()|0;zSa(i);k=13;break}qda(i,h,h+4|0);b=f[e>>2]|0;x=0;f[d>>2]=f[g>>2];b=ka(19,b|0,2,d|0,i|0)|0;m=x;x=0;if(m&1){b=Ia()|0;zSa(i);break}f[c+36>>2]=b;zSa(i);x=0;ua(3185,f[a>>2]|0,c|0);m=x;x=0;if(m&1){b=Ia()|0;break a}else{zSa(l);u=j;return c|0}}else{b=Ia()|0;k=13}while(0)}while(0);zSa(l);Ua(b|0);return 0}function Jn(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+112|0;k=r+40|0;j=r+32|0;l=r+60|0;m=r+96|0;n=r+16|0;o=r+56|0;p=r;q=Jbb(f[d>>2]|0)|0;d=b[c+8>>0]|0;a:do if((f[e>>2]|0)==2&d<<24>>24==8){i=l;d=c;h=i+36|0;do{f[i>>2]=f[d>>2];i=i+4|0;d=d+4|0}while((i|0)<(h|0));b[l+8>>0]=4;f[l+4>>2]=1;i=oJa(e)|0;c=I;e=f[(f[a>>2]|0)+28>>2]|0;hLa(m,q,0);t$a(n,i);f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];f[k+12>>2]=f[n+12>>2];rc[e&255](a,l,j,k);e=f[(f[a>>2]|0)+28>>2]|0;hLa(o,q+4|0,0);t$a(p,c);f[j>>2]=f[o>>2];f[k>>2]=f[p>>2];f[k+4>>2]=f[p+4>>2];f[k+8>>2]=f[p+8>>2];f[k+12>>2]=f[p+12>>2];rc[e&255](a,l,j,k)}else{h=d&255;if((Jbb(f[c+16>>2]|0)|0)>>>0>=h>>>0?(h+-1&q|0)==0:0){if(t6a(f[c+32>>2]|0)|0)switch(d<<24>>24){case 4:{+lb(37,q|0,+(+TNa(e)));break a}case 8:{+lb(38,q|0,+(+SNa(e)));break a}default:hb()}switch(d<<24>>24){case 1:{sb(34,q|0,Jia(e)|0)|0;break a}case 2:{sb(35,q|0,Jia(e)|0)|0;break a}case 4:{sb(36,q|0,Jia(e)|0)|0;break a}default:hb()}}d=t6a(f[c+32>>2]|0)|0;if(d)g=+rAa(e);else{e=Jia(e)|0;g=+(e>>>0)+4294967296.0*+(I|0)}+nb(33,q|0,h|0,d&1|0,+g)}while(0);u=r;return}function Kn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;l=q+8|0;m=q;p=b+8|0;do if((((Qab(f[p>>2]|0)|0?(Jbb(f[b+16>>2]|0)|0)==1:0)?(n=ODa(b+12|0,0)|0,n=v$a(f[n>>2]|0)|0,n|0):0)?(k=n+8|0,Qab(f[k>>2]|0)|0):0)?(o=n+4|0,(f[o>>2]|0)==(f[b+4>>2]|0)):0){c=JW(a+44|0,p)|0;h=c+4|0;i=l+4|0;j=m+4|0;c=f[c>>2]|0;while(1){if((c|0)==(h|0)){b=8;break}b=f[c+16>>2]|0;d=u$a(b)|0;if(!d){e=k$a(b)|0;if(!e){b=20;break}b=e+8|0;Q$a(l,b);LUa(m,b);b=f[m>>2]|0;d=f[j>>2]|0;while(1){if(!(qTa(f[l>>2]|0,f[i>>2]|0,b,d)|0))break;g=QOa(l)|0;if(g2a(f[g>>2]|0,f[p>>2]|0)|0)f[g>>2]=f[k>>2];YYa(l)}b=e+24|0;if(g2a(f[b>>2]|0,f[p>>2]|0)|0)f[b>>2]=f[k>>2]}else{b=d+8|0;if(g2a(f[b>>2]|0,f[p>>2]|0)|0)f[b>>2]=f[k>>2]}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((b|0)==8){aKa(n,f[o>>2]|0);GVa(f[a+16>>2]|0,n)|0;break}else if((b|0)==20)hb()}while(0);vQ(a,p);u=q;return}function Ln(){M6a();q6a();o6a();m6a();k6a();h6a();_5a();Y5a();W5a();U5a();S5a();Q5a();O5a();M5a();K5a();I5a();G5a();E5a();C5a();A5a();y5a();w5a();u5a();s5a();q5a();o5a();m5a();k5a();i5a();g5a();e5a();c5a();a5a();_4a();Y4a();W4a();U4a();S4a();Q4a();O4a();M4a();K4a();I4a();G4a();E4a();i6a();B4a();z4a();x4a();v4a();t4a();l4a();j4a();h4a();f4a();d4a();b4a();$3a();Z3a();X3a();V3a();T3a();R3a();P3a();N3a();L3a();J3a();H3a();F3a();D3a();B3a();z3a();x3a();v3a();t3a();r3a();p3a();n3a();l3a();j3a();h3a();f3a();d3a();c3a();L6a();K6a();J6a();n2a();m2a();ibb();return}function Mn(a,c,e,g,i,j){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;f[e>>2]=a;f[j>>2]=g;p=c;q=i;a:while(1){m=f[e>>2]|0;if(m>>>0>=c>>>0){a=0;break}if(g>>>0>=i>>>0){a=1;break}l=b[m>>0]|0;o=l&255;do if(l<<24>>24>-1){d[g>>1]=l&255;a=m+1|0}else{if((l&255)<194){a=2;break a}if((l&255)<224){if((p-m|0)<2){a=1;break a}a=h[m+1>>0]|0;if((a&192|0)!=128){a=2;break a}d[g>>1]=a&63|o<<6&1984;a=m+2|0;break}if((l&255)<240){if((p-m|0)<3){a=1;break a}k=b[m+1>>0]|0;a=b[m+2>>0]|0;switch(l<<24>>24){case -32:{if((k&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((k&-32)<<24>>24!=-128){a=2;break a}break}default:if((k&-64)<<24>>24!=-128){a=2;break a}}a=a&255;if((a&192|0)!=128){a=2;break a}d[g>>1]=(k&63)<<6|o<<12|a&63;a=m+3|0;break}if((l&255)>=245){a=2;break a}if((p-m|0)<4){a=1;break a}n=b[m+1>>0]|0;a=b[m+2>>0]|0;k=b[m+3>>0]|0;switch(l<<24>>24){case -16:{if((n+112&255)>=48){a=2;break a}break}case -12:{if((n&-16)<<24>>24!=-128){a=2;break a}break}default:if((n&-64)<<24>>24!=-128){a=2;break a}}m=a&255;if((m&192|0)!=128){a=2;break a}l=k&255;if((l&192|0)!=128){a=2;break a}if((q-g|0)<4){a=1;break a}k=o&7;a=n&255;if((a<<12&196608|k<<18)>>>0>1114111){a=2;break a}d[g>>1]=a<<2&60|m>>>4&3|((a>>>4&3|k<<2)<<6)+16320|55296;a=g+2|0;f[j>>2]=a;d[a>>1]=l&63|m<<6&960|56320;a=(f[e>>2]|0)+4|0}while(0);f[e>>2]=a;g=(f[j>>2]|0)+2|0;f[j>>2]=g}return a|0}function Nn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=b+12|0;j=b+16|0;b=f[j>>2]|0;a:do if(Jbb(b)|0){k=a+80|0;i=0;b:while(1){if(i>>>0>=(b+-1|0)>>>0)break a;h=0;c=i;while(1){c=c+1|0;if(c>>>0>=b>>>0)break;b=ODa(l,c)|0;b=E2(f[b>>2]|0,f[k>>2]|0)|0;if(!b){d=ODa(l,c)|0;d=v$a(f[d>>2]|0)|0;if(!d)break;e=d+12|0;b=d+16|0;if(!(Jbb(f[b>>2]|0)|0))break;g=ODa(e,0)|0;g=E2(f[g>>2]|0,f[k>>2]|0)|0;if(!g)break;m=ODa(l,i)|0;if(h|(Mi(a,g,f[m>>2]|0)|0))b=1;else{if((Jbb(f[b>>2]|0)|0)!=1)break b;$p(a,ODa(l,i)|0,g);m=ODa(l,i)|0;m=f[m>>2]|0;b=ODa(e,0)|0;f[b>>2]=m;b=ODa(l,i)|0;f[b>>2]=d;b=ODa(l,c)|0;f[b>>2]=g;uVa(g);b=0}}else{m=ODa(l,i)|0;if(h|(Mi(a,b,f[m>>2]|0)|0))b=1;else{$p(a,ODa(l,i)|0,b);uVa(b);b=0}}h=b;b=f[j>>2]|0}i=c;b=f[j>>2]|0}Ca(99850,99875,124,99914)}while(0);return}function On(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;j=s;b[a>>0]=0;g=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;h=f[g+16>>2]|0;if(!h){g=f[g+72>>2]|0;if(g|0)fu(g)|0;do if(!e?(i=c+(f[(f[c>>2]|0)+-12>>2]|0)|0,f[i+4>>2]&4096|0):0){dYa(j,i);x=0;g=ia(73,f[j>>2]|0,134880)|0;q=x;x=0;if(q&1){s=Ia()|0;OCa(j);Ua(s|0)}OCa(j);p=f[c+(f[(f[c>>2]|0)+-12>>2]|0)+24>>2]|0;k=g+8|0;l=p;m=(p|0)==0;n=l+12|0;o=l+16|0;q=p;while(1){if(m)break;g=f[n>>2]|0;if((g|0)==(f[o>>2]|0))g=bc[f[(f[q>>2]|0)+36>>2]&511](l)|0;else g=d7a(b[g>>0]|0)|0;j=g2a(g,-1)|0;i=j?0:p;if(j)break;e=i;h=e+12|0;g=f[h>>2]|0;j=e+16|0;if((g|0)==(f[j>>2]|0))g=bc[f[(f[i>>2]|0)+36>>2]&511](e)|0;else g=d7a(b[g>>0]|0)|0;if((g&255)<<24>>24<=-1){r=23;break}if(!(d[(f[k>>2]|0)+(g<<24>>24<<1)>>1]&8192)){r=23;break}g=f[h>>2]|0;if((g|0)==(f[j>>2]|0))bc[f[(f[i>>2]|0)+40>>2]&511](e)|0;else f[h>>2]=g+1}if((r|0)==23){g=f[h>>2]|0;if((g|0)==(f[j>>2]|0))g=bc[f[(f[q>>2]|0)+36>>2]&511](e)|0;else g=d7a(b[g>>0]|0)|0;if(!(g2a(g,-1)|0))break}r=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;KS(r,f[r+16>>2]|6)}while(0);b[a>>0]=(f[c+(f[(f[c>>2]|0)+-12>>2]|0)+16>>2]|0)==0&1}else KS(g,h|4);u=s;return}function Pn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;l=p;f[a>>2]=c;f[a+4>>2]=d;q=a+8|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[a+24>>2]=1065353216;b[a+28>>0]=0;x=0;g=ia(62,134008,73197)|0;k=x;x=0;do if((!(k&1)?(x=0,e=ia(76,g|0,f[f[c+116>>2]>>2]|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,e|0,87606)|0,k=x,x=0,!(k&1)):0){k=d+24|0;e=d+28|0;g=f[e>>2]|0;h=a+20|0;c=f[k>>2]|0;while(1){if((c|0)==(g|0))break;j=f[c>>2]|0;f[l>>2]=j;if(!(Nab(f[j>>2]|0)|0)){i=f[h>>2]|0;x=0;j=ia(112,q|0,l|0)|0;r=x;x=0;if(r&1){o=11;break}f[j>>2]=i}c=c+4|0}if((o|0)==11){c=Ia()|0;break}e=f[e>>2]|0;c=f[k>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(636,a|0,f[c>>2]|0);r=x;x=0;if(r&1){o=17;break}c=c+4|0}if((o|0)==17){c=Ia()|0;break}e=f[d+60>>2]|0;c=f[d+56>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(637,a|0,f[c>>2]|0);r=x;x=0;if(r&1){o=22;break}c=c+4|0}if((o|0)==22){c=Ia()|0;break}x=0;c=ia(62,134008,73215)|0;r=x;x=0;if(((!(r&1)?(x=0,m=ia(112,q|0,d+4|0)|0,r=x,x=0,!(r&1)):0)?(x=0,n=ia(113,c|0,f[m>>2]|0)|0,r=x,x=0,!(r&1)):0)?(x=0,ia(62,n|0,73223)|0,r=x,x=0,!(r&1)):0){u=p;return}else o=7}else o=7;while(0);if((o|0)==7)c=Ia()|0;SQa(q);Ua(c|0)}function Qn(a,c){a=a|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;f[i>>2]=c;g=Jbb(a)|0;e=f[a>>2]|0;a:do if(Oab(e)|0)h=0;else{if(zab(e)|0){a=tPa(g)|0;d=+p[a>>3];if(d<0.0){h=1;break}if(d>4294967295.0|d%1.0!=0.0){h=3;break}h=ZYa(d)|0;h=h?0:2;break}e=n0a(a,0)|0;e=uPa(Jbb(f[e>>2]|0)|0)|0;e=f[e>>2]|0;if(g2a(e,f[33289]|0)|0){e=n0a(a,1)|0;e=uPa(Jbb(f[e>>2]|0)|0)|0;e=f[e>>2]|0;switch(b[e>>0]|0){case 45:case 43:{h=0;break a}case 62:{if(g2a(e,f[33238]|0)|0){h=2;break a}break}case 33:case 61:case 60:case 94:case 38:case 124:break;case 47:case 42:{h=3;break a}default:AJa(a)}h=1;break}if(g2a(e,f[33267]|0)|0){g=n0a(a,1)|0;g=uPa(Jbb(f[g>>2]|0)|0)|0;switch(b[f[g>>2]>>0]|0){case 45:{h=0;break a}case 43:{h=3;break a}case 126:{h=1;break a}default:AJa(a)}}if(g2a(e,f[33290]|0)|0){h=n0a(a,2)|0;h=Qn(f[h>>2]|0,c)|0;break}if(g2a(e,f[33280]|0)|0){c=n0a(a,1)|0;c=f[c>>2]|0;Jbb(c)|0;if(Oab(f[c>>2]|0)|0){c=n0a(a,1)|0;if(KBa(f[c>>2]|0,133060)|0){h=3;break}c=n0a(a,1)|0;if(KBa(f[c>>2]|0,i)|0){h=3;break}}}else if(g2a(e,f[33282]|0)|0){h=n0a(a,2)|0;h=Qn(f[h>>2]|0,c)|0;break}AJa(a)}while(0);u=j;return h|0}function Rn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;c=k+28|0;g=k+16|0;i=k+4|0;j=k;do if(b[a+12>>0]|0){h=DCa(134176,98756)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(c);Wq(h,e)|0;fu(h)|0;break}l=Ia()|0;OCa(c);Ua(l|0)}while(0);a:do switch(nq(a)|0){case 0:{d=15;break}case 1:{d=10;break}default:{f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,98770,j7a(98770)|0);x=0;ua(1870,a|0,g|0);l=x;x=0;if(l&1){c=Ia()|0;MTa(g);d=16;break a}else{MTa(g);d=10;break a}}}while(0);b:do if((d|0)==10){c=f[a>>2]|0;d=c+112|0;do if(b[d>>0]|0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,98795,j7a(98795)|0);x=0;ua(1870,a|0,i|0);l=x;x=0;if(l&1){c=Ia()|0;MTa(i);d=16;break b}else{MTa(i);c=f[a>>2]|0;d=c+112|0;break}}while(0);b[d>>0]=1;hLa(j,65535,0);XB(a,c+92|0,c+96|0,c+114|0,f[j>>2]|0);d=15}while(0);if((d|0)==15){u=k;return}else if((d|0)==16)Ua(c|0)}function Sn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=u;u=u+64|0;h=l+16|0;i=l+40|0;j=l+52|0;k=l;f[a>>2]=b;m=a+4|0;DUa(m);n=a+20|0;f[n>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;d=a+32|0;Sab(d);f[a+36>>2]=c;x=0;va(f[(f[c>>2]|0)+4>>2]|0,c|0,m|0,b|0);g=x;x=0;a:do if(!(g&1)){f[d>>2]=f[b+92>>2];e=f[b+52>>2]|0;d=f[b+48>>2]|0;while(1){if((d|0)==(e|0))break;jha(i,m);x=0;va(92,h|0,i|0,f[(f[d>>2]|0)+8>>2]|0);g=x;x=0;if(g&1){o=9;break}x=0;g=ia(81,m|0,f[d>>2]|0)|0;p=x;x=0;if(p&1){o=9;break}f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];d=d+4|0}if((o|0)==9){d=Ia()|0;break}g=f[f[c>>2]>>2]|0;p=Jbb(a)|0;x=0;va(g|0,c|0,b|0,p|0);p=x;x=0;if(!(p&1)){d=f[b+116>>2]|0;do if(Qab(d)|0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[j>>2]=d;x=0;f[h>>2]=f[j>>2];wa(79,k|0,a|0,h|0,i|0);p=x;x=0;if(p&1){d=Ia()|0;zSa(i);break a}else{zSa(i);break}}while(0);u=l;return}else o=5}else o=5;while(0);if((o|0)==5)d=Ia()|0;zSa(n);bDa(m);Ua(d|0)}function Tn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;do if(f[a+4>>2]|0){e=R$(a)|0;d=b;g=b;while(1){if((e|0)==0|(d|0)==(c|0)){i=8;break}f[e+8>>2]=f[b+8>>2];d=b+12|0;b=e+12|0;f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];b=f[e>>2]|0;x=0;ua(1837,a|0,e|0);d=x;x=0;if(d&1)break;l=f[g>>2]|0;e=b;d=l;g=l;b=l}if((i|0)==8){_ya(e);h=d;break}b=Ja(0)|0;Fa(b|0)|0;_ya(e);x=0;sa(8);x=0;b=Ia()|0;x=0;sa(6);l=x;x=0;if(l&1){l=Ja(0)|0;y2a(l)}else Ua(b|0)}else h=b;while(0);b=h;d=h;e=h;while(1){if((b|0)==(c|0)){i=16;break}OJ(k,a,d+8|0);d=f[k>>2]|0;x=0;ua(1837,a|0,d|0);l=x;x=0;if(l&1)break;l=f[e>>2]|0;b=l;d=l;e=l}if((i|0)==16){u=j;return}b=Ia()|0;f[k>>2]=0;if(d|0)Cbb(d);Ua(b|0)}function Un(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;r=u;u=u+64|0;e=r+16|0;v=r+48|0;s=r+32|0;l=r;oD(v,a,1);x=0;va(159,s|0,a|0,1);m=x;x=0;if(m&1)b=Ia()|0;else{m=a+44|0;c=f[m>>2]|0;x=0;d=ga(320,s|0)|0;w=x;x=0;do if(!(w&1)?(x=0,n=ja(45,c|0,d|0,f[b+12>>2]|0)|0,w=x,x=0,!(w&1)):0){b=f[m>>2]|0;x=0;c=ga(320,v|0)|0;w=x;x=0;if(((((!(w&1)?(g=f[m>>2]|0,x=0,h=ga(320,s|0)|0,w=x,x=0,!(w&1)):0)?(x=0,i=ja(46,f[g>>2]|0,h|0,1)|0,w=x,x=0,!(w&1)):0)?(j=f[m>>2]|0,t$a(l,31),x=0,f[e>>2]=f[l>>2],f[e+4>>2]=f[l+4>>2],f[e+8>>2]=f[l+8>>2],f[e+12>>2]=f[l+12>>2],j=ia(50,j|0,e|0)|0,w=x,x=0,!(w&1)):0)?(x=0,k=ka(7,f[g>>2]|0,12,i|0,j|0)|0,w=x,x=0,!(w&1)):0)?(x=0,o=ja(45,b|0,c|0,k|0)|0,w=x,x=0,!(w&1)):0){b=f[m>>2]|0;x=0;c=ga(320,s|0)|0;w=x;x=0;if(((!(w&1)?(x=0,p=ja(46,f[b>>2]|0,c|0,1)|0,w=x,x=0,!(w&1)):0)?(x=0,q=ka(21,b|0,n|0,o|0,p|0)|0,w=x,x=0,!(w&1)):0)?(x=0,va(161,a|0,q|0,v|0),w=x,x=0,!(w&1)):0){GVa(f[a+16>>2]|0,q)|0;MCa(s);MCa(v);u=r;return}b=Ia()|0;break}b=Ia()|0}else t=16;while(0);if((t|0)==16)b=Ia()|0;MCa(s)}MCa(v);Ua(b|0)}function Vn(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;j=g+8|0;while(1){g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=d7a(b[h>>0]|0)|0;if(g2a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0))g=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else g=d7a(b[g>>0]|0)|0;if(!(g2a(g,-1)|0)){if(!h)break}else k=14}else k=14;if((k|0)==14){k=0;if(h){c=0;break}else c=0}g=f[a>>2]|0;h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=d7a(b[h>>0]|0)|0;if((g&255)<<24>>24<=-1)break;if(!(d[(f[j>>2]|0)+(g<<24>>24<<1)>>1]&8192))break;g=f[a>>2]|0;h=g+12|0;i=f[h>>2]|0;if((i|0)==(f[g+16>>2]|0))bc[f[(f[g>>2]|0)+40>>2]&511](g)|0;else f[h>>2]=i+1}g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=d7a(b[h>>0]|0)|0;if(g2a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0))g=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else g=d7a(b[g>>0]|0)|0;if(!(g2a(g,-1)|0)){if(!h)k=39}else k=37}else k=37;if((k|0)==37?h:0)k=39;if((k|0)==39)f[e>>2]=f[e>>2]|2;return}function Wn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=u;u=u+48|0;n=k+24|0;l=k+12|0;h=k;i=a+136|0;j=f[i>>2]|0;f[n>>2]=b;e=em(a+64|0,n)|0;f[e>>2]=j;f[i>>2]=b;e=Lk(a,f[b+8>>2]|0)|0;if(!e)Ca(76318,76196,268,76328);g=a+140|0;eR(n,g);x=0;ia(118,a|0,f[b+12>>2]|0)|0;d=x;x=0;if(d&1)c=Ia()|0;else{x=0;ua(679,l|0,g|0);d=x;x=0;if(d&1)c=Ia()|0;else{d=b+16|0;c=f[d>>2]|0;a:do if(!c){x=0;ya(11,a|0,n|0,l|0,e|0,b|0,g|0);m=x;x=0;if(m&1)m=15;else m=20}else{if((g|0)!=(n|0)){x=0;va(105,g|0,f[n>>2]|0,f[n+4>>2]|0);c=x;x=0;if(c&1){m=15;break}c=f[d>>2]|0}x=0;ia(118,a|0,c|0)|0;d=x;x=0;if(d&1)m=15;else{x=0;ua(679,h|0,g|0);d=x;x=0;do if(!(d&1)){x=0;ya(11,a|0,l|0,h|0,e|0,b|0,g|0);g=x;x=0;if(g&1){c=Ia()|0;zSa(h);break}else{zSa(h);m=20;break a}}else c=Ia()|0;while(0)}}while(0);if((m|0)==15)c=Ia()|0;else if((m|0)==20){f[i>>2]=j;zSa(l);zSa(n);u=k;return a|0}zSa(l)}}zSa(n);Ua(c|0);return 0}function Xn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=u;u=u+48|0;j=i+32|0;n=i+16|0;l=i;g=b+12|0;UN(n,a,f[g>>2]|0);x=0;va(159,l|0,a|0,1);h=x;x=0;if(h&1)c=Ia()|0;else{h=a+44|0;c=f[h>>2]|0;x=0;d=ga(320,l|0)|0;o=x;x=0;a:do if(!(o&1)?(x=0,e=ja(45,c|0,d|0,f[g>>2]|0)|0,o=x,x=0,!(o&1)):0){x=0;c=ja(70,f[h>>2]|0,e|0,0)|0;o=x;x=0;b:do if(!(o&1))switch(f[b+8>>2]|0){case 1:{x=0;wa(146,a|0,c|0,n|0,l|0);o=x;x=0;if(o&1)break b;MCa(l);MCa(n);u=i;return}case 3:{x=0;c=ia(62,134176,107057)|0;o=x;x=0;if(o&1)break b;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,o=x,x=0,!(o&1)):0){OCa(j);x=0;ia(79,c|0,k|0)|0;o=x;x=0;if(o&1)break b;x=0;ga(227,c|0)|0;o=x;x=0;if(o&1)break b;x=0;sa(5);x=0;break b}c=Ia()|0;OCa(j);break a}default:{x=0;sa(5);x=0;break b}}while(0);c=Ia()|0}else m=7;while(0);if((m|0)==7)c=Ia()|0;MCa(l)}MCa(n);Ua(c|0)}function Yn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d;do if(!(_W(b)|0)){c=lF(Or(b,0)|0)|0;if(g2a(c,f[33112]|0)|0){pca(a,b);break}if(g2a(c,f[33111]|0)|0){Ic(a,b,0);break}if(g2a(c,f[33108]|0)|0){sd(a,b,0);break}if(g2a(c,f[33107]|0)|0){Xz(a,b);break}if(g2a(c,f[33105]|0)|0){od(a,b);break}if(!(g2a(c,f[33104]|0)|0)){if(g2a(c,f[32999]|0)|0){Qc(a,b,0);break}if(g2a(c,f[33103]|0)|0){ud(a,b,0);break}if(g2a(c,f[33102]|0)|0){E9(a,b);break}if(!(g2a(c,f[33100]|0)|0)){Ema(DCa(DCa(134176,92329)|0,c)|0,10)|0;d=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=j7a(92349)|0;x=0;va(87,e|0,92349,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,d|0,e|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;MTa(e);if(c)g=25}else{a=Ia()|0;g=25}if((g|0)==25)La(d|0);Ua(a|0)}}}while(0);u=d;return}function Zn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n+12|0;l=n;if((d+-72&255)>6)e=0;else{m=RRa(f[a+4>>2]|0)|0;switch(d<<24>>24){case 72:{g=4;e=1;break}case 73:{g=8;e=2;break}case 74:{g=1;e=1;break}case 75:{g=2;e=1;break}case 76:{g=1;e=2;break}case 77:{g=2;e=2;break}case 78:{g=4;e=2;break}default:hb()}f[m+4>>2]=e;i=m+8|0;b[i>>0]=g;do if(b[a+12>>0]|0){e=DCa(134176,110753)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,j=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,g=x,x=0,!(g&1)):0){OCa(k);Wq(e,j)|0;fu(e)|0;break}n=Ia()|0;OCa(k);Ua(n|0)}while(0);Sab(k);LF(a,k,m+12|0);k=Jbb(f[k>>2]|0)|0;do if((k|0)!=(h[i>>0]|0)){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,97035,j7a(97035)|0);x=0;ua(1870,a|0,l|0);k=x;x=0;if(k&1){n=Ia()|0;MTa(l);Ua(n|0)}else{MTa(l);break}}while(0);e=dk(a)|0;f[m+24>>2]=e;e=dk(a)|0;f[m+20>>2]=e;e=dk(a)|0;f[m+16>>2]=e;Oza(m);f[c>>2]=m;e=1}u=n;return e|0}function _n(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;do if(b[a+33>>0]|0){i=DCa(134176,110753)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}m=Ia()|0;OCa(g);Ua(m|0)}while(0);if((((f[(f[c+16>>2]|0)+4>>2]|0)!=5?(f[(f[c+20>>2]|0)+4>>2]|0)!=5:0)?(f[(f[c+24>>2]|0)+4>>2]|0)!=5:0)?(j=c+4|0,(f[j>>2]|0)!=5):0){e=a+28|0;Gv(f[e>>2]|0,-2)|0;a:do switch(f[j>>2]|0){case 1:{d=c+8|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,74)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,75)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,72)|0;k=d;break a}default:hb()}break}case 2:{d=c+8|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,76)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,77)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,78)|0;k=d;break a}case 8:{Gv(f[e>>2]|0,73)|0;k=d;break a}default:hb()}break}default:hb()}while(0);m=h[k>>0]|0;FX(a,m,m,Jbb(f[c+12>>2]|0)|0)}u=l;return}function $n(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=16}else{b:do if(b[m>>0]|0){j=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;k=f[j+24>>2]|0;l=f[j+4>>2]|0;g=c+d|0;e=j+76|0;d=f[e>>2]|0;do if(g2a(-1,d)|0){dYa(i,j);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){OCa(i);d=h<<24>>24;f[e>>2]=d;n=8;break}d=Ja(0)|0;OCa(i)}else n=8;while(0);do if((n|0)==8){x=0;d=oa(39,k|0,c|0,((l&176|0)==32?g:c)|0,g|0,j|0,d&255|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0}while(0);gD(m);e=a;g=a;n=16;break a}while(0);gD(m)}while(0);do if((n|0)==16){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;y2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function ao(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;j=p;n=a+11|0;g=b[n>>0]|0;k=g<<24>>24<0;if(k)h=f[a>>2]|0;else h=a;o=c-h|0;m=e-d|0;do if(!m)l=29;else{if(k){h=f[a>>2]|0;i=f[a+4>>2]|0}else{h=a;i=g&255}if(fWa(d,h,h+i|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;UM(j,d,e);o=b[j+11>>0]|0;n=o<<24>>24<0;e=n?f[j>>2]|0:j;x=0;a=ka(42,a|0,c|0,e|0,e+(n?f[j+4>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){p=Ia()|0;MTa(j);Ua(p|0)}else{MTa(j);break}}if(k){h=(f[a+8>>2]&2147483647)+-1|0;i=f[a+4>>2]|0}else{h=10;i=g&255}if((h-i|0)>>>0>=m>>>0){if(k)h=f[a>>2]|0;else h=a;g=i-o|0;if(g){l=h+o|0;XTa(l+m|0,l,g)|0}}else{SH(a,h,i+m-h|0,i,o,m);h=f[a>>2]|0}g=i+m|0;if((b[n>>0]|0)<0)f[a+4>>2]=g;else b[n>>0]=g;Z0a(h+g|0,0);g=h+o|0;while(1){if((d|0)==(e|0))break;Z0a(g,b[d>>0]|0);d=d+1|0;g=g+1|0}g=b[n>>0]|0;l=29}while(0);if((l|0)==29){if(g<<24>>24<0)a=f[a>>2]|0;a=a+o|0}u=p;return a|0}function bo(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0;a:do if(a<<24>>24==h<<24>>24)if(b[c>>0]|0){b[c>>0]=0;d=f[g>>2]|0;f[g>>2]=d+1;b[d>>0]=46;g=b[j+11>>0]|0;if(((g<<24>>24<0?f[j+4>>2]|0:g&255)|0)!=0?(o=f[l>>2]|0,(o-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;o=0}else o=0}else o=-1;else{if(a<<24>>24==i<<24>>24?(i=b[j+11>>0]|0,(i<<24>>24<0?f[j+4>>2]|0:i&255)|0):0){if(!(b[c>>0]|0)){o=-1;break}o=f[l>>2]|0;if((o-k|0)>=160){o=0;break}k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;f[m>>2]=0;o=0;break}i=n+32|0;h=0;while(1){o=n+h|0;if((h|0)==32){o=i;break}if((b[o>>0]|0)==a<<24>>24)break;else h=h+1|0}h=o-n|0;if((h|0)>31)o=-1;else{i=b[31216+h>>0]|0;switch(h|0){case 24:case 25:{o=f[g>>2]|0;if((o|0)!=(e|0)?(b[o+-1>>0]&95)!=(b[d>>0]&127):0){o=-1;break a}f[g>>2]=o+1;b[o>>0]=i;o=0;break a}case 23:case 22:{b[d>>0]=80;o=f[g>>2]|0;f[g>>2]=o+1;b[o>>0]=i;o=0;break a}default:{o=i&95;if((((o|0)==(b[d>>0]|0)?(b[d>>0]=o|128,b[c>>0]|0):0)?(b[c>>0]=0,d=b[j+11>>0]|0,(d<<24>>24<0?f[j+4>>2]|0:d&255)|0):0)?(p=f[l>>2]|0,(p-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=p+4;f[p>>2]=k}l=f[g>>2]|0;f[g>>2]=l+1;b[l>>0]=i;if((h|0)>21){o=0;break a}f[m>>2]=(f[m>>2]|0)+1;o=0;break a}}}}while(0);return o|0}function co(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k;do if(b[a+12>>0]|0){i=Ema(DCa(134176,96687)|0,d)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(h);Wq(i,g)|0;fu(i)|0;break}l=Ia()|0;OCa(h);Ua(l|0)}while(0);switch(d<<24>>24){case 65:{j=cWa(f[a+4>>2]|0)|0;t$a(h,oq(a)|0);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}case 66:{j=cWa(f[a+4>>2]|0)|0;XSa(h,Ap(a)|0,I);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}case 67:{j=cWa(f[a+4>>2]|0)|0;aq(h,a);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}case 68:{j=cWa(f[a+4>>2]|0)|0;sp(h,a);a=j+8|0;f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];a=j;j=11;break}default:a=0}if((j|0)==11){f[a+4>>2]=f[a+8>>2];f[c>>2]=a;a=1}u=k;return a|0}function eo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;n=s;a:do if(!(g2a(c,-1)|0)){o=a+12|0;p=a+8|0;q=(f[o>>2]|0)-(f[p>>2]|0)|0;r=a+24|0;d=f[r>>2]|0;l=a+28|0;e=f[l>>2]|0;do if((d|0)==(e|0)){h=a+48|0;if(!(f[h>>2]&16)){d=-1;break a}k=a+20|0;j=f[k>>2]|0;i=d-j|0;m=a+44|0;j=(f[m>>2]|0)-j|0;g=a+32|0;x=0;ua(82,g|0,0);e=x;x=0;if(!(e&1)){d=g+11|0;if((b[d>>0]|0)<0)e=(f[a+40>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,g|0,e|0);e=x;x=0;if(!(e&1)){d=b[d>>0]|0;if(d<<24>>24<0){e=f[g>>2]|0;d=f[a+36>>2]|0}else{e=g;d=d&255}t=e+d|0;f[k>>2]=e;f[l>>2]=t;l=e+i|0;f[r>>2]=l;d=e+j|0;f[m>>2]=d;k=m;g=m;j=t;break}}d=Ja(0)|0;Fa(d|0)|0;Ga();d=-1;break a}else{j=a+44|0;k=j;h=a+48|0;g=j;l=d;d=f[j>>2]|0;j=e}while(0);i=l+1|0;f[n>>2]=i;e=f[(i>>>0>>0?g:n)>>2]|0;f[k>>2]=e;if(f[h>>2]&8|0){d=a+32|0;if((b[d+11>>0]|0)<0)d=f[d>>2]|0;f[p>>2]=d;f[o>>2]=d+q;f[a+16>>2]=e}d=c&255;if((l|0)==(j|0)){t=f[(f[a>>2]|0)+52>>2]|0;d=d7a(d)|0;d=dc[t&255](a,d)|0;break}else{f[r>>2]=i;b[l>>0]=d;d=d7a(d)|0;break}}else d=dXa(c)|0;while(0);u=s;return d|0}function fo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+48|0;h=l+32|0;i=l+16|0;j=l;EXa(i);EXa(j);switch(f[b+8>>2]|0){case 54:{t$a(h,-2147483648);f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];t$a(h,2147483647);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];c=8;d=7;e=33;g=45;k=4;break}case 67:{XSa(h,0,-2147483648);f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];f[i+12>>2]=f[h+12>>2];XSa(h,-1,2147483647);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];c=33;d=32;e=34;g=46;k=4;break}default:{}}if((k|0)==4){k=a+44|0;m=f[k>>2]|0;n=rBa(f[m>>2]|0,e,f[b+12>>2]|0)|0;o=f[k>>2]|0;f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];j=e0(o,h)|0;j=Kpa(f[m>>2]|0,d,n,j)|0;n=f[k>>2]|0;b=rBa(f[n>>2]|0,e,f[b+16>>2]|0)|0;k=f[k>>2]|0;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];k=e0(k,h)|0;k=Kpa(f[n>>2]|0,d,b,k)|0;k=Kpa(f[m>>2]|0,c,j,k)|0;k=rBa(f[m>>2]|0,g,k)|0;GVa(f[a+16>>2]|0,k)|0}u=l;return}function go(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+24|0;j=l+12|0;k=l;a:do if(((((c-a|0)>2?(b[a>>0]|0)==97:0)?(b[a+1>>0]|0)==122:0)?(m=a+2|0,h=Bc(m,c,d)|0,(h|0)!=(m|0)):0)?(g=d+4|0,e=f[g>>2]|0,(f[d>>2]|0)!=(e|0)):0){hY(k,e+-24|0);x=0;ja(101,k|0,0,124453)|0;m=x;x=0;do if(m&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,j|0,123272)|0;m=x;x=0;if(m&1){a=Ia()|0;MTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;d=a+-24|0;c=d+11|0;if((b[c>>0]|0)<0){Z0a(f[d>>2]|0,0);f[a+-20>>2]=0;a=d}else{Z0a(d,0);b[c>>0]=0;a=d}yv(d);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}MTa(i);MTa(j);MTa(k);a=h;break a}while(0);MTa(k);Ua(a|0)}while(0);u=l;return a|0}function ho(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+24|0;j=l+12|0;k=l;a:do if(((((c-a|0)>2?(b[a>>0]|0)==97:0)?(b[a+1>>0]|0)==116:0)?(m=a+2|0,h=Cc(m,c,d)|0,(h|0)!=(m|0)):0)?(g=d+4|0,e=f[g>>2]|0,(f[d>>2]|0)!=(e|0)):0){hY(k,e+-24|0);x=0;ja(101,k|0,0,124453)|0;m=x;x=0;do if(m&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,j|0,123272)|0;m=x;x=0;if(m&1){a=Ia()|0;MTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;d=a+-24|0;c=d+11|0;if((b[c>>0]|0)<0){Z0a(f[d>>2]|0,0);f[a+-20>>2]=0;a=d}else{Z0a(d,0);b[c>>0]=0;a=d}yv(d);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}MTa(i);MTa(j);MTa(k);a=h;break a}while(0);MTa(k);Ua(a|0)}while(0);u=l;return a|0}function io(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+160|0;q=p+16|0;o=p;a:do if(d>>>0>g>>>0|(d|0)==(g|0)&c>>>0>e>>>0){i=q+64|0;j=q+8|0;f[j>>2]=39904;n=q+12|0;f[q>>2]=31588;f[i>>2]=31608;f[q+4>>2]=0;Laa(q+64|0,n);f[q+136>>2]=0;f[q+140>>2]=-1;f[q>>2]=39884;f[i>>2]=39924;f[j>>2]=39904;Xra(n);f[n>>2]=39940;j=q+44|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=0;while(1){if((i|0)==3)break;f[j+(i<<2)>>2]=0;i=i+1|0}f[q+56>>2]=0;f[q+60>>2]=24;x=0;i=ia(62,q+8|0,h|0)|0;h=x;x=0;if((((!(h&1)?(x=0,k=ia(62,i|0,122322)|0,h=x,x=0,!(h&1)):0)?(x=0,l=ja(50,k|0,c|0,d|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,58308)|0,l=x,x=0,!(l&1)):0)?(x=0,ja(50,m|0,e|0,g|0)|0,g=x,x=0,!(g&1)):0){i=f[a+36>>2]|0;j=f[(f[i>>2]|0)+20>>2]|0;x=0;ua(107,o|0,n|0);n=x;x=0;do if(!(n&1)){x=0;ua(j|0,i|0,((b[o+11>>0]|0)<0?f[o>>2]|0:o)|0);n=x;x=0;if(n&1){i=Ia()|0;MTa(o);break}else{MTa(o);sHa(q);break a}}else i=Ia()|0;while(0)}else i=Ia()|0;sHa(q);Ua(i|0)}while(0);u=p;return}function jo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+24|0;h=i;a1a(g);d=f[c+12>>2]|0;if((d|0)!=0?(Ou(h,b,d),f[g>>2]=f[h>>2],f[g+4>>2]=f[h+4>>2],f[g+8>>2]=f[h+8>>2],f[g+12>>2]=f[h+12>>2],f[g+16>>2]=f[h+16>>2],K0a(g)|0):0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else e=4;a:do if((e|0)==4){d=f[c+16>>2]|0;do if(d|0){Ou(h,b,d);if(K0a(h)|0){f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2];break a}h=Jia(h)|0;if((h|0)==0&(I|0)==0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break a}else break}while(0);f[g+16>>2]=f[c+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}while(0);u=i;return}function ko(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+16|0;j=i;e=f[a>>2]|0;h=a+4|0;c=b[h+11>>0]|0;if(c<<24>>24<0)c=f[a+8>>2]|0;else c=c&255;do if(!c)c=f[134008+(f[(f[33502]|0)+-12>>2]|0)+24>>2]|0;else{do if(!(f[a+20>>2]|0)){c=DCa(Pca(DCa(134176,87041)|0,h)|0,99208)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(j);Wq(c,g)|0;fu(c)|0;break}l=Ia()|0;OCa(j);Ua(l|0)}while(0);i4(e,h,(f[a+16>>2]|0)==0?52:48);if(f[e+68>>2]|0){c=e+4|0;break}c=DCa(Pca(DCa(134176,87051)|0,h)|0,99208)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(j);Wq(c,k)|0;fu(c)|0;xb(1)}l=Ia()|0;OCa(j);Ua(l|0)}while(0);u=i;return c|0}function lo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121961);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}m=s8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Cbb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(!m){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&l;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){k=c;b:while(1){while(1){c=f[k>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!m){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&l;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;g=c+8|0;j=c;while(1){h=f[j>>2]|0;if(!h){i=30;break}if(!(yda(g,h+8|0)|0)){i=32;break}j=f[j>>2]|0}if((i|0)==30){h=j;g=0}else if((i|0)==32){h=j;g=f[j>>2]|0}f[k>>2]=g;f[h>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}k=c}f[g>>2]=k;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)Cbb(c);f[d>>2]=0}while(0);return}function mo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;while(1){e=f[a>>2]|0;do if(e){g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Jbb(f[g>>2]|0)|0;if($5a(e)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(b){e=f[b+12>>2]|0;if((e|0)==(f[b+16>>2]|0))e=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0)){if(!g){g=b;break}}else i=14}else i=14;if((i|0)==14){i=0;if(g){g=0;break}else b=0}e=f[a>>2]|0;g=f[e+12>>2]|0;if((g|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=Jbb(f[g>>2]|0)|0;if(!(ec[f[(f[d>>2]|0)+12>>2]&127](d,8192,e)|0)){g=b;break}e=f[a>>2]|0;g=e+12|0;h=f[g>>2]|0;if((h|0)==(f[e+16>>2]|0))bc[f[(f[e>>2]|0)+40>>2]&511](e)|0;else f[g>>2]=h+4}b=f[a>>2]|0;do if(b){e=f[b+12>>2]|0;if((e|0)==(f[b+16>>2]|0))b=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else b=Jbb(f[e>>2]|0)|0;if($5a(b)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(g){b=f[g+12>>2]|0;if((b|0)==(f[g+16>>2]|0))b=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else b=Jbb(f[b>>2]|0)|0;if(!($5a(b)|0)){if(!e)i=38}else i=36}else i=36;if((i|0)==36?e:0)i=38;if((i|0)==38)f[c>>2]=f[c>>2]|2;return}function no(a,b){a=a|0;b=b|0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{Ah(a,b);break}case 2:{Zr(a,b);break}case 3:{Vt(a,b);break}case 4:{MA(a,b);break}case 5:{rP(a,b);break}case 6:{f3(a,b);break}case 7:{f3(a,b);break}case 8:{dC(a,b);break}case 9:{x1(a,b);break}case 10:{rY(a,b);break}case 11:{x1(a,b);break}case 12:{rY(a,b);break}case 13:{yY(a,b);break}case 14:{TT(a,b);break}case 24:{HT(a,b);break}case 25:{aP(a,b);break}case 26:{qP(a,b);break}case 27:{RT(a,b);break}case 15:{x1(a,b);break}case 16:{rY(a,b);break}case 17:{RT(a,b);break}case 18:{MP(a,b);break}case 19:{BY(a,b);break}case 20:{EQ(a,b);break}case 21:{sE(a,b);break}case 22:{x1(a,b);break}case 23:{x1(a,b);break}default:hb()}while(0);return}function oo(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+64|0;j=n+40|0;k=n+12|0;l=n+24|0;m=n;a:do if((c-a|0)>2?(b[a>>0]|0)==116:0){e=b[a+1>>0]|0;switch(e<<24>>24){case 105:case 101:break;default:{c=a;break a}}g=a+2|0;if(e<<24>>24==101)c=Bc(g,c,d)|0;else c=Cc(g,c,d)|0;if((c|0)!=(g|0)?(i=d+4|0,h=f[i>>2]|0,(f[d>>2]|0)!=(h|0)):0){hY(m,h+-24|0);x=0;ja(101,m|0,0,123477)|0;h=x;x=0;do if(h&1)c=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}x=0;ia(216,l|0,123272)|0;h=x;x=0;if(h&1){c=Ia()|0;MTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}RY(j,k);uA((f[i>>2]|0)+-24|0,j);OJa(j);MTa(k);MTa(l);MTa(m);break a}while(0);MTa(m);Ua(c|0)}else c=a}else c=a;while(0);u=n;return c|0}function po(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+48|0;w=t+32|0;v=t+16|0;n=t;c=f[b+8>>2]|0;do if(xba(a,c)|0){s=b+12|0;if(!(f[s>>2]|0))Ca(106703,106511,239,106756);UN(w,a,c);x=0;va(160,v|0,a|0,f[s>>2]|0);e=x;x=0;if(e&1)c=Ia()|0;else{x=0;va(159,n|0,a|0,1);e=x;x=0;if(e&1)c=Ia()|0;else{f[b+4>>2]=1;c=a+44|0;d=f[c>>2]|0;x=0;e=ga(320,n|0)|0;y=x;x=0;if(((((((((!(y&1)?(x=0,g=ja(45,d|0,e|0,f[s>>2]|0)|0,y=x,x=0,!(y&1)):0)?(h=f[c>>2]|0,x=0,i=ga(320,w|0)|0,y=x,x=0,!(y&1)):0)?(j=f[c>>2]|0,x=0,k=ga(320,v|0)|0,y=x,x=0,!(y&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,m=ja(45,h|0,i|0,l|0)|0,y=x,x=0,!(y&1)):0)?(o=f[c>>2]|0,x=0,p=ga(320,n|0)|0,y=x,x=0,!(y&1)):0)?(x=0,q=ja(46,f[o>>2]|0,p|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,r=ka(21,d|0,g|0,m|0,q|0)|0,y=x,x=0,!(y&1)):0)?(f[s>>2]=r,x=0,va(161,a|0,b|0,w|0),y=x,x=0,!(y&1)):0){MCa(n);MCa(v);MCa(w);break}c=Ia()|0;MCa(n)}MCa(v)}MCa(w);Ua(c|0)}while(0);u=t;return}function qo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;i=m+36|0;k=m+24|0;l=m;j=b+16|0;c=f[j>>2]|0;do if(c|0){h=b+12|0;if(KZ(f[h>>2]|0,c)|0){l=f[a+36>>2]|0;Jbb(l)|0;_0a(i,l);qma(a,b);l=lNa(f[i>>2]|0,f[b+8>>2]|0)|0;l=Ipa(i,l,f[h>>2]|0)|0;aKa(l,f[b+4>>2]|0);GVa(f[a+16>>2]|0,l)|0;break}g=v$a(f[h>>2]|0)|0;c=v$a(f[j>>2]|0)|0;f[i>>2]=a;d=(g|0)==0;e=(c|0)!=0;if(d|e)if(d&e)d=UO(i,c,h)|0;else d=g;else{d=g;c=UO(i,g,j)|0}do if(((c|0)!=0&(d|0)!=0?!(Qab(f[d+8>>2]|0)|0):0)?!(Qab(f[c+8>>2]|0)|0):0){RUa(l,d);RUa(l+12|0,c);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;ua(2923,k|0,2);j=x;x=0;if(j&1){m=Ia()|0;zSa(k);Ua(m|0)}z1(k,l,l+24|0);x=0;va(171,a|0,k|0,b|0);l=x;x=0;if(l&1){m=Ia()|0;zSa(k);Ua(m|0)}else{zSa(k);break}}while(0)}while(0);u=m;return}function ro(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+48|0;w=t+32|0;v=t+16|0;n=t;c=f[b+12>>2]|0;do if(xba(a,c)|0){s=b+16|0;if(!(f[s>>2]|0))Ca(106703,106511,239,106756);UN(w,a,c);x=0;va(160,v|0,a|0,f[s>>2]|0);e=x;x=0;if(e&1)c=Ia()|0;else{x=0;va(159,n|0,a|0,1);e=x;x=0;if(e&1)c=Ia()|0;else{f[b+4>>2]=1;c=a+44|0;d=f[c>>2]|0;x=0;e=ga(320,n|0)|0;y=x;x=0;if(((((((((!(y&1)?(x=0,g=ja(45,d|0,e|0,f[s>>2]|0)|0,y=x,x=0,!(y&1)):0)?(h=f[c>>2]|0,x=0,i=ga(320,w|0)|0,y=x,x=0,!(y&1)):0)?(j=f[c>>2]|0,x=0,k=ga(320,v|0)|0,y=x,x=0,!(y&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,m=ja(45,h|0,i|0,l|0)|0,y=x,x=0,!(y&1)):0)?(o=f[c>>2]|0,x=0,p=ga(320,n|0)|0,y=x,x=0,!(y&1)):0)?(x=0,q=ja(46,f[o>>2]|0,p|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,r=ka(21,d|0,g|0,m|0,q|0)|0,y=x,x=0,!(y&1)):0)?(f[s>>2]=r,x=0,va(161,a|0,b|0,w|0),y=x,x=0,!(y&1)):0){MCa(n);MCa(v);MCa(w);break}c=Ia()|0;MCa(n)}MCa(v)}MCa(w);Ua(c|0)}while(0);u=t;return}function so(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;i=a+4|0;c=f[i>>2]|0;j=a+100|0;if(c>>>0<(f[j>>2]|0)>>>0){f[i>>2]=c+1;d=h[c>>0]|0}else d=eF(a)|0;switch(d|0){case 43:case 45:{e=(d|0)==45&1;c=f[i>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[i>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0;d=c+-48|0;if((b|0)!=0&d>>>0>9)if(!(f[j>>2]|0)){d=-2147483648;c=0}else{f[i>>2]=(f[i>>2]|0)+-1;k=15}else k=12;break}default:{e=0;c=d;d=d+-48|0;k=12}}do if((k|0)==12){if(d>>>0>9)if(!(f[j>>2]|0)){d=-2147483648;c=0;break}else{k=15;break}g=0;while(1){g=c+-48+(g*10|0)|0;c=f[i>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[i>>2]=c+1;d=h[c>>0]|0}else d=eF(a)|0;b=(d+-48|0)>>>0<10;if(!(b&(g|0)<214748364))break;else c=d}c=((g|0)<0)<<31>>31;if(b){do{l=GBa(g|0,c|0,10,0)|0;b=I;d=BOa(d|0,((d|0)<0)<<31>>31|0,-48,-1)|0;g=BOa(d|0,I|0,l|0,b|0)|0;c=I;d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[i>>2]=d+1;d=h[d>>0]|0}else d=eF(a)|0;b=(d+-48|0)>>>0<10}while(b&((c|0)<21474836|(c|0)==21474836&g>>>0<2061584302));if(b){do{d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[i>>2]=d+1;d=h[d>>0]|0}else d=eF(a)|0}while((d+-48|0)>>>0<10);b=g}else b=g}else b=g;if(f[j>>2]|0)f[i>>2]=(f[i>>2]|0)+-1;j=(e|0)==0;l=SRa(0,0,b|0,c|0)|0;d=j?c:I;c=j?b:l}while(0);if((k|0)==15){f[i>>2]=(f[i>>2]|0)+-1;d=-2147483648;c=0}I=d;return c|0}function to(){H6a();y6a();n6a();l6a();j6a();g6a();Z5a();X5a();V5a();T5a();R5a();P5a();N5a();L5a();J5a();H5a();F5a();D5a();B5a();z5a();x5a();v5a();t5a();r5a();p5a();n5a();l5a();j5a();h5a();f5a();d5a();b5a();$4a();Z4a();X4a();V4a();T4a();R4a();P4a();N4a();L4a();J4a();H4a();F4a();D4a();C4a();A4a();y4a();w4a();u4a();s4a();k4a();i4a();g4a();e4a();c4a();a4a();_3a();Y3a();W3a();U3a();S3a();Q3a();O3a();M3a();K3a();I3a();G3a();E3a();C3a();A3a();y3a();w3a();u3a();s3a();q3a();o3a();m3a();k3a();i3a();g3a();e3a();return}function uo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=DCa(134176,111057)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(h);Wq(g,e)|0;fu(g)|0;break}j=Ia()|0;OCa(h);Ua(j|0)}while(0);g=f[c+8>>2]|0;j=(f[g+4>>2]|0)==5;Ypa(a,g);if(j)EM(a);else{d=bP(f[a+36>>2]|0,3,c)|0;f[h>>2]=d;e=a+4|0;g=f[e>>2]|0;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else LL(a,h);L1a(h,f[33015]|0);d=a+60|0;e=f[d>>2]|0;if(e>>>0<(f[a+64>>2]|0)>>>0){f[e>>2]=f[h>>2];f[d>>2]=(f[d>>2]|0)+4}else LL(a+56|0,h);iv(a,f[c+12>>2]|0);if(f[c+16>>2]|0)Fy(a,c);MB(a,c)}u=i;return}function vo(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0;a:do if((a|0)==(h|0))if(b[c>>0]|0){b[c>>0]=0;d=f[g>>2]|0;f[g>>2]=d+1;b[d>>0]=46;g=b[j+11>>0]|0;if(((g<<24>>24<0?f[j+4>>2]|0:g&255)|0)!=0?(o=f[l>>2]|0,(o-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;o=0}else o=0}else o=-1;else{if((a|0)==(i|0)?(i=b[j+11>>0]|0,(i<<24>>24<0?f[j+4>>2]|0:i&255)|0):0){if(!(b[c>>0]|0)){o=-1;break}o=f[l>>2]|0;if((o-k|0)>=160){o=0;break}k=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=k;f[m>>2]=0;o=0;break}i=n+128|0;h=0;while(1){o=n+(h<<2)|0;if((h|0)==32){o=i;break}if((f[o>>2]|0)==(a|0))break;else h=h+1|0}h=o-n|0;if((h|0)<=124){i=b[31216+(h>>2)>>0]|0;n=h+-88|0;switch(n>>>2|n<<30|0){case 2:case 3:{o=f[g>>2]|0;if((o|0)!=(e|0)?(b[o+-1>>0]&95)!=(b[d>>0]&127):0){o=-1;break a}f[g>>2]=o+1;b[o>>0]=i;o=0;break a}case 1:case 0:{b[d>>0]=80;break}default:{o=i&95;if((((o|0)==(b[d>>0]|0)?(b[d>>0]=o|128,b[c>>0]|0):0)?(b[c>>0]=0,d=b[j+11>>0]|0,(d<<24>>24<0?f[j+4>>2]|0:d&255)|0):0)?(p=f[l>>2]|0,(p-k|0)<160):0){k=f[m>>2]|0;f[l>>2]=p+4;f[p>>2]=k}}}l=f[g>>2]|0;f[g>>2]=l+1;b[l>>0]=i;if((h|0)>84)o=0;else{f[m>>2]=(f[m>>2]|0)+1;o=0}}else o=-1}while(0);return o|0}function wo(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;k=p+20|0;g=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;h=a+64|0;if(b[(f[h>>2]|0)+60>>0]|0){do if(b[a+72>>0]|0){c=DCa(134176,87813)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(k);Wq(c,e)|0;fu(c)|0;break}p=Ia()|0;OCa(k);Ua(p|0)}while(0);i=E$(a,9)|0;j=a+68|0;d=f[j>>2]|0;e=f[h>>2]|0;n4a(g,(f[e+80>>2]|0)-(f[e+76>>2]|0)>>4);Yr(d,f[g>>2]|0)|0;d=f[h>>2]|0;e=f[d+80>>2]|0;d=f[d+76>>2]|0;while(1){if((d|0)==(e|0))break;h=f[j>>2]|0;n4a(l,0);Yr(h,f[l>>2]|0)|0;Z7(a,f[d>>2]|0);Gv(f[j>>2]|0,11)|0;h=f[j>>2]|0;c=d+4|0;g=d+8|0;n4a(m,(f[g>>2]|0)-(f[c>>2]|0)>>2);Yr(h,f[m>>2]|0)|0;g=f[g>>2]|0;c=f[c>>2]|0;while(1){if((c|0)==(g|0))break;h=f[j>>2]|0;f[o>>2]=f[c>>2];f[k>>2]=f[o>>2];n4a(n,_1(a,k)|0);Yr(h,f[n>>2]|0)|0;c=c+4|0}d=d+16|0}WA(a,i)}u=p;return}function xo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;d=n+32|0;g=n+80|0;c=n+72|0;h=n+76|0;m=n+60|0;i=n+48|0;j=n+16|0;k=n;e=f[a+36>>2]|0;Jbb(e)|0;_0a(g,e);Bab(c);e=b+4|0;switch(f[e>>2]|0){case 1:{l=f[33174]|0;f[c>>2]=l;c=l;l=6;break}case 2:break;case 3:{l=f[33172]|0;f[c>>2]=l;c=l;l=6;break}case 4:{l=f[33171]|0;f[c>>2]=l;c=l;l=6;break}default:hb()}do if((l|0)==6){f[h>>2]=c;c=a+44|0;l=f[c>>2]|0;f[c>>2]=l+1;t$a(j,l);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];l=e0(g,d)|0;f[i>>2]=l;t$a(k,f[b+8>>2]|0);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];l=e0(g,d)|0;f[i+4>>2]=l;f[i+8>>2]=b;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;x=0;ua(168,m|0,3);l=x;x=0;if(l&1){n=Ia()|0;zSa(m);Ua(n|0)}qda(m,i,i+12|0);c=f[e>>2]|0;x=0;f[d>>2]=f[h>>2];c=ka(10,g|0,d|0,m|0,c|0)|0;l=x;x=0;if(l&1){n=Ia()|0;zSa(m);Ua(n|0)}else{GVa(f[a+16>>2]|0,c)|0;zSa(m);break}}while(0);u=n;return}function yo(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;m=n+40|0;j=n+32|0;k=n;l=n+64|0;a:do if((c-a|0)>>>0>16){e=0;c=j;while(1){g=b[a+e>>0]|0;h=g<<24>>24;if((e|0)==16){i=6;break}if(!(r1a(h)|0))break;g=b[a+(e|1)>>0]|0;b[c>>0]=(((h+-48|0)>>>0<10?0:9)+h<<4)+g+((g+-48|0)>>>0<10?208:169);e=e+2|0;c=c+1|0}do if((i|0)==6){if(g<<24>>24==69){b:do if((c|0)!=(j|0)){e=j;while(1){c=c+-1|0;if(e>>>0>=c>>>0)break b;i=b[e>>0]|0;b[e>>0]=b[c>>0]|0;b[c>>0]=i;e=e+1|0}}while(0);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;f[k+24>>2]=0;f[k+28>>2]=0;p[m>>3]=+p[j>>3];c=QFa(k,32,124583,m)|0;if(c>>>0>31)break;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;qW(l,k,c);RY(m,l);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,m|0);d=x;x=0;if(d&1){n=Ia()|0;OJa(m);MTa(l);Ua(n|0)}}else{CY(e,m);f[c>>2]=(f[c>>2]|0)+24}OJa(m);MTa(l);a=a+17|0}break a}while(0)}while(0);u=n;return a|0}function zo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+96|0;g=i+64|0;j=i+80|0;d=i+40|0;e=i+16|0;h=i;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;wa(77,d|0,b|0,c+8|0,j|0);k=x;x=0;a:do if(k&1)d=Ia()|0;else{b:do if(K0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else{x=0;va(93,e|0,b|0,f[c+28>>2]|0);k=x;x=0;c:do if(k&1)d=Ia()|0;else{do if(K0a(e)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}else{x=0;d=ga(225,e|0)|0;k=x;x=0;if(!(k&1)?(k=f[b+4>>2]|0,b=f[k+36>>2]|0,e=f[(f[b>>2]|0)+12>>2]|0,c=f[c+4>>2]|0,k=Jbb(k)|0,x=0,ya(e|0,h|0,b|0,d|0,j|0,c|0,k|0),k=x,x=0,!(k&1)):0){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];wAa(a,g);break}d=Ia()|0;break c}while(0);break b}while(0);break a}while(0);zSa(j);u=i;return}while(0);zSa(j);Ua(d|0)}function Ao(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;p=q;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}f[j>>2]=h;f[g>>2]=d;n=i;o=a+8|0;while(1){if((h|0)==(i|0)|(d|0)==(e|0)){k=33;break}l=c;a=f[l+4>>2]|0;m=p;f[m>>2]=f[l>>2];f[m+4>>2]=a;m=k;a=pRa(f[o>>2]|0)|0;l=pt(h,g,m-d|0,n-h>>2,c)|0;if(a|0)pRa(a)|0;if((l|0)==-1){k=10;break}h=(f[j>>2]|0)+(l<<2)|0;f[j>>2]=h;if((h|0)==(i|0)){k=30;break}d=f[g>>2]|0;if((k|0)==(e|0))k=e;else{k=pRa(f[o>>2]|0)|0;d=qt(h,d,1,c)|0;if(k|0)pRa(k)|0;if(d|0){d=2;k=29;break}f[j>>2]=(f[j>>2]|0)+4;d=(f[g>>2]|0)+1|0;f[g>>2]=d;k=d;while(1){if((k|0)==(e|0)){k=e;break}if(!(b[k>>0]|0))break;k=k+1|0}h=f[j>>2]|0}}do if((k|0)==10){a:while(1){f[j>>2]=h;if((d|0)==(f[g>>2]|0)){k=19;break}k=pRa(f[o>>2]|0)|0;h=qt(h,d,m-d|0,p)|0;if(k|0)pRa(k)|0;switch(h|0){case -1:{k=15;break a}case -2:{k=16;break a}case 0:{h=1;break}default:{}}d=d+h|0;h=(f[j>>2]|0)+4|0}if((k|0)==15){f[g>>2]=d;d=2;k=29;break}else if((k|0)==16){f[g>>2]=d;d=1;k=29;break}else if((k|0)==19){f[g>>2]=d;d=(d|0)!=(e|0)&1;k=29;break}}else if((k|0)==30){d=f[g>>2]|0;k=33}while(0);if((k|0)!=29)if((k|0)==33)d=(d|0)!=(e|0)&1;u=q;return d|0}function Bo(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;h=s;q=b+8|0;f[h>>2]=f[q>>2];h=JH(h,4)|0;i=b+4|0;f[i>>2]=h;c=a+4|0;g=f[c>>2]|0;r=a+12|0;d=+(((f[r>>2]|0)+1|0)>>>0);e=+n[a+16>>2];if((g|0)==0|e*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;h=~~+W(+(d/e))>>>0;oL(a,g>>>0>>0?h:g);g=f[c>>2]|0;h=f[i>>2]|0}o=g+-1|0;p=(o&g|0)==0;if(!p)if(h>>>0>>0)m=h;else m=(h>>>0)%(g>>>0)|0;else m=o&h;c=f[(f[a>>2]|0)+(m<<2)>>2]|0;if(!c){c=a+8|0;f[b>>2]=f[c>>2];f[c>>2]=b;f[(f[a>>2]|0)+(m<<2)>>2]=c;c=f[b>>2]|0;if(c|0){c=f[c+4>>2]|0;if(!p){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&o;f[(f[a>>2]|0)+(c<<2)>>2]=b}}else{k=0;l=c;while(1){c=f[l>>2]|0;if(!c){c=0;break}i=f[c+4>>2]|0;if(!p)if(i>>>0>>0)j=i;else j=(i>>>0)%(g>>>0)|0;else j=i&o;if((j|0)!=(m|0))break;if((i|0)==(h|0))i=(f[c+8>>2]|0)==(f[q>>2]|0);else i=0;if(i|k^1){k=k|i;l=c}else break}f[b>>2]=c;f[l>>2]=b;c=f[b>>2]|0;if(c|0){c=f[c+4>>2]|0;if(!p){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&o;if((c|0)!=(m|0))f[(f[a>>2]|0)+(c<<2)>>2]=b}}f[r>>2]=(f[r>>2]|0)+1;u=s;return}function Co(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e;a:do switch(b[a>>0]|0){case 105:switch(b[a+1>>0]|0){case 51:{if((b[a+2>>0]|0)!=50){h=16;break a}if(d){a=1;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a&1;h=23;break a}else break a}case 54:{if((b[a+2>>0]|0)!=52){h=16;break a}if(d){a=2;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a?2:0;h=23;break a}else break a}default:{h=16;break a}}case 102:switch(b[a+1>>0]|0){case 51:{if((b[a+2>>0]|0)!=50){h=16;break a}if(d){a=3;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a?3:0;h=23;break a}else break a}case 54:{if((b[a+2>>0]|0)!=52){h=16;break a}if(d){a=4;h=23;break a}a=(b[a+3>>0]|0)==0;if(a|c){a=a?4:0;h=23;break a}else break a}default:{h=16;break a}}default:h=16}while(0);if((h|0)==16?c:0){a=0;h=23}if((h|0)==23){u=e;return a|0}c=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=j7a(93596)|0;x=0;va(87,g|0,93596,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,c|0,g|0);e=x;x=0;if(e&1)d=1;else{x=0;va(98,c|0,32200,457);x=0;d=0}a=Ia()|0;MTa(g);if(d)h=22}else{a=Ia()|0;h=22}if((h|0)==22)La(c|0);Ua(a|0);return 0}function Do(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o+12|0;i=o+8|0;m=o+4|0;n=o;j=c+8|0;k=c+12|0;e=f[k>>2]|0;d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;isa(a,v2a(f[d>>2]|0)|0,c,82281);d=d+4|0}e=f[c+24>>2]|0;d=f[c+20>>2]|0;while(1){if((d|0)==(e|0))break;isa(a,v2a(f[d>>2]|0)|0,c,82313);d=d+4|0}g=c+36|0;d=f[g>>2]|0;e=f[d+4>>2]|0;if((e|0)!=5)Tga(a,f[c+4>>2]|0,e,d,82343);d=a+68|0;e=f[d>>2]|0;if((e|0)!=5)Tga(a,f[c+4>>2]|0,e,f[g>>2]|0,82394);Ooa(a,(f[a+60>>2]|0)==0,f[g>>2]|0,82446)|0;f[d>>2]=5;fZ(a+72|0);if(b[(f[a+44>>2]|0)+1>>0]|0?(h=f[c+32>>2]|0,Qab(h)|0):0){d=Jbb(f[a+36>>2]|0)|0;f[i>>2]=h;f[l>>2]=f[i>>2];h=MI(d,l)|0;i=f[h+12>>2]|0;d=f[h+8>>2]|0;e=f[j>>2]|0;g=i;a:do if((i-d|0)==((f[k>>2]|0)-e|0))while(1){if((d|0)==(g|0)){d=1;break a}if((f[d>>2]|0)!=(f[e>>2]|0)){d=0;break a}e=e+4|0;d=d+4|0}else d=0;while(0);f[m>>2]=f[c>>2];f[l>>2]=f[m>>2];$2(a,d,l,82481);m=(f[h+4>>2]|0)==(f[c+4>>2]|0);f[n>>2]=f[c>>2];f[l>>2]=f[n>>2];$2(a,m,l,82526)}u=o;return}function Eo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;d=n+32|0;e=n+80|0;c=n+72|0;g=n+76|0;m=n+60|0;h=n+48|0;i=n+16|0;j=n;l=f[a+36>>2]|0;Jbb(l)|0;_0a(e,l);Bab(c);l=b+12|0;switch(f[(f[l>>2]|0)+4>>2]|0){case 1:{k=f[33170]|0;f[c>>2]=k;c=k;k=6;break}case 5:case 2:break;case 3:{k=f[33168]|0;f[c>>2]=k;c=k;k=6;break}case 4:{k=f[33167]|0;f[c>>2]=k;c=k;k=6;break}default:hb()}do if((k|0)==6){f[g>>2]=c;a=a+44|0;k=f[a>>2]|0;f[a>>2]=k+1;t$a(i,k);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];k=e0(e,d)|0;f[h>>2]=k;t$a(j,f[b+8>>2]|0);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];k=e0(e,d)|0;f[h+4>>2]=k;f[h+8>>2]=f[l>>2];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;x=0;ua(168,m|0,3);k=x;x=0;if(k&1){n=Ia()|0;zSa(m);Ua(n|0)}qda(m,h,h+12|0);c=f[(f[l>>2]|0)+4>>2]|0;x=0;f[d>>2]=f[g>>2];c=ka(10,e|0,d|0,m|0,c|0)|0;k=x;x=0;if(k&1){n=Ia()|0;zSa(m);Ua(n|0)}else{f[l>>2]=c;zSa(m);break}}while(0);u=n;return}function Fo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=u;u=u+96|0;g=e+24|0;i=e+76|0;h=e;d=e+64|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,a,j7a(a)|0);if((MC(132700,g)|0)==132704){MTa(g);f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,b,j7a(b)|0);x=0;ua(290,h|0,c|0);c=x;x=0;if(c&1)a=Ia()|0;else{x=0;va(100,g|0,i|0,h|0);c=x;x=0;if(c&1)a=Ia()|0;else{f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=j7a(a)|0;x=0;va(87,d|0,a|0,c|0);c=x;x=0;do if(!(c&1)){x=0;a=ga(255,d|0)|0;c=x;x=0;if(c&1){a=Ia()|0;MTa(d);break}else{EP(a,g)|0;MTa(d);CRa(g);xta(h);MTa(i);u=e;return}}else a=Ia()|0;while(0);CRa(g)}xta(h)}MTa(i)}else{x=0;wa(71,116460,80299,42,116500);x=0;a=Ia()|0;MTa(g)}Ua(a|0)}function Go(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;l=a+20|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[a+36>>2]=1065353216;g=b+12|0;h=b+16|0;j=a+12|0;k=a+32|0;e=0;a:while(1){c=f[g>>2]|0;if(e>>>0>=(f[h>>2]|0)-c>>2>>>0){i=3;break}c=f[c+(e<<2)>>2]|0;switch(f[c+12>>2]|0){case 0:{d=f[j>>2]|0;x=0;c=ia(132,a|0,c|0)|0;i=x;x=0;if(i&1){i=7;break a}f[c>>2]=d;break}case 3:{d=f[k>>2]|0;x=0;c=ia(132,l|0,c|0)|0;i=x;x=0;if(i&1){i=10;break a}f[c>>2]=d;break}default:{}}e=e+1|0}do if((i|0)==3){e=b+36|0;g=b+40|0;d=0;while(1){c=f[e>>2]|0;if(d>>>0>=(f[g>>2]|0)-c>>2>>>0)break;h=f[j>>2]|0;x=0;c=ia(132,a|0,f[c+(d<<2)>>2]|0)|0;m=x;x=0;if(m&1){i=16;break}f[c>>2]=h;d=d+1|0}if((i|0)==16){c=Ia()|0;break}h=b+48|0;e=b+52|0;d=0;while(1){c=f[h>>2]|0;if(d>>>0>=(f[e>>2]|0)-c>>2>>>0){i=18;break}g=f[k>>2]|0;x=0;c=ia(132,l|0,f[c+(d<<2)>>2]|0)|0;m=x;x=0;if(m&1){i=21;break}f[c>>2]=g;d=d+1|0}if((i|0)==18)return;else if((i|0)==21){c=Ia()|0;break}}else if((i|0)==7)c=Ia()|0;else if((i|0)==10)c=Ia()|0;while(0);SQa(l);SQa(a);Ua(c|0)}function Ho(a){a=a|0;var b=0,c=0,d=0,e=0,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=u;u=u+80|0;k=r+64|0;q=r+48|0;l=r+44|0;m=r+40|0;p=r;n=r+24|0;o=f[a+4>>2]|0;j=f[a>>2]|0;c=j+4|0;b=f[c>>2]|0;do if((b|0)!=(f[j>>2]|0)){c=QWa(iV()|0)|0;f[q>>2]=0;d=q+4|0;f[d>>2]=0;e=q+8|0;f[e>>2]=0;f[l>>2]=0;g=f[o>>2]|0;f[m>>2]=(f[g+40>>2]|0)-(f[g+36>>2]|0)>>2;g=n+4|0;h=n+8|0;i=n+12|0;b=0;while(1){if(b>>>0>=c>>>0){c=4;break}f[n>>2]=l;f[g>>2]=m;f[h>>2]=o;f[i>>2]=f[a>>2];x=0;f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];f[k+12>>2]=f[n+12>>2];ua(1295,p|0,k|0);j=x;x=0;if(j&1){c=10;break}j=f[d>>2]|0;if(j>>>0>=(f[e>>2]|0)>>>0){x=0;ua(1296,q|0,p|0);j=x;x=0;if(j&1){c=11;break}}else{mW(j,p);f[d>>2]=(f[d>>2]|0)+24}xta(p);b=b+1|0}if((c|0)==4){x=0;b=fa(65)|0;p=x;x=0;if(!(p&1)?(x=0,ua(1297,b|0,q|0),p=x,x=0,!(p&1)):0){Q9(q);b=f[a>>2]|0;c=b+4|0;b=f[b>>2]|0;break}b=Ia()|0}else if((c|0)==10){b=Ia()|0;c=12}else if((c|0)==11){b=Ia()|0;xta(p);c=12}Q9(q);Ua(b|0)}while(0);f[c>>2]=b;u=r;return}function Io(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;i=l+24|0;j=l+12|0;k=l;h=Bc(a,c,d)|0;a:do if((h|0)!=(a|0)?(g=d+4|0,e=f[g>>2]|0,(f[d>>2]|0)!=(e|0)):0){hY(k,e+-24|0);x=0;ja(101,k|0,0,123545)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,j|0,123272)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){Z0a(f[e>>2]|0,0);f[a+-20>>2]=0;a=e}else{Z0a(e,0);b[c>>0]=0;a=e}yv(e);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}MTa(i);MTa(j);MTa(k);a=h;break a}while(0);MTa(k);Ua(a|0)}while(0);u=l;return a|0}function Jo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;h=l+48|0;i=l+32|0;j=l+16|0;k=l;a:do switch(f[b>>2]|0){case 3:{g=+TNa(b);e=+TNa(c);if(g==0.0&g==e){k=(K$a(g)|0)<0;HAa(a,k?g:e);break a}d=e>>0>2139095040;c=((K$a(e)|0)&2147483647)>>>0>2139095040;if(!(c|(b|((K$a(d)|0)&2147483647)>>>0>2139095040))){HAa(a,d);break a}if(b|c){HAa(j,b?g:e);vHa(i,j);t$a(k,12582912);yaa(h,i,k);QHa(a,h);break a}else{t$a(h,2143289344);QHa(a,h);break a}}case 4:{g=+SNa(b);e=+SNa(c);if(g==0.0&g==e){vRa(g)|0;pqa(a,(I|0)<0?g:e);break a}d=e>>0>2146435072|(c|0)==2146435072&b>>>0>0;c=vRa(e)|0;m=I&2147483647;c=m>>>0>2146435072|(m|0)==2146435072&c>>>0>0;m=vRa(d)|0;n=I&2147483647;if(!(c|(b|(n>>>0>2146435072|(n|0)==2146435072&m>>>0>0)))){pqa(a,d);break a}if(b|c){pqa(j,b?g:e);n=j+8|0;aGa(i,f[j>>2]|0,f[n>>2]|0,f[n+4>>2]|0);XSa(k,0,524288);yaa(h,i,k);n=h+8|0;uGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}else{XSa(h,0,2146959360);n=h+8|0;uGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}}default:hb()}while(0);u=l;return}function Ko(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;h=l+48|0;i=l+32|0;j=l+16|0;k=l;a:do switch(f[b>>2]|0){case 3:{g=+TNa(b);e=+TNa(c);if(g==0.0&g==e){k=(K$a(g)|0)<0;HAa(a,k?e:g);break a}d=g>>0>2139095040;c=((K$a(e)|0)&2147483647)>>>0>2139095040;if(!(c|(b|((K$a(d)|0)&2147483647)>>>0>2139095040))){HAa(a,d);break a}if(b|c){HAa(j,b?g:e);vHa(i,j);t$a(k,12582912);yaa(h,i,k);QHa(a,h);break a}else{t$a(h,2143289344);QHa(a,h);break a}}case 4:{g=+SNa(b);e=+SNa(c);if(g==0.0&g==e){vRa(g)|0;pqa(a,(I|0)<0?e:g);break a}d=g>>0>2146435072|(c|0)==2146435072&b>>>0>0;c=vRa(e)|0;m=I&2147483647;c=m>>>0>2146435072|(m|0)==2146435072&c>>>0>0;m=vRa(d)|0;n=I&2147483647;if(!(c|(b|(n>>>0>2146435072|(n|0)==2146435072&m>>>0>0)))){pqa(a,d);break a}if(b|c){pqa(j,b?g:e);n=j+8|0;aGa(i,f[j>>2]|0,f[n>>2]|0,f[n+4>>2]|0);XSa(k,0,524288);yaa(h,i,k);n=h+8|0;uGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}else{XSa(h,0,2146959360);n=h+8|0;uGa(a,f[h>>2]|0,f[n>>2]|0,f[n+4>>2]|0);break a}}default:hb()}while(0);u=l;return}function Lo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;d=h+24|0;i=h+12|0;j=h;g=rSa(f[a+4>>2]|0)|0;e=g+8|0;f[e>>2]=c;if((c|0)==3){L1a(d,lF(Or(b,1)|0)|0);f[g+12>>2]=f[d>>2]}else q7(a,b,bYa(b)|0,g);e=(f[e>>2]|0)==2;a=Jbb(f[g+20>>2]|0)|0;do if(e)if((a|0)==1)b=19;else{c=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;j=j7a(93614)|0;x=0;va(87,i|0,93614,j|0);j=x;x=0;if(!(j&1)){x=0;ua(261,c|0,i|0);j=x;x=0;if(j&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;MTa(i);if(!b){b=20;break}}else a=Ia()|0;La(c|0);b=20}else if(!a)b=19;else{c=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=j7a(93644)|0;x=0;va(87,j|0,93644,i|0);i=x;x=0;if(!(i&1)){x=0;ua(261,c|0,j|0);i=x;x=0;if(i&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;MTa(j);if(!b){b=20;break}}else a=Ia()|0;La(c|0);b=20}while(0);if((b|0)==19){r1(g);u=h;return g|0}else if((b|0)==20)Ua(a|0);return 0}function Mo(){var a=0,c=0;if((b[130912]|0)==0?VWa(130912)|0:0){c=129536;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=129824)}bFa(129536,120242)|0;bFa(129548,120250)|0;bFa(129560,120259)|0;bFa(129572,120265)|0;bFa(129584,120271)|0;bFa(129596,120275)|0;bFa(129608,120280)|0;bFa(129620,120285)|0;bFa(129632,120292)|0;bFa(129644,120302)|0;bFa(129656,120310)|0;bFa(129668,120319)|0;bFa(129680,120328)|0;bFa(129692,120332)|0;bFa(129704,120336)|0;bFa(129716,120340)|0;bFa(129728,120271)|0;bFa(129740,120344)|0;bFa(129752,120348)|0;bFa(129764,120352)|0;bFa(129776,120356)|0;bFa(129788,120360)|0;bFa(129800,120364)|0;bFa(129812,120368)|0;return}function No(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+96|0;c=i;d=b+12|0;e=n$a(f[d>>2]|0)|0;g=b+16|0;h=n$a(f[g>>2]|0)|0;a:do switch(f[b+8>>2]|0){case 0:{if(e|0?(TRa(e+8|0)|0)==0:0){GVa(f[a>>2]|0,f[g>>2]|0)|0;break a}if(h|0?(TRa(h+8|0)|0)==0:0)GVa(f[a>>2]|0,f[d>>2]|0)|0;break}case 1:{if(h|0?(TRa(h+8|0)|0)==0:0)GVa(f[a>>2]|0,f[d>>2]|0)|0;break}case 10:{if(!((e|0)!=0?!(TRa(e+8|0)|0):0)){if(!h)break a;if(V4(h)|0)break a}gA(c,f[a+24>>2]|0,f[g>>2]|0);h=qza(c)|0;_7(c);if(!h)GVa(f[a>>2]|0,f[d>>2]|0)|0;break}case 2:{if((e|0?(TRa(e+8|0)|0)==0:0)?(gA(c,f[a+24>>2]|0,f[g>>2]|0),g=qza(c)|0,_7(c),!g):0){GVa(f[a>>2]|0,e)|0;break a}if((h|0?(TRa(h+8|0)|0)==0:0)?(gA(c,f[a+24>>2]|0,f[d>>2]|0),g=qza(c)|0,_7(c),!g):0)GVa(f[a>>2]|0,h)|0;break}default:{}}while(0);u=i;return}function Oo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;j=m+16|0;k=m+12|0;l=m;c=Ac(a,b)|0;f[j>>2]=c;i=b+36|0;b=f[i>>2]|0;if(b){c=f[b>>2]|0;f[k>>2]=c;b=f[a>>2]|0;d=b+132|0;e=a+64|0;if(!(Mz(e,k)|0)){g=b+136|0;h=((f[g>>2]|0)-(f[d>>2]|0)|0)/12|0;c=Jbb(c)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,c,j7a(c)|0);c=f[g>>2]|0;if(c>>>0>=(f[b+140>>2]|0)>>>0){x=0;ua(1877,d|0,l|0);g=x;x=0;if(g&1){m=Ia()|0;MTa(l);Ua(m|0)}}else{f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];c=0;while(1){if((c|0)==3)break;f[l+(c<<2)>>2]=0;c=c+1|0}f[g>>2]=(f[g>>2]|0)+12}MTa(l);l=im(e,k)|0;f[l>>2]=h}h=im(e,k)|0;h=f[h>>2]|0;l=f[i>>2]|0;k=f[l+4>>2]|0;l=f[l+8>>2]|0;c=Il((f[a+84>>2]|0)+68|0,j)|0;f[c>>2]=h;f[c+4>>2]=k;f[c+8>>2]=l;c=f[j>>2]|0}u=m;return c|0}function Po(a,c,e,g,h,i){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;var k=0,l=0,m=0;f[e>>2]=a;f[i>>2]=g;m=c;a=f[e>>2]|0;a:while(1){if(a>>>0>=c>>>0){a=0;break}g=d[a>>1]|0;l=g&65535;do if((g&65535)<128){a=f[i>>2]|0;if((h-a|0)<1){a=1;break a}f[i>>2]=a+1;b[a>>0]=g}else{if((g&65535)<2048){a=f[i>>2]|0;if((h-a|0)<2){a=1;break a}f[i>>2]=a+1;b[a>>0]=l>>>6|192;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l&63|128;break}if((g&65535)<55296){a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=l>>>12|224;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l>>>6&63|128;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l&63|128;break}if((g&65535)>=56320){if((g&65535)<57344){a=2;break a}a=f[i>>2]|0;if((h-a|0)<3){a=1;break a}f[i>>2]=a+1;b[a>>0]=l>>>12|224;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l>>>6&63|128;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l&63|128;break}if((m-a|0)<4){a=1;break a}a=a+2|0;g=j[a>>1]|0;if((g&64512|0)!=56320){a=2;break a}if((h-(f[i>>2]|0)|0)<4){a=1;break a}k=l&960;if(((k<<10)+65536|0)>>>0>1114111){a=2;break a}f[e>>2]=a;a=(k>>>6)+1|0;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=a>>>2|240;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l>>>2&15|a<<4&48|128;k=f[i>>2]|0;f[i>>2]=k+1;b[k>>0]=l<<4&48|g>>>6&15|128;l=f[i>>2]|0;f[i>>2]=l+1;b[l>>0]=g&63|128}while(0);a=(f[e>>2]|0)+2|0;f[e>>2]=a}return a|0}function Qo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;w=u;u=u+80|0;c=w+48|0;h=w+64|0;v=w+32|0;q=w+16|0;r=w;oD(h,a,1);s=a+44|0;t=f[s>>2]|0;t$a(v,0);x=0;f[c>>2]=f[v>>2];f[c+4>>2]=f[v+4>>2];f[c+8>>2]=f[v+8>>2];f[c+12>>2]=f[v+12>>2];v=ia(50,t|0,c|0)|0;y=x;x=0;if(((((((((!(y&1)?(x=0,d=pa(7,f[t>>2]|0,8,0,8,v|0,f[b+12>>2]|0,4)|0,y=x,x=0,!(y&1)):0)?(e=f[s>>2]|0,x=0,g=ga(320,h|0)|0,y=x,x=0,!(y&1)):0)?(i=f[s>>2]|0,t$a(q,0),x=0,f[c>>2]=f[q>>2],f[c+4>>2]=f[q+4>>2],f[c+8>>2]=f[q+8>>2],f[c+12>>2]=f[q+12>>2],j=ia(50,i|0,c|0)|0,y=x,x=0,!(y&1)):0)?(x=0,k=pa(10,f[i>>2]|0,4,1,4,4,j|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,l=ja(45,e|0,g|0,k|0)|0,y=x,x=0,!(y&1)):0)?(m=f[s>>2]|0,t$a(r,0),x=0,f[c>>2]=f[r>>2],f[c+4>>2]=f[r+4>>2],f[c+8>>2]=f[r+8>>2],f[c+12>>2]=f[r+12>>2],n=ia(50,m|0,c|0)|0,y=x,x=0,!(y&1)):0)?(x=0,o=pa(10,f[m>>2]|0,4,1,0,4,n|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,p=ka(27,t|0,d|0,l|0,o|0)|0,y=x,x=0,!(y&1)):0)?(x=0,va(161,a|0,p|0,h|0),y=x,x=0,!(y&1)):0){GVa(f[a+16>>2]|0,p)|0;MCa(h);u=w;return}y=Ia()|0;MCa(h);Ua(y|0)}function Ro(a,c,d,e,g,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;f[d>>2]=a;f[i>>2]=e;p=c;a:while(1){o=f[d>>2]|0;if(o>>>0>=c>>>0){a=0;break}if(e>>>0>=g>>>0){a=1;break}m=b[o>>0]|0;a=m&255;do if(m<<24>>24<=-1){if((m&255)<194){a=2;break a}if((m&255)<224){if((p-o|0)<2){a=1;break a}j=h[o+1>>0]|0;if((j&192|0)!=128){a=2;break a}a=j&63|a<<6&1984;j=2;break}if((m&255)<240){if((p-o|0)<3){a=1;break a}k=b[o+1>>0]|0;j=b[o+2>>0]|0;switch(m<<24>>24){case -32:{if((k&-32)<<24>>24!=-96){a=2;break a}break}case -19:{if((k&-32)<<24>>24!=-128){a=2;break a}break}default:if((k&-64)<<24>>24!=-128){a=2;break a}}j=j&255;if((j&192|0)!=128){a=2;break a}a=(k&63)<<6|a<<12&61440|j&63;j=3;break}if((m&255)>=245){a=2;break a}if((p-o|0)<4){a=1;break a}n=b[o+1>>0]|0;j=b[o+2>>0]|0;l=b[o+3>>0]|0;switch(m<<24>>24){case -16:{if((n+112&255)>=48){a=2;break a}break}case -12:{if((n&-16)<<24>>24!=-128){a=2;break a}break}default:if((n&-64)<<24>>24!=-128){a=2;break a}}k=j&255;if((k&192|0)!=128){a=2;break a}j=l&255;if((j&192|0)!=128){a=2;break a}a=(n&63)<<12|a<<18&1835008|k<<6&4032|j&63;if(a>>>0>1114111){a=2;break a}else j=4}else j=1;while(0);f[e>>2]=a;f[d>>2]=o+j;o=(f[i>>2]|0)+4|0;f[i>>2]=o;e=o}return a|0}function So(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;o=u;u=u+64|0;m=o+24|0;j=o+60|0;k=o;l=o+48|0;a:do if((c-a|0)>>>0>8){e=0;c=j;while(1){g=b[a+e>>0]|0;h=g<<24>>24;if((e|0)==8){i=6;break}if(!(r1a(h)|0))break;g=b[a+(e|1)>>0]|0;b[c>>0]=(((h+-48|0)>>>0<10?0:9)+h<<4)+g+((g+-48|0)>>>0<10?208:169);e=e+2|0;c=c+1|0}do if((i|0)==6){if(g<<24>>24==69){b:do if((c|0)!=(j|0)){e=j;while(1){c=c+-1|0;if(e>>>0>=c>>>0)break b;i=b[e>>0]|0;b[e>>0]=b[c>>0]|0;b[c>>0]=i;e=e+1|0}}while(0);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[k+16>>2]=0;f[k+20>>2]=0;p[m>>3]=+n[j>>2];c=QFa(k,24,124586,m)|0;if(c>>>0>23)break;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;qW(l,k,c);RY(m,l);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,m|0);d=x;x=0;if(d&1){o=Ia()|0;OJa(m);MTa(l);Ua(o|0)}}else{CY(e,m);f[c>>2]=(f[c>>2]|0)+24}OJa(m);MTa(l);a=a+9|0}break a}while(0)}while(0);u=o;return a|0}function To(){var a=0,c=0;if((b[130992]|0)==0?VWa(130992)|0:0){c=130288;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=130576)}aFa(130288,48248)|0;aFa(130300,48280)|0;aFa(130312,48316)|0;aFa(130324,48340)|0;aFa(130336,48364)|0;aFa(130348,48380)|0;aFa(130360,48400)|0;aFa(130372,48420)|0;aFa(130384,48448)|0;aFa(130396,48488)|0;aFa(130408,48520)|0;aFa(130420,48556)|0;aFa(130432,48592)|0;aFa(130444,48608)|0;aFa(130456,48624)|0;aFa(130468,48640)|0;aFa(130480,48364)|0;aFa(130492,48656)|0;aFa(130504,48672)|0;aFa(130516,48688)|0;aFa(130528,48704)|0;aFa(130540,48720)|0;aFa(130552,48736)|0;aFa(130564,48752)|0;return}function Uo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;k=q+36|0;h=q+32|0;l=q+24|0;j=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;do if(b[a+33>>0]|0){d=DCa(134176,110960)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,i=x,x=0,!(i&1)):0){OCa(k);Wq(d,g)|0;fu(d)|0;break}q=Ia()|0;OCa(k);Ua(q|0)}while(0);if(zAa(c)|0){i=a+28|0;e=Gv(f[i>>2]|0,14)|0;g=c+8|0;n4a(h,Jbb(f[c+12>>2]|0)|0);Yr(e,f[h>>2]|0)|0;Q$a(l,g);LUa(j,g);g=l+4|0;e=f[j>>2]|0;d=f[j+4>>2]|0;while(1){if(!(qTa(f[l>>2]|0,f[g>>2]|0,e,d)|0))break;h=QOa(l)|0;j=f[i>>2]|0;f[n>>2]=f[h>>2];f[k>>2]=f[n>>2];n4a(m,ZZ(a,k)|0);Yr(j,f[m>>2]|0)|0;YYa(l)}n=f[i>>2]|0;f[p>>2]=f[c+24>>2];f[k>>2]=f[p>>2];n4a(o,ZZ(a,k)|0);Yr(n,f[o>>2]|0)|0}u=q;return}function Vo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0;q=u;u=u+48|0;g=q+40|0;t=q+24|0;r=q+8|0;o=q;p=b+8|0;a:do if(xba(a,f[p>>2]|0)|0){oD(t,a,1);x=0;va(160,r|0,a|0,f[p>>2]|0);h=x;x=0;if(h&1)c=Ia()|0;else{h=a+44|0;c=f[h>>2]|0;x=0;d=ga(320,t|0)|0;e=x;x=0;do if(!(e&1)?(x=0,i=ja(45,c|0,d|0,f[p>>2]|0)|0,e=x,x=0,!(e&1)):0){c=f[h>>2]|0;L1a(o,f[33071]|0);d=f[h>>2]|0;x=0;e=ga(320,r|0)|0;v=x;x=0;if((((!(v&1)?(x=0,j=ja(46,f[d>>2]|0,e|0,1)|0,v=x,x=0,!(v&1)):0)?(x=0,f[g>>2]=f[o>>2],k=ja(47,c|0,g|0,j|0)|0,v=x,x=0,!(v&1)):0)?(l=f[h>>2]|0,x=0,m=ga(320,t|0)|0,v=x,x=0,!(v&1)):0)?(x=0,n=ja(46,f[l>>2]|0,m|0,1)|0,v=x,x=0,!(v&1)):0){f[p>>2]=n;x=0;c=ka(22,f[h>>2]|0,i|0,k|0,b|0)|0;v=x;x=0;if(v&1){c=Ia()|0;break}else{GVa(f[a+16>>2]|0,c)|0;MCa(r);MCa(t);break a}}c=Ia()|0}else s=14;while(0);if((s|0)==14)c=Ia()|0;MCa(r)}MCa(t);Ua(c|0)}while(0);u=q;return}function Wo(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;i=l+12|0;j=l;if((d+-1&255)>1)d=0;else{k=MSa(f[a+4>>2]|0)|0;switch(d<<24>>24){case 1:{e=1;break}case 2:{e=2;break}default:hb()}g=k+24|0;f[g>>2]=e;f[k+4>>2]=1;do if(b[a+12>>0]|0){d=DCa(134176,110733)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(d,h)|0;fu(d)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);m=dk(a)|0;f[k+20>>2]=m;m=dk(a)|0;f[k+16>>2]=m;m=dk(a)|0;f[k+12>>2]=m;Sab(i);LF(a,i,k+8|0);m=Jbb(f[i>>2]|0)|0;do if((m|0)!=(Ixa(f[g>>2]|0)|0)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,96999,j7a(96999)|0);x=0;ua(1870,a|0,j|0);m=x;x=0;if(m&1){m=Ia()|0;MTa(j);Ua(m|0)}else{MTa(j);break}}while(0);Jpa(k);f[c>>2]=k;d=1}u=l;return d|0}function Xo(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;l=m;n=m+16|0;f[n>>2]=0;i=n+4|0;f[i>>2]=0;g=n+8|0;f[g>>2]=0;h=a+48|0;d=f[a+44>>2]|0;while(1){if((d|0)==(h|0)){d=3;break}o=d+16|0;c=d+32|0;e=(f[d+36>>2]|0)-(f[c>>2]|0)>>2;x=0;f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];e=ia(203,l|0,e|0)|0;o=x;x=0;if(o&1){d=11;break}if(e){x=0;c=ia(204,a|0,c|0)|0;o=x;x=0;if(o&1){d=12;break}f[l>>2]=c;e=f[i>>2]|0;if(e>>>0>=(f[g>>2]|0)>>>0){x=0;ua(1836,n|0,l|0);o=x;x=0;if(o&1){d=12;break}}else{f[e>>2]=c;f[i>>2]=(f[i>>2]|0)+4}}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}a:do if((d|0)==3){do if((f[n>>2]|0)!=(f[i>>2]|0)){c=f[a+36>>2]|0;Jbb(c)|0;_0a(l,c);x=0;c=ia(205,l|0,n|0)|0;o=x;x=0;if(!(o&1)?(j=b+36|0,x=0,k=ja(51,l|0,c|0,f[j>>2]|0)|0,o=x,x=0,!(o&1)):0){f[j>>2]=k;break}c=Ia()|0;break a}while(0);zSa(n);u=m;return}else if((d|0)==11)c=Ia()|0;else if((d|0)==12)c=Ia()|0;while(0);zSa(n);Ua(c|0)}function Yo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do switch(b-a>>2|0){case 1:case 0:{d=1;break}case 2:{d=b+-4|0;e=f[d>>2]|0;g=f[a>>2]|0;if(Y4(f[f[c>>2]>>2]|0,f[c+4>>2]|0,e,g)|0){f[a>>2]=e;f[d>>2]=g;d=1}else d=1;break}case 3:{cA(a,a+4|0,b+-4|0,f[f[c>>2]>>2]|0,f[c+4>>2]|0)|0;d=1;break}case 4:{VA(a,a+4|0,a+8|0,b+-4|0,c)|0;d=1;break}case 5:{Jx(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;d=1;break}default:{e=a+8|0;m=c+4|0;cA(a,a+4|0,e,f[f[c>>2]>>2]|0,f[m>>2]|0)|0;l=a+12|0;d=0;while(1){if((l|0)==(b|0)){d=1;break a}k=f[l>>2]|0;h=f[e>>2]|0;j=f[m>>2]|0;i=f[f[c>>2]>>2]|0;if(Y4(i,j,k,h)|0){g=l;while(1){f[g>>2]=h;if((e|0)==(a|0)){e=a;break}g=e+-4|0;h=f[g>>2]|0;if(!(Y4(i,j,k,h)|0))break;else{n=e;e=g;g=n}}f[e>>2]=k;d=d+1|0;if((d|0)==8)break}e=l;l=l+4|0}d=(l+4|0)==(b|0)}}while(0);return d|0}function Zo(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;o=r+16|0;p=r+8|0;l=r+4|0;m=r;g=a+52|0;if(b[g>>0]|0){e=a+48|0;d=f[e>>2]|0;if(c){f[e>>2]=-1;b[g>>0]=0}}else{d=f[a+44>>2]|0;d=(d|0)>1?d:1;n=a+32|0;e=0;while(1){if(e>>>0>=d>>>0){q=8;break}g=rV(f[n>>2]|0)|0;if((g|0)==-1){d=-1;break}b[o+e>>0]=g;e=e+1|0}if((q|0)==8){do if(!(b[a+53>>0]|0)){i=a+40|0;j=a+36|0;k=p+1|0;a:while(1){s=f[i>>2]|0;g=s;e=f[g>>2]|0;g=f[g+4>>2]|0;t=f[j>>2]|0;h=o+d|0;switch(lc[f[(f[t>>2]|0)+16>>2]&15](t,s,o,h,l,p,k,m)|0){case 3:{q=14;break a}case 2:{q=16;break a}case 1:break;default:break a}t=f[i>>2]|0;f[t>>2]=e;f[t+4>>2]=g;if((d|0)==8){q=16;break}e=rV(f[n>>2]|0)|0;if((e|0)==-1){q=16;break}b[h>>0]=e;d=d+1|0}if((q|0)==14)b[p>>0]=b[o>>0]|0;else if((q|0)==16){d=-1;break}q=18}else{b[p>>0]=b[o>>0]|0;q=18}while(0);b:do if((q|0)==18){if(c){d=d7a(b[p>>0]|0)|0;f[a+48>>2]=d;break}while(1){if((d|0)<=0)break;d=d+-1|0;t=d7a(b[o+d>>0]|0)|0;if((s0(t,f[n>>2]|0)|0)==-1){d=-1;break b}}d=d7a(b[p>>0]|0)|0}while(0)}}u=r;return d|0}function _o(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+80|0;d=h+48|0;e=h+24|0;g=h;Ou(d,b,f[c+8>>2]|0);if(!(K0a(d)|0)){Ou(e,b,f[c+12>>2]|0);if(!(K0a(e)|0)){Ou(g,b,f[c+16>>2]|0);if(K0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{g=(TRa(g)|0)==0;g=g?e:d;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=h;return}function $o(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+96|0;m=n+48|0;j=n+40|0;k=n;l=n+72|0;a:do if((c-a|0)>>>0>20){e=0;c=j;while(1){g=b[a+e>>0]|0;h=g<<24>>24;if((e|0)==20){i=6;break}if(!(r1a(h)|0))break;g=b[a+(e|1)>>0]|0;b[c>>0]=(((h+-48|0)>>>0<10?0:9)+h<<4)+g+((g+-48|0)>>>0<10?208:169);e=e+2|0;c=c+1|0}do if((i|0)==6){if(g<<24>>24==69){b:do if((c|0)!=(j|0)){e=j;while(1){c=c+-1|0;if(e>>>0>=c>>>0)break b;i=b[e>>0]|0;b[e>>0]=b[c>>0]|0;b[c>>0]=i;e=e+1|0}}while(0);c=k;e=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(e|0));p[m>>3]=+p[j>>3];c=QFa(k,40,124578,m)|0;if(c>>>0>39)break;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;qW(l,k,c);RY(m,l);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,m|0);d=x;x=0;if(d&1){n=Ia()|0;OJa(m);MTa(l);Ua(n|0)}}else{CY(e,m);f[c>>2]=(f[c>>2]|0)+24}OJa(m);MTa(l);a=a+21|0}break a}while(0)}while(0);u=n;return a|0}function ap(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;w=u;u=u+80|0;g=w+48|0;k=w+64|0;y=w+32|0;t=w+16|0;v=w;c=b+12|0;UN(k,a,f[c>>2]|0);d=a+44|0;e=f[d>>2]|0;t$a(y,0);x=0;f[g>>2]=f[y>>2];f[g+4>>2]=f[y+4>>2];f[g+8>>2]=f[y+8>>2];f[g+12>>2]=f[y+12>>2];b=ia(50,e|0,g|0)|0;y=x;x=0;if((((((((!(y&1)?(x=0,h=pa(7,f[e>>2]|0,4,0,4,b|0,f[c>>2]|0,1)|0,y=x,x=0,!(y&1)):0)?(i=f[d>>2]|0,t$a(t,0),x=0,f[g>>2]=f[t>>2],f[g+4>>2]=f[t+4>>2],f[g+8>>2]=f[t+8>>2],f[g+12>>2]=f[t+12>>2],j=ia(50,i|0,g|0)|0,y=x,x=0,!(y&1)):0)?(l=f[d>>2]|0,x=0,m=ga(320,k|0)|0,y=x,x=0,!(y&1)):0)?(x=0,n=ja(46,f[l>>2]|0,m|0,1)|0,y=x,x=0,!(y&1)):0)?(x=0,o=pa(7,f[i>>2]|0,4,4,4,j|0,n|0,1)|0,y=x,x=0,!(y&1)):0)?(p=f[d>>2]|0,t$a(v,0),x=0,f[g>>2]=f[v>>2],f[g+4>>2]=f[v+4>>2],f[g+8>>2]=f[v+8>>2],f[g+12>>2]=f[v+12>>2],q=ia(50,p|0,g|0)|0,y=x,x=0,!(y&1)):0)?(x=0,r=pa(10,f[p>>2]|0,8,1,0,8,q|0,4)|0,y=x,x=0,!(y&1)):0)?(x=0,s=ka(27,e|0,h|0,o|0,r|0)|0,y=x,x=0,!(y&1)):0){GVa(f[a+16>>2]|0,s)|0;MCa(k);u=w;return}y=Ia()|0;MCa(k);Ua(y|0)}function bp(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;h=g+12|0;i=g;d=0;e=0;a:while(1){c=Ps(a)|0;if((c|0)==-1){a=3;break}if((c+-65|0)>>>0<26|(c+-97|0)>>>0<6){a=24;break}b=c+-103|0;do if(b>>>0>=20){if((c|4|0)!=47&(c+-48|0)>>>0>9){a=12;break a}if((c|0)<=57)if((c|0)>47){b=c+-28|0;break}else{b=(c|0)==43?30:31;break}}while(0);d=b<>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;i=j7a(97765)|0;x=0;va(87,h|0,97765,i|0);i=x;x=0;if(!(i&1)){x=0;ua(1882,c|0,h|0);i=x;x=0;if(i&1)a=1;else{x=0;va(98,c|0,34672,495);x=0;a=0}b=Ia()|0;MTa(h);if(!a)break}else b=Ia()|0;La(c|0)}else if((a|0)==12){c=Ea(12)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=j7a(97801)|0;x=0;va(87,i|0,97801,h|0);h=x;x=0;if(!(h&1)){x=0;ua(1882,c|0,i|0);h=x;x=0;if(h&1)a=1;else{x=0;va(98,c|0,34672,495);x=0;a=0}b=Ia()|0;MTa(i);if(!a)break}else b=Ia()|0;La(c|0)}else if((a|0)==24){h=((c|0)<97?-65:-71)+c<>>1;u=g;return ((h&1|0)==0?i:0-i|0)|0}while(0);Ua(b|0);return 0}function cp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;i=m+40|0;j=m+12|0;k=m+24|0;l=m;a:do if((c-a|0)>3?(b[a>>0]|0)==68:0){switch(b[a+1>>0]|0){case 84:case 116:break;default:break a}n=a+2|0;g=Bc(n,c,d)|0;if((!((g|0)==(n|0)|(g|0)==(c|0))?(b[g>>0]|0)==69:0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){hY(l,e+-24|0);x=0;ja(101,l|0,0,124590)|0;n=x;x=0;do if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,k|0,123272)|0;n=x;x=0;if(n&1){a=Ia()|0;MTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}RY(i,j);uA((f[h>>2]|0)+-24|0,i);OJa(i);MTa(j);MTa(k);MTa(l);a=g+1|0;break a}while(0);MTa(l);Ua(a|0)}}while(0);u=m;return a|0}function dp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;d=l+16|0;e=l;g=l+32|0;h=f[a>>2]|0;i=Qxa(c)|0;j=Jbb(b)|0;if(((Hea(j,f[33289]|0)|0?(k=n0a(b,1)|0,KBa(f[k>>2]|0,132960)|0):0)?(k=n0a(b,3)|0,k=f[k>>2]|0,Jbb(k)|0,zab(f[k>>2]|0)|0):0)?(k=n0a(b,3)|0,(naa(Jbb(f[k>>2]|0)|0)|0)==(i|0)):0)k=10;else k=5;do if((k|0)==5){if(((((c|0)==1?Hea(j,f[33289]|0)|0:0)?(c=n0a(b,1)|0,KBa(f[c>>2]|0,133016)|0):0)?(c=n0a(b,3)|0,c=f[c>>2]|0,Jbb(c)|0,zab(f[c>>2]|0)|0):0)?(c=n0a(b,3)|0,(naa(Jbb(f[c>>2]|0)|0)|0)==0):0){k=10;break}if(zab(f[b>>2]|0)|0){t$a(e,(naa(j)|0)<>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];b=e0(h+8|0,d)|0;break}f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,65431,j7a(65431)|0);x=0;ua(69,g|0,b|0);j=x;x=0;if(j&1){l=Ia()|0;MTa(g);Ua(l|0)}else{MTa(g);b=0;break}}while(0);if((k|0)==10){k=f[a+4>>2]|0;b=n0a(b,2)|0;b=Q4(f[k+16>>2]|0,f[b>>2]|0)|0}u=l;return b|0}function ep(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121961);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=s8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)Cbb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if(!(CXa(f[h>>2]|0,f[g+8>>2]|0)|0)){m=31;break}i=g}if((m|0)==31)m=0;f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)Cbb(c);f[d>>2]=0}while(0);return}function fp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121961);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=s8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)Cbb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if(!(E_a(f[h>>2]|0,f[g+8>>2]|0)|0)){m=31;break}i=g}if((m|0)==31)m=0;f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)Cbb(c);f[d>>2]=0}while(0);return}function gp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;h=n;if(!(b[130784]|0))VWa(130784)|0;uSa(131964);if(!(b[130792]|0))VWa(130792)|0;e=f[32998]|0;do if(!e){x=0;ta(453,h|0);e=x;x=0;if(e&1){e=Ia()|0;break}e=f[h>>2]|0;f[h>>2]=0;g=f[32998]|0;f[32998]=e;if(!g)f[h>>2]=0;else{Cbb(g);f[h>>2]=0;e=f[32998]|0}f[e>>2]=0;e=f[32998]|0;g=12}else g=12;while(0);a:do if((g|0)==12){do if((f[e>>2]|0)<=19){x=0;e=ia(84,134176,c|0)|0;c=x;x=0;if(((((!(c&1)?(x=0,i=ia(62,e|0,62543)|0,c=x,x=0,!(c&1)):0)?(j=f[a+32>>2]|0,Jbb(j)|0,x=0,j=ia(76,i|0,f[j>>2]|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,62558)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(76,k|0,f[d>>2]|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,62563)|0,l=x,x=0,!(l&1)):0){l=f[32998]|0;f[l>>2]=(f[l>>2]|0)+1;if((f[f[32998]>>2]|0)<=19)break;x=0;e=ia(62,134176,123274)|0;l=x;x=0;if((!(l&1)?(x=0,m=ia(77,e|0,f[f[32998]>>2]|0)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,62700)|0,m=x,x=0,!(m&1)):0)break}e=Ia()|0;break a}while(0);mJa(131964);u=n;return}while(0);mJa(131964);Ua(e|0)}function hp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121961);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=s8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)Cbb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if(!(g2a(f[h>>2]|0,f[g+8>>2]|0)|0)){m=31;break}i=g}if((m|0)==31)m=0;f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)Cbb(c);f[d>>2]=0}while(0);return}function ip(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;f[a>>2]=b;break a}case 10:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=0;break a}case 12:{d=(f[c>>2]|0)+(8-1)&~(8-1);b=d;e=f[b>>2]|0;b=f[b+4>>2]|0;f[c>>2]=d+8;d=a;f[d>>2]=e;f[d+4>>2]=b;break a}case 13:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&65535;f[e+4>>2]=0;break a}case 15:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&255)<<24>>24;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&255;f[e+4>>2]=0;break a}case 17:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}case 18:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}default:break a}while(0);while(0);return}function jp(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+4|0;h=l;a:do if(!(f[d+4>>2]&1)){j=f[(f[a>>2]|0)+24>>2]|0;f[h>>2]=f[c>>2];f[k>>2]=f[h>>2];a=hc[j&31](a,k,d,e,g&1)|0}else{dYa(k,d);x=0;a=ia(73,f[k>>2]|0,134896)|0;j=x;x=0;do if(!(j&1)){OCa(k);d=f[a>>2]|0;if(g)pc[f[d+24>>2]&4095](k,a);else pc[f[d+28>>2]&4095](k,a);i=k+11|0;a=b[i>>0]|0;d=f[k>>2]|0;j=k+4|0;g=a<<24>>24<0?d:k;while(1){h=a<<24>>24<0;if((g|0)==((h?d:k)+(h?f[j>>2]|0:a&255)|0)){d=9;break}a=b[g>>0]|0;d=f[c>>2]|0;if(d|0){e=d+24|0;h=f[e>>2]|0;if((h|0)==(f[d+28>>2]|0)){h=f[(f[d>>2]|0)+52>>2]|0;a=d7a(a)|0;x=0;a=ia(h|0,d|0,a|0)|0;h=x;x=0;if(h&1){d=18;break}}else{f[e>>2]=h+1;b[h>>0]=a;a=d7a(a)|0}if(g2a(a,-1)|0)f[c>>2]=0}g=g+1|0;a=b[i>>0]|0;d=f[k>>2]|0}if((d|0)==9){a=f[c>>2]|0;MTa(k);break a}else if((d|0)==18){a=Ia()|0;MTa(k);break}}else{a=Ia()|0;OCa(k)}while(0);Ua(a|0)}while(0);u=l;return a|0}function kp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=l$a(b)|0;a:do if(!c){d=d$a(b)|0;if(!d){c=v$a(b)|0;if(!c){c=Z$a(b)|0;if(!c)break;if((f[c+4>>2]|0)!=1)break;d=c+12|0;e=kp(a,f[d>>2]|0)|0;f[d>>2]=e;d=c+16|0;a=kp(a,f[d>>2]|0)|0;f[d>>2]=a;return b|0}else{if((f[c+4>>2]|0)!=1)break;d=c+12|0;if(!(Jbb(f[c+16>>2]|0)|0))break;e=RCa(d)|0;a=kp(a,f[e>>2]|0)|0;e=RCa(d)|0;f[e>>2]=a;return b|0}}else{switch(f[d+8>>2]|0){case 8:{e=d+12|0;c=kp(a,f[e>>2]|0)|0;f[e>>2]=c;e=d+16|0;c=kp(a,f[e>>2]|0)|0;f[e>>2]=c;break}case 16:{c=n$a(f[d+16>>2]|0)|0;if(c|0?(TRa(c+8|0)|0)==0:0){b=f[d+12>>2]|0;break a}break}default:{}}c=GQ(d)|0;if(!c)break;b=zR(a,c,_Ha(d)|0)|0;break}}else if(((f[c+8>>2]|0)==20?(d=l$a(f[c+12>>2]|0)|0,(d|0)!=0):0)?(f[d+8>>2]|0)==20:0)b=f[d+12>>2]|0;while(0);return b|0}function lp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;j=k+24|0;d=k;g=k+20|0;h=k+8|0;i=Tz(a)|0;f[g>>2]=i;f[j>>2]=f[g>>2];hUa(d,j,(b|0)!=0&(b|0)!=5&1);g=a+160|0;c=f[g>>2]|0;if(c>>>0<(f[a+164>>2]|0)>>>0){l=d;d=f[l+4>>2]|0;e=c;f[e>>2]=f[l>>2];f[e+4>>2]=d;f[g>>2]=(f[g>>2]|0)+8}else uF(a+156|0,d);e=a+188|0;l=a+192|0;d=(f[l>>2]|0)-(f[e>>2]|0)>>2;Cj(a);e=(f[l>>2]|0)-(f[e>>2]|0)>>2;do if(e>>>0>>0){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,97464,j7a(97464)|0);x=0;ua(1870,a|0,h|0);l=x;x=0;if(l&1){l=Ia()|0;MTa(h);Ua(l|0)}else{MTa(h);break}}while(0);f[g>>2]=(f[g>>2]|0)+-8;c=eSa(f[a+4>>2]|0)|0;hr(a,c,d,e);f[c+8>>2]=i;aKa(c,b);e=c+8|0;d=a+168|0;if((BB(d,e)|0)==0?(Bab(j),f[e>>2]=f[j>>2],(Jbb(f[c+16>>2]|0)|0)==1):0){c=ODa(c+12|0,0)|0;c=f[c>>2]|0}else b5(d,e);u=k;return c|0}function mp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;h=m+12|0;j=m+8|0;k=m;l=a+33|0;do if(!(b[l>>0]|0))d=c+4|0;else{e=DCa(xm(DCa(134176,110694)|0,c)|0,110709)|0;d=c+4|0;e=Am(e,f[d>>2]|0)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[h>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,i=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,n=x,x=0,!(n&1)):0){OCa(h);Wq(e,i)|0;fu(e)|0;break}n=Ia()|0;OCa(h);Ua(n|0)}while(0);switch(f[d>>2]|0){case 1:{n=Gv(f[a+28>>2]|0,65)|0;n4a(j,TRa(c+8|0)|0);Pr(n,f[j>>2]|0)|0;break}case 2:{j=Gv(f[a+28>>2]|0,66)|0;MXa(k,oJa(c+8|0)|0,I);n=k;xr(j,f[n>>2]|0,f[n+4>>2]|0)|0;break}case 3:{yp(Gv(f[a+28>>2]|0,67)|0,rQa(c+8|0)|0)|0;break}case 4:{n=Gv(f[a+28>>2]|0,68)|0;Dk(n,FHa(c+8|0)|0,I)|0;break}default:hb()}if(b[l>>0]|0)DCa(134176,87552)|0;u=m;return}function np(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+12|0;k=b+16|0;j=Jbb(f[k>>2]|0)|0;h=j+-1|0;i=b+4|0;m=a+44|0;e=0;g=0;while(1){if(g>>>0>=j>>>0){c=20;break}d=ODa(l,g)|0;d=f[d>>2]|0;if((g|0)==(h|0))c=v2a(f[i>>2]|0)|0;else c=0;c=pg(a,d,c)|0;if(c){if((c|0)!=(d|0)){AE(m,d,c);d=ODa(l,g)|0;f[d>>2]=c}if((e|0)>0){n=ODa(l,g)|0;n=f[n>>2]|0;d=g-e|0;c=ODa(l,d)|0;f[c>>2]=n;c=ODa(l,g)|0;f[c>>2]=0}else d=g-e|0;n=ODa(l,d)|0;if(g>>>0>>0?(f[(f[n>>2]|0)+4>>2]|0)==5:0){c=13;break}else c=e}else{Roa(m,d);c=e+1|0}e=c;g=g+1|0}if((c|0)==13){d=d+1|0;c=d;while(1){if(c>>>0>=(Jbb(f[k>>2]|0)|0)>>>0)break;e=ODa(l,c)|0;e=f[e>>2]|0;if(e|0)Roa(m,e);c=c+1|0}i7(l,d);r_(m,b)}else if((c|0)==20?(e|0)>0:0){i7(l,j-e|0);r_(m,b)}Pia(a,ut(b,a)|0)|0;return}function op(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+80|0;i=j+56|0;d=j+48|0;e=j+24|0;g=j;h=j+72|0;Ou(e,b,f[c+24>>2]|0);if(!(K0a(e)|0)){Ou(g,b,f[c+28>>2]|0);if(K0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{b=b+4|0;k=f[b>>2]|0;f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[i+12>>2]=f[e+12>>2];k=Du(k,c,i)|0;e=f[(f[b>>2]|0)+36>>2]|0;b=f[(f[e>>2]|0)+28>>2]|0;f[h>>2]=k;f[d>>2]=f[h>>2];f[i>>2]=f[g>>2];f[i+4>>2]=f[g+4>>2];f[i+8>>2]=f[g+8>>2];f[i+12>>2]=f[g+12>>2];rc[b&255](e,c,d,i);a1a(a)}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}u=j;return}function pp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+64|0;j=m+52|0;n=m+8|0;k=m+4|0;l=m;i=a+20|0;fZ(i);d=f[c+40>>2]|0;a=f[c+36>>2]|0;while(1){if((a|0)==(d|0))break;Wl(i,f[a>>2]|0)|0;a=a+4|0}rza(n,c);p4a(n);x=0;ua(2588,n|0,i|0);h=x;x=0;do if(!(h&1)?(x=0,ta(438,n|0),h=x,x=0,!(h&1)):0){e=f[c+28>>2]|0;d=f[c+24>>2]|0;while(1){if((d|0)==(e|0))break;a=f[d>>2]|0;if(!(f[a+8>>2]|0)){x=0;a=ia(188,i|0,a+4|0)|0;h=x;x=0;if(h&1){g=13;break}b[a+9>>0]=1}d=d+4|0}if((g|0)==13){a=Ia()|0;break}e=f[c+80>>2]|0;d=f[c+76>>2]|0;a:while(1){if((d|0)==(e|0)){g=16;break}g=f[d+8>>2]|0;a=f[d+4>>2]|0;while(1){if((a|0)==(g|0))break;h=f[a>>2]|0;f[k>>2]=h;f[l>>2]=h;f[j>>2]=f[l>>2];if(Xma(c,j)|0){x=0;h=ia(188,i|0,k|0)|0;o=x;x=0;if(o&1){g=23;break a}b[h+9>>0]=1}a=a+4|0}d=d+16|0}if((g|0)==16){Wca(n);u=m;return}else if((g|0)==23){a=Ia()|0;break}}else g=9;while(0);if((g|0)==9)a=Ia()|0;Wca(n);Ua(a|0)}function qp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+288|0;k=i+184|0;j=i+92|0;g=i;if(((b[a+24>>0]|0?(h=c+16|0,d=f[h>>2]|0,d|0):0)?(e=c+12|0,v2a(f[(f[e>>2]|0)+4>>2]|0)|0):0)?v2a(f[d+4>>2]|0)|0:0){d=a+28|0;c=c+8|0;gA(k,f[d>>2]|0,f[c>>2]|0);a:do if(!(qza(k)|0)){x=0;va(101,j|0,f[d>>2]|0,f[e>>2]|0);l=x;x=0;b:do if(l&1)d=Ia()|0;else{c:do if(!(qza(j)|0)){x=0;va(101,g|0,f[d>>2]|0,f[h>>2]|0);l=x;x=0;d:do if(l&1)d=Ia()|0;else{do if(!(qza(g)|0)){d=f[a+20>>2]|0;Jbb(d)|0;x=0;d=ga(240,d+144|0)|0;l=x;x=0;if(!(l&1)?(f[d+16>>2]=f[c>>2],f[d+8>>2]=f[e>>2],f[d+12>>2]=f[h>>2],x=0,ta(488,d|0),l=x,x=0,!(l&1)):0){GVa(f[a>>2]|0,d)|0;break}d=Ia()|0;_7(g);break d}while(0);_7(g);break c}while(0);_7(j);break b}while(0);_7(j);break a}while(0);_7(k);Ua(d|0)}while(0);_7(k)}u=i;return}function rp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;o=r+16|0;p=r+8|0;l=r+4|0;m=r;g=a+52|0;if(b[g>>0]|0){e=a+48|0;d=f[e>>2]|0;if(c){f[e>>2]=-1;b[g>>0]=0}}else{d=f[a+44>>2]|0;d=(d|0)>1?d:1;n=a+32|0;e=0;while(1){if(e>>>0>=d>>>0){q=8;break}g=rV(f[n>>2]|0)|0;if((g|0)==-1){d=-1;break}b[o+e>>0]=g;e=e+1|0}if((q|0)==8){do if(!(b[a+53>>0]|0)){i=a+40|0;j=a+36|0;k=p+4|0;a:while(1){s=f[i>>2]|0;g=s;e=f[g>>2]|0;g=f[g+4>>2]|0;t=f[j>>2]|0;h=o+d|0;switch(lc[f[(f[t>>2]|0)+16>>2]&15](t,s,o,h,l,p,k,m)|0){case 3:{q=14;break a}case 2:{q=16;break a}case 1:break;default:break a}t=f[i>>2]|0;f[t>>2]=e;f[t+4>>2]=g;if((d|0)==8){q=16;break}e=rV(f[n>>2]|0)|0;if((e|0)==-1){q=16;break}b[h>>0]=e;d=d+1|0}if((q|0)==14)f[p>>2]=b[o>>0];else if((q|0)==16){d=-1;break}q=18}else{f[p>>2]=b[o>>0];q=18}while(0);b:do if((q|0)==18){if(c){d=Jbb(f[p>>2]|0)|0;f[a+48>>2]=d;break}while(1){if((d|0)<=0)break;d=d+-1|0;t=Jbb(b[o+d>>0]|0)|0;if((s0(t,f[n>>2]|0)|0)==-1){d=-1;break b}}d=Jbb(f[p>>2]|0)|0}while(0)}}u=r;return d|0}function sp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;g=c+12|0;do if(b[g>>0]|0){h=DCa(134176,95315)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(i);Wq(h,e)|0;fu(h)|0;break}l=Ia()|0;OCa(i);Ua(l|0)}while(0);l=_p(c)|0;XSa(a,l,I);l=a+8|0;uGa(i,f[a>>2]|0,f[l>>2]|0,f[l+4>>2]|0);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];do if(b[g>>0]|0){c=DCa(134176,96709)|0;f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];a=DCa(NE(c,i)|0,95465)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,j=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,l=x,x=0,!(l&1)):0){OCa(i);Wq(a,j)|0;fu(a)|0;break}l=Ia()|0;OCa(i);Ua(l|0)}while(0);u=k;return}function tp(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+4|0;h=l;a:do if(!(f[d+4>>2]&1)){j=f[(f[a>>2]|0)+24>>2]|0;f[h>>2]=f[c>>2];f[k>>2]=f[h>>2];a=hc[j&31](a,k,d,e,g&1)|0}else{dYa(k,d);x=0;a=ia(73,f[k>>2]|0,134920)|0;j=x;x=0;do if(!(j&1)){OCa(k);d=f[a>>2]|0;if(g)pc[f[d+24>>2]&4095](k,a);else pc[f[d+28>>2]&4095](k,a);i=k+8+3|0;a=b[i>>0]|0;d=f[k>>2]|0;j=k+4|0;g=a<<24>>24<0?d:k;while(1){h=a<<24>>24<0;if((g|0)==((h?d:k)+((h?f[j>>2]|0:a&255)<<2)|0)){d=9;break}a=f[g>>2]|0;d=f[c>>2]|0;if(d|0){e=d+24|0;h=f[e>>2]|0;if((h|0)==(f[d+28>>2]|0)){h=f[(f[d>>2]|0)+52>>2]|0;a=Jbb(a)|0;x=0;a=ia(h|0,d|0,a|0)|0;h=x;x=0;if(h&1){d=18;break}}else{f[e>>2]=h+4;f[h>>2]=a;a=Jbb(a)|0}if($5a(a)|0)f[c>>2]=0}g=g+4|0;a=b[i>>0]|0;d=f[k>>2]|0}if((d|0)==9){a=f[c>>2]|0;oTa(k);break a}else if((d|0)==18){a=Ia()|0;oTa(k);break}}else{a=Ia()|0;OCa(k)}while(0);Ua(a|0)}while(0);u=l;return a|0}function up(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=f[b>>2]|0;k=b+4|0;e=f[k>>2]|0;l=((f[c>>2]|0)-n<<3)+(f[c+4>>2]|0)-e|0;c=n;if((l|0)>0){if(!e){k=d+4|0;j=b;n=d;m=k;g=c;c=f[k>>2]|0}else{i=32-e|0;j=(l|0)<(i|0)?l:i;i=-1>>>(i-j|0)&-1<>2];m=d+4|0;c=f[m>>2]|0;n=32-c|0;h=n>>>0>>0?n:j;g=f[d>>2]|0;f[g>>2]=f[g>>2]&~(-1>>>(n-h|0)&-1<>>0>e>>>0?i<>>(e-c|0));c=h+c|0;e=g+(c>>>5<<2)|0;f[d>>2]=e;c=c&31;f[m>>2]=c;g=j-h|0;if((g|0)>0){f[e>>2]=i>>>((f[k>>2]|0)+h|0)|f[e>>2]&~(-1>>>(32-g|0));f[m>>2]=g;c=g}g=(f[b>>2]|0)+4|0;f[b>>2]=g;l=l-j|0;j=b;n=d}k=32-c|0;b=-1<-32?i:-32)+32|0;e=l;while(1){if((e|0)<=31)break;p=f[g>>2]|0;o=f[n>>2]|0;f[o>>2]=f[o>>2]&h|p<>2]=o;f[o>>2]=f[o>>2]&b|p>>>k;o=(f[j>>2]|0)+4|0;f[j>>2]=o;e=e+-32|0;g=o}e=l-(i&-32)|0;if((e|0)>0){i=f[g>>2]&-1>>>(32-e|0);h=(k|0)<(e|0)?k:e;g=f[n>>2]|0;f[g>>2]=f[g>>2]&~(-1>>>(k-h|0)&b)|i<>>5<<2)|0;f[n>>2]=g;c=c&31;f[m>>2]=c;e=e-h|0;if((e|0)>0){f[g>>2]=f[g>>2]&~(-1>>>(32-e|0))|i>>>h;f[m>>2]=e;c=e}}}else c=f[d+4>>2]|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return}function vp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;i=m+24|0;h=m+8|0;j=m+20|0;k=m+16|0;l=m;do if(b[a+33>>0]|0){g=DCa(134176,110904)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,n=x,x=0,!(n&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}n=Ia()|0;OCa(i);Ua(n|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;n=QOa(i)|0;oGa(a,f[n>>2]|0);YYa(i)}oGa(a,f[c+28>>2]|0);d=a+28|0;n=Gv(f[d>>2]|0,17)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];n4a(j,k0(a,i)|0);n=Yr(n,f[j>>2]|0)|0;n4a(l,0);Yr(n,f[l>>2]|0)|0;if((f[c+4>>2]|0)==5)iTa(f[d>>2]|0);u=m;return}function wp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=a+4|0;g=b;do if((k|0)!=(b|0)?(j=f[e>>2]|0,h=f[b+16>>2]|0,!(PVa(j,h)|0)):0){if(!(PVa(h,j)|0)){f[c>>2]=g;f[d>>2]=g;b=d;break}i=1;h=g;while(1){if(!i)break;d=h;h=f[d+4>>2]|0;a:do if(!h)while(1){h=f[d+8>>2]|0;if((f[h>>2]|0)==(d|0))break a;d=h}else while(1){d=f[h>>2]|0;if(!d)break;else h=d}while(0);i=i+-1|0}d=h;if((k|0)!=(d|0)?!(PVa(j,f[h+16>>2]|0)|0):0){b=LD(a,c,e)|0;break}b=b+4|0;if(!(f[b>>2]|0)){f[c>>2]=g;break}else{f[c>>2]=d;b=d;break}}else l=3;while(0);do if((l|0)==3){d=f[b>>2]|0;if((f[a>>2]|0)!=(b|0)){if(!d){g=b;do{l=g;g=f[g+8>>2]|0}while((f[g>>2]|0)==(l|0))}else{g=d;while(1){h=f[g+4>>2]|0;if(!h)break;else g=h}}if(!(PVa(f[g+16>>2]|0,f[e>>2]|0)|0)){b=LD(a,c,e)|0;break}}if(!d){f[c>>2]=b;break}else{f[c>>2]=g;b=g+4|0;break}}while(0);return b|0}function xp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+24|0;h=i;a1a(g);d=f[c+12>>2]|0;if((d|0)!=0?(Ow(h,b,d),f[g>>2]=f[h>>2],f[g+4>>2]=f[h+4>>2],f[g+8>>2]=f[h+8>>2],f[g+12>>2]=f[h+12>>2],f[g+16>>2]=f[h+16>>2],K0a(g)|0):0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else e=4;a:do if((e|0)==4){d=f[c+16>>2]|0;do if(d|0){Ow(h,b,d);if(K0a(h)|0){f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2];break a}h=Jia(h)|0;if((h|0)==0&(I|0)==0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break a}else break}while(0);f[g+16>>2]=f[c+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}while(0);u=i;return}function yp(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do if(!(b[a+12>>0]|0))h=a+4|0;else{d=DCa(Am(DCa(134176,87302)|0,c)|0,87600)|0;h=a+4|0;d=DCa(zm(d,(f[h>>2]|0)-(f[a>>2]|0)|0)|0,123272)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(d,g)|0;fu(d)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);d=c&255;b[i>>0]=d;e=f[h>>2]|0;g=a+8|0;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;e=(f[h>>2]|0)+1|0;f[h>>2]=e}else{ZL(a,i);e=f[h>>2]|0}d=c>>>8&255;b[i>>0]=d;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;e=(f[h>>2]|0)+1|0;f[h>>2]=e}else{ZL(a,i);e=f[h>>2]|0}d=c>>>16&255;b[i>>0]=d;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;e=(f[h>>2]|0)+1|0;f[h>>2]=e}else{ZL(a,i);e=f[h>>2]|0}d=c>>>24&255;b[i>>0]=d;if(e>>>0<(f[g>>2]|0)>>>0){b[e>>0]=d;f[h>>2]=(f[h>>2]|0)+1}else ZL(a,i);u=j;return a|0}function zp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+48|0;g=i+24|0;h=i+12|0;j=i;a:do if(((a|0)!=(c|0)?(b[a>>0]|0)==46:0)?(e=d+4|0,(f[d>>2]|0)!=(f[e>>2]|0)):0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;UM(j,a,c);x=0;ja(101,j|0,0,123269)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,h|0,123272)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}d=b[g+11>>0]|0;a=d<<24>>24<0;x=0;ja(97,(f[e>>2]|0)+-24|0,(a?f[g>>2]|0:g)|0,(a?f[g+4>>2]|0:d&255)|0)|0;e=x;x=0;if(e&1){a=Ia()|0;MTa(g);break}else{MTa(g);MTa(h);MTa(j);a=c;break a}}else a=Ia()|0;while(0);MTa(h)}MTa(j);Ua(a|0)}while(0);u=i;return a|0}function Ap(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;j=l+32|0;e=l;g=l+8|0;h=a+12|0;do if(b[h>>0]|0){i=DCa(134176,95315)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(i,d)|0;fu(i)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);IOa(g,a);x=0;ua(1889,e|0,g|0);m=x;x=0;if(m&1){m=Ia()|0;xta(g);Ua(m|0)}xta(g);do if(!(b[h>>0]|0)){a=e;c=f[a+4>>2]|0;a=f[a>>2]|0}else{d=DCa(134176,96772)|0;c=e;a=f[c>>2]|0;c=f[c+4>>2]|0;d=DCa(tm(d,a,c)|0,95465)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,k=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(d,k)|0;fu(d)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);I=c;u=l;return a|0}function Bp(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;m=o;c=d;while(1){if((c|0)==(e|0)){c=e;break}if(!(f[c>>2]|0))break;c=c+4|0}f[j>>2]=h;f[g>>2]=d;l=i;n=a+8|0;a:while(1){if((h|0)==(i|0)|(d|0)==(e|0)){p=35;break}a=pRa(f[n>>2]|0)|0;k=Au(h,g,c-d>>2,l-h|0)|0;if(a|0)pRa(a)|0;switch(k|0){case -1:{p=10;break a}case 0:{d=1;break a}default:{}}h=(f[j>>2]|0)+k|0;f[j>>2]=h;if((h|0)==(i|0)){p=33;break}if((c|0)==(e|0)){c=e;d=f[g>>2]|0}else{h=pRa(f[n>>2]|0)|0;d=_F(m,0)|0;if(h|0)pRa(h)|0;if((d|0)==-1){d=2;p=32;break}if(d>>>0>(l-(f[j>>2]|0)|0)>>>0){d=1;p=32;break}h=m;while(1){if(!d)break;a=b[h>>0]|0;k=f[j>>2]|0;f[j>>2]=k+1;b[k>>0]=a;h=h+1|0;d=d+-1|0}d=(f[g>>2]|0)+4|0;f[g>>2]=d;c=d;while(1){if((c|0)==(e|0)){c=e;break}if(!(f[c>>2]|0))break;c=c+4|0}h=f[j>>2]|0}}if((p|0)==10){f[j>>2]=h;while(1){if((d|0)==(f[g>>2]|0))break;e=f[d>>2]|0;c=pRa(f[n>>2]|0)|0;h=_F(h,e)|0;if(c|0)pRa(c)|0;if((h|0)==-1)break;h=(f[j>>2]|0)+h|0;f[j>>2]=h;d=d+4|0}f[g>>2]=d;d=2}else if((p|0)!=32)if((p|0)==33){d=f[g>>2]|0;p=35}if((p|0)==35)d=(d|0)!=(e|0)&1;u=o;return d|0}function Cp(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=u;u=u+64|0;c=e+36|0;d=e+40|0;g=e+24|0;i=e+12|0;h=e;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,89160,j7a(89160)|0);x=0;ua(1283,h|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[h+11>>0]|0;j=a<<24>>24<0;x=0;ja(49,i|0,(j?f[h>>2]|0:h)|0,(j?f[h+4>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,g|0,89167)|0;j=x;x=0;do if(!(j&1)){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);j=x;x=0;if(j&1){a=Ia()|0;MTa(d);break}else{MTa(d);MTa(g);MTa(h);MTa(i);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);MTa(g)}MTa(h)}MTa(i);Ua(a|0);return 0}function Dp(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=u;u=u+64|0;c=e+36|0;d=e+40|0;g=e+24|0;i=e+12|0;h=e;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,89079,j7a(89079)|0);x=0;ua(1283,h|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[h+11>>0]|0;j=a<<24>>24<0;x=0;ja(49,i|0,(j?f[h>>2]|0:h)|0,(j?f[h+4>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,g|0,89086)|0;j=x;x=0;do if(!(j&1)){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);j=x;x=0;if(j&1){a=Ia()|0;MTa(d);break}else{MTa(d);MTa(g);MTa(h);MTa(i);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);MTa(g)}MTa(h)}MTa(i);Ua(a|0);return 0}function Ep(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;c=k;a:do if((b|0)!=(a|0)){i=a+16|0;h=f[i>>2]|0;g=h;j=b+16|0;do if((h|0)!=(a|0)){d=f[j>>2]|0;if((b|0)!=(d|0)){f[i>>2]=d;f[j>>2]=g;break a}h=f[(f[d>>2]|0)+12>>2]|0;c=Jbb(a)|0;x=0;ua(h|0,d|0,c|0);h=x;x=0;if(!(h&1)){h=f[j>>2]|0;oc[f[(f[h>>2]|0)+16>>2]&1023](h);f[j>>2]=f[i>>2];f[i>>2]=c;break a}}else{if((f[j>>2]|0)!=(b|0)){g=f[(f[h>>2]|0)+12>>2]|0;c=Jbb(b)|0;x=0;ua(g|0,h|0,c|0);h=x;x=0;if(h&1)break;h=f[i>>2]|0;oc[f[(f[h>>2]|0)+16>>2]&1023](h);f[i>>2]=f[j>>2];f[j>>2]=c;break a}c=Jbb(c)|0;x=0;ua(f[(f[h>>2]|0)+12>>2]|0,h|0,c|0);g=x;x=0;if((!(g&1)?(g=f[i>>2]|0,oc[f[(f[g>>2]|0)+16>>2]&1023](g),f[i>>2]=0,g=f[j>>2]|0,a=f[(f[g>>2]|0)+12>>2]|0,d=Jbb(h)|0,x=0,ua(a|0,g|0,d|0),h=x,x=0,!(h&1)):0)?(e=f[j>>2]|0,oc[f[(f[e>>2]|0)+16>>2]&1023](e),f[j>>2]=0,f[i>>2]=d,i=f[(f[c>>2]|0)+12>>2]|0,e=Jbb(b)|0,x=0,ua(i|0,c|0,e|0),i=x,x=0,!(i&1)):0){oc[f[(f[c>>2]|0)+16>>2]&1023](c);f[j>>2]=e;break a}j=Ja(0)|0;y2a(j)}while(0);j=Ja(0)|0;y2a(j)}while(0);u=k;return}function Fp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+160|0;o=q+16|0;n=q;a:do if((b|0)==5|(b|0)==(c|0))h=1;else{i=o+56|0;j=o+4|0;f[o>>2]=33420;f[i>>2]=33440;Laa(o+56|0,j);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=o+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;h=ia(77,o|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(121,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(o);h=0;break a}}else p=13;while(0);if((p|0)==13)h=Ia()|0;OGa(o);Ua(h|0)}while(0);u=q;return h|0}function Gp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;a:do switch(b-a>>2|0){case 1:case 0:{c=1;break}case 2:{c=b+-4|0;d=f[c>>2]|0;e=f[a>>2]|0;if($Pa(d,e)|0){f[a>>2]=d;f[c>>2]=e;c=1}else c=1;break}case 3:{Ry(a,a+4|0,b+-4|0)|0;c=1;break}case 4:{$B(a,a+4|0,a+8|0,b+-4|0)|0;c=1;break}case 5:{vx(a,a+4|0,a+8|0,a+12|0,b+-4|0)|0;c=1;break}default:{d=a+8|0;Ry(a,a+4|0,d)|0;i=a+12|0;c=0;while(1){if((i|0)==(b|0)){c=1;break a}g=f[i>>2]|0;h=g;if($Pa(g,f[d>>2]|0)|0){e=i;while(1){f[e>>2]=f[d>>2];if((d|0)==(a|0)){d=a;break}e=d+-4|0;if($Pa(g,f[e>>2]|0)|0){j=d;d=e;e=j}else break}f[d>>2]=h;c=c+1|0;if((c|0)==8)break}d=i;i=i+4|0}c=(i+4|0)==(b|0)}}while(0);return c|0}function Hp(){Kab();wab();vab();uab();q9a();a9a();pab();nab();lab();jab();hab();fab();dab();bab();$9a();Z9a();X9a();V9a();T9a();R9a();P9a();N9a();M9a();K9a();I9a();H9a();F9a();D9a();C9a();B9a();A9a();y9a();w9a();v9a();t9a();r9a();o9a();m9a();k9a();i9a();g9a();f9a();e9a();d9a();c9a();b9a();$8a();_8a();Z8a();Y8a();X8a();S8a();R8a();Q8a();P8a();O8a();N8a();M8a();L8a();K8a();J8a();d8a();c8a();I8a();H8a();G8a();F8a();E8a();D8a();a8a();C8a();B8a();A8a();z8a();y8a();x8a();w8a();v8a();u8a();t8a();s8a();r8a();q8a();o2a();return}function Ip(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121961);a=x;x=0;if(a&1){a=Ia()|0;La(c|0);Ua(a|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}l=s8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=l;if(c|0)Cbb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;c=f[e>>2]|0;if(c|0){d=f[c+4>>2]|0;k=b+-1|0;l=(k&b|0)==0;if(!l){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&k;f[(f[a>>2]|0)+(d<<2)>>2]=e;while(1){j=c;b:while(1){while(1){c=f[j>>2]|0;if(!c)break a;e=f[c+4>>2]|0;if(!l){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&k;if((e|0)==(d|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;h=c+8|0;i=c;while(1){g=f[i>>2]|0;if(!g){g=0;break}if((f[h>>2]|0)==(f[g+8>>2]|0))i=g;else break}f[j>>2]=g;f[i>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=c}j=c}f[g>>2]=j;d=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)Cbb(c);f[d>>2]=0}while(0);return}function Jp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k+12|0;j=k;switch(d<<24>>24){case 63:{g=rSa(f[a+4>>2]|0)|0;f[g+8>>2]=1;f[g+4>>2]=1;e=4;break}case 64:{g=rSa(f[a+4>>2]|0)|0;f[g+8>>2]=2;e=g+16|0;i7(e,1);d=dk(a)|0;e=ODa(e,0)|0;f[e>>2]=d;e=4;break}default:d=0}if((e|0)==4){do if(b[a+12>>0]|0){d=DCa(134176,110603)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(h);Wq(d,i)|0;fu(d)|0;break}l=Ia()|0;OCa(h);Ua(l|0)}while(0);do if(nq(a)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,96549,j7a(96549)|0);x=0;ua(1870,a|0,j|0);l=x;x=0;if(l&1){l=Ia()|0;MTa(j);Ua(l|0)}else{MTa(j);break}}while(0);r1(g);f[c>>2]=g;d=1}u=k;return d|0}function Kp(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+64|0;j=n+40|0;k=n+12|0;l=n+24|0;m=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==90:0)?(e=a+2|0,(b[e>>0]|0)==102):0)?(h=vi(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,(f[d>>2]|0)!=(g|0)):0){hY(m,g+-24|0);x=0;ja(101,m|0,0,123485)|0;g=x;x=0;do if(g&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,l|0,123272)|0;g=x;x=0;if(g&1){a=Ia()|0;MTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}RY(j,k);uA((f[i>>2]|0)+-24|0,j);OJa(j);MTa(k);MTa(l);MTa(m);a=h;break a}while(0);MTa(m);Ua(a|0)}while(0);u=n;return a|0}function Lp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;h=n+152|0;o=n+16|0;l=n+4|0;m=n;a:do if((b|0)==2){e=o+56|0;g=o+4|0;f[o>>2]=33420;f[e>>2]=33440;Laa(o+56|0,g);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[e>>2]=41776;Xra(g);f[g>>2]=39940;e=o+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;b=ia(77,o|0,2)|0;e=x;x=0;do if(((((!(e&1)?(x=0,i=ia(62,b|0,82031)|0,e=x,x=0,!(e&1)):0)?(x=0,j=ia(77,i|0,2)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,d|0)|0,d=x,x=0,!(d&1)):0)?(x=0,ua(107,l|0,g|0),d=x,x=0,!(d&1)):0){f[m>>2]=f[c>>2];x=0;f[h>>2]=f[m>>2];wa(103,a|0,l|0,h|0,0);m=x;x=0;if(m&1){b=Ia()|0;MTa(l);break}else{MTa(l);OGa(o);break a}}else p=13;while(0);if((p|0)==13)b=Ia()|0;OGa(o);Ua(b|0)}while(0);u=n;return}function Mp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;cz(c);b=f[b>>2]|0;do if(!(g2a(b,f[33226]|0)|0)){if(g2a(b,f[33292]|0)|0){e=Tu(a,c)|0;break}if(g2a(b,f[33291]|0)|0){e=Tu(a,c)|0;break}if(g2a(b,f[33288]|0)|0){e=OH(a,c,d)|0;break}if(g2a(b,f[33287]|0)|0){e=mD(a,c,d)|0;break}if(g2a(b,f[33284]|0)|0){e=yM(a,c,d)|0;break}if(g2a(b,f[33285]|0)|0){e=Qfa(a,c,d)|0;break}if(g2a(b,f[33278]|0)|0){e=sV(c)|0;break}if(g2a(b,f[33277]|0)|0){e=XU(c)|0;break}if(g2a(b,f[33276]|0)|0){e=Ki(a,c)|0;break}if(g2a(b,f[33214]|0)|0){e=JBa(a,c,d)|0;break}if(g2a(b,f[33283]|0)|0){e=Ay(a,c,d)|0;break}else{CX(b,f[c>>2]|0);hb()}}else e=Er(a,c)|0;while(0);return e|0}function Np(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+160|0;n=p+16|0;m=p;a:do if((b|0)==5|(b|0)==(c|0))g=1;else{h=n+56|0;i=n+4|0;f[n>>2]=33420;f[h>>2]=33440;Laa(n+56|0,i);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[h>>2]=41776;Xra(i);f[i>>2]=39940;h=n+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;g=ia(77,n|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122322)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84953)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(122,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;MTa(m);break}else{MTa(m);OGa(n);g=0;break a}}else o=13;while(0);if((o|0)==13)g=Ia()|0;OGa(n);Ua(g|0)}while(0);u=p;return g|0}function Op(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;g=i+12|0;h=i;e=f[a>>2]|0;a:do switch(b[e>>0]|0){case 56:{c=1;d=1;j=16;break}case 49:{if((b[e+1>>0]|0)==54){c=2;d=2;j=16}else{a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;j=j7a(93349)|0;x=0;va(87,g|0,93349,j|0);j=x;x=0;if(!(j&1)){x=0;ua(261,a|0,g|0);j=x;x=0;if(j&1)d=1;else{x=0;va(98,a|0,32200,457);x=0;d=0}c=Ia()|0;MTa(g);if(!d){j=18;break a}}else c=Ia()|0;La(a|0);j=18}break}case 51:{if((b[e+1>>0]|0)==50){c=4;d=2;j=16}else{a=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;j=j7a(93376)|0;x=0;va(87,h|0,93376,j|0);j=x;x=0;if(!(j&1)){x=0;ua(261,a|0,h|0);j=x;x=0;if(j&1)d=1;else{x=0;va(98,a|0,32200,457);x=0;d=0}c=Ia()|0;MTa(h);if(!d){j=18;break a}}else c=Ia()|0;La(a|0);j=18}break}default:{}}while(0);if((j|0)==16)f[a>>2]=e+d;else if((j|0)==18)Ua(c|0);u=i;return c|0}function Pp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+160|0;n=p+16|0;m=p;a:do if((b|0)==5|(b|0)==(c|0))g=1;else{h=n+56|0;i=n+4|0;f[n>>2]=33420;f[h>>2]=33440;Laa(n+56|0,i);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[h>>2]=41776;Xra(i);f[i>>2]=39940;h=n+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;g=ia(77,n|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122322)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84953)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(123,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;MTa(m);break}else{MTa(m);OGa(n);g=0;break a}}else o=13;while(0);if((o|0)==13)g=Ia()|0;OGa(n);Ua(g|0)}while(0);u=p;return g|0}function Qp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+160|0;o=q+16|0;n=q;a:do if((b|0)==(c|0))h=1;else{i=o+56|0;j=o+4|0;f[o>>2]=33420;f[i>>2]=33440;Laa(o+56|0,j);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=o+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;h=ia(77,o|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(102,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(o);h=0;break a}}else p=13;while(0);if((p|0)==13)h=Ia()|0;OGa(o);Ua(h|0)}while(0);u=q;return h|0}function Rp(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=b+8|0;switch(f[e>>2]|0){case 45:case 20:case 44:case 19:case 43:case 18:case 42:case 17:case 41:case 16:case 40:case 15:case 39:case 14:case 38:case 13:case 37:case 12:case 36:case 11:case 35:case 10:case 34:case 9:case 33:case 8:case 32:case 7:case 31:case 6:case 30:case 5:case 29:case 4:case 28:case 3:case 27:case 2:case 26:case 1:case 25:case 0:{d=wga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(Aab(f[d>>2]|0)|0)){c=wga(a,Lk(a,f[b+16>>2]|0)|0,b)|0;if(!(Aab(f[c>>2]|0)|0)){b=iIa(b,b)|0;a=RK(a,b)|0;n6(a,d);n6(a,c);c=b}}else c=d;break}case 49:case 24:case 47:case 22:case 48:case 23:case 46:case 21:{_0a(d,f[a+120>>2]|0);switch(f[e>>2]|0){case 21:{c=19;break}case 46:{c=44;break}case 23:{c=17;break}case 48:{c=42;break}case 22:{c=20;break}case 47:{c=45;break}case 24:{c=18;break}case 49:{c=43;break}default:hb()}c=ZOa(a,Kpa(f[d>>2]|0,c,f[b+16>>2]|0,f[b+12>>2]|0)|0)|0;f[c+8>>2]=b;break}default:c=Vxa(a,f[b+4>>2]|0)|0}u=g;return c|0}function Sp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(113,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function Tp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(112,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function Up(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;g=a+12|0;do if(b[g>>0]|0){e=DCa(134176,95315)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){OCa(h);Wq(e,d)|0;fu(e)|0;break}k=Ia()|0;OCa(h);Ua(k|0)}while(0);d=Fr(a)|0;d=(((Fr(a)|0)&255)<<8|d&255)&65535;do if(b[g>>0]|0){a=DCa(vm(DCa(134176,96748)|0,d)|0,96733)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|8;a=vm(a,d)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|2;a=DCa(a,95465)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){OCa(h);Wq(a,i)|0;fu(a)|0;break}k=Ia()|0;OCa(h);Ua(k|0)}while(0);u=j;return d|0}function Vp(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;g=a+12|0;do if(b[g>>0]|0){e=DCa(134176,95315)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){OCa(h);Wq(e,d)|0;fu(e)|0;break}k=Ia()|0;OCa(h);Ua(k|0)}while(0);d=(Up(a)|0)&65535;d=((Up(a)|0)&65535)<<16|d;do if(b[g>>0]|0){a=DCa(zm(DCa(134176,96737)|0,d)|0,96733)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|8;a=zm(a,d)|0;c=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|2;a=DCa(a,95465)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){OCa(h);Wq(a,i)|0;fu(a)|0;break}k=Ia()|0;OCa(h);Ua(k|0)}while(0);u=j;return d|0}function Wp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(114,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function Xp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(109,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function Yp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(115,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function Zp(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if(!((b|0)==5|(b|0)==(c|0))){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(127,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function _p(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;h=a+12|0;do if(b[h>>0]|0){e=DCa(134176,95315)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[i>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,g=x,x=0,!(g&1)):0){OCa(i);Wq(e,d)|0;fu(e)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);g=Vp(a)|0;e=Vp(a)|0;do if(b[h>>0]|0){c=DCa(sm(DCa(134176,96722)|0,g,e)|0,96733)|0;d=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[d>>2]=f[d>>2]&-75|8;c=sm(c,g,e)|0;d=134176+(f[(f[33544]|0)+-12>>2]|0)+4|0;f[d>>2]=f[d>>2]&-75|2;c=DCa(c,95465)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,j=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,h=x,x=0,!(h&1)):0){OCa(i);Wq(c,j)|0;fu(c)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);I=e;u=k;return g|0}function $p(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;g=n+48|0;j=n+44|0;o=n+4|0;k=n+40|0;e=n;p=a+84|0;l=f[p>>2]|0;f[p>>2]=l+1;p=$Fa(f[c+8>>2]|0)|0;h=a+36|0;d=f[h>>2]|0;Jbb(d)|0;_0a(j,d);d=Lt(l)|0;l=Kt(l)|0;m=f[c+16>>2]|0;AKa(o);f[o+24>>2]=f[a+80>>2];f[o+28>>2]=p;f[o+32>>2]=d;fXa(o,Jbb(f[h>>2]|0)|0);x=0;ua(1928,o|0,b|0);h=x;x=0;do if(h&1)d=Ia()|0;else{h=f[b>>2]|0;f[k>>2]=d;f[e>>2]=l;x=0;f[g>>2]=f[e>>2];d=ka(12,j|0,g|0,0,0)|0;p=x;x=0;if(!(p&1)?(x=0,f[g>>2]=f[k>>2],i=ka(11,j|0,h|0,g|0,d|0)|0,p=x,x=0,!(p&1)):0){x=0;d=ja(51,j|0,i|0,f[c+12>>2]|0)|0;p=x;x=0;do if(!(p&1)){f[d+8>>2]=l;f[b>>2]=d;if(m|0){x=0;d=ga(260,m|0)|0;p=x;x=0;if(p&1)break;x=0;va(153,a|0,b|0,d|0);p=x;x=0;if(p&1)break}P_a(o);u=n;return}while(0);d=Ia()|0;break}d=Ia()|0}while(0);P_a(o);Ua(d|0)}function aq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;g=c+12|0;do if(b[g>>0]|0){h=DCa(134176,95315)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(i);Wq(h,e)|0;fu(h)|0;break}l=Ia()|0;OCa(i);Ua(l|0)}while(0);t$a(a,Vp(c)|0);QHa(i,a);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];do if(b[g>>0]|0){c=DCa(134176,96759)|0;f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];a=DCa(NE(c,i)|0,95465)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,j=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,l=x,x=0,!(l&1)):0){OCa(i);Wq(a,j)|0;fu(a)|0;break}l=Ia()|0;OCa(i);Ua(l|0)}while(0);u=k;return}function bq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;m=n;a:do if(!((b|0)==5|(b|0)==(c|0))){h=o+56|0;i=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,i);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(i);f[i>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122322)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84529)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(117,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;MTa(m);break}else{MTa(m);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function cq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;m=n;a:do if(!((b|0)==5|(b|0)==(c|0))){h=o+56|0;i=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,i);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(i);f[i>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,c|0)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122322)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,84634)|0,l=x,x=0,!(l&1)):0)?(x=0,ua(107,m|0,i|0),l=x,x=0,!(l&1)):0){x=0;wa(119,a|0,m|0,d|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;MTa(m);break}else{MTa(m);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function dq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;g=m+20|0;e=m+16|0;h=m+12|0;i=m+8|0;d=m+24|0;j=m+4|0;k=m;x=0;va(150,d|0,a|0,0);n=x;x=0;a:do if(n&1){d=Ja(0)|0;e=a;g=a;l=12}else b:do if(b[d>>0]|0){f[j>>2]=0;dYa(k,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134904)|0;n=x;x=0;do if(!(n&1)?(n=a+(f[(f[a>>2]|0)+-12>>2]|0)|0,o=f[(f[d>>2]|0)+36>>2]|0,f[h>>2]=f[n+24>>2],f[i>>2]=0,x=0,f[e>>2]=f[h>>2],f[g>>2]=f[i>>2],oa(o|0,d|0,e|0,g|0,n|0,j|0,c|0)|0,n=x,x=0,!(n&1)):0){OCa(k);o=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,o|0,f[o+16>>2]|f[j>>2]|0);o=x;x=0;if(o&1){d=Ja(0)|0;break}else break b}else l=8;while(0);if((l|0)==8){d=Ja(0)|0;OCa(k)}e=a;g=a;l=12;break a}while(0);while(0);do if((l|0)==12){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);o=x;x=0;if(!(o&1)){Ga();break}d=Ia()|0;x=0;sa(6);o=x;x=0;if(o&1){o=Ja(0)|0;y2a(o)}else Ua(d|0)}while(0);u=m;return a|0}function eq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+32|0;g=m+20|0;e=m+16|0;h=m+12|0;i=m+8|0;d=m+24|0;j=m+4|0;k=m;x=0;va(150,d|0,a|0,0);n=x;x=0;a:do if(n&1){d=Ja(0)|0;e=a;g=a;l=12}else b:do if(b[d>>0]|0){f[j>>2]=0;dYa(k,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134904)|0;n=x;x=0;do if(!(n&1)?(n=a+(f[(f[a>>2]|0)+-12>>2]|0)|0,o=f[(f[d>>2]|0)+28>>2]|0,f[h>>2]=f[n+24>>2],f[i>>2]=0,x=0,f[e>>2]=f[h>>2],f[g>>2]=f[i>>2],oa(o|0,d|0,e|0,g|0,n|0,j|0,c|0)|0,n=x,x=0,!(n&1)):0){OCa(k);o=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,o|0,f[o+16>>2]|f[j>>2]|0);o=x;x=0;if(o&1){d=Ja(0)|0;break}else break b}else l=8;while(0);if((l|0)==8){d=Ja(0)|0;OCa(k)}e=a;g=a;l=12;break a}while(0);while(0);do if((l|0)==12){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);o=x;x=0;if(!(o&1)){Ga();break}d=Ia()|0;x=0;sa(6);o=x;x=0;if(o&1){o=Ja(0)|0;y2a(o)}else Ua(d|0)}while(0);u=m;return a|0}function fq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;i=m+40|0;j=m+12|0;k=m+24|0;l=m;a:do if(((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==122:0)?(n=a+2|0,g=Bc(n,c,d)|0,(g|0)!=(n|0)):0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){hY(l,e+-24|0);x=0;ja(101,l|0,0,123499)|0;n=x;x=0;do if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,k|0,123272)|0;n=x;x=0;if(n&1){a=Ia()|0;MTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}RY(i,j);uA((f[h>>2]|0)+-24|0,i);OJa(i);MTa(j);MTa(k);MTa(l);a=g;break a}while(0);MTa(l);Ua(a|0)}while(0);u=m;return a|0}function gq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,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=u;u=u+64|0;g=o+32|0;p=o+48|0;c=o+16|0;m=o;a:do if((f[b+4>>2]|0)==2){oD(p,a,1);n=a+44|0;d=f[n>>2]|0;e=b+8|0;x=0;b=ga(321,e|0)|0;r=x;x=0;do if(!(r&1)?(t$a(c,b),x=0,f[g>>2]=f[c>>2],f[g+4>>2]=f[c+4>>2],f[g+8>>2]=f[c+8>>2],f[g+12>>2]=f[c+12>>2],h=ia(50,d|0,g|0)|0,r=x,x=0,!(r&1)):0){b=f[n>>2]|0;x=0;c=ga(320,p|0)|0;r=x;x=0;if(((!(r&1)?(i=f[n>>2]|0,x=0,ga(321,e|0)|0,j=I,r=x,x=0,!(r&1)):0)?(t$a(m,j),x=0,f[g>>2]=f[m>>2],f[g+4>>2]=f[m+4>>2],f[g+8>>2]=f[m+8>>2],f[g+12>>2]=f[m+12>>2],k=ia(50,i|0,g|0)|0,r=x,x=0,!(r&1)):0)?(x=0,l=ja(45,b|0,c|0,k|0)|0,r=x,x=0,!(r&1)):0){x=0;b=ja(70,f[n>>2]|0,l|0,h|0)|0;r=x;x=0;if(!(r&1)?(x=0,va(161,a|0,b|0,p|0),r=x,x=0,!(r&1)):0){GVa(f[a+16>>2]|0,b)|0;MCa(p);break a}b=Ia()|0;break}b=Ia()|0}else q=12;while(0);if((q|0)==12)b=Ia()|0;MCa(p);Ua(b|0)}while(0);u=o;return}function hq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;i=m+40|0;j=m+12|0;k=m+24|0;l=m;a:do if(((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==116:0)?(n=a+2|0,g=Cc(n,c,d)|0,(g|0)!=(n|0)):0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){hY(l,e+-24|0);x=0;ja(101,l|0,0,123499)|0;n=x;x=0;do if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,k|0,123272)|0;n=x;x=0;if(n&1){a=Ia()|0;MTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}RY(i,j);uA((f[h>>2]|0)+-24|0,i);OJa(i);MTa(j);MTa(k);MTa(l);a=g;break a}while(0);MTa(l);Ua(a|0)}while(0);u=m;return a|0}function iq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+32|0;o=l+16|0;m=l;UN(o,a,f[b+12>>2]|0);x=0;va(159,m|0,a|0,1);k=x;x=0;if(k&1)c=Ia()|0;else{f[b+4>>2]=1;k=a+44|0;c=f[k>>2]|0;x=0;d=ga(320,m|0)|0;e=x;x=0;do if(!(e&1)?(x=0,h=ja(45,c|0,d|0,b|0)|0,e=x,x=0,!(e&1)):0){e=f[k>>2]|0;c=(f[b+8>>2]|0)+1|0;x=0;d=ga(320,o|0)|0;b=x;x=0;if((!(b&1)?(x=0,g=ja(46,f[e>>2]|0,d|0,1)|0,b=x,x=0,!(b&1)):0)?(x=0,i=ja(45,e|0,c|0,g|0)|0,g=x,x=0,!(g&1)):0){c=f[k>>2]|0;x=0;d=ga(320,m|0)|0;g=x;x=0;if(!(g&1)?(x=0,j=ja(46,f[c>>2]|0,d|0,1)|0,g=x,x=0,!(g&1)):0){x=0;c=ka(21,f[k>>2]|0,h|0,i|0,j|0)|0;k=x;x=0;if(!(k&1)?(GVa(f[a+16>>2]|0,c)|0,x=0,va(161,a|0,c|0,o|0),a=x,x=0,!(a&1)):0){MCa(m);MCa(o);u=l;return}c=Ia()|0;break}c=Ia()|0;break}c=Ia()|0}else n=13;while(0);if((n|0)==13)c=Ia()|0;MCa(m)}MCa(o);Ua(c|0)}function jq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;i=j+24|0;d=j;a1a(a);EXa(i);e=f[c+32>>2]|0;if(e){Ou(d,b,e);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];if(!(K0a(a)|0)){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];h=a;g=5}}else{h=a;g=5}if((g|0)==5?(Ou(d,b,f[c+28>>2]|0),f[h>>2]=f[d>>2],f[h+4>>2]=f[d+4>>2],f[h+8>>2]=f[d+8>>2],f[h+12>>2]=f[d+12>>2],f[h+16>>2]=f[d+16>>2],!(K0a(a)|0)):0){d=Jia(a)|0;g=I;b=f[c+24>>2]|0;if((g|0)>-1|(g|0)==-1&d>>>0>4294967295?(Jbb(f[c+12>>2]|0)|0)>>>0>d>>>0:0){b=ODa(c+8|0,d)|0;b=f[b>>2]|0}f[a+16>>2]=b;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2]}u=j;return}function kq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if((b|0)!=(c|0)){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(110,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function lq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if((b|0)!=(c|0)){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(128,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function mq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=a+4|0;g=b;do if((j|0)!=(b|0)?(h=f[b+16>>2]|0,h>>>0<=e>>>0):0){if(h>>>0>=e>>>0){f[c>>2]=g;f[d>>2]=g;b=d;break}i=1;d=g;while(1){if(!i)break;h=d;d=f[h+4>>2]|0;a:do if(!d)while(1){d=f[h+8>>2]|0;if((f[d>>2]|0)==(h|0))break a;h=d}else while(1){h=f[d>>2]|0;if(!h)break;else d=h}while(0);i=i+-1|0}h=d;if((j|0)!=(h|0)?(f[d+16>>2]|0)>>>0<=e>>>0:0){b=BF(a,c,e)|0;break}b=b+4|0;if(!(f[b>>2]|0)){f[c>>2]=g;break}else{f[c>>2]=h;b=h;break}}else k=3;while(0);do if((k|0)==3){h=f[b>>2]|0;if((f[a>>2]|0)!=(b|0)){if(!h){g=b;do{k=g;g=f[g+8>>2]|0}while((f[g>>2]|0)==(k|0))}else{g=h;while(1){d=f[g+4>>2]|0;if(!d)break;else g=d}}if((f[g+16>>2]|0)>>>0>=e>>>0){b=BF(a,c,e)|0;break}}if(!h){f[c>>2]=b;break}else{f[c>>2]=g;b=g+4|0;break}}while(0);return b|0}function nq(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;j=l+28|0;e=l+24|0;g=l;h=a+12|0;do if(b[h>>0]|0){i=DCa(134176,95315)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(i,d)|0;fu(i)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);HOa(g,a);x=0;ua(1884,e|0,g|0);m=x;x=0;if(m&1){m=Ia()|0;xta(g);Ua(m|0)}xta(g);do if(!(b[h>>0]|0))a=f[e>>2]|0;else{c=DCa(134176,98851)|0;a=f[e>>2]|0;c=DCa(zm(c,a)|0,95465)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(c,k)|0;fu(c)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);u=l;return a|0}function oq(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;j=l+28|0;e=l+24|0;g=l;h=a+12|0;do if(b[h>>0]|0){i=DCa(134176,95315)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(i,d)|0;fu(i)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);JOa(g,a);x=0;ua(1886,e|0,g|0);m=x;x=0;if(m&1){m=Ia()|0;xta(g);Ua(m|0)}xta(g);do if(!(b[h>>0]|0))a=f[e>>2]|0;else{c=DCa(134176,95676)|0;a=f[e>>2]|0;c=DCa(Am(c,a)|0,95465)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(c,k)|0;fu(c)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);u=l;return a|0}function pq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+160|0;p=o+16|0;n=o;a:do if((b|0)!=(c|0)){i=p+56|0;j=p+4|0;f[p>>2]=33420;f[i>>2]=33440;Laa(p+56|0,j);f[p+128>>2]=0;f[p+132>>2]=-1;f[p>>2]=41756;f[i>>2]=41776;Xra(j);f[j>>2]=39940;i=p+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=0;while(1){if((h|0)==3)break;f[i+(h<<2)>>2]=0;h=h+1|0}f[p+48>>2]=0;f[p+52>>2]=16;x=0;h=ia(77,p|0,b|0)|0;i=x;x=0;do if(((((!(i&1)?(x=0,k=ia(62,h|0,81452)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(77,k|0,c|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(62,l|0,122322)|0,l=x,x=0,!(l&1)):0)?(x=0,ia(62,m|0,e|0)|0,e=x,x=0,!(e&1)):0)?(x=0,ua(107,n|0,j|0),e=x,x=0,!(e&1)):0){x=0;wa(127,a|0,n|0,d|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;MTa(n);break}else{MTa(n);OGa(p);break a}}else q=13;while(0);if((q|0)==13)h=Ia()|0;OGa(p);Ua(h|0)}while(0);u=o;return}function qq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;m=n;a:do if((b|4|0)!=5){h=o+56|0;i=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,i);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(i);f[i>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,j=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,k=ia(77,j|0,1)|0,j=x,x=0,!(j&1)):0)?(x=0,l=ia(62,k|0,122322)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(62,l|0,d|0)|0,d=x,x=0,!(d&1)):0)?(x=0,ua(107,m|0,i|0),d=x,x=0,!(d&1)):0){x=0;wa(111,a|0,m|0,c|0,e|0);e=x;x=0;if(e&1){g=Ia()|0;MTa(m);break}else{MTa(m);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function rq(a,c){a=a|0;c=c|0;if(!c)Ca(110558,115840,78,110563);do switch(f[c>>2]|0){case 1:{iza(a,c);break}case 22:case 19:case 18:case 15:case 2:break;case 3:{hka(a,c);break}case 4:{aga(a,c);break}case 5:{zC(a,c);break}case 6:{d2a(a);break}case 7:{USa(a);break}case 8:{d2a(a);break}case 9:{$fa(a,c);break}case 10:{_fa(a,c);break}case 11:{Lea(a,c);break}case 12:{Kea(a,c);break}case 13:{ZEa(a,b[c+20>>0]|0);break}case 14:{rEa(a,b[c+20>>0]|0);break}case 24:{dKa(a);break}case 25:{dKa(a);break}case 26:{dKa(a);break}case 27:{dKa(a);break}case 16:{BMa(a,c);break}case 17:{vga(a,c);break}case 20:{w1a(a);break}case 21:{kWa(a);break}case 23:{w1a(a);break}default:hb()}while(0);return}function sq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=c+8|0;k=a+44|0;l=hX(k,f[e>>2]|0)|0;a:do if((l|0)!=(a+48|0)){m=l+20|0;h=nRa(f[f[m>>2]>>2]|0)|0;if(!(b[a+93>>0]|0))i=(f[(f[a+120>>2]|0)+(f[e>>2]<<2)>>2]|0)==1;else i=1;j=f[h+12>>2]|0;g=U_a(j)|0;do if(!g){g=f[a+132>>2]|0;e=(f[a+136>>2]|0)-g>>2;if(e>>>0<=1)Ca(112123,76794,205,76826);if((f[g+(e+-1<<2)>>2]|0)!=(c|0))Ca(78602,76794,206,76826);if(!(d6a(f[f[g+(e+-2<<2)>>2]>>2]|0)|0))break a;if(!i){GVa(f[a+16>>2]|0,h)|0;if(Qab(f[h+4>>2]|0)|0)Ca(76955,76794,231,76826);else{gLa(h,1);d=c;break}}else{d=c;n=14}}else if(i){d=c;n=14;break}else{f[e>>2]=f[g+8>>2];b[a+92>>0]=1;break a}while(0);if((n|0)==14)GVa(f[a+16>>2]|0,j)|0;f[f[m>>2]>>2]=d;jUa(c)|0;SI(k,l);b[a+92>>0]=1}while(0);return}function tq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,83827)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(113,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;MTa(l);break}else{MTa(l);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function uq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,84665)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(119,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;MTa(l);break}else{MTa(l);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function vq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,82777)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(108,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;MTa(l);break}else{MTa(l);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function wq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,82637)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(106,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;MTa(l);break}else{MTa(l);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function xq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(77,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(77,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,82804)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(109,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;MTa(l);break}else{MTa(l);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function yq(a,b){a=a|0;b=b|0;var c=0;c=v$a(b)|0;do if(!c){c=Z$a(b)|0;if(c|0){c=Wn(a,c)|0;break}c=J$a(b)|0;if(c|0){c=xi(a,c)|0;break}c=U_a(b)|0;if(c|0){c=Wia(a,c)|0;break}c=L_a(b)|0;if(c|0){c=ds(a,c)|0;break}c=u$a(b)|0;if(c|0){c=XF(a,c)|0;break}c=k$a(b)|0;if(c|0){c=Tf(a,c)|0;break}c=n$a(b)|0;if(c|0){c=f9(a,c)|0;break}c=l$a(b)|0;if(c|0){c=uD(a,c)|0;break}c=d$a(b)|0;if(c|0){c=Rp(a,c)|0;break}c=b$a(b)|0;if(c|0){c=FB(a,c)|0;break}if(e_a(b)|0){c=wWa(a)|0;break}c=x$a(b)|0;if(!c){c=GC(a,b)|0;break}else{c=mda(a,c)|0;break}}else c=ws(a,c)|0;while(0);return c|0}function zq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+160|0;o=n+16|0;l=n;a:do if((b|0)!=(c|0)){h=o+56|0;m=o+4|0;f[o>>2]=33420;f[h>>2]=33440;Laa(o+56|0,m);f[o+128>>2]=0;f[o+132>>2]=-1;f[o>>2]=41756;f[h>>2]=41776;Xra(m);f[m>>2]=39940;h=o+36|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[h+(g<<2)>>2]=0;g=g+1|0}f[o+48>>2]=0;f[o+52>>2]=16;x=0;g=ia(78,o|0,b|0)|0;h=x;x=0;do if(((((!(h&1)?(x=0,i=ia(62,g|0,81452)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(78,i|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,84264)|0,k=x,x=0,!(k&1)):0)?(x=0,ua(107,l|0,m|0),m=x,x=0,!(m&1)):0){x=0;wa(102,a|0,l|0,d|0,e|0);m=x;x=0;if(m&1){g=Ia()|0;MTa(l);break}else{MTa(l);OGa(o);break a}}else p=13;while(0);if((p|0)==13)g=Ia()|0;OGa(o);Ua(g|0)}while(0);u=n;return}function Aq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+20|0;h=l+16|0;j=l+12|0;k=l;do if(b[a+12>>0]|0){d=DCa(134176,110843)|0;d=zm(d,f[a+36>>2]|0)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(d,g)|0;fu(d)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);g=Gr(a,nq(a)|0)|0;f[c+8>>2]=g;e=f[a>>2]|0;f[h>>2]=g;f[i>>2]=f[h>>2];d=gna(e,i)|0;do if(!d){f[j>>2]=g;f[i>>2]=f[j>>2];d=fna(e,i)|0;if(d|0?(f[d+12>>2]|0)==3:0){f[c+4>>2]=f[d+20>>2];break}f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_Z(k,97128,j7a(97128)|0);x=0;ua(1870,a|0,k|0);m=x;x=0;if(m&1){m=Ia()|0;MTa(k);Ua(m|0)}else{MTa(k);break}}else f[c+4>>2]=f[d+4>>2];while(0);u=l;return}function Bq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=e+4|0;p=e+8|0;j=a;h=c;g=a;i=a;c=a;a:while(1){m=h+16|0;n=(h|0)==(d|0);l=j;a=c;k=i;while(1){if((a|0)==(b|0)|n)break a;i=k+16|0;c=f[i>>2]|0;a=f[m>>2]|0;j=c;if(!(PVa(c,a)|0))break;c=f[l+4>>2]|0;b:do if(!c){g=l;while(1){c=f[g+8>>2]|0;if((f[c>>2]|0)==(g|0))break b;g=c}}else while(1){g=f[c>>2]|0;if(!g)break;else c=g}while(0);l=c;g=c;a=c;k=c}if(PVa(a,c)|0){j=l;i=k;a=k}else{c=f[o>>2]|0;if((c|0)==(f[p>>2]|0))LL(e,i);else{f[c>>2]=j;f[o>>2]=(f[o>>2]|0)+4}c=f[g+4>>2]|0;c:do if(!c)while(1){c=f[g+8>>2]|0;if((f[c>>2]|0)==(g|0))break c;g=c}else while(1){g=f[c>>2]|0;if(!g)break;else c=g}while(0);j=c;g=c;i=c;a=c}c=f[h+4>>2]|0;d:do if(!c)while(1){c=f[h+8>>2]|0;if((f[c>>2]|0)==(h|0))break d;h=c}else while(1){h=f[c>>2]|0;if(!h)break;else c=h}while(0);h=c;c=a}return}function Cq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|4|0)!=5){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Laa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Xra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(77,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81452)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(77,h|0,1)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,84358)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(116,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;MTa(k);break}else{MTa(k);OGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;OGa(n);Ua(e|0)}while(0);u=m;return}function Dq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|4|0)!=5){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Laa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Xra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(77,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81452)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(77,h|0,1)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,82603)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(105,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;MTa(k);break}else{MTa(k);OGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;OGa(n);Ua(e|0)}while(0);u=m;return}function Eq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k+12|0;j=k;if(!(d<<24>>24)){g=LSa(f[a+4>>2]|0)|0;do if(b[a+12>>0]|0){d=DCa(134176,110713)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(i);Wq(d,h)|0;fu(d)|0;break}l=Ia()|0;OCa(i);Ua(l|0)}while(0);l=g+4|0;f[l>>2]=1;h=dk(a)|0;f[g+16>>2]=h;h=dk(a)|0;f[g+12>>2]=h;Sab(i);LF(a,i,g+8|0);i=Jbb(f[i>>2]|0)|0;do if((i|0)!=(Ixa(f[l>>2]|0)|0)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,96924,j7a(96924)|0);x=0;ua(1870,a|0,j|0);l=x;x=0;if(l&1){l=Ia()|0;MTa(j);Ua(l|0)}else{MTa(j);break}}while(0);lDa(g);f[c>>2]=g;d=1}else d=0;u=k;return d|0}function Fq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+64|0;m=q+48|0;o=q+40|0;r=q+24|0;h=q+8|0;k=q;l=q+20|0;p=q+16|0;DUa(r);i=c+8|0;Q$a(o,i);LUa(h,i);i=m+4|0;n=c+32|0;j=o+4|0;g=f[h>>2]|0;h=f[h+4>>2]|0;while(1){if(!(qTa(f[o>>2]|0,f[j>>2]|0,g,h)|0)){g=3;break}x=0;e=ga(256,o|0)|0;s=x;x=0;if(s&1){g=8;break}e=f[e>>2]|0;f[k>>2]=e;x=0;wa(82,m|0,r|0,k|0,k|0);s=x;x=0;if(s&1){g=9;break}if(b[i>>0]|0?(f[l>>2]=e,s=f[n>>2]|0,x=0,f[m>>2]=f[l>>2],wa(83,a|0,m|0,d|0,s|0),s=x,x=0,s&1):0){g=8;break}YYa(o)}do if((g|0)==3){e=c+24|0;x=0;wa(82,o|0,r|0,e|0,e|0);s=x;x=0;if(s&1){e=Ia()|0;break}if(b[o+4>>0]|0?(f[p>>2]=f[e>>2],s=f[n>>2]|0,x=0,f[m>>2]=f[p>>2],wa(83,a|0,m|0,d|0,s|0),s=x,x=0,s&1):0){e=Ia()|0;break}RTa(r);u=q;return}else if((g|0)==8){e=Ia()|0;g=11}else if((g|0)==9){e=Ia()|0;g=11}while(0);RTa(r);Ua(e|0)}function Gq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+32|0;e=d+12|0;g=d;c=a+12|0;do if((t_(c,b)|0)==(a+16|0)){c=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;g=j7a(65065)|0;x=0;va(87,e|0,65065,g|0);g=x;x=0;if(!(g&1)){x=0;ua(261,c|0,e|0);g=x;x=0;if(g&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;MTa(e);if(!b)break}else a=Ia()|0;La(c|0)}else{e=ZW(c,b)|0;if((f[e>>2]|0)!=(f[e+4>>2]|0)){g=(ZW(c,b)|0)+4|0;u=d;return f[(f[g>>2]|0)+-4>>2]|0}c=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=j7a(65117)|0;x=0;va(87,g|0,65117,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,c|0,g|0);e=x;x=0;if(e&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;MTa(g);if(!b)break}else a=Ia()|0;La(c|0)}while(0);Ua(a|0);return 0}function Hq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;a:do switch(b-a>>2|0){case 1:case 0:{d=1;break}case 2:{d=b+-4|0;if(Ov(f[c>>2]|0,f[c+4>>2]|0,f[d>>2]|0,f[a>>2]|0)|0){c=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=c;d=1}else d=1;break}case 3:{_x(a,a+4|0,b+-4|0,c)|0;d=1;break}case 4:{gC(a,a+4|0,a+8|0,b+-4|0,c)|0;d=1;break}case 5:{ox(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;d=1;break}default:{e=a+8|0;_x(a,a+4|0,e,c)|0;j=c+4|0;i=a+12|0;d=0;while(1){if((i|0)==(b|0)){d=1;break a}if(Ov(f[c>>2]|0,f[j>>2]|0,f[i>>2]|0,f[e>>2]|0)|0){h=f[i>>2]|0;g=i;while(1){f[g>>2]=f[e>>2];if((e|0)==(a|0)){e=a;break}g=e+-4|0;if(Ov(f[c>>2]|0,f[j>>2]|0,h,f[g>>2]|0)|0){k=e;e=g;g=k}else break}f[e>>2]=h;d=d+1|0;if((d|0)==8)break}e=i;i=i+4|0}d=(i+4|0)==(b|0)}}while(0);return d|0}function Iq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;l=m;a:do if(!b){g=n+56|0;h=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Laa(n+56|0,h);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Xra(h);f[h>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[g+(b<<2)>>2]=0;b=b+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;b=ia(77,n|0,0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,i=ia(62,b|0,82031)|0,g=x,x=0,!(g&1)):0)?(x=0,j=ia(77,i|0,0)|0,i=x,x=0,!(i&1)):0)?(x=0,k=ia(62,j|0,122322)|0,j=x,x=0,!(j&1)):0)?(x=0,ia(62,k|0,d|0)|0,d=x,x=0,!(d&1)):0)?(x=0,ua(107,l|0,h|0),d=x,x=0,!(d&1)):0){x=0;wa(108,a|0,l|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(l);break}else{MTa(l);OGa(n);break a}}else o=13;while(0);if((o|0)==13)b=Ia()|0;OGa(n);Ua(b|0)}while(0);u=m;return}function Jq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if(f[a+8>>2]|0){d=bfa(a)|0;while(1){if(!d)break a;if((b|0)==(c|0))break;f[d+16>>2]=f[b+16>>2];f[d+20>>2]=f[b+20>>2];e=IT(d)|0;uU(a,d);d=f[b+4>>2]|0;if(!d)while(1){d=f[b+8>>2]|0;if((f[d>>2]|0)==(b|0)){b=d;break}else b=d}else{b=d;while(1){d=f[b>>2]|0;if(!d)break;else b=d}}d=e}b=d;while(1){d=f[b+8>>2]|0;if(!d)break;b=d}VX(a,b);b=c}while(0);d=b;while(1){if((d|0)==(c|0))break;zG(a,d+16|0);b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}return}function Kq(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;g=a+4|0;h=a+8|0;c=f[a>>2]|0;a:while(1){d=b[c>>0]|0;b:do if(!(w6a(d<<24>>24)|0)){switch(d<<24>>24){case 59:{if((b[c+1>>0]|0)!=59)break a;if((b[c+2>>0]|0)==64){Dn(a);c=f[a>>2]|0}c:while(1){switch(b[c>>0]|0){case 10:case 0:break c;default:{}}e=c+1|0;f[a>>2]=e;c=e}f[g>>2]=(f[g>>2]|0)+1;c=c+1|0;f[a>>2]=c;f[h>>2]=c;break b}case 40:break;default:break a}if((b[c+1>>0]|0)!=59)break a;c=c+2|0;f[a>>2]=c;d=1;while(1){d:while(1){switch(b[c>>0]|0){case 0:break a;case 40:{e=c+1|0;if((b[e>>0]|0)==59){e=22;break d}else c=e;break}case 59:{e=c+1|0;if((b[e>>0]|0)==41){e=25;break d}else c=e;break}case 10:{f[g>>2]=(f[g>>2]|0)+1;f[h>>2]=c;c=c+1|0;break}default:c=c+1|0}f[a>>2]=c}if((e|0)==22){c=c+2|0;f[a>>2]=c;d=d+1|0}else if((e|0)==25){c=c+2|0;f[a>>2]=c;d=d+-1|0;if(!d)break b}}}else{if(d<<24>>24==10){f[g>>2]=(f[g>>2]|0)+1;c=c+1|0;f[h>>2]=c}else c=c+1|0;f[a>>2]=c}while(0)}return}function Lq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;k=c;j=o;n=a+11|0;e=b[n>>0]|0;g=e<<24>>24<0;if(g){i=(f[a+8>>2]&2147483647)+-1|0;m=f[a+4>>2]|0}else{i=10;m=e&255}l=d-k|0;do if(l|0){if(g){g=f[a>>2]|0;h=f[a+4>>2]|0}else{g=a;h=e&255}if(fWa(c,g,g+h|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;UM(j,c,d);n=b[j+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,a|0,(m?f[j>>2]|0:j)|0,(m?f[j+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){o=Ia()|0;MTa(j);Ua(o|0)}else{MTa(j);break}}if((i-m|0)>>>0>>0){SH(a,i,m+l-i|0,m,m,0);e=b[n>>0]|0}if(e<<24>>24<0)i=f[a>>2]|0;else i=a;h=d+(m-k)|0;g=i+m|0;e=c;while(1){if((e|0)==(d|0))break;Z0a(g,b[e>>0]|0);g=g+1|0;e=e+1|0}Z0a(i+h|0,0);e=m+l|0;if((b[n>>0]|0)<0){f[a+4>>2]=e;break}else{b[n>>0]=e;break}}while(0);u=o;return}function Mq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|0)!=8){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Laa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Xra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(113,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81452)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(113,h|0,8)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,83989)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(102,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;MTa(k);break}else{MTa(k);OGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;OGa(n);Ua(e|0)}while(0);u=m;return}function Nq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+112|0;c=j+48|0;d=j+92|0;e=j+96|0;i=j+80|0;g=j+64|0;m=j+32|0;l=j+16|0;k=j;n=f[a+36>>2]|0;Jbb(n)|0;_0a(d,n);f[e>>2]=f[33165];n=a+44|0;a=f[n>>2]|0;f[n>>2]=a+1;t$a(m,a);f[c>>2]=f[m>>2];f[c+4>>2]=f[m+4>>2];f[c+8>>2]=f[m+8>>2];f[c+12>>2]=f[m+12>>2];a=e0(d,c)|0;f[g>>2]=a;t$a(l,h[b+8>>0]|0);f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];f[c+12>>2]=f[l+12>>2];a=e0(d,c)|0;f[g+4>>2]=a;t$a(k,f[b+12>>2]|0);f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];a=e0(d,c)|0;f[g+8>>2]=a;b=b+24|0;f[g+12>>2]=f[b>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,4);a=x;x=0;if(a&1){n=Ia()|0;zSa(i);Ua(n|0)}qda(i,g,g+16|0);x=0;f[c>>2]=f[e>>2];a=ka(10,d|0,c|0,i|0,1)|0;n=x;x=0;if(n&1){n=Ia()|0;zSa(i);Ua(n|0)}else{f[b>>2]=a;zSa(i);u=j;return}}function Oq(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=a+208|0;R7(c);d=f[a+40>>2]|0;b=f[a+36>>2]|0;while(1){if((b|0)==(d|0))break;g=f[b>>2]|0;e=zZ(c,g)|0;f[e>>2]=g;b=b+4|0}d=a+172|0;J6(d);c=f[a+4>>2]|0;b=f[a>>2]|0;while(1){if((b|0)==(c|0))break;e=f[b>>2]|0;g=zZ(d,e)|0;f[g>>2]=e;b=b+4|0}c=a+184|0;f8(c);d=f[a+16>>2]|0;b=f[a+12>>2]|0;while(1){if((b|0)==(d|0))break;e=f[b>>2]|0;g=zZ(c,e)|0;f[g>>2]=e;b=b+4|0}c=a+196|0;S7(c);d=f[a+28>>2]|0;b=f[a+24>>2]|0;while(1){if((b|0)==(d|0))break;e=f[b>>2]|0;g=zZ(c,e)|0;f[g>>2]=e;b=b+4|0}c=a+220|0;g8(c);d=f[a+52>>2]|0;b=f[a+48>>2]|0;while(1){if((b|0)==(d|0))break;e=f[b>>2]|0;g=zZ(c,e)|0;f[g>>2]=e;b=b+4|0}return}function Pq(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;j=u;u=u+32|0;i=j;k=j+12|0;a:do if(e)kna(a,b,d,g);else{b:do switch(b|0){case 8:case 4:case 2:case 1:break;default:{h=f[a+44>>2]|0;DY(k,b);x=0;ia(83,k|0,84308)|0;e=x;x=0;do if(!(e&1)){f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}e=Jbb(f[a+32>>2]|0)|0;x=0;wa(102,h|0,i|0,g|0,e|0);h=x;x=0;if(h&1){e=Ia()|0;MTa(i);break}else{MTa(i);MTa(k);break b}}else e=Ia()|0;while(0);MTa(k);Ua(e|0)}}while(0);Ooa(a,b>>>0<=d>>>0,g,84324)|0;switch(c|0){case 3:case 1:{Ooa(a,b>>>0<5,g,84324)|0;break a}case 4:case 2:{Ooa(a,b>>>0<9,g,84324)|0;break a}default:break a}}while(0);u=j;return}function Qq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+112|0;c=j+48|0;d=j+92|0;e=j+96|0;i=j+80|0;g=j+64|0;m=j+32|0;l=j+16|0;k=j;n=f[a+36>>2]|0;Jbb(n)|0;_0a(d,n);f[e>>2]=f[33166];n=a+44|0;a=f[n>>2]|0;f[n>>2]=a+1;t$a(m,a);f[c>>2]=f[m>>2];f[c+4>>2]=f[m+4>>2];f[c+8>>2]=f[m+8>>2];f[c+12>>2]=f[m+12>>2];a=e0(d,c)|0;f[g>>2]=a;t$a(l,h[b+8>>0]|0);f[c>>2]=f[l>>2];f[c+4>>2]=f[l+4>>2];f[c+8>>2]=f[l+8>>2];f[c+12>>2]=f[l+12>>2];a=e0(d,c)|0;f[g+4>>2]=a;t$a(k,f[b+12>>2]|0);f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];a=e0(d,c)|0;f[g+8>>2]=a;b=b+24|0;f[g+12>>2]=f[b>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,4);a=x;x=0;if(a&1){n=Ia()|0;zSa(i);Ua(n|0)}qda(i,g,g+16|0);x=0;f[c>>2]=f[e>>2];a=ka(10,d|0,c|0,i|0,1)|0;n=x;x=0;if(n&1){n=Ia()|0;zSa(i);Ua(n|0)}else{f[b>>2]=a;zSa(i);u=j;return}}function Rq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if((b|0)!=1){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Laa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Xra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(78,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81452)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(78,h|0,1)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,82571)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(105,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;MTa(k);break}else{MTa(k);OGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;OGa(n);Ua(e|0)}while(0);u=m;return}function Sq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if(f[a+8>>2]|0){d=bfa(a)|0;while(1){if(!d)break a;if((b|0)==(c|0))break;f[d+16>>2]=f[b+16>>2];f[d+20>>2]=f[b+20>>2];e=IT(d)|0;MU(a,d);d=f[b+4>>2]|0;if(!d)while(1){d=f[b+8>>2]|0;if((f[d>>2]|0)==(b|0)){b=d;break}else b=d}else{b=d;while(1){d=f[b>>2]|0;if(!d)break;else b=d}}d=e}b=d;while(1){d=f[b+8>>2]|0;if(!d)break;b=d}KY(a,b);b=c}while(0);d=b;while(1){if((d|0)==(c|0))break;YG(a,d+16|0);b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}return}function Tq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+160|0;n=m+16|0;k=m;a:do if(b|0){g=n+56|0;l=n+4|0;f[n>>2]=33420;f[g>>2]=33440;Laa(n+56|0,l);f[n+128>>2]=0;f[n+132>>2]=-1;f[n>>2]=41756;f[g>>2]=41776;Xra(l);f[l>>2]=39940;g=n+36|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}f[n+48>>2]=0;f[n+52>>2]=16;x=0;e=ia(113,n|0,b|0)|0;g=x;x=0;do if(((((!(g&1)?(x=0,h=ia(62,e|0,81452)|0,g=x,x=0,!(g&1)):0)?(x=0,i=ia(113,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,85310)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,l|0),l=x,x=0,!(l&1)):0){x=0;wa(126,a|0,k|0,c|0,d|0);l=x;x=0;if(l&1){e=Ia()|0;MTa(k);break}else{MTa(k);OGa(n);break a}}else o=13;while(0);if((o|0)==13)e=Ia()|0;OGa(n);Ua(e|0)}while(0);u=m;return}function Uq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Laa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Xra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82031)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,85164)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(102,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(k);break}else{MTa(k);OGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;OGa(m);Ua(b|0)}while(0);u=l;return}function Vq(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{tS(a+16|0,1418,b);e=11;break}case 2:{d=a+16|0;tS(d,1419,b);g=(vSa(c)|0)+16|0;if(f[g>>2]|0){tS(d,1417,(vSa(c)|0)+16|0);tS(d,1420,b)}tS(d,1417,(vSa(c)|0)+12|0);tS(d,1421,b);tS(d,1417,(vSa(c)|0)+8|0);break}case 3:{tS(a+16|0,1422,b);e=11;break}case 4:{tS(a+16|0,1423,b);e=11;break}case 5:{tS(a+16|0,1424,b);e=11;break}case 20:{tS(a+16|0,1425,b);e=11;break}case 23:{tS(a+16|0,1425,b);e=11;break}default:e=11}if((e|0)==11?(pY(a,b),(f[c>>2]|0)==3):0)tS(a+16|0,1426,b);return}function Wq(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;x=0;ua(99,j|0,a|0);h=x;x=0;a:do if(h&1){d=Ja(0)|0;e=a;c=a;k=13}else{b:do if(b[j>>0]|0){d=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;g=f[d+24>>2]|0;h=g;do if(!g){i=d;k=9}else{d=h+24|0;e=f[d>>2]|0;if((e|0)==(f[h+28>>2]|0)){g=f[(f[g>>2]|0)+52>>2]|0;d=d7a(c)|0;x=0;d=ia(g|0,h|0,d|0)|0;h=x;x=0;if(h&1)break}else{f[d>>2]=e+1;b[e>>0]=c;d=d7a(c)|0}if(!(g2a(d,-1)|0))break b;i=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;k=9}while(0);if((k|0)==9?(x=0,ua(100,i|0,f[i+16>>2]|1|0),i=x,x=0,!(i&1)):0)break;d=Ja(0)|0;gD(j);e=a;c=a;k=13;break a}while(0);gD(j)}while(0);do if((k|0)==13){Fa(d|0)|0;x=0;ta(450,e+(f[(f[c>>2]|0)+-12>>2]|0)|0);k=x;x=0;if(!(k&1)){Ga();break}d=Ia()|0;x=0;sa(6);k=x;x=0;if(k&1){k=Ja(0)|0;y2a(k)}else Ua(d|0)}while(0);u=l;return a|0}function Xq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Laa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Xra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82031)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,82865)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(110,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(k);break}else{MTa(k);OGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;OGa(m);Ua(b|0)}while(0);u=l;return}function Yq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Laa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Xra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82031)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,84202)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(115,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(k);break}else{MTa(k);OGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;OGa(m);Ua(b|0)}while(0);u=l;return}function Zq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+160|0;m=l+16|0;k=l;a:do if(!b){e=m+56|0;g=m+4|0;f[m>>2]=33420;f[e>>2]=33440;Laa(m+56|0,g);f[m+128>>2]=0;f[m+132>>2]=-1;f[m>>2]=41756;f[e>>2]=41776;Xra(g);f[g>>2]=39940;e=m+36|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}f[m+48>>2]=0;f[m+52>>2]=16;x=0;b=ia(77,m|0,0)|0;e=x;x=0;do if(((((!(e&1)?(x=0,h=ia(62,b|0,82031)|0,e=x,x=0,!(e&1)):0)?(x=0,i=ia(77,h|0,0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,122322)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,j|0,86553)|0,j=x,x=0,!(j&1)):0)?(x=0,ua(107,k|0,g|0),j=x,x=0,!(j&1)):0){x=0;wa(128,a|0,k|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(k);break}else{MTa(k);OGa(m);break a}}else n=13;while(0);if((n|0)==13)b=Ia()|0;OGa(m);Ua(b|0)}while(0);u=l;return}function _q(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;j=n+32|0;k=n+24|0;i=n+8|0;l=n+16|0;m=n;e=c+32|0;g=f[e>>2]|0;do if(cTa(g)|0)Yba(a,g)|0;else{h=c+28|0;d=f[h>>2]|0;if(X7a(f[d+4>>2]|0)|0)if(!g){Yba(a,d)|0;break}else{m=f[a+36>>2]|0;Jbb(m)|0;m=eSa(m+144|0)|0;l=m+12|0;i7(l,2);j=$ba(a,f[e>>2]|0)|0;k=ODa(l,0)|0;f[k>>2]=j;k=f[h>>2]|0;l=ODa(l,1)|0;f[l>>2]=k;aKa(m,f[c+4>>2]|0);Yba(a,m)|0;break}g=c+8|0;Q$a(k,g);LUa(i,g);g=k+4|0;e=f[i>>2]|0;d=f[i+4>>2]|0;while(1){if(!(qTa(f[k>>2]|0,f[g>>2]|0,e,d)|0))break;i=QOa(k)|0;f[l>>2]=f[i>>2];f[j>>2]=f[l>>2];bda(a,j);YYa(k)}f[m>>2]=f[c+24>>2];f[j>>2]=f[m>>2];bda(a,j);b[a+104>>0]=0}while(0);u=n;return}function $q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{tS(a+16|0,3144,b);e=11;break}case 2:{d=a+16|0;tS(d,3145,b);g=(vSa(c)|0)+16|0;if(f[g>>2]|0){tS(d,3143,(vSa(c)|0)+16|0);tS(d,3146,b)}tS(d,3143,(vSa(c)|0)+12|0);tS(d,3147,b);tS(d,3143,(vSa(c)|0)+8|0);break}case 3:{tS(a+16|0,3148,b);e=11;break}case 4:{tS(a+16|0,3149,b);e=11;break}case 5:{tS(a+16|0,3150,b);e=11;break}case 20:{tS(a+16|0,3151,b);e=11;break}case 23:{tS(a+16|0,3151,b);e=11;break}default:e=11}if((e|0)==11?(mZ(a,b),(f[c>>2]|0)==3):0)tS(a+16|0,3152,b);return}function ar(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=DCa(134176,111057)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(h);Wq(g,e)|0;fu(g)|0;break}j=Ia()|0;OCa(h);Ua(j|0)}while(0);d=f[c+8>>2]|0;j=(f[d+4>>2]|0)==5;oGa(a,d);d=a+28|0;e=f[d>>2]|0;if(j)iTa(e);else{Gv(e,4)|0;e=f[d>>2]|0;d=f[c+4>>2]|0;Pr(e,r8((d|0)==5?0:d)|0)|0;L1a(h,f[33015]|0);d=a+60|0;e=f[d>>2]|0;if(e>>>0<(f[a+64>>2]|0)>>>0){f[e>>2]=f[h>>2];f[d>>2]=(f[d>>2]|0)+4}else LL(a+56|0,h);sw(a,f[c+12>>2]|0);if(f[c+16>>2]|0)RI(a,c);$T(a,c)}u=i;return}function br(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;o=p+12|0;d=p+4|0;g=p+8|0;h=p;LK(o,a);x=0;va(88,d|0,((b[o+11>>0]|0)<0?f[o>>2]|0:o)|0,0);n=x;x=0;if(n&1){p=Ia()|0;MTa(o);Ua(p|0)}MTa(o);e=f[d>>2]|0;L1a(g,e);f[o>>2]=f[g>>2];if(!(tma(c,o)|0)){d=s8(20)|0;xPa(d);L1a(o,e);f[d>>2]=f[o>>2];n=a+11|0;if((b[n>>0]|0)<0){l=a;m=a;e=f[a>>2]|0}else{l=a;m=a;e=a}i=Toa(b[e>>0]|0)|0;f[d+4>>2]=i;a=a+4|0;i=d+8|0;j=d+12|0;k=d+16|0;h=1;while(1){e=b[n>>0]|0;g=e<<24>>24<0;if(g)e=f[a>>2]|0;else e=e&255;if(h>>>0>=e>>>0)break;if(g)e=f[m>>2]|0;else e=l;e=Toa(b[e+h>>0]|0)|0;f[o>>2]=e;g=f[j>>2]|0;if(g>>>0<(f[k>>2]|0)>>>0){f[g>>2]=e;f[j>>2]=g+4}else LL(i,o);h=h+1|0}As(c,d)}else{L1a(h,e);f[o>>2]=f[h>>2];d=MI(c,o)|0}u=p;return d|0}function cr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l+16|0;i=l+24|0;h=l+8|0;j=l;f[k>>2]=b;c=f[a+24>>2]|0;b=(f[a+28>>2]|0)-c>>2;if(b>>>0>1){e=f[c+(b+-2<<2)>>2]|0;g=i_(a+48|0,k)|0;f[g>>2]=e}else{g=i_(a+48|0,k)|0;f[g>>2]=0}c=f[k>>2]|0;d=v$a(c)|0;do if(!d){b=u$a(c)|0;if(b|0){FW(a+36|0,b+8|0)|0;break}d=k$a(c)|0;if(d|0){e=d+8|0;Q$a(i,e);LUa(h,e);e=a+36|0;g=i+4|0;c=f[h>>2]|0;b=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,c,b)|0))break;h=QOa(i)|0;f[j>>2]=f[h>>2];FW(e,j)|0;YYa(i)}FW(e,d+24|0)|0}}else{b=d+8|0;if(Qab(f[b>>2]|0)|0){j=FW(a+36|0,b)|0;f[j>>2]=d}}while(0);LU(a,f[k>>2]|0,1);u=l;return}function dr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{tS(a+16|0,591,b);e=11;break}case 2:{d=a+16|0;tS(d,592,b);g=(vSa(c)|0)+16|0;if(f[g>>2]|0){tS(d,590,(vSa(c)|0)+16|0);tS(d,593,b)}tS(d,590,(vSa(c)|0)+12|0);tS(d,594,b);tS(d,590,(vSa(c)|0)+8|0);break}case 3:{tS(a+16|0,595,b);e=11;break}case 4:{tS(a+16|0,596,b);e=11;break}case 5:{tS(a+16|0,597,b);e=11;break}case 20:{tS(a+16|0,598,b);e=11;break}case 23:{tS(a+16|0,598,b);e=11;break}default:e=11}if((e|0)==11?(uZ(a,b),(f[c>>2]|0)==3):0)tS(a+16|0,599,b);return}function er(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=Jt(a,b,c,d)|0;g=f[e>>2]|0;h=f[d>>2]|0;if(X2(+p[g+16>>3],+p[h+16>>3])|0){f[d>>2]=g;f[e>>2]=h;g=i+1|0;h=f[d>>2]|0;e=f[c>>2]|0;if(X2(+p[h+16>>3],+p[e+16>>3])|0){f[c>>2]=h;f[d>>2]=e;g=i+2|0;h=f[c>>2]|0;e=f[b>>2]|0;if(X2(+p[h+16>>3],+p[e+16>>3])|0){f[b>>2]=h;f[c>>2]=e;g=f[b>>2]|0;h=f[a>>2]|0;if(X2(+p[g+16>>3],+p[h+16>>3])|0){f[a>>2]=g;f[b>>2]=h;g=i+4|0}else g=i+3|0}}}else g=i;return g|0}function fr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;h=g+12|0;i=g;f[a>>2]=0;c=b+16|0;b=0;while(1){d=(pra(f[c>>2]|0)|0)&255;e=d&127;if((((b|0)==0?127:(1<<32-b)+127|0)&e|0)!=(e|0)){c=3;break}f[a>>2]=f[a>>2]|e<>>0>31){c=11;break}}do if((c|0)==3){d=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;i=j7a(95688)|0;x=0;va(87,h|0,95688,i|0);i=x;x=0;if(!(i&1)){x=0;ua(261,d|0,h|0);i=x;x=0;if(i&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(h);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==11){d=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=j7a(95731)|0;x=0;va(87,i|0,95731,h|0);h=x;x=0;if(!(h&1)){x=0;ua(261,d|0,i|0);h=x;x=0;if(h&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(i);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==18){u=g;return}while(0);Ua(b|0)}function gr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;h=u;u=u+80|0;i=h+32|0;k=h+16|0;n=h;l=h+64|0;j=h+48|0;g=h+52|0;m=SKa(f[b>>2]|0,c,1)|0;t$a(k,0);f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];f[i+12>>2]=f[k+12>>2];k=e0(b,i)|0;k=Kpa(f[b>>2]|0,15,m,k)|0;m=SKa(f[b>>2]|0,c,1)|0;t$a(n,d);f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];c=e0(b,i)|0;c=Kpa(f[b>>2]|0,0,m,c)|0;f[l>>2]=f[a+16>>2];f[i>>2]=f[l>>2];d=FCa(b,i,1)|0;d=C5(f[b>>2]|0,4,0,0,4,d,1)|0;d=Kpa(f[b>>2]|0,22,c,d)|0;d=Kpa(f[b>>2]|0,8,k,d)|0;f[j>>2]=f[a+20>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;x=0;f[i>>2]=f[j>>2];c=ka(10,b|0,i|0,g|0,0)|0;a=x;x=0;if(!(a&1)?(x=0,e=ka(8,b|0,d|0,c|0,0)|0,n=x,x=0,!(n&1)):0){zSa(g);u=h;return e|0}n=Ia()|0;zSa(g);Ua(n|0);return 0}function hr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+188|0;e=(f[a+192>>2]|0)-(f[l>>2]|0)>>2;if(e>>>0>>0)Ca(97494,87231,1717,97526);if(c>>>0>d>>>0)Ca(97544,87231,1718,97526);if(e>>>0>>0)Ca(97557,87231,1719,97526);i=b+12|0;j=d+-1|0;h=b+16|0;e=-1;g=c;while(1){if(g>>>0>=d>>>0)break;b=f[(f[l>>2]|0)+(g<<2)>>2]|0;faa(i,b);if((g>>>0>>0?v2a(f[b+4>>2]|0)|0:0)?(_0a(k,f[a>>2]|0),n=lNa(f[k>>2]|0,b)|0,b=RCa(i)|0,f[b>>2]=n,(e|0)==-1):0)e=(Jbb(f[h>>2]|0)|0)+-1|0;g=g+1|0}hba(l,c);if((e|0)!=-1?(n=RCa(i)|0,(f[(f[n>>2]|0)+4>>2]|0)==0):0){Dx(a,97587);_0a(k,f[a>>2]|0);c=ODa(i,e)|0;c=(dSa(f[c>>2]|0)|0)+8|0;c=f[c>>2]|0;n=c+4|0;l=Cka(f[a+124>>2]|0,f[n>>2]|0)|0;c=Qya(k,l,c)|0;d=ODa(i,e)|0;f[d>>2]=c;faa(i,SKa(f[k>>2]|0,l,f[n>>2]|0)|0)}u=m;return}function ir(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;c=o;k=o+4|0;f[c>>2]=b;d=f[a+28>>2]|0;if(d|0?(h=Wz(d+68|0,c)|0,h|0):0){c=h+12|0;B4(k,(f[(f[a+24>>2]|0)+132>>2]|0)+((f[c>>2]|0)*12|0)|0);e=a+32|0;g=h+16|0;d=h+20|0;do if(OPa(e,f[c>>2]|0,f[g>>2]|0,f[d>>2]|0)|0){f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];x=0;c=ia(62,f[a>>2]|0,73890)|0;h=x;x=0;if(((((((!(h&1)?(x=0,i=ia(84,c|0,k|0)|0,h=x,x=0,!(h&1)):0)?(x=0,j=ia(62,i|0,116871)|0,i=x,x=0,!(i&1)):0)?(x=0,l=ia(113,j|0,f[g>>2]|0)|0,j=x,x=0,!(j&1)):0)?(x=0,m=ia(62,l|0,116871)|0,l=x,x=0,!(l&1)):0)?(x=0,n=ia(113,m|0,f[d>>2]|0)|0,m=x,x=0,!(m&1)):0)?(x=0,ia(71,n|0,10)|0,n=x,x=0,!(n&1)):0)?(x=0,ia(115,f[a>>2]|0,f[a+4>>2]|0)|0,n=x,x=0,!(n&1)):0)break;o=Ia()|0;MTa(k);Ua(o|0)}while(0);MTa(k)}no(a,b);u=o;return}function jr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;h=n+4|0;i=n;g=a+92|0;d=Jbb(f[g>>2]|0)|0;e=a+96|0;Tx(c,d>>>0>(Jbb(f[e>>2]|0)|0)>>>0);Gx(c,(Jbb(f[e>>2]|0)|0)>>>0<65536,81486);e=a+114|0;if(!(b[e>>0]|0))d=1;else d=F1a(a+88|0)|0;Gx(c,d,95643);if(b[e>>0]|0)Gx(c,(f[c+4>>2]&1|0)!=0,81512);e=f[a+104>>2]|0;d=f[a+100>>2]|0;while(1){if((d|0)==(e|0))break;a=f[d>>2]|0;if(Qp(c,f[a+4>>2]|0,1,a,81358,0)|0?(l=f[d>>2]|0,j=d+4|0,k=d+8|0,hLa(h,(f[k>>2]|0)-(f[j>>2]|0)|0,0),hLa(i,(Jbb(f[g>>2]|0)|0)<<16,0),l=jN(l,f[h>>2]|0,f[i>>2]|0)|0,Vv(c,l,f[d>>2]|0,81387,0)|0,l=(f[k>>2]|0)-(f[j>>2]|0)|0,px(c,l>>>0<=(Jbb(f[g>>2]|0)|0)<<16>>>0,l,81555),m=f[d>>2]|0,O6a(f[m>>2]|0)|0):0){a=(TRa((QRa(m)|0)+8|0)|0)+l|0;a=a>>>0<=(Jbb(f[g>>2]|0)|0)<<16>>>0;px(c,a,(f[k>>2]|0)-(f[j>>2]|0)|0,81599)}d=d+16|0}u=n;return}function kr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=b+8|0;qya(a,(f[(f[d>>2]|0)+4>>2]|4|0)==5,b);g=b+16|0;if(!(f[g>>2]|0)){Pxa(a,v2a(f[(f[b+12>>2]|0)+4>>2]|0)|0,b);if((f[(f[d>>2]|0)+4>>2]|0)!=5)Uja(a,f[b+4>>2]|0,0,b,85529)}else{e=b+4|0;c=f[e>>2]|0;if((c|0)==5){c=b+12|0;if((f[(f[d>>2]|0)+4>>2]|0)!=5){Uja(a,f[(f[c>>2]|0)+4>>2]|0,5,b,85675);Uja(a,f[(f[g>>2]|0)+4>>2]|0,5,b,85722)}}else{d=b+12|0;Vda(a,f[(f[d>>2]|0)+4>>2]|0,c,b,85582);Vda(a,f[(f[g>>2]|0)+4>>2]|0,f[e>>2]|0,b,85628);c=d}d=f[(f[c>>2]|0)+4>>2]|0;if(v2a(d)|0){Uja(a,f[e>>2]|0,d,b,85770);Vda(a,f[(f[g>>2]|0)+4>>2]|0,f[(f[c>>2]|0)+4>>2]|0,b,85805)}d=f[(f[g>>2]|0)+4>>2]|0;if(v2a(d)|0){Uja(a,f[e>>2]|0,d,b,85842);Vda(a,f[(f[c>>2]|0)+4>>2]|0,f[(f[g>>2]|0)+4>>2]|0,b,85878)}}return}function lr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;g=k+16|0;h=k+8|0;i=k;f[g>>2]=(c|0)==0?0:2;f[h>>2]=g;f[h+4>>2]=b;j=a+4|0;e=0;a:while(1){d=f[a>>2]|0;if(e>>>0>=(f[j>>2]|0)-d>>2>>>0){d=3;break}d=f[d+(e<<2)>>2]|0;if(d|0){switch(f[d>>2]|0){case 0:{Rha(h);MXa(i,c,b);_m(i,f[d+4>>2]|0);break}case 6:case 3:case 1:{Rha(h);MXa(i,c,b);_m(i,f[d+4>>2]|0);f[g>>2]=(f[g>>2]|0)+1;break}case 7:case 5:case 2:{f[g>>2]=(f[g>>2]|0)+-1;Rha(h);DCa(b,80852)|0;break}case 4:{f[g>>2]=(f[g>>2]|0)+-1;Rha(h);DCa(b,117205)|0;f[g>>2]=(f[g>>2]|0)+1;Rha(h);break}default:{d=10;break a}}Ema(134008,10)|0}e=e+1|0}if((d|0)==3){u=k;return b|0}else if((d|0)==10)hb();return 0}function mr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;g=i+24|0;h=i;a1a(g);d=f[c+12>>2]|0;if((d|0)!=0?(oz(h,b,d),f[g>>2]=f[h>>2],f[g+4>>2]=f[h+4>>2],f[g+8>>2]=f[h+8>>2],f[g+12>>2]=f[h+12>>2],f[g+16>>2]=f[h+16>>2],K0a(g)|0):0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else e=4;a:do if((e|0)==4){d=f[c+16>>2]|0;do if(d|0){oz(h,b,d);if(K0a(h)|0){f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2];break a}h=Jia(h)|0;if((h|0)==0&(I|0)==0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break a}else break}while(0);f[g+16>>2]=f[c+8>>2];f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}while(0);u=i;return}function nr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+20|0;k=o+12|0;d=o+4|0;e=o+16|0;l=o+8|0;m=o;n=a+4|0;c=kVa(f[n>>2]|0)|0;f[k>>2]=1;Bab(d);if(qRa(Or(b,1)|0)|0){f[k>>2]=2;L1a(j,lF(Or(b,1)|0)|0);i=f[j>>2]|0;f[d>>2]=i;d=i}else{k1a(j,117210);i=f[j>>2]|0;f[d>>2]=i;d=i}i=a+112|0;f[e>>2]=d;f[j>>2]=f[e>>2];d=uC(i,j)|0;e=oG(b,k)|0;g=f[k>>2]|0;h=ZQa(a,Or(b,g)|0)|0;f[c+8>>2]=h;h=g+2|0;f[k>>2]=h;p=Oo(a,Or(b,g+1|0)|0)|0;f[c+12>>2]=p;if(h>>>0<(bYa(b)|0)>>>0){f[k>>2]=g+3;p=Oo(a,Or(b,h)|0)|0;f[c+16>>2]=p}l5(c,e);f[l>>2]=d;f[j>>2]=f[l>>2];bY(i,j);f[m>>2]=d;f[j>>2]=f[m>>2];if(OM(c,j)|0){p=eSa(f[n>>2]|0)|0;f[p+8>>2]=d;faa(p+12|0,c);aKa(p,f[c+4>>2]|0);c=p}u=o;return c|0}function or(a,b){a=a|0;b=b|0;var c=0,d=0;a:do if(f[33160]|0){c=Kma()|0;while(1){if(!c)break a;if((a|0)==(b|0))break;f[c+16>>2]=f[a+16>>2];f[c+20>>2]=f[a+20>>2];d=IT(c)|0;iW(c);c=f[a+4>>2]|0;if(!c)while(1){c=f[a+8>>2]|0;if((f[c>>2]|0)==(a|0)){a=c;break}else a=c}else{a=c;while(1){c=f[a>>2]|0;if(!c)break;else a=c}}c=d}a=c;while(1){c=f[a+8>>2]|0;if(!c)break;a=c}s_(a);a=b}while(0);c=a;while(1){if((c|0)==(b|0))break;cH(c+16|0);a=f[c+4>>2]|0;if(!a)while(1){a=f[c+8>>2]|0;if((f[a>>2]|0)==(c|0))break;else c=a}else while(1){c=f[a>>2]|0;if(!c)break;else a=c}c=a}return}function pr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+80|0;d=h+48|0;e=h+24|0;g=h;Ow(d,b,f[c+8>>2]|0);if(!(K0a(d)|0)){Ow(e,b,f[c+12>>2]|0);if(!(K0a(e)|0)){Ow(g,b,f[c+16>>2]|0);if(K0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{g=(TRa(g)|0)==0;g=g?e:d;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=h;return}function qr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;k=c;j=o;n=a+11|0;e=b[n>>0]|0;g=e<<24>>24<0;if(g){i=(f[a+8>>2]&2147483647)+-1|0;m=f[a+4>>2]|0}else{i=10;m=e&255}l=d-k|0;do if(l|0){if(g){g=f[a>>2]|0;h=f[a+4>>2]|0}else{g=a;h=e&255}if(fWa(c,g,g+h|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;pQ(j,c,d);n=b[j+11>>0]|0;m=n<<24>>24<0;x=0;ja(49,a|0,(m?f[j>>2]|0:j)|0,(m?f[j+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){o=Ia()|0;MTa(j);Ua(o|0)}else{MTa(j);break}}if((i-m|0)>>>0>>0){wM(a,i,m+l-i|0,m,m);e=b[n>>0]|0}if(e<<24>>24<0)i=f[a>>2]|0;else i=a;h=d+(m-k)|0;g=i+m|0;e=c;while(1){if((e|0)==(d|0))break;Z0a(g,b[e>>0]|0);g=g+1|0;e=e+1|0}Z0a(i+h|0,0);e=m+l|0;if((b[n>>0]|0)<0){f[a+4>>2]=e;break}else{b[n>>0]=e;break}}while(0);u=o;return a|0}function rr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;a:do if(!a){d=f[c>>2]|0;a=f[d>>2]|0;if(!a)d=0;else{e=d;d=0;do{if(a>>>0>127){a=_F(i,a)|0;if((a|0)==-1){d=-1;break a}}else a=1;d=a+d|0;e=e+4|0;a=f[e>>2]|0}while((a|0)!=0)}}else{b:do if(d>>>0>3){e=d;g=f[c>>2]|0;while(1){h=f[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=_F(a,h)|0;if((h|0)==-1){d=-1;break a}a=a+h|0;e=e-h|0}else{b[a>>0]=h;a=a+1|0;e=e+-1|0;g=f[c>>2]|0}g=g+4|0;f[c>>2]=g;if(e>>>0<=3)break b}b[a>>0]=0;f[c>>2]=0;d=d-e|0;break a}else e=d;while(0);if(e){g=f[c>>2]|0;while(1){h=f[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=20;break}h=_F(i,h)|0;if((h|0)==-1){d=-1;break a}if(e>>>0>>0){g=23;break}_F(a,f[g>>2]|0)|0;a=a+h|0;e=e-h|0}else{b[a>>0]=h;a=a+1|0;e=e+-1|0;g=f[c>>2]|0}g=g+4|0;f[c>>2]=g;if(!e)break a}if((g|0)==20){b[a>>0]=0;f[c>>2]=0;d=d-e|0;break}else if((g|0)==23){d=d-e|0;break}}}while(0);u=j;return d|0}function sr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110733)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=c+12|0;oGa(a,f[j>>2]|0);a:do if(((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,oGa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)?(j=c+20|0,oGa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0){d=a+28|0;Gv(f[d>>2]|0,-2)|0;switch(f[c+24>>2]|0){case 1:{Gv(f[d>>2]|0,1)|0;FX(a,4,4,0);break a}case 2:{Gv(f[d>>2]|0,2)|0;FX(a,8,8,0);break a}default:hb()}}while(0);u=i;return}function tr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;switch(f[c>>2]|0){case 1:{tS(a,482,b);d=11;break}case 2:{tS(a,483,b);e=(vSa(c)|0)+16|0;if(f[e>>2]|0){tS(a,481,(vSa(c)|0)+16|0);tS(a,484,b)}tS(a,481,(vSa(c)|0)+12|0);tS(a,485,b);tS(a,481,(vSa(c)|0)+8|0);break}case 3:{tS(a,486,b);d=11;break}case 4:{tS(a,487,b);d=11;break}case 5:{tS(a,488,b);d=11;break}case 20:{tS(a,489,b);d=11;break}case 23:{tS(a,489,b);d=11;break}default:d=11}if((d|0)==11?(gZ(a,b),(f[c>>2]|0)==3):0)tS(a,490,b);return}function ur(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;n=m+8|0;g=m+4|0;h=m;f[n>>2]=0;i=n+4|0;f[i>>2]=0;j=n+8|0;f[j>>2]=0;l=a+8|0;k=f[a+12>>2]|0;e=f[l>>2]|0;a:while(1){if((e|0)==(k|0)){c=3;break}b=f[e>>2]|0;f[g>>2]=b;do if((b|0)==2){f[h>>2]=1;b=f[i>>2]|0;c=f[j>>2]|0;if(b>>>0>>0){f[b>>2]=1;d=b+4|0;f[i>>2]=d;b=c}else{x=0;ua(1872,n|0,h|0);d=x;x=0;if(d&1){c=13;break a}d=f[i>>2]|0;b=f[j>>2]|0}f[h>>2]=1;if(d>>>0>=b>>>0){x=0;ua(1872,n|0,h|0);d=x;x=0;if(d&1){c=14;break a}}else{f[d>>2]=1;f[i>>2]=d+4}}else{c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(260,n|0,g|0);d=x;x=0;if(d&1){c=18;break a}else break}else{f[c>>2]=b;f[i>>2]=c+4;break}}while(0);e=e+4|0}if((c|0)==3){d9(n,l);b=a+4|0;if((f[b>>2]|0)==2)f[b>>2]=1;zSa(n);u=m;return}else if((c|0)==13)b=Ia()|0;else if((c|0)==14)b=Ia()|0;else if((c|0)==18)b=Ia()|0;zSa(n);Ua(b|0)}function vr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=c;e=0;f=a;a:while(1){if(!(e>>>0>>0&f>>>0>>0))break;k=b[f>>0]|0;j=k&255;do if(k<<24>>24<=-1){if((k&255)<194)break a;if((k&255)<224){if((l-f|0)<2)break a;if((b[f+1>>0]&-64)<<24>>24!=-128)break a;f=f+2|0;break}if((k&255)<240){if((l-f|0)<3)break a;g=b[f+1>>0]|0;h=b[f+2>>0]|0;switch(k<<24>>24){case -32:{if(!((g&-32)<<24>>24==-96&(h&-64)<<24>>24==-128))break a;break}case -19:{if(!((g&-32)<<24>>24==-128&(h&-64)<<24>>24==-128))break a;break}default:if(!((g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a}f=f+3|0;break}if((k&255)>=245)break a;if((d-e|0)>>>0<2|(l-f|0)<4)break a;g=b[f+1>>0]|0;h=b[f+2>>0]|0;i=b[f+3>>0]|0;switch(k<<24>>24){case -16:{if(!((g+112&255)<48&(h&-64)<<24>>24==-128&(i&-64)<<24>>24==-128))break a;break}case -12:{if(!((g&-16)<<24>>24==-128&(h&-64)<<24>>24==-128&(i&-64)<<24>>24==-128))break a;break}default:if(!((g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128&(i&-64)<<24>>24==-128))break a}if(((g&48)<<12|j<<18&1835008)>>>0>1114111)break a;else{e=e+1|0;f=f+4|0}}else f=f+1|0;while(0);e=e+1|0}return f-a|0}function wr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=DCa(134176,110946)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;m=QOa(i)|0;oGa(a,f[m>>2]|0);YYa(i)}d=a+28|0;m=Gv(f[d>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];n4a(j,_1(a,i)|0);Yr(m,f[j>>2]|0)|0;if((f[c+4>>2]|0)==5)iTa(f[d>>2]|0);u=l;return}function xr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;j=l;i=j;f[i>>2]=c;f[i+4>>2]=d;i=l+8|0;k=a+12|0;do if(!(b[k>>0]|0))e=-1;else{e=(f[a+4>>2]|0)-(f[a>>2]|0)|0;c=DCa(zm(DCa(tm(DCa(134176,87586)|0,c,d)|0,87600)|0,e)|0,123272)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(c,g)|0;fu(c)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);nF(j,a);a:do if(b[k>>0]|0){c=a+4|0;while(1){if(e>>>0>=((f[c>>2]|0)-(f[a>>2]|0)|0)>>>0)break a;k=DCa(134176,87679)|0;m=sxa(a,e)|0;zm(DCa(Am(k,h[m>>0]|0)|0,87600)|0,e)|0;DCa(134176,87606)|0;e=e+1|0}}while(0);u=l;return a|0}function yr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;j=n;g=a+8|0;m=g+3|0;e=b[m>>0]|0;h=e<<24>>24<0;if(h){i=(f[g>>2]&2147483647)+-1|0;l=f[a+4>>2]|0}else{i=1;l=e&255}g=d-c|0;k=g>>2;do if(g|0){if(h){g=f[a>>2]|0;h=f[a+4>>2]|0}else{g=a;h=e&255}if(fWa(c,g,g+(h<<2)|0)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;hD(j,c,d);m=b[j+8+3>>0]|0;d=m<<24>>24<0;x=0;ja(96,a|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){n=Ia()|0;oTa(j);Ua(n|0)}else{oTa(j);break}}if((i-l|0)>>>0>>0){eB(a,i,l+k-i|0,l,l);e=b[m>>0]|0}if(e<<24>>24<0)e=f[a>>2]|0;else e=a;e=e+(l<<2)|0;while(1){if((c|0)==(d|0))break;L1a(e,f[c>>2]|0);e=e+4|0;c=c+4|0}L1a(e,0);c=l+k|0;if((b[m>>0]|0)<0){f[a+4>>2]=c;break}else{b[m>>0]=c;break}}while(0);u=n;return a|0}function zr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n;l=Qbb()|0;x=0;c=ia(72,l|0,f[a+20>>2]|0)|0;j=x;x=0;if(j&1){j=Ja(0)|0;y2a(j)}if(!c){e=0;d=a;j=0;while(1){x=0;c=ia(72,l|0,f[d+20>>2]|0)|0;a=x;x=0;if(a&1){m=6;break}if(c|0){m=14;break}h=d+24|0;c=f[h>>2]|0;if(!c){if(!e){c=s8(28)|0;XGa(c);g=c}else{g=e;c=j}i=f[h>>2]|0;if(!i)f[h>>2]=g;if(!i)break;e=g;d=i}else{d=c;c=j}j=c}if((m|0)==6){l=Ja(0)|0;y2a(l)}if((m|0)==14?e|0:0){Sya(e);Cbb(j)}c=zr(d,b)|0}else{b=b+7&-8;c=a+12|0;g=0;h=f[c>>2]|0;while(1){if(h>>>0>b>>>0)break;m=h<<1;f[c>>2]=m;g=1;h=m}i=a+4|0;j=f[i>>2]|0;c=j;if(!((j|0)!=(f[a>>2]|0)?(e=a+16|0,d=f[e>>2]|0,!(g|(d+b|0)>>>0>=h>>>0)):0)){d=ybb(h)|0;f[k>>2]=d;if((f[a+8>>2]|0)>>>0>c>>>0){f[j>>2]=d;c=(f[i>>2]|0)+4|0;f[i>>2]=c}else{LL(a,k);c=f[i>>2]|0}e=a+16|0;f[e>>2]=0;d=0}c=(f[c+-4>>2]|0)+d|0;f[e>>2]=d+b}u=n;return c|0}function Ar(a){a=a|0;if(!a)Ca(110558,115840,170,110563);do switch(f[a>>2]|0){case 1:{F0a(a);break}case 2:{D2a(a);break}case 3:{R1a(a);break}case 4:{E0a(a);break}case 5:{Y$a(a);break}case 6:{V1a(a);break}case 7:{V1a(a);break}case 8:{aZa(a);break}case 23:case 22:case 20:case 11:case 9:break;case 10:{I$a(a);break}case 12:{$_a(a);break}case 13:{S1a(a);break}case 14:{o1a(a);break}case 24:{a$a(a);break}case 25:{rYa(a);break}case 26:{j_a(a);break}case 27:{i_a(a);break}case 15:{p1a(a);break}case 16:{n1a(a);break}case 17:{Q0a(a);break}case 18:{P0a(a);break}case 19:{U1a(a);break}case 21:{T1a(a);break}default:hb()}while(0);return}function Br(){var a=0,b=0,c=0;IU();f[33458]=47132;f[33460]=47152;f[33459]=0;Laa(133840,134512);f[33478]=0;f[33479]=-1;HU();f[33480]=47172;f[33482]=47192;f[33481]=0;Laa(133928,134576);f[33500]=0;f[33501]=-1;KM(134640,46452,134688);f[33502]=31180;f[33503]=31200;Laa(134012,134640);f[33521]=0;f[33522]=-1;JM(134696,46452,134744);f[33523]=47212;f[33524]=47232;Laa(134096,134696);f[33542]=0;f[33543]=-1;KM(134752,46204,134800);f[33544]=31180;f[33545]=31200;Laa(134180,134752);f[33563]=0;f[33564]=-1;b=f[134176+(f[(f[33544]|0)+-12>>2]|0)+24>>2]|0;f[33586]=31180;f[33587]=31200;Laa(134348,b);f[33605]=0;f[33606]=-1;JM(134808,46204,134856);f[33565]=47212;f[33566]=47232;Laa(134264,134808);f[33584]=0;f[33585]=-1;b=f[134260+(f[(f[33565]|0)+-12>>2]|0)+24>>2]|0;f[33607]=47212;f[33608]=47232;Laa(134432,b);f[33626]=0;f[33627]=-1;f[133832+(f[(f[33458]|0)+-12>>2]|0)+72>>2]=134008;f[133920+(f[(f[33480]|0)+-12>>2]|0)+72>>2]=134092;b=(f[33544]|0)+-12|0;a=134176+(f[b>>2]|0)+4|0;f[a>>2]=f[a>>2]|8192;a=(f[33565]|0)+-12|0;c=134260+(f[a>>2]|0)+4|0;f[c>>2]=f[c>>2]|8192;f[134176+(f[b>>2]|0)+72>>2]=134008;f[134260+(f[a>>2]|0)+72>>2]=134092;return}function Cr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j+8|0;h=j;do if(b[a+33>>0]|0){g=DCa(134176,110904)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;k=QOa(i)|0;Ypa(a,f[k>>2]|0);YYa(i)}Ypa(a,f[c+28>>2]|0);FS(a,c);if((f[c+4>>2]|0)==5)EM(a);u=j;return}function Dr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;d=j+16|0;e=j+12|0;k=j;i=GRa(f[a+4>>2]|0)|0;g=i+8|0;h=1;while(1){m=Or(c,h)|0;if(C7a(b[m>>0]|0)|0)break;m=yi(a,Or(c,h)|0)|0;f[e>>2]=m;f[d>>2]=f[e>>2];o8(g,d);h=h+1|0}if(Jbb(f[i+12>>2]|0)|0){e=RCa(g)|0;f[i+24>>2]=f[e>>2];REa(g);e=h+1|0;m=ZQa(a,Or(c,h)|0)|0;d=i+28|0;f[d>>2]=m;if(e>>>0<(bYa(c)|0)>>>0){f[i+32>>2]=f[d>>2];m=ZQa(a,Or(c,e)|0)|0;f[d>>2]=m}u=j;return i|0}g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;m=j7a(92761)|0;x=0;va(87,k|0,92761,m|0);m=x;x=0;if(!(m&1)){x=0;ua(261,g|0,k|0);m=x;x=0;if(m&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(k);if(e)l=10}else{d=Ia()|0;l=10}if((l|0)==10)La(g|0);Ua(d|0);return 0}function Er(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;e=l+16|0;i=l;Dh(e,f[c>>2]|0);switch(f[e+12>>2]|0){case 2:{f[c>>2]=(f[c>>2]|0)+(f[e+8>>2]|0);d=f[e>>2]|0;break}case 6:{if((Jbb(b[f[e>>2]>>0]|0)|0)<<24>>24==40){Sab(i);d=f[i>>2]|0;f[e>>2]=d}else k=4;break}default:k=4}if((k|0)==4)Ca(65838,65740,403,65883);h=IR(d)|0;cz(c);d=f[c>>2]|0;if((b[d>>0]|0)!=40)Ca(65897,65740,408,65883);f[c>>2]=d+1;e=i+12|0;g=i+8|0;a:while(1){cz(c);d=f[c>>2]|0;if((b[d>>0]|0)==41){j=d;break}Dh(i,d);if((f[e>>2]|0)!=2){k=11;break}f[c>>2]=(f[c>>2]|0)+(f[g>>2]|0);NZ(h,f[i>>2]|0);cz(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 41:{k=15;break a}case 44:break;default:{k=14;break a}}f[c>>2]=d+1}if((k|0)==11)Ca(65909,65740,414,65883);else if((k|0)==14)hb();else if((k|0)==15)j=d;f[c>>2]=j+1;YL(h,LO(a,c)|0);u=l;return h|0}function Fr(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;c=j;d=a+8|0;e=a+36|0;do if(!(vVa(f[d>>2]|0,f[e>>2]|0)|0)){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,95147,j7a(95147)|0);x=0;ua(1870,a|0,c|0);k=x;x=0;if(k&1){k=Ia()|0;MTa(c);Ua(k|0)}else{MTa(c);break}}while(0);do if(b[a+12>>0]|0){a=DCa(134176,95171)|0;a=DCa(Am(a,h[(f[f[d>>2]>>2]|0)+(f[e>>2]|0)>>0]|0)|0,87600)|0;a=DCa(zm(a,f[e>>2]|0)|0,123272)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(a,i)|0;fu(a)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);i=f[d>>2]|0;k=f[e>>2]|0;f[e>>2]=k+1;u=j;return b[(f[i>>2]|0)+k>>0]|0}function Gr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;h=l+16|0;i=l+12|0;e=l+20|0;j=l;f[i>>2]=b;k=a+208|0;g=a+216|0;if(!(f[g>>2]|0)){b=f[a>>2]|0;c=f[b+16>>2]|0;b=f[b+12>>2]|0;while(1){if((b|0)==(c|0))break;d=f[b>>2]|0;if((f[d+12>>2]|0)==3){f[e>>2]=f[g>>2];m=nZ(k,e)|0;f[m>>2]=f[d>>2]}b=b+4|0}b=0;while(1){m=f[a>>2]|0;c=f[m+48>>2]|0;if(b>>>0>=(f[m+52>>2]|0)-c>>2>>>0)break;d=f[c+(b<<2)>>2]|0;f[e>>2]=f[g>>2];m=nZ(k,e)|0;f[m>>2]=f[d>>2];b=b+1|0}b=f[i>>2]|0}if((b|0)==-1){k1a(h,118443);b=f[h>>2]|0}else{do if(!(rfa(k,b)|0)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,97846,j7a(97846)|0);x=0;ua(1870,a|0,j|0);m=x;x=0;if(m&1){m=Ia()|0;MTa(j);Ua(m|0)}else{MTa(j);break}}while(0);b=nZ(k,i)|0;b=f[b>>2]|0;f[h>>2]=b}u=l;return b|0}function Hr(a,b){a=a|0;b=b|0;var c=0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{c=gO(a,b)|0;break}case 2:{c=C8(a,b)|0;break}case 3:{c=$Sa(a,f[b+12>>2]|0)|0;break}case 4:{c=cua(a,b)|0;break}case 5:{c=cra(a,b)|0;break}case 6:{c=sO(a,b)|0;break}case 7:{c=MN(a,b)|0;break}case 8:{c=KI(a,b)|0;break}case 23:case 22:case 27:case 26:case 9:{c=0;break}case 10:{c=1;break}case 11:{c=1;break}case 12:{c=2;break}case 13:{c=DGa(a,b)|0;break}case 14:{c=Vha(a,b)|0;break}case 24:{c=100;break}case 25:{c=100;break}case 15:{c=1;break}case 16:{c=sQ(a,b)|0;break}case 17:{c=qv(a,b)|0;break}case 18:{c=M9(a,b)|0;break}case 19:{c=qUa(a,f[b+8>>2]|0)|0;break}case 20:{c=_Ua(a,f[b+8>>2]|0)|0;break}case 21:{c=100;break}default:hb()}while(0);return c|0}function Ir(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=f[e>>2]|0;p=(o|0)==(d|0);do if(p){m=(b[l+24>>0]|0)==a<<24>>24;if(!m?(b[l+25>>0]|0)!=a<<24>>24:0){n=5;break}f[e>>2]=d+1;b[d>>0]=m?43:45;f[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=b[i+11>>0]|0;if(a<<24>>24==h<<24>>24?((n<<24>>24<0?f[i+4>>2]|0:n&255)|0)!=0:0){m=f[k>>2]|0;if((m-j|0)>=160){m=0;break}e=f[g>>2]|0;f[k>>2]=m+4;f[m>>2]=e;f[g>>2]=0;m=0;break}i=l+26|0;h=0;while(1){m=l+h|0;if((h|0)==26){m=i;break}if((b[m>>0]|0)==a<<24>>24)break;else h=h+1|0}m=m-l|0;if((m|0)>23)m=-1;else{switch(c|0){case 10:case 8:{if((m|0)>=(c|0)){m=-1;break a}break}case 16:{if((m|0)>=22){if(p){m=-1;break a}if((o-d|0)>=3){m=-1;break a}if((b[o+-1>>0]|0)!=48){m=-1;break a}f[g>>2]=0;m=b[31216+m>>0]|0;f[e>>2]=o+1;b[o>>0]=m;m=0;break a}break}default:{}}m=b[31216+m>>0]|0;f[e>>2]=o+1;b[o>>0]=m;f[g>>2]=(f[g>>2]|0)+1;m=0}}while(0);return m|0}function Jr(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=f[e>>2]|0;p=(o|0)==(d|0);do if(p){m=(f[l+96>>2]|0)==(a|0);if(!m?(f[l+100>>2]|0)!=(a|0):0){n=5;break}f[e>>2]=d+1;b[d>>0]=m?43:45;f[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=b[i+11>>0]|0;if((a|0)==(h|0)?((n<<24>>24<0?f[i+4>>2]|0:n&255)|0)!=0:0){m=f[k>>2]|0;if((m-j|0)>=160){m=0;break}e=f[g>>2]|0;f[k>>2]=m+4;f[m>>2]=e;f[g>>2]=0;m=0;break}i=l+104|0;h=0;while(1){m=l+(h<<2)|0;if((h|0)==26){m=i;break}if((f[m>>2]|0)==(a|0))break;else h=h+1|0}m=m-l|0;h=m>>2;if((m|0)>92)m=-1;else{switch(c|0){case 10:case 8:{if((h|0)>=(c|0)){m=-1;break a}break}case 16:{if((m|0)>=88){if(p){m=-1;break a}if((o-d|0)>=3){m=-1;break a}if((b[o+-1>>0]|0)!=48){m=-1;break a}f[g>>2]=0;m=b[31216+h>>0]|0;f[e>>2]=o+1;b[o>>0]=m;m=0;break a}break}default:{}}m=b[31216+h>>0]|0;f[e>>2]=o+1;b[o>>0]=m;f[g>>2]=(f[g>>2]|0)+1;m=0}}while(0);return m|0}function Kr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+11|0;d=b[n>>0]|0;e=d<<24>>24<0;if(e){m=f[a+4>>2]|0;j=m>>>0<11?m:11;d=(f[a+8>>2]&2147483647)+-1|0}else{m=d&255;j=m>>>0<11?m:11;d=10}if((j-m+d|0)>>>0>>0)AB(a,d,c-j+m-d|0,m,0,j,c,124693);else{if(e)l=f[a>>2]|0;else l=a;do if((j|0)!=(c|0)){i=m-j|0;if(!i){e=j;h=0;g=124693;d=c;k=17}else{if(j>>>0>c>>>0){XTa(l,124693,c)|0;XTa(l+c|0,l+j|0,i)|0;e=j;d=c;break}do if(l>>>0<124693>>>0&(l+m|0)>>>0>124693>>>0)if((l+j|0)>>>0>124693>>>0){XTa(l,124693,j)|0;e=0;h=j;g=124693+c|0;d=c-j|0;break}else{e=j;h=0;g=124693+(c-j)|0;d=c;break}else{e=j;h=0;g=124693;d=c}while(0);k=l+h|0;XTa(k+d|0,k+e|0,i)|0;k=17}}else{e=c;h=0;g=124693;d=c;k=17}while(0);if((k|0)==17)XTa(l+h|0,g,d)|0;d=d-e+m|0;if((b[n>>0]|0)<0)f[a+4>>2]=d;else b[n>>0]=d;Z0a(l+d|0,0)}return}function Lr(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=c+44|0;j=f[i>>2]|0;n=c+24|0;o=f[n>>2]|0;if(j>>>0>>0){f[i>>2]=o;m=o}else m=j;l=h&24;a:do if((l|0)!=0?!((g|0)==1&(l|0)==24):0){if(!m){k=0;l=0}else{i=c+32|0;if((b[i+11>>0]|0)<0)i=f[i>>2]|0;l=m-i|0;k=((l|0)<0)<<31>>31}b:do switch(g|0){case 0:{i=0;j=0;break}case 1:if(!(h&8)){j=o-(f[c+20>>2]|0)|0;i=j;j=((j|0)<0)<<31>>31;break b}else{j=(f[c+12>>2]|0)-(f[c+8>>2]|0)|0;i=j;j=((j|0)<0)<<31>>31;break b}case 2:{i=l;j=k;break}default:{j=-1;i=-1;break a}}while(0);j=BOa(i|0,j|0,d|0,e|0)|0;i=I;if(!((i|0)<0|((k|0)<(i|0)|(k|0)==(i|0)&l>>>0>>0))){g=h&8;if(!((j|0)==0&(i|0)==0)){if(g|0?(f[c+12>>2]|0)==0:0){j=-1;i=-1;break}if((h&16|0)!=0&(o|0)==0){j=-1;i=-1;break}}if(g|0){f[c+12>>2]=(f[c+8>>2]|0)+j;f[c+16>>2]=m}if(h&16)f[n>>2]=(f[c+20>>2]|0)+j}else{j=-1;i=-1}}else{j=-1;i=-1}while(0);o=a;f[o>>2]=0;f[o+4>>2]=0;a=a+8|0;f[a>>2]=j;f[a+4>>2]=i;return}function Mr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=msa(c)|0;l=f[a+4>>2]|0;a:do if(l){m=l+-1|0;n=(m&l|0)==0;if(!n)if(k>>>0>>0)j=k;else j=(k>>>0)%(l>>>0)|0;else j=m&k;a=f[(f[a>>2]|0)+(j<<2)>>2]|0;if(a){i=b[c+11>>0]|0;h=i<<24>>24<0;i=h?f[c+4>>2]|0:i&255;h=h?f[c>>2]|0:c;while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;b:do if((c|0)==(k|0)){e=a+8|0;c=b[e+11>>0]|0;d=c<<24>>24<0;c=c&255;if(((d?f[a+12>>2]|0:c)|0)==(i|0)){if(d)if(!(FQa(f[e>>2]|0,h,i)|0))break a;else break;g=h;d=e;while(1){if(!c)break a;if((b[d>>0]|0)!=(b[g>>0]|0))break b;g=g+1|0;d=d+1|0;c=c+-1|0}}}else{if(!n){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0}else c=c&m;if((c|0)!=(j|0)){a=0;break a}}while(0)}}else a=0}else a=0;while(0);return a|0}function Nr(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=c;k=0;e=a;a:while(1){if(!(k>>>0>>0&e>>>0>>0))break;j=b[e>>0]|0;i=j&255;do if(j<<24>>24<=-1){if((j&255)<194)break a;if((j&255)<224){if((l-e|0)<2)break a;if((b[e+1>>0]&-64)<<24>>24!=-128)break a;e=e+2|0;break}if((j&255)<240){if((l-e|0)<3)break a;f=b[e+1>>0]|0;g=b[e+2>>0]|0;switch(j<<24>>24){case -32:{if(!((f&-32)<<24>>24==-96&(g&-64)<<24>>24==-128))break a;break}case -19:{if(!((f&-32)<<24>>24==-128&(g&-64)<<24>>24==-128))break a;break}default:if(!((f&-64)<<24>>24==-128&(g&-64)<<24>>24==-128))break a}e=e+3|0;break}if((j&255)>=245)break a;if((l-e|0)<4)break a;f=b[e+1>>0]|0;g=b[e+2>>0]|0;h=b[e+3>>0]|0;switch(j<<24>>24){case -16:{if(!((f+112&255)<48&(g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a;break}case -12:{if(!((f&-16)<<24>>24==-128&(g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a;break}default:if(!((f&-64)<<24>>24==-128&(g&-64)<<24>>24==-128&(h&-64)<<24>>24==-128))break a}if(((f&48)<<12|i<<18&1835008)>>>0>1114111)break a;else e=e+4|0}else e=e+1|0;while(0);k=k+1|0}return e-a|0}function Or(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+32|0;g=d+12|0;h=d;do if(C7a(b[a>>0]|0)|0){g=(xF(a)|0)+4|0;if((Jbb(f[g>>2]|0)|0)>>>0>c>>>0){h=ODa(xF(a)|0,c)|0;u=d;return f[h>>2]|0}e=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=j7a(99378)|0;x=0;va(87,h|0,99378,g|0);g=x;x=0;if(!(g&1)){x=0;wa(138,e|0,h|0,f[a+28>>2]|0,f[a+32>>2]|0);g=x;x=0;if(g&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(h);if(!d)break}else c=Ia()|0;La(e|0)}else{e=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;h=j7a(99364)|0;x=0;va(87,g|0,99364,h|0);h=x;x=0;if(!(h&1)){x=0;wa(138,e|0,g|0,f[a+28>>2]|0,f[a+32>>2]|0);h=x;x=0;if(h&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(g);if(!d)break}else c=Ia()|0;La(e|0)}while(0);Ua(c|0);return 0}function Pr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;j=l;f[j>>2]=c;g=l+4|0;k=a+12|0;do if(!(b[k>>0]|0))d=-1;else{d=(f[a+4>>2]|0)-(f[a>>2]|0)|0;c=DCa(zm(DCa(Am(DCa(134176,87609)|0,c)|0,87600)|0,d)|0,123272)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,m=x,x=0,!(m&1)):0){OCa(g);Wq(c,i)|0;fu(c)|0;break}m=Ia()|0;OCa(g);Ua(m|0)}while(0);rK(j,a);a:do if(b[k>>0]|0){c=a+4|0;while(1){if(d>>>0>=((f[c>>2]|0)-(f[a>>2]|0)|0)>>>0)break a;k=DCa(134176,87679)|0;m=sxa(a,d)|0;zm(DCa(Am(k,h[m>>0]|0)|0,87600)|0,d)|0;DCa(134176,87606)|0;d=d+1|0}}while(0);u=l;return a|0}function Qr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;i=j;do if(b[a+12>>0]|0){h=DCa(134176,111057)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);e=lx(a)|0;d=c+4|0;f[d>>2]=e;e=dk(a)|0;f[c+8>>2]=e;e=lp(a,f[d>>2]|0)|0;f[c+12>>2]=e;e=a+204|0;if((f[e>>2]|0)==5){k=lp(a,f[d>>2]|0)|0;f[c+16>>2]=k}l5(c,f[d>>2]|0);do if((f[e>>2]|0)!=11){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,97688,j7a(97688)|0);x=0;ua(1870,a|0,i|0);k=x;x=0;if(k&1){k=Ia()|0;MTa(i);Ua(k|0)}else{MTa(i);break}}while(0);u=j;return}function Rr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110753)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=c+16|0;Ypa(a,f[j>>2]|0);do if(((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+20|0,Ypa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)?(j=c+24|0,Ypa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)if((f[c+4>>2]|0)==5){EM(a);break}else{FS(a,c);break}while(0);u=i;return}function Sr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;e=k;l=k+20|0;i=k+16|0;j=a+16|0;g=a+36|0;d=Jbb(f[g>>2]|0)|0;f[l>>2]=f[b+24>>2];f[e>>2]=f[l>>2];d=jJ(d,e)|0;do if((g2a(f[d+4>>2]|0,f[33036]|0)|0?g2a(f[d+8>>2]|0,f[33041]|0)|0:0)?(h=b+8|0,c=ODa(h,1)|0,c=n$a(f[c>>2]|0)|0,c|0):0){b=c+8|0;pqa(e,2.0);if(yda(b,e)|0){h=ODa(h,0)|0;h=f[h>>2]|0;l=Jbb(f[a+32>>2]|0)|0;IK(e,h,l,Jbb(f[g>>2]|0)|0);l=f[g>>2]|0;Jbb(l)|0;_0a(i,l);l=f[e+4>>2]|0;i=f[i>>2]|0;l=Kpa(i,65,l,SKa(i,f[e>>2]|0,f[l+4>>2]|0)|0)|0;GVa(f[j>>2]|0,l)|0;break}pqa(e,.5);if(yda(b,e)|0){l=f[g>>2]|0;Jbb(l)|0;_0a(e,l);l=ODa(h,0)|0;l=rBa(f[e>>2]|0,19,f[l>>2]|0)|0;GVa(f[j>>2]|0,l)|0}}while(0);u=k;return}function Tr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0,h=0,i=0,j=0.0;h=u;u=u+5024|0;c=h+2516|0;i=h;d=IZa(Jbb(f[a+32>>2]|0)|0)|0;a:do if(d>>>0<2)Ei(a,b);else{g=X(d+-1|0,d)|0;Iia(c,a);hv(i,c,g>>>0<20?g:20);c=i+4|0;g=f[f[c>>2]>>2]|0;Jbb(g)|0;e=+qXa(+p[g+16>>3]);while(1){x=0;ta(509,i|0);g=x;x=0;if(g&1){d=6;break}g=f[f[c>>2]>>2]|0;Jbb(g)|0;j=e;e=+qXa(+p[g+16>>3]);if(e==j){d=9;break}}do if((d|0)==6)c=Ia()|0;else if((d|0)==9){x=0;va(173,a|0,g|0,b|0);b=x;x=0;if(b&1){c=Ia()|0;break}else{Aja(i);break a}}while(0);Aja(i);Ua(c|0)}while(0);u=h;return}function Ur(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+96|0;d=j+64|0;k=j+84|0;e=j+40|0;g=j;h=j+24|0;i=j+80|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;wa(77,e|0,b|0,c+8|0,k|0);l=x;x=0;a:do if(l&1)d=Ia()|0;else{do if(!(K0a(e)|0)){l=f[b+4>>2]|0;f[i>>2]=f[c+24>>2];x=0;f[d>>2]=f[i>>2];wa(78,h|0,l|0,d|0,k|0);l=x;x=0;if(l&1){d=Ia()|0;break a}else{f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];wAa(g,d);f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2];break}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}while(0);zSa(k);u=j;return}while(0);zSa(k);Ua(d|0)}function Vr(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+48|0;d=g+16|0;e=g;Ou(d,b,f[c+8>>2]|0);do if(!(K0a(d)|0))if(!(TRa(d)|0)){c=f[c+16>>2]|0;if(!c){a1a(a);break}else{Ou(a,b,c);break}}else{Ou(a,b,f[c+12>>2]|0);if(K0a(a)|0)break;if(f[c+16>>2]|0)break;EXa(e);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];break}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}while(0);u=g;return}function Wr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;x=0;va(150,d|0,a|0,0);g=x;x=0;a:do if(g&1){d=Ja(0)|0;e=a;g=a;h=12}else b:do if(b[d>>0]|0){d=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;e=d+12|0;g=f[e>>2]|0;if((g|0)==(f[d+16>>2]|0)){x=0;d=ga(f[(f[d>>2]|0)+40>>2]|0,d|0)|0;g=x;x=0;if(!(g&1))h=6}else{f[e>>2]=g+1;d=d7a(b[g>>0]|0)|0;h=6}do if((h|0)==6)if(g2a(d,-1)|0){c=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,c|0,f[c+16>>2]|6|0);c=x;x=0;if(c&1)break;else break b}else{g=d7a(d)|0;b[c>>0]=g;break b}while(0);d=Ja(0)|0;e=a;g=a;h=12;break a}while(0);while(0);do if((h|0)==12){Fa(d|0)|0;x=0;ta(450,e+(f[(f[g>>2]|0)+-12>>2]|0)|0);h=x;x=0;if(!(h&1)){Ga();break}d=Ia()|0;x=0;sa(6);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}else Ua(d|0)}while(0);u=i;return a|0}function Xr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=DCa(134176,110991)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(h);Wq(g,e)|0;fu(g)|0;break}j=Ia()|0;OCa(h);Ua(j|0)}while(0);d=bP(f[a+36>>2]|0,6,c)|0;f[h>>2]=d;e=a+4|0;g=f[e>>2]|0;if(g>>>0<(f[a+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else LL(a,h);d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))LL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}iv(a,f[c+12>>2]|0);SA(a,c);u=i;return}function Yr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;e=l;k=a+12|0;do if(!(b[k>>0]|0))d=-1;else{d=(f[a+4>>2]|0)-(f[a>>2]|0)|0;g=DCa(zm(DCa(zm(DCa(134176,87288)|0,c)|0,87600)|0,d)|0,123272)|0;dYa(e,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;i=ia(73,f[e>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,j=ia(f[(f[i>>2]|0)+28>>2]|0,i|0,10)|0,m=x,x=0,!(m&1)):0){OCa(e);Wq(g,j)|0;fu(g)|0;break}m=Ia()|0;OCa(e);Ua(m|0)}while(0);bM(c,a);a:do if(b[k>>0]|0){e=a+4|0;while(1){if(d>>>0>=((f[e>>2]|0)-(f[a>>2]|0)|0)>>>0)break a;k=DCa(134176,87679)|0;m=sxa(a,d)|0;zm(DCa(Am(k,h[m>>0]|0)|0,87600)|0,d)|0;DCa(134176,87606)|0;d=d+1|0}}while(0);u=l;return a|0}function Zr(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;Ema(f[a>>2]|0,40)|0;MXa(e,f[a+28>>2]|0,f[a>>2]|0);_m(e,c);_Ba(a);QP(a,f[c+8>>2]|0);e=a+20|0;d=f[c+12>>2]|0;if((((b[e>>0]|0)==0?zab(f[d>>2]|0)|0:0)?(h=(v$a(d)|0)+8|0,Oab(f[h>>2]|0)|0):0)?(h=(v$a(d)|0)+16|0,(Jbb(f[h>>2]|0)|0)==1):0){h=RCa((v$a(d)|0)+12|0)|0;QP(a,f[h>>2]|0)}else QP(a,d);c=f[c+16>>2]|0;do if(c|0){if((((b[e>>0]|0)==0?zab(f[c>>2]|0)|0:0)?(h=(v$a(c)|0)+8|0,Oab(f[h>>2]|0)|0):0)?(h=(v$a(c)|0)+16|0,(Jbb(f[h>>2]|0)|0)==1):0){h=RCa((v$a(c)|0)+12|0)|0;QP(a,f[h>>2]|0);break}QP(a,c)}while(0);pfa(a);if(b[e>>0]|0)DCa(f[a>>2]|0,75677)|0;u=g;return}function _r(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m;k=kQa(b)|0;l=a+36|0;pha(l,k);d=f[l>>2]|0;c=(f[a+40>>2]|0)-d>>2;while(1){if((c|0)<=0)break;i=d;f[i>>2]=0;c=c+-1|0;d=i+4|0}d=a+48|0;pha(d,k);d=f[d>>2]|0;c=(f[a+52>>2]|0)-d>>2;while(1){if((c|0)<=0)break;i=d;f[i>>2]=0;c=c+-1|0;d=i+4|0}h=a+24|0;Rs(h,k);e=f[h>>2]|0;d=BZa(b)|0;g=e;if((d|0)>-1)c=d>>>5;else c=(d+-31|0)/32|0;c=(g+(c<<2)-e<<3)+(d&31)|0;if(!c)i=h;else{f[j>>2]=e;f[j+4>>2]=0;XS(j,c);i=h;g=f[h>>2]|0}c=BZa(b)|0;if((c|0)>-1)e=c>>>5;else e=(c+-31|0)/32|0;c=c&31;d=f[a+28>>2]|0;d=(d-(e<<5)&-32)+((d&31)-c)|0;if(d|0){f[j>>2]=g+(e<<2);f[j+4>>2]=c;hT(j,d)}zL(a,b+36|0);c=0;while(1){if((c|0)==(k|0))break;if(!(f[(f[l>>2]|0)+(c<<2)>>2]|0)){j=(f[i>>2]|0)+(c>>>5<<2)|0;f[j>>2]=f[j>>2]&~(1<<(c&31))}c=c+1|0}u=m;return}function $r(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;j=l+12|0;g=l;h=l+24|0;i=f[b>>2]|0;d=i;a:do if(v2a(f[i+4>>2]|0)|0){e=a+40|0;i=a+44|0;c=f[i>>2]|0;if((c|0)==(f[a+48>>2]|0))LL(e,b);else{f[c>>2]=d;f[i>>2]=(f[i>>2]|0)+4}iR(j,e);c=f[a+32>>2]|0;Jbb(c)|0;x=0;c=ia(82,j|0,c|0)|0;d=x;x=0;do if(d&1)k=12;else{if(!c){x=0;ua(167,g|0,e|0);e=x;x=0;if(e&1){k=12;break}x=0;c=ga(229,g|0)|0;e=x;x=0;if(e&1){c=Ia()|0;zSa(g);break}zSa(g);zSa(j);if(c)c=0;else{_0a(h,Jbb(f[a+36>>2]|0)|0);c=lNa(f[h>>2]|0,f[b>>2]|0)|0;f[b>>2]=c;c=1}}else{zSa(j);c=0}f[i>>2]=(f[i>>2]|0)+-4;break a}while(0);if((k|0)==12)c=Ia()|0;zSa(j);Ua(c|0)}else c=0;while(0);u=l;return c|0}function as(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=u;u=u+16|0;c=g+12|0;h=g;d=a+16|0;e=f[d>>2]|0;if(e|0){Wr(e,c)|0;switch(b[c>>0]|0){case 34:{f[a+20>>2]=0;break}case 44:{l=a+20|0;m=(bp(f[d>>2]|0)|0)+(f[l>>2]|0)|0;j=a+24|0;k=(bp(f[d>>2]|0)|0)+(f[j>>2]|0)|0;e=a+28|0;c=(bp(f[d>>2]|0)|0)+(f[e>>2]|0)|0;i=a+32|0;h=(bp(f[d>>2]|0)|0)+(f[i>>2]|0)|0;f[l>>2]=m;f[j>>2]=k;f[e>>2]=c;f[i>>2]=h;break}default:{d=Ea(12)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;m=j7a(97744)|0;x=0;va(87,h|0,97744,m|0);m=x;x=0;if(!(m&1)){x=0;ua(1882,d|0,h|0);m=x;x=0;if(m&1)c=1;else{x=0;va(98,d|0,34672,495);x=0;c=0}a=Ia()|0;MTa(h);if(c)i=9}else{a=Ia()|0;i=9}if((i|0)==9)La(d|0);Ua(a|0)}}}u=g;return}function bs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;h=n+12|0;l=n+8|0;m=n;j=n+4|0;c=a+44|0;k=b+24|0;if((sB(f[c>>2]|0,k)|0?(f[b+4>>2]|0)!=5:0)?(d=a+32|0,i=f[d>>2]|0,Jbb(i)|0,f2a(f[k>>2]|0,f[i>>2]|0)|0):0){i=a+36|0;g=f[i>>2]|0;Jbb(g)|0;_0a(h,g);g=vwa(f[h>>2]|0,b)|0;GVa(f[a+16>>2]|0,g)|0;a=f[c>>2]|0;b=f[d>>2]|0;Jbb(b)|0;if(!(sB(a+20|0,b)|0))Ca(109946,109873,160,110003);e=zl(a+20|0,b)|0;d=ODa(g+12|0,0)|0;f[l>>2]=d;b=Jbb(f[i>>2]|0)|0;f[j>>2]=f[k>>2];f[h>>2]=f[j>>2];b=$I(b,h)|0;f[m>>2]=b;a=e+4|0;c=f[a>>2]|0;if(c>>>0<(f[e+8>>2]|0)>>>0){MXa(c,d,b);f[a>>2]=(f[a>>2]|0)+8}else yF(e,l,m)}u=n;return}function cs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;a=yb(112572)|0;if(!a){DCa(134176,112589)|0;hb()}k1a(i,a);e=DCa(134176,112629)|0;h=f[i>>2]|0;DCa(Bfa(e,h)|0,112641)|0;e=f[c+40>>2]|0;g=c+144|0;a=0;d=f[c+36>>2]|0;while(1){if((d|0)==(e|0))break;b=f[d>>2]|0;if(f2a(f[b>>2]|0,h)|0){f[b+24>>2]=f[b+20>>2];b=DSa(g)|0;f[(f[d>>2]|0)+36>>2]=b}else a=1;d=d+4|0}if(!a){DCa(134176,112643)|0;hb()}b=f[c+100>>2]|0;d=c+104|0;a=f[d>>2]|0;while(1){if((a|0)==(b|0))break;h=a+-16|0;P_a(h);a=h}f[d>>2]=b;b=f[c+76>>2]|0;d=c+80|0;a=f[d>>2]|0;while(1){if((a|0)==(b|0))break;h=a+-16|0;P_a(h);a=h}f[d>>2]=b;d=f[c+24>>2]|0;e=c+28|0;a=f[e>>2]|0;while(1){if((a|0)==(d|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b)}f[e>>2]=d;h=s8(12)|0;j1a(h);i=f[i>>2]|0;f[h>>2]=i;f[h+4>>2]=i;f[h+8>>2]=0;Zs(c,h);u=j;return}function ds(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=h+4|0;f[e>>2]=b;d=b;if(sQa(f[a+116>>2]|0,f[b+8>>2]|0)|0?!(qVa(a)|0):0){if(!(v2a(f[(f[b+12>>2]|0)+4>>2]|0)|0))Ca(76232,76196,402,76266);b=a+108|0;c=f[b>>2]|0;if((c|0)==(f[a+112>>2]|0))LL(a+104|0,e);else{f[c>>2]=d;f[b>>2]=(f[b>>2]|0)+4}c=f[a+136>>2]|0;b=a+64|0;f[g>>2]=f[e>>2];d=em(b,g)|0;f[d>>2]=c;d=f[e>>2]|0;b=em(b,d+12|0)|0;f[b>>2]=d;b=Lk(a,f[(f[e>>2]|0)+12>>2]|0)|0;f[g>>2]=b;d=$l(a+24|0,e)|0;f[d>>2]=b;f[(f[a+140>>2]|0)+(f[(f[e>>2]|0)+8>>2]<<2)>>2]=b;b=a+84|0;if(!(Wz(b,g)|0)){e=f[e>>2]|0;g=Zl(b,g)|0;f[g>>2]=e}}u=h;return a|0}function es(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;i=j+24|0;d=j;a1a(a);EXa(i);e=f[c+32>>2]|0;if(e){Ow(d,b,e);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];if(!(K0a(a)|0)){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];h=a;g=5}}else{h=a;g=5}if((g|0)==5?(Ow(d,b,f[c+28>>2]|0),f[h>>2]=f[d>>2],f[h+4>>2]=f[d+4>>2],f[h+8>>2]=f[d+8>>2],f[h+12>>2]=f[d+12>>2],f[h+16>>2]=f[d+16>>2],!(K0a(a)|0)):0){d=Jia(a)|0;g=I;b=f[c+24>>2]|0;if((g|0)>-1|(g|0)==-1&d>>>0>4294967295?(Jbb(f[c+12>>2]|0)|0)>>>0>d>>>0:0){b=ODa(c+8|0,d)|0;b=f[b>>2]|0}f[a+16>>2]=b;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2]}u=j;return}function fs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+48|0;j=n+16|0;k=n+32|0;l=n;m=a+44|0;if(!(f[m>>2]|0)){XFa(j,c);i=f[j>>2]|0;f[j>>2]=0;d=f[m>>2]|0;f[m>>2]=i;if(d|0)Cbb(d);f[j>>2]=0}e=c+48|0;g=(f[c+52>>2]|0)-(f[e>>2]|0)>>2;d=0;while(1){if((d|0)==(g|0))break;h=(f[e>>2]|0)+(d<<2)|0;i=(f[h>>2]|0)+4|0;if((f[i>>2]|0)==2){f[i>>2]=1;i=s8(16)|0;o=f[h>>2]|0;f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];f[i+12>>2]=f[o+12>>2];f[k>>2]=f[f[h>>2]>>2];f[j>>2]=f[k>>2];h=Sw(j)|0;f[i>>2]=h;Ys(c,i)}d=d+1|0}o=s8(16)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;f[o+12>>2]=0;Eab(o);f[o+4>>2]=1;L1a(j,f[33071]|0);f[o>>2]=f[j>>2];m=f[m>>2]|0;t$a(l,0);f[j>>2]=f[l>>2];f[j+4>>2]=f[l+4>>2];f[j+8>>2]=f[l+8>>2];f[j+12>>2]=f[l+12>>2];m=e0(m,j)|0;f[o+8>>2]=m;b[o+12>>0]=1;Ys(c,o);wD(a+16|0,c);u=n;return}function gs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+12|0;i=j;do if(b[a+12>>0]|0){d=DCa(134176,110885)|0;d=zm(d,f[a+36>>2]|0)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(d,h)|0;fu(d)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);Dx(a,97193);d=nq(a)|0;h=c+8|0;f[h>>2]=d;g=a+124|0;e=f[g>>2]|0;do if(d>>>0>=(kQa(e)|0)>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,97203,j7a(97203)|0);x=0;ua(1870,a|0,i|0);k=x;x=0;if(k&1){k=Ia()|0;MTa(i);Ua(k|0)}else{MTa(i);e=f[g>>2]|0;d=f[h>>2]|0;break}}while(0);k=s9(e,d)|0;f[c+4>>2]=k;u=j;return}function hs(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;m=o+12|0;h=o+8|0;i=c;j=o+4|0;k=o;g=Jbb(c)|0;do if(Oab(f[c>>2]|0)|0){e=uPa(g)|0;e=f[e>>2]|0;f[m>>2]=e;if(qBa(d,m)|0){n=11;break}c=a+100|0;if((gV(c,e)|0)==(a+104|0))Ca(64798,51387,559,64846);else{l=pU(c,m)|0;l=lqa(f[l>>2]|0)|0;break}}else if((Hea(g,f[33281]|0)|0?(l=n0a(c,1)|0,l=f[l>>2]|0,Jbb(l)|0,Oab(f[l>>2]|0)|0):0)?(e=n0a(c,1)|0,e=uPa(Jbb(f[e>>2]|0)|0)|0,e=gV(a+112|0,f[e>>2]|0)|0,(e|0)!=(a+116|0)):0)l=f[e+28>>2]|0;else n=11;while(0);if((n|0)==11){f[j>>2]=i;f[k>>2]=f[a+132>>2];l=(b[a+98>>0]|0)!=0;f[h>>2]=f[j>>2];f[m>>2]=f[k>>2];l=zg(h,d,0,m,l)|0}u=o;return l|0}function is(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;j=i+4|0;h=i;d=f[a>>2]|0;c=1;e=d;while(1){if(!c){g=5;break}c=b[e>>0]|0;if(!(c<<24>>24))break;c=p1(c)|0;e=e+1|0}a:do if((g|0)==5){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}while(1){c=b[d>>0]|0;if(!(c<<24>>24)){g=10;break}if(p1(c)|0){x=0;ua(82,j|0,c|0);g=x;x=0;if(g&1){g=13;break}}else{x=0;ua(82,j|0,92);g=x;x=0;if(g&1){g=13;break}c=c<<24>>24;g=I2a(c>>4)|0;x=0;ua(82,j|0,g|0);g=x;x=0;if(g&1){g=13;break}g=I2a(c&15)|0;x=0;ua(82,j|0,g|0);g=x;x=0;if(g&1){g=13;break}}d=d+1|0}do if((g|0)==10){x=0;ua(83,h|0,j|0);g=x;x=0;if(g&1){c=Ia()|0;break}else{f[a>>2]=f[h>>2];MTa(j);break a}}else if((g|0)==13)c=Ia()|0;while(0);MTa(j);Ua(c|0)}while(0);u=i;return}function js(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k+12|0;i=k;do if(b[a+12>>0]|0){j=DCa(134176,110863)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(h);Wq(j,g)|0;fu(j)|0;break}l=Ia()|0;OCa(h);Ua(l|0)}while(0);Dx(a,97143);l=nq(a)|0;f[c+8>>2]=l;do if(l>>>0>=(kQa(f[a+124>>2]|0)|0)>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,97173,j7a(97173)|0);x=0;ua(1870,a|0,i|0);l=x;x=0;if(l&1){l=Ia()|0;MTa(i);Ua(l|0)}else{MTa(i);break}}while(0);l=dk(a)|0;f[c+12>>2]=l;f[c+4>>2]=f[l+4>>2];gLa(c,d<<24>>24==34);Aia(c);u=k;return}function ks(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;e=k+8|0;d=k+4|0;i=k;j=a+44|0;a:do if(b[(f[j>>2]|0)+1>>0]|0){g=a+36|0;l=Jbb(f[g>>2]|0)|0;h=c+24|0;f[d>>2]=f[h>>2];f[e>>2]=f[d>>2];d=Xma(l,e)|0;if(!(ara(a,(d|0)!=0,c,85056)|0)){l=Jbb(f[g>>2]|0)|0;f[i>>2]=f[h>>2];f[e>>2]=f[i>>2];if(!(fna(l,e)|0))break;if(b[(f[j>>2]|0)+8>>0]|0)break;DCa(YNa(a)|0,85079)|0;break}g=c+8|0;e=c+12|0;l=Jbb(f[e>>2]|0)|0;h=d+8|0;if(ara(a,(l|0)==((f[d+12>>2]|0)-(f[h>>2]|0)>>2|0),c,84924)|0){d=0;while(1){if(d>>>0>=(Jbb(f[e>>2]|0)|0)>>>0)break a;l=ODa(g,d)|0;if(!(Dga(a,f[(f[l>>2]|0)+4>>2]|0,f[(f[h>>2]|0)+(d<<2)>>2]|0,c)|0)?(b[(f[j>>2]|0)+8>>0]|0)==0:0)DCa(zm(DCa(YNa(a)|0,84981)|0,d)|0,87606)|0;d=d+1|0}}}while(0);u=k;return}function ls(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;m=l;g=(f[b+4>>2]|0)-(f[b>>2]|0)|0;h=g>>2;_Ya(m);x=0;ua(588,m|0,h|0);k=x;x=0;if(k&1)d=Ia()|0;else{e=f[m>>2]|0;d=0;while(1){if((d|0)==(h|0))break;f[e+(f[(f[c>>2]|0)+(d<<2)>>2]<<2)>>2]=d;d=d+1|0}x=0;k=ga(212,24)|0;j=x;x=0;do if(!(j&1)?(_Ya(k),x=0,ua(3135,k|0,b|0),j=x,x=0,!(j&1)):0){if(!g){x=0;wa(71,115483,115383,487,115493);x=0;break}d=BZa(Jbb(f[(f[a>>2]|0)+32>>2]|0)|0)|0;i=h+-1|0;j=f[m>>2]|0;while(1){if(d>>>0>=i>>>0)break;g=f[k>>2]|0;e=g+(d<<2)|0;c=f[e>>2]|0;b=d+1|0;g=g+(b<<2)|0;h=f[g>>2]|0;if((f[j+(c<<2)>>2]|0)>>>0>(f[j+(h<<2)>>2]|0)>>>0){f[e>>2]=h;f[g>>2]=c;d=d+2|0}else d=b}x=0;ua(3136,a|0,k|0);a=x;x=0;if(!(a&1)){zSa(m);u=l;return k|0}}while(0);d=Ia()|0}zSa(m);Ua(d|0);return 0}function ms(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;i=m+24|0;h=m+8|0;j=m+20|0;k=m+16|0;l=m;do if(b[a+33>>0]|0){g=DCa(134176,110904)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,n=x,x=0,!(n&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}n=Ia()|0;OCa(i);Ua(n|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;QOa(i)|0;YYa(i)}n=Gv(f[a+28>>2]|0,17)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];n4a(j,k0(a,i)|0);n=Yr(n,f[j>>2]|0)|0;n4a(l,0);Yr(n,f[l>>2]|0)|0;u=m;return}function ns(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;e=k+28|0;g=k+24|0;h=k+16|0;c=k+20|0;i=k+8|0;b=k+12|0;d=k+4|0;j=k;f[g>>2]=a;f[h>>2]=g;f[c>>2]=f[33163];f[e>>2]=f[c>>2];if(!(hna(a,e)|0)){_0a(i,a);c=s8(88)|0;dX(c);f[c>>2]=f[33163];f[c+4>>2]=1;f[b>>2]=f[33164];f[e>>2]=f[b>>2];b=FCa(i,e,1)|0;f[c+36>>2]=b;Is(f[g>>2]|0,c);Lha(h,c);b=f[g>>2]|0;c=b}else{c=a;b=a}f[d>>2]=f[33162];f[e>>2]=f[d>>2];if(!(hna(c,e)|0)){_0a(i,b);b=s8(88)|0;dX(b);f[b>>2]=f[33162];f[b+4>>2]=0;f[e>>2]=1;a=b+12|0;c=f[a>>2]|0;if(c>>>0<(f[b+16>>2]|0)>>>0){f[c>>2]=1;f[a>>2]=c+4}else LL(b+8|0,e);f[j>>2]=f[33164];d=SKa(f[i>>2]|0,0,1)|0;f[e>>2]=f[j>>2];j=Asa(i,e,d)|0;f[b+36>>2]=j;Is(f[g>>2]|0,b);Lha(h,b)}u=k;return}function os(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=(c-b|0)/12|0;e=a+8|0;d=f[a>>2]|0;do if(g>>>0>(((f[e>>2]|0)-d|0)/12|0)>>>0){T$(a);d=s_a()|0;if(d>>>0>>0)dea();else{h=((f[e>>2]|0)-(f[a>>2]|0)|0)/12|0;i=h<<1;IO(a,h>>>0>>1>>>0?(i>>>0>>0?g:i):d);m5(a,b,c);break}}else{i=a+4|0;h=((f[i>>2]|0)-d|0)/12|0;g=g>>>0>h>>>0;h=g?b+(h*12|0)|0:c;e=d;d=b;while(1){if((d|0)==(h|0))break;Efa(e,d)|0;e=e+12|0;d=d+12|0}if(g){m5(a,h,c);break}d=f[i>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-12|0;MTa(c);d=c}f[i>>2]=e}while(0);return}function ps(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;switch(b|0){case 43:{i=18;j=18;break}case 45:{i=18;j=20;break}case 47:{i=22;j=22;break}case 49:{i=22;j=24;break}default:hb()}a=a+44|0;l=f[a>>2]|0;k=QPa(e)|0;k=SKa(f[l>>2]|0,k,1)|0;m=f[a>>2]|0;b=QPa(h)|0;b=SKa(f[m>>2]|0,b,1)|0;b=Kpa(f[l>>2]|0,i,k,b)|0;k=f[a>>2]|0;i=QPa(e)|0;i=SKa(f[k>>2]|0,i,1)|0;l=f[a>>2]|0;e=QPa(h)|0;e=SKa(f[l>>2]|0,e,1)|0;e=Kpa(f[k>>2]|0,15,i,e)|0;i=f[a>>2]|0;d=QPa(d)|0;d=SKa(f[i>>2]|0,d,1)|0;k=f[a>>2]|0;h=QPa(g)|0;h=SKa(f[k>>2]|0,h,1)|0;h=Kpa(f[i>>2]|0,j,d,h)|0;g=f[a>>2]|0;h=Kpa(f[g>>2]|0,7,e,h)|0;return J$(g,c,Kpa(f[g>>2]|0,8,b,h)|0)|0}function qs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0.0;e=f[b>>2]|0;i=f[a>>2]|0;k=+p[e+16>>3];h=+p[i+16>>3];j=X2(k,h)|0;g=f[c>>2]|0;d=X2(+p[g+16>>3],k)|0;do if(j){if(d){f[a>>2]=g;f[c>>2]=i;d=1;break}f[a>>2]=e;f[b>>2]=i;d=f[c>>2]|0;if(X2(+p[d+16>>3],h)|0){f[b>>2]=d;f[c>>2]=i;d=2}else d=1}else if(d){f[b>>2]=g;f[c>>2]=e;d=f[b>>2]|0;e=f[a>>2]|0;if(X2(+p[d+16>>3],+p[e+16>>3])|0){f[a>>2]=d;f[b>>2]=e;d=2}else d=1}else d=0;while(0);return d|0}function rs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=DCa(134176,110926)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;m=QOa(i)|0;oGa(a,f[m>>2]|0);YYa(i)}m=Gv(f[a+28>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];n4a(j,_1(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function ss(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,g=0.0;a:do switch(f[b>>2]|0){case 3:{g=+TNa(b);e=+TNa(c);c=(K$a(g)|0)<0^(K$a(e)|0)<0;d=c?-0.0:0.0;switch(Jna(e)|0){case 2:{switch(Jna(g)|0){case 0:{HAa(a,+M6(g));break a}case 2:{HAa(a,+Bb(B,+d));break a}case 1:case 3:case 4:{HAa(a,+Bb(C,+d));break a}default:hb()}break}case 3:case 4:case 1:case 0:{HAa(a,g/e);break a}default:hb()}break}case 4:{g=+SNa(b);d=+SNa(c);vRa(g)|0;c=(I|0)<0;vRa(d)|0;e=c^(I|0)<0?-0.0:0.0;switch(z8(d)|0){case 2:{switch(z8(g)|0){case 0:{pqa(a,+OZ(g));break a}case 2:{pqa(a,+Cb(B,+e));break a}case 1:case 3:case 4:{pqa(a,+Cb(C,+e));break a}default:hb()}break}case 3:case 4:case 1:case 0:{pqa(a,g/d);break a}default:hb()}break}default:hb()}while(0);return}function ts(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+8|0;h=k;c=b+12|0;if((((!(s$a(f[b+16>>2]|0)|0)?(d=b+8|0,Qab(f[d>>2]|0)|0):0)?(P5(a+96|0,d)|0)==0:0)?(g=RCa(c)|0,!(v2a(f[(f[g>>2]|0)+4>>2]|0)|0)):0)?(i=t_(a+60|0,d)|0,(i|0)!=(a+64|0)):0){Q$a(j,c);LUa(h,c);g=j+4|0;e=f[h>>2]|0;c=f[h+4>>2]|0;d=1;while(1){if(!(qTa(f[j>>2]|0,f[g>>2]|0,e,c)|0))break;h=QOa(j)|0;h=d&(f[(f[h>>2]|0)+4>>2]|0)!=5;YYa(j);d=h}e=i+20|0;if(d){RUa(j,b);c=i+24|0;d=f[c>>2]|0;if(d>>>0<(f[i+28>>2]|0)>>>0){f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[c>>2]=(f[c>>2]|0)+12}else yE(e,j)}Cf(a,e,b)}u=k;return}function us(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+32|0;i=l+16|0;j=l+12|0;m=l;e=a+36|0;g=c+11|0;h=c+4|0;k=a+24|0;d=a+28|0;while(1){a=f[e>>2]|0;f[e>>2]=a+1;DY(m,a);a=b[g>>0]|0;n=a<<24>>24<0;x=0;ja(86,m|0,(n?f[c>>2]|0:c)|0,(n?f[h>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1){d=9;break}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,j|0,i|0);n=x;x=0;if(n&1){d=10;break}MTa(i);MTa(m);if((t_(k,j)|0)==(d|0)){d=8;break}}if((d|0)==8){dG(i,k,j,j);u=l;return f[j>>2]|0}else if((d|0)==9)a=Ia()|0;else if((d|0)==10){a=Ia()|0;MTa(i)}MTa(m);Ua(a|0);return 0}function vs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k+8|0;i=k+4|0;j=k;do if(b[a+33>>0]|0){g=DCa(134176,110976)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(h);Wq(g,e)|0;fu(g)|0;break}l=Ia()|0;OCa(h);Ua(l|0)}while(0);d=f[c+12>>2]|0;if(d|0)oGa(a,d);g=c+16|0;d=f[g>>2]|0;if(!d)e=12;else{oGa(a,d);e=(f[g>>2]|0)==0?12:13}d=a+28|0;l=Gv(f[d>>2]|0,e)|0;f[j>>2]=f[c+8>>2];f[h>>2]=f[j>>2];n4a(i,ZZ(a,h)|0);Yr(l,f[i>>2]|0)|0;if(f[g>>2]|0?(f[c+4>>2]|0)==5:0)iTa(f[d>>2]|0);u=k;return}function ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;e=k+8|0;d=k;i=a+136|0;j=f[i>>2]|0;f[e>>2]=b;g=em(a+64|0,e)|0;f[g>>2]=j;f[i>>2]=b;g=b+12|0;Q$a(e,g);LUa(d,g);g=e+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;while(1){if(!(qTa(f[e>>2]|0,f[g>>2]|0,c,d)|0))break;l=QOa(e)|0;Lk(a,f[l>>2]|0)|0;YYa(e)}c=b+8|0;if(Qab(f[c>>2]|0)|0?(h=BB(a+152|0,c)|0,h|0):0){b=h+12|0;c=a+140|0;d=h+16|0;do if(!(qVa(a)|0)){e=f[d>>2]|0;if((e|0)==(f[h+20>>2]|0)){WB(b,c);break}else{eR(e,c);f[d>>2]=(f[d>>2]|0)+12;break}}while(0);Ot(a,f[b>>2]|0,f[d>>2]|0,c)}f[i>>2]=j;u=k;return a|0}function xs(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;m=o;n=s8(88)|0;dX(n);f[n>>2]=f[a>>2];f[n+4>>2]=c;f[n+36>>2]=0;e=f[b+4>>2]|0;g=n+12|0;h=n+16|0;i=n+8|0;j=n+44|0;k=n+52|0;l=n+56|0;a=f[b>>2]|0;while(1){if((a|0)==(e|0))break;c=a+4|0;b=f[g>>2]|0;if((b|0)==(f[h>>2]|0))LL(i,c);else{f[b>>2]=f[c>>2];f[g>>2]=b+4}c=f[k>>2]|0;f[m>>2]=c;b=zZ(l,a)|0;f[b>>2]=c;b=nZ(j,m)|0;f[b>>2]=f[a>>2];a=a+8|0}e=f[d+4>>2]|0;g=n+24|0;h=n+28|0;i=n+20|0;a=f[d>>2]|0;while(1){if((a|0)==(e|0))break;c=a+4|0;b=f[g>>2]|0;if((b|0)==(f[h>>2]|0))LL(i,c);else{f[b>>2]=f[c>>2];f[g>>2]=b+4}b=f[k>>2]|0;f[m>>2]=b;d=zZ(l,a)|0;f[d>>2]=b;d=nZ(j,m)|0;f[d>>2]=f[a>>2];a=a+8|0}u=o;return n|0}function ys(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j+8|0;h=j;do if(b[a+33>>0]|0){g=DCa(134176,110946)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;k=QOa(i)|0;Ypa(a,f[k>>2]|0);YYa(i)}FS(a,c);if((f[c+4>>2]|0)==5)EM(a);u=j;return}function zs(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;_Ya(a);d=b+4|0;o=c+4|0;x=0;ua(588,a|0,((f[o>>2]|0)-(f[c>>2]|0)>>2)+((f[d>>2]|0)-(f[b>>2]|0)>>2)|0);n=x;x=0;do if(!(n&1)){n=f[b>>2]|0;m=(f[d>>2]|0)-n>>2;j=f[c>>2]|0;k=(f[o>>2]|0)-j>>2;l=f[a>>2]|0;b=0;d=0;e=0;while(1){if(!(e>>>0>>0&d>>>0>>0))break;g=f[n+(e<<2)>>2]|0;h=f[j+(d<<2)>>2]|0;do if(g>>>0>=h>>>0){i=l+(b<<2)|0;if(g>>>0>h>>>0){f[i>>2]=h;d=d+1|0;break}else{f[i>>2]=g;d=d+1|0;e=e+1|0;break}}else{f[l+(b<<2)>>2]=g;e=e+1|0}while(0);b=b+1|0}g=f[a>>2]|0;while(1){if(e>>>0>=m>>>0)break;f[g+(b<<2)>>2]=f[n+(e<<2)>>2];b=b+1|0;e=e+1|0}e=f[c>>2]|0;g=(f[o>>2]|0)-e>>2;h=f[a>>2]|0;while(1){if(d>>>0>=g>>>0)break;f[h+(b<<2)>>2]=f[e+(d<<2)>>2];d=d+1|0;b=b+1|0}x=0;ua(588,a|0,b|0);o=x;x=0;if(o&1){b=Ia()|0;break}else return}else b=Ia()|0;while(0);zSa(a);Ua(b|0)}function As(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Qab(c)|0)){Q_a();x=0;ia(52,i+13|0,71973)|0;k=x;x=0;if(k&1){Ia()|0;lCa()}else lCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(tma(a,j)|0){Q_a();x=0;ia(52,g|0,72009)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)lCa();Ia()|0;lCa()}c=b;f[j>>2]=c;d=a+4|0;e=f[d>>2]|0;do if(e>>>0<(f[a+8>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(466,a|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;T_a(c);Cbb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0){T_a(d);Cbb(d)}Ua(c|0)}while(0);k=zZ(a+172|0,b)|0;f[k>>2]=b;u=i;return}function Bs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;d=o+8|0;i=o+4|0;j=o;n=a+44|0;a:do if(((b[(f[n>>2]|0)+1>>0]|0?(e=a+36|0,g=Jbb(f[e>>2]|0)|0,f[i>>2]=f[c+24>>2],f[d>>2]=f[i>>2],g=fna(g,d)|0,Poa(a,(g|0)!=0,c,84995)|0):0)?(h=g+16|0,Poa(a,Qab(f[h>>2]|0)|0,c,85025)|0):0)?(l=Jbb(f[e>>2]|0)|0,f[j>>2]=f[h>>2],f[d>>2]=f[j>>2],j=MI(l,d)|0,l=c+8|0,k=c+12|0,i=Jbb(f[k>>2]|0)|0,m=j+8|0,Poa(a,(i|0)==((f[j+12>>2]|0)-(f[m>>2]|0)>>2|0),c,84924)|0):0){d=0;while(1){if(d>>>0>=(Jbb(f[k>>2]|0)|0)>>>0)break a;j=ODa(l,d)|0;if(!(wea(a,f[(f[j>>2]|0)+4>>2]|0,f[(f[m>>2]|0)+(d<<2)>>2]|0,c)|0)?(b[(f[n>>2]|0)+8>>0]|0)==0:0)DCa(zm(DCa(YNa(a)|0,84981)|0,d)|0,87606)|0;d=d+1|0}}while(0);u=o;return}function Cs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+48|0;h=j+20|0;i=j;d=kQa(c)|0;g=a+116|0;f[g>>2]=d;e=a+140|0;lia(e,X(d,d)|0);e=f[e>>2]|0;d=(f[a+144>>2]|0)-e|0;while(1){if((d|0)<=0)break;k=e;b[k>>0]=0;d=d+-1|0;e=k+1|0}e=a+152|0;pha(e,f[g>>2]|0);e=f[e>>2]|0;d=(f[a+156>>2]|0)-e>>2;while(1){if((d|0)<=0)break;k=e;f[k>>2]=0;d=d+-1|0;e=k+4|0}bF(a,c);Jf(h,a);k=a+120|0;MD(k,h);SQa(h);Pj(i,k);uu(f[a+40>>2]|0,f[a+44>>2]|0,i);SQa(i);zf(a);u=j;return}function Ds(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;k=l+12|0;j=l;a:do if((((((c-a|0)>2?(b[a>>0]|0)==100:0)?(b[a+1>>0]|0)==115:0)?(m=a+2|0,e=Bc(m,c,d)|0,(e|0)!=(m|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){hY(k,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;m=a+-1|0;OJa(c+(m*24|0)|0);a=m}f[i>>2]=c+-24;x=0;va(185,j|0,123565,k|0);m=x;x=0;do if(!(m&1)){m=b[j+11>>0]|0;g=m<<24>>24<0;x=0;ja(97,(f[i>>2]|0)+-24|0,(g?f[j>>2]|0:j)|0,(g?f[j+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){a=Ia()|0;MTa(j);break}else{MTa(j);MTa(k);a=h;break a}}else a=Ia()|0;while(0);MTa(k);Ua(a|0)}while(0);u=l;return a|0}function Es(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;k=l+12|0;j=l;a:do if((((((c-a|0)>2?(b[a>>0]|0)==100:0)?(b[a+1>>0]|0)==116:0)?(m=a+2|0,e=Bc(m,c,d)|0,(e|0)!=(m|0)):0)?(h=gd(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){hY(k,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;m=a+-1|0;OJa(c+(m*24|0)|0);a=m}f[i>>2]=c+-24;x=0;va(185,j|0,123563,k|0);m=x;x=0;do if(!(m&1)){m=b[j+11>>0]|0;g=m<<24>>24<0;x=0;ja(97,(f[i>>2]|0)+-24|0,(g?f[j>>2]|0:j)|0,(g?f[j+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){a=Ia()|0;MTa(j);break}else{MTa(j);MTa(k);a=h;break a}}else a=Ia()|0;while(0);MTa(k);Ua(a|0)}while(0);u=l;return a|0}function Fs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;c=g+4|0;e=g;Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80956)|0;Ema(rna(f[a>>2]|0,f[b+4>>2]|0)|0,32)|0;Ema(rna(f[a>>2]|0,f[b+8>>2]|0)|0,32)|0;switch(f[b+12>>2]|0){case 0:{d=f[b+16>>2]|0;if(Qab(d)|0){h=f[a+24>>2]|0;f[e>>2]=d;f[c>>2]=f[e>>2];Ss(a,MI(h,c)|0,b)}break}case 1:{SN(a,(f[a+24>>2]|0)+60|0);break}case 2:{hz(a,(f[a+24>>2]|0)+88|0);break}case 3:{DCa(DCa(Ema(Bfa(DCa(f[a>>2]|0,80964)|0,f[b>>2]|0)|0,32)|0,Fha(f[b+20>>2]|0)|0)|0,123272)|0;break}default:hb()}Ema(f[a>>2]|0,41)|0;u=g;return}function Gs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+48|0;h=j+20|0;i=j;d=kQa(c)|0;g=a+116|0;f[g>>2]=d;e=a+140|0;lia(e,X(d,d)|0);e=f[e>>2]|0;d=(f[a+144>>2]|0)-e|0;while(1){if((d|0)<=0)break;k=e;b[k>>0]=0;d=d+-1|0;e=k+1|0}e=a+152|0;pha(e,f[g>>2]|0);e=f[e>>2]|0;d=(f[a+156>>2]|0)-e>>2;while(1){if((d|0)<=0)break;k=e;f[k>>2]=0;d=d+-1|0;e=k+4|0}iF(a,c);Kf(h,a);k=a+120|0;MD(k,h);SQa(h);Qj(i,k);uu(f[a+40>>2]|0,f[a+44>>2]|0,i);SQa(i);Af(a);u=j;return}function Hs(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+32|0;g=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;i=f[a+16>>2]|0;j=a+61|0;k=a+113|0;h=f[a+12>>2]|0;while(1){if((h|0)==(i|0))break;e=f[h>>2]|0;d=f[e+12>>2]|0;if(!((d|0)!=0|(b[c>>0]|0)==0)){f[l>>2]=f[e+16>>2];f[g>>2]=f[l>>2];d=MI(a,g)|0;e=f[d+4>>2]|0;f[m>>2]=f[f[h>>2]>>2];f[g>>2]=f[m>>2];Lp(c,e,g,82058);e=f[d+12>>2]|0;d=f[d+8>>2]|0;while(1){if((d|0)==(e|0))break;r=f[d>>2]|0;f[n>>2]=f[f[h>>2]>>2];f[g>>2]=f[n>>2];Lp(c,r,g,82106);d=d+4|0}e=f[h>>2]|0;d=f[e+12>>2]|0}if((d|0)==1){d=(b[j>>0]|0)!=0;f[o>>2]=f[e>>2];f[g>>2]=f[o>>2];Qu(c,d,g,82153,0)|0;e=f[h>>2]|0;d=f[e+12>>2]|0}if((d|0)==2){r=(b[k>>0]|0)!=0;f[p>>2]=f[e>>2];f[g>>2]=f[p>>2];Qu(c,r,g,82216,0)|0}h=h+4|0}u=q;return}function Is(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Qab(c)|0)){Q_a();x=0;ia(52,i+13|0,71786)|0;k=x;x=0;if(k&1){Ia()|0;lCa()}else lCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(Xma(a,j)|0){Q_a();x=0;ia(52,g|0,71818)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)lCa();Ia()|0;lCa()}c=b;f[j>>2]=c;d=a+40|0;e=f[d>>2]|0;do if(e>>>0<(f[a+44>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(464,a+36|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;OX(c);Cbb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0){OX(d);Cbb(d)}Ua(c|0)}while(0);k=zZ(a+208|0,b)|0;f[k>>2]=b;u=i;return}function Js(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0;i=u;u=u+32|0;m=i+16|0;n=i+12|0;j=i;g=RRa(f[a+4>>2]|0)|0;f[g+4>>2]=d;l=g+8|0;b[l>>0]=e;Sab(m);hLa(n,h[l>>0]|0,0);d=rh(c,g+12|0,m,f[n>>2]|0)|0;e=Jbb(f[m>>2]|0)|0;if((e|0)==(h[l>>0]|0|0)){n=ZQa(a,Or(c,d)|0)|0;f[g+16>>2]=n;n=ZQa(a,Or(c,d+1|0)|0)|0;f[g+20>>2]=n;n=ZQa(a,Or(c,d+2|0)|0)|0;f[g+24>>2]=n;Oza(g);u=i;return g|0}a=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;n=j7a(93309)|0;x=0;va(87,j|0,93309,n|0);n=x;x=0;if(!(n&1)){x=0;ua(261,a|0,j|0);n=x;x=0;if(n&1)e=1;else{x=0;va(98,a|0,32200,457);x=0;e=0}d=Ia()|0;MTa(j);if(e)k=7}else{d=Ia()|0;k=7}if((k|0)==7)La(a|0);Ua(d|0);return 0}function Ks(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;m=l;a:do if(!(FWa(c,92)|0))K$(a,c);else{f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}h=dV(c)|0;d=0;while(1){if((d|0)>=(h|0)){e=8;break}e=d+1|0;g=b[c+d>>0]|0;if(((g<<24>>24==92?(i=d+2|0,(i|0)<(h|0)):0)?(j=b[c+e>>0]|0,hWa(j)|0):0)?(k=b[c+i>>0]|0,hWa(k)|0):0){g=(zYa(j)|0)<<4;g=(g|(zYa(k)|0))&255;x=0;ua(82,m|0,g|0);g=x;x=0;if(g&1){e=16;break}d=d+3|0}else{x=0;ua(82,m|0,g|0);g=x;x=0;if(g&1){e=16;break}else d=e}}do if((e|0)==8){x=0;ua(1370,a|0,((b[m+11>>0]|0)<0?f[m>>2]|0:m)|0);a=x;x=0;if(a&1){d=Ia()|0;break}else{MTa(m);break a}}else if((e|0)==16)d=Ia()|0;while(0);MTa(m);Ua(d|0)}while(0);u=l;return}function Ls(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d;c=lF(Or(b,0)|0)|0;if(g2a(c,f[33104]|0)|0)Dc(a,b);do if(_W(b)|0){if(g2a(c,f[33111]|0)|0){Ic(a,b,1);break}if(g2a(c,f[32999]|0)|0){Qc(a,b,1);break}if(g2a(c,f[33103]|0)|0){ud(a,b,1);break}if(g2a(c,f[33108]|0)|0){sd(a,b,1);break}d=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=j7a(94481)|0;x=0;va(87,e|0,94481,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,d|0,e|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;MTa(e);if(c)g=17}else{a=Ia()|0;g=17}if((g|0)==17)La(d|0);Ua(a|0)}while(0);u=d;return}function Ms(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l+4|0;j=l;do if(b[a+33>>0]|0){h=DCa(134176,110603)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}m=Ia()|0;OCa(g);Ua(m|0)}while(0);d=c+8|0;switch(f[d>>2]|0){case 1:{k=9;break}case 2:{k=8;break}default:hb()}a:do if((k|0)==8){m=ODa(c+16|0,0)|0;oGa(a,f[m>>2]|0);switch(f[d>>2]|0){case 1:{k=9;break a}case 2:{i=a+28|0;Gv(f[i>>2]|0,64)|0;break a}default:hb()}}while(0);if((k|0)==9){i=a+28|0;Gv(f[i>>2]|0,63)|0}m=f[i>>2]|0;n4a(j,0);Yr(m,f[j>>2]|0)|0;u=l;return}function Ns(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+48|0;d=k+16|0;g=k+36|0;h=k+32|0;i=k;j=a+120|0;_0a(g,f[j>>2]|0);e=f[b>>2]|0;do if(!(Dab(e)|0)){if(KMa(b)|0){c=(QRa(f[b+4>>2]|0)|0)+8|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];c=e0(g,d)|0;break}if(zab(e)|0){j=(v1(a,b)|0)+8|0;j=f[j>>2]|0;c=s9(f[a+116>>2]|0,j)|0;c=SKa(f[g>>2]|0,j,c)|0;break}if(X7a(e)|0){c=Ns(a,f[f[b+12>>2]>>2]|0)|0;break}if(Oab(e)|0){_0a(h,f[j>>2]|0);lUa(i,f[b+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];c=e0(h,d)|0;break}else hb()}else{j=f[b+4>>2]|0;c=s9(f[a+116>>2]|0,j)|0;c=SKa(f[g>>2]|0,j,c)|0}while(0);u=k;return c|0}function Os(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;g=j+12|0;h=j+16|0;i=j;d=a+24|0;e=a+28|0;do if((t_(d,b)|0)==(e|0)){a=f[b>>2]|0;f[g>>2]=a}else{c=a+36|0;b=f[b>>2]|0;while(1){a=f[c>>2]|0;f[c>>2]=a+1;EY(i,a);x=0;ia(83,i|0,b|0)|0;a=x;x=0;if(a&1){b=10;break}f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,g|0,h|0);a=x;x=0;if(a&1){b=11;break}MTa(h);MTa(i);if((t_(d,g)|0)==(e|0)){b=13;break}}if((b|0)==10)a=Ia()|0;else if((b|0)==11){a=Ia()|0;MTa(h)}else if((b|0)==13){a=f[g>>2]|0;break}MTa(i);Ua(a|0)}while(0);u=j;return a|0}function Ps(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;c=j;g=a+4|0;f[g>>2]=0;x=0;va(150,c|0,a|0,1);e=x;x=0;a:do if(e&1){c=-1;i=8}else{do if(b[c>>0]|0){c=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;d=c+12|0;e=f[d>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+40>>2]|0,c|0)|0;e=x;x=0;if(e&1){c=-1;i=8;break a}}else{f[d>>2]=e+1;c=d7a(b[e>>0]|0)|0}if(g2a(c,-1)|0){g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,g|0,f[g+16>>2]|6|0);g=x;x=0;if(g&1){i=8;break a}else break}else{f[g>>2]=1;break}}else c=-1;while(0);h=c}while(0);do if((i|0)==8){i=Ja(0)|0;Fa(i|0)|0;x=0;ta(450,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);i=x;x=0;if(!(i&1)){Ga();h=c;break}c=Ia()|0;x=0;sa(6);i=x;x=0;if(i&1){i=Ja(0)|0;y2a(i)}else Ua(c|0)}while(0);u=j;return h|0}function Qs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+32|0;i=k+8|0;c=k;j=b+8|0;g=b+12|0;if((Jbb(f[g>>2]|0)|0)>>>0>15){Q_a();x=0;ia(52,k+16|0,111522)|0;h=x;x=0;if(!(h&1)?(h=Jbb(f[g>>2]|0)|0,x=0,ta(506,h|0),h=x,x=0,!(h&1)):0)lCa();Ia()|0;lCa()}Q$a(i,j);LUa(c,j);h=i+4|0;e=f[c>>2]|0;c=f[c+4>>2]|0;d=a+36|0;while(1){if(!(qTa(f[i>>2]|0,f[h>>2]|0,e,c)|0))break;l=QOa(i)|0;m=f[l>>2]|0;m=hI(m,Jbb(f[d>>2]|0)|0)|0;f[l>>2]=m;YYa(i)}while(1){if((Jbb(f[g>>2]|0)|0)>>>0>=15)break;m=f[d>>2]|0;Jbb(m)|0;faa(j,KSa(2,m)|0)}f[b+24>>2]=f[a+44>>2];l=b+4|0;m=f[l>>2]|0;f[l>>2]=2;cNa(b);m=eL(b,m,Jbb(f[d>>2]|0)|0)|0;GVa(f[a+16>>2]|0,m)|0;u=k;return}function Rs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l+24|0;e=l+8|0;g=l;h=a+4|0;c=f[h>>2]|0;if(c>>>0>>0){i=f[a+8>>2]|0;d=i<<5;j=b-c|0;do if(d>>>0>>0|c>>>0>(d-j|0)>>>0){f[e>>2]=0;c=e+4|0;f[c>>2]=0;f[e+8>>2]=0;if((b|0)>=0){i=i<<6;b=b+31&-32;x=0;ua(3101,e|0,(d>>>0<1073741823?(i>>>0>>0?b:i):2147483647)|0);i=x;x=0;if(!(i&1)){i=f[h>>2]|0;f[c>>2]=i+j;c=f[a>>2]|0;f[k>>2]=f[e>>2];f[k+4>>2]=0;tC(g,c,0,c+(i>>>5<<2)|0,i&31,k);c=g;i=f[c>>2]|0;c=f[c+4>>2]|0;d9(a,e);P1a(f[e>>2]|0);a=i;break}}else{x=0;sa(9);x=0}l=Ia()|0;P1a(f[e>>2]|0);Ua(l|0)}else{a=(f[a>>2]|0)+(c>>>5<<2)|0;f[h>>2]=b;c=c&31}while(0);if(j|0){f[k>>2]=a;f[k+4>>2]=c;XS(k,j)}}else f[h>>2]=b;u=l;return}function Ss(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;DCa(f[a>>2]|0,80973)|0;if(c|0){e=Ema(f[a>>2]|0,32)|0;Bfa(e,f[c>>2]|0)|0}d=b+8|0;c=b+12|0;if((f[c>>2]|0)!=(f[d>>2]|0)){DCa(f[a>>2]|0,f[a+12>>2]|0)|0;Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80979)|0;e=f[c>>2]|0;c=f[d>>2]|0;while(1){d=f[a>>2]|0;if((c|0)==(e|0))break;d=Ema(d,32)|0;DCa(d,Fha(f[c>>2]|0)|0)|0;c=c+4|0}Ema(d,41)|0}c=b+4|0;if(f[c>>2]|0){DCa(f[a>>2]|0,f[a+12>>2]|0)|0;Ema(f[a>>2]|0,40)|0;b=yPa(f[a>>2]|0,80837)|0;Ema(DCa(b,Fha(f[c>>2]|0)|0)|0,41)|0}DCa(f[a>>2]|0,123272)|0;return}function Ts(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;d=a+8|0;Ew(a,a+4|0,d,c)|0;h=a+12|0;a:while(1){if((h|0)==(b|0)){i=3;break}if(kD(c,h,d)|0){e=f[h>>2]|0;f[h>>2]=0;f[k>>2]=e;e=h;while(1){l=f[d>>2]|0;f[d>>2]=0;g=f[e>>2]|0;f[e>>2]=l;if(g|0){OX(g);Cbb(g)}if((d|0)==(a|0)){d=a;break}e=d+-4|0;x=0;g=ja(71,c|0,k|0,e|0)|0;l=x;x=0;if(l&1)break a;if(g){l=d;d=e;e=l}else break}l=f[k>>2]|0;f[k>>2]=0;e=f[d>>2]|0;f[d>>2]=l;if(e|0){OX(e);Cbb(e)}d=f[k>>2]|0;f[k>>2]=0;if(d|0){OX(d);Cbb(d)}}d=h;h=h+4|0}if((i|0)==3){u=j;return}d=Ia()|0;e=f[k>>2]|0;f[k>>2]=0;if(e|0){OX(e);Cbb(e)}Ua(d|0)}function Us(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;f[a>>2]=b+12;f[a+4>>2]=c;f[a+8>>2]=d;f[a+12>>2]=e;h=a+16|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[a+32>>2]=1065353216;g=(Jbb(f[b+16>>2]|0)|0)+-1|0;b=-1;c=0;a:while(1){e=(b|0)==-1;while(1){if(c>>>0>=g>>>0){e=17;break a}d=f[a>>2]|0;if(e){x=0;d=ia(75,d|0,c|0)|0;i=x;x=0;if(i&1){e=9;break a}x=0;d=ia(210,a|0,f[d>>2]|0)|0;i=x;x=0;if(i&1){e=9;break a}if(d|0){e=8;break}}else{x=0;d=ia(75,d|0,c|0)|0;i=x;x=0;if(i&1){e=9;break a}if(S8(f[d>>2]|0)|0){e=14;break}}c=c+1|0}if((e|0)==8){d=c;c=c+1|0}else if((e|0)==14){x=0;c=ja(89,a|0,b|0,c|0)|0;i=x;x=0;if(i&1){e=10;break}else d=-1}b=d}if((e|0)==9)c=Ia()|0;else if((e|0)==10)c=Ia()|0;else if((e|0)==17)return;hga(h);Ua(c|0)}function Vs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+64|0;c=k+16|0;d=k+52|0;e=k+56|0;j=k+40|0;g=k+32|0;h=k;i=b+4|0;do if((f[i>>2]|0)!=5){l=f[a+36>>2]|0;Jbb(l)|0;_0a(d,l);l=yj(b)|0;f[e>>2]=l;f[g>>2]=f[b+24>>2];t$a(h,Jbb(f[b+12>>2]|0)|0);f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];h=e0(d,c)|0;f[g+4>>2]=h;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;ua(168,j|0,2);h=x;x=0;if(h&1){l=Ia()|0;zSa(j);Ua(l|0)}qda(j,g,g+8|0);l=f[i>>2]|0;x=0;f[c>>2]=f[e>>2];c=ka(13,d|0,c|0,j|0,l|0)|0;l=x;x=0;if(l&1){l=Ia()|0;zSa(j);Ua(l|0)}else{GVa(f[a+16>>2]|0,c)|0;zSa(j);break}}while(0);u=k;return}function Ws(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+80|0;h=k+40|0;i=k+60|0;d=k;j=k+24|0;g=k+56|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;wa(77,d|0,b|0,c+8|0,i|0);e=x;x=0;do if(!(e&1)){if(K0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else{b=f[b+4>>2]|0;d=f[b+36>>2]|0;e=f[(f[d>>2]|0)+8>>2]|0;b=f[b>>2]|0;f[g>>2]=f[c+24>>2];x=0;f[h>>2]=f[g>>2];b=ia(74,b|0,h|0)|0;g=x;x=0;if(g&1)break;x=0;wa(e|0,j|0,d|0,b|0,i|0);g=x;x=0;if(g&1)break;f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];wAa(a,h)}zSa(i);u=k;return}while(0);k=Ia()|0;zSa(i);Ua(k|0)}function Xs(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;_Ya(a);h=a+12|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[h+12>>2]=0;f[a+28>>2]=1065353216;i=a+32|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[a+48>>2]=1065353216;j=a+52|0;f[j>>2]=0;f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=c;f[a+68>>2]=d;b[a+72>>0]=e&1;b[a+73>>0]=1;c=a+76|0;g=a+80|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;c=0;while(1){if((c|0)==3)break;f[g+(c<<2)>>2]=0;c=c+1|0}e=a+92|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[e+(c<<2)>>2]=0;c=c+1|0}c=a+104|0;XGa(c);d=a+132|0;f[d>>2]=0;f[a+136>>2]=0;f[a+140>>2]=0;x=0;ta(479,a|0);k=x;x=0;if(k&1){k=Ia()|0;zSa(d);Sya(c);MTa(e);MTa(g);zSa(j);SQa(i);SQa(h);f0a(a);Ua(k|0)}else return}function Ys(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Qab(c)|0)){Q_a();x=0;ia(52,i+13|0,93967)|0;k=x;x=0;if(k&1){Ia()|0;lCa()}else lCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(gna(a,j)|0){Q_a();x=0;ia(52,g|0,93997)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)lCa();Ia()|0;lCa()}c=b;f[j>>2]=c;d=a+52|0;e=f[d>>2]|0;do if(e>>>0<(f[a+56>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(1881,a+48|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;Cbb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0)Cbb(d);Ua(c|0)}while(0);k=zZ(a+220|0,b)|0;f[k>>2]=b;u=i;return} +function eh(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+208|0;j=z+196|0;A=z+184|0;B=z+172|0;v=z+168|0;w=z;s=z+164|0;t=z+160|0;i=f[e+4>>2]|0;uP(A,e,j);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[B+(e<<2)>>2]=0;e=e+1|0}r=$Ea(i)|0;q=B+11|0;if((b[q>>0]|0)<0)e=(f[B+8>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,B|0,e|0);p=x;x=0;if(p&1)e=Ia()|0;else{i=(b[q>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i;f[s>>2]=w;f[t>>2]=0;o=B+4|0;p=B+8|0;n=b[j>>0]|0;j=i;i=a;l=a;while(1){if(!l){a=0;k=1;l=0}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;m=x;x=0;if(m&1){y=27;break}}else e=d7a(b[e>>0]|0)|0;m=g2a(e,-1)|0;i=m?0:i;a=m?0:a;k=m;l=m?0:l}if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;m=x;x=0;if(m&1){y=27;break}}else e=d7a(b[e>>0]|0)|0;if(!(g2a(e,-1)|0))if(k)m=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(k){c=0;y=38;break}else m=0}c=b[q>>0]|0;c=c<<24>>24<0?f[o>>2]|0:c&255;if((f[v>>2]|0)==(j+c|0)){x=0;ua(108,B|0,c<<1|0);k=x;x=0;if(k&1){y=29;break}if((b[q>>0]|0)<0)e=(f[p>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,B|0,e|0);k=x;x=0;if(k&1){y=29;break}j=(b[q>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=j+c}c=l+12|0;e=f[c>>2]|0;k=l+16|0;if((e|0)==(f[k>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;C=x;x=0;if(C&1){y=27;break}}else e=d7a(b[e>>0]|0)|0;if(Ir(e&255,r,j,v,t,n,A,w,s,31216)|0){c=m;y=38;break}e=f[c>>2]|0;if((e|0)==(f[k>>2]|0)){x=0;ga(f[(f[l>>2]|0)+40>>2]|0,l|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=e+1;c=m}if((y|0)==27)e=Ia()|0;else if((y|0)==29)e=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;e=f[s>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(e-w|0)<160:0){t=f[t>>2]|0;C=e+4|0;f[s>>2]=C;f[e>>2]=t;e=C}C=gJ(j,f[v>>2]|0,g,r)|0;d[h>>1]=C;Uz(A,w,e,g);do if(!l){j=1;y=46}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[a>>2]|0)+36>>2]|0,l|0)|0;C=x;x=0;if(C&1)break}else e=d7a(b[e>>0]|0)|0;j=g2a(e,-1)|0;i=j?0:i;y=46}while(0);do if((y|0)==46){if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else e=d7a(b[e>>0]|0)|0;if(!(g2a(e,-1)|0)){if(!j)y=53}else y=51}else y=51;if((y|0)==51?j:0)y=53;if((y|0)==53)f[g>>2]=f[g>>2]|2;MTa(B);MTa(A);u=z;return i|0}while(0);e=Ia()|0}}MTa(B);MTa(A);Ua(e|0);return 0}function fh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;uP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=$Ea(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;l=g2a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}B=FK(i,f[t>>2]|0,e,q)|0;f[g>>2]=B;Uz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;i=g2a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;MTa(A);MTa(z);u=y;return h|0}while(0);d=Ia()|0}}MTa(A);MTa(z);Ua(d|0);return 0}function gh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;uP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=$Ea(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;l=g2a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}B=PD(i,f[t>>2]|0,e,q)|0;f[g>>2]=B;Uz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;i=g2a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;MTa(A);MTa(z);u=y;return h|0}while(0);d=Ia()|0}}MTa(A);MTa(z);Ua(d|0);return 0}function hh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+336|0;t=C+160|0;h=C+328|0;i=C+324|0;D=C+312|0;E=C+300|0;z=C+296|0;A=C;v=C+292|0;w=C+288|0;y=C+333|0;s=C+332|0;Oz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;p=E+4|0;q=E+8|0;o=f[h>>2]|0;m=f[i>>2]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;k=$5a(d)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[p>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;if(vo(d,y,s,i,z,o,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+4;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+TW(i,f[z>>2]|0,e);n[g>>2]=G;Uz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=Jbb(f[d>>2]|0)|0;i=$5a(d)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;MTa(E);MTa(D);u=C;return h|0}while(0);d=Ia()|0}}MTa(E);MTa(D);Ua(d|0);return 0}function ih(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+336|0;t=C+160|0;h=C+328|0;i=C+324|0;D=C+312|0;E=C+300|0;z=C+296|0;A=C;v=C+292|0;w=C+288|0;y=C+333|0;s=C+332|0;Oz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=f[h>>2]|0;m=f[i>>2]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;k=$5a(d)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;if(vo(d,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+4;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+SW(i,f[z>>2]|0,e);p[g>>3]=G;Uz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=Jbb(f[d>>2]|0)|0;i=$5a(d)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;MTa(E);MTa(D);u=C;return h|0}while(0);d=Ia()|0}}MTa(E);MTa(D);Ua(d|0);return 0}function jh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+336|0;t=C+160|0;h=C+328|0;i=C+324|0;D=C+312|0;E=C+300|0;z=C+296|0;A=C;v=C+292|0;w=C+288|0;y=C+333|0;s=C+332|0;Oz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=f[h>>2]|0;m=f[i>>2]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;k=$5a(d)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=Jbb(f[d>>2]|0)|0;if(vo(d,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+4;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+UW(i,f[z>>2]|0,e);p[g>>3]=G;Uz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=Jbb(f[d>>2]|0)|0;i=$5a(d)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;MTa(E);MTa(D);u=C;return h|0}while(0);d=Ia()|0}}MTa(E);MTa(D);Ua(d|0);return 0}function kh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;w=u;u=u+32|0;y=w+8|0;t=w+4|0;v=w;f[t>>2]=b;a:do if(!(Vz(a,t)|0)){f[y>>2]=b;s=JH(y,4)|0;q=a+4|0;j=f[q>>2]|0;r=(j|0)==0;b:do if(!r){m=j+-1|0;o=(m&j|0)==0;if(!o)if(s>>>0>>0)h=s;else h=(s>>>0)%(j>>>0)|0;else h=m&s;g=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!g)p=17;else do{g=f[g>>2]|0;if(!g){p=17;break b}i=f[g+4>>2]|0;if((i|0)!=(s|0)){if(!o){if(i>>>0>=j>>>0)i=(i>>>0)%(j>>>0)|0}else i=i&m;if((i|0)!=(h|0)){p=17;break b}}}while((f[g+8>>2]|0)!=(b|0))}else{h=0;p=17}while(0);if((p|0)==17){W6(y,a,s,t);b=a+12|0;k=+(((f[b>>2]|0)+1|0)>>>0);l=+n[a+16>>2];do if(r|l*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;p=~~+W(+(k/l))>>>0;x=0;ua(633,a|0,(r>>>0

>>0?p:r)|0);r=x;x=0;if(r&1){g=Ia()|0;h=f[y>>2]|0;f[y>>2]=0;if(h|0)Cbb(h);Ua(g|0)}g=f[q>>2]|0;h=g+-1|0;if(!(h&g)){j=g;h=h&s;break}if(s>>>0>>0){j=g;h=s}else{j=g;h=(s>>>0)%(g>>>0)|0}}while(0);g=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!g){g=a+8|0;i=f[y>>2]|0;f[i>>2]=f[g>>2];f[g>>2]=i;f[(f[a>>2]|0)+(h<<2)>>2]=g;g=f[i>>2]|0;if(!g)g=y;else{g=f[g+4>>2]|0;h=j+-1|0;if(h&j){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&h;f[(f[a>>2]|0)+(g<<2)>>2]=i;g=y}}else{s=f[y>>2]|0;f[s>>2]=f[g>>2];f[g>>2]=s;g=y}f[b>>2]=(f[b>>2]|0)+1;f[g>>2]=0}g=Wk(d+44|0,t)|0;if((cia()|0)>1){s=DCa(134008,76045)|0;t=DCa(xm(s,f[t>>2]|0)|0,123496)|0;DCa(zm(t,f[g+12>>2]|0)|0,76061)|0}b=d+24|0;m=e+4|0;o=e+8|0;g=g+8|0;while(1){g=f[g>>2]|0;if(!g)break a;f[y>>2]=f[g+8>>2];h=Xk(b,y)|0;i=f[h+12>>2]|0;if(i>>>0>=2)break;do if(!i){h=t5(c,f[y>>2]|0)|0;if(h|0?S6a(f[h>>2]|0)|0:0)break;f[v>>2]=0;h=f[m>>2]|0;if(h>>>0<(f[o>>2]|0)>>>0){f[h>>2]=0;f[m>>2]=(f[m>>2]|0)+4}else LL(e,v);if((cia()|0)>1)DCa(134008,76096)|0}else{h=f[(f[h+8>>2]|0)+8>>2]|0;i=f[h+12>>2]|0;j=i;if((i|0)==(f[y>>2]|0)){kh(a,h,c,d,e);break}f[v>>2]=j;h=f[m>>2]|0;if((h|0)==(f[o>>2]|0))LL(e,v);else{f[h>>2]=j;f[m>>2]=(f[m>>2]|0)+4}if((cia()|0)>1)Ema(xm(DCa(134008,76109)|0,i)|0,10)|0}while(0)}Ca(76068,73170,97,76085)}while(0);u=w;return}function lh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0;x=u;u=u+112|0;s=x+8|0;v=x+4|0;w=x;r=c+12|0;p=a+28|0;o=c+16|0;t=a+20|0;i=0;while(1){d=f[o>>2]|0;e=Jbb(d)|0;if(i>>>0>=e>>>0)break;g=ODa(r,i)|0;g=Z$a(f[g>>2]|0)|0;a:do if((g|0?(j=g+16|0,k=f[j>>2]|0,k|0):0)?!(v2a(f[g+4>>2]|0)|0):0){h=g+12|0;d=u$a(f[h>>2]|0)|0;do if((d|0)!=0?(l=d+16|0,(f[l>>2]|0)==0):0){e=g+8|0;if(LH(f[e>>2]|0,f[d+12>>2]|0,f[p>>2]|0)|0){f[l>>2]=f[e>>2];Cqa(d);g=f[t>>2]|0;Jbb(g)|0;_0a(s,g);g=rCa(s,d)|0;h=ODa(r,i)|0;f[h>>2]=g;vI(c,i+1|0,f[j>>2]|0);break a}else{d=f[j>>2]|0;break}}else d=k;while(0);d=u$a(d)|0;if((d|0?(m=d+16|0,(f[m>>2]|0)==0):0)?(n=g+8|0,LH(f[n>>2]|0,f[d+12>>2]|0,f[p>>2]|0)|0):0){e=f[t>>2]|0;Jbb(e)|0;_0a(s,e);e=rBa(f[s>>2]|0,20,f[n>>2]|0)|0;f[m>>2]=e;Cqa(d);e=f[t>>2]|0;Jbb(e)|0;_0a(s,e);e=rCa(s,d)|0;g=ODa(r,i)|0;f[g>>2]=e;vI(c,i+1|0,f[h>>2]|0)}}while(0);i=i+1|0}do if(e>>>0>1){i=a+24|0;h=0;b:while(1){if(h>>>0>=(d+-1|0)>>>0){d=19;break}d=ODa(r,h)|0;d=u$a(f[d>>2]|0)|0;do if((d|0?(q=d+16|0,f[q>>2]|0):0)?(f[d+4>>2]|0)!=5:0){if(f[d+12>>2]|0){d=24;break b}g=ODa(r,h+1|0)|0;g=u$a(f[g>>2]|0)|0;if(g|0?!(f2a(f[d+8>>2]|0,f[g+8>>2]|0)|0):0){if(f[g+12>>2]|0){d=28;break b}d=g+16|0;e=f[d>>2]|0;if(!e){m=f[t>>2]|0;Jbb(m)|0;_0a(s,m);m=lNa(f[s>>2]|0,f[q>>2]|0)|0;n=ODa(r,h)|0;f[n>>2]=m;break}if((b[i>>0]|0?(f[g+4>>2]|0)!=5:0)?(gA(s,f[p>>2]|0,e),n=qza(s)|0,_7(s),!n):0){n=f[t>>2]|0;Jbb(n)|0;_0a(s,n);n=Kpa(f[s>>2]|0,8,f[q>>2]|0,f[d>>2]|0)|0;f[q>>2]=n;uVa(g)}}}while(0);h=h+1|0;d=f[o>>2]|0}if((d|0)==19){Nc(a,c);h=c+8|0;if(!(Qab(f[h>>2]|0)|0))break;e=ODa(r,0)|0;e=u$a(f[e>>2]|0)|0;if(!e)break;g=e+16|0;if(!(f[g>>2]|0))break;d=f[h>>2]|0;if(!(g2a(f[e+8>>2]|0,d)|0))break;if((f[e+4>>2]|0)==5)break;if(f[e+12>>2]|0)Ca(91198,91094,627,99914);f[v>>2]=d;f[s>>2]=f[v>>2];if((RM(c,s)|0)!=1)break;v=f[t>>2]|0;Jbb(v)|0;_0a(s,v);v=Hqa(s,rBa(f[s>>2]|0,20,f[g>>2]|0)|0,c,0)|0;GVa(f[a>>2]|0,v)|0;Bab(w);f[h>>2]=f[w>>2];uVa(e);aKa(c,f[c+4>>2]|0);break}else if((d|0)==24)Ca(91174,91094,588,99914);else if((d|0)==28)Ca(91186,91094,591,99914)}while(0);u=x;return}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;y=u;u=u+112|0;s=y+84|0;d=y+80|0;p=y+48|0;e=y+76|0;g=y+96|0;h=y+72|0;i=y+68|0;j=y+64|0;k=y+60|0;A=y+28|0;m=y+44|0;n=y+40|0;z=y+16|0;v=y+12|0;w=y;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;_Z(p,111403,j7a(111403)|0);o=b;x=0;ia(59,p|0,b|0)|0;r=x;x=0;do if(r&1){b=Ia()|0;d=11}else{f[s>>2]=f[p>>2];f[s+4>>2]=f[p+4>>2];f[s+8>>2]=f[p+8>>2];b=0;while(1){if((b|0)==3)break;f[p+(b<<2)>>2]=0;b=b+1|0}x=0;ua(83,d|0,s|0);r=x;x=0;if(r&1){b=Ia()|0;MTa(s);d=11;break}MTa(s);MTa(p);q=f[d>>2]|0;f[e>>2]=q;f[s>>2]=f[e>>2];r=q;if(Xma(c,s)|0){Q_a();x=0;ia(52,g|0,111419)|0;l=x;x=0;if(l&1){Ia()|0;lCa()}else lCa()}f[h>>2]=o;f[s>>2]=f[h>>2];d=Xma(c,s)|0;l=(d|0)!=0;if(l){b=d+4|0;k=d+8|0}else{f[i>>2]=o;f[s>>2]=f[i>>2];b=(jJ(c,s)|0)+16|0;f[j>>2]=f[b>>2];f[s>>2]=f[j>>2];j=(MI(c,s)|0)+8|0;f[k>>2]=f[b>>2];f[s>>2]=f[k>>2];b=(MI(c,s)|0)+4|0;k=j}j=f[b>>2]|0;_0a(p,c);f[A>>2]=0;g=A+4|0;f[g>>2]=0;h=A+8|0;f[h>>2]=0;i=k+4|0;e=0;while(1){if(e>>>0>=(f[i>>2]|0)-(f[k>>2]|0)>>2>>>0){d=18;break}x=0;b=ja(46,f[p>>2]|0,e|0,2)|0;d=x;x=0;if(d&1){d=25;break}x=0;b=ja(80,b|0,f[(f[k>>2]|0)+(e<<2)>>2]|0,c|0)|0;d=x;x=0;if(d&1){d=25;break}f[s>>2]=b;d=f[g>>2]|0;if(d>>>0>=(f[h>>2]|0)>>>0){x=0;ua(1836,A|0,s|0);d=x;x=0;if(d&1){d=25;break}}else{f[d>>2]=b;f[g>>2]=(f[g>>2]|0)+4}e=e+1|0}do if((d|0)==18){if(l){f[m>>2]=o;x=0;f[s>>2]=f[m>>2];b=ka(13,p|0,s|0,A|0,j|0)|0;p=x;x=0;if(p&1)d=31}else{f[n>>2]=o;x=0;f[s>>2]=f[n>>2];b=ka(10,p|0,s|0,A|0,j|0)|0;p=x;x=0;if(p&1)d=31}if((d|0)==31){b=Ia()|0;break}f[z>>2]=0;e=z+4|0;f[e>>2]=0;g=z+8|0;f[g>>2]=0;d=0;while(1){if(d>>>0>=15){d=30;break}f[s>>2]=2;h=f[e>>2]|0;if(h>>>0>=(f[g>>2]|0)>>>0){x=0;ua(1872,z|0,s|0);p=x;x=0;if(p&1){d=36;break}}else{f[h>>2]=2;f[e>>2]=h+4}d=d+1|0}do if((d|0)==30){f[v>>2]=q;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;x=0;b=ia(194,b|0,c|0)|0;q=x;x=0;if(!(q&1)?(x=0,f[s>>2]=f[v>>2],t=ma(28,s|0,z|0,2,w|0,b|0)|0,v=x,x=0,!(v&1)):0){zSa(w);f[t+32>>2]=f[a+16>>2];x=0;ua(73,c|0,t|0);w=x;x=0;if(w&1){b=Ia()|0;break}else{zSa(z);zSa(A);u=y;return r|0}}b=Ia()|0;zSa(w)}else if((d|0)==36)b=Ia()|0;while(0);zSa(z)}else if((d|0)==25)b=Ia()|0;while(0);zSa(A)}while(0);if((d|0)==11)MTa(p);Ua(b|0);return 0}function nh(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;A=u;u=u+304|0;j=A+300|0;B=A+288|0;C=A+276|0;w=A+272|0;y=A;v=A+268|0;t=A+264|0;i=f[e+4>>2]|0;r=NSa(e,A+160|0)|0;sP(B,e,j);f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[C+(e<<2)>>2]=0;e=e+1|0}s=$Ea(i)|0;q=C+11|0;if((b[q>>0]|0)<0)e=(f[C+8>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,C|0,e|0);p=x;x=0;if(p&1)e=Ia()|0;else{i=(b[q>>0]|0)<0?f[C>>2]|0:C;f[w>>2]=i;f[v>>2]=y;f[t>>2]=0;o=C+4|0;p=C+8|0;n=f[j>>2]|0;j=i;i=a;l=a;while(1){if(!l){a=0;k=1;l=0}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;m=x;x=0;if(m&1){z=27;break}}else e=Jbb(f[e>>2]|0)|0;m=$5a(e)|0;i=m?0:i;a=m?0:a;k=m;l=m?0:l}if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;m=x;x=0;if(m&1){z=27;break}}else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0))if(k)m=c;else{z=38;break}else z=18}else z=18;if((z|0)==18){z=0;if(k){c=0;z=38;break}else m=0}c=b[q>>0]|0;c=c<<24>>24<0?f[o>>2]|0:c&255;if((f[w>>2]|0)==(j+c|0)){x=0;ua(108,C|0,c<<1|0);k=x;x=0;if(k&1){z=29;break}if((b[q>>0]|0)<0)e=(f[p>>2]&2147483647)+-1|0;else e=10;x=0;ua(108,C|0,e|0);k=x;x=0;if(k&1){z=29;break}j=(b[q>>0]|0)<0?f[C>>2]|0:C;f[w>>2]=j+c}c=l+12|0;e=f[c>>2]|0;k=l+16|0;if((e|0)==(f[k>>2]|0)){x=0;e=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;D=x;x=0;if(D&1){z=27;break}}else e=Jbb(f[e>>2]|0)|0;if(Jr(e,s,j,w,t,n,B,y,v,r)|0){c=m;z=38;break}e=f[c>>2]|0;if((e|0)==(f[k>>2]|0)){x=0;ga(f[(f[l>>2]|0)+40>>2]|0,l|0)|0;D=x;x=0;if(D&1){z=27;break}}else f[c>>2]=e+4;c=m}if((z|0)==27)e=Ia()|0;else if((z|0)==29)e=Ia()|0;else if((z|0)==38){D=b[B+11>>0]|0;e=f[v>>2]|0;if(((D<<24>>24<0?f[B+4>>2]|0:D&255)|0)!=0?(e-y|0)<160:0){t=f[t>>2]|0;D=e+4|0;f[v>>2]=D;f[e>>2]=t;e=D}D=gJ(j,f[w>>2]|0,g,s)|0;d[h>>1]=D;Uz(B,y,e,g);do if(!l){j=1;z=46}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0)){x=0;e=ga(f[(f[a>>2]|0)+36>>2]|0,l|0)|0;D=x;x=0;if(D&1)break}else e=Jbb(f[e>>2]|0)|0;j=$5a(e)|0;i=j?0:i;z=46}while(0);do if((z|0)==46){if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;D=x;x=0;if(D&1)break}else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0)){if(!j)z=53}else z=51}else z=51;if((z|0)==51?j:0)z=53;if((z|0)==53)f[g>>2]=f[g>>2]|2;MTa(C);MTa(B);u=A;return i|0}while(0);e=Ia()|0}}MTa(C);MTa(B);Ua(e|0);return 0}function oh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=NSa(d,z+160|0)|0;sP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=$Ea(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;l=$5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}C=FK(i,f[v>>2]|0,e,r)|0;f[g>>2]=C;Uz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;i=$5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;MTa(B);MTa(A);u=z;return h|0}while(0);d=Ia()|0}}MTa(B);MTa(A);Ua(d|0);return 0}function ph(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=NSa(d,z+160|0)|0;sP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=$Ea(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;l=$5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}C=PD(i,f[v>>2]|0,e,r)|0;f[g>>2]=C;Uz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;i=$5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;MTa(B);MTa(A);u=z;return h|0}while(0);d=Ia()|0}}MTa(B);MTa(A);Ua(d|0);return 0}function qh(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0;t=u;u=u+64|0;y=t+40|0;z=t+28|0;o=t+24|0;v=t+12|0;w=t;f[y>>2]=0;s=y+4|0;f[s>>2]=0;p=y+8|0;f[p>>2]=0;f[z>>2]=0;q=z+4|0;f[q>>2]=0;r=z+8|0;f[r>>2]=0;k=a+16|0;x=0;c=ga(313,k|0)|0;n=x;x=0;do if(n&1)g=6;else{f[o>>2]=c;l=a+4|0;m=a+8|0;n=a+12|0;d=c;j=c;a:while(1){x=0;ta(500,a|0);i=x;x=0;if(i&1){g=5;break}c=f[a>>2]|0;switch(b[c>>0]|0){case 0:{g=35;break a}case 40:{f[a>>2]=c+1;c=f[s>>2]|0;if((c|0)==(f[p>>2]|0)){x=0;ua(1892,y|0,o|0);j=x;x=0;if(j&1){g=5;break a}}else{f[c>>2]=d;f[s>>2]=(f[s>>2]|0)+4}x=0;e=ga(313,k|0)|0;j=x;x=0;if(j&1){g=5;break a}c=aLa(e,f[l>>2]|0,(f[a>>2]|0)+-1-(f[m>>2]|0)|0,f[n>>2]|0)|0;f[o>>2]=c;d=f[q>>2]|0;if((d|0)==(f[r>>2]|0)){x=0;ua(1893,z|0,n|0);j=x;x=0;if(j&1){g=5;break a}d=f[q>>2]|0}else{f[d>>2]=f[n>>2];d=(f[q>>2]|0)+4|0;f[q>>2]=d}if(((f[s>>2]|0)-(f[y>>2]|0)|0)!=(d-(f[z>>2]|0)|0)){g=17;break a}break}case 41:{f[a>>2]=c+1;d=f[y>>2]|0;g=f[s>>2]|0;if((d|0)==(g|0)){g=19;break a}h=g+-4|0;c=f[h>>2]|0;f[o>>2]=c;i=f[q>>2]|0;e=c;if((g-d|0)!=(i-(f[z>>2]|0)|0)){g=26;break a}f[s>>2]=h;d=i+-4|0;f[n>>2]=f[d>>2];f[q>>2]=d;x=0;d=ga(314,e|0)|0;i=x;x=0;if(i&1){g=27;break a}x=0;ua(1894,d|0,j|0);j=x;x=0;if(j&1){g=27;break a}break}default:{x=0;c=ga(314,j|0)|0;i=x;x=0;if(i&1){g=5;break a}x=0;d=ga(315,a|0)|0;i=x;x=0;if(i&1){g=5;break a}x=0;ua(1894,c|0,d|0);i=x;x=0;if(i&1){g=5;break a}else{e=j;c=j}}}d=c;j=e}if((g|0)==5){c=Ia()|0;g=7;break}else if((g|0)==17){x=0;wa(71,99450,99262,127,99483);x=0;g=6;break}else if((g|0)==19){e=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;w=j7a(99489)|0;x=0;va(87,v|0,99489,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,e|0,v|0);w=x;x=0;if(w&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(v);if(!d)break}else c=Ia()|0;La(e|0);break}else if((g|0)==26){x=0;wa(71,99450,99262,135,99483);x=0;c=Ia()|0}else if((g|0)==27)c=Ia()|0;else if((g|0)==35){if((f[s>>2]|0)==(f[y>>2]|0)){zSa(z);zSa(y);u=t;return j|0}e=Ea(20)|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;v=j7a(99508)|0;x=0;va(87,w|0,99508,v|0);v=x;x=0;if(!(v&1)){x=0;wa(138,e|0,w|0,f[j+28>>2]|0,f[j+32>>2]|0);v=x;x=0;if(v&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(w);if(!d)break}else c=Ia()|0;La(e|0);break}}while(0);if((g|0)==6){c=Ia()|0;g=7}zSa(z);zSa(y);Ua(c|0);return 0}function rh(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=u;u=u+80|0;l=k+60|0;m=k+48|0;j=k+72|0;n=k+36|0;o=k+24|0;p=k+12|0;q=k;wHa(c,0,0)|0;f[d>>2]=e;i=1;a:while(1){h=Or(a,i)|0;if(C7a(b[h>>0]|0)|0){c=50;break}h=lF(Or(a,i)|0)|0;e=FWa(h,61)|0;if(!e){c=4;break}e=e+1|0;if(!(b[e>>0]|0)){c=11;break}e=xZa(e,j,10)|0;g=I;if(b[f[j>>2]>>0]|0){c=18;break}switch(b[h>>0]|0){case 97:{if(g>>>0>0|(g|0)==0&e>>>0>4294967295){c=26;break a}wHa(d,e,g)|0;break}case 111:{if(g>>>0>0|(g|0)==0&e>>>0>4294967295){c=34;break a}wHa(c,e,g)|0;break}default:{c=41;break a}}i=i+1|0}do if((c|0)==4){h=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;q=j7a(93172)|0;x=0;va(87,l|0,93172,q|0);q=x;x=0;if(!(q&1)){x=0;ua(261,h|0,l|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(l);if(!g)break}else e=Ia()|0;La(h|0)}else if((c|0)==11){h=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;q=j7a(93202)|0;x=0;va(87,m|0,93202,q|0);q=x;x=0;if(!(q&1)){x=0;wa(138,h|0,m|0,f[a+28>>2]|0,f[a+32>>2]|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(m);if(!g)break}else e=Ia()|0;La(h|0)}else if((c|0)==18){h=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;q=j7a(93236)|0;x=0;va(87,n|0,93236,q|0);q=x;x=0;if(!(q&1)){x=0;wa(138,h|0,n|0,f[a+28>>2]|0,f[a+32>>2]|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(n);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==26){h=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;q=j7a(93267)|0;x=0;va(87,o|0,93267,q|0);q=x;x=0;if(!(q&1)){x=0;ua(261,h|0,o|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(o);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==34){h=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;q=j7a(93277)|0;x=0;va(87,p|0,93277,q|0);q=x;x=0;if(!(q&1)){x=0;ua(261,h|0,p|0);q=x;x=0;if(q&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(p);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==41){h=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;p=j7a(93288)|0;x=0;va(87,q|0,93288,p|0);p=x;x=0;if(!(p&1)){x=0;ua(261,h|0,q|0);p=x;x=0;if(p&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(q);if(!g){c=48;break}}else e=Ia()|0;La(h|0);c=48}else if((c|0)==50){u=k;return i|0}while(0);Ua(e|0);return 0}function sh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;g=j;d=j+4|0;e=a+4|0;c=q8(f[e>>2]|0,c)|0;f[g>>2]=c;if(!c)Ca(73237,73170,439,73273);switch(f[c>>2]|0){case 0:{c=DCa(134008,123452)|0;d=gm(a+8|0,g)|0;DCa(DCa(DCa(zm(c,f[d>>2]|0)|0,116871)|0,Fha(f[(f[g>>2]|0)+4>>2]|0)|0)|0,73279)|0;break}case 1:{if(cia()|0){DCa(134008,73286)|0;lw(f[c+4>>2]|0,134008,1,0)|0;Ema(134008,10)|0}c=DCa(134008,123452)|0;d=gm(a+8|0,g)|0;DCa(zm(c,f[d>>2]|0)|0,73289)|0;ci(a,f[g>>2]|0);break}case 2:{c=eQa(c,0)|0;f[d>>2]=c;c=(f[c+16>>2]|0)-(f[c+12>>2]|0)>>2;m=DCa(134008,123452)|0;l=a+8|0;k=gm(l,g)|0;k=DCa(zm(m,f[k>>2]|0)|0,73293)|0;d=gm(l,d)|0;zm(k,f[d>>2]|0)|0;d=c+1|0;c=1;while(1){if(c>>>0>=d>>>0)break;DCa(134008,123496)|0;ZE(a,eQa(f[g>>2]|0,c)|0);c=c+1|0}break}case 3:{l=DCa(134008,73302)|0;m=eQa(c,0)|0;f[d>>2]=m;m=gm(a+8|0,d)|0;m=Ema(zm(l,f[m>>2]|0)|0,32)|0;Ema(zm(m,f[(f[g>>2]|0)+4>>2]|0)|0,32)|0;ZE(a,eQa(f[g>>2]|0,1)|0);DCa(134008,73312)|0;break}case 4:{m=DCa(134008,123452)|0;l=gm(a+8|0,g)|0;l=DCa(zm(m,f[l>>2]|0)|0,73318)|0;m=f[g>>2]|0;zm(l,(f[m+16>>2]|0)-(f[m+12>>2]|0)>>2)|0;break}case 5:{m=eQa(c,0)|0;k=DCa(134008,123452)|0;l=gm(a+8|0,g)|0;l=Ema(zm(k,f[l>>2]|0)|0,58)|0;DCa(l,Fha(tT(m)|0)|0)|0;DCa(134008,73328)|0;ZE(a,m);break}case 6:{DCa(134008,73337)|0;hb();break}default:hb()}d=f[g>>2]|0;c=f[d>>2]|0;if(!(!(zab(c)|0)?!(Dab(c)|0):0))i=19;if(((i|0)==19?(h=f[e>>2]|0,(f[d+8>>2]|0)!=(f[(f[h+4>>2]|0)+8>>2]|0)):0)?Vz(h+88|0,g)|0:0){DCa(134008,73347)|0;b[a+28>>0]=1}Ema(134008,10)|0;do if(cia()|0){d=f[g>>2]|0;c=f[d>>2]|0;if(!(zab(c)|0)?!(Dab(c)|0):0)break;Py(a,d)}while(0);u=j;return}function th(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+48|0;A=z+28|0;m=z+20|0;v=z+24|0;y=z+8|0;w=z;Bab(m);do switch(f[b+8>>2]|0){case 67:case 54:{fo(a,b);break}case 13:{L1a(A,f[33064]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 14:{L1a(A,f[33066]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 38:{L1a(A,f[33065]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 39:{L1a(A,f[33067]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 27:{L1a(A,f[33076]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 28:{L1a(A,f[33077]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 29:{L1a(A,f[33078]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 30:{L1a(A,f[33079]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}case 31:{L1a(A,f[33080]|0);t=f[A>>2]|0;f[m>>2]=t;o=12;break}default:{}}while(0);do if((o|0)==12){j=t;s=a+48|0;r=W7a(m)|0;p=a+52|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){k=i+-1|0;l=(k&i|0)==0;if(!l)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=k&r;c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c)o=27;else do{c=f[c>>2]|0;if(!c){o=27;break a}h=f[c+4>>2]|0;if((h|0)!=(r|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){o=27;break a}}}while(!(g2a(f[c+8>>2]|0,j)|0))}else{d=0;o=27}while(0);if((o|0)==27){W6(A,s,r,m);j=a+60|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+64>>2];do if(q|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(680,s|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r}else{i=c;d=(r>>>0)%(c>>>0)|0}}while(0);c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+56|0;h=f[A>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[s>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=A;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[s>>2]|0)+(c<<2)>>2]=h;c=A}}else{s=f[A>>2]|0;f[s>>2]=f[c>>2];f[c>>2]=s;c=A}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}c=f[a+44>>2]|0;f[v>>2]=t;f[w>>2]=f[b+12>>2];f[w+4>>2]=f[b+16>>2];f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;x=0;ua(168,y|0,2);t=x;x=0;if(t&1){A=Ia()|0;zSa(y);Ua(A|0)}qda(y,w,w+8|0);w=f[b+4>>2]|0;x=0;f[A>>2]=f[v>>2];c=ka(13,c|0,A|0,y|0,w|0)|0;A=x;x=0;if(A&1){A=Ia()|0;zSa(y);Ua(A|0)}else{GVa(f[a+16>>2]|0,c)|0;zSa(y);break}}while(0);u=z;return}function uh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;E=u;u=u+64|0;z=E+16|0;H=E+48|0;F=E+32|0;A=E;oD(H,a,1);x=0;va(159,F|0,a|0,1);B=x;x=0;if(B&1)h=Ia()|0;else{B=a+44|0;h=f[B>>2]|0;x=0;i=ga(320,H|0)|0;I=x;x=0;a:do if((((((!(I&1)?(j=f[B>>2]|0,x=0,k=ga(320,c|0)|0,I=x,x=0,!(I&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,I=x,x=0,!(I&1)):0)?(m=f[B>>2]|0,x=0,n=ga(320,e|0)|0,I=x,x=0,!(I&1)):0)?(x=0,o=ja(46,f[m>>2]|0,n|0,1)|0,I=x,x=0,!(I&1)):0)?(x=0,p=ka(7,f[j>>2]|0,0,l|0,o|0)|0,I=x,x=0,!(I&1)):0)?(x=0,C=ja(45,h|0,i|0,p|0)|0,I=x,x=0,!(I&1)):0){h=f[B>>2]|0;x=0;i=ga(320,F|0)|0;I=x;x=0;if((((((!(I&1)?(q=f[B>>2]|0,x=0,r=ga(320,d|0)|0,I=x,x=0,!(I&1)):0)?(x=0,s=ja(46,f[q>>2]|0,r|0,1)|0,I=x,x=0,!(I&1)):0)?(t=f[B>>2]|0,x=0,v=ga(320,g|0)|0,I=x,x=0,!(I&1)):0)?(x=0,w=ja(46,f[t>>2]|0,v|0,1)|0,I=x,x=0,!(I&1)):0)?(x=0,y=ka(7,f[q>>2]|0,0,s|0,w|0)|0,I=x,x=0,!(I&1)):0)?(x=0,D=ja(45,h|0,i|0,y|0)|0,I=x,x=0,!(I&1)):0){k=f[B>>2]|0;x=0;c=ga(320,F|0)|0;I=x;x=0;do if(!(I&1)){j=f[B>>2]|0;x=0;h=ga(320,F|0)|0;I=x;x=0;if(I&1)break;x=0;i=ja(46,f[j>>2]|0,h|0,1)|0;I=x;x=0;if(I&1)break;h=f[B>>2]|0;t$a(A,1);x=0;f[z>>2]=f[A>>2];f[z+4>>2]=f[A+4>>2];f[z+8>>2]=f[A+8>>2];f[z+12>>2]=f[A+12>>2];h=ia(50,h|0,z|0)|0;I=x;x=0;if(I&1)break;x=0;h=ka(7,f[j>>2]|0,0,i|0,h|0)|0;I=x;x=0;if(I&1)break;x=0;k=ja(45,k|0,c|0,h|0)|0;I=x;x=0;if(I&1)break;c=f[B>>2]|0;x=0;h=ga(320,H|0)|0;I=x;x=0;do if(!(I&1)){x=0;j=ja(46,f[c>>2]|0,h|0,1)|0;I=x;x=0;if(I&1)break;i=f[B>>2]|0;x=0;h=ga(320,e|0)|0;I=x;x=0;if(I&1)break;x=0;h=ja(46,f[i>>2]|0,h|0,1)|0;I=x;x=0;if(I&1)break;x=0;h=ka(7,f[c>>2]|0,18,j|0,h|0)|0;I=x;x=0;if(I&1)break;x=0;j=ka(8,c|0,h|0,k|0,0)|0;I=x;x=0;if(I&1)break;h=f[B>>2]|0;x=0;i=ga(320,H|0)|0;I=x;x=0;do if(!(I&1)){x=0;h=ja(46,f[h>>2]|0,i|0,1)|0;I=x;x=0;if(I&1)break;x=0;h=oa(46,f[B>>2]|0,b|0,C|0,D|0,j|0,h|0)|0;I=x;x=0;if(I&1)break;x=0;va(161,a|0,h|0,F|0);I=x;x=0;if(I&1)break;MCa(F);MCa(H);u=E;return h|0}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break}h=Ia()|0}else G=34;while(0);if((G|0)==34)h=Ia()|0;MCa(F)}MCa(H);Ua(h|0);return 0}function vh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0;s=u;u=u+32|0;t=s+12|0;p=s;a:do if(((a|0)!=(c|0)?(b[a>>0]|0)==70:0)?(e=a+1|0,(e|0)!=(c|0)):0){if((b[e>>0]|0)==89){e=a+2|0;if((e|0)==(c|0))break}g=Cc(e,c,d)|0;if((g|0)!=(e|0)){f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;qW(t,123274,j7a(123274)|0);q=d+4|0;n=t+11|0;o=t+4|0;l=p+11|0;m=p+4|0;k=0;e=g;b:while(1){c:while(1){if((e|0)==(c|0)){r=11;break b}switch(b[e>>0]|0){case 69:{r=17;break b}case 118:{e=e+1|0;break}case 82:{h=e+1|0;if((h|0)!=(c|0)?(b[h>>0]|0)==69:0){g=1;e=h;break c}else r=24;break}case 79:{h=e+1|0;if((h|0)!=(c|0)?(b[h>>0]|0)==69:0){g=2;e=h;break c}else r=24;break}default:r=24}d:do if((r|0)==24){r=0;g=((f[q>>2]|0)-(f[d>>2]|0)|0)/24|0;x=0;i=ja(100,e|0,c|0,d|0)|0;j=x;x=0;if(j&1){r=27;break b}j=((f[q>>2]|0)-(f[d>>2]|0)|0)/24|0;if((i|0)==(e|0)|(i|0)==(c|0)){r=50;break b}e=g;while(1){if(e>>>0>=j>>>0)break;h=b[n>>0]|0;if((h<<24>>24<0?f[o>>2]|0:h&255)>>>0>1?(x=0,ia(216,t|0,123496)|0,h=x,x=0,h&1):0){r=32;break b}x=0;ua(3195,p|0,(f[d>>2]|0)+(e*24|0)|0);h=x;x=0;if(h&1){r=36;break b}h=b[l>>0]|0;v=h<<24>>24<0;x=0;ja(97,t|0,(v?f[p>>2]|0:p)|0,(v?f[m>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){r=37;break b}MTa(p);e=e+1|0}e=g;while(1){if(e>>>0>=j>>>0){e=i;break d}h=f[q>>2]|0;g=0;while(1){if((g|0)==-1)break;v=g+-1|0;OJa(h+(v*24|0)|0);g=v}f[q>>2]=h+-24;e=e+1|0}}while(0)}k=g}e:do if((r|0)==11){g=f[q>>2]|0;e=0;while(1){if((e|0)==-1)break;v=e+-1|0;OJa(g+(v*24|0)|0);e=v}f[q>>2]=g+-24;r=50}else if((r|0)==17){g=e+1|0;x=0;ia(216,t|0,123272)|0;v=x;x=0;f:do if(!(v&1)){switch(k&3){case 1:{x=0;ia(216,t|0,124700)|0;v=x;x=0;if(v&1)break f;break}case 2:{x=0;ia(216,t|0,124703)|0;v=x;x=0;if(v&1)break f;break}default:{}}e=f[q>>2]|0;if((f[d>>2]|0)==(e|0)){r=50;break e}x=0;ia(216,e+-24|0,123306)|0;v=x;x=0;if(!(v&1)?(v=b[n>>0]|0,d=v<<24>>24<0,x=0,ka(38,(f[q>>2]|0)+-12|0,0,(d?f[t>>2]|0:t)|0,(d?f[o>>2]|0:v&255)|0)|0,v=x,x=0,!(v&1)):0){MTa(t);a=g;break a}}while(0);a=Ia()|0}else if((r|0)==27)a=Ia()|0;else if((r|0)==32)a=Ia()|0;else if((r|0)==36){a=Ia()|0;r=38}else if((r|0)==37){a=Ia()|0;MTa(p);r=38}while(0);if((r|0)!=38)if((r|0)==50){MTa(t);break}MTa(t);Ua(a|0)}}while(0);u=s;return a|0}function wh(a,c){a=a|0;c=c|0;var d=0,e=0,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=u;u=u+48|0;q=r+8|0;p=r;l=a+28|0;f[l>>2]=c;f[a+32>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80788)|0;x4(f[c>>2]|0,f[a>>2]|0)|0;d=f[a+24>>2]|0;if(d|0?(b[a+8>>0]|0)==0:0){e=a+44|0;if(!(f[a+56>>2]|0)){Go(q,d);MD(e,q);BHa(q)}j=DCa(f[a>>2]|0,80794)|0;k=qm(e,c)|0;DCa(zm(j,f[k>>2]|0)|0,80799)|0}k=c+40|0;if(f[k>>2]|0?(b[a+8>>0]|0)==0:0)DCa(f[a>>2]|0,80803)|0;d=c+32|0;if(Qab(f[d>>2]|0)|0){j=DCa(DCa(f[a>>2]|0,f[a+12>>2]|0)|0,80823)|0;Ema(Bfa(j,f[d>>2]|0)|0,41)|0}h=c+8|0;i=c+12|0;d=f[i>>2]|0;e=f[h>>2]|0;a:do if((d|0)!=(e|0)){j=a+12|0;g=0;while(1){if(g>>>0>=d-e>>2>>>0)break a;DCa(f[a>>2]|0,f[j>>2]|0)|0;Ema(f[a>>2]|0,40)|0;d=yPa(f[a>>2]|0,80830)|0;d=Ema(Bfa(d,L3(g,f[l>>2]|0)|0)|0,32)|0;Ema(DCa(d,Fha(s9(c,g)|0)|0)|0,41)|0;g=g+1|0;d=f[i>>2]|0;e=f[h>>2]|0}}while(0);d=c+4|0;if(f[d>>2]|0){DCa(f[a>>2]|0,f[a+12>>2]|0)|0;Ema(f[a>>2]|0,40)|0;j=yPa(f[a>>2]|0,80837)|0;Ema(DCa(j,Fha(f[d>>2]|0)|0)|0,41)|0}_Ba(a);e=a+4|0;g=a+16|0;d=BZa(c)|0;while(1){if(d>>>0>=(kQa(c)|0)>>>0)break;Nwa(f[a>>2]|0,f[e>>2]|0)|0;Ema(f[a>>2]|0,40)|0;j=yPa(f[a>>2]|0,80845)|0;j=Ema(Bfa(j,L3(d,f[l>>2]|0)|0)|0,32)|0;Ema(DCa(j,Fha(s9(c,d)|0)|0)|0,41)|0;DCa(f[a>>2]|0,f[g>>2]|0)|0;d=d+1|0}if((b[a+21>>0]|0)!=0?(m=f[k>>2]|0,(m|0)!=0):0)lr(m,f[a>>2]|0,c)|0;else n=22;do if((n|0)==22){d=c+36|0;if(((b[a+20>>0]|0)==0?(o=f[d>>2]|0,zab(f[o>>2]|0)|0):0)?(o=(aSa(o)|0)+8|0,Oab(f[o>>2]|0)|0):0){g=(aSa(f[d>>2]|0)|0)+12|0;Q$a(q,g);LUa(p,g);g=q+4|0;e=f[p>>2]|0;d=f[p+4>>2]|0;while(1){if(!(qTa(f[q>>2]|0,f[g>>2]|0,e,d)|0))break;p=QOa(q)|0;QP(a,f[p>>2]|0);YYa(q)}break}QP(a,f[d>>2]|0)}while(0);pfa(a);u=r;return}function xh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;n=m+44|0;i=m+32|0;j=m+20|0;h=m+16|0;g=m+4|0;e=m;d=f[a>>2]|0;c=b[d>>0]|0;if(c<<24>>24==36){l=d+1|0;f[a>>2]=l;k=1;c=b[l>>0]|0}else{k=0;l=d}a:do if(c<<24>>24==34){d=l+1|0;f[a>>2]=d;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[n+(c<<2)>>2]=0;c=c+1|0}b:while(1){c=b[d>>0]|0;switch(c<<24>>24){case 0:{g=10;break b}case 34:{g=30;break b}case 92:{x=0;ua(82,n|0,92);g=x;x=0;if(g&1){g=21;break b}c=b[(f[a>>2]|0)+1>>0]|0;if(!(c<<24>>24)){g=18;break b}x=0;ua(82,n|0,c|0);g=x;x=0;if(g&1){g=21;break b}else c=2;break}default:{x=0;ua(82,n|0,c|0);g=x;x=0;if(g&1){g=21;break b}else c=1}}d=(f[a>>2]|0)+c|0;f[a>>2]=d}do if((g|0)==10){e=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;m=j7a(99527)|0;x=0;va(87,i|0,99527,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,e|0,i|0,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0);a=x;x=0;if(a&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(i);if(!d)break}else c=Ia()|0;La(e|0)}else if((g|0)==18){e=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;m=j7a(99547)|0;x=0;va(87,j|0,99547,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,e|0,j|0,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0);a=x;x=0;if(a&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(j);if(!d)break}else c=Ia()|0;La(e|0)}else if((g|0)==21){c=Ia()|0;g=23}else if((g|0)==30){f[a>>2]=d+1;x=0;c=ga(313,a+16|0)|0;j=x;x=0;if(!(j&1)?(x=0,va(88,h|0,((b[n+11>>0]|0)<0?f[n>>2]|0:n)|0,0),j=x,x=0,!(j&1)):0){g=aHa(c,f[h>>2]|0,k,1)|0;aLa(g,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0,f[a+12>>2]|0)|0;MTa(n);g=46;break a}c=Ia()|0;g=23}while(0);MTa(n);g=47}else{d=l;c:while(1){if(!(c<<24>>24)){c=0;break}if(w6a(c<<24>>24)|0)break;switch(c<<24>>24){case 40:case 41:case 59:break c;default:{}}n=d+1|0;f[a>>2]=n;c=b[n>>0]|0;d=n}if((l|0)!=(d|0)){b[d>>0]=0;g=oRa(a+16|0)|0;kNa(e,l,0);n=aHa(g,f[e>>2]|0,k,0)|0;aLa(n,f[a+4>>2]|0,l-(f[a+8>>2]|0)|0,f[a+12>>2]|0)|0;b[f[a>>2]>>0]=c;c=g;g=46;break}e=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;n=j7a(99348)|0;x=0;va(87,g|0,99348,n|0);n=x;x=0;if(!(n&1)){x=0;wa(138,e|0,g|0,f[a+4>>2]|0,(f[a>>2]|0)-(f[a+8>>2]|0)|0);n=x;x=0;if(n&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(g);if(!d){g=47;break}}else c=Ia()|0;La(e|0);g=47}while(0);if((g|0)==46){u=m;return c|0}else if((g|0)==47)Ua(c|0);return 0}function yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0;s=u;u=u+80|0;m=s+64|0;p=s+60|0;t=s+12|0;r=s;q=s+56|0;l=f[c+4>>2]|0;n=mSa(f[f[c>>2]>>2]|0)|0;_0a(p,a);_0a(m,a);o=vwa(f[m>>2]|0,0)|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;_Z(r,109930,j7a(109930)|0);x=0;ia(59,r|0,f[l>>2]|0)|0;k=x;x=0;do if(k&1){d=Ia()|0;j=11}else{f[t>>2]=f[r>>2];f[t+4>>2]=f[r+4>>2];f[t+8>>2]=f[r+8>>2];d=0;while(1){if((d|0)==3)break;f[r+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,m|0,t|0);k=x;x=0;if(k&1){d=Ia()|0;MTa(t);j=11;break}k=o+8|0;f[k>>2]=f[m>>2];MTa(t);MTa(r);f[f[c>>2]>>2]=o;Pza(t);f[t+36>>2]=f[k>>2];f[t+40>>2]=p;i=t+24|0;d=0;while(1){f[m>>2]=d;if(d>>>0>=(kQa(l)|0)>>>0){j=8;break}x=0;d=ia(80,l|0,d|0)|0;j=x;x=0;if(j&1){j=12;break}x=0;d=ia(96,b|0,d|0)|0;j=x;x=0;if(j&1){j=12;break}x=0;c=ia(150,i|0,m|0)|0;j=x;x=0;if(j&1){j=12;break}f[c>>2]=d;d=(f[m>>2]|0)+1|0}do if((j|0)==8){b=l+8|0;e=l+12|0;h=o+12|0;g=n+8|0;d=0;while(1){f[m>>2]=d;if(d>>>0>=(f[e>>2]|0)-(f[b>>2]|0)>>2>>>0)break;x=0;d=ia(150,i|0,m|0)|0;c=x;x=0;if(c&1){j=24;break}d=f[d>>2]|0;x=0;c=ia(75,g|0,f[m>>2]|0)|0;v=x;x=0;if(v&1){j=24;break}x=0;d=ja(45,p|0,d|0,f[c>>2]|0)|0;v=x;x=0;if(v&1){j=24;break}x=0;ua(81,h|0,d|0);v=x;x=0;if(v&1){j=24;break}d=(f[m>>2]|0)+1|0}if((j|0)==24){d=Ia()|0;break}e=l+20|0;g=l+24|0;b=0;while(1){if(b>>>0>=(f[g>>2]|0)-(f[e>>2]|0)>>2>>>0)break;d=(BZa(l)|0)+b|0;f[m>>2]=d;x=0;d=ia(191,i|0,m|0)|0;v=x;x=0;if(v&1){j=32;break}d=f[d>>2]|0;x=0;c=ia(192,f[(f[e>>2]|0)+(b<<2)>>2]|0,a|0)|0;v=x;x=0;if(v&1){j=32;break}x=0;d=ja(45,p|0,d|0,c|0)|0;v=x;x=0;if(v&1){j=32;break}x=0;ua(81,h|0,d|0);v=x;x=0;if(v&1){j=32;break}b=b+1|0}if((j|0)==32){d=Ia()|0;break}x=0;d=ia(190,f[l+36>>2]|0,a|0)|0;v=x;x=0;do if((!(v&1)?(f[r>>2]=d,x=0,ua(2593,t|0,r|0),v=x,x=0,!(v&1)):0)?(x=0,ua(81,h|0,f[r>>2]|0),v=x,x=0,!(v&1)):0){v=f[n+4>>2]|0;f[o+4>>2]=v;if((v|0)==0?(f[(f[r>>2]|0)+4>>2]|0)==5:0){f[q>>2]=f[k>>2];x=0;f[m>>2]=f[q>>2];d=ka(12,p|0,m|0,0,0)|0;v=x;x=0;if(v&1)break;x=0;ua(81,h|0,d|0);v=x;x=0;if(v&1)break}_Ka(t);u=s;return}while(0);d=Ia()|0}else if((j|0)==12)d=Ia()|0;while(0);_Ka(t)}while(0);if((j|0)==11)MTa(r);Ua(d|0)}function zh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;t=u;u=u+48|0;q=t+40|0;r=t+36|0;v=t+24|0;m=t;n=t+20|0;s=t+8|0;f[r>>2]=c;h=c;do if(b[a+12>>0]|0){d=DCa(134176,87664)|0;dYa(q,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[q>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,p=x,x=0,!(p&1)):0){OCa(q);Wq(d,g)|0;fu(d)|0;break}v=Ia()|0;OCa(q);Ua(v|0)}while(0);f[v>>2]=0;o=v+4|0;f[o>>2]=0;i=v+8|0;f[i>>2]=0;p=a+160|0;j=a+164|0;k=a+156|0;l=a+4|0;e=c;g=c;while(1){x=0;d=ga(308,a|0)|0;c=x;x=0;if(c&1){e=19;break}f[e+4>>2]=d;x=0;d=ga(309,a|0)|0;c=x;x=0;if(c&1){e=22;break}f[g+8>>2]=d;f[n>>2]=d;d=(f[g+4>>2]|0)!=0&1;f[q>>2]=f[n>>2];hUa(m,q,d);d=f[p>>2]|0;if(d>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1887,k|0,m|0);c=x;x=0;if(c&1){e=23;break}}else{e=m;g=f[e+4>>2]|0;c=d;f[c>>2]=f[e>>2];f[c+4>>2]=g;f[p>>2]=(f[p>>2]|0)+8}d=f[o>>2]|0;if((d|0)==(f[i>>2]|0)){x=0;ua(104,v|0,r|0);h=x;x=0;if(h&1){e=19;break}}else{f[d>>2]=h;f[o>>2]=(f[o>>2]|0)+4}x=0;d=ga(307,a|0)|0;h=x;x=0;if(h&1){e=19;break}if(d<<24>>24!=2){e=24;break}x=0;d=ga(221,f[l>>2]|0)|0;h=x;x=0;if(h&1){e=19;break}f[r>>2]=d;e=d;g=d;h=d}do if((e|0)==19){d=Ia()|0;e=21}else if((e|0)==22)d=Ia()|0;else if((e|0)==23)d=Ia()|0;else if((e|0)==24){x=0;ta(497,a|0);n=x;x=0;if(n&1){d=Ia()|0;e=21;break}h=a+188|0;i=a+192|0;j=a+196|0;k=a+168|0;g=0;while(1){d=f[o>>2]|0;if((d|0)==(f[v>>2]|0)){e=45;break}e=d+-4|0;d=f[e>>2]|0;f[r>>2]=d;f[o>>2]=e;e=f[i>>2]|0;c=e-(f[h>>2]|0)>>2;if(!g)e=d;else{f[q>>2]=g;if((f[j>>2]|0)>>>0<=e>>>0){x=0;ua(1836,h|0,q|0);n=x;x=0;if(n&1){e=32;break}}else{f[e>>2]=g;f[i>>2]=(f[i>>2]|0)+4;d=f[r>>2]|0}e=d}x=0;ta(498,a|0);n=x;x=0;if(n&1){e=38;break}d=(f[i>>2]|0)-(f[h>>2]|0)>>2;if(d>>>0>>0){f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;n=j7a(97464)|0;x=0;va(87,s|0,97464,n|0);n=x;x=0;if(n&1){e=39;break}x=0;ua(1870,a|0,s|0);n=x;x=0;if(n&1){e=40;break}MTa(s)}x=0;wa(143,a|0,e|0,c|0,d|0);n=x;x=0;if(n&1){e=39;break}l=f[r>>2]|0;m=f[l+4>>2]|0;d=l+8|0;n=(BB(k,d)|0)!=0;x=0;va(149,l|0,m|0,n|0);n=x;x=0;if(n&1){e=44;break}f[p>>2]=(f[p>>2]|0)+-8;b5(k,d);g=e}if((e|0)==32){d=Ia()|0;break}else if((e|0)==38){d=Ia()|0;break}else if((e|0)==39){d=Ia()|0;break}else if((e|0)==40){d=Ia()|0;MTa(s);break}else if((e|0)==44){d=Ia()|0;break}else if((e|0)==45){zSa(v);u=t;return}}while(0);zSa(v);Ua(d|0)}function Ah(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;l=o+8|0;p=o+12|0;h=o;f[l>>2]=c;f[p>>2]=0;m=p+4|0;f[m>>2]=0;i=p+8|0;f[i>>2]=0;j=a+4|0;n=a+20|0;k=a+28|0;e=0;g=0;d=0;while(1){if((e|0)!=(g|0)){x=0;ia(115,f[a>>2]|0,f[j>>2]|0)|0;g=x;x=0;if(g&1){c=5;break}d=f[m>>2]|0}if((d|0)==(f[i>>2]|0)){x=0;ua(104,p|0,l|0);g=x;x=0;if(g&1){c=5;break}}else{f[d>>2]=c;f[m>>2]=(f[m>>2]|0)+4}if(b[n>>0]|0){x=0;d=ia(62,f[a>>2]|0,118452)|0;g=x;x=0;if(g&1){c=5;break}x=0;c=ga(228,f[(f[l>>2]|0)+4>>2]|0)|0;g=x;x=0;if(g&1){c=5;break}x=0;d=ia(62,d|0,c|0)|0;g=x;x=0;if(g&1){c=5;break}x=0;ia(62,d|0,81227)|0;g=x;x=0;if(g&1){c=5;break}}x=0;ia(71,f[a>>2]|0,40)|0;g=x;x=0;if(g&1){c=5;break}MXa(h,f[k>>2]|0,f[a>>2]|0);e=f[l>>2]|0;x=0;ua(641,h|0,e|0);g=x;x=0;if(g&1){c=23;break}x=0;ta(465,a|0);g=x;x=0;if(g&1){c=5;break}if(!(Jbb(f[e+16>>2]|0)|0)){c=24;break}d=e+12|0;x=0;c=ia(75,d|0,0)|0;g=x;x=0;if(g&1){c=5;break}if(!(zab(f[f[c>>2]>>2]|0)|0)){c=24;break}x=0;d=ia(75,d|0,0)|0;g=x;x=0;if(g&1){c=5;break}x=0;c=ga(217,f[d>>2]|0)|0;g=x;x=0;if(g&1){c=5;break}f[l>>2]=c;d=f[m>>2]|0;e=d;g=f[p>>2]|0}do if((c|0)==5)d=Ia()|0;else if((c|0)==23)d=Ia()|0;else if((c|0)==24){c=f[m>>2]|0;j=f[c+-4>>2]|0;d=c;a:while(1){if((d|0)==(f[p>>2]|0)){c=45;break}i=c+-4|0;e=f[i>>2]|0;f[l>>2]=e;f[m>>2]=i;i=e+12|0;h=e+16|0;g=0;while(1){if(g>>>0>=(Jbb(f[h>>2]|0)|0)>>>0)break;if((g|0)==0&(j|0)!=(e|0)){x=0;ta(466,a|0);k=x;x=0;if(k&1){c=30;break a}if(b[n>>0]|0){x=0;ia(62,f[a>>2]|0,75688)|0;k=x;x=0;if(k&1){c=30;break a}x=0;d=ia(75,i|0,0)|0;k=x;x=0;if(k&1){c=40;break a}x=0;d=ga(217,f[d>>2]|0)|0;k=x;x=0;if(k&1){c=40;break a}d=d+8|0;if(Qab(f[d>>2]|0)|0){x=0;c=ia(71,f[a>>2]|0,32)|0;k=x;x=0;if(k&1){c=40;break a}x=0;ia(76,c|0,f[d>>2]|0)|0;k=x;x=0;if(k&1){c=40;break a}}}x=0;ia(71,f[a>>2]|0,10)|0;k=x;x=0;if(k&1){c=30;break a}}else{x=0;d=ia(75,i|0,g|0)|0;k=x;x=0;if(k&1){c=30;break a}x=0;ua(642,a|0,f[d>>2]|0);k=x;x=0;if(k&1){c=30;break a}}g=g+1|0}c=f[m>>2]|0;d=c}if((c|0)==30){d=Ia()|0;break}else if((c|0)==40){d=Ia()|0;break}else if((c|0)==45){x=0;ta(466,a|0);m=x;x=0;do if(!(m&1)){if(b[n>>0]|0){x=0;ia(62,f[a>>2]|0,75688)|0;n=x;x=0;if(n&1)break;if(Qab(f[e+8>>2]|0)|0){x=0;d=ia(71,f[a>>2]|0,32)|0;n=x;x=0;if(n&1)break;x=0;ia(76,d|0,f[e+8>>2]|0)|0;n=x;x=0;if(n&1)break}}zSa(p);u=o;return}while(0);d=Ia()|0;break}}while(0);zSa(p);Ua(d|0)}function Bh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=c+4|0;a:while(1){l=b;e=b+-4|0;b:while(1){k=a;d=l-k|0;g=d>>2;switch(g|0){case 1:case 0:break a;case 2:{m=4;break a}case 3:{m=6;break a}case 4:{m=7;break a}case 5:{m=8;break a}default:{}}if((d|0)<124){m=10;break a}i=a+(((g|0)/2|0)<<2)|0;if((d|0)>3996){d=(g|0)/4|0;d=ox(a,a+(d<<2)|0,i,i+(d<<2)|0,e,c)|0}else d=_x(a,i,e,c)|0;if(Ov(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[i>>2]|0)|0)g=e;else{g=e;do{g=g+-4|0;if((a|0)==(g|0)){m=17;break b}}while(!(Ov(f[c>>2]|0,f[n>>2]|0,f[g>>2]|0,f[i>>2]|0)|0));j=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=j;d=d+1|0}h=a+4|0;c:do if(h>>>0>>0){j=i;while(1){while(1){i=h+4|0;if(Ov(f[c>>2]|0,f[n>>2]|0,f[h>>2]|0,f[j>>2]|0)|0)h=i;else break}do g=g+-4|0;while(!(Ov(f[c>>2]|0,f[n>>2]|0,f[g>>2]|0,f[j>>2]|0)|0));if(h>>>0>g>>>0){g=j;break c}o=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=o;j=(j|0)==(h|0)?g:j;h=i;d=d+1|0}}else g=i;while(0);if((h|0)!=(g|0)?Ov(f[c>>2]|0,f[n>>2]|0,f[g>>2]|0,f[h>>2]|0)|0:0){o=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=o;d=d+1|0}if(!d){g=Hq(a,h,c)|0;d=h+4|0;if(Hq(d,b,c)|0){m=46;break}if(g){e=2;a=d;m=51;break}}o=h;if((o-k|0)>=(l-o|0)){m=50;break}Bh(a,h,c);a=h+4|0}d:do if((m|0)==17){m=0;d=a+4|0;if(!(Ov(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[e>>2]|0)|0)){while(1){if((d|0)==(e|0))break a;if(Ov(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[d>>2]|0)|0)break;d=d+4|0}o=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=o;d=d+4|0}if((d|0)==(e|0))break a;while(1){while(1){g=d+4|0;if(Ov(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[d>>2]|0)|0)break;else d=g}do e=e+-4|0;while(Ov(f[c>>2]|0,f[n>>2]|0,f[a>>2]|0,f[e>>2]|0)|0);if(d>>>0>=e>>>0){e=4;a=d;m=51;break d}o=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=o;d=g}}else if((m|0)==46){e=g?1:2;b=g?b:h;m=51}else if((m|0)==50){m=0;Bh(h+4|0,b,c);b=h}while(0);if((m|0)==51){m=0;switch(e&7){case 2:case 4:case 0:break;default:break a}}}if((m|0)==4){if(Ov(f[c>>2]|0,f[n>>2]|0,f[e>>2]|0,f[a>>2]|0)|0){o=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=o}}else if((m|0)==6)_x(a,a+4|0,e,c)|0;else if((m|0)==7)gC(a,a+4|0,a+8|0,e,c)|0;else if((m|0)==8)ox(a,a+4|0,a+8|0,a+12|0,e,c)|0;else if((m|0)==10)vF(a,b,c);return}function Ch(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;d=m+12|0;l=m+24|0;g=m;c=f[a+80>>2]|0;b=f[a+76>>2]|0;while(1){if((b|0)==(c|0))break;Is(f[a>>2]|0,f[b>>2]|0);b=b+4|0}i=a+88|0;c=f[a+92>>2]|0;b=f[i>>2]|0;while(1){if((b|0)==(c|0))break;_s(f[a>>2]|0,f[b>>2]|0);b=b+4|0}k=f[a>>2]|0;do if(((f[k+40>>2]|0)-(f[k+36>>2]|0)|0)!=((f[a+64>>2]|0)-(f[a+60>>2]|0)|0)){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;_Z(d,95010,j7a(95010)|0);x=0;ua(1870,a|0,d|0);k=x;x=0;if(k&1){b=Ia()|0;MTa(d);break}else{MTa(d);h=11;break}}else h=11;while(0);do if((h|0)==11){b=f[a+40>>2]|0;if((b|0)!=-1){k=xz(a,b)|0;f[(f[a>>2]|0)+116>>2]=k}d=f[a+148>>2]|0;e=a+132|0;c=f[a+144>>2]|0;a:while(1){if((c|0)==(d|0))break;f[l>>2]=f[c>>2];b=i_(e,l)|0;b=f[b>>2]|0;switch(f[(f[l>>2]|0)+8>>2]|0){case 0:{k=xz(a,b)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}case 1:{k=YT(0)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}case 2:{k=YT(0)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}case 3:{k=Gr(a,b)|0;b=f[l>>2]|0;f[b+4>>2]=k;break}default:{f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,95052,j7a(95052)|0);x=0;ua(1870,a|0,g|0);k=x;x=0;if(k&1){h=24;break a}MTa(g);b=f[l>>2]|0}}Zs(f[a>>2]|0,b);c=c+4|0}if((h|0)==24){b=Ia()|0;MTa(g);break}g=a+104|0;c=f[a+100>>2]|0;while(1){if((c|0)==(g|0))break;d=f[c+16>>2]|0;e=f[c+24>>2]|0;b=f[c+20>>2]|0;while(1){if((b|0)==(e|0))break;f[(f[b>>2]|0)+24>>2]=f[f[(f[(f[a>>2]|0)+36>>2]|0)+(d<<2)>>2]>>2];b=b+4|0}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}g=a+116|0;c=f[a+112>>2]|0;while(1){if((c|0)==(g|0))break;d=f[c+16>>2]|0;e=f[c+24>>2]|0;b=f[c+20>>2]|0;while(1){if((b|0)==(e|0))break;f[(f[b>>2]|0)+24>>2]=f[f[(f[i>>2]|0)+(d<<2)>>2]>>2];b=b+4|0}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}k=a+224|0;c=f[a+220>>2]|0;while(1){if((c|0)==(k|0))break;d=f[c+16>>2]|0;e=f[c+24>>2]|0;b=f[c+20>>2]|0;while(1){if((b|0)==(e|0))break;g=f[(f[a>>2]|0)+76>>2]|0;h=xz(a,f[b>>2]|0)|0;f[l>>2]=h;i=g+(d<<4)+8|0;j=f[i>>2]|0;if(j>>>0<(f[g+(d<<4)+12>>2]|0)>>>0){f[j>>2]=h;f[i>>2]=(f[i>>2]|0)+4}else LL(g+(d<<4)+4|0,l);b=b+4|0}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}u=m;return}while(0);Ua(b|0)}function Dh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0.0;k=u;u=u+16|0;i=k;f[i>>2]=c;g=b[c>>0]|0;a:do if(!(ZPa(g)|0)){b:do if(e$a(g)|0)if(g<<24>>24==48){switch(b[c+1>>0]|0){case 88:case 120:break;default:{j=18;break b}}d=c+2|0;f[i>>2]=d;p[a>>3]=0.0;h=0.0;while(1){e=b[d>>0]|0;if((e+-48&255)>=10)if((e+-97&255)>=6)if((e+-65&255)<6)e=-55;else break b;else e=-87;else e=-48;l=h*16.0;p[a>>3]=l;l=l+ +(e+(b[d>>0]|0)|0);p[a>>3]=l;g=d+1|0;f[i>>2]=g;d=g;h=l}}else j=18;else{if(g<<24>>24==46?e$a(b[c+1>>0]|0)|0:0){j=18;break}if(!(Tpa(118305,g)|0)){if(Tpa(118323,g)|0){f[a+12>>2]=6;d=c+1|0;j=b[d>>0]|0;b[d>>0]=0;Qf(a,c,0);b[d>>0]=j;f[i>>2]=d;j=57;break a}switch(g<<24>>24){case 39:case 34:{j=c+1|0;d=FWa(j,g<<24>>24)|0;b[d>>0]=0;Qf(a,j,1);d=d+1|0;f[i>>2]=d;f[a+12>>2]=3;j=57;break a}default:{CX(65809,c);hb()}}}do switch(g<<24>>24|0){case 33:{e=(b[c+1>>0]|0)==61?f[33244]|0:f[33251]|0;f[a>>2]=e;break}case 37:{e=f[33242]|0;f[a>>2]=e;break}case 38:{e=f[33253]|0;f[a>>2]=e;break}case 42:{e=f[33241]|0;f[a>>2]=e;break}case 43:{e=f[33256]|0;f[a>>2]=e;break}case 44:{e=f[33221]|0;f[a>>2]=e;break}case 45:{e=f[33255]|0;f[a>>2]=e;break}case 46:{e=f[33215]|0;f[a>>2]=e;break}case 47:{e=f[33243]|0;f[a>>2]=e;break}case 58:{e=f[33219]|0;f[a>>2]=e;break}case 60:{e=b[c+1>>0]|0;e=f[(e<<24>>24==60?132956:e<<24>>24==61?132988:132996)>>2]|0;f[a>>2]=e;break}case 61:{e=(b[c+1>>0]|0)==61?f[33245]|0:f[33210]|0;f[a>>2]=e;break}case 62:{e=b[c+1>>0]|0;if(e<<24>>24==62)e=(b[c+2>>0]|0)==62?132952:132960;else e=e<<24>>24==61?132992:132984;e=f[e>>2]|0;f[a>>2]=e;break}case 63:{e=f[33220]|0;f[a>>2]=e;break}case 94:{e=f[33252]|0;f[a>>2]=e;break}case 124:{e=f[33254]|0;f[a>>2]=e;break}case 126:{e=f[33250]|0;f[a>>2]=e;break}default:hb()}while(0);i=dV(e)|0;e=a+8|0;f[e>>2]=i;i=c+i|0;g=b[i>>0]|0;b[i>>0]=0;if(!(J8(f[a>>2]|0,c)|0)){b[c+(f[e>>2]|0)>>0]=g;f[a+12>>2]=1;break a}else Ca(65781,65740,282,65776)}while(0);if((j|0)==18){h=+m7a(c,i);p[a>>3]=h;d=f[i>>2]|0}e=c;while(1){if((e|0)==(d|0)){j=22;break}if((b[e>>0]|0)==46){e=5;break}else e=e+1|0}if((j|0)==22)if(ZYa(h)|0)e=4;else{e=wPa(h)|0;e=e?4:5}f[a+12>>2]=e;if(d>>>0>c>>>0)j=57;else Ca(65728,65740,256,65776)}else{d=c;do{d=d+1|0;f[i>>2]=d;e=b[d>>0]|0}while(O_a(e)|0);if(!(e<<24>>24)){Qf(a,c,1);e=a}else{b[d>>0]=0;Qf(a,c,0);d=f[i>>2]|0;b[d>>0]=e;e=a}j=qBa(132808,e)|0;f[a+12>>2]=j?0:2;j=57}while(0);if((j|0)==57)f[a+8>>2]=d-c;u=k;return}function Eh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+80|0;p=z+72|0;B=z+56|0;A=z+40|0;y=z+24|0;n=z+8|0;l=z;q=z+4|0;f[B>>2]=0;m=B+4|0;f[m>>2]=0;j=B+8|0;f[j>>2]=0;s=b+8|0;Q$a(p,s);LUa(A,s);s=a+44|0;k=p+4|0;h=f[A>>2]|0;i=f[A+4>>2]|0;while(1){if(!(qTa(f[p>>2]|0,f[k>>2]|0,h,i)|0)){g=3;break}x=0;d=ga(253,p|0)|0;g=x;x=0;if(g&1){g=16;break}d=f[d>>2]|0;f[y>>2]=d;e=f[m>>2]|0;g=d;if((e|0)==(f[j>>2]|0)){x=0;ua(640,B|0,y|0);e=x;x=0;if(e&1){g=16;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}if(xba(a,g)|0){x=0;va(160,n|0,a|0,g|0);g=x;x=0;if(g&1){g=17;break}d=f[s>>2]|0;x=0;e=ga(320,n|0)|0;g=x;x=0;if(g&1){g=18;break}x=0;d=ja(46,f[d>>2]|0,e|0,1)|0;g=x;x=0;if(g&1){g=18;break}f[l>>2]=d;e=f[m>>2]|0;if(e>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1836,B|0,l|0);g=x;x=0;if(g&1){g=18;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}MCa(n)}YYa(p)}a:do if((g|0)==3){d=f[b+4>>2]|0;b:do if((d|0)!=2){x=0;d=ja(76,f[c+16>>2]|0,B|0,d|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break a}else{GVa(f[a+16>>2]|0,d)|0;break}}else{x=0;va(159,A|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{x=0;va(159,y|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;n=x;x=0;do if((!(n&1)?(x=0,o=ja(76,f[c+16>>2]|0,B|0,1)|0,c=x,x=0,!(c&1)):0)?(x=0,t=ja(45,d|0,e|0,o|0)|0,o=x,x=0,!(o&1)):0){d=f[s>>2]|0;x=0;e=ga(320,y|0)|0;o=x;x=0;if((!(o&1)?(r=f[s>>2]|0,L1a(q,f[33071]|0),x=0,f[p>>2]=f[q>>2],r=ja(41,r|0,p|0,1)|0,q=x,x=0,!(q&1)):0)?(x=0,v=ja(45,d|0,e|0,r|0)|0,r=x,x=0,!(r&1)):0){d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;r=x;x=0;if(!(r&1)?(x=0,w=ja(46,f[d>>2]|0,e|0,1)|0,r=x,x=0,!(r&1)):0){x=0;d=ka(21,f[s>>2]|0,t|0,v|0,w|0)|0;w=x;x=0;do if(!(w&1)){x=0;va(161,a|0,d|0,y|0);w=x;x=0;if(w&1)break;GVa(f[a+16>>2]|0,d)|0;MCa(y);MCa(A);break b}while(0);d=Ia()|0;break}d=Ia()|0;break}d=Ia()|0}else g=41;while(0);if((g|0)==41)d=Ia()|0;MCa(y)}MCa(A)}break a}while(0);zSa(B);u=z;return}else if((g|0)==16){d=Ia()|0;g=21}else if((g|0)==17){d=Ia()|0;g=19}else if((g|0)==18){d=Ia()|0;MCa(n);g=19}while(0);if((g|0)==19)g=21;zSa(B);Ua(d|0)}function Fh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0;t=u;u=u+64|0;j=t+52|0;h=t+48|0;s=t+40|0;l=t+16|0;v=t;i=a+64|0;b=f[i>>2]|0;r=f[b+104>>2]|0;b=f[b+100>>2]|0;e=r;if((r|0)!=(b|0)){c=0;d=0;while(1){if((b|0)==(e|0))break;do if(!(zZa(b)|0))if(GZa(f[f[b>>2]>>2]|0)|0){c=c+1|0;break}else{d=d+1|0;break}while(0);b=b+16|0}e=c+d|0;do if((d+1|0)>>>0>99999){b=DCa(134176,87472)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;r=x;x=0;if(!(r&1)?(x=0,g=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,r=x,x=0,!(r&1)):0){OCa(j);Wq(b,g)|0;fu(b)|0;break}v=Ia()|0;OCa(j);Ua(v|0)}while(0);r=E$(a,11)|0;q=f[a+68>>2]|0;n4a(h,e>>>0<99999?e:99999);Yr(q,f[h>>2]|0)|0;f[j>>2]=0;f[s>>2]=a;f[s+4>>2]=j;q=f[i>>2]|0;p=q+100|0;q=q+104|0;c=f[q>>2]|0;b=f[p>>2]|0;while(1){if((b|0)==(c|0))break;if(!(zZa(b)|0)?!(GZa(f[f[b>>2]>>2]|0)|0):0)HQ(s,b);b=b+16|0}g=0;while(1){b=f[p>>2]|0;if(g>>>0>=(f[q>>2]|0)-b>>4>>>0)break;b=b+(g<<4)|0;if(Tya(b)|0){if(((f[j>>2]|0)+2|0)>>>0>=1e5){k=25;break}HQ(s,b)}g=g+1|0}a:do if((k|0)==25){n=Jia((QRa(f[b>>2]|0)|0)+8|0)|0;b=g;o=I;b:while(1){e=f[p>>2]|0;d=(f[q>>2]|0)-e>>4;do{b=b+1|0;if(b>>>0>=d>>>0)break b;c=e+(b<<4)|0}while(!(Tya(c)|0));j=Jia((QRa(f[c>>2]|0)|0)+8|0)|0;m=I;k=(m|0)<(o|0)|(m|0)==(o|0)&j>>>0>>0;n=k?j:n;o=k?m:o}AWa(l);t$a(v,n);k=l+8|0;f[k>>2]=f[v>>2];f[k+4>>2]=f[v+4>>2];f[k+8>>2]=f[v+8>>2];f[k+12>>2]=f[v+12>>2];f[l+4>>2]=1;zQa(v,l);k=v+4|0;l=v+8|0;m=0-n|0;j=g;while(1){i=f[p>>2]|0;c=i;if(j>>>0>=(f[q>>2]|0)-i>>4>>>0){k=32;break}b=c+(j<<4)|0;if(Tya(b)|0){x=0;b=ga(241,f[b>>2]|0)|0;i=x;x=0;if(i&1){k=40;break}x=0;i=ga(252,b+8|0)|0;d=I;h=x;x=0;if(h&1){k=40;break}g=c+(j<<4)+4|0;h=c+(j<<4)+8|0;b=f[h>>2]|0;e=f[g>>2]|0;c=SRa(i|0,d|0,n|0,o|0)|0;c=BOa(c|0,I|0,b-e|0,0)|0;d=I;if((d|0)>0|((d|0)==0?c>>>0>((f[l>>2]|0)-(f[k>>2]|0)|0)>>>0:0)){x=0;ua(94,k|0,c|0);e=x;x=0;if(e&1){k=41;break}c=f[g>>2]|0;b=f[h>>2]|0}else c=e;b=b-c|0;if(b|0)kia((f[k>>2]|0)+i+m|0,c|0,b|0)|0}j=j+1|0}do if((k|0)==32){x=0;ua(1369,s|0,v|0);s=x;x=0;if(s&1){b=Ia()|0;break}else{P_a(v);break a}}else if((k|0)==40)b=Ia()|0;else if((k|0)==41)b=Ia()|0;while(0);P_a(v);Ua(b|0)}while(0);WA(a,r)}u=t;return}function Gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+80|0;p=z+72|0;B=z+56|0;A=z+40|0;y=z+24|0;n=z+8|0;l=z;q=z+4|0;f[B>>2]=0;m=B+4|0;f[m>>2]=0;j=B+8|0;f[j>>2]=0;s=b+8|0;Q$a(p,s);LUa(A,s);s=a+44|0;k=p+4|0;h=f[A>>2]|0;i=f[A+4>>2]|0;while(1){if(!(qTa(f[p>>2]|0,f[k>>2]|0,h,i)|0)){g=3;break}x=0;d=ga(253,p|0)|0;g=x;x=0;if(g&1){g=16;break}d=f[d>>2]|0;f[y>>2]=d;e=f[m>>2]|0;g=d;if((e|0)==(f[j>>2]|0)){x=0;ua(640,B|0,y|0);e=x;x=0;if(e&1){g=16;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}if(xba(a,g)|0){x=0;va(160,n|0,a|0,g|0);g=x;x=0;if(g&1){g=17;break}d=f[s>>2]|0;x=0;e=ga(320,n|0)|0;g=x;x=0;if(g&1){g=18;break}x=0;d=ja(46,f[d>>2]|0,e|0,1)|0;g=x;x=0;if(g&1){g=18;break}f[l>>2]=d;e=f[m>>2]|0;if(e>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1836,B|0,l|0);g=x;x=0;if(g&1){g=18;break}}else{f[e>>2]=d;f[m>>2]=(f[m>>2]|0)+4}MCa(n)}YYa(p)}a:do if((g|0)==3){d=f[b+4>>2]|0;b:do if((d|0)!=2){x=0;d=ja(77,f[c+16>>2]|0,B|0,d|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break a}else{GVa(f[a+16>>2]|0,d)|0;break}}else{x=0;va(159,A|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{x=0;va(159,y|0,a|0,1);n=x;x=0;if(n&1)d=Ia()|0;else{d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;n=x;x=0;do if((!(n&1)?(x=0,o=ja(77,f[c+16>>2]|0,B|0,1)|0,c=x,x=0,!(c&1)):0)?(x=0,t=ja(45,d|0,e|0,o|0)|0,o=x,x=0,!(o&1)):0){d=f[s>>2]|0;x=0;e=ga(320,y|0)|0;o=x;x=0;if((!(o&1)?(r=f[s>>2]|0,L1a(q,f[33071]|0),x=0,f[p>>2]=f[q>>2],r=ja(41,r|0,p|0,1)|0,q=x,x=0,!(q&1)):0)?(x=0,v=ja(45,d|0,e|0,r|0)|0,r=x,x=0,!(r&1)):0){d=f[s>>2]|0;x=0;e=ga(320,A|0)|0;r=x;x=0;if(!(r&1)?(x=0,w=ja(46,f[d>>2]|0,e|0,1)|0,r=x,x=0,!(r&1)):0){x=0;d=ka(21,f[s>>2]|0,t|0,v|0,w|0)|0;w=x;x=0;do if(!(w&1)){x=0;va(161,a|0,d|0,y|0);w=x;x=0;if(w&1)break;GVa(f[a+16>>2]|0,d)|0;MCa(y);MCa(A);break b}while(0);d=Ia()|0;break}d=Ia()|0;break}d=Ia()|0}else g=41;while(0);if((g|0)==41)d=Ia()|0;MCa(y)}MCa(A)}break a}while(0);zSa(B);u=z;return}else if((g|0)==16){d=Ia()|0;g=21}else if((g|0)==17){d=Ia()|0;g=19}else if((g|0)==18){d=Ia()|0;MCa(n);g=19}while(0);if((g|0)==19)g=21;zSa(B);Ua(d|0)}function Hh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=u;u=u+112|0;p=m+88|0;i=m+64|0;j=m+36|0;k=m+48|0;l=m+24|0;n=m+12|0;o=m;a:do if((((c-a|0)>2?(b[a>>0]|0)==99:0)?(b[a+1>>0]|0)==118:0)?(e=d+63|0,q=b[e>>0]|0,b[e>>0]=0,h=a+2|0,g=Cc(h,c,d)|0,b[e>>0]=q,!((g|0)==(h|0)|(g|0)==(c|0))):0){if((b[g>>0]|0)!=95){e=Bc(g,c,d)|0;if((e|0)==(g|0)){e=a;break}}else{e=g+1|0;if((e|0)==(c|0)){e=a;break}g=b[e>>0]|0;b:do if(g<<24>>24==69){g=d+4|0;c=f[g>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;S5(c);f[g>>2]=(f[g>>2]|0)+24;break}else{TA(d);break}}else while(1){if(g<<24>>24==69)break b;g=Bc(e,c,d)|0;if((g|0)==(e|0)|(g|0)==(c|0)){e=a;break a}e=g;g=b[g>>0]|0}while(0);e=e+1|0}h=d+4|0;g=f[h>>2]|0;if(((g-(f[d>>2]|0)|0)/24|0)>>>0>=2){hY(p,g+-24|0);c=f[h>>2]|0;g=0;while(1){if((g|0)==-1)break;q=g+-1|0;OJa(c+(q*24|0)|0);g=q}f[h>>2]=c+-24;x=0;ua(3195,o|0,c+-48|0);q=x;x=0;if(q&1)e=Ia()|0;else{x=0;ja(101,o|0,0,123274)|0;q=x;x=0;if(q&1)e=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];g=0;while(1){if((g|0)==3)break;f[o+(g<<2)>>2]=0;g=g+1|0}x=0;ia(216,n|0,124438)|0;q=x;x=0;if(q&1)e=Ia()|0;else{f[l>>2]=f[n>>2];f[l+4>>2]=f[n+4>>2];f[l+8>>2]=f[n+8>>2];g=0;while(1){if((g|0)==3)break;f[n+(g<<2)>>2]=0;g=g+1|0}q=b[p+11>>0]|0;d=q<<24>>24<0;x=0;ja(97,l|0,(d?f[p>>2]|0:p)|0,(d?f[p+4>>2]|0:q&255)|0)|0;q=x;x=0;do if(q&1)e=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];g=0;while(1){if((g|0)==3)break;f[l+(g<<2)>>2]=0;g=g+1|0}x=0;ia(216,k|0,123272)|0;q=x;x=0;if(q&1){e=Ia()|0;MTa(k);break}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];g=0;while(1){if((g|0)==3)break;f[k+(g<<2)>>2]=0;g=g+1|0}RY(i,j);uA((f[h>>2]|0)+-24|0,i);OJa(i);MTa(j);MTa(k);MTa(l);MTa(n);MTa(o);MTa(p);break a}while(0);MTa(l)}MTa(n)}MTa(o)}MTa(p);Ua(e|0)}else e=a}else e=a;while(0);u=m;return e|0}function Ih(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=u;u=u+32|0;F=D+8|0;A=D+4|0;B=D;if(!(KMa(c)|0))Ca(113484,113307,160,113500);C=a+44|0;r=a+64|0;s=a+68|0;t=a+76|0;v=a+80|0;w=F+4|0;y=F+8|0;z=a+72|0;q=a+84|0;a=(VU(C,b)|0)+8|0;a:while(1){a=f[a>>2]|0;if(!a){E=5;break}p=f[a+8>>2]|0;f[A>>2]=p;f[F>>2]=p;o=JH(F,4)|0;l=f[s>>2]|0;m=(l|0)==0;b:do if(!m){h=l+-1|0;k=(h&l|0)==0;if(!k)if(o>>>0>>0)e=o;else e=(o>>>0)%(l>>>0)|0;else e=h&o;d=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!d)E=21;else do{d=f[d>>2]|0;if(!d){E=21;break b}g=f[d+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&h;if((g|0)!=(e|0)){E=21;break b}}}while((f[d+8>>2]|0)!=(p|0))}else{e=0;E=21}while(0);if((E|0)==21){E=0;W6(F,r,o,A);i=+(((f[t>>2]|0)+1|0)>>>0);j=+n[v>>2];do if(m|j*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(i/j))>>>0;x=0;ua(632,r|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){E=27;break a}d=f[s>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&o;break}if(o>>>0>>0){h=d;e=o}else{h=d;e=(o>>>0)%(d>>>0)|0}}else h=l;while(0);d=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!d){g=f[F>>2]|0;f[g>>2]=f[z>>2];f[z>>2]=g;f[(f[r>>2]|0)+(e<<2)>>2]=z;d=f[g>>2]|0;if(d|0){d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[r>>2]|0)+(d<<2)>>2]=g}}else{o=f[F>>2]|0;f[o>>2]=f[d>>2];f[d>>2]=o}f[t>>2]=(f[t>>2]|0)+1}Cm(C,c,p);f[F>>2]=0;f[w>>2]=0;f[y>>2]=0;g=0;e=p;while(1){f[B>>2]=g;d=f[e+12>>2]|0;if(g>>>0>=(f[e+16>>2]|0)-d>>2>>>0)break;d=d+(g<<2)|0;do if((f[d>>2]|0)==(b|0)){f[d>>2]=c;d=f[w>>2]|0;if((d|0)==(f[y>>2]|0)){x=0;ua(524,F|0,B|0);p=x;x=0;if(p&1){E=46;break a}else break}else{f[d>>2]=g;f[w>>2]=d+4;break}}while(0);g=g+1|0;e=f[A>>2]|0}d=f[F>>2]|0;k=f[w>>2]|0;if((d|0)==(k|0)){E=48;break}c:do switch(f[e>>2]|0){case 1:{h=f[e+4>>2]|0;while(1){if((d|0)==(k|0))break c;e=f[d>>2]|0;x=0;g=ia(201,q|0,c|0)|0;p=x;x=0;if(p&1){E=56;break a}x=0;e=ia(202,h|0,e|0)|0;p=x;x=0;if(p&1){E=56;break a}f[e>>2]=g;d=d+4|0}}case 5:case 3:case 2:break;default:{E=57;break a}}while(0);zSa(F)}if((E|0)==5){U4(C,b);u=D;return}else if((E|0)==27){a=Ia()|0;d=f[F>>2]|0;f[F>>2]=0;if(d|0)Cbb(d);Ua(a|0)}else if((E|0)==46)a=Ia()|0;else if((E|0)==48){x=0;wa(71,113519,113307,177,113500);x=0;E=49}else if((E|0)==56)a=Ia()|0;else if((E|0)==57){x=0;sa(5);x=0;E=49}if((E|0)==49)a=Ia()|0;zSa(F);Ua(a|0)}function Jh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+4|0;g=m;b=a+16|0;c=f[b>>2]|0;a:do if(c>>>0>1023){f[b>>2]=c+-1024;h=a+4|0;g=f[h>>2]|0;j=f[g>>2]|0;g=g+4|0;f[h>>2]=g;i=a+8|0;b=f[i>>2]|0;c=a+12|0;k=f[c>>2]|0;d=k;do if((b|0)==(k|0)){k=f[a>>2]|0;e=k;if(g>>>0<=k>>>0){b=d-e|0;b=(b|0)==0?1:b>>1;iO(l,b,b>>>2,a+12|0);K8(l,f[h>>2]|0,f[i>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[h>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;Hja(l);b=f[i>>2]|0;break}d=g;c=((d-e>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-d|0;if(!d)b=e;else{kia(e|0,g|0,d|0)|0;b=(f[h>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[i>>2]=l;f[h>>2]=b;b=l}while(0);f[b>>2]=j;f[i>>2]=(f[i>>2]|0)+4}else{k=a+8|0;b=f[k>>2]|0;j=a+4|0;c=b-(f[j>>2]|0)>>2;i=a+12|0;d=f[i>>2]|0;e=d-(f[a>>2]|0)|0;if(c>>>0>2>>>0){if((d|0)!=(b|0)){k=s8(4096)|0;f[l>>2]=k;Ft(a,l);break}g=s8(4096)|0;f[l>>2]=g;nt(a,l);g=f[j>>2]|0;h=f[g>>2]|0;g=g+4|0;f[j>>2]=g;b=f[k>>2]|0;e=f[i>>2]|0;c=e;do if((b|0)==(e|0)){e=f[a>>2]|0;d=e;if(g>>>0<=e>>>0){b=c-d|0;b=(b|0)==0?1:b>>1;iO(l,b,b>>>2,a+12|0);K8(l,f[j>>2]|0,f[k>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[j>>2]|0;f[j>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[k>>2]|0;f[k>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;Hja(l);b=f[k>>2]|0;break}l=g;c=((l-d>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-l|0;if(!d)b=e;else{kia(e|0,g|0,d|0)|0;b=(f[j>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[k>>2]=l;f[j>>2]=b;b=l}while(0);f[b>>2]=h;f[k>>2]=(f[k>>2]|0)+4;break}iO(l,(e|0)==0?1:e>>1,c,a+12|0);x=0;b=ga(212,4096)|0;h=x;x=0;do if(!(h&1)){f[g>>2]=b;x=0;ua(1414,l|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;Cbb(b);b=m;break}b=f[k>>2]|0;while(1){if((b|0)==(f[j>>2]|0)){c=23;break}b=b+-4|0;x=0;ua(1415,l|0,b|0);h=x;x=0;if(h&1){c=26;break}}if((c|0)==23){h=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=h;a=l+4|0;f[j>>2]=f[a>>2];f[a>>2]=b;a=l+8|0;j=f[k>>2]|0;f[k>>2]=f[a>>2];f[a>>2]=j;a=l+12|0;k=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=k;Hja(l);break a}else if((c|0)==26){b=Ia()|0;break}}else b=Ia()|0;while(0);Hja(l);Ua(b|0)}while(0);u=m;return}function Kh(a,b){a=a|0;b=b|0;do switch(b|0){case 0:{DCa(a,74584)|0;break}case 2:{DCa(a,74592)|0;break}case 4:{DCa(a,74600)|0;break}case 20:{DCa(a,74611)|0;break}case 1:{DCa(a,74619)|0;break}case 3:{DCa(a,74627)|0;break}case 5:{DCa(a,74635)|0;break}case 21:{DCa(a,74646)|0;break}case 6:{DCa(a,74654)|0;break}case 8:{DCa(a,74662)|0;break}case 10:{DCa(a,74670)|0;break}case 12:{DCa(a,74679)|0;break}case 14:{DCa(a,74689)|0;break}case 16:{DCa(a,74699)|0;break}case 18:{DCa(a,74711)|0;break}case 7:{DCa(a,74720)|0;break}case 9:{DCa(a,74728)|0;break}case 11:{DCa(a,74736)|0;break}case 13:{DCa(a,74745)|0;break}case 15:{DCa(a,74755)|0;break}case 17:{DCa(a,74765)|0;break}case 19:{DCa(a,74777)|0;break}case 22:{DCa(a,74786)|0;break}case 23:{DCa(a,74803)|0;break}case 24:{DCa(a,74820)|0;break}case 25:{DCa(a,74833)|0;break}case 26:{DCa(a,74849)|0;break}case 27:{DCa(a,74865)|0;break}case 28:{DCa(a,74881)|0;break}case 29:{DCa(a,74897)|0;break}case 30:{DCa(a,74913)|0;break}case 31:{DCa(a,74929)|0;break}case 32:{DCa(a,74945)|0;break}case 33:{DCa(a,74961)|0;break}case 34:{DCa(a,74981)|0;break}case 37:{DCa(a,75001)|0;break}case 38:{DCa(a,75019)|0;break}case 35:{DCa(a,75037)|0;break}case 36:{DCa(a,75055)|0;break}case 41:{DCa(a,75073)|0;break}case 42:{DCa(a,75091)|0;break}case 39:{DCa(a,75109)|0;break}case 40:{DCa(a,75127)|0;break}case 43:{DCa(a,75145)|0;break}case 44:{DCa(a,75161)|0;break}case 45:{DCa(a,75176)|0;break}case 46:{DCa(a,75196)|0;break}case 47:{DCa(a,75216)|0;break}case 48:{DCa(a,75230)|0;break}case 49:{DCa(a,75245)|0;break}case 50:{DCa(a,75259)|0;break}case 51:{DCa(a,75274)|0;break}default:hb()}while(0);return}function Lh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+4|0;g=m;b=a+16|0;c=f[b>>2]|0;a:do if(c>>>0>1023){f[b>>2]=c+-1024;h=a+4|0;g=f[h>>2]|0;j=f[g>>2]|0;g=g+4|0;f[h>>2]=g;i=a+8|0;b=f[i>>2]|0;c=a+12|0;k=f[c>>2]|0;d=k;do if((b|0)==(k|0)){k=f[a>>2]|0;e=k;if(g>>>0<=k>>>0){b=d-e|0;b=(b|0)==0?1:b>>1;iO(l,b,b>>>2,a+12|0);K8(l,f[h>>2]|0,f[i>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[h>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;Hja(l);b=f[i>>2]|0;break}d=g;c=((d-e>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-d|0;if(!d)b=e;else{kia(e|0,g|0,d|0)|0;b=(f[h>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[i>>2]=l;f[h>>2]=b;b=l}while(0);f[b>>2]=j;f[i>>2]=(f[i>>2]|0)+4}else{k=a+8|0;b=f[k>>2]|0;j=a+4|0;c=b-(f[j>>2]|0)>>2;i=a+12|0;d=f[i>>2]|0;e=d-(f[a>>2]|0)|0;if(c>>>0>2>>>0){if((d|0)!=(b|0)){k=s8(4096)|0;f[l>>2]=k;Ft(a,l);break}g=s8(4096)|0;f[l>>2]=g;nt(a,l);g=f[j>>2]|0;h=f[g>>2]|0;g=g+4|0;f[j>>2]=g;b=f[k>>2]|0;e=f[i>>2]|0;c=e;do if((b|0)==(e|0)){e=f[a>>2]|0;d=e;if(g>>>0<=e>>>0){b=c-d|0;b=(b|0)==0?1:b>>1;iO(l,b,b>>>2,a+12|0);K8(l,f[j>>2]|0,f[k>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[j>>2]|0;f[j>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[k>>2]|0;f[k>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;Hja(l);b=f[k>>2]|0;break}l=g;c=((l-d>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-l|0;if(!d)b=e;else{kia(e|0,g|0,d|0)|0;b=(f[j>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[k>>2]=l;f[j>>2]=b;b=l}while(0);f[b>>2]=h;f[k>>2]=(f[k>>2]|0)+4;break}iO(l,(e|0)==0?1:e>>1,c,a+12|0);x=0;b=ga(212,4096)|0;h=x;x=0;do if(!(h&1)){f[g>>2]=b;x=0;ua(1498,l|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;Cbb(b);b=m;break}b=f[k>>2]|0;while(1){if((b|0)==(f[j>>2]|0)){c=23;break}b=b+-4|0;x=0;ua(1499,l|0,b|0);h=x;x=0;if(h&1){c=26;break}}if((c|0)==23){h=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=h;a=l+4|0;f[j>>2]=f[a>>2];f[a>>2]=b;a=l+8|0;j=f[k>>2]|0;f[k>>2]=f[a>>2];f[a>>2]=j;a=l+12|0;k=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=k;Hja(l);break a}else if((c|0)==26){b=Ia()|0;break}}else b=Ia()|0;while(0);Hja(l);Ua(b|0)}while(0);u=m;return}function Mh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+4|0;g=m;b=a+16|0;c=f[b>>2]|0;a:do if(c>>>0>1023){f[b>>2]=c+-1024;h=a+4|0;g=f[h>>2]|0;j=f[g>>2]|0;g=g+4|0;f[h>>2]=g;i=a+8|0;b=f[i>>2]|0;c=a+12|0;k=f[c>>2]|0;d=k;do if((b|0)==(k|0)){k=f[a>>2]|0;e=k;if(g>>>0<=k>>>0){b=d-e|0;b=(b|0)==0?1:b>>1;iO(l,b,b>>>2,a+12|0);K8(l,f[h>>2]|0,f[i>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[h>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;Hja(l);b=f[i>>2]|0;break}d=g;c=((d-e>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-d|0;if(!d)b=e;else{kia(e|0,g|0,d|0)|0;b=(f[h>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[i>>2]=l;f[h>>2]=b;b=l}while(0);f[b>>2]=j;f[i>>2]=(f[i>>2]|0)+4}else{k=a+8|0;b=f[k>>2]|0;j=a+4|0;c=b-(f[j>>2]|0)>>2;i=a+12|0;d=f[i>>2]|0;e=d-(f[a>>2]|0)|0;if(c>>>0>2>>>0){if((d|0)!=(b|0)){k=s8(4096)|0;f[l>>2]=k;Ft(a,l);break}g=s8(4096)|0;f[l>>2]=g;nt(a,l);g=f[j>>2]|0;h=f[g>>2]|0;g=g+4|0;f[j>>2]=g;b=f[k>>2]|0;e=f[i>>2]|0;c=e;do if((b|0)==(e|0)){e=f[a>>2]|0;d=e;if(g>>>0<=e>>>0){b=c-d|0;b=(b|0)==0?1:b>>1;iO(l,b,b>>>2,a+12|0);K8(l,f[j>>2]|0,f[k>>2]|0);b=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=b;b=l+4|0;a=f[j>>2]|0;f[j>>2]=f[b>>2];f[b>>2]=a;b=l+8|0;a=f[k>>2]|0;f[k>>2]=f[b>>2];f[b>>2]=a;b=l+12|0;a=f[i>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=a;Hja(l);b=f[k>>2]|0;break}l=g;c=((l-d>>2)+1|0)/-2|0;e=g+(c<<2)|0;d=b-l|0;if(!d)b=e;else{kia(e|0,g|0,d|0)|0;b=(f[j>>2]|0)+(c<<2)|0}l=e+(d>>2<<2)|0;f[k>>2]=l;f[j>>2]=b;b=l}while(0);f[b>>2]=h;f[k>>2]=(f[k>>2]|0)+4;break}iO(l,(e|0)==0?1:e>>1,c,a+12|0);x=0;b=ga(212,4096)|0;h=x;x=0;do if(!(h&1)){f[g>>2]=b;x=0;ua(1506,l|0,g|0);h=x;x=0;if(h&1){m=Ia()|0;Cbb(b);b=m;break}b=f[k>>2]|0;while(1){if((b|0)==(f[j>>2]|0)){c=23;break}b=b+-4|0;x=0;ua(1507,l|0,b|0);h=x;x=0;if(h&1){c=26;break}}if((c|0)==23){h=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=h;a=l+4|0;f[j>>2]=f[a>>2];f[a>>2]=b;a=l+8|0;j=f[k>>2]|0;f[k>>2]=f[a>>2];f[a>>2]=j;a=l+12|0;k=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=k;Hja(l);break a}else if((c|0)==26){b=Ia()|0;break}}else b=Ia()|0;while(0);Hja(l);Ua(b|0)}while(0);u=m;return}function Nh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=a+4|0;i=f[z>>2]|0;y=a+100|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0;j=0;a:while(1){switch(i|0){case 46:{x=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0;j=1}if((x|0)==10){i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0;if((i|0)==48){l=0;j=0;do{i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0;l=BOa(l|0,j|0,-1,-1)|0;j=I}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;g=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else x=24}else x=24;if((x|0)==24){x=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;g=g+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;g=i?g:g+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=BOa(m|0,u|0,1,0)|0;q=i;r=1;p=I}i=f[z>>2]|0;if(i>>>0<(f[y>>2]|0)>>>0){f[z>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(f[y>>2]|0)==0;if(!i)f[z>>2]=(f[z>>2]|0)+-1;if(e){if(!i?(w=f[z>>2]|0,f[z>>2]=w+-1,s|0):0)f[z>>2]=w+-2}else zna(a,0);g=+(d|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;while(1){j=j<<4;x=m;m=BOa(m|0,l|0,1,0)|0;if(!((l|0)<0|(l|0)==0&x>>>0<7)){m=j;break}else l=I}}else m=v;if((i|32|0)==112){j=so(a,e)|0;i=I;if((j|0)==0&(i|0)==-2147483648){if(!e){zna(a,0);g=0.0;break}if(!(f[y>>2]|0)){j=0;i=0}else{f[z>>2]=(f[z>>2]|0)+-1;j=0;i=0}}}else if(!(f[y>>2]|0)){j=0;i=0}else{f[z>>2]=(f[z>>2]|0)+-1;j=0;i=0}l=mMa(p|0,o|0,2)|0;l=BOa(l|0,I|0,-32,-1)|0;l=BOa(l|0,I|0,j|0,i|0)|0;i=I;if(!m){g=+(d|0)*0.0;break}z=0-c|0;e=((z|0)<0)<<31>>31;if((i|0)>(e|0)|(i|0)==(e|0)&l>>>0>z>>>0){f[33448]=34;g=+(d|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}z=c+-106|0;e=((z|0)<0)<<31>>31;if((i|0)<(e|0)|(i|0)==(e|0)&l>>>0>>0){f[33448]=34;g=+(d|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{z=!(g>=.5);j=j<<1|(z^1)&1;g=g+(z?g:g+-1.0);l=BOa(l|0,i|0,-1,-1)|0;i=I}while((j|0)>-1);n=g;m=j}else n=g;z=((b|0)<0)<<31>>31;c=SRa(32,0,c|0,((c|0)<0)<<31>>31|0)|0;i=BOa(c|0,I|0,l|0,i|0)|0;c=I;if((c|0)<(z|0)|(c|0)==(z|0)&i>>>0>>0)if((i|0)>0)x=65;else{j=0;i=84;x=67}else{i=b;x=65}if((x|0)==65)if((i|0)<53){j=i;i=84-i|0;x=67}else{k=0.0;g=+(d|0)}if((x|0)==67){g=+(d|0);k=+Iab(+_U(1.0,i),g);i=j}d=(m&1|0)==0&(n!=0.0&(i|0)<32);g=(d?0.0:n)*g+(k+g*+((m+(d&1)|0)>>>0))-k;if(!(g!=0.0))f[33448]=34;g=+Pab(g,l)}while(0);return +g}function Oh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+48|0;A=z+24|0;m=z+16|0;v=z+20|0;y=z+4|0;w=z;Bab(m);switch(f[b+8>>2]|0){case 16:{L1a(A,f[33072]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 17:{L1a(A,f[33073]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 14:{L1a(A,f[33074]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 15:{L1a(A,f[33075]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 5:{L1a(A,f[33063]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 4:{L1a(A,f[33062]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 3:{L1a(A,f[33059]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}case 2:{L1a(A,f[33058]|0);t=f[A>>2]|0;f[m>>2]=t;o=10;break}default:{}}do if((o|0)==10){j=t;s=a+48|0;r=W7a(m)|0;p=a+52|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){k=i+-1|0;l=(k&i|0)==0;if(!l)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=k&r;c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c)o=25;else do{c=f[c>>2]|0;if(!c){o=25;break a}h=f[c+4>>2]|0;if((h|0)!=(r|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){o=25;break a}}}while(!(g2a(f[c+8>>2]|0,j)|0))}else{d=0;o=25}while(0);if((o|0)==25){W6(A,s,r,m);j=a+60|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+64>>2];do if(q|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(680,s|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r}else{i=c;d=(r>>>0)%(c>>>0)|0}}while(0);c=f[(f[s>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+56|0;h=f[A>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[s>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=A;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[s>>2]|0)+(c<<2)>>2]=h;c=A}}else{s=f[A>>2]|0;f[s>>2]=f[c>>2];f[c>>2]=s;c=A}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}c=f[a+44>>2]|0;f[v>>2]=t;f[w>>2]=f[b+12>>2];f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;x=0;ua(168,y|0,1);t=x;x=0;if(t&1){A=Ia()|0;zSa(y);Ua(A|0)}qda(y,w,w+4|0);w=f[b+4>>2]|0;x=0;f[A>>2]=f[v>>2];c=ka(13,c|0,A|0,y|0,w|0)|0;A=x;x=0;if(A&1){A=Ia()|0;zSa(y);Ua(A|0)}else{GVa(f[a+16>>2]|0,c)|0;zSa(y);break}}while(0);u=z;return}function Ph(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0;t=u;u=u+80|0;k=t+32|0;p=t+56|0;g=t+16|0;h=t+72|0;i=t+68|0;j=t+64|0;q=t;r=t+60|0;s=t+52|0;n=t+48|0;o=b+8|0;l=b+12|0;m=b+24|0;while(1){if(s$a(f[l>>2]|0)|0)break;e=RCa(o)|0;if(!(g2a(f[e>>2]|0,f[m>>2]|0)|0))break;REa(o)}c=0;while(1){if(c>>>0>=(Jbb(f[l>>2]|0)|0)>>>0)break;e=ODa(o,c)|0;if(!(g2a(f[e>>2]|0,f[m>>2]|0)|0))break;c=c+1|0}if(c|0){d=c;while(1){e=Jbb(f[l>>2]|0)|0;if(d>>>0>=e>>>0)break;v=ODa(o,d)|0;e=ODa(o,d-c|0)|0;f[e>>2]=f[v>>2];d=d+1|0}M7(o,e-c|0);v=f[a+36>>2]|0;Jbb(v)|0;_0a(p,v);v=b+28|0;e=f[v>>2]|0;t$a(g,c);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];g=e0(p,k)|0;g=Kpa(f[p>>2]|0,1,e,g)|0;f[v>>2]=g}a:do if(!(f[b+32>>2]|0)){c=f[l>>2]|0;d=Jbb(c)|0;switch(d|0){case 0:{v=f[a+36>>2]|0;Jbb(v)|0;_0a(p,v);v=lNa(f[p>>2]|0,f[b+28>>2]|0)|0;f[h>>2]=f[b+24>>2];f[k>>2]=f[h>>2];v=Ipa(p,v,Vma(p,k,0,0)|0)|0;GVa(f[a+16>>2]|0,v)|0;break a}case 1:{s=f[a+36>>2]|0;Jbb(s)|0;_0a(p,s);s=f[b+28>>2]|0;f[i>>2]=f[b+24>>2];f[k>>2]=f[i>>2];v=Vma(p,k,0,0)|0;r=zMa(o)|0;f[j>>2]=f[r>>2];f[k>>2]=f[j>>2];v=Hqa(p,s,v,Vma(p,k,0,0)|0)|0;GVa(f[a+16>>2]|0,v)|0;break a}default:{v=f[a+40>>2]|0;Jbb(v)|0;v=(f[v+28>>2]|0)>0;if((d>>>0<13|v^1)&(v|d>>>0<128))break a;d=1;while(1){if(d>>>0>=(c+-1|0)>>>0)break;v=ODa(o,d)|0;if(f2a(f[v>>2]|0,f[m>>2]|0)|0)break a;d=d+1|0;c=f[l>>2]|0}v=f[a+36>>2]|0;Jbb(v)|0;_0a(p,v);v=f[a+32>>2]|0;Jbb(v)|0;v=Cka(v,1)|0;j=f[p>>2]|0;m=sBa(j,v,f[b+28>>2]|0)|0;v=SKa(j,v,1)|0;t$a(q,(Jbb(f[l>>2]|0)|0)+-1|0);f[k>>2]=f[q>>2];f[k+4>>2]=f[q+4>>2];f[k+8>>2]=f[q+8>>2];f[k+12>>2]=f[q+12>>2];q=e0(p,k)|0;q=Kpa(f[p>>2]|0,15,v,q)|0;v=RCa(o)|0;f[r>>2]=f[v>>2];f[k>>2]=f[r>>2];v=Vma(p,k,0,0)|0;f[s>>2]=f[b+24>>2];f[k>>2]=f[s>>2];v=Hqa(p,q,v,Vma(p,k,0,0)|0)|0;s=zMa(o)|0;f[n>>2]=f[s>>2];f[k>>2]=f[n>>2];v=Hqa(p,m,v,Vma(p,k,0,0)|0)|0;GVa(f[a+16>>2]|0,v)|0;break a}}}while(0);u=t;return}function Qh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;h=n+4|0;k=n+8|0;j=n;f[h>>2]=c;e=f[c>>2]|0;m=a+48|0;d=f[e>>2]|0;g=c;a:do if(R6a(d)|0){d=a+52|0;f[d>>2]=f[m>>2];l=($Ra(e)|0)+16|0;if(f[l>>2]|0){_Qa(a);break}c=f[d>>2]|0;if((c|0)==(f[a+56>>2]|0)){LL(m,h);break}else{f[c>>2]=g;f[d>>2]=(f[d>>2]|0)+4;break}}else{if(E6a(d)|0){c=f[m>>2]|0;d=a+52|0;f[d>>2]=c;if((f[a+56>>2]|0)==(c|0)){LL(m,h);break}else{f[c>>2]=g;f[d>>2]=(f[d>>2]|0)+4;break}}if(Dab(d)|0){e=vSa(e)|0;if((f[(f[e+8>>2]|0)+4>>2]|0)==5){u0a(a);break}g=e+16|0;if(!(f[g>>2]|0)){_Qa(a);break}h=a+64|0;l=f[h>>2]|0;c=l;if((l|0)==(f[a+60>>2]|0))Ca(91323,91094,86,91348);d=c+-12|0;f[k>>2]=0;i=k+4|0;f[i>>2]=0;o=k+8|0;f[o>>2]=0;f[k>>2]=f[d>>2];l=c+-8|0;f[i>>2]=f[l>>2];c=c+-4|0;f[o>>2]=f[c>>2];f[c>>2]=0;f[l>>2]=0;f[d>>2]=0;d=f[h>>2]|0;c=0;while(1){if((c|0)==-1)break;o=c+-1|0;zSa(d+(o*12|0)|0);c=o}f[h>>2]=d+-12;if((f[(f[e+12>>2]|0)+4>>2]|0)!=0?(f[(f[g>>2]|0)+4>>2]|0)!=0:0)d=25;else d=22;do if((d|0)==22){x=0;ta(489,k|0);o=x;x=0;if(!(o&1)?(x=0,ta(490,a|0),o=x,x=0,!(o&1)):0){d=25;break}c=Ia()|0}while(0);do if((d|0)==25){h=f[i>>2]|0;i=a+52|0;d=a+56|0;c=f[k>>2]|0;while(1){if((c|0)==(h|0)){d=27;break}e=f[c>>2]|0;f[j>>2]=e;g=f[i>>2]|0;if((g|0)==(f[d>>2]|0)){x=0;ua(1752,m|0,j|0);o=x;x=0;if(o&1){d=32;break}}else{f[g>>2]=e;f[i>>2]=(f[i>>2]|0)+4}c=c+4|0}if((d|0)==27){zSa(k);break a}else if((d|0)==32){c=Ia()|0;break}}while(0);zSa(k);Ua(c|0)}if(!(zab(d)|0)){if(b7a(d)|0){_Qa(a);break}if(Nab(d)|0)break;c=k$a(e)|0;u0a(a);if(!c)break;Ph(a,c);break}l=aSa(e)|0;j=f[l+8>>2]|0;if(Qab(j)|0){k=(f[a+52>>2]|0)-(f[m>>2]|0)>>2;a=a+44|0;i=0;c=0;while(1){if((i|0)==(k|0))break;d=f[m>>2]|0;g=f[d+(i<<2)>>2]|0;h=u$a(f[g>>2]|0)|0;e=g;if((h|0)!=0?g2a(f[h+8>>2]|0,j)|0:0){d=f[h+12>>2]|0;if(!d)uVa(h);else f[g>>2]=d;b[a>>0]=1;c=c+1|0}else if(!c)c=0;else f[d+(i-c<<2)>>2]=e;i=i+1|0}if(c|0)hba(m,k-c|0);d=l+12|0;c=l+16|0;while(1){if(!(Jbb(f[c>>2]|0)|0))break a;o=RCa(d)|0;if(!(b7a(f[f[o>>2]>>2]|0)|0))break a;i7(d,(Jbb(f[c>>2]|0)|0)+-1|0);b[a>>0]=1}}}while(0);u=n;return}function Rh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+208|0;j=m+192|0;n=m;i=m+188|0;k=m+184|0;c=a+92|0;d=n+104|0;l=n+4|0;f[n>>2]=33580;f[d>>2]=33600;Laa(n+104|0,l);f[n+176>>2]=0;f[n+180>>2]=-1;f[n>>2]=41940;f[d>>2]=41960;x=0;ta(476,l|0);h=x;x=0;do if(h&1)c=Ia()|0;else{if((Gz(l,(b[c+11>>0]|0)<0?f[c>>2]|0:c,16)|0)==0?(h=n+(f[(f[n>>2]|0)+-12>>2]|0)|0,x=0,ua(100,h|0,f[h+16>>2]|4|0),h=x,x=0,h&1):0){c=Ia()|0;FU(l);break}h=a+64|0;e=f[h>>2]|0;g=f[e+16>>2]|0;e=f[e+12>>2]|0;while(1){if((e|0)==(g|0)){d=9;break}c=f[e>>2]|0;if(!(f[c+12>>2]|0)){f[i>>2]=f[c>>2];x=0;f[j>>2]=f[i>>2];c=ia(135,a|0,j|0)|0;d=x;x=0;if(d&1){d=20;break}x=0;c=ia(113,n|0,c|0)|0;d=x;x=0;if(d&1){d=20;break}x=0;c=ia(62,c|0,116871)|0;d=x;x=0;if(d&1){d=20;break}x=0;d=ia(62,c|0,f[f[e>>2]>>2]|0)|0;c=x;x=0;if(c&1){d=20;break}dYa(j,n+(f[(f[n>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(o&1){d=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;o=x;x=0;if(o&1){d=17;break}OCa(j);x=0;ia(79,d|0,c|0)|0;o=x;x=0;if(o&1){d=20;break}x=0;ga(227,d|0)|0;o=x;x=0;if(o&1){d=20;break}}e=e+4|0}do if((d|0)==9){e=f[h>>2]|0;g=f[e+40>>2]|0;e=f[e+36>>2]|0;while(1){if((e|0)==(g|0)){d=23;break}f[k>>2]=f[f[e>>2]>>2];x=0;f[j>>2]=f[k>>2];c=ia(135,a|0,j|0)|0;o=x;x=0;if(o&1){d=36;break}x=0;c=ia(113,n|0,c|0)|0;o=x;x=0;if(o&1){d=36;break}x=0;c=ia(62,c|0,116871)|0;o=x;x=0;if(o&1){d=36;break}x=0;d=ia(62,c|0,f[f[e>>2]>>2]|0)|0;o=x;x=0;if(o&1){d=36;break}dYa(j,n+(f[(f[n>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(o&1){d=32;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;o=x;x=0;if(o&1){d=32;break}OCa(j);x=0;ia(79,d|0,c|0)|0;o=x;x=0;if(o&1){d=36;break}x=0;ga(227,d|0)|0;o=x;x=0;if(o&1){d=36;break}e=e+4|0}if((d|0)==23){x=0;c=ga(284,l|0)|0;o=x;x=0;do if(!(o&1)){if((c|0)==0?(o=n+(f[(f[n>>2]|0)+-12>>2]|0)|0,x=0,ua(100,o|0,f[o+16>>2]|4|0),o=x,x=0,o&1):0)break;wOa(n);u=m;return}while(0);c=Ia()|0;break}else if((d|0)==32){c=Ia()|0;OCa(j);break}else if((d|0)==36){c=Ia()|0;break}}else if((d|0)==17){c=Ia()|0;OCa(j)}else if((d|0)==20)c=Ia()|0;while(0);wOa(n);Ua(c|0)}while(0);t1a(d);Ua(c|0)}function Sh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;p=u;u=u+48|0;t=p+32|0;r=p+16|0;q=p;o=c+12|0;do if(Jbb(f[c+16>>2]|0)|0){d=c+4|0;if((f[d>>2]|0)==2)f[d>>2]=1;d=a+108|0;e=BB(d,c+8|0)|0;i=RCa(o)|0;if(!(xba(a,f[i>>2]|0)|0)){if(!e)break;Tl(a,c,e+12|0);break}g=RCa(o)|0;UN(t,a,f[g>>2]|0);g=(e|0)==0;a:do if(!g){h=e+12|0;x=0;i=ja(78,h|0,f[t>>2]|0,b[t+8>>0]|0)|0;v=x;x=0;if(v&1){d=Ia()|0;s=40;break}if(!i){x=0;ua(2492,r|0,h|0);v=x;x=0;if(v&1)d=Ia()|0;else{x=0;va(159,q|0,a|0,1);v=x;x=0;if(v&1)d=Ia()|0;else{$R(d,e);h=a+44|0;d=f[h>>2]|0;x=0;e=ga(320,q|0)|0;v=x;x=0;b:do if((!(v&1)?(x=0,j=ga(218,o|0)|0,v=x,x=0,!(v&1)):0)?(x=0,n=ja(45,d|0,e|0,f[j>>2]|0)|0,v=x,x=0,!(v&1)):0){d=f[h>>2]|0;x=0;e=ga(320,r|0)|0;v=x;x=0;do if((!(v&1)?(k=f[h>>2]|0,x=0,l=ga(320,t|0)|0,v=x,x=0,!(v&1)):0)?(x=0,m=ja(46,f[k>>2]|0,l|0,1)|0,v=x,x=0,!(v&1)):0){x=0;g=ja(45,d|0,e|0,m|0)|0;v=x;x=0;if(v&1)break;d=f[h>>2]|0;x=0;e=ga(320,q|0)|0;v=x;x=0;do if(!(v&1)){x=0;d=ja(46,f[d>>2]|0,e|0,1)|0;v=x;x=0;if(v&1)break;x=0;e=ka(21,f[h>>2]|0,n|0,g|0,d|0)|0;v=x;x=0;if(v&1)break;x=0;d=ga(218,o|0)|0;v=x;x=0;if(v&1)break;f[d>>2]=e;x=0;va(161,a|0,c|0,r|0);v=x;x=0;if(v&1)break;MCa(q);MCa(r);s=30;break a}while(0);d=Ia()|0;break b}while(0);d=Ia()|0}else s=34;while(0);if((s|0)==34)d=Ia()|0;MCa(q)}MCa(r)}s=40}else s=10}else s=10;while(0);do if((s|0)==10){x=0;va(161,a|0,c|0,t|0);v=x;x=0;if(v&1){d=Ia()|0;s=40;break}if(g)s=30;else{$R(d,e);s=30}}while(0);if((s|0)==30){MCa(t);break}else if((s|0)==40){MCa(t);Ua(d|0)}}while(0);u=p;return}function Th(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+80|0;b=n+76|0;i=n+72|0;j=n+68|0;k=n+56|0;h=n+40|0;e=n+12|0;m=n+24|0;o=n;l=a+16|0;a:do if(f[l>>2]|0){f[b>>2]=a;f[i>>2]=a;f[j>>2]=a;f[k>>2]=a;f[k+4>>2]=b;f[k+8>>2]=j;f[h>>2]=b;f[h+4>>2]=j;f[h+8>>2]=i;f[h+12>>2]=a;b:do if(qC(k,99037)|0){Lca(f[b>>2]|0);Nm(f[(f[j>>2]|0)+16>>2]|0,91);do if(!(Vja(f[i>>2]|0,93)|0)){g=a+244|0;while(1){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[m+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1883,h|0,m|0);e=x;x=0;if(e&1){c=22;break}p=f[a>>2]|0;c=p+132|0;d=p+136|0;b=f[d>>2]|0;e=(b-(f[c>>2]|0)|0)/12|0;if((f[p+140>>2]|0)==(b|0)){x=0;ua(90,c|0,m|0);p=x;x=0;if(p&1){c=23;break}}else{x=0;ua(88,b|0,m|0);p=x;x=0;if(p&1){c=23;break}f[d>>2]=(f[d>>2]|0)+12}x=0;b=ia(68,g|0,m|0)|0;p=x;x=0;if(p&1){c=23;break}f[b>>2]=e;MTa(m);if(!(Vja(f[i>>2]|0,44)|0)){c=21;break}}if((c|0)==21){Nm(f[(f[j>>2]|0)+16>>2]|0,93);break}else if((c|0)==22)b=Ia()|0;else if((c|0)==23)b=Ia()|0;MTa(m);break b}while(0);if(qC(k,99084)|0){Nm(f[(f[j>>2]|0)+16>>2]|0,34);if(Vja(f[i>>2]|0,34)|0)b=0;else{b=bp(f[l>>2]|0)|0;m=bp(f[l>>2]|0)|0;o=(bp(f[l>>2]|0)|0)+1|0;p=bp(f[l>>2]|0)|0;f[a+24>>2]=m;f[a+28>>2]=o;f[a+32>>2]=p}f[a+20>>2]=b;break a}d=Ea(12)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;p=j7a(99093)|0;x=0;va(87,o|0,99093,p|0);p=x;x=0;if(!(p&1)){x=0;ua(1882,d|0,o|0);p=x;x=0;if(p&1)c=1;else{x=0;va(98,d|0,34672,495);x=0;c=0}b=Ia()|0;MTa(o);if(!c)break}else b=Ia()|0;La(d|0)}else{d=Ea(12)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;p=j7a(99045)|0;x=0;va(87,e|0,99045,p|0);p=x;x=0;if(!(p&1)){x=0;ua(1882,d|0,e|0);p=x;x=0;if(p&1)c=1;else{x=0;va(98,d|0,34672,495);x=0;c=0}b=Ia()|0;MTa(e);if(!c)break}else b=Ia()|0;La(d|0)}while(0);Ua(b|0)}while(0);u=n;return}function Uh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=u;u=u+112|0;p=j+100|0;k=j+88|0;l=j+48|0;m=j+36|0;n=j+24|0;o=j;i=j+12|0;g=f[33181]|0;f[33181]=g+1;FY(p,g);g=p+11|0;h=p+4|0;while(1){e=b[g>>0]|0;if((e<<24>>24<0?f[h>>2]|0:e&255)>>>0>=3){e=14;break}x=0;ua(1284,k|0,p|0);e=x;x=0;if(e&1){e=13;break}if((b[g>>0]|0)<0){Z0a(f[p>>2]|0,0);f[h>>2]=0}else{Z0a(p,0);b[g>>0]=0}x=0;ta(470,p|0);e=x;x=0;if(e&1){e=8;break}f[p>>2]=f[k>>2];f[p+4>>2]=f[k+4>>2];f[p+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}MTa(k)}if((e|0)==8){o=Ja(0)|0;y2a(o)}else if((e|0)==13)d=Ia()|0;else if((e|0)==14){f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;d=j7a(86918)|0;x=0;va(87,o|0,86918,d|0);d=x;x=0;a:do if(d&1){d=Ia()|0;e=42}else{g=b[g>>0]|0;d=g<<24>>24<0;x=0;ja(49,o|0,(d?f[p>>2]|0:p)|0,(d?f[h>>2]|0:g&255)|0)|0;h=x;x=0;if(h&1)d=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];d=0;while(1){if((d|0)==3)break;f[o+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,n|0,123396)|0;h=x;x=0;if(h&1)d=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,m|0,a|0)|0;a=x;x=0;do if(a&1)d=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,l|0,86923)|0;a=x;x=0;if(a&1){d=Ia()|0;MTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];d=0;while(1){if((d|0)==3)break;f[l+(d<<2)>>2]=0;d=d+1|0}MTa(l);MTa(m);MTa(n);MTa(o);hR(l);s6a(l);x=0;ua(88,i|0,k|0);o=x;x=0;do if(!(o&1)){x=0;va(116,l|0,c|0,i|0);o=x;x=0;if(o&1){d=Ia()|0;MTa(i);break}else{MTa(i);Xua(l);MTa(k);MTa(p);u=j;return}}else d=Ia()|0;while(0);Xua(l);MTa(k);break a}while(0);MTa(m)}MTa(n)}MTa(o);e=42}while(0)}MTa(p);Ua(d|0)}function Vh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+48|0;A=z+24|0;B=z+4|0;y=z;NF(a+84|0,b,Jbb(f[a+36>>2]|0)|0);o=a+208|0;p=a+212|0;uk(a+44|0,f[o>>2]|0,f[p>>2]|0);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=1065353216;p=f[p>>2]|0;q=a+64|0;r=a+68|0;v=a+76|0;s=a+80|0;t=a+72|0;o=f[o>>2]|0;a:while(1){if((o|0)==(p|0)){w=3;break}i=f[o>>2]|0;f[y>>2]=i;f[A>>2]=i;m=JH(A,4)|0;e=f[r>>2]|0;l=(e|0)==0;b:do if(!l){j=e+-1|0;k=(j&e|0)==0;if(!k)if(m>>>0>>0)c=m;else c=(m>>>0)%(e>>>0)|0;else c=j&m;b=f[(f[q>>2]|0)+(c<<2)>>2]|0;if(!b)w=19;else do{b=f[b>>2]|0;if(!b){w=19;break b}d=f[b+4>>2]|0;if((d|0)!=(m|0)){if(!k){if(d>>>0>=e>>>0)d=(d>>>0)%(e>>>0)|0}else d=d&j;if((d|0)!=(c|0)){w=19;break b}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;w=19}while(0);if((w|0)==19){w=0;x=0;wa(150,A|0,q|0,m|0,y|0);k=x;x=0;if(k&1){w=39;break}g=+(((f[v>>2]|0)+1|0)>>>0);h=+n[s>>2];do if(l|h*+(e>>>0)>>0<3|(e+-1&e|0)!=0)&1;k=~~+W(+(g/h))>>>0;x=0;ua(632,q|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){w=26;break a}b=f[r>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&m;break}if(m>>>0>>0){e=b;c=m}else{e=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[q>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[A>>2]|0;f[d>>2]=f[t>>2];f[t>>2]=d;f[(f[q>>2]|0)+(c<<2)>>2]=t;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;if(c&e){if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0}else b=b&c;f[(f[q>>2]|0)+(b<<2)>>2]=d}}else{m=f[A>>2]|0;f[m>>2]=f[b>>2];f[b>>2]=m}f[v>>2]=(f[v>>2]|0)+1}o=o+4|0}do if((w|0)==3){b=a+72|0;c=a+64|0;while(1){if(!(f[v>>2]|0))break;s=f[b>>2]|0;t=f[s+8>>2]|0;C4(c,s);x=0;ua(2831,a|0,t|0);t=x;x=0;if(t&1){w=43;break}}if((w|0)==43){b=Ia()|0;break}d=f[a+192>>2]|0;e=a+108|0;c=f[a+188>>2]|0;while(1){if((c|0)==(d|0)){w=46;break}f[A>>2]=f[c>>2];x=0;b=ia(200,e|0,A|0)|0;w=x;x=0;if(w&1){w=51;break}b=f[b>>2]|0;f[y>>2]=b;if(Wz(B,y)|0){if(!(zab(f[b>>2]|0)|0)){w=50;break}f[(f[A>>2]|0)+12>>2]=f[b+4>>2]}c=c+4|0}if((w|0)==46){SQa(B);u=z;return}else if((w|0)==50){x=0;wa(71,113292,113307,75,115765);x=0;b=Ia()|0}else if((w|0)==51)b=Ia()|0}else if((w|0)==26){b=Ia()|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)Cbb(c);w=40}else if((w|0)==39){b=Ia()|0;w=40}while(0);SQa(B);Ua(b|0)}function Wh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+48|0;n=p+32|0;q=p+4|0;l=p;o=p+16|0;m=a+12|0;do if(b[m>>0]|0){e=DCa(134176,98053)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,k=x,x=0,!(k&1)):0){OCa(n);Wq(e,d)|0;fu(e)|0;break}q=Ia()|0;OCa(n);Ua(q|0)}while(0);k=nq(a)|0;do if(b[m>>0]|0){c=zm(DCa(134176,97878)|0,k)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(n);Wq(c,g)|0;fu(c)|0;break}q=Ia()|0;OCa(n);Ua(q|0)}while(0);DUa(q);g=a+132|0;h=a+148|0;i=a+152|0;j=a+144|0;e=0;while(1){if(e>>>0>=k>>>0){d=13;break}if(b[m>>0]|0){x=0;d=ia(62,134176,97884)|0;c=x;x=0;if(c&1){d=21;break}dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;r=x;x=0;if(r&1){d=18;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;r=x;x=0;if(r&1){d=18;break}OCa(n);x=0;ia(79,d|0,c|0)|0;r=x;x=0;if(r&1){d=21;break}x=0;ga(227,d|0)|0;r=x;x=0;if(r&1){d=21;break}}x=0;c=ga(212,12)|0;r=x;x=0;if(r&1){d=29;break}j1a(c);f[l>>2]=c;x=0;c=ga(305,a|0)|0;r=x;x=0;if(r&1){d=30;break}f[f[l>>2]>>2]=c;c=f[l>>2]|0;if(P5(q,c)|0){f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;r=j7a(98068)|0;x=0;va(87,o|0,98068,r|0);r=x;x=0;if(r&1){d=29;break}x=0;ua(1870,a|0,o|0);r=x;x=0;if(r&1){d=31;break}MTa(o);c=f[l>>2]|0}x=0;wa(82,n|0,q|0,c|0,c|0);r=x;x=0;if(r&1){d=29;break}x=0;c=ga(302,a|0)|0;r=x;x=0;if(r&1){d=29;break}f[(f[l>>2]|0)+8>>2]=c;x=0;c=ga(302,a|0)|0;r=x;x=0;if(r&1){d=40;break}x=0;d=ia(175,g|0,l|0)|0;r=x;x=0;if(r&1){d=40;break}f[d>>2]=c;c=f[h>>2]|0;if((c|0)==(f[i>>2]|0)){x=0;ua(1885,j|0,l|0);r=x;x=0;if(r&1){d=40;break}}else{f[c>>2]=f[l>>2];f[h>>2]=(f[h>>2]|0)+4}e=e+1|0}if((d|0)==13){RTa(q);u=p;return}else if((d|0)==18){c=Ia()|0;OCa(n);d=22}else if((d|0)==21){c=Ia()|0;d=22}else if((d|0)==29){c=Ia()|0;d=41}else if((d|0)==30){c=Ia()|0;d=41}else if((d|0)==31){c=Ia()|0;MTa(o);d=41}else if((d|0)==40){c=Ia()|0;d=41}RTa(q);Ua(c|0)}function Xh(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;k=e&1;a:do if(e){switch(d<<24>>24){case 18:{e=1;g=1;break}case 19:{e=1;g=2;break}case 16:{e=1;g=4;break}case 20:{e=2;g=1;break}case 21:{e=2;g=2;break}case 22:{e=2;g=4;break}case 17:{e=2;g=8;break}default:{d=0;break a}}d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=g;f[d+4>>2]=e;b[d+9>>0]=0;if(!(b[a+12>>0]|0))g=34;else{e=DCa(134176,97108)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[j>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,i=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,h=x,x=0,!(h&1)):0){OCa(j);Wq(e,i)|0;fu(e)|0;g=34;break}l=Ia()|0;OCa(j);Ua(l|0)}}else{do switch(d<<24>>24){case 44:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=1;b[d+9>>0]=1;break}case 45:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=1;b[d+9>>0]=0;break}case 46:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=1;b[d+9>>0]=1;break}case 47:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=1;b[d+9>>0]=0;break}case 40:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=1;break}case 48:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=2;b[d+9>>0]=1;break}case 49:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=1;f[d+4>>2]=2;b[d+9>>0]=0;break}case 50:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=2;b[d+9>>0]=1;break}case 51:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=2;f[d+4>>2]=2;b[d+9>>0]=0;break}case 52:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=2;b[d+9>>0]=1;break}case 53:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=2;b[d+9>>0]=0;break}case 41:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=8;f[d+4>>2]=2;break}case 42:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=4;f[d+4>>2]=3;break}case 43:{d=qWa(f[a+4>>2]|0)|0;b[d+8>>0]=8;f[d+4>>2]=4;break}default:{d=0;break a}}while(0);if(!(b[a+12>>0]|0))g=34;else{e=DCa(134176,110810)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[j>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,i=x,x=0,!(i&1)):0){OCa(j);Wq(e,h)|0;fu(e)|0;g=34;break}l=Ia()|0;OCa(j);Ua(l|0)}}while(0);if((g|0)==34){b[d+20>>0]=k;LF(a,d+16|0,d+12|0);k=dk(a)|0;f[d+24>>2]=k;PWa(d);f[c>>2]=d;d=1}u=l;return d|0}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;w=u;u=u+48|0;s=w+40|0;p=w+36|0;o=w+16|0;e=w;q=w+32|0;r=w+28|0;t=w+12|0;_0a(p,c);v=s8(88)|0;dX(v);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,109780,j7a(109780)|0);x=0;ia(59,e|0,f[b>>2]|0)|0;n=x;x=0;do if(n&1)d=Ia()|0;else{f[o>>2]=f[e>>2];f[o+4>>2]=f[e+4>>2];f[o+8>>2]=f[e+8>>2];d=0;while(1){if((d|0)==3)break;f[e+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,s|0,o|0);n=x;x=0;if(n&1){d=Ia()|0;MTa(o);break}f[v>>2]=f[s>>2];MTa(o);MTa(e);d=sSa(c+144|0)|0;f[d+24>>2]=f[b>>2];i=b+4|0;f[d+4>>2]=f[i>>2];j=f[b+12>>2]|0;k=d+8|0;l=v+8|0;m=v+12|0;n=v+16|0;h=f[b+8>>2]|0;while(1){if((h|0)==(j|0))break;g=f[h>>2]|0;f[s>>2]=g;do if((g|0)==2){e=(f[m>>2]|0)-(f[l>>2]|0)>>2;faa(k,dma(p,e,e+1|0)|0);f[o>>2]=1;e=f[m>>2]|0;b=f[n>>2]|0;if(e>>>0>>0){f[e>>2]=1;g=e+4|0;f[m>>2]=g;e=b}else{LL(l,o);g=f[m>>2]|0;e=f[n>>2]|0}f[o>>2]=1;if(g>>>0>>0){f[g>>2]=1;f[m>>2]=g+4}else LL(l,o)}else{b=(f[m>>2]|0)-(f[l>>2]|0)>>2;e=f[p>>2]|0;if((g|0)!=3){faa(k,SKa(e,b,g)|0);e=f[m>>2]|0;if((e|0)==(f[n>>2]|0)){LL(l,s);break}else{f[e>>2]=g;f[m>>2]=e+4;break}}e=SKa(e,b,4)|0;faa(k,rBa(f[p>>2]|0,44,e)|0);f[o>>2]=4;e=f[m>>2]|0;if(e>>>0<(f[n>>2]|0)>>>0){f[e>>2]=4;f[m>>2]=e+4}else LL(l,o)}while(0);h=h+4|0}e=f[i>>2]|0;switch(e|0){case 2:{f[v+4>>2]=1;Bab(q);f[s>>2]=f[q>>2];o=PF(v,s,2)|0;q=vwa(f[p>>2]|0,0)|0;n=q+12|0;faa(n,Qya(p,o,d)|0);MT(a,c);f[r>>2]=f[33164];d=ZQ(p,o)|0;f[s>>2]=f[r>>2];faa(n,Asa(p,s,d)|0);faa(n,VCa(p,o)|0);tt(q);d=q;break}case 3:{f[v+4>>2]=4;d=rBa(f[p>>2]|0,43,d)|0;break}default:f[v+4>>2]=e}f[v+36>>2]=d;d=f[v>>2]|0;f[t>>2]=d;f[s>>2]=f[t>>2];if(!(Xma(c,s)|0)){Is(c,v);d=f[v>>2]|0}u=w;return d|0}while(0);MTa(e);Ua(d|0);return 0}function Zh(a){a=a|0;var c=0.0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+64|0;m=o+16|0;d=o+48|0;e=o+56|0;g=o+52|0;p=o+36|0;n=o;l=o+32|0;if(b[135320]|0)Ema(DCa(DCa(134008,53055)|0,a)|0,10)|0;kNa(d,a,1);j=f[f[32969]>>2]|0;k=f[d>>2]|0;L1a(e,k);f[m>>2]=f[e>>2];j=(fJ(j,m)|0)+4|0;a=f[f[32969]>>2]|0;L1a(g,f[j>>2]|0);f[m>>2]=f[g>>2];a=$I(a,m)|0;if(!a)Ca(116879,53069,537,53087);i=pb(6)|0;j=a+8|0;e=(f[a+12>>2]|0)-(f[j>>2]|0)>>2;f[p>>2]=0;g=p+4|0;f[g>>2]=0;h=p+8|0;f[h>>2]=0;d=0;a:while(1){if(d>>>0>=e>>>0){d=7;break}switch(f[(f[j>>2]|0)+(d<<2)>>2]|0){case 1:{if(d>>>0>>0)a=rb(7,d|0)|0;else a=0;t$a(m,a);a=f[g>>2]|0;if(a>>>0>=(f[h>>2]|0)>>>0){x=0;ua(95,p|0,m|0);a=x;x=0;if(a&1){d=15;break a}}else{f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[g>>2]=a+16}break}case 3:{if(d>>>0>>0)c=+kb(7,d|0);else c=0.0;HAa(m,c);a=f[g>>2]|0;if(a>>>0>=(f[h>>2]|0)>>>0){x=0;ua(95,p|0,m|0);a=x;x=0;if(a&1){d=22;break a}}else{f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[g>>2]=a+16}break}case 4:{if(d>>>0>>0)c=+kb(7,d|0);else c=0.0;pqa(m,c);a=f[g>>2]|0;if(a>>>0>=(f[h>>2]|0)>>>0){x=0;ua(95,p|0,m|0);a=x;x=0;if(a&1){d=29;break a}}else{f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];f[a+12>>2]=f[m+12>>2];f[g>>2]=a+16}break}default:{d=30;break a}}d=d+1|0}if((d|0)==7){j=f[32969]|0;L1a(l,k);x=0;f[m>>2]=f[l>>2];wa(75,n|0,j|0,m|0,p|0);l=x;x=0;b:do if(!(l&1)){if(b[135320]|0){x=0;a=ia(62,134008,53183)|0;l=x;x=0;if(l&1)break;x=0;f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];f[m+12>>2]=f[n+12>>2];a=ia(70,a|0,m|0)|0;m=x;x=0;if(m&1)break;x=0;ia(71,a|0,10)|0;m=x;x=0;if(m&1)break}switch(f[n>>2]|0){case 0:{pb(8)|0;break}case 1:{x=0;a=ga(225,n|0)|0;n=x;x=0;if(n&1)break b;rb(9,a|0)|0;break}case 3:{x=0;c=+ea(1,n|0);n=x;x=0;if(n&1)break b;qb(9,+c)|0;break}case 4:{x=0;c=+ea(2,n|0);n=x;x=0;if(n&1)break b;qb(9,+c)|0;break}default:{x=0;sa(5);x=0;break b}}zSa(p);u=o;return}while(0);a=Ia()|0}else if((d|0)==15)a=Ia()|0;else if((d|0)==22)a=Ia()|0;else if((d|0)==29)a=Ia()|0;else if((d|0)==30){x=0;sa(5);x=0;a=Ia()|0}zSa(p);Ua(a|0)}function _h(){var a=0;f[32835]=0;f[32834]=49708;x=0;sa(11);a=x;x=0;if(a&1)a=Ia()|0;else{f[32870]=0;f[32871]=0;f[32872]=0;a=j7a(119759)|0;x=0;va(87,131480,119759,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{f[32837]=f[32836];x0a();x=0;sa(12);a=x;x=0;do if((((((((((((((!(a&1)?(w0a(),x=0,sa(13),a=x,x=0,!(a&1)):0)?(v1a(),x=0,sa(14),a=x,x=0,!(a&1)):0)?(S0a(),x=0,sa(15),a=x,x=0,!(a&1)):0)?(WZa(),x=0,sa(16),a=x,x=0,!(a&1)):0)?(VZa(),x=0,sa(17),a=x,x=0,!(a&1)):0)?(EZa(),x=0,sa(18),a=x,x=0,!(a&1)):0)?(FZa(),x=0,sa(19),a=x,x=0,!(a&1)):0)?(q2a(),x=0,sa(20),a=x,x=0,!(a&1)):0)?(p2a(),x=0,sa(21),a=x,x=0,!(a&1)):0)?(pVa(),x=0,sa(22),a=x,x=0,!(a&1)):0)?(oVa(),x=0,sa(23),a=x,x=0,!(a&1)):0)?(nVa(),x=0,sa(24),a=x,x=0,!(a&1)):0)?(mVa(),x=0,sa(25),a=x,x=0,!(a&1)):0)?(Y_a(),x=0,sa(26),a=x,x=0,!(a&1)):0){X_a();x=0;sa(27);a=x;x=0;if(a&1)break;W_a();x=0;sa(28);a=x;x=0;if(a&1)break;V_a();x=0;sa(29);a=x;x=0;if(a&1)break;dVa();x=0;sa(30);a=x;x=0;if(a&1)break;cVa();x=0;sa(31);a=x;x=0;if(a&1)break;bVa();x=0;sa(32);a=x;x=0;if(a&1)break;aVa();x=0;sa(33);a=x;x=0;if(a&1)break;iGa();x=0;sa(34);a=x;x=0;if(a&1)break;hGa();x=0;sa(35);a=x;x=0;if(a&1)break;tGa();x=0;sa(36);a=x;x=0;if(a&1)break;sGa();x=0;sa(37);a=x;x=0;if(a&1)break;l0a();x=0;sa(38);a=x;x=0;if(a&1)break;k0a();x=0;sa(39);a=x;x=0;if(a&1)break;return}while(0);a=Ia()|0;MTa(131480)}koa(131344)}Ua(a|0)}function $h(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+8|0;k=m;a:do if((a|0)!=(c|0)){b:do switch(b[a>>0]|0){case 84:{j=d+4|0;i=((f[j>>2]|0)-(f[d>>2]|0)|0)/24|0;h=Ej(a,c,d)|0;c=f[j>>2]|0;g=(c-(f[d>>2]|0)|0)/24|0;if((h|0)!=(a|0)&(g|0)==(i+1|0)){f[k>>2]=f[d+12>>2];HR(l,c+-24|0,k);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;aY(l);break b}}else{f[e+12>>2]=f[l+12>>2];f[e>>2]=f[l>>2];d=l+4|0;f[e+4>>2]=f[d>>2];k=l+8|0;f[e+8>>2]=f[k>>2];f[k>>2]=0;f[d>>2]=0;f[l>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(l);a=h;break a}while(1){if((g|0)==(i|0))break a;e=0;while(1){if((e|0)==-1)break;l=e+-1|0;OJa(c+(l*24|0)|0);e=l}l=c+-24|0;f[j>>2]=l;g=g+-1|0;c=l}}case 68:{c=cp(a,c,d)|0;if((c|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[k>>2]=f[d+12>>2];HR(l,e+-24|0,k);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;aY(l);break b}}else{f[e+12>>2]=f[l+12>>2];f[e>>2]=f[l>>2];d=l+4|0;f[e+4>>2]=f[d>>2];k=l+8|0;f[e+8>>2]=f[k>>2];f[k>>2]=0;f[d>>2]=0;f[l>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(l);a=c;break a}case 83:{e=Qg(a,c,d)|0;if((e|0)!=(a|0)){a=e;break a}if((c-a|0)<=2)break a;if((b[a+1>>0]|0)!=116)break a;j=a+2|0;g=mM(j,c,d)|0;if((g|0)==(j|0))break a;e=d+4|0;c=f[e>>2]|0;if((f[d>>2]|0)==(c|0))break a;zoa(c+-24|0,0,123568)|0;a=(f[e>>2]|0)+-24|0;f[k>>2]=f[d+12>>2];HR(l,a,k);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;aY(l);break b}}else{f[e+12>>2]=f[l+12>>2];f[e>>2]=f[l>>2];d=l+4|0;f[e+4>>2]=f[d>>2];k=l+8|0;f[e+8>>2]=f[k>>2];f[k>>2]=0;f[d>>2]=0;f[l>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(l);a=g;break a}default:break a}while(0);Ua(a|0)}while(0);u=m;return a|0}function ai(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0;g=f[c>>2]|0;if((e|0)!=0?(i=f[e>>2]|0,(i|0)!=0):0)if(!a){j=g;e=d;l=25}else{f[e>>2]=0;e=d;k=g;l=46}else l=5;a:do if((l|0)==5){e=(a|0)!=0;if(f[f[11692]>>2]|0)if(e){i=a;e=d;l=32;break}else{e=d;l=15;break}if(!e){d=dV(g)|0;l=62;break}b:do if(d){j=a;e=d;while(1){i=b[g>>0]|0;if(!(i<<24>>24))break;g=g+1|0;f[j>>2]=i<<24>>24&57343;e=e+-1|0;if(!e)break b;else j=j+4|0}f[j>>2]=0;f[c>>2]=0;d=d-e|0;l=62;break a}while(0);f[c>>2]=g;l=62}while(0);c:while(1){d:do if((l|0)==15){while(1){i=b[g>>0]|0;if(((i&255)+-1|0)>>>0<127?(g&3|0)==0:0){l=f[g>>2]|0;i=l&255;if(!((l+-16843009|l)&-2139062144)){do{g=g+4|0;e=e+-4|0;i=f[g>>2]|0}while(((i+-16843009|i)&-2139062144|0)==0);i=i&255}}j=i&255;if((j+-1|0)>>>0>=127)break;e=e+-1|0;g=g+1|0}j=j+-194|0;if(j>>>0>50)l=56;else{i=f[23968+(j<<2)>>2]|0;j=g+1|0;l=25;continue c}}else if((l|0)==25){l=(h[j>>0]|0)>>>3;if((l+-16|l+(i>>26))>>>0>7){g=j;l=54}else{g=j+1|0;if(i&33554432){if((b[g>>0]&-64)<<24>>24!=-128){g=j;l=54;break}g=j+2|0;if(i&524288){if((b[g>>0]&-64)<<24>>24!=-128){g=j;l=54;break}g=j+3|0}}e=e+-1|0;l=15;continue c}}else if((l|0)==32){l=0;e:do if(e){j=i;while(1){k=b[g>>0]|0;i=k&255;a=i+-1|0;if(a>>>0<127){if((g&3|0)==0&e>>>0>4){i=j;while(1){j=f[g>>2]|0;if((j+-16843009|j)&-2139062144|0){a=g;k=j&255;break}f[i>>2]=j&255;f[i+4>>2]=h[g+1>>0];f[i+8>>2]=h[g+2>>0];a=g;g=g+4|0;k=i;i=i+16|0;f[k+12>>2]=h[a+3>>0];e=e+-4|0;if(e>>>0<=4){l=40;break}}if((l|0)==40){a=g;k=b[g>>0]|0}l=k&255;j=i;g=a;a=l+-1|0;i=l;l=42}}else l=42;if((l|0)==42){l=0;if(a>>>0>=127)break}g=g+1|0;f[j>>2]=i;e=e+-1|0;if(!e)break e;else j=j+4|0}i=i+-194|0;if(i>>>0>50){a=j;i=k;l=56;break d}i=f[23968+(i<<2)>>2]|0;a=j;k=g+1|0;l=46;continue c}while(0);f[c>>2]=g;l=62;continue c}else if((l|0)==46){l=0;j=h[k>>0]|0;g=j>>>3;if((g+-16|g+(i>>26))>>>0>7){g=k;l=54}else{g=k+1|0;i=j+-128|i<<6;do if((i|0)<0){j=(h[g>>0]|0)+-128|0;if(j>>>0<=63){g=k+2|0;i=j|i<<6;if((i|0)>=0)break;j=(h[g>>0]|0)+-128|0;if(j>>>0<=63){g=k+3|0;i=j|i<<6;break}}f[33448]=84;g=k+-1|0;break d}while(0);f[a>>2]=i;i=a+4|0;e=e+-1|0;l=32;continue c}}else if((l|0)==62)return d|0;while(0);if((l|0)==54){j=g+-1|0;if(!i){g=j;i=b[j>>0]|0;l=56}else{g=j;d=a;l=60}}if((l|0)==56)if(!(i<<24>>24)){if(a|0){f[a>>2]=0;f[c>>2]=0}d=d-e|0;l=62;continue}else{d=a;l=60}if((l|0)==60){f[33448]=84;if(!d){d=-1;l=62;continue}}f[c>>2]=g;d=-1;l=62}return 0}function bi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;p=o+8|0;m=o;f[p>>2]=0;l=p+4|0;f[l>>2]=0;k=p+8|0;f[k>>2]=0;n=a+48|0;j=a+52|0;i=0;a=f[n>>2]|0;while(1){if((a|0)==(j|0)){d=3;break}e=a+16|0;d=f[e>>2]|0;e=f[e+4>>2]|0;g=m;f[g>>2]=d;f[g+4>>2]=e;g=f[l>>2]|0;h=d;if((g|0)==(f[k>>2]|0)){x=0;ua(2280,p|0,m|0);g=x;x=0;if(g&1){d=16;break}}else{f[g>>2]=d;f[l>>2]=(f[l>>2]|0)+4}e=((b[h>>0]|0)==91?0:e)+i|0;d=f[a+4>>2]|0;if(!d)while(1){d=f[a+8>>2]|0;if((f[d>>2]|0)==(a|0)){a=d;break}else a=d}else{a=d;while(1){d=f[a>>2]|0;if(!d)break;else a=d}}i=e}do if((d|0)==3){f[m>>2]=104621;a=f[l>>2]|0;if(a>>>0>=(f[k>>2]|0)>>>0){x=0;ua(2279,p|0,m|0);k=x;x=0;if(k&1){a=Ia()|0;break}}else{f[a>>2]=104621;f[l>>2]=(f[l>>2]|0)+4}f[m>>2]=104621;x=0;a=ia(182,n|0,m|0)|0;k=x;x=0;if(k&1){a=Ia()|0;break}f[a>>2]=i;Rg(f[p>>2]|0,f[l>>2]|0);x=0;a=ia(84,134008,c|0)|0;c=x;x=0;if(!(c&1)?(x=0,ia(62,a|0,112641)|0,c=x,x=0,!(c&1)):0){g=f[l>>2]|0;e=f[p>>2]|0;while(1){if((e|0)==(g|0)){d=22;break}f[m>>2]=f[e>>2];x=0;a=ia(183,n|0,m|0)|0;l=x;x=0;if(l&1){d=28;break}d=f[a>>2]|0;if(d|0){x=0;a=ia(62,134008,123306)|0;l=x;x=0;if(l&1){d=28;break}l=(f[33502]|0)+-12|0;c=134008+(f[l>>2]|0)+4|0;f[c>>2]=f[c>>2]&-177|32;f[134008+(f[l>>2]|0)+12>>2]=15;x=0;a=ia(62,a|0,f[m>>2]|0)|0;l=x;x=0;if(l&1){d=37;break}x=0;a=ia(62,a|0,122322)|0;l=x;x=0;if(l&1){d=37;break}f[134008+(f[(f[33502]|0)+-12>>2]|0)+12>>2]=8;x=0;ia(77,a|0,d|0)|0;l=x;x=0;if(l&1){d=38;break}if(l9(f[m>>2]|0)|0){x=0;a=ia(183,132632,m|0)|0;l=x;x=0;if(l&1){d=39;break}a=d-(f[a>>2]|0)|0;if(a|0){l=(f[33502]|0)+-12|0;c=134008+(f[l>>2]|0)+4|0;f[c>>2]=f[c>>2]&-177|128;f[134008+(f[l>>2]|0)+12>>2]=8;l=134008+(f[l>>2]|0)+4|0;f[l>>2]=f[l>>2]|2048;x=0;ia(77,134008,a|0)|0;l=x;x=0;if(l&1){d=40;break}l=134008+(f[(f[33502]|0)+-12>>2]|0)+4|0;f[l>>2]=f[l>>2]&-2049}}x=0;ia(62,134008,112641)|0;l=x;x=0;if(l&1){d=28;break}}e=e+4|0}if((d|0)==22){zSa(p);u=o;return}else if((d|0)==28)a=Ia()|0;else if((d|0)==37)a=Ia()|0;else if((d|0)==38)a=Ia()|0;else if((d|0)==39)a=Ia()|0;else if((d|0)==40)a=Ia()|0;break}a=Ia()|0}else if((d|0)==16)a=Ia()|0;while(0);zSa(p);Ua(a|0)}function ci(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;if(!(zab(f[b>>2]|0)|0))Ca(113292,73170,517,73762);e=f[b+4>>2]|0;d=n$a(e)|0;do if(!d){c=l$a(e)|0;if(c|0){switch(f[c+8>>2]|0){case 1:case 0:{DCa(134008,73778)|0;break}case 3:case 2:{DCa(134008,73783)|0;break}case 5:case 4:{DCa(134008,73788)|0;break}default:hb()}Ema(134008,32)|0;ZE(a,eQa(b,0)|0);break}c=d$a(e)|0;if(!c)if(D6a(f[e>>2]|0)|0){DCa(134008,73864)|0;ZE(a,eQa(b,0)|0);DCa(134008,123496)|0;ZE(a,eQa(b,1)|0);DCa(134008,123496)|0;ZE(a,eQa(b,2)|0);break}else hb();do switch(f[c+8>>2]|0){case 25:case 0:{DCa(134008,93092)|0;break}case 26:case 1:{DCa(134008,117184)|0;break}case 27:case 2:{DCa(134008,73794)|0;break}case 28:case 3:{DCa(134008,73798)|0;break}case 29:case 4:{DCa(134008,73803)|0;break}case 30:case 5:{DCa(134008,73808)|0;break}case 31:case 6:{DCa(134008,73813)|0;break}case 32:case 7:{DCa(134008,93096)|0;break}case 33:case 8:{DCa(134008,93100)|0;break}case 34:case 9:{DCa(134008,93103)|0;break}case 35:case 10:{DCa(134008,73818)|0;break}case 36:case 11:{DCa(134008,73822)|0;break}case 37:case 12:{DCa(134008,73827)|0;break}case 38:case 13:{DCa(134008,73832)|0;break}case 39:case 14:{DCa(134008,73837)|0;break}case 40:case 15:{DCa(134008,73842)|0;break}case 41:case 16:{DCa(134008,73845)|0;break}case 42:case 17:{DCa(134008,73848)|0;break}case 43:case 18:{DCa(134008,73852)|0;break}case 44:case 19:{DCa(134008,73856)|0;break}case 45:case 20:{DCa(134008,73860)|0;break}default:hb()}while(0);Ema(134008,32)|0;ZE(a,eQa(b,0)|0);DCa(134008,123496)|0;ZE(a,eQa(b,1)|0)}else{e=d+8|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];nba(c)}while(0);u=g;return}function di(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;l=p+16|0;e=p+24|0;o=p+8|0;n=p;f[l>>2]=b;fda(e,a,l);l=f[e>>2]|0;f[l+8>>2]=b;c=Jbb(f[a+84>>2]|0)|0;d=l+12|0;f[d>>2]=c;x=0;c=ga(290,a|0)|0;m=x;x=0;a:do if(!(m&1)?(x=0,va(130,f[d>>2]|0,c|0,f[b+8>>2]|0),m=x,x=0,!(m&1)):0){h=b+16|0;m=a+100|0;b:do if(!(f[h>>2]|0)){c=f[e+4>>2]|0;d=c}else{f[o>>2]=l;g=o+4|0;d=f[e+4>>2]|0;f[g>>2]=d;k=d;if(d|0){j=d+4|0;f[j>>2]=(f[j>>2]|0)+1}i=a+104|0;c=f[i>>2]|0;j=a+108|0;do if(c>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1457,m|0,o|0);e=x;x=0;if(e&1){c=Ia()|0;Aoa(f[g>>2]|0);break a}else{c=f[g>>2]|0;break}}else{f[c>>2]=l;f[c+4>>2]=k;f[o>>2]=0;f[g>>2]=0;f[i>>2]=c+8;c=0}while(0);Aoa(c);x=0;va(131,n|0,a|0,h|0);h=x;x=0;c:do if(h&1)c=Ia()|0;else{c=f[n>>2]|0;f[o>>2]=c;e=o+4|0;h=n+4|0;g=f[h>>2]|0;f[e>>2]=g;f[n>>2]=0;f[h>>2]=0;h=f[i>>2]|0;do if(h>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1457,m|0,o|0);j=x;x=0;if(j&1){c=Ia()|0;Aoa(f[e>>2]|0);Aoa(0);break c}else{c=f[e>>2]|0;break}}else{f[h>>2]=c;f[h+4>>2]=g;f[o>>2]=0;f[e>>2]=0;f[i>>2]=h+8;c=0}while(0);Aoa(c);Aoa(0);c=k;break b}while(0);break a}while(0);f[o>>2]=l;e=o+4|0;f[e>>2]=d;if(d|0){k=d+4|0;f[k>>2]=(f[k>>2]|0)+1}i=a+104|0;g=f[i>>2]|0;j=a+108|0;do if(g>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1457,m|0,o|0);l=x;x=0;if(l&1){c=Ia()|0;Aoa(f[e>>2]|0);break a}else{c=f[e>>2]|0;break}}else{f[g>>2]=l;f[g+4>>2]=c;f[o>>2]=0;f[e>>2]=0;f[i>>2]=g+8;c=0}while(0);Aoa(c);x=0;va(131,n|0,a|0,b+12|0);b=x;x=0;d:do if(b&1)c=Ia()|0;else{e=f[n>>2]|0;f[o>>2]=e;g=o+4|0;c=n+4|0;h=f[c>>2]|0;f[g>>2]=h;f[n>>2]=0;f[c>>2]=0;c=f[i>>2]|0;do if(c>>>0>=(f[j>>2]|0)>>>0){x=0;ua(1457,m|0,o|0);o=x;x=0;if(o&1){c=Ia()|0;Aoa(f[g>>2]|0);Aoa(0);break d}else{c=f[g>>2]|0;break}}else{f[c>>2]=e;f[c+4>>2]=h;f[o>>2]=0;f[g>>2]=0;f[i>>2]=c+8;c=0}while(0);Aoa(c);Aoa(0);Aoa(d);u=p;return}while(0)}else q=17;while(0);if((q|0)==17){c=Ia()|0;d=f[e+4>>2]|0}Aoa(d);Ua(c|0)}function ei(){var a=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e+4|0;c=e;b[d>>0]=0;f[c>>2]=0;a=f[33197]|0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,123563,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(123563,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=1;if(a>>>0<(f[33198]|0)>>>0){FLa(a,116663,1,1);a=(f[33197]|0)+40|0;f[33197]=a}else{fB(d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,116671,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(116671,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,116677,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(116677,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,116681,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(116681,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,116691,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(116691,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,116701,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(116701,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,123294,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(123294,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,123372,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(123372,d,c);a=f[33197]|0}b[d>>0]=0;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,123419,0,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(123419,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=3;if(a>>>0<(f[33198]|0)>>>0){FLa(a,116707,1,3);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(116707,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,123340,1,0);a=(f[33197]|0)+40|0;f[33197]=a}else{PA(123340,d,c);a=f[33197]|0}b[d>>0]=1;f[c>>2]=0;if(a>>>0<(f[33198]|0)>>>0){FLa(a,123342,1,0);f[33197]=(f[33197]|0)+40}else PA(123342,d,c);kT();c=0;while(1){a=f[33196]|0;if(c>>>0>=(((f[33197]|0)-a|0)/40|0)>>>0)break;a=a+(c*40|0)+8|0;while(1){a=f[a>>2]|0;if(!a)break;f[d>>2]=f[a+8>>2];g=jm((f[33199]|0)+((f[(f[33196]|0)+(c*40|0)+36>>2]|0)*20|0)|0,d)|0;f[g>>2]=c}c=c+1|0}u=e;return}function fi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+64|0;p=o+48|0;m=o+24|0;i=o;n=o+12|0;a:do if(((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==90:0)?(g=a+2|0,(b[g>>0]|0)==84):0)?(k=d+4|0,j=((f[k>>2]|0)-(f[d>>2]|0)|0)/24|0,l=Ej(g,c,d)|0,e=((f[k>>2]|0)-(f[d>>2]|0)|0)/24|0,(l|0)!=(g|0)):0){f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;qW(p,123485,j7a(123485)|0);b:do if((j|0)==(e|0))h=26;else{x=0;ua(3195,m|0,(f[d>>2]|0)+(j*24|0)|0);g=x;x=0;do if(g&1)a=Ia()|0;else{g=b[m+11>>0]|0;c=g<<24>>24<0;x=0;ja(97,p|0,(c?f[m>>2]|0:m)|0,(c?f[m+4>>2]|0:g&255)|0)|0;g=x;x=0;if(g&1){a=Ia()|0;MTa(m);break}MTa(m);g=m+11|0;h=m+4|0;a=j;while(1){a=a+1|0;if((a|0)==(e|0)){h=26;break b}x=0;ua(3195,i|0,(f[d>>2]|0)+(a*24|0)|0);c=x;x=0;if(c&1){h=21;break}x=0;ja(101,i|0,0,123496)|0;c=x;x=0;if(c&1){h=22;break}f[m>>2]=f[i>>2];f[m+4>>2]=f[i+4>>2];f[m+8>>2]=f[i+8>>2];c=0;while(1){if((c|0)==3)break;f[i+(c<<2)>>2]=0;c=c+1|0}c=b[g>>0]|0;q=c<<24>>24<0;x=0;ja(97,p|0,(q?f[m>>2]|0:m)|0,(q?f[h>>2]|0:c&255)|0)|0;c=x;x=0;if(c&1){h=23;break}MTa(m);MTa(i)}if((h|0)==21)a=Ia()|0;else if((h|0)==22){a=Ia()|0;h=24}else if((h|0)==23){a=Ia()|0;MTa(m);h=24}if((h|0)==24)MTa(i);break b}while(0)}while(0);do if((h|0)==26){x=0;ia(216,p|0,123272)|0;q=x;x=0;if(q&1){a=Ia()|0;break}while(1){if((e|0)==(j|0))break;c=f[k>>2]|0;a=0;while(1){if((a|0)==-1)break;q=a+-1|0;OJa(c+(q*24|0)|0);a=q}f[k>>2]=c+-24;e=e+-1|0}f[n>>2]=f[p>>2];f[n+4>>2]=f[p+4>>2];f[n+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}RY(m,n);a=f[k>>2]|0;if(a>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,m|0);q=x;x=0;if(q&1){a=Ia()|0;OJa(m);MTa(n);break}}else{CY(a,m);f[k>>2]=(f[k>>2]|0)+24}OJa(m);MTa(n);MTa(p);a=l;break a}while(0);MTa(p);Ua(a|0)}while(0);u=o;return a|0}function gi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+112|0;h=k+16|0;d=k;e=b+16|0;g=f[e>>2]|0;i=f[g+4>>2]|0;g=QRa(g)|0;g=g+8|0;a:do if(o4a(i)|0){H8(h,0,i);do if(yda(g,h)|0){c=f[b+8>>2]|0;if(((((c|0)!=(dn(i,9)|0)?(c|0)!=(dn(i,10)|0):0)?(c|0)!=(dn(i,11)|0):0)?(c|0)!=(dn(i,13)|0):0)?(c|0)!=(dn(i,14)|0):0){if((c|0)!=(dn(i,3)|0)?(c|0)!=(dn(i,12)|0):0)break;c=fZa(f[a+40>>2]|0)|0;gA(h,c,f[b+12>>2]|0);c=qza(h)|0;_7(h);if(c)break;b=f[e>>2]|0;break a}b=f[b+12>>2]|0;break a}while(0);t$a(h,-1);if(!(yda(g,h)|0)?(XSa(d,-1,-1),!(yda(g,d)|0)):0)a=b+8|0;else{c=b+8|0;d=f[c>>2]|0;if((d|0)==(dn(i,12)|0)){b=f[b+12>>2]|0;break}if((d|0)==(dn(i,13)|0)?(a=fZa(f[a+40>>2]|0)|0,gA(h,a,f[b+12>>2]|0),a=qza(h)|0,_7(h),!a):0){b=f[e>>2]|0;break}else a=c}c=f[a>>2]|0;e=dn(i,1)|0;if((c|0)!=(e|0)?(c|0)!=(dn(i,2)|0):0){j=31;break}c=Jia(g)|0;d=I;b:do if((c|0)<8192){switch(c|0){case 0:break;case 64:if(!d)break b;else{j=31;break a}default:{j=31;break a}}if((d|0)<65536)switch(d|0){case 4:case 512:break b;default:{j=31;break a}}if((d|0)<8388608)switch(d|0){case 65536:break b;default:{j=31;break a}}if((d|0)<1073741824)switch(d|0){case 8388608:break b;default:{j=31;break a}}else switch(d|0){case 1073741824:break b;default:{j=31;break a}}}else{if((c|0)<1048576){switch(c|0){case 8192:break;default:{j=31;break a}}if(!d)break;else{j=31;break a}}if((c|0)<134217728){switch(c|0){case 1048576:break;default:{j=31;break a}}if(!d)break;else{j=31;break a}}else{switch(c|0){case 134217728:break;default:{j=31;break a}}if(!d)break;else{j=31;break a}}}while(0);qN(h,g);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];i=dn(i,(f[a>>2]|0)==(e|0)?2:1)|0;f[a>>2]=i}else j=31;while(0);do if((j|0)==31){H8(h,1,i);if(yda(g,h)|0){c=f[b+8>>2]|0;if(((c|0)!=(dn(i,3)|0)?(c|0)!=(dn(i,5)|0):0)?(c|0)!=(dn(i,4)|0):0){b=0;break}b=f[b+12>>2]|0}else b=0}while(0);u=k;return b|0}function hi(a,b){a=a|0;b=b|0;var c=0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{c=kE(a,b)|0;break}case 2:{c=eQ(a,b)|0;break}case 3:{c=iY(a,b)|0;break}case 4:{c=PP(a,b)|0;break}case 5:{c=gN(a,b)|0;break}case 6:{c=JA(a,b)|0;break}case 7:{c=zA(a,b)|0;break}case 8:{c=gy(a,b)|0;break}case 9:{c=Zya(a,f[b+4>>2]|0,f[b+8>>2]|0)|0;break}case 10:{c=tX(a,f[b+4>>2]|0,f[b+8>>2]|0,f[b+12>>2]|0)|0;break}case 11:{c=I3(a,b)|0;break}case 12:{c=fX(a,b)|0;break}case 13:{c=qF(a,b)|0;break}case 14:{c=hA(a,b)|0;break}case 24:{c=oP(a,b)|0;break}case 25:{c=qK(a,b)|0;break}case 26:{c=PM(a,b)|0;break}case 27:{c=lW(a,b)|0;break}case 15:{c=k1(a,b)|0;break}case 16:{c=_9(a,f[b+8>>2]|0,f[b+12>>2]|0)|0;break}case 17:{c=tW(a,b)|0;break}case 18:{c=jS(a,b)|0;break}case 19:{c=Wea(a,f[b+8>>2]|0)|0;break}case 20:{c=oha(a,f[b+8>>2]|0)|0;break}case 21:{c=Et(a,b)|0;break}case 22:{c=wMa(a)|0;break}case 23:{c=DHa(a)|0;break}default:hb()}while(0);return c|0}function ii(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+144|0;b=s+128|0;t=s+124|0;k=s+112|0;l=s+108|0;m=s+96|0;n=s+92|0;o=s+80|0;p=s+76|0;q=s+64|0;r=s+60|0;c=s+48|0;d=s+44|0;e=s+32|0;g=s+28|0;h=s+16|0;i=s+12|0;j=s;f[t>>2]=f[33174];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_Z(k,106144,j7a(106144)|0);x=0;f[b>>2]=f[t>>2];va(158,a|0,b|0,k|0);t=x;x=0;do if(!(t&1)){MTa(k);f[l>>2]=f[33173];f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;_Z(m,106149,j7a(106149)|0);x=0;f[b>>2]=f[l>>2];va(158,a|0,b|0,m|0);t=x;x=0;if(t&1){b=Ia()|0;MTa(m);break}MTa(m);f[n>>2]=f[33172];f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;_Z(o,106154,j7a(106154)|0);x=0;f[b>>2]=f[n>>2];va(158,a|0,b|0,o|0);t=x;x=0;if(t&1){b=Ia()|0;MTa(o);break}MTa(o);f[p>>2]=f[33171];f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;_Z(q,106159,j7a(106159)|0);x=0;f[b>>2]=f[p>>2];va(158,a|0,b|0,q|0);t=x;x=0;if(t&1){b=Ia()|0;MTa(q);break}MTa(q);f[r>>2]=f[33170];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,106144,j7a(106144)|0);x=0;f[b>>2]=f[r>>2];va(158,a|0,b|0,c|0);t=x;x=0;if(t&1){b=Ia()|0;MTa(c);break}MTa(c);f[d>>2]=f[33169];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,106149,j7a(106149)|0);x=0;f[b>>2]=f[d>>2];va(158,a|0,b|0,e|0);t=x;x=0;if(t&1){b=Ia()|0;MTa(e);break}MTa(e);f[g>>2]=f[33168];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,106154,j7a(106154)|0);x=0;f[b>>2]=f[g>>2];va(158,a|0,b|0,h|0);t=x;x=0;if(t&1){b=Ia()|0;MTa(h);break}MTa(h);f[i>>2]=f[33167];f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,106159,j7a(106159)|0);x=0;f[b>>2]=f[i>>2];va(158,a|0,b|0,j|0);t=x;x=0;if(t&1){b=Ia()|0;MTa(j);break}else{MTa(j);u=s;return}}else{b=Ia()|0;MTa(k)}while(0);Ua(b|0)}function ji(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=c+11|0;e=b[i>>0]|0;j=c+4|0;d=f[j>>2]|0;g=e&255;h=e<<24>>24<0?d:g;a:do if(!h)h0(a,c);else{do if((j7a(124094)|0)==(h|0)){x=0;d=ja(102,c|0,124094,h|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}if(!d){yta(c,124106);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124177,j7a(124177)|0);break a}else{e=b[i>>0]|0;h=e&255;d=f[j>>2]|0;break}}else h=g;while(0);g=j7a(124190)|0;do if((g|0)==((e<<24>>24<0?d:h)|0)){x=0;d=ja(102,c|0,124190,g|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}if(!d){yta(c,124203);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124253,j7a(124253)|0);break a}else{e=b[i>>0]|0;h=e&255;d=f[j>>2]|0;break}}while(0);g=j7a(124267)|0;do if((g|0)==((e<<24>>24<0?d:h)|0)){x=0;d=ja(102,c|0,124267,g|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}if(!d){yta(c,124280);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124330,j7a(124330)|0);break a}else{e=b[i>>0]|0;h=e&255;d=f[j>>2]|0;break}}while(0);g=j7a(124344)|0;do if((g|0)==((e<<24>>24<0?d:h)|0)){x=0;d=ja(102,c|0,124344,g|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}if(!d){yta(c,124358);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124409,j7a(124409)|0);break a}else{e=b[i>>0]|0;g=e&255;d=f[j>>2]|0;break}}else g=h;while(0);i=e<<24>>24<0;j=i?f[c>>2]|0:c;d=j+(i?d:g)|0;b:do if((b[d+-1>>0]|0)==62){h=1;c:while(1){d:while(1){i=d+-1|0;if((i|0)==(j|0))break c;g=d+-2|0;switch(b[g>>0]|0){case 60:{e=35;break d}case 62:{e=36;break d}default:d=i}}if((e|0)==35){d=h+-1|0;if(!d)break b}else if((e|0)==36)d=h+1|0;h=d;d=i}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break a;f[a+(d<<2)>>2]=0;d=d+1|0}}else g=d;while(0);d=g;while(1){e=d+-1|0;if((e|0)==(j|0)){d=j;break}if((b[e>>0]|0)==58)break;else d=e}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;UM(a,d,g)}while(0);return}function ki(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;n=v;r=v+4|0;f[n>>2]=c;s=c+16|0;j=f[s>>2]|0;o=c;if(!j)Ca(77051,76794,447,78058);a:do if(!(f[c+4>>2]|0)){p=a+44|0;q=c+12|0;l=f[q>>2]|0;m=(f[l+4>>2]|0)==5;k=f[j+4>>2]|0;g=(k|0)==5;if(!m){if(!g){i=e+4|0;h=f[e>>2]|0;while(1){if((h|0)==(i|0))break a;g=f[h+16>>2]|0;if(rfa(p,g)|0)break;g=f[h+4>>2]|0;if(!g)while(1){g=f[h+8>>2]|0;if((f[g>>2]|0)==(h|0))break;else h=g}else while(1){h=f[g>>2]|0;if(!h)break;else g=h}h=g}i=v$a(l)|0;if(m)h=i;else{h=i;t=23}}else{if(!(f[e+8>>2]|0))break;g=f[(f[e>>2]|0)+16>>2]|0;i=v$a(l)|0;h=i;t=23}do if((t|0)==23){if((i|0?Jbb(f[i+16>>2]|0)|0:0)?(m=RCa(i+12|0)|0,b7a(f[f[m>>2]>>2]|0)|0):0){k=f[s>>2]|0;j=k;k=f[k+4>>2]|0;break}g=a+160|0;h=f[g>>2]|0;if((h|0)==(f[a+164>>2]|0)){LL(a+156|0,n);break a}else{f[h>>2]=o;f[g>>2]=(f[g>>2]|0)+4;break a}}while(0);l=v$a(j)|0;if((k|0)==5){k=g;j=h;h=l;g=l}else{k=g;g=l;j=h;h=l;t=31}}else{if(g)Ca(78075,76794,471,78058);if(!(f[a+52>>2]|0))break;k=f[(f[p>>2]|0)+16>>2]|0;t=v$a(l)|0;h=v$a(j)|0;g=h;i=t;j=t;t=31}do if((t|0)==31){if((h|0?Jbb(f[h+16>>2]|0)|0:0)?(t=RCa(h+12|0)|0,b7a(f[f[t>>2]>>2]|0)|0):0)break;g=a+160|0;h=f[g>>2]|0;if((h|0)==(f[a+164>>2]|0)){LL(a+156|0,n);break a}else{f[h>>2]=o;f[g>>2]=(f[g>>2]|0)+4;break a}}while(0);if((f[(f[q>>2]|0)+4>>2]|0)!=5?(t=nT(e,k)|0,t=f[t>>2]|0,q=(nRa(f[t>>2]|0)|0)+12|0,q=f[q>>2]|0,e=ODa(i+12|0,(Jbb(f[i+16>>2]|0)|0)+-1|0)|0,f[e>>2]=q,uVa(f[t>>2]|0),tt(j),(f[i+4>>2]|0)==0):0)Ca(78109,76794,517,78058);if((f[(f[s>>2]|0)+4>>2]|0)!=5?(t=nT(p,k)|0,t=f[t>>2]|0,e=(nRa(f[t>>2]|0)|0)+12|0,e=f[e>>2]|0,s=ODa(h+12|0,(Jbb(f[h+16>>2]|0)|0)+-1|0)|0,f[s>>2]=e,uVa(f[t>>2]|0),tt(g),(f[h+4>>2]|0)==0):0)Ca(78135,76794,524,78058);NI(c);if(!(f[c+4>>2]|0))Ca(78162,76794,527,78058);else{t=f[a+36>>2]|0;Jbb(t)|0;_0a(r,t);t=Qya(r,k,c)|0;f[d>>2]=t;b[a+92>>0]=1;break}}while(0);u=v;return}function li(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f[d>>2]=a;z=p+8+3|0;G=p+4|0;A=o+8+3|0;B=o+4|0;C=(e&512|0)==0;D=(q|0)>0;E=n+11|0;F=n+4|0;y=0;while(1){if((y|0)==4)break;a:do switch(b[k+y>>0]|0){case 0:{f[c>>2]=f[d>>2];break}case 1:{f[c>>2]=f[d>>2];w=dc[f[(f[i>>2]|0)+44>>2]&255](i,32)|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w;break}case 3:{x=b[z>>0]|0;r=x<<24>>24<0;if((r?f[G>>2]|0:x&255)|0){w=f[(r?f[p>>2]|0:p)>>2]|0;x=f[d>>2]|0;f[d>>2]=x+4;f[x>>2]=w}break}case 2:{v=b[A>>0]|0;r=v<<24>>24<0;v=r?f[B>>2]|0:v&255;if(!(C|(v|0)==0)){u=r?f[o>>2]|0:o;s=u+(v<<2)|0;t=f[d>>2]|0;r=t;while(1){if((u|0)==(s|0))break;f[r>>2]=f[u>>2];r=r+4|0;u=u+4|0}f[d>>2]=t+(v<<2)}break}case 4:{s=f[d>>2]|0;g=j?g+4|0:g;r=g;while(1){if(r>>>0>=h>>>0)break;if(!(ec[f[(f[i>>2]|0)+12>>2]&127](i,2048,f[r>>2]|0)|0))break;r=r+4|0}if(D){u=q;while(1){t=(u|0)>0;if(!(r>>>0>g>>>0&t))break;x=r+-4|0;v=f[x>>2]|0;w=f[d>>2]|0;f[d>>2]=w+4;f[w>>2]=v;u=u+-1|0;r=x}if(t)w=dc[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;else w=0;v=f[d>>2]|0;while(1){t=v+4|0;if((u|0)<=0)break;f[v>>2]=w;u=u+-1|0;v=t}f[d>>2]=t;f[v>>2]=l;t=r}else t=r;if((t|0)==(g|0)){w=dc[f[(f[i>>2]|0)+44>>2]&255](i,48)|0;x=f[d>>2]|0;r=x+4|0;f[d>>2]=r;f[x>>2]=w}else{x=b[E>>0]|0;r=x<<24>>24<0;if(!((r?f[F>>2]|0:x&255)|0))r=-1;else r=b[(r?f[n>>2]|0:n)>>0]|0;u=0;v=0;x=t;while(1){if((x|0)==(g|0))break;t=f[d>>2]|0;if((v|0)==(r|0)){w=t+4|0;f[d>>2]=w;f[t>>2]=m;t=u+1|0;u=b[E>>0]|0;r=u<<24>>24<0;if(t>>>0<(r?f[F>>2]|0:u&255)>>>0){r=b[(r?f[n>>2]|0:n)+t>>0]|0;r=r<<24>>24==127?-1:r<<24>>24;u=t;v=0;t=w}else{r=v;u=t;v=0;t=w}}w=x+-4|0;H=f[w>>2]|0;f[d>>2]=t+4;f[t>>2]=H;v=v+1|0;x=w}r=f[d>>2]|0}if((s|0)!=(r|0))while(1){r=r+-4|0;if(s>>>0>=r>>>0)break a;H=f[s>>2]|0;f[s>>2]=f[r>>2];f[r>>2]=H;s=s+4|0}break}default:{}}while(0);y=y+1|0}r=b[z>>0]|0;g=r<<24>>24<0;r=g?f[G>>2]|0:r&255;if(r>>>0>1){s=f[p>>2]|0;v=g?s+4|0:G;r=(g?s:p)+(r<<2)|0;s=f[d>>2]|0;t=r;g=s;u=v;while(1){if((u|0)==(r|0))break;f[g>>2]=f[u>>2];g=g+4|0;u=u+4|0}f[d>>2]=s+((t-v|0)>>>2<<2)}switch((e&176)<<24>>24){case 32:{f[c>>2]=f[d>>2];break}case 16:break;default:f[c>>2]=a}return}function mi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;k=n+12|0;l=n;if((d+-30&255)>41)e=0;else{m=lTa(f[a+4>>2]|0)|0;do switch(d<<24>>24){case 30:{i=4;e=1;g=0;break}case 32:{i=1;e=1;g=0;break}case 33:{i=2;e=1;g=0;break}case 31:{i=8;e=2;g=0;break}case 34:{i=1;e=2;g=0;break}case 35:{i=2;e=2;g=0;break}case 36:{i=4;e=2;g=0;break}case 37:{i=4;e=1;g=1;break}case 39:{i=1;e=1;g=1;break}case 40:{i=2;e=1;g=1;break}case 38:{i=8;e=2;g=1;break}case 41:{i=1;e=2;g=1;break}case 42:{i=2;e=2;g=1;break}case 43:{i=4;e=2;g=1;break}case 44:{i=4;e=1;g=2;break}case 46:{i=1;e=1;g=2;break}case 47:{i=2;e=1;g=2;break}case 45:{i=8;e=2;g=2;break}case 48:{i=1;e=2;g=2;break}case 49:{i=2;e=2;g=2;break}case 50:{i=4;e=2;g=2;break}case 51:{i=4;e=1;g=3;break}case 53:{i=1;e=1;g=3;break}case 54:{i=2;e=1;g=3;break}case 52:{i=8;e=2;g=3;break}case 55:{i=1;e=2;g=3;break}case 56:{i=2;e=2;g=3;break}case 57:{i=4;e=2;g=3;break}case 58:{i=4;e=1;g=4;break}case 60:{i=1;e=1;g=4;break}case 61:{i=2;e=1;g=4;break}case 59:{i=8;e=2;g=4;break}case 62:{i=1;e=2;g=4;break}case 63:{i=2;e=2;g=4;break}case 64:{i=4;e=2;g=4;break}case 65:{i=4;e=1;g=5;break}case 67:{i=1;e=1;g=5;break}case 68:{i=2;e=1;g=5;break}case 66:{i=8;e=2;g=5;break}case 69:{i=1;e=2;g=5;break}case 70:{i=2;e=2;g=5;break}case 71:{i=4;e=2;g=5;break}default:hb()}while(0);f[m+8>>2]=g;f[m+4>>2]=e;d=m+12|0;b[d>>0]=i;do if(b[a+12>>0]|0){e=DCa(134176,110776)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[k>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,j=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,i=x,x=0,!(i&1)):0){OCa(k);Wq(e,j)|0;fu(e)|0;break}n=Ia()|0;OCa(k);Ua(n|0)}while(0);Sab(k);LF(a,k,m+16|0);k=Jbb(f[k>>2]|0)|0;do if((k|0)!=(h[d>>0]|0)){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,97073,j7a(97073)|0);x=0;ua(1870,a|0,l|0);k=x;x=0;if(k&1){n=Ia()|0;MTa(l);Ua(n|0)}else{MTa(l);break}}while(0);e=dk(a)|0;f[m+24>>2]=e;e=dk(a)|0;f[m+20>>2]=e;NMa(m);f[c>>2]=m;e=1}u=n;return e|0}function ni(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(c|0){case 0:{l=-149;m=24;k=4;break}case 1:{l=-1074;m=53;k=4;break}case 2:{l=-1074;m=53;k=4;break}default:e=0.0}a:do if((k|0)==4){o=a+4|0;n=a+100|0;do{c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0}while((w6a(c)|0)!=0);b:do switch(c|0){case 43:case 45:{i=1-(((c|0)==45&1)<<1)|0;c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;g=h[c>>0]|0;break b}else{g=eF(a)|0;break b}}default:{g=c;i=1}}while(0);c=0;while(1){if((g|32|0)!=(b[118711+c>>0]|0))break;do if(c>>>0<7){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0;break}else{g=eF(a)|0;break}}while(0);c=c+1|0;if(c>>>0>=8){c=8;break}}c:do switch(c&2147483647|0){case 8:break;case 3:{k=23;break}default:{j=(d|0)!=0;if(j&c>>>0>3)if((c|0)==8)break c;else{k=23;break c}d:do if(!c){c=0;do{if((g|32|0)!=(b[118773+c>>0]|0)){k=39;break d}do if(c>>>0<2){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0;break}else{g=eF(a)|0;break}}while(0);c=c+1|0}while(c>>>0<3)}else k=39;while(0);e:do if((k|0)==39){switch(c|0){case 3:break e;case 0:break;default:{if(f[n>>2]|0)f[o>>2]=(f[o>>2]|0)+-1;f[33448]=22;zna(a,0);e=0.0;break a}}if((g|0)==48){c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0;if((c|32|0)==120){e=+Nh(a,m,l,i,d);break a}if(!(f[n>>2]|0))c=48;else{f[o>>2]=(f[o>>2]|0)+-1;c=48}}else c=g;e=+Qe(a,c,m,l,i,d);break a}while(0);c=f[o>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[o>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0;if((c|0)!=40){if(!(f[n>>2]|0)){e=B;break a}f[o>>2]=(f[o>>2]|0)+-1;e=B;break a}c=1;while(1){g=f[o>>2]|0;if(g>>>0<(f[n>>2]|0)>>>0){f[o>>2]=g+1;g=h[g>>0]|0}else g=eF(a)|0;if(!((g+-48|0)>>>0<10|(g+-65|0)>>>0<26)?!((g|0)==95|(g+-97|0)>>>0<26):0)break;c=c+1|0}if((g|0)==41){e=B;break a}g=(f[n>>2]|0)==0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if(!j){f[33448]=22;zna(a,0);e=0.0;break a}if(!c){e=B;break a}while(1){c=c+-1|0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if(!c){e=B;break a}}}}while(0);if((k|0)==23){g=(f[n>>2]|0)==0;if(!g)f[o>>2]=(f[o>>2]|0)+-1;if((d|0)!=0&c>>>0>3)do{if(!g)f[o>>2]=(f[o>>2]|0)+-1;c=c+-1|0}while(c>>>0>3)}e=+(i|0)*C}while(0);return +e}function oi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+256|0;k=q+252|0;r=q+8|0;l=q;m=q+248|0;n=q+244|0;o=q+240|0;p=q+4|0;d=a+44|0;if(!(f[d>>2]|0)){XFa(k,Jbb(f[a+36>>2]|0)|0);j=f[k>>2]|0;f[k>>2]=0;c=f[d>>2]|0;f[d>>2]=j;if(c|0)Cbb(c);f[k>>2]=0}i=a+48|0;fZ(i);qM(a+88|0);qM(a+108|0);mO(a+68|0);Yt(r);x=0;j=ia(158,b|0,r|0)|0;h=x;x=0;a:do if(h&1)c=Ia()|0;else{f[b+12>>2]=f[b+8>>2];f[b+24>>2]=f[b+20>>2];kaa(b+44|0);I9(b+56|0);x=0;ta(501,j|0);h=x;x=0;do if(!(h&1)){c=0;d=0;while(1){f[l>>2]=d;if(d>>>0>=(kQa(j)|0)>>>0){d=30;break}if(!(dua(j,d)|0)){d=12;break}x=0;d=ia(185,j|0,d|0)|0;h=x;x=0;if(h&1){d=21;break}f[m>>2]=d;x=0;f[k>>2]=f[m>>2];e=ga(319,k|0)|0;h=x;x=0;if(h&1){d=22;break}x=0;g=ia(80,j|0,f[l>>2]|0)|0;h=x;x=0;if(h&1){d=23;break}h=BZa(j)|0;h=(f[l>>2]|0)>>>0>>0?42:43;if((g|0)==2){f[n>>2]=d;x=0;f[k>>2]=f[n>>2];ja(h|0,b|0,k|0,1)|0;g=x;x=0;if(g&1){d=24;break}f[o>>2]=e;x=0;f[k>>2]=f[o>>2];ja(h|0,b|0,k|0,1)|0;h=x;x=0;if(h&1){d=24;break}x=0;d=ia(105,i|0,l|0)|0;h=x;x=0;if(h&1){d=24;break}f[d>>2]=c;c=c+2|0}else{f[p>>2]=d;x=0;f[k>>2]=f[p>>2];ja(h|0,b|0,k|0,g|0)|0;h=x;x=0;if(h&1){d=24;break}x=0;d=ia(105,i|0,l|0)|0;h=x;x=0;if(h&1){d=24;break}f[d>>2]=c;c=c+1|0}d=(f[l>>2]|0)+1|0}if((d|0)==12){x=0;wa(71,106678,106511,156,115765);x=0;c=Ia()|0}else if((d|0)==21)c=Ia()|0;else if((d|0)==22)c=Ia()|0;else if((d|0)==23)c=Ia()|0;else if((d|0)==24)c=Ia()|0;else if((d|0)==30){p=kQa(b)|0;f[a+148>>2]=p;x=0;ua(2460,a+16|0,b|0);b=x;x=0;if(b&1)break;ey(r);u=q;return}break a}while(0);c=Ia()|0}while(0);ey(r);Ua(c|0)}function pi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+240|0;k=s+32|0;t=s+144|0;r=s+52|0;q=s+48|0;m=s+16|0;n=s;d=a+40|0;h=f[d>>2]|0;Jbb(h)|0;a:do if((f[h+24>>2]|0)>=2?(f[h+28>>2]|0)<=0:0){l=b+8|0;if(((f[l>>2]|0)+-7|0)>>>0>=2)Ca(103629,103516,1003,103677);i=f[b+16>>2]|0;e=i;if((!(O6a(f[i>>2]|0)|0)?(j=f[b+12>>2]|0,g=j,o9(g)|0):0)?o9(i)|0:0){gA(t,fZa(h)|0,g);b=fZa(f[d>>2]|0)|0;x=0;va(101,r|0,b|0,i|0);b=x;x=0;b:do if(b&1)c=Ia()|0;else{d=qza(t)|0;h=qza(r)|0;c:do if(d&h)c=0;else{do if(h){x=0;ua(2162,k|0,g|0);b=x;x=0;if(b&1){c=Ia()|0;break}if((f[k>>2]|0)>>>0<7){c=0;break c}if(xj(t,r)|0){c=0;break c}else{g=i;e=j;p=26}}else{if(d){x=0;ua(2162,k|0,i|0);j=x;x=0;if(!(j&1))if((f[k>>2]|0)>>>0<7){c=0;break c}else{p=26;break}else{c=Ia()|0;break}}x=0;ua(2162,k|0,g|0);b=x;x=0;if(b&1){c=Ia()|0;break}g=f[k>>2]|0;x=0;ua(2162,k|0,i|0);i=x;x=0;if(i&1){c=Ia()|0;break}d=f[k>>2]|0;if((g>>>0>>0?d:g)>>>0<7){c=0;break c}p=g>>>0>d>>>0;g=p?e:j;e=p?j:e;p=26}while(0);do if((p|0)==26){p=f[a+36>>2]|0;Jbb(p)|0;_0a(q,p);if((f[l>>2]|0)==8){t$a(m,1);x=0;f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];f[k+12>>2]=f[m+12>>2];d=ia(50,q|0,k|0)|0;p=x;x=0;if(!(p&1)?(x=0,c=ka(8,q|0,g|0,d|0,e|0)|0,q=x,x=0,!(q&1)):0)p=32;else p=29}else{t$a(n,0);x=0;f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];f[k+12>>2]=f[n+12>>2];c=ia(50,q|0,k|0)|0;p=x;x=0;if(!(p&1)?(x=0,o=ka(8,q|0,g|0,e|0,c|0)|0,q=x,x=0,!(q&1)):0){c=o;p=32}else p=29}if((p|0)==29){c=Ia()|0;break}else if((p|0)==32)break c}while(0);_7(r);break b}while(0);_7(r);_7(t);break a}while(0);_7(t);Ua(c|0)}else c=0}else c=0;while(0);u=s;return c|0}function qi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;p=o;a:do if(b[c+24>>0]|0){if(!(b[c+25>>0]|0)){k=a+4|0;Nwa(f[a>>2]|0,f[k>>2]|0)|0;hz(a,c);Ema(f[a>>2]|0,10)|0}else k=a+4|0;l=f[c+16>>2]|0;m=p+4|0;n=p+8|0;h=f[c+12>>2]|0;b:while(1){if((h|0)==(l|0))break a;eRa(p,h);x=0;ia(115,f[a>>2]|0,f[k>>2]|0)|0;j=x;x=0;if(j&1){d=15;break}x=0;ia(71,f[a>>2]|0,40)|0;j=x;x=0;if(j&1){d=15;break}x=0;ia(130,f[a>>2]|0,80878)|0;j=x;x=0;if(j&1){d=15;break}x=0;ua(639,a|0,f[p>>2]|0);j=x;x=0;if(j&1){d=15;break}x=0;ia(62,f[a>>2]|0,80884)|0;j=x;x=0;if(j&1){d=15;break}e=f[n>>2]|0;g=f[m>>2]|0;d=0;while(1){if(d>>>0>=(e-g|0)>>>0)break;c=b[g+d>>0]|0;i=c&255;c:do switch(c<<24>>24){case 10:{x=0;ia(62,f[a>>2]|0,80891)|0;j=x;x=0;if(j&1){d=17;break b}break}case 13:{x=0;ia(62,f[a>>2]|0,80894)|0;j=x;x=0;if(j&1){d=17;break b}break}case 9:{x=0;ia(62,f[a>>2]|0,80898)|0;j=x;x=0;if(j&1){d=17;break b}break}case 12:{x=0;ia(62,f[a>>2]|0,80901)|0;j=x;x=0;if(j&1){d=17;break b}break}case 8:{x=0;ia(62,f[a>>2]|0,80905)|0;j=x;x=0;if(j&1){d=17;break b}break}case 92:{x=0;ia(62,f[a>>2]|0,80909)|0;j=x;x=0;if(j&1){d=17;break b}break}case 34:{x=0;ia(62,f[a>>2]|0,80912)|0;j=x;x=0;if(j&1){d=17;break b}break}case 39:{x=0;ia(62,f[a>>2]|0,80915)|0;j=x;x=0;if(j&1){d=17;break b}break}default:{j=f[a>>2]|0;if((c+-32&255)<95){x=0;ia(131,j|0,c|0)|0;j=x;x=0;if(j&1){d=17;break b}else break c}c=j+(f[(f[j>>2]|0)+-12>>2]|0)+4|0;f[c>>2]=f[c>>2]&-75|8;x=0;c=ia(71,j|0,92)|0;q=x;x=0;if(q&1){d=17;break b}x=0;c=ia(77,c|0,i>>>4|0)|0;q=x;x=0;if(q&1){d=17;break b}x=0;ia(77,c|0,i&15|0)|0;q=x;x=0;if(q&1){d=17;break b}q=j+(f[(f[j>>2]|0)+-12>>2]|0)+4|0;f[q>>2]=f[q>>2]&-75|2}}while(0);d=d+1|0}x=0;ia(62,f[a>>2]|0,80887)|0;q=x;x=0;if(q&1){d=15;break}P_a(p);h=h+16|0}if((d|0)==15)c=Ia()|0;else if((d|0)==17)c=Ia()|0;P_a(p);Ua(c|0)}while(0);u=o;return}function ri(a,c,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,u=0,v=0,w=0,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;f[e>>2]=a;y=q+11|0;G=q+4|0;z=p+11|0;A=p+4|0;B=(g&512|0)==0;C=j+8|0;D=(r|0)>0;E=o+11|0;F=o+4|0;x=0;while(1){if((x|0)==4)break;a:do switch(b[l+x>>0]|0){case 0:{f[c>>2]=f[e>>2];break}case 1:{f[c>>2]=f[e>>2];v=dc[f[(f[j>>2]|0)+28>>2]&255](j,32)|0;w=f[e>>2]|0;f[e>>2]=w+1;b[w>>0]=v;break}case 3:{w=b[y>>0]|0;s=w<<24>>24<0;if((s?f[G>>2]|0:w&255)|0){v=b[(s?f[q>>2]|0:q)>>0]|0;w=f[e>>2]|0;f[e>>2]=w+1;b[w>>0]=v}break}case 2:{w=b[z>>0]|0;s=w<<24>>24<0;w=s?f[A>>2]|0:w&255;if(!(B|(w|0)==0)){t=s?f[p>>2]|0:p;u=t+w|0;v=f[e>>2]|0;s=v;while(1){if((t|0)==(u|0))break;b[s>>0]=b[t>>0]|0;s=s+1|0;t=t+1|0}f[e>>2]=v+w}break}case 4:{t=f[e>>2]|0;h=k?h+1|0:h;u=h;while(1){if(u>>>0>=i>>>0)break;s=b[u>>0]|0;if(s<<24>>24<=-1)break;if(!(d[(f[C>>2]|0)+(s<<24>>24<<1)>>1]&2048))break;u=u+1|0}if(D){v=r;while(1){s=(v|0)>0;if(!(u>>>0>h>>>0&s))break;w=u+-1|0;H=b[w>>0]|0;s=f[e>>2]|0;f[e>>2]=s+1;b[s>>0]=H;v=v+-1|0;u=w}if(s)w=dc[f[(f[j>>2]|0)+28>>2]&255](j,48)|0;else w=0;s=v;while(1){v=f[e>>2]|0;f[e>>2]=v+1;if((s|0)<=0)break;b[v>>0]=w;s=s+-1|0}b[v>>0]=m}b:do if((u|0)==(h|0)){w=dc[f[(f[j>>2]|0)+28>>2]&255](j,48)|0;H=f[e>>2]|0;f[e>>2]=H+1;b[H>>0]=w}else{H=b[E>>0]|0;s=H<<24>>24<0;if(!((s?f[F>>2]|0:H&255)|0))s=-1;else s=b[(s?f[o>>2]|0:o)>>0]|0;v=0;w=0;while(1){if((u|0)==(h|0))break b;if((w|0)==(s|0)){H=f[e>>2]|0;f[e>>2]=H+1;b[H>>0]=n;v=v+1|0;H=b[E>>0]|0;s=H<<24>>24<0;if(v>>>0<(s?f[F>>2]|0:H&255)>>>0){s=b[(s?f[o>>2]|0:o)+v>>0]|0;s=s<<24>>24==127?-1:s<<24>>24;w=0}else{s=w;w=0}}H=u+-1|0;J=b[H>>0]|0;I=f[e>>2]|0;f[e>>2]=I+1;b[I>>0]=J;w=w+1|0;u=H}}while(0);s=f[e>>2]|0;if((t|0)!=(s|0))while(1){s=s+-1|0;if(t>>>0>=s>>>0)break a;J=b[t>>0]|0;b[t>>0]=b[s>>0]|0;b[s>>0]=J;t=t+1|0}break}default:{}}while(0);x=x+1|0}s=b[y>>0]|0;h=s<<24>>24<0;s=h?f[G>>2]|0:s&255;if(s>>>0>1){h=h?f[q>>2]|0:q;u=h+s|0;v=f[e>>2]|0;t=s+-1|0;s=v;while(1){h=h+1|0;if((h|0)==(u|0))break;b[s>>0]=b[h>>0]|0;s=s+1|0}f[e>>2]=v+t}switch((g&176)<<24>>24){case 32:{f[c>>2]=f[e>>2];break}case 16:break;default:f[c>>2]=a}return}function si(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=u;u=u+80|0;j=g+48|0;k=g+60|0;l=g+36|0;m=g+24|0;n=g+12|0;o=g;h=uUa(f[a+4>>2]|0)|0;f[h+8>>2]=c;a=ZQa(a,Or(b,1)|0)|0;i=h+12|0;f[i>>2]=a;jv(h);switch(c|0){case 5:case 3:case 1:case 19:case 17:case 15:case 13:case 11:case 9:case 7:case 21:case 4:case 2:case 0:case 18:case 16:case 14:case 12:case 10:case 8:case 6:case 20:{e=2;break}case 42:case 40:case 38:case 36:case 46:case 41:case 39:case 37:case 35:case 45:case 34:case 32:case 30:case 28:case 26:case 33:case 31:case 29:case 27:case 25:case 44:case 43:case 24:case 51:case 50:case 49:case 48:case 47:case 23:case 22:break;default:hb()}if((e|0)==2?(e=f[(f[i>>2]|0)+4>>2]|0,!((e|0)==5|(e|0)==(d|0))):0){e=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;g=j7a(93435)|0;x=0;va(87,o|0,93435,g|0);g=x;x=0;if(g&1){c=Ia()|0;a=1}else{x=0;a=ga(300,f[h>>2]|0)|0;h=x;x=0;if(!(h&1)?(x=0,ia(59,o|0,a|0)|0,h=x,x=0,!(h&1)):0){f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,n|0,122322)|0;h=x;x=0;if(h&1){c=Ia()|0;a=1}else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;a=ga(228,d|0)|0;d=x;x=0;if(!(d&1)?(x=0,ia(59,m|0,a|0)|0,d=x,x=0,!(d&1)):0){f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,l|0,93449)|0;d=x;x=0;if(d&1){c=Ia()|0;a=1}else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;a=ga(228,f[(f[i>>2]|0)+4>>2]|0)|0;i=x;x=0;if(!(i&1)?(x=0,ia(59,k|0,a|0)|0,i=x,x=0,!(i&1)):0){f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;wa(138,e|0,j|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}c=Ia()|0;MTa(j)}else{c=Ia()|0;a=1}MTa(k)}MTa(l)}else{c=Ia()|0;a=1}MTa(m)}MTa(n)}else{c=Ia()|0;a=1}MTa(o)}if(a)La(e|0);Ua(c|0)}u=g;return h|0}function ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=u;u=u+96|0;y=C+48|0;F=C+80|0;D=C+64|0;n=C+32|0;s=C+16|0;z=C;oD(F,a,1);x=0;va(159,D|0,a|0,1);A=x;x=0;if(A&1)c=Ia()|0;else{A=a+44|0;e=f[A>>2]|0;x=0;g=ga(320,D|0)|0;G=x;x=0;a:do if((((!(G&1)?(h=f[A>>2]|0,x=0,i=ga(320,c|0)|0,G=x,x=0,!(G&1)):0)?(x=0,j=ja(46,f[h>>2]|0,i|0,1)|0,G=x,x=0,!(G&1)):0)?(x=0,k=ja(53,f[h>>2]|0,0,j|0)|0,G=x,x=0,!(G&1)):0)?(x=0,B=ja(45,e|0,g|0,k|0)|0,G=x,x=0,!(G&1)):0){c=f[A>>2]|0;x=0;e=ga(320,D|0)|0;G=x;x=0;if(((!(G&1)?(x=0,l=ja(46,f[c>>2]|0,e|0,1)|0,G=x,x=0,!(G&1)):0)?(m=f[A>>2]|0,t$a(n,32),x=0,f[y>>2]=f[n>>2],f[y+4>>2]=f[n+4>>2],f[y+8>>2]=f[n+8>>2],f[y+12>>2]=f[n+12>>2],m=ia(50,m|0,y|0)|0,G=x,x=0,!(G&1)):0)?(x=0,v=ka(7,f[c>>2]|0,15,l|0,m|0)|0,G=x,x=0,!(G&1)):0){e=f[A>>2]|0;x=0;c=ga(320,d|0)|0;G=x;x=0;do if(((((!(G&1)?(x=0,o=ja(46,f[e>>2]|0,c|0,1)|0,G=x,x=0,!(G&1)):0)?(x=0,p=ja(53,f[e>>2]|0,0,o|0)|0,G=x,x=0,!(G&1)):0)?(q=f[A>>2]|0,t$a(s,32),x=0,f[y>>2]=f[s>>2],f[y+4>>2]=f[s+4>>2],f[y+8>>2]=f[s+8>>2],f[y+12>>2]=f[s+12>>2],q=ia(50,q|0,y|0)|0,G=x,x=0,!(G&1)):0)?(x=0,w=ka(7,f[e>>2]|0,0,p|0,q|0)|0,G=x,x=0,!(G&1)):0)?(r=f[A>>2]|0,x=0,t=ga(320,D|0)|0,G=x,x=0,!(G&1)):0){x=0;c=ja(46,f[r>>2]|0,t|0,1)|0;G=x;x=0;if(G&1)break;x=0;h=ka(8,e|0,v|0,w|0,c|0)|0;G=x;x=0;if(G&1)break;e=f[A>>2]|0;x=0;g=ga(320,F|0)|0;G=x;x=0;do if(!(G&1)){c=f[A>>2]|0;t$a(z,0);x=0;f[y>>2]=f[z>>2];f[y+4>>2]=f[z+4>>2];f[y+8>>2]=f[z+8>>2];f[y+12>>2]=f[z+12>>2];c=ia(50,c|0,y|0)|0;G=x;x=0;if(G&1)break;x=0;c=ja(45,e|0,g|0,c|0)|0;G=x;x=0;if(G&1)break;x=0;va(161,a|0,b|0,F|0);G=x;x=0;if(G&1)break;x=0;c=ma(26,f[A>>2]|0,b|0,B|0,c|0,h|0)|0;G=x;x=0;if(G&1)break;GVa(f[a+16>>2]|0,c)|0;MCa(D);MCa(F);u=C;return}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break}c=Ia()|0}else E=26;while(0);if((E|0)==26)c=Ia()|0;MCa(D)}MCa(F);Ua(c|0)}function ui(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;i=f[a>>2]|0;do if(i){j=f[i+12>>2]|0;if((j|0)==(f[i+16>>2]|0))i=bc[f[(f[i>>2]|0)+36>>2]&511](i)|0;else i=d7a(b[j>>0]|0)|0;if(g2a(i,-1)|0){f[a>>2]=0;j=1;break}else{j=(f[a>>2]|0)==0;break}}else j=1;while(0);if(c){i=f[c+12>>2]|0;if((i|0)==(f[c+16>>2]|0))i=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else i=d7a(b[i>>0]|0)|0;if(!(g2a(i,-1)|0))if(j){l=c;p=16}else p=15;else p=13}else p=13;if((p|0)==13)if(j)p=15;else{l=0;p=16}a:do if((p|0)==15){f[e>>2]=f[e>>2]|6;i=0}else if((p|0)==16){i=f[a>>2]|0;j=f[i+12>>2]|0;if((j|0)==(f[i+16>>2]|0))i=bc[f[(f[i>>2]|0)+36>>2]&511](i)|0;else i=d7a(b[j>>0]|0)|0;j=i&255;if(j<<24>>24>-1?(o=g+8|0,d[(f[o>>2]|0)+(i<<24>>24<<1)>>1]&2048):0){i=(ec[f[(f[g>>2]|0)+36>>2]&127](g,j,0)|0)<<24>>24;j=f[a>>2]|0;c=j+12|0;k=f[c>>2]|0;if((k|0)==(f[j+16>>2]|0))bc[f[(f[j>>2]|0)+40>>2]&511](j)|0;else f[c>>2]=k+1;m=l;while(1){i=i+-48|0;n=h+-1|0;j=f[a>>2]|0;do if(j){c=f[j+12>>2]|0;if((c|0)==(f[j+16>>2]|0))j=bc[f[(f[j>>2]|0)+36>>2]&511](j)|0;else j=d7a(b[c>>0]|0)|0;if(g2a(j,-1)|0){f[a>>2]=0;k=1;break}else{k=(f[a>>2]|0)==0;break}}else k=1;while(0);if(!m){j=1;m=0}else{j=f[m+12>>2]|0;if((j|0)==(f[m+16>>2]|0))j=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0;else j=d7a(b[j>>0]|0)|0;c=g2a(j,-1)|0;j=c;l=c?0:l;m=c?0:m}c=f[a>>2]|0;if(!((h|0)>1&(k^j)))break;j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=d7a(b[j>>0]|0)|0;c=j&255;if(c<<24>>24<=-1)break a;if(!(d[(f[o>>2]|0)+(j<<24>>24<<1)>>1]&2048))break a;i=(i*10|0)+((ec[f[(f[g>>2]|0)+36>>2]&127](g,c,0)|0)<<24>>24)|0;j=f[a>>2]|0;c=j+12|0;k=f[c>>2]|0;if((k|0)==(f[j+16>>2]|0))bc[f[(f[j>>2]|0)+40>>2]&511](j)|0;else f[c>>2]=k+1;h=n}do if(c){j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=d7a(b[j>>0]|0)|0;if(g2a(j,-1)|0){f[a>>2]=0;c=1;break}else{c=(f[a>>2]|0)==0;break}}else c=1;while(0);if(l){j=f[l+12>>2]|0;if((j|0)==(f[l+16>>2]|0))j=bc[f[(f[l>>2]|0)+36>>2]&511](l)|0;else j=d7a(b[j>>0]|0)|0;if(!(g2a(j,-1)|0)){if(c)break}else p=60}else p=60;if((p|0)==60?!c:0)break;f[e>>2]=f[e>>2]|2;break}f[e>>2]=f[e>>2]|4;i=0}while(0);return i|0}function vi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;g=n+64|0;l=n+40|0;k=n+12|0;m=n+24|0;j=n;a:do if((c-a|0)>2?(b[a>>0]|0)==102:0){b:do switch(b[a+1>>0]|0){case 112:{e=UZ(a+2|0,c,g)|0;g=TX(e,c)|0;c:do if((g|0)!=(c|0)?(b[g>>0]|0)==95:0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;UM(m,e,g);x=0;ja(101,m|0,0,124463)|0;j=x;x=0;do if(j&1)a=Ia()|0;else{f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}RY(l,k);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(l);MTa(k);break}}else{CY(e,l);f[a>>2]=(f[a>>2]|0)+24}OJa(l);MTa(k);MTa(m);a=g+1|0;break c}while(0);MTa(m);break b}while(0);break a}case 76:{e=TX(a+2|0,c)|0;d:do if((((e|0)!=(c|0)?(b[e>>0]|0)==112:0)?(h=UZ(e+1|0,c,g)|0,i=TX(h,c)|0,(i|0)!=(c|0)):0)?(b[i>>0]|0)==95:0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;UM(m,h,i);x=0;ja(101,m|0,0,124463)|0;k=x;x=0;do if(k&1)a=Ia()|0;else{f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}RY(l,j);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(l);MTa(j);break}}else{CY(e,l);f[a>>2]=(f[a>>2]|0)+24}OJa(l);MTa(j);MTa(m);a=i+1|0;break d}while(0);MTa(m);break b}while(0);break a}default:break a}while(0);Ua(a|0)}while(0);u=n;return a|0}function wi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+64|0;q=p+52|0;k=p+48|0;e=p+24|0;l=p+12|0;o=p;r=p+36|0;h=a+36|0;n=Jbb(f[h>>2]|0)|0;c=b+24|0;f[k>>2]=f[c>>2];f[q>>2]=f[k>>2];n=Xma(n,q)|0;if(!n){k=DCa(134176,62367)|0;Ema(Bfa(k,f[c>>2]|0)|0,10)|0;hb()}c=f[n+4>>2]|0;d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;k=b+8|0;i=b+12|0;c=Jbb(f[i>>2]|0)|0;j=n+8|0;g=n+12|0;b=(f[g>>2]|0)-(f[j>>2]|0)>>2;a:do if(c>>>0>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,62389,j7a(62389)|0);x=0;va(95,a|0,e|0,n|0);b=x;x=0;if(b&1){c=Ia()|0;MTa(e);break}MTa(e);while(1){c=Jbb(f[i>>2]|0)|0;d=f[j>>2]|0;b=(f[g>>2]|0)-d>>2;if(c>>>0>=b>>>0){m=11;break a}m=f[d+(c<<2)>>2]|0;faa(k,KSa(m,Jbb(f[h>>2]|0)|0)|0)}}else m=11;while(0);b:do if((m|0)==11){do if(c>>>0>b>>>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,62423,j7a(62423)|0);x=0;va(95,a|0,l|0,n|0);m=x;x=0;if(m&1){c=Ia()|0;MTa(l);break b}else{MTa(l);i7(k,(f[g>>2]|0)-(f[j>>2]|0)>>2);break}}while(0);d=0;while(1){if(d>>>0>=(Jbb(f[i>>2]|0)|0)>>>0){m=17;break}m=ODa(k,d)|0;m=f[(f[m>>2]|0)+4>>2]|0;if(!((m|0)==5?1:(m|0)==(f[(f[j>>2]|0)+(d<<2)>>2]|0))){EY(r,d);x=0;ia(83,r|0,62459)|0;m=x;x=0;if(m&1){m=29;break}f[q>>2]=f[r>>2];f[q+4>>2]=f[r+4>>2];f[q+8>>2]=f[r+8>>2];c=0;while(1){if((c|0)==3)break;f[r+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,q|0,62517)|0;m=x;x=0;if(m&1){m=30;break}f[o>>2]=f[q>>2];f[o+4>>2]=f[q+4>>2];f[o+8>>2]=f[q+8>>2];c=0;while(1){if((c|0)==3)break;f[q+(c<<2)>>2]=0;c=c+1|0}x=0;va(95,a|0,o|0,n|0);m=x;x=0;if(m&1){m=31;break}MTa(o);MTa(q);MTa(r)}d=d+1|0}if((m|0)==17){u=p;return}else if((m|0)==29)c=Ia()|0;else if((m|0)==30){c=Ia()|0;m=32}else if((m|0)==31){c=Ia()|0;MTa(o);m=32}if((m|0)==32)MTa(q);MTa(r)}while(0);Ua(c|0)}function xi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;s=u;u=u+32|0;v=s+12|0;t=s;a:do if(!(qVa(a)|0)){e=b+8|0;if(!(Qab(f[e>>2]|0)|0)){Lk(a,f[b+12>>2]|0)|0;break}r=a+140|0;eR(v,r);p=a+116|0;q=kQa(f[p>>2]|0)|0;d=0;while(1){if(d>>>0>=q>>>0){d=6;break}x=0;c=ia(80,f[p>>2]|0,d|0)|0;o=x;x=0;if(o&1){d=10;break}x=0;c=ia(119,a|0,c|0)|0;o=x;x=0;if(o&1){d=10;break}f[(f[r>>2]|0)+(d<<2)>>2]=c;d=d+1|0}if((d|0)==6){x=0;ua(679,t|0,r|0);o=x;x=0;if(o&1)c=Ia()|0;else{m=a+124|0;n=a+128|0;o=(f[n>>2]|0)-(f[m>>2]|0)>>2;x=0;ia(118,a|0,f[b+12>>2]|0)|0;l=x;x=0;do if(!(l&1)){x=0;j=ia(120,a+152|0,e|0)|0;l=x;x=0;if(l&1){c=Ia()|0;break}k=j+4|0;l=a+144|0;i=0;b:while(1){if(i>>>0>=q>>>0){d=15;break}x=0;c=ia(80,f[p>>2]|0,i|0)|0;h=x;x=0;if(h&1){d=21;break}c:do if(u_a(c)|0){g=f[(f[t>>2]|0)+(i<<2)>>2]|0;h=f[(f[v>>2]|0)+(i<<2)>>2]|0;e=f[k>>2]|0;b=f[j>>2]|0;while(1){if((b|0)==(e|0))break;c=f[b>>2]|0;if(g2a(c,f[b+4>>2]|0)|0){d=26;break b}c=f[c+(i<<2)>>2]|0;x=0;d=ia(121,c|0,g|0)|0;w=x;x=0;if(w&1){d=31;break b}if(d){x=0;c=ia(121,c|0,h|0)|0;w=x;x=0;if(w&1){d=31;break b}if(c)break c}b=b+12|0}b=o;while(1){c=f[m>>2]|0;if(b>>>0>=(f[n>>2]|0)-c>>2>>>0)break;c=f[c+(b<<2)>>2]|0;d=f[c+16>>2]|0;c=f[c+12>>2]|0;while(1){if((c|0)==(d|0))break;if((f[c>>2]|0)==(g|0))f[c>>2]=h;c=c+4|0}b=b+1|0}d=f[l>>2]|0;c=f[r>>2]|0;while(1){if((c|0)==(d|0))break c;if((f[c>>2]|0)==(g|0))f[c>>2]=h;c=c+4|0}}while(0);i=i+1|0}if((d|0)==15){zSa(t);zSa(v);break a}else if((d|0)==21){c=Ia()|0;break}else if((d|0)==26){x=0;wa(71,76282,76196,331,76306);x=0;c=Ia()|0;break}else if((d|0)==31){c=Ia()|0;break}}else c=Ia()|0;while(0);zSa(t)}}else if((d|0)==10)c=Ia()|0;zSa(v);Ua(c|0)}while(0);u=s;return a|0}function yi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;i=u;u=u+64|0;e=i+40|0;d=i+36|0;j=i+24|0;k=i+12|0;l=i;a:do if(qRa(c)|0){L1a(d,lF(c)|0);f[e>>2]=f[d>>2];d=Gq(a+112|0,e)|0}else{x=0;d=ga(296,c|0)|0;h=x;x=0;do if(!(h&1)?(f[e>>2]=0,f[e+4>>2]=0,f[e+8>>2]=0,h=j7a(d)|0,x=0,va(87,e|0,d|0,h|0),h=x,x=0,!(h&1)):0){x=0;g=ga(301,e|0)|0;h=I;d=x;x=0;if(d&1){d=Ka(39472,39504)|0;n=I;MTa(e);e=n;n=9;break}MTa(e);e=f[a+112>>2]|0;d=(f[a+116>>2]|0)-e>>2;if(!(h>>>0>0|(h|0)==0&g>>>0>d>>>0)){if((g|0)==(d|0)&(h|0)==0){b[a+108>>0]=1;d=132340}else d=e+(d+~g<<2)|0;d=f[d>>2]|0;break a}g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;m=j7a(92747)|0;x=0;va(87,l|0,92747,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,g|0,l|0,f[c+28>>2]|0,f[c+32>>2]|0);m=x;x=0;if(m&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(l);if(!e){m=d;break}}else d=Ia()|0;La(g|0);m=d}else n=7;while(0);if((n|0)==7){d=Ka(39472,39504)|0;e=I;n=9}do if((n|0)==9){if((e|0)==(Db(39472)|0)){Fa(d|0)|0;g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;l=j7a(92700)|0;x=0;va(87,k|0,92700,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,g|0,k|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(k);if(e)n=23}else{d=Ia()|0;n=23}if((n|0)==23)La(g|0);x=0;sa(6);n=x;x=0;if(!(n&1)){m=d;break}}else{if((e|0)!=(Db(39504)|0)){m=d;break}Fa(d|0)|0;g=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;l=j7a(92721)|0;x=0;va(87,j|0,92721,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,g|0,j|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(j);if(e)n=19}else{d=Ia()|0;n=19}if((n|0)==19)La(g|0);x=0;sa(6);n=x;x=0;if(!(n&1)){m=d;break}}n=Ja(0)|0;y2a(n)}while(0);Ua(m|0)}while(0);u=i;return d|0}function zi(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+80|0;w=x+72|0;q=x+68|0;r=x+64|0;s=x+60|0;t=x+56|0;k=x+52|0;v=x+48|0;l=x+44|0;m=x+40|0;n=x+36|0;o=x+32|0;p=x+28|0;g=x+24|0;h=x;i=x+20|0;j=x+16|0;a:do switch(f[d+4>>2]|0){case 1:{switch(b[d+8>>0]|0){case 1:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+36>>2]|0;f[r>>2]=f[e>>2];f[w>>2]=f[r>>2];t$a(a,(dc[d&255](c,w)|0)&255);break a}else{d=f[g+32>>2]|0;f[q>>2]=f[e>>2];f[w>>2]=f[q>>2];t$a(a,(dc[d&255](c,w)|0)<<24>>24);break a}}case 2:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+44>>2]|0;f[t>>2]=f[e>>2];f[w>>2]=f[t>>2];t$a(a,(dc[d&255](c,w)|0)&65535);break a}else{d=f[g+40>>2]|0;f[s>>2]=f[e>>2];f[w>>2]=f[s>>2];t$a(a,(dc[d&255](c,w)|0)<<16>>16);break a}}case 4:{d=f[(f[c>>2]|0)+48>>2]|0;f[k>>2]=f[e>>2];f[w>>2]=f[k>>2];t$a(a,dc[d&255](c,w)|0);break a}default:hb()}break}case 2:{switch(b[d+8>>0]|0){case 1:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+36>>2]|0;f[l>>2]=f[e>>2];f[w>>2]=f[l>>2];XSa(a,(dc[d&255](c,w)|0)&255,0);break a}else{d=f[g+32>>2]|0;f[v>>2]=f[e>>2];f[w>>2]=f[v>>2];e=(dc[d&255](c,w)|0)<<24>>24;XSa(a,e,((e|0)<0)<<31>>31);break a}}case 2:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+44>>2]|0;f[n>>2]=f[e>>2];f[w>>2]=f[n>>2];XSa(a,(dc[d&255](c,w)|0)&65535,0);break a}else{d=f[g+40>>2]|0;f[m>>2]=f[e>>2];f[w>>2]=f[m>>2];e=(dc[d&255](c,w)|0)<<16>>16;XSa(a,e,((e|0)<0)<<31>>31);break a}}case 4:{g=f[c>>2]|0;if(!(b[d+9>>0]|0)){d=f[g+52>>2]|0;f[p>>2]=f[e>>2];f[w>>2]=f[p>>2];XSa(a,dc[d&255](c,w)|0,0);break a}else{d=f[g+48>>2]|0;f[o>>2]=f[e>>2];f[w>>2]=f[o>>2];e=dc[d&255](c,w)|0;XSa(a,e,((e|0)<0)<<31>>31);break a}}case 8:{d=f[(f[c>>2]|0)+56>>2]|0;f[g>>2]=f[e>>2];f[w>>2]=f[g>>2];XSa(a,dc[d&255](c,w)|0,I);break a}default:hb()}break}case 3:{d=f[(f[c>>2]|0)+52>>2]|0;f[i>>2]=f[e>>2];f[w>>2]=f[i>>2];t$a(h,dc[d&255](c,w)|0);QHa(a,h);break}case 4:{d=f[(f[c>>2]|0)+60>>2]|0;f[j>>2]=f[e>>2];f[w>>2]=f[j>>2];XSa(h,dc[d&255](c,w)|0,I);e=h+8|0;uGa(a,f[h>>2]|0,f[e>>2]|0,f[e+4>>2]|0);break}default:hb()}while(0);u=x;return}function Ai(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;r=u;u=u+256|0;q=r+216|0;j=r+112|0;v=r+232|0;p=r+224|0;t=r+220|0;l=r+250|0;n=r+240|0;o=r;f[v>>2]=j;f[v+4>>2]=513;dYa(t,g);a=f[t>>2]|0;x=0;k=ia(73,a|0,134880)|0;m=x;x=0;if(m&1){a=Ia()|0;k=v}else{b[l>>0]=0;x=0;a=ra(1,c|0,f[d>>2]|0,e|0,a|0,f[g+4>>2]|0,h|0,l|0,k|0,v|0,p|0,j+100|0)|0;m=x;x=0;a:do if(m&1)s=9;else{b:do if(a){x=0;ka(f[(f[k>>2]|0)+32>>2]|0,k|0,121043,121053,n|0)|0;m=x;x=0;if(m&1)a=Ia()|0;else{k=f[p>>2]|0;g=f[v>>2]|0;a=k-g|0;if((a|0)>98){a=Kc(a+2|0)|0;j=a;if(!a){x=0;sa(10);x=0}else s=14}else{a=o;j=0;s=14}do if((s|0)==14){if(b[l>>0]|0){b[a>>0]=45;a=a+1|0}l=n+10|0;m=n;while(1){if(g>>>0>=k>>>0)break;e=b[g>>0]|0;k=n;while(1){if((k|0)==(l|0)){k=l;break}if((b[k>>0]|0)==e<<24>>24)break;k=k+1|0}b[a>>0]=b[121043+(k-m)>>0]|0;g=g+1|0;a=a+1|0;k=f[p>>2]|0}b[a>>0]=0;f[q>>2]=i;if((ZKa(o,121054,q)|0)!=1){x=0;ta(514,121058);x=0;break}if(j|0)rg(j);break b}while(0);a=Ia()|0;if(j|0)rg(j)}break a}while(0);a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=d7a(b[j>>0]|0)|0;if(g2a(a,-1)|0){f[c>>2]=0;k=1;break}else{k=(f[c>>2]|0)==0;break}}else k=1;while(0);a=f[d>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=d7a(b[j>>0]|0)|0;if(!(g2a(a,-1)|0))if(k)break;else{s=44;break}else{f[d>>2]=0;s=42;break}}else s=42;while(0);if((s|0)==42?k:0)s=44;if((s|0)==44)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;OCa(t);a=f[v>>2]|0;f[v>>2]=0;if(a|0?(x=0,ta(f[v+4>>2]|0,a|0),v=x,x=0,v&1):0){v=Ja(0)|0;y2a(v)}u=r;return j|0}while(0);if((s|0)==9)a=Ia()|0;k=v;j=f[v>>2]|0}OCa(t);f[k>>2]=0;if(j|0?(x=0,ta(f[v+4>>2]|0,j|0),v=x,x=0,v&1):0){v=Ja(0)|0;y2a(v)}Ua(a|0);return 0}function Bi(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+48|0;m=p+40|0;n=p+28|0;k=p+24|0;o=p+12|0;q=p;l=a+12|0;do if(b[l>>0]|0){e=DCa(134176,97863)|0;dYa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[m>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,j=x,x=0,!(j&1)):0){OCa(m);Wq(e,d)|0;fu(e)|0;break}q=Ia()|0;OCa(m);Ua(q|0)}while(0);j=nq(a)|0;do if(b[l>>0]|0){c=zm(DCa(134176,97878)|0,j)|0;dYa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[m>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(m);Wq(c,g)|0;fu(c)|0;break}q=Ia()|0;OCa(m);Ua(q|0)}while(0);i=0;while(1){if(i>>>0>=j>>>0){d=13;break}if(b[l>>0]|0){d=DCa(134176,97884)|0;dYa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[m>>2]|0,134880)|0;h=x;x=0;if(h&1){d=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){d=17;break}OCa(m);Wq(d,c)|0;fu(d)|0}d=oF(a)|0;e=nq(a)|0;if(e>>>0>1){f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;_Z(n,97893,j7a(97893)|0);x=0;ua(1870,a|0,n|0);h=x;x=0;if(h&1){d=22;break}MTa(n)}g=nD(a)|0;h=f[a>>2]|0;DY(q,(f[h+52>>2]|0)-(f[h+48>>2]|0)>>2);x=0;ia(83,q|0,97926)|0;c=x;x=0;if(c&1){d=31;break}f[o>>2]=f[q>>2];f[o+4>>2]=f[q+4>>2];f[o+8>>2]=f[q+8>>2];c=0;while(1){if((c|0)==3)break;f[q+(c<<2)>>2]=0;c=c+1|0}x=0;ua(83,k|0,o|0);c=x;x=0;if(c&1){d=32;break}x=0;f[m>>2]=f[k>>2];c=ka(6,m|0,d|0,g|0,(e|0)==0|0)|0;g=x;x=0;if(g&1){d=32;break}x=0;ua(71,h|0,c|0);h=x;x=0;if(h&1){d=32;break}MTa(o);MTa(q);i=i+1|0}if((d|0)==13){u=p;return}else if((d|0)==17){q=Ia()|0;OCa(m);Ua(q|0)}else if((d|0)==22){c=Ia()|0;MTa(n)}else if((d|0)==31){c=Ia()|0;d=33}else if((d|0)==32){c=Ia()|0;MTa(o);d=33}if((d|0)==33)MTa(q);Ua(c|0)}function Ci(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;r=u;u=u+592|0;q=r+560|0;j=r+160|0;v=r+576|0;p=r+568|0;t=r+564|0;l=r+584|0;n=r+112|0;o=r;f[v>>2]=j;f[v+4>>2]=513;dYa(t,g);a=f[t>>2]|0;x=0;k=ia(73,a|0,134912)|0;m=x;x=0;if(m&1){a=Ia()|0;k=v}else{b[l>>0]=0;x=0;a=ra(2,c|0,f[d>>2]|0,e|0,a|0,f[g+4>>2]|0,h|0,l|0,k|0,v|0,p|0,j+400|0)|0;m=x;x=0;a:do if(m&1)s=9;else{b:do if(a){x=0;ka(f[(f[k>>2]|0)+48>>2]|0,k|0,121169,121179,n|0)|0;m=x;x=0;if(m&1)a=Ia()|0;else{k=f[p>>2]|0;g=f[v>>2]|0;a=k-g|0;if((a|0)>392){a=Kc((a>>>2)+2|0)|0;j=a;if(!a){x=0;sa(10);x=0}else s=14}else{a=o;j=0;s=14}do if((s|0)==14){if(b[l>>0]|0){b[a>>0]=45;a=a+1|0}l=n+40|0;m=n;while(1){if(g>>>0>=k>>>0)break;e=f[g>>2]|0;k=n;while(1){if((k|0)==(l|0)){k=l;break}if((f[k>>2]|0)==(e|0))break;k=k+4|0}b[a>>0]=b[121169+(k-m>>2)>>0]|0;g=g+4|0;a=a+1|0;k=f[p>>2]|0}b[a>>0]=0;f[q>>2]=i;if((ZKa(o,121054,q)|0)!=1){x=0;ta(514,121058);x=0;break}if(j|0)rg(j);break b}while(0);a=Ia()|0;if(j|0)rg(j)}break a}while(0);a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=Jbb(f[j>>2]|0)|0;if($5a(a)|0){f[c>>2]=0;k=1;break}else{k=(f[c>>2]|0)==0;break}}else k=1;while(0);a=f[d>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){s=9;break a}}else a=Jbb(f[j>>2]|0)|0;if(!($5a(a)|0))if(k)break;else{s=44;break}else{f[d>>2]=0;s=42;break}}else s=42;while(0);if((s|0)==42?k:0)s=44;if((s|0)==44)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;OCa(t);a=f[v>>2]|0;f[v>>2]=0;if(a|0?(x=0,ta(f[v+4>>2]|0,a|0),v=x,x=0,v&1):0){v=Ja(0)|0;y2a(v)}u=r;return j|0}while(0);if((s|0)==9)a=Ia()|0;k=v;j=f[v>>2]|0}OCa(t);f[k>>2]=0;if(j|0?(x=0,ta(f[v+4>>2]|0,j|0),v=x,x=0,v&1):0){v=Ja(0)|0;y2a(v)}Ua(a|0);return 0}function Di(a,b){a=a|0;b=b|0;var c=0;c=b+12|0;_oa(a,f[(f[c>>2]|0)+4>>2]|0,b);c=f[(f[c>>2]|0)+4>>2]|0;a:do if((c|0)!=5)do switch(f[b+8>>2]|0){case 4:case 2:case 0:{fja(a,c,1,b,82912);break a}case 5:case 3:case 1:{fja(a,c,2,b,82949);break a}case 18:case 16:case 14:case 12:case 10:case 8:case 6:{fja(a,c,3,b,82986);break a}case 19:case 17:case 15:case 13:case 11:case 9:case 7:{fja(a,c,4,b,83023);break a}case 20:{$qa(a,(c|0)==1,b,83060);break a}case 21:{$qa(a,(c|0)==2,b,83086);break a}case 48:case 47:case 23:case 22:{fja(a,c,1,b,83112);break a}case 51:case 50:case 49:{fja(a,c,2,b,83112);break a}case 24:{fja(a,c,2,b,83140);break a}case 25:{fja(a,c,3,b,83166);break a}case 26:{fja(a,c,3,b,83166);break a}case 27:{fja(a,c,3,b,83166);break a}case 28:{fja(a,c,3,b,83166);break a}case 29:{fja(a,c,4,b,83166);break a}case 30:{fja(a,c,4,b,83166);break a}case 31:{fja(a,c,4,b,83166);break a}case 32:{fja(a,c,4,b,83166);break a}case 33:{fja(a,c,3,b,83193);break a}case 34:{fja(a,c,4,b,83230);break a}case 37:{fja(a,c,1,b,83267);break a}case 38:{fja(a,c,1,b,83267);break a}case 35:{fja(a,c,1,b,83267);break a}case 36:{fja(a,c,1,b,83267);break a}case 41:{fja(a,c,2,b,83267);break a}case 42:{fja(a,c,2,b,83267);break a}case 39:{fja(a,c,2,b,83267);break a}case 40:{fja(a,c,2,b,83267);break a}case 43:{fja(a,c,3,b,83296);break a}case 44:{fja(a,c,4,b,83325);break a}case 45:{fja(a,c,1,b,83353);break a}case 46:{fja(a,c,2,b,83390);break a}default:hb()}while(0);while(0);return}function Ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+64|0;q=p+40|0;o=p+28|0;l=p+16|0;m=p+4|0;n=p;k=a+132|0;d=f[k>>2]|0;a:do switch(d|0){case 0:break;case 1:{f[q>>2]=0;d=b+4|0;c=f[d>>2]|0;if(c>>>0<(f[b+8>>2]|0)>>>0){f[c>>2]=0;f[d>>2]=c+4}else LL(b,q);break}default:{c=a+32|0;if((IZa(Jbb(f[c>>2]|0)|0)|0)>>>0<2){q1(q,d);Yaa(b,q);zSa(q);break a}PS(q,a+168|0);i=BZa(Jbb(f[c>>2]|0)|0)|0;d=f[q>>2]|0;c=0;while(1){if((c|0)==(i|0))break;f[d+(c<<2)>>2]=-1;c=c+1|0}x=0;ua(3130,o|0,f[k>>2]|0);j=x;x=0;if(j&1)c=Ia()|0;else{x=0;va(174,l|0,o|0,q|0);j=x;x=0;if(j&1)c=Ia()|0;else{Yaa(o,l);zSa(l);x=0;wa(154,a|0,o|0,b|0,l|0);j=x;x=0;do if(j&1)c=Ia()|0;else{d=f[b>>2]|0;h=f[b+4>>2]|0;b:do if((d|0)==(h|0))c=d;else{c=d;g=d;e=d;while(1){d=g+4|0;if((d|0)==(h|0))break b;j=(f[e>>2]|0)>>>0<(f[d>>2]|0)>>>0;c=j?d:c;g=d;e=j?d:e}}while(0);j=f[c>>2]|0;x=0;ta(510,o|0);h=x;x=0;if(h&1){c=Ia()|0;break}e=i+-1|0;g=f[o>>2]|0;c=i;while(1){d=f[k>>2]|0;if(c>>>0>=d>>>0)break;f[g+(c<<2)>>2]=e-c+d;c=c+1|0}x=0;va(174,m|0,o|0,q|0);k=x;x=0;if(k&1){c=Ia()|0;break}Yaa(o,m);zSa(m);f[m>>2]=0;c=m+4|0;f[c>>2]=0;f[m+8>>2]=0;x=0;wa(154,a|0,o|0,m|0,n|0);a=x;x=0;if(a&1){c=Ia()|0;zSa(m);break}d=f[m>>2]|0;h=f[c>>2]|0;c:do if((d|0)==(h|0))c=d;else{c=d;g=d;e=d;while(1){d=g+4|0;if((d|0)==(h|0))break c;a=(f[e>>2]|0)>>>0<(f[d>>2]|0)>>>0;c=a?d:c;g=d;e=a?d:e}}while(0);a=f[n>>2]|0;n=f[l>>2]|0;if(!(a>>>0<=n>>>0?!((a|0)==(n|0)?(f[c>>2]|0)>>>0>>0:0):0))d9(b,m);zSa(m);zSa(o);zSa(q);break a}while(0)}zSa(o)}zSa(q);Ua(c|0)}}while(0);u=p;return}function Fi(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+32|0;s=v+20|0;t=v+12|0;c=v+16|0;w=v;b=f[b>>2]|0;if(Qab(b)|0){j=f[f[a>>2]>>2]|0;f[c>>2]=b;f[s>>2]=f[c>>2];j=MI(j,s)|0;f[t>>2]=j;YA(w,j);q=a+4|0;b=f[q>>2]|0;r=j;c=Mr(b,w)|0;do if(!c){p=f[a+8>>2]|0;f[s>>2]=r;o=JH(s,4)|0;k=p+4|0;l=f[k>>2]|0;m=(l|0)==0;a:do if(!m){h=l+-1|0;i=(h&l|0)==0;if(!i)if(o>>>0>>0)c=o;else c=(o>>>0)%(l>>>0)|0;else c=h&o;a=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!a)a=18;else while(1){a=f[a>>2]|0;if(!a){a=18;break a}g=f[a+4>>2]|0;if((g|0)!=(o|0)){if(!i){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&h;if((g|0)!=(c|0)){a=18;break a}}if((f[a+8>>2]|0)==(j|0)){a=37;break}}}else{c=0;a=18}while(0);b:do if((a|0)==18){x=0;wa(135,s|0,p|0,o|0,t|0);j=x;x=0;if(j&1)a=39;else{h=p+12|0;d=+(((f[h>>2]|0)+1|0)>>>0);e=+n[p+16>>2];do if(m|e*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(1627,p|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){b=Ia()|0;c=f[s>>2]|0;f[s>>2]=0;if(c|0)Cbb(c);break b}b=f[k>>2]|0;c=b+-1|0;if(!(c&b)){g=b;c=c&o;break}if(o>>>0>>0){g=b;c=o}else{g=b;c=(o>>>0)%(b>>>0)|0}}else g=l;while(0);b=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!b){b=p+8|0;a=f[s>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;f[(f[p>>2]|0)+(c<<2)>>2]=b;b=f[a>>2]|0;if(!b)b=s;else{b=f[b+4>>2]|0;c=g+-1|0;if(c&g){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&c;f[(f[p>>2]|0)+(b<<2)>>2]=a;b=s}}else{p=f[s>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p;b=s}f[h>>2]=(f[h>>2]|0)+1;f[b>>2]=0;b=f[q>>2]|0;a=37}}while(0);if((a|0)==37){x=0;b=ia(156,b|0,w|0)|0;s=x;x=0;if(s&1)a=39;else{f[b>>2]=r;b=t;break}}if((a|0)==39)b=Ia()|0;MTa(w);Ua(b|0)}else b=c+20|0;while(0);b=f[f[b>>2]>>2]|0;MTa(w)}u=v;return b|0}function Gi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=f[c>>2]|0;if(d)if(f[c+4>>2]|0){e=gca(c)|0;d=f[e>>2]|0;if(!d){g=e;i=4}else{g=e;i=6}}else{g=c;e=c;i=6}else{g=c;e=c;i=4}if((i|0)==4){d=f[e+4>>2]|0;if(!d){l=e+8|0;m=0;k=e;d=0}else i=6}if((i|0)==6){l=e+8|0;f[d+8>>2]=f[l>>2];m=1;k=e}e=f[l>>2]|0;h=f[e>>2]|0;if((h|0)==(k|0)){f[e>>2]=d;if((k|0)==(a|0)){a=d;h=0}else h=f[e+4>>2]|0}else f[e+4>>2]=d;i=k+12|0;j=(b[i>>0]|0)!=0;if((k|0)!=(c|0)){s=c+8|0;e=f[s>>2]|0;f[l>>2]=e;f[((f[f[s>>2]>>2]|0)==(c|0)?e:e+4|0)>>2]=k;e=f[c>>2]|0;f[g>>2]=e;f[e+8>>2]=k;e=f[c+4>>2]|0;f[k+4>>2]=e;if(e|0)f[e+8>>2]=k;b[i>>0]=b[c+12>>0]|0;a=(a|0)==(c|0)?k:a}a:do if(j&(a|0)!=0){if(m){b[d+12>>0]=1;break}while(1){d=f[h+8>>2]|0;e=h+12|0;g=(b[e>>0]|0)!=0;if((f[d>>2]|0)==(h|0)){if(g)e=h;else{b[e>>0]=1;b[d+12>>0]=0;Y6(d);s=f[h+4>>2]|0;e=f[s>>2]|0;a=(a|0)==(s|0)?h:a}g=f[e>>2]|0;h=(g|0)==0;if(!h?(r=g+12|0,(b[r>>0]|0)==0):0){d=r;i=46;break}d=f[e+4>>2]|0;if(d|0?(n=d+12|0,(b[n>>0]|0)==0):0){i=43;break}b[e+12>>0]=0;d=f[e+8>>2]|0;e=d+12|0;if((d|0)==(a|0)|(b[e>>0]|0)==0){i=42;break}}else{if(g)e=h;else{b[e>>0]=1;b[d+12>>0]=0;X7(d);s=f[h>>2]|0;e=f[s+4>>2]|0;a=(a|0)==(s|0)?h:a}g=f[e>>2]|0;if(g|0?(p=g+12|0,(b[p>>0]|0)==0):0){i=30;break}d=f[e+4>>2]|0;if(d|0?(q=d+12|0,(b[q>>0]|0)==0):0){d=q;i=34;break}b[e+12>>0]=0;e=f[e+8>>2]|0;if((e|0)==(a|0)){i=27;break}d=e+12|0;if(!(b[d>>0]|0)){i=29;break}else d=e}h=f[d+8>>2]|0;h=f[((f[h>>2]|0)==(d|0)?h+4|0:h)>>2]|0}do if((i|0)==27){d=a+12|0;i=29}else if((i|0)==30){d=f[e+4>>2]|0;if(!d)d=p;else{d=d+12|0;if(!(b[d>>0]|0)){i=34;break}d=g+12|0}b[d>>0]=1;b[e+12>>0]=0;Y6(e);d=f[e+8>>2]|0;e=d;d=(f[d+4>>2]|0)+12|0;i=34}else if((i|0)==42){b[e>>0]=1;break a}else if((i|0)==43){if(!h?(o=g+12|0,(b[o>>0]|0)==0):0){d=o;i=46;break}b[n>>0]=1;b[e+12>>0]=0;X7(e);d=f[e+8>>2]|0;e=d;d=(f[d>>2]|0)+12|0;i=46}while(0);if((i|0)==29){b[d>>0]=1;break}else if((i|0)==34){s=f[e+8>>2]|0;r=s+12|0;b[e+12>>0]=b[r>>0]|0;b[r>>0]=1;b[d>>0]=1;X7(s);break}else if((i|0)==46){s=f[e+8>>2]|0;r=s+12|0;b[e+12>>0]=b[r>>0]|0;b[r>>0]=1;b[d>>0]=1;Y6(s);break}}while(0);return}function Hi(a){a=+a;var c=0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,D=0,E=0;E=u;u=u+80|0;x=E+64|0;w=E+56|0;z=E+48|0;y=E+40|0;v=E+32|0;t=E+24|0;C=E+16|0;r=E+8|0;s=E;D=vRa(a)|0;e=I;q=e&2147483647;do if(!(q>>>0>2146435072|(q|0)==2146435072&D>>>0>0)){if(0==0&(e&2146435072|0)==2146435072){c=(e|0)<0?75314:118711;break}D=a<0.0;a=D?-a:a;o=a%1.0==0.0;p[C>>3]=B;p[r>>3]=B;q=!(a>=0.0);n=0;a:while(1){if(n>>>0>=2){A=7;break}l=(n|0)!=0;m=l?126161:125153;b:do if(o){if(q){A=15;break a}if(iOa(a)|0){j=Y9(a)|0;k=y;f[k>>2]=j;f[k+4>>2]=I;QFa(m,999,75387,y)|0;f[z>>2]=s;ZKa(m,75324,z)|0;break}else{p[w>>3]=a;QFa(m,999,l?75392:75395,w)|0;f[x>>2]=s;ZKa(m,75324,x)|0;break}}else{k=l?101:102;e=0;while(1){if(e>>>0>=19)break b;b[135323]=37;b[135324]=46;if(e>>>0<10){g=135327;h=135326;i=135325;j=48}else{b[135325]=49;g=135328;h=135327;i=135326;j=38}b[i>>0]=e+j;b[h>>0]=k;b[g>>0]=0;p[t>>3]=a;QFa(m,999,135323,t)|0;f[v>>2]=s;ZKa(m,75324,v)|0;if(+p[s>>3]==a)break;else e=e+1|0}}while(0);d=+K(+(+p[s>>3]-a));p[(l?r:C)>>3]=d;g=FWa(m,46)|0;c:do if(!g){if(!(o&l)){h=m+(dV(m)|0)+-1|0;g=m;i=h;while(1){if((b[i>>0]|0)==48){if(i>>>0<=m>>>0){A=37;break}}else{e=i;if(!(i>>>0>m>>>0&(e-g|0)>24))break}i=i+-1|0}if((A|0)==37){A=0;e=i}e=h-e|0;if((e|0)>2){b[i+1>>0]=101;if((e|0)<10){b[i+2>>0]=e+48;b[i+3>>0]=0;break}if((e|0)<100){b[i+2>>0]=((e>>>0)/10|0)+48;b[i+3>>0]=(e>>>0)%10|0|48;b[i+4>>0]=0;break}if((e|0)>=1e3){A=45;break a}m=(e>>>0)/100|0;b[i+2>>0]=m+48;m=(((e+(X(m,-100)|0)|0)>>>0)/10|0|48)&255;b[i+3>>0]=m;b[i+4>>0]=(e>>>0)%10|0|48;b[i+5>>0]=0}}}else{while(1){e=g+1|0;if(((b[e>>0]|0)+-48&255)<10)g=e;else break}while(1){if((b[g>>0]|0)!=48)break;e=g;do{k=e;e=e+1|0;l=b[e>>0]|0;b[k>>0]=l}while(l<<24>>24!=0);g=g+-1|0}while(1){if((b[m>>0]|0)!=48)break c;e=m;do{k=e;e=e+1|0;l=b[e>>0]|0;b[k>>0]=l}while(l<<24>>24!=0)}}while(0);n=n+1|0}if((A|0)==7){d=+p[r>>3];a=+p[C>>3];if(d==a){c=dV(126161)|0;c=c>>>0<(dV(125153)|0)>>>0;c=c?126161:125153}else c=d>0]=45}break}else if((A|0)==15)Ca(75328,75335,894,75375);else if((A|0)==45)Ca(75400,75335,957,75375)}else c=(e|0)<0?75309:118773;while(0);u=E;return c|0}function Ii(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;j=u;u=u+16|0;d=j;e=n$a(a)|0;a:do if(!e){g=d$a(a)|0;b:do if(!g){d=l$a(a)|0;if(d|0)switch(f[d+8>>2]|0){case 4:case 2:case 0:{i=6;break a}case 5:case 3:case 1:{i=7;break a}case 21:case 20:{i=1;break a}case 24:{i=Ii(f[d+12>>2]|0,c)|0;i=i>>>0<32?i:32;break a}default:break b}d=L_a(a)|0;if(d|0){i=Ii(f[d+12>>2]|0,c)|0;break a}d=U_a(a)|0;if(d|0){i=ZWa(f[c+44>>2]|0,f[d+8>>2]|0)|0;break a}d=w$a(a)|0;if((d|0?fra(d)|0:0)?(b[d+9>>0]|0)==0:0){i=h[d+8>>0]<<3;break a}}else switch(f[g+8>>2]|0){case 14:case 13:case 6:case 5:case 4:case 3:case 2:case 1:case 0:{i=32;break a}case 7:{i=Ii(f[g+12>>2]|0,c)|0;c=Ii(f[g+16>>2]|0,c)|0;i=c>>>0>>0?c:i;break a}case 9:case 8:{i=Ii(f[g+12>>2]|0,c)|0;c=Ii(f[g+16>>2]|0,c)|0;i=i>>>0>>0?c:i;break a}case 10:{d=n$a(f[g+16>>2]|0)|0;if(!d){i=32;break a}i=(Ii(f[g+12>>2]|0,c)|0)+(V4(d)|0)|0;i=i>>>0<32?i:32;break a}case 11:{d=n$a(f[g+16>>2]|0)|0;if(!d){i=32;break a}c=Ii(f[g+12>>2]|0,c)|0;i=V4(d)|0;i=c-(c>>>0>>0?c:i)|0;break a}case 12:{e=n$a(f[g+16>>2]|0)|0;if(!e){i=32;break a}d=Ii(f[g+12>>2]|0,c)|0;if((d|0)==32){i=32;break a}i=V4(e)|0;i=d-(d>>>0>>0?d:i)|0;break a}case 75:case 74:case 73:case 72:case 71:case 70:case 62:case 61:case 60:case 59:case 58:case 57:case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:{i=1;break a}default:break b}while(0);switch(f[a+4>>2]|0){case 1:{i=32;break a}case 2:{i=64;break a}case 5:{i=64;break a}default:hb()}}else switch(f[a+4>>2]|0){case 1:{q6(d,e+8|0);i=32-(TRa(d)|0)|0;break a}case 2:{q6(d,e+8|0);i=64-(oJa(d)|0)|0;break a}default:hb()}while(0);u=j;return i|0}function Ji(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;t=u;u=u+80|0;o=t+24|0;v=t;p=t+64|0;k=t+76|0;q=t+48|0;r=t+72|0;s=t+56|0;f[a+4>>2]=b;j=b+12|0;i=b+16|0;g=f[i>>2]|0;a=0;e=f[j>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e>>2]|0;if(g2a(f[d+4>>2]|0,f[33047]|0)|0?g2a(f[d+8>>2]|0,f[33108]|0)|0:0){if((f[d+12>>2]|0)!=2){h=7;break}pb(10)|0;a=1}e=e+4|0}if((h|0)==7)Ca(55068,53069,183,55105);if(!a)rb(11,(Jbb(f[b+92>>2]|0)|0)<<16|0)|0;h=f[b+104>>2]|0;n=c+4|0;d=o+4|0;e=o+8|0;a=f[b+100>>2]|0;while(1){if((a|0)==(h|0)){h=13;break}eRa(o,a);jha(p,n);x=0;va(92,v|0,p|0,f[o>>2]|0);m=x;x=0;if(m&1){h=17;break}x=0;g=ga(225,v|0)|0;m=x;x=0;if(m&1){h=17;break}m=f[d>>2]|0;tb(12,g|0,m|0,(f[e>>2]|0)-m|0)|0;P_a(o);a=a+16|0}if((h|0)==13){g=f[i>>2]|0;a=0;e=f[j>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e>>2]|0;if(g2a(f[d+4>>2]|0,f[33047]|0)|0?g2a(f[d+8>>2]|0,f[33103]|0)|0:0){if((f[d+12>>2]|0)!=1){h=23;break}pb(13)|0;a=1}e=e+4|0}if((h|0)==23)Ca(55419,53069,210,55105);m=b+68|0;if(!a){f[k>>2]=f[m>>2];f[o>>2]=f[k>>2];rb(14,o|0)|0}pb(15)|0;j=f[b+80>>2]|0;k=v+4|0;l=v+8|0;i=f[b+76>>2]|0;a:while(1){if((i|0)==(j|0)){h=29;break}GPa(v,i);jha(q,n);x=0;va(92,o|0,q|0,f[v>>2]|0);c=x;x=0;if(c&1){h=36;break}x=0;a=ga(225,o|0)|0;c=x;x=0;if(c&1){h=36;break}x=0;va(85,p|0,a|0,((a|0)<0)<<31>>31|0);c=x;x=0;if(c&1){h=36;break}g=Jbb(f[p>>2]|0)|0;h=f[k>>2]|0;c=(f[l>>2]|0)-h>>2;if((c+g|0)>>>0>(Jbb(f[m>>2]|0)|0)>>>0){h=35;break}e=0;while(1){if((e|0)==(c|0))break;a=f[h+(e<<2)>>2]|0;f[r>>2]=a;x=0;f[o>>2]=f[r>>2];d=ia(48,b|0,o|0)|0;w=x;x=0;if(w&1){h=42;break a}if(!d){f[s>>2]=a;x=0;f[o>>2]=f[s>>2];a=ia(74,b|0,o|0)|0;w=x;x=0;if(w&1){h=45;break a}tb(17,g+e|0,f[a+4>>2]|0,f[a+8>>2]|0)|0}else sb(16,g+e|0,d|0)|0;e=e+1|0}P_a(v);i=i+16|0}if((h|0)==29){u=t;return}else if((h|0)==35){x=0;wa(71,55652,53069,232,55105);x=0;a=Ia()|0}else if((h|0)==36)a=Ia()|0;else if((h|0)==42)a=Ia()|0;else if((h|0)==45)a=Ia()|0;P_a(v)}else if((h|0)==17){a=Ia()|0;P_a(o)}Ua(a|0)}function Ki(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+64|0;m=s+32|0;n=s+48|0;o=s+16|0;p=s;r=o0(PV(a,c)|0)|0;cz(c);d=f[c>>2]|0;if((b[d>>0]|0)!=123)Ca(65969,65740,536,66181);f[c>>2]=d+1;h=m+12|0;i=m+8|0;j=o+8|0;k=o+12|0;l=p+8|0;g=p+12|0;a:while(1){cz(c);d=f[c>>2]|0;if((b[d>>0]|0)==125){q=29;break}Dh(m,d);do if(!(f[h>>2]|0)){d=f[m>>2]|0;if(!(g2a(d,f[33218]|0)|0)){if(!(g2a(d,f[33217]|0)|0)){q=24;break}f[c>>2]=(f[c>>2]|0)+(f[i>>2]|0);yQ(r);cz(c);d=f[c>>2]|0;if((b[d>>0]|0)!=58){q=22;break a}f[c>>2]=d+1;break}f[c>>2]=(f[c>>2]|0)+(f[i>>2]|0);cz(c);n4a(n,0);Dh(o,f[c>>2]|0);d=f[k>>2]|0;b:do if(F_a(d)|0){d=MY(o)|0;f[n>>2]=d;f[c>>2]=(f[c>>2]|0)+(f[j>>2]|0)}else{switch(d|0){case 1:break;case 2:{f[c>>2]=(f[c>>2]|0)+(f[j>>2]|0);cz(c);d=_w(a,MY(o)|0,c)|0;f[n>>2]=d;break b}default:{q=15;break a}}if(!(g2a(f[o>>2]|0,f[33255]|0)|0)){q=11;break a}f[c>>2]=(f[c>>2]|0)+(f[j>>2]|0);cz(c);Dh(p,f[c>>2]|0);if(!(F_a(f[g>>2]|0)|0)){q=13;break a}d=f[33255]|0;d=HX(d,MY(p)|0)|0;f[n>>2]=d;f[c>>2]=(f[c>>2]|0)+(f[l>>2]|0)}while(0);vS(r,d);cz(c);d=f[c>>2]|0;if((b[d>>0]|0)!=58){q=18;break a}f[c>>2]=d+1}else q=24;while(0);if((q|0)==24){q=0;cz(c);e=(b[f[c>>2]>>0]|0)==123;if(e)d=LO(a,c)|0;else d=Vx(a,c,66001,f[33218]|0,f[33217]|0)|0;QB(r,d,e)}}if((q|0)==11)Ca(66193,65740,554,66181);else if((q|0)==13)Ca(66212,65740,558,66181);else if((q|0)==15)Ca(66230,65740,563,66181);else if((q|0)==18)Ca(66250,65740,570,66181);else if((q|0)==22)Ca(66250,65740,577,66181);else if((q|0)==29){cz(c);d=f[c>>2]|0;if((b[d>>0]|0)==125){f[c>>2]=d+1;u=s;return r|0}else Ca(66004,65740,590,66181)}return 0}function Li(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+4192|0;n=p+4176|0;q=p;r=p+4112|0;a:do if((a|0)!=0?(g=(c|0)!=0,o=(d|0)==0,!(g&o)):0){if(g)m=f[d>>2]|0;else m=0;d1a(q);wU(r,q);i=r+48|0;h=r+61|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;b[i+12>>0]=0;b[h>>0]=1;i=r+32|0;j=r+36|0;g=f[j>>2]|0;if(g>>>0>=(f[r+40>>2]|0)>>>0){x=0;ua(3193,i|0,q|0);l=x;x=0;if(l&1)c=Ia()|0;else s=10}else{n4a(n,q);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=f[n>>2];f[j>>2]=(f[j>>2]|0)+16;s=10}if((s|0)==10){k=r+62|0;b[k>>0]=0;b[r+63>>0]=1;f[n>>2]=0;l=a+(dV(a)|0)|0;x=0;wa(160,a|0,l|0,r|0,n|0);g=x;x=0;b:do if(g&1)s=25;else{g=f[n>>2]|0;do if(!((g|0)!=0|(b[k>>0]|0)==0)){i=f[i>>2]|0;if((i|0)!=(f[j>>2]|0)?(f[i>>2]|0)!=(f[i+4>>2]|0):0){b[k>>0]=0;b[h>>0]=0;h=f[r>>2]|0;i=r+4|0;g=f[i>>2]|0;while(1){if((g|0)==(h|0))break;j=g+-24|0;OJa(j);g=j}f[i>>2]=h;h=f[r+16>>2]|0;i=r+20|0;g=f[i>>2]|0;while(1){if((g|0)==(h|0))break;j=g+-16|0;aY(j);g=j}f[i>>2]=h;x=0;wa(160,a|0,l|0,r|0,n|0);a=x;x=0;if(a&1){s=25;break b}if(!(b[k>>0]|0)){g=f[n>>2]|0;s=26;break}else{f[n>>2]=-2;c=0;g=-2;break}}else s=27}else s=26;while(0);if((s|0)==26)if(!g)s=27;else c=0;do if((s|0)==27){h=r+4|0;i=Sla((f[h>>2]|0)+-24|0)|0;g=i+1|0;if(g>>>0>m>>>0){c=xZ(c,g)|0;if(!c){f[n>>2]=-1;c=0;g=-1;break}if(!o)f[d>>2]=g}else if(!c){c=0;g=0;break}n=f[h>>2]|0;m=n+-12|0;o=b[m+11>>0]|0;d=o<<24>>24<0;x=0;ja(97,n+-24|0,(d?f[m>>2]|0:m)|0,(d?f[n+-8>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){c=Ia()|0;break b}g=(f[h>>2]|0)+-24|0;if((b[g+11>>0]|0)<0)g=f[g>>2]|0;Ku(c|0,g|0,i|0)|0;b[c+i>>0]=0;g=0}while(0);if(e|0)f[e>>2]=g;j5(r);q1a(q);break a}while(0);if((s|0)==25)c=Ia()|0}j5(r);q1a(q);Ua(c|0)}else s=3;while(0);if((s|0)==3)if(!e)c=0;else{f[e>>2]=-3;c=0}u=p;return c|0}function Mi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=u;u=u+128|0;h=m+112|0;n=m+116|0;o=m+100|0;p=m+64|0;i=m+60|0;k=m+48|0;l=m+36|0;j=m;f[h>>2]=c;DUa(n);DUa(o);g=a+80|0;Nqa(p,f[g>>2]|0,n,o);x=0;ua(1895,p|0,h|0);h=x;x=0;if(h&1)c=Ia()|0;else{h=a+56|0;e=a+68|0;while(1){if(!b){c=0;a=33;break}x=0;c=ga(316,f[b+8>>2]|0)|0;d=x;x=0;if(d&1){a=9;break}f[i>>2]=c;x=0;c=ia(150,h|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if(!(f[c>>2]|0)){a=7;break}x=0;c=ia(150,h|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if((f[c>>2]|0)>>>0>1){a=30;break}x=0;c=ia(150,n|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if(f[c>>2]|0){a=16;break}x=0;c=ia(150,o|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}c=f[c>>2]|0;x=0;a=ia(150,e|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if((c|0)!=(f[a>>2]|0)){x=0;c=ia(150,o|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}c=f[c>>2]|0;x=0;a=ia(150,e|0,i|0)|0;d=x;x=0;if(d&1){a=9;break}if(c>>>0>=(f[a>>2]|0)>>>0){a=23;break}DUa(k);DUa(l);Nqa(j,f[g>>2]|0,k,l);x=0;ua(1895,j|0,b+12|0);d=x;x=0;if(d&1){a=29;break}x=0;c=ia(150,o|0,i|0)|0;d=x;x=0;if(d&1){a=29;break}d=f[c>>2]|0;x=0;c=ia(150,l|0,i|0)|0;a=x;x=0;if(a&1){a=29;break}c=f[c>>2]|0;x=0;a=ia(150,e|0,i|0)|0;q=x;x=0;if(q&1){a=29;break}q=(c+d|0)>>>0<(f[a>>2]|0)>>>0;P_a(j);RNa(l);RNa(k);if(q){a=30;break}}b=E2(f[b+16>>2]|0,f[g>>2]|0)|0}if((a|0)==7){x=0;wa(71,99941,99875,171,99962);x=0;a=10}else if((a|0)==9){c=Ia()|0;a=11}else if((a|0)==16){x=0;wa(71,99988,99875,173,99962);x=0;a=10}else if((a|0)==23){x=0;wa(71,100018,99875,175,99962);x=0;a=10}else if((a|0)==29){c=Ia()|0;P_a(j);RNa(l);RNa(k)}else if((a|0)==30){c=1;a=33}if((a|0)==10){c=Ia()|0;a=11}else if((a|0)==33){P_a(p);RNa(o);RNa(n);u=m;return c|0}}P_a(p);RNa(o);RNa(n);Ua(c|0);return 0}function Ni(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+48|0;m=q+28|0;n=q+24|0;r=q+12|0;j=q;k=a+12|0;do if(b[k>>0]|0){g=DCa(134176,95315)|0;dYa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[m>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(m);Wq(g,e)|0;fu(g)|0;break}r=Ia()|0;OCa(m);Ua(r|0)}while(0);i=nq(a)|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[r+(d<<2)>>2]=0;d=d+1|0}g=r+11|0;h=r+4|0;e=0;while(1){if(e>>>0>=i>>>0){d=11;break}x=0;d=ga(307,a|0)|0;s=x;x=0;if(s&1){d=17;break}if(!(d<<24>>24)){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;s=j7a(95319)|0;x=0;va(87,j|0,95319,s|0);s=x;x=0;if(s&1){d=17;break}x=0;ua(1870,a|0,j|0);s=x;x=0;if(s&1){d=18;break}MTa(j)}x=0;va(147,m|0,r|0,d|0);s=x;x=0;if(s&1){d=29;break}if((b[g>>0]|0)<0){Z0a(f[r>>2]|0,0);f[h>>2]=0}else{Z0a(r,0);b[g>>0]=0}x=0;ta(470,r|0);s=x;x=0;if(s&1){d=24;break}f[r>>2]=f[m>>2];f[r+4>>2]=f[m+4>>2];f[r+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}MTa(m);e=e+1|0}if((d|0)==11){do if(b[k>>0]|0){x=0;c=ia(62,134176,95447)|0;s=x;x=0;if((!(s&1)?(x=0,l=ia(84,c|0,r|0)|0,s=x,x=0,!(s&1)):0)?(x=0,o=ia(62,l|0,95465)|0,s=x,x=0,!(s&1)):0){dYa(m,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[m>>2]|0,134880)|0;s=x;x=0;if(!(s&1)?(x=0,p=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,s=x,x=0,!(s&1)):0){OCa(m);x=0;ia(79,o|0,p|0)|0;s=x;x=0;if(s&1){d=38;break}x=0;ga(227,o|0)|0;s=x;x=0;if(s&1){d=38;break}else{d=40;break}}c=Ia()|0;OCa(m)}else d=38}else d=40;while(0);if((d|0)==40){x=0;ua(83,n|0,r|0);s=x;x=0;if(s&1)d=38;else{MTa(r);u=q;return f[n>>2]|0}}if((d|0)==38)c=Ia()|0}else if((d|0)==17)c=Ia()|0;else if((d|0)==18){c=Ia()|0;MTa(j)}else if((d|0)==24){s=Ja(0)|0;y2a(s)}else if((d|0)==29)c=Ia()|0;MTa(r);Ua(c|0);return 0}function Oi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;v=u;u=u+80|0;t=v+28|0;h=v+24|0;w=v+8|0;o=v+20|0;p=v;s=v+4|0;e=f[d+28>>2]|0;c=f[d+24>>2]|0;while(1){if((c|0)==(e|0))break;g=f[c>>2]|0;if(((f[g+8>>2]|0)==0?(f[h>>2]=f[g+4>>2],f[t>>2]=f[h>>2],i=Xma(d,t)|0,i|0):0)?M8(i)|0:0){r=Yh(a,i,d)|0;f[(f[c>>2]|0)+4>>2]=r}c=c+4|0}f[w>>2]=0;q=w+4|0;f[q>>2]=0;k=w+8|0;f[k>>2]=0;l=f[d+16>>2]|0;r=a+16|0;m=d+76|0;n=d+80|0;j=f[d+12>>2]|0;while(1){if((j|0)==(l|0)){h=10;break}c=f[j>>2]|0;if(!(f[c+12>>2]|0)){f[o>>2]=f[c+16>>2];x=0;f[t>>2]=f[o>>2];c=ia(163,d|0,t|0)|0;i=x;x=0;if(i&1){h=22;break}if(M8(c)|0){Bab(t);x=0;c=ka(33,a|0,f[j>>2]|0,d|0,t|0)|0;i=x;x=0;if(i&1){h=29;break}f[p>>2]=c;x=0;e=ia(187,r|0,f[j>>2]|0)|0;i=x;x=0;if(i&1){h=29;break}i=f[t>>2]|0;f[e>>2]=i;e=f[q>>2]|0;if((e|0)==(f[k>>2]|0)){x=0;ua(2558,w|0,p|0);h=x;x=0;if(h&1){h=29;break}}else{f[e>>2]=c;f[q>>2]=(f[q>>2]|0)+4}g=f[n>>2]|0;c=f[m>>2]|0;while(1){if((c|0)==(g|0))break;h=f[c+8>>2]|0;e=f[c+4>>2]|0;while(1){if((e|0)==(h|0))break;if(g2a(f[e>>2]|0,f[f[j>>2]>>2]|0)|0)f[e>>2]=i;e=e+4|0}c=c+16|0}}}j=j+4|0}a:do if((h|0)==10){do if(f[a+24>>2]|0){g=a+20|0;e=f[r>>2]|0;while(1){if((e|0)==(g|0))break;f[s>>2]=f[e+16>>2];f[t>>2]=f[s>>2];gF(d,t);c=f[e+4>>2]|0;if(!c)while(1){c=f[e+8>>2]|0;if((f[c>>2]|0)==(e|0))break;else e=c}else while(1){e=f[c>>2]|0;if(!e)break;else c=e}e=c}e=f[q>>2]|0;c=f[w>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(64,d|0,f[c>>2]|0);s=x;x=0;if(s&1){h=45;break}c=c+4|0}if((h|0)==45){c=Ia()|0;break a}rza(t,d);p4a(t);x=0;ua(2559,t|0,r|0);s=x;x=0;if(!(s&1)?(x=0,ta(438,t|0),s=x,x=0,!(s&1)):0){Wca(t);break}c=Ia()|0;Wca(t);break a}while(0);if(b[a+28>>0]|0?(x=0,ta(503,d|0),d=x,x=0,d&1):0){c=Ia()|0;break}zSa(w);u=v;return}else if((h|0)==22)c=Ia()|0;else if((h|0)==29)c=Ia()|0;while(0);zSa(w);Ua(c|0)}function Pi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;k=l+8|0;h=l;a:do if((c-a|0)>1){g=(b[a>>0]|0)==76?a+1|0:a;switch(b[g>>0]|0){case 78:{k=Pc(g,c,d)|0;a=(k|0)==(g|0)?a:k;break a}case 90:{k=Tj(g,c,d)|0;a=(k|0)==(g|0)?a:k;break a}default:{i=IM(g,c,d)|0;do if((i|0)==(g|0)){e=Qg(g,c,d)|0;if((e|0)==(g|0)|(e|0)==(c|0))break a;if((b[e>>0]|0)!=73)break a;h=jg(e,c,d)|0;if((h|0)==(e|0))break a;g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(k,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;OJa(e+(d*24|0)|0);a=d}f[g>>2]=e+-24;d=b[k+11>>0]|0;j=d<<24>>24<0;x=0;ja(97,e+-48|0,(j?f[k>>2]|0:k)|0,(j?f[k+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(k);break}else{MTa(k);a=h;break a}}else{if((i|0)==(c|0)){a=c;break a}if((b[i>>0]|0)!=73){a=i;break a}j=d+4|0;e=f[j>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[h>>2]=f[d+12>>2];HR(k,e+-24|0,h);e=d+20|0;g=f[e>>2]|0;if(g>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,k|0);h=x;x=0;if(h&1){a=Ia()|0;aY(k);break}}else{f[g+12>>2]=f[k+12>>2];f[g>>2]=f[k>>2];h=k+4|0;f[g+4>>2]=f[h>>2];m=k+8|0;f[g+8>>2]=f[m>>2];f[m>>2]=0;f[h>>2]=0;f[k>>2]=0;f[e>>2]=(f[e>>2]|0)+16}aY(k);g=jg(i,c,d)|0;if((g|0)==(i|0))break a;e=f[j>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(k,e+-24|0);e=f[j>>2]|0;a=0;while(1){if((a|0)==-1)break;m=a+-1|0;OJa(e+(m*24|0)|0);a=m}f[j>>2]=e+-24;m=b[k+11>>0]|0;d=m<<24>>24<0;x=0;ja(97,e+-48|0,(d?f[k>>2]|0:k)|0,(d?f[k+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){a=Ia()|0;MTa(k);break}else{MTa(k);a=g;break a}}while(0);Ua(a|0)}}}while(0);u=l;return a|0}function Qi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;g=a+24|0;f[g>>2]=c;Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80746)|0;_Ba(a);e=f[c+4>>2]|0;h=a+4|0;i=a+16|0;d=f[c>>2]|0;while(1){if((d|0)==(e|0))break;Nwa(f[a>>2]|0,f[h>>2]|0)|0;Ema(f[a>>2]|0,40)|0;Ema(yPa(f[a>>2]|0,97308)|0,32)|0;Ema(x4(f[f[d>>2]>>2]|0,f[a>>2]|0)|0,32)|0;Ss(a,f[d>>2]|0,0);j=DCa(f[a>>2]|0,123272)|0;DCa(j,f[i>>2]|0)|0;d=d+4|0}e=f[c+16>>2]|0;d=f[c+12>>2]|0;while(1){if((d|0)==(e|0))break;Nwa(f[a>>2]|0,f[h>>2]|0)|0;Fs(a,f[d>>2]|0);DCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}e=f[c+52>>2]|0;d=f[c+48>>2]|0;while(1){if((d|0)==(e|0))break;Nwa(f[a>>2]|0,f[h>>2]|0)|0;wB(a,f[d>>2]|0);DCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}d=c+60|0;if(b[d>>0]|0)Vu(a,d);qi(a,c+88|0);e=f[c+28>>2]|0;d=f[c+24>>2]|0;while(1){if((d|0)==(e|0))break;Nwa(f[a>>2]|0,f[h>>2]|0)|0;aA(a,f[d>>2]|0);DCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}d=c+116|0;if(Qab(f[d>>2]|0)|0){Nwa(f[a>>2]|0,f[h>>2]|0)|0;Ema(f[a>>2]|0,40)|0;j=Ema(yPa(f[a>>2]|0,80753)|0,32)|0;Ema(Bfa(j,f[d>>2]|0)|0,41)|0;DCa(f[a>>2]|0,f[i>>2]|0)|0}e=f[c+40>>2]|0;d=f[c+36>>2]|0;while(1){if((d|0)==(e|0))break;Nwa(f[a>>2]|0,f[h>>2]|0)|0;wh(a,f[d>>2]|0);DCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+4|0}e=f[c+124>>2]|0;d=f[c+120>>2]|0;while(1){if((d|0)==(e|0))break;Nwa(f[a>>2]|0,f[h>>2]|0)|0;j=DCa(Pca(DCa(f[a>>2]|0,80759)|0,d)|0,80779)|0;zm(j,(f[d+16>>2]|0)-(f[d+12>>2]|0)|0)|0;DCa(f[a>>2]|0,f[i>>2]|0)|0;d=d+24|0}pfa(a);DCa(f[a>>2]|0,f[i>>2]|0)|0;f[g>>2]=0;return}function Ri(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;z=u;u=u+992|0;i=z+912|0;E=z+904|0;k=z+800|0;m=z+976|0;a=z+400|0;y=z+980|0;s=z+972|0;t=z+968|0;B=z+956|0;C=z+944|0;D=z+932|0;n=z+928|0;l=z;v=z+924|0;w=z+920|0;f[m>>2]=k;p[E>>3]=h;j=QFa(k,100,121275,E)|0;do if(j>>>0>99){k=kOa()|0;p[i>>3]=h;k=Gja(m,k,121275,i)|0;m=f[m>>2]|0;if(!m){x=0;sa(10);x=0;j=0;i=0}else{i=m;a=Kc(k<<2)|0;j=a;if(a|0){r=k;k=m;F=7;break}x=0;sa(10);x=0}a=Ia()|0}else{r=j;j=0;i=0;F=7}while(0);if((F|0)==7){dYa(E,e);m=f[E>>2]|0;x=0;q=ia(73,m|0,134912)|0;o=x;x=0;if(!(o&1)?(x=0,ka(f[(f[q>>2]|0)+48>>2]|0,q|0,k|0,k+r|0,a|0)|0,o=x,x=0,!(o&1)):0){if(!r)o=0;else o=(b[k>>0]|0)==45;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[B+(k<<2)>>2]=0;k=k+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[C+(k<<2)>>2]=0;k=k+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[D+(k<<2)>>2]=0;k=k+1|0}x=0;Aa(4,d|0,o|0,m|0,y|0,s|0,t|0,B|0,C|0,D|0,n|0);d=x;x=0;if(d&1)a=Ia()|0;else{d=f[n>>2]|0;if((r|0)>(d|0)){n=b[D+8+3>>0]|0;k=b[C+8+3>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+1+(r-d<<1)|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}else{n=b[D+8+3>>0]|0;k=b[C+8+3>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+2|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}k=m+n+k|0;if(k>>>0>100){l=Kc(k<<2)|0;k=l;if(!l){x=0;sa(10);x=0;a=Ia()|0}else F=29}else{k=0;F=29}if((F|0)==29){x=0;Ba(2,l|0,v|0,w|0,f[e+4>>2]|0,a|0,a+(r<<2)|0,q|0,o|0,y|0,f[s>>2]|0,f[t>>2]|0,B|0,C|0,D|0,d|0);F=x;x=0;if(!(F&1)?(x=0,A=oa(47,f[c>>2]|0,l|0,f[v>>2]|0,f[w>>2]|0,e|0,g|0)|0,F=x,x=0,!(F&1)):0){if(k|0)rg(k);oTa(D);oTa(C);MTa(B);OCa(E);if(j|0)rg(j);if(i|0)rg(i);u=z;return A|0}a=Ia()|0}if(k|0)rg(k)}oTa(D);oTa(C);MTa(B)}else a=Ia()|0;OCa(E)}if(j|0)rg(j);if(i|0)rg(i);Ua(a|0);return 0}function Si(a,b){a=a|0;b=b|0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{xn(a,b);break}case 2:{uo(a,b);break}case 3:{Xr(a,b);break}case 4:{_t(a,b);break}case 5:{mu(a,b);break}case 6:{ys(a,b);break}case 7:{xt(a,b);break}case 8:{Cr(a,b);break}case 9:{pz(a,b);break}case 10:{tw(a,b);break}case 11:{nz(a,b);break}case 12:{iz(a,b);break}case 13:{rw(a,b);break}case 14:{Ju(a,b);break}case 24:{dt(a,b);break}case 25:{Rr(a,b);break}case 26:{et(a,b);break}case 27:{dv(a,b);break}case 15:{py(a,b);break}case 16:{pw(a,b);break}case 17:{Iu(a,b);break}case 18:{ot(a,b);break}case 19:{sz(a,b);break}case 20:{Qy(a,b);break}case 21:{ew(a,b);break}case 22:{VB(a,b);break}case 23:{vB(a,b);break}default:hb()}while(0);return}function Ti(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;z=u;u=u+416|0;i=z+336|0;E=z+328|0;k=z+224|0;m=z+392|0;a=z+112|0;y=z+400|0;s=z+397|0;t=z+396|0;B=z+380|0;C=z+368|0;D=z+356|0;n=z+352|0;l=z;v=z+348|0;w=z+344|0;f[m>>2]=k;p[E>>3]=h;j=QFa(k,100,121275,E)|0;do if(j>>>0>99){k=kOa()|0;p[i>>3]=h;k=Gja(m,k,121275,i)|0;m=f[m>>2]|0;if(!m){x=0;sa(10);x=0;j=0;i=0}else{i=m;a=Kc(k)|0;j=a;if(a|0){r=k;k=m;F=7;break}x=0;sa(10);x=0}a=Ia()|0}else{r=j;j=0;i=0;F=7}while(0);if((F|0)==7){dYa(E,e);m=f[E>>2]|0;x=0;q=ia(73,m|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,ka(f[(f[q>>2]|0)+32>>2]|0,q|0,k|0,k+r|0,a|0)|0,o=x,x=0,!(o&1)):0){if(!r)o=0;else o=(b[k>>0]|0)==45;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[B+(k<<2)>>2]=0;k=k+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[C+(k<<2)>>2]=0;k=k+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;k=0;while(1){if((k|0)==3)break;f[D+(k<<2)>>2]=0;k=k+1|0}x=0;Aa(3,d|0,o|0,m|0,y|0,s|0,t|0,B|0,C|0,D|0,n|0);d=x;x=0;if(d&1)a=Ia()|0;else{d=f[n>>2]|0;if((r|0)>(d|0)){n=b[D+11>>0]|0;k=b[C+11>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+1+(r-d<<1)|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}else{n=b[D+11>>0]|0;k=b[C+11>>0]|0;k=k<<24>>24<0?f[C+4>>2]|0:k&255;m=d+2|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255}k=m+n+k|0;if(k>>>0>100){l=Kc(k)|0;k=l;if(!l){x=0;sa(10);x=0;a=Ia()|0}else F=29}else{k=0;F=29}if((F|0)==29){x=0;Ba(1,l|0,v|0,w|0,f[e+4>>2]|0,a|0,a+r|0,q|0,o|0,y|0,b[s>>0]|0,b[t>>0]|0,B|0,C|0,D|0,d|0);F=x;x=0;if(!(F&1)?(x=0,A=oa(39,f[c>>2]|0,l|0,f[v>>2]|0,f[w>>2]|0,e|0,g|0)|0,F=x,x=0,!(F&1)):0){if(k|0)rg(k);MTa(D);MTa(C);MTa(B);OCa(E);if(j|0)rg(j);if(i|0)rg(i);u=z;return A|0}a=Ia()|0}if(k|0)rg(k)}MTa(D);MTa(C);MTa(B)}else a=Ia()|0;OCa(E)}if(j|0)rg(j);if(i|0)rg(i);Ua(a|0);return 0}function Ui(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;r=u;u=u+336|0;l=r;t=r+96|0;s=r+52|0;h=r+328|0;p=r+28|0;i=r+16|0;j=r+40|0;if(!(zab(f[b>>2]|0)|0))Ca(113292,113307,109,113361);if(KMa(b)|0)Ca(113337,113307,110,113361);m=b+4|0;d=f[m>>2]|0;n=b+12|0;o=b+16|0;k=a+36|0;c=0;while(1){e=f[n>>2]|0;if(c>>>0>=(f[o>>2]|0)-e>>2>>>0)break;if(KMa(f[e+(c<<2)>>2]|0)|0?(g=VG(d,c)|0,!(O6a(f[f[g>>2]>>2]|0)|0)):0){e=n$a(f[(f[(f[n>>2]|0)+(c<<2)>>2]|0)+4>>2]|0)|0;w=f[k>>2]|0;Jbb(w)|0;_0a(t,w);e=e+8|0;f[l>>2]=f[e>>2];f[l+4>>2]=f[e+4>>2];f[l+8>>2]=f[e+8>>2];f[l+12>>2]=f[e+12>>2];e=e0(t,l)|0;f[g>>2]=e}c=c+1|0}Yt(t);_0a(s,t);x=0;ua(65,h|0,113384);w=x;x=0;do if(w&1){c=Ia()|0;v=19}else{f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;f[l>>2]=f[h>>2];c=ma(28,l|0,p|0,0,i|0,d|0)|0;w=x;x=0;if(w&1){c=Ia()|0;zSa(i);zSa(p);v=19;break}zSa(i);zSa(p);rza(s,t);p4a(s);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;w=j7a(113389)|0;x=0;va(87,j|0,113389,w|0);w=x;x=0;a:do if(!(w&1)){x=0;ua(80,s|0,j|0);w=x;x=0;if(w&1){c=Ia()|0;MTa(j);break}MTa(j);x=0;ua(74,s|0,c|0);w=x;x=0;if(!(w&1)){c=f[c+36>>2]|0;do if(O6a(f[c>>2]|0)|0){w=f[k>>2]|0;Jbb(w)|0;_0a(p,w);x=0;c=ga(241,c|0)|0;w=x;x=0;if(!(w&1)?(q=c+8|0,x=0,f[l>>2]=f[q>>2],f[l+4>>2]=f[q+4>>2],f[l+8>>2]=f[q+8>>2],f[l+12>>2]=f[q+12>>2],q=ia(50,p|0,l|0)|0,w=x,x=0,!(w&1)):0){f[m>>2]=q;if(KMa(b)|0){X_(a+44|0,b);f[o>>2]=f[n>>2];x=0;va(169,a|0,b|0,b|0);w=x;x=0;if(!(w&1))break}else{x=0;wa(71,113400,113307,144,113361);x=0}c=Ia()|0;break a}c=Ia()|0;break a}while(0);Wca(s);ey(t);u=r;return}else v=20}else v=20;while(0);if((v|0)==20)c=Ia()|0;Wca(s)}while(0);ey(t);Ua(c|0)}function Vi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=Jbb(f[h>>2]|0)|0;if($5a(g)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(b){g=f[b+12>>2]|0;if((g|0)==(f[b+16>>2]|0))g=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else g=Jbb(f[g>>2]|0)|0;if(!($5a(g)|0))if(h){j=b;n=16}else n=15;else n=13}else n=13;if((n|0)==13)if(h)n=15;else{j=0;n=16}a:do if((n|0)==15){f[c>>2]=f[c>>2]|6;g=0}else if((n|0)==16){g=f[a>>2]|0;h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=Jbb(f[h>>2]|0)|0;if(!(ec[f[(f[d>>2]|0)+12>>2]&127](d,2048,g)|0)){f[c>>2]=f[c>>2]|4;g=0;break}g=(ec[f[(f[d>>2]|0)+52>>2]&127](d,g,0)|0)<<24>>24;h=f[a>>2]|0;b=h+12|0;i=f[b>>2]|0;if((i|0)==(f[h+16>>2]|0))bc[f[(f[h>>2]|0)+40>>2]&511](h)|0;else f[b>>2]=i+4;k=j;i=j;while(1){g=g+-48|0;m=e+-1|0;h=f[a>>2]|0;do if(h){b=f[h+12>>2]|0;if((b|0)==(f[h+16>>2]|0))h=bc[f[(f[h>>2]|0)+36>>2]&511](h)|0;else h=Jbb(f[b>>2]|0)|0;if($5a(h)|0){f[a>>2]=0;j=1;break}else{j=(f[a>>2]|0)==0;break}}else j=1;while(0);if(!k){l=i;k=0;h=1}else{h=f[k+12>>2]|0;if((h|0)==(f[k+16>>2]|0))h=bc[f[(f[k>>2]|0)+36>>2]&511](k)|0;else h=Jbb(f[h>>2]|0)|0;h=$5a(h)|0;l=h?0:i;k=h?0:k}b=f[a>>2]|0;if(!((e|0)>1&(j^h)))break;h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0))h=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else h=Jbb(f[h>>2]|0)|0;if(!(ec[f[(f[d>>2]|0)+12>>2]&127](d,2048,h)|0))break a;g=(g*10|0)+((ec[f[(f[d>>2]|0)+52>>2]&127](d,h,0)|0)<<24>>24)|0;h=f[a>>2]|0;b=h+12|0;i=f[b>>2]|0;if((i|0)==(f[h+16>>2]|0))bc[f[(f[h>>2]|0)+40>>2]&511](h)|0;else f[b>>2]=i+4;e=m;i=l}do if(b){h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0))h=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else h=Jbb(f[h>>2]|0)|0;if($5a(h)|0){f[a>>2]=0;b=1;break}else{b=(f[a>>2]|0)==0;break}}else b=1;while(0);if(l){h=f[l+12>>2]|0;if((h|0)==(f[l+16>>2]|0))h=bc[f[(f[l>>2]|0)+36>>2]&511](l)|0;else h=Jbb(f[h>>2]|0)|0;if(!($5a(h)|0)){if(b)break}else n=58}else n=58;if((n|0)==58?!b:0)break;f[c>>2]=f[c>>2]|2}while(0);return g|0}function Wi(a){a=a|0;var c=0,d=0,e=0,g=0,i=0;i=u;u=u+16|0;c=i;d=n$a(a)|0;a:do if(!d){e=d$a(a)|0;b:do if(!e){c=l$a(a)|0;if(c|0)switch(f[c+8>>2]|0){case 4:case 2:case 0:{g=6;break a}case 5:case 3:case 1:{g=7;break a}case 21:case 20:{g=1;break a}case 24:{g=Wi(f[c+12>>2]|0)|0;g=g>>>0<32?g:32;break a}default:break b}c=L_a(a)|0;if(c|0){g=Wi(f[c+12>>2]|0)|0;break a}c=U_a(a)|0;if(c|0){g=$Wa(f[c+4>>2]|0)|0;break a}c=w$a(a)|0;if((c|0?fra(c)|0:0)?(b[c+9>>0]|0)==0:0){g=h[c+8>>0]<<3;break a}}else switch(f[e+8>>2]|0){case 14:case 13:case 6:case 5:case 4:case 3:case 2:case 1:case 0:{g=32;break a}case 7:{g=Wi(f[e+12>>2]|0)|0;a=Wi(f[e+16>>2]|0)|0;g=a>>>0>>0?a:g;break a}case 9:case 8:{g=Wi(f[e+12>>2]|0)|0;a=Wi(f[e+16>>2]|0)|0;g=g>>>0>>0?a:g;break a}case 10:{c=n$a(f[e+16>>2]|0)|0;if(!c){g=32;break a}g=(Wi(f[e+12>>2]|0)|0)+(V4(c)|0)|0;g=g>>>0<32?g:32;break a}case 11:{c=n$a(f[e+16>>2]|0)|0;if(!c){g=32;break a}a=Wi(f[e+12>>2]|0)|0;g=V4(c)|0;g=a-(a>>>0>>0?a:g)|0;break a}case 12:{d=n$a(f[e+16>>2]|0)|0;if(!d){g=32;break a}c=Wi(f[e+12>>2]|0)|0;if((c|0)==32){g=32;break a}g=V4(d)|0;g=c-(c>>>0>>0?c:g)|0;break a}case 75:case 74:case 73:case 72:case 71:case 70:case 62:case 61:case 60:case 59:case 58:case 57:case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:{g=1;break a}default:break b}while(0);switch(f[a+4>>2]|0){case 1:{g=32;break a}case 2:{g=64;break a}case 5:{g=64;break a}default:hb()}}else switch(f[a+4>>2]|0){case 1:{q6(c,d+8|0);g=32-(TRa(c)|0)|0;break a}case 2:{q6(c,d+8|0);g=64-(oJa(c)|0)|0;break a}default:hb()}while(0);u=i;return g|0}function Xi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do switch(d<<24>>24){case 103:{d=1;e=0;g=53;break}case 121:{d=2;e=1;g=53;break}case 104:{d=1;e=2;g=53;break}case 122:{d=2;e=3;g=53;break}case 105:{d=1;e=4;g=53;break}case 123:{d=2;e=5;g=53;break}case 69:{d=1;e=20;g=53;break}case 80:{d=1;e=21;g=53;break}case -116:{d=3;e=6;g=53;break}case -102:{d=4;e=7;g=53;break}case -117:{d=3;e=8;g=53;break}case -103:{d=4;e=9;g=53;break}case -115:{d=3;e=10;g=53;break}case -101:{d=4;e=11;g=53;break}case -114:{d=3;e=12;g=53;break}case -100:{d=4;e=13;g=53;break}case -112:{d=3;e=16;g=53;break}case -98:{d=4;e=17;g=53;break}case -111:{d=3;e=18;g=53;break}case -97:{d=4;e=19;g=53;break}case -77:{d=3;e=37;g=53;break}case -72:{d=4;e=38;g=53;break}case -78:{d=3;e=35;g=53;break}case -73:{d=4;e=36;g=53;break}case -75:{d=3;e=41;g=53;break}case -70:{d=4;e=42;g=53;break}case -76:{d=3;e=39;g=53;break}case -71:{d=4;e=40;g=53;break}case -84:{d=2;e=22;g=53;break}case -83:{d=2;e=23;g=53;break}case -89:{d=1;e=24;g=53;break}case -87:{d=1;e=27;g=53;break}case -85:{d=1;e=31;g=53;break}case -88:{d=1;e=25;g=53;break}case -86:{d=1;e=29;g=53;break}case -81:{d=2;e=28;g=53;break}case -79:{d=2;e=32;g=53;break}case -82:{d=2;e=26;g=53;break}case -80:{d=2;e=30;g=53;break}case -113:{d=3;e=14;g=53;break}case -99:{d=4;e=15;g=53;break}case -74:{d=3;e=44;g=53;break}case -69:{d=4;e=43;g=53;break}case -68:{d=1;e=33;g=53;break}case -67:{d=2;e=34;g=53;break}case -66:{d=3;e=45;g=53;break}case -65:{d=4;e=46;g=53;break}case -64:{d=1;e=47;g=53;break}case -63:{d=1;e=48;g=53;break}case -62:{d=2;e=49;g=53;break}case -61:{d=2;e=50;g=53;break}case -60:{d=2;e=51;g=53;break}default:d=0}while(0);if((g|0)==53){g=uUa(f[a+4>>2]|0)|0;f[g+8>>2]=e;f[g+4>>2]=d;do if(b[a+12>>0]|0){d=DCa(134176,110679)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(d,h)|0;fu(d)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);d=dk(a)|0;f[g+12>>2]=d;jv(g);f[c>>2]=g;d=1}u=j;return d|0}function Yi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;l=n+24|0;k=n;m=n+40|0;i=n+44|0;d=f[c>>2]|0;if(!(O6a(d)|0)?!(b7a(d)|0):0){kI(k,a,c,1);do if(K0a(k)|0){h=k+16|0;d=f[h>>2]|0;g=d;if(!(g2a(d,f[33152]|0)|0)){if(g2a(d,f[33118]|0)|0){d=c$a(c)|0;if(!d){j=f[a+36>>2]|0;Jbb(j)|0;_0a(m,j);if(!(f[k>>2]|0))d=0;else{f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];d=e0(m,l)|0}m=NOa(m,d)|0;GVa(f[a+16>>2]|0,m)|0;break}d=d+8|0;if(!(f[k>>2]|0)){f[d>>2]=0;break}c=f[d>>2]|0;if(c|0?(e=n$a(c)|0,e|0):0){m=e+8|0;f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];f[m+12>>2]=f[k+12>>2];r2a(e);break}a=f[a+36>>2]|0;Jbb(a)|0;_0a(m,a);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];m=e0(m,l)|0;f[d>>2]=m;break}e=u$a(c)|0;if(!e){j=f[a+36>>2]|0;Jbb(j)|0;_0a(m,j);f[i>>2]=f[h>>2];if(!(f[k>>2]|0))d=0;else{f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];d=e0(m,l)|0}f[l>>2]=f[i>>2];m=Vma(m,l,d,0)|0;GVa(f[a+16>>2]|0,m)|0;break}f[e+8>>2]=g;f[e+16>>2]=0;d=e+12|0;if(!(f[k>>2]|0))f[d>>2]=0;else{c=f[d>>2]|0;if(c|0?(j=n$a(c)|0,j|0):0){m=j+8|0;f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];f[m+12>>2]=f[k+12>>2];r2a(j);Cqa(e);break}a=f[a+36>>2]|0;Jbb(a)|0;_0a(m,a);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];m=e0(m,l)|0;f[d>>2]=m}Cqa(e)}}else if(v2a(f[k>>2]|0)|0){j=f[a+36>>2]|0;Jbb(j)|0;_0a(m,j);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[l+12>>2]=f[k+12>>2];m=e0(m,l)|0;GVa(f[a+16>>2]|0,m)|0;b[a+68>>0]=1;break}else{uVa(c);break}while(0)}u=n;return}function Zi(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;s=u;u=u+16|0;t=s;q=YTa(f[i>>2]|0,134912)|0;l=YTa(f[i>>2]|0,134920)|0;pc[f[(f[l>>2]|0)+20>>2]&4095](t,l);o=t+11|0;n=b[o>>0]|0;p=t+4|0;a:do if(!((n<<24>>24<0?f[p>>2]|0:n&255)|0)){x=0;ka(f[(f[q>>2]|0)+48>>2]|0,q|0,a|0,d|0,e|0)|0;r=x;x=0;if(r&1){i=Ia()|0;r=34;break}else{i=e+(d-a<<2)|0;f[h>>2]=i;r=33;break}}else{f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,i|0)|0;n=x;x=0;if(!(n&1)){k=f[h>>2]|0;f[h>>2]=k+4;f[k>>2]=i;k=a+1|0;r=9}break}default:{k=a;r=9}}b:do if((r|0)==9){c:do if((d-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:break c}x=0;j=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,48)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+4;f[n>>2]=j;x=0;i=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,b[i>>0]|0)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+4;f[n>>2]=i;k=k+2|0}while(0);d:do if((k|0)!=(d|0)){i=d;j=k;while(1){i=i+-1|0;if(j>>>0>=i>>>0)break d;n=b[j>>0]|0;b[j>>0]=b[i>>0]|0;b[i>>0]=n;j=j+1|0}}while(0);x=0;n=ga(f[(f[l>>2]|0)+16>>2]|0,l|0)|0;m=x;x=0;if(m&1){i=Ia()|0;r=34;break a}m=k;i=0;j=0;while(1){if(m>>>0>=d>>>0)break;l=b[((b[o>>0]|0)<0?f[t>>2]|0:t)+i>>0]|0;if(l<<24>>24!=0&(j|0)==(l<<24>>24|0)){j=f[h>>2]|0;f[h>>2]=j+4;f[j>>2]=n;j=b[o>>0]|0;i=i+(i>>>0<((j<<24>>24<0?f[p>>2]|0:j&255)+-1|0)>>>0&1)|0;j=0}x=0;l=ia(f[(f[q>>2]|0)+44>>2]|0,q|0,b[m>>0]|0)|0;v=x;x=0;if(v&1){r=31;break}v=f[h>>2]|0;f[h>>2]=v+4;f[v>>2]=l;m=m+1|0;j=j+1|0}if((r|0)==31){i=Ia()|0;r=34;break a}j=a;i=e+(k-j<<2)|0;a=f[h>>2]|0;if((i|0)==(a|0)){a=j;r=33;break a}while(1){a=a+-4|0;if(i>>>0>=a>>>0)break;v=f[i>>2]|0;f[i>>2]=f[a>>2];f[a>>2]=v;i=i+4|0}a=j;i=f[h>>2]|0;r=33;break a}while(0);i=Ia()|0;r=34}while(0);if((r|0)==33){f[g>>2]=(c|0)==(d|0)?i:e+(c-a<<2)|0;MTa(t);u=s;return}else if((r|0)==34){MTa(t);Ua(i|0)}}function _i(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;s=u;u=u+16|0;t=s;q=YTa(f[i>>2]|0,134880)|0;l=YTa(f[i>>2]|0,134896)|0;pc[f[(f[l>>2]|0)+20>>2]&4095](t,l);o=t+11|0;n=b[o>>0]|0;p=t+4|0;a:do if(!((n<<24>>24<0?f[p>>2]|0:n&255)|0)){x=0;ka(f[(f[q>>2]|0)+32>>2]|0,q|0,a|0,d|0,e|0)|0;r=x;x=0;if(r&1){i=Ia()|0;r=34;break}else{i=e+(d-a)|0;f[h>>2]=i;r=33;break}}else{f[h>>2]=e;i=b[a>>0]|0;switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,i|0)|0;n=x;x=0;if(!(n&1)){k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=i;k=a+1|0;r=9}break}default:{k=a;r=9}}b:do if((r|0)==9){c:do if((d-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:break c}x=0;j=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,48)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+1;b[n>>0]=j;x=0;i=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,b[i>>0]|0)|0;n=x;x=0;if(n&1)break b;n=f[h>>2]|0;f[h>>2]=n+1;b[n>>0]=i;k=k+2|0}while(0);d:do if((k|0)!=(d|0)){i=d;j=k;while(1){i=i+-1|0;if(j>>>0>=i>>>0)break d;n=b[j>>0]|0;b[j>>0]=b[i>>0]|0;b[i>>0]=n;j=j+1|0}}while(0);x=0;n=ga(f[(f[l>>2]|0)+16>>2]|0,l|0)|0;m=x;x=0;if(m&1){i=Ia()|0;r=34;break a}m=k;i=0;j=0;while(1){if(m>>>0>=d>>>0)break;l=b[((b[o>>0]|0)<0?f[t>>2]|0:t)+i>>0]|0;if(l<<24>>24!=0&(j|0)==(l<<24>>24|0)){j=f[h>>2]|0;f[h>>2]=j+1;b[j>>0]=n;j=b[o>>0]|0;i=i+(i>>>0<((j<<24>>24<0?f[p>>2]|0:j&255)+-1|0)>>>0&1)|0;j=0}x=0;l=ia(f[(f[q>>2]|0)+28>>2]|0,q|0,b[m>>0]|0)|0;v=x;x=0;if(v&1){r=31;break}v=f[h>>2]|0;f[h>>2]=v+1;b[v>>0]=l;m=m+1|0;j=j+1|0}if((r|0)==31){i=Ia()|0;r=34;break a}j=a;i=e+(k-j)|0;a=f[h>>2]|0;if((i|0)==(a|0)){a=j;r=33;break a}while(1){a=a+-1|0;if(i>>>0>=a>>>0)break;v=b[i>>0]|0;b[i>>0]=b[a>>0]|0;b[a>>0]=v;i=i+1|0}a=j;i=f[h>>2]|0;r=33;break a}while(0);i=Ia()|0;r=34}while(0);if((r|0)==33){f[g>>2]=(c|0)==(d|0)?i:e+(c-a)|0;MTa(t);u=s;return}else if((r|0)==34){MTa(t);Ua(i|0)}}function $i(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;p=u;u=u+480|0;l=p+472|0;v=p+240|0;t=p+224|0;s=p+176|0;q=p+16|0;r=p;m=p+172|0;n=p+168|0;o=p+12|0;d=a+44|0;if(!(f[d>>2]|0)){XFa(l,c);k=f[l>>2]|0;f[l>>2]=0;e=f[d>>2]|0;f[d>>2]=k;if(e|0)Cbb(e);f[l>>2]=0}GI(a+16|0,c);k=a+60|0;do if(f[k>>2]|0){Yt(v);f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;j=j7a(16)|0;x=0;va(87,t|0,16,j|0);j=x;x=0;if(j&1)d=Ia()|0;else{x=0;ua(93,s|0,((b[t+11>>0]|0)<0?f[t>>2]|0:t)|0);j=x;x=0;if(j&1)d=Ia()|0;else{x=0;d=ia(69,f[s+44>>2]|0,0)|0;j=x;x=0;if(!(j&1)?(x=0,wa(74,q|0,v|0,d|0,0),j=x,x=0,!(j&1)):0){DUa(r);h=a+56|0;i=a+48|0;j=r+4|0;a:while(1){if(!(f[k>>2]|0)){e=35;break}d=h;while(1){d=f[d>>2]|0;if(!d)break;f[m>>2]=f[d+8>>2];x=0;f[l>>2]=f[m>>2];va(139,v|0,l|0,r|0);g=x;x=0;if(g&1){e=20;break a}}fZ(i);e=f[r>>2]|0;while(1){if((e|0)==(j|0))break;g=f[e+16>>2]|0;f[n>>2]=g;f[l>>2]=f[n>>2];d=Xma(c,l)|0;if(!d){f[o>>2]=g;x=0;f[l>>2]=f[o>>2];d=ia(56,v|0,l|0)|0;g=x;x=0;if(g&1){e=34;break a}x=0;d=ia(158,d|0,c|0)|0;g=x;x=0;if(g&1){e=34;break a}}x=0;ua(1835,a|0,d|0);g=x;x=0;if(g&1){e=34;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}mqa(r)}if((e|0)==20)d=Ia()|0;else if((e|0)==34)d=Ia()|0;else if((e|0)==35){RTa(r);CS(q);C2a(s);MTa(t);ey(v);break}RTa(r);CS(q)}else d=Ia()|0;C2a(s)}MTa(t)}ey(v);Ua(d|0)}while(0);u=p;return}function aj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=DCa(134176,110810)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);oGa(a,f[c+24>>2]|0);e=c+4|0;d=f[e>>2]|0;a:do if((d|0)==5)iTa(f[a+28>>2]|0);else{b:do if(!(b[c+20>>0]|0))switch(d|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?45:44)|0;break b}case 2:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?47:46)|0;break b}case 4:{Gv(f[a+28>>2]|0,40)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?49:48)|0;break b}case 2:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?51:50)|0;break b}case 4:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?53:52)|0;break b}case 8:{Gv(f[a+28>>2]|0,41)|0;break b}default:hb()}break}case 3:{Gv(f[a+28>>2]|0,42)|0;break b}case 4:{Gv(f[a+28>>2]|0,43)|0;break b}default:hb()}else{d=a+28|0;Gv(f[d>>2]|0,-2)|0;switch(f[e>>2]|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,18)|0;break b}case 2:{Gv(f[d>>2]|0,19)|0;break b}case 4:{Gv(f[d>>2]|0,16)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,20)|0;break b}case 2:{Gv(f[d>>2]|0,21)|0;break b}case 4:{Gv(f[d>>2]|0,22)|0;break b}case 8:{Gv(f[d>>2]|0,17)|0;break b}default:hb()}break}default:hb()}}while(0);i=Jbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;FX(a,i,k,Jbb(f[c+12>>2]|0)|0)}while(0);u=j;return}function bj(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+48|0;i=p+36|0;n=p+40|0;o=p+32|0;k=p+16|0;m=p+8|0;j=p;f[i>>2]=g;l=f[b>>2]|0;if((f[l+4>>2]|0)!=5){_0a(n,h);g=vwa(f[n>>2]|0,0)|0;f[o>>2]=g;f[k>>2]=n;f[k+4>>2]=i;f[k+8>>2]=o;f[k+12>>2]=a;g=f[l>>2]|0;do if(Aab(g)|0){h=(mSa(l)|0)+8|0;Q$a(m,h);LUa(j,h);h=m+4|0;a=f[j>>2]|0;g=f[j+4>>2]|0;while(1){if(!(qTa(f[m>>2]|0,f[h>>2]|0,a,g)|0))break;Uy(k,QOa(m)|0);YYa(m)}}else{if(D7a(g)|0){h=(XQa(l)|0)+8|0;Q$a(m,h);LUa(j,h);h=m+4|0;a=f[j>>2]|0;g=f[j+4>>2]|0;while(1){if(!(qTa(f[m>>2]|0,f[h>>2]|0,a,g)|0))break;Uy(k,QOa(m)|0);YYa(m)}break}if(!(S2a(g)|0))hb();h=(IQa(l)|0)+8|0;Q$a(m,h);LUa(j,h);h=m+4|0;a=f[j>>2]|0;g=f[j+4>>2]|0;while(1){if(!(qTa(f[m>>2]|0,f[h>>2]|0,a,g)|0))break;Uy(k,QOa(m)|0);YYa(m)}Uy(k,(IQa(l)|0)+28|0)}while(0);a=f[c+4>>2]|0;g=f[c>>2]|0;while(1){if((g|0)==(a|0))break;f[m>>2]=f[g>>2];q=(f[o>>2]|0)+12|0;h=Ixa(1)|0;i=Jm(e,m)|0;i=f[i>>2]|0;j=Ixa(1)|0;k=SKa(f[n>>2]|0,d,1)|0;c=SKa(f[n>>2]|0,f[m>>2]|0,1)|0;faa(q,uT(f[n>>2]|0,h,i,j,k,c,1)|0);g=g+4|0}faa((f[o>>2]|0)+12|0,l);tt(f[o>>2]|0);f[b>>2]=f[o>>2]}u=p;return}function cj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+1056|0;v=x+1024|0;w=x;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;f[v+12>>2]=0;f[v+16>>2]=0;f[v+20>>2]=0;f[v+24>>2]=0;f[v+28>>2]=0;d=b[c>>0]|0;a:do if(d<<24>>24){p=0;do{if(!(b[a+p>>0]|0)){d=0;break a}t=d&255;s=v+(t>>>5<<2)|0;f[s>>2]=f[s>>2]|1<<(t&31);p=p+1|0;f[w+(t<<2)>>2]=p;d=b[c+p>>0]|0}while(d<<24>>24!=0);if(p>>>0>1){k=1;j=1;l=0;i=-1;m=1;while(1){d=b[c+(j+i)>>0]|0;e=b[c+m>>0]|0;do if(d<<24>>24==e<<24>>24)if((j|0)==(k|0)){g=k;d=1;e=k+l|0;break}else{g=k;d=j+1|0;e=l;break}else if((d&255)>(e&255)){g=m-i|0;d=1;e=m;break}else{g=1;d=1;e=l+1|0;i=l;break}while(0);m=d+e|0;if(m>>>0>=p>>>0)break;else{k=g;j=d;l=e}}m=1;l=1;n=0;e=-1;o=1;while(1){d=b[c+(l+e)>>0]|0;j=b[c+o>>0]|0;do if(d<<24>>24==j<<24>>24)if((l|0)==(m|0)){d=m;j=1;k=m+n|0;break}else{d=m;j=l+1|0;k=n;break}else if((d&255)<(j&255)){d=o-e|0;j=1;k=o;break}else{d=1;j=1;k=n+1|0;e=n;break}while(0);o=j+k|0;if(o>>>0>=p>>>0){t=p;j=24;break}else{m=d;l=j;n=k}}}else{g=1;i=-1;t=p;d=1;e=-1;j=24}}else{g=1;i=-1;t=0;d=1;e=-1;j=24}while(0);b:do if((j|0)==24){r=(e+1|0)>>>0>(i+1|0)>>>0;d=r?d:g;r=r?e:i;s=r+1|0;if(!(E5(c,c+d|0,s)|0)){m=t-d|0;q=m;l=d}else{m=t-r+-1|0;m=(r>>>0>m>>>0?r:m)+1|0;q=0;l=m;m=t-m|0}n=t|63;o=t+-1|0;p=(q|0)!=0;d=a;k=0;e=a;while(1){g=d;do if((e-g|0)>>>0>>0){i=DA(e,n)|0;if(i)if((i-g|0)>>>0>>0){d=0;break b}else break;else{i=e+n|0;break}}else i=e;while(0);e=h[d+o>>0]|0;c:do if(!(1<<(e&31)&f[v+(e>>>5<<2)>>2])){g=0;e=t}else{e=t-(f[w+(e<<2)>>2]|0)|0;if(e|0){g=0;e=p&(k|0)!=0&e>>>0>>0?m:e;break}j=s>>>0>k>>>0;e=j?s:k;g=b[c+e>>0]|0;d:do if(g<<24>>24){while(1){if(g<<24>>24!=(b[d+e>>0]|0))break;e=e+1|0;g=b[c+e>>0]|0;if(!(g<<24>>24))break d}g=0;e=e-r|0;break c}while(0);if(!j)break b;e=s;while(1){e=e+-1|0;if((b[c+e>>0]|0)!=(b[d+e>>0]|0)){g=q;e=l;break c}if(e>>>0<=k>>>0)break b}}while(0);d=d+e|0;k=g;e=i}}while(0);u=x;return d|0}function dj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;n=l+32|0;m=l+8|0;k=l;KHa(n);x=0;ua(1494,m|0,c|0);j=x;x=0;if(j&1)e=Ia()|0;else{g=m+8|0;e=m+16|0;a:while(1){if(!(Jbb(f[g>>2]|0)|0)){j=15;break}i=f[e>>2]|0;j=Jbb(i)|0;i=f[i+8>>2]|0;f[k>>2]=i;Iba(m,j);b:do if(!(DQa(n,i)|0)){x=0;ua(1460,n|0,k|0);j=x;x=0;if(j&1){j=9;break a}wZ(b,i);h=Jbb(f[i+40>>2]|0)|0;while(1){j=h;if((T6a(i+24|0)|0)==(j|0))break b;x=0;ua(1460,m|0,h+8|0);h=x;x=0;if(h&1){j=12;break a}h=f[j+4>>2]|0}}while(0)}do if((j|0)==9){e=Ia()|0;j=14}else if((j|0)==12){e=Ia()|0;j=14}else if((j|0)==15){if(!(Jbb(f[n+8>>2]|0)|0)){x=0;wa(71,89128,88985,570,89151);x=0;e=Ia()|0;break}e=Jbb(f[n+16>>2]|0)|0;b=T6a(n)|0;c:while(1){i=e;if((b|0)==(i|0))break;g=f[e+8>>2]|0;e=Jbb(f[g+16>>2]|0)|0;g=T6a(g)|0;while(1){h=e;if((g|0)==(h|0))break;e=f[e+8>>2]|0;f[k>>2]=e;if(!(DQa(n,e)|0)?(x=0,ua(1460,d|0,k|0),e=x,x=0,e&1):0){j=26;break c}e=f[h+4>>2]|0}e=f[i+4>>2]|0}if((j|0)==26){e=Ia()|0;break}x=0;b=ga(212,48)|0;k=x;x=0;if(!(k&1)?(FOa(b),x=0,ua(1495,f[a>>2]|0,b|0),k=x,x=0,!(k&1)):0){e=Jbb(f[c+16>>2]|0)|0;g=T6a(c)|0;while(1){h=e;if((g|0)==(h|0))break;x=0;wa(131,f[e+8>>2]|0,2,b|0,n|0);k=x;x=0;if(k&1){j=34;break}e=f[h+4>>2]|0}if((j|0)==34){e=Ia()|0;break}e=Jbb(f[d+16>>2]|0)|0;g=T6a(d)|0;while(1){h=e;if((g|0)==(h|0))break;x=0;wa(131,f[e+8>>2]|0,1,b|0,n|0);d=x;x=0;if(d&1){j=39;break}e=f[h+4>>2]|0}if((j|0)==39){e=Ia()|0;break}x=0;e=ja(69,a|0,n|0,c|0)|0;a=x;x=0;if(!(a&1)?(f[b+20>>2]=e,x=0,ia(143,b+24|0,c|0)|0,c=x,x=0,!(c&1)):0){YDa(m);YDa(n);u=l;return b|0}e=Ia()|0;break}e=Ia()|0}while(0);YDa(m)}YDa(n);Ua(e|0);return 0}function ej(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;d=n+4|0;g=n;h=c+8|0;e=f[h>>2]|0;if(Qab(e)|0){f[g>>2]=e;f[d>>2]=f[g>>2];Hl(a,d);j=a+48|0;h=BB(j,h)|0;if(!h)Ca(85255,85280,307,99914);i=h+12|0;g=h+16|0;d=f[g>>2]|0;if(i2a(d)|0){e=c+4|0;if(v2a(f[e>>2]|0)|0)Dqa(a,(d|0)!=0,c,85916)|0;else Dqa(a,(d|0)==0,c,85963)|0;d=f[i>>2]|0;if(v2a(d)|0?(k=f[e>>2]|0,v2a(k)|0):0)gja(a,k,d,c,86009);d=f[e>>2]|0;if((v2a(d)|0?f[g>>2]|0:0)?(l=f[i>>2]|0,(l|0)!=5):0)gja(a,d,l,c,86068);Dqa(a,(f[g>>2]|0)!=-2,c,86123)|0;if(Jbb(f[c+16>>2]|0)|0){d=RCa(c+12|0)|0;d=f[(f[d>>2]|0)+4>>2]|0;if(v2a(d)|0?(m=f[i>>2]|0,(m|0)!=5):0)gja(a,d,m,c,86148);if(!d)Dqa(a,(f[g>>2]|0)==0,c,86219)|0}}C4(j,h)}h=c+12|0;i=c+16|0;d=f[i>>2]|0;a:do if((Jbb(d)|0)>>>0>1){g=a+44|0;e=0;while(1){if(e>>>0>=(d+-1|0)>>>0)break a;m=ODa(h,e)|0;if(!(Dqa(a,(v2a(f[(f[m>>2]|0)+4>>2]|0)|0)^1,c,86285)|0)?(b[(f[g>>2]|0)+8>>0]|0)==0:0){m=DCa(zm(DCa(YNa(a)|0,86389)|0,e)|0,86400)|0;l=ODa(h,e)|0;l=DCa(xm(m,f[l>>2]|0)|0,86403)|0;m=ODa(h,e)|0;DCa(Am(l,f[(f[m>>2]|0)+4>>2]|0)|0,112641)|0}e=e+1|0;d=f[i>>2]|0}}while(0);do if(Jbb(d)|0){e=RCa(h)|0;e=f[(f[e>>2]|0)+4>>2]|0;d=c+4|0;g=f[d>>2]|0;m=v2a(g)|0;h=v2a(e)|0;if(!m){pwa(a,h,c);break}if(h){gja(a,g,e,c,86491);break}else{apa(a,e,c);break}}else d=c+4|0;while(0);if(v2a(f[d>>2]|0)|0)Dqa(a,(Jbb(f[i>>2]|0)|0)!=0,c,86610)|0;u=n;return}function fj(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=u;u=u+32|0;q=r+24|0;g=r+20|0;k=r+16|0;l=r+12|0;m=r+8|0;n=r+4|0;o=r;p=a+64|0;j=f[p>>2]|0;do if((f[j+16>>2]|0)!=(f[j+12>>2]|0)){j=a+72|0;do if(b[j>>0]|0){c=DCa(134176,87966)|0;dYa(q,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[q>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(q);Wq(c,e)|0;fu(c)|0;break}r=Ia()|0;OCa(q);Ua(r|0)}while(0);i=E$(a,2)|0;h=a+68|0;e=f[h>>2]|0;d=f[p>>2]|0;n4a(g,(f[d+16>>2]|0)-(f[d+12>>2]|0)>>2);Yr(e,f[g>>2]|0)|0;e=f[p>>2]|0;g=f[e+16>>2]|0;e=f[e+12>>2]|0;a:while(1){if((e|0)==(g|0)){c=9;break}if(b[j>>0]|0){d=DCa(134176,87865)|0;dYa(q,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[q>>2]|0,134880)|0;s=x;x=0;if(s&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;s=x;x=0;if(s&1){c=13;break}OCa(q);Wq(d,c)|0;fu(d)|0}K$(a,f[(f[e>>2]|0)+4>>2]|0);K$(a,f[(f[e>>2]|0)+8>>2]|0);c=f[h>>2]|0;n4a(k,f[(f[e>>2]|0)+12>>2]|0);Yr(c,f[k>>2]|0)|0;c=f[e>>2]|0;switch(f[c+12>>2]|0){case 0:{s=f[h>>2]|0;f[m>>2]=f[c+16>>2];f[q>>2]=f[m>>2];n4a(l,k0(a,q)|0);Yr(s,f[l>>2]|0)|0;break}case 1:{d=f[h>>2]|0;n4a(n,-16);Pr(d,f[n>>2]|0)|0;d=f[p>>2]|0;s=f[d+72>>2]|0;BP(a,f[d+68>>2]|0,s,(Jbb(s)|0)!=-1,0);break}case 2:{s=f[p>>2]|0;c=f[s+92>>2]|0;d=f[s+96>>2]|0;BP(a,c,d,(Jbb(d)|0)!=65535,(b[s+114>>0]|0)!=0);break}case 3:{Pr(f[h>>2]|0,r8(f[c+20>>2]|0)|0)|0;s=f[h>>2]|0;n4a(o,0);Yr(s,f[o>>2]|0)|0;break}default:{c=20;break a}}e=e+4|0}if((c|0)==9){WA(a,i);break}else if((c|0)==13){s=Ia()|0;OCa(q);Ua(s|0)}else if((c|0)==20)hb()}while(0);u=r;return}function gj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;l=u;u=u+96|0;g=l+80|0;d=l+56|0;i=l+32|0;j=l+16|0;k=l;Ou(d,b,f[c+20>>2]|0);if(!(K0a(d)|0)){Ou(i,b,f[c+24>>2]|0);if(K0a(i)|0){f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];f[a+16>>2]=f[i+16>>2];f[a+20>>2]=f[i+20>>2]}else{e=b+4|0;b=f[e>>2]|0;f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];f[g+12>>2]=f[d+12>>2];b=Bu(b,c,g)|0;d=c+12|0;KA(j,f[e>>2]|0,b,h[d>>0]|0,f[c+4>>2]|0);f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[k+12>>2]=f[i+12>>2];switch(f[c+8>>2]|0){case 0:{vT(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 1:{pT(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 2:{vaa(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 3:{yaa(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 4:{uaa(g,k,i);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];break}case 5:{f[k>>2]=f[i>>2];f[k+4>>2]=f[i+4>>2];f[k+8>>2]=f[i+8>>2];f[k+12>>2]=f[i+12>>2];break}default:hb()}c=f[e>>2]|0;i=h[d>>0]|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];ow(c,b,i,g);f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[g+12>>2]=f[j+12>>2];wAa(a,g)}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=l;return}function hj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+64|0;p=q+8|0;l=q;XFa(p,c);o=a+80|0;n=f[p>>2]|0;f[p>>2]=0;b=f[o>>2]|0;f[o>>2]=n;if(b|0)Cbb(b);f[p>>2]=0;m=nUa(a)|0;i=a+100|0;j=s8(12)|0;n=d+36|0;wNa(j,a,f[n>>2]|0);v$(p,j);j=a+104|0;b=f[j>>2]|0;do if(b>>>0>=(f[a+108>>2]|0)>>>0){x=0;ua(1457,i|0,p|0);h=x;x=0;if(h&1){b=Ia()|0;Aoa(f[p+4>>2]|0);break}else{b=f[p+4>>2]|0;k=7;break}}else{f[b>>2]=f[p>>2];k=p+4|0;f[b+4>>2]=f[k>>2];f[p>>2]=0;f[k>>2]=0;f[j>>2]=b+8;b=0;k=7}while(0);do if((k|0)==7){Aoa(b);while(1){h=f[j>>2]|0;b=h;if((h|0)==(f[i>>2]|0))break;g=f[b+-8>>2]|0;h=f[b+-4>>2]|0;if(h){b=h+4|0;f[b>>2]=(f[b>>2]|0)+1;b=f[j>>2]|0}e=0;while(1){if((e|0)==-1)break;r=e+-1|0;Aoa(f[b+(r<<3)+4>>2]|0);e=r}f[j>>2]=b+-8;x=0;ta(f[f[g>>2]>>2]|0,g|0);r=x;x=0;if(r&1){k=17;break}Aoa(h)}if((k|0)==17){b=Ia()|0;Aoa(h);break}aYa(f[(f[a+84>>2]|0)+104>>2]|0);i=a+16|0;Lma(p,f[a+20>>2]|0,f[a+24>>2]|0,f[a+32>>2]|0);J9(l,i);j=p+4|0;k=d+4|0;h=f[l+4>>2]|0;b=f[j>>2]|0;while(1){if((b|0)==(h|0))break;r=f[b>>2]|0;g=aSa(f[r+104>>2]|0)|0;if(Oab(f[r+8>>2]|0)|0?(f[g+4>>2]|0)!=5:0){e=f[o>>2]|0;if(!(f[k>>2]|0))e=NOa(e,0)|0;else e=k_a(f[e>>2]|0)|0;faa(g+12|0,e);tt(g)}b=b+4|0;f[j>>2]=b;e=f[p>>2]|0;if((b-(f[e>>2]|0)|0)==4096){b=e+4|0;f[p>>2]=b;b=f[b>>2]|0;f[j>>2]=b}}Gm(i,m);CSa(p,c,Cka(d,1)|0);b=aoa(f[a+64>>2]|0,p)|0;f[n>>2]=b;if(f[k>>2]|0?(f[b+4>>2]|0)==0:0){r=Ipa(p,b,k_a(f[p>>2]|0)|0)|0;f[n>>2]=r}jX(p);x=0;ua(1458,p+16|0,n|0);r=x;x=0;if(r&1){b=Ia()|0;uDa(p);break}else{uDa(p);u=q;return}}while(0);Ua(b|0)}function ij(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+64|0;m=z+16|0;A=z+48|0;r=z+44|0;s=z+40|0;t=z;v=z+36|0;w=z+32|0;do if(b[d+112>>0]|0){f[A>>2]=0;o=A+4|0;f[o>>2]=0;p=A+8|0;f[p>>2]=0;y=d+100|0;q=f[d+104>>2]|0;n=f[y>>2]|0;a:while(1){if((n|0)==(q|0)){c=4;break}k=n+4|0;l=n+8|0;a=f[l>>2]|0;c=f[k>>2]|0;e=a;while(1){if((e|0)==(c|0))break;a=a+-1|0;if(b[a>>0]|0)break;f[l>>2]=a;e=a}a=n$a(f[n>>2]|0)|0;b:do if(!a){a=f[o>>2]|0;if((a|0)==(f[p>>2]|0)){x=0;ua(2403,A|0,n|0);l=x;x=0;if(l&1){c=18;break a}else break}x=0;ua(2402,a|0,n|0);l=x;x=0;if(l&1){c=18;break a}f[o>>2]=(f[o>>2]|0)+16}else{x=0;j=ga(225,a+8|0)|0;i=x;x=0;if(i&1){c=19;break a}a=0;while(1){h=f[k>>2]|0;g=(f[l>>2]|0)-h|0;if(a>>>0>=g>>>0)break b;i=a;while(1){if(i>>>0>=g>>>0)break;if(b[h+i>>0]|0)break;i=i+1|0}a=i;c=i;while(1){if(!(a>>>0>>0&(a-c|0)>>>0<8))break;if(!(b[h+c>>0]|0)){B=(b[h+a>>0]|0)==0;e=a+(B&1)|0;c=B?c:a}else{c=c+1|0;e=c}a=e}if((c|0)!=(i|0)){_0a(s,d);t$a(t,i+j|0);x=0;f[m>>2]=f[t>>2];f[m+4>>2]=f[t+4>>2];f[m+8>>2]=f[t+8>>2];f[m+12>>2]=f[t+12>>2];g=ia(50,s|0,m|0)|0;B=x;x=0;if(B&1){c=34;break a}f[r>>2]=g;h=(f[k>>2]|0)+i|0;f[v>>2]=h;c=c-i|0;f[w>>2]=c;e=f[o>>2]|0;if(e>>>0>=(f[p>>2]|0)>>>0){x=0;wa(145,A|0,r|0,v|0,w|0);B=x;x=0;if(B&1){c=35;break a}}else{x=0;va(85,m|0,c|0,0);B=x;x=0;if(B&1){c=35;break a}x=0;wa(139,e|0,g|0,h|0,f[m>>2]|0);B=x;x=0;if(B&1){c=35;break a}f[o>>2]=(f[o>>2]|0)+16}}}}while(0);n=n+16|0}if((c|0)==4){d9(y,A);lca(A);break}else if((c|0)==18)a=Ia()|0;else if((c|0)==19)a=Ia()|0;else if((c|0)==34){a=Ia()|0;c=36}else if((c|0)==35){a=Ia()|0;c=36}lca(A);Ua(a|0)}while(0);u=z;return}function jj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==114:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){hY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;OJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3195,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,123524)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,o|0,123521)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,l|0,123272)|0;r=x;x=0;if(r&1){a=Ia()|0;MTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}RY(j,k);uA((f[i>>2]|0)+-24|0,j);OJa(j);MTa(k);MTa(l);MTa(m);MTa(o);MTa(p);MTa(q);a=h;break a}while(0);MTa(m)}MTa(o)}MTa(p)}MTa(q);Ua(a|0)}while(0);u=n;return a|0}function kj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==100:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){hY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;OJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3195,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,124424)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,o|0,123521)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,l|0,123272)|0;r=x;x=0;if(r&1){a=Ia()|0;MTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}RY(j,k);uA((f[i>>2]|0)+-24|0,j);OJa(j);MTa(k);MTa(l);MTa(m);MTa(o);MTa(p);MTa(q);a=h;break a}while(0);MTa(m)}MTa(o)}MTa(p)}MTa(q);Ua(a|0)}while(0);u=n;return a|0}function lj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){hY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;OJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3195,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,123508)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,o|0,123521)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,l|0,123272)|0;r=x;x=0;if(r&1){a=Ia()|0;MTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}RY(j,k);uA((f[i>>2]|0)+-24|0,j);OJa(j);MTa(k);MTa(l);MTa(m);MTa(o);MTa(p);MTa(q);a=h;break a}while(0);MTa(m)}MTa(o)}MTa(p)}MTa(q);Ua(a|0)}while(0);u=n;return a|0}function mj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+112|0;q=n+88|0;j=n+64|0;k=n+36|0;l=n+48|0;m=n+24|0;o=n+12|0;p=n;a:do if((((((c-a|0)>2?(b[a>>0]|0)==99:0)?(b[a+1>>0]|0)==99:0)?(r=a+2|0,e=Cc(r,c,d)|0,(e|0)!=(r|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){hY(q,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;r=a+-1|0;OJa(c+(r*24|0)|0);a=r}f[i>>2]=c+-24;x=0;ua(3195,p|0,c+-48|0);r=x;x=0;if(r&1)a=Ia()|0;else{x=0;ja(101,p|0,0,124441)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,o|0,123521)|0;r=x;x=0;if(r&1)a=Ia()|0;else{f[m>>2]=f[o>>2];f[m+4>>2]=f[o+4>>2];f[m+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}r=b[q+11>>0]|0;g=r<<24>>24<0;x=0;ja(97,m|0,(g?f[q>>2]|0:q)|0,(g?f[q+4>>2]|0:r&255)|0)|0;r=x;x=0;do if(r&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,l|0,123272)|0;r=x;x=0;if(r&1){a=Ia()|0;MTa(l);break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}RY(j,k);uA((f[i>>2]|0)+-24|0,j);OJa(j);MTa(k);MTa(l);MTa(m);MTa(o);MTa(p);MTa(q);a=h;break a}while(0);MTa(m)}MTa(o)}MTa(p)}MTa(q);Ua(a|0)}while(0);u=n;return a|0}function nj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;v=u;u=u+112|0;q=v+12|0;s=v+4|0;m=v+8|0;n=v;j=c+8|0;if(((((Qab(f[j>>2]|0)|0?(t=v$a(f[c+12>>2]|0)|0,(t|0)!=0):0)?(l=t+12|0,r=t+16|0,(Jbb(f[r>>2]|0)|0)>>>0>=2):0)?(d=RCa(l)|0,d=u$a(f[d>>2]|0)|0,(d|0)!=0):0)?VQa(d)|0:0)?(i=d+8|0,!(f2a(f[i>>2]|0,f[j>>2]|0)|0)):0){p=(Jbb(f[r>>2]|0)|0)+-2|0;e=f[a+36>>2]|0;Jbb(e)|0;_0a(s,e);e=q+26|0;c=a+40|0;while(1){d=ODa(l,p)|0;d=f[d>>2]|0;g=Z$a(d)|0;if(g|0){h=9;break}a=u$a(d)|0;if(a|0){h=21;break}gA(q,fZa(f[c>>2]|0)|0,d);g=(b[e>>0]|0)!=0;_7(q);if((p|0)==0|g){c=0;break}p=p+-1|0}a:do if((h|0)==9){c=g+16|0;d=f[c>>2]|0;if(!d){if((f[(f[g+12>>2]|0)+4>>2]|0)!=5){c=0;break}s=GB(s,t,p+1|0,Jbb(f[r>>2]|0)|0)|0;f[c>>2]=s;NI(g);tt(t);c=1;break}if(v2a(f[g+4>>2]|0)|0)Ca(91254,91094,360,91281);f[q>>2]=s;a=g+12|0;e=f[a>>2]|0;do if((f[e+4>>2]|0)!=5)if((f[d+4>>2]|0)==5){s=Sx(q,e,GB(s,t,p+1|0,Jbb(f[r>>2]|0)|0)|0)|0;f[a>>2]=s;NI(g);tt(t);break}else{c=0;break a}else{s=Sx(q,d,GB(s,t,p+1|0,Jbb(f[r>>2]|0)|0)|0)|0;f[c>>2]=s;NI(g);tt(t)}while(0);c=1}else if((h|0)==21){d=a+16|0;c=f[d>>2]|0;if(((c|0)!=0?(f[a+12>>2]|0)==0:0)?(o=a+8|0,k=f[o>>2]|0,f2a(k,f[j>>2]|0)|0):0){if((p|0)==((Jbb(f[r>>2]|0)|0)+-2|0)){c=rBa(f[s>>2]|0,20,c)|0;f[d>>2]=c;f[i>>2]=f[o>>2];f[o>>2]=f[j>>2];c=1;break}c=f[t+8>>2]|0;if(g2a(k,c)|0?(f[m>>2]=c,f[q>>2]=f[m>>2],(RM(t,q)|0)==1):0){m=f[d>>2]|0;f[n>>2]=f[o>>2];f[q>>2]=f[n>>2];c=Vma(s,q,0,0)|0;t=Hqa(s,m,c,GB(s,t,p+1|0,Jbb(f[r>>2]|0)|0)|0)|0;c=ODa(l,p)|0;f[c>>2]=t;c=1}else c=0}else c=0}while(0)}else c=0;u=v;return c|0}function oj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1215,b);d=(aSa(c)|0)+8|0;if(Qab(f[d>>2]|0)|0)tS(a,1216,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1214,ODa(d,b)|0);c=b}}case 2:{tS(a,1217,b);tS(a,1216,b);qO(a,(vSa(c)|0)+16|0);tS(a,1216,b);tS(a,1214,(vSa(c)|0)+12|0);tS(a,1216,b);tS(a,1214,(vSa(c)|0)+8|0);break}case 3:{tS(a,1218,b);tS(a,1214,(lSa(c)|0)+12|0);tS(a,1216,b);break}case 4:{tS(a,1219,b);tS(a,1216,b);qO(a,($Ra(c)|0)+16|0);qO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1220,b);tS(a,1216,b);qO(a,(NRa(c)|0)+32|0);tS(a,1214,(NRa(c)|0)+28|0);break}case 20:{tS(a,1221,b);tS(a,1216,b);qO(a,(ERa(c)|0)+8|0);break}case 23:{tS(a,1222,b);tS(a,1216,b);break}default:Be(a,b)}while(0);return}function pj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1120,b);d=(aSa(c)|0)+8|0;if(Qab(f[d>>2]|0)|0)tS(a,1121,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1119,ODa(d,b)|0);c=b}}case 2:{tS(a,1122,b);tS(a,1121,b);rO(a,(vSa(c)|0)+16|0);tS(a,1121,b);tS(a,1119,(vSa(c)|0)+12|0);tS(a,1121,b);tS(a,1119,(vSa(c)|0)+8|0);break}case 3:{tS(a,1123,b);tS(a,1119,(lSa(c)|0)+12|0);tS(a,1121,b);break}case 4:{tS(a,1124,b);tS(a,1121,b);rO(a,($Ra(c)|0)+16|0);rO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1125,b);tS(a,1121,b);rO(a,(NRa(c)|0)+32|0);tS(a,1119,(NRa(c)|0)+28|0);break}case 20:{tS(a,1126,b);tS(a,1121,b);rO(a,(ERa(c)|0)+8|0);break}case 23:{tS(a,1127,b);tS(a,1121,b);break}default:Ce(a,b)}while(0);return}function qj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+160|0;k=p+120|0;j=p+144|0;g=p+104|0;h=p+88|0;l=p+40|0;i=p;m=p+140|0;n=p+136|0;o=p+72|0;d=p+56|0;e=p+24|0;a:do switch(f[c+8>>2]|0){case 0:{t$a(g,65536);f[k>>2]=f[g>>2];f[k+4>>2]=f[g+4>>2];f[k+8>>2]=f[g+8>>2];f[k+12>>2]=f[g+12>>2];wAa(a,k);break}case 1:{t$a(h,Jbb(f[(f[b+4>>2]|0)+32>>2]|0)|0);f[k>>2]=f[h>>2];f[k+4>>2]=f[h+4>>2];f[k+8>>2]=f[h+8>>2];f[k+12>>2]=f[h+12>>2];wAa(a,k);break}case 2:{t$a(l,-1);h=ODa(c+16|0,0)|0;Ou(i,b,f[h>>2]|0);do if(!(K0a(i)|0)){c=b+4|0;g=Jbb(f[(f[c>>2]|0)+32>>2]|0)|0;b=TRa(i)|0;if(b>>>0>65535){f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];wAa(a,k);break}d=f[c>>2]|0;e=Jbb(f[d+32>>2]|0)|0;if(e>>>0>=~b>>>0){f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];wAa(a,k);break}b=e+b|0;if(b>>>0>(Jbb(f[(f[d>>2]|0)+96>>2]|0)|0)>>>0){f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];f[k+12>>2]=f[l+12>>2];wAa(a,k);break}else{l=f[d+36>>2]|0;i=f[(f[l>>2]|0)+16>>2]|0;hLa(m,e<<16,0);hLa(n,b<<16,0);f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];qc[i&255](l,j,k);wHa((f[c>>2]|0)+32|0,b,0)|0;t$a(o,g);f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];f[k+12>>2]=f[o+12>>2];wAa(a,k);break}}else{f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];f[a+16>>2]=f[i+16>>2];f[a+20>>2]=f[i+20>>2]}while(0);break}case 3:if(g2a(f[c+12>>2]|0,f[33119]|0)|0){t$a(d,1);f[k>>2]=f[d>>2];f[k+4>>2]=f[d+4>>2];f[k+8>>2]=f[d+8>>2];f[k+12>>2]=f[d+12>>2];wAa(a,k);break a}else{t$a(e,0);f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];wAa(a,k);break a}default:hb()}while(0);u=p;return}function rj(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+128|0;j=q;s=q+112|0;m=q+104|0;r=q+100|0;k=q+120|0;f[s>>2]=j;f[s+4>>2]=513;dYa(r,g);a=f[r>>2]|0;x=0;l=ia(73,a|0,134880)|0;o=x;x=0;if(o&1){a=Ia()|0;e=s}else{b[k>>0]=0;n=f[d>>2]|0;o=n;x=0;a=ra(1,c|0,o|0,e|0,a|0,f[g+4>>2]|0,h|0,k|0,l|0,s|0,m|0,j+100|0)|0;g=x;x=0;a:do if(g&1)p=11;else{if(a){a=i+11|0;if((b[a>>0]|0)<0){Z0a(f[i>>2]|0,0);f[i+4>>2]=0}else{Z0a(i,0);b[a>>0]=0}if(b[k>>0]|0){x=0;a=ia(f[(f[l>>2]|0)+28>>2]|0,l|0,45)|0;k=x;x=0;if(k&1){p=11;break}x=0;ua(82,i|0,a|0);k=x;x=0;if(k&1){p=11;break}}x=0;g=ia(f[(f[l>>2]|0)+28>>2]|0,l|0,48)|0;l=x;x=0;if(l&1){a=Ia()|0;break}j=f[m>>2]|0;e=j+-1|0;a=f[s>>2]|0;while(1){if(a>>>0>=e>>>0)break;if((b[a>>0]|0)!=g<<24>>24)break;a=a+1|0}x=0;ja(94,i|0,a|0,j|0)|0;i=x;x=0;if(i&1){a=Ia()|0;break}}a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){p=11;break a}}else a=d7a(b[j>>0]|0)|0;if(g2a(a,-1)|0){f[c>>2]=0;j=1;break}else{j=(f[c>>2]|0)==0;break}}else j=1;while(0);do if(n){a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0)){x=0;a=ga(f[(f[n>>2]|0)+36>>2]|0,o|0)|0;o=x;x=0;if(o&1){p=11;break a}}else a=d7a(b[a>>0]|0)|0;if(!(g2a(a,-1)|0))if(j)break;else{p=35;break}else{f[d>>2]=0;p=33;break}}else p=33;while(0);if((p|0)==33?j:0)p=35;if((p|0)==35)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;OCa(r);a=f[s>>2]|0;f[s>>2]=0;if(a|0?(x=0,ta(f[s+4>>2]|0,a|0),s=x,x=0,s&1):0){s=Ja(0)|0;y2a(s)}u=q;return j|0}while(0);if((p|0)==11)a=Ia()|0;e=s;j=f[s>>2]|0}OCa(r);f[e>>2]=0;if(j|0?(x=0,ta(f[s+4>>2]|0,j|0),s=x,x=0,s&1):0){s=Ja(0)|0;y2a(s)}Ua(a|0);return 0}function sj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,995,b);d=(aSa(c)|0)+8|0;if(Qab(f[d>>2]|0)|0)tS(a,996,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,994,ODa(d,b)|0);c=b}}case 2:{tS(a,997,b);tS(a,996,b);yO(a,(vSa(c)|0)+16|0);tS(a,996,b);tS(a,994,(vSa(c)|0)+12|0);tS(a,996,b);tS(a,994,(vSa(c)|0)+8|0);break}case 3:{tS(a,998,b);tS(a,994,(lSa(c)|0)+12|0);tS(a,996,b);break}case 4:{tS(a,999,b);tS(a,996,b);yO(a,($Ra(c)|0)+16|0);yO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1e3,b);tS(a,996,b);yO(a,(NRa(c)|0)+32|0);tS(a,994,(NRa(c)|0)+28|0);break}case 20:{tS(a,1001,b);tS(a,996,b);yO(a,(ERa(c)|0)+8|0);break}case 23:{tS(a,1002,b);tS(a,996,b);break}default:Ke(a,b)}while(0);return}function tj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,900,b);d=(aSa(c)|0)+8|0;if(Qab(f[d>>2]|0)|0)tS(a,901,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,899,ODa(d,b)|0);c=b}}case 2:{tS(a,902,b);tS(a,901,b);xO(a,(vSa(c)|0)+16|0);tS(a,901,b);tS(a,899,(vSa(c)|0)+12|0);tS(a,901,b);tS(a,899,(vSa(c)|0)+8|0);break}case 3:{tS(a,903,b);tS(a,899,(lSa(c)|0)+12|0);tS(a,901,b);break}case 4:{tS(a,904,b);tS(a,901,b);xO(a,($Ra(c)|0)+16|0);xO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,905,b);tS(a,901,b);xO(a,(NRa(c)|0)+32|0);tS(a,899,(NRa(c)|0)+28|0);break}case 20:{tS(a,906,b);tS(a,901,b);xO(a,(ERa(c)|0)+8|0);break}case 23:{tS(a,907,b);tS(a,901,b);break}default:Le(a,b)}while(0);return}function uj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,775,b);d=(aSa(c)|0)+8|0;if(Qab(f[d>>2]|0)|0)tS(a,776,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,774,ODa(d,b)|0);c=b}}case 2:{tS(a,777,b);tS(a,776,b);zO(a,(vSa(c)|0)+16|0);tS(a,776,b);tS(a,774,(vSa(c)|0)+12|0);tS(a,776,b);tS(a,774,(vSa(c)|0)+8|0);break}case 3:{tS(a,778,b);tS(a,774,(lSa(c)|0)+12|0);tS(a,776,b);break}case 4:{tS(a,779,b);tS(a,776,b);zO(a,($Ra(c)|0)+16|0);zO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,780,b);tS(a,776,b);zO(a,(NRa(c)|0)+32|0);tS(a,774,(NRa(c)|0)+28|0);break}case 20:{tS(a,781,b);tS(a,776,b);zO(a,(ERa(c)|0)+8|0);break}case 23:{tS(a,782,b);tS(a,776,b);break}default:Me(a,b)}while(0);return}function vj(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+432|0;j=q;s=q+408|0;m=q+404|0;r=q+400|0;k=q+416|0;f[s>>2]=j;f[s+4>>2]=513;dYa(r,g);a=f[r>>2]|0;x=0;l=ia(73,a|0,134912)|0;o=x;x=0;if(o&1){a=Ia()|0;e=s}else{b[k>>0]=0;n=f[d>>2]|0;o=n;x=0;a=ra(2,c|0,o|0,e|0,a|0,f[g+4>>2]|0,h|0,k|0,l|0,s|0,m|0,j+400|0)|0;g=x;x=0;a:do if(g&1)p=11;else{if(a){a=i+8+3|0;if((b[a>>0]|0)<0){L1a(f[i>>2]|0,0);f[i+4>>2]=0}else{L1a(i,0);b[a>>0]=0}if(b[k>>0]|0){x=0;a=ia(f[(f[l>>2]|0)+44>>2]|0,l|0,45)|0;k=x;x=0;if(k&1){p=11;break}x=0;ua(3189,i|0,a|0);k=x;x=0;if(k&1){p=11;break}}x=0;g=ia(f[(f[l>>2]|0)+44>>2]|0,l|0,48)|0;l=x;x=0;if(l&1){a=Ia()|0;break}j=f[m>>2]|0;e=j+-4|0;a=f[s>>2]|0;while(1){if(a>>>0>=e>>>0)break;if((f[a>>2]|0)!=(g|0))break;a=a+4|0}x=0;ja(95,i|0,a|0,j|0)|0;i=x;x=0;if(i&1){a=Ia()|0;break}}a=f[c>>2]|0;do if(a){j=f[a+12>>2]|0;if((j|0)==(f[a+16>>2]|0)){x=0;a=ga(f[(f[a>>2]|0)+36>>2]|0,a|0)|0;i=x;x=0;if(i&1){p=11;break a}}else a=Jbb(f[j>>2]|0)|0;if($5a(a)|0){f[c>>2]=0;j=1;break}else{j=(f[c>>2]|0)==0;break}}else j=1;while(0);do if(n){a=f[o+12>>2]|0;if((a|0)==(f[o+16>>2]|0)){x=0;a=ga(f[(f[n>>2]|0)+36>>2]|0,o|0)|0;o=x;x=0;if(o&1){p=11;break a}}else a=Jbb(f[a>>2]|0)|0;if(!($5a(a)|0))if(j)break;else{p=35;break}else{f[d>>2]=0;p=33;break}}else p=33;while(0);if((p|0)==33?j:0)p=35;if((p|0)==35)f[h>>2]=f[h>>2]|2;j=f[c>>2]|0;OCa(r);a=f[s>>2]|0;f[s>>2]=0;if(a|0?(x=0,ta(f[s+4>>2]|0,a|0),s=x,x=0,s&1):0){s=Ja(0)|0;y2a(s)}u=q;return j|0}while(0);if((p|0)==11)a=Ia()|0;e=s;j=f[s>>2]|0}OCa(r);f[e>>2]=0;if(j|0?(x=0,ta(f[s+4>>2]|0,j|0),s=x,x=0,s&1):0){s=Ja(0)|0;y2a(s)}Ua(a|0);return 0}function wj(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;y=u;u=u+464|0;E=y+456|0;t=y+460|0;v=y+452|0;w=y+448|0;A=y+436|0;B=y+424|0;C=y+412|0;m=y+408|0;o=y;q=y+404|0;r=y+400|0;dYa(E,e);j=f[E>>2]|0;x=0;s=ia(73,j|0,134912)|0;p=x;x=0;a:do if(p&1)a=Ia()|0;else{k=h+8+3|0;p=b[k>>0]|0;a=p<<24>>24<0;l=h+4|0;do if((a?f[l>>2]|0:p&255)|0){a=f[(a?f[h>>2]|0:h)>>2]|0;x=0;i=ia(f[(f[s>>2]|0)+44>>2]|0,s|0,45)|0;p=x;x=0;if(p&1){a=Ia()|0;break a}else{p=(a|0)==(i|0);break}}else p=0;while(0);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[C+(a<<2)>>2]=0;a=a+1|0}x=0;Aa(4,d|0,p|0,j|0,t|0,v|0,w|0,A|0,B|0,C|0,m|0);n=x;x=0;if(n&1)a=Ia()|0;else{d=b[k>>0]|0;n=d<<24>>24<0;d=n?f[l>>2]|0:d&255;k=f[m>>2]|0;if((d|0)>(k|0)){j=b[C+8+3>>0]|0;a=b[B+8+3>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+1+(d-k<<1)|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}else{j=b[C+8+3>>0]|0;a=b[B+8+3>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+2|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}a=i+j+a|0;if(a>>>0>100){a=Kc(a<<2)|0;i=a;if(!a){x=0;sa(10);x=0;a=Ia()|0}else D=24}else{a=o;i=0;D=24}if((D|0)==24){D=n?f[h>>2]|0:h;x=0;Ba(2,a|0,q|0,r|0,f[e+4>>2]|0,D|0,D+(d<<2)|0,s|0,p|0,t|0,f[v>>2]|0,f[w>>2]|0,A|0,B|0,C|0,k|0);D=x;x=0;if(!(D&1)?(x=0,z=oa(47,f[c>>2]|0,a|0,f[q>>2]|0,f[r>>2]|0,e|0,g|0)|0,D=x,x=0,!(D&1)):0){if(i|0)rg(i);oTa(C);oTa(B);MTa(A);OCa(E);u=y;return z|0}a=Ia()|0}if(i|0)rg(i)}oTa(C);oTa(B);MTa(A)}while(0);OCa(E);Ua(a|0);return 0}function xj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;a:do if((b[a+26>>0]|0)==0?(b[c+26>>0]|0)==0:0){if(!((b[a+77>>0]|0)==0?!(b[a+27>>0]|0):0))j=5;if((j|0)==5?LMa(c)|0:0){d=1;break}if(LMa(a)|0){if(b[c+77>>0]|0){d=1;break}if(b[c+27>>0]|0){d=1;break}}if(b[a+79>>0]|0?LMa(c)|0:0){d=1;break}if(b[c+79>>0]|0?LMa(a)|0:0){d=1;break}g=a+44|0;i=c+40|0;h=c+28|0;e=f[a+40>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e+16>>2]|0;if(rfa(i,d)|0){d=1;break a}if(rfa(h,d)|0){d=1;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}g=a+32|0;e=f[a+28>>2]|0;while(1){if((e|0)==(g|0))break;if(rfa(i,f[e+16>>2]|0)|0){d=1;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}if(j$a(f[a+60>>2]|0,f[a+72>>2]|0)|0?b[c+27>>0]|0:0){d=1;break}if(j$a(f[c+60>>2]|0,f[c+72>>2]|0)|0?b[a+27>>0]|0:0){d=1;break}g=a+68|0;i=c+64|0;h=c+52|0;e=f[a+64>>2]|0;while(1){if((e|0)==(g|0))break;f[k>>2]=f[e+16>>2];if(P5(i,k)|0){j=49;break}if(P5(h,k)|0){j=49;break}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}if((j|0)==49){d=1;break}g=a+56|0;e=f[a+52>>2]|0;while(1){if((e|0)==(g|0))break;f[k>>2]=f[e+16>>2];if(P5(i,k)|0){d=1;break a}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}d=(b[c+78>>0]|0)==0;if(b[a+78>>0]|0?aEa(c)|0:0){d=1;break}if(!d?aEa(a)|0:0){d=1;break}d=0}else d=1;while(0);u=l;return d|0}function yj(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;i=u;u=u+64|0;d=i+36|0;l=i+40|0;e=i+24|0;j=i+12|0;k=i;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,79523,j7a(79523)|0);g=a+4|0;x=0;c=ga(228,f[g>>2]|0)|0;n=x;x=0;a:do if(!(n&1)?(x=0,ia(59,l|0,c|0)|0,n=x,x=0,!(n&1)):0){x=0;ua(1283,k|0,h[a+8>>0]|0);n=x;x=0;if(n&1)c=Ia()|0;else{x=0;ia(83,k|0,108287)|0;n=x;x=0;if(n&1)c=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];c=0;while(1){if((c|0)==3)break;f[k+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,j|0,108287)|0;n=x;x=0;do if(n&1)c=Ia()|0;else{f[e>>2]=f[j>>2];f[e+4>>2]=f[j+4>>2];f[e+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}n=b[e+11>>0]|0;c=n<<24>>24<0;x=0;ja(49,l|0,(c?f[e>>2]|0:e)|0,(c?f[e+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){c=Ia()|0;MTa(e);break}MTa(e);MTa(j);MTa(k);if((!(t6a(f[g>>2]|0)|0)?(b[a+9>>0]|0)==0:0)?(x=0,ia(59,l|0,79539)|0,n=x,x=0,n&1):0){m=16;break a}b:do if(b[a+20>>0]|0){x=0;ia(59,l|0,79521)|0;n=x;x=0;if(n&1){m=16;break a}}else{n=Jbb(f[a+16>>2]|0)|0;x=0;ua(91,e|0,n|0);n=x;x=0;do if(!(n&1)){n=b[e+11>>0]|0;k=n<<24>>24<0;x=0;ja(49,l|0,(k?f[e>>2]|0:e)|0,(k?f[e+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){c=Ia()|0;MTa(e);break}else{MTa(e);break b}}else c=Ia()|0;while(0);break a}while(0);x=0;ua(83,d|0,l|0);n=x;x=0;if(n&1){m=16;break a}MTa(l);u=i;return f[d>>2]|0}while(0);MTa(j)}MTa(k)}}else m=16;while(0);if((m|0)==16)c=Ia()|0;MTa(l);Ua(c|0);return 0}function zj(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;y=u;u=u+160|0;E=y+148|0;t=y+156|0;v=y+153|0;w=y+152|0;A=y+136|0;B=y+124|0;C=y+112|0;m=y+108|0;o=y;q=y+104|0;r=y+100|0;dYa(E,e);j=f[E>>2]|0;x=0;s=ia(73,j|0,134880)|0;p=x;x=0;a:do if(p&1)a=Ia()|0;else{k=h+11|0;p=b[k>>0]|0;a=p<<24>>24<0;l=h+4|0;do if((a?f[l>>2]|0:p&255)|0){a=b[(a?f[h>>2]|0:h)>>0]|0;x=0;i=ia(f[(f[s>>2]|0)+28>>2]|0,s|0,45)|0;p=x;x=0;if(p&1){a=Ia()|0;break a}else{p=a<<24>>24==i<<24>>24;break}}else p=0;while(0);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[A+(a<<2)>>2]=0;a=a+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[C+(a<<2)>>2]=0;a=a+1|0}x=0;Aa(3,d|0,p|0,j|0,t|0,v|0,w|0,A|0,B|0,C|0,m|0);n=x;x=0;if(n&1)a=Ia()|0;else{d=b[k>>0]|0;n=d<<24>>24<0;d=n?f[l>>2]|0:d&255;k=f[m>>2]|0;if((d|0)>(k|0)){j=b[C+11>>0]|0;a=b[B+11>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+1+(d-k<<1)|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}else{j=b[C+11>>0]|0;a=b[B+11>>0]|0;a=a<<24>>24<0?f[B+4>>2]|0:a&255;i=k+2|0;j=j<<24>>24<0?f[C+4>>2]|0:j&255}a=i+j+a|0;if(a>>>0>100){a=Kc(a)|0;i=a;if(!a){x=0;sa(10);x=0;a=Ia()|0}else D=24}else{a=o;i=0;D=24}if((D|0)==24){D=n?f[h>>2]|0:h;x=0;Ba(1,a|0,q|0,r|0,f[e+4>>2]|0,D|0,D+d|0,s|0,p|0,t|0,b[v>>0]|0,b[w>>0]|0,A|0,B|0,C|0,k|0);D=x;x=0;if(!(D&1)?(x=0,z=oa(39,f[c>>2]|0,a|0,f[q>>2]|0,f[r>>2]|0,e|0,g|0)|0,D=x,x=0,!(D&1)):0){if(i|0)rg(i);MTa(C);MTa(B);MTa(A);OCa(E);u=y;return z|0}a=Ia()|0}if(i|0)rg(i)}MTa(C);MTa(B);MTa(A)}while(0);OCa(E);Ua(a|0);return 0}function Aj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=DCa(134176,110810)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);e=c+4|0;d=f[e>>2]|0;a:do if((d|0)!=5){b:do if(!(b[c+20>>0]|0))switch(d|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?45:44)|0;break b}case 2:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?47:46)|0;break b}case 4:{Gv(f[a+28>>2]|0,40)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?49:48)|0;break b}case 2:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?51:50)|0;break b}case 4:{Gv(f[a+28>>2]|0,(b[c+9>>0]|0)==0?53:52)|0;break b}case 8:{Gv(f[a+28>>2]|0,41)|0;break b}default:hb()}break}case 3:{Gv(f[a+28>>2]|0,42)|0;break b}case 4:{Gv(f[a+28>>2]|0,43)|0;break b}default:hb()}else{d=a+28|0;Gv(f[d>>2]|0,-2)|0;switch(f[e>>2]|0){case 5:break a;case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,18)|0;break b}case 2:{Gv(f[d>>2]|0,19)|0;break b}case 4:{Gv(f[d>>2]|0,16)|0;break b}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,20)|0;break b}case 2:{Gv(f[d>>2]|0,21)|0;break b}case 4:{Gv(f[d>>2]|0,22)|0;break b}case 8:{Gv(f[d>>2]|0,17)|0;break b}default:hb()}break}default:hb()}}while(0);i=Jbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;FX(a,i,k,Jbb(f[c+12>>2]|0)|0)}while(0);u=j;return}function Bj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0;E=u;u=u+96|0;g=E+32|0;H=E+80|0;G=E+64|0;F=E+48|0;r=E+16|0;y=E;D=b+12|0;UN(H,a,f[D>>2]|0);x=0;va(159,G|0,a|0,1);h=x;x=0;if(h&1)b=Ia()|0;else{x=0;va(159,F|0,a|0,1);h=x;x=0;if(h&1)b=Ia()|0;else{h=b+8|0;switch(f[h>>2]|0){case 40:case 39:{d=36;e=8;break}case 42:case 41:{d=38;e=8;break}default:{x=0;sa(5);x=0;b=Ia()|0;c=I}}if((e|0)==8){e=a+44|0;b=f[e>>2]|0;x=0;c=ga(320,G|0)|0;J=x;x=0;a:do if(((((((((((((!(J&1)?(x=0,i=ja(45,b|0,c|0,f[D>>2]|0)|0,J=x,x=0,!(J&1)):0)?(j=f[e>>2]|0,x=0,k=ga(320,F|0)|0,J=x,x=0,!(J&1)):0)?(l=f[e>>2]|0,t$a(r,0),x=0,f[g>>2]=f[r>>2],f[g+4>>2]=f[r+4>>2],f[g+8>>2]=f[r+8>>2],f[g+12>>2]=f[r+12>>2],l=ia(50,l|0,g|0)|0,J=x,x=0,!(J&1)):0)?(x=0,m=ja(45,j|0,k|0,l|0)|0,J=x,x=0,!(J&1)):0)?(n=f[e>>2]|0,x=0,o=ga(320,G|0)|0,J=x,x=0,!(J&1)):0)?(x=0,p=ja(46,f[n>>2]|0,o|0,1)|0,J=x,x=0,!(J&1)):0)?(x=0,q=ja(53,f[n>>2]|0,38,p|0)|0,J=x,x=0,!(J&1)):0)?(s=f[e>>2]|0,pqa(y,4294967296.0),x=0,f[g>>2]=f[y>>2],f[g+4>>2]=f[y+4>>2],f[g+8>>2]=f[y+8>>2],f[g+12>>2]=f[y+12>>2],t=ia(50,s|0,g|0)|0,J=x,x=0,!(J&1)):0)?(v=f[e>>2]|0,x=0,w=ga(320,H|0)|0,J=x,x=0,!(J&1)):0)?(x=0,z=ja(46,f[v>>2]|0,w|0,1)|0,J=x,x=0,!(J&1)):0)?(x=0,A=ja(53,f[v>>2]|0,d|0,z|0)|0,J=x,x=0,!(J&1)):0)?(x=0,B=ka(7,f[s>>2]|0,65,t|0,A|0)|0,J=x,x=0,!(J&1)):0)?(x=0,C=ka(7,f[n>>2]|0,63,q|0,B|0)|0,J=x,x=0,!(J&1)):0){x=0;b=ka(29,b|0,i|0,m|0,C|0)|0;J=x;x=0;if(J&1)break;switch(f[h>>2]|0){case 41:case 39:{x=0;b=ja(53,f[f[e>>2]>>2]|0,44,b|0)|0;J=x;x=0;if(J&1)break a;break}default:{}}GVa(f[a+16>>2]|0,b)|0;MCa(F);MCa(G);MCa(H);u=E;return}while(0);b=Ia()|0}MCa(F)}MCa(G)}MCa(H);Ua(b|0)}function Cj(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;o=p+16|0;j=p;k=p+4|0;m=a+12|0;do if(b[m>>0]|0){e=DCa(134176,96205)|0;dYa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[o>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,i=x,x=0,!(i&1)):0){OCa(o);Wq(e,d)|0;fu(e)|0;break}p=Ia()|0;OCa(o);Ua(p|0)}while(0);b[a+200>>0]=0;d=a+192|0;e=a+196|0;g=a+188|0;while(1){h=ld(a,j)|0;i=f[j>>2]|0;if(!i){c=8;break}c=f[d>>2]|0;if((c|0)==(f[e>>2]|0))LL(g,j);else{f[c>>2]=i;f[d>>2]=(f[d>>2]|0)+4}if((f[(f[j>>2]|0)+4>>2]|0)==5){c=17;break}}a:do if((c|0)==8){f[a+204>>2]=h;if(!(b[m>>0]|0))break;c=DCa(134176,96227)|0;dYa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[o>>2]|0,134880)|0;a=x;x=0;if(!(a&1)?(x=0,l=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,a=x,x=0,!(a&1)):0){OCa(o);Wq(c,l)|0;fu(c)|0;break}p=Ia()|0;OCa(o);Ua(p|0)}else if((c|0)==17){g=a+36|0;c=f[g>>2]|0;do if((c|0)==(f[a+128>>2]|0)){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_Z(k,96258,j7a(96258)|0);x=0;ua(1870,a|0,k|0);l=x;x=0;if(l&1){p=Ia()|0;MTa(k);Ua(p|0)}else{MTa(k);c=f[g>>2]|0;break}}while(0);l=b[(f[f[a+8>>2]>>2]|0)+c>>0]|0;e=l<<24>>24;switch(l<<24>>24){case 5:case 11:break;default:{wl(a);break a}}do if(b[m>>0]|0){c=DCa(134176,96305)|0;dYa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[o>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,n=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(o);Wq(c,n)|0;fu(c)|0;c=f[g>>2]|0;break}p=Ia()|0;OCa(o);Ua(p|0)}while(0);f[a+204>>2]=e;f[g>>2]=c+1}while(0);u=p;return}function Dj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=DCa(134176,110795)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);oGa(a,f[c+24>>2]|0);oGa(a,f[c+28>>2]|0);if((f[c+4>>2]|0)==5)iTa(f[a+28>>2]|0);else{a:do if(!(b[c+20>>0]|0))switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,58)|0;break a}case 2:{Gv(f[a+28>>2]|0,59)|0;break a}case 4:{Gv(f[a+28>>2]|0,54)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,60)|0;break a}case 2:{Gv(f[a+28>>2]|0,61)|0;break a}case 4:{Gv(f[a+28>>2]|0,62)|0;break a}case 8:{Gv(f[a+28>>2]|0,55)|0;break a}default:hb()}break}case 3:{Gv(f[a+28>>2]|0,56)|0;break a}case 4:{Gv(f[a+28>>2]|0,57)|0;break a}default:hb()}else{d=a+28|0;Gv(f[d>>2]|0,-2)|0;switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,25)|0;break a}case 2:{Gv(f[d>>2]|0,26)|0;break a}case 4:{Gv(f[d>>2]|0,23)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,27)|0;break a}case 2:{Gv(f[d>>2]|0,28)|0;break a}case 4:{Gv(f[d>>2]|0,29)|0;break a}case 8:{Gv(f[d>>2]|0,24)|0;break a}default:hb()}break}default:hb()}}while(0);i=Jbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;FX(a,i,k,Jbb(f[c+12>>2]|0)|0)}u=j;return}function Ej(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;l=m+16|0;k=m;a:do if((c-a|0)>1?(b[a>>0]|0)==84:0){e=b[a+1>>0]|0;do if(e<<24>>24==95){e=f[d+36>>2]|0;if((f[d+32>>2]|0)==(e|0))break a;g=f[e+-16>>2]|0;if((g|0)==(f[e+-12>>2]|0)){m4(l);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);k=x;x=0;if(k&1){a=Ia()|0;OJa(l);break}}else{CY(g,l);f[e>>2]=(f[e>>2]|0)+24}OJa(l);b[d+62>>0]=1;a=a+2|0;break a}h=f[g+4>>2]|0;c=d+4|0;i=d+8|0;e=f[g>>2]|0;while(1){if((e|0)==(h|0))break;g=f[c>>2]|0;if((g|0)==(f[i>>2]|0))Qz(d,e);else{C6(g,e);f[c>>2]=(f[c>>2]|0)+24}e=e+24|0}a=a+2|0;break a}else{e=(e<<24>>24)+-48|0;if(e>>>0>=10)break a;j=a+2|0;while(1){if((j|0)==(c|0))break a;g=b[j>>0]|0;h=(g<<24>>24)+-48|0;if(h>>>0>=10)break;e=h+(e*10|0)|0;j=j+1|0}if(g<<24>>24!=95)break a;g=f[d+36>>2]|0;if((f[d+32>>2]|0)==(g|0))break a;e=e+1|0;c=f[g+-16>>2]|0;i=c;if(e>>>0>=(f[g+-12>>2]|0)-c>>4>>>0){g=j+1|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;UM(k,a,g);RY(l,k);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);j=x;x=0;if(j&1){a=Ia()|0;OJa(l);MTa(k);break}}else{CY(e,l);f[a>>2]=(f[a>>2]|0)+24}OJa(l);MTa(k);b[d+62>>0]=1;a=g;break a}g=f[i+(e<<4)+4>>2]|0;h=d+4|0;c=d+8|0;a=f[i+(e<<4)>>2]|0;while(1){if((a|0)==(g|0))break;e=f[h>>2]|0;if((e|0)==(f[c>>2]|0))Qz(d,a);else{C6(e,a);f[h>>2]=(f[h>>2]|0)+24}a=a+24|0}a=j+1|0;break a}while(0);Ua(a|0)}while(0);u=m;return a|0} +function ZB(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=a+44|0;a=f[h>>2]|0;c=QPa(c)|0;c=SKa(f[a>>2]|0,c,1)|0;i=f[h>>2]|0;e=QPa(e)|0;e=SKa(f[i>>2]|0,e,1)|0;e=Kpa(f[a>>2]|0,15,c,e)|0;c=f[h>>2]|0;d=QPa(d)|0;d=SKa(f[c>>2]|0,d,1)|0;h=f[h>>2]|0;g=QPa(g)|0;g=SKa(f[h>>2]|0,g,1)|0;g=Kpa(f[c>>2]|0,15,d,g)|0;return J$(a,b,Kpa(f[a>>2]|0,7,e,g)|0)|0}function _B(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h+8|0;c=h;d=a+4|0;yPa(f[d>>2]|0,75634)|0;e=b+8|0;Q$a(g,e);LUa(c,e);e=g+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(qTa(f[g>>2]|0,f[e>>2]|0,a,c)|0))break;i=QOa(g)|0;j=Ema(f[d>>2]|0,32)|0;Bfa(j,f[i>>2]|0)|0;YYa(g)}j=Ema(f[d>>2]|0,32)|0;Bfa(j,f[b+24>>2]|0)|0;u=h;return}function $B(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=Ry(a,b,c)|0;e=f[d>>2]|0;g=f[c>>2]|0;if($Pa(e,g)|0){f[c>>2]=e;f[d>>2]=g;d=h+1|0;e=f[c>>2]|0;g=f[b>>2]|0;if($Pa(e,g)|0){f[b>>2]=e;f[c>>2]=g;d=f[b>>2]|0;e=f[a>>2]|0;if($Pa(d,e)|0){f[a>>2]=d;f[b>>2]=e;d=h+3|0}else d=h+2|0}}else d=h;return d|0}function aC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=BF(c,h,d)|0;d=f[g>>2]|0;if(!d){P0(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function bC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;g=i;if(!(b[c>>0]|0))DCa(a,f[c+20>>2]|0)|0;else{Ema(a,40)|0;d=c+4|0;Q$a(h,d);LUa(g,d);d=h+4|0;e=f[g>>2]|0;c=f[g+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[d>>2]|0,e,c)|0))break;g=QOa(h)|0;g=f[g>>2]|0;bC(Ema(a,32)|0,g)|0;YYa(h)}DCa(a,118684)|0}u=i;return a|0}function cC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+48|0;d=i+16|0;j=i+36|0;e=i;g=i+32|0;f[j>>2]=c;b=Wz(b,j)|0;do if(b){j=b+16|0;f[e>>2]=f[j>>2];f[e+4>>2]=f[j+4>>2];f[e+8>>2]=f[j+8>>2];f[e+12>>2]=f[j+12>>2];if(Qab(f[e>>2]|0)|0){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];wAa(a,d);break}else{h=5;break}}else h=5;while(0);if((h|0)==5){f[g>>2]=f[33152];f[d>>2]=f[g>>2];nXa(a,d)}u=i;return}function dC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h+8|0;d=h;Ema(f[a>>2]|0,40)|0;MXa(e,f[a+28>>2]|0,f[a>>2]|0);_m(e,b);_Ba(a);g=b+8|0;Q$a(e,g);LUa(d,g);g=e+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;while(1){if(!(qTa(f[e>>2]|0,f[g>>2]|0,c,d)|0))break;i=QOa(e)|0;QP(a,f[i>>2]|0);YYa(e)}QP(a,f[b+28>>2]|0);pfa(a);u=h;return}function eC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e+8|0;g=e;c=f[a+24>>2]|0;f[g>>2]=f[b+24>>2];f[d>>2]=f[g>>2];b=$I(c,d)|0;c=a+32|0;if(!(P5(c,b)|0)){dG(d,c,b,b);g=DCa(134008,100923)|0;g=DCa(Bfa(g,f[f[a+28>>2]>>2]|0)|0,101083)|0;DCa(Bfa(g,f[b>>2]|0)|0,101108)|0}u=e;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(RKa(f[c>>2]|0,f[(f[a>>2]|0)+12>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){g=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=g;break a}d=f[a>>2]|0}while(RKa(f[c>>2]|0,f[d+12>>2]|0)|0);f[a>>2]=0;e=f[g>>2]|0;f[g>>2]=d;if(e|0)Cbb(e);g=g+4|0}}while(0);return b|0}function gC(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=_x(a,b,c,e)|0;g=e+4|0;if(Ov(f[e>>2]|0,f[g>>2]|0,f[d>>2]|0,f[c>>2]|0)|0){i=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=i;d=h+1|0;if(Ov(f[e>>2]|0,f[g>>2]|0,f[c>>2]|0,f[b>>2]|0)|0){i=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=i;if(Ov(f[e>>2]|0,f[g>>2]|0,f[b>>2]|0,f[a>>2]|0)|0){d=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=d;d=h+3|0}else d=h+2|0}}else d=h;return d|0}function hC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;d=k+24|0;g=k+20|0;h=k;i=f[a>>2]|0;j=(f[a+4>>2]|0)-i>>3;e=j+1|0;if(e>>>0>536870911)dea();else{l=(f[a+8>>2]|0)-i|0;i=l>>2;FN(h,l>>3>>>0<268435455?(i>>>0>>0?e:i):536870911,j,a+8|0);j=h+8|0;i=f[j>>2]|0;L1a(g,f[b>>2]|0);c=f[c>>2]|0;f[d>>2]=f[g>>2];hUa(i,d,c);f[j>>2]=i+8;JO(a,h);Aha(h);u=k;return}}function iC(a,c){a=a|0;c=c|0;var d=0,e=0;wW(a,(((f[a+4>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);e=f6()|0;a:while(1){cz(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 0:{a=3;break a}case 93:{a=7;break a}default:{}}Qea(e,Rm(a,c,66728)|0);cz(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 93:{a=7;break a}case 44:break;default:{a=6;break a}}f[c>>2]=d+1}if((a|0)==3)Ca(66707,65740,680,66712);else if((a|0)==6)hb();else if((a|0)==7){f[c>>2]=d+1;return e|0}return 0}function jC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=BF(c,h,d)|0;d=f[g>>2]|0;if(!d){d_(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function kC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;e=h;if(Aab(f[b>>2]|0)|0)Ca(76181,76196,166,76219);_0a(e,f[a+120>>2]|0);g=tT(b)|0;if(v2a(g)|0){i=n3(a,g)|0;j=dn(g,c?15:16)|0;c=Ns(a,b)|0;g=Ns(a,i)|0;g=iIa(Kpa(f[e>>2]|0,j,c,g)|0,d)|0;e=RK(a,g)|0;n6(e,wga(a,b,d)|0);n6(e,i);a=g}u=h;return a|0}function lC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a:do if((c-a|0)>12){g=0;f=a;while(1){if(g>>>0>=13)break;if((b[f>>0]|0)!=(b[124905+g>>0]|0)){f=a;break a}g=g+1|0;f=f+1|0}b:do if((f|0)==(c|0))f=c;else{if((b[f>>0]|0)==95){g=f+1|0;if((g|0)==(c|0)){f=a;break a}if(((b[g>>0]|0)+-48|0)>>>0>=10){f=a;break a}f=f+2|0}while(1){if((f|0)==(c|0)){f=c;break b}if(((b[f>>0]|0)+-48|0)>>>0>=10)break b;f=f+1|0}}while(0);if((d|0)!=(e|0))zoa(e+-24|0,0,124919)|0;else f=a}else f=a;while(0);return f|0}function mC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>4;e=d+1|0;if(e>>>0>268435455)dea();i=(f[a+8>>2]|0)-c|0;c=i>>3;HN(g,i>>4>>>0<134217727?(c>>>0>>0?e:c):268435455,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(1293,d|0,f[b>>2]|0);b=x;x=0;if(b&1){i=Ia()|0;Bha(g);Ua(i|0)}else{f[c>>2]=d+16;OO(a,g);Bha(g);u=h;return}}function nC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;e=h;g=b+8|0;d=f[g>>2]|0;if(Qab(d)|0){f[e>>2]=d;f[c>>2]=f[e>>2];Hl(a,c);e=a+48|0;d=BB(e,g)|0;if(!d)Ca(85255,85280,363,108383);c=f[d+16>>2]|0;if(i2a(c)|0)Kta(a,c,b);C4(e,d)}if(!(f[b+4>>2]|0))Vwa(a,v2a(f[(f[b+12>>2]|0)+4>>2]|0)|0,b);u=h;return}function oC(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;a:do if(b[a+16>>0]|0?(d=f[a>>2]|0,h=f[d+36>>2]|0,d=f[d+40>>2]|0,Bya(h,d)|0):0){c=f[a+8>>2]|0;a=f[a+4>>2]|0;g=c-a>>4;if((g|0)!=(d-h>>2|0))mpa();d=0;while(1){if(d>>>0>=g>>>0){d=7;break}e=f[h+(d<<2)>>2]|0;if((e|0)!=(f[a+(d<<4)>>2]|0)){d=9;break}if(f2a(f[e>>2]|0,f[a+(d<<4)+4>>2]|0)|0){d=11;break}d=d+1|0}if((d|0)==7)while(1){if((a|0)==(c|0))break a;QS(a);a=a+16|0}else if((d|0)==9)mpa();else if((d|0)==11)mpa()}while(0);return}function pC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];g=a+4|0;c=b+4|0;f[g>>2]=0;e=a+8|0;f[e>>2]=0;d=a+12|0;f[d>>2]=0;f[g>>2]=f[c>>2];g=b+8|0;f[e>>2]=f[g>>2];e=b+12|0;f[d>>2]=f[e>>2];f[e>>2]=0;f[g>>2]=0;f[c>>2]=0;c=a+16|0;g=b+16|0;f[c>>2]=0;e=a+20|0;f[e>>2]=0;d=a+24|0;f[d>>2]=0;f[c>>2]=f[g>>2];c=b+20|0;f[e>>2]=f[c>>2];e=b+24|0;f[d>>2]=f[e>>2];f[e>>2]=0;f[c>>2]=0;f[g>>2]=0;g=a+28|0;c=b+28|0;f[g>>2]=0;e=a+32|0;f[e>>2]=0;d=a+36|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+32|0;f[e>>2]=f[a>>2];b=b+36|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function qC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=f[a>>2]|0;i=dV(c)|0;j=j+16|0;d=0;e=0;a:while(1){h=(d|0)==(i|0);b:while(1){g=Ps(f[j>>2]|0)|0;switch(g|0){case -1:{d=0;break a}case 34:{if(!e){d=0;e=1;break b}if(h){k=10;break a}break}default:if(e){k=8;break b}}e=0}if((k|0)==8){k=0;e=(g|0)==(b[c+d>>0]|0);d=d+(e&1)|0}}if((k|0)==10){d=a+4|0;Lca(f[f[d>>2]>>2]|0);Nm(f[(f[f[a+8>>2]>>2]|0)+16>>2]|0,58);Lca(f[f[d>>2]>>2]|0);d=1}return d|0}function rC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=BF(c,h,d)|0;d=f[g>>2]|0;if(!d){f1(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function sC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+8|0;k=c+4|0;cA(a,a+4|0,d,f[f[c>>2]>>2]|0,f[k>>2]|0)|0;j=a+12|0;while(1){if((j|0)==(b|0))break;l=f[j>>2]|0;g=f[d>>2]|0;i=f[k>>2]|0;h=f[f[c>>2]>>2]|0;if(Y4(h,i,l,g)|0){e=j;while(1){f[e>>2]=g;if((d|0)==(a|0)){d=a;break}e=d+-4|0;g=f[e>>2]|0;if(!(Y4(h,i,l,g)|0))break;else{m=d;d=e;e=m}}f[d>>2]=l}d=j;j=j+4|0}return}function tC(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;d=(d-b<<3)+e-c|0;if((d|0)>0){if(!c){h=g;e=f[g>>2]|0}else{i=32-c|0;h=(d|0)<(i|0)?d:i;i=-1>>>(i-h|0)&-1<>2]|0;f[e>>2]=f[e>>2]&~i|f[b>>2]&i;i=g+4|0;c=(f[i>>2]|0)+h|0;e=e+(c>>>5<<2)|0;f[g>>2]=e;f[i>>2]=c&31;d=d-h|0;h=g;b=b+4|0}i=(d|0)/32|0;kia(e|0,b|0,i<<2|0)|0;e=d-(i<<5)|0;c=(f[h>>2]|0)+(i<<2)|0;f[h>>2]=c;d=c;if((e|0)>0){h=-1>>>(32-e|0);f[c>>2]=f[c>>2]&~h|f[b+(i<<2)>>2]&h;f[g+4>>2]=e}}else d=f[g>>2]|0;f[a>>2]=d;f[a+4>>2]=f[g+4>>2];return}function uC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+8|0;g=h+4|0;d=h;f[d>>2]=f[b>>2];f[c>>2]=f[d>>2];c=Os(a,c)|0;f[g>>2]=c;d=a+4|0;e=f[d>>2]|0;if((e|0)==(f[a+8>>2]|0))LL(a,g);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}c=ZW(a+12|0,b)|0;d=c+4|0;e=f[d>>2]|0;if((e|0)==(f[c+8>>2]|0))LL(c,g);else{f[e>>2]=f[g>>2];f[d>>2]=(f[d>>2]|0)+4}a=kZ(a+24|0,g)|0;f[a>>2]=f[b>>2];u=h;return f[g>>2]|0}function vC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+32|0;j=e+16|0;k=e;h=a+44|0;g=f[h>>2]|0;i=SKa(f[g>>2]|0,c,1)|0;a=f[h>>2]|0;t$a(k,31);f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];f[j+12>>2]=f[k+12>>2];a=e0(a,j)|0;a=Qya(g,b,Kpa(f[g>>2]|0,12,i,a)|0)|0;b=f[h>>2]|0;c=SKa(f[b>>2]|0,c,1)|0;d=SKa(f[f[h>>2]>>2]|0,d,1)|0;d=J$(g,a,Kpa(f[b>>2]|0,12,c,d)|0)|0;u=e;return d|0}function wC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;f[k>>2]=b;g=f[a>>2]|0;j=a+4|0;c=f[j>>2]|0;d=b8(g,c,b)|0;e=d;i=c;do if((d|0)==(c|0))if((c|0)==(f[a+8>>2]|0)){LL(a,k);break}else{f[c>>2]=b;f[j>>2]=c+4;break}else if((f[d>>2]|0)>>>0>b>>>0){h=e-g>>2;pha(a,(i-g>>2)+1|0);e=f[a>>2]|0;c=e+(h<<2)|0;d=f[j>>2]|0;e=e+(d-e>>2<<2)+-4-c|0;if(e){kia(d+(0-(e>>2)<<2)|0,c|0,e|0)|0;c=(f[a>>2]|0)+(h<<2)|0;b=f[k>>2]|0}f[c>>2]=b}while(0);u=l;return}function xC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;c=l+32|0;h=l+24|0;g=l+8|0;i=l+16|0;j=l;k7a(b);k=rUa(f[b+32>>2]|0)|0;d=b+8|0;Q$a(h,d);LUa(g,d);d=h+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[d>>2]|0,e,g)|0))break;m=QOa(h)|0;f[i>>2]=f[m>>2];f[c>>2]=f[i>>2];Jca(a,c,k);YYa(h)}f[j>>2]=f[b+24>>2];f[c>>2]=f[j>>2];Jca(a,c,k);u=l;return}function yC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;if(e>>>0>357913941)dea();i=((f[a+8>>2]|0)-c|0)/12|0;c=i<<1;TM(g,i>>>0<178956970?(c>>>0>>0?e:c):357913941,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(1408,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;_aa(g);Ua(i|0)}else{f[c>>2]=d+12;vD(a,g);_aa(g);u=h;return}}function zC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;g=j+24|0;h=j+16|0;c=j+8|0;i=j;d=b+8|0;Q$a(h,d);LUa(c,d);d=a+80|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;k=QOa(h)|0;f[i>>2]=f[k>>2];dG(g,d,i,i);YYa(h)}k=b+24|0;dG(g,d,k,k);u=j;return}function AC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=h1a(c)|0;a:do if(b){g=b+-1|0;h=(g&b|0)==0;if(!h)if(e>>>0>>0)i=e;else i=(e>>>0)%(b>>>0)|0;else i=g&e;a=f[a+(i<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}d=f[a+4>>2]|0;if((d|0)==(e|0)){if(E_a(f[a+8>>2]|0,c)|0)break a}else{if(!h){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&g;if((d|0)!=(i|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function BC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b+48>>2]|0;a:do if(!(c&16)){if(c&8|0){e=f[b+8>>2]|0;b=f[b+16>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;pQ(a,e,b);break}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break a;f[a+(c<<2)>>2]=0;c=c+1|0}}else{d=b+44|0;c=f[d>>2]|0;e=f[b+24>>2]|0;if(c>>>0>>0){f[d>>2]=e;c=e}b=f[b+20>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;pQ(a,b,c)}while(0);return}function CC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;g=j+24|0;h=j+16|0;c=j+8|0;i=j;d=b+8|0;Q$a(h,d);LUa(c,d);d=a+96|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;k=QOa(h)|0;f[i>>2]=f[k>>2];dG(g,d,i,i);YYa(h)}k=b+24|0;dG(g,d,k,k);u=j;return}function DC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d;b=lF(Or(b,1)|0)|0;a=Jc(b,c,f[a+4>>2]|0)|0;if(a|0){u=d;return a|0}c=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;d=j7a(92784)|0;x=0;va(87,e|0,92784,d|0);d=x;x=0;if(!(d&1)){x=0;ua(261,c|0,e|0);d=x;x=0;if(d&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;MTa(e);if(b)g=7}else{a=Ia()|0;g=7}if((g|0)==7)La(c|0);Ua(a|0);return 0}function EC(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=BF(c,h,d)|0;d=f[g>>2]|0;if(!d){P1(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function FC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+16|0;tS(d,1748,b);e=Z$a(f[b>>2]|0)|0;if(e){c=e+8|0;if((f[(f[c>>2]|0)+4>>2]|0)!=5){tS(d,1749,b);a=e+16|0;if(f[a>>2]|0){tS(d,1747,a);tS(d,1750,b)}tS(d,1747,e+12|0);tS(d,1751,b);tS(d,1747,c)}}else fe(a,b);return}function GC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+16|0;i=k+8|0;h=k;mT(j,b);Q$a(i,j);mUa(h,j);d=i+4|0;g=f[h>>2]|0;h=f[h+4>>2]|0;while(1){c=f[i>>2]|0;e=f[d>>2]|0;if(!(qTa(c,e,g,h)|0)){c=3;break}e=H$a(f[c>>2]|0,e)|0;x=0;ia(118,a|0,e|0)|0;e=x;x=0;if(e&1){c=6;break}YYa(i)}if((c|0)==3){f0a(j);j=Vxa(a,f[b+4>>2]|0)|0;u=k;return j|0}else if((c|0)==6){k=Ia()|0;f0a(j);Ua(k|0)}return 0}function HC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/24|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/24|0;d=c+b|0;if(d>>>0>178956970)dea();else{e=(h-e|0)/24|0;h=e<<1;aN(g,e>>>0<89478485?(h>>>0>>0?d:h):178956970,c,a+8|0);C1(g,b);ZN(a,g);oea(g);break}}else k2(a,b);while(0);u=i;return}function IC(a){a=a|0;var b=0,c=0,d=0,e=0;a:do switch(f[a>>2]|0){case 1:{b=f[f[a+4>>2]>>2]|0;if(F6a(b)|0){b=eQa(a,0)|0;b=hB(b,eQa(a,1)|0)|0;break a}if(D6a(b)|0){b=eQa(a,1)|0;b=hB(b,eQa(a,2)|0)|0}else b=0;break}case 2:{c=eQa(a,1)|0;d=a+12|0;e=a+16|0;b=2;while(1){if(b>>>0>=(f[e>>2]|0)-(f[d>>2]|0)>>2>>>0){b=1;break a}if(sYa(c,eQa(a,b)|0)|0){b=0;break}else b=b+1|0}break}default:b=0}while(0);return b|0}function JC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+48|0;g=k+32|0;h=k+24|0;c=k+8|0;i=k+16|0;j=k;d=b+8|0;Q$a(h,d);LUa(c,d);d=a+36|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;l=QOa(h)|0;f[i>>2]=f[l>>2];f[g>>2]=f[i>>2];m=Gq(d,g)|0;f[l>>2]=m;YYa(h)}f[j>>2]=f[b+24>>2];f[g>>2]=f[j>>2];m=Gq(d,g)|0;f[b+24>>2]=m;u=k;return}function KC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>4;e=d+1|0;if(e>>>0>268435455)dea();i=(f[a+8>>2]|0)-c|0;c=i>>3;HN(g,i>>4>>>0<134217727?(c>>>0>>0?e:c):268435455,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(2402,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;Pda(g);Ua(i|0)}else{f[c>>2]=d+16;WN(a,g);Pda(g);u=h;return}}function LC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>4;e=d+1|0;if(e>>>0>268435455)dea();i=(f[a+8>>2]|0)-c|0;c=i>>3;HN(g,i>>4>>>0<134217727?(c>>>0>>0?e:c):268435455,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(1875,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;Pda(g);Ua(i|0)}else{f[c>>2]=d+16;WN(a,g);Pda(g);u=h;return}}function MC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;a=a+4|0;d=KG(c,f[a>>2]|0,a)|0;if((d|0)!=(a|0)?(h=d+16|0,e=b[h+11>>0]|0,i=e<<24>>24<0,e=i?f[d+20>>2]|0:e&255,g=b[c+11>>0]|0,j=g<<24>>24<0,g=j?f[c+4>>2]|0:g&255,c=FQa(j?f[c>>2]|0:c,i?f[h>>2]|0:h,e>>>0>>0?e:g)|0,(((c|0)==0?(g>>>0>>0?-2147483648:0):c)|0)>=0):0)a=d;return a|0}function NC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;d=k+24|0;g=k+20|0;h=k;i=f[a>>2]|0;j=(f[a+4>>2]|0)-i>>3;e=j+1|0;if(e>>>0>536870911)dea();else{l=(f[a+8>>2]|0)-i|0;i=l>>2;FN(h,l>>3>>>0<268435455?(i>>>0>>0?e:i):536870911,j,a+8|0);j=h+8|0;i=f[j>>2]|0;f[g>>2]=f[b>>2];c=f[c>>2]|0;f[d>>2]=f[g>>2];hUa(i,d,c);f[j>>2]=i+8;JO(a,h);Aha(h);u=k;return}}function OC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;a:do if(b){e=b+-1|0;g=(e&b|0)==0;if(!g)if(c>>>0>>0)h=c;else h=(c>>>0)%(b>>>0)|0;else h=e&c;a=f[a+(h<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}d=f[a+4>>2]|0;if((d|0)==(c|0)){if((f[a+8>>2]|0)==(c|0))break a}else{if(!g){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&e;if((d|0)!=(h|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function PC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+32|0;c=h;d=h+16|0;e=a+172|0;g=wA(e,b)|0;if(!g){_0a(d,f[a+120>>2]|0);f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];c=e0(d,c)|0;c=iIa(c,c)|0;d=RK(a,c)|0;g=nm(e,b)|0;f[g>>2]=d}else c=f[g+24>>2]|0;u=h;return c|0}function QC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=vwa(f[b>>2]|0,0)|0;e=f[a+16>>2]|0;if(e|0)faa(g+12|0,e);if(d)faa(g+12|0,J_(b,f[c+100>>2]|0)|0);a:do switch(f[a+4>>2]|0){case 1:{faa(g+12|0,jca(b,f[c+100>>2]|0)|0);break}case 2:{a=f[a>>2]|0;if(!a)Ca(89380,88985,117,89008);else{faa(g+12|0,Aba(b,f[a+4>>2]|0)|0);break a}break}default:{}}while(0);tt(g);return g|0}function RC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+96|0;e=h+92|0;g=h;d=f[b>>2]|0;f[e>>2]=d;gA(g,fZa(f[a+40>>2]|0)|0,0);if(!(hOa(g,f[d>>2]|0)|0?(x=0,ua(1154,a|0,g|0),b=x,x=0,b&1):0))c=4;do if((c|0)==4){b=a+136|0;c=f[b>>2]|0;if((c|0)==(f[a+140>>2]|0)){x=0;ua(640,a+132|0,e|0);e=x;x=0;if(e&1)break}else{f[c>>2]=d;f[b>>2]=(f[b>>2]|0)+4}_7(g);u=h;return}while(0);h=Ia()|0;_7(g);Ua(h|0)}function SC(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=Sia()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(1416,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;dCa(a);Cbb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){dCa(b);Cbb(b)}Ua(a|0)}while(0);u=e;return}function TC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+16|0;g=h;b=mq(a,b,e,h+12|0,c)|0;if(!(f[b>>2]|0)){w2(g,a,d);PZ(a,f[e>>2]|0,b,f[g>>2]|0)}u=h;return}function UC(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=a+12|0;c=a+16|0;if(Jbb(f[c>>2]|0)|0){g=RCa(d)|0;g=f[g>>2]|0;b=1;while(1){if(b>>>0>=(Jbb(f[c>>2]|0)|0)>>>0)break;h=ODa(d,b)|0;if(qCa(f[h>>2]|0)|0?(e=b+-1|0,h=ODa(d,e)|0,(qCa(f[h>>2]|0)|0)==0):0){j=ODa(d,e)|0;h=ODa(d,b)|0;i=f[j>>2]|0;f[j>>2]=f[h>>2];f[h>>2]=i}b=b+1|0}j=RCa(d)|0;if((f[j>>2]|0)!=(g|0))tt(a)}return}function VC(){_7a();w7a();r7a();q7a();qab();oab();mab();kab();iab();gab();eab();cab();aab();_9a();Y9a();W9a();U9a();S9a();Q9a();O9a();o8a();L9a();J9a();n8a();G9a();E9a();m8a();l8a();k8a();z9a();x9a();j8a();u9a();s9a();p9a();n9a();l9a();j9a();h9a();return}function WC(){var a=0,b=0,c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;h=e+32|0;c=e+24|0;i=e+16|0;g=e;e=e+36|0;a=oAa()|0;if(a|0?(d=f[a>>2]|0,d|0):0){a=d+48|0;b=f[a>>2]|0;a=f[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){f[c>>2]=122488;LQa(122438,c)}if((b|0)==1126902529&(a|0)==1129074247)a=f[d+44>>2]|0;else a=d+80|0;f[e>>2]=a;d=f[d>>2]|0;a=f[d+4>>2]|0;if(hM(39360,d,e)|0){i=f[e>>2]|0;i=bc[f[(f[i>>2]|0)+8>>2]&511](i)|0;f[g>>2]=122488;f[g+4>>2]=a;f[g+8>>2]=i;LQa(122352,g)}else{f[i>>2]=122488;f[i+4>>2]=a;LQa(122397,i)}}LQa(122476,h)}function XC(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,f=0,g=0;e=+SNa(b);c=vRa(e)|0;d=I&2147483647;do if(!(d>>>0>2146435072|(d|0)==2146435072&c>>>0>0)){if((c|0)==0&(d|0)==2146435072){HAa(a,e);break}c=FHa(b)|0;d=I;f=BOa(c|0,d|0,536870911,-1206910976)|0;g=I;if(g>>>0<0|(g|0)==0&f>>>0<268435455){HAa(a,3402823466385288598117041.0e14);break}g=BOa(c|0,d|0,536870911,940572672)|0;f=I;if(f>>>0<0|(f|0)==0&g>>>0<268435455){HAa(a,-3402823466385288598117041.0e14);break}if(e<-3402823466385288598117041.0e14){HAa(a,-C);break}if(e>3402823466385288598117041.0e14){HAa(a,C);break}else{yIa(a,b);break}}else HAa(a,e);while(0);return}function YC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=K1a(a)|0;while(1){a=f[e+16>>2]|0;if(PVa(c,a)|0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(!(PVa(a,c)|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function ZC(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;e=c+20|0;if((b[e>>0]|0)!=0?(nxa(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c),(b[e>>0]|0)!=0):0){d=f[a+36>>2]|0;Jbb(d)|0;d=(b[d+114>>0]|0)==0}else d=0;_qa(a,d,c,83467);d=c+8|0;g=c+4|0;_X(a,b[d>>0]|0,f[g>>2]|0,c);i=Jbb(f[c+16>>2]|0)|0;Pq(a,i,f[g>>2]|0,h[d>>0]|0,(b[e>>0]|0)!=0,c);Sja(a,f[(f[c+24>>2]|0)+4>>2]|0,c);if(b[e>>0]|0)_qa(a,(b[c+9>>0]|0)!=0,c,84388);return}function _C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+64|0;e=h;g=a+52|0;d=f[a+48>>2]|0;while(1){if((d|0)==(g|0))break;f[(f[d+16>>2]|0)+8>>2]=f[d+20>>2];c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}do if(f[a+56>>2]|0){jX(e);g=f[a+20>>2]|0;Jbb(g)|0;x=0;va(94,e+16|0,b|0,g|0);g=x;x=0;if(g&1){h=Ia()|0;uDa(e);Ua(h|0)}else{uDa(e);break}}while(0);u=h;return}function $C(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i+12|0;g=i+4|0;d=i+8|0;e=i;f[g>>2]=b;h=b;if(!(f[b+12>>2]|0)){f[e>>2]=f[b+8>>2];j=f[a+24>>2]|0;b=f[a+28>>2]|0;f[c>>2]=f[e>>2];e=v$a(ID(j,b,c)|0)|0;f[d>>2]=e;do if(e|0){c=kY(a+36|0,d)|0;a=c+4|0;b=f[a>>2]|0;if((b|0)==(f[c+8>>2]|0)){LL(c,g);break}else{f[b>>2]=h;f[a>>2]=(f[a>>2]|0)+4;break}}while(0)}u=i;return}function aD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;do if((b|0)==(f[a+24>>2]|0)){e=a+32|0;if(Jbb(f[b+16>>2]|0)|0){b=RCa(b+12|0)|0;b=(f[b>>2]|0)+4|0;c=a+36|0;d=f[c>>2]|0;if((d|0)==(f[a+40>>2]|0)){LL(e,b);break}else{f[d>>2]=f[b>>2];f[c>>2]=d+4;break}}f[d>>2]=0;b=a+36|0;c=f[b>>2]|0;if(c>>>0<(f[a+40>>2]|0)>>>0){f[c>>2]=0;f[b>>2]=c+4}else LL(e,d)}else if(g2a(f[b+8>>2]|0,f[a+28>>2]|0)|0)f[a+36>>2]=f[a+32>>2];while(0);u=g;return}function bD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;while(1){if((a|0)==(b|0))break;if(N$(c,f[a>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}d=f[a>>2]|0}while(N$(c,d)|0);f[e>>2]=d;e=e+4|0}}while(0);return b|0}function cD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i+8|0;g=i;h=a+24|0;d=a+28|0;c=f[h>>2]|0;while(1){if((c|0)==(d|0))break;f[g>>2]=f[c+16>>2];dG(e,h,g,g);a=f[c+4>>2]|0;if(!a)while(1){a=f[c+8>>2]|0;if((f[a>>2]|0)==(c|0))break;else c=a}else while(1){c=f[a>>2]|0;if(!c)break;else a=c}c=a}g=b+24|0;dG(e,h,g,g);u=i;return}function dD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;c=l+16|0;d=l+12|0;e=l+8|0;g=l+4|0;h=l;i=a+116|0;m=f[i>>2]|0;j=m;if(Qab(m)|0?(f[d>>2]=j,f[c>>2]=f[d>>2],k=Xma(a,c)|0,f[e>>2]=j,f[c>>2]=f[e>>2],Qu(b,(k|0)!=0,c,81264,0)|0):0){m=(f[k+12>>2]|0)==(f[k+8>>2]|0);f[g>>2]=f[i>>2];f[c>>2]=f[g>>2];Qu(b,m,c,81284,0)|0;m=(f[k+4>>2]|0)==0;f[h>>2]=f[i>>2];f[c>>2]=f[h>>2];Qu(b,m,c,81309,0)|0}u=l;return}function eD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=hla()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(3142,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;dCa(a);Cbb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){dCa(b);Cbb(b)}Ua(a|0)}while(0);u=e;return}function fD(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;wpa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;c3(d,f[a>>2]|0);a=a+4|0}tca(d,f[b+76>>2]|0,f[b+80>>2]|0);tca(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function gD(a){a=a|0;var b=0,c=0;a=a+4|0;b=f[a>>2]|0;b=b+(f[(f[b>>2]|0)+-12>>2]|0)|0;do if(((f[b+24>>2]|0?(f[b+16>>2]|0)==0:0)?f[b+4>>2]&8192|0:0)?!(c7a()|0):0){b=f[a>>2]|0;b=f[b+(f[(f[b>>2]|0)+-12>>2]|0)+24>>2]|0;x=0;b=ga(f[(f[b>>2]|0)+24>>2]|0,b|0)|0;c=x;x=0;if(!(c&1)){if((b|0)!=-1)break;c=f[a>>2]|0;c=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;x=0;ua(100,c|0,f[c+16>>2]|1|0);c=x;x=0;if(!(c&1))break}c=Ja(0)|0;Fa(c|0)|0;x=0;sa(6);c=x;x=0;if(c&1){c=Ja(0)|0;y2a(c)}}while(0);return}function hD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=d-c>>2;if(g>>>0>1073741807)Rda();do if(g>>>0>=2){e=g+4&-4;if(e>>>0<=1073741823){h=s8(e<<2)|0;f[a>>2]=h;f[a+8>>2]=e|-2147483648;f[a+4>>2]=g;a=h;break}a=Ea(8)|0;x=0;ua(98,a|0,121961);h=x;x=0;if(h&1){h=Ia()|0;La(a|0);Ua(h|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else b[a+8+3>>0]=g;while(0);while(1){if((c|0)==(d|0))break;L1a(a,f[c>>2]|0);c=c+4|0;a=a+4|0}L1a(a,0);return}function iD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=a+4|0;wW(a,(((f[h>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);e=f[d>>2]|0;if((b[e>>0]|0)!=91)Ca(66463,65740,643,66475);f[d>>2]=e+1;g=D2(c,Rm(a,d,123321)|0)|0;cz(d);c=f[d>>2]|0;if((b[c>>0]|0)!=93)Ca(66489,65740,647,66475);f[d>>2]=c+1;a=f[h>>2]|0;e=a+-12|0;if((f[a+-8>>2]|0)!=(f[e>>2]|0))Ca(66275,65740,649,66475);c=0;while(1){if((c|0)==-1)break;d=c+-1|0;zSa(a+(d*12|0)|0);c=d}f[h>>2]=e;return g|0}function jD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=hla()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(589,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;dCa(a);Cbb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){dCa(b);Cbb(b)}Ua(a|0)}while(0);u=e;return}function kD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=mm(f[a>>2]|0,f[b>>2]|0)|0;e=f[e>>2]|0;d=mm(f[a>>2]|0,f[c>>2]|0)|0;if((e|0)==(f[d>>2]|0))a=(J8(f[f[b>>2]>>2]|0,f[f[c>>2]>>2]|0)|0)>0;else{e=mm(f[a>>2]|0,f[b>>2]|0)|0;e=f[e>>2]|0;a=mm(f[a>>2]|0,f[c>>2]|0)|0;a=e>>>0>(f[a>>2]|0)>>>0}return a|0}function lD(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+16|0;h=i;f[h>>2]=c;f[h+4>>2]=d;f[h+8>>2]=e;while(1){if((a|0)==(b|0))break;if(t9(h,a)|0){g=5;break}a=a+12|0}a:do if((g|0)==5){c=a;while(1){do{a=a+12|0;if((a|0)==(b|0)){b=c;break a}}while(t9(h,a)|0);f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];c=c+12|0}}while(0);u=i;return b|0}function mD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;e=k+16|0;g=k;h=PV(a,c)|0;i=T4(a,c,d)|0;cz(c);n4a(e,0);j=f[c>>2]|0;if((!(Tpa(d,b[j>>0]|0)|0)?(Dh(g,j),(f[g+12>>2]|0)==0):0)?g2a(f[g>>2]|0,f[33286]|0)|0:0){f[c>>2]=(f[c>>2]|0)+(f[g+8>>2]|0);j=T4(a,c,d)|0;f[e>>2]=j}j=SV(h,i,f[e>>2]|0)|0;u=k;return j|0}function nD(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+16|0;b=d;c=a+264|0;if(f[c>>2]|0)Ca(96014,87231,1291,96025);Cj(a);do if(((f[a+192>>2]|0)-(f[a+188>>2]|0)|0)!=4){f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;_Z(b,96040,j7a(96040)|0);x=0;ua(1870,a|0,b|0);e=x;x=0;if(e&1){e=Ia()|0;MTa(b);Ua(e|0)}else{MTa(b);break}}while(0);a=Dm(a)|0;if(!(f[c>>2]|0)){u=d;return a|0}else Ca(96014,87231,1297,96025);return 0}function oD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+4|0;i=h;f[i>>2]=c;i=Xl(b+68|0,i)|0;d=i+4|0;e=f[d>>2]|0;if((e|0)==(f[i>>2]|0)){i=b+148|0;d=f[i>>2]|0;f[i>>2]=d+1;f[g>>2]=d;d=b+128|0;i=Im(d,g)|0;f[i>>2]=c}else{i=e+-4|0;f[g>>2]=f[i>>2];f[d>>2]=i;d=b+128|0}i=Im(d,g)|0;if((f[i>>2]|0)==(c|0)){WIa(a,f[g>>2]|0,c,b);u=h;return}else Ca(106582,106511,1573,106603)}function pD(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((-18-c|0)>>>0>>0)Rda();if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=s8(k)|0;if(g|0)eUa(l,m,g)|0;if(i|0)eUa(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)eUa(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Cbb(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;Z0a(l+i|0,0);return}function qD(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110647)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);if((f[c+4>>2]|0)!=5)Gv(f[a+28>>2]|0,27)|0;u=i;return}function rD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+32|0;d=h;e=f[32838]|0;b=f[32837]|0;do if(e-b>>2>>>0>>0){g=f[32836]|0;c=b-g>>2;b=c+a|0;if(b>>>0>1073741823)dea();else{e=e-g|0;g=e>>1;rZ(d,e>>2>>>0<536870911?(g>>>0>>0?b:g):1073741823,c);bla(d,a);oR(d);f0(d);break}}else Ota(a);while(0);u=h;return}function sD(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;g=e;b=Joa()|0;f[a+64>>2]=b;f[g>>2]=b;c=a+44|0;d=f[c>>2]|0;do if(d>>>0<(f[a+48>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4;f[g>>2]=0}else{x=0;ua(480,a+40|0,g|0);d=x;x=0;if(!(d&1)){a=f[g>>2]|0;f[g>>2]=0;if(!a)break;Rwa(a);Cbb(a);break}a=Ia()|0;b=f[g>>2]|0;f[g>>2]=0;if(b|0){Rwa(b);Cbb(b)}Ua(a|0)}while(0);u=e;return}function tD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+96|0;e=h+92|0;g=h;d=f[b>>2]|0;f[e>>2]=d;gA(g,fZa(f[a+40>>2]|0)|0,0);if(!(hOa(g,f[d>>2]|0)|0?(x=0,ua(2526,a|0,g|0),b=x,x=0,b&1):0))c=4;do if((c|0)==4){b=a+92|0;c=f[b>>2]|0;if((c|0)==(f[a+96>>2]|0)){x=0;ua(640,a+88|0,e|0);e=x;x=0;if(e&1)break}else{f[c>>2]=d;f[b>>2]=(f[b>>2]|0)+4}_7(g);u=h;return}while(0);h=Ia()|0;_7(g);Ua(h|0)}function uD(a,b){a=a|0;b=b|0;var c=0;switch(f[b+8>>2]|0){case 5:case 4:case 3:case 2:case 1:case 0:{c=wga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(Aab(f[c>>2]|0)|0)){b=iIa(b,b)|0;n6(RK(a,b)|0,c);c=b}break}case 21:case 20:{c=wga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(Aab(f[c>>2]|0)|0))c=kC(a,c,1,b)|0;break}default:c=Vxa(a,f[b+4>>2]|0)|0}return c|0}function vD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;k=f[g>>2]|0;i=k+-12|0;h=c+-12|0;f[i>>2]=0;j=k+-8|0;f[j>>2]=0;k=k+-4|0;f[k>>2]=0;f[i>>2]=f[h>>2];i=c+-8|0;f[j>>2]=f[i>>2];j=c+-4|0;f[k>>2]=f[j>>2];f[j>>2]=0;f[i>>2]=0;f[h>>2]=0;f[g>>2]=(f[g>>2]|0)+-12;c=h}i=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=i;i=b+8|0;k=f[e>>2]|0;f[e>>2]=f[i>>2];f[i>>2]=k;i=a+8|0;k=b+12|0;j=f[i>>2]|0;f[i>>2]=f[k>>2];f[k>>2]=j;f[b>>2]=f[g>>2];return}function wD(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+4>>2]|0;c=f[b>>2]|0;while(1){if((c|0)==(d|0))break;ur(f[c>>2]|0);c=c+4|0}d=a+-16+16|0;a=f[b+52>>2]|0;c=f[b+48>>2]|0;while(1){if((c|0)==(a|0))break;FKa(d,f[c>>2]|0);c=c+4|0}a=f[b+40>>2]|0;c=f[b+36>>2]|0;while(1){if((c|0)==(a|0))break;x7(d,f[c>>2]|0);c=c+4|0}Ara(d,f[b+76>>2]|0,f[b+80>>2]|0);Ara(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function xD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;h=c+11|0;g=b[h>>0]|0;if(g<<24>>24<0)e=f[c+4>>2]|0;else e=g&255;while(1){if(g<<24>>24<0)g=f[c>>2]|0;else g=c;f[i>>2]=d;g=QFa(g,e+1|0,122077,i)|0;if((g|0)>-1)if(g>>>0>e>>>0)e=g;else break;else e=e<<1|1;CU(c,e);g=b[h>>0]|0}CU(c,g);f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];e=0;while(1){if((e|0)==3)break;f[c+(e<<2)>>2]=0;e=e+1|0}u=j;return}function yD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;h=c+11|0;g=b[h>>0]|0;if(g<<24>>24<0)e=f[c+4>>2]|0;else e=g&255;while(1){if(g<<24>>24<0)g=f[c>>2]|0;else g=c;f[i>>2]=d;g=QFa(g,e+1|0,122074,i)|0;if((g|0)>-1)if(g>>>0>e>>>0)e=g;else break;else e=e<<1|1;CU(c,e);g=b[h>>0]|0}CU(c,g);f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];e=0;while(1){if((e|0)==3)break;f[c+(e<<2)>>2]=0;e=e+1|0}u=j;return}function zD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;h=c+11|0;g=b[h>>0]|0;if(g<<24>>24<0)e=f[c+4>>2]|0;else e=g&255;while(1){if(g<<24>>24<0)g=f[c>>2]|0;else g=c;f[i>>2]=d;g=QFa(g,e+1|0,122071,i)|0;if((g|0)>-1)if(g>>>0>e>>>0)e=g;else break;else e=e<<1|1;CU(c,e);g=b[h>>0]|0}CU(c,g);f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];e=0;while(1){if((e|0)==3)break;f[c+(e<<2)>>2]=0;e=e+1|0}u=j;return}function AD(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+16>>2]|0;c=f[b+12>>2]|0;while(1){if((c|0)==(d|0))break;_V(a,f[c>>2]|0);c=c+4|0}d=f[b+52>>2]|0;c=f[b+48>>2]|0;while(1){if((c|0)==(d|0))break;HIa(a,f[c>>2]|0);c=c+4|0}d=f[b+40>>2]|0;c=f[b+36>>2]|0;while(1){if((c|0)==(d|0))break;o6(a,f[c>>2]|0);c=c+4|0}$pa(a,f[b+76>>2]|0,f[b+80>>2]|0);$pa(a,f[b+100>>2]|0,f[b+104>>2]|0);return}function BD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(bta(c,f[a>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){g=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=g;break a}d=f[a>>2]|0}while(bta(c,d)|0);f[a>>2]=0;e=f[g>>2]|0;f[g>>2]=d;if(e|0){OX(e);Cbb(e)}g=g+4|0}}while(0);return b|0}function CD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=Jbb(a)|0;DCa(DCa(d,Fha(b)|0)|0,75494)|0;if((b|0)!=5){if((Ixa(b)|0)!=(c&255|0)){switch(c<<24>>24){case 1:{Ema(a,56)|0;break}case 2:{DCa(a,75506)|0;break}case 4:{DCa(a,75509)|0;break}default:hb()}DCa(a,75512)|0}}else Ema(a,63)|0;Ema(a,46)|0;return}function DD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(n0(c,a)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}}while(n0(c,a)|0);g=f[a>>2]|0;f[a>>2]=0;d=f[e>>2]|0;f[e>>2]=g;if(d|0){OX(d);Cbb(d)}e=e+4|0}}while(0);return b|0}function ED(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(Y1(c,a)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}}while(Y1(c,a)|0);g=f[a>>2]|0;f[a>>2]=0;d=f[e>>2]|0;f[e>>2]=g;if(d|0){T_a(d);Cbb(d)}e=e+4|0}}while(0);return b|0}function FD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;c=b+12|0;UN(i,a,f[c>>2]|0);b=f[a+44>>2]|0;c=f[c>>2]|0;x=0;d=ga(320,i|0)|0;k=x;x=0;if(((!(k&1)?(x=0,e=ja(46,f[b>>2]|0,d|0,1)|0,k=x,x=0,!(k&1)):0)?(x=0,g=ka(7,f[b>>2]|0,8,c|0,e|0)|0,k=x,x=0,!(k&1)):0)?(x=0,h=ja(53,f[b>>2]|0,20,g|0)|0,k=x,x=0,!(k&1)):0){GVa(f[a+16>>2]|0,h)|0;MCa(i);u=j;return}k=Ia()|0;MCa(i);Ua(k|0)}function GD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;g=k;f[a>>2]=0;h=a+4|0;f[h>>2]=0;i=a+8|0;f[i>>2]=0;b=0;while(1){if(b>>>0>=c>>>0){b=9;break}x=0;j=ia(206,f[d>>2]|0,b|0)|0;e=x;x=0;if(e&1){b=8;break}f[g>>2]=j;e=f[h>>2]|0;if((e|0)==(f[i>>2]|0)){x=0;ua(640,a|0,g|0);j=x;x=0;if(j&1){b=8;break}}else{f[e>>2]=j;f[h>>2]=(f[h>>2]|0)+4}b=b+1|0}if((b|0)==8){k=Ia()|0;zSa(a);Ua(k|0)}else if((b|0)==9){u=k;return}}function HD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;c=g+16|0;d=g+8|0;e=g;do if(f[a+8>>2]<<5>>>0>>0){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(2891,c|0,b|0);b=x;x=0;if(b&1){g=Ia()|0;P1a(f[c>>2]|0);Ua(g|0)}else{h=f[a>>2]|0;f[d>>2]=h;f[d+4>>2]=0;b=f[a+4>>2]|0;f[e>>2]=h+(b>>>5<<2);f[e+4>>2]=b&31;Ky(c,d,e);d9(a,c);P1a(f[c>>2]|0);break}}while(0);u=g;return}function ID(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((a|0)==(b|0))Ca(115896,115840,631,115922);e=f[c>>2]|0;c=b-a>>2;a:while(1){d=c+-1|0;c=f[a+(d<<2)>>2]|0;b=v$a(c)|0;do if(!b){b=J$a(c)|0;if(!b)if(Dab(f[c>>2]|0)|0)break;else{b=9;break a}else if(g2a(e,f[b+8>>2]|0)|0){b=12;break a}else break}else if(g2a(e,f[b+8>>2]|0)|0){b=12;break a}while(0);if(!d){c=0;b=12;break}c=d}if((b|0)==9)Ca(115938,115840,641,115922);else if((b|0)==12)return c|0;return 0}function JD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/24|0;g=e+1|0;if(g>>>0>178956970)dea();else{i=((f[a+8>>2]|0)-d|0)/24|0;d=i<<1;C_(c,i>>>0<89478485?(d>>>0>>0?g:d):178956970,e,a+12|0);g=c+8|0;e=f[g>>2]|0;CY(e,b);f[g>>2]=e+24;fM(a,c);AY(c);u=h;return}}function KD(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;cz(c);e=f[c>>2]|0;a:do switch(b[e>>0]|0){case 59:{f[c>>2]=e+1;a=e6()|0;break}case 123:{f[c>>2]=e+1;cz(c);g=f[c>>2]|0;if((b[g>>0]|0)==125){f[c>>2]=g+1;a=e6()|0;break a}else{f[c>>2]=e;h=6;break a}}default:h=6}while(0);if((h|0)==6){a=Rm(a,c,d)|0;cz(c);d=f[c>>2]|0;if((b[d>>0]|0)==59){Jbb(a)|0;f[c>>2]=d+1}}return a|0}function LD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=K1a(a)|0;c=f[c>>2]|0;while(1){a=f[e+16>>2]|0;if(PVa(c,a)|0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(!(PVa(a,c)|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function MD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;fZ(a);h=f[b>>2]|0;f[b>>2]=0;c=f[a>>2]|0;f[a>>2]=h;if(c|0)Cbb(c);h=b+4|0;d=a+4|0;f[d>>2]=f[h>>2];f[h>>2]=0;h=b+12|0;i=f[h>>2]|0;f[a+12>>2]=i;f[a+16>>2]=f[b+16>>2];e=b+8|0;c=f[e>>2]|0;g=a+8|0;f[g>>2]=c;if(i|0){c=f[c+4>>2]|0;b=f[d>>2]|0;d=b+-1|0;if(d&b){if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0}else c=d&c;f[(f[a>>2]|0)+(c<<2)>>2]=g;f[e>>2]=0;f[h>>2]=0}return}function ND(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>3>>>0>>0){e=f[a>>2]|0;c=c-e>>3;d=c+b|0;if(d>>>0>536870911)dea();else{e=h-e|0;h=e>>2;FN(g,e>>3>>>0<268435455?(h>>>0>>0?d:h):536870911,c,a+8|0);nea(g,b);JO(a,g);Aha(g);break}}else Sfa(a,b);while(0);u=i;return}function OD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+12|0;d=e;f[d>>2]=f[b+16>>2];f[d+4>>2]=f[b+20>>2];f[d+8>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,3);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+12|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function PD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;if((a|0)==(b|0)){f[c>>2]=4;a=0}else{h=f[33448]|0;f[33448]=0;kOa()|0;a=U$a(a,g,d)|0;d=I;e=f[33448]|0;if(!e)f[33448]=h;a:do if((f[g>>2]|0)==(b|0)){do if((e|0)==34){f[c>>2]=4;if((d|0)>0|(d|0)==0&a>>>0>0){a=2147483647;break a}}else{if((d|0)<-1|(d|0)==-1&a>>>0<2147483648){f[c>>2]=4;break}if((d|0)>0|(d|0)==0&a>>>0>2147483647){f[c>>2]=4;a=2147483647;break a}else break a}while(0);a=-2147483648}else{f[c>>2]=4;a=0}while(0)}u=i;return a|0}function QD(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+72>>0]|0){g=DCa(134176,88047)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(c);Wq(g,e)|0;fu(g)|0;break}i=Ia()|0;OCa(c);Ua(i|0)}while(0);i=a+68|0;yp(f[i>>2]|0,1836278016)|0;yp(f[i>>2]|0,1)|0;u=h;return}function RD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;rXa(a);f[a+24>>2]=b;e=a+32|0;DUa(e);g=a+44|0;f[g>>2]=0;f[a+48>>2]=0;f[a+52>>2]=0;c=f[b+40>>2]|0;d=a+28|0;b=f[b+36>>2]|0;while(1){if((b|0)==(c|0)){b=3;break}f[d>>2]=f[b>>2];mqa(e);x=0;ua(1984,a|0,(f[b>>2]|0)+36|0);h=x;x=0;if(h&1){b=6;break}b=b+4|0}if((b|0)==3)return;else if((b|0)==6){h=Ia()|0;zSa(g);RTa(e);P_a(a);Ua(h|0)}}function SD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+16|0;g=h;b=wp(a,b,e,h+12|0,c)|0;if(!(f[b>>2]|0)){w2(g,a,d);PZ(a,f[e>>2]|0,b,f[g>>2]|0)}u=h;return}function TD(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+52>>2]|0;d=a+-16+16|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;kta(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;ZX(d,f[a>>2]|0);a=a+4|0}kfa(d,f[b+76>>2]|0,f[b+80>>2]|0);kfa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function UD(a){a=a|0;var c=0,d=0,e=0,g=0;e=a+8|0;x=0;ta(458,e|0);g=x;x=0;do if(g&1){g=Ja(0)|0;d=a+4|0;c=a+36|0}else{b[a+84>>0]=1;c=a+36|0;DFa(c);mJa(e);d=a+4|0;x=0;ta(459,f[d>>2]|0);g=x;x=0;if(g&1){g=Ja(0)|0;break}xta(a+88|0);PHa(c);CKa(e);c=f[d>>2]|0;f[d>>2]=0;if(c|0){X0a(f[c>>2]|0);Cbb(c)}return}while(0);xta(a+88|0);PHa(c);CKa(e);c=f[d>>2]|0;f[d>>2]=0;if(c|0){X0a(f[c>>2]|0);Cbb(c)}y2a(g)}function VD(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;h=u;u=u+16|0;j=h+4|0;i=h;g=FWa(lF(Or(c,0)|0)|0,46)|0;f[j>>2]=e?g+13|0:g+6|0;g=vUa(f[a+4>>2]|0)|0;b[g+20>>0]=e&1;f[g+32>>2]=d;e=Op(j,(Ixa(d)|0)&255)|0;b[g+8>>0]=e;hLa(i,e&255,0);e=rh(c,g+12|0,g+16|0,f[i>>2]|0)|0;d=ZQa(a,Or(c,e)|0)|0;f[g+24>>2]=d;e=ZQa(a,Or(c,e+1|0)|0)|0;f[g+28>>2]=e;uoa(g);u=h;return g|0}function WD(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=Ex(c,h,d)|0;d=f[g>>2]|0;if(!d){w2(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function XD(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=f[a>>2]|0;g=Jbb(b)|0;switch((hIa(g)|0)-c|0){case 0:{d=DWa(f[d+4>>2]|0)|0;break}case 1:{g=f[a+4>>2]|0;d=n0a(b,c)|0;d=Q4(f[g+16>>2]|0,f[d>>2]|0)|0;break}default:{d=eSa(f[d+4>>2]|0)|0;e=d+12|0;a=a+4|0;while(1){if(c>>>0>=(hIa(g)|0)>>>0)break;i=f[a>>2]|0;h=n0a(b,c)|0;faa(e,Q4(f[i+16>>2]|0,f[h>>2]|0)|0);c=c+1|0}tt(d)}}return d|0}function YD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>3;g=e+1|0;if(g>>>0>536870911)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>2;FN(c,i>>3>>>0<268435455?(d>>>0>>0?g:d):536870911,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];d=b+4|0;f[e+4>>2]=f[d>>2];f[b>>2]=0;f[d>>2]=0;f[g>>2]=e+8;YH(a,c);$8(c);u=h;return}}function ZD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>4>>>0>>0){e=f[a>>2]|0;c=c-e>>4;d=c+b|0;if(d>>>0>268435455)dea();else{e=h-e|0;h=e>>3;HN(g,e>>4>>>0<134217727?(h>>>0>>0?d:h):268435455,c,a+8|0);xka(g,b);OO(a,g);Bha(g);break}}else sma(a,b);while(0);u=i;return}function _D(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(QM(c,f[a>>2]|0)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){g=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=g;break a}d=f[a>>2]|0}while(QM(c,d)|0);f[a>>2]=0;e=f[g>>2]|0;f[g>>2]=d;if(e|0)Cbb(e);g=g+4|0}}while(0);return b|0}function $D(a){a=a|0;var c=0,d=0,e=0,g=0;e=s8(24)|0;_Ya(e);pha(e,f[(f[a>>2]|0)+132>>2]|0);g=f[a>>2]|0;d=g+132|0;c=0;while(1){if(c>>>0>=(f[d>>2]|0)>>>0)break;f[(f[e>>2]|0)+(c<<2)>>2]=c;c=c+1|0}c=a+2504|0;if(!(b[c>>0]|0)){d=f[e>>2]|0;g=d+((BZa(Jbb(f[g+32>>2]|0)|0)|0)<<2)|0;ZF(g,f[e+4>>2]|0,a+4|0)}else b[c>>0]=0;lt(a,e);return e|0}function aE(a){a=a|0;var b=0,c=0,d=0;GLa(a,6);b=a+24|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+40>>2]=1065353216;b=a+44|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+60>>2]=1065353216;b=a+64|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+80>>2]=1065353216;b=a+84|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+100>>2]=1065353216;f[a+104>>2]=0;f[a+108>>2]=0;f[a+112>>2]=0;b=a+168|0;c=a+124|0;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=1065353216;d=a+172|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[a+188>>2]=1065353216;return}function bE(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;h=i+16|0;b=i+8|0;e=i;g=v$a(a)|0;if(g|0?(f[b>>2]=f[g+8>>2],f[h>>2]=f[b>>2],!(OM(g,h)|0)):0){c=g+12|0;Q$a(h,c);LUa(e,c);d=h+4|0;b=f[e>>2]|0;a=f[e+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[d>>2]|0,b,a)|0))break;QOa(h)|0;YYa(h)}if((f[g+4>>2]|0)==5)RCa(c)|0}u=i;return}function cE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=DCa(134176,110633)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=dk(a)|0;f[c+8>>2]=j;uXa(c);u=i;return}function dE(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;i=u;u=u+16|0;j=i+4|0;h=i;g=FWa(lF(Or(c,0)|0)|0,46)|0;f[j>>2]=e?g+12|0:g+5|0;g=qWa(f[a+4>>2]|0)|0;b[g+20>>0]=e&1;f[g+4>>2]=d;e=Op(j,(Ixa(d)|0)&255)|0;b[g+8>>0]=e;d=f[j>>2]|0;if(!(b[d>>0]|0))d=0;else d=(b[d+1>>0]|0)==115&1;b[g+9>>0]=d;hLa(h,e&255,0);j=ZQa(a,Or(c,rh(c,g+12|0,g+16|0,f[h>>2]|0)|0)|0)|0;f[g+24>>2]=j;PWa(g);u=i;return g|0}function eE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+12|0;d=e;f[d>>2]=f[b+8>>2];f[d+4>>2]=f[b+12>>2];f[d+8>>2]=f[b+16>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,3);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+12|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function fE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;iO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;MK(a,c);S0(c);u=h;return}}function gE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;iO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;MK(a,c);T0(c);u=h;return}}function hE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i+8|0;e=i+4|0;g=i;j=f[a+44>>2]|0;h=t_(j,b+24|0)|0;if((h|0)!=(j+4|0)?(d=h+20|0,j=f[a+32>>2]|0,Jbb(j)|0,!(g2a(f[d>>2]|0,f[j>>2]|0)|0)):0){j=f[a+36>>2]|0;Jbb(j)|0;_0a(e,j);f[g>>2]=f[d>>2];j=f[b+4>>2]|0;f[c>>2]=f[g>>2];j=tda(e,c,b+8|0,j)|0;GVa(f[a+16>>2]|0,j)|0}u=i;return}function iE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=c;a:do if(!((e^a)&3)){if(!(e&3))d=c;else while(1){e=b[c>>0]|0;b[a>>0]=e;if(!(e<<24>>24))break a;c=c+1|0;a=a+1|0;if(!(c&3)){d=c;break}}c=f[d>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))while(1){d=d+4|0;e=a+4|0;f[a>>2]=c;c=f[d>>2]|0;if((c&-2139062144^-2139062144)&c+-16843009|0){a=e;break}else a=e}g=a;h=10}else{d=c;g=a;h=10}while(0);if((h|0)==10?(h=b[d>>0]|0,b[g>>0]=h,h<<24>>24):0){a=g;do{d=d+1|0;a=a+1|0;h=b[d>>0]|0;b[a>>0]=h}while(h<<24>>24!=0)}return}function jE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;e=j;g=j+4|0;f[e>>2]=c;h=a+8|0;i=a+12|0;k=f[i>>2]|0;d=k;if((f[a+64>>2]|0)!=(k-(f[h>>2]|0)>>2|0))Ca(54229,54111,367,54278);if(!(Qab(f[b>>2]|0)|0))Ca(54287,54111,368,54278);if((f[a+16>>2]|0)==(d|0))LL(h,e);else{f[d>>2]=c;f[i>>2]=d+4}i=f[a+52>>2]|0;f[g>>2]=i;k=zZ(a+56|0,b)|0;f[k>>2]=i;k=nZ(a+44|0,g)|0;f[k>>2]=f[b>>2];u=j;return f[g>>2]|0}function kE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;d=j+24|0;g=j+8|0;h=j;NVa(g,(f[a>>2]|0)+144|0);i=b+12|0;e=b+16|0;c=0;while(1){if(c>>>0>=(Jbb(f[e>>2]|0)|0)>>>0)break;k=ODa(i,c)|0;faa(g,d3(a,f[k>>2]|0)|0);c=c+1|0}f[h>>2]=f[b+8>>2];k=f[b+4>>2]|0;f[d>>2]=f[h>>2];k=Aca(a+32|0,d,g,k)|0;u=j;return k|0}function lE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=f[a+4>>2]|0;a:do if(e){g=e+-1|0;h=(g&e|0)==0;if(!h)if(e>>>0>b>>>0)d=b;else d=(b>>>0)%(e>>>0)|0;else d=g&b;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;if((c|0)==(b|0)){if((f[a+8>>2]|0)==(b|0))break a}else{if(!h){if(c>>>0>=e>>>0)c=(c>>>0)%(e>>>0)|0}else c=c&g;if((c|0)!=(d|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function mE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;while(1){if((a|0)==(b|0))break;if(t0(c,a)|0){d=5;break}a=a+4|0}a:do if((d|0)==5){e=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=e;break a}}while(t0(c,a)|0);g=f[a>>2]|0;f[a>>2]=0;d=f[e>>2]|0;f[e>>2]=g;if(d|0)Cbb(d);e=e+4|0}}while(0);return b|0}function nE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){Rwa(d);Cbb(d)}}f[g>>2]=e;sD(a);f[a+36>>2]=f[a+64>>2];zFa(a,b);if(f[a+76>>2]|0)Ca(115718,115739,246,115765);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115780,115739,247,115765);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115800,115739,248,115765)}function oE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+33>>0]|0){g=DCa(134176,110569)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(c);Wq(g,e)|0;fu(g)|0;break}i=Ia()|0;OCa(c);Ua(i|0)}while(0);Gv(f[a+28>>2]|0,0)|0;u=h;return}function pE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;do if(b[a+33>>0]|0){e=DCa(134176,110617)|0;dYa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[d>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,h=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,i=x,x=0,!(i&1)):0){OCa(d);Wq(e,h)|0;fu(e)|0;break}i=Ia()|0;OCa(d);Ua(i|0)}while(0);Gv(f[a+28>>2]|0,15)|0;u=g;return}function qE(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;j=u;u=u+112|0;d=j;e=j+100|0;f[e>>2]=d+100;BW(a+8|0,d,e,g,h,i);i=f[e>>2]|0;h=d;d=f[c>>2]|0;while(1){if((h|0)==(i|0))break;e=b[h>>0]|0;if(!d)d=0;else{a=d+24|0;g=f[a>>2]|0;if((g|0)==(f[d+28>>2]|0)){c=f[(f[d>>2]|0)+52>>2]|0;e=d7a(e)|0;e=dc[c&255](d,e)|0}else{f[a>>2]=g+1;b[g>>0]=e;e=d7a(e)|0}c=g2a(e,-1)|0;d=c?0:d}h=h+1|0}u=j;return d|0}function rE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;iO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;MK(a,c);B1(c);u=h;return}}function sE(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);switch(f[b+8>>2]|0){case 2:{_Ba(a);d=ODa(b+16|0,0)|0;QP(a,f[d>>2]|0);pfa(a);break}case 3:{Bfa(f[a>>2]|0,f[b+12>>2]|0)|0;Ema(f[a>>2]|0,41)|0;break}default:Ema(f[a>>2]|0,41)|0}u=c;return}function tE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+32|0;c=g+12|0;d=g+16|0;e=g;f[c>>2]=b;b=Z$a(f[b+12>>2]|0)|0;f[d>>2]=b;if(((b|0?v2a(f[b+4>>2]|0)|0:0)?v2a(f[(f[b+8>>2]|0)+4>>2]|0)|0:0)?(f[e>>2]=a,f[e+4>>2]=d,f[e+8>>2]=c,!(gB(e,f[b+12>>2]|0,f[b+16>>2]|0,0)|0)):0){d=f[d>>2]|0;gB(e,f[d+16>>2]|0,f[d+12>>2]|0,1)|0}u=g;return}function uE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=a+8|0;Ry(a,a+4|0,c)|0;g=a+12|0;while(1){if((g|0)==(b|0))break;e=f[g>>2]|0;h=e;if($Pa(e,f[c>>2]|0)|0){d=g;while(1){f[d>>2]=f[c>>2];if((c|0)==(a|0)){c=a;break}d=c+-4|0;if($Pa(e,f[d>>2]|0)|0){i=c;c=d;d=i}else break}f[c>>2]=h}c=g;g=g+4|0}return}function vE(a,b){a=a|0;b=b|0;var c=0;a:do if(!(KMa(b)|0)?YS(a+44|0,b)|0:0){c=f[b>>2]|0;do if(Dab(c)|0){if(!(IC(b)|0)){c=f[b>>2]|0;break}c=eQa(b,1)|0;if(!(KMa(c)|0))break a;Ih(a,b,c);break a}while(0);if(zab(c)|0?Zx(b)|0:0){if(KMa(b)|0)Ca(113337,113307,97,113354);if(v2a(f[(f[b+4>>2]|0)+4>>2]|0)|0)Ui(a,b)}}while(0);return}function wE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;d=u;u=u+64|0;e=d+44|0;c=d;g=f[a>>2]|0;h=a+8|0;f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];f[e+12>>2]=f[h+12>>2];f[e+16>>2]=f[h+16>>2];r3(c,g,e);if(b[a+177>>0]|0){h0a(c);A_a(c,(b[a+178>>0]|0)!=0)}x=0;ua(86,f[a+48>>2]|0,c|0);h=x;x=0;if((!(h&1)?(x=0,ta(434,c|0),h=x,x=0,!(h&1)):0)?(x=0,ta(438,c|0),h=x,x=0,!(h&1)):0){Wca(c);u=d;return}h=Ia()|0;Wca(c);Ua(h|0)}function xE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;iO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;MK(a,c);u4(c);u=h;return}}function yE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)dea();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;TM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[g>>2]=e+12;JN(a,c);dga(c);u=h;return}}function zE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=i+4|0;f[e>>2]=b;c=tRa(f[b>>2]|0)|0;h=f[a+80>>2]|0;if(h){f[g>>2]=0;a=c+8|0;c=h+28|0;d=f[c>>2]|0;if(d>>>0<(f[h+32>>2]|0)>>>0){mV(d,0,f[a>>2]|0,b);f[c>>2]=(f[c>>2]|0)+16}else FA(h+24|0,g,a,e)}else{h=f[a+36>>2]|0;Jbb(h)|0;_0a(g,h);h=xu(g,c)|0;f[b>>2]=h}u=i;return}function AE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h+4|0;e=h;f[g>>2]=b;f[e>>2]=c;b=a+48|0;d=i_(b,g)|0;d=f[d>>2]|0;Wla(a,f[g>>2]|0);if((hX(b,c)|0)!=(a+52|0)){b=i_(b,e)|0;f[b>>2]=d;b=f[e>>2]|0;if((f[(f[g>>2]|0)+4>>2]|0)!=(f[b+4>>2]|0))Mv(a,b)}else PW(a,c,d,f[g>>2]|0);u=h;return}function BE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>2>>>0>>0){e=f[a>>2]|0;c=c-e>>2;d=c+b|0;if(d>>>0>1073741823)dea();else{e=h-e|0;h=e>>1;iO(g,e>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823,c,a+8|0);bla(g,b);wP(a,g);Hja(g);break}}else Fma(a,b);while(0);u=i;return}function CE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;f[g>>2]=c;f[g+4>>2]=d;while(1){if((a|0)==(b|0))break;if(uN(g,f[a>>2]|0)|0){e=5;break}a=a+4|0}a:do if((e|0)==5){c=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=c;break a}}while(uN(g,f[a>>2]|0)|0);f[c>>2]=f[a>>2];c=c+4|0}}while(0);u=h;return b|0}function DE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+33>>0]|0){g=DCa(134176,110633)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(c);Wq(g,e)|0;fu(g)|0;break}i=Ia()|0;OCa(c);Ua(i|0)}while(0);Gv(f[a+28>>2]|0,26)|0;u=h;return}function EE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){dCa(d);Cbb(d)}}f[g>>2]=e;SC(a);f[a+36>>2]=f[a+64>>2];lGa(a,b);if(f[a+76>>2]|0)Ca(115718,115739,246,115765);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115780,115739,247,115765);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115800,115739,248,115765)}function FE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+33>>0]|0){g=DCa(134176,110590)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(c);Wq(g,e)|0;fu(g)|0;break}i=Ia()|0;OCa(c);Ua(i|0)}while(0);Gv(f[a+28>>2]|0,1)|0;u=h;return}function GE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+8|0;e=h;c=f[b>>2]|0;g=hX(a,c)|0;if((g|0)==(a+4|0)){g=a+12|0;f[d>>2]=c;f[d+4>>2]=0;N4(g,d);c=f[g>>2]|0;g=f[b>>2]|0;f[e>>2]=g;f[e+4>>2]=c;rC(d,a,g,e)}else c=f[g+20>>2]|0;u=h;return c+12|0}function HE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];f[g>>2]=e+16;OO(a,c);Bha(c);u=h;return}}function IE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;TLa(e,b);f[g>>2]=e+16;$L(a,c);j8(c);u=h;return}}function JE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;TLa(e,b);f[g>>2]=e+16;$L(a,c);k8(c);u=h;return}}function KE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;TLa(e,b);f[g>>2]=e+16;$L(a,c);l8(c);u=h;return}}function LE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;TLa(e,b);f[g>>2]=e+16;$L(a,c);m8(c);u=h;return}}function ME(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;TLa(e,b);f[g>>2]=e+16;$L(a,c);n8(c);u=h;return}}function NE(a,b){a=a|0;b=b|0;var c=0,d=0;d=Jbb(a)|0;c=f[b>>2]|0;DCa(DCa(d,Fha(c)|0)|0,75289)|0;switch(c|0){case 0:{DCa(a,116873)|0;break}case 1:{Am(a,f[b+8>>2]|0)|0;break}case 2:{d=b+8|0;tm(a,f[d>>2]|0,f[d+4>>2]|0)|0;break}case 3:{tI(a,+TNa(b));break}case 4:{$t(a,+SNa(b));break}default:hb()}return a|0}function OE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/24|0;g=e+1|0;if(g>>>0>178956970)dea();else{i=((f[a+8>>2]|0)-d|0)/24|0;d=i<<1;aN(c,i>>>0<89478485?(d>>>0>>0?g:d):178956970,e,a+8|0);g=c+8|0;e=f[g>>2]|0;mW(e,b);f[g>>2]=e+24;pM(a,c);Zaa(c);u=h;return}}function PE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;k=a+56|0;D8(k,kQa(c)|0);pKa(a+16|0,c);a=a+76|0;while(1){a=f[a>>2]|0;if(!a)break;c=a;g=f[c+8>>2]|0;c=f[c+12>>2]|0;d=f[k>>2]|0;e=f[d+(c*20|0)+16>>2]|0;do if(e|0?(i=f[d+(c*20|0)>>2]|0,j=f[d+(c*20|0)+8>>2]|0,(j+i|0)==(e|0)):0){if(i|0?(f[d+(c*20|0)+4>>2]|0)!=((h[g+8>>0]|0)<<3|0):0)break;if(j|0?(f[d+(c*20|0)+12>>2]|0)!=((h[g+8>>0]|0)<<3|0):0)break;b[g+9>>0]=i<<1>>>0>=j>>>0&1}while(0)}return}function QE(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+12>>0]|0){g=DCa(134176,99210)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(c);Wq(g,e)|0;fu(g)|0;break}i=Ia()|0;OCa(c);Ua(i|0)}while(0);tN(a,1836278016);tN(a,1);u=h;return}function RE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=c&255;a:do if(!e)a=a+(dV(a)|0)|0;else{if(a&3){d=c&255;do{g=b[a>>0]|0;if(g<<24>>24==0?1:g<<24>>24==d<<24>>24)break a;a=a+1|0}while((a&3|0)!=0)}e=X(e,16843009)|0;d=f[a>>2]|0;b:do if(!((d&-2139062144^-2139062144)&d+-16843009))do{g=d^e;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;a=a+4|0;d=f[a>>2]|0}while(!((d&-2139062144^-2139062144)&d+-16843009|0));while(0);d=c&255;while(1){g=b[a>>0]|0;if(g<<24>>24==0?1:g<<24>>24==d<<24>>24)break;else a=a+1|0}}while(0);return a|0}function SE(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=K1a(a)|0;while(1){a=f[e+16>>2]|0;if((a|0)>(c|0)){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if((a|0)>=(c|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function TE(a){a=a|0;var b=0,c=0,d=0;f[a+148>>2]=0;f[a+152>>2]=1;f[a+156>>2]=0;c=a+76|0;DCa(f[c>>2]|0,87996)|0;b=a+64|0;a=0;while(1){d=f[b>>2]|0;if(a>>>0>=(((f[d+136>>2]|0)-(f[d+132>>2]|0)|0)/12|0)>>>0)break;if(a|0)DCa(f[c>>2]|0,123342)|0;d=DCa(f[c>>2]|0,118457)|0;DCa(Pca(d,(f[(f[b>>2]|0)+132>>2]|0)+(a*12|0)|0)|0,118457)|0;a=a+1|0}DCa(f[c>>2]|0,88021)|0;return}function UE(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;g=f[b+68>>2]|0;if(!g){a=Ea(4)|0;Cab(a);Pa(a|0,39536,426)}g=bc[f[(f[g>>2]|0)+24>>2]&511](g)|0;h=b+64|0;if((((f[h>>2]|0)!=0?!(((c|0)!=0|(d|0)!=0)&(g|0)<1):0)?(bc[f[(f[b>>2]|0)+24>>2]&511](b)|0)==0&e>>>0<3:0)?(d=X(g,c)|0,(R0a(f[h>>2]|0,(g|0)>0?d:0,e)|0)==0):0){c=fbb(f[h>>2]|0)|0;h=b+72|0;g=f[h>>2]|0;h=f[h+4>>2]|0;b=c;c=((c|0)<0)<<31>>31}else{g=0;h=0;b=-1;c=-1}e=a;f[e>>2]=g;f[e+4>>2]=h;a=a+8|0;f[a>>2]=b;f[a+4>>2]=c;return}function VE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=wUa(f[a+4>>2]|0)|0;c=yi(a,Or(b,1)|0)|0;f[d+8>>2]=c;if((bYa(b)|0)!=2){c=lF(Or(b,0)|0)|0;if(g2a(c,f[33095]|0)|0){e=(bYa(b)|0)>>>0>3;c=Or(b,2)|0;if(e){c=ZQa(a,c)|0;f[d+12>>2]=c;c=Or(b,3)|0}e=ZQa(a,c)|0;f[d+16>>2]=e}else{e=ZQa(a,Or(b,2)|0)|0;f[d+12>>2]=e}Cqa(d)}return d|0}function WE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+8|0;d=e;f[d>>2]=f[b+20>>2];f[d+4>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,2);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+8|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function XE(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=a+11|0;e=b[j>>0]|0;h=e<<24>>24<0;if(h){g=(f[a+8>>2]&2147483647)+-1|0;i=f[a+4>>2]|0}else{g=10;i=e&255}if((g-i|0)>>>0>=d>>>0){if(d|0){if(h)e=f[a>>2]|0;else e=a;if(i){XTa(e+d|0,e,i)|0;c=e>>>0<=c>>>0&(e+i|0)>>>0>c>>>0?c+d|0:c}XTa(e,c,d)|0;c=i+d|0;if((b[j>>0]|0)<0)f[a+4>>2]=c;else b[j>>0]=c;Z0a(e+c|0,0)}}else pD(a,g,i+d-g|0,i,0,0,d,c);return a|0}function YE(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=a+36|0;e=f[d>>2]|0;g=Ni(a)|0;a:do if(O2a(g)|0)Ef(a,e+c-(f[d>>2]|0)|0);else{i=f[a>>2]|0;h=i+120|0;bZ(h,(((f[i+124>>2]|0)-(f[h>>2]|0)|0)/24|0)+1|0);h=f[(f[a>>2]|0)+124>>2]|0;bFa(h+-24|0,g)|0;d=e-(f[d>>2]|0)+c|0;e=h+-12|0;lia(e,d);c=0;while(1){if((c|0)==(d|0))break a;i=Fr(a)|0;b[(f[e>>2]|0)+c>>0]=i;c=c+1|0}}while(0);return}function ZE(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e;d=e+16|0;b=q8(f[a+4>>2]|0,b)|0;f[d>>2]=b;if(!b)Ca(73237,73170,506,73242);if(KMa(b)|0){d=(QRa(f[b+4>>2]|0)|0)+8|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];nba(c)}else{c=DCa(134008,123452)|0;d=gm(a+8|0,d)|0;zm(c,f[d>>2]|0)|0}u=e;return}function _E(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+8|0;d=e;f[d>>2]=f[b+12>>2];f[d+4>>2]=f[b+16>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,2);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+8|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function $E(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;b=e+12|0;c=e;d=s8(24)|0;mPa(d);f[d>>2]=f[33161];L1a(b,f[33047]|0);f[d+4>>2]=f[b>>2];f[d+8>>2]=f[33161];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,108684,j7a(108684)|0);x=0;b=ia(55,c|0,a|0)|0;g=x;x=0;if(g&1){g=Ia()|0;MTa(c);Ua(g|0)}else{f[d+16>>2]=f[b>>2];MTa(c);f[d+12>>2]=0;_s(a,d);u=e;return}}function aF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=a+24|0;c=f[h>>2]|0;Zba(c,kQa(b)|0);c=0;while(1){if(c>>>0>=(kQa(b)|0)>>>0)break;g=f[f[h>>2]>>2]|0;if(KVa(b,c)|0){d=eZa(s9(b,c)|0)|0;e=-1}else{d=0;e=0}f[g+(c<<3)+4>>2]=e;f[g+(c<<3)>>2]=d;c=c+1|0}NKa(a,b);c=0;while(1){if(c>>>0>=(kQa(b)|0)>>>0)break;d=(f[f[h>>2]>>2]|0)+(c<<3)+4|0;if((f[d>>2]|0)==-1)f[d>>2]=0;c=c+1|0}return}function bF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){dCa(d);Cbb(d)}}f[g>>2]=e;eD(a);f[a+36>>2]=f[a+64>>2];UJa(a,b);if(f[a+76>>2]|0)Ca(115718,115739,246,115765);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115780,115739,247,115765);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115800,115739,248,115765)}function cF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+32|0;c=e+8|0;d=e;f[d>>2]=f[b+24>>2];f[d+4>>2]=f[b+28>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,2);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+8|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function dF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;b=f[b+24>>2]|0;f[d>>2]=b;c=a+32|0;if(!(P5(c,d)|0)){dG(e+8|0,c,d,d);d=DCa(134008,100923)|0;DCa(Bfa(DCa(Bfa(d,f[f[a+28>>2]>>2]|0)|0,101083)|0,b)|0,101090)|0}u=e;return}function eF(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0;d=a+104|0;j=f[d>>2]|0;if((j|0)!=0?(f[a+108>>2]|0)>=(j|0):0)k=4;else{c=Ywa(a)|0;if((c|0)>=0){d=f[d>>2]|0;j=f[a+8>>2]|0;if(d){e=a+4|0;i=f[e>>2]|0;g=d-(f[a+108>>2]|0)|0;d=j;if((j-i|0)<(g|0))k=9;else f[a+100>>2]=i+(g+-1)}else{e=a+4|0;d=j;k=9}if((k|0)==9)f[a+100>>2]=j;if(!d)d=f[e>>2]|0;else{j=f[e>>2]|0;a=a+108|0;f[a>>2]=d+1-j+(f[a>>2]|0);d=j}d=d+-1|0;if((c|0)!=(h[d>>0]|0|0))b[d>>0]=c}else k=4}if((k|0)==4){f[a+100>>2]=0;c=-1}return c|0}function fF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;d=(f[j>>2]|0)!=513;h=f[a>>2]|0;g=h;k=(f[c>>2]|0)-g|0;e=k<<1;e=k>>>0<2147483647?((e|0)==0?4:e):-1;g=(f[b>>2]|0)-g>>2;h=xZ(d?h:0,e)|0;if(!h)aXa();do if(!d){d=f[a>>2]|0;f[a>>2]=h;if(d){x=0;ta(f[j>>2]|0,d|0);k=x;x=0;if(k&1){k=Ja(0)|0;y2a(k)}else{i=f[a>>2]|0;break}}else i=h}else{f[a>>2]=h;i=h}while(0);f[j>>2]=515;f[b>>2]=i+(g<<2);f[c>>2]=(f[a>>2]|0)+(e>>>2<<2);return}function gF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=a+16|0;i=f[j>>2]|0;g=f[a+12>>2]|0;e=i-g>>2;d=f[b>>2]|0;c=0;while(1){if(c>>>0>=e>>>0)break;if(g2a(f[f[g+(c<<2)>>2]>>2]|0,d)|0){h=4;break}c=c+1|0}if((h|0)==4){e=g+(c<<2)|0;while(1){c=e+4|0;if((c|0)==(i|0))break;h=f[c>>2]|0;f[c>>2]=0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)Cbb(d);e=c}c=f[j>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Cbb(d)}f[j>>2]=e}a8(a+184|0,b);return}function hF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=a+28|0;i=f[j>>2]|0;g=f[a+24>>2]|0;e=i-g>>2;d=f[b>>2]|0;c=0;while(1){if(c>>>0>=e>>>0)break;if(g2a(f[f[g+(c<<2)>>2]>>2]|0,d)|0){h=4;break}c=c+1|0}if((h|0)==4){e=g+(c<<2)|0;while(1){c=e+4|0;if((c|0)==(i|0))break;h=f[c>>2]|0;f[c>>2]=0;d=f[e>>2]|0;f[e>>2]=h;if(d|0)Cbb(d);e=c}c=f[j>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Cbb(d)}f[j>>2]=e}a8(a+196|0,b);return}function iF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=f[a+40>>2]|0;g=a+44|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){dCa(d);Cbb(d)}}f[g>>2]=e;jD(a);f[a+36>>2]=f[a+64>>2];mKa(a,b);if(f[a+76>>2]|0)Ca(115718,115739,246,115765);if((f[a+84>>2]|0)!=(f[a+80>>2]|0))Ca(115780,115739,247,115765);if((f[a+96>>2]|0)==(f[a+92>>2]|0))return;else Ca(115800,115739,248,115765)}function jF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;d=b+64|0;do if((f[d>>2]|0)!=0?(bc[f[(f[b>>2]|0)+24>>2]&511](b)|0)==0:0)if(!(R0a(f[d>>2]|0,f[c+8>>2]|0,0)|0)){g=c;d=f[g+4>>2]|0;b=b+72|0;f[b>>2]=f[g>>2];f[b+4>>2]=d;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];break}else{g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1;break}else e=3;while(0);if((e|0)==3){g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1}return}function kF(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+8>>2]&511](j)|0;a=b[j+8+3>>0]|0;if(a<<24>>24<0)i=f[j+4>>2]|0;else i=a&255;a=b[j+20+3>>0]|0;if(a<<24>>24<0)a=f[j+16>>2]|0;else a=a&255;do if((i|0)!=(0-a|0)){a=(xg(d,e,j,j+24|0,h,g,0)|0)-j|0;i=f[c>>2]|0;if((i|0)==12&(a|0)==0){f[c>>2]=0;break}if((i|0)<12&(a|0)==12)f[c>>2]=i+12}else f[g>>2]=f[g>>2]|4;while(0);return}function lF(a){a=a|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;if(V7a(b[a>>0]|0)|0){u=c;return f[a+20>>2]|0}e=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=j7a(99348)|0;x=0;va(87,d|0,99348,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,e|0,d|0,f[a+28>>2]|0,f[a+32>>2]|0);a=x;x=0;if(a&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}c=Ia()|0;MTa(d);if(a)g=7}else{c=Ia()|0;g=7}if((g|0)==7)La(e|0);Ua(c|0);return 0}function mF(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+8>>2]&511](j)|0;a=b[j+11>>0]|0;if(a<<24>>24<0)i=f[j+4>>2]|0;else i=a&255;a=b[j+12+11>>0]|0;if(a<<24>>24<0)a=f[j+16>>2]|0;else a=a&255;do if((i|0)!=(0-a|0)){a=(vg(d,e,j,j+24|0,h,g,0)|0)-j|0;i=f[c>>2]|0;if((i|0)==12&(a|0)==0){f[c>>2]=0;break}if((i|0)<12&(a|0)==12)f[c>>2]=i+12}else f[g>>2]=f[g>>2]|4;while(0);return}function nF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;d=a;l=c+4|0;j=c+8|0;e=f[d>>2]|0;d=f[d+4>>2]|0;while(1){g=e&255;i=g&127;b[k>>0]=i;h=BJa(e|0,d|0,7)|0;d=I;if(!(Ona(a,h,d,i)|0))break;e=g|-128;b[k>>0]=e;g=f[l>>2]|0;if((g|0)==(f[j>>2]|0))ZL(c,k);else{b[g>>0]=e;f[l>>2]=(f[l>>2]|0)+1}e=h}d=f[l>>2]|0;if((d|0)==(f[j>>2]|0))ZL(c,k);else{b[d>>0]=i;f[l>>2]=(f[l>>2]|0)+1}u=m;return}function oF(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;d=b;a=lx(a)|0;if(v2a(a)|0){u=b;return a|0}c=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;b=j7a(97934)|0;x=0;va(87,d|0,97934,b|0);b=x;x=0;if(!(b&1)){x=0;ua(261,c|0,d|0);b=x;x=0;if(b&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;MTa(d);if(b)e=7}else{a=Ia()|0;e=7}if((e|0)==7)La(c|0);Ua(a|0);return 0}function pF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;f=u;u=u+64|0;e=f+24|0;d=f;VZ(d,c);x=0;va(140,e|0,b|0,d|0);c=x;x=0;do if(!(c&1)){xta(d);x=0;a=ia(159,e|0,a|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MQa(e);break}else{MQa(e);u=f;return a|0}}else{a=Ia()|0;xta(d)}while(0);Ua(a|0);return 0}function qF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;d=a+32|0;e=h[c+8>>0]|0;if(!(b[c+20>>0]|0)){j=(b[c+9>>0]|0)!=0;i=Jbb(f[c+12>>2]|0)|0;g=Jbb(f[c+16>>2]|0)|0;a=d3(a,f[c+24>>2]|0)|0;a=C5(f[d>>2]|0,e,j,i,g,a,f[c+4>>2]|0)|0}else{j=Jbb(f[c+12>>2]|0)|0;a=d3(a,f[c+24>>2]|0)|0;a=Kya(f[d>>2]|0,e,j,a,f[c+4>>2]|0)|0}return a|0}function rF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)Dl(a,b)}}else Dl(a,b);return}function sF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;e=l+4|0;g=l;h=nRa(f[b>>2]|0)|0;f[e>>2]=h;i=a+64|0;j=f[i>>2]|0;k=h;if(j|0){c=j+4|0;d=f[c>>2]|0;if(d>>>0<(f[j+8>>2]|0)>>>0){f[d>>2]=k;f[c>>2]=(f[c>>2]|0)+4}else LL(j,e);j=Fm((f[i>>2]|0)+12|0,h+8|0)|0;f[j>>2]=h;j=f[a+120>>2]|0;f[g>>2]=k;k=i_(j,g)|0;f[k>>2]=b}u=l;return}function tF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;i=j;a:do if(!(b0a(c)|0)){h=(c|0)!=0;e=0;g=0;do{d=(1<>2]|0;else d=tl(g,d?135337:b)|0;e=e+((d|0)!=0&1)|0;f[i+(g<<2)>>2]=d;g=g+1|0}while((g|0)!=6);switch(e&2147483647|0){case 0:{c=133704;break a}case 1:{if((f[i>>2]|0)==46152){c=46180;break a}break}default:{}}}else{d=0;do{if(1<>2]=i}d=d+1|0}while((d|0)!=6)}while(0);u=j;return c|0}function uF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>3;g=e+1|0;if(g>>>0>536870911)dea();else{d=(f[a+8>>2]|0)-d|0;i=d>>2;FN(c,d>>3>>>0<268435455?(i>>>0>>0?g:i):536870911,e,a+8|0);g=c+8|0;e=f[g>>2]|0;i=b;b=f[i+4>>2]|0;d=e;f[d>>2]=f[i>>2];f[d+4>>2]=b;f[g>>2]=e+8;JO(a,c);Aha(c);u=h;return}}function vF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=a+8|0;_x(a,a+4|0,d,c)|0;h=c+4|0;g=a+12|0;while(1){if((g|0)==(b|0))break;if(Ov(f[c>>2]|0,f[h>>2]|0,f[g>>2]|0,f[d>>2]|0)|0){i=f[g>>2]|0;e=g;while(1){f[e>>2]=f[d>>2];if((d|0)==(a|0)){d=a;break}e=d+-4|0;if(Ov(f[c>>2]|0,f[h>>2]|0,i,f[e>>2]|0)|0){j=d;d=e;e=j}else break}f[d>>2]=i}d=g;g=g+4|0}return}function wF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=f[a>>2]|0;g=a+4|0;h=b+4|0;c=f[g>>2]|0;while(1){if((c|0)==(e|0))break;d=(f[h>>2]|0)+-12|0;c=c+-12|0;f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}f[h>>2]=(f[h>>2]|0)+-12}e=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=e;e=b+8|0;d=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=d;a=a+8|0;g=b+12|0;e=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=e;f[b>>2]=f[h>>2];return}function xF(a){a=a|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;if(C7a(b[a>>0]|0)|0){u=c;return a+4|0}e=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=j7a(99364)|0;x=0;va(87,d|0,99364,c|0);c=x;x=0;if(!(c&1)){x=0;wa(138,e|0,d|0,f[a+28>>2]|0,f[a+32>>2]|0);a=x;x=0;if(a&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}c=Ia()|0;MTa(d);if(a)g=7}else{c=Ia()|0;g=7}if((g|0)==7)La(e|0);Ua(c|0);return 0}function yF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>3;h=g+1|0;if(h>>>0>536870911)dea();else{j=(f[a+8>>2]|0)-e|0;e=j>>2;FN(d,j>>3>>>0<268435455?(e>>>0>>0?h:e):536870911,g,a+8|0);h=d+8|0;g=f[h>>2]|0;MXa(g,f[b>>2]|0,f[c>>2]|0);f[h>>2]=g+8;JO(a,d);Aha(d);u=i;return}}function zF(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+12>>0]|0){g=DCa(134176,98838)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(c);Wq(g,e)|0;fu(g)|0;break}i=Ia()|0;OCa(c);Ua(i|0)}while(0);i=nq(a)|0;f[a+40>>2]=i;u=h;return}function AF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>3;h=g+1|0;if(h>>>0>536870911)dea();else{j=(f[a+8>>2]|0)-e|0;e=j>>2;FN(d,j>>3>>>0<268435455?(e>>>0>>0?h:e):536870911,g,a+8|0);h=d+8|0;g=f[h>>2]|0;f[g>>2]=f[b>>2];f[g+4>>2]=f[c>>2];f[h>>2]=g+8;JO(a,d);Aha(d);u=i;return}}function BF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=K1a(a)|0;while(1){a=f[e+16>>2]|0;if(a>>>0>c>>>0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(a>>>0>=c>>>0){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function CF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;d=(f[j>>2]|0)!=513;h=f[a>>2]|0;g=h;k=(f[c>>2]|0)-g|0;e=k<<1;e=k>>>0<2147483647?((e|0)==0?1:e):-1;g=(f[b>>2]|0)-g|0;h=xZ(d?h:0,e)|0;if(!h)aXa();do if(!d){d=f[a>>2]|0;f[a>>2]=h;if(d){x=0;ta(f[j>>2]|0,d|0);k=x;x=0;if(k&1){k=Ja(0)|0;y2a(k)}else{i=f[a>>2]|0;break}}else i=h}else{f[a>>2]=h;i=h}while(0);f[j>>2]=515;f[b>>2]=i+g;f[c>>2]=(f[a>>2]|0)+e;return}function DF(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;i=u;u=u+416|0;c=i;d=i+400|0;f[d>>2]=c+400;LN(a+8|0,c,d,e,g,h);h=f[d>>2]|0;g=c;c=f[b>>2]|0;while(1){if((g|0)==(h|0))break;d=f[g>>2]|0;if(!c)c=0;else{a=c+24|0;e=f[a>>2]|0;if((e|0)==(f[c+28>>2]|0)){b=f[(f[c>>2]|0)+52>>2]|0;d=Jbb(d)|0;d=dc[b&255](c,d)|0}else{f[a>>2]=e+4;f[e>>2]=d;d=Jbb(d)|0}b=$5a(d)|0;c=b?0:c}g=g+4|0}u=i;return c|0}function EF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;h=g+12|0;d=g;e=s8(24)|0;mPa(e);b=f[b>>2]|0;f[e>>2]=b;L1a(h,f[33048]|0);f[e+4>>2]=f[h>>2];f[e+8>>2]=b;B4(d,c);x=0;b=ia(55,d|0,a|0)|0;c=x;x=0;if(c&1){h=Ia()|0;MTa(d);Ua(h|0)}else{f[e+16>>2]=f[b>>2];MTa(d);f[e+12>>2]=0;_s(a,e);u=g;return}}function FF(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=SE(c,h,d)|0;d=f[g>>2]|0;if(!d){fia(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function GF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;if((((f[c+16>>2]|0)==0?(h=u$a(f[c+12>>2]|0)|0,h|0):0)?(d=h+16|0,(f[d>>2]|0)==0):0)?(e=c+8|0,j=f[e>>2]|0,c=f[h+12>>2]|0,LH(j,c,fZa(f[a+40>>2]|0)|0)|0):0){f[d>>2]=f[e>>2];Cqa(h);j=f[a+36>>2]|0;Jbb(j)|0;_0a(g,j);j=rCa(g,h)|0;GVa(f[a+16>>2]|0,j)|0;b[a+44>>0]=1}u=i;return}function HF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;a1a(a);c=f[c+8>>2]|0;if(!((c|0)!=0?(Ou(d,b,c),f[a>>2]=f[d>>2],f[a+4>>2]=f[d+4>>2],f[a+8>>2]=f[d+8>>2],f[a+12>>2]=f[d+12>>2],f[a+16>>2]=f[d+16>>2],K0a(a)|0):0))f[a+16>>2]=f[33118];u=e;return}function IF(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;tBa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Sda(d,f[a>>2]|0);a=a+4|0}ila(d,f[b+76>>2]|0,f[b+80>>2]|0);ila(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function JF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h+8|0;e=h;c=b+8|0;if(!(Jbb(f[b+12>>2]|0)|0))Ema(f[a>>2]|0,41)|0;else{_Ba(a);Q$a(g,c);LUa(e,c);d=g+4|0;c=f[e>>2]|0;b=f[e+4>>2]|0;while(1){if(!(qTa(f[g>>2]|0,f[d>>2]|0,c,b)|0))break;e=QOa(g)|0;QP(a,f[e>>2]|0);YYa(g)}pfa(a)}u=h;return}function KF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=a+4|0;wW(a,(((f[g>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);cz(c);e=Rm(a,c,123272)|0;cz(c);a=f[c>>2]|0;if((b[a>>0]|0)!=41)Ca(66119,65740,668,66691);f[c>>2]=a+1;c=f[g>>2]|0;d=c+-12|0;if((f[c+-8>>2]|0)!=(f[d>>2]|0))Ca(66275,65740,670,66691);a=0;while(1){if((a|0)==-1)break;h=a+-1|0;zSa(c+(h*12|0)|0);a=h}f[g>>2]=d;return e|0}function LF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;e=nq(a)|0;do if(e>>>0>4){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;_Z(d,96960,j7a(96960)|0);x=0;ua(1870,a|0,d|0);h=x;x=0;if(h&1){h=Ia()|0;MTa(d);Ua(h|0)}else{MTa(d);break}}while(0);wHa(b,voa(e)|0,0)|0;wHa(c,nq(a)|0,0)|0;u=g;return}function MF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>2>>>0>>0){e=f[a>>2]|0;c=c-e>>2;d=c+b|0;if(d>>>0>1073741823)dea();else{e=h-e|0;h=e>>1;iO(g,e>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823,c,a+8|0);tHa(g,b);wP(a,g);Hja(g);break}}else cJa(a,b);while(0);u=i;return}function NF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=a+116|0;f[g>>2]=b;f[a+120>>2]=c;d=kQa(b)|0;if(d|0){jMa(a);e=a+140|0;c=0;while(1){if((c|0)==(d|0))break;if(u_a(s9(f[g>>2]|0,c)|0)|0){b=s9(f[g>>2]|0,c)|0;if(KVa(f[g>>2]|0,c)|0)b=Vxa(a,b)|0;else b=n3(a,b)|0;f[(f[e>>2]|0)+(c<<2)>>2]=b}c=c+1|0}Lk(a,f[(f[g>>2]|0)+36>>2]|0)|0}return}function OF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+4|0;d=e;f[d>>2]=f[b+12>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,1);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+4|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function PF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h;g=h+4|0;f[e>>2]=c;if(!(v2a(c)|0))Ca(75884,54111,378,54297);d=kQa(a)|0;f[g>>2]=d;if(Qab(f[b>>2]|0)|0){i=zZ(a+56|0,b)|0;f[i>>2]=d;d=nZ(a+44|0,g)|0;f[d>>2]=f[b>>2]}b=a+24|0;d=f[b>>2]|0;if(d>>>0<(f[a+28>>2]|0)>>>0){f[d>>2]=c;f[b>>2]=d+4}else LL(a+20|0,e);u=h;return f[g>>2]|0}function QF(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;e=h;d=b[c>>0]|0;a:do if(d<<24>>24!=0?(b[c+1>>0]|0)!=0:0){iH(e|0,0,32)|0;d=b[c>>0]|0;if(d<<24>>24)do{j=d&255;i=e+(j>>>5<<2)|0;f[i>>2]=f[i>>2]|1<<(j&31);c=c+1|0;d=b[c>>0]|0}while(d<<24>>24!=0);c=b[a>>0]|0;if(!(c<<24>>24))d=a;else{d=a;do{j=c&255;if(f[e+(j>>>5<<2)>>2]&1<<(j&31)|0)break a;d=d+1|0;c=b[d>>0]|0}while(c<<24>>24!=0)}}else g=3;while(0);if((g|0)==3)d=RE(a,d<<24>>24)|0;u=h;return d-a|0}function RF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;zQa(e,f[b>>2]|0);f[g>>2]=e+16;WN(a,c);Pda(c);u=h;return}}function SF(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;if(b[a+32>>0]|0){h0a(c);A_a(c,0)}rma(c);if(b[(f[a+28>>2]|0)+1>>0]|0)Wka(c);f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;_Z(d,69379,j7a(69379)|0);x=0;ua(80,c|0,d|0);c=x;x=0;if(c&1){e=Ia()|0;MTa(d);Ua(e|0)}else{MTa(d);u=e;return}}function TF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+4|0;d=e;f[d>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,1);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+4|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function UF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+4|0;d=e;f[d>>2]=f[b+8>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(168,c|0,1);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}qda(c,d,d+4|0);x=0;va(170,a|0,c|0,f[b+4>>2]|0);g=x;x=0;if(g&1){g=Ia()|0;zSa(c);Ua(g|0)}else{zSa(c);u=e;return}}function VF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;HN(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+8|0);g=c+8|0;e=f[g>>2]|0;pXa(e,f[b>>2]|0);f[g>>2]=e+16;OO(a,c);Bha(c);u=h;return}}function WF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+48|0;c=e+4|0;d=e;do if(P5(b+56|0,132604)|0){f[d>>2]=f[33151];f[c>>2]=f[d>>2];d=UI(b,c)|0;f[a+80>>2]=d;Nqa(c,d,a+56|0,a+68|0);x=0;ua(1895,c|0,b+36|0);d=x;x=0;if(!(d&1)?(x=0,ua(1896,a+16|0,b|0),d=x,x=0,!(d&1)):0){P_a(c);break}e=Ia()|0;P_a(c);Ua(e|0)}while(0);u=e;return}function XF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;do if(!(qVa(a)|0)){c=hl(a+152|0,b+8|0)|0;d=a+140|0;e=c+4|0;g=f[e>>2]|0;if((g|0)==(f[c+8>>2]|0)){WB(c,d);break}else{eR(g,d);f[e>>2]=(f[e>>2]|0)+12;break}}while(0);b=f[b+16>>2]|0;if(!b)H_a(a);else Lk(a,b)|0;return a|0}function YF(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;e=i;g=f[a+8>>2]|0;c=f[a+4>>2]|0;do if((g-c|0)>>>0>>0){h=f[a>>2]|0;c=c-h|0;d=c+b|0;if((d|0)<0)dea();else{g=g-h|0;h=g<<1;rda(e,g>>>0<1073741823?(h>>>0>>0?d:h):2147483647,c,a+8|0);joa(e,b);ZP(a,e);poa(e);break}}else tpa(a,b);while(0);u=i;return}function ZF(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h;d=b-a|0;if((d|0)>4){HWa(h+8|0);e=b+-4|0;b=d>>>2;while(1){b=b+-1|0;if(a>>>0>=e>>>0)break;nWa(g,b);i=jw(c,g)|0;d=a+(i<<2)|0;if(i|0){i=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=i}a=a+4|0}}u=h;return}function _F(a,c){a=a|0;c=c|0;do if(a){if(c>>>0<128){b[a>>0]=c;a=1;break}if(!(f[f[11692]>>2]|0))if((c&-128|0)==57216){b[a>>0]=c;a=1;break}else{f[33448]=84;a=-1;break}if(c>>>0<2048){b[a>>0]=c>>>6|192;b[a+1>>0]=c&63|128;a=2;break}if(c>>>0<55296|(c&-8192|0)==57344){b[a>>0]=c>>>12|224;b[a+1>>0]=c>>>6&63|128;b[a+2>>0]=c&63|128;a=3;break}if((c+-65536|0)>>>0<1048576){b[a>>0]=c>>>18|240;b[a+1>>0]=c>>>12&63|128;b[a+2>>0]=c>>>6&63|128;b[a+3>>0]=c&63|128;a=4;break}else{f[33448]=84;a=-1;break}}else a=1;while(0);return a|0}function $F(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0;g=u;u=u+272|0;e=g;if(!(b[a>>0]|0))f=1;else{DCa(Pca(DCa(134176,87104)|0,d)|0,112641)|0;f=b[a>>0]^1}Gu(e,d,0,f&255);x=0;va(123,a|0,c|0,e|0);f=x;x=0;if(f&1){g=Ia()|0;HSa(e);Ua(g|0)}else{HSa(e);u=g;return}}function aG(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+8|0;e=k;h=a+36|0;if(!(g2a(f[c+24>>2]|0,f[h>>2]|0)|0)){g=c+8|0;Q$a(i,g);LUa(e,g);g=i+4|0;d=f[e>>2]|0;c=f[e+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;e=QOa(i)|0;if(g2a(f[e>>2]|0,f[h>>2]|0)|0){j=6;break}YYa(i)}if((j|0)==6)b[a+40>>0]=1}else b[a+40>>0]=1;u=k;return}function bG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;d=g;e=g+16|0;f[e>>2]=f[c+8>>2];if((t_(b+4|0,e)|0)==(b+8|0))Ca(58208,101308,807,107444);else{e=dY(b+4|0,e)|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];wAa(a,d);u=g;return}}function cG(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+44|0;d=f[e>>2]|0;g=f[a+24>>2]|0;if(d>>>0>>0){f[e>>2]=g;d=g}h=a+12|0;e=f[h>>2]|0;do if((f[a+8>>2]|0)>>>0>>0){if(g2a(c,-1)|0){f[h>>2]=e+-1;f[a+16>>2]=d;c=dXa(c)|0;break}if(!(f[a+48>>2]&16)){g=d7a(c)|0;e=e+-1|0;if(!(C$a(g,b[e>>0]|0)|0)){c=-1;break}}else{g=d7a(c)|0;e=e+-1|0}f[h>>2]=e;f[a+16>>2]=d;b[e>>0]=g}else c=-1;while(0);return c|0}function dG(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LD(c,h,d)|0;d=f[g>>2]|0;if(!d){fia(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function eG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=u;u=u+16|0;e=d+8|0;g=d+4|0;h=d;c=jQa(f[a+4>>2]|0)|0;L1a(e,lF(Or(b,1)|0)|0);j=f[e>>2]|0;f[c+24>>2]=j;i=f[a>>2]|0;f[g>>2]=j;f[e>>2]=f[g>>2];i=jJ(i,e)|0;g=f[a>>2]|0;f[h>>2]=f[i+16>>2];f[e>>2]=f[h>>2];e=(MI(g,e)|0)+4|0;f[c+4>>2]=f[e>>2];z7(a,b,bYa(b)|0,c);c0a(c);u=d;return c|0}function fG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);sFa(b+16|0);Cbb(b);return}function gG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);tFa(b+16|0);Cbb(b);return}function hG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);uFa(b+16|0);Cbb(b);return}function iG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);vFa(b+16|0);Cbb(b);return}function jG(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);wFa(b+16|0);Cbb(b);return}function kG(a,c){a=a|0;c=c|0;var d=0;Qua(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);d=f[a+36>>2]|0;Jbb(d)|0;pua(a,(b[d+114>>0]|0)==0,c);d=c+4|0;_X(a,b[c+12>>0]|0,f[d>>2]|0,c);eca(a,f[(f[c+20>>2]|0)+4>>2]|0,1,c,84095);eca(a,f[d>>2]|0,f[(f[c+24>>2]|0)+4>>2]|0,c,84130);Vka(a,f[d>>2]|0,c,83943);return}function lG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+16|0;g=h;b=wp(a,b,e,h+12|0,c)|0;if(!(f[b>>2]|0)){fia(g,a,d);PZ(a,f[e>>2]|0,b,f[g>>2]|0)}u=h;return}function mG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;Ou(d,b,c);if(K0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else a1a(a);u=e;return}function nG(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+128|0;g=m+124|0;l=m;h=l;i=46832;j=h+124|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((c+-1|0)>>>0>2147483646)if(!c){a=g;c=1;k=4}else{f[33448]=75;c=-1}else k=4;if((k|0)==4){k=-2-a|0;k=c>>>0>k>>>0?k:c;f[l+48>>2]=k;g=l+20|0;f[g>>2]=a;f[l+44>>2]=a;c=a+k|0;a=l+16|0;f[a>>2]=c;f[l+28>>2]=c;c=Ty(l,d,e)|0;if(k){l=f[g>>2]|0;b[l+(((l|0)==(f[a>>2]|0))<<31>>31)>>0]=0}}u=m;return c|0}function oG(a,c){a=a|0;c=c|0;var d=0,e=0;e=bYa(a)|0;d=f[c>>2]|0;do if((e|0)!=(d|0)){e=Or(a,d)|0;e=V7a(b[e>>0]|0)|0;d=f[c>>2]|0;if(e){f[c>>2]=d+1;d=VRa(lF(Or(a,d)|0)|0,0)|0;break}d=Or(a,d)|0;e=lF(Or(d,0)|0)|0;if(!(f2a(e,f[33109]|0)|0)){f[c>>2]=(f[c>>2]|0)+1;d=VRa(lF(Or(d,1)|0)|0,0)|0}else d=0}else d=0;while(0);return d|0}function pG(a){a=a|0;SQa(a+172|0);w8(a+152|0);zSa(a+140|0);g1(a+124|0);zSa(a+104|0);SQa(a+84|0);SQa(a+64|0);Zma(a+44|0);SQa(a+24|0);I_a(a);return}function qG(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;e=g;f[d>>2]=b;f[e>>2]=c;d=Ok(a+184|0,d)|0;b=lE(d,c)|0;if(!b){b=bTa(a)|0;e=Jm(d,e)|0;f[e>>2]=b}else b=f[b+12>>2]|0;u=g;return b|0}function rG(a,b){a=a|0;b=b|0;switch(f[b+8>>2]|0){case 34:case 26:case 9:case 1:{b=f[(f[b+12>>2]|0)+4>>2]|0;a=f[a+36>>2]|0;Jbb(a)|0;a=KSa(b,a)|0;break}case 22:case 21:case 18:case 17:case 16:case 47:case 46:case 43:case 42:case 41:{a=f[a+36>>2]|0;Jbb(a)|0;a=KSa(1,a)|0;break}case 33:case 32:case 8:case 7:{a=f[b+12>>2]|0;break}case 49:case 48:case 45:case 44:case 40:case 24:case 23:case 20:case 19:case 15:{a=f[a+36>>2]|0;Jbb(a)|0;a=I_(1,1,a)|0;break}default:a=0}return a|0}function sG(a,b){a=a|0;b=b|0;var c=0,d=0;if((f[b>>2]|0)!=(f[b+4>>2]|0))Rbb();if((f[b+12>>2]|0)!=(f[b+16>>2]|0))Rbb();if((f[b+24>>2]|0)!=(f[b+28>>2]|0))Rbb();c=f[b+48>>2]|0;d=a+-16+16|0;if((c|0)!=(f[b+52>>2]|0))nGa(d,f[c>>2]|0);c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;e3(d,f[a>>2]|0);a=a+4|0}moa(d,f[b+76>>2]|0,f[b+80>>2]|0)}function tG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=lw(a,b,0,1)|0;dYa(e,b+(f[(f[b>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){OCa(e);Wq(a,d)|0;fu(a)|0;u=g;return b|0}h=Ia()|0;OCa(e);Ua(h|0);return 0}function uG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;f=u;u=u+272|0;e=f;if(!(b[a>>0]|0))a=1;else{DCa(Pca(DCa(134176,86929)|0,d)|0,112641)|0;a=b[a>>0]^1}Gu(e,d,1,a&255);x=0;ua(1367,c|0,e|0);d=x;x=0;if(d&1){f=Ia()|0;HSa(e);Ua(f|0)}else{HSa(e);u=f;return}}function vG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;e=k+16|0;i=k;f[i>>2]=c;g=i+4|0;j=a+48|0;l=f[j>>2]|0;f[g>>2]=d-((l|0)!=0&1);h=a+44|0;f[i+8>>2]=f[h>>2];f[i+12>>2]=l;f[e>>2]=f[a+60>>2];f[e+4>>2]=i;f[e+8>>2]=2;e=N_a(Xa(145,e|0)|0)|0;if((e|0)>=1){i=f[g>>2]|0;if(e>>>0>i>>>0){g=f[h>>2]|0;h=a+4|0;f[h>>2]=g;f[a+8>>2]=g+(e-i);if(!(f[j>>2]|0))e=d;else{f[h>>2]=g+1;b[c+(d+-1)>>0]=b[g>>0]|0;e=d}}}else f[a>>2]=f[a>>2]|e&48^16;u=k;return e|0}function wG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+64|0;b=f[e>>2]|0;sD(a);c=a+56|0;d=f[c>>2]|0;if((d|0)==(f[a+60>>2]|0))LL(a+52|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}fH(b,f[e>>2]|0);b=a+96|0;c=f[b>>2]|0;if((c|0)==(f[a+100>>2]|0))LL(a+92|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function xG(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+20|0;switch(f[b>>2]|0){case 0:{d=f[a+4>>2]|0;e=Jbb(f[d+84>>2]|0)|0;c=a+16|0;f[c>>2]=e;d=nUa(d)|0;VPa(f[a+12>>2]|0,d,0);if(!(f[(f[a+8>>2]|0)+16>>2]|0))VPa(f[c>>2]|0,d,0);f[b>>2]=(f[b>>2]|0)+1;break}case 1:{e=f[a+4>>2]|0;d=Jbb(f[e+84>>2]|0)|0;e=nUa(e)|0;VPa(f[a+16>>2]|0,e,0);VPa(d,e,0);break}default:hb()}return}function yG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;nFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Pga(d,f[a>>2]|0);a=a+4|0}Fna(d,f[b+76>>2]|0,f[b+80>>2]|0);Fna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function zG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;w2(d,a,b);b=f[d>>2]|0;d=FI(a,e,b+16|0)|0;PZ(a,f[e>>2]|0,d,b);u=c;return}function AG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;c=i;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;h=m4a()|0;if(h>>>0>>0)dea();else{j=(f[a+8>>2]|0)-d|0;d=j>>1;iO(c,j>>2>>>0>>1>>>0?(d>>>0>>0?g:d):h,e,a+8|0);h=c+8|0;g=f[h>>2]|0;f[g>>2]=f[b>>2];f[h>>2]=g+4;wP(a,c);Hja(c);u=i;return}}function BG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+80|0;b=f[e>>2]|0;SC(a+16|0);c=a+72|0;d=f[c>>2]|0;if((d|0)==(f[a+76>>2]|0))LL(a+68|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}DH(b,f[e>>2]|0);b=a+112|0;c=f[b>>2]|0;if((c|0)==(f[a+116>>2]|0))LL(a+108|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function CG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;EFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;rea(d,f[a>>2]|0);a=a+4|0}Sna(d,f[b+76>>2]|0,f[b+80>>2]|0);Sna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function DG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;FFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;sea(d,f[a>>2]|0);a=a+4|0}Tna(d,f[b+76>>2]|0,f[b+80>>2]|0);Tna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function EG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;GFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;tea(d,f[a>>2]|0);a=a+4|0}Una(d,f[b+76>>2]|0,f[b+80>>2]|0);Una(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function FG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;HFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;uea(d,f[a>>2]|0);a=a+4|0}Vna(d,f[b+76>>2]|0,f[b+80>>2]|0);Vna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function GG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;IFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;vea(d,f[a>>2]|0);a=a+4|0}Wna(d,f[b+76>>2]|0,f[b+80>>2]|0);Wna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function HG(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;MFa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;y7(d,f[a>>2]|0);a=a+4|0}Xna(d,f[b+76>>2]|0,f[b+80>>2]|0);Xna(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function IG(a,b){a=a|0;b=b|0;var c=0,d=0;c=BZa(a)|0;a:do if((c|0)==(BZa(b)|0)?(c=IZa(a)|0,(c|0)==(IZa(b)|0)):0){c=0;while(1){if(c>>>0>=(kQa(a)|0)>>>0)break;d=s9(a,c)|0;if((d|0)==(s9(b,c)|0))c=c+1|0;else{c=0;break a}}if((f[a+4>>2]|0)==(f[b+4>>2]|0)?!(f2a(f[a+32>>2]|0,f[b+32>>2]|0)|0):0)c=KZ(f[a+36>>2]|0,f[b+36>>2]|0)|0;else c=0}else c=0;while(0);return c|0}function JG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>3;g=e+1|0;if(g>>>0>536870911)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>2;FN(c,i>>3>>>0<268435455?(d>>>0>>0?g:d):536870911,e,a+8|0);g=c+8|0;e=f[g>>2]|0;ZUa(e,b);f[g>>2]=e+8;EN(a,c);Aha(c);u=h;return}}function KG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=b[a+11>>0]|0;h=e<<24>>24<0;g=h?f[a>>2]|0:a;e=h?f[a+4>>2]|0:e&255;a=d;while(1){if(!c)break;h=c+16|0;d=b[h+11>>0]|0;i=d<<24>>24<0;d=i?f[c+20>>2]|0:d&255;h=FQa(i?f[h>>2]|0:h,g,e>>>0>>0?e:d)|0;h=(((h|0)==0?(d>>>0>>0?-2147483648:0):h)|0)<0;a=h?a:c;c=f[(h?c+4|0:c)>>2]|0}return a|0}function LG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,225,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function MG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;do if((bYa(b)|0)==(c|0))e=DWa(f[a+4>>2]|0)|0;else{if((bYa(b)|0)==(c+1|0)){e=ZQa(a,Or(b,c)|0)|0;break}e=eSa(f[a+4>>2]|0)|0;g=e+12|0;while(1){if(!((c|0)!=-1&c>>>0<(bYa(b)|0)>>>0))break;faa(g,ZQa(a,Or(b,c)|0)|0);c=c+1|0}aKa(e,d)}while(0);return e|0}function NG(a){a=a|0;f[a>>2]=41452;zSa(a+168|0);zSa(a+156|0);zSa(a+144|0);zSa(a+132|0);CVa(a+96|0);u_(a+80|0);RTa(a+68|0);Zha(a+56|0);cta(a+44|0);QTa(a);return}function OG(a){a=a|0;f[a>>2]=41212;zSa(a+168|0);zSa(a+156|0);zSa(a+144|0);zSa(a+132|0);CVa(a+96|0);v_(a+80|0);RTa(a+68|0);_ha(a+56|0);dta(a+44|0);QTa(a);return}function PG(a){a=a|0;f[a>>2]=41292;zSa(a+168|0);zSa(a+156|0);zSa(a+144|0);zSa(a+132|0);CVa(a+96|0);w_(a+80|0);RTa(a+68|0);$ha(a+56|0);eta(a+44|0);QTa(a);return}function QG(a){a=a|0;f[a>>2]=41104;zSa(a+168|0);zSa(a+156|0);zSa(a+144|0);zSa(a+132|0);CVa(a+96|0);x_(a+80|0);RTa(a+68|0);aia(a+56|0);fta(a+44|0);QTa(a);return}function RG(a){a=a|0;f[a>>2]=41372;zSa(a+168|0);zSa(a+156|0);zSa(a+144|0);zSa(a+132|0);CVa(a+96|0);y_(a+80|0);RTa(a+68|0);bia(a+56|0);gta(a+44|0);QTa(a);return}function SG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+96|0;h=j;i=b+8|0;e=b+12|0;g=a+40|0;c=0;d=0;while(1){if(d>>>0>=(Jbb(f[e>>2]|0)|0)>>>0)break;l=fZa(f[g>>2]|0)|0;k=ODa(i,d)|0;gA(h,l,f[k>>2]|0);k=qza(h)|0;_7(h);if(k)break;c=vn(a,b,ODa(i,d)|0,c,0)|0;d=d+1|0}u=j;return}function TG(a,c){a=a|0;c=c|0;var d=0,e=0;a:do if((a|0)!=(c|0)){d=b[a>>0]|0;if(d<<24>>24!=95){if(((d<<24>>24)+-48|0)>>>0>=10)break;while(1){a=a+1|0;if((a|0)==(c|0)){a=c;break a}if(((b[a>>0]|0)+-48|0)>>>0>=10)break a}}d=a+1|0;if((d|0)!=(c|0)){d=b[d>>0]|0;if(((d<<24>>24)+-48|0)>>>0<10){a=a+2|0;break}if(d<<24>>24==95){d=a+2|0;while(1){if((d|0)==(c|0))break a;e=b[d>>0]|0;if(((e<<24>>24)+-48|0)>>>0>=10)break;d=d+1|0}return (e<<24>>24==95?d+1|0:a)|0}}}while(0);return a|0}function UG(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a+128>>2]|0;b=f[a+124>>2]|0;while(1){if((b|0)==(d|0))break;c=DCa(134008,76122)|0;DCa(xm(c,f[b>>2]|0)|0,122322)|0;hn(f[b>>2]|0,0);c=v1(a,f[b>>2]|0)|0;if(c|0){e=DCa(134008,76128)|0;Ema(zm(e,f[c+8>>2]|0)|0,10)|0}b=b+4|0}return}function VG(a,b){a=a|0;b=b|0;var c=0,d=0;c=l$a(a)|0;a:do if(c)if(!b){d=c+12|0;break}else Ca(113457,113307,219,113468);else{c=d$a(a)|0;if(c|0)switch(b|0){case 0:{d=c+12|0;break a}case 1:{d=c+16|0;break a}default:hb()}c=b$a(a)|0;if(!c)hb();switch(b|0){case 0:{d=c+16|0;break a}case 1:{d=c+8|0;break a}case 2:{d=c+12|0;break a}default:hb()}}while(0);return d|0}function WG(a){a=a|0;var c=0,d=0,e=0,f=0,g=0;while(1){d=b[a>>0]|0;c=d<<24>>24;e=a+1|0;if(!(w6a(c)|0))break;else a=e}switch(c|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:g=0}if((f|0)==5){d=b[e>>0]|0;g=a;a=e;c=d<<24>>24}if(!(abb(c)|0)){c=0;a=0}else{e=d;c=0;d=0;do{d=GBa(c|0,d|0,10,0)|0;a=a+1|0;c=(e<<24>>24)+-48|0;c=SRa(d|0,I|0,c|0,((c|0)<0)<<31>>31|0)|0;d=I;e=b[a>>0]|0}while((abb(e<<24>>24)|0)!=0);a=d}f=(g|0)==0;g=SRa(0,0,c|0,a|0)|0;I=f?I:a;return (f?g:c)|0}function XG(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(d>>>0>1073741807)Rda();do if(d>>>0>=2){e=d+4&-4;if(e>>>0<=1073741823){g=s8(e<<2)|0;f[a>>2]=g;f[a+8>>2]=e|-2147483648;f[a+4>>2]=d;a=g;break}a=Ea(8)|0;x=0;ua(98,a|0,121961);g=x;x=0;if(g&1){g=Ia()|0;La(a|0);Ua(g|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else b[a+8+3>>0]=d;while(0);yWa(a,c,d);L1a(a+(d<<2)|0,0);return}function YG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;w2(d,a,b);b=f[d>>2]|0;d=yK(a,e,b+16|0)|0;PZ(a,f[e>>2]|0,d,b);u=c;return}function ZG(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=vSa(f[b>>2]|0)|0;if(!(f[c+16>>2]|0))Ca(77051,76794,157,77064);d=a+84|0;ki(a,c,b,(f[d>>2]|0)+-12|0);c=f[d>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;cta(c+(e*12|0)|0);b=e}f[d>>2]=c+-12;y3(a+44|0);return}function _G(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=vSa(f[b>>2]|0)|0;if(!(f[c+16>>2]|0))Ca(77051,76794,157,77064);d=a+84|0;ki(a,c,b,(f[d>>2]|0)+-12|0);c=f[d>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;eta(c+(e*12|0)|0);b=e}f[d>>2]=c+-12;A3(a+44|0);return}function $G(a){a=a|0;var b=0,c=0,d=0;b=Pva(0,BZa(a)|0)|0;d=f[a+12>>2]|0;c=f[a+8>>2]|0;while(1){if((c|0)==(d|0))break;b=Pva(b,f[c>>2]|0)|0;c=c+4|0}b=Pva(b,IZa(a)|0)|0;d=f[a+24>>2]|0;c=f[a+20>>2]|0;while(1){if((c|0)==(d|0))break;b=Pva(b,f[c>>2]|0)|0;c=c+4|0}c=Pva(b,f[a+4>>2]|0)|0;b=a+32|0;if(Qab(f[b>>2]|0)|0)b=W7a(b)|0;else b=0;d=Pva(c,b)|0;return Pva(d,Ec(f[a+36>>2]|0)|0)|0}function aH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(c>>>0>1073741807)Rda();do if(c>>>0>=2){e=c+4&-4;if(e>>>0<=1073741823){g=s8(e<<2)|0;f[a>>2]=g;f[a+8>>2]=e|-2147483648;f[a+4>>2]=c;a=g;break}a=Ea(8)|0;x=0;ua(98,a|0,121961);g=x;x=0;if(g&1){g=Ia()|0;La(a|0);Ua(g|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else b[a+8+3>>0]=c;while(0);xWa(a,c,d);L1a(a+(c<<2)|0,0);return}function bH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+80|0;b=f[e>>2]|0;eD(a+16|0);c=a+72|0;d=f[c>>2]|0;if((d|0)==(f[a+76>>2]|0))LL(a+68|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}DH(b,f[e>>2]|0);b=a+112|0;c=f[b>>2]|0;if((c|0)==(f[a+116>>2]|0))LL(a+108|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function cH(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;d=b;o1(c,a);a=f[c>>2]|0;c=JL(d,a+16|0)|0;PZ(132632,f[d>>2]|0,c,a);u=b;return}function dH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+80|0;b=f[e>>2]|0;jD(a+16|0);c=a+72|0;d=f[c>>2]|0;if((d|0)==(f[a+76>>2]|0))LL(a+68|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}DH(b,f[e>>2]|0);b=a+112|0;c=f[b>>2]|0;if((c|0)==(f[a+116>>2]|0))LL(a+108|0,e);else{f[c>>2]=f[e>>2];f[b>>2]=(f[b>>2]|0)+4}return}function eH(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=b[c>>0]|0;do if(f<<24>>24){a=FWa(a,f<<24>>24)|0;if(a){e=b[c+1>>0]|0;if(e<<24>>24)if(b[a+1>>0]|0){d=b[c+2>>0]|0;if(!(d<<24>>24)){a=g$(a,f,e)|0;break}if(b[a+2>>0]|0){if(!(b[c+3>>0]|0)){a=d$(a,f,e,d)|0;break}if(b[a+3>>0]|0)if(!(b[c+4>>0]|0)){a=LX(a,c)|0;break}else{a=cj(a,c)|0;break}else a=0}else a=0}else a=0}else a=0}while(0);return a|0}function fH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+4|0;c=j;f[h>>2]=a;f[c>>2]=b;d=b;i=a;do if((a|0)!=0&(b|0)!=0){e=a+36|0;g=f[e>>2]|0;if((g|0)==(f[a+40>>2]|0))LL(a+32|0,c);else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}a=b+48|0;c=f[a>>2]|0;if((c|0)==(f[b+52>>2]|0)){LL(b+44|0,h);break}else{f[c>>2]=i;f[a>>2]=(f[a>>2]|0)+4;break}}while(0);u=j;return}function gH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2560,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function hH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;do if(a<<24>>24){a=DCa(134176,110569)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[c>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0,g=x,x=0,!(g&1)):0){OCa(c);Wq(a,d)|0;fu(a)|0;break}g=Ia()|0;OCa(c);Ua(g|0)}while(0);u=e;return}function iH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function jH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)fp(a,b)}}else fp(a,b);return}function kH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1307,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function lH(a){a=a|0;if(!a)return;else{lH(f[a>>2]|0);lH(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function mH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=Bfa(b,f[a>>2]|0)|0;dYa(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){OCa(e);Wq(a,d)|0;fu(a)|0;u=g;return b|0}h=Ia()|0;OCa(e);Ua(h|0);return 0}function nH(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;QGa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;raa(d,f[a>>2]|0);a=a+4|0}Goa(d,f[b+76>>2]|0,f[b+80>>2]|0);Goa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function oH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=u;u=u+32|0;i=e+16|0;j=e;h=a+44|0;g=f[h>>2]|0;t$a(j,0);f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];f[i+12>>2]=f[j+12>>2];a=Qya(g,b,e0(g,i)|0)|0;b=f[h>>2]|0;c=SKa(f[b>>2]|0,c,1)|0;d=SKa(f[f[h>>2]>>2]|0,d,1)|0;d=J$(g,a,Kpa(f[b>>2]|0,11,c,d)|0)|0;u=e;return d|0}function pH(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=BF(c,h,d)|0;d=f[g>>2]|0;if(!d){fia(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function qH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=u;u=u+32|0;g=e+16|0;h=e;i=a+44|0;a=f[i>>2]|0;j=SKa(f[a>>2]|0,c,1)|0;c=SKa(f[f[i>>2]>>2]|0,d,1)|0;c=Qya(a,b,Kpa(f[a>>2]|0,10,j,c)|0)|0;d=f[i>>2]|0;t$a(h,0);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];d=J$(a,c,e0(d,g)|0)|0;u=e;return d|0}function rH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1214,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function sH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1119,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function tH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=a+20|0;e=a+16|0;g=a+4|0;b=0;while(1){if(b>>>0>=(f[c>>2]|0)>>>0)break;d=(f[e>>2]|0)+b|0;d=f[(f[(f[g>>2]|0)+(d>>>10<<2)>>2]|0)+((d&1023)<<2)>>2]|0;if(d|0){KK(d);Cbb(d)}b=b+1|0}d=a+44|0;e=a+40|0;g=a+28|0;b=0;while(1){if(b>>>0>=(f[d>>2]|0)>>>0)break;c=(f[e>>2]|0)+b|0;c=f[(f[(f[g>>2]|0)+(c>>>10<<2)>>2]|0)+((c&1023)<<2)>>2]|0;if(c|0)oc[f[(f[c>>2]|0)+4>>2]&1023](c);b=b+1|0}Rca(a+24|0);Rca(a);return}function uH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,899,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function vH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,994,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function wH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,774,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function xH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;do if(Qab(f[b+4>>2]|0)|0){d=b+12|0;e=f[d>>2]|0;if((f[e+4>>2]|0)==5){GVa(f[a+16>>2]|0,e)|0;break}else{e=f[a+36>>2]|0;Jbb(e)|0;_0a(c,e);e=Ipa(c,b,SKa(f[c>>2]|0,f[b+8>>2]|0,f[(f[d>>2]|0)+4>>2]|0)|0)|0;GVa(f[a+16>>2]|0,e)|0;gLa(b,0);break}}while(0);u=g;return}function yH(a){a=a|0;if(!a)return;else{yH(f[a>>2]|0);yH(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function zH(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);KNa(b+16|0);Cbb(b);return}function AH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1186,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function BH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1091,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function CH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;e=i+4|0;g=i;b=f[b>>2]|0;c=v$a(b)|0;if(!c){b=J$a(b)|0;if(b|0?(d=f[b+8>>2]|0,Qab(d)|0):0){f[g>>2]=d;f[h>>2]=f[g>>2];a=uC(a+36|0,h)|0;f[b+8>>2]=a}}else{b=f[c+8>>2]|0;if(Qab(b)|0){f[e>>2]=b;f[h>>2]=f[e>>2];a=uC(a+36|0,h)|0;f[c+8>>2]=a}}u=i;return}function DH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+4|0;c=j;f[h>>2]=a;f[c>>2]=b;d=b;i=a;do if((a|0)!=0&(b|0)!=0){e=a+40|0;g=f[e>>2]|0;if((g|0)==(f[a+44>>2]|0))LL(a+36|0,c);else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}a=b+52|0;c=f[a>>2]|0;if((c|0)==(f[b+56>>2]|0)){LL(b+48|0,h);break}else{f[c>>2]=i;f[a>>2]=(f[a>>2]|0)+4;break}}while(0);u=j;return}function EH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,871,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function FH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,966,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function GH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,746,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function HH(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;yHa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;_2(d,f[a>>2]|0);a=a+4|0}Woa(d,f[b+76>>2]|0,f[b+80>>2]|0);Woa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function IH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=f[a+44>>2]|0;if(((f[a+40>>2]|0)!=(d|0)?(c=v$a(f[d+-4>>2]|0)|0,c|0):0)?(d=RCa(c+12|0)|0,(b|0)==(f[d>>2]|0)):0){VHa(e,b,c);b=a+76|0;c=f[b>>2]|0;if(c>>>0<(f[a+80>>2]|0)>>>0){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[b>>2]=(f[b>>2]|0)+12}else yE(a+72|0,e)}u=g;return}function JH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,i=0;f=~b;f=(f>>>0>4294967292?f:-4)+b+4&-4;d=b;e=a;c=b;while(1){if(d>>>0<=3)break;i=X(h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24,1540483477)|0;d=d+-4|0;e=e+4|0;c=(X(i>>>24^i,1540483477)|0)^(X(c,1540483477)|0)}d=a+f|0;switch(b-f|0){case 3:{c=(h[d+2>>0]|0)<<16^c;g=6;break}case 2:{g=6;break}case 1:{g=7;break}default:{}}if((g|0)==6){c=(h[d+1>>0]|0)<<8^c;g=7}if((g|0)==7)c=X(c^(h[d>>0]|0),1540483477)|0;i=X(c>>>13^c,1540483477)|0;return i>>>15^i|0}function KH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)ep(a,b)}}else ep(a,b);return}function LH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+192|0;e=g+92|0;d=g;if((f[a+4>>2]|0)!=5)if(!b)a=1;else{gA(e,c,b);do if(!(qza(e)|0)){x=0;va(101,d|0,c|0,a|0);c=x;x=0;if(c&1){g=Ia()|0;_7(e);Ua(g|0)}else{a=(xj(d,e)|0)^1;_7(d);break}}else a=0;while(0);_7(e)}else a=0;u=g;return a|0}function MH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,197,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function NH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+96|0;c=e;g=$Ha(f[b+4>>2]|0)|0;d=f[f[a+4>>2]>>2]|0;if(g>>>0<(d+1|0)>>>0)a=1;else{g=f[a+12>>2]|0;a=D6(b,d)|0;gA(c,fZa(f[g+52>>2]|0)|0,a);a=Qab(f[c+88>>2]|0)|0;_7(c)}u=e;return a|0}function OH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;cz(c);if(Tpa(d,b[f[c>>2]>>0]|0)|0)n4a(g,0);else{e=Rm(a,c,d)|0;f[g>>2]=e}cz(c);a=f[c>>2]|0;e=b[a>>0]|0;if(!(Tpa(d,e)|0))Ca(66073,65740,463,66093);if(e<<24>>24==59)f[c>>2]=a+1;g=w0(f[g>>2]|0)|0;u=h;return g|0}function PH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((a|0)==(b|0))break;if(NH(c,a)|0){d=5;break}a=a+12|0}a:do if((d|0)==5){d=a;while(1){do{a=a+12|0;if((a|0)==(b|0)){b=d;break a}}while(NH(c,a)|0);f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];d=d+12|0}}while(0);return b|0}function QH(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;SHa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Wfa(d,f[a>>2]|0);a=a+4|0}fpa(d,f[b+76>>2]|0,f[b+80>>2]|0);fpa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function RH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;f[a>>2]=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=0;do if((f[b+4>>2]|0)!=(f[b>>2]|0)){x=0;ua(1505,c|0,b|0);b=x;x=0;if(b&1){a=Ia()|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0){zSa(b);Cbb(b)}Ua(a|0)}else{b=f[c>>2]|0;f[c>>2]=0;a=f[e>>2]|0;f[e>>2]=b;if(a|0){zSa(a);Cbb(a)}f[c>>2]=0;break}}while(0);u=d;return}function SH(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0;if((-17-c|0)>>>0>>0)Rda();if((b[a+11>>0]|0)<0)k=f[a>>2]|0;else k=a;if(c>>>0<2147483623){i=d+c|0;j=c<<1;i=i>>>0>>0?j:i;i=i>>>0<11?11:i+16&-16}else i=-17;j=W1a(i)|0;if(g|0)eUa(j,k,g)|0;d=e-g|0;if(d|0)eUa(j+g+h|0,k+g|0,d)|0;if((c|0)!=10)Cbb(k);f[a>>2]=j;f[a+8>>2]=i|-2147483648;return}function TH(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if((a|0)==(b|0))break;if(uW(c,a)|0){d=5;break}a=a+12|0}a:do if((d|0)==5){d=a;while(1){do{a=a+12|0;if((a|0)==(b|0)){b=d;break a}}while(uW(c,a)|0);f[d>>2]=f[a>>2];f[d+4>>2]=f[a+4>>2];f[d+8>>2]=f[a+8>>2];d=d+12|0}}while(0);return b|0}function UH(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;XTa(e,c,d)|0;Z0a(e+d|0,0);if((b[i>>0]|0)<0){f[a+4>>2]=d;break}else{b[i>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;AB(a,h,d-h|0,e,0,e,d,c)}while(0);return}function VH(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;do if(a<<24>>24){a=DCa(134176,110590)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[c>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0,g=x,x=0,!(g&1)):0){OCa(c);Wq(a,d)|0;fu(a)|0;break}g=Ia()|0;OCa(c);Ua(g|0)}while(0);u=e;return}function WH(a){a=a|0;var b=0;wJa(a);f[a>>2]=44420;b=a+44|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[a+64>>2]=1065353216;b=a+68|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+84>>2]=1065353216;b=a+88|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+104>>2]=1065353216;b=a+108|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+124>>2]=1065353216;b=a+128|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+144>>2]=1065353216;return}function XH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1929,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function YH(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;j=f[g>>2]|0;h=c+-8|0;f[j+-8>>2]=f[h>>2];i=c+-4|0;f[j+-4>>2]=f[i>>2];f[h>>2]=0;f[i>>2]=0;f[g>>2]=(f[g>>2]|0)+-8;c=h}h=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=h;h=b+8|0;j=f[e>>2]|0;f[e>>2]=f[h>>2];f[h>>2]=j;h=a+8|0;j=b+12|0;i=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=i;f[b>>2]=f[g>>2];return}function ZH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;b=t_(a+36|0,b)|0;do if((b|0)!=(a+40|0)){g=b+24|0;e=(f[g>>2]|0)+c|0;f[g>>2]=e;if((e|0)<=-1)Ca(71166,71128,171,71186);g=f[b+20>>2]|0;if(g|0){if(!e){UA(a,g);break}if((c|0)==1&(e|0)==1?(f[g+4>>2]|0)==5:0){if(!d)b=0;else b=f[d+4>>2]|0;qxa(a,g,b)}}}while(0);return}function _H(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;e=h+8|0;j=h+4|0;g=h;i=f[b>>2]|0;f[j>>2]=f[c>>2];f[e>>2]=f[j>>2];c=hna(i,e)|0;if(!c){j=f[b+36>>2]|0;pc[f[(f[j>>2]|0)+20>>2]&4095](j,66937)}f[g>>2]=f[c+4>>2];f[e>>2]=f[g>>2];qT(a,b,e,d);u=h;return}function $H(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}h=j7a(c)|0;g=d+11|0;e=b[g>>0]|0;e=e<<24>>24<0?f[d+4>>2]|0:e&255;x=0;wa(161,a|0,c|0,h|0,e+h|0);c=x;x=0;if(!(c&1)?(x=0,ja(97,a|0,((b[g>>0]|0)<0?f[d>>2]|0:d)|0,e|0)|0,h=x,x=0,!(h&1)):0)return;h=Ia()|0;MTa(a);Ua(h|0)}function aI(a){a=a|0;if(!a)return;else{aI(f[a>>2]|0);aI(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function bI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2163,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function cI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;tIa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;X6(d,f[a>>2]|0);a=a+4|0}Lpa(d,f[b+76>>2]|0,f[b+80>>2]|0);Lpa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function dI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;h=e<<24>>24<0;if(h){g=(f[a+8>>2]&2147483647)+-1|0;e=f[a+4>>2]|0}else{g=10;e=e&255}if((g-e|0)>>>0>=d>>>0){if(d|0){if(h)g=f[a>>2]|0;else g=a;eUa(g+e|0,c,d)|0;e=e+d|0;if((b[i>>0]|0)<0)f[a+4>>2]=e;else b[i>>0]=e;Z0a(g+e|0,0)}}else AB(a,g,e+d-g|0,e,e,0,d,c);return a|0}function eI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)hp(a,b)}}else hp(a,b);return}function fI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;b[g>>0]=48;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}e=c+11|0;d=b[e>>0]|0;d=d<<24>>24<0?f[c+4>>2]|0:d&255;x=0;wa(129,a|0,g|0,1,d+1|0);g=x;x=0;if(!(g&1)?(x=0,ja(49,a|0,((b[e>>0]|0)<0?f[c>>2]|0:c)|0,d|0)|0,g=x,x=0,!(g&1)):0){u=h;return}h=Ia()|0;MTa(a);Ua(h|0)}function gI(a){a=a|0;if(!a)return;else{gI(f[a>>2]|0);gI(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function hI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;_0a(d,b);switch(f[a+4>>2]|0){case 1:{c=rBa(f[d>>2]|0,23,a)|0;break}case 5:case 2:{c=a;break}case 3:{c=f[d>>2]|0;c=rBa(c,23,rBa(c,33,a)|0)|0;break}case 4:{c=rBa(f[d>>2]|0,34,a)|0;break}case 0:{c=Ipa(d,a,KSa(2,b)|0)|0;break}default:hb()}u=e;return c|0}function iI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2594,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function jI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;b=h;e=a+24|0;c=a+28|0;if((f[c>>2]|0)!=(f[e>>2]|0)){_0a(b,f[a+16>>2]|0);g=vwa(f[b>>2]|0,0)|0;c=f[c>>2]|0;d=g+12|0;b=f[e>>2]|0;while(1){if((b|0)==(c|0))break;faa(d,f[b>>2]|0);b=b+4|0}a=a+20|0;faa(d,f[(f[a>>2]|0)+36>>2]|0);aKa(g,f[(f[(f[a>>2]|0)+36>>2]|0)+4>>2]|0);f[(f[a>>2]|0)+36>>2]=g}u=h;return}function kI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;e=h+8|0;g=h;L9(e,Jbb(f[b+36>>2]|0)|0,b+48|0,d);x=0;va(155,a|0,e|0,c|0);d=x;x=0;do if(d&1){b=Ja(34968)|0;d=I;if((d|0)==(Db(34968)|0)){Fa(b|0)|0;f[g>>2]=f[33152];f[e>>2]=f[g>>2];nXa(a,e);Ga();break}else Ua(b|0)}while(0);u=h;return}function lI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2133,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function mI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;d=j;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e|0;h=g+1|0;i=Lab()|0;if(i>>>0>>0)dea();else{k=(f[a+8>>2]|0)-e|0;e=k<<1;rda(d,k>>>0>>1>>>0?(e>>>0>>0?h:e):i,g,a+8|0);i=d+8|0;h=f[i>>2]|0;b[h>>0]=b[c>>0]|0;f[i>>2]=h+1;ZP(a,d);poa(d);u=j;return}}function nI(a,b){a=a|0;b=b|0;b=tu(a,b)|0;if(b|0)qQ(a,b);return}function oI(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=f[a>>2]|0;f[e>>2]=f[f[c>>2]>>2];d=Wl(d+20|0,e)|0;c=f[a+4>>2]|0;if((sB(c,e)|0)!=0?(e=qm(c,e)|0,(f[e>>2]|0)==(f[d>>2]|0)):0)c=(b[d+9>>0]|0)==0;else c=0;u=g;return c|0}function pI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,351,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function qI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=xm(b,a)|0;dYa(e,b+(f[(f[b>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){OCa(e);Wq(a,d)|0;fu(a)|0;u=g;return b|0}h=Ia()|0;OCa(e);Ua(h|0);return 0}function rI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1689,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function sI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;d=b+12|0;if(f[d>>2]|0?g2a(f[b+8>>2]|0,f[a+36>>2]|0)|0:0){e=f[a+20>>2]|0;Jbb(e)|0;_0a(c,e);e=f[d>>2]|0;if((f[e+4>>2]|0)==5)GVa(f[a>>2]|0,e)|0;else{f[d>>2]=0;Cqa(b);e=Ipa(c,lNa(f[c>>2]|0,e)|0,b)|0;GVa(f[a>>2]|0,e)|0}u=g;return}u=g;return}function tI(a,b){a=a|0;b=+b;var c=0,d=0,e=0;c=K$a(b)|0;if((c&2147483647)>>>0>2139095040){DCa(DCa(a,(c|0)<0?123396:135337)|0,118773)|0;c=Sha(b)|0;if(c|0){d=DCa(a,75300)|0;e=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[e>>2]=f[e>>2]&-75|8;zm(d,c)|0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]&-75|2}}else $t(a,b);return}function uI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1985,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function vI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=a+12|0;d=a+16|0;if((Jbb(f[d>>2]|0)|0)==(b|0))faa(g,c);else{faa(g,0);e=Jbb(f[d>>2]|0)|0;while(1){d=e+-1|0;if(d>>>0<=b>>>0)break;i=ODa(g,e+-2|0)|0;i=f[i>>2]|0;h=ODa(g,d)|0;f[h>>2]=i;e=d}i=ODa(g,b)|0;f[i>>2]=c}aKa(a,f[a+4>>2]|0);return}function wI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1717,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function xI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;gJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;K2(d,f[a>>2]|0);a=a+4|0}qqa(d,f[b+76>>2]|0,f[b+80>>2]|0);qqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function yI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;hJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;F4(d,f[a>>2]|0);a=a+4|0}rqa(d,f[b+76>>2]|0,f[b+80>>2]|0);rqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function zI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;b=g;d=DCa(a,81457)|0;dYa(b,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[b>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,c=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,h=x,x=0,!(h&1)):0){OCa(b);Wq(d,c)|0;fu(d)|0;u=g;return a|0}h=Ia()|0;OCa(b);Ua(h|0);return 0}function AI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2284,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function BI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1243,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function CI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1023,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function DI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1148,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function EI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2014,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function FI(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;a=f[d>>2]|0;do if(a){e=f[c>>2]|0;while(1)if(PVa(e,f[a+16>>2]|0)|0){d=f[a>>2]|0;if(!d){d=5;break}else a=d}else{c=a+4|0;d=f[c>>2]|0;if(!d){d=7;break}else a=d}if((d|0)==5){f[b>>2]=a;break}else if((d|0)==7){f[b>>2]=a;a=c;break}}else{f[b>>2]=d;a=d}while(0);return a|0}function GI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;EJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;xha(d,f[a>>2]|0);a=a+4|0}Iqa(d,f[b+76>>2]|0,f[b+80>>2]|0);Iqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function HI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;FJa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;dca(d,f[a>>2]|0);a=a+4|0}Jqa(d,f[b+76>>2]|0,f[b+80>>2]|0);Jqa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function II(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,928,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function JI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,805,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function KI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;i=(Hr(a,f[b+28>>2]|0)|0)+6|0;e=b+8|0;Q$a(g,e);LUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=i;while(1){if(!(qTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=QOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;YYa(g);b=i}u=h;return b|0}function LI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1512,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function MI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=t_(a+172|0,b)|0;if((h|0)!=(a+176|0)){u=i;return f[h+20>>2]|0}Q_a();x=0;ia(52,e|0,72035)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)lCa();Ia()|0;lCa();return 0}function NI(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=f[a+16>>2]|0;a:do if(c){b=f[(f[a+12>>2]|0)+4>>2]|0;c=f[c+4>>2]|0;do if((b|0)==(c|0)){d=a+4|0;f[d>>2]=b}else{if((v2a(b)|0)&(c|0)==5){d=a+4|0;f[d>>2]=b;break}if(!((v2a(c)|0)&(b|0)==5)){g=9;break a}d=a+4|0;f[d>>2]=c;b=c}while(0);if(!b){e=d;g=10}}else g=9;while(0);if((g|0)==9){e=a+4|0;f[e>>2]=0;g=10}if((g|0)==10?(f[(f[a+8>>2]|0)+4>>2]|0)==5:0)f[e>>2]=5;return}function OI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;c=j+4|0;f[h>>2]=b;d=b+12|0;e=U_a(f[d>>2]|0)|0;i=b;if(e|0?(g=e+8|0,(f[g>>2]|0)!=(f[b+8>>2]|0)):0){b=f[a+36>>2]|0;Jbb(b)|0;_0a(c,b);b=sBa(f[c>>2]|0,f[g>>2]|0,e)|0;f[d>>2]=b;b=a+48|0;c=f[b>>2]|0;if((c|0)==(f[a+52>>2]|0))LL(a+44|0,h);else{f[c>>2]=i;f[b>>2]=(f[b>>2]|0)+4}}u=j;return}function PI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1061,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function QI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2713,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function RI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+56|0;g=a+60|0;c=f[g>>2]|0;if((f[e>>2]|0)==(c|0))Ca(111005,111025,418,111094);f[g>>2]=c+-4;Gv(f[a+28>>2]|0,5)|0;L1a(d,f[33015]|0);c=f[g>>2]|0;if(c>>>0<(f[a+64>>2]|0)>>>0){f[c>>2]=f[d>>2];f[g>>2]=(f[g>>2]|0)+4}else LL(e,d);sw(a,f[b+16>>2]|0);u=h;return}function SI(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);gTa(b+16|0);Cbb(b);return}function TI(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if(d&2048){b[a>>0]=43;a=a+1|0}if(d&1024){b[a>>0]=35;a=a+1|0}g=d&260;e=d&16384;f=(g|0)==260;if(f)h=0;else{b[a>>0]=46;b[a+1>>0]=42;h=1;a=a+2|0}while(1){d=b[c>>0]|0;if(!(d<<24>>24))break;b[a>>0]=d;c=c+1|0;a=a+1|0}a:do switch(g&511){case 4:{d=e>>>9&255^102;break}case 256:{d=e>>>9&255^101;break}default:{d=e>>>9&255;if(f){d=d^97;break a}else{d=d^103;break a}}}while(0);b[a>>0]=d;return h|0}function UI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=t_(a+56|0,b)|0;if((h|0)!=(a+60|0)){u=i;return f[h+20>>2]|0}Q_a();x=0;ia(52,e|0,92521)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)lCa();Ia()|0;lCa();return 0}function VI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,649,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function WI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2248,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function XI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2741,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function YI(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1417,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function ZI(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;_Ja(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;G1(d,f[a>>2]|0);a=a+4|0}ira(d,f[b+76>>2]|0,f[b+80>>2]|0);ira(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function _I(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;$Ja(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;o3(d,f[a>>2]|0);a=a+4|0}jra(d,f[b+76>>2]|0,f[b+80>>2]|0);jra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function $I(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=t_(a+208|0,b)|0;if((h|0)!=(a+212|0)){u=i;return f[h+20>>2]|0}Q_a();x=0;ia(52,e|0,82036)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)lCa();Ia()|0;lCa();return 0}function aJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1839,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function bJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1898,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function cJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;a=zm(b,a)|0;dYa(e,b+(f[(f[b>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[e>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){OCa(e);Wq(a,d)|0;fu(a)|0;u=g;return b|0}h=Ia()|0;OCa(e);Ua(h|0);return 0}function dJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+56|0;g=a+60|0;c=f[g>>2]|0;if((f[e>>2]|0)==(c|0))Ca(111005,111025,418,111094);f[g>>2]=c+-4;Gv(f[a+28>>2]|0,5)|0;L1a(d,f[33015]|0);c=f[g>>2]|0;if(c>>>0<(f[a+64>>2]|0)>>>0){f[c>>2]=f[d>>2];f[g>>2]=(f[g>>2]|0)+4}else LL(e,d);bE(f[b+16>>2]|0);u=h;return}function eJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,169,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function fJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=t_(a+196|0,b)|0;if((h|0)!=(a+200|0)){u=i;return f[h+20>>2]|0}Q_a();x=0;ia(52,e|0,118687)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)lCa();Ia()|0;lCa();return 0}function gJ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;do if((a|0)==(c|0)){f[d>>2]=4;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;a=0;break}i=f[33448]|0;f[33448]=0;kOa()|0;g=z$a(a,h,e)|0;a=I;e=f[33448]|0;if(!e)f[33448]=i;do if((f[h>>2]|0)==(c|0))if(a>>>0>0|(a|0)==0&g>>>0>65535|(e|0)==34){f[d>>2]=4;a=-1;break}else{a=g&65535;break}else{f[d>>2]=4;a=0}while(0)}while(0);u=j;return a|0}function hJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2650,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function iJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2861,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function jJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=t_(a+184|0,b)|0;if((h|0)!=(a+188|0)){u=i;return f[h+20>>2]|0}Q_a();x=0;ia(52,e|0,91677)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)lCa();Ia()|0;lCa();return 0}function kJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i+4|0;e=i+8|0;g=i;h=t_(a+220|0,b)|0;if((h|0)!=(a+224|0)){u=i;return f[h+20>>2]|0}Q_a();x=0;ia(52,e|0,94081)|0;i=x;x=0;if((!(i&1)?(f[g>>2]=f[b>>2],x=0,f[c>>2]=f[g>>2],d=ia(53,e|0,c|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(52,d|0,72061)|0,i=x,x=0,!(i&1)):0)lCa();Ia()|0;lCa();return 0}function lJ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;b[a+53>>0]=1;do if((f[a+4>>2]|0)==(d|0)){b[a+52>>0]=1;g=a+16|0;d=f[g>>2]|0;if(!d){f[g>>2]=c;f[a+24>>2]=e;f[a+36>>2]=1;if(!((e|0)==1?(f[a+48>>2]|0)==1:0))break;b[a+54>>0]=1;break}if((d|0)!=(c|0)){e=a+36|0;f[e>>2]=(f[e>>2]|0)+1;b[a+54>>0]=1;break}g=a+24|0;d=f[g>>2]|0;if((d|0)==2){f[g>>2]=e;d=e}if((d|0)==1?(f[a+48>>2]|0)==1:0)b[a+54>>0]=1}while(0);return}function mJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1807,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function nJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1378,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function oJ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}g=b[c+11>>0]|0;h=g<<24>>24<0;g=h?f[c+4>>2]|0:g&255;e=j7a(d)|0;x=0;wa(161,a|0,(h?f[c>>2]|0:c)|0,g|0,g+e|0);c=x;x=0;if(!(c&1)?(x=0,ja(97,a|0,d|0,e|0)|0,h=x,x=0,!(h&1)):0)return;h=Ia()|0;MTa(a);Ua(h|0)}function pJ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=a+8|0;j=e+3|0;h=b[j>>0]|0;i=h<<24>>24<0;if(i)g=(f[e>>2]&2147483647)+-1|0;else g=1;do if(g>>>0>=d>>>0){if(i)e=f[a>>2]|0;else e=a;vWa(e,c,d);L1a(e+(d<<2)|0,0);if((b[j>>0]|0)<0){f[a+4>>2]=d;break}else{b[j>>0]=d;break}}else{if(i)e=f[a+4>>2]|0;else e=h&255;nw(a,g,d-g|0,e,0,e,d,c)}while(0);return a|0}function qJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1598,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function rJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1336,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function sJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;DKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Fca(d,f[a>>2]|0);a=a+4|0}yra(d,f[b+76>>2]|0,f[b+80>>2]|0);yra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function tJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;EKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Gca(d,f[a>>2]|0);a=a+4|0}zra(d,f[b+76>>2]|0,f[b+80>>2]|0);zra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function uJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;GKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Hca(d,f[a>>2]|0);a=a+4|0}Dra(d,f[b+76>>2]|0,f[b+80>>2]|0);Dra(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function vJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;HKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Ica(d,f[a>>2]|0);a=a+4|0}Era(d,f[b+76>>2]|0,f[b+80>>2]|0);Era(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function wJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2985,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function xJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2404,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function yJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2432,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function zJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2463,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function AJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2775,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function BJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1570,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function CJ(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=a+11|0;d=b[h>>0]|0;e=d<<24>>24<0;if(e){g=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{g=d&255;d=10}if((g|0)==(d|0)){SH(a,d,1,d,d,0);if((b[h>>0]|0)<0)d=8;else d=7}else if(e)d=8;else d=7;if((d|0)==7)b[h>>0]=g+1;else if((d|0)==8){h=f[a>>2]|0;f[a+4>>2]=g+1;a=h}h=a+g|0;Z0a(h,c);Z0a(h+1|0,0);return}function DJ(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!(g2a(a,f[c+8>>2]|0)|0)){if(g2a(a,f[c>>2]|0)|0){if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[c+32>>2]=e;f[h>>2]=d;g=c+40|0;f[g>>2]=(f[g>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[c+32>>2]=1}}else hwa(c,d,e);while(0);return}function EJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1747,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function FJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2104,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function GJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2679,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function HJ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a:do if(!(g2a(a,f[c+8>>2]|0)|0)){h=f[a+12>>2]|0;g=a+16+(h<<3)|0;E6(a+16|0,c,d,e);if((h|0)>1){h=c+54|0;a=a+24|0;do{E6(a,c,d,e);if(b[h>>0]|0)break a;a=a+8|0}while(a>>>0>>0)}}else qY(c,d,e);while(0);return}function IJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,3013,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function JJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,109,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function KJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2044,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function LJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2803,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function MJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,3143,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function NJ(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;switch(a|0){case 25:{L1a(b,f[33028]|0);break}case 27:{L1a(b,f[33029]|0);break}case 26:{L1a(b,f[33030]|0);break}case 28:{L1a(b,f[33031]|0);break}case 29:{L1a(b,f[33024]|0);break}case 31:{L1a(b,f[33025]|0);break}case 30:{L1a(b,f[33026]|0);break}case 32:{L1a(b,f[33027]|0);break}default:Bab(b)}u=c;return f[b>>2]|0}function OJ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;h=e;g=s8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=g+8|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];b[a+8>>0]=1;f[h>>2]=f[c>>2];d=JH(h,4)|0;f[g+4>>2]=d;f[g>>2]=0;u=e;return}function PJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1540,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function QJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,1779,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function RJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2072,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function SJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2892,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function TJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;TKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;hia(d,f[a>>2]|0);a=a+4|0}asa(d,f[b+76>>2]|0,f[b+80>>2]|0);asa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function UJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;UKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;iia(d,f[a>>2]|0);a=a+4|0}bsa(d,f[b+76>>2]|0,f[b+80>>2]|0);bsa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function VJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;VKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;jia(d,f[a>>2]|0);a=a+4|0}csa(d,f[b+76>>2]|0,f[b+80>>2]|0);csa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function WJ(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;WKa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Uca(d,f[a>>2]|0);a=a+4|0}dsa(d,f[b+76>>2]|0,f[b+80>>2]|0);dsa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function XJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,590,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function YJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2495,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function ZJ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2833,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function _J(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+16|0;g=i+4|0;h=i;b[a+9>>0]=0;cy(a,e)|0;if(!(b[a+8>>0]|0)){e=HV(a,e)|0;DCa(Pca(e,c)|0,81185)|0;f[h>>2]=f[d>>2];f[g>>2]=f[h>>2];mH(g,e)|0}u=i;return}function $J(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,436,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function aK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2312,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function bK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,3071,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function cK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,3041,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function dK(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=a+8|0;j=e+3|0;g=b[j>>0]|0;i=g<<24>>24<0;if(i){e=(f[e>>2]&2147483647)+-1|0;h=f[a+4>>2]|0}else{e=1;h=g&255}if((e-h|0)>>>0>=d>>>0){if(d|0){if(i)g=f[a>>2]|0;else g=a;yWa(g+(h<<2)|0,c,d);e=h+d|0;if((b[j>>0]|0)<0)f[a+4>>2]=e;else b[j>>0]=e;L1a(g+(e<<2)|0,0)}}else nw(a,e,h+d-e|0,h,h,0,d,c);return a|0}function eK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1462,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function fK(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;a:do if((a|0)!=(c|0)){switch(b[a>>0]|0){case 104:{e=a+1|0;d=TX(e,c)|0;if((d|0)==(e|0)|(d|0)==(c|0))break a;return ((b[d>>0]|0)==95?d+1|0:a)|0}case 118:break;default:break a}f=a+1|0;d=TX(f,c)|0;if((!((d|0)==(f|0)|(d|0)==(c|0))?(b[d>>0]|0)==95:0)?(f=d+1|0,e=TX(f,c)|0,!((e|0)==(f|0)|(e|0)==(c|0))):0)a=(b[e>>0]|0)==95?e+1|0:a}while(0);return a|0}function gK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-12|0;J4((f[g>>2]|0)+-12|0,h);f[g>>2]=(f[g>>2]|0)+-12;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function hK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,716,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function iK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2523,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function jK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;iLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;ida(d,f[a>>2]|0);a=a+4|0}Csa(d,f[b+76>>2]|0,f[b+80>>2]|0);Csa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function kK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;jLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;wia(d,f[a>>2]|0);a=a+4|0}Dsa(d,f[b+76>>2]|0,f[b+80>>2]|0);Dsa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function lK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;kLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;xia(d,f[a>>2]|0);a=a+4|0}Esa(d,f[b+76>>2]|0,f[b+80>>2]|0);Esa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function mK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,137,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function nK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,2622,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function oK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2926,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function pK(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;vU(a,c,d,e,g);vTa(a,b);x=0;ta(482,a|0);g=x;x=0;if((!(g&1)?(x=0,ua(1377,a|0,f[(f[a+40>>2]|0)+36>>2]|0),g=x,x=0,!(g&1)):0)?(x=0,ta(483,f[a+28>>2]|0),g=x,x=0,!(g&1)):0)return;g=Ia()|0;Cfa(a);Ua(g|0)}function qK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;i=h[b+8>>0]|0;g=Jbb(f[b+12>>2]|0)|0;e=d3(a,f[b+16>>2]|0)|0;d=d3(a,f[b+20>>2]|0)|0;c=d3(a,f[b+24>>2]|0)|0;return M3(f[a+32>>2]|0,i,g,e,d,c,f[b+4>>2]|0)|0}function rK(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k;i=c+4|0;j=c+8|0;d=f[a>>2]|0;while(1){e=d&127;b[h>>0]=e;d=d>>7;if(!(nIa(a,d,e)|0))break;e=e|-128;b[h>>0]=e;g=f[i>>2]|0;if((g|0)==(f[j>>2]|0))ZL(c,h);else{b[g>>0]=e;f[i>>2]=(f[i>>2]|0)+1}}d=f[i>>2]|0;if((d|0)==(f[j>>2]|0))ZL(c,h);else{b[d>>0]=e;f[i>>2]=(f[i>>2]|0)+1}u=k;return}function sK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=n$a(b)|0;do if(!e){d=U_a(b)|0;if(!d){d=BS(a,b)|0;break}else{d=f[c+(f[d+8>>2]<<2)>>2]|0;break}}else{b=e+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];d=CT(a,d)|0}while(0);u=g;return d|0}function tK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i;h=f[(f[f[f[b>>2]>>2]>>2]|0)+4>>2]|0;d=f[a+36>>2]|0;Jbb(d)|0;_0a(c,d);d=f[a+32>>2]|0;Jbb(d)|0;d=Cka(d,h)|0;e=Qya(c,d,f[f[f[b>>2]>>2]>>2]|0)|0;g=f[b+4>>2]|0;c=f[c>>2]|0;a=f[b>>2]|0;while(1){if((a|0)==(g|0))break;b=f[a>>2]|0;j=SKa(c,d,h)|0;f[b>>2]=j;a=a+4|0}u=i;return e|0}function uK(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;x=0;ua(88,g+8|0,f[e>>2]|0);e=x;x=0;if(e&1){e=Ia()|0;f[a>>2]=0;Cbb(g);Ua(e|0)}else{f[g+20>>2]=0;b[c>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}}function vK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,322,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function wK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;if(BB(a+108|0,b+8|0)|0)Ca(108323,106511,260,108383);d=b+4|0;do if((f[d>>2]|0)==2){f[d>>2]=1;UN(c,a,f[b+12>>2]|0);x=0;va(161,a|0,b|0,c|0);d=x;x=0;if(d&1){e=Ia()|0;MCa(c);Ua(e|0)}else{MCa(c);break}}while(0);u=e;return}function xK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=a+4|0;h=a+8|0;if((f[h>>2]|0)!=(f[g>>2]|0))Ca(115822,115840,387,115863);tS(a,408,b);c=e+4|0;d=a+-16|0;while(1){if((f[h>>2]|0)==(f[g>>2]|0)){b=8;break}Bsa(e,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[e>>2]&4095](d,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=i;return}}function yK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;a=f[d>>2]|0;do if(a){e=f[c>>2]|0;while(1)if(e>>>0<(f[a+16>>2]|0)>>>0){d=f[a>>2]|0;if(!d){d=5;break}else a=d}else{c=a+4|0;d=f[c>>2]|0;if(!d){d=7;break}else a=d}if((d|0)==5){f[b>>2]=a;break}else if((d|0)==7){f[b>>2]=a;a=c;break}}else{f[b>>2]=d;a=d}while(0);return a|0}function zK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;HLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Nia(d,f[a>>2]|0);a=a+4|0}lta(d,f[b+76>>2]|0,f[b+80>>2]|0);lta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function AK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;ILa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;r4(d,f[a>>2]|0);a=a+4|0}mta(d,f[b+76>>2]|0,f[b+80>>2]|0);mta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function BK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;JLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;uda(d,f[a>>2]|0);a=a+4|0}nta(d,f[b+76>>2]|0,f[b+80>>2]|0);nta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function CK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,557,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function DK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;KLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Oia(d,f[a>>2]|0);a=a+4|0}ota(d,f[b+76>>2]|0,f[b+80>>2]|0);ota(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function EK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;LLa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;s4(d,f[a>>2]|0);a=a+4|0}rta(d,f[b+76>>2]|0,f[b+80>>2]|0);rta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function FK(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;do if((a|0)==(c|0)){f[d>>2]=4;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;a=0;break}i=f[33448]|0;f[33448]=0;kOa()|0;a=z$a(a,h,e)|0;e=I;g=f[33448]|0;if(!g)f[33448]=i;do if((f[h>>2]|0)==(c|0))if(e>>>0>0|(e|0)==0&a>>>0>4294967295|(g|0)==34){f[d>>2]=4;a=-1;break}else break;else{f[d>>2]=4;a=0}while(0)}while(0);u=j;return a|0}function GK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,683,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function HK(a,b){a=a|0;b=b|0;var c=0;c=Jbb(f[b+16>>2]|0)|0;a:do if(c|0?c>>>0<(h[b+8>>0]|0)>>>0:0){c=b+4|0;switch(f[c>>2]|0){case 3:{f[c>>2]=1;c=rBa(f[f[a+44>>2]>>2]|0,45,b)|0;GVa(f[a+16>>2]|0,c)|0;break a}case 4:{f[c>>2]=2;c=rBa(f[f[a+44>>2]>>2]|0,46,b)|0;GVa(f[a+16>>2]|0,c)|0;break a}default:break a}}while(0);return}function IK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;h=a+4|0;f[h>>2]=b;e=U_a(b)|0;do if(!e){e=L_a(b)|0;if(!e){c=Cka(c,f[b+4>>2]|0)|0;f[a>>2]=c;_0a(g,d);g=sBa(f[g>>2]|0,f[a>>2]|0,f[h>>2]|0)|0;f[h>>2]=g;break}else{f[a>>2]=f[e+8>>2];break}}else f[a>>2]=f[e+8>>2];while(0);u=i;return}function JK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,321,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function KK(a){a=a|0;var b=0,c=0,d=0,e=0;e=a+48|0;b=Jbb(f[a+64>>2]|0)|0;c=T6a(e)|0;while(1){d=b;if((c|0)==(d|0))break;b=f[b+12>>2]|0;if(b|0){DMa(b);Cbb(b)}b=f[d+4>>2]|0}b=Jbb(f[a+16>>2]|0)|0;d=T6a(a)|0;while(1){c=b;if((d|0)==(c|0))break;b=f[b+12>>2]|0;if(b|0){DMa(b);Cbb(b)}b=f[c+4>>2]|0}YDa(a+72|0);Txa(e);YDa(a+24|0);Txa(a);return}function LK(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}g=j7a(71964)|0;e=c+11|0;d=b[e>>0]|0;d=d<<24>>24<0?f[c+4>>2]|0:d&255;x=0;wa(129,a|0,71964,g|0,d+g|0);g=x;x=0;if(!(g&1)?(x=0,ja(49,a|0,((b[e>>0]|0)<0?f[c>>2]|0:c)|0,d|0)|0,g=x,x=0,!(g&1)):0)return;g=Ia()|0;MTa(a);Ua(g|0)}function MK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;i=(f[g>>2]|0)+-4|0;h=c+-4|0;j=f[h>>2]|0;f[h>>2]=0;f[i>>2]=j;f[g>>2]=(f[g>>2]|0)+-4;c=h}h=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=h;h=b+8|0;j=f[e>>2]|0;f[e>>2]=f[h>>2];f[h>>2]=j;h=a+8|0;j=b+12|0;i=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=i;f[b>>2]=f[g>>2];return}function NK(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;XTa(e,c,d)|0;Z0a(e+d|0,0);if((b[i>>0]|0)<0){f[a+4>>2]=d;break}else{b[i>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;pD(a,h,d-h|0,e,0,e,d,c)}while(0);return a|0}function OK(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;p0(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function PK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-40|0;pC((f[g>>2]|0)+-40|0,h);f[g>>2]=(f[g>>2]|0)+-40;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function QK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;Hg(a,b);gA(c,fZa(f[a+40>>2]|0)|0,0);x=0;b=ia(123,c|0,b|0)|0;e=x;x=0;do if(!(e&1)){if(b?(x=0,ua(2526,a|0,c|0),e=x,x=0,e&1):0)break;e=a+92|0;f[e>>2]=(f[e>>2]|0)+-4;_7(c);u=d;return}while(0);e=Ia()|0;_7(c);Ua(e|0)}function RK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;h=g;c=b;f[h>>2]=c;d=a+128|0;e=f[d>>2]|0;do if(e>>>0<(f[a+132>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[h>>2]=0}else{x=0;ua(677,a+124|0,h|0);e=x;x=0;if(!(e&1)){a=f[h>>2]|0;f[h>>2]=0;if(!a)break;I_a(a);Cbb(a);break}a=Ia()|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0){I_a(c);Cbb(c)}Ua(a|0)}while(0);u=g;return b|0}function SK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2220,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function TK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;cMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Ada(d,f[a>>2]|0);a=a+4|0}Vta(d,f[b+76>>2]|0,f[b+80>>2]|0);Vta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function UK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;dMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;G4(d,f[a>>2]|0);a=a+4|0}Wta(d,f[b+76>>2]|0,f[b+80>>2]|0);Wta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function VK(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;eMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;bja(d,f[a>>2]|0);a=a+4|0}Xta(d,f[b+76>>2]|0,f[b+80>>2]|0);Xta(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function WK(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=132804;do if(b){if(b>>>0<=214748364){d=s8(b*20|0)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*20|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*20|0);return}function XK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,481,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function YK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,262,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function ZK(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2954,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function _K(a,b){a=a|0;b=b|0;var c=0;while(1){if((a|0)==(b|0))break;if(Wja(f[f[a>>2]>>2]|0)|0){c=5;break}a=a+4|0}a:do if((c|0)==5){c=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=c;break a}}while((Wja(f[f[a>>2]>>2]|0)|0)!=0);f[c>>2]=f[a>>2];c=c+4|0}}while(0);return b|0}function $K(a){a=a|0;if(!a)return;else{$K(f[a>>2]|0);$K(f[a+4>>2]|0);sFa(a+16|0);Cbb(a);return}}function aL(a){a=a|0;if(!a)return;else{aL(f[a>>2]|0);aL(f[a+4>>2]|0);tFa(a+16|0);Cbb(a);return}}function bL(a){a=a|0;if(!a)return;else{bL(f[a>>2]|0);bL(f[a+4>>2]|0);uFa(a+16|0);Cbb(a);return}}function cL(a){a=a|0;if(!a)return;else{cL(f[a>>2]|0);cL(f[a+4>>2]|0);vFa(a+16|0);Cbb(a);return}}function dL(a){a=a|0;if(!a)return;else{dL(f[a>>2]|0);dL(f[a+4>>2]|0);wFa(a+16|0);Cbb(a);return}}function eL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;e=g;_0a(e,c);switch(b|0){case 1:{d=rBa(f[e>>2]|0,24,a)|0;break}case 5:case 2:{d=a;break}case 3:{d=f[e>>2]|0;d=rBa(d,45,rBa(d,24,a)|0)|0;break}case 4:{d=rBa(f[e>>2]|0,46,a)|0;break}case 0:{d=lNa(f[e>>2]|0,a)|0;break}default:hb()}u=g;return d|0}function fL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;if((hX(a,f[b>>2]|0)|0)==(a+4|0)){e=a+12|0;qia(e,b);e=f[e>>2]|0;b=f[b>>2]|0;f[c>>2]=b;f[c+4>>2]=e;rC(d+8|0,a,b,c)}u=d;return}function gL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+32|0;g=d+16|0;h=d;b=rBa(f[a>>2]|0,23,b)|0;e=rBa(f[a>>2]|0,23,c)|0;XSa(h,32,0);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];c=e0(a,g)|0;c=Kpa(f[a>>2]|0,35,e,c)|0;c=Kpa(f[a>>2]|0,33,b,c)|0;u=d;return c|0}function hL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1658,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function iL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1629,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function jL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;qMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Tda(d,f[a>>2]|0);a=a+4|0}xua(d,f[b+76>>2]|0,f[b+80>>2]|0);xua(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function kL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;rMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;pja(d,f[a>>2]|0);a=a+4|0}yua(d,f[b+76>>2]|0,f[b+80>>2]|0);yua(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function lL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;sMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;qja(d,f[a>>2]|0);a=a+4|0}zua(d,f[b+76>>2]|0,f[b+80>>2]|0);zua(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function mL(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;yPa(f[c>>2]|0,117249)|0;a=b+8|0;if(Qab(f[a>>2]|0)|0){Ema(f[c>>2]|0,32)|0;x4(f[a>>2]|0,f[c>>2]|0)|0}a=b+4|0;if(v2a(f[a>>2]|0)|0){c=DCa(f[c>>2]|0,75654)|0;Ema(DCa(c,Fha(f[a>>2]|0)|0)|0,41)|0}return}function nL(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;g=(f[a+4>>2]|0)+68|0;f[e>>2]=f[a+12>>2];e=Xl(g,e)|0;g=e+4|0;b=f[g>>2]|0;c=f[a>>2]|0;d=f[e>>2]|0;while(1){if((d|0)==(b|0))break;if((f[d>>2]|0)==(c|0)){h=4;break}else d=d+4|0}if((h|0)==4)Ca(106444,106511,83,106545);if((b|0)==(f[e+8>>2]|0))LL(e,a);else{f[b>>2]=c;f[g>>2]=b+4}u=i;return}function oL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)Ip(a,b)}}else Ip(a,b);return}function pL(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}g=b[c+11>>0]|0;h=g<<24>>24<0;g=h?f[c+4>>2]|0:g&255;e=j7a(d)|0;x=0;wa(129,a|0,(h?f[c>>2]|0:c)|0,g|0,g+e|0);c=x;x=0;if(!(c&1)?(x=0,ja(49,a|0,d|0,e|0)|0,h=x,x=0,!(h&1)):0)return;h=Ia()|0;MTa(a);Ua(h|0)}function qL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2343,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function rL(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;d=f[a+64>>2]|0;e=f[d+124>>2]|0;d=f[d+120>>2]|0;while(1){if((d|0)==(e|0)){g=3;break}c=j7a(87315)|0;h=b[d+11>>0]|0;if((c|0)==((h<<24>>24<0?f[d+4>>2]|0:h&255)|0)){x=0;c=ia(134,d|0,c|0)|0;h=x;x=0;if(h&1){g=6;break}if(c|0)g=8}else g=8;if((g|0)==8){g=0;LV(a,d)}d=d+24|0}if((g|0)==3)return;else if((g|0)==6){h=Ja(0)|0;y2a(h)}}function sL(a){a=a|0;Nea(a+104|0);zSa(a+92|0);zSa(a+80|0);c6(a+68|0);zSa(a+52|0);QV(a+40|0);CVa(a);return}function tL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,841,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function uL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,1897,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function vL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+16|0;c=f[e>>2]|0;if((a|0)!=(c|0)){if(c|0)oc[f[(f[c>>2]|0)+20>>2]&1023](c)}else oc[f[(f[c>>2]|0)+16>>2]&1023](c);f[e>>2]=0;c=b+16|0;d=f[c>>2]|0;do if(d){if((b|0)!=(d|0)){f[e>>2]=d;f[c>>2]=0;break}b=Jbb(a)|0;f[e>>2]=b;e=f[c>>2]|0;x=0;ua(f[(f[e>>2]|0)+12>>2]|0,e|0,b|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}}else f[e>>2]=0;while(0);return a|0}function wL(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+11|0;e=b[i>>0]|0;h=e<<24>>24<0;if(h){g=(f[a+8>>2]&2147483647)+-1|0;e=f[a+4>>2]|0}else{g=10;e=e&255}if((g-e|0)>>>0>=d>>>0){if(d|0){if(h)g=f[a>>2]|0;else g=a;eUa(g+e|0,c,d)|0;e=e+d|0;if((b[i>>0]|0)<0)f[a+4>>2]=e;else b[i>>0]=e;Z0a(g+e|0,0)}}else pD(a,g,e+d-g|0,e,e,0,d,c);return a|0}function xL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,293,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function yL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2342,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function zL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,3102,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function AL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,2191,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function BL(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=131960;do if(b){if(b>>>0<=1073741823){d=s8(b<<2)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<2)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<2);return}function CL(a){a=a|0;if(!a)return;else{CL(f[a>>2]|0);CL(f[a+4>>2]|0);nDa(a+16|0);Cbb(a);return}}function DL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=a+4|0;g=a+8|0;if((f[g>>2]|0)!=(f[e>>2]|0))Ca(115822,115840,387,115863);tS(a,529,b);c=d+4|0;while(1){if((f[g>>2]|0)==(f[e>>2]|0)){b=8;break}Bsa(d,a);b=f[c>>2]|0;f[a>>2]=b;if(!(f[b>>2]|0)){b=6;break}pc[f[d>>2]&4095](a,b)}if((b|0)==6)Ca(115868,115840,392,115863);else if((b|0)==8){u=h;return}}function EL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+96|0;d=g;e=b+36|0;b=b+4|0;c=pg(a,f[e>>2]|0,(f[b>>2]|0)!=0)|0;if(!c)uVa(f[e>>2]|0);else f[e>>2]=c;if((f[b>>2]|0)==0?(a=fZa(f[a+40>>2]|0)|0,gA(d,a,f[e>>2]|0),a=qza(d)|0,_7(d),!a):0)uVa(f[e>>2]|0);u=g;return}function FL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;e=i+4|0;g=i;b=f[b>>2]|0;c=v$a(b)|0;if(!c){b=J$a(b)|0;if(b|0?(d=f[b+8>>2]|0,Qab(d)|0):0){f[g>>2]=d;f[h>>2]=f[g>>2];bY(a+36|0,h)}}else{b=f[c+8>>2]|0;if(Qab(b)|0){f[e>>2]=b;f[h>>2]=f[e>>2];bY(a+36|0,h)}}u=i;return}function GL(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;Cs(a+16|0,b);NA(a);cm(a);f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;x=0;ua(f[(f[a>>2]|0)+32>>2]|0,a|0,c|0);b=x;x=0;if(!(b&1)?(x=0,ua(3138,a|0,c|0),b=x,x=0,!(b&1)):0){zSa(c);u=d;return}d=Ia()|0;zSa(c);Ua(d|0)}function HL(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);P_a(b+16|0);Cbb(b);return}function IL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g+8|0;d=g+4|0;e=g;if((f[b+8>>2]|0)==(f[a+24>>2]|0)?(b=TRa((QRa(f[b+12>>2]|0)|0)+8|0)|0,(b|0)==(f[a+28>>2]|0)):0){b=f[a+20>>2]|0;Jbb(b)|0;_0a(d,b);f[e>>2]=f[a+32>>2];f[c>>2]=f[e>>2];e=Vma(d,c,0,0)|0;GVa(f[a>>2]|0,e)|0}u=g;return}function JL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[33159]|0;do if(c){e=f[b>>2]|0;while(1)if(e>>>0<(f[c+16>>2]|0)>>>0){b=f[c>>2]|0;if(!b){b=5;break}else c=b}else{d=c+4|0;b=f[d>>2]|0;if(!b){b=7;break}else c=b}if((b|0)==5){f[a>>2]=c;break}else if((b|0)==7){f[a>>2]=c;c=d;break}}else{f[a>>2]=132636;c=132636}while(0);return c|0}function KL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;VMa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;vka(d,f[a>>2]|0);a=a+4|0}Rva(d,f[b+76>>2]|0,f[b+80>>2]|0);Rva(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function LL(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;iO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=f[b>>2];f[g>>2]=e+4;wP(a,c);Hja(c);u=h;return}}function ML(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;b=g;c=f[32963]|0;d=(f[32964]|0)-c>>2;e=d+1|0;if(e>>>0>1073741823)dea();else{h=(f[32965]|0)-c|0;c=h>>1;_N(b,h>>2>>>0<536870911?(c>>>0>>0?e:c):1073741823,d);e=b+8|0;d=f[e>>2]|0;f[d>>2]=f[a>>2];f[e>>2]=d+4;fR(b);Hja(b);u=g;return}}function NL(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+4|0;yPa(f[c>>2]|0,93585)|0;a=b+8|0;if(Qab(f[a>>2]|0)|0){d=Ema(f[c>>2]|0,32)|0;Bfa(d,f[a>>2]|0)|0}a=b+4|0;if(v2a(f[a>>2]|0)|0){d=DCa(f[c>>2]|0,75654)|0;Ema(DCa(d,Fha(f[a>>2]|0)|0)|0,41)|0}return}function OL(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k;do if((a|0)==(c|0)){f[d>>2]=4;e=0;a=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;e=0;a=0;break}i=f[33448]|0;f[33448]=0;kOa()|0;a=z$a(a,h,e)|0;e=I;g=f[33448]|0;if(!g)f[33448]=i;if((f[h>>2]|0)==(c|0)){if((g|0)==34){a=-1;e=-1;j=8}}else{a=0;e=0;j=8}if((j|0)==8)f[d>>2]=4}while(0);I=e;u=k;return a|0}function PL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=107374182){d=s8(b*40|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*40|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*40|0);return}function QL(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=a+8|0;i=e+3|0;d=b[i>>0]|0;g=d<<24>>24<0;if(g){h=f[a+4>>2]|0;d=(f[e>>2]&2147483647)+-1|0}else{h=d&255;d=1}if((h|0)==(d|0)){eB(a,d,1,d,d);if((b[i>>0]|0)<0)d=8;else d=7}else if(g)d=8;else d=7;if((d|0)==7)b[i>>0]=h+1;else if((d|0)==8){i=f[a>>2]|0;f[a+4>>2]=h+1;a=i}i=a+(h<<2)|0;L1a(i,c);L1a(i+4|0,0);return}function RL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;b=Z$a(b)|0;if(!b)hb();if((f[b+12>>2]|0)!=(c|0))if((f[b+16>>2]|0)==(c|0))e=1;else hb();else e=0;b=f[d+(e<<2)>>2]|0;f[g>>2]=b;fg(a,b,0)|0;e=a+60|0;d=f[e>>2]|0;if((d|0)==(f[a+64>>2]|0))LL(a+56|0,g);else{f[d>>2]=b;f[e>>2]=(f[e>>2]|0)+4}u=h;return}function SL(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[33199]|0;d=a+4|0;b=f[33200]|0;while(1){if((b|0)==(c|0))break;e=b+-20|0;BM((f[d>>2]|0)+-20|0,e);f[d>>2]=(f[d>>2]|0)+-20;b=e}e=f[33199]|0;f[33199]=f[d>>2];f[d>>2]=e;e=a+8|0;c=f[33200]|0;f[33200]=f[e>>2];f[e>>2]=c;e=a+12|0;c=f[33201]|0;f[33201]=f[e>>2];f[e>>2]=c;f[a>>2]=f[d>>2];return}function TL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;yNa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Qka(d,f[a>>2]|0);a=a+4|0}wwa(d,f[b+76>>2]|0,f[b+80>>2]|0);wwa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function UL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;zNa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;Rka(d,f[a>>2]|0);a=a+4|0}xwa(d,f[b+76>>2]|0,f[b+80>>2]|0);xwa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function VL(a){a=a|0;wfa(a+104|0);zSa(a+92|0);zSa(a+80|0);z6(a+68|0);zSa(a+52|0);GW(a+40|0);CVa(a);return}function WL(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;h=s8(28)|0;f[a>>2]=h;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;f[h+8>>2]=f[e>>2];x=0;ua(2492,h+12|0,g|0);g=x;x=0;if(g&1){g=Ia()|0;f[a>>2]=0;Cbb(h);Ua(g|0)}else{b[c>>0]=1;f[h+4>>2]=d;f[h>>2]=0;return}}function XL(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;XNa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;vla(d,f[a>>2]|0);a=a+4|0}gxa(d,f[b+76>>2]|0,f[b+80>>2]|0);gxa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function YL(a,b){a=a|0;b=b|0;var c=0;c=n0a(a,0)|0;do if(!(KBa(f[c>>2]|0,133180)|0)){c=n0a(a,0)|0;if(KBa(f[c>>2]|0,133176)|0){a=n0a(a,3)|0;a=Jbb(f[a>>2]|0)|0;c=n0a(b,1)|0;Fga(a,UNa(Jbb(f[c>>2]|0)|0)|0)|0;break}else hb()}else{a=n0a(a,1)|0;a=Jbb(f[a>>2]|0)|0;c=n0a(b,1)|0;Fga(a,UNa(Jbb(f[c>>2]|0)|0)|0)|0}while(0);return}function ZL(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e|0;h=g+1|0;if((h|0)<0)dea();else{j=(f[a+8>>2]|0)-e|0;e=j<<1;rda(d,j>>>0<1073741823?(e>>>0>>0?h:e):2147483647,g,a+8|0);h=d+8|0;g=f[h>>2]|0;b[g>>0]=b[c>>0]|0;f[h>>2]=g+1;ZP(a,d);poa(d);u=i;return}}function _L(a){a=a|0;var b=0,c=0;f[a>>2]=44420;SQa(a+128|0);Gea(a+108|0);Gea(a+88|0);Zma(a+68|0);SQa(a+48|0);c=a+44|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Cbb(b);QTa(a);return}function $L(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-16|0;TLa((f[g>>2]|0)+-16|0,h);f[g>>2]=(f[g>>2]|0)+-16;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function aM(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;dOa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;eaa(d,f[a>>2]|0);a=a+4|0}Dxa(d,f[b+76>>2]|0,f[b+80>>2]|0);Dxa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function bM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=c+4|0;i=c+8|0;while(1){d=a&127;b[g>>0]=d;a=a>>>7;if(!(Qab(a)|0))break;d=d|-128;b[g>>0]=d;e=f[h>>2]|0;if((e|0)==(f[i>>2]|0))ZL(c,g);else{b[e>>0]=d;f[h>>2]=(f[h>>2]|0)+1}}a=f[h>>2]|0;if((a|0)==(f[i>>2]|0))ZL(c,g);else{b[a>>0]=d;f[h>>2]=(f[h>>2]|0)+1}u=j;return}function cM(a,c){a=a|0;c=c|0;var d=0;Mta(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);d=f[a+36>>2]|0;Jbb(d)|0;Zsa(a,(b[d+114>>0]|0)==0,c);Jea(a,f[c+4>>2]|0,c,83507);Jea(a,f[(f[c+12>>2]|0)+4>>2]|0,c,83537);Jea(a,f[(f[c+16>>2]|0)+4>>2]|0,c,83573);return}function dM(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;B$(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function eM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;d=Cp(f[a+4>>2]|0)|0;f[h>>2]=d;d=f[a+20>>2]|0;d=ec[f[(f[d>>2]|0)+8>>2]&127](d,b,1)|0;f[g>>2]=f[h>>2];d=sn(bxa(b,g,d)|0,a,b,c)|0;a=f[a+8>>2]|0;if(a)d=Ipa(b,d,ec[f[(f[a>>2]|0)+8>>2]&127](a,b,c)|0)|0;u=e;return d|0}function fM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-24|0;CY((f[g>>2]|0)+-24|0,h);f[g>>2]=(f[g>>2]|0)+-24;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function gM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;if(c|0){h=a+11|0;d=b[h>>0]|0;if(d<<24>>24<0){e=(f[a+8>>2]&2147483647)+-1|0;g=f[a+4>>2]|0}else{e=10;g=d&255}if((e-g|0)>>>0>>0){wM(a,e,g+c-e|0,g,g);d=b[h>>0]|0}if(d<<24>>24<0)e=f[a>>2]|0;else e=a;gMa(e+g|0,c,0)|0;d=g+c|0;if((b[h>>0]|0)<0)f[a+4>>2]=d;else b[h>>0]=d;Z0a(e+d|0,0)}return a|0}function hM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;e=h;if(!(g2a(a,b)|0))if((b|0)!=0?(g=dx(b,39368)|0,(g|0)!=0):0){b=e+4|0;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=g;f[e+8>>2]=a;f[e+12>>2]=-1;f[e+48>>2]=1;rc[f[(f[g>>2]|0)+28>>2]&255](g,e,f[c>>2]|0,1);if((f[e+24>>2]|0)==1){f[c>>2]=f[e+16>>2];b=1}else b=0}else b=0;else b=1;u=h;return b|0}function iM(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+-16+16|0;c=f[b+52>>2]|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;tOa(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;jga(d,f[a>>2]|0);a=a+4|0}$xa(d,f[b+76>>2]|0,f[b+80>>2]|0);$xa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function jM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;c=f[32988]|0;d=a+4|0;b=f[32989]|0;while(1){if((b|0)==(c|0))break;g=(f[d>>2]|0)+-4|0;e=b+-4|0;h=f[e>>2]|0;f[e>>2]=0;f[g>>2]=h;f[d>>2]=(f[d>>2]|0)+-4;b=e}h=f[32988]|0;f[32988]=f[d>>2];f[d>>2]=h;h=a+8|0;g=f[32989]|0;f[32989]=f[h>>2];f[h>>2]=g;h=a+12|0;g=f[32990]|0;f[32990]=f[h>>2];f[h>>2]=g;f[a>>2]=f[d>>2];return}function kM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=a+11|0;d=b[h>>0]|0;e=d<<24>>24<0;if(e){g=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{g=d&255;d=10}if((g|0)==(d|0)){wM(a,d,1,d,d);if((b[h>>0]|0)<0)d=8;else d=7}else if(e)d=8;else d=7;if((d|0)==7)b[h>>0]=g+1;else if((d|0)==8){h=f[a>>2]|0;f[a+4>>2]=g+1;a=h}h=a+g|0;Z0a(h,c);Z0a(h+1|0,0);return}function lM(a){a=a|0;Uga(a+104|0);zSa(a+92|0);zSa(a+80|0);H7(a+68|0);zSa(a+52|0);GW(a+40|0);CVa(a);return}function mM(a,c,d){a=a|0;c=c|0;d=d|0;a:do if((a|0)!=(c|0))switch(b[a>>0]|0){case 68:case 67:{a=Yk(a,c,d)|0;break a}case 85:{a=Se(a,c,d)|0;break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{a=hk(a,c,d)|0;break a}default:return Hc(a,c,d)|0}while(0);return a|0}function nM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;mX(a);f[a+116>>2]=b;f[a+120>>2]=c;zWa(a,d);x=0;ua(469,a|0,d|0);c=x;x=0;if(!(c&1)?(x=0,ua(470,a|0,d|0),d=x,x=0,!(d&1)):0)return;d=Ia()|0;sL(a);Ua(d|0)}function oM(a){a=a|0;sha(a+104|0);zSa(a+92|0);zSa(a+80|0);T7(a+68|0);zSa(a+52|0);GW(a+40|0);CVa(a);return}function pM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-24|0;mW((f[g>>2]|0)+-24|0,h);f[g>>2]=(f[g>>2]|0)+-24;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function qM(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;y2(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function rM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+16|0;g=e;d=e+4|0;f[g>>2]=b;b=Wz(a+56|0,g)|0;if(b){h=b+12|0;g=f[a+36>>2]|0;Jbb(g)|0;_0a(d,g);g=tja(d,h)|0;f[b+16>>2]=f[h>>2];faa(g+12|0,c);tt(g);c=g}u=e;return c|0}function sM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=Ea(20)|0;x=0;ua(88,c|0,b|0);b=x;x=0;if(!(b&1)){x=0;wa(138,d|0,c|0,0,f[a+36>>2]|0);b=x;x=0;if(b&1)b=1;else{x=0;va(98,d|0,32200,457);x=0;b=0}a=Ia()|0;MTa(c);if(b)e=6}else{a=Ia()|0;e=6}if((e|0)==6)La(d|0);Ua(a|0)}function tM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=h+4|0;hLa(g,(Jbb(f[a+32>>2]|0)|0)<<16,0);if((f[b>>2]|0)==1){d=TRa(b)|0;b=d;d=((d|0)<0)<<31>>31}else{b=oJa(b)|0;d=I}io(a,b,d,(Jbb(f[g>>2]|0)|0)-c|0,0,58447);hLa(e,b,d);u=h;return f[e>>2]|0}function uM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=b+8|0;h=f[g>>2]|0;c=a+32|0;pva(a,h>>>0<(kQa(Jbb(f[c>>2]|0)|0)|0)>>>0,b);h=b+12|0;d=f[(f[h>>2]|0)+4>>2]|0;if((d|0)!=5){e=f[b+4>>2]|0;if(e|0)Mfa(a,d,e,b);e=Jbb(f[c>>2]|0)|0;g=s9(e,f[g>>2]|0)|0;cma(a,g,f[(f[h>>2]|0)+4>>2]|0,b)}return}function vM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=c-e>>2;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){b=e+(b<<2)|0;while(1){if((c|0)==(b|0))break;c=c+-4|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){zSa(a);Cbb(a)}}f[g>>2]=b}}else iA(a,b-d|0);return}function wM(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;if((-17-c|0)>>>0>>0)Rda();if((b[a+11>>0]|0)<0)j=f[a>>2]|0;else j=a;if(c>>>0<2147483623){h=d+c|0;i=c<<1;h=h>>>0>>0?i:h;h=h>>>0<11?11:h+16&-16}else h=-17;i=s8(h)|0;if(g|0)eUa(i,j,g)|0;d=e-g|0;if(d|0)eUa(i+g|0,j+g|0,d)|0;if((c|0)!=10)Cbb(j);f[a>>2]=i;f[a+8>>2]=h|-2147483648;return}function xM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=f[a+80>>2]|0;if(c|0){b=Jbb(f[a+16>>2]|0)|0;f[g>>2]=b;d=c+28|0;e=f[d>>2]|0;if(e>>>0<(f[c+32>>2]|0)>>>0){pXa(e,b);f[d>>2]=(f[d>>2]|0)+16}else{VF(c+24|0,g);b=f[g>>2]|0}g=dm(a+184|0,g)|0;f[g>>2]=b}u=h;return}function yM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;c=T4(a,b,c)|0;cz(b);Dh(d,f[b>>2]|0);if((f[d+12>>2]|0)==0?g2a(f[d>>2]|0,f[33285]|0)|0:0){f[b>>2]=(f[b>>2]|0)+(f[d+8>>2]|0);d=m3(c,PV(a,b)|0)|0;u=e;return d|0}Ca(66131,65740,487,66173);return 0}function zM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;f[d>>2]=b;b=e+4|0;g=n0a(a,0)|0;if(!(KBa(f[g>>2]|0,133168)|0))Ca(66047,75335,1501,66061);g=Jbb(eua(1)|0)|0;n4a(b,Sqa(g,Boa(d)|0)|0);g=ZTa(c)|0;b=f[b>>2]|0;if(!g)Sqa(Jbb(b)|0,c)|0;g=n0a(a,1)|0;Sqa(Jbb(f[g>>2]|0)|0,b)|0;u=e;return}function AM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=b+16|0;e=a+20|0;c=f[b+12>>2]|0;while(1){if((c|0)==(d|0))break;b=L_a(f[c+16>>2]|0)|0;if(b|0){b=b+8|0;g=GUa(a,s9(f[e>>2]|0,f[b>>2]|0)|0)|0;f[b>>2]=g}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}return}function BM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=f[b>>2]|0;f[b>>2]=0;f[a>>2]=e;g=b+4|0;d=a+4|0;f[d>>2]=f[g>>2];f[g>>2]=0;g=a+8|0;h=b+8|0;c=f[h>>2]|0;f[g>>2]=c;i=b+12|0;j=f[i>>2]|0;f[a+12>>2]=j;f[a+16>>2]=f[b+16>>2];if(j|0){a=f[c+4>>2]|0;b=f[d>>2]|0;c=b+-1|0;if(c&b){if(a>>>0>=b>>>0)a=(a>>>0)%(b>>>0)|0}else a=c&a;f[e+(a<<2)>>2]=g;f[h>>2]=0;f[i>>2]=0}return}function CM(a,c){a=a|0;c=c|0;var d=0,e=0;f[a>>2]=c;f[a+4>>2]=0;d=a+20|0;b[d>>0]=0;b[a+21>>0]=0;f[a+24>>2]=0;f[a+28>>2]=0;e=a+44|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+60>>2]=1065353216;oOa(a,0);do if(!(b[d>>0]|0)){x=0;c=fa(64)|0;a=x;x=0;if(a&1){d=Ia()|0;SQa(e);Ua(d|0)}else{b[d>>0]=c&1;break}}while(0);return}function DM(a,c){a=a|0;c=c|0;var d=0,e=0;e=s8(72)|0;f[a>>2]=e;f[a+4>>2]=132704;d=a+8|0;b[d>>0]=0;a=e+16|0;c=f[c>>2]|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}bya(e+32|0);b[d>>0]=1;return}function EM(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g+4|0;c=g;d=a+36|0;n4a(c,f[d>>2]|0);c=k_a(f[c>>2]|0)|0;c=Bla(f[d>>2]|0,c)|0;f[b>>2]=c;d=a+4|0;e=f[d>>2]|0;if(e>>>0<(f[a+8>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}else LL(a,b);u=g;return}function FM(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+44|0;e=f[d>>2]|0;c=c+24|0;if(!(sB(e,c)|0))Ca(110229,109873,113,110003);else{e=Wl(e,c)|0;f[e>>2]=(f[e>>2]|0)+1;d=f[d>>2]|0;e=f[a+32>>2]|0;Jbb(e)|0;e=(Wl(d,e)|0)+8|0;b[e>>0]=0;return}}function GM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;a1a(a);c=f[c+8>>2]|0;if(!((c|0)!=0?(Ow(d,b,c),f[a>>2]=f[d>>2],f[a+4>>2]=f[d+4>>2],f[a+8>>2]=f[d+8>>2],f[a+12>>2]=f[d+12>>2],f[a+16>>2]=f[d+16>>2],K0a(a)|0):0))f[a+16>>2]=f[33118];u=e;return}function HM(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+64|0;c=f[d>>2]|0;sD(a);fH(c,f[d>>2]|0);c=(vSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+84|0;fH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function IM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if((c-a|0)>1){if((b[a>>0]|0)==83?(b[a+1>>0]|0)==116:0){e=a+2|0;if((e|0)==(c|0)){g=0;e=c}else{g=0;e=(b[e>>0]|0)==76?a+3|0:e}}else{g=1;e=a}c=mM(e,c,d)|0;e=(c|0)==(e|0);if(!(g|e)){e=f[d+4>>2]|0;if((f[d>>2]|0)!=(e|0)){zoa(e+-24|0,0,123568)|0;a=c}}else a=e?a:c}return a|0}function JM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;Pra(a);f[a>>2]=47308;f[a+32>>2]=c;lVa(e,f[a+4>>2]|0);x=0;c=ia(73,f[e>>2]|0,135192)|0;h=x;x=0;if(h&1){h=Ia()|0;OCa(e);WWa(a);Ua(h|0)}else{OCa(e);f[a+36>>2]=c;f[a+40>>2]=d;h=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=h;u=g;return}}function KM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;Xra(a);f[a>>2]=47372;f[a+32>>2]=c;lVa(e,f[a+4>>2]|0);x=0;c=ia(73,f[e>>2]|0,135184)|0;h=x;x=0;if(h&1){h=Ia()|0;OCa(e);cXa(a);Ua(h|0)}else{OCa(e);f[a+36>>2]=c;f[a+40>>2]=d;h=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=h;u=g;return}}function LM(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;g=h;if(b[(f[a+44>>2]|0)+1>>0]|0?(e=Jbb(f[a+36>>2]|0)|0,f[g>>2]=f[c+8>>2],f[d>>2]=f[g>>2],e=gna(e,d)|0,npa(a,(e|0)!=0,c,84418)|0):0){npa(a,(b[e+12>>0]|0)!=0,c,84495)|0;vfa(a,f[(f[c+12>>2]|0)+4>>2]|0,f[e+4>>2]|0,c)}u=h;return}function MM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=214748364){d=s8(b*20|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*20|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*20|0);return}function NM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g;It(e,hca(a,b,d)|0,c);x=0;b=ia(55,e|0,f[a>>2]|0)|0;d=x;x=0;if(d&1){g=Ia()|0;MTa(e);Ua(g|0)}else{MTa(e);u=g;return b|0}return 0}function OM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+64|0;c=h+48|0;d=h+4|0;e=h+8|0;g=h;f[d>>2]=a;a=f[b>>2]|0;do if(Qab(a)|0){f[g>>2]=a;f[c>>2]=f[g>>2];EGa(e,c);x=0;ua(258,e|0,d|0);g=x;x=0;if(g&1){h=Ia()|0;P_a(e);Ua(h|0)}else{a=(f[e+32>>2]|0)!=0;P_a(e);break}}else a=0;while(0);u=h;return a|0}function PM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=d3(a,f[b+12>>2]|0)|0;d=d3(a,f[b+16>>2]|0)|0;c=d3(a,f[b+20>>2]|0)|0;return G9(f[a+32>>2]|0,e,d,c,f[b+24>>2]|0,f[b+8>>2]|0)|0}function QM(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b+12>>2]|0){case 0:{f[c>>2]=0;f[c+4>>2]=f[b>>2];b=(NP(a+40|0,c)|0)==0;break}case 3:{f[c>>2]=1;f[c+4>>2]=f[b>>2];b=(NP(a+40|0,c)|0)==0;break}default:b=0}u=d;return b|0}function RM(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+64|0;c=h+48|0;d=h+4|0;e=h+8|0;g=h;f[d>>2]=a;a=f[b>>2]|0;do if(Qab(a)|0){f[g>>2]=a;f[c>>2]=f[g>>2];EGa(e,c);x=0;ua(258,e|0,d|0);g=x;x=0;if(g&1){h=Ia()|0;P_a(e);Ua(h|0)}else{a=f[e+32>>2]|0;P_a(e);break}}else a=0;while(0);u=h;return a|0}function SM(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if((c|0)!=(b|0)){g=a+4|0;d=f[g>>2]|0;e=b;a=c;while(1){if((a|0)==(d|0))break;c=f[a>>2]|0;f[a>>2]=0;b=f[e>>2]|0;f[e>>2]=c;if(b|0){T_a(b);Cbb(b)}e=e+4|0;a=a+4|0}a=f[g>>2]|0;while(1){if((a|0)==(e|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0){T_a(b);Cbb(b)}}f[g>>2]=e}return}function TM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=357913941){d=s8(b*12|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*12|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*12|0);return}function UM(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=d-c|0;if(g>>>0>4294967279)Rda();if(g>>>0<11)b[a+11>>0]=g;else{h=g+16&-16;e=W1a(h)|0;f[a>>2]=e;f[a+8>>2]=h|-2147483648;f[a+4>>2]=g;a=e}e=a;while(1){if((c|0)==(d|0))break;Z0a(e,b[c>>0]|0);c=c+1|0;e=e+1|0}Z0a(a+g|0,0);return}function VM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;JPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=wk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?ny(a,c)|0:0)?wk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function WM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;JPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=xk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?uy(a,c)|0:0)?xk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function XM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;JPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=yk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?vy(a,c)|0:0)?yk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function YM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;JPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=zk(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?wy(a,c)|0:0)?zk(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function ZM(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;JPa(a+96|0,c);e=a+93|0;b[e>>0]=1;f=a+92|0;do{d=Ak(a,c)|0;b[f>>0]=d&1;do if(!(b[e>>0]|0)){if((!d?oy(a,c)|0:0)?Ak(a,c)|0:0){b[f>>0]=1;d=1;break}d=b[f>>0]|0}else{b[e>>0]=0;b[f>>0]=1;d=1}while(0)}while(d<<24>>24!=0);return}function _M(a,b){a=a|0;b=b|0;var c=0,d=0;c=lE(a,b)|0;if(c|0){d=f[c+12>>2]|0;switch(f[d+12>>2]|0){case 0:{Ca(76729,76743,43,76770);break}case 1:break;default:U8(d,b)}GP(a,c)}return}function $M(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-16|0;j7((f[g>>2]|0)+-16|0,h);f[g>>2]=(f[g>>2]|0)+-16;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function aN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=178956970){d=s8(b*24|0)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*24|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*24|0);return}function bN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=132792;do if(b){if(b>>>0<=107374182){d=s8(b*40|0)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c*40|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*40|0);return}function cN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=c+12|0;d=a+16|0;c=c+8|0;do{Ou(a,b,f[e>>2]|0);if(!(K0a(a)|0))break}while(g2a(f[d>>2]|0,f[c>>2]|0)|0);return}function dN(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;k=h&1;j=i&1;f[a>>2]=c;f[a+4>>2]=d;h=a+8|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];f[h+16>>2]=f[e+16>>2];VZ(a+32|0,g);h=a+56|0;i=a+177|0;c=h;d=c+120|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));b[h+120>>0]=0;b[i>>0]=k;b[a+178>>0]=j;return}function eN(a){a=a|0;var b=0,c=0,d=0;a=d$a(a)|0;if((((((((a|0)!=0?(f[a+8>>2]|0)==12:0)?(d=n$a(f[a+16>>2]|0)|0,(d|0)!=0):0)?(TRa(d+8|0)|0)!=0:0)?(b=d$a(f[a+12>>2]|0)|0,(b|0)!=0):0)?(f[b+8>>2]|0)==10:0)?(c=n$a(f[b+16>>2]|0)|0,(c|0)!=0):0)?(d=V4(d)|0,d>>>0<=(V4(c)|0)>>>0):0)a=f[b+12>>2]|0;else a=0;return a|0}function fN(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+80|0;c=f[d>>2]|0;SC(a+16|0);DH(c,f[d>>2]|0);c=(vSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+100|0;DH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function gN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;g=c+4|0;h=c;f[h>>2]=f[b+24>>2];e=d3(a,f[b+28>>2]|0)|0;d=d3(a,f[b+32>>2]|0)|0;f[g>>2]=f[h>>2];b=x8(a+32|0,b+8|0,g,e,d)|0;u=c;return b|0}function hN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;if(b>>>0<2)c=0;else{e=f[a>>2]|0;switch(e|0){case 1:{n4a(d,TRa(a)|0);c=IY(d)|0;break}case 2:{MXa(d,oJa(a)|0,I);c=eX(d)|0;break}case 4:case 3:{c=Ixa(e)|0;break}default:hb()}c=((b<<1)+2+c|0)>>>0<(X(c,b)|0)>>>0}u=g;return c|0}function iN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;f[c>>2]=(f[c>>2]|0)+1;c=f[32836]|0;do if((f[32837]|0)-c>>2>>>0<=b>>>0){x=0;ta(517,b+1|0);c=x;x=0;if(!(c&1)){c=f[32836]|0;break}c=Ia()|0;if(a|0)IBa(a);Ua(c|0)}while(0);c=f[c+(b<<2)>>2]|0;if(c|0?(e=c+4|0,d=f[e>>2]|0,f[e>>2]=d+-1,(d|0)==0):0)oc[f[(f[c>>2]|0)+8>>2]&1023](c);f[(f[32836]|0)+(b<<2)>>2]=a;return}function jN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;if(!(q4a(f[a>>2]|0)|0)){a=n$a(a)|0;if(((a|0)!=0?(g=Jia(a+8|0)|0,h=I,!(h>>>0>0|(h|0)==0&g>>>0>4294967295)):0)?(e=Jbb(b)|0,b=BOa(g|0,h|0,e|0,0)|0,a=I,!(a>>>0>0|(a|0)==0&b>>>0>4294967295)):0){hLa(d,g,h);a=e+(Jbb(f[d>>2]|0)|0)|0;a=a>>>0<=(Jbb(c)|0)>>>0}else a=0}else a=1;u=i;return a|0}function kN(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(32)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];e=g+12|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[g+28>>2]=1065353216;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function lN(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h;f[g>>2]=0;d=(b[c+11>>0]|0)<0?f[c>>2]|0:c;j=f[33448]|0;f[33448]=0;e=xZa(d,g,0)|0;c=I;i=f[33448]|0;f[33448]=j;if((i|0)==34)YV(a);if((f[g>>2]|0)==(d|0))ZV(a);I=c;u=h;return e|0}function mN(a){a=a|0;if(!a)return;else{mN(f[a>>2]|0);mN(f[a+4>>2]|0);PNa(a+16|0);Cbb(a);return}}function nN(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;d=k;e=a+36|0;g=a+40|0;h=c+8|0;i=c;b=a+32|0;a:while(1){a=f[e>>2]|0;a=hc[f[(f[a>>2]|0)+20>>2]&31](a,f[g>>2]|0,c,h,d)|0;l=(f[d>>2]|0)-i|0;if((LHa(c,1,l,f[b>>2]|0)|0)!=(l|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{j=4;break a}}}if((j|0)==4)a=((Z0(f[b>>2]|0)|0)!=0)<<31>>31;u=k;return a|0}function oN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:do if(bc[f[(f[b>>2]|0)+28>>2]&511](b)|0){if(c|0){c=c+40|0;a=f[c>>2]|0;f[c>>2]=0;if(!a)break;zSa(a);Cbb(a);break}a=f[a>>2]|0;b=f[a+40>>2]|0;a=f[a+36>>2]|0;while(1){if((a|0)==(b|0))break a;d=(f[a>>2]|0)+40|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0){zSa(c);Cbb(c)}a=a+4|0}}while(0);return}function pN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=a+12|0;j=a+16|0;h=0;while(1){if((h|0)>=(d|0))break;e=f[i>>2]|0;g=f[j>>2]|0;if(e>>>0>>0){g=g-e|0;k=d-h|0;g=(k|0)<(g|0)?k:g;eUa(c,e,g)|0;f[i>>2]=(f[i>>2]|0)+g;c=c+g|0;e=g}else{e=bc[f[(f[a>>2]|0)+40>>2]&511](a)|0;if((e|0)==-1)break;e=d7a(e)|0;b[c>>0]=e;c=c+1|0;e=1}h=e+h|0}return h|0}function qN(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b>>2]|0){case 1:{t$a(a,0-(f[b+8>>2]|0)|0);break}case 2:{c=b+8|0;XSa(a,SRa(0,0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}case 3:{t$a(c,f[b+8>>2]^-2147483648);QHa(a,c);break}case 4:{b=b+8|0;XSa(c,f[b>>2]|0,f[b+4>>2]^-2147483648);b=c+8|0;uGa(a,f[c>>2]|0,f[b>>2]|0,f[b+4>>2]|0);break}default:hb()}u=d;return}function rN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=d+74|0;g=b[e>>0]|0;b[e>>0]=g+255|g;e=d+4|0;g=f[e>>2]|0;h=(f[d+8>>2]|0)-g|0;if((h|0)>0){h=h>>>0>>0?h:c;Ku(a|0,g|0,h|0)|0;f[e>>2]=(f[e>>2]|0)+h;e=c-h|0;a=a+h|0}else e=c;a:do if(e){h=d+32|0;while(1){if(MX(d)|0)break;g=ec[f[h>>2]&127](d,a,e)|0;if((g+1|0)>>>0<2)break;e=e-g|0;if(!e)break a;else a=a+g|0}c=c-e|0}while(0);return c|0}function sN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if((c|0)!=(b|0)){g=a+4|0;d=f[g>>2]|0;e=b;a=c;while(1){if((a|0)==(d|0))break;c=f[a>>2]|0;f[a>>2]=0;b=f[e>>2]|0;f[e>>2]=c;if(b|0){OX(b);Cbb(b)}e=e+4|0;a=a+4|0}a=f[g>>2]|0;while(1){if((a|0)==(e|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0){OX(b);Cbb(b)}}f[g>>2]=e}return}function tN(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;do if((Vp(a)|0)!=(b|0)){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,99224,j7a(99224)|0);x=0;ua(1870,a|0,c|0);b=x;x=0;if(b&1){d=Ia()|0;MTa(c);Ua(d|0)}else{MTa(c);break}}while(0);u=d;return}function uN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=b;c=f[f[a>>2]>>2]|0;e=b;do if((c|0)!=(b|0)?!(KZ(b,c)|0):0){c=f[a+4>>2]|0;a=c+4|0;b=f[a>>2]|0;if((b|0)==(f[c+8>>2]|0)){LL(c,d);a=1;break}else{f[b>>2]=e;f[a>>2]=(f[a>>2]|0)+4;a=1;break}}else a=0;while(0);u=g;return a|0}function vN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;g=c;e=d-g|0;if(e>>>0>4294967279)Rda();if(e>>>0<11)b[a+11>>0]=e;else{i=e+16&-16;h=s8(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=e;a=h}h=d-g|0;g=a;e=c;while(1){if((e|0)==(d|0))break;Z0a(g,b[e>>0]|0);g=g+1|0;e=e+1|0}Z0a(a+h|0,0);return}function wN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;XSa(e,0,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];HAa(e,-9223372036854775808.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];HAa(e,9223372036854775808.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function xN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;XSa(e,0,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];pqa(e,-9223372036854775808.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];pqa(e,9223372036854775808.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function yN(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+80|0;c=f[d>>2]|0;eD(a+16|0);DH(c,f[d>>2]|0);c=(vSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+100|0;DH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function zN(a){a=a|0;var c=0,d=0,e=0,g=0;d=f[a+64>>2]|0;e=f[d+124>>2]|0;d=f[d+120>>2]|0;while(1){if((d|0)==(e|0)){c=3;break}c=j7a(87315)|0;g=b[d+11>>0]|0;if((c|0)==((g<<24>>24<0?f[d+4>>2]|0:g&255)|0)){x=0;c=ia(134,d|0,c|0)|0;g=x;x=0;if(g&1){c=6;break}if(!c)LV(a,d)}d=d+24|0}if((c|0)==3)return;else if((c|0)==6){g=Ja(0)|0;y2a(g)}}function AN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(((e|0)/-20|0)*20|0)|0;f[g>>2]=c;if((e|0)>0){Ku(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function BN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=a+24|0;j=a+28|0;e=0;while(1){if((e|0)>=(d|0))break;g=f[i>>2]|0;h=f[j>>2]|0;if(g>>>0>>0){h=h-g|0;k=d-e|0;h=(k|0)<(h|0)?k:h;eUa(g,c,h)|0;f[i>>2]=(f[i>>2]|0)+h;c=c+h|0;e=h+e|0}else{h=f[(f[a>>2]|0)+52>>2]|0;k=d7a(b[c>>0]|0)|0;if((dc[h&255](a,k)|0)==-1)break;c=c+1|0;e=e+1|0}}return e|0}function CN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;c=b+8|0;f[e>>2]=1;f[e+4>>2]=f[c>>2];if(!(NP(a+40|0,e)|0)){f[e>>2]=1;d=a+32|0;b=f[d>>2]|0;if(b>>>0<(f[a+36>>2]|0)>>>0){f[b>>2]=1;f[b+4>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+8}else AF(a+28|0,e,c)}u=g;return}function DN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}e=b[c+11>>0]|0;g=e<<24>>24<0;e=g?f[c+4>>2]|0:e&255;x=0;wa(129,a|0,(g?f[c>>2]|0:c)|0,e|0,e+1|0);c=x;x=0;if(!(c&1)?(x=0,ua(82,a|0,d|0),g=x,x=0,!(g&1)):0)return;g=Ia()|0;MTa(a);Ua(g|0)}function EN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-8|0;ZUa((f[g>>2]|0)+-8|0,h);f[g>>2]=(f[g>>2]|0)+-8;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function FN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=536870911){d=s8(b<<3)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<3)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<3);return}function GN(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+80|0;c=f[d>>2]|0;jD(a+16|0);DH(c,f[d>>2]|0);c=(vSa(f[b>>2]|0)|0)+16|0;c=(f[c>>2]|0)==0;b=a+100|0;DH(f[(f[b>>2]|0)+-4>>2]|0,f[d>>2]|0);a=f[b>>2]|0;if(!c){a=a+-4|0;f[b>>2]=a}f[b>>2]=a+-4;return}function HN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=268435455){d=s8(b<<4)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<4)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<4);return}function IN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+96|0;c=g;b=L_a(b)|0;if((b|0?(d=f[b+8>>2]|0,e=f[a+4>>2]|0,_Wa(f[e+24>>2]|0,d)|0):0)?(h=f[(f[f[a+8>>2]>>2]|0)+(d<<2)>>2]|0,(h|0)==(H$a(f[e+48>>2]|0,d)|0)):0){gA(c,f[a+12>>2]|0,f[b+12>>2]|0);h=qza(c)|0;_7(c);u=g;return (h?0:b)|0}u=g;return 0}function JN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(((e|0)/-12|0)*12|0)|0;f[g>>2]=c;if((e|0)>0){Ku(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function KN(a){a=a|0;if(!a)return;else{KN(f[a>>2]|0);KN(f[a+4>>2]|0);KNa(a+16|0);Cbb(a);return}}function LN(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=u;u=u+128|0;k=h;l=h+116|0;i=h+104|0;j=h+112|0;f[l>>2]=k+100;BW(a,k,l,d,e,g);d=i;f[d>>2]=0;f[d+4>>2]=0;f[j>>2]=k;d=Y0a(b,f[c>>2]|0)|0;a=pRa(f[a>>2]|0)|0;d=ai(b,j,d,i)|0;if(a|0)pRa(a)|0;if((d|0)==-1)Aka(120820);else{f[c>>2]=b+(d<<2);u=h;return}}function MN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;e=b+8|0;Q$a(g,e);LUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=15;while(1){if(!(qTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=QOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;YYa(g);b=i}u=h;return b|0}function NN(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(72)|0;f[a>>2]=e;f[a+4>>2]=c+4;c=a+8|0;b[c>>0]=0;x=0;ua(88,e+16|0,f[d>>2]|0);d=x;x=0;if(d&1){d=Ia()|0;f[a>>2]=0;Cbb(e);Ua(d|0)}else{bya(e+32|0);b[c>>0]=1;return}}function ON(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;do if((f[a+64>>2]|0)!=0?(g=a+12|0,e=f[g>>2]|0,(f[a+8>>2]|0)>>>0>>0):0){if(g2a(c,-1)|0){f[g>>2]=e+-1;c=dXa(c)|0;break}if(!(f[a+88>>2]&16)){d=d7a(c)|0;a=e+-1|0;if(!(C$a(d,b[a>>0]|0)|0)){c=-1;break}}else{d=d7a(c)|0;a=e+-1|0}f[g>>2]=a;b[a>>0]=d}else c=-1;while(0);return c|0}function PN(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if((cia()|0)>1)Ema(xm(DCa(134008,76036)|0,c)|0,10)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=wza(d,c)|0;if(c|0?(x=0,xa(8,b|0,c|0,d|0,e|0,a|0),e=x,x=0,e&1):0){e=Ia()|0;zSa(a);Ua(e|0)}return}function QN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j+4|0;g=j;i=tRa(f[b>>2]|0)|0;f[e>>2]=i;h=f[a+64>>2]|0;if(h|0){c=h+4|0;d=f[c>>2]|0;if(d>>>0<(f[h+8>>2]|0)>>>0){f[d>>2]=i;f[c>>2]=(f[c>>2]|0)+4}else LL(h,e);h=f[a+120>>2]|0;f[g>>2]=i;i=i_(h,g)|0;f[i>>2]=b}u=j;return}function RN(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;switch(a|0){case 5:{L1a(b,f[33034]|0);break}case 6:{L1a(b,f[33035]|0);break}case 3:{L1a(b,f[33032]|0);break}case 4:{L1a(b,f[33033]|0);break}case 30:{f[b>>2]=f[33147];break}case 31:{f[b>>2]=f[33146];break}case 28:{f[b>>2]=f[33145];break}case 29:{f[b>>2]=f[33144];break}default:Bab(b)}u=c;return f[b>>2]|0}function SN(a,b){a=a|0;b=b|0;var c=0;Ema(f[a>>2]|0,40)|0;Ema(yPa(f[a>>2]|0,80869)|0,32)|0;c=f[a>>2]|0;zm(c,Jbb(f[b+8>>2]|0)|0)|0;if(_1a(b)|0){c=Ema(f[a>>2]|0,32)|0;zm(c,Jbb(f[b+12>>2]|0)|0)|0}DCa(f[a>>2]|0,80932)|0;return}function TN(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(32)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=g+8|0;e=f[e>>2]|0;f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];f[g+24>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function UN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=c;b=b+88|0;c=Wz(b,d)|0;if(!c)Ca(106611,106511,1587,106643);else{fba(a,c+12|0);rQ(b,d);u=e;return}}function VN(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;Ow(d,b,c);if(K0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else a1a(a);u=e;return}function WN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-16|0;K4((f[g>>2]|0)+-16|0,h);f[g>>2]=(f[g>>2]|0)+-16;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function XN(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e+8|0;b=e;c=a+12|0;Q$a(d,c);LUa(b,c);c=d+4|0;a=f[b>>2]|0;b=f[b+4>>2]|0;while(1){if(!(qTa(f[d>>2]|0,f[c>>2]|0,a,b)|0)){b=6;break}g=QOa(d)|0;if((f[(f[g>>2]|0)+4>>2]|0)==5){b=5;break}YYa(d)}if((b|0)==5)a=1;else if((b|0)==6)a=0;u=e;return a|0}function YN(){var a=0,b=0,c=0,d=0;c=u;u=u+16|0;b=c;a=yb(75702)|0;do if(a){f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;_Z(b,a,j7a(a)|0);x=0;a=ga(281,b|0)|0;d=x;x=0;if(d&1){d=Ia()|0;MTa(b);Ua(d|0)}else{MTa(b);a=(a|0)!=0;break}}else a=0;while(0);u=c;return a|0}function ZN(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;h=c+-24|0;DU((f[g>>2]|0)+-24|0,h);f[g>>2]=(f[g>>2]|0)+-24;c=h}d=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=d;d=b+8|0;h=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=h;d=a+8|0;h=b+12|0;e=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=e;f[b>>2]=f[g>>2];return}function _N(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=131860;do if(b){if(b>>>0<=1073741823){d=s8(b<<2)|0;break}a=Ea(8)|0;x=0;ua(98,a|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(a|0);Ua(e|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<2)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<2);return}function $N(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+32|0;d=g;e=g+8|0;PS(a,b);x=0;ua(3137,e|0,b|0);b=x;x=0;if(b&1){g=Ia()|0;zSa(a);Ua(g|0)}else{h=f[a>>2]|0;b=f[a+4>>2]|0;f[d>>2]=c;f[d+4>>2]=e;Sg(h,b,d);zSa(e);u=g;return}}function aO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;c=b+24|0;f[e>>2]=0;f[e+4>>2]=f[c>>2];if(!(NP(a+40|0,e)|0)){f[e>>2]=0;d=a+32|0;b=f[d>>2]|0;if(b>>>0<(f[a+36>>2]|0)>>>0){f[b>>2]=0;f[b+4>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+8}else AF(a+28|0,e,c)}u=g;return}function bO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;c=i;a=n$a(a)|0;if((a|0?(e=a+8|0,g=TRa(e)|0,h=Jbb(f[b>>2]|0)|0,(h|g|0)>=0):0)?(d=BOa(h|0,0,g|0,((g|0)<0)<<31>>31|0)|0,h=I,!(h>>>0>0|(h|0)==0&d>>>0>2147483647)):0){t$a(c,d);f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[e+12>>2]=f[c+12>>2];wHa(b,0,0)|0}u=i;return}function cO(a){a=a|0;if(!a)return;else{cO(f[a>>2]|0);cO(f[a+4>>2]|0);Cbb(a);return}}function dO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1307;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1307,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function eO(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(1411,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;zSa(a);Ua(d|0)}else{Xha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function fO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=a+76|0;e=BB(d,b)|0;if(!e){e=f[a+36>>2]|0;Jbb(e)|0;_0a(g,e);a=f[a+32>>2]|0;Jbb(a)|0;a=Cka(a,c)|0;e=qm(d,b)|0;f[e>>2]=a}else a=f[e+12>>2]|0;u=g;return a|0}function gO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;e=b+12|0;Q$a(g,e);LUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=0;while(1){if(!(qTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=QOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;YYa(g);b=i}u=h;return b|0}function hO(a,b){a=a|0;b=b|0;var c=0;c=Jbb(f[b+16>>2]|0)|0;a:do if(c|0?c>>>0<(h[b+8>>0]|0)>>>0:0){c=b+32|0;switch(f[c>>2]|0){case 3:{f[c>>2]=1;c=b+28|0;b=rBa(f[f[a+44>>2]>>2]|0,33,f[c>>2]|0)|0;f[c>>2]=b;break a}case 4:{f[c>>2]=2;c=b+28|0;b=rBa(f[f[a+44>>2]>>2]|0,34,f[c>>2]|0)|0;f[c>>2]=b;break a}default:break a}}while(0);return}function iO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;do if(b){if(b>>>0<=1073741823){d=s8(b<<2)|0;break}d=Ea(8)|0;x=0;ua(98,d|0,121961);e=x;x=0;if(e&1){e=Ia()|0;La(d|0);Ua(e|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}else d=0;while(0);f[a>>2]=d;c=d+(c<<2)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<2);return}function jO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+64|0;c=f[d>>2]|0;f[b>>2]=c;sD(a);fH(c,f[d>>2]|0);d=a+84|0;e=f[d>>2]|0;if((e|0)==(f[a+88>>2]|0))LL(a+80|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function kO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;t$a(e,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];HAa(e,-2147483648.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];HAa(e,2147483648.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function lO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;t$a(e,-2147483648);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];pqa(e,-2147483649.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];pqa(e,2147483648.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function mO(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;L8(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function nO(a){a=a|0;if(!a)return;else{nO(f[a>>2]|0);nO(f[a+4>>2]|0);Cbb(a);return}}function oO(a){a=a|0;if(!a)return;else{oO(f[a>>2]|0);oO(f[a+4>>2]|0);fSa(a+16|0);Cbb(a);return}}function pO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=a+12|0;i=a+16|0;g=0;while(1){if((g|0)>=(c|0))break;d=f[h>>2]|0;e=f[i>>2]|0;if(d>>>0>>0){e=e-d>>2;j=c-g|0;e=(j|0)<(e|0)?j:e;yWa(b,d,e);f[h>>2]=(f[h>>2]|0)+(e<<2);b=b+(e<<2)|0;d=e}else{d=bc[f[(f[a>>2]|0)+40>>2]&511](a)|0;if((d|0)==-1)break;d=Jbb(d)|0;f[b>>2]=d;b=b+4|0;d=1}g=d+g|0}return g|0}function qO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1214;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1214,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function rO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1119;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1119,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function sO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h+8|0;d=h;e=b+8|0;Q$a(g,e);LUa(d,e);e=g+4|0;c=f[d>>2]|0;d=f[d+4>>2]|0;b=4;while(1){if(!(qTa(f[g>>2]|0,f[e>>2]|0,c,d)|0))break;i=QOa(g)|0;i=(Hr(a,f[i>>2]|0)|0)+b|0;YYa(g);b=i}u=h;return b|0}function tO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e+4|0;f[d>>2]=b;b=e;g=n0a(a,0)|0;if(KBa(f[g>>2]|0,132848)|0){g=n0a(a,1)|0;g=Jbb(f[g>>2]|0)|0;a=Jbb(eua(2)|0)|0;n4a(b,Sqa(Sqa(a,Boa(d)|0)|0,c)|0);Sqa(g,f[b>>2]|0)|0;u=e;return}else Ca(66822,75335,1650,66841)}function uO(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;f[g>>2]=d;c=pRa(f[a+8>>2]|0)|0;a=_F(h,0)|0;if(c|0)pRa(c)|0;a:do if((a+1|0)>>>0>=2){c=a+-1|0;if(c>>>0>(e-(f[g>>2]|0)|0)>>>0)c=1;else while(1){if(!c){c=0;break a}d=b[h>>0]|0;e=f[g>>2]|0;f[g>>2]=e+1;b[e>>0]=d;h=h+1|0;c=c+-1|0}}else c=2;while(0);u=i;return c|0}function vO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+80|0;c=f[d>>2]|0;f[b>>2]=c;SC(a+16|0);DH(c,f[d>>2]|0);d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))LL(a+96|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function wO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1186;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1186,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function xO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=899;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,899,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function yO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=994;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,994,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function zO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=774;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,774,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function AO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1091;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1091,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function BO(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Tt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)xIa(c+8|0);Cbb(c)}u=e;return}function CO(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;d=a+4|0;e=f[d>>2]|0;g=f[a+8>>2]|0;do if((e|0)==(g<<5|0))if((e+1|0)<0)dea();else{h=g<<6;g=e+32&-32;HD(a,e>>>0<1073741823?(h>>>0>>0?g:h):2147483647);h=f[d>>2]|0;break}else h=e;while(0);f[d>>2]=h+1;d=(f[a>>2]|0)+(h>>>5<<2)|0;a=1<<(h&31);if(!(b[c>>0]|0))a=f[d>>2]&~a;else a=f[d>>2]|a;f[d>>2]=a;return}function DO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=a+24|0;i=a+28|0;d=0;while(1){if((d|0)>=(c|0))break;e=f[h>>2]|0;g=f[i>>2]|0;if(e>>>0>>0){g=g-e>>2;j=c-d|0;g=(j|0)<(g|0)?j:g;yWa(e,b,g);f[h>>2]=(f[h>>2]|0)+(g<<2);b=b+(g<<2)|0;d=g+d|0}else{g=f[(f[a>>2]|0)+52>>2]|0;j=Jbb(f[b>>2]|0)|0;if((dc[g&255](a,j)|0)==-1)break;b=b+4|0;d=d+1|0}}return d|0}function EO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=871;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,871,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function FO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=966;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,966,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function GO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=746;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,746,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function HO(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+8|0;c=h;e=a+8|0;Q$a(d,e);LUa(c,e);e=d+4|0;b=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(qTa(f[d>>2]|0,f[e>>2]|0,b,c)|0))break;i=QOa(d)|0;if((f[(f[i>>2]|0)+4>>2]|0)==5){g=4;break}YYa(d)}if((g|0)==4)f[a+4>>2]=5;u=h;return}function IO(a,b){a=a|0;b=b|0;var c=0;if((s_a()|0)>>>0>>0)dea();if(b>>>0<=357913941){c=s8(b*12|0)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b*12|0);return}a=Ea(8)|0;x=0;ua(98,a|0,121961);c=x;x=0;if(c&1){c=Ia()|0;La(a|0);Ua(c|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}function JO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>3)<<3)|0;f[g>>2]=c;if((e|0)>0){Ku(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function KO(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b>>2]|0){case 1:{t$a(a,f[b+8>>2]&2147483647);break}case 2:{c=b+8|0;XSa(a,f[c>>2]|0,f[c+4>>2]&2147483647);break}case 3:{t$a(c,f[b+8>>2]&2147483647);QHa(a,c);break}case 4:{b=b+8|0;XSa(c,f[b>>2]|0,f[b+4>>2]&2147483647);b=c+8|0;uGa(a,f[c>>2]|0,f[b>>2]|0,f[b+4>>2]|0);break}default:hb()}u=d;return}function LO(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;cz(c);g=f[c>>2]|0;if((b[g>>0]|0)!=123)Ca(65969,65740,865,65981);f[c>>2]=g+1;Sab(d);Sab(e);a=Vx(a,c,66001,f[d>>2]|0,f[e>>2]|0)|0;d=f[c>>2]|0;if((b[d>>0]|0)==125){f[c>>2]=d+1;u=h;return a|0}else Ca(66004,65740,868,65981);return 0}function MO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;XSa(e,0,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];HAa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];HAa(e,18446744073709551616.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function NO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;XSa(e,0,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];pqa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];pqa(e,18446744073709551616.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function OO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>4)<<4)|0;f[g>>2]=c;if((e|0)>0){Ku(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function PO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;dYa(h,d);x=0;d=ia(73,f[h>>2]|0,134912)|0;j=x;x=0;if(j&1){j=Ia()|0;OCa(h);Ua(j|0)}else{OCa(h);wY(a,g+16|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function QO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;dYa(h,d);x=0;d=ia(73,f[h>>2]|0,134912)|0;j=x;x=0;if(j&1){j=Ia()|0;OCa(h);Ua(j|0)}else{OCa(h);XY(a,g+24|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function RO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;dYa(h,d);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(j&1){j=Ia()|0;OCa(h);Ua(j|0)}else{OCa(h);xY(a,g+16|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function SO(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;dYa(h,d);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(j&1){j=Ia()|0;OCa(h);Ua(j|0)}else{OCa(h);YY(a,g+24|0,b,f[c>>2]|0,e,d);u=i;return f[b>>2]|0}return 0}function TO(a){a=a|0;var b=0,c=0,d=0;c=s8(136)|0;b=c+56|0;d=c+4|0;f[c>>2]=33420;f[b>>2]=33440;Laa(b,d);f[c+128>>2]=0;f[c+132>>2]=-1;f[c>>2]=41756;f[b>>2]=41776;Xra(d);f[d>>2]=39940;d=c+36|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[d+(b<<2)>>2]=0;b=b+1|0}f[c+48>>2]=0;f[c+52>>2]=16;f[a>>2]=c;return}function UO(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;a=f[a>>2]|0;if(!(s$a(f[b+16>>2]|0)|0)?(g=f[c>>2]|0,b=RCa(b+12|0)|0,KZ(g,f[b>>2]|0)|0):0){a=f[a+36>>2]|0;Jbb(a)|0;_0a(d,a);a=vwa(f[d>>2]|0,f[c>>2]|0)|0;f[c>>2]=a}else a=0;u=e;return a|0}function VO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+80|0;c=f[d>>2]|0;f[b>>2]=c;eD(a+16|0);DH(c,f[d>>2]|0);d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))LL(a+96|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function WO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=(f[a+8>>2]|0)-(f[a+4>>2]|0)|0;c=a+20|0;if((((g|0)==0?0:(g<<8)+-1|0)|0)==((f[c>>2]|0)+(f[a+16>>2]|0)|0))Jh(a);J9(d,a);f[f[d+4>>2]>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+1;u=e;return}function XO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+80|0;c=a+64|0;d=a+84|0;e=f[d>>2]|0;if((e|0)==(f[a+88>>2]|0))LL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}sD(a);a=f[b>>2]|0;fH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function YO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1929;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1929,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function ZO(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=a+8|0;c=(f[f[d>>2]>>2]|0)+(b<<2)|0;a=f[c>>2]|0;f[c>>2]=0;a:do if(f[a>>2]|0){c=f[a+4>>2]|0;a=b;while(1){a=a+1|0;e=f[d>>2]|0;b=f[e>>2]|0;if(a>>>0>=(f[e+4>>2]|0)-b>>2>>>0)break;e=b+(a<<2)|0;b=f[e>>2]|0;f[e>>2]=0;if((b|0?(f[b+4>>2]|0)==(c|0):0)?IPa(f[b>>2]|0)|0:0)break a}Ca(103188,103100,325,103205)}while(0);return}function _O(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;b=g;d=a+80|0;c=f[d>>2]|0;f[b>>2]=c;jD(a+16|0);DH(c,f[d>>2]|0);d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))LL(a+96|0,b);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function $O(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=225;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,225,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function aP(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+16>>2]|0);QP(a,f[b+20>>2]|0);QP(a,f[b+24>>2]|0);pfa(a);u=c;return}function bP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=q$a(a)|0;f[d>>2]=b;f[d+4>>2]=c;a=f[c+4>>2]|0;c=f[c>>2]|0;if(!((!(zab(c)|0)?!(Nab(c)|0):0)?!(Dab(c)|0):0))e=4;a:do if((e|0)==4)if((a|0)==5)a=0;else{switch(b|0){case 2:case 5:case 7:break a;default:{}}a=0}while(0);f[d+8>>2]=a;return d|0}function cP(a){a=a|0;if(!a)return;else{cP(f[a>>2]|0);cP(f[a+4>>2]|0);Cbb(a);return}}function dP(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+16|0;c=d;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,122065,j7a(122065)|0);x=0;a=ia(215,c|0,a|0)|0;b=I;e=x;x=0;if(e&1){e=Ia()|0;MTa(c);Ua(e|0)}else{MTa(c);I=b;u=d;return a|0}return 0}function eP(a,b){a=a|0;b=b|0;b=Wz(a,b)|0;if(b|0)BO(a,b);return}function fP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b+8|0;bma(a,f[(f[c>>2]|0)+4>>2]|0,b,82693);e=b+12|0;bma(a,f[(f[e>>2]|0)+4>>2]|0,b,82719);rwa(a,(f[(f[b+16>>2]|0)+4>>2]|4|0)==5,b);c=f[(f[c>>2]|0)+4>>2]|0;if((c|0)!=5?(d=f[(f[e>>2]|0)+4>>2]|0,(d|0)!=5):0)zma(a,c,d,b);return}function gP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;if((a|0)==(b|0)){f[c>>2]=4;d=0;a=0}else{h=f[33448]|0;f[33448]=0;kOa()|0;a=U$a(a,g,d)|0;d=I;e=f[33448]|0;if(!e)f[33448]=h;if((f[g>>2]|0)==(b|0)){if((e|0)==34){f[c>>2]=4;d=(d|0)>0|(d|0)==0&a>>>0>0;a=d?-1:0;d=d?2147483647:-2147483648}}else{f[c>>2]=4;a=0;d=0}}I=d;u=i;return a|0}function hP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+96|0;c=a+80|0;d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))LL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}SC(a+16|0);a=f[b>>2]|0;DH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function iP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2163;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2163,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function jP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;t$a(e,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];HAa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];HAa(e,4294967296.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function kP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;t$a(e,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];pqa(e,-1.0);f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];pqa(e,4294967296.0);f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[c+12>>2]=f[e+12>>2];u=d;return}function lP(a){a=a|0;if(!a)return;else{lP(f[a>>2]|0);lP(f[a+4>>2]|0);Cbb(a);return}}function mP(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;e=g;f[e>>2]=0;c=(b[c+11>>0]|0)<0?f[c>>2]|0:c;i=f[33448]|0;f[33448]=0;d=W0a(c,e)|0;h=f[33448]|0;f[33448]=i;if((h|0)==34)YV(a);if((f[e>>2]|0)==(c|0))ZV(a);u=g;return d|0}function nP(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=u;u=u+16|0;h=b+8|0;i=b;c=f[a>>2]|0;_0a(b+4|0,f[c>>2]|0);f[i>>2]=f[f[a+4>>2]>>2];g=f[a+8>>2]|0;e=f[f[a+12>>2]>>2]|0;d=f[a+16>>2]|0;f[h>>2]=f[i>>2];d=xs(h,g,e,d)|0;c=c+84|0;a=f[c>>2]|0;f[c>>2]=d;if(a|0){OX(a);Cbb(a)}u=b;return}function oP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;i=f[b+8>>2]|0;g=h[b+12>>0]|0;e=Jbb(f[b+16>>2]|0)|0;d=d3(a,f[b+20>>2]|0)|0;c=d3(a,f[b+24>>2]|0)|0;return N3(f[a+32>>2]|0,i,g,e,d,c,f[b+4>>2]|0)|0}function pP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2594;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2594,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function qP(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+12>>2]|0);QP(a,f[b+16>>2]|0);QP(a,f[b+20>>2]|0);pfa(a);u=c;return}function rP(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;Ema(f[a>>2]|0,40)|0;MXa(c,f[a+28>>2]|0,f[a>>2]|0);_m(c,b);_Ba(a);c=f[b+32>>2]|0;if(c|0?!(b7a(f[c>>2]|0)|0):0)QP(a,c);QP(a,f[b+28>>2]|0);pfa(a);u=d;return}function sP(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;e=g;dYa(e,b);x=0;b=ia(73,f[e>>2]|0,134920)|0;h=x;x=0;if((!(h&1)?(x=0,d=ga(f[(f[b>>2]|0)+16>>2]|0,b|0)|0,h=x,x=0,!(h&1)):0)?(f[c>>2]=d,x=0,ua(f[(f[b>>2]|0)+20>>2]|0,a|0,b|0),h=x,x=0,!(h&1)):0){OCa(e);u=g;return}h=Ia()|0;OCa(e);Ua(h|0)}function tP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2560;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2560,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function uP(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h;dYa(g,c);x=0;c=ia(73,f[g>>2]|0,134896)|0;i=x;x=0;if((!(i&1)?(x=0,e=ga(f[(f[c>>2]|0)+16>>2]|0,c|0)|0,i=x,x=0,!(i&1)):0)?(b[d>>0]=e,x=0,ua(f[(f[c>>2]|0)+20>>2]|0,a|0,c|0),i=x,x=0,!(i&1)):0){OCa(g);u=h;return}i=Ia()|0;OCa(g);Ua(i|0)}function vP(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(2923,a|0,(d|0)/12|0|0);d=x;x=0;if(d&1){d=Ia()|0;zSa(a);Ua(d|0)}else{tba(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function wP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-(e>>2)<<2)|0;f[g>>2]=c;if((e|0)>0){Ku(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function xP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;d=g;NZa(a);e=f[b+40>>2]|0;b=f[b+36>>2]|0;while(1){if((b|0)==(e|0)){b=3;break}f[d>>2]=f[b>>2];x=0;c=ia(197,a|0,d|0)|0;h=x;x=0;if(h&1){b=6;break}f[c>>2]=0;b=b+4|0}if((b|0)==3){u=g;return}else if((b|0)==6){h=Ia()|0;rGa(a);Ua(h|0)}}function yP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1689;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1689,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function zP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=351;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,351,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function AP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1985;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1985,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function BP(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;h=u;u=u+16|0;j=h+8|0;i=h+4|0;g=h;a=a+68|0;k=f[a>>2]|0;n4a(j,(e?2:0)|d&1);Yr(k,f[j>>2]|0)|0;e=f[a>>2]|0;n4a(i,Jbb(b)|0);Yr(e,f[i>>2]|0)|0;if(d){k=f[a>>2]|0;n4a(g,Jbb(c)|0);Yr(k,f[g>>2]|0)|0}u=h;return}function CP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+96|0;c=a+80|0;d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))LL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}eD(a+16|0);a=f[b>>2]|0;DH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function DP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1717;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1717,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function EP(a,c){a=a|0;c=c|0;var d=0;d=a+11|0;if((b[d>>0]|0)<0){Z0a(f[a>>2]|0,0);f[a+4>>2]=0}else{Z0a(a,0);b[d>>0]=0}x=0;ta(470,a|0);d=x;x=0;if(d&1){d=Ja(0)|0;y2a(d)}f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}vL(a+16|0,c+16|0)|0;return a|0}function FP(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+48|0;h=i+32|0;g=i+16|0;d=i;if(FWa(118707,b[c>>0]|0)|0){e=Xaa(c)|0;f[d>>2]=a;f[d+4>>2]=e|32768;f[d+8>>2]=438;d=N_a(_a(5,d|0)|0)|0;if((d|0)>=0){if(e&524288|0){f[g>>2]=d;f[g+4>>2]=2;f[g+8>>2]=1;Za(221,g|0)|0}a=Qv(d,c)|0;if(!a){f[h>>2]=d;ab(6,h|0)|0;a=0}}else a=0}else{f[33448]=22;a=0}u=i;return a|0}function GP(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Tt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)iNa(c+8|0);Cbb(c)}u=e;return}function HP(a){a=a|0;var b=0;XV(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function IP(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;dYa(h,d);x=0;a=ia(73,f[h>>2]|0,134912)|0;d=x;x=0;if(d&1){g=Ia()|0;OCa(h);Ua(g|0)}else{OCa(h);L1(g+20|0,b,f[c>>2]|0,e,a);u=i;return f[b>>2]|0}return 0}function JP(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;dYa(h,d);x=0;a=ia(73,f[h>>2]|0,134880)|0;d=x;x=0;if(d&1){g=Ia()|0;OCa(h);Ua(g|0)}else{OCa(h);M1(g+20|0,b,f[c>>2]|0,e,a);u=i;return f[b>>2]|0}return 0}function KP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=a+96|0;c=a+80|0;d=a+100|0;e=f[d>>2]|0;if((e|0)==(f[a+104>>2]|0))LL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}jD(a+16|0);a=f[b>>2]|0;DH(f[a+(((f[d>>2]|0)-a>>2)+-2<<2)>>2]|0,f[c>>2]|0);return}function LP(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j+4|0;g=j;do if((b[c+12>>0]|0)==0?(h=f[d+4>>2]|0,v2a(h)|0):0)if(Qab(h)|0){oz(a,c,f[d+12>>2]|0);break}else Ca(101934,101948,85,101976);else i=6;while(0);if((i|0)==6){f[g>>2]=f[33152];f[e>>2]=f[g>>2];nXa(a,e)}u=j;return}function MP(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+8>>2]|0);QP(a,f[b+12>>2]|0);QP(a,f[b+16>>2]|0);pfa(a);u=c;return}function NP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=f[b>>2]|0;c=f[b+4>>2]|0;b=a+4|0;a:while(1){b=f[b>>2]|0;if(!b){b=0;break}a=f[b+16>>2]|0;do if((d|0)<(a|0))e=6;else{if((a|0)>=(d|0)){if(PVa(c,f[b+20>>2]|0)|0){e=6;break}if(!(PVa(f[b+20>>2]|0,c)|0)){b=1;break a}}b=b+4|0}while(0);if((e|0)==6)e=0}return b|0}function OP(){var a=0,b=0,c=0,d=0,e=0;e=u;u=u+16|0;a=e+8|0;d=e;b=e+4|0;c=pb(0)|0;if(c&65535|0){DCa(134176,52276)|0;xb(1)}hLa(a,c>>>16,0);c=f[32970]|0;f[c+92>>2]=f[a>>2];f[b>>2]=f[33117];f[a>>2]=f[b>>2];if(!(hna(c,a)|0)){b=f[32970]|0;a=f[b+92>>2]|0;f[d>>2]=a}else{hLa(d,65535,0);b=f[32970]|0;a=f[d>>2]|0}f[b+96>>2]=a;u=e;return}function PP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c+4|0;g=c;f[g>>2]=f[b+8>>2];d=d3(a,f[b+12>>2]|0)|0;b=d3(a,f[b+16>>2]|0)|0;f[e>>2]=f[g>>2];b=Vma(a+32|0,e,d,b)|0;u=c;return b|0}function QP(a,c){a=a|0;c=c|0;var d=0;if(!(b[a+8>>0]|0))Nwa(f[a>>2]|0,f[a+4>>2]|0)|0;if(b[a+20>>0]|0){d=DCa(f[a>>2]|0,118452)|0;DCa(DCa(d,Fha(f[c+4>>2]|0)|0)|0,81227)|0}ir(a,c);DCa(f[a>>2]|0,f[a+16>>2]|0)|0;return}function RP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(77051,76794,157,77064);c=a+84|0;d=f[c>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;dta(d+(e*12|0)|0);b=e}f[c>>2]=d+-12;z3(a+44|0);return}function SP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(77051,76794,157,77064);c=a+84|0;d=f[c>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;fta(d+(e*12|0)|0);b=e}f[c>>2]=d+-12;B3(a+44|0);return}function TP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(77051,76794,157,77064);c=a+84|0;d=f[c>>2]|0;b=0;while(1){if((b|0)==-1)break;e=b+-1|0;gta(d+(e*12|0)|0);b=e}f[c>>2]=d+-12;C3(a+44|0);return}function UP(a){a=a|0;if(!a)return;else{UP(f[a>>2]|0);UP(f[a+4>>2]|0);Cbb(a);return}}function VP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=197;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,197,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function WP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1512;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1512,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function XP(a){a=a|0;var b=0;pb(39)|0;b=f[a+4>>2]|0;a=f[a>>2]|0;a:while(1){if((a|0)==(b|0)){a=3;break}switch(f[a>>2]|0){case 1:{rb(40,TRa(a)|0)|0;break}case 3:{qb(40,+(+TNa(a)))|0;break}case 4:{qb(40,+(+SNa(a)))|0;break}default:{a=8;break a}}a=a+16|0}if((a|0)==3)return;else if((a|0)==8)hb()}function YP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1061;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1061,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function ZP(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;d=f[a>>2]|0;h=a+4|0;g=b+4|0;e=(f[h>>2]|0)-d|0;c=(f[g>>2]|0)+(0-e)|0;f[g>>2]=c;if((e|0)>0){Ku(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0}else d=g;g=f[a>>2]|0;f[a>>2]=c;f[d>>2]=g;g=b+8|0;e=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=e;g=a+8|0;h=b+12|0;a=f[g>>2]|0;f[g>>2]=f[h>>2];f[h>>2]=a;f[b>>2]=f[d>>2];return}function _P(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;f[e>>2]=c;h=g+8|0;LWa(h,d,1);c=Ql(a,e)|0;f[c>>2]=f[h>>2];b[c+4>>0]=b[h+4>>0]|0;c=a+24|0;d=f[c>>2]|0;if((d|0)==(f[a+28>>2]|0))LL(a+20|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}u=g;return}function $P(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=FRa(f[a+12>>2]|0)|0;b=QRa(f[a+16>>2]|0)|0;c=QRa(f[e+16>>2]|0)|0;a=f[e+12>>2]|0;b=b+8|0;c=c+8|0;if(!(yda(b,c)|0)){pT(d,c,b);f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];a=e}u=g;return a|0}function aQ(a,b){a=a|0;b=b|0;if((MC(a,b)|0)==(a+4|0))a=0;else{a=(oT(a,b)|0)+32|0;a=pra(f[a>>2]|0)|0;Efa(a+4|0,b)|0}return a|0}function bQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=649;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,649,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function cQ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;f[e>>2]=c;h=g+8|0;LWa(h,d,0);c=Ql(a,e)|0;f[c>>2]=f[h>>2];b[c+4>>0]=b[h+4>>0]|0;c=a+36|0;d=f[c>>2]|0;if((d|0)==(f[a+40>>2]|0))LL(a+32|0,e);else{f[d>>2]=f[e>>2];f[c>>2]=(f[c>>2]|0)+4}u=g;return}function dQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1839;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1839,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function eQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=d3(a,f[b+8>>2]|0)|0;d=d3(a,f[b+12>>2]|0)|0;c=d3(a,f[b+16>>2]|0)|0;return ola(a+32|0,e,d,c,f[b+4>>2]|0)|0}function fQ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(48)|0;f[a>>2]=e;f[a+4>>2]=c+4;c=e+16|0;d=f[d>>2]|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];f[e+32>>2]=0;f[e+36>>2]=0;f[e+40>>2]=0;b[a+8>>0]=1;return}function gQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;g=b+8|0;if(Qab(f[g>>2]|0)|0)a8(a+108|0,g);b=b+12|0;c=f[b>>2]|0;if(X7a(f[c+4>>2]|0)|0?(f[e>>2]=f[g>>2],f[d>>2]=f[e>>2],!(OM(c,d)|0)):0)Yba(a,f[b>>2]|0)|0;u=h;return}function hQ(a){a=a|0;if(!a)return;else{hQ(f[a>>2]|0);hQ(f[a+4>>2]|0);gTa(a+16|0);Cbb(a);return}}function iQ(a){a=a|0;if(!a)return;else{iQ(f[a>>2]|0);iQ(f[a+4>>2]|0);gTa(a+16|0);Cbb(a);return}}function jQ(a){a=a|0;if(!a)return;else{jQ(f[a>>2]|0);jQ(f[a+4>>2]|0);gTa(a+16|0);Cbb(a);return}}function kQ(a){a=a|0;if(!a)return;else{kQ(f[a>>2]|0);kQ(f[a+4>>2]|0);gTa(a+16|0);Cbb(a);return}}function lQ(a){a=a|0;if(!a)return;else{lQ(f[a>>2]|0);lQ(f[a+4>>2]|0);gTa(a+16|0);Cbb(a);return}} +function xf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,294,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,293,ODa(d,b)|0);c=b}}case 2:{tS(a,295,b);aS(a,(vSa(c)|0)+16|0);tS(a,293,(vSa(c)|0)+12|0);tS(a,293,(vSa(c)|0)+8|0);break}case 3:{tS(a,296,b);tS(a,293,(lSa(c)|0)+12|0);break}case 4:{tS(a,297,b);aS(a,($Ra(c)|0)+16|0);aS(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,298,b);tS(a,293,(NRa(c)|0)+28|0);aS(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,299,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,293,ODa(d,b)|0);c=b}}case 7:{tS(a,300,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,293,ODa(d,b)|0);c=b}}case 8:{tS(a,301,b);b=IQa(c)|0;tS(a,293,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,293,ODa(d,b)|0);c=b}}case 9:{tS(a,302,b);break}case 10:{tS(a,303,b);tS(a,293,(nRa(c)|0)+12|0);break}case 11:{tS(a,304,b);break}case 12:{tS(a,305,b);tS(a,293,($Qa(c)|0)+12|0);break}case 13:{tS(a,306,b);tS(a,293,(bSa(c)|0)+24|0);break}case 14:{tS(a,307,b);tS(a,293,(PRa(c)|0)+28|0);tS(a,293,(PRa(c)|0)+24|0);break}case 24:{tS(a,308,b);tS(a,293,(bRa(c)|0)+24|0);tS(a,293,(bRa(c)|0)+20|0);break}case 25:{tS(a,309,b);tS(a,293,(wQa(c)|0)+24|0);tS(a,293,(wQa(c)|0)+20|0);tS(a,293,(wQa(c)|0)+16|0);break}case 26:{tS(a,310,b);tS(a,293,(QQa(c)|0)+20|0);tS(a,293,(QQa(c)|0)+16|0);tS(a,293,(QQa(c)|0)+12|0);break}case 27:{tS(a,311,b);tS(a,293,(PQa(c)|0)+16|0);tS(a,293,(PQa(c)|0)+12|0);break}case 15:{tS(a,312,b);break}case 16:{tS(a,313,b);tS(a,293,(ORa(c)|0)+12|0);break}case 17:{tS(a,314,b);tS(a,293,(FRa(c)|0)+16|0);tS(a,293,(FRa(c)|0)+12|0);break}case 18:{tS(a,315,b);tS(a,293,(DRa(c)|0)+16|0);tS(a,293,(DRa(c)|0)+12|0);tS(a,293,(DRa(c)|0)+8|0);break}case 19:{tS(a,316,b);tS(a,293,(dSa(c)|0)+8|0);break}case 20:{tS(a,317,b);aS(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,318,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,293,ODa(d,b)|0);c=b}}case 22:{tS(a,319,b);break}case 23:{tS(a,320,b);break}default:hb()}while(0);return}function yf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,530,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,529,ODa(d,b)|0);c=b}}case 2:{tS(a,531,b);nS(a,(vSa(c)|0)+16|0);tS(a,529,(vSa(c)|0)+12|0);tS(a,529,(vSa(c)|0)+8|0);break}case 3:{tS(a,532,b);tS(a,529,(lSa(c)|0)+12|0);break}case 4:{tS(a,533,b);nS(a,($Ra(c)|0)+16|0);nS(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,534,b);tS(a,529,(NRa(c)|0)+28|0);nS(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,535,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,529,ODa(d,b)|0);c=b}}case 7:{tS(a,536,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,529,ODa(d,b)|0);c=b}}case 8:{tS(a,537,b);b=IQa(c)|0;tS(a,529,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,529,ODa(d,b)|0);c=b}}case 9:{tS(a,538,b);break}case 10:{tS(a,539,b);tS(a,529,(nRa(c)|0)+12|0);break}case 11:{tS(a,540,b);break}case 12:{tS(a,541,b);tS(a,529,($Qa(c)|0)+12|0);break}case 13:{tS(a,542,b);tS(a,529,(bSa(c)|0)+24|0);break}case 14:{tS(a,543,b);tS(a,529,(PRa(c)|0)+28|0);tS(a,529,(PRa(c)|0)+24|0);break}case 24:{tS(a,544,b);tS(a,529,(bRa(c)|0)+24|0);tS(a,529,(bRa(c)|0)+20|0);break}case 25:{tS(a,545,b);tS(a,529,(wQa(c)|0)+24|0);tS(a,529,(wQa(c)|0)+20|0);tS(a,529,(wQa(c)|0)+16|0);break}case 26:{tS(a,546,b);tS(a,529,(QQa(c)|0)+20|0);tS(a,529,(QQa(c)|0)+16|0);tS(a,529,(QQa(c)|0)+12|0);break}case 27:{tS(a,547,b);tS(a,529,(PQa(c)|0)+16|0);tS(a,529,(PQa(c)|0)+12|0);break}case 15:{tS(a,548,b);break}case 16:{tS(a,549,b);tS(a,529,(ORa(c)|0)+12|0);break}case 17:{tS(a,550,b);tS(a,529,(FRa(c)|0)+16|0);tS(a,529,(FRa(c)|0)+12|0);break}case 18:{tS(a,551,b);tS(a,529,(DRa(c)|0)+16|0);tS(a,529,(DRa(c)|0)+12|0);tS(a,529,(DRa(c)|0)+8|0);break}case 19:{tS(a,552,b);tS(a,529,(dSa(c)|0)+8|0);break}case 20:{tS(a,553,b);nS(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,554,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,529,ODa(d,b)|0);c=b}}case 22:{tS(a,555,b);break}case 23:{tS(a,556,b);break}default:hb()}while(0);return}function zf(a){a=a|0;var b=0,c=0.0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;y=u;u=u+64|0;z=y+48|0;A=y+36|0;D=y+16|0;B=y+4|0;w=y;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;o=f[a+44>>2]|0;p=a+120|0;r=D+4|0;s=D+12|0;t=D+16|0;v=D+8|0;m=f[a+40>>2]|0;a:while(1){if((m|0)==(o|0)){C=3;break}b=f[m>>2]|0;f[z>>2]=b;a=b;if(Vz(p,z)|0){f[A>>2]=b;f[z>>2]=b;l=JH(z,4)|0;j=f[r>>2]|0;k=(j|0)==0;b:do if(!k){h=j+-1|0;i=(h&j|0)==0;if(!i)if(l>>>0>>0)b=l;else b=(l>>>0)%(j>>>0)|0;else b=h&l;e=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!e)C=20;else do{e=f[e>>2]|0;if(!e){C=20;break b}g=f[e+4>>2]|0;if((g|0)!=(l|0)){if(!i){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&h;if((g|0)!=(b|0)){C=20;break b}}}while((f[e+8>>2]|0)!=(a|0))}else{b=0;C=20}while(0);if((C|0)==20){C=0;x=0;wa(156,z|0,D|0,l|0,A|0);q=x;x=0;if(q&1){C=41;break}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;k=~~+W(+(c/d))>>>0;x=0;ua(3140,D|0,(q>>>0>>0?k:q)|0);q=x;x=0;if(q&1){C=27;break a}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l}else{g=a;b=(l>>>0)%(a>>>0)|0}}else g=j;while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a){e=f[z>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(a|0){a=f[a+4>>2]|0;b=g+-1|0;if(b&g){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&b;f[(f[D>>2]|0)+(a<<2)>>2]=e}}else{q=f[z>>2]|0;f[q>>2]=f[a>>2];f[a>>2]=q}f[s>>2]=(f[s>>2]|0)+1;a=f[m>>2]|0}x=0;ua(3141,a+24|0,a|0);q=x;x=0;if(q&1){C=43;break}}m=m+4|0}if((C|0)==3){p=D+8|0;q=B+4|0;c:while(1){if(!(f[s>>2]|0)){C=105;break}a=f[p>>2]|0;i=f[a+8>>2]|0;C4(D,a);_Ya(B);a=i+12|0;x=0;b=ja(91,i+36|0,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break}d:do if(b){if(((f[i+16>>2]|0)-(f[a>>2]|0)|0)>>>0>=((f[q>>2]|0)-(f[B>>2]|0)|0)>>>0){C=51;break c}x=0;ia(109,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}x=0;ua(3141,i+24|0,B|0);o=x;x=0;if(o&1){C=47;break c}h=f[i+4>>2]|0;b=f[i>>2]|0;e=h-b|0;a=f[B>>2]|0;g=(f[q>>2]|0)-a|0;e:do if((e|0)==(g|0))while(1){if((b|0)==(h|0)){C=103;break d}if((f[b>>2]|0)!=(f[a>>2]|0))break e;a=a+4|0;b=b+4|0}while(0);if(e>>>0>=g>>>0){C=60;break c}x=0;ia(109,i|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}o=f[i+52>>2]|0;m=f[i+48>>2]|0;while(1){if((m|0)==(o|0))break;h=f[m>>2]|0;f[w>>2]=h;f[z>>2]=h;l=JH(z,4)|0;g=f[r>>2]|0;k=(g|0)==0;f:do if(!k){i=g+-1|0;j=(i&g|0)==0;if(!j)if(l>>>0>>0)b=l;else b=(l>>>0)%(g>>>0)|0;else b=i&l;a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a)C=81;else do{a=f[a>>2]|0;if(!a){C=81;break f}e=f[a+4>>2]|0;if((e|0)!=(l|0)){do if(j)e=e&i;else{if(e>>>0>>0)break;e=(e>>>0)%(g>>>0)|0}while(0);if((e|0)!=(b|0)){C=81;break f}}}while((f[a+8>>2]|0)!=(h|0))}else{b=0;C=81}while(0);if((C|0)==81){C=0;x=0;wa(155,A|0,D|0,l|0,w|0);j=x;x=0;if(j&1){C=101;break c}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;j=~~+W(+(c/d))>>>0;x=0;ua(3140,D|0,(k>>>0>>0?j:k)|0);k=x;x=0;if(k&1){C=88;break c}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l;break}g=a;b=(l>>>0)%(a>>>0)|0}while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;do if(!a){e=f[A>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(!a)break;a=f[a+4>>2]|0;b=g+-1|0;do if(!(b&g))a=a&b;else{if(a>>>0>>0)break;a=(a>>>0)%(g>>>0)|0}while(0);f[(f[D>>2]|0)+(a<<2)>>2]=e}else{l=f[A>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=l}while(0);f[s>>2]=(f[s>>2]|0)+1}m=m+4|0}zSa(B)}else C=103;while(0);if((C|0)==103){C=0;zSa(B)}}if((C|0)==47){a=Ia()|0;C=49}else if((C|0)==51){x=0;wa(71,115623,72545,188,115663);x=0;C=48}else if((C|0)==60){x=0;wa(71,115676,72545,194,115663);x=0;C=48}else if((C|0)==88){a=Ia()|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)Cbb(b);C=102}else if((C|0)==101){a=Ia()|0;C=102}else if((C|0)==105){SQa(D);u=y;return}if((C|0)==48){a=Ia()|0;C=49}zSa(B)}else if((C|0)==27){a=Ia()|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)Cbb(b);C=42}else if((C|0)==41){a=Ia()|0;C=42}else if((C|0)==43)a=Ia()|0;SQa(D);Ua(a|0)}function Af(a){a=a|0;var b=0,c=0.0,d=0.0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;y=u;u=u+64|0;z=y+48|0;A=y+36|0;D=y+16|0;B=y+4|0;w=y;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;o=f[a+44>>2]|0;p=a+120|0;r=D+4|0;s=D+12|0;t=D+16|0;v=D+8|0;m=f[a+40>>2]|0;a:while(1){if((m|0)==(o|0)){C=3;break}b=f[m>>2]|0;f[z>>2]=b;a=b;if(Vz(p,z)|0){f[A>>2]=b;f[z>>2]=b;l=JH(z,4)|0;j=f[r>>2]|0;k=(j|0)==0;b:do if(!k){h=j+-1|0;i=(h&j|0)==0;if(!i)if(l>>>0>>0)b=l;else b=(l>>>0)%(j>>>0)|0;else b=h&l;e=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!e)C=20;else do{e=f[e>>2]|0;if(!e){C=20;break b}g=f[e+4>>2]|0;if((g|0)!=(l|0)){if(!i){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&h;if((g|0)!=(b|0)){C=20;break b}}}while((f[e+8>>2]|0)!=(a|0))}else{b=0;C=20}while(0);if((C|0)==20){C=0;x=0;wa(89,z|0,D|0,l|0,A|0);q=x;x=0;if(q&1){C=41;break}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;k=~~+W(+(c/d))>>>0;x=0;ua(586,D|0,(q>>>0>>0?k:q)|0);q=x;x=0;if(q&1){C=27;break a}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l}else{g=a;b=(l>>>0)%(a>>>0)|0}}else g=j;while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a){e=f[z>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(a|0){a=f[a+4>>2]|0;b=g+-1|0;if(b&g){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&b;f[(f[D>>2]|0)+(a<<2)>>2]=e}}else{q=f[z>>2]|0;f[q>>2]=f[a>>2];f[a>>2]=q}f[s>>2]=(f[s>>2]|0)+1;a=f[m>>2]|0}x=0;ua(587,a+24|0,a|0);q=x;x=0;if(q&1){C=43;break}}m=m+4|0}if((C|0)==3){p=D+8|0;q=B+4|0;c:while(1){if(!(f[s>>2]|0)){C=105;break}a=f[p>>2]|0;i=f[a+8>>2]|0;C4(D,a);_Ya(B);a=i+12|0;x=0;b=ja(59,i+36|0,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break}d:do if(b){if(((f[i+16>>2]|0)-(f[a>>2]|0)|0)>>>0>=((f[q>>2]|0)-(f[B>>2]|0)|0)>>>0){C=51;break c}x=0;ia(109,a|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}x=0;ua(587,i+24|0,B|0);o=x;x=0;if(o&1){C=47;break c}h=f[i+4>>2]|0;b=f[i>>2]|0;e=h-b|0;a=f[B>>2]|0;g=(f[q>>2]|0)-a|0;e:do if((e|0)==(g|0))while(1){if((b|0)==(h|0)){C=103;break d}if((f[b>>2]|0)!=(f[a>>2]|0))break e;a=a+4|0;b=b+4|0}while(0);if(e>>>0>=g>>>0){C=60;break c}x=0;ia(109,i|0,B|0)|0;o=x;x=0;if(o&1){C=47;break c}o=f[i+52>>2]|0;m=f[i+48>>2]|0;while(1){if((m|0)==(o|0))break;h=f[m>>2]|0;f[w>>2]=h;f[z>>2]=h;l=JH(z,4)|0;g=f[r>>2]|0;k=(g|0)==0;f:do if(!k){i=g+-1|0;j=(i&g|0)==0;if(!j)if(l>>>0>>0)b=l;else b=(l>>>0)%(g>>>0)|0;else b=i&l;a=f[(f[D>>2]|0)+(b<<2)>>2]|0;if(!a)C=81;else do{a=f[a>>2]|0;if(!a){C=81;break f}e=f[a+4>>2]|0;if((e|0)!=(l|0)){do if(j)e=e&i;else{if(e>>>0>>0)break;e=(e>>>0)%(g>>>0)|0}while(0);if((e|0)!=(b|0)){C=81;break f}}}while((f[a+8>>2]|0)!=(h|0))}else{b=0;C=81}while(0);if((C|0)==81){C=0;x=0;wa(88,A|0,D|0,l|0,w|0);j=x;x=0;if(j&1){C=101;break c}c=+(((f[s>>2]|0)+1|0)>>>0);d=+n[t>>2];do if(k|d*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;j=~~+W(+(c/d))>>>0;x=0;ua(586,D|0,(k>>>0>>0?j:k)|0);k=x;x=0;if(k&1){C=88;break c}a=f[r>>2]|0;b=a+-1|0;if(!(b&a)){g=a;b=b&l;break}if(l>>>0>>0){g=a;b=l;break}g=a;b=(l>>>0)%(a>>>0)|0}while(0);a=f[(f[D>>2]|0)+(b<<2)>>2]|0;do if(!a){e=f[A>>2]|0;f[e>>2]=f[v>>2];f[v>>2]=e;f[(f[D>>2]|0)+(b<<2)>>2]=v;a=f[e>>2]|0;if(!a)break;a=f[a+4>>2]|0;b=g+-1|0;do if(!(b&g))a=a&b;else{if(a>>>0>>0)break;a=(a>>>0)%(g>>>0)|0}while(0);f[(f[D>>2]|0)+(a<<2)>>2]=e}else{l=f[A>>2]|0;f[l>>2]=f[a>>2];f[a>>2]=l}while(0);f[s>>2]=(f[s>>2]|0)+1}m=m+4|0}zSa(B)}else C=103;while(0);if((C|0)==103){C=0;zSa(B)}}if((C|0)==47){a=Ia()|0;C=49}else if((C|0)==51){x=0;wa(71,115623,72545,188,115663);x=0;C=48}else if((C|0)==60){x=0;wa(71,115676,72545,194,115663);x=0;C=48}else if((C|0)==88){a=Ia()|0;b=f[A>>2]|0;f[A>>2]=0;if(b|0)Cbb(b);C=102}else if((C|0)==101){a=Ia()|0;C=102}else if((C|0)==105){SQa(D);u=y;return}if((C|0)==48){a=Ia()|0;C=49}zSa(B)}else if((C|0)==27){a=Ia()|0;b=f[z>>2]|0;f[z>>2]=0;if(b|0)Cbb(b);C=42}else if((C|0)==41){a=Ia()|0;C=42}else if((C|0)==43)a=Ia()|0;SQa(D);Ua(a|0)}function Bf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+64|0;m=l+40|0;k=l+24|0;n=l+12|0;i=l;a:do if(((c-a|0)>3?(b[a>>0]|0)==68:0)?(b[a+1>>0]|0)==118:0){e=a+2|0;h=b[e>>0]|0;do if((h+-49&255)<9){g=TX(e,c)|0;if((g|0)==(c|0))break a;if((b[g>>0]|0)!=95)break a;j=g-e|0;h=g+1|0;if((h|0)==(c|0))break a;if((b[h>>0]|0)==112){a=g+2|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;qW(n,e,j);x=0;ja(101,n|0,0,123323)|0;c=x;x=0;if(c&1)a=Ia()|0;else{f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];e=0;while(1){if((e|0)==3)break;f[n+(e<<2)>>2]=0;e=e+1|0}x=0;ia(216,k|0,123321)|0;c=x;x=0;do if(c&1)a=Ia()|0;else{f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}RY(m,i);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,m|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(m);MTa(i);break}}else{CY(g,m);f[e>>2]=(f[e>>2]|0)+24}OJa(m);MTa(i);MTa(k);MTa(n);break a}while(0);MTa(k)}MTa(n);break}else{i=Cc(h,c,d)|0;if((i|0)==(h|0))break a;g=d+4|0;if((f[d>>2]|0)==(f[g>>2]|0))break a;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;qW(n,e,j);x=0;ja(101,n|0,0,123312)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,k|0,123321)|0;d=x;x=0;do if(!(d&1)){f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}d=b[m+11>>0]|0;c=d<<24>>24<0;x=0;ja(97,(f[g>>2]|0)+-24|0,(c?f[m>>2]|0:m)|0,(c?f[m+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(m);break}else{MTa(m);MTa(k);MTa(n);a=i;break a}}else a=Ia()|0;while(0);MTa(k)}MTa(n);break}}else{f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[m+(g<<2)>>2]=0;g=g+1|0}do if(h<<24>>24!=95){x=0;i=ja(105,e|0,c|0,d|0)|0;h=x;x=0;if(h&1){a=Ia()|0;g=84;break}if((i|0)!=(e|0)){h=d+4|0;e=f[h>>2]|0;if((f[d>>2]|0)==(e|0))g=83;else{x=0;ua(3195,k|0,e+-24|0);g=x;x=0;if(g&1){a=Ia()|0;g=84;break}e=m+11|0;if((b[e>>0]|0)<0){Z0a(f[m>>2]|0,0);f[m+4>>2]=0}else{Z0a(m,0);b[e>>0]=0}yv(m);f[m>>2]=f[k>>2];f[m+4>>2]=f[k+4>>2];f[m+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}MTa(k);g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;OJa(g+(o*24|0)|0);e=o}f[h>>2]=g+-24;e=i;g=63}}else g=63}else g=63;while(0);b:do if((g|0)==63){c:do if(((e|0)!=(c|0)?(b[e>>0]|0)==95:0)?(j=e+1|0,(j|0)!=(c|0)):0){x=0;g=ja(100,j|0,c|0,d|0)|0;o=x;x=0;if(o&1){a=Ia()|0;g=84;break b}if((g|0)!=(j|0)){e=d+4|0;if((f[d>>2]|0)==(f[e>>2]|0)){g=83;break b}x=0;va(185,n|0,123312,m|0);o=x;x=0;if(o&1)a=Ia()|0;else{x=0;ia(216,n|0,123321)|0;o=x;x=0;do if(!(o&1)){f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}o=b[k+11>>0]|0;d=o<<24>>24<0;x=0;ja(97,(f[e>>2]|0)+-24|0,(d?f[k>>2]|0:k)|0,(d?f[k+4>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){a=Ia()|0;MTa(k);break}else{MTa(k);MTa(n);a=g;break c}}else a=Ia()|0;while(0);MTa(n)}g=84;break b}}while(0);MTa(m);break a}while(0);if((g|0)==83){MTa(m);break a}else if((g|0)==84){MTa(m);break}}while(0);Ua(a|0)}while(0);u=l;return a|0}function Cf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+48|0;A=z+24|0;w=z+16|0;s=z+4|0;r=z;t=c+4|0;v=f[t>>2]|0;e=f[c>>2]|0;h=v;a:do if(((v-e|0)/12|0)>>>0>=2){i=a+108|0;while(1){if((e|0)==(h|0))break;g=f[e>>2]|0;if(g|0?rfa(i,g)|0:0)break a;if(rfa(i,f[e+4>>2]|0)|0)break a;vna(e);e=e+12|0}f[A>>2]=0;v=A+4|0;f[v>>2]=0;l=A+8|0;f[l>>2]=0;m=s+4|0;n=s+8|0;o=r+4|0;q=0;p=0;b:while(1){j=f[c>>2]|0;i=f[t>>2]|0;e=0;h=j;while(1){if((h|0)==(i|0))break;g=f[h+4>>2]|0;if(!g){i=12;break b}k=q>>>0<(Eza(f[h>>2]|0,g)|0)>>>0;e=e|k^1;if(k)h=h+12|0;else break}if(e){i=37;break}x=0;j=ja(88,f[j>>2]|0,f[j+4>>2]|0,q|0)|0;k=x;x=0;if(k&1){i=18;break}f[w>>2]=j;i=f[t>>2]|0;k=j;e=0;h=f[c>>2]|0;while(1){if((h|0)==(i|0))break;x=0;g=ja(88,f[h>>2]|0,f[h+4>>2]|0,q|0)|0;B=x;x=0;if(B&1){i=22;break b}x=0;g=ia(157,j|0,g|0)|0;B=x;x=0;if(B&1){i=22;break b}e=e|g^1;if(g)h=h+12|0;else break}if(e){i=34;break}f[r>>2]=k;f[s>>2]=0;f[m>>2]=0;f[n>>2]=0;x=0;ua(168,s|0,1);B=x;x=0;if(B&1){i=27;break}qda(s,r,o);x=0;e=ia(209,s|0,d|0)|0;B=x;x=0;if(B&1){i=28;break}zSa(s);if(!e){i=34;break}e=f[v>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ua(640,A|0,w|0);B=x;x=0;if(B&1){i=18;break}}else{f[e>>2]=k;f[v>>2]=(f[v>>2]|0)+4}x=0;e=ga(325,j|0)|0;B=x;x=0;if(B&1){i=18;break}q=q+1|0;p=e+p|0}if((i|0)==12){x=0;wa(71,114602,114498,325,114613);x=0;e=Ia()|0}else if((i|0)==18){e=Ia()|0;i=36}else if((i|0)==22){e=Ia()|0;i=36}else if((i|0)==27){e=Ia()|0;zSa(s);i=29}else if((i|0)==28){e=Ia()|0;zSa(s);i=29}else if((i|0)==34)i=37;c:do if((i|0)==29)i=36;else if((i|0)==37){d:do if(p|0){do if(p>>>0<3){h=f[t>>2]|0;e=0;g=f[c>>2]|0;while(1){if((g|0)==(h|0))break;B=q>>>0<((Jbb(f[(f[g+4>>2]|0)+16>>2]|0)|0)+-1|0)>>>0;e=e|B^1;if(B)g=g+12|0;else break}if(!e){e=f[a+44>>2]|0;if((d|0)!=(f[e+-4>>2]|0)){x=0;wa(71,114637,114498,366,114613);x=0;e=Ia()|0;break c}g=f[a+40>>2]|0;e=e-g>>2;if(e>>>0<2)break d;e=v$a(f[g+(e+-2<<2)>>2]|0)|0;if(!e)break d;i=e+12|0;Q$a(w,i);LUa(s,i);i=w+4|0;h=f[s>>2]|0;e=f[s+4>>2]|0;while(1){if(!(qTa(f[w>>2]|0,f[i>>2]|0,h,e)|0)){i=53;break}x=0;g=ga(253,w|0)|0;B=x;x=0;if(B&1){i=54;break}if((f[g>>2]|0)==(d|0)){i=51;break}YYa(w)}if((i|0)==51)break;else if((i|0)==53)break d;else if((i|0)==54){e=Ia()|0;break c}}}while(0);j=f[t>>2]|0;h=f[c>>2]|0;e:while(1){if((h|0)==(j|0)){i=57;break}i=h+4|0;x=0;ua(2922,a|0,f[i>>2]|0);B=x;x=0;if(B&1){i=62;break}if(!(Oab(f[h>>2]|0)|0)){x=0;e=ga(218,(f[i>>2]|0)+12|0)|0;B=x;x=0;if(B&1){i=63;break}e=f[e>>2]|0;x=0;ta(508,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=63;break}}else e=0;g=0;while(1){if(g>>>0>=(f[v>>2]|0)-(f[A>>2]|0)>>2>>>0)break;x=0;ta(508,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=69;break e}g=g+1|0}if(!(Oab(f[h>>2]|0)|0)?(x=0,ua(81,(f[i>>2]|0)+12|0,e|0),B=x,x=0,B&1):0){i=63;break}B=f[i>>2]|0;x=0;ua(1874,B|0,f[B+4>>2]|0);B=x;x=0;if(B&1){i=63;break}h=h+12|0}if((i|0)==57){b[a+56>>0]=1;g=f[a+36>>2]|0;Jbb(g)|0;_0a(w,g);x=0;g=ia(99,f[w>>2]|0,0)|0;B=x;x=0;do if(!(B&1)?(y=g+12|0,x=0,ua(81,y|0,d|0),B=x,x=0,!(B&1)):0){e=f[v>>2]|0;while(1){if((f[A>>2]|0)==(e|0))break;x=0;ua(81,y|0,f[e+-4>>2]|0);B=x;x=0;if(B&1){i=78;break}e=(f[v>>2]|0)+-4|0;f[v>>2]=e}if((i|0)==78){e=Ia()|0;break}e=f[d+4>>2]|0;x=0;ta(439,d|0);B=x;x=0;if(!(B&1)?(x=0,ua(1874,g|0,e|0),B=x,x=0,!(B&1)):0){GVa(f[a+16>>2]|0,g)|0;break d}e=Ia()|0}else i=79;while(0);if((i|0)==79)e=Ia()|0;break c}else if((i|0)==62){e=Ia()|0;break c}else if((i|0)==63){e=Ia()|0;break c}else if((i|0)==69){e=Ia()|0;break c}}while(0);zSa(A);break a}while(0);zSa(A);Ua(e|0)}while(0);u=z;return}function Df(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+48|0;A=z+24|0;w=z+16|0;s=z+4|0;r=z;t=c+4|0;v=f[t>>2]|0;e=f[c>>2]|0;h=v;a:do if(((v-e|0)/12|0)>>>0>=2){i=a+108|0;while(1){if((e|0)==(h|0))break;g=f[e>>2]|0;if(g|0?rfa(i,g)|0:0)break a;if(rfa(i,f[e+4>>2]|0)|0)break a;vna(e);e=e+12|0}f[A>>2]=0;v=A+4|0;f[v>>2]=0;l=A+8|0;f[l>>2]=0;m=s+4|0;n=s+8|0;o=r+4|0;q=0;p=0;b:while(1){j=f[c>>2]|0;i=f[t>>2]|0;e=0;h=j;while(1){if((h|0)==(i|0))break;g=f[h+4>>2]|0;if(!g){i=12;break b}k=q>>>0<(Eza(f[h>>2]|0,g)|0)>>>0;e=e|k^1;if(k)h=h+12|0;else break}if(e){i=37;break}x=0;j=ja(87,f[j>>2]|0,f[j+4>>2]|0,q|0)|0;k=x;x=0;if(k&1){i=18;break}f[w>>2]=j;i=f[t>>2]|0;k=j;e=0;h=f[c>>2]|0;while(1){if((h|0)==(i|0))break;x=0;g=ja(87,f[h>>2]|0,f[h+4>>2]|0,q|0)|0;B=x;x=0;if(B&1){i=22;break b}x=0;g=ia(157,j|0,g|0)|0;B=x;x=0;if(B&1){i=22;break b}e=e|g^1;if(g)h=h+12|0;else break}if(e){i=34;break}f[r>>2]=k;f[s>>2]=0;f[m>>2]=0;f[n>>2]=0;x=0;ua(168,s|0,1);B=x;x=0;if(B&1){i=27;break}qda(s,r,o);x=0;e=ia(209,s|0,d|0)|0;B=x;x=0;if(B&1){i=28;break}zSa(s);if(!e){i=34;break}e=f[v>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ua(640,A|0,w|0);B=x;x=0;if(B&1){i=18;break}}else{f[e>>2]=k;f[v>>2]=(f[v>>2]|0)+4}x=0;e=ga(325,j|0)|0;B=x;x=0;if(B&1){i=18;break}q=q+1|0;p=e+p|0}if((i|0)==12){x=0;wa(71,114602,114498,325,114613);x=0;e=Ia()|0}else if((i|0)==18){e=Ia()|0;i=36}else if((i|0)==22){e=Ia()|0;i=36}else if((i|0)==27){e=Ia()|0;zSa(s);i=29}else if((i|0)==28){e=Ia()|0;zSa(s);i=29}else if((i|0)==34)i=37;c:do if((i|0)==29)i=36;else if((i|0)==37){d:do if(p|0){do if(p>>>0<3){h=f[t>>2]|0;e=0;g=f[c>>2]|0;while(1){if((g|0)==(h|0))break;B=q>>>0<((Jbb(f[(f[g+4>>2]|0)+16>>2]|0)|0)+-1|0)>>>0;e=e|B^1;if(B)g=g+12|0;else break}if(!e){e=f[a+44>>2]|0;if((d|0)!=(f[e+-4>>2]|0)){x=0;wa(71,114637,114498,366,114613);x=0;e=Ia()|0;break c}g=f[a+40>>2]|0;e=e-g>>2;if(e>>>0<2)break d;e=v$a(f[g+(e+-2<<2)>>2]|0)|0;if(!e)break d;i=e+12|0;Q$a(w,i);LUa(s,i);i=w+4|0;h=f[s>>2]|0;e=f[s+4>>2]|0;while(1){if(!(qTa(f[w>>2]|0,f[i>>2]|0,h,e)|0)){i=53;break}x=0;g=ga(253,w|0)|0;B=x;x=0;if(B&1){i=54;break}if((f[g>>2]|0)==(d|0)){i=51;break}YYa(w)}if((i|0)==51)break;else if((i|0)==53)break d;else if((i|0)==54){e=Ia()|0;break c}}}while(0);j=f[t>>2]|0;h=f[c>>2]|0;e:while(1){if((h|0)==(j|0)){i=57;break}i=h+4|0;x=0;ua(2922,a|0,f[i>>2]|0);B=x;x=0;if(B&1){i=62;break}if(!(Oab(f[h>>2]|0)|0)){x=0;e=ga(218,(f[i>>2]|0)+12|0)|0;B=x;x=0;if(B&1){i=63;break}e=f[e>>2]|0;x=0;ta(508,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=63;break}}else e=0;g=0;while(1){if(g>>>0>=(f[v>>2]|0)-(f[A>>2]|0)>>2>>>0)break;x=0;ta(508,(f[i>>2]|0)+12|0);B=x;x=0;if(B&1){i=69;break e}g=g+1|0}if(!(Oab(f[h>>2]|0)|0)?(x=0,ua(81,(f[i>>2]|0)+12|0,e|0),B=x,x=0,B&1):0){i=63;break}B=f[i>>2]|0;x=0;ua(1874,B|0,f[B+4>>2]|0);B=x;x=0;if(B&1){i=63;break}h=h+12|0}if((i|0)==57){b[a+56>>0]=1;e=f[a+36>>2]|0;Jbb(e)|0;_0a(w,e);x=0;e=ia(99,f[w>>2]|0,0)|0;B=x;x=0;do if(!(B&1)?(y=e+12|0,x=0,ua(81,y|0,d|0),B=x,x=0,!(B&1)):0){g=f[v>>2]|0;while(1){if((f[A>>2]|0)==(g|0))break;x=0;ua(81,y|0,f[g+-4>>2]|0);B=x;x=0;if(B&1){i=78;break}g=(f[v>>2]|0)+-4|0;f[v>>2]=g}if((i|0)==78){e=Ia()|0;break}B=f[d+4>>2]|0;NI(d);x=0;ua(1874,e|0,B|0);B=x;x=0;if(B&1){e=Ia()|0;break}else{GVa(f[a+16>>2]|0,e)|0;break d}}else i=79;while(0);if((i|0)==79)e=Ia()|0;break c}else if((i|0)==62){e=Ia()|0;break c}else if((i|0)==63){e=Ia()|0;break c}else if((i|0)==69){e=Ia()|0;break c}}while(0);zSa(A);break a}while(0);zSa(A);Ua(e|0)}while(0);u=z;return}function Ef(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=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;E=u;u=u+128|0;F=E+104|0;J=E+92|0;y=E+88|0;z=E+84|0;D=E+72|0;H=E+48|0;I=E+24|0;G=E+12|0;A=E+60|0;B=E+36|0;C=E;do if(b[a+12>>0]|0){d=DCa(134176,95181)|0;dYa(F,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[F>>2]|0,134880)|0;w=x;x=0;if(!(w&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,w=x,x=0,!(w&1)):0){OCa(F);Wq(d,g)|0;fu(d)|0;break}J=Ia()|0;OCa(F);Ua(J|0)}while(0);v=a+36|0;d=f[v>>2]|0;w=d+c|0;n=F+4|0;o=G+11|0;p=G+4|0;q=a+88|0;r=a+92|0;s=a+76|0;t=a+80|0;a:while(1){if(d>>>0>=w>>>0){e=73;break}k=nq(a)|0;l=nq(a)|0;m=f[v>>2]|0;if((k|0)==1){k=nq(a)|0;DUa(J);j=0;while(1){if(j>>>0>=k>>>0)break;x=0;i=ga(302,a|0)|0;h=x;x=0;if(h&1){e=23;break a}x=0;d=ga(305,a|0)|0;h=x;x=0;if(h&1){e=24;break a}f[y>>2]=d;x=0;ta(496,y|0);h=x;x=0;if(h&1){e=24;break a}c=f[y>>2]|0;f[z>>2]=c;g=c;e=1;h=g;while(1){x=0;wa(82,F|0,J|0,z|0,z|0);d=x;x=0;if(d&1){e=25;break a}if(b[n>>0]|0)break;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;h=j7a(123563)|0;x=0;va(87,I|0,123563,h|0);h=x;x=0;if(h&1){e=38;break a}x=0;ia(83,I|0,g|0)|0;h=x;x=0;if(h&1){e=39;break a}f[H>>2]=f[I>>2];f[H+4>>2]=f[I+4>>2];f[H+8>>2]=f[I+8>>2];d=0;while(1){if((d|0)==3)break;f[I+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1283,G|0,e|0);h=x;x=0;if(h&1){e=40;break a}h=b[o>>0]|0;c=h<<24>>24<0;x=0;ja(49,H|0,(c?f[G>>2]|0:G)|0,(c?f[p>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){e=41;break a}f[D>>2]=f[H>>2];f[D+4>>2]=f[H+4>>2];f[D+8>>2]=f[H+8>>2];d=0;while(1){if((d|0)==3)break;f[H+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,F|0,D|0);h=x;x=0;if(h&1){e=42;break a}h=f[F>>2]|0;f[z>>2]=h;MTa(D);MTa(G);MTa(H);MTa(I);e=e+1|0;c=h}d=f[q>>2]|0;e=(f[r>>2]|0)-d>>2;do if(i>>>0>>0)f[f[d+(i<<2)>>2]>>2]=c;else{d=i-e|0;e=f[s>>2]|0;if(d>>>0<(f[t>>2]|0)-e>>2>>>0){f[f[e+(d<<2)>>2]>>2]=c;break}f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;i=j7a(h)|0;x=0;va(87,F|0,h|0,i|0);i=x;x=0;if(i&1){e=57;break a}x=0;ia(83,F|0,95222)|0;i=x;x=0;if(i&1){e=58;break a}f[A>>2]=f[F>>2];f[A+4>>2]=f[F+4>>2];f[A+8>>2]=f[F+8>>2];d=0;while(1){if((d|0)==3)break;f[F+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1870,a|0,A|0);i=x;x=0;if(i&1){e=59;break a}MTa(A);MTa(F)}while(0);j=j+1|0}if((f[v>>2]|0)!=(m+l|0)){f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;m=j7a(95244)|0;x=0;va(87,B|0,95244,m|0);m=x;x=0;if(m&1){e=68;break}x=0;ua(1870,a|0,B|0);m=x;x=0;if(m&1){e=69;break}MTa(B)}RTa(J);d=f[v>>2]|0}else{e=DCa(134176,95194)|0;e=zm(e,f[v>>2]|0)|0;dYa(F,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[F>>2]|0,134880)|0;k=x;x=0;if(k&1){e=11;break}x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;k=x;x=0;if(k&1){e=11;break}OCa(F);Wq(e,d)|0;fu(e)|0;d=m+l|0;f[v>>2]=d}}b:switch(e|0){case 11:{J=Ia()|0;OCa(F);Ua(J|0)}case 23:{d=Ia()|0;e=72;break}case 24:{d=Ia()|0;e=64;break}case 25:{d=Ia()|0;e=63;break}case 38:{d=Ia()|0;e=46;break}case 39:{d=Ia()|0;e=45;break}case 40:{d=Ia()|0;e=44;break}case 41:{d=Ia()|0;e=43;break}case 42:{d=Ia()|0;MTa(D);e=43;break}case 57:{d=Ia()|0;e=61;break}case 58:{d=Ia()|0;e=60;break}case 59:{d=Ia()|0;MTa(A);e=60;break}case 68:{d=Ia()|0;e=72;break}case 69:{d=Ia()|0;MTa(B);e=72;break}case 73:{do if((d|0)!=(w|0)){f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;_Z(C,95281,j7a(95281)|0);x=0;ua(1870,a|0,C|0);J=x;x=0;if(J&1){d=Ia()|0;MTa(C);break b}else{MTa(C);break}}while(0);u=E;return}}if((e|0)==43){MTa(G);e=44}else if((e|0)==60){MTa(F);e=61}if((e|0)==44){MTa(H);e=45}else if((e|0)==61)e=63;if((e|0)==45){MTa(I);e=46}if((e|0)==46)e=63;if((e|0)==63)e=64;if((e|0)==64)e=72;if((e|0)==72)RTa(J);Ua(d|0)}function Ff(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+96|0;o=n+72|0;p=n+48|0;l=n+36|0;h=n+24|0;k=n+12|0;j=n;do if(((((a|0)!=(c|0)?(b[a>>0]|0)==77:0)?(q=a+1|0,e=Cc(q,c,d)|0,(e|0)!=(q|0)):0)?(m=Cc(e,c,d)|0,(m|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){CY(o,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;q=a+-1|0;OJa(c+(q*24|0)|0);a=q}f[i>>2]=c+-24;CY(p,c+-48|0);g=o+12|0;a:do if((b[((b[g+11>>0]|0)<0?f[g>>2]|0:g)>>0]|0)==40){x=0;ia(216,o|0,123274)|0;q=x;x=0;if(q&1)a=Ia()|0;else{f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3195,j|0,p|0);q=x;x=0;if(q&1)a=Ia()|0;else{q=b[j+11>>0]|0;d=q<<24>>24<0;x=0;ja(97,k|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:q&255)|0)|0;q=x;x=0;do if(q&1)a=Ia()|0;else{f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,h|0,124696)|0;q=x;x=0;if(q&1){a=Ia()|0;MTa(h);break}f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}a=f[i>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){Z0a(f[e>>2]|0,0);f[a+-20>>2]=0;a=e}else{Z0a(e,0);b[c>>0]=0;a=e}yv(e);f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}MTa(l);MTa(h);MTa(j);MTa(k);x=0;ja(101,g|0,0,123272)|0;q=x;x=0;if(q&1){a=Ia()|0;c=81;break a}f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];f[l+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}a=f[i>>2]|0;e=a+-12|0;c=e+11|0;if((b[c>>0]|0)<0){Z0a(f[e>>2]|0,0);f[a+-8>>2]=0;a=e}else{Z0a(e,0);b[c>>0]=0;a=e}yv(e);f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}MTa(l);c=80;break a}while(0);MTa(j)}MTa(k)}c=81}else{x=0;ia(216,o|0,123306)|0;q=x;x=0;if(q&1)a=Ia()|0;else{f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3195,j|0,p|0);q=x;x=0;if(q&1)a=Ia()|0;else{q=b[j+11>>0]|0;d=q<<24>>24<0;x=0;ja(97,k|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:q&255)|0)|0;q=x;x=0;do if(q&1)a=Ia()|0;else{f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,h|0,124696)|0;q=x;x=0;if(q&1){a=Ia()|0;MTa(h);break}f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}a=f[i>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){Z0a(f[e>>2]|0,0);f[a+-20>>2]=0;a=e}else{Z0a(e,0);b[c>>0]=0;a=e}yv(e);f[a>>2]=f[l>>2];f[a+4>>2]=f[l+4>>2];f[a+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}MTa(l);MTa(h);MTa(j);MTa(k);a=f[i>>2]|0;e=a+-12|0;c=e+11|0;if((b[c>>0]|0)<0){Z0a(f[e>>2]|0,0);f[a+-8>>2]=0;a=e}else{Z0a(e,0);b[c>>0]=0;a=e}yv(e);f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3){c=80;break a}f[g+(a<<2)>>2]=0;a=a+1|0}}while(0);MTa(j)}MTa(k)}c=81}while(0);if((c|0)==80){OJa(p);OJa(o);a=m;break}else if((c|0)==81){OJa(p);OJa(o);Ua(a|0)}}while(0);u=n;return a|0}function Gf(a){a=a|0;var b=0,c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;F=u;u=u+80|0;G=F+48|0;H=F+36|0;J=F+16|0;I=F+4|0;E=F;f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;f[J+16>>2]=1065353216;A=a+24|0;t=a+28|0;p=f[t>>2]|0;C=J+4|0;q=J+12|0;r=J+16|0;s=J+8|0;o=f[A>>2]|0;a:while(1){if((o|0)==(p|0)){B=3;break}k=f[(f[o>>2]|0)+8>>2]|0;f[H>>2]=k;c=k;b:do if(k|0){if((cia()|0)>1){x=0;b=ia(62,134008,75837)|0;B=x;x=0;if(B&1){B=9;break a}x=0;b=ia(117,b|0,k|0)|0;B=x;x=0;if(B&1){B=9;break a}x=0;ia(71,b|0,10)|0;B=x;x=0;if(B&1){B=9;break a}}f[G>>2]=c;m=JH(G,4)|0;h=f[C>>2]|0;l=(h|0)==0;c:do if(!l){i=h+-1|0;j=(i&h|0)==0;if(!j)if(m>>>0>>0)c=m;else c=(m>>>0)%(h>>>0)|0;else c=i&m;b=f[(f[J>>2]|0)+(c<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b)break c;g=f[b+4>>2]|0;if((g|0)!=(m|0)){if(!j){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(c|0))break c}if((f[b+8>>2]|0)==(k|0))break b}}else c=0;while(0);x=0;wa(93,G|0,J|0,m|0,H|0);B=x;x=0;if(B&1){B=9;break a}d=+(((f[q>>2]|0)+1|0)>>>0);e=+n[r>>2];do if(l|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;z=~~+W(+(d/e))>>>0;x=0;ua(643,J|0,(B>>>0>>0?z:B)|0);B=x;x=0;if(B&1){B=33;break a}b=f[C>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&m;break}if(m>>>0>>0){h=b;c=m}else{h=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[J>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[G>>2]|0;f[g>>2]=f[s>>2];f[s>>2]=g;f[(f[J>>2]|0)+(c<<2)>>2]=s;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[J>>2]|0)+(b<<2)>>2]=g}}else{B=f[G>>2]|0;f[B>>2]=f[b>>2];f[b>>2]=B}f[q>>2]=(f[q>>2]|0)+1}while(0);o=o+4|0}if((B|0)==3){p=f[t>>2]|0;q=a+4|0;r=a+124|0;s=I+4|0;t=a+88|0;v=a+92|0;w=a+100|0;y=a+104|0;z=a+96|0;o=f[A>>2]|0;d:while(1){if((o|0)==(p|0)){B=47;break}b=f[o>>2]|0;if((b|0)!=(f[q>>2]|0)?(D=f[b+8>>2]|0,D|0):0){f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;f[G+16>>2]=0;lQa(G);x=0;xa(6,I|0,G|0,D|0,f[a>>2]|0,f[r>>2]|0);A=x;x=0;if(A&1){B=53;break}XWa(G);c=f[s>>2]|0;b=f[I>>2]|0;while(1){if((b|0)==(c|0))break;g=f[b>>2]|0;f[E>>2]=g;if(!g){B=56;break}if(!(xA(f[J>>2]|0,f[C>>2]|0,E)|0)){B=56;break}b=b+4|0}if((B|0)==56){B=0;if((cia()|0)>1){x=0;ia(62,134008,75850)|0;A=x;x=0;if(A&1){B=62;break}x=0;ua(631,f[o>>2]|0,0);A=x;x=0;if(A&1){B=62;break}x=0;b=ia(62,134008,75874)|0;A=x;x=0;if(A&1){B=62;break}x=0;b=ia(117,b|0,g|0)|0;A=x;x=0;if(A&1){B=62;break}x=0;ia(71,b|0,10)|0;A=x;x=0;if(A&1){B=62;break}}i=f[o>>2]|0;f[G>>2]=i;m=JH(G,4)|0;h=f[v>>2]|0;l=(h|0)==0;e:do if(!l){j=h+-1|0;k=(j&h|0)==0;if(!k)if(m>>>0>>0)c=m;else c=(m>>>0)%(h>>>0)|0;else c=j&m;b=f[(f[t>>2]|0)+(c<<2)>>2]|0;if(!b)B=79;else do{b=f[b>>2]|0;if(!b){B=79;break e}g=f[b+4>>2]|0;if((g|0)!=(m|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(c|0)){B=79;break e}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;B=79}while(0);if((B|0)==79){B=0;x=0;wa(91,H|0,t|0,m|0,o|0);A=x;x=0;if(A&1){B=62;break}d=+(((f[w>>2]|0)+1|0)>>>0);e=+n[y>>2];do if(l|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(632,t|0,(A>>>0>>0?l:A)|0);A=x;x=0;if(A&1){B=86;break d}b=f[v>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&m;break}if(m>>>0>>0){h=b;c=m}else{h=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[t>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[H>>2]|0;f[g>>2]=f[z>>2];f[z>>2]=g;f[(f[t>>2]|0)+(c<<2)>>2]=z;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[t>>2]|0)+(b<<2)>>2]=g}}else{A=f[H>>2]|0;f[A>>2]=f[b>>2];f[b>>2]=A}f[w>>2]=(f[w>>2]|0)+1}}zSa(I)}o=o+4|0}if((B|0)==47){SQa(J);u=F;return}else if((B|0)==53){b=Ia()|0;XWa(G)}else if((B|0)==62){b=Ia()|0;B=63}else if((B|0)==86){b=Ia()|0;c=f[H>>2]|0;f[H>>2]=0;if(c|0)Cbb(c);B=63}if((B|0)==63)zSa(I)}else if((B|0)==9){b=Ia()|0;B=10}else if((B|0)==33){b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)Cbb(c);B=10}SQa(J);Ua(b|0)}function Hf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110663)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);oGa(a,f[c+12>>2]|0);oGa(a,f[c+16>>2]|0);a:do if((f[c+4>>2]|0)==5)iTa(f[a+28>>2]|0);else do switch(f[c+8>>2]|0){case 0:{Gv(f[a+28>>2]|0,106)|0;break a}case 1:{Gv(f[a+28>>2]|0,107)|0;break a}case 2:{Gv(f[a+28>>2]|0,108)|0;break a}case 3:{Gv(f[a+28>>2]|0,109)|0;break a}case 4:{Gv(f[a+28>>2]|0,110)|0;break a}case 5:{Gv(f[a+28>>2]|0,111)|0;break a}case 6:{Gv(f[a+28>>2]|0,112)|0;break a}case 7:{Gv(f[a+28>>2]|0,113)|0;break a}case 8:{Gv(f[a+28>>2]|0,114)|0;break a}case 9:{Gv(f[a+28>>2]|0,115)|0;break a}case 10:{Gv(f[a+28>>2]|0,116)|0;break a}case 11:{Gv(f[a+28>>2]|0,118)|0;break a}case 12:{Gv(f[a+28>>2]|0,117)|0;break a}case 13:{Gv(f[a+28>>2]|0,119)|0;break a}case 14:{Gv(f[a+28>>2]|0,120)|0;break a}case 15:{Gv(f[a+28>>2]|0,70)|0;break a}case 16:{Gv(f[a+28>>2]|0,71)|0;break a}case 17:{Gv(f[a+28>>2]|0,72)|0;break a}case 18:{Gv(f[a+28>>2]|0,73)|0;break a}case 19:{Gv(f[a+28>>2]|0,76)|0;break a}case 20:{Gv(f[a+28>>2]|0,77)|0;break a}case 21:{Gv(f[a+28>>2]|0,74)|0;break a}case 22:{Gv(f[a+28>>2]|0,75)|0;break a}case 23:{Gv(f[a+28>>2]|0,78)|0;break a}case 24:{Gv(f[a+28>>2]|0,79)|0;break a}case 25:{Gv(f[a+28>>2]|0,124)|0;break a}case 26:{Gv(f[a+28>>2]|0,125)|0;break a}case 27:{Gv(f[a+28>>2]|0,126)|0;break a}case 28:{Gv(f[a+28>>2]|0,127)|0;break a}case 29:{Gv(f[a+28>>2]|0,-128)|0;break a}case 30:{Gv(f[a+28>>2]|0,-127)|0;break a}case 31:{Gv(f[a+28>>2]|0,-126)|0;break a}case 32:{Gv(f[a+28>>2]|0,-125)|0;break a}case 33:{Gv(f[a+28>>2]|0,-124)|0;break a}case 34:{Gv(f[a+28>>2]|0,-123)|0;break a}case 35:{Gv(f[a+28>>2]|0,-122)|0;break a}case 36:{Gv(f[a+28>>2]|0,-120)|0;break a}case 37:{Gv(f[a+28>>2]|0,-121)|0;break a}case 38:{Gv(f[a+28>>2]|0,-119)|0;break a}case 39:{Gv(f[a+28>>2]|0,-118)|0;break a}case 40:{Gv(f[a+28>>2]|0,81)|0;break a}case 41:{Gv(f[a+28>>2]|0,82)|0;break a}case 42:{Gv(f[a+28>>2]|0,83)|0;break a}case 43:{Gv(f[a+28>>2]|0,84)|0;break a}case 44:{Gv(f[a+28>>2]|0,87)|0;break a}case 45:{Gv(f[a+28>>2]|0,88)|0;break a}case 46:{Gv(f[a+28>>2]|0,85)|0;break a}case 47:{Gv(f[a+28>>2]|0,86)|0;break a}case 48:{Gv(f[a+28>>2]|0,89)|0;break a}case 49:{Gv(f[a+28>>2]|0,90)|0;break a}case 50:{Gv(f[a+28>>2]|0,-110)|0;break a}case 51:{Gv(f[a+28>>2]|0,-109)|0;break a}case 52:{Gv(f[a+28>>2]|0,-108)|0;break a}case 53:{Gv(f[a+28>>2]|0,-107)|0;break a}case 54:{Gv(f[a+28>>2]|0,-104)|0;break a}case 55:{Gv(f[a+28>>2]|0,-106)|0;break a}case 56:{Gv(f[a+28>>2]|0,-105)|0;break a}case 57:{Gv(f[a+28>>2]|0,91)|0;break a}case 58:{Gv(f[a+28>>2]|0,92)|0;break a}case 59:{Gv(f[a+28>>2]|0,93)|0;break a}case 60:{Gv(f[a+28>>2]|0,95)|0;break a}case 61:{Gv(f[a+28>>2]|0,94)|0;break a}case 62:{Gv(f[a+28>>2]|0,96)|0;break a}case 63:{Gv(f[a+28>>2]|0,-96)|0;break a}case 64:{Gv(f[a+28>>2]|0,-95)|0;break a}case 65:{Gv(f[a+28>>2]|0,-94)|0;break a}case 66:{Gv(f[a+28>>2]|0,-93)|0;break a}case 67:{Gv(f[a+28>>2]|0,-90)|0;break a}case 68:{Gv(f[a+28>>2]|0,-92)|0;break a}case 69:{Gv(f[a+28>>2]|0,-91)|0;break a}case 70:{Gv(f[a+28>>2]|0,97)|0;break a}case 71:{Gv(f[a+28>>2]|0,98)|0;break a}case 72:{Gv(f[a+28>>2]|0,99)|0;break a}case 73:{Gv(f[a+28>>2]|0,101)|0;break a}case 74:{Gv(f[a+28>>2]|0,100)|0;break a}case 75:{Gv(f[a+28>>2]|0,102)|0;break a}default:hb()}while(0);while(0);u=i;return}function If(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;p=u;u=u+304|0;j=p+280|0;k=p+268|0;n=p+292|0;m=p;f[a>>2]=c;f[a+4>>2]=c+144;v=a+8|0;f[a+48>>2]=0;w=a+52|0;g=v;h=g+36|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));DUa(w);s=a+64|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;f[s+12>>2]=0;f[a+80>>2]=1065353216;t=a+84|0;f[t>>2]=0;q=a+88|0;DUa(q);r=a+112|0;Vua(r);x=0;g=ga(294,d|0)|0;h=x;x=0;a:do if(!(h&1)){if(!g){i=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;p=j7a(92261)|0;x=0;va(87,j|0,92261,p|0);p=x;x=0;if(!(p&1)){x=0;ua(261,i|0,j|0);p=x;x=0;if(p&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}g=Ia()|0;MTa(j);if(!h){h=g;break}}else g=Ia()|0;La(i|0);h=g;break}x=0;g=ia(69,d|0,0)|0;j=x;x=0;if(!(j&1)?(x=0,i=ga(295,g|0)|0,j=x,x=0,!(j&1)):0){if(f2a(i,f[33113]|0)|0){i=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;p=j7a(92293)|0;x=0;va(87,k|0,92293,p|0);p=x;x=0;if(!(p&1)){x=0;ua(261,i|0,k|0);p=x;x=0;if(p&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}g=Ia()|0;MTa(k);if(!h){h=g;break}}else g=Ia()|0;La(i|0);h=g;break}x=0;g=ga(294,d|0)|0;k=x;x=0;if(!(k&1)){b:do if((g|0)!=1){x=0;g=ia(69,d|0,1)|0;k=x;x=0;do if(!(k&1)){do if(qRa(g)|0)if(!e)h=2;else{x=0;g=ia(69,d|0,1)|0;k=x;x=0;if(!(k&1)?(x=0,l=ga(295,g|0)|0,k=x,x=0,!(k&1)):0){L1a(n,l);f[e>>2]=f[n>>2];h=2;break}h=Ia()|0;break a}else h=1;while(0);x=0;g=ga(294,d|0)|0;l=x;x=0;if(!(l&1)){if(h>>>0>>0){x=0;g=ia(69,d|0,h|0)|0;l=x;x=0;if(l&1)break;if(V7a(b[g>>0]|0)|0){f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;while(1){x=0;g=ga(294,d|0)|0;o=x;x=0;if(o&1){o=41;break}if(h>>>0>=g>>>0){o=44;break}i=h+1|0;x=0;g=ia(69,d|0,h|0)|0;o=x;x=0;if(o&1){o=42;break}x=0;g=ga(296,g|0)|0;o=x;x=0;if(o&1){o=42;break}h=dV(g)|0;if(h|0?(x=0,va(141,g|0,h|0,n|0),o=x,x=0,o&1):0){o=43;break}h=i}do if((o|0)==41)g=Ia()|0;else if((o|0)==42)g=Ia()|0;else if((o|0)==43)g=Ia()|0;else if((o|0)==44){uv(m,c,n,0);x=0;ta(447,m|0);d=x;x=0;if(d&1){g=Ia()|0;CA(m);break}else{CA(m);zSa(n);break b}}while(0);zSa(n);h=g;break a}}k=a+44|0;f[k>>2]=0;e=h;g=0;while(1){x=0;i=ga(294,d|0)|0;o=x;x=0;if(o&1){o=52;break}if(e>>>0>=i>>>0){o=51;break}x=0;j=ia(69,d|0,e|0)|0;o=x;x=0;if(o&1){o=61;break}x=0;ua(1867,a|0,j|0);o=x;x=0;if(o&1){o=61;break}x=0;ua(1868,a|0,j|0);o=x;x=0;if(o&1){o=61;break}x=0;i=ia(69,j|0,0)|0;o=x;x=0;if(o&1){o=61;break}x=0;i=ga(295,i|0)|0;o=x;x=0;if(o&1){o=61;break}if(g2a(i,f[33111]|0)|0){x=0;i=ga(297,j|0)|0;o=x;x=0;if(o&1){o=61;break}g=g+((i^1)&1)|0}e=e+1|0}if((o|0)==51){f[k>>2]=(f[k>>2]|0)-g;while(1){x=0;g=ga(294,d|0)|0;n=x;x=0;if(n&1)break;if(h>>>0>=g>>>0)break b;x=0;g=ia(69,d|0,h|0)|0;n=x;x=0;if(n&1)break;x=0;ua(1869,a|0,g|0);n=x;x=0;if(n&1)break;h=h+1|0}h=Ia()|0;break a}else if((o|0)==52){h=Ia()|0;break a}else if((o|0)==61){h=Ia()|0;break a}}}while(0);h=Ia()|0;break a}while(0);u=p;return}else o=6}else o=6}else o=6;while(0);if((o|0)==6)h=Ia()|0;Koa(r);tEa(q);g=f[t>>2]|0;f[t>>2]=0;if(g|0){OX(g);Cbb(g)}SQa(s);tEa(w);zSa(a+32|0);zSa(a+20|0);zSa(v);Ua(h|0)}function Jf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=u;u=u+64|0;E=D+44|0;F=D+32|0;G=D+20|0;I=D;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=1065353216;C=b+36|0;f[E>>2]=f[C>>2];b=JH(E,4)|0;A=I+4|0;x=0;wa(155,G|0,I|0,b|0,C|0);C=x;x=0;do if(C&1){b=Ia()|0;H=58}else{B=I+12|0;C=I+16|0;z=~~+W(+(+(((f[B>>2]|0)+1|0)>>>0)/+n[C>>2]))>>>0;x=0;ua(3140,I|0,(z>>>0>1?z:1)|0);z=x;x=0;if(z&1){b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)Cbb(c);H=58;break}d=f[A>>2]|0;e=d+-1|0;g=(e&d|0)==0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=e&b;c=f[(f[I>>2]|0)+(b<<2)>>2]|0;if(!c){h=I+8|0;c=f[G>>2]|0;f[c>>2]=f[h>>2];f[h>>2]=c;f[(f[I>>2]|0)+(b<<2)>>2]=h;b=f[c>>2]|0;if(!b){b=G;y=h;z=h;w=h}else{b=f[b+4>>2]|0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=b&e;f[(f[I>>2]|0)+(b<<2)>>2]=c;b=G;y=h;z=h;w=h}}else{w=f[G>>2]|0;f[w>>2]=f[c>>2];f[c>>2]=w;w=I+8|0;b=G;y=w;z=w}p=(f[B>>2]|0)+1|0;f[B>>2]=p;f[b>>2]=0;q=I+8|0;r=a+4|0;s=a+12|0;t=a+16|0;v=a+8|0;b=p;a:while(1){if(!b){H=100;break}l=f[q>>2]|0;m=f[l+8>>2]|0;f[G>>2]=m;C4(I,l);f[E>>2]=m;l=JH(E,4)|0;h=f[r>>2]|0;k=(h|0)==0;b:do if(!k){e=h+-1|0;g=(e&h|0)==0;if(!g)if(l>>>0>>0)c=l;else c=(l>>>0)%(h>>>0)|0;else c=e&l;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)H=35;else do{b=f[b>>2]|0;if(!b){H=35;break b}d=f[b+4>>2]|0;if((d|0)!=(l|0)){if(!g){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;if((d|0)!=(c|0)){H=35;break b}}}while((f[b+8>>2]|0)!=(m|0))}else{c=0;H=35}while(0);if((H|0)==35){H=0;x=0;wa(155,F|0,a|0,l|0,G|0);p=x;x=0;if(p&1){H=59;break}i=+(((f[s>>2]|0)+1|0)>>>0);j=+n[t>>2];do if(k|j*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;o=~~+W(+(i/j))>>>0;x=0;ua(3140,a|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){H=42;break a}b=f[r>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&l;break}if(l>>>0>>0){e=b;c=l}else{e=b;c=(l>>>0)%(b>>>0)|0}}else e=h;while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[F>>2]|0;f[d>>2]=f[v>>2];f[v>>2]=d;f[(f[a>>2]|0)+(c<<2)>>2]=v;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;if(c&e){if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=d}}else{p=f[F>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p}f[s>>2]=(f[s>>2]|0)+1}p=f[m+40>>2]|0;o=f[m+36>>2]|0;while(1){if((o|0)==(p|0))break;b=f[o>>2]|0;f[F>>2]=b;k=b;c:do if(!(Vz(a,F)|0)){f[E>>2]=b;m=JH(E,4)|0;e=f[A>>2]|0;l=(e|0)==0;d:do if(!l){g=e+-1|0;h=(g&e|0)==0;if(!h)if(m>>>0>>0)c=m;else c=(m>>>0)%(e>>>0)|0;else c=g&m;b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b)break d;d=f[b+4>>2]|0;if((d|0)!=(m|0)){do if(h)d=d&g;else{if(d>>>0>>0)break;d=(d>>>0)%(e>>>0)|0}while(0);if((d|0)!=(c|0))break d}if((f[b+8>>2]|0)==(k|0))break c}}else c=0;while(0);x=0;wa(155,E|0,I|0,m|0,F|0);k=x;x=0;if(k&1){H=96;break a}i=+(((f[B>>2]|0)+1|0)>>>0);j=+n[C>>2];do if(l|j*+(e>>>0)>>0<3|(e+-1&e|0)!=0)&1;k=~~+W(+(i/j))>>>0;x=0;ua(3140,I|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){H=84;break a}b=f[A>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&m;break}if(m>>>0>>0){e=b;c=m}else{e=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[E>>2]|0;f[d>>2]=f[y>>2];f[z>>2]=d;f[(f[I>>2]|0)+(c<<2)>>2]=w;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;do if(!(c&e))b=b&c;else{if(b>>>0>>0)break;b=(b>>>0)%(e>>>0)|0}while(0);f[(f[I>>2]|0)+(b<<2)>>2]=d}}else{m=f[E>>2]|0;f[m>>2]=f[b>>2];f[b>>2]=m}f[B>>2]=(f[B>>2]|0)+1}while(0);o=o+4|0}b=f[B>>2]|0}if((H|0)==42){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)Cbb(c);H=60}else if((H|0)==59){b=Ia()|0;H=60}else if((H|0)==84){b=Ia()|0;c=f[E>>2]|0;f[E>>2]=0;if(c|0)Cbb(c);H=97}else if((H|0)==96){b=Ia()|0;H=97}else if((H|0)==100){SQa(I);u=D;return}}while(0);SQa(I);SQa(a);Ua(b|0)}function Kf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;D=u;u=u+64|0;E=D+44|0;F=D+32|0;G=D+20|0;I=D;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=1065353216;C=b+36|0;f[E>>2]=f[C>>2];b=JH(E,4)|0;A=I+4|0;x=0;wa(88,G|0,I|0,b|0,C|0);C=x;x=0;do if(C&1){b=Ia()|0;H=58}else{B=I+12|0;C=I+16|0;z=~~+W(+(+(((f[B>>2]|0)+1|0)>>>0)/+n[C>>2]))>>>0;x=0;ua(586,I|0,(z>>>0>1?z:1)|0);z=x;x=0;if(z&1){b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)Cbb(c);H=58;break}d=f[A>>2]|0;e=d+-1|0;g=(e&d|0)==0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=e&b;c=f[(f[I>>2]|0)+(b<<2)>>2]|0;if(!c){h=I+8|0;c=f[G>>2]|0;f[c>>2]=f[h>>2];f[h>>2]=c;f[(f[I>>2]|0)+(b<<2)>>2]=h;b=f[c>>2]|0;if(!b){b=G;y=h;z=h;w=h}else{b=f[b+4>>2]|0;if(!g){if(b>>>0>=d>>>0)b=(b>>>0)%(d>>>0)|0}else b=b&e;f[(f[I>>2]|0)+(b<<2)>>2]=c;b=G;y=h;z=h;w=h}}else{w=f[G>>2]|0;f[w>>2]=f[c>>2];f[c>>2]=w;w=I+8|0;b=G;y=w;z=w}p=(f[B>>2]|0)+1|0;f[B>>2]=p;f[b>>2]=0;q=I+8|0;r=a+4|0;s=a+12|0;t=a+16|0;v=a+8|0;b=p;a:while(1){if(!b){H=100;break}l=f[q>>2]|0;m=f[l+8>>2]|0;f[G>>2]=m;C4(I,l);f[E>>2]=m;l=JH(E,4)|0;h=f[r>>2]|0;k=(h|0)==0;b:do if(!k){e=h+-1|0;g=(e&h|0)==0;if(!g)if(l>>>0>>0)c=l;else c=(l>>>0)%(h>>>0)|0;else c=e&l;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)H=35;else do{b=f[b>>2]|0;if(!b){H=35;break b}d=f[b+4>>2]|0;if((d|0)!=(l|0)){if(!g){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;if((d|0)!=(c|0)){H=35;break b}}}while((f[b+8>>2]|0)!=(m|0))}else{c=0;H=35}while(0);if((H|0)==35){H=0;x=0;wa(88,F|0,a|0,l|0,G|0);p=x;x=0;if(p&1){H=59;break}i=+(((f[s>>2]|0)+1|0)>>>0);j=+n[t>>2];do if(k|j*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;o=~~+W(+(i/j))>>>0;x=0;ua(586,a|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){H=42;break a}b=f[r>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&l;break}if(l>>>0>>0){e=b;c=l}else{e=b;c=(l>>>0)%(b>>>0)|0}}else e=h;while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[F>>2]|0;f[d>>2]=f[v>>2];f[v>>2]=d;f[(f[a>>2]|0)+(c<<2)>>2]=v;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;if(c&e){if(b>>>0>=e>>>0)b=(b>>>0)%(e>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=d}}else{p=f[F>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p}f[s>>2]=(f[s>>2]|0)+1}p=f[m+40>>2]|0;o=f[m+36>>2]|0;while(1){if((o|0)==(p|0))break;b=f[o>>2]|0;f[F>>2]=b;k=b;c:do if(!(Vz(a,F)|0)){f[E>>2]=b;m=JH(E,4)|0;e=f[A>>2]|0;l=(e|0)==0;d:do if(!l){g=e+-1|0;h=(g&e|0)==0;if(!h)if(m>>>0>>0)c=m;else c=(m>>>0)%(e>>>0)|0;else c=g&m;b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b)break d;d=f[b+4>>2]|0;if((d|0)!=(m|0)){do if(h)d=d&g;else{if(d>>>0>>0)break;d=(d>>>0)%(e>>>0)|0}while(0);if((d|0)!=(c|0))break d}if((f[b+8>>2]|0)==(k|0))break c}}else c=0;while(0);x=0;wa(88,E|0,I|0,m|0,F|0);k=x;x=0;if(k&1){H=96;break a}i=+(((f[B>>2]|0)+1|0)>>>0);j=+n[C>>2];do if(l|j*+(e>>>0)>>0<3|(e+-1&e|0)!=0)&1;k=~~+W(+(i/j))>>>0;x=0;ua(586,I|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){H=84;break a}b=f[A>>2]|0;c=b+-1|0;if(!(c&b)){e=b;c=c&m;break}if(m>>>0>>0){e=b;c=m}else{e=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[I>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[E>>2]|0;f[d>>2]=f[y>>2];f[z>>2]=d;f[(f[I>>2]|0)+(c<<2)>>2]=w;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=e+-1|0;do if(!(c&e))b=b&c;else{if(b>>>0>>0)break;b=(b>>>0)%(e>>>0)|0}while(0);f[(f[I>>2]|0)+(b<<2)>>2]=d}}else{m=f[E>>2]|0;f[m>>2]=f[b>>2];f[b>>2]=m}f[B>>2]=(f[B>>2]|0)+1}while(0);o=o+4|0}b=f[B>>2]|0}if((H|0)==42){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)Cbb(c);H=60}else if((H|0)==59){b=Ia()|0;H=60}else if((H|0)==84){b=Ia()|0;c=f[E>>2]|0;f[E>>2]=0;if(c|0)Cbb(c);H=97}else if((H|0)==96){b=Ia()|0;H=97}else if((H|0)==100){SQa(I);u=D;return}}while(0);SQa(I);SQa(a);Ua(b|0)}function Lf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+64|0;m=o+48|0;i=o+36|0;k=o+24|0;l=o+12|0;j=o;a:do if((c-a|0)>2){switch(b[a>>0]|0){case 84:break;case 71:switch(b[a+1>>0]|0){case 86:{m=a+2|0;e=Pi(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;zoa(g+-24|0,0,125104)|0;a=e;n=71;break a}case 82:{m=a+2|0;e=Pi(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;zoa(g+-24|0,0,125124)|0;a=e;n=71;break a}default:{n=71;break a}}default:{n=71;break a}}e=a+1|0;switch(b[e>>0]|0){case 86:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;zoa(g+-24|0,0,124953)|0;a=e;n=71;break a}case 84:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;zoa(g+-24|0,0,124965)|0;a=e;n=71;break a}case 73:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;zoa(g+-24|0,0,124974)|0;a=e;n=71;break a}case 83:{m=a+2|0;e=Cc(m,c,d)|0;if((e|0)==(m|0)){n=71;break a}g=f[d+4>>2]|0;if((f[d>>2]|0)==(g|0))break a;zoa(g+-24|0,0,124988)|0;a=e;n=71;break a}case 99:{m=a+2|0;e=fK(m,c)|0;if((e|0)==(m|0)){n=71;break a}h=fK(e,c)|0;if((h|0)==(e|0)){n=71;break a}g=dd(h,c,d)|0;if((g|0)==(h|0)){n=71;break a}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;zoa(e+-24|0,0,125007)|0;a=g;n=71;break a}case 67:{h=a+2|0;e=Cc(h,c,d)|0;if((e|0)==(h|0)){n=71;break a}g=TX(e,c)|0;if((g|0)==(e|0)|(g|0)==(c|0)){n=71;break a}if((b[g>>0]|0)!=95){n=71;break a}g=g+1|0;h=Cc(g,c,d)|0;if((h|0)==(g|0)){n=71;break a}g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(m,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;n=a+-1|0;OJa(e+(n*24|0)|0);a=n}f[g>>2]=e+-24;x=0;ja(101,m|0,0,125034)|0;n=x;x=0;if(n&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,l|0,125059)|0;n=x;x=0;if(n&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3195,j|0,(f[g>>2]|0)+-24|0);n=x;x=0;do if(n&1)a=Ia()|0;else{n=b[j+11>>0]|0;d=n<<24>>24<0;x=0;ja(97,k|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){a=Ia()|0;MTa(j);break}f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;g=a+-24|0;e=g+11|0;if((b[e>>0]|0)<0){Z0a(f[g>>2]|0,0);f[a+-20>>2]=0;a=g}else{Z0a(g,0);b[e>>0]=0;a=g}yv(g);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}MTa(i);MTa(j);MTa(k);MTa(l);MTa(m);a=h;n=71;break a}while(0);MTa(k)}MTa(l)}MTa(m);Ua(a|0)}default:{g=fK(e,c)|0;do if((g|0)!=(e|0)){e=dd(g,c,d)|0;if((e|0)!=(g|0)){g=f[d+4>>2]|0;if((f[d>>2]|0)!=(g|0)){g=g+-24|0;if((b[a+2>>0]|0)==118){zoa(g,0,125064)|0;g=0;break}else{zoa(g,0,125082)|0;g=0;break}}else{g=1;e=a}}else{g=0;e=a}}else{g=3;e=a}while(0);switch(g&3){case 3:case 0:{a=e;n=71;break a}default:{}}if(!g){a=e;n=71;break a}else break a}}}else n=71;while(0);u=o;return a|0}function Mf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;do if(b[a+33>>0]|0){i=DCa(134176,110776)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}m=Ia()|0;OCa(g);Ua(m|0)}while(0);if(((f[(f[c+20>>2]|0)+4>>2]|0)!=5?(f[(f[c+24>>2]|0)+4>>2]|0)!=5:0)?(j=c+4|0,(f[j>>2]|0)!=5):0){e=a+28|0;Gv(f[e>>2]|0,-2)|0;a:do switch(f[c+8>>2]|0){case 0:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,32)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,33)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,30)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,34)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,35)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,36)|0;k=d;break a}case 8:{Gv(f[e>>2]|0,31)|0;k=d;break a}default:hb()}break}default:hb()}break}case 1:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,39)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,40)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,37)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,41)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,42)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,43)|0;k=d;break a}case 8:{Gv(f[e>>2]|0,38)|0;k=d;break a}default:hb()}break}default:hb()}break}case 2:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,46)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,47)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,44)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,48)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,49)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,50)|0;k=d;break a}case 8:{Gv(f[e>>2]|0,45)|0;k=d;break a}default:hb()}break}default:hb()}break}case 3:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,53)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,54)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,51)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,55)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,56)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,57)|0;k=d;break a}case 8:{Gv(f[e>>2]|0,52)|0;k=d;break a}default:hb()}break}default:hb()}break}case 4:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,60)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,61)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,58)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,62)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,63)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,64)|0;k=d;break a}case 8:{Gv(f[e>>2]|0,59)|0;k=d;break a}default:hb()}break}default:hb()}break}case 5:{switch(f[j>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,67)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,68)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,65)|0;k=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[e>>2]|0,69)|0;k=d;break a}case 2:{Gv(f[e>>2]|0,70)|0;k=d;break a}case 4:{Gv(f[e>>2]|0,71)|0;k=d;break a}case 8:{Gv(f[e>>2]|0,66)|0;k=d;break a}default:hb()}break}default:hb()}break}default:hb()}while(0);m=h[k>>0]|0;FX(a,m,m,Jbb(f[c+16>>2]|0)|0)}u=l;return}function Nf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=u;u=u+64|0;D=C+36|0;z=C+49|0;E=C+24|0;B=C+12|0;w=C;A=C+48|0;a:do if((b[c>>0]|0)==77){d=c;c=dV(c)|0;e=77;while(1){if(e<<24>>24==102)break;e=d+1|0;d=e;c=c+-1|0;e=b[e>>0]|0}c=d+c|0;while(1){c=c+-1|0;if((b[c>>0]|0)==125)break a;b[c>>0]=0}}else d=c;while(0);i=eH(d,54556)|0;j=(i|0)!=0;if(j)b[i>>0]=0;h=eH(d,54582)|0;do if(h|0){b[a>>0]=1;c=h;while(1)if((b[c>>0]|0)==123)break;else c=c+-1|0;e=123;while(1){if(e<<24>>24==40)break;e=c+-1|0;c=e;e=b[e>>0]|0}e=40;while(1){g=c+-1|0;if(e<<24>>24==32)break;c=g;e=b[g>>0]|0}e=32;while(1){if(e<<24>>24==102)break;e=c+-1|0;c=e;e=b[e>>0]|0}if(H0(c,54595,9)|0)Ca(54605,51387,233,54661);e=FWa(h,125)|0;if(e>>>0>(c+5|0)>>>0){b[c>>0]=47;b[c+1>>0]=42;b[e+-1>>0]=42;b[e>>0]=47;break}else Ca(54669,51387,235,54661)}while(0);if(j)b[i>>0]=47;do if(b[a+1>>0]|0){v=(~~(+((dV(d)|0)>>>0)*1.25)>>>0)+100|0;t=Kc(v)|0;f[a+36>>2]=t;v=t+v|0;m=f[32962]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;_Z(D,m,j7a(m)|0);m=D+11|0;n=b[m>>0]|0;n=n<<24>>24<0?f[D+4>>2]|0:n&255;o=E+11|0;p=E+4|0;q=a+16|0;r=a+4|0;s=a+8|0;i=a+12|0;j=w+11|0;a=w+4|0;k=B+11|0;l=B+4|0;c=t;h=0;b:while(1){g=c;while(1){c=b[d>>0]|0;if(!(c<<24>>24)){c=80;break b}if((g+100|0)>>>0>=v>>>0){c=34;break b}if(ima(d,54744)|0){c=d+8|0;e=_Xa(c,54752)|0;if(!e){c=80;break b}f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}d=e+1|0;if((b[e>>0]|0)!=32){x=0;ia(67,E|0,54705)|0;F=x;x=0;if(F&1){c=53;break b}}else{d=_Xa(d,54755)|0;if(!d){c=68;break b}if((b[d>>0]|0)==34){F=d+1|0;d=_Xa(F,54755)|0;b[d>>0]=0;x=0;ia(67,E|0,F|0)|0;F=x;x=0;if(F&1){c=49;break b}}else{x=0;ia(67,E|0,54705)|0;F=x;x=0;if(F&1){c=46;break b}}d=d+1|0}b[e>>0]=0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;F=j7a(c)|0;x=0;va(87,B|0,c|0,F|0);F=x;x=0;if(F&1){c=62;break b}if(!(Mr(q,E)|0)){c=f[s>>2]|0;e=(c-(f[r>>2]|0)|0)/12|0;if((f[i>>2]|0)==(c|0)){x=0;ua(90,r|0,E|0);F=x;x=0;if(F&1){c=63;break b}}else{x=0;ua(88,c|0,E|0);F=x;x=0;if(F&1){c=63;break b}f[s>>2]=(f[s>>2]|0)+12}x=0;c=ia(68,q|0,E|0)|0;F=x;x=0;if(F&1){c=63;break b}f[c>>2]=e}x=0;c=ia(68,q|0,E|0)|0;F=x;x=0;if(F&1){c=69;break b}x=0;ua(91,w|0,f[c>>2]|0);F=x;x=0;if(F&1){c=69;break b}n7a(g,(b[m>>0]|0)<0?f[D>>2]|0:D)|0;F=g+n|0;c=F+1|0;b[F>>0]=40;n7a(c,(b[j>>0]|0)<0?f[w>>2]|0:w)|0;F=b[j>>0]|0;F=c+(F<<24>>24<0?f[a>>2]|0:F&255)|0;c=F+1|0;b[F>>0]=44;n7a(c,(b[k>>0]|0)<0?f[B>>2]|0:B)|0;F=b[k>>0]|0;F=c+(F<<24>>24<0?f[l>>2]|0:F&255)|0;c=F+1|0;b[F>>0]=41;b[c>>0]=59;MTa(w);MTa(B);MTa(E)}else{if(!h){if(ima(d,54758)|0)break;if(ima(d,54763)|0)break}b[g>>0]=c;c=g;d=d+1|0}g=c+1|0}b[g>>0]=b[d>>0]|0;b[g+1>>0]=b[d+1>>0]|0;b[g+2>>0]=b[d+2>>0]|0;b[g+3>>0]=b[d+3>>0]|0;b[g+4>>0]=b[d+4>>0]|0;c=g+5|0;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;F=j7a(54768)|0;x=0;va(87,E|0,54768,F|0);F=x;x=0;if(F&1){c=78;break}n7a(c,(b[o>>0]|0)<0?f[E>>2]|0:E)|0;h=b[o>>0]|0;c=c+(h<<24>>24<0?f[p>>2]|0:h&255)|0;MTa(E);h=1;d=d+5|0}if((c|0)==34){x=0;sa(3);F=x;x=0;if(!(F&1)){x=0;ia(52,z|0,54715)|0;F=x;x=0;if(F&1){Ia()|0;lCa()}else lCa()}else c=37}else if((c|0)==46){d=Ia()|0;c=72}else if((c|0)==49){d=Ia()|0;c=72}else if((c|0)==53){d=Ia()|0;c=72}else if((c|0)==62){d=Ia()|0;c=71}else if((c|0)==63){d=Ia()|0;c=70}else if((c|0)==68){MTa(E);c=80}else if((c|0)==69){d=Ia()|0;c=70}else if((c|0)==78)y=Ia()|0;if((c|0)==70){MTa(B);c=71}else if((c|0)==80){if(g>>>0>>0){b[g>>0]=0;MTa(D);d=t;break}x=0;sa(3);F=x;x=0;if(!(F&1)){x=0;ia(52,A|0,54715)|0;F=x;x=0;if(F&1){Ia()|0;lCa()}else lCa()}else c=37}if((c|0)==37)y=Ia()|0;else if((c|0)==71)c=72;if((c|0)==72){MTa(E);y=d}MTa(D);Ua(y|0)}while(0);u=C;return d|0}function Of(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110663)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);a:do if((f[c+4>>2]|0)!=5)do switch(f[c+8>>2]|0){case 0:{Gv(f[a+28>>2]|0,106)|0;break a}case 1:{Gv(f[a+28>>2]|0,107)|0;break a}case 2:{Gv(f[a+28>>2]|0,108)|0;break a}case 3:{Gv(f[a+28>>2]|0,109)|0;break a}case 4:{Gv(f[a+28>>2]|0,110)|0;break a}case 5:{Gv(f[a+28>>2]|0,111)|0;break a}case 6:{Gv(f[a+28>>2]|0,112)|0;break a}case 7:{Gv(f[a+28>>2]|0,113)|0;break a}case 8:{Gv(f[a+28>>2]|0,114)|0;break a}case 9:{Gv(f[a+28>>2]|0,115)|0;break a}case 10:{Gv(f[a+28>>2]|0,116)|0;break a}case 11:{Gv(f[a+28>>2]|0,118)|0;break a}case 12:{Gv(f[a+28>>2]|0,117)|0;break a}case 13:{Gv(f[a+28>>2]|0,119)|0;break a}case 14:{Gv(f[a+28>>2]|0,120)|0;break a}case 15:{Gv(f[a+28>>2]|0,70)|0;break a}case 16:{Gv(f[a+28>>2]|0,71)|0;break a}case 17:{Gv(f[a+28>>2]|0,72)|0;break a}case 18:{Gv(f[a+28>>2]|0,73)|0;break a}case 19:{Gv(f[a+28>>2]|0,76)|0;break a}case 20:{Gv(f[a+28>>2]|0,77)|0;break a}case 21:{Gv(f[a+28>>2]|0,74)|0;break a}case 22:{Gv(f[a+28>>2]|0,75)|0;break a}case 23:{Gv(f[a+28>>2]|0,78)|0;break a}case 24:{Gv(f[a+28>>2]|0,79)|0;break a}case 25:{Gv(f[a+28>>2]|0,124)|0;break a}case 26:{Gv(f[a+28>>2]|0,125)|0;break a}case 27:{Gv(f[a+28>>2]|0,126)|0;break a}case 28:{Gv(f[a+28>>2]|0,127)|0;break a}case 29:{Gv(f[a+28>>2]|0,-128)|0;break a}case 30:{Gv(f[a+28>>2]|0,-127)|0;break a}case 31:{Gv(f[a+28>>2]|0,-126)|0;break a}case 32:{Gv(f[a+28>>2]|0,-125)|0;break a}case 33:{Gv(f[a+28>>2]|0,-124)|0;break a}case 34:{Gv(f[a+28>>2]|0,-123)|0;break a}case 35:{Gv(f[a+28>>2]|0,-122)|0;break a}case 36:{Gv(f[a+28>>2]|0,-120)|0;break a}case 37:{Gv(f[a+28>>2]|0,-121)|0;break a}case 38:{Gv(f[a+28>>2]|0,-119)|0;break a}case 39:{Gv(f[a+28>>2]|0,-118)|0;break a}case 40:{Gv(f[a+28>>2]|0,81)|0;break a}case 41:{Gv(f[a+28>>2]|0,82)|0;break a}case 42:{Gv(f[a+28>>2]|0,83)|0;break a}case 43:{Gv(f[a+28>>2]|0,84)|0;break a}case 44:{Gv(f[a+28>>2]|0,87)|0;break a}case 45:{Gv(f[a+28>>2]|0,88)|0;break a}case 46:{Gv(f[a+28>>2]|0,85)|0;break a}case 47:{Gv(f[a+28>>2]|0,86)|0;break a}case 48:{Gv(f[a+28>>2]|0,89)|0;break a}case 49:{Gv(f[a+28>>2]|0,90)|0;break a}case 50:{Gv(f[a+28>>2]|0,-110)|0;break a}case 51:{Gv(f[a+28>>2]|0,-109)|0;break a}case 52:{Gv(f[a+28>>2]|0,-108)|0;break a}case 53:{Gv(f[a+28>>2]|0,-107)|0;break a}case 54:{Gv(f[a+28>>2]|0,-104)|0;break a}case 55:{Gv(f[a+28>>2]|0,-106)|0;break a}case 56:{Gv(f[a+28>>2]|0,-105)|0;break a}case 57:{Gv(f[a+28>>2]|0,91)|0;break a}case 58:{Gv(f[a+28>>2]|0,92)|0;break a}case 59:{Gv(f[a+28>>2]|0,93)|0;break a}case 60:{Gv(f[a+28>>2]|0,95)|0;break a}case 61:{Gv(f[a+28>>2]|0,94)|0;break a}case 62:{Gv(f[a+28>>2]|0,96)|0;break a}case 63:{Gv(f[a+28>>2]|0,-96)|0;break a}case 64:{Gv(f[a+28>>2]|0,-95)|0;break a}case 65:{Gv(f[a+28>>2]|0,-94)|0;break a}case 66:{Gv(f[a+28>>2]|0,-93)|0;break a}case 67:{Gv(f[a+28>>2]|0,-90)|0;break a}case 68:{Gv(f[a+28>>2]|0,-92)|0;break a}case 69:{Gv(f[a+28>>2]|0,-91)|0;break a}case 70:{Gv(f[a+28>>2]|0,97)|0;break a}case 71:{Gv(f[a+28>>2]|0,98)|0;break a}case 72:{Gv(f[a+28>>2]|0,99)|0;break a}case 73:{Gv(f[a+28>>2]|0,101)|0;break a}case 74:{Gv(f[a+28>>2]|0,100)|0;break a}case 75:{Gv(f[a+28>>2]|0,102)|0;break a}default:hb()}while(0);while(0);u=i;return}function Pf(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+160|0;E=F+156|0;v=F+8|0;g=F+152|0;y=F+84|0;z=F+16|0;A=F+4|0;B=F+12|0;C=F;D=a+64|0;w=f[D>>2]|0;do if((f[w+40>>2]|0)!=(f[w+36>>2]|0)){w=a+72|0;do if(b[w>>0]|0){c=DCa(134176,87682)|0;dYa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[E>>2]|0,134880)|0;t=x;x=0;if(!(t&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,t=x,x=0,!(t&1)):0){OCa(E);Wq(c,e)|0;fu(c)|0;break}F=Ia()|0;OCa(E);Ua(F|0)}while(0);t=E$(a,10)|0;r=f[D>>2]|0;r=(f[r+40>>2]|0)-(f[r+36>>2]|0)>>2;s=a+68|0;m=f[s>>2]|0;n4a(g,r);Yr(m,f[g>>2]|0)|0;m=a+132|0;n=a+136|0;o=a+76|0;p=a+4|0;q=a+8|0;l=0;a:while(1){if(l>>>0>=r>>>0){c=9;break}j=(f[n>>2]|0)-(f[m>>2]|0)>>3;if(b[w>>0]|0){c=DCa(134176,87700)|0;d=f[s>>2]|0;d=zm(c,(f[d+4>>2]|0)-(f[d>>2]|0)|0)|0;dYa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;k=x;x=0;if(k&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;k=x;x=0;if(k&1){c=13;break}OCa(E);Wq(d,c)|0;fu(d)|0}i=Qoa(a)|0;g=f[s>>2]|0;g=(f[g+4>>2]|0)-(f[g>>2]|0)|0;k=f[(f[(f[D>>2]|0)+36>>2]|0)+(l<<2)>>2]|0;if(b[w>>0]|0){d=DCa(134176,87713)|0;d=Bfa(d,f[k>>2]|0)|0;dYa(E,d+(f[(f[d>>2]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=18;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=18;break}OCa(E);Wq(d,c)|0;fu(d)|0}if((f[k+40>>2]|0)!=0?(f[o>>2]|0)==0:0){if(!(b[w>>0]|0))c=0;else{d=DCa(134176,87721)|0;dYa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=25;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=25;break}OCa(E);Wq(d,c)|0;fu(d)|0;c=b[w>>0]|0}Vl(y,k,a,f[s>>2]|0,c<<24>>24!=0);Cfa(y)}else{if(!(b[w>>0]|0))c=0;else{d=DCa(134176,87736)|0;dYa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=31;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=31;break}OCa(E);Wq(d,c)|0;fu(d)|0;c=b[w>>0]|0}pK(z,k,a,f[s>>2]|0,(f[o>>2]|0)!=0,c<<24>>24!=0);Cfa(z)}c=f[s>>2]|0;e=(f[c+4>>2]|0)-g-(f[c>>2]|0)|0;f[A>>2]=e;if(b[w>>0]|0){c=DCa(zm(DCa(zm(DCa(134176,87754)|0,e)|0,87766)|0,i)|0,87780)|0;d=f[s>>2]|0;d=zm(c,(f[d+4>>2]|0)-(f[d>>2]|0)|0)|0;dYa(E,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[E>>2]|0,134880)|0;h=x;x=0;if(h&1){c=37;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=37;break}OCa(E);Wq(d,c)|0;fu(d)|0;c=f[s>>2]|0}n4a(B,e);h=uz(c,i,f[B>>2]|0)|0;b:do if((h|0)!=5){if(h>>>0>=5){c=41;break a}c=f[s>>2]|0;d=f[c>>2]|0;if(e){kia(d+i+h|0,d+g|0,e|0)|0;c=f[s>>2]|0}g=5-h|0;lia(c,(f[c+4>>2]|0)-g-(f[c>>2]|0)|0);if(f[o>>2]|0){e=f[m>>2]|0;d=(f[n>>2]|0)-e>>3;c=j;while(1){if(c>>>0>=d>>>0)break b;j=e+(c<<3)|0;f[j>>2]=(f[j>>2]|0)-g;c=c+1|0}}}while(0);c=h+i|0;f[C>>2]=c;d=f[p>>2]|0;if(d>>>0<(f[q>>2]|0)>>>0){f[v>>2]=f[k>>2];k=f[A>>2]|0;f[E>>2]=f[v>>2];iJa(d,E,c,k);f[p>>2]=(f[p>>2]|0)+12}else dA(a,k,C,A);l=l+1|0}if((c|0)==9){WA(a,t);break}else if((c|0)==13){F=Ia()|0;OCa(E);Ua(F|0)}else if((c|0)==18){F=Ia()|0;OCa(E);Ua(F|0)}else if((c|0)==25){F=Ia()|0;OCa(E);Ua(F|0)}else if((c|0)==31){F=Ia()|0;OCa(E);Ua(F|0)}else if((c|0)==37){F=Ia()|0;OCa(E);Ua(F|0)}else if((c|0)==41)Ca(87201,87231,253,87798)}while(0);u=F;return}function Qf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+32|0;r=v+16|0;t=v+4|0;s=v;f[s>>2]=c;if(!(b[130752]|0)){f[32971]=0;f[32972]=0;f[32973]=0;f[32974]=0;f[32975]=1065353216;Oa(448,131884,w|0)|0;p=130752;f[p>>2]=1;f[p+4>>2]=0}c=AC(f[32971]|0,f[32972]|0,c)|0;a:do if(!c){if(!(b[130760]|0))VWa(130760)|0;uSa(131904);if((b[130768]|0)==0?VWa(130768)|0:0){f[32983]=0;f[32984]=0;f[32985]=0;f[32986]=0;f[32987]=1065353216}g=f[32984]|0;c=f[s>>2]|0;e=AC(f[32983]|0,g,c)|0;b:do if(!e){c:do if(d){k=c;o=g}else{if((b[130776]|0)==0?VWa(130776)|0:0){f[32988]=0;f[32989]=0;f[32990]=0}x=0;ua(96,r|0,s|0);p=x;x=0;d:do if(p&1)c=Ia()|0;else{c=f[32989]|0;do if(c>>>0>=(f[32990]|0)>>>0){x=0;ta(449,r|0);p=x;x=0;if(p&1){c=Ia()|0;e=f[r>>2]|0;f[r>>2]=0;if(!e)break d;MTa(e);Cbb(e);break d}else{c=f[r>>2]|0;f[r>>2]=0;if(!c)break;MTa(c);Cbb(c);break}}else{f[c>>2]=f[r>>2];f[32989]=c+4;f[r>>2]=0}while(0);c=f[(f[32989]|0)+-4>>2]|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;f[s>>2]=c;k=c;o=f[32984]|0;break c}while(0);break b}while(0);c=k;p=h1a(k)|0;m=(o|0)==0;e:do if(!m){j=o+-1|0;l=(j&o|0)==0;if(!l)if(p>>>0>>0)g=p;else g=(p>>>0)%(o>>>0)|0;else g=j&p;e=f[(f[32983]|0)+(g<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break e;d=f[e+4>>2]|0;if((d|0)!=(p|0)){if(!l){if(d>>>0>=o>>>0)d=(d>>>0)%(o>>>0)|0}else d=d&j;if((d|0)!=(g|0))break e}if(E_a(f[e+8>>2]|0,k)|0){q=65;break b}}}else g=0;while(0);x=0;wa(76,r|0,131932,p|0,s|0);q=x;x=0;if(q&1)q=24;else{h=+(((f[32986]|0)+1|0)>>>0);i=+n[32987];do if(m|i*+(o>>>0)>>0<3|(o+-1&o|0)!=0)&1;o=~~+W(+(h/i))>>>0;x=0;ua(97,131932,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){c=Ia()|0;e=f[r>>2]|0;f[r>>2]=0;if(e|0)Cbb(e);q=25;break b}e=f[32984]|0;g=e+-1|0;if(!(g&e)){j=e;g=g&p;break}if(p>>>0>>0){j=e;g=p}else{j=e;g=(p>>>0)%(e>>>0)|0}}else j=o;while(0);e=f[(f[32983]|0)+(g<<2)>>2]|0;if(!e){d=f[r>>2]|0;f[d>>2]=f[32985];f[32985]=d;f[(f[32983]|0)+(g<<2)>>2]=131940;e=f[d>>2]|0;if(!e)e=r;else{e=f[e+4>>2]|0;g=j+-1|0;if(g&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&g;f[(f[32983]|0)+(e<<2)>>2]=d;e=r}}else{q=f[r>>2]|0;f[q>>2]=f[e>>2];f[e>>2]=q;e=r}f[32986]=(f[32986]|0)+1;f[e>>2]=0;q=65}}else{k=f[e+8>>2]|0;f[s>>2]=k;c=k;q=65}while(0);f:do if((q|0)==65){p=h1a(k)|0;j=f[32972]|0;o=(j|0)==0;g:do if(!o){l=j+-1|0;m=(l&j|0)==0;if(!m)if(p>>>0>>0)g=p;else g=(p>>>0)%(j>>>0)|0;else g=l&p;e=f[(f[32971]|0)+(g<<2)>>2]|0;if(!e)q=80;else do{e=f[e>>2]|0;if(!e){q=80;break g}d=f[e+4>>2]|0;if((d|0)!=(p|0)){if(!m){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&l;if((d|0)!=(g|0)){q=80;break g}}}while(!(E_a(f[e+8>>2]|0,k)|0))}else{g=0;q=80}while(0);if((q|0)==80){x=0;wa(76,t|0,131884,p|0,s|0);s=x;x=0;if(s&1){q=24;break}h=+(((f[32974]|0)+1|0)>>>0);i=+n[32975];do if(o|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;r=~~+W(+(h/i))>>>0;x=0;ua(97,131884,(s>>>0>>0?r:s)|0);s=x;x=0;if(s&1){c=Ia()|0;e=f[t>>2]|0;f[t>>2]=0;if(e|0)Cbb(e);q=25;break f}e=f[32972]|0;g=e+-1|0;if(!(g&e)){j=e;g=g&p;break}if(p>>>0>>0){j=e;g=p}else{j=e;g=(p>>>0)%(e>>>0)|0}}while(0);e=f[(f[32971]|0)+(g<<2)>>2]|0;if(!e){d=f[t>>2]|0;f[d>>2]=f[32973];f[32973]=d;f[(f[32971]|0)+(g<<2)>>2]=131892;e=f[d>>2]|0;if(!e)e=t;else{e=f[e+4>>2]|0;g=j+-1|0;if(g&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&g;f[(f[32971]|0)+(e<<2)>>2]=d;e=t}}else{s=f[t>>2]|0;f[s>>2]=f[e>>2];f[e>>2]=s;e=t}f[32974]=(f[32974]|0)+1;f[e>>2]=0}mJa(131904);break a}while(0);if((q|0)==24){c=Ia()|0;q=25}mJa(131904);Ua(c|0)}else{c=f[c+8>>2]|0;f[s>>2]=c}while(0);f[a>>2]=c;u=v;return}function Rf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=u;u=u+464|0;D=C+328|0;G=C+136|0;F=C+72|0;E=C+48|0;B=C+16|0;z=C;A=DCa(134008,73097)|0;Ema(Bfa(A,f[c>>2]|0)|0,10)|0;aE(G);A=Jbb(f[a+36>>2]|0)|0;x=0;va(103,G|0,c|0,A|0);A=x;x=0;do if(A&1)d=4;else{if((cia()|0)>1?(x=0,ta(461,G|0),A=x,x=0,A&1):0){d=4;break}x=0;ua(630,F|0,c|0);A=x;x=0;if(A&1)a=Ia()|0;else{x=0;ta(462,F|0);A=x;x=0;if(A&1)a=Ia()|0;else{f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;f[E+12>>2]=0;f[E+16>>2]=1065353216;A=a+44|0;y=G+124|0;a:do if(!(b[A>>0]|0)){a=G+128|0;d=61}else{a=G+128|0;q=f[a>>2]|0;r=z+4|0;s=E+4|0;t=E+12|0;v=E+16|0;w=E+8|0;p=f[y>>2]|0;b:while(1){if((p|0)==(q|0)){d=61;break a}m=f[p>>2]|0;f[B>>2]=m;c=m+8|0;d=m;if(f[c>>2]|0){f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;lQa(D);x=0;xa(6,z|0,D|0,f[c>>2]|0,G|0,F|0);o=x;x=0;if(o&1){d=20;break}XWa(D);if((cia()|0)>1){x=0;c=ia(62,134008,73111)|0;o=x;x=0;if(o&1){d=21;break}x=0;c=ia(78,c|0,(f[r>>2]|0)-(f[z>>2]|0)>>2|0)|0;o=x;x=0;if(o&1){d=21;break}x=0;ia(62,c|0,73131)|0;o=x;x=0;if(o&1){d=21;break}x=0;ua(631,m|0,0);o=x;x=0;if(o&1){d=21;break}}c:do if((f[r>>2]|0)-(f[z>>2]|0)>>2>>>0>1){f[D>>2]=d;o=JH(D,4)|0;g=f[s>>2]|0;l=(g|0)==0;d:do if(l)d=0;else{j=g+-1|0;k=(j&g|0)==0;do if(k)d=j&o;else{if(o>>>0>>0){d=o;break}d=(o>>>0)%(g>>>0)|0}while(0);c=f[(f[E>>2]|0)+(d<<2)>>2]|0;if(!c)break;while(1){c=f[c>>2]|0;if(!c)break d;e=f[c+4>>2]|0;if((e|0)!=(o|0)){do if(k)e=e&j;else{if(e>>>0>>0)break;e=(e>>>0)%(g>>>0)|0}while(0);if((e|0)!=(d|0))break d}if((f[c+8>>2]|0)==(m|0))break c}}while(0);x=0;wa(91,D|0,E|0,o|0,B|0);m=x;x=0;if(m&1){d=21;break b}h=+(((f[t>>2]|0)+1|0)>>>0);i=+n[v>>2];do if(l|i*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;l=~~+W(+(h/i))>>>0;x=0;ua(632,E|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){d=46;break b}c=f[s>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&o;break}if(o>>>0>>0){g=c;d=o;break}g=c;d=(o>>>0)%(c>>>0)|0}while(0);c=f[(f[E>>2]|0)+(d<<2)>>2]|0;do if(!c){e=f[D>>2]|0;f[e>>2]=f[w>>2];f[w>>2]=e;f[(f[E>>2]|0)+(d<<2)>>2]=w;c=f[e>>2]|0;if(!c)break;c=f[c+4>>2]|0;d=g+-1|0;do if(!(d&g))c=c&d;else{if(c>>>0>>0)break;c=(c>>>0)%(g>>>0)|0}while(0);f[(f[E>>2]|0)+(c<<2)>>2]=e}else{o=f[D>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}while(0);f[t>>2]=(f[t>>2]|0)+1}while(0);zSa(z)}p=p+4|0}if((d|0)==20){a=Ia()|0;XWa(D)}else if((d|0)==21){a=Ia()|0;d=22}else if((d|0)==46){a=Ia()|0;c=f[D>>2]|0;f[D>>2]=0;if(c|0)Cbb(c);d=22}if((d|0)==22)zSa(z)}while(0);if((d|0)==61){e=f[a>>2]|0;g=B+28|0;d=D+20|0;a=f[y>>2]|0;while(1){if((a|0)==(e|0)){d=63;break}c=f[a>>2]|0;if(c9(c)|0){x=0;xa(7,D|0,G|0,c|0,E|0,F|0);z=x;x=0;if(z&1){d=70;break}if(!(C7a(b[d>>0]|0)|0)){x=0;va(104,B|0,G|0,D|0);z=x;x=0;if(z&1){d=71;break}if(!((b[A>>0]|0)==0|(b[g>>0]|0)==0)){d=69;break}sWa(B)}ZY(D)}a=a+4|0}if((d|0)==63){SQa(E);zV(F);pG(G);u=C;return}else if((d|0)==69){x=0;wa(71,73138,73170,674,115765);x=0;a=Ia()|0;sWa(B);d=73}else if((d|0)==70)a=Ia()|0;else if((d|0)==71){a=Ia()|0;d=73}if((d|0)==73)ZY(D)}SQa(E)}zV(F)}}while(0);if((d|0)==4)a=Ia()|0;pG(G);Ua(a|0)}function Sf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;q=u;u=u+112|0;v=q;w=q+92|0;t=q+80|0;s=q+48|0;d=q+32|0;r=q+20|0;o=q+16|0;p=q+12|0;m=kQa(b)|0;f[w>>2]=0;n=w+4|0;f[n>>2]=0;e=w+8|0;f[e>>2]=0;c=0;while(1){if(c>>>0>=m>>>0){h=3;break}f[v>>2]=c;g=f[n>>2]|0;if(g>>>0>=(f[e>>2]|0)>>>0){x=0;ua(1508,w|0,v|0);l=x;x=0;if(l&1){h=8;break}}else{f[g>>2]=c;f[n>>2]=g+4}c=c+1|0}do if((h|0)==3){k=f[w>>2]|0;l=f[n>>2]|0;f[v>>2]=a;f[v+4>>2]=b;x=0;va(134,k|0,l|0,v|0);l=x;x=0;if(l&1){c=Ia()|0;break}e=(f[b+12>>2]|0)-(f[b+8>>2]|0)>>2;g=f[w>>2]|0;c=0;while(1){if(c>>>0>=e>>>0)break;if((f[g+(c<<2)>>2]|0)>>>0>>0)c=c+1|0;else{h=14;break}}if((h|0)==14){x=0;wa(71,90041,90075,61,113887);x=0;c=Ia()|0;break}c=0;while(1){if((c|0)==(e|0))break;f[g+(c<<2)>>2]=c;c=c+1|0}g=b+20|0;x=0;ua(1509,v|0,g|0);l=x;x=0;if(l&1)c=Ia()|0;else{h=b+24|0;f[h>>2]=f[g>>2];l=BZa(b)|0;i=a+44|0;j=b+28|0;k=f[v>>2]|0;while(1){c=f[w>>2]|0;if(l>>>0>=(f[n>>2]|0)-c>>2>>>0){h=32;break}f[t>>2]=f[c+(l<<2)>>2];x=0;c=ia(150,i|0,t|0)|0;e=x;x=0;if(e&1){h=26;break}if(!(f[c>>2]|0)){h=29;break}c=BZa(b)|0;c=k+((f[t>>2]|0)-c<<2)|0;e=f[h>>2]|0;if((e|0)==(f[j>>2]|0)){x=0;ua(260,g|0,c|0);e=x;x=0;if(e&1){h=26;break}}else{f[e>>2]=f[c>>2];f[h>>2]=e+4}l=l+1|0}do if((h|0)==26){c=Ia()|0;h=28}else if((h|0)==29){x=0;ua(588,w|0,l|0);l=x;x=0;if(l&1){c=Ia()|0;h=28;break}else{h=32;break}}while(0);if((h|0)!=28)if((h|0)==32){wda(a+44|0);f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;x=0;ua(588,t|0,m|0);m=x;x=0;if(m&1)c=Ia()|0;else{h=f[n>>2]|0;e=0;c=f[w>>2]|0;while(1){if(e>>>0>=h-c>>2>>>0)break;if(KVa(b,e)|0)g=e;else{c=f[w>>2]|0;g=f[c+(e<<2)>>2]|0}f[(f[t>>2]|0)+(g<<2)>>2]=e;e=e+1|0}uya(s,b,t);x=0;ua(1510,s|0,b+36|0);m=x;x=0;if(m&1)c=Ia()|0;else{j=b+44|0;DUa(d);g=b+48|0;h=d+4|0;e=f[j>>2]|0;while(1){if((e|0)==(g|0)){h=50;break}m=e+16|0;x=0;wa(133,d|0,h|0,f[m>>2]|0,m|0);m=x;x=0;if(m&1){h=64;break}c=f[e+4>>2]|0;if(!c)while(1){c=f[e+8>>2]|0;if((f[c>>2]|0)==(e|0))break;else e=c}else while(1){e=f[c>>2]|0;if(!e)break;else c=e}e=c}if((h|0)==50){i=b+56|0;DUa(r);g=b+60|0;h=r+4|0;e=f[i>>2]|0;while(1){if((e|0)==(g|0)){h=60;break}b=e+16|0;x=0;wa(134,r|0,h|0,b|0,b|0);b=x;x=0;if(b&1){h=65;break}c=f[e+4>>2]|0;if(!c)while(1){c=f[e+8>>2]|0;if((f[c>>2]|0)==(e|0))break;else e=c}else while(1){e=f[c>>2]|0;if(!e)break;else c=e}e=c}if((h|0)==60){kaa(j);I9(i);g=d+8|0;e=0;while(1){c=f[w>>2]|0;if(e>>>0>=(f[n>>2]|0)-c>>2>>>0){h=62;break}c=c+(e<<2)|0;if((f[c>>2]|0)>>>0<(f[g>>2]|0)>>>0){x=0;c=ia(151,d|0,c|0)|0;b=x;x=0;if(b&1){h=71;break}f[o>>2]=f[c>>2];f[p>>2]=e;x=0;c=ia(152,j|0,p|0)|0;b=x;x=0;if(b&1){h=72;break}f[c>>2]=f[o>>2];x=0;c=ia(153,i|0,o|0)|0;b=x;x=0;if(b&1){h=71;break}f[c>>2]=e}e=e+1|0}if((h|0)==62){sIa(r);DJa(d);P_a(s);zSa(t);zSa(v);zSa(w);u=q;return}else if((h|0)==71)c=Ia()|0;else if((h|0)==72)c=Ia()|0;sIa(r)}else if((h|0)==65){c=Ia()|0;Pna(r)}DJa(d)}else if((h|0)==64){c=Ia()|0;Soa(d)}}P_a(s)}zSa(t)}zSa(v)}}else if((h|0)==8)c=Ia()|0;while(0);zSa(w);Ua(c|0)}function Tf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;B=u;u=u+64|0;C=B+48|0;A=B+36|0;D=B+16|0;c=B+8|0;s=B;Lk(a,f[b+28>>2]|0)|0;a:do if(!(qVa(a)|0)){f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;v=b+8|0;Q$a(A,v);LUa(c,v);v=D+4|0;z=D+12|0;t=D+16|0;y=D+8|0;r=A+4|0;q=f[c>>2]|0;p=f[c+4>>2]|0;b:while(1){if(!(qTa(f[A>>2]|0,f[r>>2]|0,q,p)|0)){w=4;break}x=0;c=ga(256,A|0)|0;o=x;x=0;if(o&1){w=74;break}h=f[c>>2]|0;f[s>>2]=h;o=W7a(s)|0;g=f[v>>2]|0;m=(g|0)==0;c:do if(!m){i=g+-1|0;l=(i&g|0)==0;if(!l)if(o>>>0>>0)d=o;else d=(o>>>0)%(g>>>0)|0;else d=i&o;c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c)w=54;else do{c=f[c>>2]|0;if(!c){w=54;break c}e=f[c+4>>2]|0;if((e|0)!=(o|0)){if(!l){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0}else e=e&i;if((e|0)!=(d|0)){w=54;break c}}}while(!(g2a(f[c+8>>2]|0,h)|0))}else{d=0;w=54}while(0);if((w|0)==54){w=0;x=0;wa(95,C|0,D|0,o|0,s|0);l=x;x=0;if(l&1){w=74;break}j=+(((f[z>>2]|0)+1|0)>>>0);k=+n[t>>2];do if(m|k*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;l=~~+W(+(j/k))>>>0;x=0;ua(680,D|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){w=61;break b}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&o;break}if(o>>>0>>0){g=c;d=o}else{g=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c){e=f[C>>2]|0;f[e>>2]=f[y>>2];f[y>>2]=e;f[(f[D>>2]|0)+(d<<2)>>2]=y;c=f[e>>2]|0;if(c|0){c=f[c+4>>2]|0;d=g+-1|0;if(d&g){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&d;f[(f[D>>2]|0)+(c<<2)>>2]=e}}else{o=f[C>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}f[z>>2]=(f[z>>2]|0)+1}YYa(A)}d:do if((w|0)==4){l=b+24|0;o=W7a(l)|0;g=f[v>>2]|0;m=(g|0)==0;e:do if(!m){h=g+-1|0;i=(h&g|0)==0;if(!i)if(o>>>0>>0)d=o;else d=(o>>>0)%(g>>>0)|0;else d=h&o;c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c)w=19;else do{c=f[c>>2]|0;if(!c){w=19;break e}e=f[c+4>>2]|0;if((e|0)!=(o|0)){if(!i){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0}else e=e&h;if((e|0)!=(d|0)){w=19;break e}}}while(!(g2a(f[c+8>>2]|0,f[l>>2]|0)|0))}else{d=0;w=19}while(0);f:do if((w|0)==19){x=0;wa(95,A|0,D|0,o|0,l|0);s=x;x=0;g:do if(s&1)c=Ia()|0;else{k=+(((f[z>>2]|0)+1|0)>>>0);j=+n[t>>2];do if(m|j*+(g>>>0)>>0<3|(g+-1&g|0)!=0)&1;s=~~+W(+(k/j))>>>0;x=0;ua(680,D|0,(t>>>0>>0?s:t)|0);t=x;x=0;if(t&1){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)Cbb(d);break g}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&o;break}if(o>>>0>>0){g=c;d=o}else{g=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[D>>2]|0)+(d<<2)>>2]|0;if(!c){e=f[A>>2]|0;f[e>>2]=f[y>>2];f[y>>2]=e;f[(f[D>>2]|0)+(d<<2)>>2]=y;c=f[e>>2]|0;if(!c)c=A;else{c=f[c+4>>2]|0;d=g+-1|0;if(d&g){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&d;f[(f[D>>2]|0)+(c<<2)>>2]=e;c=A}}else{y=f[A>>2]|0;f[y>>2]=f[c>>2];f[c>>2]=y;c=A}f[z>>2]=(f[z>>2]|0)+1;f[c>>2]=0;break f}while(0);break d}while(0);h=a+152|0;i=a+140|0;c=D+8|0;while(1){c=f[c>>2]|0;if(!c){w=78;break}f[C>>2]=f[c+8>>2];x=0;d=ia(120,h|0,C|0)|0;A=x;x=0;if(A&1){w=87;break}e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0)){x=0;ua(681,d|0,i|0);A=x;x=0;if(A&1){w=87;break}}else{x=0;ua(679,g|0,i|0);A=x;x=0;if(A&1){w=87;break}f[e>>2]=(f[e>>2]|0)+12}}if((w|0)==78){SQa(D);break a}else if((w|0)==87){c=Ia()|0;break}}else if((w|0)==61){c=Ia()|0;d=f[C>>2]|0;f[C>>2]=0;if(d|0)Cbb(d);w=75}else if((w|0)==74){c=Ia()|0;w=75}while(0);SQa(D);Ua(c|0)}while(0);H_a(a);u=B;return a|0}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0.0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0;a:while(1){m=b;n=b+-4|0;q=a;b:while(1){l=q;a=m-l|0;c=a>>2;switch(c|0){case 1:case 0:break a;case 2:{o=4;break a}case 3:{o=6;break a}case 4:{o=7;break a}case 5:{o=8;break a}default:{}}if((a|0)<28){o=10;break a}g=q+(((c|0)/2|0)<<2)|0;if((a|0)>3996){a=(c|0)/4|0;a=er(q,q+(a<<2)|0,g,g+(a<<2)|0,n)|0}else a=qs(q,g,n)|0;e=f[q>>2]|0;j=+p[e+16>>3];h=+p[(f[g>>2]|0)+16>>3];if(X2(j,h)|0)c=n;else{c=n;do{c=c+-4|0;if((q|0)==(c|0)){o=17;break b}d=f[c>>2]|0}while(!(X2(+p[d+16>>3],h)|0));f[q>>2]=d;f[c>>2]=e;a=a+1|0}d=q+4|0;c:do if(d>>>0>>0){k=g;while(1){h=+p[(f[k>>2]|0)+16>>3];while(1){e=f[d>>2]|0;g=d+4|0;i=e;if(X2(+p[e+16>>3],h)|0)d=g;else break}do{c=c+-4|0;t=f[c>>2]|0;e=t}while(!(X2(+p[t+16>>3],h)|0));if(d>>>0>c>>>0){c=k;e=d;break c}f[d>>2]=e;f[c>>2]=i;k=(k|0)==(d|0)?c:k;d=g;a=a+1|0}}else{c=g;e=d}while(0);if((e|0)!=(c|0)?(r=f[c>>2]|0,s=f[e>>2]|0,X2(+p[r+16>>3],+p[s+16>>3])|0):0){f[e>>2]=r;f[c>>2]=s;a=a+1|0}if(!a){d=Uk(q,e)|0;a=e+4|0;if(Uk(a,b)|0){o=46;break}if(d){c=2;o=51;break}}t=e;if((t-l|0)>=(m-t|0)){o=50;break}Uf(q,e);q=e+4|0}d:do if((o|0)==17){o=0;a=q+4|0;t=f[n>>2]|0;d=t;if(!(X2(j,+p[t+16>>3])|0)){while(1){if((a|0)==(n|0))break a;c=f[a>>2]|0;if(X2(j,+p[c+16>>3])|0)break;a=a+4|0}f[a>>2]=d;f[n>>2]=c;a=a+4|0}if((a|0)==(n|0))break a;c=n;while(1){h=+p[(f[q>>2]|0)+16>>3];while(1){t=f[a>>2]|0;e=a+4|0;g=t;if(X2(h,+p[t+16>>3])|0)break;else a=e}do{c=c+-4|0;t=f[c>>2]|0;d=t}while(X2(h,+p[t+16>>3])|0);if(a>>>0>=c>>>0){c=4;o=51;break d}f[a>>2]=d;f[c>>2]=g;a=e}}else if((o|0)==46){c=d?1:2;a=q;b=d?b:e;o=51}else if((o|0)==50){o=0;Uf(e+4|0,b);a=q;b=e}while(0);if((o|0)==51){o=0;switch(c&7){case 2:case 4:case 0:break;default:break a}}}if((o|0)==4){b=f[n>>2]|0;a=f[q>>2]|0;if(X2(+p[b+16>>3],+p[a+16>>3])|0){f[q>>2]=b;f[n>>2]=a}}else if((o|0)==6)qs(q,q+4|0,n)|0;else if((o|0)==7)Jt(q,q+4|0,q+8|0,n)|0;else if((o|0)==8)er(q,q+4|0,q+8|0,q+12|0,n)|0;else if((o|0)==10)jt(q,b);return}function Vf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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=u;u=u+176|0;J=I+32|0;z=I+28|0;F=I+24|0;t=I+12|0;G=I;f[z>>2]=b;A=a+16|0;c=f[A>>2]|0;if(!(Jbb(c)|0))k1a(F,81071);else f[F>>2]=f[c>>2];e=b+4|0;i=f[e>>2]|0;Ar(b);j=f[e>>2]|0;a:do if((j|0)==(i|0))H=27;else{b:do if(!((j|0)==5&(v2a(i)|0))){d=J+56|0;k=J+4|0;f[J>>2]=33420;f[d>>2]=33440;Laa(J+56|0,k);f[J+128>>2]=0;f[J+132>>2]=-1;f[J>>2]=41756;f[d>>2]=41776;Xra(k);f[k>>2]=39940;d=J+36|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}f[J+48>>2]=0;f[J+52>>2]=16;x=0;c=ia(62,J|0,81086)|0;d=x;x=0;do if(((((((((((!(d&1)?(x=0,l=ia(76,c|0,f[F>>2]|0)|0,d=x,x=0,!(d&1)):0)?(x=0,m=ia(62,l|0,81107)|0,l=x,x=0,!(l&1)):0)?(x=0,o=ia(117,m|0,b|0)|0,m=x,x=0,!(m&1)):0)?(x=0,p=ia(62,o|0,81112)|0,o=x,x=0,!(o&1)):0)?(x=0,q=ga(228,i|0)|0,o=x,x=0,!(o&1)):0)?(x=0,r=ia(62,p|0,q|0)|0,q=x,x=0,!(q&1)):0)?(x=0,s=ia(62,r|0,81125)|0,r=x,x=0,!(r&1)):0)?(x=0,v=ga(228,j|0)|0,r=x,x=0,!(r&1)):0)?(x=0,w=ia(62,s|0,v|0)|0,v=x,x=0,!(v&1)):0)?(x=0,ia(62,w|0,87606)|0,w=x,x=0,!(w&1)):0)?(y=f[a+24>>2]|0,x=0,ua(107,t|0,k|0),w=x,x=0,!(w&1)):0){w=Jbb(f[A>>2]|0)|0;x=0;wa(102,y|0,t|0,b|0,w|0);y=x;x=0;if(y&1){c=Ia()|0;MTa(t);break}else{MTa(t);OGa(J);break b}}else H=23;while(0);if((H|0)==23)c=Ia()|0;OGa(J);break a}while(0);f[e>>2]=i;H=27}while(0);c:do if((H|0)==27){p=a+28|0;f[J>>2]=b;o=JH(J,4)|0;l=a+32|0;i=f[l>>2]|0;m=(i|0)==0;d:do if(!m){j=i+-1|0;k=(j&i|0)==0;if(!k)if(o>>>0>>0)d=o;else d=(o>>>0)%(i>>>0)|0;else d=j&o;c=f[(f[p>>2]|0)+(d<<2)>>2]|0;if(!c)H=42;else{do{c=f[c>>2]|0;if(!c){H=42;break d}e=f[c+4>>2]|0;if((e|0)!=(o|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){H=42;break d}}}while((f[c+8>>2]|0)!=(b|0));d=J+56|0;e=J+4|0;f[J>>2]=33420;f[d>>2]=33440;Laa(J+56|0,e);f[J+128>>2]=0;f[J+132>>2]=-1;f[J>>2]=41756;f[d>>2]=41776;Xra(e);f[e>>2]=39940;d=J+36|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}f[J+48>>2]=0;f[J+52>>2]=16;x=0;c=ia(62,J|0,81138)|0;z=x;x=0;do if(((((!(z&1)?(x=0,B=ia(76,c|0,f[F>>2]|0)|0,F=x,x=0,!(F&1)):0)?(x=0,C=ia(62,B|0,81107)|0,F=x,x=0,!(F&1)):0)?(x=0,D=ia(117,C|0,b|0)|0,F=x,x=0,!(F&1)):0)?(x=0,ia(71,D|0,10)|0,F=x,x=0,!(F&1)):0)?(E=f[a+24>>2]|0,x=0,ua(107,G|0,e|0),a=x,x=0,!(a&1)):0){a=Jbb(f[A>>2]|0)|0;x=0;wa(102,E|0,G|0,b|0,a|0);a=x;x=0;if(a&1){c=Ia()|0;MTa(G);break}else{MTa(G);OGa(J);break d}}else H=71;while(0);if((H|0)==71)c=Ia()|0;OGa(J);break c}}else{d=0;H=42}while(0);if((H|0)==42){W6(J,p,o,z);j=a+40|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+44>>2];do if(m|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;G=~~+W(+(g/h))>>>0;x=0;ua(643,p|0,(H>>>0>>0?G:H)|0);H=x;x=0;if(H&1){c=Ia()|0;d=f[J>>2]|0;f[J>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o}else{i=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[p>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+36|0;e=f[J>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=e;f[(f[p>>2]|0)+(d<<2)>>2]=c;c=f[e>>2]|0;if(!c)c=J;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[p>>2]|0)+(c<<2)>>2]=e;c=J}}else{a=f[J>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;c=J}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}u=I;return}while(0);Ua(c|0)}function Wf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;z=u;u=u+80|0;B=z+68|0;t=z+64|0;E=z+48|0;C=z+28|0;D=z+16|0;A=z;v=z+40|0;w=z+12|0;y=f[a>>2]|0;s=y+108|0;d=BB(s,c)|0;a:do if(!d){oD(E,y,1);q=W7a(c)|0;o=y+112|0;j=f[o>>2]|0;p=(j|0)==0;b:do if(!p){l=j+-1|0;m=(l&j|0)==0;if(!m)if(q>>>0>>0)e=q;else e=(q>>>0)%(j>>>0)|0;else e=l&q;d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d)r=17;else{k=f[c>>2]|0;do{d=f[d>>2]|0;if(!d){r=17;break b}g=f[d+4>>2]|0;if((g|0)!=(q|0)){if(!m){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&l;if((g|0)!=(e|0)){r=17;break b}}}while(!(g2a(f[d+8>>2]|0,k)|0))}}else{e=0;r=17}while(0);c:do if((r|0)==17){x=0;xa(9,B|0,s|0,q|0,c|0,E|0);m=x;x=0;d:do if(m&1)d=Ia()|0;else{k=y+120|0;h=+(((f[k>>2]|0)+1|0)>>>0);i=+n[y+124>>2];do if(p|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;m=~~+W(+(h/i))>>>0;x=0;ua(2494,s|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(!(p&1)){d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){j=d;e=e&q;break}if(q>>>0>>0){j=d;e=q;break}j=d;e=(q>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0){if(b[B+8>>0]|0)GWa(e+8|0);Cbb(e)}break d}while(0);d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d){d=y+116|0;g=f[B>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[s>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=B;else{d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;f[(f[s>>2]|0)+(d<<2)>>2]=g;d=B}}else{r=f[B>>2]|0;f[r>>2]=f[d>>2];f[d>>2]=r;d=B}f[k>>2]=(f[k>>2]|0)+1;f[d>>2]=0;break c}while(0);MCa(E);break a}while(0);MCa(E);g=BB(s,c)|0;r=41}else{g=d;r=41}while(0);if((r|0)==41){e=f[c>>2]|0;c=Jbb(e)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;_Z(D,c,j7a(c)|0);x=0;ia(83,D|0,108276)|0;c=x;x=0;if(c&1)d=Ia()|0;else{f[C>>2]=f[D>>2];f[C+4>>2]=f[D+4>>2];f[C+8>>2]=f[D+8>>2];d=0;while(1){if((d|0)==3)break;f[D+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,C|0,108287)|0;c=x;x=0;if(c&1)d=Ia()|0;else{f[E>>2]=f[C>>2];f[E+4>>2]=f[C+4>>2];f[E+8>>2]=f[C+8>>2];d=0;while(1){if((d|0)==3)break;f[C+(d<<2)>>2]=0;d=d+1|0}s=f[a+4>>2]|0;c=f[s>>2]|0;f[s>>2]=c+1;x=0;ua(1871,A|0,c|0);c=x;x=0;if(c&1)d=Ia()|0;else{c=b[A+11>>0]|0;s=c<<24>>24<0;x=0;ja(49,E|0,(s?f[A>>2]|0:A)|0,(s?f[A+4>>2]|0:c&255)|0)|0;c=x;x=0;do if(!(c&1)){f[B>>2]=f[E>>2];f[B+4>>2]=f[E+4>>2];f[B+8>>2]=f[E+8>>2];d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,t|0,B|0);c=x;x=0;if(c&1){d=Ia()|0;MTa(B);break}else{MTa(B);MTa(A);MTa(E);MTa(C);MTa(D);A=y+44|0;C=f[A>>2]|0;E=f[t>>2]|0;f[v>>2]=E;D=a+8|0;t=f[f[D>>2]>>2]|0;f[B>>2]=f[v>>2];v=kAa(C,B,t)|0;f[v+4>>2]=1;t=f[A>>2]|0;C=a+12|0;v=Qya(t,QPa(f[C>>2]|0)|0,v)|0;r=f[A>>2]|0;s=QPa(g+12|0)|0;c=f[A>>2]|0;y=QPa(f[a+16>>2]|0)|0;y=Qya(r,s,SKa(f[c>>2]|0,y,1)|0)|0;A=f[A>>2]|0;f[w>>2]=e;C=QPa(f[C>>2]|0)|0;C=SKa(f[A>>2]|0,C,1)|0;f[B>>2]=f[w>>2];C=Xza(t,v,y,Vma(A,B,C,0)|0)|0;f[f[D>>2]>>2]=C;u=z;return E|0}}else d=Ia()|0;while(0);MTa(A)}MTa(E)}MTa(C)}MTa(D)}Ua(d|0);return 0}function Xf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+80|0;t=v+16|0;w=v+4|0;e=v;f[w>>2]=0;r=w+4|0;f[r>>2]=0;s=w+8|0;f[s>>2]=0;g=c+116|0;d=f[g>>2]|0;do if(Qab(d)|0){f[e>>2]=d;x=0;f[t>>2]=f[e>>2];d=ia(56,c|0,t|0)|0;q=x;x=0;if(q&1){d=Ia()|0;break}if(b7a(f[f[d+36>>2]>>2]|0)|0){Sab(g);p=11;break}f[t>>2]=0;d=f[r>>2]|0;if(d>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,g|0);q=x;x=0;if(q&1){d=Ia()|0;break}}else{f[d>>2]=0;f[d+4>>2]=f[g>>2];f[r>>2]=(f[r>>2]|0)+8}p=11}else p=11;while(0);a:do if((p|0)==11){b:do if(b[a+16>>0]|0){e=f[c+40>>2]|0;d=f[c+36>>2]|0;while(1){if((d|0)==(e|0))break b;f[t>>2]=0;a=f[d>>2]|0;g=f[r>>2]|0;if(g>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,a|0);q=x;x=0;if(q&1)break}else{f[g>>2]=0;f[g+4>>2]=f[a>>2];f[r>>2]=(f[r>>2]|0)+8}d=d+4|0}d=Ia()|0;break a}while(0);h=f[c+28>>2]|0;e=0;q=0;g=f[c+24>>2]|0;c:while(1){if((g|0)==(h|0)){p=21;break}d=f[g>>2]|0;a=f[d+8>>2]|0;switch(a|0){case 0:{f[t>>2]=0;d=d+4|0;a=f[r>>2]|0;if(a>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,d|0);p=x;x=0;if(p&1){p=27;break c}}else{f[a>>2]=0;f[a+4>>2]=f[d>>2];f[r>>2]=(f[r>>2]|0)+8}d=q;break}case 3:{f[t>>2]=1;d=d+4|0;a=f[r>>2]|0;if(a>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,d|0);p=x;x=0;if(p&1){p=32;break c}}else{f[a>>2]=1;f[a+4>>2]=f[d>>2];f[r>>2]=(f[r>>2]|0)+8}d=q;break}default:{e=e|(a|0)==2;d=q|(a|0)==1}}q=d;g=g+4|0}if((p|0)==21){k=c+12|0;l=c+16|0;a=f[l>>2]|0;j=0;m=0;d=f[k>>2]|0;while(1){if((d|0)==(a|0))break;o=f[(f[d>>2]|0)+12>>2]|0;j=j|(o|0)==2;m=m|(o|0)==1;d=d+4|0}o=c+76|0;n=c+80|0;i=f[n>>2]|0;a=f[o>>2]|0;d:while(1){if((a|0)==(i|0))break;g=f[a+8>>2]|0;d=f[a+4>>2]|0;while(1){if((d|0)==(g|0))break;f[t>>2]=0;h=f[r>>2]|0;if(h>>>0>=(f[s>>2]|0)>>>0){x=0;va(136,w|0,t|0,d|0);h=x;x=0;if(h&1){p=47;break d}}else{f[h>>2]=0;f[h+4>>2]=f[d>>2];f[r>>2]=(f[r>>2]|0)+8}d=d+4|0}a=a+16|0}if((p|0)==47){d=Ia()|0;break}x=0;va(137,t|0,c|0,w|0);s=x;x=0;if(s&1)d=Ia()|0;else{r=c+36|0;p=c+40|0;s=DD(f[r>>2]|0,f[p>>2]|0,t)|0;sN(r,s,f[p>>2]|0);p=c+48|0;s=c+52|0;r=mE(f[p>>2]|0,f[s>>2]|0,t)|0;mQ(p,r,f[s>>2]|0);s=_D(f[k>>2]|0,f[l>>2]|0,t)|0;mQ(k,s,f[l>>2]|0);x=0;ta(486,c|0);s=x;x=0;do if(!(s&1)){if(!e?(b[t+52>>0]|0)==0:0){if(j){e=c+100|0;d=f[c+104>>2]|0}else{e=c+100|0;d=f[e>>2]|0;g=c+104|0;a=f[g>>2]|0;while(1){if((a|0)==(d|0))break;s=a+-16|0;P_a(s);a=s}f[g>>2]=d}if((f[e>>2]|0)==(d|0)){b[c+112>>0]=0;b[c+113>>0]=0;x=0;ja(40,c+92|0,0,0)|0;s=x;x=0;if(s&1)break;x=0;ja(40,c+96|0,0,0)|0;s=x;x=0;if(s&1)break;sU(2,c)}}if(!q?(b[t+53>>0]|0)==0:0){if(m)d=f[n>>2]|0;else{d=f[o>>2]|0;e=f[n>>2]|0;while(1){if((e|0)==(d|0))break;s=e+-16|0;P_a(s);e=s}f[n>>2]=d}if((f[o>>2]|0)==(d|0)){b[c+60>>0]=0;b[c+61>>0]=0;x=0;ja(40,c+68|0,0,0)|0;s=x;x=0;if(s&1)break;x=0;ja(40,c+72|0,0,0)|0;s=x;x=0;if(s&1)break;sU(1,c)}}DAa(t);zSa(w);u=v;return}while(0);d=Ia()|0;DAa(t)}break}else if((p|0)==27){d=Ia()|0;break}else if((p|0)==32){d=Ia()|0;break}}while(0);zSa(w);Ua(d|0)}function Yf(a){a=a|0;var b=0,c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;C=u;u=u+32|0;F=C+20|0;w=C+16|0;E=C+4|0;y=C;z=a+16|0;A=a+44|0;B=E+4|0;v=a+24|0;c=f[a+12>>2]|0;a:while(1){if((c|0)==(z|0)){D=3;break}b=f[c+16>>2]|0;s=L_a(b)|0;f[w>>2]=s;t=s;if(!s){d=tRa(b)|0;f[E>>2]=d;d=PT(a,E)|0;s=d+4|0;d=f[d>>2]|0;while(1){if((d|0)==(s|0))break;f[y>>2]=f[d+16>>2];r=Wk(A,y)|0;k=f[E>>2]|0;f[F>>2]=k;q=JH(F,4)|0;o=r+4|0;j=f[o>>2]|0;p=(j|0)==0;b:do if(!p){l=j+-1|0;m=(l&j|0)==0;if(!m)if(q>>>0>>0)e=q;else e=(q>>>0)%(j>>>0)|0;else e=l&q;b=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!b)D=64;else do{b=f[b>>2]|0;if(!b){D=64;break b}i=f[b+4>>2]|0;if((i|0)!=(q|0)){if(!m){if(i>>>0>=j>>>0)i=(i>>>0)%(j>>>0)|0}else i=i&l;if((i|0)!=(e|0)){D=64;break b}}}while((f[b+8>>2]|0)!=(k|0))}else{e=0;D=64}while(0);if((D|0)==64){D=0;W6(F,r,q,E);k=r+12|0;g=+(((f[k>>2]|0)+1|0)>>>0);h=+n[r+16>>2];do if(p|h*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;p=~~+W(+(g/h))>>>0;x=0;ua(634,r|0,(t>>>0

>>0?p:t)|0);t=x;x=0;if(t&1){D=70;break a}b=f[o>>2]|0;e=b+-1|0;if(!(e&b)){j=b;e=e&q;break}if(q>>>0>>0){j=b;e=q}else{j=b;e=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[r>>2]|0)+(e<<2)>>2]|0;if(!b){b=r+8|0;i=f[F>>2]|0;f[i>>2]=f[b>>2];f[b>>2]=i;f[(f[r>>2]|0)+(e<<2)>>2]=b;b=f[i>>2]|0;if(b|0){b=f[b+4>>2]|0;e=j+-1|0;if(e&j){if(b>>>0>=j>>>0)b=(b>>>0)%(j>>>0)|0}else b=b&e;f[(f[r>>2]|0)+(b<<2)>>2]=i}}else{t=f[F>>2]|0;f[t>>2]=f[b>>2];f[b>>2]=t}f[k>>2]=(f[k>>2]|0)+1}b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}}else{pV(E,f[s+12>>2]|0);q=f[B>>2]|0;p=f[E>>2]|0;while(1){if((p|0)==(q|0))break;f[y>>2]=f[p>>2];x=0;r=ia(111,v|0,y|0)|0;o=x;x=0;if(o&1){D=44;break a}f[F>>2]=t;o=JH(F,4)|0;k=r+4|0;l=f[k>>2]|0;m=(l|0)==0;c:do if(!m){i=l+-1|0;j=(i&l|0)==0;if(!j)if(o>>>0>>0)d=o;else d=(o>>>0)%(l>>>0)|0;else d=i&o;b=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!b)D=24;else do{b=f[b>>2]|0;if(!b){D=24;break c}e=f[b+4>>2]|0;if((e|0)!=(o|0)){if(!j){if(e>>>0>=l>>>0)e=(e>>>0)%(l>>>0)|0}else e=e&i;if((e|0)!=(d|0)){D=24;break c}}}while((f[b+8>>2]|0)!=(s|0))}else{d=0;D=24}while(0);if((D|0)==24){D=0;x=0;wa(92,F|0,r|0,o|0,w|0);j=x;x=0;if(j&1){D=44;break a}j=r+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[r+16>>2];do if(m|h*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(g/h))>>>0;x=0;ua(633,r|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){D=31;break a}b=f[k>>2]|0;d=b+-1|0;if(!(d&b)){i=b;d=d&o;break}if(o>>>0>>0){i=b;d=o}else{i=b;d=(o>>>0)%(b>>>0)|0}}else i=l;while(0);b=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!b){b=r+8|0;e=f[F>>2]|0;f[e>>2]=f[b>>2];f[b>>2]=e;f[(f[r>>2]|0)+(d<<2)>>2]=b;b=f[e>>2]|0;if(b|0){b=f[b+4>>2]|0;d=i+-1|0;if(d&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&d;f[(f[r>>2]|0)+(b<<2)>>2]=e}}else{r=f[F>>2]|0;f[r>>2]=f[b>>2];f[b>>2]=r}f[j>>2]=(f[j>>2]|0)+1}p=p+4|0}f0a(E)}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((D|0)==3){u=C;return}else if((D|0)==31){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)Cbb(c)}else if((D|0)==44)b=Ia()|0;else if((D|0)==70){b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)Cbb(c);Ua(b|0)}f0a(E);Ua(b|0)}function Zf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;A=u;u=u+48|0;v=A+36|0;y=A+32|0;r=A+16|0;j=A;i=A+28|0;t=A+12|0;_0a(y,c);z=s8(20)|0;xPa(z);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,109745,j7a(109745)|0);x=0;ia(59,j|0,f[b>>2]|0)|0;w=x;x=0;a:do if(w&1){e=Ia()|0;k=21}else{f[r>>2]=f[j>>2];f[r+4>>2]=f[j+4>>2];f[r+8>>2]=f[j+8>>2];e=0;while(1){if((e|0)==3)break;f[j+(e<<2)>>2]=0;e=e+1|0}x=0;ua(83,v|0,r|0);w=x;x=0;if(w&1){e=Ia()|0;MTa(r);k=21;break}g=f[v>>2]|0;f[z>>2]=g;MTa(r);MTa(j);w=s8(24)|0;mPa(w);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,109756,j7a(109756)|0);x=0;ia(59,j|0,f[b>>2]|0)|0;s=x;x=0;do if(s&1)e=Ia()|0;else{f[r>>2]=f[j>>2];f[r+4>>2]=f[j+4>>2];f[r+8>>2]=f[j+8>>2];e=0;while(1){if((e|0)==3)break;f[j+(e<<2)>>2]=0;e=e+1|0}x=0;ua(83,v|0,r|0);s=x;x=0;if(s&1){e=Ia()|0;MTa(r);break}h=f[v>>2]|0;f[w>>2]=h;MTa(r);MTa(j);f[w+4>>2]=f[b+4>>2];f[w+8>>2]=f[b+8>>2];f[w+12>>2]=0;f[w+16>>2]=g;s=s8(88)|0;dX(s);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,109769,j7a(109769)|0);x=0;ia(59,j|0,f[b>>2]|0)|0;q=x;x=0;do if(q&1)e=Ia()|0;else{f[r>>2]=f[j>>2];f[r+4>>2]=f[j+4>>2];f[r+8>>2]=f[j+8>>2];e=0;while(1){if((e|0)==3)break;f[j+(e<<2)>>2]=0;e=e+1|0}x=0;ua(83,v|0,r|0);q=x;x=0;if(q&1){e=Ia()|0;MTa(r);break}f[s>>2]=f[v>>2];MTa(r);MTa(j);f[d>>2]=f[s>>2];e=jQa(c+144|0)|0;f[e+24>>2]=h;f[i>>2]=f[b+16>>2];f[v>>2]=f[i>>2];b=MI(c,v)|0;i=f[b+12>>2]|0;j=e+8|0;k=s+8|0;l=s+12|0;m=z+8|0;n=z+12|0;o=z+16|0;p=s+16|0;d=f[b+8>>2]|0;while(1){if((d|0)==(i|0))break;q=f[d>>2]|0;f[v>>2]=q;do if((q|0)==2){faa(j,VCa(y,(f[l>>2]|0)-(f[k>>2]|0)>>2)|0);faa(j,ZQ(y,(f[l>>2]|0)-(f[k>>2]|0)>>2)|0);f[r>>2]=1;h=f[n>>2]|0;g=f[o>>2]|0;if(h>>>0>>0){f[h>>2]=1;h=h+4|0;f[n>>2]=h}else{LL(m,r);h=f[n>>2]|0;g=f[o>>2]|0}f[r>>2]=1;if(h>>>0>>0){f[h>>2]=1;f[n>>2]=h+4}else LL(m,r)}else{h=(f[l>>2]|0)-(f[k>>2]|0)>>2;g=f[y>>2]|0;if((q|0)!=3){faa(j,SKa(g,h,q)|0);g=f[n>>2]|0;if((g|0)==(f[o>>2]|0)){LL(m,v);break}else{f[g>>2]=q;f[n>>2]=g+4;break}}g=SKa(g,h,3)|0;faa(j,rBa(f[y>>2]|0,43,g)|0);f[r>>2]=4;g=f[n>>2]|0;if(g>>>0<(f[o>>2]|0)>>>0){f[g>>2]=4;f[n>>2]=g+4}else LL(m,r)}while(0);g=f[l>>2]|0;if((g|0)==(f[p>>2]|0))LL(k,v);else{f[g>>2]=q;f[l>>2]=g+4}d=d+4|0}h=b+4|0;g=f[h>>2]|0;switch(g|0){case 2:{f[e+4>>2]=1;MT(a,c);f[t>>2]=f[33164];f[v>>2]=f[t>>2];g=1;e=gL(y,e,FCa(y,v,1)|0)|0;break}case 3:{f[e+4>>2]=4;g=4;e=rBa(f[y>>2]|0,44,e)|0;break}default:f[e+4>>2]=g}f[s+36>>2]=e;f[z+4>>2]=g;f[s+4>>2]=f[h>>2];Is(c,s);As(c,z);u=A;return w|0}while(0);MTa(j);break a}while(0);MTa(j)}while(0);if((k|0)==21)MTa(j);Ua(e|0);return 0}function _f(a,b){a=a|0;b=b|0;do switch(b|0){case 0:{DCa(a,73940)|0;break}case 1:{DCa(a,73948)|0;break}case 2:{DCa(a,73956)|0;break}case 3:{DCa(a,73964)|0;break}case 4:{DCa(a,73974)|0;break}case 5:{DCa(a,73984)|0;break}case 6:{DCa(a,73994)|0;break}case 7:{DCa(a,74004)|0;break}case 8:{DCa(a,74012)|0;break}case 9:{DCa(a,74019)|0;break}case 10:{DCa(a,74027)|0;break}case 11:{DCa(a,74035)|0;break}case 12:{DCa(a,74045)|0;break}case 13:{DCa(a,74055)|0;break}case 14:{DCa(a,74064)|0;break}case 15:{DCa(a,74073)|0;break}case 16:{DCa(a,74080)|0;break}case 17:{DCa(a,74087)|0;break}case 18:{DCa(a,74096)|0;break}case 19:{DCa(a,74105)|0;break}case 20:{DCa(a,74114)|0;break}case 21:{DCa(a,74123)|0;break}case 22:{DCa(a,74132)|0;break}case 23:{DCa(a,74141)|0;break}case 24:{DCa(a,74150)|0;break}case 25:{DCa(a,74159)|0;break}case 26:{DCa(a,74167)|0;break}case 27:{DCa(a,74175)|0;break}case 28:{DCa(a,74183)|0;break}case 29:{DCa(a,74193)|0;break}case 30:{DCa(a,74203)|0;break}case 31:{DCa(a,74213)|0;break}case 32:{DCa(a,74223)|0;break}case 33:{DCa(a,74231)|0;break}case 34:{DCa(a,74238)|0;break}case 35:{DCa(a,74246)|0;break}case 36:{DCa(a,74254)|0;break}case 37:{DCa(a,74264)|0;break}case 38:{DCa(a,74274)|0;break}case 39:{DCa(a,74283)|0;break}case 40:{DCa(a,74292)|0;break}case 41:{DCa(a,74299)|0;break}case 42:{DCa(a,74306)|0;break}case 43:{DCa(a,74315)|0;break}case 44:{DCa(a,74324)|0;break}case 45:{DCa(a,74333)|0;break}case 46:{DCa(a,74342)|0;break}case 47:{DCa(a,74351)|0;break}case 48:{DCa(a,74360)|0;break}case 49:{DCa(a,74369)|0;break}case 50:{DCa(a,74378)|0;break}case 51:{DCa(a,74386)|0;break}case 52:{DCa(a,74394)|0;break}case 53:{DCa(a,74402)|0;break}case 54:{DCa(a,74410)|0;break}case 55:{DCa(a,74423)|0;break}case 56:{DCa(a,74431)|0;break}case 57:{DCa(a,74439)|0;break}case 58:{DCa(a,74446)|0;break}case 59:{DCa(a,74453)|0;break}case 60:{DCa(a,74460)|0;break}case 61:{DCa(a,74467)|0;break}case 62:{DCa(a,74474)|0;break}case 63:{DCa(a,74481)|0;break}case 64:{DCa(a,74489)|0;break}case 65:{DCa(a,74497)|0;break}case 66:{DCa(a,74505)|0;break}case 67:{DCa(a,74513)|0;break}case 68:{DCa(a,74526)|0;break}case 69:{DCa(a,74534)|0;break}case 70:{DCa(a,74542)|0;break}case 71:{DCa(a,74549)|0;break}case 72:{DCa(a,74556)|0;break}case 73:{DCa(a,74563)|0;break}case 74:{DCa(a,74570)|0;break}case 75:{DCa(a,74577)|0;break}default:hb()}while(0);return}function $f(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+96|0;r=p+84|0;q=p+72|0;i=p+60|0;k=p+48|0;l=p+36|0;m=p+24|0;n=p+12|0;o=p;g=Bc(a,c,e)|0;a:do if((g|0)!=(a|0)){j=Bc(g,c,e)|0;h=e+4|0;if((j|0)==(g|0)){g=f[h>>2]|0;c=0;while(1){if((c|0)==-1)break;r=c+-1|0;OJa(g+(r*24|0)|0);c=r}f[h>>2]=g+-24;break}c=f[h>>2]|0;if(((c-(f[e>>2]|0)|0)/24|0)>>>0>=2){hY(r,c+-24|0);c=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;e=a+-1|0;OJa(c+(e*24|0)|0);a=e}f[h>>2]=c+-24;x=0;ua(3195,q|0,c+-48|0);e=x;x=0;if(e&1)a=Ia()|0;else{a=f[h>>2]|0;e=a+-24|0;c=e+11|0;if((b[c>>0]|0)<0){Z0a(f[e>>2]|0,0);f[a+-20>>2]=0}else{Z0a(e,0);b[c>>0]=0}a=j7a(123310)|0;c=d+11|0;h=b[c>>0]|0;g=d+4|0;if((a|0)==((h<<24>>24<0?f[g>>2]|0:h&255)|0)){x=0;a=ja(102,d|0,123310,a|0)|0;h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}if((a|0)==0?(x=0,ua(3194,e|0,40),h=x,x=0,h&1):0)h=17;else h=18}else h=18;b:do if((h|0)==18){x=0;va(185,o|0,123274,q|0);a=x;x=0;if(a&1)a=Ia()|0;else{x=0;ia(216,o|0,123560)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}a=b[c>>0]|0;s=a<<24>>24<0;x=0;ja(97,n|0,(s?f[d>>2]|0:d)|0,(s?f[g>>2]|0:a&255)|0)|0;a=x;x=0;if(a&1)a=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,m|0,123269)|0;s=x;x=0;if(s&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}s=b[r+11>>0]|0;a=s<<24>>24<0;x=0;ja(97,l|0,(a?f[r>>2]|0:r)|0,(a?f[r+4>>2]|0:s&255)|0)|0;s=x;x=0;if(s&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,k|0,123272)|0;s=x;x=0;do if(s&1)a=Ia()|0;else{f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}s=b[i+11>>0]|0;a=s<<24>>24<0;x=0;ja(97,e|0,(a?f[i>>2]|0:i)|0,(a?f[i+4>>2]|0:s&255)|0)|0;s=x;x=0;if(s&1){a=Ia()|0;MTa(i);break}MTa(i);MTa(k);MTa(l);MTa(m);MTa(n);MTa(o);a=j7a(123310)|0;s=b[c>>0]|0;do if((a|0)==((s<<24>>24<0?f[g>>2]|0:s&255)|0)){x=0;a=ja(102,d|0,123310,a|0)|0;s=x;x=0;if(s&1){s=Ja(0)|0;y2a(s)}if(a|0)break;x=0;ua(3194,e|0,41);s=x;x=0;if(s&1){h=17;break b}}while(0);MTa(q);MTa(r);a=j;break a}while(0);MTa(k)}MTa(l)}MTa(m)}MTa(n)}MTa(o)}}while(0);if((h|0)==17)a=Ia()|0;MTa(q)}MTa(r);Ua(a|0)}}while(0);u=p;return a|0}function ag(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,v=0,w=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;K=u;u=u+96|0;L=K+72|0;k=K+68|0;l=K+64|0;m=K+60|0;N=K+12|0;G=K+56|0;H=K+52|0;I=K+48|0;J=K+44|0;A=K+40|0;B=K+36|0;C=K+4|0;D=K+32|0;E=K+8|0;F=K;q=a+24|0;i=a+28|0;j=f[i>>2]|0;h=f[q>>2]|0;while(1){if((h|0)==(j|0))break;d=f[h>>2]|0;a:do if(!((f[d+8>>2]|0)!=0|(b[c>>0]|0)==0)){f[k>>2]=f[d+4>>2];f[L>>2]=f[k>>2];e=$I(a,L)|0;g=f[e+4>>2]|0;f[l>>2]=f[e>>2];f[L>>2]=f[l>>2];Lp(c,g,L,81759);g=f[e+12>>2]|0;d=f[e+8>>2]|0;while(1){if((d|0)==(g|0))break a;z=f[d>>2]|0;f[m>>2]=f[e>>2];f[L>>2]=f[m>>2];Lp(c,z,L,81807);d=d+4|0}}while(0);h=h+4|0}f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=1065353216;t=f[i>>2]|0;v=N+4|0;w=N+12|0;y=N+16|0;z=N+8|0;s=a+64|0;r=a+88|0;q=f[q>>2]|0;b:while(1){if((q|0)==(t|0)){M=10;break}m=f[q>>2]|0;e=f[m+4>>2]|0;switch(f[m+8>>2]|0){case 0:{f[G>>2]=e;f[L>>2]=f[G>>2];if(!(Xma(a,L)|0)){f[H>>2]=e;f[L>>2]=f[H>>2];d=fna(a,L)|0;if(!d)d=0;else d=(f[d+12>>2]|0)==0}else d=1;f[I>>2]=e;x=0;f[L>>2]=f[I>>2];ma(24,c|0,d|0,L|0,81854,0)|0;m=x;x=0;if(m&1){M=16;break b}break}case 3:{f[J>>2]=e;f[L>>2]=f[J>>2];if(!(gna(a,L)|0)){f[A>>2]=e;f[L>>2]=f[A>>2];d=fna(a,L)|0;if(!d)d=0;else d=(f[d+12>>2]|0)==3}else d=1;f[B>>2]=e;x=0;f[L>>2]=f[B>>2];ma(24,c|0,d|0,L|0,81892,0)|0;m=x;x=0;if(m&1){M=21;break b}break}case 1:{x=0;ua(65,C|0,81928);m=x;x=0;if(m&1){M=27;break b}d=e;if(g2a(d,f[C>>2]|0)|0)d=1;else d=g2a(d,f[s>>2]|0)|0;f[D>>2]=e;x=0;f[L>>2]=f[D>>2];ma(24,c|0,d|0,L|0,81930,0)|0;m=x;x=0;if(m&1){M=27;break b}break}case 2:{x=0;ua(65,C|0,81928);m=x;x=0;if(m&1){M=33;break b}d=e;if(g2a(d,f[C>>2]|0)|0)d=1;else d=g2a(d,f[r>>2]|0)|0;f[E>>2]=e;x=0;f[L>>2]=f[E>>2];ma(24,c|0,d|0,L|0,81965,0)|0;m=x;x=0;if(m&1){M=33;break b}break}default:{M=34;break b}}i=f[f[q>>2]>>2]|0;f[C>>2]=i;m=(sB(N,C)|0)!=0;f[F>>2]=i;x=0;f[L>>2]=f[F>>2];va(119,c|0,m|0,L|0);m=x;x=0;if(m&1){M=71;break}m=W7a(C)|0;h=f[v>>2]|0;l=(h|0)==0;c:do if(!l){j=h+-1|0;k=(j&h|0)==0;if(!k)if(m>>>0>>0)e=m;else e=(m>>>0)%(h>>>0)|0;else e=j&m;d=f[(f[N>>2]|0)+(e<<2)>>2]|0;if(!d)M=51;else do{d=f[d>>2]|0;if(!d){M=51;break c}g=f[d+4>>2]|0;if((g|0)!=(m|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(e|0)){M=51;break c}}}while(!(g2a(f[d+8>>2]|0,i)|0))}else{e=0;M=51}while(0);if((M|0)==51){M=0;x=0;wa(95,L|0,N|0,m|0,C|0);k=x;x=0;if(k&1){M=71;break}o=+(((f[w>>2]|0)+1|0)>>>0);p=+n[y>>2];do if(l|p*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;k=~~+W(+(o/p))>>>0;x=0;ua(680,N|0,(l>>>0>>0?k:l)|0);l=x;x=0;if(l&1){M=58;break b}d=f[v>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&m;break}if(m>>>0>>0){h=d;e=m}else{h=d;e=(m>>>0)%(d>>>0)|0}}while(0);d=f[(f[N>>2]|0)+(e<<2)>>2]|0;if(!d){g=f[L>>2]|0;f[g>>2]=f[z>>2];f[z>>2]=g;f[(f[N>>2]|0)+(e<<2)>>2]=z;d=f[g>>2]|0;if(d|0){d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[N>>2]|0)+(d<<2)>>2]=g}}else{m=f[L>>2]|0;f[m>>2]=f[d>>2];f[d>>2]=m}f[w>>2]=(f[w>>2]|0)+1}q=q+4|0}if((M|0)==10){SQa(N);u=K;return}else if((M|0)==16)d=Ia()|0;else if((M|0)==21)d=Ia()|0;else if((M|0)==27)d=Ia()|0;else if((M|0)==33)d=Ia()|0;else if((M|0)==34){x=0;sa(5);x=0;d=Ia()|0}else if((M|0)==58){d=Ia()|0;e=f[L>>2]|0;f[L>>2]=0;if(e|0)Cbb(e);M=72}else if((M|0)==71){d=Ia()|0;M=72}SQa(N);Ua(d|0)}function bg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+48|0;q=v+36|0;j=v+32|0;k=v+28|0;w=v+16|0;l=v+12|0;m=v+4|0;n=v+8|0;t=v;o=a+4|0;d=eSa(f[o>>2]|0)|0;f[j>>2]=d;f[k>>2]=c;f[w>>2]=0;r=w+4|0;f[r>>2]=0;i=w+8|0;f[i>>2]=0;s=a+112|0;e=0;g=0;h=c;a:while(1){if(e>>>0>=g>>>0){x=0;va(145,w|0,k|0,j|0);g=x;x=0;if(g&1){p=18;break}}else{f[e>>2]=h;f[e+4>>2]=d;f[r>>2]=e+8}f[l>>2]=1;Bab(m);x=0;c=ga(294,h|0)|0;g=x;x=0;if(g&1){p=19;break}do if(c>>>0>1){x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=19;break a}if(V7a(b[c>>0]|0)|0){x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=19;break a}if(!(qRa(c)|0)){x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=19;break a}x=0;c=ga(295,c|0)|0;g=x;x=0;if(g&1){p=19;break a}x=0;c=ia(160,c|0,1)|0;g=x;x=0;if(g&1){p=19;break a}if(c|0){x=0;ua(65,q|0,117249);g=x;x=0;if(g&1){p=23;break a}c=f[q>>2]|0;f[m>>2]=c;break}}f[l>>2]=2;x=0;c=ia(69,h|0,1)|0;g=x;x=0;if(g&1){p=20;break a}x=0;c=ga(295,c|0)|0;g=x;x=0;if(g&1){p=20;break a}L1a(q,c);c=f[q>>2]|0;f[m>>2]=c}else p=24}else p=24;while(0);if((p|0)==24){p=0;x=0;ua(65,q|0,117249);g=x;x=0;if(g&1){p=26;break}c=f[q>>2]|0;f[m>>2]=c}f[n>>2]=c;x=0;f[q>>2]=f[n>>2];c=ia(97,s|0,q|0)|0;g=x;x=0;if(g&1){p=31;break}f[d+8>>2]=c;x=0;c=ia(169,h|0,l|0)|0;g=x;x=0;if(g&1){p=19;break}f[d+4>>2]=c;d=f[l>>2]|0;x=0;c=ga(294,h|0)|0;g=x;x=0;if(g&1){p=19;break}if(d>>>0>=c>>>0){p=40;break}x=0;c=ia(69,h|0,d|0)|0;h=x;x=0;if(h&1){p=37;break}x=0;d=ia(69,c|0,0)|0;h=x;x=0;if(h&1){p=37;break}x=0;d=ga(295,d|0)|0;h=x;x=0;if(h&1){p=37;break}if(!(g2a(d,f[33096]|0)|0)){p=40;break}x=0;d=ga(221,f[o>>2]|0)|0;h=x;x=0;if(h&1){p=37;break}f[j>>2]=d;f[k>>2]=c;e=f[r>>2]|0;g=f[i>>2]|0;h=c}if((p|0)==18)d=Ia()|0;else if((p|0)==19){d=Ia()|0;p=39}else if((p|0)==20){d=Ia()|0;p=39}else if((p|0)==23){d=Ia()|0;p=39}else if((p|0)==26){d=Ia()|0;p=39}else if((p|0)==31){d=Ia()|0;p=39}else if((p|0)==37){d=Ia()|0;p=39}else if((p|0)==40){d=f[w>>2]|0;g=(f[r>>2]|0)-d>>3;b:while(1){i=g+-1|0;if((g|0)<=0){p=42;break}j=f[d+(i<<3)>>2]|0;h=f[d+(i<<3)+4>>2]|0;x=0;d=ga(294,j|0)|0;p=x;x=0;if(p&1){p=53;break}c:do if(d>>>0>1){d=1;while(1){x=0;c=ga(294,j|0)|0;p=x;x=0;if(p&1){p=52;break b}if(d>>>0>=c>>>0)break;x=0;c=ia(69,j|0,d|0)|0;p=x;x=0;if(p&1){p=52;break b}if(!(V7a(b[c>>0]|0)|0))break;d=d+1|0}x=0;c=ga(294,j|0)|0;p=x;x=0;if(p&1){p=53;break b}if(d>>>0>>0){x=0;c=ia(69,j|0,d|0)|0;p=x;x=0;if(p&1){p=53;break b}x=0;c=ia(69,c|0,0)|0;p=x;x=0;if(p&1){p=53;break b}x=0;c=ga(295,c|0)|0;p=x;x=0;if(p&1){p=53;break b}d=d+((g2a(c,f[33109]|0)|0)&1)|0}c=f[w>>2]|0;if((g|0)<((f[r>>2]|0)-c>>3|0)){e=h+12|0;x=0;ua(81,e|0,f[c+(g<<3)+4>>2]|0);p=x;x=0;if(p&1){p=53;break b}d=d+1|0}else e=h+12|0;while(1){x=0;c=ga(294,j|0)|0;p=x;x=0;if(p&1){p=51;break b}if(d>>>0>=c>>>0)break c;x=0;c=ia(69,j|0,d|0)|0;p=x;x=0;if(p&1){p=51;break b}x=0;c=ia(167,a|0,c|0)|0;p=x;x=0;if(p&1){p=51;break b}x=0;ua(81,e|0,c|0);p=x;x=0;if(p&1){p=51;break b}d=d+1|0}}while(0);f[t>>2]=f[h+8>>2];x=0;f[q>>2]=f[t>>2];ua(257,s|0,q|0);p=x;x=0;if(p&1){p=53;break}x=0;ua(1874,h|0,f[h+4>>2]|0);p=x;x=0;if(p&1){p=53;break}g=i;d=f[w>>2]|0}if((p|0)==42){t=f[d+4>>2]|0;zSa(w);u=v;return t|0}else if((p|0)==51)d=Ia()|0;else if((p|0)==52)d=Ia()|0;else if((p|0)==53)d=Ia()|0}zSa(w);Ua(d|0);return 0}function cg(a){a=a|0;var b=0,c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;z=u;u=u+48|0;A=z+36|0;B=z+24|0;D=z+4|0;v=z;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;w=a+44|0;q=a+48|0;y=D+4|0;r=D+12|0;s=D+16|0;t=D+8|0;d=f[w>>2]|0;b=0;a:while(1){if((d|0)==(q|0)){C=3;break}l=d+20|0;p=W7a(l)|0;m=f[y>>2]|0;o=(m|0)==0;b:do if(!o){j=m+-1|0;k=(j&m|0)==0;if(!k)if(p>>>0>>0)c=p;else c=(p>>>0)%(m>>>0)|0;else c=j&p;h=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!h)C=19;else do{h=f[h>>2]|0;if(!h){C=19;break b}i=f[h+4>>2]|0;if((i|0)!=(p|0)){if(!k){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&j;if((i|0)!=(c|0)){C=19;break b}}}while(!(g2a(f[h+8>>2]|0,f[l>>2]|0)|0))}else{c=0;C=19}while(0);if((C|0)==19){C=0;x=0;wa(95,A|0,D|0,p|0,l|0);l=x;x=0;if(l&1){C=45;break}e=+(((f[r>>2]|0)+1|0)>>>0);g=+n[s>>2];do if(o|g*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(680,D|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){C=26;break a}b=f[y>>2]|0;c=b+-1|0;if(!(c&b)){i=b;c=c&p;break}if(p>>>0>>0){i=b;c=p}else{i=b;c=(p>>>0)%(b>>>0)|0}}else i=m;while(0);b=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!b){h=f[A>>2]|0;f[h>>2]=f[t>>2];f[t>>2]=h;f[(f[D>>2]|0)+(c<<2)>>2]=t;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;c=i+-1|0;if(c&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&c;f[(f[D>>2]|0)+(b<<2)>>2]=h}}else{p=f[A>>2]|0;f[p>>2]=f[b>>2];f[b>>2]=p}b=(f[r>>2]|0)+1|0;f[r>>2]=b}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}if((C|0)==3){p=a+56|0;c=0;c:while(1){f[A>>2]=c;if(c>>>0>=(kQa(a)|0)>>>0){C=48;break}if(!(dua(a,c)|0)){while(1){o=b+1|0;x=0;b=ga(226,b|0)|0;q=x;x=0;if(q&1){C=90;break c}f[v>>2]=b;if(!(sB(D,v)|0))break;b=o}x=0;b=ia(151,w|0,A|0)|0;q=x;x=0;if(q&1){C=91;break}f[b>>2]=f[v>>2];b=f[A>>2]|0;x=0;c=ia(153,p|0,v|0)|0;q=x;x=0;if(q&1){C=91;break}f[c>>2]=b;m=W7a(v)|0;h=f[y>>2]|0;l=(h|0)==0;d:do if(!l){j=h+-1|0;k=(j&h|0)==0;if(!k)if(m>>>0>>0)c=m;else c=(m>>>0)%(h>>>0)|0;else c=j&m;b=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!b)C=70;else{i=f[v>>2]|0;do{b=f[b>>2]|0;if(!b){C=70;break d}d=f[b+4>>2]|0;if((d|0)!=(m|0)){if(!k){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){C=70;break d}}}while(!(g2a(f[b+8>>2]|0,i)|0))}}else{c=0;C=70}while(0);if((C|0)==70){C=0;x=0;wa(95,B|0,D|0,m|0,v|0);q=x;x=0;if(q&1){C=91;break}e=+(((f[r>>2]|0)+1|0)>>>0);g=+n[s>>2];do if(l|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(680,D|0,(q>>>0>>0?l:q)|0);q=x;x=0;if(q&1){C=77;break c}b=f[y>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&m;break}if(m>>>0>>0){h=b;c=m}else{h=b;c=(m>>>0)%(b>>>0)|0}}while(0);b=f[(f[D>>2]|0)+(c<<2)>>2]|0;if(!b){d=f[B>>2]|0;f[d>>2]=f[t>>2];f[t>>2]=d;f[(f[D>>2]|0)+(c<<2)>>2]=t;b=f[d>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[D>>2]|0)+(b<<2)>>2]=d}}else{q=f[B>>2]|0;f[q>>2]=f[b>>2];f[b>>2]=q}f[r>>2]=(f[r>>2]|0)+1}b=o;c=f[A>>2]|0}c=c+1|0}if((C|0)==48){SQa(D);u=z;return}else if((C|0)==77){b=Ia()|0;c=f[B>>2]|0;f[B>>2]=0;if(c|0)Cbb(c)}else if((C|0)==90)b=Ia()|0;else if((C|0)==91)b=Ia()|0}else if((C|0)==26){b=Ia()|0;c=f[A>>2]|0;f[A>>2]=0;if(c|0)Cbb(c);C=46}else if((C|0)==45){b=Ia()|0;C=46}SQa(D);Ua(b|0)}function dg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;s=u;u=u+48|0;q=s+32|0;v=s+28|0;p=s+16|0;r=s+12|0;t=s;kMa(v);x=0;d=ia(69,c|0,1)|0;o=x;x=0;a:do if(o&1)d=Ia()|0;else{do if(V7a(b[d>>0]|0)|0){x=0;d=ia(69,c|0,1)|0;o=x;x=0;if(!(o&1)?(x=0,e=ga(295,d|0)|0,o=x,x=0,!(o&1)):0){L1a(q,e);f[f[v>>2]>>2]=f[q>>2];d=2;break}d=Ia()|0;break a}else d=1;while(0);x=0;j=ia(69,c|0,d|0)|0;o=x;x=0;do if(!(o&1)){o=f[v>>2]|0;k=o+8|0;l=o+12|0;m=o+16|0;n=o+4|0;i=1;b:while(1){x=0;d=ga(294,j|0)|0;h=x;x=0;if(h&1){d=14;break}if(i>>>0>=d>>>0){d=12;break}x=0;h=ia(69,j|0,i|0)|0;g=x;x=0;if(g&1){d=22;break}x=0;d=ia(69,h|0,0)|0;g=x;x=0;if(g&1){d=22;break}x=0;d=ga(295,d|0)|0;g=x;x=0;if(g&1){d=22;break}c:do if(!(g2a(d,f[33110]|0)|0)){x=0;d=ia(69,h|0,0)|0;g=x;x=0;if(g&1){d=22;break b}x=0;d=ga(295,d|0)|0;g=x;x=0;if(g&1){d=22;break b}if(g2a(d,f[33109]|0)|0){x=0;d=ga(294,h|0)|0;g=x;x=0;if(g&1){d=22;break b}if(d>>>0>2){d=37;break b}x=0;d=ia(69,h|0,1)|0;h=x;x=0;if(h&1){d=22;break b}x=0;d=ga(295,d|0)|0;h=x;x=0;if(h&1){d=22;break b}x=0;d=ia(160,d|0,0)|0;h=x;x=0;if(h&1){d=22;break b}f[n>>2]=d}}else{g=1;while(1){x=0;d=ga(294,h|0)|0;e=x;x=0;if(e&1){d=23;break b}if(g>>>0>=d>>>0)break c;x=0;d=ia(69,h|0,g|0)|0;e=x;x=0;if(e&1){d=31;break b}x=0;d=ga(295,d|0)|0;e=x;x=0;if(e&1){d=31;break b}x=0;d=ia(160,d|0,0)|0;e=x;x=0;if(e&1){d=31;break b}f[q>>2]=d;e=f[l>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(1872,k|0,q|0);e=x;x=0;if(e&1){d=31;break b}}else{f[e>>2]=d;f[l>>2]=e+4}g=g+1|0}}while(0);i=i+1|0}if((d|0)==12){d=f[o>>2]|0;do if(!(Qab(d)|0)){d=f[a>>2]|0;x=0;d=ga(226,(f[d+4>>2]|0)-(f[d>>2]|0)>>2|0)|0;p=x;x=0;if(p&1){d=Ia()|0;break a}else{f[o>>2]=d;break}}while(0);e=a+24|0;g=f[e>>2]|0;if((g|0)==(f[a+28>>2]|0)){x=0;ua(1503,a+20|0,o|0);p=x;x=0;if(p&1)break}else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}d=f[a>>2]|0;f[r>>2]=f[o>>2];f[q>>2]=f[r>>2];if(!(tma(d,q)|0)){f[v>>2]=0;x=0;ua(1873,d|0,o|0);t=x;x=0;if(t&1)break;f[v>>2]=0;u=s;return}g=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;s=j7a(94806)|0;x=0;va(87,t|0,94806,s|0);s=x;x=0;if(!(s&1)){x=0;wa(138,g|0,t|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(t);if(!e)break a}else d=Ia()|0;La(g|0);break a}else if((d|0)==14){d=Ia()|0;break a}else if((d|0)==22){d=Ia()|0;break a}else if((d|0)==23){d=Ia()|0;break a}else if((d|0)==31){d=Ia()|0;break a}else if((d|0)==37){g=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;t=j7a(94237)|0;x=0;va(87,p|0,94237,t|0);t=x;x=0;if(!(t&1)){x=0;wa(138,g|0,p|0,f[h+28>>2]|0,f[h+32>>2]|0);t=x;x=0;if(t&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(p);if(!e)break a}else d=Ia()|0;La(g|0);break a}}while(0);d=Ia()|0}while(0);e=f[v>>2]|0;f[v>>2]=0;if(e|0){T_a(e);Cbb(e)}Ua(d|0)}function eg(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=u;u=u+16|0;n=o;if(a){m=YTa(d,135112)|0;if(c){pc[f[(f[m>>2]|0)+44>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+32>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){Z0a(f[k>>2]|0,0);f[k+4>>2]=0}else{Z0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);a=m}else{pc[f[(f[m>>2]|0)+40>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+28>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){Z0a(f[k>>2]|0,0);f[k+4>>2]=0}else{Z0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);a=m}d=bc[f[(f[m>>2]|0)+12>>2]&511](m)|0;b[g>>0]=d;d=bc[f[(f[m>>2]|0)+16>>2]&511](m)|0;b[h>>0]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](n,m);d=i+11|0;if((b[d>>0]|0)<0){Z0a(f[i>>2]|0,0);f[i+4>>2]=0}else{Z0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);pc[f[(f[a>>2]|0)+24>>2]&4095](n,m);d=j+11|0;if((b[d>>0]|0)<0){Z0a(f[j>>2]|0,0);f[j+4>>2]=0}else{Z0a(j,0);b[d>>0]=0}x=0;ta(470,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;y2a(i)}f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);d=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0}else{m=YTa(d,135104)|0;if(c){pc[f[(f[m>>2]|0)+44>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+32>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){Z0a(f[k>>2]|0,0);f[k+4>>2]=0}else{Z0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);a=m}else{pc[f[(f[m>>2]|0)+40>>2]&4095](n,m);d=f[n>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[m>>2]|0)+28>>2]&4095](n,m);d=k+11|0;if((b[d>>0]|0)<0){Z0a(f[k>>2]|0,0);f[k+4>>2]=0}else{Z0a(k,0);b[d>>0]=0}x=0;ta(470,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[n>>2];f[k+4>>2]=f[n+4>>2];f[k+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);a=m}d=bc[f[(f[m>>2]|0)+12>>2]&511](m)|0;b[g>>0]=d;d=bc[f[(f[m>>2]|0)+16>>2]&511](m)|0;b[h>>0]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](n,m);d=i+11|0;if((b[d>>0]|0)<0){Z0a(f[i>>2]|0,0);f[i+4>>2]=0}else{Z0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);pc[f[(f[a>>2]|0)+24>>2]&4095](n,m);d=j+11|0;if((b[d>>0]|0)<0){Z0a(f[j>>2]|0,0);f[j+4>>2]=0}else{Z0a(j,0);b[d>>0]=0}x=0;ta(470,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;y2a(i)}f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];d=0;while(1){if((d|0)==3)break;f[n+(d<<2)>>2]=0;d=d+1|0}MTa(n);d=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0}f[l>>2]=d;u=o;return}function fg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;r=t;f[r>>2]=c;p=d+1|0;g=a+68|0;d=Wz(g,r)|0;a:do if(!d){q=a+36|0;if(!(Wz(q,r)|0)){b:do switch(f[c>>2]|0){case 4:case 0:break;case 1:{d=f[f[c+4>>2]>>2]|0;if(O6a(d)|0)break a;do if(p>>>0<(f[a+12>>2]|0)>>>0?(f[a+28>>2]|0)-(f[a+24>>2]|0)>>2>>>0<(f[a+16>>2]|0)>>>0:0){if((f[a+4>>2]|0)!=(c|0)?Wz(f[a+8>>2]|0,r)|0:0)break;if(u6a(d)|0)Ca(75905,73170,249,93092);d=0;while(1){if(d>>>0>=(f[c+16>>2]|0)-(f[c+12>>2]|0)>>2>>>0)break b;fg(a,eQa(c,d)|0,p)|0;d=d+1|0;c=f[r>>2]|0}}while(0);c=tT(c)|0;if(!(v2a(c)|0))Ca(75884,73170,242,93092);e=ARa(c)|0;x=0;c=ia(116,g|0,r|0)|0;p=x;x=0;if(p&1){c=Ia()|0;if(e|0){I_a(e);Cbb(e)}Ua(c|0)}else{d=f[c>>2]|0;f[c>>2]=e;if(d|0){I_a(d);Cbb(d)}f[r>>2]=e;break b}}case 2:{e=fg(a,eQa(c,0)|0,p)|0;if(!e)Ca(117249,73170,257,93092);g=(f[e+16>>2]|0)-(f[e+12>>2]|0)>>2;j=a+120|0;k=a+112|0;l=a+116|0;m=a+108|0;d=0;while(1){if((d|0)==(g|0))break;c=eQa(e,d)|0;f[s>>2]=c;o=c;do if(!(Aab(f[c>>2]|0)|0)){if(b[j>>0]|0){fg(a,c,p)|0;break}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){LL(m,s);break}else{f[c>>2]=o;f[k>>2]=(f[k>>2]|0)+4;break}}while(0);d=d+1|0}d=g+1|0;c=1;while(1){if(c>>>0>=d>>>0)break b;fg(a,eQa(f[r>>2]|0,c)|0,p)|0;c=c+1|0}}case 3:{fg(a,eQa(c,0)|0,p)|0;fg(a,eQa(f[r>>2]|0,1)|0,p)|0;break}case 5:{fg(a,eQa(c,0)|0,p)|0;break}case 6:{b[a+20>>0]=1;c=0;break a}default:hb()}while(0);if(Wz(q,r)|0)Ca(75933,73170,298,93092);c=a+28|0;d=f[c>>2]|0;if((d|0)==(f[a+32>>2]|0)){LL(a+24|0,r);c=r}else{f[d>>2]=f[r>>2];f[c>>2]=(f[c>>2]|0)+4;c=r}c=f[c>>2]|0;f[s>>2]=c;p=JH(s,4)|0;l=a+40|0;m=f[l>>2]|0;o=(m|0)==0;c:do if(!o){j=m+-1|0;k=(j&m|0)==0;if(!k)if(p>>>0>>0)d=p;else d=(p>>>0)%(m>>>0)|0;else d=j&p;e=f[(f[q>>2]|0)+(d<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break c;g=f[e+4>>2]|0;if((g|0)!=(p|0)){if(!k){if(g>>>0>=m>>>0)g=(g>>>0)%(m>>>0)|0}else g=g&j;if((g|0)!=(d|0))break c}if((f[e+8>>2]|0)==(c|0))break a}}else d=0;while(0);W6(s,q,p,r);j=a+48|0;h=+(((f[j>>2]|0)+1|0)>>>0);i=+n[a+52>>2];do if(o|i*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;m=~~+W(+(h/i))>>>0;x=0;ua(632,q|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){g=c;d=d&p;break}if(p>>>0>>0){g=c;d=p}else{g=c;d=(p>>>0)%(c>>>0)|0}}else g=m;while(0);c=f[(f[q>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+44|0;e=f[s>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=e;f[(f[q>>2]|0)+(d<<2)>>2]=c;c=f[e>>2]|0;if(!c)c=s;else{c=f[c+4>>2]|0;d=g+-1|0;if(d&g){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&d;f[(f[q>>2]|0)+(c<<2)>>2]=e;c=s}}else{q=f[s>>2]|0;f[q>>2]=f[c>>2];f[c>>2]=q;c=s}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;c=f[r>>2]|0}}else c=f[d+12>>2]|0;while(0);u=t;return c|0}function gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;C=u;u=u+144|0;B=C+92|0;G=C+80|0;H=C+36|0;F=C+24|0;D=C+12|0;E=C;a=f[b+24>>2]|0;if((a|0)<=2?(f[b+28>>2]|0)<=0:0){n=c+36|0;a=(a|0)>1?10:1;m=n;z=c+40|0}else{n=c+36|0;z=c+40|0;a=(f[z>>2]|0)-(f[n>>2]|0)>>2;m=n}o=c+36|0;p=F+4|0;q=D+8|0;r=c+76|0;s=c+80|0;t=D+4|0;v=c+116|0;w=c+24|0;y=c+28|0;a:while(1){if(!a){b=72;break}a=a+-1|0;xP(G,c);rza(H,c);p4a(H);x=0;ua(2772,H|0,G|0);l=x;x=0;if(l&1){b=12;break}x=0;ta(438,H|0);l=x;x=0;if(l&1){b=12;break}DUa(F);i=f[z>>2]|0;h=f[o>>2]|0;while(1){if((h|0)==(i|0))break;f[B>>2]=f[h>>2];x=0;b=ia(197,G|0,B|0)|0;l=x;x=0;if(l&1){b=19;break a}x=0;b=ia(198,F|0,b|0)|0;l=x;x=0;if(l&1){b=19;break a}d=f[h>>2]|0;f[D>>2]=d;e=b+4|0;g=f[e>>2]|0;if(g>>>0>=(f[b+8>>2]|0)>>>0){x=0;ua(2773,b|0,D|0);l=x;x=0;if(l&1){b=20;break a}}else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}h=h+4|0}DUa(D);DUa(E);d=f[F>>2]|0;while(1){if((d|0)==(p|0))break;i=d+20|0;l=(f[d+24>>2]|0)-(f[i>>2]|0)|0;j=l>>2;b:do if((l|0)!=4){k=j+-1|0;h=0;while(1){if(h>>>0>=k>>>0)break b;l=f[(f[i>>2]|0)+(h<<2)>>2]|0;c:do if(!(P5(E,l)|0)){b=h;while(1){b=b+1|0;if(b>>>0>=j>>>0)break c;g=f[(f[i>>2]|0)+(b<<2)>>2]|0;if(!(P5(E,g)|0)){x=0;e=ia(199,l|0,g|0)|0;I=x;x=0;if(I&1){b=31;break a}if(e){x=0;e=ia(187,D|0,g|0)|0;I=x;x=0;if(I&1){b=31;break a}f[e>>2]=f[l>>2];x=0;wa(82,B|0,E|0,g|0,g|0);I=x;x=0;if(I&1){b=31;break a}}}}}while(0);h=h+1|0}}while(0);b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}if(!(f[q>>2]|0)){b=68;break}I=BD(f[m>>2]|0,f[z>>2]|0,E)|0;sN(n,I,f[z>>2]|0);x=0;ta(486,c|0);I=x;x=0;if(I&1){b=52;break}rza(B,c);p4a(B);x=0;ua(2774,B|0,D|0);I=x;x=0;if(I&1){b=67;break}x=0;ta(438,B|0);I=x;x=0;if(I&1){b=67;break}e=f[s>>2]|0;d=f[r>>2]|0;while(1){if((d|0)==(e|0))break;g=f[d+8>>2]|0;b=f[d+4>>2]|0;while(1){if((b|0)==(g|0))break;h=t_(D,b)|0;if((h|0)!=(t|0))f[b>>2]=f[h+20>>2];b=b+4|0}d=d+16|0}if(Qab(f[v>>2]|0)|0?(A=t_(D,v)|0,(A|0)!=(t|0)):0)f[v>>2]=f[A+20>>2];d=f[y>>2]|0;b=f[w>>2]|0;while(1){if((b|0)==(d|0))break;e=(f[b>>2]|0)+4|0;g=t_(D,e)|0;if((g|0)!=(t|0))f[e>>2]=f[g+20>>2];b=b+4|0}Wca(B);RTa(E);pHa(D);Oya(F);Wca(H);rGa(G)}if((b|0)==12)a=Ia()|0;else if((b|0)==19){a=Ia()|0;b=21}else if((b|0)==20){a=Ia()|0;b=21}else if((b|0)==31){a=Ia()|0;b=69}else if((b|0)==52){a=Ia()|0;b=69}else if((b|0)==67){a=Ia()|0;Wca(B);b=69}else if((b|0)==68){RTa(E);pHa(D);Oya(F);Wca(H);rGa(G);b=72}if((b|0)==21)b=70;else if((b|0)==69){RTa(E);pHa(D);b=70}else if((b|0)==72){u=C;return}if((b|0)==70)Oya(F);Wca(H);rGa(G);Ua(a|0)}function hg(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;n=u;u=u+16|0;m=n;if(a){a=YTa(d,135128)|0;if(c){pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){L1a(f[k>>2]|0,0);f[k+4>>2]=0}else{L1a(k,0);b[d>>0]=0}x=0;ta(516,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}oTa(m)}else{pc[f[(f[a>>2]|0)+40>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){L1a(f[k>>2]|0,0);f[k+4>>2]=0}else{L1a(k,0);b[d>>0]=0}x=0;ta(516,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}oTa(m)}d=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[g>>2]=d;d=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[h>>2]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);d=i+11|0;if((b[d>>0]|0)<0){Z0a(f[i>>2]|0,0);f[i+4>>2]=0}else{Z0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}MTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);d=j+8+3|0;if((b[d>>0]|0)<0){L1a(f[j>>2]|0,0);f[j+4>>2]=0}else{L1a(j,0);b[d>>0]=0}x=0;ta(516,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;y2a(i)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}oTa(m);d=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}else{a=YTa(d,135120)|0;if(c){pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){L1a(f[k>>2]|0,0);f[k+4>>2]=0}else{L1a(k,0);b[d>>0]=0}x=0;ta(516,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}oTa(m)}else{pc[f[(f[a>>2]|0)+40>>2]&4095](m,a);d=f[m>>2]|0;b[e>>0]=d;b[e+1>>0]=d>>8;b[e+2>>0]=d>>16;b[e+3>>0]=d>>24;pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);d=k+8+3|0;if((b[d>>0]|0)<0){L1a(f[k>>2]|0,0);f[k+4>>2]=0}else{L1a(k,0);b[d>>0]=0}x=0;ta(516,k|0);e=x;x=0;if(e&1){e=Ja(0)|0;y2a(e)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}oTa(m)}d=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[g>>2]=d;d=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[h>>2]=d;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);d=i+11|0;if((b[d>>0]|0)<0){Z0a(f[i>>2]|0,0);f[i+4>>2]=0}else{Z0a(i,0);b[d>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}MTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);d=j+8+3|0;if((b[d>>0]|0)<0){L1a(f[j>>2]|0,0);f[j+4>>2]=0}else{L1a(j,0);b[d>>0]=0}x=0;ta(516,j|0);i=x;x=0;if(i&1){i=Ja(0)|0;y2a(i)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}oTa(m);d=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}f[l>>2]=d;u=n;return}function ig(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:do if(c>>>0>36){f[33448]=22;g=0;e=0}else{s=a+4|0;r=a+100|0;do{i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0}while((w6a(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=f[s>>2]|0;if(j>>>0<(f[r>>2]|0)>>>0){f[s>>2]=j+1;q=i;i=h[j>>0]|0;break b}else{q=i;i=eF(a)|0;break b}}default:q=0}while(0);j=(c|0)==0;do if((c|16|0)==16&(i|0)==48){i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0;if((i|32|0)!=120)if(j){p=8;o=47;break}else{o=32;break}i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0;if((h[28049+i>>0]|0)>15){e=(f[r>>2]|0)==0;if(!e)f[s>>2]=(f[s>>2]|0)+-1;if(!d){zna(a,0);g=0;e=0;break a}if(e){g=0;e=0;break a}f[s>>2]=(f[s>>2]|0)+-1;g=0;e=0;break a}else{p=16;o=47}}else{c=j?10:c;if(c>>>0>(h[28049+i>>0]|0)>>>0)o=32;else{if(f[r>>2]|0)f[s>>2]=(f[s>>2]|0)+-1;zna(a,0);f[33448]=22;g=0;e=0;break a}}while(0);c:do if((o|0)==32)if((c|0)==10){c=i+-48|0;if(c>>>0<10){i=0;do{i=(i*10|0)+c|0;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;j=h[c>>0]|0}else j=eF(a)|0;c=j+-48|0;d=c>>>0<10}while(d&i>>>0<429496729);if(d){m=0;do{d=GBa(i|0,m|0,10,0)|0;k=I;l=((c|0)<0)<<31>>31;p=~l;if(k>>>0>p>>>0|(k|0)==(p|0)&d>>>0>~c>>>0){n=10;c=j;j=m;o=76;break c}i=BOa(d|0,k|0,c|0,l|0)|0;m=I;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;j=h[c>>0]|0}else j=eF(a)|0;c=j+-48|0}while(c>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(c>>>0>9){d=q;c=m}else{n=10;c=j;j=m;o=76}}else{d=q;c=0}}else{d=q;c=0;i=0}}else{p=c;o=47}while(0);d:do if((o|0)==47){if(!(p+-1&p)){n=b[118720+((p*23|0)>>>5&7)>>0]|0;d=b[28049+i>>0]|0;j=d&255;if(p>>>0>j>>>0){i=0;do{i=j|i<>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0;d=b[28049+c>>0]|0;j=d&255}while(i>>>0<134217728&p>>>0>j>>>0);k=j;j=0}else{c=i;k=j;j=0;i=0}l=JMa(-1,-1,n|0)|0;m=I;if(p>>>0<=k>>>0|(m>>>0>>0|(m|0)==(j|0)&l>>>0>>0)){n=p;o=76;break}while(1){i=mMa(i|0,j|0,n|0)|0;j=I;i=i|d&255;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0;d=b[28049+c>>0]|0;if(p>>>0<=(d&255)>>>0|(j>>>0>m>>>0|(j|0)==(m|0)&i>>>0>l>>>0)){n=p;o=76;break d}}}j=b[28049+i>>0]|0;d=j&255;if(p>>>0>d>>>0){i=0;do{i=d+(X(i,p)|0)|0;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0;j=b[28049+c>>0]|0;d=j&255}while(i>>>0<119304647&p>>>0>d>>>0);k=0}else{c=i;i=0;k=0}if(p>>>0>d>>>0){m=yYa(-1,-1,p|0,0)|0;n=I;l=k;while(1){if(l>>>0>n>>>0|(l|0)==(n|0)&i>>>0>m>>>0){n=p;j=l;o=76;break d}d=GBa(i|0,l|0,p|0,0)|0;k=I;j=j&255;if(k>>>0>4294967295|(k|0)==-1&d>>>0>~j>>>0){n=p;j=l;o=76;break d}i=BOa(d|0,k|0,j|0,0)|0;d=I;c=f[s>>2]|0;if(c>>>0<(f[r>>2]|0)>>>0){f[s>>2]=c+1;c=h[c>>0]|0}else c=eF(a)|0;j=b[28049+c>>0]|0;if(p>>>0<=(j&255)>>>0){n=p;j=d;o=76;break}else l=d}}else{n=p;j=k;o=76}}while(0);if((o|0)==76)if(n>>>0>(h[28049+c>>0]|0)>>>0){do{i=f[s>>2]|0;if(i>>>0<(f[r>>2]|0)>>>0){f[s>>2]=i+1;i=h[i>>0]|0}else i=eF(a)|0}while(n>>>0>(h[28049+i>>0]|0)>>>0);f[33448]=34;d=(e&1|0)==0&0==0?q:0;c=g;i=e}else{d=q;c=j}if(f[r>>2]|0)f[s>>2]=(f[s>>2]|0)+-1;if(!(c>>>0>>0|(c|0)==(g|0)&i>>>0>>0)){if(!((e&1|0)!=0|0!=0|(d|0)!=0)){f[33448]=34;e=BOa(e|0,g|0,-1,-1)|0;g=I;break}if(c>>>0>g>>>0|(c|0)==(g|0)&i>>>0>e>>>0){f[33448]=34;break}}e=((d|0)<0)<<31>>31;e=SRa(i^d|0,c^e|0,d|0,e|0)|0;g=I}while(0);I=g;return e|0}function jg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+64|0;A=C+32|0;D=C+16|0;y=C+12|0;B=C;a:do if((c-a|0)>1?(b[a>>0]|0)==73:0){w=d+61|0;v=d+36|0;if(b[w>>0]|0){h=f[v>>2]|0;g=f[h+-16>>2]|0;h=h+-12|0;e=f[h>>2]|0;while(1){if((e|0)==(g|0))break;z=e+-16|0;aY(z);e=z}f[h>>2]=g}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;qW(D,123308,j7a(123308)|0);z=d+4|0;n=d+12|0;o=d+40|0;p=d+32|0;s=D+11|0;t=D+4|0;q=A+11|0;r=A+4|0;i=a+1|0;b:while(1){if((b[i>>0]|0)==69){g=55;break}if(b[w>>0]|0){f[y>>2]=f[n>>2];e=f[v>>2]|0;if(e>>>0>=(f[o>>2]|0)>>>0){x=0;ua(3200,p|0,y|0);m=x;x=0;if(m&1){g=16;break}}else{m0a(A,y);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=f[A>>2];f[v>>2]=(f[v>>2]|0)+16}}l=((f[z>>2]|0)-(f[d>>2]|0)|0)/24|0;x=0;m=ja(104,i|0,c|0,d|0)|0;k=x;x=0;if(k&1){g=23;break}g=((f[z>>2]|0)-(f[d>>2]|0)|0)/24|0;if(b[w>>0]|0){h=f[v>>2]|0;e=0;while(1){if((e|0)==-1)break;k=e+-1|0;lT(h+(k<<4)|0);e=k}f[v>>2]=h+-16}if((m|0)==(i|0)|(m|0)==(c|0)){g=66;break}c:do if(b[w>>0]|0){h=f[v>>2]|0;e=f[n>>2]|0;f[A>>2]=e;i=h+-12|0;j=f[i>>2]|0;if(j>>>0>=(f[h+-8>>2]|0)>>>0){x=0;ua(3201,h+-16|0,A|0);k=x;x=0;if(k&1){g=32;break b}}else{f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=e;f[i>>2]=(f[i>>2]|0)+16}e=l;while(1){if(e>>>0>=g>>>0)break c;h=f[(f[v>>2]|0)+-12>>2]|0;i=(f[d>>2]|0)+(e*24|0)|0;j=h+-12|0;k=f[j>>2]|0;if((k|0)==(f[h+-8>>2]|0)){x=0;ua(3202,h+-16|0,i|0);k=x;x=0;if(k&1){g=38;break b}}else{x=0;ua(3199,k|0,i|0);k=x;x=0;if(k&1){g=38;break b}f[j>>2]=(f[j>>2]|0)+24}e=e+1|0}}while(0);e=l;while(1){if(e>>>0>=g>>>0)break;k=b[s>>0]|0;if((k<<24>>24<0?f[t>>2]|0:k&255)>>>0>1?(x=0,ia(216,D|0,123496)|0,k=x,x=0,k&1):0){g=43;break b}x=0;ua(3195,A|0,(f[d>>2]|0)+(e*24|0)|0);k=x;x=0;if(k&1){g=47;break b}k=b[q>>0]|0;j=k<<24>>24<0;x=0;ja(97,D|0,(j?f[A>>2]|0:A)|0,(j?f[r>>2]|0:k&255)|0)|0;k=x;x=0;if(k&1){g=48;break b}MTa(A);e=e+1|0}while(1){if((g|0)==(l|0))break;h=f[z>>2]|0;e=0;while(1){if((e|0)==-1)break;k=e+-1|0;OJa(h+(k*24|0)|0);e=k}f[z>>2]=h+-24;g=g+-1|0}i=m}do if((g|0)==16)a=Ia()|0;else if((g|0)==23)a=Ia()|0;else if((g|0)==32)a=Ia()|0;else if((g|0)==38)a=Ia()|0;else if((g|0)==43)a=Ia()|0;else if((g|0)==47){a=Ia()|0;g=49}else if((g|0)==48){a=Ia()|0;MTa(A);g=49}else if((g|0)==55){a=i+1|0;y=b[s>>0]|0;w=y<<24>>24<0;if((b[(w?f[D>>2]|0:D)+(w?f[t>>2]|0:y&255)+-1>>0]|0)==62){x=0;ia(216,D|0,124687)|0;y=x;x=0;if(y&1)g=57}else{x=0;ia(216,D|0,123310)|0;y=x;x=0;if(y&1)g=57}if((g|0)==57){a=Ia()|0;break}f[B>>2]=f[D>>2];f[B+4>>2]=f[D+4>>2];f[B+8>>2]=f[D+8>>2];e=0;while(1){if((e|0)==3)break;f[D+(e<<2)>>2]=0;e=e+1|0}RY(A,B);e=f[z>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,A|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(A);MTa(B);break}}else{CY(e,A);f[z>>2]=(f[z>>2]|0)+24}OJa(A);MTa(B);MTa(D);break a}else if((g|0)==66){MTa(D);break a}while(0);MTa(D);Ua(a|0)}while(0);u=C;return a|0}function kg(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)Ca(110558,115840,78,110563);do switch(f[c>>2]|0){case 1:{Mk(a,b,c);break}case 2:{Vr(a,b,c);break}case 3:{cN(a,b,c);break}case 4:{jo(a,b,c);break}case 5:{jq(a,b,c);break}case 6:{Ur(a,b,c);break}case 7:{Ws(a,b,c);break}case 8:{zo(a,b,c);break}case 9:{yX(a,f[f[b+8>>2]>>2]|0,f[c+8>>2]|0);break}case 10:{Bt(a,b,c);break}case 11:{bG(a,f[b+4>>2]|0,c);break}case 12:{lz(a,b,c);break}case 13:{rt(a,b,c);break}case 14:{op(a,b,c);break}case 24:{gj(a,b,c);break}case 25:{el(a,b,c);break}case 26:{il(a,b,c);break}case 27:{ht(a,b,c);break}case 15:{W8(a,c);break}case 16:{yd(a,b,c);break}case 17:{_c(a,b,c);break}case 18:{_o(a,b,c);break}case 19:{mG(a,b,f[c+8>>2]|0);break}case 20:{HF(a,b,c);break}case 21:{qj(a,b,c);break}case 22:{QXa(a);break}case 23:{oPa(b);break}default:hb()}while(0);return}function lg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+112|0;s=p+40|0;l=p+36|0;q=p+24|0;r=p+12|0;m=p+8|0;n=p+4|0;o=p;zx(s,f[a>>2]|0);x=0;ta(462,s|0);k=x;x=0;if(k&1)a=Ia()|0;else{f[l>>2]=-1;f[q>>2]=0;h=q+4|0;f[h>>2]=0;i=q+8|0;f[i>>2]=0;f[r>>2]=0;j=r+4|0;f[j>>2]=0;k=r+8|0;f[k>>2]=0;e=a+8|0;g=s+44|0;b=0;a:while(1){f[m>>2]=b;d=f[e>>2]|0;a=f[d>>2]|0;if(b>>>0>=(f[d+4>>2]|0)-a>>2>>>0){d=4;break}d=f[a+(b<<2)>>2]|0;b:do if(d|0){x=0;a=ga(317,d|0)|0;c=x;x=0;if(c&1){d=12;break a}c=f[q>>2]|0;while(1){if(!a)break;b=f[h>>2]|0;if((b|0)==(c|0)){d=11;break a}while(1){b=b+-4|0;if((f[b>>2]|0)==-1)break;if((c|0)==(b|0)){d=18;break a}}f[h>>2]=b;a=a+-1|0}a=f[d>>2]|0;do if(nPa(a)|0){a=f[j>>2]|0;if((a|0)==(f[k>>2]|0)){x=0;ua(2103,r|0,q|0);c=x;x=0;if(c&1){d=12;break a}}else{x=0;ua(1408,a|0,q|0);c=x;x=0;if(c&1){d=12;break a}f[j>>2]=(f[j>>2]|0)+12}f[h>>2]=f[q>>2]}else{if(!(IPa(a)|0)){if(!(Qab(a)|0))break;f[h>>2]=c;break}a=f[j>>2]|0;if((f[r>>2]|0)==(a|0)){d=28;break a}b=a+-12|0;if((q|0)==(b|0))b=a;else{x=0;va(127,q|0,f[b>>2]|0,f[a+-8>>2]|0);c=x;x=0;if(c&1){d=12;break a}b=f[j>>2]|0}a=0;while(1){if((a|0)==-1)break;c=a+-1|0;zSa(b+(c*12|0)|0);a=c}f[j>>2]=b+-12}while(0);a=f[d+8>>2]|0;if(!(v2a(a)|0)){if(!((d6a(f[f[d+4>>2]>>2]|0)|0)&(a|0)==0))break;a=f[h>>2]|0;if((a|0)==(f[i>>2]|0)){x=0;ua(524,q|0,m|0);d=x;x=0;if(d&1){d=12;break a}else break}else{f[a>>2]=f[m>>2];f[h>>2]=a+4;break}}d=U_a(f[d+4>>2]|0)|0;f[n>>2]=d;do if(d){b=f[q>>2]|0;a=(f[h>>2]|0)-b|0;if(!a)break;a=a>>2;while(1){a=a+-1|0;c=f[b+(a<<2)>>2]|0;if((c|0)==-1){d=43;break}x=0;b=ga(257,f[(f[(f[f[e>>2]>>2]|0)+(c<<2)>>2]|0)+4>>2]|0)|0;d=x;x=0;if(d&1){d=53;break a}f[o>>2]=b;if((f[b+8>>2]|0)==(f[(f[n>>2]|0)+8>>2]|0)){x=0;b=ia(103,s|0,n|0)|0;d=x;x=0;if(d&1){d=54;break a}if((f[b+8>>2]|0)==1?(f[(f[b>>2]|0)+16>>2]|0)==(f[o>>2]|0):0){x=0;b=ia(180,g|0,o|0)|0;d=x;x=0;if(d&1){d=55;break a}if((f[b+12>>2]|0)==1){d=51;break}}}if(!a){d=57;break}b=f[q>>2]|0}if((d|0)==43)break;else if((d|0)==51){if((f[(f[b+8>>2]|0)+8>>2]|0)!=(f[n>>2]|0)){d=52;break a}f[(f[f[e>>2]>>2]|0)+(c<<2)>>2]=0;f[(f[f[e>>2]>>2]|0)+(f[m>>2]<<2)>>2]=0;f[(f[q>>2]|0)+(a<<2)>>2]=-1;break b}else if((d|0)==57)break}while(0);a=f[h>>2]|0;if((a|0)==(f[i>>2]|0)){x=0;ua(524,q|0,l|0);d=x;x=0;if(d&1){d=66;break a}else break}else{f[a>>2]=f[l>>2];f[h>>2]=a+4;break}}while(0);b=(f[m>>2]|0)+1|0}switch(d|0){case 4:{R9(r);zSa(q);zV(s);u=p;return}case 11:{x=0;wa(71,103082,103100,166,103125);x=0;d=13;break}case 12:{a=Ia()|0;d=14;break}case 18:{f[h>>2]=b;x=0;wa(71,103082,103100,171,103125);x=0;d=13;break}case 28:{x=0;wa(71,103137,103100,184,103125);x=0;d=13;break}case 52:{x=0;wa(71,103158,103100,211,103125);x=0;a=Ia()|0;d=59;break}case 53:{a=Ia()|0;d=59;break}case 54:{a=Ia()|0;d=59;break}case 55:{a=Ia()|0;d=59;break}case 66:{a=Ia()|0;break}}if((d|0)==13){a=Ia()|0;d=14}R9(r);zSa(q)}zV(s);Ua(a|0)}function mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+80|0;s=p+16|0;i=p;q=p+60|0;j=f[a+60>>2]|0;o=a+136|0;k=a+52|0;h=f[a+56>>2]|0;while(1){if((h|0)==(j|0))break;g=f[h>>2]|0;pha(g,f[o>>2]|0);e=f[h>>2]|0;a:do if((e|0)==(f[k>>2]|0)){d=0;while(1){c=f[o>>2]|0;if(d>>>0>=c>>>0)break;if(KVa(b,d)|0)c=bTa(a)|0;else{lUa(i,s9(b,d)|0);f[s>>2]=f[i>>2];f[s+4>>2]=f[i+4>>2];f[s+8>>2]=f[i+8>>2];f[s+12>>2]=f[i+12>>2];c=CT(a,s)|0}f[(f[g>>2]|0)+(d<<2)>>2]=c;d=d+1|0}e=f[h>>2]|0}else{d=0;while(1){c=f[o>>2]|0;if(d>>>0>=c>>>0)break a;f[(f[g>>2]|0)+(d<<2)>>2]=0;d=d+1|0}}while(0);d=e+12|0;pha(d,c);c=0;while(1){if(c>>>0>=(f[o>>2]|0)>>>0)break;f[(f[d>>2]|0)+(c<<2)>>2]=0;c=c+1|0}h=h+4|0}vra(s);x=0;ua(1406,s|0,f[k>>2]|0);n=x;x=0;do if(n&1)c=Ia()|0;else{m=q+4|0;n=q+4|0;l=s+20|0;b:while(1){if(s$a(f[l>>2]|0)|0){r=73;break}x=0;k=ga(288,s|0)|0;j=x;x=0;if(j&1){r=27;break}c=k+48|0;d=f[c>>2]|0;e=f[k+52>>2]|0;do if((d|0)!=(e|0)){if((e-d|0)==4){c=f[d>>2]|0;d=c+12|0;if((k|0)==(d|0))break;x=0;va(127,k|0,f[d>>2]|0,f[c+16>>2]|0);j=x;x=0;if(j&1){r=27;break b}else break}x=0;ua(1407,q|0,c|0);j=x;x=0;if(j&1){r=32;break b}j=f[q>>2]|0;i=0;while(1){if(i>>>0>=(f[o>>2]|0)>>>0)break;d=(f[k>>2]|0)+(i<<2)|0;if(!(DQ(a,k,i,f[d>>2]|0)|0)){h=f[m>>2]|0;c=f[(f[(f[j>>2]|0)+12>>2]|0)+(i<<2)>>2]|0;e=j;c:while(1){b=(c|0)==0;while(1){e=e+4|0;if((e|0)==(h|0))break c;g=f[(f[(f[e>>2]|0)+12>>2]|0)+(i<<2)>>2]|0;if(b)break;if(!((c|0)==(g|0)|(g|0)==0)){r=40;break c}}c=g}if((r|0)==40){r=0;x=0;c=ja(66,a|0,k|0,i|0)|0;b=x;x=0;if(b&1){r=44;break b}d=(f[k>>2]|0)+(i<<2)|0}f[d>>2]=c}i=i+1|0}zSa(q)}while(0);x=0;ua(1408,q|0,k|0);j=x;x=0;if(j&1){r=54;break}d=f[k+28>>2]|0;i=f[q>>2]|0;h=i;c=f[k+24>>2]|0;while(1){if((c|0)==(d|0))break;x=0;e=ga(257,f[f[c>>2]>>2]|0)|0;j=x;x=0;if(j&1){r=58;break b}x=0;g=ja(67,a|0,f[e+12>>2]|0,i|0)|0;j=x;x=0;if(j&1){r=58;break b}f[i+(f[e+8>>2]<<2)>>2]=g;c=c+4|0}g=k+12|0;d=f[n>>2]|0;j=f[g>>2]|0;e=d;b=j;d:do if((d-h|0)==((f[k+16>>2]|0)-j|0)){c=b;d=i;while(1){if((d|0)==(e|0))break;if((f[d>>2]|0)!=(f[c>>2]|0)){r=59;break d}c=c+4|0;d=d+4|0}zSa(q)}else r=59;while(0);if((r|0)==59){r=0;d=f[o>>2]|0;c=0;while(1){if(c>>>0>=d>>>0)break;if((f[i+(c<<2)>>2]|0)>>>0<(f[b+(c<<2)>>2]|0)>>>0){r=63;break b}else c=c+1|0}d9(g,q);d=f[k+40>>2]|0;c=f[k+36>>2]|0;while(1){if((c|0)==(d|0))break;x=0;ua(1406,s|0,f[c>>2]|0);k=x;x=0;if(k&1){r=69;break b}c=c+4|0}zSa(q)}}if((r|0)==27){c=Ia()|0;break}else if((r|0)==32){c=Ia()|0;r=45}else if((r|0)==44){c=Ia()|0;zSa(q);r=45}else if((r|0)==54)c=Ia()|0;else if((r|0)==58){c=Ia()|0;r=71}else if((r|0)==63){x=0;wa(71,88377,88416,294,88457);x=0;c=Ia()|0;r=71}else if((r|0)==69){c=Ia()|0;r=71}else if((r|0)==73){Rfa(s);u=p;return}if((r|0)==45)break;else if((r|0)==71)zSa(q)}while(0);Rfa(s);Ua(c|0)}function ng(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;n=u;u=u+16|0;m=n;if(a){a=YTa(c,135112)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+11|0;if((b[c>>0]|0)<0){Z0a(f[k>>2]|0,0);f[k+4>>2]=0}else{Z0a(k,0);b[c>>0]=0}x=0;ta(470,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;y2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+11|0;if((b[c>>0]|0)<0){Z0a(f[j>>2]|0,0);f[j+4>>2]=0}else{Z0a(j,0);b[c>>0]=0}x=0;ta(470,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;y2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;b[e>>0]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;b[g>>0]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){Z0a(f[h>>2]|0,0);f[h+4>>2]=0}else{Z0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;y2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+11|0;if((b[c>>0]|0)<0){Z0a(f[i>>2]|0,0);f[i+4>>2]=0}else{Z0a(i,0);b[c>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}else{a=YTa(c,135104)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+11|0;if((b[c>>0]|0)<0){Z0a(f[k>>2]|0,0);f[k+4>>2]=0}else{Z0a(k,0);b[c>>0]=0}x=0;ta(470,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;y2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+11|0;if((b[c>>0]|0)<0){Z0a(f[j>>2]|0,0);f[j+4>>2]=0}else{Z0a(j,0);b[c>>0]=0}x=0;ta(470,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;y2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;b[e>>0]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;b[g>>0]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){Z0a(f[h>>2]|0,0);f[h+4>>2]=0}else{Z0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;y2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+11|0;if((b[c>>0]|0)<0){Z0a(f[i>>2]|0,0);f[i+4>>2]=0}else{Z0a(i,0);b[c>>0]=0}x=0;ta(470,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}f[l>>2]=c;u=n;return}function og(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;n=u;u=u+16|0;m=n;if(a){a=YTa(c,135128)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+8+3|0;if((b[c>>0]|0)<0){L1a(f[k>>2]|0,0);f[k+4>>2]=0}else{L1a(k,0);b[c>>0]=0}x=0;ta(516,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;y2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}oTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+8+3|0;if((b[c>>0]|0)<0){L1a(f[j>>2]|0,0);f[j+4>>2]=0}else{L1a(j,0);b[c>>0]=0}x=0;ta(516,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;y2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}oTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[e>>2]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[g>>2]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){Z0a(f[h>>2]|0,0);f[h+4>>2]=0}else{Z0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;y2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+8+3|0;if((b[c>>0]|0)<0){L1a(f[i>>2]|0,0);f[i+4>>2]=0}else{L1a(i,0);b[c>>0]=0}x=0;ta(516,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}oTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}else{a=YTa(c,135120)|0;pc[f[(f[a>>2]|0)+44>>2]&4095](m,a);c=f[m>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;pc[f[(f[a>>2]|0)+32>>2]&4095](m,a);c=k+8+3|0;if((b[c>>0]|0)<0){L1a(f[k>>2]|0,0);f[k+4>>2]=0}else{L1a(k,0);b[c>>0]=0}x=0;ta(516,k|0);d=x;x=0;if(d&1){d=Ja(0)|0;y2a(d)}f[k>>2]=f[m>>2];f[k+4>>2]=f[m+4>>2];f[k+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}oTa(m);pc[f[(f[a>>2]|0)+28>>2]&4095](m,a);c=j+8+3|0;if((b[c>>0]|0)<0){L1a(f[j>>2]|0,0);f[j+4>>2]=0}else{L1a(j,0);b[c>>0]=0}x=0;ta(516,j|0);k=x;x=0;if(k&1){k=Ja(0)|0;y2a(k)}f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}oTa(m);c=bc[f[(f[a>>2]|0)+12>>2]&511](a)|0;f[e>>2]=c;c=bc[f[(f[a>>2]|0)+16>>2]&511](a)|0;f[g>>2]=c;pc[f[(f[a>>2]|0)+20>>2]&4095](m,a);c=h+11|0;if((b[c>>0]|0)<0){Z0a(f[h>>2]|0,0);f[h+4>>2]=0}else{Z0a(h,0);b[c>>0]=0}x=0;ta(470,h|0);g=x;x=0;if(g&1){g=Ja(0)|0;y2a(g)}f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}MTa(m);pc[f[(f[a>>2]|0)+24>>2]&4095](m,a);c=i+8+3|0;if((b[c>>0]|0)<0){L1a(f[i>>2]|0,0);f[i+4>>2]=0}else{L1a(i,0);b[c>>0]=0}x=0;ta(516,i|0);h=x;x=0;if(h&1){h=Ja(0)|0;y2a(h)}f[i>>2]=f[m>>2];f[i+4>>2]=f[m+4>>2];f[i+8>>2]=f[m+8>>2];c=0;while(1){if((c|0)==3)break;f[m+(c<<2)>>2]=0;c=c+1|0}oTa(m);c=bc[f[(f[a>>2]|0)+36>>2]&511](a)|0}f[l>>2]=c;u=n;return}function pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+192|0;j=k+92|0;i=k;a:do if((f[b+4>>2]|0)!=5){h=a+40|0;e=0;b:while(1){switch(f[b>>2]|0){case 22:{b=0;break a}case 15:case 9:case 11:{a=7;break b}case 13:{a=4;break b}case 16:case 17:case 18:break;default:{a=41;break b}}if(c)break a;a=l$a(b)|0;do if(!a){a=d$a(b)|0;if(!a){a=DRa(b)|0;d=fZa(f[h>>2]|0)|0;g=a+8|0;gA(j,d,f[g>>2]|0);d=qza(j)|0;_7(j);if(d){d=fZa(f[h>>2]|0)|0;gA(j,d,f[a+12>>2]|0);d=qza(j)|0;_7(j);if(d)break a;d=fZa(f[h>>2]|0)|0;gA(j,d,f[a+16>>2]|0);d=qza(j)|0;_7(j);if(d)break a;d=2;b=f[g>>2]|0;break}d=fZa(f[h>>2]|0)|0;g=a+12|0;gA(j,d,f[g>>2]|0);d=qza(j)|0;_7(j);if(d){d=fZa(f[h>>2]|0)|0;gA(j,d,f[a+16>>2]|0);d=qza(j)|0;_7(j);if(d)break a;d=2;b=f[g>>2]|0;break}else{g=fZa(f[h>>2]|0)|0;b=a+16|0;gA(j,g,f[b>>2]|0);g=qza(j)|0;_7(j);if(!g){b=0;break a}d=2;b=f[b>>2]|0;break}}gA(j,fZa(f[h>>2]|0)|0,0);vga(j,a);do if(!(qza(j)|0)){d=fZa(f[h>>2]|0)|0;g=a+12|0;x=0;va(101,i|0,d|0,f[g>>2]|0);d=x;x=0;if(d&1){a=22;break b}d=qza(i)|0;_7(i);if(d){d=fZa(f[h>>2]|0)|0;x=0;va(101,i|0,d|0,f[a+16>>2]|0);d=x;x=0;if(d&1){a=23;break b}d=qza(i)|0;_7(i);if(d){d=1;e=b;break}d=2;b=f[g>>2]|0;break}else{g=fZa(f[h>>2]|0)|0;a=a+16|0;x=0;va(101,i|0,g|0,f[a>>2]|0);g=x;x=0;if(g&1){a=28;break b}g=qza(i)|0;_7(i);if(!g){d=1;e=0;break}d=2;b=f[a>>2]|0;break}}else{d=1;e=b}while(0);_7(j)}else{gA(j,fZa(f[h>>2]|0)|0,0);BMa(j,a);if(!(qza(j)|0)){g=fZa(f[h>>2]|0)|0;a=a+12|0;x=0;va(101,i|0,g|0,f[a>>2]|0);g=x;x=0;if(g&1){a=15;break b}g=qza(i)|0;_7(i);if(g){d=2;b=f[a>>2]|0}else{d=1;e=0}}else{d=1;e=b}_7(j)}while(0);if((d|0)==1){b=e;break a}}if((a|0)==4){if(c)break;gA(j,fZa(f[h>>2]|0)|0,b);c=qza(j)|0;_7(j);if(c)break;b=(bSa(b)|0)+24|0;b=f[b>>2]|0;break}else if((a|0)==7){b=c?b:0;break}else if((a|0)==15){b=Ia()|0;_7(j)}else if((a|0)==22){b=Ia()|0;a=30}else if((a|0)==23){b=Ia()|0;a=30}else if((a|0)==28){b=Ia()|0;a=30}else if((a|0)==41)break;if((a|0)==30)_7(j);Ua(b|0)}while(0);u=k;return b|0}function qg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;I=u;u=u+128|0;o=I+112|0;J=I+56|0;z=I+4|0;A=I+48|0;B=I;E=a+12|0;F=J+36|0;H=z+36|0;v=c+144|0;t=a+16|0;q=J+40|0;r=J+44|0;s=J+48|0;p=o+4|0;w=J+4|0;y=z+4|0;e=1;g=0;a:while(1){if(!e){n=58;break}e=0;h=0;while(1){if(e>>>0>=(Jbb(f[t>>2]|0)|0)>>>0){e=h;break}j=ODa(E,e)|0;j=f[j>>2]|0;i=v$a(j)|0;do if(!i){m=ODa(E,e)|0;m=x$a(f[m>>2]|0)|0;if(!m){i=ODa(E,e)|0;i=J$a(f[i>>2]|0)|0;if(!i)break;k=v$a(f[i+12>>2]|0)|0;if(!k)break;else{m=j;j=i;l=k;n=24;break}}l=m+8|0;i=v$a(f[l>>2]|0)|0;if((i|0)!=0?!(XN(i)|0):0){j=i+8|0;if(Qab(f[j>>2]|0)|0){f[o>>2]=i;mCa(J,d);f[F>>2]=f[j>>2];x=0;ua(2340,J|0,o|0);k=x;x=0;if(k&1){n=13;break a}x=0;k=ja(75,b[q>>0]|0,f[r>>2]|0,f[s>>2]|0)|0;K=x;x=0;if(K&1){n=13;break a}if(k)i=0;else{gQa(z,d);f[H>>2]=f[j>>2];fXa(z,c);x=0;ua(2341,z|0,o|0);K=x;x=0;if(K&1){n=16;break a}CVa(z)}CVa(J);if(!i)break}g=i+12|0;h=RCa(g)|0;h=f[h>>2]|0;if(v2a(f[h+4>>2]|0)|0){f[l>>2]=h;uXa(m);K=RCa(g)|0;f[K>>2]=m}tt(i);m=ODa(E,e)|0;f[m>>2]=i;m=i;j=0;g=1;l=i;h=1;n=24}}else{m=j;j=0;l=i;n=24}while(0);if((n|0)==24){n=0;if(!(Qab(f[l+8>>2]|0)|0)?(C=l+12|0,D=Jbb(f[l+16>>2]|0)|0,(D|0)!=0):0){if(!j){i=0;n=33;break}k=f[j+8>>2]|0;i=D;while(1){j=i+-1|0;if((j|0)<=-1){i=0;break}K=ODa(C,j)|0;K=f[K>>2]|0;f[A>>2]=k;f[o>>2]=f[A>>2];if(OM(K,o)|0)break;else i=j}if((i|0)!=(D|0)){if(!i){i=0;n=33;break}K=RCa(C)|0;if(!(v2a(f[(f[K>>2]|0)+4>>2]|0)|0)){n=33;break}}}}e=e+1|0}if((n|0)==33){n=0;NVa(o,v);g=0;while(1){if((g|0)==(e|0))break;K=ODa(E,g)|0;faa(o,f[K>>2]|0);g=g+1|0}h=(i|0)!=0;if(h)faa(o,m);g=i;while(1){if(g>>>0>=D>>>0)break;K=ODa(C,g)|0;faa(o,f[K>>2]|0);g=g+1|0}if(h?(i7(C,i),tt(l),G=J$a(m)|0,G|0):0)v_a(G);while(1){e=e+1|0;if(e>>>0>=(Jbb(f[t>>2]|0)|0)>>>0)break;K=ODa(E,e)|0;faa(o,f[K>>2]|0)}if(!(s$a(f[p>>2]|0)|0)){h=RCa(o)|0;h=f[h>>2]|0;Q$a(J,o);LUa(z,o);e=f[z>>2]|0;g=f[y>>2]|0;while(1){if(!(qTa(f[J>>2]|0,f[w>>2]|0,e,g)|0))break;i=QOa(J)|0;j=f[i>>2]|0;if((j|0)!=(h|0)?v2a(f[j+4>>2]|0)|0:0){_0a(B,c);K=lNa(f[B>>2]|0,f[i>>2]|0)|0;f[i>>2]=K}YYa(J)}}jma(E,o);e=1;g=1}e=(e&1)!=0}if((n|0)==13)e=Ia()|0;else if((n|0)==16){e=Ia()|0;CVa(z)}else if((n|0)==58){if(g)aKa(a,f[a+4>>2]|0);u=I;return}CVa(J);Ua(e|0)}function rg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;if(!a)return;c=a+-8|0;e=f[33306]|0;a=f[a+-4>>2]|0;b=a&-8;j=c+b|0;do if(!(a&1)){d=f[c>>2]|0;if(!(a&3))return;h=c+(0-d)|0;g=d+b|0;if(h>>>0>>0)return;if((f[33307]|0)==(h|0)){a=j+4|0;b=f[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}f[33304]=g;f[a>>2]=b&-2;f[h+4>>2]=g|1;f[h+g>>2]=g;return}c=d>>>3;if(d>>>0<256){a=f[h+8>>2]|0;b=f[h+12>>2]|0;if((b|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=b;f[b+8>>2]=a;i=h;b=g;break}}e=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;c=b+4|0;a=f[c>>2]|0;if(!a){a=f[b>>2]|0;if(!a){a=0;break}}else b=c;while(1){d=a+20|0;c=f[d>>2]|0;if(!c){d=a+16|0;c=f[d>>2]|0;if(!c)break;else{a=c;b=d}}else{a=c;b=d}}f[b>>2]=0}else{i=f[h+8>>2]|0;f[i+12>>2]=a;f[a+8>>2]=i}while(0);if(e){b=f[h+28>>2]|0;c=133512+(b<<2)|0;if((f[c>>2]|0)==(h|0)){f[c>>2]=a;if(!a){f[33303]=f[33303]&~(1<>2]|0)==(h|0)?i:e+20|0)>>2]=a;if(!a){i=h;b=g;break}}f[a+24>>2]=e;b=h+16|0;c=f[b>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}b=f[b+4>>2]|0;if(b){f[a+20>>2]=b;f[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=c;h=c}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){if((f[33308]|0)==(j|0)){j=(f[33305]|0)+b|0;f[33305]=j;f[33308]=i;f[i+4>>2]=j|1;if((i|0)!=(f[33307]|0))return;f[33307]=0;f[33304]=0;return}if((f[33307]|0)==(j|0)){j=(f[33304]|0)+b|0;f[33304]=j;f[33307]=h;f[i+4>>2]=j|1;f[h+j>>2]=j;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[j+8>>2]|0;a=f[j+12>>2]|0;if((a|0)==(b|0)){f[33302]=f[33302]&~(1<>2]=a;f[a+8>>2]=b;break}}else{g=f[j+24>>2]|0;a=f[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;c=b+4|0;a=f[c>>2]|0;if(!a){a=f[b>>2]|0;if(!a){c=0;break}}else b=c;while(1){d=a+20|0;c=f[d>>2]|0;if(!c){d=a+16|0;c=f[d>>2]|0;if(!c)break;else{a=c;b=d}}else{a=c;b=d}}f[b>>2]=0;c=a}else{c=f[j+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[j+28>>2]|0;b=133512+(a<<2)|0;if((f[b>>2]|0)==(j|0)){f[b>>2]=c;if(!c){f[33303]=f[33303]&~(1<>2]|0)==(j|0)?d:g+20|0)>>2]=c;if(!c)break}f[c+24>>2]=g;a=j+16|0;b=f[a>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}a=f[a+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[i+4>>2]=e|1;f[h+e>>2]=e;if((i|0)==(f[33307]|0)){f[33304]=e;return}}else{f[a>>2]=d&-2;f[i+4>>2]=b|1;f[h+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=133248+(a<<1<<2)|0;b=f[33302]|0;a=1<>2]|0}f[b>>2]=i;f[a+12>>2]=i;f[i+8>>2]=a;f[i+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)d=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;d=14-(g|h|d)+(j<>>15)|0;d=e>>>(d+7|0)&1|d<<1}else d=0;a=133512+(d<<2)|0;f[i+28>>2]=d;f[i+20>>2]=0;f[i+16>>2]=0;b=f[33303]|0;c=1<>2]=i;f[i+24>>2]=a;f[i+12>>2]=i;f[i+8>>2]=i}else{a=f[a>>2]|0;b:do if((f[a+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=a+16+(d>>>31<<2)|0;b=f[c>>2]|0;if(!b)break;if((f[b+4>>2]&-8|0)==(e|0)){a=b;break b}else{d=d<<1;a=b}}f[c>>2]=i;f[i+24>>2]=a;f[i+12>>2]=i;f[i+8>>2]=i;break a}while(0);h=a+8|0;j=f[h>>2]|0;f[j+12>>2]=i;f[h>>2]=i;f[i+8>>2]=j;f[i+12>>2]=a;f[i+24>>2]=0}while(0);j=(f[33310]|0)+-1|0;f[33310]=j;if(j|0)return;a=133664;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[33310]=-1;return}function sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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;q=u;u=u+48|0;r=q+32|0;s=q+20|0;o=q+8|0;m=q+4|0;n=q;fwa(r,b);f[s>>2]=s;i=s+4|0;f[i>>2]=s;j=s+8|0;f[j>>2]=0;k=a+16|0;h=Jbb(f[k>>2]|0)|0;l=r+4|0;p=T6a(a)|0;a=h;while(1){d=a;if((p|0)==(d|0)){c=3;break}a=f[a+8>>2]|0;f[o>>2]=a;x=0;c=ia(144,l|0,o|0)|0;h=x;x=0;if(h&1){c=9;break}f[c>>2]=a;x=0;a=ia(142,b|0,o|0)|0;h=x;x=0;if(h&1){c=9;break}x=0;ua(1460,a|0,o|0);h=x;x=0;if(h&1){c=9;break}x=0;ua(1492,s|0,o|0);h=x;x=0;if(h&1){c=9;break}a=f[d+4>>2]|0}do if((c|0)==3){h=r+8|0;a:while(1){if(!(f[j>>2]|0)){c=31;break}f[o>>2]=f[(f[i>>2]|0)+8>>2];Yma(s);x=0;a=ia(144,l|0,o|0)|0;g=x;x=0;if(g&1){c=13;break}d=f[a>>2]|0;f[m>>2]=d;e=d;if(d){c=f[o>>2]|0;a=Jbb(f[c+16>>2]|0)|0;while(1){g=a;if((T6a(c)|0)==(g|0))break;a=f[a+8>>2]|0;f[n>>2]=a;c=hX(l,a)|0;if((c|0)==(h|0)){x=0;a=ia(144,l|0,n|0)|0;c=x;x=0;if(c&1){c=23;break a}f[a>>2]=e;x=0;a=ia(142,b|0,m|0)|0;c=x;x=0;if(c&1){c=23;break a}x=0;ua(1460,a|0,n|0);c=x;x=0;if(c&1){c=23;break a}x=0;ua(1492,s|0,n|0);c=x;x=0;if(c&1){c=23;break a}}else{c=f[c+20>>2]|0;if(!((c|0)==0|(c|0)==(d|0))?(x=0,ua(1496,r|0,a|0),c=x,x=0,c&1):0){c=25;break a}}a=f[g+4>>2]|0;c=f[o>>2]|0}}}if((c|0)==13)a=Ia()|0;else if((c|0)==23){a=Ia()|0;c=28}else if((c|0)==25){a=Ia()|0;c=28}else if((c|0)==31){h=o+4|0;i=o+8|0;a=Jbb(f[k>>2]|0)|0;b:while(1){j=a;if((p|0)==(j|0)){c=33;break}x=0;a=ia(142,b|0,a+8|0)|0;g=x;x=0;if(g&1){c=38;break}f[o>>2]=o;f[h>>2]=o;f[i>>2]=0;g=Jbb(f[a+16>>2]|0)|0;e=T6a(a)|0;a=g;while(1){g=a;if((e|0)==(g|0))break;c=f[a+8>>2]|0;f[m>>2]=c;a=Jbb(f[c+40>>2]|0)|0;while(1){d=a;if((T6a(c+24|0)|0)==(d|0))break;f[n>>2]=f[a+8>>2];x=0;a=ia(144,l|0,n|0)|0;c=x;x=0;if(c&1){c=47;break b}a=f[a>>2]|0;x=0;c=ia(144,l|0,m|0)|0;t=x;x=0;if(t&1){c=47;break b}if((a|0)!=(f[c>>2]|0)?(x=0,ua(1492,o|0,m|0),t=x,x=0,t&1):0){c=47;break b}a=f[d+4>>2]|0;c=f[m>>2]|0}a=f[g+4>>2]|0}while(1){if(!(f[i>>2]|0))break;t=f[(f[h>>2]|0)+8>>2]|0;Yma(o);x=0;ua(1496,r|0,t|0);t=x;x=0;if(t&1){c=50;break b}}iVa(o);a=f[j+4>>2]|0}if((c|0)==33){a=Jbb(f[k>>2]|0)|0;while(1){d=a;if((p|0)==(d|0)){c=54;break}a=a+8|0;x=0;c=ia(142,b|0,a|0)|0;t=x;x=0;if(t&1){c=59;break}if(!(Jbb(f[c+8>>2]|0)|0))dW(b,f[a>>2]|0);a=f[d+4>>2]|0}if((c|0)==54){iVa(s);sza(r);u=q;return}else if((c|0)==59){a=Ia()|0;break}}else if((c|0)==38){a=Ia()|0;break}else if((c|0)==47)a=Ia()|0;else if((c|0)==50)a=Ia()|0;iVa(o);break}}else if((c|0)==9)a=Ia()|0;while(0);iVa(s);sza(r);Ua(a|0)}function tg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110679)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);oGa(a,f[c+12>>2]|0);a:do if((f[c+4>>2]|0)==5)iTa(f[a+28>>2]|0);else do switch(f[c+8>>2]|0){case 0:{Gv(f[a+28>>2]|0,103)|0;break a}case 2:{Gv(f[a+28>>2]|0,104)|0;break a}case 4:{Gv(f[a+28>>2]|0,105)|0;break a}case 20:{Gv(f[a+28>>2]|0,69)|0;break a}case 1:{Gv(f[a+28>>2]|0,121)|0;break a}case 3:{Gv(f[a+28>>2]|0,122)|0;break a}case 5:{Gv(f[a+28>>2]|0,123)|0;break a}case 21:{Gv(f[a+28>>2]|0,80)|0;break a}case 6:{Gv(f[a+28>>2]|0,-116)|0;break a}case 8:{Gv(f[a+28>>2]|0,-117)|0;break a}case 10:{Gv(f[a+28>>2]|0,-115)|0;break a}case 12:{Gv(f[a+28>>2]|0,-114)|0;break a}case 14:{Gv(f[a+28>>2]|0,-113)|0;break a}case 16:{Gv(f[a+28>>2]|0,-112)|0;break a}case 18:{Gv(f[a+28>>2]|0,-111)|0;break a}case 7:{Gv(f[a+28>>2]|0,-102)|0;break a}case 9:{Gv(f[a+28>>2]|0,-103)|0;break a}case 11:{Gv(f[a+28>>2]|0,-101)|0;break a}case 13:{Gv(f[a+28>>2]|0,-100)|0;break a}case 15:{Gv(f[a+28>>2]|0,-99)|0;break a}case 17:{Gv(f[a+28>>2]|0,-98)|0;break a}case 19:{Gv(f[a+28>>2]|0,-97)|0;break a}case 22:{Gv(f[a+28>>2]|0,-84)|0;break a}case 23:{Gv(f[a+28>>2]|0,-83)|0;break a}case 24:{Gv(f[a+28>>2]|0,-89)|0;break a}case 27:{Gv(f[a+28>>2]|0,-87)|0;break a}case 28:{Gv(f[a+28>>2]|0,-81)|0;break a}case 25:{Gv(f[a+28>>2]|0,-88)|0;break a}case 26:{Gv(f[a+28>>2]|0,-82)|0;break a}case 31:{Gv(f[a+28>>2]|0,-85)|0;break a}case 32:{Gv(f[a+28>>2]|0,-79)|0;break a}case 29:{Gv(f[a+28>>2]|0,-86)|0;break a}case 30:{Gv(f[a+28>>2]|0,-80)|0;break a}case 37:{Gv(f[a+28>>2]|0,-77)|0;break a}case 38:{Gv(f[a+28>>2]|0,-72)|0;break a}case 35:{Gv(f[a+28>>2]|0,-78)|0;break a}case 36:{Gv(f[a+28>>2]|0,-73)|0;break a}case 41:{Gv(f[a+28>>2]|0,-75)|0;break a}case 42:{Gv(f[a+28>>2]|0,-70)|0;break a}case 39:{Gv(f[a+28>>2]|0,-76)|0;break a}case 40:{Gv(f[a+28>>2]|0,-71)|0;break a}case 44:{Gv(f[a+28>>2]|0,-74)|0;break a}case 43:{Gv(f[a+28>>2]|0,-69)|0;break a}case 33:{Gv(f[a+28>>2]|0,-68)|0;break a}case 34:{Gv(f[a+28>>2]|0,-67)|0;break a}case 45:{Gv(f[a+28>>2]|0,-66)|0;break a}case 46:{Gv(f[a+28>>2]|0,-65)|0;break a}case 47:{Gv(f[a+28>>2]|0,-64)|0;break a}case 48:{Gv(f[a+28>>2]|0,-63)|0;break a}case 49:{Gv(f[a+28>>2]|0,-62)|0;break a}case 50:{Gv(f[a+28>>2]|0,-61)|0;break a}case 51:{Gv(f[a+28>>2]|0,-60)|0;break a}default:hb()}while(0);while(0);u=i;return}function ug(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;y=u;u=u+240|0;w=y+192|0;t=y+160|0;B=y+220|0;z=y+208|0;v=y+204|0;q=y;r=y+200|0;s=y+196|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}dYa(z,e);x=0;a=ia(73,f[z>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,ka(f[(f[a>>2]|0)+32>>2]|0,a|0,31216,31242,t|0)|0,p=x,x=0,!(p&1)):0){OCa(z);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}p=z+11|0;if((b[p>>0]|0)<0)a=(f[z+8>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);o=x;x=0;if(o&1)a=Ia()|0;else{a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a;f[r>>2]=q;f[s>>2]=0;n=z+4|0;o=z+8|0;i=f[c>>2]|0;j=i;a:while(1){if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;m=x;x=0;if(m&1){A=35;break}}else e=d7a(b[e>>0]|0)|0;if(g2a(e,-1)|0){f[c>>2]=0;m=0;j=0;k=1}else{m=i;k=0}}else{m=0;j=0;k=1}i=f[d>>2]|0;do if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;l=x;x=0;if(l&1){A=35;break a}}else e=d7a(b[e>>0]|0)|0;if(!(g2a(e,-1)|0))if(k)break;else{A=46;break a}else{f[d>>2]=0;A=25;break}}else A=25;while(0);if((A|0)==25){A=0;if(k){i=0;A=46;break}else i=0}e=b[p>>0]|0;e=e<<24>>24<0?f[n>>2]|0:e&255;if((f[v>>2]|0)==(a+e|0)){x=0;ua(108,z|0,e<<1|0);l=x;x=0;if(l&1){A=37;break}if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);l=x;x=0;if(l&1){A=37;break}a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a+e}k=m+12|0;e=f[k>>2]|0;l=m+16|0;if((e|0)==(f[l>>2]|0)){x=0;e=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else e=d7a(b[e>>0]|0)|0;if(Ir(e&255,16,a,v,s,0,B,q,r,t)|0){A=46;break}e=f[k>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ga(f[(f[m>>2]|0)+40>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else f[k>>2]=e+1;i=m}if((A|0)==35)a=Ia()|0;else if((A|0)==37)a=Ia()|0;else if((A|0)==46){x=0;ua(108,z|0,(f[v>>2]|0)-a|0);C=x;x=0;b:do if(!(C&1)){t=b[p>>0]|0;v=f[z>>2]|0;C=kOa()|0;f[w>>2]=h;if((Mla(t<<24>>24<0?v:z,C,0,w)|0)!=1)f[g>>2]=4;if(m){a=f[m+12>>2]|0;if((a|0)==(f[m+16>>2]|0)){x=0;a=ga(f[(f[j>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1)break}else a=d7a(b[a>>0]|0)|0;if(g2a(a,-1)|0){f[c>>2]=0;e=1}else e=0}else e=1;do if(i){a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0)){x=0;a=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;C=x;x=0;if(C&1)break b}else a=d7a(b[a>>0]|0)|0;if(!(g2a(a,-1)|0))if(e)break;else{A=63;break}else{f[d>>2]=0;A=61;break}}else A=61;while(0);if((A|0)==61?e:0)A=63;if((A|0)==63)f[g>>2]=f[g>>2]|2;C=f[c>>2]|0;MTa(z);MTa(B);u=y;return C|0}while(0);a=Ia()|0}}MTa(z)}else{a=Ia()|0;OCa(z)}MTa(B);Ua(a|0);return 0}function vg(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;y=u;u=u+112|0;j=y;l=(e-d|0)/12|0;do if(l>>>0>100){k=Kc(l)|0;if(!k){x=0;sa(10);x=0;d=Ia()|0;break}else{j=k;w=k;n=5;break}}else{w=0;n=5}while(0);if((n|0)==5){n=d;o=j;k=0;while(1){if((n|0)==(e|0))break;m=b[n+11>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if(!m){b[o>>0]=2;k=k+1|0;l=l+-1|0}else b[o>>0]=1;n=n+12|0;o=o+1|0}v=0;r=k;o=c;a:while(1){k=f[a>>2]|0;do if(k){m=f[k+12>>2]|0;if((m|0)==(f[k+16>>2]|0)){x=0;k=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;t=x;x=0;if(t&1){n=40;break a}}else k=d7a(b[m>>0]|0)|0;if(g2a(k,-1)|0){f[a>>2]=0;n=1;break}else{n=(f[a>>2]|0)==0;break}}else n=1;while(0);if(!o){t=0;k=1;o=0}else{k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;t=x;x=0;if(t&1){n=40;break}}else k=d7a(b[k>>0]|0)|0;s=g2a(k,-1)|0;t=s?0:o;k=s;o=s?0:o}m=f[a>>2]|0;if(!((l|0)!=0&(n^k))){n=28;break}k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;s=x;x=0;if(s&1){n=46;break}}else k=d7a(b[k>>0]|0)|0;k=k&255;if(!i){x=0;k=ia(f[(f[g>>2]|0)+12>>2]|0,g|0,k|0)|0;s=x;x=0;if(s&1){n=46;break}else c=k}else c=k;s=v+1|0;p=d;o=0;q=j;k=r;while(1){if((p|0)==(e|0))break;do if((b[q>>0]|0)==1){n=p+11|0;if((b[n>>0]|0)<0)m=f[p>>2]|0;else m=p;m=b[m+v>>0]|0;if(!i){x=0;m=ia(f[(f[g>>2]|0)+12>>2]|0,g|0,m|0)|0;r=x;x=0;if(r&1){n=56;break a}}if(c<<24>>24!=m<<24>>24){b[q>>0]=0;m=o;l=l+-1|0;break}m=b[n>>0]|0;if(m<<24>>24<0)m=f[p+4>>2]|0;else m=m&255;if((m|0)==(s|0)){b[q>>0]=2;m=1;k=k+1|0;l=l+-1|0}else m=1}else m=o;while(0);p=p+12|0;o=m;q=q+1|0}b:do if(o){m=f[a>>2]|0;n=m+12|0;o=f[n>>2]|0;if((o|0)==(f[m+16>>2]|0)){x=0;ga(f[(f[m>>2]|0)+40>>2]|0,m|0)|0;v=x;x=0;if(v&1){n=72;break a}}else f[n>>2]=o+1;if((k+l|0)>>>0>1){n=d;o=j;while(1){if((n|0)==(e|0))break b;if((b[o>>0]|0)==2){m=b[n+11>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if((m|0)!=(s|0)){b[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}}while(0);v=s;r=k;o=t}if((n|0)==28){do if(m){k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;i=x;x=0;if(i&1)break}else k=d7a(b[k>>0]|0)|0;if(g2a(k,-1)|0){f[a>>2]=0;l=1;n=35;break}else{l=(f[a>>2]|0)==0;n=35;break}}else{l=1;n=35}while(0);do if((n|0)==35){if(o){k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;a=x;x=0;if(a&1)break}else k=d7a(b[k>>0]|0)|0;if(!(g2a(k,-1)|0)){if(!l)n=82}else n=80}else n=80;if((n|0)==80?l:0)n=82;if((n|0)==82)f[h>>2]=f[h>>2]|2;while(1){if((d|0)==(e|0)){n=88;break}if((b[j>>0]|0)==2)break;d=d+12|0;j=j+1|0}if((n|0)==88){f[h>>2]=f[h>>2]|4;d=e}if(w|0)rg(w);u=y;return d|0}while(0);d=Ia()|0}else if((n|0)==40)d=Ia()|0;else if((n|0)==46)d=Ia()|0;else if((n|0)==56)d=Ia()|0;else if((n|0)==72)d=Ia()|0;if(w)rg(w)}Ua(d|0);return 0}function wg(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;y=u;u=u+304|0;w=y+264|0;t=y+160|0;B=y+292|0;z=y+280|0;v=y+276|0;q=y;r=y+272|0;s=y+268|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[B+(a<<2)>>2]=0;a=a+1|0}dYa(z,e);x=0;a=ia(73,f[z>>2]|0,134912)|0;p=x;x=0;if(!(p&1)?(x=0,ka(f[(f[a>>2]|0)+48>>2]|0,a|0,31216,31242,t|0)|0,p=x,x=0,!(p&1)):0){OCa(z);f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[z+(a<<2)>>2]=0;a=a+1|0}p=z+11|0;if((b[p>>0]|0)<0)a=(f[z+8>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);o=x;x=0;if(o&1)a=Ia()|0;else{a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a;f[r>>2]=q;f[s>>2]=0;n=z+4|0;o=z+8|0;i=f[c>>2]|0;j=i;a:while(1){if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;m=x;x=0;if(m&1){A=35;break}}else e=Jbb(f[e>>2]|0)|0;if($5a(e)|0){f[c>>2]=0;m=0;j=0;k=1}else{m=i;k=0}}else{m=0;j=0;k=1}i=f[d>>2]|0;do if(i){e=f[i+12>>2]|0;if((e|0)==(f[i+16>>2]|0)){x=0;e=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;l=x;x=0;if(l&1){A=35;break a}}else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0))if(k)break;else{A=46;break a}else{f[d>>2]=0;A=25;break}}else A=25;while(0);if((A|0)==25){A=0;if(k){i=0;A=46;break}else i=0}e=b[p>>0]|0;e=e<<24>>24<0?f[n>>2]|0:e&255;if((f[v>>2]|0)==(a+e|0)){x=0;ua(108,z|0,e<<1|0);l=x;x=0;if(l&1){A=37;break}if((b[p>>0]|0)<0)a=(f[o>>2]&2147483647)+-1|0;else a=10;x=0;ua(108,z|0,a|0);l=x;x=0;if(l&1){A=37;break}a=(b[p>>0]|0)<0?f[z>>2]|0:z;f[v>>2]=a+e}k=m+12|0;e=f[k>>2]|0;l=m+16|0;if((e|0)==(f[l>>2]|0)){x=0;e=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else e=Jbb(f[e>>2]|0)|0;if(Jr(e,16,a,v,s,0,B,q,r,t)|0){A=46;break}e=f[k>>2]|0;if((e|0)==(f[l>>2]|0)){x=0;ga(f[(f[m>>2]|0)+40>>2]|0,m|0)|0;C=x;x=0;if(C&1){A=35;break}}else f[k>>2]=e+4;i=m}if((A|0)==35)a=Ia()|0;else if((A|0)==37)a=Ia()|0;else if((A|0)==46){x=0;ua(108,z|0,(f[v>>2]|0)-a|0);C=x;x=0;b:do if(!(C&1)){t=b[p>>0]|0;v=f[z>>2]|0;C=kOa()|0;f[w>>2]=h;if((Mla(t<<24>>24<0?v:z,C,0,w)|0)!=1)f[g>>2]=4;if(m){a=f[m+12>>2]|0;if((a|0)==(f[m+16>>2]|0)){x=0;a=ga(f[(f[j>>2]|0)+36>>2]|0,m|0)|0;C=x;x=0;if(C&1)break}else a=Jbb(f[a>>2]|0)|0;if($5a(a)|0){f[c>>2]=0;e=1}else e=0}else e=1;do if(i){a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0)){x=0;a=ga(f[(f[i>>2]|0)+36>>2]|0,i|0)|0;C=x;x=0;if(C&1)break b}else a=Jbb(f[a>>2]|0)|0;if(!($5a(a)|0))if(e)break;else{A=63;break}else{f[d>>2]=0;A=61;break}}else A=61;while(0);if((A|0)==61?e:0)A=63;if((A|0)==63)f[g>>2]=f[g>>2]|2;C=f[c>>2]|0;MTa(z);MTa(B);u=y;return C|0}while(0);a=Ia()|0}}MTa(z)}else{a=Ia()|0;OCa(z)}MTa(B);Ua(a|0);return 0}function xg(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;w=u;u=u+112|0;j=w;l=(e-d|0)/12|0;do if(l>>>0>100){k=Kc(l)|0;if(!k){x=0;sa(10);x=0;d=Ia()|0;break}else{j=k;v=k;n=5;break}}else{v=0;n=5}while(0);if((n|0)==5){n=d;o=j;k=0;while(1){if((n|0)==(e|0))break;m=b[n+8+3>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if(!m){b[o>>0]=2;k=k+1|0;l=l+-1|0}else b[o>>0]=1;n=n+12|0;o=o+1|0}t=0;q=k;o=c;a:while(1){k=f[a>>2]|0;do if(k){m=f[k+12>>2]|0;if((m|0)==(f[k+16>>2]|0)){x=0;k=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;s=x;x=0;if(s&1){n=40;break a}}else k=Jbb(f[m>>2]|0)|0;if($5a(k)|0){f[a>>2]=0;n=1;break}else{n=(f[a>>2]|0)==0;break}}else n=1;while(0);if(!o){s=0;k=1;o=0}else{k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;s=x;x=0;if(s&1){n=40;break}}else k=Jbb(f[k>>2]|0)|0;r=$5a(k)|0;s=r?0:o;k=r;o=r?0:o}m=f[a>>2]|0;if(!((l|0)!=0&(n^k))){n=28;break}k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;r=x;x=0;if(r&1){n=46;break}}else k=Jbb(f[k>>2]|0)|0;if(!i){x=0;k=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,k|0)|0;r=x;x=0;if(r&1){n=46;break}}r=t+1|0;c=d;o=0;p=j;while(1){if((c|0)==(e|0))break;do if((b[p>>0]|0)==1){n=c+8+3|0;if((b[n>>0]|0)<0)m=f[c>>2]|0;else m=c;m=f[m+(t<<2)>>2]|0;if(!i){x=0;m=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,m|0)|0;y=x;x=0;if(y&1){n=56;break a}}if((k|0)!=(m|0)){b[p>>0]=0;m=o;n=q;l=l+-1|0;break}m=b[n>>0]|0;if(m<<24>>24<0)m=f[c+4>>2]|0;else m=m&255;if((m|0)==(r|0)){b[p>>0]=2;m=1;n=q+1|0;l=l+-1|0}else{m=1;n=q}}else{m=o;n=q}while(0);c=c+12|0;o=m;p=p+1|0;q=n}b:do if(o){k=f[a>>2]|0;m=k+12|0;n=f[m>>2]|0;if((n|0)==(f[k+16>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;y=x;x=0;if(y&1){n=72;break a}}else f[m>>2]=n+4;if((q+l|0)>>>0>1){n=d;o=j;k=q;while(1){if((n|0)==(e|0))break b;if((b[o>>0]|0)==2){m=b[n+8+3>>0]|0;if(m<<24>>24<0)m=f[n+4>>2]|0;else m=m&255;if((m|0)!=(r|0)){b[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}else k=q}else k=q;while(0);t=r;q=k;o=s}if((n|0)==28){do if(m){k=f[m+12>>2]|0;if((k|0)==(f[m+16>>2]|0)){x=0;k=ga(f[(f[m>>2]|0)+36>>2]|0,m|0)|0;y=x;x=0;if(y&1)break}else k=Jbb(f[k>>2]|0)|0;if($5a(k)|0){f[a>>2]=0;l=1;n=35;break}else{l=(f[a>>2]|0)==0;n=35;break}}else{l=1;n=35}while(0);do if((n|0)==35){if(o){k=f[o+12>>2]|0;if((k|0)==(f[o+16>>2]|0)){x=0;k=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;y=x;x=0;if(y&1)break}else k=Jbb(f[k>>2]|0)|0;if(!($5a(k)|0)){if(!l)n=82}else n=80}else n=80;if((n|0)==80?l:0)n=82;if((n|0)==82)f[h>>2]=f[h>>2]|2;while(1){if((d|0)==(e|0)){n=88;break}if((b[j>>0]|0)==2)break;d=d+12|0;j=j+1|0}if((n|0)==88){f[h>>2]=f[h>>2]|4;d=e}if(v|0)rg(v);u=w;return d|0}while(0);d=Ia()|0}else if((n|0)==40)d=Ia()|0;else if((n|0)==46)d=Ia()|0;else if((n|0)==56)d=Ia()|0;else if((n|0)==72)d=Ia()|0;if(v)rg(v)}Ua(d|0);return 0}function yg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+48|0;t=s+24|0;i=s+12|0;l=s;m=c+12|0;do if(b[m>>0]|0){e=Am(DCa(134176,97362)|0,d)|0;dYa(t,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[t>>2]|0,134880)|0;r=x;x=0;if(!(r&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,r=x,x=0,!(r&1)):0){OCa(t);Wq(e,h)|0;fu(e)|0;break}s=Ia()|0;OCa(t);Ua(s|0)}while(0);e=c+156|0;h=c+160|0;g=(f[h>>2]|0)-(f[e>>2]|0)>>3;do if(g>>>0<(d+1|0)>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,97378,j7a(97378)|0);x=0;ua(1870,c|0,i|0);r=x;x=0;if(r&1){e=Ia()|0;MTa(i);break}else{MTa(i);g=(f[h>>2]|0)-(f[e>>2]|0)>>3;o=10;break}}else o=10;while(0);a:do if((o|0)==10){i=g+~d|0;do if(i>>>0>=g>>>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,97399,j7a(97399)|0);x=0;ua(1870,c|0,l|0);r=x;x=0;if(r&1){e=Ia()|0;MTa(l);break a}else{MTa(l);break}}while(0);do if(b[m>>0]|0){h=DCa(134176,97421)|0;h=Bfa(h,f[(f[e>>2]|0)+(i<<3)>>2]|0)|0;g=DCa(h,97434)|0;g=Am(g,f[(f[e>>2]|0)+(i<<3)+4>>2]|0)|0;dYa(t,h+(f[(f[h>>2]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[t>>2]|0,134880)|0;r=x;x=0;if(!(r&1)?(x=0,p=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,r=x,x=0,!(r&1)):0){OCa(t);Wq(g,p)|0;fu(g)|0;break}s=Ia()|0;OCa(t);Ua(s|0)}while(0);r=(f[e>>2]|0)+(i<<3)|0;b:do if(!(b[c+201>>0]|0)){q=c+168|0;p=W7a(r)|0;l=c+172|0;m=f[l>>2]|0;o=(m|0)==0;c:do if(!o){i=m+-1|0;d=(i&m|0)==0;if(!d)if(p>>>0>>0)g=p;else g=(p>>>0)%(m>>>0)|0;else g=i&p;e=f[(f[q>>2]|0)+(g<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break c;h=f[e+4>>2]|0;if((h|0)!=(p|0)){if(!d){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0}else h=h&i;if((h|0)!=(g|0))break c}if(g2a(f[e+8>>2]|0,f[r>>2]|0)|0)break b}}else g=0;while(0);W6(t,q,p,r);d=c+180|0;j=+(((f[d>>2]|0)+1|0)>>>0);k=+n[c+184>>2];do if(o|k*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;m=~~+W(+(j/k))>>>0;x=0;ua(680,q|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){e=Ia()|0;g=f[t>>2]|0;f[t>>2]=0;if(g|0)Cbb(g);Ua(e|0)}e=f[l>>2]|0;g=e+-1|0;if(!(g&e)){i=e;g=g&p;break}if(p>>>0>>0){i=e;g=p}else{i=e;g=(p>>>0)%(e>>>0)|0}}else i=m;while(0);e=f[(f[q>>2]|0)+(g<<2)>>2]|0;if(!e){e=c+176|0;h=f[t>>2]|0;f[h>>2]=f[e>>2];f[e>>2]=h;f[(f[q>>2]|0)+(g<<2)>>2]=e;e=f[h>>2]|0;if(!e)e=t;else{e=f[e+4>>2]|0;g=i+-1|0;if(g&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&g;f[(f[q>>2]|0)+(e<<2)>>2]=h;e=t}}else{c=f[t>>2]|0;f[c>>2]=f[e>>2];f[e>>2]=c;e=t}f[d>>2]=(f[d>>2]|0)+1;f[e>>2]=0}while(0);c=f[r+4>>2]|0;t=a;f[t>>2]=f[r>>2];f[t+4>>2]=c;u=s;return}while(0);Ua(e|0)}function zg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+48|0;m=y+36|0;l=y+32|0;s=y+28|0;t=y+24|0;v=y+20|0;w=y+16|0;x=y+12|0;n=y+8|0;o=y+4|0;q=y;a=f[a>>2]|0;j=Jbb(a)|0;i=f[a>>2]|0;a:do if(Oab(i)|0){if(c|0?(kNa(m,vNa(j)|0,1),r=b9(c,m)|0,(r|0)!=9):0){k=r;break}if(!d){if(KBa(a,133092)|0){k=1;break}if(KBa(a,133088)|0){k=1;break}k=KBa(a,133084)|0;k=k?0:9;break}if(Oab(f[33301]|0)|0){k=uPa(j)|0;f[33301]=f[k>>2];k=2;break}if(KBa(a,133204)|0)k=2;else Ca(118329,118352,68,118400)}else{if(zab(i)|0){k=tPa(j)|0;k=((gbb(+p[k>>3])|0)^1)&1;break}r=n0a(a,0)|0;r=vNa(Jbb(f[r>>2]|0)|0)|0;b:do switch(b[r>>0]|0){case 117:{x=n0a(a,0)|0;if(KBa(f[x>>2]|0,133068)|0){x=n0a(a,1)|0;x=vNa(Jbb(f[x>>2]|0)|0)|0;switch(b[x>>0]|0){case 43:{k=1;break a}case 45:{k=n0a(a,2)|0;f[s>>2]=f[k>>2];f[t>>2]=f[e>>2];f[l>>2]=f[s>>2];f[m>>2]=f[t>>2];k=zg(l,c,d,m,g)|0;break a}case 126:case 33:{k=0;break a}default:break b}}break}case 99:{x=n0a(a,0)|0;if(!(KBa(f[x>>2]|0,133120)|0)){x=n0a(a,0)|0;if(!(KBa(f[x>>2]|0,133160)|0))break b;k=n0a(a,2)|0;f[v>>2]=f[k>>2];f[w>>2]=f[e>>2];f[l>>2]=f[v>>2];f[m>>2]=f[w>>2];k=zg(l,c,d,m,g)|0;break a}x=n0a(a,1)|0;x=f[x>>2]|0;Jbb(x)|0;if(Oab(f[x>>2]|0)|0){a=n0a(a,1)|0;a=uPa(Jbb(f[a>>2]|0)|0)|0;a=f[a>>2]|0;if(g2a(a,f[33265]|0)|0){k=2;break a}if(g2a(a,f[e>>2]|0)|0){k=2;break a}if(g){if(g2a(a,f[33263]|0)|0){k=8;break a}if(g2a(a,f[33262]|0)|0){k=8;break a}}if(g2a(a,f[33261]|0)|0){k=3;break a}if(g2a(a,f[33297]|0)|0){k=3;break a}if(g2a(a,f[33260]|0)|0){k=4;break a}if(g2a(a,f[33296]|0)|0){k=4;break a}if(g2a(a,f[33259]|0)|0){k=5;break a}if(g2a(a,f[33300]|0)|0){k=5;break a}if(g2a(a,f[33258]|0)|0){k=6;break a}if(g2a(a,f[33299]|0)|0){k=6;break a}if(g2a(a,f[33257]|0)|0){k=7;break a}if(g2a(a,f[33298]|0)|0){k=7;break a}}k=9;break a}case 98:{w=n0a(a,0)|0;if(KBa(f[w>>2]|0,133156)|0){w=n0a(a,1)|0;w=vNa(Jbb(f[w>>2]|0)|0)|0;switch(b[w>>0]|0){case 33:case 61:case 62:case 60:case 94:case 38:case 124:{k=0;break a}case 37:case 47:case 42:case 45:case 43:break;default:break b}k=n0a(a,2)|0;f[x>>2]=f[k>>2];f[n>>2]=f[e>>2];f[l>>2]=f[x>>2];f[m>>2]=f[n>>2];k=zg(l,c,d,m,g)|0;break a}break}case 115:{x=n0a(a,0)|0;if(KBa(f[x>>2]|0,133128)|0){k=n0a(a,2)|0;f[o>>2]=f[k>>2];f[q>>2]=f[e>>2];f[l>>2]=f[o>>2];f[m>>2]=f[q>>2];k=zg(l,c,d,m,g)|0;break a}g=n0a(a,0)|0;if(KBa(f[g>>2]|0,133124)|0){g=n0a(a,1)|0;g=f[g>>2]|0;Jbb(g)|0;if(Oab(f[g>>2]|0)|0){k=n0a(a,1)|0;k=n0a(f[k>>2]|0,1)|0;E_(m,vNa(Jbb(f[k>>2]|0)|0)|0);k=(b[m>>0]|0)==0?h[m+2>>0]|0:9;break a}else Ca(118411,118352,122,118400)}break}default:{}}while(0);k=9}while(0);u=y;return k|0}function Ag(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110679)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);a:do if((f[c+4>>2]|0)!=5)do switch(f[c+8>>2]|0){case 0:{Gv(f[a+28>>2]|0,103)|0;break a}case 2:{Gv(f[a+28>>2]|0,104)|0;break a}case 4:{Gv(f[a+28>>2]|0,105)|0;break a}case 20:{Gv(f[a+28>>2]|0,69)|0;break a}case 1:{Gv(f[a+28>>2]|0,121)|0;break a}case 3:{Gv(f[a+28>>2]|0,122)|0;break a}case 5:{Gv(f[a+28>>2]|0,123)|0;break a}case 21:{Gv(f[a+28>>2]|0,80)|0;break a}case 6:{Gv(f[a+28>>2]|0,-116)|0;break a}case 8:{Gv(f[a+28>>2]|0,-117)|0;break a}case 10:{Gv(f[a+28>>2]|0,-115)|0;break a}case 12:{Gv(f[a+28>>2]|0,-114)|0;break a}case 14:{Gv(f[a+28>>2]|0,-113)|0;break a}case 16:{Gv(f[a+28>>2]|0,-112)|0;break a}case 18:{Gv(f[a+28>>2]|0,-111)|0;break a}case 7:{Gv(f[a+28>>2]|0,-102)|0;break a}case 9:{Gv(f[a+28>>2]|0,-103)|0;break a}case 11:{Gv(f[a+28>>2]|0,-101)|0;break a}case 13:{Gv(f[a+28>>2]|0,-100)|0;break a}case 15:{Gv(f[a+28>>2]|0,-99)|0;break a}case 17:{Gv(f[a+28>>2]|0,-98)|0;break a}case 19:{Gv(f[a+28>>2]|0,-97)|0;break a}case 22:{Gv(f[a+28>>2]|0,-84)|0;break a}case 23:{Gv(f[a+28>>2]|0,-83)|0;break a}case 24:{Gv(f[a+28>>2]|0,-89)|0;break a}case 27:{Gv(f[a+28>>2]|0,-87)|0;break a}case 28:{Gv(f[a+28>>2]|0,-81)|0;break a}case 25:{Gv(f[a+28>>2]|0,-88)|0;break a}case 26:{Gv(f[a+28>>2]|0,-82)|0;break a}case 31:{Gv(f[a+28>>2]|0,-85)|0;break a}case 32:{Gv(f[a+28>>2]|0,-79)|0;break a}case 29:{Gv(f[a+28>>2]|0,-86)|0;break a}case 30:{Gv(f[a+28>>2]|0,-80)|0;break a}case 37:{Gv(f[a+28>>2]|0,-77)|0;break a}case 38:{Gv(f[a+28>>2]|0,-72)|0;break a}case 35:{Gv(f[a+28>>2]|0,-78)|0;break a}case 36:{Gv(f[a+28>>2]|0,-73)|0;break a}case 41:{Gv(f[a+28>>2]|0,-75)|0;break a}case 42:{Gv(f[a+28>>2]|0,-70)|0;break a}case 39:{Gv(f[a+28>>2]|0,-76)|0;break a}case 40:{Gv(f[a+28>>2]|0,-71)|0;break a}case 44:{Gv(f[a+28>>2]|0,-74)|0;break a}case 43:{Gv(f[a+28>>2]|0,-69)|0;break a}case 33:{Gv(f[a+28>>2]|0,-68)|0;break a}case 34:{Gv(f[a+28>>2]|0,-67)|0;break a}case 45:{Gv(f[a+28>>2]|0,-66)|0;break a}case 46:{Gv(f[a+28>>2]|0,-65)|0;break a}case 47:{Gv(f[a+28>>2]|0,-64)|0;break a}case 48:{Gv(f[a+28>>2]|0,-63)|0;break a}case 49:{Gv(f[a+28>>2]|0,-62)|0;break a}case 50:{Gv(f[a+28>>2]|0,-61)|0;break a}case 51:{Gv(f[a+28>>2]|0,-60)|0;break a}default:hb()}while(0);while(0);u=i;return}function Bg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;B=u;u=u+48|0;D=B+28|0;C=B+16|0;y=B+4|0;w=B;v=f[a+32>>2]|0;z=Jbb(v)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=1065353216;A=D+12|0;b=0;while(1){f[C>>2]=b;if(b>>>0>=(kQa(z)|0)>>>0){c=3;break}x=0;b=ia(80,z|0,b|0)|0;t=x;x=0;if(t&1){c=4;break}if((b|0)==1){b=f[A>>2]|0;x=0;c=ga(258,1)|0;t=x;x=0;if(t&1){c=10;break}x=0;d=ia(105,D|0,C|0)|0;t=x;x=0;if(t&1){c=10;break}t=X(c,b)|0;f[d>>2]=t}b=(f[C>>2]|0)+1|0}a:do if((c|0)==3){n=f[a+60>>2]|0;o=a+136|0;p=y+4|0;q=y+8|0;r=C+4|0;s=a+184|0;l=D+4|0;t=a+36|0;b=0;j=-1;m=f[a+56>>2]|0;b:while(1){if((m|0)==(n|0)){c=14;break}e=f[m>>2]|0;f[C>>2]=e;if(Vz(o,C)|0){k=e+24|0;g=e+28|0;i=f[k>>2]|0;h=(f[g>>2]|0)-i>>4;c=0;d=-1;while(1){if((c|0)==(h|0))break;E=Dab(f[i+(c<<4)>>2]|0)|0;E=E?c:d;c=c+1|0;d=E}if((d|0)!=-1){x=0;ua(522,C|0,e+12|0);E=x;x=0;if(E&1){c=25;break}d=(f[g>>2]|0)-(f[k>>2]|0)>>4;c=j;c:while(1){while(1){j=d+-1|0;if((d|0)<=0)break c;i=f[k>>2]|0;d=f[i+(j<<4)>>2]|0;if(Oab(d)|0){x=0;ua(523,C|0,f[i+(j<<4)+4>>2]|0);E=x;x=0;if(E&1){c=28;break b}}else{if(!(zab(d)|0))break;x=0;ia(106,C|0,f[i+(j<<4)+4>>2]|0)|0;E=x;x=0;if(E&1){c=28;break b}}d=j}if(!(Dab(d)|0)){c=51;break b}f[y>>2]=0;f[p>>2]=0;f[q>>2]=0;e=f[r>>2]|0;d=f[C>>2]|0;while(1){if((d|0)==(e|0))break;g=f[d>>2]|0;f[w>>2]=g;do if(OC(f[D>>2]|0,f[l>>2]|0,g)|0){h=f[p>>2]|0;if((h|0)==(f[q>>2]|0)){x=0;ua(524,y|0,w|0);E=x;x=0;if(E&1){c=41;break b}else break}else{f[h>>2]=g;f[p>>2]=h+4;break}}while(0);d=d+4|0}if((f[y>>2]|0)!=(f[p>>2]|0)){if(!b){x=0;c=ia(96,v|0,1)|0;E=x;x=0;if(E&1){c=45;break b}}x=0;b=ia(107,s|0,i+(j<<4)+8|0)|0;E=x;x=0;if(E&1){c=48;break b}i=f[b>>2]|0;E=Jbb(f[t>>2]|0)|0;x=0;za(3,a|0,i|0,y|0,c|0,D|0,z|0,E|0);E=x;x=0;if(E&1){c=48;break b}else b=1}zSa(y);d=j}zSa(C)}else c=j}else c=j;j=c;m=m+4|0}if((c|0)==14){do if(b){x=0;b=ga(258,1)|0;E=x;x=0;if(!(E&1)?(C=X(f[A>>2]|0,b)|0,E=Jbb(f[t>>2]|0)|0,x=0,wa(87,j|0,z|0,C|0,E|0),E=x,x=0,!(E&1)):0)break;b=Ia()|0;break a}while(0);SQa(D);u=B;return}else if((c|0)==25)b=Ia()|0;else if((c|0)==28){b=Ia()|0;c=29}else if((c|0)==41){b=Ia()|0;c=50}else if((c|0)==45){b=Ia()|0;c=50}else if((c|0)==48){b=Ia()|0;c=50}else if((c|0)==51){x=0;sa(5);x=0;b=Ia()|0;c=29}if((c|0)==29)c=52;else if((c|0)==50){zSa(y);c=52}if((c|0)==52)zSa(C)}else if((c|0)==4){b=Ia()|0;c=12}else if((c|0)==10){b=Ia()|0;c=12}while(0);SQa(D);Ua(b|0)}function Cg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+48|0;m=q+44|0;r=q+40|0;l=q+32|0;g=q+12|0;i=q+16|0;h=q;p=n0a(c,0)|0;if(KBa(f[p>>2]|0,132396)|0?(p=n0a(c,1)|0,p=f[p>>2]|0,Jbb(p)|0,Oab(f[p>>2]|0)|0):0){c=n0a(c,1)|0;c=uPa(Jbb(f[c>>2]|0)|0)|0;c=f[c>>2]|0;f[m>>2]=c;kMa(r);f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;p=j7a(64991)|0;x=0;va(87,h|0,64991,p|0);p=x;x=0;a:do if(p&1){c=Ia()|0;s=16}else{x=0;ia(59,h|0,c|0)|0;p=x;x=0;do if(p&1)c=Ia()|0;else{f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];c=0;while(1){if((c|0)==3)break;f[h+(c<<2)>>2]=0;c=c+1|0}x=0;va(88,g|0,((b[i+11>>0]|0)<0?f[i>>2]|0:i)|0,0);p=x;x=0;if(p&1){c=Ia()|0;MTa(i);break}L1a(l,f[g>>2]|0);g=f[r>>2]|0;f[g>>2]=f[l>>2];MTa(i);MTa(h);p=g+4|0;f[p>>2]=d;k=e+8|0;Q$a(l,k);LUa(i,k);k=l+4|0;j=f[i>>2]|0;e=f[i+4>>2]|0;n=g+12|0;h=g+16|0;o=g+8|0;i=g;while(1){if(!(qTa(f[l>>2]|0,f[k>>2]|0,j,e)|0))break;x=0;c=ga(253,l|0)|0;d=x;x=0;if(d&1){s=22;break}c=(f[c>>2]|0)+4|0;d=f[n>>2]|0;if((d|0)==(f[h>>2]|0)){x=0;ua(260,o|0,c|0);d=x;x=0;if(d&1){s=22;break}}else{f[d>>2]=f[c>>2];f[n>>2]=d+4}YYa(l)}if((s|0)==22){c=Ia()|0;d=r;s=49;break a}c=a+212|0;do if((gV(c,f[m>>2]|0)|0)==(a+216|0)){x=0;c=ia(54,c|0,m|0)|0;s=x;x=0;if(s&1){c=Ia()|0;d=r;s=49;break a}else{s=f[c>>2]|0;f[c>>2]=i;f[r>>2]=s;c=s;s=46;break}}else{x=0;c=ia(54,c|0,m|0)|0;m=x;x=0;if(m&1){c=Ia()|0;d=r;s=49;break a}j=f[c>>2]|0;if($Ya(g,j)|0){k=j+8|0;l=j+12|0;a=j+16|0;i=0;b:while(1){m=f[o>>2]|0;h=m;if(i>>>0>=(f[n>>2]|0)-m>>2>>>0)break;m=f[l>>2]|0;c=f[k>>2]|0;d=m;do if(m-c>>2>>>0>i>>>0){d=c+(i<<2)|0;e=f[d>>2]|0;c=f[h+(i<<2)>>2]|0;if(!e){f[d>>2]=c;break}if((e|0)!=(c|0))f[d>>2]=4}else{c=h+(i<<2)|0;if((f[a>>2]|0)==(d|0)){x=0;ua(260,k|0,c|0);m=x;x=0;if(m&1){s=33;break b}else break}else{f[d>>2]=f[c>>2];f[l>>2]=d+4;break}}while(0);i=i+1|0}if((s|0)==33){c=Ia()|0;f[r>>2]=0;s=50;break a}e=j+4|0;d=f[e>>2]|0;c=f[p>>2]|0;if(d){if(!((d|0)==(c|0)|(c|0)==0)){c=4;s=44}}else s=44;if((s|0)==44)f[e>>2]=c;f[r>>2]=0;c=g;s=47}else{c=g;s=46}}while(0);if((s|0)==46?(f[r>>2]=0,c|0):0)s=47;if((s|0)==47){T_a(c);Cbb(c)}u=q;return}while(0);MTa(h);s=16}while(0);if((s|0)==16){d=r;g=f[r>>2]|0;s=49}if((s|0)==49){f[d>>2]=0;if(g)s=50}if((s|0)==50){T_a(g);Cbb(g)}Ua(c|0)}Ca(64929,51387,482,64966)}function Dg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;A=u;u=u+48|0;B=A+32|0;C=A+16|0;v=A;t=c+12|0;d=f[t>>2]|0;do if(xba(a,d)|0){if(!d)Ca(108289,106511,268,108312);UN(C,a,d);z=a+108|0;w=c+8|0;d=BB(z,w)|0;a:do if(!d){p=W7a(w)|0;m=a+112|0;j=f[m>>2]|0;o=(j|0)==0;b:do if(!o){k=j+-1|0;l=(k&j|0)==0;if(!l)if(p>>>0>>0)e=p;else e=(p>>>0)%(j>>>0)|0;else e=k&p;d=f[(f[z>>2]|0)+(e<<2)>>2]|0;if(!d)y=20;else do{d=f[d>>2]|0;if(!d){y=20;break b}g=f[d+4>>2]|0;if((g|0)!=(p|0)){if(!l){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&k;if((g|0)!=(e|0)){y=20;break b}}}while(!(g2a(f[d+8>>2]|0,f[w>>2]|0)|0))}else{e=0;y=20}while(0);c:do if((y|0)==20){x=0;xa(9,B|0,z|0,p|0,w|0,C|0);y=x;x=0;d:do if(y&1)d=Ia()|0;else{k=a+120|0;h=+(((f[k>>2]|0)+1|0)>>>0);i=+n[a+124>>2];do if(o|i*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;w=~~+W(+(h/i))>>>0;x=0;ua(2494,z|0,(y>>>0>>0?w:y)|0);y=x;x=0;if(!(y&1)){d=f[m>>2]|0;e=d+-1|0;if(!(e&d)){j=d;e=e&p;break}if(p>>>0>>0){j=d;e=p;break}j=d;e=(p>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[B>>2]|0;f[B>>2]=0;if(e|0){if(b[B+8>>0]|0)GWa(e+8|0);Cbb(e)}break d}while(0);d=f[(f[z>>2]|0)+(e<<2)>>2]|0;if(!d){d=a+116|0;g=f[B>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[z>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=B;else{d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;f[(f[z>>2]|0)+(d<<2)>>2]=g;d=B}}else{a=f[B>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;d=B}f[k>>2]=(f[k>>2]|0)+1;f[d>>2]=0;break c}while(0);y=65;break a}while(0);f[c+4>>2]=1;y=56}else{x=0;ua(2492,B|0,d+12|0);z=x;x=0;if(z&1)d=Ia()|0;else{x=0;va(159,v|0,a|0,1);z=x;x=0;if(z&1)d=Ia()|0;else{g=a+44|0;d=f[g>>2]|0;x=0;e=ga(320,v|0)|0;z=x;x=0;if(!(z&1)?(x=0,j=ja(45,d|0,e|0,f[t>>2]|0)|0,z=x,x=0,!(z&1)):0){d=f[g>>2]|0;x=0;e=ga(320,B|0)|0;z=x;x=0;if((((((!(z&1)?(k=f[g>>2]|0,x=0,l=ga(320,C|0)|0,z=x,x=0,!(z&1)):0)?(x=0,m=ja(46,f[k>>2]|0,l|0,1)|0,z=x,x=0,!(z&1)):0)?(x=0,o=ja(45,d|0,e|0,m|0)|0,z=x,x=0,!(z&1)):0)?(p=f[g>>2]|0,x=0,q=ga(320,v|0)|0,z=x,x=0,!(z&1)):0)?(x=0,r=ja(46,f[p>>2]|0,q|0,1)|0,z=x,x=0,!(z&1)):0)?(f[t>>2]=r,f[c+4>>2]=1,x=0,s=ka(31,f[g>>2]|0,j|0,o|0,c|0)|0,c=x,x=0,!(c&1)):0){GVa(f[a+16>>2]|0,s)|0;MCa(v);MCa(B);y=56;break}d=Ia()|0}else d=Ia()|0;MCa(v)}MCa(B)}y=65}while(0);if((y|0)==56){MCa(C);break}else if((y|0)==65){MCa(C);Ua(d|0)}}while(0);u=A;return}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:while(1){l=b;e=b+-4|0;b:while(1){k=a;d=l-k|0;g=d>>2;switch(g|0){case 1:case 0:break a;case 2:{m=4;break a}case 3:{m=6;break a}case 4:{m=7;break a}case 5:{m=8;break a}default:{}}if((d|0)<28){m=10;break a}i=a+(((g|0)/2|0)<<2)|0;if((d|0)>3996){d=(g|0)/4|0;d=Fv(a,a+(d<<2)|0,i,i+(d<<2)|0,e,c)|0}else d=Ew(a,i,e,c)|0;if(kD(c,a,i)|0)g=e;else{g=e;do{g=g+-4|0;if((a|0)==(g|0)){m=17;break b}}while(!(kD(c,g,i)|0));j=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=j;d=d+1|0}h=a+4|0;c:do if(h>>>0>>0){j=i;while(1){while(1){i=h+4|0;if(kD(c,h,j)|0)h=i;else break}do g=g+-4|0;while(!(kD(c,g,j)|0));if(h>>>0>g>>>0){g=j;break c}n=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=n;j=(j|0)==(h|0)?g:j;h=i;d=d+1|0}}else g=i;while(0);if((h|0)!=(g|0)?kD(c,g,h)|0:0){n=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=n;d=d+1|0}if(!d){g=Fl(a,h,c)|0;d=h+4|0;if(Fl(d,b,c)|0){m=46;break}if(g){e=2;a=d;m=51;break}}n=h;if((n-k|0)>=(l-n|0)){m=50;break}Eg(a,h,c);a=h+4|0}d:do if((m|0)==17){m=0;d=a+4|0;if(!(kD(c,a,e)|0)){while(1){if((d|0)==(e|0))break a;if(kD(c,a,d)|0)break;d=d+4|0}n=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=n;d=d+4|0}if((d|0)==(e|0))break a;while(1){while(1){g=d+4|0;if(kD(c,a,d)|0)break;else d=g}do e=e+-4|0;while(kD(c,a,e)|0);if(d>>>0>=e>>>0){e=4;a=d;m=51;break d}n=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=n;d=g}}else if((m|0)==46){e=g?1:2;b=g?b:h;m=51}else if((m|0)==50){m=0;Eg(h+4|0,b,c);b=h}while(0);if((m|0)==51){m=0;switch(e&7){case 2:case 4:case 0:break;default:break a}}}if((m|0)==4){if(kD(c,e,a)|0){n=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=n}}else if((m|0)==6)Ew(a,a+4|0,e,c)|0;else if((m|0)==7)_z(a,a+4|0,a+8|0,e,c)|0;else if((m|0)==8)Fv(a,a+4|0,a+8|0,a+12|0,e,c)|0;else if((m|0)==10)Ts(a,b,c);return}function Fg(a,c,e,g,h,i,j,k){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|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,v=0,w=0,y=0,z=0,A=0;A=u;u=u+16|0;r=A+12|0;q=A+8|0;t=A+4|0;v=A;dYa(r,g);x=0;y=ia(73,f[r>>2]|0,134880)|0;s=x;x=0;if(s&1){A=Ia()|0;OCa(r);Ua(A|0)}OCa(r);f[h>>2]=0;s=y+8|0;l=0;a:while(1){if(!((j|0)!=(k|0)&(l|0)==0))break;m=c;if(!c){o=0;p=0;n=1}else{l=f[c+12>>2]|0;if((l|0)==(f[c+16>>2]|0))l=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else l=d7a(b[l>>0]|0)|0;l=g2a(l,-1)|0;o=l?0:c;p=l?0:c;n=l;m=l?0:m}c=e;if(e){l=f[e+12>>2]|0;if((l|0)==(f[e+16>>2]|0))l=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else l=d7a(b[l>>0]|0)|0;if(!(g2a(l,-1)|0)){if(!n){z=61;break}}else{c=0;z=14}}else z=14;if((z|0)==14){z=0;if(n){e=0;z=61;break}else e=0}b:do if((ec[f[(f[y>>2]|0)+36>>2]&127](y,b[j>>0]|0,0)|0)<<24>>24==37){n=j+1|0;if((n|0)==(k|0)){z=61;break a}l=ec[f[(f[y>>2]|0)+36>>2]&127](y,b[n>>0]|0,0)|0;switch(l<<24>>24){case 48:case 69:{j=j+2|0;if((j|0)==(k|0)){z=61;break a}o=l;l=ec[f[(f[y>>2]|0)+36>>2]&127](y,b[j>>0]|0,0)|0;j=n;break}default:o=0}p=f[(f[a>>2]|0)+36>>2]|0;f[t>>2]=m;f[v>>2]=c;f[q>>2]=f[t>>2];f[r>>2]=f[v>>2];j=j+2|0;c=lc[p&15](a,q,r,g,h,i,l,o)|0}else{c=b[j>>0]|0;if(c<<24>>24>-1?(w=f[s>>2]|0,d[w+(c<<24>>24<<1)>>1]&8192):0){do{j=j+1|0;if((j|0)==(k|0)){j=k;break}c=b[j>>0]|0;if(c<<24>>24<=-1)break}while((d[w+(c<<24>>24<<1)>>1]&8192)!=0);c=o;m=e;o=e;l=p;while(1){if(!l){p=0;l=1}else{e=f[l+12>>2]|0;if((e|0)==(f[l+16>>2]|0))e=bc[f[(f[l>>2]|0)+36>>2]&511](l)|0;else e=d7a(b[e>>0]|0)|0;n=g2a(e,-1)|0;c=n?0:c;p=n?0:l;l=n}if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0))e=bc[f[(f[o>>2]|0)+36>>2]&511](o)|0;else e=d7a(b[e>>0]|0)|0;if(!(g2a(e,-1)|0))if(l)e=m;else{e=m;break b}else{e=0;z=40}}else{e=m;z=40}if((z|0)==40){z=0;if(l)break b;else o=0}m=p+12|0;l=f[m>>2]|0;n=p+16|0;if((l|0)==(f[n>>2]|0))l=bc[f[(f[p>>2]|0)+36>>2]&511](p)|0;else l=d7a(b[l>>0]|0)|0;if((l&255)<<24>>24<=-1)break b;if(!(d[(f[s>>2]|0)+(l<<24>>24<<1)>>1]&8192))break b;l=f[m>>2]|0;if((l|0)==(f[n>>2]|0))bc[f[(f[p>>2]|0)+40>>2]&511](p)|0;else f[m>>2]=l+1;m=e;l=p}}l=p+12|0;c=f[l>>2]|0;m=p+16|0;if((c|0)==(f[m>>2]|0))c=bc[f[(f[p>>2]|0)+36>>2]&511](p)|0;else c=d7a(b[c>>0]|0)|0;n=dc[f[(f[y>>2]|0)+12>>2]&255](y,c&255)|0;if(n<<24>>24!=(dc[f[(f[y>>2]|0)+12>>2]&255](y,b[j>>0]|0)|0)<<24>>24){f[h>>2]=4;c=o;break}c=f[l>>2]|0;if((c|0)==(f[m>>2]|0))bc[f[(f[p>>2]|0)+40>>2]&511](p)|0;else f[l>>2]=c+1;j=j+1|0;c=o}while(0);l=f[h>>2]|0}if((z|0)==61){f[h>>2]=4;c=p}if(!c){c=0;l=1}else{j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=d7a(b[j>>0]|0)|0;l=g2a(j,-1)|0;c=l?0:c}if(e){j=f[e+12>>2]|0;if((j|0)==(f[e+16>>2]|0))e=bc[f[(f[e>>2]|0)+36>>2]&511](e)|0;else e=d7a(b[j>>0]|0)|0;if(!(g2a(e,-1)|0)){if(!l)z=74}else z=72}else z=72;if((z|0)==72?l:0)z=74;if((z|0)==74)f[h>>2]=f[h>>2]|2;u=A;return c|0}function Gg(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+16|0;y=w;v=YTa(f[i>>2]|0,134912)|0;r=YTa(f[i>>2]|0,134920)|0;pc[f[(f[r>>2]|0)+20>>2]&4095](y,r);f[h>>2]=e;i=b[a>>0]|0;a:do switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,i|0)|0;s=x;x=0;if(s&1){i=Ia()|0;break a}else{k=f[h>>2]|0;f[h>>2]=k+4;f[k>>2]=i;k=a+1|0;t=5;break a}}default:{k=a;t=5}}while(0);b:do if((t|0)==5){s=d;c:do if((s-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:{t=6;break c}}x=0;j=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,48)|0;q=x;x=0;if(!(q&1)?(m=f[h>>2]|0,f[h>>2]=m+4,f[m>>2]=j,m=k+2|0,x=0,l=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,b[i>>0]|0)|0,q=x,x=0,!(q&1)):0){i=f[h>>2]|0;f[h>>2]=i+4;f[i>>2]=l;i=m;while(1){if(i>>>0>=d>>>0){k=m;j=i;t=20;break c}t=b[i>>0]|0;kOa()|0;if(!(qbb(t<<24>>24)|0)){k=m;j=i;t=20;break c}i=i+1|0}}}else t=6;while(0);d:do if((t|0)==6){i=k;while(1){if(i>>>0>=d>>>0){j=i;t=20;break d}t=b[i>>0]|0;kOa()|0;if(!(rbb(t<<24>>24)|0)){j=i;t=20;break d}i=i+1|0}}while(0);e:do if((t|0)==20){p=y+11|0;o=b[p>>0]|0;q=y+4|0;f:do if((o<<24>>24<0?f[q>>2]|0:o&255)|0){g:do if((k|0)!=(j|0)){i=j;l=k;while(1){i=i+-1|0;if(l>>>0>=i>>>0)break g;o=b[l>>0]|0;b[l>>0]=b[i>>0]|0;b[i>>0]=o;l=l+1|0}}while(0);x=0;o=ga(f[(f[r>>2]|0)+16>>2]|0,r|0)|0;n=x;x=0;if(n&1){i=Ia()|0;break b}n=k;i=0;l=0;while(1){if(n>>>0>=j>>>0)break;m=b[((b[p>>0]|0)<0?f[y>>2]|0:y)+i>>0]|0;if(m<<24>>24>0&(l|0)==(m<<24>>24|0)){l=f[h>>2]|0;f[h>>2]=l+4;f[l>>2]=o;l=b[p>>0]|0;i=i+(i>>>0<((l<<24>>24<0?f[q>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}x=0;m=ia(f[(f[v>>2]|0)+44>>2]|0,v|0,b[n>>0]|0)|0;z=x;x=0;if(z&1){t=39;break}z=f[h>>2]|0;f[h>>2]=z+4;f[z>>2]=m;n=n+1|0;l=l+1|0}if((t|0)==39){i=Ia()|0;break b}i=e+(k-a<<2)|0;l=f[h>>2]|0;if((i|0)==(l|0))k=v;else{k=l;while(1){k=k+-4|0;if(i>>>0>=k>>>0){k=v;i=l;break f}z=f[i>>2]|0;f[i>>2]=f[k>>2];f[k>>2]=z;i=i+4|0}}}else{x=0;ka(f[(f[v>>2]|0)+48>>2]|0,v|0,k|0,j|0,f[h>>2]|0)|0;z=x;x=0;if(z&1)break e;i=(f[h>>2]|0)+(j-k<<2)|0;f[h>>2]=i;k=v}while(0);while(1){if(j>>>0>=d>>>0)break;i=b[j>>0]|0;if(i<<24>>24==46){t=43;break}x=0;i=ia(f[(f[k>>2]|0)+44>>2]|0,v|0,i|0)|0;z=x;x=0;if(z&1){t=14;break}q=f[h>>2]|0;z=q+4|0;f[h>>2]=z;f[q>>2]=i;j=j+1|0;i=z}if((t|0)==14){i=Ia()|0;break b}if((t|0)==43){x=0;i=ga(f[(f[r>>2]|0)+12>>2]|0,r|0)|0;z=x;x=0;if(z&1)break;t=f[h>>2]|0;z=t+4|0;f[h>>2]=z;f[t>>2]=i;j=j+1|0;i=z}x=0;ka(f[(f[v>>2]|0)+48>>2]|0,v|0,j|0,d|0,i|0)|0;z=x;x=0;if(!(z&1)){z=(f[h>>2]|0)+(s-j<<2)|0;f[h>>2]=z;f[g>>2]=(c|0)==(d|0)?z:e+(c-a<<2)|0;MTa(y);u=w;return}}while(0);i=Ia()|0}while(0);MTa(y);Ua(i|0)}function Hg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+256|0;r=z+240|0;s=z+232|0;v=z+216|0;k=z+208|0;w=z+100|0;y=z;i=L_a(c)|0;if(!i){c=U_a(c)|0;if(c|0?(j=c+8|0,d=kqa(a+64|0,f[j>>2]|0)|0,d|0):0){e=f[d+8>>2]|0;d=e;c=e;while(1){c=f[c>>2]|0;if(!c)break;y=c;w=(f[y+8>>2]|0)>>>0<(f[e+8>>2]|0)>>>0;d=w?c:d;e=w?y:e}f[j>>2]=f[d+8>>2]}}else{e=a+64|0;j=i+8|0;_M(e,f[j>>2]|0);i=i+12|0;c=f[i>>2]|0;d=U_a(c)|0;if(d){vd(e,f[j>>2]|0,f[d+8>>2]|0);c=f[i>>2]|0}if(rT(a,c)|0){rKa(k,c);t=a+44|0;d=tu(t,k)|0;do if(!d){q=f[j>>2]|0;bza(y,c,q,fZa(f[a+40>>2]|0)|0);ZUa(w,k);vza(w+8|0,y);ZUa(r,w);q=Jbb(f[r+4>>2]|0)|0;o=a+48|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){l=i+-1|0;m=(l&i|0)==0;if(!m)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=l&q;c=f[(f[t>>2]|0)+(d<<2)>>2]|0;if(!c)e=23;else{j=r+4|0;k=s+4|0;while(1){c=f[c>>2]|0;if(!c){e=23;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!m){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&l;if((e|0)!=(d|0)){e=23;break a}}ZUa(r,c+8|0);ZUa(s,w);x=0;e=ka(32,f[r>>2]|0,f[j>>2]|0,f[s>>2]|0,f[k>>2]|0)|0;A=x;x=0;if(A&1)break;if(e){e=44;break a}}c=Ia()|0;e=47}}else{d=0;e=23}while(0);b:do if((e|0)==23){x=0;wa(147,v|0,t|0,q|0,w|0);A=x;x=0;if(A&1){c=Ia()|0;e=47;break}j=a+56|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+60>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;s=~~+W(+(g/h))>>>0;x=0;ua(2557,t|0,(A>>>0>>0?s:A)|0);A=x;x=0;if(!(A&1)){c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q;break}i=c;d=(q>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[v>>2]|0;f[v>>2]=0;if(d|0){if(b[v+8>>0]|0)uWa(d+8|0);Cbb(d)}e=47;break b}while(0);c=f[(f[t>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+52|0;e=f[v>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=e;f[(f[t>>2]|0)+(d<<2)>>2]=c;c=f[e>>2]|0;if(!c)c=v;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[t>>2]|0)+(c<<2)>>2]=e;c=v}}else{A=f[v>>2]|0;f[A>>2]=f[c>>2];f[c>>2]=A;c=v}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;e=44}while(0);if((e|0)==44){uWa(w);i1a(y);break}else if((e|0)==47){uWa(w);i1a(y);Ua(c|0)}}else{A=f[a+36>>2]|0;Jbb(A)|0;_0a(r,A);A=SKa(f[r>>2]|0,f[d+20>>2]|0,f[c+4>>2]|0)|0;f[i>>2]=A;b[a+84>>0]=1}while(0)}}u=z;return}function Ig(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;C=u;u=u+48|0;G=C+32|0;F=C+16|0;D=C;oD(G,a,1);x=0;va(159,F|0,a|0,1);z=x;x=0;if(z&1)h=Ia()|0;else{x=0;va(159,D|0,a|0,1);z=x;x=0;if(z&1)h=Ia()|0;else{z=a+44|0;h=f[z>>2]|0;x=0;i=ga(320,G|0)|0;H=x;x=0;a:do if((((((!(H&1)?(j=f[z>>2]|0,x=0,k=ga(320,c|0)|0,H=x,x=0,!(H&1)):0)?(x=0,l=ja(46,f[j>>2]|0,k|0,1)|0,H=x,x=0,!(H&1)):0)?(m=f[z>>2]|0,x=0,n=ga(320,e|0)|0,H=x,x=0,!(H&1)):0)?(x=0,o=ja(46,f[m>>2]|0,n|0,1)|0,H=x,x=0,!(H&1)):0)?(x=0,p=ka(7,f[j>>2]|0,1,l|0,o|0)|0,H=x,x=0,!(H&1)):0)?(x=0,A=ja(45,h|0,i|0,p|0)|0,H=x,x=0,!(H&1)):0){h=f[z>>2]|0;x=0;i=ga(320,D|0)|0;H=x;x=0;if((((((!(H&1)?(q=f[z>>2]|0,x=0,r=ga(320,c|0)|0,H=x,x=0,!(H&1)):0)?(x=0,s=ja(46,f[q>>2]|0,r|0,1)|0,H=x,x=0,!(H&1)):0)?(t=f[z>>2]|0,x=0,v=ga(320,e|0)|0,H=x,x=0,!(H&1)):0)?(x=0,w=ja(46,f[t>>2]|0,v|0,1)|0,H=x,x=0,!(H&1)):0)?(x=0,y=ka(7,f[q>>2]|0,18,s|0,w|0)|0,H=x,x=0,!(H&1)):0)?(x=0,B=ja(45,h|0,i|0,y|0)|0,H=x,x=0,!(H&1)):0){l=f[z>>2]|0;x=0;m=ga(320,F|0)|0;H=x;x=0;do if(!(H&1)){k=f[z>>2]|0;x=0;h=ga(320,D|0)|0;H=x;x=0;if(H&1)break;x=0;j=ja(46,f[k>>2]|0,h|0,1)|0;H=x;x=0;if(H&1)break;i=f[z>>2]|0;x=0;h=ga(320,g|0)|0;H=x;x=0;if(H&1)break;x=0;h=ja(46,f[i>>2]|0,h|0,1)|0;H=x;x=0;if(H&1)break;x=0;h=ka(7,f[k>>2]|0,0,j|0,h|0)|0;H=x;x=0;if(H&1)break;x=0;n=ja(45,l|0,m|0,h|0)|0;H=x;x=0;if(H&1)break;l=f[z>>2]|0;x=0;m=ga(320,F|0)|0;H=x;x=0;do if(!(H&1)){k=f[z>>2]|0;x=0;h=ga(320,d|0)|0;H=x;x=0;if(H&1)break;x=0;j=ja(46,f[k>>2]|0,h|0,1)|0;H=x;x=0;if(H&1)break;h=f[z>>2]|0;x=0;i=ga(320,F|0)|0;H=x;x=0;if(H&1)break;x=0;h=ja(46,f[h>>2]|0,i|0,1)|0;H=x;x=0;if(H&1)break;x=0;h=ka(7,f[k>>2]|0,1,j|0,h|0)|0;H=x;x=0;if(H&1)break;x=0;j=ja(45,l|0,m|0,h|0)|0;H=x;x=0;if(H&1)break;h=f[z>>2]|0;x=0;i=ga(320,G|0)|0;H=x;x=0;do if(!(H&1)){x=0;h=ja(46,f[h>>2]|0,i|0,1)|0;H=x;x=0;if(H&1)break;x=0;h=pa(15,f[z>>2]|0,b|0,A|0,B|0,n|0,j|0,h|0)|0;H=x;x=0;if(H&1)break;x=0;va(161,a|0,h|0,F|0);H=x;x=0;if(H&1)break;MCa(D);MCa(F);MCa(G);u=C;return h|0}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break a}while(0);h=Ia()|0;break}h=Ia()|0}else E=38;while(0);if((E|0)==38)h=Ia()|0;MCa(D)}MCa(F)}MCa(G);Ua(h|0);return 0}function Jg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+144|0;s=t+128|0;n=t+120|0;w=t+28|0;v=t+16|0;o=t+12|0;p=t+8|0;q=t;if(!(c>>>0>>0&((c|0)!=-1&(d|0)!=-1)))Ca(114981,115063,149,115092);l=a+12|0;gA(w,f[l>>2]|0,0);x=0;e=ia(75,f[a>>2]|0,d|0)|0;r=x;x=0;if(!(r&1)?(x=0,ua(292,w|0,f[e>>2]|0),r=x,x=0,!(r&1)):0){b[w+26>>0]=0;f[v>>2]=0;m=v+4|0;f[m>>2]=0;h=v+8|0;f[h>>2]=0;i=a+16|0;j=q+4|0;k=n+4|0;r=s+8|0;e=d;a:while(1){e=e+-1|0;x=0;g=ia(75,f[a>>2]|0,e|0)|0;y=x;x=0;if(y&1){k=23;break}x=0;g=ia(210,a|0,f[g>>2]|0)|0;y=x;x=0;if(y&1){k=23;break}f[o>>2]=g;if(!g){x=0;g=ia(75,f[a>>2]|0,e|0)|0;y=x;x=0;if(y&1){k=23;break}x=0;ua(292,w|0,f[g>>2]|0);y=x;x=0;if(y&1){k=23;break}}else{y=Wz(i,o)|0;g=y;if(!y){f[p>>2]=o;f[q>>2]=f[l>>2];f[j>>2]=o;x=0;wa(153,s|0,i|0,p|0,q|0);y=x;x=0;if(y&1){k=25;break}g=f[s>>2]|0;x=0;va(172,n|0,i|0,g|0);y=x;x=0;if(y&1){k=13;break}y=(b[k>>0]|0)!=0;f[s>>2]=0;if(!(y|(g|0)==0)){if(b[r>>0]|0)XYa(g+8|0);Cbb(g)}g=f[n>>2]|0}g=g+12|0;do if(xj(w,g)|0){x=0;ua(3099,w|0,g|0);y=x;x=0;if(y&1){k=29;break a}}else{g=f[m>>2]|0;if((g|0)==(f[h>>2]|0)){x=0;ua(3100,v|0,o|0);y=x;x=0;if(y&1){k=29;break a}else break}else{f[g>>2]=f[o>>2];f[m>>2]=(f[m>>2]|0)+4;break}}while(0);if((e|0)==(c|0)){k=40;break}}if(!e){k=37;break}}b:do if((k|0)==13){d=Ia()|0;f[s>>2]=0;if(g|0){if(b[r>>0]|0)XYa(g+8|0);Cbb(g)}k=26}else if((k|0)==23){d=Ia()|0;k=24}else if((k|0)==25){d=Ia()|0;k=26}else if((k|0)==29){d=Ia()|0;k=39}else if((k|0)==37){x=0;wa(71,115108,115063,184,115092);x=0;d=Ia()|0;k=24}else if((k|0)==40){y=(f[m>>2]|0)-(f[v>>2]|0)|0;j=y>>2;do if(y){i=j+-1|0;e=0;while(1){if(c>>>0>d>>>0)break;if(e>>>0>>0){x=0;g=ia(75,f[a>>2]|0,c|0)|0;y=x;x=0;if(y&1){k=49;break}if((f[g>>2]|0)==(f[(f[v>>2]|0)+(i-e<<2)>>2]|0))e=e+1|0;else k=50}else k=50;if((k|0)==50){k=0;if(!e)e=0;else{x=0;g=ia(75,f[a>>2]|0,c|0)|0;y=x;x=0;if(y&1){k=49;break}g=f[g>>2]|0;x=0;h=ia(75,f[a>>2]|0,c-e|0)|0;y=x;x=0;if(y&1){k=49;break}f[h>>2]=g}}c=c+1|0}if((k|0)==49){d=Ia()|0;break b}if((e|0)!=(j|0)){x=0;wa(71,115114,115063,206,115092);x=0;d=Ia()|0;break b}e=0;while(1){if(e>>>0>=j>>>0){k=57;break}g=f[(f[v>>2]|0)+(e<<2)>>2]|0;x=0;h=ia(75,f[a>>2]|0,d-e|0)|0;y=x;x=0;if(y&1){k=60;break}f[h>>2]=g;e=e+1|0}if((k|0)==57){d=d-j|0;break}else if((k|0)==60){d=Ia()|0;break b}}while(0);zSa(v);_7(w);u=t;return d+1|0}while(0);if((k|0)==24)k=39;else if((k|0)==26)k=39;zSa(v)}else d=Ia()|0;_7(w);Ua(d|0);return 0}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;y=u;u=u+80|0;A=y;w=y+56|0;v=y+48|0;d=A+48|0;e=A;do{KHa(e);e=e+24|0}while((e|0)!=(d|0));s=w+8|0;t=w+16|0;r=0;j=c;h=0;e=0;g=0;a:while(1){o=j;p=g;b:while(1){h=1-h|0;q=A+(h*24|0)|0;nra(q);switch(Jbb(f[o+8>>2]|0)|0){case 0:{z=60;break a}case 1:break;default:break b}g=f[(f[o+16>>2]|0)+8>>2]|0;if(!(Jbb(f[g+32>>2]|0)|0)){x=0;g=ka(14,a|0,b|0,g|0,q|0)|0;o=x;x=0;if(o&1){z=10;break a}if(p|0)f[p+8>>2]=g;e=(e|0)==0?g:e;if(!(Jbb(f[A+(h*24|0)+8>>2]|0)|0)){z=60;break a}}else{x=0;g=ka(15,a|0,b|0,o|0,q|0)|0;o=x;x=0;if(o&1){z=15;break a}if(p|0)f[p+8>>2]=g;e=(e|0)==0?g:e;if(!(Jbb(f[A+(h*24|0)+8>>2]|0)|0)){z=60;break a}}o=q;p=g}KHa(w);x=0;ua(1493,o|0,w|0);n=x;x=0;if(n&1){z=23;break}if(Jbb(f[s>>2]|0)|0){g=Jbb(f[t>>2]|0)|0;m=T6a(w)|0;while(1){n=g;if((m|0)==(n|0))break;j=g;k=f[j+8>>2]|0;j=j+12|0;g=f[n+4>>2]|0;i=Jbb(f[k+40>>2]|0)|0;k=T6a(k+24|0)|0;while(1){l=i;if((k|0)==(l|0))break;if(!(DQa(j,f[i+8>>2]|0)|0)){z=28;break}i=f[l+4>>2]|0}if((z|0)==28){z=0;YAa(w,n)}}g=Jbb(f[s>>2]|0)|0;if((g|0)==2){k=f[t>>2]|0;Jbb(k)|0;g=f[k+8>>2]|0;f[v>>2]=g;i=Jbb(f[k+12+8>>2]|0)|0;k=f[k+4>>2]|0;j=f[k+8>>2]|0;k=Jbb(f[k+20>>2]|0)|0;c:do if((i|0)!=(k|0)){if((i|0)>(k|0))f[v>>2]=j;else g=j;x=0;l=ia(142,w|0,v|0)|0;n=x;x=0;if(n&1){z=43;break a}i=Jbb(f[l+16>>2]|0)|0;m=T6a(l)|0;while(1){n=i;if((m|0)==(n|0))break;j=f[i+8>>2]|0;i=Jbb(f[j+16>>2]|0)|0;j=T6a(j)|0;while(1){k=i;if((j|0)==(k|0))break;if(!(DQa(l,f[i+8>>2]|0)|0))break c;i=f[k+4>>2]|0}i=f[n+4>>2]|0}dW(w,g)}while(0);g=Jbb(f[s>>2]|0)|0}if(g|0){i=Jbb(f[o+16>>2]|0)|0;j=T6a(o)|0;g=0;while(1){k=i;if((j|0)==(k|0))break;n=(dRa(c,f[i+8>>2]|0)|0)==0;g=g|n^1;if(!n)break;i=f[k+4>>2]|0}x=0;k=oa(41,a|0,b|0,o|0,w|0,q|0,g|0)|0;n=x;x=0;if(n&1){z=52;break}if(p|0)f[p+8>>2]=k;e=(e|0)==0?k:e;i=(Jbb(f[A+(h*24|0)+8>>2]|0)|0)==0;g=i?e:r;zka(w);if(i){e=g;z=60;break}else{r=g;j=i?o:q;g=i?p:k;continue}}}x=0;k=ka(15,a|0,b|0,o|0,q|0)|0;n=x;x=0;if(n&1){z=57;break}if(p|0)f[p+8>>2]=k;e=(e|0)==0?k:e;i=(Jbb(f[A+(h*24|0)+8>>2]|0)|0)==0;g=i?e:r;zka(w);if(i){e=g;z=60;break}else{r=g;j=i?o:q;g=i?p:k}}if((z|0)==10)e=Ia()|0;else if((z|0)==15)e=Ia()|0;else if((z|0)==23){e=Ia()|0;z=59}else if((z|0)==43){e=Ia()|0;z=59}else if((z|0)==52){e=Ia()|0;z=59}else if((z|0)==57){e=Ia()|0;z=59}else if((z|0)==60){do{d=d+-24|0;YDa(d)}while((d|0)!=(A|0));u=y;return e|0}if((z|0)==59)zka(w);do{d=d+-24|0;YDa(d)}while((d|0)!=(A|0));Ua(e|0);return 0}function Lg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;v=u;u=u+48|0;k=v+40|0;w=v+24|0;m=v+12|0;y=v;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;f[m>>2]=0;g=m+4|0;f[g>>2]=0;f[m+8>>2]=0;f[y>>2]=0;l=y+4|0;f[l>>2]=0;f[y+8>>2]=0;t=a+132|0;x=0;ua(588,d|0,f[t>>2]|0);r=x;x=0;do if((!(r&1)?(x=0,ua(3132,w|0,f[t>>2]|0),r=x,x=0,!(r&1)):0)?(r=f[t>>2]|0,r=X(r,r)|0,x=0,ua(3133,m|0,r|0),r=x,x=0,!(r&1)):0){j=f[m>>2]|0;i=f[g>>2]|0;g=j;i=(g+(i>>>5<<2)-j<<3)+(i&31)|0;if(i|0){f[k>>2]=j;f[k+4>>2]=0;XS(k,i)}r=a+32|0;o=BZa(Jbb(f[r>>2]|0)|0)|0;q=X(f[t>>2]|0,o)|0;x=0;ua(3134,y|0,q|0);q=x;x=0;if(q&1){i=Ia()|0;break}i=f[y>>2]|0;g=(f[l>>2]|0)-i|0;while(1){if((g|0)<=0)break;q=i;b[q>>0]=0;g=g+-1|0;i=q+1|0}f[e>>2]=0;q=a+184|0;g=f[m>>2]|0;p=a+156|0;a=0;while(1){if(a>>>0>=o>>>0){n=25;break}if((f[(f[c>>2]|0)+(a<<2)>>2]|0)!=(a|0)){n=13;break}f[(f[d>>2]|0)+(a<<2)>>2]=a;i=Jbb(f[r>>2]|0)|0;x=0;i=ia(80,i|0,a|0)|0;n=x;x=0;if(n&1){n=16;break}f[(f[w>>2]|0)+(a<<2)>>2]=i;j=o;while(1){k=f[t>>2]|0;if(j>>>0>=k>>>0)break;l=(X(k,a)|0)+j|0;m=g+(l>>>5<<2)|0;i=1<<(l&31);if(Dya(k,f[q>>2]|0,a,j)|0)i=f[m>>2]|i;else i=f[m>>2]&~i;f[m>>2]=i;n=VAa(k,f[p>>2]|0,a,j)|0;b[(f[y>>2]|0)+l>>0]=n;j=j+1|0}a=a+1|0}if((n|0)==13){x=0;wa(71,115369,115383,219,115415);x=0;i=Ia()|0;break}else if((n|0)==16){i=Ia()|0;break}else if((n|0)==25){k=a;i=f[t>>2]|0;a:while(1){if(a>>>0>=i>>>0){n=45;break}n=f[(f[c>>2]|0)+(a<<2)>>2]|0;m=0;i=-1;j=-1;while(1){if(m>>>0>=k>>>0)break;o=(X(f[t>>2]|0,m)|0)+n|0;if(!(1<<(o&31)&f[g+(o>>>5<<2)>>2])){l=Jbb(f[r>>2]|0)|0;x=0;l=ia(80,l|0,n|0)|0;o=x;x=0;if(o&1){n=36;break a}if((l|0)==(f[(f[w>>2]|0)+(m<<2)>>2]|0)?(s=(X(f[t>>2]|0,m)|0)+n|0,s=b[(f[y>>2]|0)+s>>0]|0,(j|0)==-1|(s&255)>(i&255)):0){f[(f[d>>2]|0)+(n<<2)>>2]=m;i=s;j=m}}m=m+1|0}if((j|0)==-1){f[(f[d>>2]|0)+(n<<2)>>2]=k;i=Jbb(f[r>>2]|0)|0;x=0;i=ia(80,i|0,n|0)|0;o=x;x=0;if(o&1){n=40;break}f[(f[w>>2]|0)+(k<<2)>>2]=i;i=k+1|0;o=(VAa(f[t>>2]|0,f[p>>2]|0,k,n)|0)&255;f[e>>2]=(f[e>>2]|0)+o;o=X(f[t>>2]|0,i)|0;x=0;ua(3134,y|0,o|0);o=x;x=0;if(o&1){n=40;break}else m=i}else{f[e>>2]=(f[e>>2]|0)+(i&255);m=k;k=j}l=a+1|0;j=l;while(1){i=f[t>>2]|0;if(j>>>0>=i>>>0)break;a=f[(f[c>>2]|0)+(j<<2)>>2]|0;o=a+(X(i,k)|0)|0;C=Dya(i,f[q>>2]|0,n,a)|0;z=g+(o>>>5<<2)|0;B=f[z>>2]|0;A=1<<(o&31);f[z>>2]=C|(A&B|0)!=0?B|A:B&~A;a=(VAa(i,f[p>>2]|0,n,a)|0)&255;o=(f[y>>2]|0)+o|0;b[o>>0]=(h[o>>0]|0)+a;j=j+1|0}k=m;a=l}if((n|0)==36){i=Ia()|0;break}else if((n|0)==40){i=Ia()|0;break}else if((n|0)==45){zSa(y);P1a(g);zSa(w);u=v;return}}}else n=14;while(0);if((n|0)==14){i=Ia()|0;g=f[m>>2]|0}zSa(y);P1a(g);zSa(w);Ua(i|0)}function Mg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;t=u;u=u+80|0;p=t+16|0;o=t+64|0;h=t+68|0;i=t+56|0;l=t+60|0;m=t+52|0;j=t+48|0;e=t;g=t+32|0;v=t+36|0;f[h>>2]=a;L1a(l,f[33047]|0);k1a(m,72474);f[o>>2]=f[l>>2];f[p>>2]=f[m>>2];m=JB(d,o,p)|0;f[i>>2]=m;if(!m){Q_a();x=0;ia(52,t+72|0,72483)|0;m=x;x=0;if(m&1){Ia()|0;lCa()}else lCa()}k=Fab(c)|0;_0a(o,d);l=vwa(f[o>>2]|0,0)|0;m=l+12|0;d=f[h>>2]|0;f[j>>2]=f[f[i>>2]>>2];f[p>>2]=f[j>>2];faa(m,Qya(o,d,FCa(o,p,1)|0)|0);j=SKa(f[o>>2]|0,f[h>>2]|0,1)|0;t$a(e,k);f[p>>2]=f[e>>2];f[p+4>>2]=f[e+4>>2];f[p+8>>2]=f[e+8>>2];f[p+12>>2]=f[e+12>>2];k=e0(o,p)|0;k=Kpa(f[o>>2]|0,0,j,k)|0;f[g>>2]=f[f[i>>2]>>2];f[p>>2]=f[g>>2];faa(m,Asa(o,p,k)|0);f[p>>2]=o;f[p+4>>2]=i;f[p+8>>2]=h;k=b+36|0;FQ(v,f[k>>2]|0);i=f[v+4>>2]|0;h=f[v>>2]|0;while(1){if((h|0)==(i|0)){c=7;break}j=f[h>>2]|0;x=0;c=ga(219,f[j>>2]|0)|0;g=x;x=0;if(g&1){c=21;break}e=c+8|0;g=f[e>>2]|0;if((g|0)!=0?(f[g+4>>2]|0)!=5:0){x=0;a=ia(99,f[o>>2]|0,0)|0;g=x;x=0;if(g&1){c=22;break}x=0;d=ia(96,b|0,f[(f[e>>2]|0)+4>>2]|0)|0;g=x;x=0;if(g&1){c=23;break}g=a+12|0;x=0;c=ja(45,o|0,d|0,f[e>>2]|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;ua(81,g|0,c|0);w=x;x=0;if(w&1){c=23;break}x=0;c=ga(259,p|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;ua(81,g|0,c|0);w=x;x=0;if(w&1){c=23;break}x=0;c=ja(46,f[o>>2]|0,d|0,f[(f[e>>2]|0)+4>>2]|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;c=ia(108,o|0,c|0)|0;w=x;x=0;if(w&1){c=23;break}x=0;ua(81,g|0,c|0);w=x;x=0;if(w&1){c=23;break}x=0;ta(439,a|0);w=x;x=0;if(w&1){c=23;break}}else{x=0;a=ga(259,p|0)|0;w=x;x=0;if(w&1){c=21;break}x=0;a=ja(51,o|0,a|0,c|0)|0;w=x;x=0;if(w&1){c=21;break}}f[j>>2]=a;h=h+4|0}a:do if((c|0)==7){a=f[k>>2]|0;b:do switch(f[a+4>>2]|0){case 0:{x=0;ua(81,m|0,a|0);w=x;x=0;if((!(w&1)?(x=0,n=ga(259,p|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,n|0),w=x,x=0,!(w&1)):0)c=40;break}case 5:{x=0;ua(81,m|0,a|0);w=x;x=0;if(!(w&1))c=40;break}default:{c=b+4|0;x=0;a=ia(96,b|0,f[c>>2]|0)|0;w=x;x=0;if((((((!(w&1)?(x=0,q=ja(45,o|0,a|0,f[k>>2]|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,q|0),w=x,x=0,!(w&1)):0)?(x=0,r=ga(259,p|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,r|0),w=x,x=0,!(w&1)):0)?(x=0,s=ja(46,f[o>>2]|0,a|0,f[c>>2]|0)|0,w=x,x=0,!(w&1)):0)?(x=0,ua(81,m|0,s|0),w=x,x=0,!(w&1)):0){c=40;break b}a=Ia()|0;break a}}while(0);if((c|0)==40?(x=0,ta(439,l|0),w=x,x=0,!(w&1)):0){f[k>>2]=l;f0a(v);u=t;return}a=Ia()|0}else if((c|0)==21)a=Ia()|0;else if((c|0)==22)a=Ia()|0;else if((c|0)==23)a=Ia()|0;while(0);f0a(v);Ua(a|0)}function Ng(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+16|0;y=w;v=YTa(f[i>>2]|0,134880)|0;s=YTa(f[i>>2]|0,134896)|0;pc[f[(f[s>>2]|0)+20>>2]&4095](y,s);f[h>>2]=e;i=b[a>>0]|0;a:do switch(i<<24>>24){case 43:case 45:{x=0;i=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,i|0)|0;r=x;x=0;if(r&1){i=Ia()|0;break a}else{k=f[h>>2]|0;f[h>>2]=k+1;b[k>>0]=i;k=a+1|0;t=5;break a}}default:{k=a;t=5}}while(0);b:do if((t|0)==5){r=d;c:do if((r-k|0)>1?(b[k>>0]|0)==48:0){i=k+1|0;switch(b[i>>0]|0){case 88:case 120:break;default:{t=6;break c}}x=0;j=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,48)|0;q=x;x=0;if(!(q&1)?(m=f[h>>2]|0,f[h>>2]=m+1,b[m>>0]=j,m=k+2|0,x=0,l=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,b[i>>0]|0)|0,q=x,x=0,!(q&1)):0){i=f[h>>2]|0;f[h>>2]=i+1;b[i>>0]=l;i=m;while(1){if(i>>>0>=d>>>0){k=m;t=20;break c}t=b[i>>0]|0;kOa()|0;if(!(qbb(t<<24>>24)|0)){k=m;t=20;break c}i=i+1|0}}}else t=6;while(0);d:do if((t|0)==6){i=k;while(1){if(i>>>0>=d>>>0){t=20;break d}t=b[i>>0]|0;kOa()|0;if(!(rbb(t<<24>>24)|0)){t=20;break d}i=i+1|0}}while(0);e:do if((t|0)==20){p=y+11|0;o=b[p>>0]|0;q=y+4|0;f:do if((o<<24>>24<0?f[q>>2]|0:o&255)|0){g:do if((k|0)!=(i|0)){j=i;l=k;while(1){j=j+-1|0;if(l>>>0>=j>>>0)break g;o=b[l>>0]|0;b[l>>0]=b[j>>0]|0;b[j>>0]=o;l=l+1|0}}while(0);x=0;o=ga(f[(f[s>>2]|0)+16>>2]|0,s|0)|0;n=x;x=0;if(n&1){i=Ia()|0;break b}n=k;j=0;l=0;while(1){if(n>>>0>=i>>>0)break;m=b[((b[p>>0]|0)<0?f[y>>2]|0:y)+j>>0]|0;if(m<<24>>24>0&(l|0)==(m<<24>>24|0)){l=f[h>>2]|0;f[h>>2]=l+1;b[l>>0]=o;l=b[p>>0]|0;j=j+(j>>>0<((l<<24>>24<0?f[q>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}x=0;m=ia(f[(f[v>>2]|0)+28>>2]|0,v|0,b[n>>0]|0)|0;z=x;x=0;if(z&1){t=39;break}z=f[h>>2]|0;f[h>>2]=z+1;b[z>>0]=m;n=n+1|0;l=l+1|0}if((t|0)==39){i=Ia()|0;break b}k=e+(k-a)|0;j=f[h>>2]|0;if((k|0)==(j|0))k=v;else while(1){j=j+-1|0;if(k>>>0>=j>>>0){k=v;break f}z=b[k>>0]|0;b[k>>0]=b[j>>0]|0;b[j>>0]=z;k=k+1|0}}else{x=0;ka(f[(f[v>>2]|0)+32>>2]|0,v|0,k|0,i|0,f[h>>2]|0)|0;z=x;x=0;if(z&1)break e;f[h>>2]=(f[h>>2]|0)+(i-k);k=v}while(0);while(1){if(i>>>0>=d>>>0)break;j=b[i>>0]|0;if(j<<24>>24==46){t=43;break}x=0;j=ia(f[(f[k>>2]|0)+28>>2]|0,v|0,j|0)|0;z=x;x=0;if(z&1){t=14;break}z=f[h>>2]|0;f[h>>2]=z+1;b[z>>0]=j;i=i+1|0}if((t|0)==14){i=Ia()|0;break b}if((t|0)==43){x=0;j=ga(f[(f[s>>2]|0)+12>>2]|0,s|0)|0;z=x;x=0;if(z&1)break;z=f[h>>2]|0;f[h>>2]=z+1;b[z>>0]=j;i=i+1|0}x=0;ka(f[(f[v>>2]|0)+32>>2]|0,v|0,i|0,d|0,f[h>>2]|0)|0;z=x;x=0;if(!(z&1)){z=(f[h>>2]|0)+(r-i)|0;f[h>>2]=z;f[g>>2]=(c|0)==(d|0)?z:e+(c-a)|0;MTa(y);u=w;return}}while(0);i=Ia()|0}while(0);MTa(y);Ua(i|0)}function Og(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=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;I=u;u=u+96|0;w=I+32|0;M=I+80|0;L=I+64|0;J=I+48|0;n=I+16|0;o=I;z=c+4|0;a:do if((f[z>>2]|0)==2){if(b[c+20>>0]|0)Ca(107296,106511,453,107345);oD(M,a,1);x=0;va(159,L|0,a|0,1);G=x;x=0;if(G&1)d=Ia()|0;else{x=0;va(159,J|0,a|0,1);G=x;x=0;if(G&1)d=Ia()|0;else{G=a+44|0;d=f[G>>2]|0;x=0;e=ga(320,J|0)|0;y=x;x=0;do if(!(y&1)?(B=c+24|0,x=0,H=ja(45,d|0,e|0,f[B>>2]|0)|0,y=x,x=0,!(y&1)):0){y=c+8|0;do if((b[y>>0]|0)==8){d=f[G>>2]|0;x=0;e=ga(320,L|0)|0;w=x;x=0;if((((!(w&1)?(h=f[G>>2]|0,i=(b[c+9>>0]|0)!=0,j=(Jbb(f[c+12>>2]|0)|0)+4|0,x=0,k=ga(320,J|0)|0,w=x,x=0,!(w&1)):0)?(x=0,l=ja(46,f[h>>2]|0,k|0,1)|0,w=x,x=0,!(w&1)):0)?(x=0,m=pa(10,f[h>>2]|0,4,i|0,j|0,1,l|0,1)|0,w=x,x=0,!(w&1)):0)?(x=0,g=ja(45,d|0,e|0,m|0)|0,w=x,x=0,!(w&1)):0)K=28}else{g=f[G>>2]|0;if(!(b[c+9>>0]|0)){x=0;e=ga(320,L|0)|0;v=x;x=0;if(v&1)break;d=f[G>>2]|0;t$a(o,0);x=0;f[w>>2]=f[o>>2];f[w+4>>2]=f[o+4>>2];f[w+8>>2]=f[o+8>>2];f[w+12>>2]=f[o+12>>2];d=ia(50,d|0,w|0)|0;w=x;x=0;if(w&1)break;x=0;d=ja(45,g|0,e|0,d|0)|0;w=x;x=0;if(w&1)break;else{g=d;K=28;break}}x=0;d=ga(320,L|0)|0;o=x;x=0;if(((((!(o&1)?(p=f[G>>2]|0,x=0,q=ga(320,M|0)|0,o=x,x=0,!(o&1)):0)?(x=0,r=ja(46,f[p>>2]|0,q|0,1)|0,q=x,x=0,!(q&1)):0)?(s=f[G>>2]|0,t$a(n,31),x=0,f[w>>2]=f[n>>2],f[w+4>>2]=f[n+4>>2],f[w+8>>2]=f[n+8>>2],f[w+12>>2]=f[n+12>>2],s=ia(50,s|0,w|0)|0,w=x,x=0,!(w&1)):0)?(x=0,t=ka(7,f[p>>2]|0,12,r|0,s|0)|0,w=x,x=0,!(w&1)):0)?(x=0,v=ja(45,g|0,d|0,t|0)|0,w=x,x=0,!(w&1)):0){g=v;K=28}}while(0);if((K|0)==28){f[z>>2]=1;z=b[y>>0]|0;b[y>>0]=(z&255)<4?z:4;y=c+16|0;z=Jbb(f[y>>2]|0)|0;x=0;ja(40,y|0,(z>>>0<4?z:4)|0,0)|0;z=x;x=0;if(z&1){d=Ia()|0;break}d=f[G>>2]|0;x=0;e=ga(320,J|0)|0;z=x;x=0;if(!(z&1)?(x=0,A=ja(46,f[d>>2]|0,e|0,1)|0,z=x,x=0,!(z&1)):0){f[B>>2]=A;d=f[G>>2]|0;x=0;e=ga(320,M|0)|0;B=x;x=0;do if(((!(B&1)?(x=0,C=ja(45,d|0,e|0,c|0)|0,c=x,x=0,!(c&1)):0)?(D=f[G>>2]|0,x=0,E=ga(320,M|0)|0,G=x,x=0,!(G&1)):0)?(x=0,F=ja(46,f[D>>2]|0,E|0,1)|0,G=x,x=0,!(G&1)):0){x=0;d=ma(27,d|0,H|0,C|0,g|0,F|0)|0;H=x;x=0;if(H&1)break;GVa(f[a+16>>2]|0,d)|0;x=0;va(161,a|0,d|0,L|0);a=x;x=0;if(a&1)break;MCa(J);MCa(L);MCa(M);break a}while(0);d=Ia()|0;break}}d=Ia()|0}else K=16;while(0);if((K|0)==16)d=Ia()|0;MCa(J)}MCa(L)}MCa(M);Ua(d|0)}while(0);u=I;return}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+b|0;c=f[a+4>>2]|0;do if(!(c&1)){e=f[a>>2]|0;if(!(c&3))return;h=a+(0-e)|0;b=e+b|0;if((f[33307]|0)==(h|0)){a=i+4|0;c=f[a>>2]|0;if((c&3|0)!=3)break;f[33304]=b;f[a>>2]=c&-2;f[h+4>>2]=b|1;f[i>>2]=b;return}d=e>>>3;if(e>>>0<256){a=f[h+8>>2]|0;c=f[h+12>>2]|0;if((c|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=c;f[c+8>>2]=a;break}}g=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){c=h+16|0;d=c+4|0;a=f[d>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}}else c=d;while(1){e=a+20|0;d=f[e>>2]|0;if(!d){e=a+16|0;d=f[e>>2]|0;if(!d)break;else{a=d;c=e}}else{a=d;c=e}}f[c>>2]=0}else{e=f[h+8>>2]|0;f[e+12>>2]=a;f[a+8>>2]=e}while(0);if(g){c=f[h+28>>2]|0;d=133512+(c<<2)|0;if((f[d>>2]|0)==(h|0)){f[d>>2]=a;if(!a){f[33303]=f[33303]&~(1<>2]|0)==(h|0)?e:g+20|0)>>2]=a;if(!a)break}f[a+24>>2]=g;c=h+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(c){f[a+20>>2]=c;f[c+24>>2]=a}}}else h=a;while(0);a=i+4|0;d=f[a>>2]|0;if(!(d&2)){if((f[33308]|0)==(i|0)){i=(f[33305]|0)+b|0;f[33305]=i;f[33308]=h;f[h+4>>2]=i|1;if((h|0)!=(f[33307]|0))return;f[33307]=0;f[33304]=0;return}if((f[33307]|0)==(i|0)){i=(f[33304]|0)+b|0;f[33304]=i;f[33307]=h;f[h+4>>2]=i|1;f[h+i>>2]=i;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){a=f[i+8>>2]|0;b=f[i+12>>2]|0;if((b|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=b;f[b+8>>2]=a;break}}else{g=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;c=a+4|0;b=f[c>>2]|0;if(!b){b=f[a>>2]|0;if(!b){c=0;break}}else a=c;while(1){d=b+20|0;c=f[d>>2]|0;if(!c){d=b+16|0;c=f[d>>2]|0;if(!c)break;else{b=c;a=d}}else{b=c;a=d}}f[a>>2]=0;c=b}else{c=f[i+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);if(g|0){b=f[i+28>>2]|0;a=133512+(b<<2)|0;if((f[a>>2]|0)==(i|0)){f[a>>2]=c;if(!c){f[33303]=f[33303]&~(1<>2]|0)==(i|0)?d:g+20|0)>>2]=c;if(!c)break}f[c+24>>2]=g;b=i+16|0;a=f[b>>2]|0;if(a|0){f[c+16>>2]=a;f[a+24>>2]=c}b=f[b+4>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}}while(0);f[h+4>>2]=e|1;f[h+e>>2]=e;if((h|0)==(f[33307]|0)){f[33304]=e;return}}else{f[a>>2]=d&-2;f[h+4>>2]=b|1;f[h+b>>2]=b;e=b}b=e>>>3;if(e>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=h;f[b+12>>2]=h;f[h+8>>2]=b;f[h+12>>2]=c;return}b=e>>>8;if(b)if(e>>>0>16777215)d=31;else{g=(b+1048320|0)>>>16&8;i=b<>>16&4;i=i<>>16&2;d=14-(c|g|d)+(i<>>15)|0;d=e>>>(d+7|0)&1|d<<1}else d=0;b=133512+(d<<2)|0;f[h+28>>2]=d;f[h+20>>2]=0;f[h+16>>2]=0;a=f[33303]|0;c=1<>2]=h;f[h+24>>2]=b;f[h+12>>2]=h;f[h+8>>2]=h;return}b=f[b>>2]|0;a:do if((f[b+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(e|0)){b=a;break a}else{d=d<<1;b=a}}f[c>>2]=h;f[h+24>>2]=b;f[h+12>>2]=h;f[h+8>>2]=h;return}while(0);g=b+8|0;i=f[g>>2]|0;f[i+12>>2]=h;f[g>>2]=h;f[h+8>>2]=i;f[h+12>>2]=b;f[h+24>>2]=0;return}function Qg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;i=l;a:do if((c-a|0)>1?(b[a>>0]|0)==83:0){h=b[a+1>>0]|0;b:do switch(h|0){case 97:{Q3(i,124600);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(i);break b}}else{CY(g,i);f[e>>2]=(f[e>>2]|0)+24}OJa(i);a=a+2|0;break a}case 98:{P3(i,124615);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(i);break b}}else{CY(g,i);f[e>>2]=(f[e>>2]|0)+24}OJa(i);a=a+2|0;break a}case 115:{T3(i,124094);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(i);break b}}else{CY(g,i);f[e>>2]=(f[e>>2]|0)+24}OJa(i);a=a+2|0;break a}case 105:{S3(i,124190);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(i);break b}}else{CY(g,i);f[e>>2]=(f[e>>2]|0)+24}OJa(i);a=a+2|0;break a}case 111:{S3(i,124267);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(i);break b}}else{CY(g,i);f[e>>2]=(f[e>>2]|0)+24}OJa(i);a=a+2|0;break a}case 100:{R3(i,124344);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,i|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(i);break b}}else{CY(g,i);f[e>>2]=(f[e>>2]|0)+24}OJa(i);a=a+2|0;break a}case 95:{e=f[d+16>>2]|0;if((e|0)==(f[d+20>>2]|0))break a;h=f[e+4>>2]|0;i=d+4|0;j=d+8|0;e=f[e>>2]|0;while(1){if((e|0)==(h|0))break;g=f[i>>2]|0;if((g|0)==(f[j>>2]|0))Qz(d,e);else{C6(g,e);f[i>>2]=(f[i>>2]|0)+24}e=e+24|0}a=a+2|0;break a}default:{g=h+-48|0;e=g>>>0<10;if(!e?($ab(h)|0)==0:0)break a;k=a+2|0;e=e?g:h+-55|0;while(1){if((k|0)==(c|0))break a;g=b[k>>0]|0;h=g<<24>>24;j=h+-48|0;i=j>>>0<10;if(!i?($ab(h)|0)==0:0)break;k=k+1|0;e=(i?j:h+-55|0)+(e*36|0)|0}if(g<<24>>24!=95)break a;e=e+1|0;c=f[d+16>>2]|0;g=c;if(e>>>0>=(f[d+20>>2]|0)-c>>4>>>0)break a;h=f[g+(e<<4)+4>>2]|0;i=d+4|0;j=d+8|0;a=f[g+(e<<4)>>2]|0;while(1){if((a|0)==(h|0))break;e=f[i>>2]|0;if((e|0)==(f[j>>2]|0))Qz(d,a);else{C6(e,a);f[i>>2]=(f[i>>2]|0)+24}a=a+24|0}a=k+1|0;break a}}while(0);Ua(a|0)}while(0);u=l;return a|0}function Rg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:while(1){m=b;c=b+-4|0;o=a;b:while(1){l=o;a=m-l|0;d=a>>2;switch(d|0){case 1:case 0:break a;case 2:{n=4;break a}case 3:{n=6;break a}case 4:{n=7;break a}case 5:{n=8;break a}default:{}}if((a|0)<124){n=10;break a}j=o+(((d|0)/2|0)<<2)|0;if((a|0)>3996){a=(d|0)/4|0;a=vx(o,o+(a<<2)|0,j,j+(a<<2)|0,c)|0}else a=Ry(o,j,c)|0;i=f[o>>2]|0;e=f[j>>2]|0;g=i;if($Pa(i,e)|0)d=c;else{d=c;do{d=d+-4|0;if((o|0)==(d|0)){n=17;break b}h=f[d>>2]|0}while(!($Pa(h,e)|0));f[o>>2]=h;f[d>>2]=g;a=a+1|0}e=o+4|0;c:do if(e>>>0>>0){k=j;while(1){j=f[k>>2]|0;while(1){g=f[e>>2]|0;h=e+4|0;i=g;if($Pa(g,j)|0)e=h;else break}do{d=d+-4|0;r=f[d>>2]|0;g=r}while(!($Pa(r,j)|0));if(e>>>0>d>>>0){d=k;break c}f[e>>2]=g;f[d>>2]=i;k=(k|0)==(e|0)?d:k;e=h;a=a+1|0}}else d=j;while(0);if((e|0)!=(d|0)?(p=f[d>>2]|0,q=f[e>>2]|0,$Pa(p,q)|0):0){f[e>>2]=p;f[d>>2]=q;a=a+1|0}if(!a){d=Gp(o,e)|0;a=e+4|0;if(Gp(a,b)|0){n=46;break}if(d){c=2;n=51;break}}r=e;if((r-l|0)>=(m-r|0)){n=50;break}Rg(o,e);o=e+4|0}d:do if((n|0)==17){n=0;a=o+4|0;r=f[c>>2]|0;e=r;if(!($Pa(i,r)|0)){while(1){if((a|0)==(c|0))break a;d=f[a>>2]|0;if($Pa(i,d)|0)break;a=a+4|0}f[a>>2]=e;f[c>>2]=d;a=a+4|0}if((a|0)==(c|0))break a;while(1){h=f[o>>2]|0;while(1){r=f[a>>2]|0;e=a+4|0;g=r;if($Pa(h,r)|0)break;else a=e}do{c=c+-4|0;r=f[c>>2]|0;d=r}while($Pa(h,r)|0);if(a>>>0>=c>>>0){c=4;n=51;break d}f[a>>2]=d;f[c>>2]=g;a=e}}else if((n|0)==46){c=d?1:2;a=o;b=d?b:e;n=51}else if((n|0)==50){n=0;Rg(e+4|0,b);a=o;b=e}while(0);if((n|0)==51){n=0;switch(c&7){case 2:case 4:case 0:break;default:break a}}}if((n|0)==4){a=f[c>>2]|0;b=f[o>>2]|0;if($Pa(a,b)|0){f[o>>2]=a;f[c>>2]=b}}else if((n|0)==6)Ry(o,o+4|0,c)|0;else if((n|0)==7)$B(o,o+4|0,o+8|0,c)|0;else if((n|0)==8)vx(o,o+4|0,o+8|0,o+12|0,c)|0;else if((n|0)==10)uE(o,b);return}function Sg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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;u=c+4|0;a:while(1){o=b;p=b+-4|0;r=a;b:while(1){n=r;a=o-n|0;d=a>>2;switch(d|0){case 1:case 0:break a;case 2:{q=4;break a}case 3:{q=6;break a}case 4:{q=7;break a}case 5:{q=8;break a}default:{}}if((a|0)<124){q=10;break a}k=r+(((d|0)/2|0)<<2)|0;if((a|0)>3996){a=(d|0)/4|0;a=Jx(r,r+(a<<2)|0,k,k+(a<<2)|0,p,c)|0}else a=cA(r,k,p,f[f[c>>2]>>2]|0,f[u>>2]|0)|0;j=f[r>>2]|0;e=f[k>>2]|0;i=f[u>>2]|0;h=f[f[c>>2]>>2]|0;if(Y4(h,i,j,e)|0)d=p;else{d=p;do{d=d+-4|0;if((r|0)==(d|0)){q=17;break b}g=f[d>>2]|0}while(!(Y4(h,i,g,e)|0));f[r>>2]=g;f[d>>2]=j;a=a+1|0}e=r+4|0;c:do if(e>>>0>>0){m=k;while(1){l=f[m>>2]|0;k=f[u>>2]|0;j=f[f[c>>2]>>2]|0;while(1){h=f[e>>2]|0;i=e+4|0;if(Y4(j,k,h,l)|0)e=i;else break}do{d=d+-4|0;g=f[d>>2]|0}while(!(Y4(j,k,g,l)|0));if(e>>>0>d>>>0){d=m;g=e;break c}f[e>>2]=g;f[d>>2]=h;m=(m|0)==(e|0)?d:m;e=i;a=a+1|0}}else{d=k;g=e}while(0);if((g|0)!=(d|0)?(s=f[d>>2]|0,t=f[g>>2]|0,Y4(f[f[c>>2]>>2]|0,f[u>>2]|0,s,t)|0):0){f[g>>2]=s;f[d>>2]=t;a=a+1|0}if(!a){e=Yo(r,g,c)|0;a=g+4|0;if(Yo(a,b,c)|0){q=46;break}if(e){d=2;q=51;break}}m=g;if((m-n|0)>=(o-m|0)){q=50;break}Sg(r,g,c);r=g+4|0}d:do if((q|0)==17){q=0;a=r+4|0;e=f[p>>2]|0;if(!(Y4(h,i,j,e)|0)){while(1){if((a|0)==(p|0))break a;d=f[a>>2]|0;if(Y4(h,i,j,d)|0)break;a=a+4|0}f[a>>2]=e;f[p>>2]=d;a=a+4|0}if((a|0)==(p|0))break a;d=p;while(1){k=f[r>>2]|0;j=f[u>>2]|0;i=f[f[c>>2]>>2]|0;while(1){g=f[a>>2]|0;h=a+4|0;if(Y4(i,j,k,g)|0)break;else a=h}do{d=d+-4|0;e=f[d>>2]|0}while(Y4(i,j,k,e)|0);if(a>>>0>=d>>>0){d=4;q=51;break d}f[a>>2]=e;f[d>>2]=g;a=h}}else if((q|0)==46){d=e?1:2;a=r;b=e?b:g;q=51}else if((q|0)==50){q=0;Sg(g+4|0,b,c);a=r;b=g}while(0);if((q|0)==51){q=0;switch(d&7){case 2:case 4:case 0:break;default:break a}}}if((q|0)==4){a=f[p>>2]|0;b=f[r>>2]|0;if(Y4(f[f[c>>2]>>2]|0,f[u>>2]|0,a,b)|0){f[r>>2]=a;f[p>>2]=b}}else if((q|0)==6)cA(r,r+4|0,p,f[f[c>>2]>>2]|0,f[u>>2]|0)|0;else if((q|0)==7)VA(r,r+4|0,r+8|0,p,c)|0;else if((q|0)==8)Jx(r,r+4|0,r+8|0,r+12|0,p,c)|0;else if((q|0)==10)sC(r,b,c);return}function Tg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+240|0;t=C+160|0;h=C+231|0;i=C+230|0;D=C+216|0;E=C+204|0;z=C+200|0;A=C;v=C+196|0;w=C+192|0;y=C+229|0;s=C+228|0;Pz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;p=E+4|0;q=E+8|0;o=b[h>>0]|0;m=b[i>>0]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;k=g2a(d,-1)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[p>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;if(bo(d&255,y,s,i,z,o,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+1;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+TW(i,f[z>>2]|0,e);n[g>>2]=G;Uz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=d7a(b[d>>0]|0)|0;i=g2a(d,-1)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;MTa(E);MTa(D);u=C;return h|0}while(0);d=Ia()|0}}MTa(E);MTa(D);Ua(d|0);return 0}function Ug(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+240|0;t=C+160|0;h=C+231|0;i=C+230|0;D=C+216|0;E=C+204|0;z=C+200|0;A=C;v=C+196|0;w=C+192|0;y=C+229|0;s=C+228|0;Pz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=b[h>>0]|0;m=b[i>>0]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;k=g2a(d,-1)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;if(bo(d&255,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+1;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+SW(i,f[z>>2]|0,e);p[g>>3]=G;Uz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=d7a(b[d>>0]|0)|0;i=g2a(d,-1)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;MTa(E);MTa(D);u=C;return h|0}while(0);d=Ia()|0}}MTa(E);MTa(D);Ua(d|0);return 0}function Vg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;C=u;u=u+240|0;t=C+160|0;h=C+231|0;i=C+230|0;D=C+216|0;E=C+204|0;z=C+200|0;A=C;v=C+196|0;w=C+192|0;y=C+229|0;s=C+228|0;Pz(D,d,t,h,i);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}r=E+11|0;if((b[r>>0]|0)<0)d=(f[E+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);q=x;x=0;if(q&1)d=Ia()|0;else{j=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=j;f[v>>2]=A;f[w>>2]=0;b[y>>0]=1;b[s>>0]=69;o=E+4|0;q=E+8|0;n=b[h>>0]|0;m=b[i>>0]|0;i=j;h=a;j=a;while(1){if(!j){l=0;a=1;k=0}else{d=f[j+12>>2]|0;if((d|0)==(f[j+16>>2]|0)){x=0;d=ga(f[(f[j>>2]|0)+36>>2]|0,j|0)|0;l=x;x=0;if(l&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;k=g2a(d,-1)|0;h=k?0:h;l=k?0:a;a=k;k=k?0:j}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;j=x;x=0;if(j&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!a){B=38;break}}else B=18}else B=18;if((B|0)==18){B=0;if(a){c=0;B=38;break}else c=0}a=b[r>>0]|0;a=a<<24>>24<0?f[o>>2]|0:a&255;if((f[z>>2]|0)==(i+a|0)){x=0;ua(108,E|0,a<<1|0);j=x;x=0;if(j&1){B=29;break}if((b[r>>0]|0)<0)d=(f[q>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,E|0,d|0);j=x;x=0;if(j&1){B=29;break}i=(b[r>>0]|0)<0?f[E>>2]|0:E;f[z>>2]=i+a}a=k+12|0;d=f[a>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else d=d7a(b[d>>0]|0)|0;if(bo(d&255,y,s,i,z,n,m,D,A,v,w,t)|0){B=38;break}d=f[a>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;F=x;x=0;if(F&1){B=27;break}}else f[a>>2]=d+1;j=k;a=l}if((B|0)==27)d=Ia()|0;else if((B|0)==29)d=Ia()|0;else if((B|0)==38){F=b[D+11>>0]|0;d=f[v>>2]|0;if(!((b[y>>0]|0)==0?1:((F<<24>>24<0?f[D+4>>2]|0:F&255)|0)==0)?(d-A|0)<160:0){y=f[w>>2]|0;F=d+4|0;f[v>>2]=F;f[d>>2]=y;d=F}G=+UW(i,f[z>>2]|0,e);p[g>>3]=G;Uz(D,A,d,e);do if(!k){i=1;B=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[l>>2]|0)+36>>2]|0,k|0)|0;F=x;x=0;if(F&1)break}else d=d7a(b[d>>0]|0)|0;i=g2a(d,-1)|0;h=i?0:h;B=46}while(0);do if((B|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;F=x;x=0;if(F&1)break}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!i)B=53}else B=51}else B=51;if((B|0)==51?i:0)B=53;if((B|0)==53)f[e>>2]=f[e>>2]|2;MTa(E);MTa(D);u=C;return h|0}while(0);d=Ia()|0}}MTa(E);MTa(D);Ua(d|0);return 0}function Wg(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+48|0;r=q+24|0;n=q+12|0;o=q;p=a+12|0;do if(b[p>>0]|0){e=DCa(134176,98676)|0;dYa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[r>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){OCa(r);Wq(e,d)|0;fu(e)|0;break}s=Ia()|0;OCa(r);Ua(s|0)}while(0);m=nq(a)|0;do if(b[p>>0]|0){c=zm(DCa(134176,97878)|0,m)|0;dYa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[r>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(r);Wq(c,g)|0;fu(c)|0;break}s=Ia()|0;OCa(r);Ua(s|0)}while(0);l=0;a:while(1){if(l>>>0>=m>>>0){s=13;break}if(b[p>>0]|0){d=DCa(134176,97884)|0;dYa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[r>>2]|0,134880)|0;k=x;x=0;if(k&1){s=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;k=x;x=0;if(k&1){s=17;break}OCa(r);Wq(d,c)|0;fu(d)|0}k=s8(20)|0;xPa(k);c=oq(a)|0;if((c|0)!=-32){FY(r,c);x=0;ia(83,r|0,98694)|0;j=x;x=0;if(j&1){s=26;break}f[n>>2]=f[r>>2];f[n+4>>2]=f[r+4>>2];f[n+8>>2]=f[r+8>>2];c=0;while(1){if((c|0)==3)break;f[r+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1870,a|0,n|0);j=x;x=0;if(j&1){s=27;break}MTa(n);MTa(r)}j=nq(a)|0;if(b[p>>0]|0){d=zm(DCa(134176,98714)|0,j)|0;dYa(r,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[r>>2]|0,134880)|0;i=x;x=0;if(i&1){s=32;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;i=x;x=0;if(i&1){s=32;break}OCa(r);Wq(d,c)|0;fu(d)|0}g=k+12|0;h=k+16|0;i=k+8|0;c=0;while(1){if((c|0)==(j|0))break;d=oF(a)|0;f[r>>2]=d;e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[g>>2]=e+4}else LL(i,r);c=c+1|0}switch(nq(a)|0){case 0:{c=0;break}case 1:{s=44;break}default:{f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;_Z(o,98727,j7a(98727)|0);x=0;ua(1870,a|0,o|0);s=x;x=0;if(s&1){s=43;break a}MTa(o);s=44}}if((s|0)==44){s=0;c=lx(a)|0}f[k+4>>2]=c;j=f[a>>2]|0;j=YT((f[j+4>>2]|0)-(f[j>>2]|0)>>2)|0;f[k>>2]=j;As(f[a>>2]|0,k);l=l+1|0}if((s|0)==13){u=q;return}else if((s|0)==17){s=Ia()|0;OCa(r);Ua(s|0)}else if((s|0)==26){c=Ia()|0;s=28}else if((s|0)==27){c=Ia()|0;MTa(n);s=28}else if((s|0)==32){s=Ia()|0;OCa(r);Ua(s|0)}else if((s|0)==43){c=Ia()|0;MTa(o)}if((s|0)==28)MTa(r);Ua(c|0)}function Xg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;n=u;u=u+16|0;E=n;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=b;C=b+8|0;k=b+12|0;y=c+4|0;a:do if(((f[k>>2]|0)-(f[C>>2]|0)>>2|0)==((f[y>>2]|0)-(f[c>>2]|0)>>4|0)){D=kQa(b)|0;x=0;ua(106,a|0,D|0);D=x;x=0;if(D&1)D=15;else{e=0;while(1){if(e>>>0>=(kQa(b)|0)>>>0){D=19;break}D=f[c>>2]|0;d=D;if(e>>>0<(f[y>>2]|0)-D>>4>>>0){if(!(KVa(b,e)|0)){D=24;break}d=d+(e<<4)|0;if((f[(f[C>>2]|0)+(e<<2)>>2]|0)!=(f[d>>2]|0)){D=26;break}D=(f[a>>2]|0)+(e<<4)|0;f[D>>2]=f[d>>2];f[D+4>>2]=f[d+4>>2];f[D+8>>2]=f[d+8>>2];f[D+12>>2]=f[d+12>>2]}else{if(!(QVa(b,e)|0)){D=45;break}x=0;d=ia(80,b|0,e|0)|0;D=x;x=0;if(D&1){D=20;break}f[(f[a>>2]|0)+(e<<4)>>2]=d}e=e+1|0}do if((D|0)==19){u=n;return}else if((D|0)==20){d=Ia()|0;break a}else if((D|0)==24){x=0;wa(71,57364,101308,717,57385);x=0}else if((D|0)==26){x=0;d=ia(62,134176,57312)|0;y=x;x=0;if((((((((((!(y&1)?(x=0,z=ia(76,d|0,f[b>>2]|0)|0,b=x,x=0,!(b&1)):0)?(x=0,o=ia(62,z|0,57399)|0,b=x,x=0,!(b&1)):0)?(x=0,p=ga(228,f[(f[C>>2]|0)+(e<<2)>>2]|0)|0,C=x,x=0,!(C&1)):0)?(x=0,q=ia(62,o|0,p|0)|0,C=x,x=0,!(C&1)):0)?(x=0,r=ia(62,q|0,57415)|0,C=x,x=0,!(C&1)):0)?(x=0,s=ia(78,r|0,e|0)|0,C=x,x=0,!(C&1)):0)?(x=0,t=ia(62,s|0,57431)|0,C=x,x=0,!(C&1)):0)?(x=0,v=ga(228,f[(f[c>>2]|0)+(e<<4)>>2]|0)|0,C=x,x=0,!(C&1)):0)?(x=0,w=ia(62,t|0,v|0)|0,C=x,x=0,!(C&1)):0)?(x=0,A=ia(62,w|0,123563)|0,C=x,x=0,!(C&1)):0){dYa(E,z+(f[(f[z>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[E>>2]|0,134880)|0;C=x;x=0;if(!(C&1)?(x=0,B=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,C=x,x=0,!(C&1)):0){OCa(E);x=0;ia(79,A|0,B|0)|0;E=x;x=0;if(E&1)break;x=0;ga(227,A|0)|0;E=x;x=0;if(E&1)break;x=0;sa(5);x=0;break}d=Ia()|0;OCa(E);break a}}else if((D|0)==45){x=0;wa(71,57438,101308,727,57385);x=0}while(0);d=Ia()|0}}else{x=0;d=ia(62,134176,57312)|0;B=x;x=0;if((((((!(B&1)?(x=0,e=ia(76,d|0,f[b>>2]|0)|0,B=x,x=0,!(B&1)):0)?(x=0,g=ia(62,e|0,57323)|0,B=x,x=0,!(B&1)):0)?(x=0,h=ia(78,g|0,(f[k>>2]|0)-(f[C>>2]|0)>>2|0)|0,C=x,x=0,!(C&1)):0)?(x=0,i=ia(62,h|0,57334)|0,C=x,x=0,!(C&1)):0)?(x=0,j=ia(78,i|0,(f[y>>2]|0)-(f[c>>2]|0)>>4|0)|0,C=x,x=0,!(C&1)):0)?(x=0,l=ia(62,j|0,57352)|0,C=x,x=0,!(C&1)):0){dYa(E,e+(f[(f[e>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[E>>2]|0,134880)|0;C=x;x=0;if(!(C&1)?(x=0,m=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,C=x,x=0,!(C&1)):0){OCa(E);x=0;ia(79,l|0,m|0)|0;E=x;x=0;if(E&1){D=15;break}x=0;ga(227,l|0)|0;E=x;x=0;if(E&1){D=15;break}x=0;sa(5);x=0;D=15;break}d=Ia()|0;OCa(E)}else D=15}while(0);if((D|0)==15)d=Ia()|0;zSa(a);Ua(d|0)}function Yg(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;uP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=$Ea(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;l=g2a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}t=OL(i,f[t>>2]|0,e,q)|0;B=g;f[B>>2]=t;f[B+4>>2]=I;Uz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;i=g2a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;MTa(A);MTa(z);u=y;return h|0}while(0);d=Ia()|0}}MTa(A);MTa(z);Ua(d|0);return 0}function Zg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do switch(d<<24>>24){case 106:{d=1;e=0;g=77;break}case 124:{d=2;e=25;g=77;break}case -110:{d=3;e=50;g=77;break}case -96:{d=4;e=63;g=77;break}case 107:{d=1;e=1;g=77;break}case 125:{d=2;e=26;g=77;break}case -109:{d=3;e=51;g=77;break}case -95:{d=4;e=64;g=77;break}case 108:{d=1;e=2;g=77;break}case 126:{d=2;e=27;g=77;break}case -108:{d=3;e=52;g=77;break}case -94:{d=4;e=65;g=77;break}case 109:{d=1;e=3;g=77;break}case 127:{d=2;e=28;g=77;break}case 110:{d=1;e=4;g=77;break}case -128:{d=2;e=29;g=77;break}case 111:{d=1;e=5;g=77;break}case -127:{d=2;e=30;g=77;break}case 112:{d=1;e=6;g=77;break}case -126:{d=2;e=31;g=77;break}case 113:{d=1;e=7;g=77;break}case -125:{d=2;e=32;g=77;break}case 114:{d=1;e=8;g=77;break}case -124:{d=2;e=33;g=77;break}case 115:{d=1;e=9;g=77;break}case -123:{d=2;e=34;g=77;break}case 116:{d=1;e=10;g=77;break}case -122:{d=2;e=35;g=77;break}case 118:{d=1;e=11;g=77;break}case -120:{d=2;e=36;g=77;break}case 117:{d=1;e=12;g=77;break}case -121:{d=2;e=37;g=77;break}case 119:{d=1;e=13;g=77;break}case -119:{d=2;e=38;g=77;break}case 120:{d=1;e=14;g=77;break}case -118:{d=2;e=39;g=77;break}case -107:{d=3;e=53;g=77;break}case -93:{d=4;e=66;g=77;break}case -104:{d=3;e=54;g=77;break}case -90:{d=4;e=67;g=77;break}case -106:{d=3;e=55;g=77;break}case -92:{d=4;e=68;g=77;break}case -105:{d=3;e=56;g=77;break}case -91:{d=4;e=69;g=77;break}case 70:{d=1;e=15;g=77;break}case 81:{d=2;e=40;g=77;break}case 91:{d=3;e=57;g=77;break}case 97:{d=4;e=70;g=77;break}case 71:{d=1;e=16;g=77;break}case 82:{d=2;e=41;g=77;break}case 92:{d=3;e=58;g=77;break}case 98:{d=4;e=71;g=77;break}case 72:{d=1;e=17;g=77;break}case 83:{d=2;e=42;g=77;break}case 73:{d=1;e=18;g=77;break}case 84:{d=2;e=43;g=77;break}case 76:{d=1;e=19;g=77;break}case 87:{d=2;e=44;g=77;break}case 77:{d=1;e=20;g=77;break}case 88:{d=2;e=45;g=77;break}case 74:{d=1;e=21;g=77;break}case 85:{d=2;e=46;g=77;break}case 75:{d=1;e=22;g=77;break}case 86:{d=2;e=47;g=77;break}case 78:{d=1;e=23;g=77;break}case 89:{d=2;e=48;g=77;break}case 79:{d=1;e=24;g=77;break}case 90:{d=2;e=49;g=77;break}case 93:{d=3;e=59;g=77;break}case 99:{d=4;e=72;g=77;break}case 95:{d=3;e=60;g=77;break}case 101:{d=4;e=73;g=77;break}case 94:{d=3;e=61;g=77;break}case 100:{d=4;e=74;g=77;break}case 96:{d=3;e=62;g=77;break}case 102:{d=4;e=75;g=77;break}default:d=0}while(0);if((g|0)==77){g=cUa(f[a+4>>2]|0)|0;f[g+8>>2]=e;f[g+4>>2]=d;do if(b[a+12>>0]|0){d=DCa(134176,110663)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(d,h)|0;fu(d)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);d=dk(a)|0;f[g+16>>2]=d;d=dk(a)|0;f[g+12>>2]=d;SY(g);f[c>>2]=g;d=1}u=j;return d|0}function _g(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+208|0;i=y+196|0;z=y+184|0;A=y+172|0;t=y+168|0;v=y;r=y+164|0;s=y+160|0;h=f[d+4>>2]|0;uP(z,d,i);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}q=$Ea(h)|0;p=A+11|0;if((b[p>>0]|0)<0)d=(f[A+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=h;f[r>>2]=v;f[s>>2]=0;n=A+4|0;o=A+8|0;m=b[i>>0]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;l=g2a(d,-1)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0))if(j)l=c;else{w=38;break}else w=18}else w=18;if((w|0)==18){w=0;if(j){c=0;w=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[t>>2]|0)==(i+c|0)){x=0;ua(108,A|0,c<<1|0);j=x;x=0;if(j&1){w=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,A|0,d|0);j=x;x=0;if(j&1){w=29;break}i=(b[p>>0]|0)<0?f[A>>2]|0:A;f[t>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else d=d7a(b[d>>0]|0)|0;if(Ir(d&255,q,i,t,s,m,z,v,r,31216)|0){c=l;w=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;B=x;x=0;if(B&1){w=27;break}}else f[c>>2]=d+1;c=l}if((w|0)==27)d=Ia()|0;else if((w|0)==29)d=Ia()|0;else if((w|0)==38){B=b[z+11>>0]|0;d=f[r>>2]|0;if(((B<<24>>24<0?f[z+4>>2]|0:B&255)|0)!=0?(d-v|0)<160:0){s=f[s>>2]|0;B=d+4|0;f[r>>2]=B;f[d>>2]=s;d=B}t=gP(i,f[t>>2]|0,e,q)|0;B=g;f[B>>2]=t;f[B+4>>2]=I;Uz(z,v,d,e);do if(!k){i=1;w=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;i=g2a(d,-1)|0;h=i?0:h;w=46}while(0);do if((w|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;B=x;x=0;if(B&1)break}else d=d7a(b[d>>0]|0)|0;if(!(g2a(d,-1)|0)){if(!i)w=53}else w=51}else w=51;if((w|0)==51?i:0)w=53;if((w|0)==53)f[e>>2]=f[e>>2]|2;MTa(A);MTa(z);u=y;return h|0}while(0);d=Ia()|0}}MTa(A);MTa(z);Ua(d|0);return 0}function $g(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;k=o+12|0;j=o+8|0;m=o+4|0;n=o;f[g>>2]=0;dYa(k,e);x=0;l=ia(73,f[k>>2]|0,134912)|0;q=x;x=0;if(q&1){q=Ia()|0;OCa(k);Ua(q|0)}OCa(k);do switch(i<<24>>24|0){case 65:case 97:{XY(a,h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 104:case 66:case 98:{wY(a,h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 99:{q=a+8|0;q=bc[f[(f[q>>2]|0)+12>>2]&511](q)|0;p=b[q+8+3>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+((i?f[q+4>>2]|0:p&255)<<2)|0)|0;f[c>>2]=p;p=28;break}case 101:case 100:{c5(h+12|0,c,f[d>>2]|0,g,l);p=28;break}case 68:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31264,31296)|0;f[c>>2]=p;p=28;break}case 70:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31296,31328)|0;f[c>>2]=p;p=28;break}case 72:{U5(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 73:{D4(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 106:{d5(h+28|0,c,f[d>>2]|0,g,l);p=28;break}case 109:{o5(h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 77:{J5(h+4|0,c,f[d>>2]|0,g,l);p=28;break}case 116:case 110:{mo(c,f[d>>2]|0,g,l);p=28;break}case 112:{kF(a,h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 114:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31328,31372)|0;f[c>>2]=p;p=28;break}case 82:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31376,31396)|0;f[c>>2]=p;p=28;break}case 83:{I5(h,c,f[d>>2]|0,g,l);p=28;break}case 84:{p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,31408,31440)|0;f[c>>2]=p;p=28;break}case 119:{H5(h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 120:{q=f[(f[a>>2]|0)+20>>2]|0;f[m>>2]=f[c>>2];f[n>>2]=f[d>>2];f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];j=jc[q&63](a,j,k,e,g,h)|0;break}case 88:{q=a+8|0;q=bc[f[(f[q>>2]|0)+24>>2]&511](q)|0;p=b[q+8+3>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+((i?f[q+4>>2]|0:p&255)<<2)|0)|0;f[c>>2]=p;p=28;break}case 121:{L1(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 89:{lba(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 37:{Fn(c,f[d>>2]|0,g,l);p=28;break}default:{f[g>>2]=f[g>>2]|4;p=28}}while(0);if((p|0)==28)j=f[c>>2]|0;u=o;return j|0}function ah(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;k=o+12|0;j=o+8|0;m=o+4|0;n=o;f[g>>2]=0;dYa(k,e);x=0;l=ia(73,f[k>>2]|0,134880)|0;q=x;x=0;if(q&1){q=Ia()|0;OCa(k);Ua(q|0)}OCa(k);do switch(i<<24>>24|0){case 65:case 97:{YY(a,h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 104:case 66:case 98:{xY(a,h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 99:{q=a+8|0;q=bc[f[(f[q>>2]|0)+12>>2]&511](q)|0;p=b[q+11>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+(i?f[q+4>>2]|0:p&255)|0)|0;f[c>>2]=p;p=28;break}case 101:case 100:{e5(h+12|0,c,f[d>>2]|0,g,l);p=28;break}case 68:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120457,120465)|0;f[c>>2]=p;p=28;break}case 70:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120465,120473)|0;f[c>>2]=p;p=28;break}case 72:{V5(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 73:{E4(h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 106:{f5(h+28|0,c,f[d>>2]|0,g,l);p=28;break}case 109:{p5(h+16|0,c,f[d>>2]|0,g,l);p=28;break}case 77:{M5(h+4|0,c,f[d>>2]|0,g,l);p=28;break}case 116:case 110:{Vn(c,f[d>>2]|0,g,l);p=28;break}case 112:{mF(a,h+8|0,c,f[d>>2]|0,g,l);p=28;break}case 114:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120473,120484)|0;f[c>>2]=p;p=28;break}case 82:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120484,120489)|0;f[c>>2]=p;p=28;break}case 83:{L5(h,c,f[d>>2]|0,g,l);p=28;break}case 84:{p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,120489,120497)|0;f[c>>2]=p;p=28;break}case 119:{K5(h+24|0,c,f[d>>2]|0,g,l);p=28;break}case 120:{q=f[(f[a>>2]|0)+20>>2]|0;f[m>>2]=f[c>>2];f[n>>2]=f[d>>2];f[j>>2]=f[m>>2];f[k>>2]=f[n>>2];j=jc[q&63](a,j,k,e,g,h)|0;break}case 88:{q=a+8|0;q=bc[f[(f[q>>2]|0)+24>>2]&511](q)|0;p=b[q+11>>0]|0;i=p<<24>>24<0;n=i?f[q>>2]|0:q;p=Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,n,n+(i?f[q+4>>2]|0:p&255)|0)|0;f[c>>2]=p;p=28;break}case 121:{M1(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 89:{mba(h+20|0,c,f[d>>2]|0,g,l);p=28;break}case 37:{jn(c,f[d>>2]|0,g,l);p=28;break}default:{f[g>>2]=f[g>>2]|4;p=28}}while(0);if((p|0)==28)j=f[c>>2]|0;u=o;return j|0}function bh(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;p=v+12|0;o=v+8|0;q=v+4|0;r=v;dYa(p,d);x=0;s=ia(73,f[p>>2]|0,134912)|0;n=x;x=0;if(n&1){v=Ia()|0;OCa(p);Ua(v|0)}OCa(p);f[e>>2]=0;j=0;a:while(1){if(!((h|0)!=(i|0)&(j|0)==0))break;k=b;if(!b){m=0;n=0;l=1}else{j=f[b+12>>2]|0;if((j|0)==(f[b+16>>2]|0))j=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else j=Jbb(f[j>>2]|0)|0;j=$5a(j)|0;m=j?0:b;n=j?0:b;l=j;k=j?0:k}b=c;if(c){j=f[c+12>>2]|0;if((j|0)==(f[c+16>>2]|0))j=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else j=Jbb(f[j>>2]|0)|0;if(!($5a(j)|0)){if(!l){t=58;break}}else{b=0;t=14}}else t=14;if((t|0)==14){t=0;if(l){c=0;t=58;break}else c=0}b:do if((ec[f[(f[s>>2]|0)+52>>2]&127](s,f[h>>2]|0,0)|0)<<24>>24==37){l=h+4|0;if((l|0)==(i|0)){t=58;break a}j=ec[f[(f[s>>2]|0)+52>>2]&127](s,f[l>>2]|0,0)|0;switch(j<<24>>24){case 48:case 69:{h=h+8|0;if((h|0)==(i|0)){t=58;break a}m=j;j=ec[f[(f[s>>2]|0)+52>>2]&127](s,f[h>>2]|0,0)|0;h=l;break}default:m=0}n=f[(f[a>>2]|0)+36>>2]|0;f[q>>2]=k;f[r>>2]=b;f[o>>2]=f[q>>2];f[p>>2]=f[r>>2];h=h+8|0;b=lc[n&15](a,o,p,d,e,g,j,m)|0}else{if(!(ec[f[(f[s>>2]|0)+12>>2]&127](s,8192,f[h>>2]|0)|0)){j=n+12|0;b=f[j>>2]|0;k=n+16|0;if((b|0)==(f[k>>2]|0))b=bc[f[(f[n>>2]|0)+36>>2]&511](n)|0;else b=Jbb(f[b>>2]|0)|0;l=dc[f[(f[s>>2]|0)+28>>2]&255](s,b)|0;if((l|0)!=(dc[f[(f[s>>2]|0)+28>>2]&255](s,f[h>>2]|0)|0)){f[e>>2]=4;b=m;break}b=f[j>>2]|0;if((b|0)==(f[k>>2]|0))bc[f[(f[n>>2]|0)+40>>2]&511](n)|0;else f[j>>2]=b+4;h=h+4|0;b=m;break}do{h=h+4|0;if((h|0)==(i|0)){h=i;break}}while(ec[f[(f[s>>2]|0)+12>>2]&127](s,8192,f[h>>2]|0)|0);b=m;k=c;j=n;m=c;while(1){if(!j){n=0;j=1}else{c=f[j+12>>2]|0;if((c|0)==(f[j+16>>2]|0))c=bc[f[(f[j>>2]|0)+36>>2]&511](j)|0;else c=Jbb(f[c>>2]|0)|0;l=$5a(c)|0;b=l?0:b;n=l?0:j;j=l}if(m){c=f[m+12>>2]|0;if((c|0)==(f[m+16>>2]|0))c=bc[f[(f[m>>2]|0)+36>>2]&511](m)|0;else c=Jbb(f[c>>2]|0)|0;if(!($5a(c)|0))if(j)c=k;else{c=k;break b}else{c=0;t=38}}else{c=k;t=38}if((t|0)==38){t=0;if(j)break b;else m=0}k=n+12|0;j=f[k>>2]|0;l=n+16|0;if((j|0)==(f[l>>2]|0))j=bc[f[(f[n>>2]|0)+36>>2]&511](n)|0;else j=Jbb(f[j>>2]|0)|0;if(!(ec[f[(f[s>>2]|0)+12>>2]&127](s,8192,j)|0))break b;j=f[k>>2]|0;if((j|0)==(f[l>>2]|0))bc[f[(f[n>>2]|0)+40>>2]&511](n)|0;else f[k>>2]=j+4;k=c;j=n}}while(0);j=f[e>>2]|0}if((t|0)==58){f[e>>2]=4;b=n}if(!b){b=0;j=1}else{h=f[b+12>>2]|0;if((h|0)==(f[b+16>>2]|0))h=bc[f[(f[b>>2]|0)+36>>2]&511](b)|0;else h=Jbb(f[h>>2]|0)|0;j=$5a(h)|0;b=j?0:b}if(c){h=f[c+12>>2]|0;if((h|0)==(f[c+16>>2]|0))c=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else c=Jbb(f[h>>2]|0)|0;if(!($5a(c)|0)){if(!j)t=71}else t=69}else t=69;if((t|0)==69?j:0)t=71;if((t|0)==71)f[e>>2]=f[e>>2]|2;u=v;return b|0}function ch(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=NSa(d,z+160|0)|0;sP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=$Ea(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;l=$5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}v=OL(i,f[v>>2]|0,e,r)|0;C=g;f[C>>2]=v;f[C+4>>2]=I;Uz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;i=$5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;MTa(B);MTa(A);u=z;return h|0}while(0);d=Ia()|0}}MTa(B);MTa(A);Ua(d|0);return 0}function dh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0;z=u;u=u+304|0;i=z+300|0;A=z+288|0;B=z+276|0;v=z+272|0;w=z;t=z+268|0;s=z+264|0;h=f[d+4>>2]|0;q=NSa(d,z+160|0)|0;sP(A,d,i);f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[B+(d<<2)>>2]=0;d=d+1|0}r=$Ea(h)|0;p=B+11|0;if((b[p>>0]|0)<0)d=(f[B+8>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);o=x;x=0;if(o&1)d=Ia()|0;else{h=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=h;f[t>>2]=w;f[s>>2]=0;n=B+4|0;o=B+8|0;m=f[i>>2]|0;i=h;h=a;k=a;while(1){if(!k){a=0;j=1;k=0}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;l=$5a(d)|0;h=l?0:h;a=l?0:a;j=l;k=l?0:k}if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;l=x;x=0;if(l&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0))if(j)l=c;else{y=38;break}else y=18}else y=18;if((y|0)==18){y=0;if(j){c=0;y=38;break}else l=0}c=b[p>>0]|0;c=c<<24>>24<0?f[n>>2]|0:c&255;if((f[v>>2]|0)==(i+c|0)){x=0;ua(108,B|0,c<<1|0);j=x;x=0;if(j&1){y=29;break}if((b[p>>0]|0)<0)d=(f[o>>2]&2147483647)+-1|0;else d=10;x=0;ua(108,B|0,d|0);j=x;x=0;if(j&1){y=29;break}i=(b[p>>0]|0)<0?f[B>>2]|0:B;f[v>>2]=i+c}c=k+12|0;d=f[c>>2]|0;j=k+16|0;if((d|0)==(f[j>>2]|0)){x=0;d=ga(f[(f[k>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else d=Jbb(f[d>>2]|0)|0;if(Jr(d,r,i,v,s,m,A,w,t,q)|0){c=l;y=38;break}d=f[c>>2]|0;if((d|0)==(f[j>>2]|0)){x=0;ga(f[(f[k>>2]|0)+40>>2]|0,k|0)|0;C=x;x=0;if(C&1){y=27;break}}else f[c>>2]=d+4;c=l}if((y|0)==27)d=Ia()|0;else if((y|0)==29)d=Ia()|0;else if((y|0)==38){C=b[A+11>>0]|0;d=f[t>>2]|0;if(((C<<24>>24<0?f[A+4>>2]|0:C&255)|0)!=0?(d-w|0)<160:0){s=f[s>>2]|0;C=d+4|0;f[t>>2]=C;f[d>>2]=s;d=C}v=gP(i,f[v>>2]|0,e,r)|0;C=g;f[C>>2]=v;f[C+4>>2]=I;Uz(A,w,d,e);do if(!k){i=1;y=46}else{d=f[k+12>>2]|0;if((d|0)==(f[k+16>>2]|0)){x=0;d=ga(f[(f[a>>2]|0)+36>>2]|0,k|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;i=$5a(d)|0;h=i?0:h;y=46}while(0);do if((y|0)==46){if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;d=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;C=x;x=0;if(C&1)break}else d=Jbb(f[d>>2]|0)|0;if(!($5a(d)|0)){if(!i)y=53}else y=51}else y=51;if((y|0)==51?i:0)y=53;if((y|0)==53)f[e>>2]=f[e>>2]|2;MTa(B);MTa(A);u=z;return h|0}while(0);d=Ia()|0}}MTa(B);MTa(A);Ua(d|0);return 0} +function Fj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;z=u;u=u+16|0;y=z+4|0;r=z;f[r>>2]=c;w=msa(c)|0;t=a+4|0;i=f[t>>2]|0;v=(i|0)==0;a:do if(!v){q=i+-1|0;o=(q&i|0)==0;if(!o)if(w>>>0>>0)e=w;else e=(w>>>0)%(i>>>0)|0;else e=q&w;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)s=23;else{p=b[c+11>>0]|0;m=p<<24>>24<0;p=m?f[c+4>>2]|0:p&255;m=m?f[c>>2]|0:c;while(1){d=f[d>>2]|0;if(!d){s=23;break a}c=f[d+4>>2]|0;if((c|0)!=(w|0)){if(!o){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&q;if((c|0)!=(e|0)){s=23;break a}}k=d+8|0;c=b[k+11>>0]|0;j=c<<24>>24<0;c=c&255;b:do if(((j?f[d+12>>2]|0:c)|0)==(p|0)){if(j)if(!(FQa(f[k>>2]|0,m,p)|0))break a;else break;l=m;j=k;while(1){if(!c)break a;if((b[j>>0]|0)!=(b[l>>0]|0))break b;l=l+1|0;j=j+1|0;c=c+-1|0}}while(0)}}}else{e=0;s=23}while(0);if((s|0)==23){uK(y,a,w,r);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(v|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;s=~~+W(+(g/h))>>>0;x=0;ua(1628,a|0,(v>>>0>>0?s:v)|0);v=x;x=0;if(!(v&1)){d=f[t>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&w;break}if(w>>>0>>0){i=d;e=w;break}i=d;e=(w>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0){if(b[y+8>>0]|0)qYa(e+8|0);Cbb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){w=a+8|0;d=f[y>>2]|0;f[d>>2]=f[w>>2];f[w>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=w;e=f[d>>2]|0;if(!e)e=y;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=y}}else{a=f[y>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=y;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=z;return d+20|0}function Gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+48|0;l=n+28|0;o=n+8|0;h=n;i=n+24|0;j=n+20|0;k=n+4|0;c=f[a+84>>2]|0;m=Jbb(c)|0;c=c+108|0;if(f[c>>2]|0)Ca(89570,89595,231,89621);f[c>>2]=f[b+28>>2];DUa(o);d=b+8|0;e=Jbb(f[b+12>>2]|0)|0;g=0;while(1){f[h>>2]=g;if(g>>>0>=e>>>0){g=5;break}x=0;c=ia(100,d|0,g|0)|0;p=x;x=0;if(p&1){g=11;break}x=0;c=ia(148,o|0,c|0)|0;p=x;x=0;if(p&1){g=11;break}x=0;wa(132,l|0,c|0,g|0,h|0);p=x;x=0;if(p&1){g=11;break}g=g+1|0}a:do if((g|0)==5){e=o+4|0;d=f[o>>2]|0;while(1){if((d|0)==(e|0))break;f[i>>2]=f[d+16>>2];x=0;f[l>>2]=f[i>>2];c=ia(149,a|0,l|0)|0;p=x;x=0;if(p&1){g=22;break}x=0;va(132,m|0,c|0,d+20|0);p=x;x=0;if(p&1){g=22;break}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}if((g|0)==22){c=Ia()|0;break}c=b+24|0;do if(!(P5(o,c)|0)){f[j>>2]=f[c>>2];x=0;f[l>>2]=f[j>>2];c=ia(149,a|0,l|0)|0;p=x;x=0;if(!(p&1)){DUa(l);x=0;va(132,m|0,c|0,l|0);p=x;x=0;if(p&1){c=Ia()|0;yXa(l);break a}else{yXa(l);g=34;break}}}else{x=0;d=ga(290,a|0)|0;p=x;x=0;if(!(p&1)){DUa(l);x=0;va(132,m|0,d|0,l|0);p=x;x=0;if(p&1){c=Ia()|0;yXa(l);break a}yXa(l);f[k>>2]=f[c>>2];x=0;f[l>>2]=f[k>>2];c=ia(149,a|0,l|0)|0;p=x;x=0;if(!(p&1)?(x=0,va(130,d|0,c|0,0),p=x,x=0,!(p&1)):0){g=34;break}}c=Ia()|0;break a}while(0);if((g|0)==34?(x=0,ta(485,a|0),p=x,x=0,!(p&1)):0){Uxa(o);u=n;return}c=Ia()|0}else if((g|0)==11)c=Ia()|0;while(0);Uxa(o);Ua(c|0)}function Hj(a,c){a=a|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0;y=u;u=u+16|0;A=y+4|0;w=y;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;B=a+20|0;f[B>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;d=(dV(c)|0)+1|0;x=0;ua(94,B|0,d|0);v=x;x=0;if(v&1)c=Ia()|0;else{v=f[B>>2]|0;B1a(v,c,d)|0;p=a+4|0;q=a+12|0;r=a+16|0;s=a+8|0;c=v;a:while(1){t=FWa(c,32)|0;v=(t|0)!=0;if(v)b[t>>0]=0;x=0;va(88,w|0,c|0,1);o=x;x=0;if(o&1){z=42;break}o=W7a(w)|0;i=f[p>>2]|0;m=(i|0)==0;b:do if(!m){k=i+-1|0;l=(k&i|0)==0;if(!l)if(o>>>0>>0)d=o;else d=(o>>>0)%(i>>>0)|0;else d=k&o;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)z=22;else{j=f[w>>2]|0;do{c=f[c>>2]|0;if(!c){z=22;break b}h=f[c+4>>2]|0;if((h|0)!=(o|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){z=22;break b}}}while(!(CXa(f[c+8>>2]|0,j)|0))}}else{d=0;z=22}while(0);if((z|0)==22){z=0;x=0;wa(158,A|0,a|0,o|0,w|0);l=x;x=0;if(l&1){z=42;break}e=+(((f[q>>2]|0)+1|0)>>>0);g=+n[r>>2];do if(m|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(84,a|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){z=29;break a}c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o}else{i=c;d=(o>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){h=f[A>>2]|0;f[h>>2]=f[s>>2];f[s>>2]=h;f[(f[a>>2]|0)+(d<<2)>>2]=s;c=f[h>>2]|0;if(c|0){c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=h}}else{o=f[A>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}f[q>>2]=(f[q>>2]|0)+1}if(v)c=t+1|0;else{z=44;break}}if((z|0)==29){c=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)Cbb(d)}else if((z|0)==42)c=Ia()|0;else if((z|0)==44){u=y;return}}zSa(B);SQa(a);Ua(c|0)}function Ij(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1250,b);a=(aSa(c)|0)+8|0;if(Qab(f[a>>2]|0)|0)tS(d,1251,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1243,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1252,b);tS(d,1251,b);PQ(d,(vSa(c)|0)+16|0);tS(d,1251,b);tS(d,1243,(vSa(c)|0)+12|0);tS(d,1251,b);tS(d,1243,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1253,b);tS(d,1243,(lSa(c)|0)+12|0);tS(d,1251,b);break}case 4:{d=a+16|0;tS(d,1254,b);tS(d,1251,b);PQ(d,($Ra(c)|0)+16|0);PQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1255,b);tS(d,1251,b);PQ(d,(NRa(c)|0)+32|0);tS(d,1243,(NRa(c)|0)+28|0);break}case 20:{d=a+16|0;tS(d,1256,b);tS(d,1251,b);PQ(d,(ERa(c)|0)+8|0);break}case 23:{d=a+16|0;tS(d,1257,b);tS(d,1251,b);break}default:Kd(a,b)}while(0);return}function Jj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1030,b);a=(aSa(c)|0)+8|0;if(Qab(f[a>>2]|0)|0)tS(d,1031,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1023,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1032,b);tS(d,1031,b);QQ(d,(vSa(c)|0)+16|0);tS(d,1031,b);tS(d,1023,(vSa(c)|0)+12|0);tS(d,1031,b);tS(d,1023,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1033,b);tS(d,1023,(lSa(c)|0)+12|0);tS(d,1031,b);break}case 4:{d=a+16|0;tS(d,1034,b);tS(d,1031,b);QQ(d,($Ra(c)|0)+16|0);QQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1035,b);tS(d,1031,b);QQ(d,(NRa(c)|0)+32|0);tS(d,1023,(NRa(c)|0)+28|0);break}case 20:{d=a+16|0;tS(d,1036,b);tS(d,1031,b);QQ(d,(ERa(c)|0)+8|0);break}case 23:{d=a+16|0;tS(d,1037,b);tS(d,1031,b);break}default:Ld(a,b)}while(0);return}function Kj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1155,b);a=(aSa(c)|0)+8|0;if(Qab(f[a>>2]|0)|0)tS(d,1156,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1148,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1157,b);tS(d,1156,b);RQ(d,(vSa(c)|0)+16|0);tS(d,1156,b);tS(d,1148,(vSa(c)|0)+12|0);tS(d,1156,b);tS(d,1148,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1158,b);tS(d,1148,(lSa(c)|0)+12|0);tS(d,1156,b);break}case 4:{d=a+16|0;tS(d,1159,b);tS(d,1156,b);RQ(d,($Ra(c)|0)+16|0);RQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1160,b);tS(d,1156,b);RQ(d,(NRa(c)|0)+32|0);tS(d,1148,(NRa(c)|0)+28|0);break}case 20:{d=a+16|0;tS(d,1161,b);tS(d,1156,b);RQ(d,(ERa(c)|0)+8|0);break}case 23:{d=a+16|0;tS(d,1162,b);tS(d,1156,b);break}default:Md(a,b)}while(0);return}function Lj(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;y=u;u=u+16|0;o=y;f[o>>2]=d;f[a>>2]=c;f[a+4>>2]=d;f[a+8>>2]=e;i=a+12|0;f[i>>2]=10;j=a+16|0;f[j>>2]=30;k=a+20|0;b[k>>0]=0;p=a+24|0;l=a+28|0;q=a+36|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[p+12>>2]=0;f[p+16>>2]=0;f[p+20>>2]=0;f[p+24>>2]=0;f[a+52>>2]=1065353216;r=a+56|0;s=a+68|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;f[r+16>>2]=0;f[r+20>>2]=0;f[r+24>>2]=0;f[a+84>>2]=1065353216;t=a+88|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;f[t+12>>2]=0;f[a+104>>2]=1065353216;v=a+108|0;m=a+112|0;n=a+120|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;b[v+12>>0]=0;f[a+124>>2]=g;do if((cia()|0)>1){x=0;e=ia(62,134008,75722)|0;g=x;x=0;if((!(g&1)?(x=0,h=ia(76,e|0,f[f[c+116>>2]>>2]|0)|0,g=x,x=0,!(g&1)):0)?(x=0,ia(62,h|0,87606)|0,h=x,x=0,!(h&1)):0){w=6;break}e=Ia()|0}else w=6;while(0);a:do if((w|0)==6){e=yb(75742)|0;if(e|0){h=AR(e)|0;f[i>>2]=h}e=yb(75773)|0;if(e|0){i=AR(e)|0;f[j>>2]=i}x=0;ja(61,a|0,d|0,0)|0;d=x;x=0;if(d&1){e=Ia()|0;break}b:do if(!(b[k>>0]|0)){e=f[p>>2]|0;switch((f[l>>2]|0)-e>>2|0){case 0:{b[k>>0]=1;break b}case 1:{w=15;break}default:{}}if((w|0)==15?Oab(f[f[e>>2]>>2]|0)|0:0){b[k>>0]=1;break}x=0;ta(463,a|0);d=x;x=0;if(d&1){e=Ia()|0;break a}b[n>>0]=1;g=f[m>>2]|0;e=f[v>>2]|0;while(1){if((e|0)==(g|0))break;x=0;ja(61,a|0,f[e>>2]|0,0)|0;n=x;x=0;if(n&1){w=23;break}e=e+4|0}if((w|0)==23){e=Ia()|0;break a}e=Wz(c+84|0,o)|0;if(e|0?(x=0,ua(635,a|0,f[e+12>>2]|0),w=x,x=0,w&1):0){e=Ia()|0;break a}}while(0);u=y;return}while(0);zSa(v);SQa(t);a9(s);zSa(r);SQa(q);zSa(p);Ua(e|0)}function Mj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;z=u;u=u+16|0;y=z+4|0;r=z;f[r>>2]=c;w=msa(c)|0;t=a+4|0;i=f[t>>2]|0;v=(i|0)==0;a:do if(!v){q=i+-1|0;o=(q&i|0)==0;if(!o)if(w>>>0>>0)e=w;else e=(w>>>0)%(i>>>0)|0;else e=q&w;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)s=23;else{p=b[c+11>>0]|0;m=p<<24>>24<0;p=m?f[c+4>>2]|0:p&255;m=m?f[c>>2]|0:c;while(1){d=f[d>>2]|0;if(!d){s=23;break a}c=f[d+4>>2]|0;if((c|0)!=(w|0)){if(!o){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&q;if((c|0)!=(e|0)){s=23;break a}}k=d+8|0;c=b[k+11>>0]|0;j=c<<24>>24<0;c=c&255;b:do if(((j?f[d+12>>2]|0:c)|0)==(p|0)){if(j)if(!(FQa(f[k>>2]|0,m,p)|0))break a;else break;l=m;j=k;while(1){if(!c)break a;if((b[j>>0]|0)!=(b[l>>0]|0))break b;l=l+1|0;j=j+1|0;c=c+-1|0}}while(0)}}}else{e=0;s=23}while(0);if((s|0)==23){uK(y,a,w,r);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(v|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;s=~~+W(+(g/h))>>>0;x=0;ua(102,a|0,(v>>>0>>0?s:v)|0);v=x;x=0;if(!(v&1)){d=f[t>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&w;break}if(w>>>0>>0){i=d;e=w;break}i=d;e=(w>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0){if(b[y+8>>0]|0)qYa(e+8|0);Cbb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){w=a+8|0;d=f[y>>2]|0;f[d>>2]=f[w>>2];f[w>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=w;e=f[d>>2]|0;if(!e)e=y;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=y}}else{a=f[y>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=y;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=z;return d+20|0}function Nj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,935,b);a=(aSa(c)|0)+8|0;if(Qab(f[a>>2]|0)|0)tS(d,936,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,928,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,937,b);tS(d,936,b);VQ(d,(vSa(c)|0)+16|0);tS(d,936,b);tS(d,928,(vSa(c)|0)+12|0);tS(d,936,b);tS(d,928,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,938,b);tS(d,928,(lSa(c)|0)+12|0);tS(d,936,b);break}case 4:{d=a+16|0;tS(d,939,b);tS(d,936,b);VQ(d,($Ra(c)|0)+16|0);VQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,940,b);tS(d,936,b);VQ(d,(NRa(c)|0)+32|0);tS(d,928,(NRa(c)|0)+28|0);break}case 20:{d=a+16|0;tS(d,941,b);tS(d,936,b);VQ(d,(ERa(c)|0)+8|0);break}case 23:{d=a+16|0;tS(d,942,b);tS(d,936,b);break}default:Vd(a,b)}while(0);return}function Oj(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,812,b);a=(aSa(c)|0)+8|0;if(Qab(f[a>>2]|0)|0)tS(d,813,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,805,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,814,b);tS(d,813,b);WQ(d,(vSa(c)|0)+16|0);tS(d,813,b);tS(d,805,(vSa(c)|0)+12|0);tS(d,813,b);tS(d,805,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,815,b);tS(d,805,(lSa(c)|0)+12|0);tS(d,813,b);break}case 4:{d=a+16|0;tS(d,816,b);tS(d,813,b);WQ(d,($Ra(c)|0)+16|0);WQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,817,b);tS(d,813,b);WQ(d,(NRa(c)|0)+32|0);tS(d,805,(NRa(c)|0)+28|0);break}case 20:{d=a+16|0;tS(d,818,b);tS(d,813,b);WQ(d,(ERa(c)|0)+8|0);break}case 23:{d=a+16|0;tS(d,819,b);tS(d,813,b);break}default:Wd(a,b)}while(0);return}function Pj(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;v=u;u=u+16|0;y=v;Bka(a,b);x=0;ua(3140,a|0,f[b+4>>2]|0);t=x;x=0;do if(!(t&1)){c=f[b+8>>2]|0;t=a+4|0;p=a+12|0;r=a+16|0;s=a+8|0;q=c;b=c;a:while(1){if(!b){w=39;break}l=c+8|0;i=f[l>>2]|0;f[y>>2]=i;o=JH(y,4)|0;h=f[t>>2]|0;m=(h|0)==0;b:do if(!m){j=h+-1|0;k=(j&h|0)==0;if(!k)if(o>>>0>>0)c=o;else c=(o>>>0)%(h>>>0)|0;else c=j&o;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)w=19;else do{b=f[b>>2]|0;if(!b){w=19;break b}g=f[b+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(c|0)){w=19;break b}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;w=19}while(0);if((w|0)==19){w=0;x=0;wa(155,y|0,a|0,o|0,l|0);l=x;x=0;if(l&1){w=40;break}d=+(((f[p>>2]|0)+1|0)>>>0);e=+n[r>>2];do if(m|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(3140,a|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){w=26;break a}b=f[t>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&o;break}if(o>>>0>>0){h=b;c=o}else{h=b;c=(o>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[y>>2]|0;f[g>>2]=f[s>>2];f[s>>2]=g;f[(f[a>>2]|0)+(c<<2)>>2]=s;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=g}}else{o=f[y>>2]|0;f[o>>2]=f[b>>2];f[b>>2]=o}f[p>>2]=(f[p>>2]|0)+1}c=f[q>>2]|0;q=c;b=c}if((w|0)==26){b=Ia()|0;c=f[y>>2]|0;f[y>>2]=0;if(c|0)Cbb(c);break}else if((w|0)==39){u=v;return}else if((w|0)==40){b=Ia()|0;break}}else b=Ia()|0;while(0);Ija(a);Ua(b|0)}function Qj(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0.0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0;v=u;u=u+16|0;y=v;Bka(a,b);x=0;ua(586,a|0,f[b+4>>2]|0);t=x;x=0;do if(!(t&1)){c=f[b+8>>2]|0;t=a+4|0;p=a+12|0;r=a+16|0;s=a+8|0;q=c;b=c;a:while(1){if(!b){w=39;break}l=c+8|0;i=f[l>>2]|0;f[y>>2]=i;o=JH(y,4)|0;h=f[t>>2]|0;m=(h|0)==0;b:do if(!m){j=h+-1|0;k=(j&h|0)==0;if(!k)if(o>>>0>>0)c=o;else c=(o>>>0)%(h>>>0)|0;else c=j&o;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)w=19;else do{b=f[b>>2]|0;if(!b){w=19;break b}g=f[b+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&j;if((g|0)!=(c|0)){w=19;break b}}}while((f[b+8>>2]|0)!=(i|0))}else{c=0;w=19}while(0);if((w|0)==19){w=0;x=0;wa(88,y|0,a|0,o|0,l|0);l=x;x=0;if(l&1){w=40;break}d=+(((f[p>>2]|0)+1|0)>>>0);e=+n[r>>2];do if(m|e*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(d/e))>>>0;x=0;ua(586,a|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){w=26;break a}b=f[t>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&o;break}if(o>>>0>>0){h=b;c=o}else{h=b;c=(o>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){g=f[y>>2]|0;f[g>>2]=f[s>>2];f[s>>2]=g;f[(f[a>>2]|0)+(c<<2)>>2]=s;b=f[g>>2]|0;if(b|0){b=f[b+4>>2]|0;c=h+-1|0;if(c&h){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&c;f[(f[a>>2]|0)+(b<<2)>>2]=g}}else{o=f[y>>2]|0;f[o>>2]=f[b>>2];f[b>>2]=o}f[p>>2]=(f[p>>2]|0)+1}c=f[q>>2]|0;q=c;b=c}if((w|0)==26){b=Ia()|0;c=f[y>>2]|0;f[y>>2]=0;if(c|0)Cbb(c);break}else if((w|0)==39){u=v;return}else if((w|0)==40){b=Ia()|0;break}}else b=Ia()|0;while(0);Ija(a);Ua(b|0)}function Rj(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+48|0;s=t+32|0;g=t+28|0;l=t+24|0;m=t+20|0;n=t+16|0;o=t+12|0;p=t+8|0;q=t+4|0;r=t;h=a+64|0;k=f[h>>2]|0;do if((f[k+28>>2]|0)!=(f[k+24>>2]|0)){k=a+72|0;do if(b[k>>0]|0){c=DCa(134176,87849)|0;dYa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[s>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(s);Wq(c,e)|0;fu(c)|0;break}t=Ia()|0;OCa(s);Ua(t|0)}while(0);j=E$(a,7)|0;i=a+68|0;e=f[i>>2]|0;d=f[h>>2]|0;n4a(g,(f[d+28>>2]|0)-(f[d+24>>2]|0)>>2);Yr(e,f[g>>2]|0)|0;e=f[h>>2]|0;g=f[e+28>>2]|0;e=f[e+24>>2]|0;a:while(1){if((e|0)==(g|0)){c=9;break}if(b[k>>0]|0){d=DCa(134176,87865)|0;dYa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[s>>2]|0,134880)|0;h=x;x=0;if(h&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=13;break}OCa(s);Wq(d,c)|0;fu(d)|0}K$(a,f[f[e>>2]>>2]|0);c=f[i>>2]|0;n4a(l,f[(f[e>>2]|0)+8>>2]|0);Yr(c,f[l>>2]|0)|0;c=f[e>>2]|0;switch(f[c+8>>2]|0){case 0:{h=f[i>>2]|0;f[n>>2]=f[c+4>>2];f[s>>2]=f[n>>2];n4a(m,_1(a,s)|0);Yr(h,f[m>>2]|0)|0;break}case 1:{h=f[i>>2]|0;n4a(o,0);Yr(h,f[o>>2]|0)|0;break}case 2:{h=f[i>>2]|0;n4a(p,0);Yr(h,f[p>>2]|0)|0;break}case 3:{h=f[i>>2]|0;f[r>>2]=f[c+4>>2];f[s>>2]=f[r>>2];n4a(q,e2(a,s)|0);Yr(h,f[q>>2]|0)|0;break}default:{c=20;break a}}e=e+4|0}if((c|0)==9){WA(a,j);break}else if((c|0)==13){t=Ia()|0;OCa(s);Ua(t|0)}else if((c|0)==20)hb()}while(0);u=t;return}function Sj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;r=s;p=c+4|0;q=a+132|0;if(((f[p>>2]|0)-(f[c>>2]|0)>>2|0)!=(f[q>>2]|0))Ca(115554,115383,338,115582);n=f[a+60>>2]|0;k=a+36|0;m=f[a+56>>2]|0;while(1){if((m|0)==(n|0))break;l=f[m>>2]|0;o=f[l+28>>2]|0;l=f[l+24>>2]|0;while(1){if((l|0)==(o|0))break;d=f[l>>2]|0;do if(!(Oab(d)|0)){if(zab(d)|0){h=l+8|0;i=nRa(f[f[h>>2]>>2]|0)|0;d=i+8|0;j=f[(f[c>>2]|0)+(f[d>>2]<<2)>>2]|0;f[d>>2]=j;d=f[i+12>>2]|0;g=U_a(d)|0;e=d;if(g|0?(f[g+8>>2]|0)==(j|0):0){g6(l);break}if(!(b[l+12>>0]|0)){f[f[h>>2]>>2]=e;if(Qab(f[i+4>>2]|0)|0)break;i=oYa(i)|0;j=f[h>>2]|0;f[i+8>>2]=f[j>>2];f[j>>2]=i;break}d=Z$a(d)|0;if(d|0){e=d+12|0;g=U_a(f[e>>2]|0)|0;if(g|0?(f[g+8>>2]|0)==(j|0):0){j=f[h>>2]|0;kV(j,i,d,e,d+16|0,Jbb(f[k>>2]|0)|0);break}g=d+16|0;t=U_a(f[g>>2]|0)|0;if(t|0?(f[t+8>>2]|0)==(j|0):0){t=f[h>>2]|0;kV(t,i,d,g,e,Jbb(f[k>>2]|0)|0)}}}}else{t=(tRa(f[f[l+8>>2]>>2]|0)|0)+8|0;f[t>>2]=f[(f[c>>2]|0)+(f[t>>2]<<2)>>2]}while(0);l=l+16|0}m=m+4|0}j=a+32|0;h=f[j>>2]|0;k=BZa(Jbb(h)|0)|0;g=f[p>>2]|0;d=0;e=f[c>>2]|0;while(1){if((e|0)==(g|0))break;t=(f[e>>2]|0)+1|0;d=d>>>0>>0?t:d;e=e+4|0}RR(r,h+20|0);t=f[j>>2]|0;Jbb(t)|0;x=0;ua(3132,t+20|0,d-k|0);t=x;x=0;if(t&1){t=Ia()|0;zSa(r);Ua(t|0)}i=f[q>>2]|0;h=f[c>>2]|0;e=f[r>>2]|0;d=k;while(1){if(d>>>0>=i>>>0)break;g=f[h+(d<<2)>>2]|0;if(g>>>0>=k>>>0){c=f[e+(d-k<<2)>>2]|0;t=f[j>>2]|0;Jbb(t)|0;f[(f[t+20>>2]|0)+(g-k<<2)>>2]=c}d=d+1|0}t=f[j>>2]|0;Jbb(t)|0;kaa(t+44|0);t=f[j>>2]|0;Jbb(t)|0;I9(t+56|0);zSa(r);u=s;return}function Tj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;a:do if(((((a|0)!=(c|0)?(b[a>>0]|0)==90:0)?(j=a+1|0,e=dd(j,c,d)|0,!((e|0)==(j|0)|(e|0)==(c|0))):0)?(b[e>>0]|0)==69:0)?(g=e+1|0,(g|0)!=(c|0)):0){switch(b[g>>0]|0){case 115:{a=TG(e+2|0,c)|0;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;Isa(e+-24|0,124633)|0;break a}case 100:{e=e+2|0;if((e|0)==(c|0))break a;e=TX(e,c)|0;if((e|0)==(c|0))break a;if((b[e>>0]|0)!=95)break a;j=e+1|0;g=Pi(j,c,d)|0;c=d+4|0;if((g|0)==(j|0)){g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;OJa(g+(j*24|0)|0);e=j}f[c>>2]=g+-24;break a}e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(h,e+-24|0);e=f[c>>2]|0;a=0;while(1){if((a|0)==-1)break;j=a+-1|0;OJa(e+(j*24|0)|0);a=j}f[c>>2]=e+-24;x=0;ia(216,e+-48|0,123346)|0;j=x;x=0;if(!(j&1)?(j=b[h+11>>0]|0,d=j<<24>>24<0,x=0,ja(97,(f[c>>2]|0)+-24|0,(d?f[h>>2]|0:h)|0,(d?f[h+4>>2]|0:j&255)|0)|0,j=x,x=0,!(j&1)):0){MTa(h);a=g;break a}a=Ia()|0;MTa(h);break}default:{e=Pi(g,c,d)|0;if((e|0)==(g|0)){g=d+4|0;c=f[g>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;OJa(c+(j*24|0)|0);e=j}f[g>>2]=c+-24;break a}a=TG(e,c)|0;c=d+4|0;e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(h,e+-24|0);g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;OJa(g+(j*24|0)|0);e=j}f[c>>2]=g+-24;x=0;ia(216,g+-48|0,123346)|0;j=x;x=0;if(!(j&1)?(j=b[h+11>>0]|0,d=j<<24>>24<0,x=0,ja(97,(f[c>>2]|0)+-24|0,(d?f[h>>2]|0:h)|0,(d?f[h+4>>2]|0:j&255)|0)|0,j=x,x=0,!(j&1)):0){MTa(h);break a}a=Ia()|0;MTa(h)}}Ua(a|0)}while(0);u=i;return a|0}function Uj(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,h=0;h=Jbb(d)|0;do if(zab(f[d>>2]|0)|0)if(e){t$a(a,naa(h)|0);break}else{d=tPa(h)|0;pqa(a,+p[d>>3]);break}else{if(Hea(h,f[33267]|0)|0){h=n0a(d,1)|0;if(KBa(f[h>>2]|0,133024)|0?(h=n0a(d,2)|0,h=f[h>>2]|0,Jbb(h)|0,zab(f[h>>2]|0)|0):0){d=n0a(d,2)|0;d=tPa(Jbb(f[d>>2]|0)|0)|0;pqa(a,+p[d>>3]);break}h=n0a(d,1)|0;if(KBa(f[h>>2]|0,133020)|0?(h=n0a(d,2)|0,h=f[h>>2]|0,Jbb(h)|0,zab(f[h>>2]|0)|0):0){h=n0a(d,2)|0;h=tPa(Jbb(f[h>>2]|0)|0)|0;g=-+p[h>>3];if(ZYa(g)|0){t$a(a,~~g);break}if(wPa(g)|0){t$a(a,~~g>>>0);break}else Ca(64712,51387,675,64757)}h=n0a(d,1)|0;if(((KBa(f[h>>2]|0,133024)|0?(h=n0a(d,2)|0,h=Jbb(f[h>>2]|0)|0,Hea(h,f[33267]|0)|0):0)?(h=n0a(d,2)|0,h=n0a(f[h>>2]|0,1)|0,KBa(f[h>>2]|0,133020)|0):0)?(h=n0a(d,2)|0,h=n0a(f[h>>2]|0,2)|0,h=f[h>>2]|0,Jbb(h)|0,zab(f[h>>2]|0)|0):0){d=n0a(d,2)|0;d=n0a(f[d>>2]|0,2)|0;d=tPa(Jbb(f[d>>2]|0)|0)|0;pqa(a,-+p[d>>3]);break}h=n0a(d,1)|0;if(((KBa(f[h>>2]|0,133020)|0?(h=n0a(d,2)|0,h=Jbb(f[h>>2]|0)|0,Hea(h,f[33267]|0)|0):0)?(h=n0a(d,2)|0,h=n0a(f[h>>2]|0,1)|0,KBa(f[h>>2]|0,133024)|0):0)?(h=n0a(d,2)|0,h=n0a(f[h>>2]|0,2)|0,h=f[h>>2]|0,Jbb(h)|0,zab(f[h>>2]|0)|0):0){d=n0a(d,2)|0;d=n0a(f[d>>2]|0,2)|0;d=tPa(Jbb(f[d>>2]|0)|0)|0;pqa(a,-+p[d>>3]);break}}else if(((b[c+98>>0]|0?Hea(h,f[33099]|0)|0:0)?(h=n0a(d,1)|0,h=f[h>>2]|0,Jbb(h)|0,Oab(f[h>>2]|0)|0):0)?(h=n0a(d,1)|0,KBa(f[h>>2]|0,131540)|0):0){h=n0a(d,2)|0;h=n0a(f[h>>2]|0,0)|0;h=tPa(Jbb(f[h>>2]|0)|0)|0;g=+p[h>>3];h=+K(g)>=1.0?(g>0.0?~~+Y(+J(g/4294967296.0),4294967295.0)>>>0:~~+W((g-+(~~g>>>0))/4294967296.0)>>>0):0;d=n0a(d,2)|0;d=n0a(f[d>>2]|0,1)|0;d=tPa(Jbb(f[d>>2]|0)|0)|0;d=BOa(0,~~+p[d>>3]>>>0|0,~~g>>>0|0,h|0)|0;XSa(a,d,I);break}EXa(a)}while(0);return}function Vj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;l=n+16|0;j=n+12|0;m=n+8|0;k=n;h=n+4|0;f[j>>2]=b;g=b+12|0;switch(Jbb(f[b+16>>2]|0)|0){case 1:{c=b+8|0;if((((Qab(f[c>>2]|0)|0?(e=ODa(g,0)|0,e=v$a(f[e>>2]|0)|0,f[l>>2]=e,e|0):0)?(d=f[e+8>>2]|0,Qab(d)|0):0)?f2a(d,f[c>>2]|0)|0:0)?(f[e+4>>2]|0)==(f[b+4>>2]|0):0){h=a+36|0;c=kY(h,l)|0;i=f[c+4>>2]|0;d=a+48|0;c=f[c>>2]|0;while(1){if((c|0)==(i|0))break;f[m>>2]=f[c>>2];e=(f[j>>2]|0)+8|0;b=nZ(d,m)|0;f[b>>2]=f[e>>2];b=kY(h,j)|0;e=b+4|0;g=f[e>>2]|0;if((g|0)==(f[b+8>>2]|0))LL(b,m);else{f[g>>2]=f[m>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+4|0}EU(h,f[l>>2]|0)}break}case 2:{c=ODa(g,0)|0;c=v$a(f[c>>2]|0)|0;f[m>>2]=c;d=ODa(g,1)|0;d=u$a(f[d>>2]|0)|0;if((c|0?(d|0)!=0&(Qab(f[c+8>>2]|0)|0):0)?VQa(d)|0:0){j=a+36|0;i=kY(j,m)|0;e=i+4|0;g=f[e>>2]|0;d=d+8|0;b=a+48|0;c=f[i>>2]|0;while(1){if((c|0)==(g|0))break;f[l>>2]=f[c>>2];o=nZ(b,l)|0;f[o>>2]=f[d>>2];c=c+4|0}f[h>>2]=f[d>>2];g=f[a+24>>2]|0;o=f[a+28>>2]|0;f[l>>2]=f[h>>2];o=v$a(ID(g,o,l)|0)|0;f[k>>2]=o;a:do if(o|0){h=f[e>>2]|0;c=f[i>>2]|0;while(1){if((c|0)==(h|0))break a;d=f[c>>2]|0;f[l>>2]=d;b=kY(j,k)|0;e=b+4|0;g=f[e>>2]|0;if((g|0)==(f[b+8>>2]|0))LL(b,l);else{f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}c=c+4|0}}while(0);EU(j,f[m>>2]|0)}break}default:{}}u=n;return}function Wj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+96|0;j=l+40|0;k=l+88|0;m=l+76|0;n=l+16|0;e=l+72|0;h=l+68|0;g=l;f[k>>2]=0;f[m>>2]=0;c=m+4|0;f[c>>2]=0;f[m+8>>2]=0;sna(n,k,m,n);x=0;va(156,f[n+16>>2]|0,b|0,1);d=x;x=0;a:do if(d&1)c=Ia()|0;else{o=f[c>>2]|0;c=f[m>>2]|0;d=o;b:do if(o-c>>2>>>0<2){c=n$a(f[b+16>>2]|0)|0;if(c){x=0;c=ga(225,c+8|0)|0;o=x;x=0;if(o&1){c=Ia()|0;break a}if(!c)c=f[b+12>>2]|0;else c=0}else c=0}else{while(1){if((c|0)==(d|0))break;o=f[c>>2]|0;t$a(j,0);o=o+8|0;f[o>>2]=f[j>>2];f[o+4>>2]=f[j+4>>2];f[o+8>>2]=f[j+8>>2];f[o+12>>2]=f[j+12>>2];c=c+4|0}f[e>>2]=b;bNa(j,fZa(f[a+40>>2]|0)|0);x=0;ua(2161,j|0,e|0);o=x;x=0;c:do if(o&1){c=Ia()|0;P_a(j)}else{P_a(j);c=f[e>>2]|0;d:do if(f[k>>2]|0){c=n$a(c)|0;if(!c){d=f[a+36>>2]|0;Jbb(d)|0;_0a(h,d);d=f[e>>2]|0;t$a(g,f[k>>2]|0);x=0;f[j>>2]=f[g>>2];f[j+4>>2]=f[g+4>>2];f[j+8>>2]=f[g+8>>2];f[j+12>>2]=f[g+12>>2];c=ia(50,h|0,j|0)|0;o=x;x=0;if(!(o&1)?(x=0,i=ka(7,f[h>>2]|0,0,d|0,c|0)|0,o=x,x=0,!(o&1)):0){c=i;break}c=Ia()|0;break c}d=c+8|0;x=0;a=ga(225,d|0)|0;o=x;x=0;do if(!(o&1))if(!a){t$a(j,f[k>>2]|0);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];break d}else{x=0;wa(71,103743,103516,984,103766);x=0;break}while(0);c=Ia()|0;break c}while(0);break b}while(0);break a}while(0);xta(n);zSa(m);u=l;return c|0}while(0);xta(n);zSa(m);Ua(c|0);return 0}function Xj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,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=u;u=u+144|0;l=o+112|0;q=o+88|0;e=o+100|0;g=o+72|0;h=o+68|0;p=o+48|0;m=o+4|0;n=o;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;_Z(q,111401,j7a(111401)|0);d=0;while(1){if(d>>>0>=15){i=3;break}x=0;ua(82,q|0,106);k=x;x=0;if(k&1){i=6;break}d=d+1|0}do if((i|0)==3){x=0;ua(88,e|0,q|0);k=x;x=0;if(k&1){d=Ia()|0;break}x=0;d=ia(55,e|0,c|0)|0;k=x;x=0;if(k&1){d=Ia()|0;MTa(e);break}k=a+16|0;f[k>>2]=f[d>>2];MTa(e);x=0;va(85,h|0,0,0);j=x;x=0;if((!(j&1)?(x=0,f[l>>2]=f[h>>2],va(166,g|0,c|0,l|0),j=x,x=0,!(j&1)):0)?(x=0,ta(505,g|0),j=x,x=0,!(j&1)):0){f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[p+12>>2]=0;f[p+16>>2]=1065353216;i=f[c+80>>2]|0;h=f[c+76>>2]|0;a:while(1){if((h|0)==(i|0)){i=13;break}j=f[h+8>>2]|0;g=f[h+4>>2]|0;while(1){if((g|0)==(j|0))break;d=BB(p,g)|0;if(!d){x=0;d=ja(79,a|0,f[g>>2]|0,c|0)|0;e=x;x=0;if(e&1){i=24;break a}x=0;e=ia(193,p|0,g|0)|0;r=x;x=0;if(r&1){i=24;break a}f[e>>2]=d;f[g>>2]=d}else f[g>>2]=f[d+12>>2];g=g+4|0}h=h+16|0}if((i|0)==13){r=b+20|0;f[l>>2]=f[r>>2];f[l+4>>2]=f[r+4>>2];f[l+8>>2]=f[r+8>>2];f[l+12>>2]=f[r+12>>2];f[l+16>>2]=f[r+16>>2];r3(m,c,l);p4a(m);f[n>>2]=f[k>>2];x=0;f[l>>2]=f[n>>2];ua(2707,m|0,l|0);r=x;x=0;if(!(r&1)?(x=0,ta(438,m|0),r=x,x=0,!(r&1)):0){Wca(m);SQa(p);MTa(q);u=o;return}d=Ia()|0;Wca(m)}else if((i|0)==24)d=Ia()|0;SQa(p)}else d=Ia()|0}else if((i|0)==6)d=Ia()|0;while(0);MTa(q);Ua(d|0)}function Yj(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;g=u;u=u+64|0;d=g+36|0;k=g+40|0;e=g+24|0;i=g+12|0;j=g;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_Z(k,79504,j7a(79504)|0);x=0;c=ga(228,f[a+32>>2]|0)|0;m=x;x=0;a:do if(!(m&1)?(x=0,ia(59,k|0,c|0)|0,m=x,x=0,!(m&1)):0){x=0;ua(1283,j|0,h[a+8>>0]|0);m=x;x=0;if(m&1)c=Ia()|0;else{x=0;ia(83,j|0,108287)|0;m=x;x=0;if(m&1)c=Ia()|0;else{f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,i|0,108287)|0;m=x;x=0;do if(m&1)c=Ia()|0;else{f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];c=0;while(1){if((c|0)==3)break;f[i+(c<<2)>>2]=0;c=c+1|0}m=b[e+11>>0]|0;c=m<<24>>24<0;x=0;ja(49,k|0,(c?f[e>>2]|0:e)|0,(c?f[e+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){c=Ia()|0;MTa(e);break}MTa(e);MTa(i);MTa(j);b:do if(b[a+20>>0]|0){x=0;ia(59,k|0,79521)|0;m=x;x=0;if(m&1){l=15;break a}}else{m=Jbb(f[a+16>>2]|0)|0;x=0;ua(91,e|0,m|0);m=x;x=0;do if(!(m&1)){m=b[e+11>>0]|0;j=m<<24>>24<0;x=0;ja(49,k|0,(j?f[e>>2]|0:e)|0,(j?f[e+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){c=Ia()|0;MTa(e);break}else{MTa(e);break b}}else c=Ia()|0;while(0);break a}while(0);x=0;ua(83,d|0,k|0);m=x;x=0;if(m&1){l=15;break a}MTa(k);u=g;return f[d>>2]|0}while(0);MTa(i)}MTa(j)}}else l=15;while(0);if((l|0)==15)c=Ia()|0;MTa(k);Ua(c|0);return 0}function Zj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+80|0;i=q+48|0;l=q+68|0;m=q+64|0;n=q+32|0;o=q+16|0;p=q;j=f[(f[b+12>>2]|0)+4>>2]|0;f[l>>2]=j;k=f[b+4>>2]|0;b=b+8|0;h=f[b>>2]|0;e=(j|0)==4;_0a(m,a);c=e?73:60;d=e?75:62;e=e?71:58;EXa(n);EXa(o);EXa(p);switch(h|0){case 25:{kO(n,o,p);break}case 27:{jP(n,o,p);break}case 26:{wN(n,o,p);break}case 28:{MO(n,o,p);break}case 29:{lO(n,o,p);break}case 31:{kP(n,o,p);break}case 30:{xN(n,o,p);break}case 32:{NO(n,o,p);break}default:hb()}g=s8(88)|0;dX(g);b=NJ(f[b>>2]|0)|0;f[g>>2]=b;b=g+12|0;a=f[b>>2]|0;if((a|0)==(f[g+16>>2]|0))LL(g+8|0,l);else{f[a>>2]=j;f[b>>2]=a+4}f[g+4>>2]=k;k=f[m>>2]|0;h=rBa(k,h,SKa(k,0,j)|0)|0;l=g+36|0;f[l>>2]=h;k=SKa(k,0,j)|0;f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];f[i+12>>2]=f[o+12>>2];o=e0(m,i)|0;o=Kpa(f[m>>2]|0,c,k,o)|0;f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];k=e0(m,i)|0;k=Hqa(m,o,k,f[l>>2]|0)|0;f[l>>2]=k;k=SKa(f[m>>2]|0,0,j)|0;f[i>>2]=f[p>>2];f[i+4>>2]=f[p+4>>2];f[i+8>>2]=f[p+8>>2];f[i+12>>2]=f[p+12>>2];o=e0(m,i)|0;o=Kpa(f[m>>2]|0,d,k,o)|0;f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];p=e0(m,i)|0;p=Hqa(m,o,p,f[l>>2]|0)|0;f[l>>2]=p;p=SKa(f[m>>2]|0,0,j)|0;o=SKa(f[m>>2]|0,0,j)|0;o=Kpa(f[m>>2]|0,e,p,o)|0;f[i>>2]=f[n>>2];f[i+4>>2]=f[n+4>>2];f[i+8>>2]=f[n+8>>2];f[i+12>>2]=f[n+12>>2];p=e0(m,i)|0;p=Hqa(m,o,p,f[l>>2]|0)|0;f[l>>2]=p;u=q;return g|0}function _j(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2527,b);a=(aSa(c)|0)+8|0;if(Qab(f[a>>2]|0)|0)tS(d,2528,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2523,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2529,b);tS(d,2528,b);oS(d,(vSa(c)|0)+16|0);tS(d,2528,b);tS(d,2523,(vSa(c)|0)+12|0);tS(d,2528,b);tS(d,2523,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2530,b);tS(d,2523,(lSa(c)|0)+12|0);tS(d,2528,b);break}case 4:{d=a+16|0;tS(d,2531,b);tS(d,2528,b);oS(d,($Ra(c)|0)+16|0);oS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2532,b);tS(d,2528,b);oS(d,(NRa(c)|0)+32|0);tS(d,2523,(NRa(c)|0)+28|0);break}case 20:{d=a+16|0;tS(d,2533,b);tS(d,2528,b);oS(d,(ERa(c)|0)+8|0);break}case 23:{d=a+16|0;tS(d,2534,b);tS(d,2528,b);break}default:ve(a,b)}while(0);return}function $j(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0;r=u;u=u+64|0;p=r+48|0;s=r+32|0;t=r+8|0;i=r+24|0;q=r;d=b+4|0;a:do if((f[d>>2]|0)==2?(f[d>>2]=1,n=b+36|0,c=f[n>>2]|0,xba(a,c)|0):0){UN(s,a,c);x=0;va(159,t|0,a|0,1);g=x;x=0;if(g&1)c=Ia()|0;else{g=a+44|0;c=f[g>>2]|0;x=0;d=ga(320,t|0)|0;e=x;x=0;do if(!(e&1)?(x=0,j=ja(45,c|0,d|0,f[n>>2]|0)|0,e=x,x=0,!(e&1)):0){c=f[g>>2]|0;L1a(i,f[33071]|0);d=f[g>>2]|0;x=0;e=ga(320,s|0)|0;v=x;x=0;if((!(v&1)?(x=0,h=ja(46,f[d>>2]|0,e|0,1)|0,v=x,x=0,!(v&1)):0)?(x=0,f[p>>2]=f[i>>2],k=ja(47,c|0,p|0,h|0)|0,v=x,x=0,!(v&1)):0){c=f[g>>2]|0;x=0;d=ga(320,t|0)|0;v=x;x=0;if((!(v&1)?(x=0,l=ja(46,f[c>>2]|0,d|0,1)|0,v=x,x=0,!(v&1)):0)?(x=0,m=ka(21,f[g>>2]|0,j|0,k|0,l|0)|0,v=x,x=0,!(v&1)):0){f[n>>2]=m;MCa(t);MCa(s);o=19;break a}c=Ia()|0;break}c=Ia()|0}else o=14;while(0);if((o|0)==14)c=Ia()|0;MCa(t)}MCa(s)}else o=19;while(0);if((o|0)==19){h=a+148|0;e=a+128|0;d=kQa(b)|0;c=0;while(1){if(d>>>0>=(f[h>>2]|0)>>>0){o=21;break}g=c+1|0;FY(t,c);x=0;ia(83,t|0,106430)|0;v=x;x=0;if(v&1){o=28;break}f[p>>2]=f[t>>2];f[p+4>>2]=f[t+4>>2];f[p+8>>2]=f[t+8>>2];c=0;while(1){if((c|0)==3)break;f[t+(c<<2)>>2]=0;c=c+1|0}x=0;ua(83,s|0,p|0);v=x;x=0;if(v&1){o=29;break}MTa(p);MTa(t);f[q>>2]=f[s>>2];f[t>>2]=d;c=Im(e,t)|0;c=f[c>>2]|0;f[p>>2]=f[q>>2];PF(b,p,c)|0;d=d+1|0;c=g}if((o|0)==21){u=r;return}else if((o|0)==28)c=Ia()|0;else if((o|0)==29){c=Ia()|0;MTa(p)}MTa(t)}Ua(c|0)}function ak(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=u;u=u+48|0;n=k+24|0;l=k;j=k+12|0;e=f[a+12>>2]|0;f[n>>2]=0;h=n+4|0;f[h>>2]=0;i=n+8|0;f[i>>2]=0;x=0;ta(499,f[f[a>>2]>>2]|0);g=x;x=0;a:do if((!(g&1)?(x=0,ua(1890,f[(f[f[a+4>>2]>>2]|0)+16>>2]|0,34),g=x,x=0,!(g&1)):0)?(x=0,d=ia(177,f[f[a+8>>2]>>2]|0,34)|0,g=x,x=0,!(g&1)):0){b:do if(!d){g=e+16|0;c:while(1){x=0;d=ga(311,f[g>>2]|0)|0;e=x;x=0;if(e&1){m=12;break}switch(d|0){case 34:break b;case -1:{m=8;break c}default:{}}d=d&255;b[j>>0]=d;e=f[h>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;ua(1891,n|0,j|0);e=x;x=0;if(e&1){m=20;break}}else{b[e>>0]=d;f[h>>2]=(f[h>>2]|0)+1}}if((m|0)==8){g=Ea(12)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;k=j7a(99133)|0;x=0;va(87,l|0,99133,k|0);k=x;x=0;if(!(k&1)){x=0;ua(1882,g|0,l|0);k=x;x=0;if(k&1)e=1;else{x=0;va(98,g|0,34672,495);x=0;e=0}d=Ia()|0;MTa(l);if(!e)break a}else d=Ia()|0;La(g|0);break a}else if((m|0)==12){d=Ia()|0;break a}else if((m|0)==20){d=Ia()|0;break a}}while(0);x=0;ta(499,f[f[a>>2]>>2]|0);l=x;x=0;if(!(l&1)){i=f[n>>2]|0;l=f[h>>2]|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;va(151,j|0,i|0,l|0);l=x;x=0;if(l&1){d=Ia()|0;break}d=c+11|0;if((b[d>>0]|0)<0){Z0a(f[c>>2]|0,0);f[c+4>>2]=0}else{Z0a(c,0);b[d>>0]=0}x=0;ta(470,c|0);m=x;x=0;if(m&1){m=Ja(0)|0;y2a(m)}f[c>>2]=f[j>>2];f[c+4>>2]=f[j+4>>2];f[c+8>>2]=f[j+8>>2];d=0;while(1){if((d|0)==3)break;f[j+(d<<2)>>2]=0;d=d+1|0}MTa(j);zSa(n);u=k;return}else m=11}else m=11;while(0);if((m|0)==11)d=Ia()|0;zSa(n);Ua(d|0)}function bk(a){a=a|0;var c=0,d=0,e=0;a:do switch(f[a>>2]|0){case 0:{a=a+8|0;if(!(f[a>>2]|0)){DCa(134176,118431)|0;break a}else{e=Ema(134176,34)|0;Ema(DCa(e,f[a>>2]|0)|0,34)|0;break a}}case 1:{f[134176+(f[(f[33544]|0)+-12>>2]|0)+8>>2]=17;Bm(134176,+p[a+8>>3])|0;break}case 2:{d=a+8|0;if(!(Jbb(f[(f[d>>2]|0)+4>>2]|0)|0)){DCa(134176,118440)|0;break a}Ema(134176,91)|0;c=0;while(1){a=f[d>>2]|0;if(c>>>0>=(Jbb(f[a+4>>2]|0)|0)>>>0)break;if(c){DCa(134176,123496)|0;a=f[d>>2]|0}e=ODa(a,c)|0;bk(Jbb(f[e>>2]|0)|0);c=c+1|0}Ema(134176,93)|0;break}case 3:{DCa(134176,118443)|0;break}case 4:{DCa(134176,(b[a+8>>0]|0)==0?124474:124480)|0;break}case 5:{Ema(134176,123)|0;e=1;a=(f[a+8>>2]|0)+8|0;while(1){a=f[a>>2]|0;if(!a)break;d=a;c=f[d+8>>2]|0;d=f[d+12>>2]|0;if(!e)DCa(134176,123496)|0;e=Ema(134176,34)|0;DCa(DCa(e,Jbb(c)|0)|0,118448)|0;bk(Jbb(d)|0);e=0}Ema(134176,125)|0;break}case 6:{DCa(134176,118452)|0;bk(Jbb(f[a+8>>2]|0)|0);DCa(134176,123496)|0;e=cbb(UPa(a)|0)|0;bk(Jbb(f[e>>2]|0)|0);DCa(134176,123321)|0;break}case 7:{d=DCa(134176,118454)|0;e=cbb(rOa(a)|0)|0;DCa(DCa(d,f[e>>2]|0)|0,118457)|0;DCa(134176,123496)|0;e=bbb(rOa(a)|0)|0;bk(Jbb(f[e>>2]|0)|0);DCa(134176,123321)|0;break}default:{}}while(0);return}function ck(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0;s=u;u=u+64|0;n=s+52|0;r=s+40|0;v=s+24|0;o=s+20|0;p=s+16|0;t=s+4|0;q=s;do if(b[a+12>>0]|0){c=DCa(134176,95966)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(n);Wq(c,e)|0;fu(c)|0;break}v=Ia()|0;OCa(n);Ua(v|0)}while(0);i=nq(a)|0;j=t+4|0;k=t+8|0;h=0;a:while(1){if(h>>>0>=i>>>0){d=8;break}if(nq(a)|0){f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;_Z(r,95986,j7a(95986)|0);x=0;ua(1870,a|0,r|0);m=x;x=0;if(m&1){d=12;break}MTa(r)}LXa(v);x=0;l=ga(306,a|0)|0;m=x;x=0;if(m&1){d=23;break}f[o>>2]=l;x=0;m=ga(302,a|0)|0;g=x;x=0;if(g&1){d=24;break}f[p>>2]=m;f[t>>2]=0;f[j>>2]=0;f[k>>2]=0;x=0;ua(94,t|0,m|0);g=x;x=0;if(g&1){d=25;break}c=0;while(1){if(c>>>0>=m>>>0)break;x=0;d=ga(307,a|0)|0;g=x;x=0;if(g&1){d=28;break a}b[(f[t>>2]|0)+c>>0]=d;c=c+1|0}c=f[a>>2]|0;d=f[t>>2]|0;f[q>>2]=d;e=c+104|0;g=f[e>>2]|0;if(g>>>0>=(f[c+108>>2]|0)>>>0){x=0;wa(142,c+100|0,o|0,q|0,p|0);m=x;x=0;if(m&1){d=30;break}}else{x=0;va(85,n|0,m|0,0);m=x;x=0;if(m&1){d=30;break}x=0;wa(139,g|0,l|0,d|0,f[n>>2]|0);m=x;x=0;if(m&1){d=30;break}f[e>>2]=(f[e>>2]|0)+16}zSa(t);P_a(v);h=h+1|0}if((d|0)==8){u=s;return}else if((d|0)==12){c=Ia()|0;MTa(r)}else if((d|0)==23){c=Ia()|0;d=33}else if((d|0)==24){c=Ia()|0;d=32}else if((d|0)==25){c=Ia()|0;d=31}else if((d|0)==28){c=Ia()|0;d=31}else if((d|0)==30){c=Ia()|0;d=31}if((d|0)==31){zSa(t);d=32}if((d|0)==32)d=33;if((d|0)==33)P_a(v);Ua(c|0)}function dk(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;c=o+20|0;j=o+16|0;p=o+4|0;e=o;b=Dm(a)|0;f[c>>2]=b;a:do if(!(f[b+4>>2]|0)){_0a(j,f[a>>2]|0);f[p>>2]=0;h=p+4|0;f[h>>2]=0;d=p+8|0;f[d>>2]=0;x=0;ua(640,p|0,c|0);g=x;x=0;b:do if(g&1)b=Ia()|0;else{do{x=0;b=ga(310,a|0)|0;g=x;x=0;if(g&1){i=10;break}f[e>>2]=b;c=f[h>>2]|0;if((c|0)==(f[d>>2]|0)){x=0;ua(640,p|0,e|0);g=x;x=0;if(g&1){i=10;break}}else{f[c>>2]=b;f[h>>2]=(f[h>>2]|0)+4}}while(!(f[b+4>>2]|0));if((i|0)==10){b=Ia()|0;break}e=f[j>>2]|0;x=0;b=ia(99,e|0,0)|0;g=x;x=0;do if(!(g&1)){g=b+12|0;c=f[h>>2]|0;while(1){if((f[p>>2]|0)==(c|0))break;x=0;ua(81,g|0,f[c+-4>>2]|0);d=x;x=0;if(d&1){i=16;break}c=(f[h>>2]|0)+-4|0;f[h>>2]=c}if((i|0)==16){b=Ia()|0;break}x=0;ua(1888,a|0,96599);i=x;x=0;if(!(i&1)){x=0;c=ia(75,g|0,0)|0;i=x;x=0;c:do if(!(i&1)){d=f[(f[c>>2]|0)+4>>2]|0;do if(!(v2a(d)|0)){if((d|0)!=5){x=0;wa(71,112103,87231,1428,96638);x=0;break c}}else{x=0;c=ia(96,f[a+124>>2]|0,d|0)|0;a=x;x=0;if(((((!(a&1)?(x=0,k=ia(75,g|0,0)|0,a=x,x=0,!(a&1)):0)?(x=0,l=ja(45,j|0,c|0,f[k>>2]|0)|0,k=x,x=0,!(k&1)):0)?(x=0,m=ia(75,g|0,0)|0,k=x,x=0,!(k&1)):0)?(f[m>>2]=l,x=0,n=ja(46,e|0,c|0,d|0)|0,m=x,x=0,!(m&1)):0)?(x=0,ua(81,g|0,n|0),n=x,x=0,!(n&1)):0)break;b=Ia()|0;break b}while(0);x=0;ta(439,b|0);n=x;x=0;if(!(n&1)){zSa(p);break a}}while(0);b=Ia()|0;break b}else i=17}else i=17;while(0);if((i|0)==17)b=Ia()|0}while(0);zSa(p);Ua(b|0)}while(0);u=o;return b|0}function ek(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;h=e&1;a:do if(e)switch(d<<24>>24){case 25:{d=1;e=1;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 26:{d=1;e=2;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 23:{d=1;e=4;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 27:{d=2;e=1;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 28:{d=2;e=2;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 29:{d=2;e=4;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 24:{d=2;e=8;g=vUa(f[a+4>>2]|0)|0;i=20;break a}default:{d=0;break a}}else switch(d<<24>>24){case 58:{d=1;e=1;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 59:{d=1;e=2;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 54:{d=1;e=4;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 60:{d=2;e=1;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 61:{d=2;e=2;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 62:{d=2;e=4;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 55:{d=2;e=8;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 56:{d=3;e=4;g=vUa(f[a+4>>2]|0)|0;i=20;break a}case 57:{d=4;e=8;g=vUa(f[a+4>>2]|0)|0;i=20;break a}default:{d=0;break a}}while(0);if((i|0)==20){b[g+8>>0]=e;f[g+32>>2]=d;b[g+20>>0]=h;do if(b[a+12>>0]|0){d=DCa(134176,110795)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[j>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,k=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,i=x,x=0,!(i&1)):0){OCa(j);Wq(d,k)|0;fu(d)|0;break}l=Ia()|0;OCa(j);Ua(l|0)}while(0);LF(a,g+16|0,g+12|0);d=dk(a)|0;f[g+28>>2]=d;d=dk(a)|0;f[g+24>>2]=d;uoa(g);f[c>>2]=g;d=1}u=l;return d|0}function fk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(h){if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=t2a(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}else{if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (I=o,p)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (I=o,p)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}o=0;p=k>>>((t2a(i|0)|0)>>>0);return (I=o,p)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;o=0;p=0;return (I=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=BOa(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;SRa(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=SRa(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function gk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;k=p+8|0;l=p+4|0;m=p;o=a+44|0;i=f[o>>2]|0;n=b+24|0;c=gV(i+212|0,f[n>>2]|0)|0;a:do if((c|0)!=(i+216|0)){g=f[c+20>>2]|0;e=g+8|0;g=g+12|0;h=b+8|0;d=b+12|0;c=0;b:while(1){if(c>>>0>=(f[g>>2]|0)-(f[e>>2]|0)>>2>>>0)break;c:do if(c>>>0<(Jbb(f[d>>2]|0)|0)>>>0){q=ODa(h,c)|0;i=f[(f[e>>2]|0)+(c<<2)>>2]|0;if((f[(f[q>>2]|0)+4>>2]|0)!=(i|0)){if((i|0)!=4?(q=ODa(h,c)|0,(f[(f[q>>2]|0)+4>>2]|0)!=5):0){j=10;break b}q=ODa(h,c)|0;switch(f[(f[q>>2]|0)+4>>2]|0){case 1:{q=f[o>>2]|0;i=ODa(h,c)|0;i=rBa(f[q+8>>2]|0,36,f[i>>2]|0)|0;q=ODa(h,c)|0;f[q>>2]=i;break c}case 3:{q=f[o>>2]|0;i=ODa(h,c)|0;i=rBa(f[q+8>>2]|0,43,f[i>>2]|0)|0;q=ODa(h,c)|0;f[q>>2]=i;break c}default:break c}}}else{q=cWa(f[(f[o>>2]|0)+4>>2]|0)|0;i=f[(f[e>>2]|0)+(c<<2)>>2]|0;f[q+8>>2]=i;f[q+4>>2]=i;faa(h,q)}while(0);c=c+1|0}if((j|0)==10)Ca(62745,51387,1311,62810);g=a+16|0;c=Jbb(f[a+36>>2]|0)|0;f[m>>2]=f[n>>2];f[k>>2]=f[m>>2];d=(jJ(c,k)|0)+16|0;f[l>>2]=f[d>>2];f[k>>2]=f[l>>2];c=(MI(c,k)|0)+4|0;c=f[c>>2]|0;d=b+4|0;e=f[d>>2]|0;if((e|0)!=(c|0)){f[d>>2]=c;if((c|0)!=4){if(!e)break;Ca(62826,51387,1345,62810)}switch(e|0){case 0:break a;case 1:{q=Um(rBa(f[(f[o>>2]|0)+8>>2]|0,29,b)|0,(f[o>>2]|0)+40|0)|0;n4a(f[g>>2]|0,q);break a}case 3:{q=rBa(f[(f[o>>2]|0)+8>>2]|0,44,b)|0;n4a(f[g>>2]|0,q);break a}default:hb()}}}while(0);u=p;return}function hk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+64|0;n=m+40|0;l=m+16|0;j=m;a:do if(((a|0)!=(c|0)?(e=(b[a>>0]|0)+-48|0,e>>>0<10):0)?(g=a+1|0,(g|0)!=(c|0)):0){k=e;while(1){h=(b[g>>0]|0)+-48|0;if(h>>>0>=10)break;e=g+1|0;if((e|0)==(c|0))break a;k=h+(k*10|0)|0;g=e}if((c-g|0)>>>0>=k>>>0){f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;qW(n,g,k);x=0;va(183,l|0,n|0,10);c=x;x=0;b:do if(c&1)a=Ia()|0;else{a=j7a(124654)|0;c=b[l+11>>0]|0;do if((a|0)==((c<<24>>24<0?f[l+4>>2]|0:c&255)|0)){x=0;a=ja(102,l|0,124654,a|0)|0;c=x;x=0;if(c&1){c=Ja(0)|0;y2a(c)}else{i=(a|0)==0;break}}else i=0;while(0);MTa(l);c:do if(i){x=0;ta(522,l|0);j=x;x=0;do if(j&1)a=Ia()|0;else{a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(l);break}}else{CY(e,l);f[a>>2]=(f[a>>2]|0)+24}OJa(l);break c}while(0);break b}else{f[j>>2]=f[n>>2];f[j+4>>2]=f[n+4>>2];f[j+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}RY(l,j);a=d+4|0;e=f[a>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(l);MTa(j);break b}}else{CY(e,l);f[a>>2]=(f[a>>2]|0)+24}OJa(l);MTa(j)}while(0);MTa(n);a=g+k|0;break a}while(0);MTa(n);Ua(a|0)}}while(0);u=m;return a|0}function ik(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+64|0;j=n+52|0;e=n+40|0;h=n+28|0;k=n+16|0;l=n+12|0;m=n;do if(b[a+12>>0]|0){c=DCa(134176,95470)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,o=x,x=0,!(o&1)):0){OCa(j);Wq(c,g)|0;fu(c)|0;break}o=Ia()|0;OCa(j);Ua(o|0)}while(0);do if((nq(a)|0)!=1){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,95502,j7a(95502)|0);x=0;ua(1870,a|0,e|0);o=x;x=0;if(o&1){c=Ia()|0;MTa(e);break}else{MTa(e);i=10;break}}else i=10;while(0);a:do if((i|0)==10){c=(f[a>>2]|0)+60|0;do if(b[c>>0]|0){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,95541,j7a(95541)|0);x=0;ua(1870,a|0,h|0);o=x;x=0;if(o&1){c=Ia()|0;MTa(h);break a}else{MTa(h);c=(f[a>>2]|0)+60|0;break}}while(0);b[c>>0]=1;do if((oq(a)|0)!=-16){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_Z(k,95583,j7a(95583)|0);x=0;ua(1870,a|0,k|0);o=x;x=0;if(o&1){c=Ia()|0;MTa(k);break a}else{MTa(k);break}}while(0);o=f[a>>2]|0;hLa(l,-1,0);XB(a,o+68|0,o+72|0,j,f[l>>2]|0);do if(b[j>>0]|0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;_Z(m,95618,j7a(95618)|0);x=0;ua(1870,a|0,m|0);o=x;x=0;if(o&1){c=Ia()|0;MTa(m);break a}else{MTa(m);break}}while(0);u=n;return}while(0);Ua(c|0)}function jk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=u;u=u+64|0;n=p+52|0;g=p+48|0;s=p+44|0;r=p+40|0;d=p+36|0;e=p+32|0;j=p+20|0;k=p+16|0;l=p+12|0;o=p;L1a(s,f[33047]|0);f[r>>2]=f[33150];i=b+12|0;q=f[i>>2]|0;h=b+16|0;c=f[h>>2]|0;f[g>>2]=f[s>>2];f[n>>2]=f[r>>2];c=h6(q,c,g,n)|0;if(!c){s=s8(24)|0;mPa(s);r=f[33150]|0;f[a+16>>2]=r;f[s>>2]=r;L1a(n,f[33047]|0);f[s+4>>2]=f[n>>2];f[s+8>>2]=f[33150];f[s+12>>2]=3;f[s+20>>2]=1;_s(b,s)}else f[a+16>>2]=f[c>>2];L1a(d,f[33047]|0);f[e>>2]=f[33149];s=f[i>>2]|0;c=f[h>>2]|0;f[g>>2]=f[d>>2];f[n>>2]=f[e>>2];c=h6(s,c,g,n)|0;do if(!c){c=s8(24)|0;mPa(c);d=f[33149]|0;f[a+20>>2]=d;f[c>>2]=d;L1a(n,f[33047]|0);f[c+4>>2]=f[n>>2];f[c+8>>2]=f[33149];f[c+12>>2]=0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,88358,j7a(88358)|0);x=0;d=ia(55,j|0,b|0)|0;s=x;x=0;if(s&1){c=Ia()|0;MTa(j);break}else{f[c+16>>2]=f[d>>2];MTa(j);_s(b,c);m=9;break}}else{f[a+20>>2]=f[c>>2];m=9}while(0);a:do if((m|0)==9){L1a(k,f[33047]|0);f[l>>2]=f[33148];s=f[i>>2]|0;c=f[h>>2]|0;f[g>>2]=f[k>>2];f[n>>2]=f[l>>2];c=h6(s,c,g,n)|0;do if(!c){d=s8(24)|0;mPa(d);c=f[33148]|0;f[a+24>>2]=c;f[d>>2]=c;L1a(n,f[33047]|0);f[d+4>>2]=f[n>>2];f[d+8>>2]=f[33148];f[d+12>>2]=0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;_Z(o,88358,j7a(88358)|0);x=0;c=ia(55,o|0,b|0)|0;s=x;x=0;if(s&1){c=Ia()|0;MTa(o);break a}else{f[d+16>>2]=f[c>>2];MTa(o);_s(b,d);break}}else f[a+24>>2]=f[c>>2];while(0);u=p;return}while(0);Ua(c|0)}function kk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j;do if(b[a+33>>0]|0){i=DCa(134176,110795)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);if((f[c+4>>2]|0)!=5){a:do if(!(b[c+20>>0]|0))switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,58)|0;break a}case 2:{Gv(f[a+28>>2]|0,59)|0;break a}case 4:{Gv(f[a+28>>2]|0,54)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[a+28>>2]|0,60)|0;break a}case 2:{Gv(f[a+28>>2]|0,61)|0;break a}case 4:{Gv(f[a+28>>2]|0,62)|0;break a}case 8:{Gv(f[a+28>>2]|0,55)|0;break a}default:hb()}break}case 3:{Gv(f[a+28>>2]|0,56)|0;break a}case 4:{Gv(f[a+28>>2]|0,57)|0;break a}default:hb()}else{d=a+28|0;Gv(f[d>>2]|0,-2)|0;switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,25)|0;break a}case 2:{Gv(f[d>>2]|0,26)|0;break a}case 4:{Gv(f[d>>2]|0,23)|0;break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{Gv(f[d>>2]|0,27)|0;break a}case 2:{Gv(f[d>>2]|0,28)|0;break a}case 4:{Gv(f[d>>2]|0,29)|0;break a}case 8:{Gv(f[d>>2]|0,24)|0;break a}default:hb()}break}default:hb()}}while(0);i=Jbb(f[c+16>>2]|0)|0;k=h[c+8>>0]|0;FX(a,i,k,Jbb(f[c+12>>2]|0)|0)}u=j;return}function lk(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;l=n+12|0;m=n;k=a+12|0;do if(b[k>>0]|0){e=DCa(134176,98443)|0;dYa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[l>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,j=x,x=0,!(j&1)):0){OCa(l);Wq(e,d)|0;fu(e)|0;break}n=Ia()|0;OCa(l);Ua(n|0)}while(0);j=nq(a)|0;do if(b[k>>0]|0){c=zm(DCa(134176,97878)|0,j)|0;dYa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[l>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,g=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(l);Wq(c,g)|0;fu(c)|0;break}n=Ia()|0;OCa(l);Ua(n|0)}while(0);g=a+64|0;h=a+68|0;i=a+60|0;e=0;while(1){if(e>>>0>=j>>>0){c=13;break}if(b[k>>0]|0){d=DCa(134176,97884)|0;dYa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[l>>2]|0,134880)|0;o=x;x=0;if(o&1){c=17;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;o=x;x=0;if(o&1){c=17;break}OCa(l);Wq(d,c)|0;fu(d)|0}d=nq(a)|0;c=f[a>>2]|0;if(d>>>0>=(f[c+4>>2]|0)-(f[c>>2]|0)>>2>>>0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;_Z(m,98469,j7a(98469)|0);x=0;ua(1870,a|0,m|0);o=x;x=0;if(o&1){c=22;break}MTa(m);c=f[a>>2]|0}c=f[(f[c>>2]|0)+(d<<2)>>2]|0;f[l>>2]=c;d=f[g>>2]|0;if(d>>>0<(f[h>>2]|0)>>>0){f[d>>2]=c;f[g>>2]=(f[g>>2]|0)+4}else LL(i,l);e=e+1|0}if((c|0)==13){u=n;return}else if((c|0)==17){o=Ia()|0;OCa(l);Ua(o|0)}else if((c|0)==22){o=Ia()|0;MTa(m);Ua(o|0)}}function mk(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+80|0;c=k+60|0;d=k+48|0;e=k+36|0;g=k+24|0;h=k+12|0;i=k;j=a+24|0;if((f[j>>2]|0)<=1?(f[a+28>>2]|0)<=1:0)l=7;else l=3;do if((l|0)==3)if(!(b[a+33>>0]|0)){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,68176,j7a(68176)|0);x=0;ua(80,a|0,c|0);m=x;x=0;if(m&1){a=Ia()|0;MTa(c);break}else{MTa(c);l=7;break}}else l=7;while(0);a:do if((l|0)==7){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;_Z(d,67770,j7a(67770)|0);x=0;ua(80,a|0,d|0);m=x;x=0;if(m&1){a=Ia()|0;MTa(d);break}MTa(d);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,69671,j7a(69671)|0);x=0;ua(80,a|0,e|0);m=x;x=0;if(m&1){a=Ia()|0;MTa(e);break}MTa(e);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,68615,j7a(68615)|0);x=0;ua(80,a|0,g|0);m=x;x=0;if(m&1){a=Ia()|0;MTa(g);break}MTa(g);if(!((f[j>>2]|0)<=1?(f[a+28>>2]|0)<=0:0))l=12;do if((l|0)==12){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,68074,j7a(68074)|0);x=0;ua(80,a|0,h|0);m=x;x=0;if(m&1){a=Ia()|0;MTa(h);break a}MTa(h);f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,68863,j7a(68863)|0);x=0;ua(80,a|0,i|0);m=x;x=0;if(m&1){a=Ia()|0;MTa(i);break a}else{MTa(i);break}}while(0);u=k;return}while(0);Ua(a|0)}function nk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+128|0;j=i+56|0;k=i+12|0;h=i;yAa(j);b[j>>0]=d&1;e=j+1|0;b[e>>0]=d>>>1&1;f[j+4>>2]=c;c=j+8|0;b[c>>0]=d>>>2&1;rza(k,a);x=0;ua(1285,k|0,j|0);g=x;x=0;a:do if(!(g&1)?(p4a(k),x=0,ta(438,k|0),g=x,x=0,!(g&1)):0){if(b[e>>0]|0){x=0;ua(1286,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1287,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;va(117,f[a+48>>2]|0,f[a+52>>2]|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1288,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1289,a|0,j|0);g=x;x=0;if(g&1){d=10;break}x=0;ua(1290,a|0,j|0);g=x;x=0;if(g&1){d=10;break}}if(XAa()|0?(x=0,ua(1291,a|0,j|0),g=x,x=0,g&1):0){d=10;break}g=j+9|0;b:do if(!((b[g>>0]&1|b[c>>0])<<24>>24)){e=f[a+40>>2]|0;c=f[a+36>>2]|0;while(1){if((c|0)==(e|0)){d=16;break}x=0;d=ia(128,j|0,f[c>>2]|0)|0;a=x;x=0;if(a&1){d=21;break}x=0;ua(107,h|0,d+4|0);a=x;x=0;if(a&1){d=21;break}x=0;ia(84,134176,h|0)|0;a=x;x=0;if(a&1){d=22;break}MTa(h);c=c+4|0}if((d|0)==16){x=0;c=ia(128,j|0,0)|0;a=x;x=0;do if(!(a&1)?(x=0,ua(107,h|0,c+4|0),a=x,x=0,!(a&1)):0){x=0;ia(84,134176,h|0)|0;a=x;x=0;if(a&1){c=Ia()|0;MTa(h);break}else{MTa(h);break b}}else d=27;while(0);if((d|0)==27)c=Ia()|0;break a}else if((d|0)==21)c=Ia()|0;else if((d|0)==22){c=Ia()|0;MTa(h)}break a}while(0);h=(b[g>>0]&1)!=0;Wca(k);Mqa(j);u=i;return h|0}else d=10;while(0);if((d|0)==10)c=Ia()|0;Wca(k);Mqa(j);Ua(c|0);return 0}function ok(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;p=q+20|0;g=q+16|0;l=q+12|0;m=q+8|0;n=q+4|0;o=q;h=a+64|0;k=f[h>>2]|0;do if((f[k+4>>2]|0)!=(f[k>>2]|0)){k=a+72|0;do if(b[k>>0]|0){c=DCa(134176,87982)|0;dYa(p,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[p>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(p);Wq(c,e)|0;fu(c)|0;break}q=Ia()|0;OCa(p);Ua(q|0)}while(0);j=E$(a,1)|0;i=a+68|0;e=f[i>>2]|0;d=f[h>>2]|0;n4a(g,(f[d+4>>2]|0)-(f[d>>2]|0)>>2);Yr(e,f[g>>2]|0)|0;e=f[h>>2]|0;g=f[e+4>>2]|0;e=f[e>>2]|0;while(1){if((e|0)==(g|0)){c=9;break}if(b[k>>0]|0){d=DCa(134176,87865)|0;dYa(p,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[p>>2]|0,134880)|0;h=x;x=0;if(h&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=13;break}OCa(p);Wq(d,c)|0;fu(d)|0}c=f[i>>2]|0;n4a(l,-32);Pr(c,f[l>>2]|0)|0;c=f[i>>2]|0;d=f[e>>2]|0;n4a(m,(f[d+12>>2]|0)-(f[d+8>>2]|0)>>2);Yr(c,f[m>>2]|0)|0;c=f[e>>2]|0;d=f[c+12>>2]|0;c=f[c+8>>2]|0;while(1){if((c|0)==(d|0))break;h=f[i>>2]|0;Pr(h,r8(f[c>>2]|0)|0)|0;c=c+4|0}c=f[i>>2]|0;if(!(f[(f[e>>2]|0)+4>>2]|0)){n4a(n,0);Yr(c,f[n>>2]|0)|0}else{n4a(o,1);Yr(c,f[o>>2]|0)|0;h=f[i>>2]|0;Pr(h,r8(f[(f[e>>2]|0)+4>>2]|0)|0)|0}e=e+4|0}if((c|0)==9){WA(a,j);break}else if((c|0)==13){q=Ia()|0;OCa(p);Ua(q|0)}}while(0);u=q;return}function pk(a,b){a=a|0;b=b|0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{Ul(a,b);break}case 2:{ar(a,b);break}case 3:{Zt(a,b);break}case 4:{vs(a,b);break}case 5:{yn(a,b);break}case 6:{wr(a,b);break}case 7:{rs(a,b);break}case 8:{vp(a,b);break}case 9:{bw(a,b);break}case 10:{Cu(a,b);break}case 11:{sv(a,b);break}case 12:{hw(a,b);break}case 13:{aj(a,b);break}case 14:{Dj(a,b);break}case 24:{bf(a,b);break}case 25:{bm(a,b);break}case 26:{sr(a,b);break}case 27:{tv(a,b);break}case 15:{mp(a,b);break}case 16:{tg(a,b);break}case 17:{Hf(a,b);break}case 18:{zv(a,b);break}case 19:{xB(a,b);break}case 20:{_A(a,b);break}case 21:{Ms(a,b);break}case 22:{FE(a);break}case 23:{oE(a);break}default:hb()}while(0);return}function qk(a,b){a=a|0;b=b|0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{bn(a,b);break}case 2:{St(a,b);break}case 3:{Wu(a,b);break}case 4:{Mx(a,b);break}case 5:{Uo(a,b);break}case 6:{gt(a,b);break}case 7:{bt(a,b);break}case 8:{ms(a,b);break}case 9:{bw(a,b);break}case 10:{zy(a,b);break}case 11:{sv(a,b);break}case 12:{ky(a,b);break}case 13:{Aj(a,b);break}case 14:{kk(a,b);break}case 24:{Mf(a,b);break}case 25:{_n(a,b);break}case 26:{Nt(a,b);break}case 27:{kz(a,b);break}case 15:{mp(a,b);break}case 16:{Ag(a,b);break}case 17:{Of(a,b);break}case 18:{qD(a,b);break}case 19:{DE(a);break}case 20:{pE(a,b);break}case 21:{At(a,b);break}case 22:{FE(a);break}case 23:{oE(a);break}default:hb()}while(0);return}function rk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0;x=u;u=u+112|0;t=x+64|0;n=x+36|0;v=x;sRa(n);o=n+4|0;p=n+8|0;q=n+9|0;r=n+16|0;s=n+20|0;w=c+114|0;h=41564;while(1){if((h|0)==41580)break;l=f[h>>2]|0;f[o>>2]=l;i=41580;while(1){if((i|0)==41596)break;m=f[i>>2]|0;b[p>>0]=m;a:do if(m>>>0<=(Ixa(l)|0)>>>0){j=79498;while(1){if((j|0)==79500)break a;k=b[j>>0]|0;b[q>>0]=k;b:do if(k<<24>>24==0|(t6a(l)|0)^1){k=41596;while(1){if((k|0)==41612)break b;d=f[k>>2]|0;wHa(r,d,0)|0;c:do if(d>>>0<=m>>>0){e=(d|0)==(m|0);d=79500;while(1){if((d|0)==79502)break c;y=b[d>>0]|0;g=y<<24>>24!=0;b[s>>0]=y;do if(e|g^1){if(g?(b[w>>0]|0)==0:0)break;f[t>>2]=f[n>>2];f[t+4>>2]=f[n+4>>2];f[t+8>>2]=f[n+8>>2];f[t+12>>2]=f[n+12>>2];f[t+16>>2]=f[n+16>>2];f[t+20>>2]=f[n+20>>2];f[t+24>>2]=f[n+24>>2];Gn(a,t,c)}while(0);d=d+1|0}}while(0);k=k+4|0}}while(0);j=j+1|0}}while(0);i=i+4|0}h=h+4|0}oNa(v);m=v+32|0;n=v+4|0;o=v+8|0;p=v+16|0;q=v+20|0;k=41612;while(1){if((k|0)==41628)break;r=f[k>>2]|0;f[m>>2]=r;f[n>>2]=0;l=41628;while(1){if((l|0)==41644)break;s=f[l>>2]|0;b[o>>0]=s;d:do if(s>>>0<=(Ixa(r)|0)>>>0){j=41644;while(1){if((j|0)==41660)break d;d=f[j>>2]|0;wHa(p,d,0)|0;e:do if(d>>>0<=s>>>0){i=(d|0)==(s|0);h=79502;while(1){if((h|0)==79504)break e;y=b[h>>0]|0;d=y<<24>>24!=0;b[q>>0]=y;do if(i|d^1){if(d?(b[w>>0]|0)==0:0)break;d=t;e=v;g=d+36|0;do{f[d>>2]=f[e>>2];d=d+4|0;e=e+4|0}while((d|0)<(g|0));Bn(a,t,c)}while(0);h=h+1|0}}while(0);j=j+4|0}}while(0);l=l+4|0}k=k+4|0}u=x;return}function sk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=u;u=u+16|0;k=h;d=b+8|0;e=f[d>>2]|0;a:do if(Yna(e)|0){g=f[b+4>>2]|0;c=f[b+12>>2]|0;if((g|0)!=5?(f[c+4>>2]|0)!=5:0){b:do if(!(xba(a,c)|0)){switch(g|0){case 4:case 2:break b;default:{}}Ca(106926,106511,904,106915)}while(0);do switch(e|0){case 3:case 1:{Xn(a,b);break a}case 21:{FD(a,b);break a}case 22:{Un(a,b);break a}case 23:{ty(a,b);break a}case 24:{Y5(a,b);break a}case 34:{Qo(a,b);break a}case 46:{ap(a,b);break a}case 32:case 30:case 28:case 26:{wd(a,b);break a}case 42:case 41:case 40:case 39:{Bj(a,b);break a}case 5:{c=DCa(134176,106993)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;a=ia(73,f[k>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,i=ia(f[(f[a>>2]|0)+28>>2]|0,a|0,10)|0,j=x,x=0,!(j&1)):0){OCa(k);Wq(c,i)|0;fu(c)|0;hb()}j=Ia()|0;OCa(k);Ua(j|0)}default:{c=Am(DCa(134176,107030)|0,f[d>>2]|0)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;a=ia(73,f[k>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,j=ia(f[(f[a>>2]|0)+28>>2]|0,a|0,10)|0,i=x,x=0,!(i&1)):0){OCa(k);Wq(c,j)|0;fu(c)|0;hb()}j=Ia()|0;OCa(k);Ua(j|0)}}while(0)}if(xba(a,c)|0)Ca(106889,106511,900,106915);else{GVa(f[a+16>>2]|0,c)|0;break}}while(0);u=h;return}function tk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+4|0;m=f[l>>2]|0;c=m&-8;i=a+c|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(c>>>0>=(b+4|0)>>>0?(c-b|0)>>>0<=f[33422]<<1>>>0:0)return a|0;a=0;return a|0}if(c>>>0>=b>>>0){c=c-b|0;if(c>>>0<=15)return a|0;k=a+b|0;f[l>>2]=m&1|b|2;f[k+4>>2]=c|3;m=i+4|0;f[m>>2]=f[m>>2]|1;Pg(k,c);return a|0}if((f[33308]|0)==(i|0)){k=(f[33305]|0)+c|0;c=k-b|0;d=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}f[l>>2]=m&1|b|2;f[d+4>>2]=c|1;f[33308]=d;f[33305]=c;return a|0}if((f[33307]|0)==(i|0)){d=(f[33304]|0)+c|0;if(d>>>0>>0){a=0;return a|0}c=d-b|0;if(c>>>0>15){k=a+b|0;d=a+d|0;f[l>>2]=m&1|b|2;f[k+4>>2]=c|1;f[d>>2]=c;d=d+4|0;f[d>>2]=f[d>>2]&-2;d=k}else{f[l>>2]=m&1|d|2;d=a+d+4|0;f[d>>2]=f[d>>2]|1;d=0;c=0}f[33304]=c;f[33307]=d;return a|0}d=f[i+4>>2]|0;if(d&2|0){a=0;return a|0}j=(d&-8)+c|0;if(j>>>0>>0){a=0;return a|0}k=j-b|0;e=d>>>3;do if(d>>>0<256){d=f[i+8>>2]|0;c=f[i+12>>2]|0;if((c|0)==(d|0)){f[33302]=f[33302]&~(1<>2]=c;f[c+8>>2]=d;break}}else{h=f[i+24>>2]|0;c=f[i+12>>2]|0;do if((c|0)==(i|0)){d=i+16|0;e=d+4|0;c=f[e>>2]|0;if(!c){c=f[d>>2]|0;if(!c){e=0;break}}else d=e;while(1){g=c+20|0;e=f[g>>2]|0;if(!e){g=c+16|0;e=f[g>>2]|0;if(!e)break;else{c=e;d=g}}else{c=e;d=g}}f[d>>2]=0;e=c}else{e=f[i+8>>2]|0;f[e+12>>2]=c;f[c+8>>2]=e;e=c}while(0);if(h|0){c=f[i+28>>2]|0;d=133512+(c<<2)|0;if((f[d>>2]|0)==(i|0)){f[d>>2]=e;if(!e){f[33303]=f[33303]&~(1<>2]|0)==(i|0)?g:h+20|0)>>2]=e;if(!e)break}f[e+24>>2]=h;c=i+16|0;d=f[c>>2]|0;if(d|0){f[e+16>>2]=d;f[d+24>>2]=e}c=f[c+4>>2]|0;if(c|0){f[e+20>>2]=c;f[c+24>>2]=e}}}while(0);if(k>>>0<16){f[l>>2]=m&1|j|2;m=a+j+4|0;f[m>>2]=f[m>>2]|1;return a|0}else{i=a+b|0;f[l>>2]=m&1|b|2;f[i+4>>2]=k|3;m=a+j+4|0;f[m>>2]=f[m>>2]|1;Pg(i,k);return a|0}return 0}function uk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0;z=u;u=u+32|0;A=z+8|0;v=z+4|0;w=z;a:while(1){if((b|0)==(c|0)){y=3;break}r=f[b>>2]|0;t=f[r+16>>2]|0;r=f[r+12>>2]|0;while(1){if((r|0)==(t|0))break;f[v>>2]=f[r>>2];s=$k(a,v)|0;k=f[b>>2]|0;f[w>>2]=k;f[A>>2]=k;q=JH(A,4)|0;o=s+4|0;j=f[o>>2]|0;p=(j|0)==0;b:do if(!p){l=j+-1|0;m=(l&j|0)==0;if(!m)if(q>>>0>>0)e=q;else e=(q>>>0)%(j>>>0)|0;else e=l&q;d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d)y=22;else do{d=f[d>>2]|0;if(!d){y=22;break b}i=f[d+4>>2]|0;if((i|0)!=(q|0)){if(!m){if(i>>>0>=j>>>0)i=(i>>>0)%(j>>>0)|0}else i=i&l;if((i|0)!=(e|0)){y=22;break b}}}while((f[d+8>>2]|0)!=(k|0))}else{e=0;y=22}while(0);if((y|0)==22){y=0;W6(A,s,q,w);k=s+12|0;g=+(((f[k>>2]|0)+1|0)>>>0);h=+n[s+16>>2];do if(p|h*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(632,s|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1)break a;d=f[o>>2]|0;e=d+-1|0;if(!(e&d)){j=d;e=e&q;break}if(q>>>0>>0){j=d;e=q}else{j=d;e=(q>>>0)%(d>>>0)|0}}while(0);d=f[(f[s>>2]|0)+(e<<2)>>2]|0;if(!d){d=s+8|0;i=f[A>>2]|0;f[i>>2]=f[d>>2];f[d>>2]=i;f[(f[s>>2]|0)+(e<<2)>>2]=d;d=f[i>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;f[(f[s>>2]|0)+(d<<2)>>2]=i}}else{s=f[A>>2]|0;f[s>>2]=f[d>>2];f[d>>2]=s}f[k>>2]=(f[k>>2]|0)+1}r=r+4|0}b=b+4|0}if((y|0)==3){u=z;return}b=Ia()|0;d=f[A>>2]|0;f[A>>2]=0;if(d|0)Cbb(d);Ua(b|0)}function vk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=u;u=u+48|0;l=k+24|0;m=k+12|0;n=k;i=a;f[i>>2]=0;f[i+4>>2]=0;i=b+16|0;b=0;e=0;while(1){j=(pra(f[i>>2]|0)|0)<<24>>24;d=(j&128|0)==0;h=j&127;o=(b|0)==0&(e|0)==0;c=SRa(64,0,b|0,e|0)|0;c=mMa(1,0,c|0)|0;c=BOa(c|0,I|0,127,0)|0;g=I;c=o?127:c;c=c&h;if(!(d|(c|0)==(h|0)&0==0)){c=3;break}g=mMa(c|0,0,b|0)|0;h=a;g=f[h>>2]|g;h=f[h+4>>2]|I;o=a;f[o>>2]=g;f[o+4>>2]=h;if(d){c=17;break}b=BOa(b|0,e|0,7,0)|0;if(b>>>0>63){c=11;break}else e=I}do if((c|0)==3){d=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;o=j7a(95688)|0;x=0;va(87,l|0,95688,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,d|0,l|0);o=x;x=0;if(o&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(l);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==11){d=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;o=j7a(95731)|0;x=0;va(87,m|0,95731,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,d|0,m|0);o=x;x=0;if(o&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(m);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==17){if((j&64|0?(b+7|0)>>>0<64:0)?(o=57-b|0,m=mMa(g|0,h|0,o|0)|0,o=BJa(m|0,I|0,o|0)|0,m=I,l=a,f[l>>2]=o,f[l+4>>2]=m,(m|0)>-1|(m|0)==-1&o>>>0>4294967295):0){d=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;o=j7a(95744)|0;x=0;va(87,n|0,95744,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,d|0,n|0);o=x;x=0;if(o&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(n);if(!c)break}else b=Ia()|0;La(d|0);break}u=k;return}while(0);Ua(b|0)}function wk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;fEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Jbb(j)|0;faa(i,DWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=lSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(Eqa(c)|0))break;k=nRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;bIa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76883,76794,626,76911)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Jbb(e)|0;_0a(k,e);e=d+12|0;n=J$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(e)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(e,DWa(n+144|0)|0)}n=f[g>>2]|0;Jbb(n)|0;_0a(k,n);d=d+16|0;n=J$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(d)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(d,DWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];y3(a+44|0);P_(a+56|0);mqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function xk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;gEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Jbb(j)|0;faa(i,DWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=lSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(Eqa(c)|0))break;k=nRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;bIa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76883,76794,626,76911)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Jbb(e)|0;_0a(k,e);e=d+12|0;n=J$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(e)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(e,DWa(n+144|0)|0)}n=f[g>>2]|0;Jbb(n)|0;_0a(k,n);d=d+16|0;n=J$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(d)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(d,DWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];z3(a+44|0);Q_(a+56|0);mqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function yk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;hEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Jbb(j)|0;faa(i,DWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=lSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(Eqa(c)|0))break;k=nRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;bIa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76883,76794,626,76911)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Jbb(e)|0;_0a(k,e);e=d+12|0;n=J$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(e)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(e,DWa(n+144|0)|0)}n=f[g>>2]|0;Jbb(n)|0;_0a(k,n);d=d+16|0;n=J$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(d)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(d,DWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];A3(a+44|0);R_(a+56|0);mqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function zk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;iEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Jbb(j)|0;faa(i,DWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=lSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(Eqa(c)|0))break;k=nRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;bIa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76883,76794,626,76911)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Jbb(e)|0;_0a(k,e);e=d+12|0;n=J$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(e)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(e,DWa(n+144|0)|0)}n=f[g>>2]|0;Jbb(n)|0;_0a(k,n);d=d+16|0;n=J$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(d)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(d,DWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];B3(a+44|0);S_(a+56|0);mqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function Ak(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;k=m;l=a+92|0;b[l>>0]=0;jEa(a+16|0,c);g=a+144|0;h=a+148|0;j=f[h>>2]|0;c=f[g>>2]|0;e=j;if((j|0)!=(c|0)){d=a+36|0;while(1){if((c|0)==(e|0))break;i=(f[c>>2]|0)+12|0;j=f[d>>2]|0;Jbb(j)|0;faa(i,DWa(j+144|0)|0);c=c+4|0}f[h>>2]=f[g>>2];b[l>>0]=1}h=a+156|0;i=a+160|0;g=f[i>>2]|0;c=f[h>>2]|0;j=g;a:do if((g|0)==(c|0)){if(!(b[l>>0]|0)){e=f[a+172>>2]|0;d=f[a+168>>2]|0;while(1){if((d|0)==(e|0))break a;g=f[d>>2]|0;h=lSa(f[g>>2]|0)|0;i=h+12|0;c=f[i>>2]|0;if(!(Eqa(c)|0))break;k=nRa(c)|0;c=k+12|0;j=f[c>>2]|0;f[i>>2]=j;f[c>>2]=h;bIa(h,f[j+4>>2]|0);f[g>>2]=k;b[l>>0]=1;d=d+4|0}Ca(76883,76794,626,76911)}}else{g=a+36|0;while(1){if((c|0)==(j|0))break;d=f[c>>2]|0;e=f[g>>2]|0;Jbb(e)|0;_0a(k,e);e=d+12|0;n=J$(k,f[e>>2]|0,0)|0;f[e>>2]=n;e=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(e)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(e,DWa(n+144|0)|0)}n=f[g>>2]|0;Jbb(n)|0;_0a(k,n);d=d+16|0;n=J$(k,f[d>>2]|0,0)|0;f[d>>2]=n;d=n+12|0;if(!((Jbb(f[n+16>>2]|0)|0)!=0?(n=RCa(d)|0,b7a(f[f[n>>2]>>2]|0)|0):0)){n=f[g>>2]|0;Jbb(n)|0;faa(d,DWa(n+144|0)|0)}c=c+4|0}f[i>>2]=f[h>>2];b[l>>0]=1}while(0);f[a+172>>2]=f[a+168>>2];C3(a+44|0);T_(a+56|0);mqa(a+68|0);u=m;return (b[l>>0]|0)!=0|0}function Bk(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(g2a(a,f[c+8>>2]|0)|0)){if(!(g2a(a,f[c>>2]|0)|0)){q=f[a+12>>2]|0;k=a+16+(q<<3)|0;q5(a+16|0,c,d,e,g);h=a+24|0;if((q|0)<=1)break;a=f[a+8>>2]|0;if((a&2|0)==0?(j=c+36|0,(f[j>>2]|0)!=1):0){if(!(a&1)){a=c+54|0;while(1){if(b[a>>0]|0)break a;if((f[j>>2]|0)==1)break a;q5(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}a=c+24|0;i=c+54|0;while(1){if(b[i>>0]|0)break a;if((f[j>>2]|0)==1?(f[a>>2]|0)==1:0)break a;q5(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}a=c+54|0;while(1){if(b[a>>0]|0)break a;q5(h,c,d,e,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((f[c+16>>2]|0)!=(d|0)?(q=c+20|0,(f[q>>2]|0)!=(d|0)):0){f[c+32>>2]=e;p=c+44|0;if((f[p>>2]|0)==4)break;k=a+16+(f[a+12>>2]<<3)|0;e=c+52|0;l=c+53|0;n=c+54|0;m=a+8|0;o=c+24|0;h=0;i=a+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){a=18;break}b[e>>0]=0;b[l>>0]=0;Y2(i,c,d,d,1,g);if(b[n>>0]|0){a=18;break}do if(b[l>>0]|0){if(!(b[e>>0]|0))if(!(f[m>>2]&1)){h=1;a=18;break b}else{h=1;a=j;break}if((f[o>>2]|0)==1){a=23;break b}if(!(f[m>>2]&2)){a=23;break b}else{h=1;a=1}}else a=j;while(0);i=i+8|0;j=a}do if((a|0)==18){if((!j?(f[q>>2]=d,d=c+40|0,f[d>>2]=(f[d>>2]|0)+1,(f[c+36>>2]|0)==1):0)?(f[o>>2]|0)==2:0){b[n>>0]=1;if(h){a=23;break}else{h=4;break}}if(h)a=23;else h=4}while(0);if((a|0)==23)h=3;f[p>>2]=h;break}if((e|0)==1)f[c+32>>2]=1}else hwa(c,d,e);while(0);return}function Ck(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=NRa(f[b>>2]|0)|0;DUa(w);p=i+8|0;Q$a(r,p);LUa(g,p);p=a+84|0;s=a+80|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+40|0;n=a+44|0;while(1){if(!(qTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(P5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(68,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(141,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(1427,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}YYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(P5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(68,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(141,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(1427,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);pWa(a+16|0);RTa(w);u=v;return}while(0);RTa(w);Ua(b|0)}function Dk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k;do if(!(b[a+12>>0]|0))h=a+4|0;else{g=DCa(tm(DCa(134176,87573)|0,c,d)|0,87600)|0;e=a+4|0;g=DCa(zm(g,(f[e>>2]|0)-(f[a>>2]|0)|0)|0,123272)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,i=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,l=x,x=0,!(l&1)):0){OCa(j);Wq(g,i)|0;fu(g)|0;h=e;break}l=Ia()|0;OCa(j);Ua(l|0)}while(0);e=c&255;b[j>>0]=e;g=f[h>>2]|0;i=a+8|0;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{ZL(a,j);g=f[h>>2]|0}e=JMa(c|0,d|0,8)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{ZL(a,j);g=f[h>>2]|0}e=JMa(c|0,d|0,16)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{ZL(a,j);g=f[h>>2]|0}e=JMa(c|0,d|0,24)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{ZL(a,j);g=f[h>>2]|0}e=d&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{ZL(a,j);g=f[h>>2]|0}e=JMa(c|0,d|0,40)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{ZL(a,j);g=f[h>>2]|0}e=JMa(c|0,d|0,48)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;g=(f[h>>2]|0)+1|0;f[h>>2]=g}else{ZL(a,j);g=f[h>>2]|0}e=JMa(c|0,d|0,56)|0;e=e&255;b[j>>0]=e;if(g>>>0<(f[i>>2]|0)>>>0){b[g>>0]=e;f[h>>2]=(f[h>>2]|0)+1}else ZL(a,j);u=k;return a|0}function Ek(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,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=u;u=u+16|0;p=r;a:do if(((((c-a|0)>3?(b[a>>0]|0)==99:0)?(b[a+1>>0]|0)==108:0)?(n=a+2|0,i=Bc(n,c,d)|0,!((i|0)==(n|0)|(i|0)==(c|0))):0)?(o=d+4|0,e=f[o>>2]|0,(f[d>>2]|0)!=(e|0)):0){l=e+-12|0;n=b[l+11>>0]|0;m=n<<24>>24<0;dI(e+-24|0,m?f[l>>2]|0:l,m?f[e+-8>>2]|0:n&255)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}e=f[o>>2]|0;h=e+-12|0;g=h+11|0;if((b[g>>0]|0)<0){Z0a(f[h>>2]|0,0);f[e+-8>>2]=0;e=h}else{Z0a(h,0);b[g>>0]=0;e=h}yv(h);f[e>>2]=f[p>>2];f[e+4>>2]=f[p+4>>2];f[e+8>>2]=f[p+8>>2];e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}MTa(p);Isa((f[o>>2]|0)+-24|0,123274)|0;m=p+11|0;n=p+4|0;e=0;g=i;while(1){if((b[g>>0]|0)==69)break;l=Bc(g,c,d)|0;if((l|0)==(g|0)|(l|0)==(c|0)){e=a;break a}h=f[o>>2]|0;if((f[d>>2]|0)==(h|0)){e=a;break a}hY(p,h+-24|0);k=f[o>>2]|0;h=0;while(1){if((h|0)==-1)break;j=h+-1|0;OJa(k+(j*24|0)|0);h=j}h=k+-24|0;f[o>>2]=h;j=b[m>>0]|0;i=j<<24>>24<0;j=i?f[n>>2]|0:j&255;if(j)if((f[d>>2]|0)!=(h|0)){x=0;ja(97,k+-48|0,(i?f[p>>2]|0:p)|0,j|0)|0;k=x;x=0;if(k&1){q=24;break}else{h=1;g=l}}else{h=0;e=a}else{h=1;g=l}MTa(p);if(!h)break a}if((q|0)==24){r=Ia()|0;MTa(p);Ua(r|0)}e=f[o>>2]|0;if((f[d>>2]|0)!=(e|0)){Isa(e+-24|0,123272)|0;e=g+1|0}else e=a}else e=a;while(0);u=r;return e|0}function Fk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=NRa(f[b>>2]|0)|0;DUa(w);p=i+8|0;Q$a(r,p);LUa(g,p);p=a+84|0;s=a+80|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+40|0;n=a+44|0;while(1){if(!(qTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(P5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(92,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(211,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(3153,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}YYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(P5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(92,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(211,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(3153,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);pWa(a+16|0);RTa(w);u=v;return}while(0);RTa(w);Ua(b|0)}function Gk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+48|0;e=j+40|0;i=j+28|0;k=j+16|0;h=j+12|0;l=j;do if(!(b[(f[a>>2]|0)+60>>0]|0)){g=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;l=j7a(92631)|0;x=0;va(87,i|0,92631,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,g|0,i|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(i);if(!e)break}else d=Ia()|0;La(g|0)}else{g=KPa(f[a+4>>2]|0)|0;d=Or(c,1)|0;i=lF(Or(d,0)|0)|0;kNa(e,97308,1);if(f2a(i,f[e>>2]|0)|0){g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;l=j7a(92640)|0;x=0;va(87,k|0,92640,l|0);l=x;x=0;if(!(l&1)){x=0;wa(138,g|0,k|0,f[c+28>>2]|0,f[c+32>>2]|0);l=x;x=0;if(l&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(k);if(!e)break}else d=Ia()|0;La(g|0);break}k=lF(Or(d,1)|0)|0;d=f[a>>2]|0;L1a(h,k);f[e>>2]=f[h>>2];d=tma(d,e)|0;if(d|0){f[g+24>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];z7(a,c,(bYa(c)|0)+-1|0,g);l=ZQa(a,Or(c,(bYa(c)|0)+-1|0)|0)|0;f[g+28>>2]=l;cNa(g);u=j;return g|0}g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;k=j7a(92673)|0;x=0;va(87,l|0,92673,k|0);k=x;x=0;if(!(k&1)){x=0;wa(138,g|0,l|0,f[c+28>>2]|0,f[c+32>>2]|0);k=x;x=0;if(k&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(l);if(!e)break}else d=Ia()|0;La(g|0)}while(0);Ua(d|0);return 0}function Hk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=NRa(f[b>>2]|0)|0;DUa(w);p=i+8|0;Q$a(r,p);LUa(g,p);p=a+68|0;s=a+64|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+24|0;n=a+28|0;while(1){if(!(qTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(P5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(58,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(104,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(491,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}YYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(P5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(58,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(104,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(491,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);pWa(a);RTa(w);u=v;return}while(0);RTa(w);Ua(b|0)}function Ik(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;v=u;u=u+64|0;o=v+48|0;w=v+32|0;r=v+24|0;g=v+16|0;j=v+8|0;k=v;l=v+12|0;q=v+4|0;i=NRa(f[b>>2]|0)|0;DUa(w);p=i+8|0;Q$a(r,p);LUa(g,p);p=a+84|0;s=a+80|0;h=r+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;m=a+40|0;n=a+44|0;while(1){if(!(qTa(f[r>>2]|0,f[h>>2]|0,e,g)|0)){d=16;break}x=0;b=ga(256,r|0)|0;d=x;x=0;if(d&1){d=12;break}b=f[b>>2]|0;f[j>>2]=b;if(!(P5(w,j)|0)){f[l>>2]=b;d=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[l>>2];b=ja(60,d|0,b|0,o|0)|0;d=x;x=0;if(d&1){d=13;break}f[k>>2]=b;x=0;b=ia(110,p|0,k|0)|0;d=x;x=0;if(d&1){d=13;break}c=b+4|0;d=f[c>>2]|0;if((d|0)==(f[b+8>>2]|0)){x=0;ua(600,b|0,s|0);d=x;x=0;if(d&1){d=13;break}}else{f[d>>2]=f[s>>2];f[c>>2]=(f[c>>2]|0)+4}x=0;wa(82,o|0,w|0,j|0,j|0);d=x;x=0;if(d&1){d=12;break}}YYa(r)}a:do if((d|0)==12){b=Ia()|0;d=15}else if((d|0)==13){b=Ia()|0;d=15}else if((d|0)==16){b=i+24|0;b:do if(!(P5(w,b)|0)){f[q>>2]=f[b>>2];m=f[m>>2]|0;b=f[n>>2]|0;x=0;f[o>>2]=f[q>>2];b=ja(60,m|0,b|0,o|0)|0;q=x;x=0;do if(!(q&1)?(f[r>>2]=b,x=0,t=ia(110,p|0,r|0)|0,r=x,x=0,!(r&1)):0){b=t+4|0;c=f[b>>2]|0;if((c|0)==(f[t+8>>2]|0)){x=0;ua(600,t|0,s|0);t=x;x=0;if(t&1)break}else{f[c>>2]=f[s>>2];f[b>>2]=(f[b>>2]|0)+4}break b}while(0);b=Ia()|0;break a}while(0);pWa(a+16|0);RTa(w);u=v;return}while(0);RTa(w);Ua(b|0)}function Jk(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=u;u=u+144|0;h=l+128|0;i=l+124|0;o=l+64|0;m=l+44|0;n=l+24|0;j=l+8|0;e=l+20|0;g=l+4|0;k=l;f[i>>2]=a;IGa(o);x=0;ua(1626,o|0,a|0);d=x;x=0;if(d&1)a=Ia()|0;else{f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=1065353216;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;f[n+12>>2]=0;f[n+16>>2]=1065353216;f[j>>2]=i;f[j+4>>2]=m;f[j+8>>2]=n;b=f[o+28>>2]|0;a=f[o+24>>2]|0;while(1){if((a|0)==(b|0)){e=4;break}c=f[a>>2]|0;f[e>>2]=f[c+16>>2];x=0;f[h>>2]=f[e>>2];d=ia(155,j|0,h|0)|0;p=x;x=0;if(p&1){e=8;break}f[c+16>>2]=d;a=a+4|0}do if((e|0)==4){b=f[o+40>>2]|0;a=f[o+36>>2]|0;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;f[g>>2]=f[c+32>>2];x=0;f[h>>2]=f[g>>2];d=ia(155,j|0,h|0)|0;p=x;x=0;if(p&1){e=13;break}f[c+32>>2]=d;a=a+4|0}if((e|0)==13){a=Ia()|0;break}b=f[o+52>>2]|0;a=f[o+48>>2]|0;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;f[k>>2]=f[c+24>>2];x=0;f[h>>2]=f[k>>2];d=ia(155,j|0,h|0)|0;p=x;x=0;if(p&1){e=17;break}f[c+24>>2]=d;a=a+4|0}if((e|0)==17){a=Ia()|0;break}k=f[i>>2]|0;p=ED(f[k>>2]|0,f[k+4>>2]|0,n)|0;SM(k,p,f[(f[i>>2]|0)+4>>2]|0);x=0;ta(486,f[i>>2]|0);p=x;x=0;if(p&1){a=Ia()|0;break}else{SQa(n);Qca(m);Cya(o);u=l;return}}else if((e|0)==8)a=Ia()|0;while(0);SQa(n);Qca(m)}Cya(o);Ua(a|0)}function Kk(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)Ca(110558,115840,78,110563);do switch(f[c>>2]|0){case 1:{_k(a,b,c);break}case 2:{ru(a,b,c);break}case 3:{Rbb();break}case 4:{xp(a,b,c);break}case 5:{es(a,b,c);break}case 6:{Rbb();break}case 7:{Rbb();break}case 8:{Rbb();break}case 9:{Rbb();break}case 10:{Rbb();break}case 11:{sX(a,f[b+4>>2]|0,c);break}case 12:{Rbb();break}case 13:{Rbb();break}case 14:{Rbb();break}case 24:{QXa(a);break}case 25:{QXa(a);break}case 26:{QXa(a);break}case 27:{QXa(a);break}case 15:{W8(a,c);break}case 16:{Bd(a,b,c);break}case 17:{ad(a,b,c);break}case 18:{pr(a,b,c);break}case 19:{VN(a,b,f[c+8>>2]|0);break}case 20:{GM(a,b,c);break}case 21:{Rbb();break}case 22:{QXa(a);break}case 23:{oPa(b);break}default:hb()}while(0);return}function Lk(a,b){a=a|0;b=b|0;var c=0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{c=ZOa(a,b)|0;break}case 2:{c=ZOa(a,b)|0;break}case 3:{c=ZOa(a,b)|0;break}case 4:{c=ZOa(a,b)|0;break}case 5:{c=ZOa(a,b)|0;break}case 6:{c=ZOa(a,b)|0;break}case 7:{c=ZOa(a,b)|0;break}case 8:{c=ZOa(a,b)|0;break}case 9:{c=ZOa(a,b)|0;break}case 10:{c=ZOa(a,b)|0;break}case 11:{c=ZOa(a,b)|0;break}case 12:{c=ZOa(a,b)|0;break}case 13:{c=ZOa(a,b)|0;break}case 14:{c=ZOa(a,b)|0;break}case 24:{c=ZOa(a,b)|0;break}case 25:{c=ZOa(a,b)|0;break}case 26:{c=ZOa(a,b)|0;break}case 27:{c=ZOa(a,b)|0;break}case 15:{c=ZOa(a,b)|0;break}case 16:{c=ZOa(a,b)|0;break}case 17:{c=ZOa(a,b)|0;break}case 18:{c=ZOa(a,b)|0;break}case 19:{c=ZOa(a,b)|0;break}case 20:{c=ZOa(a,b)|0;break}case 21:{c=ZOa(a,b)|0;break}case 22:{c=ZOa(a,b)|0;break}case 23:{c=ZOa(a,b)|0;break}default:hb()}while(0);return c|0}function Mk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+48|0;j=o;k=o+44|0;p=o+32|0;l=o+28|0;m=o+24|0;f[k>>2]=c;f[p>>2]=0;n=p+4|0;f[n>>2]=0;e=p+8|0;f[e>>2]=0;x=0;ua(104,p|0,k|0);i=x;x=0;do if(!(i&1)){while(1){if(!(Jbb(f[c+16>>2]|0)|0))break;c=c+12|0;x=0;d=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}if(!(zab(f[f[d>>2]>>2]|0)|0))break;x=0;c=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}x=0;c=ga(217,f[c>>2]|0)|0;i=x;x=0;if(i&1){g=12;break}f[k>>2]=c;d=f[n>>2]|0;if((d|0)==(f[e>>2]|0)){x=0;ua(104,p|0,k|0);i=x;x=0;if(i&1){g=12;break}}else{f[d>>2]=c;f[n>>2]=(f[n>>2]|0)+4}}if((g|0)==12){c=Ia()|0;g=14;break}a1a(a);d=f[n>>2]|0;i=f[d+-4>>2]|0;c=d;a:while(1){if((c|0)==(f[p>>2]|0)){g=29;break}h=d+-4|0;d=f[h>>2]|0;f[k>>2]=d;f[n>>2]=h;b:do if(K0a(a)|0){f[l>>2]=f[d+8>>2];f[j>>2]=f[l>>2];ANa(a,j)}else{g=d+12|0;e=d+16|0;c=0;while(1){if(c>>>0>=(Jbb(f[e>>2]|0)|0)>>>0)break b;if(!((c|0)==0&(i|0)!=(d|0))){x=0;h=ia(75,g|0,c|0)|0;q=x;x=0;if(q&1){g=27;break a}x=0;va(93,j|0,b|0,f[h>>2]|0);q=x;x=0;if(q&1){g=27;break a}f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];f[a+16>>2]=f[j+16>>2];if(K0a(a)|0)break}c=c+1|0}f[m>>2]=f[d+8>>2];f[j>>2]=f[m>>2];ANa(a,j)}while(0);d=f[n>>2]|0;c=d}if((g|0)==27){c=Ia()|0;break}else if((g|0)==29){zSa(p);u=o;return}}else{c=Ia()|0;g=14}while(0);zSa(p);Ua(c|0)}function Nk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,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,v=0;t=u;u=u+64|0;l=t+24|0;h=t+56|0;v=t+40|0;j=t;k=b+16|0;e=f[k>>2]|0;if(e>>>0>250){e=f[b+36>>2]|0;pc[f[(f[e>>2]|0)+20>>2]&4095](e,57181);e=f[k>>2]|0}f[k>>2]=e+1;i=b+20|0;r=b+24|0;g=f[r>>2]|0;s=g-(f[i>>2]|0)|0;if((f[b+28>>2]|0)==(g|0))LL(i,c);else{f[g>>2]=f[c>>2];f[r>>2]=(f[r>>2]|0)+4}g=f[b>>2]|0;f[h>>2]=f[c>>2];f[l>>2]=f[h>>2];g=$I(g,l)|0;if(!g)Ca(116879,101308,965,57193);Xg(v,g,d);eW(l,b,v);x=0;va(93,j|0,l|0,f[g+36>>2]|0);d=x;x=0;if(d&1)e=Ia()|0;else{if(K0a(j)|0?!(g2a(f[j+16>>2]|0,f[33118]|0)|0):0){x=0;wa(71,57214,101308,977,57193);x=0}else{f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];c=g+4|0;if((f[c>>2]|0)==(f[a>>2]|0)){f[k>>2]=e;e=f[i>>2]|0;g=f[r>>2]|0;c=g;while(1){if((c-e|0)>>>0<=s>>>0)break;q=g+-4|0;f[r>>2]=q;c=q;g=q}f0a(v);u=t;return}x=0;e=ia(62,134176,57262)|0;t=x;x=0;if((((((!(t&1)?(x=0,m=ia(76,e|0,f[g>>2]|0)|0,t=x,x=0,!(t&1)):0)?(x=0,n=ia(62,m|0,57271)|0,t=x,x=0,!(t&1)):0)?(x=0,f[l>>2]=f[a>>2],f[l+4>>2]=f[a+4>>2],f[l+8>>2]=f[a+8>>2],f[l+12>>2]=f[a+12>>2],o=ia(70,n|0,l|0)|0,t=x,x=0,!(t&1)):0)?(x=0,p=ia(62,o|0,57285)|0,t=x,x=0,!(t&1)):0)?(x=0,q=ia(77,p|0,f[c>>2]|0)|0,t=x,x=0,!(t&1)):0)?(x=0,ia(71,q|0,10)|0,t=x,x=0,!(t&1)):0){x=0;sa(5);x=0}}e=Ia()|0}f0a(v);Ua(e|0)}function Ok(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){kN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(1412,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)xIa(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function Pk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+48|0;i=j+24|0;k=j+12|0;l=j;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_Z(a,66888,j7a(66888)|0);h=c+20|0;e=i+11|0;g=i+4|0;c=(f[c+24>>2]|0)-(f[h>>2]|0)>>2;while(1){d=c+-1|0;if((c|0)<=0){d=3;break}f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;c=j7a(66928)|0;x=0;va(87,l|0,66928,c|0);c=x;x=0;if(c&1){d=15;break}x=0;ia(59,l|0,f[(f[h>>2]|0)+(d<<2)>>2]|0)|0;c=x;x=0;if(c&1){d=16;break}f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];c=0;while(1){if((c|0)==3)break;f[l+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,k|0,112641)|0;c=x;x=0;if(c&1){d=17;break}f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];c=0;while(1){if((c|0)==3)break;f[k+(c<<2)>>2]=0;c=c+1|0}c=b[e>>0]|0;m=c<<24>>24<0;x=0;ja(49,a|0,(m?f[i>>2]|0:i)|0,(m?f[g>>2]|0:c&255)|0)|0;c=x;x=0;if(c&1){d=18;break}MTa(i);MTa(k);MTa(l);c=d}if((d|0)==3){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;m=j7a(66932)|0;x=0;va(87,i|0,66932,m|0);m=x;x=0;do if(!(m&1)){m=b[i+11>>0]|0;l=m<<24>>24<0;x=0;ja(49,a|0,(l?f[i>>2]|0:i)|0,(l?f[i+4>>2]|0:m&255)|0)|0;m=x;x=0;if(m&1){c=Ia()|0;MTa(i);break}else{MTa(i);u=j;return}}else c=Ia()|0;while(0)}else if((d|0)==15){c=Ia()|0;d=21}else if((d|0)==16){c=Ia()|0;d=20}else if((d|0)==17){c=Ia()|0;d=19}else if((d|0)==18){c=Ia()|0;MTa(i);d=19}if((d|0)==19){MTa(k);d=20}if((d|0)==20){MTa(l);d=21}MTa(a);Ua(c|0)}function Qk(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;n=p+24|0;g=p+12|0;o=p;do if(b[a+12>>0]|0){e=DCa(134176,97970)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){OCa(n);Wq(e,d)|0;fu(e)|0;break}p=Ia()|0;OCa(n);Ua(p|0)}while(0);m=nq(a)|0;do if((m|0)==-1){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,97991,j7a(97991)|0);x=0;ua(1870,a|0,g|0);l=x;x=0;if(l&1){c=Ia()|0;MTa(g);break}else{MTa(g);h=10;break}}else h=10;while(0);do if((h|0)==10){l=a+220|0;k=0;while(1){if(k>>>0>=m>>>0){h=12;break}if(nq(a)|0){f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;_Z(o,98009,j7a(98009)|0);x=0;ua(1870,a|0,o|0);j=x;x=0;if(j&1){h=16;break}MTa(o)}c=f[a>>2]|0;d=nD(a)|0;f[n>>2]=d;e=c+80|0;g=f[e>>2]|0;if(g>>>0<(f[c+84>>2]|0)>>>0){zQa(g,d);f[e>>2]=(f[e>>2]|0)+16}else RF(c+76|0,n);f[n>>2]=k;d=kY(l,n)|0;e=nq(a)|0;g=d+4|0;h=d+8|0;c=0;while(1){if((c|0)==(e|0))break;i=nq(a)|0;f[n>>2]=i;j=f[g>>2]|0;if(j>>>0<(f[h>>2]|0)>>>0){f[j>>2]=i;f[g>>2]=j+4}else LL(d,n);c=c+1|0}k=k+1|0}if((h|0)==12){u=p;return}else if((h|0)==16){c=Ia()|0;MTa(o);break}}while(0);Ua(c|0)}function Rk(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+224|0;j=s+216|0;k=s+128|0;l=s+212|0;m=s+208|0;n=s+200|0;o=s;p=s+192|0;q=s+188|0;t=s+176|0;i=s+168|0;r=s+160|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[t+(c<<2)>>2]=0;c=c+1|0}f[i+4>>2]=0;f[i>>2]=49564;g=b[h+8+3>>0]|0;c=g<<24>>24<0;d=c?f[h>>2]|0:h;g=d+((c?f[h+4>>2]|0:g&255)<<2)|0;h=k+32|0;c=0;a:while(1){if(!((c|0)!=2&d>>>0>>0)){d=17;break}f[m>>2]=d;x=0;e=qa(f[(f[i>>2]|0)+12>>2]|0,i|0,j|0,d|0,g|0,m|0,k|0,h|0,l|0)|0;c=x;x=0;if(c&1){d=15;break}if((e|0)==2?1:(f[m>>2]|0)==(d|0)){d=9;break}c=k;while(1){if(c>>>0>=(f[l>>2]|0)>>>0)break;x=0;ua(82,t|0,b[c>>0]|0);d=x;x=0;if(d&1){d=14;break a}c=c+1|0}d=f[m>>2]|0;c=e}if((d|0)==9){x=0;ta(514,120820);x=0;c=Ia()|0;d=16}else if((d|0)==14){c=Ia()|0;d=16}else if((d|0)==15){c=Ia()|0;d=16}else if((d|0)==17){d=(b[t+11>>0]|0)<0?f[t>>2]|0:t;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}g=Jbb(d)|0;f[r+4>>2]=0;f[r>>2]=49612;g=d+(dV(g)|0)|0;h=g;i=o+128|0;c=0;b:while(1){if(!((c|0)!=2&d>>>0>>0)){d=30;break}f[q>>2]=d;x=0;e=qa(f[(f[r>>2]|0)+16>>2]|0,r|0,n|0,d|0,((h-d|0)>32?d+32|0:g)|0,q|0,o|0,i|0,p|0)|0;m=x;x=0;if(m&1){d=32;break}if((e|0)==2?1:(f[q>>2]|0)==(d|0)){d=25;break}c=o;while(1){if(c>>>0>=(f[p>>2]|0)>>>0)break;x=0;ua(3189,a|0,f[c>>2]|0);m=x;x=0;if(m&1){d=31;break b}c=c+4|0}d=f[q>>2]|0;c=e}if((d|0)==25){x=0;ta(514,120820);x=0;c=Ia()|0}else if((d|0)==30){MTa(t);u=s;return}else if((d|0)==31)c=Ia()|0;else if((d|0)==32)c=Ia()|0;oTa(a)}MTa(t);Ua(c|0)}function Sk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=(e|0)==1;do if(!(g2a(b,f[33256]|0)|0)){if(g2a(b,f[33255]|0)|0){g=i?1:(e|0)==3?51:64;break}if(g2a(b,f[33241]|0)|0){g=i?2:(e|0)==3?52:65;break}if(!(g2a(b,f[33253]|0)|0))if(!(g2a(b,f[33254]|0)|0))if(!(g2a(b,f[33252]|0)|0))if(!(g2a(b,f[33239]|0)|0))if(!(g2a(b,f[33240]|0)|0))if(!(g2a(b,f[33238]|0)|0)){if(g2a(b,f[33245]|0)|0){g=i?15:(e|0)==3?57:70;break}if(g2a(b,f[33244]|0)|0){g=i?16:(e|0)==3?58:71;break}if(pQa(a,c)|0)c=1;else c=pQa(a,d)|0;if(g2a(b,f[33243]|0)|0)if(i){g=c?4:3;break}else{g=(e|0)==3?53:66;break}if(g2a(b,f[33242]|0)|0){u=j;return (i&c?6:5)|0}if(g2a(b,f[33248]|0)|0)if(i){g=c?24:23;break}else{g=(e|0)==3?62:75;break}if(g2a(b,f[33246]|0)|0)if(i){g=c?22:21;break}else{g=(e|0)==3?61:74;break}if(g2a(b,f[33247]|0)|0)if(i){g=c?20:19;break}else{g=(e|0)==3?60:73;break}if(g2a(b,f[33249]|0)|0)if(i){g=c?18:17;break}else{g=(e|0)==3?59:72;break}else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,64693,j7a(64693)|0);x=0;ua(66,h|0,b|0);i=x;x=0;if(i&1){j=Ia()|0;MTa(h);Ua(j|0)}else{MTa(h);hb()}}}else g=11;else g=12;else g=10;else g=9;else g=8;else g=7}else g=i?0:(e|0)==3?50:63;while(0);u=j;return g|0}function Tk(a){a=a|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;c=t;d=f[a>>2]|0;if(!(b[d>>0]|0)){b[d>>0]=1;r=f[f[a+4>>2]>>2]|0;L1a(c,f[33042]|0);f[s>>2]=f[c>>2];PF(r,s,1)|0;r=f[a+8>>2]|0;q=W7a(132168)|0;l=r+4|0;m=f[l>>2]|0;o=(m|0)==0;a:do if(!o){j=m+-1|0;k=(j&m|0)==0;if(!k)if(q>>>0>>0)d=q;else d=(q>>>0)%(m>>>0)|0;else d=j&q;h=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!h)p=17;else{c=f[33042]|0;do{h=f[h>>2]|0;if(!h){p=17;break a}i=f[h+4>>2]|0;if((i|0)!=(q|0)){if(!k){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&j;if((i|0)!=(d|0)){p=17;break a}}}while(!(CXa(f[h+8>>2]|0,c)|0))}}else{d=0;p=17}while(0);if((p|0)==17){W6(s,r,q,132168);j=r+12|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[r+16>>2];do if(o|g*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(84,r|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[l>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}else i=m;while(0);c=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!c){c=r+8|0;h=f[s>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[r>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=s;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[r>>2]|0)+(c<<2)>>2]=h;c=s}}else{r=f[s>>2]|0;f[r>>2]=f[c>>2];f[c>>2]=r;c=s}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;c=f[33042]|0}cQ(f[a+12>>2]|0,c,0)}u=t;return}function Uk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;a:do switch(b-a>>2|0){case 1:case 0:{c=1;break}case 2:{e=b+-4|0;c=f[e>>2]|0;d=f[a>>2]|0;if(X2(+p[c+16>>3],+p[d+16>>3])|0){f[a>>2]=c;f[e>>2]=d;c=1}else c=1;break}case 3:{qs(a,a+4|0,b+-4|0)|0;c=1;break}case 4:{Jt(a,a+4|0,a+8|0,b+-4|0)|0;c=1;break}case 5:{er(a,a+4|0,a+8|0,a+12|0,b+-4|0)|0;c=1;break}default:{d=a+8|0;qs(a,a+4|0,d)|0;j=a+12|0;c=0;while(1){if((j|0)==(b|0)){c=1;break a}i=f[j>>2]|0;h=i+16|0;if(X2(+p[h>>3],+p[(f[d>>2]|0)+16>>3])|0){f[j>>2]=0;e=j;while(1){k=f[d>>2]|0;f[d>>2]=0;g=f[e>>2]|0;f[e>>2]=k;if(g|0){zSa(g);Cbb(g)}if((d|0)==(a|0)){d=a;break}e=d+-4|0;if(X2(+p[h>>3],+p[(f[e>>2]|0)+16>>3])|0){k=d;d=e;e=k}else break}e=f[d>>2]|0;f[d>>2]=i;if(e|0){zSa(e);Cbb(e)}c=c+1|0;if((c|0)==8)break}d=j;j=j+4|0}c=(j+4|0)==(b|0)}}while(0);return c|0}function Vk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=u;u=u+16|0;l=s+4|0;m=s;n=b+4|0;o=a+16|0;p=a+20|0;q=b+12|0;r=a+28|0;j=a+32|0;k=a+24|0;c=f[b>>2]|0;a:while(1){if((c|0)==(n|0)){b=3;break}d=f[c+16>>2]|0;b=c+20|0;b:do switch(f[c+28>>2]|0){case 0:break;case 1:{b=f[(f[b>>2]|0)+16>>2]|0;if(b|0){f[d+8>>2]=f[b+8>>2];break b}if(!(KVa(f[p>>2]|0,f[d+8>>2]|0)|0)){h=KSa(f[d+4>>2]|0,f[o>>2]|0)|0;f[l>>2]=d;i=i_(q,l)|0;f[f[i>>2]>>2]=h}break}default:{i=GUa(a,f[d+4>>2]|0)|0;h=d+8|0;g=f[h>>2]|0;f[h>>2]=i;_0a(l,f[o>>2]|0);h=c+24|0;d=f[b>>2]|0;while(1){if((d|0)==(h|0))break;b=f[d+16>>2]|0;if(!b){b=f[p>>2]|0;if(KVa(b,g)|0){b=s9(b,g)|0;b=Qya(l,i,SKa(f[l>>2]|0,g,b)|0)|0;f[m>>2]=b;e=f[r>>2]|0;if(e>>>0<(f[j>>2]|0)>>>0){f[e>>2]=b;f[r>>2]=(f[r>>2]|0)+4}else LL(k,m)}}else{b=b+12|0;e=f[b>>2]|0;f[m>>2]=e;e=sBa(f[l>>2]|0,i,e)|0;f[b>>2]=e;if(rfa(q,f[m>>2]|0)|0){t=i_(q,m)|0;if((f[t>>2]|0)!=(b|0)){b=15;break a}t=i_(q,m)|0;f[t>>2]=e+12}}b=f[d+4>>2]|0;if(!b)while(1){b=f[d+8>>2]|0;if((f[b>>2]|0)==(d|0))break;else d=b}else while(1){d=f[b>>2]|0;if(!d)break;else b=d}d=b}}}while(0);b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((b|0)==3){u=s;return}else if((b|0)==15)Ca(72323,72361,119,72385)}function Wk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){kN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(646,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)xIa(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function Xk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){kN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(647,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)xIa(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function Yk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+64|0;j=l+40|0;g=l+24|0;h=l;k=l+12|0;a:do if((c-a|0)>1?(i=d+4|0,e=f[i>>2]|0,(f[d>>2]|0)!=(e|0)):0){b:do switch(b[a>>0]|0){case 67:{switch(b[a+1>>0]|0){case 53:case 51:case 50:case 49:break;default:break a}ji(g,e+-24|0);RY(j,g);c=f[i>>2]|0;if(c>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,j|0);k=x;x=0;if(k&1){a=Ia()|0;OJa(j);MTa(g);break b}}else{CY(c,j);f[i>>2]=(f[i>>2]|0)+24}OJa(j);MTa(g);b[d+60>>0]=1;a=a+2|0;break a}case 68:{switch(b[a+1>>0]|0){case 53:case 50:case 49:case 48:break;default:break a}ji(k,e+-24|0);x=0;ja(101,k|0,0,123344)|0;g=x;x=0;do if(g&1)a=Ia()|0;else{f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];c=0;while(1){if((c|0)==3)break;f[k+(c<<2)>>2]=0;c=c+1|0}RY(j,h);c=f[i>>2]|0;if(c>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,j|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(j);MTa(h);break}}else{CY(c,j);f[i>>2]=(f[i>>2]|0)+24}OJa(j);MTa(h);MTa(k);b[d+60>>0]=1;a=a+2|0;break a}while(0);MTa(k);break}default:break a}while(0);Ua(a|0)}while(0);u=l;return a|0}function Zk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){gW(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(1306,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)tna(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function _k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+48|0;j=o;k=o+44|0;p=o+32|0;l=o+28|0;m=o+24|0;f[k>>2]=c;f[p>>2]=0;n=p+4|0;f[n>>2]=0;e=p+8|0;f[e>>2]=0;x=0;ua(104,p|0,k|0);i=x;x=0;do if(!(i&1)){while(1){if(!(Jbb(f[c+16>>2]|0)|0))break;c=c+12|0;x=0;d=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}if(!(zab(f[f[d>>2]>>2]|0)|0))break;x=0;c=ia(75,c|0,0)|0;i=x;x=0;if(i&1){g=12;break}x=0;c=ga(217,f[c>>2]|0)|0;i=x;x=0;if(i&1){g=12;break}f[k>>2]=c;d=f[n>>2]|0;if((d|0)==(f[e>>2]|0)){x=0;ua(104,p|0,k|0);i=x;x=0;if(i&1){g=12;break}}else{f[d>>2]=c;f[n>>2]=(f[n>>2]|0)+4}}if((g|0)==12){c=Ia()|0;g=14;break}a1a(a);d=f[n>>2]|0;i=f[d+-4>>2]|0;c=d;a:while(1){if((c|0)==(f[p>>2]|0)){g=29;break}h=d+-4|0;d=f[h>>2]|0;f[k>>2]=d;f[n>>2]=h;b:do if(K0a(a)|0){f[l>>2]=f[d+8>>2];f[j>>2]=f[l>>2];ANa(a,j)}else{g=d+12|0;e=d+16|0;c=0;while(1){if(c>>>0>=(Jbb(f[e>>2]|0)|0)>>>0)break b;if(!((c|0)==0&(i|0)!=(d|0))){x=0;h=ia(75,g|0,c|0)|0;q=x;x=0;if(q&1){g=27;break a}x=0;va(92,j|0,b|0,f[h>>2]|0);q=x;x=0;if(q&1){g=27;break a}f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];f[a+16>>2]=f[j+16>>2];if(K0a(a)|0)break}c=c+1|0}f[m>>2]=f[d+8>>2];f[j>>2]=f[m>>2];ANa(a,j)}while(0);d=f[n>>2]|0;c=d}if((g|0)==27){c=Ia()|0;break}else if((g|0)==29){zSa(p);u=o;return}}else{c=Ia()|0;g=14}while(0);zSa(p);Ua(c|0)}function $k(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){kN(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(2832,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)xIa(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function al(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+16|0;c=o+4|0;p=o+8|0;e=o;f[c>>2]=b;a:do if(Qab(f[b+8>>2]|0)|0){Cba(p,a,c);d=f[p>>2]|0;f[d+8>>2]=b;j=d;x=0;c=ga(289,a|0)|0;m=x;x=0;b:do if(!(m&1)?(f[d+12>>2]=c,f[e>>2]=f[b+8>>2],x=0,f[n>>2]=f[e>>2],va(129,a|0,n|0,c|0),m=x,x=0,!(m&1)):0){h=a+100|0;f[n>>2]=j;c=n+4|0;d=f[p+4>>2]|0;f[c>>2]=d;if(d|0){m=d+4|0;f[m>>2]=(f[m>>2]|0)+1}i=a+104|0;e=f[i>>2]|0;g=a+108|0;do if(e>>>0>=(f[g>>2]|0)>>>0){x=0;ua(1457,h|0,n|0);m=x;x=0;if(m&1){p=Ia()|0;Aoa(f[c>>2]|0);c=p;break b}else{c=f[c>>2]|0;break}}else{f[e>>2]=j;f[e+4>>2]=d;f[n>>2]=0;f[c>>2]=0;f[i>>2]=e+8;c=0}while(0);Aoa(c);Aoa(d);l=i;k=15;break a}else k=12;while(0);if((k|0)==12){c=Ia()|0;d=f[p+4>>2]|0}Aoa(d)}else{g=a+108|0;h=a+100|0;l=a+104|0;k=15}while(0);do if((k|0)==15){j=b+12|0;m=n+4|0;k=p+4|0;c=Jbb(f[b+16>>2]|0)|0;while(1){i=c+-1|0;if((c|0)<=0){k=17;break}X9(p,a,ODa(j,i)|0);c=f[p>>2]|0;f[n>>2]=c;d=f[k>>2]|0;f[m>>2]=d;f[p>>2]=0;f[k>>2]=0;e=f[l>>2]|0;if(e>>>0<(f[g>>2]|0)>>>0){f[e>>2]=c;f[e+4>>2]=d;f[n>>2]=0;f[m>>2]=0;f[l>>2]=e+8;c=0}else{x=0;ua(1457,h|0,n|0);b=x;x=0;if(b&1){k=23;break}c=f[m>>2]|0}Aoa(c);Aoa(0);c=i}if((k|0)==17){u=o;return}else if((k|0)==23){c=Ia()|0;Aoa(f[m>>2]|0);Aoa(0);break}}while(0);Ua(c|0)}function bl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+48|0;c=h+40|0;g=h+28|0;i=h+16|0;d=h+12|0;j=h;e=a+84|0;a:do if(!(f[e>>2]|0)){d=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;j=j7a(92455)|0;x=0;va(87,g|0,92455,j|0);j=x;x=0;if(!(j&1)){x=0;wa(138,d|0,g|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;MTa(g);if(!c)break}else a=Ia()|0;La(d|0)}else{do if(!(qRa(b)|0)){a=AR(lF(b)|0)|0;if(a>>>0>=(kQa(f[e>>2]|0)|0)>>>0){d=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=j7a(92505)|0;x=0;va(87,j|0,92505,i|0);i=x;x=0;if(!(i&1)){x=0;wa(138,d|0,j|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;MTa(j);if(!c)break a}else a=Ia()|0;La(d|0);break a}}else{a=lF(b)|0;j=f[e>>2]|0;L1a(c,a);if(P5(j+56|0,c)|0){b=f[e>>2]|0;L1a(d,a);f[c>>2]=f[d>>2];a=UI(b,c)|0;break}d=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;j=j7a(92490)|0;x=0;va(87,i|0,92490,j|0);j=x;x=0;if(!(j&1)){x=0;wa(138,d|0,i|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;MTa(i);if(!c)break a}else a=Ia()|0;La(d|0);break a}while(0);u=h;return a|0}while(0);Ua(a|0);return 0}function cl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+208|0;m=k+192|0;l=k+32|0;e=k+24|0;h=k+12|0;i=k;UQa(m,(b[a>>0]|0)!=0);x=0;wa(130,l|0,c|0,m|0,(b[a>>0]|0)!=0|0);g=x;x=0;if(g&1)c=Ia()|0;else{h_a(l,(b[a+2>>0]|0)!=0);g=a+16|0;c=b[g+11>>0]|0;if(c<<24>>24<0)c=f[a+20>>2]|0;else c=c&255;do if(c){x=0;ta(477,e|0);c=x;x=0;if(c&1){c=Ia()|0;break}e=f[e>>2]|0;x=0;va(124,e|0,g|0,16);j=x;x=0;if(!(j&1)?(x=0,ua(88,h|0,a+28|0),j=x,x=0,!(j&1)):0){x=0;va(125,l|0,e|0,h|0);j=x;x=0;if(j&1){c=Ia()|0;MTa(h);j=31;break}else{MTa(h);j=15;break}}else j=13}else{e=0;j=15}while(0);a:do if((j|0)==15){g=a+4|0;c=b[g+11>>0]|0;if(c<<24>>24<0)c=f[a+8>>2]|0;else c=c&255;do if(c|0){x=0;ua(88,i|0,g|0);j=x;x=0;if(j&1){j=13;break a}x=0;ua(1368,l|0,i|0);j=x;x=0;if(j&1){c=Ia()|0;MTa(i);j=31;break a}else{MTa(i);break}}while(0);x=0;ta(478,l|0);j=x;x=0;if(!(j&1)?(x=0,va(126,f[m>>2]|0,f[m+4>>2]|0,d|0),j=x,x=0,!(j&1)):0){c=e;if(e|0){x=0;g=ga(284,c+4|0)|0;j=x;x=0;if(j&1){j=13;break}if((g|0)==0?(j=e+(f[(f[e>>2]|0)+-12>>2]|0)|0,x=0,ua(100,j|0,f[j+16>>2]|4|0),j=x,x=0,j&1):0){j=13;break}oc[f[(f[e>>2]|0)+4>>2]&1023](c)}hZ(l);zSa(m);u=k;return}else j=13}while(0);if((j|0)==13){c=Ia()|0;j=31}if((j|0)==31)if(e)oc[f[(f[e>>2]|0)+4>>2]&1023](e);hZ(l)}zSa(m);Ua(c|0)}function dl(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=u;u=u+112|0;e=h+80|0;j=h+40|0;i=h+20|0;g=h;jza();yha(j);b[j+1>>0]=1;x=0;a=ia(65,j|0,a|0)|0;d=x;x=0;do if(d&1)k=4;else{if(b[135320]|0?(x=0,ia(62,134176,52216)|0,d=x,x=0,d&1):0){k=4;break}x=0;ta(443,i|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;d=ia(66,i|0,a|0)|0;a=x;x=0;a:do if(!(a&1)?(x=0,c=ga(212,232)|0,a=x,x=0,!(a&1)):0){x=0;ta(444,c|0);a=x;x=0;if(a&1){a=Ia()|0;Cbb(c);break}f[32970]=c;a=pb(0)|0;do if(!(a&65535)){x=0;va(85,e|0,a>>>16|0,0);c=x;x=0;if(c&1){a=Ia()|0;break a}a=f[32970]|0;c=f[e>>2]|0;f[a+92>>2]=c;do if(b[j>>0]|0){x=0;va(85,e|0,65535,0);c=x;x=0;if(c&1){a=Ia()|0;break a}else{a=f[32970]|0;c=f[e>>2]|0;break}}else f[e>>2]=c;while(0);f[a+96>>2]=c;if(b[135320]|0?(x=0,ia(62,134176,52344)|0,c=x,x=0,c&1):0)break;x=0;a=ga(212,236)|0;c=x;x=0;if(!(c&1)?(c=f[32970]|0,f[g>>2]=0,f[g+4>>2]=0,f[g+8>>2]=0,f[g+12>>2]=0,f[g+16>>2]=0,hFa(g),f[e>>2]=f[g>>2],f[e+4>>2]=f[g+4>>2],f[e+8>>2]=f[g+8>>2],f[e+12>>2]=f[g+12>>2],f[e+16>>2]=f[g+16>>2],it(a,c,j,e),f[32966]=a,x=0,ua(89,a|0,d|0),g=x,x=0,!(g&1)):0){EUa(i);kja(j);u=h;return}}else{x=0;ia(62,134176,52276)|0;h=x;x=0;if(!(h&1)){x=0;ta(440,1);x=0}}while(0);a=Ia()|0}else k=13;while(0);if((k|0)==13)a=Ia()|0;EUa(i)}}while(0);if((k|0)==4)a=Ia()|0;kja(j);Ua(a|0)}function el(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;l=u;u=u+112|0;g=l+88|0;d=l+64|0;i=l+40|0;j=l+16|0;k=l;Ou(d,b,f[c+16>>2]|0);if(!(K0a(d)|0)){Ou(i,b,f[c+20>>2]|0);if(!(K0a(i)|0)){Ou(j,b,f[c+24>>2]|0);if(K0a(j)|0){f[a>>2]=f[j>>2];f[a+4>>2]=f[j+4>>2];f[a+8>>2]=f[j+8>>2];f[a+12>>2]=f[j+12>>2];f[a+16>>2]=f[j+16>>2];f[a+20>>2]=f[j+20>>2]}else{e=b+4|0;b=f[e>>2]|0;f[g>>2]=f[d>>2];f[g+4>>2]=f[d+4>>2];f[g+8>>2]=f[d+8>>2];f[g+12>>2]=f[d+12>>2];b=Du(b,c,g)|0;d=c+8|0;KA(k,f[e>>2]|0,b,h[d>>0]|0,f[c+4>>2]|0);if(yda(k,i)|0){c=f[e>>2]|0;i=h[d>>0]|0;f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[g+12>>2]=f[j+12>>2];ow(c,b,i,g)}f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];wAa(a,g)}}else{f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];f[a+12>>2]=f[i+12>>2];f[a+16>>2]=f[i+16>>2];f[a+20>>2]=f[i+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=l;return}function fl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+48|0;k=p;l=p+44|0;q=p+32|0;m=p+28|0;n=p+24|0;f[l>>2]=c;f[q>>2]=0;o=q+4|0;f[o>>2]=0;e=q+8|0;f[e>>2]=0;x=0;ua(104,q|0,l|0);j=x;x=0;do if(!(j&1)){while(1){if(!(Jbb(f[c+16>>2]|0)|0))break;x=0;d=ia(75,c+12|0,0)|0;j=x;x=0;if(j&1){g=12;break}if(!(zab(f[f[d>>2]>>2]|0)|0))break;x=0;c=ia(75,c+12|0,0)|0;j=x;x=0;if(j&1){g=12;break}x=0;c=ga(217,f[c>>2]|0)|0;j=x;x=0;if(j&1){g=12;break}f[l>>2]=c;d=f[o>>2]|0;if((d|0)==(f[e>>2]|0)){x=0;ua(104,q|0,l|0);j=x;x=0;if(j&1){g=12;break}}else{f[d>>2]=c;f[o>>2]=(f[o>>2]|0)+4}}if((g|0)==12){c=Ia()|0;g=14;break}a1a(a);d=f[o>>2]|0;j=f[d+-4>>2]|0;c=d;a:while(1){if((c|0)==(f[q>>2]|0)){g=29;break}i=d+-4|0;e=f[i>>2]|0;f[l>>2]=e;f[o>>2]=i;b:do if(K0a(a)|0){f[m>>2]=f[e+8>>2];f[k>>2]=f[m>>2];ANa(a,k)}else{g=e+12|0;d=e+16|0;h=(j|0)!=(e|0);c=0;while(1){if(c>>>0>=(Jbb(f[d>>2]|0)|0)>>>0)break b;if(!((c|0)==0&h)){x=0;i=ia(75,g|0,c|0)|0;r=x;x=0;if(r&1){g=27;break a}x=0;va(155,k|0,b|0,f[i>>2]|0);r=x;x=0;if(r&1){g=27;break a}f[a>>2]=f[k>>2];f[a+4>>2]=f[k+4>>2];f[a+8>>2]=f[k+8>>2];f[a+12>>2]=f[k+12>>2];f[a+16>>2]=f[k+16>>2];if(K0a(a)|0)break}c=c+1|0}f[n>>2]=f[e+8>>2];f[k>>2]=f[n>>2];ANa(a,k)}while(0);d=f[o>>2]|0;c=d}if((g|0)==27){c=Ia()|0;break}else if((g|0)==29){zSa(q);u=p;return}}else{c=Ia()|0;g=14}while(0);zSa(q);Ua(c|0)}function gl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;a:do if((c-a|0)>1){e=b[a>>0]|0;b:do switch(e<<24>>24){case 100:case 111:{if((b[a+1>>0]|0)==110){g=a+2|0;if(e<<24>>24!=111){i=gU(g,c,d)|0;a=(i|0)==(g|0)?a:i;break a}e=Hc(g,c,d)|0;if((e|0)==(g|0))break a;a=jg(e,c,d)|0;if((a|0)==(e|0)){a=e;break a}c=d+4|0;e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(i,e+-24|0);g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;d=e+-1|0;OJa(g+(d*24|0)|0);e=d}f[c>>2]=g+-24;d=b[i+11>>0]|0;c=d<<24>>24<0;x=0;ja(97,g+-48|0,(c?f[i>>2]|0:i)|0,(c?f[i+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(i);break b}else{MTa(i);break a}}else h=15;break}default:h=15}while(0);do if((h|0)==15){e=yw(a,c,d)|0;if((e|0)!=(a|0)){a=e;break a}e=Hc(a,c,d)|0;if((e|0)==(a|0))break a;a=jg(e,c,d)|0;if((a|0)==(e|0)){a=e;break a}c=d+4|0;e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(i,e+-24|0);g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;d=e+-1|0;OJa(g+(d*24|0)|0);e=d}f[c>>2]=g+-24;d=b[i+11>>0]|0;h=d<<24>>24<0;x=0;ja(97,g+-48|0,(h?f[i>>2]|0:i)|0,(h?f[i+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(i);break}else{MTa(i);break a}}while(0);Ua(a|0)}while(0);u=j;return a|0}function hl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;r=W7a(c)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){l=i+-1|0;k=(l&i|0)==0;if(!k)if(r>>>0>>0)e=r;else e=(r>>>0)%(i>>>0)|0;else e=l&r;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)o=16;else{j=f[c>>2]|0;do{d=f[d>>2]|0;if(!d){o=16;break a}c=f[d+4>>2]|0;if((c|0)!=(r|0)){if(!k){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&l;if((c|0)!=(e|0)){o=16;break a}}}while(!(g2a(f[d+8>>2]|0,j)|0))}}else{e=0;o=16}while(0);if((o|0)==16){$S(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(712,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&r;break}if(r>>>0>>0){i=d;e=r;break}i=d;e=(r>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[s>>2]|0;f[s>>2]=0;if(e|0){if(b[s+8>>0]|0)xMa(e+8|0);Cbb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){r=a+8|0;d=f[s>>2]|0;f[d>>2]=f[r>>2];f[r>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=r;e=f[d>>2]|0;if(!e)e=s;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=s}}else{a=f[s>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=s;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=t;return d+12|0}function il(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+144|0;d=l+120|0;e=l+96|0;g=l+72|0;h=l+32|0;i=l;j=l+56|0;k=l+16|0;Ou(e,b,f[c+12>>2]|0);if(!(K0a(e)|0)){Ou(g,b,f[c+16>>2]|0);if(!(K0a(g)|0)){Ou(h,b,f[c+20>>2]|0);if(!(K0a(h)|0)){h=c+24|0;c=Ixa(f[h>>2]|0)|0;b=b+4|0;m=f[b>>2]|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];e=tM(m,d,c)|0;KA(i,f[b>>2]|0,e,c,f[h>>2]|0);if(t_a(i,g)|0){t$a(j,1);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];wAa(a,d)}else{t$a(k,0);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];wAa(a,d)}}else{f[a>>2]=f[h>>2];f[a+4>>2]=f[h+4>>2];f[a+8>>2]=f[h+8>>2];f[a+12>>2]=f[h+12>>2];f[a+16>>2]=f[h+16>>2];f[a+20>>2]=f[h+20>>2]}}else{f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}u=l;return}function jl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0;r=u;u=u+32|0;t=r+16|0;s=r;d=f[c+28>>2]|0;a:do if(xba(a,d)|0){k=c+12|0;if((Jbb(f[k>>2]|0)|0)>>>0>=4294967292)Ca(107203,106511,502,107235);if(b[c+20>>0]|0)Ca(107246,106511,503,107235);UN(t,a,d);e=c+8|0;d=b[e>>0]|0;b[s>>0]=4;b[e>>0]=b[((d&255)>4?s:e)>>0]|0;e=c+16|0;l=Jbb(f[e>>2]|0)|0;x=0;ja(40,e|0,(l>>>0<4?l:4)|0,0)|0;l=x;x=0;b:do if(l&1)d=Ia()|0;else{f[c+32>>2]=1;c:do if(d<<24>>24==8){x=0;va(159,s|0,a|0,1);l=x;x=0;if(l&1)d=Ia()|0;else{l=a+44|0;d=f[l>>2]|0;x=0;e=ga(320,s|0)|0;v=x;x=0;if(((!(v&1)?(g=c+24|0,x=0,q=ja(45,d|0,e|0,f[g>>2]|0)|0,v=x,x=0,!(v&1)):0)?(h=f[l>>2]|0,x=0,i=ga(320,s|0)|0,v=x,x=0,!(v&1)):0)?(x=0,j=ja(46,f[h>>2]|0,i|0,1)|0,v=x,x=0,!(v&1)):0){f[g>>2]=j;g=f[l>>2]|0;d=(Jbb(f[k>>2]|0)|0)+4|0;x=0;e=ga(320,s|0)|0;v=x;x=0;do if(((!(v&1)?(x=0,m=ja(46,f[g>>2]|0,e|0,1)|0,v=x,x=0,!(v&1)):0)?(n=f[l>>2]|0,x=0,o=ga(320,t|0)|0,v=x,x=0,!(v&1)):0)?(x=0,p=ja(46,f[n>>2]|0,o|0,1)|0,v=x,x=0,!(v&1)):0){x=0;d=pa(7,f[g>>2]|0,4,d|0,1,m|0,p|0,1)|0;v=x;x=0;if(v&1)break;x=0;d=ka(30,f[l>>2]|0,q|0,c|0,d|0)|0;v=x;x=0;if(v&1)break;GVa(f[a+16>>2]|0,d)|0;MCa(s);break c}while(0);d=Ia()|0}else d=Ia()|0;MCa(s)}break b}while(0);MCa(t);break a}while(0);MCa(t);Ua(d|0)}while(0);u=r;return}function kl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){gW(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(645,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)XCa(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function ll(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0;s=u;u=u+112|0;o=s+104|0;w=s+88|0;t=s+72|0;r=s+68|0;v=s+56|0;d=s+52|0;q=s+32|0;n=s+24|0;e=s+16|0;l=s+8|0;m=s+4|0;p=s;c=f[b+32>>2]|0;a:do if(xba(a,c)|0){UN(w,a,c);x=0;va(159,t|0,a|0,1);k=x;x=0;if(k&1)c=Ia()|0;else{f[r>>2]=b;f[v>>2]=0;i=v+4|0;f[i>>2]=0;j=v+8|0;f[j>>2]=0;f[d>>2]=0;f[q>>2]=a;f[q+4>>2]=d;f[q+8>>2]=r;f[q+12>>2]=t;f[q+16>>2]=w;k=b+8|0;Q$a(n,k);LUa(e,k);h=n+4|0;g=f[e>>2]|0;e=f[e+4>>2]|0;while(1){if(!(qTa(f[n>>2]|0,f[h>>2]|0,g,e)|0)){d=5;break}x=0;c=ga(256,n|0)|0;d=x;x=0;if(d&1){d=13;break}f[m>>2]=f[c>>2];x=0;f[o>>2]=f[m>>2];c=ia(186,q|0,o|0)|0;d=x;x=0;if(d&1){d=14;break}f[l>>2]=c;d=f[i>>2]|0;if(d>>>0>=(f[j>>2]|0)>>>0){x=0;ua(68,v|0,l|0);d=x;x=0;if(d&1){d=14;break}}else{f[d>>2]=c;f[i>>2]=(f[i>>2]|0)+4}YYa(n)}do if((d|0)==5){x=0;ua(2493,k|0,v|0);n=x;x=0;if(n&1){c=Ia()|0;break}f[p>>2]=f[b+24>>2];x=0;f[o>>2]=f[p>>2];c=ia(186,q|0,o|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}else{f[b+24>>2]=c;GVa(f[a+16>>2]|0,f[r>>2]|0)|0;zSa(v);MCa(t);MCa(w);break a}}else if((d|0)==13){c=Ia()|0;d=15}else if((d|0)==14){c=Ia()|0;d=15}while(0);zSa(v);MCa(t)}MCa(w);Ua(c|0)}while(0);u=s;return}function ml(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+64|0;i=s+48|0;k=s+8|0;l=s;o=c+8|0;d=pg(a,f[o>>2]|0,0)|0;f[o>>2]=d;a:do if(d){e=L_a(d)|0;if(e|0)if(Qab(f[e+4>>2]|0)|0){gLa(e,0);Pia(a,e)|0;break}else Ca(76932,71068,286,76945);e=v$a(d)|0;b:do if(((e|0?(m=e+12|0,g=RCa(m)|0,g=f[g>>2]|0,h=f[g+4>>2]|0,v2a(h)|0):0)?(j=e+4|0,(f[j>>2]|0)==(h|0)):0)?(pg(a,g,0)|0)==0:0){d=f[e+8>>2]|0;do if(Qab(d)|0){f[l>>2]=d;f[i>>2]=f[l>>2];EGa(k,i);b[k+28>>0]=1;f[i>>2]=e;x=0;ua(258,k|0,i|0);l=x;x=0;if(l&1){s=Ia()|0;P_a(k);Ua(s|0)}if(f[k+32>>2]|0){l=(f[k+36>>2]|0)==0;P_a(k);if(l)break;else break b}else{P_a(k);break}}while(0);d=RCa(m)|0;f[d>>2]=0;REa(m);f[j>>2]=0;d=Jbb(f[e+16>>2]|0)|0;if(d>>>0>1){Pia(a,e)|0;break a}if((d|0)==1){c=ODa(m,0)|0;Pia(a,f[c>>2]|0)|0;break a}else{uVa(c);break a}}while(0);e=Z$a(f[o>>2]|0)|0;if((e|0?(p=e+16|0,n=f[p>>2]|0,q=n,n|0):0)?(r=e+4|0,v2a(f[r>>2]|0)|0):0){g=e+12|0;i=f[g>>2]|0;h=f[i+4>>2]|0;d=f[n+4>>2]|0;if((h|0)==5?v2a(d)|0:0){f[o>>2]=q;f[p>>2]=c;f[r>>2]=0;Pia(a,e)|0;break}if((d|0)==5?v2a(h)|0:0){f[o>>2]=i;f[g>>2]=c;f[r>>2]=0;Pia(a,e)|0}}}else uVa(c);while(0);u=s;return}function nl(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,x=0,y=0;t=u;u=u+16|0;r=t+4|0;n=t;m=a+64|0;if(!(f[m>>2]|0))c=-1;else{d=V_(a)|0;s=a+12|0;c=f[s>>2]|0;if(!c){c=r+1|0;f[a+8>>2]=r;f[s>>2]=c;q=a+16|0;f[q>>2]=c}else q=a+16|0;if(d){d=f[q>>2]|0;o=0}else{d=f[q>>2]|0;o=(d-(f[a+8>>2]|0)|0)/2|0;o=o>>>0<4?o:4}do if((c|0)==(d|0)){d=a+8|0;kia(f[d>>2]|0,c+(0-o)|0,o|0)|0;if(b[a+98>>0]|0){c=f[d>>2]|0;c=rN(c+o|0,(f[q>>2]|0)-o-c|0,f[m>>2]|0)|0;if(!c){c=-1;break}p=(f[d>>2]|0)+o|0;f[s>>2]=p;f[q>>2]=p+c;c=d7a(b[p>>0]|0)|0;break}k=a+40|0;j=f[k>>2]|0;l=a+36|0;c=f[l>>2]|0;e=j;g=c;if((j|0)==(c|0)){i=a+32|0;j=k;c=g}else{i=a+32|0;kia(f[i>>2]|0,c|0,e-g|0)|0;j=k;e=f[k>>2]|0;c=f[l>>2]|0}g=f[i>>2]|0;e=g+(e-c)|0;f[l>>2]=e;if((g|0)==(a+44|0))c=8;else c=f[a+52>>2]|0;v=g+c|0;f[k>>2]=v;g=a+60|0;c=(f[g>>2]|0)-o|0;v=v-e|0;h=a+72|0;y=h;x=f[y+4>>2]|0;w=a+80|0;f[w>>2]=f[y>>2];f[w+4>>2]=x;e=rN(e,v>>>0>>0?v:c,f[m>>2]|0)|0;if(!e)c=-1;else{c=f[a+68>>2]|0;if(!c){y=Ea(4)|0;Cab(y);Pa(y|0,39536,426)}x=(f[l>>2]|0)+e|0;f[k>>2]=x;y=f[d>>2]|0;if((lc[f[(f[c>>2]|0)+16>>2]&15](c,h,f[i>>2]|0,x,l,y+o|0,y+(f[g>>2]|0)|0,n)|0)!=3){e=f[n>>2]|0;c=(f[d>>2]|0)+o|0;if((e|0)==(c|0))c=-1;else{f[s>>2]=c;f[q>>2]=e;p=24}}else{c=f[i>>2]|0;p=f[j>>2]|0;f[d>>2]=c;f[s>>2]=c;f[q>>2]=p;p=24}if((p|0)==24)c=d7a(b[c>>0]|0)|0}}else{c=d7a(b[c>>0]|0)|0;d=a+8|0}while(0);if((f[d>>2]|0)==(r|0)){f[d>>2]=0;f[s>>2]=0;f[q>>2]=0}}u=t;return c|0}function ol(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+16|0;h=l+8|0;i=l+4|0;j=l;rXa(a);f[a+24>>2]=c;m=a+28|0;f[m>>2]=0;k=a+32|0;f[k>>2]=0;f[a+36>>2]=0;n=a+40|0;DUa(n);b[a+52>>0]=0;b[a+53>>0]=0;if((m|0)!=(d|0)?(x=0,va(138,m|0,f[d>>2]|0,f[d+4>>2]|0),e=x,x=0,e&1):0)d=Ia()|0;else g=3;do if((g|0)==3){e=f[c+104>>2]|0;d=f[c+100>>2]|0;while(1){if((d|0)==(e|0))break;x=0;ua(1657,a|0,d|0);o=x;x=0;if(o&1){g=9;break}d=d+16|0}if((g|0)==9){d=Ia()|0;break}e=f[c+80>>2]|0;d=f[c+76>>2]|0;while(1){if((d|0)==(e|0))break;x=0;ua(1657,a|0,d|0);o=x;x=0;if(o&1){g=14;break}d=d+16|0}if((g|0)==14){d=Ia()|0;break}a:while(1){o=f[k>>2]|0;d=o;if((o|0)==(f[m>>2]|0)){g=27;break}e=d+-8|0;f[k>>2]=e;do if(!(NP(n,e)|0)){x=0;wa(136,h|0,n|0,e|0,e|0);o=x;x=0;if(o&1){g=21;break a}d=f[d+-4>>2]|0;if(!(f[e>>2]|0)){f[i>>2]=d;f[h>>2]=f[i>>2];d=Xma(c,h)|0;if(!d)break;x=0;ua(1657,a|0,d+36|0);o=x;x=0;if(o&1){g=22;break a}else break}else{f[j>>2]=d;f[h>>2]=f[j>>2];d=gna(c,h)|0;if(!d)break;x=0;ua(1657,a|0,d+8|0);o=x;x=0;if(o&1){g=26;break a}else break}}while(0)}if((g|0)==21){d=Ia()|0;break}else if((g|0)==22){d=Ia()|0;break}else if((g|0)==26){d=Ia()|0;break}else if((g|0)==27){u=l;return}}while(0);FIa(n);zSa(m);P_a(a);Ua(d|0)}function pl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;k=n+12|0;i=n+8|0;l=n;j=a+12|0;do if(b[j>>0]|0){g=DCa(134176,110960)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[k>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,o=x,x=0,!(o&1)):0){OCa(k);Wq(g,e)|0;fu(g)|0;break}o=Ia()|0;OCa(k);Ua(o|0)}while(0);g=dk(a)|0;f[c+28>>2]=g;g=nq(a)|0;do if(b[j>>0]|0){d=zm(DCa(134176,97342)|0,g)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,o=x,x=0,!(o&1)):0){OCa(k);Wq(d,h)|0;fu(d)|0;break}o=Ia()|0;OCa(k);Ua(o|0)}while(0);e=c+8|0;d=0;while(1){if((d|0)==(g|0))break;yg(l,a,nq(a)|0);f[i>>2]=f[l>>2];f[k>>2]=f[i>>2];o8(e,k);d=d+1|0}yg(l,a,nq(a)|0);d=c+24|0;f[d>>2]=f[l>>2];do if(b[j>>0]|0){e=DCa(134176,97352)|0;d=Bfa(e,f[d>>2]|0)|0;dYa(k,d+(f[(f[d>>2]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[k>>2]|0,134880)|0;o=x;x=0;if(!(o&1)?(x=0,m=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,o=x,x=0,!(o&1)):0){OCa(k);Wq(d,m)|0;fu(d)|0;break}o=Ia()|0;OCa(k);Ua(o|0)}while(0);if(f[l+4>>2]|0){o=dk(a)|0;f[c+32>>2]=o}k7a(c);u=n;return}function ql(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){$S(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(715,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)P_a(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function rl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=c;q=f[c>>2]|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while((f[c+8>>2]|0)!=(q|0))}else{d=0;m=16}while(0);if((m|0)==16){VS(r,a,q,l);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(804,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(!(p&1)){c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q;break}i=c;d=(q>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0){if(b[r+8>>0]|0)iNa(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function sl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=f[b>>2]|0;n=b+4|0;e=f[n>>2]|0;g=e;h=d;while(1){if((d|0)==(e|0))break;if(g2a(f[d>>2]|0,f[d+4>>2]|0)|0){o=5;break}else d=d+16|0}if((o|0)==5)Ca(76338,76196,626,76369);d=g-h|0;m=d>>4;a:do if(!d){if(!(qVa(a)|0))Ca(76375,76196,631,76369)}else{jMa(a);if((d|0)==16){d=f[b>>2]|0;if((d|0)==(c|0))break;Cy(c,f[d>>2]|0,f[d+4>>2]|0);break}k=a+116|0;l=kQa(f[k>>2]|0)|0;d=0;j=0;while(1){if((j|0)==(l|0))break a;b:do if(u_a(s9(f[k>>2]|0,j)|0)|0){h=f[b>>2]|0;i=f[n>>2]|0;e=h;while(1){if((e|0)==(i|0))break;g=f[(f[e>>2]|0)+(j<<2)>>2]|0;if(Aab(f[g>>2]|0)|0){o=17;break}else e=e+16|0}if((o|0)==17){o=0;f[(f[c>>2]|0)+(j<<2)>>2]=g;break}e=0;while(1){if((h|0)==(i|0))break b;g=f[(f[h>>2]|0)+(j<<2)>>2]|0;if(e){if((g|0)!=(e|0))break}else{f[(f[c>>2]|0)+(j<<2)>>2]=g;e=g}h=h+16|0}c:do if(!d){d=JXa()|0;h=RK(a,d)|0;g=0;while(1){if((g|0)==(m|0))break c;e=f[(f[b>>2]|0)+(g<<4)+12>>2]|0;if(!(Aab(f[e>>2]|0)|0)){e=Zra(h,g,e)|0;RK(a,e)|0}n6(h,e);g=g+1|0}}while(0);g=RK(a,uHa(d,j)|0)|0;h=f[n>>2]|0;e=f[b>>2]|0;while(1){if((e|0)==(h|0))break;n6(g,wga(a,f[(f[e>>2]|0)+(j<<2)>>2]|0,0)|0);e=e+16|0}f[(f[c>>2]|0)+(j<<2)>>2]=g}while(0);j=j+1|0}}while(0);return}function tl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+272|0;m=o;n=o+256|0;do if(!(b[c>>0]|0)){c=yb(118781)|0;if(c|0?b[c>>0]|0:0)break;c=yb(30704+(a*12|0)|0)|0;if(c|0?b[c>>0]|0:0)break;c=yb(118788)|0;if(c|0?b[c>>0]|0:0)break;c=118793}while(0);d=0;a:while(1){switch(b[c+d>>0]|0){case 47:case 0:break a;default:{}}d=d+1|0;if(d>>>0>=15){d=15;break}}e=b[c>>0]|0;if(e<<24>>24!=46?(b[c+d>>0]|0)==0:0)if(e<<24>>24==67)l=15;else{k=c;l=16}else{c=118793;l=15}if((l|0)==15)if(!(b[c+1>>0]|0))l=18;else{k=c;l=16}b:do if((l|0)==16)if((J8(k,118793)|0)!=0?(J8(k,118801)|0)!=0:0){c=f[33453]|0;if(c|0)do{if(!(J8(k,c+8|0)|0))break b;c=f[c+24>>2]|0}while((c|0)!=0);Sa(133816);c=f[33453]|0;c:do if(c|0){while(1){if(!(J8(k,c+8|0)|0))break;c=f[c+24>>2]|0;if(!c)break c}cb(133816);break b}while(0);d:do if(((f[33434]|0)==0?(g=yb(118807)|0,(g|0)!=0):0)?(b[g>>0]|0)!=0:0){i=254-d|0;j=d+1|0;e=g;while(1){h=RE(e,58)|0;c=b[h>>0]|0;g=h-e+((c<<24>>24!=0)<<31>>31)|0;if(g>>>0>>0){Ku(m|0,e|0,g|0)|0;e=m+g|0;b[e>>0]=47;Ku(e+1|0,k|0,d|0)|0;b[m+(j+g)>>0]=0;e=Ta(m|0,n|0)|0;if(e|0)break;c=b[h>>0]|0}e=h+(c<<24>>24!=0&1)|0;if(!(b[e>>0]|0)){l=41;break d}}c=Kc(28)|0;if(!c){qGa(e,f[n>>2]|0);l=41;break}else{f[c>>2]=e;f[c+4>>2]=f[n>>2];n=c+8|0;Ku(n|0,k|0,d|0)|0;b[n+d>>0]=0;f[c+24>>2]=f[33453];f[33453]=c;break}}else l=41;while(0);if((l|0)==41){c=Kc(28)|0;if(c){f[c>>2]=23936;f[c+4>>2]=20;n=c+8|0;Ku(n|0,k|0,d|0)|0;b[n+d>>0]=0;f[c+24>>2]=f[33453];f[33453]=c}}cb(133816);c=(a|0)==0&(c|0)==0?46152:c}else{c=k;l=18}while(0);do if((l|0)==18){if((a|0)==0?(b[c+1>>0]|0)==46:0){c=46152;break}c=0}while(0);u=o;return c|0}function ul(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;m=l+16|0;h=l+36|0;g=l;k=l+32|0;do if(!(b[(f[a>>2]|0)+60>>0]|0)){d=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;m=j7a(92372)|0;x=0;va(87,h|0,92372,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,d|0,h|0,f[c+28>>2]|0,f[c+32>>2]|0);m=x;x=0;if(m&1)g=1;else{x=0;va(98,d|0,32200,457);x=0;g=0}e=Ia()|0;MTa(h);if(!g)break}else e=Ia()|0;La(d|0)}else{if(!e){e=cWa(f[a+4>>2]|0)|0;t$a(g,0);f[m>>2]=f[g>>2];f[m+4>>2]=f[g+4>>2];f[m+8>>2]=f[g+8>>2];f[m+12>>2]=f[g+12>>2];cqa(e,m)|0}zQa(m,e);h=m+4|0;i=m+8|0;j=m+12|0;while(1){x=0;e=ga(294,c|0)|0;g=x;x=0;if(g&1){g=19;break}if(d>>>0>=e>>>0){g=23;break}x=0;e=ia(69,c|0,d|0)|0;g=x;x=0;if(g&1){g=22;break}x=0;e=ia(168,a|0,e|0)|0;g=x;x=0;if(g&1){g=22;break}f[k>>2]=e;g=f[i>>2]|0;if(g>>>0>=(f[j>>2]|0)>>>0){x=0;ua(68,h|0,k|0);g=x;x=0;if(g&1){g=22;break}}else{f[g>>2]=e;f[i>>2]=(f[i>>2]|0)+4}d=d+1|0}do if((g|0)==19){e=Ia()|0;g=21}else if((g|0)==22)e=Ia()|0;else if((g|0)==23){e=f[a>>2]|0;g=e+80|0;d=f[g>>2]|0;if((d|0)==(f[e+84>>2]|0)){x=0;ua(1876,e+76|0,m|0);c=x;x=0;if(c&1)g=20;else g=27}else{x=0;ua(1875,d|0,m|0);c=x;x=0;if(c&1)g=20;else{f[g>>2]=(f[g>>2]|0)+16;g=27}}if((g|0)==20){e=Ia()|0;g=21;break}else if((g|0)==27){P_a(m);u=l;return}}while(0);P_a(m)}while(0);Ua(e|0)}function vl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;l=f[c>>2]|0;f[s>>2]=l;r=JH(s,4)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){j=i+-1|0;k=(j&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=j&r;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)o=16;else do{c=f[c>>2]|0;if(!c){o=16;break a}e=f[c+4>>2]|0;if((e|0)!=(r|0)){if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&j;if((e|0)!=(d|0)){o=16;break a}}}while((f[c+8>>2]|0)!=(l|0))}else{d=0;o=16}while(0);if((o|0)==16){$S(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(2771,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){c=f[p>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&r;break}if(r>>>0>>0){i=c;d=r;break}i=c;d=(r>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[s>>2]|0;f[s>>2]=0;if(d|0){if(b[s+8>>0]|0)P_a(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){r=a+8|0;c=f[s>>2]|0;f[c>>2]=f[r>>2];f[r>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=r;d=f[c>>2]|0;if(!d)d=s;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=s}}else{a=f[s>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=s;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=t;return c+12|0}function wl(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=u;u=u+32|0;o=q+16|0;r=q+4|0;m=q;n=a+12|0;do if(b[n>>0]|0){e=DCa(134176,96353)|0;dYa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[o>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,l=x,x=0,!(l&1)):0){OCa(o);Wq(e,d)|0;fu(e)|0;break}r=Ia()|0;OCa(o);Ua(r|0)}while(0);i=a+188|0;iR(r,i);j=a+201|0;k=b[j>>0]|0;b[j>>0]=1;d=a+192|0;f[d>>2]=f[i>>2];l=a+200|0;e=a+196|0;while(1){b[l>>0]=1;x=0;h=ia(176,a|0,m|0)|0;g=x;x=0;if(g&1){e=16;break}c=f[m>>2]|0;g=c;if(!c){e=9;break}c=f[d>>2]|0;if((c|0)==(f[e>>2]|0)){x=0;ua(640,i|0,m|0);h=x;x=0;if(h&1){e=16;break}}else{f[c>>2]=g;f[d>>2]=(f[d>>2]|0)+4}}a:do if((e|0)==9){do if(b[n>>0]|0){x=0;c=ia(62,134176,96376)|0;n=x;x=0;if(!(n&1)){dYa(o,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[o>>2]|0,134880)|0;n=x;x=0;if(!(n&1)?(x=0,p=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,n=x,x=0,!(n&1)):0){OCa(o);x=0;ia(79,c|0,p|0)|0;p=x;x=0;if(p&1)break;x=0;ga(227,c|0)|0;p=x;x=0;if(p&1)break;else{e=19;break}}c=Ia()|0;OCa(o);break a}}else e=19;while(0);do if((e|0)==19){f[a+204>>2]=h;b[l>>0]=0;b[j>>0]=k;if((i|0)!=(r|0)?(x=0,va(148,i|0,f[r>>2]|0,f[r+4>>2]|0),p=x,x=0,p&1):0)break;zSa(r);u=q;return}while(0);c=Ia()|0}else if((e|0)==16)c=Ia()|0;while(0);zSa(r);Ua(c|0)}function xl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;t=u;u=u+96|0;v=t+36|0;s=t;m=a+44|0;n=a+16|0;o=a+60|0;p=a+64|0;q=a+48|0;r=a+52|0;k=a+72|0;l=a+76|0;j=0;while(1){b[m>>0]=0;qJa(n,c);if((f[o>>2]|0)!=(f[p>>2]|0)){w=4;break}i=0;while(1){d=f[q>>2]|0;if(i>>>0>=(f[r>>2]|0)-d>>2>>>0)break;d=f[d+(i<<2)>>2]|0;e=c$a(f[d>>2]|0)|0;if(e|0){g=f[e+8>>2]|0;if(!g)uVa(e);else f[d>>2]=g;b[m>>0]=1}i=i+1|0}f[r>>2]=d;e=f[l>>2]|0;d=f[k>>2]|0;while(1){if((d|0)==(e|0))break;i=(nj(a,f[d>>2]|0)|0)&1;b[m>>0]=h[m>>0]|i;d=d+4|0}f[l>>2]=f[k>>2];if(!(b[m>>0]|0))break;else j=1}if((w|0)==4)Ca(91078,91094,445,115765);do if(j){jX(v);d=a+36|0;r=f[d>>2]|0;Jbb(r)|0;x=0;va(94,v+16|0,c|0,r|0);r=x;x=0;if(r&1){d=Ia()|0;uDa(v);break}else{uDa(v);w=21;break}}else{d=a+36|0;w=21}while(0);if((w|0)==21){XIa(v);fXa(v,Jbb(f[d>>2]|0)|0);x=0;ua(1686,v|0,c|0);w=x;x=0;if(!(w&1)?(x=0,ua(1687,v|0,c|0),w=x,x=0,!(w&1)):0){w=a+40|0;yEa(s,fZa(f[w>>2]|0)|0);fXa(s,Jbb(f[d>>2]|0)|0);w=f[w>>2]|0;Jbb(w)|0;b[s+24>>0]=(f[w+28>>2]|0)>0&1;x=0;ua(1688,s|0,c|0);w=x;x=0;do if(!(w&1)){if(b[s+32>>0]|0?(x=0,ta(487,f[c+36>>2]|0),w=x,x=0,w&1):0)break;P_a(s);zha(v);u=t;return}while(0);d=Ia()|0;P_a(s)}else d=Ia()|0;zha(v)}Ua(d|0)}function yl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=L_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=hX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=nRa(f[f[e+20>>2]>>2]|0)|0;if(Qab(f[g+4>>2]|0)|0)Ca(77082,76794,293,77101);else{p=f[g+12>>2]|0;g=oYa(g)|0;f[g+8>>2]=p;uXa(g);SI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;gA(n,fZa(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(1154,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Rxa(a,h)|0:0){d=f[h+8>>2]|0;e=a+44|0;if(rfa(e,d)|0){x=0;wa(71,77111,76794,310,77101);x=0;d=Ia()|0;break a}p=fZa(f[g>>2]|0)|0;x=0;va(113,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=d;bPa(k+4|0,l);x=0;wa(100,j|0,e|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;gTa(k);XYa(l);break}else{gTa(k);XYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);p=a+136|0;f[p>>2]=(f[p>>2]|0)+-4;_7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;_7(n);Ua(d|0)}function zl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;s=t+4|0;m=t;f[m>>2]=c;r=W7a(c)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){l=i+-1|0;k=(l&i|0)==0;if(!k)if(r>>>0>>0)e=r;else e=(r>>>0)%(i>>>0)|0;else e=l&r;d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d)o=16;else{j=f[c>>2]|0;do{d=f[d>>2]|0;if(!d){o=16;break a}c=f[d+4>>2]|0;if((c|0)!=(r|0)){if(!k){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&l;if((c|0)!=(e|0)){o=16;break a}}}while(!(g2a(f[d+8>>2]|0,j)|0))}}else{e=0;o=16}while(0);if((o|0)==16){$S(s,a,r,m);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(q|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(g/h))>>>0;x=0;ua(2592,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(!(q&1)){d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){i=d;e=e&r;break}if(r>>>0>>0){i=d;e=r;break}i=d;e=(r>>>0)%(d>>>0)|0;break}d=Ia()|0;e=f[s>>2]|0;f[s>>2]=0;if(e|0){if(b[s+8>>0]|0)P_a(e+8|0);Cbb(e)}Ua(d|0)}while(0);d=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!d){r=a+8|0;d=f[s>>2]|0;f[d>>2]=f[r>>2];f[r>>2]=d;f[(f[a>>2]|0)+(e<<2)>>2]=r;e=f[d>>2]|0;if(!e)e=s;else{e=f[e+4>>2]|0;c=i+-1|0;if(c&i){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&c;f[(f[a>>2]|0)+(e<<2)>>2]=d;e=s}}else{a=f[s>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=a;e=s;d=a}f[j>>2]=(f[j>>2]|0)+1;f[e>>2]=0}u=t;return d+12|0}function Al(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;k=m+24|0;j=m+20|0;l=m+12|0;h=m+16|0;i=m;do if(b[a+12>>0]|0){e=DCa(134176,110946)|0;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[k>>2]|0,134880)|0;g=x;x=0;if(!(g&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,g=x,x=0,!(g&1)):0){OCa(k);Wq(e,d)|0;fu(e)|0;break}m=Ia()|0;OCa(k);Ua(m|0)}while(0);d=nq(a)|0;f[j>>2]=d;g=a+88|0;e=a+92|0;if(d>>>0<(f[e>>2]|0)-(f[g>>2]|0)>>2>>>0){c=jQa(f[a+4>>2]|0)|0;f[l>>2]=c;i=f[(f[g>>2]|0)+(d<<2)>>2]|0;d=f[a>>2]|0;f[h>>2]=f[i+16>>2];f[k>>2]=f[h>>2];h=MI(d,k)|0;d=kY(a+112|0,j)|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))LL(d,l);else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}f[c+24>>2]=f[i>>2];US(a,c,h);c0a(c)}else{c=sSa(f[a+4>>2]|0)|0;f[k>>2]=c;g=(f[j>>2]|0)-((f[e>>2]|0)-(f[g>>2]|0)>>2)|0;e=a+60|0;d=f[e>>2]|0;do if(g>>>0>=(f[a+64>>2]|0)-d>>2>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,97293,j7a(97293)|0);x=0;ua(1870,a|0,i|0);j=x;x=0;if(j&1){m=Ia()|0;MTa(i);Ua(m|0)}else{MTa(i);d=f[e>>2]|0;break}}while(0);US(a,c,f[d+(g<<2)>>2]|0);f[l>>2]=g;d=kY(a+100|0,l)|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))LL(d,k);else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}c0a(c)}u=m;return c|0}function Bl(a,b){a=+a;b=+b;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;p[s>>3]=a;h=f[s>>2]|0;j=f[s+4>>2]|0;p[s>>3]=b;l=f[s>>2]|0;m=f[s+4>>2]|0;d=JMa(h|0,j|0,52)|0;d=d&2047;k=JMa(l|0,m|0,52)|0;k=k&2047;n=j&-2147483648;g=mMa(l|0,m|0,1)|0;i=I;a:do if(!((g|0)==0&(i|0)==0)?(e=vRa(b)|0,c=I&2147483647,!((d|0)==2047|(c>>>0>2146435072|(c|0)==2146435072&e>>>0>0))):0){c=mMa(h|0,j|0,1)|0;e=I;if(!(e>>>0>i>>>0|(e|0)==(i|0)&c>>>0>g>>>0))return +((c|0)==(g|0)&(e|0)==(i|0)?a*0.0:a);if(!d){c=mMa(h|0,j|0,12)|0;e=I;if((e|0)>-1|(e|0)==-1&c>>>0>4294967295){d=0;do{d=d+-1|0;c=mMa(c|0,e|0,1)|0;e=I}while((e|0)>-1|(e|0)==-1&c>>>0>4294967295)}else d=0;h=mMa(h|0,j|0,1-d|0)|0;g=I}else g=j&1048575|1048576;if(!k){e=mMa(l|0,m|0,12)|0;i=I;if((i|0)>-1|(i|0)==-1&e>>>0>4294967295){c=0;do{c=c+-1|0;e=mMa(e|0,i|0,1)|0;i=I}while((i|0)>-1|(i|0)==-1&e>>>0>4294967295)}else c=0;l=mMa(l|0,m|0,1-c|0)|0;k=c;j=I}else j=m&1048575|1048576;e=SRa(h|0,g|0,l|0,j|0)|0;c=I;i=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;b:do if((d|0)>(k|0)){while(1){if(i){if((e|0)==0&(c|0)==0)break}else{e=h;c=g}h=mMa(e|0,c|0,1)|0;g=I;d=d+-1|0;e=SRa(h|0,g|0,l|0,j|0)|0;c=I;i=(c|0)>-1|(c|0)==-1&e>>>0>4294967295;if((d|0)<=(k|0))break b}b=a*0.0;break a}while(0);if(i){if((e|0)==0&(c|0)==0){b=a*0.0;break}}else{c=g;e=h}if(c>>>0<1048576|(c|0)==1048576&e>>>0<0)do{e=mMa(e|0,c|0,1)|0;c=I;d=d+-1|0}while(c>>>0<1048576|(c|0)==1048576&e>>>0<0);if((d|0)>0){m=BOa(e|0,c|0,0,-1048576)|0;c=I;d=mMa(d|0,0,52)|0;c=c|I;d=m|d}else{d=JMa(e|0,c|0,1-d|0)|0;c=I}f[s>>2]=d;f[s+4>>2]=c|n;b=+p[s>>3]}else o=3;while(0);if((o|0)==3){b=a*b;b=b/b}return +b}function Cl(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+48|0;h=n+24|0;i=n;j=n+12|0;m=TX(a,c)|0;if(!((m|0)==(a|0)|(m|0)==(c|0))?(b[m>>0]|0)==69:0){k=d+11|0;g=b[k>>0]|0;l=d+4|0;a:do if((g<<24>>24<0?f[l>>2]|0:g&255)>>>0<=3){c=e+4|0;g=f[c>>2]|0;if(g>>>0<(f[e+8>>2]|0)>>>0){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;S5(g);f[c>>2]=(f[c>>2]|0)+24;g=c;break}else{TA(e);g=c;break}}else{$H(j,123274,d);x=0;ia(216,j|0,123272)|0;g=x;x=0;do if(g&1)a=Ia()|0;else{f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}RY(h,i);g=e+4|0;c=f[g>>2]|0;if(c>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(3197,e|0,h|0);e=x;x=0;if(e&1){a=Ia()|0;OJa(h);MTa(i);break}}else{CY(c,h);f[g>>2]=(f[g>>2]|0)+24}OJa(h);MTa(i);MTa(j);break a}while(0);MTa(j);Ua(a|0)}while(0);if((b[a>>0]|0)==110){CJ((f[g>>2]|0)+-24|0,45);a=a+1|0}Lq((f[g>>2]|0)+-24|0,a,m);a=b[k>>0]|0;c=a<<24>>24<0;a=c?f[l>>2]|0:a&255;if(a>>>0<4)dI((f[g>>2]|0)+-24|0,c?f[d>>2]|0:d,a)|0;a=m+1|0}u=n;return a|0}function Dl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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;e=a+4|0;a:do if(c){if(c>>>0>1073741823){d=Ea(8)|0;x=0;ua(98,d|0,121961);a=x;x=0;if(a&1){a=Ia()|0;La(d|0);Ua(a|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}u=s8(c<<2)|0;d=f[a>>2]|0;f[a>>2]=u;if(d|0)Cbb(d);f[e>>2]=c;d=0;while(1){if((d|0)==(c|0))break;f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}g=a+8|0;d=f[g>>2]|0;if(d|0){e=f[d+4>>2]|0;t=c+-1|0;u=(t&c|0)==0;if(!u){if(e>>>0>=c>>>0)e=(e>>>0)%(c>>>0)|0}else e=e&t;f[(f[a>>2]|0)+(e<<2)>>2]=g;while(1){s=d;b:while(1){while(1){d=f[s>>2]|0;if(!d)break a;g=f[d+4>>2]|0;if(!u){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0}else g=g&t;if((g|0)==(e|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;n=d+8|0;o=n+11|0;p=d+12|0;r=d;c:while(1){h=f[r>>2]|0;q=h;if(!h){h=0;v=38;break}j=h+8|0;i=b[o>>0]|0;l=i<<24>>24<0;i=i&255;m=l?f[p>>2]|0:i;w=b[j+11>>0]|0;k=w<<24>>24<0;if((m|0)!=((k?f[h+12>>2]|0:w&255)|0)){v=38;break}j=k?f[j>>2]|0:j;d:do if(l){if(FQa(f[n>>2]|0,j,m)|0){h=q;break c}}else{k=n;while(1){if(!i)break d;if((b[k>>0]|0)!=(b[j>>0]|0)){h=q;break c}j=j+1|0;k=k+1|0;i=i+-1|0}}while(0);r=h}if((v|0)==38)v=0;f[s>>2]=h;f[r>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=d}s=d}f[h>>2]=s;e=g}}}else{d=f[a>>2]|0;f[a>>2]=0;if(d|0)Cbb(d);f[e>>2]=0}while(0);return}function El(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+32|0;j=p+20|0;c=p+16|0;h=p+12|0;l=p+8|0;m=p+4|0;o=p;n=a+64|0;g=f[n>>2]|0;d=f[g+36>>2]|0;a:do if((f[g+40>>2]|0)==(d|0)){e=f[g+16>>2]|0;c=f[g+12>>2]|0;while(1){if((c|0)==(e|0))break a;d=f[c>>2]|0;if(!(f[d+12>>2]|0))break;else c=c+4|0}f[h>>2]=f[d>>2];f[j>>2]=f[h>>2];_1(a,j)|0;i=7}else{f[c>>2]=f[f[d>>2]>>2];f[j>>2]=f[c>>2];_1(a,j)|0;i=7}while(0);do if((i|0)==7){do if(b[a+72>>0]|0){c=DCa(134176,87408)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,k=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(j);Wq(c,k)|0;fu(c)|0;break}p=Ia()|0;OCa(j);Ua(p|0)}while(0);g=E$(a,0)|0;K$(a,87467);h=HMa(a)|0;i=a+68|0;d=f[i>>2]|0;j=a+24|0;n4a(l,f[j>>2]|0);Yr(d,f[l>>2]|0)|0;d=f[n>>2]|0;e=f[d+16>>2]|0;c=0;d=f[d+12>>2]|0;while(1){if((d|0)==(e|0))break;if(!(f[(f[d>>2]|0)+12>>2]|0)){l=f[i>>2]|0;n4a(m,c);Yr(l,f[m>>2]|0)|0;Ks(a,f[f[d>>2]>>2]|0);c=c+1|0}d=d+4|0}d=f[n>>2]|0;e=f[d+40>>2]|0;d=f[d+36>>2]|0;while(1){if((d|0)==(e|0))break;n=f[i>>2]|0;n4a(o,c);Yr(n,f[o>>2]|0)|0;Ks(a,f[f[d>>2]>>2]|0);c=c+1|0;d=d+4|0}if((c|0)==(f[j>>2]|0)){BWa(a,h);WA(a,g);break}else Ca(87422,87231,467,87456)}while(0);u=p;return}function Fl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;k=l;a:do switch(b-a>>2|0){case 1:case 0:{d=1;break}case 2:{d=b+-4|0;if(kD(c,d,a)|0){k=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=k;d=1}else d=1;break}case 3:{Ew(a,a+4|0,b+-4|0,c)|0;d=1;break}case 4:{_z(a,a+4|0,a+8|0,b+-4|0,c)|0;d=1;break}case 5:{Fv(a,a+4|0,a+8|0,a+12|0,b+-4|0,c)|0;d=1;break}default:{e=a+8|0;Ew(a,a+4|0,e,c)|0;i=a+12|0;d=0;b:while(1){if((i|0)==(b|0)){d=1;break a}if(kD(c,i,e)|0){g=f[i>>2]|0;f[i>>2]=0;f[k>>2]=g;g=i;while(1){m=f[e>>2]|0;f[e>>2]=0;h=f[g>>2]|0;f[g>>2]=m;if(h|0){OX(h);Cbb(h)}if((e|0)==(a|0)){e=a;break}g=e+-4|0;x=0;h=ja(71,c|0,k|0,g|0)|0;m=x;x=0;if(m&1)break b;if(h){m=e;e=g;g=m}else break}m=f[k>>2]|0;f[k>>2]=0;g=f[e>>2]|0;f[e>>2]=m;if(g|0){OX(g);Cbb(g)}d=d+1|0;e=f[k>>2]|0;f[k>>2]=0;if(e|0){OX(e);Cbb(e)}if((d|0)==8){j=25;break}}e=i;i=i+4|0}if((j|0)==25){d=(i+4|0)==(b|0);break a}d=Ia()|0;e=f[k>>2]|0;f[k>>2]=0;if(e|0){OX(e);Cbb(e)}Ua(d|0)}}while(0);u=l;return d|0}function Gl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(479,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function Hl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+16|0;w=v+4|0;s=v;j=f[b>>2]|0;t=j;if(Qab(j)|0){r=a+72|0;q=W7a(b)|0;o=a+76|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;l=(k&i|0)==0;if(!l)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!c)m=17;else while(1){c=f[c>>2]|0;if(!c){m=17;break a}h=f[c+4>>2]|0;if((h|0)!=(q|0)){if(!l){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&k;if((h|0)!=(d|0)){m=17;break a}}if(g2a(f[c+8>>2]|0,j)|0){c=0;break}}}else{d=0;m=17}while(0);if((m|0)==17){W6(w,r,q,b);j=a+84|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+88>>2];do if(p|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(680,r|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[w>>2]|0;f[w>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[r>>2]|0)+(d<<2)>>2]|0;if(!c){c=a+80|0;h=f[w>>2]|0;f[h>>2]=f[c>>2];f[c>>2]=h;f[(f[r>>2]|0)+(d<<2)>>2]=c;c=f[h>>2]|0;if(!c)c=w;else{c=f[c+4>>2]|0;d=i+-1|0;if(d&i){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&d;f[(f[r>>2]|0)+(c<<2)>>2]=h;c=w}}else{r=f[w>>2]|0;f[r>>2]=f[c>>2];f[c>>2]=r;c=w}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0;c=1}f[s>>2]=t;f[w>>2]=f[s>>2];$2(a,c,w,85385)}u=v;return}function Il(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){xQ(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(255,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function Jl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=L_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=hX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=nRa(f[f[e+20>>2]>>2]|0)|0;if(Qab(f[g+4>>2]|0)|0)Ca(77082,76794,293,77101);else{p=f[g+12>>2]|0;g=oYa(g)|0;f[g+8>>2]=p;uXa(g);SI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;gA(n,fZa(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(1249,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Gga(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(rfa(d,e)|0){x=0;wa(71,77111,76794,310,77101);x=0;d=Ia()|0;break a}p=fZa(f[g>>2]|0)|0;x=0;va(114,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;bPa(k+4|0,l);x=0;wa(101,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;gTa(k);XYa(l);break}else{gTa(k);XYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);_7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;_7(n);Ua(d|0)}function Kl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=L_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=hX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=nRa(f[f[e+20>>2]>>2]|0)|0;if(Qab(f[g+4>>2]|0)|0)Ca(77082,76794,293,77101);else{p=f[g+12>>2]|0;g=oYa(g)|0;f[g+8>>2]=p;uXa(g);SI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;gA(n,fZa(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(1029,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Rxa(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(rfa(d,e)|0){x=0;wa(71,77111,76794,310,77101);x=0;d=Ia()|0;break a}p=fZa(f[g>>2]|0)|0;x=0;va(112,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;bPa(k+4|0,l);x=0;wa(99,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;gTa(k);XYa(l);break}else{gTa(k);XYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);_7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;_7(n);Ua(d|0)}function Ll(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=L_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=hX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=nRa(f[f[e+20>>2]>>2]|0)|0;if(Qab(f[g+4>>2]|0)|0)Ca(77082,76794,293,77101);else{p=f[g+12>>2]|0;g=oYa(g)|0;f[g+8>>2]=p;uXa(g);SI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;gA(n,fZa(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(934,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Gga(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(rfa(d,e)|0){x=0;wa(71,77111,76794,310,77101);x=0;d=Ia()|0;break a}p=fZa(f[g>>2]|0)|0;x=0;va(111,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;bPa(k+4|0,l);x=0;wa(98,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;gTa(k);XYa(l);break}else{gTa(k);XYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);_7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;_7(n);Ua(d|0)}function Ml(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+304|0;j=m+288|0;n=m+196|0;k=m+96|0;l=m;h=L_a(f[c>>2]|0)|0;i=(h|0)!=0;do if(i?(d=a+44|0,e=hX(d,f[h+8>>2]|0)|0,(e|0)!=(a+48|0)):0){g=nRa(f[f[e+20>>2]>>2]|0)|0;if(Qab(f[g+4>>2]|0)|0)Ca(77082,76794,293,77101);else{p=f[g+12>>2]|0;g=oYa(g)|0;f[g+8>>2]=p;uXa(g);SI(d,e);b[a+92>>0]=1;break}}while(0);g=a+40|0;gA(n,fZa(f[g>>2]|0)|0,0);x=0;d=ia(123,n|0,f[c>>2]|0)|0;p=x;x=0;a:do if(p&1)o=9;else{if(d?(x=0,ua(811,a|0,n|0),p=x,x=0,p&1):0){o=9;break}b:do if(i?Rxa(a,h)|0:0){e=f[h+8>>2]|0;d=a+44|0;if(rfa(d,e)|0){x=0;wa(71,77111,76794,310,77101);x=0;d=Ia()|0;break a}p=fZa(f[g>>2]|0)|0;x=0;va(110,l|0,c|0,p|0);p=x;x=0;do if(!(p&1)){f[k>>2]=e;bPa(k+4|0,l);x=0;wa(97,j|0,d|0,f[k>>2]|0,k|0);p=x;x=0;if(p&1){d=Ia()|0;gTa(k);XYa(l);break}else{gTa(k);XYa(l);break b}}else d=Ia()|0;while(0);break a}while(0);_7(n);u=m;return}while(0);if((o|0)==9)d=Ia()|0;_7(n);Ua(d|0)}function Nl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+80|0;l=p+48|0;m=p+68|0;n=p+64|0;e=p+32|0;o=p+16|0;g=p;i=b+8|0;d=f[i>>2]|0;k=f[b+4>>2]|0;f[m>>2]=k;c=(k|0)==2;_0a(n,a);a=f[n>>2]|0;j=SKa(a,0,k)|0;a=Kpa(a,d,j,SKa(a,1,k)|0)|0;j=c?21:20;if(c){XSa(e,0,-2147483648);XSa(o,0,0)}else{t$a(e,-2147483648);t$a(o,0)}if((d|0)==((c?28:3)|0)){b=c?40:15;if(c)XSa(g,-1,-1);else t$a(g,-1);d=SKa(f[n>>2]|0,0,k)|0;f[l>>2]=f[e>>2];f[l+4>>2]=f[e+4>>2];f[l+8>>2]=f[e+8>>2];f[l+12>>2]=f[e+12>>2];e=e0(n,l)|0;e=Kpa(f[n>>2]|0,b,d,e)|0;d=SKa(f[n>>2]|0,1,k)|0;f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];f[l+8>>2]=f[g+8>>2];f[l+12>>2]=f[g+12>>2];h=e0(n,l)|0;h=Kpa(f[n>>2]|0,b,d,h)|0;h=Kpa(f[n>>2]|0,7,e,h)|0;f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];a=Hqa(n,h,e0(n,l)|0,a)|0}h=s8(88)|0;dX(h);e=RN(f[i>>2]|0)|0;f[h>>2]=e;e=h+8|0;g=h+12|0;c=f[g>>2]|0;d=h+16|0;b=f[d>>2]|0;if((c|0)==(b|0)){LL(e,m);c=f[g>>2]|0;b=f[d>>2]|0}else{f[c>>2]=k;c=c+4|0;f[g>>2]=c}if((c|0)==(b|0))LL(e,m);else{f[c>>2]=k;f[g>>2]=c+4}f[h+4>>2]=k;m=SKa(f[n>>2]|0,1,k)|0;m=rBa(f[n>>2]|0,j,m)|0;f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];o=Hqa(n,m,e0(n,l)|0,a)|0;f[h+36>>2]=o;u=p;return h|0}function Ol(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1413,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function Pl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+32|0;y=w+8|0;t=w+4|0;s=w;v=s8(32)|0;YPa(v);oaa(f[a>>2]|0,v);KHa(y);i=Jbb(f[e+16>>2]|0)|0;p=v+20|0;q=T6a(e)|0;a:while(1){r=i;if((q|0)==(r|0)){j=3;break}o=f[i+8>>2]|0;f[t>>2]=o;n=i+12|0;nra(y);x=0;ua(1460,y|0,t|0);m=x;x=0;if(m&1){j=8;break}i=Jbb(f[i+28>>2]|0)|0;l=T6a(n)|0;while(1){m=i;if((l|0)==(m|0))break;k=f[i+8>>2]|0;wZ(c,k);i=Jbb(f[k+16>>2]|0)|0;k=T6a(k)|0;while(1){j=i;if((k|0)==(j|0))break;z=f[i+8>>2]|0;f[s>>2]=z;i=f[j+4>>2]|0;j=z;if(!(DQa(n,j)|0)){x=0;ua(1460,g|0,s|0);z=x;x=0;if(z&1){j=16;break a}x=0;wa(131,j|0,1,v|0,n|0);z=x;x=0;if(z&1){j=16;break a}}}i=f[m+4>>2]|0}x=0;i=ja(69,a|0,n|0,y|0)|0;z=x;x=0;if(z&1){j=8;break}x=0;j=ia(145,p|0,o+100|0)|0;z=x;x=0;if(z&1){j=8;break}f[j>>2]=i;if(h)b[o+112>>0]=1;i=f[r+4>>2]|0}do if((j|0)==3){i=Jbb(f[d+16>>2]|0)|0;j=T6a(d)|0;while(1){k=i;if((j|0)==(k|0)){j=23;break}z=f[i+8>>2]|0;f[t>>2]=z;if(!(DQa(e,z)|0)?(x=0,ua(1460,g|0,t|0),z=x,x=0,z&1):0){j=27;break}i=f[k+4>>2]|0}if((j|0)==23){YDa(y);u=w;return v|0}else if((j|0)==27){i=Ia()|0;break}}else if((j|0)==8){i=Ia()|0;j=21}else if((j|0)==16){i=Ia()|0;j=21}while(0);YDa(y);Ua(i|0);return 0}function Ql(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=W7a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(CXa(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){AV(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(101,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function Rl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){VT(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2042,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+16|0}function Sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){VT(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2043,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+16|0}function Tl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+16|0;e=w+4|0;p=w;f[p>>2]=c;v=a+88|0;f[e>>2]=c;t=JH(e,4)|0;r=a+92|0;l=f[r>>2]|0;s=(l|0)==0;a:do if(!s){m=l+-1|0;o=(m&l|0)==0;if(!o)if(t>>>0>>0)h=t;else h=(t>>>0)%(l>>>0)|0;else h=m&t;g=f[(f[v>>2]|0)+(h<<2)>>2]|0;if(!g)q=16;else do{g=f[g>>2]|0;if(!g){q=16;break a}i=f[g+4>>2]|0;if((i|0)!=(t|0)){if(!o){if(i>>>0>=l>>>0)i=(i>>>0)%(l>>>0)|0}else i=i&m;if((i|0)!=(h|0)){q=16;break a}}}while((f[g+8>>2]|0)!=(c|0))}else{h=0;q=16}while(0);if((q|0)==16){WL(e,v,t,p,d);c=a+100|0;j=+(((f[c>>2]|0)+1|0)>>>0);k=+n[a+104>>2];do if(s|k*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;q=~~+W(+(j/k))>>>0;x=0;ua(2491,v|0,(s>>>0>>0?q:s)|0);s=x;x=0;if(!(s&1)){g=f[r>>2]|0;h=g+-1|0;if(!(h&g)){l=g;h=h&t;break}if(t>>>0>>0){l=g;h=t;break}l=g;h=(t>>>0)%(g>>>0)|0;break}g=Ia()|0;h=f[e>>2]|0;f[e>>2]=0;if(h|0){if(b[e+8>>0]|0)GWa(h+8|0);Cbb(h)}Ua(g|0)}while(0);g=f[(f[v>>2]|0)+(h<<2)>>2]|0;if(!g){g=a+96|0;i=f[e>>2]|0;f[i>>2]=f[g>>2];f[g>>2]=i;f[(f[v>>2]|0)+(h<<2)>>2]=g;g=f[i>>2]|0;if(g){g=f[g+4>>2]|0;h=l+-1|0;if(h&l){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&h;f[(f[v>>2]|0)+(g<<2)>>2]=i}}else{v=f[e>>2]|0;f[v>>2]=f[g>>2];f[g>>2]=v}f[c>>2]=(f[c>>2]|0)+1;f[e>>2]=0}u=w;return}function Ul(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+16|0;l=o+8|0;h=o;m=a+33|0;do if(b[m>>0]|0){g=DCa(134176,87664)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(n);Wq(g,e)|0;fu(g)|0;break}o=Ia()|0;OCa(n);Ua(o|0)}while(0);e=a+28|0;Gv(f[e>>2]|0,2)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,r8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))LL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}j=c+12|0;Q$a(l,j);LUa(h,j);j=c;k=l+4|0;i=f[h>>2]|0;g=f[h+4>>2]|0;d=0;while(1){if(!(qTa(f[l>>2]|0,f[k>>2]|0,i,g)|0)){d=11;break}h=QOa(l)|0;h=f[h>>2]|0;if(b[m>>0]|0){zm(DCa(zm(DCa(134176,87679)|0,j)|0,111106)|0,d)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[n>>2]|0,134880)|0;p=x;x=0;if(p&1){d=15;break}x=0;e=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0;p=x;x=0;if(p&1){d=15;break}OCa(n);Wq(134176,e)|0;fu(134176)|0;d=d+1|0}oGa(a,h);YYa(l)}if((d|0)==11){JS(a,c);u=o;return}else if((d|0)==15){p=Ia()|0;OCa(n);Ua(p|0)}}function Vl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;IV(a,c,d,e);vTa(a,b);x=0;ta(480,a|0);e=x;x=0;do if(!(e&1)){c=f[b+40>>2]|0;d=f[c+4>>2]|0;c=f[c>>2]|0;a:while(1){if((c|0)==(d|0)){c=4;break}b=f[c>>2]|0;b:do if(b|0)switch(f[b>>2]|0){case 6:case 3:case 1:case 0:{x=0;ua(1372,a|0,f[b+4>>2]|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 2:{x=0;b=ga(217,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1373,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 4:{x=0;b=ga(260,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1374,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 5:{x=0;b=ga(260,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1375,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}case 7:{x=0;b=ga(261,f[b+4>>2]|0)|0;e=x;x=0;if(e&1){c=9;break a}x=0;ua(1376,a|0,b|0);e=x;x=0;if(e&1){c=9;break a}else break b}default:{c=18;break a}}while(0);c=c+4|0}if((c|0)==4){x=0;ta(481,f[a+28>>2]|0);e=x;x=0;if(e&1){c=5;break}return}else if((c|0)==9){b=Ia()|0;break}else if((c|0)==18){x=0;sa(5);x=0;b=Ia()|0;break}}else c=5;while(0);if((c|0)==5)b=Ia()|0;Cfa(a);Ua(b|0)}function Wl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=W7a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(g2a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){KT(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2591,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function Xl(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=c;q=f[c>>2]|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while((f[c+8>>2]|0)!=(q|0))}else{d=0;m=16}while(0);if((m|0)==16){$S(r,a,q,l);j=a+12|0;g=+(((f[j>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(2462,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(!(p&1)){c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q;break}i=c;d=(q>>>0)%(c>>>0)|0;break}c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0){if(b[r+8>>0]|0)P_a(d+8|0);Cbb(d)}Ua(c|0)}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function Yl(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=u;u=u+80|0;l=q+64|0;n=q+48|0;o=q+32|0;p=q+16|0;m=q;switch(b|0){case 42:{i=17;j=19;k=24;break}case 44:{i=17;j=19;k=22;break}case 46:{i=21;j=23;k=20;break}case 48:{i=21;j=23;k=18;break}default:hb()}b=a+44|0;s=f[b>>2]|0;r=QPa(e)|0;r=SKa(f[s>>2]|0,r,1)|0;t=f[b>>2]|0;a=QPa(h)|0;a=SKa(f[t>>2]|0,a,1)|0;a=Kpa(f[s>>2]|0,i,r,a)|0;r=f[b>>2]|0;i=QPa(e)|0;i=SKa(f[r>>2]|0,i,1)|0;e=f[b>>2]|0;h=QPa(h)|0;h=SKa(f[e>>2]|0,h,1)|0;h=Kpa(f[r>>2]|0,j,i,h)|0;j=f[b>>2]|0;d=QPa(d)|0;d=SKa(f[j>>2]|0,d,1)|0;i=f[b>>2]|0;e=QPa(g)|0;e=SKa(f[i>>2]|0,e,1)|0;e=Kpa(f[j>>2]|0,k,d,e)|0;d=f[b>>2]|0;t$a(n,0);f[l>>2]=f[n>>2];f[l+4>>2]=f[n+4>>2];f[l+8>>2]=f[n+8>>2];f[l+12>>2]=f[n+12>>2];g=e0(d,l)|0;n=f[b>>2]|0;t$a(o,1);f[l>>2]=f[o>>2];f[l+4>>2]=f[o+4>>2];f[l+8>>2]=f[o+8>>2];f[l+12>>2]=f[o+12>>2];n=Hqa(d,e,g,e0(n,l)|0)|0;o=f[b>>2]|0;t$a(p,0);f[l>>2]=f[p>>2];f[l+4>>2]=f[p+4>>2];f[l+8>>2]=f[p+8>>2];f[l+12>>2]=f[p+12>>2];p=Hqa(o,h,n,e0(o,l)|0)|0;o=f[b>>2]|0;t$a(m,1);f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];f[l+12>>2]=f[m+12>>2];p=Hqa(o,a,e0(o,l)|0,p)|0;p=J$(f[b>>2]|0,c,p)|0;u=q;return p|0}function Zl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(714,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function _l(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+80|0;j=l+48|0;k=l+64|0;e=l+32|0;g=l+16|0;h=l;d=b+28|0;b=f[d>>2]|0;c=v$a(b)|0;if(c){b=RCa(c+12|0)|0;b=f[b>>2]|0}c=r_a(b)|0;do if(!c){b=d$a(b)|0;if(b|0){d=b+16|0;c=f[d>>2]|0;if(D7a(f[c>>2]|0)|0){i=(XQa(c)|0)+24|0;i=f[i>>2]|0;f[k>>2]=i;b=f[a+44>>2]|0;if((gV(b+16|0,i)|0)==(b+20|0))break;else{k=$X(b+16|0,k)|0;t$a(g,f[k>>2]|0);f[j>>2]=f[g>>2];f[j+4>>2]=f[g+4>>2];f[j+8>>2]=f[g+8>>2];f[j+12>>2]=f[g+12>>2];k=e0(b+8|0,j)|0;f[d>>2]=k;break}}b=b+12|0;c=r_a(f[b>>2]|0)|0;if(c|0?(g=f[c+24>>2]|0,f[k>>2]=g,i=f[a+44>>2]|0,(gV(i+16|0,g)|0)!=(i+20|0)):0){k=$X(i+16|0,k)|0;t$a(h,f[k>>2]|0);f[j>>2]=f[h>>2];f[j+4>>2]=f[h+4>>2];f[j+8>>2]=f[h+8>>2];f[j+12>>2]=f[h+12>>2];k=e0(i+8|0,j)|0;f[b>>2]=k}}}else{i=f[c+24>>2]|0;f[k>>2]=i;b=f[a+44>>2]|0;if((gV(b+16|0,i)|0)!=(b+20|0)){k=$X(b+16|0,k)|0;t$a(e,f[k>>2]|0);f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];k=e0(b+8|0,j)|0;f[d>>2]=k}}while(0);u=l;return}function $l(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(713,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function am(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=u;u=u+32|0;n=m+16|0;l=m+28|0;j=m+12|0;o=m;k=lTa(f[a+4>>2]|0)|0;f[k+4>>2]=d;i=k+12|0;b[i>>0]=e;do if(H0(g,93092,3)|0)if(H0(g,93096,3)|0)if(H0(g,93100,2)|0)if(H0(g,117184,3)|0)if(H0(g,93103,3)|0)if(!(H0(g,93107,4)|0)){d=5;p=13}else{g=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;o=j7a(93112)|0;x=0;va(87,n|0,93112,o|0);o=x;x=0;if(!(o&1)){x=0;ua(261,g|0,n|0);o=x;x=0;if(o&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(n);if(!e)break}else d=Ia()|0;La(g|0)}else{d=4;p=13}else{d=1;p=13}else{d=3;p=13}else{d=2;p=13}else{d=0;p=13}while(0);if((p|0)==13){f[k+8>>2]=d;Sab(l);hLa(j,h[i>>0]|0,0);d=rh(c,k+16|0,l,f[j>>2]|0)|0;n=Jbb(f[l>>2]|0)|0;if((n|0)==(h[i>>0]|0|0)){p=ZQa(a,Or(c,d)|0)|0;f[k+20>>2]=p;p=ZQa(a,Or(c,d+1|0)|0)|0;f[k+24>>2]=p;NMa(k);u=m;return k|0}g=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;n=j7a(93136)|0;x=0;va(87,o|0,93136,n|0);n=x;x=0;if(!(n&1)){x=0;ua(261,g|0,o|0);n=x;x=0;if(n&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(o);if(e)p=19}else{d=Ia()|0;p=19}if((p|0)==19)La(g|0)}Ua(d|0);return 0}function bm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k;do if(b[a+33>>0]|0){i=DCa(134176,110753)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}l=Ia()|0;OCa(g);Ua(l|0)}while(0);l=c+16|0;oGa(a,f[l>>2]|0);do if(((f[(f[l>>2]|0)+4>>2]|0)!=5?(l=c+20|0,oGa(a,f[l>>2]|0),(f[(f[l>>2]|0)+4>>2]|0)!=5):0)?(l=c+24|0,oGa(a,f[l>>2]|0),(f[(f[l>>2]|0)+4>>2]|0)!=5):0){e=c+4|0;g=a+28|0;d=f[g>>2]|0;if((f[e>>2]|0)==5){iTa(d);break}Gv(d,-2)|0;a:do switch(f[e>>2]|0){case 1:{d=c+8|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,74)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,75)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,72)|0;j=d;break a}default:hb()}break}case 2:{d=c+8|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,76)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,77)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,78)|0;j=d;break a}case 8:{Gv(f[g>>2]|0,73)|0;j=d;break a}default:hb()}break}default:hb()}while(0);l=h[j>>0]|0;FX(a,l,l,Jbb(f[c+12>>2]|0)|0)}while(0);u=k;return}function cm(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;n=m;d=a+184|0;c=f[a+132>>2]|0;Rs(d,X(c,c)|0);d=f[d>>2]|0;c=f[a+188>>2]|0;c=(d+(c>>>5<<2)-d<<3)+(c&31)|0;if(c|0){f[n>>2]=d;f[n+4>>2]=0;XS(n,c)}j=f[a+60>>2]|0;k=a+136|0;l=n+4|0;i=f[a+56>>2]|0;a:while(1){if((i|0)==(j|0)){d=5;break}c=f[i>>2]|0;f[n>>2]=c;if(Vz(k,n)|0){jYa(n,c+12|0);x=0;ua(3139,a|0,n|0);h=x;x=0;if(h&1){d=11;break}c=f[i>>2]|0;h=c+24|0;c=(f[c+28>>2]|0)-(f[h>>2]|0)>>4;while(1){g=c+-1|0;if((c|0)<=0)break;d=f[h>>2]|0;e=f[d+(g<<4)+4>>2]|0;b:do if(!(Oab(f[d+(g<<4)>>2]|0)|0)){x=0;c=ia(106,n|0,e|0)|0;e=x;x=0;if(e&1){d=16;break a}if(c)b[d+(g<<4)+12>>0]=1}else{x=0;ua(523,n|0,e|0);d=x;x=0;if(d&1){d=16;break a}d=f[l>>2]|0;c=f[n>>2]|0;while(1){if((c|0)==(d|0))break b;Wga(a,f[c>>2]|0,e);c=c+4|0}}while(0);c=g}zSa(n)}i=i+4|0}if((d|0)==5){jYa(n,f[a+52>>2]|0);d=BZa(Jbb(f[a+32>>2]|0)|0)|0;c=0;while(1){if(c>>>0>=d>>>0){d=25;break}x=0;ua(523,n|0,c|0);l=x;x=0;if(l&1){d=29;break}c=c+1|0}do if((d|0)==25){x=0;ua(3139,a|0,n|0);a=x;x=0;if(a&1){c=Ia()|0;break}else{zSa(n);u=m;return}}else if((d|0)==29)c=Ia()|0;while(0);zSa(n)}else if((d|0)==11){c=Ia()|0;d=23}else if((d|0)==16){c=Ia()|0;d=23}if((d|0)==23)zSa(n);Ua(c|0)}function dm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(526,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function em(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(711,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function fm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2283,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function gm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(638,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function hm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1409,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function im(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=W7a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(CXa(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1878,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function jm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=W7a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(CXa(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(3183,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function km(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=W7a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(g2a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){GU(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2712,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function lm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;k=f[b>>2]|0;f[r>>2]=k;q=JH(r,4)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){i=h+-1|0;j=(i&h|0)==0;if(!j)if(q>>>0>>0)c=q;else c=(q>>>0)%(h>>>0)|0;else c=i&q;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)m=16;else do{b=f[b>>2]|0;if(!b){m=16;break a}d=f[b+4>>2]|0;if((d|0)!=(q|0)){if(!j){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&i;if((d|0)!=(c|0)){m=16;break a}}}while((f[b+8>>2]|0)!=(k|0))}else{c=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(2102,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){b=Ia()|0;c=f[r>>2]|0;f[r>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[o>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&q;break}if(q>>>0>>0){h=b;c=q}else{h=b;c=(q>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){q=a+8|0;b=f[r>>2]|0;f[b>>2]=f[q>>2];f[q>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=q;c=f[b>>2]|0;if(!c)c=r;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=r}}else{a=f[r>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=r;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=s;return b+12|0}function mm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=W7a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(g2a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1569,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function nm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=Dba(b)|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while(!(yda(c+8|0,b)|0))}else{d=0;m=16}while(0);if((m|0)==16){TN(r,a,q,l);b=a+12|0;g=+(((f[b>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(678,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[b>>2]=(f[b>>2]|0)+1;f[d>>2]=0}u=s;return c+24|0}function om(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+80|0;i=k+68|0;e=k+64|0;l=k+8|0;j=k;DCa(134008,100460)|0;b=f[c+40>>2]|0;a=f[c+36>>2]|0;while(1){if((a|0)==(b|0))break;h=DCa(134008,100923)|0;DCa(Bfa(h,f[f[a>>2]>>2]|0)|0,100927)|0;a=a+4|0}b=f[c+16>>2]|0;a=f[c+12>>2]|0;while(1){if((a|0)==(b|0))break;if(!(f[(f[a>>2]|0)+12>>2]|0)){h=DCa(134008,100923)|0;DCa(Bfa(h,f[f[a>>2]>>2]|0)|0,100967)|0}a=a+4|0}b=f[c+28>>2]|0;a=f[c+24>>2]|0;while(1){if((a|0)==(b|0))break;d=f[a>>2]|0;if(!(f[d+8>>2]|0)){f[e>>2]=f[d+4>>2];f[i>>2]=f[e>>2];h=$I(c,i)|0;g=DCa(134008,100923)|0;DCa(Bfa(g,f[h>>2]|0)|0,101011)|0}a=a+4|0}RD(l,c);g=f[c+80>>2]|0;e=f[c+76>>2]|0;a:while(1){if((e|0)==(g|0)){b=16;break}h=f[e+8>>2]|0;d=f[e+4>>2]|0;while(1){if((d|0)==(h|0))break;f[j>>2]=f[d>>2];x=0;f[i>>2]=f[j>>2];a=ia(56,c|0,i|0)|0;b=x;x=0;if(b&1){b=25;break a}x=0;b=ia(62,134008,100923)|0;m=x;x=0;if(m&1){b=25;break a}x=0;a=ia(76,b|0,f[a>>2]|0)|0;m=x;x=0;if(m&1){b=25;break a}x=0;ia(62,a|0,101053)|0;m=x;x=0;if(m&1){b=25;break a}d=d+4|0}e=e+16|0}do if((b|0)==16){x=0;ia(62,134008,101050)|0;m=x;x=0;if(m&1){a=Ia()|0;break}else{aza(l);u=k;return}}else if((b|0)==25)a=Ia()|0;while(0);aza(l);Ua(a|0)}function pm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;c=s+4|0;m=s;f[m>>2]=b;r=W7a(b)|0;p=a+4|0;i=f[p>>2]|0;q=(i|0)==0;a:do if(!q){l=i+-1|0;k=(l&i|0)==0;if(!k)if(r>>>0>>0)d=r;else d=(r>>>0)%(i>>>0)|0;else d=l&r;h=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!h)o=16;else{j=f[b>>2]|0;do{h=f[h>>2]|0;if(!h){o=16;break a}b=f[h+4>>2]|0;if((b|0)!=(r|0)){if(!k){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&l;if((b|0)!=(d|0)){o=16;break a}}}while(!(g2a(f[h+8>>2]|0,j)|0))}}else{d=0;o=16}while(0);if((o|0)==16){MS(c,a,r,m);j=a+12|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(q|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;o=~~+W(+(e/g))>>>0;x=0;ua(1366,a|0,(q>>>0>>0?o:q)|0);q=x;x=0;if(q&1){b=Ia()|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Cbb(d);Ua(b|0)}b=f[p>>2]|0;d=b+-1|0;if(!(d&b)){i=b;d=d&r;break}if(r>>>0>>0){i=b;d=r}else{i=b;d=(r>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!b){b=a+8|0;h=f[c>>2]|0;f[h>>2]=f[b>>2];f[b>>2]=h;f[(f[a>>2]|0)+(d<<2)>>2]=b;b=f[h>>2]|0;if(b){b=f[b+4>>2]|0;d=i+-1|0;if(d&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&d;f[(f[a>>2]|0)+(b<<2)>>2]=h}}else{a=f[c>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a}f[j>>2]=(f[j>>2]|0)+1;f[c>>2]=0}u=s;return}function qm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=W7a(b)|0;o=a+4|0;h=f[o>>2]|0;p=(h|0)==0;a:do if(!p){k=h+-1|0;j=(k&h|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(h>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else{i=f[b>>2]|0;do{c=f[c>>2]|0;if(!c){m=16;break a}b=f[c+4>>2]|0;if((b|0)!=(q|0)){if(!j){if(b>>>0>=h>>>0)b=(b>>>0)%(h>>>0)|0}else b=b&k;if((b|0)!=(d|0)){m=16;break a}}}while(!(g2a(f[c+8>>2]|0,i)|0))}}else{d=0;m=16}while(0);if((m|0)==16){gW(r,a,q,l);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(p|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(1304,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){h=c;d=d&q;break}if(q>>>0>>0){h=c;d=q}else{h=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;b=h+-1|0;if(b&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&b;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}u=s;return c+12|0}function rm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s+4|0;l=s;f[l>>2]=b;q=Dba(b)|0;o=a+4|0;i=f[o>>2]|0;p=(i|0)==0;a:do if(!p){k=i+-1|0;j=(k&i|0)==0;if(!j)if(q>>>0>>0)d=q;else d=(q>>>0)%(i>>>0)|0;else d=k&q;c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c)m=16;else do{c=f[c>>2]|0;if(!c){m=16;break a}e=f[c+4>>2]|0;if((e|0)!=(q|0)){if(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&k;if((e|0)!=(d|0)){m=16;break a}}}while(!(yda(c+8|0,b)|0))}else{d=0;m=16}while(0);if((m|0)==16){TN(r,a,q,l);b=a+12|0;g=+(((f[b>>2]|0)+1|0)>>>0);h=+n[a+16>>2];do if(p|h*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(1410,a|0,(p>>>0>>0?m:p)|0);p=x;x=0;if(p&1){c=Ia()|0;d=f[r>>2]|0;f[r>>2]=0;if(d|0)Cbb(d);Ua(c|0)}c=f[o>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&q;break}if(q>>>0>>0){i=c;d=q}else{i=c;d=(q>>>0)%(c>>>0)|0}}while(0);c=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(!c){q=a+8|0;c=f[r>>2]|0;f[c>>2]=f[q>>2];f[q>>2]=c;f[(f[a>>2]|0)+(d<<2)>>2]=q;d=f[c>>2]|0;if(!d)d=r;else{d=f[d+4>>2]|0;e=i+-1|0;if(e&i){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&e;f[(f[a>>2]|0)+(d<<2)>>2]=c;d=r}}else{a=f[r>>2]|0;f[a>>2]=f[c>>2];f[c>>2]=a;d=r;c=a}f[b>>2]=(f[b>>2]|0)+1;f[d>>2]=0}u=s;return c+24|0}function sm(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;j=p+12|0;m=p+8|0;n=p;x=0;ua(99,n|0,a|0);l=x;x=0;a:do if(l&1){e=Ja(0)|0;g=a;h=a;o=20}else{b:do if(b[n>>0]|0){dYa(j,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;k=ia(73,f[j>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){e=Ja(0)|0;OCa(j)}else{OCa(j);g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[g+24>>2]|0;h=g+76|0;e=f[h>>2]|0;do if(g2a(-1,e)|0){dYa(j,g);x=0;e=ia(73,f[j>>2]|0,134880)|0;q=x;x=0;if(!(q&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,32)|0,q=x,x=0,!(q&1)):0){OCa(j);e=i<<24>>24;f[h>>2]=e;o=10;break}e=Ja(0)|0;OCa(j)}else o=10;while(0);do if((o|0)==10){q=f[(f[k>>2]|0)+28>>2]|0;f[m>>2]=l;x=0;f[j>>2]=f[m>>2];e=oa(q|0,k|0,j|0,g|0,e&255|0,c|0,d|0)|0;q=x;x=0;if(q&1){e=Ja(0)|0;break}if(e|0)break b;q=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,q|0,f[q+16>>2]|5|0);q=x;x=0;if(!(q&1))break b;e=Ja(0)|0;break c}while(0)}while(0);gD(n);g=a;h=a;o=20;break a}while(0);gD(n)}while(0);do if((o|0)==20){Fa(e|0)|0;x=0;ta(450,h+(f[(f[g>>2]|0)+-12>>2]|0)|0);q=x;x=0;if(!(q&1)){Ga();break}e=Ia()|0;x=0;sa(6);q=x;x=0;if(q&1){q=Ja(0)|0;y2a(q)}else Ua(e|0)}while(0);u=p;return a|0}function tm(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;j=p+12|0;m=p+8|0;n=p;x=0;ua(99,n|0,a|0);l=x;x=0;a:do if(l&1){e=Ja(0)|0;g=a;h=a;o=20}else{b:do if(b[n>>0]|0){dYa(j,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;k=ia(73,f[j>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){e=Ja(0)|0;OCa(j)}else{OCa(j);g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[g+24>>2]|0;h=g+76|0;e=f[h>>2]|0;do if(g2a(-1,e)|0){dYa(j,g);x=0;e=ia(73,f[j>>2]|0,134880)|0;q=x;x=0;if(!(q&1)?(x=0,i=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,32)|0,q=x,x=0,!(q&1)):0){OCa(j);e=i<<24>>24;f[h>>2]=e;o=10;break}e=Ja(0)|0;OCa(j)}else o=10;while(0);do if((o|0)==10){q=f[(f[k>>2]|0)+20>>2]|0;f[m>>2]=l;x=0;f[j>>2]=f[m>>2];e=oa(q|0,k|0,j|0,g|0,e&255|0,c|0,d|0)|0;q=x;x=0;if(q&1){e=Ja(0)|0;break}if(e|0)break b;q=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,q|0,f[q+16>>2]|5|0);q=x;x=0;if(!(q&1))break b;e=Ja(0)|0;break c}while(0)}while(0);gD(n);g=a;h=a;o=20;break a}while(0);gD(n)}while(0);do if((o|0)==20){Fa(e|0)|0;x=0;ta(450,h+(f[(f[g>>2]|0)+-12>>2]|0)|0);q=x;x=0;if(!(q&1)){Ga();break}e=Ia()|0;x=0;sa(6);q=x;x=0;if(q&1){q=Ja(0)|0;y2a(q)}else Ua(e|0)}while(0);u=p;return a|0}function um(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)Ca(110558,115840,78,110563);do switch(f[c>>2]|0){case 1:{fl(a,b,c);break}case 2:{jy(a,b,c);break}case 3:{wsa(a);break}case 4:{mr(a,b,c);break}case 5:{st(a,b,c);break}case 6:{wsa(a);break}case 7:{wsa(a);break}case 8:{wsa(a);break}case 9:{cC(a,f[b+8>>2]|0,c);break}case 10:{LP(a,b,c);break}case 11:{xS(a,b,c);break}case 12:{wsa(a);break}case 13:{wsa(a);break}case 14:{wsa(a);break}case 24:{wsa(a);break}case 25:{wsa(a);break}case 26:{wsa(a);break}case 27:{wsa(a);break}case 15:{W8(a,c);break}case 16:{Ed(a,b,c);break}case 17:{ed(a,b,c);break}case 18:{$s(a,b,c);break}case 19:{hV(a,b,f[c+8>>2]|0);break}case 20:{ST(a,b,c);break}case 21:{wsa(a);break}case 22:{QXa(a);break}case 23:{oPa(b);break}default:hb()}while(0);return}function vm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){dYa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;OCa(i)}else{OCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if(g2a(-1,d)|0){dYa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){OCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;OCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+24>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c&65535|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);gD(m);e=a;g=a;n=20;break a}while(0);gD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;y2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function wm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;d=n$a(b)|0;f[g>>2]=d;h=d;a:do if(!d){g=d$a(b)|0;if(g|0)switch(f[g+8>>2]|0){case 0:{a=a+8|0;b1(f[(f[a>>2]|0)+16>>2]|0,f[g+12>>2]|0,c);b1(f[(f[a>>2]|0)+16>>2]|0,f[g+16>>2]|0,c);break a}case 1:{d=g+12|0;b=f[d>>2]|0;e=n$a(b)|0;do if(e)if(!(TRa(e+8|0)|0)){b=a+8|0;break}else{b=f[d>>2]|0;i=13;break}else i=13;while(0);if((i|0)==13){a=a+8|0;b1(f[(f[a>>2]|0)+16>>2]|0,b,c);b=a}b1(f[(f[b>>2]|0)+16>>2]|0,f[g+16>>2]|0,0-c|0);break a}case 10:{b=n$a(f[g+16>>2]|0)|0;if(!b)break a;i=f[a+8>>2]|0;a=f[g+12>>2]|0;c=X(voa(V4(b)|0)|0,c)|0;b1(f[i+16>>2]|0,a,c);break a}case 2:{d=f[g+12>>2]|0;b=n$a(d)|0;if(b|0){i=f[a+8>>2]|0;a=f[g+16>>2]|0;c=X(TRa(b+8|0)|0,c)|0;b1(f[i+16>>2]|0,a,c);break a}b=n$a(f[g+16>>2]|0)|0;if(!b)break a;a=f[a+8>>2]|0;c=X(TRa(b+8|0)|0,c)|0;b1(f[a+16>>2]|0,d,c);break a}default:break a}}else{b=TRa(d+8|0)|0;if(b|0){d=X(b,c)|0;b=f[a>>2]|0;f[b>>2]=(f[b>>2]|0)+d;b=f[a+4>>2]|0;d=b+4|0;e=f[d>>2]|0;if((e|0)==(f[b+8>>2]|0)){LL(b,g);break}else{f[e>>2]=h;f[d>>2]=(f[d>>2]|0)+4;break}}}while(0);u=j;return}function xm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){dYa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;OCa(i)}else{OCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if(g2a(-1,d)|0){dYa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){OCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;OCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+40>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);gD(m);e=a;g=a;n=20;break a}while(0);gD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;y2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function ym(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;g=q+36|0;k=q+32|0;l=q+28|0;m=q+24|0;n=q+20|0;o=q+16|0;p=q+12|0;h=q+8|0;i=q+4|0;j=q;a:do switch(f[c+32>>2]|0){case 1:{switch(b[c+8>>0]|0){case 1:{o=f[(f[a>>2]|0)+64>>2]|0;f[k>>2]=f[d>>2];p=(TRa(e)|0)&255;f[g>>2]=f[k>>2];qc[o&255](a,g,p);break a}case 2:{o=f[(f[a>>2]|0)+68>>2]|0;f[l>>2]=f[d>>2];p=(TRa(e)|0)&65535;f[g>>2]=f[l>>2];qc[o&255](a,g,p);break a}case 4:{o=f[(f[a>>2]|0)+72>>2]|0;f[m>>2]=f[d>>2];p=TRa(e)|0;f[g>>2]=f[m>>2];qc[o&255](a,g,p);break a}default:hb()}break}case 2:{switch(b[c+8>>0]|0){case 1:{o=f[(f[a>>2]|0)+64>>2]|0;f[n>>2]=f[d>>2];p=oJa(e)|0;f[g>>2]=f[n>>2];qc[o&255](a,g,p&255);break a}case 2:{n=f[(f[a>>2]|0)+68>>2]|0;f[o>>2]=f[d>>2];p=oJa(e)|0;f[g>>2]=f[o>>2];qc[n&255](a,g,p&65535);break a}case 4:{n=f[(f[a>>2]|0)+72>>2]|0;f[p>>2]=f[d>>2];o=oJa(e)|0;f[g>>2]=f[p>>2];qc[n&255](a,g,o);break a}case 8:{o=f[(f[a>>2]|0)+76>>2]|0;f[h>>2]=f[d>>2];p=oJa(e)|0;f[g>>2]=f[h>>2];rc[o&255](a,g,p,I);break a}default:hb()}break}case 3:{o=f[(f[a>>2]|0)+72>>2]|0;f[i>>2]=f[d>>2];p=rQa(e)|0;f[g>>2]=f[i>>2];qc[o&255](a,g,p);break}case 4:{o=f[(f[a>>2]|0)+76>>2]|0;f[j>>2]=f[d>>2];p=FHa(e)|0;f[g>>2]=f[j>>2];rc[o&255](a,g,p,I);break}default:hb()}while(0);u=q;return}function zm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){dYa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;OCa(i)}else{OCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if(g2a(-1,d)|0){dYa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){OCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;OCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+24>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);gD(m);e=a;g=a;n=20;break a}while(0);gD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;y2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function Am(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){dYa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;OCa(i)}else{OCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if(g2a(-1,d)|0){dYa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){OCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;OCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+16>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=ma(p|0,j|0,i|0,e|0,d&255|0,c|0)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);gD(m);e=a;g=a;n=20;break a}while(0);gD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;y2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function Bm(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;i=o+12|0;k=o+8|0;m=o;x=0;ua(99,m|0,a|0);l=x;x=0;a:do if(l&1){d=Ja(0)|0;e=a;g=a;n=20}else{b:do if(b[m>>0]|0){dYa(i,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);x=0;j=ia(73,f[i>>2]|0,134936)|0;l=x;x=0;c:do if(l&1){d=Ja(0)|0;OCa(i)}else{OCa(i);e=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;l=f[e+24>>2]|0;g=e+76|0;d=f[g>>2]|0;do if(g2a(-1,d)|0){dYa(i,e);x=0;d=ia(73,f[i>>2]|0,134880)|0;p=x;x=0;if(!(p&1)?(x=0,h=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,32)|0,p=x,x=0,!(p&1)):0){OCa(i);d=h<<24>>24;f[g>>2]=d;n=10;break}d=Ja(0)|0;OCa(i)}else n=10;while(0);do if((n|0)==10){p=f[(f[j>>2]|0)+32>>2]|0;f[k>>2]=l;x=0;f[i>>2]=f[k>>2];d=la(p|0,j|0,i|0,e|0,d&255|0,+c)|0;p=x;x=0;if(p&1){d=Ja(0)|0;break}if(d|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,p|0,f[p+16>>2]|5|0);p=x;x=0;if(!(p&1))break b;d=Ja(0)|0;break c}while(0)}while(0);gD(m);e=a;g=a;n=20;break a}while(0);gD(m)}while(0);do if((n|0)==20){Fa(d|0)|0;x=0;ta(450,g+(f[(f[e>>2]|0)+-12>>2]|0)|0);p=x;x=0;if(!(p&1)){Ga();break}d=Ia()|0;x=0;sa(6);p=x;x=0;if(p&1){p=Ja(0)|0;y2a(p)}else Ua(d|0)}while(0);u=o;return a|0}function Cm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+32|0;d=s+8|0;r=s+4|0;l=s;f[r>>2]=b;f[l>>2]=c;r=$k(a,r)|0;f[d>>2]=c;q=JH(d,4)|0;p=r+4|0;i=f[p>>2]|0;o=(i|0)==0;a:do if(!o){j=i+-1|0;k=(j&i|0)==0;if(!k)if(q>>>0>>0)b=q;else b=(q>>>0)%(i>>>0)|0;else b=j&q;a=f[(f[r>>2]|0)+(b<<2)>>2]|0;if(!a)m=16;else do{a=f[a>>2]|0;if(!a){m=16;break a}h=f[a+4>>2]|0;if((h|0)!=(q|0)){if(!k){if(h>>>0>=i>>>0)h=(h>>>0)%(i>>>0)|0}else h=h&j;if((h|0)!=(b|0)){m=16;break a}}}while((f[a+8>>2]|0)!=(c|0))}else{b=0;m=16}while(0);if((m|0)==16){W6(d,r,q,l);j=r+12|0;e=+(((f[j>>2]|0)+1|0)>>>0);g=+n[r+16>>2];do if(o|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;m=~~+W(+(e/g))>>>0;x=0;ua(632,r|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){a=Ia()|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Cbb(b);Ua(a|0)}a=f[p>>2]|0;b=a+-1|0;if(!(b&a)){i=a;b=b&q;break}if(q>>>0>>0){i=a;b=q}else{i=a;b=(q>>>0)%(a>>>0)|0}}while(0);a=f[(f[r>>2]|0)+(b<<2)>>2]|0;if(!a){a=r+8|0;h=f[d>>2]|0;f[h>>2]=f[a>>2];f[a>>2]=h;f[(f[r>>2]|0)+(b<<2)>>2]=a;a=f[h>>2]|0;if(a){a=f[a+4>>2]|0;b=i+-1|0;if(b&i){if(a>>>0>=i>>>0)a=(a>>>0)%(i>>>0)|0}else a=a&b;f[(f[r>>2]|0)+(a<<2)>>2]=h}}else{r=f[d>>2]|0;f[r>>2]=f[a>>2];f[a>>2]=r}f[j>>2]=(f[j>>2]|0)+1;f[d>>2]=0}u=s;return}function Dm(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;j=l+12|0;h=l;g=a+12|0;do if(b[g>>0]|0){e=DCa(134176,96077)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(e,d)|0;fu(e)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);d=a+192|0;c=f[d>>2]|0;a:do if((f[a+188>>2]|0)==(c|0)){if(b[a+200>>0]|0){do if(b[g>>0]|0){c=DCa(134176,96094)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,i=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(j);Wq(c,i)|0;fu(c)|0;break}m=Ia()|0;OCa(j);Ua(m|0)}while(0);c=DSa(f[a+4>>2]|0)|0;break}DY(j,f[a+36>>2]|0);x=0;ia(83,j|0,96140)|0;m=x;x=0;do if(!(m&1)){f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];c=0;while(1){if((c|0)==3)break;f[j+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1870,a|0,h|0);m=x;x=0;if(m&1){c=Ia()|0;MTa(h);break}else{MTa(h);MTa(j);c=f[d>>2]|0;k=23;break a}}else c=Ia()|0;while(0);MTa(j);Ua(c|0)}else k=23;while(0);if((k|0)==23){m=c+-4|0;c=f[m>>2]|0;f[d>>2]=m}u=l;return c|0}function Em(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;g=l+24|0;i=l+12|0;j=l;do if(b[a+12>>0]|0){h=DCa(134176,110904)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}m=Ia()|0;OCa(g);Ua(m|0)}while(0);e=nq(a)|0;d=f[a>>2]|0;do if(e>>>0>=(f[d+4>>2]|0)-(f[d>>2]|0)>>2>>>0){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,97223,j7a(97223)|0);x=0;ua(1870,a|0,i|0);m=x;x=0;if(m&1){d=Ia()|0;MTa(i);break}else{MTa(i);d=f[a>>2]|0;k=10;break}}else k=10;while(0);a:do if((k|0)==10){i=f[(f[d>>2]|0)+(e<<2)>>2]|0;do if(nq(a)|0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,97256,j7a(97256)|0);x=0;ua(1870,a|0,j|0);m=x;x=0;if(m&1){d=Ia()|0;MTa(j);break a}else{MTa(j);break}}while(0);f[c+24>>2]=f[i>>2];e=(f[i+12>>2]|0)-(f[i+8>>2]|0)>>2;g=c+8|0;i7(g,e);h=dk(a)|0;f[c+28>>2]=h;h=e+-1|0;d=0;while(1){if((d|0)==(e|0))break;k=dk(a)|0;m=ODa(g,h-d|0)|0;f[m>>2]=k;d=d+1|0}f[c+4>>2]=f[i+4>>2];cNa(c);u=l;return}while(0);Ua(d|0)}function Fm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r+4|0;k=r;f[k>>2]=b;p=f[b>>2]|0;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(!o){j=h+-1|0;i=(j&h|0)==0;if(!i)if(p>>>0>>0)c=p;else c=(p>>>0)%(h>>>0)|0;else c=j&p;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)l=16;else do{b=f[b>>2]|0;if(!b){l=16;break a}d=f[b+4>>2]|0;if((d|0)!=(p|0)){if(!i){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){l=16;break a}}}while((f[b+8>>2]|0)!=(p|0))}else{c=0;l=16}while(0);if((l|0)==16){gW(q,a,p,k);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(521,a|0,(o>>>0>>0?l:o)|0);o=x;x=0;if(o&1){b=Ia()|0;c=f[q>>2]|0;f[q>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[m>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&p;break}if(p>>>0>>0){h=b;c=p}else{h=b;c=(p>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){p=a+8|0;b=f[q>>2]|0;f[b>>2]=f[p>>2];f[p>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=p;c=f[b>>2]|0;if(!c)c=q;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=q}}else{a=f[q>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=q;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=r;return b+12|0}function Gm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+96|0;k=n+56|0;q=n+60|0;p=n+32|0;o=n+8|0;l=n;f[k>>2]=b;qPa(q,a);x=0;ua(1459,q|0,b|0);j=x;x=0;do if(j&1)b=Ia()|0;else{j=a+20|0;e=a+16|0;g=a+4|0;h=q+4|0;b=0;a:while(1){if(b>>>0>=(f[j>>2]|0)>>>0)break;d=(f[e>>2]|0)+b|0;d=f[(f[(f[g>>2]|0)+(d>>>10<<2)>>2]|0)+((d&1023)<<2)>>2]|0;f[p>>2]=d;b:do if(DQa(h,d)|0){c=Jbb(f[d+16>>2]|0)|0;while(1){i=c;if((T6a(d)|0)==(i|0))break b;x=0;ua(1460,(f[c+8>>2]|0)+24|0,p|0);c=x;x=0;if(c&1){m=12;break a}c=f[i+4>>2]|0}}while(0);b=b+1|0}if((m|0)==12){b=Ia()|0;break}KHa(p);b=Jbb(f[q+20>>2]|0)|0;c=T6a(h)|0;while(1){d=b;if((c|0)==(d|0)){m=14;break}f[o>>2]=f[b+8>>2];x=0;ua(1460,p|0,o|0);m=x;x=0;if(m&1){m=17;break}b=f[d+4>>2]|0}if((m|0)==14){KHa(o);x=0;ua(1460,o|0,k|0);k=x;x=0;do if(!(k&1)){GXa(l,a);x=0;b=ja(69,l|0,p|0,o|0)|0;l=x;x=0;if(l&1){b=Ia()|0;break}f[a+48>>2]=b;if(!b){x=0;wa(71,88980,88985,970,89015);x=0;m=21;break}else{YDa(o);YDa(p);NWa(q);u=n;return}}else m=21;while(0);if((m|0)==21)b=Ia()|0;YDa(o)}else if((m|0)==17)b=Ia()|0;YDa(p)}while(0);NWa(q);Ua(b|0)}function Hm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+48|0;j=i+24|0;k=i+12|0;l=i;f[a>>2]=0;c=b+16|0;g=0;while(1){h=(pra(f[c>>2]|0)|0)<<24>>24;e=(h&128|0)==0;d=h&127;b=((g|0)==0?127:(1<<32-g)+127|0)&d;if(!(e|(b|0)==(d|0))){c=3;break}b=f[a>>2]|b<>2]=b;d=g+7|0;if(e){c=17;break}if(d>>>0>31){c=11;break}else g=d}do if((c|0)==3){d=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;l=j7a(95688)|0;x=0;va(87,j|0,95688,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,d|0,j|0);l=x;x=0;if(l&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(j);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==11){d=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;l=j7a(95731)|0;x=0;va(87,k|0,95731,l|0);l=x;x=0;if(!(l&1)){x=0;ua(261,d|0,k|0);l=x;x=0;if(l&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(k);if(!c)break}else b=Ia()|0;La(d|0)}else if((c|0)==17){if(d>>>0<32&(h&64|0)!=0?(k=25-g|0,k=b<>k,f[a>>2]=k,(k|0)>-1):0){d=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;k=j7a(95744)|0;x=0;va(87,l|0,95744,k|0);k=x;x=0;if(!(k&1)){x=0;ua(261,d|0,l|0);k=x;x=0;if(k&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}b=Ia()|0;MTa(l);if(!c)break}else b=Ia()|0;La(d|0);break}u=i;return}while(0);Ua(b|0)}function Im(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r+4|0;k=r;f[k>>2]=b;p=f[b>>2]|0;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(!o){j=h+-1|0;i=(j&h|0)==0;if(!i)if(p>>>0>>0)c=p;else c=(p>>>0)%(h>>>0)|0;else c=j&p;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)l=16;else do{b=f[b>>2]|0;if(!b){l=16;break a}d=f[b+4>>2]|0;if((d|0)!=(p|0)){if(!i){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){l=16;break a}}}while((f[b+8>>2]|0)!=(p|0))}else{c=0;l=16}while(0);if((l|0)==16){gW(q,a,p,k);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(2461,a|0,(o>>>0>>0?l:o)|0);o=x;x=0;if(o&1){b=Ia()|0;c=f[q>>2]|0;f[q>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[m>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&p;break}if(p>>>0>>0){h=b;c=p}else{h=b;c=(p>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){p=a+8|0;b=f[q>>2]|0;f[b>>2]=f[p>>2];f[p>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=p;c=f[b>>2]|0;if(!c)c=q;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=q}}else{a=f[q>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=q;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=r;return b+12|0}function Jm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0;r=u;u=u+16|0;q=r+4|0;k=r;f[k>>2]=b;p=f[b>>2]|0;m=a+4|0;h=f[m>>2]|0;o=(h|0)==0;a:do if(!o){j=h+-1|0;i=(j&h|0)==0;if(!i)if(p>>>0>>0)c=p;else c=(p>>>0)%(h>>>0)|0;else c=j&p;b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b)l=16;else do{b=f[b>>2]|0;if(!b){l=16;break a}d=f[b+4>>2]|0;if((d|0)!=(p|0)){if(!i){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&j;if((d|0)!=(c|0)){l=16;break a}}}while((f[b+8>>2]|0)!=(p|0))}else{c=0;l=16}while(0);if((l|0)==16){gW(q,a,p,k);i=a+12|0;e=+(((f[i>>2]|0)+1|0)>>>0);g=+n[a+16>>2];do if(o|g*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(525,a|0,(o>>>0>>0?l:o)|0);o=x;x=0;if(o&1){b=Ia()|0;c=f[q>>2]|0;f[q>>2]=0;if(c|0)Cbb(c);Ua(b|0)}b=f[m>>2]|0;c=b+-1|0;if(!(c&b)){h=b;c=c&p;break}if(p>>>0>>0){h=b;c=p}else{h=b;c=(p>>>0)%(b>>>0)|0}}while(0);b=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!b){p=a+8|0;b=f[q>>2]|0;f[b>>2]=f[p>>2];f[p>>2]=b;f[(f[a>>2]|0)+(c<<2)>>2]=p;c=f[b>>2]|0;if(!c)c=q;else{c=f[c+4>>2]|0;d=h+-1|0;if(d&h){if(c>>>0>=h>>>0)c=(c>>>0)%(h>>>0)|0}else c=c&d;f[(f[a>>2]|0)+(c<<2)>>2]=b;c=q}}else{a=f[q>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=a;c=q;b=a}f[i>>2]=(f[i>>2]|0)+1;f[c>>2]=0}u=r;return b+12|0}function Km(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=f[a+4>>2]|0;c=f[a>>2]|0;while(1){if((c|0)==(e|0))break;d=s8(20)|0;x=0;ua(2281,d|0,f[c>>2]|0);h=x;x=0;if(h&1){g=6;break}As(b,d);c=c+4|0}if((g|0)==6){h=Ia()|0;Cbb(d);Ua(h|0)}d=f[a+16>>2]|0;c=f[a+12>>2]|0;while(1){if((c|0)==(d|0))break;h=s8(24)|0;g=f[c>>2]|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[h+16>>2]=f[g+16>>2];f[h+20>>2]=f[g+20>>2];_s(b,h);c=c+4|0}d=f[a+28>>2]|0;c=f[a+24>>2]|0;while(1){if((c|0)==(d|0))break;h=s8(12)|0;g=f[c>>2]|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];Zs(b,h);c=c+4|0}d=f[a+40>>2]|0;c=f[a+36>>2]|0;while(1){if((c|0)==(d|0))break;Ht(f[c>>2]|0,b)|0;c=c+4|0}d=f[a+52>>2]|0;c=f[a+48>>2]|0;while(1){if((c|0)==(d|0))break;h=s8(16)|0;g=f[c>>2]|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];Ys(b,h);c=c+4|0}j0(b+60|0,a+60|0)|0;d=f[b+80>>2]|0;c=f[b+76>>2]|0;while(1){if((c|0)==(d|0))break;h=TY(f[c>>2]|0,b)|0;f[c>>2]=h;c=c+16|0}kX(b+88|0,a+88|0)|0;d=f[b+104>>2]|0;c=f[b+100>>2]|0;while(1){if((c|0)==(d|0))break;h=TY(f[c>>2]|0,b)|0;f[c>>2]=h;c=c+16|0}f[b+116>>2]=f[a+116>>2];if((b|0)!=(a|0)){wu(b+120|0,f[a+120>>2]|0,f[a+124>>2]|0);os(b+132|0,f[a+132>>2]|0,f[a+136>>2]|0)}return}function Lm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+48|0;m=o+24|0;h=o+16|0;l=o+20|0;n=o+12|0;p=o;f[h>>2]=e;do if(!(Aab(f[d>>2]|0)|0)){i=ql(a+44|0,h)|0;e=Uma(a,d,0)|0;f[l>>2]=e;j=i+4|0;h=f[j>>2]|0;k=i+8|0;if((h|0)==(f[k>>2]|0))LL(i,l);else{f[h>>2]=e;f[j>>2]=(f[j>>2]|0)+4}e=kC(a,d,1,0)|0;f[n>>2]=e;h=f[j>>2]|0;if((h|0)==(f[k>>2]|0)){LL(i,n);k=e;break}else{f[h>>2]=e;f[j>>2]=(f[j>>2]|0)+4;k=e;break}}else{f[n>>2]=a;f[l>>2]=a;k=a}while(0);f[p>>2]=0;i=p+4|0;f[i>>2]=0;j=p+8|0;f[j>>2]=0;if(!(g2a(f[b>>2]|0,f[b+4>>2]|0)|0)?(x=0,va(106,p|0,b|0,l|0),l=x,x=0,l&1):0)h=11;else h=13;a:do if((h|0)==13){do if(!(g2a(f[c>>2]|0,f[c+4>>2]|0)|0)){e=f[i>>2]|0;if(e>>>0>=(f[j>>2]|0)>>>0){x=0;va(106,p|0,c|0,n|0);n=x;x=0;if(n&1){h=11;break a}else break}x=0;ua(679,m|0,c|0);n=x;x=0;if(n&1){h=11;break a}x=0;va(107,e|0,m|0,k|0);n=x;x=0;if(n&1){e=Ia()|0;zSa(m);break a}else{zSa(m);f[i>>2]=(f[i>>2]|0)+16;break}}while(0);x=0;va(108,a|0,p|0,g|0);n=x;x=0;if(n&1)h=11;else{Maa(p);u=o;return}}while(0);if((h|0)==11)e=Ia()|0;Maa(p);Ua(e|0)}function Mm(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+36|0;j=l+24|0;m=l+12|0;k=l;h=Bc(a,c,e)|0;a:do if((h|0)!=(a|0)?(g=e+4|0,(f[e>>2]|0)!=(f[g>>2]|0)):0){oJ(m,d,123274);x=0;ua(3195,k|0,(f[g>>2]|0)+-24|0);e=x;x=0;if(e&1)a=Ia()|0;else{e=b[k+11>>0]|0;d=e<<24>>24<0;x=0;ja(97,m|0,(d?f[k>>2]|0:k)|0,(d?f[k+4>>2]|0:e&255)|0)|0;e=x;x=0;do if(e&1)a=Ia()|0;else{f[j>>2]=f[m>>2];f[j+4>>2]=f[m+4>>2];f[j+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,j|0,123272)|0;e=x;x=0;if(e&1){a=Ia()|0;MTa(j);break}f[i>>2]=f[j>>2];f[i+4>>2]=f[j+4>>2];f[i+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;d=a+-24|0;c=d+11|0;if((b[c>>0]|0)<0){Z0a(f[d>>2]|0,0);f[a+-20>>2]=0;a=d}else{Z0a(d,0);b[c>>0]=0;a=d}yv(d);f[a>>2]=f[i>>2];f[a+4>>2]=f[i+4>>2];f[a+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}MTa(i);MTa(j);MTa(k);MTa(m);a=h;break a}while(0);MTa(k)}MTa(m);Ua(a|0)}while(0);u=l;return a|0}function Nm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;c=u;u=u+64|0;e=c+36|0;g=c+48|0;h=c+24|0;i=c+12|0;k=c;j=Ps(a)|0;d=j&255;if((j<<24>>24|0)==(b<<24>>24|0)){u=c;return}j=Ea(12)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;c=j7a(99172)|0;x=0;va(87,k|0,99172,c|0);c=x;x=0;if(c&1){c=Ia()|0;a=1}else{x=0;ua(82,k|0,b|0);b=x;x=0;if(b&1){c=Ia()|0;a=1}else{f[i>>2]=f[k>>2];f[i+4>>2]=f[k+4>>2];f[i+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,i|0,99200)|0;b=x;x=0;if(b&1){c=Ia()|0;a=1}else{f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];a=0;while(1){if((a|0)==3)break;f[i+(a<<2)>>2]=0;a=a+1|0}x=0;ua(82,h|0,d|0);d=x;x=0;if(d&1){c=Ia()|0;a=1}else{f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;ia(59,g|0,99208)|0;d=x;x=0;if(d&1){c=Ia()|0;a=1}else{f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];a=0;while(1){if((a|0)==3)break;f[g+(a<<2)>>2]=0;a=a+1|0}x=0;ua(1882,j|0,e|0);d=x;x=0;if(d&1)a=1;else{x=0;va(98,j|0,34672,495);x=0;a=0}c=Ia()|0;MTa(e)}MTa(g)}MTa(h)}MTa(i)}MTa(k)}if(a)La(j|0);Ua(c|0)}function Om(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+8|0;j=k;g=a+26|0;b[g>>0]=(b[g>>0]|0)==0?b[c+26>>0]|0:1;g=a+27|0;b[g>>0]=(b[g>>0]|0)==0?b[c+27>>0]|0:1;g=a+76|0;b[g>>0]=(b[g>>0]|0)==0?b[c+76>>0]|0:1;g=a+77|0;b[g>>0]=(b[g>>0]|0)==0?b[c+77>>0]|0:1;g=c+32|0;h=a+28|0;e=f[c+28>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e+16>>2]|0;f[j>>2]=d;pH(i,h,d,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}g=c+44|0;h=a+40|0;e=f[c+40>>2]|0;while(1){if((e|0)==(g|0))break;d=f[e+16>>2]|0;f[j>>2]=d;pH(i,h,d,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}g=c+56|0;h=a+52|0;e=f[c+52>>2]|0;while(1){if((e|0)==(g|0))break;f[j>>2]=f[e+16>>2];dG(i,h,j,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}h=c+68|0;g=a+64|0;e=f[c+64>>2]|0;while(1){if((e|0)==(h|0))break;f[j>>2]=f[e+16>>2];dG(i,g,j,j);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}u=k;return}function Pm(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;n=o;i=Jbb(f[e>>2]|0)|0;p=Jbb(f[d+16>>2]|0)|0;j=d+8|0;e=b[j>>0]|0;c=e&255;a:do if(p>>>0>=c>>>0?(c+-1&i|0)==0:0){c=d+4|0;if(t6a(f[c>>2]|0)|0)switch(e<<24>>24){case 4:{HAa(a,+kb(31,i|0));break a}case 8:{pqa(a,+kb(32,i|0));break a}default:hb()}b:do switch(e<<24>>24){case 1:if(!(b[d+9>>0]|0)){l=rb(26,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}else{l=rb(25,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}case 2:if(!(b[d+9>>0]|0)){l=rb(28,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}else{l=rb(27,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}case 4:if(!(b[d+9>>0]|0)){k=rb(30,i|0)|0;l=0;break b}else{l=rb(29,i|0)|0;k=l;l=((l|0)<0)<<31>>31;break b}case 8:{k=rb(29,i|0)|0;l=rb(29,i+4|0)|0;break}default:hb()}while(0);if((f[c>>2]|0)==1){t$a(a,k);break}else{XSa(a,k,l);break}}else m=3;while(0);if((m|0)==3){p=d+4|0;m=(t6a(f[p>>2]|0)|0)&1;e=d+9|0;g=+ob(24,i|0,c|0,m|0,h[e>>0]|0,n|0);c=f[p>>2]|0;c:do if(!(t6a(c)|0)){if((c|0)!=2){t$a(a,~~g);break}if((b[j>>0]|0)==8){p=n;XSa(a,f[p>>2]|0,f[p+4>>2]|0);break}if(!(b[e>>0]|0)){XSa(a,~~g>>>0,0);break}else{p=~~g;XSa(a,p,((p|0)<0)<<31>>31);break}}else switch(b[j>>0]|0){case 4:{HAa(a,g);break c}case 8:{pqa(a,g);break c}default:hb()}while(0)}u=o;return}function Qm(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o+8|0;g=o+4|0;m=o;i=a+64|0;l=f[i>>2]|0;do if((f[l+52>>2]|0)!=(f[l+48>>2]|0)){l=a+72|0;do if(b[l>>0]|0){c=DCa(134176,87875)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(n);Wq(c,e)|0;fu(c)|0;break}o=Ia()|0;OCa(n);Ua(o|0)}while(0);k=E$(a,6)|0;j=a+68|0;d=f[j>>2]|0;e=f[i>>2]|0;n4a(g,(f[e+52>>2]|0)-(f[e+48>>2]|0)>>2);Yr(d,f[g>>2]|0)|0;d=f[i>>2]|0;e=f[d+52>>2]|0;d=f[d+48>>2]|0;while(1){if((d|0)==(e|0)){c=9;break}if(b[l>>0]|0){g=DCa(134176,87865)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;i=x;x=0;if(i&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;i=x;x=0;if(i&1){c=13;break}OCa(n);Wq(g,c)|0;fu(g)|0}i=f[j>>2]|0;Pr(i,r8(f[(f[d>>2]|0)+4>>2]|0)|0)|0;i=f[j>>2]|0;n4a(m,h[(f[d>>2]|0)+12>>0]|0);Yr(i,f[m>>2]|0)|0;Z7(a,f[(f[d>>2]|0)+8>>2]|0);Gv(f[j>>2]|0,11)|0;d=d+4|0}if((c|0)==9){WA(a,k);break}else if((c|0)==13){o=Ia()|0;OCa(n);Ua(o|0)}}while(0);u=o;return}function Rm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+64|0;h=m+56|0;d=m;e=m+48|0;j=m+40|0;k=m+32|0;l=m+24|0;g=m+16|0;cz(b);Dh(d,f[b>>2]|0);f[b>>2]=(f[b>>2]|0)+(f[d+8>>2]|0);a:do switch(f[d+12>>2]|0){case 0:{i=Mp(a,d,b,c)|0;break}case 2:{i=en(a,d,b,c)|0;break}case 5:case 4:case 3:{rTa(e,MY(d)|0);f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];i=pd(a,h,b,c)|0;break}case 6:{d=f[d>>2]|0;if(g2a(d,f[33225]|0)|0){rTa(j,KF(a,b)|0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];i=pd(a,h,b,c)|0;break a}if(g2a(d,f[33224]|0)|0){rTa(k,iC(a,b)|0);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];i=pd(a,h,b,c)|0;break a}if(g2a(d,f[33223]|0)|0){rTa(l,ct(a,b)|0);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];i=pd(a,h,b,c)|0;break a}else hb();break}case 1:{hSa(g,f[d>>2]|0);f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];i=pd(a,h,b,c)|0;break}default:hb()}while(0);u=m;return i|0}function Sm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;j=n;m=b+8|0;c=f[m>>2]|0;d=n$a(c)|0;a:do if(!d){if((f[c+4>>2]|0)==5){d=a+44|0;Roa(d,f[b+12>>2]|0);c=f[b+16>>2]|0;if(c|0)Roa(d,c);Pia(a,f[m>>2]|0)|0;break}h=b+16|0;c=f[h>>2]|0;i=c;if(!c){if(!(b7a(f[f[b+12>>2]>>2]|0)|0))break;b=f[a+36>>2]|0;Jbb(b)|0;_0a(j,b);Pia(a,lNa(f[j>>2]|0,f[m>>2]|0)|0)|0;break}d=f[c>>2]|0;if(b7a(d)|0){f[h>>2]=0;break}e=b+12|0;g=f[e>>2]|0;c=f[g>>2]|0;if(b7a(c)|0){f[e>>2]=i;f[h>>2]=0;a=f[a+36>>2]|0;Jbb(a)|0;_0a(j,a);a=rBa(f[j>>2]|0,20,f[m>>2]|0)|0;f[m>>2]=a;break}if((S6a(c)|0?S6a(d)|0:0)?(k=(dSa(g)|0)+8|0,k=f[k>>2]|0,l=(dSa(f[h>>2]|0)|0)+8|0,l=f[l>>2]|0,(f[k+4>>2]|0)==(f[l+4>>2]|0)):0){f[e>>2]=k;f[h>>2]=l;NI(b);m=f[a+36>>2]|0;Jbb(m)|0;_0a(j,m);Pia(a,lNa(f[j>>2]|0,b)|0)|0}}else{m=Jia(d+8|0)|0;do if((m|0)==0&(I|0)==0){c=f[b+16>>2]|0;d=a+44|0;if(!c){Roa(d,b);uVa(b);break a}else{Roa(d,f[b+12>>2]|0);break}}else{c=f[b+12>>2]|0;d=f[b+16>>2]|0;if(d)Roa(a+44|0,d)}while(0);Pia(a,c)|0}while(0);u=n;return}function Tm(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;m=l;i=a+4|0;j=a+8|0;k=(f[j>>2]|0)-(f[i>>2]|0)>>2;g=((k*25|0)>>>0)/100|0;e=((k*50|0)>>>0)/100|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;x=0;ua(3131,m|0,e|0);d=x;x=0;do if(!(d&1)){b=0;while(1){if(b>>>0>=e>>>0)break;n=f[a>>2]|0;d=Q7(a)|0;d=f[(f[i>>2]|0)+(d<<2)>>2]|0;c=Q7(a)|0;x=0;c=ja(90,n|0,d|0,f[(f[i>>2]|0)+(c<<2)>>2]|0)|0;d=x;x=0;if(d&1){h=10;break}n=(f[m>>2]|0)+(b<<2)|0;d=f[n>>2]|0;f[n>>2]=c;if(d|0){zSa(d);Cbb(d)}b=b+1|0}if((h|0)==10){b=Ia()|0;break}b=0;while(1){if(b>>>0>=e>>>0)break;d=(f[i>>2]|0)+(b+g<<2)|0;n=(f[m>>2]|0)+(b<<2)|0;h=f[d>>2]|0;f[d>>2]=f[n>>2];f[n>>2]=h;b=b+1|0}b=g+e|0;while(1){if(b>>>0>=k>>>0){h=20;break}x=0;c=ga(326,f[a>>2]|0)|0;n=x;x=0;if(n&1){h=19;break}n=(f[i>>2]|0)+(b<<2)|0;d=f[n>>2]|0;f[n>>2]=c;if(d|0){zSa(d);Cbb(d)}b=b+1|0}if((h|0)==19){b=Ia()|0;break}else if((h|0)==20){N8(f[a+4>>2]|0,f[j>>2]|0);QY(m);u=l;return}}else b=Ia()|0;while(0);QY(m);Ua(b|0)}function Um(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;c=o+28|0;h=o+20|0;i=o+24|0;n=o+8|0;j=o+4|0;k=o;g=NJ(f[a+8>>2]|0)|0;l=g;m=Jbb(f[b+24>>2]|0)|0;do if(!((m|0)==0|(Qab(g)|0)^1)){d=f[b+28>>2]|0;e=Jbb(d)|0;_0a(h,d);g=a+4|0;do if((m|0)==2&(f[g>>2]|0)!=2){$w(b);m=saa(f[a+12>>2]|0,d+144|0)|0;L1a(i,f[33024]|0);f[j>>2]=m;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;x=0;ua(168,n|0,1);m=x;x=0;if(m&1){o=Ia()|0;zSa(n);Ua(o|0)}qda(n,j,j+4|0);x=0;f[c>>2]=f[i>>2];a=ka(10,h|0,c|0,n|0,1)|0;m=x;x=0;if(m&1){a=Ia()|0;zSa(n);c=15;break}else{zSa(n);c=14;break}}else{nY(a,e,b);f[k>>2]=l;f[j>>2]=f[a+12>>2];f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;x=0;ua(168,n|0,1);m=x;x=0;if(m&1){o=Ia()|0;zSa(n);Ua(o|0)}qda(n,j,j+4|0);a=f[g>>2]|0;x=0;f[c>>2]=f[k>>2];a=ka(13,h|0,c|0,n|0,a|0)|0;m=x;x=0;if(m&1){a=Ia()|0;zSa(n);c=15;break}else{zSa(n);c=14;break}}while(0);if((c|0)==14)break;else if((c|0)==15)Ua(a|0)}while(0);u=o;return a|0}function Vm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(R6a(c)|0)){if(!(zab(c)|0)){if(Dab(c)|0){g=(vSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76969,76794,128,76996)}if(X7a(c)|0){e=NRa(d)|0;b=e+8|0;Q$a(i,b);LUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=QOa(i)|0;f[j>>2]=f[h>>2];dG(k,b,j,j);YYa(i)}e=e+24|0;dG(k,b,e,e);e=18}else e=18}}else{c=$Ra(d)|0;if(f[c+12>>2]|0){e=c+8|0;dG(k,a+68|0,e,e);e=18;break}e=ZW(a+56|0,c+8|0)|0;f[k>>2]=b;J4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(1258,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;YMa(k);Ua(l|0)}}else{TLa(d,k);f[c>>2]=(f[c>>2]|0)+16}YMa(k);e=18}while(0);if((e|0)==18)y3(a+44|0);u=l;return}function Wm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(R6a(c)|0)){if(!(zab(c)|0)){if(Dab(c)|0){g=(vSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76969,76794,128,76996)}if(X7a(c)|0){e=NRa(d)|0;b=e+8|0;Q$a(i,b);LUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=QOa(i)|0;f[j>>2]=f[h>>2];dG(k,b,j,j);YYa(i)}e=e+24|0;dG(k,b,e,e);e=18}else e=18}}else{c=$Ra(d)|0;if(f[c+12>>2]|0){e=c+8|0;dG(k,a+68|0,e,e);e=18;break}e=ZW(a+56|0,c+8|0)|0;f[k>>2]=b;J4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(1038,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;_Ma(k);Ua(l|0)}}else{TLa(d,k);f[c>>2]=(f[c>>2]|0)+16}_Ma(k);e=18}while(0);if((e|0)==18)A3(a+44|0);u=l;return}function Xm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(R6a(c)|0)){if(!(zab(c)|0)){if(Dab(c)|0){g=(vSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76969,76794,128,76996)}if(X7a(c)|0){e=NRa(d)|0;b=e+8|0;Q$a(i,b);LUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=QOa(i)|0;f[j>>2]=f[h>>2];dG(k,b,j,j);YYa(i)}e=e+24|0;dG(k,b,e,e);e=18}else e=18}}else{c=$Ra(d)|0;if(f[c+12>>2]|0){e=c+8|0;dG(k,a+68|0,e,e);e=18;break}e=ZW(a+56|0,c+8|0)|0;f[k>>2]=b;J4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(1163,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;aNa(k);Ua(l|0)}}else{TLa(d,k);f[c>>2]=(f[c>>2]|0)+16}aNa(k);e=18}while(0);if((e|0)==18)C3(a+44|0);u=l;return}function Ym(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(R6a(c)|0)){if(!(zab(c)|0)){if(Dab(c)|0){g=(vSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76969,76794,128,76996)}if(X7a(c)|0){e=NRa(d)|0;b=e+8|0;Q$a(i,b);LUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=QOa(i)|0;f[j>>2]=f[h>>2];dG(k,b,j,j);YYa(i)}e=e+24|0;dG(k,b,e,e);e=18}else e=18}}else{c=$Ra(d)|0;if(f[c+12>>2]|0){e=c+8|0;dG(k,a+68|0,e,e);e=18;break}e=ZW(a+56|0,c+8|0)|0;f[k>>2]=b;J4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(943,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;ZMa(k);Ua(l|0)}}else{TLa(d,k);f[c>>2]=(f[c>>2]|0)+16}ZMa(k);e=18}while(0);if((e|0)==18)z3(a+44|0);u=l;return}function Zm(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+48|0;k=l+24|0;i=l+16|0;h=l+8|0;j=l;d=f[b>>2]|0;c=f[d>>2]|0;do if(!(R6a(c)|0)){if(!(zab(c)|0)){if(Dab(c)|0){g=(vSa(d)|0)+16|0;if(!(f[g>>2]|0)){e=18;break}Ca(76969,76794,128,76996)}if(X7a(c)|0){e=NRa(d)|0;b=e+8|0;Q$a(i,b);LUa(h,b);b=a+68|0;g=i+4|0;d=f[h>>2]|0;c=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,d,c)|0))break;h=QOa(i)|0;f[j>>2]=f[h>>2];dG(k,b,j,j);YYa(i)}e=e+24|0;dG(k,b,e,e);e=18}else e=18}}else{c=$Ra(d)|0;if(f[c+12>>2]|0){e=c+8|0;dG(k,a+68|0,e,e);e=18;break}e=ZW(a+56|0,c+8|0)|0;f[k>>2]=b;J4(k+4|0,a+44|0);c=e+4|0;d=f[c>>2]|0;if(d>>>0>=(f[e+8>>2]|0)>>>0){x=0;ua(820,e|0,k|0);j=x;x=0;if(j&1){l=Ia()|0;$Ma(k);Ua(l|0)}}else{TLa(d,k);f[c>>2]=(f[c>>2]|0)+16}$Ma(k);e=18}while(0);if((e|0)==18)B3(a+44|0);u=l;return}function _m(a,b){a=a|0;b=b|0;if(!b)Ca(110558,115840,78,110563);do switch(f[b>>2]|0){case 1:{mL(a,b);break}case 2:{gY(a,b);break}case 3:{NL(a,b);break}case 4:{q3(a,b);break}case 5:{_B(a,b);break}case 6:{Qma(a,b);break}case 7:{Qma(a,b);break}case 8:{kha(f[a+4>>2]|0,b);break}case 9:{kea(a,b);break}case 10:{PX(a,b);break}case 11:{zla(a,b);break}case 12:{yla(a,b);break}case 13:{gu(a,b);break}case 14:{vu(a,b);break}case 24:{Ez(a,b);break}case 25:{RU(a,b);break}case 26:{WW(a,b);break}case 27:{v3(a,b);break}case 15:{p7(f[a+4>>2]|0,b);break}case 16:{Kh(f[a+4>>2]|0,f[b+8>>2]|0);break}case 17:{_f(f[a+4>>2]|0,f[b+8>>2]|0);break}case 18:{BRa(f[a+4>>2]|0);break}case 19:{iUa(f[a+4>>2]|0);break}case 20:{tTa(f[a+4>>2]|0);break}case 21:{oQ(a,b);break}case 22:{HUa(f[a+4>>2]|0);break}case 23:{MRa(f[a+4>>2]|0);break}default:hb()}while(0);return}function $m(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;h=n+24|0;j=n;i=n+20|0;m=n+8|0;do if(b[a+12>>0]|0){g=DCa(134176,110991)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(h);Wq(g,e)|0;fu(g)|0;break}n=Ia()|0;OCa(h);Ua(n|0)}while(0);g=lx(a)|0;k=c+4|0;f[k>>2]=g;g=Tz(a)|0;f[c+8>>2]=g;l=c+8|0;f[i>>2]=g;f[h>>2]=f[i>>2];hUa(j,h,0);g=a+160|0;d=f[g>>2]|0;if(d>>>0<(f[a+164>>2]|0)>>>0){h=j;i=f[h+4>>2]|0;j=d;f[j>>2]=f[h>>2];f[j+4>>2]=i;f[g>>2]=(f[g>>2]|0)+8}else uF(a+156|0,j);e=a+188|0;j=a+192|0;d=(f[j>>2]|0)-(f[e>>2]|0)>>2;Cj(a);e=(f[j>>2]|0)-(f[e>>2]|0)>>2;if((e-d|0)==1)d=Dm(a)|0;else{do if(e>>>0>>0){f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;_Z(m,97464,j7a(97464)|0);x=0;ua(1870,a|0,m|0);j=x;x=0;if(j&1){n=Ia()|0;MTa(m);Ua(n|0)}else{MTa(m);break}}while(0);m=eSa(f[a+4>>2]|0)|0;hr(a,m,d,e);aKa(m,f[k>>2]|0);d=m}f[c+12>>2]=d;f[g>>2]=(f[g>>2]|0)+-8;b5(a+168|0,l);bIa(c,f[k>>2]|0);u=n;return}function an(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+64|0;h=k;l=k+44|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;f[l+16>>2]=1065353216;i=c+36|0;j=c+40|0;b=f[j>>2]|0;a=f[i>>2]|0;while(1){if((a|0)==(b|0)){g=3;break}x=0;ia(154,l|0,f[a>>2]|0)|0;g=x;x=0;if(g&1){g=6;break}a=a+4|0}do if((g|0)==3){rza(h,c);p4a(h);x=0;ua(1568,h|0,l|0);e=x;x=0;if(!(e&1)?(x=0,ta(438,h|0),e=x,x=0,!(e&1)):0){Wca(h);a=c+116|0;if(Qab(f[a>>2]|0)|0){x=0;a=ia(154,l|0,a|0)|0;e=x;x=0;if(!(e&1)){f[a>>2]=(f[a>>2]|0)+1;g=13}}else g=13;if((g|0)==13){b=f[c+28>>2]|0;a=f[c+24>>2]|0;while(1){if((a|0)==(b|0))break;x=0;d=ia(154,l|0,(f[a>>2]|0)+4|0)|0;e=x;x=0;if(e&1){g=18;break}f[d>>2]=(f[d>>2]|0)+1;a=a+4|0}if((g|0)==18){a=Ia()|0;break}e=f[c+80>>2]|0;b=f[c+76>>2]|0;a:while(1){if((b|0)==(e|0))break;d=f[b+8>>2]|0;a=f[b+4>>2]|0;while(1){if((a|0)==(d|0))break;x=0;c=ia(154,l|0,a|0)|0;m=x;x=0;if(m&1){g=26;break a}f[c>>2]=(f[c>>2]|0)+1;a=a+4|0}b=b+16|0}if((g|0)==26){a=Ia()|0;break}i=f[i>>2]|0;m=f[j>>2]|0;f[h>>2]=l;x=0;va(135,i|0,m|0,h|0);m=x;x=0;if(!(m&1)){SQa(l);u=k;return}}a=Ia()|0;break}a=Ia()|0;Wca(h)}else if((g|0)==6)a=Ia()|0;while(0);SQa(l);Ua(a|0)}function bn(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+16|0;j=m+8|0;i=m;k=a+33|0;do if(b[k>>0]|0){g=DCa(134176,87664)|0;dYa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[l>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,h=x,x=0,!(h&1)):0){OCa(l);Wq(g,e)|0;fu(g)|0;break}m=Ia()|0;OCa(l);Ua(m|0)}while(0);e=a+28|0;Gv(f[e>>2]|0,2)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,r8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))LL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}h=c+12|0;Q$a(j,h);LUa(i,h);h=j+4|0;a=f[i>>2]|0;g=f[i+4>>2]|0;d=0;while(1){if(!(qTa(f[j>>2]|0,f[h>>2]|0,a,g)|0)){d=11;break}QOa(j)|0;if(b[k>>0]|0){zm(DCa(zm(DCa(134176,87679)|0,c)|0,111106)|0,d)|0;dYa(l,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[l>>2]|0,134880)|0;i=x;x=0;if(i&1){d=15;break}x=0;e=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0;i=x;x=0;if(i&1){d=15;break}OCa(l);Wq(134176,e)|0;fu(134176)|0;d=d+1|0}YYa(j)}if((d|0)==11){u=m;return}else if((d|0)==15){m=Ia()|0;OCa(l);Ua(m|0)}}function cn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,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=u;u=u+16|0;p=r+8|0;q=r;d=a+4|0;a:do if(b){if(b>>>0>1073741823){c=Ea(8)|0;x=0;ua(98,c|0,121961);r=x;x=0;if(r&1){r=Ia()|0;La(c|0);Ua(r|0)}else{f[c>>2]=50472;Pa(c|0,39488,418)}}o=s8(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)Cbb(c);f[d>>2]=b;c=0;while(1){if((c|0)==(b|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}e=a+8|0;d=f[e>>2]|0;if(d|0){c=f[d+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(!o){if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0}else c=c&n;f[(f[a>>2]|0)+(c<<2)>>2]=e;l=p+4|0;m=q+4|0;while(1){k=d;b:while(1){while(1){d=f[k>>2]|0;if(!d)break a;e=f[d+4>>2]|0;if(!o){if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0}else e=e&n;if((e|0)==(c|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0))break b;g=d+8|0;j=d;while(1){h=f[j>>2]|0;if(!h){i=30;break}ZUa(p,g);ZUa(q,h+8|0);if(!(RAa(f[p>>2]|0,f[l>>2]|0,f[q>>2]|0,f[m>>2]|0)|0)){i=32;break}j=f[j>>2]|0}if((i|0)==30){h=j;g=0}else if((i|0)==32){h=j;g=f[j>>2]|0}f[k>>2]=g;f[h>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=d}k=d}f[g>>2]=k;c=e}}}else{c=f[a>>2]|0;f[a>>2]=0;if(c|0)Cbb(c);f[d>>2]=0}while(0);u=r;return}function dn(a,b){a=a|0;b=b|0;a:do switch(a|0){case 1:do switch(b|0){case 1:{a=0;break a}case 2:{a=1;break a}case 3:{a=2;break a}case 4:{a=4;break a}case 5:{a=3;break a}case 7:{a=6;break a}case 8:{a=5;break a}case 9:{a=10;break a}case 10:{a=11;break a}case 11:{a=12;break a}case 12:{a=7;break a}case 13:{a=8;break a}case 14:{a=9;break a}case 15:{a=15;break a}case 16:{a=16;break a}default:{a=76;break a}}while(0);case 2:do switch(b|0){case 1:{a=25;break a}case 2:{a=26;break a}case 3:{a=27;break a}case 4:{a=29;break a}case 5:{a=28;break a}case 7:{a=31;break a}case 8:{a=30;break a}case 9:{a=35;break a}case 10:{a=36;break a}case 11:{a=37;break a}case 12:{a=32;break a}case 13:{a=33;break a}case 14:{a=34;break a}case 15:{a=40;break a}case 16:{a=41;break a}default:{a=76;break a}}while(0);case 3:switch(b|0){case 1:{a=50;break a}case 2:{a=51;break a}case 3:{a=52;break a}case 4:{a=53;break a}case 5:{a=53;break a}case 15:{a=57;break a}case 16:{a=58;break a}default:{a=76;break a}}case 4:switch(b|0){case 1:{a=63;break a}case 2:{a=64;break a}case 3:{a=65;break a}case 4:{a=66;break a}case 5:{a=66;break a}case 15:{a=70;break a}case 16:{a=71;break a}default:{a=76;break a}}default:a=76}while(0);return a|0}function en(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+48|0;l=o+32|0;g=o+24|0;h=o+16|0;j=o+8|0;m=o;cz(d);i=f[d>>2]|0;k=b[i>>0]|0;a:do switch(k<<24>>24){case 40:{rTa(g,_w(a,MY(c)|0,d)|0);f[l>>2]=f[g>>2];f[l+4>>2]=f[g+4>>2];g=pd(a,l,d,e)|0;break}case 91:{rTa(h,iD(a,MY(c)|0,d)|0);f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];g=pd(a,l,d,e)|0;break}case 58:{k=f[a+4>>2]|0;if((f[k+-8>>2]|0)!=(f[k+-12>>2]|0)){g=MY(c)|0;n=12;break a}f[d>>2]=i+1;cz(d);n4a(l,0);if((b[f[d>>2]>>0]|0)==123)g=LO(a,d)|0;else g=Rm(a,d,e)|0;g=NX(f[c>>2]|0,g)|0;break}default:{g=MY(c)|0;if(k<<24>>24==46){rTa(j,QT(g,d)|0);f[l>>2]=f[j>>2];f[l+4>>2]=f[j+4>>2];g=pd(a,l,d,e)|0}else n=12}}while(0);if((n|0)==12){rTa(m,g);f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];g=pd(a,l,d,e)|0}u=o;return g|0}function fn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k;i=a+72|0;do if(b[i>>0]|0){e=DCa(134176,87123)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[j>>2]|0,134880)|0;h=x;x=0;if(!(h&1)?(x=0,d=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0,h=x,x=0,!(h&1)):0){OCa(j);Wq(e,d)|0;fu(e)|0;break}k=Ia()|0;OCa(j);Ua(k|0)}while(0);g=f[a+56>>2]|0;h=a+68|0;a=f[a+52>>2]|0;while(1){if((a|0)==(g|0)){c=8;break}if(!(b[i>>0]|0)){e=a;c=a+8|0}else{c=DCa(134176,87132)|0;c=DCa(Am(c,b[f[a>>2]>>0]|0)|0,123342)|0;c=DCa(Am(c,b[(f[a>>2]|0)+1>>0]|0)|0,87147)|0;e=f[h>>2]|0;e=DCa(zm(c,(f[e+4>>2]|0)-(f[e>>2]|0)|0)|0,87152)|0;c=a+8|0;e=zm(e,f[c>>2]|0)|0;dYa(j,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[j>>2]|0,134880)|0;l=x;x=0;if(l&1){c=13;break}x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;l=x;x=0;if(l&1){c=13;break}OCa(j);Wq(e,d)|0;fu(e)|0;e=a}d=f[h>>2]|0;Lx(d,f[c>>2]|0,(f[d+4>>2]|0)-(f[d>>2]|0)|0);d=a+4|0;c=0;while(1){if(c>>>0>=(f[d>>2]|0)>>>0)break;gYa(f[h>>2]|0,b[(f[e>>2]|0)+c>>0]|0)|0;c=c+1|0}a=a+12|0}if((c|0)==8){u=k;return}else if((c|0)==13){l=Ia()|0;OCa(j);Ua(l|0)}}function gn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=u;u=u+96|0;e=i+68|0;k=i+56|0;j=i+12|0;d=i;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;h=b+36|0;d9(k,h);x=0;ta(486,b|0);l=x;x=0;do if(l&1)a=Ia()|0;else{a=a+8|0;while(1){a=f[a>>2]|0;if(!a)break;x=0;ua(73,b|0,f[a+8>>2]|0);l=x;x=0;if(l&1){g=8;break}}if((g|0)==8){a=Ia()|0;break}l=c+20|0;f[e>>2]=f[l>>2];f[e+4>>2]=f[l+4>>2];f[e+8>>2]=f[l+8>>2];f[e+12>>2]=f[l+12>>2];f[e+16>>2]=f[l+16>>2];r3(j,b,e);p4a(j);A_a(j,0);f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;l=j7a(109909)|0;x=0;va(87,d|0,109909,l|0);l=x;x=0;do if(!(l&1)){x=0;ua(80,j|0,d|0);l=x;x=0;if(l&1){a=Ia()|0;MTa(d);break}MTa(d);x=0;ta(434,j|0);l=x;x=0;if(!(l&1)?(x=0,ta(438,j|0),l=x,x=0,!(l&1)):0){c=f[b+40>>2]|0;a=f[h>>2]|0;while(1){if((a|0)==(c|0))break;f[a>>2]=0;a=a+4|0}d9(k,h);x=0;ta(486,b|0);l=x;x=0;if(!(l&1)){Wca(j);H1(k);u=i;return}else g=15}else g=15}else g=15;while(0);if((g|0)==15)a=Ia()|0;Wca(j)}while(0);H1(k);Ua(a|0)}function hn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=h+8|0;f[e>>2]=b;f[g>>2]=e;f[g+4>>2]=134008;Rha(g);Ema(xm(Ema(134008,91)|0,a)|0,32)|0;switch(f[a>>2]|0){case 0:{xm(Ema(DCa(DCa(134008,75975)|0,Fha(f[a+4>>2]|0)|0)|0,32)|0,a)|0;c=10;break}case 1:{DCa(134008,75980)|0;lw(f[a+4>>2]|0,134008,1,0)|0;c=10;break}case 2:{zm(DCa(134008,75986)|0,f[a+4>>2]|0)|0;c=10;break}case 3:{zm(DCa(134008,75991)|0,f[a+4>>2]|0)|0;c=10;break}case 4:{DCa(zm(DCa(134008,75997)|0,(f[a+16>>2]|0)-(f[a+12>>2]|0)>>2)|0,76005)|0;break}case 5:{DCa(134008,76015)|0;c=10;break}case 6:{DCa(134008,76020)|0;c=10;break}default:hb()}if((c|0)==10){c=a+12|0;b=a+16|0;if((f[c>>2]|0)!=(f[b>>2]|0)){Ema(134008,10)|0;d=f[b>>2]|0;b=f[c>>2]|0;while(1){if((b|0)==(d|0))break;hn(f[b>>2]|0,(f[e>>2]|0)+1|0);b=b+4|0}Rha(g)}g=DCa(134008,76024)|0;DCa(xm(g,f[a+8>>2]|0)|0,87606)|0}u=h;return}function jn(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;g=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=d7a(b[h>>0]|0)|0;if(g2a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}else h=1;while(0);if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0))g=bc[f[(f[c>>2]|0)+36>>2]&511](c)|0;else g=d7a(b[g>>0]|0)|0;if(!(g2a(g,-1)|0))if(h){i=c;j=16}else j=15;else j=13}else j=13;if((j|0)==13)if(h)j=15;else{i=0;j=16}do if((j|0)==15)f[d>>2]=f[d>>2]|6;else if((j|0)==16){g=f[a>>2]|0;h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=d7a(b[h>>0]|0)|0;if((ec[f[(f[e>>2]|0)+36>>2]&127](e,g&255,0)|0)<<24>>24!=37){f[d>>2]=f[d>>2]|4;break}g=f[a>>2]|0;h=g+12|0;c=f[h>>2]|0;if((c|0)==(f[g+16>>2]|0)){bc[f[(f[g>>2]|0)+40>>2]&511](g)|0;g=f[a>>2]|0;if(!g)h=1;else j=24}else{f[h>>2]=c+1;j=24}do if((j|0)==24){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))g=bc[f[(f[g>>2]|0)+36>>2]&511](g)|0;else g=d7a(b[h>>0]|0)|0;if(g2a(g,-1)|0){f[a>>2]=0;h=1;break}else{h=(f[a>>2]|0)==0;break}}while(0);if(i){g=f[i+12>>2]|0;if((g|0)==(f[i+16>>2]|0))g=bc[f[(f[i>>2]|0)+36>>2]&511](i)|0;else g=d7a(b[g>>0]|0)|0;if(!(g2a(g,-1)|0)){if(h)break}else j=35}else j=35;if((j|0)==35?!h:0)break;f[d>>2]=f[d>>2]|2}while(0);return}function kn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+352|0;m=v+320|0;l=v+304|0;i=v+296|0;h=v+280|0;k=v+272|0;q=v+240|0;n=v+340|0;g=v;t=v+336|0;r=v+332|0;s=v+328|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=TI(k+1|0,119972,f[o>>2]|0)|0;f[n>>2]=q;a=kOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Hga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Hga(q,30,a,k,i)|0}do if((a|0)>29){a=kOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Gja(n,a,k,l)|0}else{p[m>>3]=e;a=Gja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=AS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<3)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){dYa(s,c);x=0;za(7,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;OCa(s)}else{OCa(s);x=0;a=oa(47,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0}function ln(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+352|0;m=v+320|0;l=v+304|0;i=v+296|0;h=v+280|0;k=v+272|0;q=v+240|0;n=v+340|0;g=v;t=v+336|0;r=v+332|0;s=v+328|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=TI(k+1|0,135337,f[o>>2]|0)|0;f[n>>2]=q;a=kOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Hga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Hga(q,30,a,k,i)|0}do if((a|0)>29){a=kOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Gja(n,a,k,l)|0}else{p[m>>3]=e;a=Gja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=AS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<3)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){dYa(s,c);x=0;za(7,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;OCa(s)}else{OCa(s);x=0;a=oa(47,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0}function mn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+176|0;m=v+144|0;l=v+128|0;i=v+120|0;h=v+104|0;k=v+96|0;q=v+64|0;n=v+164|0;g=v;t=v+160|0;r=v+156|0;s=v+152|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=TI(k+1|0,119972,f[o>>2]|0)|0;f[n>>2]=q;a=kOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Hga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Hga(q,30,a,k,i)|0}do if((a|0)>29){a=kOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Gja(n,a,k,l)|0}else{p[m>>3]=e;a=Gja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=AS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<1)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){dYa(s,c);x=0;za(5,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;OCa(s)}else{OCa(s);x=0;a=oa(39,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0}function nn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+176|0;m=v+144|0;l=v+128|0;i=v+120|0;h=v+104|0;k=v+96|0;q=v+64|0;n=v+164|0;g=v;t=v+160|0;r=v+156|0;s=v+152|0;o=k;f[o>>2]=37;f[o+4>>2]=0;o=c+4|0;j=TI(k+1|0,135337,f[o>>2]|0)|0;f[n>>2]=q;a=kOa()|0;if(j){f[h>>2]=f[c+8>>2];p[h+8>>3]=e;a=Hga(q,30,a,k,h)|0}else{p[i>>3]=e;a=Hga(q,30,a,k,i)|0}do if((a|0)>29){a=kOa()|0;if(j){f[l>>2]=f[c+8>>2];p[l+8>>3]=e;a=Gja(n,a,k,l)|0}else{p[m>>3]=e;a=Gja(n,a,k,m)|0}h=f[n>>2]|0;if(!h){x=0;sa(10);x=0;a=Ia()|0;break}else{l=h;k=h;w=11;break}}else{l=0;k=q;w=11}while(0);if((w|0)==11){j=k+a|0;i=AS(k,j,f[o>>2]|0)|0;do if((k|0)!=(q|0)){a=Kc(a<<1)|0;if(!a){x=0;sa(10);x=0;a=Ia()|0;break}else{g=a;h=a;w=15;break}}else{h=0;w=15}while(0);if((w|0)==15){dYa(s,c);x=0;za(5,k|0,i|0,j|0,g|0,t|0,r|0,s|0);w=x;x=0;do if(w&1){a=Ia()|0;OCa(s)}else{OCa(s);x=0;a=oa(39,f[b>>2]|0,g|0,f[t>>2]|0,f[r>>2]|0,c|0,d|0)|0;w=x;x=0;if(w&1){a=Ia()|0;break}f[b>>2]=a;if(h|0)rg(h);if(l|0)rg(l);u=v;return a|0}while(0);if(h)rg(h)}if(l)rg(l)}Ua(a|0);return 0}function on(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o+12|0;g=o+8|0;l=o+4|0;m=o;h=a+64|0;k=f[h>>2]|0;do if((f[k+40>>2]|0)!=(f[k+36>>2]|0)){k=a+72|0;do if(b[k>>0]|0){c=DCa(134176,87939)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[n>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(n);Wq(c,e)|0;fu(c)|0;break}o=Ia()|0;OCa(n);Ua(o|0)}while(0);j=E$(a,3)|0;i=a+68|0;d=f[i>>2]|0;e=f[h>>2]|0;n4a(g,(f[e+40>>2]|0)-(f[e+36>>2]|0)>>2);Yr(d,f[g>>2]|0)|0;d=f[h>>2]|0;e=f[d+40>>2]|0;d=f[d+36>>2]|0;while(1){if((d|0)==(e|0)){c=9;break}if(b[k>>0]|0){g=DCa(134176,87865)|0;dYa(n,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[n>>2]|0,134880)|0;h=x;x=0;if(h&1){c=13;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;h=x;x=0;if(h&1){c=13;break}OCa(n);Wq(g,c)|0;fu(g)|0}h=f[i>>2]|0;f[m>>2]=f[(f[d>>2]|0)+32>>2];f[n>>2]=f[m>>2];n4a(l,k0(a,n)|0);Yr(h,f[l>>2]|0)|0;d=d+4|0}if((c|0)==9){WA(a,j);break}else if((c|0)==13){o=Ia()|0;OCa(n);Ua(o|0)}}while(0);u=o;return}function pn(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;k=m;l=a+64|0;a:do if(!(f[l>>2]|0))c=0;else{j=a+68|0;d=f[j>>2]|0;if(!d){m=Ea(4)|0;Cab(m);Pa(m|0,39536,426)}i=a+92|0;c=f[i>>2]|0;if(!(c&16)){if(c&8|0){e=a+80|0;g=f[e+4>>2]|0;h=k;f[h>>2]=f[e>>2];f[h+4>>2]=g;do if(!(b[a+98>>0]|0)){e=bc[f[(f[d>>2]|0)+24>>2]&511](d)|0;h=a+36|0;g=f[h>>2]|0;c=(f[a+40>>2]|0)-g|0;if((e|0)>0){d=0;c=(X((f[a+16>>2]|0)-(f[a+12>>2]|0)|0,e)|0)+c|0;break}d=f[a+12>>2]|0;if((d|0)==(f[a+16>>2]|0))d=0;else{e=f[j>>2]|0;j=a+32|0;g=hc[f[(f[e>>2]|0)+32>>2]&31](e,k,f[j>>2]|0,g,d-(f[a+8>>2]|0)|0)|0;d=1;c=c-g+(f[h>>2]|0)-(f[j>>2]|0)|0}}else{d=0;c=(f[a+16>>2]|0)-(f[a+12>>2]|0)|0}while(0);if(R0a(f[l>>2]|0,0-c|0,1)|0){c=-1;break}if(d){j=k;k=f[j+4>>2]|0;l=a+72|0;f[l>>2]=f[j>>2];f[l+4>>2]=k}l=f[a+32>>2]|0;f[a+40>>2]=l;f[a+36>>2]=l;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[i>>2]=0}}else{if((f[a+24>>2]|0)!=(f[a+20>>2]|0)?(dc[f[(f[a>>2]|0)+52>>2]&255](a,-1)|0)==-1:0){c=-1;break}e=a+72|0;g=a+32|0;c=a+52|0;b:while(1){i=f[j>>2]|0;d=f[g>>2]|0;d=hc[f[(f[i>>2]|0)+20>>2]&31](i,e,d,d+(f[c>>2]|0)|0,k)|0;i=f[g>>2]|0;a=(f[k>>2]|0)-i|0;if((LHa(i,1,a,f[l>>2]|0)|0)!=(a|0)){c=-1;break a}switch(d|0){case 2:{c=-1;break a}case 1:break;default:break b}}if(Z0(f[l>>2]|0)|0){c=-1;break}}c=0}while(0);u=m;return c|0}function qn(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;n=m;i=m+36|0;l=m+32|0;j=m+28|0;k=m+24|0;a:do if(!(f[e+4>>2]&1)){f[l>>2]=-1;o=f[(f[a>>2]|0)+16>>2]|0;f[j>>2]=f[c>>2];f[k>>2]=f[d>>2];f[i>>2]=f[j>>2];f[n>>2]=f[k>>2];i=jc[o&63](a,i,n,e,g,l)|0;f[c>>2]=i;switch(f[l>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}}else{dYa(n,e);x=0;j=ia(73,f[n>>2]|0,134912)|0;o=x;x=0;do if(o&1){i=Ia()|0;OCa(n)}else{OCa(n);dYa(n,e);x=0;i=ia(73,f[n>>2]|0,134920)|0;o=x;x=0;if(o&1){i=Ia()|0;OCa(n);break}OCa(n);x=0;ua(f[(f[i>>2]|0)+24>>2]|0,n|0,i|0);o=x;x=0;do if(!(o&1)){x=0;ua(f[(f[i>>2]|0)+28>>2]|0,n+12|0,i|0);o=x;x=0;if(o&1){i=Ia()|0;oTa(n);break}a=n+24|0;x=0;i=pa(20,c|0,f[d>>2]|0,n|0,a|0,j|0,g|0,1)|0;o=x;x=0;if(o&1){i=Ia()|0;j=I;do{a=a+-12|0;oTa(a)}while((a|0)!=(n|0));break}else{b[h>>0]=(i|0)==(n|0)&1;i=f[c>>2]|0;do{a=a+-12|0;oTa(a)}while((a|0)!=(n|0));break a}}else i=Ia()|0;while(0)}while(0);Ua(i|0)}while(0);u=m;return i|0} +function Zs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Qab(c)|0)){Q_a();x=0;ia(52,i+13|0,93762)|0;k=x;x=0;if(k&1){Ia()|0;lCa()}else lCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(hna(a,j)|0){Q_a();x=0;ia(52,g|0,93792)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)lCa();Ia()|0;lCa()}c=b;f[j>>2]=c;d=a+28|0;e=f[d>>2]|0;do if(e>>>0<(f[a+32>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(1880,a+24|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;Cbb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0)Cbb(d);Ua(c|0)}while(0);k=zZ(a+196|0,b)|0;f[k>>2]=b;u=i;return}function _s(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i+8|0;e=i+4|0;g=i+12|0;h=i;c=f[b>>2]|0;if(!(Qab(c)|0)){Q_a();x=0;ia(52,i+13|0,71914)|0;k=x;x=0;if(k&1){Ia()|0;lCa()}else lCa()}f[e>>2]=c;f[j>>2]=f[e>>2];if(fna(a,j)|0){Q_a();x=0;ia(52,g|0,71944)|0;k=x;x=0;if((!(k&1)?(f[h>>2]=f[b>>2],x=0,f[j>>2]=f[h>>2],d=ia(53,g|0,j|0)|0,k=x,x=0,!(k&1)):0)?(x=0,ia(52,d|0,71840)|0,k=x,x=0,!(k&1)):0)lCa();Ia()|0;lCa()}c=b;f[j>>2]=c;d=a+16|0;e=f[d>>2]|0;do if(e>>>0<(f[a+20>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4;f[j>>2]=0}else{x=0;ua(465,a+12|0,j|0);k=x;x=0;if(!(k&1)){c=f[j>>2]|0;f[j>>2]=0;if(!c)break;Cbb(c);break}c=Ia()|0;d=f[j>>2]|0;f[j>>2]=0;if(d|0)Cbb(d);Ua(c|0)}while(0);k=zZ(a+184|0,b)|0;f[k>>2]=b;u=i;return}function $s(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+80|0;d=h+48|0;e=h+24|0;g=h;oz(d,b,f[c+8>>2]|0);if(!(K0a(d)|0)){oz(e,b,f[c+12>>2]|0);if(!(K0a(e)|0)){oz(g,b,f[c+16>>2]|0);if(K0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{g=(TRa(g)|0)==0;g=g?e:d;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=h;return}function at(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+64|0;c=j+16|0;d=j+56|0;e=j+60|0;i=j+44|0;g=j+32|0;h=j;do if((f[b+4>>2]|0)!=5){k=f[a+36>>2]|0;Jbb(k)|0;_0a(d,k);k=Yj(b)|0;f[e>>2]=k;f[g>>2]=f[b+24>>2];t$a(h,Jbb(f[b+12>>2]|0)|0);f[c>>2]=f[h>>2];f[c+4>>2]=f[h+4>>2];f[c+8>>2]=f[h+8>>2];f[c+12>>2]=f[h+12>>2];h=e0(d,c)|0;f[g+4>>2]=h;f[g+8>>2]=f[b+28>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,3);h=x;x=0;if(h&1){k=Ia()|0;zSa(i);Ua(k|0)}qda(i,g,g+12|0);x=0;f[c>>2]=f[e>>2];c=ka(13,d|0,c|0,i|0,0)|0;k=x;x=0;if(k&1){k=Ia()|0;zSa(i);Ua(k|0)}else{GVa(f[a+16>>2]|0,c)|0;zSa(i);break}}while(0);u=j;return}function bt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=DCa(134176,110926)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;QOa(i)|0;YYa(i)}m=Gv(f[a+28>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];n4a(j,_1(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function ct(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;h=l;wW(a,(((f[a+4>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);j=W5()|0;e=h+12|0;g=h+8|0;a:while(1){cz(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 0:{k=3;break a}case 125:{i=d;break a}default:{}}Dh(h,d);if((f[e>>2]&-2|0)!=2){k=5;break}f[c>>2]=(f[c>>2]|0)+(f[g>>2]|0);cz(c);d=f[c>>2]|0;if((b[d>>0]|0)!=58){k=7;break}f[c>>2]=d+1;d=Rm(a,c,66819)|0;tO(j,f[h>>2]|0,d);cz(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 125:{k=11;break a}case 44:break;default:{k=10;break a}}f[c>>2]=d+1}if((k|0)==3)Ca(66707,65740,701,66763);else if((k|0)==5)Ca(66779,65740,704,66763);else if((k|0)==7)Ca(66250,65740,707,66763);else if((k|0)==10)hb();else if((k|0)==11)i=d;f[c>>2]=i+1;u=l;return j|0}function dt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110776)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=c+20|0;Ypa(a,f[j>>2]|0);do if((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+24|0,Ypa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)if((f[c+4>>2]|0)==5){EM(a);break}else{FS(a,c);break}while(0);u=i;return}function et(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110733)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=c+12|0;Ypa(a,f[j>>2]|0);if(((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,Ypa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)?(j=c+20|0,Ypa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)FS(a,c);u=i;return}function ft(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;d=kqa(a+40|0,f[h>>2]|0)|0;do if(d|0){g=a+24|0;c=-1;d=d+8|0;while(1){d=f[d>>2]|0;if(!d)break;e=f[d+8>>2]|0;if(!((c|0)!=-1?(i=$7(f[f[g>>2]>>2]|0,f[h>>2]|0,e)|0,i>>>0<=($7(f[f[g>>2]>>2]|0,f[h>>2]|0,c)|0)>>>0):0))c=e}if((c|0)==-1)Ca(76776,76794,729,76826);d=f[h>>2]|0;if((c|0)!=(d|0)?(e=$7(f[f[g>>2]>>2]|0,d,c)|0,i=f[h>>2]|0,e>>>0>($7(f[f[g>>2]>>2]|0,i,i)|0)>>>0):0){d=f[f[g>>2]>>2]|0;e=d+(c<<2)|0;f[e>>2]=(f[e>>2]|0)+1;d=d+(f[h>>2]<<2)|0;e=f[d>>2]|0;if(!e)Ca(76840,76794,736,76826);else{f[d>>2]=e+-1;f[h>>2]=c;b[a+36>>0]=1;break}}}while(0);return}function gt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;i=l+16|0;h=l;j=l+12|0;k=l+8|0;do if(b[a+33>>0]|0){g=DCa(134176,110946)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;QOa(i)|0;YYa(i)}m=Gv(f[a+28>>2]|0,16)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+24>>2];f[i>>2]=f[k>>2];n4a(j,_1(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function ht(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+80|0;d=i+64|0;e=i+40|0;g=i+16|0;h=i;Ou(e,b,f[c+12>>2]|0);if(!(K0a(e)|0)){Ou(g,b,f[c+16>>2]|0);if(K0a(g)|0){f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2];f[a+16>>2]=f[g+16>>2];f[a+20>>2]=f[g+20>>2]}else{t$a(h,0);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];wAa(a,d)}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}u=i;return}function it(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=c+144;_0a(a+8|0,c);f[a+12>>2]=0;DUa(a+16|0);f[a+28>>2]=d;b[a+32>>0]=0;f[a+36>>2]=2;rja(a+40|0,2,c,1);d=a+76|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];b[a+96>>0]=1;b[a+97>>0]=0;b[a+98>>0]=0;DUa(a+100|0);DUa(a+112|0);Sab(a+124|0);Sab(a+128|0);Sab(a+132|0);Sab(a+136|0);Sab(a+140|0);Sab(a+144|0);Sab(a+148|0);Sab(a+152|0);Sab(a+156|0);Sab(a+160|0);Sab(a+164|0);Sab(a+168|0);Sab(a+172|0);Sab(a+176|0);Sab(a+180|0);Sab(a+184|0);Sab(a+188|0);Sab(a+192|0);Sab(a+196|0);Sab(a+200|0);Sab(a+204|0);Sab(a+208|0);DUa(a+212|0);DUa(a+224|0);return}function jt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=a+8|0;qs(a,a+4|0,c)|0;h=a+12|0;while(1){if((h|0)==(b|0))break;i=f[h>>2]|0;g=i+16|0;if(X2(+p[g>>3],+p[(f[c>>2]|0)+16>>3])|0){f[h>>2]=0;d=h;while(1){j=f[c>>2]|0;f[c>>2]=0;e=f[d>>2]|0;f[d>>2]=j;if(e|0){zSa(e);Cbb(e)}if((c|0)==(a|0)){c=a;break}d=c+-4|0;if(X2(+p[g>>3],+p[(f[d>>2]|0)+16>>3])|0){j=c;c=d;d=j}else break}d=f[c>>2]|0;f[c>>2]=i;if(d|0){zSa(d);Cbb(d)}}c=h;h=h+4|0}return}function kt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+4|0;i=f[k>>2]|0;j=f[a>>2]|0;g=j;do if((i|0)==(j|0)){j=a+8|0;h=f[j>>2]|0;d=a+12|0;m=f[d>>2]|0;c=m;if(h>>>0>=m>>>0){c=c-g|0;c=(c|0)==0?1:c>>1;iO(e,c,(c+3|0)>>>2,f[a+16>>2]|0);K8(e,f[k>>2]|0,f[j>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=m;Hja(e);c=f[k>>2]|0;break}a=h;e=((c-a>>2)+1|0)/2|0;d=h+(e<<2)|0;a=a-i|0;c=d+(0-(a>>2)<<2)|0;if(!a){c=d;a=d}else{kia(c|0,i|0,a|0)|0;a=(f[j>>2]|0)+(e<<2)|0}f[k>>2]=c;f[j>>2]=a}else c=i;while(0);f[c+-4>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+-4;u=l;return}function lt(a,b){a=a|0;b=b|0;var c=0,d=0.0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0.0;l=u;u=u+16|0;m=l+4|0;k=l;f[m>>2]=0;c=m+4|0;f[c>>2]=0;f[m+8>>2]=0;x=0;wa(154,f[a>>2]|0,b|0,m|0,k|0);j=x;x=0;do if(j&1)c=Ia()|0;else{e=f[m>>2]|0;j=f[c>>2]|0;a:do if((e|0)==(j|0))c=e;else{c=e;i=e;g=e;while(1){e=i+4|0;if((e|0)==(j|0))break a;n=(f[g>>2]|0)>>>0<(f[e>>2]|0)>>>0;c=n?e:c;i=e;g=n?e:g}}while(0);e=f[c>>2]|0;g=f[(f[a>>2]|0)+132>>2]|0;if(g>>>0>>0){x=0;wa(71,115436,115383,436,115466);x=0;c=Ia()|0;break}h=1.0/(+(g>>>0)*2.0);c=0;d=+((g-e|0)>>>0);while(1){if((c|0)==(g|0))break;o=(f[(f[b>>2]|0)+(c<<2)>>2]|0)==(c|0)?h+d:d;c=c+1|0;d=o}HRa(b,d*100.0+ +((f[k>>2]|0)>>>0));zSa(m);u=l;return}while(0);zSa(m);Ua(c|0)}function mt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+8|0;g=l;jY(d,Jbb(f[c+4>>2]|0)|0);Q$a(k,c);LUa(g,c);i=d+4|0;j=d+8|0;c=k+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;while(1){if(!(qTa(f[k>>2]|0,f[c>>2]|0,e,g)|0)){c=9;break}h=QOa(k)|0;Ou(a,b,f[h>>2]|0);if(K0a(a)|0){c=8;break}h=f[i>>2]|0;if((h|0)==(f[j>>2]|0))HE(d,a);else{f[h>>2]=f[a>>2];f[h+4>>2]=f[a+4>>2];f[h+8>>2]=f[a+8>>2];f[h+12>>2]=f[a+12>>2];f[i>>2]=(f[i>>2]|0)+16}YYa(k)}if((c|0)!=8)if((c|0)==9)a1a(a);u=l;return}function nt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+4|0;i=f[k>>2]|0;j=f[a>>2]|0;g=j;do if((i|0)==(j|0)){j=a+8|0;h=f[j>>2]|0;d=a+12|0;m=f[d>>2]|0;c=m;if(h>>>0>=m>>>0){c=c-g|0;c=(c|0)==0?1:c>>1;iO(e,c,(c+3|0)>>>2,a+12|0);K8(e,f[k>>2]|0,f[j>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[d>>2]|0;f[d>>2]=f[c>>2];f[c>>2]=m;Hja(e);c=f[k>>2]|0;break}a=h;e=((c-a>>2)+1|0)/2|0;d=h+(e<<2)|0;a=a-i|0;c=d+(0-(a>>2)<<2)|0;if(!a){c=d;a=d}else{kia(c|0,i|0,a|0)|0;a=(f[j>>2]|0)+(e<<2)|0}f[k>>2]=c;f[j>>2]=a}else c=i;while(0);f[c+-4>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+-4;u=l;return}function ot(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110647)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+8>>2]|0);Ypa(a,f[c+12>>2]|0);Ypa(a,f[c+16>>2]|0);if((f[c+4>>2]|0)==5)EM(a);else FS(a,c);u=i;return}function pt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+1040|0;l=p;n=p+1024|0;g=f[b>>2]|0;f[n>>2]=g;o=(a|0)!=0;h=o?d:256;i=o?a:l;d=g;a:do if((h|0)!=0&(g|0)!=0){a=0;j=c;k=i;while(1){i=j>>>2;c=i>>>0>=h>>>0;if(!(j>>>0>131|c)){c=j;i=k;break a}d=c?h:i;c=j-d|0;d=ai(k,n,d,e)|0;if((d|0)==-1)break;i=(k|0)==(l|0);h=h-(i?0:d)|0;i=i?k:k+(d<<2)|0;a=d+a|0;d=f[n>>2]|0;g=d;if((h|0)!=0&(d|0)!=0){j=c;k=i}else break a}g=f[n>>2]|0;a=-1;i=k;h=0;d=g}else a=0;while(0);b:do if((d|0)!=0?(h|0)!=0&(c|0)!=0:0){while(1){g=qt(i,d,c,e)|0;if((g+2|0)>>>0<3)break;d=d+g|0;c=c-g|0;h=h+-1|0;a=a+1|0;if(!((h|0)!=0&(c|0)!=0)){m=15;break}else i=i+4|0}if((m|0)==15){f[n>>2]=d;break}f[n>>2]=d;switch(g|0){case -1:{a=-1;break b}case 0:{f[n>>2]=0;d=0;break b}default:{f[e>>2]=0;break b}}}else d=g;while(0);if(o)f[b>>2]=d;u=p;return a|0}function qt(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l;j=(e|0)==0?133808:e;e=f[j>>2]|0;a:do if(!c)if(!e)e=0;else k=19;else{i=(a|0)==0?g:a;if(!d)e=-2;else{if(!e){e=b[c>>0]|0;if(e<<24>>24>-1){f[i>>2]=e&255;e=e<<24>>24!=0&1;break}if(!(f[f[11692]>>2]|0)){f[i>>2]=e<<24>>24&57343;e=1;break}e=(e&255)+-194|0;if(e>>>0>50){k=19;break}e=f[23968+(e<<2)>>2]|0;g=d+-1|0;if(g){c=c+1|0;k=11}}else{g=d;k=11}b:do if((k|0)==11){a=h[c>>0]|0;m=a>>>3;if((m+-16|m+(e>>26))>>>0>7){k=19;break a}e=a+-128|e<<6;a=g+-1|0;if((e|0)<0)do{c=c+1|0;if(!a)break b;g=b[c>>0]|0;if((g&-64)<<24>>24!=-128){k=19;break a}e=(g&255)+-128|e<<6;a=a+-1|0}while((e|0)<0);f[j>>2]=0;f[i>>2]=e;e=d-a|0;break a}while(0);f[j>>2]=e;e=-2}}while(0);if((k|0)==19){f[j>>2]=0;f[33448]=84;e=-1}u=l;return e|0}function rt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+64|0;d=i+40|0;e=i+16|0;g=i;h=i+56|0;Ou(e,b,f[c+24>>2]|0);if(K0a(e)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}else{b=b+4|0;j=f[b>>2]|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];j=Du(j,c,d)|0;e=f[(f[b>>2]|0)+36>>2]|0;b=f[(f[e>>2]|0)+24>>2]|0;f[h>>2]=j;f[d>>2]=f[h>>2];rc[b&255](g,e,c,d);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];wAa(a,d)}u=i;return}function st(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;i=j+24|0;d=j;a1a(a);EXa(i);e=f[c+32>>2]|0;if(e){oz(d,b,e);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];if(!(K0a(a)|0)){f[i>>2]=f[a>>2];f[i+4>>2]=f[a+4>>2];f[i+8>>2]=f[a+8>>2];f[i+12>>2]=f[a+12>>2];h=a;g=5}}else{h=a;g=5}if((g|0)==5?(oz(d,b,f[c+28>>2]|0),f[h>>2]=f[d>>2],f[h+4>>2]=f[d+4>>2],f[h+8>>2]=f[d+8>>2],f[h+12>>2]=f[d+12>>2],f[h+16>>2]=f[d+16>>2],!(K0a(a)|0)):0){d=Jia(a)|0;g=I;b=f[c+24>>2]|0;if((g|0)>-1|(g|0)==-1&d>>>0>4294967295?(Jbb(f[c+12>>2]|0)|0)>>>0>d>>>0:0){b=ODa(c+8|0,d)|0;b=f[b>>2]|0}f[a+16>>2]=b;f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2]}u=j;return}function tt(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+64|0;g=i+48|0;e=i;c=i+44|0;b=f[a+8>>2]|0;do if(Qab(b)|0){f[c>>2]=b;f[g>>2]=f[c>>2];BT(e,a,g);h=t$(f[e+32>>2]|0,f[e+36>>2]|0)|0;f[a+4>>2]=h;x=0;va(102,a|0,0,0);h=x;x=0;if(h&1){i=Ia()|0;lWa(e);Ua(i|0)}else{lWa(e);break}}else{b=a+12|0;if(!(Jbb(f[a+16>>2]|0)|0)){f[a+4>>2]=0;break}c=RCa(b)|0;c=f[(f[c>>2]|0)+4>>2]|0;d=a+4|0;f[d>>2]=c;if(!(v2a(c)|0|(c|0)==5)){Q$a(g,b);LUa(e,b);a=g+4|0;c=f[e>>2]|0;b=f[e+4>>2]|0;while(1){if(!(qTa(f[g>>2]|0,f[a>>2]|0,c,b)|0))break;e=QOa(g)|0;if((f[(f[e>>2]|0)+4>>2]|0)==5){h=7;break}YYa(g)}if((h|0)==7)f[d>>2]=5;u=i;return}}while(0);u=i;return}function ut(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+96|0;h=k+4|0;e=k;g=a+12|0;d=a+16|0;c=f[d>>2]|0;do if((Jbb(c)|0)==1){c=ODa(g,0)|0;c=f[c>>2]|0;f[e>>2]=f[a+8>>2];f[h>>2]=f[e>>2];if(OM(c,h)|0){c=f[d>>2]|0;j=10;break}e=ODa(g,0)|0;e=f[e>>2]|0;gA(h,fZa(f[b+40>>2]|0)|0,e);g=qza(h)|0;_7(h);d=f[e+4>>2]|0;if(!g?!(v2a(d)|0):0){i=f[b+36>>2]|0;Jbb(i)|0;_0a(h,i);i=xu(h,a)|0;break}c=f[a+4>>2]|0;if((c|0)!=(d|0))if((v2a(c)|0)&(d|0)==5)j=12;else Ca(71202,71264,47,71287);else i=e}else j=10;while(0);if((j|0)==10)if(!(Jbb(c)|0)){jUa(a)|0;j=12}else j=12;if((j|0)==12)i=a;u=k;return i|0}function vt(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;e=u;u=u+16|0;g=e;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[g+(c<<2)>>2]=0;c=c+1|0}d=b[h+11>>0]|0;i=d<<24>>24<0;c=i?f[h>>2]|0:h;d=c+(i?f[h+4>>2]|0:d&255)|0;while(1){if(c>>>0>=d>>>0){d=9;break}x=0;ua(82,g|0,b[c>>0]|0);i=x;x=0;if(i&1){d=8;break}c=c+1|0}do if((d|0)==8)c=Ia()|0;else if((d|0)==9){c=(b[g+11>>0]|0)<0?f[g>>2]|0:g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}d=c+(dV(Jbb(c)|0)|0)|0;while(1){if(c>>>0>=d>>>0){d=17;break}x=0;ua(82,a|0,b[c>>0]|0);i=x;x=0;if(i&1){d=16;break}c=c+1|0}if((d|0)==16){c=Ia()|0;MTa(a);break}else if((d|0)==17){MTa(g);u=e;return}}while(0);MTa(g);Ua(c|0)}function wt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+8|0;c=f[k>>2]|0;g=a+12|0;j=f[g>>2]|0;h=j;do if((c|0)==(j|0)){j=a+4|0;i=f[j>>2]|0;m=f[a>>2]|0;d=m;if(i>>>0<=m>>>0){c=h-d|0;c=(c|0)==0?1:c>>1;iO(e,c,c>>>2,f[a+16>>2]|0);K8(e,f[j>>2]|0,f[k>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=m;Hja(e);c=f[k>>2]|0;break}m=i;a=((m-d>>2)+1|0)/-2|0;e=i+(a<<2)|0;d=c-m|0;if(!d)c=e;else{kia(e|0,i|0,d|0)|0;c=(f[j>>2]|0)+(a<<2)|0}m=e+(d>>2<<2)|0;f[k>>2]=m;f[j>>2]=c;c=m}while(0);f[c>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+4;u=l;return}function xt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j+8|0;h=j;do if(b[a+33>>0]|0){g=DCa(134176,110926)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(g,e)|0;fu(g)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);g=c+8|0;Q$a(i,g);LUa(h,g);g=i+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[g>>2]|0,e,d)|0))break;k=QOa(i)|0;Ypa(a,f[k>>2]|0);YYa(i)}FS(a,c);u=j;return}function yt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=b+12|0;e=f[(f[d>>2]|0)+4>>2]|0;if((e|0)!=5?(c=f[(f[b+16>>2]|0)+4>>2]|0,(c|0)!=5):0)Bma(a,e,c,b);switch(f[b+8>>2]|0){case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 6:case 5:case 4:case 3:case 2:case 1:case 0:{Vca(a,f[(f[d>>2]|0)+4>>2]|0,1,b,82837);break}case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 39:case 38:case 37:case 36:case 35:case 34:case 33:case 32:case 31:case 30:case 29:case 28:case 27:case 26:case 25:{Vca(a,f[(f[d>>2]|0)+4>>2]|0,2,b,82844);break}case 62:case 61:case 60:case 59:case 58:case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:{Vca(a,f[(f[d>>2]|0)+4>>2]|0,3,b,82851);break}case 75:case 74:case 73:case 72:case 71:case 70:case 69:case 68:case 67:case 66:case 65:case 64:case 63:{Vca(a,f[(f[d>>2]|0)+4>>2]|0,4,b,82858);break}default:hb()}return}function zt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;h=f[b>>2]|0;g=Qab(h)|0;i=f[c>>2]|0;d=g^(Qab(i)|0);if(d|g^1)d=d^1;else{g=f[a>>2]|0;d=g+4|0;e=f[d>>2]|0;if((e|0)==(f[g+8>>2]|0))LL(g,b);else{f[e>>2]=h;f[d>>2]=(f[d>>2]|0)+4}d=ZW(f[a+4>>2]|0,b)|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))LL(d,c);else{f[g>>2]=i;f[e>>2]=(f[e>>2]|0)+4}d=f[a+8>>2]|0;h=a+12|0;e=f[h>>2]|0;f[j>>2]=e;g=d+4|0;b=f[g>>2]|0;if(b>>>0<(f[d+8>>2]|0)>>>0){f[b>>2]=e;f[g>>2]=(f[g>>2]|0)+4}else LL(d,j);b=f[a+16>>2]|0;d=f[h>>2]|0;f[j>>2]=d;e=b+4|0;g=f[e>>2]|0;if(g>>>0<(f[b+8>>2]|0)>>>0){f[g>>2]=d;f[e>>2]=(f[e>>2]|0)+4}else LL(b,j);d=1}u=k;return d|0}function At(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;g=l+4|0;j=l;do if(b[a+33>>0]|0){h=DCa(134176,110603)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,m=x,x=0,!(m&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}m=Ia()|0;OCa(g);Ua(m|0)}while(0);d=c+8|0;switch(f[d>>2]|0){case 1:{k=9;break}case 2:{k=8;break}default:hb()}a:do if((k|0)==8){ODa(c+16|0,0)|0;switch(f[d>>2]|0){case 1:{k=9;break a}case 2:{i=a+28|0;Gv(f[i>>2]|0,64)|0;break a}default:hb()}}while(0);if((k|0)==9){i=a+28|0;Gv(f[i>>2]|0,63)|0}m=f[i>>2]|0;n4a(j,0);Yr(m,f[j>>2]|0)|0;u=l;return}function Bt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+32|0;e=h;g=f[c+8>>2]|0;Ou(e,b,f[c+12>>2]|0);do if(!(K0a(e)|0)){d=c+4|0;c=f[d>>2]|0;if(Qab(c)|0?(f[e>>2]|0)!=(c|0):0)Ca(58155,101308,798,101976);g=(f[f[b+8>>2]>>2]|0)+(g<<4)|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];if(Qab(f[d>>2]|0)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2];break}else{a1a(a);break}}else{f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}while(0);u=h;return}function Ct(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;e=i+20|0;d=i+16|0;g=i+12|0;j=i;h=kTa(f[a+4>>2]|0)|0;c=ay(a,Or(b,1)|0)|0;f[h+8>>2]=c;a=f[a>>2]|0;f[d>>2]=c;f[e>>2]=f[d>>2];d=gna(a,e)|0;do if(!d){f[g>>2]=c;f[e>>2]=f[g>>2];a=fna(a,e)|0;if(a|0?(f[a+12>>2]|0)==3:0){a=a+20|0;break}d=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;i=j7a(92611)|0;x=0;va(87,j|0,92611,i|0);i=x;x=0;if(!(i&1)){x=0;wa(138,d|0,j|0,f[b+28>>2]|0,f[b+32>>2]|0);i=x;x=0;if(i&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;MTa(j);if(c)k=11}else{a=Ia()|0;k=11}if((k|0)==11)La(d|0);Ua(a|0)}else a=d+4|0;while(0);f[h+4>>2]=f[a>>2];u=i;return h|0}function Dt(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0;f[d>>2]=a;f[h>>2]=e;a=f[d>>2]|0;a:while(1){if(a>>>0>=c>>>0){a=0;break}i=f[a>>2]|0;if(i>>>0>1114111|(i&-2048|0)==55296){a=2;break}do if(i>>>0>=128){if(i>>>0<2048){a=f[h>>2]|0;if((g-a|0)<2){a=1;break a}f[h>>2]=a+1;b[a>>0]=i>>>6|192;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i&63|128;break}a=f[h>>2]|0;e=g-a|0;if(i>>>0<65536){if((e|0)<3){a=1;break a}f[h>>2]=a+1;b[a>>0]=i>>>12|224;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i>>>6&63|128;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i&63|128;break}else{if((e|0)<4){a=1;break a}f[h>>2]=a+1;b[a>>0]=i>>>18|240;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i>>>12&63|128;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i>>>6&63|128;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=i&63|128;break}}else{a=f[h>>2]|0;if((g-a|0)<1){a=1;break a}f[h>>2]=a+1;b[a>>0]=i}while(0);a=(f[d>>2]|0)+4|0;f[d>>2]=a}return a|0}function Et(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;k=m+16|0;n=m+4|0;l=m;f[n>>2]=0;h=n+4|0;f[h>>2]=0;i=n+8|0;f[i>>2]=0;j=b+16|0;g=b+20|0;e=0;while(1){if(e>>>0>=(Jbb(f[g>>2]|0)|0)>>>0){d=3;break}x=0;c=ia(75,j|0,e|0)|0;d=x;x=0;if(d&1){d=10;break}x=0;c=ia(159,a|0,f[c>>2]|0)|0;d=x;x=0;if(d&1){d=10;break}f[k>>2]=c;d=f[h>>2]|0;if(d>>>0>=(f[i>>2]|0)>>>0){x=0;ua(1836,n|0,k|0);d=x;x=0;if(d&1){d=10;break}}else{f[d>>2]=c;f[h>>2]=(f[h>>2]|0)+4}e=e+1|0}do if((d|0)==3){c=f[b+8>>2]|0;f[l>>2]=f[b+12>>2];b=f[a+32>>2]|0;x=0;f[k>>2]=f[l>>2];c=ka(19,b|0,c|0,k|0,n|0)|0;l=x;x=0;if(l&1){c=Ia()|0;break}else{zSa(n);u=m;return c|0}}else if((d|0)==10)c=Ia()|0;while(0);zSa(n);Ua(c|0);return 0}function Ft(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l;k=a+8|0;c=f[k>>2]|0;g=a+12|0;j=f[g>>2]|0;h=j;do if((c|0)==(j|0)){j=a+4|0;i=f[j>>2]|0;m=f[a>>2]|0;d=m;if(i>>>0<=m>>>0){c=h-d|0;c=(c|0)==0?1:c>>1;iO(e,c,c>>>2,a+12|0);K8(e,f[j>>2]|0,f[k>>2]|0);c=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=c;c=e+4|0;m=f[j>>2]|0;f[j>>2]=f[c>>2];f[c>>2]=m;c=e+8|0;m=f[k>>2]|0;f[k>>2]=f[c>>2];f[c>>2]=m;c=e+12|0;m=f[g>>2]|0;f[g>>2]=f[c>>2];f[c>>2]=m;Hja(e);c=f[k>>2]|0;break}m=i;a=((m-d>>2)+1|0)/-2|0;e=i+(a<<2)|0;d=c-m|0;if(!d)c=e;else{kia(e|0,i|0,d|0)|0;c=(f[j>>2]|0)+(a<<2)|0}m=e+(d>>2<<2)|0;f[k>>2]=m;f[j>>2]=c;c=m}while(0);f[c>>2]=f[b>>2];f[k>>2]=(f[k>>2]|0)+4;u=l;return}function Gt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+32|0;d=j+20|0;m=j+16|0;h=j+12|0;k=j;i=jTa(f[a+4>>2]|0)|0;g=ay(a,Or(c,1)|0)|0;f[i+8>>2]=g;e=f[a>>2]|0;f[m>>2]=g;f[d>>2]=f[m>>2];if(gna(e,d)|0?(f[h>>2]=g,f[d>>2]=f[h>>2],m=(gna(e,d)|0)+12|0,(b[m>>0]|0)==0):0){e=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;m=j7a(92547)|0;x=0;va(87,k|0,92547,m|0);m=x;x=0;if(!(m&1)){x=0;wa(138,e|0,k|0,f[c+28>>2]|0,f[c+32>>2]|0);m=x;x=0;if(m&1)a=1;else{x=0;va(98,e|0,32200,457);x=0;a=0}d=Ia()|0;MTa(k);if(a)l=8}else{d=Ia()|0;l=8}if((l|0)==8)La(e|0);Ua(d|0)}m=ZQa(a,Or(c,2)|0)|0;f[i+12>>2]=m;oWa(i);u=j;return i|0}function Ht(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=s8(88)|0;dX(g);f[g>>2]=f[a>>2];f[g+4>>2]=f[a+4>>2];c=a+8|0;d=g+8|0;if((c|0)!=(d|0))Cy(d,f[c>>2]|0,f[a+12>>2]|0);c=a+20|0;d=g+20|0;if((c|0)!=(d|0))Cy(d,f[c>>2]|0,f[a+24>>2]|0);Bab(e);f[g+32>>2]=f[e>>2];Z8(g+44|0,a+44|0)|0;u8(g+56|0,a+56|0)|0;lU(g+68|0,a+68|0)|0;e=TY(f[a+36>>2]|0,b)|0;f[g+36>>2]=e;if(!(f[a+40>>2]|0)){Is(b,g);u=h;return g|0}else Ca(91948,91963,67,91987);return 0}function It(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i+8|0;g=i;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}x=0;d=ga(254,b|0)|0;e=x;x=0;do if(!(e&1)?(x=0,ua(82,a|0,d|0),e=x,x=0,!(e&1)):0){Q$a(h,c);LUa(g,c);c=h+4|0;e=f[g>>2]|0;b=f[g+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[c>>2]|0,e,b)|0)){b=8;break}x=0;d=ga(253,h|0)|0;g=x;x=0;if(g&1){b=14;break}x=0;d=ga(254,f[(f[d>>2]|0)+4>>2]|0)|0;g=x;x=0;if(g&1){b=14;break}x=0;ua(82,a|0,d|0);g=x;x=0;if(g&1){b=14;break}YYa(h)}if((b|0)==8){u=i;return}else if((b|0)==14){d=Ia()|0;break}}else b=9;while(0);if((b|0)==9)d=Ia()|0;MTa(a);Ua(d|0)}function Jt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=qs(a,b,c)|0;g=f[d>>2]|0;h=f[c>>2]|0;if(X2(+p[g+16>>3],+p[h+16>>3])|0){f[c>>2]=g;f[d>>2]=h;d=e+1|0;g=f[c>>2]|0;h=f[b>>2]|0;if(X2(+p[g+16>>3],+p[h+16>>3])|0){f[b>>2]=g;f[c>>2]=h;g=f[b>>2]|0;h=f[a>>2]|0;if(X2(+p[g+16>>3],+p[h+16>>3])|0){f[a>>2]=g;f[b>>2]=h;e=e+3|0}else e=e+2|0}else e=d}return e|0}function Kt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;c=e+24|0;d=e+28|0;h=e+12|0;g=e;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,99925,j7a(99925)|0);x=0;ua(1283,g|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[g+11>>0]|0;i=a<<24>>24<0;x=0;ja(49,h|0,(i?f[g>>2]|0:g)|0,(i?f[g+4>>2]|0:a&255)|0)|0;a=x;x=0;do if(!(a&1)){f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);i=x;x=0;if(i&1){a=Ia()|0;MTa(d);break}else{MTa(d);MTa(g);MTa(h);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);MTa(g)}MTa(h);Ua(a|0);return 0}function Lt(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;c=e+24|0;d=e+28|0;h=e+12|0;g=e;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,99933,j7a(99933)|0);x=0;ua(1283,g|0,a|0);a=x;x=0;if(a&1)a=Ia()|0;else{a=b[g+11>>0]|0;i=a<<24>>24<0;x=0;ja(49,h|0,(i?f[g>>2]|0:g)|0,(i?f[g+4>>2]|0:a&255)|0)|0;a=x;x=0;do if(!(a&1)){f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,c|0,d|0);i=x;x=0;if(i&1){a=Ia()|0;MTa(d);break}else{MTa(d);MTa(g);MTa(h);u=e;return f[c>>2]|0}}else a=Ia()|0;while(0);MTa(g)}MTa(h);Ua(a|0);return 0}function Mt(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;g=f[a+16>>2]|0;h=f[g+4>>2]|0;b=f[a+8>>2]|0;if((b|0)!=(dn(h,15)|0)?(b|0)!=(dn(h,16)|0):0)b=0;else c=3;do if((c|0)==3){b=f[a+12>>2]|0;if(o4a(f[b+4>>2]|0)|0?(i=d$a(b)|0,(i|0)!=0):0){b=f[i+8>>2]|0;d=dn(h,1)|0;if((b|0)!=(d|0)?(b|0)!=(dn(h,2)|0):0){b=0;break}e=n$a(f[i+16>>2]|0)|0;if(e){b=n$a(g)|0;if(b|0){b=Sy(a,i,e,0,b)|0;break}c=d$a(g)|0;if(c){b=f[c+8>>2]|0;if((b|0)!=(d|0)?(b|0)!=(dn(h,2)|0):0){b=0;break}b=n$a(f[c+16>>2]|0)|0;if(b)b=Sy(a,i,e,c,b)|0;else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function Nt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110733)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);a:do if(((f[(f[c+12>>2]|0)+4>>2]|0)!=5?(f[(f[c+16>>2]|0)+4>>2]|0)!=5:0)?(f[(f[c+20>>2]|0)+4>>2]|0)!=5:0){d=a+28|0;Gv(f[d>>2]|0,-2)|0;switch(f[c+24>>2]|0){case 1:{Gv(f[d>>2]|0,1)|0;FX(a,4,4,0);break a}case 2:{Gv(f[d>>2]|0,2)|0;FX(a,8,8,0);break a}default:hb()}}while(0);u=i;return}function Ot(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+32|0;j=k+16|0;l=k+4|0;g=k;f[l>>2]=0;h=l+4|0;f[h>>2]=0;i=l+8|0;f[i>>2]=0;while(1){if((b|0)==(c|0)){e=3;break}f[g>>2]=a;e=f[h>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;va(109,l|0,b|0,g|0);e=x;x=0;if(e&1){e=11;break}}else{x=0;ua(679,j|0,b|0);m=x;x=0;if(m&1){e=11;break}x=0;va(107,e|0,j|0,a|0);m=x;x=0;if(m&1){e=7;break}zSa(j);f[h>>2]=(f[h>>2]|0)+16}b=b+12|0}do if((e|0)==3){x=0;va(108,a|0,l|0,d|0);m=x;x=0;if(m&1){b=Ia()|0;break}else{Maa(l);u=k;return}}else if((e|0)==7){b=Ia()|0;zSa(j);e=12}else if((e|0)==11){b=Ia()|0;e=12}while(0);Maa(l);Ua(b|0)}function Pt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;do if((f[b+16>>2]|0)==0?(f[b+12>>2]|0)==0:0){d=v$a(f[(f[a+44>>2]|0)+-4>>2]|0)|0;if((d|0?(c=d+12|0,e=RCa(c)|0,(b|0)==(f[e>>2]|0)):0)?(e=RCa(c)|0,!(v2a(f[(f[e>>2]|0)+4>>2]|0)|0)):0){e=ZW(a+60|0,b+8|0)|0;VHa(g,b,d);a=e+4|0;c=f[a>>2]|0;if(c>>>0<(f[e+8>>2]|0)>>>0){f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];f[c+8>>2]=f[g+8>>2];f[a>>2]=(f[a>>2]|0)+12}else yE(e,g);break}e=b+8|0;dG(g,a+96|0,e,e)}else h=3;while(0);if((h|0)==3){h=b+8|0;dG(g,a+96|0,h,h)}u=i;return}function Qt(a,c){a=a|0;c=c|0;var d=0,e=0,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=u;u=u+64|0;q=r;j=a+56|0;b[j>>0]=1;k=a+16|0;l=a+72|0;m=a+84|0;n=a+60|0;o=a+76|0;p=a+88|0;g=a+96|0;h=a+108|0;i=q+16|0;e=a+36|0;d=1;while(1){if(!(d<<24>>24)){d=8;break}b[j>>0]=0;cLa(k,c);Vc(a,l,0)|0;Vc(a,m,0)|0;Q1(n);f[o>>2]=f[l>>2];f[p>>2]=f[m>>2];mqa(g);hoa(h);if(!(b[j>>0]|0))d=0;else{jX(q);d=f[e>>2]|0;Jbb(d)|0;x=0;va(94,i|0,c|0,d|0);d=x;x=0;if(d&1){d=7;break}uDa(q);d=b[j>>0]|0}}if((d|0)==7){r=Ia()|0;uDa(q);Ua(r|0)}else if((d|0)==8){u=r;return}}function Rt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;d=l+4|0;g=l;k=a+44|0;a:do if((b[(f[k>>2]|0)+1>>0]|0?(e=Jbb(f[a+36>>2]|0)|0,f[g>>2]=f[c+24>>2],f[d>>2]=f[g>>2],e=tma(e,d)|0,noa(a,(e|0)!=0,c,84858)|0):0)?(Uaa(a,f[(f[c+28>>2]|0)+4>>2]|0,1,c,84888)|0,i=c+8|0,h=c+12|0,g=Jbb(f[h>>2]|0)|0,j=e+8|0,noa(a,(g|0)==((f[e+12>>2]|0)-(f[j>>2]|0)>>2|0),c,84924)|0):0){d=0;while(1){if(d>>>0>=(Jbb(f[h>>2]|0)|0)>>>0)break a;g=ODa(i,d)|0;if(!(Uaa(a,f[(f[g>>2]|0)+4>>2]|0,f[(f[j>>2]|0)+(d<<2)>>2]|0,c,84953)|0)?(b[(f[k>>2]|0)+8>>0]|0)==0:0)DCa(zm(DCa(YNa(a)|0,84981)|0,d)|0,87606)|0;d=d+1|0}}while(0);u=l;return}function St(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;do if(b[a+33>>0]|0){g=DCa(134176,111057)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[h>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(h);Wq(g,e)|0;fu(g)|0;break}j=Ia()|0;OCa(h);Ua(j|0)}while(0);if((f[(f[c+8>>2]|0)+4>>2]|0)!=5){e=a+28|0;Gv(f[e>>2]|0,4)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,r8((d|0)==5?0:d)|0)|0;L1a(h,f[33015]|0);d=a+60|0;e=f[d>>2]|0;if(e>>>0<(f[a+64>>2]|0)>>>0){f[e>>2]=f[h>>2];f[d>>2]=(f[d>>2]|0)+4}else LL(a+56|0,h);bE(f[c+12>>2]|0)}u=i;return}function Tt(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=f[c+4>>2]|0;e=f[d+4>>2]|0;l=k+-1|0;m=(l&k|0)==0;if(!m)if(e>>>0>>0)i=e;else i=(e>>>0)%(k>>>0)|0;else i=l&e;h=(f[c>>2]|0)+(i<<2)|0;n=f[h>>2]|0;while(1){e=f[n>>2]|0;if((e|0)==(d|0))break;else n=e}j=c+8|0;if((n|0)!=(j|0)){e=f[n+4>>2]|0;if(!m){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&l;if((e|0)==(i|0))h=d;else g=14}else g=14;do if((g|0)==14){e=f[d>>2]|0;if(e|0){e=f[e+4>>2]|0;if(!m){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&l;if((e|0)==(i|0)){h=d;break}}f[h>>2]=0;h=d}while(0);g=f[h>>2]|0;e=g;if(g){g=f[g+4>>2]|0;if(!m){if(g>>>0>=k>>>0)g=(g>>>0)%(k>>>0)|0}else g=g&l;if((g|0)!=(i|0)){f[(f[c>>2]|0)+(g<<2)>>2]=n;e=f[d>>2]|0}}f[n>>2]=e;f[h>>2]=0;c=c+12|0;f[c>>2]=(f[c>>2]|0)+-1;f[a>>2]=d;f[a+4>>2]=j;b[a+8>>0]=1;return}function Ut(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;a:do if(a>>>0>>0){b:do if((b[a>>0]|0)!=95){if((Cc(a,c,d)|0)!=(c|0)){f[e>>2]=-2;break a}}else{if((c-a|0)<=3){f[e>>2]=-2;break a}switch(b[a+1>>0]|0){case 90:{g=a+2|0;a=dd(g,c,d)|0;if(!((a|0)==(g|0)|(a|0)==(c|0))?(b[a>>0]|0)==46:0)a=zp(a,c,d)|0;if((a|0)==(c|0))break b;f[e>>2]=-2;break a}case 95:{g=11;break}default:{}}if(((g|0)==11?(b[a+2>>0]|0)==95:0)?(b[a+3>>0]|0)==90:0){g=a+4|0;a=dd(g,c,d)|0;if((a|0)==(g|0)|(a|0)==(c|0)){f[e>>2]=-2;break a}if((lC(a,c,f[d>>2]|0,f[d+4>>2]|0)|0)==(c|0))break;f[e>>2]=-2;break a}f[e>>2]=-2;break a}while(0);if((f[e>>2]|0)==0?(f[d>>2]|0)==(f[d+4>>2]|0):0)f[e>>2]=-2}else f[e>>2]=-2;while(0);return}function Vt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l+8|0;h=l;Ema(f[a>>2]|0,40)|0;MXa(k,f[a+28>>2]|0,f[a>>2]|0);_m(k,c);_Ba(a);e=f[c+12>>2]|0;d=v$a(e)|0;j=a+20|0;if((d|0)!=0&(b[j>>0]|0)==0?Oab(f[d+8>>2]|0)|0:0){g=d+12|0;Q$a(k,g);LUa(h,g);g=k+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[k>>2]|0,f[g>>2]|0,e,d)|0))break;h=QOa(k)|0;QP(a,f[h>>2]|0);YYa(k)}}else QP(a,e);pfa(a);if(b[j>>0]|0?(DCa(f[a>>2]|0,75664)|0,i=c+8|0,Qab(f[i>>2]|0)|0):0){k=Ema(f[a>>2]|0,32)|0;Bfa(k,f[i>>2]|0)|0}u=l;return}function Wt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;f[j>>2]=0;g=j+4|0;f[g>>2]=0;h=j+8|0;f[h>>2]=0;k=a+44|0;e=a+48|0;c=f[k>>2]|0;a:while(1){if((c|0)==(e|0))break;do if(xj(b,c+24|0)|0){a=c+16|0;d=f[g>>2]|0;if((d|0)==(f[h>>2]|0)){x=0;ua(524,j|0,a|0);d=x;x=0;if(d&1){i=18;break a}else break}else{f[d>>2]=f[a>>2];f[g>>2]=d+4;break}}while(0);a=f[c+4>>2]|0;if(!a)while(1){a=f[c+8>>2]|0;if((f[a>>2]|0)==(c|0))break;else c=a}else while(1){c=f[a>>2]|0;if(!c)break;else a=c}c=a}if((i|0)==18){l=Ia()|0;zSa(j);Ua(l|0)}c=f[g>>2]|0;a=f[j>>2]|0;while(1){if((a|0)==(c|0))break;KU(k,f[a>>2]|0);a=a+4|0}zSa(j);u=l;return}function Xt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;i=l+8|0;h=l;e=b+12|0;j=b+4|0;do if(Jbb(f[b+16>>2]|0)|0){g=f[j>>2]|0;d=RCa(e)|0;d=f[(f[d>>2]|0)+4>>2]|0;f[j>>2]=d;if(!(v2a(d)|0)){b=b+8|0;if(Qab(f[b>>2]|0)|0?(c=t_(a+44|0,b)|0,(c|0)!=(a+48|0)):0){b=f[c+20>>2]|0;if((b|0)!=5){f[j>>2]=b;break}f[j>>2]=g;if(v2a(g)|0)break;Ca(61798,61463,128,99914)}if(!d){Q$a(i,e);LUa(h,e);a=i+4|0;c=f[h>>2]|0;b=f[h+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[a>>2]|0,c,b)|0))break;h=QOa(i)|0;if((f[(f[h>>2]|0)+4>>2]|0)==5){k=14;break}YYa(i)}if((k|0)==14)f[j>>2]=5}}}else f[j>>2]=0;while(0);u=l;return}function Yt(a){a=a|0;var b=0,c=0,d=0;b=a+60|0;c=a;d=c+60|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));x=0;ta(445,b|0);d=x;x=0;do if(!(d&1)){x=0;ta(446,a+88|0);d=x;x=0;if(d&1){d=Ia()|0;cYa(b);b=d;break}else{Bab(a+116|0);d=a+120|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;XGa(a+144|0);DUa(a+172|0);DUa(a+184|0);DUa(a+196|0);DUa(a+208|0);DUa(a+220|0);return}}else b=Ia()|0;while(0);P4(a+48|0);H1(a+36|0);P4(a+24|0);P4(a+12|0);h1(a);Ua(b|0)}function Zt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110991)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);e=a+28|0;Gv(f[e>>2]|0,3)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,r8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))LL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}sw(a,f[c+12>>2]|0);WS(a,c);u=i;return}function _t(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110976)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);d=f[c+12>>2]|0;if(d|0)Ypa(a,d);d=c+16|0;e=f[d>>2]|0;if(e|0)Ypa(a,e);FS(a,c);if(f[d>>2]|0?(f[c+4>>2]|0)==5:0)EM(a);u=i;return}function $t(a,c){a=a|0;c=+c;var d=0,e=0,g=0,h=0;d=vRa(c)|0;e=I;g=(e|0)<0;do if(c==0.0&g)DCa(a,75297)|0;else{h=e&2147483647;if(h>>>0>2146435072|(h|0)==2146435072&d>>>0>0){DCa(DCa(a,g?123396:135337)|0,118773)|0;d=A6(c)|0;e=I;if((d|0)==0&(e|0)==0)break;h=DCa(a,75300)|0;g=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[g>>2]=f[g>>2]&-75|8;sm(h,d,e)|0;h=a+(f[(f[a>>2]|0)+-12>>2]|0)+4|0;f[h>>2]=f[h>>2]&-75|2;break}if(0==0&(e&2146435072|0)==2146435072){DCa(a,g?75304:118765)|0;break}d=Hi(c)|0;switch(b[d>>0]|0){case 46:{Ema(a,48)|0;break}case 45:{e=d+1|0;if((b[e>>0]|0)==46){DCa(a,75297)|0;d=e}break}default:{}}DCa(a,d)|0}while(0);return}function au(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;e=k+4|0;i=k;j=a+64|0;g=f[j>>2]|0;if(b[g+60>>0]|0?(b[g+61>>0]|0)==0:0){do if(b[a+72>>0]|0){d=DCa(134176,87906)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[c>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,l=x,x=0,!(l&1)):0){OCa(c);Wq(d,h)|0;fu(d)|0;break}l=Ia()|0;OCa(c);Ua(l|0)}while(0);l=E$(a,4)|0;h=a+68|0;g=f[h>>2]|0;n4a(e,1);Yr(g,f[e>>2]|0)|0;h=f[h>>2]|0;n4a(i,-16);Pr(h,f[i>>2]|0)|0;j=f[j>>2]|0;i=f[j+68>>2]|0;j=f[j+72>>2]|0;BP(a,i,j,(Jbb(j)|0)!=-1,0);WA(a,l)}u=k;return}function bu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119974]|0;b[a+1>>0]=b[119975]|0;b[a+2>>0]=b[119976]|0;b[a+3>>0]=b[119977]|0;b[a+4>>0]=b[119978]|0;b[a+5>>0]=b[119979]|0;m=d+4|0;XX(a+1|0,124539,1,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o+13|0;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;f[k>>2]=g;g=n+(Hga(n,q,p,a,k)|0)|0;m=AS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*((o<<1|24)+-1<<2)|0)+15&-16)|0;dYa(j,d);x=0;za(6,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;OCa(j);Ua(q|0)}else{OCa(j);q=su(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function cu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;do if(!(g2a(a,f[c+8>>2]|0)|0)){if(!(g2a(a,f[c>>2]|0)|0)){i=f[a+8>>2]|0;sc[f[(f[i>>2]|0)+24>>2]&15](i,c,d,e,g);break}if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[c+32>>2]=e;i=c+44|0;if((f[i>>2]|0)==4)break;e=c+52|0;b[e>>0]=0;j=c+53|0;b[j>>0]=0;a=f[a+8>>2]|0;tc[f[(f[a>>2]|0)+20>>2]&15](a,c,d,d,1,g);if(b[j>>0]|0)if(!(b[e>>0]|0)){e=1;a=11}else a=15;else{e=0;a=11}do if((a|0)==11){f[h>>2]=d;j=c+40|0;f[j>>2]=(f[j>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0){b[c+54>>0]=1;if(e){a=15;break}else{e=4;break}}if(e)a=15;else e=4}while(0);if((a|0)==15)e=3;f[i>>2]=e;break}if((e|0)==1)f[c+32>>2]=1}else hwa(c,d,e);while(0);return}function du(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119974]|0;b[a+1>>0]=b[119975]|0;b[a+2>>0]=b[119976]|0;b[a+3>>0]=b[119977]|0;b[a+4>>0]=b[119978]|0;b[a+5>>0]=b[119979]|0;m=d+4|0;XX(a+1|0,124539,1,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o+13|0;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;f[k>>2]=g;g=n+(Hga(n,q,p,a,k)|0)|0;m=AS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*((o<<1|24)+-1|0)|0)+15&-16)|0;dYa(j,d);x=0;za(4,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;OCa(j);Ua(q|0)}else{OCa(j);q=Mu(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function eu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=((f[a+4>>2]|0)-(f[a>>2]|0)>>2)+-2|0;a:while(1){if((g|0)<=-1){j=16;break}i=f[a>>2]|0;d=f[i+(g<<2)>>2]|0;i=f[i+(g+1<<2)>>2]|0;c=f[d>>2]|0;if(zab(c)|0){d=aSa(d)|0;e=d+12|0;d=d+16|0;c=0;while(1){if(c>>>0>=((Jbb(f[d>>2]|0)|0)+-1|0)>>>0)break;k=ODa(e,c)|0;if((f[k>>2]|0)==(i|0)){h=0;break a}else c=c+1|0}k=RCa(e)|0;if((f[k>>2]|0)!=(i|0)){j=8;break}}else{if(!(Dab(c)|0)){j=14;break}c=vSa(d)|0;if((i|0)==(f[c+8>>2]|0)){h=1;break}d=f[c+16>>2]|0;if(!d){h=0;break}if(!((i|0)==(d|0)?1:(i|0)==(f[c+12>>2]|0))){j=13;break}}g=g+-1|0}if((j|0)==8)Ca(118549,118577,35,118609);else if((j|0)==13)Ca(118622,118577,41,118609);else if((j|0)==14)h=(S6a(c)|0)^1;else if((j|0)==16)h=(f[b+4>>2]|0)!=0;return h|0}function fu(a){a=a|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e;a:do if(f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0){x=0;ua(99,c|0,a|0);d=x;x=0;b:do if(d&1)c=Ja(0)|0;else{do if(b[c>>0]|0){d=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;x=0;d=ga(f[(f[d>>2]|0)+24>>2]|0,d|0)|0;g=x;x=0;if(!(g&1)){if((d|0)!=-1)break;g=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;x=0;ua(100,g|0,f[g+16>>2]|1|0);g=x;x=0;if(!(g&1))break}g=Ja(0)|0;gD(c);c=g;break b}while(0);gD(c);break a}while(0);Fa(c|0)|0;x=0;ta(450,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=x;x=0;if(!(g&1)){Ga();break}c=Ia()|0;x=0;sa(6);g=x;x=0;if(g&1){g=Ja(0)|0;y2a(g)}else Ua(c|0)}while(0);u=e;return a|0}function gu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=a+4|0;e=Jbb(f[g>>2]|0)|0;d=c+4|0;DCa(e,Fha(f[d>>2]|0)|0)|0;if(b[c+20>>0]|0)DCa(f[g>>2]|0,75515)|0;DCa(f[g>>2]|0,75538)|0;e=c+8|0;a=b[e>>0]|0;if(!((a&255)>=4?!((a&255)<8&(f[d>>2]|0)==2):0)){switch(a<<24>>24){case 1:{Ema(f[g>>2]|0,56)|0;break}case 2:{DCa(f[g>>2]|0,75506)|0;break}case 4:{DCa(f[g>>2]|0,75509)|0;break}default:hb()}DCa(f[g>>2]|0,(b[c+9>>0]|0)==0?75512:75544)|0}a=c+12|0;if(Jbb(f[a>>2]|0)|0){d=DCa(f[g>>2]|0,75479)|0;zm(d,Jbb(f[a>>2]|0)|0)|0}a=c+16|0;c=Jbb(f[a>>2]|0)|0;if((c|0)!=(h[e>>0]|0)){g=DCa(f[g>>2]|0,75530)|0;zm(g,Jbb(f[a>>2]|0)|0)|0}return}function hu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;k=j;c=b+8|0;d=Jm(a+48|0,c)|0;d=f[d>>2]|0;f[c>>2]=d;c=f[b+12>>2]|0;a:do if(xba(a,c)|0){if(Qab(f[b+4>>2]|0)|0){iq(a,b);break}UN(k,a,c);e=a+44|0;g=f[e>>2]|0;c=d+1|0;x=0;d=ga(320,k|0)|0;m=x;x=0;do if((!(m&1)?(x=0,h=ja(46,f[g>>2]|0,d|0,1)|0,m=x,x=0,!(m&1)):0)?(x=0,i=ja(45,g|0,c|0,h|0)|0,m=x,x=0,!(m&1)):0){x=0;c=ja(70,f[e>>2]|0,b|0,i|0)|0;m=x;x=0;if(m&1){c=Ia()|0;break}else{GVa(f[a+16>>2]|0,c)|0;MCa(k);break a}}else l=10;while(0);if((l|0)==10)c=Ia()|0;MCa(k);Ua(c|0)}while(0);u=j;return}function iu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119974]|0;b[a+1>>0]=b[119975]|0;b[a+2>>0]=b[119976]|0;b[a+3>>0]=b[119977]|0;b[a+4>>0]=b[119978]|0;b[a+5>>0]=b[119979]|0;m=d+4|0;XX(a+1|0,124539,0,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o|12;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;f[k>>2]=g;g=n+(Hga(n,q,p,a,k)|0)|0;m=AS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*((o<<1|21)<<2)|0)+15&-16)|0;dYa(j,d);x=0;za(6,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;OCa(j);Ua(q|0)}else{OCa(j);q=su(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function ju(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;if(!(bc[f[(f[b>>2]|0)+20>>2]&511](b)|0))Ca(80701,80299,465,80728);g=bc[f[(f[b>>2]|0)+24>>2]&511](b)|0;a:do if(XAa()|0){x=0;d=ga(212,16)|0;e=x;x=0;do if(!(e&1)){x=0;ua(1293,d|0,c|0);e=x;x=0;if(e&1){c=Ia()|0;Cbb(d);d=c;break}else{e=d;h=9;break a}}else d=Ia()|0;while(0);if(g)h=19}else{e=0;h=9}while(0);if((h|0)==9){x=0;wa(f[(f[g>>2]|0)+16>>2]|0,g|0,a|0,f[a>>2]|0,c|0);h=x;x=0;do if(!(h&1)?(x=0,va(118,a|0,b|0,c|0),h=x,x=0,!(h&1)):0){if(XAa()|0?(x=0,ta(471,e|0),h=x,x=0,h&1):0)break;if(e|0)Cbb(e);oc[f[(f[g>>2]|0)+4>>2]&1023](g);return}while(0);d=Ia()|0;if(!e)h=19;else{Cbb(e);h=19}}if((h|0)==19)oc[f[(f[g>>2]|0)+4>>2]&1023](g);Ua(d|0)}function ku(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=u;u=u+32|0;k=l;a=l+12|0;i=l+8|0;j=l+4|0;b[a>>0]=b[119974]|0;b[a+1>>0]=b[119975]|0;b[a+2>>0]=b[119976]|0;b[a+3>>0]=b[119977]|0;b[a+4>>0]=b[119978]|0;b[a+5>>0]=b[119979]|0;m=d+4|0;XX(a+1|0,124539,0,f[m>>2]|0);o=(f[m>>2]|0)>>>9&1;q=o|12;h=Ib()|0;n=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;f[k>>2]=g;g=n+(Hga(n,q,p,a,k)|0)|0;m=AS(n,g,f[m>>2]|0)|0;a=u;u=u+((1*(o<<1|21)|0)+15&-16)|0;dYa(j,d);x=0;za(4,n|0,m|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){q=Ia()|0;OCa(j);Ua(q|0)}else{OCa(j);q=Mu(f[c>>2]|0,a,f[k>>2]|0,f[i>>2]|0,d,e)|0;Hb(h|0);u=l;return q|0}return 0}function lu(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+11|0;g=b[i>>0]|0;h=g<<24>>24<0;if(h){k=f[a+4>>2]|0;e=(f[a+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}c=k>>>0<11;j=c?10:(k+16&-16)+-1|0;a:do if((j|0)!=(e|0)){do if(c){c=f[a>>2]|0;if(h){d=c;g=0;e=a;h=15}else{eUa(a,c,(g&255)+1|0)|0;Cbb(c);h=18}}else{d=j+1|0;if(j>>>0<=e>>>0){x=0;c=ga(212,d|0)|0;e=x;x=0;if(e&1){k=Ja(0)|0;Fa(k|0)|0;Ga();break a}}else c=s8(d)|0;if(h){d=f[a>>2]|0;g=1;e=c;h=15;break}else{eUa(c,a,(g&255)+1|0)|0;e=c;c=a+4|0;h=17;break}}while(0);if((h|0)==15){c=a+4|0;eUa(e,d,(f[c>>2]|0)+1|0)|0;Cbb(d);if(g){d=j+1|0;h=17}else h=18}if((h|0)==17){f[a+8>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==18){b[i>>0]=k;break}}while(0);return}function mu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110960)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);d=f[c+32>>2]|0;if(d|0)Ypa(a,d);Ypa(a,f[c+28>>2]|0);if(zAa(c)|0)FS(a,c);else EM(a);u=i;return}function nu(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=a+4|0;g=f[e>>2]|0;do if(g){e=K1a(a)|0;k=b[d+11>>0]|0;j=k<<24>>24<0;k=j?f[d+4>>2]|0:k&255;j=j?f[d>>2]|0:d;a=g;while(1){d=a+16|0;g=b[d+11>>0]|0;h=g<<24>>24<0;d=h?f[d>>2]|0:d;g=h?f[a+20>>2]|0:g&255;h=g>>>0>>0;l=FQa(j,d,h?g:k)|0;i=k>>>0>>0;if((((l|0)==0?(i?-2147483648:0):l)|0)<0){d=f[a>>2]|0;if(!d){d=5;break}else{e=a;a=d}}else{l=FQa(d,j,i?k:g)|0;if((((l|0)==0?(h?-2147483648:0):l)|0)>=0){d=9;break}e=a+4|0;d=f[e>>2]|0;if(!d){d=8;break}else a=d}}if((d|0)==5){f[c>>2]=a;e=a;break}else if((d|0)==8){f[c>>2]=a;break}else if((d|0)==9){f[c>>2]=a;break}}else f[c>>2]=e;while(0);return e|0}function ou(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;c=q+20|0;j=q+16|0;l=q+12|0;n=q+8|0;o=q+4|0;p=q;i=f[a+80>>2]|0;d=a+68|0;h=f[a+76>>2]|0;while(1){if((h|0)==(i|0))break;m=f[h>>2]|0;Qp(b,f[m+4>>2]|0,1,m,81358,0)|0;m=f[h>>2]|0;g=h+4|0;k=h+8|0;hLa(j,(f[k>>2]|0)-(f[g>>2]|0)>>2,0);hLa(l,Jbb(f[d>>2]|0)|0,0);m=jN(m,f[j>>2]|0,f[l>>2]|0)|0;Vv(b,m,f[h>>2]|0,81387,0)|0;k=f[k>>2]|0;g=f[g>>2]|0;while(1){if((g|0)==(k|0))break;e=f[g>>2]|0;f[n>>2]=e;f[c>>2]=f[n>>2];if(!(Xma(a,c)|0)){f[o>>2]=e;f[c>>2]=f[o>>2];m=(fna(a,c)|0)!=0}else m=1;f[p>>2]=e;f[c>>2]=f[p>>2];Qu(b,m,c,81423,0)|0;g=g+4|0}h=h+16|0}u=q;return}function pu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+32|0;c=l+28|0;e=l+24|0;g=l+8|0;j=l+12|0;h=l;d=RN(f[a+8>>2]|0)|0;i=d;do if(Qab(d)|0?(Jbb(f[b+24>>2]|0)|0)!=0:0){d=f[a+4>>2]|0;n=f[b+28>>2]|0;m=Jbb(n)|0;_0a(e,n);QX(a,m,b);f[g>>2]=i;f[h>>2]=f[a+12>>2];f[h+4>>2]=f[a+16>>2];f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;x=0;ua(168,j|0,2);i=x;x=0;if(i&1){n=Ia()|0;zSa(j);Ua(n|0)}qda(j,h,h+8|0);x=0;f[c>>2]=f[g>>2];a=ka(13,e|0,c|0,j|0,d|0)|0;n=x;x=0;if(n&1){n=Ia()|0;zSa(j);Ua(n|0)}else{zSa(j);break}}else k=3;while(0);u=l;return a|0}function qu(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0.0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;i=k+8|0;g=k+4|0;j=k;if(b[135320]|0){l=DCa(134008,56456)|0;Ema(DCa(l,f[d>>2]|0)|0,10)|0}XP(e);h=+mb(19,f[d+4>>2]|0,f[d+8>>2]|0);if(!(b[135320]|0)){d=d+16|0;e=c+4|0}else{m=DCa(Bm(DCa(134008,56710)|0,h)|0,56736)|0;e=c+4|0;l=f[e>>2]|0;d=d+16|0;f[g>>2]=f[d>>2];f[i>>2]=f[g>>2];l=(MI(l,i)|0)+4|0;Ema(Am(m,f[l>>2]|0)|0,10)|0}m=f[e>>2]|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];m=(MI(m,i)|0)+4|0;kba(a,h,f[m>>2]|0);u=k;return}function ru(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+48|0;d=g+16|0;e=g;Ow(d,b,f[c+8>>2]|0);do if(!(K0a(d)|0))if(!(TRa(d)|0)){c=f[c+16>>2]|0;if(!c){a1a(a);break}else{Ow(a,b,c);break}}else{Ow(a,b,f[c+12>>2]|0);if(K0a(a)|0)break;if(f[c+16>>2]|0)break;EXa(e);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];break}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}while(0);u=g;return}function su(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;l=m;a:do if(!a)a=0;else{n=c;i=e-n>>2;k=g+12|0;j=f[k>>2]|0;i=(j|0)>(i|0)?j-i|0:0;j=d;n=j-n|0;g=n>>2;if((n|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,c,g)|0)!=(g|0):0){a=0;break}do if((i|0)>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;aH(l,i,h);x=0;g=ja(f[(f[a>>2]|0)+48>>2]|0,a|0,((b[l+8+3>>0]|0)<0?f[l>>2]|0:l)|0,i|0)|0;n=x;x=0;if(!(n&1)){oTa(l);if((g|0)==(i|0))break;else{a=0;break a}}else{n=Ia()|0;oTa(l);Ua(n|0)}}while(0);n=e-j|0;e=n>>2;if((n|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,d,e)|0)!=(e|0):0){a=0;break}f[k>>2]=0}while(0);u=m;return a|0}function tu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+16|0;i=n+8|0;j=n;ZUa(i,b);k=Jbb(f[i+4>>2]|0)|0;l=f[a+4>>2]|0;a:do if(l){m=l+-1|0;g=(m&l|0)==0;if(!g)if(k>>>0>>0)h=k;else h=(k>>>0)%(l>>>0)|0;else h=m&k;a=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(a){d=i+4|0;e=j+4|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;if((c|0)==(k|0)){ZUa(i,a+8|0);ZUa(j,b);if(RAa(f[i>>2]|0,f[d>>2]|0,f[j>>2]|0,f[e>>2]|0)|0)break a}else{if(!g){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0}else c=c&m;if((c|0)!=(h|0)){a=0;break a}}}}else a=0}else a=0;while(0);u=n;return a|0}function uu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;while(1){if((a|0)==(b|0))break;g=f[a>>2]|0;f[h>>2]=g;j=(Vz(c,h)|0)==0;d=g+48|0;e=f[d>>2]|0;g=g+52|0;if(j){f[g>>2]=e;j=f[a>>2]|0;f[j+40>>2]=f[j+36>>2]}else{j=bD(e,f[g>>2]|0,c)|0;mla(d,j,f[(f[a>>2]|0)+52>>2]|0);j=f[a>>2]|0;g=j+36|0;j=bD(f[g>>2]|0,f[j+40>>2]|0,c)|0;mla(g,j,f[(f[a>>2]|0)+40>>2]|0)}a=a+4|0}u=i;return}function vu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;i=a+4|0;g=Jbb(f[i>>2]|0)|0;d=c+32|0;DCa(g,Fha(f[d>>2]|0)|0)|0;if(b[c+20>>0]|0)DCa(f[i>>2]|0,75515)|0;DCa(f[i>>2]|0,75523)|0;g=c+8|0;a=b[g>>0]|0;if(!((a&255)>=4?!((a&255)<8&(f[d>>2]|0)==2):0))e=5;a:do if((e|0)==5)switch(a<<24>>24){case 1:{Ema(f[i>>2]|0,56)|0;break a}case 2:{DCa(f[i>>2]|0,75506)|0;break a}case 4:{DCa(f[i>>2]|0,75509)|0;break a}default:hb()}while(0);a=c+12|0;if(Jbb(f[a>>2]|0)|0){e=DCa(f[i>>2]|0,75479)|0;zm(e,Jbb(f[a>>2]|0)|0)|0}a=c+16|0;c=Jbb(f[a>>2]|0)|0;if((c|0)!=(h[g>>0]|0)){i=DCa(f[i>>2]|0,75530)|0;zm(i,Jbb(f[a>>2]|0)|0)|0}return}function wu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=(c-b|0)/24|0;d=a+8|0;h=f[a>>2]|0;do if(e>>>0>(((f[d>>2]|0)-h|0)/24|0)>>>0){n5(a);if(e>>>0>178956970)dea();else{i=((f[d>>2]|0)-(f[a>>2]|0)|0)/24|0;j=i<<1;Eja(a,i>>>0<89478485?(j>>>0>>0?e:j):178956970);bca(a,b,c);break}}else{j=a+4|0;i=((f[j>>2]|0)-h|0)/24|0;g=e>>>0>i>>>0;i=g?b+(i*24|0)|0:c;e=h;d=b;while(1){if((d|0)==(i|0))break;Y8(e,d)|0;e=e+24|0;d=d+24|0}if(g){bca(a,i,c);break}d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-24|0;hQa(c);d=c}f[j>>2]=e}while(0);return}function xu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+32|0;c=g+16|0;d=g;EXa(d);switch(f[b+4>>2]|0){case 1:{t$a(c,0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 2:{XSa(c,0,0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 3:{HAa(c,0.0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 4:{pqa(c,0.0);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];f[d+12>>2]=f[c+12>>2];e=8;break}case 0:{c=jUa(b)|0;break}case 5:{c=gXa(b)|0;break}default:e=8}if((e|0)==8){f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];c=e0(a,c)|0}u=g;return c|0}function yu(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;h=k;Xra(a);f[a>>2]=41872;f[a+32>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;c=a+52|0;i=a+68|0;j=a+98|0;e=c;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));d[c+44>>1]=0;b[c+46>>0]=0;c=a+4|0;lVa(h,f[c>>2]|0);x=0;e=ga(286,f[h>>2]|0)|0;g=x;x=0;if(g&1){g=Ja(0)|0;y2a(g)}OCa(h);do if(e){lVa(h,f[c>>2]|0);x=0;c=ia(73,f[h>>2]|0,135184)|0;g=x;x=0;if(g&1){c=Ia()|0;OCa(h);break}else{f[i>>2]=c;OCa(h);l=f[i>>2]|0;l=(bc[f[(f[l>>2]|0)+28>>2]&511](l)|0)&1;b[j>>0]=l;l=7;break}}else l=7;while(0);do if((l|0)==7){x=0;ja(f[(f[a>>2]|0)+12>>2]|0,a|0,0,4096)|0;l=x;x=0;if(l&1){c=Ia()|0;break}else{u=k;return}}while(0);cXa(a);Ua(c|0)}function zu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+64|0;d=g+24|0;e=g;c=hX(a,f[b>>2]|0)|0;a:do if((c|0)==(a+4|0)){c=a+12|0;KHa(e);f[d>>2]=f[b>>2];x=0;ua(1494,d+4|0,e|0);h=x;x=0;do if(!(h&1)){x=0;ua(1497,c|0,d|0);h=x;x=0;if(h&1){c=Ia()|0;NWa(d);break}else{NWa(d);YDa(e);c=f[c>>2]|0;h=f[b>>2]|0;f[e>>2]=h;f[e+4>>2]=c;rC(d,a,h,e);break a}}else c=Ia()|0;while(0);YDa(e);Ua(c|0)}else c=f[c+20>>2]|0;while(0);u=g;return c+12|0}function Au(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+272|0;j=m;k=m+256|0;e=f[b>>2]|0;f[k>>2]=e;l=(a|0)!=0;h=l?d:256;g=l?a:j;d=e;a:do if((h|0)!=0&(e|0)!=0){a=0;i=c;while(1){c=i>>>0>=h>>>0;if(!(c|i>>>0>32)){c=i;i=h;break a}d=c?h:i;c=i-d|0;d=rr(g,k,d)|0;if((d|0)==-1)break;e=(g|0)==(j|0);h=h-(e?0:d)|0;g=e?g:g+d|0;a=d+a|0;d=f[k>>2]|0;e=d;if((h|0)!=0&(d|0)!=0)i=c;else{i=h;break a}}e=f[k>>2]|0;a=-1;i=0;d=e}else{a=0;i=h}while(0);do if((d|0)!=0?(i|0)!=0&(c|0)!=0:0){h=c;e=i;while(1){c=_F(g,f[d>>2]|0)|0;if((c+1|0)>>>0<2){e=11;break}d=d+4|0;h=h+-1|0;e=e-c|0;a=c+a|0;if(!((e|0)!=0&(h|0)!=0)){e=13;break}else g=g+c|0}if((e|0)==11){j=(c|0)==0;f[k>>2]=j?0:d;a=j?a:-1;d=j?0:d;break}else if((e|0)==13){f[k>>2]=d;break}}else d=e;while(0);if(l)f[b>>2]=d;u=m;return a|0}function Bu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;e=j+4|0;g=j+8|0;i=j;hLa(g,(Jbb(f[a+32>>2]|0)|0)<<16,0);if((f[c>>2]|0)==1){d=TRa(c)|0;c=d;d=((d|0)<0)<<31>>31}else{c=oJa(c)|0;d=I}l=b+16|0;m=Jbb(f[l>>2]|0)|0;k=Jbb(f[g>>2]|0)|0;io(a,m,0,k,0,58262);io(a,c,d,k-(Jbb(f[l>>2]|0)|0)|0,0,58278);d=BOa(c|0,d|0,Jbb(f[l>>2]|0)|0,0)|0;g=I;b=b+12|0;io(a,h[b>>0]|0,0,k,0,58293);hLa(i,d,g);vX(a,f[i>>2]|0,h[b>>0]|0);hLa(e,d,g);u=j;return f[e>>2]|0}function Cu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+4|0;i=j;do if(b[a+33>>0]|0){h=DCa(134176,110863)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);oGa(a,f[c+12>>2]|0);d=a+28|0;g=f[d>>2]|0;k=c+4|0;h=Qab(f[k>>2]|0)|0;h=Gv(g,h?34:33)|0;c=i_(a+44|0,c+8|0)|0;n4a(i,f[c>>2]|0);Yr(h,f[i>>2]|0)|0;if((f[k>>2]|0)==5)iTa(f[d>>2]|0);u=j;return}function Du(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;j=u;u=u+16|0;e=j+4|0;g=j+8|0;i=j;hLa(g,(Jbb(f[a+32>>2]|0)|0)<<16,0);if((f[c>>2]|0)==1){d=TRa(c)|0;c=d;d=((d|0)<0)<<31>>31}else{c=oJa(c)|0;d=I}l=b+12|0;m=Jbb(f[l>>2]|0)|0;k=Jbb(f[g>>2]|0)|0;io(a,m,0,k,0,58262);io(a,c,d,k-(Jbb(f[l>>2]|0)|0)|0,0,58278);d=BOa(c|0,d|0,Jbb(f[l>>2]|0)|0,0)|0;g=I;b=b+8|0;io(a,h[b>>0]|0,0,k,0,58293);hLa(i,d,g);vX(a,f[i>>2]|0,h[b>>0]|0);hLa(e,d,g);u=j;return f[e>>2]|0}function Eu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;k=o+16|0;g=o+8|0;i=o;l=b+8|0;Q$a(k,l);LUa(g,l);l=a+32|0;j=b+32|0;m=a+36|0;n=a+40|0;h=k+4|0;e=f[g>>2]|0;g=f[g+4>>2]|0;d=a+28|0;while(1){if(!(qTa(f[k>>2]|0,f[h>>2]|0,e,g)|0))break;c=QOa(k)|0;if(g2a(f[c>>2]|0,f[d>>2]|0)|0){a=f[j>>2]|0;if(!a)a=0;else a=f[a+4>>2]|0;f[i>>2]=a;c=f[m>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[c>>2]=a;f[m>>2]=c+4}else LL(l,i)}YYa(k)}if(g2a(f[b+24>>2]|0,f[d>>2]|0)|0){a=f[j>>2]|0;if(!a)a=0;else a=f[a+4>>2]|0;f[k>>2]=a;c=f[m>>2]|0;if(c>>>0<(f[n>>2]|0)>>>0){f[c>>2]=a;f[m>>2]=c+4}else LL(l,k)}u=o;return}function Fu(){var a=0,c=0;if((b[130928]|0)==0?VWa(130928)|0:0){c=129824;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=129992)}bFa(129824,120372)|0;bFa(129836,120379)|0;bFa(129848,120386)|0;bFa(129860,120394)|0;bFa(129872,120404)|0;bFa(129884,120413)|0;bFa(129896,120420)|0;bFa(129908,120429)|0;bFa(129920,120433)|0;bFa(129932,120437)|0;bFa(129944,120441)|0;bFa(129956,120445)|0;bFa(129968,120449)|0;bFa(129980,120453)|0;return}function Gu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;e=a+104|0;i=a+4|0;f[a>>2]=33580;f[e>>2]=33600;Laa(a+104|0,i);f[a+176>>2]=0;f[a+180>>2]=-1;f[a>>2]=41940;f[e>>2]=41960;x=0;ta(476,i|0);i=x;x=0;if(i&1){i=Ia()|0;t1a(e);Ua(i|0)}f[g>>2]=a;x=0;ua(88,g+4|0,b|0);i=x;x=0;do if(!(i&1)){f[g+16>>2]=c;f[g+20>>2]=d;x=0;b=ga(285,g|0)|0;i=x;x=0;if(i&1){b=Ia()|0;GGa(g);break}else{i=a+188|0;f[a+184>>2]=31180;f[i>>2]=31200;Laa(i,b);f[a+260>>2]=0;f[a+264>>2]=-1;GGa(g);u=h;return}}else b=Ia()|0;while(0);wOa(a);Ua(b|0)}function Hu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=c-b>>4;d=a+8|0;h=f[a>>2]|0;do if(e>>>0>(f[d>>2]|0)-h>>4>>>0){g5(a);if(e>>>0>268435455)dea();else{i=(f[d>>2]|0)-(f[a>>2]|0)|0;j=i>>3;nla(a,i>>4>>>0<134217727?(j>>>0>>0?e:j):268435455);Bba(a,b,c);break}}else{j=a+4|0;i=(f[j>>2]|0)-h>>4;g=e>>>0>i>>>0;i=g?b+(i<<4)|0:c;e=h;d=b;while(1){if((d|0)==(i|0))break;Tea(e,d)|0;e=e+16|0;d=d+16|0}if(g){Bba(a,i,c);break}d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-16|0;P_a(c);d=c}f[j>>2]=e}while(0);return}function Iu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110663)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+12>>2]|0);Ypa(a,f[c+16>>2]|0);if((f[c+4>>2]|0)==5)EM(a);else FS(a,c);u=i;return}function Ju(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110795)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+24>>2]|0);Ypa(a,f[c+28>>2]|0);if((f[c+4>>2]|0)==5)EM(a);else FS(a,c);u=i;return}function Ku(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return wb(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Lu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=c-b>>4;d=a+8|0;h=f[a>>2]|0;do if(e>>>0>(f[d>>2]|0)-h>>4>>>0){g5(a);if(e>>>0>268435455)dea();else{i=(f[d>>2]|0)-(f[a>>2]|0)|0;j=i>>3;nla(a,i>>4>>>0<134217727?(j>>>0>>0?e:j):268435455);Nba(a,b,c);break}}else{j=a+4|0;i=(f[j>>2]|0)-h>>4;g=e>>>0>i>>>0;i=g?b+(i<<4)|0:c;e=h;d=b;while(1){if((d|0)==(i|0))break;$ea(e,d)|0;e=e+16|0;d=d+16|0}if(g){Nba(a,i,c);break}d=f[j>>2]|0;while(1){if((d|0)==(e|0))break;c=d+-16|0;P_a(c);d=c}f[j>>2]=e}while(0);return}function Mu(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;l=m;a:do if(!a)a=0;else{n=c;i=e-n|0;k=g+12|0;j=f[k>>2]|0;i=(j|0)>(i|0)?j-i|0:0;j=d;g=j-n|0;if((g|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,c,g)|0)!=(g|0):0){a=0;break}do if((i|0)>0){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e_(l,i,h);x=0;g=ja(f[(f[a>>2]|0)+48>>2]|0,a|0,((b[l+11>>0]|0)<0?f[l>>2]|0:l)|0,i|0)|0;n=x;x=0;if(!(n&1)){MTa(l);if((g|0)==(i|0))break;else{a=0;break a}}else{n=Ia()|0;MTa(l);Ua(n|0)}}while(0);e=e-j|0;if((e|0)>0?(ec[f[(f[a>>2]|0)+48>>2]&127](a,d,e)|0)!=(e|0):0){a=0;break}f[k>>2]=0}while(0);u=m;return a|0}function Nu(){var a=0,c=0;if((b[131008]|0)==0?VWa(131008)|0:0){c=130576;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=130744)}aFa(130576,48768)|0;aFa(130588,48796)|0;aFa(130600,48824)|0;aFa(130612,48856)|0;aFa(130624,48896)|0;aFa(130636,48932)|0;aFa(130648,48960)|0;aFa(130660,48996)|0;aFa(130672,49012)|0;aFa(130684,49028)|0;aFa(130696,49044)|0;aFa(130708,49060)|0;aFa(130720,49076)|0;aFa(130732,49092)|0;return}function Ou(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;kg(a,b,c);do if(!(K0a(a)|0)){d=c+4|0;e=f[d>>2]|0;g=v2a(e)|0;b=f[a>>2]|0;if(g){if((b|0)==(e|0))break}else if((v2a(b)|0)^1|(b|0)==(e|0))break;g=DCa(134176,101252)|0;g=DCa(DCa(g,Fha(f[d>>2]|0)|0)|0,101262)|0;Ema(xm(DCa(DCa(g,Fha(f[a>>2]|0)|0)|0,101272)|0,c)|0,10)|0;if((f[a>>2]|0)!=(f[d>>2]|0))Ca(101279,101308,128,110563)}while(0);return}function Pu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;e=k;g=k+4|0;f[e>>2]=b;h=nRa(f[b>>2]|0)|0;j=a+16|0;i=f[a+80>>2]|0;do if(!i)if(Qab(f[h+4>>2]|0)|0){f[b>>2]=f[h+12>>2];break}else{j=f[a+36>>2]|0;Jbb(j)|0;_0a(g,j);j=lNa(f[g>>2]|0,f[h+12>>2]|0)|0;f[b>>2]=j;break}else{f[g>>2]=1;d=h+8|0;a=i+28|0;c=f[a>>2]|0;if(c>>>0<(f[i+32>>2]|0)>>>0){mV(c,1,f[d>>2]|0,b);f[a>>2]=(f[a>>2]|0)+16}else FA(i+24|0,g,d,e);a=SX(f[h+12>>2]|0)|0;if(a|0){i=a+8|0;h_(j,f[d>>2]|0,f[i>>2]|0);h_(j,f[d>>2]|0,f[i>>2]|0)}}while(0);u=k;return}function Qu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;g=k+28|0;h=k+4|0;j=k+16|0;i=k;a:do if(b)b=1;else{f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,d,j7a(d)|0);x=0;ia(83,j|0,81339)|0;d=x;x=0;do if(!(d&1)){f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];b=0;while(1){if((b|0)==3)break;f[j+(b<<2)>>2]=0;b=b+1|0}f[i>>2]=f[c>>2];x=0;f[g>>2]=f[i>>2];wa(103,a|0,h|0,g|0,e|0);i=x;x=0;if(i&1){b=Ia()|0;MTa(h);break}else{MTa(h);MTa(j);b=0;break a}}else b=Ia()|0;while(0);MTa(j);Ua(b|0)}while(0);u=k;return b|0}function Ru(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h;i=h+8|0;f[e>>2]=c;g=s8(24)|0;CWa(g);oaa(f[a>>2]|0,g);f[g+20>>2]=c;f[c+96>>2]=g;a:do if((Jbb(f[b+8>>2]|0)|0)>>>0>1){wZ(b,c);wX(c,d,b);KHa(i);x=0;ua(1460,i|0,e|0);e=x;x=0;do if(!(e&1)){a=Jbb(f[d+16>>2]|0)|0;b=T6a(d)|0;while(1){c=a;if((b|0)==(c|0)){b=5;break}x=0;wa(131,f[a+8>>2]|0,1,g|0,i|0);e=x;x=0;if(e&1){b=9;break}a=f[c+4>>2]|0}if((b|0)==5){YDa(i);break a}else if((b|0)==9){a=Ia()|0;break}}else a=Ia()|0;while(0);YDa(i);Ua(a|0)}while(0);u=h;return g|0}function Su(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h;f[a+4>>2]=0;x=0;va(150,c|0,a|0,1);d=x;x=0;do if(d&1){c=-1;g=8}else{if(b[c>>0]|0){c=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;d=x;x=0;if(d&1){c=-1;g=8;break}}else c=d7a(b[d>>0]|0)|0;if(g2a(c,-1)|0?(d=a+(f[(f[a>>2]|0)+-12>>2]|0)|0,x=0,ua(100,d|0,f[d+16>>2]|2|0),d=x,x=0,d&1):0){g=8;break}}else c=-1;e=c}while(0);do if((g|0)==8){g=Ja(0)|0;Fa(g|0)|0;x=0;ta(450,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);g=x;x=0;if(!(g&1)){Ga();e=c;break}c=Ia()|0;x=0;sa(6);g=x;x=0;if(g&1){g=Ja(0)|0;y2a(g)}else Ua(c|0)}while(0);u=h;return e|0}function Tu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;e=m;h=m+16|0;i=m6()|0;j=e+12|0;k=e+8|0;a:while(1){cz(c);d=f[c>>2]|0;if((b[d>>0]|0)==59){g=d;break}Dh(e,d);if((f[j>>2]|0)!=2){l=4;break}n4a(h,0);f[c>>2]=(f[c>>2]|0)+(f[k>>2]|0);cz(c);d=f[c>>2]|0;if((b[d>>0]|0)==61){f[c>>2]=d+1;cz(c);d=Rm(a,c,66044)|0;f[h>>2]=d}else d=f[h>>2]|0;zM(i,f[e>>2]|0,d);cz(c);d=f[c>>2]|0;switch(b[d>>0]|0){case 59:{l=11;break a}case 44:break;default:{l=10;break a}}f[c>>2]=d+1}if((l|0)==4)Ca(66016,65740,437,66035);else if((l|0)==10)hb();else if((l|0)==11)g=d;f[c>>2]=g+1;u=m;return i|0}function Uu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;d=i+4|0;j=i+8|0;h=i;f[d>>2]=b;f[j>>2]=j;e=j+4|0;f[e>>2]=j;g=j+8|0;f[g>>2]=0;x=0;ua(1492,j|0,d|0);d=x;x=0;if(d&1)b=Ia()|0;else{d=a+4|0;a:while(1){if(!(f[g>>2]|0)){a=17;break}a=f[(f[e>>2]|0)+8>>2]|0;f[h>>2]=a;Yma(j);if(!(DQa(d,a)|0)){x=0;ua(1460,d|0,h|0);c=x;x=0;if(c&1){a=6;break}b=Jbb(f[a+16>>2]|0)|0;while(1){c=b;if((T6a(a)|0)==(c|0))break;x=0;ua(1492,j|0,b+8|0);b=x;x=0;if(b&1){a=14;break a}b=f[c+4>>2]|0}}}if((a|0)==6)b=Ia()|0;else if((a|0)==14)b=Ia()|0;else if((a|0)==17){iVa(j);u=i;return}}iVa(j);Ua(b|0)}function Vu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;a:do if(b[c>>0]|0){if(!(b[c+1>>0]|0)){h=a+4|0;Nwa(f[a>>2]|0,f[h>>2]|0)|0;SN(a,c);DCa(f[a>>2]|0,f[a+16>>2]|0)|0}else h=a+4|0;i=f[c+20>>2]|0;g=f[c+16>>2]|0;while(1){if((g|0)==(i|0))break a;d=g+4|0;c=g+8|0;if((f[d>>2]|0)!=(f[c>>2]|0)){Nwa(f[a>>2]|0,f[h>>2]|0)|0;Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80926)|0;ir(a,f[g>>2]|0);e=f[c>>2]|0;c=f[d>>2]|0;while(1){if((c|0)==(e|0))break;d=f[c>>2]|0;Ema(f[a>>2]|0,32)|0;x4(d,f[a>>2]|0)|0;c=c+4|0}DCa(f[a>>2]|0,87606)|0}g=g+16|0}}while(0);return}function Wu(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110991)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);e=a+28|0;Gv(f[e>>2]|0,3)|0;e=f[e>>2]|0;d=f[c+4>>2]|0;Pr(e,r8((d|0)==5?0:d)|0)|0;d=c+8|0;e=a+60|0;g=f[e>>2]|0;if((g|0)==(f[a+64>>2]|0))LL(a+56|0,d);else{f[g>>2]=f[d>>2];f[e>>2]=(f[e>>2]|0)+4}bE(f[c+12>>2]|0);u=i;return}function Xu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;k=m+32|0;g=m+16|0;e=m;i=a+28|0;d=f[i>>2]|0;f[e>>2]=d;j=a+20|0;d=(f[j>>2]|0)-d|0;f[e+4>>2]=d;f[e+8>>2]=b;f[e+12>>2]=c;d=d+c|0;h=a+60|0;f[g>>2]=f[h>>2];f[g+4>>2]=e;f[g+8>>2]=2;g=N_a(Ya(146,g|0)|0)|0;a:do if((d|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;d=d-g|0;o=f[e+4>>2]|0;n=g>>>0>o>>>0;e=n?e+8|0:e;b=b+(n<<31>>31)|0;o=g-(n?o:0)|0;f[e>>2]=(f[e>>2]|0)+o;n=e+4|0;f[n>>2]=(f[n>>2]|0)-o;f[k>>2]=f[h>>2];f[k+4>>2]=e;f[k+8>>2]=b;g=N_a(Ya(146,k|0)|0)|0;if((d|0)==(g|0)){l=3;break a}}f[a+16>>2]=0;f[i>>2]=0;f[j>>2]=0;f[a>>2]=f[a>>2]|32;if((b|0)==2)c=0;else c=c-(f[e+4>>2]|0)|0}else l=3;while(0);if((l|0)==3){o=f[a+44>>2]|0;f[a+16>>2]=o+(f[a+48>>2]|0);f[i>>2]=o;f[j>>2]=o}u=m;return c|0}function Yu(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;k=j+8|0;i=j;f[k>>2]=0;h=k+4|0;f[h>>2]=0;g=k+8|0;f[g>>2]=0;c=a+52|0;a:while(1){c=f[c>>2]|0;if(!c){d=3;break}d=c;do if(xj(b,d+24|0)|0){d=d+8|0;e=f[h>>2]|0;if((e|0)==(f[g>>2]|0)){x=0;ua(2535,k|0,d|0);e=x;x=0;if(e&1){d=9;break a}else break}else{ZUa(e,d);f[h>>2]=(f[h>>2]|0)+8;break}}while(0)}do if((d|0)==3){e=f[h>>2]|0;d=a+44|0;c=f[k>>2]|0;while(1){if((c|0)==(e|0)){d=11;break}ZUa(i,c);x=0;ua(2536,d|0,i|0);a=x;x=0;if(a&1){d=14;break}c=c+8|0}if((d|0)==11){zSa(k);u=j;return}else if((d|0)==14){c=Ia()|0;break}}else if((d|0)==9)c=Ia()|0;while(0);zSa(k);Ua(c|0)}function Zu(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;XX(o+1|0,124544,1,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1;q=n+23|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Hga(m,q,p,o,k)|0)|0;e=AS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1|44)+-1<<2)|0)+15&-16)|0;dYa(j,c);x=0;za(6,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;OCa(j);Ua(r|0)}else{OCa(j);r=su(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function _u(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=((f[a+4>>2]|0)-(f[a>>2]|0)>>2)+-2|0;a:while(1){if((e|0)<=-1){h=0;break}g=f[a>>2]|0;c=f[g+(e<<2)>>2]|0;g=f[g+(e+1<<2)>>2]|0;b=f[c>>2]|0;if(zab(b)|0){c=aSa(c)|0;d=c+12|0;c=c+16|0;b=0;while(1){if(b>>>0>=((Jbb(f[c>>2]|0)|0)+-1|0)>>>0)break;j=ODa(d,b)|0;if((f[j>>2]|0)==(g|0)){h=0;break a}else b=b+1|0}j=RCa(d)|0;if((f[j>>2]|0)!=(g|0)){i=8;break}}else{if(!(Dab(b)|0)){i=14;break}b=vSa(c)|0;if((g|0)==(f[b+8>>2]|0)){h=0;break}c=f[b+16>>2]|0;if(!c){h=0;break}if(!((g|0)==(c|0)?1:(g|0)==(f[b+12>>2]|0))){i=13;break}}e=e+-1|0}if((i|0)==8)Ca(118549,118577,62,118668);else if((i|0)==13)Ca(118622,118577,68,118668);else if((i|0)==14)h=S6a(b)|0;return h|0}function $u(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;XX(o+1|0,124544,0,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1|22;q=n+1|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Hga(m,q,p,o,k)|0)|0;e=AS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1)+-1<<2)|0)+15&-16)|0;dYa(j,c);x=0;za(6,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;OCa(j);Ua(r|0)}else{OCa(j);r=su(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function av(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;XX(o+1|0,124544,1,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1;q=n+23|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Hga(m,q,p,o,k)|0)|0;e=AS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1|44)+-1|0)|0)+15&-16)|0;dYa(j,c);x=0;za(4,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;OCa(j);Ua(r|0)}else{OCa(j);r=Mu(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function bv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;l=o+16|0;e=o+8|0;m=o+4|0;n=o;do if(!(g2a(c,-1)|0)){k=d7a(c)|0;b[e>>0]=k;if(b[a+44>>0]|0)if((LHa(e,1,1,f[a+32>>2]|0)|0)==1){d=14;break}else{a=-1;break}f[m>>2]=l;d=e+1|0;g=a+36|0;h=a+40|0;i=l+8|0;j=l;k=a+32|0;while(1){a=f[g>>2]|0;a=lc[f[(f[a>>2]|0)+12>>2]&15](a,f[h>>2]|0,e,d,n,l,i,m)|0;if((f[n>>2]|0)==(e|0)){d=13;break}if((a|0)==3){d=7;break}if(a>>>0>=2){d=13;break}e=(f[m>>2]|0)-j|0;if((LHa(l,1,e,f[k>>2]|0)|0)!=(e|0)){d=13;break}if((a|0)==1)e=f[n>>2]|0;else{d=12;break}}if((d|0)==7)if((LHa(e,1,1,f[k>>2]|0)|0)==1)d=12;else d=13;if((d|0)==12){d=14;break}else if((d|0)==13){a=-1;break}}else d=14;while(0);if((d|0)==14)a=dXa(c)|0;u=o;return a|0}function cv(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+32|0;k=l+8|0;o=l;i=l+20|0;j=l+16|0;a=o;f[a>>2]=37;f[a+4>>2]=0;a=c+4|0;XX(o+1|0,124544,0,f[a>>2]|0);n=(f[a>>2]|0)>>>9&1|22;q=n+1|0;h=Ib()|0;m=u;u=u+((1*q|0)+15&-16)|0;p=kOa()|0;r=k;f[r>>2]=e;f[r+4>>2]=g;g=m+(Hga(m,q,p,o,k)|0)|0;e=AS(m,g,f[a>>2]|0)|0;a=u;u=u+((1*((n<<1)+-1|0)|0)+15&-16)|0;dYa(j,c);x=0;za(4,m|0,e|0,g|0,a|0,k|0,i|0,j|0);g=x;x=0;if(g&1){r=Ia()|0;OCa(j);Ua(r|0)}else{OCa(j);r=Mu(f[b>>2]|0,a,f[k>>2]|0,f[i>>2]|0,c,d)|0;Hb(h|0);u=l;return r|0}return 0}function dv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110713)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=c+12|0;Ypa(a,f[j>>2]|0);if((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,Ypa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0)FS(a,c);u=i;return}function ev(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;a:do switch(f[a+4>>2]|0){case 1:{if((b+-1|0)>>>0<2){d=(b|0)==1?24:16;_0a(g,c);b=I_(d,1,c)|0;e=f[g>>2]|0;g=Kpa(e,10,a,b)|0;d=Kpa(e,12,g,I_(d,1,c)|0)|0;break a}if((b|0)==4)d=a;else Ca(64860,64871,81,64887);break}case 2:{switch(b|0){case 8:{d=a;break a}case 1:{e=56;break}case 4:case 2:{e=(b|0)==2?48:32;break}default:Ca(64918,64871,98,64887)}_0a(g,c);d=I_(e,2,c)|0;g=f[g>>2]|0;d=Kpa(g,37,Kpa(g,35,a,d)|0,I_(e,2,c)|0)|0;break}default:Ca(64899,64871,84,64887)}while(0);u=h;return d|0}function fv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+64|0;c=j+16|0;g=j+48|0;d=j+52|0;i=j+36|0;e=j+32|0;k=j;a=f[a+36>>2]|0;Jbb(a)|0;_0a(g,a);f[d>>2]=f[33161];a=f[33183]|0;f[33183]=a+1;t$a(k,a);f[c>>2]=f[k>>2];f[c+4>>2]=f[k+4>>2];f[c+8>>2]=f[k+8>>2];f[c+12>>2]=f[k+12>>2];a=e0(g,c)|0;f[e>>2]=a;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;x=0;ua(168,i|0,1);a=x;x=0;if(a&1){k=Ia()|0;zSa(i);Ua(k|0)}qda(i,e,e+4|0);x=0;f[c>>2]=f[d>>2];c=ka(10,g|0,c|0,i|0,0)|0;k=x;x=0;if(!(k&1)?(x=0,h=ja(51,g|0,c|0,b|0)|0,k=x,x=0,!(k&1)):0){zSa(i);u=j;return h|0}k=Ia()|0;zSa(i);Ua(k|0);return 0}function gv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+48|0;l=k+24|0;i=k+12|0;j=k;iw(l,b);e=f[a+4>>2]|0;g=j+4|0;h=j+8|0;c=l+4|0;d=i+4|0;b=f[a>>2]|0;while(1){if((b|0)==(e|0)){b=1;a=9;break}x=0;ua(2982,i|0,f[b>>2]|0);a=x;x=0;if(a&1){a=6;break}f[j>>2]=0;f[g>>2]=0;f[h>>2]=0;x=0;xa(10,f[l>>2]|0,c|0,f[i>>2]|0,d|0,j|0);a=x;x=0;if(a&1){a=7;break}a=(f[g>>2]|0)==(f[j>>2]|0);zSa(j);RTa(i);if(a)b=b+4|0;else{b=0;a=9;break}}if((a|0)==6)b=Ia()|0;else if((a|0)==7){b=Ia()|0;zSa(j);RTa(i)}else if((a|0)==9){RTa(l);u=k;return b|0}RTa(l);Ua(b|0);return 0}function hv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;f[a>>2]=b;i=a+4|0;f[i>>2]=0;h=a+8|0;f[h>>2]=0;f[a+12>>2]=0;v8(a+16|0,1337);x=0;ua(3131,i|0,c|0);g=x;x=0;do if(!(g&1)){d=0;while(1){if(d>>>0>=c>>>0){b=10;break}x=0;e=ga(326,b|0)|0;g=x;x=0;if(g&1){b=9;break}j=(f[i>>2]|0)+(d<<2)|0;g=f[j>>2]|0;f[j>>2]=e;if(g|0){zSa(g);Cbb(g)}d=d+1|0}if((b|0)==9){d=Ia()|0;break}else if((b|0)==10){N8(f[a+4>>2]|0,f[h>>2]|0);return}}else d=Ia()|0;while(0);QY(i);Ua(d|0)}function iv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j+16|0;c=j+8|0;g=j;i=v$a(b)|0;if((i|0)!=0?(f[c>>2]=f[i+8>>2],f[h>>2]=f[c>>2],!(OM(i,h)|0)):0){e=i+12|0;Q$a(h,e);LUa(g,e);d=h+4|0;c=f[g>>2]|0;b=f[g+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[d>>2]|0,c,b)|0))break;g=QOa(h)|0;Ypa(a,f[g>>2]|0);YYa(h)}if((f[i+4>>2]|0)==5?(i=RCa(e)|0,(f[(f[i>>2]|0)+4>>2]|0)!=5):0)EM(a)}else Ypa(a,b);u=j;return}function jv(a){a=a|0;var b=0,c=0,d=0;c=f[(f[a+12>>2]|0)+4>>2]|0;a:do if((c|0)==5)b=5;else{d=a+8|0;do switch(f[d>>2]|0){case 19:case 17:case 15:case 13:case 11:case 9:case 7:case 5:case 3:case 1:case 18:case 16:case 14:case 12:case 10:case 8:case 6:case 4:case 2:case 0:{b=c;break a}case 21:case 20:{b=1;break a}case 48:case 47:{b=1;break a}case 51:case 50:case 49:case 23:case 22:{b=2;break a}case 24:{b=1;break a}case 43:{b=4;break a}case 44:{b=3;break a}case 33:case 31:case 29:case 27:case 25:{b=1;break a}case 34:case 32:case 30:case 28:case 26:{b=2;break a}case 41:case 39:case 37:case 35:case 45:{b=3;break a}case 42:case 40:case 38:case 36:case 46:{b=4;break a}default:{Ema(Am(DCa(134176,93590)|0,f[d>>2]|0)|0,10)|0;hb()}}while(0)}while(0);f[a+4>>2]=b;return}function kv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;i=k+16|0;c=k;j=k+8|0;X9(c,a,b+12|0);d=f[c>>2]|0;f[i>>2]=d;e=i+4|0;h=c+4|0;g=f[h>>2]|0;f[e>>2]=g;f[c>>2]=0;f[h>>2]=0;h=a+104|0;c=f[h>>2]|0;do if(c>>>0>=(f[a+108>>2]|0)>>>0){x=0;ua(1457,a+100|0,i|0);h=x;x=0;if(h&1){k=Ia()|0;Aoa(f[e>>2]|0);Aoa(0);Ua(k|0)}else{c=f[e>>2]|0;break}}else{f[c>>2]=d;f[c+4>>2]=g;f[i>>2]=0;f[e>>2]=0;f[h>>2]=c+8;c=0}while(0);Aoa(c);Aoa(0);c=b+8|0;if(Qab(f[c>>2]|0)|0){h=Jbb(f[a+84>>2]|0)|0;b=nUa(a)|0;f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];xFa(a,i,b);VPa(h,b,0)}u=k;return}function lv(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;m=l;k=f[a+60>>2]|0;d=f[a+56>>2]|0;a:while(1){if((d|0)==(k|0)){c=3;break}PS(m,f[d>>2]|0);c=f[d>>2]|0;e=f[c+28>>2]|0;g=f[m>>2]|0;c=f[c+24>>2]|0;while(1){if((c|0)==(e|0))break;h=f[c>>2]|0;x=0;b=ga(257,f[h>>2]|0)|0;j=x;x=0;if(j&1){c=11;break a}i=b+8|0;j=f[g+(f[i>>2]<<2)>>2]|0;x=0;b=ja(67,a|0,f[b+12>>2]|0,g|0)|0;n=x;x=0;if(n&1){c=12;break a}if((b|0)==(j|0)){x=0;ta(484,h|0);n=x;x=0;if(n&1){c=13;break a}}else f[g+(f[i>>2]<<2)>>2]=b;c=c+4|0}zSa(m);d=d+4|0}if((c|0)==3){u=l;return}else if((c|0)==11)b=Ia()|0;else if((c|0)==12)b=Ia()|0;else if((c|0)==13)b=Ia()|0;zSa(m);Ua(b|0)}function mv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k;do if((((((c-a|0)>2?(b[a>>0]|0)==112:0)?(b[a+1>>0]|0)==116:0)?(l=a+2|0,e=Bc(l,c,d)|0,(e|0)!=(l|0)):0)?(h=Bc(e,c,d)|0,(h|0)!=(e|0)):0)?(i=d+4|0,g=f[i>>2]|0,((g-(f[d>>2]|0)|0)/24|0)>>>0>=2):0){hY(j,g+-24|0);c=f[i>>2]|0;a=0;while(1){if((a|0)==-1)break;l=a+-1|0;OJa(c+(l*24|0)|0);a=l}f[i>>2]=c+-24;x=0;ia(216,c+-48|0,123542)|0;l=x;x=0;if(!(l&1)?(l=b[j+11>>0]|0,d=l<<24>>24<0,x=0,ja(97,(f[i>>2]|0)+-24|0,(d?f[j>>2]|0:j)|0,(d?f[j+4>>2]|0:l&255)|0)|0,l=x,x=0,!(l&1)):0){MTa(j);a=h;break}l=Ia()|0;MTa(j);Ua(l|0)}while(0);u=k;return a|0}function nv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;l=o+16|0;e=o+8|0;m=o+4|0;n=o;do if(!($5a(c)|0)){k=Jbb(c)|0;f[e>>2]=k;if(b[a+44>>0]|0)if((LHa(e,4,1,f[a+32>>2]|0)|0)==1){d=14;break}else{a=-1;break}f[m>>2]=l;d=e+4|0;g=a+36|0;h=a+40|0;i=l+8|0;j=l;k=a+32|0;while(1){a=f[g>>2]|0;a=lc[f[(f[a>>2]|0)+12>>2]&15](a,f[h>>2]|0,e,d,n,l,i,m)|0;if((f[n>>2]|0)==(e|0)){d=13;break}if((a|0)==3){d=7;break}if(a>>>0>=2){d=13;break}e=(f[m>>2]|0)-j|0;if((LHa(l,1,e,f[k>>2]|0)|0)!=(e|0)){d=13;break}if((a|0)==1)e=f[n>>2]|0;else{d=12;break}}if((d|0)==7)if((LHa(e,1,1,f[k>>2]|0)|0)==1)d=12;else d=13;if((d|0)==12){d=14;break}else if((d|0)==13){a=-1;break}}else d=14;while(0);if((d|0)==14)a=ZVa(c)|0;u=o;return a|0}function ov(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m+4|0;k=m;l=rb(20,c|0)|0;if(!l)pc[f[(f[b>>2]|0)+20>>2]&4095](b,56929);if((l|0)==(-1|0)){XP(d);kba(a,+kb(21,c|0),e)}else{h=l;e=h+8|0;h=h+12|0;if(((f[h>>2]|0)-(f[e>>2]|0)>>2|0)!=((f[d+4>>2]|0)-(f[d>>2]|0)>>4|0))pc[f[(f[b>>2]|0)+20>>2]&4095](b,56948);c=0;while(1){i=f[e>>2]|0;if(c>>>0>=(f[h>>2]|0)-i>>2>>>0)break;if((f[i+(c<<2)>>2]|0)!=(f[(f[d>>2]|0)+(c<<4)>>2]|0))pc[f[(f[b>>2]|0)+20>>2]&4095](b,56981);c=c+1|0}f[k>>2]=f[l>>2];f[j>>2]=f[k>>2];Nk(a,g,j,d)}u=m;return}function pv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=b;e=c-k>>3;d=a+8|0;g=f[a>>2]|0;j=g;do if(e>>>0>(f[d>>2]|0)-g>>3>>>0){NAa(a);if(e>>>0>536870911)dea();else{j=(f[d>>2]|0)-(f[a>>2]|0)|0;k=j>>2;fma(a,j>>3>>>0<268435455?(k>>>0>>0?e:k):536870911);qfa(a,b,c);break}}else{i=a+4|0;h=(f[i>>2]|0)-g>>3;g=e>>>0>h>>>0;h=g?b+(h<<3)|0:c;e=j;d=b;while(1){if((d|0)==(h|0))break;f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];e=e+8|0;d=d+8|0}if(g){qfa(a,h,c);break}else{f[i>>2]=j+((h-k|0)>>>3<<3);break}}while(0);return}function qv(a,b){a=a|0;b=b|0;var c=0;do switch(f[b+8>>2]|0){case 71:case 70:case 58:case 57:case 41:case 40:case 16:case 15:case 75:case 73:case 74:case 72:case 62:case 60:case 61:case 59:case 48:case 49:case 46:case 47:case 44:case 45:case 42:case 43:case 23:case 24:case 21:case 22:case 19:case 20:case 17:case 18:case 69:case 68:case 67:case 64:case 63:case 56:case 55:case 54:case 51:case 50:case 39:case 38:case 37:case 36:case 35:case 34:case 33:case 32:case 26:case 25:case 14:case 13:case 12:case 11:case 10:case 9:case 8:case 7:case 1:case 0:{c=1;break}case 2:{c=2;break}case 3:{c=3;break}case 4:{c=3;break}case 5:{c=3;break}case 6:{c=3;break}case 27:{c=2;break}case 28:{c=3;break}case 29:{c=3;break}case 30:{c=3;break}case 31:{c=3;break}case 52:{c=2;break}case 53:{c=3;break}case 65:{c=2;break}case 66:{c=3;break}default:hb()}while(0);c=(Hr(a,f[b+12>>2]|0)|0)+c|0;return c+(Hr(a,f[b+16>>2]|0)|0)|0}function rv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;f[d>>2]=b;e=g;do if(g2a(b,f[33210]|0)|0){b=Jbb(a)|0;if(Oab(f[a>>2]|0)|0){d=BSa()|0;a=uPa(b)|0;n4a(e,ona(d,f[a>>2]|0,c)|0);break}else{n4a(e,Gqa(UTa()|0,a,c)|0);break}}else if(g2a(b,f[33221]|0)|0){d=Jbb(eua(3)|0)|0;n4a(e,Sqa(Sqa(Sqa(d,Boa(133128)|0)|0,a)|0,c)|0);break}else{b=Jbb(eua(4)|0)|0;b=Sqa(b,Boa(133156)|0)|0;n4a(e,Sqa(Sqa(Sqa(b,Boa(d)|0)|0,a)|0,c)|0);break}while(0);u=g;return f[e>>2]|0}function sv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;i=l+8|0;j=l+4|0;k=l;do if(!(b[a+33>>0]|0))d=a+28|0;else{g=DCa(134176,110843)|0;d=a+28|0;e=f[d>>2]|0;e=zm(g,(f[e+4>>2]|0)+1-(f[e>>2]|0)|0)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[i>>2]|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,m=x,x=0,!(m&1)):0){OCa(i);Wq(e,h)|0;fu(e)|0;break}m=Ia()|0;OCa(i);Ua(m|0)}while(0);m=Gv(f[d>>2]|0,35)|0;a=f[a+24>>2]|0;f[k>>2]=f[c+8>>2];f[i>>2]=f[k>>2];n4a(j,e2(a,i)|0);Yr(m,f[j>>2]|0)|0;u=l;return}function tv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110713)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=c+12|0;oGa(a,f[j>>2]|0);if((f[(f[j>>2]|0)+4>>2]|0)!=5?(j=c+16|0,oGa(a,f[j>>2]|0),(f[(f[j>>2]|0)+4>>2]|0)!=5):0){Gv(Gv(f[a+28>>2]|0,-2)|0,0)|0;FX(a,4,4,0)}u=i;return}function uv(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=c+144;f[a+8>>2]=d;b[a+12>>0]=e&1;c=a+16|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[a+40>>2]=-1;b[a+44>>0]=0;DUa(a+48|0);f[a+60>>2]=0;f[a+64>>2]=0;f[a+68>>2]=0;c=a+76|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;DUa(a+100|0);DUa(a+112|0);f[a+124>>2]=0;f[a+128>>2]=-1;DUa(a+132|0);c=a+184|0;d=a+144|0;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[c>>2]=1065353216;f[a+188>>2]=0;f[a+192>>2]=0;f[a+196>>2]=0;f[a+204>>2]=11;DUa(a+208|0);DUa(a+220|0);e=a+244|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+260>>2]=1065353216;f[a+264>>2]=0;return}function vv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;c=j+4|0;g=j;i=a+64|0;e=f[i>>2]|0;if(b[e+112>>0]|0?(b[e+113>>0]|0)==0:0){do if(b[a+72>>0]|0){d=DCa(134176,87891)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[c>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){OCa(c);Wq(d,h)|0;fu(d)|0;break}k=Ia()|0;OCa(c);Ua(k|0)}while(0);k=E$(a,5)|0;e=f[a+68>>2]|0;n4a(g,1);Yr(e,f[g>>2]|0)|0;i=f[i>>2]|0;e=f[i+92>>2]|0;g=f[i+96>>2]|0;h=(Jbb(g)|0)!=65535;BP(a,e,g,h,(b[i+114>>0]|0)!=0);WA(a,k)}u=j;return}function wv(a){a=a|0;var c=0,d=0,e=0,g=0;a:do if(!(b[a+32>>0]|0)){e=a+4|0;g=a+28|0;d=f[a>>2]|0;while(1){if((d|0)==(e|0))break;Is(f[g>>2]|0,f[d+20>>2]|0);c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}e=a+16|0;d=f[a+12>>2]|0;while(1){if((d|0)==(e|0))break a;_s(f[g>>2]|0,f[d+20>>2]|0);c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}}while(0);R7(a);f8(a+12|0);return}function xv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;g=h+12|0;i=h;e=(FWa(lF(Or(b,0)|0)|0,46)|0)+11|0;f[g>>2]=e;e=Op(g,(Ixa(c)|0)&255)|0;d=FWa(f[g>>2]|0,46)|0;f[g>>2]=d;if(d|0){d=d+1|0;f[g>>2]=d;if(!(H0(d,93084,7)|0))d=Js(a,b,c,e)|0;else d=am(a,b,c,e,d)|0;u=h;return d|0}b=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;h=j7a(93051)|0;x=0;va(87,i|0,93051,h|0);h=x;x=0;if(!(h&1)){x=0;ua(261,b|0,i|0);h=x;x=0;if(h&1)a=1;else{x=0;va(98,b|0,32200,457);x=0;a=0}d=Ia()|0;MTa(i);if(a)j=7}else{d=Ia()|0;j=7}if((j|0)==7)La(b|0);Ua(d|0);return 0}function yv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+11|0;d=b[i>>0]|0;e=d<<24>>24<0;if(e){k=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{k=d&255;g=10}c=k>>>0<11;j=c?10:(k+16&-16)+-1|0;a:do if((j|0)!=(g|0)){do if(c){c=f[a>>2]|0;if(e){g=0;d=c;e=a;h=12}else{eUa(a,c,(d&255)+1|0)|0;Cbb(c);h=15}}else{d=j+1|0;e=W1a(d)|0;if(j>>>0<=g>>>0&(e|0)==0)break a;c=b[i>>0]|0;if(c<<24>>24<0){g=1;d=f[a>>2]|0;h=12;break}else{eUa(e,a,(c&255)+1|0)|0;c=a+4|0;h=14;break}}while(0);if((h|0)==12){c=a+4|0;eUa(e,d,(f[c>>2]|0)+1|0)|0;Cbb(d);if(g){d=j+1|0;h=14}else h=15}if((h|0)==14){f[a+8>>2]=d|-2147483648;f[c>>2]=k;f[a>>2]=e;break}else if((h|0)==15){b[i>>0]=k;break}}while(0);return}function zv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110647)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);oGa(a,f[c+8>>2]|0);oGa(a,f[c+12>>2]|0);oGa(a,f[c+16>>2]|0);a=f[a+28>>2]|0;if((f[c+4>>2]|0)==5)iTa(a);else Gv(a,27)|0;u=i;return}function Av(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=u;u=u+256|0;d=c+224|0;e=c+180|0;g=c+160|0;b=c;ZRa(g);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];f[d+16>>2]=f[g+16>>2];r3(e,a,d);p4a(e);x=0;ta(437,e|0);g=x;x=0;if(!(g&1)?(x=0,ta(438,e|0),g=x,x=0,!(g&1)):0){UQa(d,0);x=0;wa(130,b|0,a|0,d|0,0);g=x;x=0;do if(!(g&1)){x=0;ta(478,b|0);g=x;x=0;if(g&1){a=Ia()|0;hZ(b);break}else{g=(f[d+4>>2]|0)-(f[d>>2]|0)|0;hZ(b);zSa(d);Wca(e);u=c;return g|0}}else a=Ia()|0;while(0);zSa(d)}else a=Ia()|0;Wca(e);Ua(a|0);return 0}function Bv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;d=k+4|0;e=k;g=c+12|0;h=f[g>>2]|0;do if(!(cTa(h)|0)){i=c+16|0;j=f[i>>2]|0;if(!(cTa(j)|0)){f[e>>2]=f[c+8>>2];f[d>>2]=f[e>>2];bda(a,d);if(f[i>>2]|0)break;b[a+104>>0]=0;break}if(!h){Yba(a,j)|0;break}else{j=f[a+36>>2]|0;Jbb(j)|0;j=eSa(j+144|0)|0;e=j+12|0;i7(e,2);g=$ba(a,f[g>>2]|0)|0;h=ODa(e,0)|0;f[h>>2]=g;h=f[i>>2]|0;i=ODa(e,1)|0;f[i>>2]=h;aKa(j,f[c+4>>2]|0);Yba(a,j)|0;break}}else Yba(a,h)|0;while(0);u=k;return}function Cv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;d=h+28|0;e=h+4|0;i=h+16|0;g=h;a:do if(b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,82001,j7a(82001)|0);x=0;ia(83,i|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}f[g>>2]=f[c>>2];x=0;f[d>>2]=f[g>>2];wa(103,a|0,e|0,d|0,0);g=x;x=0;if(g&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(i);break a}}else b=Ia()|0;while(0);MTa(i);Ua(b|0)}while(0);u=h;return}function Dv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;h=i+20|0;j=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;d=g+1|0;if(d>>>0>268435455)dea();k=(f[a+8>>2]|0)-e|0;e=k>>3;HN(j,k>>4>>>0<134217727?(e>>>0>>0?d:e):268435455,g,a+8|0);d=j+8|0;e=f[d>>2]|0;x=0;ua(679,h|0,b|0);b=x;x=0;do if(!(b&1)){x=0;va(107,e|0,h|0,f[c>>2]|0);k=x;x=0;if(k&1){d=Ia()|0;zSa(h);break}else{zSa(h);f[d>>2]=e+16;$M(a,j);kca(j);u=i;return}}else d=Ia()|0;while(0);kca(j);Ua(d|0)}function Ev(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+80|0;c=e+72|0;h=e+4|0;d=e;UQa(g,0);n4a(c,Jbb(f[a+36>>2]|0)|0);ZU(h,c,g);vTa(h,b);x=0;ua(2678,h|0,f[b+36>>2]|0);c=x;x=0;do if(c&1)a=Ia()|0;else{x=0;ta(504,d|0);c=x;x=0;if(c&1){a=Ia()|0;break}b=b+40|0;a=f[d>>2]|0;f[d>>2]=0;c=f[b>>2]|0;f[b>>2]=a;if(!c)f[d>>2]=0;else{zSa(c);Cbb(c);f[d>>2]=0;a=f[b>>2]|0}d9(a,h);Cfa(h);zSa(g);u=e;return}while(0);Cfa(h);zSa(g);Ua(a|0)}function Fv(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=_z(a,b,c,d,g)|0;if(kD(g,e,d)|0){i=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=i;e=h+1|0;if(kD(g,d,c)|0){e=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=e;e=h+2|0;if(kD(g,c,b)|0){i=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=i;if(kD(g,b,a)|0){e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=h+4|0}else e=h+3|0}}}else e=h;return e|0}function Gv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do if(!(b[a+12>>0]|0))d=a+4|0;else{e=DCa(Am(DCa(134176,87172)|0,c&255)|0,87600)|0;d=a+4|0;e=DCa(zm(e,(f[d>>2]|0)-(f[a>>2]|0)|0)|0,123272)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(e,h)|0;fu(e)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);b[i>>0]=c;e=f[d>>2]|0;if(e>>>0<(f[a+8>>2]|0)>>>0){b[e>>0]=c;f[d>>2]=(f[d>>2]|0)+1}else ZL(a,i);u=j;return a|0}function Hv(){var a=0,c=0,d=0,e=0;if(b[135320]|0?(d=DCa(134176,52410)|0,Ema(xm(d,f[32970]|0)|0,10)|0,b[135320]|0):0)DCa(134176,52434)|0;pb(2)|0;a=f[32970]|0;c=f[a+28>>2]|0;a=f[a+24>>2]|0;while(1){if((a|0)==(c|0))break;d=f[a>>2]|0;if(!(f[d+8>>2]|0))rb(3,f[d>>2]|0)|0;a=a+4|0}a=f[32970]|0;c=f[a+16>>2]|0;a=f[a+12>>2]|0;while(1){if((a|0)==(c|0))break;d=f[a>>2]|0;tb(4,f[d+4>>2]|0,f[d+8>>2]|0,f[d>>2]|0)|0;a=a+4|0}if(b[135320]|0)DCa(134176,52910)|0;a=s8(40)|0;c=f[32970]|0;x=0;d=ga(212,8)|0;e=x;x=0;if(!(e&1)?(e=d,f[e>>2]=0,f[e+4>>2]=0,Hya(d),x=0,va(91,a|0,c|0,d|0),e=x,x=0,!(e&1)):0){f[32969]=a;pb(5)|0;return}e=Ia()|0;Cbb(a);Ua(e|0)}function Iv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;i=l+24|0;j=l;k=l+12|0;if(((((c-a|0)>2?(b[a>>0]|0)==116:0)?(b[a+1>>0]|0)==119:0)?(m=a+2|0,g=Bc(m,c,d)|0,(g|0)!=(m|0)):0)?(h=d+4|0,e=f[h>>2]|0,(f[d>>2]|0)!=(e|0)):0){hY(k,e+-24|0);x=0;ja(101,k|0,0,123470)|0;m=x;x=0;if(m&1){m=Ia()|0;MTa(k);Ua(m|0)}f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}RY(i,j);uA((f[h>>2]|0)+-24|0,i);OJa(i);MTa(j);MTa(k);a=g}u=l;return a|0}function Jv(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;l=k+4|0;g=k;f[l>>2]=0;h=l+4|0;f[h>>2]=0;i=l+8|0;f[i>>2]=0;j=c+4|0;d=f[c>>2]|0;while(1){if((d|0)==(j|0)){d=3;break}c=f[d+16>>2]|0;f[g>>2]=c;e=f[h>>2]|0;if((e|0)==(f[i>>2]|0)){x=0;ua(524,l|0,g|0);e=x;x=0;if(e&1){d=14;break}}else{f[e>>2]=c;f[h>>2]=e+4}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}do if((d|0)==3){x=0;va(133,a|0,b|0,l|0);b=x;x=0;if(b&1){c=Ia()|0;break}else{zSa(l);u=k;return}}else if((d|0)==14)c=Ia()|0;while(0);zSa(l);Ua(c|0)}function Kv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+12|0;j=h+8|0;d=h+4|0;e=h;g=$x(a,Or(b,1)|0)|0;i=f[a>>2]|0;f[j>>2]=g;f[c>>2]=f[j>>2];i=fna(i,c)|0;if((i|0)!=0?(f[i+12>>2]|0)==0:0){j=jQa(f[a+4>>2]|0)|0;f[j+24>>2]=g;i=f[a>>2]|0;f[d>>2]=g;f[c>>2]=f[d>>2];g=jJ(i,c)|0;i=f[a>>2]|0;f[e>>2]=f[g+16>>2];f[c>>2]=f[e>>2];c=(MI(i,c)|0)+4|0;f[j+4>>2]=f[c>>2];z7(a,b,bYa(b)|0,j);c=j}else{c=sSa(f[a+4>>2]|0)|0;f[c+24>>2]=g;j=zZ(a+52|0,c+24|0)|0;f[c+4>>2]=f[j>>2];z7(a,b,bYa(b)|0,c);c0a(c)}u=h;return c|0}function Lv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;h=k+16|0;i=k+4|0;e=k+8|0;g=k;l=g2a(c,-1)|0;j=a+52|0;d=(b[j>>0]|0)!=0;a:do if(l){if(!d){c=f[a+48>>2]|0;l=((g2a(c,-1)|0)^1)&1;b[j>>0]=l}}else{do if(d){d=a+48|0;l=d7a(f[d>>2]|0)|0;b[e>>0]=l;l=f[a+36>>2]|0;switch(lc[f[(f[l>>2]|0)+12>>2]&15](l,f[a+40>>2]|0,e,e+1|0,g,h,h+8|0,i)|0){case 1:case 2:{c=-1;break a}case 3:{b[h>>0]=f[d>>2];f[i>>2]=h+1;break}default:{}}a=a+32|0;while(1){e=f[i>>2]|0;if(e>>>0<=h>>>0){a=11;break}l=e+-1|0;f[i>>2]=l;if((s0(b[l>>0]|0,f[a>>2]|0)|0)==-1){a=14;break}}if((a|0)==11)break;else if((a|0)==14){c=-1;break a}}else d=a+48|0;while(0);f[d>>2]=c;b[j>>0]=1}while(0);u=k;return c|0}function Mv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;do if((f[b+4>>2]|0)==5){h=a+48|0;d=a+36|0;while(1){f[g>>2]=b;b=i_(h,g)|0;b=f[b>>2]|0;if(!b){e=11;break}c=b+4|0;if((f[c>>2]|0)==5){e=11;break}a=v$a(b)|0;if(!a){a=Z$a(b)|0;if(a){NI(a);if((f[c>>2]|0)!=5){e=12;break}}else e=13}else{e=RCa(a+12|0)|0;if(v2a(f[(f[e>>2]|0)+4>>2]|0)|0){e=12;break}a=a+8|0;if(Qab(f[a>>2]|0)|0?(e=(FW(d,a)|0)+4|0,(f[e>>2]|0)!=0):0){e=12;break}else e=13}if((e|0)==13){e=0;f[c>>2]=5}}if((e|0)==11)break;else if((e|0)==12)break}while(0);u=i;return}function Nv(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;switch(b|0){case 32:{i=7;break}case 33:{i=8;break}case 34:{i=9;break}default:hb()}l=a+44|0;k=f[l>>2]|0;n=QPa(h)|0;m=f[l>>2]|0;b=QPa(e)|0;b=SKa(f[m>>2]|0,b,1)|0;e=f[l>>2]|0;j=QPa(h)|0;j=SKa(f[e>>2]|0,j,1)|0;j=Qya(k,n,Kpa(f[m>>2]|0,i,b,j)|0)|0;b=f[l>>2]|0;e=QPa(d)|0;e=SKa(f[b>>2]|0,e,1)|0;d=f[l>>2]|0;g=QPa(g)|0;g=SKa(f[d>>2]|0,g,1)|0;g=Xza(k,c,j,Kpa(f[b>>2]|0,i,e,g)|0)|0;Tl(a,g,h);return g|0}function Ov(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+4|0;j=k;f[i>>2]=c;f[j>>2]=d;e=KVa(b,c)|0;g=KVa(b,d)|0;if(e)if(g)if((KVa(b,d)|0)&e)b=c>>>0>>0;else h=6;else b=1;else if(e|g^1)h=6;else b=0;do if((h|0)==6){c=a+44|0;b=i_(c,i)|0;b=f[b>>2]|0;h=i_(c,j)|0;h=(b|0)==(f[h>>2]|0);b=i_(c,i)|0;b=f[b>>2]|0;if(!h){j=i_(c,j)|0;b=b>>>0>(f[j>>2]|0)>>>0;break}if(!b){b=(f[i>>2]|0)>>>0<(f[j>>2]|0)>>>0;break}else{b=a+56|0;i=i_(b,i)|0;i=f[i>>2]|0;b=i_(b,j)|0;b=i>>>0<(f[b>>2]|0)>>>0;break}}while(0);u=k;return b|0}function Pv(a){a=a|0;var b=0,c=0;a:while(1){if((f[a+4>>2]|0)==5)break;b=L_a(a)|0;do if(!b){b=v$a(a)|0;if(b|0){if(Qab(f[b+8>>2]|0)|0)break a;if(!(Jbb(f[b+16>>2]|0)|0))break a;a=RCa(b+12|0)|0;a=f[a>>2]|0;break}b=J$a(a)|0;if(b|0){a=f[b+12>>2]|0;break}b=Z$a(a)|0;if(!b){b=u$a(a)|0;if(!b)break a;if(!(f[b+16>>2]|0))break a;b=f[b+12>>2]|0;if(!b)break a;else{a=b;break}}else{c=f[b+16>>2]|0;if(!c)break a;b=f[b+12>>2]|0;if((f[b+4>>2]|0)==5){a=c;break}if((f[c+4>>2]|0)==5){a=b;break}else break a}}else{if(!(Qab(f[b+4>>2]|0)|0))break a;a=f[b+12>>2]|0}while(0)}return a|0}function Qv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+64|0;j=k+40|0;h=k+24|0;g=k+16|0;e=k;i=k+56|0;if(FWa(118707,b[c>>0]|0)|0){d=Kc(1156)|0;if(!d)d=0;else{iH(d|0,0,124)|0;if(!(FWa(c,43)|0))f[d>>2]=(b[c>>0]|0)==114?8:4;if(FWa(c,101)|0){f[e>>2]=a;f[e+4>>2]=2;f[e+8>>2]=1;Za(221,e|0)|0}if((b[c>>0]|0)==97){f[g>>2]=a;f[g+4>>2]=3;c=Za(221,g|0)|0;if(!(c&1024)){f[h>>2]=a;f[h+4>>2]=4;f[h+8>>2]=c|1024;Za(221,h|0)|0}e=f[d>>2]|128;f[d>>2]=e}else e=f[d>>2]|0;f[d+60>>2]=a;f[d+44>>2]=d+132;f[d+48>>2]=1024;c=d+75|0;b[c>>0]=-1;if((e&8|0)==0?(f[j>>2]=a,f[j+4>>2]=21523,f[j+8>>2]=i,($a(54,j|0)|0)==0):0)b[c>>0]=10;f[d+32>>2]=15;f[d+36>>2]=13;f[d+40>>2]=14;f[d+12>>2]=147;if(!(f[33433]|0))f[d+76>>2]=-1;dNa(d)|0}}else{f[33448]=22;d=0}u=k;return d|0}function Rv(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;h=k+16|0;i=k+8|0;e=k+4|0;g=k;l=$5a(c)|0;j=a+52|0;d=(b[j>>0]|0)!=0;a:do if(l){if(!d){c=f[a+48>>2]|0;l=(($5a(c)|0)^1)&1;b[j>>0]=l}}else{do if(d){d=a+48|0;l=Jbb(f[d>>2]|0)|0;f[e>>2]=l;l=f[a+36>>2]|0;switch(lc[f[(f[l>>2]|0)+12>>2]&15](l,f[a+40>>2]|0,e,e+4|0,g,h,h+8|0,i)|0){case 1:case 2:{c=-1;break a}case 3:{b[h>>0]=f[d>>2];f[i>>2]=h+1;break}default:{}}a=a+32|0;while(1){e=f[i>>2]|0;if(e>>>0<=h>>>0){a=11;break}l=e+-1|0;f[i>>2]=l;if((s0(b[l>>0]|0,f[a>>2]|0)|0)==-1){a=14;break}}if((a|0)==11)break;else if((a|0)==14){c=-1;break a}}else d=a+48|0;while(0);f[d>>2]=c;b[j>>0]=1}while(0);u=k;return c|0}function Sv(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;c=k+8|0;d=k+4|0;g=k;i=a+64|0;if(Qab(f[(f[i>>2]|0)+116>>2]|0)|0){do if(b[a+72>>0]|0){j=DCa(134176,87835)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[c>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(c);Wq(j,h)|0;fu(j)|0;break}l=Ia()|0;OCa(c);Ua(l|0)}while(0);l=E$(a,8)|0;j=f[a+68>>2]|0;k1a(g,f[(f[i>>2]|0)+116>>2]|0);f[c>>2]=f[g>>2];n4a(d,_1(a,c)|0);Yr(j,f[d>>2]|0)|0;WA(a,l)}u=k;return}function Tv(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+64|0;e=i;g=i+16|0;h=a+64|0;c=f[h>>2]|0;d=f[c+40>>2]|0;c=f[c+36>>2]|0;while(1){if((c|0)==(d|0)){b=3;break}b=f[c>>2]|0;if(Oab(f[b+32>>2]|0)|0){YA(e,b);x=0;b=ia(55,e|0,f[h>>2]|0)|0;j=x;x=0;if(j&1){b=7;break}f[(f[c>>2]|0)+32>>2]=f[b>>2];MTa(e)}c=c+4|0}if((b|0)==3){Go(g,f[h>>2]|0);MD(a+12|0,g);MD(a+32|0,g+20|0);BHa(g);u=i;return}else if((b|0)==7){j=Ia()|0;MTa(e);Ua(j|0)}}function Uv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,d,j7a(d)|0);x=0;ia(83,h|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(121,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(h);b=0;break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=i;return b|0}function Vv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,d,j7a(d)|0);x=0;ia(83,h|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(102,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(h);b=0;break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=i;return b|0}function Wv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,d,j7a(d)|0);x=0;ia(83,h|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(122,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(h);b=0;break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=i;return b|0}function Xv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,d,j7a(d)|0);x=0;ia(83,h|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(117,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(h);b=0;break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=i;return b|0}function Yv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;h=l+8|0;i=l+4|0;j=l;k=d+8|0;while(1){if((a|0)==(c|0))break;e=f[a>>2]|0;g=(f[e+8>>2]|0)!=0;f[i>>2]=f[e>>2];f[h>>2]=f[i>>2];Qu(d,g,h,81657,0)|0;g=f[a>>2]|0;e=f[f[g+8>>2]>>2]|0;if(O6a(e)|0)e=1;else e=q4a(e)|0;f[j>>2]=f[g>>2];f[h>>2]=f[j>>2];Qu(d,e,h,81686,0)|0;e=f[a>>2]|0;g=f[e+8>>2]|0;g=(Qp(d,f[e+4>>2]|0,f[g+4>>2]|0,g,81712,0)|0)^1;if((b[k>>0]|0)==0&g){g=DCa(cy(d,0)|0,81747)|0;DCa(Bfa(g,f[f[a>>2]>>2]|0)|0,87606)|0}a=a+4|0}u=l;return}function Zv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;c=b+8|0;i=Jm(a+48|0,c)|0;i=f[i>>2]|0;f[c>>2]=i;c=b+4|0;do if((f[c>>2]|0)==2){f[c>>2]=1;oD(k,a,1);c=a+44|0;d=f[c>>2]|0;x=0;e=ga(320,k|0)|0;l=x;x=0;if((!(l&1)?(x=0,g=ja(46,f[f[c>>2]>>2]|0,i+1|0,1)|0,l=x,x=0,!(l&1)):0)?(x=0,h=ja(45,d|0,e|0,g|0)|0,l=x,x=0,!(l&1)):0){x=0;c=ja(70,f[c>>2]|0,h|0,b|0)|0;l=x;x=0;if(!(l&1)?(GVa(f[a+16>>2]|0,c)|0,x=0,va(161,a|0,c|0,k|0),l=x,x=0,!(l&1)):0){MCa(k);break}c=Ia()|0}else c=Ia()|0;MCa(k);Ua(c|0)}while(0);u=j;return}function _v(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,d,j7a(d)|0);x=0;ia(83,h|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(128,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(h);b=0;break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=i;return b|0}function $v(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=i+12|0;a:do if(b)b=1;else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,d,j7a(d)|0);x=0;ia(83,h|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(123,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(h);b=0;break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=i;return b|0}function aw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+12|0;i=a+104|0;a:do if((b[i>>0]|0)==0?(g=c+16|0,e=f[g>>2]|0,(Jbb(e)|0)>>>0>1):0){d=0;while(1){if(d>>>0>=(e+-1|0)>>>0)break a;e=ODa(h,d)|0;d=d+1|0;if((f[(f[e>>2]|0)+4>>2]|0)==5)break;e=f[g>>2]|0}i7(h,d)}while(0);d=c+8|0;if(Qab(f[d>>2]|0)|0){e=a+108|0;if(!(b[i>>0]|0))g=(P5(e,d)|0)!=0&1;else g=1;b[i>>0]=g;a8(e,d)}if((Jbb(f[c+16>>2]|0)|0)==1?(i=ODa(h,0)|0,X7a(f[(f[i>>2]|0)+4>>2]|0)|0):0)Yba(a,Vza(c,a)|0)|0;else r_(a+44|0,c);return}function bw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k+4|0;j=k;do if(!(b[a+33>>0]|0))d=a+28|0;else{h=DCa(134176,110885)|0;d=a+28|0;e=f[d>>2]|0;e=zm(h,(f[e+4>>2]|0)+1-(f[e>>2]|0)|0)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[g>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,i=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,l=x,x=0,!(l&1)):0){OCa(g);Wq(e,i)|0;fu(e)|0;break}l=Ia()|0;OCa(g);Ua(l|0)}while(0);l=Gv(f[d>>2]|0,32)|0;c=i_(a+44|0,c+8|0)|0;n4a(j,f[c>>2]|0);Yr(l,f[j>>2]|0)|0;u=k;return}function cw(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i+12|0;h=i;do if(b[a+1>>0]|0){e=b[d+11>>0]|0;if(e<<24>>24<0)e=f[d+4>>2]|0;else e=e&255;if(e){B4(g,d);x=0;va(121,a|0,c|0,g|0);h=x;x=0;if(h&1){e=Ia()|0;MTa(g);g=13;break}else{MTa(g);g=12;break}}else g=9}else g=9;while(0);do if((g|0)==9){B4(h,d);x=0;va(122,a|0,c|0,h|0);d=x;x=0;if(d&1){e=Ia()|0;MTa(h);g=13;break}else{MTa(h);g=12;break}}while(0);if((g|0)==12){u=i;return}else if((g|0)==13)Ua(e|0)}function dw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;Vra(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);h=f[a+36>>2]|0;Jbb(h)|0;wra(a,(b[h+114>>0]|0)==0,c);h=c+4|0;_X(a,b[c+8>>0]|0,f[h>>2]|0,c);Taa(a,f[(f[c+16>>2]|0)+4>>2]|0,1,c,83794);i=c+20|0;d=f[(f[i>>2]|0)+4>>2]|0;g=c+24|0;if((d|0)!=5){e=f[(f[g>>2]|0)+4>>2]|0;if((e|0)!=5){Dja(a,d,e,c);d=f[(f[i>>2]|0)+4>>2]|0}}else d=5;Taa(a,f[h>>2]|0,d,c,83860);Taa(a,f[h>>2]|0,f[(f[g>>2]|0)+4>>2]|0,c,83900);Vka(a,f[(f[i>>2]|0)+4>>2]|0,c,83943);return}function ew(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110603)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);switch(f[c+8>>2]|0){case 1:break;case 2:{j=ODa(c+16|0,0)|0;Ypa(a,f[j>>2]|0);break}default:hb()}FS(a,c);u=i;return}function fw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+48|0;e=g;h=g+4|0;f[e>>2]=b;bJa(h);x=0;ua(2984,h|0,e|0);e=x;x=0;do if(!(e&1)){DUa(a);d=h+28|0;e=a+4|0;c=f[h+24>>2]|0;while(1){if((c|0)==(d|0)){c=13;break}b=c+16|0;x=0;wa(152,a|0,e|0,b|0,b|0);b=x;x=0;if(b&1){c=12;break}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((c|0)==12){b=Ia()|0;ZLa(a);break}else if((c|0)==13){_Ra(h);u=g;return}}else b=Ia()|0;while(0);_Ra(h);Ua(b|0)}function gw(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(g2a(a,f[c+8>>2]|0)|0)lJ(c,d,e,g);else{p=c+52|0;i=b[p>>0]|0;j=c+53|0;k=b[j>>0]|0;o=f[a+12>>2]|0;l=a+16+(o<<3)|0;b[p>>0]=0;b[j>>0]=0;Y2(a+16|0,c,d,e,g,h);a:do if((o|0)>1){m=c+24|0;n=a+8|0;o=c+54|0;a=a+24|0;do{if(b[o>>0]|0)break a;if(!(b[p>>0]|0)){if(b[j>>0]|0?(f[n>>2]&1|0)==0:0)break a}else{if((f[m>>2]|0)==1)break a;if(!(f[n>>2]&2))break a}b[p>>0]=0;b[j>>0]=0;Y2(a,c,d,e,g,h);a=a+8|0}while(a>>>0>>0)}while(0);b[p>>0]=i;b[j>>0]=k}return}function hw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;d=k+8|0;h=k+4|0;i=k;do if(b[a+33>>0]|0){j=DCa(134176,110824)|0;dYa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[d>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(d);Wq(j,g)|0;fu(j)|0;break}l=Ia()|0;OCa(d);Ua(l|0)}while(0);oGa(a,f[c+12>>2]|0);l=Gv(f[a+28>>2]|0,36)|0;j=f[a+24>>2]|0;f[i>>2]=f[c+8>>2];f[d>>2]=f[i>>2];n4a(h,e2(j,d)|0);Yr(l,f[h>>2]|0)|0;u=k;return}function iw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+48|0;e=g;h=g+4|0;f[e>>2]=b;bJa(h);x=0;ua(2983,h|0,e|0);e=x;x=0;do if(!(e&1)){DUa(a);d=h+28|0;e=a+4|0;c=f[h+24>>2]|0;while(1){if((c|0)==(d|0)){c=13;break}b=c+16|0;x=0;wa(152,a|0,e|0,b|0,b|0);b=x;x=0;if(b&1){c=12;break}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b}if((c|0)==12){b=Ia()|0;ZLa(a);break}else if((c|0)==13){_Ra(h);u=g;return}}else b=Ia()|0;while(0);_Ra(h);Ua(b|0)}function jw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+80|0;d=h;e=h+36|0;i=Jbb(f[b+4>>2]|0)|0;c=Jbb(f[b>>2]|0)|0;i=i-c|0;g=i+1|0;do if(i){if(!g){LT(d,a,32);c=paa(d)|0;break}i=32-(_(g|0)|0)|0;LT(e,a,i+(((-1>>>(33-i|0)&g|0)==0)<<31>>31)|0);do c=paa(e)|0;while(c>>>0>=g>>>0);c=(Jbb(f[b>>2]|0)|0)+c|0}while(0);u=h;return c|0}function kw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+96|0;h=j+4|0;e=j;g=a+12|0;d=a+16|0;c=f[d>>2]|0;do if((Jbb(c)|0)==1){c=ODa(g,0)|0;c=f[c>>2]|0;f[e>>2]=f[a+8>>2];f[h>>2]=f[e>>2];if(OM(c,h)|0){c=f[d>>2]|0;i=7;break}c=ODa(g,0)|0;c=f[c>>2]|0;gA(h,fZa(f[b+40>>2]|0)|0,c);g=qza(h)|0;_7(h);if(!g?!(v2a(f[c+4>>2]|0)|0):0){b=f[b+36>>2]|0;Jbb(b)|0;_0a(h,b);a=xu(h,a)|0}else a=c}else i=7;while(0);if((i|0)==7)if(!(Jbb(c)|0))jUa(a)|0;u=j;return a|0}function lw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+64|0;h=k;do if(!a)DCa(b,73872)|0;else{CM(h,b);oOa(h,c);if(!d){x=0;c=fa(64)|0;d=x;x=0;if(!(d&1))if(c)j=6;else j=11}else j=6;if(((((j|0)==6?(a3a(h),x=0,i=ia(62,b|0,118452)|0,d=x,x=0,!(d&1)):0)?(x=0,e=ga(228,f[a+4>>2]|0)|0,d=x,x=0,!(d&1)):0)?(x=0,g=ia(62,i|0,e|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(62,g|0,81227)|0,i=x,x=0,!(i&1)):0)j=11;if((j|0)==11?(x=0,ua(639,h|0,a|0),j=x,x=0,!(j&1)):0){jWa(h);break}k=Ia()|0;jWa(h);Ua(k|0)}while(0);u=k;return b|0}function mw(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e;d=c+1|0;i=uB(Or(b,c)|0,94187)|0;f[(f[a>>2]|0)+92>>2]=i;do if((d|0)!=(bYa(b)|0)){d=WG(lF(Or(b,d)|0)|0)|0;b=I;if(!(b>>>0>0|(b|0)==0&d>>>0>65535)){wHa((f[a>>2]|0)+96|0,d,b)|0;d=c+2|0;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;i=j7a(94209)|0;x=0;va(87,g|0,94209,i|0);i=x;x=0;if(!(i&1)){x=0;ua(261,a|0,g|0);i=x;x=0;if(i&1)b=1;else{x=0;va(98,a|0,32200,457);x=0;b=0}d=Ia()|0;MTa(g);if(b)h=8}else{d=Ia()|0;h=8}if((h|0)==8)La(a|0);Ua(d|0)}while(0);u=e;return d|0}function nw(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((1073741806-c|0)>>>0>>0)Rda();l=a+8|0;if((b[l+3>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<536870887){d=d+c|0;k=c<<1;d=d>>>0>>0?k:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823){d=Ea(8)|0;x=0;ua(98,d|0,121961);i=x;x=0;if(i&1){i=Ia()|0;La(d|0);Ua(i|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}}else d=1073741807;k=s8(d<<2)|0;if(g|0)yWa(k,m,g);if(i|0)yWa(k+(g<<2)|0,j,i);e=e-h|0;j=e-g|0;if(j|0)yWa(k+(g<<2)+(i<<2)|0,m+(g<<2)+(h<<2)|0,j);if((c|0)!=1)Cbb(m);f[a>>2]=k;f[l>>2]=d|-2147483648;i=e+i|0;f[a+4>>2]=i;L1a(k+(i<<2)|0,0);return}function ow(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=u;u=u+112|0;h=g+56|0;i=g+48|0;n=g+24|0;m=g;j=g+72|0;k=g+108|0;AWa(n);t$a(h,Jbb(c)|0);l=n+8|0;f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];f[l+12>>2]=f[h+12>>2];f[n+4>>2]=1;AWa(m);l=m+8|0;f[l>>2]=f[e>>2];f[l+4>>2]=f[e+4>>2];f[l+8>>2]=f[e+8>>2];f[l+12>>2]=f[e+12>>2];l=f[e>>2]|0;f[m+4>>2]=l;oNa(j);b[j+8>>0]=d;wHa(j+16|0,d,0)|0;b[j+20>>0]=1;f[j+24>>2]=n;f[j+28>>2]=m;f[j+32>>2]=l;d=f[a+36>>2]|0;a=f[(f[d>>2]|0)+28>>2]|0;f[k>>2]=c;f[i>>2]=f[k>>2];f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];rc[a&255](d,j,i,h);u=g;return}function pw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110679)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+12>>2]|0);if((f[c+4>>2]|0)==5)EM(a);else FS(a,c);u=i;return}function qw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+32|0;Efa(h,c)|0;g=a+44|0;f[g>>2]=0;i=a+48|0;e=f[i>>2]|0;if(e&8|0){c=b[h+11>>0]|0;if(c<<24>>24<0){c=f[h>>2]|0;d=c;c=c+(f[a+36>>2]|0)|0}else{d=h;c=h+(c&255)|0}f[g>>2]=c;f[a+8>>2]=d;f[a+12>>2]=d;f[a+16>>2]=c}if(e&16|0){e=h+11|0;c=b[e>>0]|0;if(c<<24>>24<0){d=f[a+36>>2]|0;f[g>>2]=(f[h>>2]|0)+d;c=(f[a+40>>2]&2147483647)+-1|0}else{d=c&255;f[g>>2]=h+d;c=10}CU(h,c);e=b[e>>0]|0;if(e<<24>>24<0){c=f[h>>2]|0;e=f[a+36>>2]|0}else{c=h;e=e&255}g=a+24|0;f[g>>2]=c;f[a+20>>2]=c;f[a+28>>2]=c+e;if(f[i>>2]&3|0){while(1){if((d|0)>=0)break;a=c+2147483647|0;f[g>>2]=a;d=d+-2147483647|0;c=a}if(d|0)f[g>>2]=c+d}}return}function rw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110810)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+24>>2]|0);if((f[c+4>>2]|0)==5)EM(a);else FS(a,c);u=i;return}function sw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j+16|0;c=j+8|0;g=j;i=v$a(b)|0;if((i|0)!=0?(f[c>>2]=f[i+8>>2],f[h>>2]=f[c>>2],!(OM(i,h)|0)):0){e=i+12|0;Q$a(h,e);LUa(g,e);d=h+4|0;c=f[g>>2]|0;b=f[g+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[d>>2]|0,c,b)|0))break;g=QOa(h)|0;oGa(a,f[g>>2]|0);YYa(h)}if((f[i+4>>2]|0)==5?(i=RCa(e)|0,(f[(f[i>>2]|0)+4>>2]|0)!=5):0)iTa(f[a+28>>2]|0)}else oGa(a,b);u=j;return}function tw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110863)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+12>>2]|0);FS(a,c);if((f[c+4>>2]|0)==5)EM(a);u=i;return}function uw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;b[c+12>>0]=(c|0)==(a|0)&1;g=c;while(1){if((g|0)==(a|0))break;i=f[g+8>>2]|0;d=i+12|0;if(b[d>>0]|0)break;h=i+8|0;c=f[h>>2]|0;e=f[c>>2]|0;if((e|0)==(i|0)){e=f[c+4>>2]|0;if(!e){j=7;break}e=e+12|0;if(b[e>>0]|0){j=7;break}}else{if(!e){j=12;break}e=e+12|0;if(b[e>>0]|0){j=12;break}}b[d>>0]=1;b[c+12>>0]=(c|0)==(a|0)&1;b[e>>0]=1;g=c}if((j|0)==7){if((f[i>>2]|0)!=(g|0)){X7(i);c=f[h>>2]|0;d=c+12|0;c=f[c+8>>2]|0}b[d>>0]=1;b[c+12>>0]=0;Y6(c)}else if((j|0)==12){if((f[i>>2]|0)==(g|0)){Y6(i);c=f[h>>2]|0;d=c+12|0;c=f[c+8>>2]|0}b[d>>0]=1;b[c+12>>0]=0;X7(c)}return}function vw(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=b+8|0;c=b+12|0;d=0;while(1){if(d>>>0>=(Jbb(f[c>>2]|0)|0)>>>0){c=11;break}g=ODa(h,d)|0;if(X7a(f[(f[g>>2]|0)+4>>2]|0)|0){c=4;break}d=d+1|0}do if((c|0)==4){if(!d){b=ODa(h,0)|0;b=f[b>>2]|0;Yba(a,b)|0;break}g=f[a+36>>2]|0;Jbb(g)|0;g=eSa(g+144|0)|0;d=d+1|0;e=g+12|0;i7(e,d);c=0;while(1){if((c|0)==(d|0))break;j=ODa(h,c)|0;j=$ba(a,f[j>>2]|0)|0;i=ODa(e,c)|0;f[i>>2]=j;c=c+1|0}aKa(g,f[b+4>>2]|0);Yba(a,g)|0;b=g}while(0);return b|0}function ww(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=u;u=u+32|0;d=h;e=f[33201]|0;b=f[33200]|0;do if(((e-b|0)/20|0)>>>0>>0){g=f[33199]|0;c=(b-g|0)/20|0;b=c+a|0;if(b>>>0>214748364)dea();else{e=(e-g|0)/20|0;g=e<<1;WK(d,e>>>0<107374182?(g>>>0>>0?b:g):214748364,c);g0(d,a);SL(d);R1(d);break}}else n1(a);while(0);u=h;return}function xw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(!b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,d,j7a(d)|0);x=0;ia(83,i|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(120,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(i);break a}}else b=Ia()|0;while(0);MTa(i);Ua(b|0)}while(0);u=h;return}function yw(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;do if((a|0)!=(c|0)?(e=hk(a,c,d)|0,(e|0)!=(a|0)):0){g=jg(e,c,d)|0;if((g|0)!=(e|0)){e=d+4|0;c=f[e>>2]|0;if(((c-(f[d>>2]|0)|0)/24|0)>>>0>=2){hY(h,c+-24|0);c=f[e>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;OJa(c+(d*24|0)|0);a=d}f[e>>2]=c+-24;d=b[h+11>>0]|0;e=d<<24>>24<0;x=0;ja(97,c+-48|0,(e?f[h>>2]|0:h)|0,(e?f[h+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){i=Ia()|0;MTa(h);Ua(i|0)}else{MTa(h);a=g;break}}}else a=e}while(0);u=i;return a|0}function zw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(!b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,d,j7a(d)|0);x=0;ia(83,i|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(110,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(i);break a}}else b=Ia()|0;while(0);MTa(i);Ua(b|0)}while(0);u=h;return}function Aw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,d,j7a(d)|0);x=0;ia(83,i|0,81639)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(116,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(i);break a}}else b=Ia()|0;while(0);MTa(i);Ua(b|0)}while(0);u=h;return}function Bw(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if((a|0)!=(c|0))switch(b[a>>0]|0){case 88:{f=a+1|0;e=Bc(f,c,d)|0;if((e|0)==(f|0)|(e|0)==(c|0))break a;a=(b[e>>0]|0)==69?e+1|0:a;break a}case 74:{e=a+1|0;if((e|0)==(c|0))break a;while(1){if((b[e>>0]|0)==69)break;f=Bw(e,c,d)|0;if((f|0)==(e|0))break a;else e=f}a=e+1|0;break a}case 76:{f=a+1|0;if((f|0)!=(c|0)?(b[f>>0]|0)==90:0){f=a+2|0;e=dd(f,c,d)|0;if((e|0)==(f|0)|(e|0)==(c|0))break a;a=(b[e>>0]|0)==69?e+1|0:a;break a}a=cd(a,c,d)|0;break a}default:{a=Cc(a,c,d)|0;break a}}while(0);return a|0}function Cw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83467,j7a(83467)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(113,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Dw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83427,j7a(83427)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(113,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Ew(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=kD(d,b,a)|0;g=kD(d,c,b)|0;do if(e){e=f[a>>2]|0;if(g){f[a>>2]=f[c>>2];f[c>>2]=e;a=1;break}f[a>>2]=f[b>>2];f[b>>2]=e;if(kD(d,c,b)|0){a=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=a;a=2}else a=1}else if(g){g=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=g;if(kD(d,b,a)|0){g=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=g;a=2}else a=1}else a=0;while(0);return a|0}function Fw(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=YTa(f[c>>2]|0,135184)|0;f[a+68>>2]=c;d=a+98|0;e=b[d>>0]|0;c=bc[f[(f[c>>2]|0)+28>>2]&511](c)|0;b[d>>0]=c&1;do if((e&255|0)!=(c&1|0)){e=a+8|0;d=a+96|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;e=(b[d>>0]|0)!=0;if(c){c=a+32|0;if(e)zbb(f[c>>2]|0);h=a+97|0;b[d>>0]=b[h>>0]|0;g=a+60|0;f[a+52>>2]=f[g>>2];a=a+56|0;f[c>>2]=f[a>>2];f[g>>2]=0;f[a>>2]=0;b[h>>0]=0;break}if(!e?(g=a+32|0,h=f[g>>2]|0,(h|0)!=(a+44|0)):0){e=f[a+52>>2]|0;f[a+60>>2]=e;f[a+56>>2]=h;b[a+97>>0]=0;a=ybb(e)|0;f[g>>2]=a;b[d>>0]=1;break}h=f[a+52>>2]|0;f[a+60>>2]=h;h=ybb(h)|0;f[a+56>>2]=h;b[a+97>>0]=1}while(0);return}function Gw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83467,j7a(83467)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(111,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Hw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83467,j7a(83467)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(112,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Iw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83427,j7a(83427)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(111,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Jw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83427,j7a(83427)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(112,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Kw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83467,j7a(83467)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(114,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Lw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,84567,j7a(84567)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(118,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Mw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83427,j7a(83427)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(114,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Nw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;h=u;u=u+32|0;g=h;i=h+12|0;a:do if(!b){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,d,j7a(d)|0);x=0;ia(83,i|0,81339)|0;d=x;x=0;do if(!(d&1)){f[g>>2]=f[i>>2];f[g+4>>2]=f[i+4>>2];f[g+8>>2]=f[i+8>>2];b=0;while(1){if((b|0)==3)break;f[i+(b<<2)>>2]=0;b=b+1|0}x=0;wa(104,a|0,g|0,c|0,e|0);e=x;x=0;if(e&1){b=Ia()|0;MTa(g);break}else{MTa(g);MTa(i);break a}}else b=Ia()|0;while(0);MTa(i);Ua(b|0)}while(0);u=h;return}function Ow(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;Kk(a,b,c);do if(!(K0a(a)|0)){d=c+4|0;e=f[d>>2]|0;g=v2a(e)|0;b=f[a>>2]|0;if(g){if((b|0)==(e|0))break}else if((v2a(b)|0)^1|(b|0)==(e|0))break;g=DCa(134176,101252)|0;g=DCa(DCa(g,Fha(f[d>>2]|0)|0)|0,101262)|0;Ema(xm(DCa(DCa(g,Fha(f[a>>2]|0)|0)|0,101272)|0,c)|0,10)|0;if((f[a>>2]|0)!=(f[d>>2]|0))Ca(101279,101308,128,110563)}while(0);return}function Pw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,84597,j7a(84597)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(119,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Qw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,85133,j7a(85133)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(124,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Rw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,82746,j7a(82746)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(108,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Sw(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;c=g+16|0;d=g;e=g+20|0;h=g+4|0;a=Jbb(f[a>>2]|0)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,a,j7a(a)|0);x=0;ia(59,h|0,108414)|0;a=x;x=0;do if(!(a&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;va(88,d|0,((b[e+11>>0]|0)<0?f[e>>2]|0:e)|0,0);a=x;x=0;if(a&1){a=Ia()|0;MTa(e);break}else{L1a(c,f[d>>2]|0);MTa(e);MTa(h);u=g;return f[c>>2]|0}}else a=Ia()|0;while(0);MTa(h);Ua(a|0);return 0}function Tw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83467,j7a(83467)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(115,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Uw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,86414,j7a(86414)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(128,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Vw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83427,j7a(83427)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(115,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Ww(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,85227,j7a(85227)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(125,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Xw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,85347,j7a(85347)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(126,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Yw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,83427,j7a(83427)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(116,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function Zw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,82665,j7a(82665)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(107,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function _w(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=a+4|0;wW(a,(((f[j>>2]|0)-(f[a>>2]|0)|0)/12|0)+1|0);e=f[d>>2]|0;if((b[e>>0]|0)!=40)Ca(65897,65740,620,66262);f[d>>2]=e+1;i=A0(c)|0;a:while(1){cz(d);c=f[d>>2]|0;if((b[c>>0]|0)==41){g=c;break}Yea(i,Rm(a,d,66272)|0);cz(d);c=f[d>>2]|0;switch(b[c>>0]|0){case 41:{g=c;break a}case 44:break;default:{h=7;break a}}f[d>>2]=c+1}if((h|0)==7)hb();f[d>>2]=g+1;e=f[j>>2]|0;a=e+-12|0;if((f[e+-8>>2]|0)!=(f[a>>2]|0))Ca(66275,65740,636,66262);c=0;while(1){if((c|0)==-1)break;h=c+-1|0;zSa(e+(h*12|0)|0);c=h}f[j>>2]=a;return i|0}function $w(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=u;u=u+32|0;b=e+16|0;d=e+12|0;c=e;L1a(d,f[33024]|0);f[b>>2]=f[d>>2];do if(!(CAa(a,b)|0)){g=Jbb(f[a+28>>2]|0)|0;d=s8(24)|0;mPa(d);L1a(b,f[33024]|0);f[d>>2]=f[b>>2];L1a(b,f[33020]|0);f[d+4>>2]=f[b>>2];L1a(b,f[33024]|0);f[d+8>>2]=f[b>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,124693,j7a(124693)|0);x=0;b=ia(55,c|0,g|0)|0;g=x;x=0;if(g&1){g=Ia()|0;MTa(c);Ua(g|0)}else{f[d+16>>2]=f[b>>2];MTa(c);f[d+12>>2]=0;Jla(a,d);break}}while(0);u=e;return}function ax(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,85481,j7a(85481)|0);x=0;ia(83,h|0,81639)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(127,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function bx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,85454,j7a(85454)|0);x=0;ia(83,h|0,81339)|0;b=x;x=0;do if(!(b&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;wa(127,a|0,e|0,c|0,d|0);d=x;x=0;if(d&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function cx(a){a=a|0;var c=0,d=0;QD(a);zN(a);d=a+76|0;if(f[d>>2]|0)TE(a);ok(a);fj(a);on(a);au(a);vv(a);Qm(a);Rj(a);Sv(a);wo(a);Pf(a);Fh(a);if(b[a+73>>0]|0)El(a);if(f[d>>2]|0){c=b[a+80+11>>0]|0;if(c<<24>>24<0)c=f[a+84>>2]|0;else c=c&255;if(c|0)fA(a)}c=b[a+92+11>>0]|0;if(c<<24>>24<0)c=f[a+96>>2]|0;else c=c&255;if(c|0)Rh(a);if(f[d>>2]|0)jB(a);rL(a);fn(a);return}function dx(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+64|0;n=q;p=f[a>>2]|0;o=a+(f[p+-8>>2]|0)|0;p=f[p+-4>>2]|0;f[n>>2]=c;f[n+4>>2]=a;f[n+8>>2]=39384;g=n+12|0;h=n+16|0;i=n+20|0;j=n+24|0;k=n+28|0;l=n+32|0;m=n+40|0;a=g2a(p,c)|0;c=g;e=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(e|0));d[g+40>>1]=0;b[g+42>>0]=0;a:do if(a){f[n+48>>2]=1;tc[f[(f[p>>2]|0)+20>>2]&15](p,n,o,o,1,0);a=(f[j>>2]|0)==1?o:0}else{sc[f[(f[p>>2]|0)+24>>2]&15](p,n,o,1,0);switch(f[n+36>>2]|0){case 0:{a=(f[m>>2]|0)==1&(f[k>>2]|0)==1&(f[l>>2]|0)==1?f[i>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((f[j>>2]|0)!=1?!((f[m>>2]|0)==0&(f[k>>2]|0)==1&(f[l>>2]|0)==1):0){a=0;break}a=f[h>>2]|0}while(0);u=q;return a|0}function ex(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{j=(f[a+8>>2]|0)-d|0;i=j>>3;UX(c,j>>4>>>0<134217727?(i>>>0>>0?g:i):268435455,e,a+12|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=0;i=e+4|0;f[i>>2]=0;j=e+8|0;f[j>>2]=0;f[e+12>>2]=f[b+12>>2];f[e>>2]=f[b>>2];d=b+4|0;f[i>>2]=f[d>>2];i=b+8|0;f[j>>2]=f[i>>2];f[i>>2]=0;f[d>>2]=0;f[b>>2]=0;f[g>>2]=e+16;$A(a,c);AT(c);u=h;return}}function fx(a,b){a=a|0;b=b|0;var c=0;vbb(135232)|0;while(1){if((f[a>>2]|0)!=1)break;Ob(135260,135232)|0}do if(!(f[a>>2]|0)){f[a>>2]=1;x=0;ga(330,135232)|0;c=x;x=0;if((((!(c&1)?(x=0,ta(518,b|0),c=x,x=0,!(c&1)):0)?(x=0,ga(331,135232)|0,c=x,x=0,!(c&1)):0)?(f[a>>2]=-1,x=0,ga(330,135232)|0,c=x,x=0,!(c&1)):0)?(x=0,ga(332,135260)|0,c=x,x=0,!(c&1)):0)break;c=Ja(0)|0;Fa(c|0)|0;x=0;ga(331,135232)|0;c=x;x=0;if((!(c&1)?(f[a>>2]=0,x=0,ga(330,135232)|0,c=x,x=0,!(c&1)):0)?(x=0,ga(332,135260)|0,c=x,x=0,!(c&1)):0){x=0;sa(8);x=0}a=Ia()|0;x=0;sa(6);c=x;x=0;if(c&1){c=Ja(0)|0;y2a(c)}else Ua(a|0)}else vbb(135232)|0;while(0);return}function gx(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=c+8|0;g=a+44|0;h=hX(g,f[e>>2]|0)|0;if((h|0)!=(a+48|0)){i=h+20|0;d=nRa(f[f[i>>2]>>2]|0)|0;do if((b[a+93>>0]|0)==0?(f[(f[a+120>>2]|0)+(f[e>>2]<<2)>>2]|0)!=1:0){GVa(f[a+16>>2]|0,d)|0;if(Qab(f[d+4>>2]|0)|0)Ca(76955,76794,231,76826);else{gLa(d,1);break}}else j=4;while(0);if((j|0)==4)GVa(f[a+16>>2]|0,f[d+12>>2]|0)|0;f[f[i>>2]>>2]=c;jUa(c)|0;SI(g,h);b[a+92>>0]=1}return}function hx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+96|0;i=k;g=a+40|0;l=fZa(f[g>>2]|0)|0;gA(i,l,f[c>>2]|0);l=qza(i)|0;_7(i);if((!l?(j=vn(a,b,c,0,0)|0,l=fZa(f[g>>2]|0)|0,gA(i,l,f[d>>2]|0),l=qza(i)|0,_7(i),!l):0)?(h=vn(a,b,d,j,0)|0,l=fZa(f[g>>2]|0)|0,gA(i,l,f[e>>2]|0),l=qza(i)|0,_7(i),!l):0)vn(a,b,e,h,0)|0;u=k;return}function ix(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+48|0;b=g+32|0;h=g+28|0;c=g+16|0;d=g+12|0;e=g;f[h>>2]=f[33166];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,105872,j7a(105872)|0);x=0;f[b>>2]=f[h>>2];va(157,a|0,b|0,c|0);h=x;x=0;do if(!(h&1)){MTa(c);f[d>>2]=f[33165];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,105872,j7a(105872)|0);x=0;f[b>>2]=f[d>>2];va(157,a|0,b|0,e|0);h=x;x=0;if(h&1){b=Ia()|0;MTa(e);break}else{MTa(e);u=g;return}}else{b=Ia()|0;MTa(c)}while(0);Ua(b|0)}function jx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=b;k=c-i|0;e=a+8|0;d=f[a>>2]|0;j=d;do if(k>>>0>((f[e>>2]|0)-d|0)>>>0){NAa(a);d=Lab()|0;if(d>>>0>>0)dea();else{i=(f[e>>2]|0)-(f[a>>2]|0)|0;j=i<<1;ora(a,i>>>0>>1>>>0?(j>>>0>>0?k:j):d);hja(a,b,c,k);break}}else{h=a+4|0;g=(f[h>>2]|0)-d|0;e=k>>>0>g>>>0;g=e?b+g|0:c;d=g-i|0;if(d|0)kia(j|0,b|0,d|0)|0;if(e){hja(a,g,c,k-(f[h>>2]|0)+(f[a>>2]|0)|0);break}else{f[h>>2]=j+d;break}}while(0);return}function kx(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+192|0;l=m+32|0;i=m+184|0;j=m;k=m+180|0;b[i>>0]=b[119966]|0;b[i+1>>0]=b[119967]|0;b[i+2>>0]=b[119968]|0;b[i+3>>0]=b[119969]|0;b[i+4>>0]=b[119970]|0;b[i+5>>0]=b[119971]|0;a=kOa()|0;f[l>>2]=g;i=Hga(j,20,a,i,l)|0;a=j+i|0;g=AS(j,a,f[d+4>>2]|0)|0;dYa(k,d);x=0;h=ia(73,f[k>>2]|0,134912)|0;n=x;x=0;if(n&1){n=Ia()|0;OCa(k);Ua(n|0)}else{OCa(k);fc[f[(f[h>>2]|0)+48>>2]&63](h,j,a,l)|0;n=l+(i<<2)|0;n=su(f[c>>2]|0,l,(g|0)==(a|0)?n:l+(g-j<<2)|0,n,d,e)|0;u=m;return n|0}return 0}function lx(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;g=u;u=u+32|0;d=g;e=g+12|0;b=oq(a)|0;switch(b|0){case -64:{b=0;break}case -1:{b=1;break}case -2:{b=2;break}case -3:{b=3;break}case -4:{b=4;break}default:{FY(e,b);x=0;ia(83,e|0,97668)|0;g=x;x=0;do if(!(g&1)){f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1870,a|0,d|0);g=x;x=0;if(g&1){c=Ia()|0;MTa(d);break}else{MTa(d);MTa(e);hb()}}else c=Ia()|0;while(0);MTa(e);Ua(c|0)}}u=g;return b|0}function mx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;e=i+24|0;d=i+16|0;h=i;g=i+12|0;do if(!(P5(c,b)|0)){dG(e,c,b,b);f[d>>2]=f[b>>2];f[e>>2]=f[d>>2];d=($I(a,e)|0)+36|0;EV(h,f[d>>2]|0);d=f[h+4>>2]|0;b=f[h>>2]|0;while(1){if((b|0)==(d|0)){b=4;break}f[g>>2]=f[(f[b>>2]|0)+24>>2];x=0;f[e>>2]=f[g>>2];va(139,a|0,e|0,c|0);j=x;x=0;if(j&1){b=7;break}b=b+4|0}if((b|0)==4){f0a(h);break}else if((b|0)==7){j=Ia()|0;f0a(h);Ua(j|0)}}while(0);u=i;return}function nx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;h=k+12|0;i=k+16|0;j=k;f[h>>2]=b;c=qU((f[a>>2]|0)+64|0,h)|0;while(1){g=f[c>>2]|0;f[i>>2]=g;e=g;if(!g){b=8;break}c=f[a>>2]|0;d=Wz(c+44|0,i)|0;if(d){eR(j,d+12|0);x=0;wa(94,a|0,e|0,b|0,f[j>>2]|0);d=x;x=0;if(d&1){b=6;break}zSa(j);c=f[a>>2]|0}f[h>>2]=g;b=e;c=qU(c+64|0,i)|0}if((b|0)==6){k=Ia()|0;zSa(j);Ua(k|0)}else if((b|0)==8){u=k;return}}function ox(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=gC(a,b,c,d,g)|0;h=g+4|0;if(Ov(f[g>>2]|0,f[h>>2]|0,f[e>>2]|0,f[d>>2]|0)|0){j=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=j;e=i+1|0;if(Ov(f[g>>2]|0,f[h>>2]|0,f[d>>2]|0,f[c>>2]|0)|0){e=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=e;e=i+2|0;if(Ov(f[g>>2]|0,f[h>>2]|0,f[c>>2]|0,f[b>>2]|0)|0){j=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=j;if(Ov(f[g>>2]|0,f[h>>2]|0,f[b>>2]|0,f[a>>2]|0)|0){e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=i+4|0}else e=i+3|0}}}else e=i;return e|0}function px(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+32|0;e=g;h=g+12|0;a:do if(!b){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,d,j7a(d)|0);x=0;ia(83,h|0,81339)|0;d=x;x=0;do if(!(d&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];b=0;while(1){if((b|0)==3)break;f[h+(b<<2)>>2]=0;b=b+1|0}x=0;va(120,a|0,e|0,c|0);c=x;x=0;if(c&1){b=Ia()|0;MTa(e);break}else{MTa(e);MTa(h);break a}}else b=Ia()|0;while(0);MTa(h);Ua(b|0)}while(0);u=g;return}function qx(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;l=u;u=u+64|0;m=l+44|0;n=l+24|0;j=l;k=s8(184)|0;c=f[c>>2]|0;d=f[d>>2]|0;f[n>>2]=f[e>>2];f[n+4>>2]=f[e+4>>2];f[n+8>>2]=f[e+8>>2];f[n+12>>2]=f[e+12>>2];f[n+16>>2]=f[e+16>>2];YJa(j,f[g>>2]|0);h=(b[h>>0]|0)!=0;i=(b[i>>0]|0)!=0;x=0;f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];f[m+12>>2]=f[n+12>>2];f[m+16>>2]=f[n+16>>2];za(2,k|0,c|0,d|0,m|0,j|0,h|0,i|0);i=x;x=0;if(i&1){n=Ia()|0;xta(j);Cbb(k);Ua(n|0)}else{f[a>>2]=k;xta(j);u=l;return}}function rx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=b+16|0;c=b+20|0;e=0;while(1){if(e>>>0>=(Jbb(f[c>>2]|0)|0)>>>0)break;g=ODa(h,e)|0;if(X7a(f[(f[g>>2]|0)+4>>2]|0)|0){d=4;break}e=e+1|0}do if((d|0)==4){if(!e){h=ODa(h,0)|0;Yba(a,f[h>>2]|0)|0;break}g=f[a+36>>2]|0;Jbb(g)|0;g=eSa(g+144|0)|0;d=e+1|0;e=g+12|0;i7(e,d);c=0;while(1){if((c|0)==(d|0))break;j=ODa(h,c)|0;j=$ba(a,f[j>>2]|0)|0;i=ODa(e,c)|0;f[i>>2]=j;c=c+1|0}aKa(g,f[b+4>>2]|0);Yba(a,g)|0}while(0);return}function sx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=b+8|0;c=b+12|0;e=0;while(1){if(e>>>0>=(Jbb(f[c>>2]|0)|0)>>>0)break;g=ODa(h,e)|0;if(X7a(f[(f[g>>2]|0)+4>>2]|0)|0){d=4;break}e=e+1|0}do if((d|0)==4){if(!e){h=ODa(h,0)|0;Yba(a,f[h>>2]|0)|0;break}g=f[a+36>>2]|0;Jbb(g)|0;g=eSa(g+144|0)|0;d=e+1|0;e=g+12|0;i7(e,d);c=0;while(1){if((c|0)==(d|0))break;j=ODa(h,c)|0;j=$ba(a,f[j>>2]|0)|0;i=ODa(e,c)|0;f[i>>2]=j;c=c+1|0}aKa(g,f[b+4>>2]|0);Yba(a,g)|0}while(0);return}function tx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0;g=+rAa(d);e=vRa(g)|0;h=I&2147483647;if(h>>>0>2146435072|(h|0)==2146435072&e>>>0>0)pc[f[f[b>>2]>>2]&4095](b,101756);e=(f[d>>2]|0)==3;if((f[c+4>>2]|0)==1){if(e){if(!(a_a(rQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101775)}else{h=FHa(d)|0;if(!(HJa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101775)}t$a(a,~~g>>>0)}else{if(e){if(!(_Za(rQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101800)}else{h=FHa(d)|0;if(!(tLa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101800)}XSa(a,~~g>>>0,+K(g)>=1.0?(g>0.0?~~+Y(+J(g/4294967296.0),4294967295.0)>>>0:~~+W((g-+(~~g>>>0))/4294967296.0)>>>0):0)}return}function ux(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=f[a+56>>2]|0;d=h+(b*20|0)+16|0;f[d>>2]=(f[d>>2]|0)+1;d=a+40|0;e=a+44|0;c=f[d>>2]|0;a=(f[e>>2]|0)-c>>2;do if(a>>>0>1){a=f[c+(a+-2<<2)>>2]|0;if(z4(a)|0){a=Ova(a)|0;d=h+(b*20|0)+8|0;e=f[d>>2]|0;c=h+(b*20|0)+12|0;if(e){if((f[c>>2]|0)!=(a|0)){a=0;i=5}}else i=5;if((i|0)==5)f[c>>2]=a;f[d>>2]=e+1;break}c=f[d>>2]|0;a=(f[e>>2]|0)-c>>2;if(a>>>0>2?(g=f[c+(a+-3<<2)>>2]|0,GQ(g)|0):0){a=_Ha(g)|0;d=h+(b*20|0)|0;e=f[d>>2]|0;c=h+(b*20|0)+4|0;if(e){if((f[c>>2]|0)!=(a|0)){a=0;i=11}}else i=11;if((i|0)==11)f[c>>2]=a;f[d>>2]=e+1}}while(0);return}function vx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;i=$B(a,b,c,d)|0;g=f[e>>2]|0;h=f[d>>2]|0;if($Pa(g,h)|0){f[d>>2]=g;f[e>>2]=h;e=i+1|0;g=f[d>>2]|0;h=f[c>>2]|0;if($Pa(g,h)|0){f[c>>2]=g;f[d>>2]=h;e=i+2|0;g=f[c>>2]|0;h=f[b>>2]|0;if($Pa(g,h)|0){f[b>>2]=g;f[c>>2]=h;e=f[b>>2]|0;g=f[a>>2]|0;if($Pa(e,g)|0){f[a>>2]=e;f[b>>2]=g;e=i+4|0}else e=i+3|0}}}else e=i;return e|0}function wx(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+96|0;l=m+32|0;i=m+76|0;j=m;k=m+72|0;b[i>>0]=b[119966]|0;b[i+1>>0]=b[119967]|0;b[i+2>>0]=b[119968]|0;b[i+3>>0]=b[119969]|0;b[i+4>>0]=b[119970]|0;b[i+5>>0]=b[119971]|0;a=kOa()|0;f[l>>2]=g;i=Hga(j,20,a,i,l)|0;a=j+i|0;g=AS(j,a,f[d+4>>2]|0)|0;dYa(k,d);x=0;h=ia(73,f[k>>2]|0,134880)|0;n=x;x=0;if(n&1){n=Ia()|0;OCa(k);Ua(n|0)}else{OCa(k);fc[f[(f[h>>2]|0)+32>>2]&63](h,j,a,l)|0;n=l+i|0;n=Mu(f[c>>2]|0,l,(g|0)==(a|0)?n:l+(g-j)|0,n,d,e)|0;u=m;return n|0}return 0}function xx(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=c+12|0;d=j;while(1){d=f[d>>2]|0;e=L_a(d)|0;if(!e)break;else d=e+12|0}d=U_a(d)|0;h=a+40|0;e=c+8|0;g=f[e>>2]|0;do if(d){d=d+8|0;if(!(h9(h,g,f[d>>2]|0)|0)){_M(h,g);vd(h,f[e>>2]|0,f[d>>2]|0);break}if(b[a+28>>0]|0){if(Qab(f[c+4>>2]|0)|0)GVa(f[a>>2]|0,f[j>>2]|0)|0;else{_0a(i,f[a+32>>2]|0);j=lNa(f[i>>2]|0,f[j>>2]|0)|0;GVa(f[a>>2]|0,j)|0}b[a+36>>0]=1}}else _M(h,g);while(0);u=k;return}function yx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;do if(b[a+12>>0]|0){i=Am(DCa(134176,97442)|0,d&255)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){OCa(h);Wq(i,g)|0;fu(i)|0;break}k=Ia()|0;OCa(h);Ua(k|0)}while(0);yg(h,a,nq(a)|0);f[c+8>>2]=f[h>>2];if(d<<24>>24==13){k=dk(a)|0;f[c+16>>2]=k}if(f[h+4>>2]|0){k=dk(a)|0;f[c+12>>2]=k}Cqa(c);u=j;return}function zx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+128|0;c=h;DUa(a);d=a+12|0;DUa(d);e=a+24|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[a+40>>2]=1065353216;g=a+44|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[a+60>>2]=1065353216;x=0;wa(84,c|0,a|0,d|0,b|0);b=x;x=0;if(b&1){h=Ia()|0;i6(g);j6(e);yDa(d);ioa(a);Ua(h|0)}else{sL(c);u=h;return}}function Ax(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=b;e=c-i>>3;d=a+8|0;k=f[a>>2]|0;j=k;do if(e>>>0>(f[d>>2]|0)-k>>3>>>0){NAa(a);if(e>>>0>536870911)dea();else{j=(f[d>>2]|0)-(f[a>>2]|0)|0;k=j>>2;fma(a,j>>3>>>0<268435455?(k>>>0>>0?e:k):536870911);qfa(a,b,c);break}}else{h=a+4|0;g=(f[h>>2]|0)-k>>3;e=e>>>0>g>>>0;g=e?b+(g<<3)|0:c;d=g-i|0;if(d|0)kia(k|0,b|0,d|0)|0;if(e){qfa(a,g,c);break}else{f[h>>2]=j+(d>>3<<3);break}}while(0);return}function Bx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;c=f[a>>2]|0;while(1){c=d$a(c)|0;if(!c)break;if(f[c+8>>2]|0)break;g=c+12|0;e=n$a(f[g>>2]|0)|0;c=c+16|0;d=n$a(f[c>>2]|0)|0;if((e|0)!=0?(h=TRa(e+8|0)|0,h>>>0<1024):0)wHa(b,(Jbb(f[b>>2]|0)|0)+h|0,0)|0;else{if(!d)break;c=TRa(d+8|0)|0;if(c>>>0>=1024)break;wHa(b,(Jbb(f[b>>2]|0)|0)+c|0,0)|0;c=g}c=f[c>>2]|0;f[a>>2]=c}c=n$a(f[a>>2]|0)|0;if(c|0){h=c+8|0;a=TRa(h)|0;t$a(i,(Jbb(f[b>>2]|0)|0)+a|0);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];wHa(b,0,0)|0}u=j;return}function Cx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0.0,h=0;g=+rAa(d);e=vRa(g)|0;h=I&2147483647;if(h>>>0>2146435072|(h|0)==2146435072&e>>>0>0)pc[f[f[b>>2]>>2]&4095](b,101825);e=(f[d>>2]|0)==3;if((f[c+4>>2]|0)==1){if(e){if(!(b_a(rQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101844)}else{h=FHa(d)|0;if(!(IJa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101844)}t$a(a,~~g)}else{if(e){if(!($Za(rQa(d)|0)|0))pc[f[f[b>>2]>>2]&4095](b,101869)}else{h=FHa(d)|0;if(!(uLa(h,I)|0))pc[f[f[b>>2]>>2]&4095](b,101869)}XSa(a,~~g>>>0,+K(g)>=1.0?(g>0.0?~~+Y(+J(g/4294967296.0),4294967295.0)>>>0:~~+W((g-+(~~g>>>0))/4294967296.0)>>>0):0)}return}function Dx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;c=d;e=d+12|0;a:do if(!(f[a+124>>2]|0)){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,96659,j7a(96659)|0);x=0;ia(59,e|0,b|0)|0;b=x;x=0;do if(!(b&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1870,a|0,c|0);a=x;x=0;if(a&1){b=Ia()|0;MTa(c);break}else{MTa(c);MTa(e);break a}}else b=Ia()|0;while(0);MTa(e);Ua(b|0)}while(0);u=d;return}function Ex(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=K1a(a)|0;h=f[c>>2]|0;g=f[c+4>>2]|0;a=e;a:while(1){c=f[a+16>>2]|0;do if((h|0)>=(c|0)){if((c|0)>=(h|0)){if(PVa(g,f[a+20>>2]|0)|0){i=6;break}if(!(PVa(f[a+20>>2]|0,g)|0)){i=11;break a}}d=a+4|0;c=f[d>>2]|0;if(!c){i=10;break a}else a=c}else i=6;while(0);if((i|0)==6){i=0;c=f[a>>2]|0;if(!c){i=7;break}else{d=a;a=c}}}if((i|0)==7){f[b>>2]=a;d=a;break}else if((i|0)==10){f[b>>2]=a;break}else if((i|0)==11){f[b>>2]=a;break}}else f[b>>2]=d;while(0);return d|0}function Fx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;d=j+16|0;e=j+12|0;c=j+4|0;g=j+8|0;h=j;i=NUa(f[a+4>>2]|0)|0;f[e>>2]=1;Bab(c);if((bYa(b)|0)>>>0>1?qRa(Or(b,1)|0)|0:0){f[e>>2]=2;L1a(d,lF(Or(b,1)|0)|0);k=f[d>>2]|0;f[c>>2]=k;c=k}else{k1a(d,92603);k=f[d>>2]|0;f[c>>2]=k;c=k}l=a+112|0;f[g>>2]=c;f[d>>2]=f[g>>2];g=uC(l,d)|0;f[i+8>>2]=g;g=oG(b,e)|0;k=i+4|0;f[k>>2]=g;g=MG(a,b,f[e>>2]|0,g)|0;f[i+12>>2]=g;f[h>>2]=f[i+8>>2];f[d>>2]=f[h>>2];bY(l,d);bIa(i,f[k>>2]|0);u=j;return i|0}function Gx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;d=e;g=e+12|0;a:do if(!b){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,c,j7a(c)|0);x=0;ia(83,g|0,81339)|0;c=x;x=0;do if(!(c&1)){f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];b=0;while(1){if((b|0)==3)break;f[g+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1335,a|0,d|0);a=x;x=0;if(a&1){b=Ia()|0;MTa(d);break}else{MTa(d);MTa(g);break a}}else b=Ia()|0;while(0);MTa(g);Ua(b|0)}while(0);u=e;return}function Hx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k+8|0;c=k;if((vw(a,b)|0)==(b|0)?(j=b+28|0,X7a(f[(f[j>>2]|0)+4>>2]|0)|0):0){e=f[a+36>>2]|0;Jbb(e)|0;e=eSa(e+144|0)|0;g=b+8|0;Q$a(i,g);LUa(c,g);g=e+12|0;h=i+4|0;d=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(qTa(f[i>>2]|0,f[h>>2]|0,d,c)|0))break;l=QOa(i)|0;faa(g,$ba(a,f[l>>2]|0)|0);YYa(i)}faa(g,f[j>>2]|0);aKa(e,f[b+4>>2]|0);Yba(a,e)|0}u=k;return}function Ix(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;j=i;GD(j,a,c,d);e=f[j+4>>2]|0;g=d+4|0;h=0;a=f[j>>2]|0;while(1){if((a|0)==(e|0)){c=3;break}x=0;c=ga(325,f[a>>2]|0)|0;k=x;x=0;if(k&1){c=6;break}h=(X((((f[g>>2]|0)-(f[d>>2]|0)|0)/12|0)+-1|0,c)|0)+h|0;a=a+4|0}do if((c|0)==3){e=f[g>>2]|0;c=f[d>>2]|0;a=f[b+32>>2]|0;Jbb(a)|0;x=0;a=ia(209,j|0,f[a+36>>2]|0)|0;k=x;x=0;if(k&1){a=Ia()|0;break}else{zSa(j);u=i;return a&h>>>0>(((e-c|0)/12|0)+3|0)>>>0|0}}else if((c|0)==6)a=Ia()|0;while(0);zSa(j);Ua(a|0);return 0}function Jx(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=VA(a,b,c,d,g)|0;h=f[e>>2]|0;i=f[d>>2]|0;k=f[g+4>>2]|0;j=f[f[g>>2]>>2]|0;if(Y4(j,k,h,i)|0){f[d>>2]=h;f[e>>2]=i;g=l+1|0;e=f[d>>2]|0;h=f[c>>2]|0;if(Y4(j,k,e,h)|0){f[c>>2]=e;f[d>>2]=h;g=l+2|0;e=f[c>>2]|0;h=f[b>>2]|0;if(Y4(j,k,e,h)|0){f[b>>2]=e;f[c>>2]=h;g=f[b>>2]|0;e=f[a>>2]|0;if(Y4(j,k,g,e)|0){f[a>>2]=g;f[b>>2]=e;g=l+4|0}else g=l+3|0}}}else g=l;return g|0}function Kx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;h=i;e=1;while(1){if(!(e>>>0<3&e>>>0<(bYa(a)|0)>>>0))break;j=Or(a,e)|0;if(!(V7a(b[j>>0]|0)|0))break;if(KRa(Or(a,e)|0)|0){L1a(h,lF(Or(a,e)|0)|0);f[d>>2]=f[h>>2]}else{if(!(qRa(Or(a,e)|0)|0))break;L1a(h,lF(Or(a,e)|0)|0);f[c>>2]=f[h>>2]}e=e+1|0}if(((e>>>0<(bYa(a)|0)>>>0?(j=Or(a,e)|0,C7a(b[j>>0]|0)|0):0)?(g=Or(a,e)|0,(bYa(g)|0)!=0):0)?(j=lF(Or(g,0)|0)|0,g2a(j,f[33105]|0)|0):0){L1a(h,lF(Or(g,1)|0)|0);f[d>>2]=f[h>>2];e=e+1|0}u=i;return e|0}function Lx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;do if(b[a+12>>0]|0){e=DCa(zm(DCa(zm(DCa(134176,87184)|0,d)|0,87600)|0,c)|0,123272)|0;dYa(i,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[i>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,h=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,k=x,x=0,!(k&1)):0){OCa(i);Wq(e,h)|0;fu(e)|0;break}k=Ia()|0;OCa(i);Ua(k|0)}while(0);b[(f[a>>2]|0)+c>>0]=d;b[(f[a>>2]|0)+(c+1)>>0]=d>>>8;b[(f[a>>2]|0)+(c+2)>>0]=d>>>16;b[(f[a>>2]|0)+(c+3)>>0]=d>>>24;u=j;return}function Mx(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;d=k+8|0;h=k+4|0;i=k;do if(b[a+33>>0]|0){j=DCa(134176,110976)|0;dYa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[d>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(d);Wq(j,g)|0;fu(j)|0;break}l=Ia()|0;OCa(d);Ua(l|0)}while(0);l=Gv(f[a+28>>2]|0,(f[c+16>>2]|0)==0?12:13)|0;f[i>>2]=f[c+8>>2];f[d>>2]=f[i>>2];n4a(h,ZZ(a,d)|0);Yr(l,f[h>>2]|0)|0;u=k;return}function Nx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+64|0;i=j;f[c>>2]=f[f[c>>2]>>2];if(!(jGa(a,b)|0))if(((b|0)!=0?(d=dx(b,39568)|0,(d|0)!=0):0)?(f[d+8>>2]&~f[a+8>>2]|0)==0:0){b=f[a+12>>2]|0;a=d+12|0;if(!(g2a(b,f[a>>2]|0)|0)?!(g2a(b,39600)|0):0)if((((b|0)!=0?(g=dx(b,39368)|0,(g|0)!=0):0)?(e=f[a>>2]|0,(e|0)!=0):0)?(h=dx(e,39368)|0,(h|0)!=0):0){a=i+4|0;b=a+52|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));f[i>>2]=h;f[i+8>>2]=g;f[i+12>>2]=-1;f[i+48>>2]=1;rc[f[(f[h>>2]|0)+28>>2]&255](h,i,f[c>>2]|0,1);if((f[i+24>>2]|0)==1){f[c>>2]=f[i+16>>2];a=1}else a=0}else a=0;else a=1}else a=0;else a=1;u=j;return a|0}function Ox(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+96|0;i=l;j=b+8|0;e=b+12|0;g=a+40|0;c=0;d=0;while(1){if(c>>>0>=(Jbb(f[e>>2]|0)|0)>>>0){k=5;break}n=fZa(f[g>>2]|0)|0;m=ODa(j,c)|0;gA(i,n,f[m>>2]|0);m=qza(i)|0;_7(i);if(m)break;n=vn(a,b,ODa(j,c)|0,d,0)|0;c=c+1|0;d=n}if((k|0)==5?(n=fZa(f[g>>2]|0)|0,h=b+28|0,gA(i,n,f[h>>2]|0),n=qza(i)|0,_7(i),!n):0)vn(a,b,h,d,0)|0;u=l;return}function Px(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=nu(c,h,d)|0;d=f[g>>2]|0;if(!d){NN(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function Qx(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+288|0;h=g+268|0;e=g;jza();if(b[135320]|0)DCa(134176,52386)|0;d=s8(232)|0;x=0;ta(444,d|0);i=x;x=0;if(i&1){i=Ia()|0;Cbb(d);d=i}else{f[32970]=d;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;x=0;ua(94,h|0,c|0);i=x;x=0;if(i&1)d=Ia()|0;else{d=0;while(1){if((d|0)>=(c|0))break;b[(f[h>>2]|0)+d>>0]=b[a+d>>0]|0;d=d+1|0}uv(e,f[32970]|0,h,0);x=0;ta(447,e|0);i=x;x=0;if(!(i&1)?(x=0,sa(4),i=x,x=0,!(i&1)):0){CA(e);zSa(h);u=g;return}d=Ia()|0;CA(e)}zSa(h)}Ua(d|0)}function Rx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(f[a>>2]|0)+1794895138|0;h=xYa(f[a+8>>2]|0,o)|0;e=xYa(f[a+12>>2]|0,o)|0;g=xYa(f[a+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=c-(h<<2)|0,e>>>0>>0&g>>>0>>0):0)?((g|e)&3|0)==0:0){n=e>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;e=xYa(f[a+(g<<2)>>2]|0,o)|0;g=xYa(f[a+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&e>>>0<(c-g|0)>>>0)){e=0;break a}if(b[a+(g+e)>>0]|0){e=0;break a}e=J8(d,a+g|0)|0;if(!e)break;e=(e|0)<0;if((h|0)==1){e=0;break a}l=e?l:k;h=e?j:h-j|0}e=i+m|0;g=xYa(f[a+(e<<2)>>2]|0,o)|0;e=xYa(f[a+(e+1<<2)>>2]|0,o)|0;if(e>>>0>>0&g>>>0<(c-e|0)>>>0)e=(b[a+(e+g)>>0]|0)==0?a+e|0:0;else e=0}else e=0;while(0);return e|0}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i+8|0;h=i;if(((b|0)!=0?(d=v$a(b)|0,(d|0)!=0):0)?!(Qab(f[d+8>>2]|0)|0):0)if(v2a(f[d+4>>2]|0)|0)Ca(91294,91094,375,123616);else e=d;else e=vwa(f[f[a>>2]>>2]|0,b)|0;a=v$a(c)|0;if(!a)faa(e+12|0,c);else{a=a+12|0;Q$a(g,a);LUa(h,a);a=e+12|0;b=g+4|0;d=h+4|0;while(1){if(!(qTa(f[g>>2]|0,f[b>>2]|0,f[h>>2]|0,f[d>>2]|0)|0))break;c=QOa(g)|0;faa(a,f[c>>2]|0);YYa(g)}}tt(e);u=i;return e|0}function Tx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;c=d;e=d+12|0;a:do if(b){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,81464,j7a(81464)|0);x=0;ia(83,e|0,81639)|0;b=x;x=0;do if(!(b&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];b=0;while(1){if((b|0)==3)break;f[e+(b<<2)>>2]=0;b=b+1|0}x=0;ua(1335,a|0,c|0);a=x;x=0;if(a&1){b=Ia()|0;MTa(c);break}else{MTa(c);MTa(e);break a}}else b=Ia()|0;while(0);MTa(e);Ua(b|0)}while(0);u=d;return}function Ux(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e+12|0;g=e;c=qRa(b)|0;b=lF(b)|0;do if(c){L1a(d,b);b=f[d>>2]|0}else{c=AR(Jbb(b)|0)|0;b=f[a+20>>2]|0;if(c>>>0<(f[a+24>>2]|0)-b>>2>>>0){b=f[b+(c<<2)>>2]|0;f[d>>2]=b;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=j7a(94436)|0;x=0;va(87,g|0,94436,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,a|0,g|0);e=x;x=0;if(e&1)c=1;else{x=0;va(98,a|0,32200,457);x=0;c=0}b=Ia()|0;MTa(g);if(c)h=9}else{b=Ia()|0;h=9}if((h|0)==9)La(a|0);Ua(b|0)}while(0);u=e;return b|0}function Vx(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;h=o;i=e6()|0;j=h+12|0;k=h+12|0;a:while(1){cz(c);l=f[c>>2]|0;m=b[l>>0]|0;switch(m<<24>>24){case 0:break a;case 59:{f[c>>2]=l+1;break}default:{if(Tpa(d,m)|0)break a;if((!(zXa(e)|0)?(Dh(h,l),(f[j>>2]|0)==0):0)?g2a(f[h>>2]|0,e)|0:0){n=8;break a}if((!(zXa(g)|0)?(Dh(h,f[c>>2]|0),(f[k>>2]|0)==0):0)?g2a(f[h>>2]|0,g)|0:0){n=13;break a}Pea(i,KD(a,c,d)|0)}}}u=o;return i|0}function Wx(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=a+4|0;d=f[a>>2]|0;a:do if((f[i>>2]|0)!=(d|0)){Cma(c,f[d>>2]|0)|0;e=f[i>>2]|0;d=f[a>>2]|0;b:do if(e-d>>2>>>0>1){g=1;while(1){if(g>>>0>=e-d>>2>>>0)break b;zs(h,c,f[d+(g<<2)>>2]|0);kSa(c,h)|0;zSa(h);g=g+1|0;d=f[a>>2]|0;e=f[i>>2]|0}}while(0);i=f[b+4>>2]|0;d=f[b>>2]|0;e=f[c>>2]|0;g=i;if((i-d|0)==((f[c+4>>2]|0)-e|0))while(1){if((d|0)==(g|0)){d=0;break a}if((f[d>>2]|0)!=(f[e>>2]|0)){d=1;break a}e=e+4|0;d=d+4|0}else d=1}else d=0;while(0);u=j;return d|0}function Xx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=u;u=u+32|0;c=e+12|0;f=e;d=Abb()|0;B4(c,b);x=0;d=ia(63,d|0,c|0)|0;g=x;x=0;if(g&1){g=Ia()|0;MTa(c);Ua(g|0)}MTa(c);if(d|0){N_(a,d);u=e;return}Q_a();x=0;a=ia(52,e+24|0,54207)|0;g=x;x=0;if(!(g&1)?(x=0,ua(88,f|0,b|0),g=x,x=0,!(g&1)):0){x=0;a=ia(64,a|0,f|0)|0;g=x;x=0;if(!(g&1)?(x=0,ia(52,a|0,112641)|0,g=x,x=0,!(g&1)):0){MTa(f);lCa()}Ia()|0;MTa(f)}else Ia()|0;lCa()}function Yx(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0,h=0,i=0;i=u;u=u+16|0;g=i;h=f[d+16>>2]|0;d=f[d+12>>2]|0;while(1){if((d|0)==(h|0))break;a=f[d>>2]|0;if((f[a+12>>2]|0)==3){e=+mb(18,f[a+4>>2]|0,f[a+8>>2]|0);if(b[135320]|0){a=DCa(134008,56406)|0;Ema(Bm(DCa(Bfa(a,f[f[d>>2]>>2]|0)|0,56432)|0,e)|0,10)|0}kba(g,e,f[(f[d>>2]|0)+20>>2]|0);a=dY(c,f[d>>2]|0)|0;f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];f[a+12>>2]=f[g+12>>2]}d=d+4|0}u=i;return}function Zx(a){a=a|0;var b=0,c=0,d=0;a:do switch(f[a>>2]|0){case 1:{b=f[f[a+4>>2]>>2]|0;if(N6a(b)|0){b=KMa(eQa(a,0)|0)|0;break a}if(F6a(b)|0){if(!(KMa(eQa(a,0)|0)|0)){b=0;break a}b=KMa(eQa(a,1)|0)|0;break a}if((D6a(b)|0?KMa(eQa(a,0)|0)|0:0)?KMa(eQa(a,1)|0)|0:0)b=KMa(eQa(a,2)|0)|0;else b=0;break}case 2:{c=a+12|0;d=a+16|0;b=1;while(1){if(b>>>0>=(f[d>>2]|0)-(f[c>>2]|0)>>2>>>0){b=1;break a}if(KMa(eQa(a,b)|0)|0)b=b+1|0;else{b=0;break}}break}default:b=0}while(0);return b|0}function _x(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=d+4|0;g=Ov(f[d>>2]|0,f[e>>2]|0,f[b>>2]|0,f[a>>2]|0)|0;h=Ov(f[d>>2]|0,f[e>>2]|0,f[c>>2]|0,f[b>>2]|0)|0;do if(g){g=f[a>>2]|0;if(h){f[a>>2]=f[c>>2];f[c>>2]=g;e=1;break}f[a>>2]=f[b>>2];f[b>>2]=g;if(Ov(f[d>>2]|0,f[e>>2]|0,f[c>>2]|0,g)|0){e=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=e;e=2}else e=1}else if(h){h=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=h;if(Ov(f[d>>2]|0,f[e>>2]|0,f[b>>2]|0,f[a>>2]|0)|0){e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=2}else e=1}else e=0;while(0);return e|0}function $x(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e+12|0;g=e;c=qRa(b)|0;b=lF(b)|0;do if(c){L1a(d,b);b=f[d>>2]|0}else{c=AR(Jbb(b)|0)|0;b=f[a+8>>2]|0;if(c>>>0<(f[a+12>>2]|0)-b>>2>>>0){b=f[b+(c<<2)>>2]|0;f[d>>2]=b;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=j7a(92391)|0;x=0;va(87,g|0,92391,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,a|0,g|0);e=x;x=0;if(e&1)c=1;else{x=0;va(98,a|0,32200,457);x=0;c=0}b=Ia()|0;MTa(g);if(c)h=9}else{b=Ia()|0;h=9}if((h|0)==9)La(a|0);Ua(b|0)}while(0);u=e;return b|0}function ay(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;d=e+12|0;g=e;c=qRa(b)|0;b=lF(b)|0;do if(c){L1a(d,b);b=f[d>>2]|0}else{c=AR(Jbb(b)|0)|0;b=f[a+32>>2]|0;if(c>>>0<(f[a+36>>2]|0)-b>>2>>>0){b=f[b+(c<<2)>>2]|0;f[d>>2]=b;break}a=Ea(20)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=j7a(92571)|0;x=0;va(87,g|0,92571,e|0);e=x;x=0;if(!(e&1)){x=0;ua(261,a|0,g|0);e=x;x=0;if(e&1)c=1;else{x=0;va(98,a|0,32200,457);x=0;c=0}b=Ia()|0;MTa(g);if(c)h=9}else{b=Ia()|0;h=9}if((h|0)==9)La(a|0);Ua(b|0)}while(0);u=e;return b|0}function by(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;g=k+24|0;h=k+16|0;c=k+8|0;i=k+4|0;j=k;d=b+8|0;Q$a(h,d);LUa(c,d);d=a+44|0;e=h+4|0;a=f[c>>2]|0;c=f[c+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[e>>2]|0,a,c)|0))break;l=QOa(h)|0;f[i>>2]=f[l>>2];l=JW(d,i)|0;f[j>>2]=b;pH(g,l,b,j);YYa(h)}l=JW(d,b+24|0)|0;f[h>>2]=b;pH(g,l,b,h);u=k;return}function cy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;c=d;e=d+4|0;f[c>>2]=b;g=a+12|0;uSa(g);b=a+40|0;a=Wz(b,c)|0;a:do if(!a){x=0;ta(475,e|0);a=x;x=0;do if(a&1)b=Ia()|0;else{x=0;b=ia(133,b|0,c|0)|0;c=x;x=0;if(c&1){b=Ia()|0;a=f[e>>2]|0;f[e>>2]=0;if(!a)break;oc[f[(f[a>>2]|0)+4>>2]&1023](a);break}c=f[e>>2]|0;f[e>>2]=0;a=f[b>>2]|0;f[b>>2]=c;if(a|0)oc[f[(f[a>>2]|0)+4>>2]&1023](a);f[e>>2]=0;break a}while(0);mJa(g);Ua(b|0)}else b=a+12|0;while(0);e=f[b>>2]|0;mJa(g);u=d;return e|0}function dy(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;g=i+12|0;h=i;e=nu(132700,g,c)|0;c=f[e>>2]|0;if(!c){DM(h,d);c=f[h>>2]|0;PZ(132700,f[g>>2]|0,e,c);e=1}else e=0;f[a>>2]=c;b[a+4>>0]=e;u=i;return}function ey(a){a=a|0;_Ca(a+220|0);$Ba(a+208|0);$Ca(a+196|0);ZCa(a+184|0);jAa(a+172|0);Sya(a+144|0);G5(a+132|0);wca(a+120|0);KXa(a+88|0);cYa(a+60|0);P4(a+48|0);H1(a+36|0);P4(a+24|0);P4(a+12|0);h1(a);return}function fy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=f[a+44>>2]|0;if(((f[a+40>>2]|0)!=(d|0)?(c=v$a(f[d+-4>>2]|0)|0,(c|0)!=0):0)?(d=RCa(c+12|0)|0,(b|0)==(f[d>>2]|0)):0){VHa(e,b,c);b=a+88|0;c=f[b>>2]|0;if(c>>>0<(f[a+92>>2]|0)>>>0){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[b>>2]=(f[b>>2]|0)+12}else yE(a+84|0,e)}else{CQa(e,b,Jbb(f[a+16>>2]|0)|0);b=a+88|0;c=f[b>>2]|0;if(c>>>0<(f[a+92>>2]|0)>>>0){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];f[b>>2]=(f[b>>2]|0)+12}else yE(a+84|0,e)}u=g;return}function gy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;d=h+16|0;i=h;c=h+4|0;f[i>>2]=f[b+24>>2];e=d3(a,f[b+28>>2]|0)|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;g=f[b+4>>2]|0;x=0;f[d>>2]=f[i>>2];g=ma(25,a+32|0,d|0,e|0,c|0,g|0)|0;e=x;x=0;if(e&1){i=Ia()|0;zSa(c);Ua(i|0)}zSa(c);d=b+8|0;e=g+8|0;b=b+12|0;c=0;while(1){if(c>>>0>=(Jbb(f[b>>2]|0)|0)>>>0)break;i=ODa(d,c)|0;faa(e,d3(a,f[i>>2]|0)|0);c=c+1|0}u=h;return g|0}function hy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+8|0;d=h+4|0;j=h;e=$Ra(f[b>>2]|0)|0;g=a+16|0;f[j>>2]=f[e+8>>2];i=f[a+40>>2]|0;b=f[a+44>>2]|0;f[c>>2]=f[j>>2];b=ID(i,b,c)|0;f[d>>2]=b;d=kY(a+84|0,d)|0;b=a+80|0;a=d+4|0;c=f[a>>2]|0;if((c|0)==(f[d+8>>2]|0))LL(d,b);else{f[c>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4}if(!(f[e+16>>2]|0))pWa(g);else{j=f[b>>2]|0;SC(g);DH(j,f[b>>2]|0)}u=h;return}function iy(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=c;a:do if(!((g^a)&3)){e=(d|0)!=0;if(e&(g&3|0)!=0)do{g=b[c>>0]|0;b[a>>0]=g;if(!(g<<24>>24))break a;d=d+-1|0;c=c+1|0;a=a+1|0;e=(d|0)!=0}while(e&(c&3|0)!=0);if(e){if(b[c>>0]|0){b:do if(d>>>0>3){e=c;while(1){c=f[e>>2]|0;if((c&-2139062144^-2139062144)&c+-16843009|0){c=e;break b}f[a>>2]=c;d=d+-4|0;c=e+4|0;a=a+4|0;if(d>>>0>3)e=c;else break}}while(0);h=13}}else d=0}else h=13;while(0);c:do if((h|0)==13)if(!d)d=0;else while(1){h=b[c>>0]|0;b[a>>0]=h;if(!(h<<24>>24))break c;d=d+-1|0;a=a+1|0;if(!d){d=0;break}else c=c+1|0}while(0);iH(a|0,0,d|0)|0;return}function jy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+48|0;d=g+16|0;e=g;oz(d,b,f[c+8>>2]|0);do if(!(K0a(d)|0))if(!(TRa(d)|0)){c=f[c+16>>2]|0;if(!c){a1a(a);break}else{oz(a,b,c);break}}else{oz(a,b,f[c+12>>2]|0);if(K0a(a)|0)break;if(f[c+16>>2]|0)break;EXa(e);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];break}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}while(0);u=g;return}function ky(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;d=k+8|0;h=k+4|0;i=k;do if(b[a+33>>0]|0){j=DCa(134176,110824)|0;dYa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[d>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,l=x,x=0,!(l&1)):0){OCa(d);Wq(j,g)|0;fu(j)|0;break}l=Ia()|0;OCa(d);Ua(l|0)}while(0);l=Gv(f[a+28>>2]|0,36)|0;j=f[a+24>>2]|0;f[i>>2]=f[c+8>>2];f[d>>2]=f[i>>2];n4a(h,e2(j,d)|0);Yr(l,f[h>>2]|0)|0;u=k;return}function ly(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+8|0;d=h+4|0;j=h;e=$Ra(f[b>>2]|0)|0;g=a+16|0;f[j>>2]=f[e+8>>2];i=f[a+40>>2]|0;b=f[a+44>>2]|0;f[c>>2]=f[j>>2];b=ID(i,b,c)|0;f[d>>2]=b;d=kY(a+84|0,d)|0;b=a+80|0;a=d+4|0;c=f[a>>2]|0;if((c|0)==(f[d+8>>2]|0))LL(d,b);else{f[c>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4}if(!(f[e+16>>2]|0))pWa(g);else{j=f[b>>2]|0;eD(g);DH(j,f[b>>2]|0)}u=h;return}function my(a){a=a|0;var b=0;do switch(a|0){case 0:{hb();break}case 1:{b=117249;break}case 2:{b=117210;break}case 3:{b=93585;break}case 4:{b=117167;break}case 5:{b=117151;break}case 6:{b=117179;break}case 7:{b=67032;break}case 8:{b=67018;break}case 9:{b=97193;break}case 10:{b=93575;break}case 11:{b=93564;break}case 12:{b=93553;break}case 13:{b=93548;break}case 14:{b=93542;break}case 15:{b=117239;break}case 16:{b=93536;break}case 17:{b=117220;break}case 18:{b=93529;break}case 19:{b=93524;break}case 20:{b=117213;break}case 21:{b=93519;break}case 22:{b=93515;break}case 23:{b=101333;break}case 25:{b=93500;break}case 24:{b=93489;break}case 26:{b=93477;break}case 27:{b=93465;break}default:hb()}while(0);return b|0}function ny(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;JPa(a+96|0,c);CIa(g);h=Jbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=1;x=0;ua(1184,g|0,c|0);h=x;x=0;do if(!(h&1)){tMa(d);f[d+24>>2]=a;x=0;ua(1185,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;P_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;P_a(d);qNa(g);u=e;return h|0}}else a=Ia()|0;while(0);qNa(g);Ua(a|0);return 0}function oy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;JPa(a+96|0,c);CIa(g);h=Jbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=0;x=0;ua(1089,g|0,c|0);h=x;x=0;do if(!(h&1)){tMa(d);f[d+24>>2]=a;x=0;ua(1090,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;P_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;P_a(d);qNa(g);u=e;return h|0}}else a=Ia()|0;while(0);qNa(g);Ua(a|0);return 0}function py(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){d=DCa(xm(DCa(134176,110694)|0,c)|0,110709)|0;d=Am(d,f[c+4>>2]|0)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(d,h)|0;fu(d)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);FS(a,c);u=i;return}function qy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;j=l+20|0;k=l;h=f[a>>2]|0;e=(f[a+4>>2]|0)-h>>4;g=e+1|0;if(g>>>0>268435455)dea();i=(f[a+8>>2]|0)-h|0;h=i>>3;HN(k,i>>4>>>0<134217727?(h>>>0>>0?g:h):268435455,e,a+8|0);h=k+8|0;i=f[h>>2]|0;g=f[b>>2]|0;e=f[c>>2]|0;x=0;va(85,j|0,f[d>>2]|0,0);d=x;x=0;if(!(d&1)?(x=0,wa(139,i|0,g|0,e|0,f[j>>2]|0),j=x,x=0,!(j&1)):0){f[h>>2]=i+16;WN(a,k);Pda(k);u=l;return}l=Ia()|0;Pda(k);Ua(l|0)}function ry(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+8|0;c=h+4|0;i=h;g=$Ra(f[b>>2]|0)|0;f[i>>2]=f[g+8>>2];e=f[a+24>>2]|0;b=f[a+28>>2]|0;f[d>>2]=f[i>>2];b=ID(e,b,d)|0;f[c>>2]=b;b=kY(a+68|0,c)|0;c=a+64|0;d=b+4|0;e=f[d>>2]|0;if((e|0)==(f[b+8>>2]|0))LL(b,c);else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4}if(!(f[g+16>>2]|0))pWa(a);else{i=f[c>>2]|0;sD(a);fH(i,f[c>>2]|0)}u=h;return}function sy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h+8|0;d=h+4|0;j=h;e=$Ra(f[b>>2]|0)|0;g=a+16|0;f[j>>2]=f[e+8>>2];i=f[a+40>>2]|0;b=f[a+44>>2]|0;f[c>>2]=f[j>>2];b=ID(i,b,c)|0;f[d>>2]=b;d=kY(a+84|0,d)|0;b=a+80|0;a=d+4|0;c=f[a>>2]|0;if((c|0)==(f[d+8>>2]|0))LL(d,b);else{f[c>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4}if(!(f[e+16>>2]|0))pWa(g);else{j=f[b>>2]|0;jD(g);DH(j,f[b>>2]|0)}u=h;return}function ty(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+48|0;c=m+16|0;h=m+32|0;i=m;oD(h,a,1);j=a+44|0;k=f[j>>2]|0;x=0;l=ga(320,h|0)|0;n=x;x=0;if((((!(n&1)?(d=f[j>>2]|0,t$a(i,0),x=0,f[c>>2]=f[i>>2],f[c+4>>2]=f[i+4>>2],f[c+8>>2]=f[i+8>>2],f[c+12>>2]=f[i+12>>2],d=ia(50,d|0,c|0)|0,n=x,x=0,!(n&1)):0)?(x=0,e=ja(45,k|0,l|0,d|0)|0,n=x,x=0,!(n&1)):0)?(x=0,g=ja(70,k|0,e|0,f[b+12>>2]|0)|0,n=x,x=0,!(n&1)):0)?(x=0,va(161,a|0,g|0,h|0),n=x,x=0,!(n&1)):0){GVa(f[a+16>>2]|0,g)|0;MCa(h);u=m;return}n=Ia()|0;MCa(h);Ua(n|0)}function uy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;JPa(a+96|0,c);CIa(g);h=Jbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=0;x=0;ua(869,g|0,c|0);h=x;x=0;do if(!(h&1)){tMa(d);f[d+24>>2]=a;x=0;ua(870,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;P_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;P_a(d);qNa(g);u=e;return h|0}}else a=Ia()|0;while(0);qNa(g);Ua(a|0);return 0}function vy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;JPa(a+96|0,c);CIa(g);h=Jbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=1;x=0;ua(964,g|0,c|0);h=x;x=0;do if(!(h&1)){tMa(d);f[d+24>>2]=a;x=0;ua(965,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;P_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;P_a(d);qNa(g);u=e;return h|0}}else a=Ia()|0;while(0);qNa(g);Ua(a|0);return 0}function wy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=u;u=u+96|0;g=e+32|0;d=e;JPa(a+96|0,c);CIa(g);h=Jbb(f[a+36>>2]|0)|0;f[g+32>>2]=h;a=a+120|0;f[g+24>>2]=a;b[g+28>>0]=0;x=0;ua(744,g|0,c|0);h=x;x=0;do if(!(h&1)){tMa(d);f[d+24>>2]=a;x=0;ua(745,d|0,c|0);h=x;x=0;if(h&1){a=Ia()|0;P_a(d);break}else{h=(b[d+28>>0]&1|b[g+36>>0])<<24>>24!=0;P_a(d);qNa(g);u=e;return h|0}}else a=Ia()|0;while(0);qNa(g);Ua(a|0);return 0}function xy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;h=j+20|0;i=j;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;d=g+1|0;if(d>>>0>268435455)dea();k=(f[a+8>>2]|0)-e|0;e=k>>3;HN(i,k>>4>>>0<134217727?(e>>>0>>0?d:e):268435455,g,a+8|0);e=i+8|0;g=f[e>>2]|0;d=f[b>>2]|0;c=f[c>>2]|0;x=0;va(85,h|0,c|0,((c|0)<0)<<31>>31|0);c=x;x=0;if(!(c&1)?(x=0,wa(139,g|0,d|0,135337,f[h>>2]|0),k=x,x=0,!(k&1)):0){f[e>>2]=g+16;WN(a,i);Pda(i);u=j;return}k=Ia()|0;Pda(i);Ua(k|0)}function yy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/40|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/40|0;d=c+b|0;if(d>>>0>107374182)dea();else{e=(h-e|0)/40|0;h=e<<1;PL(g,e>>>0<53687091?(h>>>0>>0?d:h):107374182,c,a+8|0);j_(g,b);PK(a,g);O4(g);break}}else O_(a,b);while(0);u=i;return}function zy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;g=j+4|0;h=j;do if(b[a+33>>0]|0){i=DCa(134176,110863)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,k=x,x=0,!(k&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}k=Ia()|0;OCa(g);Ua(k|0)}while(0);i=f[a+28>>2]|0;k=Qab(f[c+4>>2]|0)|0;k=Gv(i,k?34:33)|0;i=i_(a+44|0,c+8|0)|0;n4a(h,f[i>>2]|0);Yr(k,f[h>>2]|0)|0;u=j;return}function Ay(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;cz(c);e=f[c>>2]|0;if((b[e>>0]|0)!=40)Ca(65897,65740,501,66442);f[c>>2]=e+1;i=Rm(a,c,65707)|0;cz(c);e=f[c>>2]|0;if((b[e>>0]|0)!=59)Ca(66451,65740,505,66442);f[c>>2]=e+1;h=Rm(a,c,65707)|0;cz(c);e=f[c>>2]|0;if((b[e>>0]|0)!=59)Ca(66451,65740,509,66442);f[c>>2]=e+1;e=Rm(a,c,123272)|0;cz(c);g=f[c>>2]|0;if((b[g>>0]|0)==41){f[c>>2]=g+1;return iX(i,h,e,T4(a,c,d)|0)|0}else Ca(66119,65740,513,66442);return 0}function By(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;j=m+16|0;k=m+4|0;l=m;f[k>>2]=0;e=k+4|0;f[e>>2]=0;g=k+8|0;f[g>>2]=0;h=f[a+16>>2]|0;b=f[a+12>>2]|0;a:while(1){if((b|0)==(h|0))break;c=f[b>>2]|0;do if(!(f[c+12>>2]|0)){d=f[e>>2]|0;if((d|0)==(f[g>>2]|0)){x=0;ua(1503,k|0,c|0);d=x;x=0;if(d&1){i=12;break a}else break}else{f[d>>2]=f[c>>2];f[e>>2]=(f[e>>2]|0)+4;break}}while(0);b=b+4|0}if((i|0)==12){m=Ia()|0;zSa(k);Ua(m|0)}c=f[e>>2]|0;b=f[k>>2]|0;while(1){if((b|0)==(c|0))break;f[l>>2]=f[b>>2];f[j>>2]=f[l>>2];gF(a,j);b=b+4|0}zSa(k);u=m;return}function Cy(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=b;e=c-i>>2;d=a+8|0;k=f[a>>2]|0;j=k;do if(e>>>0>(f[d>>2]|0)-k>>2>>>0){NAa(a);if(e>>>0>1073741823)dea();else{j=(f[d>>2]|0)-(f[a>>2]|0)|0;k=j>>1;goa(a,j>>2>>>0<536870911?(k>>>0>>0?e:k):1073741823);Xha(a,b,c);break}}else{h=a+4|0;g=(f[h>>2]|0)-k>>2;e=e>>>0>g>>>0;g=e?b+(g<<2)|0:c;d=g-i|0;if(d|0)kia(k|0,b|0,d|0)|0;if(e){Xha(a,g,c);break}else{f[h>>2]=j+(d>>2<<2);break}}while(0);return}function Dy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=aSa(f[b>>2]|0)|0;if((Qab(f[g+8>>2]|0)|0?(i=a+68|0,c=hX(i,g)|0,(c|0)!=(a+72|0)):0)?(h=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[h>>2]|0)):0){e=a+64|0;c=f[e>>2]|0;sD(a);fH(c,f[e>>2]|0);c=f[d>>2]|0;b=f[h>>2]|0;while(1){if((b|0)==(c|0))break;fH(f[b>>2]|0,f[e>>2]|0);b=b+4|0}EU(i,g)}return}function Ey(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LB(c,h,d)|0;d=f[g>>2]|0;if(!d){fQ(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function Fy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=a+56|0;i=a+60|0;c=f[i>>2]|0;if((f[h>>2]|0)==(c|0))Ca(111005,111025,418,111094);f[i>>2]=c+-4;e=bP(f[a+36>>2]|0,4,b)|0;f[g>>2]=e;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=e;f[c>>2]=(f[c>>2]|0)+4}else LL(a,g);L1a(g,f[33015]|0);c=f[i>>2]|0;if(c>>>0<(f[a+64>>2]|0)>>>0){f[c>>2]=f[g>>2];f[i>>2]=(f[i>>2]|0)+4}else LL(h,g);iv(a,f[b+16>>2]|0);u=j;return}function Gy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;g=f[b>>2]|0;c=g;if(Qab(g)|0){d=f[a>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0))LL(d,b);else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}b=ZW(f[a+4>>2]|0,b)|0;d=f[a+8>>2]|0;c=f[d>>2]|0;f[d>>2]=c+1;f[h>>2]=c;d=b+4|0;e=f[d>>2]|0;if(e>>>0<(f[b+8>>2]|0)>>>0){f[e>>2]=c;f[d>>2]=e+4}else LL(b,h);e=f[a+12>>2]|0;b=f[a+16>>2]|0;f[h>>2]=b;c=e+4|0;d=f[c>>2]|0;if(d>>>0<(f[e+8>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else LL(e,h)}u=i;return}function Hy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;tS(c,1244,b);d=f[b>>2]|0;if(Dab(f[d>>2]|0)|0?(e=(vSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){tS(c,1245,b);tS(c,1243,(vSa(d)|0)+16|0);tS(c,1246,b);tS(c,1243,(vSa(d)|0)+12|0);tS(c,1247,b);tS(c,1243,(vSa(d)|0)+8|0)}else Ij(a,b);tS(c,1248,b);return}function Iy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;tS(c,1024,b);d=f[b>>2]|0;if(Dab(f[d>>2]|0)|0?(e=(vSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){tS(c,1025,b);tS(c,1023,(vSa(d)|0)+16|0);tS(c,1026,b);tS(c,1023,(vSa(d)|0)+12|0);tS(c,1027,b);tS(c,1023,(vSa(d)|0)+8|0)}else Jj(a,b);tS(c,1028,b);return}function Jy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;tS(c,1149,b);d=f[b>>2]|0;if(Dab(f[d>>2]|0)|0?(e=(vSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){tS(c,1150,b);tS(c,1148,(vSa(d)|0)+16|0);tS(c,1151,b);tS(c,1148,(vSa(d)|0)+12|0);tS(c,1152,b);tS(c,1148,(vSa(d)|0)+8|0)}else Kj(a,b);tS(c,1153,b);return}function Ky(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+64|0;i=p+48|0;j=p+40|0;k=p+32|0;l=p+24|0;m=p+16|0;n=p+8|0;o=p;d=a+4|0;q=f[d>>2]|0;h=f[b>>2]|0;e=f[b+4>>2]|0;g=f[c>>2]|0;c=f[c+4>>2]|0;f[d>>2]=q-e+c+(g-h<<3);d=q&31;b=(f[a>>2]|0)+(q>>>5<<2)|0;if((e|0)==(d|0)){f[i>>2]=h;f[i+4>>2]=e;f[j>>2]=g;f[j+4>>2]=c;f[k>>2]=b;f[k+4>>2]=e;qz(o,i,j,k)}else{f[l>>2]=h;f[l+4>>2]=e;f[m>>2]=g;f[m+4>>2]=c;f[n>>2]=b;f[n+4>>2]=d;up(o,l,m,n)}u=p;return}function Ly(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=aSa(f[b>>2]|0)|0;if((Qab(f[h+8>>2]|0)|0?(e=a+16|0,i=a+84|0,c=hX(i,h)|0,(c|0)!=(a+88|0)):0)?(g=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[g>>2]|0)):0){c=a+80|0;a=f[c>>2]|0;SC(e);DH(a,f[c>>2]|0);a=f[d>>2]|0;b=f[g>>2]|0;while(1){if((b|0)==(a|0))break;DH(f[b>>2]|0,f[c>>2]|0);b=b+4|0}EU(i,h)}return}function My(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+32|0;c=g+16|0;d=g;e=g+20|0;h=g+4|0;i=f[a>>2]|0;f[a>>2]=i+1;DY(h,i);x=0;ia(83,h|0,98438)|0;a=x;x=0;do if(!(a&1)){f[e>>2]=f[h>>2];f[e+4>>2]=f[h+4>>2];f[e+8>>2]=f[h+8>>2];a=0;while(1){if((a|0)==3)break;f[h+(a<<2)>>2]=0;a=a+1|0}x=0;va(88,d|0,((b[e+11>>0]|0)<0?f[e>>2]|0:e)|0,0);i=x;x=0;if(i&1){a=Ia()|0;MTa(e);break}else{L1a(c,f[d>>2]|0);MTa(e);MTa(h);u=g;return f[c>>2]|0}}else a=Ia()|0;while(0);MTa(h);Ua(a|0);return 0}function Ny(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+32|0;h=k+24|0;i=k+20|0;j=k;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>3;d=g+1|0;if(d>>>0>536870911)dea();l=(f[a+8>>2]|0)-e|0;e=l>>2;FN(j,l>>3>>>0<268435455?(e>>>0>>0?d:e):536870911,g,a+8|0);d=j+8|0;e=f[d>>2]|0;x=0;ua(83,i|0,b|0);b=x;x=0;if(b&1){l=Ia()|0;Aha(j);Ua(l|0)}else{l=f[c>>2]|0;f[h>>2]=f[i>>2];hUa(e,h,l);f[d>>2]=e+8;JO(a,j);Aha(j);u=k;return}}function Oy(a,b){a=a|0;b=b|0;var c=0;c=v$a(b)|0;do if(!c){c=J$a(b)|0;if(c|0){kv(a,c);break}c=Z$a(b)|0;if(c|0){di(a,c);break}c=u$a(b)|0;if(c|0){DT(a,c);break}c=k$a(b)|0;if(c|0){Gj(a,c);break}c=c$a(b)|0;if(c|0){oqa(a,c);break}c=e_a(b)|0;if(!c){faa((S$a(f[(f[a+84>>2]|0)+104>>2]|0)|0)+12|0,b);break}else{oqa(a,c);break}}else al(a,c);while(0);return}function Py(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;if(!(cia()|0))Ca(73366,73170,607,73374);e=f[b+16>>2]|0;c=a+4|0;d=f[b+12>>2]|0;while(1){if((d|0)==(e|0)){g=6;break}h=f[d>>2]|0;if((h|0)==(q8(f[c>>2]|0,h)|0))d=d+4|0;else break}do if((g|0)==6){if(IC(b)|0){h=DCa(134008,73397)|0;DCa(Bfa(h,f[f[(f[a>>2]|0)+116>>2]>>2]|0)|0,73454)|0;break}if(!(Dab(f[b>>2]|0)|0)?Zx(b)|0:0){h=DCa(134008,73460)|0;DCa(Bfa(h,f[f[(f[a>>2]|0)+116>>2]>>2]|0)|0,73454)|0}}while(0);return}function Qy(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110617)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);d=f[c+8>>2]|0;if(d|0)Ypa(a,d);FS(a,c);u=i;return}function Ry(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=f[b>>2]|0;i=f[a>>2]|0;j=$Pa(e,i)|0;g=f[c>>2]|0;d=$Pa(g,e)|0;h=i;do if(j){if(d){f[a>>2]=g;f[c>>2]=h;d=1;break}f[a>>2]=e;f[b>>2]=h;d=f[c>>2]|0;if($Pa(d,i)|0){f[b>>2]=d;f[c>>2]=h;d=2}else d=1}else if(d){f[b>>2]=g;f[c>>2]=e;d=f[b>>2]|0;e=f[a>>2]|0;if($Pa(d,e)|0){f[a>>2]=d;f[b>>2]=e;d=2}else d=1}else d=0;while(0);return d|0}function Sy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=u;u=u+32|0;g=i+16|0;h=i;k=f[(f[a+16>>2]|0)+4>>2]|0;j=c+8|0;f[g>>2]=f[j>>2];f[g+4>>2]=f[j+4>>2];f[g+8>>2]=f[j+8>>2];f[g+12>>2]=f[j+12>>2];j=f[b+8>>2]|0;c=dn(k,2)|0;if((j|0)==(c|0)){qN(h,g);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2]}if(d|0?(f[d+8>>2]|0)==(c|0):0){qN(h,g);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2]}k=e+8|0;pT(h,k,g);f[k>>2]=f[h>>2];f[k+4>>2]=f[h+4>>2];f[k+8>>2]=f[h+8>>2];f[k+12>>2]=f[h+12>>2];f[a+12>>2]=f[b+12>>2];u=i;return a|0}function Ty(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+224|0;m=q+208|0;n=q+160|0;o=q+80|0;p=q;e=n;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[m>>2]=f[d>>2];if((zd(0,c,m,o,n)|0)<0)d=-1;else{d=f[a>>2]|0;l=d&32;if((b[a+74>>0]|0)<1)f[a>>2]=d&-33;e=a+48|0;if(!(f[e>>2]|0)){g=a+44|0;h=f[g>>2]|0;f[g>>2]=p;i=a+28|0;f[i>>2]=p;j=a+20|0;f[j>>2]=p;f[e>>2]=80;k=a+16|0;f[k>>2]=p+80;d=zd(a,c,m,o,n)|0;if(h){ec[f[a+36>>2]&127](a,0,0)|0;d=(f[j>>2]|0)==0?-1:d;f[g>>2]=h;f[e>>2]=0;f[k>>2]=0;f[i>>2]=0;f[j>>2]=0}}else d=zd(a,c,m,o,n)|0;p=f[a>>2]|0;f[a>>2]=p|l;d=(p&32|0)==0?d:-1}u=q;return d|0}function Uy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h;g=f[a+12>>2]|0;c=Cka(f[f[a+4>>2]>>2]|0,f[(f[b>>2]|0)+4>>2]|0)|0;d=Qya(f[a>>2]|0,c,f[b>>2]|0)|0;i=a+8|0;faa((f[f[i>>2]>>2]|0)+12|0,d);tt(f[f[i>>2]>>2]|0);g=g+184|0;f[e>>2]=b;if(Vz(g,e)|0){f[e>>2]=b;i=dm(g,e)|0;f[i>>2]=d+12}i=SKa(f[f[a>>2]>>2]|0,c,f[(f[b>>2]|0)+4>>2]|0)|0;f[b>>2]=i;u=h;return}function Vy(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;c=i;d=a+4|0;e=a+16|0;g=a+24|0;b=a+20|0;while(1){if(s$a(f[b>>2]|0)|0){b=3;break}j=f[e>>2]|0;f[c>>2]=f[(f[(f[d>>2]|0)+(j>>>10<<2)>>2]|0)+((j&1023)<<2)>>2];j=Ol(g,c)|0;f[j>>2]=(f[j>>2]|0)+-1;$$(a);j=Ol(g,c)|0;h=f[c>>2]|0;if(!(f[j>>2]|0)){b=5;break}}if((b|0)==3)Ca(88468,88477,51,88516);else if((b|0)==5){u=i;return h|0}return 0}function Wy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;tS(c,929,b);d=f[b>>2]|0;if(Dab(f[d>>2]|0)|0?(e=(vSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){tS(c,930,b);tS(c,928,(vSa(d)|0)+16|0);tS(c,931,b);tS(c,928,(vSa(d)|0)+12|0);tS(c,932,b);tS(c,928,(vSa(d)|0)+8|0)}else Nj(a,b);tS(c,933,b);return}function Xy(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;tS(c,806,b);d=f[b>>2]|0;if(Dab(f[d>>2]|0)|0?(e=(vSa(d)|0)+16|0,(f[e>>2]|0)!=0):0){tS(c,807,b);tS(c,805,(vSa(d)|0)+16|0);tS(c,808,b);tS(c,805,(vSa(d)|0)+12|0);tS(c,809,b);tS(c,805,(vSa(d)|0)+8|0)}else Oj(a,b);tS(c,810,b);return}function Yy(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+32|0;b=d+12|0;c=d+16|0;e=d;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,65155,j7a(65155)|0);x=0;ia(59,e|0,a|0)|0;a=x;x=0;do if(!(a&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];a=0;while(1){if((a|0)==3)break;f[e+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,b|0,c|0);a=x;x=0;if(a&1){a=Ia()|0;MTa(c);break}else{MTa(c);MTa(e);u=d;return f[b>>2]|0}}else a=Ia()|0;while(0);MTa(e);Ua(a|0);return 0}function Zy(a){a=a|0;var b=0,c=0,d=0,e=0;d=u;u=u+32|0;b=d+12|0;c=d+16|0;e=d;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,64997,j7a(64997)|0);x=0;ia(59,e|0,a|0)|0;a=x;x=0;do if(!(a&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];a=0;while(1){if((a|0)==3)break;f[e+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,b|0,c|0);a=x;x=0;if(a&1){a=Ia()|0;MTa(c);break}else{MTa(c);MTa(e);u=d;return f[b>>2]|0}}else a=Ia()|0;while(0);MTa(e);Ua(a|0);return 0}function _y(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)cn(a,b)}}else cn(a,b);return}function $y(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=aSa(f[b>>2]|0)|0;if((Qab(f[h+8>>2]|0)|0?(e=a+16|0,i=a+84|0,c=hX(i,h)|0,(c|0)!=(a+88|0)):0)?(g=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[g>>2]|0)):0){c=a+80|0;a=f[c>>2]|0;eD(e);DH(a,f[c>>2]|0);a=f[d>>2]|0;b=f[g>>2]|0;while(1){if((b|0)==(a|0))break;DH(f[b>>2]|0,f[c>>2]|0);b=b+4|0}EU(i,h)}return}function az(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;c=i+20|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;h=g+1|0;if(h>>>0>268435455)dea();else{j=(f[a+8>>2]|0)-e|0;e=j>>3;UX(d,j>>4>>>0<134217727?(e>>>0>>0?h:e):268435455,g,a+12|0);h=d+8|0;g=f[h>>2]|0;n4a(c,b);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=f[c>>2];f[h>>2]=g+16;$A(a,d);KQ(d);u=i;return}}function bz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=aSa(f[b>>2]|0)|0;if((Qab(f[h+8>>2]|0)|0?(e=a+16|0,i=a+84|0,c=hX(i,h)|0,(c|0)!=(a+88|0)):0)?(g=c+20|0,d=c+24|0,(f[d>>2]|0)!=(f[g>>2]|0)):0){c=a+80|0;a=f[c>>2]|0;jD(e);DH(a,f[c>>2]|0);a=f[d>>2]|0;b=f[g>>2]|0;while(1){if((b|0)==(a|0))break;DH(f[b>>2]|0,f[c>>2]|0);b=b+4|0}EU(i,h)}return}function cz(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a>>2]|0;a:while(1){d=b[c>>0]|0;if(!(d<<24>>24))break;b:do if(hMa(d)|0){c=c+1|0;g=5}else{if((b[c>>0]|0)!=47)break a;switch(b[c+1>>0]|0){case 47:{e=c+2|0;while(1){f[a>>2]=e;h=b[e>>0]|0;d=h<<24>>24==0;c=e+1|0;if(d^h<<24>>24!=10)e=c;else break}if(d){c=e;break b}else{g=5;break b}}case 42:break;default:break a}d=c+2|0;c:while(1){f[a>>2]=d;switch(b[d>>0]|0){case 0:break c;case 42:{c=d+1|0;if((b[c>>0]|0)==47)break c;break}default:c=d+1|0}d=c}c=d+2|0;g=5}while(0);if((g|0)==5){g=0;f[a>>2]=c}}return}function dz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;g=a+64|0;h=f[g>>2]|0;sD(a);fH(h,f[g>>2]|0);g=lSa(f[b>>2]|0)|0;h=a+96|0;if(Qab(f[g+8>>2]|0)|0){e=f[(f[h>>2]|0)+-4>>2]|0;c=a+68|0;f[d>>2]=g;b=kY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;fH(f[b>>2]|0,e);b=b+4|0}EU(c,g)}f[h>>2]=(f[h>>2]|0)+-4;u=i;return}function ez(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=u;u=u+16|0;h=i;e=f[c>>2]|0;do if(e|0){g=b[d+11>>0]|0;if(g<<24>>24<0)g=f[d+4>>2]|0;else g=g&255;if(g){cFa(d,122322)|0;e=f[c>>2]|0}ASa(h,e,f[c+4>>2]|0);c=b[h+11>>0]|0;g=c<<24>>24<0;x=0;ja(49,d|0,(g?f[h>>2]|0:h)|0,(g?f[h+4>>2]|0:c&255)|0)|0;c=x;x=0;if(c&1){i=Ia()|0;MTa(h);Ua(i|0)}else{MTa(h);break}}while(0);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];e=0;while(1){if((e|0)==3)break;f[d+(e<<2)>>2]=0;e=e+1|0}u=i;return}function fz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;c=i+20|0;d=i;e=f[a>>2]|0;g=(f[a+4>>2]|0)-e>>4;h=g+1|0;if(h>>>0>268435455)dea();else{j=(f[a+8>>2]|0)-e|0;e=j>>3;UX(d,j>>4>>>0<134217727?(e>>>0>>0?h:e):268435455,g,a+12|0);h=d+8|0;g=f[h>>2]|0;m0a(c,b);f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=f[c>>2];f[h>>2]=g+16;$A(a,d);KQ(d);u=i;return}}function gz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;j=k+8|0;g=k;if(!(b[a+28>>0]|0)){if((f[(f[c+28>>2]|0)+4>>2]|0)!=5){d=c+32|0;i=f[d>>2]|0;if(!((i|0)!=0?(f[i+4>>2]|0)==5:0))e=6}}else{d=c+32|0;e=6}if((e|0)==6){h=c+8|0;Q$a(j,h);LUa(g,h);h=j+4|0;i=f[g>>2]|0;g=f[g+4>>2]|0;e=a+24|0;while(1){if(!(qTa(f[j>>2]|0,f[h>>2]|0,i,g)|0))break;l=QOa(j)|0;if(g2a(f[l>>2]|0,f[e>>2]|0)|0)N9(a,f[d>>2]|0);YYa(j)}if(g2a(f[c+24>>2]|0,f[e>>2]|0)|0)N9(a,f[d>>2]|0)}u=k;return}function hz(a,c){a=a|0;c=c|0;var d=0,e=0;Ema(f[a>>2]|0,40)|0;Ema(yPa(f[a>>2]|0,81457)|0,32)|0;Ema(x4(f[c>>2]|0,f[a>>2]|0)|0,32)|0;d=c+26|0;if(b[d>>0]|0){Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80918)|0}e=f[a>>2]|0;zm(e,Jbb(f[c+4>>2]|0)|0)|0;if(F1a(c)|0){e=Ema(f[a>>2]|0,32)|0;zm(e,Jbb(f[c+8>>2]|0)|0)|0}if(b[d>>0]|0)DCa(f[a>>2]|0,123272)|0;DCa(f[a>>2]|0,123272)|0;return}function iz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110824)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+12>>2]|0);FS(a,c);u=i;return}function jz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+48|0;d=h+16|0;i=h+36|0;j=h+32|0;e=h;g=a+16|0;c=a+36|0;a=Jbb(f[c>>2]|0)|0;f[j>>2]=f[b+24>>2];f[d>>2]=f[j>>2];b=(jJ(a,d)|0)+16|0;f[i>>2]=f[b>>2];f[d>>2]=f[i>>2];a=(MI(a,d)|0)+4|0;a=f[a>>2]|0;if(!a){j=f[c>>2]|0;Jbb(j)|0;j=DWa(j+144|0)|0;GVa(f[g>>2]|0,j)|0}else{EXa(e);f[e>>2]=a;j=f[c>>2]|0;Jbb(j)|0;j=cWa(j+144|0)|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];cqa(j,d)|0;GVa(f[g>>2]|0,j)|0}u=h;return}function kz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110713)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);if((f[(f[c+12>>2]|0)+4>>2]|0)!=5?(f[(f[c+16>>2]|0)+4>>2]|0)!=5:0){Gv(Gv(f[a+28>>2]|0,-2)|0,0)|0;FX(a,4,4,0)}u=i;return}function lz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;d=g+24|0;e=g;f[d>>2]=f[c+8>>2];Ou(e,b,f[c+12>>2]|0);if(K0a(e)|0){f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[a+16>>2]=f[e+16>>2];f[a+20>>2]=f[e+20>>2]}else{d=dY((f[b+4>>2]|0)+4|0,d)|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];a1a(a)}u=g;return}function mz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;h=a+80|0;e=f[h>>2]|0;SC(a+16|0);DH(e,f[h>>2]|0);h=lSa(f[b>>2]|0)|0;e=a+112|0;if(Qab(f[h+8>>2]|0)|0){g=f[(f[e>>2]|0)+-4>>2]|0;c=a+84|0;f[d>>2]=h;b=kY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;DH(f[b>>2]|0,g);b=b+4|0}EU(c,h)}f[e>>2]=(f[e>>2]|0)+-4;u=i;return}function nz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){e=DCa(134176,110843)|0;d=f[a+28>>2]|0;d=zm(e,(f[d+4>>2]|0)+1-(f[d>>2]|0)|0)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(d,h)|0;fu(d)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);FS(a,c);u=i;return}function oz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;um(a,b,c);do if(!(K0a(a)|0)){d=c+4|0;e=f[d>>2]|0;g=v2a(e)|0;b=f[a>>2]|0;if(g){if((b|0)==(e|0))break}else if((v2a(b)|0)^1|(b|0)==(e|0))break;g=DCa(134176,101252)|0;g=DCa(DCa(g,Fha(f[d>>2]|0)|0)|0,101262)|0;Ema(xm(DCa(DCa(g,Fha(f[a>>2]|0)|0)|0,101272)|0,c)|0,10)|0;if((f[a>>2]|0)!=(f[d>>2]|0))Ca(101279,101308,128,110563)}while(0);return}function pz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){e=DCa(134176,110885)|0;d=f[a+28>>2]|0;d=zm(e,(f[d+4>>2]|0)+1-(f[d>>2]|0)|0)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(d,h)|0;fu(d)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);FS(a,c);u=i;return}function qz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=f[b>>2]|0;g=f[b+4>>2]|0;c=((f[c>>2]|0)-i<<3)+(f[c+4>>2]|0)-g|0;e=i;if((c|0)>0){if(!g){h=d;e=i}else{i=32-g|0;h=(c|0)<(i|0)?c:i;i=-1>>>(i-h|0)&-1<>2]|0;f[g>>2]=f[g>>2]&~i|f[e>>2]&i;e=d+4|0;i=(f[e>>2]|0)+h|0;f[d>>2]=g+(i>>>5<<2);f[e>>2]=i&31;e=(f[b>>2]|0)+4|0;f[b>>2]=e;c=c-h|0;h=d}g=(c|0)/32|0;kia(f[d>>2]|0,e|0,g<<2|0)|0;e=c-(g<<5)|0;c=(f[h>>2]|0)+(g<<2)|0;f[h>>2]=c;if((e|0)>0){g=(f[b>>2]|0)+(g<<2)|0;f[b>>2]=g;i=-1>>>(32-e|0);c=f[h>>2]|0;f[c>>2]=f[c>>2]&~i|f[g>>2]&i;f[d+4>>2]=e}}else c=f[d>>2]|0;f[a>>2]=c;f[a+4>>2]=f[d+4>>2];return}function rz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=d+4|0;g=(f[h>>2]|0)-(f[d>>2]|0)|0;lia(d,g+c|0);g=(f[d>>2]|0)+g|0;a:while(1){c=b[a>>0]|0;b:do switch(c<<24>>24){case 0:break a;case 92:{c=b[a+1>>0]|0;switch(c<<24>>24){case 92:case 39:case 34:{e=2;break b}case 110:{e=2;c=10;break b}case 116:{e=2;c=9;break b}default:{e=3;c=((NB(c)|0)<<4)+(NB(b[a+2>>0]|0)|0)&255;break b}}}default:e=1}while(0);b[g>>0]=c;a=a+e|0;g=g+1|0}e=f[d>>2]|0;c=e;if(g>>>0>>0)Ca(99241,99262,1521,99291);a=g-c|0;if(a>>>0>((f[h>>2]|0)-c|0)>>>0)Ca(99306,99262,1523,99291);else{lia(d,a);return}}function sz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110633)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Ypa(a,f[c+8>>2]|0);FS(a,c);u=i;return}function tz(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=YC(c,h,d)|0;d=f[g>>2]|0;if(!d){NY(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function uz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;do if(b[a+12>>0]|0){e=DCa(zm(DCa(zm(DCa(134176,87272)|0,d)|0,87600)|0,c)|0,123272)|0;dYa(h,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;g=ia(73,f[h>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,i=ia(f[(f[g>>2]|0)+28>>2]|0,g|0,10)|0,k=x,x=0,!(k&1)):0){OCa(h);Wq(e,i)|0;fu(e)|0;break}k=Ia()|0;OCa(h);Ua(k|0)}while(0);k=afa(d,a,c)|0;u=j;return k|0}function vz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;h=a+80|0;e=f[h>>2]|0;eD(a+16|0);DH(e,f[h>>2]|0);h=lSa(f[b>>2]|0)|0;e=a+112|0;if(Qab(f[h+8>>2]|0)|0){g=f[(f[e>>2]|0)+-4>>2]|0;c=a+84|0;f[d>>2]=h;b=kY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;DH(f[b>>2]|0,g);b=b+4|0}EU(c,h)}f[e>>2]=(f[e>>2]|0)+-4;u=i;return}function wz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i;h=a+80|0;e=f[h>>2]|0;jD(a+16|0);DH(e,f[h>>2]|0);h=lSa(f[b>>2]|0)|0;e=a+112|0;if(Qab(f[h+8>>2]|0)|0){g=f[(f[e>>2]|0)+-4>>2]|0;c=a+84|0;f[d>>2]=h;b=kY(c,d)|0;a=f[b+4>>2]|0;b=f[b>>2]|0;while(1){if((b|0)==(a|0))break;DH(f[b>>2]|0,g);b=b+4|0}EU(c,h)}f[e>>2]=(f[e>>2]|0)+-4;u=i;return}function xz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=f[a+88>>2]|0;d=(f[a+92>>2]|0)-c>>2;do if(d>>>0>b>>>0){b=f[c+(b<<2)>>2]|0;if(!(f[b+12>>2]|0)){e=b;break}else Ca(95068,87231,939,95107)}else{c=b-d|0;b=f[a>>2]|0;do if(c>>>0>=(f[b+40>>2]|0)-(f[b+36>>2]|0)>>2>>>0){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,95128,j7a(95128)|0);x=0;ua(1870,a|0,g|0);e=x;x=0;if(e&1){h=Ia()|0;MTa(g);Ua(h|0)}else{MTa(g);b=f[a>>2]|0;break}}while(0);e=f[(f[b+36>>2]|0)+(c<<2)>>2]|0}while(0);u=h;return f[e>>2]|0}function yz(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;i=a+44|0;a=f[i>>2]|0;j=SKa(f[a>>2]|0,c,1)|0;h=Kpa(f[a>>2]|0,11,j,h)|0;g=Kpa(f[a>>2]|0,7,g,h)|0;h=f[i>>2]|0;a=SKa(f[h>>2]|0,d,1)|0;d=SKa(f[f[i>>2]>>2]|0,e,1)|0;d=Kpa(f[h>>2]|0,10,a,d)|0;a=f[i>>2]|0;b=Qya(a,b,Kpa(f[a>>2]|0,8,g,d)|0)|0;d=f[i>>2]|0;g=SKa(f[d>>2]|0,c,1)|0;h=SKa(f[f[i>>2]>>2]|0,e,1)|0;return J$(a,b,Kpa(f[d>>2]|0,10,g,h)|0)|0}function zz(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;if(Qab(f[d>>2]|0)|0){c=ZW(a+56|0,d)|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;Gd(a,b);if(Qab(f[d>>2]|0)|0){b=a+68|0;if(P5(b,d)|0){y3(a+44|0);a8(b,d)}if(c){y3(a+44|0);bU(a+56|0,d)}}return}function Az(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;if(Qab(f[d>>2]|0)|0){c=ZW(a+56|0,d)|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;Hd(a,b);if(Qab(f[d>>2]|0)|0){b=a+68|0;if(P5(b,d)|0){A3(a+44|0);a8(b,d)}if(c){A3(a+44|0);dU(a+56|0,d)}}return}function Bz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;i=n+24|0;j=n+16|0;h=n+8|0;k=n;l=a+4|0;d=f[l>>2]|0;if(((d|0)!=5?(e=a+12|0,Jbb(f[a+16>>2]|0)|0):0)?!(v2a(d)|0):0){Q$a(j,e);LUa(h,e);g=j+4|0;e=f[h>>2]|0;d=f[h+4>>2]|0;while(1){if(!(qTa(f[j>>2]|0,f[g>>2]|0,e,d)|0))break;h=QOa(j)|0;if((f[(f[h>>2]|0)+4>>2]|0)==5){m=7;break}YYa(j)}do if((m|0)==7){if(b){if(c)break}else{f[k>>2]=f[a+8>>2];f[i>>2]=f[k>>2];if(OM(a,i)|0)break}f[l>>2]=5}while(0)}u=n;return}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[a+(d<<2)>>2]=0;d=d+1|0}x=0;d=ga(254,b|0)|0;e=x;x=0;do if(!(e&1)?(x=0,ua(82,a|0,d|0),e=x,x=0,!(e&1)):0){e=f[c+4>>2]|0;d=f[c>>2]|0;while(1){if((d|0)==(e|0)){b=8;break}x=0;b=ga(254,f[d+4>>2]|0)|0;c=x;x=0;if(c&1){b=13;break}x=0;ua(82,a|0,b|0);c=x;x=0;if(c&1){b=13;break}d=d+8|0}if((b|0)==8)return;else if((b|0)==13){d=Ia()|0;break}}else b=9;while(0);if((b|0)==9)d=Ia()|0;MTa(a);Ua(d|0)}function Dz(a){a=a|0;var c=0,d=0,e=0;jza();if(b[135320]|0)DCa(134176,52356)|0;c=s8(48)|0;x=0;ua(93,c|0,a|0);d=x;x=0;do if(d&1){a=Ia()|0;Cbb(c)}else{f[32967]=c;a=f[c+44>>2]|0;if(b[135320]|0?(Ema(bC(134008,a)|0,10)|0,b[135320]|0):0)DCa(134176,52344)|0;c=s8(232)|0;x=0;ta(444,c|0);d=x;x=0;if(d&1){a=Ia()|0;Cbb(c);break}f[32970]=c;d=s8(152)|0;x=0;a=ia(69,a|0,0)|0;e=x;x=0;if(!(e&1)?(x=0,wa(74,d|0,c|0,a|0,0),e=x,x=0,!(e&1)):0){f[32968]=d;OP();return}a=Ia()|0;Cbb(d)}while(0);Ua(a|0)}function Ez(a,c){a=a|0;c=c|0;var d=0;d=a+4|0;CD(f[d>>2]|0,f[c+4>>2]|0,b[c+12>>0]|0);switch(f[c+8>>2]|0){case 0:{DCa(f[d>>2]|0,93092)|0;break}case 1:{DCa(f[d>>2]|0,117184)|0;break}case 2:{DCa(f[d>>2]|0,93096)|0;break}case 3:{DCa(f[d>>2]|0,93100)|0;break}case 4:{DCa(f[d>>2]|0,93103)|0;break}case 5:{DCa(f[d>>2]|0,93107)|0;break}default:{}}a=c+16|0;if(Jbb(f[a>>2]|0)|0){d=DCa(f[d>>2]|0,75479)|0;zm(d,Jbb(f[a>>2]|0)|0)|0}return}function Fz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;g=s_a()|0;if(g>>>0>>0)dea();j=((f[a+8>>2]|0)-c|0)/12|0;c=j<<1;TM(h,j>>>0>>1>>>0?(c>>>0>>0?e:c):g,d,a+8|0);d=h+8|0;e=f[d>>2]|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}f[d>>2]=e+12;wF(a,h);V6(h);u=i;return}function Gz(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=a+64|0;a:do if(!(f[e>>2]|0)){do switch(c&-3|0){case 48:case 16:{d=87068;break}case 1:case 17:{d=87070;break}case 8:{d=87072;break}case 24:{d=87074;break}case 56:{d=87077;break}case 9:case 25:{d=87080;break}case 52:case 20:{d=87083;break}case 5:case 21:{d=87086;break}case 12:{d=87089;break}case 28:{d=87092;break}case 60:{d=87096;break}case 13:case 29:{d=87100;break}default:{a=0;break a}}while(0);d=FP(b,d)|0;f[e>>2]=d;if(d){f[a+88>>2]=c;if((c&2|0)!=0?(x2a(d,0,2)|0)!=0:0){sY(f[e>>2]|0)|0;f[e>>2]=0;a=0}}else a=0}else a=0;while(0);return a|0}function Hz(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;a=a+44|0;i=f[a>>2]|0;j=SKa(f[i>>2]|0,d,1)|0;g=Kpa(f[i>>2]|0,7,g,j)|0;g=Kpa(f[i>>2]|0,10,g,h)|0;i=f[a>>2]|0;c=SKa(f[i>>2]|0,c,1)|0;h=SKa(f[f[a>>2]>>2]|0,e,1)|0;h=Kpa(f[i>>2]|0,11,c,h)|0;c=f[a>>2]|0;d=SKa(f[c>>2]|0,d,1)|0;e=SKa(f[f[a>>2]>>2]|0,e,1)|0;e=Qya(c,b,Kpa(f[c>>2]|0,11,d,e)|0)|0;return J$(c,e,Kpa(f[f[a>>2]>>2]|0,8,g,h)|0)|0}function Iz(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0;a=a+44|0;i=f[a>>2]|0;j=SKa(f[i>>2]|0,d,1)|0;g=Kpa(f[i>>2]|0,7,g,j)|0;g=Kpa(f[i>>2]|0,10,g,h)|0;i=f[a>>2]|0;c=SKa(f[i>>2]|0,c,1)|0;h=SKa(f[f[a>>2]>>2]|0,e,1)|0;h=Kpa(f[i>>2]|0,11,c,h)|0;c=f[a>>2]|0;d=SKa(f[c>>2]|0,d,1)|0;e=SKa(f[f[a>>2]>>2]|0,e,1)|0;e=Qya(c,b,Kpa(f[c>>2]|0,12,d,e)|0)|0;return J$(c,e,Kpa(f[f[a>>2]>>2]|0,8,g,h)|0)|0}function Jz(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=YC(c,h,d)|0;d=f[g>>2]|0;if(!d){c_(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function Kz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;e=c+20|0;if((b[e>>0]|0)!=0?(Wwa(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c),(b[e>>0]|0)!=0):0){d=f[a+36>>2]|0;Jbb(d)|0;d=(b[d+114>>0]|0)==0}else d=0;owa(a,d,c);g=c+8|0;d=c+32|0;_X(a,b[g>>0]|0,f[d>>2]|0,c);i=Jbb(f[c+16>>2]|0)|0;Pq(a,i,f[c+4>>2]|0,h[g>>0]|0,(b[e>>0]|0)!=0,c);jda(a,f[(f[c+24>>2]|0)+4>>2]|0,1,c,84171);e=c+28|0;$oa(a,f[(f[e>>2]|0)+4>>2]|0,c);jda(a,f[(f[e>>2]|0)+4>>2]|0,f[d>>2]|0,c,84236);return}function Lz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;h=u;u=u+48|0;i=h+16|0;l=h;j=h+32|0;g=h+36|0;k=SKa(f[c>>2]|0,d,1)|0;t$a(l,(Jbb(b)|0)+-1|0);f[i>>2]=f[l>>2];f[i+4>>2]=f[l+4>>2];f[i+8>>2]=f[l+8>>2];f[i+12>>2]=f[l+12>>2];d=e0(c,i)|0;d=Kpa(f[c>>2]|0,7,k,d)|0;f[j>>2]=f[a+24>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;x=0;f[i>>2]=f[j>>2];b=ka(10,c|0,i|0,g|0,0)|0;a=x;x=0;if(!(a&1)?(x=0,e=ka(8,c|0,d|0,b|0,0)|0,l=x,x=0,!(l&1)):0){zSa(g);u=h;return e|0}l=Ia()|0;zSa(g);Ua(l|0);return 0}function Mz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=W7a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((b|0)==(e|0)){if(CXa(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function Nz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;e=g;f[e>>2]=b;f[e+4>>2]=c;b=g+20|0;c=g+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,d,j7a(d)|0);x=0;va(181,b|0,e|0,c|0);d=x;x=0;do if(!(d&1)){x=0;ua(3191,a|0,b|0);d=x;x=0;if(d&1){g=Ia()|0;MTa(b);b=g;break}else{MTa(b);MTa(c);f[a>>2]=50288;c=e;d=f[c+4>>2]|0;e=a+8|0;f[e>>2]=f[c>>2];f[e+4>>2]=d;u=g;return}}else b=Ia()|0;while(0);MTa(c);Ua(b|0)}function Oz(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;k=j;dYa(k,b);b=f[k>>2]|0;x=0;g=ia(73,b|0,134912)|0;l=x;x=0;if(!(l&1)?(x=0,ka(f[(f[g>>2]|0)+48>>2]|0,g|0,31216,31248,c|0)|0,l=x,x=0,!(l&1)):0){x=0;b=ia(73,b|0,134920)|0;l=x;x=0;if(((!(l&1)?(x=0,h=ga(f[(f[b>>2]|0)+12>>2]|0,b|0)|0,l=x,x=0,!(l&1)):0)?(f[d>>2]=h,x=0,i=ga(f[(f[b>>2]|0)+16>>2]|0,b|0)|0,l=x,x=0,!(l&1)):0)?(f[e>>2]=i,x=0,ua(f[(f[b>>2]|0)+20>>2]|0,a|0,b|0),l=x,x=0,!(l&1)):0){OCa(k);u=j;return}b=Ia()|0}else b=Ia()|0;OCa(k);Ua(b|0)}function Pz(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;l=k;dYa(l,c);c=f[l>>2]|0;x=0;h=ia(73,c|0,134880)|0;m=x;x=0;if(!(m&1)?(x=0,ka(f[(f[h>>2]|0)+32>>2]|0,h|0,31216,31248,d|0)|0,m=x,x=0,!(m&1)):0){x=0;c=ia(73,c|0,134896)|0;m=x;x=0;if(((!(m&1)?(x=0,i=ga(f[(f[c>>2]|0)+12>>2]|0,c|0)|0,m=x,x=0,!(m&1)):0)?(b[e>>0]=i,x=0,j=ga(f[(f[c>>2]|0)+16>>2]|0,c|0)|0,m=x,x=0,!(m&1)):0)?(b[g>>0]=j,x=0,ua(f[(f[c>>2]|0)+20>>2]|0,a|0,c|0),m=x,x=0,!(m&1)):0){OCa(l);u=k;return}c=Ia()|0}else c=Ia()|0;OCa(l);Ua(c|0)}function Qz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/24|0;e=d+1|0;if(e>>>0>178956970)dea();i=((f[a+8>>2]|0)-c|0)/24|0;c=i<<1;C_(g,i>>>0<89478485?(c>>>0>>0?e:c):178956970,d,a+12|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(3199,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;AY(g);Ua(i|0)}else{f[c>>2]=d+24;fM(a,g);AY(g);u=h;return}}function Rz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;g=j+24|0;h=j+20|0;i=j;c=f[a>>2]|0;d=(f[a+4>>2]|0)-c>>3;e=d+1|0;if(e>>>0>536870911)dea();k=(f[a+8>>2]|0)-c|0;c=k>>2;FN(i,k>>3>>>0<268435455?(c>>>0>>0?e:c):536870911,d,a+8|0);c=i+8|0;d=f[c>>2]|0;x=0;ua(65,h|0,111900);e=x;x=0;if(e&1){k=Ia()|0;Aha(i);Ua(k|0)}else{k=f[b>>2]|0;f[g>>2]=f[h>>2];hUa(d,g,k);f[c>>2]=d+8;JO(a,i);Aha(i);u=j;return}}function Sz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;do if(XAa()|0){x=0;c=ga(212,20)|0;e=x;x=0;if(e&1){c=Ia()|0;break}x=0;ua(1294,c|0,f[a>>2]|0);e=x;x=0;if(e&1){b=Ia()|0;Cbb(c);c=b;break}else{d=a;e=c;g=8;break}}else{d=a;e=0;g=8}while(0);if((g|0)==8){x=0;va(f[(f[b>>2]|0)+12>>2]|0,b|0,a|0,f[d>>2]|0);g=x;x=0;do if(!(g&1)?(x=0,va(118,a|0,b|0,0),g=x,x=0,!(g&1)):0){if(XAa()|0?(x=0,ta(472,e|0),g=x,x=0,g&1):0)break;if(e|0){P_a(e);Cbb(e)}return}while(0);c=Ia()|0;if(e){P_a(e);Cbb(e)}}Ua(c|0)}function Tz(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;d=u;u=u+32|0;b=d+12|0;c=d+16|0;e=d;Dx(a,97645);g=a+72|0;a=f[g>>2]|0;f[g>>2]=a+1;DY(e,a);x=0;ia(83,e|0,97661)|0;a=x;x=0;do if(!(a&1)){f[c>>2]=f[e>>2];f[c+4>>2]=f[e+4>>2];f[c+8>>2]=f[e+8>>2];a=0;while(1){if((a|0)==3)break;f[e+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,b|0,c|0);g=x;x=0;if(g&1){a=Ia()|0;MTa(c);break}else{MTa(c);MTa(e);u=d;return f[b>>2]|0}}else a=Ia()|0;while(0);MTa(e);Ua(a|0);return 0}function Uz(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=a+11|0;h=b[j>>0]|0;k=a+4|0;g=f[k>>2]|0;i=h&255;do if((h<<24>>24<0?g:i)|0){if((c|0)!=(d|0)){g=d;h=c;while(1){g=g+-4|0;if(h>>>0>=g>>>0)break;i=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=i;h=h+4|0}h=b[j>>0]|0;i=h&255;g=f[k>>2]|0}j=h<<24>>24<0;a=j?f[a>>2]|0:a;k=d+-4|0;j=a+(j?g:i)|0;g=a;while(1){h=b[g>>0]|0;i=h<<24>>24>0&h<<24>>24!=127;if(c>>>0>=k>>>0)break;if(i?(f[c>>2]|0)!=(h<<24>>24|0):0){l=11;break}c=c+4|0;g=(j-g|0)>1?g+1|0:g}if((l|0)==11){f[e>>2]=4;break}if(i?((f[k>>2]|0)+-1|0)>>>0>=h<<24>>24>>>0:0)f[e>>2]=4}while(0);return}function Vz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;h=f[b>>2]|0;f[e>>2]=h;e=JH(e,4)|0;g=f[a+4>>2]|0;a:do if(g){i=g+-1|0;c=(i&g|0)==0;if(!c)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=i&e;b=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b){b=0;break a}a=f[b+4>>2]|0;if((e|0)==(a|0)){if((f[b+8>>2]|0)==(h|0))break a}else{if(!c){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&i;if((a|0)!=(d|0)){b=0;break a}}}else b=0}else b=0;while(0);u=j;return b|0}function Wz(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;h=f[b>>2]|0;f[e>>2]=h;e=JH(e,4)|0;g=f[a+4>>2]|0;a:do if(g){i=g+-1|0;c=(i&g|0)==0;if(!c)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=i&e;b=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(b)while(1){b=f[b>>2]|0;if(!b){b=0;break a}a=f[b+4>>2]|0;if((a|0)==(e|0)){if((f[b+8>>2]|0)==(h|0))break a}else{if(!c){if(a>>>0>=g>>>0)a=(a>>>0)%(g>>>0)|0}else a=a&i;if((a|0)!=(d|0)){b=0;break a}}}else b=0}else b=0;while(0);u=j;return b|0}function Xz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+16|0;e=d;if(b[(f[a>>2]|0)+112>>0]|0){g=Or(c,1)|0;g=C7a(b[g>>0]|0)|0;g=g?1:2;wn(a,c,g+1|0,ZQa(a,Or(c,g)|0)|0);u=d;return}d=Ea(20)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=j7a(94101)|0;x=0;va(87,e|0,94101,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,d|0,e|0);c=x;x=0;if(c&1)c=1;else{x=0;va(98,d|0,32200,457);x=0;c=0}a=Ia()|0;MTa(e);if(c)g=7}else{a=Ia()|0;g=7}if((g|0)==7)La(d|0);Ua(a|0)}function Yz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;i=a+8|0;g=a+96|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;if(b[g>>0]|0)zbb(f[a+32>>2]|0);i=a+97|0;if(b[i>>0]|0)zbb(f[a+56>>2]|0);e=a+52|0;f[e>>2]=d;do if(d>>>0>8){e=b[a+98>>0]|0;if((c|0)!=0&e<<24>>24!=0){f[a+32>>2]=c;b[g>>0]=0;h=13;break}else{h=ybb(d)|0;f[a+32>>2]=h;b[g>>0]=1;h=10;break}}else{f[a+32>>2]=a+44;f[e>>2]=8;b[g>>0]=0;e=b[a+98>>0]|0;h=10}while(0);if((h|0)==10)if(!(e<<24>>24)){e=(d|0)>8?d:8;f[a+60>>2]=e;if((c|0)!=0&e>>>0>7)g=0;else{g=1;c=ybb(e)|0}}else h=13;if((h|0)==13){f[a+60>>2]=0;g=0;c=0}f[a+56>>2]=c;b[i>>0]=g;return a|0}function Zz(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+20>>0]|0){h=DCa(134176,113416)|0;h=Bfa(h,f[c>>2]|0)|0;dYa(g,h+(f[(f[h>>2]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);e=f[a+12>>2]|0;d=f[a+8>>2]|0;while(1){if((d|0)==(e|0))break;ju(a,f[d>>2]|0,c);d=d+4|0}u=i;return}function _z(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=Ew(a,b,c,e)|0;if(kD(e,d,c)|0){h=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=h;d=g+1|0;if(kD(e,c,b)|0){h=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=h;if(kD(e,b,a)|0){h=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=h;g=g+3|0}else g=g+2|0}else g=d}return g|0}function $z(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+64|0;d=g;jX(d);c=a+36|0;e=Jbb(f[c>>2]|0)|0;x=0;va(94,d+16|0,b|0,e|0);e=x;x=0;do if(!(e&1)){uDa(d);e=b+36|0;mK(a+16|0,e);if((f[b+4>>2]|0)==0?v2a(f[(f[e>>2]|0)+4>>2]|0)|0:0){_0a(d,Jbb(f[c>>2]|0)|0);a=lNa(f[d>>2]|0,f[e>>2]|0)|0;f[e>>2]=a}jX(d);e=Jbb(f[c>>2]|0)|0;x=0;va(94,d+16|0,b|0,e|0);e=x;x=0;if(e&1){c=Ia()|0;uDa(d);break}else{uDa(d);u=g;return}}else{c=Ia()|0;uDa(d)}while(0);Ua(c|0)}function aA(a,b){a=a|0;b=b|0;Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80856)|0;DCa(rna(f[a>>2]|0,f[b>>2]|0)|0,123269)|0;switch(f[b+8>>2]|0){case 0:{DCa(f[a>>2]|0,80864)|0;break}case 1:{DCa(f[a>>2]|0,80869)|0;break}case 2:{DCa(f[a>>2]|0,81457)|0;break}case 3:{DCa(f[a>>2]|0,118298)|0;break}default:hb()}Ema(f[a>>2]|0,32)|0;DCa(x4(f[b+4>>2]|0,f[a>>2]|0)|0,80875)|0;return}function bA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;if(!c){c=0;h=0}else{c=f[c+4>>2]|0;yna(a,c,d);h=1}b=BB(a+48|0,b)|0;do if(Ooa(a,(b|0)!=0,d,85195)|0){e=b+12|0;a=b+16|0;d=f[a>>2]|0;if(!(i2a(d)|0)){MXa(g,c,h);h=f[g+4>>2]|0;i=e;f[i>>2]=f[g>>2];f[i+4>>2]=h;break}b=f[e>>2]|0;if((b|0)!=5){if(!((c|0)==5|(c|0)==(b|0))){c=0;i=8}}else i=8;if((i|0)==8)f[e>>2]=c;if((h|0)!=(d|0))f[a>>2]=-2}while(0);u=j;return}function cA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=f[b>>2]|0;j=f[a>>2]|0;k=Y4(d,e,g,j)|0;h=f[c>>2]|0;i=Y4(d,e,h,g)|0;do if(k){if(i){f[a>>2]=h;f[c>>2]=j;g=1;break}f[a>>2]=g;f[b>>2]=j;g=f[c>>2]|0;if(Y4(d,e,g,j)|0){f[b>>2]=g;f[c>>2]=j;g=2}else g=1}else if(i){f[b>>2]=h;f[c>>2]=g;g=f[b>>2]|0;h=f[a>>2]|0;if(Y4(d,e,g,h)|0){f[a>>2]=g;f[b>>2]=h;g=2}else g=1}else g=0;while(0);return g|0}function dA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+32|0;e=l+24|0;i=l+20|0;j=l;k=f[a>>2]|0;g=((f[a+4>>2]|0)-k|0)/12|0;h=g+1|0;if(h>>>0>357913941)dea();else{m=((f[a+8>>2]|0)-k|0)/12|0;k=m<<1;TM(j,m>>>0<178956970?(k>>>0>>0?h:k):357913941,g,a+8|0);k=j+8|0;h=f[k>>2]|0;f[i>>2]=f[b>>2];c=f[c>>2]|0;d=f[d>>2]|0;f[e>>2]=f[i>>2];iJa(h,e,c,d);f[k>>2]=h+12;JN(a,j);dga(j);u=l;return}}function eA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+12|0;j=k;h=YC(c,i,d)|0;d=f[h>>2]|0;if(!d){jZ(j,c,e,g);d=f[j>>2]|0;PZ(c,f[i>>2]|0,h,d);h=1}else h=0;f[a>>2]=d;b[a+4>>0]=h;u=k;return}function fA(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;c=h;do if(b[a+72>>0]|0){g=DCa(134176,87370)|0;dYa(c,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[c>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,i=x,x=0,!(i&1)):0){OCa(c);Wq(g,e)|0;fu(g)|0;break}i=Ia()|0;OCa(c);Ua(i|0)}while(0);d=E$(a,0)|0;K$(a,87391);c=a+80|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;K$(a,c);WA(a,d);u=h;return}function gA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;rXa(a);b[a+26>>0]=0;b[a+27>>0]=0;g=a+28|0;DUa(g);h=a+40|0;DUa(h);i=a+52|0;DUa(i);j=a+64|0;DUa(j);e=a+80|0;f[a+76>>2]=0;DUa(e);b[a+24>>0]=b[c+12>>0]|0;b[a+25>>0]=b[c+13>>0]|0;if(d|0?(x=0,ua(292,a|0,d|0),d=x,x=0,d&1):0){d=Ia()|0;RTa(e);RTa(j);RTa(i);yXa(h);yXa(g);P_a(a);Ua(d|0)}return}function hA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;i=(b[c+20>>0]|0)==0;d=a+32|0;e=h[c+8>>0]|0;g=Jbb(f[c+12>>2]|0)|0;if(i){j=Jbb(f[c+16>>2]|0)|0;i=d3(a,f[c+24>>2]|0)|0;a=d3(a,f[c+28>>2]|0)|0;a=uT(f[d>>2]|0,e,g,j,i,a,f[c+32>>2]|0)|0}else{j=d3(a,f[c+24>>2]|0)|0;a=d3(a,f[c+28>>2]|0)|0;a=Rra(f[d>>2]|0,e,g,j,a,f[c+32>>2]|0)|0}return a|0}function iA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(h-c>>2>>>0>>0){e=f[a>>2]|0;c=c-e>>2;d=c+b|0;if(d>>>0>1073741823)dea();else{e=h-e|0;h=e>>1;iO(g,e>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823,c,a+8|0);tHa(g,b);MK(a,g);LY(g);break}}else cJa(a,b);while(0);u=i;return}function jA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;g=l;f[a>>2]=c;k=a+4|0;f[k>>2]=0;h=a+8|0;f[h>>2]=0;i=a+12|0;f[i>>2]=0;j=f[c+40>>2]|0;c=f[c+36>>2]|0;while(1){if((c|0)==(j|0)){c=3;break}d=f[c>>2]|0;f[g>>2]=d;e=f[h>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;ua(1300,k|0,g|0);e=x;x=0;if(e&1){c=9;break}}else{x=0;ua(1293,e|0,d|0);e=x;x=0;if(e&1){c=9;break}f[h>>2]=(f[h>>2]|0)+16}c=c+4|0}if((c|0)==3){k=f[a>>2]|0;k=(Bya(f[k+36>>2]|0,f[k+40>>2]|0)|0)&1;b[a+16>>0]=k;u=l;return}else if((c|0)==9){l=Ia()|0;zSa(k);Ua(l|0)}}function kA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;d=j+32|0;e=j+24|0;f[e>>2]=b;g=j+8|0;h=j;i=a+100|0;if((gV(i,b)|0)==(a+104|0)){vMa(g,c);sA(d,i,b,e,g);g=f[a>>2]|0;L1a(h,b);i=KSa(c,f[a>>2]|0)|0;f[d>>2]=f[h>>2];Ys(g,jka(d,c,i,0)|0);u=j;return}else Ca(53443,51387,426,53491)}function lA(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;b=f[d>>2]|0;if(Qab(b)|0){c=ZW(a+56|0,d)|0;b=f[d>>2]|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;if(Qab(b)|0){b=a+68|0;if(P5(b,d)|0){z3(a+44|0);a8(b,d)}if(c){z3(a+44|0);cU(a+56|0,d)}}return}function mA(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;b=f[d>>2]|0;if(Qab(b)|0){c=ZW(a+56|0,d)|0;b=f[d>>2]|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;if(Qab(b)|0){b=a+68|0;if(P5(b,d)|0){B3(a+44|0);a8(b,d)}if(c){B3(a+44|0);eU(a+56|0,d)}}return}function nA(a,b){a=a|0;b=b|0;var c=0,d=0;d=b+8|0;b=f[d>>2]|0;if(Qab(b)|0){c=ZW(a+56|0,d)|0;b=f[d>>2]|0;c=(f[c+4>>2]|0)!=(f[c>>2]|0)}else c=0;if(Qab(b)|0){b=a+68|0;if(P5(b,d)|0){C3(a+44|0);a8(b,d)}if(c){C3(a+44|0);fU(a+56|0,d)}}return}function oA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;if(e>>>0>357913941)dea();i=((f[a+8>>2]|0)-c|0)/12|0;c=i<<1;TM(g,i>>>0<178956970?(c>>>0>>0?e:c):357913941,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(88,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;V6(g);Ua(i|0)}else{f[c>>2]=d+12;wF(a,g);V6(g);u=h;return}}function pA(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h;g=a+36|0;c=f[g>>2]|0;if(!c)Ca(97711,87231,876,97719);do if(b[a+12>>0]|0){c=DCa(134176,97729)|0;c=DCa(zm(c,f[g>>2]|0)|0,123272)|0;dYa(d,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;a=ia(73,f[d>>2]|0,134880)|0;i=x;x=0;if(!(i&1)?(x=0,e=ia(f[(f[a>>2]|0)+28>>2]|0,a|0,10)|0,i=x,x=0,!(i&1)):0){OCa(d);Wq(c,e)|0;fu(c)|0;c=f[g>>2]|0;break}i=Ia()|0;OCa(d);Ua(i|0)}while(0);f[g>>2]=c+-1;u=h;return}function qA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=DCa(134176,110647)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=dk(a)|0;f[c+16>>2]=j;j=dk(a)|0;f[c+12>>2]=j;j=dk(a)|0;f[c+8>>2]=j;waa(c);u=i;return}function rA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=a+11|0;g=b[k>>0]|0;h=g<<24>>24<0;if(h)j=f[a+4>>2]|0;else j=g&255;if(j>>>0>>0)Qda();if(h)g=(f[a+8>>2]&2147483647)+-1|0;else g=10;if((g-j|0)>>>0>=e>>>0){if(e|0){if(h)i=f[a>>2]|0;else i=a;g=j-c|0;h=i+c|0;if(g){XTa(h+e|0,h,g)|0;d=h>>>0<=d>>>0&(i+j|0)>>>0>d>>>0?d+e|0:d}XTa(h,d,e)|0;d=j+e|0;if((b[k>>0]|0)<0)f[a+4>>2]=d;else b[k>>0]=d;Z0a(i+d|0,0)}}else AB(a,g,j+e-g|0,j,c,0,e,d);return a|0}function sA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+12|0;j=k;h=YC(c,i,d)|0;d=f[h>>2]|0;if(!d){yU(j,c,e,g);d=f[j>>2]|0;PZ(c,f[i>>2]|0,h,d);h=1}else h=0;f[a>>2]=d;b[a+4>>0]=h;u=k;return}function tA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+48|0;c=l+32|0;g=l+24|0;e=l+8|0;h=l+16|0;i=l;j=b+8|0;Q$a(g,j);LUa(e,j);j=b+32|0;k=g+4|0;d=f[e>>2]|0;e=f[e+4>>2]|0;while(1){if(!(qTa(f[g>>2]|0,f[k>>2]|0,d,e)|0))break;m=QOa(g)|0;f[h>>2]=f[m>>2];m=f[j>>2]|0;f[c>>2]=f[h>>2];bA(a,c,m,b);YYa(g)}f[i>>2]=f[b+24>>2];m=f[j>>2]|0;f[c>>2]=f[i>>2];bA(a,c,m,b);qwa(a,(f[(f[b+28>>2]|0)+4>>2]|4|0)==5,b);u=l;return}function uA(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+11|0;if((b[d>>0]|0)<0){Z0a(f[a>>2]|0,0);f[a+4>>2]=0;d=a}else{Z0a(a,0);b[d>>0]=0;d=a}yv(a);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}e=a+12|0;c=c+12|0;d=e+11|0;if((b[d>>0]|0)<0){Z0a(f[e>>2]|0,0);f[a+16>>2]=0;d=e}else{Z0a(e,0);b[d>>0]=0;d=e}yv(e);f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=0;while(1){if((d|0)==3)break;f[c+(d<<2)>>2]=0;d=d+1|0}return}function vA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0;d=Jbb(f[a+16>>2]|0)|0;g=c+8|0;e=f[g>>2]|0;do if(!(KVa(d,e)|0)?((s9(d,e)|0)+-1|0)>>>0<=1:0){c=Pv(f[c+12>>2]|0)|0;g=f[g>>2]|0;d=f[f[a+24>>2]>>2]|0;a=d+(g<<3)|0;i=Wi(c)|0;e=f[a>>2]|0;f[a>>2]=e>>>0>>0?i:e;if(!(GQ(c)|0)){c=w$a(c)|0;if(((c|0)!=0?fra(c)|0:0)?(b[c+9>>0]|0)!=0:0)e=h[c+8>>0]<<3;else e=-1}else e=_Ha(c)|0;c=d+(g<<3)+4|0;d=f[c>>2]|0;if(!d){f[c>>2]=e;break}if((d|0)!=(e|0))f[c>>2]=-1}while(0);return}function wA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=Dba(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a)while(1){a=f[a>>2]|0;if(!a){a=0;break a}c=f[a+4>>2]|0;if((c|0)==(e|0)){if(yda(a+8|0,b)|0)break a}else{if(!i){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&h;if((c|0)!=(d|0)){a=0;break a}}}else a=0}else a=0;while(0);return a|0}function xA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;e=j;g=f[c>>2]|0;f[e>>2]=g;e=JH(e,4)|0;a:do if(b){h=b+-1|0;i=(h&b|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(b>>>0)|0;else d=h&e;c=f[a+(d<<2)>>2]|0;if(c)while(1){c=f[c>>2]|0;if(!c){c=0;break a}a=f[c+4>>2]|0;if((e|0)==(a|0)){if((f[c+8>>2]|0)==(g|0))break a}else{if(!i){if(a>>>0>=b>>>0)a=(a>>>0)%(b>>>0)|0}else a=a&h;if((a|0)!=(d|0)){c=0;break a}}}else c=0}else c=0;while(0);u=j;return c|0}function yA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=BF(c,h,d)|0;d=f[g>>2]|0;if(!d){WY(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function zA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h+16|0;d=h;c=h+4|0;f[d>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;g=f[b+4>>2]|0;x=0;f[e>>2]=f[d>>2];g=ka(10,a+32|0,e|0,c|0,g|0)|0;e=x;x=0;if(e&1){h=Ia()|0;zSa(c);Ua(h|0)}zSa(c);d=b+8|0;e=g+8|0;b=b+12|0;c=0;while(1){if(c>>>0>=(Jbb(f[b>>2]|0)|0)>>>0)break;i=ODa(d,c)|0;faa(e,d3(a,f[i>>2]|0)|0);c=c+1|0}u=h;return g|0}function AA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)dea();else{j=((f[a+8>>2]|0)-d|0)/12|0;i=j<<1;TM(c,j>>>0<178956970?(i>>>0>>0?g:i):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=0;i=e+4|0;f[i>>2]=0;j=e+8|0;f[j>>2]=0;f[e>>2]=f[b>>2];d=b+4|0;f[i>>2]=f[d>>2];i=b+8|0;f[j>>2]=f[i>>2];f[i>>2]=0;f[d>>2]=0;f[b>>2]=0;f[g>>2]=e+12;vD(a,c);_aa(c);u=h;return}}function BA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LD(c,h,d)|0;d=f[g>>2]|0;if(!d){yW(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function CA(a){a=a|0;Qca(a+244|0);CFa(a+220|0);DJa(a+208|0);zSa(a+188|0);SQa(a+168|0);zSa(a+156|0);zSa(a+144|0);oHa(a+132|0);uxa(a+112|0);Qza(a+100|0);zSa(a+88|0);zSa(a+76|0);zSa(a+60|0);UOa(a+48|0);return}function DA(a,c){a=a|0;c=c|0;var d=0,e=0;d=(c|0)!=0;a:do if(d&(a&3|0)!=0)while(1){if(!(b[a>>0]|0)){c=a;break a}a=a+1|0;c=c+-1|0;d=(c|0)!=0;if(!(d&(a&3|0)!=0)){e=5;break}}else e=5;while(0);b:do if((e|0)==5){do if(d){if(!(b[a>>0]|0))if(!c)break;else{c=a;break b}c:do if(c>>>0>3)while(1){d=f[a>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0)break c;a=a+4|0;c=c+-4|0;if(c>>>0<=3){e=11;break}}else e=11;while(0);if((e|0)==11)if(!c)break;while(1){if(!(b[a>>0]|0)){c=a;break b}c=c+-1|0;if(!c)break;else a=a+1|0}}while(0);c=0}while(0);return c|0}function EA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LD(c,h,d)|0;d=f[g>>2]|0;if(!d){WY(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function FA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;i=j;g=f[a>>2]|0;h=(f[a+4>>2]|0)-g>>4;e=h+1|0;if(e>>>0>268435455)dea();k=(f[a+8>>2]|0)-g|0;g=k>>3;HN(i,k>>4>>>0<134217727?(g>>>0>>0?e:g):268435455,h,a+8|0);e=i+8|0;g=f[e>>2]|0;x=0;wa(90,g|0,f[b>>2]|0,f[c>>2]|0,f[d>>2]|0);d=x;x=0;if(d&1){k=Ia()|0;Bha(i);Ua(k|0)}else{f[e>>2]=g+16;OO(a,i);Bha(i);u=j;return}}function GA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k+12|0;j=k;h=YC(c,i,d)|0;d=f[h>>2]|0;if(!d){aX(j,c,e,g);d=f[j>>2]|0;PZ(c,f[i>>2]|0,h,d);h=1}else h=0;f[a>>2]=d;b[a+4>>0]=h;u=k;return}function HA(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=YC(c,h,d)|0;d=f[g>>2]|0;if(!d){P1(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function IA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>4;g=e+1|0;if(g>>>0>268435455)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>3;UX(c,i>>4>>>0<134217727?(d>>>0>>0?g:d):268435455,e,a+12|0);g=c+8|0;e=f[g>>2]|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=f[b>>2];f[g>>2]=e+16;$A(a,c);AT(c);u=h;return}}function JA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h+16|0;d=h;c=h+4|0;f[d>>2]=f[b+24>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;g=f[b+4>>2]|0;x=0;f[e>>2]=f[d>>2];g=ka(13,a+32|0,e|0,c|0,g|0)|0;e=x;x=0;if(e&1){h=Ia()|0;zSa(c);Ua(h|0)}zSa(c);d=b+8|0;e=g+8|0;b=b+12|0;c=0;while(1){if(c>>>0>=(Jbb(f[b>>2]|0)|0)>>>0)break;i=ODa(d,c)|0;faa(e,d3(a,f[i>>2]|0)|0);c=c+1|0}u=h;return g|0}function KA(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=u;u=u+80|0;i=h+24|0;l=h;j=h+40|0;k=h+68|0;vX(c,d,e);AWa(l);t$a(i,Jbb(d)|0);m=l+8|0;f[m>>2]=f[i>>2];f[m+4>>2]=f[i+4>>2];f[m+8>>2]=f[i+8>>2];f[m+12>>2]=f[i+12>>2];f[l+4>>2]=1;sRa(j);b[j+8>>0]=e;b[j+9>>0]=1;wHa(j+16|0,e,0)|0;b[j+20>>0]=1;f[j+24>>2]=l;f[j+4>>2]=g;g=f[c+36>>2]|0;e=f[(f[g>>2]|0)+24>>2]|0;f[k>>2]=d;f[i>>2]=f[k>>2];rc[e&255](a,g,j,i);u=h;return}function LA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;b=k+8|0;d=k;g=a+4|0;h=a+8|0;i=a+16|0;Lma(b,f[g>>2]|0,f[h>>2]|0,f[i>>2]|0);J9(d,a);e=b+4|0;d=f[d+4>>2]|0;b=f[b>>2]|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;c=c+4|0;f[e>>2]=c;if((c-(f[b>>2]|0)|0)==4096){b=b+4|0;c=f[b>>2]|0;f[e>>2]=c}}f[a+20>>2]=0;c=f[g>>2]|0;b=c;while(1){b=(f[h>>2]|0)-b>>2;if(b>>>0<=2)break;Cbb(f[c>>2]|0);e=(f[g>>2]|0)+4|0;f[g>>2]=e;b=e;c=e}switch(b|0){case 1:{b=512;j=11;break}case 2:{b=1024;j=11;break}default:{}}if((j|0)==11)f[i>>2]=b;u=k;return}function MA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;Ema(f[a>>2]|0,40)|0;MXa(e,f[a+28>>2]|0,f[a>>2]|0);_m(e,b);e=b+16|0;do if(!(f[e>>2]|0)){b=b+12|0;c=f[b>>2]|0;if(c|0?!(b7a(f[c>>2]|0)|0):0){_Ba(a);d=7;break}Ema(f[a>>2]|0,41)|0}else{_Ba(a);b=b+12|0;d=7}while(0);if((d|0)==7){b=f[b>>2]|0;if(b|0?!(b7a(f[b>>2]|0)|0):0)QP(a,b);b=f[e>>2]|0;if(b|0)QP(a,b);pfa(a)}u=g;return}function NA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=a+16|0;k=f[a+72>>2]|0;d=f[a+68>>2]|0;while(1){if((d|0)==(k|0))break;g=f[d>>2]|0;e=g+48|0;g=g+52|0;c=1;while(1){a=f[e>>2]|0;if(c>>>0>=(f[g>>2]|0)-a>>2>>>0)break;a=f[a+(c<<2)>>2]|0;a:do if((f[a+40>>2]|0)-(f[a+36>>2]|0)>>2>>>0<=1){b=f[a+28>>2]|0;a=f[a+24>>2]|0;while(1){if((a|0)==(b|0))break a;if(zab(f[a>>2]|0)|0?(i=nRa(f[f[a+8>>2]>>2]|0)|0,j=SX(f[i+12>>2]|0)|0,j|0):0)h_(h,f[i+8>>2]|0,f[j+8>>2]|0);a=a+16|0}}while(0);c=c+1|0}d=d+4|0}return}function OA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;e=h;g=b+4|0;if((f[g>>2]|0)==5)EM(a);b=bP(f[a+36>>2]|0,2,b)|0;f[e>>2]=b;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else LL(a,e);b=a+60|0;c=f[b>>2]|0;if((f[a+56>>2]|0)==(c|0))Ca(111005,111025,378,111126);f[b>>2]=c+-4;if((f[g>>2]|0)==5)EM(a);u=h;return}function PA(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+32|0;i=j;e=f[33196]|0;g=((f[33197]|0)-e|0)/40|0;h=g+1|0;if(h>>>0>107374182)dea();k=((f[33198]|0)-e|0)/40|0;e=k<<1;bN(i,k>>>0<53687091?(e>>>0>>0?h:e):107374182,g);e=i+8|0;g=f[e>>2]|0;x=0;wa(157,g|0,a|0,(b[c>>0]|0)!=0|0,f[d>>2]|0);d=x;x=0;if(d&1){k=Ia()|0;dda(i);Ua(k|0)}else{f[e>>2]=g+40;NQ(i);dda(i);u=j;return}}function QA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;i=b+12|0;e=b+16|0;c=f[e>>2]|0;a:do if(Jbb(c)|0){g=a+36|0;d=0;while(1){if(d>>>0>=(c+-1|0)>>>0)break;c=ODa(i,d)|0;c=f[c>>2]|0;if(v2a(f[c+4>>2]|0)|0){_0a(h,Jbb(f[g>>2]|0)|0);k=lNa(f[h>>2]|0,c)|0;c=ODa(i,d)|0;f[c>>2]=k}d=d+1|0;c=f[e>>2]|0}if($r(a,RCa(i)|0)|0){HTa(a);switch(f[b+4>>2]|0){case 5:case 0:break a;default:{}}Ca(61415,61463,298,99914)}}while(0);u=j;return}function RA(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;d=j+4|0;g=j+8|0;h=j;f[d>>2]=b;b=Wz(c+68|0,d)|0;if(b|0?(i=b+12|0,e=a+148|0,OPa(i,f[e>>2]|0,f[a+152>>2]|0,f[a+156>>2]|0)|0):0){b=f[a+68>>2]|0;b=(f[b+4>>2]|0)-(f[b>>2]|0)|0;f[g>>2]=b;f[h>>2]=i;c=a+136|0;d=f[c>>2]|0;if(d>>>0<(f[a+140>>2]|0)>>>0){f[d>>2]=b;f[d+4>>2]=i;f[c>>2]=d+8}else AF(a+132|0,g,h);f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2]}u=j;return}function SA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111005,111025,467,111044);f[c>>2]=d+-4;e=b+4|0;if((f[e>>2]|0)==5)EM(a);c=bP(f[a+36>>2]|0,7,b)|0;f[g>>2]=c;d=a+4|0;b=f[d>>2]|0;if(b>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c;f[d>>2]=(f[d>>2]|0)+4}else LL(a,g);if((f[e>>2]|0)==5)EM(a);u=h;return}function TA(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;b=g;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/24|0;e=d+1|0;if(e>>>0>178956970)dea();else{h=((f[a+8>>2]|0)-c|0)/24|0;c=h<<1;C_(b,h>>>0<89478485?(c>>>0>>0?e:c):178956970,d,a+12|0);e=b+8|0;d=f[e>>2]|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;S5(d);f[e>>2]=d+24;fM(a,b);AY(b);u=g;return}}function UA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+8|0;g=j;do if((f[b+4>>2]|0)!=5){c=b+12|0;if(!(s$a(f[b+16>>2]|0)|0)?(e=RCa(c)|0,v2a(f[(f[e>>2]|0)+4>>2]|0)|0):0)break;Q$a(h,c);LUa(g,c);e=h+4|0;d=f[g>>2]|0;c=f[g+4>>2]|0;while(1){if(!(qTa(f[h>>2]|0,f[e>>2]|0,d,c)|0))break;g=QOa(h)|0;if((f[(f[g>>2]|0)+4>>2]|0)==5){i=7;break}YYa(h)}if((i|0)==7)qxa(a,b,5)}while(0);u=j;return}function VA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=e+4|0;g=cA(a,b,c,f[f[e>>2]>>2]|0,f[k>>2]|0)|0;h=f[d>>2]|0;i=f[c>>2]|0;k=f[k>>2]|0;j=f[f[e>>2]>>2]|0;if(Y4(j,k,h,i)|0){f[c>>2]=h;f[d>>2]=i;h=g+1|0;e=f[c>>2]|0;d=f[b>>2]|0;if(Y4(j,k,e,d)|0){f[b>>2]=e;f[c>>2]=d;e=f[b>>2]|0;d=f[a>>2]|0;if(Y4(j,k,e,d)|0){f[a>>2]=e;f[b>>2]=d;g=g+3|0}else g=g+2|0}else g=h}return g|0}function WA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;h=a+68|0;e=f[h>>2]|0;g=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n4a(i,-5-b+g|0);i=uz(e,b,f[i>>2]|0)|0;a:do if((i|0)!=5){if(i>>>0>=5)Ca(87201,87231,110,87258);c=f[h>>2]|0;k=f[c>>2]|0;d=k+b|0;e=d+5|0;b=k+g-e|0;if(b){kia(d+i|0,e|0,b|0)|0;c=f[h>>2]|0}e=5-i|0;lia(c,(f[c+4>>2]|0)-e-(f[c>>2]|0)|0);if(f[a+76>>2]|0){d=f[a+132>>2]|0;b=(f[a+136>>2]|0)-d>>3;c=f[a+144>>2]|0;while(1){if(c>>>0>=b>>>0)break a;k=d+(c<<3)|0;f[k>>2]=(f[k>>2]|0)-e;c=c+1|0}}}while(0);u=j;return}function XA(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+52>>2]|0;c=f[b+48>>2]|0;while(1){if((c|0)==(d|0))break;Gha(a,f[c>>2]|0);c=c+4|0}d=f[b+40>>2]|0;c=f[b+36>>2]|0;while(1){if((c|0)==(d|0))break;i0(a,f[c>>2]|0);c=c+4|0}w7(a,f[b+76>>2]|0,f[b+80>>2]|0);w7(a,f[b+100>>2]|0,f[b+104>>2]|0);return}function YA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}x=0;c=ga(254,f[b+4>>2]|0)|0;d=x;x=0;do if(!(d&1)?(x=0,ua(82,a|0,c|0),d=x,x=0,!(d&1)):0){d=f[b+12>>2]|0;c=f[b+8>>2]|0;while(1){if((c|0)==(d|0)){b=8;break}x=0;b=ga(254,f[c>>2]|0)|0;e=x;x=0;if(e&1){b=13;break}x=0;ua(82,a|0,b|0);e=x;x=0;if(e&1){b=13;break}c=c+4|0}if((b|0)==8)return;else if((b|0)==13){c=Ia()|0;break}}else b=9;while(0);if((b|0)==9)c=Ia()|0;MTa(a);Ua(c|0)}function ZA(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=DCa(134176,110824)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);j=Gr(a,nq(a)|0)|0;f[c+8>>2]=j;j=dk(a)|0;f[c+12>>2]=j;oWa(c);u=i;return}function _A(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110617)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);c=f[c+8>>2]|0;if(c|0)oGa(a,c);Gv(f[a+28>>2]|0,15)|0;u=i;return}function $A(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=f[a>>2]|0;e=a+4|0;g=b+4|0;c=f[e>>2]|0;while(1){if((c|0)==(d|0))break;l=f[g>>2]|0;i=l+-16|0;h=c+-16|0;f[i>>2]=0;j=l+-12|0;f[j>>2]=0;k=l+-8|0;f[k>>2]=0;f[l+-4>>2]=f[c+-4>>2];f[i>>2]=f[h>>2];i=c+-12|0;f[j>>2]=f[i>>2];j=c+-8|0;f[k>>2]=f[j>>2];f[j>>2]=0;f[i>>2]=0;f[h>>2]=0;f[g>>2]=(f[g>>2]|0)+-16;c=h}j=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=j;j=b+8|0;l=f[e>>2]|0;f[e>>2]=f[j>>2];f[j>>2]=l;j=a+8|0;l=b+12|0;k=f[j>>2]|0;f[j>>2]=f[l>>2];f[l>>2]=k;f[b>>2]=f[g>>2];return}function aB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Uc(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0<=d>>>0){if(b>>>0>>0){c=~~+W(+(+((f[a+12>>2]|0)>>>0)/+n[a+16>>2]))>>>0;if(d>>>0>2&(d+-1&d|0)==0){e=1<<32-(_(c+-1|0)|0);c=c>>>0<2?c:e}else c=Uc(c)|0;b=b>>>0>>0?c:b;if(b>>>0>>0)lo(a,b)}}else lo(a,b);return}function bB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LD(c,h,d)|0;d=f[g>>2]|0;if(!d){DZ(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function cB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LD(c,h,d)|0;d=f[g>>2]|0;if(!d){A$(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function dB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=W7a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((e|0)==(b|0)){if(CXa(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function eB(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;if((1073741807-c|0)>>>0>>0)Rda();j=a+8|0;if((b[j+3>>0]|0)<0)i=f[a>>2]|0;else i=a;if(c>>>0<536870887){d=d+c|0;h=c<<1;d=d>>>0>>0?h:d;d=d>>>0<2?2:d+4&-4;if(d>>>0>1073741823){d=Ea(8)|0;x=0;ua(98,d|0,121961);j=x;x=0;if(j&1){j=Ia()|0;La(d|0);Ua(j|0)}else{f[d>>2]=50472;Pa(d|0,39488,418)}}}else d=1073741807;h=s8(d<<2)|0;if(g|0)yWa(h,i,g);e=e-g|0;if(e|0)yWa(h+(g<<2)|0,i+(g<<2)|0,e);if((c|0)!=1)Cbb(i);f[a>>2]=h;f[j>>2]=d|-2147483648;return}function fB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+32|0;h=i;d=f[33196]|0;e=((f[33197]|0)-d|0)/40|0;g=e+1|0;if(g>>>0>107374182)dea();j=((f[33198]|0)-d|0)/40|0;d=j<<1;bN(h,j>>>0<53687091?(d>>>0>>0?g:d):107374182,e);d=h+8|0;e=f[d>>2]|0;x=0;wa(157,e|0,116663,(b[a>>0]|0)!=0|0,f[c>>2]|0);c=x;x=0;if(c&1){j=Ia()|0;dda(h);Ua(j|0)}else{f[d>>2]=e+40;NQ(h);dda(h);u=i;return}}function gB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=f[a>>2]|0;if((((f[b+4>>2]|0)==5?(f[c+4>>2]|0)!=5:0)?(g=u$a(b)|0,(g|0)!=0):0)?VQa(g)|0:0){b=f[i+20>>2]|0;Jbb(b)|0;_0a(h,b);b=f[(f[f[a+4>>2]>>2]|0)+8>>2]|0;e=g+16|0;f[e>>2]=b;if(d){d=rBa(f[h>>2]|0,20,b)|0;f[e>>2]=d}Cqa(g);b=f[a+8>>2]|0;f[(f[b>>2]|0)+12>>2]=c;b=Ipa(h,g,f[b>>2]|0)|0;GVa(f[i>>2]|0,b)|0;b=1}else b=0;u=j;return b|0}function hB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[a>>2]|0;a:do if((c|0)==(f[b>>2]|0)){switch(c|0){case 4:case 0:{c=(a|0)==(b|0);break a}case 1:{if(!(KZ(f[a+4>>2]|0,f[b+4>>2]|0)|0)){c=0;break a}break}case 3:{if((f[a+4>>2]|0)!=(f[b+4>>2]|0)){c=0;break a}break}default:{}}g=a+12|0;d=a+16|0;c=f[d>>2]|0;a=f[g>>2]|0;e=b+12|0;if((c-a|0)==((f[b+16>>2]|0)-(f[e>>2]|0)|0)){b=0;while(1){if(b>>>0>=c-a>>2>>>0){c=1;break a}if(sYa(f[a+(b<<2)>>2]|0,f[(f[e>>2]|0)+(b<<2)>>2]|0)|0){c=0;break a}b=b+1|0;a=f[g>>2]|0;c=f[d>>2]|0}}else c=0}else c=0;while(0);return c|0}function iB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+96|0;d=h;e=b+12|0;c=f[e>>2]|0;g=f[c+4>>2]|0;c=QRa(c)|0;do if(o4a(g)|0?(H8(d,0,g),yda(c+8|0,d)|0):0){c=f[b+8>>2]|0;if(((c|0)!=(dn(g,9)|0)?(c|0)!=(dn(g,10)|0):0)?(c|0)!=(dn(g,11)|0):0){c=0;break}g=fZa(f[a+40>>2]|0)|0;gA(d,g,f[b+16>>2]|0);g=qza(d)|0;_7(d);if(!g)c=f[e>>2]|0;else c=0}else c=0;while(0);u=h;return c|0}function jB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;g=f[a+136>>2]|0;h=a+76|0;d=0;e=0;a=f[a+132>>2]|0;b=1;c=0;while(1){if((a|0)==(g|0))break;if(d|0)DCa(f[h>>2]|0,123342)|0;l=f[a>>2]|0;k=f[a+4>>2]|0;DV(f[h>>2]|0,l-d|0);DV(f[h>>2]|0,(f[k>>2]|0)-e|0);j=k+4|0;DV(f[h>>2]|0,(f[j>>2]|0)-b|0);i=k+8|0;DV(f[h>>2]|0,(f[i>>2]|0)-c|0);d=l;e=f[k>>2]|0;a=a+8|0;b=f[j>>2]|0;c=f[i>>2]|0}DCa(f[h>>2]|0,87322)|0;return}function kB(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=u;u=u+32|0;b=g;c=f[32988]|0;d=(f[32989]|0)-c>>2;e=d+1|0;if(e>>>0>1073741823)dea();else{h=(f[32990]|0)-c|0;c=h>>1;BL(b,h>>2>>>0<536870911?(c>>>0>>0?e:c):1073741823,d);e=b+8|0;d=f[e>>2]|0;c=f[a>>2]|0;f[a>>2]=0;f[d>>2]=c;f[e>>2]=d+4;jM(b);lZ(b);u=g;return}}function lB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;iO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;MK(a,c);JV(c);u=h;return}}function mB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)dea();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;TM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;J4(e,b);f[g>>2]=e+12;gK(a,c);o$(c);u=h;return}}function nB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)dea();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;TM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;J4(e,b);f[g>>2]=e+12;gK(a,c);p$(c);u=h;return}}function oB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)dea();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;TM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;J4(e,b);f[g>>2]=e+12;gK(a,c);q$(c);u=h;return}}function pB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)dea();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;TM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;J4(e,b);f[g>>2]=e+12;gK(a,c);r$(c);u=h;return}}function qB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=((f[a+4>>2]|0)-d|0)/12|0;g=e+1|0;if(g>>>0>357913941)dea();else{i=((f[a+8>>2]|0)-d|0)/12|0;d=i<<1;TM(c,i>>>0<178956970?(d>>>0>>0?g:d):357913941,e,a+8|0);g=c+8|0;e=f[g>>2]|0;J4(e,b);f[g>>2]=e+12;gK(a,c);s$(c);u=h;return}}function rB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;i=k;j=k+4|0;f[i>>2]=a;e=Jbb(f[a+40>>2]|0)|0;while(1){h=a+24|0;g=e;if((T6a(h)|0)==(g|0))break;e=f[e+8>>2]|0;f[j>>2]=e;if(DQa(d,e)|0){l=GE(e,i)|0;l=f[l>>2]|0;f[l>>2]=c;f[l+4>>2]=b;g=f[g+4>>2]|0;wZ(h,e);fL(a+72|0,j);wZ(e,a);e=GE(e+48|0,i)|0;f[e>>2]=l;e=g}else e=f[g+4>>2]|0}u=k;return}function sB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=W7a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((e|0)==(b|0)){if(g2a(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function tB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LD(c,h,d)|0;d=f[g>>2]|0;if(!d){P0(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function uB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;c=g+12|0;h=g;d=WG(lF(a)|0)|0;e=I;if(!(e>>>0>0|(e|0)==0&d>>>0>4294967295)){hLa(c,d,e);u=g;return f[c>>2]|0}e=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;g=j7a(b)|0;x=0;va(87,h|0,b|0,g|0);b=x;x=0;if(!(b&1)){x=0;wa(138,e|0,h|0,f[a+28>>2]|0,f[a+32>>2]|0);b=x;x=0;if(b&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(h);if(d)i=7}else{c=Ia()|0;i=7}if((i|0)==7)La(e|0);Ua(c|0);return 0}function vB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110569)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);FS(a,c);u=i;return}function wB(a,c){a=a|0;c=c|0;var d=0;Ema(f[a>>2]|0,40)|0;yPa(f[a>>2]|0,80942)|0;Ema(x4(f[c>>2]|0,f[a>>2]|0)|0,32)|0;d=f[a>>2]|0;if(!(b[c+12>>0]|0))Ema(DCa(d,Fha(f[c+4>>2]|0)|0)|0,32)|0;else{d=DCa(d,80950)|0;DCa(DCa(d,Fha(f[c+4>>2]|0)|0)|0,123560)|0}ir(a,f[c+8>>2]|0);Ema(f[a>>2]|0,41)|0;return}function xB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110633)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);oGa(a,f[c+8>>2]|0);Gv(f[a+28>>2]|0,26)|0;u=i;return}function yB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=SE(c,h,d)|0;d=f[g>>2]|0;if(!d){P1(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function zB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;c=h;d=f[a>>2]|0;e=(f[a+4>>2]|0)-d>>2;g=e+1|0;if(g>>>0>1073741823)dea();else{i=(f[a+8>>2]|0)-d|0;d=i>>1;iO(c,i>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823,e,a+8|0);g=c+8|0;e=f[g>>2]|0;d=f[b>>2]|0;f[b>>2]=0;f[e>>2]=d;f[g>>2]=e+4;MK(a,c);zW(c);u=h;return}}function AB(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;if((-18-c|0)>>>0>>0)Rda();if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=W1a(k)|0;if(g|0)eUa(l,m,g)|0;if(i|0)eUa(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)eUa(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Cbb(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;Z0a(l+i|0,0);return}function BB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;e=W7a(b)|0;g=f[a+4>>2]|0;a:do if(g){h=g+-1|0;i=(h&g|0)==0;if(!i)if(e>>>0>>0)d=e;else d=(e>>>0)%(g>>>0)|0;else d=h&e;a=f[(f[a>>2]|0)+(d<<2)>>2]|0;if(a){c=f[b>>2]|0;while(1){a=f[a>>2]|0;if(!a){a=0;break a}b=f[a+4>>2]|0;if((b|0)==(e|0)){if(g2a(f[a+8>>2]|0,c)|0)break a}else{if(!i){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&h;if((b|0)!=(d|0)){a=0;break a}}}}else a=0}else a=0;while(0);return a|0}function CB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/12|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/12|0;d=c+b|0;if(d>>>0>357913941)dea();else{e=(h-e|0)/12|0;h=e<<1;TM(g,e>>>0<178956970?(h>>>0>>0?d:h):357913941,c,a+8|0);Jya(g,b);vD(a,g);_aa(g);break}}else ZAa(a,b);while(0);u=i;return}function DB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=u;u=u+32|0;g=i;h=f[a+8>>2]|0;c=f[a+4>>2]|0;do if(((h-c|0)/20|0)>>>0>>0){e=f[a>>2]|0;c=(c-e|0)/20|0;d=c+b|0;if(d>>>0>214748364)dea();else{e=(h-e|0)/20|0;h=e<<1;MM(g,e>>>0<107374182?(h>>>0>>0?d:h):214748364,c,a+8|0);x2(g,b);AN(a,g);Dfa(g);break}}else s3(a,b);while(0);u=i;return}function EB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=BF(c,h,d)|0;d=f[g>>2]|0;if(!d){DZ(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function FB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=wga(a,Lk(a,f[b+8>>2]|0)|0,b)|0;if(!(Aab(f[e>>2]|0)|0)){c=wga(a,Lk(a,f[b+12>>2]|0)|0,b)|0;if(!(Aab(f[c>>2]|0)|0)){d=Uma(a,Lk(a,f[b+16>>2]|0)|0,b)|0;if(Aab(f[d>>2]|0)|0)c=d;else{b=iIa(b,b)|0;a=RK(a,b)|0;n6(a,d);n6(a,e);n6(a,c);c=b}}}else c=e;return c|0}function GB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;if((c+1|0)==(d|0)){e=b+12|0;g=ODa(e,c)|0;g=f[g>>2]|0}else{h=eSa(f[a>>2]|0)|0;i=h+12|0;e=b+12|0;g=c;while(1){if(g>>>0>=d>>>0)break;j=ODa(e,g)|0;faa(i,f[j>>2]|0);g=g+1|0}tt(h);g=h}a:do if((Jbb(f[b+16>>2]|0)|0)==(d|0))i7(e,c);else while(1){if(c>>>0>=d>>>0)break a;i=DWa(f[a>>2]|0)|0;j=ODa(e,c)|0;f[j>>2]=i;c=c+1|0}while(0);tt(b);return g|0}function HB(a,c){a=a|0;c=c|0;var d=0;Nta(a,(f[(f[a+44>>2]|0)+4>>2]&1|0)!=0,c);d=f[a+36>>2]|0;Jbb(d)|0;_sa(a,(b[d+114>>0]|0)==0,c);Gba(a,f[c+4>>2]|0,1,c,83611);Gba(a,f[(f[c+12>>2]|0)+4>>2]|0,1,c,83641);d=c+16|0;Vka(a,f[(f[d>>2]|0)+4>>2]|0,c,83677);Gba(a,f[(f[d>>2]|0)+4>>2]|0,f[c+24>>2]|0,c,83714);Gba(a,f[(f[c+20>>2]|0)+4>>2]|0,2,c,83758);return}function IB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j;i=s8(104)|0;f[a>>2]=i;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;g=i+8|0;k=f[e>>2]|0;e=f[e+4>>2]|0;f[g>>2]=f[f[d>>2]>>2];x=0;va(101,i+12|0,k|0,f[e>>2]|0);e=x;x=0;if(e&1){k=Ia()|0;f[a>>2]=0;Cbb(i);Ua(k|0)}else{b[c>>0]=1;f[h>>2]=f[g>>2];k=JH(h,4)|0;f[i+4>>2]=k;f[i>>2]=0;u=j;return}}function JB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;Bab(g);h=f[a+16>>2]|0;e=f[b>>2]|0;b=f[c>>2]|0;c=f[a+12>>2]|0;while(1){if((c|0)==(h|0))break;d=f[c>>2]|0;if(g2a(f[d+4>>2]|0,e)|0?g2a(f[d+8>>2]|0,b)|0:0){i=5;break}c=c+4|0}if((i|0)==5)f[g>>2]=f[d>>2];e=f[g>>2]|0;a:do if(Oab(e)|0)b=0;else{g=f[a+52>>2]|0;c=f[a+48>>2]|0;while(1){if((c|0)==(g|0)){b=0;break a}b=f[c>>2]|0;d=C_a(f[b+8>>2]|0)|0;if(d|0?g2a(f[d+8>>2]|0,e)|0:0)break a;c=c+4|0}}while(0);u=j;return b|0}function KB(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j+12|0;i=j;g=LD(c,h,d)|0;d=f[g>>2]|0;if(!d){P1(i,c,e);d=f[i>>2]|0;PZ(c,f[h>>2]|0,g,d);g=1}else g=0;f[a>>2]=d;b[a+4>>0]=g;u=j;return}function LB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e){d=K1a(a)|0;while(1){a=e+16|0;if(D5(c,a)|0){a=f[e>>2]|0;if(!a){a=5;break}else{d=e;e=a}}else{if(!(D5(a,c)|0)){a=9;break}d=e+4|0;a=f[d>>2]|0;if(!a){a=8;break}else e=a}}if((a|0)==5){f[b>>2]=e;d=e;break}else if((a|0)==8){f[b>>2]=e;break}else if((a|0)==9){f[b>>2]=e;break}}else f[b>>2]=d;while(0);return d|0}function MB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;g=h;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111005,111025,431,111069);f[c>>2]=d+-4;e=bP(f[a+36>>2]|0,5,b)|0;f[g>>2]=e;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=e;f[c>>2]=(f[c>>2]|0)+4}else LL(a,g);do if((f[b+4>>2]|0)==5)if(!(f[b+16>>2]|0))Ca(111080,111025,443,111069);else{EM(a);break}while(0);u=h;return}function NB(a){a=a|0;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;d=c;b=a<<24>>24;if((a+-48&255)>=10)if((a+-97&255)>=6)if((a+-65&255)<6)a=-55;else{c=Ea(20)|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;b=j7a(99328)|0;x=0;va(87,d|0,99328,b|0);b=x;x=0;if(!(b&1)){x=0;ua(261,c|0,d|0);b=x;x=0;if(b&1)b=1;else{x=0;va(98,c|0,32200,457);x=0;b=0}a=Ia()|0;MTa(d);if(b)e=9}else{a=Ia()|0;e=9}if((e|0)==9)La(c|0);Ua(a|0)}else a=-87;else a=-48;u=c;return a+b|0}function OB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=f[b>>2]|0;e=(f[b+4>>2]|0)-g>>2;i=0;while(1){if(i>>>0>=e>>>0)break;d=f[g+(i<<2)>>2]|0;if(X7a(f[d+4>>2]|0)|0){h=4;break}i=i+1|0}if((h|0)==4){if(i){d=f[a+36>>2]|0;Jbb(d)|0;d=eSa(d+144|0)|0;g=d+12|0;e=0;while(1){h=f[b>>2]|0;if((e|0)==(i|0))break;faa(g,$ba(a,f[h+(e<<2)>>2]|0)|0);e=e+1|0}faa(g,f[h+(i<<2)>>2]|0);aKa(d,c)}Yba(a,d)|0}return}function PB(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;l=o;m=s8(20)|0;xPa(m);n=a+11|0;if((b[n>>0]|0)<0){j=a;k=a;c=f[a>>2]|0}else{j=a;k=a;c=a}e=Toa(b[c>>0]|0)|0;f[m+4>>2]=e;e=a+4|0;g=m+8|0;h=m+12|0;i=m+16|0;d=1;while(1){a=b[n>>0]|0;c=a<<24>>24<0;if(c)a=f[e>>2]|0;else a=a&255;if(d>>>0>=a>>>0)break;if(c)a=f[k>>2]|0;else a=j;a=Toa(b[a+d>>0]|0)|0;f[l>>2]=a;c=f[h>>2]|0;if(c>>>0<(f[i>>2]|0)>>>0){f[c>>2]=a;f[h>>2]=c+4}else LL(g,l);d=d+1|0}u=o;return m|0}function QB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=n0a(a,0)|0;if(!(KBa(f[d>>2]|0,133104)|0))Ca(66344,75335,1593,66406);d=n0a(b,0)|0;if(!(KBa(f[d>>2]|0,133172)|0))Ca(66425,75335,1594,66406);a:do if(c){d=n0a(a,2)|0;Sqa(Jbb(M0(Jbb(M0(Jbb(f[d>>2]|0)|0)|0)|0)|0)|0,b)|0}else{c=0;while(1){d=n0a(b,1)|0;if(c>>>0>=(hIa(Jbb(f[d>>2]|0)|0)|0)>>>0)break a;e=n0a(a,2)|0;e=Jbb(M0(Jbb(M0(Jbb(f[e>>2]|0)|0)|0)|0)|0)|0;d=n0a(b,1)|0;d=n0a(f[d>>2]|0,c)|0;Sqa(e,f[d>>2]|0)|0;c=c+1|0}}while(0);return}function RB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+12>>0]|0){h=DCa(134176,110617)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);Dx(a,117213);if(f[(f[a+124>>2]|0)+4>>2]|0){j=dk(a)|0;f[c+8>>2]=j}u=i;return}function SB(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=d+16|0;g=f[e>>2]|0;if(!g)if(!(i8(d)|0)){g=f[e>>2]|0;h=5}else e=0;else h=5;a:do if((h|0)==5){j=d+20|0;i=f[j>>2]|0;e=i;if((g-i|0)>>>0>>0){e=ec[f[d+36>>2]&127](d,a,c)|0;break}b:do if((b[d+75>>0]|0)<0|(c|0)==0){h=0;g=a}else{i=c;while(1){g=i+-1|0;if((b[a+g>>0]|0)==10)break;if(!g){h=0;g=a;break b}else i=g}e=ec[f[d+36>>2]&127](d,a,i)|0;if(e>>>0>>0)break a;h=i;g=a+i|0;c=c-i|0;e=f[j>>2]|0}while(0);Ku(e|0,g|0,c|0)|0;f[j>>2]=(f[j>>2]|0)+c;e=h+c|0}while(0);return e|0}function TB(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+52>>2]|0;d=a+-16+16|0;a=f[b+48>>2]|0;while(1){if((a|0)==(c|0))break;Wma(d,f[a>>2]|0);a=a+4|0}c=f[b+40>>2]|0;a=f[b+36>>2]|0;while(1){if((a|0)==(c|0))break;w1(d,f[a>>2]|0);a=a+4|0}gaa(d,f[b+76>>2]|0,f[b+80>>2]|0);gaa(d,f[b+100>>2]|0,f[b+104>>2]|0);return}function UB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+16|0;g=h;f[g>>2]=c;f[g+4>>2]=d;while(1){if((a|0)==(b|0))break;if(oI(g,a)|0){e=5;break}a=a+4|0}a:do if((e|0)==5){d=a;while(1){do{a=a+4|0;if((a|0)==(b|0)){b=d;break a}}while(oI(g,a)|0);e=f[a>>2]|0;f[a>>2]=0;c=f[d>>2]|0;f[d>>2]=e;if(c|0){OX(c);Cbb(c)}d=d+4|0}}while(0);u=h;return b|0}function VB(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=u;u=u+16|0;g=i;do if(b[a+33>>0]|0){h=DCa(134176,110590)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;j=x;x=0;if(!(j&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,j=x,x=0,!(j&1)):0){OCa(g);Wq(h,e)|0;fu(h)|0;break}j=Ia()|0;OCa(g);Ua(j|0)}while(0);FS(a,c);u=i;return}function WB(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;c=f[a>>2]|0;d=((f[a+4>>2]|0)-c|0)/12|0;e=d+1|0;if(e>>>0>357913941)dea();i=((f[a+8>>2]|0)-c|0)/12|0;c=i<<1;TM(g,i>>>0<178956970?(c>>>0>>0?e:c):357913941,d,a+8|0);c=g+8|0;d=f[c>>2]|0;x=0;ua(679,d|0,b|0);b=x;x=0;if(b&1){i=Ia()|0;_aa(g);Ua(i|0)}else{f[c>>2]=d+12;vD(a,g);_aa(g);u=h;return}}function XB(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;j=u;u=u+16|0;i=j;k=nq(a)|0;wHa(c,nq(a)|0,0)|0;h=(k&1|0)==0;c=k>>>1&1;do if((k&3|0)==2){f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,95643,j7a(95643)|0);x=0;ua(1870,a|0,i|0);k=x;x=0;if(k&1){k=Ia()|0;MTa(i);Ua(k|0)}else{MTa(i);break}}while(0);b[e>>0]=c;if(h)f[d>>2]=g;else wHa(d,nq(a)|0,0)|0;u=j;return}function YB(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=a+44|0;a=f[h>>2]|0;c=QPa(c)|0;c=SKa(f[a>>2]|0,c,1)|0;i=f[h>>2]|0;e=QPa(e)|0;e=SKa(f[i>>2]|0,e,1)|0;e=Kpa(f[a>>2]|0,16,c,e)|0;c=f[h>>2]|0;d=QPa(d)|0;d=SKa(f[c>>2]|0,d,1)|0;h=f[h>>2]|0;g=QPa(g)|0;g=SKa(f[h>>2]|0,g,1)|0;g=Kpa(f[c>>2]|0,16,d,g)|0;return J$(a,b,Kpa(f[a>>2]|0,8,e,g)|0)|0} +function Dc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=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;G=u;u=u+208|0;E=G+196|0;J=G+168|0;h=G+184|0;i=G+172|0;D=G+132|0;m=G+120|0;l=G+156|0;n=G+144|0;q=G+108|0;r=G+104|0;y=G+92|0;s=G+88|0;t=G+76|0;B=G+64|0;C=G+52|0;v=G+40|0;z=G+28|0;w=G+16|0;F=G+12|0;H=G;pOa(J);x=0;d=ga(294,c|0)|0;A=x;x=0;a:do if(A&1)I=10;else{do if((d|0)==4){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}if(C7a(b[d>>0]|0)|0){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if(g2a(d,f[33111]|0)|0){f[(f[J>>2]|0)+12>>2]=0;i=1;break}x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if(g2a(d,f[33108]|0)|0){f[(f[J>>2]|0)+12>>2]=2;d=f[a>>2]|0;e=d+112|0;if(!(b[e>>0]|0)){b[e>>0]=1;b[d+113>>0]=1;i=1;break}g=Ea(20)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;c=j7a(94515)|0;x=0;va(87,h|0,94515,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,h|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(h);if(!e)break a}else d=Ia()|0;La(g|0);break a}x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if(!(g2a(d,f[33103]|0)|0)){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ia(69,d|0,0)|0;A=x;x=0;if(A&1){I=10;break a}x=0;d=ga(295,d|0)|0;A=x;x=0;if(A&1){I=10;break a}if(!(g2a(d,f[32999]|0)|0)){i=0;break}f[(f[J>>2]|0)+12>>2]=3;i=1;break}f[(f[J>>2]|0)+12>>2]=1;d=f[a>>2]|0;e=d+60|0;if(!(b[e>>0]|0)){b[e>>0]=1;b[d+61>>0]=1;i=1;break}g=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;c=j7a(93669)|0;x=0;va(87,i|0,93669,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,i|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(i);if(!e)break a}else d=Ia()|0;La(g|0);break a}else i=0}else i=0;while(0);x=0;d=ga(294,c|0)|0;A=x;x=0;b:do if(!(A&1)){do if(d>>>0>3){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1)break b;if(V7a(b[d>>0]|0)|0){x=0;d=ia(69,c|0,1)|0;A=x;x=0;if(!(A&1)?(x=0,g=ga(295,d|0)|0,A=x,x=0,!(A&1)):0){L1a(E,g);f[f[J>>2]>>2]=f[E>>2];e=2;h=1;break}d=Ia()|0;break a}else I=49}else I=49;while(0);do if((I|0)==49)if(i){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1)break b;x=0;d=ga(294,d|0)|0;A=x;x=0;if(A&1)break b;if(d>>>0>1){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if(A&1)break b;x=0;d=ia(69,d|0,1)|0;A=x;x=0;if(A&1)break b;if(qRa(d)|0){x=0;d=ia(69,c|0,3)|0;A=x;x=0;if((!(A&1)?(x=0,j=ia(69,d|0,1)|0,A=x,x=0,!(A&1)):0)?(x=0,k=ga(295,j|0)|0,A=x,x=0,!(A&1)):0){L1a(E,k);f[f[J>>2]>>2]=f[E>>2];e=1;h=2;break}d=Ia()|0;break a}else{e=1;h=1}}else{e=1;h=1}}else{e=1;h=1}while(0);A=f[J>>2]|0;c:do if(!(Qab(f[A>>2]|0)|0))switch(f[A+12>>2]|0){case 0:{k=a+44|0;l=f[k>>2]|0;f[k>>2]=l+1;x=0;ua(1283,m|0,l|0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94536)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;MTa(D);break}f[A>>2]=f[E>>2];MTa(D);MTa(m);d=a+12|0;g=f[d>>2]|0;if((g|0)==(f[a+16>>2]|0)){x=0;ua(1503,a+8|0,A|0);m=x;x=0;if(m&1)break b;else break c}else{f[g>>2]=f[A>>2];f[d>>2]=(f[d>>2]|0)+4;break c}}else d=Ia()|0;while(0);MTa(m)}break a}case 3:{k=a+48|0;l=f[k>>2]|0;f[k>>2]=l+1;x=0;ua(1283,m|0,l|0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94553)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;MTa(D);break}f[A>>2]=f[E>>2];MTa(D);MTa(m);d=a+36|0;g=f[d>>2]|0;if((g|0)==(f[a+40>>2]|0)){x=0;ua(1503,a+32|0,A|0);m=x;x=0;if(m&1)break b;else break c}else{f[g>>2]=f[A>>2];f[d>>2]=(f[d>>2]|0)+4;break c}}else d=Ia()|0;while(0);MTa(m)}break a}case 2:{x=0;ua(1283,m|0,0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94567)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;MTa(D);break}else{f[A>>2]=f[E>>2];MTa(D);MTa(m);break c}}else d=Ia()|0;while(0);MTa(m)}break a}case 1:{x=0;ua(1283,m|0,0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ia(83,m|0,94582)|0;l=x;x=0;do if(!(l&1)){f[D>>2]=f[m>>2];f[D+4>>2]=f[m+4>>2];f[D+8>>2]=f[m+8>>2];d=0;while(1){if((d|0)==3)break;f[m+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,E|0,D|0);l=x;x=0;if(l&1){d=Ia()|0;MTa(D);break}else{f[A>>2]=f[E>>2];MTa(D);MTa(m);break c}}else d=Ia()|0;while(0);MTa(m)}break a}default:{g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;c=j7a(94596)|0;x=0;va(87,l|0,94596,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,l|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(l);if(!e)break a}else d=Ia()|0;La(g|0);break a}}while(0);x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(!(m&1)){if(KRa(d)|0){if(!i)f[A+12>>2]=0}else{x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(m&1)break;x=0;d=ga(295,d|0)|0;m=x;x=0;if(m&1)break;if(!(g2a(d,f[33108]|0)|0)){x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(m&1)break;x=0;d=ga(295,d|0)|0;m=x;x=0;if(m&1)break;if(!(g2a(d,f[33103]|0)|0)){x=0;d=ia(69,c|0,e|0)|0;m=x;x=0;if(m&1)break;x=0;d=ga(295,d|0)|0;m=x;x=0;if(m&1)break;if(g2a(d,f[32999]|0)|0)d=3;else{g=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=j7a(94611)|0;x=0;va(87,n|0,94611,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,n|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(n);if(!e)break a}else d=Ia()|0;La(g|0);break a}}else d=1}else d=2;f[A+12>>2]=d;e=e+1|0}g=e+1|0;x=0;d=ia(69,c|0,e|0)|0;n=x;x=0;if(!(n&1)?(x=0,o=ga(295,d|0)|0,n=x,x=0,!(n&1)):0){L1a(E,o);f[A+4>>2]=f[E>>2];x=0;d=ia(69,c|0,g|0)|0;o=x;x=0;if(o&1)break;if(!(V7a(b[d>>0]|0)|0)){g=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;c=j7a(94630)|0;x=0;va(87,q|0,94630,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,q|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(q);if(!e)break a}else d=Ia()|0;La(g|0);break a}e=e+2|0;x=0;d=ia(69,c|0,g|0)|0;q=x;x=0;if(!(q&1)?(x=0,p=ga(295,d|0)|0,q=x,x=0,!(q&1)):0){L1a(E,p);f[A+8>>2]=f[E>>2];if(i){x=0;d=ia(69,c|0,3)|0;q=x;x=0;if(q&1){d=Ia()|0;break a}else n=d}else n=c;d=i?h:e;d:do switch(f[A+12>>2]|0){case 0:{x=0;ta(491,D|0);z=x;x=0;do if(z&1)d=Ia()|0;else{x=0;e=ga(294,n|0)|0;z=x;x=0;e:do if(z&1)I=171;else{f:do if(e>>>0>d>>>0){x=0;m=ia(69,n|0,d|0)|0;z=x;x=0;if(z&1){d=Ia()|0;break e}x=0;e=ia(69,m|0,0)|0;z=x;x=0;g:do if(!(z&1)){x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1)break;h:do if(g2a(e,f[33110]|0)|0){h=f[D>>2]|0;j=h+8|0;k=h+12|0;l=h+16|0;i=1;while(1){x=0;e=ga(294,m|0)|0;z=x;x=0;if(z&1){I=174;break}if(i>>>0>=e>>>0)break h;x=0;e=ia(69,m|0,i|0)|0;z=x;x=0;if(z&1){I=182;break}x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1){I=182;break}x=0;e=ia(160,e|0,0)|0;z=x;x=0;if(z&1){I=182;break}f[E>>2]=e;g=f[k>>2]|0;if(g>>>0>=(f[l>>2]|0)>>>0){x=0;ua(1872,j|0,E|0);z=x;x=0;if(z&1){I=182;break}}else{f[g>>2]=e;f[k>>2]=g+4}i=i+1|0}if((I|0)==174){d=Ia()|0;break e}else if((I|0)==182){d=Ia()|0;break e}}else{if(g2a(e,f[33109]|0)|0){x=0;e=ia(69,m|0,1)|0;z=x;x=0;if(z&1)break g;x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1)break g;x=0;e=ia(160,e|0,0)|0;z=x;x=0;if(z&1)break g;h=f[D>>2]|0;f[h+4>>2]=e;break}if(!(g2a(e,f[33100]|0)|0)){g=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;c=j7a(94678)|0;x=0;va(87,t|0,94678,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,t|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(t);if(!e)break e}else d=Ia()|0;La(g|0);break e}x=0;e=ia(69,m|0,1)|0;z=x;x=0;do if(!(z&1)){x=0;e=ga(295,e|0)|0;z=x;x=0;if(z&1)break;z=f[a>>2]|0;L1a(r,e);f[E>>2]=f[r>>2];if(tma(z,E)|0){z=f[a>>2]|0;L1a(s,e);x=0;f[E>>2]=f[s>>2];e=ia(163,z|0,E|0)|0;z=x;x=0;if(z&1)break;g=f[D>>2]|0;x=0;ia(172,g|0,e|0)|0;z=x;x=0;if(z&1)break;else{h=g;break h}}g=Ea(20)|0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;c=j7a(94649)|0;x=0;va(87,y|0,94649,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,y|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(y);if(!e)break e}else d=Ia()|0;La(g|0);break e}while(0);d=Ia()|0;break e}while(0);x=0;e=ga(294,n|0)|0;z=x;x=0;if(z&1)break;d=d+1|0;if(e>>>0<=d>>>0){g=D;d=h;break f}x=0;e=ia(69,n|0,d|0)|0;z=x;x=0;do if(!(z&1)){x=0;d=ia(69,e|0,0)|0;z=x;x=0;if(z&1)break;x=0;d=ga(295,d|0)|0;z=x;x=0;if(z&1)break;if(!(f2a(d,f[33109]|0)|0)){x=0;d=ia(69,e|0,1)|0;B=x;x=0;if(B&1)break;x=0;d=ga(295,d|0)|0;B=x;x=0;if(B&1)break;x=0;d=ia(160,d|0,0)|0;B=x;x=0;if(B&1)break;f[h+4>>2]=d;g=D;d=h;break f}g=Ea(20)|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;c=j7a(94697)|0;x=0;va(87,B|0,94697,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,B|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(B);if(!e)break e}else d=Ia()|0;La(g|0);break e}while(0);d=Ia()|0;break e}while(0);d=Ia()|0;break e}else{g=D;d=f[D>>2]|0}while(0);x=0;ua(76,C|0,d|0);B=x;x=0;if(B&1){I=171;break}x=0;e=ia(55,C|0,f[a>>2]|0)|0;B=x;x=0;if(B&1){d=Ia()|0;MTa(C);break}f[A+16>>2]=f[e>>2];MTa(C);f[g>>2]=0;if(!d){d=A;e=A}else{T_a(d);Cbb(d);e=f[J>>2]|0;d=e}g=e;I=293;break d}while(0);if((I|0)==171)d=Ia()|0;e=f[D>>2]|0;f[D>>2]=0;if(!e)break;T_a(e);Cbb(e)}while(0);break a}case 3:{x=0;e=ia(69,n|0,d|0)|0;D=x;x=0;if(!(D&1)){if(V7a(b[e>>0]|0)|0){x=0;d=ia(69,n|0,d|0)|0;D=x;x=0;if(D&1)break d;x=0;d=ga(295,d|0)|0;D=x;x=0;if(D&1)break d;x=0;d=ia(160,d|0,0)|0;D=x;x=0;if(D&1)break d;f[A+20>>2]=d;d=A;g=A;I=293;break d}x=0;e=ia(69,n|0,d|0)|0;H=x;x=0;do if(!(H&1)){x=0;d=ia(69,e|0,0)|0;H=x;x=0;if(H&1)break;x=0;d=ga(295,d|0)|0;H=x;x=0;if(H&1)break;if(f2a(d,f[33084]|0)|0){g=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;c=j7a(94713)|0;x=0;va(87,v|0,94713,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,v|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(v);if(!e)break a}else d=Ia()|0;La(g|0);break a}x=0;d=ia(69,e|0,1)|0;H=x;x=0;if(H&1)break;x=0;d=ga(295,d|0)|0;H=x;x=0;if(H&1)break;x=0;d=ia(160,d|0,0)|0;H=x;x=0;if(H&1)break;f[A+20>>2]=d;g=Ea(20)|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;H=j7a(93869)|0;x=0;va(87,z|0,93869,H|0);H=x;x=0;if(!(H&1)){x=0;wa(138,g|0,z|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(z);if(!e)break a}else d=Ia()|0;La(g|0);break a}while(0);d=Ia()|0;break a}break}case 1:{x=0;e=ga(294,n|0)|0;D=x;x=0;if(!(D&1)){i:do if(d>>>0<(e+-1|0)>>>0){e=d+1|0;x=0;d=ia(69,n|0,d|0)|0;D=x;x=0;do if(!(D&1)){x=0;d=ia(173,d|0,94726)|0;D=x;x=0;if(D&1)break;f[(f[a>>2]|0)+68>>2]=d;d=e;break i}while(0);d=Ia()|0;break a}while(0);x=0;e=ga(294,n|0)|0;D=x;x=0;if(D&1)break d;if(d>>>0>=(e+-1|0)>>>0){x=0;ja(40,(f[a>>2]|0)+72|0,-1,0)|0;D=x;x=0;if(D&1)break d;else{d=A;g=A;I=293;break d}}x=0;d=ia(69,n|0,d|0)|0;D=x;x=0;do if(!(D&1)){x=0;d=ia(173,d|0,94752)|0;D=x;x=0;if(D&1)break;f[(f[a>>2]|0)+72>>2]=d;d=A;g=A;I=293;break d}while(0);d=Ia()|0;break a}break}case 2:{x=0;e=ia(69,n|0,d|0)|0;D=x;x=0;if(!(D&1)){if(!(C7a(b[e>>0]|0)|0)){x=0;ja(74,a|0,n|0,d|0)|0;D=x;x=0;if(D&1)break d;else{d=A;g=A;I=293;break d}}x=0;e=ia(69,n|0,d|0)|0;D=x;x=0;j:do if(!(D&1)){x=0;d=ia(69,e|0,0)|0;D=x;x=0;if(D&1)break;do if(V7a(b[d>>0]|0)|0){x=0;d=ia(69,e|0,0)|0;D=x;x=0;if(D&1)break j;x=0;d=ga(295,d|0)|0;D=x;x=0;if(D&1)break j;x=0;va(88,E|0,94138,1);D=x;x=0;if(D&1){d=Ia()|0;break a}if(!(g2a(d,f[E>>2]|0)|0))break;b[(f[a>>2]|0)+114>>0]=1;x=0;ja(74,a|0,e|0,1)|0;D=x;x=0;if(D&1)break j;else{d=A;g=A;I=293;break d}}while(0);g=Ea(20)|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;c=j7a(94777)|0;x=0;va(87,w|0,94777,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,g|0,w|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(w);if(!e)break a}else d=Ia()|0;La(g|0);break a}while(0);d=Ia()|0;break a}break}default:{d=A;g=A;I=293}}while(0);do if((I|0)==293){e=f[a>>2]|0;f[F>>2]=f[d>>2];f[E>>2]=f[F>>2];if(!(fna(e,E)|0)){f[J>>2]=0;x=0;ua(64,e|0,g|0);c=x;x=0;if(c&1)break;f[J>>2]=0;u=G;return}g=Ea(20)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;G=j7a(93731)|0;x=0;va(87,H|0,93731,G|0);G=x;x=0;if(!(G&1)){x=0;wa(138,g|0,H|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(H);if(!e)break a}else d=Ia()|0;La(g|0);break a}while(0);d=Ia()|0;break a}d=Ia()|0;break a}d=Ia()|0;break a}}while(0);d=Ia()|0}while(0);if((I|0)==10)d=Ia()|0;e=f[J>>2]|0;f[J>>2]=0;if(e|0)Cbb(e);Ua(d|0)}function Ec(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;v=u;u=u+112|0;i=v+104|0;j=v+100|0;t=v+96|0;q=v+92|0;r=v+88|0;w=v+76|0;d=v+72|0;y=v+60|0;s=v+48|0;z=v+32|0;k=v+12|0;l=v+56|0;m=v+44|0;n=v+8|0;o=v+4|0;p=v;f[j>>2]=a;f[t>>2]=0;f[q>>2]=t;f[r>>2]=t;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;f[d>>2]=0;DUa(y);C0a(s);f[z>>2]=0;e=z+4|0;f[e>>2]=0;g=z+8|0;f[g>>2]=0;f[k>>2]=w;f[k+4>>2]=y;f[k+8>>2]=d;f[k+12>>2]=z;f[k+16>>2]=s;x=0;ua(640,z|0,j|0);d=x;x=0;a:do if(d&1)b=6;else{b:while(1){a=f[e>>2]|0;if((a|0)==(f[z>>2]|0)){b=252;break}a=a+-4|0;d=f[a>>2]|0;f[j>>2]=d;f[e>>2]=a;a=d;c:do if(d|0){if((s|0)==(a|0)){x=0;ua(1301,w|0,y|0);d=x;x=0;if(d&1){b=5;break b}else break}NQa(f[q>>2]|0,f[a>>2]|0);NQa(f[q>>2]|0,f[(f[j>>2]|0)+4>>2]|0);a=f[j>>2]|0;do switch(f[a>>2]|0){case 23:case 22:break c;case 1:{x=0;a=ga(217,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[l>>2]=f[a+8>>2];x=0;f[i>>2]=f[l>>2];ua(1302,k|0,i|0);d=x;x=0;if(d&1){b=5;break b}x=0;a=ga(217,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Jbb(f[a+16>>2]|0)|0;NQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(217,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=16;break b}if(c>>>0>=(Jbb(f[a+16>>2]|0)|0)>>>0)break c;x=0;a=ga(217,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=16;break b}x=0;a=ia(75,a+12|0,c|0)|0;d=x;x=0;if(d&1){b=16;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=16;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 2:{x=0;a=ga(260,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(260,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}b=a+12|0;a=f[e>>2]|0;if((a|0)==(f[g>>2]|0)){x=0;ua(640,z|0,b|0);d=x;x=0;if(d&1){b=5;break b}}else{f[a>>2]=f[b>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(260,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 3:{x=0;a=ga(261,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[m>>2]=f[a+8>>2];x=0;f[i>>2]=f[m>>2];ua(1302,k|0,i|0);d=x;x=0;if(d&1){b=5;break b}x=0;a=ga(261,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 4:{x=0;a=ga(262,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[n>>2]=f[a+8>>2];f[i>>2]=f[n>>2];eZ(y,r,q,i);x=0;a=ga(262,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(262,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 5:{x=0;a=ga(263,a|0)|0;d=x;x=0;if(d&1){b=5;break b}b=Jbb(f[a+12>>2]|0)|0;NQa(f[q>>2]|0,b);b=0;while(1){x=0;a=ga(263,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=55;break b}d=b>>>0<(Jbb(f[a+12>>2]|0)|0)>>>0;a=f[j>>2]|0;if(!d)break;x=0;a=ga(263,a|0)|0;d=x;x=0;if(d&1){b=55;break b}x=0;a=ia(100,a+8|0,b|0)|0;d=x;x=0;if(d&1){b=55;break b}f[o>>2]=f[a>>2];f[i>>2]=f[o>>2];eZ(y,r,q,i);b=b+1|0}x=0;a=ga(263,a|0)|0;d=x;x=0;if(d&1){b=5;break b}f[p>>2]=f[a+24>>2];f[i>>2]=f[p>>2];eZ(y,r,q,i);x=0;a=ga(263,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+28|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(263,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+32|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 6:{x=0;a=ga(264,a|0)|0;d=x;x=0;if(d&1){b=5;break b}$Ia(t,f[a+24>>2]|0,0);x=0;a=ga(264,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Jbb(f[a+12>>2]|0)|0;NQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(264,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=72;break b}if(c>>>0>=(Jbb(f[a+12>>2]|0)|0)>>>0)break c;x=0;a=ga(264,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=72;break b}x=0;a=ia(75,a+8|0,c|0)|0;d=x;x=0;if(d&1){b=72;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=72;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 7:{x=0;a=ga(265,a|0)|0;d=x;x=0;if(d&1){b=5;break b}$Ia(t,f[a+24>>2]|0,0);x=0;a=ga(265,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Jbb(f[a+12>>2]|0)|0;NQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(265,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=84;break b}if(c>>>0>=(Jbb(f[a+12>>2]|0)|0)>>>0)break c;x=0;a=ga(265,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=84;break b}x=0;a=ia(75,a+8|0,c|0)|0;d=x;x=0;if(d&1){b=84;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=84;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 8:{x=0;a=ga(266,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+28|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}$Ia(t,f[a+24>>2]|0,0);x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Jbb(f[a+12>>2]|0)|0;NQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=100;break b}if(c>>>0>=(Jbb(f[a+12>>2]|0)|0)>>>0)break c;x=0;a=ga(266,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=100;break b}x=0;a=ia(75,a+8|0,c|0)|0;d=x;x=0;if(d&1){b=100;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=100;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}case 9:{x=0;a=ga(267,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+8>>2]|0);break c}case 10:{x=0;a=ga(257,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(257,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 11:{x=0;a=ga(220,a|0)|0;d=x;x=0;if(d&1){b=5;break b}$Ia(t,f[a+8>>2]|0,0);break c}case 12:{x=0;a=ga(268,a|0)|0;d=x;x=0;if(d&1){b=5;break b}$Ia(t,f[a+8>>2]|0,0);x=0;a=ga(268,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 13:{x=0;a=ga(269,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,h[a+8>>0]|0);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}x=0;a=ga(270,a|0)|0;d=x;x=0;if(d&1){b=5;break b}if(a){x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,h[a+9>>0]|0)}x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+12>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+16>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,h[a+20>>0]|0);x=0;a=ga(269,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 14:{x=0;a=ga(271,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,h[a+8>>0]|0);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+12>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+16>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+32>>2]|0);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,h[a+20>>0]|0);x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(271,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+28|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 25:{x=0;a=ga(272,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,h[a+8>>0]|0);x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+12>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+20|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(272,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 24:{x=0;a=ga(273,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,h[a+12>>0]|0);x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+16>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+20|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(273,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+24|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 26:{x=0;a=ga(274,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+8>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+24>>2]|0);x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(274,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+20|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 27:{x=0;a=ga(275,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=Jbb(f[a+8>>2]|0)|0;NQa(f[q>>2]|0,a);x=0;a=ga(275,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(275,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 15:{x=0;a=ga(241,a|0)|0;d=x;x=0;if(d&1){b=201;break b}b=a+4|0;NQa(f[q>>2]|0,f[b>>2]|0);x=0;c=ga(283,a+8|0)|0;d=I;a=x;x=0;if(a&1){b=202;break b}x=0;a=ga(258,f[b>>2]|0)|0;b=x;x=0;if(b&1){b=202;break b}if((a|0)==4){NQa(f[q>>2]|0,c);break c}else{$Ia(t,c,d);break c}}case 16:{x=0;a=ga(276,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(276,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 17:{x=0;a=ga(277,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(277,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(277,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 18:{x=0;a=ga(278,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(278,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+12|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}x=0;a=ga(278,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+16|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 19:{x=0;a=ga(279,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 20:{x=0;a=ga(219,a|0)|0;d=x;x=0;if(d&1){b=5;break b}a=a+8|0;b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=5;break b}else break c}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4;break c}}case 21:{x=0;a=ga(280,a|0)|0;d=x;x=0;if(d&1){b=5;break b}NQa(f[q>>2]|0,f[a+8>>2]|0);x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}$Ia(t,f[a+12>>2]|0,0);x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=5;break b}c=Jbb(f[a+20>>2]|0)|0;NQa(f[q>>2]|0,c);c=0;while(1){x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=244;break b}if(c>>>0>=(Jbb(f[a+20>>2]|0)|0)>>>0)break c;x=0;a=ga(280,f[j>>2]|0)|0;d=x;x=0;if(d&1){b=244;break b}x=0;a=ia(75,a+16|0,c|0)|0;d=x;x=0;if(d&1){b=244;break b}b=f[e>>2]|0;if((b|0)==(f[g>>2]|0)){x=0;ua(640,z|0,a|0);d=x;x=0;if(d&1){b=244;break b}}else{f[b>>2]=f[a>>2];f[e>>2]=(f[e>>2]|0)+4}c=c+1|0}}default:{b=251;break b}}while(0)}while(0)}switch(b|0){case 5:{a=Ia()|0;break a}case 16:{a=Ia()|0;break a}case 55:{a=Ia()|0;break a}case 72:{a=Ia()|0;break a}case 84:{a=Ia()|0;break a}case 100:{a=Ia()|0;break a}case 201:{a=Ia()|0;break a}case 202:{a=Ia()|0;break a}case 244:{a=Ia()|0;break a}case 251:{x=0;sa(5);x=0;b=6;break a}case 252:{t=f[t>>2]|0;zSa(z);Fza(y);zSa(w);u=v;return t|0}}}while(0);if((b|0)==6)a=Ia()|0;zSa(z);Fza(y);zSa(w);Ua(a|0);return 0}function Fc(a,c,d,e,g,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;U=u;u=u+512|0;P=U+496|0;o=U;_=U+488|0;K=U+480|0;L=U+476|0;M=U+500|0;N=U+472|0;O=U+468|0;V=U+456|0;W=U+444|0;X=U+432|0;Y=U+420|0;Z=U+408|0;Q=U+404|0;T=U+400|0;f[P>>2]=n;f[_>>2]=o;f[_+4>>2]=513;f[K>>2]=o;f[L>>2]=o+400;f[V>>2]=0;f[V+4>>2]=0;f[V+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[V+(n<<2)>>2]=0;n=n+1|0}f[W>>2]=0;f[W+4>>2]=0;f[W+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[W+(n<<2)>>2]=0;n=n+1|0}f[X>>2]=0;f[X+4>>2]=0;f[X+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[X+(n<<2)>>2]=0;n=n+1|0}f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[Y+(n<<2)>>2]=0;n=n+1|0}f[Z>>2]=0;f[Z+4>>2]=0;f[Z+8>>2]=0;n=0;while(1){if((n|0)==3)break;f[Z+(n<<2)>>2]=0;n=n+1|0}x=0;Aa(2,d|0,e|0,M|0,N|0,O|0,V|0,W|0,X|0,Y|0,Q|0);R=x;x=0;a:do if(!(R&1)){f[m>>2]=f[l>>2];E=X+8+3|0;F=X+4|0;G=Y+8+3|0;H=Y+4|0;I=V+11|0;J=V+4|0;y=(g&512|0)!=0;z=W+8+3|0;A=M+3|0;B=W+4|0;C=Z+8+3|0;D=Z+4|0;R=0;w=0;n=f[Q>>2]|0;v=o;b:while(1){if(w>>>0>=4){S=264;break}e=f[a>>2]|0;do if(e){d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}}else e=Jbb(f[d>>2]|0)|0;if($5a(e)|0){f[a>>2]=0;d=1;break}else{d=(f[a>>2]|0)==0;break}}else d=1;while(0);if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;e=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;t=x;x=0;if(t&1){S=35;break}}else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0)){if(!d){S=264;break}}else S=31}else S=31;if((S|0)==31){S=0;if(d){c=0;S=264;break}else c=0}c:do switch(b[M+w>>0]|0){case 1:{if((w|0)!=3){d=f[a>>2]|0;e=f[d+12>>2]|0;if((e|0)==(f[d+16>>2]|0)){x=0;e=ga(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;S=x;x=0;if(S&1){S=35;break b}}else e=Jbb(f[e>>2]|0)|0;x=0;e=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,e|0)|0;S=x;x=0;if(S&1){S=35;break b}if(!e){S=49;break b}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;S=x;x=0;if(S&1){S=35;break b}}else{f[d>>2]=g+4;e=Jbb(f[g>>2]|0)|0}x=0;ua(3189,Z|0,e|0);S=x;x=0;if(S&1){S=35;break b}else S=51}else{d=R;e=v}break}case 0:{if((w|0)==3){d=R;e=v}else S=51;break}case 3:{o=b[E>>0]|0;e=o<<24>>24<0?f[F>>2]|0:o&255;g=b[G>>0]|0;q=g<<24>>24<0?f[H>>2]|0:g&255;if((e|0)==(0-q|0)){d=R;e=v}else{if(!e){e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}o=b[G>>0]|0}else{e=Jbb(f[d>>2]|0)|0;o=g}if((e|0)!=(f[(o<<24>>24<0?f[Y>>2]|0:Y)>>2]|0)){d=R;e=v;break c}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[G>>0]|0}else{f[d>>2]=g+4;e=o}b[j>>0]=1;d=(e<<24>>24<0?f[H>>2]|0:e&255)>>>0>1?Y:R;e=v;break c}g=f[a>>2]|0;p=g+12|0;r=f[p>>2]|0;d=f[g+16>>2]|0;e=(r|0)==(d|0);if(!q){if(e){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}o=b[E>>0]|0}else e=Jbb(f[r>>2]|0)|0;if((e|0)!=(f[(o<<24>>24<0?f[X>>2]|0:X)>>2]|0)){b[j>>0]=1;d=R;e=v;break c}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[E>>0]|0}else{f[d>>2]=g+4;e=o}d=(e<<24>>24<0?f[F>>2]|0:e&255)>>>0>1?X:R;e=v;break c}if(e){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}g=f[a>>2]|0;q=g+12|0;p=q;o=b[E>>0]|0;q=f[q>>2]|0;d=f[g+16>>2]|0}else{e=Jbb(f[r>>2]|0)|0;q=r}d=(q|0)==(d|0);if((e|0)==(f[(o<<24>>24<0?f[X>>2]|0:X)>>2]|0)){if(d){x=0;ga(f[(f[g>>2]|0)+40>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[E>>0]|0}else{f[p>>2]=q+4;e=o}d=(e<<24>>24<0?f[F>>2]|0:e&255)>>>0>1?X:R;e=v;break c}if(d){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;t=x;x=0;if(t&1){S=35;break b}}else e=Jbb(f[q>>2]|0)|0;o=b[G>>0]|0;if((e|0)!=(f[(o<<24>>24<0?f[Y>>2]|0:Y)>>2]|0)){S=118;break b}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=35;break b}e=b[G>>0]|0}else{f[d>>2]=g+4;e=o}b[j>>0]=1;d=(e<<24>>24<0?f[H>>2]|0:e&255)>>>0>1?Y:R;e=v}break}case 2:{if(w>>>0<2|(R|0)!=0){g=b[z>>0]|0;d=f[W>>2]|0;e=g<<24>>24<0?d:W;if(w)S=123}else{if(!(y|(w|0)==2&(b[A>>0]|0)!=0)){d=0;e=v;break c}g=b[z>>0]|0;d=f[W>>2]|0;e=g<<24>>24<0?d:W;S=123}d:do if((S|0)==123){S=0;if((h[M+(w+-1)>>0]|0)<2){while(1){t=g<<24>>24<0;o=e;if(((t?d:W)+((t?f[B>>2]|0:g&255)<<2)|0)==(o|0))break;x=0;d=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,f[o>>2]|0)|0;t=x;x=0;if(t&1){S=130;break b}if(!d){S=128;break}e=o+4|0;g=b[z>>0]|0;d=f[W>>2]|0}if((S|0)==128){S=0;g=b[z>>0]|0;d=f[W>>2]|0}p=g<<24>>24<0?d:W;t=p;s=e-t>>2;r=b[C>>0]|0;o=r<<24>>24<0;q=f[D>>2]|0;r=r&255;if(s>>>0>(o?q:r)>>>0)e=t;else{q=o?(f[Z>>2]|0)+(q<<2)|0:Z+(r<<2)|0;o=q+(0-s<<2)|0;while(1){if((o|0)==(q|0))break d;if((f[o>>2]|0)!=(f[p>>2]|0)){e=t;break d}p=p+4|0;o=o+4|0}}}}while(0);p=c;q=e;o=c;while(1){t=g<<24>>24<0;if((q|0)==((t?d:W)+((t?f[B>>2]|0:g&255)<<2)|0)){c=p;break}c=f[a>>2]|0;do if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;t=x;x=0;if(t&1){S=160;break b}}else c=Jbb(f[e>>2]|0)|0;if($5a(c)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(o){c=f[o+12>>2]|0;if((c|0)==(f[o+16>>2]|0)){x=0;c=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;t=x;x=0;if(t&1){S=160;break b}}else c=Jbb(f[c>>2]|0)|0;if(!($5a(c)|0))if(e)c=p;else{c=p;break}else{c=0;S=150}}else{c=p;S=150}if((S|0)==150){S=0;if(e)break;else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=160;break b}}else e=Jbb(f[d>>2]|0)|0;if((e|0)!=(f[q>>2]|0))break;e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=161;break b}}else f[d>>2]=g+4;p=c;q=q+4|0;g=b[z>>0]|0;d=f[W>>2]|0}if(y?(t=b[z>>0]|0,s=t<<24>>24<0,(q|0)!=((s?f[W>>2]|0:W)+((s?f[B>>2]|0:t&255)<<2)|0)):0){S=164;break b}else{d=R;e=v}break}case 4:{p=0;q=c;r=c;e=v;o=c;while(1){c=f[a>>2]|0;do if(c){d=f[c+12>>2]|0;if((d|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;v=x;x=0;if(v&1){S=188;break b}}else c=Jbb(f[d>>2]|0)|0;if($5a(c)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(r){c=f[r+12>>2]|0;if((c|0)==(f[r+16>>2]|0)){x=0;c=ga(f[(f[r>>2]|0)+36>>2]|0,r|0)|0;v=x;x=0;if(v&1){S=188;break b}}else c=Jbb(f[c>>2]|0)|0;if(!($5a(c)|0))if(g){c=q;s=o}else{c=q;break}else{c=0;d=0;S=177}}else{c=q;d=o;S=177}if((S|0)==177){S=0;if(g){o=d;break}else{s=d;r=0}}d=f[a>>2]|0;g=f[d+12>>2]|0;if((g|0)==(f[d+16>>2]|0)){x=0;d=ga(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;v=x;x=0;if(v&1){S=191;break b}}else d=Jbb(f[g>>2]|0)|0;x=0;g=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,2048,d|0)|0;v=x;x=0;if(v&1){S=191;break b}if(g){g=f[m>>2]|0;if((g|0)==(f[P>>2]|0)){x=0;va(177,l|0,m|0,P|0);v=x;x=0;if(v&1){S=191;break b}g=f[m>>2]|0}f[m>>2]=g+4;f[g>>2]=d;p=p+1|0}else{v=b[I>>0]|0;if(!((d|0)==(f[O>>2]|0)&(p|0?((v<<24>>24<0?f[J>>2]|0:v&255)|0)!=0:0))){o=s;break}if((e|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);v=x;x=0;if(v&1){S=191;break b}e=f[K>>2]|0}v=e+4|0;f[K>>2]=v;f[e>>2]=p;p=0;e=v}d=f[a>>2]|0;g=d+12|0;o=f[g>>2]|0;if((o|0)==(f[d+16>>2]|0)){x=0;ga(f[(f[d>>2]|0)+40>>2]|0,d|0)|0;v=x;x=0;if(v&1){S=188;break b}}else f[g>>2]=o+4;q=c;o=s}if(p|0?(f[_>>2]|0)!=(e|0):0){if((e|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);v=x;x=0;if(v&1){S=189;break b}e=f[K>>2]|0}v=e+4|0;f[K>>2]=v;f[e>>2]=p;p=v}else p=e;e:do if((n|0)>0){e=f[a>>2]|0;do if(e){d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=189;break b}}else e=Jbb(f[d>>2]|0)|0;if($5a(e)|0){f[a>>2]=0;d=1;break}else{d=(f[a>>2]|0)==0;break}}else d=1;while(0);if(o){e=f[o+12>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;e=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;v=x;x=0;if(v&1){S=189;break b}}else e=Jbb(f[e>>2]|0)|0;if(!($5a(e)|0)){if(!d){S=226;break b}}else{c=0;S=220}}else S=220;if((S|0)==220){S=0;if(d){S=226;break b}else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=189;break b}}else e=Jbb(f[d>>2]|0)|0;if((e|0)!=(f[N>>2]|0)){S=226;break b}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=189;break b}}else f[d>>2]=g+4;g=o;while(1){if((n|0)<=0)break e;e=f[a>>2]|0;do if(e){d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Jbb(f[d>>2]|0)|0;if($5a(e)|0){f[a>>2]=0;d=1;break}else{d=(f[a>>2]|0)==0;break}}else d=1;while(0);do if(g){e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;e=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Jbb(f[e>>2]|0)|0;if($5a(e)|0){c=0;S=244;break}if(d)o=g;else{S=251;break b}}else S=244;while(0);if((S|0)==244){S=0;if(d){S=251;break b}else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Jbb(f[d>>2]|0)|0;x=0;e=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,2048,e|0)|0;v=x;x=0;if(v&1){S=187;break b}if(!e){S=251;break b}if((f[m>>2]|0)==(f[P>>2]|0)?(x=0,va(177,l|0,m|0,P|0),v=x,x=0,v&1):0){S=187;break b}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else e=Jbb(f[d>>2]|0)|0;d=f[m>>2]|0;f[m>>2]=d+4;f[d>>2]=e;n=n+-1|0;e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;v=x;x=0;if(v&1){S=187;break b}}else f[d>>2]=g+4;g=o}}while(0);if((f[m>>2]|0)==(f[l>>2]|0)){S=262;break b}else{d=R;e=p}break}default:{d=R;e=v}}while(0);f:do if((S|0)==51){S=0;g=c;d=c;while(1){c=f[a>>2]|0;do if(c){e=f[c+12>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;t=x;x=0;if(t&1){S=34;break b}}else c=Jbb(f[e>>2]|0)|0;if($5a(c)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(d){c=f[d+12>>2]|0;if((c|0)==(f[d+16>>2]|0)){x=0;c=ga(f[(f[d>>2]|0)+36>>2]|0,d|0)|0;t=x;x=0;if(t&1){S=34;break b}}else c=Jbb(f[c>>2]|0)|0;if(!($5a(c)|0))if(e){c=g;o=d}else{d=R;c=g;e=v;break f}else{c=0;S=64}}else{c=g;S=64}if((S|0)==64){S=0;if(e){d=R;e=v;break f}else o=0}e=f[a>>2]|0;d=f[e+12>>2]|0;if((d|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=34;break b}}else e=Jbb(f[d>>2]|0)|0;x=0;e=ja(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,e|0)|0;t=x;x=0;if(t&1){S=34;break b}if(!e){d=R;e=v;break f}e=f[a>>2]|0;d=e+12|0;g=f[d>>2]|0;if((g|0)==(f[e+16>>2]|0)){x=0;e=ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;t=x;x=0;if(t&1){S=34;break b}}else{f[d>>2]=g+4;e=Jbb(f[g>>2]|0)|0}x=0;ua(3189,Z|0,e|0);t=x;x=0;if(t&1){S=34;break b}else{g=c;d=o}}}while(0);R=d;w=w+1|0;v=e}g:switch(S|0){case 34:{c=Ia()|0;S=36;break}case 35:{c=Ia()|0;S=36;break}case 49:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 118:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 130:{c=Ia()|0;f[Q>>2]=n;break a}case 160:{c=Ia()|0;f[Q>>2]=n;break a}case 161:{c=Ia()|0;f[Q>>2]=n;break a}case 164:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 187:{U=Ia()|0;f[Q>>2]=n;n=U;S=190;break}case 188:{U=Ia()|0;f[Q>>2]=n;n=U;S=190;break}case 189:{U=Ia()|0;f[Q>>2]=n;n=U;S=190;break}case 191:{c=Ia()|0;f[Q>>2]=n;break a}case 226:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 251:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 262:{f[Q>>2]=n;f[i>>2]=f[i>>2]|4;c=0;S=300;break}case 264:{f[Q>>2]=n;h:do if(R|0){o=R+8+3|0;p=R+4|0;g=1;i:while(1){n=b[o>>0]|0;if(n<<24>>24<0)n=f[p>>2]|0;else n=n&255;if(g>>>0>=n>>>0)break h;n=f[a>>2]|0;do if(n){e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){x=0;n=ga(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;Q=x;x=0;if(Q&1){S=291;break i}}else n=Jbb(f[e>>2]|0)|0;if($5a(n)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(c){n=f[c+12>>2]|0;if((n|0)==(f[c+16>>2]|0)){x=0;n=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;Q=x;x=0;if(Q&1){S=291;break}}else n=Jbb(f[n>>2]|0)|0;if(!($5a(n)|0)){if(!e){S=290;break}}else S=282}else S=282;if((S|0)==282){S=0;if(e){S=290;break}else c=0}n=f[a>>2]|0;e=f[n+12>>2]|0;if((e|0)==(f[n+16>>2]|0)){x=0;n=ga(f[(f[n>>2]|0)+36>>2]|0,n|0)|0;Q=x;x=0;if(Q&1){S=291;break}}else n=Jbb(f[e>>2]|0)|0;if((b[o>>0]|0)<0)e=f[R>>2]|0;else e=R;if((n|0)!=(f[e+(g<<2)>>2]|0)){S=290;break}n=f[a>>2]|0;e=n+12|0;d=f[e>>2]|0;if((d|0)==(f[n+16>>2]|0)){x=0;ga(f[(f[n>>2]|0)+40>>2]|0,n|0)|0;Q=x;x=0;if(Q&1){S=291;break}}else f[e>>2]=d+4;g=g+1|0}if((S|0)==290){f[i>>2]=f[i>>2]|4;c=0;S=300;break g}else if((S|0)==291){c=Ia()|0;break a}}while(0);n=f[_>>2]|0;if((n|0)!=(v|0)){f[T>>2]=0;Uz(V,n,v,T);if(!(f[T>>2]|0)){c=1;S=300;break}else{f[i>>2]=f[i>>2]|4;c=0;S=300;break}}else{c=1;S=300}break}}if((S|0)==36){f[Q>>2]=n;break}else if((S|0)==190){c=n;break}else if((S|0)==300){oTa(Z);oTa(Y);oTa(X);oTa(W);MTa(V);n=f[_>>2]|0;f[_>>2]=0;if(n|0?(x=0,ta(f[_+4>>2]|0,n|0),_=x,x=0,_&1):0){_=Ja(0)|0;y2a(_)}u=U;return c|0}}else c=Ia()|0;while(0);oTa(Z);oTa(Y);oTa(X);oTa(W);MTa(V);n=f[_>>2]|0;f[_>>2]=0;if(n|0?(x=0,ta(f[_+4>>2]|0,n|0),_=x,x=0,_&1):0){_=Ja(0)|0;y2a(_)}Ua(c|0);return 0}function Gc(a,c,e,g,i,j,k,l,m,n,o){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,v=0,w=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;U=u;u=u+512|0;P=U+488|0;p=U;_=U+480|0;K=U+472|0;L=U+468|0;M=U+496|0;N=U+493|0;O=U+492|0;V=U+456|0;W=U+444|0;X=U+432|0;Y=U+420|0;Z=U+408|0;Q=U+404|0;T=U+400|0;f[P>>2]=o;f[_>>2]=p;f[_+4>>2]=513;f[K>>2]=p;f[L>>2]=p+400;f[V>>2]=0;f[V+4>>2]=0;f[V+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[V+(o<<2)>>2]=0;o=o+1|0}f[W>>2]=0;f[W+4>>2]=0;f[W+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[W+(o<<2)>>2]=0;o=o+1|0}f[X>>2]=0;f[X+4>>2]=0;f[X+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[X+(o<<2)>>2]=0;o=o+1|0}f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[Y+(o<<2)>>2]=0;o=o+1|0}f[Z>>2]=0;f[Z+4>>2]=0;f[Z+8>>2]=0;o=0;while(1){if((o|0)==3)break;f[Z+(o<<2)>>2]=0;o=o+1|0}x=0;Aa(1,e|0,g|0,M|0,N|0,O|0,V|0,W|0,X|0,Y|0,Q|0);R=x;x=0;a:do if(!(R&1)){f[n>>2]=f[m>>2];D=l+8|0;E=X+11|0;F=X+4|0;G=Y+11|0;H=Y+4|0;I=V+11|0;J=V+4|0;w=(i&512|0)!=0;y=W+11|0;z=M+3|0;A=W+4|0;B=Z+11|0;C=Z+4|0;R=0;v=0;t=p;b:while(1){if(v>>>0>=4){S=263;break}o=f[a>>2]|0;do if(o){g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}}else o=d7a(b[g>>0]|0)|0;if(g2a(o,-1)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;o=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;s=x;x=0;if(s&1){S=35;break}}else o=d7a(b[o>>0]|0)|0;if(!(g2a(o,-1)|0)){if(!g){S=263;break}}else S=31}else S=31;if((S|0)==31){S=0;if(g){c=0;S=263;break}else c=0}c:do switch(b[M+v>>0]|0){case 1:{if((v|0)!=3){o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;S=x;x=0;if(S&1){S=35;break b}}else o=d7a(b[g>>0]|0)|0;if((o&255)<<24>>24<=-1){S=49;break b}if(!(d[(f[D>>2]|0)+(o<<24>>24<<1)>>1]&8192)){S=49;break b}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;S=x;x=0;if(S&1){S=35;break b}}else{f[g>>2]=e+1;o=d7a(b[e>>0]|0)|0}x=0;ua(82,Z|0,o&255|0);S=x;x=0;if(S&1){S=35;break b}else S=51}else{g=R;o=t}break}case 0:{if((v|0)==3){g=R;o=t}else S=51;break}case 3:{l=b[E>>0]|0;o=l<<24>>24<0?f[F>>2]|0:l&255;e=b[G>>0]|0;p=e<<24>>24<0?f[H>>2]|0:e&255;if((o|0)==(0-p|0)){g=R;o=t}else{if(!o){o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}l=b[G>>0]|0}else{o=d7a(b[g>>0]|0)|0;l=e}if((b[(l<<24>>24<0?f[Y>>2]|0:Y)>>0]|0)!=(o&255)<<24>>24){g=R;o=t;break c}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[G>>0]|0}else{f[g>>2]=e+1;o=l}b[k>>0]=1;g=(o<<24>>24<0?f[H>>2]|0:o&255)>>>0>1?Y:R;o=t;break c}e=f[a>>2]|0;i=e+12|0;q=f[i>>2]|0;g=f[e+16>>2]|0;o=(q|0)==(g|0);if(!p){if(o){x=0;o=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}l=b[E>>0]|0}else o=d7a(b[q>>0]|0)|0;if((b[(l<<24>>24<0?f[X>>2]|0:X)>>0]|0)!=(o&255)<<24>>24){b[k>>0]=1;g=R;o=t;break c}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[E>>0]|0}else{f[g>>2]=e+1;o=l}g=(o<<24>>24<0?f[F>>2]|0:o&255)>>>0>1?X:R;o=t;break c}if(o){x=0;o=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}e=f[a>>2]|0;p=e+12|0;i=p;l=b[E>>0]|0;p=f[p>>2]|0;g=f[e+16>>2]|0}else{o=d7a(b[q>>0]|0)|0;p=q}g=(p|0)==(g|0);if((b[(l<<24>>24<0?f[X>>2]|0:X)>>0]|0)==(o&255)<<24>>24){if(g){x=0;ga(f[(f[e>>2]|0)+40>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[E>>0]|0}else{f[i>>2]=p+1;o=l}g=(o<<24>>24<0?f[F>>2]|0:o&255)>>>0>1?X:R;o=t;break c}if(g){x=0;o=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;s=x;x=0;if(s&1){S=35;break b}}else o=d7a(b[p>>0]|0)|0;l=b[G>>0]|0;if((b[(l<<24>>24<0?f[Y>>2]|0:Y)>>0]|0)!=(o&255)<<24>>24){S=118;break b}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;s=x;x=0;if(s&1){S=35;break b}o=b[G>>0]|0}else{f[g>>2]=e+1;o=l}b[k>>0]=1;g=(o<<24>>24<0?f[H>>2]|0:o&255)>>>0>1?Y:R;o=t}break}case 2:{if(v>>>0<2|(R|0)!=0){o=b[y>>0]|0;g=o<<24>>24<0;i=f[W>>2]|0;e=g?i:W;l=e;if(!v){e=l;g=i}else{s=i;S=123}}else{if(!(w|(v|0)==2&(b[z>>0]|0)!=0)){g=0;o=t;break c}o=b[y>>0]|0;g=o<<24>>24<0;s=f[W>>2]|0;l=g?s:W;e=l;S=123}d:do if((S|0)==123){S=0;if((h[M+(v+-1)>>0]|0)<2){g=e+(g?f[A>>2]|0:o&255)|0;r=l;while(1){i=r;if((g|0)==(i|0))break;p=b[i>>0]|0;if(p<<24>>24<=-1)break;if(!(d[(f[D>>2]|0)+(p<<24>>24<<1)>>1]&8192))break;r=i+1|0}g=r-l|0;p=b[B>>0]|0;q=p<<24>>24<0;i=f[C>>2]|0;p=p&255;if(g>>>0<=(q?i:p)>>>0){$=(f[Z>>2]|0)+i|0;g=0-g|0;p=Z+p|0;i=q?$:p;g=q?$+g|0:p+g|0;while(1){if((g|0)==(i|0)){e=r;g=s;break d}if((b[g>>0]|0)!=(b[e>>0]|0)){e=l;g=s;break d}e=e+1|0;g=g+1|0}}else{e=l;g=s}}else{e=l;g=s}}while(0);i=c;p=e;l=c;while(1){$=o<<24>>24<0;if((p|0)==(($?g:W)+($?f[A>>2]|0:o&255)|0)){c=i;break}c=f[a>>2]|0;do if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=158;break b}}else c=d7a(b[o>>0]|0)|0;if(g2a(c,-1)|0){f[a>>2]=0;o=1;break}else{o=(f[a>>2]|0)==0;break}}else o=1;while(0);if(l){c=f[l+12>>2]|0;if((c|0)==(f[l+16>>2]|0)){x=0;c=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;$=x;x=0;if($&1){S=158;break b}}else c=d7a(b[c>>0]|0)|0;if(!(g2a(c,-1)|0))if(o)c=i;else{c=i;break}else{c=0;S=148}}else{c=i;S=148}if((S|0)==148){S=0;if(o)break;else l=0}o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=158;break b}}else o=d7a(b[g>>0]|0)|0;if((b[p>>0]|0)!=(o&255)<<24>>24)break;o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;$=x;x=0;if($&1){S=159;break b}}else f[g>>2]=e+1;i=c;p=p+1|0;o=b[y>>0]|0;g=f[W>>2]|0}if(w?($=b[y>>0]|0,s=$<<24>>24<0,(p|0)!=((s?f[W>>2]|0:W)+(s?f[A>>2]|0:$&255)|0)):0){S=162;break b}else{g=R;o=t}break}case 4:{r=b[O>>0]|0;l=0;o=c;e=c;i=t;p=c;while(1){c=f[a>>2]|0;do if(c){g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=186;break b}}else c=d7a(b[g>>0]|0)|0;if(g2a(c,-1)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(e){c=f[e+12>>2]|0;if((c|0)==(f[e+16>>2]|0)){x=0;c=ga(f[(f[e>>2]|0)+36>>2]|0,e|0)|0;$=x;x=0;if($&1){S=186;break b}}else c=d7a(b[c>>0]|0)|0;if(!(g2a(c,-1)|0))if(g)q=e;else break;else{o=0;c=0;S=175}}else{c=p;S=175}if((S|0)==175){S=0;if(g){p=c;break}else{p=c;q=0}}c=f[a>>2]|0;g=f[c+12>>2]|0;if((g|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=189;break b}}else c=d7a(b[g>>0]|0)|0;g=c&255;if(g<<24>>24>-1?(d[(f[D>>2]|0)+(c<<24>>24<<1)>>1]&2048)!=0:0){c=f[n>>2]|0;if((c|0)==(f[P>>2]|0)){x=0;va(175,m|0,n|0,P|0);$=x;x=0;if($&1){S=189;break b}c=f[n>>2]|0}f[n>>2]=c+1;b[c>>0]=g;l=l+1|0}else{$=b[I>>0]|0;if(!(r<<24>>24==g<<24>>24&(l|0?(($<<24>>24<0?f[J>>2]|0:$&255)|0)!=0:0)))break;if((i|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);$=x;x=0;if($&1){S=189;break b}c=f[K>>2]|0}else c=i;i=c+4|0;f[K>>2]=i;f[c>>2]=l;l=0}c=f[a>>2]|0;g=c+12|0;e=f[g>>2]|0;if((e|0)==(f[c+16>>2]|0)){x=0;ga(f[(f[c>>2]|0)+40>>2]|0,c|0)|0;$=x;x=0;if($&1){S=186;break b}}else f[g>>2]=e+1;e=q}if(l|0?(f[_>>2]|0)!=(i|0):0){if((i|0)==(f[L>>2]|0)){x=0;va(176,_|0,K|0,L|0);$=x;x=0;if($&1){S=187;break b}c=f[K>>2]|0}else c=i;i=c+4|0;f[K>>2]=i;f[c>>2]=l}c=f[Q>>2]|0;if((c|0)>0){g=f[a>>2]|0;do if(g){e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=187;break b}}else g=d7a(b[e>>0]|0)|0;if(g2a(g,-1)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);if(p){g=f[p+12>>2]|0;if((g|0)==(f[p+16>>2]|0)){x=0;g=ga(f[(f[p>>2]|0)+36>>2]|0,p|0)|0;$=x;x=0;if($&1){S=187;break b}}else g=d7a(b[g>>0]|0)|0;if(!(g2a(g,-1)|0)){if(!e){S=224;break b}}else{o=0;S=218}}else S=218;if((S|0)==218){S=0;if(e){S=224;break b}else p=0}g=f[a>>2]|0;e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=187;break b}}else g=d7a(b[e>>0]|0)|0;if((b[N>>0]|0)!=(g&255)<<24>>24){S=224;break b}g=f[a>>2]|0;e=g+12|0;l=f[e>>2]|0;if((l|0)==(f[g+16>>2]|0)){x=0;ga(f[(f[g>>2]|0)+40>>2]|0,g|0)|0;$=x;x=0;if($&1){S=187;break b}}else f[e>>2]=l+1;l=p;while(1){if((c|0)<=0)break;g=f[a>>2]|0;do if(g){e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=d7a(b[e>>0]|0)|0;if(g2a(g,-1)|0){f[a>>2]=0;e=1;break}else{e=(f[a>>2]|0)==0;break}}else e=1;while(0);do if(l){g=f[l+12>>2]|0;if((g|0)==(f[l+16>>2]|0)){x=0;g=ga(f[(f[l>>2]|0)+36>>2]|0,l|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=d7a(b[g>>0]|0)|0;if(g2a(g,-1)|0){o=0;S=242;break}if(e)p=l;else{S=249;break b}}else S=242;while(0);if((S|0)==242){S=0;if(e){S=249;break b}else p=0}g=f[a>>2]|0;e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=d7a(b[e>>0]|0)|0;if((g&255)<<24>>24<=-1){S=249;break b}if(!(d[(f[D>>2]|0)+(g<<24>>24<<1)>>1]&2048)){S=249;break b}if((f[n>>2]|0)==(f[P>>2]|0)?(x=0,va(175,m|0,n|0,P|0),$=x,x=0,$&1):0){S=185;break b}g=f[a>>2]|0;e=f[g+12>>2]|0;if((e|0)==(f[g+16>>2]|0)){x=0;g=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else g=d7a(b[e>>0]|0)|0;e=f[n>>2]|0;f[n>>2]=e+1;b[e>>0]=g;c=c+-1|0;g=f[a>>2]|0;e=g+12|0;l=f[e>>2]|0;if((l|0)==(f[g+16>>2]|0)){x=0;ga(f[(f[g>>2]|0)+40>>2]|0,g|0)|0;$=x;x=0;if($&1){S=185;break b}}else f[e>>2]=l+1;l=p}f[Q>>2]=c;c=o}else c=o;if((f[n>>2]|0)==(f[m>>2]|0)){S=261;break b}else{g=R;o=i}break}default:{g=R;o=t}}while(0);e:do if((S|0)==51){S=0;e=c;g=c;while(1){c=f[a>>2]|0;do if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;c=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=34;break b}}else c=d7a(b[o>>0]|0)|0;if(g2a(c,-1)|0){f[a>>2]=0;o=1;break}else{o=(f[a>>2]|0)==0;break}}else o=1;while(0);if(g){c=f[g+12>>2]|0;if((c|0)==(f[g+16>>2]|0)){x=0;c=ga(f[(f[g>>2]|0)+36>>2]|0,g|0)|0;$=x;x=0;if($&1){S=34;break b}}else c=d7a(b[c>>0]|0)|0;if(!(g2a(c,-1)|0))if(o){c=e;l=g}else{g=R;c=e;o=t;break e}else{c=0;S=64}}else{c=e;S=64}if((S|0)==64){S=0;if(o){g=R;o=t;break e}else l=0}o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=34;break b}}else o=d7a(b[g>>0]|0)|0;if((o&255)<<24>>24<=-1){g=R;o=t;break e}if(!(d[(f[D>>2]|0)+(o<<24>>24<<1)>>1]&8192)){g=R;o=t;break e}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;$=x;x=0;if($&1){S=34;break b}}else{f[g>>2]=e+1;o=d7a(b[e>>0]|0)|0}x=0;ua(82,Z|0,o&255|0);$=x;x=0;if($&1){S=34;break b}else{e=c;g=l}}}while(0);R=g;v=v+1|0;t=o}f:switch(S|0){case 34:{c=Ia()|0;S=36;break}case 35:{c=Ia()|0;S=36;break}case 49:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 118:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 158:{o=Ia()|0;break a}case 159:{o=Ia()|0;break a}case 162:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 185:{$=Ia()|0;f[Q>>2]=c;c=$;S=188;break}case 186:{c=Ia()|0;S=188;break}case 187:{c=Ia()|0;S=188;break}case 189:{o=Ia()|0;break a}case 224:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 249:{f[Q>>2]=c;f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 261:{f[j>>2]=f[j>>2]|4;o=0;S=299;break}case 263:{g:do if(R|0){i=R+11|0;p=R+4|0;l=1;h:while(1){o=b[i>>0]|0;if(o<<24>>24<0)o=f[p>>2]|0;else o=o&255;if(l>>>0>=o>>>0)break g;o=f[a>>2]|0;do if(o){g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=290;break h}}else o=d7a(b[g>>0]|0)|0;if(g2a(o,-1)|0){f[a>>2]=0;g=1;break}else{g=(f[a>>2]|0)==0;break}}else g=1;while(0);if(c){o=f[c+12>>2]|0;if((o|0)==(f[c+16>>2]|0)){x=0;o=ga(f[(f[c>>2]|0)+36>>2]|0,c|0)|0;$=x;x=0;if($&1){S=290;break}}else o=d7a(b[o>>0]|0)|0;if(!(g2a(o,-1)|0)){if(!g){S=289;break}}else S=281}else S=281;if((S|0)==281){S=0;if(g){S=289;break}else c=0}o=f[a>>2]|0;g=f[o+12>>2]|0;if((g|0)==(f[o+16>>2]|0)){x=0;o=ga(f[(f[o>>2]|0)+36>>2]|0,o|0)|0;$=x;x=0;if($&1){S=290;break}}else o=d7a(b[g>>0]|0)|0;if((b[i>>0]|0)<0)g=f[R>>2]|0;else g=R;if((b[g+l>>0]|0)!=(o&255)<<24>>24){S=289;break}o=f[a>>2]|0;g=o+12|0;e=f[g>>2]|0;if((e|0)==(f[o+16>>2]|0)){x=0;ga(f[(f[o>>2]|0)+40>>2]|0,o|0)|0;$=x;x=0;if($&1){S=290;break}}else f[g>>2]=e+1;l=l+1|0}if((S|0)==289){f[j>>2]=f[j>>2]|4;o=0;S=299;break f}else if((S|0)==290){o=Ia()|0;break a}}while(0);c=f[_>>2]|0;if((c|0)!=(t|0)){f[T>>2]=0;Uz(V,c,t,T);if(!(f[T>>2]|0)){o=1;S=299;break}else{f[j>>2]=f[j>>2]|4;o=0;S=299;break}}else{o=1;S=299}break}}if((S|0)==36){o=c;break}else if((S|0)==188){o=c;break}else if((S|0)==299){MTa(Z);MTa(Y);MTa(X);MTa(W);MTa(V);c=f[_>>2]|0;f[_>>2]=0;if(c|0?(x=0,ta(f[_+4>>2]|0,c|0),$=x,x=0,$&1):0){$=Ja(0)|0;y2a($)}u=U;return o|0}}else o=Ia()|0;while(0);MTa(Z);MTa(Y);MTa(X);MTa(W);MTa(V);c=f[_>>2]|0;f[_>>2]=0;if(c|0?(x=0,ta(f[_+4>>2]|0,c|0),$=x,x=0,$&1):0){$=Ja(0)|0;y2a($)}Ua(o|0);return 0}function Hc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h;a:do if((c-a|0)>1){b:do switch(b[a>>0]|0){case 97:switch(b[a+1>>0]|0){case 97:{U3(g,123574);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 110:case 100:{$3(g,123585);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 78:{U3(g,123595);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 83:{$3(g,123606);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 99:switch(b[a+1>>0]|0){case 108:{U3(g,123616);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 109:{$3(g,123627);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 111:{$3(g,123637);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 118:{e=d+63|0;i=b[e>>0]|0;b[e>>0]=0;g=a+2|0;c=Cc(g,c,d)|0;b[e>>0]=i;if((c|0)==(g|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;zoa(e+-24|0,0,123647)|0;b[d+60>>0]=1;a=c;break a}default:break a}case 100:switch(b[a+1>>0]|0){case 97:{P3(g,123657);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 101:{$3(g,123675);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 108:{_3(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 118:{$3(g,123685);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 86:{U3(g,123695);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 101:switch(b[a+1>>0]|0){case 111:{$3(g,123706);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 79:{U3(g,123716);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 113:{U3(g,123727);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 103:switch(b[a+1>>0]|0){case 101:{U3(g,123738);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 116:{$3(g,123749);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 105:{if((b[a+1>>0]|0)!=120)break a;U3(g,123759);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 108:switch(b[a+1>>0]|0){case 101:{U3(g,123770);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 105:{i=a+2|0;c=hk(i,c,d)|0;if((c|0)==(i|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;zoa(e+-24|0,0,123781)|0;a=c;break a}case 115:{U3(g,123793);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 83:{T3(g,123804);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 116:{$3(g,123816);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 109:switch(b[a+1>>0]|0){case 105:{$3(g,123826);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 73:{U3(g,123836);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 108:{$3(g,123675);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 76:{U3(g,123847);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 109:{U3(g,123858);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 110:switch(b[a+1>>0]|0){case 97:{Q3(g,123869);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 101:{U3(g,123884);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 103:{$3(g,123826);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 116:{$3(g,123895);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 119:{S3(g,123905);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 111:switch(b[a+1>>0]|0){case 111:{U3(g,123918);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 114:{$3(g,123929);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 82:{U3(g,123939);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 112:switch(b[a+1>>0]|0){case 109:{T3(g,123950);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 108:{$3(g,123962);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 76:{U3(g,123972);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 112:{U3(g,123983);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 115:{$3(g,123962);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 116:{U3(g,123994);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 113:{if((b[a+1>>0]|0)!=117)break a;$3(g,124005);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 114:switch(b[a+1>>0]|0){case 109:{$3(g,124015);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 77:{U3(g,124025);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 115:{U3(g,124036);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 83:{T3(g,124047);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);i=x;x=0;if(i&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}case 118:{if(((b[a+1>>0]|0)+-48|0)>>>0>=10)break a;i=a+2|0;c=hk(i,c,d)|0;if((c|0)==(i|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;zoa(e+-24|0,0,123647)|0;a=c;break a}default:break a}while(0);Ua(a|0)}while(0);u=h;return a|0}function Ic(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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,ha=0,ja=0;ca=u;u=u+272|0;aa=ca+268|0;da=ca+248|0;O=ca+244|0;h=ca+240|0;i=ca+264|0;k=ca+252|0;W=ca+236|0;ha=ca+224|0;ea=ca+212|0;fa=ca+200|0;V=ca+184|0;X=ca+176|0;J=ca+160|0;L=ca+156|0;M=ca+148|0;Q=ca+116|0;K=ca+80|0;B=ca+72|0;C=ca+68|0;H=ca+188|0;D=ca+180|0;I=ca+164|0;E=ca+152|0;F=ca+136|0;R=ca+104|0;S=ca+92|0;N=ca+76|0;T=ca+64|0;Y=ca+52|0;Z=ca+40|0;U=ca+28|0;$=ca+16|0;_=ca+12|0;ba=ca;Bab(O);Bab(h);l=Kx(c,O,h)|0;g=Qab(f[O>>2]|0)|0;if(d){if(!g)f[O>>2]=f[(f[a+8>>2]|0)+((f[a+44>>2]|0)+-1<<2)>>2]}else{e=a+44|0;if(!g){P=YT(f[e>>2]|0)|0;f[O>>2]=P}f[e>>2]=(f[e>>2]|0)+1}P=f[h>>2]|0;e=P;a:do if(Qab(P)|0){fAa(da);j=f[da>>2]|0;f[j>>2]=e;f[j+4>>2]=f[O>>2];f[j+8>>2]=0;g=f[a>>2]|0;f[i>>2]=e;f[aa>>2]=f[i>>2];do if(!(hna(g,aa)|0)){f[da>>2]=0;x=0;ua(70,g|0,j|0);P=x;x=0;if(P&1){e=Ia()|0;f[da>>2]=0;break}else{f[da>>2]=0;G=a;ja=22;break a}}else{h=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;ha=j7a(93689)|0;x=0;va(87,k|0,93689,ha|0);ha=x;x=0;if(!(ha&1)){x=0;wa(138,h|0,k|0,f[c+28>>2]|0,f[c+32>>2]|0);ha=x;x=0;if(ha&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(k);if(g)ja=16}else{e=Ia()|0;ja=16}if((ja|0)==16)La(h|0);f[da>>2]=0;if(j)Cbb(j)}while(0)}else{G=a;ja=22}while(0);if((ja|0)==22){f[W>>2]=0;q=a+100|0;f[q>>2]=0;f[a+104>>2]=0;A=a+108|0;b[A>>0]=0;f[ha>>2]=0;r=ha+4|0;f[r>>2]=0;s=ha+8|0;f[s>>2]=0;f[ea>>2]=0;t=ea+4|0;f[t>>2]=0;v=ea+8|0;f[v>>2]=0;f[fa>>2]=0;w=fa+4|0;f[w>>2]=0;y=fa+8|0;f[y>>2]=0;f[V>>2]=0;Bab(X);f[J>>2]=0;Bab(L);Bab(M);f[Q>>2]=a;f[Q+4>>2]=O;f[Q+8>>2]=ea;f[Q+12>>2]=V;f[Q+16>>2]=fa;f[K>>2]=J;f[K+4>>2]=a;f[K+8>>2]=W;z=a+88|0;P=a+84|0;e=f[L>>2]|0;p=f[M>>2]|0;o=f[X>>2]|0;b:while(1){x=0;g=ga(294,c|0)|0;n=x;x=0;if(n&1){ja=38;break}if(l>>>0>=g>>>0){ja=126;break}x=0;n=ia(69,c|0,l|0)|0;m=x;x=0;if(m&1){ja=41;break}x=0;g=ia(69,n|0,0)|0;m=x;x=0;if(m&1){ja=42;break}x=0;m=ga(295,g|0)|0;k=x;x=0;if(k&1){ja=42;break}c:do if(!(g2a(m,f[33110]|0)|0)?!(g2a(m,f[33101]|0)|0):0){if(g2a(m,f[33109]|0)|0){x=0;g=ga(294,n|0)|0;m=x;x=0;if(m&1){ja=42;break b}if(g>>>0>2){ja=70;break b}x=0;g=ia(69,n|0,1)|0;n=x;x=0;if(n&1){ja=42;break b}x=0;g=ga(295,g|0)|0;n=x;x=0;if(n&1){ja=42;break b}x=0;g=ia(160,g|0,0)|0;n=x;x=0;if(n&1){ja=42;break b}f[V>>2]=g;h=o;g=p;break}if(g2a(m,f[33100]|0)|0){x=0;g=ia(69,n|0,1)|0;n=x;x=0;if(n&1){ja=87;break b}x=0;h=ia(162,a|0,g|0)|0;n=x;x=0;if(n&1){ja=87;break b}g=f[G>>2]|0;f[D>>2]=h;f[aa>>2]=f[D>>2];if(!(tma(g,aa)|0)){ja=84;break b}f[E>>2]=h;x=0;f[aa>>2]=f[E>>2];g=ia(163,g|0,aa|0)|0;o=x;x=0;if(o&1){ja=94;break b}f[V>>2]=f[g+4>>2];n=g+8|0;k=g+12|0;j=0;while(1){if(j>>>0>=(f[k>>2]|0)-(f[n>>2]|0)>>2>>>0){g=p;break c}x=0;g=ga(226,j|0)|0;o=x;x=0;if(o&1){ja=101;break b}f[B>>2]=g;m=f[(f[n>>2]|0)+(j<<2)>>2]|0;f[C>>2]=m;i=f[r>>2]|0;if(i>>>0>=(f[s>>2]|0)>>>0){x=0;va(142,ha|0,B|0,C|0);o=x;x=0;if(o&1){ja=102;break b}}else{L1a(da,g);f[aa>>2]=f[da>>2];hUa(i,aa,m);f[r>>2]=(f[r>>2]|0)+8}L1a(aa,g);x=0;g=ia(164,z|0,aa|0)|0;o=x;x=0;if(o&1){ja=103;break b}f[g>>2]=m;j=j+1|0}}if(g2a(m,f[33104]|0)|0){x=0;g=ia(69,n|0,1)|0;m=x;x=0;if(m&1){ja=112;break b}x=0;g=ga(295,g|0)|0;m=x;x=0;if(m&1){ja=112;break b}L1a(aa,g);e=f[aa>>2]|0;x=0;g=ia(69,n|0,2)|0;n=x;x=0;if(n&1){ja=113;break b}x=0;g=ga(295,g|0)|0;n=x;x=0;if(n&1){ja=113;break b}L1a(aa,g);h=o;g=f[aa>>2]|0;break}k=f[r>>2]|0;m=f[ha>>2]|0;g=m;h=k;if(((k|0)!=(m|0)?(f[t>>2]|0)==(f[ea>>2]|0):0)?(x=0,va(143,ea|0,g|0,h|0),m=x,x=0,m&1):0){ja=42;break b}if((f[P>>2]|0)==0?(x=0,ta(492,Q|0),m=x,x=0,m&1):0){ja=42;break b}x=0;g=ia(165,a|0,n|0)|0;n=x;x=0;if(n&1){ja=122;break b}if(!(f[W>>2]|0)){f[W>>2]=g;h=o;g=p;break}x=0;ta(493,K|0);n=x;x=0;if(n&1){ja=122;break b}x=0;ua(81,(f[J>>2]|0)+12|0,g|0);n=x;x=0;if(n&1){ja=122;break b}else{h=o;g=p}}else ja=30;while(0);d:do if((ja|0)==30){ja=0;j=1;while(1){x=0;g=ga(294,n|0)|0;k=x;x=0;if(k&1){ja=43;break b}if(j>>>0>=g>>>0){h=o;g=p;break d}Sab(B);f[C>>2]=0;x=0;g=ia(69,n|0,j|0)|0;k=x;x=0;if(k&1){ja=44;break b}do if(qRa(g)|0)ja=49;else{x=0;g=ia(69,n|0,j|0)|0;k=x;x=0;if(k&1){ja=44;break b}x=0;g=ga(295,g|0)|0;k=x;x=0;if(k&1){ja=44;break b}x=0;h=ia(160,g|0,1)|0;k=x;x=0;if(k&1){ja=44;break b}f[C>>2]=h;if(!h){ja=49;break}x=0;g=ga(226,f[q>>2]|0)|0;k=x;x=0;if(k&1){ja=48;break b}f[B>>2]=g;i=h}while(0);if((ja|0)==49){ja=0;x=0;g=ia(69,n|0,j|0)|0;k=x;x=0;if(k&1){ja=55;break b}x=0;k=ga(295,g|0)|0;i=x;x=0;if(i&1){ja=55;break b}f[B>>2]=k;h=j+1|0;x=0;g=ia(69,n|0,h|0)|0;j=x;x=0;if(j&1){ja=44;break b}x=0;g=ga(295,g|0)|0;j=x;x=0;if(j&1){ja=44;break b}x=0;i=ia(160,g|0,0)|0;j=x;x=0;if(j&1){ja=44;break b}f[C>>2]=i;j=h;g=k}j=j+1|0;do if(g2a(m,f[33110]|0)|0){h=f[t>>2]|0;if(h>>>0>=(f[v>>2]|0)>>>0){x=0;va(142,ea|0,B|0,C|0);k=x;x=0;if(k&1){ja=44;break b}else break}else{L1a(da,g);f[aa>>2]=f[da>>2];hUa(h,aa,i);f[t>>2]=(f[t>>2]|0)+8;break}}else{h=f[w>>2]|0;if(h>>>0>=(f[y>>2]|0)>>>0){x=0;va(142,fa|0,B|0,C|0);k=x;x=0;if(k&1){ja=44;break b}else break}else{L1a(da,g);f[aa>>2]=f[da>>2];hUa(h,aa,i);f[w>>2]=(f[w>>2]|0)+8;break}}while(0);f[q>>2]=(f[q>>2]|0)+1;L1a(aa,g);x=0;g=ia(164,z|0,aa|0)|0;k=x;x=0;if(k&1){ja=65;break b}f[g>>2]=i}}while(0);l=l+1|0;p=g;o=h}e:switch(ja|0){case 38:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=40;break}case 41:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 42:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 43:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 44:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 48:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 55:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 65:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;ja=66;break}case 70:{f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;h=Ea(20)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;da=j7a(94237)|0;x=0;va(87,H|0,94237,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,H|0,f[n+28>>2]|0,f[n+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(H);if(!g)break}else e=Ia()|0;La(h|0);break}case 84:{f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;h=Ea(20)|0;f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;da=j7a(94258)|0;x=0;va(87,I|0,94258,da|0);da=x;x=0;if(!(da&1)){x=0;ua(261,h|0,I|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(I);if(!g)break}else e=Ia()|0;La(h|0);break}case 87:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 94:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;break}case 101:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;ja=105;break}case 102:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;ja=104;break}case 103:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=h;e=da;ja=104;break}case 112:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 113:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 122:{da=Ia()|0;f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;e=da;break}case 126:{f[L>>2]=e;f[M>>2]=p;f[X>>2]=o;do if(Oab(o)|0){x=0;va(144,F|0,f[V>>2]|0,ea|0);I=x;x=0;if(I&1){e=Ia()|0;break e}x=0;i=ga(298,F|0)|0;I=x;x=0;if(I&1){e=Ia()|0;MTa(F);break e}MTa(F);e=f[G>>2]|0;g=f[e+4>>2]|0;e=f[e>>2]|0;while(1){if((e|0)==(g|0))break;h=f[e>>2]|0;if(vW(h,i)|0){ja=135;break}e=e+4|0}if((ja|0)==135)f[X>>2]=f[h>>2];if(Qab(f[X>>2]|0)|0){T_a(i);Cbb(i);e=f[L>>2]|0;break}h=Ea(20)|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;da=j7a(94280)|0;x=0;va(87,R|0,94280,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,R|0,f[c+28>>2]|0,f[c+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(R);if(g)ja=143}else{e=Ia()|0;ja=143}if((ja|0)==143)La(h|0);T_a(i);Cbb(i);break e}while(0);f:do if(Qab(e)|0){if(!d){h=Ea(20)|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;da=j7a(94315)|0;x=0;va(87,S|0,94315,da|0);da=x;x=0;if(!(da&1)){x=0;ua(261,h|0,S|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(S);if(!g)break e}else e=Ia()|0;La(h|0);break e}x=0;ta(432,da|0);ba=x;x=0;g:do if(ba&1)e=Ia()|0;else{g=f[da>>2]|0;f[g>>2]=f[O>>2];f[g+4>>2]=f[L>>2];f[g+8>>2]=f[M>>2];f[g+12>>2]=0;e=f[G>>2]|0;f[N>>2]=f[X>>2];x=0;f[aa>>2]=f[N>>2];e=ia(163,e|0,aa|0)|0;ba=x;x=0;do if(ba&1){e=Ia()|0;f[da>>2]=0;if(!g)break g}else{f[g+16>>2]=f[e>>2];e=f[G>>2]|0;f[T>>2]=f[g>>2];f[aa>>2]=f[T>>2];if(fna(e,aa)|0){i=Ea(20)|0;f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;ca=j7a(93731)|0;x=0;va(87,Y|0,93731,ca|0);ca=x;x=0;if(!(ca&1)){x=0;wa(138,i|0,Y|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}e=Ia()|0;MTa(Y);if(h)ja=163}else{e=Ia()|0;ja=163}if((ja|0)==163)La(i|0);f[da>>2]=0;break}f[da>>2]=0;x=0;ua(64,e|0,g|0);c=x;x=0;if(c&1){e=Ia()|0;f[da>>2]=0;break g}if(!(f[P>>2]|0)){p8(a+88|0);aca(a+112|0);f[da>>2]=0;break f}h=Ea(20)|0;f[Z>>2]=0;f[Z+4>>2]=0;f[Z+8>>2]=0;c=j7a(94339)|0;x=0;va(87,Z|0,94339,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,Z|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(Z);if(g)ja=172}else{e=Ia()|0;ja=172}if((ja|0)==172)La(h|0);f[da>>2]=0;break g}while(0);Cbb(g)}while(0);break e}else{if(d){h=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;da=j7a(94373)|0;x=0;va(87,U|0,94373,da|0);da=x;x=0;if(!(da&1)){x=0;ua(261,h|0,U|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(U);if(!g)break e}else e=Ia()|0;La(h|0);break e}if(b[A>>0]|0){x=0;ta(493,K|0);da=x;x=0;if(!(da&1)){e=f[J>>2]|0;f[e+8>>2]=f[33085];ja=190}}else{e=f[J>>2]|0;ja=190}do if((ja|0)==190){if(e|0?(x=0,ua(1874,e|0,f[V>>2]|0),da=x,x=0,da&1):0)break;e=f[P>>2]|0;if(!e){x=0;ta(492,Q|0);da=x;x=0;if(da&1)break;x=0;e=ga(282,f[a+4>>2]|0)|0;da=x;x=0;if(da&1)break;f[W>>2]=e;e=f[P>>2]|0}if((f[e+4>>2]|0)!=(f[V>>2]|0)){h=Ea(20)|0;f[$>>2]=0;f[$+4>>2]=0;f[$+8>>2]=0;da=j7a(94396)|0;x=0;va(87,$|0,94396,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,$|0,f[c+28>>2]|0,f[c+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa($);if(!g)break e}else e=Ia()|0;La(h|0);break e}f[e+36>>2]=f[W>>2];f[(f[P>>2]|0)+32>>2]=f[X>>2];e=f[G>>2]|0;g=f[P>>2]|0;f[_>>2]=f[g>>2];f[aa>>2]=f[_>>2];if(!(Xma(e,aa)|0)){f[P>>2]=0;x=0;ua(73,e|0,g|0);ja=x;x=0;if(ja&1)break;p8(a+88|0);aca(a+112|0);break f}h=Ea(20)|0;f[ba>>2]=0;f[ba+4>>2]=0;f[ba+8>>2]=0;da=j7a(94417)|0;x=0;va(87,ba|0,94417,da|0);da=x;x=0;if(!(da&1)){x=0;wa(138,h|0,ba|0,f[c+28>>2]|0,f[c+32>>2]|0);da=x;x=0;if(da&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(ba);if(!g)break e}else e=Ia()|0;La(h|0);break e}while(0);e=Ia()|0;ja=40;break e}while(0);zSa(fa);zSa(ea);zSa(ha);u=ca;return}}if((ja|0)!=40)if((ja|0)!=66)if((ja|0)==104)ja=105;zSa(fa);zSa(ea);zSa(ha)}Ua(e|0)}function Jc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;t=u;u=u+400|0;w=t+160|0;j=t+384|0;v=t+16|0;s=t;k=t+372|0;l=t+360|0;q=t+348|0;n=t+336|0;o=t+324|0;m=t+312|0;r=t+300|0;d=cWa(d)|0;f[d+4>>2]=c;a:do if(t6a(c)|0){if(g2a(a,f[33091]|0)|0)switch(c|0){case 3:{HAa(w,C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{pqa(w,C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}if(g2a(a,f[33090]|0)|0)switch(c|0){case 3:{HAa(w,-C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{pqa(w,-C);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}if(g2a(a,f[33092]|0)|0)switch(c|0){case 3:{HAa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{pqa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}p=(b[a>>0]|0)==45;e=a+1|0;g=p?e:a;if(p)i=e;else i=(b[g>>0]|0)==43?g+1|0:g;if(((b[i>>0]|0)==110?(b[i+1>>0]|0)==97:0)?(b[i+2>>0]|0)==110:0){e=(b[i+3>>0]|0)==58;g=i+4|0;h=e?g:0;do if(e){if((b[g>>0]|0)==48?(b[i+5>>0]|0)==120:0)break;g=Ea(20)|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;w=j7a(92794)|0;x=0;va(87,j|0,92794,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,j|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(j);if(!e){h=168;break a}}else d=Ia()|0;La(g|0);h=168;break a}while(0);switch(c|0){case 3:{b:do if(e){f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;_Z(s,h,j7a(h)|0);g=v+60|0;h=v+8|0;f[v>>2]=34572;f[g>>2]=34592;f[v+4>>2]=0;Laa(v+60|0,h);f[v+132>>2]=0;f[v+136>>2]=-1;f[v>>2]=43024;f[g>>2]=43044;Xra(h);f[h>>2]=39940;i=v+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[v+52>>2]=0;f[v+56>>2]=8;x=0;ua(1879,h|0,s|0);r=x;x=0;if(r&1){d=Ia()|0;MTa(i);cXa(h);t1a(g);MTa(s)}else{MTa(s);r=v+(f[(f[v>>2]|0)+-12>>2]|0)+4|0;f[r>>2]=f[r>>2]&-75|8;x=0;ia(170,v|0,w|0)|0;r=x;x=0;do if(r&1)d=Ia()|0;else{if(!(f[v+(f[(f[v>>2]|0)+-12>>2]|0)+16>>2]&5)){f[w>>2]=f[w>>2]|2139095040;PGa(v);break b}g=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;w=j7a(92808)|0;x=0;va(87,k|0,92808,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,k|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(k);if(!e)break}else d=Ia()|0;La(g|0)}while(0);PGa(v)}h=168;break a}else f[w>>2]=2143289344;while(0);e=f[w>>2]|0;if(p){e=e|-2147483648;f[w>>2]=e}if(((K$a(+E7a(w))|0)&2147483647)>>>0<=2139095040){e=e|1;f[w>>2]=e}t$a(s,e);QHa(v,s);h=d+8|0;f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];h=167;break a}case 4:{c:do if(e){f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;_Z(s,h,j7a(h)|0);g=v+60|0;h=v+8|0;f[v>>2]=34572;f[g>>2]=34592;f[v+4>>2]=0;Laa(v+60|0,h);f[v+132>>2]=0;f[v+136>>2]=-1;f[v>>2]=43024;f[g>>2]=43044;Xra(h);f[h>>2]=39940;i=v+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[v+52>>2]=0;f[v+56>>2]=8;x=0;ua(1879,h|0,s|0);r=x;x=0;if(r&1){d=Ia()|0;MTa(i);cXa(h);t1a(g);MTa(s)}else{MTa(s);r=v+(f[(f[v>>2]|0)+-12>>2]|0)+4|0;f[r>>2]=f[r>>2]&-75|8;x=0;ia(171,v|0,w|0)|0;r=x;x=0;do if(r&1)d=Ia()|0;else{if(!(f[v+(f[(f[v>>2]|0)+-12>>2]|0)+16>>2]&5)){a=w;c=f[a+4>>2]|2146435072;r=w;f[r>>2]=f[a>>2];f[r+4>>2]=c;PGa(v);break c}g=Ea(20)|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;w=j7a(92827)|0;x=0;va(87,l|0,92827,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,l|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(l);if(!e)break}else d=Ia()|0;La(g|0)}while(0);PGa(v)}h=168;break a}else{r=w;f[r>>2]=0;f[r+4>>2]=2146959360}while(0);e=w;g=f[e>>2]|0;e=f[e+4>>2]|0;if(p){e=e|-2147483648;r=w;f[r>>2]=g;f[r+4>>2]=e}r=vRa(+F7a(w))|0;c=I&2147483647;if(!(c>>>0>2146435072|(c|0)==2146435072&r>>>0>0)){g=g|1;f[w>>2]=g;f[w+4>>2]=e}XSa(s,g,e);h=s+8|0;uGa(v,f[s>>2]|0,f[h>>2]|0,f[h+4>>2]|0);h=d+8|0;f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];h=167;break a}default:{d=0;h=167;break a}}}if(g2a(a,f[33089]|0)|0)switch(c|0){case 3:{HAa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}case 4:{pqa(w,B);h=d+8|0;f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];h=167;break a}default:{d=0;h=167;break a}}else h=81}else h=81;while(0);d:do if((h|0)==81){e:do switch(c|0){case 1:{g=b[a>>0]|0;switch(g<<24>>24){case 48:{e=a+1|0;if((b[e>>0]|0)==120)h=86;else{e=a;h=103}break}case 45:{e=a+1|0;if((b[e>>0]|0)==48?(b[a+2>>0]|0)==120:0)h=86;else h=103;break}default:{e=a;h=103}}if((h|0)==86){j=g<<24>>24==45;g=j?e:a;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;_Z(v,g,j7a(g)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Laa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Xra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1879,h|0,v|0);a=x;x=0;if(a&1){d=Ia()|0;MTa(i);cXa(h);t1a(g);MTa(v)}else{MTa(v);a=w+(f[(f[w>>2]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]&-75|8;x=0;ia(170,w|0,v|0)|0;a=x;x=0;do if(a&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){v=f[v>>2]|0;t$a(s,j?0-v|0:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];PGa(w);break e}g=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;v=j7a(92846)|0;x=0;va(87,q|0,92846,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,q|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(q);if(!e)break}else d=Ia()|0;La(g|0)}while(0);PGa(w)}h=168;break d}else if((h|0)==103){f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;_Z(v,e,j7a(e)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Laa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Xra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1879,h|0,v|0);q=x;x=0;if(q&1){d=Ia()|0;MTa(i);cXa(h);t1a(g);MTa(v)}else{MTa(v);x=0;ia(170,w|0,v|0)|0;q=x;x=0;do if(q&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){v=f[v>>2]|0;t$a(s,(b[a>>0]|0)==45?0-v|0:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];PGa(w);break e}g=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;v=j7a(92846)|0;x=0;va(87,n|0,92846,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,n|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(n);if(!e)break}else d=Ia()|0;La(g|0)}while(0);PGa(w)}h=168;break d}break}case 2:{g=b[a>>0]|0;switch(g<<24>>24){case 48:{e=a+1|0;if((b[e>>0]|0)==120)h=124;else{e=a;h=141}break}case 45:{e=a+1|0;if((b[e>>0]|0)==48?(b[a+2>>0]|0)==120:0)h=124;else h=141;break}default:{e=a;h=141}}if((h|0)==124){j=g<<24>>24==45;g=j?e:a;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;_Z(v,g,j7a(g)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Laa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Xra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1879,h|0,v|0);a=x;x=0;if(a&1){d=Ia()|0;MTa(i);cXa(h);t1a(g);MTa(v)}else{MTa(v);a=w+(f[(f[w>>2]|0)+-12>>2]|0)+4|0;f[a>>2]=f[a>>2]&-75|8;x=0;ia(171,w|0,v|0)|0;a=x;x=0;do if(a&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){a=f[v>>2]|0;v=f[v+4>>2]|0;q=SRa(0,0,a|0,v|0)|0;XSa(s,j?q:a,j?I:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];PGa(w);break e}g=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;v=j7a(92865)|0;x=0;va(87,o|0,92865,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,o|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(o);if(!e)break}else d=Ia()|0;La(g|0)}while(0);PGa(w)}h=168;break d}else if((h|0)==141){f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;_Z(v,e,j7a(e)|0);g=w+60|0;h=w+8|0;f[w>>2]=34572;f[g>>2]=34592;f[w+4>>2]=0;Laa(w+60|0,h);f[w+132>>2]=0;f[w+136>>2]=-1;f[w>>2]=43024;f[g>>2]=43044;Xra(h);f[h>>2]=39940;i=w+40|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[i+(e<<2)>>2]=0;e=e+1|0}f[w+52>>2]=0;f[w+56>>2]=8;x=0;ua(1879,h|0,v|0);q=x;x=0;if(q&1){d=Ia()|0;MTa(i);cXa(h);t1a(g);MTa(v)}else{MTa(v);x=0;ia(171,w|0,v|0)|0;q=x;x=0;do if(q&1)d=Ia()|0;else{if(!(f[w+(f[(f[w>>2]|0)+-12>>2]|0)+16>>2]&5)){a=(b[a>>0]|0)==45;q=f[v>>2]|0;v=f[v+4>>2]|0;p=SRa(0,0,q|0,v|0)|0;XSa(s,a?p:q,a?I:v);v=d+8|0;f[v>>2]=f[s>>2];f[v+4>>2]=f[s+4>>2];f[v+8>>2]=f[s+8>>2];f[v+12>>2]=f[s+12>>2];PGa(w);break e}g=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;v=j7a(92865)|0;x=0;va(87,m|0,92865,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,g|0,m|0);v=x;x=0;if(v&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(m);if(!e)break}else d=Ia()|0;La(g|0)}while(0);PGa(w)}h=168;break d}break}case 3:{HAa(v,+l7a(a,w));w=d+8|0;f[w>>2]=f[v>>2];f[w+4>>2]=f[v+4>>2];f[w+8>>2]=f[v+8>>2];f[w+12>>2]=f[v+12>>2];break}case 4:{pqa(v,+m7a(a,w));w=d+8|0;f[w>>2]=f[v>>2];f[w+4>>2]=f[v+4>>2];f[w+8>>2]=f[v+8>>2];f[w+12>>2]=f[v+12>>2];break}default:{d=0;h=167;break d}}while(0);if((f[d+8>>2]|0)==(c|0))h=167;else{g=Ea(20)|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;w=j7a(92884)|0;x=0;va(87,r|0,92884,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,g|0,r|0);w=x;x=0;if(w&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(r);if(!e){h=168;break}}else d=Ia()|0;La(g|0);h=168}}while(0);if((h|0)==167){u=t;return d|0}else if((h|0)==168)Ua(d|0);return 0}function Kc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0,w=0,x=0;x=u;u=u+16|0;n=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=f[33302]|0;c=m>>>a;if(c&3|0){b=(c&1^1)+a|0;a=133248+(b<<1<<2)|0;c=a+8|0;d=f[c>>2]|0;e=d+8|0;g=f[e>>2]|0;if((g|0)==(a|0))f[33302]=m&~(1<>2]=a;f[c>>2]=g}w=b<<3;f[d+4>>2]=w|3;w=d+w+4|0;f[w>>2]=f[w>>2]|1;w=e;u=x;return w|0}l=f[33304]|0;if(k>>>0>l>>>0){if(c|0){b=2<>>12&16;b=b>>>i;c=b>>>5&8;b=b>>>c;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;d=b>>>1&1;d=(c|i|g|a|d)+(b>>>d)|0;b=133248+(d<<1<<2)|0;a=b+8|0;g=f[a>>2]|0;i=g+8|0;c=f[i>>2]|0;if((c|0)==(b|0)){a=m&~(1<>2]=b;f[a>>2]=c;a=m}w=d<<3;h=w-k|0;f[g+4>>2]=k|3;e=g+k|0;f[e+4>>2]=h|1;f[g+w>>2]=h;if(l|0){d=f[33307]|0;b=l>>>3;c=133248+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=c}f[33304]=h;f[33307]=e;w=i;u=x;return w|0}g=f[33303]|0;if(g){c=(g&0-g)+-1|0;e=c>>>12&16;c=c>>>e;d=c>>>5&8;c=c>>>d;h=c>>>2&4;c=c>>>h;i=c>>>1&2;c=c>>>i;j=c>>>1&1;j=f[133512+((d|e|h|i|j)+(c>>>j)<<2)>>2]|0;c=j;i=j;j=(f[j+4>>2]&-8)-k|0;while(1){a=f[c+16>>2]|0;if(!a){a=f[c+20>>2]|0;if(!a)break}h=(f[a+4>>2]&-8)-k|0;e=h>>>0>>0;c=a;i=e?a:i;j=e?h:j}h=i+k|0;if(h>>>0>i>>>0){e=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=f[a>>2]|0;if(!b){a=i+16|0;b=f[a>>2]|0;if(!b){c=0;break}}while(1){d=b+20|0;c=f[d>>2]|0;if(!c){d=b+16|0;c=f[d>>2]|0;if(!c)break;else{b=c;a=d}}else{b=c;a=d}}f[a>>2]=0;c=b}else{c=f[i+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(e|0){b=f[i+28>>2]|0;a=133512+(b<<2)|0;if((i|0)==(f[a>>2]|0)){f[a>>2]=c;if(!c){f[33303]=g&~(1<>2]|0)==(i|0)?w:e+20|0)>>2]=c;if(!c)break}f[c+24>>2]=e;b=f[i+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[i+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(j>>>0<16){w=j+k|0;f[i+4>>2]=w|3;w=i+w+4|0;f[w>>2]=f[w>>2]|1}else{f[i+4>>2]=k|3;f[h+4>>2]=j|1;f[h+j>>2]=j;if(l|0){d=f[33307]|0;b=l>>>3;c=133248+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=c}f[33304]=j;f[33307]=h}w=i+8|0;u=x;return w|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;d=f[33303]|0;if(d){e=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{m=(a+1048320|0)>>>16&8;r=a<>>16&4;r=r<>>16&2;j=14-(i|m|j)+(r<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;c=f[133512+(j<<2)>>2]|0;a:do if(!c){c=0;a=0;r=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(f[c+4>>2]&-8)-k|0;if(h>>>0>>0)if(!h){a=c;e=0;r=65;break a}else{a=c;e=h}r=f[c+20>>2]|0;c=f[c+16+(i>>>31<<2)>>2]|0;g=(r|0)==0|(r|0)==(c|0)?g:r;if(!c){c=g;r=61;break}else i=i<<1}}while(0);if((r|0)==61){if((c|0)==0&(a|0)==0){a=2<>>12&16;m=m>>>h;g=m>>>5&8;m=m>>>g;i=m>>>2&4;m=m>>>i;j=m>>>1&2;m=m>>>j;c=m>>>1&1;a=0;c=f[133512+((g|h|i|j|c)+(m>>>c)<<2)>>2]|0}if(!c){i=a;h=e}else r=65}if((r|0)==65){g=c;while(1){m=(f[g+4>>2]&-8)-k|0;c=m>>>0>>0;e=c?m:e;a=c?g:a;c=f[g+16>>2]|0;if(!c)c=f[g+20>>2]|0;if(!c){i=a;h=e;break}else g=c}}if(((i|0)!=0?h>>>0<((f[33304]|0)-k|0)>>>0:0)?(l=i+k|0,l>>>0>i>>>0):0){g=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=f[a>>2]|0;if(!b){a=i+16|0;b=f[a>>2]|0;if(!b){b=0;break}}while(1){e=b+20|0;c=f[e>>2]|0;if(!c){e=b+16|0;c=f[e>>2]|0;if(!c)break;else{b=c;a=e}}else{b=c;a=e}}f[a>>2]=0}else{w=f[i+8>>2]|0;f[w+12>>2]=b;f[b+8>>2]=w}while(0);do if(g){a=f[i+28>>2]|0;c=133512+(a<<2)|0;if((i|0)==(f[c>>2]|0)){f[c>>2]=b;if(!b){d=d&~(1<>2]|0)==(i|0)?w:g+20|0)>>2]=b;if(!b)break}f[b+24>>2]=g;a=f[i+16>>2]|0;if(a|0){f[b+16>>2]=a;f[a+24>>2]=b}a=f[i+20>>2]|0;if(a){f[b+20>>2]=a;f[a+24>>2]=b}}while(0);b:do if(h>>>0<16){w=h+k|0;f[i+4>>2]=w|3;w=i+w+4|0;f[w>>2]=f[w>>2]|1}else{f[i+4>>2]=k|3;f[l+4>>2]=h|1;f[l+h>>2]=h;b=h>>>3;if(h>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=l;f[b+12>>2]=l;f[l+8>>2]=b;f[l+12>>2]=c;break}b=h>>>8;if(b)if(h>>>0>16777215)c=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;c=14-(t|v|c)+(w<>>15)|0;c=h>>>(c+7|0)&1|c<<1}else c=0;b=133512+(c<<2)|0;f[l+28>>2]=c;a=l+16|0;f[a+4>>2]=0;f[a>>2]=0;a=1<>2]=l;f[l+24>>2]=b;f[l+12>>2]=l;f[l+8>>2]=l;break}b=f[b>>2]|0;c:do if((f[b+4>>2]&-8|0)!=(h|0)){d=h<<((c|0)==31?0:25-(c>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{d=d<<1;b=a}}f[c>>2]=l;f[l+24>>2]=b;f[l+12>>2]=l;f[l+8>>2]=l;break b}while(0);v=b+8|0;w=f[v>>2]|0;f[w+12>>2]=l;f[v>>2]=l;f[l+8>>2]=w;f[l+12>>2]=b;f[l+24>>2]=0}while(0);w=i+8|0;u=x;return w|0}else m=k}else m=k}else m=-1;while(0);c=f[33304]|0;if(c>>>0>=m>>>0){b=c-m|0;a=f[33307]|0;if(b>>>0>15){w=a+m|0;f[33307]=w;f[33304]=b;f[w+4>>2]=b|1;f[a+c>>2]=b;f[a+4>>2]=m|3}else{f[33304]=0;f[33307]=0;f[a+4>>2]=c|3;w=a+c+4|0;f[w>>2]=f[w>>2]|1}w=a+8|0;u=x;return w|0}h=f[33305]|0;if(h>>>0>m>>>0){t=h-m|0;f[33305]=t;w=f[33308]|0;v=w+m|0;f[33308]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}if(!(f[33420]|0)){f[33422]=4096;f[33421]=4096;f[33423]=-1;f[33424]=-1;f[33425]=0;f[33413]=0;f[33420]=n&-16^1431655768;a=4096}else a=f[33422]|0;i=m+48|0;j=m+47|0;g=a+j|0;e=0-a|0;k=g&e;if(k>>>0<=m>>>0){w=0;u=x;return w|0}a=f[33412]|0;if(a|0?(l=f[33410]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){w=0;u=x;return w|0}d:do if(!(f[33413]&4)){c=f[33308]|0;e:do if(c){d=133656;while(1){a=f[d>>2]|0;if(a>>>0<=c>>>0?(q=d+4|0,(a+(f[q>>2]|0)|0)>>>0>c>>>0):0)break;a=f[d+8>>2]|0;if(!a){r=128;break e}else d=a}b=g-h&e;if(b>>>0<2147483647){a=sba(b|0)|0;if((a|0)==((f[d>>2]|0)+(f[q>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;r=145;break d}}else{d=a;r=136}}else b=0}else r=128;while(0);do if((r|0)==128){c=sba(0)|0;if((c|0)!=(-1|0)?(b=c,o=f[33421]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=f[33410]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){q=f[33412]|0;if(q|0?p>>>0<=o>>>0|p>>>0>q>>>0:0){b=0;break}a=sba(b|0)|0;if((a|0)==(c|0)){h=b;g=c;r=145;break d}else{d=a;r=136}}else b=0}while(0);do if((r|0)==136){c=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(d|0)!=(-1|0))))if((d|0)==(-1|0)){b=0;break}else{h=b;g=d;r=145;break d}a=f[33422]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=d;r=145;break d}if((sba(a|0)|0)==(-1|0)){sba(c|0)|0;b=0;break}else{h=a+b|0;g=d;r=145;break d}}while(0);f[33413]=f[33413]|4;r=143}else{b=0;r=143}while(0);if(((r|0)==143?k>>>0<2147483647:0)?(v=sba(k|0)|0,q=sba(0)|0,s=q-v|0,t=s>>>0>(m+40|0)>>>0,!((v|0)==(-1|0)|t^1|v>>>0>>0&((v|0)!=(-1|0)&(q|0)!=(-1|0))^1)):0){h=t?s:b;g=v;r=145}if((r|0)==145){b=(f[33410]|0)+h|0;f[33410]=b;if(b>>>0>(f[33411]|0)>>>0)f[33411]=b;j=f[33308]|0;f:do if(j){b=133656;while(1){a=f[b>>2]|0;c=b+4|0;d=f[c>>2]|0;if((g|0)==(a+d|0)){r=154;break}e=f[b+8>>2]|0;if(!e)break;else b=e}if(((r|0)==154?(f[b+12>>2]&8|0)==0:0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){f[c>>2]=d+h;w=(f[33305]|0)+h|0;t=j+8|0;t=(t&7|0)==0?0:0-t&7;v=j+t|0;t=w-t|0;f[33308]=v;f[33305]=t;f[v+4>>2]=t|1;f[j+w+4>>2]=40;f[33309]=f[33424];break}if(g>>>0<(f[33306]|0)>>>0)f[33306]=g;c=g+h|0;b=133656;while(1){if((f[b>>2]|0)==(c|0)){r=162;break}a=f[b+8>>2]|0;if(!a)break;else b=a}if((r|0)==162?(f[b+12>>2]&8|0)==0:0){f[b>>2]=g;l=b+4|0;f[l>>2]=(f[l>>2]|0)+h;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;b=c+8|0;b=c+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;f[l+4>>2]=m|3;g:do if((j|0)==(b|0)){w=(f[33305]|0)+i|0;f[33305]=w;f[33308]=k;f[k+4>>2]=w|1}else{if((f[33307]|0)==(b|0)){w=(f[33304]|0)+i|0;f[33304]=w;f[33307]=k;f[k+4>>2]=w|1;f[k+w>>2]=w;break}a=f[b+4>>2]|0;if((a&3|0)==1){h=a&-8;d=a>>>3;h:do if(a>>>0<256){a=f[b+8>>2]|0;c=f[b+12>>2]|0;if((c|0)==(a|0)){f[33302]=f[33302]&~(1<>2]=c;f[c+8>>2]=a;break}}else{g=f[b+24>>2]|0;a=f[b+12>>2]|0;do if((a|0)==(b|0)){c=b+16|0;d=c+4|0;a=f[d>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}}else c=d;while(1){e=a+20|0;d=f[e>>2]|0;if(!d){e=a+16|0;d=f[e>>2]|0;if(!d)break;else{a=d;c=e}}else{a=d;c=e}}f[c>>2]=0}else{w=f[b+8>>2]|0;f[w+12>>2]=a;f[a+8>>2]=w}while(0);if(!g)break;c=f[b+28>>2]|0;d=133512+(c<<2)|0;do if((f[d>>2]|0)!=(b|0)){w=g+16|0;f[((f[w>>2]|0)==(b|0)?w:g+20|0)>>2]=a;if(!a)break h}else{f[d>>2]=a;if(a|0)break;f[33303]=f[33303]&~(1<>2]=g;c=b+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(!c)break;f[a+20>>2]=c;f[c+24>>2]=a}while(0);b=b+h|0;e=h+i|0}else e=i;b=b+4|0;f[b>>2]=f[b>>2]&-2;f[k+4>>2]=e|1;f[k+e>>2]=e;b=e>>>3;if(e>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=k;f[b+12>>2]=k;f[k+8>>2]=b;f[k+12>>2]=c;break}b=e>>>8;do if(!b)d=0;else{if(e>>>0>16777215){d=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(t|v|d)+(w<>>15)|0;d=e>>>(d+7|0)&1|d<<1}while(0);b=133512+(d<<2)|0;f[k+28>>2]=d;a=k+16|0;f[a+4>>2]=0;f[a>>2]=0;a=f[33303]|0;c=1<>2]=k;f[k+24>>2]=b;f[k+12>>2]=k;f[k+8>>2]=k;break}b=f[b>>2]|0;i:do if((f[b+4>>2]&-8|0)!=(e|0)){d=e<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(e|0)){b=a;break i}else{d=d<<1;b=a}}f[c>>2]=k;f[k+24>>2]=b;f[k+12>>2]=k;f[k+8>>2]=k;break g}while(0);v=b+8|0;w=f[v>>2]|0;f[w+12>>2]=k;f[v>>2]=k;f[k+8>>2]=w;f[k+12>>2]=b;f[k+24>>2]=0}while(0);w=l+8|0;u=x;return w|0}b=133656;while(1){a=f[b>>2]|0;if(a>>>0<=j>>>0?(w=a+(f[b+4>>2]|0)|0,w>>>0>j>>>0):0)break;b=f[b+8>>2]|0}e=w+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;c=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;v=g+t|0;t=c-t|0;f[33308]=v;f[33305]=t;f[v+4>>2]=t|1;f[g+c+4>>2]=40;f[33309]=f[33424];c=a+4|0;f[c>>2]=27;f[b>>2]=f[33414];f[b+4>>2]=f[33415];f[b+8>>2]=f[33416];f[b+12>>2]=f[33417];f[33414]=g;f[33415]=h;f[33417]=0;f[33416]=b;b=a+24|0;do{v=b;b=b+4|0;f[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;f[c>>2]=f[c>>2]&-2;f[j+4>>2]=g|1;f[a>>2]=g;b=g>>>3;if(g>>>0<256){c=133248+(b<<1<<2)|0;a=f[33302]|0;b=1<>2]|0}f[a>>2]=j;f[b+12>>2]=j;f[j+8>>2]=b;f[j+12>>2]=c;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;d=14-(t|v|d)+(w<>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;c=133512+(d<<2)|0;f[j+28>>2]=d;f[j+20>>2]=0;f[e>>2]=0;b=f[33303]|0;a=1<>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}b=f[c>>2]|0;j:do if((f[b+4>>2]&-8|0)!=(g|0)){d=g<<((d|0)==31?0:25-(d>>>1)|0);while(1){c=b+16+(d>>>31<<2)|0;a=f[c>>2]|0;if(!a)break;if((f[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{d=d<<1;b=a}}f[c>>2]=j;f[j+24>>2]=b;f[j+12>>2]=j;f[j+8>>2]=j;break f}while(0);v=b+8|0;w=f[v>>2]|0;f[w+12>>2]=j;f[v>>2]=j;f[j+8>>2]=w;f[j+12>>2]=b;f[j+24>>2]=0}}else{w=f[33306]|0;if((w|0)==0|g>>>0>>0)f[33306]=g;f[33414]=g;f[33415]=h;f[33417]=0;f[33311]=f[33420];f[33310]=-1;f[33315]=133248;f[33314]=133248;f[33317]=133256;f[33316]=133256;f[33319]=133264;f[33318]=133264;f[33321]=133272;f[33320]=133272;f[33323]=133280;f[33322]=133280;f[33325]=133288;f[33324]=133288;f[33327]=133296;f[33326]=133296;f[33329]=133304;f[33328]=133304;f[33331]=133312;f[33330]=133312;f[33333]=133320;f[33332]=133320;f[33335]=133328;f[33334]=133328;f[33337]=133336;f[33336]=133336;f[33339]=133344;f[33338]=133344;f[33341]=133352;f[33340]=133352;f[33343]=133360;f[33342]=133360;f[33345]=133368;f[33344]=133368;f[33347]=133376;f[33346]=133376;f[33349]=133384;f[33348]=133384;f[33351]=133392;f[33350]=133392;f[33353]=133400;f[33352]=133400;f[33355]=133408;f[33354]=133408;f[33357]=133416;f[33356]=133416;f[33359]=133424;f[33358]=133424;f[33361]=133432;f[33360]=133432;f[33363]=133440;f[33362]=133440;f[33365]=133448;f[33364]=133448;f[33367]=133456;f[33366]=133456;f[33369]=133464;f[33368]=133464;f[33371]=133472;f[33370]=133472;f[33373]=133480;f[33372]=133480;f[33375]=133488;f[33374]=133488;f[33377]=133496;f[33376]=133496;w=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;v=g+t|0;t=w-t|0;f[33308]=v;f[33305]=t;f[v+4>>2]=t|1;f[g+w+4>>2]=40;f[33309]=f[33424]}while(0);b=f[33305]|0;if(b>>>0>m>>>0){t=b-m|0;f[33305]=t;w=f[33308]|0;v=w+m|0;f[33308]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}}f[33448]=12;w=0;u=x;return w|0}function Lc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+192|0;C=D+96|0;r=D;q=D+188|0;if((((f[c+4>>2]|0)==5?(e=f[c>>2]|0,!(R6a(e)|0)):0)?!(X7a(e)|0):0)?!(Dab(e)|0):0)d=0;else B=5;a:do if((B|0)==5){z=d$a(c)|0;b:do if(!z){j=l$a(c)|0;if(j|0){if((f[j+8>>2]|0)!=20){d=0;break a}i=j+12|0;e=f[i>>2]|0;d=d$a(e)|0;c:do if(d|0){g=d+8|0;do switch(f[g>>2]|0){case 15:{f[g>>2]=16;break a}case 16:{f[g>>2]=15;break a}case 17:{f[g>>2]=23;break a}case 18:{f[g>>2]=24;break a}case 19:{f[g>>2]=21;break a}case 20:{f[g>>2]=22;break a}case 21:{f[g>>2]=19;break a}case 22:{f[g>>2]=20;break a}case 23:{f[g>>2]=17;break a}case 24:{f[g>>2]=18;break a}case 40:{f[g>>2]=41;break a}case 41:{f[g>>2]=40;break a}case 42:{f[g>>2]=48;break a}case 43:{f[g>>2]=49;break a}case 44:{f[g>>2]=46;break a}case 45:{f[g>>2]=47;break a}case 46:{f[g>>2]=44;break a}case 47:{f[g>>2]=45;break a}case 48:{f[g>>2]=42;break a}case 49:{f[g>>2]=43;break a}case 57:{f[g>>2]=58;break a}case 58:{f[g>>2]=57;break a}case 70:{f[g>>2]=71;break a}case 71:{f[g>>2]=70;break a}default:break c}while(0)}while(0);d=GQ(e)|0;if(!d){d=0;break a}d=zR(a,d,_Ha(f[i>>2]|0)|0)|0;f[i>>2]=d;d=j;break a}e=B_a(c)|0;if(e|0){d=C_a(f[e+12>>2]|0)|0;if(!d){d=0;break a}if(!(g2a(f[d+8>>2]|0,f[e+8>>2]|0)|0)){d=0;break a}uVa(c);d=0;break a}l=Z$a(c)|0;if(l|0){m=l+8|0;e=kp(a,f[m>>2]|0)|0;f[m>>2]=e;i=l+16|0;g=f[i>>2]|0;j=g;if(!g){d=0;break a}k=l$a(e)|0;if((k|0)!=0?(f[k+8>>2]|0)==20:0){e=f[k+12>>2]|0;f[m>>2]=e;B=l+12|0;g=f[B>>2]|0;f[B>>2]=j;f[i>>2]=g}if((f[e+4>>2]|0)==5){d=0;break a}k=l+12|0;if(!(KZ(f[k>>2]|0,g)|0)){d=0;break a}j=fZa(f[a+40>>2]|0)|0;gA(C,j,f[m>>2]|0);j=qza(C)|0;_7(C);g=f[k>>2]|0;i=l+4|0;e=(f[g+4>>2]|0)==(f[i>>2]|0);if(!(j|e^1)){d=g;break a}a=f[a+36>>2]|0;Jbb(a)|0;_0a(C,a);do if(e){d=lNa(f[C>>2]|0,f[m>>2]|0)|0;d=Ipa(C,d,f[k>>2]|0)|0}else{if(v2a(f[i>>2]|0)|0?(f[(f[k>>2]|0)+4>>2]|0)==5:0){e=f[C>>2]|0;d=vwa(e,0)|0;g=d+12|0;if(j)faa(g,lNa(e,f[m>>2]|0)|0);faa(g,f[k>>2]|0);aKa(d,f[i>>2]|0);break}Ca(103567,103516,718,103554)}while(0);break a}i=b$a(c)|0;if(!i){d=u$a(c)|0;if(d|0){d=d+16|0;e=f[d>>2]|0;if(!e){d=0;break a}a=kp(a,e)|0;f[d>>2]=a;d=0;break a}d=w$a(c)|0;if(d|0){bO(f[d+24>>2]|0,d+12|0);d=0;break a}g=m$a(c)|0;if(!g){d=0;break a}bO(f[g+24>>2]|0,g+12|0);i=g+28|0;d=f[i>>2]|0;e=d$a(d)|0;if(!e){d=l$a(d)|0;if(!d){d=0;break a}if((f[d+8>>2]|0)!=24){d=0;break a}f[g+32>>2]=2;f[i>>2]=f[d+12>>2];d=0;break a}if((f[e+8>>2]|0)!=7){d=GQ(e)|0;if(!d){d=0;break a}a=_Ha(e)|0;if(a>>>0>0]<<3>>>0){d=0;break a}f[i>>2]=d;d=0;break a}d=n$a(f[e+16>>2]|0)|0;if(!d){d=0;break a}if((f[d+4>>2]|0)!=1){d=0;break a}C=TRa(d+8|0)|0;a=b[g+8>>0]|0;if(!((C|0)==255&a<<24>>24==1)?!((C|0)==65535&a<<24>>24==2):0){d=0;break a}f[i>>2]=f[e+12>>2];d=0;break a}j=i+16|0;d=kp(a,f[j>>2]|0)|0;f[j>>2]=d;g=l$a(d)|0;if((g|0)!=0?(f[g+8>>2]|0)==20:0){B=a+40|0;e=fZa(f[B>>2]|0)|0;d=i+8|0;gA(C,e,f[d>>2]|0);B=fZa(f[B>>2]|0)|0;e=i+12|0;x=0;va(101,r|0,B|0,f[e>>2]|0);B=x;x=0;if(B&1){d=Ia()|0;_7(C);break}if(!(xj(C,r)|0)){f[j>>2]=f[g+12>>2];B=f[d>>2]|0;f[d>>2]=f[e>>2];f[e>>2]=B}_7(r);_7(C);d=f[j>>2]|0}d=n$a(d)|0;do if(d){B=Jia(d+8|0)|0;if(!((B|0)==0&(I|0)==0)){B=fZa(f[a+40>>2]|0)|0;d=i+12|0;gA(C,B,f[d>>2]|0);B=qza(C)|0;_7(C);if(B)break;d=f[i+8>>2]|0;break a}B=fZa(f[a+40>>2]|0)|0;d=i+8|0;gA(C,B,f[d>>2]|0);B=qza(C)|0;_7(C);if(B){a=f[a+36>>2]|0;Jbb(a)|0;_0a(C,a);d=lNa(f[C>>2]|0,f[d>>2]|0)|0;d=Ipa(C,d,f[i+12>>2]|0)|0;break a}else{d=f[i+12>>2]|0;break a}}else d=i+12|0;while(0);e=i+8|0;if(!(KZ(f[e>>2]|0,f[d>>2]|0)|0)){d=0;break a}d=a+40|0;B=fZa(f[d>>2]|0)|0;gA(C,B,f[e>>2]|0);d:do if(!(qza(C)|0)){B=fZa(f[d>>2]|0)|0;x=0;va(101,r|0,B|0,f[j>>2]|0);B=x;x=0;e:do if(B&1)d=Ia()|0;else{f:do if(qza(r)|0){if(xj(r,C)|0){_7(r);break d}d=f[a+36>>2]|0;Jbb(d)|0;_0a(q,d);x=0;d=ia(125,f[q>>2]|0,f[j>>2]|0)|0;a=x;x=0;do if(!(a&1)){x=0;d=ja(51,q|0,d|0,f[e>>2]|0)|0;a=x;x=0;if(a&1)break;break f}while(0);d=Ia()|0;_7(r);break e}else d=f[e>>2]|0;while(0);_7(r);_7(C);break a}while(0);_7(C);break b}while(0);_7(C);d=0;break a}else{c=z+8|0;if((rxa(f[c>>2]|0)|0?(g=z+12|0,q=f[g>>2]|0,i=q,O6a(f[q>>2]|0)|0):0)?(j=z+16|0,k=f[j>>2]|0,!(O6a(f[k>>2]|0)|0)):0){f[g>>2]=k;f[j>>2]=i}d=eN(z)|0;g:do if(!d){d=f[c>>2]|0;switch(d|0){case 16:case 15:{k=z+16|0;g=n$a(f[k>>2]|0)|0;if(g|0){if((d|0)==15?(TRa(g+8|0)|0)==0:0){d=f[a+36>>2]|0;Jbb(d)|0;_0a(C,d);d=rBa(f[C>>2]|0,20,f[z+12>>2]|0)|0;break a}d=z+12|0;e=GQ(f[d>>2]|0)|0;if(!e)break g;i=_Ha(f[d>>2]|0)|0;p=zR(a,e,i)|0;f[d>>2]=p;d=g+8|0;p=TRa(d)|0;e=G1a(i)|0;q=B6a(p&~e)|0;if(!((q|0)!=0&q>>>0<(32-i|0)>>>0)?!((p&1<>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];d=z;break a}if(i>>>0<32){t$a(C,-2147483648);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];d=z;break a}else Ca(103506,103516,455,103554)}i=z+12|0;j=GQ(f[i>>2]|0)|0;if(!j){d=w$a(f[i>>2]|0)|0;if(!d)break g;e=GQ(f[k>>2]|0)|0;if(!e)break g;g=_Ha(f[k>>2]|0)|0;i=d+9|0;if(!(b[i>>0]|0))break g;if((g|0)!=(h[d+8>>0]<<3|0))break g;b[i>>0]=0;d=zR(a,e,g)|0;f[k>>2]=d;d=z;break a}d=GQ(f[k>>2]|0)|0;if(d|0){e=_Ha(f[i>>2]|0)|0;if((_Ha(f[k>>2]|0)|0)!=(e|0))break g;C=zR(a,j,e)|0;f[i>>2]=C;d=zR(a,d,e)|0;f[k>>2]=d;d=z;break a}g=w$a(f[k>>2]|0)|0;if(!g)break g;d=_Ha(f[i>>2]|0)|0;e=g+9|0;if(!(b[e>>0]|0))break g;if((d|0)!=(h[g+8>>0]<<3|0))break g;b[e>>0]=0;d=zR(a,j,d)|0;f[i>>2]=d;d=z;break a}case 0:{e=z+12|0;d=d$a(f[e>>2]|0)|0;if(((d|0?(f[d+8>>2]|0)==1:0)?(l=d+12|0,m=n$a(f[l>>2]|0)|0,m|0):0)?(TRa(m+8|0)|0)==0:0){f[l>>2]=f[z+16>>2];break a}d=d$a(f[z+16>>2]|0)|0;if(((d|0?(f[d+8>>2]|0)==1:0)?(o=d+12|0,p=n$a(f[o>>2]|0)|0,p|0):0)?(TRa(p+8|0)|0)==0:0){f[o>>2]=f[e>>2];break a}d=Wj(a,z)|0;if(!d)break g;else break a}case 1:{d=Wj(a,z)|0;if(!d)break g;else break a}default:break g}}else{e=zY(z,C)|0;g=f[C>>2]|0;do if(((g|0)==0?(n=w$a(Pv(d)|0)|0,(n|0)!=0):0)?V7a(b[n+20>>0]|0)|0:0){r=b[n+8>>0]|0;if(!((e|0)==8&r<<24>>24==1)?!((e|0)==16&r<<24>>24==2):0){B=18;break}i=n+9|0;if((n|0)==(d|0)|(b[i>>0]|0)!=0)b[i>>0]=1;else B=18}else B=18;while(0);if((B|0)==18){if((g+(Ii(d,a)|0)|0)>>>0>=e>>>0?!(w3(a,d,e)|0):0)break;d=$P(z)|0}break a}while(0);k=z+16|0;j=n$a(f[k>>2]|0)|0;h:do if(j){do if((f[c>>2]|0)==7){e=TRa(j+8|0)|0;i=z+12|0;d=f[i>>2]|0;if((e|0)==-1)break a;g=w$a(d)|0;if(!g){e=woa(e)|0;if(!e)break;if((Ii(d,a)|0)>>>0>e>>>0)break;d=f[i>>2]|0;break a}else{r=b[g+8>>0]|0;if(!((e|0)==255&r<<24>>24==1)?!((e|0)==65535&r<<24>>24==2):0)break;b[g+9>>0]=0;break a}}while(0);d=gi(a,z)|0;if(d|0)break a;e=z+12|0;d=d$a(f[e>>2]|0)|0;i:do if((d|0?(s=f[d+8>>2]|0,(s|0)==(f[c>>2]|0)):0)?(t=n$a(f[d+16>>2]|0)|0,t|0):0)switch(s|0){case 7:{a=t+8|0;vaa(C,a,j+8|0);f[a>>2]=f[C>>2];f[a+4>>2]=f[C+4>>2];f[a+8>>2]=f[C+8>>2];f[a+12>>2]=f[C+12>>2];break a}case 8:{a=t+8|0;yaa(C,a,j+8|0);f[a>>2]=f[C>>2];f[a+4>>2]=f[C+4>>2];f[a+8>>2]=f[C+8>>2];f[a+12>>2]=f[C+12>>2];break a}case 37:case 36:case 35:case 12:case 11:case 10:{g=(V4(t)|0)+(V4(j)|0)|0;i=j+4|0;if((g|0)!=(eHa(g,f[i>>2]|0)|0))break i;H8(C,g,f[i>>2]|0);a=t+8|0;f[a>>2]=f[C>>2];f[a+4>>2]=f[C+4>>2];f[a+8>>2]=f[C+8>>2];f[a+12>>2]=f[C+12>>2];break a}default:break i}while(0);if((f[j+4>>2]|0)==1?(v=TRa(j+8|0)|0,DVa(v)|0):0)switch(f[c>>2]|0){case 2:{d=p_(z,v)|0;break a}case 6:{d=j1(z,v)|0;break a}default:break h}}else e=z+12|0;while(0);if(O6a(f[f[e>>2]>>2]|0)|0?(w=iB(a,z)|0,w|0):0){d=w;break a}d=f[c>>2]|0;if((d|0)==7){d=l$a(f[e>>2]|0)|0;if((((d|0)!=0?(f[d+8>>2]|0)==20:0)?(y=l$a(f[k>>2]|0)|0,(y|0)!=0):0)?(f[y+8>>2]|0)==20:0){C=d+12|0;a=f[C>>2]|0;f[C>>2]=z;f[e>>2]=a;f[k>>2]=f[y+12>>2];f[c>>2]=8;break a}else B=94}else if((d+-7|0)>>>0<2)B=94;if((B|0)==94){d=pi(a,z)|0;if(d|0)break a;d=f[c>>2]|0}if(W7(d)|0?(A=Mt(z)|0,A|0):0){d=A;break a}B=fZa(f[a+40>>2]|0)|0;gA(C,B,f[e>>2]|0);if(qza(C)|0){_7(C);d=0;break a}x=0;d=ia(157,f[e>>2]|0,f[k>>2]|0)|0;B=x;x=0;if(B&1){d=Ia()|0;_7(C);break}_7(C);if(!d){d=0;break a}d=rG(a,z)|0;break a}while(0);Ua(d|0)}while(0);u=D;return d|0}function Mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+96|0;w=B+72|0;A=B+56|0;s=B+64|0;C=B+40|0;v=B+36|0;q=B+20|0;n=B+8|0;j=B+32|0;l=B;o=B+16|0;f[s>>2]=b;f[C>>2]=0;z=C+4|0;f[z>>2]=0;t=C+8|0;f[t>>2]=0;y=a+16|0;g=a+36|0;i=f[g>>2]|0;Jbb(i)|0;_0a(v,i);i=SFa(f[b>>2]|0)|0;m=a+56|0;c=Wz(m,s)|0;e=(c|0)==0;a:do if(!i){if(!e)d9(C,c+12|0);e=L_a(b)|0;if(e|0){if(!(Qab(f[e+4>>2]|0)|0)){r=164;break}d=e+12|0;c=f[d>>2]|0;if((f[c+4>>2]|0)==5){Zoa(y,c)|0;r=164;break}gLa(e,0);f[w>>2]=e;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,w|0);q=x;x=0;if(q&1){c=Ia()|0;break}}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ja(46,f[v>>2]|0,f[e+8>>2]|0,f[(f[d>>2]|0)+4>>2]|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}else{Zoa(y,c)|0;r=164;break}}i=u$a(b)|0;if(i|0){b=i+12|0;c=f[b>>2]|0;if(!c){r=164;break}g=f[c+4>>2]|0;if(!(v2a(g)|0))if((g|0)==5){Zoa(y,c)|0;r=164;break}else{x=0;wa(71,112103,112038,222,112063);x=0;c=Ia()|0;break}f[j>>2]=f[i+8>>2];x=0;f[w>>2]=f[j>>2];e=ja(82,a|0,w|0,g|0)|0;q=x;x=0;b:do if(!(q&1)){x=0;c=ja(45,v|0,e|0,f[b>>2]|0)|0;q=x;x=0;do if(!(q&1)){f[w>>2]=c;d=f[z>>2]|0;if(d>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,w|0);q=x;x=0;if(q&1)break}else{f[d>>2]=c;f[z>>2]=(f[z>>2]|0)+4}do if(f[i+16>>2]|0){f[w>>2]=i;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,w|0);q=x;x=0;if(q&1){c=Ia()|0;break a}}else{f[c>>2]=i;f[z>>2]=(f[z>>2]|0)+4}c=f[i+4>>2]|0;if(v2a(c)|0){x=0;c=ja(46,f[v>>2]|0,e|0,g|0)|0;q=x;x=0;if(q&1)break b;Zoa(y,c)|0;break}if((c|0)!=5){x=0;wa(71,112079,112038,215,112063);x=0;break b}x=0;c=ga(322,f[v>>2]|0)|0;q=x;x=0;if(q&1)break b;Zoa(y,c)|0}while(0);f[b>>2]=0;Cqa(i);r=164;break a}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break}i=k$a(b)|0;if((i|0)!=0?(p=i+32|0,h=f[p>>2]|0,(h|0)!=0):0){j=f[h+4>>2]|0;if(!(v2a(j)|0))if((j|0)==5){Zoa(y,h)|0;r=164;break}else{x=0;wa(71,112103,112038,249,112063);x=0;c=Ia()|0;break}b=f[a+32>>2]|0;Jbb(b)|0;x=0;b=ia(96,b|0,j|0)|0;m=x;x=0;if(m&1){c=Ia()|0;break}x=0;c=ja(45,v|0,b|0,f[p>>2]|0)|0;m=x;x=0;do if(!(m&1)){f[w>>2]=c;d=f[z>>2]|0;if(d>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,w|0);m=x;x=0;if(m&1)break}else{f[d>>2]=c;f[z>>2]=(f[z>>2]|0)+4}DUa(q);g=i+8|0;Q$a(A,g);LUa(n,g);g=A+4|0;e=f[n>>2]|0;c=f[n+4>>2]|0;while(1){if(!(qTa(f[A>>2]|0,f[g>>2]|0,e,c)|0)){r=135;break}x=0;d=ga(256,A|0)|0;r=x;x=0;if(r&1){r=141;break}f[l>>2]=f[d>>2];x=0;wa(82,w|0,q|0,l|0,l|0);r=x;x=0;if(r&1){r=141;break}YYa(A)}do if((r|0)==135){n=i+24|0;x=0;wa(82,A|0,q|0,n|0,n|0);n=x;x=0;if(n&1){c=Ia()|0;break}g=q+4|0;d=f[q>>2]|0;while(1){if((d|0)==(g|0)){r=159;break}f[o>>2]=f[d+16>>2];x=0;f[w>>2]=f[o>>2];c=ja(82,a|0,w|0,j|0)|0;r=x;x=0;if(r&1){r=158;break}x=0;e=ja(46,f[v>>2]|0,b|0,j|0)|0;r=x;x=0;if(r&1){r=158;break}x=0;c=ja(45,v|0,c|0,e|0)|0;r=x;x=0;if(r&1){r=158;break}f[A>>2]=c;e=f[z>>2]|0;if(e>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,A|0);r=x;x=0;if(r&1){r=158;break}}else{f[e>>2]=c;f[z>>2]=(f[z>>2]|0)+4}c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}d=c}if((r|0)==158){c=Ia()|0;break}else if((r|0)==159){f[p>>2]=0;k7a(i);RTa(q);r=164;break a}}else if((r|0)==141)c=Ia()|0;while(0);RTa(q);break a}while(0);c=Ia()|0}else r=164}else{if(!e){x=0;wa(71,112e3,112038,94,112063);x=0;c=Ia()|0;break}l=v$a(b)|0;if(l|0){k=f[g>>2]|0;Jbb(k)|0;NVa(w,k+144|0);k=l+12|0;Q$a(A,k);LUa(q,k);j=A+4|0;i=f[q>>2]|0;h=f[q+4>>2]|0;c:while(1){if(!(qTa(f[A>>2]|0,f[j>>2]|0,i,h)|0)){r=21;break}x=0;c=ga(253,A|0)|0;r=x;x=0;if(r&1){r=13;break}g=f[c>>2]|0;f[n>>2]=g;c=Wz(m,n)|0;if(c|0){b=c+12|0;d=c+16|0;e=f[d>>2]|0;c=f[b>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(81,w|0,f[c>>2]|0);r=x;x=0;if(r&1){r=17;break c}c=c+4|0}f[d>>2]=f[b>>2]}x=0;ua(81,w|0,g|0);r=x;x=0;if(r&1){r=14;break}YYa(A)}d:do if((r|0)==13){c=Ia()|0;r=20}else if((r|0)==14){c=Ia()|0;r=20}else if((r|0)==17){c=Ia()|0;r=20}else if((r|0)==21){jma(k,w);g=f[l+4>>2]|0;e:do if(v2a(g)|0){c=BB(a+76|0,l+8|0)|0;if(!c){c=f[a+32>>2]|0;Jbb(c)|0;x=0;c=ia(96,c|0,g|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break d}}else c=f[c+12>>2]|0;x=0;e=ga(218,k|0)|0;q=x;x=0;do if(!(q&1)){d=f[e>>2]|0;if(v2a(f[d+4>>2]|0)|0){x=0;d=ja(45,v|0,c|0,d|0)|0;q=x;x=0;if(q&1)break;f[e>>2]=d}x=0;ua(1874,l|0,0);q=x;x=0;if(!(q&1)){x=0;c=ja(46,f[v>>2]|0,c|0,g|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break d}Zoa(y,c)|0;f[A>>2]=l;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,A|0);q=x;x=0;if(q&1){c=Ia()|0;break d}}else{f[c>>2]=l;f[z>>2]=(f[z>>2]|0)+4}break e}}while(0);c=Ia()|0;break d}while(0);x=0;ua(1874,l|0,0);q=x;x=0;if(q&1){c=Ia()|0;break}else{r=164;break a}}while(0);break}l=Z$a(b)|0;if(!l){h=J$a(b)|0;if(!h){x=0;sa(5);x=0;c=Ia()|0;break}i=h+12|0;b=f[i>>2]|0;g=h+4|0;c=f[g>>2]|0;do if(v2a(c)|0){e=f[a+32>>2]|0;Jbb(e)|0;x=0;e=ia(96,e|0,c|0)|0;q=x;x=0;if((!(q&1)?(x=0,k=ja(45,v|0,e|0,f[i>>2]|0)|0,q=x,x=0,!(q&1)):0)?(f[i>>2]=k,x=0,d=ja(46,f[v>>2]|0,e|0,c|0)|0,q=x,x=0,!(q&1)):0){f[w>>2]=h;c=f[z>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,w|0);q=x;x=0;if(q&1){c=Ia()|0;break a}}else{f[c>>2]=h;f[z>>2]=(f[z>>2]|0)+4}f[g>>2]=0;c=f[i>>2]|0;break}c=Ia()|0;break a}else{d=h;c=b}while(0);x=0;c=ja(81,a|0,b|0,c|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}else{f[i>>2]=c;v_a(h);Zoa(y,d)|0;r=164;break}}x=0;b=ja(81,a|0,f[l+8>>2]|0,l|0)|0;q=x;x=0;if(q&1){c=Ia()|0;break}i=l+12|0;h=f[i>>2]|0;k=l+16|0;j=f[k>>2]|0;d=f[l+4>>2]|0;f[w>>2]=0;f:do if(v2a(d)|0){e=f[a+32>>2]|0;Jbb(e)|0;x=0;e=ia(96,e|0,d|0)|0;q=x;x=0;do if(!(q&1)){c=f[i>>2]|0;if(v2a(f[c+4>>2]|0)|0){x=0;c=ja(45,v|0,e|0,c|0)|0;q=x;x=0;if(q&1)break;f[i>>2]=c}c=f[k>>2]|0;if(c|0?v2a(f[c+4>>2]|0)|0:0){x=0;c=ja(45,v|0,e|0,c|0)|0;q=x;x=0;if(q&1)break;f[k>>2]=c}f[w>>2]=b;x=0;c=ja(46,f[v>>2]|0,e|0,d|0)|0;q=x;x=0;if(!(q&1)){g=c;c=f[i>>2]|0;d=b;e=b;r=59;break f}}while(0);c=Ia()|0}else{g=b;c=h;d=0;e=0;r=59}while(0);g:do if((r|0)==59){x=0;c=ja(81,a|0,h|0,c|0)|0;q=x;x=0;h:do if(!(q&1)){f[i>>2]=c;c=f[k>>2]|0;if(c|0){x=0;c=ja(81,a|0,j|0,c|0)|0;q=x;x=0;if(q&1)break;f[k>>2]=c}NI(l);do if(d|0){x=0;ta(507,d|0);q=x;x=0;if(q&1){c=Ia()|0;break g}c=f[z>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(640,C|0,w|0);q=x;x=0;if(q&1)break h;else break}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4;break}}while(0);Zoa(y,g)|0;r=164;break a}while(0);c=Ia()|0}while(0)}while(0);i:do if((r|0)==164){c=f[f[y>>2]>>2]|0;g=Jbb(c)|0;f[s>>2]=g;e=g;x=0;ta(507,g|0);q=x;x=0;if(q&1){c=Ia()|0;break}d=f[c>>2]|0;j:do if(!(O6a(d)|0)){b=f[c+4>>2]|0;k:do switch(b|0){case 5:{c=f[z>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(640,C|0,s|0);t=x;x=0;if(t&1)break k}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ga(322,f[v>>2]|0)|0;v=x;x=0;if(!(v&1)){Zoa(y,c)|0;break j}break}case 0:{if(b7a(d)|0)break j;c=f[z>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(640,C|0,s|0);t=x;x=0;if(t&1)break k}else{f[c>>2]=e;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ga(250,f[v>>2]|0)|0;v=x;x=0;if(!(v&1)){Zoa(y,c)|0;break j}break}default:{e=f[a+32>>2]|0;Jbb(e)|0;x=0;e=ia(96,e|0,b|0)|0;s=x;x=0;l:do if(!(s&1)){x=0;c=ja(45,v|0,e|0,g|0)|0;s=x;x=0;do if(!(s&1)){f[w>>2]=c;d=f[z>>2]|0;if(d>>>0>=(f[t>>2]|0)>>>0){x=0;ua(1836,C|0,w|0);t=x;x=0;if(t&1)break}else{f[d>>2]=c;f[z>>2]=(f[z>>2]|0)+4}x=0;c=ja(46,f[v>>2]|0,e|0,b|0)|0;v=x;x=0;if(v&1)break l;Zoa(y,c)|0;break j}while(0);c=Ia()|0;break i}while(0);c=Ia()|0;break i}}while(0);c=Ia()|0;break i}while(0);m:do if((f[C>>2]|0)!=(f[z>>2]|0)){x=0;c=ga(323,y|0)|0;v=x;x=0;n:do if(v&1)c=Ia()|0;else{f[w>>2]=c;o:do if((c|0)!=0?!(SFa(f[c>>2]|0)|0):0){x=0;i=ia(195,a+56|0,w|0)|0;y=x;x=0;if(y&1){c=Ia()|0;break n}d=f[z>>2]|0;e=i+4|0;g=i+8|0;c=f[C>>2]|0;while(1){if((c|0)==(d|0))break o;b=f[c>>2]|0;f[A>>2]=b;h=f[e>>2]|0;if((h|0)==(f[g>>2]|0)){x=0;ua(640,i|0,A|0);z=x;x=0;if(z&1)break}else{f[h>>2]=b;f[e>>2]=(f[e>>2]|0)+4}c=c+4|0}c=Ia()|0;break n}else r=202;while(0);do if((r|0)==202){c=Jbb(f[f[y>>2]>>2]|0)|0;f[A>>2]=c;x=0;c=ia(196,a+56|0,A|0)|0;A=x;x=0;if(A&1){c=Ia()|0;break n}else{d9(c,C);break}}while(0);break m}while(0);break i}while(0);zSa(C);u=B;return}while(0);zSa(C);Ua(c|0)}function Nc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0.0,h=0.0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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,X=0;P=u;u=u+192|0;R=P+16|0;V=P+172|0;S=P+160|0;X=P+136|0;T=P+120|0;Q=P+108|0;M=P;N=P+156|0;O=P+132|0;L=c+12|0;v=c+16|0;d=f[v>>2]|0;a:do if((Jbb(d)|0)>>>0>=2){w=a+28|0;y=X+16|0;z=X+4|0;A=X+12|0;B=X+16|0;C=X+8|0;D=V+16|0;E=V+4|0;F=V+12|0;G=V+16|0;H=V+8|0;I=T+4|0;J=T+8|0;K=a+32|0;t=a+20|0;c=0;b:while(1){if(c>>>0>=(d+-1|0)>>>0)break a;d=ODa(L,c)|0;d=m7(f[d>>2]|0)|0;if(d){gA(R,f[w>>2]|0,d);s=qza(R)|0;_7(R);j=c+1|0;if(s)c=j;else{f[X>>2]=0;f[X+4>>2]=0;f[X+8>>2]=0;f[X+12>>2]=0;f[y>>2]=1065353216;x=0;a=ia(75,L|0,c|0)|0;s=x;x=0;if(s&1){U=86;break}x=0;p=ga(291,f[a>>2]|0)|0;s=x;x=0;if(s&1){U=86;break}f[R>>2]=p;m=f[z>>2]|0;o=(m|0)==0;c:do if(!o){k=m+-1|0;l=(k&m|0)==0;if(!l)if(p>>>0>>0)e=p;else e=(p>>>0)%(m>>>0)|0;else e=k&p;a=f[(f[X>>2]|0)+(e<<2)>>2]|0;if(!a)U=25;else do{a=f[a>>2]|0;if(!a){U=25;break c}i=f[a+4>>2]|0;if((i|0)!=(p|0)){if(!l){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&k;if((i|0)!=(e|0)){U=25;break c}}}while((f[a+8>>2]|0)!=(p|0))}else{e=0;U=25}while(0);if((U|0)==25){U=0;x=0;wa(137,S|0,X|0,p|0,R|0);s=x;x=0;if(s&1){U=86;break}g=+(((f[A>>2]|0)+1|0)>>>0);h=+n[B>>2];do if(o|h*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;r=~~+W(+(g/h))>>>0;x=0;ua(803,X|0,(s>>>0>>0?r:s)|0);s=x;x=0;if(s&1){U=32;break b}a=f[z>>2]|0;e=a+-1|0;if(!(e&a)){k=a;e=e&p;break}if(p>>>0>>0){k=a;e=p}else{k=a;e=(p>>>0)%(a>>>0)|0}}else k=m;while(0);a=f[(f[X>>2]|0)+(e<<2)>>2]|0;if(!a){i=f[S>>2]|0;f[i>>2]=f[C>>2];f[C>>2]=i;f[(f[X>>2]|0)+(e<<2)>>2]=C;a=f[i>>2]|0;if(a|0){a=f[a+4>>2]|0;e=k+-1|0;if(e&k){if(a>>>0>=k>>>0)a=(a>>>0)%(k>>>0)|0}else a=a&e;f[(f[X>>2]|0)+(a<<2)>>2]=i}}else{s=f[S>>2]|0;f[s>>2]=f[a>>2];f[a>>2]=s}f[A>>2]=(f[A>>2]|0)+1}s=j;d:while(1){if(s>>>0>=(Jbb(f[v>>2]|0)|0)>>>0)break;x=0;a=ia(75,L|0,s|0)|0;r=x;x=0;if(r&1){U=88;break b}x=0;a=ga(292,f[a>>2]|0)|0;r=x;x=0;if(r&1){U=88;break b}x=0;a=ia(157,a|0,d|0)|0;r=x;x=0;if(r&1){U=88;break b}if(!a)break;x=0;a=ia(75,L|0,s|0)|0;r=x;x=0;if(r&1){U=89;break b}x=0;p=ga(291,f[a>>2]|0)|0;r=x;x=0;if(r&1){U=89;break b}f[R>>2]=p;m=f[z>>2]|0;o=(m|0)==0;e:do if(o)e=0;else{k=m+-1|0;l=(k&m|0)==0;do if(l)e=k&p;else{if(p>>>0>>0){e=p;break}e=(p>>>0)%(m>>>0)|0}while(0);a=f[(f[X>>2]|0)+(e<<2)>>2]|0;if(!a)break;while(1){a=f[a>>2]|0;if(!a)break e;i=f[a+4>>2]|0;if((i|0)!=(p|0)){do if(l)i=i&k;else{if(i>>>0>>0)break;i=(i>>>0)%(m>>>0)|0}while(0);if((i|0)!=(e|0))break e}if((f[a+8>>2]|0)==(p|0)){U=67;break d}}}while(0);x=0;wa(137,V|0,X|0,p|0,R|0);r=x;x=0;if(r&1){U=89;break b}g=+(((f[A>>2]|0)+1|0)>>>0);h=+n[B>>2];do if(o|h*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;q=~~+W(+(g/h))>>>0;x=0;ua(803,X|0,(r>>>0>>0?q:r)|0);r=x;x=0;if(r&1){U=75;break b}a=f[z>>2]|0;e=a+-1|0;if(!(e&a)){k=a;e=e&p;break}if(p>>>0>>0){k=a;e=p;break}k=a;e=(p>>>0)%(a>>>0)|0}else k=m;while(0);a=f[(f[X>>2]|0)+(e<<2)>>2]|0;do if(!a){i=f[V>>2]|0;f[i>>2]=f[C>>2];f[C>>2]=i;f[(f[X>>2]|0)+(e<<2)>>2]=C;a=f[i>>2]|0;if(!a)break;a=f[a+4>>2]|0;e=k+-1|0;do if(!(e&k))a=a&e;else{if(a>>>0>>0)break;a=(a>>>0)%(k>>>0)|0}while(0);f[(f[X>>2]|0)+(a<<2)>>2]=i}else{r=f[V>>2]|0;f[r>>2]=f[a>>2];f[a>>2]=r}while(0);f[A>>2]=(f[A>>2]|0)+1;s=s+1|0}if((U|0)==67)U=0;k=s-c|0;if(k>>>0>2){x=0;a=ia(75,L|0,c|0)|0;r=x;x=0;if(r&1){U=98;break}x=0;a=ga(291,f[a>>2]|0)|0;r=x;x=0;if(r&1){U=98;break}r=a;i=a;while(1){if(j>>>0>=s>>>0)break;x=0;a=ia(75,L|0,j|0)|0;q=x;x=0;if(q&1){U=103;break b}a=f[a>>2]|0;x=0;e=ga(291,a|0)|0;q=x;x=0;if(q&1){U=104;break b}x=0;a=ga(291,a|0)|0;q=x;x=0;if(q&1){U=105;break b}j=j+1|0;r=e>>>0>>0?e:r;i=i>>>0>>0?a:i}q=i-r|0;if(!(q>>>0>1024|q>>>0>(k*3|0)>>>0)){f[V>>2]=0;f[V+4>>2]=0;f[V+8>>2]=0;f[V+12>>2]=0;f[D>>2]=1065353216;q=c;while(1){if(q>>>0>=s>>>0)break;x=0;a=ia(75,L|0,q|0)|0;p=x;x=0;if(p&1){U=146;break b}x=0;a=ga(293,f[a>>2]|0)|0;p=x;x=0;if(p&1){U=146;break b}m=a+8|0;p=W7a(m)|0;j=f[E>>2]|0;o=(j|0)==0;f:do if(o){e=0;U=126}else{k=j+-1|0;l=(k&j|0)==0;do if(l)e=k&p;else{if(p>>>0>>0){e=p;break}e=(p>>>0)%(j>>>0)|0}while(0);a=f[(f[V>>2]|0)+(e<<2)>>2]|0;if(!a){U=126;break}do{a=f[a>>2]|0;if(!a){U=126;break f}i=f[a+4>>2]|0;if((i|0)!=(p|0)){do if(l)i=i&k;else{if(i>>>0>>0)break;i=(i>>>0)%(j>>>0)|0}while(0);if((i|0)!=(e|0)){U=126;break f}}}while(!(g2a(f[a+8>>2]|0,f[m>>2]|0)|0))}while(0);if((U|0)==126){U=0;x=0;wa(95,R|0,V|0,p|0,m|0);m=x;x=0;if(m&1){U=146;break b}g=+(((f[F>>2]|0)+1|0)>>>0);h=+n[G>>2];do if(o|h*+(j>>>0)>>0<3|(j+-1&j|0)!=0)&1;m=~~+W(+(g/h))>>>0;x=0;ua(680,V|0,(o>>>0>>0?m:o)|0);o=x;x=0;if(o&1){U=133;break b}a=f[E>>2]|0;e=a+-1|0;if(!(e&a)){j=a;e=e&p;break}if(p>>>0>>0){j=a;e=p;break}j=a;e=(p>>>0)%(a>>>0)|0}while(0);a=f[(f[V>>2]|0)+(e<<2)>>2]|0;do if(!a){i=f[R>>2]|0;f[i>>2]=f[H>>2];f[H>>2]=i;f[(f[V>>2]|0)+(e<<2)>>2]=H;a=f[i>>2]|0;if(!a)break;a=f[a+4>>2]|0;e=j+-1|0;do if(!(e&j))a=a&e;else{if(a>>>0>>0)break;a=(a>>>0)%(j>>>0)|0}while(0);f[(f[V>>2]|0)+(a<<2)>>2]=i}else{p=f[R>>2]|0;f[p>>2]=f[a>>2];f[a>>2]=p}while(0);f[F>>2]=(f[F>>2]|0)+1}q=q+1|0}Bab(S);e=0;do{x=0;ua(91,Q|0,e|0);e=e+1|0;q=x;x=0;if(q&1){U=155;break b}x=0;ia(83,Q|0,91209)|0;q=x;x=0;if(q&1){U=156;break b}f[T>>2]=f[Q>>2];f[T+4>>2]=f[Q+4>>2];f[T+8>>2]=f[Q+8>>2];a=0;while(1){if((a|0)==3)break;f[Q+(a<<2)>>2]=0;a=a+1|0}x=0;ua(83,R|0,T|0);q=x;x=0;if(q&1){U=157;break b}a=f[R>>2]|0;f[S>>2]=a;MTa(T);MTa(Q)}while((sB(V,S)|0)!=0);f[T>>2]=0;f[I>>2]=0;f[J>>2]=0;k=c;e=a;while(1){if(k>>>0>=s>>>0)break;x=0;a=ia(75,L|0,k|0)|0;q=x;x=0;if(q&1){U=173;break b}x=0;a=ga(293,f[a>>2]|0)|0;q=x;x=0;if(q&1){U=173;break b}j=f[a+8>>2]|0;x=0;a=ia(75,L|0,k|0)|0;q=x;x=0;if(q&1){U=175;break b}x=0;a=ga(291,f[a>>2]|0)|0;q=x;x=0;if(q&1){U=175;break b}e=a-r|0;while(1){a=f[I>>2]|0;q=f[T>>2]|0;i=q;if(a-q>>2>>>0>e>>>0)break;if((f[J>>2]|0)==(a|0)){x=0;ua(1503,T|0,S|0);q=x;x=0;if(q&1){U=174;break b}}else{f[a>>2]=f[S>>2];f[I>>2]=(f[I>>2]|0)+4}}a=f[S>>2]|0;if(!(g2a(f[i+(e<<2)>>2]|0,a)|0)){U=178;break b}f[i+(e<<2)>>2]=j;k=k+1|0;e=a}q=f[t>>2]|0;Jbb(q)|0;_0a(Q,q);if(r){t$a(M,r);x=0;f[R>>2]=f[M>>2];f[R+4>>2]=f[M+4>>2];f[R+8>>2]=f[M+8>>2];f[R+12>>2]=f[M+12>>2];a=ia(50,Q|0,R|0)|0;r=x;x=0;if(r&1){U=183;break}x=0;d=ka(7,f[Q>>2]|0,1,d|0,a|0)|0;r=x;x=0;if(r&1){U=183;break}}f[N>>2]=e;f[O>>2]=e;x=0;f[R>>2]=f[O>>2];d=ka(18,Q|0,T|0,R|0,d|0)|0;r=x;x=0;if(r&1){U=183;break}x=0;f[R>>2]=f[N>>2];d=ja(72,Q|0,R|0,d|0)|0;r=x;x=0;if(r&1){U=183;break}e=s+-1|0;x=0;a=ia(75,L|0,e|0)|0;r=x;x=0;if(r&1){U=183;break}f[a>>2]=d;while(1){if(c>>>0>=e>>>0)break;x=0;d=ia(75,L|0,c|0)|0;r=x;x=0;if(r&1){U=192;break b}uVa(f[d>>2]|0);c=c+1|0}b[K>>0]=1;zSa(T);SQa(V)}}SQa(X);c=s}}else c=c+1|0;d=f[v>>2]|0}switch(U|0){case 32:{c=Ia()|0;d=f[S>>2]|0;f[S>>2]=0;if(d|0)Cbb(d);U=87;break}case 75:{c=Ia()|0;d=f[V>>2]|0;f[V>>2]=0;if(d|0)Cbb(d);U=90;break}case 86:{c=Ia()|0;U=87;break}case 88:{c=Ia()|0;break}case 89:{c=Ia()|0;U=90;break}case 98:{c=Ia()|0;break}case 103:{c=Ia()|0;break}case 104:{c=Ia()|0;break}case 105:{c=Ia()|0;break}case 133:{c=Ia()|0;d=f[R>>2]|0;f[R>>2]=0;if(d|0)Cbb(d);U=147;break}case 146:{c=Ia()|0;U=147;break}case 155:{c=Ia()|0;U=159;break}case 156:{c=Ia()|0;U=158;break}case 157:{c=Ia()|0;MTa(T);U=158;break}case 173:{c=Ia()|0;U=194;break}case 174:{c=Ia()|0;U=176;break}case 175:{c=Ia()|0;U=176;break}case 178:{x=0;wa(71,91218,91094,843,91246);x=0;c=Ia()|0;U=176;break}case 183:{c=Ia()|0;U=193;break}case 192:{c=Ia()|0;U=193;break}}if((U|0)!=87)if((U|0)!=90)if((U|0)==147)U=196;else if((U|0)==158){MTa(Q);U=159}else if((U|0)==176)U=194;else if((U|0)==193)U=194;if((U|0)==159)U=195;else if((U|0)==194){zSa(T);U=195}if((U|0)==195)U=196;if((U|0)==196)SQa(V);SQa(X);Ua(c|0)}while(0);u=P;return}function Oc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;M=u;u=u+128|0;N=M+104|0;t=M+100|0;O=M+88|0;A=M+76|0;B=M+68|0;G=M+52|0;F=M+40|0;C=M+36|0;w=M+24|0;E=M+12|0;D=M;y=M+72|0;z=M+64|0;L=vwa(f[c>>2]|0,0)|0;if(!((b[a+112>>0]|0)==0|d^1))faa(L+12|0,J_(c,0)|0);e=f[a+104>>2]|0;if(e|0)faa(L+12|0,e);s=a+48|0;e=Jbb(f[a+56>>2]|0)|0;if(!e)tt(L);else{g=(f[a+96>>2]|0)+8|0;h=f[g>>2]|0;n=sUa(h)|0;J=(n|0)!=0;if(J?(f[g>>2]=f[h+8>>2],(f[n+28>>2]|0)==(e|0)):0)H=(f[a+108>>2]|0)!=0;else H=1;f[t>>2]=0;m=a+64|0;g=Jbb(f[m>>2]|0)|0;v=a+108|0;I=T6a(s)|0;e=g;k=0;i=0;j=0;while(1){l=e;if((I|0)==(l|0))break;h=f[e+12>>2]|0;if(!(f[v>>2]|0))if(!(f[h+8>>2]|0))K=16;else h=k;else if(!(f[h+12>>2]|0))K=16;else h=k;if((K|0)==16){K=0;if(j|0){K=17;break}h=f[e+8>>2]|0;j=h;i=j}e=f[l+4>>2]|0;k=h}if((K|0)==17)Ca(89194,88985,202,89008);f[t>>2]=k;if(!i)Ca(89279,88985,206,89008);a:do if(!(f[v>>2]|0)){f[N>>2]=0;r=N+4|0;f[r>>2]=0;q=N+8|0;f[q>>2]=0;p=n+20|0;o=n+20|0;e=0;n=0;a=0;b:while(1){m=g;l=(I|0)==(m|0);if(!l){h=f[g+8>>2]|0;if((h|0)!=(f[t>>2]|0)){g=f[g+12>>2]|0;if(!(f[g+8>>2]|0)){K=28;break}else{j=h;k=g;K=31}}else{h=n;g=a}}else{g=f[t>>2]|0;x=0;h=ia(147,s|0,t|0)|0;K=x;x=0;if(K&1){K=25;break}j=g;k=f[h>>2]|0;K=31}do if((K|0)==31){K=0;if(H)i=(b[j+112>>0]|0)!=0;else i=0;if(J?mra(p,f[j+100>>2]|0)|0:0){g=k+4|0;if((f[g>>2]|0)!=1){K=36;break b}f[g>>2]=0;h=1}else h=0;if(!((!i?!(h|(f[k+4>>2]|0)!=0):0)?!(f[k+16>>2]|0):0)){x=0;g=ka(17,k|0,c|0,j|0,i|0)|0;G=x;x=0;if(G&1){K=46;break b}if(h){h=(uX(o,f[j+100>>2]|0)|0)+20|0;h=f[h>>2]|0;x=0;h=ja(f[(f[h>>2]|0)+8>>2]|0,h|0,c|0,d|0)|0;G=x;x=0;if(G&1){K=46;break b}x=0;g=ja(70,c|0,g|0,h|0)|0;G=x;x=0;if(G&1){K=46;break b}}if(g|0){if(l){K=49;break b}x=0;i=ka(8,c|0,f[k+8>>2]|0,g|0,0)|0;G=x;x=0;if(G&1){K=69;break b}f[O>>2]=i;g=f[r>>2]|0;h=i;if((g|0)==(f[q>>2]|0)){x=0;ua(1500,N|0,O|0);G=x;x=0;if(G&1){K=69;break b}}else{f[g>>2]=h;f[r>>2]=(f[r>>2]|0)+4}if(!n){if(e|0){K=68;break b}g=i;e=i}else{f[n+16>>2]=h;NI(n);g=f[O>>2]|0}h=g;g=a;break}}x=0;g=ja(53,f[c>>2]|0,20,f[k+8>>2]|0)|0;G=x;x=0;if(G&1){K=78;break b}if(a){x=0;g=ka(7,f[c>>2]|0,7,a|0,g|0)|0;G=x;x=0;if(G&1){K=78;break b}}if(l){K=81;break b}else h=n}while(0);n=h;a=g;g=f[m+4>>2]|0}c:do if((K|0)==25){e=Ia()|0;K=26}else if((K|0)==28){x=0;wa(71,89293,88985,227,89008);x=0;e=Ia()|0;K=26}else if((K|0)==36){x=0;wa(71,89312,88985,235,89008);x=0;e=Ia()|0}else if((K|0)==46)e=Ia()|0;else if((K|0)==49){d:do if(a){x=0;g=ka(8,c|0,a|0,g|0,0)|0;d=x;x=0;if(!(d&1)){x=0;h=ga(260,g|0)|0;d=x;x=0;do if(!(d&1)){f[O>>2]=h;i=f[r>>2]|0;if(i>>>0>=(f[q>>2]|0)>>>0){x=0;ua(1502,N|0,O|0);O=x;x=0;if(O&1)break}else{f[i>>2]=h;f[r>>2]=(f[r>>2]|0)+4}K=58;break d}while(0);e=Ia()|0;break c}}else K=58;while(0);if((K|0)==58){if(n|0){f[n+16>>2]=g;NI(n);K=81;break}if(!e){e=g;K=81;break}x=0;wa(71,89343,88985,257,89008);x=0}e=Ia()|0}else if((K|0)==68){x=0;wa(71,89343,88985,267,89008);x=0;e=Ia()|0;K=70}else if((K|0)==69){e=Ia()|0;K=70}else if((K|0)==78)e=Ia()|0;while(0);if((K|0)!=26)if((K|0)!=70)if((K|0)==81){while(1){g=f[r>>2]|0;if((g|0)==(f[N>>2]|0))break;d=g+-4|0;O=f[d>>2]|0;f[r>>2]=d;NI(O)}zSa(N);break}zSa(N);K=181}else{f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;_Z(N,89349,j7a(89349)|0);x=0;ua(1283,A|0,f[a+100>>2]|0);t=x;x=0;do if(t&1){e=Ia()|0;K=101}else{t=b[A+11>>0]|0;s=t<<24>>24<0;x=0;ja(49,N|0,(s?f[A>>2]|0:A)|0,(s?f[A+4>>2]|0:t&255)|0)|0;t=x;x=0;if(t&1){e=Ia()|0;MTa(A);K=101;break}f[O>>2]=f[N>>2];f[O+4>>2]=f[N+4>>2];f[O+8>>2]=f[N+8>>2];e=0;while(1){if((e|0)==3)break;f[N+(e<<2)>>2]=0;e=e+1|0}MTa(A);MTa(N);x=0;va(128,N|0,O|0,89357);t=x;x=0;do if(t&1){e=Ia()|0;K=104}else{x=0;ua(83,A|0,N|0);t=x;x=0;if(t&1){e=Ia()|0;MTa(N);K=104;break}MTa(N);x=0;va(128,N|0,O|0,89366);t=x;x=0;do if(t&1){e=Ia()|0;K=107}else{x=0;ua(83,B|0,N|0);t=x;x=0;if(t&1){e=Ia()|0;MTa(N);K=107;break}MTa(N);DUa(G);x=0;t=ia(99,f[c>>2]|0,0)|0;s=x;x=0;if(s&1)e=Ia()|0;else{f[F>>2]=0;o=F+4|0;f[o>>2]=0;p=F+8|0;f[p>>2]=0;q=n+20|0;r=D+11|0;s=D+4|0;n=n+20|0;e=t;g=Jbb(f[m>>2]|0)|0;e:while(1){m=g;if((I|0)==(m|0)){K=98;break}j=g;k=f[j+8>>2]|0;j=f[j+12>>2]|0;Bab(C);a=j+12|0;if(!(f[a>>2]|0)){l=f[A>>2]|0;f[C>>2]=l}else{x=0;va(128,E|0,O|0,89373);K=x;x=0;if(K&1){K=118;break}x=0;ua(1283,D|0,f[k+100>>2]|0);K=x;x=0;if(K&1){K=119;break}K=b[r>>0]|0;l=K<<24>>24<0;x=0;ja(49,E|0,(l?f[D>>2]|0:D)|0,(l?f[s>>2]|0:K&255)|0)|0;K=x;x=0;if(K&1){K=120;break}f[w>>2]=f[E>>2];f[w+4>>2]=f[E+4>>2];f[w+8>>2]=f[E+8>>2];g=0;while(1){if((g|0)==3)break;f[E+(g<<2)>>2]=0;g=g+1|0}x=0;ua(83,N|0,w|0);K=x;x=0;if(K&1){K=121;break}l=f[N>>2]|0;f[C>>2]=l;MTa(w);MTa(D);MTa(E)}if(H)i=(b[k+112>>0]|0)!=0;else i=0;do if(J){if(!(mra(q,f[k+100>>2]|0)|0)){h=0;break}g=j+4|0;if((f[g>>2]|0)!=1){K=131;break e}f[g>>2]=0;h=1}else h=0;while(0);do if(!i){if(h|(f[j+4>>2]|0)!=0){K=136;break}if(!(f[j+16>>2]|0))K=150;else K=136}else K=136;while(0);do if((K|0)==136){x=0;g=ka(17,j|0,c|0,k|0,i|0)|0;K=x;x=0;if(K&1){K=141;break e}if(h){h=(uX(n,f[k+100>>2]|0)|0)+20|0;h=f[h>>2]|0;x=0;h=ja(f[(f[h>>2]|0)+8>>2]|0,h|0,c|0,d|0)|0;K=x;x=0;if(K&1){K=141;break e}x=0;g=ja(70,c|0,g|0,h|0)|0;K=x;x=0;if(K&1){K=141;break e}}if(!g){K=150;break}x=0;h=ia(99,f[c>>2]|0,0)|0;K=x;x=0;if(K&1){K=149;break e}i=h+12|0;x=0;ua(81,i|0,e|0);K=x;x=0;if(K&1){K=149;break e}f[e+8>>2]=l;x=0;ua(81,i|0,g|0);K=x;x=0;if(K&1){K=149;break e}if((f[g+4>>2]|0)==5){e=h;K=157;break}f[y>>2]=f[B>>2];x=0;f[N>>2]=f[y>>2];e=ka(12,c|0,N|0,0,0)|0;K=x;x=0;if(K&1){K=149;break e}x=0;ua(81,i|0,e|0);K=x;x=0;if(K&1){K=149;break e}else{e=h;K=157}}while(0);do if((K|0)==150){j=f[B>>2]|0;f[C>>2]=j;g=f[a>>2]|0;if(g|0){K=158;break}i=f[o>>2]|0;g=f[A>>2]|0;h=f[F>>2]|0;while(1){if((h|0)==(i|0))break;if(g2a(f[h>>2]|0,g)|0)f[h>>2]=j;h=h+4|0}f[A>>2]=j;K=157}while(0);if((K|0)==157){K=0;g=f[a>>2]|0;if(g)K=158}f:do if((K|0)==158){k=f[g+4>>2]|0;g=f[g>>2]|0;while(1){if((g|0)==(k|0))break f;h=f[g>>2]|0;while(1){i=f[o>>2]|0;j=f[F>>2]|0;if(i-j>>2>>>0>h>>>0)break;if((f[p>>2]|0)==(i|0)){x=0;ua(1503,F|0,A|0);K=x;x=0;if(K&1){K=166;break e}}else{f[i>>2]=f[A>>2];f[o>>2]=(f[o>>2]|0)+4}}f[j+(h<<2)>>2]=f[C>>2];g=g+4|0}}while(0);g=f[m+4>>2]|0}if((K|0)==98){f[e+8>>2]=f[B>>2];f[z>>2]=f[A>>2];g=f[v>>2]|0;x=0;f[N>>2]=f[z>>2];g=ka(18,c|0,F|0,N|0,g|0)|0;N=x;x=0;do if(!(N&1)){x=0;ua(81,t+12|0,g|0);N=x;x=0;if(N&1)break;zSa(F);YCa(G);MTa(O);break a}while(0);e=Ia()|0}else if((K|0)==118){e=Ia()|0;K=124}else if((K|0)==119){e=Ia()|0;K=123}else if((K|0)==120){e=Ia()|0;K=122}else if((K|0)==121){e=Ia()|0;MTa(w);K=122}else if((K|0)==131){x=0;wa(71,89312,88985,315,89008);x=0;e=Ia()|0;K=169}else if((K|0)==141){e=Ia()|0;K=169}else if((K|0)==149){e=Ia()|0;K=169}else if((K|0)==166){e=Ia()|0;K=169}if((K|0)==122){MTa(D);K=123}if((K|0)==123){MTa(E);K=124}if((K|0)==124)K=169;zSa(F)}YCa(G)}while(0)}while(0);MTa(O)}while(0);if((K|0)==101)MTa(N);K=181}while(0);if((K|0)==181)Ua(e|0);if(e|0)faa(L+12|0,e);tt(L)}u=M;return L|0}function Pc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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=u;u=u+48|0;S=U+36|0;V=U+24|0;Q=U+8|0;R=U;a:do if((a|0)!=(c|0)?(b[a>>0]|0)==78:0){g=UZ(a+1|0,c,S)|0;b:do if((g|0)!=(c|0)){h=d+52|0;f[h>>2]=0;switch(b[g>>0]|0){case 82:{e=1;O=6;break}case 79:{e=2;O=6;break}default:{}}if((O|0)==6){f[h>>2]=e;g=g+1|0}P=d+4|0;e=f[P>>2]|0;if(e>>>0<(f[d+8>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;S5(e);f[P>>2]=(f[P>>2]|0)+24}else TA(d);if(((c-g|0)>1?(b[g>>0]|0)==83:0)?(b[g+1>>0]|0)==116:0){yta((f[P>>2]|0)+-24|0,124650);g=g+2|0}if((g|0)==(c|0)){g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;V=e+-1|0;OJa(g+(V*24|0)|0);e=V}f[P>>2]=g+-24;break}k=V+11|0;l=V+4|0;j=d+12|0;N=d+20|0;m=d+24|0;n=Q+11|0;o=Q+4|0;p=Q+11|0;q=Q+4|0;r=Q+12|0;s=Q+4|0;t=Q+8|0;v=d+16|0;w=Q+12|0;y=Q+4|0;z=Q+8|0;A=Q+11|0;B=Q+4|0;C=Q+12|0;D=Q+4|0;E=Q+8|0;F=Q+11|0;G=Q+4|0;H=Q+12|0;I=Q+4|0;J=Q+8|0;K=Q+12|0;L=Q+4|0;M=Q+8|0;i=0;c:while(1){d:while(1){e=b[g>>0]|0;if(e<<24>>24==69){O=146;break c}switch(e<<24>>24|0){case 83:{O=23;break d}case 84:{O=50;break d}case 68:{O=75;break d}case 73:{h=jg(g,c,d)|0;if((h|0)==(g|0)|(h|0)==(c|0))break b;hY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;O=e+-1|0;OJa(g+(O*24|0)|0);e=O}f[P>>2]=g+-24;O=b[k>>0]|0;e=O<<24>>24<0;x=0;ja(97,g+-48|0,(e?f[V>>2]|0:V)|0,(e?f[l>>2]|0:O&255)|0)|0;O=x;x=0;if(O&1){O=112;break c}O=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,O|0,R|0);O=x;x=0;if(O&1){O=113;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3196,v|0,Q|0);O=x;x=0;if(O&1){O=114;break c}}else{f[e+12>>2]=f[r>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[s>>2];f[e+8>>2]=f[t>>2];f[t>>2]=0;f[s>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}aY(Q);MTa(V);g=h;break}case 76:{g=g+1|0;if((g|0)==(c|0))break b;break}default:{O=119;break d}}}e:do if((O|0)==23){O=0;i=g+1|0;if((i|0)!=(c|0)?(b[i>>0]|0)==116:0){O=119;break}i=Qg(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;hY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;OJa(g+(h*24|0)|0);e=h}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3204,h|0,V|0);h=x;x=0;if(h&1){O=40;break c}}else{x=0;va(185,Q|0,123346,V|0);h=x;x=0;if(h&1){O=41;break c}h=b[A>>0]|0;g=h<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(g?f[Q>>2]|0:Q)|0,(g?f[B>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){O=42;break c}MTa(Q);h=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,h|0,R|0);h=x;x=0;if(h&1){O=44;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3196,v|0,Q|0);h=x;x=0;if(h&1){O=45;break c}}else{f[e+12>>2]=f[K>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[L>>2];f[e+8>>2]=f[M>>2];f[M>>2]=0;f[L>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}aY(Q)}MTa(V);g=i}else if((O|0)==50){O=0;i=Ej(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;hY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;OJa(g+(h*24|0)|0);e=h}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3204,h|0,V|0);h=x;x=0;if(h&1){O=61;break c}}else{x=0;va(185,Q|0,123346,V|0);h=x;x=0;if(h&1){O=62;break c}h=b[p>>0]|0;g=h<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(g?f[Q>>2]|0:Q)|0,(g?f[q>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){O=63;break c}MTa(Q)}h=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,h|0,R|0);h=x;x=0;if(h&1){O=71;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3196,v|0,Q|0);h=x;x=0;if(h&1){O=72;break c}}else{f[e+12>>2]=f[C>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[D>>2];f[e+8>>2]=f[E>>2];f[E>>2]=0;f[D>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}aY(Q);MTa(V);g=i}else if((O|0)==75){O=0;e=g+1|0;if((e|0)!=(c|0))switch(b[e>>0]|0){case 84:case 116:break;default:{O=119;break e}}i=cp(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;hY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;OJa(g+(h*24|0)|0);e=h}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3204,h|0,V|0);h=x;x=0;if(h&1){O=88;break c}}else{x=0;va(185,Q|0,123346,V|0);h=x;x=0;if(h&1){O=89;break c}h=b[F>>0]|0;g=h<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(g?f[Q>>2]|0:Q)|0,(g?f[G>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){O=90;break c}MTa(Q)}h=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,h|0,R|0);h=x;x=0;if(h&1){O=98;break c}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3196,v|0,Q|0);h=x;x=0;if(h&1){O=99;break c}}else{f[e+12>>2]=f[H>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[I>>2];f[e+8>>2]=f[J>>2];f[J>>2]=0;f[I>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}aY(Q);MTa(V);g=i}while(0);if((O|0)==119){i=mM(g,c,d)|0;if((i|0)==(g|0)|(i|0)==(c|0))break b;hY(V,(f[P>>2]|0)+-24|0);g=f[P>>2]|0;e=0;while(1){if((e|0)==-1)break;O=e+-1|0;OJa(g+(O*24|0)|0);e=O}f[P>>2]=g+-24;h=g+-48|0;e=b[h+11>>0]|0;if(e<<24>>24<0)e=f[g+-44>>2]|0;else e=e&255;if(!e){x=0;ua(3204,h|0,V|0);O=x;x=0;if(O&1){O=130;break}}else{x=0;va(185,Q|0,123346,V|0);O=x;x=0;if(O&1){O=131;break}O=b[n>>0]|0;h=O<<24>>24<0;x=0;ja(97,(f[P>>2]|0)+-24|0,(h?f[Q>>2]|0:Q)|0,(h?f[o>>2]|0:O&255)|0)|0;O=x;x=0;if(O&1){O=132;break}MTa(Q)}O=(f[P>>2]|0)+-24|0;f[R>>2]=f[j>>2];x=0;va(182,Q|0,O|0,R|0);O=x;x=0;if(O&1){O=141;break}e=f[N>>2]|0;if(e>>>0>=(f[m>>2]|0)>>>0){x=0;ua(3196,v|0,Q|0);O=x;x=0;if(O&1){O=142;break}}else{f[e+12>>2]=f[w>>2];f[e>>2]=f[Q>>2];f[e+4>>2]=f[y>>2];f[e+8>>2]=f[z>>2];f[z>>2]=0;f[y>>2]=0;f[Q>>2]=0;f[N>>2]=(f[N>>2]|0)+16}aY(Q);MTa(V);g=i}i=1}switch(O|0){case 40:{a=Ia()|0;O=49;break}case 41:{a=Ia()|0;O=43;break}case 42:{a=Ia()|0;MTa(Q);O=43;break}case 44:{a=Ia()|0;O=46;break}case 45:{a=Ia()|0;aY(Q);O=46;break}case 61:{a=Ia()|0;O=74;break}case 62:{a=Ia()|0;O=64;break}case 63:{a=Ia()|0;MTa(Q);O=64;break}case 71:{a=Ia()|0;O=73;break}case 72:{a=Ia()|0;aY(Q);O=73;break}case 88:{a=Ia()|0;O=101;break}case 89:{a=Ia()|0;O=91;break}case 90:{a=Ia()|0;MTa(Q);O=91;break}case 98:{a=Ia()|0;O=100;break}case 99:{a=Ia()|0;aY(Q);O=100;break}case 112:{a=Ia()|0;O=116;break}case 113:{a=Ia()|0;O=115;break}case 114:{a=Ia()|0;aY(Q);O=115;break}case 130:{a=Ia()|0;O=144;break}case 131:{a=Ia()|0;O=133;break}case 132:{a=Ia()|0;MTa(Q);O=133;break}case 141:{a=Ia()|0;O=143;break}case 142:{a=Ia()|0;aY(Q);O=143;break}case 146:{a=g+1|0;f[d+48>>2]=f[S>>2];if(i?(T=f[N>>2]|0,(f[d+16>>2]|0)!=(T|0)):0){e=0;while(1){if((e|0)==-1)break;V=e+-1|0;aY(T+(V<<4)|0);e=V}f[N>>2]=T+-16}break a}}if((O|0)==43)O=49;else if((O|0)==46)O=49;else if((O|0)==64)O=74;else if((O|0)==73)O=74;else if((O|0)==91)O=101;else if((O|0)==100)O=101;else if((O|0)==115)O=116;else if((O|0)==133)O=144;else if((O|0)==143)O=144;if((O|0)==49)MTa(V);else if((O|0)==74)MTa(V);else if((O|0)==101)MTa(V);else if((O|0)==116)MTa(V);else if((O|0)==144)MTa(V);Ua(a|0)}while(0)}while(0);u=U;return a|0}function Qc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;I=u;u=u+144|0;F=I+136|0;L=I+132|0;o=I+124|0;p=I+120|0;J=I+104|0;q=I+128|0;t=I+108|0;v=I+92|0;z=I+80|0;A=I+68|0;y=I+64|0;D=I+52|0;B=I+40|0;C=I+28|0;G=I+16|0;E=I+12|0;H=I;Fua(L);x=0;e=ia(69,c|0,1)|0;w=x;x=0;a:do if(w&1)K=12;else{do if(qRa(e)|0){x=0;e=ia(69,c|0,1)|0;w=x;x=0;if(w&1){K=12;break a}if(V7a(b[e>>0]|0)|0){x=0;e=ia(69,c|0,1)|0;w=x;x=0;if(w&1){K=12;break a}x=0;e=ga(295,e|0)|0;w=x;x=0;if(w&1){K=12;break a}x=0;e=ga(299,e|0)|0;w=x;x=0;if(w&1){K=12;break a}if(e){K=14;break}}x=0;e=ia(69,c|0,1)|0;w=x;x=0;if(!(w&1)?(x=0,g=ga(295,e|0)|0,w=x,x=0,!(w&1)):0){L1a(F,g);i=f[L>>2]|0;f[i>>2]=f[F>>2];h=2;w=L;g=a+48|0;n=i;break}e=Ia()|0;break a}else K=14;while(0);do if((K|0)==14){g=a+48|0;x=0;e=ga(226,f[g>>2]|0)|0;w=x;x=0;if(w&1){e=Ia()|0;break a}else{i=f[L>>2]|0;f[i>>2]=e;h=1;w=L;n=i;break}}while(0);f[g>>2]=(f[g>>2]|0)+1;e=a+36|0;g=f[e>>2]|0;if((g|0)==(f[a+40>>2]|0)){x=0;ua(1503,a+32|0,i|0);K=x;x=0;if(K&1){K=12;break}}else{f[g>>2]=f[i>>2];f[e>>2]=(f[e>>2]|0)+4}Bab(o);Bab(p);j=0;k=0;e=0;l=f[o>>2]|0;m=f[p>>2]|0;b:while(1){x=0;g=ga(294,c|0)|0;K=x;x=0;if(K&1){K=36;break}if(h>>>0>=g>>>0){K=68;break}x=0;g=ia(69,c|0,h|0)|0;K=x;x=0;if(K&1){K=36;break}if(!(C7a(b[g>>0]|0)|0)){K=68;break}x=0;i=ia(69,c|0,h|0)|0;K=x;x=0;if(K&1){K=39;break}x=0;g=ia(69,i|0,0)|0;K=x;x=0;if(K&1){K=39;break}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=39;break}do if(!(g2a(g,f[33105]|0)|0)){x=0;g=ia(69,i|0,0)|0;K=x;x=0;if(K&1){K=39;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=39;break b}if(g2a(g,f[33104]|0)|0){x=0;g=ia(69,i|0,1)|0;K=x;x=0;if(K&1){K=59;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=59;break b}L1a(F,g);l=f[F>>2]|0;x=0;g=ia(69,i|0,2)|0;K=x;x=0;if(K&1){K=60;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=60;break b}L1a(F,g);i=f[F>>2]|0;g=l;break}x=0;g=ia(69,i|0,0)|0;K=x;x=0;if(K&1){K=39;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=39;break b}if(!(g2a(g,f[33084]|0)|0)){K=68;break b}x=0;e=ia(69,i|0,1)|0;K=x;x=0;if(K&1){K=39;break b}x=0;e=ga(295,e|0)|0;K=x;x=0;if(K&1){K=39;break b}x=0;e=ia(160,e|0,0)|0;K=x;x=0;if(K&1){K=39;break b}else{j=1;i=m;g=l}}else{x=0;ta(494,J|0);K=x;x=0;if(K&1){K=40;break b}x=0;g=ia(69,i|0,1)|0;K=x;x=0;if(K&1){K=41;break b}x=0;g=ga(295,g|0)|0;K=x;x=0;if(K&1){K=41;break b}L1a(F,g);g=f[J>>2]|0;K=f[F>>2]|0;f[g>>2]=K;f[g+4>>2]=f[n>>2];f[g+8>>2]=3;i=f[a>>2]|0;f[q>>2]=K;f[F>>2]=f[q>>2];if(hna(i,F)|0){K=33;break b}f[J>>2]=0;x=0;ua(70,i|0,g|0);K=x;x=0;if(K&1){K=42;break b}f[J>>2]=0;k=1;i=m;g=l}while(0);h=h+1|0;l=g;m=i}c:do if((K|0)==33){f[o>>2]=l;f[p>>2]=m;i=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;K=j7a(93689)|0;x=0;va(87,t|0,93689,K|0);K=x;x=0;if(!(K&1)){x=0;wa(138,i|0,t|0,f[c+28>>2]|0,f[c+32>>2]|0);K=x;x=0;if(K&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}e=Ia()|0;MTa(t);if(!h){K=48;break}}else e=Ia()|0;La(i|0);K=48}else if((K|0)==36){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;K=38}else if((K|0)==39){e=Ia()|0;f[o>>2]=l;f[p>>2]=m}else if((K|0)==40){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;K=50}else if((K|0)==41){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;g=f[J>>2]|0;K=48}else if((K|0)==42){e=Ia()|0;f[o>>2]=l;f[p>>2]=m;f[J>>2]=0;K=50}else if((K|0)==59){e=Ia()|0;f[o>>2]=l;f[p>>2]=m}else if((K|0)==60){e=Ia()|0;f[o>>2]=l;f[p>>2]=m}else if((K|0)==68){f[o>>2]=l;f[p>>2]=m;i=l;if(j&k){h=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;J=j7a(93812)|0;x=0;va(87,v|0,93812,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,v|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(v);if(!g)break}else e=Ia()|0;La(h|0);break}if(!e){g=h+1|0;x=0;e=ia(69,c|0,h|0)|0;v=x;x=0;if((!(v&1)?(x=0,r=ga(295,e|0)|0,v=x,x=0,!(v&1)):0)?(x=0,s=ia(160,r|0,0)|0,v=x,x=0,!(v&1)):0){e=s;h=g;K=79}}else K=79;d:do if((K|0)==79){e:do if(Qab(i)|0){if(!d){h=Ea(20)|0;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;c=j7a(93843)|0;x=0;va(87,z|0,93843,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,z|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(z);if(!g)break c}else e=Ia()|0;La(h|0);break c}if(j){h=Ea(20)|0;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;J=j7a(93869)|0;x=0;va(87,A|0,93869,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,A|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(A);if(!g)break c}else e=Ia()|0;La(h|0);break c}x=0;ta(432,J|0);H=x;x=0;do if(!(H&1)){i=f[J>>2]|0;H=f[n>>2]|0;f[i>>2]=H;f[i+4>>2]=l;f[i+8>>2]=m;f[i+12>>2]=3;f[i+20>>2]=e;e=f[a>>2]|0;f[y>>2]=H;f[F>>2]=f[y>>2];if(!(fna(e,F)|0)){f[J>>2]=0;x=0;ua(64,e|0,i|0);c=x;x=0;if(c&1){e=Ia()|0;f[J>>2]=0;break}else{f[J>>2]=0;break e}}h=Ea(20)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;I=j7a(93731)|0;x=0;va(87,D|0,93731,I|0);I=x;x=0;if(!(I&1)){x=0;wa(138,h|0,D|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(D);if(g)K=103}else{e=Ia()|0;K=103}if((K|0)==103)La(h|0);f[J>>2]=0;if(i)Cbb(i)}else e=Ia()|0;while(0);break c}else{if(d){h=Ea(20)|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;c=j7a(93900)|0;x=0;va(87,B|0,93900,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,B|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(B);if(!g)break c}else e=Ia()|0;La(h|0);break c}f[(f[w>>2]|0)+4>>2]=e;x=0;e=ga(294,c|0)|0;J=x;x=0;if(J&1)break d;if(h>>>0>=e>>>0){h=Ea(20)|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;J=j7a(93925)|0;x=0;va(87,C|0,93925,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,C|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(C);if(!g)break c}else e=Ia()|0;La(h|0);break c}x=0;e=ia(69,c|0,h|0)|0;J=x;x=0;if(J&1)break d;x=0;e=ia(167,a|0,e|0)|0;J=x;x=0;if(J&1)break d;g=f[w>>2]|0;f[g+8>>2]=e;b[g+12>>0]=j&1;x=0;e=ga(294,c|0)|0;J=x;x=0;if(J&1)break d;if((h+1|0)!=(e|0)){h=Ea(20)|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;c=j7a(93945)|0;x=0;va(87,G|0,93945,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,G|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(G);if(!g)break c}else e=Ia()|0;La(h|0);break c}e=f[a>>2]|0;f[E>>2]=f[g>>2];f[F>>2]=f[E>>2];if(!(gna(e,F)|0)){K=f[w>>2]|0;f[w>>2]=0;x=0;ua(71,e|0,K|0);K=x;x=0;if(K&1)break d;else break}h=Ea(20)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;J=j7a(93731)|0;x=0;va(87,H|0,93731,J|0);J=x;x=0;if(!(J&1)){x=0;wa(138,h|0,H|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(H);if(!g)break c}else e=Ia()|0;La(h|0);break c}while(0);e=f[w>>2]|0;f[w>>2]=0;if(e|0)Cbb(e);u=I;return}while(0);e=Ia()|0;K=38}while(0);if((K|0)!=38)if((K|0)==48){f[J>>2]=0;if(!g)K=50;else{Cbb(g);K=50}}}while(0);if((K|0)==12)e=Ia()|0;g=f[L>>2]|0;f[L>>2]=0;if(g|0)Cbb(g);Ua(e|0)}function Rc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;h=u;u=u+32|0;g=h;a:do if((a|0)!=(c|0)){b:do switch(b[a>>0]|0){case 118:{g4(g,124711);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 119:{k4(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 98:{g4(g,124716);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 99:{g4(g,124485);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 97:{T3(g,124490);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 104:{R3(g,124502);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 115:{f4(g,124516);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 116:{Q3(g,124522);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 105:{h4(g,124721);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 106:{S3(g,124725);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 108:{g4(g,124738);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 109:{R3(g,124743);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 120:{$3(g,124757);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 121:{Z3(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 110:{e4(g,124551);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 111:{P3(g,124560);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 102:{f4(g,124767);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 100:{l4(g);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 101:{T3(g,124773);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 103:{U3(g,124785);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 122:{h4(g,124796);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+1|0;break a}case 117:{e=a+1|0;g=hk(e,c,d)|0;a=(g|0)==(e|0)?a:g;break a}case 68:{e=a+1|0;if((e|0)==(c|0))break a;switch(b[e>>0]|0){case 100:{$3(g,124800);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 101:{U3(g,124810);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 102:{$3(g,124821);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 104:{$3(g,124831);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 105:{e4(g,124841);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 115:{e4(g,124850);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 97:{g4(g,124859);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}case 110:{Q3(g,124864);c=d+4|0;e=f[c>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,g|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(g);break b}}else{CY(e,g);f[c>>2]=(f[c>>2]|0)+24}OJa(g);a=a+2|0;break a}default:break a}}default:break a}while(0);Ua(a|0)}while(0);u=h;return a|0}function Sc(){var a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;la=u;u=u+1520|0;a=la+1488|0;b=la+1464|0;m=la+1440|0;z=la+1416|0;K=la+1392|0;V=la+1368|0;ea=la+1344|0;ia=la+1320|0;ja=la+1296|0;ka=la+1272|0;c=la+1248|0;d=la+1224|0;e=la+1200|0;f=la+1176|0;g=la+1152|0;h=la+1128|0;i=la+1104|0;j=la+1080|0;k=la+1056|0;l=la+1032|0;n=la+1008|0;o=la+984|0;p=la+960|0;q=la+936|0;r=la+912|0;s=la+888|0;t=la+864|0;v=la+840|0;w=la+816|0;y=la+792|0;A=la+768|0;B=la+744|0;C=la+720|0;D=la+696|0;E=la+672|0;F=la+648|0;G=la+624|0;H=la+600|0;I=la+576|0;J=la+552|0;L=la+528|0;M=la+504|0;N=la+480|0;O=la+456|0;P=la+432|0;Q=la+408|0;R=la+384|0;S=la+360|0;T=la+336|0;U=la+312|0;W=la+288|0;X=la+264|0;Y=la+240|0;Z=la+216|0;_=la+192|0;$=la+168|0;aa=la+144|0;ba=la+120|0;ca=la+96|0;da=la+72|0;fa=la+48|0;ga=la+24|0;ha=la;nHa(a,1);x=0;va(99,67414,67430,a|0);ma=x;x=0;do if(!(ma&1)){xta(a);nHa(b,2);x=0;va(99,67463,67488,b|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(b);break}xta(b);nHa(m,3);x=0;va(99,67534,67547,m|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(m);break}xta(m);nHa(z,4);x=0;va(99,67607,67620,z|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(z);break}xta(z);nHa(K,5);x=0;va(99,67650,67665,K|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(K);break}xta(K);nHa(V,6);x=0;va(99,67701,67705,V|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(V);break}xta(V);nHa(ea,7);x=0;va(99,67730,67734,ea|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ea);break}xta(ea);nHa(ia,8);x=0;va(99,67770,67801,ia|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ia);break}xta(ia);nHa(ja,9);x=0;va(99,67829,67846,ja|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ja);break}xta(ja);nHa(ka,10);x=0;va(99,67894,67902,ka|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ka);break}xta(ka);nHa(c,11);x=0;va(99,67938,67949,c|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(c);break}xta(c);nHa(d,12);x=0;va(99,68036,68049,d|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(d);break}xta(d);nHa(e,13);x=0;va(99,68074,68092,e|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(e);break}xta(e);nHa(f,14);x=0;va(99,68110,68119,f|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(f);break}xta(f);nHa(g,15);x=0;va(99,68176,68196,g|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(g);break}xta(g);nHa(h,16);x=0;va(99,68244,68266,h|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(h);break}xta(h);nHa(i,17);x=0;va(99,68316,68326,i|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(i);break}xta(i);nHa(j,18);x=0;va(99,68379,68393,j|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(j);break}xta(j);nHa(k,19);x=0;va(99,68451,68471,k|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(k);break}xta(k);nHa(l,20);x=0;va(99,68514,68532,l|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(l);break}xta(l);nHa(n,21);x=0;va(99,68597,68532,n|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(n);break}xta(n);nHa(o,22);x=0;va(99,68615,68630,o|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(o);break}xta(o);nHa(p,23);x=0;va(99,68682,68695,p|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(p);break}xta(p);nHa(q,24);x=0;va(99,68726,68739,q|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(q);break}xta(q);nHa(r,25);x=0;va(99,68769,68777,r|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(r);break}xta(r);nHa(s,26);x=0;va(99,68793,68796,s|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(s);break}xta(s);nHa(t,27);x=0;va(99,68806,68828,t|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(t);break}xta(t);nHa(v,28);x=0;va(99,68863,68881,v|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(v);break}xta(v);nHa(w,29);x=0;va(99,68899,68915,w|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(w);break}xta(w);nHa(y,30);x=0;va(99,68951,68967,y|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(y);break}xta(y);nHa(A,31);x=0;va(99,113389,69025,A|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(A);break}xta(A);nHa(B,32);x=0;va(99,109909,69071,B|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(B);break}xta(B);nHa(C,33);x=0;va(99,73273,69152,C|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(C);break}xta(C);nHa(D,34);x=0;va(99,69181,69196,D|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(D);break}xta(D);nHa(E,35);x=0;va(99,69234,69245,E|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(E);break}xta(E);nHa(F,36);x=0;va(99,69279,69296,F|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(F);break}xta(F);nHa(G,37);x=0;va(99,69313,69328,G|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(G);break}xta(G);nHa(H,38);x=0;va(99,69379,69403,H|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(H);break}xta(H);nHa(I,39);x=0;va(99,69448,69466,I|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(I);break}xta(I);nHa(J,40);x=0;va(99,69506,69521,J|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(J);break}xta(J);nHa(L,41);x=0;va(99,69565,69579,L|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(L);break}xta(L);nHa(M,42);x=0;va(99,69603,69621,M|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(M);break}xta(M);nHa(N,43);x=0;va(99,69671,69701,N|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(N);break}xta(N);nHa(O,44);x=0;va(99,69732,69774,O|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(O);break}xta(O);nHa(P,45);x=0;va(99,69828,69848,P|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(P);break}xta(P);nHa(Q,46);x=0;va(99,69904,69922,Q|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(Q);break}xta(Q);nHa(R,47);x=0;va(99,69958,69973,R|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(R);break}xta(R);nHa(S,48);x=0;va(99,70006,70015,S|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(S);break}xta(S);nHa(T,49);x=0;va(99,70069,70073,T|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(T);break}xta(T);nHa(U,50);x=0;va(99,70101,70111,U|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(U);break}xta(U);nHa(W,51);x=0;va(99,70169,70185,W|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(W);break}xta(W);nHa(X,52);x=0;va(99,70228,70254,X|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(X);break}xta(X);nHa(Y,53);x=0;va(99,70337,70359,Y|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(Y);break}xta(Y);nHa(Z,54);x=0;va(99,70412,70440,Z|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(Z);break}xta(Z);nHa(_,55);x=0;va(99,70498,70532,_|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(_);break}xta(_);nHa($,56);x=0;va(99,70598,70608,$|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta($);break}xta($);nHa(aa,57);x=0;va(99,70636,70657,aa|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(aa);break}xta(aa);nHa(ba,58);x=0;va(99,70709,70724,ba|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ba);break}xta(ba);nHa(ca,59);x=0;va(99,70782,70786,ca|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ca);break}xta(ca);nHa(da,60);x=0;va(99,70842,70858,da|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(da);break}xta(da);nHa(fa,61);x=0;va(99,70910,70923,fa|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(fa);break}xta(fa);nHa(ga,62);x=0;va(99,70969,70975,ga|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ga);break}xta(ga);nHa(ha,63);x=0;va(99,71029,71036,ha|0);ma=x;x=0;if(ma&1){a=Ia()|0;xta(ha);break}else{xta(ha);u=la;return}}else{ma=Ia()|0;xta(a);a=ma}while(0);Ua(a|0)}function Tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0.0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;E=u;u=u+192|0;F=E+48|0;G=E+32|0;I=E+160|0;K=E+96|0;J=E+72|0;B=E+68|0;C=E+64|0;D=E+16|0;A=E;zx(K,b);x=0;ta(462,K|0);z=x;x=0;if(z&1)b=Ia()|0;else{f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;f[J+16>>2]=1065353216;q=K+16|0;v=J+4|0;w=J+12|0;y=J+16|0;z=J+8|0;c=f[K+12>>2]|0;b=0;a:while(1){if((c|0)==(q|0)){H=4;break}j=f[c+16>>2]|0;f[G>>2]=j;f[F>>2]=j;p=JH(F,4)|0;m=f[v>>2]|0;o=(m|0)==0;b:do if(!o){k=m+-1|0;l=(k&m|0)==0;if(!l)if(p>>>0>>0)d=p;else d=(p>>>0)%(m>>>0)|0;else d=k&p;h=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!h)H=21;else while(1){h=f[h>>2]|0;if(!h){H=21;break b}i=f[h+4>>2]|0;if((i|0)!=(p|0)){if(!l){if(i>>>0>=m>>>0)i=(i>>>0)%(m>>>0)|0}else i=i&k;if((i|0)!=(d|0)){H=21;break b}}if((f[h+8>>2]|0)==(j|0)){d=b;break}}}else{d=0;H=21}while(0);if((H|0)==21){H=0;x=0;wa(93,I|0,J|0,p|0,G|0);t=x;x=0;if(t&1){H=47;break}e=+(((f[w>>2]|0)+1|0)>>>0);g=+n[y>>2];do if(o|g*+(m>>>0)>>0<3|(m+-1&m|0)!=0)&1;s=~~+W(+(e/g))>>>0;x=0;ua(643,J|0,(t>>>0>>0?s:t)|0);t=x;x=0;if(t&1){H=28;break a}b=f[v>>2]|0;d=b+-1|0;if(!(d&b)){i=b;d=d&p;break}if(p>>>0>>0){i=b;d=p}else{i=b;d=(p>>>0)%(b>>>0)|0}}else i=m;while(0);b=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!b){h=f[I>>2]|0;f[h>>2]=f[z>>2];f[z>>2]=h;f[(f[J>>2]|0)+(d<<2)>>2]=z;b=f[h>>2]|0;if(b|0){b=f[b+4>>2]|0;d=i+-1|0;if(d&i){if(b>>>0>=i>>>0)b=(b>>>0)%(i>>>0)|0}else b=b&d;f[(f[J>>2]|0)+(b<<2)>>2]=h}}else{t=f[I>>2]|0;f[t>>2]=f[b>>2];f[b>>2]=t}d=(f[w>>2]|0)+1|0;f[w>>2]=d}b=f[c+4>>2]|0;if(!b)while(1){b=f[c+8>>2]|0;if((f[b>>2]|0)==(c|0))break;else c=b}else while(1){c=f[b>>2]|0;if(!c)break;else b=c}c=b;b=d}if((H|0)==4){f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;f[I+12>>2]=0;f[I+16>>2]=1065353216;q=J+8|0;r=a+48|0;s=K+44|0;t=K+24|0;p=a+32|0;c:while(1){if(!b){H=185;break}o=f[q>>2]|0;b=f[o+8>>2]|0;C4(J,o);o=L_a(b)|0;f[B>>2]=o;d:do if(o){x=0;b=ia(179,I|0,B|0)|0;o=x;x=0;if(o&1){H=53;break c}if(!(Qab(f[b>>2]|0)|0)){x=0;va(154,F|0,a|0,f[(f[B>>2]|0)+12>>2]|0);o=x;x=0;if(o&1){H=60;break c}x=0;b=ia(179,I|0,B|0)|0;o=x;x=0;if(o&1){H=60;break c}f[b>>2]=f[F>>2];f[b+4>>2]=f[F+4>>2];f[b+8>>2]=f[F+8>>2];f[b+12>>2]=f[F+12>>2];if(Qab(f[F>>2]|0)|0){x=0;b=ia(180,s|0,B|0)|0;o=x;x=0;if(o&1){H=61;break c}b=b+8|0;while(1){b=f[b>>2]|0;if(!b){H=182;break d}j=f[b+8>>2]|0;f[G>>2]=j;f[F>>2]=j;o=JH(F,4)|0;i=f[v>>2]|0;m=(i|0)==0;e:do if(!m){k=i+-1|0;l=(k&i|0)==0;if(!l)if(o>>>0>>0)d=o;else d=(o>>>0)%(i>>>0)|0;else d=k&o;c=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!c)H=77;else do{c=f[c>>2]|0;if(!c){H=77;break e}h=f[c+4>>2]|0;if((h|0)!=(o|0)){do if(l)h=h&k;else{if(h>>>0>>0)break;h=(h>>>0)%(i>>>0)|0}while(0);if((h|0)!=(d|0)){H=77;break e}}}while((f[c+8>>2]|0)!=(j|0))}else{d=0;H=77}while(0);if((H|0)==77){H=0;x=0;wa(144,F|0,J|0,o|0,G|0);l=x;x=0;if(l&1){H=97;break c}e=+(((f[w>>2]|0)+1|0)>>>0);g=+n[y>>2];do if(m|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(643,J|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){H=84;break c}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o;break}i=c;d=(o>>>0)%(c>>>0)|0}while(0);c=f[(f[J>>2]|0)+(d<<2)>>2]|0;do if(!c){h=f[F>>2]|0;f[h>>2]=f[z>>2];f[z>>2]=h;f[(f[J>>2]|0)+(d<<2)>>2]=z;c=f[h>>2]|0;if(!c)break;c=f[c+4>>2]|0;d=i+-1|0;do if(!(d&i))c=c&d;else{if(c>>>0>>0)break;c=(c>>>0)%(i>>>0)|0}while(0);f[(f[J>>2]|0)+(c<<2)>>2]=h}else{o=f[F>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}while(0);f[w>>2]=(f[w>>2]|0)+1}}}else H=182}else H=181}else{x=0;b=ga(267,b|0)|0;o=x;x=0;if(o&1){H=102;break c}f[C>>2]=b;x=0;b=ia(181,r|0,C|0)|0;o=x;x=0;if(o&1){H=102;break c}if(Qab(f[b>>2]|0)|0){H=181;break}EXa(D);x=0;b=ia(103,K|0,C|0)|0;o=x;x=0;if(o&1){H=106;break c}i=b+4|0;h=1;b=f[b>>2]|0;while(1){if((b|0)==(i|0))break;f[F>>2]=f[b+16>>2];EXa(G);if(!(f[F>>2]|0)){c=Jbb(f[p>>2]|0)|0;d=f[(f[C>>2]|0)+8>>2]|0;if(!(QVa(c,d)|0)){H=114;break}x=0;c=ia(80,c|0,d|0)|0;o=x;x=0;if(o&1){H=113;break c}x=0;ua(2013,A|0,c|0);o=x;x=0;if(o&1){H=113;break c}f[G>>2]=f[A>>2];f[G+4>>2]=f[A+4>>2];f[G+8>>2]=f[A+8>>2];f[G+12>>2]=f[A+12>>2]}else{x=0;c=ia(179,I|0,F|0)|0;o=x;x=0;if(o&1){H=112;break c}f[G>>2]=f[c>>2];f[G+4>>2]=f[c+4>>2];f[G+8>>2]=f[c+8>>2];f[G+12>>2]=f[c+12>>2]}if(Oab(f[G>>2]|0)|0){H=118;break}if(!h){x=0;c=ia(114,D|0,G|0)|0;o=x;x=0;if(o&1){H=112;break c}if(c){H=123;break}}else{f[D>>2]=f[G>>2];f[D+4>>2]=f[G+4>>2];f[D+8>>2]=f[G+8>>2];f[D+12>>2]=f[G+12>>2]}c=f[b+4>>2]|0;if(!c)while(1){c=f[b+8>>2]|0;if((f[c>>2]|0)==(b|0)){b=c;break}else b=c}else{b=c;while(1){c=f[b>>2]|0;if(!c)break;else b=c}}h=0}if((H|0)==114){EXa(D);H=124}else if((H|0)==118){EXa(D);H=124}else if((H|0)==123){EXa(D);H=124}if((H|0)==124)H=0;f:do if(Qab(f[D>>2]|0)|0){x=0;b=ia(181,r|0,C|0)|0;o=x;x=0;if(o&1){H=138;break c}f[b>>2]=f[D>>2];f[b+4>>2]=f[D+4>>2];f[b+8>>2]=f[D+8>>2];f[b+12>>2]=f[D+12>>2];x=0;b=ia(111,t|0,C|0)|0;o=x;x=0;if(o&1){H=139;break c}b=b+8|0;while(1){b=f[b>>2]|0;if(!b)break f;j=f[b+8>>2]|0;f[A>>2]=j;f[F>>2]=j;o=JH(F,4)|0;i=f[v>>2]|0;m=(i|0)==0;g:do if(m){d=0;H=155}else{k=i+-1|0;l=(k&i|0)==0;do if(l)d=k&o;else{if(o>>>0>>0){d=o;break}d=(o>>>0)%(i>>>0)|0}while(0);c=f[(f[J>>2]|0)+(d<<2)>>2]|0;if(!c){H=155;break}do{c=f[c>>2]|0;if(!c){H=155;break g}h=f[c+4>>2]|0;if((h|0)!=(o|0)){do if(l)h=h&k;else{if(h>>>0>>0)break;h=(h>>>0)%(i>>>0)|0}while(0);if((h|0)!=(d|0)){H=155;break g}}}while((f[c+8>>2]|0)!=(j|0))}while(0);if((H|0)==155){H=0;x=0;wa(144,G|0,J|0,o|0,A|0);l=x;x=0;if(l&1){H=175;break c}e=+(((f[w>>2]|0)+1|0)>>>0);g=+n[y>>2];do if(m|g*+(i>>>0)>>0<3|(i+-1&i|0)!=0)&1;l=~~+W(+(e/g))>>>0;x=0;ua(643,J|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){H=162;break c}c=f[v>>2]|0;d=c+-1|0;if(!(d&c)){i=c;d=d&o;break}if(o>>>0>>0){i=c;d=o;break}i=c;d=(o>>>0)%(c>>>0)|0}while(0);c=f[(f[J>>2]|0)+(d<<2)>>2]|0;do if(!c){h=f[G>>2]|0;f[h>>2]=f[z>>2];f[z>>2]=h;f[(f[J>>2]|0)+(d<<2)>>2]=z;c=f[h>>2]|0;if(!c)break;c=f[c+4>>2]|0;d=i+-1|0;do if(!(d&i))c=c&d;else{if(c>>>0>>0)break;c=(c>>>0)%(i>>>0)|0}while(0);f[(f[J>>2]|0)+(c<<2)>>2]=h}else{o=f[G>>2]|0;f[o>>2]=f[c>>2];f[c>>2]=o}while(0);f[w>>2]=(f[w>>2]|0)+1}}}while(0);H=182}while(0);if((H|0)==181)H=0;else if((H|0)==182)H=0;b=f[w>>2]|0}switch(H|0){case 53:{b=Ia()|0;break}case 60:{b=Ia()|0;break}case 61:{b=Ia()|0;break}case 84:{b=Ia()|0;c=f[F>>2]|0;f[F>>2]=0;if(c|0)Cbb(c);H=98;break}case 97:{b=Ia()|0;H=98;break}case 102:{b=Ia()|0;H=180;break}case 106:{b=Ia()|0;H=179;break}case 112:{b=Ia()|0;H=133;break}case 113:{b=Ia()|0;H=133;break}case 138:{b=Ia()|0;H=179;break}case 139:{b=Ia()|0;H=179;break}case 162:{b=Ia()|0;c=f[G>>2]|0;f[G>>2]=0;if(c|0)Cbb(c);H=176;break}case 175:{b=Ia()|0;H=176;break}case 185:{SQa(I);SQa(J);zV(K);u=E;return}}if((H|0)!=98)if((H|0)==133)H=179;else if((H|0)==176)H=179;if((H|0)==179)H=180;SQa(I)}else if((H|0)==28){b=Ia()|0;c=f[I>>2]|0;f[I>>2]=0;if(c|0)Cbb(c);H=48}else if((H|0)==47){b=Ia()|0;H=48}SQa(J)}zV(K);Ua(b|0)}function Uc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;a:do if(a>>>0<212){b=sda(30784,30976,a)|0;b=f[b>>2]|0}else{if(a>>>0>4294967291){b=Ea(8)|0;x=0;ua(3187,b|0,118983);i=x;x=0;if(i&1){i=Ia()|0;La(b|0);Ua(i|0)}else{f[b>>2]=50512;Pa(b|0,39520,420)}}h=(a>>>0)/210|0;g=h*210|0;b=0;c=g;g=(sda(30976,31168,a-g|0)|0)-30976>>2;while(1){e=(f[30976+(g<<2)>>2]|0)+c|0;a=5;while(1){if(a>>>0>=47){i=10;break}c=f[30784+(a<<2)>>2]|0;d=(e>>>0)/(c>>>0)|0;if(d>>>0>>0){b=e;break a}if((e|0)==(X(d,c)|0))break;else a=a+1|0}b:do if((i|0)==10){i=0;d=211;c:while(1){a=(e>>>0)/(d>>>0)|0;do if(a>>>0>=d>>>0)if((e|0)!=(X(a,d)|0)){a=d+10|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+12|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+16|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+18|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+22|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>=a>>>0)if((e|0)!=(X(c,a)|0)){a=d+28|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e}else{if((e|0)==(X(c,a)|0)){c=9;break}a=d+30|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+36|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+40|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+42|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+46|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+52|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+58|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+60|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+66|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+70|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+72|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+78|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+82|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+88|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+96|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+100|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+102|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+106|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+108|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+112|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+120|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+126|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+130|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+136|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+138|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+142|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+148|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+150|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+156|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+162|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+166|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+168|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+172|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+178|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+180|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+186|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+190|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+192|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+196|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+198|0;c=(e>>>0)/(a>>>0)|0;if(c>>>0>>0){c=1;b=e;break}if((e|0)==(X(c,a)|0)){c=9;break}a=d+208|0;c=(e>>>0)/(a>>>0)|0;j=c>>>0>>0;c=(e|0)==(X(c,a)|0);a=j|c?a:d+210|0;c=j?1:c?9:0;b=j?e:b}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else c=9;else{c=1;b=e}}else{a=d;c=9}else{a=d;c=1;b=e}while(0);switch(c&15){case 9:break b;case 0:{d=a;break}default:break c}}if(c)break a}while(0);j=g+1|0;e=(j|0)==48;c=h+(e&1)|0;h=c;c=c*210|0;g=e?0:j}}while(0);return b|0}function Vc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;A=u;u=u+176|0;w=A+144|0;p=A+140|0;h=A+160|0;n=A+136|0;q=A+132|0;C=A+120|0;i=A+104|0;B=A+88|0;y=A+76|0;z=A+24|0;o=A+4|0;s=A+64|0;t=A+16|0;v=A;f[p>>2]=d;r=c+4|0;d=f[r>>2]|0;e=f[c>>2]|0;a:do if(((d-e|0)/12|0)>>>0<2)d=0;else{d=TH(e,d,a)|0;Hha(c,d,f[r>>2]|0);f[n>>2]=h;f[q>>2]=n;vP(C,c);d=f[C>>2]|0;e=C+4|0;g=f[e>>2]|0;f[i>>2]=h;f[i+4>>2]=p;f[i+8>>2]=n;f[i+12>>2]=a;x=0;f[w>>2]=f[i>>2];f[w+4>>2]=f[i+4>>2];f[w+8>>2]=f[i+8>>2];f[w+12>>2]=f[i+12>>2];d=ja(84,d|0,g|0,w|0)|0;m=x;x=0;b:do if(m&1)d=Ia()|0;else{Hha(C,d,g);m=f[e>>2]|0;d=f[C>>2]|0;j=m;c:do if(((m-d|0)/12|0)>>>0>1){DUa(w);while(1){if((d|0)==(j|0)){m=6;break}x=0;e=ia(206,d|0,f[p>>2]|0)|0;m=x;x=0;if(m&1){m=15;break}f[B>>2]=e;i=e;x=0;e=ga(324,e|0)|0;m=x;x=0;if(m&1){m=16;break}f[y>>2]=e;x=0;e=ia(207,w|0,y|0)|0;m=x;x=0;if(m&1){m=16;break}g=e+4|0;h=f[g>>2]|0;if((h|0)==(f[e+8>>2]|0)){x=0;ua(640,e|0,B|0);m=x;x=0;if(m&1){m=16;break}}else{f[h>>2]=i;f[g>>2]=(f[g>>2]|0)+4}d=d+12|0}do if((m|0)==6){j=w+4|0;k=y+4|0;l=y+8|0;m=o+4|0;e=f[w>>2]|0;d:while(1){if((e|0)==(j|0)){m=46;break}h=e+20|0;i=e+24|0;g=f[i>>2]|0;d=f[h>>2]|0;e:do switch(g-d>>2|0){case 0:{m=21;break d}case 1:break;default:while(1){if(g-d>>2>>>0<=1)break e;f[B>>2]=f[d>>2];f[y>>2]=0;f[k>>2]=0;f[l>>2]=0;x=0;d=ka(36,d|0,g|0,B|0,y|0)|0;g=x;x=0;if(g&1){m=29;break d}mla(h,d,f[i>>2]|0);d=f[h>>2]|0;if((f[i>>2]|0)-d>>2>>>0>1){f[z>>2]=f[d>>2];x=0;ua(2920,o|0,C|0);g=x;x=0;if(g&1){m=30;break d}d=f[m>>2]|0;x=0;g=ma(29,f[o>>2]|0,d|0,n|0,p|0,z|0)|0;D=x;x=0;if(D&1){m=31;break d}Hha(o,g,d);x=0;d=ja(85,a|0,o|0,(f[p>>2]|0)+1|0)|0;D=x;x=0;if(D&1){m=32;break d}zSa(o);if(d){m=36;break d}}d9(h,y);zSa(y);d=f[h>>2]|0;g=f[i>>2]|0}}while(0);d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}if((m|0)==21){x=0;wa(71,114481,114498,535,114527);x=0;d=Ia()|0;break}else if((m|0)==29)d=Ia()|0;else if((m|0)==30){d=Ia()|0;m=34}else if((m|0)==31){d=Ia()|0;m=33}else if((m|0)==32){d=Ia()|0;m=33}else if((m|0)==36){zSa(y);txa(w);d=1;break c}else if((m|0)==46){txa(w);m=47;break c}if((m|0)==33){zSa(o);m=34}zSa(y)}else if((m|0)==15){d=Ia()|0;m=17}else if((m|0)==16){d=Ia()|0;m=17}while(0);txa(w);break b}else m=47;while(0);f:do if((m|0)==47){d=f[p>>2]|0;if(d){x=0;d=ka(37,q|0,a|0,d|0,c|0)|0;D=x;x=0;if(D&1){d=Ia()|0;break b}if(d){x=0;wa(151,B|0,q|0,f[p>>2]|0,c|0);D=x;x=0;if(D&1)d=Ia()|0;else{b[a+56>>0]=1;l=f[a+36>>2]|0;Jbb(l)|0;_0a(y,l);l=a+32|0;D=Jbb(f[l>>2]|0)|0;x=0;ua(2921,z|0,D|0);D=x;x=0;if(D&1)d=Ia()|0;else{f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;D=j7a(114552)|0;x=0;va(87,s|0,114552,D|0);D=x;x=0;g:do if(!(D&1)){x=0;j=ia(208,z|0,s|0)|0;D=x;x=0;if(D&1){d=Ia()|0;MTa(s);break}MTa(s);i=f[r>>2]|0;k=B+4|0;h=f[c>>2]|0;h:while(1){if((h|0)==(i|0)){m=57;break}g=h+4|0;d=f[g>>2]|0;if(d){x=0;ua(2922,a|0,d|0);D=x;x=0;if(D&1){m=67;break}d=0;while(1){e=f[g>>2]|0;if(d>>>0>=(f[k>>2]|0)-(f[B>>2]|0)>>2>>>0)break;x=0;ta(508,e+12|0);D=x;x=0;if(D&1){m=70;break h}d=d+1|0}f[t>>2]=j;x=0;f[w>>2]=f[t>>2];d=ka(12,y|0,w|0,0,0)|0;D=x;x=0;if(D&1){m=67;break}x=0;ua(81,e+12|0,d|0);D=x;x=0;if(D&1){m=67;break}D=f[g>>2]|0;x=0;ua(1874,D|0,f[D+4>>2]|0);D=x;x=0;if(D&1){m=67;break}}else{x=0;ua(2922,a|0,f[h>>2]|0);D=x;x=0;if(D&1){m=67;break}f[v>>2]=j;x=0;f[w>>2]=f[v>>2];d=ka(12,y|0,w|0,0,0)|0;D=x;x=0;if(D&1){m=67;break}f[f[h+8>>2]>>2]=d}h=h+12|0}if((m|0)==57){h=f[l>>2]|0;Jbb(h)|0;h=f[h+36>>2]|0;x=0;i=ia(99,f[y>>2]|0,0)|0;D=x;x=0;i:do if(!(D&1)){f[i+8>>2]=j;e=h+4|0;d=f[e>>2]|0;j:do switch(d|0){case 5:{x=0;ua(81,i+12|0,h|0);D=x;x=0;if(D&1)break i;break}case 0:{e=i+12|0;x=0;ua(81,e|0,h|0);D=x;x=0;if(D&1)break i;x=0;d=ia(108,y|0,0)|0;D=x;x=0;if(D&1)break i;x=0;ua(81,e|0,d|0);D=x;x=0;if(D&1)break i;break}default:{g=v$a(h)|0;do if(!g)m=87;else{x=0;ta(439,g|0);D=x;x=0;if(D&1)break;d=f[e>>2]|0;m=87}while(0);do if((m|0)==87){e=i+12|0;if((d|0)==5){x=0;ua(81,e|0,h|0);D=x;x=0;if(D&1)break;else break j}x=0;d=ia(108,y|0,h|0)|0;D=x;x=0;if(D&1)break;x=0;ua(81,e|0,d|0);D=x;x=0;if(!(D&1))break j}while(0);d=Ia()|0;break g}}while(0);x=0;ta(439,i|0);D=x;x=0;if(!(D&1)){x=0;e=ia(99,f[y>>2]|0,0)|0;D=x;x=0;do if(D&1)m=99;else{g=e+12|0;x=0;ua(81,g|0,i|0);D=x;x=0;if(D&1){m=99;break}d=f[k>>2]|0;while(1){if((f[B>>2]|0)==(d|0))break;x=0;ua(81,g|0,f[d+-4>>2]|0);D=x;x=0;if(D&1){m=98;break}d=(f[k>>2]|0)+-4|0;f[k>>2]=d}if((m|0)==98){d=Ia()|0;break}D=f[l>>2]|0;Jbb(D)|0;x=0;ua(1874,e|0,f[D+4>>2]|0);D=x;x=0;if(D&1){m=99;break}d=f[l>>2]|0;Jbb(d)|0;f[d+36>>2]=e;_Ra(z);zSa(B);d=1;break f}while(0);if((m|0)==99)d=Ia()|0;break g}}while(0);d=Ia()|0;break}else if((m|0)==67){d=Ia()|0;break}else if((m|0)==70){d=Ia()|0;break}}else d=Ia()|0;while(0);_Ra(z)}zSa(B)}break b}else d=0}else d=0}while(0);zSa(C);break a}while(0);zSa(C);Ua(d|0)}while(0);u=A;return d|0}function Wc(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;w=u;u=u+80|0;v=w+60|0;s=w+56|0;f[s>>2]=c;l=w+52|0;g=w+48|0;z=w+40|0;p=w+16|0;m=w+4|0;o=w+44|0;n=w+36|0;q=w;r=w+32|0;t=w+28|0;f[l>>2]=e;h=n0a(d,0)|0;if(!(KBa(f[h>>2]|0,132864)|0))Ca(53506,51387,804,123616);h=n0a(d,1)|0;h=f[h>>2]|0;Sab(g);c=Jbb(h)|0;a:do if(!(Hea(c,f[33216]|0)|0)){if(!(Oab(f[h>>2]|0)|0))Ca(53927,51387,892,123616);j=uPa(c)|0;j=f[j>>2]|0;f[g>>2]=j;if(g2a(j,f[33047]|0)|0){c=n0a(d,2)|0;c=uPa(Jbb(f[c>>2]|0)|0)|0;c=f[c>>2]|0;if(g2a(c,f[33237]|0)|0){h=a+200|0;if(Oab(f[h>>2]|0)|0){f[h>>2]=f[s>>2];y=100;break}else Ca(53946,51387,897,123616)}if(g2a(c,f[33269]|0)|0){a=a+196|0;if(Oab(f[a>>2]|0)|0){f[a>>2]=f[s>>2];y=157;break}else Ca(53969,51387,901,123616)}else y=100}else y=100}else{c=n0a(h,1)|0;c=f[c>>2]|0;Jbb(c)|0;if(!(Oab(f[c>>2]|0)|0))Ca(53525,51387,809,123616);c=n0a(h,2)|0;if(KBa(f[c>>2]|0,132064)|0){c=n0a(d,2)|0;if(KBa(f[c>>2]|0,132068)|0){c=a+124|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53547,51387,812,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,132072)|0){c=a+128|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53566,51387,816,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,132076)|0){c=a+132|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53586,51387,820,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,132148)|0){c=a+136|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53607,51387,824,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,132152)|0){c=a+140|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53625,51387,828,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,132156)|0){c=a+144|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53645,51387,832,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,132160)|0){c=a+148|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53664,51387,836,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131764)|0){c=a+152|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53683,51387,840,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131768)|0){c=a+156|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53701,51387,844,123616)}}else{c=n0a(h,2)|0;if(KBa(f[c>>2]|0,131772)|0){c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131776)|0){c=a+160|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53719,51387,850,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131780)|0){c=a+164|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53741,51387,854,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131784)|0){c=a+168|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53764,51387,858,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131788)|0){c=a+172|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53790,51387,862,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131792)|0){c=a+176|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53823,51387,866,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131796)|0){c=a+180|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53844,51387,870,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131800)|0){c=a+184|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53865,51387,874,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131804)|0){c=a+188|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53886,51387,878,123616)}c=n0a(d,2)|0;if(KBa(f[c>>2]|0,131808)|0){c=a+192|0;if(Oab(f[c>>2]|0)|0){f[c>>2]=f[s>>2];y=157;break}else Ca(53906,51387,882,123616)}}}c=n0a(h,1)|0;c=vNa(Jbb(f[c>>2]|0)|0)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;_Z(v,c,j7a(c)|0);x=0;ua(82,v|0,46);c=x;x=0;do if(((!(c&1)?(x=0,i=ia(45,h|0,2)|0,h=x,x=0,!(h&1)):0)?(j=Jbb(f[i>>2]|0)|0,x=0,j=ga(222,j|0)|0,i=x,x=0,!(i&1)):0)?(x=0,ia(59,v|0,j|0)|0,j=x,x=0,!(j&1)):0){x=0;va(88,z|0,((b[v+11>>0]|0)<0?f[v>>2]|0:v)|0,0);j=x;x=0;if(j&1){a=Ia()|0;break}else{f[g>>2]=f[z>>2];MTa(v);y=100;break a}}else y=86;while(0);if((y|0)==86)a=Ia()|0;MTa(v);y=162}while(0);b:do if((y|0)==100){pOa(z);L1a(v,f[s>>2]|0);c=f[z>>2]|0;f[c>>2]=f[v>>2];L1a(v,f[g>>2]|0);f[c+4>>2]=f[v>>2];x=0;g=ia(45,d|0,2)|0;y=x;x=0;c:do if(!(y&1)?(k=Jbb(f[g>>2]|0)|0,x=0,k=ga(214,k|0)|0,y=x,x=0,!(y&1)):0){L1a(v,f[k>>2]|0);i=c+8|0;g=f[v>>2]|0;f[i>>2]=g;do if(g2a(f[c+4>>2]|0,f[32999]|0)|0){if(!(g2a(g,f[33e3]|0)|0)?!(g2a(g,f[33001]|0)|0):0){y=108;break}f[l>>2]=4;g=c+12|0;e=4;y=109}else y=108;while(0);if((y|0)==108){g=c+12|0;if(!e){f[g>>2]=0;y=133}else y=109}d:do if((y|0)==109){f[g>>2]=3;f[c+20>>2]=e;x=0;xa(5,v|0,a+100|0,f[s>>2]|0,s|0,l|0);y=x;x=0;if(y&1)y=107;else{x=0;va(88,v|0,67097,1);y=x;x=0;do if(y&1)a=Ia()|0;else{if(!(f2a(f[s>>2]|0,f[v>>2]|0)|0)){y=133;break d}x=0;va(88,p|0,67107,1);y=x;x=0;if(y&1){a=Ia()|0;break}if(!(f2a(f[s>>2]|0,f[p>>2]|0)|0)){y=133;break d}l=f[c>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;y=j7a(l)|0;x=0;va(87,m|0,l|0,y|0);y=x;x=0;if(y&1)a=Ia()|0;else{x=0;ia(59,m|0,53992)|0;y=x;x=0;do if(!(y&1)){f[p>>2]=f[m>>2];f[p+4>>2]=f[m+4>>2];f[p+8>>2]=f[m+8>>2];g=0;while(1){if((g|0)==3)break;f[m+(g<<2)>>2]=0;g=g+1|0}x=0;ua(83,v|0,p|0);y=x;x=0;if(y&1){a=Ia()|0;MTa(p);break}f[c>>2]=f[v>>2];MTa(p);MTa(m);h=f[a>>2]|0;L1a(o,f[s>>2]|0);f[n>>2]=f[c>>2];x=0;f[v>>2]=f[n>>2];g=ja(41,a+8|0,v|0,e|0)|0;y=x;x=0;if(y&1){y=107;break d}x=0;f[v>>2]=f[o>>2];g=ka(6,v|0,e|0,g|0,0)|0;y=x;x=0;if(y&1){y=107;break d}x=0;ua(71,h|0,g|0);y=x;x=0;if(y&1){y=107;break d}else{y=133;break d}}else a=Ia()|0;while(0);MTa(m)}y=159;break c}while(0);y=158}}while(0);e:do if((y|0)==133){x=0;va(88,p|0,67097,1);y=x;x=0;f:do if(y&1)a=Ia()|0;else{do if(!(g2a(f[s>>2]|0,f[p>>2]|0)|0)){x=0;va(88,q|0,67107,1);y=x;x=0;if(y&1){a=Ia()|0;y=151;break}if(g2a(f[s>>2]|0,f[q>>2]|0)|0){h=1;y=139}else y=153}else{h=0;y=139}while(0);g:do if((y|0)==139){g=f[a>>2]|0;f[r>>2]=f[i>>2];x=0;f[v>>2]=f[r>>2];g=ia(60,g|0,v|0)|0;s=x;x=0;h:do if(!(s&1)){do if(!g){g=f[a>>2]|0;f[t>>2]=f[i>>2];x=0;f[v>>2]=f[t>>2];g=ia(61,g|0,v|0)|0;v=x;x=0;if(v&1)break h;g=(g|0)!=0;if(h)if(g)break;else{y=153;break g}else if(g)break;else{y=153;break g}}else if(h)break;else break;while(0);f[z>>2]=0;Cbb(c);break g}while(0);a=Ia()|0;if(!h)break f;y=151}while(0);if((y|0)==151)break;if((y|0)==153){y=f[a>>2]|0;f[z>>2]=0;x=0;ua(64,y|0,c|0);y=x;x=0;if(y&1){c=0;y=107;break e}f[z>>2]=0}y=157;break b}while(0);y=158}while(0);if((y|0)==107){a=Ia()|0;y=159;break}else if((y|0)==158){f[z>>2]=0;y=160;break}}else y=106;while(0);if((y|0)==106){a=Ia()|0;y=159}if((y|0)==159){f[z>>2]=0;if(c)y=160}if((y|0)==160)Cbb(c);y=162}while(0);if((y|0)==157){u=w;return}else if((y|0)==162)Ua(a|0)}function Xc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;C=u;u=u+752|0;E=C+520|0;k=C+504|0;G=C+488|0;F=C+312|0;p=C+472|0;D=C+64|0;s=C+308|0;t=C+296|0;v=C+24|0;w=C+12|0;A=C;B=C+48|0;l=C+36|0;q=c+24|0;o=c+28|0;e=f[c+52>>2]|0;r=a+16|0;d=f[c+48>>2]|0;while(1){if((d|0)==(e|0))break;xHa(r,f[d>>2]|0);d=d+4|0}j=c+76|0;i=c+80|0;Voa(r,f[j>>2]|0,f[i>>2]|0);g=c+100|0;d=c+104|0;Voa(r,f[g>>2]|0,f[d>>2]|0);n=c+36|0;m=c+40|0;e=(f[m>>2]|0)-(f[n>>2]|0)>>2;z=a+48|0;f[E>>2]=104505;h=i_(z,E)|0;f[h>>2]=e;if(b[c+112>>0]|0){h=f[d>>2]|0;e=0;d=f[g>>2]|0;while(1){if((d|0)==(h|0))break;e=(f[d+8>>2]|0)+e-(f[d+4>>2]|0)|0;d=d+16|0}f[E>>2]=104513;h=i_(z,E)|0;f[h>>2]=e}if(b[c+60>>0]|0){g=f[i>>2]|0;e=0;d=f[j>>2]|0;while(1){if((d|0)==(g|0))break;e=((f[d+8>>2]|0)-(f[d+4>>2]|0)>>2)+e|0;d=d+16|0}f[E>>2]=104527;j=i_(z,E)|0;f[j>>2]=e}a:do if(!(b[a+44>>0]|0)){g=f[m>>2]|0;e=0;d=f[n>>2]|0;while(1){if((d|0)==(g|0))break;Daa(r,f[d>>2]|0);e=(IZa(f[d>>2]|0)|0)+e|0;d=d+4|0}f[E>>2]=104540;G=i_(z,E)|0;f[G>>2]=e;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,104615,j7a(104615)|0);x=0;ua(2276,a|0,l|0);G=x;x=0;if(G&1){d=Ia()|0;MTa(l);h=120;break}else{MTa(l);lda(z);h=119;break}}else{f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_Z(k,118298,j7a(118298)|0);x=0;ua(2276,a|0,k|0);l=x;x=0;if(l&1){d=Ia()|0;MTa(k);h=120;break}MTa(k);UQa(G,0);x=0;wa(130,F|0,c|0,G|0,0);l=x;x=0;if(l&1)d=Ia()|0;else{x=0;ta(478,F|0);l=x;x=0;b:do if(l&1)d=Ia()|0;else{h=0;while(1){d=f[n>>2]|0;if(h>>>0>=(f[m>>2]|0)-d>>2>>>0){h=20;break}g=f[d+(h<<2)>>2]|0;_ba(z);x=0;ua(2277,r|0,g|0);l=x;x=0;if(l&1){h=34;break}d=IZa(g)|0;f[E>>2]=104540;x=0;e=ia(182,z|0,E|0)|0;l=x;x=0;if(l&1){h=35;break}f[e>>2]=d;d=f[(f[F>>2]|0)+(h*12|0)+8>>2]|0;f[E>>2]=104547;x=0;e=ia(182,z|0,E|0)|0;l=x;x=0;if(l&1){h=36;break}f[e>>2]=d;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;l=j7a(104562)|0;x=0;va(87,E|0,104562,l|0);l=x;x=0;if(l&1){h=37;break}x=0;ia(59,E|0,f[g>>2]|0)|0;l=x;x=0;if(l&1){h=38;break}f[p>>2]=f[E>>2];f[p+4>>2]=f[E+4>>2];f[p+8>>2]=f[E+8>>2];d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}x=0;ua(2276,a|0,p|0);l=x;x=0;if(l&1){h=39;break}MTa(p);MTa(E);h=h+1|0}if((h|0)==20){x=0;ta(444,E|0);r=x;x=0;if(r&1)d=Ia()|0;else{x=0;ua(2278,c|0,E|0);r=x;x=0;if(!(r&1)?(x=0,y=ga(318,E|0)|0,r=x,x=0,!(r&1)):0){ey(E);h=f[o>>2]|0;g=f[q>>2]|0;while(1){if((g|0)==(h|0)){h=46;break}x=0;ta(444,D|0);r=x;x=0;if(r&1){h=73;break}x=0;ua(2278,c|0,D|0);r=x;x=0;if(r&1){h=74;break}f[s>>2]=f[f[g>>2]>>2];f[E>>2]=f[s>>2];hF(D,E);_ba(z);x=0;d=ga(318,D|0)|0;r=x;x=0;if(r&1){h=74;break}f[E>>2]=104569;x=0;e=ia(182,z|0,E|0)|0;r=x;x=0;if(r&1){h=75;break}f[e>>2]=y-d;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;r=j7a(104598)|0;x=0;va(87,A|0,104598,r|0);r=x;x=0;if(r&1){h=76;break}x=0;ia(59,A|0,f[f[g>>2]>>2]|0)|0;r=x;x=0;if(r&1){h=77;break}f[w>>2]=f[A>>2];f[w+4>>2]=f[A+4>>2];f[w+8>>2]=f[A+8>>2];d=0;while(1){if((d|0)==3)break;f[A+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,w|0,123269)|0;r=x;x=0;if(r&1){h=78;break}f[v>>2]=f[w>>2];f[v+4>>2]=f[w+4>>2];f[v+8>>2]=f[w+8>>2];d=0;while(1){if((d|0)==3)break;f[w+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,v|0,f[(f[g>>2]|0)+4>>2]|0)|0;r=x;x=0;if(r&1){h=79;break}f[E>>2]=f[v>>2];f[E+4>>2]=f[v+4>>2];f[E+8>>2]=f[v+8>>2];d=0;while(1){if((d|0)==3)break;f[v+(d<<2)>>2]=0;d=d+1|0}x=0;ua(82,E|0,41);r=x;x=0;if(r&1){h=80;break}f[t>>2]=f[E>>2];f[t+4>>2]=f[E+4>>2];f[t+8>>2]=f[E+8>>2];d=0;while(1){if((d|0)==3)break;f[E+(d<<2)>>2]=0;d=d+1|0}x=0;ua(2276,a|0,t|0);r=x;x=0;if(r&1){h=81;break}MTa(t);MTa(E);MTa(v);MTa(w);MTa(A);ey(D);g=g+4|0}switch(h|0){case 46:{g=c+116|0;c:do if(!(Oab(f[g>>2]|0)|0)){x=0;ta(444,E|0);A=x;x=0;if(A&1)d=Ia()|0;else{x=0;ua(2278,c|0,E|0);A=x;x=0;do if(A&1)h=101;else{Bab(D);f[E+116>>2]=f[D>>2];_ba(z);x=0;e=ga(318,E|0)|0;A=x;x=0;if(A&1){h=101;break}f[D>>2]=104569;x=0;d=ia(182,z|0,D|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break}f[d>>2]=y-e;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;A=j7a(104607)|0;x=0;va(87,D|0,104607,A|0);A=x;x=0;if(A&1)d=Ia()|0;else{x=0;ia(59,D|0,f[g>>2]|0)|0;A=x;x=0;do if(!(A&1)){f[B>>2]=f[D>>2];f[B+4>>2]=f[D+4>>2];f[B+8>>2]=f[D+8>>2];d=0;while(1){if((d|0)==3)break;f[D+(d<<2)>>2]=0;d=d+1|0}x=0;ua(2276,a|0,B|0);a=x;x=0;if(a&1){d=Ia()|0;MTa(B);break}else{MTa(B);MTa(D);ey(E);break c}}else d=Ia()|0;while(0);MTa(D)}}while(0);if((h|0)==101)d=Ia()|0;ey(E)}break b}while(0);_ba(132632);hZ(F);zSa(G);h=119;break a}case 73:{d=Ia()|0;break}case 74:{d=Ia()|0;h=87;break}case 75:{d=Ia()|0;h=87;break}case 76:{d=Ia()|0;h=86;break}case 77:{d=Ia()|0;h=85;break}case 78:{d=Ia()|0;h=84;break}case 79:{d=Ia()|0;h=83;break}case 80:{d=Ia()|0;h=82;break}case 81:{d=Ia()|0;MTa(t);h=82;break}}if((h|0)==82){MTa(E);h=83}if((h|0)==83){MTa(v);h=84}if((h|0)==84){MTa(w);h=85}if((h|0)==85){MTa(A);h=86}if((h|0)==86)h=87;if((h|0)==87)ey(D);break}d=Ia()|0;ey(E)}break}else if((h|0)==34){d=Ia()|0;break}else if((h|0)==35){d=Ia()|0;break}else if((h|0)==36){d=Ia()|0;break}else if((h|0)==37)d=Ia()|0;else if((h|0)==38){d=Ia()|0;h=40}else if((h|0)==39){d=Ia()|0;MTa(p);h=40}if((h|0)==40)MTa(E)}while(0);hZ(F)}zSa(G);h=120}while(0);if((h|0)==119){u=C;return}else if((h|0)==120)Ua(d|0)}function Yc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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,X=0,Y=0,Z=0,_=0,$=0,aa=0;U=u;u=u+144|0;V=U+128|0;X=U+116|0;$=U+84|0;P=U+68|0;aa=U+56|0;_=U+40|0;Q=U+112|0;R=U+108|0;S=U+104|0;T=U+72|0;Z=U+24|0;Y=U+12|0;M=U+52|0;N=U;O=U+36|0;f[$>>2]=0;f[$+4>>2]=0;f[$+8>>2]=0;f[$+12>>2]=0;f[$+16>>2]=1065353216;_0a(P,f[a>>2]|0);f[aa>>2]=0;g=aa+4|0;f[g>>2]=0;f[aa+8>>2]=0;J=f[a>>2]|0;K=f[J+76>>2]|0;d=K;do if((f[J+80>>2]|0)!=(K|0)?(e=d+4|0,(aa|0)!=(e|0)):0){x=0;va(167,aa|0,f[e>>2]|0,f[d+8>>2]|0);K=x;x=0;if(K&1){c=Ia()|0;break}else{d=f[aa>>2]|0;K=f[g>>2]|0;h=6;break}}else{d=0;K=0;h=6}while(0);a:do if((h|0)==6){y=_+11|0;z=_+4|0;A=$+4|0;B=$+12|0;C=$+16|0;D=$+8|0;E=Z+4|0;F=Z+8|0;G=N+4|0;H=N+8|0;I=X+4|0;J=X+8|0;w=d;b:while(1){if((w|0)==(K|0)){h=8;break}x=0;va(88,V|0,111885,1);v=x;x=0;if(v&1){h=11;break}c:do if(!(g2a(f[w>>2]|0,f[V>>2]|0)|0)){f[_>>2]=0;f[_+4>>2]=0;f[_+8>>2]=0;d=0;while(1){if((d|0)==3)break;f[_+(d<<2)>>2]=0;d=d+1|0}d=f[a>>2]|0;f[Q>>2]=f[w>>2];f[V>>2]=f[Q>>2];e=fna(d,V)|0;if(!e){f[S>>2]=f[w>>2];x=0;f[V>>2]=f[S>>2];d=ia(56,d|0,V|0)|0;v=x;x=0;if(v&1){h=39;break b}x=0;ua(2708,X|0,d|0);v=x;x=0;if(v&1){h=39;break b}if((b[y>>0]|0)<0){Z0a(f[_>>2]|0,0);f[z>>2]=0}else{Z0a(_,0);b[y>>0]=0}x=0;ta(470,_|0);v=x;x=0;if(v&1){h=34;break b}f[_>>2]=f[X>>2];f[_+4>>2]=f[X+4>>2];f[_+8>>2]=f[X+8>>2];d=0;while(1){if((d|0)==3)break;f[X+(d<<2)>>2]=0;d=d+1|0}MTa(X)}else{f[R>>2]=f[e+16>>2];x=0;f[V>>2]=f[R>>2];d=ia(163,d|0,V|0)|0;v=x;x=0;if(v&1){h=27;break b}x=0;ua(76,X|0,d|0);v=x;x=0;if(v&1){h=27;break b}if((b[y>>0]|0)<0){Z0a(f[_>>2]|0,0);f[z>>2]=0}else{Z0a(_,0);b[y>>0]=0}x=0;ta(470,_|0);v=x;x=0;if(v&1){h=22;break b}f[_>>2]=f[X>>2];f[_+4>>2]=f[X+4>>2];f[_+8>>2]=f[X+8>>2];d=0;while(1){if((d|0)==3)break;f[X+(d<<2)>>2]=0;d=d+1|0}MTa(X)}x=0;ua(88,T|0,_|0);v=x;x=0;if(v&1){h=43;break b}x=0;v=ia(55,T|0,f[a>>2]|0)|0;t=x;x=0;if(t&1){h=44;break b}MTa(T);d:do if(!(z9(v)|0)){t=msa(_)|0;h=f[A>>2]|0;s=(h|0)==0;e:do if(!s){o=h+-1|0;p=(o&h|0)==0;if(!p)if(t>>>0>>0)e=t;else e=(t>>>0)%(h>>>0)|0;else e=o&t;d=f[(f[$>>2]|0)+(e<<2)>>2]|0;if(d){q=b[y>>0]|0;r=q<<24>>24<0;q=r?f[z>>2]|0:q&255;r=r?f[_>>2]|0:_;while(1){d=f[d>>2]|0;if(!d)break e;g=f[d+4>>2]|0;if((g|0)!=(t|0)){do if(p)g=g&o;else{if(g>>>0>>0)break;g=(g>>>0)%(h>>>0)|0}while(0);if((g|0)!=(e|0))break e}l=d+8|0;g=b[l+11>>0]|0;k=g<<24>>24<0;g=g&255;f:do if(((k?f[d+12>>2]|0:g)|0)==(q|0)){if(k)if(!(FQa(f[l>>2]|0,r,q)|0))break d;else break;m=r;k=l;while(1){if(!g)break d;if((b[k>>0]|0)!=(b[m>>0]|0))break f;m=m+1|0;k=k+1|0;g=g+-1|0}}while(0)}}}else e=0;while(0);x=0;wa(149,V|0,$|0,t|0,_|0);r=x;x=0;if(r&1){h=87;break b}i=+(((f[B>>2]|0)+1|0)>>>0);j=+n[C>>2];do if(s|j*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;r=~~+W(+(i/j))>>>0;x=0;ua(2709,$|0,(s>>>0>>0?r:s)|0);s=x;x=0;if(s&1){h=74;break b}d=f[A>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&t;break}if(t>>>0>>0){h=d;e=t}else{h=d;e=(t>>>0)%(d>>>0)|0}}while(0);d=f[(f[$>>2]|0)+(e<<2)>>2]|0;if(!d){g=f[V>>2]|0;f[g>>2]=f[D>>2];f[D>>2]=g;f[(f[$>>2]|0)+(e<<2)>>2]=D;d=f[g>>2]|0;if(d|0){d=f[d+4>>2]|0;e=h+-1|0;do if(!(e&h))d=d&e;else{if(d>>>0>>0)break;d=(d>>>0)%(h>>>0)|0}while(0);f[(f[$>>2]|0)+(d<<2)>>2]=g}}else{t=f[V>>2]|0;f[t>>2]=f[d>>2];f[d>>2]=t}f[B>>2]=(f[B>>2]|0)+1;f[Z>>2]=0;f[E>>2]=0;f[F>>2]=0;f[V>>2]=1;x=0;ua(2710,Z|0,V|0);t=x;x=0;if(t&1){h=93;break b}m=v+8|0;o=v+12|0;g=f[o>>2]|0;d=0;e=f[m>>2]|0;while(1){if((e|0)==(g|0))break;h=d+1|0;x=0;ua(1283,Y|0,d|0);t=x;x=0;if(t&1){h=100;break b}d=f[E>>2]|0;if(d>>>0>=(f[F>>2]|0)>>>0){x=0;va(168,Z|0,Y|0,e|0);t=x;x=0;if(t&1){h=101;break b}}else{x=0;ua(83,X|0,Y|0);t=x;x=0;if(t&1){h=101;break b}t=f[e>>2]|0;f[V>>2]=f[X>>2];hUa(d,V,t);f[E>>2]=(f[E>>2]|0)+8}MTa(Y);d=h;e=e+4|0}f[Y>>2]=0;f[Y+4>>2]=0;f[Y+8>>2]=0;t=j7a(111905)|0;x=0;va(87,Y|0,111905,t|0);t=x;x=0;if(t&1){h=113;break b}t=b[y>>0]|0;s=t<<24>>24<0;x=0;ja(49,Y|0,(s?f[_>>2]|0:_)|0,(s?f[z>>2]|0:t&255)|0)|0;t=x;x=0;if(t&1){h=114;break b}f[X>>2]=f[Y>>2];f[X+4>>2]=f[Y+4>>2];f[X+8>>2]=f[Y+8>>2];d=0;while(1){if((d|0)==3)break;f[Y+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,M|0,X|0);t=x;x=0;if(t&1){h=115;break b}l=f[v+4>>2]|0;f[N>>2]=0;f[G>>2]=0;f[H>>2]=0;x=0;f[V>>2]=f[M>>2];l=ka(20,V|0,Z|0,l|0,N|0)|0;t=x;x=0;if(t&1){h=116;break b}zSa(N);MTa(X);MTa(Y);g=f[P>>2]|0;x=0;h=ja(46,g|0,0,1)|0;t=x;x=0;if(t&1){h=120;break b}f[X>>2]=0;f[I>>2]=0;f[J>>2]=0;d=0;while(1){e=f[m>>2]|0;if(d>>>0>=(f[o>>2]|0)-e>>2>>>0)break;k=d+1|0;x=0;d=ja(46,g|0,k|0,f[e+(d<<2)>>2]|0)|0;t=x;x=0;if(t&1){h=126;break b}f[V>>2]=d;e=f[I>>2]|0;if(e>>>0>=(f[J>>2]|0)>>>0){x=0;ua(1836,X|0,V|0);t=x;x=0;if(t&1){h=126;break b}}else{f[e>>2]=d;f[I>>2]=(f[I>>2]|0)+4}d=k}x=0;d=ka(35,P|0,v|0,h|0,X|0)|0;v=x;x=0;if(v&1){h=132;break b}f[l+36>>2]=d;x=0;ua(73,f[a>>2]|0,l|0);v=x;x=0;if(v&1){h=132;break b}v=f[a>>2]|0;f[O>>2]=f[l>>2];x=0;f[V>>2]=f[O>>2];ua(2711,v|0,V|0);v=x;x=0;if(v&1){h=132;break b}zSa(X);zSa(Z);MTa(_);break c}while(0);MTa(_)}while(0);w=w+4|0}switch(h|0){case 8:{zSa(aa);wxa($);u=U;return}case 11:{c=Ia()|0;break a}case 22:{y2a(Ja(0)|0);break}case 27:{c=Ia()|0;break}case 34:{y2a(Ja(0)|0);break}case 39:{c=Ia()|0;break}case 43:{c=Ia()|0;break}case 44:{c=Ia()|0;MTa(T);break}case 74:{c=Ia()|0;d=f[V>>2]|0;f[V>>2]=0;if(d|0){if(b[V+8>>0]|0)MTa(d+8|0);Cbb(d)}h=88;break}case 87:{c=Ia()|0;h=88;break}case 93:{c=Ia()|0;h=134;break}case 100:{c=Ia()|0;h=102;break}case 101:{c=Ia()|0;MTa(Y);h=102;break}case 113:{c=Ia()|0;h=119;break}case 114:{c=Ia()|0;h=118;break}case 115:{c=Ia()|0;h=117;break}case 116:{c=Ia()|0;zSa(N);h=117;break}case 120:{c=Ia()|0;h=134;break}case 126:{c=Ia()|0;h=133;break}case 132:{c=Ia()|0;h=133;break}}if((h|0)!=88)if((h|0)==102)h=134;else if((h|0)==117){MTa(X);h=118}else if((h|0)==133){zSa(X);h=134}if((h|0)==118){MTa(Y);h=119}if((h|0)==119)h=134;if((h|0)==134)zSa(Z);MTa(_)}while(0);zSa(aa);wxa($);Ua(c|0)}function Zc(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;H=u;u=u+112|0;z=H+104|0;I=H+92|0;J=H+80|0;M=H+44|0;K=H+32|0;D=H+68|0;E=H+56|0;F=H+28|0;G=H+16|0;A=H+12|0;B=H;C=a+12|0;do if(b[C>>0]|0){d=DCa(134176,98510)|0;dYa(z,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[z>>2]|0,134880)|0;y=x;x=0;if(!(y&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,y=x,x=0,!(y&1)):0){OCa(z);Wq(d,g)|0;fu(d)|0;break}M=Ia()|0;OCa(z);Ua(M|0)}while(0);y=nq(a)|0;do if(b[C>>0]|0){d=zm(DCa(134176,97878)|0,y)|0;dYa(z,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[z>>2]|0,134880)|0;w=x;x=0;if(!(w&1)?(x=0,h=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,w=x,x=0,!(w&1)):0){OCa(z);Wq(d,h)|0;fu(d)|0;break}M=Ia()|0;OCa(z);Ua(M|0)}while(0);j=K+11|0;k=K+4|0;l=K+11|0;m=K+4|0;n=K+11|0;o=K+4|0;p=K+11|0;q=K+4|0;r=a+92|0;s=a+96|0;t=a+88|0;v=K+11|0;w=K+4|0;i=0;a:while(1){if(i>>>0>=y>>>0){L=13;break}if(b[C>>0]|0){e=DCa(134176,97884)|0;dYa(z,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[z>>2]|0,134880)|0;h=x;x=0;if(h&1){L=17;break}x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;h=x;x=0;if(h&1){L=17;break}OCa(z);Wq(e,d)|0;fu(e)|0}h=s8(24)|0;mPa(h);f[z>>2]=h;e=Ni(a)|0;f[h+4>>2]=e;e=Ni(a)|0;f[h+8>>2]=e;e=nq(a)|0;f[h+12>>2]=e;g=h;b:do switch(e|0){case 0:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_Z(M,98525,j7a(98525)|0);x=0;ua(1871,K|0,i|0);e=x;x=0;if(e&1){L=42;break a}e=b[j>>0]|0;d=e<<24>>24<0;x=0;ja(49,M|0,(d?f[K>>2]|0:K)|0,(d?f[k>>2]|0:e&255)|0)|0;e=x;x=0;if(e&1){L=43;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);e=x;x=0;if(e&1){L=44;break a}f[h>>2]=f[I>>2];MTa(J);MTa(K);MTa(M);e=nq(a)|0;d=f[a>>2]|0;if(e>>>0>=(f[d+4>>2]|0)-(f[d>>2]|0)>>2>>>0){EY(M,e);x=0;ia(83,M|0,98534)|0;d=x;x=0;if(d&1){L=47;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,J|0,98558)|0;d=x;x=0;if(d&1){L=48;break a}f[I>>2]=f[J>>2];f[I+4>>2]=f[J+4>>2];f[I+8>>2]=f[J+8>>2];d=0;while(1){if((d|0)==3)break;f[J+(d<<2)>>2]=0;d=d+1|0}d=f[a>>2]|0;x=0;ua(1871,K|0,(f[d+4>>2]|0)-(f[d>>2]|0)>>2|0);d=x;x=0;if(d&1){L=49;break a}d=b[v>>0]|0;N=d<<24>>24<0;x=0;ja(49,I|0,(N?f[K>>2]|0:K)|0,(N?f[w>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){L=50;break a}f[D>>2]=f[I>>2];f[D+4>>2]=f[I+4>>2];f[D+8>>2]=f[I+8>>2];d=0;while(1){if((d|0)==3)break;f[I+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1870,a|0,D|0);N=x;x=0;if(N&1){L=51;break a}MTa(D);MTa(K);MTa(I);MTa(J);MTa(M);d=f[a>>2]|0}N=f[f[(f[d>>2]|0)+(e<<2)>>2]>>2]|0;f[h+16>>2]=N;if(!(Qab(N)|0)){L=57;break a}d=f[r>>2]|0;if((d|0)==(f[s>>2]|0)){LL(t,z);break b}else{f[d>>2]=g;f[r>>2]=(f[r>>2]|0)+4;break b}}case 1:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_Z(M,98598,j7a(98598)|0);x=0;ua(1871,K|0,i|0);N=x;x=0;if(N&1){L=70;break a}N=b[l>>0]|0;L=N<<24>>24<0;x=0;ja(49,M|0,(L?f[K>>2]|0:K)|0,(L?f[m>>2]|0:N&255)|0)|0;N=x;x=0;if(N&1){L=71;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);N=x;x=0;if(N&1){L=72;break a}f[h>>2]=f[I>>2];MTa(J);MTa(K);MTa(M);if((oq(a)|0)!=-16){f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;_Z(E,98607,j7a(98607)|0);x=0;ua(1870,a|0,E|0);N=x;x=0;if(N&1){L=75;break a}MTa(E)}N=f[a>>2]|0;b[N+60>>0]=1;b[N+61>>0]=1;hLa(F,-1,0);XB(a,N+68|0,N+72|0,I,f[F>>2]|0);if(b[I>>0]|0){f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;_Z(G,95618,j7a(95618)|0);x=0;ua(1870,a|0,G|0);N=x;x=0;if(N&1){L=79;break a}MTa(G)}L=107;break}case 2:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_Z(M,98642,j7a(98642)|0);x=0;ua(1871,K|0,i|0);N=x;x=0;if(N&1){L=88;break a}N=b[n>>0]|0;L=N<<24>>24<0;x=0;ja(49,M|0,(L?f[K>>2]|0:K)|0,(L?f[o>>2]|0:N&255)|0)|0;N=x;x=0;if(N&1){L=89;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);N=x;x=0;if(N&1){L=90;break a}f[h>>2]=f[I>>2];MTa(J);MTa(K);MTa(M);L=f[a>>2]|0;b[L+112>>0]=1;b[L+113>>0]=1;hLa(A,65535,0);XB(a,L+92|0,L+96|0,L+114|0,f[A>>2]|0);L=107;break}case 3:{f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_Z(M,98651,j7a(98651)|0);x=0;ua(1871,K|0,i|0);N=x;x=0;if(N&1){L=100;break a}N=b[p>>0]|0;L=N<<24>>24<0;x=0;ja(49,M|0,(L?f[K>>2]|0:K)|0,(L?f[q>>2]|0:N&255)|0)|0;N=x;x=0;if(N&1){L=101;break a}f[J>>2]=f[M>>2];f[J+4>>2]=f[M+4>>2];f[J+8>>2]=f[M+8>>2];d=0;while(1){if((d|0)==3)break;f[M+(d<<2)>>2]=0;d=d+1|0}x=0;ua(83,I|0,J|0);N=x;x=0;if(N&1){L=102;break a}f[h>>2]=f[I>>2];MTa(J);MTa(K);MTa(M);L=oF(a)|0;f[h+20>>2]=L;nq(a)|0;L=107;break}default:{f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;_Z(B,98660,j7a(98660)|0);x=0;ua(1870,a|0,B|0);N=x;x=0;if(N&1){L=109;break a}MTa(B);L=107}}while(0);if((L|0)==107){L=0;_s(f[a>>2]|0,h)}i=i+1|0}switch(L|0){case 13:{u=H;return}case 17:{N=Ia()|0;OCa(z);Ua(N|0)}case 42:{c=Ia()|0;L=46;break}case 43:{c=Ia()|0;L=45;break}case 44:{c=Ia()|0;MTa(J);L=45;break}case 47:{c=Ia()|0;L=55;break}case 48:{c=Ia()|0;L=54;break}case 49:{c=Ia()|0;L=53;break}case 50:{c=Ia()|0;L=52;break}case 51:{c=Ia()|0;MTa(D);L=52;break}case 57:{Ca(98562,87231,982,98586);break}case 70:{c=Ia()|0;L=74;break}case 71:{c=Ia()|0;L=73;break}case 72:{c=Ia()|0;MTa(J);L=73;break}case 75:{c=Ia()|0;MTa(E);break}case 79:{c=Ia()|0;MTa(G);break}case 88:{c=Ia()|0;L=92;break}case 89:{c=Ia()|0;L=91;break}case 90:{c=Ia()|0;MTa(J);L=91;break}case 100:{c=Ia()|0;L=104;break}case 101:{c=Ia()|0;L=103;break}case 102:{c=Ia()|0;MTa(J);L=103;break}case 109:{c=Ia()|0;MTa(B);break}}if((L|0)==45){MTa(K);L=46}else if((L|0)==52){MTa(K);L=53}else if((L|0)==73){MTa(K);L=74}else if((L|0)==91){MTa(K);L=92}else if((L|0)==103){MTa(K);L=104}if((L|0)==46)MTa(M);else if((L|0)==53){MTa(I);L=54}else if((L|0)==74)MTa(M);else if((L|0)==92)MTa(M);else if((L|0)==104)MTa(M);if((L|0)==54){MTa(J);L=55}if((L|0)==55)MTa(M);Ua(c|0)}function _c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=u;u=u+704|0;h=Z+680|0;d=Z+96|0;O=Z+48|0;U=Z+16|0;V=Z+664|0;W=Z+648|0;X=Z+632|0;Y=Z+616|0;i=Z+600|0;j=Z+584|0;k=Z+568|0;l=Z+552|0;m=Z+536|0;n=Z+520|0;o=Z+504|0;p=Z+488|0;q=Z+472|0;r=Z+456|0;s=Z+440|0;t=Z+424|0;v=Z+408|0;w=Z+392|0;x=Z+376|0;y=Z+360|0;z=Z+344|0;A=Z+328|0;B=Z+312|0;C=Z+296|0;D=Z+280|0;E=Z+264|0;F=Z+248|0;G=Z+232|0;H=Z+216|0;J=Z+200|0;K=Z+184|0;L=Z+168|0;M=Z+152|0;N=Z+136|0;P=Z+120|0;Q=Z+80|0;R=Z+64|0;S=Z+32|0;T=Z;e=c+12|0;Ou(d,b,f[e>>2]|0);if(!(K0a(d)|0)?(f[O>>2]=f[d>>2],f[O+4>>2]=f[d+4>>2],f[O+8>>2]=f[d+8>>2],f[O+12>>2]=f[d+12>>2],g=c+16|0,Ou(h,b,f[g>>2]|0),f[d>>2]=f[h>>2],f[d+4>>2]=f[h+4>>2],f[d+8>>2]=f[h+8>>2],f[d+12>>2]=f[h+12>>2],f[d+16>>2]=f[h+16>>2],!(K0a(d)|0)):0){f[U>>2]=f[d>>2];f[U+4>>2]=f[d+4>>2];f[U+8>>2]=f[d+8>>2];f[U+12>>2]=f[d+12>>2];d=f[(f[e>>2]|0)+4>>2]|0;if(v2a(d)|0?(f[O>>2]|0)!=(d|0):0)Ca(101345,101308,310,101417);d=f[(f[g>>2]|0)+4>>2]|0;if(v2a(d)|0?(f[U>>2]|0)!=(d|0):0)Ca(101429,101308,311,101417);a:do switch(f[c+8>>2]|0){case 63:case 50:case 25:case 0:{vT(V,O,U);f[h>>2]=f[V>>2];f[h+4>>2]=f[V+4>>2];f[h+8>>2]=f[V+8>>2];f[h+12>>2]=f[V+12>>2];wAa(a,h);break}case 64:case 51:case 26:case 1:{pT(W,O,U);f[h>>2]=f[W>>2];f[h+4>>2]=f[W+4>>2];f[h+8>>2]=f[W+8>>2];f[h+12>>2]=f[W+12>>2];wAa(a,h);break}case 65:case 52:case 27:case 2:{iT(X,O,U);f[h>>2]=f[X>>2];f[h+4>>2]=f[X+4>>2];f[h+8>>2]=f[X+8>>2];f[h+12>>2]=f[X+12>>2];wAa(a,h);break}case 3:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101504);if((Jia(O)|0)==-2147483648&(I|0)==-1?(X=Jia(U)|0,(X|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101519);A5(Y,O,U);f[h>>2]=f[Y>>2];f[h+4>>2]=f[Y+4>>2];f[h+8>>2]=f[Y+8>>2];f[h+12>>2]=f[Y+12>>2];wAa(a,h);break}case 4:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101538);W3(i,O,U);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];wAa(a,h);break}case 5:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101553);if((Jia(O)|0)==-2147483648&(I|0)==-1?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0){t$a(j,0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];wAa(a,h);break a}z5(k,O,U);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];f[h+12>>2]=f[k+12>>2];wAa(a,h);break}case 6:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101568);V3(l,O,U);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];f[h+8>>2]=f[l+8>>2];f[h+12>>2]=f[l+12>>2];wAa(a,h);break}case 28:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101583);if((Jia(O)|0)==0&(I|0)==-2147483648?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101598);A5(m,O,U);f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];f[h+12>>2]=f[m+12>>2];wAa(a,h);break}case 29:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101617);W3(n,O,U);f[h>>2]=f[n>>2];f[h+4>>2]=f[n+4>>2];f[h+8>>2]=f[n+8>>2];f[h+12>>2]=f[n+12>>2];wAa(a,h);break}case 30:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101632);if((Jia(O)|0)==0&(I|0)==-2147483648?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0){XSa(o,0,0);f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];f[h+12>>2]=f[o+12>>2];wAa(a,h);break a}z5(p,O,U);f[h>>2]=f[p>>2];f[h+4>>2]=f[p+4>>2];f[h+8>>2]=f[p+8>>2];f[h+12>>2]=f[p+12>>2];wAa(a,h);break}case 31:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101647);V3(q,O,U);f[h>>2]=f[q>>2];f[h+4>>2]=f[q+4>>2];f[h+8>>2]=f[q+8>>2];f[h+12>>2]=f[q+12>>2];wAa(a,h);break}case 66:case 53:{ss(r,O,U);f[h>>2]=f[r>>2];f[h+4>>2]=f[r+4>>2];f[h+8>>2]=f[r+8>>2];f[h+12>>2]=f[r+12>>2];wAa(a,h);break}case 32:case 7:{vaa(s,O,U);f[h>>2]=f[s>>2];f[h+4>>2]=f[s+4>>2];f[h+8>>2]=f[s+8>>2];f[h+12>>2]=f[s+12>>2];wAa(a,h);break}case 33:case 8:{yaa(t,O,U);f[h>>2]=f[t>>2];f[h+4>>2]=f[t+4>>2];f[h+8>>2]=f[t+8>>2];f[h+12>>2]=f[t+12>>2];wAa(a,h);break}case 34:case 9:{uaa(v,O,U);f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];wAa(a,h);break}case 35:case 10:{F0(w,O,U);f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];wAa(a,h);break}case 36:case 11:{a0(x,O,U);f[h>>2]=f[x>>2];f[h+4>>2]=f[x+4>>2];f[h+8>>2]=f[x+8>>2];f[h+12>>2]=f[x+12>>2];wAa(a,h);break}case 37:case 12:{v0(y,O,U);f[h>>2]=f[y>>2];f[h+4>>2]=f[y+4>>2];f[h+8>>2]=f[y+8>>2];f[h+12>>2]=f[y+12>>2];wAa(a,h);break}case 38:case 13:{Q0(z,O,U);f[h>>2]=f[z>>2];f[h+4>>2]=f[z+4>>2];f[h+8>>2]=f[z+8>>2];f[h+12>>2]=f[z+12>>2];wAa(a,h);break}case 39:case 14:{L0(A,O,U);f[h>>2]=f[A>>2];f[h+4>>2]=f[A+4>>2];f[h+8>>2]=f[A+8>>2];f[h+12>>2]=f[A+12>>2];wAa(a,h);break}case 70:case 57:case 40:case 15:{gT(B,O,U);f[h>>2]=f[B>>2];f[h+4>>2]=f[B+4>>2];f[h+8>>2]=f[B+8>>2];f[h+12>>2]=f[B+12>>2];wAa(a,h);break}case 71:case 58:case 41:case 16:{fT(C,O,U);f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];f[h+12>>2]=f[C+12>>2];wAa(a,h);break}case 42:case 17:{j$(D,O,U);f[h>>2]=f[D>>2];f[h+4>>2]=f[D+4>>2];f[h+8>>2]=f[D+8>>2];f[h+12>>2]=f[D+12>>2];wAa(a,h);break}case 43:case 18:{n_(E,O,U);f[h>>2]=f[E>>2];f[h+4>>2]=f[E+4>>2];f[h+8>>2]=f[E+8>>2];f[h+12>>2]=f[E+12>>2];wAa(a,h);break}case 44:case 19:{b$(F,O,U);f[h>>2]=f[F>>2];f[h+4>>2]=f[F+4>>2];f[h+8>>2]=f[F+8>>2];f[h+12>>2]=f[F+12>>2];wAa(a,h);break}case 45:case 20:{k_(G,O,U);f[h>>2]=f[G>>2];f[h+4>>2]=f[G+4>>2];f[h+8>>2]=f[G+8>>2];f[h+12>>2]=f[G+12>>2];wAa(a,h);break}case 46:case 21:{k$(H,O,U);f[h>>2]=f[H>>2];f[h+4>>2]=f[H+4>>2];f[h+8>>2]=f[H+8>>2];f[h+12>>2]=f[H+12>>2];wAa(a,h);break}case 47:case 22:{o_(J,O,U);f[h>>2]=f[J>>2];f[h+4>>2]=f[J+4>>2];f[h+8>>2]=f[J+8>>2];f[h+12>>2]=f[J+12>>2];wAa(a,h);break}case 48:case 23:{c$(K,O,U);f[h>>2]=f[K>>2];f[h+4>>2]=f[K+4>>2];f[h+8>>2]=f[K+8>>2];f[h+12>>2]=f[K+12>>2];wAa(a,h);break}case 49:case 24:{l_(L,O,U);f[h>>2]=f[L>>2];f[h+4>>2]=f[L+4>>2];f[h+8>>2]=f[L+8>>2];f[h+12>>2]=f[L+12>>2];wAa(a,h);break}case 72:case 59:{xca(M,O,U);f[h>>2]=f[M>>2];f[h+4>>2]=f[M+4>>2];f[h+8>>2]=f[M+8>>2];f[h+12>>2]=f[M+12>>2];wAa(a,h);break}case 73:case 60:{mca(N,O,U);f[h>>2]=f[N>>2];f[h+4>>2]=f[N+4>>2];f[h+8>>2]=f[N+8>>2];f[h+12>>2]=f[N+12>>2];wAa(a,h);break}case 74:case 61:{yca(P,O,U);f[h>>2]=f[P>>2];f[h+4>>2]=f[P+4>>2];f[h+8>>2]=f[P+8>>2];f[h+12>>2]=f[P+12>>2];wAa(a,h);break}case 75:case 62:{nca(Q,O,U);f[h>>2]=f[Q>>2];f[h+4>>2]=f[Q+4>>2];f[h+8>>2]=f[Q+8>>2];f[h+12>>2]=f[Q+12>>2];wAa(a,h);break}case 67:case 54:{XT(R,O,U);f[h>>2]=f[R>>2];f[h+4>>2]=f[R+4>>2];f[h+8>>2]=f[R+8>>2];f[h+12>>2]=f[R+12>>2];wAa(a,h);break}case 68:case 55:{Jo(S,O,U);f[h>>2]=f[S>>2];f[h+4>>2]=f[S+4>>2];f[h+8>>2]=f[S+8>>2];f[h+12>>2]=f[S+12>>2];wAa(a,h);break}case 69:case 56:{Ko(T,O,U);f[h>>2]=f[T>>2];f[h+4>>2]=f[T+4>>2];f[h+8>>2]=f[T+8>>2];f[h+12>>2]=f[T+12>>2];wAa(a,h);break}default:hb()}while(0)}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=Z;return}function $c(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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,X=0,Y=0,Z=0,_=0,$=0,aa=0;T=u;u=u+416|0;Q=T+352|0;L=T+340|0;P=T+336|0;Y=T+296|0;J=T+414|0;K=T+413|0;Z=T+248|0;S=T+236|0;_=T+224|0;$=T+208|0;aa=T+152|0;H=T+136|0;t=T+288|0;v=T+284|0;w=T+280|0;E=T+240|0;F=T+220|0;G=T+204|0;I=T+412|0;U=T+48|0;V=T+24|0;R=T;d=T+72|0;e=n0a(c,1)|0;e=uPa(Jbb(f[e>>2]|0)|0)|0;e=f[e>>2]|0;if(b[a+32>>0]|0){N=DCa(134008,52108)|0;O=n0a(c,1)|0;O=uPa(Jbb(f[O>>2]|0)|0)|0;Ema(DCa(N,f[O>>2]|0)|0,10)|0}s=s8(88)|0;dX(s);f[P>>2]=s;L1a(Q,e);f[s>>2]=f[Q>>2];s=n0a(c,2)|0;s=f[s>>2]|0;M=n0a(c,3)|0;M=f[M>>2]|0;Vua(Y);wBa(Z);Sab(S);f[_>>2]=0;N=_+4|0;f[N>>2]=0;f[_+8>>2]=0;f[$>>2]=0;O=$+4|0;f[O>>2]=0;f[$+8>>2]=0;Jda(aa);y=a+132|0;z=a+98|0;A=Z+4|0;B=Z+12|0;C=Z+16|0;D=Z+8|0;r=0;a:while(1){e=Jbb(s)|0;x=0;c=ga(213,e|0)|0;q=x;x=0;if(q&1){X=7;break}if(r>>>0>=c>>>0){X=6;break}x=0;e=ia(45,M|0,r|0)|0;q=x;x=0;if(q&1){X=49;break}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(223,e|0)|0;q=x;x=0;if(q&1){X=50;break}p=cbb(e)|0;p=f[p>>2]|0;f[H>>2]=p;q=bbb(e)|0;f[t>>2]=f[q>>2];f[v>>2]=f[y>>2];q=(b[z>>0]|0)!=0;x=0;f[L>>2]=f[t>>2];f[Q>>2]=f[v>>2];q=ma(21,L|0,0,0,Q|0,q|0)|0;o=x;x=0;if(o&1){X=51;break}e=f[P>>2]|0;L1a(w,p);x=0;c=ga(224,q|0)|0;o=x;x=0;if(o&1){X=51;break}x=0;f[Q>>2]=f[w>>2];ja(42,e|0,Q|0,c|0)|0;o=x;x=0;if(o&1){X=51;break}o=W7a(H)|0;l=f[A>>2]|0;m=(l|0)==0;b:do if(!m){j=l+-1|0;k=(j&l|0)==0;if(!k)if(o>>>0>>0)c=o;else c=(o>>>0)%(l>>>0)|0;else c=j&o;e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;if(!e)X=28;else do{e=f[e>>2]|0;if(!e){X=28;break b}g=f[e+4>>2]|0;if((g|0)!=(o|0)){if(!k){if(g>>>0>=l>>>0)g=(g>>>0)%(l>>>0)|0}else g=g&j;if((g|0)!=(c|0)){X=28;break b}}}while(!(CXa(f[e+8>>2]|0,p)|0))}else{c=0;X=28}while(0);if((X|0)==28){X=0;x=0;wa(73,L|0,Z|0,o|0,H|0);k=x;x=0;if(k&1){X=51;break}h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[C>>2];do if(m|i*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;l=~~+W(+(h/i))>>>0;x=0;ua(84,Z|0,(m>>>0>>0?l:m)|0);m=x;x=0;if(m&1){X=35;break a}e=f[A>>2]|0;c=e+-1|0;if(!(c&e)){j=e;c=c&o;break}if(o>>>0>>0){j=e;c=o}else{j=e;c=(o>>>0)%(e>>>0)|0}}else j=l;while(0);e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;if(!e){g=f[L>>2]|0;f[g>>2]=f[D>>2];f[D>>2]=g;f[(f[Z>>2]|0)+(c<<2)>>2]=D;e=f[g>>2]|0;if(e|0){e=f[e+4>>2]|0;c=j+-1|0;if(c&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&c;f[(f[Z>>2]|0)+(e<<2)>>2]=g}}else{o=f[L>>2]|0;f[o>>2]=f[e>>2];f[e>>2]=o}f[B>>2]=(f[B>>2]|0)+1}x=0;va(89,aa|0,p|0,q|0);q=x;x=0;if(q&1){X=51;break}r=r+1|0}c:do if((X|0)==6){x=0;e=ga(213,e|0)|0;w=x;x=0;do if(w&1)d=Ia()|0;else{t=e;d:while(1){e=Jbb(M)|0;x=0;e=ga(213,e|0)|0;w=x;x=0;if(w&1){X=65;break}if(t>>>0>=e>>>0){X=118;break}x=0;e=ia(45,M|0,t|0)|0;w=x;x=0;if(w&1){X=65;break}e=Jbb(f[e>>2]|0)|0;x=0;e=ia(46,e|0,f[33292]|0)|0;w=x;x=0;if(w&1){X=65;break}if(!e){X=118;break}x=0;e=ia(45,M|0,t|0)|0;w=x;x=0;if(w&1){X=68;break}s=f[e>>2]|0;r=0;while(1){x=0;e=ia(45,s|0,1)|0;w=x;x=0;if(w&1){X=69;break d}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(213,e|0)|0;w=x;x=0;if(w&1){X=69;break d}if(r>>>0>=e>>>0)break;x=0;e=ia(45,s|0,1)|0;w=x;x=0;if(w&1){X=114;break d}x=0;e=ia(45,f[e>>2]|0,r|0)|0;w=x;x=0;if(w&1){X=114;break d}c=f[e>>2]|0;x=0;e=ia(45,c|0,0)|0;w=x;x=0;if(w&1){X=115;break d}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;w=x;x=0;if(w&1){X=115;break d}q=f[e>>2]|0;f[H>>2]=q;x=0;e=ia(45,c|0,1)|0;w=x;x=0;if(w&1){X=116;break d}f[E>>2]=f[e>>2];f[F>>2]=f[y>>2];p=(b[z>>0]|0)!=0;x=0;f[L>>2]=f[E>>2];f[Q>>2]=f[F>>2];p=ma(21,L|0,0,1,Q|0,p|0)|0;w=x;x=0;if(w&1){X=116;break d}e=f[P>>2]|0;L1a(G,q);x=0;c=ga(224,p|0)|0;w=x;x=0;if(w&1){X=116;break d}x=0;f[Q>>2]=f[G>>2];ja(43,e|0,Q|0,c|0)|0;w=x;x=0;if(w&1){X=116;break d}o=W7a(H)|0;l=f[A>>2]|0;m=(l|0)==0;e:do if(m){c=0;X=93}else{j=l+-1|0;k=(j&l|0)==0;do if(k)c=j&o;else{if(o>>>0>>0){c=o;break}c=(o>>>0)%(l>>>0)|0}while(0);e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;if(!e){X=93;break}do{e=f[e>>2]|0;if(!e){X=93;break e}g=f[e+4>>2]|0;if((g|0)!=(o|0)){do if(k)g=g&j;else{if(g>>>0>>0)break;g=(g>>>0)%(l>>>0)|0}while(0);if((g|0)!=(c|0)){X=93;break e}}}while(!(CXa(f[e+8>>2]|0,q)|0))}while(0);if((X|0)==93){X=0;x=0;wa(73,Q|0,Z|0,o|0,H|0);w=x;x=0;if(w&1){X=116;break d}h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[C>>2];do if(m|i*+(l>>>0)>>0<3|(l+-1&l|0)!=0)&1;v=~~+W(+(h/i))>>>0;x=0;ua(84,Z|0,(w>>>0>>0?v:w)|0);w=x;x=0;if(w&1){X=100;break d}e=f[A>>2]|0;c=e+-1|0;if(!(c&e)){j=e;c=c&o;break}if(o>>>0>>0){j=e;c=o;break}j=e;c=(o>>>0)%(e>>>0)|0}else j=l;while(0);e=f[(f[Z>>2]|0)+(c<<2)>>2]|0;do if(!e){g=f[Q>>2]|0;f[g>>2]=f[D>>2];f[D>>2]=g;f[(f[Z>>2]|0)+(c<<2)>>2]=D;e=f[g>>2]|0;if(!e)break;e=f[e+4>>2]|0;c=j+-1|0;do if(!(c&j))e=e&c;else{if(e>>>0>>0)break;e=(e>>>0)%(j>>>0)|0}while(0);f[(f[Z>>2]|0)+(e<<2)>>2]=g}else{w=f[Q>>2]|0;f[w>>2]=f[e>>2];f[e>>2]=w}while(0);f[B>>2]=(f[B>>2]|0)+1}x=0;va(90,aa|0,q|0,p|0);w=x;x=0;if(w&1){X=116;break d}r=r+1|0}t=t+1|0}if((X|0)==65){d=Ia()|0;break}else if((X|0)==68){d=Ia()|0;break c}else if((X|0)==69){d=Ia()|0;break c}else if((X|0)==100){d=Ia()|0;e=f[Q>>2]|0;f[Q>>2]=0;if(e|0)Cbb(e)}else if((X|0)==114){d=Ia()|0;break c}else if((X|0)==115)d=Ia()|0;else if((X|0)==116)d=Ia()|0;else if((X|0)==118){b[L>>0]=0;f[H>>2]=L;f[H+4>>2]=P;f[H+8>>2]=Z;f[H+12>>2]=aa;b[I>>0]=0;g=U+16|0;f[g>>2]=0;f[V+16>>2]=0;f[d>>2]=Z;f[d+4>>2]=a;f[d+8>>2]=P;f[d+12>>2]=aa;f[d+16>>2]=R;f[d+20>>2]=V;f[d+24>>2]=H;f[d+28>>2]=I;f[d+32>>2]=S;f[d+36>>2]=Y;f[d+40>>2]=J;f[d+44>>2]=_;f[d+48>>2]=U;f[d+52>>2]=$;f[d+56>>2]=K;x=0;c=Q;e=c+60|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));ua(85,R|0,Q|0);L=x;x=0;if(L&1)d=Ia()|0;else{f[Q>>2]=a;f[Q+4>>2]=R;X1(V,Q);f[Q>>2]=a;f[Q+4>>2]=R;W1(U,Q);x=0;e=ja(48,f[g>>2]|0,M|0,t|0)|0;Q=x;x=0;do if(!(Q&1)){d=f[P>>2]|0;f[d+36>>2]=e;if((f[N>>2]|0)==(f[_>>2]|0)?(f[O>>2]|0)==(f[$>>2]|0):0)if(Oab(f[S>>2]|0)|0){xta(R);xta(V);xta(U);VEa(aa);zSa($);zSa(_);COa(Z);Koa(Y);u=T;return d|0}else{x=0;wa(71,52195,51387,2757,52179);x=0;break}x=0;wa(71,52127,51387,2756,52179);x=0}while(0);d=Ia()|0;xta(R)}xta(V);xta(U);break c}break c}while(0)}else if((X|0)==7)d=Ia()|0;else if((X|0)==35){d=Ia()|0;e=f[L>>2]|0;f[L>>2]=0;if(e|0)Cbb(e);X=52}else if((X|0)==49)d=Ia()|0;else if((X|0)==50)d=Ia()|0;else if((X|0)==51){d=Ia()|0;X=52}while(0);VEa(aa);zSa($);zSa(_);COa(Z);Koa(Y);Ua(d|0);return 0}function ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=u;u=u+704|0;h=Z+680|0;d=Z+96|0;O=Z+48|0;U=Z+16|0;V=Z+664|0;W=Z+648|0;X=Z+632|0;Y=Z+616|0;i=Z+600|0;j=Z+584|0;k=Z+568|0;l=Z+552|0;m=Z+536|0;n=Z+520|0;o=Z+504|0;p=Z+488|0;q=Z+472|0;r=Z+456|0;s=Z+440|0;t=Z+424|0;v=Z+408|0;w=Z+392|0;x=Z+376|0;y=Z+360|0;z=Z+344|0;A=Z+328|0;B=Z+312|0;C=Z+296|0;D=Z+280|0;E=Z+264|0;F=Z+248|0;G=Z+232|0;H=Z+216|0;J=Z+200|0;K=Z+184|0;L=Z+168|0;M=Z+152|0;N=Z+136|0;P=Z+120|0;Q=Z+80|0;R=Z+64|0;S=Z+32|0;T=Z;e=c+12|0;Ow(d,b,f[e>>2]|0);if(!(K0a(d)|0)?(f[O>>2]=f[d>>2],f[O+4>>2]=f[d+4>>2],f[O+8>>2]=f[d+8>>2],f[O+12>>2]=f[d+12>>2],g=c+16|0,Ow(h,b,f[g>>2]|0),f[d>>2]=f[h>>2],f[d+4>>2]=f[h+4>>2],f[d+8>>2]=f[h+8>>2],f[d+12>>2]=f[h+12>>2],f[d+16>>2]=f[h+16>>2],!(K0a(d)|0)):0){f[U>>2]=f[d>>2];f[U+4>>2]=f[d+4>>2];f[U+8>>2]=f[d+8>>2];f[U+12>>2]=f[d+12>>2];d=f[(f[e>>2]|0)+4>>2]|0;if(v2a(d)|0?(f[O>>2]|0)!=(d|0):0)Ca(101345,101308,310,101417);d=f[(f[g>>2]|0)+4>>2]|0;if(v2a(d)|0?(f[U>>2]|0)!=(d|0):0)Ca(101429,101308,311,101417);a:do switch(f[c+8>>2]|0){case 63:case 50:case 25:case 0:{vT(V,O,U);f[h>>2]=f[V>>2];f[h+4>>2]=f[V+4>>2];f[h+8>>2]=f[V+8>>2];f[h+12>>2]=f[V+12>>2];wAa(a,h);break}case 64:case 51:case 26:case 1:{pT(W,O,U);f[h>>2]=f[W>>2];f[h+4>>2]=f[W+4>>2];f[h+8>>2]=f[W+8>>2];f[h+12>>2]=f[W+12>>2];wAa(a,h);break}case 65:case 52:case 27:case 2:{iT(X,O,U);f[h>>2]=f[X>>2];f[h+4>>2]=f[X+4>>2];f[h+8>>2]=f[X+8>>2];f[h+12>>2]=f[X+12>>2];wAa(a,h);break}case 3:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101504);if((Jia(O)|0)==-2147483648&(I|0)==-1?(X=Jia(U)|0,(X|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101519);A5(Y,O,U);f[h>>2]=f[Y>>2];f[h+4>>2]=f[Y+4>>2];f[h+8>>2]=f[Y+8>>2];f[h+12>>2]=f[Y+12>>2];wAa(a,h);break}case 4:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101538);W3(i,O,U);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];wAa(a,h);break}case 5:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101553);if((Jia(O)|0)==-2147483648&(I|0)==-1?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0){t$a(j,0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];wAa(a,h);break a}z5(k,O,U);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];f[h+12>>2]=f[k+12>>2];wAa(a,h);break}case 6:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101568);V3(l,O,U);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];f[h+8>>2]=f[l+8>>2];f[h+12>>2]=f[l+12>>2];wAa(a,h);break}case 28:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101583);if((Jia(O)|0)==0&(I|0)==-2147483648?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101598);A5(m,O,U);f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];f[h+12>>2]=f[m+12>>2];wAa(a,h);break}case 29:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101617);W3(n,O,U);f[h>>2]=f[n>>2];f[h+4>>2]=f[n+4>>2];f[h+8>>2]=f[n+8>>2];f[h+12>>2]=f[n+12>>2];wAa(a,h);break}case 30:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101632);if((Jia(O)|0)==0&(I|0)==-2147483648?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0){XSa(o,0,0);f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];f[h+12>>2]=f[o+12>>2];wAa(a,h);break a}z5(p,O,U);f[h>>2]=f[p>>2];f[h+4>>2]=f[p+4>>2];f[h+8>>2]=f[p+8>>2];f[h+12>>2]=f[p+12>>2];wAa(a,h);break}case 31:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101647);V3(q,O,U);f[h>>2]=f[q>>2];f[h+4>>2]=f[q+4>>2];f[h+8>>2]=f[q+8>>2];f[h+12>>2]=f[q+12>>2];wAa(a,h);break}case 66:case 53:{ss(r,O,U);f[h>>2]=f[r>>2];f[h+4>>2]=f[r+4>>2];f[h+8>>2]=f[r+8>>2];f[h+12>>2]=f[r+12>>2];wAa(a,h);break}case 32:case 7:{vaa(s,O,U);f[h>>2]=f[s>>2];f[h+4>>2]=f[s+4>>2];f[h+8>>2]=f[s+8>>2];f[h+12>>2]=f[s+12>>2];wAa(a,h);break}case 33:case 8:{yaa(t,O,U);f[h>>2]=f[t>>2];f[h+4>>2]=f[t+4>>2];f[h+8>>2]=f[t+8>>2];f[h+12>>2]=f[t+12>>2];wAa(a,h);break}case 34:case 9:{uaa(v,O,U);f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];wAa(a,h);break}case 35:case 10:{F0(w,O,U);f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];wAa(a,h);break}case 36:case 11:{a0(x,O,U);f[h>>2]=f[x>>2];f[h+4>>2]=f[x+4>>2];f[h+8>>2]=f[x+8>>2];f[h+12>>2]=f[x+12>>2];wAa(a,h);break}case 37:case 12:{v0(y,O,U);f[h>>2]=f[y>>2];f[h+4>>2]=f[y+4>>2];f[h+8>>2]=f[y+8>>2];f[h+12>>2]=f[y+12>>2];wAa(a,h);break}case 38:case 13:{Q0(z,O,U);f[h>>2]=f[z>>2];f[h+4>>2]=f[z+4>>2];f[h+8>>2]=f[z+8>>2];f[h+12>>2]=f[z+12>>2];wAa(a,h);break}case 39:case 14:{L0(A,O,U);f[h>>2]=f[A>>2];f[h+4>>2]=f[A+4>>2];f[h+8>>2]=f[A+8>>2];f[h+12>>2]=f[A+12>>2];wAa(a,h);break}case 70:case 57:case 40:case 15:{gT(B,O,U);f[h>>2]=f[B>>2];f[h+4>>2]=f[B+4>>2];f[h+8>>2]=f[B+8>>2];f[h+12>>2]=f[B+12>>2];wAa(a,h);break}case 71:case 58:case 41:case 16:{fT(C,O,U);f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];f[h+12>>2]=f[C+12>>2];wAa(a,h);break}case 42:case 17:{j$(D,O,U);f[h>>2]=f[D>>2];f[h+4>>2]=f[D+4>>2];f[h+8>>2]=f[D+8>>2];f[h+12>>2]=f[D+12>>2];wAa(a,h);break}case 43:case 18:{n_(E,O,U);f[h>>2]=f[E>>2];f[h+4>>2]=f[E+4>>2];f[h+8>>2]=f[E+8>>2];f[h+12>>2]=f[E+12>>2];wAa(a,h);break}case 44:case 19:{b$(F,O,U);f[h>>2]=f[F>>2];f[h+4>>2]=f[F+4>>2];f[h+8>>2]=f[F+8>>2];f[h+12>>2]=f[F+12>>2];wAa(a,h);break}case 45:case 20:{k_(G,O,U);f[h>>2]=f[G>>2];f[h+4>>2]=f[G+4>>2];f[h+8>>2]=f[G+8>>2];f[h+12>>2]=f[G+12>>2];wAa(a,h);break}case 46:case 21:{k$(H,O,U);f[h>>2]=f[H>>2];f[h+4>>2]=f[H+4>>2];f[h+8>>2]=f[H+8>>2];f[h+12>>2]=f[H+12>>2];wAa(a,h);break}case 47:case 22:{o_(J,O,U);f[h>>2]=f[J>>2];f[h+4>>2]=f[J+4>>2];f[h+8>>2]=f[J+8>>2];f[h+12>>2]=f[J+12>>2];wAa(a,h);break}case 48:case 23:{c$(K,O,U);f[h>>2]=f[K>>2];f[h+4>>2]=f[K+4>>2];f[h+8>>2]=f[K+8>>2];f[h+12>>2]=f[K+12>>2];wAa(a,h);break}case 49:case 24:{l_(L,O,U);f[h>>2]=f[L>>2];f[h+4>>2]=f[L+4>>2];f[h+8>>2]=f[L+8>>2];f[h+12>>2]=f[L+12>>2];wAa(a,h);break}case 72:case 59:{xca(M,O,U);f[h>>2]=f[M>>2];f[h+4>>2]=f[M+4>>2];f[h+8>>2]=f[M+8>>2];f[h+12>>2]=f[M+12>>2];wAa(a,h);break}case 73:case 60:{mca(N,O,U);f[h>>2]=f[N>>2];f[h+4>>2]=f[N+4>>2];f[h+8>>2]=f[N+8>>2];f[h+12>>2]=f[N+12>>2];wAa(a,h);break}case 74:case 61:{yca(P,O,U);f[h>>2]=f[P>>2];f[h+4>>2]=f[P+4>>2];f[h+8>>2]=f[P+8>>2];f[h+12>>2]=f[P+12>>2];wAa(a,h);break}case 75:case 62:{nca(Q,O,U);f[h>>2]=f[Q>>2];f[h+4>>2]=f[Q+4>>2];f[h+8>>2]=f[Q+8>>2];f[h+12>>2]=f[Q+12>>2];wAa(a,h);break}case 67:case 54:{XT(R,O,U);f[h>>2]=f[R>>2];f[h+4>>2]=f[R+4>>2];f[h+8>>2]=f[R+8>>2];f[h+12>>2]=f[R+12>>2];wAa(a,h);break}case 68:case 55:{Jo(S,O,U);f[h>>2]=f[S>>2];f[h+4>>2]=f[S+4>>2];f[h+8>>2]=f[S+8>>2];f[h+12>>2]=f[S+12>>2];wAa(a,h);break}case 69:case 56:{Ko(T,O,U);f[h>>2]=f[T>>2];f[h+4>>2]=f[T+4>>2];f[h+8>>2]=f[T+8>>2];f[h+12>>2]=f[T+12>>2];wAa(a,h);break}default:hb()}while(0)}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=Z;return}function bd(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;I=u;u=u+336|0;c=I+324|0;d=I+312|0;e=I+300|0;C=I+288|0;D=I+276|0;E=I+264|0;F=I+252|0;G=I+240|0;H=I+228|0;g=I+216|0;h=I+204|0;i=I+192|0;j=I+180|0;k=I+168|0;l=I+156|0;m=I+144|0;n=I+132|0;o=I+120|0;p=I+108|0;q=I+96|0;r=I+84|0;s=I+72|0;t=I+60|0;v=I+48|0;w=I+36|0;y=I+24|0;z=I+12|0;A=I;B=a+24|0;do if((f[B>>2]|0)>3){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;_Z(c,67894,j7a(67894)|0);x=0;ua(80,a|0,c|0);K=x;x=0;if(K&1){K=Ia()|0;MTa(c);c=K;break}MTa(c);f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;_Z(d,68316,j7a(68316)|0);x=0;ua(80,a|0,d|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(d);break}else{MTa(d);J=7;break}}else J=7;while(0);a:do if((J|0)==7){do if(!(b[a+33>>0]|0)){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;_Z(e,67701,j7a(67701)|0);x=0;ua(80,a|0,e|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(e);break a}else{MTa(e);c=a;break}}else c=a;while(0);f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;_Z(C,69603,j7a(69603)|0);x=0;ua(80,c|0,C|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(C);break}MTa(C);f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;_Z(D,69828,j7a(69828)|0);x=0;ua(80,c|0,D|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(D);break}MTa(D);f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;_Z(E,68806,j7a(68806)|0);x=0;ua(80,c|0,E|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(E);break}MTa(E);if((f[B>>2]|0)<=1?(f[a+28>>2]|0)<=1:0)J=27;else J=17;do if((J|0)==17){f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;_Z(F,68899,j7a(68899)|0);x=0;ua(80,c|0,F|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(F);break a}MTa(F);if((f[B>>2]|0)<=2?(f[a+28>>2]|0)<=1:0){J=27;break}f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;_Z(G,109909,j7a(109909)|0);x=0;ua(80,c|0,G|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(G);break a}else{MTa(G);break}}while(0);do if((J|0)==27){f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;_Z(H,113389,j7a(113389)|0);x=0;ua(80,c|0,H|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(H);break a}else{MTa(H);break}}while(0);if(!((f[B>>2]|0)<=1?(f[a+28>>2]|0)<=1:0))J=32;do if((J|0)==32){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,67534,j7a(67534)|0);x=0;ua(80,c|0,g|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(g);break a}else{MTa(g);break}}while(0);f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;_Z(h,70412,j7a(70412)|0);x=0;ua(80,c|0,h|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(h);break}MTa(h);f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;_Z(i,71029,j7a(71029)|0);x=0;ua(80,c|0,i|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(i);break}MTa(i);f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;_Z(j,69958,j7a(69958)|0);x=0;ua(80,c|0,j|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(j);break}MTa(j);f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;_Z(k,69603,j7a(69603)|0);x=0;ua(80,c|0,k|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(k);break}MTa(k);if(!((f[B>>2]|0)<=2?(f[a+28>>2]|0)<=1:0))J=41;do if((J|0)==41){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;_Z(l,68726,j7a(68726)|0);x=0;ua(80,c|0,l|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(l);break a}else{MTa(l);break}}while(0);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;_Z(m,67414,j7a(67414)|0);x=0;ua(80,c|0,m|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(m);break}MTa(m);f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;_Z(n,70169,j7a(70169)|0);x=0;ua(80,c|0,n|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(n);break}MTa(n);f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;_Z(o,71029,j7a(71029)|0);x=0;ua(80,c|0,o|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(o);break}MTa(o);f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;_Z(p,69958,j7a(69958)|0);x=0;ua(80,c|0,p|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(p);break}MTa(p);if(!((f[B>>2]|0)<=2?(f[a+28>>2]|0)<=0:0))J=54;do if((J|0)==54){f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;_Z(q,67607,j7a(67607)|0);x=0;ua(80,c|0,q|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(q);break a}else{MTa(q);break}}while(0);f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;_Z(r,68682,j7a(68682)|0);x=0;ua(80,c|0,r|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(r);break}MTa(r);f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;_Z(s,69603,j7a(69603)|0);x=0;ua(80,c|0,s|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(s);break}MTa(s);f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;_Z(t,68682,j7a(68682)|0);x=0;ua(80,c|0,t|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(t);break}MTa(t);f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;_Z(v,68806,j7a(68806)|0);x=0;ua(80,c|0,v|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(v);break}MTa(v);do if((f[B>>2]|0)<=2){if((f[a+28>>2]|0)>1){J=67;break}f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;_Z(y,113389,j7a(113389)|0);x=0;ua(80,c|0,y|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(y);break a}else{MTa(y);break}}else J=67;while(0);do if((J|0)==67){f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;_Z(w,109909,j7a(109909)|0);x=0;ua(80,c|0,w|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(w);break a}else{MTa(w);break}}while(0);if(!((f[B>>2]|0)<=1?(f[a+28>>2]|0)<=0:0))J=79;do if((J|0)==79){f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;_Z(z,70069,j7a(70069)|0);x=0;ua(80,c|0,z|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(z);break a}else{MTa(z);break}}while(0);f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;_Z(A,71029,j7a(71029)|0);x=0;ua(80,c|0,A|0);K=x;x=0;if(K&1){c=Ia()|0;MTa(A);break}else{MTa(A);u=I;return}}while(0);Ua(c|0)}function cd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+96|0;o=p+64|0;j=p+48|0;l=p+36|0;m=p+24|0;n=p+12|0;k=p;a:do if((c-a|0)>3?(b[a>>0]|0)==76:0){e=a+1|0;b:do switch(b[e>>0]|0){case 84:break a;case 119:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124466,j7a(124466)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 98:{if((b[a+3>>0]|0)!=69)break a;switch(b[a+2>>0]|0){case 48:{f4(o,124474);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,o|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(o);break b}}else{CY(g,o);f[e>>2]=(f[e>>2]|0)+24}OJa(o);a=a+4|0;break a}case 49:{g4(o,124480);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,o|0);d=x;x=0;if(d&1){a=Ia()|0;OJa(o);break b}}else{CY(g,o);f[e>>2]=(f[e>>2]|0)+24}OJa(o);a=a+4|0;break a}default:break a}}case 99:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124485,j7a(124485)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 97:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124490,j7a(124490)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 104:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124502,j7a(124502)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 115:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124516,j7a(124516)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124522,j7a(124522)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 105:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,135337,j7a(135337)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 106:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124537,j7a(124537)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 108:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124539,j7a(124539)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 109:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124541,j7a(124541)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 120:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124544,j7a(124544)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 121:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124547,j7a(124547)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 110:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124551,j7a(124551)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 111:{g=a+2|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;qW(o,124560,j7a(124560)|0);x=0;e=ka(41,g|0,c|0,o|0,d|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(o);break b}else{MTa(o);a=(e|0)==(g|0)?a:e;break a}}case 102:{n=a+2|0;o=So(n,c,d)|0;a=(o|0)==(n|0)?a:o;break a}case 100:{n=a+2|0;o=yo(n,c,d)|0;a=(o|0)==(n|0)?a:o;break a}case 101:{n=a+2|0;o=$o(n,c,d)|0;a=(o|0)==(n|0)?a:o;break a}case 95:{if((b[a+2>>0]|0)!=90)break a;o=a+3|0;e=dd(o,c,d)|0;if((e|0)==(o|0)|(e|0)==(c|0))break a;a=(b[e>>0]|0)==69?e+1|0:a;break a}default:{i=Cc(e,c,d)|0;if((i|0)==(e|0)|(i|0)==(c|0))break a;if((b[i>>0]|0)==69){a=i+1|0;break a}h=i;while(1){if((h|0)==(c|0))break a;e=b[h>>0]|0;if(((e<<24>>24)+-48|0)>>>0>=10)break;h=h+1|0}if(!((h|0)!=(i|0)&e<<24>>24==69))break a;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break a;hY(n,e+-24|0);x=0;ja(101,n|0,0,123274)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,m|0,123272)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[l>>2]=f[m>>2];f[l+4>>2]=f[m+4>>2];f[l+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;x=0;va(186,k|0,i|0,h|0);d=x;x=0;do if(d&1)a=Ia()|0;else{d=b[k+11>>0]|0;c=d<<24>>24<0;x=0;ja(97,l|0,(c?f[k>>2]|0:k)|0,(c?f[k+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(k);break}f[j>>2]=f[l>>2];f[j+4>>2]=f[l+4>>2];f[j+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}RY(o,j);uA((f[g>>2]|0)+-24|0,o);OJa(o);MTa(j);MTa(k);MTa(l);MTa(m);MTa(n);a=h+1|0;break a}while(0);MTa(l)}MTa(m)}MTa(n)}}while(0);Ua(a|0)}while(0);u=p;return a|0}function dd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;z=u;u=u+64|0;A=z+56|0;B=z+48|0;w=z+40|0;y=z+24|0;s=z+12|0;q=z;do if((a|0)!=(c|0)){v=d+56|0;jVa(A,v);f[v>>2]=(f[v>>2]|0)+1;e=d+61|0;$Ua(B,e);if((f[v>>2]|0)>>>0>1)b[e>>0]=1;a:do switch(b[a>>0]|0){case 84:case 71:{x=0;c=ja(98,a|0,c|0,d|0)|0;y=x;x=0;if(y&1){c=Ia()|0;m=111}else{e=1;m=110}break}default:{x=0;l=ja(99,a|0,c|0,d|0)|0;v=x;x=0;if(v&1){c=Ia()|0;m=111;break a}t=f[d+48>>2]|0;v=f[d+52>>2]|0;b:do if((l|0)!=(a|0)){if((l|0)!=(c|0)){switch(b[l>>0]|0){case 46:case 69:{c=l;break b}default:{}}$Ua(w,e);b[e>>0]=0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[y+(e<<2)>>2]=0;e=e+1|0}r=d+4|0;i=f[r>>2]|0;c:do if((f[d>>2]|0)!=(i|0)){e=i+-24|0;j=b[e+11>>0]|0;k=j<<24>>24<0;if(k)g=f[i+-20>>2]|0;else g=j&255;if(g){d:do if(!(b[d+60>>0]|0)){if(k){g=f[e>>2]|0;h=f[i+-20>>2]|0}else{g=e;h=j&255}if((b[g+h+-1>>0]|0)==62){if(k){g=f[i+-20>>2]|0;h=f[e>>2]|0}else{g=j&255;h=e}if((b[h+(g+-2)>>0]|0)!=45){if(k){g=f[i+-20>>2]|0;h=f[e>>2]|0}else{g=j&255;h=e}if((b[h+(g+-2)>>0]|0)!=62){x=0;i=ja(100,l|0,c|0,d|0)|0;p=x;x=0;if(p&1){m=20;break}if((i|0)==(l|0)){c=a;e=0;break c}p=f[r>>2]|0;g=p;if(((p-(f[d>>2]|0)|0)/24|0)>>>0<2){c=a;e=0;break c}h=g+-24|0;f[s>>2]=f[h>>2];f[s+4>>2]=f[h+4>>2];f[s+8>>2]=f[h+8>>2];e=0;while(1){if((e|0)==3)break;f[h+(e<<2)>>2]=0;e=e+1|0}g=g+-12|0;h=y+11|0;if((b[h>>0]|0)<0){Z0a(f[y>>2]|0,0);f[y+4>>2]=0}else{Z0a(y,0);b[h>>0]=0}yv(y);f[y>>2]=f[g>>2];f[y+4>>2]=f[g+4>>2];f[y+8>>2]=f[g+8>>2];e=0;while(1){if((e|0)==3)break;f[g+(e<<2)>>2]=0;e=e+1|0}p=b[h>>0]|0;if(!(((p<<24>>24<0?f[y+4>>2]|0:p&255)|0)==0?(x=0,ua(3194,s|0,32),p=x,x=0,p&1):0))m=49;do if((m|0)==49){g=f[r>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;OJa(g+(p*24|0)|0);e=p}f[r>>2]=g+-24;p=b[s+11>>0]|0;o=p<<24>>24<0;x=0;ka(38,g+-48|0,0,(o?f[s>>2]|0:s)|0,(o?f[s+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1)break;MTa(s);g=i;e=(f[r>>2]|0)+-24|0;m=54;break d}while(0);c=Ia()|0;MTa(s)}else{g=l;m=54}}else{g=l;m=54}}else{g=l;m=54}}else{g=l;m=54}while(0);e:do if((m|0)==54){x=0;ua(3194,e|0,40);p=x;x=0;if(!(p&1)){if((g|0)!=(c|0)?(b[g>>0]|0)==118:0){c=g+1|0;g=f[d>>2]|0;e=f[r>>2]|0}else m=58;do if((m|0)==58){m=s+11|0;n=s+4|0;o=q+11|0;p=q+4|0;k=1;e=g;f:while(1){h=e;e=f[r>>2]|0;g=f[d>>2]|0;while(1){i=(e-g|0)/24|0;x=0;l=ja(100,h|0,c|0,d|0)|0;j=x;x=0;if(j&1){m=62;break f}e=f[r>>2]|0;g=f[d>>2]|0;j=(e-g|0)/24|0;if((l|0)==(h|0)){m=93;break f}if(j>>>0>i>>>0)break;else h=l}f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[s+(e<<2)>>2]=0;e=e+1|0}e=i;while(1){if(e>>>0>=j>>>0)break;h=b[m>>0]|0;if((h<<24>>24<0?f[n>>2]|0:h&255)|0?(x=0,ia(216,s|0,123496)|0,h=x,x=0,h&1):0){m=72;break f}x=0;ua(3195,q|0,(f[d>>2]|0)+(e*24|0)|0);h=x;x=0;if(h&1){m=76;break f}h=b[o>>0]|0;g=h<<24>>24<0;x=0;ja(97,s|0,(g?f[q>>2]|0:q)|0,(g?f[p>>2]|0:h&255)|0)|0;h=x;x=0;if(h&1){m=77;break f}MTa(q);e=e+1|0}e=i;while(1){if(e>>>0>=j>>>0)break;h=f[r>>2]|0;g=0;while(1){if((g|0)==-1)break;i=g+-1|0;OJa(h+(i*24|0)|0);g=i}f[r>>2]=h+-24;e=e+1|0}h=b[m>>0]|0;e=f[n>>2]|0;g=h&255;if((h<<24>>24<0?e:g)|0){i=f[r>>2]|0;if((f[d>>2]|0)==(i|0)){m=106;break}if(!k){x=0;ia(216,i+-24|0,123496)|0;k=x;x=0;if(k&1){m=89;break}h=b[m>>0]|0;g=h&255;i=f[r>>2]|0;e=f[n>>2]|0}k=h<<24>>24<0;x=0;ja(97,i+-24|0,(k?f[s>>2]|0:s)|0,(k?e:g)|0)|0;k=x;x=0;if(k&1){m=89;break}else e=0}else e=k;MTa(s);k=e;e=l}if((m|0)==62){c=Ia()|0;break e}else if((m|0)==72)c=Ia()|0;else if((m|0)==76){c=Ia()|0;m=78}else if((m|0)==77){c=Ia()|0;MTa(q);m=78}else if((m|0)==89)c=Ia()|0;else if((m|0)==93){c=h;break}else if((m|0)==106){MTa(s);c=a;e=0;break c}MTa(s);break e}while(0);if((g|0)==(e|0)){c=a;e=0;break c}x=0;ua(3194,e+-24|0,41);s=x;x=0;if(!(s&1)){if(t&1|0?(x=0,ia(216,(f[r>>2]|0)+-24|0,123219)|0,s=x,x=0,s&1):0){m=20;break}if(t&2|0?(x=0,ia(216,(f[r>>2]|0)+-24|0,123226)|0,s=x,x=0,s&1):0){m=20;break}if(t&4|0?(x=0,ia(216,(f[r>>2]|0)+-24|0,123236)|0,t=x,x=0,t&1):0){m=20;break}switch(v|0){case 1:{x=0;ia(216,(f[r>>2]|0)+-24|0,124700)|0;v=x;x=0;if(v&1){m=20;break e}break}case 2:{x=0;ia(216,(f[r>>2]|0)+-24|0,124703)|0;v=x;x=0;if(v&1){m=20;break e}break}default:{}}v=b[y+11>>0]|0;t=v<<24>>24<0;x=0;ja(97,(f[r>>2]|0)+-24|0,(t?f[y>>2]|0:y)|0,(t?f[y+4>>2]|0:v&255)|0)|0;v=x;x=0;if(!(v&1)){e=1;break c}else m=20}else m=20}else m=20}while(0);if((m|0)==20)c=Ia()|0;MTa(y);p$a(f[w>>2]|0,b[w+4>>0]|0);m=111;break a}else{c=a;e=0}}else{c=a;e=0}while(0);MTa(y);p$a(f[w>>2]|0,b[w+4>>0]|0);if(!e){e=0;m=110;break a}}}else c=a;while(0);e=1;m=110}}while(0);if((m|0)==110){p$a(f[B>>2]|0,b[B+4>>0]|0);n4a(f[A>>2]|0,f[A+4>>2]|0);if(e){m=112;break}else{c=a;break}}else if((m|0)==111){p$a(f[B>>2]|0,b[B+4>>0]|0);n4a(f[A>>2]|0,f[A+4>>2]|0);Ua(c|0)}}else{c=a;m=112}while(0);u=z;return c|0} +function mQ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if((c|0)!=(b|0)){g=a+4|0;d=f[g>>2]|0;e=b;a=c;while(1){if((a|0)==(d|0))break;c=f[a>>2]|0;f[a>>2]=0;b=f[e>>2]|0;f[e>>2]=c;if(b|0)Cbb(b);e=e+4|0;a=a+4|0}a=f[g>>2]|0;while(1){if((a|0)==(e|0))break;a=a+-4|0;b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b)}f[g>>2]=e}return}function nQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2985;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2985,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function oQ(a,b){a=a|0;b=b|0;switch(f[b+8>>2]|0){case 0:{yPa(f[a+4>>2]|0,73895)|0;break}case 1:{yPa(f[a+4>>2]|0,73904)|0;break}case 2:{yPa(f[a+4>>2]|0,73916)|0;break}case 3:{Bfa(yPa(f[a+4>>2]|0,73928)|0,f[b+12>>2]|0)|0;break}default:hb()}return}function pQ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=d-c|0;if(g>>>0>4294967279)Rda();if(g>>>0<11)b[a+11>>0]=g;else{h=g+16&-16;e=s8(h)|0;f[a>>2]=e;f[a+8>>2]=h|-2147483648;f[a+4>>2]=g;a=e}e=a;while(1){if((c|0)==(d|0))break;Z0a(e,b[c>>0]|0);c=c+1|0;e=e+1|0}Z0a(a+g|0,0);return}function qQ(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Tt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)uWa(c+8|0);Cbb(c)}u=e;return}function rQ(a,b){a=a|0;b=b|0;b=Wz(a,b)|0;if(b|0)$R(a,b);return}function sQ(a,b){a=a|0;b=b|0;var c=0;switch(f[b+8>>2]|0){case 42:case 40:case 38:case 36:case 46:case 41:case 39:case 37:case 35:case 45:case 34:case 32:case 30:case 28:case 26:case 33:case 31:case 29:case 27:case 25:case 44:case 43:case 24:case 23:case 22:case 21:case 20:case 17:case 15:case 13:case 11:case 9:case 7:case 5:case 3:case 1:case 16:case 14:case 12:case 10:case 8:case 6:case 4:case 2:case 0:{c=1;break}case 19:case 18:{c=2;break}default:hb()}return (Hr(a,f[b+12>>2]|0)|0)+c|0}function tQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3013;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,3013,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function uQ(a){a=a|0;var b=0;RZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function vQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;do if(Qab(f[b>>2]|0)|0){d=a+44|0;if((t_(d,b)|0)==(a+48|0)){Bab(c);f[b>>2]=f[c>>2];break}else{fW(d,b);break}}while(0);u=e;return}function wQ(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;lT(e);b=e}f[d>>2]=c;e=f[a>>2]|0;WCa(f[a+12>>2]|0,e,(f[a+8>>2]|0)-e>>4)}return}function xQ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];e=g+12|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function yQ(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=n0a(a,0)|0;if(KBa(f[d>>2]|0,133104)|0){d=n0a(a,2)|0;d=Jbb(f[d>>2]|0)|0;a=Jbb(eua(2)|0)|0;a=Sqa(a,Iza()|0)|0;n4a(b,Sqa(a,eua(0)|0)|0);Sqa(d,f[b>>2]|0)|0;u=c;return}else Ca(66344,75335,1587,66384)}function zQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2133;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2133,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function AQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1462;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1462,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function BQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b+4>>2]|0;a:do if(!c){d=b;while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break a;d=c}}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}while(0);if((f[a>>2]|0)==(b|0))f[a>>2]=c;d=a+8|0;f[d>>2]=(f[d>>2]|0)+-1;Gi(f[a+4>>2]|0,b);Cbb(b);return}function CQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2926;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2926,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function DQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;h=g;f[h>>2]=b;a=Wz(a+184|0,h)|0;if((a|0)!=0?(e=lE(a+12|0,c)|0,(e|0)!=0):0)a=(f[e+12>>2]|0)==(d|0);else a=0;u=g;return a|0}function EQ(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);b=b+8|0;if(!(f[b>>2]|0))Ema(f[a>>2]|0,41)|0;else{_Ba(a);QP(a,f[b>>2]|0);pfa(a)}u=c;return}function FQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+48|0;e=d+12|0;c=d+16|0;g=d;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;__a(c);oUa(g);f[c+24>>2]=f[g>>2];f[c+28>>2]=a;x=0;ua(527,c|0,e|0);b=x;x=0;if(b&1){g=Ia()|0;P_a(c);zSa(a);Ua(g|0)}else{P_a(c);u=d;return}}function GQ(a){a=a|0;var b=0,c=0,d=0,e=0;a=d$a(a)|0;if((((((((a|0)!=0?(f[a+8>>2]|0)==12:0)?(e=n$a(f[a+16>>2]|0)|0,(e|0)!=0):0)?(b=e+8|0,(TRa(b)|0)!=0):0)?(c=d$a(f[a+12>>2]|0)|0,(c|0)!=0):0)?(f[c+8>>2]|0)==10:0)?(d=n$a(f[c+16>>2]|0)|0,(d|0)!=0):0)?yda(b,d+8|0)|0:0)a=f[c+12>>2]|0;else a=0;return a|0}function HQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=u;u=u+16|0;g=c;e=f[a>>2]|0;d=e+68|0;h=f[d>>2]|0;n4a(g,0);Yr(h,f[g>>2]|0)|0;Z7(e,f[b>>2]|0);Gv(f[d>>2]|0,11)|0;d=f[b+4>>2]|0;q0(e,d,(f[b+8>>2]|0)-d|0);b=f[a+4>>2]|0;f[b>>2]=(f[b>>2]|0)+1;u=c;return}function IQ(a){a=a|0;if(!a)return;else{IQ(f[a>>2]|0);IQ(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function JQ(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;_Z(b,122029,j7a(122029)|0);x=0;a=ia(214,b|0,a|0)|0;d=x;x=0;if(d&1){d=Ia()|0;MTa(b);Ua(d|0)}else{MTa(b);u=c;return a|0}return 0}function KQ(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;lT(d)}b=f[a>>2]|0;if(b|0)WCa(f[f[a+16>>2]>>2]|0,b,(f[a+12>>2]|0)-b>>4);return}function LQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=557;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,557,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function MQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2284;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2284,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function NQ(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[33196]|0;d=a+4|0;b=f[33197]|0;while(1){if((b|0)==(c|0))break;e=b+-40|0;vBa((f[d>>2]|0)+-40|0,e);f[d>>2]=(f[d>>2]|0)+-40;b=e}e=f[33196]|0;f[33196]=f[d>>2];f[d>>2]=e;e=a+8|0;c=f[33197]|0;f[33197]=f[e>>2];f[e>>2]=c;e=a+12|0;c=f[33198]|0;f[33198]=f[e>>2];f[e>>2]=c;f[a>>2]=f[d>>2];return}function OQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=683;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,683,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function PQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1243;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1243,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function QQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1023;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1023,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function RQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1148;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1148,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function SQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2014;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2014,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function TQ(a,b,c){a=a|0;b=b|0;c=c|0;b=f[c+40>>2]|0;a=f[c+36>>2]|0;while(1){if((a|0)==(b|0))break;c=DCa(134008,104483)|0;c=DCa(Bfa(c,f[f[a>>2]>>2]|0)|0,110709)|0;Ema(zm(c,B0(f[(f[a>>2]|0)+36>>2]|0)|0)|0,10)|0;a=a+4|0}return}function UQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=321;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,321,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function VQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=928;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,928,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function WQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=805;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,805,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function XQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2220;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2220,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function YQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2713;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2713,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function ZQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+32|0;e=c+16|0;g=c;d=SKa(f[a>>2]|0,b,2)|0;XSa(g,32,0);f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];b=e0(a,e)|0;b=Kpa(f[a>>2]|0,36,d,b)|0;b=rBa(f[a>>2]|0,24,b)|0;u=c;return b|0}function _Q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2248;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2248,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function $Q(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2741;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2741,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function aR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2954;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2954,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function bR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1417;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1417,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function cR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=481;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,481,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function dR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=262;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,262,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function eR(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(644,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;zSa(a);Ua(d|0)}else{Xha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function fR(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;d=f[32963]|0;g=a+4|0;b=d;e=(f[32964]|0)-b|0;c=(f[g>>2]|0)+(0-(e>>2)<<2)|0;f[g>>2]=c;if((e|0)>0){Ku(c|0,d|0,e|0)|0;d=g;c=f[g>>2]|0;b=f[32963]|0}else d=g;f[32963]=c;f[d>>2]=b;g=a+8|0;e=f[32964]|0;f[32964]=f[g>>2];f[g>>2]=e;g=a+12|0;e=f[32965]|0;f[32965]=f[g>>2];f[g>>2]=e;f[a>>2]=f[d>>2];return}function gR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1898;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1898,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function hR(a){a=a|0;var c=0,d=0;Rab(a);b[a+1>>0]=1;b[a+2>>0]=0;d=a+4|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}d=a+16|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}d=a+28|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[d+(c<<2)>>2]=0;c=c+1|0}return}function iR(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(168,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;zSa(a);Ua(d|0)}else{Xha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function jR(a){a=a|0;if(!a)return;else{jR(f[a>>2]|0);jR(f[a+4>>2]|0);WTa(a+16|0);Cbb(a);return}}function kR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1658;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1658,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function lR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1629;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1629,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function mR(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;d=j+8|0;g=j+4|0;h=j;if(b[(f[a+44>>2]|0)+1>>0]|0){i=Jbb(f[a+36>>2]|0)|0;e=f[c+8>>2]|0;f[g>>2]=e;f[d>>2]=f[g>>2];if(!(gna(i,d)|0)){f[h>>2]=e;f[d>>2]=f[h>>2];d=(fna(i,d)|0)!=0}else d=1;Pua(a,d,c)}u=j;return}function nR(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&a>>>0>4294967295){do{e=a;a=yYa(a|0,c|0,10,0)|0;f=c;c=I;g=GBa(a|0,c|0,-10,-1)|0;g=BOa(e|0,f|0,g|0,I|0)|0;d=d+-1|0;b[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=a}else c=a;if(c)do{g=c;c=(c>>>0)/10|0;f=(g+(X(c,-10)|0)|48)&255;d=d+-1|0;b[d>>0]=f}while(g>>>0>=10);return d|0}function oR(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[32836]|0;e=a+4|0;d=(f[32837]|0)-c|0;b=(f[e>>2]|0)+(0-(d>>2)<<2)|0;f[e>>2]=b;if((d|0)>0){Ku(b|0,c|0,d|0)|0;c=e;b=f[e>>2]|0}else c=e;e=f[32836]|0;f[32836]=b;f[c>>2]=e;e=a+8|0;d=f[32837]|0;f[32837]=f[e>>2];f[e>>2]=d;e=a+12|0;d=f[32838]|0;f[32838]=f[e>>2];f[e>>2]=d;f[a>>2]=f[c>>2];return}function pR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2650;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2650,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function qR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2861;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2861,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function rR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=169;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,169,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function sR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;b=a+48|0;c=a+64|0;d=f[c>>2]|0;if(d>>>0<(f[a+68>>2]|0)>>>0){f[d>>2]=0;g=d+4|0;f[g>>2]=0;e=d+8|0;f[e>>2]=0;f[d>>2]=f[b>>2];d=a+52|0;f[g>>2]=f[d>>2];a=a+56|0;f[e>>2]=f[a>>2];f[a>>2]=0;f[d>>2]=0;f[b>>2]=0;f[c>>2]=(f[c>>2]|0)+12}else AA(a+60|0,b);return}function tR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1807;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1807,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function uR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1378;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1378,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function vR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1598;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1598,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function wR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1336;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1336,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function xR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2343;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2343,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function yR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=u;u=u+64|0;b=e;f[a+16>>2]=c;f[a+20>>2]=d;zx(b,d);x=0;ua(467,a|0,b|0);d=x;x=0;if((!(d&1)?(x=0,ua(468,a|0,b|0),d=x,x=0,!(d&1)):0)?(x=0,ta(460,a|0),d=x,x=0,!(d&1)):0){zV(b);u=e;return}d=Ia()|0;zV(b);Ua(d|0)}function zR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+48|0;g=d+16|0;e=d+32|0;h=d;a=f[a+36>>2]|0;Jbb(a)|0;_0a(e,a);t$a(h,G1a(c)|0);f[g>>2]=f[h>>2];f[g+4>>2]=f[h+4>>2];f[g+8>>2]=f[h+8>>2];f[g+12>>2]=f[h+12>>2];c=e0(e,g)|0;c=Kpa(f[e>>2]|0,7,b,c)|0;u=d;return c|0}function AR(a){a=a|0;var c=0,d=0,e=0,f=0,g=0;while(1){c=b[a>>0]|0;e=c<<24>>24;d=a+1|0;if(!(w6a(e)|0))break;else a=d}switch(e|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:{g=0;d=a;a=e}}if((f|0)==5){c=b[d>>0]|0;g=a;a=c<<24>>24}if(!(abb(a)|0))a=0;else{a=0;do{d=d+1|0;a=(a*10|0)+48-(c<<24>>24)|0;c=b[d>>0]|0}while((abb(c<<24>>24)|0)!=0)}return ((g|0)==0?0-a|0:a)|0}function BR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2404;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2404,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function CR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2432;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2432,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function DR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2463;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2463,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function ER(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2775;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2775,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function FR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1570;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1570,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function GR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=u;u=u+16|0;i=e|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=d>>31|((d|0)<0?-1:0)<<1;j=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;a=SRa(h^a|0,g^b|0,h|0,g|0)|0;b=I;fk(a,b,SRa(k^c|0,j^d|0,k|0,j|0)|0,I,i)|0;d=SRa(f[i>>2]^h|0,f[i+4>>2]^g|0,h|0,g|0)|0;c=I;u=e;return (I=c,d)|0}function HR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;f[a+12>>2]=f[c>>2];mna(a);x=0;ua(3199,f[d>>2]|0,b|0);c=x;x=0;if(c&1){d=Ia()|0;aY(a);Ua(d|0)}else{f[d>>2]=(f[d>>2]|0)+24;return}}function IR(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;f[c>>2]=a;a=b;d=Jbb(eua(4)|0)|0;d=Sqa(d,Boa(133176)|0)|0;c=Sqa(d,Boa(c)|0)|0;c=Sqa(c,eua(0)|0)|0;n4a(a,Sqa(c,eua(0)|0)|0);u=b;return f[a>>2]|0}function JR(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+48|0;b=d;jk(a,c);rza(b,c);p4a(b);x=0;ta(467,b|0);e=x;x=0;if((!(e&1)?(x=0,ta(438,b|0),e=x,x=0,!(e&1)):0)?(x=0,ua(1279,a|0,c|0),e=x,x=0,!(e&1)):0){Wca(b);u=d;return}e=Ia()|0;Wca(b);Ua(e|0)}function KR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1747;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1747,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function LR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2104;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2104,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function MR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2679;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2679,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function NR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2044;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2044,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function OR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1897;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1897,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function PR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2803;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2803,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function QR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3143;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,3143,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function RR(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(1511,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;zSa(a);Ua(d|0)}else{Xha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function SR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=841;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,841,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function TR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=109;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,109,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function UR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1540;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1540,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function VR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=1779;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,1779,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function WR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2342;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2342,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function XR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2072;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2072,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function YR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3102;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,3102,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function ZR(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2892;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2892,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function _R(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(105,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;zSa(a);Ua(d|0)}else{Xha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function $R(a,c){a=a|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;Tt(d,a,c);c=f[d>>2]|0;f[d>>2]=0;if(c|0){if(b[d+8>>0]|0)GWa(c+8|0);Cbb(c)}u=e;return}function aS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=293;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,293,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function bS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2495;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2495,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function cS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2191;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2191,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function dS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2833;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2833,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function eS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=590;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,590,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function fS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2312;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2312,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function gS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3071;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,3071,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function hS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=3041;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,3041,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function iS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a+9>>0]=0;cy(a,e)|0;if(!(b[a+8>>0]|0)){e=HV(a,e)|0;DCa(Pca(e,c)|0,81185)|0;qI(d,e)|0}return}function jS(a,b){a=a|0;b=b|0;var c=0,d=0;d=d3(a,f[b+16>>2]|0)|0;c=d3(a,f[b+8>>2]|0)|0;return Noa(a+32|0,d,c,d3(a,f[b+12>>2]|0)|0)|0}function kS(a){a=a|0;if(!a)return;else{kS(f[a>>2]|0);kS(f[a+4>>2]|0);Cbb(a);return}}function lS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=436;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,436,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function mS(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;d=f[a+8>>2]|0;g=f[a>>2]|0;e=f[g>>2]|0;f[g>>2]=e+1;g=a+4|0;if(e>>>0<(f[f[g>>2]>>2]|0)>>>0){c=f[(f[(f[d>>2]|0)+36>>2]|0)+(e<<2)>>2]|0;a=f[a+12>>2]|0;b=f[a+4>>2]|0;a=f[a>>2]|0;while(1){if((a|0)==(b|0))break;ju(d,f[a>>2]|0,c);a=a+4|0}a=(e+1|0)==(f[f[g>>2]>>2]|0)&1}else a=1;return a|0}function nS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=529;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,529,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function oS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2523;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2523,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function pS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a+9>>0]=0;cy(a,e)|0;if(!(b[a+8>>0]|0)){e=HV(a,e)|0;DCa(Pca(e,c)|0,81185)|0;tG(d,e)|0}return}function qS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(103,a|0,d|0);e=x;x=0;if(e&1){e=Ia()|0;zSa(a);Ua(e|0)}else{hja(a,f[b>>2]|0,f[c>>2]|0,d);break}}while(0);return}function rS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=716;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,716,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function sS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=2622;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,2622,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function tS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;d=i+4|0;e=i;f[d>>2]=b;f[e>>2]=c;if(!(f[c>>2]|0))Ca(115880,115840,372,115887);g=a+8|0;h=f[g>>2]|0;if(h>>>0<(f[a+12>>2]|0)>>>0){MXa(h,b,c);f[g>>2]=(f[g>>2]|0)+8}else yF(a+4|0,d,e);u=i;return}function uS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b+8|0;e=f[c>>2]|0;d=a+32|0;Xpa(a,e>>>0<(kQa(Jbb(f[d>>2]|0)|0)|0)>>>0,b,84700);e=b+4|0;Xpa(a,v2a(f[e>>2]|0)|0,b,84737);e=f[e>>2]|0;d=Jbb(f[d>>2]|0)|0;Xpa(a,(e|0)==(s9(d,f[c>>2]|0)|0),b,84826);return}function vS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=n0a(a,0)|0;if(KBa(f[e>>2]|0,133104)|0){e=n0a(a,2)|0;e=Jbb(f[e>>2]|0)|0;b=Sqa(Jbb(eua(2)|0)|0,b)|0;n4a(c,Sqa(b,eua(0)|0)|0);Sqa(e,f[c>>2]|0)|0;u=d;return}else Ca(66344,75335,1581,66365)}function wS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=137;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,137,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function xS(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;e=h+8|0;j=h+4|0;g=h;i=f[c+4>>2]|0;f[j>>2]=f[d+8>>2];f[e>>2]=f[j>>2];d=gna(i,e)|0;if((d|0)!=0?(b[d+12>>0]|0)==0:0)oz(a,c,f[d+8>>2]|0);else{f[g>>2]=f[33152];f[e>>2]=f[g>>2];nXa(a,e)}u=h;return}function yS(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;gA(c,fZa(f[a+40>>2]|0)|0,0);if(hOa(c,f[b>>2]|0)|0?(x=0,ua(1249,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;_7(c);Ua(d|0)}_7(c);u=d;return}function zS(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;gA(c,fZa(f[a+40>>2]|0)|0,0);if(hOa(c,f[b>>2]|0)|0?(x=0,ua(1029,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;_7(c);Ua(d|0)}_7(c);u=d;return}function AS(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;a:do switch((d&176)<<24>>24){case 16:{d=b[a>>0]|0;switch(d<<24>>24){case 43:case 45:{a=a+1|0;break a}default:{}}if((c-a|0)>1&d<<24>>24==48){switch(b[a+1>>0]|0){case 88:case 120:break;default:{e=7;break a}}a=a+2|0}else e=7;break}case 32:{a=c;break}default:e=7}while(0);return a|0}function BS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;b=a+164|0;c=Wz(b,d)|0;if(!c){a=bTa(a)|0;b=hm(b,d)|0;f[b>>2]=a;b=a}else b=f[c+12>>2]|0;u=e;return b|0}function CS(a){a=a|0;var b=0,c=0;Koa(a+112|0);tEa(a+88|0);c=a+84|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){OX(b);Cbb(b)}SQa(a+64|0);tEa(a+52|0);zSa(a+32|0);zSa(a+20|0);zSa(a+8|0);return}function DS(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;gA(c,fZa(f[a+40>>2]|0)|0,0);if(hOa(c,f[b>>2]|0)|0?(x=0,ua(934,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;_7(c);Ua(d|0)}_7(c);u=d;return}function ES(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;b=f[b>>2]|0;gA(c,fZa(f[a+40>>2]|0)|0,0);if(hOa(c,f[b>>2]|0)|0?(x=0,ua(811,a|0,c|0),b=x,x=0,b&1):0){d=Ia()|0;_7(c);Ua(d|0)}_7(c);u=d;return}function FS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;b=Bla(f[a+36>>2]|0,b)|0;f[e>>2]=b;c=a+4|0;d=f[c>>2]|0;if(d>>>0<(f[a+8>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else LL(a,e);u=g;return}function GS(a){a=a|0;if(!a)return;else{GS(f[a>>2]|0);GS(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function HS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=322;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,322,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function IS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;c=e+8|0;g=e+4|0;d=e;b=f[b>>2]|0;f[g>>2]=b;f[c>>2]=f[g>>2];if(!(Xma(a,c)|0))Ca(111914,111927,163,111958);f[d>>2]=b;f[c>>2]=f[d>>2];if(!(hna(a,c)|0)){g=s8(12)|0;j1a(g);f[g+4>>2]=b;f[g>>2]=b;f[g+8>>2]=0;Zs(a,g)}u=e;return}function JS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=b+4|0;b=a+28|0;if((f[c>>2]|0)==5)iTa(f[b>>2]|0);Gv(f[b>>2]|0,11)|0;d=a+60|0;e=f[d>>2]|0;if((f[a+56>>2]|0)==(e|0))Ca(111005,111025,378,111126);f[d>>2]=e+-4;if((f[c>>2]|0)==5)iTa(f[b>>2]|0);return}function KS(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=(f[a+24>>2]|0)==0|b;f[a+16>>2]=b;if(!(f[a+20>>2]&b)){u=c;return}a=Ea(16)|0;B$a();f[d>>2]=1;f[d+4>>2]=47296;x=0;ua(3188,a|0,d|0);d=x;x=0;if(d&1){d=Ia()|0;La(a|0);a=d}else{x=0;va(98,a|0,38056,342);x=0;a=Ia()|0}Ua(a|0)}function LS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;c=h+4|0;d=h;f[c>>2]=408;f[d>>2]=b;do if(f[b>>2]|0){e=a+8|0;g=f[e>>2]|0;if(g>>>0<(f[a+12>>2]|0)>>>0){MXa(g,408,b);f[e>>2]=(f[e>>2]|0)+8;break}else{yF(a+4|0,c,d);break}}while(0);u=h;return}function MS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];u2a(g+12|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function NS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;c=a+8|0;b[c>>0]=0;x=0;ua(88,g+8|0,e|0);e=x;x=0;if(e&1){e=Ia()|0;f[a>>2]=0;Cbb(g);Ua(e|0)}else{b[c>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}}function OS(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=MSa(f[a+4>>2]|0)|0;f[d+4>>2]=1;f[d+24>>2]=c;c=ZQa(a,Or(b,1)|0)|0;f[d+12>>2]=c;c=ZQa(a,Or(b,2)|0)|0;f[d+16>>2]=c;c=ZQa(a,Or(b,3)|0)|0;f[d+20>>2]=c;Jpa(d);return d|0}function PS(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=b+4|0;d=(f[c>>2]|0)-(f[b>>2]|0)|0;do if(d|0){x=0;ua(585,a|0,d>>2|0);d=x;x=0;if(d&1){d=Ia()|0;zSa(a);Ua(d|0)}else{Xha(a,f[b>>2]|0,f[c>>2]|0);break}}while(0);return}function QS(a){a=a|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;d=f[a>>2]|0;if(!(g2a(f[d>>2]|0,f[a+4>>2]|0)|0))Ca(80280,80299,386,80321);if((b[a+8>>0]|0?f[d+40>>2]|0:0)?(d=$G(d)|0,(d|0)!=(f[a+12>>2]|0)):0){Q_a();x=0;ia(52,c|0,80327)|0;d=x;x=0;if(d&1){Ia()|0;lCa()}else lCa()}u=e;return}function RS(a){a=a|0;var b=0,c=0,d=0;a=u$a(a)|0;if(((((((a|0)!=0?(d=f[a+16>>2]|0,(d|0)!=0):0)?(f[a+12>>2]|0)==0:0)?(f[a+4>>2]|0)==0:0)?(b=d$a(d)|0,(b|0)!=0):0)?(f[b+8>>2]|0)==15:0)?(c=n$a(f[b+16>>2]|0)|0,(c|0)!=0):0){d=(TRa(c+8|0)|0)>>>0<2147483647;a=d?a:0}else a=0;return a|0}function SS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=(c-e|0)/40|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){a=e+(b*40|0)|0;while(1){if((c|0)==(a|0))break;e=c+-40|0;Jxa(e);c=e}f[g>>2]=a}}else yy(a,b-d|0);return}function TS(a,b){a=a|0;b=b|0;if(!b)return;else{TS(a,f[b>>2]|0);TS(a,f[b+4>>2]|0);P_a(b+16|0);Cbb(b);return}}function US(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;if(!c)Ca(97308,97313,928,97333);h=(f[c+12>>2]|0)-(f[c+8>>2]|0)>>2;e=b+8|0;i7(e,h);g=h+-1|0;d=0;while(1){if((d|0)==(h|0))break;j=dk(a)|0;i=ODa(e,g-d|0)|0;f[i>>2]=j;d=d+1|0}f[b+4>>2]=f[c+4>>2];return}function VS(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];f[g+12>>2]=0;f[g+16>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function WS(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111005,111025,467,111044);f[c>>2]=d+-4;c=b+4|0;b=a+28|0;if((f[c>>2]|0)==5)iTa(f[b>>2]|0);Gv(f[b>>2]|0,11)|0;if((f[c>>2]|0)==5)iTa(f[b>>2]|0);return}function XS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;if(!c){d=a;c=f[a>>2]|0}else{g=32-c|0;d=g>>>0>b>>>0?b:g;e=f[a>>2]|0;f[e>>2]=f[e>>2]&~(-1>>>(g-d|0)&-1<>2]=c;b=b-d|0;d=a}a=b>>>5;iH(c|0,0,a<<2|0)|0;b=b&31;if(b|0){g=(f[d>>2]|0)+(a<<2)|0;f[d>>2]=g;f[g>>2]=f[g>>2]&~(-1>>>(32-b|0))}return}function YS(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=0;a=(VU(a,b)|0)+8|0;while(1){a=f[a>>2]|0;if(!a){a=3;break}d=f[a+8>>2]|0;g=f[d+16>>2]|0;e=0;d=f[d+12>>2]|0;while(1){if((d|0)==(g|0))break;h=(f[d>>2]|0)==(b|0);e=e|h;c=c+(h&1)|0;d=d+4|0}if(!e){a=8;break}}if((a|0)==3)return c|0;else if((a|0)==8)Ca(113536,113542,77,113565);return 0}function ZS(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0;j=u;u=u+16|0;g=j;i=a&255;b[g>>0]=i;d=f[11555]|0;if(!d)if(!(i8(46204)|0)){d=f[11555]|0;e=4}else c=-1;else e=4;do if((e|0)==4){e=f[11556]|0;if(e>>>0>>0?(c=a&255,(c|0)!=(b[46279]|0)):0){f[11556]=e+1;b[e>>0]=i;break}if((ec[f[46240>>2]&127](46204,g,1)|0)==1)c=h[g>>0]|0;else c=-1}while(0);u=j;return c|0}function _S(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(116)|0;f[a>>2]=g;f[a+4>>2]=c+8;ZUa(g+8|0,e);vza(g+16|0,e+8|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function $S(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function aT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113901,76794,149,77034);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){J4(d,b);f[c>>2]=(f[c>>2]|0)+12}else mB(a+80|0,b);return}function bT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113901,76794,149,77034);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){J4(d,b);f[c>>2]=(f[c>>2]|0)+12}else nB(a+80|0,b);return}function cT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113901,76794,149,77034);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){J4(d,b);f[c>>2]=(f[c>>2]|0)+12}else oB(a+80|0,b);return}function dT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113901,76794,149,77034);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){J4(d,b);f[c>>2]=(f[c>>2]|0)+12}else pB(a+80|0,b);return}function eT(a,b){a=a|0;b=b|0;var c=0,d=0;d=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[d>>2]|0))Ca(113901,76794,149,77034);b=a+44|0;c=a+84|0;d=f[c>>2]|0;if(d>>>0<(f[a+88>>2]|0)>>>0){J4(d,b);f[c>>2]=(f[c>>2]|0)+12}else qB(a+80|0,b);return}function fT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)!=(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;c=c+8|0;t$a(a,((f[b>>2]|0)!=(f[c>>2]|0)?1:(f[b+4>>2]|0)!=(f[c+4>>2]|0))&1);break}case 3:{t$a(a,+TNa(b)!=+TNa(c)&1);break}case 4:{t$a(a,+SNa(b)!=+SNa(c)&1);break}default:hb()}return}function gT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)==(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;c=c+8|0;t$a(a,((f[b>>2]|0)==(f[c>>2]|0)?(f[b+4>>2]|0)==(f[c+4>>2]|0):0)&1);break}case 3:{t$a(a,+TNa(b)==+TNa(c)&1);break}case 4:{t$a(a,+SNa(b)==+SNa(c)&1);break}default:hb()}return}function hT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;if(!c){d=a;c=f[a>>2]|0}else{g=32-c|0;d=g>>>0>b>>>0?b:g;e=f[a>>2]|0;f[e>>2]=f[e>>2]|-1>>>(g-d|0)&-1<>2]=c;b=b-d|0;d=a}a=b>>>5;iH(c|0,-1,a<<2|0)|0;b=b&31;if(b|0){g=(f[d>>2]|0)+(a<<2)|0;f[d>>2]=g;f[g>>2]=f[g>>2]|-1>>>(32-b|0)}return}function iT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,X(f[c+8>>2]|0,f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,GBa(f[c>>2]|0,f[c+4>>2]|0,f[b>>2]|0,f[b+4>>2]|0)|0,I);break}case 3:{HAa(a,+TNa(b)*+TNa(c));break}case 4:{pqa(a,+SNa(b)*+SNa(c));break}default:hb()}return}function jT(){var a=0,b=0,c=0,d=0;c=u;u=u+16|0;a=c;x=0;b=ia(212,1,a|0)|0;d=x;x=0;do if(!(d&1))if(!b){b=f[a>>2]|0;d=f[a+4>>2]|0;b=GBa(b|0,((b|0)<0)<<31>>31|0,1e9,0)|0;d=BOa(b|0,I|0,d|0,((d|0)<0)<<31>>31|0)|0;u=c;return d|0}else{x=0;ua(3186,f[33448]|0,118820);x=0;break}while(0);d=Ja(0)|0;y2a(d);return 0}function kT(){var a=0,b=0,c=0,d=0;a=f[33200]|0;d=f[33199]|0;b=a-d|0;c=(b|0)/20|0;if(c>>>0>=4){if((b|0)!=80){b=d+80|0;while(1){if((a|0)==(b|0))break;d=a+-20|0;SQa(d);a=d}f[33200]=b}}else ww(4-c|0);return}function lT(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;aY(e);b=e}f[d>>2]=c;e=f[a>>2]|0;WCa(f[a+12>>2]|0,e,(f[a+8>>2]|0)-e>>4)}return}function mT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+48|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;ESa(c);f[c+24>>2]=b;f[c+28>>2]=a;x=0;ua(682,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;P_a(c);zSa(a);Ua(e|0)}else{P_a(c);u=d;return}}function nT(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=BF(a,c,b)|0;b=f[b>>2]|0;if(b|0){u=c;return b+20|0}b=Ea(8)|0;x=0;ua(98,b|0,112974);c=x;x=0;if(c&1){c=Ia()|0;La(b|0);Ua(c|0)}else{f[b>>2]=50492;Pa(b|0,39504,418)}return 0}function oT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;Px(c,a,b,e);u=d;return (f[c>>2]|0)+32|0}function pT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)-(f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,SRa(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}case 3:{HAa(a,+TNa(b)-+TNa(c));break}case 4:{pqa(a,+SNa(b)-+SNa(c));break}default:hb()}return}function qT(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[b+16>>2]=0;f[b+24>>2]=f[b+20>>2];f[h>>2]=f[c>>2];f[g>>2]=f[h>>2];Nk(a,b,g,d);u=e;return}function rT(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+96|0;c=d;if((!(u6a(f[b>>2]|0)|0)?v2a(f[b+4>>2]|0)|0:0)?(gA(c,fZa(f[a+40>>2]|0)|0,b),a=qza(c)|0,_7(c),!a):0)a=(B0(b)|0)>>>0>1;else a=0;u=d;return a|0}function sT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;if(DQa(a,b)|0)Ca(89628,88985,143,89671);b=s8(20)|0;x=0;ua(1504,b|0,c|0);c=x;x=0;if(c&1){e=Ia()|0;Cbb(b);Ua(e|0)}else{d=GE(a,d)|0;f[d>>2]=b;u=e;return}}function tT(a){a=a|0;var b=0,c=0;a:while(1)switch(f[a>>2]|0){case 0:{c=3;break a}case 1:{c=4;break a}case 6:{b=5;break a}case 2:{a=eQa(a,1)|0;break}case 5:{a=eQa(a,0)|0;break}default:{c=8;break a}}if((c|0)==3){a=a+4|0;c=9}else if((c|0)==4){a=(f[a+4>>2]|0)+4|0;c=9}else if((c|0)==8)hb();if((c|0)==9)b=f[a>>2]|0;return b|0}function uT(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=vUa(a)|0;b[a+20>>0]=0;b[a+8>>0]=c;wHa(a+12|0,d,0)|0;wHa(a+16|0,e,0)|0;f[a+24>>2]=g;g=a+28|0;f[g>>2]=h;f[a+32>>2]=i;uoa(a);h=f[(f[g>>2]|0)+4>>2]|0;if((h|0)==(i|0)|(v2a(h)|0)^1)return a|0;else Ca(54304,54111,278,54371);return 0}function vT(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,(f[c+8>>2]|0)+(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,BOa(f[c>>2]|0,f[c+4>>2]|0,f[b>>2]|0,f[b+4>>2]|0)|0,I);break}case 3:{HAa(a,+TNa(b)+ +TNa(c));break}case 4:{pqa(a,+SNa(b)+ +SNa(c));break}default:hb()}return}function wT(a){a=a|0;var c=0,d=0,e=0;e=a+92|0;if(!(f[e>>2]&16)){f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;c=f[a+52>>2]|0;do if(c>>>0>8)if(!(b[a+98>>0]|0)){d=f[a+56>>2]|0;c=d+((f[a+60>>2]|0)+-1)|0;break}else{d=f[a+32>>2]|0;c=d+(c+-1)|0;break}else{c=0;d=0}while(0);f[a+24>>2]=d;f[a+20>>2]=d;f[a+28>>2]=c;f[e>>2]=16}return}function xT(a){a=a|0;if(!a)return;else{xT(f[a>>2]|0);xT(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function yT(a){a=a|0;if(!a)return;else{yT(f[a>>2]|0);yT(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function zT(a,c,d){a=a|0;c=c|0;d=d|0;b[a+9>>0]=0;cy(a,0)|0;if(!(b[a+8>>0]|0)){a=HV(a,0)|0;DCa(Pca(a,c)|0,81185)|0;cJ(d,a)|0}return}function AT(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;aY(d)}b=f[a>>2]|0;if(b|0)WCa(f[f[a+16>>2]>>2]|0,b,(f[a+12>>2]|0)-b>>4);return}function BT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;rXa(a);f[a+24>>2]=b;f[a+28>>2]=f[c>>2];c=a+32|0;f[c>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;f[e>>2]=b;x=0;ua(528,a|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;zSa(c);P_a(a);Ua(e|0)}else{u=d;return}}function CT(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+144|0;d=wA(c,b)|0;if(!d){a=bTa(a)|0;d=rm(c,b)|0;f[d>>2]=a}else a=f[d+24>>2]|0;return a|0}function DT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;g=d;c=Jbb(f[a+84>>2]|0)|0;f[g>>2]=f[b+8>>2];f[e>>2]=f[g>>2];e=iMa(a,e)|0;b=b+16|0;VPa(c,e,f[b>>2]|0);if(!(f[b>>2]|0))o0a(a);else VPa(c,nUa(a)|0,0);u=d;return}function ET(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=(f[a+4>>2]|0)-(f[a>>2]|0)>>4;while(1){e=c+-1|0;if((c|0)<=0)break;d=f[a>>2]|0;c=f[d+(e<<4)>>2]|0;if(!(Oab(c)|0)){if(zab(c)|0)DW(b,f[d+(e<<4)+4>>2]|0)|0}else wC(b,f[d+(e<<4)+4>>2]|0);c=e}return}function FT(a){a=a|0;var b=0;RZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function GT(a){a=a|0;var b=0;RZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function HT(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+20>>2]|0);QP(a,f[b+24>>2]|0);pfa(a);u=c;return}function IT(a){a=a|0;var b=0,c=0;b=f[a+8>>2]|0;do if(b){c=f[b>>2]|0;if((c|0)==(a|0)){f[b>>2]=0;a=f[b+4>>2]|0;if(!a)break;b=$wa(a)|0;break}else{f[b+4>>2]=0;if(!c)break;b=$wa(c)|0;break}}else b=0;while(0);return b|0}function JT(a){a=a|0;var b=0;f_(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function KT(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(24)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];bWa(g+12|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function LT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;f[a>>2]=b;f[a+4>>2]=c;d=(c>>>5)+((c&31|0)!=0&1)|0;f[a+12>>2]=d;b=(c>>>0)/(d>>>0)|0;f[a+8>>2]=b;f[a+20>>2]=0;e=d+((X(b,d)|0)-c)|0;f[a+16>>2]=e;f[a+24>>2]=0;f[a+28>>2]=d>>>0>c>>>0?0:-1>>>(32-b|0);f[a+32>>2]=b>>>0<31?-1>>>(31-b|0):-1;return}function MT(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+8|0;i=h+4|0;e=h;g=f[33164]|0;f[i>>2]=g;f[d>>2]=f[i>>2];if(!(gna(c,d)|0)){f[e>>2]=g;i=KSa(1,c)|0;f[d>>2]=f[e>>2];Ys(c,jka(d,1,i,0)|0);b[a+28>>0]=1}u=h;return}function NT(a){a=a|0;if(!a)return;else{NT(f[a>>2]|0);NT(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function OT(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+32|0;do if(b[d>>0]|0){a=f[a+28>>2]|0;d=a+4|0;e=f[d>>2]|0;if((e|0)==(f[a+8>>2]|0)){LL(a,c);break}else{f[e>>2]=f[c>>2];f[d>>2]=(f[d>>2]|0)+4;break}}else{b[d>>0]=1;kf(a,c)}while(0);return}function PT(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;yA(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function QT(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g;e=f[c>>2]|0;if((b[e>>0]|0)!=46)Ca(66501,65740,655,66513);e=e+1|0;f[c>>2]=e;Dh(d,e);if((f[d+12>>2]|0)==2){f[c>>2]=(f[c>>2]|0)+(f[d+8>>2]|0);e=YX(a,f[d>>2]|0)|0;u=g;return e|0}else Ca(66526,65740,658,66513);return 0}function RT(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+12>>2]|0);QP(a,f[b+16>>2]|0);pfa(a);u=c;return}function ST(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;a1a(a);c=f[c+8>>2]|0;if(!((c|0)!=0?(oz(d,b,c),f[a>>2]=f[d>>2],f[a+4>>2]=f[d+4>>2],f[a+8>>2]=f[d+8>>2],f[a+12>>2]=f[d+12>>2],f[a+16>>2]=f[d+16>>2],K0a(a)|0):0))f[a+16>>2]=f[33118];u=e;return}function TT(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+24>>2]|0);QP(a,f[b+28>>2]|0);pfa(a);u=c;return}function UT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((c|0)==1)b=b-(f[a+8>>2]|0)+(f[a+4>>2]|0)|0;d=a+20|0;e=a+28|0;if((f[d>>2]|0)>>>0>(f[e>>2]|0)>>>0?(ec[f[a+36>>2]&127](a,0,0)|0,(f[d>>2]|0)==0):0)b=-1;else{f[a+16>>2]=0;f[e>>2]=0;f[d>>2]=0;if((ec[f[a+40>>2]&127](a,b,c)|0)<0)b=-1;else{f[a+8>>2]=0;f[a+4>>2]=0;f[a>>2]=f[a>>2]&-17;b=0}}return b|0}function VT(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(32)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];EXa(g+16|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function WT(a){a=a|0;var b=0;l$(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function XT(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;switch(f[b>>2]|0){case 3:{t$a(d,f[c+8>>2]&-2147483648|f[b+8>>2]&2147483647);QHa(a,d);break}case 4:{b=b+8|0;XSa(d,f[b>>2]|0,f[c+8+4>>2]&-2147483648|f[b+4>>2]&2147483647);c=d+8|0;uGa(a,f[d>>2]|0,f[c>>2]|0,f[c+4>>2]|0);break}default:hb()}u=e;return}function YT(a){a=a|0;var c=0,d=0,e=0,g=0;g=u;u=u+32|0;c=g+4|0;d=g;e=g+8|0;DY(e,a);x=0;va(88,d|0,((b[e+11>>0]|0)<0?f[e>>2]|0:e)|0,0);a=x;x=0;if(a&1){g=Ia()|0;MTa(e);Ua(g|0)}else{L1a(c,f[d>>2]|0);MTa(e);u=g;return f[c>>2]|0}return 0}function ZT(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+48|0;c=d;rza(c,a);G0a(c,-1);p4a(c);x=0;ua(1292,c|0,b|0);a=x;x=0;if(!(a&1)?(x=0,ta(438,c|0),a=x,x=0,!(a&1)):0){Wca(c);u=d;return b|0}d=Ia()|0;Wca(c);Ua(d|0);return 0}function _T(a){a=a|0;var b=0;p0(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function $T(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111005,111025,431,111069);f[c>>2]=d+-4;a=a+28|0;Gv(f[a>>2]|0,11)|0;do if((f[b+4>>2]|0)==5)if(!(f[b+16>>2]|0))Ca(111080,111025,443,111069);else{iTa(f[a>>2]|0);break}while(0);return}function aU(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c+8|0;d=c;f[d>>2]=a;dy(b,a,d);u=c;return (f[b>>2]|0)+32|0}function bU(a,b){a=a|0;b=b|0;b=t_(a,b)|0;if((b|0)!=(a+4|0))fG(a,b);return}function cU(a,b){a=a|0;b=b|0;b=t_(a,b)|0;if((b|0)!=(a+4|0))gG(a,b);return}function dU(a,b){a=a|0;b=b|0;b=t_(a,b)|0;if((b|0)!=(a+4|0))hG(a,b);return}function eU(a,b){a=a|0;b=b|0;b=t_(a,b)|0;if((b|0)!=(a+4|0))iG(a,b);return}function fU(a,b){a=a|0;b=b|0;b=t_(a,b)|0;if((b|0)!=(a+4|0))jG(a,b);return}function gU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((a|0)!=(b|0)){d=$h(a,b,c)|0;if((d|0)==(a|0))d=yw(a,b,c)|0;if((d|0)!=(a|0)?(e=f[c+4>>2]|0,(f[c>>2]|0)!=(e|0)):0)zoa(e+-24|0,0,123344)|0;else d=a}else d=a;return d|0}function hU(a){a=a|0;if(!a)return;else{hU(f[a>>2]|0);hU(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function iU(a,c){a=a|0;c=c|0;b[a+9>>0]=0;cy(a,0)|0;if(!(b[a+8>>0]|0)){a=HV(a,0)|0;DCa(Pca(a,c)|0,81185)|0;zI(a)|0}return}function jU(a){a=a|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}if((b[a+11>>0]|0)<0)c=(f[a+8>>2]&2147483647)+-1|0;else c=10;x=0;ua(108,a|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;MTa(a);Ua(c|0)}else return}function kU(a){a=a|0;if(!a)return;else{kU(f[a>>2]|0);kU(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function lU(a,b){a=a|0;b=b|0;if((a|0)!=(b|0)){f[a+16>>2]=f[b+16>>2];Tn(a,f[b+8>>2]|0,0)}return a|0}function mU(a){a=a|0;var b=0,c=0,d=0;b=s8(184)|0;c=b+104|0;d=b+4|0;f[b>>2]=33580;f[c>>2]=33600;Laa(c,d);f[b+176>>2]=0;f[b+180>>2]=-1;f[b>>2]=41940;f[c>>2]=41960;x=0;ta(476,d|0);d=x;x=0;if(d&1){d=Ia()|0;t1a(c);Cbb(b);Ua(d|0)}else{f[a>>2]=b;return}}function nU(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;f[a>>2]=49708;d=a+8|0;e=a+12|0;c=0;while(1){b=f[d>>2]|0;if(c>>>0>=(f[e>>2]|0)-b>>2>>>0)break;b=f[b+(c<<2)>>2]|0;if(b|0?(h=b+4|0,g=f[h>>2]|0,f[h>>2]=g+-1,(g|0)==0):0)oc[f[(f[b>>2]|0)+8>>2]&1023](b);c=c+1|0}MTa(a+144|0);koa(d);return}function oU(a){a=a|0;var b=0;BCa(a);f[a>>2]=42056;f[a+140>>2]=1;b=a+144|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+160>>2]=1065353216;b=a+164|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+180>>2]=1065353216;b=a+184|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+200>>2]=1065353216;return}function pU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;tz(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function qU(a,b){a=a|0;b=b|0;a=Wz(a,b)|0;if(a|0)return a+12|0;a=Ea(8)|0;x=0;ua(98,a|0,75804);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50492;Pa(a|0,39504,418)}return 0}function rU(a){a=a|0;var b=0;RZ(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function sU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;f[e>>2]=a;d=b+12|0;b=b+16|0;a=fC(f[d>>2]|0,f[b>>2]|0,e)|0;mQ(d,a,f[b>>2]|0);u=c;return}function tU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d+24|0;c=d;f[e>>2]=b;Kna(c,a,e);x=0;va(162,a|0,b|0,c|0);b=x;x=0;if(b&1){e=Ia()|0;xta(c);Ua(e|0)}else{xta(c);u=d;return}}function uU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=FI(a,e,b+16|0)|0;PZ(a,f[e>>2]|0,d,b);u=c;return}function vU(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;DUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=e&1;b[a+33>>0]=g&1;g=f[c+64>>2]|0;Jbb(g)|0;f[a+36>>2]=g+144;DUa(a+44|0);f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=0;return}function wU(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;n4a(d,b);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=f[d>>2];n4a(d,b);Uya(a+16|0,d);n4a(d,b);Uya(a+32|0,d);u=c;return}function xU(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;WO(a,d);b=Ol(a+24|0,d)|0;f[b>>2]=(f[b>>2]|0)+1;u=c;return}function yU(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(36)|0;f[a>>2]=g;f[a+4>>2]=c+4;f[g+16>>2]=f[d>>2];d=g+20|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];b[a+8>>0]=1;return}function zU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;g=u;u=u+16|0;c=g;d=a+44|0;if(!(f[d>>2]|0)){XFa(c,Jbb(f[a+36>>2]|0)|0);h=f[c>>2]|0;f[c>>2]=0;e=f[d>>2]|0;f[d>>2]=h;if(e|0)Cbb(e);f[c>>2]=0}kIa(a+16|0,b);u=g;return}function AU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(d6a(f[b>>2]|0)|0){d=f[a+24>>2]|0;a=nRa(b)|0;f[e>>2]=a;b=d+4|0;c=f[b>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=a;f[b>>2]=(f[b>>2]|0)+4}else LL(d,e)}u=g;return}function BU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(u6a(f[b>>2]|0)|0){d=f[a+24>>2]|0;a=tRa(b)|0;f[e>>2]=a;b=d+4|0;c=f[b>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=a;f[b>>2]=(f[b>>2]|0)+4}else LL(d,e)}u=g;return}function CU(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=a+11|0;d=b[e>>0]|0;g=d<<24>>24<0;if(g)d=f[a+4>>2]|0;else d=d&255;do if(d>>>0>=c>>>0)if(g){Z0a((f[a>>2]|0)+c|0,0);f[a+4>>2]=c;break}else{Z0a(a+c|0,0);b[e>>0]=c;break}else gM(a,c-d|0)|0;while(0);return}function DU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}g=a+12|0;c=b+12|0;f[g>>2]=0;e=a+16|0;f[e>>2]=0;d=a+20|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+16|0;f[e>>2]=f[a>>2];b=b+20|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function EU(a,b){a=a|0;b=b|0;b=hX(a,b)|0;if((b|0)!=(a+4|0))HL(a,b);return}function FU(a){a=a|0;var c=0;f[a>>2]=41872;x=0;ga(284,a|0)|0;c=x;x=0;if(c&1?(c=Ja(0)|0,Fa(c|0)|0,x=0,sa(6),c=x,x=0,c&1):0){c=Ja(0)|0;cXa(a);y2a(c)}if(b[a+96>>0]|0)zbb(f[a+32>>2]|0);if(b[a+97>>0]|0)zbb(f[a+56>>2]|0);cXa(a);return}function GU(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(16)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];Bab(g+12|0);b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function HU(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;Pra(134576);f[33644]=47436;f[33652]=46328;f[33654]=134632;f[33656]=-1;b[134628]=0;lVa(a,f[33645]|0);x=0;ua(29,134576,a|0);d=x;x=0;if(d&1){d=Ia()|0;OCa(a);WWa(134576);Ua(d|0)}else{OCa(a);u=c;return}}function IU(){var a=0,c=0,d=0;c=u;u=u+16|0;a=c;Xra(134512);f[33628]=47500;f[33636]=46328;f[33638]=134568;f[33640]=-1;b[134564]=0;lVa(a,f[33629]|0);x=0;ua(30,134512,a|0);d=x;x=0;if(d&1){d=Ia()|0;OCa(a);cXa(134512);Ua(d|0)}else{OCa(a);u=c;return}}function JU(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+64|0;c=d;P7(c);a=Jbb(f[a+36>>2]|0)|0;x=0;va(96,c+16|0,b|0,a|0);b=x;x=0;if(b&1){d=Ia()|0;mRa(c);Ua(d|0)}else{mRa(c);u=d;return}}function KU(a,b){a=a|0;b=b|0;b=hX(a,b)|0;if((b|0)!=(a+4|0))SI(a,b);return}function LU(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;g=u$a(b)|0;if(!g){d=k$a(b)|0;if(d|0)Fq(a,d,c)}else{f[e>>2]=f[g+8>>2];g=f[g+12>>2]|0;f[d>>2]=f[e>>2];ZH(a,d,c,g)}u=h;return}function MU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=yK(a,e,b+16|0)|0;PZ(a,f[e>>2]|0,d,b);u=c;return}function NU(a,b,c){a=a|0;b=b|0;c=c|0;fXa(a,c);zWa(a,b);c=a+-16|0;dHa(c+16|0,b);z$(c,b);zWa(a,0);fXa(a,0);return}function OU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=u;u=u+16|0;c=e;kla(c,a+44|0,b);g=a+48|0;h=f[c>>2]|0;f[c>>2]=0;d=f[g>>2]|0;f[g>>2]=h;if(d|0){xAa(d);Cbb(d)}f[c>>2]=0;TK(a+16|0,b);u=e;return}function PU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;Ey(c,a,b,e);u=d;return (f[c>>2]|0)+32|0}function QU(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+20>>2]&511](j)|0;i=b[j+8+3>>0]|0;k=i<<24>>24<0;l=k?f[j>>2]|0:j;return bh(a,f[c>>2]|0,f[d>>2]|0,e,g,h,l,l+((k?f[j+4>>2]|0:i&255)<<2)|0)|0}function RU(a,c){a=a|0;c=c|0;var d=0;d=a+4|0;CD(f[d>>2]|0,f[c+4>>2]|0,b[c+8>>0]|0);DCa(f[d>>2]|0,93084)|0;a=c+12|0;if(Jbb(f[a>>2]|0)|0){d=DCa(f[d>>2]|0,75479)|0;zm(d,Jbb(f[a>>2]|0)|0)|0}return}function SU(a,c){a=a|0;c=c|0;var d=0;if(!(f[(f[f[a+24>>2]>>2]|0)+(f[c+8>>2]<<2)>>2]|0)){d=f[c+12>>2]|0;if(Qab(f[c+4>>2]|0)|0)GVa(f[a>>2]|0,d)|0;else{c=oYa(c)|0;f[c+8>>2]=d;uXa(c)}b[a+28>>0]=1}return}function TU(a){a=a|0;if(!a)return;else{TU(f[a>>2]|0);TU(f[a+4>>2]|0);Cbb(a);return}}function UU(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=u;u=u+1040|0;g=i+1024|0;d=i;h=f[33448]|0;e=ria(sya(c,d)|0,d)|0;if(!(b[e>>0]|0)){f[g>>2]=c;QFa(d,1024,122116,g)|0}else d=e;f[33448]=h;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_Z(a,d,j7a(d)|0);u=i;return}function VU(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;a=Wz(a,e)|0;if(!a)if((b[130832]|0)==0?(VWa(130832)|0)!=0:0){f[33184]=0;f[33185]=0;f[33186]=0;f[33187]=0;f[33188]=1065353216;a=132736}else a=132736;else a=a+12|0;u=d;return a|0}function WU(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;x=0;ua(588,a|0,d|0);c=x;x=0;if(c&1){d=Ia()|0;zSa(a);Ua(d|0)}c=f[b>>2]|0;a=f[a>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[a+(f[c+(b<<2)>>2]<<2)>>2]=b;b=b+1|0}return}function XU(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+32|0;b=d;c=d+16|0;cz(a);Dh(b,f[a>>2]|0);if((f[b+12>>2]|0)==2){f[a>>2]=(f[a>>2]|0)+(f[b+8>>2]|0);a=f[b>>2]|0;f[c>>2]=a}else{Sab(c);a=f[c>>2]|0}c=bV(a)|0;u=d;return c|0}function YU(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;c=d;bNa(c,a+44|0);x=0;ua(2132,c|0,b|0);e=x;x=0;if(e&1){e=Ia()|0;P_a(c);Ua(e|0)}else{P_a(c);Yza(a+16|0,b);u=d;return}}function ZU(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;DUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=0;b[a+33>>0]=0;d=f[c>>2]|0;Jbb(d)|0;f[a+36>>2]=d+144;DUa(a+44|0);f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=0;return}function _U(a,b){a=+a;b=b|0;var c=0,d=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;d=(b|0)<-2044;c=b+2044|0;a=d?a*2.2250738585072014e-308:a;b=d?((c|0)>-1022?c:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;c=(b|0)>2046;d=b+-2046|0;a=c?a*8988465674311579538646525.0e283:a;b=c?((d|0)<1023?d:1023):b+-1023|0}c=mMa(b+1023|0,0,52)|0;d=I;f[s>>2]=c;f[s+4>>2]=d;return +(a*+p[s>>3])}function $U(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+48|0;c=d;nha(c,b);x=0;ua(1305,c|0,a|0);b=x;x=0;if(b&1){d=Ia()|0;YGa(c);Ua(d|0)}else{YGa(c);u=d;return}}function aV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;d=PU(a+44|0,b+8|0)|0;b=Jbb(f[a+16>>2]|0)|0;f[e>>2]=b;a=d+4|0;c=f[a>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=b;f[a>>2]=(f[a>>2]|0)+4}else LL(d,e);u=g;return}function bV(a){a=a|0;var b=0,c=0,d=0,e=0;e=u;u=u+16|0;b=e+4|0;f[b>>2]=a;c=e;d=Jbb(eua(2)|0)|0;d=Sqa(d,Boa(133108)|0)|0;if(zXa(a)|0)a=Iza()|0;else a=Boa(b)|0;n4a(c,Sqa(d,a)|0);u=e;return f[c>>2]|0}function cV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(g2a(f[b+8>>2]|0,f[a+28>>2]|0)|0){b=f[b+12>>2]|0;if(!b)b=0;else b=f[b+4>>2]|0;f[e>>2]=b;c=a+36|0;d=f[c>>2]|0;if(d>>>0<(f[a+40>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=d+4}else LL(a+32|0,e)}u=g;return}function dV(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3))d=5;else{c=e;while(1){if(!(b[a>>0]|0)){a=c;break a}a=a+1|0;c=a;if(!(c&3)){d=5;break}}}while(0);if((d|0)==5){while(1){c=f[a>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))a=a+4|0;else break}if((c&255)<<24>>24)do a=a+1|0;while((b[a>>0]|0)!=0)}return a-e|0}function eV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;Jz(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function fV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;g=c+8|0;e=c+4|0;d=c;f[g>>2]=b;f[a+12>>2]=b;b=dV(b)|0;f[a+16>>2]=b;b=N5()|0;Sab(e);Sab(d);YL(b,Vx(a,g,65707,f[e>>2]|0,f[d>>2]|0)|0);u=c;return b|0}function gV(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=A1(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?!(PVa(b,f[c+16>>2]|0)|0):0)a=c;return a|0}function hV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;oz(d,b,c);if(K0a(d)|0){f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}else a1a(a);u=e;return}function iV(){var a=0,b=0,c=0,d=0;d=u;u=u+16|0;c=d;uSa(132544);a=f[33143]|0;if(!a){x=0;ta(473,c|0);b=x;x=0;if(b&1){d=Ia()|0;mJa(132544);Ua(d|0)}b=f[33143]|0;a=f[c>>2]|0;f[33143]=a;f[c>>2]=0;if(b){IMa(b);Cbb(b);a=f[33143]|0}}mJa(132544);u=d;return a|0}function jV(a){a=a|0;if(!a)return;else{jV(f[a>>2]|0);jV(f[a+4>>2]|0);Cbb(a);return}}function kV(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;i=u;u=u+16|0;h=i;j=Qab(f[b+4>>2]|0)|0;f[a>>2]=c;f[b+12>>2]=f[e>>2];Aia(b);f[e>>2]=b;if(!j){f[d>>2]=0;if(!(f[c+12>>2]|0)){_0a(h,g);uha(h,c)}NI(c)}u=i;return}function lV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;__a(c);f[c+24>>2]=a;x=0;ua(1060,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;P_a(c);zSa(a);Ua(e|0)}else{P_a(c);u=d;return}}function mV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=d;f[a+8>>2]=e;b[a+12>>0]=0;switch(c|0){case 2:{Ca(72531,72545,55,72576);break}case 0:{if(!(u6a(f[f[e>>2]>>2]|0)|0))Ca(72591,72545,56,72576);break}case 1:{if(!(d6a(f[f[e>>2]>>2]|0)|0))Ca(72617,72545,57,72576);break}default:{}}return}function nV(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;e=JMa(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){a=+nV(a*18446744073709551616.0,b);c=(f[b>>2]|0)+-64|0}else c=0;f[b>>2]=c;break}case 2047:break;default:{f[b>>2]=(e&2047)+-1022;f[s>>2]=c;f[s+4>>2]=d&-2146435073|1071644672;a=+p[s>>3]}}return +a}function oV(a){a=a|0;var b=0,c=0,d=0,e=0;e=u;u=u+16|0;b=e+4|0;f[b>>2]=a;c=e;d=Jbb(eua(2)|0)|0;d=Sqa(d,Boa(133112)|0)|0;if(zXa(a)|0)a=Iza()|0;else a=Boa(b)|0;n4a(c,Sqa(d,a)|0);u=e;return f[c>>2]|0}function pV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;__a(c);f[c+24>>2]=a;x=0;ua(648,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;P_a(c);zSa(a);Ua(e|0)}else{P_a(c);u=d;return}}function qV(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=eSa(f[a+4>>2]|0)|0;d=Or(c,1)|0;d=V7a(b[d>>0]|0)|0;g=e+12|0;d=d?2:1;while(1){if(d>>>0>=(bYa(c)|0)>>>0)break;faa(g,ZQa(a,Or(c,d)|0)|0);d=d+1|0}tt(e);return e|0}function rV(a){a=a|0;var b=0,c=0,d=0;do if((f[a+76>>2]|0)>=0?(Tbb()|0)!=0:0){b=a+4|0;c=f[b>>2]|0;if(c>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c+1;b=h[c>>0]|0;break}else{b=Ywa(a)|0;break}}else d=3;while(0);do if((d|0)==3){b=a+4|0;c=f[b>>2]|0;if(c>>>0<(f[a+8>>2]|0)>>>0){f[b>>2]=c+1;b=h[c>>0]|0;break}else{b=Ywa(a)|0;break}}while(0);return b|0}function sV(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+32|0;b=d;c=d+16|0;cz(a);Dh(b,f[a>>2]|0);if((f[b+12>>2]|0)==2){f[a>>2]=(f[a>>2]|0)+(f[b+8>>2]|0);a=f[b>>2]|0;f[c>>2]=a}else{Sab(c);a=f[c>>2]|0}c=oV(a)|0;u=d;return c|0}function tV(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,1718,b);Xe(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,1719,b);return}function uV(a){a=a|0;var b=0;sKa(a);f[a>>2]=41452;DUa(a+44|0);DUa(a+56|0);DUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;aPa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function vV(a){a=a|0;var b=0;tKa(a);f[a>>2]=41212;DUa(a+44|0);DUa(a+56|0);DUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;aPa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function wV(a){a=a|0;var b=0;uKa(a);f[a>>2]=41292;DUa(a+44|0);DUa(a+56|0);DUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;aPa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function xV(a){a=a|0;var b=0;vKa(a);f[a>>2]=41104;DUa(a+44|0);DUa(a+56|0);DUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;aPa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function yV(a){a=a|0;var b=0;wKa(a);f[a>>2]=41372;DUa(a+44|0);DUa(a+56|0);DUa(a+68|0);f[a+80>>2]=0;f[a+84>>2]=0;f[a+88>>2]=0;aPa(a+96|0);a=a+132|0;b=a+48|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function zV(a){a=a|0;i6(a+44|0);j6(a+24|0);yDa(a+12|0);ioa(a);return}function AV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(20)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function BV(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=a+8|0;j=bc[f[(f[j>>2]|0)+20>>2]&511](j)|0;i=b[j+11>>0]|0;k=i<<24>>24<0;l=k?f[j>>2]|0:j;return Fg(a,f[c>>2]|0,f[d>>2]|0,e,g,h,l,l+(k?f[j+4>>2]|0:i&255)|0)|0}function CV(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a>>2]|0;if(Aab(c)|0){c=(mSa(a)|0)+4|0;f[c>>2]=b;c=f[a>>2]|0}if(!(D7a(c)|0)){if(S2a(c)|0){c=(IQa(a)|0)+4|0;d=7}}else{c=(XQa(a)|0)+4|0;d=7}if((d|0)==7)f[c>>2]=b;return}function DV(a,b){a=a|0;b=b|0;var c=0;c=b<<1;b=(b|0)>-1?c:0-c|1;while(1){c=b&31;b=b>>>5;if(!b)break;do if(c>>>0>=20)if(c>>>0<30){c=c+28|0;break}else{c=(c|0)==30?43:47;break}else c=c+103|0;while(0);Ema(a,c&255)|0}Ema(a,(c>>>0<26?65:71)+c&255)|0;return}function EV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d;c=d+4|0;f[e>>2]=b;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;__a(c);f[c+24>>2]=a;x=0;ua(1838,c|0,e|0);b=x;x=0;if(b&1){e=Ia()|0;P_a(c);zSa(a);Ua(e|0)}else{P_a(c);u=d;return}}function FV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a+9>>0]=0;cy(a,e)|0;if(!(b[a+8>>0]|0)){e=HV(a,e)|0;DCa(DCa(e,c)|0,81185)|0;tG(d,e)|0}return}function GV(a){a=a|0;var b=0;i5(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function HV(a,c){a=a|0;c=c|0;var d=0;d=cy(a,c)|0;do if(!(b[a+8>>0]|0))if(!c){DCa(d,81230)|0;break}else{DCa(d,81192)|0;Bfa(d,f[c>>2]|0)|0;DCa(d,81227)|0;break}while(0);return d|0}function IV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;DUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=0;b[a+33>>0]=e&1;e=f[c+64>>2]|0;Jbb(e)|0;f[a+36>>2]=e+144;DUa(a+44|0);f[a+56>>2]=0;f[a+60>>2]=0;f[a+64>>2]=0;return}function JV(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){Rwa(b);Cbb(b)}}b=f[a>>2]|0;if(b|0)Cbb(b);return}function KV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(Aab(f[b>>2]|0)|0){d=f[a+24>>2]|0;a=mSa(b)|0;f[e>>2]=a;b=d+4|0;c=f[b>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=a;f[b>>2]=(f[b>>2]|0)+4}else LL(d,e)}u=g;return}function LV(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=B2(a)|0;K$(a,(b[c+11>>0]|0)<0?f[c>>2]|0:c);i=c+12|0;g=c+16|0;d=a+68|0;c=0;while(1){e=f[i>>2]|0;if(c>>>0>=((f[g>>2]|0)-e|0)>>>0)break;gYa(f[d>>2]|0,b[e+c>>0]|0)|0;c=c+1|0}WA(a,h);return}function MV(a){a=a|0;var c=0,d=0,e=0,g=0;do if((f[11570]|0)>=0?(Tbb()|0)!=0:0){c=a&255;if((a&255|0)!=(b[46279]|0)?(e=f[11556]|0,e>>>0<(f[11555]|0)>>>0):0){f[11556]=e+1;b[e>>0]=c;break}ZS(a)|0}else g=3;while(0);do if((g|0)==3){c=a&255;if((a&255|0)!=(b[46279]|0)?(d=f[11556]|0,d>>>0<(f[11555]|0)>>>0):0){f[11556]=d+1;b[d>>0]=c;break}ZS(a)|0}while(0);return}function NV(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=a+2496|0;g=f[b>>2]|0;c=((g+1|0)>>>0)%624|0;d=a+(g<<2)|0;e=f[a+(c<<2)>>2]|0;a=0-(e&1)&-1727483681^f[a+((((g+397|0)>>>0)%624|0)<<2)>>2]^(e&2147483646|f[d>>2]&-2147483648)>>>1;f[d>>2]=a;a=a>>>11^a;f[b>>2]=c;a=a<<7&-1658038656^a;a=a<<15&-272236544^a;return a>>>18^a|0}function OV(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;if(e>>>0>4294967279)Rda();if(e>>>0<11)b[a+11>>0]=d;else{g=e+16&-16;e=W1a(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}eUa(a,c,d)|0;Z0a(a+d|0,0);return}function PV(a,c){a=a|0;c=c|0;var d=0;cz(c);d=f[c>>2]|0;if((b[d>>0]|0)!=40)Ca(65897,65740,905,66105);f[c>>2]=d+1;a=Rm(a,c,123272)|0;cz(c);d=f[c>>2]|0;if((b[d>>0]|0)==41){f[c>>2]=d+1;return a|0}else Ca(66119,65740,909,66105);return 0}function QV(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){Rwa(c);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function RV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;dYa(c,a);x=0;a=ia(73,f[c>>2]|0,134912)|0;e=x;x=0;if(!(e&1)?(x=0,ka(f[(f[a>>2]|0)+48>>2]|0,a|0,31216,31242,b|0)|0,e=x,x=0,!(e&1)):0){OCa(c);u=d;return b|0}e=Ia()|0;OCa(c);Ua(e|0);return 0}function SV(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=Jbb(eua(4)|0)|0;a=Sqa(Sqa(Sqa(g,Boa(133148)|0)|0,a)|0,b)|0;if(ZTa(c)|0)c=Iza()|0;n4a(d,Sqa(a,c)|0);u=e;return f[d>>2]|0}function TV(a,b){a=a|0;b=b|0;var c=0,d=0;do if((b|0)==(f[a+24>>2]|0)){b=(f[b+12>>2]|0)+4|0;c=a+36|0;d=f[c>>2]|0;if((d|0)==(f[a+40>>2]|0)){LL(a+32|0,b);break}else{f[d>>2]=f[b>>2];f[c>>2]=d+4;break}}else if(g2a(f[b+8>>2]|0,f[a+28>>2]|0)|0)f[a+36>>2]=f[a+32>>2];while(0);return}function UV(a){a=a|0;var b=0;B$(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function VV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=(f[a+8>>2]|0)-(f[a+4>>2]|0)|0;c=a+20|0;if((((g|0)==0?0:(g<<8)+-1|0)|0)==((f[c>>2]|0)+(f[a+16>>2]|0)|0))Lh(a);J9(d,a);f[f[d+4>>2]>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+1;u=e;return}function WV(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=(f[a+8>>2]|0)-(f[a+4>>2]|0)|0;c=a+20|0;if((((g|0)==0?0:(g<<8)+-1|0)|0)==((f[c>>2]|0)+(f[a+16>>2]|0)|0))Mh(a);J9(d,a);f[f[d+4>>2]>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+1;u=e;return}function XV(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;tna(a+8|0);Cbb(a);a=b}return}function YV(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;pL(b,a,122050);x=0;ta(519,b|0);a=x;x=0;if(a&1){c=Ia()|0;MTa(b);Ua(c|0)}else{MTa(b);u=c;return}}function ZV(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;pL(b,a,122034);x=0;ta(520,b|0);a=x;x=0;if(a&1){c=Ia()|0;MTa(b);Ua(c|0)}else{MTa(b);u=c;return}}function _V(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=b;e=b;do if((f[b+12>>2]|0)==0?Qab(f[b+16>>2]|0)|0:0){b=a+28|0;c=f[b>>2]|0;if((c|0)==(f[a+32>>2]|0)){LL(a+24|0,d);break}else{f[c>>2]=e;f[b>>2]=(f[b>>2]|0)+4;break}}while(0);u=g;return}function $V(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;GQa(a,b);b=a+16|0;fXa(b,c);w1(b,d);return}function aW(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+8|0;a:do if(f[b>>2]|0){c=f[a+4>>2]|0;d=(f[a>>2]|0)+4|0;e=f[c>>2]|0;f[e+4>>2]=f[d>>2];f[f[d>>2]>>2]=e;f[b>>2]=0;b=c;while(1){if((b|0)==(a|0))break a;e=f[b+4>>2]|0;NWa(b+8|0);Cbb(b);b=e}}while(0);return}function bW(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=b[a+11>>0]|0;g=e<<24>>24<0;if(g)h=f[a+4>>2]|0;else h=e&255;if((d|0)==-1)Qda();if(g)a=f[a>>2]|0;e=h>>>0>d>>>0;a=FQa(a,c,e?d:h)|0;if(!a)return (h>>>0>>0?-1:e&1)|0;else return a|0;return 0}function cW(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=a+8|0;b=0;d=0;while(1){g=f[e>>2]|0;c=f[g>>2]|0;if(d>>>0>=(f[g+4>>2]|0)-c>>2>>>0)break;c=f[c+(d<<2)>>2]|0;do if(c){if(!b){b=(f[c+8>>2]|0)==5;break}if(_Oa(f[c>>2]|0)|0)b=0;else{ZO(a,d);b=1}}while(0);d=d+1|0}return}function dW(a,b){a=a|0;b=b|0;b=hX(a,b)|0;if((b|0)!=(a+4|0)){B7(a+12|0,f[b+20>>2]|0);BQ(a,b)}return}function eW(a,b,c){a=a|0;b=b|0;c=c|0;Lwa(a);f[a>>2]=39856;f[a+4>>2]=b;f[a+8>>2]=c;return}function fW(a,b){a=a|0;b=b|0;b=t_(a,b)|0;if((b|0)!=(a+4|0))zH(a,b);return}function gW(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(16)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[f[e>>2]>>2];f[g+12>>2]=0;b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function hW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+32|0;e=d+24|0;c=d;f[e>>2]=b;eqa(c,a,e);x=0;va(163,a|0,b|0,c|0);b=x;x=0;if(b&1){e=Ia()|0;xta(c);Ua(e|0)}else{xta(c);u=d;return}}function iW(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;d=b;c=JL(d,a+16|0)|0;PZ(132632,f[d>>2]|0,c,a);u=b;return}function jW(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+104|0;g=a+124|0;h=(f[g>>2]|0)+-1|0;if(!(b[e>>0]|0))d=(1<<(h&31)&f[(f[a+120>>2]|0)+(h>>>5<<2)>>2]|0)!=0&1;else d=1;b[e>>0]=d;f[g>>2]=h;d=f[c+8>>2]|0;if(X7a(f[d+4>>2]|0)|0)Yba(a,d)|0;Hna(a+44|0,c);return}function kW(a,b){a=a|0;b=b|0;WQa(a,b);f[a+24>>2]=f[b+24>>2];J4(a+28|0,b+28|0);J4(a+40|0,b+40|0);J4(a+52|0,b+52|0);J4(a+64|0,b+64|0);f[a+76>>2]=f[b+76>>2];J4(a+80|0,b+80|0);return}function lW(a,b){a=a|0;b=b|0;var c=0,d=0;d=d3(a,f[b+12>>2]|0)|0;c=d3(a,f[b+16>>2]|0)|0;return coa(f[a+32>>2]|0,d,c,f[b+8>>2]|0)|0}function mW(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+16|0;d=f[c>>2]|0;do if(d){if((b|0)!=(d|0)){f[a+16>>2]=d;f[c>>2]=0;break}d=Jbb(a)|0;f[a+16>>2]=d;c=f[c>>2]|0;x=0;ua(f[(f[c>>2]|0)+12>>2]|0,c|0,d|0);d=x;x=0;if(d&1){d=Ja(0)|0;y2a(d)}}else f[a+16>>2]=0;while(0);return}function nW(a){a=a|0;if(!a)return;else{nW(f[a>>2]|0);nW(f[a+4>>2]|0);P_a(a+16|0);Cbb(a);return}}function oW(a,b){a=a|0;b=b|0;if(!b)return;else{oW(a,f[b>>2]|0);oW(a,f[b+4>>2]|0);Cbb(b);return}}function pW(a){a=a|0;var b=0;y2(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function qW(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(d>>>0>4294967279)Rda();if(d>>>0<11)b[a+11>>0]=d;else{g=d+16&-16;e=W1a(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}eUa(a,c,d)|0;Z0a(a+d|0,0);return}function rW(a,b){a=a|0;b=b|0;var c=0,d=0;c=aUa(f[a+4>>2]|0)|0;d=ZQa(a,Or(b,1)|0)|0;f[c+8>>2]=d;d=ZQa(a,Or(b,2)|0)|0;f[c+12>>2]=d;b=ZQa(a,Or(b,3)|0)|0;f[c+16>>2]=b;waa(c);return c|0}function sW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=b;f[a+12>>2]=0;d=a+16|0;XGa(d);c=a+44|0;f[c>>2]=0;f[a+4>>2]=1;f[a+8>>2]=b;b=0;while(1){if(b|0){b=6;break}x=0;b=ga(312,a|0)|0;e=x;x=0;if(e&1){b=5;break}f[c>>2]=b}if((b|0)==5){e=Ia()|0;Sya(d);Ua(e|0)}else if((b|0)==6)return}function tW(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[b+8>>2]|0;c=d3(a,f[b+12>>2]|0)|0;b=d3(a,f[b+16>>2]|0)|0;return Kpa(f[a+32>>2]|0,d,c,b)|0}function uW(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;if((c|0)!=0?(rfa(a+108|0,c)|0)!=0:0)c=1;else d=3;do if((d|0)==3){c=f[b+4>>2]|0;if(c|0?rfa(a+108|0,c)|0:0){c=1;break}vna(b);c=0}while(0);return c|0}function vW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;a:do if((f[a+4>>2]|0)==(f[b+4>>2]|0)?(e=f[a+8>>2]|0,c=(f[a+12>>2]|0)-e>>2,a=f[b+8>>2]|0,d=a,e,(c|0)==((f[b+12>>2]|0)-a>>2|0)):0){a=0;while(1){if(a>>>0>=c>>>0){a=1;break a}if((f[e+(a<<2)>>2]|0)==(f[d+(a<<2)>>2]|0))a=a+1|0;else{a=0;break}}}else a=0;while(0);return a|0}function wW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=(c-e|0)/12|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){a=e+(b*12|0)|0;while(1){if((c|0)==(a|0))break;e=c+-12|0;zSa(e);c=e}f[g>>2]=a}}else CB(a,b-d|0);return}function xW(a){a=a|0;if(!a)return;else{xW(f[a>>2]|0);xW(f[a+4>>2]|0);Cbb(a);return}}function yW(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(28)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];d=e+20|0;c=d;f[c>>2]=0;f[c+4>>2]=0;g0a(d);b[a+8>>0]=1;return}function zW(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){dCa(b);Cbb(b)}}b=f[a>>2]|0;if(b|0)Cbb(b);return}function AW(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;k=d;j=a+8|0;h=0;i=0;a:while(1){if((c|0)==(d|0)|h>>>0>=e>>>0)break;g=pRa(f[j>>2]|0)|0;a=TZa(c,k-c|0,b)|0;if(g|0)pRa(g)|0;switch(a|0){case -2:case -1:break a;case 0:{a=1;break}default:{}}h=h+1|0;i=a+i|0;c=c+a|0}return i|0}function BW(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;l=u;u=u+16|0;i=l;b[i>>0]=37;j=i+1|0;b[j>>0]=g;k=i+2|0;b[k>>0]=h;b[i+3>>0]=0;if(h<<24>>24){b[j>>0]=h;b[k>>0]=g}k=Q1a(c,f[d>>2]|0)|0;k=c+(Xb(c|0,k|0,i|0,e|0,f[a>>2]|0)|0)|0;f[d>>2]=k;u=l;return}function CW(a,b){a=a|0;b=b|0;var c=0,d=0;xKa(a);f[a>>2]=40780;f[a+44>>2]=b;d=a+48|0;f[d>>2]=0;if(b|0)return;x=0;wa(71,71723,71747,281,71773);x=0;b=Ia()|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0){xAa(c);Cbb(c)}QTa(a);Ua(b|0)}function DW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=f[a>>2]|0;g=a+4|0;e=f[g>>2]|0;h=b8(c,e,b)|0;d=e;if((h|0)!=(e|0)?(f[h>>2]|0)==(b|0):0){b=h+4|0;e=d-b|0;if(e){kia(h|0,b|0,e|0)|0;d=f[g>>2]|0;c=f[a>>2]|0}pha(a,(d-c>>2)+-1|0);c=1}else c=0;return c|0}function EW(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=a+20|0;h=a+28|0;if((f[b>>2]|0)>>>0>(f[h>>2]|0)>>>0?(ec[f[a+36>>2]&127](a,0,0)|0,(f[b>>2]|0)==0):0)a=-1;else{c=a+4|0;d=f[c>>2]|0;e=a+8|0;g=f[e>>2]|0;if(d>>>0>>0)ec[f[a+40>>2]&127](a,d-g|0,1)|0;f[a+16>>2]=0;f[h>>2]=0;f[b>>2]=0;f[e>>2]=0;f[c>>2]=0;a=0}return a|0}function FW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;BA(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function GW(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){dCa(c);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function HW(a,b){a=a|0;b=b|0;if(!b)return;else{HW(a,f[b>>2]|0);HW(a,f[b+4>>2]|0);Cbb(b);return}}function IW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];c=a+4|0;d=b+4|0;f[c>>2]=0;e=a+8|0;f[e>>2]=0;g=a+12|0;f[g>>2]=0;f[c>>2]=f[d>>2];c=b+8|0;f[e>>2]=f[c>>2];e=b+12|0;f[g>>2]=f[e>>2];f[e>>2]=0;f[c>>2]=0;f[d>>2]=0;d=b+16|0;c=f[d+4>>2]|0;b=a+16|0;f[b>>2]=f[d>>2];f[b+4>>2]=c;return}function JW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;EA(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function KW(a){a=a|0;var b=0;F3(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function LW(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;g=a+11|0;c=b[g>>0]|0;if(c<<24>>24<0){h=f[a>>2]|0;d=f[a+4>>2]|0}else{h=a;d=c&255}e=(d|0)!=0&1;d=d-e|0;if(d){XTa(h,h+e|0,d)|0;c=b[g>>0]|0}if(c<<24>>24<0)f[a+4>>2]=d;else b[g>>0]=d;Z0a(h+d|0,0);return}function MW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;d=b+36|0;e=f[d>>2]|0;if(v2a(f[e+4>>2]|0)|0){b=f[a+36>>2]|0;Jbb(b)|0;_0a(c,b);b=NOa(c,f[d>>2]|0)|0;f[d>>2]=b}else b=e;a=rM(a,e,b)|0;f[d>>2]=a;u=g;return}function NW(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+96|0;d=e;if(g2a(f[c+8>>2]|0,f[a+36>>2]|0)|0){if(f[c+16>>2]|0){g=a+44|0;f[g>>2]=(f[g>>2]|0)+1}gA(d,f[a+52>>2]|0,f[c+12>>2]|0);g=qza(d)|0;_7(d);if(g)b[a+40>>0]=1}u=e;return}function OW(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0;d=a+48|0;e=a+44|0;f=a+68|0;g=a+16|0;do{fZ(d);if(b[e>>0]|0)Tc(a,c);b[f>>0]=0;pEa(g,c);if(!(b[e>>0]|0))break}while((b[f>>0]|0)!=0);return}function PW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((hX(a+48|0,b)|0)!=(a+52|0))Ca(71092,71128,128,71153);r7(a,b,c);if(!((d|0)!=0?(f[d+4>>2]|0)==(f[b+4>>2]|0):0))Mv(a,b);return}function QW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;f[d>>2]=c;c=a+24|0;pha(c,kQa(b)|0);c=f[c>>2]|0;b=(f[a+28>>2]|0)-c>>2;while(1){if((b|0)<=0)break;g=c;f[g>>2]=0;b=b+-1|0;c=g+4|0}tL(a,d);u=e;return}function RW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if(Eqa(b)|0){b=Jbb(f[a+16>>2]|0)|0;f[e>>2]=b;c=a+172|0;d=f[c>>2]|0;if(d>>>0<(f[a+176>>2]|0)>>>0){f[d>>2]=b;f[c>>2]=(f[c>>2]|0)+4}else LL(a+168|0,e)}u=g;return}function SW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=f[33448]|0;f[33448]=0;kOa()|0;d=+Y7a(a,e);a=f[33448]|0;if(!a)f[33448]=g;if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function TW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=f[33448]|0;f[33448]=0;kOa()|0;d=+U8a(a,e);a=f[33448]|0;if(!a)f[33448]=g;if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function UW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+16|0;e=i;if((a|0)==(b|0)){f[c>>2]=4;d=0.0}else{g=f[33448]|0;f[33448]=0;kOa()|0;d=+V8a(a,e);a=f[33448]|0;if(!a)f[33448]=g;if((f[e>>2]|0)==(b|0)){if((a|0)==34)h=6}else{d=0.0;h=6}if((h|0)==6)f[c>>2]=4}u=i;return +d}function VW(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0,h=0,i=0;i=u;u=u+128|0;h=i;e=h;g=e+124|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));e=h+4|0;f[e>>2]=a;g=h+8|0;f[g>>2]=-1;f[h+44>>2]=a;f[h+76>>2]=-1;zna(h,0);d=+ni(h,c,1);c=(f[e>>2]|0)-(f[g>>2]|0)+(f[h+108>>2]|0)|0;if(b|0)f[b>>2]=(c|0)==0?a:a+c|0;u=i;return +d}function WW(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=f[c>>2]|0;DCa(DCa(a,Fha(f[b+24>>2]|0)|0)|0,75488)|0;a=b+8|0;if(Jbb(f[a>>2]|0)|0){c=DCa(f[c>>2]|0,75479)|0;zm(c,Jbb(f[a>>2]|0)|0)|0}return}function XW(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=SRa(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return SRa((fk(h,g,SRa(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function YW(a){a=a|0;if(!a)return;else{YW(f[a>>2]|0);YW(f[a+4>>2]|0);Cbb(a);return}}function ZW(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;bB(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function _W(a){a=a|0;var c=0,d=0,e=0;c=0;while(1){if(c>>>0>=(bYa(a)|0)>>>0){c=0;break}d=Or(a,c)|0;if(((C7a(b[d>>0]|0)|0?bYa(d)|0:0)?(e=Or(d,0)|0,V7a(b[e>>0]|0)|0):0)?(e=lF(Or(d,0)|0)|0,g2a(e,f[33104]|0)|0):0){c=1;break}c=c+1|0}return c|0}function $W(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h+4|0;e=h;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;if((c|0?(g=v$a(f[c+4>>2]|0)|0,g|0):0)?(f[e>>2]=f[g+8>>2],f[d>>2]=f[e>>2],!(OM(g,d)|0)):0)f[a>>2]=0;a=a+4|0}u=h;return}function aX(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(32)|0;f[a>>2]=g;f[a+4>>2]=c+4;f[g+16>>2]=f[d>>2];d=g+20|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];b[a+8>>0]=1;return}function bX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+32|0;e=c+16|0;g=c;d=tUa(a)|0;t$a(g,b);f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];b=e0(a,e)|0;b=Kpa(f[a>>2]|0,15,d,b)|0;u=c;return b|0}function cX(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;switch(f[b>>2]|0){case 1:{t$a(c,0);gT(a,b,c);break}case 2:{XSa(c,0,0);gT(a,b,c);break}case 3:{HAa(c,0.0);gT(a,b,c);break}case 4:{pqa(c,0.0);gT(a,b,c);break}default:hb()}u=d;return}function dX(a){a=a|0;var b=0;Bab(a);b=a+4|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;Bab(a+32|0);f[a+40>>2]=0;DUa(a+44|0);DUa(a+56|0);b=a+68|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+84>>2]=1065353216;return}function eX(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;UQa(b,0);x=0;ja(83,b|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=x;x=0;if(a&1){c=Ia()|0;zSa(b);Ua(c|0)}else{a=(f[b+4>>2]|0)-(f[b>>2]|0)|0;zSa(b);u=c;return a|0}return 0}function fX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];b=d3(a,f[b+12>>2]|0)|0;f[d>>2]=f[e>>2];b=Asa(a+32|0,d,b)|0;u=c;return b|0}function gX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e;d=f[a>>2]|0;if((f[a+8>>2]|0)-d>>3>>>0>>0){FN(c,b,(f[a+4>>2]|0)-d>>3,a+8|0);JO(a,c);Aha(c)}u=e;return}function hX(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=a4(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?(f[c+16>>2]|0)>>>0<=b>>>0:0)a=c;return a|0}function iX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;e=g;h=Jbb(eua(5)|0)|0;n4a(e,Sqa(Sqa(Sqa(Sqa(Sqa(h,Boa(133132)|0)|0,a)|0,b)|0,c)|0,d)|0);u=g;return f[e>>2]|0}function jX(a){a=a|0;var b=0,c=0;wIa(a);f[a>>2]=40248;b=a+44|0;DUa(b);x=0;ia(67,a+4|0,61507)|0;c=x;x=0;if(c&1){c=Ia()|0;tEa(b);QTa(a);Ua(c|0)}else return}function kX(a,c){a=a|0;c=c|0;var e=0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];if((a|0)!=(c|0))Hu(a+12|0,f[c+12>>2]|0,f[c+16>>2]|0);e=a+24|0;c=c+24|0;d[e>>1]=d[c>>1]|0;b[e+2>>0]=b[c+2>>0]|0;return a|0}function lX(a){a=a|0;var b=0;b=u;u=u+16|0;x=0;sa(a|0);a=x;x=0;if(!(a&1)){x=0;ua(3192,122779,b|0);x=0}a=Ja(0)|0;Fa(a|0)|0;x=0;ua(3192,122819,b+8|0);x=0;a=Ja(0)|0;x=0;sa(6);b=x;x=0;if(b&1){b=Ja(0)|0;y2a(b)}else y2a(a)}function mX(a){a=a|0;var b=0;aPa(a);b=a+40|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;DUa(a+68|0);b=a+80|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;DUa(a+104|0);return}function nX(a){a=a|0;if(!a)return;else{nX(f[a>>2]|0);nX(f[a+4>>2]|0);Cbb(a);return}}function oX(a){a=a|0;if(!a)return;else{oX(f[a>>2]|0);oX(f[a+4>>2]|0);Cbb(a);return}}function pX(a){a=a|0;if(!a)return;else{pX(f[a>>2]|0);pX(f[a+4>>2]|0);Cbb(a);return}}function qX(a){a=a|0;if(!a)return;else{qX(f[a>>2]|0);qX(f[a+4>>2]|0);Cbb(a);return}}function rX(a){a=a|0;if(!a)return;else{rX(f[a>>2]|0);rX(f[a+4>>2]|0);Cbb(a);return}}function sX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;c=dY(b,c+8|0)|0;f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[e+12>>2]=f[c+12>>2];wAa(a,e);u=d;return}function tX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=Qab(b)|0;e=a+32|0;b=d3(a,d)|0;if(g)b=sBa(f[e>>2]|0,c,b)|0;else b=Qya(e,c,b)|0;return b|0}function uX(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=w4(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?(f[c+16>>2]|0)<=(b|0):0)a=c;return a|0}function vX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;hLa(e,(Jbb(f[a+32>>2]|0)|0)<<16,0);b=Jbb(b)|0;io(a,b,0,(Jbb(f[e>>2]|0)|0)-c|0,0,58447);u=d;return}function wX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=Jbb(f[a+16>>2]|0)|0;g=(c|0)==0;d=T6a(a)|0;a=e;while(1){e=a;if((d|0)==(e|0))break;a=a+8|0;if(!(!g?!(DQa(c,f[a>>2]|0)|0):0))fL(b,a);a=f[e+4>>2]|0}return}function xX(a,c){a=a|0;c=c|0;var d=0,e=0;do if(!(b[a+28>>0]|0)){e=f[c+16>>2]|0;if(e|0?(f[e+4>>2]|0)==5:0)break;e=f[c+12>>2]|0;if(!((e|0)!=0?(f[e+4>>2]|0)==5:0))d=6}else d=6;while(0);if((d|0)==6?g2a(f[c+8>>2]|0,f[a+24>>2]|0)|0:0)N9(a,f[c+12>>2]|0);return}function yX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;b=b+(c<<4)|0;f[e>>2]=f[b>>2];f[e+4>>2]=f[b+4>>2];f[e+8>>2]=f[b+8>>2];f[e+12>>2]=f[b+12>>2];wAa(a,e);u=d;return}function zX(a){a=a|0;if(!a)return;else{zX(f[a>>2]|0);zX(f[a+4>>2]|0);Cbb(a);return}}function AX(a){a=a|0;if(!a)return;else{AX(f[a>>2]|0);AX(f[a+4>>2]|0);Cbb(a);return}}function BX(a,b){a=a|0;b=b|0;if(!b)return;else{BX(a,f[b>>2]|0);BX(a,f[b+4>>2]|0);Cbb(b);return}}function CX(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=a;ROa(0,0,d);d=200;a=2;a:while(1){e=b[c>>0]|0;switch(e<<24>>24){case 0:break a;case 10:{a=a+-1|0;if(!a)break a;break}default:{}}d=d+-1|0;if(!d)break;MV(e<<24>>24);c=c+1|0}LHa(73223,2,1,46204)|0;u=g;return}function DX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;f[d>>2]=b;e=b;do if(Qab(f[b+32>>2]|0)|0){b=a+40|0;c=f[b>>2]|0;if((c|0)==(f[a+44>>2]|0)){LL(a+36|0,d);break}else{f[c>>2]=e;f[b>>2]=(f[b>>2]|0)+4;break}}while(0);u=g;return}function EX(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,1463,b);ff(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,1464,b);return}function FX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;h=e+4|0;g=e;a=a+28|0;i=f[a>>2]|0;n4a(h,jna((b|0)==0?c:b)|0);Yr(i,f[h>>2]|0)|0;c=f[a>>2]|0;n4a(g,d);Yr(c,f[g>>2]|0)|0;u=e;return}function GX(a){a=a|0;if(!a)return;else{GX(f[a>>2]|0);GX(f[a+4>>2]|0);Cbb(a);return}}function HX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;f[d>>2]=a;a=c;e=Jbb(eua(3)|0)|0;e=Sqa(e,Boa(133068)|0)|0;n4a(a,Sqa(Sqa(e,Boa(d)|0)|0,b)|0);u=c;return f[a>>2]|0}function IX(a,b){a=a|0;b=b|0;var c=0;DUa(a);c=a+12|0;f[c>>2]=c;f[a+16>>2]=c;f[a+20>>2]=0;x=0;ia(143,a|0,b|0)|0;b=x;x=0;if(b&1){b=Ia()|0;iVa(c);Zwa(a);Ua(b|0)}else return}function JX(){var a=0,c=0;if((b[130896]|0)==0?VWa(130896)|0:0){c=129248;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=129536)}bFa(129248,120236)|0;bFa(129260,120239)|0;return}function KX(a,b,c){a=a|0;b=b|0;c=c|0;if(!(c<<24>>24)){x=0;ua(3186,1,118858);x=0;c=Ja(0)|0;y2a(c)}x=0;b=ia(213,a|0,b|0)|0;a=x;x=0;do if(!(a&1))if(!b)return;else{x=0;ua(3186,b|0,118901);x=0;break}while(0);a=Ja(0)|0;y2a(a)}function LX(a,c){a=a|0;c=c|0;var d=0,e=0;e=(h[c+1>>0]|0)<<16|(h[c>>0]|0)<<24|(h[c+2>>0]|0)<<8|(h[c+3>>0]|0);d=a+3|0;c=b[d>>0]|0;a=(h[a+1>>0]|0)<<16|(h[a>>0]|0)<<24|(h[a+2>>0]|0)<<8|c&255;c=c<<24>>24==0;if(!((a|0)==(e|0)|c))do{d=d+1|0;c=b[d>>0]|0;a=a<<8|c&255;c=c<<24>>24==0}while(!((a|0)==(e|0)|c));return (c?0:d+-3|0)|0}function MX(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=a+20|0;d=a+28|0;if((f[c>>2]|0)>>>0>(f[d>>2]|0)>>>0)ec[f[a+36>>2]&127](a,0,0)|0;f[a+16>>2]=0;f[d>>2]=0;f[c>>2]=0;c=f[a>>2]|0;if(!(c&4)){d=(f[a+44>>2]|0)+(f[a+48>>2]|0)|0;f[a+8>>2]=d;f[a+4>>2]=d;c=c<<27>>31}else{f[a>>2]=c|32;c=-1}return c|0}function NX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;f[d>>2]=a;a=c;e=Jbb(eua(3)|0)|0;e=Sqa(e,Boa(133116)|0)|0;n4a(a,Sqa(Sqa(e,Boa(d)|0)|0,b)|0);u=c;return f[a>>2]|0}function OX(a){a=a|0;var b=0,c=0;SQa(a+68|0);sIa(a+56|0);DJa(a+44|0);c=a+40|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){zSa(b);Cbb(b)}zSa(a+20|0);zSa(a+8|0);return}function PX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=Qab(f[b+4>>2]|0)|0;c=a+4|0;d=f[c>>2]|0;if(e)yPa(d,75574)|0;else yPa(d,75585)|0;e=f[c>>2]|0;Bfa(e,L3(f[b+8>>2]|0,f[a>>2]|0)|0)|0;return}function QX(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d+4|0;g=d;h=RN(f[a+8>>2]|0)|0;f[g>>2]=h;f[e>>2]=f[g>>2];if(!(ZBa(c,e)|0))xla(c,Nl(b,a)|0);u=d;return}function RX(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+80|0;d=c;b=c+4|0;f[d>>2]=a;pSa(b);x=0;ua(1461,b|0,d|0);a=x;x=0;if(a&1){d=Ia()|0;oSa(b);Ua(d|0)}else{oSa(b);u=c;return}}function SX(a){a=a|0;var b=0,c=0;b=U_a(a)|0;do if(!b){a=Z$a(a)|0;if(a|0){b=U_a(f[a+12>>2]|0)|0;if(b|0)break;b=f[a+16>>2]|0;if(b|0?(c=U_a(b)|0,c|0):0){b=c;break}}b=0}while(0);return b|0}function TX(a,c){a=a|0;c=c|0;var d=0,e=0;a:do if((a|0)!=(c|0)?(d=(b[a>>0]|0)==110?a+1|0:a,(d|0)!=(c|0)):0){e=b[d>>0]|0;if(e<<24>>24==48){d=d+1|0;break}if((e+-49&255)<9)do{d=d+1|0;if((d|0)==(c|0)){d=c;break a}}while(((b[d>>0]|0)+-48|0)>>>0<10);else d=a}else d=a;while(0);return d|0}function UX(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;if(!b)d=0;else d=zJa(f[d>>2]|0,b)|0;f[a>>2]=d;c=d+(c<<4)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b<<4);return}function VX(a,b){a=a|0;b=b|0;if(!b)return;else{VX(a,f[b>>2]|0);VX(a,f[b+4>>2]|0);Cbb(b);return}}function WX(a){a=a|0;var c=0,d=0,e=0;c=a+44|0;e=f[c>>2]|0;d=f[a+24>>2]|0;if(e>>>0>>0){f[c>>2]=d;e=d}if(f[a+48>>2]&8){c=a+16|0;d=f[c>>2]|0;if(d>>>0>>0){f[c>>2]=e;d=e}c=f[a+12>>2]|0;if(c>>>0>>0)c=d7a(b[c>>0]|0)|0;else c=-1}else c=-1;return c|0}function XX(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;if(e&2048){b[a>>0]=43;a=a+1|0}if(e&512){b[a>>0]=35;a=a+1|0}f=a;while(1){a=b[c>>0]|0;if(!(a<<24>>24))break;b[f>>0]=a;c=c+1|0;f=f+1|0}switch(e&74){case 64:{a=111;break}case 8:{a=e>>>9&32^120;break}default:a=d?100:117}b[f>>0]=a;return}function YX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;f[d>>2]=b;b=c;e=Jbb(eua(3)|0)|0;a=Sqa(Sqa(e,Boa(132864)|0)|0,a)|0;n4a(b,Sqa(a,Boa(d)|0)|0);u=c;return f[b>>2]|0}function ZX(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;qra(c+16|0,b);JU(c,b);zWa(a,0);return}function _X(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;switch(b<<24>>24){case 4:case 2:case 1:break;case 8:{if((c|0)!=5)jqa(a,Ixa(c)|0,d);break}default:FV(f[a+44>>2]|0,84051,d,Jbb(f[a+32>>2]|0)|0)}return}function $X(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;HA(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function aY(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;OJa(e);b=e}f[d>>2]=c;e=f[a>>2]|0;_Ia(f[a+12>>2]|0,e,((f[a+8>>2]|0)-e|0)/24|0)}return}function bY(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+4|0;d=f[c>>2]|0;if(g2a(f[d+-4>>2]|0,f[b>>2]|0)|0){f[c>>2]=d+-4;d=(ZW(a+12|0,kZ(a+24|0,b)|0)|0)+4|0;f[d>>2]=(f[d>>2]|0)+-4;return}else Ca(65010,65036,253,65052)}function cY(){var a=0,c=0;if((b[130976]|0)==0?VWa(130976)|0:0){c=13e4;do{f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}c=c+12|0}while((c|0)!=130288)}aFa(13e4,48224)|0;aFa(130012,48236)|0;return}function dY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;cB(c,a,b,e);u=d;return (f[c>>2]|0)+24|0}function eY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+64|0;b=d;CM(b,f[a+16>>2]|0);oOa(b,1);x=0;ua(1303,b|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;jWa(b);Ua(c|0)}else{jWa(b);u=d;return}}function fY(a,c){a=a|0;c=c|0;var d=0,e=0;d=0;while(1){if((h[28800+d>>0]|0)==(a|0)){e=4;break}d=d+1|0;if((d|0)==87){a=87;e=5;break}}if((e|0)==4)if(!d)d=28896;else{a=d;e=5}if((e|0)==5){d=28896;do{do{e=d;d=d+1|0}while((b[e>>0]|0)!=0);a=a+-1|0}while((a|0)!=0)}return V6a(d,f[c+20>>2]|0)|0}function gY(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;yPa(f[c>>2]|0,117210)|0;a=b+4|0;if(v2a(f[a>>2]|0)|0){c=DCa(f[c>>2]|0,75654)|0;Ema(DCa(c,Fha(f[a>>2]|0)|0)|0,41)|0}return}function hY(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=c+12|0;d=b[g+11>>0]|0;e=d<<24>>24<0;dI(c,e?f[g>>2]|0:g,e?f[c+16>>2]|0:d&255)|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}return}function iY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];b=d3(a,f[b+12>>2]|0)|0;f[d>>2]=f[e>>2];b=bxa(a+32|0,d,b)|0;u=c;return b|0}function jY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e;d=f[a>>2]|0;if((f[a+8>>2]|0)-d>>4>>>0>>0){HN(c,b,(f[a+4>>2]|0)-d>>4,a+8|0);OO(a,c);Bha(c)}u=e;return}function kY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;EB(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function lY(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=b[a+11>>0]|0;e=d<<24>>24<0;if(e)g=f[a+4>>2]|0;else g=d&255;if((c|0)==-1)Qda();if(e)a=f[a>>2]|0;d=g>>>0>c>>>0;a=FQa(a,87315,d?c:g)|0;if(!a)return (g>>>0>>0?-1:d&1)|0;else return a|0;return 0}function mY(a){a=a|0;f[a>>2]=42056;MZ(a+184|0);SQa(a+164|0);SQa(a+144|0);LGa(a);return}function nY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=u;u=u+16|0;e=d+4|0;g=d;h=NJ(f[a+8>>2]|0)|0;f[g>>2]=h;f[e>>2]=f[g>>2];if(!(ZBa(c,e)|0))xla(c,Zj(b,a)|0);u=d;return}function oY(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;c=(vSa(f[c>>2]|0)|0)+16|0;if(!(f[c>>2]|0))Ca(113901,113850,204,113931);else{e=a+120|0;c=a+124|0;g=(f[c>>2]|0)+-1|0;d=(1<<(g&31)&f[(f[e>>2]|0)+(g>>>5<<2)>>2]|0)!=0&1;f[c>>2]=g;c=a+104|0;CO(e,c);b[c>>0]=d;return}}function pY(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,1428,b);Rd(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,1429,b);return}function qY(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=a+16|0;g=f[e>>2]|0;do if(g){if((g|0)!=(c|0)){d=a+36|0;f[d>>2]=(f[d>>2]|0)+1;f[a+24>>2]=2;b[a+54>>0]=1;break}a=a+24|0;if((f[a>>2]|0)==2)f[a>>2]=d}else{f[e>>2]=c;f[a+24>>2]=d;f[a+36>>2]=1}while(0);return}function rY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+12>>2]|0);pfa(a);u=c;return}function sY(a){a=a|0;var b=0,c=0,d=0;Yua(a);d=(f[a>>2]&1|0)!=0;if(!d){Kbb();c=f[a+52>>2]|0;b=a+56|0;if(c|0)f[c+56>>2]=f[b>>2];b=f[b>>2]|0;if(b|0)f[b+52>>2]=c;if((f[33451]|0)==(a|0))f[33451]=b;Fbb()}b=Z0(a)|0;b=bc[f[a+12>>2]&511](a)|0|b;c=f[a+92>>2]|0;if(c|0)rg(c);if(!d)rg(a);return b|0}function tY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;if((f[a+24>>2]|0)==(b|0)){d=f[a+28>>2]|0;b=Jbb(f[a>>2]|0)|0;f[e>>2]=b;a=d+4|0;c=f[a>>2]|0;if(c>>>0<(f[d+8>>2]|0)>>>0){f[c>>2]=b;f[a>>2]=(f[a>>2]|0)+4}else LL(d,e)}u=g;return}function uY(a,b,c){a=a|0;b=b|0;c=c|0;GQa(a,b);b=a+16|0;fXa(b,c);V2(b,c);return}function vY(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;e=g;f[e>>2]=b;d=f[a+80>>2]|0;do if(d|0){a=d+28|0;c=f[a>>2]|0;if((c|0)==(f[d+32>>2]|0)){LL(d+24|0,e);break}else{f[c>>2]=b;f[a>>2]=(f[a>>2]|0)+4;break}}while(0);u=g;return}function wY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[(f[a>>2]|0)+4>>2]&511](a)|0;d=(xg(c,d,a,a+288|0,g,e,0)|0)-a|0;if((d|0)<288)f[b>>2]=((d|0)/12|0|0)%12|0;return}function xY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[(f[a>>2]|0)+4>>2]&511](a)|0;d=(vg(c,d,a,a+288|0,g,e,0)|0)-a|0;if((d|0)<288)f[b>>2]=((d|0)/12|0|0)%12|0;return}function yY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+24>>2]|0);pfa(a);u=c;return}function zY(a,b){a=a|0;b=b|0;var c=0,d=0;d=(FRa(a)|0)+12|0;d=(FRa(f[d>>2]|0)|0)+16|0;d=V4(f[d>>2]|0)|0;c=(FRa(a)|0)+16|0;c=d-(V4(f[c>>2]|0)|0)|0;f[b>>2]=c;return _Ha(a)|0}function AY(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-24|0;f[c>>2]=d;OJa(d)}b=f[a>>2]|0;if(b|0)_Ia(f[f[a+16>>2]>>2]|0,b,((f[a+12>>2]|0)-b|0)/24|0);return}function BY(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);_Ba(a);QP(a,f[b+8>>2]|0);pfa(a);u=c;return}function CY(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}c=a+12|0;a=b+12|0;f[c>>2]=f[a>>2];f[c+4>>2]=f[a+4>>2];f[c+8>>2]=f[a+8>>2];c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}return}function DY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;jU(c);x=0;va(180,a|0,c|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;MTa(c);Ua(d|0)}else{MTa(c);u=d;return}}function EY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;jU(c);x=0;va(179,a|0,c|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;MTa(c);Ua(d|0)}else{MTa(c);u=d;return}}function FY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;jU(c);x=0;va(178,a|0,c|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;MTa(c);Ua(d|0)}else{MTa(c);u=d;return}}function GY(a){a=a|0;if(!a)return;else{GY(f[a>>2]|0);GY(f[a+4>>2]|0);Cbb(a);return}}function HY(a,b){a=a|0;b=b|0;var c=0,d=0;_d(a,b);d=f[b>>2]|0;c=f[d>>2]|0;if(zab(c)|0){tS(a+16|0,1337,b);c=f[d>>2]|0}if(Nab(c)|0)tS(a+16|0,1338,b);return}function IY(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;UQa(b,0);x=0;ia(140,b|0,f[a>>2]|0)|0;a=x;x=0;if(a&1){c=Ia()|0;zSa(b);Ua(c|0)}else{a=(f[b+4>>2]|0)-(f[b>>2]|0)|0;zSa(b);u=c;return a|0}return 0}function JY(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+64|0;b=d;CM(b,f[a+16>>2]|0);a3a(b);x=0;ua(1303,b|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;jWa(b);Ua(c|0)}else{jWa(b);u=d;return}}function KY(a,b){a=a|0;b=b|0;if(!b)return;else{KY(a,f[b>>2]|0);KY(a,f[b+4>>2]|0);Cbb(b);return}}function LY(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){zSa(b);Cbb(b)}}b=f[a>>2]|0;if(b|0)Cbb(b);return}function MY(a){a=a|0;var b=0;switch(f[a+12>>2]|0){case 2:{b=cCa(f[a>>2]|0)|0;break}case 3:{b=C$(f[a>>2]|0)|0;break}case 4:{b=G_a(~~+p[a>>3]>>>0)|0;break}case 5:{b=rLa(+p[a>>3])|0;break}default:hb()}return b|0}function NY(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(36)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];vQa(e+20|0);b[a+8>>0]=1;return}function OY(a){a=a|0;var c=0,d=0,e=0;b[a>>0]=0;b[a+1>>0]=0;Bab(a+4|0);hLa(a+8|0,0,0);hLa(a+12|0,-1,0);c=a+16|0;f[c>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;x=0;d=ga(226,0)|0;e=x;x=0;if(e&1){e=Ia()|0;lca(c);Ua(e|0)}else{f[a+4>>2]=d;return}}function PY(a,b){a=a|0;b=b|0;var c=0,d=0;c=s8(12)|0;d=f[b>>2]|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;b=j7a(d)|0;x=0;va(87,c|0,d|0,b|0);b=x;x=0;if(b&1){d=Ia()|0;Cbb(c);Ua(d|0)}else{f[a>>2]=c;return}}function QY(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){zSa(c);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function RY(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];c=0;while(1){if((c|0)==3)break;f[b+(c<<2)>>2]=0;c=c+1|0}a=a+12|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}return}function SY(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+12>>2]|0;if(b|0?(c=f[a+16>>2]|0,c|0):0){d=f[b+4>>2]|0;do if((d|0)!=5?(f[c+4>>2]|0)!=5:0){b=a+4|0;if(W7(f[a+8>>2]|0)|0){f[b>>2]=1;break}else{f[b>>2]=d;break}}else e=6;while(0);if((e|0)==6)f[a+4>>2]=5;return}Ca(93421,91145,532,91165)}function TY(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+32|0;c=d;bQa(c);x=0;a=ja(73,a|0,b|0,c|0)|0;b=x;x=0;if(b&1){d=Ia()|0;xta(c);Ua(d|0)}else{xta(c);u=d;return a|0}return 0}function UY(a){a=a|0;if(!a)return;else{UY(f[a>>2]|0);UY(f[a+4>>2]|0);Cbb(a);return}}function VY(a){a=a|0;if(!a)return;else{VY(f[a>>2]|0);VY(f[a+4>>2]|0);Cbb(a);return}}function WY(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(32)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];DUa(e+20|0);b[a+8>>0]=1;return}function XY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[f[a>>2]>>2]&511](a)|0;d=(xg(c,d,a,a+168|0,g,e,0)|0)-a|0;if((d|0)<168)f[b>>2]=((d|0)/12|0|0)%7|0;return}function YY(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=a+8|0;a=bc[f[f[a>>2]>>2]&511](a)|0;d=(vg(c,d,a,a+168|0,g,e,0)|0)-a|0;if((d|0)<168)f[b>>2]=((d|0)/12|0|0)%7|0;return}function ZY(a){a=a|0;zSa(a+108|0);SQa(a+88|0);a9(a+68|0);zSa(a+56|0);SQa(a+36|0);zSa(a+24|0);return}function _Y(a){a=a|0;var c=0,e=0,g=0;Bab(a);hLa(a+4|0,0,0);hLa(a+8|0,65535,0);c=a+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;d[c+12>>1]=0;b[c+14>>0]=0;x=0;e=ga(226,0)|0;g=x;x=0;if(g&1){g=Ia()|0;lca(c);Ua(g|0)}else{f[a>>2]=e;return}}function $Y(a){a=a|0;var b=0;gAa(a);f[a>>2]=40408;f[a+56>>2]=0;x=0;ia(67,a+4|0,62838)|0;b=x;x=0;if(b&1){b=Ia()|0;mRa(a);Ua(b|0)}else return}function aZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;yB(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function bZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;e=f[a>>2]|0;d=(c-e|0)/24|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0){a=e+(b*24|0)|0;while(1){if((c|0)==(a|0))break;e=c+-24|0;hQa(e);c=e}f[g>>2]=a}}else HC(a,b-d|0);return}function cZ(a){a=a|0;var b=0;L8(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function dZ(a){a=a|0;f[a>>2]=45828;xRa(a+108|0);RTa(a+96|0);zSa(a+84|0);zSa(a+72|0);dpa(a+60|0);mRa(a);return}function eZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=t_(a,d)|0;if((e|0)==(a+4|0))$Ia(f[b>>2]|0,f[d>>2]|0,0);else NQa(f[c>>2]|0,f[(f[e+24>>2]|0)+-4>>2]|0);return}function fZ(a){a=a|0;var b=0,c=0,d=0;c=a+12|0;if(f[c>>2]|0){d=a+8|0;_ya(f[d>>2]|0);f[d>>2]=0;d=f[a+4>>2]|0;b=0;while(1){if((b|0)==(d|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[c>>2]=0}return}function gZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,492,b);qf(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,493,b);return}function hZ(a){a=a|0;zSa(a+132|0);Sya(a+104|0);MTa(a+92|0);MTa(a+80|0);zSa(a+52|0);SQa(a+32|0);SQa(a+12|0);f0a(a);return}function iZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;_r(a+44|0,b);d=a+104|0;pha(d,kQa(b)|0);d=f[d>>2]|0;c=(f[a+108>>2]|0)-d>>2;while(1){if((c|0)<=0)break;e=d;f[e>>2]=0;c=c+-1|0;d=e+4|0}bK(a+16|0,b+36|0);return}function jZ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(36)|0;f[a>>2]=g;f[a+4>>2]=c+4;f[g+16>>2]=f[d>>2];vMa(g+20|0,f[e>>2]|0);b[a+8>>0]=1;return}function kZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;tB(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function lZ(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){MTa(b);Cbb(b)}}b=f[a>>2]|0;if(b|0)Cbb(b);return}function mZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,3154,b);ke(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,3155,b);return}function nZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;aC(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function oZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a:do if(!(b[a+44>>0]|0)){e=0;while(1){if((e|0)>=(d|0))break a;h=f[(f[a>>2]|0)+52>>2]|0;g=d7a(b[c>>0]|0)|0;if((dc[h&255](a,g)|0)==-1)break a;e=e+1|0;c=c+1|0}}else e=LHa(c,1,d,f[a+32>>2]|0)|0;while(0);return e|0}function pZ(a,b){a=a|0;b=b|0;var c=0;switch(f[b+8>>2]|0){case 2:{Lta(a,Jbb(f[b+20>>2]|0)|0,b);c=ODa(b+16|0,0)|0;Tja(a,f[(f[c>>2]|0)+4>>2]|0,b);break}case 3:case 1:case 0:break;default:hb()}return}function qZ(a){a=a|0;if(!a)return;else{qZ(f[a>>2]|0);qZ(f[a+4>>2]|0);Cbb(a);return}}function rZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=a+12|0;f[g>>2]=0;f[a+16>>2]=131360;do if(c)if(c>>>0<29&(b[131472]|0)==0){b[131472]=1;e=131360;break}else{e=s8(c<<2)|0;break}else e=0;while(0);f[a>>2]=e;d=e+(d<<2)|0;f[a+8>>2]=d;f[a+4>>2]=d;f[g>>2]=e+(c<<2);return}function sZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(!(((b|0)!=0?(e=v$a(b)|0,(e|0)!=0):0)?!(Qab(f[e+8>>2]|0)|0):0))e=vwa(f[a>>2]|0,b)|0;f[e+8>>2]=f[c>>2];if(d|0){faa(e+12|0,d);tt(e)}return e|0}function tZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[h>>2]=f[b+24>>2];b=f[b+28>>2]|0;f[g>>2]=f[h>>2];d=A2(a,g,b,c,d)|0;u=e;return d|0}function uZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,601,b);ze(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,602,b);return}function vZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);ZX(b,d);return}function wZ(a,b){a=a|0;b=b|0;b=hX(a,b)|0;if((b|0)!=(a+4|0)){Xla(a+12|0,f[b+20>>2]|0);BQ(a,b)}return}function xZ(a,b){a=a|0;b=b|0;var c=0,d=0;if(!a){b=Kc(b)|0;return b|0}if(b>>>0>4294967231){f[33448]=12;b=0;return b|0}c=tk(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(c|0){b=c+8|0;return b|0}c=Kc(b)|0;if(!c){b=0;return b|0}d=f[a+-4>>2]|0;d=(d&-8)-((d&3|0)==0?8:4)|0;Ku(c|0,a|0,(d>>>0>>0?d:b)|0)|0;rg(a);b=c;return b|0}function yZ(a,b){a=a|0;b=b|0;var c=0;c=s8(36)|0;f[c>>2]=0;x=0;ua(1501,c+8|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;Cbb(c);Ua(b|0)}else{f[c+4>>2]=a;b=f[a>>2]|0;f[c>>2]=b;f[b+4>>2]=c;f[a>>2]=c;c=a+8|0;f[c>>2]=(f[c>>2]|0)+1;return}}function zZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;KB(c,a,b,e);u=d;return (f[c>>2]|0)+20|0}function AZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=u;u=u+64|0;c=e;CM(c,f[a+16>>2]|0);b[c+21>>0]=1;x=0;ua(1303,c|0,d|0);d=x;x=0;if(d&1){d=Ia()|0;jWa(c);Ua(d|0)}else{jWa(c);u=e;return}}function BZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;vU(a,c,d,0,e);x=0;ua(1371,a|0,b|0);e=x;x=0;if(e&1){e=Ia()|0;Cfa(a);Ua(e|0)}else return}function CZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,3042,b);ue(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a+16|0,3043,b);return}function DZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(32)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];f[e+20>>2]=0;f[e+24>>2]=0;f[e+28>>2]=0;b[a+8>>0]=1;return}function EZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);c3(b,d);return}function FZ(a){a=a|0;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=GTa(f[(f[a>>2]|0)+4>>2]|0)|0;a=f[f[a+4>>2]>>2]|0;L1a(e,f[33042]|0);f[d>>2]=f[e>>2];a=UI(a,d)|0;f[b+8>>2]=a;f[b+4>>2]=1;u=c;return b|0}function GZ(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;tS(c,226,b);Cd(a,b);tS(c,227,b);return}function HZ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;j=u;u=u+128|0;h=j;f[h>>2]=0;i=h+4|0;f[i>>2]=a;f[h+44>>2]=a;g=h+8|0;f[g>>2]=(a|0)<0?-1:a+2147483647|0;f[h+76>>2]=-1;zna(h,0);c=ig(h,c,1,d,e)|0;if(b|0)f[b>>2]=a+((f[i>>2]|0)+(f[h+108>>2]|0)-(f[g>>2]|0));u=j;return c|0}function IZ(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;if(e>>>0>4294967279)Rda();if(e>>>0<11)b[a+11>>0]=d;else{g=e+16&-16;e=s8(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}eUa(a,c,d)|0;Z0a(a+d|0,0);return}function JZ(a){a=a|0;if(!a)return;else{JZ(f[a>>2]|0);JZ(f[a+4>>2]|0);Cbb(a);return}}function KZ(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+32|0;c=d;cRa(c);x=0;a=ja(62,a|0,b|0,c|0)|0;b=x;x=0;if(b&1){d=Ia()|0;xta(c);Ua(d|0)}else{xta(c);u=d;return a|0}return 0}function LZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,2344,b);pf(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,2345,b);return}function MZ(a){a=a|0;uQ(a);return}function NZ(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;b=n0a(a,0)|0;if(KBa(f[b>>2]|0,133176)|0){b=n0a(a,2)|0;b=Jbb(f[b>>2]|0)|0;Sqa(b,Boa(c)|0)|0;u=d;return}else Ca(65927,75335,1491,65944)}function OZ(a){a=+a;var b=0,c=0,d=0,e=0,g=0;d=u;u=u+16|0;b=d;c=d+8|0;p[b>>3]=a;e=vRa(a)|0;g=I&2147483647;if(g>>>0>2146435072|(g|0)==2146435072&e>>>0>0){e=E$a(b)|0;g=c;f[g>>2]=e;f[g+4>>2]=I|524288;a=+F7a(c);u=d;return +a}else Ca(75411,75445,113,101718);return +(0.0)}function PZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=b;f[c>>2]=d;b=f[f[a>>2]>>2]|0;if(b){f[a>>2]=b;d=f[c>>2]|0}uw(f[a+4>>2]|0,d);a=a+8|0;f[a>>2]=(f[a>>2]|0)+1;return}function QZ(a,b){a=a|0;b=b|0;var c=0;c=f[a+44>>2]|0;a=b+24|0;if(!(sB(c,a)|0))Ca(90357,90389,50,110003);else{c=mm(c,a)|0;f[c>>2]=(f[c>>2]|0)+1;return}}function RZ(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;xIa(a+8|0);Cbb(a);a=b}return}function SZ(a,c){a=a|0;c=c|0;var d=0,e=0;d=a+4|0;e=f[d>>2]|0;do if(e>>>0<=20)if(e>>>0>=3){if(((f[a>>2]|0)==1?(b[a+9>>0]|0)==0:0)?(f[d>>2]|0)>>>0<16:0){a=1;break}if((f[c+4>>2]|0)>2?(f[c+8>>2]|0)==0:0)a=(b[a+8>>0]&1)!=0;else a=0}else a=1;else a=0;while(0);return a|0}function TZ(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a=c;while(1){if((e|0)==(f|0)){h=7;break}if((a|0)==(d|0)){a=-1;break}c=b[a>>0]|0;g=b[e>>0]|0;if(c<<24>>24>24){a=-1;break}if(g<<24>>24>24){a=1;break}e=e+1|0;a=a+1|0}if((h|0)==7)a=(a|0)!=(d|0)&1;return a|0}function UZ(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;f[d>>2]=0;if((a|0)!=(c|0)){e=b[a>>0]|0;if(e<<24>>24==114){f[d>>2]=4;e=a+1|0;a=e;c=4;e=b[e>>0]|0}else c=0;if(e<<24>>24==86){c=c|2;f[d>>2]=c;e=a+1|0;a=e;e=b[e>>0]|0}if(e<<24>>24==75){f[d>>2]=c|1;a=a+1|0}}return a|0}function VZ(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+16|0;d=f[c>>2]|0;do if(d)if((b|0)==(d|0)){d=Jbb(a)|0;f[a+16>>2]=d;c=f[c>>2]|0;pc[f[(f[c>>2]|0)+12>>2]&4095](c,d);break}else{d=bc[f[(f[d>>2]|0)+8>>2]&511](d)|0;f[a+16>>2]=d;break}else f[a+16>>2]=0;while(0);return}function WZ(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,2373,b);tf(a,b);if(((f[c>>2]|0)+-1|0)>>>0<3)tS(a,2374,b);return}function XZ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;f[a>>2]=b;e=a+4|0;f[e>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;b=Jbb(d)|0;x=0;ua(94,e|0,b|0);a=x;x=0;if(a&1){c=Ia()|0;zSa(e);Ua(c|0)}if(b|0)kia(f[e>>2]|0,c|0,b|0)|0;return}function YZ(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;rXa(a);f[a+24>>2]=b;x=0;ua(2925,a|0,e|0);c=x;x=0;if(c&1){e=Ia()|0;P_a(a);Ua(e|0)}else{u=d;return}}function ZZ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a+56>>2]|0;e=(f[a+60>>2]|0)-c>>2;b=f[b>>2]|0;d=e;while(1){a=d+-1|0;if((d|0)<=0){a=4;break}if(g2a(f[c+(a<<2)>>2]|0,b)|0){a=5;break}else d=a}if((a|0)==4)hb();else if((a|0)==5)return 1-d+-1+e|0;return 0}function _Z(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(d>>>0>4294967279)Rda();if(d>>>0<11)b[a+11>>0]=d;else{g=d+16&-16;e=s8(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=d;a=e}eUa(a,c,d)|0;Z0a(a+d|0,0);return}function $Z(a,c){a=a|0;c=c|0;var d=0,e=0;e=YTa(f[c>>2]|0,135192)|0;d=a+36|0;f[d>>2]=e;e=bc[f[(f[e>>2]|0)+24>>2]&511](e)|0;c=a+44|0;f[c>>2]=e;d=f[d>>2]|0;d=(bc[f[(f[d>>2]|0)+28>>2]&511](d)|0)&1;b[a+53>>0]=d;if((f[c>>2]|0)>8)Aka(119608);else return}function a_(a,c){a=a|0;c=c|0;var d=0,e=0;e=YTa(f[c>>2]|0,135184)|0;d=a+36|0;f[d>>2]=e;e=bc[f[(f[e>>2]|0)+24>>2]&511](e)|0;c=a+44|0;f[c>>2]=e;d=f[d>>2]|0;d=(bc[f[(f[d>>2]|0)+28>>2]&511](d)|0)&1;b[a+53>>0]=d;if((f[c>>2]|0)>8)Aka(119608);else return}function b_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+16|0;d=e;g=Jbb(eua(4)|0)|0;n4a(d,Sqa(Sqa(Sqa(Sqa(g,Boa(133160)|0)|0,a)|0,b)|0,c)|0);u=e;return f[d>>2]|0}function c_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(32)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];Sab(e+20|0);b[a+8>>0]=1;return}function d_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(116)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[d>>2];bPa(e+20|0,d+4|0);b[a+8>>0]=1;return}function e_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(c>>>0>4294967279)Rda();if(c>>>0<11)b[a+11>>0]=c;else{g=c+16&-16;e=s8(g)|0;f[a>>2]=e;f[a+8>>2]=g|-2147483648;f[a+4>>2]=c;a=e}gMa(a,c,d)|0;Z0a(a+c|0,0);return}function f_(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;xMa(a+8|0);Cbb(a);a=b}return}function g_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=cUa(f[a+4>>2]|0)|0;f[d+8>>2]=c;c=ZQa(a,Or(b,1)|0)|0;f[d+12>>2]=c;c=ZQa(a,Or(b,2)|0)|0;f[d+16>>2]=c;SY(d);return d|0}function h_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=X(f[a+116>>2]|0,d>>>0>>0?d:c)|0;e=(f[a+140>>2]|0)+(e+(c>>>0>>0?d:c))|0;g=b[e>>0]|0;b[e>>0]=g<<24>>24==-1?-1:(g&255)+1&255;a=f[a+152>>2]|0;c=a+(c<<2)|0;f[c>>2]=(f[c>>2]|0)+1;d=a+(d<<2)|0;f[d>>2]=(f[d>>2]|0)+1;return}function i_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d+8|0;e=d;f[e>>2]=b;EC(c,a,f[b>>2]|0,e);u=d;return (f[c>>2]|0)+20|0}function j_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+8|0;a=f[e>>2]|0;do{c=a;d=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));jKa(a);a=(f[e>>2]|0)+40|0;f[e>>2]=a;b=b+-1|0}while((b|0)!=0);return}function k_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)>>>0<=(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,(e>>>0>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0<=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function l_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)>>>0>=(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,(e>>>0>d>>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0>=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function m_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;if(!(Qab(f[b+4>>2]|0)|0)?(e=w$a(f[b+12>>2]|0)|0,f[c>>2]=e,e|0):0){b=f[b+8>>2]|0;e=lm(a+68|0,c)|0;f[e>>2]=b}u=d;return}function n_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)>>>0<(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,(e>>>0>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0<(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function o_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)>>>0>(f[c+8>>2]|0)>>>0&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,(e>>>0>d>>>0|((e|0)==(d|0)?(f[b>>2]|0)>>>0>(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function p_(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=PMa(b)|0;f[a+8>>2]=10;t$a(d,b);b=(QRa(f[a+16>>2]|0)|0)+8|0;f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];f[b+12>>2]=f[d+12>>2];u=c;return a|0}function q_(a,b){a=a|0;b=b|0;b=hX(a,b)|0;if((b|0)!=(a+4|0))BQ(a,b);return}function r_(a,b){a=a|0;b=b|0;var c=0;do if(v2a(f[b+4>>2]|0)|0){c=b+8|0;if(Qab(f[c>>2]|0)|0?(c=(FW(a+36|0,c)|0)+4|0,(f[c>>2]|0)>0):0)break;UA(a,b)}while(0);return}function s_(a){a=a|0;if(!a)return;else{s_(f[a>>2]|0);s_(f[a+4>>2]|0);Cbb(a);return}}function t_(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=D3(b,f[a>>2]|0,a)|0;if((c|0)!=(a|0)?!(PVa(f[b>>2]|0,f[c+16>>2]|0)|0):0)a=c;return a|0}function u_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;cta(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function v_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;dta(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function w_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;eta(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function x_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;fta(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function y_(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;gta(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function z_(a,b){a=a|0;b=b|0;kJa(a);f[a>>2]=41792;f[a+44>>2]=b;b=a+48|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+64>>2]=1065353216;f[a+68>>2]=5;b=a+72|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+88>>2]=1065353216;return}function A_(a){a=a|0;var b=0;do if(zab(f[a>>2]|0)|0){a=f[a+4>>2]|0;b=d$a(a)|0;if(b|0){a=W7(f[b+8>>2]|0)|0;break}a=l$a(a)|0;if(a)a=f7a(f[a+8>>2]|0)|0;else a=0}else a=0;while(0);return a|0}function B_(a,b){a=a|0;b=b|0;WAa(a);f[a>>2]=40328;f[a+44>>2]=b;x=0;ia(67,a+4|0,61881)|0;b=x;x=0;if(b&1){b=Ia()|0;QTa(a);Ua(b|0)}else return}function C_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;if(!b)d=0;else d=zOa(f[d>>2]|0,b)|0;f[a>>2]=d;c=d+(c*24|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+(b*24|0);return}function D_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=u;u=u+16|0;e=d+4|0;g=d;f[g>>2]=f[b+8>>2];c=f[b+12>>2]|0;f[e>>2]=f[g>>2];bA(a,e,c,b);c=f[b+16>>2]|0;if(c|0)Xwa(a,(f[c+4>>2]|4|0)==5,b);u=d;return}function E_(a,c){a=a|0;c=c|0;var d=0,e=0;if((((b[c>>0]|0)==72?(b[c+1>>0]|0)==69:0)?(b[c+2>>0]|0)==65:0)?(b[c+3>>0]|0)==80:0){b[a>>0]=1;d=b[c+4>>0]|0;e=d<<24>>24==85;b[a+1>>0]=e&1;d=d<<24>>24==70;b[a+2>>0]=d&1;c=vDa(c+(e|d?5:4)|0)|0;f[a+4>>2]=c;f[a+8>>2]=d?((c|0)==64?1:2):0}else b[a>>0]=0;return}function F_(a){a=a|0;var b=0;ENa(a);f[a>>2]=45828;DUa(a+60|0);b=a+72|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;DUa(a+96|0);DUa(a+108|0);return}function G_(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b;d=(f[a>>2]|0)+4|0;e=(f[d>>2]|0)+-4|0;f[c>>2]=f[e>>2];f[d>>2]=e;a=(ZW(f[a+4>>2]|0,c)|0)+4|0;f[a>>2]=(f[a>>2]|0)+-4;u=b;return}function H_(a){a=a|0;lH(f[a+4>>2]|0);return}function I_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;c=cWa(c+144|0)|0;H8(e,a,b);a=c+8|0;f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[a+12>>2]=f[e+12>>2];f[c+4>>2]=b;u=d;return c|0}function J_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+32|0;d=c+16|0;g=c;e=f[a+4>>2]|0;t$a(g,b);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];b=Qya(a,e,e0(a,d)|0)|0;u=c;return b|0}function K_(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a:do if(!(b[a+44>>0]|0)){e=0;while(1){if((e|0)>=(d|0))break a;h=f[(f[a>>2]|0)+52>>2]|0;g=Jbb(f[c>>2]|0)|0;if((dc[h&255](a,g)|0)==-1)break a;e=e+1|0;c=c+4|0}}else e=LHa(c,4,d,f[a+32>>2]|0)|0;while(0);return e|0}function L_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;BM(a,b);g=a+20|0;c=b+20|0;f[g>>2]=0;e=a+24|0;f[e>>2]=0;d=a+28|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+24|0;f[e>>2]=f[a>>2];b=b+28|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function M_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;POa(a,b);b=a+16|0;fXa(b,c);Wfa(b,d);return}function N_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+12|0;e=f[d>>2]|0;if((e|0)==(f[a+16>>2]|0))LL(a+8|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}qc[f[(f[b>>2]|0)+8>>2]&255](b,a,f[a>>2]|0);u=g;return}function O_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+4|0;a=f[e>>2]|0;do{c=a;d=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));jKa(a);a=(f[e>>2]|0)+40|0;f[e>>2]=a;b=b+-1|0}while((b|0)!=0);return}function P_(a){a=a|0;var b=0;b=a+4|0;$K(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function Q_(a){a=a|0;var b=0;b=a+4|0;aL(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function R_(a){a=a|0;var b=0;b=a+4|0;bL(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function S_(a){a=a|0;var b=0;b=a+4|0;cL(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function T_(a){a=a|0;var b=0;b=a+4|0;dL(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function U_(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;a:do if(a|0)switch(c|0){case -2:{b[a>>0]=e;break a}case -1:{d[a>>1]=e;break a}case 0:{f[a>>2]=e;break a}case 1:{f[a>>2]=e;break a}case 3:{c=a;f[c>>2]=e;f[c+4>>2]=g;break a}default:break a}while(0);return}function V_(a){a=a|0;var c=0,d=0,e=0;c=a+92|0;if(!(f[c>>2]&8)){f[a+24>>2]=0;f[a+20>>2]=0;f[a+28>>2]=0;d=(b[a+98>>0]|0)==0;e=f[(d?a+56|0:a+32|0)>>2]|0;d=e+(f[(d?a+60|0:a+52|0)>>2]|0)|0;f[a+8>>2]=e;f[a+12>>2]=d;f[a+16>>2]=d;f[c>>2]=8;a=1}else a=0;return a|0}function W_(a,b,c){a=a|0;b=b|0;c=c|0;return _8(f[(f[a+4>>2]|0)+44>>2]|0,f[f[a+8>>2]>>2]|0,b,f[c>>2]|0)|0}function X_(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;f[c>>2]=b;d=f[b+16>>2]|0;b=f[b+12>>2]|0;while(1){if((b|0)==(d|0))break;l3(VU(a,f[b>>2]|0)|0,c);b=b+4|0}u=e;return}function Y_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+64|0;b=d;CM(b,f[a+16>>2]|0);x=0;ua(1303,b|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;jWa(b);Ua(c|0)}else{jWa(b);u=d;return}}function Z_(){var a=0;uBa();x=0;sa(7);a=x;x=0;if(a&1){a=Ia()|0;Qia(132700);Ua(a|0)}else return}function __(a,b){a=a|0;b=b|0;var c=0;rXa(a);c=a+24|0;DUa(c);f[a+36>>2]=0;x=0;ua(2924,a|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;RTa(c);P_a(a);Ua(b|0)}else return}function $_(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;rXa(a);f[a+24>>2]=b;x=0;ua(350,a|0,e|0);c=x;x=0;if(c&1){e=Ia()|0;P_a(a);Ua(e|0)}else{u=d;return}}function a$(a){a=a|0;yH(f[a+4>>2]|0);return}function b$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)<=(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,((e|0)<(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0<=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function c$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)>=(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,((e|0)>(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0>=(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function d$(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0;f=(d&255)<<16|(c&255)<<24|(e&255)<<8;e=a+2|0;d=b[e>>0]|0;c=(h[a+1>>0]|0)<<16|(h[a>>0]|0)<<24|(d&255)<<8;d=d<<24>>24==0;if(!((c|0)==(f|0)|d))do{e=e+1|0;d=b[e>>0]|0;c=(c|d&255)<<8;d=d<<24>>24==0}while(!((c|0)==(f|0)|d));return (d?0:e+-2|0)|0}function e$(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+64|0;c=f[b>>2]|0;if(c){x=0;d=ga(f[(f[a>>2]|0)+24>>2]|0,a|0)|0;e=x;x=0;if(e&1){e=Ia()|0;sY(c)|0;Ua(e|0)}if(!(sY(c)|0)){f[b>>2]=0;a=(d|0)==0?a:0}else a=0}else a=0;return a|0}function f$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=c;if(!a){e=Ea(4)|0;f[e>>2]=0;A6a(e);Pa(e|0,37840,324)}else{d=ec[f[(f[a>>2]|0)+24>>2]&127](a,b,d)|0;u=e;return d|0}return 0}function g$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=(c&255)<<8|d&255;d=a+1|0;c=b[d>>0]|0;a:do if(!(c<<24>>24))d=0;else{c=(h[a>>0]|0)<<8|c&255;while(1){a=c&65535;if((a|0)==(e|0))break;d=d+1|0;c=b[d>>0]|0;if(!(c<<24>>24)){d=0;break a}else c=a<<8|c&255}d=d+-1|0}while(0);return d|0}function h$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;e=g;f[d>>2]=b;f[e>>2]=c;if(!a){g=Ea(4)|0;f[g>>2]=0;A6a(g);Pa(g|0,37840,324)}else{e=ec[f[(f[a>>2]|0)+24>>2]&127](a,d,e)|0;u=g;return e|0}return 0}function i$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e+4|0;f[d>>2]=b;b=e;f[b>>2]=c;if(!a){e=Ea(4)|0;f[e>>2]=0;A6a(e);Pa(e|0,37840,324)}else{d=ec[f[(f[a>>2]|0)+24>>2]&127](a,d,b)|0;u=e;return d|0}return 0}function j$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)<(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,((e|0)<(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0<(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function k$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)>(f[c+8>>2]|0)&1);break}case 2:{b=b+8|0;e=f[b+4>>2]|0;c=c+8|0;d=f[c+4>>2]|0;t$a(a,((e|0)>(d|0)|((e|0)==(d|0)?(f[b>>2]|0)>>>0>(f[c>>2]|0)>>>0:0))&1);break}default:hb()}return}function l$(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;XCa(a+8|0);Cbb(a);a=b}return}function m$(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a=b;while(1){if((d|0)==(e|0)){h=7;break}if((a|0)==(c|0)){a=-1;break}b=f[a>>2]|0;g=f[d>>2]|0;if((b|0)<(g|0)){a=-1;break}if((g|0)<(b|0)){a=1;break}d=d+4|0;a=a+4|0}if((h|0)==7)a=(a|0)!=(c|0)&1;return a|0}function n$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;GQa(a,b);b=a+16|0;fXa(b,c);_2(b,d);return}function o$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;cta(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function p$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;dta(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function q$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;eta(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function r$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;fta(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function s$(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;gta(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function t$(a,b){a=a|0;b=b|0;var c=0,d=0;c=5;while(1){if((a|0)==(b|0))break;d=f[a>>2]|0;a:do if(!c)c=0;else switch(d|0){case 0:{c=0;break a}case 5:break a;default:{c=(c|0)==5?d:(c|0)==(d|0)?c:0;break a}}while(0);a=a+4|0}return c|0}function u$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Sda(b,d);return}function v$(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=b;x=0;c=ga(212,16)|0;d=x;x=0;if(!(d&1)){f[c+4>>2]=0;f[c+8>>2]=0;f[c>>2]=42256;f[c+12>>2]=b;f[a+4>>2]=c;return}a=Ia()|0;if(b|0)Cbb(b);Ua(a|0)}function w$(a,b){a=a|0;b=b|0;var c=0,d=0;c=LSa(f[a+4>>2]|0)|0;f[c+4>>2]=1;d=ZQa(a,Or(b,1)|0)|0;f[c+12>>2]=d;b=ZQa(a,Or(b,2)|0)|0;f[c+16>>2]=b;lDa(c);return c|0}function x$(a,b){a=a|0;b=b|0;var c=0,d=0;c=FTa(f[a+4>>2]|0)|0;d=bl(a,Or(b,1)|0)|0;f[c+8>>2]=d;b=ZQa(a,Or(b,2)|0)|0;f[c+12>>2]=b;gLa(c,1);Aia(c);return c|0}function y$(a,b){a=a|0;b=b|0;var c=0,d=0;c=FTa(f[a+4>>2]|0)|0;d=bl(a,Or(b,1)|0)|0;f[c+8>>2]=d;b=ZQa(a,Or(b,2)|0)|0;f[c+12>>2]=b;gLa(c,0);Aia(c);return c|0}function z$(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;c=e;if(f[b+4>>2]|0?(d=b+36|0,(f[(f[d>>2]|0)+4>>2]|0)==0):0){_0a(c,Jbb(f[a+36>>2]|0)|0);b=f[d>>2]|0;c=J$(c,b,k_a(f[c>>2]|0)|0)|0;f[d>>2]=c}u=e;return}function A$(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(40)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];EXa(e+24|0);b[a+8>>0]=1;return}function B$(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;iNa(a+8|0);Cbb(a);a=b}return}function C$(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;f[c>>2]=a;a=b;d=Jbb(eua(2)|0)|0;d=Sqa(d,Boa(133100)|0)|0;n4a(a,Sqa(d,Boa(c)|0)|0);u=b;return f[a>>2]|0}function D$(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;e=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;d=0;while(1){if((d|0)==(e|0))break;g=d+1|0;c=g;while(1){if((c|0)==(e|0))break;h=f[b>>2]|0;Uia(a,f[h+(d<<2)>>2]|0,f[h+(c<<2)>>2]|0);c=c+1|0}d=g}return}function E$(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a+68>>2]|0;n4a(d,b);Yr(e,f[d>>2]|0)|0;if(f[a+76>>2]|0)f[a+144>>2]=(f[a+136>>2]|0)-(f[a+132>>2]|0)>>3;e=Qoa(a)|0;u=c;return e|0}function F$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;GQa(a,b);b=a+16|0;fXa(b,c);X6(b,d);return}function G$(a){a=a|0;if(!a)return;else{G$(f[a>>2]|0);G$(f[a+4>>2]|0);Cbb(a);return}}function H$(a){a=a|0;if(!a)return;else{H$(f[a>>2]|0);H$(f[a+4>>2]|0);Cbb(a);return}}function I$(a){a=a|0;aI(f[a+4>>2]|0);return}function J$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(b){d=v$a(b)|0;if(!d)d=vwa(f[a>>2]|0,b)|0}else d=vwa(f[a>>2]|0,0)|0;if(c|0){faa(d+12|0,c);tt(d)}return d|0}function K$(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+16|0;h=g;e=dV(c)|0;d=a+68|0;a=f[d>>2]|0;n4a(h,e);Yr(a,f[h>>2]|0)|0;a=0;while(1){if((a|0)>=(e|0))break;Gv(f[d>>2]|0,b[c+a>>0]|0)|0;a=a+1|0}u=g;return}function L$(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=f[a+68>>2]|0;n4a(c,1);Yr(d,f[c>>2]|0)|0;if(f[a+76>>2]|0)f[a+144>>2]=(f[a+136>>2]|0)-(f[a+132>>2]|0)>>3;d=Qoa(a)|0;u=b;return d|0}function M$(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(ava(b,f[a+24>>2]|0)|0){a=f[a+32>>2]|0;b=gUa(f[b+12>>2]|0)|0;f[c>>2]=b;c=i_(a,c)|0;f[c>>2]=(f[c>>2]|0)+1}u=d;return}function N$(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=(Vz(a,d)|0)==0;u=c;return b|0}function O$(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=b;if(DQa(a,b)|0)Ca(89628,88985,138,89659);else{b=s8(20)|0;KQa(b,c);d=GE(a,d)|0;f[d>>2]=b;u=e;return}}function P$(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=Gl(a,d)|0;u=c;return f[b>>2]|0}function Q$(a){a=a|0;gI(f[a+4>>2]|0);return}function R$(a){a=a|0;var b=0,c=0;c=f[a+4>>2]|0;b=0;while(1){if((b|0)==(c|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=0;b=b+1|0}f[a+12>>2]=0;a=a+8|0;c=f[a>>2]|0;f[a>>2]=0;return c|0}function S$(a,b){a=a|0;b=b|0;var c=0,d=0;b=b+8|0;c=i_(a+44|0,b)|0;f[c>>2]=(f[c>>2]|0)+1;c=a+56|0;if(!(rfa(c,f[b>>2]|0)|0)){d=f[a+64>>2]|0;a=i_(c,b)|0;f[a>>2]=d}return}function T$(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;MTa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0);f[a+8>>2]=0;f[d>>2]=0;f[a>>2]=0}return}function U$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);rea(b,d);return}function V$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);sea(b,d);return}function W$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);tea(b,d);return}function X$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);uea(b,d);return}function Y$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);vea(b,d);return}function Z$(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);t6(b,c);return}function _$(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b+4|0;e=b;d=f[a>>2]|0;f[e>>2]=f[f[f[a+4>>2]>>2]>>2];a=SKa(f[d>>2]|0,f[f[a+8>>2]>>2]|0,1)|0;f[c>>2]=f[e>>2];a=Asa(d,c,a)|0;u=b;return a|0}function $$(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+4|0;c=f[b>>2]|0;d=a+16|0;e=f[d>>2]|0;a=a+20|0;f[a>>2]=(f[a>>2]|0)+-1;a=e+1|0;f[d>>2]=a;if(a>>>0>2047){Cbb(f[c>>2]|0);f[b>>2]=(f[b>>2]|0)+4;f[d>>2]=(f[d>>2]|0)+-1024}return}function a0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)>>>(eHa(f[c+8>>2]|0,1)|0));break}case 2:{b=b+8|0;XSa(a,JMa(f[b>>2]|0,f[b+4>>2]|0,eHa(f[c+8>>2]|0,2)|0)|0,I);break}default:hb()}return}function b0(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;b=hX(a+44|0,b)|0;if((b|0)==(a+48|0)){Bab(c);b=f[c>>2]|0}else{b=f[b+20>>2]|0;f[c>>2]=b}u=d;return b|0}function c0(a,b,c){a=a|0;b=b|0;c=c|0;fXa(a,c);zWa(a,b);$z(a+-16|0,b);zWa(a,0);fXa(a,0);return}function d0(a){a=a|0;var b=0,c=0,d=0,e=0;b=a+8|0;a:do if(f[b>>2]|0){c=f[a+4>>2]|0;d=(f[a>>2]|0)+4|0;e=f[c>>2]|0;f[e+4>>2]=f[d>>2];f[f[d>>2]>>2]=e;f[b>>2]=0;b=c;while(1){if((b|0)==(a|0))break a;e=f[b+4>>2]|0;Cbb(b);b=e}}while(0);return}function e0(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;if(v2a(c)|0){a=cWa(f[a>>2]|0)|0;d=a+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];f[a+4>>2]=c;return a|0}else Ca(54084,54111,312,54132);return 0}function f0(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;d=a+8|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;g=e+-4|0;f[d>>2]=g;e=g}d=f[a>>2]|0;do if(d|0){c=f[a+16>>2]|0;if((d|0)==(c|0)){b[c+112>>0]=0;break}else{Cbb(d);break}}while(0);return}function g0(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=1065353216;b=(f[c>>2]|0)+20|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function h0(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0)qW(a,f[c>>2]|0,f[c+4>>2]|0);else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}return}function i0(a,b){a=a|0;b=b|0;zWa(a,b);xga(a,b);zWa(a,0);return}function j0(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];if((a|0)!=(b|0))Lu(a+16|0,f[b+16>>2]|0,f[b+20>>2]|0);return a|0}function k0(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a+64>>2]|0;d=f[c>>2]|0;c=(f[c+4>>2]|0)-d>>2;a=f[b>>2]|0;b=0;while(1){if(b>>>0>=c>>>0){a=5;break}if(g2a(f[f[d+(b<<2)>>2]>>2]|0,a)|0){a=6;break}b=b+1|0}if((a|0)==5)hb();else if((a|0)==6)return b|0;return 0}function l0(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=Jbb(f[b+4>>2]|0)|0;if((f[a+8>>2]|0)>>>0>>0)SMa(a,d);c=0;while(1){if((c|0)==(d|0))break;e=ODa(b,c)|0;f[(f[a>>2]|0)+(c<<2)>>2]=f[e>>2];c=c+1|0}f[a+4>>2]=d;return}function m0(a,b){a=a|0;b=b|0;var c=0,d=0;d=(f[b+4>>2]|0)-(f[b>>2]|0)>>2;if((f[a+8>>2]|0)>>>0>>0)SMa(a,d);c=0;while(1){if((c|0)==(d|0))break;f[(f[a>>2]|0)+(c<<2)>>2]=f[(f[b>>2]|0)+(c<<2)>>2];c=c+1|0}f[a+4>>2]=d;return}function n0(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=f[b>>2]|0;f[d>>2]=0;f[d+4>>2]=f[b>>2];b=(NP(a+40|0,d)|0)==0;u=c;return b|0}function o0(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=Jbb(eua(3)|0)|0;a=Sqa(Sqa(d,Boa(133104)|0)|0,a)|0;n4a(b,Sqa(a,eua(0)|0)|0);u=c;return f[b>>2]|0}function p0(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;uWa(a+8|0);Cbb(a);a=b}return}function q0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;g=u;u=u+16|0;h=g;e=a+68|0;a=f[e>>2]|0;n4a(h,d);Yr(a,f[h>>2]|0)|0;a=0;while(1){if((a|0)==(d|0))break;Gv(f[e>>2]|0,b[c+a>>0]|0)|0;a=a+1|0}u=g;return}function r0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Pga(b,d);return}function s0(a,c){a=a|0;c=c|0;var d=0,e=0;do if((a|0)!=-1){e=c+4|0;d=f[e>>2]|0;if(!d){MX(c)|0;d=f[e>>2]|0;if(!d){a=-1;break}}if(d>>>0>((f[c+44>>2]|0)+-8|0)>>>0){d=d+-1|0;f[e>>2]=d;b[d>>0]=a;f[c>>2]=f[c>>2]&-17}else a=-1}else a=-1;while(0);return a|0}function t0(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=f[b>>2]|0;f[d>>2]=1;f[d+4>>2]=f[b>>2];b=(NP(a+40|0,d)|0)==0;u=c;return b|0}function u0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Po(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function v0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,f[b+8>>2]>>(eHa(f[c+8>>2]|0,1)|0));break}case 2:{b=b+8|0;XSa(a,BJa(f[b>>2]|0,f[b+4>>2]|0,eHa(f[c+8>>2]|0,2)|0)|0,I);break}default:hb()}return}function w0(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;b=d;c=Jbb(eua(2)|0)|0;c=Sqa(c,Boa(133152)|0)|0;if(ZTa(a)|0)a=Iza()|0;n4a(b,Sqa(c,a)|0);u=d;return f[b>>2]|0}function x0(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=u;u=u+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){c=c-d|0;iH(f|0,b<<24>>24|0,(c>>>0<256?c:256)|0)|0;if(c>>>0>255){d=c;do{RWa(a,f,256);d=d+-256|0}while(d>>>0>255);c=c&255}RWa(a,f,c)}u=g;return}function y0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Mn(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function z0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Dt(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function A0(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=Jbb(eua(3)|0)|0;a=Sqa(Sqa(d,Boa(133120)|0)|0,a)|0;n4a(b,Sqa(a,eua(0)|0)|0);u=c;return f[b>>2]|0}function B0(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+32|0;d=c;b=c+4|0;f[d>>2]=a;tXa(b);x=0;ua(2219,b|0,d|0);a=x;x=0;if(a&1){d=Ia()|0;P_a(b);Ua(d|0)}else{d=f[b+24>>2]|0;P_a(b);u=c;return d|0}return 0}function C0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);y7(b,d);return}function D0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+32|0;d=e;kI(d,b,c,0);if(K0a(d)|0)EXa(a);else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2]}u=e;return}function E0(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0;b=u;u=u+16|0;j=b+4|0;a=b;f[j>>2]=c;f[a>>2]=g;h=Ro(c,d,j,g,h,a)|0;f[e>>2]=f[j>>2];f[i>>2]=f[a>>2];u=b;return h|0}function F0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,f[b+8>>2]<<(eHa(f[c+8>>2]|0,1)|0));break}case 2:{b=b+8|0;XSa(a,mMa(f[b>>2]|0,f[b+4>>2]|0,eHa(f[c+8>>2]|0,2)|0)|0,I);break}default:hb()}return}function G0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;GQa(a,b);b=a+16|0;fXa(b,c);Oia(b,d);return}function H0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;e=b[a>>0]|0;a:do if(!(e<<24>>24))e=0;else while(1){d=d+-1|0;f=b[c>>0]|0;if(!(e<<24>>24==f<<24>>24&((d|0)!=0&f<<24>>24!=0)))break a;a=a+1|0;c=c+1|0;e=b[a>>0]|0;if(!(e<<24>>24)){e=0;break}}while(0);return (e&255)-(h[c>>0]|0)|0}function I0(a){a=a|0;if(((((((b[a+26>>0]|0)==0?(b[a+27>>0]|0)==0:0)?!(j$a(f[a+36>>2]|0,f[a+48>>2]|0)|0):0)?(b[a+76>>0]|0)==0:0)?(b[a+77>>0]|0)==0:0)?!(j$a(f[a+60>>2]|0,f[a+72>>2]|0)|0):0)?(b[a+78>>0]|0)==0:0)a=(b[a+79>>0]|0)!=0;else a=1;return a|0}function J0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=c+4|0;while(1){if(aQa(d)|0)break;KX(a,f[c>>2]|0,b[e>>0]|0)}return}function K0(a){a=a|0;HP(a);return}function L0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,HZa(f[b+8>>2]|0,f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,Nma(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function M0(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;if(!(Dab(f[a>>2]|0)|0))Ca(53407,75335,426,91389);a=f[a+8>>2]|0;if(!(Jbb(f[a+4>>2]|0)|0)){n4a(b,0);a=f[b>>2]|0}else{a=RCa(a)|0;a=f[a>>2]|0;f[b>>2]=a}u=c;return a|0}function N0(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);s6(b,c);return}function O0(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=sn(Oc(f[a+20>>2]|0,b,c)|0,a,b,c)|0;a=f[a+8>>2]|0;if(a)d=Ipa(b,d,ec[f[(f[a>>2]|0)+8>>2]&127](a,b,c)|0)|0;return d|0}function P0(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(24)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];Bab(e+20|0);b[a+8>>0]=1;return}function Q0(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,XZa(f[b+8>>2]|0,f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,Tma(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function R0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);raa(b,d);return}function S0(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){I_a(b);Cbb(b)}}b=f[a>>2]|0;if(b|0)Cbb(b);return}function T0(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){T_a(b);Cbb(b)}}b=f[a>>2]|0;if(b|0)Cbb(b);return}function U0(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(E2(b,f[a+24>>2]|0)|0){a=f[a+28>>2]|0;b=$Fa(f[b+8>>2]|0)|0;f[c>>2]=b;c=i_(a,c)|0;f[c>>2]=(f[c>>2]|0)+1}u=d;return}function V0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;HQa(a,b);b=a+16|0;fXa(b,c);xia(b,d);return}function W0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+16|0;g=e+4|0;h=e;f[h>>2]=f[b+24>>2];f[g>>2]=f[h>>2];d=Q8(a,g,c,d)|0;u=e;return d|0}function X0(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;a=JW(a+44|0,b+8|0)|0;f[d>>2]=b;pH(c+8|0,a,b,d);u=c;return}function Y0(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Daa(b,d);return}function Z0(a){a=a|0;var b=0;if(!a){if(!(f[11644]|0))a=0;else a=Z0(f[11644]|0)|0;Kbb();b=f[33451]|0;if(b)do{if((f[b+20>>2]|0)>>>0>(f[b+28>>2]|0)>>>0)a=EW(b)|0|a;b=f[b+56>>2]|0}while((b|0)!=0);Fbb()}else a=EW(a)|0;return a|0}function _0(a){a=a|0;var b=0;if(!(f[f[a>>2]>>2]|0)){b=eSa(f[(f[a+4>>2]|0)+4>>2]|0)|0;f[f[a>>2]>>2]=b;b=a+8|0;faa((f[f[a>>2]>>2]|0)+12|0,f[f[b>>2]>>2]|0);f[f[b>>2]>>2]=f[f[a>>2]>>2]}return}function $0(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){X0a(f[c>>2]|0);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function a1(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=b[c+11>>0]|0;g=e<<24>>24<0;e=g?f[c+4>>2]|0:e&255;qW(a,g?f[c>>2]|0:c,e>>>0>>0?e:d);return}function b1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+16|0;d=g+4|0;e=g;f[d>>2]=b;f[e>>2]=c;if(!a){g=Ea(4)|0;f[g>>2]=0;A6a(g);Pa(g|0,37840,324)}else{qc[f[(f[a>>2]|0)+24>>2]&255](a,d,e);u=g;return}}function c1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;GQa(a,b);b=a+16|0;fXa(b,c);qja(b,d);return}function d1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;HQa(a,b);b=a+16|0;fXa(b,c);Nia(b,d);return}function e1(a){a=a|0;if(!a)return;else{e1(f[a>>2]|0);e1(f[a+4>>2]|0);Cbb(a);return}}function f1(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(24)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[d>>2];f[e+20>>2]=f[d+4>>2];b[a+8>>0]=1;return}function g1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){I_a(c);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function h1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){T_a(c);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function i1(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(g2a(a,f[b+8>>2]|0)|0)lJ(b,c,d,e);else{a=f[a+8>>2]|0;tc[f[(f[a>>2]|0)+20>>2]&15](a,b,c,d,e,g)}return}function j1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[a+8>>2]=7;t$a(d,b+-1|0);b=(QRa(f[a+16>>2]|0)|0)+8|0;f[b>>2]=f[d>>2];f[b+4>>2]=f[d+4>>2];f[b+8>>2]=f[d+8>>2];f[b+12>>2]=f[d+12>>2];u=c;return a|0}function k1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];b=e0(a+32|0,d)|0;u=c;return b|0}function l1(a,b,c){a=a|0;b=b|0;c=c|0;return vca(f[(f[a+4>>2]|0)+44>>2]|0,f[f[a+8>>2]>>2]|0,b,f[c>>2]|0)|0}function m1(a,b,c){a=a|0;b=b|0;c=c|0;B4(a,b);x=0;ua(290,a+16|0,c|0);c=x;x=0;if(c&1){c=Ia()|0;MTa(a);Ua(c|0)}else return}function n1(a){a=a|0;var b=0,c=0,d=0;c=f[33200]|0;b=a;d=c;while(1){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=1065353216;b=b+-1|0;if(!b)break;else d=d+20|0}f[33200]=c+(a*20|0);return}function o1(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;g=s8(24)|0;f[a>>2]=g;f[a+4>>2]=132636;e=c;d=f[e+4>>2]|0;c=g+16|0;f[c>>2]=f[e>>2];f[c+4>>2]=d;b[a+8>>0]=1;return}function p1(a){a=a|0;a:do if(((a&-33)+-65&255)<26|(a+-48&255)<10)a=1;else{switch(a<<24>>24){case 126:case 33:case 35:case 36:case 37:case 38:case 39:case 42:case 43:case 45:case 46:case 47:case 58:case 60:case 61:case 62:case 63:case 64:case 94:case 95:case 96:case 124:{a=1;break a}default:{}}a=0}while(0);return a|0}function q1(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;x=0;ua(588,a|0,b|0);c=x;x=0;if(c&1){b=Ia()|0;zSa(a);Ua(b|0)}c=f[a>>2]|0;a=0;while(1){if((a|0)==(b|0))break;f[c+(a<<2)>>2]=a;a=a+1|0}return}function r1(a){a=a|0;var b=0;a:do switch(f[a+8>>2]|0){case 3:case 1:case 0:{f[a+4>>2]=1;break}case 2:{b=ODa(a+16|0,0)|0;a=a+4|0;if((f[(f[b>>2]|0)+4>>2]|0)==5){f[a>>2]=5;break a}else{f[a>>2]=1;break a}}default:hb()}while(0);return}function s1(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+48|0;c=d;if((Jbb(f[b+16>>2]|0)|0)>>>0>=3){Us(c,b,a+44|0,a+104|0,fZa(f[a+40>>2]|0)|0);vPa(c)}u=d;return}function t1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;GQa(a,b);b=a+16|0;fXa(b,c);Rka(b,d);return}function u1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);e3(b,d);return}function v1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;a=Wz(a+84|0,d)|0;if(!a)a=0;else a=L_a(f[a+12>>2]|0)|0;u=c;return a|0}function w1(a,b){a=a|0;b=b|0;zWa(a,b);ama(a+-16+16|0,b);zWa(a,0);return}function x1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);Ema(f[a>>2]|0,41)|0;u=c;return}function y1(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+64|0;c=d;jX(c);a=f[a+36>>2]|0;Jbb(a)|0;x=0;va(94,c+16|0,b|0,a|0);b=x;x=0;if(b&1){d=Ia()|0;uDa(c);Ua(d|0)}else{uDa(c);u=d;return}}function z1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=a+4|0;while(1){if((b|0)==(c|0))break;d=f[a>>2]|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[a>>2]=(f[a>>2]|0)+12;b=b+12|0}return}function A1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if(!b)break;d=PVa(f[b+16>>2]|0,a)|0;c=d?c:b;b=f[(d?b+4|0:b)>>2]|0}return c|0}function B1(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0){OX(b);Cbb(b)}}b=f[a>>2]|0;if(b|0)Cbb(b);return}function C1(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;xoa(b);b=(f[c>>2]|0)+24|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function D1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);K2(b,d);return}function E1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);F4(b,d);return}function F1(){var a=0;f[32836]=0;f[32837]=0;f[32838]=0;b[131472]=0;x=0;sa(40);a=x;x=0;if(a&1){a=Ia()|0;koa(131344);Ua(a|0)}else{Ota(28);return}}function G1(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;zIa(c+16|0,b);kUa(f[c+52>>2]|0);zWa(a,0);return}function H1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){OX(c);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function I1(a,b,c){a=a|0;b=b|0;c=c|0;POa(a,b);b=a+16|0;fXa(b,c);hda(b,c);return}function J1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);xha(b,d);return}function K1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);dca(b,d);return}function L1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,4)|0;if(!(f[d>>2]&4)){if((c|0)<69)c=c+2e3|0;else c=(c|0)<100?c+1900|0:c;f[a>>2]=c+-1900}return}function M1(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,4)|0;if(!(f[d>>2]&4)){if((c|0)<69)c=c+2e3|0;else c=(c|0)<100?c+1900|0:c;f[a>>2]=c+-1900}return}function N1(a,b){a=a|0;b=b|0;Ema(Pca(134176,a)|0,32)|0;bk(Jbb(b)|0);Ema(134176,10)|0;hb()}function O1(a,b){a=a|0;b=b|0;var c=0,d=0;T$(a);f[a>>2]=f[b>>2];c=b+4|0;f[a+4>>2]=f[c>>2];d=b+8|0;f[a+8>>2]=f[d>>2];f[d>>2]=0;f[c>>2]=0;f[b>>2]=0;return}function P1(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(24)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[f[d>>2]>>2];f[e+20>>2]=0;b[a+8>>0]=1;return}function Q1(a){a=a|0;var b=0;b=a+4|0;IQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function R1(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-20|0;f[c>>2]=d;SQa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function S1(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+60|0;d=f[c>>2]|0;if((f[a+56>>2]|0)==(d|0))Ca(111005,111025,431,111069);f[c>>2]=d+-4;Gv(f[a+28>>2]|0,11)|0;if((f[b+4>>2]|0)==5?(f[b+16>>2]|0)==0:0)Ca(111080,111025,443,111069);return}function T1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);G1(b,d);return}function U1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);o3(b,d);return}function V1(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a>>2]|0;a=t_(d,b)|0;if((a|0)!=(d+4|0))b=(f[a+24>>2]|0)+-4|0;return g2a(f[b>>2]|0,f[c>>2]|0)|0}function W1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;tza(d,f[b>>2]|0,f[b+4>>2]|0);Ep(d,a);xta(d);u=c;return}function X1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;uza(d,f[b>>2]|0,f[b+4>>2]|0);Ep(d,a);xta(d);u=c;return}function Y1(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=f[b>>2];b=(Vz(a,d)|0)==0;u=c;return b|0}function Z1(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){UD(c);Cbb(c)}}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function _1(a,b){a=a|0;b=b|0;a=a+12|0;if(!(sB(a,b)|0))Ca(87325,87231,397,87353);else{b=qm(a,b)|0;return f[b>>2]|0}return 0}function $1(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Fca(b,d);return}function a2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Gca(b,d);return}function b2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);x7(b,d);return}function c2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Hca(b,d);return}function d2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Ica(b,d);return}function e2(a,b){a=a|0;b=b|0;a=a+32|0;if(!(sB(a,b)|0))Ca(87623,87231,402,87649);else{b=qm(a,b)|0;return f[b>>2]|0}return 0}function f2(a,b,c){a=a|0;b=b|0;c=c|0;GQa(a,b);b=a+16|0;fXa(b,c);Tca(b,c);return}function g2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);hia(b,d);return}function h2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);iia(b,d);return}function i2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);jia(b,d);return}function j2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Uca(b,d);return}function k2(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;xoa(b);b=(f[c>>2]|0)+24|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function l2(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);P9(b,c);return}function m2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;d=g;nra(a);e=b+12|0;b=b+16|0;while(1){b=f[b>>2]|0;c=b;if((e|0)==(c|0))break;f[d>>2]=f[b+8>>2];fL(a,d);b=c+4|0}u=g;return a|0}function n2(a,b){a=a|0;b=b|0;zWa(a,b);vja(a,b);zWa(a,0);return}function o2(a,b){a=a|0;b=b|0;zWa(a,b);wja(a,b);zWa(a,0);return}function p2(a,b){a=a|0;b=b|0;zWa(a,b);xja(a,b);zWa(a,0);return}function q2(a,b){a=a|0;b=b|0;zWa(a,b);yja(a,b);zWa(a,0);return}function r2(a,b){a=a|0;b=b|0;zWa(a,b);zja(a,b);zWa(a,0);return}function s2(a){a=a|0;var b=0;mX(a);b=a+120|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+136>>2]=1065353216;a=a+140|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function t2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);ida(b,d);return}function u2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);wia(b,d);return}function v2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c+4|0;g=c;e=f[a+40>>2]|0;f[g>>2]=f[a+36>>2];f[d>>2]=f[g>>2];b=Vma(e,d,b,0)|0;n4a(f[a>>2]|0,b);u=c;return}function w2(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=s8(24)|0;f[a>>2]=g;f[a+4>>2]=c+4;e=d;c=f[e+4>>2]|0;d=g+16|0;f[d>>2]=f[e>>2];f[d+4>>2]=c;b[a+8>>0]=1;return}function x2(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;FXa(b);b=(f[c>>2]|0)+20|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function y2(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;GWa(a+8|0);Cbb(a);a=b}return}function z2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=KPa(f[a>>2]|0)|0;f[a+24>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+28>>2]=c;m0(a+8|0,d);return a|0}function A2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=KPa(f[a>>2]|0)|0;f[a+24>>2]=f[b>>2];f[a+4>>2]=e;f[a+28>>2]=c;m0(a+8|0,d);return a|0}function B2(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b;d=f[a+68>>2]|0;n4a(c,0);Yr(d,f[c>>2]|0)|0;if(f[a+76>>2]|0)f[a+144>>2]=(f[a+136>>2]|0)-(f[a+132>>2]|0)>>3;d=Qoa(a)|0;u=b;return d|0}function C2(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;a=a+4|0;while(1){if((b|0)==(c|0))break;g=b;e=f[g+4>>2]|0;d=f[a>>2]|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;f[a>>2]=(f[a>>2]|0)+8;b=b+8|0}return}function D2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=Jbb(eua(3)|0)|0;n4a(c,Sqa(Sqa(Sqa(e,Boa(133124)|0)|0,a)|0,b)|0);u=d;return f[c>>2]|0}function E2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((((a|0?(d=Z$a(a)|0,d|0):0)?(e=d$a(f[d+8>>2]|0)|0,e|0):0)?(f[e+8>>2]|0)==15:0)?(c=U_a(f[e+12>>2]|0)|0,c|0):0)return ((f[c+8>>2]|0)==(b|0)?d:0)|0;return 0}function F2(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=(f[c+40>>2]|0)-(f[c+36>>2]|0)>>2;e=a+40|0;g=0;while(1){f[e>>2]=g;if(g>>>0>d>>>0)break;pp(a,c);if(!(md(a,b,c)|0))break;g=(f[e>>2]|0)+1|0}return}function G2(a,b){a=a|0;b=b|0;fXa(a,b);XA(a,b);fXa(a,0);return}function H2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);r4(b,d);return}function I2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);uda(b,d);return}function J2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);s4(b,d);return}function K2(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;YHa(c+16|0,b);Uda(c,b);zWa(a,0);return}function L2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Qka(b,d);return}function M2(a,b){a=a|0;b=b|0;zWa(a,b);bka(a,b);zWa(a,0);return}function N2(a,b){a=a|0;b=b|0;zWa(a,b);cka(a,b);zWa(a,0);return}function O2(a,b){a=a|0;b=b|0;zWa(a,b);dka(a,b);zWa(a,0);return}function P2(a,b){a=a|0;b=b|0;zWa(a,b);eka(a,b);zWa(a,0);return}function Q2(a,b){a=a|0;b=b|0;zWa(a,b);fka(a,b);zWa(a,0);return}function R2(a,b,c){a=a|0;b=b|0;c=c|0;GQa(a,b);b=a+16|0;fXa(b,c);zda(b,c);return}function S2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Ada(b,d);return}function T2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);G4(b,d);return}function U2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);bja(b,d);return}function V2(a,b){a=a|0;b=b|0;fXa(a,b);TB(a+-16+16|0,b);fXa(a,0);return}function W2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b+8>>2]|0;d=a+68|0;do if(c){e=f[d>>2]|0;c=f[c+4>>2]|0;if((e|0)==5){f[d>>2]=c;break}if((c|0)!=5)Ama(a,c,e,b)}else f[d>>2]=0;while(0);return}function X2(a,b){a=+a;b=+b;a=+qXa(a);return a>+qXa(b)|0}function Y2(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=f[a+4>>2]|0;h=i>>8;if(i&1)h=f[(f[d>>2]|0)+h>>2]|0;a=f[a>>2]|0;tc[f[(f[a>>2]|0)+20>>2]&15](a,b,c,d+h|0,(i&2|0)==0?2:e,g);return}function Z2(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=Jbb(eua(3)|0)|0;n4a(c,Sqa(Sqa(Sqa(e,Boa(133140)|0)|0,a)|0,b)|0);u=d;return f[c>>2]|0}function _2(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;UFa(c+16|0,b);MW(c,b);zWa(a,0);return}function $2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=u;u=u+16|0;g=e+4|0;i=e;h=f[a+44>>2]|0;f[i>>2]=f[c>>2];c=Jbb(f[a+32>>2]|0)|0;f[g>>2]=f[i>>2];Qu(h,b,g,d,c)|0;u=e;return}function a3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);Tda(b,d);return}function b3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);pja(b,d);return}function c3(a,b){a=a|0;b=b|0;zWa(a,b);Coa(a+-16+16|0,b);zWa(a,0);return}function d3(a,b){a=a|0;b=b|0;var c=0;if(b){c=Q4(f[a+24>>2]|0,b)|0;if(!c)c=hi(a,b)|0}else c=0;return c|0}function e3(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;dHa(c+16|0,b);z$(c,b);zWa(a,0);return}function f3(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Ema(f[a>>2]|0,40)|0;MXa(d,f[a+28>>2]|0,f[a>>2]|0);_m(d,b);JF(a,b);u=c;return}function g3(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Sba(b,c);return}function h3(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Tba(b,c);return}function i3(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Uba(b,c);return}function j3(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Vba(b,c);return}function k3(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Wba(b,c);return}function l3(a,b){a=a|0;b=b|0;b=Wz(a,b)|0;if(b|0)C4(a,b);return}function m3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;e=Jbb(eua(3)|0)|0;n4a(c,Sqa(Sqa(Sqa(e,Boa(133136)|0)|0,b)|0,a)|0);u=d;return f[c>>2]|0}function n3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+32|0;d=c+16|0;e=c;lUa(e,b);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];b=PC(a,d)|0;u=c;return b|0}function o3(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;AIa(c+16|0,b);Do(c,b);zWa(a,0);return}function p3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+52|0;e=f[d>>2]|0;if((e|0)==(f[a+56>>2]|0))LL(a+48|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function q3(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=f[a>>2]|0;if(!(f[b+16>>2]|0))yPa(c,75650)|0;else yPa(c,75643)|0;x4(f[b+8>>2]|0,f[a>>2]|0)|0;return}function r3(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=c;f[a+4>>2]=c+144;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;c=a+20|0;f[c>>2]=f[d>>2];f[c+4>>2]=f[d+4>>2];f[c+8>>2]=f[d+8>>2];f[c+12>>2]=f[d+12>>2];f[c+16>>2]=f[d+16>>2];b[a+40>>0]=0;return}function s3(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;FXa(b);b=(f[c>>2]|0)+20|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function t3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);vka(b,d);return}function u3(a){a=a|0;var b=0;OKa(a);f[a>>2]=45268;b=a+56|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+72>>2]=1065353216;b=a+76|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+92>>2]=1065353216;return}function v3(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;yPa(f[c>>2]|0,92450)|0;a=b+8|0;if(Jbb(f[a>>2]|0)|0){c=DCa(f[c>>2]|0,75479)|0;zm(c,Jbb(f[a>>2]|0)|0)|0}return}function w3(a,b,c){a=a|0;b=b|0;c=c|0;if(GQ(b)|0)return (_Ha(b)|0)==(c|0)|0;b=U_a(b)|0;if(!b)b=0;else b=(f[(f[a+44>>2]|0)+(f[b+8>>2]<<3)+4>>2]|0)==(c|0);return b|0}function x3(a){a=a|0;a=(RS(a)|0)+16|0;a=(FRa(f[a>>2]|0)|0)+16|0;return TRa((QRa(f[a>>2]|0)|0)+8|0)|0}function y3(a){a=a|0;var b=0;b=a+4|0;hQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function z3(a){a=a|0;var b=0;b=a+4|0;iQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function A3(a){a=a|0;var b=0;b=a+4|0;jQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function B3(a){a=a|0;var b=0;b=a+4|0;kQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function C3(a){a=a|0;var b=0;b=a+4|0;lQ(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function D3(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a>>2]|0;a=c;while(1){if(!b)break;c=PVa(f[b+16>>2]|0,d)|0;a=c?a:b;b=f[(c?b+4|0:b)>>2]|0}return a|0}function E3(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-40|0;Jxa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function F3(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;XYa(a+8|0);Cbb(a);a=b}return}function G3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=$r(a,b+12|0)|0;d=b+16|0;if(!(f[d>>2]|0)){if(c)e=4}else if(c|($r(a,d)|0))e=4;if((e|0)==4?(HTa(a),f[b+4>>2]|0):0)Ca(61480,61463,310,61499);return}function H3(a,b){a=a|0;b=b|0;b=L_a(b)|0;do if(b|0)if(Qab(f[b+4>>2]|0)|0){gLa(b,0);GVa(f[a+16>>2]|0,b)|0;break}else Ca(76932,76794,246,76945);while(0);return}function I3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];b=f[b+4>>2]|0;f[d>>2]=f[e>>2];b=FCa(a+32|0,d,b)|0;u=c;return b|0}function J3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;a=a+4|0;e=(f[a>>2]|0)+-4|0;f[d>>2]=f[e>>2];f[a>>2]=e;b=(ZW(b,d)|0)+4|0;f[b>>2]=(f[b>>2]|0)+-4;u=c;return}function K3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=f[e+4>>2]|0;c=a;f[c>>2]=f[e>>2];f[c+4>>2]=d;if((a|0)!=(b|0))Cy(a+8|0,f[b+8>>2]|0,f[b+12>>2]|0);return a|0}function L3(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+16|0;d=e;Bab(d);if(!b){c=d;b=f[d>>2]|0}else{b=b0(b,a)|0;f[d>>2]=b;c=d}if(!(Qab(b)|0)){b=YT(a)|0;f[c>>2]=b}u=e;return b|0}function M3(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=RRa(a)|0;b[a+8>>0]=c;wHa(a+12|0,d,0)|0;f[a+16>>2]=e;f[a+20>>2]=g;f[a+24>>2]=h;f[a+4>>2]=i;Oza(a);return a|0}function N3(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=lTa(a)|0;f[a+8>>2]=c;b[a+12>>0]=d;wHa(a+16|0,e,0)|0;f[a+20>>2]=g;f[a+24>>2]=h;f[a+4>>2]=i;NMa(a);return a|0}function O3(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);vla(b,d);return}function P3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,17);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function Q3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,14);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function R3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,13);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function S3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,12);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function T3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,11);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function U3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,10);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function V3(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,((f[b+8>>2]|0)>>>0)%((f[c+8>>2]|0)>>>0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,tya(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function W3(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,((f[b+8>>2]|0)>>>0)/((f[c+8>>2]|0)>>>0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,yYa(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function X3(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Fba(b,c);return}function Y3(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124665,21);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function Z3(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124886,18);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function _3(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124059,15);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function $3(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,9);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function a4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if(!b)break;d=(f[b+16>>2]|0)>>>0>>0;c=d?c:b;b=f[(d?b+4|0:b)>>2]|0}return c|0}function b4(a,b){a=a|0;b=b|0;Ema(DCa(Ema(Pca(134176,a)|0,32)|0,b)|0,10)|0;hb()}function c4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(88)|0;dX(g);f[g>>2]=f[a>>2];f[g+4>>2]=c;f[g+36>>2]=e;d9(g+8|0,b);d9(g+20|0,d);return g|0}function d4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);eaa(b,d);return}function e4(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,8);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function f4(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,5);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function g4(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,4);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function h4(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,b,3);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function i4(a,c,d){a=a|0;c=c|0;d=d|0;d=(Gz(a+4|0,(b[c+11>>0]|0)<0?f[c>>2]|0:c,d|16)|0)==0;a=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;if(d)KS(a,f[a+16>>2]|4);else KS(a,0);return}function j4(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Xba(b,c);return}function k4(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124466,7);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function l4(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124879,6);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function m4(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qW(a,124690,2);b=a+12|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function n4(a){a=a|0;var b=0,c=0;b=a+4|0;c=_K(f[a>>2]|0,f[b>>2]|0)|0;mla(a,c,f[b>>2]|0);return}function o4(a,b,c){a=a|0;b=b|0;c=c|0;GQa(a,b);b=a+16|0;fXa(b,c);mga(b,c);return}function p4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vTa(a,b);b=a+16|0;fXa(b,c);jga(b,d);return}function q4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;wc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0)}function r4(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;nKa(c+16|0,b);Sf(c,b);zWa(a,0);return}function s4(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;qKa(c+16|0,b);Xo(c,b);zWa(a,0);return}function t4(a){a=a|0;var b=0;b=f[a+60>>2]|0;if(b|0)zbb(b);b=f[a+56>>2]|0;if(b|0){OX(b);Cbb(b)}PHa(a+128|0);CKa(a+100|0);$0(a+72|0);xta(a+32|0);return}function u4(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a+4>>2]|0;d=a+8|0;while(1){b=f[d>>2]|0;if((b|0)==(c|0))break;e=b+-4|0;f[d>>2]=e;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Cbb(b)}b=f[a>>2]|0;if(b|0)Cbb(b);return}function v4(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;tS(c,2742,b);Qd(a,b);tS(c,2743,b);return}function w4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;while(1){if(!b)break;d=(f[b+16>>2]|0)<(a|0);c=d?c:b;b=f[(d?b+4|0:b)>>2]|0}return c|0}function x4(a,b){a=a|0;b=b|0;if(!(_Xa(a,75559)|0))Bfa(b,a)|0;else Ema(Bfa(Ema(b,34)|0,a)|0,34)|0;return b|0}function y4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=GRa(f[a>>2]|0)|0;m0(a+8|0,b);f[a+24>>2]=f[c>>2];f[a+32>>2]=0;f[a+28>>2]=d;return a|0}function z4(a){a=a|0;var b=0,c=0;a=d$a(a)|0;if((((a|0)!=0?(f[a+8>>2]|0)==7:0)?(b=a+16|0,c=n$a(f[b>>2]|0)|0,(c|0)!=0):0)?(woa(TRa(c+8|0)|0)|0)!=0:0)a=f[b>>2]|0;else a=0;return a|0}function A4(a){a=a|0;cO(f[a+4>>2]|0);return}function B4(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0)_Z(a,f[c>>2]|0,f[c+4>>2]|0);else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}return}function C4(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;Tt(d,a,b);b=f[d>>2]|0;f[d>>2]=0;if(b|0)Cbb(b);u=c;return}function D4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<12&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function E4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<12&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function F4(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;eja(c,b);CTa(f[c+116>>2]|0);zWa(a,0);return}function G4(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;MKa(c+16|0,b);eKa(c,b);zWa(a,0);return}function H4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(a-b>>2>>>0>=c>>>0){if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=f[b>>2];if(!c)break;else{b=b+4|0;d=d+4|0}}}}else do{c=c+-1|0;f[a+(c<<2)>>2]=f[b+(c<<2)>>2]}while((c|0)!=0);return a|0}function I4(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;if(Qab(f[b>>2]|0)|0)dG(c,a+24|0,b,b);u=c;return}function J4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];d=f[b+4>>2]|0;f[a+4>>2]=d;e=b+8|0;g=f[e>>2]|0;f[a+8>>2]=g;c=a+4|0;if(!g)f[a>>2]=c;else{f[d+8>>2]=c;g=b+4|0;f[b>>2]=g;f[g>>2]=0;f[e>>2]=0}return}function K4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;f[a>>2]=f[b>>2];g=a+4|0;c=b+4|0;f[g>>2]=0;e=a+8|0;f[e>>2]=0;d=a+12|0;f[d>>2]=0;f[g>>2]=f[c>>2];a=b+8|0;f[e>>2]=f[a>>2];b=b+12|0;f[d>>2]=f[b>>2];f[b>>2]=0;f[a>>2]=0;f[c>>2]=0;return}function L4(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Eca(b,c);return}function M4(){var a=0,b=0,c=0;x=0;a=fa(67)|0;c=x;x=0;if(c&1){c=Ja(0)|0;y2a(c)}if((a|0?(b=f[a>>2]|0,b|0):0)?(c=b+48|0,(f[c>>2]&-256|0)==1126902528?(f[c+4>>2]|0)==1129074247:0):0)lX(f[b+12>>2]|0);lX(I1a()|0)}function N4(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=s8(16)|0;e=b;d=f[e+4>>2]|0;b=c+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=d;f[c+4>>2]=a;b=f[a>>2]|0;f[c>>2]=b;f[b+4>>2]=c;f[a>>2]=c;b=a+8|0;f[b>>2]=(f[b>>2]|0)+1;return}function O4(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-40|0;f[c>>2]=d;Jxa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function P4(a){a=a|0;var b=0,c=0,d=0,e=0;d=f[a>>2]|0;if(d|0){e=a+4|0;b=f[e>>2]|0;while(1){if((b|0)==(d|0))break;b=b+-4|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0)Cbb(c)}f[e>>2]=d;Cbb(f[a>>2]|0)}return}function Q4(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;if(!a){d=Ea(4)|0;f[d>>2]=0;A6a(d);Pa(d|0,37840,324)}else{c=dc[f[(f[a>>2]|0)+24>>2]&255](a,c)|0;u=d;return c|0}return 0}function R4(a,b,c){a=a|0;b=b|0;c=c|0;HQa(a,b);b=a+16|0;fXa(b,c);Zfa(b,c);return}function S4(a){a=a|0;var b=0;b=a+4|0;TU(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function T4(a,c,d){a=a|0;c=c|0;d=d|0;cz(c);if((b[f[c>>2]>>0]|0)==123)a=LO(a,c)|0;else a=KD(a,c,d)|0;return a|0}function U4(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;eP(a,d);u=c;return}function V4(a){a=a|0;var b=0;a=QRa(a)|0;switch(f[a+4>>2]|0){case 1:{b=eHa(TRa(a+8|0)|0,1)|0;break}case 2:{b=eHa(oJa(a+8|0)|0,2)|0;break}default:hb()}return b|0}function W4(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);wla(b,c);return}function X4(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;g=e;d=e+20|0;f[g>>2]=f[a+60>>2];f[g+4>>2]=0;f[g+8>>2]=b;f[g+12>>2]=d;f[g+16>>2]=c;if((N_a(Wa(140,g|0)|0)|0)<0){f[d>>2]=-1;a=-1}else a=f[d>>2]|0;u=e;return a|0}function Y4(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+(c<<2)>>2]|0;a=f[a+(d<<2)>>2]|0;if(e>>>0<=a>>>0)if((e|0)==(a|0)){a=f[b>>2]|0;a=(f[a+(c<<2)>>2]|0)>>>0<(f[a+(d<<2)>>2]|0)>>>0}else a=0;else a=1;return a|0}function Z4(a){a=a|0;nO(f[a+4>>2]|0);return}function _4(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;tS(c,1899,b);Sd(a,b);tS(c,1900,b);return}function $4(a,b,c){a=a|0;b=b|0;c=c|0;GQa(a,b);b=a+16|0;fXa(b,c);Sga(b,c);return}function a5(a,b,c){a=a|0;b=b|0;c=c|0;HQa(a,b);b=a+16|0;fXa(b,c);kga(b,c);return}function b5(a,b){a=a|0;b=b|0;b=BB(a,b)|0;if(b|0)C4(a,b);return}function c5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<31&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function d5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,3)|0;b=f[d>>2]|0;if((c|0)<366&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function e5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c+-1|0)>>>0<31&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function f5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,3)|0;b=f[d>>2]|0;if((c|0)<366&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function g5(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;P_a(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0);f[a+8>>2]=0;f[d>>2]=0;f[a>>2]=0}return}function h5(a){a=a|0;var b=0;b=a+4|0;TS(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function i5(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;qYa(a+8|0);Cbb(a);a=b}return}function j5(a){a=a|0;wQ(a+32|0);lT(a+16|0);aY(a);return}function k5(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;uSa(c);x=0;ia(129,a+88|0,b|0)|0;b=x;x=0;if(b&1){b=Ia()|0;mJa(c);Ua(b|0)}else{DFa(a+36|0);mJa(c);return}}function l5(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;f[c>>2]=b;do if(!b){if((f[(f[a+8>>2]|0)+4>>2]|0)!=5){b=f[a+16>>2]|0;if(!b)break;if((f[(f[a+12>>2]|0)+4>>2]|0)!=5)break;if((f[b+4>>2]|0)!=5)break}f[c>>2]=5}while(0);return}function m5(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;B4(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+12;b=b+12|0}return}function n5(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;hQa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0);f[a+8>>2]=0;f[d>>2]=0;f[a>>2]=0}return}function o5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<13&(b&4|0)==0)f[a>>2]=c+-1;else f[d>>2]=b|4;return}function p5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<13&(b&4|0)==0)f[a>>2]=c+-1;else f[d>>2]=b|4;return}function q5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=f[a+4>>2]|0;g=h>>8;if(h&1)g=f[(f[c>>2]|0)+g>>2]|0;a=f[a>>2]|0;sc[f[(f[a>>2]|0)+24>>2]&15](a,b,c+g|0,(h&2|0)==0?2:d,e);return}function r5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+76|0;e=f[d>>2]|0;if((e|0)==(f[a+80>>2]|0))LL(a+72|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function s5(a,b,c){a=a|0;b=b|0;c=c|0;GQa(a,b);b=a+16|0;fXa(b,c);Uha(b,c);return}function t5(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;a=Wz(a+64|0,d)|0;if(!a)a=0;else a=f[a+12>>2]|0;u=c;return a|0}function u5(a,b){a=a|0;b=b|0;b=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113901,76794,143,77012);else{y3(a+44|0);return}}function v5(a,b){a=a|0;b=b|0;b=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113901,76794,143,77012);else{z3(a+44|0);return}}function w5(a,b){a=a|0;b=b|0;b=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113901,76794,143,77012);else{A3(a+44|0);return}}function x5(a,b){a=a|0;b=b|0;b=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113901,76794,143,77012);else{B3(a+44|0);return}}function y5(a,b){a=a|0;b=b|0;b=(vSa(f[b>>2]|0)|0)+16|0;if(!(f[b>>2]|0))Ca(113901,76794,143,77012);else{C3(a+44|0);return}}function z5(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)%(f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,GR(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function A5(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,(f[b+8>>2]|0)/(f[c+8>>2]|0)|0);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,XW(f[b>>2]|0,f[b+4>>2]|0,f[c>>2]|0,f[c+4>>2]|0)|0,I);break}default:hb()}return}function B5(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(g2a(a,f[b+8>>2]|0)|0)qY(b,c,d);else{a=f[a+8>>2]|0;rc[f[(f[a>>2]|0)+28>>2]&255](a,b,c,d)}return}function C5(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;a=qWa(a)|0;b[a+20>>0]=0;b[a+8>>0]=c;b[a+9>>0]=d&1;wHa(a+12|0,e,0)|0;wHa(a+16|0,g,0)|0;f[a+24>>2]=h;f[a+4>>2]=i;return a|0}function D5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a>>2]|0;d=f[b>>2]|0;if((c|0)>=(d|0))if((c|0)>(d|0))a=0;else{d=Iga(a)|0;e=I;a=Iga(b)|0;c=I;a=(e|0)<(c|0)|(e|0)==(c|0)&d>>>0>>0}else a=1;return a|0}function E5(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function F5(a){a=a|0;if(!a)return;else{F5(f[a>>2]|0);F5(f[a+4>>2]|0);Cbb(a);return}}function G5(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;MTa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function H5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,1)|0;b=f[d>>2]|0;if((c|0)<7&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function I5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<61&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function J5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<60&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function K5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,1)|0;b=f[d>>2]|0;if((c|0)<7&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function L5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<61&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function M5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<60&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function N5(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Jbb(eua(2)|0)|0;c=Sqa(c,Boa(133180)|0)|0;n4a(a,Sqa(c,eua(0)|0)|0);u=b;return f[a>>2]|0}function O5(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;Cqa(b);f[e>>2]=f[b+8>>2];b=rUa(f[b+12>>2]|0)|0;f[d>>2]=f[e>>2];Jca(a,d,b);u=c;return}function P5(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;b=a+4|0;while(1){b=f[b>>2]|0;if(!b){b=0;break}a=f[b+16>>2]|0;if(!(PVa(c,a)|0)){if(!(PVa(a,c)|0)){b=1;break}b=b+4|0}}return b|0}function Q5(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);pea(b,c);return}function R5(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);qea(b,c);return}function S5(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}a=a+12|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function T5(a){a=a|0;cP(f[a+4>>2]|0);return}function U5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<24&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function V5(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,2)|0;b=f[d>>2]|0;if((c|0)<24&(b&4|0)==0)f[a>>2]=c;else f[d>>2]=b|4;return}function W5(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Jbb(eua(2)|0)|0;c=Sqa(c,Boa(132848)|0)|0;n4a(a,Sqa(c,eua(0)|0)|0);u=b;return f[a>>2]|0}function X5(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;c=d;b=f[a>>2]|0;if(Qab(b)|0)b=(b|0)==3&1;else{mT(c,f[a+4>>2]|0);b=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;f0a(c)}u=d;return b|0}function Y5(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+12|0;UN(d,a,f[b>>2]|0);MCa(d);GVa(f[a+16>>2]|0,f[b>>2]|0)|0;u=c;return}function Z5(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;x=0;ua(92,a|0,1);b=x;x=0;if(b&1){b=Ia()|0;R9(a);Ua(b|0)}else return}function _5(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Rja(b,c);return}function $5(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Iea(b,c);return}function a6(){var a=0,c=0,d=0;c=u;u=u+16|0;d=c;Pk(d,f[32969]|0);a=ONa((b[d+11>>0]|0)<0?f[d>>2]|0:d)|0;MTa(d);u=c;return a|0}function b6(a){a=a|0;lP(f[a+4>>2]|0);return}function c6(a){a=a|0;H_(a);return}function d6(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{t$a(a,s0a(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;b=hYa(f[b>>2]|0,f[b+4>>2]|0)|0;XSa(a,b,((b|0)<0)<<31>>31);break}default:hb()}return}function e6(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Jbb(eua(2)|0)|0;c=Sqa(c,Boa(133172)|0)|0;n4a(a,Sqa(c,eua(0)|0)|0);u=b;return f[a>>2]|0}function f6(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Jbb(eua(2)|0)|0;c=Sqa(c,Boa(132852)|0)|0;n4a(a,Sqa(c,eua(0)|0)|0);u=b;return f[a>>2]|0}function g6(a){a=a|0;var b=0,c=0;b=a+8|0;c=nRa(f[f[b>>2]>>2]|0)|0;if(Qab(f[c+4>>2]|0)|0){c=tRa(f[c+12>>2]|0)|0;f[f[b>>2]>>2]=c}else uVa(c);f[a>>2]=2;return}function h6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[c>>2]|0;d=f[d>>2]|0;while(1){if((a|0)==(b|0)){c=0;break}c=f[a>>2]|0;if(g2a(f[c+4>>2]|0,e)|0?g2a(f[c+8>>2]|0,d)|0:0)break;a=a+4|0}return c|0}function i6(a){a=a|0;FT(a);return}function j6(a){a=a|0;GT(a);return}function k6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Zea(b,c);return}function l6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);_ea(b,c);return}function m6(){var a=0,b=0,c=0;b=u;u=u+16|0;a=b;c=Jbb(eua(2)|0)|0;c=Sqa(c,Boa(133168)|0)|0;n4a(a,Sqa(c,eua(0)|0)|0);u=b;return f[a>>2]|0}function n6(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=u;u=u+16|0;c=g;f[c>>2]=b;d=a+16|0;e=f[d>>2]|0;if((e|0)==(f[a+20>>2]|0))LL(a+12|0,c);else{f[e>>2]=b;f[d>>2]=(f[d>>2]|0)+4}u=g;return}function o6(a,b){a=a|0;b=b|0;zWa(a,b);HHa(a,b);DX(a,b);zWa(a,0);return}function p6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Wqa(b,c)}function q6(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{t$a(a,L0a(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;b=vYa(f[b>>2]|0,f[b+4>>2]|0)|0;XSa(a,b,((b|0)<0)<<31>>31);break}default:hb()}return}function r6(a){a=a|0;var b=0,c=0,d=0;b=s8(116)|0;x=0;c=ia(99,f[f[a+80>>2]>>2]|0,0)|0;d=x;x=0;if(d&1){d=Ia()|0;Cbb(b);Ua(d|0)}else{A7(b,c,0);Ofa(a+16|0,b);return b|0}return 0}function s6(a,b){a=a|0;b=b|0;fXa(a,b);fD(a+-16+16|0,b);fXa(a,0);return}function t6(a,b){a=a|0;b=b|0;fXa(a,b);TD(a+-16+16|0,b);fXa(a,0);return}function u6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);E8(b,c);return}function v6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);F8(b,c);return}function w6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Ska(b,c);return}function x6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);tfa(b,c);return}function y6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);ufa(b,c);return}function z6(a){a=a|0;a$(a);return}function A6(a){a=+a;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;b=c;p[b>>3]=a;d=vRa(a)|0;e=I&2147483647;if(e>>>0>2146435072|(e|0)==2146435072&d>>>0>0){e=E$a(b)|0;I=I&1048575;u=c;return e|0}else Ca(75411,75445,100,75468);return 0}function B6(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;tS(c,2073,b);ne(a,b);tS(c,2074,b);return}function C6(a,b){a=a|0;b=b|0;h0(a,b);x=0;ua(3198,a+12|0,b+12|0);b=x;x=0;if(b&1){b=Ia()|0;MTa(a);Ua(b|0)}else return}function D6(a,b){a=a|0;b=b|0;var c=0;c=f[a+4>>2]|0;if(c)a=ODa(c+12|0,($Ha(c)|0)+~b|0)|0;return f[a>>2]|0}function E6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[a+4>>2]|0;e=g>>8;if(g&1)e=f[(f[c>>2]|0)+e>>2]|0;a=f[a>>2]|0;rc[f[(f[a>>2]|0)+28>>2]&255](a,b,c+e|0,(g&2|0)==0?2:d);return}function F6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Ifa(b,c);return}function G6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Jfa(b,c);return}function H6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Kfa(b,c);return}function I6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Lfa(b,c);return}function J6(a){a=a|0;var b=0;b=a+4|0;xW(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function K6(a,b){a=a|0;b=b|0;tS(a,379,b);of(a,b);tS(a,380,b);return}function L6(a){a=a|0;var b=0;jba(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function M6(a){a=+a;var b=0,c=0,d=0;d=u;u=u+16|0;b=d;c=d+4|0;n[b>>2]=a;if(((K$a(a)|0)&2147483647)>>>0>2139095040){b=W7a(b)|0|4194304;f[c>>2]=b;a=+E7a(c);u=d;return +a}else Ca(75411,75445,107,101718);return +(0.0)}function N6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Xfa(b,c);return}function O6(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Yfa(b,c);return}function P6(a,b){a=a|0;b=b|0;var c=0;c=s8(48)|0;Rma(c,b);N_(a,c);return}function Q6(a){a=a|0;$K(f[a+4>>2]|0);return}function R6(a){a=a|0;aL(f[a+4>>2]|0);return}function S6(a){a=a|0;bL(f[a+4>>2]|0);return}function T6(a){a=a|0;cL(f[a+4>>2]|0);return}function U6(a){a=a|0;dL(f[a+4>>2]|0);return}function V6(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;MTa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function W6(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(12)|0;f[a>>2]=g;f[a+4>>2]=c+8;f[g+8>>2]=f[e>>2];b[a+8>>0]=1;f[g+4>>2]=d;f[g>>2]=0;return}function X6(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;WF(c,b);y1(c,b);zWa(a,0);return}function Y6(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a>>2]|0;c=b+4|0;d=f[c>>2]|0;f[a>>2]=d;if(d|0)f[d+8>>2]=a;d=a+8|0;f[b+8>>2]=f[d>>2];e=f[d>>2]|0;f[((f[e>>2]|0)==(a|0)?e:e+4|0)>>2]=b;f[c>>2]=a;f[d>>2]=b;return}function Z6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;YMa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function _6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;ZMa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function $6(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;_Ma(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function a7(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;$Ma(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function b7(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;aNa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function c7(a){a=a|0;var b=0;b=Ea(8)|0;x=0;ua(3190,b|0,a|0);a=x;x=0;if(a&1){a=Ia()|0;La(b|0);Ua(a|0)}else{f[b>>2]=50452;Pa(b|0,39472,418)}}function d7(a){a=a|0;var b=0,c=0;f[a>>2]=42136;A8(a+100|0);aDa(a+88|0);c=a+80|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Cbb(b);tH(a+16|0);LVa(a);return}function e7(a,b){a=a|0;b=b|0;var c=0;if(((!(ZTa(b)|0)?(Jbb(b)|0,Dab(f[b>>2]|0)|0):0)?(c=n0a(b,0)|0,KBa(f[c>>2]|0,133156)|0):0)?pQa(a,b)|0:0)b=1;else b=0;return b|0}function f7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);lga(b,c);return}function g7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);p9(b,c);return}function h7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);nga(b,c);return}function i7(a,b){a=a|0;b=b|0;var c=0,d=0;if((f[a+8>>2]|0)>>>0>>0)Kca(a,b);d=a+4|0;c=f[d>>2]|0;while(1){if(c>>>0>=b>>>0)break;f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}f[d>>2]=b;return}function j7(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;d=a+4|0;f[d>>2]=0;e=a+8|0;f[e>>2]=0;f[a>>2]=f[b>>2];c=b+4|0;f[d>>2]=f[c>>2];d=b+8|0;f[e>>2]=f[d>>2];f[d>>2]=0;f[c>>2]=0;f[b>>2]=0;f[a+12>>2]=f[b+12>>2];return}function k7(a,b){a=a|0;b=b|0;zWa(a,b);hra(a,b);zWa(a,0);return}function l7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Tha(b,c);return}function m7(a){a=a|0;a=RS(a)|0;if(!a)a=0;else{a=(FRa(f[a+16>>2]|0)|0)+12|0;a=f[a>>2]|0}return a|0}function n7(a){a=a|0;UP(f[a+4>>2]|0);return}function o7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=rSa(a)|0;f[a+8>>2]=b;f[a+12>>2]=f[c>>2];m0(a+16|0,d);r1(a);return a|0}function p7(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];NE(a,d)|0;u=c;return}function q7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=d+16|0;d=1;while(1){if(d>>>0>=c>>>0)break;faa(e,ZQa(a,Or(b,d)|0)|0);d=d+1|0}return}function r7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=b;b=i_(a+48|0,e)|0;f[b>>2]=c;LU(a,f[e>>2]|0,(c|0)==0?-1:1);u=d;return}function s7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);R8(b,c);return}function t7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);A9(b,c);return}function u7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Cga(b,c);return}function v7(a){a=a|0;var b=0,c=0;b=s8(32)|0;f[b+4>>2]=0;f[b+8>>2]=0;f[b>>2]=41144;c=b+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[b+28>>2]=1065353216;f[a>>2]=c;f[a+4>>2]=b;return}function w7(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;kH(a,b);b=b+16|0}return}function x7(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;oi(c,b);$j(c,b);zWa(a,0);return}function y7(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;OW(c,b);y1(c,b);zWa(a,0);return}function z7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=d+8|0;d=2;while(1){if(d>>>0>=c>>>0)break;faa(e,ZQa(a,Or(b,d)|0)|0);d=d+1|0}return}function A7(a,c,d){a=a|0;c=c|0;d=d|0;KHa(a);KHa(a+24|0);KHa(a+48|0);KHa(a+72|0);f[a+96>>2]=0;f[a+100>>2]=-1;f[a+104>>2]=c;f[a+108>>2]=d;b[a+112>>0]=0;return}function B7(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+4|0;d=f[b>>2]|0;f[d+4>>2]=f[c>>2];f[f[c>>2]>>2]=d;a=a+8|0;f[a>>2]=(f[a>>2]|0)+-1;NWa(b+8|0);Cbb(b);return}function C7(a){a=a|0;var b=0;b=Ea(8)|0;x=0;ua(3190,b|0,a|0);a=x;x=0;if(a&1){a=Ia()|0;La(b|0);Ua(a|0)}else{f[b>>2]=50492;Pa(b|0,39504,418)}}function D7(a){a=a|0;var b=0;switch(f[a>>2]|0){case 2:{o$a(f[a+8>>2]|0);break}case 5:{b=f[a+8>>2]|0;if(b|0){SQa(b);Cbb(b)}break}default:{}}f[a>>2]=3;p[a+8>>3]=0.0;return}function E7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Qga(b,c);return}function F7(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Rga(b,c);return}function G7(a){a=a|0;CL(f[a+4>>2]|0);return}function H7(a){a=a|0;I$(a);return}function I7(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=jQa(f[a>>2]|0)|0;f[a+4>>2]=d;f[a+24>>2]=f[b>>2];m0(a+8|0,c);return a|0}function J7(a,b){a=a|0;b=b|0;zWa(a,b);_ra(a,b);zWa(a,0);return}function K7(a){a=a|0;var b=0,c=0;b=nRa(f[a>>2]|0)|0;c=f[b+12>>2]|0;if(Qab(f[b+4>>2]|0)|0)f[a>>2]=c;else{b=oYa(b)|0;f[b+8>>2]=c;uXa(b)}return}function L7(a,b){a=a|0;b=b|0;var c=0;c=s8(48)|0;Mea(c,b);N_(a,c);return}function M7(a,b){a=a|0;b=b|0;var c=0,d=0;if((f[a+8>>2]|0)>>>0>>0)qca(a,b);d=a+4|0;c=f[d>>2]|0;while(1){if(c>>>0>=b>>>0)break;Bab((f[a>>2]|0)+(c<<2)|0);c=c+1|0}f[d>>2]=b;return}function N7(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Cy(a,f[b>>2]|0,f[b+4>>2]|0);p[a+16>>3]=+p[b+16>>3];return}function O7(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;while(1){a=f[a>>2]|0;if(!a){a=0;break}c=f[a+16>>2]|0;if((c|0)<=(b|0)){if((c|0)>=(b|0)){a=1;break}a=a+4|0}}return a|0}function P7(a){a=a|0;var b=0;DNa(a);f[a>>2]=40168;x=0;ia(67,a+4|0,61110)|0;b=x;x=0;if(b&1){b=Ia()|0;mRa(a);Ua(b|0)}else return}function Q7(a){a=a|0;var b=0;b=NV(a+16|0)|0;return (b>>>0)%((f[a+8>>2]|0)-(f[a+4>>2]|0)>>2>>>0)|0|0}function R7(a){a=a|0;var b=0;b=a+4|0;YW(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function S7(a){a=a|0;var b=0;b=a+4|0;oW(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function T7(a){a=a|0;Q$(a);return}function U7(a){a=a|0;var b=0;b=NV(f[a>>2]|0)|0;return f[a+28>>2]&b|0}function V7(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if(f[b+40>>2]|0){Dpa(c,b,fZa(f[a+40>>2]|0)|0);x9(c)}u=d;return}function W7(a){a=a|0;switch(a|0){case 62:case 61:case 60:case 59:case 58:case 57:case 49:case 48:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:case 75:case 74:case 73:case 72:case 71:case 70:{a=1;break}default:a=0}return a|0}function X7(a){a=a|0;var b=0,c=0,d=0;d=a+4|0;b=f[d>>2]|0;c=f[b>>2]|0;f[d>>2]=c;if(c|0)f[c+8>>2]=a;d=a+8|0;f[b+8>>2]=f[d>>2];c=f[d>>2]|0;f[((f[c>>2]|0)==(a|0)?c:c+4|0)>>2]=b;f[b>>2]=a;f[d>>2]=b;return}function Y7(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;tS(c,138,b);Ge(a,b);tS(c,139,b);return}function Z7(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+80|0;e=d;BZ(e,c,a,f[a+68>>2]|0,(b[a+72>>0]|0)!=0);Cfa(e);u=d;return}function _7(a){a=a|0;RTa(a+80|0);RTa(a+64|0);RTa(a+52|0);yXa(a+40|0);yXa(a+28|0);P_a(a);return}function $7(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a=f[a+(c<<2)>>2]|0;do if((b|0)==(c|0))if(!a)Ca(76874,76794,717,123616);else{d=a+-1|0;break}else d=a;while(0);return d|0}function a8(a,b){a=a|0;b=b|0;b=t_(a,b)|0;if((b|0)!=(a+4|0))BQ(a,b);return}function b8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;b=b-a>>2;a:while(1){while(1){if(!b)break a;d=(b|0)/2|0;e=a+(d<<2)|0;if((f[e>>2]|0)>>>0>>0)break;else b=d}b=b+-1-d|0;a=e+4|0}return a|0}function c8(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Jha(b,c);return}function d8(a,b){a=a|0;b=b|0;var c=0;c=s8(48)|0;Zna(c,b);N_(a,c);return}function e8(a,b){a=a|0;b=b|0;var c=0,d=0;a=a+16|0;f[a>>2]=0;c=s8(20)|0;f[c>>2]=41668;d=c+4|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];f[a>>2]=c;return}function f8(a){a=a|0;var b=0;b=a+4|0;oX(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function g8(a){a=a|0;var b=0;b=a+4|0;pX(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function h8(a){a=a|0;var b=0,c=0,d=0;b=f[a+24>>2]|0;d=(f[a+28>>2]|0)-b|0;a=d>>2;do if((d|0)!=4)if(a>>>0>1){c=f[b+(a+-2<<2)>>2]|0;break}else Ca(112123,115840,712,112151);else c=0;while(0);return c|0}function i8(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=f[a>>2]|0;if(!(c&8)){f[a+8>>2]=0;f[a+4>>2]=0;d=f[a+44>>2]|0;f[a+28>>2]=d;f[a+20>>2]=d;f[a+16>>2]=d+(f[a+48>>2]|0);a=0}else{f[a>>2]=c|32;a=-1}return a|0}function j8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;YMa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function k8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;ZMa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function l8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;_Ma(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function m8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;$Ma(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function n8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;aNa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function o8(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=f[d>>2]|0;if((c|0)==(f[a+8>>2]|0)){qca(a,(c<<1)+2|0);c=f[d>>2]|0}f[(f[a>>2]|0)+(c<<2)>>2]=f[b>>2];f[d>>2]=(f[d>>2]|0)+1;return}function p8(a){a=a|0;var b=0;b=a+4|0;HW(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function q8(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;b=Wz(a+68|0,c)|0;u=d;return f[((b|0)==0?c:b+12|0)>>2]|0}function r8(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;c=d;switch(a|0){case 0:{b=-64;break}case 1:{b=-1;break}case 2:{b=-2;break}case 3:{b=-3;break}case 4:{b=-4;break}default:hb()}n4a(c,b);u=d;return f[c>>2]|0}function s8(a){a=a|0;var b=0,c=0;c=(a|0)==0?1:a;while(1){b=Kc(c)|0;if(b|0){a=6;break}a=s1a()|0;if(!a){a=5;break}nc[a&63]()}if((a|0)==5){c=Ea(4)|0;xab(c);Pa(c|0,39424,416)}else if((a|0)==6)return b|0;return 0}function t8(a){a=a|0;if(!a)return;else{t8(f[a>>2]|0);t8(f[a+4>>2]|0);Cbb(a);return}}function u8(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Jq(a,f[b>>2]|0,b+4|0);return a|0}function v8(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=b;c=1;while(1){if((c|0)==624)break;d=(X(b>>>30^b,1812433253)|0)+c|0;f[a+(c<<2)>>2]=d;c=c+1|0;b=d}f[a+2496>>2]=0;return}function w8(a){a=a|0;JT(a);return}function x8(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=GRa(f[a>>2]|0)|0;l0(a+8|0,b);f[a+24>>2]=f[c>>2];f[a+32>>2]=e;f[a+28>>2]=d;return a|0}function y8(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);gia(b,c);return}function z8(a){a=+a;var b=0,c=0,d=0;p[s>>3]=a;b=f[s>>2]|0;c=f[s+4>>2]|0;d=JMa(b|0,c|0,52)|0;switch(d&2047){case 0:{b=(b|0)==0&(c&2147483647|0)==0?2:3;break}case 2047:{b=(b|0)==0&(c&1048575|0)==0&1;break}default:b=4}return b|0}function A8(a){a=a|0;var b=0,c=0,d=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;Aoa(f[b+-4>>2]|0);b=b+-8|0}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function B8(a){a=a|0;var b=0;NJa(a);f[a>>2]=40004;x=0;ia(67,a+4|0,60640)|0;b=x;x=0;if(b&1){b=Ia()|0;QTa(a);Ua(b|0)}else return}function C8(a,b){a=a|0;b=b|0;var c=0,d=0;d=(Hr(a,f[b+8>>2]|0)|0)+1|0;c=Hr(a,f[b+12>>2]|0)|0;b=JJa(a,f[b+16>>2]|0)|0;return d+(c>>>0>>0?b:c)|0}function D8(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=((f[c>>2]|0)-e|0)/20|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b*20|0)}else DB(a,b-d|0);return}function E8(a,b){a=a|0;b=b|0;fXa(a,b);sJ(a+-16+16|0,b);ix(b);fXa(a,0);return}function F8(a,b){a=a|0;b=b|0;fXa(a,b);tJ(a+-16+16|0,b);ii(b);fXa(a,0);return}function G8(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+28|0;d=f[c>>2]|0;if((d|0)==(f[a+32>>2]|0))LL(a+24|0,b);else{f[d>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+4}return}function H8(a,b,c){a=a|0;b=b|0;c=c|0;switch(c|0){case 1:{t$a(a,b);break}case 2:{XSa(a,b,((b|0)<0)<<31>>31);break}case 3:{HAa(a,+(b|0));break}case 4:{pqa(a,+(b|0));break}default:hb()}return}function I8(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);via(b,c);return}function J8(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a>>0]|0;e=b[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)a=e;else{do{a=a+1|0;c=c+1|0;d=b[a>>0]|0;e=b[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));a=e}return (d&255)-(a&255)|0}function K8(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+8|0;a=b;while(1){if((a|0)==(c|0))break;f[f[d>>2]>>2]=f[a>>2];f[d>>2]=(f[d>>2]|0)+4;a=a+4|0}return}function L8(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;P_a(a+8|0);Cbb(a);a=b}return}function M8(a){a=a|0;var b=0,c=0;c=f[a+12>>2]|0;b=f[a+8>>2]|0;while(1){if((b|0)==(c|0)){b=4;break}if((f[b>>2]|1|0)==3){b=5;break}else b=b+4|0}if((b|0)==4)return (f[a+4>>2]&-2|0)==2|0;else if((b|0)==5)return 1;return 0}function N8(a,b){a=a|0;b=b|0;Uf(a,b);return}function O8(a,b,c){a=a|0;b=b|0;c=c|0;vTa(a,b);b=a+16|0;fXa(b,c);Mia(b,c);return}function P8(a){a=a|0;var b=0,c=0,d=0,e=0;e=u;u=u+32|0;b=e+16|0;c=e+12|0;d=e;$La(d,512,0,a);if((f[a>>2]|0)!=-1){f[b>>2]=d;f[c>>2]=b;fx(a,c)}u=e;return (f[a+4>>2]|0)+-1|0}function Q8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=sSa(f[a>>2]|0)|0;f[a+4>>2]=d;f[a+24>>2]=f[b>>2];m0(a+8|0,c);return a|0}function R8(a,b){a=a|0;b=b|0;var c=0;fXa(a,b);c=a+-16|0;OU(c,b);WXa(f[c+48>>2]|0);fXa(a,0);return}function S8(a){a=a|0;var b=0;b=x$a(a)|0;if(b)a=f[b+8>>2]|0;if(!(Dab(f[a>>2]|0)|0)){a=u$a(a)|0;if(!a)a=0;else a=(f[a+16>>2]|0)!=0}else a=1;return a|0}function T8(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;mqa(a+80|0);xL(a,e);if(f[a+88>>2]|0)b[a+26>>0]=1;u=d;return}function U8(a,b){a=a|0;b=b|0;b=lE(a,b)|0;if(b|0)C4(a,b);return}function V8(a,b){a=a|0;b=b|0;var c=0;c=kQa(b)|0;f[a+136>>2]=c;EE(a+16|0,b);mg(a,b);lv(a);return}function W8(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];wAa(a,d);u=c;return}function X8(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;e=g;f[a+36>>2]=13;if((f[a>>2]&64|0)==0?(f[e>>2]=f[a+60>>2],f[e+4>>2]=21523,f[e+8>>2]=g+16,$a(54,e|0)|0):0)b[a+75>>0]=-1;e=Xu(a,c,d)|0;u=g;return e|0}function Y8(a,b){a=a|0;b=b|0;Efa(a,b)|0;if((a|0)!=(b|0))jx(a+12|0,f[b+12>>2]|0,f[b+16>>2]|0);return a|0}function Z8(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Sq(a,f[b>>2]|0,b+4|0);return a|0}function _8(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return tZ(a,b,c,d)|0}function $8(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;f[c>>2]=d+-8;Aoa(f[d+-4>>2]|0)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function a9(a){a=a|0;WT(a);return}function b9(a,b){a=a|0;b=b|0;a=Mz(a,b)|0;if(!a)a=9;else a=f[a+12>>2]|0;return a|0}function c9(a){a=a|0;if((f[a+8>>2]|0)!=0?zab(f[a>>2]|0)|0:0){a=f[f[a+4>>2]>>2]|0;if(!(N6a(a)|0)?!(F6a(a)|0):0)a=D6a(a)|0;else a=1}else a=0;return a|0}function d9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;e=a+4|0;c=b+4|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;c=a+8|0;b=b+8|0;a=f[c>>2]|0;f[c>>2]=f[b>>2];f[b>>2]=a;return}function e9(a){a=a|0;if(!a)return;else{e9(f[a>>2]|0);e9(f[a+4>>2]|0);Cbb(a);return}}function f9(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=b+8|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];f[d+12>>2]=f[b+12>>2];b=PC(a,d)|0;u=c;return b|0}function g9(a){a=a|0;f[a+12>>2]=f[a+8>>2];f[a+24>>2]=f[a+20>>2];kaa(a+44|0);I9(a+56|0);return}function h9(a,b,c){a=a|0;b=b|0;c=c|0;do if((b|0)==(c|0))a=1;else{a=kqa(a,b)|0;if(a|0?lE(a,c)|0:0){a=1;break}a=0}while(0);return a|0}function i9(a,b){a=a|0;b=b|0;var c=0,d=0;b=b+8|0;c=f[a+36>>2]|0;d=c+(f[b>>2]<<2)|0;f[d>>2]=(f[d>>2]|0)+1;b=f[b>>2]|0;if((f[c+(b<<2)>>2]|0)>>>0>1){d=(f[a+24>>2]|0)+(b>>>5<<2)|0;f[d>>2]=f[d>>2]&~(1<<(b&31))}return}function j9(a,b,c){a=a|0;b=b|0;c=c|0;c=ODa(b+12|0,(Eza(a,b)|0)+~c|0)|0;return f[c>>2]|0}function k9(a){a=a|0;_T(a);return}function l9(a){a=a|0;var b=0,c=0;b=132636;while(1){b=f[b>>2]|0;if(!b){b=0;break}c=f[b+16>>2]|0;if(c>>>0<=a>>>0){if(c>>>0>=a>>>0){b=1;break}b=b+4|0}}return b|0}function m9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;qc[f[(f[a>>2]|0)+12>>2]&255](d,a,b);if((f[d+4>>2]|0)==(f[c+4>>2]|0))a=(f[d>>2]|0)==(f[c>>2]|0);else a=0;u=e;return a|0}function n9(a,b){a=a|0;b=b|0;var c=0;c=GTa(f[a+4>>2]|0)|0;b=bl(a,Or(b,1)|0)|0;f[c+8>>2]=b;b=s9(f[a+84>>2]|0,b)|0;f[c+4>>2]=b;return c|0}function o9(a){a=a|0;var b=0;b=l$a(a)|0;if(!b){a=d$a(a)|0;if(!a)a=0;else a=W7(f[a+8>>2]|0)|0}else a=f7a(f[b+8>>2]|0)|0;return a|0}function p9(a,b){a=a|0;b=b|0;fXa(a,b);BK(a+-16+16|0,b);By(b);fXa(a,0);return}function q9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+16|0;f[c>>2]=0;d=s8(64)|0;f[d>>2]=40488;e=d+4|0;a=e+60|0;do{f[e>>2]=f[b>>2];e=e+4|0;b=b+4|0}while((e|0)<(a|0));f[c>>2]=d;return}function r9(a){a=a|0;var b=0,c=0,d=0;c=u;u=u+16|0;b=c;d=Jbb(eua(2)|0)|0;n4a(b,Sqa(Sqa(d,Boa(132856)|0)|0,a)|0);u=c;return f[b>>2]|0}function s9(a,b){a=a|0;b=b|0;var c=0,d=0;do if(!(KVa(a,b)|0))if(QVa(a,b)|0){c=b-(BZa(a)|0)|0;d=a+20|0;break}else hb();else{c=b;d=a+8|0}while(0);return f[(f[d>>2]|0)+(c<<2)>>2]|0}function t9(a,b){a=a|0;b=b|0;b=D6(b,f[f[a+4>>2]>>2]|0)|0;return (KZ(b,f[f[a+8>>2]>>2]|0)|0)^1|0}function u9(a){a=a|0;var b=0;b=a+4|0;BX(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function v9(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{t$a(a,B6a(f[b+8>>2]|0)|0);break}case 2:{b=b+8|0;b=I0a(f[b>>2]|0,f[b+4>>2]|0)|0;XSa(a,b,((b|0)<0)<<31>>31);break}default:hb()}return}function w9(a,b){a=a|0;b=b|0;hsa(a,wQa(f[b>>2]|0)|0);return}function x9(a){a=a|0;var b=0;cW(a);b=f[a+4>>2]|0;if(!((f[b+4>>2]|0)<=2?(f[b+8>>2]|0)<=0:0))lg(a);b=f[a+8>>2]|0;$W(f[b>>2]|0,f[b+4>>2]|0);cW(a);return}function y9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;e=c+4|0;g=c;d=s8(48)|0;f[g>>2]=f[b>>2];f[e>>2]=f[g>>2];$Da(d,e);N_(a,d);u=c;return}function z9(a){a=a|0;var b=0;a:do if((f[a+4>>2]|0)==2)a=1;else{b=f[a+12>>2]|0;a=f[a+8>>2]|0;while(1){if((a|0)==(b|0)){a=0;break a}if((f[a>>2]|0)==2){a=1;break}else a=a+4|0}}while(0);return a|0}function A9(a,b){a=a|0;b=b|0;fXa(a,b);UK(a+-16+16|0,b);$E(b);fXa(a,0);return}function B9(a){a=a|0;var b=0;f[a>>2]=46984;x=0;ta(511,a|0);b=x;x=0;if(b&1){b=Ja(0)|0;y2a(b)}else{OCa(a+28|0);rg(f[a+32>>2]|0);rg(f[a+36>>2]|0);rg(f[a+48>>2]|0);rg(f[a+60>>2]|0);return}}function C9(a){a=a|0;f[a>>2]=44668;zSa(a+88|0);ZNa(a+64|0);k9(a+44|0);QTa(a);return}function D9(a,b){a=a|0;b=b|0;hsa(a,IQa(f[b>>2]|0)|0);return}function E9(a,c){a=a|0;c=c|0;var d=0;d=Or(c,1)|0;d=C7a(b[d>>0]|0)|0;d=d?1:2;ul(a,c,d+1|0,ZQa(a,Or(c,d)|0)|0);return}function F9(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+44|0;d=f[c>>2]|0;if((d|0)==(f[a+48>>2]|0))LL(a+40|0,b);else{f[d>>2]=f[b>>2];f[c>>2]=(f[c>>2]|0)+4}return}function G9(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;a=MSa(a)|0;f[a+8>>2]=g;f[a+12>>2]=b;f[a+16>>2]=c;f[a+20>>2]=d;f[a+24>>2]=e;Jpa(a);return a|0}function H9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;g=u;u=u+128|0;d=g;e=d;h=e+124|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(h|0));f[d+32>>2]=93;f[d+44>>2]=a;f[d+76>>2]=-1;f[d+84>>2]=a;h=fd(d,b,c)|0;u=g;return h|0}function I9(a){a=a|0;var b=0;b=a+4|0;VX(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function J9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=(f[b+16>>2]|0)+(f[b+20>>2]|0)|0;e=f[b+4>>2]|0;d=e+(c>>>10<<2)|0;if((f[b+8>>2]|0)==(e|0))b=0;else b=(f[d>>2]|0)+((c&1023)<<2)|0;f[a>>2]=d;f[a+4>>2]=b;return}function K9(a,b){a=a|0;b=b|0;hsa(a,JQa(f[b>>2]|0)|0);return}function L9(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;y_a(a);f[a>>2]=43512;f[a+4>>2]=c;f[a+8>>2]=d;b[a+12>>0]=e&1;return}function M9(a,b){a=a|0;b=b|0;var c=0;c=(Hr(a,f[b+16>>2]|0)|0)+2|0;c=c+(Hr(a,f[b+8>>2]|0)|0)|0;return c+(Hr(a,f[b+12>>2]|0)|0)|0}function N9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=a+32|0;d=f[e>>2]|0;f[e>>2]=d+1;if(!d)f[a+36>>2]=5;if(b){b=f[b+4>>2]|0;if((b|0)!=5)c=5}else{b=0;c=5}if((c|0)==5)f[a+36>>2]=b;return}function O9(a){a=a|0;kS(f[a+4>>2]|0);return}function P9(a,b){a=a|0;b=b|0;fXa(a,b);IF(a+-16+16|0,b);fXa(a,0);return}function Q9(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;xta(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function R9(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-12|0;zSa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function S9(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;UH(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)}return}function T9(a,b){a=a|0;b=b|0;hsa(a,XQa(f[b>>2]|0)|0);return}function U9(a,b){a=a|0;b=b|0;hsa(a,PQa(f[b>>2]|0)|0);return}function V9(a,b){a=a|0;b=b|0;hsa(a,QQa(f[b>>2]|0)|0);return}function W9(a){a=a|0;rU(a);return}function X9(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=s8(24)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=42296;e=d+12|0;wNa(e,b,f[c>>2]|0);f[a>>2]=e;f[a+4>>2]=d;return}function Y9(a){a=+a;var b=0,c=0;vRa(a)|0;if((I|0)>=0){b=+K(a)>=1.0?(a>0.0?~~+Y(+J(a/4294967296.0),4294967295.0)>>>0:~~+W((a-+(~~a>>>0))/4294967296.0)>>>0):0;if(a<18446744073709551616.0)c=~~a>>>0;else{b=-1;c=-1}}else{b=0;c=0}I=b;return c|0}function Z9(a){a=a|0;var b=0;if(!(f[a>>2]&128))b=1;else b=(f[a+20>>2]|0)>>>0>(f[a+28>>2]|0)>>>0?2:1;b=ec[f[a+40>>2]&127](a,0,b)|0;if((b|0)>=0)b=b-(f[a+8>>2]|0)+(f[a+4>>2]|0)+(f[a+20>>2]|0)-(f[a+28>>2]|0)|0;return b|0}function _9(a,b,c){a=a|0;b=b|0;c=c|0;c=d3(a,c)|0;return rBa(f[a+32>>2]|0,b,c)|0}function $9(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=f[b+8>>2];f[d>>2]=f[e>>2];a=Gq(a+36|0,d)|0;f[b+8>>2]=a;u=c;return}function aaa(a){a=a|0;var b=0,c=0;b=s8(20)|0;c=a+4|0;f[b>>2]=41668;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];return b|0}function baa(a,b){a=a|0;b=b|0;hsa(a,$Qa(f[b>>2]|0)|0);return}function caa(a,b){a=a|0;b=b|0;hsa(a,aRa(f[b>>2]|0)|0);return}function daa(a,b){a=a|0;b=b|0;hsa(a,bRa(f[b>>2]|0)|0);return}function eaa(a,b){a=a|0;b=b|0;var c=0;zWa(a,b);c=a+-16|0;Mra(c,b);EL(c,b);zWa(a,0);return}function faa(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=f[d>>2]|0;if((c|0)==(f[a+8>>2]|0)){Kca(a,(c<<1)+2|0);c=f[d>>2]|0}f[(f[a>>2]|0)+(c<<2)>>2]=b;f[d>>2]=c+1;return}function gaa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;LG(a,b);b=b+16|0}return}function haa(a){a=a|0;if(!a)return;else{haa(f[a>>2]|0);haa(f[a+4>>2]|0);Cbb(a);return}}function iaa(a,b){a=a|0;b=b|0;hsa(a,nRa(f[b>>2]|0)|0);return}function jaa(a,b){a=a|0;b=b|0;hsa(a,tRa(f[b>>2]|0)|0);return}function kaa(a){a=a|0;var b=0;b=a+4|0;KY(a,f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function laa(a){a=a|0;mN(f[a+4>>2]|0);return}function maa(a){a=a|0;var b=0,c=0,d=0;b=s8(12)|0;f[b>>2]=44460;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function naa(a){a=a|0;var b=0;b=tPa(a)|0;if(!(+p[b>>3]%1.0==0.0))Ca(54020,75335,254,54046);b=tPa(a)|0;b=~~+p[b>>3];a=tPa(a)|0;if(+p[a>>3]==+(b|0))return b|0;else Ca(54057,75335,256,54046);return 0}function oaa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;f[d>>2]=b;g=a+60|0;e=f[g>>2]|0;f[g>>2]=e+1;f[b+4>>2]=e;VV(a+24|0,d);u=c;return}function paa(a){a=a|0;return U7(a)|0}function qaa(a,b,c){a=a|0;b=b|0;c=c|0;yoa(a+4|0,f[b>>2]|0,f[c>>2]|0);return}function raa(a,b){a=a|0;b=b|0;zWa(a,b);yFa(a+-16+16|0,b);zWa(a,0);return}function saa(a,b){a=a|0;b=b|0;var c=0;switch(f[a+4>>2]|0){case 3:{c=uUa(b)|0;f[c+8>>2]=43;f[c+12>>2]=a;f[c+4>>2]=4;break}case 4:{c=a;break}default:Ca(71856,71874,120,71901)}return c|0}function taa(a,b){a=a|0;b=b|0;var c=0,d=0;d=a+4|0;c=f[d>>2]|0;if((c|0)==(f[a+8>>2]|0)){Bda(a,(c<<1)+2|0);c=f[d>>2]|0}f[(f[a>>2]|0)+(c<<2)>>2]=b;f[d>>2]=c+1;return}function uaa(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,f[c+8>>2]^f[b+8>>2]);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,f[c>>2]^f[b>>2],f[c+4>>2]^f[b+4>>2]);break}default:hb()}return}function vaa(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,f[c+8>>2]&f[b+8>>2]);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,f[c>>2]&f[b>>2],f[c+4>>2]&f[b+4>>2]);break}default:hb()}return}function waa(a){a=a|0;var b=0,c=0;b=f[a+8>>2]|0;if(b|0?(c=f[a+12>>2]|0,c|0):0){b=f[b+4>>2]|0;if((b|0)!=5?(f[c+4>>2]|0)!=5:0)b=(f[(f[a+16>>2]|0)+4>>2]|0)==5?5:b;else b=5;f[a+4>>2]=b;return}Ca(91127,91145,543,91165)}function xaa(a,c){a=a|0;c=c|0;if(b[a+32>>0]|0)RA(f[a+24>>2]|0,c,f[a+40>>2]|0);pk(a,c);return}function yaa(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 1:{t$a(a,f[c+8>>2]|f[b+8>>2]);break}case 2:{b=b+8|0;c=c+8|0;XSa(a,f[c>>2]|f[b>>2],f[c+4>>2]|f[b+4>>2]);break}default:hb()}return}function zaa(a,b){a=a|0;b=b|0;hsa(a,NRa(f[b>>2]|0)|0);return}function Aaa(a,b){a=a|0;b=b|0;hsa(a,DRa(f[b>>2]|0)|0);return}function Baa(a,b){a=a|0;b=b|0;hsa(a,ERa(f[b>>2]|0)|0);return}function Caa(a,b){a=a|0;b=b|0;hsa(a,FRa(f[b>>2]|0)|0);return}function Daa(a,b){a=a|0;b=b|0;zWa(a,b);TFa(a+-16+16|0,b);zWa(a,0);return}function Eaa(a){a=a|0;var b=0,c=0,d=0;d=u;u=u+16|0;b=d;f[b>>2]=a;c=f[32964]|0;if((c|0)==(f[32965]|0))ML(b);else{f[c>>2]=a;f[32964]=(f[32964]|0)+4}u=d;return}function Faa(a){a=a|0;KN(f[a+4>>2]|0);return}function Gaa(a,b){a=a|0;b=b|0;var c=0;c=Ea(16)|0;V$a();x=0;wa(159,c|0,a|0,50276,b|0);b=x;x=0;if(b&1){b=Ia()|0;La(c|0);Ua(b|0)}else Pa(c|0,39344,409)}function Haa(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;tS(c,2524,b);_j(a,b);tS(c,2525,b);return}function Iaa(a){a=a|0;var b=0;CMa(a);f[a>>2]=43656;b=a+56|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[a+84>>2]=1065353216;return}function Jaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;f[d>>2]=f[c>>2];d=nG(0,0,b,d)|0;if((d|0)>=0?(e=d+1|0,g=Kc(e)|0,f[a>>2]=g,(g|0)!=0):0)a=nG(g,e,b,c)|0;else a=-1;u=h;return a|0}function Kaa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=a+84|0;g=f[d>>2]|0;h=c+256|0;e=DA(g,h)|0;e=(e|0)==0?h:e-g|0;c=e>>>0>>0?e:c;Ku(b|0,g|0,c|0)|0;f[a+4>>2]=g+c;b=g+e|0;f[a+8>>2]=b;f[d>>2]=b;return c|0}function Laa(a,b){a=a|0;b=b|0;var c=0;f[a+24>>2]=b;f[a+16>>2]=(b|0)==0&1;f[a+20>>2]=0;f[a+4>>2]=4098;f[a+12>>2]=0;f[a+8>>2]=6;c=a+28|0;b=a+32|0;a=b+40|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(a|0));ika(c);return}function Maa(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;f0a(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function Naa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{t$a(a,(TRa(b)|0)<<16>>16);break}case 2:{XSa(a,BJa(mMa(oJa(b)|0,I|0,48)|0,I|0,48)|0,I);break}default:hb()}return}function Oaa(a,b){a=a|0;b=b|0;hsa(a,ORa(f[b>>2]|0)|0);return}function Paa(a,b){a=a|0;b=b|0;hsa(a,PRa(f[b>>2]|0)|0);return}function Qaa(a,b){a=a|0;b=b|0;hsa(a,QRa(f[b>>2]|0)|0);return}function Raa(a,b){a=a|0;b=b|0;hsa(a,$Ra(f[b>>2]|0)|0);return}function Saa(a,b){a=a|0;b=b|0;hsa(a,aSa(f[b>>2]|0)|0);return}function Taa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Sp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function Uaa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;return Fp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0)|0}function Vaa(a,b,c){a=a|0;b=b|0;c=c|0;Sn(a,b,c);return}function Waa(a,b){a=a|0;b=b|0;B4(a,b);x=0;ua(2282,a+12|0,b+12|0);b=x;x=0;if(b&1){b=Ia()|0;MTa(a);Ua(b|0)}else return}function Xaa(a){a=a|0;var c=0,d=0,e=0;d=(FWa(a,43)|0)==0;c=b[a>>0]|0;d=d?c<<24>>24!=114&1:2;e=(FWa(a,120)|0)==0;d=e?d:d|128;a=(FWa(a,101)|0)==0;a=a?d:d|524288;a=c<<24>>24==114?a:a|64;a=c<<24>>24==119?a|512:a;return (c<<24>>24==97?a|1024:a)|0}function Yaa(a,b){a=a|0;b=b|0;var c=0,d=0;NAa(a);f[a>>2]=f[b>>2];c=b+4|0;f[a+4>>2]=f[c>>2];d=b+8|0;f[a+8>>2]=f[d>>2];f[d>>2]=0;f[c>>2]=0;f[b>>2]=0;return}function Zaa(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-24|0;f[c>>2]=d;xta(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function _aa(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-12|0;f[c>>2]=d;zSa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function $aa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{t$a(a,(TRa(b)|0)<<24>>24);break}case 2:{XSa(a,BJa(mMa(oJa(b)|0,I|0,56)|0,I|0,56)|0,I);break}default:hb()}return}function aba(a,b){a=a|0;b=b|0;hsa(a,lSa(f[b>>2]|0)|0);return}function bba(a,b){a=a|0;b=b|0;hsa(a,bSa(f[b>>2]|0)|0);return}function cba(a,b){a=a|0;b=b|0;hsa(a,cSa(f[b>>2]|0)|0);return}function dba(a,b){a=a|0;b=b|0;hsa(a,dSa(f[b>>2]|0)|0);return}function eba(a,b){a=a|0;b=b|0;hsa(a,mSa(f[b>>2]|0)|0);return}function fba(a,c){a=a|0;c=c|0;var d=0;d=QPa(c)|0;f[a>>2]=d;f[a+4>>2]=f[c+4>>2];b[a+8>>0]=0;f[a+12>>2]=f[c+12>>2];a=c+8|0;if(!(b[a>>0]|0)){b[a>>0]=1;return}else Ca(106657,106511,48,106670)}function gba(a,b){a=a|0;b=b|0;var c=0;c=s8(48)|0;x=0;ua(87,c|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;Cbb(c);Ua(b|0)}else{N_(a,c);return}}function hba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>2;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<2)}else BE(a,b-d|0);return}function iba(a){a=a|0;IQ(f[a+4>>2]|0);return}function jba(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;MTa(a+8|0);Cbb(a);a=b}return}function kba(a,b,c){a=a|0;b=+b;c=c|0;switch(c|0){case 0:{EXa(a);break}case 1:{t$a(a,~~b);break}case 3:{HAa(a,b);break}case 4:{pqa(a,b);break}default:hb()}return}function lba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=Vi(b,c,d,e,4)|0;if(!(f[d>>2]&4))f[a>>2]=c+-1900;return}function mba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;c=ui(b,c,d,e,4)|0;if(!(f[d>>2]&4))f[a>>2]=c+-1900;return}function nba(a){a=a|0;var b=0;b=Jia(a)|0;b=Ema(tm(134008,b,I)|0,58)|0;DCa(b,Fha(f[a>>2]|0)|0)|0;return}function oba(a,b){a=a|0;b=b|0;hsa(a,nSa(f[b>>2]|0)|0);return}function pba(a,b){a=a|0;b=b|0;xx(a,nRa(f[b>>2]|0)|0);return}function qba(a,b){a=a|0;b=b|0;ft(a,tRa(f[b>>2]|0)|0);return}function rba(a,b){a=a|0;b=b|0;b=(aSa(f[b>>2]|0)|0)+8|0;if(Qab(f[b>>2]|0)|0)pm(a+48|0,b);return}function sba(a){a=a|0;var b=0,c=0;c=f[r>>2]|0;b=c+a|0;if((a|0)>0&(b|0)<(c|0)|(b|0)<0){da()|0;Va(12);return -1}f[r>>2]=b;if((b|0)>(ca()|0)?(ba()|0)==0:0){f[r>>2]=c;Va(12);return -1}return c|0}function tba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;a=c-b|0;if((a|0)>0){Ku(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+(((a>>>0)/12|0)*12|0)}return}function uba(a){a=a|0;oO(f[a+4>>2]|0);return}function vba(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=44460;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function wba(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;d=a+84|0;b[d>>0]=1;e=a+16|0;f=1;while(1){if(!(f<<24>>24))break;b[d>>0]=0;Kia(a);uMa(e,c);f=b[d>>0]|0}return}function xba(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=(Wz(a+88|0,d)|0)!=0;u=c;return b|0}function yba(a){a=a|0;var b=0;zKa(a);f[a>>2]=45588;lQa(a+44|0);b=a+64|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+80>>2]=1065353216;aE(a+84|0);return}function zba(a,b){a=a|0;b=b|0;var c=0;c=s8(12)|0;x=0;ua(1408,c|0,b|0);b=x;x=0;if(b&1){b=Ia()|0;Cbb(c);Ua(b|0)}else{f[a>>2]=c;return}}function Aba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=Cp(b)|0;f[e>>2]=b;f[d>>2]=f[e>>2];b=Vma(a,d,0,0)|0;u=c;return b|0}function Bba(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;eRa(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+16;b=b+16|0}return}function Cba(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=s8(28)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=42364;e=d+12|0;DOa(e,b,f[c>>2]|0);f[a>>2]=e;f[a+4>>2]=d;return}function Dba(a){a=a|0;var b=0,c=0,d=0,e=0;b=u;u=u+16|0;c=b;d=f[a>>2]|0;e=Iga(a)|0;a=c;f[a>>2]=e;f[a+4>>2]=I;a=pMa(d,0,JH(c,8)|0,0)|0;u=b;return a|0}function Eba(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=1&(c|0)<257)fYa(a,c);else{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_Z(a,119441,j7a(119441)|0)}return}function Fba(a,b){a=a|0;b=b|0;fXa(a,b);yG(a+-16+16|0,b);fXa(a,0);return}function Gba(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Tp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function Hba(a,b){a=a|0;b=b|0;b=(lSa(f[b>>2]|0)|0)+8|0;if(Qab(f[b>>2]|0)|0)pm(a+48|0,b);return}function Iba(a,b){a=a|0;b=b|0;q_(a,f[b+8>>2]|0);Xla(a+12|0,b);return}function Jba(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=41668;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];f[b+12>>2]=f[a+12>>2];return}function Kba(a){a=a|0;var b=0,c=0,d=0;c=s8(64)|0;f[c>>2]=40488;d=c+4|0;a=a+4|0;b=d+60|0;do{f[d>>2]=f[a>>2];d=d+4|0;a=a+4|0}while((d|0)<(b|0));return c|0}function Lba(a,b){a=a|0;b=b|0;hsa(a,vSa(f[b>>2]|0)|0);return}function Mba(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;b=f[b+8>>2]|0;if(xba(a,b)|0){UN(c,a,b);MCa(c)}u=d;return}function Nba(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;GPa(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+16;b=b+16|0}return}function Oba(a){a=a|0;var b=0,c=0;b=s8(16)|0;c=a+4|0;f[b>>2]=43856;a=b+4|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];return b|0}function Pba(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 Jga(a,J$(a,b,c)|0,d,e,f,g)|0}function Qba(a,b){a=a|0;b=b|0;Aya(a+16|0,wQa(f[b>>2]|0)|0);return}function Rba(a,b){a=a|0;b=b|0;SU(a,nRa(f[b>>2]|0)|0);return}function Sba(a,b){a=a|0;b=b|0;fXa(a,b);CG(a+-16+16|0,b);fXa(a,0);return}function Tba(a,b){a=a|0;b=b|0;fXa(a,b);DG(a+-16+16|0,b);fXa(a,0);return}function Uba(a,b){a=a|0;b=b|0;fXa(a,b);EG(a+-16+16|0,b);fXa(a,0);return}function Vba(a,b){a=a|0;b=b|0;fXa(a,b);FG(a+-16+16|0,b);fXa(a,0);return}function Wba(a,b){a=a|0;b=b|0;fXa(a,b);GG(a+-16+16|0,b);fXa(a,0);return}function Xba(a,b){a=a|0;b=b|0;fXa(a,b);HG(a+-16+16|0,b);fXa(a,0);return}function Yba(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a+16>>2]|0;d=Jbb(f[c>>2]|0)|0;if((d|0)!=(b|0)){GVa(c,b)|0;AE(a+44|0,d,b)}return b|0}function Zba(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>3;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<3)}else ND(a,b-d|0);return}function _ba(a){a=a|0;var b=0;b=a+4|0;s_(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function $ba(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;if((f[b+4>>2]|0)!=5){a=f[a+36>>2]|0;Jbb(a)|0;_0a(c,a);b=lNa(f[c>>2]|0,b)|0}u=d;return b|0}function aca(a){a=a|0;f[a+4>>2]=f[a>>2];h5(a+12|0);u9(a+24|0);return}function bca(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;Waa(f[a>>2]|0,b);f[a>>2]=(f[a>>2]|0)+24;b=b+24|0}return}function cca(a,b){a=a|0;b=b|0;Aya(a+16|0,IQa(f[b>>2]|0)|0);return}function dca(a,b){a=a|0;b=b|0;zWa(a,b);lIa(a+-16+16|0,b);zWa(a,0);return}function eca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Wp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function fca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;switch(b|0){case 5:case 2:case 1:break;default:FV(a,d,c,e)}return}function gca(a){a=a|0;var b=0;b=f[a+4>>2]|0;if(!b)while(1){b=f[a+8>>2]|0;if((f[b>>2]|0)==(a|0))break;else a=b}else while(1){a=f[b>>2]|0;if(!a)break;else b=a}return b|0}function hca(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!(ZTa(b)|0)?(d=n0a(b,0)|0,_Fa(f[d>>2]|0)|0):0)b=HGa(a,b,c)|0;else b=0;return b|0}function ica(a){a=a|0;var b=0,c=0;c=(f[a+4>>2]|0)-(f[a>>2]|0)>>2;while(1){b=c+-1|0;if((c|0)<=0)break;Ar(f[(f[a>>2]|0)+(b<<2)>>2]|0);c=b}return}function jca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=Dp(b)|0;f[e>>2]=b;f[d>>2]=f[e>>2];b=Vma(a,d,0,0)|0;u=c;return b|0}function kca(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;f0a(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function lca(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-16|0;P_a(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function mca(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{t$a(a,+TNa(b)<=+TNa(c)&1);break}case 4:{t$a(a,+SNa(b)<=+SNa(c)&1);break}default:hb()}return}function nca(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{t$a(a,+TNa(b)>=+TNa(c)&1);break}case 4:{t$a(a,+SNa(b)>=+SNa(c)&1);break}default:hb()}return}function oca(a,b){a=a|0;b=b|0;Aya(a+16|0,JQa(f[b>>2]|0)|0);return}function pca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a>>2]|0;b=$x(a,Or(b,1)|0)|0;f[d>>2]=b;KZa(e,d);u=c;return}function qca(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;SMa(a,b);c=a+4|0;b=0;while(1){if(b>>>0>=(f[c>>2]|0)>>>0)break;f[(f[a>>2]|0)+(b<<2)>>2]=f[d+(b<<2)>>2];b=b+1|0}return}function rca(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>4;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<4)}else ZD(a,b-d|0);return}function sca(a){a=a|0;var b=0,c=0,d=0;b=s8(12)|0;f[b>>2]=44504;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function tca(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;gH(a,b);b=b+16|0}return}function uca(a,b){a=a|0;b=b|0;zWa(a,b);WFa(a,b);zWa(a,0);return}function vca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return W0(a,b,c,d)|0}function wca(a){a=a|0;var b=0,c=0,d=0,e=0;c=f[a>>2]|0;if(c|0){d=a+4|0;b=f[d>>2]|0;while(1){if((b|0)==(c|0))break;e=b+-24|0;hQa(e);b=e}f[d>>2]=c;Cbb(f[a>>2]|0)}return}function xca(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{t$a(a,+TNa(b)<+TNa(c)&1);break}case 4:{t$a(a,+SNa(b)<+SNa(c)&1);break}default:hb()}return}function yca(a,b,c){a=a|0;b=b|0;c=c|0;switch(f[b>>2]|0){case 3:{t$a(a,+TNa(b)>+TNa(c)&1);break}case 4:{t$a(a,+SNa(b)>+SNa(c)&1);break}default:hb()}return}function zca(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;b=my(b)|0;f[d>>2]=b;a=i_(a+48|0,d)|0;f[a>>2]=(f[a>>2]|0)+1;u=c;return}function Aca(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=eSa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];l0(a+12|0,c);aKa(a,d);return a|0}function Bca(a,b){a=a|0;b=b|0;Aya(a+16|0,XQa(f[b>>2]|0)|0);return}function Cca(a,b){a=a|0;b=b|0;Aya(a+16|0,PQa(f[b>>2]|0)|0);return}function Dca(a,b){a=a|0;b=b|0;Aya(a+16|0,QQa(f[b>>2]|0)|0);return}function Eca(a,b){a=a|0;b=b|0;fXa(a,b);nH(a+-16+16|0,b);fXa(a,0);return}function Fca(a,b){a=a|0;b=b|0;zWa(a,b);PIa(a+-16+16|0,b);zWa(a,0);return}function Gca(a,b){a=a|0;b=b|0;zWa(a,b);QIa(a+-16+16|0,b);zWa(a,0);return}function Hca(a,b){a=a|0;b=b|0;zWa(a,b);SIa(a+-16+16|0,b);zWa(a,0);return}function Ica(a,b){a=a|0;b=b|0;zWa(a,b);TIa(a+-16+16|0,b);zWa(a,0);return}function Jca(a,b,c){a=a|0;b=b|0;c=c|0;if(!((c|0)==5?(P5(a+44|0,b)|0)!=0:0)){b=zZ(a+44|0,b)|0;f[b>>2]=c}return}function Kca(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;SMa(a,b);c=f[a+4>>2]|0;b=0;while(1){if((b|0)==(c|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=f[d+(b<<2)>>2];b=b+1|0}return}function Lca(a){a=a|0;a=a+16|0;while(1){if((Su(f[a>>2]|0)|0)!=32?(Su(f[a>>2]|0)|0)!=10:0)break;Ps(f[a>>2]|0)|0}return} +function Mca(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Fg(a,f[b>>2]|0,f[c>>2]|0,d,e,g,120497,120505)|0}function Nca(a,b){a=a|0;b=b|0;b=(ERa(f[b>>2]|0)|0)+8|0;v2(a,f[b>>2]|0);return}function Oca(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(((c-a|0)>2?(b[a>>0]|0)==115:0)?(b[a+1>>0]|0)==112:0){e=a+2|0;d=Bc(e,c,d)|0;a=(d|0)==(e|0)?a:d}return a|0}function Pca(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[c+11>>0]|0;e=d<<24>>24<0;return $n(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}function Qca(a){a=a|0;GV(a);return}function Rca(a){a=a|0;var b=0,c=0;LA(a);c=f[a+8>>2]|0;b=f[a+4>>2]|0;while(1){if((b|0)==(c|0))break;Cbb(f[b>>2]|0);b=b+4|0}Hja(a);return}function Sca(a,b){a=a|0;b=b|0;IL(a,nRa(f[b>>2]|0)|0);return}function Tca(a,b){a=a|0;b=b|0;fXa(a,b);HH(a+-16+16|0,b);fXa(a,0);return}function Uca(a,b){a=a|0;b=b|0;zWa(a,b);rJa(a+-16+16|0,b);zWa(a,0);return}function Vca(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Xp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function Wca(a){a=a|0;var b=0,c=0,d=0;d=a+8|0;b=f[a+12>>2]|0;a=f[d>>2]|0;while(1){if((a|0)==(b|0))break;c=f[a>>2]|0;if(c|0)oc[f[(f[c>>2]|0)+4>>2]&1023](c);a=a+4|0}zSa(d);return}function Xca(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return bh(a,f[b>>2]|0,f[c>>2]|0,d,e,g,31440,31472)|0}function Yca(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)>256){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_Z(a,122081,j7a(122081)|0)}else fYa(a,c);return}function Zca(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=40488;c=b+4|0;b=a+4|0;a=c+60|0;do{f[c>>2]=f[b>>2];c=c+4|0;b=b+4|0}while((c|0)<(a|0));return}function _ca(a,b){a=a|0;b=b|0;Aya(a+16|0,$Qa(f[b>>2]|0)|0);return}function $ca(a,b){a=a|0;b=b|0;Aya(a+16|0,aRa(f[b>>2]|0)|0);return}function ada(a,b){a=a|0;b=b|0;Aya(a+16|0,bRa(f[b>>2]|0)|0);return}function bda(a,c){a=a|0;c=c|0;var d=0;d=u;u=u+16|0;if(b[a+104>>0]|0)dG(d,a+108|0,c,c);u=d;return}function cda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)!=(b|0)){a=a+4|0;d=(f[a>>2]|0)-c|0;if(d|0)kia(b|0,c|0,d|0)|0;f[a>>2]=b+(d>>3<<3)}return}function dda(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-40|0;f[c>>2]=d;V2a(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function eda(a){a=a|0;UV(a);return}function fda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=s8(36)|0;f[d+4>>2]=0;f[d+8>>2]=0;f[d>>2]=42324;e=d+12|0;sLa(e,b,f[c>>2]|0);f[a>>2]=e;f[a+4>>2]=d;return}function gda(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)>256){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_Z(a,122224,j7a(122224)|0)}else fYa(a,c);return}function hda(a,b){a=a|0;b=b|0;fXa(a,b);QH(a+-16+16|0,b);fXa(a,0);return}function ida(a,b){a=a|0;b=b|0;zWa(a,b);TJa(a+-16+16|0,b);zWa(a,0);return}function jda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Yp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function kda(a,b){a=a|0;b=b|0;var c=0;Gv(f[a+28>>2]|0,11)|0;b=a+60|0;c=f[b>>2]|0;if((f[a+56>>2]|0)==(c|0))Ca(111005,111025,378,111126);else{f[b>>2]=c+-4;return}}function lda(a){a=a|0;if((a|0)!=132632)or(f[a>>2]|0,a+4|0);return}function mda(a,b){a=a|0;b=b|0;var c=0;c=b+8|0;Lk(a,f[c>>2]|0)|0;c=em(a+64|0,c)|0;f[c>>2]=b;return a|0}function nda(a,b){a=a|0;b=b|0;Aya(a+16|0,nRa(f[b>>2]|0)|0);return}function oda(a,b){a=a|0;b=b|0;Aya(a+16|0,tRa(f[b>>2]|0)|0);return}function pda(a,b){a=a|0;b=b|0;var c=0;b=a+60|0;c=f[b>>2]|0;if((f[a+56>>2]|0)==(c|0))Ca(111005,111025,467,111044);else{f[b>>2]=c+-4;Gv(f[a+28>>2]|0,11)|0;return}}function qda(a,b,c){a=a|0;b=b|0;c=c|0;a=a+4|0;while(1){if((b|0)==(c|0))break;f[f[a>>2]>>2]=f[b>>2];f[a>>2]=(f[a>>2]|0)+4;b=b+4|0}return}function rda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+12|0;f[e>>2]=0;f[a+16>>2]=d;if(!b)d=0;else d=s8(b)|0;f[a>>2]=d;c=d+c|0;f[a+8>>2]=c;f[a+4>>2]=c;f[e>>2]=d+b;return}function sda(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=a;a=b-a>>2;while(1){if(!a)break;b=(a|0)/2|0;g=d+(b<<2)|0;e=(f[g>>2]|0)>>>0>>0;d=e?g+4|0:d;a=e?a+-1-b|0:b}return d|0}function tda(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=sSa(f[a>>2]|0)|0;f[a+4>>2]=d;f[a+24>>2]=f[b>>2];l0(a+8|0,c);return a|0}function uda(a,b){a=a|0;b=b|0;zWa(a,b);oKa(a+-16+16|0,b);zWa(a,0);return}function vda(a){a=a|0;var c=0,d=0,e=0;d=f[a>>2]|0;e=b[d>>0]|0;if(!(abb(e<<24>>24)|0))c=0;else{c=0;do{c=(c*10|0)+-48+(e<<24>>24)|0;d=d+1|0;f[a>>2]=d;e=b[d>>0]|0}while((abb(e<<24>>24)|0)!=0)}return c|0}function wda(a){a=a|0;var b=0;b=a+4|0;H$(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function xda(a){a=a|0;GS(f[a+4>>2]|0);return}function yda(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a>>2]|0;if((c|0)==(f[b>>2]|0))if(!c)a=1;else{d=Iga(a)|0;a=I;c=Iga(b)|0;a=(d|0)==(c|0)&(a|0)==(I|0)}else a=0;return a|0}function zda(a,b){a=a|0;b=b|0;fXa(a,b);cI(a+-16+16|0,b);fXa(a,0);return}function Ada(a,b){a=a|0;b=b|0;zWa(a,b);LKa(a+-16+16|0,b);zWa(a,0);return}function Bda(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a>>2]|0;yQa(a,b);c=f[a+4>>2]|0;b=0;while(1){if((b|0)==(c|0))break;f[(f[a>>2]|0)+(b<<2)>>2]=f[d+(b<<2)>>2];b=b+1|0}return}function Cda(a){a=a|0;hQ(f[a+4>>2]|0);return}function Dda(a){a=a|0;iQ(f[a+4>>2]|0);return}function Eda(a){a=a|0;jQ(f[a+4>>2]|0);return}function Fda(a){a=a|0;kQ(f[a+4>>2]|0);return}function Gda(a){a=a|0;lQ(f[a+4>>2]|0);return}function Hda(a,b){a=a|0;b=b|0;a=a+4|0;f[b>>2]=43856;b=b+4|0;f[b>>2]=f[a>>2];f[b+4>>2]=f[a+4>>2];f[b+8>>2]=f[a+8>>2];return}function Ida(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=44504;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function Jda(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;b=a+20|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;n4a(a+48|0,0);return}function Kda(a,b){a=a|0;b=b|0;Aya(a+16|0,NRa(f[b>>2]|0)|0);return}function Lda(a,b){a=a|0;b=b|0;Aya(a+16|0,DRa(f[b>>2]|0)|0);return}function Mda(a,b){a=a|0;b=b|0;Aya(a+16|0,ERa(f[b>>2]|0)|0);return}function Nda(a,b){a=a|0;b=b|0;Aya(a+16|0,FRa(f[b>>2]|0)|0);return}function Oda(a,b){a=a|0;b=b|0;a=f[(f[a+4>>2]|0)+36>>2]|0;pc[f[(f[a>>2]|0)+20>>2]&4095](a,b);return}function Pda(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-16|0;f[c>>2]=d;P_a(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function Qda(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,124177);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50492;Pa(a|0,39504,418)}}function Rda(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,124177);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}function Sda(a,b){a=a|0;b=b|0;zWa(a,b);YU(a+-16|0,b);zWa(a,0);return}function Tda(a,b){a=a|0;b=b|0;zWa(a,b);bLa(a+-16+16|0,b);zWa(a,0);return}function Uda(a,b){a=a|0;b=b|0;var c=0;c=B0(f[b+36>>2]|0)|0;b=(Wl(f[a+44>>2]|0,b)|0)+4|0;f[b>>2]=c;return}function Vda(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Zp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function Wda(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;pH(c+8|0,a,b,d);u=c;return}function Xda(a,c){a=a|0;c=c|0;b[a>>0]=0;f[a+4>>2]=c;c=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;if(!(f[c+16>>2]|0)){c=f[c+72>>2]|0;if(c|0)fu(c)|0;b[a>>0]=1}return}function Yda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return hh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Zda(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return ih(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function _da(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return jh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function $da(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Tg(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function aea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Ug(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function bea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Vg(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function cea(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,122345);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50492;Pa(a|0,39504,418)}}function dea(){var a=0,b=0;a=Ea(8)|0;x=0;ua(98,a|0,122345);b=x;x=0;if(b&1){b=Ia()|0;La(a|0);Ua(b|0)}else{f[a>>2]=50472;Pa(a|0,39488,418)}}function eea(a,b){a=a|0;b=b|0;Aya(a+16|0,ORa(f[b>>2]|0)|0);return}function fea(a,b){a=a|0;b=b|0;Aya(a+16|0,PRa(f[b>>2]|0)|0);return}function gea(a,b){a=a|0;b=b|0;Aya(a+16|0,QRa(f[b>>2]|0)|0);return}function hea(a,b){a=a|0;b=b|0;Aya(a+16|0,$Ra(f[b>>2]|0)|0);return}function iea(a,b){a=a|0;b=b|0;Aya(a+16|0,aSa(f[b>>2]|0)|0);return}function jea(a,b){a=a|0;b=b|0;Fxa(a,wQa(f[b>>2]|0)|0);return}function kea(a,b){a=a|0;b=b|0;var c=0;c=yPa(f[a+4>>2]|0,75596)|0;Bfa(c,L3(f[b+8>>2]|0,f[a>>2]|0)|0)|0;return}function lea(a){a=a|0;zSa(a+152|0);zSa(a+140|0);SQa(a+120|0);lM(a);return}function mea(a){a=a|0;var b=0,c=0;b=s8(60)|0;x=0;ta(442,b|0);c=x;x=0;if(c&1){c=Ia()|0;Cbb(b);Ua(c|0)}else{N_(a,b);return}}function nea(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+8|0;a=b;b=f[c>>2]|0;do{d=b;f[d>>2]=0;f[d+4>>2]=0;b=(f[c>>2]|0)+8|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function oea(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=a+8|0;while(1){d=f[c>>2]|0;if((d|0)==(b|0))break;d=d+-24|0;f[c>>2]=d;hQa(d)}a=f[a>>2]|0;if(a|0)Cbb(a);return}function pea(a,b){a=a|0;b=b|0;fXa(a,b);xI(a+-16+16|0,b);fXa(a,0);return}function qea(a,b){a=a|0;b=b|0;fXa(a,b);yI(a+-16+16|0,b);fXa(a,0);return}function rea(a,b){a=a|0;b=b|0;zWa(a,b);VM(a+-16|0,b);zWa(a,0);return}function sea(a,b){a=a|0;b=b|0;zWa(a,b);WM(a+-16|0,b);zWa(a,0);return}function tea(a,b){a=a|0;b=b|0;zWa(a,b);XM(a+-16|0,b);zWa(a,0);return}function uea(a,b){a=a|0;b=b|0;zWa(a,b);YM(a+-16|0,b);zWa(a,0);return}function vea(a,b){a=a|0;b=b|0;zWa(a,b);ZM(a+-16|0,b);zWa(a,0);return}function wea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Np(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function xea(a){a=a|0;var b=0,c=0,d=0,e=0;c=a+32|0;d=a+36|0;b=f[a+40>>2]|0;while(1){if(!b)break;e=b+-1|0;qc[f[(f[c>>2]|0)+(e<<2)>>2]&255](0,a,f[(f[d>>2]|0)+(e<<2)>>2]|0);b=e}return}function yea(a,b){a=a|0;b=b|0;Aya(a+16|0,lSa(f[b>>2]|0)|0);return}function zea(a,b){a=a|0;b=b|0;Aya(a+16|0,bSa(f[b>>2]|0)|0);return}function Aea(a,b){a=a|0;b=b|0;Aya(a+16|0,cSa(f[b>>2]|0)|0);return}function Bea(a,b){a=a|0;b=b|0;Aya(a+16|0,dSa(f[b>>2]|0)|0);return}function Cea(a,b){a=a|0;b=b|0;Aya(a+16|0,mSa(f[b>>2]|0)|0);return}function Dea(a,b){a=a|0;b=b|0;Fxa(a,IQa(f[b>>2]|0)|0);return}function Eea(a,b){a=a|0;b=b|0;var c=0;c=bUa(f[a+4>>2]|0)|0;if((bYa(b)|0)>>>0>1){b=ZQa(a,Or(b,1)|0)|0;f[c+8>>2]=b}return c|0}function Fea(a){a=a|0;zSa(a+152|0);zSa(a+140|0);SQa(a+120|0);oM(a);return}function Gea(a){a=a|0;pW(a);return}function Hea(a,b){a=a|0;b=b|0;var c=0,d=0;d=u;u=u+16|0;c=d;f[c>>2]=b;if(Dab(f[a>>2]|0)|0){b=Pya(a,0)|0;b=KBa(f[b>>2]|0,c)|0}else b=0;u=d;return b|0}function Iea(a,b){a=a|0;b=b|0;fXa(a,b);HI(a+-16+16|0,b);fXa(a,0);return}function Jea(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;qq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Kea(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;dG(c,a+64|0,b,b);u=c;return}function Lea(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;dG(c,a+52|0,b,b);u=c;return}function Mea(a,b){a=a|0;b=b|0;Dza(a);f[a>>2]=44788;f[a+44>>2]=b;return}function Nea(a){a=a|0;A4(a);return}function Oea(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;h=d-c|0;a=g;g=c;while(1){if((g|0)==(d|0))break;i=f[g>>2]|0;b[a>>0]=i>>>0<128?i&255:e;a=a+1|0;g=g+4|0}return c+(h>>>2<<2)|0}function Pea(a,b){a=a|0;b=b|0;var c=0;c=n0a(a,0)|0;if(KBa(f[c>>2]|0,133172)|0){c=n0a(a,1)|0;Sqa(Jbb(f[c>>2]|0)|0,b)|0;return}else Ca(66856,75335,1397,66874)}function Qea(a,b){a=a|0;b=b|0;var c=0;c=n0a(a,0)|0;if(KBa(f[c>>2]|0,132852)|0){c=n0a(a,1)|0;Sqa(Jbb(f[c>>2]|0)|0,b)|0;return}else Ca(66731,75335,1640,66749)}function Rea(a,b){a=a|0;b=b|0;Aya(a+16|0,nSa(f[b>>2]|0)|0);return}function Sea(a,b){a=a|0;b=b|0;Fxa(a,JQa(f[b>>2]|0)|0);return}function Tea(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];if((a|0)!=(b|0))jx(a+4|0,f[b+4>>2]|0,f[b+8>>2]|0);return a|0}function Uea(){var a=0,b=0,c=0,d=0;d=u;u=u+16|0;a=d;b=f[32963]|0;c=(f[32964]|0)-b>>2;if(c>>>0>1){c=f[b+(c+-2<<2)>>2]|0;f[a>>2]=c;a=c}else{n4a(a,0);a=f[a>>2]|0}u=d;return a|0}function Vea(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;dG(c,a+24|0,b,b);u=c;return}function Wea(a,b){a=a|0;b=b|0;b=d3(a,b)|0;return lNa(f[a+32>>2]|0,b)|0}function Xea(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(g2a(a,f[b+8>>2]|0)|0)lJ(b,c,d,e);return}function Yea(a,b){a=a|0;b=b|0;var c=0;c=n0a(a,0)|0;if(KBa(f[c>>2]|0,133120)|0){c=n0a(a,2)|0;Sqa(Jbb(f[c>>2]|0)|0,b)|0;return}else Ca(66315,75335,1434,66331)}function Zea(a,b){a=a|0;b=b|0;fXa(a,b);ZI(a+-16+16|0,b);fXa(a,0);return}function _ea(a,b){a=a|0;b=b|0;fXa(a,b);_I(a+-16+16|0,b);fXa(a,0);return}function $ea(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];if((a|0)!=(b|0))Cy(a+4|0,f[b+4>>2]|0,f[b+8>>2]|0);return a|0}function afa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=0;do{i=a;a=a>>>7;g=Qab(a)|0;h=e;e=e+1|0;b[(f[c>>2]|0)+(h+d)>>0]=g?i|128:i&127}while(g);return e|0}function bfa(a){a=a|0;var b=0,c=0;b=f[a>>2]|0;c=a+4|0;f[a>>2]=c;f[(f[c>>2]|0)+8>>2]=0;f[c>>2]=0;f[a+8>>2]=0;a=f[b+4>>2]|0;return ((a|0)==0?b:a)|0}function cfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return ch(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function dfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return nh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function efa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return oh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function ffa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return Yg(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function gfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return eh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function hfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return fh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function ifa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{pqa(a,+((f[b+8>>2]|0)>>>0));break}case 2:{b=b+8|0;pqa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+((f[b+4>>2]|0)>>>0));break}default:hb()}return}function jfa(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{HAa(a,+((f[b+8>>2]|0)>>>0));break}case 2:{b=b+8|0;HAa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+((f[b+4>>2]|0)>>>0));break}default:hb()}return}function kfa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;MH(a,b);b=b+16|0}return}function lfa(a,b){a=a|0;b=b|0;Fxa(a,XQa(f[b>>2]|0)|0);return}function mfa(a,b){a=a|0;b=b|0;Fxa(a,PQa(f[b>>2]|0)|0);return}function nfa(a,b){a=a|0;b=b|0;Fxa(a,QQa(f[b>>2]|0)|0);return}function ofa(a,b){a=a|0;b=b|0;var c=0;c=b+8|0;vQ(a,c);if(!(Qab(f[c>>2]|0)|0))GVa(f[a+16>>2]|0,f[b+12>>2]|0)|0;return}function pfa(a){a=a|0;var c=0,d=0;if(!(b[a+8>>0]|0)){d=a+4|0;c=(f[d>>2]|0)+-1|0;f[d>>2]=c;Nwa(f[a>>2]|0,c)|0}Ema(f[a>>2]|0,41)|0;return}function qfa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;a=c-b|0;if((a|0)>0){Ku(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+(a>>>3<<3)}return}function rfa(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;while(1){a=f[a>>2]|0;if(!a){a=0;break}c=f[a+16>>2]|0;if(c>>>0<=b>>>0){if(c>>>0>=b>>>0){a=1;break}a=a+4|0}}return a|0}function sfa(a,b){a=a|0;b=b|0;Aya(a+16|0,vSa(f[b>>2]|0)|0);return}function tfa(a,b){a=a|0;b=b|0;fXa(a,b);uJ(a+-16+16|0,b);fXa(a,0);return}function ufa(a,b){a=a|0;b=b|0;fXa(a,b);vJ(a+-16+16|0,b);fXa(a,0);return}function vfa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;bq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function wfa(a){a=a|0;Z4(a);return}function xfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return dh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function yfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return ph(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function zfa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return _g(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Afa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;return gh(f[b>>2]|0,f[c>>2]|0,d,e,g)|0}function Bfa(a,b){a=a|0;b=b|0;if(!b)DCa(a,56444)|0;else DCa(Ema(a,36)|0,b)|0;return a|0}function Cfa(a){a=a|0;zSa(a+56|0);QNa(a+44|0);rIa(a+12|0);zSa(a);return}function Dfa(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-20|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)Cbb(a);return}function Efa(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;NK(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function Ffa(a,b){a=a|0;b=b|0;Fxa(a,$Qa(f[b>>2]|0)|0);return}function Gfa(a,b){a=a|0;b=b|0;Fxa(a,aRa(f[b>>2]|0)|0);return}function Hfa(a,b){a=a|0;b=b|0;Fxa(a,bRa(f[b>>2]|0)|0);return}function Ifa(a,b){a=a|0;b=b|0;fXa(a,b);TJ(a+-16+16|0,b);fXa(a,0);return}function Jfa(a,b){a=a|0;b=b|0;fXa(a,b);UJ(a+-16+16|0,b);fXa(a,0);return}function Kfa(a,b){a=a|0;b=b|0;fXa(a,b);VJ(a+-16+16|0,b);fXa(a,0);return}function Lfa(a,b){a=a|0;b=b|0;fXa(a,b);WJ(a+-16+16|0,b);fXa(a,0);return}function Mfa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;cq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Nfa(a,b){a=a|0;b=b|0;var c=0;if(!(f[(f[a+36>>2]|0)+(b<<2)>>2]|0)){c=(f[a+24>>2]|0)+(b>>>5<<2)|0;f[c>>2]=f[c>>2]&~(1<<(b&31))}c=(f[a+48>>2]|0)+(b<<2)|0;f[c>>2]=(f[c>>2]|0)+1;return}function Ofa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=u;u=u+16|0;d=c;f[d>>2]=b;g=a+56|0;e=f[g>>2]|0;f[g>>2]=e+1;f[b+100>>2]=e;WV(a,d);u=c;return}function Pfa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Qfa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=PV(a,b)|0;return Z2(d,T4(a,b,c)|0)|0}function Rfa(a){a=a|0;SQa(a+24|0);OHa(a);return}function Sfa(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+4|0;a=b;b=f[c>>2]|0;do{d=b;f[d>>2]=0;f[d+4>>2]=0;b=(f[c>>2]|0)+8|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Tfa(a){a=a|0;TU(f[a+4>>2]|0);return}function Ufa(a,b){a=a|0;b=b|0;Fxa(a,nRa(f[b>>2]|0)|0);return}function Vfa(a,b){a=a|0;b=b|0;Fxa(a,tRa(f[b>>2]|0)|0);return}function Wfa(a,b){a=a|0;b=b|0;zWa(a,b);V8(a+-16|0,b);zWa(a,0);return}function Xfa(a,b){a=a|0;b=b|0;fXa(a,b);jK(a+-16+16|0,b);fXa(a,0);return}function Yfa(a,b){a=a|0;b=b|0;fXa(a,b);kK(a+-16+16|0,b);fXa(a,0);return}function Zfa(a,b){a=a|0;b=b|0;fXa(a,b);lK(a+-16+16|0,b);fXa(a,0);return}function _fa(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;pH(c,a+40|0,f[b>>2]|0,b);u=c;return}function $fa(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;pH(c,a+28|0,f[b>>2]|0,b);u=c;return}function aga(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;b=b+8|0;dG(c,a+80|0,b,b);u=c;return}function bga(a,b){a=+a;b=+b;var c=0,d=0;p[s>>3]=a;d=f[s>>2]|0;c=f[s+4>>2]|0;p[s>>3]=b;c=f[s+4>>2]&-2147483648|c&2147483647;f[s>>2]=d;f[s+4>>2]=c;return +(+p[s>>3])}function cga(a){a=a|0;var b=0,c=0;c=f[32836]|0;b=(f[32837]|0)-c>>2;if(b>>>0>=a>>>0){if(b>>>0>a>>>0)f[32837]=c+(a<<2)}else rD(a-b|0);return}function dga(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-12|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)Cbb(a);return}function ega(a,b,c){a=a|0;b=b|0;c=c|0;return ksa(a+4|0,b,f[c>>2]|0)|0}function fga(a,b,c){a=a|0;b=b|0;c=c|0;return lsa(a+4|0,b,f[c>>2]|0)|0}function gga(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;while(1){b=Lc(a,b)|0;if(!b)break;GVa(f[c>>2]|0,b)|0}return}function hga(a){a=a|0;KW(a);return}function iga(a,b){a=a|0;b=b|0;hE(a,XQa(f[b>>2]|0)|0);return}function jga(a,b){a=a|0;b=b|0;zWa(a,b);nNa(a+-16+16|0,b);zWa(a,0);return}function kga(a,b){a=a|0;b=b|0;fXa(a,b);zK(a+-16+16|0,b);fXa(a,0);return}function lga(a,b){a=a|0;b=b|0;fXa(a,b);AK(a+-16+16|0,b);fXa(a,0);return}function mga(a,b){a=a|0;b=b|0;fXa(a,b);DK(a+-16+16|0,b);fXa(a,0);return}function nga(a,b){a=a|0;b=b|0;fXa(a,b);EK(a+-16+16|0,b);fXa(a,0);return}function oga(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;d=u;u=u+16|0;c=d;f[c>>2]=f[a>>2];while(1){e=(f[c>>2]|0)+(4-1)&~(4-1);a=f[e>>2]|0;f[c>>2]=e+4;if(b>>>0>1)b=b+-1|0;else break}u=d;return a|0}function pga(a){a=a|0;xT(f[a+4>>2]|0);return}function qga(a){a=a|0;yT(f[a+4>>2]|0);return}function rga(a){a=a|0;TS(a,f[a+4>>2]|0);return}function sga(a){a=a|0;jV(f[a+4>>2]|0);return}function tga(a){a=a|0;f[a>>2]=45268;SQa(a+76|0);Zma(a+56|0);mRa(a);return}function uga(a,b){a=a|0;b=b|0;fXa(a,b);AD(a,b);fXa(a,0);return}function vga(a,c){a=a|0;c=c|0;a:do if(!(b[a+24>>0]|0)){switch(f[c+8>>2]|0){case 31:case 30:case 29:case 28:case 6:case 5:case 4:case 3:break;default:break a}b[a+78>>0]=1}while(0);return}function wga(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Aab(f[b>>2]|0)|0)?A_(b)|0:0){b=PDa(b,c)|0;RK(a,b)|0}return b|0}function xga(a,b){a=a|0;b=b|0;kH(a,b+36|0);return}function yga(a,b){a=a|0;b=b|0;Fxa(a,NRa(f[b>>2]|0)|0);return}function zga(a,b){a=a|0;b=b|0;Fxa(a,DRa(f[b>>2]|0)|0);return}function Aga(a,b){a=a|0;b=b|0;Fxa(a,ERa(f[b>>2]|0)|0);return}function Bga(a,b){a=a|0;b=b|0;Fxa(a,FRa(f[b>>2]|0)|0);return}function Cga(a,b){a=a|0;b=b|0;fXa(a,b);VK(a+-16+16|0,b);fXa(a,0);return}function Dga(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Pp(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function Ega(a){a=a|0;jR(f[a+4>>2]|0);return}function Fga(a,b){a=a|0;b=b|0;var c=0;D7(a);f[a>>2]=2;c=kFa()|0;f[a+8>>2]=c;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];return a|0}function Gga(a,c){a=a|0;c=c|0;do if(Qab(f[c+4>>2]|0)|0)a=0;else{if(b[a+93>>0]|0?(f[(f[a+120>>2]|0)+(f[c+8>>2]<<2)>>2]|0)>>>0>1:0){a=0;break}a=1}while(0);return a|0}function Hga(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=u;u=u+16|0;h=g;f[h>>2]=e;e=pRa(c)|0;c=nG(a,b,d,h)|0;if(e|0)pRa(e)|0;u=g;return c|0}function Iga(a){a=a|0;var b=0,c=0;switch(f[a>>2]|0){case 3:case 1:{c=f[a+8>>2]|0;b=((c|0)<0)<<31>>31;break}case 4:case 2:{c=a+8|0;b=f[c+4>>2]|0;c=f[c>>2]|0;break}default:hb()}I=b;return c|0}function Jga(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 Ena(a,J$(a,b,c)|0,d,e,f)|0}function Kga(a,b){a=a|0;b=b|0;Fxa(a,ORa(f[b>>2]|0)|0);return}function Lga(a,b){a=a|0;b=b|0;Fxa(a,PRa(f[b>>2]|0)|0);return}function Mga(a,b){a=a|0;b=b|0;Fxa(a,QRa(f[b>>2]|0)|0);return}function Nga(a,b){a=a|0;b=b|0;Fxa(a,$Ra(f[b>>2]|0)|0);return}function Oga(a,b){a=a|0;b=b|0;Fxa(a,aSa(f[b>>2]|0)|0);return}function Pga(a,b){a=a|0;b=b|0;zWa(a,b);NCa(a+-16|0,b);zWa(a,0);return}function Qga(a,b){a=a|0;b=b|0;fXa(a,b);jL(a+-16+16|0,b);fXa(a,0);return}function Rga(a,b){a=a|0;b=b|0;fXa(a,b);kL(a+-16+16|0,b);fXa(a,0);return}function Sga(a,b){a=a|0;b=b|0;fXa(a,b);lL(a+-16+16|0,b);fXa(a,0);return}function Tga(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;Qp(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0)|0;return}function Uga(a){a=a|0;T5(a);return}function Vga(a,b){a=a|0;b=b|0;var c=0;c=Jbb(b)|0;if(Oab(f[b>>2]|0)|0){c=uPa(c)|0;return YX(a,f[c>>2]|0)|0}else Ca(66667,75335,1625,66683);return 0}function Wga(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)!=(c|0)){d=X(f[a+132>>2]|0,c>>>0>>0?c:b)|0;b=d+(b>>>0>>0?c:b)|0;c=(f[a+184>>2]|0)+(b>>>5<<2)|0;f[c>>2]=1<<(b&31)|f[c>>2]}return}function Xga(a){a=a|0;var b=0,c=0;c=f[a>>2]|0;a=(f[a+4>>2]|0)-c|0;b=a>>2;if(!a)Ca(115505,115513,37,115542);a=0;while(1){if((a|0)==(b|0))break;f[c+(a<<2)>>2]=a;a=a+1|0}return}function Yga(a,c){a=a|0;c=c|0;hHa(a);f[a>>2]=43472;b[a+44>>0]=c&1;c=a+48|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+64>>2]=1065353216;return}function Zga(a,b,c){a=a|0;b=b|0;c=c|0;if(eTa(a,b)|0){c=b+(Fab(c)|0)|0;a=a+4096|0;if((c|0)==(f[a>>2]|0))f[a>>2]=b}else rg(b);return}function _ga(a,c){a=a|0;c=c|0;bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=YTa(f[c>>2]|0,135192)|0;f[a+36>>2]=c;c=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=c;return}function $ga(a,c){a=a|0;c=c|0;bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;c=YTa(f[c>>2]|0,135184)|0;f[a+36>>2]=c;c=(bc[f[(f[c>>2]|0)+28>>2]&511](c)|0)&1;b[a+44>>0]=c;return}function aha(a){a=a|0;var b=0,c=0,d=0;b=s8(12)|0;f[b>>2]=40576;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function bha(a){a=a|0;var b=0,c=0,d=0;b=s8(12)|0;f[b>>2]=40532;d=a+4|0;c=f[d+4>>2]|0;a=b+4|0;f[a>>2]=f[d>>2];f[a+4>>2]=c;return b|0}function cha(a,b){a=a|0;b=b|0;Zua(a,nRa(f[b>>2]|0)|0);return}function dha(a,b){a=a|0;b=b|0;Zua(a,tRa(f[b>>2]|0)|0);return}function eha(a,b){a=a|0;b=b|0;Fxa(a,lSa(f[b>>2]|0)|0);return}function fha(a,b){a=a|0;b=b|0;Fxa(a,bSa(f[b>>2]|0)|0);return}function gha(a,b){a=a|0;b=b|0;Fxa(a,cSa(f[b>>2]|0)|0);return}function hha(a,b){a=a|0;b=b|0;Fxa(a,dSa(f[b>>2]|0)|0);return}function iha(a,b){a=a|0;b=b|0;Fxa(a,mSa(f[b>>2]|0)|0);return}function jha(a,b){a=a|0;b=b|0;xOa(a);f[a>>2]=39832;f[a+4>>2]=b;return}function kha(a,b){a=a|0;b=b|0;a=yPa(a,75607)|0;Ema(Bfa(a,f[b+24>>2]|0)|0,41)|0;return}function lha(a,b){a=a|0;b=b|0;var c=0;c=f[a+44>>2]|0;a=b+24|0;b=t_(c,a)|0;if((b|0)!=(c+4|0))f[a>>2]=f[b+20>>2];return}function mha(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;return mc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function nha(a,b){a=a|0;b=b|0;rXa(a);f[a+24>>2]=b;b=a+28|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+44>>2]=1065353216;return}function oha(a,b){a=a|0;b=b|0;return NOa(a+32|0,d3(a,b)|0)|0}function pha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e>>2;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+(b<<2)}else MF(a,b-d|0);return}function qha(a){a=a|0;if(!a)return;else{qha(f[a>>2]|0);qha(f[a+4>>2]|0);Cbb(a);return}}function rha(a){a=a|0;NT(f[a+4>>2]|0);return}function sha(a){a=a|0;b6(a);return}function tha(a){a=a|0;var b=0;a=a+8|0;b=pRa(f[a>>2]|0)|0;if(b|0)pRa(b)|0;a=f[a>>2]|0;if(!a)return 1;a=pRa(a)|0;b=z6a()|0;if(a|0)pRa(a)|0;return (b|0)==1|0}function uha(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b+12|0;c=b+16|0;d=f[e>>2]|0;f[e>>2]=f[c>>2];f[c>>2]=d;b=b+8|0;a=rBa(f[a>>2]|0,20,f[b>>2]|0)|0;f[b>>2]=a;return}function vha(a,b){a=a|0;b=b|0;dF(a,XQa(f[b>>2]|0)|0);return}function wha(a,b){a=a|0;b=b|0;Fxa(a,nSa(f[b>>2]|0)|0);return}function xha(a,b){a=a|0;b=b|0;zWa(a,b);zU(a+-16|0,b);zWa(a,0);return}function yha(a){a=a|0;var c=0;b[a>>0]=0;b[a+1>>0]=0;c=a+4|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;f[a+32>>2]=1065353216;f[a+36>>2]=0;return}function zha(a){a=a|0;xDa(a+48|0);zsa(a+36|0);CVa(a);return}function Aha(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-8|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)Cbb(a);return}function Bha(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-16|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)Cbb(a);return}function Cha(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{pqa(a,+(f[b+8>>2]|0));break}case 2:{b=b+8|0;pqa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+(f[b+4>>2]|0));break}default:hb()}return}function Dha(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 1:{HAa(a,+(f[b+8>>2]|0));break}case 2:{b=b+8|0;HAa(a,+((f[b>>2]|0)>>>0)+4294967296.0*+(f[b+4>>2]|0));break}default:hb()}return}function Eha(a,b,c){a=a|0;b=b|0;c=c|0;if(g2a(b,f[33215]|0)|0)c=Vga(a,c)|0;else c=rv(a,b,c)|0;return c|0}function Fha(a){a=a|0;var b=0;switch(a|0){case 0:{b=73268;break}case 1:{b=73264;break}case 2:{b=117047;break}case 3:{b=73260;break}case 4:{b=73256;break}case 5:{b=101333;break}default:hb()}return b|0}function Gha(a,b){a=a|0;b=b|0;kH(a,b+8|0);return}function Hha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)!=(b|0)){a=a+4|0;d=(f[a>>2]|0)-c|0;if(d|0)kia(b|0,c|0,d|0)|0;f[a>>2]=b+(((d|0)/12|0)*12|0)}return}function Iha(a,b){a=a|0;b=b|0;_l(a,IQa(f[b>>2]|0)|0);return}function Jha(a,b){a=a|0;b=b|0;fXa(a,b);KL(a+-16+16|0,b);fXa(a,0);return}function Kha(a){a=a|0;JIa(a);f[a>>2]=45668;XIa(a+44|0);DUa(a+108|0);f[a+120>>2]=0;f[a+124>>2]=0;f[a+128>>2]=0;return}function Lha(a,b){a=a|0;b=b|0;var c=0;c=s8(12)|0;j1a(c);b=f[b>>2]|0;f[c>>2]=b;f[c+4>>2]=b;f[c+8>>2]=0;Zs(f[f[a>>2]>>2]|0,c);return}function Mha(a,b){a=a|0;b=b|0;wGa(a,wQa(f[b>>2]|0)|0);return}function Nha(a,b){a=a|0;b=b|0;xGa(a,wQa(f[b>>2]|0)|0);return}function Oha(a,b){a=a|0;b=b|0;Fxa(a,vSa(f[b>>2]|0)|0);return}function Pha(a){a=a|0;var b=0,c=0;f[a>>2]=42936;SQa(a+48|0);c=a+44|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Cbb(b);QTa(a);return}function Qha(a){a=a|0;f[a>>2]=42736;zSa(a+72|0);R9(a+60|0);zSa(a+48|0);QTa(a);return}function Rha(a){a=a|0;var b=0,c=0;c=a+4|0;b=0;while(1){if(b>>>0>=(f[f[a>>2]>>2]|0)>>>0)break;Ema(f[c>>2]|0,32)|0;b=b+1|0}return}function Sha(a){a=+a;var b=0,c=0;c=u;u=u+16|0;b=c;n[b>>2]=a;if(((K$a(a)|0)&2147483647)>>>0>2139095040){b=(W7a(b)|0)&8388607;u=c;return b|0}else Ca(75411,75445,93,75468);return 0}function Tha(a,b){a=a|0;b=b|0;fXa(a,b);TL(a+-16+16|0,b);fXa(a,0);return}function Uha(a,b){a=a|0;b=b|0;fXa(a,b);UL(a+-16+16|0,b);fXa(a,0);return}function Vha(a,c){a=a|0;c=c|0;var d=0;d=(Hr(a,f[c+24>>2]|0)|0)+2|0;a=d+(Hr(a,f[c+28>>2]|0)|0)|0;return a+(0-(b[c+20>>0]|0)&10)|0}function Wha(a,b){a=a|0;b=b|0;var c=0;c=s8(48)|0;Kwa(c,b);N_(a,c);return}function Xha(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=a+4|0;a=c-b|0;if((a|0)>0){Ku(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+(a>>>2<<2)}return}function Yha(a){a=a|0;hU(f[a+4>>2]|0);return}function Zha(a){a=a|0;Q6(a);return}function _ha(a){a=a|0;R6(a);return}function $ha(a){a=a|0;S6(a);return}function aia(a){a=a|0;T6(a);return}function bia(a){a=a|0;U6(a);return}function cia(){var a=0;if((b[130800]|0)==0?VWa(130800)|0:0){a=yb(76156)|0;f[33178]=a}if((b[130808]|0)==0?VWa(130808)|0:0){a=f[33178]|0;if(!a)a=0;else a=AR(a)|0;f[33179]=a}return f[33179]|0}function dia(a,b){a=a|0;b=b|0;wGa(a,IQa(f[b>>2]|0)|0);return}function eia(a,b){a=a|0;b=b|0;xGa(a,IQa(f[b>>2]|0)|0);return}function fia(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=s8(20)|0;f[a>>2]=e;f[a+4>>2]=c+4;f[e+16>>2]=f[d>>2];b[a+8>>0]=1;return}function gia(a,b){a=a|0;b=b|0;fXa(a,b);XL(a+-16+16|0,b);fXa(a,0);return}function hia(a,b){a=a|0;b=b|0;zWa(a,b);xl(a+-16|0,b);zWa(a,0);return}function iia(a,b){a=a|0;b=b|0;zWa(a,b);V7(a+-16|0,b);zWa(a,0);return}function jia(a,b){a=a|0;b=b|0;zWa(a,b);Ev(a+-16|0,b);zWa(a,0);return}function kia(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Ku(a,c,d)|0;return a|0}function lia(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;e=f[a>>2]|0;d=(f[c>>2]|0)-e|0;if(d>>>0>=b>>>0){if(d>>>0>b>>>0)f[c>>2]=e+b}else YF(a,b-d|0);return}function mia(a){a=a|0;kU(f[a+4>>2]|0);return}function nia(a,b){a=a|0;b=b|0;wGa(a,JQa(f[b>>2]|0)|0);return}function oia(a,b){a=a|0;b=b|0;xGa(a,JQa(f[b>>2]|0)|0);return}function pia(a){a=a|0;var b=0;b=s8(48)|0;x=0;ua(87,b|0,f[a+44>>2]|0);a=x;x=0;if(a&1){a=Ia()|0;Cbb(b);Ua(a|0)}else return b|0;return 0}function qia(a,b){a=a|0;b=b|0;var c=0;c=s8(12)|0;f[c+8>>2]=f[b>>2];f[c+4>>2]=a;b=f[a>>2]|0;f[c>>2]=b;f[b+4>>2]=c;f[a>>2]=c;b=a+8|0;f[b>>2]=(f[b>>2]|0)+1;return}function ria(a,b){a=a|0;b=b|0;var c=0,d=0;switch(a|0){case 0:{c=b;break}case -1:{a=f[33448]|0;d=3;break}default:d=3}if((d|0)==3)if((a|0)==22)c=135337;else hb();return c|0}function sia(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=40576;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function tia(a,b){a=a|0;b=b|0;var c=0;f[b>>2]=40532;c=a+4|0;a=f[c+4>>2]|0;b=b+4|0;f[b>>2]=f[c>>2];f[b+4>>2]=a;return}function uia(a,b){a=a|0;b=b|0;tE(a,nRa(f[b>>2]|0)|0);return}function via(a,b){a=a|0;b=b|0;fXa(a,b);aM(a+-16+16|0,b);fXa(a,0);return}function wia(a,b){a=a|0;b=b|0;zWa(a,b);opa(a+-16|0,b);zWa(a,0);return}function xia(a,b){a=a|0;b=b|0;zWa(a,b);GL(a+-16|0,b);zWa(a,0);return}function yia(a){a=a|0;var b=0;YIa(a);f[a>>2]=42936;b=a+44|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[a+64>>2]=1065353216;return}function zia(a){a=a|0;xW(f[a+4>>2]|0);return}function Aia(a){a=a|0;var b=0;b=f[(f[a+12>>2]|0)+4>>2]|0;a=a+4|0;do if((b|0)!=5)if(Qab(f[a>>2]|0)|0){f[a>>2]=b;break}else{f[a>>2]=0;break}else f[a>>2]=5;while(0);return}function Bia(a,b){a=a|0;b=b|0;wGa(a,XQa(f[b>>2]|0)|0);return}function Cia(a,b){a=a|0;b=b|0;wGa(a,PQa(f[b>>2]|0)|0);return}function Dia(a,b){a=a|0;b=b|0;wGa(a,QQa(f[b>>2]|0)|0);return}function Eia(a,b){a=a|0;b=b|0;xGa(a,XQa(f[b>>2]|0)|0);return}function Fia(a,b){a=a|0;b=b|0;xGa(a,PQa(f[b>>2]|0)|0);return}function Gia(a,b){a=a|0;b=b|0;xGa(a,QQa(f[b>>2]|0)|0);return}function Hia(a,b){a=a|0;b=b|0;No(a,FRa(f[b>>2]|0)|0);return}function Iia(a,c){a=a|0;c=c|0;f[a>>2]=c;v8(a+4|0,42);b[a+2504>>0]=1;return}function Jia(a){a=a|0;var b=0,c=0;switch(f[a>>2]|0){case 1:{c=f[a+8>>2]|0;b=((c|0)<0)<<31>>31;break}case 2:{c=a+8|0;b=f[c+4>>2]|0;c=f[c>>2]|0;break}default:hb()}I=b;return c|0}function Kia(a){a=a|0;OK(a+44|0);Eva(a+64|0);return}function Lia(a,b){a=a|0;b=b|0;gk(a,XQa(f[b>>2]|0)|0);return}function Mia(a,b){a=a|0;b=b|0;fXa(a,b);iM(a+-16+16|0,b);fXa(a,0);return}function Nia(a,b){a=a|0;b=b|0;zWa(a,b);MDa(a+-16|0,b);zWa(a,0);return}function Oia(a,b){a=a|0;b=b|0;zWa(a,b);PE(a+-16|0,b);zWa(a,0);return}function Pia(a,b){a=a|0;b=b|0;var c=0,d=0;d=f[a+16>>2]|0;c=Jbb(f[d>>2]|0)|0;GVa(d,b)|0;AE(a+44|0,c,b);return b|0}function Qia(a){a=a|0;G7(a);return}function Ria(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{HAa(a,+H0a(+(+TNa(b))));break}case 4:{pqa(a,+H0a(+(+SNa(b))));break}default:hb()}return}function Sia(){var a=0,b=0,c=0;a=s8(60)|0;b=a;c=b+60|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));gra(a);return a|0}function Tia(a){a=a|0;var b=0,c=0;b=a+4|0;c=Jbb(f[(f[b>>2]|0)+84>>2]|0)|0;a=a+12|0;VPa(c,f[a>>2]|0,0);cDa(f[b>>2]|0,f[a>>2]|0)|0;return}function Uia(a,b,c){a=a|0;b=b|0;c=c|0;if(b>>>0>>0){b=(X(f[a+132>>2]|0,b)|0)+c|0;c=(f[a+184>>2]|0)+(b>>>5<<2)|0;f[c>>2]=1<<(b&31)|f[c>>2];return}else Ca(115595,115383,74,115606)}function Via(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>357913941)dea();else{c=s8(b*12|0)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b*12|0);return}}function Wia(a,b){a=a|0;b=b|0;b=b+8|0;if(sQa(f[a+116>>2]|0,f[b>>2]|0)|0?!(qVa(a)|0):0)a=f[(f[a+140>>2]|0)+(f[b>>2]<<2)>>2]|0;return a|0}function Xia(a,b){a=a|0;b=b|0;wGa(a,$Qa(f[b>>2]|0)|0);return}function Yia(a,b){a=a|0;b=b|0;wGa(a,aRa(f[b>>2]|0)|0);return}function Zia(a,b){a=a|0;b=b|0;wGa(a,bRa(f[b>>2]|0)|0);return}function _ia(a,b){a=a|0;b=b|0;xGa(a,$Qa(f[b>>2]|0)|0);return}function $ia(a,b){a=a|0;b=b|0;xGa(a,aRa(f[b>>2]|0)|0);return}function aja(a,b){a=a|0;b=b|0;xGa(a,bRa(f[b>>2]|0)|0);return}function bja(a,b){a=a|0;b=b|0;zWa(a,b);Vh(a+-16|0,b);zWa(a,0);return}function cja(a,b){a=a|0;b=b|0;var c=0;c=rWa(f[a+4>>2]|0)|0;b=ZQa(a,Or(b,1)|0)|0;f[c+8>>2]=b;uXa(c);return c|0}function dja(a,b){a=a|0;b=b|0;var c=0;Is(a,b);c=s8(12)|0;j1a(c);b=f[b>>2]|0;f[c+4>>2]=b;f[c>>2]=b;f[c+8>>2]=0;Zs(a,c);return}function eja(a,c){a=a|0;c=c|0;b[a+104>>0]=1;c=c+36|0;JK(a+44|0,c);iJ(a+16|0,c);return}function fja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;kq(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function gja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;lq(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function hja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a+4|0;a=c-b|0;if((a|0)>0){Ku(f[d>>2]|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a}return}function ija(a){a=a|0;n7(a);return}function jja(a,b){a=a|0;b=b|0;vIa(a,wQa(f[b>>2]|0)|0);return}function kja(a){a=a|0;rg(f[a+36>>2]|0);Qca(a+16|0);G5(a+4|0);return}function lja(a,b){a=a|0;b=b|0;wGa(a,nRa(f[b>>2]|0)|0);return}function mja(a,b){a=a|0;b=b|0;wGa(a,tRa(f[b>>2]|0)|0);return}function nja(a,b){a=a|0;b=b|0;xGa(a,nRa(f[b>>2]|0)|0);return}function oja(a,b){a=a|0;b=b|0;xGa(a,tRa(f[b>>2]|0)|0);return}function pja(a,b){a=a|0;b=b|0;zWa(a,b);iZ(a+-16|0,b);zWa(a,0);return}function qja(a,b){a=a|0;b=b|0;zWa(a,b);Qt(a+-16|0,b);zWa(a,0);return}function rja(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;DUa(a);DUa(a+12|0);f[a+24>>2]=c;f[a+28>>2]=d;b[a+32>>0]=e&1;return}function sja(a){a=a|0;oLa(a);f[a>>2]=43232;DUa(a+56|0);DUa(a+68|0);f[a+84>>2]=0;return}function tja(a,b){a=a|0;b=b|0;a=eSa(f[a>>2]|0)|0;m0(a+12|0,b);tt(a);return a|0}function uja(a,b){a=a|0;b=b|0;vIa(a,IQa(f[b>>2]|0)|0);return}function vja(a,b){a=a|0;b=b|0;rH(a,b+36|0);return}function wja(a,b){a=a|0;b=b|0;uH(a,b+36|0);return}function xja(a,b){a=a|0;b=b|0;vH(a,b+36|0);return}function yja(a,b){a=a|0;b=b|0;wH(a,b+36|0);return}function zja(a,b){a=a|0;b=b|0;sH(a,b+36|0);return}function Aja(a){a=a|0;QY(a+4|0);return}function Bja(a){a=a|0;var c=0;if((bc[f[(f[a>>2]|0)+36>>2]&511](a)|0)==-1)a=-1;else{c=a+12|0;a=f[c>>2]|0;f[c>>2]=a+1;a=d7a(b[a>>0]|0)|0}return a|0}function Cja(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128)a=j[25968+(a<<1)>>1]|0;else a=0;d[e>>1]=a;e=e+2|0;b=b+4|0}return c|0}function Dja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;tq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Eja(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>178956970)dea();else{c=s8(b*24|0)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b*24|0);return}}function Fja(a,b){a=a|0;b=b|0;vIa(a,JQa(f[b>>2]|0)|0);return}function Gja(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=pRa(b)|0;b=Jaa(a,c,g)|0;if(d|0)pRa(d)|0;u=e;return b|0}function Hja(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-4|0;f[c>>2]=e;d=e}a=f[a>>2]|0;if(a|0)Cbb(a);return}function Ija(a){a=a|0;var b=0;_ya(f[a+8>>2]|0);b=f[a>>2]|0;f[a>>2]=0;if(b|0)Cbb(b);return}function Jja(a,b){a=a|0;b=b|0;wGa(a,NRa(f[b>>2]|0)|0);return}function Kja(a,b){a=a|0;b=b|0;wGa(a,DRa(f[b>>2]|0)|0);return}function Lja(a,b){a=a|0;b=b|0;wGa(a,ERa(f[b>>2]|0)|0);return}function Mja(a,b){a=a|0;b=b|0;wGa(a,FRa(f[b>>2]|0)|0);return}function Nja(a,b){a=a|0;b=b|0;xGa(a,NRa(f[b>>2]|0)|0);return}function Oja(a,b){a=a|0;b=b|0;xGa(a,DRa(f[b>>2]|0)|0);return}function Pja(a,b){a=a|0;b=b|0;xGa(a,ERa(f[b>>2]|0)|0);return}function Qja(a,b){a=a|0;b=b|0;xGa(a,FRa(f[b>>2]|0)|0);return}function Rja(a,b){a=a|0;b=b|0;fXa(a,b);$i(a+-16|0,b);fXa(a,0);return}function Sja(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Cq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Tja(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Dq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Uja(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0;g=f[a+44>>2]|0;pq(g,b,c,d,e,Jbb(f[a+32>>2]|0)|0);return}function Vja(a,b){a=a|0;b=b|0;a=a+16|0;if((Su(f[a>>2]|0)|0)==(b<<24>>24|0)){Ps(f[a>>2]|0)|0;a=1}else a=0;return a|0}function Wja(a){a=a|0;var b=0;b=c$a(a)|0;if(!b)a=($Ra(a)|0)+12|0;else a=b+8|0;return f[a>>2]|0}function Xja(a){a=a|0;YW(f[a+4>>2]|0);return}function Yja(a){a=a|0;oW(a,f[a+4>>2]|0);return}function Zja(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}a=f[c>>2]|0;if(a>>>0>=128)break;if(!((d[25968+(a<<1)>>1]&b)<<16>>16))break;c=c+4|0}return c|0}function _ja(a,b){a=a|0;b=b|0;vIa(a,XQa(f[b>>2]|0)|0);return}function $ja(a,b){a=a|0;b=b|0;vIa(a,PQa(f[b>>2]|0)|0);return}function aka(a,b){a=a|0;b=b|0;vIa(a,QQa(f[b>>2]|0)|0);return}function bka(a,b){a=a|0;b=b|0;AH(a,b+36|0);return}function cka(a,b){a=a|0;b=b|0;EH(a,b+36|0);return}function dka(a,b){a=a|0;b=b|0;FH(a,b+36|0);return}function eka(a,b){a=a|0;b=b|0;GH(a,b+36|0);return}function fka(a,b){a=a|0;b=b|0;BH(a,b+36|0);return}function gka(a){a=a|0;var b=0,c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;b=s8(48)|0;f[e>>2]=f[a+44>>2];f[d>>2]=f[e>>2];$Da(b,d);u=c;return b|0}function hka(a,c){a=a|0;c=c|0;var d=0;d=c+8|0;if(Qab(f[d>>2]|0)|0)a8(a+80|0,d);if((f[c+4>>2]|0)==5)b[a+26>>0]=1;return}function ika(a){a=a|0;var b=0,c=0;x=0;b=fa(66)|0;c=x;x=0;if(c&1){c=Ja(0)|0;y2a(c)}else{c=f[b>>2]|0;f[a>>2]=c;c=c+4|0;f[c>>2]=(f[c>>2]|0)+1;return}}function jka(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0;g=s8(16)|0;Eab(g);f[g>>2]=f[a>>2];f[g+4>>2]=c;f[g+8>>2]=d;b[g+12>>0]=(e|0)==0&1;return g|0}function kka(a,b){a=a|0;b=b|0;wGa(a,ORa(f[b>>2]|0)|0);return}function lka(a,b){a=a|0;b=b|0;wGa(a,PRa(f[b>>2]|0)|0);return}function mka(a,b){a=a|0;b=b|0;wGa(a,QRa(f[b>>2]|0)|0);return}function nka(a,b){a=a|0;b=b|0;wGa(a,$Ra(f[b>>2]|0)|0);return}function oka(a,b){a=a|0;b=b|0;wGa(a,aSa(f[b>>2]|0)|0);return}function pka(a,b){a=a|0;b=b|0;xGa(a,ORa(f[b>>2]|0)|0);return}function qka(a,b){a=a|0;b=b|0;xGa(a,PRa(f[b>>2]|0)|0);return}function rka(a,b){a=a|0;b=b|0;xGa(a,QRa(f[b>>2]|0)|0);return}function ska(a,b){a=a|0;b=b|0;xGa(a,$Ra(f[b>>2]|0)|0);return}function tka(a,b){a=a|0;b=b|0;xGa(a,aSa(f[b>>2]|0)|0);return}function uka(a,b){a=a|0;b=b|0;lh(a,aSa(f[b>>2]|0)|0);return}function vka(a,b){a=a|0;b=b|0;zWa(a,b);Rf(a+-16|0,b);zWa(a,0);return}function wka(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;VZ(d,b);Ep(d,a);xta(d);u=c;return a|0}function xka(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{EXa(b);b=(f[c>>2]|0)+16|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function yka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[c+100>>2]|0;b=c+104|0;a=f[b>>2]|0;while(1){if((a|0)==(d|0))break;c=a+-16|0;P_a(c);a=c}f[b>>2]=d;return}function zka(a){a=a|0;LIa(a+12|0);ija(a);return}function Aka(a){a=a|0;var b=0;b=Ea(8)|0;x=0;ua(3187,b|0,a|0);a=x;x=0;if(a&1){a=Ia()|0;La(b|0);Ua(a|0)}else Pa(b|0,39456,420)}function Bka(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=f[b+16>>2];return}function Cka(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;Bab(e);f[d>>2]=f[e>>2];b=PF(a,d,b)|0;u=c;return b|0}function Dka(a,b){a=a|0;b=b|0;wGa(a,lSa(f[b>>2]|0)|0);return}function Eka(a,b){a=a|0;b=b|0;wGa(a,bSa(f[b>>2]|0)|0);return}function Fka(a,b){a=a|0;b=b|0;wGa(a,cSa(f[b>>2]|0)|0);return}function Gka(a,b){a=a|0;b=b|0;wGa(a,dSa(f[b>>2]|0)|0);return}function Hka(a,b){a=a|0;b=b|0;wGa(a,mSa(f[b>>2]|0)|0);return}function Ika(a,b){a=a|0;b=b|0;xGa(a,lSa(f[b>>2]|0)|0);return}function Jka(a,b){a=a|0;b=b|0;xGa(a,bSa(f[b>>2]|0)|0);return}function Kka(a,b){a=a|0;b=b|0;xGa(a,cSa(f[b>>2]|0)|0);return}function Lka(a,b){a=a|0;b=b|0;xGa(a,dSa(f[b>>2]|0)|0);return}function Mka(a,b){a=a|0;b=b|0;xGa(a,mSa(f[b>>2]|0)|0);return}function Nka(a,b){a=a|0;b=b|0;vIa(a,$Qa(f[b>>2]|0)|0);return}function Oka(a,b){a=a|0;b=b|0;vIa(a,aRa(f[b>>2]|0)|0);return}function Pka(a,b){a=a|0;b=b|0;vIa(a,bRa(f[b>>2]|0)|0);return}function Qka(a,b){a=a|0;b=b|0;zWa(a,b);wba(a+-16|0,b);zWa(a,0);return}function Rka(a,b){a=a|0;b=b|0;zWa(a,b);$z(a+-16|0,b);zWa(a,0);return}function Ska(a,b){a=a|0;b=b|0;fXa(a,b);fs(a+-16|0,b);fXa(a,0);return}function Tka(a,b){a=a|0;b=b|0;zWa(a,b);aF(a,b);zWa(a,0);return}function Uka(a){a=a|0;f[a>>2]=45668;P1a(f[a+120>>2]|0);RTa(a+108|0);Pqa(a+44|0);QTa(a);return}function Vka(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;fca(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Wka(a){a=a|0;var b=0,c=0;b=s8(44)|0;x=0;ta(441,b|0);c=x;x=0;if(c&1){c=Ia()|0;Cbb(b);Ua(c|0)}else{N_(a,b);return}}function Xka(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=f[c>>2];a=ec[f[(f[a>>2]|0)+16>>2]&127](a,b,d)|0;if(a)f[c>>2]=f[d>>2];u=e;return a&1|0}function Yka(a){a=a|0;nX(f[a+4>>2]|0);return}function Zka(a){a=a|0;oX(f[a+4>>2]|0);return}function _ka(a){a=a|0;pX(f[a+4>>2]|0);return}function $ka(a){a=a|0;qX(f[a+4>>2]|0);return}function ala(a){a=a|0;rX(f[a+4>>2]|0);return}function bla(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function cla(a){a=a|0;if((b[130864]|0)==0?VWa(130864)|0:0){f[33741]=0;f[33742]=0;f[33743]=0;_Z(134964,120194,j7a(120194)|0)}return 134964}function dla(a){a=a|0;if((b[130872]|0)==0?VWa(130872)|0:0){f[33744]=0;f[33745]=0;f[33746]=0;_Z(134976,120203,j7a(120203)|0)}return 134976}function ela(a){a=a|0;if((b[130880]|0)==0?VWa(130880)|0:0){f[33747]=0;f[33748]=0;f[33749]=0;_Z(134988,120215,j7a(120215)|0)}return 134988}function fla(a){a=a|0;if((b[130856]|0)==0?VWa(130856)|0:0){f[33738]=0;f[33739]=0;f[33740]=0;_Z(134952,120185,j7a(120185)|0)}return 134952}function gla(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{HAa(a,+Kb(+(+TNa(b))));break}case 4:{pqa(a,+Lb(+(+SNa(b))));break}default:hb()}return}function hla(){var a=0,b=0,c=0;a=s8(60)|0;b=a;c=b+60|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));xra(a);return a|0}function ila(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;lI(a,b);b=b+16|0}return}function jla(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;b=a+20|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+36>>2]=1065353216;return}function kla(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=s8(36)|0;rja(d,f[b>>2]|0,c,0);f[a>>2]=d;return}function lla(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=h[28784+(a&15)>>0]|0|e;a=JMa(a|0,c|0,4)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function mla(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|0)!=(b|0)){a=a+4|0;d=(f[a>>2]|0)-c|0;if(d|0)kia(b|0,c|0,d|0)|0;f[a>>2]=b+(d>>2<<2)}return}function nla(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>268435455)dea();else{c=s8(b<<4)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b<<4);return}}function ola(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=kVa(f[a>>2]|0)|0;f[a+8>>2]=b;f[a+12>>2]=c;f[a+16>>2]=d;l5(a,e);return a|0}function pla(a,b){a=a|0;b=b|0;wGa(a,nSa(f[b>>2]|0)|0);return}function qla(a,b){a=a|0;b=b|0;xGa(a,nSa(f[b>>2]|0)|0);return}function rla(a,b){a=a|0;b=b|0;vIa(a,nRa(f[b>>2]|0)|0);return}function sla(a,b){a=a|0;b=b|0;vIa(a,tRa(f[b>>2]|0)|0);return}function tla(a,b){a=a|0;b=b|0;$C(a,$Ra(f[b>>2]|0)|0);return}function ula(a,b){a=a|0;b=b|0;Vj(a,aSa(f[b>>2]|0)|0);return}function vla(a,b){a=a|0;b=b|0;zWa(a,b);_Pa(a+-16|0,b);zWa(a,0);return}function wla(a,b){a=a|0;b=b|0;fXa(a,b);Xc(a+-16|0,b);fXa(a,0);return}function xla(a,c){a=a|0;c=c|0;var d=0;d=zZ(a,c)|0;f[d>>2]=c;if(b[a+32>>0]|0)Is(f[a+28>>2]|0,c);return}function yla(a,b){a=a|0;b=b|0;a=a+4|0;yPa(f[a>>2]|0,75547)|0;x4(f[b+8>>2]|0,f[a>>2]|0)|0;return}function zla(a,b){a=a|0;b=b|0;a=a+4|0;yPa(f[a>>2]|0,75562)|0;x4(f[b+8>>2]|0,f[a>>2]|0)|0;return}function Ala(a,b){a=a|0;b=b|0;b=u$a(b)|0;if((b|0?g2a(f[b+8>>2]|0,f[a+36>>2]|0)|0:0)?f[b+16>>2]|0:0){a=a+48|0;f[a>>2]=(f[a>>2]|0)+1}return}function Bla(a,b){a=a|0;b=b|0;return bP(a,0,b)|0}function Cla(a){a=a|0;zX(f[a+4>>2]|0);return}function Dla(a){a=a|0;AX(f[a+4>>2]|0);return}function Ela(a){a=a|0;HW(a,f[a+4>>2]|0);return}function Fla(a){a=a|0;if((b[130944]|0)==0?VWa(130944)|0:0){f[33758]=0;f[33759]=0;f[33760]=0;XG(135032,48056,i7a(48056)|0)}return 135032}function Gla(a){a=a|0;if((b[130952]|0)==0?VWa(130952)|0:0){f[33761]=0;f[33762]=0;f[33763]=0;XG(135044,48092,i7a(48092)|0)}return 135044}function Hla(a){a=a|0;if((b[130960]|0)==0?VWa(130960)|0:0){f[33764]=0;f[33765]=0;f[33766]=0;XG(135056,48140,i7a(48140)|0)}return 135056}function Ila(a){a=a|0;if((b[130936]|0)==0?VWa(130936)|0:0){f[33755]=0;f[33756]=0;f[33757]=0;XG(135020,48020,i7a(48020)|0)}return 135020}function Jla(a,c){a=a|0;c=c|0;var d=0;d=zZ(a+12|0,c)|0;f[d>>2]=c;if(b[a+32>>0]|0)_s(f[a+28>>2]|0,c);return}function Kla(a,b){a=a|0;b=b|0;var c=0;b=b+8|0;c=f[b>>2]|0;if(QVa(f[a+24>>2]|0,c)|0)f[b>>2]=f[(f[f[a+28>>2]>>2]|0)+(c<<2)>>2];return}function Lla(a,b){a=a|0;b=b|0;var c=0,d=0;d=dV(b)|0;c=s8(d+13|0)|0;f[c>>2]=d;f[c+4>>2]=d;f[c+8>>2]=0;c=T6a(c)|0;Ku(c|0,b|0,d+1|0)|0;f[a>>2]=c;return}function Mla(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=u;u=u+16|0;c=e;f[c>>2]=d;b=pRa(b)|0;c=H9(a,119756,c)|0;if(b|0)pRa(b)|0;u=e;return c|0}function Nla(a,b){a=a|0;b=b|0;Kla(a,nRa(f[b>>2]|0)|0);return}function Ola(a,b){a=a|0;b=b|0;Kla(a,tRa(f[b>>2]|0)|0);return}function Pla(a,c){a=a|0;c=c|0;var d=0;f[a>>2]=c;f[a+4>>2]=f[c>>2];d=(f[c+40>>2]|0)!=0;b[a+8>>0]=d&1;if(d){d=$G(c)|0;f[a+12>>2]=d}return}function Qla(a){a=a|0;GX(f[a+4>>2]|0);return}function Rla(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(g2a(a,f[b+8>>2]|0)|0)qY(b,c,d);return}function Sla(a){a=a|0;var c=0,d=0;c=b[a+11>>0]|0;if(c<<24>>24<0)d=f[a+4>>2]|0;else d=c&255;c=b[a+12+11>>0]|0;if(c<<24>>24<0)c=f[a+16>>2]|0;else c=c&255;return c+d|0}function Tla(a,b){a=a|0;b=b|0;wGa(a,vSa(f[b>>2]|0)|0);return}function Ula(a,b){a=a|0;b=b|0;xGa(a,vSa(f[b>>2]|0)|0);return}function Vla(a,b){a=a|0;b=b|0;eC(a,mSa(f[b>>2]|0)|0);return}function Wla(a,b){a=a|0;b=b|0;r7(a,b,0);q_(a+48|0,b);return}function Xla(a,b){a=a|0;b=b|0;var c=0,d=0;c=b+4|0;d=f[b>>2]|0;f[d+4>>2]=f[c>>2];f[f[c>>2]>>2]=d;a=a+8|0;f[a>>2]=(f[a>>2]|0)+-1;Cbb(b);return}function Yla(a,b){a=a|0;b=b|0;vIa(a,NRa(f[b>>2]|0)|0);return}function Zla(a,b){a=a|0;b=b|0;vIa(a,DRa(f[b>>2]|0)|0);return}function _la(a,b){a=a|0;b=b|0;vIa(a,ERa(f[b>>2]|0)|0);return}function $la(a,b){a=a|0;b=b|0;vIa(a,FRa(f[b>>2]|0)|0);return}function ama(a,b){a=a|0;b=b|0;LG(a,b+36|0);return}function bma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;Iq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function cma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;uq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function dma(a,b,c){a=a|0;b=b|0;c=c|0;b=SKa(f[a>>2]|0,b,1)|0;return gL(a,b,SKa(f[a>>2]|0,c,1)|0)|0}function ema(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0)dea();else{b=((b+-1|0)>>>5)+1|0;c=s8(b<<2)|0;f[a>>2]=c;f[a+4>>2]=0;f[a+8>>2]=b;return}}function fma(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>536870911)dea();else{c=s8(b<<3)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b<<3);return}}function gma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;hD(a,c,d);return}function hma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;pQ(a,c,d);return}function ima(a,c){a=a|0;c=c|0;var d=0,e=0;while(1){d=b[c>>0]|0;if(!(d<<24>>24)){c=1;break}e=b[a>>0]|0;if(!(e<<24>>24?e<<24>>24==d<<24>>24:0)){c=0;break}c=c+1|0;a=a+1|0}return c|0}function jma(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=f[b>>2];c=b+4|0;f[a+4>>2]=f[c>>2];d=b+8|0;f[a+8>>2]=f[d>>2];f[b>>2]=0;f[d>>2]=0;f[c>>2]=0;return}function kma(a,b){a=a|0;b=b|0;vIa(a,ORa(f[b>>2]|0)|0);return}function lma(a,b){a=a|0;b=b|0;vIa(a,PRa(f[b>>2]|0)|0);return}function mma(a,b){a=a|0;b=b|0;vIa(a,QRa(f[b>>2]|0)|0);return}function nma(a,b){a=a|0;b=b|0;vIa(a,$Ra(f[b>>2]|0)|0);return}function oma(a,b){a=a|0;b=b|0;vIa(a,aSa(f[b>>2]|0)|0);return}function pma(a){a=a|0;var c=0;c=f[a+44>>2]|0;a=f[a+32>>2]|0;Jbb(a)|0;a=(Wl(c,a)|0)+8|0;b[a>>0]=0;return}function qma(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;YZ(d,a+108|0,b);P_a(d);u=c;return}function rma(a){a=a|0;var b=0,c=0;b=s8(56)|0;x=0;ta(451,b|0);c=x;x=0;if(c&1){c=Ia()|0;Cbb(b);Ua(c|0)}else{N_(a,b);return}}function sma(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{EXa(b);b=(f[c>>2]|0)+16|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function tma(a,b){a=a|0;b=b|0;b=t_(a+172|0,b)|0;if((b|0)==(a+176|0))b=0;else b=f[b+20>>2]|0;return b|0}function uma(a,b){a=a|0;b=b|0;vIa(a,lSa(f[b>>2]|0)|0);return}function vma(a,b){a=a|0;b=b|0;vIa(a,bSa(f[b>>2]|0)|0);return}function wma(a,b){a=a|0;b=b|0;vIa(a,cSa(f[b>>2]|0)|0);return}function xma(a,b){a=a|0;b=b|0;vIa(a,dSa(f[b>>2]|0)|0);return}function yma(a,b){a=a|0;b=b|0;vIa(a,mSa(f[b>>2]|0)|0);return}function zma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;vq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Ama(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;wq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Bma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;xq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Cma(a,b){a=a|0;b=b|0;if((a|0)!=(b|0))Cy(a,f[b>>2]|0,f[b+4>>2]|0);return a|0}function Dma(a){a=a|0;var b=0;a=s8(60)|0;x=0;ta(442,a|0);b=x;x=0;if(b&1){b=Ia()|0;Cbb(a);Ua(b|0)}else return a|0;return 0}function Ema(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;b[e>>0]=c;c=$n(a,e,1)|0;u=d;return c|0}function Fma(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Gma(a,b){a=a|0;b=b|0;if(!a){b=Ea(4)|0;f[b>>2]=0;A6a(b);Pa(b|0,37840,324)}else{pc[f[(f[a>>2]|0)+24>>2]&4095](a,b);return}}function Hma(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{HAa(a,+J(+(+TNa(b))));break}case 4:{pqa(a,+J(+(+SNa(b))));break}default:hb()}return}function Ima(a){a=a|0;f[a>>2]=41792;SQa(a+72|0);SQa(a+48|0);QTa(a);return}function Jma(a){a=a|0;var b=0;b=s8(48)|0;Mea(b,f[a+44>>2]|0);return b|0}function Kma(){var a=0,b=0;b=f[33158]|0;f[33158]=132636;f[(f[33159]|0)+8>>2]=0;f[33159]=0;f[33160]=0;a=f[b+4>>2]|0;return ((a|0)==0?b:a)|0}function Lma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b+(d>>>10<<2)|0;if((c|0)==(b|0))b=0;else b=(f[e>>2]|0)+((d&1023)<<2)|0;f[a>>2]=e;f[a+4>>2]=b;return}function Mma(a,b){a=a|0;b=b|0;return Iya(a+4|0,b)|0}function Nma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=JMa(a|0,b|0,c&63|0)|0;f=I;d=SRa(0,0,c|0,d|0)|0;d=mMa(a|0,b|0,d&63|0)|0;I=f|I;return e|d|0}function Oma(a,b){a=a|0;b=b|0;vIa(a,nSa(f[b>>2]|0)|0);return}function Pma(a,b){a=a|0;b=b|0;qp(a,vSa(f[b>>2]|0)|0);return}function Qma(a,b){a=a|0;b=b|0;a=a+4|0;yPa(f[a>>2]|0,75628)|0;x4(f[b+24>>2]|0,f[a>>2]|0)|0;return}function Rma(a,b){a=a|0;b=b|0;IIa(a);f[a>>2]=44988;f[a+44>>2]=b;return}function Sma(a){a=a|0;nW(f[a+4>>2]|0);return}function Tma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=mMa(a|0,b|0,c&63|0)|0;f=I;d=SRa(0,0,c|0,d|0)|0;d=JMa(a|0,b|0,d&63|0)|0;I=f|I;return e|d|0}function Uma(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Aab(f[b>>2]|0)|0)?!(A_(b)|0):0)b=kC(a,b,0,c)|0;return b|0}function Vma(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=wUa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+12>>2]=c;f[a+16>>2]=d;Cqa(a);return a|0}function Wma(a,b){a=a|0;b=b|0;LG(a,b+8|0);return}function Xma(a,b){a=a|0;b=b|0;b=t_(a+208|0,b)|0;if((b|0)==(a+212|0))b=0;else b=f[b+20>>2]|0;return b|0}function Yma(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;c=b+4|0;d=f[b>>2]|0;f[d+4>>2]=f[c>>2];f[f[c>>2]>>2]=d;a=a+8|0;f[a>>2]=(f[a>>2]|0)+-1;Cbb(b);return}function Zma(a){a=a|0;cZ(a);return}function _ma(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{HAa(a,+L(+(+TNa(b))));break}case 4:{pqa(a,+L(+(+SNa(b))));break}default:hb()}return}function $ma(a,b){a=a|0;b=b|0;switch(f[b>>2]|0){case 3:{HAa(a,+W(+(+TNa(b))));break}case 4:{pqa(a,+W(+(+SNa(b))));break}default:hb()}return}function ana(a){a=a|0;pya(a);f[a>>2]=42136;hAa(a+16|0);f[a+80>>2]=0;f[a+84>>2]=0;DUa(a+88|0);f[a+100>>2]=0;f[a+104>>2]=0;f[a+108>>2]=0;return}function bna(a,b){a=a|0;b=b|0;if(g2a(f[a>>2]|0,f[33036]|0)|0?g2a(f[b>>2]|0,f[33037]|0)|0:0)Ca(54150,51387,706,54184);return}function cna(a){a=a|0;GY(f[a+4>>2]|0);return}function dna(a,b){a=a|0;b=b|0;vIa(a,vSa(f[b>>2]|0)|0);return}function ena(a,b){a=a|0;b=b|0;wi(a,mSa(f[b>>2]|0)|0);return}function fna(a,b){a=a|0;b=b|0;b=t_(a+184|0,b)|0;if((b|0)==(a+188|0))b=0;else b=f[b+20>>2]|0;return b|0}function gna(a,b){a=a|0;b=b|0;b=t_(a+220|0,b)|0;if((b|0)==(a+224|0))b=0;else b=f[b+20>>2]|0;return b|0}function hna(a,b){a=a|0;b=b|0;b=t_(a+196|0,b)|0;if((b|0)==(a+200|0))b=0;else b=f[b+20>>2]|0;return b|0}function ina(a,b){a=a|0;b=b|0;WMa(a+16|0,wQa(f[b>>2]|0)|0);return}function jna(a){a=a|0;var b=0;switch(a|0){case 1:{b=0;break}case 2:{b=1;break}case 4:{b=2;break}case 8:{b=3;break}case 16:{b=4;break}case 32:{b=5;break}default:hb()}return b|0}function kna(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;zq(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function lna(a,b){a=a|0;b=b|0;var c=0;c=Jbb(f[a+36>>2]|0)|0;qg(b,c,fZa(f[a+40>>2]|0)|0);return}function mna(a){a=a|0;var b=0;b=zOa(f[a+12>>2]|0,1)|0;f[a+4>>2]=b;f[a>>2]=b;f[a+8>>2]=b+24;return}function nna(a){a=a|0;BX(a,f[a+4>>2]|0);return}function ona(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=cbb(rOa(a)|0)|0;f[d>>2]=b;b=bbb(rOa(a)|0)|0;f[b>>2]=c;return a|0}function pna(){var a=0;a=s8(32)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;CNa(a);return a|0}function qna(a){a=a|0;var b=0;MGa(a);f[a>>2]=40900;b=a+184|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[a+200>>2]=1065353216;return}function rna(a,b){a=a|0;b=b|0;Ema(a,34)|0;DCa(a,b)|0;return Ema(a,34)|0}function sna(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=43856;f[a+4>>2]=b;f[a+8>>2]=c;f[a+12>>2]=d;f[a+16>>2]=a;return}function tna(a){a=a|0;var b=0;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(a|0)oc[f[(f[a>>2]|0)+4>>2]&1023](a);return}function una(a,b){a=a|0;b=b|0;HBa(f[a+4>>2]|0,b);return}function vna(a){a=a|0;var b=0;if((f[a>>2]|0?(b=f[a+4>>2]|0,b|0):0)?(b=RCa(b+12|0)|0,(f[b>>2]|0)!=(f[a>>2]|0)):0)Ca(114566,114498,108,114593);return}function wna(a,b){a=a|0;b=b|0;cD(a,NRa(f[b>>2]|0)|0);return}function xna(a,b){a=a|0;b=b|0;WMa(a+16|0,IQa(f[b>>2]|0)|0);return}function yna(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Uq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function zna(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a+104>>2]=b;c=f[a+8>>2]|0;d=f[a+4>>2]|0;e=c-d|0;f[a+108>>2]=e;if((b|0)!=0&(e|0)>(b|0))f[a+100>>2]=d+b;else f[a+100>>2]=c;return}function Ana(a){a=a|0;UY(f[a+4>>2]|0);return}function Bna(a){a=a|0;VY(f[a+4>>2]|0);return}function Cna(a,b){a=a|0;b=b|0;DCa(134008,73226)|0;ZE(a,b);DCa(134008,73230)|0;return}function Dna(a,b){a=a|0;b=b|0;var c=0;a:do if(a>>>0<4)c=1;else switch(a|0){case 4:{c=b?3:1;break a}case 8:{c=b?4:2;break a}default:hb()}while(0);return c|0}function Ena(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Xza(a,J$(a,b,c)|0,d,e)|0}function Fna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;AI(a,b);b=b+16|0}return}function Gna(a){a=a|0;f[a>>2]=43232;RNa(a+68|0);RNa(a+56|0);mRa(a);return}function Hna(a,b){a=a|0;b=b|0;var c=0;c=b+4|0;if(v2a(f[c>>2]|0)|0?(NI(b),(f[c>>2]|0)==5):0)Mv(a,b);return}function Ina(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;vc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Jna(a){a=+a;var b=0;b=(n[s>>2]=a,f[s>>2]|0);switch((b>>>23&255)<<24>>24){case 0:{b=(b&2147483647|0)==0?2:3;break}case -1:{b=(b&8388607|0)==0&1;break}default:b=4}return b|0}function Kna(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=44460;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function Lna(a){a=a|0;var b=0,c=0,d=0;b=f[a+4>>2]|0;d=f[a+8>>2]|0;c=(f[a>>2]|0)+(d>>1)|0;if(!(d&1))a=b;else a=f[(f[c>>2]|0)+b>>2]|0;oc[a&1023](c);return}function Mna(a){a=a|0;Hza(a);a=a+32|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function Nna(a,b){a=a|0;b=b|0;WMa(a+16|0,JQa(f[b>>2]|0)|0);return}function Ona(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;c=BOa(b|0,c|0,1,0)|0;b=I;if(!(b>>>0>0|(b|0)==0&c>>>0>1)?(e=(f[a+4>>2]|0)<0,g=(d&64)==0,g|e):0)return g&e|0;return 1}function Pna(a){a=a|0;VX(a,f[a+4>>2]|0);return}function Qna(a){a=a|0;O9(a);return}function Rna(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;while(1){if((c|0)==(e|0)){c=e;break}a=f[c>>2]|0;if(a>>>0<128?(d[25968+(a<<1)>>1]&b)<<16>>16:0)break;c=c+4|0}return c|0}function Sna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;BI(a,b);b=b+16|0}return}function Tna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;II(a,b);b=b+16|0}return}function Una(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;CI(a,b);b=b+16|0}return}function Vna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;JI(a,b);b=b+16|0}return}function Wna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;DI(a,b);b=b+16|0}return}function Xna(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;EI(a,b);b=b+16|0}return}function Yna(a){a=a|0;switch(a|0){case 46:case 42:case 41:case 40:case 39:case 34:case 32:case 30:case 28:case 26:case 24:case 23:case 22:case 21:case 5:case 3:case 1:{a=1;break}default:a=0}return a|0}function Zna(a,b){a=a|0;b=b|0;yJa(a);f[a>>2]=42536;f[a+44>>2]=b;return}function _na(a){a=a|0;f[a>>2]=45588;pG(a+84|0);SQa(a+64|0);aMa(a+44|0);QTa(a);return}function $na(a){a=a|0;var b=0,c=0,d=0;b=s8(68)|0;c=b;d=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));Fya(b);f[a>>2]=b;return}function aoa(a,b){a=a|0;b=b|0;if(!a)Ca(88980,88985,974,89008);else{b=ec[f[(f[a>>2]|0)+8>>2]&127](a,b,0)|0;RX(b);return b|0}return 0}function boa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;h2a(a);Sab(a+16|0);f[a>>2]=7;d=cbb(a)|0;f[d>>2]=b;a=bbb(a)|0;f[a>>2]=c;return}function coa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=LSa(a)|0;f[a+8>>2]=d;f[a+12>>2]=b;f[a+16>>2]=c;lDa(a);return a|0}function doa(a,b){a=a|0;b=b|0;WMa(a+16|0,XQa(f[b>>2]|0)|0);return}function eoa(a,b){a=a|0;b=b|0;WMa(a+16|0,PQa(f[b>>2]|0)|0);return}function foa(a,b){a=a|0;b=b|0;WMa(a+16|0,QQa(f[b>>2]|0)|0);return}function goa(a,b){a=a|0;b=b|0;var c=0;if(b>>>0>1073741823)dea();else{c=s8(b<<2)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+(b<<2);return}}function hoa(a){a=a|0;var b=0;b=a+4|0;t8(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function ioa(a){a=a|0;laa(a);return}function joa(a,c){a=a|0;c=c|0;var d=0;d=a+8|0;a=c;c=f[d>>2]|0;do{b[c>>0]=0;c=(f[d>>2]|0)+1|0;f[d>>2]=c;a=a+-1|0}while((a|0)!=0);return}function koa(a){a=a|0;var c=0;c=f[a>>2]|0;do if(c|0){f[a+4>>2]=c;if((c|0)==(a+16|0)){b[a+128>>0]=0;break}else{Cbb(c);break}}while(0);return}function loa(a){a=a|0;$Na(a);f[a>>2]=44668;lQa(a+44|0);lQa(a+64|0);f[a+88>>2]=0;f[a+92>>2]=0;f[a+96>>2]=0;return}function moa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;eJ(a,b);b=b+16|0}Rbb()}function noa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Uv(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function ooa(a){a=a|0;qZ(f[a+4>>2]|0);return}function poa(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=a+8|0;d=f[c>>2]|0;while(1){if((d|0)==(b|0))break;e=d+-1|0;f[c>>2]=e;d=e}Cbb(f[a>>2]|0);return}function qoa(a,b){a=a|0;b=b|0;spa(a,aSa(f[b>>2]|0)|0);return}function roa(a,b){a=a|0;b=b|0;WMa(a+16|0,$Qa(f[b>>2]|0)|0);return}function soa(a,b){a=a|0;b=b|0;WMa(a+16|0,aRa(f[b>>2]|0)|0);return}function toa(a,b){a=a|0;b=b|0;WMa(a+16|0,bRa(f[b>>2]|0)|0);return}function uoa(a){a=a|0;var b=0;if(!(f[a+32>>2]|0))Ca(93403,91145,388,91165);if((f[(f[a+24>>2]|0)+4>>2]|0)==5)b=5;else b=(f[(f[a+28>>2]|0)+4>>2]|0)==5?5:0;f[a+4>>2]=b;return}function voa(a){a=a|0;switch(a|0){case 0:{a=1;break}case 1:{a=2;break}case 2:{a=4;break}case 3:{a=8;break}case 4:{a=16;break}case 5:{a=32;break}default:a=1<>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function yoa(a,b,c){a=a|0;b=b|0;c=c|0;wm(a,b,c);return}function zoa(a,b,c){a=a|0;b=b|0;c=c|0;return rA(a,b,c,j7a(c)|0)|0}function Aoa(a){a=a|0;var b=0,c=0;if(a|0?(c=a+4|0,b=f[c>>2]|0,f[c>>2]=b+-1,(b|0)==0):0){oc[f[(f[a>>2]|0)+8>>2]&1023](a);_ua(a)}return}function Boa(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;n4a(b,TPa(fUa()|0,a)|0);u=c;return f[b>>2]|0}function Coa(a,b){a=a|0;b=b|0;gH(a,b+36|0);return}function Doa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=u;u=u+16|0;Lg(a,b,c,d);u=d;return}function Eoa(a){a=a|0;Faa(a);return}function Foa(a,b){a=a|0;b=b|0;spa(a,lSa(f[b>>2]|0)|0);return}function Goa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;QI(a,b);b=b+16|0}return}function Hoa(a,b){a=a|0;b=b|0;WMa(a+16|0,nRa(f[b>>2]|0)|0);return}function Ioa(a,b){a=a|0;b=b|0;WMa(a+16|0,tRa(f[b>>2]|0)|0);return}function Joa(){var a=0,b=0,c=0;a=s8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Mna(a);return a|0}function Koa(a){a=a|0;pHa(a+24|0);wya(a+12|0);zSa(a);return}function Loa(a,b){a=a|0;b=b|0;Si(a,b);return}function Moa(a){a=a|0;var b=0;if((bc[f[(f[a>>2]|0)+36>>2]&511](a)|0)==-1)a=-1;else{b=a+12|0;a=f[b>>2]|0;f[b>>2]=a+4;a=Jbb(f[a>>2]|0)|0}return a|0}function Noa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=aUa(f[a>>2]|0)|0;f[a+16>>2]=b;f[a+8>>2]=c;f[a+12>>2]=d;waa(a);return a|0}function Ooa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Vv(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function Poa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Wv(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function Qoa(a){a=a|0;var b=0,c=0;b=a+68|0;c=f[b>>2]|0;a=(f[c+4>>2]|0)-(f[c>>2]|0)|0;yp(c,0)|0;Gv(f[b>>2]|0,0)|0;return a|0}function Roa(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;$_(d,a,b);P_a(d);u=c;return}function Soa(a){a=a|0;KY(a,f[a+4>>2]|0);return}function Toa(a){a=a|0;var b=0;switch(a<<24>>24|0){case 105:{b=1;break}case 106:{b=2;break}case 102:{b=3;break}case 100:{b=4;break}case 118:{b=0;break}default:hb()}return b|0}function Uoa(a,b){a=a|0;b=b|0;I4(a,aSa(f[b>>2]|0)|0);return}function Voa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;WI(a,b);b=b+16|0}return}function Woa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;XI(a,b);b=b+16|0}return}function Xoa(a){a=a|0;f[a>>2]=43656;SQa(a+68|0);zSa(a+56|0);mRa(a);return}function Yoa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=c+8|0;tc[f[(f[b>>2]|0)+16>>2]&15](a,b,f[c>>2]|0,f[c+4>>2]|0,0,d);return}function Zoa(a,b){a=a|0;b=b|0;GVa(f[a>>2]|0,b)|0;f[(f[a+28>>2]|0)+-4>>2]=b;return b|0}function _oa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Xq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function $oa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Yq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function apa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Zq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function bpa(a,b){a=a|0;b=b|0;var c=0,d=0;c=Fab(b)|0;d=a+4096|0;b=f[d>>2]|0;if((a+4096-b|0)>>>0>>0)b=Kc(c)|0;else f[d>>2]=b+c;return b|0}function cpa(a){a=a|0;JZ(f[a+4>>2]|0);return}function dpa(a){a=a|0;iba(a);return}function epa(a,b){a=a|0;b=b|0;I4(a,lSa(f[b>>2]|0)|0);return}function fpa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;YI(a,b);b=b+16|0}return}function gpa(a,b){a=a|0;b=b|0;WMa(a+16|0,NRa(f[b>>2]|0)|0);return}function hpa(a,b){a=a|0;b=b|0;WMa(a+16|0,DRa(f[b>>2]|0)|0);return}function ipa(a,b){a=a|0;b=b|0;WMa(a+16|0,ERa(f[b>>2]|0)|0);return}function jpa(a,b){a=a|0;b=b|0;WMa(a+16|0,FRa(f[b>>2]|0)|0);return}function kpa(a,b){a=a|0;b=b|0;b=tRa(f[b>>2]|0)|0;dTa(f[a+24>>2]|0,f[b+8>>2]|0);return}function lpa(a,b){a=a|0;b=b|0;JC(a,NRa(f[b>>2]|0)|0);return}function mpa(){var a=0;a=u;u=u+16|0;Q_a();x=0;ia(52,a|0,80523)|0;a=x;x=0;if(a&1){Ia()|0;lCa()}else lCa()}function npa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return Xv(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function opa(a,b){a=a|0;b=b|0;var c=0;c=$G(b)|0;b=nT(f[a+44>>2]|0,b)|0;f[b>>2]=c;return}function ppa(a){a=a|0;var b=0,c=0;f[a>>2]=40780;c=a+48|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){xAa(b);Cbb(b)}QTa(a);return}function qpa(a){a=a|0;var b=0;b=s8(52)|0;x=0;ua(291,b|0,f[a+44>>2]|0);a=x;x=0;if(a&1){a=Ia()|0;Cbb(b);Ua(a|0)}else return b|0;return 0}function rpa(a){a=a|0;var b=0,c=0,d=0;b=s8(44)|0;c=b;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));jSa(b);N_(a,b);return}function spa(a,b){a=a|0;b=b|0;b=b+8|0;if(Qab(f[b>>2]|0)|0)a8(a+24|0,b);return}function tpa(a,c){a=a|0;c=c|0;var d=0;d=a+4|0;a=c;c=f[d>>2]|0;do{b[c>>0]=0;c=(f[d>>2]|0)+1|0;f[d>>2]=c;a=a+-1|0}while((a|0)!=0);return}function upa(a){a=a|0;uba(a);return}function vpa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;h2a(a);n4a(a+16|0,0);f[a>>2]=6;d=bbb(a)|0;f[d>>2]=b;a=cbb(a)|0;f[a>>2]=c;return}function wpa(a,b){a=a|0;b=b|0;gH(a,b+8|0);return}function xpa(a,b){a=a|0;b=b|0;WMa(a+16|0,ORa(f[b>>2]|0)|0);return}function ypa(a,b){a=a|0;b=b|0;WMa(a+16|0,PRa(f[b>>2]|0)|0);return}function zpa(a,b){a=a|0;b=b|0;WMa(a+16|0,QRa(f[b>>2]|0)|0);return}function Apa(a,b){a=a|0;b=b|0;WMa(a+16|0,$Ra(f[b>>2]|0)|0);return}function Bpa(a,b){a=a|0;b=b|0;WMa(a+16|0,aSa(f[b>>2]|0)|0);return}function Cpa(a,b){a=a|0;b=b|0;AMa(a,wQa(f[b>>2]|0)|0);return}function Dpa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=c;c=b+40|0;f[a+8>>2]=f[c>>2];if(!(f[c>>2]|0))Ca(103214,103100,84,103228);else return}function Epa(a,b){a=a|0;b=b|0;var c=0;c=b+20|0;vn(a,b,b+24|0,vn(a,b,c,0,0)|0,c)|0;return}function Fpa(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1)a=f[26992+(a<<24>>24<<2)>>2]&255;b[c>>0]=a;c=c+1|0}return d|0}function Gpa(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;if(a<<24>>24>-1)a=f[24688+(a<<24>>24<<2)>>2]&255;b[c>>0]=a;c=c+1|0}return d|0}function Hpa(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;d=b+4|0;c=b;Sab(d);n4a(c,0);boa(a,f[d>>2]|0,f[c>>2]|0);u=b;return}function Ipa(a,b,c){a=a|0;b=b|0;c=c|0;b=vwa(f[a>>2]|0,b)|0;faa(b+12|0,c);tt(b);return b|0}function Jpa(a){a=a|0;var b=0;b=a+4|0;f[b>>2]=1;if(!(((f[(f[a+12>>2]|0)+4>>2]|0)!=5?(f[(f[a+16>>2]|0)+4>>2]|0)!=5:0)?(f[(f[a+20>>2]|0)+4>>2]|0)!=5:0))f[b>>2]=5;return}function Kpa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=cUa(a)|0;f[a+8>>2]=b;f[a+12>>2]=c;f[a+16>>2]=d;SY(a);return a|0}function Lpa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;bJ(a,b);b=b+16|0}return}function Mpa(a,b){a=a|0;b=b|0;WMa(a+16|0,lSa(f[b>>2]|0)|0);return}function Npa(a,b){a=a|0;b=b|0;WMa(a+16|0,bSa(f[b>>2]|0)|0);return}function Opa(a,b){a=a|0;b=b|0;WMa(a+16|0,cSa(f[b>>2]|0)|0);return}function Ppa(a,b){a=a|0;b=b|0;WMa(a+16|0,dSa(f[b>>2]|0)|0);return}function Qpa(a,b){a=a|0;b=b|0;WMa(a+16|0,mSa(f[b>>2]|0)|0);return}function Rpa(a,b){a=a|0;b=b|0;AMa(a,IQa(f[b>>2]|0)|0);return}function Spa(a,b){a=a|0;b=b|0;b=pu(b,f[a+48>>2]|0)|0;GVa(f[a+16>>2]|0,b)|0;return}function Tpa(a,c){a=a|0;c=c|0;var d=0;while(1){d=b[a>>0]|0;if(!(d<<24>>24)){a=0;break}if(d<<24>>24==c<<24>>24){a=1;break}else a=a+1|0}return a|0}function Upa(a){a=a|0;var b=0;switch(a|0){case 1:{b=105;break}case 2:{b=106;break}case 3:{b=102;break}case 4:{b=100;break}case 0:{b=118;break}default:hb()}return b|0}function Vpa(a,b){a=a|0;b=b|0;$9(a,$Ra(f[b>>2]|0)|0);return}function Wpa(a,b){a=a|0;b=b|0;fQa(a+16|0,wQa(f[b>>2]|0)|0);return}function Xpa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;xw(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function Ypa(a,b){a=a|0;b=b|0;Loa(a,b);return}function Zpa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1;return}function _pa(a,b){a=a|0;b=b|0;WMa(a+16|0,nSa(f[b>>2]|0)|0);return}function $pa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;iL(a,b);b=b+16|0}return}function aqa(a,b){a=a|0;b=b|0;AMa(a,JQa(f[b>>2]|0)|0);return}function bqa(a,b){a=a|0;b=b|0;b=(lSa(f[b>>2]|0)|0)+12|0;RW(a,f[b>>2]|0);return}function cqa(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;f[c>>2]=f[b>>2];f[c+4>>2]=f[b+4>>2];f[c+8>>2]=f[b+8>>2];f[c+12>>2]=f[b+12>>2];f[a+4>>2]=f[c>>2];return a|0}function dqa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;VZ(a+8|0,c);_0a(a+32|0,b);return}function eqa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=44504;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function fqa(a,b){a=a|0;b=b|0;var c=0;c=f[a>>2]|0;if((f[a+4>>2]|0)-c>>2>>>0>b>>>0)return c+(b<<2)|0;else cea();return 0}function gqa(a,b){a=a|0;b=b|0;b=(dSa(f[b>>2]|0)|0)+8|0;H3(a,f[b>>2]|0);return}function hqa(a,b){a=a|0;b=b|0;b=tRa(f[b>>2]|0)|0;KTa(f[a+104>>2]|0,f[b+8>>2]|0);return}function iqa(a,b){a=a|0;b=b|0;fQa(a+16|0,IQa(f[b>>2]|0)|0);return}function jqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Mq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function kqa(a,b){a=a|0;b=b|0;a=lE(a,b)|0;if(!a)a=0;else a=f[a+12>>2]|0;return a|0}function lqa(a){a=a|0;var b=0;switch(a|0){case 1:{b=0;break}case 3:{b=2;break}case 4:{b=1;break}case 2:{b=8;break}case 0:{b=9;break}default:hb()}return b|0}function mqa(a){a=a|0;var b=0;b=a+4|0;haa(f[b>>2]|0);f[a+8>>2]=0;f[a>>2]=b;f[b>>2]=0;return}function nqa(a,b){a=a|0;b=b|0;var c=0;D7(a);f[a>>2]=2;c=kFa()|0;f[a+8>>2]=c;CHa(c,b);return a|0}function oqa(a,b){a=a|0;b=b|0;faa((S$a(f[(f[a+84>>2]|0)+104>>2]|0)|0)+12|0,b);o0a(a);return}function pqa(a,b){a=a|0;b=+b;var c=0,d=0;c=u;u=u+16|0;d=c;p[d>>3]=b;f[a>>2]=4;d=E$a(d)|0;a=a+8|0;f[a>>2]=d;f[a+4>>2]=I;u=c;return}function qqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;hJ(a,b);b=b+16|0}return}function rqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;iJ(a,b);b=b+16|0}return}function sqa(a,b){a=a|0;b=b|0;AMa(a,XQa(f[b>>2]|0)|0);return}function tqa(a,b){a=a|0;b=b|0;AMa(a,PQa(f[b>>2]|0)|0);return}function uqa(a,b){a=a|0;b=b|0;AMa(a,QQa(f[b>>2]|0)|0);return}function vqa(a,b){a=a|0;b=b|0;nOa(a,wQa(f[b>>2]|0)|0);return}function wqa(a){a=a|0;var b=0;switch(a|0){case 0:{b=1;break}case 1:{b=4;break}case 2:{b=3;break}case 8:{b=2;break}case 9:{b=0;break}default:hb()}return b|0}function xqa(a,b){a=a|0;b=b|0;b=Um(b,f[a+48>>2]|0)|0;GVa(f[a+16>>2]|0,b)|0;return}function yqa(a,b){a=a|0;b=b|0;var c=0;c=b+32|0;vn(a,b,b+28|0,vn(a,b,c,0,0)|0,c)|0;return}function zqa(a,b){a=a|0;b=b|0;if(oDa(a,b)|0)return f[(f[a+8>>2]|0)+(b<<2)>>2]|0;else{b=Ea(4)|0;Cab(b);Pa(b|0,39536,426)}return 0}function Aqa(a,b){a=a|0;b=b|0;WMa(a+16|0,vSa(f[b>>2]|0)|0);return}function Bqa(a,b){a=a|0;b=b|0;fQa(a+16|0,JQa(f[b>>2]|0)|0);return}function Cqa(a){a=a|0;var b=0;b=f[a+16>>2]|0;if((b|0)!=0?(f[b+4>>2]|0)!=5:0){b=f[a+12>>2]|0;if(!b)b=0;else b=f[b+4>>2]|0}else b=5;f[a+4>>2]=b;return}function Dqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return _v(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function Eqa(a){a=a|0;a=L_a(a)|0;if((a|0)!=0?v2a(f[(f[a+12>>2]|0)+4>>2]|0)|0:0)a=1;else a=0;return a|0}function Fqa(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;while(1){if((c|0)==(d|0))break;a=b[c>>0]|0;b[f>>0]=a<<24>>24>-1?a:e;f=f+1|0;c=c+1|0}return d|0}function Gqa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=bbb(UPa(a)|0)|0;f[d>>2]=b;b=cbb(UPa(a)|0)|0;f[b>>2]=c;return a|0}function Hqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=kVa(f[a>>2]|0)|0;f[a+8>>2]=b;f[a+12>>2]=c;f[a+16>>2]=d;NI(a);return a|0}function Iqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;mJ(a,b);b=b+16|0}return}function Jqa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;nJ(a,b);b=b+16|0}return}function Kqa(a,b){a=a|0;b=b|0;nOa(a,IQa(f[b>>2]|0)|0);return}function Lqa(a,b){a=a|0;b=b|0;qZa(a);NVa(a+8|0,b);Bab(a+24|0);f[a+28>>2]=0;f[a+32>>2]=0;f[a+4>>2]=5;return}function Mqa(a){a=a|0;K0(a+40|0);CKa(a+12|0);return}function Nqa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rXa(a);f[a+24>>2]=b;f[a+28>>2]=c;f[a+32>>2]=d;return}function Oqa(a){a=a|0;f[a>>2]=42416;RNa(a+56|0);RNa(a+44|0);QTa(a);return}function Pqa(a){a=a|0;ZDa(a+48|0);vxa(a+36|0);CVa(a);return}function Qqa(a,b){a=a|0;b=b|0;var c=0;c=b+24|0;vn(a,b,b+28|0,vn(a,b,c,0,0)|0,c)|0;return}function Rqa(a,b){a=a|0;b=b|0;var c=0;c=b+12|0;vn(a,b,b+16|0,vn(a,b,c,0,0)|0,c)|0;return}function Sqa(a,b){a=a|0;b=b|0;if(Dab(f[a>>2]|0)|0){taa(f[a+8>>2]|0,b);return a|0}else Ca(53407,75335,414,65709);return 0}function Tqa(a,b){a=a|0;b=b|0;AMa(a,$Qa(f[b>>2]|0)|0);return}function Uqa(a,b){a=a|0;b=b|0;AMa(a,aRa(f[b>>2]|0)|0);return}function Vqa(a,b){a=a|0;b=b|0;AMa(a,bRa(f[b>>2]|0)|0);return}function Wqa(a,b){a=a|0;b=b|0;fXa(a,b);sG(a+-16+16|0,b)}function Xqa(a,b){a=a|0;b=b|0;fQa(a+16|0,XQa(f[b>>2]|0)|0);return}function Yqa(a,b){a=a|0;b=b|0;fQa(a+16|0,PQa(f[b>>2]|0)|0);return}function Zqa(a,b){a=a|0;b=b|0;fQa(a+16|0,QQa(f[b>>2]|0)|0);return}function _qa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;Aw(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function $qa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;zw(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function ara(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;return $v(e,b,c,d,Jbb(f[a+32>>2]|0)|0)|0}function bra(a,b,c){a=a|0;b=b|0;c=c|0;f[a+76>>2]=b;Efa(a+80|0,c)|0;return}function cra(a,b){a=a|0;b=b|0;var c=0;c=(Hr(a,f[b+28>>2]|0)|0)+2|0;return c+(JJa(a,f[b+32>>2]|0)|0)|0}function dra(a){a=a|0;s_(f[a+4>>2]|0);return}function era(a,b){a=a|0;b=b|0;b=lN(a,b)|0;return b|0}function fra(a){a=a|0;var b=0;b=f[a+4>>2]|0;if((b|0)!=5?!(t6a(b)|0):0){a=h[a+8>>0]|0;a=(Ixa(b)|0)>>>0>a>>>0}else a=0;return a|0}function gra(a){a=a|0;sVa(a);a=a+36|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function hra(a,b){a=a|0;b=b|0;rI(a,b+36|0);return}function ira(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;qJ(a,b);b=b+16|0}return}function jra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;rJ(a,b);b=b+16|0}return}function kra(a,b){a=a|0;b=b|0;nOa(a,JQa(f[b>>2]|0)|0);return}function lra(a,b){a=a|0;b=b|0;gRa(a,wQa(f[b>>2]|0)|0);return}function mra(a,b){a=a|0;b=b|0;return (O7(a,b)|0)!=0|0}function nra(a){a=a|0;S4(a);d0(a+12|0);return}function ora(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0)dea();else{c=s8(b)|0;f[a+4>>2]=c;f[a>>2]=c;f[a+8>>2]=c+b;return}}function pra(a){a=a|0;if(!a){a=Ea(4)|0;f[a>>2]=0;A6a(a);Pa(a|0,37840,324)}else return bc[f[(f[a>>2]|0)+24>>2]&511](a)|0;return 0}function qra(a,b){a=a|0;b=b|0;MH(a,b+36|0);return}function rra(a,b){a=a|0;b=b|0;OOa(a+16|0,wQa(f[b>>2]|0)|0);return}function sra(a,b){a=a|0;b=b|0;fRa(a+16|0,wQa(f[b>>2]|0)|0);return}function tra(a,b){a=a|0;b=b|0;AMa(a,nRa(f[b>>2]|0)|0);return}function ura(a,b){a=a|0;b=b|0;AMa(a,tRa(f[b>>2]|0)|0);return}function vra(a){a=a|0;var b=0,c=0;c=a+40|0;b=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));f[c>>2]=1065353216;return}function wra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Cw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function xra(a){a=a|0;cOa(a);a=a+36|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function yra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;xJ(a,b);b=b+16|0}return}function zra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;yJ(a,b);b=b+16|0}return}function Ara(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;zJ(a,b);b=b+16|0}return}function Bra(a,b){a=a|0;b=b|0;b=($Qa(f[b>>2]|0)|0)+4|0;ITa(f[b>>2]|0);return}function Cra(a,b){a=a|0;b=b|0;b=(aRa(f[b>>2]|0)|0)+4|0;JTa(f[b>>2]|0);return}function Dra(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;AJ(a,b);b=b+16|0}return}function Era(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;BJ(a,b);b=b+16|0}return}function Fra(a,b){a=a|0;b=b|0;nOa(a,XQa(f[b>>2]|0)|0);return}function Gra(a,b){a=a|0;b=b|0;nOa(a,PQa(f[b>>2]|0)|0);return}function Hra(a,b){a=a|0;b=b|0;nOa(a,QQa(f[b>>2]|0)|0);return}function Ira(a,b){a=a|0;b=b|0;gRa(a,IQa(f[b>>2]|0)|0);return}function Jra(a,b){a=a|0;b=b|0;fQa(a+16|0,$Qa(f[b>>2]|0)|0);return}function Kra(a,b){a=a|0;b=b|0;fQa(a+16|0,aRa(f[b>>2]|0)|0);return}function Lra(a,b){a=a|0;b=b|0;fQa(a+16|0,bRa(f[b>>2]|0)|0);return}function Mra(a,b){a=a|0;b=b|0;b=b+36|0;JK(a+44|0,b);vK(a+16|0,b);return}function Nra(){var a=0;f[32781]=0;f[32780]=49820;f[32782]=46;f[32783]=44;f[32784]=0;f[32785]=0;f[32786]=0;a=0;while(1){if((a|0)==3)break;f[131136+(a<<2)>>2]=0;a=a+1|0}return}function Ora(){var a=0;f[32775]=0;f[32774]=49780;b[131104]=46;b[131105]=44;f[32777]=0;f[32778]=0;f[32779]=0;a=0;while(1){if((a|0)==3)break;f[131108+(a<<2)>>2]=0;a=a+1|0}return}function Pra(a){a=a|0;f[a>>2]=47064;ika(a+4|0);a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function Qra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=0;while(1){if((b|0)==(c|0))break;d=(f[b>>2]|0)+(a<<4)|0;e=d&-268435456;a=(e>>>24|e)^d;b=b+4|0}return a|0}function Rra(a,c,d,e,f,g){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;g=uT(a,c,d,c,e,f,g)|0;b[g+20>>0]=1;return g|0}function Sra(a,b){a=a|0;b=b|0;OOa(a+16|0,IQa(f[b>>2]|0)|0);return}function Tra(a,b){a=a|0;b=b|0;fRa(a+16|0,IQa(f[b>>2]|0)|0);return}function Ura(a,b){a=a|0;b=b|0;Qs(a,IQa(f[b>>2]|0)|0);return}function Vra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Dw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Wra(a){a=a|0;fKa(a);f[a>>2]=42416;DUa(a+44|0);DUa(a+56|0);return}function Xra(a){a=a|0;f[a>>2]=47e3;ika(a+4|0);a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function Yra(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a=0;while(1){if((c|0)==(d|0))break;e=(a<<4)+(b[c>>0]|0)|0;f=e&-268435456;a=(f>>>24|f)^e;c=c+1|0}return a|0}function Zra(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=s8(24)|0;GLa(d,3);n6(d,a);f[d+4>>2]=b;n6(d,c);return d|0}function _ra(a,b){a=a|0;b=b|0;wI(a,b+36|0);return}function $ra(a,b){a=a|0;b=b|0;b=(ERa(f[b>>2]|0)|0)+8|0;Oxa(a,f[b>>2]|0);return}function asa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;EJ(a,b);b=b+16|0}return}function bsa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;FJ(a,b);b=b+16|0}return}function csa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;GJ(a,b);b=b+16|0}return}function dsa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;JJ(a,b);b=b+16|0}return}function esa(a,b){a=a|0;b=b|0;gRa(a,JQa(f[b>>2]|0)|0);return}function fsa(a,b){a=a|0;b=b|0;fQa(a+16|0,nRa(f[b>>2]|0)|0);return}function gsa(a,b){a=a|0;b=b|0;fQa(a+16|0,tRa(f[b>>2]|0)|0);return}function hsa(a,b){a=a|0;b=b|0;Vf(a,b);return}function isa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=f[a+44>>2]|0;Nw(e,b,c,d,Jbb(f[a+32>>2]|0)|0);return}function jsa(a,c,d){a=a|0;c=c|0;d=d|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=a&7|48;a=JMa(a|0,c|0,3)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function ksa(a,b,c){a=a|0;b=b|0;c=c|0;return XD(a,f[b>>2]|0,c)|0}function lsa(a,b,c){a=a|0;b=b|0;c=c|0;return dp(a,f[b>>2]|0,c)|0}function msa(a){a=a|0;var c=0,d=0;c=b[a+11>>0]|0;d=c<<24>>24<0;return JH(d?f[a>>2]|0:a,d?f[a+4>>2]|0:c&255)|0}function nsa(a,b){a=a|0;b=b|0;OOa(a+16|0,JQa(f[b>>2]|0)|0);return}function osa(a,b){a=a|0;b=b|0;fRa(a+16|0,JQa(f[b>>2]|0)|0);return}function psa(a,b){a=a|0;b=b|0;AMa(a,NRa(f[b>>2]|0)|0);return}function qsa(a,b){a=a|0;b=b|0;AMa(a,DRa(f[b>>2]|0)|0);return}function rsa(a,b){a=a|0;b=b|0;AMa(a,ERa(f[b>>2]|0)|0);return}function ssa(a,b){a=a|0;b=b|0;AMa(a,FRa(f[b>>2]|0)|0);return}function tsa(a,b){a=a|0;b=b|0;nOa(a,$Qa(f[b>>2]|0)|0);return}function usa(a,b){a=a|0;b=b|0;nOa(a,aRa(f[b>>2]|0)|0);return}function vsa(a,b){a=a|0;b=b|0;nOa(a,bRa(f[b>>2]|0)|0);return}function wsa(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;c=b+4|0;d=b;f[d>>2]=f[33152];f[c>>2]=f[d>>2];nXa(a,c);u=b;return}function xsa(a,b){a=a|0;b=b|0;n4a(f[a>>2]|0,b);f[(f[a+28>>2]|0)+-4>>2]=b;return}function ysa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;B4(a,b);f[a+12>>2]=c;f[a+16>>2]=d;return}function zsa(a){a=a|0;xda(a);return}function Asa(a,b,c){a=a|0;b=b|0;c=c|0;a=jTa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+12>>2]=c;oWa(a);return a|0}function Bsa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;b=b+8|0;c=(f[b>>2]|0)+-8|0;e=c;d=f[e+4>>2]|0;f[a>>2]=f[e>>2];f[a+4>>2]=d;f[b>>2]=c;return}function Csa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;KJ(a,b);b=b+16|0}return}function Dsa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;LJ(a,b);b=b+16|0}return}function Esa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;MJ(a,b);b=b+16|0}return}function Fsa(a,b){a=a|0;b=b|0;gRa(a,XQa(f[b>>2]|0)|0);return}function Gsa(a,b){a=a|0;b=b|0;gRa(a,PQa(f[b>>2]|0)|0);return}function Hsa(a,b){a=a|0;b=b|0;gRa(a,QQa(f[b>>2]|0)|0);return}function Isa(a,b){a=a|0;b=b|0;return dI(a,b,j7a(b)|0)|0}function Jsa(a){a=a|0;var b=0,c=0,d=0;b=u;u=u+16|0;d=b+4|0;c=b;n4a(d,0);n4a(c,0);vpa(a,f[d>>2]|0,f[c>>2]|0);u=b;return}function Ksa(a,b){a=a|0;b=b|0;wQa(f[b>>2]|0)|0;HVa(a);return}function Lsa(a,b){a=a|0;b=b|0;OOa(a+16|0,XQa(f[b>>2]|0)|0);return}function Msa(a,b){a=a|0;b=b|0;OOa(a+16|0,PQa(f[b>>2]|0)|0);return}function Nsa(a,b){a=a|0;b=b|0;OOa(a+16|0,QQa(f[b>>2]|0)|0);return}function Osa(a,b){a=a|0;b=b|0;fRa(a+16|0,XQa(f[b>>2]|0)|0);return}function Psa(a,b){a=a|0;b=b|0;fRa(a+16|0,PQa(f[b>>2]|0)|0);return}function Qsa(a,b){a=a|0;b=b|0;fRa(a+16|0,QQa(f[b>>2]|0)|0);return}function Rsa(a,b){a=a|0;b=b|0;AMa(a,ORa(f[b>>2]|0)|0);return}function Ssa(a,b){a=a|0;b=b|0;AMa(a,PRa(f[b>>2]|0)|0);return}function Tsa(a,b){a=a|0;b=b|0;AMa(a,QRa(f[b>>2]|0)|0);return}function Usa(a,b){a=a|0;b=b|0;AMa(a,$Ra(f[b>>2]|0)|0);return}function Vsa(a,b){a=a|0;b=b|0;AMa(a,aSa(f[b>>2]|0)|0);return}function Wsa(a,b){a=a|0;b=b|0;nOa(a,nRa(f[b>>2]|0)|0);return}function Xsa(a,b){a=a|0;b=b|0;nOa(a,tRa(f[b>>2]|0)|0);return}function Ysa(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=c;_0a(a+4|0,c);d=f[d>>2]|0;f[a+8>>2]=d;d=(Jbb(d)|0)==0&1;b[a+12>>0]=d;return}function Zsa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Gw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function _sa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Hw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function $sa(a,c){a=a|0;c=c|0;rq(a,c);if(Nab(f[c>>2]|0)|0)b[a+26>>0]=1;return I0(a)|0}function ata(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=f[d>>2]|0;a=(f[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;Ku(e|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a;return c|0}function bta(a,b){a=a|0;b=b|0;return (P5(a,b)|0)!=0|0}function cta(a){a=a|0;Cda(a);return}function dta(a){a=a|0;Dda(a);return}function eta(a){a=a|0;Eda(a);return}function fta(a){a=a|0;Fda(a);return}function gta(a){a=a|0;Gda(a);return}function hta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128)a=f[26992+(a<<2)>>2]|0;f[b>>2]=a;b=b+4|0}return c|0}function ita(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;a=f[b>>2]|0;if(a>>>0<128)a=f[24688+(a<<2)>>2]|0;f[b>>2]=a;b=b+4|0}return c|0}function jta(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)>256){V$a();b=50276}else{N$a();b=50272}f[a>>2]=c;f[a+4>>2]=b;return}function kta(a,b){a=a|0;b=b|0;MH(a,b+8|0);return}function lta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;XJ(a,b);b=b+16|0}return}function mta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;PJ(a,b);b=b+16|0}return}function nta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;QJ(a,b);b=b+16|0}return}function ota(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;RJ(a,b);b=b+16|0}return}function pta(a,b){a=a|0;b=b|0;b=(tRa(f[b>>2]|0)|0)+8|0;ux(a,f[b>>2]|0);return}function qta(a,b){a=a|0;b=b|0;b=(tRa(f[b>>2]|0)|0)+8|0;Nfa(a,f[b>>2]|0);return}function rta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;SJ(a,b);b=b+16|0}return}function sta(a,b){a=a|0;b=b|0;fQa(a+16|0,NRa(f[b>>2]|0)|0);return}function tta(a,b){a=a|0;b=b|0;fQa(a+16|0,DRa(f[b>>2]|0)|0);return}function uta(a,b){a=a|0;b=b|0;fQa(a+16|0,ERa(f[b>>2]|0)|0);return}function vta(a,b){a=a|0;b=b|0;fQa(a+16|0,FRa(f[b>>2]|0)|0);return}function wta(){i8a();S7a();P7a();M7a();K7a();I7a();A7a();z7a();return}function xta(a){a=a|0;var b=0;b=f[a+16>>2]|0;if((a|0)!=(b|0)){if(b|0)oc[f[(f[b>>2]|0)+20>>2]&1023](b)}else oc[f[(f[b>>2]|0)+16>>2]&1023](b);return}function yta(a,b){a=a|0;b=b|0;UH(a,b,j7a(b)|0);return}function zta(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==107459?a+4|0:0)|0}function Ata(a,b){a=a|0;b=b|0;IQa(f[b>>2]|0)|0;HVa(a);return}function Bta(a,b){a=a|0;b=b|0;AMa(a,lSa(f[b>>2]|0)|0);return}function Cta(a,b){a=a|0;b=b|0;AMa(a,bSa(f[b>>2]|0)|0);return}function Dta(a,b){a=a|0;b=b|0;AMa(a,cSa(f[b>>2]|0)|0);return}function Eta(a,b){a=a|0;b=b|0;AMa(a,dSa(f[b>>2]|0)|0);return}function Fta(a,b){a=a|0;b=b|0;AMa(a,mSa(f[b>>2]|0)|0);return}function Gta(a,b){a=a|0;b=b|0;gRa(a,$Qa(f[b>>2]|0)|0);return}function Hta(a,b){a=a|0;b=b|0;gRa(a,aRa(f[b>>2]|0)|0);return}function Ita(a,b){a=a|0;b=b|0;gRa(a,bRa(f[b>>2]|0)|0);return}function Jta(a){a=a|0;a=a>>>1|a;a=a>>>2|a;a=a>>>4|a;a=a>>>8|a;a=a>>>16|a;if(!a)a=32;else{a=23904+((X(a,130329821)|0)>>>27)|0;a=h[a>>0]|0}return a|0}function Kta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Tq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Lta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Rq(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Mta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Iw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Nta(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Jw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Ota(a){a=a|0;var b=0;b=f[32837]|0;do{f[b>>2]=0;b=(f[32837]|0)+4|0;f[32837]=b;a=a+-1|0}while((a|0)!=0);return}function Pta(a,b){a=a|0;b=b|0;OOa(a+16|0,$Qa(f[b>>2]|0)|0);return}function Qta(a,b){a=a|0;b=b|0;OOa(a+16|0,aRa(f[b>>2]|0)|0);return}function Rta(a,b){a=a|0;b=b|0;OOa(a+16|0,bRa(f[b>>2]|0)|0);return}function Sta(a,b){a=a|0;b=b|0;fRa(a+16|0,$Qa(f[b>>2]|0)|0);return}function Tta(a,b){a=a|0;b=b|0;fRa(a+16|0,aRa(f[b>>2]|0)|0);return}function Uta(a,b){a=a|0;b=b|0;fRa(a+16|0,bRa(f[b>>2]|0)|0);return}function Vta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;$J(a,b);b=b+16|0}return}function Wta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;YJ(a,b);b=b+16|0}return}function Xta(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;ZJ(a,b);b=b+16|0}return}function Yta(a,b){a=a|0;b=b|0;fQa(a+16|0,ORa(f[b>>2]|0)|0);return}function Zta(a,b){a=a|0;b=b|0;fQa(a+16|0,PRa(f[b>>2]|0)|0);return}function _ta(a,b){a=a|0;b=b|0;fQa(a+16|0,QRa(f[b>>2]|0)|0);return}function $ta(a,b){a=a|0;b=b|0;fQa(a+16|0,$Ra(f[b>>2]|0)|0);return}function aua(a,b){a=a|0;b=b|0;fQa(a+16|0,aSa(f[b>>2]|0)|0);return}function bua(a){a=a|0;f[a>>2]=42616;Eoa(a+44|0);QTa(a);return}function cua(a,b){a=a|0;b=b|0;var c=0;c=(JJa(a,f[b+12>>2]|0)|0)+1|0;return c+(JJa(a,f[b+16>>2]|0)|0)|0}function dua(a,b){a=a|0;b=b|0;return (hX(a+44|0,b)|0)!=(a+48|0)|0}function eua(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;n4a(b,nqa(fUa()|0,a)|0);u=c;return f[b>>2]|0}function fua(a,b){a=a|0;b=b|0;JQa(f[b>>2]|0)|0;HVa(a);return}function gua(a,b){a=a|0;b=b|0;b=(cSa(f[b>>2]|0)|0)+8|0;gVa(a,f[b>>2]|0);return}function hua(a,b){a=a|0;b=b|0;OD(a,wQa(f[b>>2]|0)|0);return}function iua(a,b){a=a|0;b=b|0;AMa(a,nSa(f[b>>2]|0)|0);return}function jua(a,b){a=a|0;b=b|0;nOa(a,NRa(f[b>>2]|0)|0);return}function kua(a,b){a=a|0;b=b|0;nOa(a,DRa(f[b>>2]|0)|0);return}function lua(a,b){a=a|0;b=b|0;nOa(a,ERa(f[b>>2]|0)|0);return}function mua(a,b){a=a|0;b=b|0;nOa(a,FRa(f[b>>2]|0)|0);return}function nua(a,b){a=a|0;b=b|0;gRa(a,nRa(f[b>>2]|0)|0);return}function oua(a,b){a=a|0;b=b|0;gRa(a,tRa(f[b>>2]|0)|0);return}function pua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Kw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function qua(a){a=a|0;G$(f[a+4>>2]|0);return}function rua(a){a=a|0;H$(f[a+4>>2]|0);return}function sua(a,b){a=a|0;b=b|0;OOa(a+16|0,nRa(f[b>>2]|0)|0);return}function tua(a,b){a=a|0;b=b|0;OOa(a+16|0,tRa(f[b>>2]|0)|0);return}function uua(a,b){a=a|0;b=b|0;fRa(a+16|0,nRa(f[b>>2]|0)|0);return}function vua(a,b){a=a|0;b=b|0;fRa(a+16|0,tRa(f[b>>2]|0)|0);return}function wua(a,b){a=a|0;b=b|0;IQa(f[b>>2]|0)|0;ZZa(a);return}function xua(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;aK(a,b);b=b+16|0}return}function yua(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;bK(a,b);b=b+16|0}return}function zua(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;cK(a,b);b=b+16|0}return}function Aua(a,b){a=a|0;b=b|0;fQa(a+16|0,lSa(f[b>>2]|0)|0);return}function Bua(a,b){a=a|0;b=b|0;fQa(a+16|0,bSa(f[b>>2]|0)|0);return}function Cua(a,b){a=a|0;b=b|0;fQa(a+16|0,cSa(f[b>>2]|0)|0);return}function Dua(a,b){a=a|0;b=b|0;fQa(a+16|0,dSa(f[b>>2]|0)|0);return}function Eua(a,b){a=a|0;b=b|0;fQa(a+16|0,mSa(f[b>>2]|0)|0);return}function Fua(a){a=a|0;var b=0;b=s8(16)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;Eab(b);f[a>>2]=b;return}function Gua(a,b){a=a|0;b=b|0;XQa(f[b>>2]|0)|0;HVa(a);return}function Hua(a,b){a=a|0;b=b|0;PQa(f[b>>2]|0)|0;HVa(a);return}function Iua(a,b){a=a|0;b=b|0;QQa(f[b>>2]|0)|0;HVa(a);return}function Jua(a,b){a=a|0;b=b|0;p3(a,IQa(f[b>>2]|0)|0);return}function Kua(a,b){a=a|0;b=b|0;nOa(a,ORa(f[b>>2]|0)|0);return}function Lua(a,b){a=a|0;b=b|0;nOa(a,PRa(f[b>>2]|0)|0);return}function Mua(a,b){a=a|0;b=b|0;nOa(a,QRa(f[b>>2]|0)|0);return}function Nua(a,b){a=a|0;b=b|0;nOa(a,$Ra(f[b>>2]|0)|0);return}function Oua(a,b){a=a|0;b=b|0;nOa(a,aSa(f[b>>2]|0)|0);return}function Pua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Lw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Qua(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Mw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Rua(a){a=a|0;var b=0;a=s8(44)|0;x=0;ta(441,a|0);b=x;x=0;if(b&1){b=Ia()|0;Cbb(a);Ua(b|0)}else return a|0;return 0}function Sua(a,b){a=a|0;b=b|0;return mP(a,b)|0}function Tua(a,b){a=a|0;b=b|0;AMa(a,vSa(f[b>>2]|0)|0);return}function Uua(a,b){a=a|0;b=b|0;fQa(a+16|0,nSa(f[b>>2]|0)|0);return}function Vua(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;DUa(a+12|0);DUa(a+24|0);f[a+36>>2]=0;return}function Wua(a){a=a|0;var b=0;KJa(a);f[a>>2]=42736;a=a+48|0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Xua(a){a=a|0;MTa(a+28|0);MTa(a+16|0);MTa(a+4|0);return}function Yua(a){a=a|0;var b=0;if(f[a+68>>2]|0){b=f[a+116>>2]|0;a=a+112|0;if(b|0)f[b+112>>2]=f[a>>2];a=f[a>>2]|0;f[((a|0)==0?46812:a+116|0)>>2]=b}return}function Zua(a,b){a=a|0;b=b|0;b=b+8|0;a=i_(a+24|0,b)|0;f[b>>2]=f[a>>2];return}function _ua(a){a=a|0;var b=0,c=0;b=a+8|0;if(!((f[b>>2]|0)!=0?(c=f[b>>2]|0,f[b>>2]=c+-1,(c|0)!=0):0))oc[f[(f[a>>2]|0)+16>>2]&1023](a);return}function $ua(a){a=+a;var b=0,c=0;c=u;u=u+16|0;b=c;n4a(b,eVa(fUa()|0,a)|0);u=c;return f[b>>2]|0}function ava(a,b){a=a|0;b=b|0;var c=0;if((a|0)!=0?(c=L_a(a)|0,(c|0)!=0):0)a=(f[c+8>>2]|0)==(b|0)?c:0;else a=0;return a|0}function bva(a,b){a=a|0;b=b|0;Hx(a,IQa(f[b>>2]|0)|0);return}function cva(a,b){a=a|0;b=b|0;dw(a,wQa(f[b>>2]|0)|0);return}function dva(a,b){a=a|0;b=b|0;gx(a,tRa(f[b>>2]|0)|0);return}function eva(a,b){a=a|0;b=b|0;sq(a,tRa(f[b>>2]|0)|0);return}function fva(a,b){a=a|0;b=b|0;nOa(a,lSa(f[b>>2]|0)|0);return}function gva(a,b){a=a|0;b=b|0;nOa(a,bSa(f[b>>2]|0)|0);return}function hva(a,b){a=a|0;b=b|0;nOa(a,cSa(f[b>>2]|0)|0);return}function iva(a,b){a=a|0;b=b|0;nOa(a,dSa(f[b>>2]|0)|0);return}function jva(a,b){a=a|0;b=b|0;nOa(a,mSa(f[b>>2]|0)|0);return}function kva(a,b){a=a|0;b=b|0;gRa(a,NRa(f[b>>2]|0)|0);return}function lva(a,b){a=a|0;b=b|0;gRa(a,DRa(f[b>>2]|0)|0);return}function mva(a,b){a=a|0;b=b|0;gRa(a,ERa(f[b>>2]|0)|0);return}function nva(a,b){a=a|0;b=b|0;gRa(a,FRa(f[b>>2]|0)|0);return}function ova(a,b,c){a=a|0;b=b|0;c=c|0;Xf(a,c);Jk(c);return}function pva(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Pw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function qva(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=f[e+4>>2]|0;c=a;f[c>>2]=f[e>>2];f[c+4>>2]=d;RR(a+8|0,b+8|0);return}function rva(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;$(23)}function sva(a,b){a=a|0;b=b|0;$Qa(f[b>>2]|0)|0;HVa(a);return}function tva(a,b){a=a|0;b=b|0;aRa(f[b>>2]|0)|0;HVa(a);return}function uva(a,b){a=a|0;b=b|0;bRa(f[b>>2]|0)|0;HVa(a);return}function vva(a,b){a=a|0;b=b|0;OOa(a+16|0,NRa(f[b>>2]|0)|0);return}function wva(a,b){a=a|0;b=b|0;OOa(a+16|0,DRa(f[b>>2]|0)|0);return}function xva(a,b){a=a|0;b=b|0;OOa(a+16|0,ERa(f[b>>2]|0)|0);return}function yva(a,b){a=a|0;b=b|0;OOa(a+16|0,FRa(f[b>>2]|0)|0);return}function zva(a,b){a=a|0;b=b|0;fRa(a+16|0,NRa(f[b>>2]|0)|0);return}function Ava(a,b){a=a|0;b=b|0;fRa(a+16|0,DRa(f[b>>2]|0)|0);return}function Bva(a,b){a=a|0;b=b|0;fRa(a+16|0,ERa(f[b>>2]|0)|0);return}function Cva(a,b){a=a|0;b=b|0;fRa(a+16|0,FRa(f[b>>2]|0)|0);return}function Dva(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if((a|0)==(c|0))break;bOa(d,b[a>>0]|0);a=a+1|0}return}function Eva(a){a=a|0;dM(a);return}function Fva(a,b){a=a|0;b=b|0;b=(dSa(f[b>>2]|0)|0)+8|0;hza(a,f[b>>2]|0);return}function Gva(a,b){a=a|0;b=b|0;nOa(a,nSa(f[b>>2]|0)|0);return}function Hva(a,b){a=a|0;b=b|0;gRa(a,ORa(f[b>>2]|0)|0);return}function Iva(a,b){a=a|0;b=b|0;gRa(a,PRa(f[b>>2]|0)|0);return}function Jva(a,b){a=a|0;b=b|0;gRa(a,QRa(f[b>>2]|0)|0);return}function Kva(a,b){a=a|0;b=b|0;gRa(a,$Ra(f[b>>2]|0)|0);return}function Lva(a,b){a=a|0;b=b|0;gRa(a,aSa(f[b>>2]|0)|0);return}function Mva(a,b){a=a|0;b=b|0;fQa(a+16|0,vSa(f[b>>2]|0)|0);return}function Nva(a){a=a|0;f[a>>2]=45748;upa(a+44|0);QTa(a);return}function Ova(a){a=a|0;a=(FRa(a)|0)+16|0;return woa(TRa((QRa(f[a>>2]|0)|0)+8|0)|0)|0}function Pva(a,b){a=a|0;b=b|0;var c=0;c=5381;while(1){if(!a)break;c=c*33^a&255;a=a>>>8}while(1){if(!b)break;a=c*33^b&255;b=b>>>8;c=a}return c|0}function Qva(a,b){a=a|0;b=b|0;Vea(a,$Ra(f[b>>2]|0)|0);return}function Rva(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;hK(a,b);b=b+16|0}return}function Sva(a,b){a=a|0;b=b|0;nRa(f[b>>2]|0)|0;HVa(a);return}function Tva(a,b){a=a|0;b=b|0;tRa(f[b>>2]|0)|0;HVa(a);return}function Uva(a,b){a=a|0;b=b|0;OOa(a+16|0,ORa(f[b>>2]|0)|0);return}function Vva(a,b){a=a|0;b=b|0;OOa(a+16|0,PRa(f[b>>2]|0)|0);return}function Wva(a,b){a=a|0;b=b|0;OOa(a+16|0,QRa(f[b>>2]|0)|0);return}function Xva(a,b){a=a|0;b=b|0;OOa(a+16|0,$Ra(f[b>>2]|0)|0);return}function Yva(a,b){a=a|0;b=b|0;OOa(a+16|0,aSa(f[b>>2]|0)|0);return}function Zva(a,b){a=a|0;b=b|0;fRa(a+16|0,ORa(f[b>>2]|0)|0);return}function _va(a,b){a=a|0;b=b|0;fRa(a+16|0,PRa(f[b>>2]|0)|0);return}function $va(a,b){a=a|0;b=b|0;fRa(a+16|0,QRa(f[b>>2]|0)|0);return}function awa(a,b){a=a|0;b=b|0;fRa(a+16|0,$Ra(f[b>>2]|0)|0);return}function bwa(a,b){a=a|0;b=b|0;fRa(a+16|0,aSa(f[b>>2]|0)|0);return}function cwa(a,b){a=a|0;b=b|0;JQa(f[b>>2]|0)|0;o_a(a);return}function dwa(a,c){a=a|0;c=c|0;c=(PRa(f[c>>2]|0)|0)+20|0;rEa(a,b[c>>0]|0);return}function ewa(a){a=a|0;var b=0;a=s8(56)|0;x=0;ta(452,a|0);b=x;x=0;if(b&1){b=Ia()|0;Cbb(a);Ua(b|0)}else return a|0;return 0}function fwa(a,b){a=a|0;b=b|0;f[a>>2]=b;DUa(a+4|0);return}function gwa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_Z(a,124474,j7a(124474)|0);return}function hwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((f[a+4>>2]|0)==(b|0)?(d=a+28|0,(f[d>>2]|0)!=1):0)f[d>>2]=c;return}function iwa(a,b){a=a|0;b=b|0;Rt(a,IQa(f[b>>2]|0)|0);return}function jwa(a,b){a=a|0;b=b|0;gRa(a,lSa(f[b>>2]|0)|0);return}function kwa(a,b){a=a|0;b=b|0;gRa(a,bSa(f[b>>2]|0)|0);return}function lwa(a,b){a=a|0;b=b|0;gRa(a,cSa(f[b>>2]|0)|0);return}function mwa(a,b){a=a|0;b=b|0;gRa(a,dSa(f[b>>2]|0)|0);return}function nwa(a,b){a=a|0;b=b|0;gRa(a,mSa(f[b>>2]|0)|0);return}function owa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Tw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function pwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Uw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function qwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Qw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function rwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Rw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function swa(a){a=a|0;var b=0,c=0;c=a+64|0;b=f[c>>2]|0;f[c>>2]=0;if((b|0)==((f[a+4>>2]|0)-(f[a>>2]|0)>>2|0))return;else Ca(80019,79955,210,80041)}function twa(a,b){a=a|0;b=b|0;var c=0;c=s8(20)|0;mQa(c,b);N_(a,c);return}function uwa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;_Z(a,124480,j7a(124480)|0);return}function vwa(a,b){a=a|0;b=b|0;a=eSa(a)|0;if(b|0){faa(a+12|0,b);tt(a)}return a|0}function wwa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;iK(a,b);b=b+16|0}return}function xwa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;mK(a,b);b=b+16|0}return}function ywa(a,b){a=a|0;b=b|0;OOa(a+16|0,lSa(f[b>>2]|0)|0);return}function zwa(a,b){a=a|0;b=b|0;OOa(a+16|0,bSa(f[b>>2]|0)|0);return}function Awa(a,b){a=a|0;b=b|0;OOa(a+16|0,cSa(f[b>>2]|0)|0);return}function Bwa(a,b){a=a|0;b=b|0;OOa(a+16|0,dSa(f[b>>2]|0)|0);return}function Cwa(a,b){a=a|0;b=b|0;OOa(a+16|0,mSa(f[b>>2]|0)|0);return}function Dwa(a,b){a=a|0;b=b|0;fRa(a+16|0,lSa(f[b>>2]|0)|0);return}function Ewa(a,b){a=a|0;b=b|0;fRa(a+16|0,bSa(f[b>>2]|0)|0);return}function Fwa(a,b){a=a|0;b=b|0;fRa(a+16|0,cSa(f[b>>2]|0)|0);return}function Gwa(a,b){a=a|0;b=b|0;fRa(a+16|0,dSa(f[b>>2]|0)|0);return}function Hwa(a,b){a=a|0;b=b|0;fRa(a+16|0,mSa(f[b>>2]|0)|0);return}function Iwa(a,b){a=a|0;b=b|0;nOa(a,vSa(f[b>>2]|0)|0);return}function Jwa(){var a=0,b=0;a=s8(52)|0;x=0;ua(291,a|0,1);b=x;x=0;if(b&1){b=Ia()|0;Cbb(a);Ua(b|0)}else return a|0;return 0}function Kwa(a,b){a=a|0;b=b|0;xJa(a);f[a>>2]=45428;f[a+44>>2]=b;return}function Lwa(a){a=a|0;f[a>>2]=39868;return}function Mwa(a){a=a|0;var b=0,c=0,d=0;c=a+4|0;d=f[c>>2]|0;b=f[a>>2]|0;while(1){if((b|0)==(d|0))break;zbb(f[b>>2]|0);b=b+4|0}f[c>>2]=f[a>>2];return}function Nwa(a,b){a=a|0;b=b|0;var c=0;c=0;while(1){if((c|0)==(b|0))break;DCa(a,123306)|0;c=c+1|0}return a|0}function Owa(a){a=a|0;Kr(a,j7a(124693)|0);return}function Pwa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;XG(a,49852,i7a(49852)|0);return}function Qwa(a){a=a|0;var b=0;a=f[a+8>>2]|0;if(a){b=pRa(a)|0;a=z6a()|0;if(b)pRa(b)|0}else a=1;return a|0}function Rwa(a){a=a|0;zSa(a+44|0);zSa(a+32|0);RMa(a);return}function Swa(a){a=a|0;var b=0;a=s8(56)|0;x=0;ta(451,a|0);b=x;x=0;if(b&1){b=Ia()|0;Cbb(a);Ua(b|0)}else return a|0;return 0}function Twa(a,b){a=a|0;b=b|0;tU(a,IQa(f[b>>2]|0)|0);return}function Uwa(a,b){a=a|0;b=b|0;gRa(a,nSa(f[b>>2]|0)|0);return}function Vwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Xw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Wwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Vw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Xwa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Ww(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Ywa(a){a=a|0;var b=0,c=0;c=u;u=u+16|0;b=c;if((MX(a)|0)==0?(ec[f[a+32>>2]&127](a,b,1)|0)==1:0)a=h[b>>0]|0;else a=-1;u=c;return a|0}function Zwa(a){a=a|0;Tfa(a);return}function _wa(a){a=a|0;var b=0,c=0;a=g1a(f[a>>2]|0)|0;c=a+8|0;b=f[c>>2]|0;f[c>>2]=b+-1;if((b+-1|0)<0)Cbb(a);return}function $wa(a){a=a|0;var b=0;while(1){b=f[a>>2]|0;if(!b){b=f[a+4>>2]|0;if(!b)break;else a=b}else a=b}return a|0}function axa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;XG(a,49876,i7a(49876)|0);return}function bxa(a,b,c){a=a|0;b=b|0;c=c|0;a=NUa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+12>>2]=c;v_a(a);return a|0}function cxa(a,b){a=a|0;b=b|0;NRa(f[b>>2]|0)|0;HVa(a);return}function dxa(a,b){a=a|0;b=b|0;DRa(f[b>>2]|0)|0;HVa(a);return}function exa(a,b){a=a|0;b=b|0;ERa(f[b>>2]|0)|0;HVa(a);return}function fxa(a,b){a=a|0;b=b|0;FRa(f[b>>2]|0)|0;HVa(a);return}function gxa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;nK(a,b);b=b+16|0}return}function hxa(a,b){a=a|0;b=b|0;OOa(a+16|0,nSa(f[b>>2]|0)|0);return}function ixa(a,b){a=a|0;b=b|0;fRa(a+16|0,nSa(f[b>>2]|0)|0);return}function jxa(a,b){a=a|0;b=b|0;rYa(wQa(f[b>>2]|0)|0);return}function kxa(a){a=a|0;var b=0;b=s8(48)|0;Rma(b,f[a+44>>2]|0);return b|0}function lxa(a,c){a=a|0;c=c|0;ZHa(a);f[a>>2]=43980;b[a+44>>0]=c&1;DUa(a+48|0);return}function mxa(a,c){a=a|0;c=c|0;c=(bSa(f[c>>2]|0)|0)+20|0;ZEa(a,b[c>>0]|0);return}function nxa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Yw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function oxa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;Zw(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function pxa(){var a=0,b=0;a=s8(52)|0;x=0;ua(291,a|0,2);b=x;x=0;if(b&1){b=Ia()|0;Cbb(a);Ua(b|0)}else return a|0;return 0}function qxa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=b+4|0;if((f[d>>2]|0)!=(c|0)){f[d>>2]=c;Mv(a,b)}return}function rxa(a){a=a|0;switch(a|0){case 41:case 40:case 34:case 33:case 32:case 27:case 25:case 16:case 15:case 9:case 8:case 7:case 2:case 0:{a=1;break}default:a=0}return a|0}function sxa(a,b){a=a|0;b=b|0;var c=0;c=f[a>>2]|0;if(((f[a+4>>2]|0)-c|0)>>>0>b>>>0)return c+b|0;else cea();return 0}function txa(a){a=a|0;pga(a);return}function uxa(a){a=a|0;qga(a);return}function vxa(a){a=a|0;sga(a);return}function wxa(a){a=a|0;L6(a);return}function xxa(a){a=a|0;var c=0;pya(a);f[a>>2]=44868;b[a+16>>0]=0;c=a+20|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+36>>2]=1065353216;return}function yxa(a,b){a=a|0;b=b|0;ORa(f[b>>2]|0)|0;HVa(a);return}function zxa(a,b){a=a|0;b=b|0;PRa(f[b>>2]|0)|0;HVa(a);return}function Axa(a,b){a=a|0;b=b|0;QRa(f[b>>2]|0)|0;HVa(a);return}function Bxa(a,b){a=a|0;b=b|0;$Ra(f[b>>2]|0)|0;HVa(a);return}function Cxa(a,b){a=a|0;b=b|0;aSa(f[b>>2]|0)|0;HVa(a);return}function Dxa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;vK(a,b);b=b+16|0}return}function Exa(a,b){a=a|0;b=b|0;gRa(a,vSa(f[b>>2]|0)|0);return}function Fxa(a,b){a=a|0;b=b|0;vOa(f[a+24>>2]|0,b);return}function Gxa(){var a=0;a=s8(28)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;MOa(a);return a|0}function Hxa(a,b){a=a|0;b=b|0;var c=0;c=f[(f[b+8>>2]|0)+4>>2]|0;oxa(a,v2a(c)|0|(c|0)==5,b);return}function Ixa(a){a=a|0;var b=0;switch(a|0){case 0:{hb();break}case 3:case 1:{b=4;break}case 2:{b=8;break}case 4:{b=8;break}default:hb()}return b|0}function Jxa(a){a=a|0;zSa(a+28|0);zSa(a+16|0);zSa(a+4|0);return}function Kxa(a){a=a|0;return EMa(a+4|0)|0}function Lxa(a,b){a=a|0;b=b|0;OOa(a+16|0,vSa(f[b>>2]|0)|0);return}function Mxa(a,b){a=a|0;b=b|0;fRa(a+16|0,vSa(f[b>>2]|0)|0);return}function Nxa(a,b){a=a|0;b=b|0;b=(dSa(f[b>>2]|0)|0)+8|0;Ala(a,f[b>>2]|0);return}function Oxa(a,c){a=a|0;c=c|0;if(cTa(c)|0)Yba(a,c)|0;else b[a+104>>0]=0;return}function Pxa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;ax(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function Qxa(a){a=a|0;var b=0;switch(a|0){case 1:{b=0;break}case 2:{b=1;break}case 4:{b=2;break}case 8:{b=3;break}default:hb()}return b|0}function Rxa(a,b){a=a|0;b=b|0;if(Qab(f[b+4>>2]|0)|0)a=0;else a=(f[(f[a+120>>2]|0)+(f[b+8>>2]<<2)>>2]|0)>>>0<2;return a|0}function Sxa(a){a=a|0;KKa(a);f[a>>2]=45908;IGa(a+44|0);f[a+104>>2]=0;f[a+108>>2]=0;f[a+112>>2]=0;return}function Txa(a){a=a|0;iVa(a+12|0);Qna(a);return}function Uxa(a){a=a|0;Ega(a);return}function Vxa(a,b){a=a|0;b=b|0;if(u_a(b)|0){b=ARa(b)|0;RK(a,b)|0;a=b}return a|0}function Wxa(a,b){a=a|0;b=b|0;lSa(f[b>>2]|0)|0;HVa(a);return}function Xxa(a,b){a=a|0;b=b|0;bSa(f[b>>2]|0)|0;HVa(a);return}function Yxa(a,b){a=a|0;b=b|0;cSa(f[b>>2]|0)|0;HVa(a);return}function Zxa(a,b){a=a|0;b=b|0;dSa(f[b>>2]|0)|0;HVa(a);return}function _xa(a,b){a=a|0;b=b|0;mSa(f[b>>2]|0)|0;HVa(a);return}function $xa(a,b,c){a=a|0;b=b|0;c=c|0;while(1){if((b|0)==(c|0))break;xK(a,b);b=b+16|0}return}function aya(a,b){a=a|0;b=b|0;aZa(IQa(f[b>>2]|0)|0);return}function bya(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}f[a+32>>2]=0;return}function cya(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==107890?a+4|0:0)|0}function dya(a,b){a=a|0;b=b|0;CN(a,$Qa(f[b>>2]|0)|0);return}function eya(a,b){a=a|0;b=b|0;CN(a,aRa(f[b>>2]|0)|0);return}function fya(a,b){a=a|0;b=b|0;Bs(a,XQa(f[b>>2]|0)|0);return}function gya(a,b){a=a|0;b=b|0;cM(a,PQa(f[b>>2]|0)|0);return}function hya(a,b){a=a|0;b=b|0;HB(a,QQa(f[b>>2]|0)|0);return}function iya(a,b){a=a|0;b=b|0;wQa(f[b>>2]|0)|0;i$a()}function jya(a,b){a=a|0;b=b|0;zz(a,aSa(f[b>>2]|0)|0);return}function kya(a,b){a=a|0;b=b|0;lA(a,aSa(f[b>>2]|0)|0);return}function lya(a,b){a=a|0;b=b|0;Az(a,aSa(f[b>>2]|0)|0);return}function mya(a,b){a=a|0;b=b|0;mA(a,aSa(f[b>>2]|0)|0);return}function nya(a,b){a=a|0;b=b|0;nA(a,aSa(f[b>>2]|0)|0);return}function oya(a,b){a=a|0;b=b|0;nLa(a,wQa(f[b>>2]|0)|0);return}function pya(a){a=a|0;var b=0;f[a>>2]=40084;b=a+4|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function qya(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a+44>>2]|0;bx(d,b,c,Jbb(f[a+32>>2]|0)|0);return}function rya(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=f[b>>2];if(!c)break;else{b=b+4|0;d=d+4|0}}}return a|0}function sya(a,c){a=a|0;c=c|0;var d=0;a=H7a(a)|0;d=dV(a)|0;if(d>>>0<1024){Ku(c|0,a|0,d+1|0)|0;a=0}else{Ku(c|0,a|0,1023)|0;b[c+1023>>0]=0;a=34}return a|0}function tya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g|0;fk(a,b,c,d,e)|0;u=g;return (I=f[e+4>>2]|0,f[e>>2]|0)|0}function uya(a,b,c){a=a|0;b=b|0;c=c|0;rXa(a);f[a+24>>2]=b;f[a+28>>2]=c;return}function vya(a){a=a|0;e1(f[a+4>>2]|0);return}function wya(a){a=a|0;rga(a);return}function xya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a;f[d>>2]=0;f[d+4>>2]=0;d=a+8|0;f[d>>2]=-1;f[d+4>>2]=-1;return}function yya(a,b){a=a|0;b=b|0;nSa(f[b>>2]|0)|0;HVa(a);return}function zya(a,b){a=a|0;b=b|0;wQa(f[b>>2]|0)|0;l1a(a);return}function Aya(a,b){a=a|0;b=b|0;En(a+-16|0,b);return}function Bya(a,b){a=a|0;b=b|0;while(1){if((a|0)==(b|0)){a=0;break}if(!(f[(f[a>>2]|0)+40>>2]|0))a=a+4|0;else{a=1;break}}return a|0}function Cya(a){a=a|0;zSa(a+48|0);zSa(a+36|0);zSa(a+24|0);P_a(a);return}function Dya(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a=X(d>>>0>>0?d:c,a)|0;d=a+(c>>>0>>0?d:c)|0;return (1<<(d&31)&f[b+(d>>>5<<2)>>2]|0)!=0|0}function Eya(a){a=a|0;var b=0;b=s8(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[a>>2]=b;return}function Fya(a){a=a|0;var c=0,d=0;c=a+16|0;d=c+48|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+12>>0]=0;return}function Gya(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;return lc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Hya(a){a=a|0;XMa(a);f[a>>2]=39656;f[a+4>>2]=0;return}function Iya(a,b){a=a|0;b=b|0;return xc(a,f[b>>2]|0)|0}function Jya(a,b){a=a|0;b=b|0;var c=0;a=a+8|0;c=f[a>>2]|0;iH(c|0,0,b*12|0)|0;f[a>>2]=c+(b*12|0);return}function Kya(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;f=C5(a,c,0,d,c,e,f)|0;b[f+20>>0]=1;return f|0}function Lya(a,b){a=a|0;b=b|0;WE(a,bRa(f[b>>2]|0)|0);return}function Mya(a,b){a=a|0;b=b|0;wQa(f[b>>2]|0)|0;dKa(a);return}function Nya(a,b){a=a|0;b=b|0;gz(a,NRa(f[b>>2]|0)|0);return}function Oya(a){a=a|0;rha(a);return}function Pya(a,b){a=a|0;b=b|0;if(Dab(f[a>>2]|0)|0)return ODa(f[a+8>>2]|0,b)|0;else Ca(53407,75335,409,123759);return 0}function Qya(a,b,c){a=a|0;b=b|0;c=c|0;a=FTa(f[a>>2]|0)|0;f[a+8>>2]=b;f[a+12>>2]=c;Aia(a);return a|0}function Rya(a){a=a|0;zSa(a+48|0);zSa(a+36|0);P1a(f[a+24>>2]|0);P_a(a);return}function Sya(a){a=a|0;var b=0,c=0;Mwa(a);b=a+24|0;if(f[b>>2]|0?(c=f[b>>2]|0,c|0):0){Sya(c);Cbb(c)}zSa(a);return}function Tya(a){a=a|0;if(zZa(a)|0)a=0;else a=GZa(f[f[a>>2]>>2]|0)|0;return a|0}function Uya(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=f[b>>2];return}function Vya(a,b){a=a|0;b=b|0;vSa(f[b>>2]|0)|0;HVa(a);return}function Wya(a,b){a=a|0;b=b|0;OI(a,nRa(f[b>>2]|0)|0);return}function Xya(a,b){a=a|0;b=b|0;Ox(a,IQa(f[b>>2]|0)|0);return}function Yya(a){a=a|0;var b=0;b=s8(48)|0;Zna(b,f[a+44>>2]|0);return b|0}function Zya(a,b,c){a=a|0;b=b|0;c=c|0;return SKa(f[a+32>>2]|0,c,b)|0}function _ya(a){a=a|0;var b=0;while(1){if(!a)break;b=f[a>>2]|0;Cbb(a);a=b}return}function $ya(a,b){a=a|0;b=b|0;XQa(f[b>>2]|0)|0;USa(a);return}function aza(a){a=a|0;zSa(a+44|0);RTa(a+32|0);P_a(a);return}function bza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=b;f[a+4>>2]=c;gA(a+8|0,d,b);return}function cza(a,b){a=a|0;b=b|0;LM(a,$Qa(f[b>>2]|0)|0);return}function dza(a,b){a=a|0;b=b|0;mR(a,aRa(f[b>>2]|0)|0);return}function eza(a,b){a=a|0;b=b|0;kG(a,bRa(f[b>>2]|0)|0);return}function fza(a,b){a=a|0;b=b|0;Sr(a,XQa(f[b>>2]|0)|0);return}function gza(a,b){a=a|0;b=b|0;xX(a,$Ra(f[b>>2]|0)|0);return}function hza(a,b){a=a|0;b=b|0;if(!(v2a(f[b+4>>2]|0)|0))GVa(f[a>>2]|0,b)|0;return}function iza(a,b){a=a|0;b=b|0;b=b+8|0;if(Qab(f[b>>2]|0)|0)a8(a+80|0,b);return}function jza(){var a=0;if((f[32966]|0)==0&(f[32967]|0)==0&(f[32968]|0)==0&(f[32969]|0)==0){a=(pb(1)|0)!=0&1;b[135320]=a;return}else Ca(54381,53069,48,54493)}function kza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((f[a>>2]|0)==(b|0)?(f[a+4>>2]|0)==(c|0):0)b=(f[a+8>>2]|0)==(d|0);else b=0;return b|0}function lza(a,c){a=a|0;c=c|0;b[a>>0]=1;NVa(a+4|0,c);Sab(a+20|0);f[a+28>>2]=-1;f[a+32>>2]=-1;f[a+36>>2]=0;return}function mza(a,b){a=a|0;b=b|0;PQa(f[b>>2]|0)|0;l1a(a);return}function nza(a,b){a=a|0;b=b|0;QQa(f[b>>2]|0)|0;l1a(a);return}function oza(a,b){a=a|0;b=b|0;i_a(PQa(f[b>>2]|0)|0);return}function pza(a,b){a=a|0;b=b|0;j_a(QQa(f[b>>2]|0)|0);return}function qza(a){a=a|0;if((!(aEa(a)|0)?(f[a+48>>2]|0)==0:0)?(b[a+26>>0]|0)==0:0)a=(b[a+78>>0]|0)!=0;else a=1;return a|0}function rza(a,c){a=a|0;c=c|0;f[a>>2]=c;f[a+4>>2]=c+144;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;hFa(a+20|0);b[a+40>>0]=0;return}function sza(a){a=a|0;NGa(a+4|0);return}function tza(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=40576;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function uza(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=40532;f[a+4>>2]=b;f[a+8>>2]=c;f[a+16>>2]=a;return}function vza(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=b;d=f[e+4>>2]|0;c=a;f[c>>2]=f[e>>2];f[c+4>>2]=d;kW(a+8|0,b+8|0);return}function wza(a,b){a=a|0;b=b|0;a=t5(a,b)|0;if(!a)a=0;else a=L_a(a)|0;return a|0}function xza(a,b){a=a|0;b=b|0;aO(a,XQa(f[b>>2]|0)|0);return}function yza(a,b){a=a|0;b=b|0;PQa(f[b>>2]|0)|0;dKa(a);return}function zza(a,b){a=a|0;b=b|0;QQa(f[b>>2]|0)|0;dKa(a);return}function Aza(a,b){a=a|0;b=b|0;jz(a,XQa(f[b>>2]|0)|0);return}function Bza(a,b){a=a|0;b=b|0;IH(a,JQa(f[b>>2]|0)|0);return}function Cza(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;xVa(a);return}function Dza(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44828;return}function Eza(a,b){a=a|0;b=b|0;b=Jbb(f[b+16>>2]|0)|0;return b+(((Oab(a)|0)^1)<<31>>31)|0}function Fza(a){a=a|0;Yha(a);return}function Gza(a){a=a|0;iFa(a);f[a>>2]=43816;f[a+44>>2]=0;f[a+48>>2]=0;f[a+52>>2]=0;return}function Hza(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=1065353216;return}function Iza(){var a=0,b=0;b=u;u=u+16|0;a=b;n4a(a,D$a(fUa()|0)|0);u=b;return f[a>>2]|0}function Jza(a,b){a=a|0;b=b|0;bRa(f[b>>2]|0)|0;l1a(a);return}function Kza(a,b){a=a|0;b=b|0;XRa(a,XQa(f[b>>2]|0)|0);return}function Lza(a,b){a=a|0;b=b|0;OF(a,$Qa(f[b>>2]|0)|0);return}function Mza(a,b){a=a|0;b=b|0;uM(a,nRa(f[b>>2]|0)|0);return}function Nza(a,b){a=a|0;b=b|0;uS(a,tRa(f[b>>2]|0)|0);return}function Oza(a){a=a|0;if(!(((f[(f[a+16>>2]|0)+4>>2]|0)!=5?(f[(f[a+20>>2]|0)+4>>2]|0)!=5:0)?(f[(f[a+24>>2]|0)+4>>2]|0)!=5:0))f[a+4>>2]=5;return}function Pza(a){a=a|0;rXa(a);DUa(a+24|0);Bab(a+36|0);return}function Qza(a){a=a|0;mia(a);return}function Rza(a,b){a=a|0;b=b|0;bRa(f[b>>2]|0)|0;dKa(a);return}function Sza(a,b){a=a|0;b=b|0;Vea(a,aSa(f[b>>2]|0)|0);return}function Tza(a,b,c){a=a|0;b=b|0;c=c|0;Uj(a,b,c,1);if(!(f[a>>2]|0))Ca(64770,51387,693,64787);else return}function Uza(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;gA(a+4|0,c,f[b>>2]|0);return}function Vza(a,b){a=a|0;b=b|0;return kw(a,b)|0}function Wza(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Xza(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return J$(a,J$(a,b,c)|0,d)|0}function Yza(a,b){a=a|0;b=b|0;lI(a,b+36|0);return}function Zza(a,b){a=a|0;b=b|0;OF(a,nRa(f[b>>2]|0)|0);return}function _za(a,b){a=a|0;b=b|0;Eo(a,nRa(f[b>>2]|0)|0);return}function $za(a,b){a=a|0;b=b|0;xo(a,tRa(f[b>>2]|0)|0);return}function aAa(a,b){a=a|0;b=b|0;hu(a,nRa(f[b>>2]|0)|0);return}function bAa(a,b){a=a|0;b=b|0;Zv(a,tRa(f[b>>2]|0)|0);return}function cAa(a,b){a=a|0;b=b|0;JQa(f[b>>2]|0)|0;w1a(a);return}function dAa(a,b){a=a|0;b=b|0;Kea(a,$Qa(f[b>>2]|0)|0);return}function eAa(a,b){a=a|0;b=b|0;Lea(a,aRa(f[b>>2]|0)|0);return}function fAa(a){a=a|0;var b=0;b=s8(12)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;j1a(b);f[a>>2]=b;return}function gAa(a){a=a|0;pya(a);aPa(a+16|0);f[a>>2]=40448;return}function hAa(a){a=a|0;var c=0,d=0,e=0;c=a+56|0;d=a;e=d+52|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));b[a+52>>0]=0;f[c>>2]=1;f[a+60>>2]=0;return}function iAa(a){a=a|0;var b=0;b=f[a>>2]|0;if(b){b=Rb(b|0,0)|0;if(!b){f[a>>2]=0;return}}else b=22;Gaa(b,122325)}function jAa(a){a=a|0;zia(a);return}function kAa(a,b,c){a=a|0;b=b|0;c=c|0;c=vwa(f[a>>2]|0,c)|0;f[c+8>>2]=f[b>>2];tt(c);return c|0}function lAa(a,b){a=a|0;b=b|0;$_a($Qa(f[b>>2]|0)|0);return}function mAa(a,b){a=a|0;b=b|0;a$a(bRa(f[b>>2]|0)|0);return}function nAa(a,b){a=a|0;b=b|0;Vea(a,lSa(f[b>>2]|0)|0);return}function oAa(){var a=0,b=0;a=u;u=u+16|0;if(!(Ub(135308,41)|0)){b=Qb(f[33828]|0)|0;u=a;return b|0}else LQa(122627,a);return 0}function pAa(){var a=0;if(!(b[131472]|0)){b[131472]=1;a=131360}else a=s8(112)|0;f[32837]=a;f[32836]=a;f[32838]=a+112;return}function qAa(a){a=a|0;FMa(a);Cbb(a);return}function rAa(a){a=a|0;var b=0.0;switch(f[a>>2]|0){case 3:{b=+TNa(a);break}case 4:{b=+SNa(a);break}default:hb()}return +b}function sAa(a,b){a=a|0;b=b|0;Nn(a,aSa(f[b>>2]|0)|0);return}function tAa(a,b){a=a|0;b=b|0;_q(a,NRa(f[b>>2]|0)|0);return}function uAa(a,b){a=a|0;b=b|0;eE(a,DRa(f[b>>2]|0)|0);return}function vAa(a,b){a=a|0;b=b|0;_E(a,FRa(f[b>>2]|0)|0);return}function wAa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];f[a+8>>2]=f[b+8>>2];f[a+12>>2]=f[b+12>>2];Bab(a+16|0);return}function xAa(a){a=a|0;ZCa(a+12|0);$Ba(a);return}function yAa(a){a=a|0;var c=0,d=0,e=0;c=a+56|0;d=a+12|0;e=d+44|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[c>>2]=1065353216;b[a+9>>0]=1;return}function zAa(a){a=a|0;var b=0;b=f[a+32>>2]|0;if((b|0)!=0?(f[b+4>>2]|0)==5:0)a=0;else a=(f[(f[a+28>>2]|0)+4>>2]|0)!=5;return a|0}function AAa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;UVa(a);return}function BAa(a,b){a=a|0;b=b|0;IQa(f[b>>2]|0)|0;d2a(a);return}function CAa(a,b){a=a|0;b=b|0;return (t_(a+12|0,b)|0)!=(a+16|0)|0}function DAa(a){a=a|0;FIa(a+40|0);zSa(a+28|0);P_a(a);return}function EAa(a,b){a=a|0;b=b|0;if(!b)Ca(103710,103714,26,103730);else{b=Hr(a,b)|0;f[a>>2]=b;return}}function FAa(a,b){a=a|0;b=b|0;pWa(a);return}function GAa(a,b){a=a|0;b=b|0;pWa(a+16|0);return}function HAa(a,b){a=a|0;b=+b;var c=0,d=0;c=u;u=u+16|0;d=c;n[d>>2]=b;f[a>>2]=3;d=W7a(d)|0;f[a+8>>2]=d;u=c;return}function IAa(a,b){a=a|0;b=b|0;th(a,FRa(f[b>>2]|0)|0);return}function JAa(a,b){a=a|0;b=b|0;M$(a,nRa(f[b>>2]|0)|0);return}function KAa(a,b){a=a|0;b=b|0;_fa(a,nRa(f[b>>2]|0)|0);return}function LAa(a,b){a=a|0;b=b|0;$fa(a,tRa(f[b>>2]|0)|0);return}function MAa(a,b){a=a|0;b=b|0;B4(a,b);f[a+12>>2]=-1;f[a+16>>2]=-1;return}function NAa(a){a=a|0;var b=0,c=0;b=f[a>>2]|0;if(b|0){c=a+4|0;f[c>>2]=b;Cbb(b);f[a+8>>2]=0;f[c>>2]=0;f[a>>2]=0}return}function OAa(a){a=a|0;f[a>>2]=39884;f[a+64>>2]=39924;f[a+8>>2]=39904;aCa(a+12|0);return}function PAa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==103789?a+4|0:0)|0}function QAa(a){a=a|0;var b=0;b=s8(8)|0;f[b>>2]=40124;f[b+4>>2]=f[a+4>>2];return b|0}function RAa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==(d|0))a=KZ(a,c)|0;else a=0;return a|0}function SAa(a,b){a=a|0;b=b|0;IQa(f[b>>2]|0)|0;HXa(a);return}function TAa(a,b){a=a|0;b=b|0;I$a(nRa(f[b>>2]|0)|0);return}function UAa(a,b){a=a|0;b=b|0;Pca(134176,b)|0;return a|0}function VAa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;a=X(e>>>0>>0?e:d,a)|0;return b[c+(a+(d>>>0>>0?e:d))>>0]|0}function WAa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=40368;return}function XAa(){var a=0;if((b[130824]|0)==0?VWa(130824)|0:0){a=yb(88062)|0;if(!a)a=0;else a=AR(a)|0;f[33182]=a}return f[33182]|0}function YAa(a,b){a=a|0;b=b|0;dW(a,f[b+8>>2]|0);return}function ZAa(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=f[a>>2]|0;iH(c|0,0,b*12|0)|0;f[a>>2]=c+(b*12|0);return}function _Aa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;$Va(a);return}function $Aa(a,b){a=a|0;b=b|0;PRa(f[b>>2]|0)|0;l1a(a);return}function aBa(a,b){a=a|0;b=b|0;OF(a,ORa(f[b>>2]|0)|0);return}function bBa(a,b){a=a|0;b=b|0;cF(a,PRa(f[b>>2]|0)|0);return}function cBa(a,b){a=a|0;b=b|0;Bv(a,$Ra(f[b>>2]|0)|0);return}function dBa(a,b){a=a|0;b=b|0;aw(a,aSa(f[b>>2]|0)|0);return}function eBa(a,b){a=a|0;b=b|0;by(a,NRa(f[b>>2]|0)|0);return}function fBa(a,b){a=a|0;b=b|0;tA(a,NRa(f[b>>2]|0)|0);return}function gBa(a,b){a=a|0;b=b|0;fP(a,DRa(f[b>>2]|0)|0);return}function hBa(a,b){a=a|0;b=b|0;W2(a,ERa(f[b>>2]|0)|0);return}function iBa(a,b){a=a|0;b=b|0;yt(a,FRa(f[b>>2]|0)|0);return}function jBa(a,b){a=a|0;b=b|0;bRa(f[b>>2]|0)|0;T0a()}function kBa(a,b){a=a|0;b=b|0;S$(a,nRa(f[b>>2]|0)|0);return}function lBa(a,b){a=a|0;b=b|0;S$(a,tRa(f[b>>2]|0)|0);return}function mBa(a,b){a=a|0;b=b|0;m_(a,nRa(f[b>>2]|0)|0);return}function nBa(a,b){a=a|0;b=b|0;i9(a,nRa(f[b>>2]|0)|0);return}function oBa(a,b){a=a|0;b=b|0;Epa(a,bRa(f[b>>2]|0)|0);return}function pBa(){var a=0,c=0,d=0;a=s8(44)|0;c=a;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));xxa(a);b[a+16>>0]=1;return a|0}function qBa(a,b){a=a|0;b=b|0;return (dB(a,b)|0)!=0|0}function rBa(a,b,c){a=a|0;b=b|0;c=c|0;a=uUa(a)|0;f[a+8>>2]=b;f[a+12>>2]=c;jv(a);return a|0}function sBa(a,b,c){a=a|0;b=b|0;c=c|0;a=FTa(a)|0;f[a+8>>2]=b;f[a+12>>2]=c;gLa(a,1);return a|0}function tBa(a,b){a=a|0;b=b|0;lI(a,b+8|0);return}function uBa(){f[33176]=0;f[33177]=0;f[33175]=132704;return}function vBa(a,b){a=a|0;b=b|0;var c=0,d=0;L_(a,b);d=b+32|0;c=f[d+4>>2]|0;b=a+32|0;f[b>>2]=f[d>>2];f[b+4>>2]=c;return}function wBa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function xBa(a,b){a=a|0;b=b|0;bSa(f[b>>2]|0)|0;l1a(a);return}function yBa(a,b){a=a|0;b=b|0;Oh(a,ORa(f[b>>2]|0)|0);return}function zBa(a,b){a=a|0;b=b|0;hO(a,PRa(f[b>>2]|0)|0);return}function ABa(a,b){a=a|0;b=b|0;at(a,PRa(f[b>>2]|0)|0);return}function BBa(a,b){a=a|0;b=b|0;ll(a,NRa(f[b>>2]|0)|0);return}function CBa(a,b){a=a|0;b=b|0;DTa(a,DRa(f[b>>2]|0)|0);return}function DBa(a,b){a=a|0;b=b|0;Vo(a,ERa(f[b>>2]|0)|0);return}function EBa(a,b){a=a|0;b=b|0;He(a,FRa(f[b>>2]|0)|0);return}function FBa(a,b){a=a|0;b=b|0;vA(a,nRa(f[b>>2]|0)|0);return}function GBa(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=Pfa(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function HBa(a,b){a=a|0;b=b|0;SF(a,b);return}function IBa(a){a=a|0;var b=0,c=0;c=a+4|0;b=f[c>>2]|0;f[c>>2]=b+-1;if(!b)oc[f[(f[a>>2]|0)+8>>2]&1023](a);return}function JBa(a,b,c){a=a|0;b=b|0;c=c|0;return r9(Rm(a,b,c)|0)|0}function KBa(a,b){a=a|0;b=b|0;Jbb(a)|0;if(Oab(f[a>>2]|0)|0)a=g2a(f[a+8>>2]|0,f[b>>2]|0)|0;else a=0;return a|0}function LBa(a,b){a=a|0;b=b|0;aO(a,mSa(f[b>>2]|0)|0);return}function MBa(a,b){a=a|0;b=b|0;XQa(f[b>>2]|0)|0;HXa(a);return}function NBa(a,b){a=a|0;b=b|0;V1a(XQa(f[b>>2]|0)|0);return}function OBa(a,b){a=a|0;b=b|0;xC(a,NRa(f[b>>2]|0)|0);return}function PBa(a,c){a=a|0;c=c|0;f[a>>2]=50432;Lla(a+4|0,(b[c+11>>0]|0)<0?f[c>>2]|0:c);return}function QBa(a,b){a=a|0;b=b|0;lSa(f[b>>2]|0)|0;pma(a);return}function RBa(a,b){a=a|0;b=b|0;X0(a,$Ra(f[b>>2]|0)|0);return}function SBa(a,b){a=a|0;b=b|0;Kn(a,aSa(f[b>>2]|0)|0);return}function TBa(a,b){a=a|0;b=b|0;Di(a,ORa(f[b>>2]|0)|0);return}function UBa(a,b){a=a|0;b=b|0;Kz(a,PRa(f[b>>2]|0)|0);return}function VBa(a,b){a=a|0;b=b|0;D_(a,$Ra(f[b>>2]|0)|0);return}function WBa(a,b){a=a|0;b=b|0;ej(a,aSa(f[b>>2]|0)|0);return}function XBa(a,b){a=a|0;b=b|0;sI(a,$Ra(f[b>>2]|0)|0);return}function YBa(a,b){a=a|0;b=b|0;PEa(a,aSa(f[b>>2]|0)|0);return}function ZBa(a,b){a=a|0;b=b|0;return (t_(a,b)|0)!=(a+4|0)|0}function _Ba(a){a=a|0;if(!(b[a+8>>0]|0)){Ema(f[a>>2]|0,10)|0;a=a+4|0;f[a>>2]=(f[a>>2]|0)+1}return}function $Ba(a){a=a|0;Xja(a);return}function aCa(a){a=a|0;f[a>>2]=39940;MTa(a+32|0);cXa(a);return}function bCa(a,b){a=a|0;b=b|0;f[b>>2]=40124;f[b+4>>2]=f[a+4>>2];return}function cCa(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;f[c>>2]=a;a=Boa(c)|0;u=b;return a|0}function dCa(a){a=a|0;zSa(a+48|0);zSa(a+36|0);bKa(a);return}function eCa(a,b){a=a|0;b=b|0;FM(a,mSa(f[b>>2]|0)|0);return}function fCa(a,b){a=a|0;b=b|0;gQ(a,lSa(f[b>>2]|0)|0);return}function gCa(a,b){a=a|0;b=b|0;TF(a,bSa(f[b>>2]|0)|0);return}function hCa(a,b){a=a|0;b=b|0;WRa(a,cSa(f[b>>2]|0)|0);return}function iCa(a,b){a=a|0;b=b|0;UF(a,dSa(f[b>>2]|0)|0);return}function jCa(a,b){a=a|0;b=b|0;XRa(a,mSa(f[b>>2]|0)|0);return}function kCa(a,b){a=a|0;b=b|0;ERa(f[b>>2]|0)|0;w1a(a);return}function lCa(){var a=0;x=0;ia(62,134176,112641)|0;a=x;x=0;if(!(a&1)){x=0;ta(440,1);x=0}a=Ja(0)|0;y2a(a)}function mCa(a,c){a=a|0;c=c|0;aPa(a);Bab(a+36|0);b[a+40>>0]=0;f[a+44>>2]=0;f[a+48>>2]=0;f[a+52>>2]=c;return}function nCa(a){a=a|0;Zma(a+20|0);SQa(a);return}function oCa(a){a=a|0;f[a>>2]=45908;zSa(a+104|0);Rya(a+44|0);QTa(a);return}function pCa(a,c){a=a|0;c=c|0;f[a>>2]=50412;Lla(a+4|0,(b[c+11>>0]|0)<0?f[c>>2]|0:c);return}function qCa(a){a=a|0;a=r_a(a)|0;if(!((a|0)!=0?g2a(f[a+24>>2]|0,f[32962]|0)|0:0))a=0;return a|0}function rCa(a,b){a=a|0;b=b|0;if(v2a(f[b+4>>2]|0)|0)b=lNa(f[a>>2]|0,b)|0;return b|0}function sCa(a,b){a=a|0;b=b|0;QUa(a,PRa(f[b>>2]|0)|0);return}function tCa(a,b){a=a|0;b=b|0;sk(a,ORa(f[b>>2]|0)|0);return}function uCa(a,b){a=a|0;b=b|0;jl(a,PRa(f[b>>2]|0)|0);return}function vCa(a,b){a=a|0;b=b|0;gq(a,QRa(f[b>>2]|0)|0);return}function wCa(a,b){a=a|0;b=b|0;Dg(a,$Ra(f[b>>2]|0)|0);return}function xCa(a,b){a=a|0;b=b|0;Sh(a,aSa(f[b>>2]|0)|0);return}function yCa(a,b){a=a|0;b=b|0;zC(a,NRa(f[b>>2]|0)|0);return}function zCa(a,b){a=a|0;b=b|0;vga(a,FRa(f[b>>2]|0)|0);return}function ACa(a){a=a|0;f[a>>2]=40900;SQa(a+184|0);XLa(a);return}function BCa(a){a=a|0;pya(a);mX(a+16|0);f[a>>2]=42096;return}function CCa(a,b){a=a|0;b=b|0;var c=0;c=s8(92)|0;z_(c,b);N_(a,c);return}function DCa(a,b){a=a|0;b=b|0;return $n(a,b,j7a(b)|0)|0}function ECa(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function FCa(a,b,c){a=a|0;b=b|0;c=c|0;a=kTa(f[a>>2]|0)|0;f[a+8>>2]=f[b>>2];f[a+4>>2]=c;return a|0}function GCa(a,b){a=a|0;b=b|0;HK(a,bSa(f[b>>2]|0)|0);return}function HCa(a,b){a=a|0;b=b|0;Vs(a,bSa(f[b>>2]|0)|0);return}function ICa(a,b){a=a|0;b=b|0;P0a(DRa(f[b>>2]|0)|0);return}function JCa(a,b){a=a|0;b=b|0;Q0a(FRa(f[b>>2]|0)|0);return}function KCa(a,b){a=a|0;b=b|0;O5(a,$Ra(f[b>>2]|0)|0);return}function LCa(a,b){a=a|0;b=b|0;Xt(a,aSa(f[b>>2]|0)|0);return}function MCa(a){a=a|0;if((b[a+8>>0]|0)==0?(x=0,ta(502,a|0),a=x,x=0,a&1):0){a=Ja(0)|0;y2a(a)}return}function NCa(a,b){a=a|0;b=b|0;TDa(a+16|0,b);xd(a);return}function OCa(a){a=a|0;var b=0,c=0;a=f[a>>2]|0;c=a+4|0;b=f[c>>2]|0;f[c>>2]=b+-1;if(!b)oc[f[(f[a>>2]|0)+8>>2]&1023](a);return}function PCa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==2){b=oJa(b)|0;b=BJa(0,b|0,32)|0;XSa(a,b,I);return}else hb()}function QCa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==1){b=f[b+8>>2]|0;XSa(a,b,((b|0)<0)<<31>>31);return}else Ca(92953,75445,191,101921)}function RCa(a){a=a|0;var b=0;b=f[a+4>>2]|0;if(!b)Ca(91357,99430,193,91389);else return (f[a>>2]|0)+(b+-1<<2)|0;return 0}function SCa(a,b){a=a|0;b=b|0;aG(a,NRa(f[b>>2]|0)|0);return}function TCa(a,b){a=a|0;b=b|0;tWa(a,XQa(f[b>>2]|0)|0);return}function UCa(a,c,d){a=a|0;c=c|0;d=d|0;if(!((b[a+8>>0]|d)<<24>>24))return (f[a>>2]|0)==(c|0)|0;else Ca(108393,106511,67,123727);return 0}function VCa(a,b){a=a|0;b=b|0;b=SKa(f[a>>2]|0,b,2)|0;return rBa(f[a>>2]|0,24,b)|0}function WCa(a,b,c){a=a|0;b=b|0;c=c|0;Zga(a,b,c<<4);return}function XCa(a){a=a|0;var b=0;b=a+4|0;a=f[b>>2]|0;f[b>>2]=0;if(a|0){I_a(a);Cbb(a)}return}function YCa(a){a=a|0;Yka(a);return}function ZCa(a){a=a|0;Zka(a);return}function _Ca(a){a=a|0;_ka(a);return}function $Ca(a){a=a|0;Yja(a);return}function aDa(a){a=a|0;$ka(a);return}function bDa(a){a=a|0;ala(a);return}function cDa(a,b){a=a|0;b=b|0;var c=0;a=a+84|0;c=f[a>>2]|0;if(c|0)aYa(f[c+104>>2]|0);f[a>>2]=b;return b|0}function dDa(a,b){a=a|0;b=b|0;ofa(a,lSa(f[b>>2]|0)|0);return}function eDa(a,b){a=a|0;b=b|0;nC(a,lSa(f[b>>2]|0)|0);return}function fDa(a,b){a=a|0;b=b|0;ZC(a,bSa(f[b>>2]|0)|0);return}function gDa(a,b){a=a|0;b=b|0;pZ(a,cSa(f[b>>2]|0)|0);return}function hDa(a,b){a=a|0;b=b|0;Hxa(a,dSa(f[b>>2]|0)|0);return}function iDa(a,b){a=a|0;b=b|0;ks(a,mSa(f[b>>2]|0)|0);return}function jDa(){var a=0,b=0,c=0;a=s8(88)|0;b=a;c=b+88|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));sja(a);return a|0}function kDa(a){a=a|0;WGa(a);f[a>>2]=44060;f[a+44>>2]=0;f[a+48>>2]=0;f[a+52>>2]=0;return}function lDa(a){a=a|0;var b=0;b=a+4|0;f[b>>2]=1;if(!((f[(f[a+12>>2]|0)+4>>2]|0)!=5?(f[(f[a+16>>2]|0)+4>>2]|0)!=5:0))f[b>>2]=5;return}function mDa(a){a=a|0;var b=0;b=u;u=u+16|0;rg(a);if(!(Vb(f[33828]|0,0)|0)){u=b;return}else LQa(122726,b)}function nDa(a){a=a|0;CRa(a+16|0);MTa(a);return}function oDa(a,b){a=a|0;b=b|0;var c=0;c=f[a+8>>2]|0;if((f[a+12>>2]|0)-c>>2>>>0>b>>>0)a=(f[c+(b<<2)>>2]|0)!=0;else a=0;return a|0}function pDa(a,b){a=a|0;b=b|0;BMa(a,ORa(f[b>>2]|0)|0);return}function qDa(a,b){a=a|0;b=b|0;aga(a,$Ra(f[b>>2]|0)|0);return}function rDa(a,b){a=a|0;b=b|0;iza(a,aSa(f[b>>2]|0)|0);return}function sDa(a,b){a=a|0;b=b|0;Spa(a,FRa(f[b>>2]|0)|0);return}function tDa(a,b){a=a|0;b=b|0;RPa(a,nRa(f[b>>2]|0)|0);return}function uDa(a){a=a|0;f[a>>2]=40248;tEa(a+44|0);QTa(a);return}function vDa(a){a=a|0;var c=0,d=0;d=(b[a>>0]|0)+-48|0;while(1){a=a+1|0;c=b[a>>0]|0;if(!(c<<24>>24))break;d=(d*10|0)+-48+(c<<24>>24)|0}return d|0}function wDa(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;a=Jbb(f[a+60>>2]|0)|0;f[c>>2]=a;a=N_a(ab(6,c|0)|0)|0;u=b;return a|0}function xDa(a){a=a|0;Cla(a);return}function yDa(a){a=a|0;Dla(a);return}function zDa(a){a=a|0;return cQa(f[a+4>>2]|0)|0}function ADa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;b[e>>0]=b[c>>0]|0;e=e+1|0;c=c+1|0}return d|0}function BDa(a,b){a=a|0;b=b|0;BVa(a,bSa(f[b>>2]|0)|0);return}function CDa(a,b){a=a|0;b=b|0;wK(a,lSa(f[b>>2]|0)|0);return}function DDa(a,b){a=a|0;b=b|0;Og(a,bSa(f[b>>2]|0)|0);return}function EDa(a,b){a=a|0;b=b|0;Mba(a,dSa(f[b>>2]|0)|0);return}function FDa(a,b){a=a|0;b=b|0;hW(a,mSa(f[b>>2]|0)|0);return}function GDa(a,b){a=a|0;b=b|0;lha(a,mSa(f[b>>2]|0)|0);return}function HDa(a,b){a=a|0;b=b|0;QZ(a,mSa(f[b>>2]|0)|0);return}function IDa(a,b){a=a|0;b=b|0;n1a(ORa(f[b>>2]|0)|0);return}function JDa(a,b){a=a|0;b=b|0;o1a(PRa(f[b>>2]|0)|0);return}function KDa(a,b){a=a|0;b=b|0;p1a(QRa(f[b>>2]|0)|0);return}function LDa(){var a=0,b=0,c=0;a=s8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Gza(a);return a|0}function MDa(a,b){a=a|0;b=b|0;Gs(a+16|0,b);Bg(a);return}function NDa(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 kc[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ODa(a,b){a=a|0;b=b|0;if((f[a+4>>2]|0)>>>0>b>>>0)return (f[a>>2]|0)+(b<<2)|0;else Ca(99409,99430,169,123759);return 0}function PDa(a,b){a=a|0;b=b|0;var c=0;c=s8(24)|0;GLa(c,5);n6(c,a);f[c+8>>2]=b;return c|0}function QDa(a,b){a=a|0;b=b|0;UC(aSa(f[b>>2]|0)|0);return}function RDa(a,b){a=a|0;b=b|0;NW(a,$Ra(f[b>>2]|0)|0);return}function SDa(a,b){a=a|0;b=b|0;aV(a,QRa(f[b>>2]|0)|0);return}function TDa(a,b){a=a|0;b=b|0;AI(a,b+36|0);return}function UDa(a,b){a=a|0;b=b|0;yqa(a,NRa(f[b>>2]|0)|0);return}function VDa(a,b){a=a|0;b=b|0;_Na(a,DRa(f[b>>2]|0)|0);return}function WDa(a,b){a=a|0;b=b|0;CC(a,NRa(f[b>>2]|0)|0);return}function XDa(a,b){a=a|0;b=b|0;fy(a,ERa(f[b>>2]|0)|0);return}function YDa(a){a=a|0;iVa(a+12|0);Zwa(a);return}function ZDa(a){a=a|0;Qla(a);return}function _Da(a,b){a=a|0;b=b|0;r5(a,lSa(f[b>>2]|0)|0);return}function $Da(a,b){a=a|0;b=b|0;WHa(a);f[a>>2]=45188;f[a+44>>2]=f[b>>2];return}function aEa(a){a=a|0;if(((b[a+27>>0]|0)==0?(f[a+72>>2]|0)==0:0)?(b[a+77>>0]|0)==0:0)a=(b[a+79>>0]|0)!=0;else a=1;return a|0}function bEa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;f[e>>2]=b[c>>0];e=e+4|0;c=c+1|0}return d|0}function cEa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65646?a+4|0:0)|0}function dEa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65452?a+4|0:0)|0}function eEa(a,b){a=a|0;b=b|0;jW(a,vSa(f[b>>2]|0)|0);return}function fEa(a,b){a=a|0;b=b|0;BI(a,b+36|0);return}function gEa(a,b){a=a|0;b=b|0;II(a,b+36|0);return}function hEa(a,b){a=a|0;b=b|0;CI(a,b+36|0);return}function iEa(a,b){a=a|0;b=b|0;JI(a,b+36|0);return}function jEa(a,b){a=a|0;b=b|0;DI(a,b+36|0);return}function kEa(a,b){a=a|0;b=b|0;cSa(f[b>>2]|0)|0;kWa(a);return}function lEa(a,b){a=a|0;b=b|0;mSa(f[b>>2]|0)|0;d2a(a);return}function mEa(a,b){a=a|0;b=b|0;xqa(a,ORa(f[b>>2]|0)|0);return}function nEa(a,b){a=a|0;b=b|0;Rqa(a,FRa(f[b>>2]|0)|0);return}function oEa(a,b){a=a|0;b=b|0;Eu(a,NRa(f[b>>2]|0)|0);return}function pEa(a,b){a=a|0;b=b|0;EI(a,b+36|0);return}function qEa(){var a=0;a=s8(20)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;TWa(a);return a|0}function rEa(a,c){a=a|0;c=c|0;var d=0;b[a+77>>0]=1;d=a+79|0;b[d>>0]=b[d>>0]|c;if(!(b[a+24>>0]|0))b[a+78>>0]=1;return}function sEa(a){a=a|0;FGa(a);f[a>>2]=46032;f[a+184>>2]=0;f[a+188>>2]=0;f[a+192>>2]=0;return}function tEa(a){a=a|0;Ela(a);return}function uEa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==65171?a+4|0:0)|0}function vEa(a,b){a=a|0;b=b|0;hka(a,lSa(f[b>>2]|0)|0);return}function wEa(a,b){a=a|0;b=b|0;if(f2a(f[a>>2]|0,f[b>>2]|0)|0)a=0;else a=vW(a,b)|0;return a|0}function xEa(a,b){a=a|0;b=b|0;qk(a,b);return}function yEa(a,c){a=a|0;c=c|0;rXa(a);f[a+28>>2]=c;b[a+32>>0]=0;return}function zEa(a,b){a=a|0;b=b|0;return XE(a,b,j7a(b)|0)|0}function AEa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==92e3?a+4|0:0)|0}function BEa(a,b,c){a=a|0;b=b|0;c=c|0;eR(a,b);f[a+12>>2]=c;return}function CEa(a,b){a=a|0;b=b|0;mSa(f[b>>2]|0)|0;HXa(a);return}function DEa(a,b){a=a|0;b=b|0;RPa(a,ORa(f[b>>2]|0)|0);return}function EEa(a,b){a=a|0;b=b|0;Qqa(a,PRa(f[b>>2]|0)|0);return}function FEa(a,b){a=a|0;b=b|0;Rqa(a,$Ra(f[b>>2]|0)|0);return}function GEa(a,b){a=a|0;b=b|0;lna(a,aSa(f[b>>2]|0)|0);return}function HEa(a,b){a=a|0;b=b|0;s1(a,aSa(f[b>>2]|0)|0);return}function IEa(a,b){a=a|0;b=b|0;Pt(a,$Ra(f[b>>2]|0)|0);return}function JEa(a,b){a=a|0;b=b|0;ts(a,aSa(f[b>>2]|0)|0);return}function KEa(a,b){a=a|0;b=b|0;R1a(lSa(f[b>>2]|0)|0);return}function LEa(a,b){a=a|0;b=b|0;S1a(bSa(f[b>>2]|0)|0);return}function MEa(a,b){a=a|0;b=b|0;T1a(cSa(f[b>>2]|0)|0);return}function NEa(a,b){a=a|0;b=b|0;U1a(dSa(f[b>>2]|0)|0);return}function OEa(a,b){a=a|0;b=b|0;V1a(mSa(f[b>>2]|0)|0);return}function PEa(a,b){a=a|0;b=b|0;var c=0;c=Jbb(f[a+20>>2]|0)|0;qg(b,c,f[a+40>>2]|0);return}function QEa(a,b){a=a|0;b=b|0;if((f[b+4>>2]|0)==2)b=rBa(f[a+8>>2]|0,24,b)|0;return b|0}function REa(a){a=a|0;var b=0;a=a+4|0;b=f[a>>2]|0;if(!b)Ca(91357,99430,198,91380);else{f[a>>2]=b+-1;return}}function SEa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=a;while(1){c=c+-1|0;f[d>>2]=b;if(!c)break;else d=d+4|0}}return a|0}function TEa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;aH(a,1,45);return}function UEa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e_(a,1,45);return}function VEa(a){a=a|0;zSa(a+32|0);zSa(a+20|0);SQa(a);return}function WEa(a,b){a=a|0;b=b|0;YRa(PRa(f[b>>2]|0)|0);return}function XEa(a,b){a=a|0;b=b|0;qQa(a,ERa(f[b>>2]|0)|0);return}function YEa(){var a=0,b=0,c=0;a=s8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));eGa(a);return a|0}function ZEa(a,c){a=a|0;c=c|0;var d=0;b[a+76>>0]=1;d=a+79|0;b[d>>0]=b[d>>0]|c;if(!(b[a+24>>0]|0))b[a+78>>0]=1;return}function _Ea(a){a=+a;var b=0;if(a>-2147483648.0&a<2147483647.0)b=~~a;else{b=vRa(a)|0;b=JMa(b|0,I|0,63)|0;b=b+2147483647|0}return b|0}function $Ea(a){a=a|0;switch(a&74){case 64:{a=8;break}case 8:{a=16;break}case 0:{a=0;break}default:a=10}return a|0}function aFa(a,b){a=a|0;b=b|0;return pJ(a,b,i7a(b)|0)|0}function bFa(a,b){a=a|0;b=b|0;return NK(a,b,j7a(b)|0)|0}function cFa(a,b){a=a|0;b=b|0;return wL(a,b,j7a(b)|0)|0}function dFa(a,b){a=a|0;b=b|0;xH(a,nRa(f[b>>2]|0)|0);return}function eFa(a,b){a=a|0;b=b|0;kr(a,vSa(f[b>>2]|0)|0);return}function fFa(a,b){a=a|0;b=b|0;cV(a,$Ra(f[b>>2]|0)|0);return}function gFa(a,b){a=a|0;b=b|0;aD(a,aSa(f[b>>2]|0)|0);return}function hFa(a){a=a|0;var c=0;b[a>>0]=0;b[a+1>>0]=1;b[a+2>>0]=0;c=a+4|0;f[a+16>>2]=0;f[c>>2]=0;f[c+4>>2]=0;d[c+8>>1]=0;return}function iFa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=43900;return}function jFa(a){a=a|0;F5(f[a+4>>2]|0);return}function kFa(){var a=0;a=zr(132756,12)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;Z2a(a);return a|0}function lFa(a,b){a=a|0;b=b|0;YRa(bSa(f[b>>2]|0)|0);return}function mFa(a,b){a=a|0;b=b|0;VLa(a,lSa(f[b>>2]|0)|0);return}function nFa(a,b){a=a|0;b=b|0;AI(a,b+8|0);return}function oFa(){var a=0;a=s8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;m_a(a);return a|0}function pFa(){var a=0,b=0,c=0;a=s8(48)|0;b=a;c=b+48|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));JSa(a);return a|0}function qFa(){var a=0,b=0,c=0;a=s8(48)|0;b=a;c=b+48|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));EOa(a);return a|0}function rFa(){var a=0,b=0,c=0;a=s8(68)|0;b=a;c=b+68|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));yia(a);return a|0}function sFa(a){a=a|0;Z6(a+4|0);return}function tFa(a){a=a|0;_6(a+4|0);return}function uFa(a){a=a|0;$6(a+4|0);return}function vFa(a){a=a|0;a7(a+4|0);return}function wFa(a){a=a|0;b7(a+4|0);return}function xFa(a,b,c){a=a|0;b=b|0;c=c|0;b=zZ(a+88|0,b)|0;f[b>>2]=c;return}function yFa(a,b){a=a|0;b=b|0;QI(a,b+36|0);return}function zFa(a,b){a=a|0;b=b|0;XK(a,b+36|0);return}function AFa(a,b){a=a|0;b=b|0;wVa(a,vSa(f[b>>2]|0)|0);return}function BFa(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;f[a>>2]=c;b[a+4>>0]=d&1;b[a+5>>0]=e&1;f[a+8>>2]=g;return}function CFa(a){a=a|0;Sma(a);return}function DFa(a){a=a|0;x=0;ga(328,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;y2a(a)}else return}function EFa(a,b){a=a|0;b=b|0;BI(a,b+8|0);return}function FFa(a,b){a=a|0;b=b|0;II(a,b+8|0);return}function GFa(a,b){a=a|0;b=b|0;CI(a,b+8|0);return}function HFa(a,b){a=a|0;b=b|0;JI(a,b+8|0);return}function IFa(a,b){a=a|0;b=b|0;DI(a,b+8|0);return}function JFa(a,b){a=a|0;b=b|0;iQa(a,bSa(f[b>>2]|0)|0);return}function KFa(a,b){a=a|0;b=b|0;qQa(a,dSa(f[b>>2]|0)|0);return}function LFa(a,b){a=a|0;b=b|0;tWa(a,mSa(f[b>>2]|0)|0);return}function MFa(a,b){a=a|0;b=b|0;EI(a,b+8|0);return}function NFa(){var a=0,b=0,c=0;a=s8(84)|0;b=a;c=b+84|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Wua(a);return a|0}function OFa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));YSa(a);return a|0}function PFa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));ZSa(a);return a|0}function QFa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=nG(a,b,c,g)|0;u=e;return d|0}function RFa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==61825?a+4|0:0)|0}function SFa(a){a=a|0;if(!(zab(a)|0)?!(Dab(a)|0):0)a=Nab(a)|0;else a=1;return a|0}function TFa(a,b){a=a|0;b=b|0;WI(a,b+36|0);return}function UFa(a,b){a=a|0;b=b|0;XI(a,b+36|0);return}function VFa(a,b){a=a|0;b=b|0;GF(a,vSa(f[b>>2]|0)|0);return}function WFa(a,b){a=a|0;b=b|0;ZK(a,b+36|0);return}function XFa(a,b){a=a|0;b=b|0;var c=0;c=s8(4)|0;_0a(c,b);f[a>>2]=c;return}function YFa(a){a=a|0;SQa(a+12|0);return}function ZFa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==73516?a+4|0:0)|0}function _Fa(a){a=a|0;Jbb(a)|0;if(Oab(f[a>>2]|0)|0)a=f2a(f[a+8>>2]|0,f[33282]|0)|0;else a=0;return a|0}function $Fa(a){a=a|0;a=(FRa(a)|0)+16|0;return TRa((QRa(f[a>>2]|0)|0)+8|0)|0}function aGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==4){XSa(a,c,d);f[a>>2]=2;return}else Ca(101662,75445,52,101680)}function bGa(a,b){a=a|0;b=b|0;TV(a,lSa(f[b>>2]|0)|0);return}function cGa(a,b,c){a=a|0;b=b|0;c=c|0;f[a+4>>2]=b;if((b|0)==0?Jbb(f[a+16>>2]|0)|0:0)Bz(a,1,c);return}function dGa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));hTa(a);return a|0}function eGa(a){a=a|0;jJa(a);f[a>>2]=42616;DUa(a+44|0);return}function fGa(a){a=a|0;f[a>>2]=43472;SQa(a+48|0);QTa(a);return}function gGa(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;uc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function hGa(){f[32817]=0;f[32816]=49904;rab();f[32816]=47944;f[32818]=47992;return}function iGa(){f[32813]=0;f[32812]=49904;sab();f[32812]=47860;f[32814]=47908;return}function jGa(a,b){a=a|0;b=b|0;if(g2a(a,b)|0)a=1;else a=g2a(b,39608)|0;return a|0}function kGa(a,b){a=a|0;b=b|0;QA(a,aSa(f[b>>2]|0)|0);return}function lGa(a,b){a=a|0;b=b|0;YI(a,b+36|0);return}function mGa(a,b){a=a|0;b=b|0;U0(a,vSa(f[b>>2]|0)|0);return}function nGa(a,b){a=a|0;b=b|0;eJ(a,b+8|0);Rbb()}function oGa(a,b){a=a|0;b=b|0;xaa(a,b);return}function pGa(a){a=a|0;var b=0,c=0;a=s8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));kDa(a);return a|0}function qGa(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=a;f[d+4>>2]=b;N_a(bb(91,d|0)|0)|0;u=c;return}function rGa(a){a=a|0;cna(a);return}function sGa(){var a=0;f[32825]=0;f[32824]=49904;a=kOa()|0;f[32826]=a;f[32824]=49140;return}function tGa(){var a=0;f[32821]=0;f[32820]=49904;a=kOa()|0;f[32822]=a;f[32820]=49116;return}function uGa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==2){XSa(a,c,d);f[a>>2]=4;return}else Ca(92925,75445,38,92943)}function vGa(a,b){a=a|0;b=b|0;D2a(vSa(f[b>>2]|0)|0);return}function wGa(a,b){a=a|0;b=b|0;AU(a,b);return}function xGa(a,b){a=a|0;b=b|0;BU(a,b);return}function yGa(){var a=0,b=0,c=0;a=s8(68)|0;b=a;c=b+68|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Wra(a);return a|0}function zGa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));ETa(a);return a|0}function AGa(){var a=0,b=0,c=0;a=s8(88)|0;b=a;c=b+88|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Iaa(a);return a|0}function BGa(){var a=0,b=0,c=0;a=s8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));UHa(a);return a|0}function CGa(a,b){a=a|0;b=b|0;if((b|0)==0&0==0)a=(Jta(a)|0)+32|0;else a=Jta(b)|0;return a|0}function DGa(a,c){a=a|0;c=c|0;a=(Hr(a,f[c+24>>2]|0)|0)+1|0;return a+(0-(b[c+20>>0]|0)&10)|0}function EGa(a,c){a=a|0;c=c|0;rXa(a);f[a+24>>2]=f[c>>2];b[a+28>>0]=1;f[a+32>>2]=0;return}function FGa(a){a=a|0;pya(a);s2(a+16|0);f[a>>2]=46076;return}function GGa(a){a=a|0;MTa(a+4|0);return}function HGa(a,b,c){a=a|0;b=b|0;c=c|0;return wqa(hs(a,b,c)|0)|0}function IGa(a){a=a|0;var b=0;rXa(a);a=a+24|0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function JGa(a,b){a=a|0;b=b|0;ZT(a,Zab(b)|0)|0;return}function KGa(a,b){a=a|0;b=b|0;nZa(a);NVa(a+8|0,b);Bab(a+24|0);return}function LGa(a){a=a|0;VL(a+16|0);LVa(a);return}function MGa(a){a=a|0;pya(a);s2(a+16|0);f[a>>2]=40940;return}function NGa(a){a=a|0;Bna(a);return}function OGa(a){a=a|0;qHa(a);t1a(a+56|0);return}function PGa(a){a=a|0;rHa(a);t1a(a+60|0);return}function QGa(a,b){a=a|0;b=b|0;QI(a,b+8|0);return}function RGa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));PTa(a);return a|0}function SGa(){var a=0,b=0,c=0;a=s8(116)|0;b=a;c=b+116|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));Sxa(a);return a|0}function TGa(){var a=0,b=0,c=0;a=s8(120)|0;b=a;c=b+120|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));F_(a);return a|0}function UGa(a,b){a=a|0;b=b|0;Efa(a+92|0,b)|0;return}function VGa(a){a=a|0;f[a>>2]=46032;P1a(f[a+184>>2]|0);wLa(a);return}function WGa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44100;return}function XGa(a){a=a|0;var b=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=32768;b=Qbb()|0;f[a+20>>2]=b;f[a+24>>2]=0;return}function YGa(a){a=a|0;SQa(a+28|0);P_a(a);return}function ZGa(a){a=a|0;var b=0;b=s8(8)|0;f[b>>2]=43148;f[b+4>>2]=f[a+4>>2];return b|0}function _Ga(a){a=a|0;var b=0;b=s8(8)|0;f[b>>2]=43104;f[b+4>>2]=f[a+4>>2];return b|0}function $Ga(a){a=a|0;var b=0;b=s8(8)|0;f[b>>2]=43060;f[b+4>>2]=f[a+4>>2];return b|0}function aHa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;b[a>>0]=0;f[a+20>>2]=c;b[a+24>>0]=d&1;b[a+25>>0]=e&1;return a|0}function bHa(a,b){a=a|0;b=b|0;np(a,aSa(f[b>>2]|0)|0);return}function cHa(a,b){a=a|0;b=b|0;bJ(a,b+36|0);return}function dHa(a,b){a=a|0;b=b|0;eJ(a,b+36|0);return}function eHa(a,b){a=a|0;b=b|0;var c=0;switch(b|0){case 1:{c=31;break}case 2:{c=63;break}default:hb()}return c&a|0}function fHa(a){a=a|0;var b=0;b=s8(48)|0;Kwa(b,f[a+44>>2]|0);return b|0}function gHa(a){a=a|0;LGa(a);Cbb(a);return}function hHa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=43536;return}function iHa(a,b){a=a|0;b=b|0;oZa(a);NVa(a+8|0,b);Bab(a+24|0);return}function jHa(a){a=a|0;OGa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function kHa(a){a=a|0;rPa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function lHa(a){a=a|0;PGa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function mHa(a){a=a|0;sPa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function nHa(a,b){a=a|0;b=b|0;var c=0;c=a+16|0;f[c>>2]=0;if(b|0){f[a>>2]=46116;f[a+4>>2]=b;f[c>>2]=a}return}function oHa(a){a=a|0;Ana(a);return}function pHa(a){a=a|0;nna(a);return}function qHa(a){a=a|0;f[a>>2]=41756;f[a+56>>2]=41776;aCa(a+4|0);return}function rHa(a){a=a|0;f[a>>2]=43024;f[a+60>>2]=43044;aCa(a+8|0);return}function sHa(a){a=a|0;OAa(a);t1a(a+64|0);return}function tHa(a,b){a=a|0;b=b|0;var c=0;a=a+8|0;c=f[a>>2]|0;iH(c|0,0,b<<2|0)|0;f[a>>2]=c+(b<<2);return}function uHa(a,b){a=a|0;b=b|0;var c=0;c=s8(24)|0;GLa(c,2);n6(c,a);f[c+4>>2]=b;return c|0}function vHa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==3){t$a(a,f[b+8>>2]|0);f[a>>2]=1;return}else Ca(101690,75445,45,101708)}function wHa(a,b,c){a=a|0;b=b|0;c=c|0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)Ca(53343,53386,59,123606);else{f[a>>2]=b;return a|0}return 0}function xHa(a,b){a=a|0;b=b|0;WI(a,b+8|0);return}function yHa(a,b){a=a|0;b=b|0;XI(a,b+8|0);return}function zHa(){var a=0,b=0,c=0;a=s8(56)|0;b=a;c=b+56|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));kDa(a);return a|0}function AHa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));$Ta(a);return a|0}function BHa(a){a=a|0;SQa(a+20|0);SQa(a);return}function CHa(a,b){a=a|0;b=b|0;if((f[a+8>>2]|0)>>>0>>0)Bda(a,b);return}function DHa(a){a=a|0;return k_a(f[a+32>>2]|0)|0}function EHa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==80062?a+4|0:0)|0}function FHa(a){a=a|0;if((f[a>>2]|0)==4){a=a+8|0;I=f[a+4>>2]|0;return f[a>>2]|0}else Ca(101662,55015,67,55053);return 0}function GHa(a){a=a|0;var b=0,c=0;a=s8(100)|0;b=a;c=b+100|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));loa(a);return a|0}function HHa(a,b){a=a|0;b=b|0;iL(a,b+36|0);return}function IHa(a,b){a=a|0;b=b|0;qo(a,vSa(f[b>>2]|0)|0);return}function JHa(a,b){a=a|0;b=b|0;var c=0;c=s8(48)|0;bMa(c,b);N_(a,c);return}function KHa(a){a=a|0;var b=0;DUa(a);b=a+12|0;f[b>>2]=b;f[a+16>>2]=b;f[a+20>>2]=0;return}function LHa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=X(c,b)|0;a=SB(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function MHa(a){a=a|0;sHa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function NHa(a){a=a|0;NPa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function OHa(a){a=a|0;Rca(a);return}function PHa(a){a=a|0;x=0;ga(327,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;y2a(a)}else return}function QHa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==1){t$a(a,f[b+8>>2]|0);f[a>>2]=3;return}else Ca(92953,75445,31,92971)}function RHa(a,b){a=a|0;b=b|0;bs(a,mSa(f[b>>2]|0)|0);return}function SHa(a,b){a=a|0;b=b|0;YI(a,b+8|0);return}function THa(a,b){a=a|0;b=b|0;if(!a)a=(PMa(b)|0)+32|0;else a=PMa(a)|0;return a|0}function UHa(a){a=a|0;hKa(a);f[a>>2]=45748;DUa(a+44|0);return}function VHa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=c;f[a+8>>2]=0;vna(a);return}function WHa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45228;return}function XHa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==89409?a+12|0:0)|0}function YHa(a,b){a=a|0;b=b|0;hJ(a,b+36|0);return}function ZHa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44020;return}function _Ha(a){a=a|0;a=(FRa(a)|0)+16|0;return 32-(V4(f[a>>2]|0)|0)|0}function $Ha(a){a=a|0;if(!a)a=1;else a=Jbb(f[a+16>>2]|0)|0;return a|0}function aIa(a,b){a=a|0;b=b|0;ml(a,dSa(f[b>>2]|0)|0);return}function bIa(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;f[c>>2]=b;if((b|0)==0?(f[(f[a+12>>2]|0)+4>>2]|0)==5:0)f[c>>2]=5;return}function cIa(a,b){a=a|0;b=b|0;IYa(a);Bab(a+12|0);NVa(a+16|0,b);return}function dIa(a,b,c){a=a|0;b=b|0;c=c|0;if(b>>>0>>0)Ca(105586,105548,130,113536);else return b>>>0>c>>>0|a<<24>>24!=0|0;return 0}function eIa(a,b){a=a|0;b=b|0;f[b>>2]=43148;f[b+4>>2]=f[a+4>>2];return}function fIa(a,b){a=a|0;b=b|0;f[b>>2]=43104;f[b+4>>2]=f[a+4>>2];return}function gIa(a,b){a=a|0;b=b|0;f[b>>2]=43060;f[b+4>>2]=f[a+4>>2];return}function hIa(a){a=a|0;if(Dab(f[a>>2]|0)|0)return Jbb(f[(f[a+8>>2]|0)+4>>2]|0)|0;else Ca(53407,75335,393,53417);return 0}function iIa(a,b){a=a|0;b=b|0;var c=0;c=s8(24)|0;GLa(c,1);f[c+4>>2]=a;f[c+8>>2]=b;return c|0}function jIa(a){a=a|0;f[a>>2]=43980;_La(a+48|0);QTa(a);return}function kIa(a,b){a=a|0;b=b|0;mJ(a,b+36|0);return}function lIa(a,b){a=a|0;b=b|0;nJ(a,b+36|0);return}function mIa(a,b){a=a|0;b=b|0;uZa(a);Bab(a+8|0);NVa(a+12|0,b);return}function nIa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((b+1|0)>>>0<=1?(d=(f[a>>2]|0)<0,e=(c&64)==0,e|d):0)return e&d|0;return 1}function oIa(){var a=0,b=0,c=0;a=s8(112)|0;b=a;c=b+112|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));ana(a);return a|0}function pIa(){var a=0,b=0,c=0;a=s8(100)|0;b=a;c=b+100|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));loa(a);return a|0}function qIa(a,b){a=a|0;b=b|0;var c=0;c=s8(48)|0;YKa(c,b);N_(a,c);return}function rIa(a){a=a|0;ooa(a);return}function sIa(a){a=a|0;Pna(a);return}function tIa(a,b){a=a|0;b=b|0;bJ(a,b+8|0);return}function uIa(a,b){a=a|0;b=b|0;pZa(a);NVa(a+8|0,b);Bab(a+24|0);return}function vIa(a,b){a=a|0;b=b|0;KV(a,b);return}function wIa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=40288;return}function xIa(a){a=a|0;SQa(a+4|0);return}function yIa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==4){HAa(a,+SNa(b));return}else Ca(101662,75445,228,101730)}function zIa(a,b){a=a|0;b=b|0;qJ(a,b+36|0);return}function AIa(a,b){a=a|0;b=b|0;rJ(a,b+36|0);return}function BIa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));xxa(a);return a|0}function CIa(a){a=a|0;__a(a);b[a+36>>0]=0;lQa(a+40|0);return}function DIa(a){a=a|0;var b=0;f[a>>2]=49660;a=a+8|0;b=f[a>>2]|0;if((b|0)!=(kOa()|0))X2a(f[a>>2]|0);return}function EIa(a){a=a|0;t8(f[a+4>>2]|0);return}function FIa(a){a=a|0;vya(a);return}function GIa(a,b){a=a|0;b=b|0;RLa(lSa(f[b>>2]|0)|0);return}function HIa(a,b){a=a|0;b=b|0;iL(a,b+8|0);return}function IIa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45028;return}function JIa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45708;return}function KIa(a,b,c){a=a|0;b=b|0;c=c|0;return yw(a,b,c)|0}function LIa(a){a=a|0;aW(a);return}function MIa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==3){pqa(a,+TNa(b));return}else Ca(101690,75445,201,101744)}function NIa(a){a=a|0;if(!(b[a>>0]|0))Ca(66638,65740,322,66645);else return f[a+4>>2]|0;return 0}function OIa(a,b){a=a|0;b=b|0;G3(a,vSa(f[b>>2]|0)|0);return}function PIa(a,b){a=a|0;b=b|0;xJ(a,b+36|0);return}function QIa(a,b){a=a|0;b=b|0;yJ(a,b+36|0);return}function RIa(a,b){a=a|0;b=b|0;zJ(a,b+36|0);return}function SIa(a,b){a=a|0;b=b|0;AJ(a,b+36|0);return}function TIa(a,b){a=a|0;b=b|0;BJ(a,b+36|0);return}function UIa(){var a=0,b=0,c=0;a=s8(96)|0;b=a;c=b+96|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));u3(a);return a|0}function VIa(){var a=0,b=0,c=0;a=s8(104)|0;b=a;c=b+104|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));PPa(a);return a|0}function WIa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a>>2]=c;f[a+4>>2]=e;b[a+8>>0]=0;f[a+12>>2]=d;return}function XIa(a){a=a|0;aPa(a);DUa(a+36|0);DUa(a+48|0);return}function YIa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=43192;return}function ZIa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=42016;return}function _Ia(a,b,c){a=a|0;b=b|0;c=c|0;Zga(a,b,c*24|0);return}function $Ia(a,b,c){a=a|0;b=b|0;c=c|0;c=Pva(Pva(f[a>>2]|0,c)|0,b)|0;f[a>>2]=c;return}function aJa(a,b){a=a|0;b=b|0;Eva(a+40|0);return}function bJa(a){a=a|0;rXa(a);DUa(a+24|0);return}function cJa(a,b){a=a|0;b=b|0;var c=0;a=a+4|0;c=f[a>>2]|0;iH(c|0,0,b<<2|0)|0;f[a>>2]=c+(b<<2);return}function dJa(a){a=a|0;cpa(a);return}function eJa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return vr(c,d,e)|0}function fJa(a){a=a|0;var c=0,d=0;c=5381;while(1){d=b[a>>0]|0;if(!(d<<24>>24))break;a=a+1|0;c=c*33^d<<24>>24}return c|0}function gJa(a,b){a=a|0;b=b|0;hJ(a,b+8|0);return}function hJa(a,b){a=a|0;b=b|0;iJ(a,b+8|0);return}function iJa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=f[b>>2];f[a+4>>2]=c;f[a+8>>2]=d;return}function jJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=42656;return}function kJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=41832;return}function lJa(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 jc[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function mJa(a){a=a|0;x=0;ga(330,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;y2a(a)}else return}function nJa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Nr(c,d,e)|0}function oJa(a){a=a|0;if((f[a>>2]|0)==2){a=a+8|0;I=f[a+4>>2]|0;return f[a>>2]|0}else Ca(92925,55015,60,55031);return 0}function pJa(a){a=a|0;if(!(b[a>>0]|0))return f[a+4>>2]|0;else Ca(66653,65740,326,66661);return 0}function qJa(a,b){a=a|0;b=b|0;EJ(a,b+36|0);return}function rJa(a,b){a=a|0;b=b|0;JJ(a,b+36|0);return}function sJa(a,b){a=a|0;b=b|0;hb();return 0}function tJa(){var a=0,b=0,c=0;a=s8(36)|0;b=a;c=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));qSa(a);return a|0}function uJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44300;return}function vJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44380;return}function wJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44548;return}function xJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45468;return}function yJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=42576;return}function zJa(a,b){a=a|0;b=b|0;return bpa(a,b<<4)|0}function AJa(a){a=a|0;bk(Jbb(a)|0);Ema(134176,10)|0;hb()}function BJa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>c;return a>>>c|(b&(1<>c-32|0}function CJa(a){a=a|0;var b=0;b=a+16|0;f[b>>2]=f[b>>2]|1;if(!(f[a+20>>2]&1))return;else Na()}function DJa(a){a=a|0;Soa(a);return}function EJa(a,b){a=a|0;b=b|0;mJ(a,b+8|0);return}function FJa(a,b){a=a|0;b=b|0;nJ(a,b+8|0);return}function GJa(a){a=a|0;f[a>>2]=43816;zSa(a+44|0);QTa(a);return}function HJa(a,b){a=a|0;b=b|0;return b>>>0<1106247679|(b|0)==1106247679&a>>>0<4292870145|(b|0)<0&(b>>>0<3220176896|(b|0)==-1074790400&a>>>0<0)|0}function IJa(a,b){a=a|0;b=b|0;return b>>>0<1105199103|(b|0)==1105199103&a>>>0<4290772993|(b|0)<0&(b>>>0<3252682752|(b|0)==-1042284544&a>>>0<1)|0}function JJa(a,b){a=a|0;b=b|0;if(!b)a=0;else a=Hr(a,b)|0;return a|0}function KJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=42776;return}function LJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=43776;return}function MJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45108;return}function NJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=40044;return}function OJa(a){a=a|0;MTa(a+12|0);MTa(a);return}function PJa(a,b){a=a|0;b=b|0;f[b>>2]=42976;return}function QJa(a){a=a|0;return 36056}function RJa(a,b){a=a|0;b=b|0;Sm(a,vSa(f[b>>2]|0)|0);return}function SJa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function TJa(a,b){a=a|0;b=b|0;KJ(a,b+36|0);return}function UJa(a,b){a=a|0;b=b|0;MJ(a,b+36|0);return}function VJa(){var a=0,b=0,c=0;a=s8(44)|0;b=a;c=b+44|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));aWa(a);return a|0}function WJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=43616;return}function XJa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45548;return}function YJa(a,b){a=a|0;b=b|0;f[a>>2]=40124;f[a+4>>2]=b;f[a+16>>2]=a;return}function ZJa(a){a=a|0;e9(f[a+4>>2]|0);return}function _Ja(a,b){a=a|0;b=b|0;qJ(a,b+8|0);return}function $Ja(a,b){a=a|0;b=b|0;rJ(a,b+8|0);return}function aKa(a,b){a=a|0;b=b|0;f[a+4>>2]=b;if((b|0)==0?Jbb(f[a+16>>2]|0)|0:0)Bz(a,0,0);return}function bKa(a){a=a|0;zSa(a+24|0);zSa(a+12|0);zSa(a);return}function cKa(){var a=0;a=s8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;D0a(a);return a|0}function dKa(a){a=a|0;b[a+76>>0]=1;b[a+77>>0]=1;b[a+79>>0]=1;if(!(b[a+24>>0]|0))b[a+78>>0]=1;return}function eKa(a,b){a=a|0;b=b|0;b=b+36|0;a=fv(a,f[b>>2]|0)|0;f[b>>2]=a;return}function fKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=42456;return}function gKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=42896;return}function hKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45788;return}function iKa(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;$(13);return 0}function jKa(a){a=a|0;var b=0;a=a+4|0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function kKa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((b|0)==2){t$a(a,c);return}else Ca(92925,75445,223,101894)}function lKa(a,b){a=a|0;b=b|0;if((f[b>>2]|0)==1){XSa(a,f[b+8>>2]|0,0);return}else Ca(92953,75445,196,101908)}function mKa(a,b){a=a|0;b=b|0;XJ(a,b+36|0);return}function nKa(a,b){a=a|0;b=b|0;PJ(a,b+36|0);return}function oKa(a,b){a=a|0;b=b|0;QJ(a,b+36|0);return}function pKa(a,b){a=a|0;b=b|0;RJ(a,b+36|0);return}function qKa(a,b){a=a|0;b=b|0;SJ(a,b+36|0);return}function rKa(a,b){a=a|0;b=b|0;f[a>>2]=b;if(b|0){b=Ec(b)|0;f[a+4>>2]=b}return}function sKa(a){a=a|0;pya(a);__a(a+16|0);f[a>>2]=41492;return}function tKa(a){a=a|0;pya(a);__a(a+16|0);f[a>>2]=41252;return}function uKa(a){a=a|0;pya(a);__a(a+16|0);f[a>>2]=41332;return}function vKa(a){a=a|0;pya(a);__a(a+16|0);f[a>>2]=41172;return}function wKa(a){a=a|0;pya(a);__a(a+16|0);f[a>>2]=41412;return}function xKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=40820;return}function yKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44628;return}function zKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45628;return}function AKa(a){a=a|0;rXa(a);Bab(a+32|0);return}function BKa(a,b){a=a|0;b=b|0;Nz(a,f[b>>2]|0,f[b+4>>2]|0,119542);f[a>>2]=47284;return}function CKa(a){a=a|0;x=0;ga(329,a|0)|0;a=x;x=0;if(a&1){a=Ja(0)|0;y2a(a)}else return}function DKa(a,b){a=a|0;b=b|0;xJ(a,b+8|0);return}function EKa(a,b){a=a|0;b=b|0;yJ(a,b+8|0);return}function FKa(a,b){a=a|0;b=b|0;zJ(a,b+8|0);return}function GKa(a,b){a=a|0;b=b|0;AJ(a,b+8|0);return}function HKa(a,b){a=a|0;b=b|0;BJ(a,b+8|0);return}function IKa(){var a=0;a=s8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;N0a(a);return a|0}function JKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44180;return}function KKa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=45948;return}function LKa(a,b){a=a|0;b=b|0;$J(a,b+36|0);return}function MKa(a,b){a=a|0;b=b|0;YJ(a,b+36|0);return}function NKa(a,b){a=a|0;b=b|0;AL(a,b+36|0);return}function OKa(a){a=a|0;pya(a);aPa(a+16|0);f[a>>2]=45308;return}function PKa(){var a=0;a=u;u=u+16|0;if(!(Sb(135312,521)|0)){u=a;return}else LQa(122676,a)}function QKa(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;return ic[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function RKa(a,b){a=a|0;b=b|0;return (b|0)==(a|0)|0}function SKa(a,b,c){a=a|0;b=b|0;c=c|0;a=GTa(a)|0;f[a+8>>2]=b;f[a+4>>2]=c;return a|0}function TKa(a,b){a=a|0;b=b|0;EJ(a,b+8|0);return}function UKa(a,b){a=a|0;b=b|0;FJ(a,b+8|0);return}function VKa(a,b){a=a|0;b=b|0;GJ(a,b+8|0);return}function WKa(a,b){a=a|0;b=b|0;JJ(a,b+8|0);return}function XKa(){var a=0;a=s8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;U0a(a);return a|0}function YKa(a,b){a=a|0;b=b|0;XJa(a);f[a>>2]=45508;f[a+44>>2]=b;return}function ZKa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;c=H9(a,b,e)|0;u=d;return c|0}function _Ka(a){a=a|0;RNa(a+24|0);P_a(a);return}function $Ka(a){a=a|0;if((b[130984]|0)==0?VWa(130984)|0:0){To();f[33768]=130288}return f[33768]|0}function aLa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a+28>>2]=b;f[a+32>>2]=c;f[a+36>>2]=d;return a|0}function bLa(a,b){a=a|0;b=b|0;aK(a,b+36|0);return}function cLa(a,b){a=a|0;b=b|0;cK(a,b+36|0);return}function dLa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=41064;return}function eLa(a){a=a|0;if((b[130904]|0)==0?VWa(130904)|0:0){Mo();f[33751]=129536}return f[33751]|0}function fLa(a){a=a|0;a=s8(8)|0;f[a>>2]=42976;return a|0}function gLa(a,b){a=a|0;b=b|0;if(b)b=f[(f[a+12>>2]|0)+4>>2]|0;else b=0;f[a+4>>2]=b;Aia(a);return}function hLa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)Ca(53343,53386,56,53399);else return}function iLa(a,b){a=a|0;b=b|0;KJ(a,b+8|0);return}function jLa(a,b){a=a|0;b=b|0;LJ(a,b+8|0);return}function kLa(a,b){a=a|0;b=b|0;MJ(a,b+8|0);return}function lLa(){var a=0;a=s8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;c1a(a);return a|0}function mLa(a,b){a=a|0;b=b|0;b=a+28|0;f[b>>2]=(f[b>>2]|0)+-4;return}function nLa(a,b){a=a|0;b=b|0;hx(a,b,b+16|0,b+20|0,b+24|0);return}function oLa(a){a=a|0;pya(a);aPa(a+16|0);f[a>>2]=43272;return}function pLa(){Yab();x6a();Z6a();Y6a();X6a();W6a();return}function qLa(a,b){a=a|0;b=b|0;f[b>>2]=41020;return}function rLa(a){a=+a;var b=0;b=f[33256]|0;return HX(b,$ua(a)|0)|0}function sLa(a,b,c){a=a|0;b=b|0;c=c|0;AYa(a,b);f[a>>2]=42352;f[a+8>>2]=c;f[a+20>>2]=0;return}function tLa(a,b){a=a|0;b=b|0;return b>>>0<1139802112|(b|0)==1139802112&a>>>0<0|(b|0)<0&(b>>>0<3220176896|(b|0)==-1074790400&a>>>0<0)|0}function uLa(a,b){a=a|0;b=b|0;return b>>>0<1138753536|(b|0)==1138753536&a>>>0<0|(b|0)<0&(b>>>0<3286237184|(b|0)==-1008730112&a>>>0<1)|0}function vLa(a){a=a|0;f[a>>2]=44060;zSa(a+44|0);QTa(a);return}function wLa(a){a=a|0;lea(a+16|0);LVa(a);return}function xLa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=44948;return}function yLa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;TVa(a);return}function zLa(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;tc[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function ALa(a){a=a|0;if((b[130920]|0)==0?VWa(130920)|0:0){Fu();f[33752]=129824}return f[33752]|0}function BLa(a){a=a|0;if((b[130888]|0)==0?VWa(130888)|0:0){JX();f[33750]=129248}return f[33750]|0}function CLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==98863?a+4|0:0)|0}function DLa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==96784?a+4|0:0)|0}function ELa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==95792?a+4|0:0)|0}function FLa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;Hj(a,c);b[a+32>>0]=d&1;f[a+36>>2]=e;return}function GLa(a,b){a=a|0;b=b|0;f[a>>2]=b;b=a+8|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;return}function HLa(a,b){a=a|0;b=b|0;XJ(a,b+8|0);return}function ILa(a,b){a=a|0;b=b|0;PJ(a,b+8|0);return}function JLa(a,b){a=a|0;b=b|0;QJ(a,b+8|0);return}function KLa(a,b){a=a|0;b=b|0;RJ(a,b+8|0);return}function LLa(a,b){a=a|0;b=b|0;SJ(a,b+8|0);return}function MLa(){var a=0;a=s8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;m1a(a);return a|0}function NLa(a,b){a=a|0;b=b|0;B4(a,b);return}function OLa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=40660;return}function PLa(a){a=a|0;if((b[131e3]|0)==0?VWa(131e3)|0:0){Nu();f[33769]=130576}return f[33769]|0}function QLa(a){a=a|0;if((b[130968]|0)==0?VWa(130968)|0:0){cY();f[33767]=13e4}return f[33767]|0}function RLa(a){a=a|0;if(b7a(f[f[a+12>>2]>>2]|0)|0)uVa(a);return}function SLa(a,c){a=a|0;c=c|0;kNa(a,(b[c+11>>0]|0)<0?f[c>>2]|0:c,0);return}function TLa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];J4(a+4|0,b+4|0);return}function ULa(a){a=+a;var b=0;vRa(a)|0;if((I|0)>=0)if(a<4294967295.0)b=~~a>>>0;else b=-1;else b=0;return b|0}function VLa(a,b){a=a|0;b=b|0;b=b+12|0;a=fv(a,f[b>>2]|0)|0;f[b>>2]=a;return}function WLa(a){a=a|0;wLa(a);Cbb(a);return}function XLa(a){a=a|0;Fea(a+16|0);LVa(a);return}function YLa(a){a=a|0;pya(a);rXa(a+16|0);f[a>>2]=40740;return}function ZLa(a){a=a|0;haa(f[a+4>>2]|0);return}function _La(a){a=a|0;dra(a);return}function $La(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=d;f[a+4>>2]=b;f[a+8>>2]=c;return}function aMa(a){a=a|0;W9(a);return}function bMa(a,b){a=a|0;b=b|0;xLa(a);f[a>>2]=44908;f[a+44>>2]=b;return}function cMa(a,b){a=a|0;b=b|0;$J(a,b+8|0);return}function dMa(a,b){a=a|0;b=b|0;YJ(a,b+8|0);return}function eMa(a,b){a=a|0;b=b|0;ZJ(a,b+8|0);return}function fMa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];IX(a+4|0,b+4|0);return}function gMa(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)iH(a|0,(d7a(c)|0)&255|0,b|0)|0;return a|0}function hMa(a){a=a|0;a=a+-9<<24>>24;if((a&255)<24)return (8388627>>>(a&255)&1|0)!=0|0;else return 0;return 0}function iMa(a,b){a=a|0;b=b|0;b=zZ(a+88|0,b)|0;return f[b>>2]|0}function jMa(a){a=a|0;hba(a+140|0,kQa(f[a+116>>2]|0)|0);return}function kMa(a){a=a|0;var b=0;b=s8(20)|0;xPa(b);f[a>>2]=b;return}function lMa(a){a=a|0;XLa(a);Cbb(a);return}function mMa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>2]|0;if(a|0)Cbb(a);return}function oMa(a){a=a|0;var b=0;b=s8(8)|0;f[b>>2]=46116;f[b+4>>2]=f[a+4>>2];return b|0}function pMa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=Pva(Pva(Pva(a,b)|0,c)|0,d)|0;I=0;return d|0}function qMa(a,b){a=a|0;b=b|0;aK(a,b+8|0);return}function rMa(a,b){a=a|0;b=b|0;bK(a,b+8|0);return}function sMa(a,b){a=a|0;b=b|0;cK(a,b+8|0);return}function tMa(a){a=a|0;rXa(a);b[a+28>>0]=0;return}function uMa(a,b){a=a|0;b=b|0;iK(a,b+36|0);return}function vMa(a,c){a=a|0;c=c|0;f[a>>2]=c;b[a+4>>0]=0;Sab(a+8|0);Sab(a+12|0);return}function wMa(a){a=a|0;return E1a(f[a+32>>2]|0)|0}function xMa(a){a=a|0;R9(a+4|0);return}function yMa(a){a=a|0;a=s8(8)|0;f[a>>2]=41020;return a|0}function zMa(a){a=a|0;if(!(f[a+4>>2]|0))Ca(91357,99430,212,91374);else return f[a>>2]|0;return 0}function AMa(a,b){a=a|0;b=b|0;Wda(f[a+24>>2]|0,b);return}function BMa(a,c){a=a|0;c=c|0;if((b[a+24>>0]|0)==0?((f[c+8>>2]|0)+-25|0)>>>0<8:0)b[a+78>>0]=1;return}function CMa(a){a=a|0;pya(a);aPa(a+16|0);f[a>>2]=43696;return}function DMa(a){a=a|0;var b=0;b=a+12|0;a=f[b>>2]|0;f[b>>2]=0;if(a|0){zSa(a);Cbb(a)}return}function EMa(a){a=a|0;return mS(a)|0}function FMa(a){a=a|0;f[a>>2]=41144;XWa(a+12|0);return}function GMa(a,b){a=a|0;b=b|0;wQa(f[b>>2]|0)|0;return}function HMa(a){a=a|0;return L$(a)|0}function IMa(a){a=a|0;PHa(a+16|0);Z1(a);return}function JMa(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function KMa(a){a=a|0;if((f[a>>2]|0)==1)a=O6a(f[f[a+4>>2]>>2]|0)|0;else a=0;return a|0}function LMa(a){a=a|0;if((b[a+27>>0]|0)==0?(b[a+76>>0]|0)==0:0)a=(b[a+77>>0]|0)!=0;else a=1;return a|0}function MMa(a){a=a|0;return 36088}function NMa(a){a=a|0;if(!((f[(f[a+20>>2]|0)+4>>2]|0)!=5?(f[(f[a+24>>2]|0)+4>>2]|0)!=5:0))f[a+4>>2]=5;return}function OMa(a,b){a=a|0;b=b|0;IQa(f[b>>2]|0)|0;return}function PMa(a){a=a|0;if(!a)a=32;else{a=23872+((X(0-a&a,125613361)|0)>>>27)|0;a=h[a>>0]|0}return a|0}function QMa(){var a=0;a=s8(16)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;Z1a(a);return a|0}function RMa(a){a=a|0;SQa(a+12|0);zSa(a);return}function SMa(a,b){a=a|0;b=b|0;f[a+8>>2]=b;b=zr(f[a+12>>2]|0,b<<2)|0;f[a>>2]=b;return}function TMa(){f8a();Q7a();N7a();L7a();J7a();return}function UMa(a,b){a=a|0;b=b|0;f[b>>2]=46116;f[b+4>>2]=f[a+4>>2];return}function VMa(a,b){a=a|0;b=b|0;hK(a,b+8|0);return}function WMa(a,b){a=a|0;b=b|0;gga(a+-16|0,b);return}function XMa(a){a=a|0;f[a>>2]=39744;return}function YMa(a){a=a|0;cta(a+4|0);return}function ZMa(a){a=a|0;dta(a+4|0);return}function _Ma(a){a=a|0;eta(a+4|0);return}function $Ma(a){a=a|0;fta(a+4|0);return}function aNa(a){a=a|0;gta(a+4|0);return}function bNa(a,b){a=a|0;b=b|0;rXa(a);f[a+24>>2]=b;return}function cNa(a){a=a|0;HO(a);if((f[(f[a+28>>2]|0)+4>>2]|0)==5)f[a+4>>2]=5;return}function dNa(a){a=a|0;var b=0;Kbb();b=f[33451]|0;f[a+56>>2]=b;if(b|0)f[b+52>>2]=a;f[33451]=a;Fbb();return a|0}function eNa(){iN(131240,P8(135160)|0);return}function fNa(){iN(131232,P8(135152)|0);return}function gNa(){iN(131224,P8(135144)|0);return}function hNa(){iN(131216,P8(135136)|0);return}function iNa(a){a=a|0;Aoa(f[a+8>>2]|0);return}function jNa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=d-c|0;return (d>>>0>>0?d:e)|0}function kNa(a,b,c){a=a|0;b=b|0;c=c|0;if(!b)Ca(53274,53276,64,53313);else{Qf(a,b,c);return}}function lNa(a,b){a=a|0;b=b|0;a=rWa(a)|0;f[a+8>>2]=b;uXa(a);return a|0}function mNa(a,b){a=a|0;b=b|0;JQa(f[b>>2]|0)|0;return}function nNa(a,b){a=a|0;b=b|0;xK(a,b+36|0);return}function oNa(a){a=a|0;PYa(a);Sab(a+12|0);Sab(a+16|0);f[a+32>>2]=0;return}function pNa(a,b){a=a|0;b=b|0;b=a+44|0;f[b>>2]=(f[b>>2]|0)+-4;return}function qNa(a){a=a|0;ZNa(a+40|0);P_a(a);return}function rNa(){iN(131296,P8(135096)|0);return}function sNa(){iN(131280,P8(135088)|0);return}function tNa(){iN(131264,P8(135080)|0);return}function uNa(){iN(131248,P8(135012)|0);return}function vNa(a){a=a|0;if(Oab(f[a>>2]|0)|0)return f[a+8>>2]|0;else Ca(53321,75335,230,54009);return 0}function wNa(a,b,c){a=a|0;b=b|0;c=c|0;AYa(a,b);f[a>>2]=42284;f[a+8>>2]=c;return}function xNa(a){a=a|0;a=a-(a>>>1&1431655765)|0;a=(a>>>2&858993459)+(a&858993459)|0;return (X((a>>>4)+a&252645135,16843009)|0)>>>24|0}function yNa(a,b){a=a|0;b=b|0;iK(a,b+8|0);return}function zNa(a,b){a=a|0;b=b|0;mK(a,b+8|0);return}function ANa(a,b){a=a|0;b=b|0;a=a+16|0;if(g2a(f[a>>2]|0,f[b>>2]|0)|0)Sab(a);return}function BNa(a){a=a|0;f[a>>2]=44748;pHa(a+16|0);LVa(a);return}function CNa(a){a=a|0;pya(a);f[a>>2]=44748;DUa(a+16|0);b[a+28>>0]=0;return}function DNa(a){a=a|0;pya(a);aPa(a+16|0);f[a>>2]=40208;return}function ENa(a){a=a|0;pya(a);aPa(a+16|0);f[a>>2]=45868;return}function FNa(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Rx(f[b>>2]|0,f[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function GNa(){iN(131176,P8(134944)|0);return}function HNa(){iN(131168,P8(134936)|0);return}function INa(){iN(131160,P8(134928)|0);return}function JNa(){iN(131152,P8(134904)|0);return}function KNa(a){a=a|0;xRa(a+4|0);return}function LNa(a,b){a=a|0;b=b|0;XQa(f[b>>2]|0)|0;return}function MNa(a,b){a=a|0;b=b|0;PQa(f[b>>2]|0)|0;return}function NNa(a,b){a=a|0;b=b|0;QQa(f[b>>2]|0)|0;return}function ONa(a){a=a|0;var b=0,c=0;b=(dV(a)|0)+1|0;c=Kc(b)|0;if(!c)a=0;else a=Ku(c|0,a|0,b|0)|0;return a|0}function PNa(a){a=a|0;ySa(a+4|0);return}function QNa(a){a=a|0;qua(a);return}function RNa(a){a=a|0;rua(a);return}function SNa(a){a=a|0;if((f[a>>2]|0)==4)return +(+F7a(a+8|0));else Ca(101662,55015,62,60597);return +(0.0)}function TNa(a){a=a|0;if((f[a>>2]|0)==3)return +(+E7a(a+8|0));else Ca(101690,55015,61,60590);return +(0.0)}function UNa(a){a=a|0;if(Dab(f[a>>2]|0)|0)return f[a+8>>2]|0;else Ca(53407,75335,242,65719);return 0}function VNa(a,c){a=a|0;c=c|0;dLa(a);f[a>>2]=40980;b[a+44>>0]=c&1;return}function WNa(a,b){a=a|0;b=b|0;b=nT(a+44|0,b)|0;return f[b>>2]|0}function XNa(a,b){a=a|0;b=b|0;nK(a,b+8|0);return}function YNa(a){a=a|0;var b=0;b=f[a+44>>2]|0;return cy(b,Jbb(f[a+32>>2]|0)|0)|0}function ZNa(a){a=a|0;eda(a);return}function _Na(a,b){a=a|0;b=b|0;hx(a,b,b+8|0,b+12|0,b+16|0);return}function $Na(a){a=a|0;pya(a);__a(a+16|0);f[a>>2]=44708;return}function aOa(a,b,c){a=a|0;b=b|0;c=c|0;if(c>>>0<128)a=(d[25968+(c<<1)>>1]&b)<<16>>16!=0;else a=0;return a|0}function bOa(a,b){a=a|0;b=b|0;Ema(a+184|0,b)|0;return}function cOa(a){a=a|0;_Ya(a);_Ya(a+12|0);f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;return}function dOa(a,b){a=a|0;b=b|0;vK(a,b+8|0);return}function eOa(a,b){a=a|0;b=b|0;$Qa(f[b>>2]|0)|0;return}function fOa(a,b){a=a|0;b=b|0;aRa(f[b>>2]|0)|0;return}function gOa(a,b){a=a|0;b=b|0;bRa(f[b>>2]|0)|0;return}function hOa(a,c){a=a|0;c=c|0;if(Nab(c)|0){b[a+26>>0]=1;c=1}else c=0;return c|0}function iOa(a){a=+a;vRa(a)|0;if((I|0)<0)return 0;else return a<=18446744073709551616.0&(gbb(a)|0)|0;return 0}function jOa(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 hc[a&31](b|0,c|0,d|0,e|0,f|0)|0}function kOa(){var a=0;if((b[130848]|0)==0?VWa(130848)|0:0){a=tF(2147483647,119759,0)|0;f[33722]=a}return f[33722]|0}function lOa(a,b,c){a=a|0;b=b|0;c=c|0;return ((f[b>>2]|0)==(c|0)?(f[b+4>>2]|0)==(a|0):0)|0}function mOa(a,b){a=a|0;b=b|0;nRa(f[b>>2]|0)|0;return}function nOa(a,b){a=a|0;b=b|0;tY(a,f[b>>2]|0);return}function oOa(a,c){a=a|0;c=c|0;b[a+8>>0]=c&1;f[a+12>>2]=c?135337:123306;f[a+16>>2]=c?135337:112641;return}function pOa(a){a=a|0;var b=0;b=s8(24)|0;mPa(b);f[a>>2]=b;return}function qOa(a){a=a|0;f[a>>2]=41940;f[a+104>>2]=41960;FU(a+4|0);return}function rOa(a){a=a|0;if(D7a(f[a>>2]|0)|0)return a|0;else Ca(118459,118474,79,118516);return 0}function sOa(a,b){a=a|0;b=b|0;tRa(f[b>>2]|0)|0;return}function tOa(a,b){a=a|0;b=b|0;xK(a,b+8|0);return}function uOa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=b;f[a+4>>2]=c;f[a+8>>2]=d;return}function vOa(a,b){a=a|0;b=b|0;Wla(a,b);return}function wOa(a){a=a|0;qOa(a);t1a(a+104|0);return}function xOa(a){a=a|0;f[a>>2]=39844;return}function yOa(a){a=a|0;var b=0;b=s8(4)|0;f[b>>2]=0;f[a>>2]=b;return}function zOa(a,b){a=a|0;b=b|0;return bpa(a,b*24|0)|0}function AOa(){}function BOa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function COa(a){a=a|0;zSa(a+20|0);SQa(a);return}function DOa(a,b,c){a=a|0;b=b|0;c=c|0;AYa(a,b);f[a>>2]=42392;f[a+8>>2]=c;return}function EOa(a){a=a|0;vJa(a);f[a>>2]=44340;f[a+44>>2]=0;return}function FOa(a){a=a|0;uRa(a,2);f[a>>2]=42216;f[a+20>>2]=0;KHa(a+24|0);return}function GOa(a,b,c){a=a|0;b=b|0;c=c|0;rb(22,Jbb(f[c>>2]|0)|0)|0;return}function HOa(a,b){a=a|0;b=b|0;f[a>>2]=43148;f[a+4>>2]=b;f[a+16>>2]=a;return}function IOa(a,b){a=a|0;b=b|0;f[a>>2]=43104;f[a+4>>2]=b;f[a+16>>2]=a;return}function JOa(a,b){a=a|0;b=b|0;f[a>>2]=43060;f[a+4>>2]=b;f[a+16>>2]=a;return}function KOa(){if((b[131496]|0)==0?VWa(131496)|0:0){WUa();f[33807]=135224}return f[33807]|0}function LOa(){if((b[131328]|0)==0?VWa(131328)|0:0){BXa();f[33805]=135216}return f[33805]|0}function MOa(a){a=a|0;pya(a);f[a>>2]=41532;Bab(a+16|0);Bab(a+20|0);Bab(a+24|0);return}function NOa(a,b){a=a|0;b=b|0;a=bUa(f[a>>2]|0)|0;f[a+8>>2]=b;return a|0}function OOa(a,b){a=a|0;b=b|0;zca(a+-16|0,f[b>>2]|0);return}function POa(a,b){a=a|0;b=b|0;f[a+132>>2]=b;return}function QOa(a){a=a|0;return ODa(f[a>>2]|0,f[a+4>>2]|0)|0}function ROa(a,b,c){a=a|0;b=b|0;c=c|0;b=u;u=u+16|0;a=b;f[a>>2]=c;Ty(46204,65822,a)|0;u=b;return}function SOa(a){a=a|0;wOa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function TOa(a){a=a|0;JVa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function UOa(a){a=a|0;jFa(a);return}function VOa(a,b){a=a|0;b=b|0;NRa(f[b>>2]|0)|0;return}function WOa(a,b){a=a|0;b=b|0;DRa(f[b>>2]|0)|0;return}function XOa(a,b){a=a|0;b=b|0;ERa(f[b>>2]|0)|0;return}function YOa(a,b){a=a|0;b=b|0;FRa(f[b>>2]|0)|0;return}function ZOa(a,b){a=a|0;b=b|0;return yq(a,b)|0}function _Oa(a){a=a|0;a=a+-2|0;if(a>>>0<6)return (45>>>(a&63)&1)!=0|0;else return 0;return 0}function $Oa(a,b){a=a|0;b=b|0;CO(a+120|0,a+104|0);return}function aPa(a){a=a|0;rXa(a);f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;return}function bPa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];kW(a+4|0,b+4|0);return}function cPa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return gc[a&7](b|0,c|0,d|0,e|0,+f)|0}function dPa(a){a=a|0;iXa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function ePa(a){a=a|0;WVa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function fPa(a){a=a|0;jXa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function gPa(a){a=a|0;XVa(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function hPa(a,b){a=a|0;b=b|0;ORa(f[b>>2]|0)|0;return}function iPa(a,b){a=a|0;b=b|0;PRa(f[b>>2]|0)|0;return}function jPa(a,b){a=a|0;b=b|0;QRa(f[b>>2]|0)|0;return}function kPa(a,b){a=a|0;b=b|0;$Ra(f[b>>2]|0)|0;return}function lPa(a,b){a=a|0;b=b|0;aSa(f[b>>2]|0)|0;return}function mPa(a){a=a|0;Bab(a);Bab(a+4|0);Bab(a+8|0);Bab(a+16|0);f[a+20>>2]=0;return}function nPa(a){a=a|0;a=a+-1|0;if(a>>>0<6)return (37>>>(a&63)&1)!=0|0;else return 0;return 0}function oPa(a){a=a|0;pc[f[f[a>>2]>>2]&4095](a,101333);hb()}function pPa(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;$(22)}function qPa(a,b){a=a|0;b=b|0;n4a(a,b);KHa(a+4|0);return}function rPa(a){a=a|0;OGa(a);Cbb(a);return}function sPa(a){a=a|0;PGa(a);Cbb(a);return}function tPa(a){a=a|0;if(zab(f[a>>2]|0)|0)return a+8|0;else Ca(53422,75335,238,53433);return 0}function uPa(a){a=a|0;if(Oab(f[a>>2]|0)|0)return a+8|0;else Ca(53321,75335,234,53332);return 0}function vPa(a){a=a|0;hga(a+16|0);return}function wPa(a){a=+a;vRa(a)|0;if((I|0)<0)return 0;else return a<=4294967295.0&(gbb(a)|0)|0;return 0}function xPa(a){a=a|0;Bab(a);a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function yPa(a,b){a=a|0;b=b|0;DCa(a,b)|0;return a|0}function zPa(a){a=a|0;return 35416}function APa(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==116513?a+4|0:0)|0}function BPa(a,b){a=a|0;b=b|0;lSa(f[b>>2]|0)|0;return}function CPa(a,b){a=a|0;b=b|0;bSa(f[b>>2]|0)|0;return}function DPa(a,b){a=a|0;b=b|0;cSa(f[b>>2]|0)|0;return}function EPa(a,b){a=a|0;b=b|0;dSa(f[b>>2]|0)|0;return}function FPa(a,b){a=a|0;b=b|0;mSa(f[b>>2]|0)|0;return}function GPa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];_R(a+4|0,b+4|0);return}function HPa(a){a=a|0;rZa(a);Bab(a+8|0);f[a+12>>2]=0;f[a+16>>2]=0;return}function IPa(a){a=a|0;a=a+-2|0;if(a>>>0<6)return (41>>>(a&63)&1)!=0|0;else return 0;return 0}function JPa(a,b){a=a|0;b=b|0;QW(a,b,f[b+36>>2]|0);return}function KPa(a){a=a|0;var b=0;b=zr(a,32)|0;KGa(b,a);return b|0}function LPa(a){a=a|0;sHa(a+-8|0);return}function MPa(a){a=a|0;NPa(a+-8|0);return}function NPa(a){a=a|0;sHa(a);Cbb(a);return}function OPa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (kza(a,b,c,d)|0)^1|0}function PPa(a){a=a|0;OLa(a);f[a>>2]=40620;XIa(a+44|0);return}function QPa(a){a=a|0;if(!(b[a+8>>0]|0))return f[a>>2]|0;else Ca(106553,106511,72,106560);return 0}function RPa(a,b){a=a|0;b=b|0;vn(a,b,b+12|0,0,0)|0;return}function SPa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;sc[a&15](b|0,c|0,d|0,e|0,f|0)}function TPa(a,b){a=a|0;b=b|0;D7(a);f[a>>2]=0;m0a(a+8|0,b);return a|0}function UPa(a){a=a|0;if(Aab(f[a>>2]|0)|0)return a|0;else Ca(118529,118474,74,118540);return 0}function VPa(a,b,c){a=a|0;b=b|0;c=c|0;O$(a,b,c);return}function WPa(a,b){a=a|0;b=b|0;nSa(f[b>>2]|0)|0;return}function XPa(a){a=a|0;f[a>>2]=40620;Pqa(a+44|0);QTa(a);return}function YPa(a){a=a|0;uRa(a,1);f[a>>2]=42176;DUa(a+20|0);return}function ZPa(a){a=a|0;if((a+-97&255)<26)return 1;else return a<<24>>24==36|(a<<24>>24==95|(a+-65&255)<26)|0;return 0}function _Pa(a,b){a=a|0;b=b|0;nK(a+16|0,b+36|0);return}function $Pa(a,b){a=a|0;b=b|0;return (J8(b,a)|0)>0|0}function aQa(a){a=a|0;return MUa(a)|0}function bQa(a){a=a|0;f[a>>2]=42976;f[a+16>>2]=a;return}function cQa(a){a=a|0;return hZa(a)|0}function dQa(a){a=a|0;f[a>>2]=44868;SQa(a+20|0);LVa(a);return}function eQa(a,b){a=a|0;b=b|0;b=fqa(a+12|0,b)|0;return f[b>>2]|0}function fQa(a,b){a=a|0;b=b|0;Yi(a+-16|0,b);return}function gQa(a,b){a=a|0;b=b|0;aPa(a);Bab(a+36|0);f[a+40>>2]=b;return}function hQa(a){a=a|0;zSa(a+12|0);MTa(a);return}function iQa(a,b){a=a|0;b=b|0;vn(a,b,b+24|0,0,0)|0;return}function jQa(a){a=a|0;var b=0;b=zr(a,28)|0;iHa(b,a);return b|0}function kQa(a){a=a|0;return ((f[a+24>>2]|0)-(f[a+20>>2]|0)>>2)+((f[a+12>>2]|0)-(f[a+8>>2]|0)>>2)|0}function lQa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=1065353216;return}function mQa(a,b){a=a|0;b=b|0;pya(a);f[a>>2]=41712;f[a+16>>2]=b;return}function nQa(a,b){a=a|0;b=b|0;vSa(f[b>>2]|0)|0;return}function oQa(a,b){a=a|0;b=b|0;Bfa(134176,f[b>>2]|0)|0;return a|0}function pQa(a,b){a=a|0;b=b|0;return (Qn(b,f[a+132>>2]|0)|0)==2|0}function qQa(a,b){a=a|0;b=b|0;vn(a,b,b+8|0,0,0)|0;return}function rQa(a){a=a|0;if((f[a>>2]|0)==3)return f[a+8>>2]|0;else Ca(101690,55015,66,55038);return 0}function sQa(a,b){a=a|0;b=b|0;return u_a(s9(a,b)|0)|0}function tQa(a){a=a|0;var b=0;b=s8(92)|0;z_(b,f[a+44>>2]|0);return b|0}function uQa(a,b){a=a|0;b=b|0;return saa(b,f[a+4>>2]|0)|0}function vQa(a){a=a|0;f[a>>2]=0;b[a+4>>0]=0;Sab(a+8|0);Sab(a+12|0);return}function wQa(a){a=a|0;if((f[a>>2]|0)==25)return a|0;else Ca(60604,53386,206,60635);return 0}function xQa(a){a=a|0;aCa(a);Cbb(a);return}function yQa(a,b){a=a|0;b=b|0;f[a+8>>2]=b;b=zr(132756,b<<2)|0;f[a>>2]=b;return}function zQa(a,b){a=a|0;b=b|0;f[a>>2]=b;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function AQa(a,b){a=a|0;b=b|0;Is(f[a>>2]|0,b);return}function BQa(a){a=a|0;ZT(a,134008)|0;return}function CQa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=0;f[a+8>>2]=c;return}function DQa(a,b){a=a|0;b=b|0;return (dRa(a,b)|0)!=0|0}function EQa(a){a=a|0;qha(f[a+4>>2]|0);return}function FQa(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=E5(a,b,c)|0;return a|0}function GQa(a,b){a=a|0;b=b|0;f[a+52>>2]=b;return}function HQa(a,b){a=a|0;b=b|0;f[a+180>>2]=b;return}function IQa(a){a=a|0;if((f[a>>2]|0)==8)return a|0;else Ca(60604,53386,206,60635);return 0}function JQa(a){a=a|0;if((f[a>>2]|0)==23)return a|0;else Ca(60604,53386,206,60635);return 0}function KQa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+8>>2]=b;f[a+12>>2]=0;f[a+16>>2]=0;return}function LQa(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;f[c>>2]=b;Ty(46204,a,c)|0;MV(10);hb()}function MQa(a){a=a|0;xta(a+8|0);return}function NQa(a,b){a=a|0;b=b|0;b=Pva(f[a>>2]|0,b)|0;f[a>>2]=b;return}function OQa(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function PQa(a){a=a|0;if((f[a>>2]|0)==27)return a|0;else Ca(60604,53386,206,60635);return 0}function QQa(a){a=a|0;if((f[a>>2]|0)==26)return a|0;else Ca(60604,53386,206,60635);return 0}function RQa(a){a=a|0;Lna(f[f[a>>2]>>2]|0);return}function SQa(a){a=a|0;Ija(a);return}function TQa(){var a=0;a=s8(180)|0;iH(a|0,0,180)|0;xV(a);return a|0}function UQa(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+12>>0]=c&1;return}function VQa(a){a=a|0;if(!(f[a+16>>2]|0))a=(f[a+12>>2]|0)==0;else a=0;return a|0}function WQa(a,b){a=a|0;b=b|0;IW(a,b);return}function XQa(a){a=a|0;if((f[a>>2]|0)==7)return a|0;else Ca(60604,53386,206,60635);return 0}function YQa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function ZQa(a,b){a=a|0;b=b|0;return Oo(a,b)|0}function _Qa(a){a=a|0;n4(a+48|0);return}function $Qa(a){a=a|0;if((f[a>>2]|0)==12)return a|0;else Ca(60604,53386,206,60635);return 0}function aRa(a){a=a|0;if((f[a>>2]|0)==11)return a|0;else Ca(60604,53386,206,60635);return 0}function bRa(a){a=a|0;if((f[a>>2]|0)==24)return a|0;else Ca(60604,53386,206,60635);return 0}function cRa(a){a=a|0;f[a>>2]=41020;f[a+16>>2]=a;return}function dRa(a,b){a=a|0;b=b|0;return rfa(a,b)|0}function eRa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];qS(a+4|0,b+4|0);return}function fRa(a,b){a=a|0;b=b|0;Mc(a+-16|0,b);return}function gRa(a,b){a=a|0;b=b|0;cr(a,b);return}function hRa(a){a=a|0;a=s8(180)|0;iH(a|0,0,180)|0;uV(a);return a|0}function iRa(a){a=a|0;a=s8(180)|0;iH(a|0,0,180)|0;vV(a);return a|0}function jRa(a){a=a|0;a=s8(180)|0;iH(a|0,0,180)|0;wV(a);return a|0}function kRa(a){a=a|0;a=s8(180)|0;iH(a|0,0,180)|0;xV(a);return a|0}function lRa(a){a=a|0;a=s8(180)|0;iH(a|0,0,180)|0;yV(a);return a|0}function mRa(a){a=a|0;CVa(a+16|0);LVa(a);return}function nRa(a){a=a|0;if((f[a>>2]|0)==10)return a|0;else Ca(60604,53386,206,60635);return 0}function oRa(a){a=a|0;var b=0;b=zr(a,40)|0;lza(b,a);return b|0}function pRa(a){a=a|0;var b=0;b=f[11692]|0;if(a|0)f[11692]=(a|0)==(-1|0)?133768:a;return ((b|0)==133768?-1:b)|0}function qRa(a){a=a|0;if(V7a(b[a>>0]|0)|0)a=(b[a+24>>0]|0)!=0;else a=0;return a|0}function rRa(a,b,c){a=a|0;b=b|0;c=c|0;return g2a(a,b)|0}function sRa(a){a=a|0;QYa(a);Sab(a+12|0);Sab(a+16|0);return}function tRa(a){a=a|0;if((f[a>>2]|0)==9)return a|0;else Ca(60604,53386,206,60635);return 0}function uRa(a,b){a=a|0;b=b|0;f[a>>2]=42196;f[a+4>>2]=-1;f[a+8>>2]=0;f[a+16>>2]=b;return}function vRa(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function wRa(a){a=a|0;var c=0;f[a>>2]=49728;c=f[a+8>>2]|0;if(c|0?b[a+12>>0]|0:0)zbb(c);return}function xRa(a){a=a|0;EIa(a);return}function yRa(a){a=a|0;return 32264}function zRa(a){a=a|0;return 32240}function ARa(a){a=a|0;var b=0;b=s8(24)|0;GLa(b,0);f[b+4>>2]=a;return b|0}function BRa(a){a=a|0;DCa(Jbb(a)|0,93529)|0;return}function CRa(a){a=a|0;xta(a+16|0);MTa(a);return}function DRa(a){a=a|0;if((f[a>>2]|0)==18)return a|0;else Ca(60604,53386,206,60635);return 0}function ERa(a){a=a|0;if((f[a>>2]|0)==20)return a|0;else Ca(60604,53386,206,60635);return 0}function FRa(a){a=a|0;if((f[a>>2]|0)==17)return a|0;else Ca(60604,53386,206,60635);return 0}function GRa(a){a=a|0;var b=0;b=zr(a,36)|0;Lqa(b,a);return b|0}function HRa(a,b){a=a|0;b=+b;p[a+16>>3]=b;return}function IRa(a){a=a|0;return 34544}function JRa(a){a=a|0;return 32208}function KRa(a){a=a|0;if(V7a(b[a>>0]|0)|0)a=(b[a+25>>0]|0)!=0;else a=0;return a|0}function LRa(){var a=0;a=s8(180)|0;iH(a|0,0,180)|0;vV(a);return a|0}function MRa(a){a=a|0;yPa(a,101333)|0;return}function NRa(a){a=a|0;if((f[a>>2]|0)==5)return a|0;else Ca(60604,53386,206,60635);return 0}function ORa(a){a=a|0;if((f[a>>2]|0)==16)return a|0;else Ca(60604,53386,206,60635);return 0}function PRa(a){a=a|0;if((f[a>>2]|0)==14)return a|0;else Ca(60604,53386,206,60635);return 0}function QRa(a){a=a|0;if((f[a>>2]|0)==15)return a|0;else Ca(60604,53386,206,60635);return 0}function RRa(a){a=a|0;a=zr(a,28)|0;Cza(a);return a|0}function SRa(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 (I=d,a-c>>>0|0)|0}function TRa(a){a=a|0;if((f[a>>2]|0)==1)return f[a+8>>2]|0;else Ca(92953,55015,59,60583);return 0}function URa(){var a=0;a=s8(196)|0;iH(a|0,0,196)|0;uYa(a);return a|0}function VRa(a,b){a=a|0;b=b|0;return Co(a,b,0)|0}function WRa(a,b){a=a|0;b=b|0;rx(a,b);return}function XRa(a,b){a=a|0;b=b|0;sx(a,b);return}function YRa(a){a=a|0;Bx(a+24|0,a+12|0);return}function ZRa(a){a=a|0;hFa(a);XXa(a);return}function _Ra(a){a=a|0;RTa(a+24|0);P_a(a);return}function $Ra(a){a=a|0;if((f[a>>2]|0)==4)return a|0;else Ca(60604,53386,206,60635);return 0}function aSa(a){a=a|0;if((f[a>>2]|0)==1)return a|0;else Ca(60604,53386,206,60635);return 0}function bSa(a){a=a|0;if((f[a>>2]|0)==13)return a|0;else Ca(60604,53386,206,60635);return 0}function cSa(a){a=a|0;if((f[a>>2]|0)==21)return a|0;else Ca(60604,53386,206,60635);return 0}function dSa(a){a=a|0;if((f[a>>2]|0)==19)return a|0;else Ca(60604,53386,206,60635);return 0}function eSa(a){a=a|0;var b=0;b=zr(a,28)|0;mIa(b,a);return b|0}function fSa(a){a=a|0;zSa(a+16|0);return}function gSa(a){a=a|0;var b=0;b=f[a>>2]|0;if((b|0)!=(kOa()|0))X2a(f[a>>2]|0);return}function hSa(a,c){a=a|0;c=c|0;b[a>>0]=0;f[a+4>>2]=c;return}function iSa(){var a=0;a=s8(180)|0;iH(a|0,0,180)|0;yV(a);return a|0}function jSa(a){a=a|0;ZIa(a);f[a>>2]=41976;return}function kSa(a,b){a=a|0;b=b|0;Yaa(a,b);return a|0}function lSa(a){a=a|0;if((f[a>>2]|0)==3)return a|0;else Ca(60604,53386,206,60635);return 0}function mSa(a){a=a|0;if((f[a>>2]|0)==6)return a|0;else Ca(60604,53386,206,60635);return 0}function nSa(a){a=a|0;if((f[a>>2]|0)==22)return a|0;else Ca(60604,53386,206,60635);return 0}function oSa(a){a=a|0;Koa(a+36|0);CVa(a);return}function pSa(a){a=a|0;aPa(a);Vua(a+36|0);return}function qSa(a){a=a|0;pya(a);f[a>>2]=40860;f[a+24>>2]=0;f[a+28>>2]=0;f[a+32>>2]=0;return}function rSa(a){a=a|0;var b=0;b=zr(a,32)|0;cIa(b,a);return b|0}function sSa(a){a=a|0;var b=0;b=zr(a,28)|0;uIa(b,a);return b|0}function tSa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return fc[a&63](b|0,c|0,d|0,e|0)|0}function uSa(a){a=a|0;a=vbb(a|0)|0;if(!a)return;else Gaa(a,121943)}function vSa(a){a=a|0;if((f[a>>2]|0)==2)return a|0;else Ca(60604,53386,206,60635);return 0}function wSa(){iN(131080,P8(135200)|0);return}function xSa(){iN(131088,P8(135208)|0);return}function ySa(a){a=a|0;ZJa(a);return}function zSa(a){a=a|0;var b=0;b=f[a>>2]|0;if(b|0){f[a+4>>2]=b;Cbb(b)}return}function ASa(a,b,c){a=a|0;b=b|0;c=c|0;qc[f[(f[c>>2]|0)+24>>2]&255](a,c,b);return}function BSa(){var a=0;a=zr(132756,24)|0;Hpa(a);return a|0}function CSa(a,b,c){a=a|0;b=b|0;c=c|0;_0a(a,b);f[a+4>>2]=c;return}function DSa(a){a=a|0;a=zr(a,8)|0;j2a(a);return a|0}function ESa(a){a=a|0;rXa(a);b[a+32>>0]=0;return}function FSa(){iN(131064,P8(135192)|0);return}function GSa(){iN(131056,P8(135184)|0);return}function HSa(a){a=a|0;iXa(a+184|0);wOa(a);return}function ISa(){var a=0;a=s8(180)|0;iH(a|0,0,180)|0;wV(a);return a|0}function JSa(a){a=a|0;uJa(a);f[a>>2]=44260;return}function KSa(a,b){a=a|0;b=b|0;return I_(0,a,b)|0}function LSa(a){a=a|0;a=zr(a,20)|0;yLa(a);return a|0}function MSa(a){a=a|0;a=zr(a,28)|0;AAa(a);return a|0}function NSa(a,b){a=a|0;b=b|0;return RV(a,b)|0}function OSa(a,b){a=a|0;b=b|0;B4(a,b+16|0);return}function PSa(a,b){a=a|0;b=b|0;B4(a,b+12|0);return}function QSa(a){a=a|0;return 31960}function RSa(){var a=0;a=s8(204)|0;iH(a|0,0,204)|0;oU(a);return a|0}function SSa(a){a=a|0;a=s8(204)|0;iH(a|0,0,204)|0;oU(a);return a|0}function TSa(a){a=a|0;return (VRa(a,1)|0)!=0|0}function USa(a){a=a|0;b[a+27>>0]=1;if(b[a+25>>0]|0)b[a+26>>0]=1;return}function VSa(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=f[24688+(b<<24>>24<<2)>>2]&255;return b|0}function WSa(a){a=a|0;return 32720}function XSa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=2;a=a+8|0;f[a>>2]=b;f[a+4>>2]=c;return}function YSa(a){a=a|0;LJa(a);f[a>>2]=43736;return}function ZSa(a){a=a|0;MJa(a);f[a>>2]=45068;return}function _Sa(a){a=a|0;var b=0;b=s8(48)|0;YKa(b,f[a+44>>2]|0);return b|0}function $Sa(a,b){a=a|0;b=b|0;return (Hr(a,b)|0)*5|0}function aTa(a){a=a|0;f[a>>2]=42176;dJa(a+20|0);return}function bTa(a){a=a|0;var b=0;b=a+140|0;a=f[b>>2]|0;f[b>>2]=a+1;return a|0}function cTa(a){a=a|0;if(!a)a=0;else a=(f[a+4>>2]|0)==5;return a|0}function dTa(a,b){a=a|0;b=b|0;b=a+(b<<2)|0;f[b>>2]=(f[b>>2]|0)+1;return}function eTa(a,b){a=a|0;b=b|0;return (a+4096|0)>>>0>=b>>>0&a>>>0<=b>>>0|0}function fTa(){$7a();x7a();t7a();s7a();return}function gTa(a){a=a|0;XYa(a+4|0);return}function hTa(a){a=a|0;WJa(a);f[a>>2]=43576;return}function iTa(a){a=a|0;Gv(a,0)|0;return}function jTa(a){a=a|0;a=zr(a,16)|0;XUa(a);return a|0}function kTa(a){a=a|0;a=zr(a,12)|0;YUa(a);return a|0}function lTa(a){a=a|0;a=zr(a,28)|0;_Aa(a);return a|0}function mTa(a){a=a|0;var b=0;b=a;while(1)if(!(f[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function nTa(a,b){a=a|0;b=b|0;return (b|0)==(a|0)|0}function oTa(a){a=a|0;if((b[a+8+3>>0]|0)<0)Cbb(f[a>>2]|0);return}function pTa(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function qTa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (a|0)!=(c|0)|(b|0)!=(d|0)|0}function rTa(a,c){a=a|0;c=c|0;b[a>>0]=1;f[a+4>>2]=c;return}function sTa(){var a=0;a=s8(180)|0;iH(a|0,0,180)|0;uV(a);return a|0}function tTa(a){a=a|0;yPa(a,117213)|0;return}function uTa(a){a=a|0;Gv(a,11)|0;return}function vTa(a,b){a=a|0;b=b|0;f[a+40>>2]=b;return}function wTa(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;$(12);return 0}function xTa(){iN(131208,P8(135128)|0);return}function yTa(){iN(131200,P8(135120)|0);return}function zTa(){iN(131192,P8(135112)|0);return}function ATa(){iN(131184,P8(135104)|0);return}function BTa(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=f[26992+((b&255)<<2)>>2]&255;return b|0}function CTa(a){a=a|0;if(!a)return;else Ca(113822,113850,399,113887)}function DTa(a,b){a=a|0;b=b|0;po(a,b);return}function ETa(a){a=a|0;gKa(a);f[a>>2]=42856;return}function FTa(a){a=a|0;a=zr(a,16)|0;kZa(a);return a|0}function GTa(a){a=a|0;a=zr(a,12)|0;AZa(a);return a|0}function HTa(a){a=a|0;ica(a+40|0);return}function ITa(a){a=a|0;if((a|0)==2)Ca(107355,106511,448,107392);else return}function JTa(a){a=a|0;if((a|0)==2)Ca(107407,106511,443,107444);else return}function KTa(a,b){a=a|0;b=b|0;a=a+(b<<2)|0;f[a>>2]=(f[a>>2]|0)+1;return}function LTa(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;rc[a&255](b|0,c|0,d|0,e|0)}function MTa(a){a=a|0;if((b[a+11>>0]|0)<0)Cbb(f[a>>2]|0);return}function NTa(a){a=a|0;var b=0;b=s8(48)|0;bMa(b,f[a+44>>2]|0);return b|0}function OTa(a,c){a=a|0;c=c|0;pya(a);f[a>>2]=42696;b[a+16>>0]=c&1;return}function PTa(a){a=a|0;yKa(a);f[a>>2]=44588;return}function QTa(a){a=a|0;P_a(a+16|0);LVa(a);return}function RTa(a){a=a|0;ZLa(a);return}function STa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=c;f[a+4>>2]=b;return}function TTa(a){a=a|0;return 33376}function UTa(){var a=0;a=zr(132756,24)|0;Jsa(a);return a|0}function VTa(){var a=0;a=s8(132)|0;iH(a|0,0,132)|0;Kha(a);return a|0}function WTa(a){a=a|0;yXa(a+4|0);return}function XTa(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)kia(a|0,b|0,c|0)|0;return a|0}function YTa(a,b){a=a|0;b=b|0;return zqa(a,P8(b)|0)|0}function ZTa(a){a=a|0;if(!(Jbb(a)|0))a=1;else a=Nab(f[a>>2]|0)|0;return a|0}function _Ta(a,b){a=a|0;b=b|0;DCa(134176,b)|0;return a|0}function $Ta(a){a=a|0;JKa(a);f[a>>2]=44140;return}function aUa(a){a=a|0;a=zr(a,20)|0;JZa(a);return a|0}function bUa(a){a=a|0;a=zr(a,12)|0;C6a(a);return a|0}function cUa(a){a=a|0;a=zr(a,20)|0;LZa(a);return a|0}function dUa(){Lbb();Lbb();Lbb();Lbb();return}function eUa(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Ku(a|0,b|0,c|0)|0;return a|0}function fUa(){var a=0;a=zr(132756,16)|0;h2a(a);return a|0}function gUa(a){a=a|0;return TRa((QRa(a)|0)+8|0)|0}function hUa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=f[b>>2];f[a+4>>2]=c;return}function iUa(a){a=a|0;yPa(a,93524)|0;return}function jUa(a){a=a|0;return lZa(a)|0}function kUa(a){a=a|0;if(!a)return;else Ca(90715,90736,90,113887)}function lUa(a,b){a=a|0;b=b|0;H8(a,0,b);return}function mUa(a,b){a=a|0;b=b|0;MXa(a,b,(f[b+4>>2]|0)-(f[b>>2]|0)>>2);return}function nUa(a){a=a|0;return cDa(a,r6(a)|0)|0}function oUa(a){a=a|0;JYa(a);f[a+8>>2]=0;f[a+4>>2]=5;return}function pUa(){var a=0;a=s8(20)|0;OTa(a,1);return a|0}function qUa(a,b){a=a|0;b=b|0;return Hr(a,b)|0}function rUa(a){a=a|0;if(!a)a=0;else a=f[a+4>>2]|0;return a|0}function sUa(a){a=a|0;if(!a)return 0;else return ((f[a+16>>2]|0)==1?a:0)|0;return 0}function tUa(a){a=a|0;return SKa(f[a>>2]|0,f[a+4>>2]|0,1)|0}function uUa(a){a=a|0;a=zr(a,16)|0;YZa(a);return a|0}function vUa(a){a=a|0;a=zr(a,36)|0;P6a(a);return a|0}function wUa(a){a=a|0;a=zr(a,20)|0;q0a(a);return a|0}function xUa(a){a=a|0;f[a>>2]=49820;MTa(a+16|0);return}function yUa(a){a=a|0;f[a>>2]=49780;MTa(a+12|0);return}function zUa(){iN(131120,P8(134920)|0);return}function AUa(){iN(131096,P8(134896)|0);return}function BUa(){iN(131320,P8(135176)|0);return}function CUa(){iN(131312,P8(135168)|0);return}function DUa(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;return}function EUa(a){a=a|0;R9(a);return}function FUa(a){a=a|0;f[a>>2]=40860;zSa(a+24|0);LVa(a);return}function GUa(a,b){a=a|0;b=b|0;return Cka(f[a+20>>2]|0,b)|0}function HUa(a){a=a|0;yPa(a,93515)|0;return}function IUa(a){a=a|0;var c=0;c=s8(72)|0;Yga(c,(b[a+44>>0]|0)!=0);return c|0}function JUa(){iN(131024,P8(134872)|0);return}function KUa(){iN(131016,P8(134864)|0);return}function LUa(a,b){a=a|0;b=b|0;MXa(a,b,f[b+4>>2]|0);return}function MUa(a){a=a|0;return (f[a+64>>2]|0)==((f[a+4>>2]|0)-(f[a>>2]|0)>>2|0)|0}function NUa(a){a=a|0;a=zr(a,16)|0;MVa(a);return a|0}function OUa(){var a=0;f[32767]=0;f[32766]=49660;a=kOa()|0;f[32768]=a;return}function PUa(){var a=0;a=s8(152)|0;iH(a|0,0,152)|0;WH(a);return a|0}function QUa(a,b){a=a|0;b=b|0;Nq(a,b);return}function RUa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=b;f[a+8>>2]=0;return}function SUa(a){a=a|0;if(!a)return 0;else return ((f[a+16>>2]|0)==0?a:0)|0;return 0}function TUa(a){a=a|0;if(a|0)oc[f[(f[a>>2]|0)+4>>2]&1023](a);return}function UUa(){iN(131048,P8(134912)|0);return}function VUa(){iN(131032,P8(134880)|0);return}function WUa(){var a=0;a=LOa()|0;lVa(135224,f[a>>2]|0);return}function XUa(a){a=a|0;RYa(a);Bab(a+8|0);return}function YUa(a){a=a|0;SYa(a);Bab(a+8|0);return}function ZUa(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];f[a+4>>2]=f[b+4>>2];return}function _Ua(a,b){a=a|0;b=b|0;return JJa(a,b)|0}function $Ua(a,c){a=a|0;c=c|0;f[a>>2]=c;b[a+4>>0]=b[c>>0]|0;return}function aVa(){f[32811]=0;f[32810]=49472;return}function bVa(){f[32809]=0;f[32808]=49444;return}function cVa(){f[32807]=0;f[32806]=49416;return}function dVa(){f[32805]=0;f[32804]=49388;return}function eVa(a,b){a=a|0;b=+b;D7(a);f[a>>2]=1;p[a+8>>3]=b;return a|0}function fVa(a){a=a|0;Oy(f[a+4>>2]|0,f[a+8>>2]|0);return}function gVa(a,c){a=a|0;c=c|0;if((c+-1|0)>>>0<2)b[a+52>>0]=1;return}function hVa(a){a=a|0;if(!a)return 0;else return ((f[a+16>>2]|0)==2?a:0)|0;return 0}function iVa(a){a=a|0;d0(a);return}function jVa(a,b){a=a|0;b=b|0;f[a>>2]=b;f[a+4>>2]=f[b>>2];return}function kVa(a){a=a|0;a=zr(a,20)|0;G7a(a);return a|0}function lVa(a,b){a=a|0;b=b|0;f[a>>2]=b;a=b+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function mVa(){f[32795]=0;f[32794]=47808;return}function nVa(){f[32793]=0;f[32792]=47756;return}function oVa(){f[32791]=0;f[32790]=47692;return}function pVa(){f[32789]=0;f[32788]=47628;return}function qVa(a){a=a|0;return g2a(f[a+140>>2]|0,f[a+144>>2]|0)|0}function rVa(a){a=a|0;mRa(a);Cbb(a);return}function sVa(a){a=a|0;var b=0;b=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function tVa(){var a=0;a=s8(196)|0;iH(a|0,0,196)|0;sEa(a);return a|0}function uVa(a){a=a|0;f$a(a);return}function vVa(a,b){a=a|0;b=b|0;return ((f[a+4>>2]|0)-(f[a>>2]|0)|0)>>>0>b>>>0|0}function wVa(a,b){a=a|0;b=b|0;ro(a,b);return}function xVa(a){a=a|0;EYa(a);Sab(a+12|0);return}function yVa(a){a=a|0;gSa(a+8|0);Cbb(a);return}function zVa(a,b){a=a|0;b=b|0;a=xNa(a)|0;return (xNa(b)|0)+a|0}function AVa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hb()}function BVa(a,b){a=a|0;b=b|0;Qq(a,b);return}function CVa(a){a=a|0;zSa(a+24|0);P_a(a);return}function DVa(a){a=a|0;if(!a)a=0;else a=(xNa(a)|0)==1;return a|0}function EVa(a,b){a=a|0;b=b|0;if(b>>>0<128)b=f[26992+(b<<2)>>2]|0;return b|0}function FVa(a,b){a=a|0;b=b|0;if(b>>>0<128)b=f[24688+(b<<2)>>2]|0;return b|0}function GVa(a,b){a=a|0;b=b|0;f[a>>2]=b;return b|0}function HVa(a){a=a|0;OWa(a);return}function IVa(){var a=0;a=s8(204)|0;iH(a|0,0,204)|0;qna(a);return a|0}function JVa(a){a=a|0;wOa(a);Cbb(a);return}function KVa(a,b){a=a|0;b=b|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2>>>0>b>>>0|0}function LVa(a){a=a|0;f[a>>2]=40084;MTa(a+4|0);return}function MVa(a){a=a|0;sZa(a);Bab(a+8|0);return}function NVa(a,b){a=a|0;b=b|0;_Ya(a);f[a+12>>2]=b;return}function OVa(a,b){a=a|0;b=b|0;f[a>>2]=50432;Lla(a+4|0,b);return}function PVa(a,b){a=a|0;b=b|0;return (J8((a|0)==0?135337:a,(b|0)==0?135337:b)|0)<0|0}function QVa(a,b){a=a|0;b=b|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2>>>0<=b>>>0|0}function RVa(){var a=0;a=s8(20)|0;OTa(a,0);return a|0}function SVa(){var a=0;a=s8(276)|0;iH(a|0,0,276)|0;yba(a);return a|0}function TVa(a){a=a|0;CYa(a);Sab(a+8|0);return}function UVa(a){a=a|0;DYa(a);Sab(a+8|0);return}function VVa(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;$(11);return 0}function WVa(a){a=a|0;iXa(a);Cbb(a);return}function XVa(a){a=a|0;jXa(a);Cbb(a);return}function YVa(a){a=a|0;FU(a);Cbb(a);return}function ZVa(a){a=a|0;var b=0;b=$5a(a)|0;return (b?0:a)|0}function _Va(a){a=a|0;return oDa(a,P8(135184)|0)|0}function $Va(a){a=a|0;FYa(a);Sab(a+16|0);return}function aWa(a){a=a|0;YLa(a);f[a>>2]=40700;return}function bWa(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;b[a+8>>0]=1;b[a+9>>0]=0;return}function cWa(a){a=a|0;a=zr(a,24)|0;AWa(a);return a|0}function dWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ec[a&127](b|0,c|0,d|0)|0}function eWa(a){a=a|0;if(!a)a=0;else a=(dx(a,39568)|0)!=0&1;return a|0}function fWa(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0>>0|0}function gWa(a,b){a=a|0;b=b|0;f[a>>2]=50412;Lla(a+4|0,b);return}function hWa(a){a=a|0;if((a+-48&255)<10)return 1;else return ((a&-33)+-65&255)<6|0;return 0}function iWa(a){a=a|0;a=s8(196)|0;uYa(a);return a|0}function jWa(a){a=a|0;SQa(a+44|0);return}function kWa(a){a=a|0;b[a+27>>0]=1;b[a+77>>0]=1;b[a+79>>0]=1;return}function lWa(a){a=a|0;zSa(a+32|0);P_a(a);return}function mWa(a){a=a|0;var b=0;b=f[33723]|0;f[33723]=b+1;f[a+4>>2]=b+1;return}function nWa(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=b;return}function oWa(a){a=a|0;if((f[(f[a+12>>2]|0)+4>>2]|0)==5)f[a+4>>2]=5;return}function pWa(a){a=a|0;f[a+64>>2]=0;return}function qWa(a){a=a|0;a=zr(a,28)|0;sRa(a);return a|0}function rWa(a){a=a|0;a=zr(a,12)|0;r0a(a);return a|0}function sWa(a){a=a|0;SQa(a+8|0);return}function tWa(a,b){a=a|0;b=b|0;SG(a,b);return}function uWa(a){a=a|0;i1a(a+8|0);return}function vWa(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)H4(a,b,c)|0;return}function wWa(a){a=a|0;H_a(a);return a|0}function xWa(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)SEa(a,c,b)|0;return}function yWa(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)rya(a,b,c)|0;return}function zWa(a,b){a=a|0;b=b|0;f[a+16>>2]=b;return}function AWa(a){a=a|0;OYa(a);EXa(a+8|0);return}function BWa(a,b){a=a|0;b=b|0;WA(a,b);return}function CWa(a){a=a|0;uRa(a,0);f[a>>2]=42236;f[a+20>>2]=0;return}function DWa(a){a=a|0;a=zr(a,8)|0;C0a(a);return a|0}function EWa(){Z7a();v7a();O7a();return}function FWa(a,c){a=a|0;c=c|0;a=RE(a,c)|0;return ((b[a>>0]|0)==(c&255)<<24>>24?a:0)|0}function GWa(a){a=a|0;MCa(a+4|0);return}function HWa(a){a=a|0;nWa(a,2147483647);return}function IWa(a){a=a|0;return 34696}function JWa(a){a=a|0;return 34664}function KWa(a){a=a|0;return 34632}function LWa(a,c,d){a=a|0;c=c|0;d=d|0;f[a>>2]=c;b[a+4>>0]=d&1;return}function MWa(a,b){a=a|0;b=b|0;f[a+52>>2]=f[a+48>>2];return}function NWa(a){a=a|0;YDa(a+4|0);return}function OWa(a){a=a|0;a=a+24|0;f[a>>2]=(f[a>>2]|0)+1;return}function PWa(a){a=a|0;if((f[(f[a+24>>2]|0)+4>>2]|0)==5)f[a+4>>2]=5;return}function QWa(a){a=a|0;a=(f[a+4>>2]|0)-(f[a>>2]|0)>>2;return (a>>>0>1?a:1)|0}function RWa(a,b,c){a=a|0;b=b|0;c=c|0;if(!(f[a>>2]&32))SB(b,c,a)|0;return}function SWa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ca(a|0,b|0,c|0,d|0)}function TWa(a){a=a|0;pya(a);f[a>>2]=45148;Bab(a+16|0);return}function UWa(a){a=a|0;GYa(a);f[a+4>>2]=5;return}function VWa(a){a=a|0;if((b[a>>0]|0)==1)a=0;else{b[a>>0]=1;a=1}return a|0}function WWa(a){a=a|0;f[a>>2]=47064;OCa(a+4|0);return}function XWa(a){a=a|0;SQa(a);return}function YWa(a,b){a=a|0;b=b|0;Pa(Ea(1)|0,34968,0)}function ZWa(a,b){a=a|0;b=b|0;return f[a+(b<<3)>>2]|0}function _Wa(a,b){a=a|0;b=b|0;return (f[a+(b>>>5<<2)>>2]&1<<(b&31)|0)!=0|0}function $Wa(a){a=a|0;return eZa(a)|0}function aXa(){var a=0;a=Ea(4)|0;xab(a);Pa(a|0,39424,416)}function bXa(a){a=a|0;gSa(a+8|0);return}function cXa(a){a=a|0;f[a>>2]=47e3;OCa(a+4|0);return}function dXa(a){a=a|0;var b=0;b=g2a(a,-1)|0;return (b?0:a)|0}function eXa(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function fXa(a,b){a=a|0;b=b|0;f[a+20>>2]=b;return}function gXa(a){a=a|0;UWa(a);return a|0}function hXa(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;$(21)}function iXa(a){a=a|0;t1a(a+4|0);return}function jXa(a){a=a|0;t1a(a+8|0);return}function kXa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qc[a&255](b|0,c|0,d|0)}function lXa(a){a=a|0;return Tab(f[a+4>>2]|0)|0}function mXa(a){a=a|0;QTa(a);Cbb(a);return}function nXa(a,b){a=a|0;b=b|0;EXa(a);f[a+16>>2]=f[b>>2];return}function oXa(a){a=a|0;a=s8(88)|0;sja(a);return a|0}function pXa(a,b){a=a|0;b=b|0;f[a>>2]=2;f[a+8>>2]=b;return}function qXa(a){a=+a;return +a}function rXa(a){a=a|0;SJa(a);return}function sXa(){b8a();y7a();u7a();return}function tXa(a){a=a|0;rXa(a);f[a+24>>2]=0;return}function uXa(a){a=a|0;f[a+4>>2]=(f[(f[a+8>>2]|0)+4>>2]|0)==5?5:0;return}function vXa(a){a=a|0;a=s8(56)|0;Gza(a);return a|0}function wXa(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function xXa(a,b){a=a|0;b=b|0;rb(23,b|0)|0;return}function yXa(a){a=a|0;EQa(a);return}function zXa(a){a=a|0;if(!a)a=1;else a=(b[a>>0]|0)==0;return a|0}function AXa(a){a=a|0;a=s8(132)|0;Kha(a);return a|0}function BXa(){c2a();f[33804]=131336;return}function CXa(a,b){a=a|0;b=b|0;return g2a(a,b)|0}function DXa(a,b){a=a|0;b=b|0;Kia(a);return}function EXa(a){a=a|0;f[a>>2]=0;a=a+8|0;f[a>>2]=0;f[a+4>>2]=0;return}function FXa(a){a=a|0;f[a>>2]=0;f[a+8>>2]=0;f[a+16>>2]=0;return}function GXa(a,b){a=a|0;b=b|0;n4a(a,b);return}function HXa(a){a=a|0;xM(a);return}function IXa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(10);return 0}function JXa(){var a=0;a=s8(24)|0;GLa(a,4);return a|0}function KXa(a){a=a|0;lca(a+12|0);return}function LXa(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function MXa(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;f[a+4>>2]=c;return}function NXa(a){a=a|0;tZa(a);f[a+16>>2]=0;return}function OXa(a){a=a|0;a=s8(68)|0;yia(a);return a|0}function PXa(a){a=a|0;a=s8(44)|0;jSa(a);return a|0}function QXa(a){a=a|0;a1a(a);return}function RXa(a){a=a|0;NG(a);Cbb(a);return}function SXa(a){a=a|0;OG(a);Cbb(a);return}function TXa(a){a=a|0;PG(a);Cbb(a);return}function UXa(a){a=a|0;QG(a);Cbb(a);return}function VXa(a){a=a|0;RG(a);Cbb(a);return}function WXa(a){a=a|0;wv(a);return}function XXa(a){a=a|0;f[a+4>>2]=2;f[a+8>>2]=1;return}function YXa(a){a=a|0;f[a>>2]=42216;YDa(a+24|0);return}function ZXa(a,b){a=a|0;b=b|0;if(!a)a=0;else a=_F(a,b)|0;return a|0}function _Xa(a,c){a=a|0;c=c|0;c=a+(QF(a,c)|0)|0;return ((b[c>>0]|0)==0?0:c)|0}function $Xa(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function aYa(a){a=a|0;tt(S$a(a)|0);return}function bYa(a){a=a|0;a=(xF(a)|0)+4|0;return Jbb(f[a>>2]|0)|0}function cYa(a){a=a|0;lca(a+16|0);return}function dYa(a,b){a=a|0;b=b|0;lVa(a,f[b+28>>2]|0);return}function eYa(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function fYa(a,b){a=a|0;b=b|0;UU(a,b);return}function gYa(a,b){a=a|0;b=b|0;return Gv(a,b)|0}function hYa(a,b){a=a|0;b=b|0;return THa(a,b)|0}function iYa(a){a=a|0;a=s8(56)|0;eGa(a);return a|0}function jYa(a,b){a=a|0;b=b|0;PS(a,b);return}function kYa(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function lYa(a){a=a|0;WWa(a);Cbb(a);return}function mYa(a){a=a|0;cXa(a);Cbb(a);return}function nYa(a){a=a|0;pya(a);f[a>>2]=41712;f[a+16>>2]=134008;return}function oYa(a){a=a|0;r0a(a);return a|0}function pYa(a){a=a|0;a=s8(152)|0;WH(a);return a|0}function qYa(a){a=a|0;MTa(a);return}function rYa(a){a=a|0;Oza(a);return}function sYa(a,b){a=a|0;b=b|0;return (hB(a,b)|0)^1|0}function tYa(){var a=0;a=s8(72)|0;Yga(a,1);return a|0}function uYa(a){a=a|0;sEa(a);f[a>>2]=45988;return}function vYa(a,b){a=a|0;b=b|0;return CGa(a,b)|0}function wYa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;$(9);return 0}function xYa(a,b){a=a|0;b=b|0;var c=0;c=UZa(a|0)|0;return ((b|0)==0?a:c)|0}function yYa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return fk(a,b,c,d,0)|0}function zYa(a){a=a|0;var b=0;b=a&15;return (a<<24>>24<58?b:b+9|0)|0}function AYa(a,b){a=a|0;b=b|0;f[a>>2]=42404;f[a+4>>2]=b;return}function BYa(){var a=0;a=s8(20)|0;e0a(a);return a|0}function CYa(a){a=a|0;wZa(a,27);return}function DYa(a){a=a|0;wZa(a,26);return}function EYa(a){a=a|0;wZa(a,25);return}function FYa(a){a=a|0;wZa(a,24);return}function GYa(a){a=a|0;wZa(a,23);return}function HYa(a){a=a|0;wZa(a,22);return}function IYa(a){a=a|0;wZa(a,21);return}function JYa(a){a=a|0;wZa(a,20);return}function KYa(a){a=a|0;wZa(a,19);return}function LYa(a){a=a|0;wZa(a,18);return}function MYa(a){a=a|0;wZa(a,17);return}function NYa(a){a=a|0;wZa(a,16);return}function OYa(a){a=a|0;wZa(a,15);return}function PYa(a){a=a|0;wZa(a,14);return}function QYa(a){a=a|0;wZa(a,13);return}function RYa(a){a=a|0;wZa(a,12);return}function SYa(a){a=a|0;wZa(a,11);return}function TYa(a){a=a|0;wZa(a,10);return}function UYa(a){a=a|0;a=s8(84)|0;Wua(a);return a|0}function VYa(a){a=a|0;a=s8(44)|0;YSa(a);return a|0}function WYa(a){a=a|0;a=s8(44)|0;ZSa(a);return a|0}function XYa(a){a=a|0;_7(a+4|0);return}function YYa(a){a=a|0;a=a+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function ZYa(a){a=+a;return a<=2147483647.0&((gbb(a)|0)&a>=-2147483648.0)|0}function _Ya(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function $Ya(a,b){a=a|0;b=b|0;return (wEa(a,b)|0)^1|0}function aZa(a){a=a|0;cNa(a);return}function bZa(a){a=a|0;f[a>>2]=50432;_wa(a+4|0);return}function cZa(){var a=0;a=s8(48)|0;VNa(a,1);return a|0}function dZa(a){a=a|0;a=s8(196)|0;sEa(a);return a|0}function eZa(a){a=a|0;return ((a|0)==1?32:(a|0)==2?64:-1)|0}function fZa(a){a=a|0;return a+20|0}function gZa(a){a=a|0;if(!a)a=1;else a=(f[a>>2]|0)==0&1;return a|0}function hZa(a){a=a|0;return Fr(a)|0}function iZa(a){a=a|0;DIa(a);Cbb(a);return}function jZa(){f[32759]=0;f[32758]=49728;b[131044]=0;f[32760]=25968;return}function kZa(a){a=a|0;TYa(a);return}function lZa(a){a=a|0;C0a(a);return a|0}function mZa(a){a=a|0;wZa(a,9);return}function nZa(a){a=a|0;wZa(a,8);return}function oZa(a){a=a|0;wZa(a,7);return}function pZa(a){a=a|0;wZa(a,6);return}function qZa(a){a=a|0;wZa(a,5);return}function rZa(a){a=a|0;wZa(a,4);return}function sZa(a){a=a|0;wZa(a,3);return}function tZa(a){a=a|0;wZa(a,2);return}function uZa(a){a=a|0;wZa(a,1);return}function vZa(a){a=a|0;a=s8(44)|0;hTa(a);return a|0}function wZa(a,b){a=a|0;b=b|0;f[a>>2]=b;f[a+4>>2]=0;return}function xZa(a,b,c){a=a|0;b=b|0;c=c|0;c=HZ(a,b,c,0,-2147483648)|0;return c|0}function yZa(a){a=a|0;f[a>>2]=50412;_wa(a+4|0);return}function zZa(a){a=a|0;return (f[a+8>>2]|0)==(f[a+4>>2]|0)|0}function AZa(a){a=a|0;mZa(a);return}function BZa(a){a=a|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2|0}function CZa(a){a=a|0;zm(134176,a)|0;return}function DZa(a){a=a|0;a=s8(204)|0;qna(a);return a|0}function EZa(){f[32771]=0;f[32770]=50040;return}function FZa(){f[32773]=0;f[32772]=50088;return}function GZa(a){a=a|0;return O6a(a)|0}function HZa(a,b){a=a|0;b=b|0;return a>>>(b&31)|a<<(0-b&31)|0}function IZa(a){a=a|0;return (f[a+24>>2]|0)-(f[a+20>>2]|0)>>2|0}function JZa(a){a=a|0;LYa(a);return}function KZa(a,b){a=a|0;b=b|0;f[a+116>>2]=f[b>>2];return}function LZa(a){a=a|0;MYa(a);return}function MZa(a){a=a|0;mY(a);Cbb(a);return}function NZa(a){a=a|0;DUa(a);return}function OZa(a){a=a|0;a=s8(68)|0;Wra(a);return a|0}function PZa(a){a=a|0;a=s8(88)|0;Iaa(a);return a|0}function QZa(a){a=a|0;a=s8(56)|0;UHa(a);return a|0}function RZa(a,b,c){a=a|0;b=b|0;c=c|0;return dc[a&255](b|0,c|0)|0}function SZa(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;$(20)}function TZa(a,b,c){a=a|0;b=b|0;c=c|0;return qt(0,a,b,(c|0)==0?133824:c)|0}function UZa(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function VZa(){OUa();return}function WZa(){f[32765]=0;f[32764]=49992;return}function XZa(a,b){a=a|0;b=b|0;return a<<(b&31)|a>>>(0-b&31)|0}function YZa(a){a=a|0;NYa(a);return}function ZZa(a){a=a|0;b[a+53>>0]=1;return}function _Za(a){a=a|0;return a>>>0<1602224128|(a|0)<0&a>>>0<3212836864|0}function $Za(a){a=a|0;return a>>>0<1593835520|(a|0)<0&a>>>0<3741319169|0}function a_a(a){a=a|0;return a>>>0<1333788672|(a|0)<0&a>>>0<3212836864|0}function b_a(a){a=a|0;return a>>>0<1325400064|(a|0)<0&a>>>0<3472883713|0}function c_a(a){a=a|0;a=s8(276)|0;yba(a);return a|0}function d_a(a){a=a|0;return ((f[a>>2]|0)==8?a:0)|0}function e_a(a){a=a|0;return ((f[a>>2]|0)==23?a:0)|0}function f_a(){var a=0;a=s8(60)|0;lxa(a,1);return a|0}function g_a(){var a=0;a=s8(20)|0;O0a(a);return a|0}function h_a(a,c){a=a|0;c=c|0;b[a+73>>0]=c&1;return}function i_a(a){a=a|0;lDa(a);return}function j_a(a){a=a|0;Jpa(a);return}function k_a(a){a=a|0;return DSa(a)|0}function l_a(a,b,c){a=a|0;b=b|0;c=c|0;return}function m_a(a){a=a|0;pya(a);f[a>>2]=45388;return}function n_a(){var a=0;a=s8(72)|0;Yga(a,0);return a|0}function o_a(a){a=a|0;b[a+104>>0]=0;return}function p_a(a){a=a|0;a=s8(116)|0;Sxa(a);return a|0}function q_a(a){a=a|0;a=s8(120)|0;F_(a);return a|0}function r_a(a){a=a|0;return ((f[a>>2]|0)==7?a:0)|0}function s_a(){return 357913941}function t_a(a,b){a=a|0;b=b|0;return (yda(a,b)|0)^1|0}function u_a(a){a=a|0;return o4a(a)|0}function v_a(a){a=a|0;f[a+4>>2]=f[(f[a+12>>2]|0)+4>>2];return}function w_a(){var a=0;a=s8(20)|0;V0a(a);return a|0}function x_a(a){a=a|0;Gna(a);Cbb(a);return}function y_a(a){a=a|0;f[a>>2]=43524;return}function z_a(a){a=a|0;a=s8(44)|0;$Ta(a);return a|0}function A_a(a,c){a=a|0;c=c|0;b[a+22>>0]=c&1;return}function B_a(a){a=a|0;return ((f[a>>2]|0)==12?a:0)|0}function C_a(a){a=a|0;return ((f[a>>2]|0)==11?a:0)|0}function D_a(a){a=a|0;return 37808}function E_a(a,b){a=a|0;b=b|0;return (J8(a,b)|0)==0|0}function F_a(a){a=a|0;return (a|1|0)==5|0}function G_a(a){a=a|0;return $ua(+(a>>>0))|0}function H_a(a){a=a|0;f[a+144>>2]=f[a+140>>2];return}function I_a(a){a=a|0;zSa(a+12|0);return}function J_a(a){a=a|0;return (a+-25|0)>>>0<25|0}function K_a(a,b){a=a|0;b=b|0;hb()}function L_a(a){a=a|0;return ((f[a>>2]|0)==10?a:0)|0}function M_a(a,b,c){a=a|0;b=b|0;c=c|0;c=HZ(a,b,c,-1,-1)|0;return c|0}function N_a(a){a=a|0;if(a>>>0>4294963200){f[33448]=0-a;a=-1}return a|0}function O_a(a){a=a|0;return (a+-48&255)<10|(ZPa(a)|0)|0}function P_a(a){a=a|0;zSa(a+4|0);return}function Q_a(){DCa(134176,54142)|0;return}function R_a(a){a=a|0;GJa(a);Cbb(a);return}function S_a(){var a=0;a=s8(48)|0;VNa(a,0);return a|0}function T_a(a){a=a|0;zSa(a+8|0);return}function U_a(a){a=a|0;return ((f[a>>2]|0)==9?a:0)|0}function V_a(){f[32803]=0;f[32802]=49332;return}function W_a(){f[32801]=0;f[32800]=49276;return}function X_a(){f[32799]=0;f[32798]=49220;return}function Y_a(){f[32797]=0;f[32796]=49164;return}function Z_a(a){a=a|0;return 2}function __a(a){a=a|0;rXa(a);return}function $_a(a){a=a|0;oWa(a);return}function a$a(a){a=a|0;NMa(a);return}function b$a(a){a=a|0;return ((f[a>>2]|0)==18?a:0)|0}function c$a(a){a=a|0;return ((f[a>>2]|0)==20?a:0)|0}function d$a(a){a=a|0;return ((f[a>>2]|0)==17?a:0)|0}function e$a(a){a=a|0;return (a+-48&255)<10|0}function f$a(a){a=a|0;C0a(a);return}function g$a(a){a=a|0;BNa(a);Cbb(a);return}function h$a(a){a=a|0;Uka(a);Cbb(a);return}function i$a(){Ca(107091,106511,530,107132)}function j$a(a,b){a=a|0;b=b|0;return (0-b|0)!=(a|0)|0}function k$a(a){a=a|0;return ((f[a>>2]|0)==5?a:0)|0}function l$a(a){a=a|0;return ((f[a>>2]|0)==16?a:0)|0}function m$a(a){a=a|0;return ((f[a>>2]|0)==14?a:0)|0}function n$a(a){a=a|0;return ((f[a>>2]|0)==15?a:0)|0}function o$a(a){a=a|0;f[a+4>>2]=0;return}function p$a(a,c){a=a|0;c=c|0;b[a>>0]=c;return}function q$a(a){a=a|0;return zr(a,12)|0}function r$a(a,b,c){a=a|0;b=b|0;c=+c;return cc[a&1](b|0,+c)|0}function s$a(a){a=a|0;return (Jbb(a)|0)==0|0}function t$a(a,b){a=a|0;b=b|0;f[a>>2]=1;f[a+8>>2]=b;return}function u$a(a){a=a|0;return ((f[a>>2]|0)==4?a:0)|0}function v$a(a){a=a|0;return ((f[a>>2]|0)==1?a:0)|0}function w$a(a){a=a|0;return ((f[a>>2]|0)==13?a:0)|0}function x$a(a){a=a|0;return ((f[a>>2]|0)==19?a:0)|0}function y$a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(8);return 0}function z$a(a,b,c){a=a|0;b=b|0;c=c|0;c=M_a(a,b,c)|0;return c|0}function A$a(a,b,c){a=a|0;b=b|0;c=c|0;Pa(a|0,b|0,c|0)}function B$a(){if(!(b[130840]|0))VWa(130840)|0;return}function C$a(a,b){a=a|0;b=b|0;return a<<24>>24==b<<24>>24|0}function D$a(a){a=a|0;D7(a);f[a>>2]=3;return a|0}function E$a(a){a=a|0;I=f[a+4>>2]|0;return f[a>>2]|0}function F$a(a){a=a|0;Pha(a);Cbb(a);return}function G$a(){var a=0;a=s8(60)|0;lxa(a,0);return a|0}function H$a(a,b){a=a|0;b=b|0;return f[a+(b<<2)>>2]|0}function I$a(a){a=a|0;Aia(a);return}function J$a(a){a=a|0;return ((f[a>>2]|0)==3?a:0)|0}function K$a(a){a=+a;return (n[s>>2]=a,f[s>>2]|0)|0}function L$a(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function M$a(a,b,c){a=a|0;b=b|0;c=c|0;pc[a&4095](b|0,c|0)}function N$a(){if(!(b[131504]|0))VWa(131504)|0;return}function O$a(a){a=a|0;return rp(a,0)|0}function P$a(a){a=a|0;return Zo(a,0)|0}function Q$a(a,b){a=a|0;b=b|0;MXa(a,b,0);return}function R$a(a){a=a|0;a=s8(112)|0;ana(a);return a|0}function S$a(a){a=a|0;return aSa(a)|0}function T$a(a,b,c){a=a|0;b=b|0;c=c|0;hb()}function U$a(a,b,c){a=a|0;b=b|0;c=c|0;c=xZa(a,b,c)|0;return c|0}function V$a(){if(!(b[131512]|0))VWa(131512)|0;return}function W$a(a){a=a|0;bua(a);Cbb(a);return}function X$a(a){a=a|0;Ima(a);Cbb(a);return}function Y$a(a){a=a|0;k7a(a);return}function Z$a(a){a=a|0;return ((f[a>>2]|0)==2?a:0)|0}function _$a(){I6a();p6a();return}function $$a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;$(7);return 0}function a0a(a,b){a=a|0;b=b|0;return Ob(a|0,b|0)|0}function b0a(a){a=a|0;return (a|0)!=46180&((a|0)!=0&(a|0)!=133704)&1|0}function c0a(a){a=a|0;HO(a);return}function d0a(){var a=0;a=s8(20)|0;nYa(a);return a|0}function e0a(a){a=a|0;nYa(a);f[a>>2]=43432;return}function f0a(a){a=a|0;zSa(a);return}function g0a(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;return}function h0a(a){a=a|0;b[a+20>>0]=1;b[a+22>>0]=1;return}function i0a(){h8a();R7a();return}function j0a(a){a=a|0;K2a(a);Cbb(a);return}function k0a(){f[32831]=0;f[32830]=49532;return}function l0a(){f[32829]=0;f[32828]=49500;return}function m0a(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];return}function n0a(a,b){a=a|0;b=b|0;return Pya(Jbb(a)|0,b)|0}function o0a(a){a=a|0;nUa(a)|0;return}function p0a(a){a=a|0;a=s8(96)|0;u3(a);return a|0}function q0a(a){a=a|0;HPa(a);f[a+4>>2]=5;return}function r0a(a){a=a|0;KYa(a);return}function s0a(a){a=a|0;return PMa(a)|0}function t0a(a){a=a|0;_L(a);Cbb(a);return}function u0a(a){a=a|0;f[a+52>>2]=f[a+48>>2];return}function v0a(a,b){a=a|0;b=b|0;return -1}function w0a(){f[32757]=0;f[32756]=47596;return}function x0a(){f[32755]=0;f[32754]=47564;return}function y0a(a){a=a|0;return rp(a,1)|0}function z0a(a){a=a|0;return Zo(a,1)|0}function A0a(a,b){a=a|0;b=b|0;return 0}function B0a(a){a=a|0;a=s8(104)|0;PPa(a);return a|0} +function ed(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=u;u=u+704|0;h=Z+680|0;d=Z+96|0;O=Z+48|0;U=Z+16|0;V=Z+664|0;W=Z+648|0;X=Z+632|0;Y=Z+616|0;i=Z+600|0;j=Z+584|0;k=Z+568|0;l=Z+552|0;m=Z+536|0;n=Z+520|0;o=Z+504|0;p=Z+488|0;q=Z+472|0;r=Z+456|0;s=Z+440|0;t=Z+424|0;v=Z+408|0;w=Z+392|0;x=Z+376|0;y=Z+360|0;z=Z+344|0;A=Z+328|0;B=Z+312|0;C=Z+296|0;D=Z+280|0;E=Z+264|0;F=Z+248|0;G=Z+232|0;H=Z+216|0;J=Z+200|0;K=Z+184|0;L=Z+168|0;M=Z+152|0;N=Z+136|0;P=Z+120|0;Q=Z+80|0;R=Z+64|0;S=Z+32|0;T=Z;e=c+12|0;oz(d,b,f[e>>2]|0);if(!(K0a(d)|0)?(f[O>>2]=f[d>>2],f[O+4>>2]=f[d+4>>2],f[O+8>>2]=f[d+8>>2],f[O+12>>2]=f[d+12>>2],g=c+16|0,oz(h,b,f[g>>2]|0),f[d>>2]=f[h>>2],f[d+4>>2]=f[h+4>>2],f[d+8>>2]=f[h+8>>2],f[d+12>>2]=f[h+12>>2],f[d+16>>2]=f[h+16>>2],!(K0a(d)|0)):0){f[U>>2]=f[d>>2];f[U+4>>2]=f[d+4>>2];f[U+8>>2]=f[d+8>>2];f[U+12>>2]=f[d+12>>2];d=f[(f[e>>2]|0)+4>>2]|0;if(v2a(d)|0?(f[O>>2]|0)!=(d|0):0)Ca(101345,101308,310,101417);d=f[(f[g>>2]|0)+4>>2]|0;if(v2a(d)|0?(f[U>>2]|0)!=(d|0):0)Ca(101429,101308,311,101417);a:do switch(f[c+8>>2]|0){case 63:case 50:case 25:case 0:{vT(V,O,U);f[h>>2]=f[V>>2];f[h+4>>2]=f[V+4>>2];f[h+8>>2]=f[V+8>>2];f[h+12>>2]=f[V+12>>2];wAa(a,h);break}case 64:case 51:case 26:case 1:{pT(W,O,U);f[h>>2]=f[W>>2];f[h+4>>2]=f[W+4>>2];f[h+8>>2]=f[W+8>>2];f[h+12>>2]=f[W+12>>2];wAa(a,h);break}case 65:case 52:case 27:case 2:{iT(X,O,U);f[h>>2]=f[X>>2];f[h+4>>2]=f[X+4>>2];f[h+8>>2]=f[X+8>>2];f[h+12>>2]=f[X+12>>2];wAa(a,h);break}case 3:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101504);if((Jia(O)|0)==-2147483648&(I|0)==-1?(X=Jia(U)|0,(X|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101519);A5(Y,O,U);f[h>>2]=f[Y>>2];f[h+4>>2]=f[Y+4>>2];f[h+8>>2]=f[Y+8>>2];f[h+12>>2]=f[Y+12>>2];wAa(a,h);break}case 4:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101538);W3(i,O,U);f[h>>2]=f[i>>2];f[h+4>>2]=f[i+4>>2];f[h+8>>2]=f[i+8>>2];f[h+12>>2]=f[i+12>>2];wAa(a,h);break}case 5:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101553);if((Jia(O)|0)==-2147483648&(I|0)==-1?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0){t$a(j,0);f[h>>2]=f[j>>2];f[h+4>>2]=f[j+4>>2];f[h+8>>2]=f[j+8>>2];f[h+12>>2]=f[j+12>>2];wAa(a,h);break a}z5(k,O,U);f[h>>2]=f[k>>2];f[h+4>>2]=f[k+4>>2];f[h+8>>2]=f[k+8>>2];f[h+12>>2]=f[k+12>>2];wAa(a,h);break}case 6:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101568);V3(l,O,U);f[h>>2]=f[l>>2];f[h+4>>2]=f[l+4>>2];f[h+8>>2]=f[l+8>>2];f[h+12>>2]=f[l+12>>2];wAa(a,h);break}case 28:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101583);if((Jia(O)|0)==0&(I|0)==-2147483648?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0)pc[f[f[b>>2]>>2]&4095](b,101598);A5(m,O,U);f[h>>2]=f[m>>2];f[h+4>>2]=f[m+4>>2];f[h+8>>2]=f[m+8>>2];f[h+12>>2]=f[m+12>>2];wAa(a,h);break}case 29:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101617);W3(n,O,U);f[h>>2]=f[n>>2];f[h+4>>2]=f[n+4>>2];f[h+8>>2]=f[n+8>>2];f[h+12>>2]=f[n+12>>2];wAa(a,h);break}case 30:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101632);if((Jia(O)|0)==0&(I|0)==-2147483648?(Y=Jia(U)|0,(Y|0)==-1&(I|0)==-1):0){XSa(o,0,0);f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];f[h+12>>2]=f[o+12>>2];wAa(a,h);break a}z5(p,O,U);f[h>>2]=f[p>>2];f[h+4>>2]=f[p+4>>2];f[h+8>>2]=f[p+8>>2];f[h+12>>2]=f[p+12>>2];wAa(a,h);break}case 31:{if((Jia(U)|0)==0&(I|0)==0)pc[f[f[b>>2]>>2]&4095](b,101647);V3(q,O,U);f[h>>2]=f[q>>2];f[h+4>>2]=f[q+4>>2];f[h+8>>2]=f[q+8>>2];f[h+12>>2]=f[q+12>>2];wAa(a,h);break}case 66:case 53:{ss(r,O,U);f[h>>2]=f[r>>2];f[h+4>>2]=f[r+4>>2];f[h+8>>2]=f[r+8>>2];f[h+12>>2]=f[r+12>>2];wAa(a,h);break}case 32:case 7:{vaa(s,O,U);f[h>>2]=f[s>>2];f[h+4>>2]=f[s+4>>2];f[h+8>>2]=f[s+8>>2];f[h+12>>2]=f[s+12>>2];wAa(a,h);break}case 33:case 8:{yaa(t,O,U);f[h>>2]=f[t>>2];f[h+4>>2]=f[t+4>>2];f[h+8>>2]=f[t+8>>2];f[h+12>>2]=f[t+12>>2];wAa(a,h);break}case 34:case 9:{uaa(v,O,U);f[h>>2]=f[v>>2];f[h+4>>2]=f[v+4>>2];f[h+8>>2]=f[v+8>>2];f[h+12>>2]=f[v+12>>2];wAa(a,h);break}case 35:case 10:{F0(w,O,U);f[h>>2]=f[w>>2];f[h+4>>2]=f[w+4>>2];f[h+8>>2]=f[w+8>>2];f[h+12>>2]=f[w+12>>2];wAa(a,h);break}case 36:case 11:{a0(x,O,U);f[h>>2]=f[x>>2];f[h+4>>2]=f[x+4>>2];f[h+8>>2]=f[x+8>>2];f[h+12>>2]=f[x+12>>2];wAa(a,h);break}case 37:case 12:{v0(y,O,U);f[h>>2]=f[y>>2];f[h+4>>2]=f[y+4>>2];f[h+8>>2]=f[y+8>>2];f[h+12>>2]=f[y+12>>2];wAa(a,h);break}case 38:case 13:{Q0(z,O,U);f[h>>2]=f[z>>2];f[h+4>>2]=f[z+4>>2];f[h+8>>2]=f[z+8>>2];f[h+12>>2]=f[z+12>>2];wAa(a,h);break}case 39:case 14:{L0(A,O,U);f[h>>2]=f[A>>2];f[h+4>>2]=f[A+4>>2];f[h+8>>2]=f[A+8>>2];f[h+12>>2]=f[A+12>>2];wAa(a,h);break}case 70:case 57:case 40:case 15:{gT(B,O,U);f[h>>2]=f[B>>2];f[h+4>>2]=f[B+4>>2];f[h+8>>2]=f[B+8>>2];f[h+12>>2]=f[B+12>>2];wAa(a,h);break}case 71:case 58:case 41:case 16:{fT(C,O,U);f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];f[h+12>>2]=f[C+12>>2];wAa(a,h);break}case 42:case 17:{j$(D,O,U);f[h>>2]=f[D>>2];f[h+4>>2]=f[D+4>>2];f[h+8>>2]=f[D+8>>2];f[h+12>>2]=f[D+12>>2];wAa(a,h);break}case 43:case 18:{n_(E,O,U);f[h>>2]=f[E>>2];f[h+4>>2]=f[E+4>>2];f[h+8>>2]=f[E+8>>2];f[h+12>>2]=f[E+12>>2];wAa(a,h);break}case 44:case 19:{b$(F,O,U);f[h>>2]=f[F>>2];f[h+4>>2]=f[F+4>>2];f[h+8>>2]=f[F+8>>2];f[h+12>>2]=f[F+12>>2];wAa(a,h);break}case 45:case 20:{k_(G,O,U);f[h>>2]=f[G>>2];f[h+4>>2]=f[G+4>>2];f[h+8>>2]=f[G+8>>2];f[h+12>>2]=f[G+12>>2];wAa(a,h);break}case 46:case 21:{k$(H,O,U);f[h>>2]=f[H>>2];f[h+4>>2]=f[H+4>>2];f[h+8>>2]=f[H+8>>2];f[h+12>>2]=f[H+12>>2];wAa(a,h);break}case 47:case 22:{o_(J,O,U);f[h>>2]=f[J>>2];f[h+4>>2]=f[J+4>>2];f[h+8>>2]=f[J+8>>2];f[h+12>>2]=f[J+12>>2];wAa(a,h);break}case 48:case 23:{c$(K,O,U);f[h>>2]=f[K>>2];f[h+4>>2]=f[K+4>>2];f[h+8>>2]=f[K+8>>2];f[h+12>>2]=f[K+12>>2];wAa(a,h);break}case 49:case 24:{l_(L,O,U);f[h>>2]=f[L>>2];f[h+4>>2]=f[L+4>>2];f[h+8>>2]=f[L+8>>2];f[h+12>>2]=f[L+12>>2];wAa(a,h);break}case 72:case 59:{xca(M,O,U);f[h>>2]=f[M>>2];f[h+4>>2]=f[M+4>>2];f[h+8>>2]=f[M+8>>2];f[h+12>>2]=f[M+12>>2];wAa(a,h);break}case 73:case 60:{mca(N,O,U);f[h>>2]=f[N>>2];f[h+4>>2]=f[N+4>>2];f[h+8>>2]=f[N+8>>2];f[h+12>>2]=f[N+12>>2];wAa(a,h);break}case 74:case 61:{yca(P,O,U);f[h>>2]=f[P>>2];f[h+4>>2]=f[P+4>>2];f[h+8>>2]=f[P+8>>2];f[h+12>>2]=f[P+12>>2];wAa(a,h);break}case 75:case 62:{nca(Q,O,U);f[h>>2]=f[Q>>2];f[h+4>>2]=f[Q+4>>2];f[h+8>>2]=f[Q+8>>2];f[h+12>>2]=f[Q+12>>2];wAa(a,h);break}case 67:case 54:{XT(R,O,U);f[h>>2]=f[R>>2];f[h+4>>2]=f[R+4>>2];f[h+8>>2]=f[R+8>>2];f[h+12>>2]=f[R+12>>2];wAa(a,h);break}case 68:case 55:{Jo(S,O,U);f[h>>2]=f[S>>2];f[h+4>>2]=f[S+4>>2];f[h+8>>2]=f[S+8>>2];f[h+12>>2]=f[S+12>>2];wAa(a,h);break}case 69:case 56:{Ko(T,O,U);f[h>>2]=f[T>>2];f[h+4>>2]=f[T+4>>2];f[h+8>>2]=f[T+8>>2];f[h+12>>2]=f[T+12>>2];wAa(a,h);break}default:hb()}while(0)}else{f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];f[a+12>>2]=f[d+12>>2];f[a+16>>2]=f[d+16>>2];f[a+20>>2]=f[d+20>>2]}u=Z;return}function fd(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0.0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0;N=u;u=u+288|0;H=N+264|0;J=N;K=N+260|0;L=N+272|0;g=b[c>>0]|0;a:do if(g<<24>>24){z=a+4|0;A=a+100|0;B=a+108|0;C=a+8|0;D=J+10|0;E=J+33|0;F=J+46|0;G=J+94|0;y=H+4|0;k=c;v=0;c=0;i=0;j=g;g=0;b:while(1){c:do if(!(w6a(j&255)|0)){j=j<<24>>24==37;d:do if(j){o=k+1|0;l=b[o>>0]|0;e:do switch(l<<24>>24){case 37:break d;case 42:{x=0;k=k+2|0;break}default:{j=l&255;if(abb(j)|0?(b[k+2>>0]|0)==36:0){x=oga(e,j+-48|0)|0;k=k+3|0;break e}k=(f[e>>2]|0)+(4-1)&~(4-1);x=f[k>>2]|0;f[e>>2]=k+4;k=o}}while(0);j=b[k>>0]|0;if(!(abb(j&255)|0)){l=0;r=k;o=j}else{l=0;do{l=(l*10|0)+-48+(j&255)|0;k=k+1|0;j=b[k>>0]|0}while((abb(j&255)|0)!=0);r=k;o=j}q=r+1|0;if(o<<24>>24==109){j=(x|0)!=0&1;i=0;k=q;r=r+2|0;o=b[q>>0]|0;g=0}else{j=0;k=r;r=q}switch(o<<24>>24){case 104:{w=(b[r>>0]|0)==104;o=w?-2:-1;k=w?k+2|0:r;break}case 108:{w=(b[r>>0]|0)==108;o=w?3:1;k=w?k+2|0:r;break}case 106:{o=3;k=r;break}case 116:case 122:{o=1;k=r;break}case 76:{o=2;k=r;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{o=0;break}default:{M=141;break b}}s=h[k>>0]|0;t=(s&47|0)==3;s=t?s|32:s;t=t?1:o;r=s&255;switch(r<<24>>24){case 99:{l=(l|0)>1?l:1;break}case 91:break;case 110:{U_(x,t,v,((v|0)<0)<<31>>31);l=v;break c}default:{zna(a,0);do{o=f[z>>2]|0;if(o>>>0<(f[A>>2]|0)>>>0){f[z>>2]=o+1;o=h[o>>0]|0}else o=eF(a)|0}while((w6a(o)|0)!=0);if(!(f[A>>2]|0))o=f[z>>2]|0;else{o=(f[z>>2]|0)+-1|0;f[z>>2]=o}v=(f[B>>2]|0)+v+o-(f[C>>2]|0)|0}}zna(a,l);q=f[z>>2]|0;o=f[A>>2]|0;if(q>>>0>>0)f[z>>2]=q+1;else{if((eF(a)|0)<0){M=141;break b}o=f[A>>2]|0}if(o|0)f[z>>2]=(f[z>>2]|0)+-1;f:do switch(r<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){iH(J|0,-1,257)|0;b[J>>0]=0;if((s|0)==115){b[E>>0]=0;d[D>>1]=0;d[D+2>>1]=0;b[D+4>>0]=0}}else{s=k+1|0;r=(b[s>>0]|0)==94;o=r&1;k=r?k+2|0:s;iH(J|0,o|0,257)|0;b[J>>0]=0;switch(b[k>>0]|0){case 45:{r=(o^1)&255;b[F>>0]=r;k=k+1|0;break}case 93:{r=(o^1)&255;b[G>>0]=r;k=k+1|0;break}default:r=(o^1)&255}while(1){o=b[k>>0]|0;h:do switch(o<<24>>24){case 0:{M=141;break b}case 93:break g;case 45:{q=k+1|0;o=b[q>>0]|0;switch(o<<24>>24){case 93:case 0:{o=45;break h}default:{}}k=b[k+-1>>0]|0;if((k&255)<(o&255)){k=k&255;do{k=k+1|0;b[J+k>>0]=r;o=b[q>>0]|0}while(k>>>0<(o&255)>>>0);k=q}else k=q;break}default:{}}while(0);b[J+((o&255)+1)>>0]=r;k=k+1|0}}while(0);o=w?l+1|0:31;s=(t|0)==1;t=(j|0)!=0;i:do if(s){if(t){g=Kc(o<<2)|0;if(!g){i=0;g=0;M=141;break b}}else g=x;f[H>>2]=0;f[y>>2]=0;r=o;i=0;j:while(1){q=(g|0)==0;do{k:while(1){o=f[z>>2]|0;if(o>>>0<(f[A>>2]|0)>>>0){f[z>>2]=o+1;o=h[o>>0]|0}else o=eF(a)|0;if(!(b[J+(o+1)>>0]|0))break j;b[L>>0]=o;switch(qt(K,L,1,H)|0){case -1:{i=0;M=141;break b}case -2:break;default:break k}}if(!q){f[g+(i<<2)>>2]=f[K>>2];i=i+1|0}}while(!(t&(i|0)==(r|0)));i=r<<1|1;o=xZ(g,i<<2)|0;if(!o){i=0;M=141;break b}else{q=r;r=i;g=o;i=q}}if(!(gZa(H)|0)){i=0;M=141;break b}else{r=i;i=0;q=g}}else{if(t){i=Kc(o)|0;if(!i){i=0;g=0;M=141;break b}q=o;g=0;while(1){do{o=f[z>>2]|0;if(o>>>0<(f[A>>2]|0)>>>0){f[z>>2]=o+1;o=h[o>>0]|0}else o=eF(a)|0;if(!(b[J+(o+1)>>0]|0)){r=g;q=0;g=0;break i}b[i+g>>0]=o;g=g+1|0}while((g|0)!=(q|0));g=q<<1|1;o=xZ(i,g)|0;if(!o){g=0;M=141;break b}else{r=q;q=g;i=o;g=r}}}if(!x)while(1){g=f[z>>2]|0;if(g>>>0<(f[A>>2]|0)>>>0){f[z>>2]=g+1;g=h[g>>0]|0}else g=eF(a)|0;if(!(b[J+(g+1)>>0]|0)){r=0;i=0;q=0;g=0;break i}}i=0;while(1){g=f[z>>2]|0;if(g>>>0<(f[A>>2]|0)>>>0){f[z>>2]=g+1;g=h[g>>0]|0}else g=eF(a)|0;if(!(b[J+(g+1)>>0]|0)){r=i;i=x;q=0;g=0;break i}b[x+i>>0]=g;i=i+1|0}}while(0);if(!(f[A>>2]|0))o=f[z>>2]|0;else{o=(f[z>>2]|0)+-1|0;f[z>>2]=o}o=o-(f[C>>2]|0)+(f[B>>2]|0)|0;if(!o)break b;if(!((o|0)==(l|0)|w^1))break b;do if(t)if(s){f[x>>2]=q;break}else{f[x>>2]=i;break}while(0);if(!w){if(q|0)f[q+(r<<2)>>2]=0;if(!i){i=0;break f}b[i+r>>0]=0}break}case 120:case 88:case 112:{l=16;M=129;break}case 111:{l=8;M=129;break}case 117:case 100:{l=10;M=129;break}case 105:{l=0;M=129;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{m=+ni(a,t,0);if((f[B>>2]|0)==((f[C>>2]|0)-(f[z>>2]|0)|0))break b;if(x)switch(t|0){case 0:{n[x>>2]=m;break f}case 1:{p[x>>3]=m;break f}case 2:{p[x>>3]=m;break f}default:break f}break}default:{}}while(0);do if((M|0)==129){M=0;l=ig(a,l,0,-1,-1)|0;if((f[B>>2]|0)==((f[C>>2]|0)-(f[z>>2]|0)|0))break b;if((x|0)!=0&(s|0)==112){f[x>>2]=l;break}else{U_(x,t,l,I);break}}while(0);c=c+((x|0)!=0&1)|0;l=(f[B>>2]|0)+v+(f[z>>2]|0)-(f[C>>2]|0)|0;break c}while(0);k=k+(j&1)|0;zna(a,0);j=f[z>>2]|0;if(j>>>0<(f[A>>2]|0)>>>0){f[z>>2]=j+1;j=h[j>>0]|0}else j=eF(a)|0;if((j|0)!=(h[k>>0]|0)){M=21;break b}l=v+1|0}else{while(1){j=k+1|0;if(!(w6a(h[j>>0]|0)|0))break;else k=j}zna(a,0);do{j=f[z>>2]|0;if(j>>>0<(f[A>>2]|0)>>>0){f[z>>2]=j+1;j=h[j>>0]|0}else j=eF(a)|0}while((w6a(j)|0)!=0);if(!(f[A>>2]|0))j=f[z>>2]|0;else{j=(f[z>>2]|0)+-1|0;f[z>>2]=j}l=(f[B>>2]|0)+v+j-(f[C>>2]|0)|0}while(0);k=k+1|0;j=b[k>>0]|0;if(!(j<<24>>24))break a;else v=l}if((M|0)==21){if(f[A>>2]|0)f[z>>2]=(f[z>>2]|0)+-1;if((c|0)!=0|(j|0)>-1)break;else{j=0;c=i;M=142}}else if((M|0)==141)if(!c){c=i;M=142}if((M|0)==142){i=c;c=-1}if(j){rg(i);rg(g)}}else c=0;while(0);u=N;return c|0}function gd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;n=o+12|0;m=o;e=c;a:do if((e-a|0)>2){if((b[a>>0]|0)==103){g=(b[a+1>>0]|0)==115;i=g;g=g?a+2|0:a}else{i=0;g=a}h=gl(g,c,d)|0;if((h|0)!=(g|0)){if(!i){a=h;break}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break;zoa(e+-24|0,0,123346)|0;a=h;break}if(((e-g|0)>2?(b[g>>0]|0)==115:0)?(b[g+1>>0]|0)==114:0){h=g+2|0;b:do if((b[h>>0]|0)==78){l=g+3|0;e=$h(l,c,d)|0;if((e|0)==(l|0)|(e|0)==(c|0))break a;h=jg(e,c,d)|0;l=d+4|0;do if((h|0)==(e|0))k=d;else{e=f[l>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(n,e+-24|0);g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;k=e+-1|0;OJa(g+(k*24|0)|0);e=k}f[l>>2]=g+-24;k=b[n+11>>0]|0;j=k<<24>>24<0;x=0;ja(97,g+-48|0,(j?f[n>>2]|0:n)|0,(j?f[n+4>>2]|0:k&255)|0)|0;k=x;x=0;if(k&1){a=Ia()|0;MTa(n);break b}if((h|0)!=(c|0)){MTa(n);e=h;k=d;break}g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;m=e+-1|0;OJa(g+(m*24|0)|0);e=m}f[l>>2]=g+-24;MTa(n);break a}while(0);i=m+11|0;j=m+4|0;while(1){if((b[e>>0]|0)==69){g=43;break}h=KIa(e,c,d)|0;if((h|0)==(e|0)|(h|0)==(c|0))break a;e=f[l>>2]|0;if(((e-(f[k>>2]|0)|0)/24|0)>>>0<2)break a;hY(n,e+-24|0);g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;OJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;x=0;ja(101,n|0,0,123346)|0;p=x;x=0;if(p&1){g=40;break}f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];e=0;while(1){if((e|0)==3)break;f[n+(e<<2)>>2]=0;e=e+1|0}p=b[i>>0]|0;g=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(g?f[m>>2]|0:m)|0,(g?f[j>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){g=41;break}MTa(m);MTa(n);e=h}if((g|0)==40)a=Ia()|0;else if((g|0)==41){a=Ia()|0;MTa(m)}else if((g|0)==43){p=e+1|0;g=gl(p,c,d)|0;if((g|0)==(p|0)){g=f[l>>2]|0;if((f[d>>2]|0)==(g|0))break a;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;OJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;break a}e=f[l>>2]|0;if(((e-(f[k>>2]|0)|0)/24|0)>>>0<2)break a;hY(n,e+-24|0);e=f[l>>2]|0;a=0;while(1){if((a|0)==-1)break;p=a+-1|0;OJa(e+(p*24|0)|0);a=p}f[l>>2]=e+-24;x=0;ja(101,n|0,0,123346)|0;p=x;x=0;do if(!(p&1)){f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}p=b[m+11>>0]|0;d=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(d?f[m>>2]|0:m)|0,(d?f[m+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;MTa(m);break}else{MTa(m);MTa(n);a=g;break a}}else a=Ia()|0;while(0);MTa(n);break}MTa(n)}else{e=$h(h,c,d)|0;if((e|0)!=(h|0)){i=jg(e,c,d)|0;do if((i|0)!=(e|0)){h=d+4|0;e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(n,e+-24|0);g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;OJa(g+(p*24|0)|0);e=p}f[h>>2]=g+-24;p=b[n+11>>0]|0;l=p<<24>>24<0;x=0;ja(97,g+-48|0,(l?f[n>>2]|0:n)|0,(l?f[n+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;MTa(n);break b}else{MTa(n);e=i;break}}while(0);h=gl(e,c,d)|0;if((h|0)==(e|0)){g=d+4|0;h=f[g>>2]|0;if((f[d>>2]|0)==(h|0))break a;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;OJa(h+(p*24|0)|0);e=p}f[g>>2]=h+-24;break a}g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(n,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;p=a+-1|0;OJa(e+(p*24|0)|0);a=p}f[g>>2]=e+-24;x=0;ja(101,n|0,0,123346)|0;p=x;x=0;do if(!(p&1)){f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}p=b[m+11>>0]|0;d=p<<24>>24<0;x=0;ja(97,(f[g>>2]|0)+-24|0,(d?f[m>>2]|0:m)|0,(d?f[m+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;MTa(m);break}else{MTa(m);MTa(n);a=h;break a}}else a=Ia()|0;while(0);MTa(n);break}j=KIa(h,c,d)|0;if((j|0)==(h|0)|(j|0)==(c|0))break a;if(i){e=d+4|0;g=f[e>>2]|0;if((f[d>>2]|0)==(g|0))break a;zoa(g+-24|0,0,123346)|0;l=e}else l=d+4|0;i=m+11|0;k=m+4|0;e=j;while(1){if((b[e>>0]|0)==69){g=111;break}h=KIa(e,c,d)|0;if((h|0)==(e|0)|(h|0)==(c|0))break a;e=f[l>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(n,e+-24|0);g=f[l>>2]|0;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;OJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;x=0;ja(101,n|0,0,123346)|0;p=x;x=0;if(p&1){g=108;break}f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];e=0;while(1){if((e|0)==3)break;f[n+(e<<2)>>2]=0;e=e+1|0}p=b[i>>0]|0;j=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(j?f[m>>2]|0:m)|0,(j?f[k>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){g=109;break}MTa(m);MTa(n);e=h}if((g|0)==108)a=Ia()|0;else if((g|0)==109){a=Ia()|0;MTa(m)}else if((g|0)==111){p=e+1|0;g=gl(p,c,d)|0;if((g|0)==(p|0)){g=f[l>>2]|0;if((f[d>>2]|0)==(g|0))break a;e=0;while(1){if((e|0)==-1)break;p=e+-1|0;OJa(g+(p*24|0)|0);e=p}f[l>>2]=g+-24;break a}e=f[l>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(n,e+-24|0);e=f[l>>2]|0;a=0;while(1){if((a|0)==-1)break;p=a+-1|0;OJa(e+(p*24|0)|0);a=p}f[l>>2]=e+-24;x=0;ja(101,n|0,0,123346)|0;p=x;x=0;do if(!(p&1)){f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}p=b[m+11>>0]|0;d=p<<24>>24<0;x=0;ja(97,(f[l>>2]|0)+-24|0,(d?f[m>>2]|0:m)|0,(d?f[m+4>>2]|0:p&255)|0)|0;p=x;x=0;if(p&1){a=Ia()|0;MTa(m);break}else{MTa(m);MTa(n);a=g;break a}}else a=Ia()|0;while(0);MTa(n);break}MTa(n)}while(0);Ua(a|0)}}while(0);u=o;return a|0}function hd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;s=u;u=u+112|0;w=s+88|0;t=s+76|0;v=s+64|0;r=s+52|0;o=s+16|0;p=s;q=s+40|0;h=c;a:do if((h-a|0)>3){e=b[a>>0]|0;if(e<<24>>24==103){n=(b[a+1>>0]|0)==115;e=n?a+2|0:a;g=e;e=b[e>>0]|0}else{n=0;g=a}if(e<<24>>24==110){e=b[g+1>>0]|0;switch(e<<24>>24){case 97:case 119:break;default:{e=a;break a}}m=e<<24>>24==97;e=g+2|0;b:do if((e|0)!=(c|0)){l=0;while(1){if((b[e>>0]|0)==95)break;g=Bc(e,c,d)|0;if((g|0)==(e|0)|(g|0)==(c|0))break b;else{l=1;e=g}}k=e+1|0;g=Cc(k,c,d)|0;if(!((g|0)==(k|0)|(g|0)==(c|0))){e=b[g>>0]|0;c:do if(!((h-g|0)>2&e<<24>>24==112))if(e<<24>>24==69)k=0;else break b;else{if((b[g+1>>0]|0)!=105)break b;e=g+2|0;while(1){if((b[e>>0]|0)==69){k=1;g=e;break c}k=e;e=Bc(e,c,d)|0;if((e|0)==(k|0)|(e|0)==(c|0))break b}}while(0);f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[w+(e<<2)>>2]=0;e=e+1|0}do if(k){c=d+4|0;e=f[c>>2]|0;if((f[d>>2]|0)==(e|0)){e=a;g=1;h=102}else{x=0;ua(3195,t|0,e+-24|0);j=x;x=0;if(j&1){e=Ia()|0;h=107;break}e=w+11|0;if((b[e>>0]|0)<0){Z0a(f[w>>2]|0,0);f[w+4>>2]=0}else{Z0a(w,0);b[e>>0]=0}yv(w);f[w>>2]=f[t>>2];f[w+4>>2]=f[t+4>>2];f[w+8>>2]=f[t+8>>2];e=0;while(1){if((e|0)==3)break;f[t+(e<<2)>>2]=0;e=e+1|0}MTa(t);h=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;OJa(h+(j*24|0)|0);e=j}e=h+-24|0;f[c>>2]=e;j=d;h=35}}else{e=d+4|0;c=e;j=d;e=f[e>>2]|0;h=35}while(0);d:do if((h|0)==35)if((f[j>>2]|0)==(e|0)){e=a;g=1;h=102}else{x=0;ua(3195,t|0,e+-24|0);i=x;x=0;do if(!(i&1)){i=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;h=e+-1|0;OJa(i+(h*24|0)|0);e=h}h=i+-24|0;f[c>>2]=h;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[v+(e<<2)>>2]=0;e=e+1|0}do if(l)if((f[j>>2]|0)==(h|0)){e=a;g=1;h=101}else{x=0;ua(3195,r|0,i+-48|0);j=x;x=0;if(j&1){e=Ia()|0;h=105;break}e=v+11|0;if((b[e>>0]|0)<0){Z0a(f[v>>2]|0,0);f[v+4>>2]=0}else{Z0a(v,0);b[e>>0]=0}yv(v);f[v>>2]=f[r>>2];f[v+4>>2]=f[r+4>>2];f[v+8>>2]=f[r+8>>2];e=0;while(1){if((e|0)==3)break;f[r+(e<<2)>>2]=0;e=e+1|0}MTa(r);h=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;j=e+-1|0;OJa(h+(j*24|0)|0);e=j}f[c>>2]=h+-24;h=58}else h=58;while(0);e:do if((h|0)==58){f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[r+(e<<2)>>2]=0;e=e+1|0}if(n?(x=0,ua(3203,r|0,123346),n=x,x=0,n&1):0)h=63;else h=64;f:do if((h|0)==64){if(m){x=0;ia(216,r|0,123556)|0;n=x;x=0;if(n&1){h=63;break}}else{x=0;ia(216,r|0,123306)|0;n=x;x=0;if(n&1){h=63;break}}g:do if(l){x=0;va(185,p|0,123274,v|0);n=x;x=0;if(n&1)e=Ia()|0;else{x=0;ia(216,p|0,123560)|0;n=x;x=0;do if(!(n&1)){f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}n=b[o+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,r|0,(m?f[o>>2]|0:o)|0,(m?f[o+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){e=Ia()|0;MTa(o);break}else{MTa(o);MTa(p);break g}}else e=Ia()|0;while(0);MTa(p)}break f}while(0);n=b[t+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,r|0,(m?f[t>>2]|0:t)|0,(m?f[t+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1)h=63;else{h:do if(k){x=0;va(185,p|0,123269,w|0);n=x;x=0;if(n&1)e=Ia()|0;else{x=0;ia(216,p|0,123272)|0;n=x;x=0;do if(!(n&1)){f[o>>2]=f[p>>2];f[o+4>>2]=f[p+4>>2];f[o+8>>2]=f[p+8>>2];e=0;while(1){if((e|0)==3)break;f[p+(e<<2)>>2]=0;e=e+1|0}n=b[o+11>>0]|0;m=n<<24>>24<0;x=0;ja(97,r|0,(m?f[o>>2]|0:o)|0,(m?f[o+4>>2]|0:n&255)|0)|0;n=x;x=0;if(n&1){e=Ia()|0;MTa(o);break}else{MTa(o);MTa(p);break h}}else e=Ia()|0;while(0);MTa(p)}break f}while(0);f[q>>2]=f[r>>2];f[q+4>>2]=f[r+4>>2];f[q+8>>2]=f[r+8>>2];e=0;while(1){if((e|0)==3)break;f[r+(e<<2)>>2]=0;e=e+1|0}RY(o,q);e=f[c>>2]|0;do if(e>>>0<(f[d+8>>2]|0)>>>0){CY(e,o);f[c>>2]=(f[c>>2]|0)+24}else{x=0;ua(3197,d|0,o|0);p=x;x=0;if(!(p&1))break;e=Ia()|0;OJa(o);MTa(q);break f}while(0);OJa(o);MTa(q);MTa(r);e=g+1|0;g=0;h=101;break e}}while(0);if((h|0)==63)e=Ia()|0;MTa(r);h=105}while(0);if((h|0)==101){MTa(v);MTa(t);h=102;break d}else if((h|0)==105){MTa(v);MTa(t);break}}else e=Ia()|0;while(0);h=107}while(0);if((h|0)==102){MTa(w);if(!g)break a;else break}else if((h|0)==107){MTa(w);Ua(e|0)}}}while(0);e=a}else e=a}else e=a;while(0);u=s;return e|0}function id(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;T=u;u=u+96|0;R=T+92|0;I=T+64|0;g=T+80|0;M=T+68|0;N=T+56|0;U=T+32|0;V=T+8|0;O=T+4|0;P=T;Q=T+60|0;J=T+44|0;K=T+20|0;L=a+12|0;do if(b[L>>0]|0){c=DCa(134176,98090)|0;dYa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[R>>2]|0,134880)|0;H=x;x=0;if(!(H&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,H=x,x=0,!(H&1)):0){OCa(R);Wq(c,e)|0;fu(c)|0;break}V=Ia()|0;OCa(R);Ua(V|0)}while(0);G=nq(a)|0;H=a+60|0;do if((G|0)!=((f[a+64>>2]|0)-(f[H>>2]|0)>>2|0)){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;_Z(g,98107,j7a(98107)|0);x=0;ua(1870,a|0,g|0);F=x;x=0;if(F&1){c=Ia()|0;MTa(g);break}else{MTa(g);h=10;break}}else h=10;while(0);a:do if((h|0)==10){l=a+36|0;m=a+128|0;n=U+4|0;o=U+8|0;p=V+4|0;q=V+8|0;r=a+124|0;s=a+72|0;t=a+44|0;v=a+201|0;w=a+180|0;y=a+156|0;z=a+160|0;A=a+188|0;B=a+192|0;C=a+264|0;D=a+80|0;E=a+84|0;F=a+76|0;k=0;b:while(1){c=(b[L>>0]|0)==0;if(k>>>0>=G>>>0){h=12;break}if(!c){d=DCa(134176,98155)|0;d=zm(d,f[l>>2]|0)|0;dYa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[R>>2]|0,134880)|0;j=x;x=0;if(j&1){h=16;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;j=x;x=0;if(j&1){h=16;break}OCa(R);Wq(d,c)|0;fu(d)|0}c=nq(a)|0;if(!c){f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;_Z(M,98168,j7a(98168)|0);x=0;ua(1870,a|0,M|0);j=x;x=0;if(j&1){h=21;break}MTa(M)}f[m>>2]=(f[l>>2]|0)+c;j=f[(f[H>>2]|0)+(k<<2)>>2]|0;if(b[L>>0]|0){zm(DCa(134176,98188)|0,k)|0;dYa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[R>>2]|0,134880)|0;i=x;x=0;if(i&1){h=25;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;i=x;x=0;if(i&1){h=25;break}OCa(R);Wq(134176,c)|0;fu(134176)|0}f[N>>2]=0;f[U>>2]=0;f[n>>2]=0;f[o>>2]=0;f[V>>2]=0;f[p>>2]=0;f[q>>2]=0;d=j+8|0;e=j+12|0;c=0;while(1){if(c>>>0>=(f[e>>2]|0)-(f[d>>2]|0)>>2>>>0)break;x=0;g=ga(303,N|0)|0;i=x;x=0;if(i&1){h=36;break b}f[O>>2]=g;h=(f[d>>2]|0)+(c<<2)|0;i=f[n>>2]|0;if(i>>>0>=(f[o>>2]|0)>>>0){x=0;va(146,U|0,O|0,h|0);i=x;x=0;if(i&1){h=36;break b}}else{f[I>>2]=g;h=f[h>>2]|0;f[R>>2]=f[I>>2];hUa(i,R,h);f[n>>2]=(f[n>>2]|0)+8}c=c+1|0}x=0;h=ga(302,a|0)|0;i=x;x=0;if(i&1){h=39;break}g=0;while(1){if(g>>>0>=h>>>0)break;x=0;c=ga(302,a|0)|0;i=x;x=0;if(i&1){h=49;break b}x=0;i=ga(304,a|0)|0;e=x;x=0;if(e&1){h=50;break b}f[O>>2]=i;while(1){if(!c)break;x=0;d=ga(303,N|0)|0;e=x;x=0;if(e&1){h=51;break b}f[P>>2]=d;e=f[p>>2]|0;if(e>>>0>=(f[q>>2]|0)>>>0){x=0;va(146,V|0,P|0,O|0);e=x;x=0;if(e&1){h=51;break b}}else{f[I>>2]=d;f[R>>2]=f[I>>2];hUa(e,R,i);f[p>>2]=(f[p>>2]|0)+8}c=c+-1|0}g=g+1|0}_0a(O,f[a>>2]|0);x=0;c=ga(226,k|0)|0;i=x;x=0;if(i&1){h=63;break}f[Q>>2]=c;e=f[j+4>>2]|0;x=0;f[R>>2]=f[Q>>2];e=ka(20,R|0,U|0,e|0,V|0)|0;i=x;x=0;if(i&1){h=63;break}f[I>>2]=e;f[e+32>>2]=f[j>>2];d=e;f[r>>2]=d;if(b[L>>0]|0){x=0;c=ia(62,134176,98197)|0;j=x;x=0;if(j&1){h=64;break}x=0;ia(78,c|0,k|0)|0;j=x;x=0;if(j&1){h=64;break}dYa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[R>>2]|0,134880)|0;j=x;x=0;if(j&1){h=60;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;j=x;x=0;if(j&1){h=60;break}OCa(R);x=0;ia(79,134176,c|0)|0;j=x;x=0;if(j&1){h=64;break}x=0;ga(227,134176)|0;j=x;x=0;if(j&1){h=64;break}}f[s>>2]=0;b[t>>0]=0;b[v>>0]=0;if(f[w>>2]|0){h=68;break}if((f[y>>2]|0)!=(f[z>>2]|0)){h=70;break}if((f[A>>2]|0)!=(f[B>>2]|0)){h=72;break}if(f[C>>2]|0){h=74;break}x=0;c=ia(174,a|0,f[e+4>>2]|0)|0;j=x;x=0;if(j&1){h=64;break}f[e+36>>2]=c;if(f[C>>2]|0){h=77;break}if((f[z>>2]|0)!=(f[y>>2]|0)){h=79;break}if(f[w>>2]|0){h=81;break}if((f[A>>2]|0)!=(f[B>>2]|0)){f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;j=j7a(98328)|0;x=0;va(87,J|0,98328,j|0);j=x;x=0;if(j&1){h=64;break}x=0;ua(1870,a|0,J|0);j=x;x=0;if(j&1){h=86;break}MTa(J)}if((f[l>>2]|0)!=(f[m>>2]|0)){f[K>>2]=0;f[K+4>>2]=0;f[K+8>>2]=0;j=j7a(98361)|0;x=0;va(87,K|0,98361,j|0);j=x;x=0;if(j&1){h=64;break}x=0;ua(1870,a|0,K|0);j=x;x=0;if(j&1){h=91;break}MTa(K)}f[r>>2]=0;b[t>>0]=0;c=f[D>>2]|0;if((c|0)==(f[E>>2]|0)){x=0;ua(63,F|0,I|0);j=x;x=0;if(j&1){h=64;break}}else{f[c>>2]=d;f[D>>2]=(f[D>>2]|0)+4}zSa(V);zSa(U);k=k+1|0}switch(h|0){case 12:{do if(!c){c=DCa(134176,98417)|0;dYa(R,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[R>>2]|0,134880)|0;V=x;x=0;if(!(V&1)?(x=0,S=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,V=x,x=0,!(V&1)):0){OCa(R);Wq(c,S)|0;fu(c)|0;break}V=Ia()|0;OCa(R);Ua(V|0)}while(0);u=T;return}case 16:{V=Ia()|0;OCa(R);Ua(V|0)}case 21:{c=Ia()|0;MTa(M);break a}case 25:{V=Ia()|0;OCa(R);Ua(V|0)}case 36:{c=Ia()|0;break}case 39:{c=Ia()|0;break}case 49:{c=Ia()|0;break}case 50:{c=Ia()|0;h=53;break}case 51:{c=Ia()|0;h=53;break}case 60:{c=Ia()|0;OCa(R);h=66;break}case 63:{c=Ia()|0;h=96;break}case 64:{c=Ia()|0;h=66;break}case 68:{x=0;wa(71,98219,87231,1096,98248);x=0;h=65;break}case 70:{x=0;wa(71,98262,87231,1097,98248);x=0;h=65;break}case 72:{x=0;wa(71,98281,87231,1098,98248);x=0;h=65;break}case 74:{x=0;wa(71,96014,87231,1099,98248);x=0;h=65;break}case 77:{x=0;wa(71,96014,87231,1101,98248);x=0;h=65;break}case 79:{x=0;wa(71,98305,87231,1102,98248);x=0;h=65;break}case 81:{x=0;wa(71,98219,87231,1103,98248);x=0;h=65;break}case 86:{c=Ia()|0;MTa(J);h=96;break}case 91:{c=Ia()|0;MTa(K);h=96;break}}if((h|0)!=53)if((h|0)==65){c=Ia()|0;h=66}if((h|0)==66)h=96;zSa(V);zSa(U)}while(0);Ua(c|0)}function jd(a){a=a|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;A=u;u=u+144|0;C=A+120|0;q=A+108|0;D=A+96|0;y=A+84|0;z=A+72|0;F=A+60|0;G=A+48|0;H=A+36|0;E=A+24|0;B=A+12|0;h=A;QE(a);Th(a);i=a+36|0;j=a+8|0;k=a+48|0;l=C+4|0;m=a+208|0;n=E+11|0;o=E+4|0;p=E+11|0;r=E+4|0;s=B+11|0;t=B+4|0;v=B+11|0;w=B+4|0;a:while(1){if(!(vVa(f[j>>2]|0,f[i>>2]|0)|0)){I=113;break}e=nq(a)|0;g=nq(a)|0;c=f[i>>2]|0;d=f[j>>2]|0;if((c+g|0)>>>0>((f[d+4>>2]|0)-(f[d>>2]|0)|0)>>>0){f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;_Z(q,94830,j7a(94830)|0);x=0;ua(1870,a|0,q|0);d=x;x=0;if(d&1){I=6;break}MTa(q);c=f[i>>2]|0}b:do switch(e|0){case 10:{I=24;break}case 0:{I=30;break}default:{f[D>>2]=e;FF(C,k,e,D);if(!(b[l>>0]|0)){EY(C,e);x=0;ia(83,C|0,94866)|0;d=x;x=0;if(d&1){I=15;break a}f[y>>2]=f[C>>2];f[y+4>>2]=f[C+4>>2];f[y+8>>2]=f[C+8>>2];d=0;while(1){if((d|0)==3)break;f[C+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1870,a|0,y|0);d=x;x=0;if(d&1){I=16;break a}MTa(y);MTa(C)}do switch(e|0){case 10:{I=24;break b}case 8:{zF(a);break b}case 5:{Rn(a);break b}case 1:{Wg(a);break b}case 2:{Zc(a);break b}case 3:{lk(a);break b}case 7:{Wh(a);break b}case 9:{Qk(a);break b}case 6:{Bi(a);kaa(m);Gr(a,-1)|0;break b}case 11:{ck(a);break b}case 4:{ik(a);break b}default:{I=30;break b}}while(0)}}while(0);if((I|0)==24){I=0;id(a)}else if((I|0)==30){I=0;YE(a,g);e=c+g|0;if((f[i>>2]|0)>>>0>e>>>0){DY(H,c);x=0;ia(83,H|0,94896)|0;d=x;x=0;if(d&1){I=55;break}f[G>>2]=f[H>>2];f[G+4>>2]=f[H+4>>2];f[G+8>>2]=f[H+8>>2];d=0;while(1){if((d|0)==3)break;f[H+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,G|0,94931)|0;d=x;x=0;if(d&1){I=56;break}f[F>>2]=f[G>>2];f[F+4>>2]=f[G+4>>2];f[F+8>>2]=f[G+8>>2];d=0;while(1){if((d|0)==3)break;f[G+(d<<2)>>2]=0;d=d+1|0}x=0;ua(91,E|0,g|0);d=x;x=0;if(d&1){I=57;break}d=b[n>>0]|0;J=d<<24>>24<0;x=0;ja(49,F|0,(J?f[E>>2]|0:E)|0,(J?f[o>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){I=58;break}f[D>>2]=f[F>>2];f[D+4>>2]=f[F+4>>2];f[D+8>>2]=f[F+8>>2];d=0;while(1){if((d|0)==3)break;f[F+(d<<2)>>2]=0;d=d+1|0}x=0;ia(59,D|0,94946)|0;J=x;x=0;if(J&1){I=59;break}f[C>>2]=f[D>>2];f[C+4>>2]=f[D+4>>2];f[C+8>>2]=f[D+8>>2];d=0;while(1){if((d|0)==3)break;f[D+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1871,B|0,f[i>>2]|0);J=x;x=0;if(J&1){I=60;break}J=b[s>>0]|0;d=J<<24>>24<0;x=0;ja(49,C|0,(d?f[B>>2]|0:B)|0,(d?f[t>>2]|0:J&255)|0)|0;J=x;x=0;if(J&1){I=61;break}f[z>>2]=f[C>>2];f[z+4>>2]=f[C+4>>2];f[z+8>>2]=f[C+8>>2];d=0;while(1){if((d|0)==3)break;f[C+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1870,a|0,z|0);J=x;x=0;if(J&1){I=62;break}MTa(z);MTa(B);MTa(C);MTa(D);MTa(E);MTa(F);MTa(G);MTa(H)}f[i>>2]=e}if((f[i>>2]|0)!=(c+g|0)){DY(H,c);x=0;ia(83,H|0,94980)|0;J=x;x=0;if(J&1){I=97;break}f[G>>2]=f[H>>2];f[G+4>>2]=f[H+4>>2];f[G+8>>2]=f[H+8>>2];c=0;while(1){if((c|0)==3)break;f[H+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,G|0,94931)|0;J=x;x=0;if(J&1){I=98;break}f[F>>2]=f[G>>2];f[F+4>>2]=f[G+4>>2];f[F+8>>2]=f[G+8>>2];c=0;while(1){if((c|0)==3)break;f[G+(c<<2)>>2]=0;c=c+1|0}x=0;ua(91,E|0,g|0);J=x;x=0;if(J&1){I=99;break}J=b[p>>0]|0;g=J<<24>>24<0;x=0;ja(49,F|0,(g?f[E>>2]|0:E)|0,(g?f[r>>2]|0:J&255)|0)|0;J=x;x=0;if(J&1){I=100;break}f[D>>2]=f[F>>2];f[D+4>>2]=f[F+4>>2];f[D+8>>2]=f[F+8>>2];c=0;while(1){if((c|0)==3)break;f[F+(c<<2)>>2]=0;c=c+1|0}x=0;ia(59,D|0,94946)|0;J=x;x=0;if(J&1){I=101;break}f[C>>2]=f[D>>2];f[C+4>>2]=f[D+4>>2];f[C+8>>2]=f[D+8>>2];c=0;while(1){if((c|0)==3)break;f[D+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1871,B|0,f[i>>2]|0);J=x;x=0;if(J&1){I=102;break}J=b[v>>0]|0;g=J<<24>>24<0;x=0;ja(49,C|0,(g?f[B>>2]|0:B)|0,(g?f[w>>2]|0:J&255)|0)|0;J=x;x=0;if(J&1){I=103;break}f[h>>2]=f[C>>2];f[h+4>>2]=f[C+4>>2];f[h+8>>2]=f[C+8>>2];c=0;while(1){if((c|0)==3)break;f[C+(c<<2)>>2]=0;c=c+1|0}x=0;ua(1870,a|0,h|0);J=x;x=0;if(J&1){I=104;break}MTa(h);MTa(B);MTa(C);MTa(D);MTa(E);MTa(F);MTa(G);MTa(H)}}switch(I|0){case 6:{c=Ia()|0;MTa(q);break}case 15:{c=Ia()|0;I=17;break}case 16:{c=Ia()|0;MTa(y);I=17;break}case 55:{c=Ia()|0;I=69;break}case 56:{c=Ia()|0;I=68;break}case 57:{c=Ia()|0;I=67;break}case 58:{c=Ia()|0;I=66;break}case 59:{c=Ia()|0;I=65;break}case 60:{c=Ia()|0;I=64;break}case 61:{c=Ia()|0;I=63;break}case 62:{c=Ia()|0;MTa(z);I=63;break}case 97:{c=Ia()|0;I=111;break}case 98:{c=Ia()|0;I=110;break}case 99:{c=Ia()|0;I=109;break}case 100:{c=Ia()|0;I=108;break}case 101:{c=Ia()|0;I=107;break}case 102:{c=Ia()|0;I=106;break}case 103:{c=Ia()|0;I=105;break}case 104:{c=Ia()|0;MTa(h);I=105;break}case 113:{Ch(a);u=A;return}}if((I|0)==17)MTa(C);else if((I|0)==63){MTa(B);I=64}else if((I|0)==105){MTa(B);I=106}if((I|0)==64){MTa(C);I=65}else if((I|0)==106){MTa(C);I=107}if((I|0)==65){MTa(D);I=66}else if((I|0)==107){MTa(D);I=108}if((I|0)==66){MTa(E);I=67}else if((I|0)==108){MTa(E);I=109}if((I|0)==67){MTa(F);I=68}else if((I|0)==109){MTa(F);I=110}if((I|0)==68){MTa(G);I=69}else if((I|0)==110){MTa(G);I=111}if((I|0)==69)MTa(H);else if((I|0)==111)MTa(H);Ua(c|0)}function kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0;t=u;u=u+80|0;r=t+72|0;o=t+68|0;d=t+64|0;y=t+40|0;p=t+52|0;m=t+36|0;q=t+24|0;n=t+20|0;w=t+16|0;s=t+12|0;v=t;c=lF(Or(b,0)|0)|0;a:do if(!(g2a(c,f[33100]|0)|0)){if(!(f2a(c,f[33111]|0)|0)){Bab(o);Bab(d);g=Kx(b,o,d)|0;c=f[o>>2]|0;if(!(Qab(c)|0)){c=YT(f[a+44>>2]|0)|0;f[o>>2]=c}d=a+12|0;e=f[d>>2]|0;if((e|0)==(f[a+16>>2]|0))LL(a+8|0,o);else{f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4}l=a+44|0;f[l>>2]=(f[l>>2]|0)+1;l=a+52|0;j=zZ(l,o)|0;f[j>>2]=0;f[y>>2]=0;j=y+4|0;f[j>>2]=0;k=y+8|0;f[k>>2]=0;c=0;b:while(1){x=0;d=ga(294,b|0)|0;i=x;x=0;if(i&1){j=21;break}if(g>>>0>=d>>>0){j=74;break}x=0;i=ia(69,b|0,g|0)|0;h=x;x=0;if(h&1){j=22;break}x=0;d=ia(69,i|0,0)|0;h=x;x=0;if(h&1){j=23;break}x=0;d=ga(295,d|0)|0;h=x;x=0;if(h&1){j=23;break}c:do if(!(g2a(d,f[33109]|0)|0)){if(g2a(d,f[33100]|0)|0){x=0;c=ia(69,i|0,1)|0;h=x;x=0;if(h&1){j=39;break b}x=0;c=ia(162,a|0,c|0)|0;h=x;x=0;if(h&1){j=39;break b}d=f[a>>2]|0;f[m>>2]=c;f[r>>2]=f[m>>2];if(!(tma(d,r)|0)){j=36;break b}f[n>>2]=c;x=0;f[r>>2]=f[n>>2];c=ia(163,d|0,r|0)|0;i=x;x=0;if(i&1){j=39;break b}d=f[c+4>>2]|0;x=0;e=ia(161,l|0,o|0)|0;i=x;x=0;if(i&1){j=39;break b}f[e>>2]=d;break}if(g2a(d,f[33110]|0)|0){x=0;d=ga(294,i|0)|0;h=x;x=0;if(h&1){j=23;break b}if(d>>>0>1){x=0;d=ia(69,i|0,1)|0;h=x;x=0;if(h&1){j=60;break b}if(qRa(d)|0){x=0;d=ia(69,i|0,2)|0;i=x;x=0;if(i&1){j=62;break b}x=0;d=ga(295,d|0)|0;i=x;x=0;if(i&1){j=62;break b}x=0;d=ia(160,d|0,1)|0;i=x;x=0;if(i&1){j=62;break b}f[r>>2]=d;e=f[j>>2]|0;if(e>>>0>=(f[k>>2]|0)>>>0){x=0;ua(1872,y|0,r|0);i=x;x=0;if(i&1){j=62;break b}}else{f[e>>2]=d;f[j>>2]=e+4}break}e=1;while(1){x=0;d=ga(294,i|0)|0;h=x;x=0;if(h&1){j=59;break b}if(e>>>0>=d>>>0)break c;h=e+1|0;x=0;d=ia(69,i|0,e|0)|0;e=x;x=0;if(e&1){j=72;break b}x=0;d=ga(295,d|0)|0;e=x;x=0;if(e&1){j=72;break b}x=0;d=ia(160,d|0,1)|0;e=x;x=0;if(e&1){j=72;break b}f[r>>2]=d;e=f[j>>2]|0;if(e>>>0>=(f[k>>2]|0)>>>0){x=0;ua(1872,y|0,r|0);e=x;x=0;if(e&1){j=72;break b}}else{f[e>>2]=d;f[j>>2]=e+4}e=h}}}}else{x=0;d=ga(294,i|0)|0;h=x;x=0;if(h&1){j=23;break b}if(d>>>0>2){j=18;break b}x=0;d=ia(69,i|0,1)|0;i=x;x=0;if(i&1){j=23;break b}x=0;d=ga(295,d|0)|0;i=x;x=0;if(i&1){j=23;break b}x=0;d=ia(160,d|0,0)|0;i=x;x=0;if(i&1){j=23;break b}x=0;e=ia(161,l|0,o|0)|0;i=x;x=0;if(i&1){j=23;break b}f[e>>2]=d}while(0);g=g+1|0}d:switch(j|0){case 18:{e=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;w=j7a(94237)|0;x=0;va(87,p|0,94237,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,e|0,p|0,f[i+28>>2]|0,f[i+32>>2]|0);w=x;x=0;if(w&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(p);if(!d)break}else c=Ia()|0;La(e|0);break}case 21:{c=Ia()|0;break}case 22:{c=Ia()|0;break}case 23:{c=Ia()|0;break}case 36:{e=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;w=j7a(94258)|0;x=0;va(87,q|0,94258,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,e|0,q|0,f[i+28>>2]|0,f[i+32>>2]|0);w=x;x=0;if(w&1)d=1;else{x=0;va(98,e|0,32200,457);x=0;d=0}c=Ia()|0;MTa(q);if(!d)break}else c=Ia()|0;La(e|0);break}case 39:{c=Ia()|0;break}case 59:{c=Ia()|0;j=61;break}case 60:{c=Ia()|0;j=61;break}case 62:{c=Ia()|0;break}case 72:{c=Ia()|0;break}case 74:{e:do if(!c){x=0;ta(491,w|0);q=x;x=0;do if(q&1)c=Ia()|0;else{x=0;c=ia(161,l|0,o|0)|0;q=x;x=0;f:do if(q&1)j=80;else{d=f[w>>2]|0;f[d+4>>2]=f[c>>2];Yaa(d+8|0,y);g=f[a>>2]|0;e=f[g>>2]|0;g=f[g+4>>2]|0;h=g;i=e;c=1;while(1){if((e|0)==(g|0))break;q=vW(f[e>>2]|0,d)|0;c=c&(q^1);if(q)break;else e=e+4|0}do if(!c){f[w>>2]=0;if(d|0){T_a(d);Cbb(d)}}else{x=0;c=ga(226,h-i>>2|0)|0;q=x;x=0;if(q&1){c=Ia()|0;e=w;j=101;break f}f[d>>2]=c;e=a+24|0;g=f[e>>2]|0;if((g|0)==(f[a+28>>2]|0)){x=0;ua(1503,a+20|0,d|0);q=x;x=0;if(q&1){j=80;break f}}else{f[g>>2]=c;f[e>>2]=(f[e>>2]|0)+4}c=f[a>>2]|0;f[s>>2]=f[d>>2];f[r>>2]=f[s>>2];if(!(tma(c,r)|0)){f[w>>2]=0;x=0;ua(1873,c|0,d|0);v=x;x=0;if(v&1){j=80;break f}f[w>>2]=0;break}g=Ea(20)|0;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;t=j7a(94806)|0;x=0;va(87,v|0,94806,t|0);t=x;x=0;if(!(t&1)){x=0;wa(138,g|0,v|0,f[b+28>>2]|0,f[b+32>>2]|0);b=x;x=0;if(b&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}c=Ia()|0;MTa(v);if(e)j=94}else{c=Ia()|0;j=94}if((j|0)==94)La(g|0);f[w>>2]=0;break f}while(0);break e}while(0);if((j|0)==80){c=Ia()|0;e=w;d=f[w>>2]|0;j=101}if((j|0)==101){f[e>>2]=0;if(!d)break}T_a(d);Cbb(d)}while(0);break d}while(0);zSa(y);break a}}zSa(y);Ua(c|0)}}else dg(a,b);while(0);u=t;return}function ld(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+48|0;s=r+36|0;d=r+24|0;o=r+12|0;m=r;p=a+36|0;do if((f[p>>2]|0)==(f[a+128>>2]|0)){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;_Z(d,96258,j7a(96258)|0);x=0;ua(1870,a|0,d|0);n=x;x=0;if(n&1){s=Ia()|0;MTa(d);d=s;break}else{MTa(d);e=5;break}}else e=5;while(0);a:do if((e|0)==5){n=a+12|0;do if(b[n>>0]|0){e=DCa(134176,96408)|0;k=a+264|0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;d=DCa(Am(e,d)|0,87147)|0;d=zm(d,f[p>>2]|0)|0;dYa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[s>>2]|0,134880)|0;k=x;x=0;if(!(k&1)?(x=0,g=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,k=x,x=0,!(k&1)):0){OCa(s);Wq(d,g)|0;fu(d)|0;break}r=Ia()|0;OCa(s);Ua(r|0)}while(0);g=a+20|0;d=f[g>>2]|0;b:do if(d|0){h=a+24|0;i=a+232|0;j=a+124|0;k=a+44|0;while(1){if(!d)break b;e=f[p>>2]|0;if(d>>>0>e>>>0)break b;if(d>>>0>>0){e=DCa(134176,96425)|0;e=zm(e,f[g>>2]|0)|0;dYa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[s>>2]|0,134880)|0;t=x;x=0;if(t&1)break;x=0;d=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0;t=x;x=0;if(t&1)break;OCa(s);Wq(e,d)|0;fu(e)|0}f[i>>2]=f[h>>2];f[i+4>>2]=f[h+4>>2];f[i+8>>2]=f[h+8>>2];b[k>>0]=(f[j>>2]|0)!=0&1;as(a);d=f[g>>2]|0}t=Ia()|0;OCa(s);Ua(t|0)}while(0);g=Fr(a)|0;do if(!(b[n>>0]|0))d=g&255;else{d=g&255;e=Am(DCa(134176,96459)|0,d)|0;dYa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;h=ia(73,f[s>>2]|0,134880)|0;t=x;x=0;if(!(t&1)?(x=0,l=ia(f[(f[h>>2]|0)+28>>2]|0,h|0,10)|0,t=x,x=0,!(t&1)):0){OCa(s);Wq(e,l)|0;fu(e)|0;break}t=Ia()|0;OCa(s);Ua(t|0)}while(0);c:do switch(g<<24>>24){case 2:{g=eSa(f[a+4>>2]|0)|0;f[c>>2]=g;zh(a,aSa(g)|0);g=2;break}case 4:{g=kVa(f[a+4>>2]|0)|0;f[c>>2]=g;Qr(a,vSa(g)|0);g=4;break}case 3:{g=NUa(f[a+4>>2]|0)|0;f[c>>2]=g;$m(a,lSa(g)|0);g=3;break}case 13:case 12:{t=wUa(f[a+4>>2]|0)|0;f[c>>2]=t;yx(a,$Ra(t)|0,g);break}case 14:{g=GRa(f[a+4>>2]|0)|0;f[c>>2]=g;pl(a,NRa(g)|0);g=14;break}case 16:{g=Al(a)|0;f[c>>2]=g;g=16;break}case 17:{g=KPa(f[a+4>>2]|0)|0;f[c>>2]=g;Em(a,IQa(g)|0);g=17;break}case 32:{g=GTa(f[a+4>>2]|0)|0;f[c>>2]=g;gs(a,tRa(g)|0);g=32;break}case 33:case 34:{t=FTa(f[a+4>>2]|0)|0;f[c>>2]=t;js(a,nRa(t)|0,g);break}case 35:{g=kTa(f[a+4>>2]|0)|0;f[c>>2]=g;Aq(a,aRa(g)|0);g=35;break}case 36:{g=jTa(f[a+4>>2]|0)|0;f[c>>2]=g;ZA(a,$Qa(g)|0);g=36;break}case 27:{g=aUa(f[a+4>>2]|0)|0;f[c>>2]=g;qA(a,DRa(g)|0);g=27;break}case 15:{g=bUa(f[a+4>>2]|0)|0;f[c>>2]=g;RB(a,ERa(g)|0);g=15;break}case 1:{g=DWa(f[a+4>>2]|0)|0;f[c>>2]=g;nSa(g)|0;VH(b[n>>0]|0);g=1;break}case 0:{g=DSa(f[a+4>>2]|0)|0;f[c>>2]=g;JQa(g)|0;hH(b[n>>0]|0);g=0;break}case 26:{g=rWa(f[a+4>>2]|0)|0;f[c>>2]=g;cE(a,dSa(g)|0);g=26;break}case 5:case 11:{f[c>>2]=0;break}case -2:{g=Fr(a)|0;if(((((!(Xh(a,c,g,1)|0)?!(ek(a,c,g,1)|0):0)?!(mi(a,c,g)|0):0)?!(Zn(a,c,g)|0):0)?!(Wo(a,c,g)|0):0)?!(Eq(a,c,g)|0):0){FY(s,g&255);x=0;ia(83,s|0,96482)|0;t=x;x=0;do if(!(t&1)){f[o>>2]=f[s>>2];f[o+4>>2]=f[s+4>>2];f[o+8>>2]=f[s+8>>2];d=0;while(1){if((d|0)==3)break;f[s+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1870,a|0,o|0);t=x;x=0;if(t&1){d=Ia()|0;MTa(o);break}else{MTa(o);MTa(s);break c}}else d=Ia()|0;while(0);MTa(s);break a}break}default:if(((((!(Zg(a,c,g)|0)?!(Xi(a,c,g)|0):0)?!(co(a,c,g)|0):0)?!(Xh(a,c,g,0)|0):0)?!(ek(a,c,g,0)|0):0)?!(Jp(a,c,g)|0):0){FY(s,d);x=0;ia(83,s|0,96517)|0;t=x;x=0;do if(!(t&1)){f[m>>2]=f[s>>2];f[m+4>>2]=f[s+4>>2];f[m+8>>2]=f[s+8>>2];d=0;while(1){if((d|0)==3)break;f[s+(d<<2)>>2]=0;d=d+1|0}x=0;ua(1870,a|0,m|0);t=x;x=0;if(t&1){d=Ia()|0;MTa(m);break}else{MTa(m);MTa(s);break c}}else d=Ia()|0;while(0);MTa(s);break a}}while(0);if(!((b[a+44>>0]|0)==0|(f[c>>2]|0)==0)){o=a+232|0;t=Il((f[a+124>>2]|0)+68|0,c)|0;f[t>>2]=f[o>>2];f[t+4>>2]=f[o+4>>2];f[t+8>>2]=f[o+8>>2]}do if(b[n>>0]|0){e=DCa(134176,96532)|0;t=a+264|0;d=f[t>>2]|0;f[t>>2]=d+-1;d=DCa(Am(e,d)|0,87147)|0;d=zm(d,f[p>>2]|0)|0;dYa(s,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;e=ia(73,f[s>>2]|0,134880)|0;t=x;x=0;if(!(t&1)?(x=0,q=ia(f[(f[e>>2]|0)+28>>2]|0,e|0,10)|0,t=x,x=0,!(t&1)):0){OCa(s);Wq(d,q)|0;fu(d)|0;break}t=Ia()|0;OCa(s);Ua(t|0)}while(0);u=r;return g&255|0}while(0);Ua(d|0);return 0}function md(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;K=u;u=u+144|0;H=K+92|0;M=K+72|0;N=K+32|0;L=K+12|0;E=K+8|0;F=K+4|0;G=K;jla(N);I=d+36|0;J=d+40|0;s=f[J>>2]|0;D=a+20|0;t=c+20|0;v=N+4|0;z=N+12|0;w=N+16|0;y=N+8|0;r=f[I>>2]|0;a:while(1){if((r|0)==(s|0)){C=3;break}x=0;e=ia(188,D|0,f[r>>2]|0)|0;C=x;x=0;if(C&1){C=40;break}b:do if(SZ(e,t)|0){o=f[r>>2]|0;q=W7a(o)|0;k=f[v>>2]|0;p=(k|0)==0;c:do if(!p){l=k+-1|0;m=(l&k|0)==0;if(!m)if(q>>>0>>0)g=q;else g=(q>>>0)%(k>>>0)|0;else g=l&q;e=f[(f[N>>2]|0)+(g<<2)>>2]|0;if(e)while(1){e=f[e>>2]|0;if(!e)break c;j=f[e+4>>2]|0;if((j|0)!=(q|0)){if(!m){if(j>>>0>=k>>>0)j=(j>>>0)%(k>>>0)|0}else j=j&l;if((j|0)!=(g|0))break c}if(g2a(f[e+8>>2]|0,f[o>>2]|0)|0)break b}}else g=0;while(0);x=0;wa(95,M|0,N|0,q|0,o|0);C=x;x=0;if(C&1){C=40;break a}h=+(((f[z>>2]|0)+1|0)>>>0);i=+n[w>>2];do if(p|i*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;B=~~+W(+(h/i))>>>0;x=0;ua(680,N|0,(C>>>0>>0?B:C)|0);C=x;x=0;if(C&1){C=28;break a}e=f[v>>2]|0;g=e+-1|0;if(!(g&e)){k=e;g=g&q;break}if(q>>>0>>0){k=e;g=q}else{k=e;g=(q>>>0)%(e>>>0)|0}}while(0);e=f[(f[N>>2]|0)+(g<<2)>>2]|0;if(!e){j=f[M>>2]|0;f[j>>2]=f[y>>2];f[y>>2]=j;f[(f[N>>2]|0)+(g<<2)>>2]=y;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=k+-1|0;if(g&k){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&g;f[(f[N>>2]|0)+(e<<2)>>2]=j}}else{C=f[M>>2]|0;f[C>>2]=f[e>>2];f[e>>2]=C}f[z>>2]=(f[z>>2]|0)+1}while(0);r=r+4|0}d:do if((C|0)==3){e:do if(!(f[z>>2]|0))e=0;else{g=f[J>>2]|0;A=N+20|0;e=f[I>>2]|0;while(1){if((e|0)==(g|0))break;x=0;ia(189,A|0,f[e>>2]|0)|0;B=x;x=0;if(B&1){C=48;break}e=e+4|0}if((C|0)==48){e=Ia()|0;break d}rza(H,d);p4a(H);x=0;ua(2589,H|0,N|0);B=x;x=0;if(!(B&1)?(x=0,ta(438,H|0),B=x,x=0,!(B&1)):0){Wca(H);f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=1065353216;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[L+12>>2]=0;f[L+16>>2]=1065353216;v=f[J>>2]|0;w=L+4|0;B=L+12|0;y=L+16|0;z=L+8|0;t=f[I>>2]|0;f:while(1){if((t|0)==(v|0)){C=52;break}e=f[t>>2]|0;g:do if(!(sB(M,e)|0)){x=0;e=ia(189,A|0,e|0)|0;s=x;x=0;if(s&1){C=58;break f}s=f[e+4>>2]|0;r=f[e>>2]|0;while(1){if((r|0)==(s|0))break g;e=f[r+4>>2]|0;f[E>>2]=e;if(!(xA(f[L>>2]|0,f[w>>2]|0,E)|0)){f[F>>2]=f[e>>2];x=0;va(164,d|0,f[t>>2]|0,r|0);q=x;x=0;if(q&1){C=100;break f}x=0;e=ia(132,M|0,F|0)|0;q=x;x=0;if(q&1){C=100;break f}f[e>>2]=(f[e>>2]|0)+1;l=f[t>>2]|0;f[G>>2]=l;f[H>>2]=l;q=JH(H,4)|0;k=f[w>>2]|0;p=(k|0)==0;h:do if(p){g=0;C=77}else{m=k+-1|0;o=(m&k|0)==0;do if(o)g=m&q;else{if(q>>>0>>0){g=q;break}g=(q>>>0)%(k>>>0)|0}while(0);e=f[(f[L>>2]|0)+(g<<2)>>2]|0;if(!e){C=77;break}do{e=f[e>>2]|0;if(!e){C=77;break h}j=f[e+4>>2]|0;if((j|0)!=(q|0)){do if(o)j=j&m;else{if(j>>>0>>0)break;j=(j>>>0)%(k>>>0)|0}while(0);if((j|0)!=(g|0)){C=77;break h}}}while((f[e+8>>2]|0)!=(l|0))}while(0);if((C|0)==77){C=0;x=0;wa(148,H|0,L|0,q|0,G|0);o=x;x=0;if(o&1){C=102;break f}h=+(((f[B>>2]|0)+1|0)>>>0);i=+n[y>>2];do if(p|i*+(k>>>0)>>0<3|(k+-1&k|0)!=0)&1;o=~~+W(+(h/i))>>>0;x=0;ua(2590,L|0,(p>>>0>>0?o:p)|0);p=x;x=0;if(p&1){C=84;break f}e=f[w>>2]|0;g=e+-1|0;if(!(g&e)){k=e;g=g&q;break}if(q>>>0>>0){k=e;g=q;break}k=e;g=(q>>>0)%(e>>>0)|0}while(0);e=f[(f[L>>2]|0)+(g<<2)>>2]|0;do if(!e){j=f[H>>2]|0;f[j>>2]=f[z>>2];f[z>>2]=j;f[(f[L>>2]|0)+(g<<2)>>2]=z;e=f[j>>2]|0;if(!e)break;e=f[e+4>>2]|0;g=k+-1|0;do if(!(g&k))e=e&g;else{if(e>>>0>>0)break;e=(e>>>0)%(k>>>0)|0}while(0);f[(f[L>>2]|0)+(e<<2)>>2]=j}else{q=f[H>>2]|0;f[q>>2]=f[e>>2];f[e>>2]=q}while(0);f[B>>2]=(f[B>>2]|0)+1}x=0;e=ia(132,M|0,F|0)|0;q=x;x=0;if(q&1){C=100;break f}e=f[e>>2]|0;x=0;g=ia(188,D|0,F|0)|0;q=x;x=0;if(q&1){C=100;break f}if(e>>>0>(f[g>>2]|0)>>>0){C=99;break f}}r=r+8|0}}while(0);t=t+4|0}do if((C|0)==52){e=L+8|0;while(1){e=f[e>>2]|0;if(!e)break;x=0;ta(487,f[(f[e+8>>2]|0)+36>>2]|0);H=x;x=0;if(H&1){C=113;break}}if((C|0)==113){e=Ia()|0;break}if(!((b[a+16>>0]|0)==0|(f[B>>2]|0)==0)?(x=0,va(165,L|0,d|0,c|0),H=x,x=0,H&1):0){e=Ia()|0;break}x=0;e=ka(34,f[I>>2]|0,f[J>>2]|0,a|0,M|0)|0;H=x;x=0;if(H&1){e=Ia()|0;break}else{sN(I,e,f[J>>2]|0);e=(f[M+12>>2]|0)!=0;SQa(L);SQa(M);break e}}else if((C|0)==58)e=Ia()|0;else if((C|0)==84){e=Ia()|0;g=f[H>>2]|0;f[H>>2]=0;if(g|0)Cbb(g);C=103}else if((C|0)==99){x=0;wa(71,109820,109873,327,109899);x=0;e=Ia()|0;C=101}else if((C|0)==100){e=Ia()|0;C=101}else if((C|0)==102){e=Ia()|0;C=103}while(0);if((C|0)==101)C=107;else if((C|0)==103)C=107;SQa(L);SQa(M);break d}e=Ia()|0;Wca(H);break d}while(0);nCa(N);u=K;return e|0}else if((C|0)==28){e=Ia()|0;g=f[M>>2]|0;f[M>>2]=0;if(g|0)Cbb(g);C=41}else if((C|0)==40){e=Ia()|0;C=41}while(0);nCa(N);Ua(e|0);return 0}function nd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;G=u;u=u+176|0;H=G+160|0;l=G+156|0;J=G+8|0;D=G+152|0;k=G;if((b[130816]|0)==0?VWa(130816)|0:0){E=XAa()|0;f[33180]=E}a:do if((b[a+40>>0]|0)==0?(b[a+20>>0]|0)!=0|(f[33180]|0)!=0:0){E=(b[a+22>>0]|0)==0?0:2;c=DCa(134176,79542)|0;dYa(H,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[H>>2]|0,134880)|0;C=x;x=0;if(!(C&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,C=x,x=0,!(C&1)):0){OCa(H);Wq(c,e)|0;fu(c)|0;g=a+8|0;h=f[g>>2]|0;i=a+12|0;j=f[i>>2]|0;C=0;e=h;while(1){if((e|0)==(j|0))break;c=f[e>>2]|0;d=b[c+4+11>>0]|0;if(d<<24>>24<0)c=f[c+8>>2]|0;else c=d&255;C=C>>>0>>0?c:C;e=e+4|0}if((f[33180]|0)>2){k1a(l,79573);Uh(f[l>>2]|0,f[a>>2]|0);B=a;h=f[g>>2]|0;j=f[i>>2]|0}else B=a;k=J+64|0;l=J+8|0;A=J+12|0;o=J+4|0;p=J+64|0;q=J+136|0;r=J+140|0;s=J+44|0;t=J+56|0;v=J+60|0;w=J+8|0;z=a+36|0;m=0.0;b:while(1){if((h|0)==(j|0)){d=20;break}i=f[h>>2]|0;f[l>>2]=39904;f[J>>2]=31588;f[k>>2]=31608;f[o>>2]=0;Laa(p,A);f[q>>2]=0;f[r>>2]=-1;f[J>>2]=39884;f[k>>2]=39924;f[l>>2]=39904;Xra(A);f[A>>2]=39940;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[s+(c<<2)>>2]=0;c=c+1|0}f[t>>2]=0;f[v>>2]=24;if((f[33180]|0)==2?(x=0,ia(127,f[B>>2]|0,w|0)|0,y=x,x=0,y&1):0){d=29;break}x=0;c=ia(62,134176,79649)|0;y=x;x=0;if(y&1){d=29;break}y=i+4|0;x=0;c=ia(84,c|0,y|0)|0;g=x;x=0;if(g&1){d=29;break}x=0;ia(62,c|0,79679)|0;g=x;x=0;if(g&1){d=29;break}e=y+11|0;g=i+8|0;d=0;while(1){c=b[e>>0]|0;if(c<<24>>24<0)c=f[g>>2]|0;else c=c&255;if(d>>>0>=(C-c|0)>>>0)break;x=0;ia(71,134176,32)|0;c=x;x=0;if(c&1){d=41;break b}d=d+1|0}e=jT()|0;g=I;x=0;c=ga(f[(f[i>>2]|0)+20>>2]|0,i|0)|0;d=x;x=0;if(d&1){d=45;break}c:do if(!c){x=0;ua(1280,a|0,i|0);i=x;x=0;if(i&1){d=45;break b}}else{c=f[B>>2]|0;d=f[c+40>>2]|0;c=f[c+36>>2]|0;while(1){if((c|0)==(d|0))break c;x=0;va(115,a|0,i|0,f[c>>2]|0);K=x;x=0;if(K&1){d=48;break b}c=c+4|0}}while(0);c=jT()|0;c=SRa(c|0,I|0,e|0,g|0)|0;n=(+(c>>>0)+4294967296.0*+(I|0))/1.0e9;x=0;c=ha(1,134176,+n)|0;K=x;x=0;if(K&1){d=69;break}x=0;d=ia(62,c|0,79606)|0;K=x;x=0;if(K&1){d=69;break}dYa(H,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;c=ia(73,f[H>>2]|0,134880)|0;K=x;x=0;if(K&1){d=54;break}x=0;c=ia(f[(f[c>>2]|0)+28>>2]|0,c|0,10)|0;K=x;x=0;if(K&1){d=54;break}OCa(H);x=0;ia(79,d|0,c|0)|0;K=x;x=0;if(K&1){d=69;break}x=0;ga(227,d|0)|0;K=x;x=0;if(K&1){d=69;break}m=m+n;x=0;ia(62,134176,79684)|0;K=x;x=0;if(K&1){d=69;break}x=0;c=ja(65,f[B>>2]|0,f[z>>2]|0,E|0)|0;K=x;x=0;if(K&1){d=72;break}if(!c){d=60;break}if((f[33180]|0)>2){x=0;ua(83,D|0,y|0);K=x;x=0;if(K&1){d=69;break}x=0;ua(1281,f[D>>2]|0,f[B>>2]|0);K=x;x=0;if(K&1){d=69;break}}sHa(J);h=h+4|0}d:do if((d|0)==20){c=DCa(Bm(DCa(134176,79580)|0,m)|0,79606)|0;dYa(H,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[H>>2]|0,134880)|0;K=x;x=0;if(!(K&1)?(x=0,F=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,K=x,x=0,!(K&1)):0){OCa(H);Wq(c,F)|0;fu(c)|0;DCa(134176,79616)|0;if(nk(f[B>>2]|0,f[z>>2]|0,E)|0){d=101;break a}BQa(f[B>>2]|0);DCa(134176,79902)|0;hb()}K=Ia()|0;OCa(H);Ua(K|0)}else if((d|0)==29)c=Ia()|0;else if((d|0)==41)c=Ia()|0;else if((d|0)==45)c=Ia()|0;else if((d|0)==48)c=Ia()|0;else if((d|0)==54){c=Ia()|0;OCa(H);d=71}else if((d|0)==60){x=0;ta(468,f[B>>2]|0);K=x;x=0;e:do if(!(K&1)){f:do if((f[33180]|0)<=1){x=0;c=ia(62,134176,79713)|0;K=x;x=0;if(K&1)break e;x=0;c=ia(84,c|0,y|0)|0;K=x;x=0;if(K&1)break e;x=0;ia(62,c|0,79774)|0;K=x;x=0;if(K&1)break e}else{x=0;c=ia(62,134176,79713)|0;K=x;x=0;if(K&1)break e;x=0;c=ia(84,c|0,y|0)|0;K=x;x=0;if(K&1)break e;x=0;c=ia(62,c|0,79725)|0;K=x;x=0;if(K&1)break e;x=0;ua(107,H|0,A|0);K=x;x=0;if(K&1)c=Ia()|0;else{x=0;c=ia(84,c|0,H|0)|0;K=x;x=0;do if(!(K&1)){x=0;ia(62,c|0,112641)|0;K=x;x=0;if(K&1)break;MTa(H);break f}while(0);c=Ia()|0;MTa(H)}break d}while(0);x=0;sa(5);x=0}while(0);c=Ia()|0;d=71}else if((d|0)==69){c=Ia()|0;d=71}else if((d|0)==72)c=Ia()|0;while(0);sHa(J);d=102;break}K=Ia()|0;OCa(H);Ua(K|0)}else d=86;while(0);g:do if((d|0)==86){f[H>>2]=0;g=H+4|0;f[g>>2]=0;h=H+8|0;f[h>>2]=0;f[J>>2]=H;f[J+4>>2]=a;i=f[a+12>>2]|0;e=f[a+8>>2]|0;h:while(1){if((e|0)==(i|0)){d=88;break}c=f[e>>2]|0;f[k>>2]=c;j=c;x=0;d=ga(f[(f[c>>2]|0)+20>>2]|0,c|0)|0;K=x;x=0;if(K&1){d=94;break}do if(d){c=f[g>>2]|0;if((c|0)==(f[h>>2]|0)){x=0;ua(1282,H|0,k|0);K=x;x=0;if(K&1){d=94;break h}else break}else{f[c>>2]=j;f[g>>2]=(f[g>>2]|0)+4;break}}else{x=0;ta(469,J|0);K=x;x=0;if(K&1){d=94;break h}x=0;ua(1280,a|0,c|0);K=x;x=0;if(K&1){d=94;break h}}while(0);e=e+4|0}do if((d|0)==88){x=0;ta(469,J|0);K=x;x=0;if(K&1){c=Ia()|0;break}else{zSa(H);d=101;break g}}else if((d|0)==94)c=Ia()|0;while(0);zSa(H);d=102}while(0);if((d|0)==101){u=G;return}else if((d|0)==102)Ua(c|0)}function od(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0;s=u;u=u+80|0;q=s+76|0;e=s+68|0;l=s+72|0;m=s+64|0;p=s+52|0;n=s+40|0;k=s+28|0;o=s+16|0;r=s+12|0;t=s;fAa(e);x=0;d=ia(69,c|0,1)|0;w=x;x=0;a:do if(!(w&1)?(x=0,g=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){L1a(q,g);f[f[e>>2]>>2]=f[q>>2];x=0;d=ia(69,c|0,2)|0;w=x;x=0;b:do if(!(w&1)){c:do if(C7a(b[d>>0]|0)|0){x=0;g=ia(69,c|0,2)|0;w=x;x=0;do if(!(w&1)){x=0;d=ia(69,g|0,1)|0;w=x;x=0;if(!(w&1)?(x=0,h=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){L1a(q,h);f[(f[e>>2]|0)+4>>2]=f[q>>2];x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if(g2a(d,f[33111]|0)|0){g=f[e>>2]|0;f[g+8>>2]=0;h=g;break c}x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if(g2a(d,f[33108]|0)|0){g=f[e>>2]|0;f[g+8>>2]=2;h=g;break c}x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if(g2a(d,f[33103]|0)|0){g=f[e>>2]|0;f[g+8>>2]=1;h=g;break c}x=0;d=ia(69,g|0,0)|0;w=x;x=0;if(w&1)break;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break;if(!(g2a(d,f[32999]|0)|0)){h=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;w=j7a(94017)|0;x=0;va(87,n|0,94017,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,h|0,n|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;MTa(n);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}i=f[e>>2]|0;f[i+8>>2]=3;d=f[a>>2]|0;g=f[i+4>>2]|0;f[l>>2]=g;f[q>>2]=f[l>>2];if(!(gna(d,q)|0)){h=i;g=i;break c}f[m>>2]=g;x=0;f[q>>2]=f[m>>2];d=ia(166,d|0,q|0)|0;w=x;x=0;if(w&1)break;if(!(b[d+12>>0]|0)){g=f[e>>2]|0;h=g;break c}h=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;w=j7a(93812)|0;x=0;va(87,p|0,93812,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,h|0,p|0,f[c+28>>2]|0,f[c+32>>2]|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;MTa(p);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}g=Ia()|0;break a}while(0);g=Ia()|0;break a}else{x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;if(!(qRa(d)|0)){x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if((((Jbb(b[d>>0]|0)|0)<<24>>24)+-48|0)>>>0>=10){x=0;d=ia(69,c|0,3)|0;w=x;x=0;if(!(w&1)?(x=0,i=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){L1a(q,i);f[(f[e>>2]|0)+4>>2]=f[q>>2];x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if(g2a(d,f[33108]|0)|0){if(b[(f[a>>2]|0)+112>>0]|0){g=f[e>>2]|0;f[g+8>>2]=2;h=g;break}h=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;w=j7a(94032)|0;x=0;va(87,k|0,94032,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,h|0,k|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;MTa(k);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if(g2a(d,f[33103]|0)|0){g=f[e>>2]|0;f[g+8>>2]=1;h=g;break}x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(w&1)break b;x=0;d=ga(295,d|0)|0;w=x;x=0;if(w&1)break b;if(g2a(d,f[32999]|0)|0){g=f[e>>2]|0;f[g+8>>2]=3;h=g;break}h=Ea(20)|0;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;w=j7a(94062)|0;x=0;va(87,o|0,94062,w|0);w=x;x=0;if(!(w&1)){x=0;ua(261,h|0,o|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;MTa(o);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}g=Ia()|0;break a}}x=0;d=ia(69,c|0,2)|0;w=x;x=0;if(!(w&1)?(x=0,j=ga(295,d|0)|0,w=x,x=0,!(w&1)):0){L1a(q,j);g=f[e>>2]|0;f[g+4>>2]=f[q>>2];f[g+8>>2]=0;h=g;break}g=Ia()|0;break a}while(0);d=f[a>>2]|0;f[r>>2]=f[h>>2];f[q>>2]=f[r>>2];if(!(hna(d,q)|0)){f[e>>2]=0;x=0;ua(70,d|0,g|0);w=x;x=0;if(w&1)break;d=f[e>>2]|0;f[e>>2]=0;if(d|0)Cbb(d);u=s;return}h=Ea(20)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;w=j7a(93689)|0;x=0;va(87,t|0,93689,w|0);w=x;x=0;if(!(w&1)){x=0;wa(138,h|0,t|0,f[c+28>>2]|0,f[c+32>>2]|0);w=x;x=0;if(w&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}d=Ia()|0;MTa(t);if(!g){g=d;break a}}else d=Ia()|0;La(h|0);g=d;break a}while(0);g=Ia()|0}else v=12;while(0);if((v|0)==12)g=Ia()|0;d=f[e>>2]|0;f[e>>2]=0;if(d|0)Cbb(d);Ua(g|0)}function pd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;t=w+24|0;r=w+8|0;k=w;o=a+4|0;n=f[o>>2]|0;p=n+-12|0;cz(d);h=f[d>>2]|0;g=b[h>>0]|0;a:do if(g<<24>>24!=0?!(Tpa(e,g)|0):0){l=n+-8|0;g=f[l>>2]|0;m=(g|0)==(f[p>>2]|0);do if(!(b[c>>0]|0))if((f[n+-4>>2]|0)==(g|0)){uF(p,c);break}else{n=c;c=f[n+4>>2]|0;p=g;f[p>>2]=f[n>>2];f[p+4>>2]=c;f[l>>2]=(f[l>>2]|0)+8;break}else{Dh(r,h);if((f[r+12>>2]|0)!=1){g=f[d>>2]|0;switch(b[g>>0]|0){case 40:{rTa(t,_w(a,NIa(c)|0,d)|0);j=t;i=f[j>>2]|0;j=f[j+4>>2]|0;s=c;f[s>>2]=i;f[s+4>>2]=j;break}case 91:{rTa(t,iD(a,NIa(c)|0,d)|0);j=t;i=f[j>>2]|0;j=f[j+4>>2]|0;s=c;f[s>>2]=i;f[s+4>>2]=j;break}default:{CX(66544,g);hb()}}s=k;f[s>>2]=i;f[s+4>>2]=j;f[t>>2]=f[k>>2];f[t+4>>2]=f[k+4>>2];s=pd(a,t,d,e)|0;break a}g=f[l>>2]|0;h=n+-4|0;if((g|0)==(f[h>>2]|0))uF(p,c);else{k=c;n=f[k+4>>2]|0;c=g;f[c>>2]=f[k>>2];f[c+4>>2]=n;f[l>>2]=(f[l>>2]|0)+8}f[d>>2]=(f[d>>2]|0)+(f[r+8>>2]|0);hSa(t,f[r>>2]|0);g=f[l>>2]|0;if(g>>>0<(f[h>>2]|0)>>>0){n=t;c=f[n+4>>2]|0;p=g;f[p>>2]=f[n>>2];f[p+4>>2]=c;f[l>>2]=(f[l>>2]|0)+8}else uF(p,t)}while(0);g=Rm(a,d,e)|0;if(m){e=f[o>>2]|0;d=e+-12|0;a=f[33197]|0;e=e+-8|0;n=f[33196]|0;b:while(1){if((n|0)==(a|0))break;c:do if(!(b[n+32>>0]|0)){m=n+36|0;g=0;while(1){h=f[d>>2]|0;if((g|0)>=((f[e>>2]|0)-h>>3|0))break c;h=h+(g<<3)|0;if(!(b[h>>0]|0)){j=pJa(h)|0;f[t>>2]=j;do if(qBa(n,t)|0){h=f[m>>2]|0;i=(g|0)>0;if(i&(h|0)==0){h=f[d>>2]|0;if((g|0)>=(((f[e>>2]|0)-h>>3)+-1|0))break;l=g+-1|0;i=NIa(h+(l<<3)|0)|0;rTa(r,Eha(i,j,NIa((f[d>>2]|0)+(g+1<<3)|0)|0)|0);i=r;j=f[i+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[i>>2];f[h+4>>2]=j;h=f[d>>2]|0;j=h+(g<<3)+8|0;i=j+8|0;k=(f[e>>2]|0)-i|0;if(k){kia(j|0,i|0,k|0)|0;h=f[d>>2]|0}i=j+(k>>3<<3)|0;f[e>>2]=i;g=h+(g<<3)+-8|0;h=g+8|0;i=i-h|0;if(i|0)kia(g|0,h|0,i|0)|0;f[e>>2]=g+(i>>3<<3);g=l;break}if((h|0)==1?(p=f[d>>2]|0,q=p,(g|0)<(((f[e>>2]|0)-p>>3)+-1|0)):0){if(i?b[q+(g+-1<<3)>>0]|0:0)break;rTa(r,HX(j,NIa(q+(g+1<<3)|0)|0)|0);j=r;i=f[j+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[j>>2];f[h+4>>2]=i;h=(f[d>>2]|0)+(g<<3)+8|0;i=h+8|0;j=(f[e>>2]|0)-i|0;if(j|0)kia(h|0,i|0,j|0)|0;f[e>>2]=h+(j>>3<<3);g=g+-2|0;g=(g|0)>0?g:0}}while(0)}g=g+1|0}}else{l=n+36|0;k=(f[e>>2]|0)-(f[d>>2]|0)>>3;while(1){g=k+-1|0;if((g|0)<=-1)break c;h=(f[d>>2]|0)+(g<<3)|0;if(!(b[h>>0]|0)){j=pJa(h)|0;f[t>>2]=j;d:do if(qBa(n,t)|0){h=f[l>>2]|0;i=(g|0)>0;if(i&(h|0)==0){h=f[d>>2]|0;if((g|0)>=(((f[e>>2]|0)-h>>3)+-1|0))break;i=NIa(h+(k+-2<<3)|0)|0;rTa(r,Eha(i,j,NIa((f[d>>2]|0)+(k<<3)|0)|0)|0);i=r;j=f[i+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[i>>2];f[h+4>>2]=j;h=f[d>>2]|0;j=h+(k<<3)|0;i=j+8|0;k=(f[e>>2]|0)-i|0;if(k){kia(j|0,i|0,k|0)|0;h=f[d>>2]|0}j=j+(k>>3<<3)|0;f[e>>2]=j;h=h+(g<<3)+-8|0;i=h+8|0;j=j-i|0;if(j|0)kia(h|0,i|0,j|0)|0;f[e>>2]=h+(j>>3<<3);break}switch(h|0){case 1:break;case 3:{if(f2a(j,f[33219]|0)|0)break d;h=f[d>>2]|0;if(!((g|0)>2?(g|0)<(((f[e>>2]|0)-h>>3)+-1|0):0)){v=51;break b}if(f2a(pJa(h+(k+-3<<3)|0)|0,f[33220]|0)|0)break d;p=k+-4|0;o=NIa((f[d>>2]|0)+(p<<3)|0)|0;rTa(r,b_(o,NIa((f[d>>2]|0)+(k+-2<<3)|0)|0,NIa((f[d>>2]|0)+(k<<3)|0)|0)|0);o=r;c=f[o+4>>2]|0;p=(f[d>>2]|0)+(p<<3)|0;f[p>>2]=f[o>>2];f[p+4>>2]=c;g=(f[d>>2]|0)+(g<<3)|0;cda(d,g+-16|0,g+16|0);g=(f[e>>2]|0)-(f[d>>2]|0)>>3;break d}default:break d}p=f[d>>2]|0;h=p;if((g|0)<(((f[e>>2]|0)-p>>3)+-1|0)){if(i?b[h+(k+-2<<3)>>0]|0:0)break;rTa(r,HX(j,NIa(h+(k<<3)|0)|0)|0);j=r;i=f[j+4>>2]|0;h=(f[d>>2]|0)+(g<<3)|0;f[h>>2]=f[j>>2];f[h+4>>2]=i;h=(f[d>>2]|0)+(k<<3)|0;i=h+8|0;j=(f[e>>2]|0)-i|0;if(j|0)kia(h|0,i|0,j|0)|0;f[e>>2]=h+(j>>3<<3)}}while(0)}k=g}}while(0);n=n+40|0}if((v|0)==51)Ca(66570,65740,803,66604);g=f[d>>2]|0;if(((f[e>>2]|0)-g|0)==8){s=NIa(g)|0;f[e>>2]=f[d>>2];break}else Ca(66620,65740,830,66604)}else s=g}else v=3;while(0);if((v|0)==3){g=n+-8|0;h=f[g>>2]|0;do if((h|0)!=(f[p>>2]|0))if((f[n+-4>>2]|0)==(h|0)){uF(p,c);break}else{s=c;t=f[s+4>>2]|0;v=h;f[v>>2]=f[s>>2];f[v+4>>2]=t;f[g>>2]=(f[g>>2]|0)+8;break}while(0);s=NIa(c)|0}u=w;return s|0}function qd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=u;u=u+96|0;v=A;w=A+80|0;y=A+72|0;E=A+56|0;C=A+44|0;D=A+32|0;B=A+12|0;z=A+8|0;r=kQa(b)|0;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;x=0;ua(471,E|0,r|0);t=x;x=0;if(t&1)b=Ia()|0;else{f[C>>2]=0;s=C+4|0;f[s>>2]=0;t=C+8|0;f[t>>2]=0;f[D>>2]=0;n=D+4|0;f[n>>2]=0;f[D+8>>2]=0;o=a+40|0;d=a+44|0;x=0;ua(472,D|0,(f[d>>2]|0)-(f[o>>2]|0)>>2|0);q=x;x=0;if(q&1)b=Ia()|0;else{f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;f[B+12>>2]=0;f[B+16>>2]=1065353216;c=0;while(1){b=f[o>>2]|0;if(c>>>0>=(f[d>>2]|0)-b>>2>>>0){h=5;break}e=f[D>>2]|0;f[v>>2]=f[b+(c<<2)>>2];x=0;b=ia(101,B|0,v|0)|0;q=x;x=0;if(q&1){h=10;break}f[b>>2]=e+(c*40|0);c=c+1|0}do if((h|0)==5){k=a+36|0;l=v+4|0;q=0;j=0;a:while(1){b=f[n>>2]|0;p=f[D>>2]|0;m=p;if(j>>>0>=((b-p|0)/40|0)>>>0){h=12;break}e=m+(j*40|0)|0;h=(f[o>>2]|0)+(j<<2)|0;b=f[h>>2]|0;i=(b|0)==(f[k>>2]|0)?e:q;f[e>>2]=-1;d9(m+(j*40|0)+4|0,b);b=f[h>>2]|0;e=b+44|0;c=m+(j*40|0)+16|0;b=b+48|0;x=0;ua(473,c|0,(f[b>>2]|0)-(f[e>>2]|0)>>2|0);q=x;x=0;if(q&1){h=23;break}g=f[b>>2]|0;d=f[c>>2]|0;b=f[e>>2]|0;while(1){if((b|0)==(g|0))break;x=0;c=ia(102,B|0,f[b>>2]|0)|0;q=x;x=0;if(q&1){h=22;break a}f[d>>2]=c;d=d+4|0;b=b+4|0}e=m+(j*40|0)+28|0;x=0;ua(474,e|0,f[(f[h>>2]|0)+24>>2]|0);q=x;x=0;if(q&1){h=23;break}g=m+(j*40|0)+32|0;d=m+(j*40|0)+36|0;b=(f[h>>2]|0)+20|0;while(1){b=f[b>>2]|0;if(!b)break;q=b+8|0;c=f[q+4>>2]|0;f[v>>2]=f[q>>2];f[l>>2]=c;c=f[g>>2]|0;if(c>>>0>=(f[d>>2]|0)>>>0){x=0;ua(475,e|0,v|0);q=x;x=0;if(q&1){h=29;break a}}else{m=v;p=f[m+4>>2]|0;q=c;f[q>>2]=f[m>>2];f[q+4>>2]=p;f[g>>2]=(f[g>>2]|0)+8}}q=i;j=j+1|0}if((h|0)==12){p=b;if(!q){x=0;wa(71,72404,72430,127,72454);x=0;b=Ia()|0;break}o=a+116|0;b=0;b:while(1){if((m|0)==(p|0)){h=33;break}k=m+4|0;c=(f[m+8>>2]|0)-(f[k>>2]|0)>>2;while(1){j=c+-1|0;if((c|0)<=0)break;c=f[(f[k>>2]|0)+(j<<2)>>2]|0;d=U_a(c)|0;f[w>>2]=d;h=d;do if(d){c=f[d+8>>2]|0;d=f[E>>2]|0;e=d+(c*12|0)+4|0;g=f[e>>2]|0;if((g|0)==(f[d+(c*12|0)+8>>2]|0)){x=0;ua(476,d+(c*12|0)|0,w|0);a=x;x=0;if(a&1){h=41;break b}else break}else{f[g>>2]=h;f[e>>2]=(f[e>>2]|0)+4;break}}else{x=0;d=ga(257,c|0)|0;a=x;x=0;if(a&1){h=46;break b}f[y>>2]=d;g=f[d+8>>2]|0;h=f[E>>2]|0;e=h+(g*12|0)|0;g=h+(g*12|0)+4|0;h=f[g>>2]|0;c=f[e>>2]|0;while(1){if((c|0)==(h|0))break;f[z>>2]=f[c>>2];x=0;i=ia(103,f[o>>2]|0,z|0)|0;a=x;x=0;if(a&1){h=50;break b}x=0;wa(85,v|0,i|0,d|0,y|0);a=x;x=0;if(a&1){h=50;break b}c=c+4|0}f[g>>2]=f[e>>2]}while(0);c=j}n=m;l=0;while(1){if(l>>>0>=r>>>0)break;k=f[E>>2]|0;j=k+(l*12|0)|0;k=k+(l*12|0)+4|0;if((f[j>>2]|0)!=(f[k>>2]|0)){f[v>>2]=m;c=f[s>>2]|0;if(c>>>0>=(f[t>>2]|0)>>>0){x=0;ua(477,C|0,v|0);a=x;x=0;if(a&1){h=68;break b}}else{f[c>>2]=n;f[s>>2]=(f[s>>2]|0)+4}while(1){c=f[s>>2]|0;if((f[C>>2]|0)==(c|0))break;d=c+-4|0;c=f[d>>2]|0;f[s>>2]=d;d=f[c+16>>2]|0;i=f[c+20>>2]|0;c:do if((d|0)==(i|0)){if((c|0)==(q|0)){d=f[k>>2]|0;c=f[j>>2]|0;while(1){if((c|0)==(d|0))break c;f[v>>2]=f[c>>2];x=0;e=ia(103,f[o>>2]|0,v|0)|0;a=x;x=0;if(a&1){h=72;break b}f[y>>2]=0;x=0;wa(86,w|0,e|0,0,y|0);a=x;x=0;if(a&1){h=73;break b}c=c+4|0}}}else while(1){if((d|0)==(i|0))break c;e=f[d>>2]|0;f[v>>2]=e;d:do if((f[e>>2]|0)!=(b|0)){f[e>>2]=b;g=f[e+32>>2]|0;c=f[e+28>>2]|0;while(1){if((c|0)==(g|0)){h=79;break}if(nTa(l,f[c>>2]|0)|0){h=82;break}c=c+8|0}do if((h|0)!=79)if((h|0)==82){if((c|0)==(g|0))break;h=f[k>>2]|0;e=c+4|0;c=f[j>>2]|0;while(1){if((c|0)==(h|0))break d;f[w>>2]=f[c>>2];x=0;g=ia(103,f[o>>2]|0,w|0)|0;a=x;x=0;if(a&1){h=89;break b}x=0;wa(85,y|0,g|0,f[e>>2]|0,e|0);a=x;x=0;if(a&1){h=89;break b}c=c+4|0}}while(0);c=f[s>>2]|0;if((c|0)==(f[t>>2]|0)){x=0;ua(478,C|0,v|0);a=x;x=0;if(a&1){h=85;break b}else break}else{f[c>>2]=e;f[s>>2]=(f[s>>2]|0)+4;break}}while(0);d=d+4|0}while(0)}f[k>>2]=f[j>>2];b=b+1|0}l=l+1|0}m=m+40|0}if((h|0)==33){SQa(B);E3(D);zSa(C);R9(E);u=A;return}else if((h|0)==41)b=Ia()|0;else if((h|0)==46){b=Ia()|0;h=51}else if((h|0)==50){b=Ia()|0;h=51}else if((h|0)==68){b=Ia()|0;break}else if((h|0)==72){b=Ia()|0;h=74}else if((h|0)==73){b=Ia()|0;h=74}else if((h|0)==85){b=Ia()|0;h=94}else if((h|0)==89){b=Ia()|0;h=94}if((h|0)!=51)if((h|0)==74)break;else if((h|0)==94)break;break}else if((h|0)==22)b=Ia()|0;else if((h|0)==23)b=Ia()|0;else if((h|0)==29){b=Ia()|0;break}}else if((h|0)==10)b=Ia()|0;while(0);SQa(B)}E3(D);zSa(C)}R9(E);Ua(b|0)}function rd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;g=f[c>>2]|0;f[d>>2]=g;e=f[g>>2]|0;a:do if(!(b[a+104>>0]|0))do switch(e|0){case 23:break a;case 1:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);gXa(f[d>>2]|0)|0;PW(c,f[d>>2]|0,g,0);break a}case 2:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 3:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 4:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 5:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 6:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 7:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 8:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 9:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);gXa(f[d>>2]|0)|0;PW(c,f[d>>2]|0,g,0);break a}case 10:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 11:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 12:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 13:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 14:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 15:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 16:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 17:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 18:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 19:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 20:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 21:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 22:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);gXa(f[d>>2]|0)|0;PW(c,f[d>>2]|0,g,0);break a}case 25:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 24:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 26:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}case 27:{c=a+44|0;g=i_(a+92|0,d)|0;g=f[g>>2]|0;Roa(c,f[d>>2]|0);j2a(f[d>>2]|0);PW(c,f[d>>2]|0,g,0);break a}default:hb()}while(0);else{if(!(Dab(e)|0)){Ud(a,c);break}a=a+16|0;tS(a,2862,c);e=(vSa(g)|0)+16|0;if(f[e>>2]|0){tS(a,2861,(vSa(g)|0)+16|0);tS(a,2863,c)}tS(a,2861,(vSa(g)|0)+12|0);tS(a,2864,c);tS(a,2861,(vSa(g)|0)+8|0)}while(0);u=h;return}function sd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0;y=u;u=u+112|0;s=y;k=y+96|0;i=y+88|0;j=y+72|0;g=y+68|0;o=y+92|0;q=y+76|0;m=y+64|0;p=y+52|0;n=y+40|0;t=y+36|0;z=y+24|0;v=y+20|0;w=y+16|0;e=f[a>>2]|0;h=e+112|0;do if(!(b[h>>0]|0)){b[h>>0]=1;b[e+113>>0]=d&1;b[e+114>>0]=0;if(qRa(Or(c,1)|0)|0){L1a(s,lF(Or(c,1)|0)|0);f[(f[a>>2]|0)+88>>2]=f[s>>2];e=2}else e=1;Bab(i);Bab(j);k=Or(c,e)|0;a:do if(C7a(b[k>>0]|0)|0){h=Or(c,e)|0;k=lF(Or(h,0)|0)|0;b:do if(g2a(k,f[33105]|0)|0){fAa(g);x=0;h=ia(69,h|0,1)|0;p=x;x=0;do if(!(p&1)?(x=0,l=ga(295,h|0)|0,p=x,x=0,!(p&1)):0){L1a(s,l);h=f[g>>2]|0;p=f[s>>2]|0;f[h>>2]=p;f[h+4>>2]=f[(f[a>>2]|0)+88>>2];f[h+8>>2]=2;d=f[a>>2]|0;f[o>>2]=p;f[s>>2]=f[o>>2];if(!(hna(d,s)|0)){f[g>>2]=0;x=0;ua(70,d|0,h|0);q=x;x=0;if(q&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;break b}}i=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;z=j7a(93689)|0;x=0;va(87,q|0,93689,z|0);z=x;x=0;if(!(z&1)){x=0;wa(138,i|0,q|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)d=1;else{x=0;va(98,i|0,32200,457);x=0;d=0}e=Ia()|0;MTa(q);if(!d){r=25;break}}else e=Ia()|0;La(i|0);r=25}else r=18;while(0);if((r|0)==18){e=Ia()|0;h=f[g>>2]|0;r=25}if((r|0)==25){f[g>>2]=0;if(h)Cbb(h)}r=78;break a}else{q=lF(Or(h,0)|0)|0;if(!(g2a(q,f[33104]|0)|0)){r=lF(Or(h,0)|0)|0;kNa(s,94138,1);if(g2a(r,f[s>>2]|0)|0){b[(f[a>>2]|0)+114>>0]=1;mw(a,h,1)|0;break}if(bYa(h)|0?(z=lF(Or(h,0)|0)|0,!(f2a(z,f[33104]|0)|0)):0){h=Ea(20)|0;f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;c=j7a(94145)|0;x=0;va(87,n|0,94145,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,n|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(n);if(!g){r=78;break a}}else e=Ia()|0;La(h|0);r=78;break a}wn(a,Or(c,e)|0,1,0);c=f[a>>2]|0;r=f[c+100>>2]|0;wHa(c+92|0,(f[r+8>>2]|0)-(f[r+4>>2]|0)|0,0)|0;r=77;break a}L1a(s,lF(Or(h,1)|0)|0);q=f[s>>2]|0;f[i>>2]=q;L1a(s,lF(Or(h,2)|0)|0);h=f[s>>2]|0;f[j>>2]=h;pOa(g);i=f[g>>2]|0;f[i+12>>2]=2;f[i+4>>2]=q;f[i+8>>2]=h;f[i>>2]=q;h=f[a>>2]|0;f[m>>2]=q;f[s>>2]=f[m>>2];do if(!(fna(h,s)|0)){f[g>>2]=0;x=0;ua(64,h|0,i|0);r=x;x=0;if(r&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;break b}}else{d=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;z=j7a(93731)|0;x=0;va(87,p|0,93731,z|0);z=x;x=0;if(!(z&1)){x=0;wa(138,d|0,p|0,f[c+28>>2]|0,f[c+32>>2]|0);c=x;x=0;if(c&1)h=1;else{x=0;va(98,d|0,32200,457);x=0;h=0}e=Ia()|0;MTa(p);if(h)r=36}else{e=Ia()|0;r=36}if((r|0)==36)La(d|0);f[g>>2]=0;if(i)Cbb(i)}while(0);r=78;break a}while(0);e=e+1|0;r=54}else r=54;while(0);c:do if((r|0)==54){if(!(b[(f[a>>2]|0)+114>>0]|0))e=mw(a,c,e)|0;m=a+4|0;n=z+4|0;o=z+8|0;while(1){if(e>>>0>=(bYa(c)|0)>>>0){r=77;break c}h=Or(c,e)|0;Sab(g);r=lF(Or(h,0)|0)|0;if(g2a(r,f[33107]|0)|0){wHa(g,0,0)|0;h=Or(h,1)|0}else{r=uB(Or(h,1)|0,94163)|0;f[g>>2]=r;h=Or(h,2)|0}h=lF(h)|0;l=cWa(f[m>>2]|0)|0;f[t>>2]=l;f[l+4>>2]=1;t$a(s,Jbb(f[g>>2]|0)|0);d=l+8|0;f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];d=dV(h)|0;if(!d){h=f[a>>2]|0;f[z>>2]=0;d=h+104|0;i=f[d>>2]|0;if(i>>>0<(f[h+108>>2]|0)>>>0){hLa(s,0,0);XZ(i,l,135337,f[s>>2]|0);f[d>>2]=(f[d>>2]|0)+16}else xy(h+100|0,t,z)}else{f[z>>2]=0;f[n>>2]=0;f[o>>2]=0;x=0;va(141,h|0,d|0,z|0);r=x;x=0;if(r&1){r=69;break}h=f[a>>2]|0;d=f[z>>2]|0;f[v>>2]=d;i=(f[n>>2]|0)-d|0;f[w>>2]=i;j=h+104|0;k=f[j>>2]|0;if(k>>>0>=(f[h+108>>2]|0)>>>0){x=0;wa(140,h+100|0,t|0,v|0,w|0);r=x;x=0;if(r&1){r=70;break}}else{x=0;va(85,s|0,i|0,0);r=x;x=0;if(r&1){r=70;break}x=0;wa(139,k|0,l|0,d|0,f[s>>2]|0);r=x;x=0;if(r&1){r=70;break}f[j>>2]=(f[j>>2]|0)+16}zSa(z)}e=e+1|0}if((r|0)==69)e=Ia()|0;else if((r|0)==70)e=Ia()|0;zSa(z);r=78}while(0);if((r|0)==77){u=y;return}else if((r|0)==78)break}else{h=Ea(20)|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;c=j7a(94120)|0;x=0;va(87,k|0,94120,c|0);c=x;x=0;if(!(c&1)){x=0;ua(261,h|0,k|0);c=x;x=0;if(c&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(k);if(!g)break}else e=Ia()|0;La(h|0)}while(0);Ua(e|0)}function td(a,c,d,e,g,i){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,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=u;u=u+560|0;l=G+32|0;v=G+536|0;F=G;E=F;m=G+540|0;f[v>>2]=0;D=m+12|0;vRa(c)|0;j=I;if((j|0)<0){c=-c;vRa(c)|0;C=1;B=118746;j=I}else{C=(g&2049|0)!=0&1;B=(g&2048|0)==0?((g&1|0)==0?118747:118752):118749}do if(0==0&(j&2146435072|0)==2146435072){F=(i&32|0)!=0;j=C+3|0;x0(a,32,d,j,g&-65537);RWa(a,B,C);RWa(a,c!=c|0.0!=0.0?(F?118773:118777):F?118765:118769,3);x0(a,32,d,j,g^8192)}else{q=+Xab(c,v)*2.0;j=q!=0.0;if(j)f[v>>2]=(f[v>>2]|0)+-1;t=i|32;if((t|0)==97){o=i&32;r=(o|0)==0?B:B+9|0;p=C|2;j=12-e|0;do if(!(e>>>0>11|(j|0)==0)){c=8.0;do{j=j+-1|0;c=c*16.0}while((j|0)!=0);if((b[r>>0]|0)==45){c=-(c+(-q-c));break}else{c=q+c-c;break}}else c=q;while(0);k=f[v>>2]|0;j=(k|0)<0?0-k|0:k;j=nR(j,((j|0)<0)<<31>>31,D)|0;if((j|0)==(D|0)){j=m+11|0;b[j>>0]=48}b[j+-1>>0]=(k>>31&2)+43;n=j+-2|0;b[n>>0]=i+15;k=(e|0)<1;l=(g&8|0)==0;m=F;do{C=~~c;j=m+1|0;b[m>>0]=o|h[28784+C>>0];c=(c-+(C|0))*16.0;if((j-E|0)==1?!(l&(k&c==0.0)):0){b[j>>0]=46;m=m+2|0}else m=j}while(c!=0.0);if((e|0)!=0?(-2-E+m|0)<(e|0):0){k=D;l=n;j=e+2+k-l|0}else{k=D;l=n;j=k-E-l+m|0}D=j+p|0;x0(a,32,d,D,g);RWa(a,r,p);x0(a,48,d,D,g^65536);E=m-E|0;RWa(a,F,E);F=k-l|0;x0(a,48,j-(E+F)|0,0,0);RWa(a,n,F);x0(a,32,d,D,g^8192);j=D;break}k=(e|0)<0?6:e;if(j){j=(f[v>>2]|0)+-28|0;f[v>>2]=j;c=q*268435456.0}else{c=q;j=f[v>>2]|0}A=(j|0)<0?l:l+288|0;l=A;do{y=~~c>>>0;f[l>>2]=y;l=l+4|0;c=(c-+(y>>>0))*1.0e9}while(c!=0.0);y=A;if((j|0)>0){o=A;while(1){n=(j|0)<29?j:29;j=l+-4|0;if(j>>>0>=o>>>0){m=0;do{s=mMa(f[j>>2]|0,0,n|0)|0;s=BOa(s|0,I|0,m|0,0)|0;w=I;m=yYa(s|0,w|0,1e9,0)|0;x=GBa(m|0,I|0,-1e9,-1)|0;x=BOa(s|0,w|0,x|0,I|0)|0;f[j>>2]=x;j=j+-4|0}while(j>>>0>=o>>>0);if(m){x=o+-4|0;f[x>>2]=m;m=x}else m=o}else m=o;a:do if(l>>>0>m>>>0){j=l;while(1){l=j+-4|0;if(f[l>>2]|0){l=j;break a}if(l>>>0>m>>>0)j=l;else break}}while(0);j=(f[v>>2]|0)-n|0;f[v>>2]=j;if((j|0)>0)o=m;else break}}else m=A;if((j|0)<0){e=((k+25|0)/9|0)+1|0;s=(t|0)==102;do{r=0-j|0;r=(r|0)<9?r:9;if(m>>>0>>0){n=(1<>>r;p=0;j=m;do{x=f[j>>2]|0;f[j>>2]=(x>>>r)+p;p=X(x&n,o)|0;j=j+4|0}while(j>>>0>>0);m=(f[m>>2]|0)==0?m+4|0:m;if(p){f[l>>2]=p;l=l+4|0}}else m=(f[m>>2]|0)==0?m+4|0:m;j=s?A:m;l=(l-j>>2|0)>(e|0)?j+(e<<2)|0:l;j=(f[v>>2]|0)+r|0;f[v>>2]=j}while((j|0)<0);s=m}else s=m;if(s>>>0>>0){j=(y-s>>2)*9|0;n=f[s>>2]|0;if(n>>>0>=10){m=10;do{m=m*10|0;j=j+1|0}while(n>>>0>=m>>>0)}}else j=0;v=(t|0)==103;w=(k|0)!=0;m=k-((t|0)==102?0:j)+((w&v)<<31>>31)|0;if((m|0)<(((l-y>>2)*9|0)+-9|0)){x=m+9216|0;m=(x|0)/9|0;e=A+4+(m+-1024<<2)|0;m=x+(X(m,-9)|0)|0;if((m|0)<8){n=10;while(1){n=n*10|0;if((m|0)<7)m=m+1|0;else break}}else n=10;o=f[e>>2]|0;m=(o>>>0)/(n>>>0)|0;r=X(m,n)|0;o=o-r|0;p=(e+4|0)==(l|0);if(!(p&(o|0)==0)){c=(m&1|0)==0?9007199254740992.0:9007199254740994.0;x=n>>>1;q=o>>>0>>0?.5:p&(o|0)==(x|0)?1.0:1.5;if(C){x=(b[B>>0]|0)==45;q=x?-q:q;c=x?-c:c}f[e>>2]=r;if(c+q!=c){x=r+n|0;f[e>>2]=x;if(x>>>0>999999999){n=e;j=s;while(1){m=n+-4|0;f[n>>2]=0;if(m>>>0>>0){j=j+-4|0;f[j>>2]=0}x=(f[m>>2]|0)+1|0;f[m>>2]=x;if(x>>>0>999999999)n=m;else{n=j;break}}}else{m=e;n=s}j=(y-n>>2)*9|0;p=f[n>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else{m=e;n=s}}else{m=e;n=s}x=m+4|0;l=l>>>0>x>>>0?x:l}else n=s;e=0-j|0;b:do if(l>>>0>n>>>0)while(1){m=l+-4|0;if(f[m>>2]|0){x=l;t=1;break b}if(m>>>0>n>>>0)l=m;else{x=m;t=0;break}}else{x=l;t=0}while(0);do if(v){k=k+((w^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){o=i+-1|0;k=k+-1-j|0}else{o=i+-2|0;k=k+-1|0}if(!(g&8)){if(t?(z=f[x+-4>>2]|0,(z|0)!=0):0)if(!((z>>>0)%10|0)){m=0;l=10;do{l=l*10|0;m=m+1|0}while(!((z>>>0)%(l>>>0)|0|0))}else m=0;else m=9;l=((x-y>>2)*9|0)+-9|0;if((o|32|0)==102){i=l-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=l+j-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else o=i;while(0);s=(k|0)!=0;p=s?1:g>>>3&1;r=(o|32|0)==102;if(r){w=0;j=(j|0)>0?j:0}else{l=(j|0)<0?e:j;l=nR(l,((l|0)<0)<<31>>31,D)|0;m=D;if((m-l|0)<2)do{l=l+-1|0;b[l>>0]=48}while((m-l|0)<2);b[l+-1>>0]=(j>>31&2)+43;j=l+-2|0;b[j>>0]=o;w=j;j=m-j|0}j=C+1+k+p+j|0;x0(a,32,d,j,g);RWa(a,B,C);x0(a,48,d,j,g^65536);if(r){p=n>>>0>A>>>0?A:n;r=F+9|0;n=r;o=F+8|0;m=p;do{l=nR(f[m>>2]|0,0,r)|0;if((m|0)==(p|0)){if((l|0)==(r|0)){b[o>>0]=48;l=o}}else if(l>>>0>F>>>0){iH(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}RWa(a,l,n-l|0);m=m+4|0}while(m>>>0<=A>>>0);if(!((g&8|0)==0&(s^1)))RWa(a,123563,1);if(m>>>0>>0&(k|0)>0)while(1){l=nR(f[m>>2]|0,0,r)|0;if(l>>>0>F>>>0){iH(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}RWa(a,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0>>0&(k|0)>9)){k=l;break}else k=l}x0(a,48,k+9|0,9,0)}else{v=t?x:n+4|0;if(n>>>0>>0&(k|0)>-1){e=F+9|0;s=(g&8|0)==0;t=e;p=0-E|0;r=F+8|0;o=n;do{l=nR(f[o>>2]|0,0,e)|0;if((l|0)==(e|0)){b[r>>0]=48;l=r}do if((o|0)==(n|0)){m=l+1|0;RWa(a,l,1);if(s&(k|0)<1){l=m;break}RWa(a,123563,1);l=m}else{if(l>>>0<=F>>>0)break;iH(F|0,48,l+p|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}while(0);E=t-l|0;RWa(a,l,(k|0)>(E|0)?E:k);k=k-E|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}x0(a,48,k+18|0,18,0);RWa(a,w,D-w|0)}x0(a,32,d,j,g^8192)}while(0);u=G;return ((j|0)<(d|0)?d:j)|0}function ud(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0;t=u;u=u+96|0;r=t+80|0;i=t+68|0;j=t+64|0;l=t+60|0;g=t+56|0;n=t+52|0;q=t+40|0;p=t+28|0;o=t+24|0;s=t+12|0;m=t;e=f[a>>2]|0;h=e+60|0;a:do if(!(b[h>>0]|0)){b[h>>0]=1;b[e+61>>0]=d&1;if((bYa(c)|0)!=1){if(qRa(Or(c,1)|0)|0){L1a(r,lF(Or(c,1)|0)|0);f[(f[a>>2]|0)+64>>2]=f[r>>2];e=2}else e=1;if((e|0)!=(bYa(c)|0)){Bab(j);Bab(l);i=Or(c,e)|0;do if(C7a(b[i>>0]|0)|0){h=Or(c,e)|0;i=lF(Or(h,0)|0)|0;b:do if(g2a(i,f[33105]|0)|0){fAa(g);x=0;h=ia(69,h|0,1)|0;s=x;x=0;do if(!(s&1)?(x=0,k=ga(295,h|0)|0,s=x,x=0,!(s&1)):0){L1a(r,k);h=f[g>>2]|0;s=f[r>>2]|0;f[h>>2]=s;f[h+4>>2]=f[(f[a>>2]|0)+64>>2];f[h+8>>2]=1;i=f[a>>2]|0;f[n>>2]=s;f[r>>2]=f[n>>2];if(!(hna(i,r)|0)){f[g>>2]=0;x=0;ua(70,i|0,h|0);s=x;x=0;if(s&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;v=57;break b}}j=Ea(20)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;v=j7a(93689)|0;x=0;va(87,q|0,93689,v|0);v=x;x=0;if(!(v&1)){x=0;wa(138,j|0,q|0,f[c+28>>2]|0,f[c+32>>2]|0);v=x;x=0;if(v&1)i=1;else{x=0;va(98,j|0,32200,457);x=0;i=0}e=Ia()|0;MTa(q);if(!i){v=27;break}}else e=Ia()|0;La(j|0);v=27}else v=20;while(0);if((v|0)==20){e=Ia()|0;h=f[g>>2]|0;v=27}if((v|0)==27){f[g>>2]=0;if(h)Cbb(h)}v=58}else{q=lF(Or(h,0)|0)|0;if(!(g2a(q,f[33104]|0)|0)){h=Ea(20)|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;v=j7a(93748)|0;x=0;va(87,m|0,93748,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,h|0,m|0);v=x;x=0;if(v&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(m);if(!g){v=58;break}}else e=Ia()|0;La(h|0);v=58;break}L1a(r,lF(Or(h,1)|0)|0);i=f[r>>2]|0;f[j>>2]=i;L1a(r,lF(Or(h,2)|0)|0);h=f[r>>2]|0;f[l>>2]=h;if(!d){h=Ea(20)|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;v=j7a(93706)|0;x=0;va(87,p|0,93706,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,h|0,p|0);v=x;x=0;if(v&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(p);if(!g){v=58;break}}else e=Ia()|0;La(h|0);v=58;break}pOa(g);j=f[g>>2]|0;f[j+12>>2]=1;f[j+4>>2]=i;f[j+8>>2]=h;f[j>>2]=i;h=f[a>>2]|0;f[o>>2]=i;f[r>>2]=f[o>>2];do if(!(fna(h,r)|0)){f[g>>2]=0;x=0;ua(64,h|0,j|0);v=x;x=0;if(v&1){e=Ia()|0;f[g>>2]=0;break}else{f[g>>2]=0;v=57;break b}}else{i=Ea(20)|0;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;t=j7a(93731)|0;x=0;va(87,s|0,93731,t|0);t=x;x=0;if(!(t&1)){x=0;wa(138,i|0,s|0,f[c+28>>2]|0,f[c+32>>2]|0);t=x;x=0;if(t&1)h=1;else{x=0;va(98,i|0,32200,457);x=0;h=0}e=Ia()|0;MTa(s);if(h)v=45}else{e=Ia()|0;v=45}if((v|0)==45)La(i|0);f[g>>2]=0;if(j)Cbb(j)}while(0);v=58}while(0);if((v|0)==57){e=e+1|0;break}else if((v|0)==58)break a}while(0);do if((e|0)!=(bYa(c)|0)){if(!(qRa(Or(c,e)|0)|0)){v=lF(Or(c,e)|0)|0;if(g2a(v,f[33086]|0)|0){ul(a,Or(c,e+1|0)|0,1,0);e=f[a>>2]|0;v=f[e+76>>2]|0;g=v;if((f[e+80>>2]|0)==(v|0)){v=e+72|0;wHa(v,0,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}else{v=e+72|0;wHa(v,(f[g+8>>2]|0)-(f[g+4>>2]|0)>>2,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}}v=lF(Or(c,(bYa(c)|0)+-1|0)|0)|0;if(g2a(v,f[33086]|0)|0){if(e>>>0<((bYa(c)|0)+-1|0)>>>0){v=AR(lF(Or(c,e)|0)|0)|0;wHa((f[a>>2]|0)+68|0,v,((v|0)<0)<<31>>31)|0;e=e+1|0}if(e>>>0>=((bYa(c)|0)+-1|0)>>>0)break;v=AR(lF(Or(c,e)|0)|0)|0;wHa((f[a>>2]|0)+72|0,v,((v|0)<0)<<31>>31)|0;break}}ul(a,c,e,0);e=f[a>>2]|0;v=f[e+76>>2]|0;g=v;if((f[e+80>>2]|0)==(v|0)){v=e+72|0;wHa(v,0,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}else{v=e+72|0;wHa(v,(f[g+8>>2]|0)-(f[g+4>>2]|0)>>2,0)|0;f[(f[a>>2]|0)+68>>2]=f[v>>2];break}}while(0)}}u=t;return}else{h=Ea(20)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;v=j7a(93669)|0;x=0;va(87,i|0,93669,v|0);v=x;x=0;if(!(v&1)){x=0;ua(261,h|0,i|0);v=x;x=0;if(v&1)g=1;else{x=0;va(98,h|0,32200,457);x=0;g=0}e=Ia()|0;MTa(i);if(!g)break}else e=Ia()|0;La(h|0)}while(0);Ua(e|0)}function vd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0.0,k=0.0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0;z=u;u=u+48|0;y=z+32|0;o=z+20|0;w=z+16|0;t=z;v=z+8|0;f[w>>2]=b;f[t>>2]=c;q=lE(a,c)|0;a:do if(!q){v7(v);q=f[v>>2]|0;b=f[w>>2]|0;p=q+4|0;h=f[p>>2]|0;m=(h|0)==0;s=q;b:do if(!m){i=h+-1|0;l=(i&h|0)==0;if(!l)if(b>>>0>>0)e=b;else e=(b>>>0)%(h>>>0)|0;else e=i&b;d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d)r=53;else while(1){d=f[d>>2]|0;if(!d){r=53;break b}g=f[d+4>>2]|0;if((g|0)!=(b|0)){if(!l){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(e|0)){r=53;break b}}if((f[d+8>>2]|0)==(b|0)){m=c;r=72;break}}}else{e=0;r=53}while(0);c:do if((r|0)==53){x=0;wa(96,o|0,q|0,b|0,w|0);c=x;x=0;if(c&1)r=113;else{i=q+12|0;j=+(((f[i>>2]|0)+1|0)>>>0);k=+n[q+16>>2];do if(m|k*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;c=~~+W(+(j/k))>>>0;x=0;ua(803,q|0,(m>>>0>>0?c:m)|0);m=x;x=0;if(m&1){d=Ia()|0;e=f[o>>2]|0;f[o>>2]=0;if(e|0)Cbb(e);break c}d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&b;break}if(b>>>0>>0){h=d;e=b}else{h=d;e=(b>>>0)%(d>>>0)|0}}while(0);d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d){d=q+8|0;g=f[o>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[q>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=o;else{d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[q>>2]|0)+(d<<2)>>2]=g;d=o}}else{r=f[o>>2]|0;f[r>>2]=f[d>>2];f[d>>2]=r;d=o}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0;h=f[p>>2]|0;m=f[t>>2]|0;r=72}}while(0);d:do if((r|0)==72){c=(h|0)==0;e:do if(!c){i=h+-1|0;l=(i&h|0)==0;if(!l)if(m>>>0>>0)e=m;else e=(m>>>0)%(h>>>0)|0;else e=i&m;d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d)r=87;else do{d=f[d>>2]|0;if(!d){r=87;break e}g=f[d+4>>2]|0;if((g|0)!=(m|0)){if(!l){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(e|0)){r=87;break e}}}while((f[d+8>>2]|0)!=(m|0))}else{e=0;r=87}while(0);if((r|0)==87){x=0;wa(96,y|0,q|0,m|0,t|0);o=x;x=0;if(o&1){r=113;break}i=q+12|0;j=+(((f[i>>2]|0)+1|0)>>>0);k=+n[q+16>>2];do if(c|k*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;b=~~+W(+(j/k))>>>0;x=0;ua(803,q|0,(o>>>0>>0?b:o)|0);o=x;x=0;if(o&1){d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0)Cbb(e);break d}d=f[p>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&m;break}if(m>>>0>>0){h=d;e=m}else{h=d;e=(m>>>0)%(d>>>0)|0}}while(0);d=f[(f[q>>2]|0)+(e<<2)>>2]|0;if(!d){d=q+8|0;g=f[y>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[q>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=y;else{d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[q>>2]|0)+(d<<2)>>2]=g;d=y}}else{r=f[y>>2]|0;f[r>>2]=f[d>>2];f[d>>2]=r;d=y}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}x=0;e=ia(122,a|0,w|0)|0;y=x;x=0;if(!(y&1)){i=f[v+4>>2]|0;d=i;h=(i|0)==0;if(h)g=0;else{g=i+4|0;f[g>>2]=(f[g>>2]|0)+1;g=d}f[e>>2]=s;y=e+4|0;e=f[y>>2]|0;f[y>>2]=g;Aoa(e);x=0;e=ia(122,a|0,t|0)|0;a=x;x=0;if(!(a&1)){if(h)d=0;else{a=i+4|0;f[a>>2]=(f[a>>2]|0)+1}f[e>>2]=s;y=e+4|0;a=f[y>>2]|0;f[y>>2]=d;Aoa(a);Aoa(i);break a}else r=113}else r=113}while(0);if((r|0)==113)d=Ia()|0;Aoa(f[v+4>>2]|0);Ua(d|0)}else{p=q+12|0;o=f[p>>2]|0;c=o+4|0;h=f[c>>2]|0;m=(h|0)==0;f:do if(!m){i=h+-1|0;l=(i&h|0)==0;if(!l)if(h>>>0>b>>>0)e=b;else e=(b>>>0)%(h>>>0)|0;else e=i&b;d=f[(f[o>>2]|0)+(e<<2)>>2]|0;if(!d)r=17;else do{d=f[d>>2]|0;if(!d){r=17;break f}g=f[d+4>>2]|0;if((g|0)!=(b|0)){if(!l){if(g>>>0>=h>>>0)g=(g>>>0)%(h>>>0)|0}else g=g&i;if((g|0)!=(e|0)){r=17;break f}}}while((f[d+8>>2]|0)!=(b|0))}else{e=0;r=17}while(0);if((r|0)==17){W6(y,o,b,w);i=o+12|0;j=+(((f[i>>2]|0)+1|0)>>>0);k=+n[o+16>>2];do if(m|k*+(h>>>0)>>0<3|(h+-1&h|0)!=0)&1;t=~~+W(+(j/k))>>>0;x=0;ua(803,o|0,(v>>>0>>0?t:v)|0);v=x;x=0;if(v&1){d=Ia()|0;e=f[y>>2]|0;f[y>>2]=0;if(e|0)Cbb(e);Ua(d|0)}d=f[c>>2]|0;e=d+-1|0;if(!(e&d)){h=d;e=e&b;break}if(d>>>0>b>>>0){h=d;e=b}else{h=d;e=(b>>>0)%(d>>>0)|0}}while(0);d=f[(f[o>>2]|0)+(e<<2)>>2]|0;if(!d){d=o+8|0;g=f[y>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=g;f[(f[o>>2]|0)+(e<<2)>>2]=d;d=f[g>>2]|0;if(!d)d=y;else{d=f[d+4>>2]|0;e=h+-1|0;if(e&h){if(d>>>0>=h>>>0)d=(d>>>0)%(h>>>0)|0}else d=d&e;f[(f[o>>2]|0)+(d<<2)>>2]=g;d=y}}else{v=f[y>>2]|0;f[v>>2]=f[d>>2];f[d>>2]=v;d=y}f[i>>2]=(f[i>>2]|0)+1;f[d>>2]=0}g=rl(a,w)|0;e=f[p>>2]|0;d=f[q+16>>2]|0;if(!d)d=0;else{a=d+4|0;f[a>>2]=(f[a>>2]|0)+1}f[g>>2]=e;y=g+4|0;a=f[y>>2]|0;f[y>>2]=d;Aoa(a)}while(0);u=z;return}function wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,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,v=0,w=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;O=u;u=u+112|0;J=O+64|0;D=O+32|0;H=O+16|0;r=O;R=O+96|0;P=O+80|0;K=O+48|0;EXa(D);EXa(H);EXa(r);switch(f[b+8>>2]|0){case 28:case 26:{HAa(J,0.0);f[D>>2]=f[J>>2];f[D+4>>2]=f[J+4>>2];f[D+8>>2]=f[J+8>>2];f[D+12>>2]=f[J+12>>2];HAa(J,1.0);f[H>>2]=f[J>>2];f[H+4>>2]=f[J+4>>2];f[H+8>>2]=f[J+8>>2];f[H+12>>2]=f[J+12>>2];HAa(J,4294967296.0);f[r>>2]=f[J>>2];f[r+4>>2]=f[J+4>>2];f[r+8>>2]=f[J+8>>2];f[r+12>>2]=f[J+12>>2];N=27;p=37;G=8;c=12;C=10;q=51;A=53;d=55;E=61;I=62;M=3;break}case 32:case 30:{pqa(J,0.0);f[D>>2]=f[J>>2];f[D+4>>2]=f[J+4>>2];f[D+8>>2]=f[J+8>>2];f[D+12>>2]=f[J+12>>2];pqa(J,1.0);f[H>>2]=f[J>>2];f[H+4>>2]=f[J+4>>2];f[H+8>>2]=f[J+8>>2];f[H+12>>2]=f[J+12>>2];pqa(J,4294967296.0);f[r>>2]=f[J>>2];f[r+4>>2]=f[J+4>>2];f[r+8>>2]=f[J+8>>2];f[r+12>>2]=f[J+12>>2];N=31;p=38;G=9;c=13;C=11;q=64;A=66;d=68;E=74;I=75;M=4;break}default:hb()}oD(R,a,M);x=0;va(159,P|0,a|0,1);L=x;x=0;if(L&1)c=Ia()|0;else{L=a+44|0;e=f[L>>2]|0;x=0;g=ga(320,R|0)|0;S=x;x=0;a:do if((((((((!(S&1)?(x=0,h=ja(46,f[e>>2]|0,g|0,M|0)|0,S=x,x=0,!(S&1)):0)?(i=f[L>>2]|0,x=0,f[J>>2]=f[r>>2],f[J+4>>2]=f[r+4>>2],f[J+8>>2]=f[r+8>>2],f[J+12>>2]=f[r+12>>2],i=ia(50,i|0,J|0)|0,S=x,x=0,!(S&1)):0)?(x=0,j=ka(7,f[e>>2]|0,A|0,h|0,i|0)|0,S=x,x=0,!(S&1)):0)?(x=0,k=ja(53,f[e>>2]|0,c|0,j|0)|0,S=x,x=0,!(S&1)):0)?(l=f[L>>2]|0,x=0,f[J>>2]=f[r>>2],f[J+4>>2]=f[r+4>>2],f[J+8>>2]=f[r+8>>2],f[J+12>>2]=f[r+12>>2],m=ia(50,l|0,J|0)|0,S=x,x=0,!(S&1)):0)?(n=f[L>>2]|0,x=0,f[J>>2]=f[H>>2],f[J+4>>2]=f[H+4>>2],f[J+8>>2]=f[H+8>>2],f[J+12>>2]=f[H+12>>2],n=ia(50,n|0,J|0)|0,S=x,x=0,!(S&1)):0)?(x=0,o=ka(7,f[l>>2]|0,q|0,m|0,n|0)|0,S=x,x=0,!(S&1)):0)?(x=0,F=ka(7,f[e>>2]|0,d|0,k|0,o|0)|0,S=x,x=0,!(S&1)):0){d=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if((((((!(S&1)?(x=0,s=ja(46,f[d>>2]|0,c|0,M|0)|0,S=x,x=0,!(S&1)):0)?(t=f[L>>2]|0,x=0,v=ga(320,R|0)|0,S=x,x=0,!(S&1)):0)?(x=0,w=ja(46,f[t>>2]|0,v|0,M|0)|0,S=x,x=0,!(S&1)):0)?(x=0,y=ja(53,f[t>>2]|0,N|0,w|0)|0,S=x,x=0,!(S&1)):0)?(x=0,z=ja(53,f[t>>2]|0,p|0,y|0)|0,S=x,x=0,!(S&1)):0)?(x=0,B=ka(7,f[d>>2]|0,q|0,s|0,z|0)|0,S=x,x=0,!(S&1)):0){c=f[L>>2]|0;x=0;f[J>>2]=f[r>>2];f[J+4>>2]=f[r+4>>2];f[J+8>>2]=f[r+8>>2];f[J+12>>2]=f[r+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;c=ka(7,f[d>>2]|0,A|0,B|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;g=ja(53,f[d>>2]|0,C|0,c|0)|0;S=x;x=0;if(S&1)break;h=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if(!(S&1)){x=0;d=ja(46,f[h>>2]|0,c|0,M|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;x=0;f[J>>2]=f[D>>2];f[J+4>>2]=f[D+4>>2];f[J+8>>2]=f[D+8>>2];f[J+12>>2]=f[D+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;e=ka(7,f[h>>2]|0,E|0,d|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;d=ja(53,f[f[L>>2]>>2]|0,N|0,F|0)|0;S=x;x=0;if(S&1)break;x=0;c=ja(53,f[f[L>>2]>>2]|0,N|0,g|0)|0;S=x;x=0;if(S&1)break;x=0;g=ka(8,h|0,e|0,d|0,c|0)|0;S=x;x=0;if(S&1)break;e=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if(!(S&1)){x=0;c=ja(46,f[e>>2]|0,c|0,M|0)|0;S=x;x=0;if(S&1)break;x=0;d=ja(53,f[e>>2]|0,G|0,c|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;x=0;f[J>>2]=f[H>>2];f[J+4>>2]=f[H+4>>2];f[J+8>>2]=f[H+8>>2];f[J+12>>2]=f[H+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;d=ka(7,f[e>>2]|0,I|0,d|0,c|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;t$a(K,0);x=0;f[J>>2]=f[K>>2];f[J+4>>2]=f[K+4>>2];f[J+8>>2]=f[K+8>>2];f[J+12>>2]=f[K+12>>2];c=ia(50,c|0,J|0)|0;S=x;x=0;if(S&1)break;x=0;e=ka(8,e|0,d|0,g|0,c|0)|0;S=x;x=0;if(S&1)break;h=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;do if(!(S&1)){x=0;g=ja(45,h|0,c|0,f[b+12>>2]|0)|0;S=x;x=0;if(S&1)break;c=f[L>>2]|0;x=0;d=ga(320,P|0)|0;S=x;x=0;if(S&1)break;x=0;e=ja(45,c|0,d|0,e|0)|0;S=x;x=0;if(S&1)break;d=f[L>>2]|0;x=0;c=ga(320,R|0)|0;S=x;x=0;if(S&1)break;x=0;c=ja(46,f[d>>2]|0,c|0,M|0)|0;S=x;x=0;if(S&1)break;x=0;c=ja(53,f[d>>2]|0,N|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;c=ka(28,h|0,g|0,e|0,c|0)|0;S=x;x=0;if(S&1)break;x=0;va(161,a|0,c|0,P|0);S=x;x=0;if(S&1)break;GVa(f[a+16>>2]|0,c)|0;MCa(P);MCa(R);u=O;return}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break a}while(0);c=Ia()|0;break a}while(0);c=Ia()|0}else Q=50;while(0);if((Q|0)==50)c=Ia()|0;MCa(P)}MCa(R);Ua(c|0)}function xd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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;o=u;u=u+176|0;s=o+112|0;q=o+92|0;r=o+72|0;n=o+8|0;j=o+4|0;k=o;m=a+44|0;l=a+48|0;a:do if((f[m>>2]|0)!=(f[l>>2]|0)){e=a+32|0;zx(s,Jbb(f[e>>2]|0)|0);x=0;ta(462,s|0);i=x;x=0;if(i&1)a=Ia()|0;else{f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;f[q+16>>2]=1065353216;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;f[r+12>>2]=0;f[r+16>>2]=1065353216;h=f[l>>2]|0;i=s+44|0;g=f[m>>2]|0;b:while(1){if((g|0)==(h|0)){p=5;break}a=f[g>>2]|0;f[n>>2]=a;x=0;a=ga(257,f[a+12>>2]|0)|0;d=x;x=0;if(d&1){p=12;break}f[j>>2]=a;x=0;a=ia(180,i|0,j|0)|0;d=x;x=0;if(d&1){p=13;break}d=a+12|0;do if(f[d>>2]|0){a=a+8|0;b=a;while(1){b=f[b>>2]|0;if(!b){p=26;break}c=f[b+8>>2]|0;f[k>>2]=c;if((f[c+8>>2]|0)!=(f[(f[j>>2]|0)+8>>2]|0)){p=15;break b}x=0;c=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=23;break b}if((f[c+8>>2]|0)!=1)break;x=0;c=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=23;break b}if((f[(f[c>>2]|0)+16>>2]|0)!=(f[j>>2]|0)){p=20;break b}}if((p|0)==26){p=0;b=(f[n>>2]|0)+8|0;while(1){a=f[a>>2]|0;if(!a)break;f[(f[a+8>>2]|0)+8>>2]=f[b>>2]}a=f[j>>2]|0;x=0;b=ia(184,q|0,n|0)|0;t=x;x=0;if(t&1){p=13;break b}f[b>>2]=a;break}if(f[d>>2]|0){x=0;a=ia(180,i|0,n|0)|0;t=x;x=0;if(t&1){p=35;break b}if(f[a+12>>2]|0){d=a+8|0;a=d;while(1){a=f[a>>2]|0;if(!a)break;t=f[a+8>>2]|0;f[k>>2]=t;if((f[t+8>>2]|0)!=(f[(f[n>>2]|0)+8>>2]|0)){p=37;break b}x=0;b=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=45;break b}if((f[b+8>>2]|0)!=1){p=43;break}x=0;b=ia(103,s|0,k|0)|0;t=x;x=0;if(t&1){p=45;break b}if((f[(f[b>>2]|0)+16>>2]|0)!=(f[n>>2]|0)){p=42;break b}}if((p|0)==43){p=0;break}c=f[j>>2]|0;b=c+8|0;a=d;while(1){a=f[a>>2]|0;if(!a)break;f[(f[a+8>>2]|0)+8>>2]=f[b>>2]}x=0;a=ia(184,r|0,n|0)|0;t=x;x=0;if(t&1){p=53;break b}f[a>>2]=c}}}while(0);g=g+4|0}c:switch(p|0){case 5:{if(!((f[q+12>>2]|0)==0?!(f[r+12>>2]|0):0))p=57;d:do if((p|0)==57){t=Jbb(f[e>>2]|0)|0;x=0;ua(630,n|0,t|0);t=x;x=0;if(t&1)a=Ia()|0;else{x=0;ta(462,n|0);t=x;x=0;do if(t&1)a=Ia()|0;else{a=q+8|0;e:while(1){a=f[a>>2]|0;if(!a){p=61;break}b=a;e=f[b+8>>2]|0;f[j>>2]=f[b+12>>2];x=0;b=ia(180,i|0,j|0)|0;t=x;x=0;if(t&1){p=67;break}b=b+8|0;c=b;while(1){c=f[c>>2]|0;if(!c)break;f[k>>2]=f[c+8>>2];x=0;d=ia(103,n|0,k|0)|0;t=x;x=0;if(t&1){p=76;break e}if((f[d+8>>2]|0)!=1){p=71;break}if((f[(f[d>>2]|0)+16>>2]|0)!=(e|0)){p=71;break}}if((p|0)==71){p=0;c=(f[j>>2]|0)+8|0;while(1){b=f[b>>2]|0;if(!b)break;f[(f[b+8>>2]|0)+8>>2]=f[c>>2]}}}if((p|0)==61){a=r+8|0;f:while(1){a=f[a>>2]|0;if(!a){p=80;break}e=a;f[j>>2]=f[e+8>>2];e=f[e+12>>2]|0;x=0;b=ia(180,i|0,j|0)|0;t=x;x=0;if(t&1){p=84;break}b=b+8|0;c=b;while(1){c=f[c>>2]|0;if(!c)break;f[k>>2]=f[c+8>>2];x=0;d=ia(103,n|0,k|0)|0;t=x;x=0;if(t&1){p=93;break f}if((f[d+8>>2]|0)!=1){p=88;break}if((f[(f[d>>2]|0)+16>>2]|0)!=(e|0)){p=88;break}}if((p|0)==88){p=0;c=(f[j>>2]|0)+8|0;while(1){b=f[b>>2]|0;if(!b)break;f[(f[b+8>>2]|0)+8>>2]=f[c>>2]}}}if((p|0)==80){zV(n);break d}else if((p|0)==84)a=Ia()|0;else if((p|0)==93)a=Ia()|0;break}else if((p|0)==67)a=Ia()|0;else if((p|0)==76)a=Ia()|0}while(0);zV(n)}break c}while(0);d=f[l>>2]|0;a=f[m>>2]|0;while(1){if((a|0)==(d|0)){p=100;break}b=(f[a>>2]|0)+12|0;x=0;c=ga(257,f[b>>2]|0)|0;t=x;x=0;if(t&1){p=103;break}f[b>>2]=f[c+12>>2];a=a+4|0}if((p|0)==100){SQa(r);SQa(q);zV(s);break a}else if((p|0)==103){a=Ia()|0;break}break}case 12:{a=Ia()|0;p=55;break}case 13:{a=Ia()|0;p=55;break}case 15:{x=0;wa(71,104948,104987,113,105016);x=0;p=24;break}case 20:{x=0;wa(71,105031,104987,116,105016);x=0;p=24;break}case 23:{a=Ia()|0;p=25;break}case 35:{a=Ia()|0;p=55;break}case 37:{x=0;wa(71,105085,104987,143,105016);x=0;p=46;break}case 42:{x=0;wa(71,105121,104987,146,105016);x=0;p=46;break}case 45:{a=Ia()|0;p=47;break}case 53:{a=Ia()|0;p=55;break}}if((p|0)==24){a=Ia()|0;p=25}else if((p|0)==46){a=Ia()|0;p=47}if((p|0)==25)p=55;else if((p|0)==47)p=55;SQa(r);SQa(q)}zV(s);Ua(a|0)}while(0);u=o;return}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,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;L=u;u=u+528|0;d=L+504|0;A=L+16|0;F=L;G=L+488|0;H=L+472|0;I=L+456|0;J=L+440|0;K=L+424|0;e=L+408|0;g=L+392|0;h=L+376|0;i=L+360|0;j=L+344|0;k=L+328|0;l=L+312|0;m=L+296|0;n=L+280|0;o=L+264|0;p=L+248|0;q=L+232|0;r=L+216|0;s=L+200|0;t=L+184|0;v=L+168|0;w=L+152|0;x=L+136|0;y=L+120|0;z=L+104|0;B=L+88|0;C=L+72|0;D=L+56|0;E=L+40|0;Ou(A,b,f[c+12>>2]|0);if(K0a(A)|0){f[a>>2]=f[A>>2];f[a+4>>2]=f[A+4>>2];f[a+8>>2]=f[A+8>>2];f[a+12>>2]=f[A+12>>2];f[a+16>>2]=f[A+16>>2];f[a+20>>2]=f[A+20>>2]}else{f[F>>2]=f[A>>2];f[F+4>>2]=f[A+4>>2];f[F+8>>2]=f[A+8>>2];f[F+12>>2]=f[A+12>>2];do switch(f[c+8>>2]|0){case 1:case 0:{q6(G,F);f[d>>2]=f[G>>2];f[d+4>>2]=f[G+4>>2];f[d+8>>2]=f[G+8>>2];f[d+12>>2]=f[G+12>>2];wAa(a,d);break}case 3:case 2:{d6(H,F);f[d>>2]=f[H>>2];f[d+4>>2]=f[H+4>>2];f[d+8>>2]=f[H+8>>2];f[d+12>>2]=f[H+12>>2];wAa(a,d);break}case 5:case 4:{v9(I,F);f[d>>2]=f[I>>2];f[d+4>>2]=f[I+4>>2];f[d+8>>2]=f[I+8>>2];f[d+12>>2]=f[I+12>>2];wAa(a,d);break}case 21:case 20:{cX(J,F);f[d>>2]=f[J>>2];f[d+4>>2]=f[J+4>>2];f[d+8>>2]=f[J+8>>2];f[d+12>>2]=f[J+12>>2];wAa(a,d);break}case 45:{QHa(K,F);f[d>>2]=f[K>>2];f[d+4>>2]=f[K+4>>2];f[d+8>>2]=f[K+8>>2];f[d+12>>2]=f[K+12>>2];wAa(a,d);break}case 46:{K=F+8|0;uGa(e,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];wAa(a,d);break}case 22:{QCa(g,F);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];wAa(a,d);break}case 23:{lKa(h,F);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];wAa(a,d);break}case 24:{K=F+8|0;kKa(i,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];wAa(a,d);break}case 41:case 37:{jfa(j,F);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];wAa(a,d);break}case 42:case 38:{ifa(k,F);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];wAa(a,d);break}case 39:case 35:{Dha(l,F);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d+12>>2]=f[l+12>>2];wAa(a,d);break}case 40:case 36:{Cha(m,F);f[d>>2]=f[m>>2];f[d+4>>2]=f[m+4>>2];f[d+8>>2]=f[m+8>>2];f[d+12>>2]=f[m+12>>2];wAa(a,d);break}case 49:case 47:{$aa(n,F);f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d+12>>2]=f[n+12>>2];wAa(a,d);break}case 50:case 48:{Naa(o,F);f[d>>2]=f[o>>2];f[d+4>>2]=f[o+4>>2];f[d+8>>2]=f[o+8>>2];f[d+12>>2]=f[o+12>>2];wAa(a,d);break}case 51:{PCa(p,F);f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];wAa(a,d);break}case 7:case 6:{qN(q,F);f[d>>2]=f[q>>2];f[d+4>>2]=f[q+4>>2];f[d+8>>2]=f[q+8>>2];f[d+12>>2]=f[q+12>>2];wAa(a,d);break}case 9:case 8:{KO(r,F);f[d>>2]=f[r>>2];f[d+4>>2]=f[r+4>>2];f[d+8>>2]=f[r+8>>2];f[d+12>>2]=f[r+12>>2];wAa(a,d);break}case 11:case 10:{$ma(s,F);f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];wAa(a,d);break}case 13:case 12:{Hma(t,F);f[d>>2]=f[t>>2];f[d+4>>2]=f[t+4>>2];f[d+8>>2]=f[t+8>>2];f[d+12>>2]=f[t+12>>2];wAa(a,d);break}case 15:case 14:{gla(v,F);f[d>>2]=f[v>>2];f[d+4>>2]=f[v+4>>2];f[d+8>>2]=f[v+8>>2];f[d+12>>2]=f[v+12>>2];wAa(a,d);break}case 17:case 16:{Ria(w,F);f[d>>2]=f[w>>2];f[d+4>>2]=f[w+4>>2];f[d+8>>2]=f[w+8>>2];f[d+12>>2]=f[w+12>>2];wAa(a,d);break}case 19:case 18:{_ma(x,F);f[d>>2]=f[x>>2];f[d+4>>2]=f[x+4>>2];f[d+8>>2]=f[x+8>>2];f[d+12>>2]=f[x+12>>2];wAa(a,d);break}case 30:case 26:case 29:case 25:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];Cx(y,b,c,d);f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2];f[d+12>>2]=f[y+12>>2];wAa(a,d);break}case 32:case 28:case 31:case 27:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];tx(z,b,c,d);f[d>>2]=f[z>>2];f[d+4>>2]=f[z+4>>2];f[d+8>>2]=f[z+8>>2];f[d+12>>2]=f[z+12>>2];wAa(a,d);break}case 33:{vHa(B,F);f[d>>2]=f[B>>2];f[d+4>>2]=f[B+4>>2];f[d+8>>2]=f[B+8>>2];f[d+12>>2]=f[B+12>>2];wAa(a,d);break}case 43:{MIa(C,F);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];wAa(a,d);break}case 34:{K=F+8|0;aGa(D,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[D>>2];f[d+4>>2]=f[D+4>>2];f[d+8>>2]=f[D+8>>2];f[d+12>>2]=f[D+12>>2];wAa(a,d);break}case 44:{XC(E,F);f[d>>2]=f[E>>2];f[d+4>>2]=f[E+4>>2];f[d+8>>2]=f[E+8>>2];f[d+12>>2]=f[E+12>>2];wAa(a,d);break}default:hb()}while(0)}u=L;return}function zd(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;B=F+56|0;C=F+40|0;z=F;D=F+48|0;E=F+60|0;f[B>>2]=c;w=(a|0)!=0;x=z+40|0;y=x;z=z+39|0;A=D+4|0;i=0;c=0;k=0;a:while(1){do{do if((c|0)>-1)if((i|0)>(2147483647-c|0)){f[33448]=75;c=-1;break}else{c=i+c|0;break}while(0);q=f[B>>2]|0;i=b[q>>0]|0;if(!(i<<24>>24)){v=93;break a}j=q;b:while(1){switch(i<<24>>24){case 37:{v=10;break b}case 0:{i=j;break b}default:{}}t=j+1|0;f[B>>2]=t;i=b[t>>0]|0;j=t}c:do if((v|0)==10){v=0;i=j;do{if((b[j+1>>0]|0)!=37)break c;i=i+1|0;j=j+2|0;f[B>>2]=j}while((b[j>>0]|0)==37)}while(0);i=i-q|0;if(w)RWa(a,q,i)}while((i|0)!=0);j=f[B>>2]|0;i=b[j+1>>0]|0;if(!(abb(i)|0)){r=-1;n=k;i=1}else{t=(b[j+2>>0]|0)==36;r=t?i+-48|0:-1;n=t?1:k;i=t?3:1}l=j+i|0;f[B>>2]=l;i=b[l>>0]|0;j=(i<<24>>24)+-32|0;if(j>>>0>31|(1<>2]=l;i=b[l>>0]|0;j=(i<<24>>24)+-32|0;if(j>>>0>31|(1<>24==42){j=m+1|0;i=b[j>>0]|0;if((abb(i)|0)!=0?(b[m+2>>0]|0)==36:0){f[h+(i+-48<<2)>>2]=10;i=f[g+((b[j>>0]|0)+-48<<3)>>2]|0;l=1;j=m+3|0}else{if(n|0){c=-1;break}if(w){l=(f[e>>2]|0)+(4-1)&~(4-1);i=f[l>>2]|0;f[e>>2]=l+4;l=0}else{i=0;l=0}}f[B>>2]=j;t=(i|0)<0;s=t?0-i|0:i;k=t?k|8192:k;t=l}else{i=vda(B)|0;if((i|0)<0){c=-1;break}s=i;t=n;j=f[B>>2]|0}do if((b[j>>0]|0)==46){i=j+1|0;if((b[i>>0]|0)!=42){f[B>>2]=i;n=vda(B)|0;i=f[B>>2]|0;break}l=j+2|0;i=b[l>>0]|0;if(abb(i)|0?(b[j+3>>0]|0)==36:0){f[h+(i+-48<<2)>>2]=10;n=f[g+((b[l>>0]|0)+-48<<3)>>2]|0;i=j+4|0;f[B>>2]=i;break}if(t|0){c=-1;break a}if(w){o=(f[e>>2]|0)+(4-1)&~(4-1);i=f[o>>2]|0;f[e>>2]=o+4}else i=0;f[B>>2]=l;n=i;i=l}else{n=-1;i=j}while(0);o=0;while(1){if(((b[i>>0]|0)+-65|0)>>>0>57){c=-1;break a}j=i+1|0;f[B>>2]=j;l=b[(b[i>>0]|0)+-65+(28320+(o*58|0))>>0]|0;m=l&255;if((m+-1|0)>>>0<8){o=m;i=j}else break}if(!(l<<24>>24)){c=-1;break}j=(r|0)>-1;do if(l<<24>>24==19)if(j){c=-1;break a}else v=52;else{if(j){f[h+(r<<2)>>2]=m;m=g+(r<<3)|0;r=f[m+4>>2]|0;v=C;f[v>>2]=f[m>>2];f[v+4>>2]=r;v=52;break}if(!w){c=0;break a}ip(C,m,e);v=53}while(0);if((v|0)==52){v=0;if(w)v=53;else i=0}d:do if((v|0)==53){v=0;i=b[i>>0]|0;i=(o|0)!=0&(i&15|0)==3?i&-33:i;j=k&-65537;r=(k&8192|0)==0?k:j;e:do switch(i|0){case 110:switch((o&255)<<24>>24){case 0:{f[f[C>>2]>>2]=c;i=0;break d}case 1:{f[f[C>>2]>>2]=c;i=0;break d}case 2:{i=f[C>>2]|0;f[i>>2]=c;f[i+4>>2]=((c|0)<0)<<31>>31;i=0;break d}case 3:{d[f[C>>2]>>1]=c;i=0;break d}case 4:{b[f[C>>2]>>0]=c;i=0;break d}case 6:{f[f[C>>2]>>2]=c;i=0;break d}case 7:{i=f[C>>2]|0;f[i>>2]=c;f[i+4>>2]=((c|0)<0)<<31>>31;i=0;break d}default:{i=0;break d}}case 112:{i=120;j=n>>>0>8?n:8;k=r|8;v=65;break}case 88:case 120:{j=n;k=r;v=65;break}case 111:{j=C;i=f[j>>2]|0;j=f[j+4>>2]|0;m=jsa(i,j,x)|0;k=y-m|0;o=0;l=118729;n=(r&8|0)==0|(n|0)>(k|0)?n:k+1|0;k=r;v=71;break}case 105:case 100:{j=C;i=f[j>>2]|0;j=f[j+4>>2]|0;if((j|0)<0){i=SRa(0,0,i|0,j|0)|0;j=I;k=C;f[k>>2]=i;f[k+4>>2]=j;k=1;l=118729;v=70;break e}else{k=(r&2049|0)!=0&1;l=(r&2048|0)==0?((r&1|0)==0?118729:118731):118730;v=70;break e}}case 117:{j=C;k=0;l=118729;i=f[j>>2]|0;j=f[j+4>>2]|0;v=70;break}case 99:{b[z>>0]=f[C>>2];q=z;o=0;l=118729;m=1;i=y;break}case 109:{i=H7a(f[33448]|0)|0;v=75;break}case 115:{i=f[C>>2]|0;i=(i|0)==0?118739:i;v=75;break}case 67:{f[D>>2]=f[C>>2];f[A>>2]=0;f[C>>2]=D;n=-1;k=D;v=80;break}case 83:if(!n){x0(a,32,s,0,r);i=0;v=90;break e}else{k=f[C>>2]|0;v=80;break e}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{i=td(a,+p[C>>3],s,n,r,i)|0;break d}default:{o=0;l=118729;m=n;j=r;i=y}}while(0);f:do if((v|0)==65){r=C;q=f[r>>2]|0;r=f[r+4>>2]|0;m=lla(q,r,x,i&32)|0;l=(k&8|0)==0|(q|0)==0&(r|0)==0;o=l?0:2;l=l?118729:118729+(i>>>4)|0;n=j;i=q;j=r;v=71}else if((v|0)==70){m=nR(i,j,x)|0;o=k;k=r;v=71}else if((v|0)==75){v=0;r=DA(i,n)|0;k=(r|0)==0;q=i;o=0;l=118729;m=k?n:r-i|0;i=k?i+n|0:r}else if((v|0)==80){v=0;m=k;i=0;while(1){j=f[m>>2]|0;if(!j)break;j=ZXa(E,j)|0;l=(j|0)<0;if(l|j>>>0>(n-i|0)>>>0){v=84;break}i=j+i|0;if(n>>>0>i>>>0)m=m+4|0;else break}if((v|0)==84){v=0;if(l){c=-1;break a}}x0(a,32,s,i,r);if(!i){i=0;v=90}else{l=0;while(1){j=f[k>>2]|0;if(!j){v=90;break f}j=ZXa(E,j)|0;l=j+l|0;if((l|0)>(i|0)){v=90;break f}RWa(a,E,j);if(l>>>0>=i>>>0){v=90;break}else k=k+4|0}}}while(0);if((v|0)==71){v=0;j=(i|0)!=0|(j|0)!=0;i=(n|0)!=0|j;j=y-m+((j^1)&1)|0;q=i?m:x;m=i?((n|0)>(j|0)?n:j):0;j=(n|0)>-1?k&-65537:k;i=y}else if((v|0)==90){v=0;x0(a,32,s,i,r^8192);i=(s|0)>(i|0)?s:i;break}n=i-q|0;m=(m|0)<(n|0)?n:m;r=m+o|0;i=(s|0)<(r|0)?r:s;x0(a,32,i,r,j);RWa(a,l,o);x0(a,48,i,r,j^65536);x0(a,48,m,n,0);RWa(a,q,n);x0(a,32,i,r,j^8192)}while(0);k=t}g:do if((v|0)==93)if(!a)if(!k)c=0;else{c=1;while(1){i=f[h+(c<<2)>>2]|0;if(!i)break;ip(g+(c<<3)|0,i,e);c=c+1|0;if(c>>>0>=10){c=1;break g}}j=0;while(1){i=c+1|0;if(j|0){c=-1;break g}if(i>>>0>=10){c=1;break g}c=i;j=f[h+(i<<2)>>2]|0}}while(0);u=F;return c|0}function Ad(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=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;T=u;u=u+128|0;O=T+96|0;U=T+112|0;p=T+80|0;q=T+64|0;r=T+48|0;I=T+32|0;M=T+16|0;P=T;if((b+-35|0)>>>0>=3)Ca(106825,106511,1190,106878);oD(U,a,1);R=a+44|0;i=f[R>>2]|0;x=0;j=ga(320,U|0)|0;W=x;x=0;a:do if(((((!(W&1)?(k=f[R>>2]|0,x=0,l=ga(320,g|0)|0,W=x,x=0,!(W&1)):0)?(x=0,m=ja(46,f[k>>2]|0,l|0,1)|0,W=x,x=0,!(W&1)):0)?(n=f[R>>2]|0,t$a(p,31),x=0,f[O>>2]=f[p>>2],f[O+4>>2]=f[p+4>>2],f[O+8>>2]=f[p+8>>2],f[O+12>>2]=f[p+12>>2],n=ia(50,n|0,O|0)|0,W=x,x=0,!(W&1)):0)?(x=0,o=ka(7,f[k>>2]|0,7,m|0,n|0)|0,W=x,x=0,!(W&1)):0)?(x=0,S=ja(45,i|0,j|0,o|0)|0,W=x,x=0,!(W&1)):0){j=f[R>>2]|0;t$a(q,32);x=0;f[O>>2]=f[q>>2];f[O+4>>2]=f[q+4>>2];f[O+8>>2]=f[q+8>>2];f[O+12>>2]=f[q+12>>2];i=ia(50,j|0,O|0)|0;W=x;x=0;if(((((!(W&1)?(s=f[R>>2]|0,x=0,t=ga(320,g|0)|0,W=x,x=0,!(W&1)):0)?(x=0,v=ja(46,f[s>>2]|0,t|0,1)|0,W=x,x=0,!(W&1)):0)?(w=f[R>>2]|0,t$a(r,63),x=0,f[O>>2]=f[r>>2],f[O+4>>2]=f[r+4>>2],f[O+8>>2]=f[r+8>>2],f[O+12>>2]=f[r+12>>2],w=ia(50,w|0,O|0)|0,W=x,x=0,!(W&1)):0)?(x=0,y=ka(7,f[s>>2]|0,7,v|0,w|0)|0,W=x,x=0,!(W&1)):0)?(x=0,Q=ka(7,f[j>>2]|0,20,i|0,y|0)|0,W=x,x=0,!(W&1)):0){switch(b|0){case 35:{x=0;i=ga(320,h|0)|0;W=x;x=0;if(((!(W&1)?(x=0,z=ga(320,d|0)|0,W=x,x=0,!(W&1)):0)?(x=0,A=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,B=ka(23,a|0,i|0,z|0,A|0)|0,W=x,x=0,!(W&1)):0)o=B;else V=22;break}case 37:{x=0;i=ga(320,h|0)|0;W=x;x=0;if(((!(W&1)?(x=0,C=ga(320,e|0)|0,W=x,x=0,!(W&1)):0)?(x=0,D=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,E=ka(24,a|0,i|0,C|0,D|0)|0,W=x,x=0,!(W&1)):0)o=E;else V=22;break}case 36:{x=0;i=ga(320,h|0)|0;W=x;x=0;if(((!(W&1)?(x=0,F=ga(320,e|0)|0,W=x,x=0,!(W&1)):0)?(x=0,G=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,H=ka(25,a|0,i|0,F|0,G|0)|0,W=x,x=0,!(W&1)):0)o=H;else V=22;break}default:{x=0;sa(5);x=0;V=22}}if((V|0)==22){i=Ia()|0;break}j=f[R>>2]|0;t$a(I,1);x=0;f[O>>2]=f[I>>2];f[O+4>>2]=f[I+4>>2];f[O+8>>2]=f[I+8>>2];f[O+12>>2]=f[I+12>>2];i=ia(50,j|0,O|0)|0;W=x;x=0;do if(((!(W&1)?(J=f[R>>2]|0,x=0,K=ga(320,U|0)|0,W=x,x=0,!(W&1)):0)?(x=0,L=ja(46,f[J>>2]|0,K|0,1)|0,W=x,x=0,!(W&1)):0)?(x=0,N=ka(7,f[j>>2]|0,10,i|0,L|0)|0,W=x,x=0,!(W&1)):0){i=f[R>>2]|0;t$a(M,1);x=0;f[O>>2]=f[M>>2];f[O+4>>2]=f[M+4>>2];f[O+8>>2]=f[M+8>>2];f[O+12>>2]=f[M+12>>2];i=ia(50,i|0,O|0)|0;W=x;x=0;if(W&1)break;x=0;n=ka(7,f[j>>2]|0,1,N|0,i|0)|0;W=x;x=0;if(W&1)break;l=f[R>>2]|0;t$a(P,32);x=0;f[O>>2]=f[P>>2];f[O+4>>2]=f[P+4>>2];f[O+8>>2]=f[P+8>>2];f[O+12>>2]=f[P+12>>2];k=ia(50,l|0,O|0)|0;W=x;x=0;do if(!(W&1)){i=f[R>>2]|0;x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1)break;x=0;i=ja(46,f[i>>2]|0,j|0,1)|0;W=x;x=0;if(W&1)break;x=0;m=ka(7,f[l>>2]|0,1,k|0,i|0)|0;W=x;x=0;if(W&1)break;b:do switch(b|0){case 35:{x=0;l=ga(320,h|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;k=ga(320,d|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=ga(320,e|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=pa(16,a|0,l|0,k|0,i|0,j|0,n|0,m|0)|0;W=x;x=0;if(W&1)V=50;break}case 37:{x=0;l=ga(320,h|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;k=ga(320,d|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=ga(320,e|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=pa(17,a|0,l|0,k|0,i|0,j|0,n|0,m|0)|0;W=x;x=0;if(W&1)V=50;break}case 36:{x=0;l=ga(320,h|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;k=ga(320,d|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=ga(320,e|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;j=ga(320,U|0)|0;W=x;x=0;if(W&1){V=50;break b}x=0;i=pa(18,a|0,l|0,k|0,i|0,j|0,n|0,m|0)|0;W=x;x=0;if(W&1)V=50;break}default:{x=0;sa(5);x=0;V=50}}while(0);if((V|0)==50){i=Ia()|0;break a}x=0;i=ka(8,f[R>>2]|0,Q|0,o|0,i|0)|0;W=x;x=0;do if(!(W&1)){x=0;i=ka(26,f[R>>2]|0,c|0,S|0,i|0)|0;W=x;x=0;if(W&1)break;x=0;va(161,a|0,i|0,h|0);W=x;x=0;if(W&1)break;MCa(U);u=T;return i|0}while(0);i=Ia()|0;break a}while(0);i=Ia()|0;break a}while(0);i=Ia()|0;break}i=Ia()|0}else V=16;while(0);if((V|0)==16)i=Ia()|0;MCa(U);Ua(i|0);return 0}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,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;L=u;u=u+528|0;d=L+504|0;A=L+16|0;F=L;G=L+488|0;H=L+472|0;I=L+456|0;J=L+440|0;K=L+424|0;e=L+408|0;g=L+392|0;h=L+376|0;i=L+360|0;j=L+344|0;k=L+328|0;l=L+312|0;m=L+296|0;n=L+280|0;o=L+264|0;p=L+248|0;q=L+232|0;r=L+216|0;s=L+200|0;t=L+184|0;v=L+168|0;w=L+152|0;x=L+136|0;y=L+120|0;z=L+104|0;B=L+88|0;C=L+72|0;D=L+56|0;E=L+40|0;Ow(A,b,f[c+12>>2]|0);if(K0a(A)|0){f[a>>2]=f[A>>2];f[a+4>>2]=f[A+4>>2];f[a+8>>2]=f[A+8>>2];f[a+12>>2]=f[A+12>>2];f[a+16>>2]=f[A+16>>2];f[a+20>>2]=f[A+20>>2]}else{f[F>>2]=f[A>>2];f[F+4>>2]=f[A+4>>2];f[F+8>>2]=f[A+8>>2];f[F+12>>2]=f[A+12>>2];do switch(f[c+8>>2]|0){case 1:case 0:{q6(G,F);f[d>>2]=f[G>>2];f[d+4>>2]=f[G+4>>2];f[d+8>>2]=f[G+8>>2];f[d+12>>2]=f[G+12>>2];wAa(a,d);break}case 3:case 2:{d6(H,F);f[d>>2]=f[H>>2];f[d+4>>2]=f[H+4>>2];f[d+8>>2]=f[H+8>>2];f[d+12>>2]=f[H+12>>2];wAa(a,d);break}case 5:case 4:{v9(I,F);f[d>>2]=f[I>>2];f[d+4>>2]=f[I+4>>2];f[d+8>>2]=f[I+8>>2];f[d+12>>2]=f[I+12>>2];wAa(a,d);break}case 21:case 20:{cX(J,F);f[d>>2]=f[J>>2];f[d+4>>2]=f[J+4>>2];f[d+8>>2]=f[J+8>>2];f[d+12>>2]=f[J+12>>2];wAa(a,d);break}case 45:{QHa(K,F);f[d>>2]=f[K>>2];f[d+4>>2]=f[K+4>>2];f[d+8>>2]=f[K+8>>2];f[d+12>>2]=f[K+12>>2];wAa(a,d);break}case 46:{K=F+8|0;uGa(e,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];wAa(a,d);break}case 22:{QCa(g,F);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];wAa(a,d);break}case 23:{lKa(h,F);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];wAa(a,d);break}case 24:{K=F+8|0;kKa(i,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];wAa(a,d);break}case 41:case 37:{jfa(j,F);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];wAa(a,d);break}case 42:case 38:{ifa(k,F);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];wAa(a,d);break}case 39:case 35:{Dha(l,F);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d+12>>2]=f[l+12>>2];wAa(a,d);break}case 40:case 36:{Cha(m,F);f[d>>2]=f[m>>2];f[d+4>>2]=f[m+4>>2];f[d+8>>2]=f[m+8>>2];f[d+12>>2]=f[m+12>>2];wAa(a,d);break}case 49:case 47:{$aa(n,F);f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d+12>>2]=f[n+12>>2];wAa(a,d);break}case 50:case 48:{Naa(o,F);f[d>>2]=f[o>>2];f[d+4>>2]=f[o+4>>2];f[d+8>>2]=f[o+8>>2];f[d+12>>2]=f[o+12>>2];wAa(a,d);break}case 51:{PCa(p,F);f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];wAa(a,d);break}case 7:case 6:{qN(q,F);f[d>>2]=f[q>>2];f[d+4>>2]=f[q+4>>2];f[d+8>>2]=f[q+8>>2];f[d+12>>2]=f[q+12>>2];wAa(a,d);break}case 9:case 8:{KO(r,F);f[d>>2]=f[r>>2];f[d+4>>2]=f[r+4>>2];f[d+8>>2]=f[r+8>>2];f[d+12>>2]=f[r+12>>2];wAa(a,d);break}case 11:case 10:{$ma(s,F);f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];wAa(a,d);break}case 13:case 12:{Hma(t,F);f[d>>2]=f[t>>2];f[d+4>>2]=f[t+4>>2];f[d+8>>2]=f[t+8>>2];f[d+12>>2]=f[t+12>>2];wAa(a,d);break}case 15:case 14:{gla(v,F);f[d>>2]=f[v>>2];f[d+4>>2]=f[v+4>>2];f[d+8>>2]=f[v+8>>2];f[d+12>>2]=f[v+12>>2];wAa(a,d);break}case 17:case 16:{Ria(w,F);f[d>>2]=f[w>>2];f[d+4>>2]=f[w+4>>2];f[d+8>>2]=f[w+8>>2];f[d+12>>2]=f[w+12>>2];wAa(a,d);break}case 19:case 18:{_ma(x,F);f[d>>2]=f[x>>2];f[d+4>>2]=f[x+4>>2];f[d+8>>2]=f[x+8>>2];f[d+12>>2]=f[x+12>>2];wAa(a,d);break}case 30:case 26:case 29:case 25:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];Cx(y,b,c,d);f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2];f[d+12>>2]=f[y+12>>2];wAa(a,d);break}case 32:case 28:case 31:case 27:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];tx(z,b,c,d);f[d>>2]=f[z>>2];f[d+4>>2]=f[z+4>>2];f[d+8>>2]=f[z+8>>2];f[d+12>>2]=f[z+12>>2];wAa(a,d);break}case 33:{vHa(B,F);f[d>>2]=f[B>>2];f[d+4>>2]=f[B+4>>2];f[d+8>>2]=f[B+8>>2];f[d+12>>2]=f[B+12>>2];wAa(a,d);break}case 43:{MIa(C,F);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];wAa(a,d);break}case 34:{K=F+8|0;aGa(D,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[D>>2];f[d+4>>2]=f[D+4>>2];f[d+8>>2]=f[D+8>>2];f[d+12>>2]=f[D+12>>2];wAa(a,d);break}case 44:{XC(E,F);f[d>>2]=f[E>>2];f[d+4>>2]=f[E+4>>2];f[d+8>>2]=f[E+8>>2];f[d+12>>2]=f[E+12>>2];wAa(a,d);break}default:hb()}while(0)}u=L;return}function Cd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,228,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,225,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,229,b);$O(d,(vSa(c)|0)+16|0);tS(d,225,(vSa(c)|0)+12|0);tS(d,225,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,230,b);tS(d,225,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,231,b);$O(d,($Ra(c)|0)+16|0);$O(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,232,b);tS(d,225,(NRa(c)|0)+28|0);$O(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,233,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,225,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,234,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,225,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,235,b);b=IQa(c)|0;tS(d,225,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,225,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,236,b);break}case 10:{d=a+16|0;tS(d,237,b);tS(d,225,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,238,b);break}case 12:{d=a+16|0;tS(d,239,b);tS(d,225,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,240,b);tS(d,225,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,241,b);tS(d,225,(PRa(c)|0)+28|0);tS(d,225,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,242,b);tS(d,225,(bRa(c)|0)+24|0);tS(d,225,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,243,b);tS(d,225,(wQa(c)|0)+24|0);tS(d,225,(wQa(c)|0)+20|0);tS(d,225,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,244,b);tS(d,225,(QQa(c)|0)+20|0);tS(d,225,(QQa(c)|0)+16|0);tS(d,225,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,245,b);tS(d,225,(PQa(c)|0)+16|0);tS(d,225,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,246,b);break}case 16:{d=a+16|0;tS(d,247,b);tS(d,225,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,248,b);tS(d,225,(FRa(c)|0)+16|0);tS(d,225,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,249,b);tS(d,225,(DRa(c)|0)+16|0);tS(d,225,(DRa(c)|0)+12|0);tS(d,225,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,250,b);tS(d,225,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,251,b);$O(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,252,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,225,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,253,b);break}case 23:{tS(a+16|0,254,b);break}default:hb()}while(0);return}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2561,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2560,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2562,b);tP(d,(vSa(c)|0)+16|0);tS(d,2560,(vSa(c)|0)+12|0);tS(d,2560,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2563,b);tS(d,2560,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2564,b);tP(d,($Ra(c)|0)+16|0);tP(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2565,b);tS(d,2560,(NRa(c)|0)+28|0);tP(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2566,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2560,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2567,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2560,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2568,b);b=IQa(c)|0;tS(d,2560,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2560,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2569,b);break}case 10:{d=a+16|0;tS(d,2570,b);tS(d,2560,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2571,b);break}case 12:{d=a+16|0;tS(d,2572,b);tS(d,2560,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2573,b);tS(d,2560,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2574,b);tS(d,2560,(PRa(c)|0)+28|0);tS(d,2560,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2575,b);tS(d,2560,(bRa(c)|0)+24|0);tS(d,2560,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2576,b);tS(d,2560,(wQa(c)|0)+24|0);tS(d,2560,(wQa(c)|0)+20|0);tS(d,2560,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2577,b);tS(d,2560,(QQa(c)|0)+20|0);tS(d,2560,(QQa(c)|0)+16|0);tS(d,2560,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2578,b);tS(d,2560,(PQa(c)|0)+16|0);tS(d,2560,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2579,b);break}case 16:{d=a+16|0;tS(d,2580,b);tS(d,2560,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2581,b);tS(d,2560,(FRa(c)|0)+16|0);tS(d,2560,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2582,b);tS(d,2560,(DRa(c)|0)+16|0);tS(d,2560,(DRa(c)|0)+12|0);tS(d,2560,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2583,b);tS(d,2560,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2584,b);tP(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2585,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2560,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2586,b);break}case 23:{tS(a+16|0,2587,b);break}default:hb()}while(0);return}function Ed(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,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;L=u;u=u+528|0;d=L+504|0;A=L+16|0;F=L;G=L+488|0;H=L+472|0;I=L+456|0;J=L+440|0;K=L+424|0;e=L+408|0;g=L+392|0;h=L+376|0;i=L+360|0;j=L+344|0;k=L+328|0;l=L+312|0;m=L+296|0;n=L+280|0;o=L+264|0;p=L+248|0;q=L+232|0;r=L+216|0;s=L+200|0;t=L+184|0;v=L+168|0;w=L+152|0;x=L+136|0;y=L+120|0;z=L+104|0;B=L+88|0;C=L+72|0;D=L+56|0;E=L+40|0;oz(A,b,f[c+12>>2]|0);if(K0a(A)|0){f[a>>2]=f[A>>2];f[a+4>>2]=f[A+4>>2];f[a+8>>2]=f[A+8>>2];f[a+12>>2]=f[A+12>>2];f[a+16>>2]=f[A+16>>2];f[a+20>>2]=f[A+20>>2]}else{f[F>>2]=f[A>>2];f[F+4>>2]=f[A+4>>2];f[F+8>>2]=f[A+8>>2];f[F+12>>2]=f[A+12>>2];do switch(f[c+8>>2]|0){case 1:case 0:{q6(G,F);f[d>>2]=f[G>>2];f[d+4>>2]=f[G+4>>2];f[d+8>>2]=f[G+8>>2];f[d+12>>2]=f[G+12>>2];wAa(a,d);break}case 3:case 2:{d6(H,F);f[d>>2]=f[H>>2];f[d+4>>2]=f[H+4>>2];f[d+8>>2]=f[H+8>>2];f[d+12>>2]=f[H+12>>2];wAa(a,d);break}case 5:case 4:{v9(I,F);f[d>>2]=f[I>>2];f[d+4>>2]=f[I+4>>2];f[d+8>>2]=f[I+8>>2];f[d+12>>2]=f[I+12>>2];wAa(a,d);break}case 21:case 20:{cX(J,F);f[d>>2]=f[J>>2];f[d+4>>2]=f[J+4>>2];f[d+8>>2]=f[J+8>>2];f[d+12>>2]=f[J+12>>2];wAa(a,d);break}case 45:{QHa(K,F);f[d>>2]=f[K>>2];f[d+4>>2]=f[K+4>>2];f[d+8>>2]=f[K+8>>2];f[d+12>>2]=f[K+12>>2];wAa(a,d);break}case 46:{K=F+8|0;uGa(e,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];wAa(a,d);break}case 22:{QCa(g,F);f[d>>2]=f[g>>2];f[d+4>>2]=f[g+4>>2];f[d+8>>2]=f[g+8>>2];f[d+12>>2]=f[g+12>>2];wAa(a,d);break}case 23:{lKa(h,F);f[d>>2]=f[h>>2];f[d+4>>2]=f[h+4>>2];f[d+8>>2]=f[h+8>>2];f[d+12>>2]=f[h+12>>2];wAa(a,d);break}case 24:{K=F+8|0;kKa(i,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];f[d+8>>2]=f[i+8>>2];f[d+12>>2]=f[i+12>>2];wAa(a,d);break}case 41:case 37:{jfa(j,F);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];f[d+8>>2]=f[j+8>>2];f[d+12>>2]=f[j+12>>2];wAa(a,d);break}case 42:case 38:{ifa(k,F);f[d>>2]=f[k>>2];f[d+4>>2]=f[k+4>>2];f[d+8>>2]=f[k+8>>2];f[d+12>>2]=f[k+12>>2];wAa(a,d);break}case 39:case 35:{Dha(l,F);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[d+12>>2]=f[l+12>>2];wAa(a,d);break}case 40:case 36:{Cha(m,F);f[d>>2]=f[m>>2];f[d+4>>2]=f[m+4>>2];f[d+8>>2]=f[m+8>>2];f[d+12>>2]=f[m+12>>2];wAa(a,d);break}case 49:case 47:{$aa(n,F);f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[d+12>>2]=f[n+12>>2];wAa(a,d);break}case 50:case 48:{Naa(o,F);f[d>>2]=f[o>>2];f[d+4>>2]=f[o+4>>2];f[d+8>>2]=f[o+8>>2];f[d+12>>2]=f[o+12>>2];wAa(a,d);break}case 51:{PCa(p,F);f[d>>2]=f[p>>2];f[d+4>>2]=f[p+4>>2];f[d+8>>2]=f[p+8>>2];f[d+12>>2]=f[p+12>>2];wAa(a,d);break}case 7:case 6:{qN(q,F);f[d>>2]=f[q>>2];f[d+4>>2]=f[q+4>>2];f[d+8>>2]=f[q+8>>2];f[d+12>>2]=f[q+12>>2];wAa(a,d);break}case 9:case 8:{KO(r,F);f[d>>2]=f[r>>2];f[d+4>>2]=f[r+4>>2];f[d+8>>2]=f[r+8>>2];f[d+12>>2]=f[r+12>>2];wAa(a,d);break}case 11:case 10:{$ma(s,F);f[d>>2]=f[s>>2];f[d+4>>2]=f[s+4>>2];f[d+8>>2]=f[s+8>>2];f[d+12>>2]=f[s+12>>2];wAa(a,d);break}case 13:case 12:{Hma(t,F);f[d>>2]=f[t>>2];f[d+4>>2]=f[t+4>>2];f[d+8>>2]=f[t+8>>2];f[d+12>>2]=f[t+12>>2];wAa(a,d);break}case 15:case 14:{gla(v,F);f[d>>2]=f[v>>2];f[d+4>>2]=f[v+4>>2];f[d+8>>2]=f[v+8>>2];f[d+12>>2]=f[v+12>>2];wAa(a,d);break}case 17:case 16:{Ria(w,F);f[d>>2]=f[w>>2];f[d+4>>2]=f[w+4>>2];f[d+8>>2]=f[w+8>>2];f[d+12>>2]=f[w+12>>2];wAa(a,d);break}case 19:case 18:{_ma(x,F);f[d>>2]=f[x>>2];f[d+4>>2]=f[x+4>>2];f[d+8>>2]=f[x+8>>2];f[d+12>>2]=f[x+12>>2];wAa(a,d);break}case 30:case 26:case 29:case 25:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];Cx(y,b,c,d);f[d>>2]=f[y>>2];f[d+4>>2]=f[y+4>>2];f[d+8>>2]=f[y+8>>2];f[d+12>>2]=f[y+12>>2];wAa(a,d);break}case 32:case 28:case 31:case 27:{f[d>>2]=f[F>>2];f[d+4>>2]=f[F+4>>2];f[d+8>>2]=f[F+8>>2];f[d+12>>2]=f[F+12>>2];tx(z,b,c,d);f[d>>2]=f[z>>2];f[d+4>>2]=f[z+4>>2];f[d+8>>2]=f[z+8>>2];f[d+12>>2]=f[z+12>>2];wAa(a,d);break}case 33:{vHa(B,F);f[d>>2]=f[B>>2];f[d+4>>2]=f[B+4>>2];f[d+8>>2]=f[B+8>>2];f[d+12>>2]=f[B+12>>2];wAa(a,d);break}case 43:{MIa(C,F);f[d>>2]=f[C>>2];f[d+4>>2]=f[C+4>>2];f[d+8>>2]=f[C+8>>2];f[d+12>>2]=f[C+12>>2];wAa(a,d);break}case 34:{K=F+8|0;aGa(D,f[F>>2]|0,f[K>>2]|0,f[K+4>>2]|0);f[d>>2]=f[D>>2];f[d+4>>2]=f[D+4>>2];f[d+8>>2]=f[D+8>>2];f[d+12>>2]=f[D+12>>2];wAa(a,d);break}case 44:{XC(E,F);f[d>>2]=f[E>>2];f[d+4>>2]=f[E+4>>2];f[d+8>>2]=f[E+8>>2];f[d+12>>2]=f[E+12>>2];wAa(a,d);break}default:hb()}while(0)}u=L;return}function Fd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,198,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,197,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,199,b);VP(d,(vSa(c)|0)+16|0);tS(d,197,(vSa(c)|0)+12|0);tS(d,197,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,200,b);tS(d,197,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,201,b);VP(d,($Ra(c)|0)+16|0);VP(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,202,b);tS(d,197,(NRa(c)|0)+28|0);VP(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,203,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,197,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,204,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,197,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,205,b);b=IQa(c)|0;tS(d,197,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,197,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,206,b);break}case 10:{d=a+16|0;tS(d,207,b);tS(d,197,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,208,b);break}case 12:{d=a+16|0;tS(d,209,b);tS(d,197,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,210,b);tS(d,197,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,211,b);tS(d,197,(PRa(c)|0)+28|0);tS(d,197,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,212,b);tS(d,197,(bRa(c)|0)+24|0);tS(d,197,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,213,b);tS(d,197,(wQa(c)|0)+24|0);tS(d,197,(wQa(c)|0)+20|0);tS(d,197,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,214,b);tS(d,197,(QQa(c)|0)+20|0);tS(d,197,(QQa(c)|0)+16|0);tS(d,197,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,215,b);tS(d,197,(PQa(c)|0)+16|0);tS(d,197,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,216,b);break}case 16:{d=a+16|0;tS(d,217,b);tS(d,197,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,218,b);tS(d,197,(FRa(c)|0)+16|0);tS(d,197,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,219,b);tS(d,197,(DRa(c)|0)+16|0);tS(d,197,(DRa(c)|0)+12|0);tS(d,197,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,220,b);tS(d,197,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,221,b);VP(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,222,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,197,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,223,b);break}case 23:{tS(a+16|0,224,b);break}default:hb()}while(0);return}function Gd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+224|0;p=B+204|0;C=B+208|0;A=B+192|0;m=B+184|0;n=B+92|0;o=B;f[p>>2]=c;q=c;if(Qab(f[c+8>>2]|0)|0?(d=c+8|0,(P5(a+68|0,d)|0)==0):0){y=a+56|0;z=ZW(y,d)|0;e=f[z>>2]|0;f[C>>2]=e;v=z+4|0;g=f[v>>2]|0;f[C+4>>2]=g;t=z+8|0;f[C+8>>2]=f[t>>2];f[t>>2]=0;f[v>>2]=0;f[z>>2]=0;bU(y,d);y=e;a:do if((g|0)!=(e|0)){x=0;d=ga(262,f[f[y>>2]>>2]|0)|0;z=x;x=0;do if(z&1)w=4;else{if(f[d+12>>2]|0){x=0;wa(71,77989,76794,338,78038);x=0;w=4;break}z=a+44|0;h=a+48|0;v=g-e>>4;e=f[z>>2]|0;b:while(1){if((e|0)==(h|0))break a;t=f[e+16>>2]|0;d=0;while(1){if(d>>>0>=v>>>0)break b;if(!(rfa(y+(d<<4)+4|0,t)|0))break;else d=d+1|0}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}l=A+4|0;k=a+40|0;j=0;while(1){if(j>>>0>=v>>>0){w=44;break}x=0;d=ia(126,y+(j<<4)+4|0,t|0)|0;i=x;x=0;if(i&1){w=29;break}h=f[d>>2]|0;x=0;d=ga(262,f[f[y+(j<<4)>>2]>>2]|0)|0;i=x;x=0;if(i&1){w=30;break}x=0;i=ga(257,f[h>>2]|0)|0;g=x;x=0;if(g&1){w=31;break}g=d+16|0;d=f[g>>2]|0;if(d|0){x=0;ua(1059,A|0,d|0);e=x;x=0;if(e&1){w=32;break}e=f[l>>2]|0;d=f[A>>2]|0;while(1){if((d|0)==(e|0))break;if((f[d>>2]|0)==(i|0)){w=34;break}else d=d+4|0}if((w|0)==34){w=0;C0a(m);f[h>>2]=m;e=fZa(f[k>>2]|0)|0;x=0;va(101,n|0,e|0,f[g>>2]|0);g=x;x=0;if(g&1){w=36;break}g=fZa(f[k>>2]|0)|0;x=0;va(101,o|0,g|0,i|0);g=x;x=0;if(g&1){w=37;break}f[h>>2]=i;i=xj(n,o)|0;_7(o);_7(n);if(i){w=41;break}}f0a(A)}j=j+1|0}if((w|0)==29){d=Ia()|0;break}else if((w|0)==30){d=Ia()|0;break}else if((w|0)==31){d=Ia()|0;break}else if((w|0)==32)d=Ia()|0;else if((w|0)==36){d=Ia()|0;w=38}else if((w|0)==37){d=Ia()|0;_7(n);w=38}else if((w|0)==41){f0a(A);break a}else if((w|0)==44){g=c+16|0;if(Jbb(f[g>>2]|0)|0){h=c+12|0;x=0;d=ga(218,h|0)|0;o=x;x=0;if(!(o&1))if(b7a(f[f[d>>2]>>2]|0)|0){x=0;d=ia(126,z|0,t|0)|0;q=x;x=0;if(q&1){d=Ia()|0;break}d=f[d>>2]|0;x=0;e=ga(257,f[d>>2]|0)|0;q=x;x=0;if(!(q&1)?(r=f[e+12>>2]|0,s=(Jbb(f[g>>2]|0)|0)+-1|0,x=0,s=ia(75,h|0,s|0)|0,q=x,x=0,!(q&1)):0){f[s>>2]=r;f[c+4>>2]=f[r+4>>2];uVa(f[d>>2]|0);k=a+36|0;j=0;while(1){if(j>>>0>=v>>>0){w=56;break}x=0;d=ia(126,y+(j<<4)+4|0,t|0)|0;w=x;x=0;if(w&1){w=63;break}g=f[d>>2]|0;i=f[y+(j<<4)>>2]|0;x=0;h=ga(262,f[i>>2]|0)|0;w=x;x=0;if(w&1){w=64;break}d=h+12|0;if(f[d>>2]|0){w=62;break}x=0;e=ga(257,f[g>>2]|0)|0;w=x;x=0;if(w&1){w=71;break}if(!(f[h+16>>2]|0)){f[d>>2]=f[e+12>>2];uVa(e)}else{f[d>>2]=e;gLa(e,1);d=f[k>>2]|0;Jbb(d)|0;x=0;d=ga(282,d+144|0)|0;w=x;x=0;if(w&1){w=71;break}f[g>>2]=d;Cqa(h);d=f[k>>2]|0;Jbb(d)|0;_0a(A,d);x=0;d=ia(125,f[A>>2]|0,h|0)|0;w=x;x=0;if(w&1){w=72;break}f[i>>2]=d}j=j+1|0}if((w|0)==56){d=f[k>>2]|0;Jbb(d)|0;_0a(A,d);x=0;d=ja(45,A|0,t|0,c|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break}else{GVa(f[a+16>>2]|0,d)|0;y3(z);b[a+92>>0]=1;break a}}else if((w|0)==62){x=0;wa(71,91198,76794,423,78038);x=0;d=Ia()|0}else if((w|0)==63){d=Ia()|0;break}else if((w|0)==64)d=Ia()|0;else if((w|0)==71){d=Ia()|0;break}else if((w|0)==72){d=Ia()|0;break}break}d=Ia()|0;break}else w=47}else w=47;do if((w|0)==47){d=a+148|0;e=f[d>>2]|0;if((e|0)==(f[a+152>>2]|0)){x=0;ua(104,a+144|0,p|0);a=x;x=0;if(a&1)break;else break a}else{f[e>>2]=q;f[d>>2]=(f[d>>2]|0)+4;break a}}while(0);d=Ia()|0;break}if((w|0)==38)f0a(A)}while(0);if((w|0)==4)d=Ia()|0;Z6(C);Ua(d|0)}while(0);Z6(C)}u=B;return}function Hd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+224|0;p=B+204|0;C=B+208|0;A=B+192|0;m=B+184|0;n=B+92|0;o=B;f[p>>2]=c;q=c;if(Qab(f[c+8>>2]|0)|0?(d=c+8|0,(P5(a+68|0,d)|0)==0):0){y=a+56|0;z=ZW(y,d)|0;e=f[z>>2]|0;f[C>>2]=e;v=z+4|0;g=f[v>>2]|0;f[C+4>>2]=g;t=z+8|0;f[C+8>>2]=f[t>>2];f[t>>2]=0;f[v>>2]=0;f[z>>2]=0;dU(y,d);y=e;a:do if((g|0)!=(e|0)){x=0;d=ga(262,f[f[y>>2]>>2]|0)|0;z=x;x=0;do if(z&1)w=4;else{if(f[d+12>>2]|0){x=0;wa(71,77989,76794,338,78038);x=0;w=4;break}z=a+44|0;h=a+48|0;v=g-e>>4;e=f[z>>2]|0;b:while(1){if((e|0)==(h|0))break a;t=f[e+16>>2]|0;d=0;while(1){if(d>>>0>=v>>>0)break b;if(!(rfa(y+(d<<4)+4|0,t)|0))break;else d=d+1|0}d=f[e+4>>2]|0;if(!d)while(1){d=f[e+8>>2]|0;if((f[d>>2]|0)==(e|0))break;else e=d}else while(1){e=f[d>>2]|0;if(!e)break;else d=e}e=d}l=A+4|0;k=a+40|0;j=0;while(1){if(j>>>0>=v>>>0){w=44;break}x=0;d=ia(124,y+(j<<4)+4|0,t|0)|0;i=x;x=0;if(i&1){w=29;break}h=f[d>>2]|0;x=0;d=ga(262,f[f[y+(j<<4)>>2]>>2]|0)|0;i=x;x=0;if(i&1){w=30;break}x=0;i=ga(257,f[h>>2]|0)|0;g=x;x=0;if(g&1){w=31;break}g=d+16|0;d=f[g>>2]|0;if(d|0){x=0;ua(1059,A|0,d|0);e=x;x=0;if(e&1){w=32;break}e=f[l>>2]|0;d=f[A>>2]|0;while(1){if((d|0)==(e|0))break;if((f[d>>2]|0)==(i|0)){w=34;break}else d=d+4|0}if((w|0)==34){w=0;C0a(m);f[h>>2]=m;e=fZa(f[k>>2]|0)|0;x=0;va(101,n|0,e|0,f[g>>2]|0);g=x;x=0;if(g&1){w=36;break}g=fZa(f[k>>2]|0)|0;x=0;va(101,o|0,g|0,i|0);g=x;x=0;if(g&1){w=37;break}f[h>>2]=i;i=xj(n,o)|0;_7(o);_7(n);if(i){w=41;break}}f0a(A)}j=j+1|0}if((w|0)==29){d=Ia()|0;break}else if((w|0)==30){d=Ia()|0;break}else if((w|0)==31){d=Ia()|0;break}else if((w|0)==32)d=Ia()|0;else if((w|0)==36){d=Ia()|0;w=38}else if((w|0)==37){d=Ia()|0;_7(n);w=38}else if((w|0)==41){f0a(A);break a}else if((w|0)==44){g=c+16|0;if(Jbb(f[g>>2]|0)|0){h=c+12|0;x=0;d=ga(218,h|0)|0;o=x;x=0;if(!(o&1))if(b7a(f[f[d>>2]>>2]|0)|0){x=0;d=ia(124,z|0,t|0)|0;q=x;x=0;if(q&1){d=Ia()|0;break}d=f[d>>2]|0;x=0;e=ga(257,f[d>>2]|0)|0;q=x;x=0;if(!(q&1)?(r=f[e+12>>2]|0,s=(Jbb(f[g>>2]|0)|0)+-1|0,x=0,s=ia(75,h|0,s|0)|0,q=x,x=0,!(q&1)):0){f[s>>2]=r;f[c+4>>2]=f[r+4>>2];uVa(f[d>>2]|0);k=a+36|0;j=0;while(1){if(j>>>0>=v>>>0){w=56;break}x=0;d=ia(124,y+(j<<4)+4|0,t|0)|0;w=x;x=0;if(w&1){w=63;break}g=f[d>>2]|0;i=f[y+(j<<4)>>2]|0;x=0;h=ga(262,f[i>>2]|0)|0;w=x;x=0;if(w&1){w=64;break}d=h+12|0;if(f[d>>2]|0){w=62;break}x=0;e=ga(257,f[g>>2]|0)|0;w=x;x=0;if(w&1){w=71;break}if(!(f[h+16>>2]|0)){f[d>>2]=f[e+12>>2];uVa(e)}else{f[d>>2]=e;gLa(e,1);d=f[k>>2]|0;Jbb(d)|0;x=0;d=ga(282,d+144|0)|0;w=x;x=0;if(w&1){w=71;break}f[g>>2]=d;Cqa(h);d=f[k>>2]|0;Jbb(d)|0;_0a(A,d);x=0;d=ia(125,f[A>>2]|0,h|0)|0;w=x;x=0;if(w&1){w=72;break}f[i>>2]=d}j=j+1|0}if((w|0)==56){d=f[k>>2]|0;Jbb(d)|0;_0a(A,d);x=0;d=ja(45,A|0,t|0,c|0)|0;A=x;x=0;if(A&1){d=Ia()|0;break}else{GVa(f[a+16>>2]|0,d)|0;A3(z);b[a+92>>0]=1;break a}}else if((w|0)==62){x=0;wa(71,91198,76794,423,78038);x=0;d=Ia()|0}else if((w|0)==63){d=Ia()|0;break}else if((w|0)==64)d=Ia()|0;else if((w|0)==71){d=Ia()|0;break}else if((w|0)==72){d=Ia()|0;break}break}d=Ia()|0;break}else w=47}else w=47;do if((w|0)==47){d=a+148|0;e=f[d>>2]|0;if((e|0)==(f[a+152>>2]|0)){x=0;ua(104,a+144|0,p|0);a=x;x=0;if(a&1)break;else break a}else{f[e>>2]=q;f[d>>2]=(f[d>>2]|0)+4;break a}}while(0);d=Ia()|0;break}if((w|0)==38)f0a(A)}while(0);if((w|0)==4)d=Ia()|0;$6(C);Ua(d|0)}while(0);$6(C)}u=B;return}function Id(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2134,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2133,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2135,b);zQ(d,(vSa(c)|0)+16|0);tS(d,2133,(vSa(c)|0)+12|0);tS(d,2133,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2136,b);tS(d,2133,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2137,b);zQ(d,($Ra(c)|0)+16|0);zQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2138,b);tS(d,2133,(NRa(c)|0)+28|0);zQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2139,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2133,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2140,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2133,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2141,b);b=IQa(c)|0;tS(d,2133,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2133,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2142,b);break}case 10:{d=a+16|0;tS(d,2143,b);tS(d,2133,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2144,b);break}case 12:{d=a+16|0;tS(d,2145,b);tS(d,2133,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2146,b);tS(d,2133,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2147,b);tS(d,2133,(PRa(c)|0)+28|0);tS(d,2133,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2148,b);tS(d,2133,(bRa(c)|0)+24|0);tS(d,2133,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2149,b);tS(d,2133,(wQa(c)|0)+24|0);tS(d,2133,(wQa(c)|0)+20|0);tS(d,2133,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2150,b);tS(d,2133,(QQa(c)|0)+20|0);tS(d,2133,(QQa(c)|0)+16|0);tS(d,2133,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2151,b);tS(d,2133,(PQa(c)|0)+16|0);tS(d,2133,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2152,b);break}case 16:{d=a+16|0;tS(d,2153,b);tS(d,2133,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2154,b);tS(d,2133,(FRa(c)|0)+16|0);tS(d,2133,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2155,b);tS(d,2133,(DRa(c)|0)+16|0);tS(d,2133,(DRa(c)|0)+12|0);tS(d,2133,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2156,b);tS(d,2133,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2157,b);zQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2158,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2133,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2159,b);break}case 23:{tS(a+16|0,2160,b);break}default:hb()}while(0);return}function Jd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2285,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2284,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2286,b);MQ(d,(vSa(c)|0)+16|0);tS(d,2284,(vSa(c)|0)+12|0);tS(d,2284,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2287,b);tS(d,2284,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2288,b);MQ(d,($Ra(c)|0)+16|0);MQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2289,b);tS(d,2284,(NRa(c)|0)+28|0);MQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2290,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2284,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2291,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2284,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2292,b);b=IQa(c)|0;tS(d,2284,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2284,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2293,b);break}case 10:{d=a+16|0;tS(d,2294,b);tS(d,2284,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2295,b);break}case 12:{d=a+16|0;tS(d,2296,b);tS(d,2284,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2297,b);tS(d,2284,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2298,b);tS(d,2284,(PRa(c)|0)+28|0);tS(d,2284,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2299,b);tS(d,2284,(bRa(c)|0)+24|0);tS(d,2284,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2300,b);tS(d,2284,(wQa(c)|0)+24|0);tS(d,2284,(wQa(c)|0)+20|0);tS(d,2284,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2301,b);tS(d,2284,(QQa(c)|0)+20|0);tS(d,2284,(QQa(c)|0)+16|0);tS(d,2284,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2302,b);tS(d,2284,(PQa(c)|0)+16|0);tS(d,2284,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2303,b);break}case 16:{d=a+16|0;tS(d,2304,b);tS(d,2284,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2305,b);tS(d,2284,(FRa(c)|0)+16|0);tS(d,2284,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2306,b);tS(d,2284,(DRa(c)|0)+16|0);tS(d,2284,(DRa(c)|0)+12|0);tS(d,2284,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2307,b);tS(d,2284,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2308,b);MQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2309,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2284,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2310,b);break}case 23:{tS(a+16|0,2311,b);break}default:hb()}while(0);return}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1250,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1243,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1252,b);PQ(d,(vSa(c)|0)+16|0);tS(d,1243,(vSa(c)|0)+12|0);tS(d,1243,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1253,b);tS(d,1243,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1254,b);PQ(d,($Ra(c)|0)+16|0);PQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1255,b);tS(d,1243,(NRa(c)|0)+28|0);PQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1259,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1243,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1260,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1243,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1261,b);b=IQa(c)|0;tS(d,1243,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1243,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1262,b);break}case 10:{d=a+16|0;tS(d,1263,b);tS(d,1243,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1264,b);break}case 12:{d=a+16|0;tS(d,1265,b);tS(d,1243,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1266,b);tS(d,1243,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1267,b);tS(d,1243,(PRa(c)|0)+28|0);tS(d,1243,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1268,b);tS(d,1243,(bRa(c)|0)+24|0);tS(d,1243,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1269,b);tS(d,1243,(wQa(c)|0)+24|0);tS(d,1243,(wQa(c)|0)+20|0);tS(d,1243,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1270,b);tS(d,1243,(QQa(c)|0)+20|0);tS(d,1243,(QQa(c)|0)+16|0);tS(d,1243,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1271,b);tS(d,1243,(PQa(c)|0)+16|0);tS(d,1243,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1272,b);break}case 16:{d=a+16|0;tS(d,1273,b);tS(d,1243,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1274,b);tS(d,1243,(FRa(c)|0)+16|0);tS(d,1243,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1275,b);tS(d,1243,(DRa(c)|0)+16|0);tS(d,1243,(DRa(c)|0)+12|0);tS(d,1243,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1276,b);tS(d,1243,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1256,b);PQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1277,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1243,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1278,b);break}case 23:{tS(a+16|0,1257,b);break}default:hb()}while(0);return}function Ld(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1030,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1023,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1032,b);QQ(d,(vSa(c)|0)+16|0);tS(d,1023,(vSa(c)|0)+12|0);tS(d,1023,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1033,b);tS(d,1023,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1034,b);QQ(d,($Ra(c)|0)+16|0);QQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1035,b);tS(d,1023,(NRa(c)|0)+28|0);QQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1039,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1023,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1040,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1023,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1041,b);b=IQa(c)|0;tS(d,1023,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1023,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1042,b);break}case 10:{d=a+16|0;tS(d,1043,b);tS(d,1023,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1044,b);break}case 12:{d=a+16|0;tS(d,1045,b);tS(d,1023,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1046,b);tS(d,1023,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1047,b);tS(d,1023,(PRa(c)|0)+28|0);tS(d,1023,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1048,b);tS(d,1023,(bRa(c)|0)+24|0);tS(d,1023,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1049,b);tS(d,1023,(wQa(c)|0)+24|0);tS(d,1023,(wQa(c)|0)+20|0);tS(d,1023,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1050,b);tS(d,1023,(QQa(c)|0)+20|0);tS(d,1023,(QQa(c)|0)+16|0);tS(d,1023,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1051,b);tS(d,1023,(PQa(c)|0)+16|0);tS(d,1023,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1052,b);break}case 16:{d=a+16|0;tS(d,1053,b);tS(d,1023,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1054,b);tS(d,1023,(FRa(c)|0)+16|0);tS(d,1023,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1055,b);tS(d,1023,(DRa(c)|0)+16|0);tS(d,1023,(DRa(c)|0)+12|0);tS(d,1023,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1056,b);tS(d,1023,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1036,b);QQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1057,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1023,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1058,b);break}case 23:{tS(a+16|0,1037,b);break}default:hb()}while(0);return}function Md(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1155,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1148,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1157,b);RQ(d,(vSa(c)|0)+16|0);tS(d,1148,(vSa(c)|0)+12|0);tS(d,1148,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1158,b);tS(d,1148,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1159,b);RQ(d,($Ra(c)|0)+16|0);RQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1160,b);tS(d,1148,(NRa(c)|0)+28|0);RQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1164,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1148,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1165,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1148,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1166,b);b=IQa(c)|0;tS(d,1148,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1148,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1167,b);break}case 10:{d=a+16|0;tS(d,1168,b);tS(d,1148,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1169,b);break}case 12:{d=a+16|0;tS(d,1170,b);tS(d,1148,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1171,b);tS(d,1148,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1172,b);tS(d,1148,(PRa(c)|0)+28|0);tS(d,1148,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1173,b);tS(d,1148,(bRa(c)|0)+24|0);tS(d,1148,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1174,b);tS(d,1148,(wQa(c)|0)+24|0);tS(d,1148,(wQa(c)|0)+20|0);tS(d,1148,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1175,b);tS(d,1148,(QQa(c)|0)+20|0);tS(d,1148,(QQa(c)|0)+16|0);tS(d,1148,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1176,b);tS(d,1148,(PQa(c)|0)+16|0);tS(d,1148,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1177,b);break}case 16:{d=a+16|0;tS(d,1178,b);tS(d,1148,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1179,b);tS(d,1148,(FRa(c)|0)+16|0);tS(d,1148,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1180,b);tS(d,1148,(DRa(c)|0)+16|0);tS(d,1148,(DRa(c)|0)+12|0);tS(d,1148,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1181,b);tS(d,1148,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1161,b);RQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1182,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1148,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1183,b);break}case 23:{tS(a+16|0,1162,b);break}default:hb()}while(0);return}function Nd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2015,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2014,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2016,b);SQ(d,(vSa(c)|0)+16|0);tS(d,2014,(vSa(c)|0)+12|0);tS(d,2014,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2017,b);tS(d,2014,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2018,b);SQ(d,($Ra(c)|0)+16|0);SQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2019,b);tS(d,2014,(NRa(c)|0)+28|0);SQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2020,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2014,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2021,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2014,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2022,b);b=IQa(c)|0;tS(d,2014,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2014,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2023,b);break}case 10:{d=a+16|0;tS(d,2024,b);tS(d,2014,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2025,b);break}case 12:{d=a+16|0;tS(d,2026,b);tS(d,2014,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2027,b);tS(d,2014,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2028,b);tS(d,2014,(PRa(c)|0)+28|0);tS(d,2014,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2029,b);tS(d,2014,(bRa(c)|0)+24|0);tS(d,2014,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2030,b);tS(d,2014,(wQa(c)|0)+24|0);tS(d,2014,(wQa(c)|0)+20|0);tS(d,2014,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2031,b);tS(d,2014,(QQa(c)|0)+20|0);tS(d,2014,(QQa(c)|0)+16|0);tS(d,2014,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2032,b);tS(d,2014,(PQa(c)|0)+16|0);tS(d,2014,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2033,b);break}case 16:{d=a+16|0;tS(d,2034,b);tS(d,2014,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2035,b);tS(d,2014,(FRa(c)|0)+16|0);tS(d,2014,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2036,b);tS(d,2014,(DRa(c)|0)+16|0);tS(d,2014,(DRa(c)|0)+12|0);tS(d,2014,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2037,b);tS(d,2014,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2038,b);SQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2039,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2014,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2040,b);break}case 23:{tS(a+16|0,2041,b);break}default:hb()}while(0);return}function Od(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2714,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2713,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2715,b);YQ(d,(vSa(c)|0)+16|0);tS(d,2713,(vSa(c)|0)+12|0);tS(d,2713,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2716,b);tS(d,2713,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2717,b);YQ(d,($Ra(c)|0)+16|0);YQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2718,b);tS(d,2713,(NRa(c)|0)+28|0);YQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2719,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2713,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2720,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2713,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2721,b);b=IQa(c)|0;tS(d,2713,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2713,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2722,b);break}case 10:{d=a+16|0;tS(d,2723,b);tS(d,2713,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2724,b);break}case 12:{d=a+16|0;tS(d,2725,b);tS(d,2713,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2726,b);tS(d,2713,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2727,b);tS(d,2713,(PRa(c)|0)+28|0);tS(d,2713,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2728,b);tS(d,2713,(bRa(c)|0)+24|0);tS(d,2713,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2729,b);tS(d,2713,(wQa(c)|0)+24|0);tS(d,2713,(wQa(c)|0)+20|0);tS(d,2713,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2730,b);tS(d,2713,(QQa(c)|0)+20|0);tS(d,2713,(QQa(c)|0)+16|0);tS(d,2713,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2731,b);tS(d,2713,(PQa(c)|0)+16|0);tS(d,2713,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2732,b);break}case 16:{d=a+16|0;tS(d,2733,b);tS(d,2713,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2734,b);tS(d,2713,(FRa(c)|0)+16|0);tS(d,2713,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2735,b);tS(d,2713,(DRa(c)|0)+16|0);tS(d,2713,(DRa(c)|0)+12|0);tS(d,2713,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2736,b);tS(d,2713,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2737,b);YQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2738,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2713,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2739,b);break}case 23:{tS(a+16|0,2740,b);break}default:hb()}while(0);return}function Pd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2249,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2248,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2250,b);_Q(d,(vSa(c)|0)+16|0);tS(d,2248,(vSa(c)|0)+12|0);tS(d,2248,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2251,b);tS(d,2248,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2252,b);_Q(d,($Ra(c)|0)+16|0);_Q(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2253,b);tS(d,2248,(NRa(c)|0)+28|0);_Q(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2254,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2248,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2255,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2248,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2256,b);b=IQa(c)|0;tS(d,2248,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2248,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2257,b);break}case 10:{d=a+16|0;tS(d,2258,b);tS(d,2248,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2259,b);break}case 12:{d=a+16|0;tS(d,2260,b);tS(d,2248,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2261,b);tS(d,2248,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2262,b);tS(d,2248,(PRa(c)|0)+28|0);tS(d,2248,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2263,b);tS(d,2248,(bRa(c)|0)+24|0);tS(d,2248,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2264,b);tS(d,2248,(wQa(c)|0)+24|0);tS(d,2248,(wQa(c)|0)+20|0);tS(d,2248,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2265,b);tS(d,2248,(QQa(c)|0)+20|0);tS(d,2248,(QQa(c)|0)+16|0);tS(d,2248,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2266,b);tS(d,2248,(PQa(c)|0)+16|0);tS(d,2248,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2267,b);break}case 16:{d=a+16|0;tS(d,2268,b);tS(d,2248,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2269,b);tS(d,2248,(FRa(c)|0)+16|0);tS(d,2248,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2270,b);tS(d,2248,(DRa(c)|0)+16|0);tS(d,2248,(DRa(c)|0)+12|0);tS(d,2248,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2271,b);tS(d,2248,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2272,b);_Q(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2273,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2248,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2274,b);break}case 23:{tS(a+16|0,2275,b);break}default:hb()}while(0);return}function Qd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2744,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2741,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2745,b);$Q(d,(vSa(c)|0)+16|0);tS(d,2741,(vSa(c)|0)+12|0);tS(d,2741,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2746,b);tS(d,2741,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2747,b);$Q(d,($Ra(c)|0)+16|0);$Q(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2748,b);tS(d,2741,(NRa(c)|0)+28|0);$Q(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2749,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2741,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2750,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2741,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2751,b);b=IQa(c)|0;tS(d,2741,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2741,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2752,b);break}case 10:{d=a+16|0;tS(d,2753,b);tS(d,2741,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2754,b);break}case 12:{d=a+16|0;tS(d,2755,b);tS(d,2741,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2756,b);tS(d,2741,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2757,b);tS(d,2741,(PRa(c)|0)+28|0);tS(d,2741,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2758,b);tS(d,2741,(bRa(c)|0)+24|0);tS(d,2741,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2759,b);tS(d,2741,(wQa(c)|0)+24|0);tS(d,2741,(wQa(c)|0)+20|0);tS(d,2741,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2760,b);tS(d,2741,(QQa(c)|0)+20|0);tS(d,2741,(QQa(c)|0)+16|0);tS(d,2741,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2761,b);tS(d,2741,(PQa(c)|0)+16|0);tS(d,2741,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2762,b);break}case 16:{d=a+16|0;tS(d,2763,b);tS(d,2741,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2764,b);tS(d,2741,(FRa(c)|0)+16|0);tS(d,2741,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2765,b);tS(d,2741,(DRa(c)|0)+16|0);tS(d,2741,(DRa(c)|0)+12|0);tS(d,2741,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2766,b);tS(d,2741,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2767,b);$Q(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2768,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2741,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2769,b);break}case 23:{tS(a+16|0,2770,b);break}default:hb()}while(0);return}function Rd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1430,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1417,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1431,b);bR(d,(vSa(c)|0)+16|0);tS(d,1417,(vSa(c)|0)+12|0);tS(d,1417,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1432,b);tS(d,1417,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1433,b);bR(d,($Ra(c)|0)+16|0);bR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1434,b);tS(d,1417,(NRa(c)|0)+28|0);bR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1435,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1417,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1436,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1417,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1437,b);b=IQa(c)|0;tS(d,1417,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1417,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1438,b);break}case 10:{d=a+16|0;tS(d,1439,b);tS(d,1417,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1440,b);break}case 12:{d=a+16|0;tS(d,1441,b);tS(d,1417,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1442,b);tS(d,1417,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1443,b);tS(d,1417,(PRa(c)|0)+28|0);tS(d,1417,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1444,b);tS(d,1417,(bRa(c)|0)+24|0);tS(d,1417,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1445,b);tS(d,1417,(wQa(c)|0)+24|0);tS(d,1417,(wQa(c)|0)+20|0);tS(d,1417,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1446,b);tS(d,1417,(QQa(c)|0)+20|0);tS(d,1417,(QQa(c)|0)+16|0);tS(d,1417,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1447,b);tS(d,1417,(PQa(c)|0)+16|0);tS(d,1417,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1448,b);break}case 16:{d=a+16|0;tS(d,1449,b);tS(d,1417,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1450,b);tS(d,1417,(FRa(c)|0)+16|0);tS(d,1417,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1451,b);tS(d,1417,(DRa(c)|0)+16|0);tS(d,1417,(DRa(c)|0)+12|0);tS(d,1417,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1452,b);tS(d,1417,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1453,b);bR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1454,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1417,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1455,b);break}case 23:{tS(a+16|0,1456,b);break}default:hb()}while(0);return}function Sd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1901,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1898,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1902,b);gR(d,(vSa(c)|0)+16|0);tS(d,1898,(vSa(c)|0)+12|0);tS(d,1898,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1903,b);tS(d,1898,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1904,b);gR(d,($Ra(c)|0)+16|0);gR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1905,b);tS(d,1898,(NRa(c)|0)+28|0);gR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1906,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1898,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1907,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1898,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1908,b);b=IQa(c)|0;tS(d,1898,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1898,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1909,b);break}case 10:{d=a+16|0;tS(d,1910,b);tS(d,1898,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1911,b);break}case 12:{d=a+16|0;tS(d,1912,b);tS(d,1898,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1913,b);tS(d,1898,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1914,b);tS(d,1898,(PRa(c)|0)+28|0);tS(d,1898,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1915,b);tS(d,1898,(bRa(c)|0)+24|0);tS(d,1898,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1916,b);tS(d,1898,(wQa(c)|0)+24|0);tS(d,1898,(wQa(c)|0)+20|0);tS(d,1898,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1917,b);tS(d,1898,(QQa(c)|0)+20|0);tS(d,1898,(QQa(c)|0)+16|0);tS(d,1898,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1918,b);tS(d,1898,(PQa(c)|0)+16|0);tS(d,1898,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1919,b);break}case 16:{d=a+16|0;tS(d,1920,b);tS(d,1898,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1921,b);tS(d,1898,(FRa(c)|0)+16|0);tS(d,1898,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1922,b);tS(d,1898,(DRa(c)|0)+16|0);tS(d,1898,(DRa(c)|0)+12|0);tS(d,1898,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1923,b);tS(d,1898,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1924,b);gR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1925,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1898,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1926,b);break}case 23:{tS(a+16|0,1927,b);break}default:hb()}while(0);return}function Td(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2651,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2650,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2652,b);pR(d,(vSa(c)|0)+16|0);tS(d,2650,(vSa(c)|0)+12|0);tS(d,2650,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2653,b);tS(d,2650,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2654,b);pR(d,($Ra(c)|0)+16|0);pR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2655,b);tS(d,2650,(NRa(c)|0)+28|0);pR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2656,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2650,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2657,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2650,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2658,b);b=IQa(c)|0;tS(d,2650,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2650,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2659,b);break}case 10:{d=a+16|0;tS(d,2660,b);tS(d,2650,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2661,b);break}case 12:{d=a+16|0;tS(d,2662,b);tS(d,2650,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2663,b);tS(d,2650,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2664,b);tS(d,2650,(PRa(c)|0)+28|0);tS(d,2650,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2665,b);tS(d,2650,(bRa(c)|0)+24|0);tS(d,2650,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2666,b);tS(d,2650,(wQa(c)|0)+24|0);tS(d,2650,(wQa(c)|0)+20|0);tS(d,2650,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2667,b);tS(d,2650,(QQa(c)|0)+20|0);tS(d,2650,(QQa(c)|0)+16|0);tS(d,2650,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2668,b);tS(d,2650,(PQa(c)|0)+16|0);tS(d,2650,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2669,b);break}case 16:{d=a+16|0;tS(d,2670,b);tS(d,2650,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2671,b);tS(d,2650,(FRa(c)|0)+16|0);tS(d,2650,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2672,b);tS(d,2650,(DRa(c)|0)+16|0);tS(d,2650,(DRa(c)|0)+12|0);tS(d,2650,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2673,b);tS(d,2650,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2674,b);pR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2675,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2650,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2676,b);break}case 23:{tS(a+16|0,2677,b);break}default:hb()}while(0);return}function Ud(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2865,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2861,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2862,b);qR(d,(vSa(c)|0)+16|0);tS(d,2861,(vSa(c)|0)+12|0);tS(d,2861,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2866,b);tS(d,2861,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2867,b);qR(d,($Ra(c)|0)+16|0);qR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2868,b);tS(d,2861,(NRa(c)|0)+28|0);qR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2869,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2861,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2870,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2861,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2871,b);b=IQa(c)|0;tS(d,2861,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2861,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2872,b);break}case 10:{d=a+16|0;tS(d,2873,b);tS(d,2861,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2874,b);break}case 12:{d=a+16|0;tS(d,2875,b);tS(d,2861,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2876,b);tS(d,2861,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2877,b);tS(d,2861,(PRa(c)|0)+28|0);tS(d,2861,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2878,b);tS(d,2861,(bRa(c)|0)+24|0);tS(d,2861,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2879,b);tS(d,2861,(wQa(c)|0)+24|0);tS(d,2861,(wQa(c)|0)+20|0);tS(d,2861,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2880,b);tS(d,2861,(QQa(c)|0)+20|0);tS(d,2861,(QQa(c)|0)+16|0);tS(d,2861,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2881,b);tS(d,2861,(PQa(c)|0)+16|0);tS(d,2861,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2882,b);break}case 16:{d=a+16|0;tS(d,2883,b);tS(d,2861,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2884,b);tS(d,2861,(FRa(c)|0)+16|0);tS(d,2861,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2885,b);tS(d,2861,(DRa(c)|0)+16|0);tS(d,2861,(DRa(c)|0)+12|0);tS(d,2861,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2886,b);tS(d,2861,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2887,b);qR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2888,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2861,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2889,b);break}case 23:{tS(a+16|0,2890,b);break}default:hb()}while(0);return}function Vd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,935,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,928,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,937,b);VQ(d,(vSa(c)|0)+16|0);tS(d,928,(vSa(c)|0)+12|0);tS(d,928,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,938,b);tS(d,928,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,939,b);VQ(d,($Ra(c)|0)+16|0);VQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,940,b);tS(d,928,(NRa(c)|0)+28|0);VQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,944,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,928,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,945,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,928,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,946,b);b=IQa(c)|0;tS(d,928,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,928,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,947,b);break}case 10:{d=a+16|0;tS(d,948,b);tS(d,928,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,949,b);break}case 12:{d=a+16|0;tS(d,950,b);tS(d,928,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,951,b);tS(d,928,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,952,b);tS(d,928,(PRa(c)|0)+28|0);tS(d,928,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,953,b);tS(d,928,(bRa(c)|0)+24|0);tS(d,928,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,954,b);tS(d,928,(wQa(c)|0)+24|0);tS(d,928,(wQa(c)|0)+20|0);tS(d,928,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,955,b);tS(d,928,(QQa(c)|0)+20|0);tS(d,928,(QQa(c)|0)+16|0);tS(d,928,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,956,b);tS(d,928,(PQa(c)|0)+16|0);tS(d,928,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,957,b);break}case 16:{d=a+16|0;tS(d,958,b);tS(d,928,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,959,b);tS(d,928,(FRa(c)|0)+16|0);tS(d,928,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,960,b);tS(d,928,(DRa(c)|0)+16|0);tS(d,928,(DRa(c)|0)+12|0);tS(d,928,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,961,b);tS(d,928,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,941,b);VQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,962,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,928,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,963,b);break}case 23:{tS(a+16|0,942,b);break}default:hb()}while(0);return}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,812,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,805,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,814,b);WQ(d,(vSa(c)|0)+16|0);tS(d,805,(vSa(c)|0)+12|0);tS(d,805,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,815,b);tS(d,805,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,816,b);WQ(d,($Ra(c)|0)+16|0);WQ(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,817,b);tS(d,805,(NRa(c)|0)+28|0);WQ(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,821,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,805,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,822,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,805,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,823,b);b=IQa(c)|0;tS(d,805,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,805,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,824,b);break}case 10:{d=a+16|0;tS(d,825,b);tS(d,805,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,826,b);break}case 12:{d=a+16|0;tS(d,827,b);tS(d,805,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,828,b);tS(d,805,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,829,b);tS(d,805,(PRa(c)|0)+28|0);tS(d,805,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,830,b);tS(d,805,(bRa(c)|0)+24|0);tS(d,805,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,831,b);tS(d,805,(wQa(c)|0)+24|0);tS(d,805,(wQa(c)|0)+20|0);tS(d,805,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,832,b);tS(d,805,(QQa(c)|0)+20|0);tS(d,805,(QQa(c)|0)+16|0);tS(d,805,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,833,b);tS(d,805,(PQa(c)|0)+16|0);tS(d,805,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,834,b);break}case 16:{d=a+16|0;tS(d,835,b);tS(d,805,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,836,b);tS(d,805,(FRa(c)|0)+16|0);tS(d,805,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,837,b);tS(d,805,(DRa(c)|0)+16|0);tS(d,805,(DRa(c)|0)+12|0);tS(d,805,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,838,b);tS(d,805,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,818,b);WQ(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,839,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,805,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,840,b);break}case 23:{tS(a+16|0,819,b);break}default:hb()}while(0);return}function Xd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1808,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1807,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1809,b);tR(d,(vSa(c)|0)+16|0);tS(d,1807,(vSa(c)|0)+12|0);tS(d,1807,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1810,b);tS(d,1807,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1811,b);tR(d,($Ra(c)|0)+16|0);tR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1812,b);tS(d,1807,(NRa(c)|0)+28|0);tR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1813,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1807,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1814,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1807,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1815,b);b=IQa(c)|0;tS(d,1807,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1807,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1816,b);break}case 10:{d=a+16|0;tS(d,1817,b);tS(d,1807,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1818,b);break}case 12:{d=a+16|0;tS(d,1819,b);tS(d,1807,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1820,b);tS(d,1807,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1821,b);tS(d,1807,(PRa(c)|0)+28|0);tS(d,1807,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1822,b);tS(d,1807,(bRa(c)|0)+24|0);tS(d,1807,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1823,b);tS(d,1807,(wQa(c)|0)+24|0);tS(d,1807,(wQa(c)|0)+20|0);tS(d,1807,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1824,b);tS(d,1807,(QQa(c)|0)+20|0);tS(d,1807,(QQa(c)|0)+16|0);tS(d,1807,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1825,b);tS(d,1807,(PQa(c)|0)+16|0);tS(d,1807,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1826,b);break}case 16:{d=a+16|0;tS(d,1827,b);tS(d,1807,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1828,b);tS(d,1807,(FRa(c)|0)+16|0);tS(d,1807,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1829,b);tS(d,1807,(DRa(c)|0)+16|0);tS(d,1807,(DRa(c)|0)+12|0);tS(d,1807,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1830,b);tS(d,1807,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1831,b);tR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1832,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1807,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1833,b);break}case 23:{tS(a+16|0,1834,b);break}default:hb()}while(0);return}function Yd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1379,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1378,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1380,b);uR(d,(vSa(c)|0)+16|0);tS(d,1378,(vSa(c)|0)+12|0);tS(d,1378,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1381,b);tS(d,1378,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1382,b);uR(d,($Ra(c)|0)+16|0);uR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1383,b);tS(d,1378,(NRa(c)|0)+28|0);uR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1384,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1378,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1385,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1378,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1386,b);b=IQa(c)|0;tS(d,1378,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1378,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1387,b);break}case 10:{d=a+16|0;tS(d,1388,b);tS(d,1378,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1389,b);break}case 12:{d=a+16|0;tS(d,1390,b);tS(d,1378,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1391,b);tS(d,1378,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1392,b);tS(d,1378,(PRa(c)|0)+28|0);tS(d,1378,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1393,b);tS(d,1378,(bRa(c)|0)+24|0);tS(d,1378,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1394,b);tS(d,1378,(wQa(c)|0)+24|0);tS(d,1378,(wQa(c)|0)+20|0);tS(d,1378,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1395,b);tS(d,1378,(QQa(c)|0)+20|0);tS(d,1378,(QQa(c)|0)+16|0);tS(d,1378,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1396,b);tS(d,1378,(PQa(c)|0)+16|0);tS(d,1378,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1397,b);break}case 16:{d=a+16|0;tS(d,1398,b);tS(d,1378,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1399,b);tS(d,1378,(FRa(c)|0)+16|0);tS(d,1378,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1400,b);tS(d,1378,(DRa(c)|0)+16|0);tS(d,1378,(DRa(c)|0)+12|0);tS(d,1378,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1401,b);tS(d,1378,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1402,b);uR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1403,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1378,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1404,b);break}case 23:{tS(a+16|0,1405,b);break}default:hb()}while(0);return}function Zd(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1599,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1598,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1600,b);vR(d,(vSa(c)|0)+16|0);tS(d,1598,(vSa(c)|0)+12|0);tS(d,1598,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1601,b);tS(d,1598,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1602,b);vR(d,($Ra(c)|0)+16|0);vR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1603,b);tS(d,1598,(NRa(c)|0)+28|0);vR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1604,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1598,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1605,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1598,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1606,b);b=IQa(c)|0;tS(d,1598,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1598,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1607,b);break}case 10:{d=a+16|0;tS(d,1608,b);tS(d,1598,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1609,b);break}case 12:{d=a+16|0;tS(d,1610,b);tS(d,1598,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1611,b);tS(d,1598,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1612,b);tS(d,1598,(PRa(c)|0)+28|0);tS(d,1598,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1613,b);tS(d,1598,(bRa(c)|0)+24|0);tS(d,1598,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1614,b);tS(d,1598,(wQa(c)|0)+24|0);tS(d,1598,(wQa(c)|0)+20|0);tS(d,1598,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1615,b);tS(d,1598,(QQa(c)|0)+20|0);tS(d,1598,(QQa(c)|0)+16|0);tS(d,1598,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1616,b);tS(d,1598,(PQa(c)|0)+16|0);tS(d,1598,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1617,b);break}case 16:{d=a+16|0;tS(d,1618,b);tS(d,1598,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1619,b);tS(d,1598,(FRa(c)|0)+16|0);tS(d,1598,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1620,b);tS(d,1598,(DRa(c)|0)+16|0);tS(d,1598,(DRa(c)|0)+12|0);tS(d,1598,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1621,b);tS(d,1598,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1622,b);vR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1623,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1598,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1624,b);break}case 23:{tS(a+16|0,1625,b);break}default:hb()}while(0);return}function _d(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1339,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1336,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1340,b);wR(d,(vSa(c)|0)+16|0);tS(d,1336,(vSa(c)|0)+12|0);tS(d,1336,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1341,b);tS(d,1336,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1342,b);wR(d,($Ra(c)|0)+16|0);wR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1343,b);tS(d,1336,(NRa(c)|0)+28|0);wR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1344,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1336,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1345,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1336,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1346,b);b=IQa(c)|0;tS(d,1336,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1336,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1347,b);break}case 10:{d=a+16|0;tS(d,1348,b);tS(d,1336,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1349,b);break}case 12:{d=a+16|0;tS(d,1350,b);tS(d,1336,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1351,b);tS(d,1336,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1352,b);tS(d,1336,(PRa(c)|0)+28|0);tS(d,1336,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1353,b);tS(d,1336,(bRa(c)|0)+24|0);tS(d,1336,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1354,b);tS(d,1336,(wQa(c)|0)+24|0);tS(d,1336,(wQa(c)|0)+20|0);tS(d,1336,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1355,b);tS(d,1336,(QQa(c)|0)+20|0);tS(d,1336,(QQa(c)|0)+16|0);tS(d,1336,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1356,b);tS(d,1336,(PQa(c)|0)+16|0);tS(d,1336,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1357,b);break}case 16:{d=a+16|0;tS(d,1358,b);tS(d,1336,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1359,b);tS(d,1336,(FRa(c)|0)+16|0);tS(d,1336,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1360,b);tS(d,1336,(DRa(c)|0)+16|0);tS(d,1336,(DRa(c)|0)+12|0);tS(d,1336,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1361,b);tS(d,1336,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1362,b);wR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1363,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1336,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1364,b);break}case 23:{tS(a+16|0,1365,b);break}default:hb()}while(0);return}function $d(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+96|0;p=o+72|0;n=o+48|0;m=o+36|0;j=o+24|0;k=o+12|0;l=o;a:do if(((a|0)!=(c|0)?(b[a>>0]|0)==65:0)?(i=a+1|0,(i|0)!=(c|0)):0){e=b[i>>0]|0;if(e<<24>>24==95){n=a+2|0;c=Cc(n,c,d)|0;if((c|0)==(n|0))break;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break;a1(p,e+-12|0,2);a=j7a(123266)|0;n=b[p+11>>0]|0;if((a|0)==((n<<24>>24<0?f[p+4>>2]|0:n&255)|0)){x=0;a=ja(102,p|0,123266,a|0)|0;n=x;x=0;if(n&1){n=Ja(0)|0;y2a(n)}MTa(p);if(!a)LW((f[g>>2]|0)+-12|0)}else MTa(p);zoa((f[g>>2]|0)+-12|0,0,124707)|0;a=c;break}if((e+-49&255)<9){g=TX(i,c)|0;if((g|0)==(c|0))break;if((b[g>>0]|0)!=95)break;l=g+1|0;h=Cc(l,c,d)|0;if((h|0)==(l|0))break;c=d+4|0;e=f[c>>2]|0;if((f[d>>2]|0)==(e|0))break;a1(p,e+-12|0,2);a=j7a(123266)|0;l=b[p+11>>0]|0;if((a|0)==((l<<24>>24<0?f[p+4>>2]|0:l&255)|0)){x=0;a=ja(102,p|0,123266,a|0)|0;l=x;x=0;if(l&1){l=Ja(0)|0;y2a(l)}MTa(p);if(!a)LW((f[c>>2]|0)+-12|0)}else MTa(p);e=(f[c>>2]|0)+-12|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;UM(m,i,g);x=0;ja(101,m|0,0,123266)|0;l=x;x=0;if(l&1)a=Ia()|0;else{f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];f[n+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,n|0,123321)|0;l=x;x=0;do if(!(l&1)){f[p>>2]=f[n>>2];f[p+4>>2]=f[n+4>>2];f[p+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}l=b[p+11>>0]|0;k=l<<24>>24<0;x=0;ka(38,e|0,0,(k?f[p>>2]|0:p)|0,(k?f[p+4>>2]|0:l&255)|0)|0;l=x;x=0;if(l&1){a=Ia()|0;MTa(p);break}else{MTa(p);MTa(n);MTa(m);a=h;break a}}else a=Ia()|0;while(0);MTa(n)}MTa(m)}else{e=Bc(i,c,d)|0;if((e|0)==(i|0)|(e|0)==(c|0))break;if((b[e>>0]|0)!=95)break;i=e+1|0;h=Cc(i,c,d)|0;if((h|0)==(i|0))break;g=d+4|0;e=f[g>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break;CY(p,e+-24|0);e=f[g>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;OJa(e+(d*24|0)|0);a=d}f[g>>2]=e+-24;CY(n,e+-48|0);a=f[g>>2]|0;c=a+-24|0;e=c+11|0;if((b[e>>0]|0)<0){Z0a(f[c>>2]|0,0);f[a+-20>>2]=0;a=c}else{Z0a(c,0);b[e>>0]=0;a=c}yv(c);f[a>>2]=f[p>>2];f[a+4>>2]=f[p+4>>2];f[a+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}e=p+12|0;x=0;va(183,m|0,e|0,2);d=x;x=0;if(d&1)a=Ia()|0;else{a=j7a(123266)|0;d=b[m+11>>0]|0;if((a|0)==((d<<24>>24<0?f[m+4>>2]|0:d&255)|0)){x=0;a=ja(102,m|0,123266,a|0)|0;d=x;x=0;if(d&1){d=Ja(0)|0;y2a(d)}MTa(m);if(!a)LW(e)}else MTa(m);x=0;ua(3195,l|0,n|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;ja(101,l|0,0,123266)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[k>>2]=f[l>>2];f[k+4>>2]=f[l+4>>2];f[k+8>>2]=f[l+8>>2];a=0;while(1){if((a|0)==3)break;f[l+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,k|0,123321)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[j>>2]=f[k>>2];f[j+4>>2]=f[k+4>>2];f[j+8>>2]=f[k+8>>2];a=0;while(1){if((a|0)==3)break;f[k+(a<<2)>>2]=0;a=a+1|0}d=b[e+11>>0]|0;i=d<<24>>24<0;x=0;ja(97,j|0,(i?f[e>>2]|0:e)|0,(i?f[p+16>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(j);break}f[m>>2]=f[j>>2];f[m+4>>2]=f[j+4>>2];f[m+8>>2]=f[j+8>>2];a=0;while(1){if((a|0)==3)break;f[j+(a<<2)>>2]=0;a=a+1|0}a=f[g>>2]|0;c=a+-12|0;e=c+11|0;if((b[e>>0]|0)<0){Z0a(f[c>>2]|0,0);f[a+-8>>2]=0;a=c}else{Z0a(c,0);b[e>>0]=0;a=c}yv(c);f[a>>2]=f[m>>2];f[a+4>>2]=f[m+4>>2];f[a+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}MTa(m);MTa(j);MTa(k);MTa(l);OJa(n);OJa(p);a=h;break a}while(0);MTa(k)}MTa(l)}}OJa(n);OJa(p)}Ua(a|0)}while(0);u=o;return a|0}function ae(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2405,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2404,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2406,b);BR(d,(vSa(c)|0)+16|0);tS(d,2404,(vSa(c)|0)+12|0);tS(d,2404,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2407,b);tS(d,2404,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2408,b);BR(d,($Ra(c)|0)+16|0);BR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2409,b);tS(d,2404,(NRa(c)|0)+28|0);BR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2410,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2404,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2411,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2404,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2412,b);b=IQa(c)|0;tS(d,2404,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2404,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2413,b);break}case 10:{d=a+16|0;tS(d,2414,b);tS(d,2404,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2415,b);break}case 12:{d=a+16|0;tS(d,2416,b);tS(d,2404,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2417,b);tS(d,2404,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2418,b);tS(d,2404,(PRa(c)|0)+28|0);tS(d,2404,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2419,b);tS(d,2404,(bRa(c)|0)+24|0);tS(d,2404,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2420,b);tS(d,2404,(wQa(c)|0)+24|0);tS(d,2404,(wQa(c)|0)+20|0);tS(d,2404,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2421,b);tS(d,2404,(QQa(c)|0)+20|0);tS(d,2404,(QQa(c)|0)+16|0);tS(d,2404,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2422,b);tS(d,2404,(PQa(c)|0)+16|0);tS(d,2404,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2423,b);break}case 16:{d=a+16|0;tS(d,2424,b);tS(d,2404,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2425,b);tS(d,2404,(FRa(c)|0)+16|0);tS(d,2404,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2426,b);tS(d,2404,(DRa(c)|0)+16|0);tS(d,2404,(DRa(c)|0)+12|0);tS(d,2404,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2427,b);tS(d,2404,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2428,b);BR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2429,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2404,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2430,b);break}case 23:{tS(a+16|0,2431,b);break}default:hb()}while(0);return}function be(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2433,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2432,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2434,b);CR(d,(vSa(c)|0)+16|0);tS(d,2432,(vSa(c)|0)+12|0);tS(d,2432,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2435,b);tS(d,2432,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2436,b);CR(d,($Ra(c)|0)+16|0);CR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2437,b);tS(d,2432,(NRa(c)|0)+28|0);CR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2438,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2432,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2439,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2432,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2440,b);b=IQa(c)|0;tS(d,2432,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2432,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2441,b);break}case 10:{d=a+16|0;tS(d,2442,b);tS(d,2432,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2443,b);break}case 12:{d=a+16|0;tS(d,2444,b);tS(d,2432,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2445,b);tS(d,2432,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2446,b);tS(d,2432,(PRa(c)|0)+28|0);tS(d,2432,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2447,b);tS(d,2432,(bRa(c)|0)+24|0);tS(d,2432,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2448,b);tS(d,2432,(wQa(c)|0)+24|0);tS(d,2432,(wQa(c)|0)+20|0);tS(d,2432,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2449,b);tS(d,2432,(QQa(c)|0)+20|0);tS(d,2432,(QQa(c)|0)+16|0);tS(d,2432,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2450,b);tS(d,2432,(PQa(c)|0)+16|0);tS(d,2432,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2451,b);break}case 16:{d=a+16|0;tS(d,2452,b);tS(d,2432,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2453,b);tS(d,2432,(FRa(c)|0)+16|0);tS(d,2432,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2454,b);tS(d,2432,(DRa(c)|0)+16|0);tS(d,2432,(DRa(c)|0)+12|0);tS(d,2432,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2455,b);tS(d,2432,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2456,b);CR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2457,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2432,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2458,b);break}case 23:{tS(a+16|0,2459,b);break}default:hb()}while(0);return}function ce(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2464,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2463,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2465,b);DR(d,(vSa(c)|0)+16|0);tS(d,2463,(vSa(c)|0)+12|0);tS(d,2463,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2466,b);tS(d,2463,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2467,b);DR(d,($Ra(c)|0)+16|0);DR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2468,b);tS(d,2463,(NRa(c)|0)+28|0);DR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2469,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2463,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2470,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2463,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2471,b);b=IQa(c)|0;tS(d,2463,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2463,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2472,b);break}case 10:{d=a+16|0;tS(d,2473,b);tS(d,2463,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2474,b);break}case 12:{d=a+16|0;tS(d,2475,b);tS(d,2463,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2476,b);tS(d,2463,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2477,b);tS(d,2463,(PRa(c)|0)+28|0);tS(d,2463,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2478,b);tS(d,2463,(bRa(c)|0)+24|0);tS(d,2463,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2479,b);tS(d,2463,(wQa(c)|0)+24|0);tS(d,2463,(wQa(c)|0)+20|0);tS(d,2463,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2480,b);tS(d,2463,(QQa(c)|0)+20|0);tS(d,2463,(QQa(c)|0)+16|0);tS(d,2463,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2481,b);tS(d,2463,(PQa(c)|0)+16|0);tS(d,2463,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2482,b);break}case 16:{d=a+16|0;tS(d,2483,b);tS(d,2463,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2484,b);tS(d,2463,(FRa(c)|0)+16|0);tS(d,2463,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2485,b);tS(d,2463,(DRa(c)|0)+16|0);tS(d,2463,(DRa(c)|0)+12|0);tS(d,2463,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2486,b);tS(d,2463,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2487,b);DR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2488,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2463,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2489,b);break}case 23:{tS(a+16|0,2490,b);break}default:hb()}while(0);return}function de(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2776,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2775,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2777,b);ER(d,(vSa(c)|0)+16|0);tS(d,2775,(vSa(c)|0)+12|0);tS(d,2775,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2778,b);tS(d,2775,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2779,b);ER(d,($Ra(c)|0)+16|0);ER(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2780,b);tS(d,2775,(NRa(c)|0)+28|0);ER(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2781,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2775,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2782,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2775,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2783,b);b=IQa(c)|0;tS(d,2775,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2775,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2784,b);break}case 10:{d=a+16|0;tS(d,2785,b);tS(d,2775,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2786,b);break}case 12:{d=a+16|0;tS(d,2787,b);tS(d,2775,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2788,b);tS(d,2775,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2789,b);tS(d,2775,(PRa(c)|0)+28|0);tS(d,2775,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2790,b);tS(d,2775,(bRa(c)|0)+24|0);tS(d,2775,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2791,b);tS(d,2775,(wQa(c)|0)+24|0);tS(d,2775,(wQa(c)|0)+20|0);tS(d,2775,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2792,b);tS(d,2775,(QQa(c)|0)+20|0);tS(d,2775,(QQa(c)|0)+16|0);tS(d,2775,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2793,b);tS(d,2775,(PQa(c)|0)+16|0);tS(d,2775,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2794,b);break}case 16:{d=a+16|0;tS(d,2795,b);tS(d,2775,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2796,b);tS(d,2775,(FRa(c)|0)+16|0);tS(d,2775,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2797,b);tS(d,2775,(DRa(c)|0)+16|0);tS(d,2775,(DRa(c)|0)+12|0);tS(d,2775,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2798,b);tS(d,2775,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2799,b);ER(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2800,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2775,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2801,b);break}case 23:{tS(a+16|0,2802,b);break}default:hb()}while(0);return}function ee(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1571,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1570,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1572,b);FR(d,(vSa(c)|0)+16|0);tS(d,1570,(vSa(c)|0)+12|0);tS(d,1570,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1573,b);tS(d,1570,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1574,b);FR(d,($Ra(c)|0)+16|0);FR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1575,b);tS(d,1570,(NRa(c)|0)+28|0);FR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1576,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1570,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1577,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1570,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1578,b);b=IQa(c)|0;tS(d,1570,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1570,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1579,b);break}case 10:{d=a+16|0;tS(d,1580,b);tS(d,1570,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1581,b);break}case 12:{d=a+16|0;tS(d,1582,b);tS(d,1570,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1583,b);tS(d,1570,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1584,b);tS(d,1570,(PRa(c)|0)+28|0);tS(d,1570,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1585,b);tS(d,1570,(bRa(c)|0)+24|0);tS(d,1570,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1586,b);tS(d,1570,(wQa(c)|0)+24|0);tS(d,1570,(wQa(c)|0)+20|0);tS(d,1570,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1587,b);tS(d,1570,(QQa(c)|0)+20|0);tS(d,1570,(QQa(c)|0)+16|0);tS(d,1570,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1588,b);tS(d,1570,(PQa(c)|0)+16|0);tS(d,1570,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1589,b);break}case 16:{d=a+16|0;tS(d,1590,b);tS(d,1570,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1591,b);tS(d,1570,(FRa(c)|0)+16|0);tS(d,1570,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1592,b);tS(d,1570,(DRa(c)|0)+16|0);tS(d,1570,(DRa(c)|0)+12|0);tS(d,1570,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1593,b);tS(d,1570,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1594,b);FR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1595,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1570,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1596,b);break}case 23:{tS(a+16|0,1597,b);break}default:hb()}while(0);return}function fe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1753,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1747,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1749,b);KR(d,(vSa(c)|0)+16|0);tS(d,1747,(vSa(c)|0)+12|0);tS(d,1747,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1754,b);tS(d,1747,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1755,b);KR(d,($Ra(c)|0)+16|0);KR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1756,b);tS(d,1747,(NRa(c)|0)+28|0);KR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1757,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1747,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1758,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1747,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1759,b);b=IQa(c)|0;tS(d,1747,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1747,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1760,b);break}case 10:{d=a+16|0;tS(d,1761,b);tS(d,1747,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1762,b);break}case 12:{d=a+16|0;tS(d,1763,b);tS(d,1747,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1764,b);tS(d,1747,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1765,b);tS(d,1747,(PRa(c)|0)+28|0);tS(d,1747,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1766,b);tS(d,1747,(bRa(c)|0)+24|0);tS(d,1747,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1767,b);tS(d,1747,(wQa(c)|0)+24|0);tS(d,1747,(wQa(c)|0)+20|0);tS(d,1747,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1768,b);tS(d,1747,(QQa(c)|0)+20|0);tS(d,1747,(QQa(c)|0)+16|0);tS(d,1747,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1769,b);tS(d,1747,(PQa(c)|0)+16|0);tS(d,1747,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1770,b);break}case 16:{d=a+16|0;tS(d,1771,b);tS(d,1747,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1772,b);tS(d,1747,(FRa(c)|0)+16|0);tS(d,1747,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1773,b);tS(d,1747,(DRa(c)|0)+16|0);tS(d,1747,(DRa(c)|0)+12|0);tS(d,1747,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1774,b);tS(d,1747,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1775,b);KR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1776,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1747,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1777,b);break}case 23:{tS(a+16|0,1778,b);break}default:hb()}while(0);return}function ge(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2105,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2104,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2106,b);LR(d,(vSa(c)|0)+16|0);tS(d,2104,(vSa(c)|0)+12|0);tS(d,2104,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2107,b);tS(d,2104,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2108,b);LR(d,($Ra(c)|0)+16|0);LR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2109,b);tS(d,2104,(NRa(c)|0)+28|0);LR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2110,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2104,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2111,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2104,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2112,b);b=IQa(c)|0;tS(d,2104,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2104,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2113,b);break}case 10:{d=a+16|0;tS(d,2114,b);tS(d,2104,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2115,b);break}case 12:{d=a+16|0;tS(d,2116,b);tS(d,2104,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2117,b);tS(d,2104,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2118,b);tS(d,2104,(PRa(c)|0)+28|0);tS(d,2104,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2119,b);tS(d,2104,(bRa(c)|0)+24|0);tS(d,2104,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2120,b);tS(d,2104,(wQa(c)|0)+24|0);tS(d,2104,(wQa(c)|0)+20|0);tS(d,2104,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2121,b);tS(d,2104,(QQa(c)|0)+20|0);tS(d,2104,(QQa(c)|0)+16|0);tS(d,2104,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2122,b);tS(d,2104,(PQa(c)|0)+16|0);tS(d,2104,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2123,b);break}case 16:{d=a+16|0;tS(d,2124,b);tS(d,2104,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2125,b);tS(d,2104,(FRa(c)|0)+16|0);tS(d,2104,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2126,b);tS(d,2104,(DRa(c)|0)+16|0);tS(d,2104,(DRa(c)|0)+12|0);tS(d,2104,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2127,b);tS(d,2104,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2128,b);LR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2129,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2104,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2130,b);break}case 23:{tS(a+16|0,2131,b);break}default:hb()}while(0);return}function he(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2680,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2679,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2681,b);MR(d,(vSa(c)|0)+16|0);tS(d,2679,(vSa(c)|0)+12|0);tS(d,2679,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2682,b);tS(d,2679,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2683,b);MR(d,($Ra(c)|0)+16|0);MR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2684,b);tS(d,2679,(NRa(c)|0)+28|0);MR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2685,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2679,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2686,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2679,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2687,b);b=IQa(c)|0;tS(d,2679,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2679,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2688,b);break}case 10:{d=a+16|0;tS(d,2689,b);tS(d,2679,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2690,b);break}case 12:{d=a+16|0;tS(d,2691,b);tS(d,2679,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2692,b);tS(d,2679,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2693,b);tS(d,2679,(PRa(c)|0)+28|0);tS(d,2679,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2694,b);tS(d,2679,(bRa(c)|0)+24|0);tS(d,2679,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2695,b);tS(d,2679,(wQa(c)|0)+24|0);tS(d,2679,(wQa(c)|0)+20|0);tS(d,2679,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2696,b);tS(d,2679,(QQa(c)|0)+20|0);tS(d,2679,(QQa(c)|0)+16|0);tS(d,2679,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2697,b);tS(d,2679,(PQa(c)|0)+16|0);tS(d,2679,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2698,b);break}case 16:{d=a+16|0;tS(d,2699,b);tS(d,2679,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2700,b);tS(d,2679,(FRa(c)|0)+16|0);tS(d,2679,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2701,b);tS(d,2679,(DRa(c)|0)+16|0);tS(d,2679,(DRa(c)|0)+12|0);tS(d,2679,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2702,b);tS(d,2679,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2703,b);MR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2704,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2679,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2705,b);break}case 23:{tS(a+16|0,2706,b);break}default:hb()}while(0);return}function ie(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2045,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2044,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2046,b);NR(d,(vSa(c)|0)+16|0);tS(d,2044,(vSa(c)|0)+12|0);tS(d,2044,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2047,b);tS(d,2044,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2048,b);NR(d,($Ra(c)|0)+16|0);NR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2049,b);tS(d,2044,(NRa(c)|0)+28|0);NR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2050,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2044,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2051,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2044,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2052,b);b=IQa(c)|0;tS(d,2044,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2044,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2053,b);break}case 10:{d=a+16|0;tS(d,2054,b);tS(d,2044,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2055,b);break}case 12:{d=a+16|0;tS(d,2056,b);tS(d,2044,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2057,b);tS(d,2044,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2058,b);tS(d,2044,(PRa(c)|0)+28|0);tS(d,2044,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2059,b);tS(d,2044,(bRa(c)|0)+24|0);tS(d,2044,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2060,b);tS(d,2044,(wQa(c)|0)+24|0);tS(d,2044,(wQa(c)|0)+20|0);tS(d,2044,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2061,b);tS(d,2044,(QQa(c)|0)+20|0);tS(d,2044,(QQa(c)|0)+16|0);tS(d,2044,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2062,b);tS(d,2044,(PQa(c)|0)+16|0);tS(d,2044,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2063,b);break}case 16:{d=a+16|0;tS(d,2064,b);tS(d,2044,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2065,b);tS(d,2044,(FRa(c)|0)+16|0);tS(d,2044,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2066,b);tS(d,2044,(DRa(c)|0)+16|0);tS(d,2044,(DRa(c)|0)+12|0);tS(d,2044,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2067,b);tS(d,2044,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2068,b);NR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2069,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2044,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2070,b);break}case 23:{tS(a+16|0,2071,b);break}default:hb()}while(0);return}function je(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2804,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2803,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2805,b);PR(d,(vSa(c)|0)+16|0);tS(d,2803,(vSa(c)|0)+12|0);tS(d,2803,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2806,b);tS(d,2803,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2807,b);PR(d,($Ra(c)|0)+16|0);PR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2808,b);tS(d,2803,(NRa(c)|0)+28|0);PR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2809,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2803,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2810,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2803,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2811,b);b=IQa(c)|0;tS(d,2803,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2803,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2812,b);break}case 10:{d=a+16|0;tS(d,2813,b);tS(d,2803,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2814,b);break}case 12:{d=a+16|0;tS(d,2815,b);tS(d,2803,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2816,b);tS(d,2803,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2817,b);tS(d,2803,(PRa(c)|0)+28|0);tS(d,2803,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2818,b);tS(d,2803,(bRa(c)|0)+24|0);tS(d,2803,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2819,b);tS(d,2803,(wQa(c)|0)+24|0);tS(d,2803,(wQa(c)|0)+20|0);tS(d,2803,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2820,b);tS(d,2803,(QQa(c)|0)+20|0);tS(d,2803,(QQa(c)|0)+16|0);tS(d,2803,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2821,b);tS(d,2803,(PQa(c)|0)+16|0);tS(d,2803,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2822,b);break}case 16:{d=a+16|0;tS(d,2823,b);tS(d,2803,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2824,b);tS(d,2803,(FRa(c)|0)+16|0);tS(d,2803,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2825,b);tS(d,2803,(DRa(c)|0)+16|0);tS(d,2803,(DRa(c)|0)+12|0);tS(d,2803,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2826,b);tS(d,2803,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2827,b);PR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2828,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2803,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2829,b);break}case 23:{tS(a+16|0,2830,b);break}default:hb()}while(0);return} +function xc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0.0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,fa=0,ha=0,la=0,na=0,qa=0,ra=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0;zb=u;u=u+512|0;xb=zb+192|0;vb=zb+32|0;l=zb+500|0;z=zb+488|0;v=zb+484|0;w=zb+480|0;m=zb+506|0;D=zb+476|0;S=zb+472|0;Da=zb+460|0;Ga=zb+448|0;ca=zb+176|0;X=zb+160|0;A=zb+436|0;T=zb+144|0;ya=zb+424|0;_=zb+420|0;za=zb+128|0;Ja=zb+112|0;Y=zb+505|0;Ka=zb+504|0;Aa=zb+96|0;V=zb+80|0;$a=zb+416|0;Ya=zb+412|0;B=zb+408|0;$=zb+404|0;G=zb+400|0;H=zb+396|0;ub=zb+252|0;da=zb+392|0;ha=zb+388|0;fb=zb+384|0;gb=zb+380|0;hb=zb+376|0;U=zb+372|0;Z=zb+368|0;Va=zb+248|0;Pa=zb+364|0;Qa=zb+360|0;Za=zb+208|0;Ra=zb+356|0;Ta=zb+352|0;aa=zb+348|0;fa=zb+344|0;Wa=zb+340|0;Xa=zb+336|0;_a=zb+332|0;Ea=zb+328|0;Fa=zb+324|0;bb=zb+320|0;db=zb+316|0;eb=zb+312|0;E=zb+308|0;ab=zb+64|0;cb=zb+48|0;jb=zb+304|0;ib=zb+16|0;qb=zb+300|0;rb=zb+296|0;sb=zb+292|0;kb=zb+288|0;lb=zb+284|0;mb=zb;nb=zb+280|0;ob=zb+276|0;pb=zb+272|0;tb=zb+268|0;C=zb+256|0;yb=f[a+4>>2]|0;Eaa(c);k=Jbb(c)|0;e=f[c>>2]|0;a:do if(Oab(e)|0){x=0;d=ga(214,k|0)|0;c=x;x=0;b:do if(c&1)d=Ia()|0;else{e=f[d>>2]|0;f[vb>>2]=e;c:do if(!(qBa(f[a>>2]|0,vb)|0))if(!(g2a(e,f[33043]|0)|0)){d=yb+100|0;if((gV(d,e)|0)==(yb+104|0)){x=0;d=ia(62,134176,e|0)|0;zb=x;x=0;if(!(zb&1)?(x=0,ia(71,d|0,10)|0,zb=x,x=0,!(zb&1)):0){x=0;wa(71,63878,51387,1647,123616);x=0}d=Ia()|0;break b}else{x=0;d=ia(86,d|0,vb|0)|0;c=x;x=0;if(!(c&1)?(L1a(v,f[vb>>2]|0),q=f[d>>2]|0,x=0,f[xb>>2]=f[v>>2],q=ja(41,yb+8|0,xb|0,q|0)|0,yb=x,x=0,!(yb&1)):0){d=q;break}d=Ia()|0;break b}}else{x=0;d=ga(231,f[yb+4>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break b}L1a(xb,f[33043]|0);f[d+24>>2]=f[xb>>2];f[d+4>>2]=0;if(b[135321]|0)break;b[135321]=1;x=0;g=ga(212,24)|0;c=x;x=0;do if(!(c&1)?(mPa(g),L1a(xb,f[33043]|0),f[g>>2]=f[xb>>2],L1a(xb,f[33020]|0),f[g+4>>2]=f[xb>>2],L1a(xb,f[33043]|0),f[g+8>>2]=f[xb>>2],f[z>>2]=0,f[z+4>>2]=0,f[z+8>>2]=0,c=j7a(88358)|0,x=0,va(87,z|0,88358,c|0),c=x,x=0,!(c&1)):0){x=0;e=ia(55,z|0,f[yb>>2]|0)|0;c=x;x=0;if(!(c&1)){f[g+16>>2]=f[e>>2];MTa(z);f[g+12>>2]=0;x=0;ua(64,f[yb>>2]|0,g|0);yb=x;x=0;if(yb&1)break;else break c}else{d=Ia()|0;MTa(z);break b}}while(0);d=Ia()|0;break b}else{x=0;d=ga(230,f[yb+4>>2]|0)|0;yb=x;x=0;if((!(yb&1)?(n=f[f[a+8>>2]>>2]|0,L1a(l,f[vb>>2]|0),x=0,f[xb>>2]=f[l>>2],n=ia(85,n|0,xb|0)|0,yb=x,x=0,!(yb&1)):0)?(f[d+8>>2]=n,o=b9(f[a+12>>2]|0,vb)|0,x=0,o=ga(224,o|0)|0,yb=x,x=0,!(yb&1)):0){f[d+4>>2]=o;break}d=Ia()|0;break b}while(0);wb=1537;break a}while(0);wb=1538}else{if(zab(e)|0){x=0;d=ga(232,f[yb+4>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break}x=0;e=ga(215,k|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break}h=+p[e>>3];do if(!(ZYa(h)|0))if(wPa(h)|0){t$a(xb,ULa(h)|0);yb=d+8|0;f[yb>>2]=f[xb>>2];f[yb+4>>2]=f[xb+4>>2];f[yb+8>>2]=f[xb+8>>2];f[yb+12>>2]=f[xb+12>>2];break}else{pqa(xb,h);yb=d+8|0;f[yb>>2]=f[xb>>2];f[yb+4>>2]=f[xb+4>>2];f[yb+8>>2]=f[xb+8>>2];f[yb+12>>2]=f[xb+12>>2];break}else{t$a(xb,_Ea(h)|0);yb=d+8|0;f[yb>>2]=f[xb>>2];f[yb+4>>2]=f[xb+4>>2];f[yb+8>>2]=f[xb+8>>2];f[yb+12>>2]=f[xb+12>>2]}while(0);f[d+4>>2]=f[d+8>>2];wb=1537;break}if(D7a(e)|0){x=0;g=ga(223,k|0)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break}e=cbb(g)|0;j=f[e>>2]|0;f[vb>>2]=j;d:do if(qBa(f[a>>2]|0,vb)|0){x=0;d=ga(233,f[yb+4>>2]|0)|0;yb=x;x=0;if((!(yb&1)?(r=f[f[a+8>>2]>>2]|0,L1a(w,f[e>>2]|0),x=0,f[xb>>2]=f[w>>2],r=ia(85,r|0,xb|0)|0,yb=x,x=0,!(yb&1)):0)?(f[d+8>>2]=r,yb=f[a+16>>2]|0,s=bbb(g)|0,x=0,s=ia(87,f[yb+16>>2]|0,f[s>>2]|0)|0,yb=x,x=0,!(yb&1)):0){f[d+12>>2]=s;gLa(d,0);Aia(d);wb=71;break}d=Ia()|0;wb=72}else{if((gV(yb+100|0,j)|0)==(yb+104|0)){x=0;sa(3);c=x;x=0;if(c&1){d=Ia()|0;wb=72;break}x=0;e=ia(52,m|0,63974)|0;c=x;x=0;if(!(c&1)?(x=0,ia(52,e|0,j|0)|0,c=x,x=0,!(c&1)):0)lCa();Ia()|0;lCa()}i=yb+8|0;L1a(D,j);yb=f[a+16>>2]|0;e=bbb(g)|0;x=0;e=ia(87,f[yb+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(!(yb&1)?(x=0,f[xb>>2]=f[D>>2],d=ja(47,i|0,xb|0,e|0)|0,yb=x,x=0,!(yb&1)):0){e=Uea()|0;e:do if(!(ZTa(e)|0)){e=Jbb(e)|0;x=0;g=ia(46,e|0,f[33096]|0)|0;yb=x;x=0;do if(!(yb&1)){if(g)break e;x=0;e=ia(46,e|0,f[33287]|0)|0;yb=x;x=0;if(!(yb&1)){if(e)break e;L1a(S,j);e=f[(f[d+12>>2]|0)+4>>2]|0;x=0;f[xb>>2]=f[S>>2];e=ja(41,i|0,xb|0,e|0)|0;yb=x;x=0;if(!(yb&1)){x=0;d=ja(51,i|0,d|0,e|0)|0;yb=x;x=0;if(yb&1)break;wb=71;break d}}}while(0);d=Ia()|0;wb=72;break d}while(0);wb=71;break}d=Ia()|0;wb=72}while(0);if((wb|0)==71){wb=1537;break}else if((wb|0)==72){wb=1538;break}}if(Aab(e)|0){x=0;j=ga(234,k|0)|0;vb=x;x=0;do if(!(vb&1)?(g=bbb(j)|0,i=Jbb(f[g>>2]|0)|0,x=0,i=ia(46,i|0,f[33281]|0)|0,vb=x,x=0,!(vb&1)):0){if(!i){x=0;wa(71,64018,51387,1687,123616);x=0;break}e=f[g>>2]|0;x=0;d=ia(45,e|0,1)|0;vb=x;x=0;do if(!(vb&1)){vb=f[d>>2]|0;Jbb(vb)|0;if(!(Oab(f[vb>>2]|0)|0)){x=0;wa(71,64049,51387,1689,123616);x=0;break}x=0;d=ia(45,e|0,1)|0;vb=x;x=0;f:do if(!(vb&1)?(t=Jbb(f[d>>2]|0)|0,x=0,t=ga(214,t|0)|0,vb=x,x=0,!(vb&1)):0){vb=f[t>>2]|0;f[xb>>2]=vb;d=yb+112|0;if((gV(d,vb)|0)==(yb+116|0)){x=0;wa(71,64071,51387,1691,123616);x=0;d=Ia()|0;break}x=0;i=ia(88,d|0,xb|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break}k=yb+4|0;x=0;d=ga(235,f[k>>2]|0)|0;xb=x;x=0;g:do if(!(xb&1)){b[d+20>>0]=0;b[d+8>>0]=f[i>>2];x=0;ja(40,d+12|0,0,0)|0;xb=x;x=0;if(xb&1)break;x=0;ja(40,d+16|0,f[i>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;g=f[a+20>>2]|0;x=0;e=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;e=ja(48,f[g+16>>2]|0,f[e>>2]|0,f[i>>2]|0)|0;xb=x;x=0;if(xb&1)break;f[d+24>>2]=e;xb=f[a+16>>2]|0;e=cbb(j)|0;x=0;e=ia(87,f[xb+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;j=d+28|0;f[j>>2]=e;x=0;e=ga(224,f[i+8>>2]|0)|0;xb=x;x=0;if(xb&1)break;g=d+32|0;f[g>>2]=e;x=0;ta(454,d|0);xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;g=f[j>>2]|0;i=f[g+4>>2]|0;do if((e|0)!=(i|0)){if((e|0)==3&(i|0)==4){x=0;e=ga(236,f[k>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break f}else{f[e+8>>2]=44;f[e+12>>2]=f[j>>2];f[e+4>>2]=3;f[j>>2]=e;break}}if((e|0)==4&(i|0)==3){x=0;e=ia(89,yb|0,g|0)|0;yb=x;x=0;if(yb&1)break g;f[j>>2]=e;break}f[Da>>2]=0;f[Da+4>>2]=0;f[Da+8>>2]=0;yb=j7a(64103)|0;x=0;va(87,Da|0,64103,yb|0);yb=x;x=0;if(yb&1)break g;x=0;ua(69,Da|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;MTa(Da);break f}else{MTa(Da);break}}while(0);wb=1537;break a}while(0);d=Ia()|0}else wb=87;while(0);if((wb|0)==87)d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break}x=0;d=ia(45,c|0,0)|0;Da=x;x=0;h:do if(!(Da&1)?(j=Jbb(f[d>>2]|0)|0,x=0,j=ga(214,j|0)|0,Da=x,x=0,!(Da&1)):0){d=f[j>>2]|0;if(g2a(d,f[33289]|0)|0){x=0;d=ia(45,c|0,1)|0;vb=x;x=0;if(vb&1)break;if(!(KBa(f[d>>2]|0,133016)|0)){x=0;d=ia(45,c|0,1)|0;vb=x;x=0;if(vb&1)break;if(KBa(f[d>>2]|0,132952)|0)wb=120}else wb=120;if((wb|0)==120){x=0;d=ia(45,c|0,3)|0;wb=x;x=0;if(wb&1)break;wb=f[d>>2]|0;Jbb(wb)|0;if(zab(f[wb>>2]|0)|0){x=0;d=ia(45,c|0,3)|0;wb=x;x=0;if(wb&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;wb=x;x=0;if(wb&1)break;if(+p[d>>3]==0.0){e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;do if(!(yb&1)){x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(256,d|0,1);yb=x;x=0;if(!(yb&1)){wb=1537;break a}}while(0);d=Ia()|0;wb=1538;break a}}}i=yb+4|0;x=0;j=ga(237,f[i>>2]|0)|0;wb=x;x=0;do if((((((!(wb&1)?(J=a+16|0,K=f[J>>2]|0,x=0,L=ia(45,c|0,2)|0,a=x,x=0,!(a&1)):0)?(x=0,M=ia(87,f[K+16>>2]|0,f[L>>2]|0)|0,a=x,x=0,!(a&1)):0)?(xa=j+12|0,f[xa>>2]=M,N=f[J>>2]|0,x=0,O=ia(45,c|0,3)|0,a=x,x=0,!(a&1)):0)?(x=0,P=ia(87,f[N+16>>2]|0,f[O>>2]|0)|0,a=x,x=0,!(a&1)):0)?(Ba=j+16|0,f[Ba>>2]=P,x=0,Q=ia(45,c|0,1)|0,a=x,x=0,!(a&1)):0)?(R=Jbb(f[Q>>2]|0)|0,x=0,R=ga(214,R|0)|0,a=x,x=0,!(a&1)):0){g=f[R>>2]|0;x=0;d=ia(45,c|0,2)|0;a=x;x=0;if(a&1)break;e=f[d>>2]|0;x=0;d=ia(45,c|0,3)|0;c=x;x=0;if(c&1)break;x=0;d=ma(22,yb|0,g|0,e|0,f[d>>2]|0,f[(f[xa>>2]|0)+4>>2]|0)|0;c=x;x=0;if(c&1)break;e=j+8|0;f[e>>2]=d;x=0;ta(455,j|0);c=x;x=0;if(c&1)break;do if((f[e>>2]|0)==5){if(!(t6a(f[j+4>>2]|0)|0))break;x=0;d=ga(231,f[i>>2]|0)|0;c=x;x=0;do if(!(c&1)){L1a(xb,f[33023]|0);f[d+24>>2]=f[xb>>2];g=d+8|0;x=0;e=ia(89,yb|0,f[xa>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,g|0,e|0);c=x;x=0;if(c&1)break;x=0;e=ia(89,yb|0,f[Ba>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,g|0,e|0);c=x;x=0;if(c&1)break;f[d+4>>2]=4;if(b[135322]|0){wb=1537;break a}b[135322]=1;x=0;g=ga(212,24)|0;c=x;x=0;do if(!(c&1)){mPa(g);L1a(xb,f[33023]|0);f[g>>2]=f[xb>>2];L1a(xb,f[33020]|0);f[g+4>>2]=f[xb>>2];L1a(xb,f[33023]|0);f[g+8>>2]=f[xb>>2];f[Ga>>2]=0;f[Ga+4>>2]=0;f[Ga+8>>2]=0;c=j7a(64119)|0;x=0;va(87,Ga|0,64119,c|0);c=x;x=0;if(c&1)break;x=0;e=ia(55,Ga|0,f[yb>>2]|0)|0;c=x;x=0;if(!(c&1)){f[g+16>>2]=f[e>>2];MTa(Ga);f[g+12>>2]=0;x=0;ua(64,f[yb>>2]|0,g|0);yb=x;x=0;if(yb&1)break;else{wb=1537;break a}}else{d=Ia()|0;MTa(Ga);wb=1538;break a}}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(90,j|0,yb+40|0)|0;yb=x;x=0;if(!(yb&1)){wb=1537;break a}}while(0);d=Ia()|0;wb=1538;break a}if(g2a(d,f[33281]|0)|0){x=0;d=ia(45,c|0,1)|0;wb=x;x=0;do if(!(wb&1)){wb=f[d>>2]|0;d=Jbb(wb)|0;if(!(Oab(f[wb>>2]|0)|0)){x=0;wa(71,64123,51387,1753,123616);x=0;break}x=0;d=ga(214,d|0)|0;wb=x;x=0;do if(wb&1)d=Ia()|0;else{wb=f[d>>2]|0;f[xb>>2]=wb;d=yb+112|0;if((gV(d,wb)|0)==(yb+116|0)){x=0;wa(71,64071,51387,1755,123616);x=0;d=Ia()|0;break}x=0;i=ia(88,d|0,xb|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break}x=0;d=ga(238,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){b[d+20>>0]=0;b[d+8>>0]=f[i>>2];b[d+9>>0]=b[i+5>>0]|0;x=0;ja(40,d+12|0,0,0)|0;yb=x;x=0;if(yb&1)break;x=0;ja(40,d+16|0,f[i>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;g=f[a+20>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ja(48,f[g+16>>2]|0,f[e>>2]|0,f[i>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+24>>2]=e;x=0;e=ia(91,f[i>>2]|0,(b[i+4>>0]|0)==0|0)|0;yb=x;x=0;if(yb&1)break;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}do if(g2a(d,f[33267]|0)|0){x=0;d=ia(45,c|0,1)|0;ub=x;x=0;if(ub&1)break h;if(KBa(f[d>>2]|0,133024)|0){x=0;wa(80,vb|0,yb|0,c|0,1);ub=x;x=0;i:do if(ub&1)wb=185;else{j:do if(!(f[vb>>2]|0)){d=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;xb=x;x=0;k:do if(!(xb&1)){x=0;d=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;switch(f[d+4>>2]|0){case 1:{x=0;g=ga(236,f[yb+4>>2]|0)|0;xb=x;x=0;do if(!(xb&1)){x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;e=ia(92,yb|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[g+8>>2]=e?38:36;f[g+12>>2]=d;f[g+4>>2]=4;d=g;break j}while(0);d=Ia()|0;break i}case 3:{x=0;d=ia(89,yb|0,d|0)|0;yb=x;x=0;if(yb&1)break k;else break j}default:{x=0;ua(256,d|0,4);yb=x;x=0;if(yb&1)break k;else break j}}}while(0);d=Ia()|0;break i}else{x=0;f[xb>>2]=f[vb>>2];f[xb+4>>2]=f[vb+4>>2];f[xb+8>>2]=f[vb+8>>2];f[xb+12>>2]=f[vb+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1){wb=185;break i}}while(0);wb=1537;break a}while(0);if((wb|0)==185)d=Ia()|0;wb=1538;break a}x=0;d=ia(45,c|0,1)|0;wb=x;x=0;if(wb&1)break h;if(KBa(f[d>>2]|0,133020)|0){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;wb=f[d>>2]|0;Jbb(wb)|0;l:do if(!(zab(f[wb>>2]|0)|0)){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;d=Jbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33267]|0)|0;wb=x;x=0;if(wb&1)break h;do if(d){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;x=0;d=ia(45,f[d>>2]|0,1)|0;wb=x;x=0;if(wb&1)break h;if(!(KBa(f[d>>2]|0,133024)|0))break;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;x=0;d=ia(45,f[d>>2]|0,2)|0;wb=x;x=0;if(wb&1)break h;wb=f[d>>2]|0;Jbb(wb)|0;if(zab(f[wb>>2]|0)|0)break l}while(0);x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;i=ja(52,yb|0,f[d>>2]|0,f[a+12>>2]|0)|0;wb=x;x=0;if(wb&1)break;d=f[yb+4>>2]|0;if(!i){x=0;d=ga(237,d|0)|0;wb=x;x=0;do if(!(wb&1)){f[d+8>>2]=1;t$a(ca,0);x=0;f[xb>>2]=f[ca>>2];f[xb+4>>2]=f[ca+4>>2];f[xb+8>>2]=f[ca+8>>2];f[xb+12>>2]=f[ca+12>>2];e=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}x=0;d=ga(236,d|0)|0;yb=x;x=0;m:do if(!(yb&1)){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;switch(i|0){case 1:{e=4;g=7;break}case 2:{e=3;g=6;break}default:{x=0;sa(5);x=0;break m}}f[d+8>>2]=g;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ga(232,f[yb+4>>2]|0)|0;a=x;x=0;if(a&1){d=Ia()|0;wb=1538;break a}x=0;va(97,xb|0,yb|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break a}else{wb=d+8|0;f[wb>>2]=f[xb>>2];f[wb+4>>2]=f[xb+4>>2];f[wb+8>>2]=f[xb+8>>2];f[wb+12>>2]=f[xb+12>>2];f[d+4>>2]=f[wb>>2];wb=1537;break a}}x=0;d=ia(45,c|0,1)|0;wb=x;x=0;if(wb&1)break h;if(!(KBa(f[d>>2]|0,133e3)|0)){x=0;d=ia(45,c|0,1)|0;xb=x;x=0;if(xb&1)break h;if(!(KBa(f[d>>2]|0,133004)|0)){f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;yb=j7a(64142)|0;x=0;va(87,A|0,64142,yb|0);yb=x;x=0;if(yb&1)break h;x=0;ua(69,A|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;MTa(A);wb=1538;break a}else{MTa(A);break}}x=0;d=ga(236,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[d+8>>2]=20;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;d=Jbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33267]|0)|0;wb=x;x=0;if(wb&1)break h;do if(d){x=0;d=ia(45,c|0,2)|0;wb=x;x=0;if(wb&1)break h;x=0;d=ia(45,f[d>>2]|0,1)|0;wb=x;x=0;if(wb&1)break h;if(!(KBa(f[d>>2]|0,133e3)|0))break;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;e=Uea()|0;x=0;e=ia(93,yb|0,e|0)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}g=(f[i+4>>2]|0)==4;d=g^1;if(e|d)d=e|g?(e^1|d?27:31):25;else d=29;x=0;d=ja(53,f[yb+8>>2]|0,d|0,i|0)|0;c=x;x=0;if(!(c&1)?(x=0,Ca=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Ca;wb=1537;break a}d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ga(237,f[yb+4>>2]|0)|0;wb=x;x=0;do if(!(wb&1)){f[d+8>>2]=9;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;c=x;x=0;if(c&1)break;f[d+12>>2]=e;t$a(X,-1);x=0;f[xb>>2]=f[X>>2];f[xb+4>>2]=f[X+4>>2];f[xb+8>>2]=f[X+8>>2];f[xb+12>>2]=f[X+12>>2];e=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}else{if(g2a(d,f[33287]|0)|0){i=a+16|0;d=f[i>>2]|0;x=0;e=ia(45,c|0,1)|0;xb=x;x=0;if(!(xb&1)?(x=0,F=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0,xb=x,x=0,!(xb&1)):0){d=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;xb=x;x=0;do if(!(xb&1)?(x=0,ba=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0,xb=x,x=0,!(xb&1)):0){j=yb+8|0;x=0;g=ia(95,yb|0,F|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,c|0,3)|0;yb=x;x=0;if(yb&1)break;if(!(ZTa(f[d>>2]|0)|0)){e=f[i>>2]|0;x=0;d=ia(45,c|0,3)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break}else d=0;x=0;d=ka(8,j|0,g|0,ba|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}d=Ia()|0;wb=1538;break a}if(!(g2a(d,f[33099]|0)|0)){if(g2a(d,f[33288]|0)|0){x=0;d=ia(45,c|0,1)|0;xb=x;x=0;n:do if(!(xb&1)){if(!(ZTa(f[d>>2]|0)|0)){x=0;d=ia(45,c|0,1)|0;xb=x;x=0;if(xb&1)break;x=0;d=ja(57,yb|0,f[d>>2]|0,f[a+12>>2]|0)|0;xb=x;x=0;if(xb&1)break}else d=0;e=(f[f[a+8>>2]>>2]|0)+4|0;do if(!(b[f[a+28>>2]>>0]|0))f[e>>2]=d;else{if((f[e>>2]|0)==(d|0))break;x=0;wa(71,64449,51387,2262,123616);x=0;break n}while(0);x=0;d=ga(244,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){x=0;e=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;if(!(ZTa(f[e>>2]|0)|0)){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break}else e=0;f[d+8>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if(g2a(d,f[33096]|0)|0){Bab(vb);g=a+32|0;d=f[f[g>>2]>>2]|0;o:do if(Qab(d)|0){e=f[a+36>>2]|0;x=0;d=ga(245,d|0)|0;ub=x;x=0;do if(!(ub&1)){f[B>>2]=d;x=0;f[xb>>2]=f[B>>2];i=ia(97,e|0,xb|0)|0;ub=x;x=0;if(ub&1)break;f[vb>>2]=i;Sab(xb);f[f[g>>2]>>2]=f[xb>>2];d=f[a+44>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)!=(f[d+8>>2]|0)){f[g>>2]=i;f[e>>2]=(f[e>>2]|0)+4;wb=972;break o}x=0;ua(77,d|0,vb|0);ub=x;x=0;if(!(ub&1)){wb=972;break o}d=Ia()|0;break o}while(0);d=Ia()|0}else wb=972;while(0);p:do if((wb|0)==972){e=f[a+48>>2]|0;x=0;d=ia(45,c|0,1)|0;c=x;x=0;q:do if(!(c&1)){x=0;d=ja(48,f[e+16>>2]|0,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;c=f[vb>>2]|0;g=c;r:do if(Qab(c)|0){c=(f[a+44>>2]|0)+4|0;f[c>>2]=(f[c>>2]|0)+-4;c=f[a+36>>2]|0;f[$>>2]=g;x=0;f[xb>>2]=f[$>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1)break q;e=v$a(d)|0;do if(e|0){e=e+8|0;if(!(Oab(f[e>>2]|0)|0))break;f[e>>2]=g;break r}while(0);x=0;e=ga(221,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[e+8>>2]=g;x=0;ua(81,e+12|0,d|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,e|0);yb=x;x=0;if(yb&1)break;d=e;break r}while(0);d=Ia()|0;break p}while(0);wb=1537;break a}while(0);d=Ia()|0}while(0);wb=1538;break a}if(g2a(d,f[33278]|0)|0){x=0;d=ga(246,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){e=a+44|0;yb=f[e>>2]|0;if((f[yb+4>>2]|0)==(f[yb>>2]|0)){x=0;wa(71,64474,51387,2295,123616);x=0;break}x=0;g=ia(45,c|0,1)|0;yb=x;x=0;s:do if(yb&1)d=Ia()|0;else{t:do if(ZTa(f[g>>2]|0)|0)L1a(vb,f[(f[(f[e>>2]|0)+4>>2]|0)+-4>>2]|0);else{g=f[a+36>>2]|0;x=0;e=ia(45,c|0,1)|0;yb=x;x=0;do if(!(yb&1)){e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ga(245,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[G>>2]=e;x=0;f[xb>>2]=f[G>>2];e=ia(98,g|0,xb|0)|0;yb=x;x=0;if(yb&1)break;L1a(vb,e);break t}while(0);d=Ia()|0;break s}while(0);f[d+8>>2]=f[vb>>2];wb=1537;break a}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if(g2a(d,f[33277]|0)|0){x=0;d=ga(246,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){e=a+52|0;yb=f[e>>2]|0;if((f[yb+4>>2]|0)==(f[yb>>2]|0)){x=0;wa(71,64496,51387,2300,123616);x=0;break}x=0;g=ia(45,c|0,1)|0;yb=x;x=0;u:do if(yb&1)d=Ia()|0;else{v:do if(ZTa(f[g>>2]|0)|0)L1a(vb,f[(f[(f[e>>2]|0)+4>>2]|0)+-4>>2]|0);else{g=f[a+36>>2]|0;x=0;e=ia(45,c|0,1)|0;yb=x;x=0;do if(!(yb&1)){e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ga(247,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[H>>2]=e;x=0;f[xb>>2]=f[H>>2];e=ia(98,g|0,xb|0)|0;yb=x;x=0;if(yb&1)break;L1a(vb,e);break v}while(0);d=Ia()|0;break u}while(0);f[d+8>>2]=f[vb>>2];wb=1537;break a}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if(g2a(d,f[33285]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;do if(!(tb&1)){tb=f[d>>2]|0;Jbb(tb)|0;if(zab(f[tb>>2]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(216,d|0)|0;tb=x;x=0;if(tb&1)break;k=(d|0)==1}else k=0;v=yb+4|0;x=0;d=ga(248,f[v>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}Sab(vb);Sab(ub);g=a+32|0;e=f[f[g>>2]>>2]|0;do if(Oab(e)|0){x=0;va(88,xb|0,64521,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=f[xb>>2];x=0;va(88,xb|0,64531,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}else{e=f[xb>>2]|0;f[ub>>2]=e;t=vb;wb=1042;break}}else{x=0;e=ga(245,e|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=e;x=0;e=ga(247,f[f[g>>2]>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}else{f[ub>>2]=e;Sab(xb);f[f[g>>2]>>2]=f[xb>>2];t=vb;wb=1042;break}}while(0);w:do if((wb|0)==1042){s=a+36|0;g=f[s>>2]|0;L1a(da,f[t>>2]|0);x=0;f[xb>>2]=f[da>>2];g=ia(97,g|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=g;o=f[s>>2]|0;L1a(ha,e);x=0;f[xb>>2]=f[ha>>2];o=ia(97,o|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[ub>>2]=o;L1a(xb,o);q=d+8|0;f[q>>2]=f[xb>>2];r=a+44|0;e=f[r>>2]|0;g=e+4|0;i=f[g>>2]|0;j=o;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,vb|0);vb=x;x=0;if(!(vb&1))wb=1047}else{f[i>>2]=f[t>>2];f[g>>2]=(f[g>>2]|0)+4;wb=1047}x:do if((wb|0)==1047){n=a+52|0;e=f[n>>2]|0;g=e+4|0;i=f[g>>2]|0;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,ub|0);wb=x;x=0;if(wb&1)break}else{f[i>>2]=j;f[g>>2]=(f[g>>2]|0)+4}y:do if(k){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break x;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;c=x;x=0;if(c&1)break x;i=d+12|0;f[i>>2]=e;g=yb+8|0}else{x=0;i=ga(246,f[v>>2]|0)|0;wb=x;x=0;if(wb&1){d=Ia()|0;break w}L1a(xb,f[t>>2]|0);f[i+8>>2]=f[xb>>2];x=0;l=ga(249,f[v>>2]|0)|0;wb=x;x=0;do if(!(wb&1)){m=yb+8|0;k=a+16|0;e=f[k>>2]|0;x=0;g=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ja(53,f[m>>2]|0,20,e|0)|0;yb=x;x=0;if(yb&1)break;f[l+8>>2]=e;f[l+12>>2]=i;NI(l);x=0;e=ga(221,f[v>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){j=e+12|0;x=0;ua(81,j|0,l|0);yb=x;x=0;if(yb&1)break;i=f[k>>2]|0;x=0;g=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;g=ia(87,f[i+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,j|0,g|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,e|0);yb=x;x=0;if(yb&1)break;i=d+12|0;f[i>>2]=e;g=m;break y}while(0);d=Ia()|0;break w}while(0);d=Ia()|0;break w}while(0);L1a(fb,f[t>>2]|0);x=0;f[xb>>2]=f[fb>>2];g=ka(11,g|0,e|0,xb|0,0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break w}x=0;e=ga(246,f[v>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[e+8>>2]=f[q>>2];x=0;ua(81,g+12|0,e|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,g|0);yb=x;x=0;if(yb&1)break;f[i>>2]=g;v_a(d);yb=(f[n>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=(f[r>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=f[s>>2]|0;L1a(gb,o);x=0;f[xb>>2]=f[gb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;yb=f[s>>2]|0;L1a(hb,f[t>>2]|0);x=0;f[xb>>2]=f[hb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break w}while(0);d=Ia()|0}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}if(g2a(d,f[33284]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1)break h;tb=f[d>>2]|0;Jbb(tb)|0;do if(zab(f[tb>>2]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1)break h;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;tb=x;x=0;if(tb&1)break h;if(!(+p[d>>3]==0.0))break;Sab(vb);e=a+32|0;d=f[f[e>>2]>>2]|0;do if(Oab(d)|0){x=0;va(88,xb|0,64540,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}else{d=f[xb>>2]|0;f[vb>>2]=d;m=vb;wb=1094;break}}else{x=0;d=ga(245,d|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}else{f[vb>>2]=d;Sab(xb);f[f[e>>2]>>2]=f[xb>>2];m=vb;wb=1094;break}}while(0);do if((wb|0)==1094){l=a+36|0;tb=f[l>>2]|0;L1a(U,d);x=0;f[xb>>2]=f[U>>2];d=ia(97,tb|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=d;d=f[l>>2]|0;x=0;ua(65,Z|0,64548);tb=x;x=0;do if(tb&1)wb=1115;else{x=0;f[xb>>2]=f[Z>>2];d=ia(97,d|0,xb|0)|0;tb=x;x=0;if(tb&1){wb=1115;break}f[ub>>2]=d;j=a+44|0;e=f[j>>2]|0;g=e+4|0;i=f[g>>2]|0;k=d;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,vb|0);vb=x;x=0;if(vb&1){wb=1115;break}}else{f[i>>2]=f[m>>2];f[g>>2]=(f[g>>2]|0)+4}i=a+52|0;d=f[i>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0)){x=0;ua(77,d|0,ub|0);vb=x;x=0;if(vb&1){wb=1115;break}}else{f[g>>2]=k;f[e>>2]=(f[e>>2]|0)+4}e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(c&1)wb=1116;else{x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1){wb=1116;break}f[Va>>2]=d;c=(f[i>>2]|0)+4|0;f[c>>2]=(f[c>>2]|0)+-4;c=(f[j>>2]|0)+4|0;f[c>>2]=(f[c>>2]|0)+-4;c=f[l>>2]|0;f[Pa>>2]=k;x=0;f[xb>>2]=f[Pa>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1116;break}c=f[l>>2]|0;L1a(Qa,f[m>>2]|0);x=0;f[xb>>2]=f[Qa>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1116;break}f[Ra>>2]=k;f[xb>>2]=f[Ra>>2];EGa(Za,xb);x=0;ua(258,Za|0,Va|0);c=x;x=0;z:do if(c&1)d=Ia()|0;else{d=f[yb+4>>2]|0;A:do if(!(f[Za+32>>2]|0)){x=0;d=ga(221,d|0)|0;c=x;x=0;do if(!(c&1)){g=d+12|0;x=0;ua(81,g|0,f[Va>>2]|0);c=x;x=0;if(c&1)break;if(v2a(f[(f[Va>>2]|0)+4>>2]|0)|0){x=0;e=ga(250,f[yb+8>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,g|0,e|0);yb=x;x=0;if(yb&1)break}L1a(xb,f[m>>2]|0);f[d+8>>2]=f[xb>>2];x=0;ta(439,d|0);yb=x;x=0;if(!(yb&1))break A}while(0);d=Ia()|0;break z}else{x=0;d=ga(248,d|0)|0;c=x;x=0;if(!(c&1)?(f[d+12>>2]=f[Va>>2],f[d+8>>2]=k,v_a(d),L1a(Ta,f[m>>2]|0),x=0,f[xb>>2]=f[Ta>>2],Sa=ka(11,yb+8|0,d|0,xb|0,0)|0,yb=x,x=0,!(yb&1)):0){d=Sa;break}d=Ia()|0;break z}while(0);P_a(Za);wb=1537;break a}while(0);P_a(Za)}while(0);if((wb|0)==1116)d=Ia()|0}while(0);if((wb|0)==1115)d=Ia()|0}while(0);wb=1538;break a}while(0);q=yb+4|0;x=0;d=ga(248,f[q>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}Sab(vb);Sab(ub);g=a+32|0;e=f[f[g>>2]>>2]|0;do if(Oab(e)|0){x=0;va(88,xb|0,64566,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=f[xb>>2];x=0;va(88,xb|0,64573,1);tb=x;x=0;if(tb&1){d=Ia()|0;break}else{e=f[xb>>2]|0;f[ub>>2]=e;r=vb;wb=1142;break}}else{x=0;e=ga(245,e|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=e;x=0;e=ga(247,f[f[g>>2]>>2]|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}else{f[ub>>2]=e;Sab(xb);f[f[g>>2]>>2]=f[xb>>2];r=vb;wb=1142;break}}while(0);B:do if((wb|0)==1142){o=a+36|0;g=f[o>>2]|0;L1a(aa,f[r>>2]|0);x=0;f[xb>>2]=f[aa>>2];g=ia(97,g|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[vb>>2]=g;n=f[o>>2]|0;L1a(fa,e);x=0;f[xb>>2]=f[fa>>2];n=ia(97,n|0,xb|0)|0;tb=x;x=0;if(tb&1){d=Ia()|0;break}f[ub>>2]=n;L1a(xb,n);f[d+8>>2]=f[xb>>2];m=a+44|0;e=f[m>>2]|0;g=e+4|0;i=f[g>>2]|0;j=n;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,vb|0);vb=x;x=0;if(!(vb&1))wb=1147}else{f[i>>2]=f[r>>2];f[g>>2]=(f[g>>2]|0)+4;wb=1147}do if((wb|0)==1147){l=a+52|0;e=f[l>>2]|0;g=e+4|0;i=f[g>>2]|0;if((i|0)==(f[e+8>>2]|0)){x=0;ua(77,e|0,ub|0);wb=x;x=0;if(wb&1)break}else{f[i>>2]=j;f[g>>2]=(f[g>>2]|0)+4}j=a+16|0;e=f[j>>2]|0;x=0;g=ia(45,c|0,2)|0;a=x;x=0;if(a&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;a=x;x=0;if(a&1)break;k=d+12|0;f[k>>2]=e;a=(f[l>>2]|0)+4|0;f[a>>2]=(f[a>>2]|0)+-4;a=(f[m>>2]|0)+4|0;f[a>>2]=(f[a>>2]|0)+-4;a=f[o>>2]|0;L1a(Wa,n);x=0;f[xb>>2]=f[Wa>>2];ua(257,a|0,xb|0);a=x;x=0;if(a&1)break;a=f[o>>2]|0;L1a(Xa,f[r>>2]|0);x=0;f[xb>>2]=f[Xa>>2];ua(257,a|0,xb|0);a=x;x=0;if(a&1)break;x=0;i=ga(246,f[q>>2]|0)|0;a=x;x=0;do if(!(a&1)){L1a(xb,n);f[i+8>>2]=f[xb>>2];g=f[j>>2]|0;x=0;e=ia(45,c|0,1)|0;c=x;x=0;if(c&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;c=x;x=0;if(c&1)break;f[i+16>>2]=e;Cqa(i);e=f[k>>2]|0;L1a(_a,f[r>>2]|0);x=0;f[xb>>2]=f[_a>>2];e=ka(11,yb+8|0,e|0,xb|0,i|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break B}else{f[k>>2]=e;v_a(d);wb=1537;break a}}while(0);d=Ia()|0;break B}while(0);d=Ia()|0}while(0);wb=1538;break a}if(g2a(d,f[33283]|0)|0){x=0;d=ia(45,c|0,1)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}z=f[d>>2]|0;x=0;d=ia(45,c|0,2)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}q=f[d>>2]|0;x=0;d=ia(45,c|0,3)|0;tb=x;x=0;if(tb&1){d=Ia()|0;wb=1538;break a}v=f[d>>2]|0;x=0;d=ia(45,c|0,4)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}r=f[d>>2]|0;w=yb+4|0;x=0;y=ga(248,f[w>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}Sab(vb);Sab(ub);e=a+32|0;d=f[f[e>>2]>>2]|0;do if(Oab(d)|0){x=0;va(88,xb|0,64579,1);c=x;x=0;if(c&1){d=Ia()|0;break}f[vb>>2]=f[xb>>2];x=0;va(88,xb|0,64587,1);c=x;x=0;if(c&1){d=Ia()|0;break}else{d=f[xb>>2]|0;f[ub>>2]=d;t=vb;wb=1187;break}}else{x=0;d=ga(245,d|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}f[vb>>2]=d;x=0;d=ga(247,f[f[e>>2]>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}else{f[ub>>2]=d;Sab(xb);f[f[e>>2]>>2]=f[xb>>2];t=vb;wb=1187;break}}while(0);C:do if((wb|0)==1187){s=a+36|0;e=f[s>>2]|0;L1a(Ea,f[t>>2]|0);x=0;f[xb>>2]=f[Ea>>2];e=ia(97,e|0,xb|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}f[vb>>2]=e;n=f[s>>2]|0;L1a(Fa,d);x=0;f[xb>>2]=f[Fa>>2];n=ia(97,n|0,xb|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break}f[ub>>2]=n;L1a(xb,n);m=y+8|0;f[m>>2]=f[xb>>2];o=a+44|0;d=f[o>>2]|0;e=d+4|0;g=f[e>>2]|0;i=n;if((g|0)==(f[d+8>>2]|0)){x=0;ua(77,d|0,vb|0);c=x;x=0;if(!(c&1))wb=1192}else{f[g>>2]=f[t>>2];f[e>>2]=(f[e>>2]|0)+4;wb=1192}do if((wb|0)==1192){l=a+52|0;d=f[l>>2]|0;e=d+4|0;g=f[e>>2]|0;if((g|0)==(f[d+8>>2]|0)){x=0;ua(77,d|0,ub|0);c=x;x=0;if(c&1)break}else{f[g>>2]=i;f[e>>2]=(f[e>>2]|0)+4}x=0;e=ga(246,f[w>>2]|0)|0;c=x;x=0;if(c&1){d=Ia()|0;break C}L1a(xb,f[t>>2]|0);f[e+8>>2]=f[xb>>2];x=0;i=ga(249,f[w>>2]|0)|0;c=x;x=0;do if(!(c&1)){j=yb+8|0;k=a+16|0;x=0;d=ia(87,f[(f[k>>2]|0)+16>>2]|0,q|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(53,f[j>>2]|0,20,d|0)|0;yb=x;x=0;if(yb&1)break;f[i+8>>2]=d;f[i+12>>2]=e;NI(i);x=0;g=ga(221,f[w>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){e=g+12|0;x=0;ua(81,e|0,i|0);yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[(f[k>>2]|0)+16>>2]|0,r|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,e|0,d|0);yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[(f[k>>2]|0)+16>>2]|0,v|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,e|0,d|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,g|0);yb=x;x=0;if(yb&1)break;e=y+12|0;f[e>>2]=g;x=0;d=ga(246,f[w>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;break C}f[d+8>>2]=f[m>>2];yb=f[e>>2]|0;L1a(bb,f[t>>2]|0);x=0;f[xb>>2]=f[bb>>2];d=ka(11,j|0,yb|0,xb|0,d|0)|0;yb=x;x=0;do if(!(yb&1)){f[e>>2]=d;v_a(y);yb=(f[l>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=(f[o>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=f[s>>2]|0;L1a(db,n);x=0;f[xb>>2]=f[db>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;yb=f[s>>2]|0;L1a(eb,f[t>>2]|0);x=0;f[xb>>2]=f[eb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;x=0;d=ga(221,f[w>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){g=d+12|0;x=0;e=ia(87,f[(f[k>>2]|0)+16>>2]|0,z|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,g|0,e|0);yb=x;x=0;if(yb&1)break;x=0;ua(81,g|0,y|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,d|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break C}while(0);d=Ia()|0;break C}while(0);d=Ia()|0;break C}while(0);d=Ia()|0;break C}while(0);d=Ia()|0}while(0);wb=1538;break a}if(g2a(d,f[33279]|0)|0){e=a+32|0;if(!(Oab(f[f[e>>2]>>2]|0)|0)){x=0;wa(71,52195,51387,2465,123616);x=0;break h}x=0;d=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break h;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(214,d|0)|0;yb=x;x=0;if(yb&1)break h;f[f[e>>2]>>2]=f[d>>2];e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break h;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break h;else{wb=1537;break a}}if(g2a(d,f[33290]|0)|0){x=0;d=ga(249,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){i=a+16|0;e=f[i>>2]|0;x=0;g=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+8>>2]=e;e=f[i>>2]|0;x=0;g=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;g=f[i>>2]|0;x=0;e=ia(45,c|0,3)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;NI(d);wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}if(g2a(d,f[33282]|0)|0){x=0;d=ia(45,c|0,1)|0;ub=x;x=0;if(ub&1)break h;ub=f[d>>2]|0;Jbb(ub)|0;D:do if(Aab(f[ub>>2]|0)|0){x=0;d=ia(45,c|0,1)|0;ub=x;x=0;do if(!(ub&1)){k=Jbb(f[d>>2]|0)|0;x=0;k=ga(234,k|0)|0;ub=x;x=0;if(ub&1)break;e=bbb(k)|0;e=f[e>>2]|0;d=Jbb(e)|0;x=0;d=ia(46,d|0,f[33281]|0)|0;ub=x;x=0;do if(!(ub&1)){if(!d)break D;x=0;d=ia(45,e|0,1)|0;ub=x;x=0;if(ub&1)break;ub=f[d>>2]|0;Jbb(ub)|0;if(!(Oab(f[ub>>2]|0)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33289]|0)|0;ub=x;x=0;if(ub&1)break;if(!d)break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;ub=x;x=0;if(ub&1)break;if(!(KBa(f[d>>2]|0,132960)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;ub=x;x=0;if(ub&1)break;ub=f[d>>2]|0;Jbb(ub)|0;if(!(Oab(f[ub>>2]|0)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;ub=x;x=0;if(ub&1)break;j=yb+200|0;if(!(KBa(f[d>>2]|0,j)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,3)|0;ub=x;x=0;if(ub&1)break;ub=f[d>>2]|0;Jbb(ub)|0;if(!(zab(f[ub>>2]|0)|0))break D;x=0;d=ia(45,e|0,2)|0;ub=x;x=0;if(ub&1)break;x=0;d=ia(45,f[d>>2]|0,3)|0;ub=x;x=0;if(ub&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;ub=x;x=0;if(ub&1)break;if(!(+p[d>>3]==2.0))break D;x=0;d=ia(45,e|0,1)|0;ub=x;x=0;E:do if(ub&1)wb=1291;else{d=Jbb(f[d>>2]|0)|0;x=0;d=ga(214,d|0)|0;ub=x;x=0;if(ub&1){wb=1291;break}ub=f[d>>2]|0;f[xb>>2]=ub;d=yb+112|0;F:do if((gV(d,ub)|0)!=(yb+116|0)){x=0;d=ia(88,d|0,xb|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break E}g=f[d+8>>2]|0;n4a(vb,0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;G:do if(xb&1)wb=1293;else{d=Jbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33289]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break}do if(d){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(KBa(f[d>>2]|0,133016)|0)){wb=1294;break}x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Jbb(xb)|0;if(!(zab(f[xb>>2]|0)|0)){wb=1294;break}x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Jbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(+p[d>>3]==0.0)){wb=1294;break}x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}else{i=0;wb=1314}}else wb=1294;while(0);H:do if((wb|0)==1294){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Jbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33267]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}do if(d){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(KBa(f[d>>2]|0,133024)|0))break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}else{i=1;wb=1314;break H}}while(0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Jbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33099]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!d)break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Jbb(xb)|0;if(!(Oab(f[xb>>2]|0)|0))break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(KBa(f[d>>2]|0,yb+132|0)|0))break;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}else{i=2;wb=1314}}while(0);I:do if((wb|0)==1314){e=f[d>>2]|0;f[vb>>2]=e;d=Jbb(e)|0;x=0;d=ia(46,d|0,f[33281]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!d)break;x=0;d=ia(45,e|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Jbb(xb)|0;if(!(Oab(f[xb>>2]|0)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Jbb(f[d>>2]|0)|0;x=0;d=ia(46,d|0,f[33289]|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!d)break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(KBa(f[d>>2]|0,132960)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Jbb(xb)|0;if(!(Oab(f[xb>>2]|0)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(KBa(f[d>>2]|0,j)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}xb=f[d>>2]|0;Jbb(xb)|0;if(!(zab(f[xb>>2]|0)|0))break;x=0;d=ia(45,e|0,2)|0;xb=x;x=0;if(xb&1){wb=1293;break G}x=0;d=ia(45,f[d>>2]|0,3)|0;xb=x;x=0;if(xb&1){wb=1293;break G}d=Jbb(f[d>>2]|0)|0;x=0;d=ga(215,d|0)|0;xb=x;x=0;if(xb&1){wb=1293;break G}if(!(+p[d>>3]==2.0))break;e=cbb(k)|0;e=f[e>>2]|0;J:do if(!g){g=(i|0)==1;if((i+-1|0)>>>0>=2)break I;x=0;d=ga(236,f[yb+4>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[d+8>>2]=45;x=0;e=ia(87,f[(f[a+16>>2]|0)+16>>2]|0,e|0)|0;c=x;x=0;if(c&1)break;f[d+12>>2]=e;f[d+4>>2]=3;if(!g)break J;x=0;d=ia(89,yb|0,d|0)|0;yb=x;x=0;if(!(yb&1))break J}while(0);d=Ia()|0;break G}else{if(!((g|0)==2&(i|0)==0))break I;x=0;d=ga(236,f[yb+4>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[d+8>>2]=33;x=0;e=ia(87,f[(f[a+16>>2]|0)+16>>2]|0,e|0)|0;c=x;x=0;if(c&1)break;g=d+12|0;f[g>>2]=e;if((f[e+4>>2]|0)==4){x=0;e=ja(53,f[yb+8>>2]|0,44,e|0)|0;yb=x;x=0;if(yb&1)break;f[g>>2]=e}f[d+4>>2]=1;break J}while(0);d=Ia()|0;break G}while(0);wb=1537;break a}while(0);break F}while(0);if((wb|0)==1293)d=Ia()|0;break E}while(0);break D}while(0);if((wb|0)==1291)d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ga(221,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){j=d+12|0;i=a+16|0;e=f[i>>2]|0;x=0;g=ia(45,c|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,j|0,e|0);yb=x;x=0;if(yb&1)break;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(81,j|0,e|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,d|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}if(!(g2a(d,f[33276]|0)|0))break;Sab(vb);e=a+32|0;d=f[f[e>>2]>>2]|0;do if(Oab(d)|0){x=0;va(88,xb|0,117151,1);hb=x;x=0;if(hb&1){d=Ia()|0;break}else{d=f[xb>>2]|0;f[vb>>2]=d;e=vb;wb=1376;break}}else{x=0;d=ga(245,d|0)|0;hb=x;x=0;if(hb&1){d=Ia()|0;break}else{f[vb>>2]=d;Sab(xb);f[f[e>>2]>>2]=f[xb>>2];e=vb;wb=1376;break}}while(0);K:do if((wb|0)==1376){F=a+36|0;wb=f[F>>2]|0;L1a(E,d);x=0;f[xb>>2]=f[E>>2];d=ia(97,wb|0,xb|0)|0;wb=x;x=0;if(wb&1){d=Ia()|0;break}f[vb>>2]=d;D=a+44|0;g=f[D>>2]|0;i=g+4|0;j=f[i>>2]|0;do if((j|0)==(f[g+8>>2]|0)){x=0;ua(77,g|0,vb|0);wb=x;x=0;if(!(wb&1))break;d=Ia()|0;break K}else{f[j>>2]=d;f[i>>2]=(f[i>>2]|0)+4}while(0);C=yb+4|0;x=0;o=ga(251,f[C>>2]|0)|0;wb=x;x=0;do if(!(wb&1)){d=f[a+16>>2]|0;x=0;g=ia(45,c|0,1)|0;wb=x;x=0;if(wb&1)break;x=0;d=ia(87,f[d+16>>2]|0,f[g>>2]|0)|0;wb=x;x=0;if(wb&1)break;z=o+28|0;f[z>>2]=d;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1){d=Ia()|0;break K}B=f[d>>2]|0;m=0;n=0;j=0;k=0;t=0;v=0;while(1){A=Jbb(B)|0;x=0;d=ga(213,A|0)|0;c=x;x=0;if(c&1){wb=1391;break}if(n>>>0>=d>>>0){wb=1387;break}x=0;d=ia(45,B|0,n|0)|0;c=x;x=0;if(c&1){wb=1398;break}x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1){wb=1399;break}d=f[d>>2]|0;Jbb(d)|0;if(Nab(f[d>>2]|0)|0){l=m;g=t;d=v}else{x=0;va(97,xb|0,yb|0,d|0);c=x;x=0;if(c&1){wb=1400;break}x=0;d=ga(252,xb|0)|0;i=I;c=x;x=0;if(c&1){wb=1400;break}c=(i|0)<(v|0)|(i|0)==(v|0)&d>>>0>>0;g=(i|0)>(k|0)|(i|0)==(k|0)&d>>>0>j>>>0;l=1;j=m?(g?d:j):d;k=m?(g?i:k):i;g=m?(c?d:t):d;d=m?(c?i:v):i}m=l;n=n+1|0;t=g;v=d}if((wb|0)==1387){h=+(j>>>0)+4294967296.0*+(k|0)-(+(t>>>0)+4294967296.0*+(v|0));x=0;d=ga(221,f[C>>2]|0)|0;c=x;x=0;do if(!(c&1)){L:do if(h>=0.0&h<10240.0){M:do switch(f[(f[z>>2]|0)+4>>2]|0){case 1:{x=0;i=ga(237,f[C>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[i+8>>2]=1;f[i+12>>2]=f[z>>2];t$a(ab,t);x=0;f[xb>>2]=f[ab>>2];f[xb+4>>2]=f[ab+4>>2];f[xb+8>>2]=f[ab+8>>2];f[xb+12>>2]=f[ab+12>>2];g=ia(50,yb+8|0,xb|0)|0;c=x;x=0;if(c&1)break;f[i+16>>2]=g;f[i+4>>2]=1;s=0;g=i;wb=1431;break M}while(0);d=Ia()|0;break K}case 2:{x=0;i=ga(237,f[C>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[i+8>>2]=26;f[i+12>>2]=f[z>>2];m=yb+8|0;XSa(cb,t,v);x=0;f[xb>>2]=f[cb>>2];f[xb+4>>2]=f[cb+4>>2];f[xb+8>>2]=f[cb+8>>2];f[xb+12>>2]=f[cb+12>>2];g=ia(50,m|0,xb|0)|0;c=x;x=0;if(c&1)break;f[i+16>>2]=g;f[i+4>>2]=2;x=0;j=ia(96,f[f[a+8>>2]>>2]|0,2)|0;c=x;x=0;if(c&1){d=Ia()|0;break K}x=0;k=ia(99,f[m>>2]|0,0)|0;c=x;x=0;do if(!(c&1)){l=k+12|0;x=0;g=ja(45,m|0,j|0,i|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,l|0,g|0);c=x;x=0;if(c&1)break;Bab(jb);x=0;i=ja(46,f[m>>2]|0,j|0,2)|0;c=x;x=0;if(c&1)break;XSa(ib,32,0);x=0;f[xb>>2]=f[ib>>2];f[xb+4>>2]=f[ib+4>>2];f[xb+8>>2]=f[ib+8>>2];f[xb+12>>2]=f[ib+12>>2];g=ia(50,m|0,xb|0)|0;c=x;x=0;if(c&1)break;x=0;g=ka(7,f[m>>2]|0,36,i|0,g|0)|0;c=x;x=0;if(c&1)break;x=0;g=ja(53,f[m>>2]|0,24,g|0)|0;c=x;x=0;if(c&1)break;x=0;f[xb>>2]=f[jb>>2];i=ka(12,m|0,xb|0,0,g|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,l|0,i|0);c=x;x=0;if(c&1)break;x=0;g=ja(46,f[m>>2]|0,j|0,2)|0;c=x;x=0;if(c&1)break;x=0;ua(81,l|0,g|0);c=x;x=0;if(c&1)break;x=0;ta(439,k|0);c=x;x=0;if(c&1)break;x=0;g=ja(53,f[m>>2]|0,24,k|0)|0;c=x;x=0;if(c&1)break;s=i;wb=1431;break M}while(0);d=Ia()|0;break K}while(0);d=Ia()|0;break K}default:{x=0;wa(71,64594,51387,2589,123616);x=0}}while(0);do if((wb|0)==1431){f[z>>2]=g;x=0;ua(81,d+12|0,o|0);c=x;x=0;if(c&1)break;n=a+48|0;q=o+24|0;m=o+24|0;r=o+8|0;o=o+12|0;l=0;while(1){x=0;g=ga(213,A|0)|0;c=x;x=0;if(c&1){wb=1436;break}if(l>>>0>=g>>>0){wb=1435;break}x=0;g=ia(45,B|0,l|0)|0;c=x;x=0;if(c&1){wb=1445;break}i=f[g>>2]|0;x=0;g=ia(45,i|0,0)|0;c=x;x=0;if(c&1){wb=1446;break}j=f[g>>2]|0;x=0;g=ia(45,i|0,1)|0;c=x;x=0;if(c&1){wb=1447;break}x=0;k=ja(48,f[(f[n>>2]|0)+16>>2]|0,f[g>>2]|0,0)|0;c=x;x=0;if(c&1){wb=1448;break}Bab(ub);Jbb(j)|0;if(Nab(f[j>>2]|0)|0){g=f[F>>2]|0;x=0;ua(65,qb|0,64621);c=x;x=0;if(c&1){wb=1449;break}x=0;f[xb>>2]=f[qb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1449;break}f[m>>2]=g;f[ub>>2]=g}else{x=0;va(97,xb|0,yb|0,j|0);c=x;x=0;if(c&1){wb=1454;break}x=0;g=ga(252,xb|0)|0;i=I;c=x;x=0;if(c&1){wb=1454;break}if((i|0)<(v|0)|(i|0)==(v|0)&g>>>0>>0){wb=1453;break}i=SRa(g|0,i|0,t|0,v|0)|0;j=I;if(!((j|0)>-1|(j|0)==-1&i>>>0>4294967295)){wb=1457;break}g=f[F>>2]|0;x=0;ua(65,rb|0,64660);c=x;x=0;if(c&1){wb=1462;break}x=0;f[xb>>2]=f[rb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1462;break}f[ub>>2]=g;if(!(j>>>0<0|(j|0)==0&i>>>0<(Jbb(f[o>>2]|0)|0)>>>0)?(x=0,ua(259,r|0,i+1|0),c=x,x=0,c&1):0){wb=1463;break}x=0;i=ia(100,r|0,i|0)|0;c=x;x=0;if(c&1){wb=1463;break}f[i>>2]=g}x=0;i=ga(221,f[C>>2]|0)|0;c=x;x=0;if(c&1){wb=1472;break}f[d+8>>2]=g;j=i+12|0;x=0;ua(81,j|0,d|0);c=x;x=0;if(c&1){wb=1472;break}x=0;ua(81,j|0,k|0);c=x;x=0;if(c&1){wb=1472;break}x=0;ta(439,i|0);c=x;x=0;if(c&1){wb=1472;break}c=f[F>>2]|0;f[sb>>2]=g;x=0;f[xb>>2]=f[sb>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1472;break}l=l+1|0;d=i}switch(wb|0){case 1435:{L1a(xb,f[e>>2]|0);i=f[xb>>2]|0;f[d+8>>2]=i;g=f[q>>2]|0;if(Oab(g)|0){f[q>>2]=i;g=i}if(s|0)f[s+8>>2]=g;i=0;while(1){if(i>>>0>=(Jbb(f[o>>2]|0)|0)>>>0)break L;x=0;g=ia(100,r|0,i|0)|0;yb=x;x=0;if(yb&1)break;if(Oab(f[g>>2]|0)|0){x=0;g=ia(100,r|0,i|0)|0;yb=x;x=0;if(yb&1)break;f[g>>2]=f[q>>2]}i=i+1|0}d=Ia()|0;break K}case 1436:{d=Ia()|0;break K}case 1445:{d=Ia()|0;break K}case 1446:{d=Ia()|0;break K}case 1447:{d=Ia()|0;break K}case 1448:{d=Ia()|0;break K}case 1449:{d=Ia()|0;break}case 1453:{x=0;wa(71,64636,51387,2632,123616);x=0;wb=1455;break}case 1454:{d=Ia()|0;break}case 1457:{x=0;wa(71,64649,51387,2634,123616);x=0;wb=1455;break}case 1462:{d=Ia()|0;break}case 1463:{d=Ia()|0;break}case 1472:{d=Ia()|0;break}}if((wb|0)==1455)d=Ia()|0;break K}while(0);d=Ia()|0;break K}else{x=0;t=ia(96,f[f[a+8>>2]>>2]|0,f[(f[z>>2]|0)+4>>2]|0)|0;c=x;x=0;do if(!(c&1)){y=d+12|0;w=yb+8|0;x=0;g=ja(45,w|0,t|0,f[z>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;ua(81,y|0,g|0);c=x;x=0;if(c&1)break;r=a+48|0;v=o+24|0;q=o+24|0;o=0;s=0;l=0;while(1){x=0;g=ga(213,A|0)|0;c=x;x=0;if(c&1){wb=1494;break}if(o>>>0>=g>>>0){wb=1491;break}x=0;g=ia(45,B|0,o|0)|0;c=x;x=0;if(c&1){wb=1503;break}i=f[g>>2]|0;x=0;g=ia(45,i|0,0)|0;c=x;x=0;if(c&1){wb=1504;break}m=f[g>>2]|0;x=0;g=ia(45,i|0,1)|0;c=x;x=0;if(c&1){wb=1505;break}x=0;n=ja(48,f[(f[r>>2]|0)+16>>2]|0,f[g>>2]|0,0)|0;c=x;x=0;if(c&1){wb=1506;break}Bab(ub);Jbb(m)|0;c=Nab(f[m>>2]|0)|0;g=f[F>>2]|0;if(c){x=0;ua(65,kb|0,64621);c=x;x=0;if(c&1){wb=1507;break}x=0;f[xb>>2]=f[kb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1507;break}f[q>>2]=g;f[ub>>2]=g;j=s}else{x=0;ua(65,lb|0,64660);c=x;x=0;if(c&1){wb=1517;break}x=0;f[xb>>2]=f[lb>>2];g=ia(97,g|0,xb|0)|0;c=x;x=0;if(c&1){wb=1517;break}f[ub>>2]=g;k=f[(f[z>>2]|0)+4>>2]|0;x=0;j=ja(46,f[w>>2]|0,t|0,k|0)|0;c=x;x=0;if(c&1){wb=1518;break}x=0;va(97,mb|0,yb|0,m|0);c=x;x=0;if(c&1){wb=1518;break}x=0;f[xb>>2]=f[mb>>2];f[xb+4>>2]=f[mb+4>>2];f[xb+8>>2]=f[mb+8>>2];f[xb+12>>2]=f[mb+12>>2];i=ia(50,w|0,xb|0)|0;c=x;x=0;if(c&1){wb=1518;break}x=0;i=ka(7,f[w>>2]|0,((k|0)==1?15:40)|0,j|0,i|0)|0;c=x;x=0;if(c&1){wb=1518;break}f[nb>>2]=g;x=0;f[xb>>2]=f[nb>>2];j=ka(12,w|0,xb|0,0,0)|0;c=x;x=0;if(c&1){wb=1518;break}x=0;i=ka(8,w|0,i|0,j|0,l|0)|0;c=x;x=0;if(c&1){wb=1518;break}l=i;j=(s|0)==0?i:s}x=0;k=ga(221,f[C>>2]|0)|0;c=x;x=0;if(c&1){wb=1524;break}f[d+8>>2]=g;i=k+12|0;x=0;ua(81,i|0,d|0);c=x;x=0;if(c&1){wb=1524;break}x=0;ua(81,i|0,n|0);c=x;x=0;if(c&1){wb=1524;break}c=f[F>>2]|0;f[ob>>2]=g;x=0;f[xb>>2]=f[ob>>2];ua(257,c|0,xb|0);c=x;x=0;if(c&1){wb=1524;break}o=o+1|0;s=j;d=k}switch(wb|0){case 1491:{L1a(xb,f[e>>2]|0);i=f[xb>>2]|0;f[d+8>>2]=i;g=f[v>>2]|0;if(Oab(g)|0){f[v>>2]=i;g=i}f[pb>>2]=g;x=0;f[xb>>2]=f[pb>>2];g=ka(12,w|0,xb|0,0,0)|0;yb=x;x=0;if(!(yb&1)?(f[s+16>>2]=g,x=0,ua(81,y|0,l|0),yb=x,x=0,!(yb&1)):0)break L;d=Ia()|0;break K}case 1494:{d=Ia()|0;break K}case 1503:{d=Ia()|0;break K}case 1504:{d=Ia()|0;break K}case 1505:{d=Ia()|0;break K}case 1506:{d=Ia()|0;break K}case 1507:{d=Ia()|0;break}case 1517:{d=Ia()|0;break}case 1518:{d=Ia()|0;break}case 1524:{d=Ia()|0;break}}break K}while(0);d=Ia()|0;break K}while(0);yb=(f[D>>2]|0)+4|0;f[yb>>2]=(f[yb>>2]|0)+-4;yb=f[F>>2]|0;L1a(tb,f[e>>2]|0);x=0;f[xb>>2]=f[tb>>2];ua(257,yb|0,xb|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break K}else if((wb|0)==1391){d=Ia()|0;break K}else if((wb|0)==1398){d=Ia()|0;break K}else if((wb|0)==1399){d=Ia()|0;break K}else if((wb|0)==1400){d=Ia()|0;break K}}while(0);d=Ia()|0}while(0);wb=1538;break a}x=0;d=ia(45,c|0,1)|0;ub=x;x=0;if(ub&1)break h;ub=f[d>>2]|0;Jbb(ub)|0;if(!(Oab(f[ub>>2]|0)|0)){x=0;d=ga(242,f[yb+4>>2]|0)|0;ub=x;x=0;if(ub&1){d=Ia()|0;wb=1538;break a}x=0;e=ia(45,c|0,1)|0;ub=x;x=0;N:do if(!(ub&1)){n=f[e>>2]|0;x=0;e=ia(45,n|0,0)|0;ub=x;x=0;if(ub&1)break;do if(KBa(f[e>>2]|0,133124)|0){x=0;e=ia(45,n|0,1)|0;ub=x;x=0;if(ub&1)break N;ub=f[e>>2]|0;Jbb(ub)|0;if(!(Oab(f[ub>>2]|0)|0))break;x=0;e=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(45,f[e>>2]|0,0)|0;ub=x;x=0;if(ub&1)break N;if(!(KBa(f[e>>2]|0,133156)|0))break;x=0;e=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(45,f[e>>2]|0,1)|0;ub=x;x=0;if(ub&1)break N;if(!(KBa(f[e>>2]|0,133012)|0))break;x=0;e=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(45,f[e>>2]|0,3)|0;ub=x;x=0;if(ub&1)break N;ub=f[e>>2]|0;Jbb(ub)|0;if(!(zab(f[ub>>2]|0)|0))break;l=a+16|0;e=f[l>>2]|0;x=0;g=ia(45,n|0,2)|0;ub=x;x=0;if(ub&1)break N;x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;ub=x;x=0;if(ub&1)break N;m=d+28|0;f[m>>2]=e;x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1){d=Ia()|0;wb=1538;break a}j=f[e>>2]|0;k=d+8|0;i=0;while(1){e=Jbb(j)|0;x=0;e=ga(213,e|0)|0;c=x;x=0;if(c&1){wb=933;break}if(i>>>0>=e>>>0)break;e=f[l>>2]|0;x=0;g=ia(45,j|0,i|0)|0;c=x;x=0;if(c&1){wb=933;break}x=0;e=ia(87,f[e+16>>2]|0,f[g>>2]|0)|0;c=x;x=0;if(c&1){wb=933;break}x=0;ua(81,k|0,e|0);c=x;x=0;if(c&1){wb=933;break}i=i+1|0}if((wb|0)==933){d=Ia()|0;wb=1538;break a}e=Uea()|0;x=0;e=ka(9,yb|0,e|0,d+8|0,f[a+12>>2]|0)|0;c=x;x=0;do if(!(c&1)){f[d+24>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];g=yb+8|0;i=f[m>>2]|0;x=0;e=ia(45,n|0,1)|0;yb=x;x=0;if(yb&1)break;e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;yb=x;x=0;if(yb&1)break;L1a(Ya,f[e>>2]|0);f[vb>>2]=0;f[vb+4>>2]=0;f[vb+8>>2]=0;x=0;f[xb>>2]=f[Ya>>2];e=ka(10,g|0,xb|0,vb|0,1)|0;yb=x;x=0;do if(!(yb&1)){x=0;e=ka(7,f[g>>2]|0,0,i|0,e|0)|0;yb=x;x=0;if(yb&1)break;f[m>>2]=e;zSa(vb);wb=1537;break a}while(0);d=Ia()|0;zSa(vb);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;wa(71,64330,51387,2247,123616);x=0}while(0);d=Ia()|0;wb=1538;break a}x=0;d=ia(45,c|0,1)|0;ub=x;x=0;O:do if(!(ub&1)?(y=Jbb(f[d>>2]|0)|0,x=0,y=ga(214,y|0)|0,ub=x,x=0,!(ub&1)):0){l=f[y>>2]|0;if(g2a(l,f[yb+124>>2]|0)|0){x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;xb=x;x=0;if(xb&1)break;if((d|0)!=2){x=0;wa(71,64152,51387,1856,123616);x=0;break}x=0;d=ga(237,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[d+8>>2]=2;i=a+16|0;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}e=yb+128|0;do if(!(g2a(l,f[e>>2]|0)|0)){if(g2a(l,f[yb+196>>2]|0)|0)break;if(g2a(l,f[yb+132>>2]|0)|0){x=0;d=ia(45,c|0,2)|0;ub=x;x=0;if(ub&1)break O;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;ub=x;x=0;if(ub&1)break O;if((d|0)!=1){x=0;wa(71,64172,51387,1873,123616);x=0;break O}x=0;d=ia(45,c|0,2)|0;ub=x;x=0;P:do if(ub&1)wb=329;else{x=0;d=ia(45,f[d>>2]|0,0)|0;ub=x;x=0;if(ub&1){wb=329;break}x=0;wa(80,vb|0,yb|0,f[d>>2]|0,0);ub=x;x=0;if(ub&1){wb=329;break}Q:do if((f[vb>>2]|0)==4){x=0;h=+ea(2,vb|0);c=x;x=0;if(c&1){wb=329;break P}HAa(T,h);x=0;f[xb>>2]=f[T>>2];f[xb+4>>2]=f[T+4>>2];f[xb+8>>2]=f[T+8>>2];f[xb+12>>2]=f[T+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1){wb=329;break P}}else{x=0;d=ga(236,f[yb+4>>2]|0)|0;xb=x;x=0;R:do if(!(xb&1)){g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;f[d+12>>2]=e;g=e+4|0;S:do switch(f[g>>2]|0){case 3:{d=e;break Q}case 4:{f[d+8>>2]=44;break}case 1:{x=0;e=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break R;x=0;e=ia(45,f[e>>2]|0,0)|0;c=x;x=0;if(c&1)break R;x=0;g=ia(92,yb|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break R;e=d+8|0;if(g){f[e>>2]=37;break S}else{f[e>>2]=35;break S}}case 0:{f[g>>2]=3;d=e;break Q}default:{f[ya>>2]=0;f[ya+4>>2]=0;f[ya+8>>2]=0;yb=j7a(64192)|0;x=0;va(87,ya|0,64192,yb|0);yb=x;x=0;if(yb&1)break R;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;do if(!(yb&1)){x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;ua(69,ya|0,f[e>>2]|0);yb=x;x=0;if(yb&1)break;MTa(ya);break S}while(0);d=Ia()|0;MTa(ya);break P}}while(0);f[d+4>>2]=3;break Q}while(0);d=Ia()|0;break P}while(0);wb=1537;break a}while(0);if((wb|0)==329)d=Ia()|0;wb=1538;break a}if(g2a(l,f[yb+136>>2]|0)|0){e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;T:do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;g=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;e=g+4|0;switch(f[e>>2]|0){case 1:{x=0;ta(456,f[a+24>>2]|0);c=x;x=0;if(c&1)break T;l=yb+4|0;x=0;i=ga(233,f[l>>2]|0)|0;c=x;x=0;do if(!(c&1)){e=a+8|0;d=f[f[e>>2]>>2]|0;L1a(_,f[33042]|0);x=0;f[xb>>2]=f[_>>2];d=ia(85,d|0,xb|0)|0;c=x;x=0;if(c&1)break;f[i+8>>2]=d;f[i+12>>2]=g;gLa(i,0);Aia(i);f[vb>>2]=yb;f[vb+4>>2]=f[e>>2];x=0;k=ga(237,f[l>>2]|0)|0;c=x;x=0;U:do if(c&1)wb=377;else{f[k+8>>2]=17;x=0;d=ga(239,vb|0)|0;c=x;x=0;if(c&1){wb=377;break}f[k+12>>2]=d;e=yb+8|0;t$a(za,0);x=0;f[xb>>2]=f[za>>2];f[xb+4>>2]=f[za+4>>2];f[xb+8>>2]=f[za+8>>2];f[xb+12>>2]=f[za+12>>2];d=ia(50,e|0,xb|0)|0;yb=x;x=0;if(yb&1){wb=377;break}f[k+16>>2]=d;x=0;ta(455,k|0);yb=x;x=0;if(yb&1){wb=377;break}x=0;d=ga(221,f[l>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){j=d+12|0;x=0;ua(81,j|0,i|0);yb=x;x=0;if(yb&1)break;x=0;i=ga(237,f[l>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[i+8>>2]=1;t$a(Ja,0);x=0;f[xb>>2]=f[Ja>>2];f[xb+4>>2]=f[Ja+4>>2];f[xb+8>>2]=f[Ja+8>>2];f[xb+12>>2]=f[Ja+12>>2];e=ia(50,e|0,xb|0)|0;yb=x;x=0;if(yb&1)break;f[i+12>>2]=e;x=0;e=ga(239,vb|0)|0;yb=x;x=0;if(yb&1)break;f[i+16>>2]=e;f[i+4>>2]=1;x=0;g=ga(240,f[l>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){f[g+8>>2]=i;x=0;e=ga(239,vb|0)|0;yb=x;x=0;if(yb&1)break;f[g+12>>2]=e;f[g+16>>2]=k;f[g+4>>2]=1;x=0;ua(81,j|0,g|0);yb=x;x=0;if(yb&1)break;x=0;ta(439,d|0);yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;break U}while(0);d=Ia()|0;break U}while(0);d=Ia()|0}while(0);if((wb|0)==377)d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}case 4:case 3:{x=0;d=ga(236,f[yb+4>>2]|0)|0;yb=x;x=0;if(yb&1){d=Ia()|0;wb=1538;break a}else{wb=f[e>>2]|0;f[d+8>>2]=(wb|0)==3?8:9;f[d+12>>2]=g;f[d+4>>2]=wb;wb=1537;break a}}default:{x=0;sa(5);x=0;break T}}}while(0);d=Ia()|0;wb=1538;break a}g=yb+140|0;do if(!(g2a(l,f[g>>2]|0)|0)){if(g2a(l,f[yb+148>>2]|0)|0)break;if(g2a(l,f[yb+144>>2]|0)|0)break;k=yb+152|0;do if(!(g2a(l,f[k>>2]|0)|0)){if(g2a(l,f[yb+156>>2]|0)|0)break;e=yb+160|0;do if(!(g2a(l,f[e>>2]|0)|0)){if(g2a(l,f[yb+164>>2]|0)|0)break;if(g2a(l,f[yb+168>>2]|0)|0)break;if(g2a(l,f[yb+172>>2]|0)|0)break;if(g2a(l,f[yb+176>>2]|0)|0)break;if(g2a(l,f[yb+180>>2]|0)|0)break;if(g2a(l,f[yb+184>>2]|0)|0)break;if(g2a(l,f[yb+188>>2]|0)|0)break;if(g2a(l,f[yb+192>>2]|0)|0)break;V:do if(!(b[yb+98>>0]|0))wb=872;else{x=0;d=ia(45,c|0,2)|0;vb=x;x=0;W:do if(!(vb&1)){e=Jbb(f[d>>2]|0)|0;x=0;e=ga(213,e|0)|0;vb=x;x=0;if(vb&1)break;d=b[l>>0]|0;switch(d<<24>>24|0){case 108:{do if((e|0)==2){x=0;d=ia(45,c|0,2)|0;vb=x;x=0;if(vb&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;vb=x;x=0;if(vb&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(216,d|0)|0;vb=x;x=0;if(!(vb&1))wb=557}else{d=0;wb=557}while(0);do if((wb|0)==557){if(g2a(l,f[32927]|0)|0){e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,1,1,0,1,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32928]|0)|0){g=B2a(d,2)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,2,1,0,g|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32929]|0)|0){g=B2a(d,4)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,4,1,0,g|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32930]|0)|0){g=B2a(d,8)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,8,1,0,g|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32931]|0)|0){g=B2a(d,4)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,4,1,0,g|0,d|0,3)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!(g2a(l,f[32932]|0)|0)){wb=872;break V}g=B2a(d,8)|0;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(10,f[yb+8>>2]|0,8,1,0,g|0,d|0,4)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}case 115:{do if((e|0)==3){x=0;d=ia(45,c|0,2)|0;vb=x;x=0;if(vb&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;vb=x;x=0;if(vb&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(216,d|0)|0;vb=x;x=0;if(!(vb&1)){g=d;wb=598}}else{g=0;wb=598}while(0);do if((wb|0)==598){if(g2a(l,f[32933]|0)|0){g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,1,0,1,i|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32934]|0)|0){j=B2a(g,2)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,2,0,j|0,i|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32935]|0)|0){j=B2a(g,4)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,4,0,j|0,i|0,d|0,1)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32936]|0)|0){j=B2a(g,8)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,8,0,j|0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!(g2a(l,f[32937]|0)|0)){if(!(g2a(l,f[32938]|0)|0)){wb=872;break V}j=B2a(g,8)|0;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=pa(7,f[yb+8>>2]|0,8,0,j|0,i|0,d|0,4)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}j=a+16|0;e=f[j>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;do if(!(xb&1)){x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break;k=yb+8|0;if((f[d+4>>2]|0)==4){x=0;d=ja(53,f[k>>2]|0,44,d|0)|0;yb=x;x=0;if(yb&1)break;i=d}else i=d;g=B2a(g,4)|0;e=f[j>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,f[d>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=pa(7,f[k>>2]|0,4,0,g|0,d|0,i|0,3)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}case 105:switch(e|0){case 1:{e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;wb=x;x=0;if(wb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;wb=x;x=0;if(wb&1)break;if(g2a(l,f[32884]|0)|0){if((f[d+4>>2]|0)!=1){x=0;ua(256,d|0,2);yb=x;x=0;if(yb&1)break;else{wb=1537;break a}}x=0;d=ga(241,d|0)|0;c=x;x=0;if(c&1)break;x=0;d=ga(225,d+8|0)|0;c=x;x=0;if(c&1)break;XSa(Aa,d,((d|0)<0)<<31>>31);x=0;f[xb>>2]=f[Aa>>2];f[xb+4>>2]=f[Aa+4>>2];f[xb+8>>2]=f[Aa+8>>2];f[xb+12>>2]=f[Aa+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32880]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,2,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32881]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,4,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32882]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,45,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32883]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,33,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32909]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,24,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32910]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,22,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32911]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,23,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32912]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,39,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32913]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,40,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32914]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,41,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32915]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,42,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32916]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,26,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,la=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=la;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32917]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,30,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,na=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=na;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32918]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,28,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,qa=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=qa;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32919]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,32,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,ra=ia(94,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=ra;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32920]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,46,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32921]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,34,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32922]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,3,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32923]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,1,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32924]|0)|0){x=0;d=ja(53,f[yb+8>>2]|0,5,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!(g2a(l,f[32953]|0)|0)){wb=872;break V}x=0;d=ma(23,f[yb+8>>2]|0,8,0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}case 2:{if(g2a(l,f[32885]|0)|0){x=0;va(97,V|0,yb|0,c|0);c=x;x=0;if(c&1)break W;x=0;f[xb>>2]=f[V>>2];f[xb+4>>2]=f[V+4>>2];f[xb+8>>2]=f[V+8>>2];f[xb+12>>2]=f[V+12>>2];d=ia(50,yb+8|0,xb|0)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;wb=x;x=0;if(wb&1)break;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;wb=x;x=0;if(wb&1)break;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,1)|0;wb=x;x=0;if(wb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;wb=x;x=0;if(wb&1)break;if(g2a(l,f[32886]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,25,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32887]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,26,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32888]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,27,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32889]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,29,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,La=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=La;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32890]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,28,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,Ma=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Ma;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32891]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,31,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,Na=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Na;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32892]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,30,i|0,d|0)|0;c=x;x=0;if(!(c&1)?(x=0,Oa=ia(90,d|0,yb+40|0)|0,yb=x,x=0,!(yb&1)):0){d=Oa;wb=1537;break a}d=Ia()|0;wb=1538;break a}if(g2a(l,f[32893]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,32,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32894]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,33,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32895]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,34,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32896]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,35,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32897]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,37,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32898]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,36,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32899]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,40,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32900]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,41,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32901]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,45,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32902]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,44,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32903]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,49,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32904]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,48,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32905]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,43,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32906]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,42,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32907]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,47,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32908]|0)|0){x=0;d=ka(7,f[yb+8>>2]|0,46,i|0,d|0)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32954]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=oa(40,f[yb+8>>2]|0,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32958]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,0,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32959]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,1,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32955]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,2,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32956]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,3,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(g2a(l,f[32957]|0)|0){b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,4,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}if(!(g2a(l,f[32960]|0)|0)){wb=872;break V}b[(f[yb>>2]|0)+114>>0]=1;x=0;d=pa(8,f[yb+8>>2]|0,5,8,0,i|0,d|0,2)|0;yb=x;x=0;if(yb&1)break;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}case 3:{if(!(g2a(l,f[32961]|0)|0)){wb=872;break V}b[(f[yb>>2]|0)+114>>0]=1;i=a+16|0;e=f[i>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break W;x=0;j=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[i>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break W;x=0;g=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[i>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break W;x=0;d=pa(9,f[yb+8>>2]|0,8,0,j|0,g|0,d|0,2)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}default:break V}case 102:{if(g2a(l,f[32925]|0)|0){g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break W;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break W;x=0;d=ka(7,f[yb+8>>2]|0,54,i|0,d|0)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}if(!(g2a(l,f[32926]|0)|0)){wb=872;break V}g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break W;x=0;d=ia(45,f[d>>2]|0,0)|0;xb=x;x=0;if(xb&1)break W;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break W;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break W;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break W;x=0;d=ka(7,f[yb+8>>2]|0,67,i|0,d|0)|0;yb=x;x=0;if(yb&1)break W;wb=1537;break a}default:break V}}while(0);d=Ia()|0;wb=1538;break a}while(0);if((wb|0)==872)d=b[l>>0]|0;switch(d<<24>>24){case 102:{if(!(H0(l,f[32939]|0,7)|0))wb=876;else n=0;break}case 109:{if(!(H0(l,f[32940]|0,8)|0))wb=876;else n=0;break}default:n=0}if((wb|0)==876)n=1;x=0;d=ia(45,c|0,2)|0;vb=x;x=0;X:do if(!(vb&1)){j=f[d>>2]|0;Y:do if(!n){d=f[yb>>2]|0;L1a($a,l);x=0;f[xb>>2]=f[$a>>2];d=ia(60,d|0,xb|0)|0;vb=x;x=0;if(vb&1){wb=883;break X}e=f[yb+4>>2]|0;if(d|0){x=0;e=ga(231,e|0)|0;vb=x;x=0;if(vb&1){wb=883;break X}L1a(xb,l);f[e+24>>2]=f[xb>>2];d=e;l=e+8|0;m=e;e=0;break}x=0;e=ga(243,e|0)|0;vb=x;x=0;if(vb&1){d=Ia()|0;break X}else{L1a(xb,l);f[e+24>>2]=f[xb>>2];d=e;l=e+8|0;m=0;e=0;break}}else{x=0;g=ga(242,f[yb+4>>2]|0)|0;xb=x;x=0;do if(!(xb&1)){d=f[a+16>>2]|0;x=0;e=ia(45,j|0,0)|0;xb=x;x=0;if(xb&1)break;x=0;d=ia(87,f[d+16>>2]|0,f[e>>2]|0)|0;xb=x;x=0;if(xb&1)break;f[g+28>>2]=d;d=g;l=g+8|0;m=0;e=1;break Y}while(0);d=Ia()|0;break X}while(0);k=a+16|0;while(1){g=Jbb(j)|0;x=0;g=ga(213,g|0)|0;xb=x;x=0;if(xb&1){wb=896;break}if(e>>>0>=g>>>0)break;g=f[k>>2]|0;x=0;i=ia(45,j|0,e|0)|0;xb=x;x=0;if(xb&1){wb=896;break}x=0;g=ia(87,f[g+16>>2]|0,f[i>>2]|0)|0;xb=x;x=0;if(xb&1){wb=896;break}x=0;ua(81,l|0,g|0);xb=x;x=0;if(xb&1){wb=896;break}e=e+1|0}if((wb|0)==896){d=Ia()|0;break}do if(n){e=d_a(d)|0;g=Uea()|0;x=0;g=ka(9,yb|0,g|0,e+8|0,f[a+12>>2]|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break X}else{f[e+24>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];break}}while(0);if(!m){wb=1537;break a}e=Uea()|0;x=0;e=ja(56,yb|0,e|0,f[a+12>>2]|0)|0;xb=x;x=0;if(xb&1){wb=883;break}f[m+4>>2]=e;x=0;wa(81,yb|0,c|0,e|0,m|0);yb=x;x=0;if(!(yb&1)){wb=1537;break a}else wb=883}else wb=883;while(0);if((wb|0)==883)d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(45,c|0,2)|0;wb=x;x=0;do if(!(wb&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;wb=x;x=0;if(wb&1)break;wb=f[d>>2]|0;d=Jbb(wb)|0;if(!(Oab(f[wb>>2]|0)|0)){x=0;wa(71,64123,51387,1989,123616);x=0;break}x=0;d=ga(214,d|0)|0;wb=x;x=0;Z:do if(wb&1)d=Ia()|0;else{wb=f[d>>2]|0;f[xb>>2]=wb;d=yb+112|0;if((gV(d,wb)|0)==(yb+116|0)){x=0;wa(71,64071,51387,1991,123616);x=0;d=Ia()|0;break}x=0;m=ia(88,d|0,xb|0)|0;xb=x;x=0;_:do if(!(xb&1)){b[(f[yb>>2]|0)+114>>0]=1;$:do if(g2a(l,f[e>>2]|0)|0){g=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,1)|0;c=x;x=0;if(c&1)break;x=0;d=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;e=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=ma(23,f[yb+8>>2]|0,g|0,0,d|0,e|0)|0;c=x;x=0;if(c&1)break;if(!(b[m+5>>0]|0))break $;x=0;d=ja(54,d|0,f[m>>2]|0,f[yb>>2]|0)|0;yb=x;x=0;if(!(yb&1))break $}while(0);d=Ia()|0;break Z}else{if(g2a(l,f[yb+164>>2]|0)|0){x=0;j=ga(224,f[m+8>>2]|0)|0;xb=x;x=0;if(xb&1){d=Ia()|0;break Z}x=0;k=ia(96,f[f[a+8>>2]>>2]|0,j|0)|0;xb=x;x=0;do if(!(xb&1)){l=yb+8|0;i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,f[d>>2]|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;yb=x;x=0;if(yb&1)break;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(45,f[d>>2]|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;d=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(55,f[l>>2]|0,k|0,d|0)|0;yb=x;x=0;if(yb&1)break;x=0;e=oa(40,f[l>>2]|0,i|0,0,g|0,d|0,j|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(46,f[l>>2]|0,k|0,j|0)|0;yb=x;x=0;if(yb&1)break;x=0;d=ja(51,l|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break;break $}while(0);d=Ia()|0;break Z}if(g2a(l,f[yb+168>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,5,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if(g2a(l,f[yb+172>>2]|0)|0){k=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;j=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;g=a+16|0;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;i=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[g>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,3)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(9,f[yb+8>>2]|0,k|0,0,j|0,i|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if(g2a(l,f[yb+176>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,0,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if(g2a(l,f[yb+180>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,1,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if(g2a(l,f[yb+184>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,2,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if(g2a(l,f[yb+188>>2]|0)|0){i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,3,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _;break}if(!(g2a(l,f[yb+192>>2]|0)|0)){x=0;sa(5);x=0;break _}i=f[m>>2]|0;e=f[a+20>>2]|0;x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break _;x=0;d=ia(45,f[d>>2]|0,1)|0;xb=x;x=0;if(xb&1)break _;x=0;g=ja(48,f[e+16>>2]|0,f[d>>2]|0,f[m>>2]|0)|0;xb=x;x=0;if(xb&1)break _;e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;if(c&1)break _;x=0;d=ia(45,f[d>>2]|0,2)|0;c=x;x=0;if(c&1)break _;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=ga(224,f[m+8>>2]|0)|0;c=x;x=0;if(c&1)break _;x=0;d=pa(8,f[yb+8>>2]|0,4,i|0,0,g|0,e|0,d|0)|0;yb=x;x=0;if(yb&1)break _}while(0);wb=1537;break a}while(0);d=Ia()|0}while(0);wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break O;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;xb=x;x=0;if(xb&1)break O;if((d|0)!=2){x=0;wa(71,64152,51387,1964,123616);x=0;break O}x=0;d=ga(237,f[yb+4>>2]|0)|0;yb=x;x=0;aa:do if(!(yb&1)){i=a+16|0;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;j=d+12|0;f[j>>2]=e;g=f[i>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,1)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+16>>2]=e;e=f[(f[j>>2]|0)+4>>2]|0;switch(e|0){case 3:{Ha=g2a(l,f[k>>2]|0)|0;Ha=Ha?56:55;break}case 4:{Ha=g2a(l,f[k>>2]|0)|0;Ha=Ha?69:68;break}default:{x=0;sa(3);yb=x;x=0;if(yb&1)break aa;x=0;ia(52,Ka|0,64277)|0;yb=x;x=0;if(yb&1){Ia()|0;lCa()}else lCa()}}f[d+8>>2]=Ha;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);e=f[a+16>>2]|0;x=0;d=ia(45,c|0,2)|0;c=x;x=0;do if(!(c&1)){x=0;d=ia(45,f[d>>2]|0,0)|0;c=x;x=0;if(c&1)break;x=0;e=ia(87,f[e+16>>2]|0,f[d>>2]|0)|0;c=x;x=0;if(c&1)break;x=0;d=ga(236,f[yb+4>>2]|0)|0;c=x;x=0;ba:do if(!(c&1)){f[d+12>>2]=e;e=f[e+4>>2]|0;ca:do switch(e|0){case 3:{if(g2a(l,f[g>>2]|0)|0){W=12;break ca}W=g2a(l,f[yb+144>>2]|0)|0;W=W?10:18;break}case 4:{if(g2a(l,f[g>>2]|0)|0){W=13;break ca}W=g2a(l,f[yb+144>>2]|0)|0;W=W?11:19;break}default:{x=0;sa(3);yb=x;x=0;if(yb&1)break ba;x=0;ia(52,Y|0,64216)|0;yb=x;x=0;if(yb&1){Ia()|0;lCa()}else lCa()}}while(0);f[d+8>>2]=W;f[d+4>>2]=e;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);x=0;d=ia(45,c|0,2)|0;xb=x;x=0;if(xb&1)break;d=Jbb(f[d>>2]|0)|0;x=0;d=ga(213,d|0)|0;xb=x;x=0;if(xb&1)break;if((d|0)!=1){x=0;wa(71,64172,51387,1865,123616);x=0;break}x=0;d=ga(236,f[yb+4>>2]|0)|0;yb=x;x=0;do if(!(yb&1)){g=g2a(l,f[e>>2]|0)|0;f[d+8>>2]=g?0:2;g=f[a+16>>2]|0;x=0;e=ia(45,c|0,2)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(45,f[e>>2]|0,0)|0;yb=x;x=0;if(yb&1)break;x=0;e=ia(87,f[g+16>>2]|0,f[e>>2]|0)|0;yb=x;x=0;if(yb&1)break;f[d+12>>2]=e;f[d+4>>2]=1;wb=1537;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);d=Ia()|0;wb=1538;break a}while(0);f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;yb=j7a(64672)|0;x=0;va(87,C|0,64672,yb|0);yb=x;x=0;if(!(yb&1)){x=0;ua(69,C|0,c|0);yb=x;x=0;if(yb&1){d=Ia()|0;MTa(C);wb=1538;break a}else{MTa(C);d=0;wb=1537;break a}}}while(0);d=Ia()|0;wb=1538}while(0);if((wb|0)==1537){a7a();u=zb;return d|0}else if((wb|0)==1538){a7a();Ua(d|0)}return 0}function yc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=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,ha=0,la=0,ma=0,na=0,oa=0,qa=0,ra=0,ya=0,Aa=0,Ba=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0;La=u;u=u+368|0;Ka=La+16|0;Na=La+312|0;Qa=La+248|0;e=La+356|0;Pa=La+220|0;Oa=La+200|0;M=La+120|0;N=La+108|0;O=La+100|0;P=La+96|0;Q=La+88|0;C=La+80|0;D=La+68|0;E=La+60|0;Ma=La+40|0;oa=La+36|0;h=La+360|0;F=La+300|0;G=La+288|0;H=La+284|0;I=La+272|0;J=La+268|0;K=La+264|0;L=La;S=La+260|0;T=La+361|0;V=La+244|0;Y=La+240|0;Z=La+236|0;_=La+224|0;aa=La+216|0;ba=La+204|0;ca=La+188|0;da=La+176|0;ea=La+164|0;fa=La+152|0;ha=La+140|0;la=La+128|0;ma=La+124|0;na=La+116|0;qa=La+112|0;ra=La+104|0;ya=La+92|0;Aa=La+84|0;Ba=La+76|0;Da=La+72|0;Ea=La+64|0;Fa=La+56|0;Ja=La+52|0;Ga=n0a(c,0)|0;if(!(KBa(f[Ga>>2]|0,133180)|0))Ca(51368,51387,739,51404);c=n0a(c,1)|0;c=n0a(f[c>>2]|0,0)|0;c=f[c>>2]|0;Ga=n0a(c,0)|0;if(!(KBa(f[Ga>>2]|0,133176)|0))Ca(51415,51387,741,51404);R=n0a(c,3)|0;R=f[R>>2]|0;Ga=n0a(R,0)|0;Ga=n0a(f[Ga>>2]|0,0)|0;do if(KBa(f[Ga>>2]|0,133100)|0){Ga=n0a(R,0)|0;Ga=n0a(f[Ga>>2]|0,1)|0;Ga=uPa(Jbb(f[Ga>>2]|0)|0)|0;kNa(Ka,117887,1);if(!(g2a(f[Ga>>2]|0,f[Ka>>2]|0)|0)?(Ga=n0a(R,0)|0,Ga=n0a(f[Ga>>2]|0,1)|0,Ga=uPa(Jbb(f[Ga>>2]|0)|0)|0,kNa(Na,117876,1),!(g2a(f[Ga>>2]|0,f[Na>>2]|0)|0)):0)break;f[Qa>>2]=0;W=Qa+4|0;f[W>>2]=0;g=Qa+8|0;f[g>>2]=0;$=a+28|0;a:do if(!(b[f[$>>2]>>0]|0))Ha=21;else{c=f[a>>2]|0;x=0;va(85,e|0,0,0);Ga=x;x=0;if(Ga&1)d=Ia()|0;else{f[Ka>>2]=f[e>>2];Ysa(Na,c,Ka);x=0;c=ga(211,Na|0)|0;Ga=x;x=0;do if(!(Ga&1)){f[Ka>>2]=c;e=f[W>>2]|0;if((e|0)==(f[g>>2]|0)){x=0;ua(63,Qa|0,Ka|0);Ga=x;x=0;if(Ga&1)break}else{f[e>>2]=c;f[W>>2]=(f[W>>2]|0)+4}x=0;ja(40,(f[a>>2]|0)+96|0,65535,0)|0;Ga=x;x=0;if(!(Ga&1)){Ha=21;break a}}while(0);d=Ia()|0}}while(0);if((Ha|0)==21){x=0;ta(432,Pa|0);Ga=x;x=0;if(Ga&1)d=Ia()|0;else{Ga=f[Pa>>2]|0;f[Ga>>2]=f[33108];L1a(Ka,f[33047]|0);f[Ga+4>>2]=f[Ka>>2];f[Ga+8>>2]=f[33108];f[Ga+12>>2]=2;X=f[a>>2]|0;b[X+112>>0]=1;b[X+113>>0]=1;f[Pa>>2]=0;x=0;ua(64,X|0,Ga|0);Ga=x;x=0;if(Ga&1)d=Ia()|0;else{x=0;ta(432,Oa|0);Ga=x;x=0;do if(Ga&1)d=Ia()|0;else{Ga=f[Oa>>2]|0;f[Ga>>2]=f[33103];L1a(Ka,f[33047]|0);f[Ga+4>>2]=f[Ka>>2];f[Ga+8>>2]=f[33103];f[Ga+12>>2]=1;X=f[a>>2]|0;f[Oa>>2]=0;x=0;ua(64,X|0,Ga|0);Ga=x;x=0;if(Ga&1){d=Ia()|0;f[Oa>>2]=0;break}c=f[a>>2]|0;b[c+60>>0]=1;b[c+61>>0]=1;x=0;c=ga(212,24)|0;Ga=x;x=0;b:do if(!(Ga&1)){mPa(c);x=0;ua(65,Ka|0,67107);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}f[c>>2]=f[Ka>>2];x=0;ua(65,Ka|0,117865);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}f[c+4>>2]=f[Ka>>2];x=0;ua(65,Ka|0,67107);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}f[c+8>>2]=f[Ka>>2];f[c+12>>2]=3;f[c+20>>2]=1;x=0;ua(64,f[a>>2]|0,c|0);Ga=x;x=0;if(!(Ga&1)){x=0;c=ga(212,24)|0;Ga=x;x=0;do if(!(Ga&1)){mPa(c);x=0;ua(65,Ka|0,67097);Ga=x;x=0;if(Ga&1){d=Ia()|0;break b}f[c>>2]=f[Ka>>2];x=0;ua(65,Ka|0,117865);Ga=x;x=0;if(Ga&1){d=Ia()|0;break b}f[c+4>>2]=f[Ka>>2];x=0;ua(65,Ka|0,67097);Ga=x;x=0;if(Ga&1){d=Ia()|0;break b}f[c+8>>2]=f[Ka>>2];f[c+12>>2]=3;f[c+20>>2]=1;x=0;ua(64,f[a>>2]|0,c|0);Ga=x;x=0;if(Ga&1)break;Sab(M);Sab(N);Sab(O);Sab(P);Sab(Q);Sab(C);Sab(D);Sab(E);X=a+97|0;c:do if(!(b[X>>0]|0))Ha=62;else{f[Ka>>2]=0;e=1;g=0;while(1){c=Jbb(R)|0;x=0;c=ga(213,c|0)|0;Ha=x;x=0;if(Ha&1){Ha=53;break}if(e>>>0>=c>>>0){Ha=39;break}x=0;c=ia(45,R|0,e|0)|0;Ha=x;x=0;if(Ha&1){Ha=53;break}x=0;c=ia(45,f[c>>2]|0,0)|0;Ha=x;x=0;if(Ha&1){Ha=53;break}e=e+1|0;g=g+((KBa(f[c>>2]|0,133176)|0)&1)|0}do if((Ha|0)==39){f[Ka>>2]=g;f[Ma>>2]=f[a>>2];f[oa>>2]=a;b[h>>0]=0;x=0;za(1,Na|0,Ma|0,Ka|0,a+76|0,oa|0,a+32|0,h|0);Ga=x;x=0;if(Ga&1){d=Ia()|0;break}Ha=a+12|0;Ga=f[Na>>2]|0;f[Na>>2]=0;c=f[Ha>>2]|0;f[Ha>>2]=Ga;if(c|0){t4(c);Cbb(c)}Ha=62;break c}else if((Ha|0)==53){d=Ia()|0;f[Ka>>2]=g}while(0)}while(0);d:do if((Ha|0)==62){c=(f[a>>2]|0)+72|0;x=0;ja(40,c|0,0,0)|0;Ga=x;x=0;e:do if(!(Ga&1)){f[(f[a>>2]|0)+68>>2]=f[c>>2];y=a+132|0;z=a+16|0;Ga=a+8|0;A=a+112|0;B=a+116|0;v=a+204|0;w=a+208|0;t=1;i=0;g=0;e=0;n=0;f:while(1){j=Jbb(R)|0;x=0;c=ga(213,j|0)|0;s=x;x=0;if(s&1){Ha=67;break}if(t>>>0>=c>>>0){Ha=66;break}x=0;c=ia(45,R|0,t|0)|0;s=x;x=0;if(s&1){Ha=75;break}s=f[c>>2]|0;x=0;c=ia(45,s|0,0)|0;r=x;x=0;if(r&1){Ha=75;break}g:do if(KBa(f[c>>2]|0,133168)|0){r=0;o=i;q=g;h=e;c=n;while(1){x=0;e=ia(45,s|0,1)|0;n=x;x=0;if(n&1){Ha=76;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(213,e|0)|0;n=x;x=0;if(n&1){Ha=76;break f}if(r>>>0>=e>>>0){i=o;g=q;e=h;break g}x=0;e=ia(45,s|0,1)|0;n=x;x=0;if(n&1){Ha=86;break f}x=0;e=ia(45,f[e>>2]|0,r|0)|0;n=x;x=0;if(n&1){Ha=86;break f}g=f[e>>2]|0;x=0;e=ia(45,g|0,0)|0;n=x;x=0;if(n&1){Ha=87;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;n=x;x=0;if(n&1){Ha=87;break f}f[Na>>2]=f[e>>2];x=0;e=ia(45,g|0,1)|0;n=x;x=0;if(n&1){Ha=88;break f}n=f[e>>2]|0;e=Jbb(n)|0;do if(zab(f[n>>2]|0)|0){x=0;e=ga(215,e|0)|0;n=x;x=0;if(n&1){Ha=88;break f}if(!(+p[e>>3]==0.0)){Ha=85;break f}x=0;va(86,a|0,f[Na>>2]|0,1);n=x;x=0;if(n&1){Ha=88;break f}else{e=o;g=q}}else{x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(KBa(f[e>>2]|0,133156)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(KBa(f[e>>2]|0,133016)|0)){Ha=101;break f}x=0;e=ia(45,n|0,3)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Jbb(m)|0;if(!(zab(f[m>>2]|0)|0)){Ha=101;break f}x=0;e=ia(45,n|0,3)|0;m=x;x=0;if(m&1){Ha=88;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(215,e|0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(+p[e>>3]==0.0)){Ha=101;break f}x=0;e=ia(45,n|0,2)|0;n=x;x=0;if(n&1){Ha=104;break f}x=0;wa(72,a|0,f[Na>>2]|0,f[e>>2]|0,1);n=x;x=0;if(n&1){Ha=104;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(KBa(f[e>>2]|0,133068)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(KBa(f[e>>2]|0,133024)|0)){Ha=109;break f}x=0;e=ia(45,n|0,2)|0;n=x;x=0;if(n&1){Ha=115;break f}e=f[e>>2]|0;g=Jbb(e)|0;if(!(zab(f[e>>2]|0)|0)){x=0;wa(72,a|0,f[Na>>2]|0,e|0,4);n=x;x=0;if(n&1){Ha=115;break f}else{e=o;g=q;break}}x=0;e=ga(215,g|0)|0;n=x;x=0;if(n&1){Ha=115;break f}if(!(+p[e>>3]==0.0)){Ha=114;break f}x=0;va(86,a|0,f[Na>>2]|0,4);n=x;x=0;if(n&1){Ha=115;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(KBa(f[e>>2]|0,132396)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Jbb(m)|0;if(!(Oab(f[m>>2]|0)|0)){Ha=132;break f}x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(KBa(f[e>>2]|0,y)|0)){Ha=132;break f}x=0;e=ia(45,n|0,2)|0;m=x;x=0;if(m&1){Ha=88;break f}x=0;e=ia(45,f[e>>2]|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Jbb(m)|0;if(!(zab(f[m>>2]|0)|0)){Ha=132;break f}x=0;e=ia(45,n|0,2)|0;n=x;x=0;if(n&1){Ha=88;break f}x=0;e=ia(45,f[e>>2]|0,0)|0;n=x;x=0;if(n&1){Ha=88;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(215,e|0)|0;n=x;x=0;if(n&1){Ha=88;break f}if(!(+p[e>>3]==0.0)){Ha=132;break f}x=0;va(86,a|0,f[Na>>2]|0,3);n=x;x=0;if(n&1){Ha=88;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(KBa(f[e>>2]|0,132864)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=88;break f}m=f[e>>2]|0;Jbb(m)|0;do if(Oab(f[m>>2]|0)|0){x=0;e=ia(45,n|0,1)|0;m=x;x=0;if(m&1){Ha=145;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;m=x;x=0;if(m&1){Ha=145;break f}g=f[e>>2]|0;x=0;e=ia(45,n|0,2)|0;m=x;x=0;if(m&1){Ha=146;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;m=x;x=0;if(m&1){Ha=146;break f}if(!(g2a(g,f[32999]|0)|0))break;e=f[e>>2]|0;if(g2a(e,f[33005]|0)|0){f[M>>2]=f[Na>>2];break}if(g2a(e,f[33006]|0)|0){f[N>>2]=f[Na>>2];break}if(g2a(e,f[33007]|0)|0){f[O>>2]=f[Na>>2];break}if(g2a(e,f[33008]|0)|0){f[P>>2]=f[Na>>2];break}if(g2a(e,f[33009]|0)|0){f[Q>>2]=f[Na>>2];break}if(g2a(e,f[33010]|0)|0){f[C>>2]=f[Na>>2];break}if(g2a(e,f[33011]|0)|0){f[D>>2]=f[Na>>2];break}if(!(g2a(e,f[33012]|0)|0))break;f[E>>2]=f[Na>>2]}while(0);x=0;wa(72,a|0,f[Na>>2]|0,n|0,0);n=x;x=0;if(n&1){Ha=88;break f}else{e=o;g=q;break}}x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(KBa(f[e>>2]|0,132856)|0)){x=0;e=ia(45,n|0,0)|0;m=x;x=0;if(m&1){Ha=88;break f}if(!(KBa(f[e>>2]|0,132852)|0)){f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;n=j7a(51927)|0;x=0;va(87,I|0,51927,n|0);n=x;x=0;if(n&1){Ha=88;break f}x=0;ua(69,I|0,g|0);n=x;x=0;if(n&1){Ha=240;break f}MTa(I);e=o;g=q;break}e=f[a>>2]|0;g=e+76|0;i=e+80|0;if((f[i>>2]|0)==(f[g>>2]|0)){x=0;ua(65,H|0,67097);m=x;x=0;if(m&1){Ha=218;break f}x=0;f[Ka>>2]=f[H>>2];j=ja(41,Ga|0,Ka|0,1)|0;m=x;x=0;if(m&1){Ha=218;break f}f[Ma>>2]=j;k=f[i>>2]|0;if(k>>>0>=(f[e+84>>2]|0)>>>0){x=0;ua(67,g|0,Ma|0);m=x;x=0;if(m&1){Ha=218;break f}}else{zQa(k,j);f[i>>2]=(f[i>>2]|0)+16}e=f[a>>2]|0}j=f[e+76>>2]|0;l=j+4|0;m=j+8|0;e=f[m>>2]|0;g=f[l>>2]|0;x=0;i=ia(47,z|0,Na|0)|0;k=x;x=0;if(k&1){Ha=225;break f}f[i>>2]=e-g>>2;x=0;e=ia(45,n|0,1)|0;n=x;x=0;if(n&1){Ha=226;break f}k=f[e>>2]|0;i=j+12|0;g=0;while(1){e=Jbb(k)|0;x=0;e=ga(213,e|0)|0;n=x;x=0;if(n&1){Ha=227;break f}if(g>>>0>=e>>>0)break;x=0;e=ia(45,k|0,g|0)|0;n=x;x=0;if(n&1){Ha=234;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;n=x;x=0;if(n&1){Ha=234;break f}L1a(Ka,f[e>>2]|0);e=f[m>>2]|0;if(e>>>0>=(f[i>>2]|0)>>>0){x=0;ua(68,l|0,Ka|0);n=x;x=0;if(n&1){Ha=235;break f}}else{f[e>>2]=f[Ka>>2];f[m>>2]=(f[m>>2]|0)+4}g=g+1|0}e=(f[a>>2]|0)+72|0;x=0;ja(40,e|0,(f[m>>2]|0)-(f[l>>2]|0)>>2|0,0)|0;n=x;x=0;if(n&1){Ha=226;break f}f[(f[a>>2]|0)+68>>2]=f[e>>2];e=o;g=q;break}x=0;e=ia(45,n|0,1)|0;n=x;x=0;if(n&1){Ha=88;break f}e=f[e>>2]|0;x=0;g=ia(45,e|0,0)|0;n=x;x=0;if(n&1){Ha=88;break f}if(!(KBa(f[g>>2]|0,132396)|0)){Ha=167;break f}x=0;e=ia(45,e|0,1)|0;n=x;x=0;if(n&1){Ha=174;break f}e=f[e>>2]|0;g=Jbb(e)|0;x=0;i=ia(46,g|0,f[33216]|0)|0;n=x;x=0;if(n&1){Ha=174;break f}do if(i){x=0;e=ia(45,e|0,2)|0;n=x;x=0;if(n&1){Ha=176;break f}e=Jbb(f[e>>2]|0)|0;x=0;e=ga(214,e|0)|0;n=x;x=0;if(n&1){Ha=176;break f}e=f[e>>2]|0;if(g2a(e,f[33005]|0)|0){e=1;g=1;h=1;c=0;break}if(g2a(e,f[33006]|0)|0){e=2;g=1;h=1;c=0;break}if(g2a(e,f[33007]|0)|0){e=4;g=1;h=1;c=0;break}if(g2a(e,f[33008]|0)|0){e=1;g=1;h=0;c=0;break}if(g2a(e,f[33009]|0)|0){e=2;g=1;h=0;c=0;break}if(g2a(e,f[33010]|0)|0){e=4;g=1;h=0;c=0;break}if(g2a(e,f[33011]|0)|0){e=4;g=0;h=1;c=2;break}if(g2a(e,f[33012]|0)|0){e=8;g=0;h=1;c=1;break}f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;n=j7a(51825)|0;x=0;va(87,F|0,51825,n|0);n=x;x=0;if(n&1){Ha=176;break f}x=0;ua(66,F|0,e|0);n=x;x=0;if(n&1){Ha=187;break f}MTa(F);e=o;g=q}else{if(!(Oab(f[e>>2]|0)|0)){Ha=189;break f}x=0;e=ga(214,g|0)|0;n=x;x=0;if(n&1){Ha=192;break f}e=f[e>>2]|0;if(g2a(e,f[M>>2]|0)|0){e=1;g=1;h=1;c=0;break}if(g2a(e,f[N>>2]|0)|0){e=2;g=1;h=1;c=0;break}if(g2a(e,f[O>>2]|0)|0){e=4;g=1;h=1;c=0;break}if(g2a(e,f[P>>2]|0)|0){e=1;g=1;h=0;c=0;break}if(g2a(e,f[Q>>2]|0)|0){e=2;g=1;h=0;c=0;break}if(g2a(e,f[C>>2]|0)|0){e=4;g=1;h=0;c=0;break}if(g2a(e,f[D>>2]|0)|0){e=4;g=0;h=1;c=2;break}if(g2a(e,f[E>>2]|0)|0){e=8;g=0;h=1;c=1;break}f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;n=j7a(51869)|0;x=0;va(87,G|0,51869,n|0);n=x;x=0;if(n&1){Ha=192;break f}x=0;ua(66,G|0,e|0);n=x;x=0;if(n&1){Ha=203;break f}MTa(G);e=o;g=q}while(0);if((gV(A,f[Na>>2]|0)|0)!=(B|0)){Ha=205;break f}BFa(Ma,e,g,h,c);x=0;xa(4,Ka|0,A|0,f[Na>>2]|0,Na|0,Ma|0);q=x;x=0;if(q&1){Ha=208;break f}}while(0);r=r+1|0;o=e;q=g}}else{x=0;c=ia(45,s|0,0)|0;r=x;x=0;if(r&1){Ha=75;break f}if(!(KBa(f[c>>2]|0,133152)|0)){c=n;break}x=0;c=ia(45,s|0,1)|0;s=x;x=0;if(s&1){Ha=251;break f}x=0;c=ia(45,f[c>>2]|0,1)|0;s=x;x=0;if(s&1){Ha=252;break f}m=f[c>>2]|0;DUa(Na);l=0;while(1){c=Jbb(m)|0;x=0;c=ga(213,c|0)|0;s=x;x=0;if(s&1){Ha=253;break f}if(l>>>0>=c>>>0)break;x=0;c=ia(45,m|0,l|0)|0;s=x;x=0;if(s&1){Ha=266;break f}j=f[c>>2]|0;x=0;c=ia(45,j|0,0)|0;s=x;x=0;if(s&1){Ha=267;break f}c=Jbb(f[c>>2]|0)|0;x=0;c=ga(214,c|0)|0;s=x;x=0;if(s&1){Ha=267;break f}h=f[c>>2]|0;x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=267;break f}s=f[c>>2]|0;Jbb(s)|0;do if(Oab(f[s>>2]|0)|0){x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=269;break f}c=Jbb(f[c>>2]|0)|0;x=0;c=ga(214,c|0)|0;s=x;x=0;if(s&1){Ha=269;break f}k=f[c>>2]|0;x=0;ua(65,Ka|0,51947);s=x;x=0;if(s&1){Ha=271;break f}if(g2a(h,f[Ka>>2]|0)|0){c=f[a>>2]|0;L1a(J,k);x=0;f[Ka>>2]=f[J>>2];c=ia(48,c|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=269;break f}if(!c)break;else{Ha=265;break f}}if(!(g2a(h,f[33268]|0)|0)){if(g2a(h,f[33270]|0)|0){c=w;Ha=274}}else{c=v;Ha=274}if((Ha|0)==274){Ha=0;f[c>>2]=k}L1a(Ka,h);if(P5(Na,Ka)|0){L1a(Ka,k);L1a(Ma,h);x=0;c=ia(49,Na|0,Ma|0)|0;s=x;x=0;if(s&1){Ha=278;break f}f[(f[c>>2]|0)+4>>2]=f[Ka>>2];break}x=0;j=ga(212,12)|0;s=x;x=0;if(s&1){Ha=283;break f}j1a(j);L1a(Ka,h);f[j>>2]=f[Ka>>2];L1a(Ka,k);f[j+4>>2]=f[Ka>>2];f[j+8>>2]=0;x=0;ua(70,f[a>>2]|0,j|0);s=x;x=0;if(s&1){Ha=283;break f}L1a(Ka,h);x=0;c=ia(49,Na|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=284;break f}f[c>>2]=j}else{x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=267;break f}s=f[c>>2]|0;Jbb(s)|0;if(!(zab(f[s>>2]|0)|0)){Ha=287;break f}L1a(Ka,h);if(P5(Na,Ka)|0){Ha=289;break f}x=0;c=ia(45,j|0,1)|0;s=x;x=0;if(s&1){Ha=299;break f}c=Jbb(f[c>>2]|0)|0;x=0;c=ga(216,c|0)|0;s=x;x=0;if(s&1){Ha=299;break f}L1a(K,h);t$a(L,c);x=0;f[Ka>>2]=f[L>>2];f[Ka+4>>2]=f[L+4>>2];f[Ka+8>>2]=f[L+8>>2];f[Ka+12>>2]=f[L+12>>2];c=ia(50,Ga|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=300;break f}x=0;f[Ka>>2]=f[K>>2];c=ka(6,Ka|0,1,c|0,1)|0;s=x;x=0;if(s&1){Ha=300;break f}x=0;ua(71,f[a>>2]|0,c|0);s=x;x=0;if(s&1){Ha=300;break f}x=0;j=ga(212,12)|0;s=x;x=0;if(s&1){Ha=301;break f}j1a(j);L1a(Ka,h);f[j>>2]=f[Ka>>2];f[j+4>>2]=f[c>>2];f[j+8>>2]=3;x=0;ua(70,f[a>>2]|0,j|0);s=x;x=0;if(s&1){Ha=301;break f}L1a(Ka,h);x=0;c=ia(49,Na|0,Ka|0)|0;s=x;x=0;if(s&1){Ha=302;break f}f[c>>2]=j}while(0);l=l+1|0}$Ca(Na);c=n}while(0);t=t+1|0;n=c}switch(Ha|0){case 66:{h=a+12|0;g=1;h:while(1){x=0;c=ga(213,j|0)|0;Ha=x;x=0;if(Ha&1){Ha=309;break}if(g>>>0>=c>>>0){Ha=308;break}x=0;c=ia(45,R|0,g|0)|0;Ha=x;x=0;if(Ha&1){Ha=320;break}c=f[c>>2]|0;x=0;e=ia(45,c|0,0)|0;Ha=x;x=0;if(Ha&1){Ha=320;break}do if(KBa(f[e>>2]|0,133176)|0){x=0;e=ia(51,a|0,c|0)|0;Ha=x;x=0;if(Ha&1){Ha=321;break h}c=f[a>>2]|0;f[S>>2]=f[e>>2];x=0;f[Ka>>2]=f[S>>2];c=ia(48,c|0,Ka|0)|0;Ha=x;x=0;if(Ha&1){Ha=321;break h}if(c|0){Ha=316;break h}if(!(b[X>>0]|0)){x=0;ua(73,f[a>>2]|0,e|0);Ha=x;x=0;if(Ha&1){Ha=321;break h}else break}else{x=0;ua(72,f[h>>2]|0,e|0);Ha=x;x=0;if(Ha&1){Ha=321;break h}else break}}while(0);g=g+1|0}do if((Ha|0)==308){i:do if(b[X>>0]|0){x=0;ta(433,f[h>>2]|0);V=x;x=0;if(V&1)break e;V=f[a>>2]|0;U=a+76|0;f[Ka>>2]=f[U>>2];f[Ka+4>>2]=f[U+4>>2];f[Ka+8>>2]=f[U+8>>2];f[Ka+12>>2]=f[U+12>>2];f[Ka+16>>2]=f[U+16>>2];r3(Na,V,Ka);x=0;ta(434,Na|0);V=x;x=0;do if(!(V&1)){c=Jbb(a+40|0)|0;e=c+4|0;c=f[c>>2]|0;while(1){if((c|0)==(e|0))break;x=0;ua(74,Na|0,f[c+20>>2]|0);V=x;x=0;if(V&1){Ha=343;break}d=f[c+4>>2]|0;if(!d)while(1){d=f[c+8>>2]|0;if((f[d>>2]|0)==(c|0))break;else c=d}else while(1){c=f[d>>2]|0;if(!c)break;else d=c}c=d}if((Ha|0)==343){d=Ia()|0;break}c=f[W>>2]|0;d=f[Qa>>2]|0;while(1){if((d|0)==(c|0)){Ha=345;break}x=0;ua(74,Na|0,f[d>>2]|0);Ha=x;x=0;if(Ha&1){Ha=348;break}d=d+4|0}if((Ha|0)==345){Wca(Na);break i}else if((Ha|0)==348){d=Ia()|0;break}}else d=Ia()|0;while(0);Wca(Na);break d}while(0);O1((f[a>>2]|0)+132|0,(f[$>>2]|0)+4|0);f[Ma>>2]=0;k=Ma+4|0;f[k>>2]=0;g=Ma+8|0;f[g>>2]=0;e=f[a>>2]|0;h=f[e+16>>2]|0;i=a+212|0;j=a+216|0;e=f[e+12>>2]|0;j:while(1){if((e|0)==(h|0)){Ha=352;break}d=f[e>>2]|0;if(!(f[d+12>>2]|0)){c=f[d>>2]|0;f[oa>>2]=c;Ha=(gV(i,c)|0)==(j|0);d=f[e>>2]|0;do if(Ha){if(!(f2a(f[d+4>>2]|0,f[33020]|0)|0))break;d=f[k>>2]|0;if((d|0)==(f[g>>2]|0)){x=0;ua(77,Ma|0,oa|0);Ha=x;x=0;if(Ha&1){Ha=366;break j}else break}else{f[d>>2]=c;f[k>>2]=(f[k>>2]|0)+4;break}}else{f[Y>>2]=f[d+4>>2];f[Z>>2]=f[d+8>>2];x=0;f[Na>>2]=f[Y>>2];f[Ka>>2]=f[Z>>2];ua(75,Na|0,Ka|0);Ha=x;x=0;if(Ha&1){Ha=356;break j}x=0;d=ia(54,i|0,oa|0)|0;Ha=x;x=0;if(Ha&1){Ha=356;break j}x=0;ua(76,_|0,f[d>>2]|0);Ha=x;x=0;if(Ha&1){Ha=356;break j}x=0;d=ia(55,_|0,f[a>>2]|0)|0;Ha=x;x=0;if(Ha&1){Ha=361;break j}f[(f[e>>2]|0)+16>>2]=f[d>>2];MTa(_)}while(0)}e=e+4|0}do if((Ha|0)==352){c=f[k>>2]|0;d=f[Ma>>2]|0;while(1){if((d|0)==(c|0))break;_=f[a>>2]|0;L1a(aa,f[d>>2]|0);x=0;f[Ka>>2]=f[aa>>2];ua(78,_|0,Ka|0);_=x;x=0;if(_&1){Ha=374;break}d=d+4|0}if((Ha|0)==374){d=Ia()|0;break}aa=f[a>>2]|0;_=a+76|0;f[Ka>>2]=f[_>>2];f[Ka+4>>2]=f[_+4>>2];f[Ka+8>>2]=f[_+8>>2];f[Ka+12>>2]=f[_+12>>2];f[Ka+16>>2]=f[_+16>>2];r3(Na,aa,Ka);G0a(Na,f[a+92>>2]|0);if(b[a+32>>0]|0){h0a(Na);A_a(Na,0)}x=0;ua(79,Na|0,a|0);aa=x;x=0;k:do if(aa&1)Ha=376;else{do if(b[a+96>>0]|0){f[ba>>2]=0;f[ba+4>>2]=0;f[ba+8>>2]=0;aa=j7a(68244)|0;x=0;va(87,ba|0,68244,aa|0);aa=x;x=0;if(aa&1){Ha=376;break k}x=0;ua(80,Na|0,ba|0);aa=x;x=0;if(aa&1){d=Ia()|0;MTa(ba);break k}else{MTa(ba);break}}while(0);do if(!(b[X>>0]|0)){if(!(b[(f[$>>2]|0)+1>>0]|0))break;x=0;ta(435,Na|0);ha=x;x=0;if(ha&1){Ha=376;break k}}else{f[ca>>2]=0;f[ca+4>>2]=0;f[ca+8>>2]=0;ba=j7a(71029)|0;x=0;va(87,ca|0,71029,ba|0);ba=x;x=0;if(ba&1){Ha=376;break k}x=0;ua(80,Na|0,ca|0);ba=x;x=0;if(ba&1){d=Ia()|0;MTa(ca);break k}MTa(ca);f[da>>2]=0;f[da+4>>2]=0;f[da+8>>2]=0;ca=j7a(69603)|0;x=0;va(87,da|0,69603,ca|0);ca=x;x=0;if(ca&1){Ha=376;break k}x=0;ua(80,Na|0,da|0);ca=x;x=0;if(ca&1){d=Ia()|0;MTa(da);break k}MTa(da);f[ea>>2]=0;f[ea+4>>2]=0;f[ea+8>>2]=0;da=j7a(68682)|0;x=0;va(87,ea|0,68682,da|0);da=x;x=0;if(da&1){Ha=376;break k}x=0;ua(80,Na|0,ea|0);da=x;x=0;if(da&1){d=Ia()|0;MTa(ea);break k}MTa(ea);f[fa>>2]=0;f[fa+4>>2]=0;f[fa+8>>2]=0;ea=j7a(68806)|0;x=0;va(87,fa|0,68806,ea|0);ea=x;x=0;if(ea&1){Ha=376;break k}x=0;ua(80,Na|0,fa|0);ea=x;x=0;if(ea&1){d=Ia()|0;MTa(fa);break k}MTa(fa);f[ha>>2]=0;f[ha+4>>2]=0;f[ha+8>>2]=0;fa=j7a(68951)|0;x=0;va(87,ha|0,68951,fa|0);fa=x;x=0;if(fa&1){Ha=376;break k}x=0;ua(80,Na|0,ha|0);fa=x;x=0;if(fa&1){d=Ia()|0;MTa(ha);break k}else{MTa(ha);break}}while(0);do if(b[(f[$>>2]|0)+1>>0]|0){x=0;ta(436,Na|0);ha=x;x=0;if(ha&1){Ha=376;break k}f[la>>2]=0;f[la+4>>2]=0;f[la+8>>2]=0;ha=j7a(71029)|0;x=0;va(87,la|0,71029,ha|0);ha=x;x=0;if(ha&1){Ha=376;break k}x=0;ua(80,Na|0,la|0);ha=x;x=0;if(ha&1){d=Ia()|0;MTa(la);break k}else{MTa(la);break}}while(0);if(b[X>>0]|0?(x=0,ta(437,Na|0),la=x,x=0,la&1):0){Ha=376;break}x=0;ta(438,Na|0);la=x;x=0;if(la&1){Ha=376;break}if(b[(f[$>>2]|0)+1>>0]|0?(la=f[a>>2]|0,f[ma>>2]=f[32962],x=0,f[Ka>>2]=f[ma>>2],ua(78,la|0,Ka|0),ma=x,x=0,ma&1):0){Ha=376;break}e=a+204|0;l:do if(Qab(f[e>>2]|0)|0){d=a+208|0;if(!(Qab(f[d>>2]|0)|0))break;Bab(oa);ma=f[a>>2]|0;L1a(na,f[d>>2]|0);x=0;f[Ka>>2]=f[na>>2];d=ia(56,ma|0,Ka|0)|0;na=x;x=0;m:do if(na&1)Ha=420;else{d=f[d+36>>2]|0;c=f[d>>2]|0;if(zab(c)|0){x=0;d=ga(217,d|0)|0;na=x;x=0;if(na&1){Ha=420;break}x=0;d=ga(218,d+12|0)|0;na=x;x=0;if(na&1){Ha=420;break}c=f[d>>2]|0;d=c;c=f[c>>2]|0}if(E6a(c)|0){x=0;d=ga(219,d|0)|0;na=x;x=0;if(na&1){Ha=420;break}d=f[d+8>>2]|0}x=0;d=ga(220,d|0)|0;na=x;x=0;if(na&1){d=Ia()|0;break}m=f[d+8>>2]|0;f[oa>>2]=m;n=f[a>>2]|0;L1a(qa,f[e>>2]|0);x=0;f[Ka>>2]=f[qa>>2];n=ia(56,n|0,Ka|0)|0;qa=x;x=0;do if(!(qa&1)){if(Qab(f[n+32>>2]|0)|0){x=0;wa(71,52071,51387,1502,51404);x=0;break}g9(n);x=0;ua(65,ra|0,52088);qa=x;x=0;do if(!(qa&1)){x=0;f[Ka>>2]=f[ra>>2];e=ja(42,n|0,Ka|0,1)|0;ra=x;x=0;if(ra&1)break;x=0;ua(65,ya|0,52091);ra=x;x=0;do if(!(ra&1)){x=0;f[Ka>>2]=f[ya>>2];d=ja(42,n|0,Ka|0,1)|0;ya=x;x=0;if(ya&1)break;x=0;ua(65,Aa|0,52094);ya=x;x=0;do if(!(ya&1)){x=0;f[Ka>>2]=f[Aa>>2];g=ja(42,n|0,Ka|0,1)|0;Aa=x;x=0;if(Aa&1)break;x=0;ua(65,Ba|0,52097);Aa=x;x=0;do if(!(Aa&1)){x=0;f[Ka>>2]=f[Ba>>2];c=ja(42,n|0,Ka|0,1)|0;Ba=x;x=0;if(Ba&1)break;x=0;ua(65,Da|0,87072);Ba=x;x=0;do if(!(Ba&1)){x=0;f[Ka>>2]=f[Da>>2];h=ja(42,n|0,Ka|0,1)|0;Da=x;x=0;if(Da&1)break;x=0;ua(65,Ea|0,52100);Da=x;x=0;do if(!(Da&1)){x=0;f[Ka>>2]=f[Ea>>2];l=ja(43,n|0,Ka|0,2)|0;Ea=x;x=0;if(Ea&1)break;x=0;ua(65,Fa|0,52104);Ea=x;x=0;do if(!(Ea&1)){x=0;f[Ka>>2]=f[Fa>>2];i=ja(43,n|0,Ka|0,2)|0;Fa=x;x=0;if(Fa&1)break;x=0;j=ga(221,f[a+4>>2]|0)|0;a=x;x=0;do if(!(a&1)){k=j+12|0;x=0;d=ja(44,Ga|0,e|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;d=ja(45,Ga|0,l|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;x=0;d=ja(44,Ga|0,g|0,c|0)|0;a=x;x=0;if(a&1)break;x=0;d=ja(45,Ga|0,i|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;x=0;g=ja(46,f[Ga>>2]|0,h|0,1)|0;a=x;x=0;if(a&1)break;x=0;e=ja(46,f[Ga>>2]|0,h|0,1)|0;a=x;x=0;if(a&1)break;x=0;d=ja(46,f[Ga>>2]|0,l|0,2)|0;a=x;x=0;if(a&1)break;x=0;c=ja(46,f[Ga>>2]|0,i|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ka(7,f[Ga>>2]|0,31,d|0,c|0)|0;a=x;x=0;if(a&1)break;x=0;d=pa(7,f[Ga>>2]|0,8,0,8,e|0,d|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ka(8,Ga|0,g|0,d|0,0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;x=0;c=ja(46,f[Ga>>2]|0,l|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ja(46,f[Ga>>2]|0,i|0,2)|0;a=x;x=0;if(a&1)break;x=0;d=ka(7,f[Ga>>2]|0,29,c|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;d=ja(45,Ga|0,l|0,d|0)|0;a=x;x=0;if(a&1)break;x=0;ua(81,k|0,d|0);a=x;x=0;if(a&1)break;f[Ja>>2]=m;x=0;d=ia(57,Ga|0,l|0)|0;a=x;x=0;if(a&1)break;x=0;f[Ka>>2]=f[Ja>>2];d=ja(47,Ga|0,Ka|0,d|0)|0;Ka=x;x=0;if(Ka&1)break;x=0;ua(81,k|0,d|0);Ka=x;x=0;if(Ka&1)break;x=0;d=ia(58,Ga|0,l|0)|0;Ka=x;x=0;if(Ka&1)break;x=0;ua(81,k|0,d|0);Ka=x;x=0;if(Ka&1)break;x=0;ta(439,j|0);Ka=x;x=0;if(Ka&1)break;f[n+36>>2]=j;break l}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0;break m}while(0);d=Ia()|0}while(0);if((Ha|0)==420)d=Ia()|0;break k}while(0);Wca(Na);zSa(Ma);f[Oa>>2]=0;f[Pa>>2]=0;zSa(Qa);u=La;return}while(0);if((Ha|0)==376)d=Ia()|0;Wca(Na)}else if((Ha|0)==356){d=Ia()|0;Ha=369}else if((Ha|0)==361){d=Ia()|0;MTa(_);Ha=369}else if((Ha|0)==366){d=Ia()|0;Ha=369}while(0);zSa(Ma);break d}else if((Ha|0)==309){d=Ia()|0;break d}else if((Ha|0)==316){x=0;sa(3);Na=x;x=0;if(Na&1){d=Ia()|0;break}x=0;c=ia(52,T|0,52050)|0;Na=x;x=0;do if(!(Na&1)){f[V>>2]=f[e>>2];x=0;f[Ka>>2]=f[V>>2];ia(53,c|0,Ka|0)|0;Na=x;x=0;if(Na&1)break;lCa()}while(0);Ia()|0;lCa()}else if((Ha|0)==320)d=Ia()|0;else if((Ha|0)==321)d=Ia()|0;while(0);break d}case 67:{d=Ia()|0;break d}case 75:{d=Ia()|0;break d}case 76:{d=Ia()|0;break d}case 85:{x=0;wa(71,51565,51387,989,51404);x=0;Ha=89;break}case 86:{d=Ia()|0;break d}case 87:{d=Ia()|0;break}case 88:{d=Ia()|0;Ha=90;break}case 101:{x=0;wa(71,51589,51387,993,51404);x=0;Ha=89;break}case 104:{d=Ia()|0;break}case 109:{x=0;wa(71,51658,51387,998,51404);x=0;Ha=89;break}case 114:{x=0;wa(71,51675,51387,1002,51404);x=0;d=Ia()|0;Ha=116;break}case 115:{d=Ia()|0;Ha=116;break}case 132:{x=0;wa(71,51700,51387,1009,51404);x=0;Ha=89;break}case 145:{d=Ia()|0;break}case 146:{d=Ia()|0;break}case 167:{x=0;wa(71,51808,51387,1041,51404);x=0;Ha=89;break}case 174:{d=Ia()|0;Ha=175;break}case 176:{d=Ia()|0;break}case 187:{d=Ia()|0;MTa(F);break}case 189:{x=0;wa(71,51845,51387,1068,51404);x=0;d=Ia()|0;Ha=175;break}case 192:{d=Ia()|0;break}case 203:{d=Ia()|0;MTa(G);break}case 205:{x=0;wa(71,51895,51387,1090,51404);x=0;d=Ia()|0;break}case 208:{d=Ia()|0;break}case 218:{d=Ia()|0;break}case 225:{d=Ia()|0;break}case 226:{d=Ia()|0;break}case 227:{d=Ia()|0;break}case 234:{d=Ia()|0;break}case 235:{d=Ia()|0;break}case 240:{d=Ia()|0;MTa(I);break}case 251:{d=Ia()|0;break d}case 252:{d=Ia()|0;break d}case 253:{d=Ia()|0;Ha=304;break}case 265:{x=0;wa(71,51974,51387,1125,51404);x=0;d=Ia()|0;Ha=270;break}case 266:{d=Ia()|0;Ha=304;break}case 267:{d=Ia()|0;Ha=268;break}case 269:{d=Ia()|0;Ha=270;break}case 271:{d=Ia()|0;Ha=304;break}case 278:{d=Ia()|0;Ha=304;break}case 283:{d=Ia()|0;Ha=304;break}case 284:{d=Ia()|0;Ha=304;break}case 287:{x=0;wa(71,52005,51387,1145,51404);x=0;d=Ia()|0;Ha=268;break}case 289:{x=0;wa(71,52025,51387,1146,51404);x=0;d=Ia()|0;Ha=304;break}case 299:{d=Ia()|0;Ha=304;break}case 300:{d=Ia()|0;Ha=304;break}case 301:{d=Ia()|0;Ha=304;break}case 302:{d=Ia()|0;Ha=304;break}}if((Ha|0)==89){d=Ia()|0;Ha=90}else if((Ha|0)!=116)if((Ha|0)!=175)if((Ha|0)==268)Ha=304;else if((Ha|0)==270)Ha=304;if((Ha|0)!=90)if((Ha|0)==304){$Ca(Na);break d}break d}while(0);d=Ia()|0}while(0);break b}while(0);d=Ia()|0}else Ha=44}else Ha=44;while(0);if((Ha|0)==44)d=Ia()|0;f[Oa>>2]=0}while(0)}f[Pa>>2]=0}}zSa(Qa);Ua(d|0)}while(0);Ca(51439,51387,743,51404)}function zc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=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;G=u;u=u+160|0;n=G+144|0;m=G+140|0;D=G+136|0;E=G+132|0;H=G+120|0;I=G+108|0;F=G+96|0;J=G+76|0;K=G+64|0;o=G+40|0;p=G+28|0;q=G+16|0;r=G+104|0;s=G+88|0;t=G+60|0;v=G+36|0;w=G+32|0;y=G+24|0;z=G+12|0;A=G+8|0;B=G+4|0;C=G;f[D>>2]=a;f[E>>2]=c;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;DUa(I);C0a(F);f[J>>2]=0;i=J+4|0;f[i>>2]=0;j=J+8|0;f[j>>2]=0;f[K>>2]=0;k=K+4|0;f[k>>2]=0;l=K+8|0;f[l>>2]=0;f[o>>2]=H;f[o+4>>2]=I;f[o+8>>2]=J;f[o+12>>2]=F;f[o+16>>2]=K;f[p>>2]=I;f[q>>2]=H;f[q+4>>2]=I;x=0;ua(640,J|0,D|0);h=x;x=0;do if(h&1)L=10;else{a=f[k>>2]|0;if((a|0)==(f[l>>2]|0)){x=0;ua(640,K|0,E|0);h=x;x=0;if(h&1){L=10;break}h=E}else{f[a>>2]=f[E>>2];f[k>>2]=(f[k>>2]|0)+4;h=E}g=d+16|0;a:while(1){a=f[i>>2]|0;c=(a|0)==(f[J>>2]|0);d=f[k>>2]|0;e=(d|0)==(f[K>>2]|0);if(c|e){L=486;break}c=a+-4|0;a=f[c>>2]|0;f[D>>2]=a;f[i>>2]=c;c=d+-4|0;e=f[c>>2]|0;f[h>>2]=e;f[k>>2]=c;c=a;d=(a|0)!=0;a=e;if((e|0)==0^(d^1)){a=0;break}b:do if(d){if((F|0)==(c|0)){x=0;ta(464,q|0);e=x;x=0;if(e&1){L=9;break a}else break}x=0;a=ja(63,f[g>>2]|0,c|0,a|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a){a=f[D>>2]|0;c=f[a>>2]|0;if((c|0)!=(f[f[E>>2]>>2]|0)){a=0;break a}do switch(c|0){case 23:case 22:break b;case 1:{x=0;a=ga(217,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[r>>2]=f[a+8>>2];x=0;a=ga(217,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[s>>2]=f[a+8>>2];x=0;f[m>>2]=f[r>>2];f[n>>2]=f[s>>2];a=ja(64,o|0,m|0,n|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a){a=0;break a}x=0;a=ga(217,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(217,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((Jbb(a)|0)!=(Jbb(f[c+16>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(217,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=28;break a}if(d>>>0>=(Jbb(f[a+16>>2]|0)|0)>>>0)break b;x=0;a=ga(217,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=28;break a}x=0;a=ia(75,a+12|0,d|0)|0;e=x;x=0;if(e&1){L=28;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=28;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(217,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=28;break a}x=0;a=ia(75,a+12|0,d|0)|0;e=x;x=0;if(e&1){L=28;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=28;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 2:{x=0;a=ga(260,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(260,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(260,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(260,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(260,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(260,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 3:{x=0;a=ga(261,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[t>>2]=f[a+8>>2];x=0;a=ga(261,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[v>>2]=f[a+8>>2];x=0;f[m>>2]=f[t>>2];f[n>>2]=f[v>>2];a=ja(64,o|0,m|0,n|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a){a=0;break a}x=0;a=ga(261,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(261,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 4:{x=0;a=ga(262,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[w>>2]=f[a+8>>2];x=0;a=ga(262,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[y>>2]=f[a+8>>2];f[m>>2]=f[w>>2];f[n>>2]=f[y>>2];if(!(V1(p,m,n)|0)){a=0;break a}x=0;a=ga(262,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(262,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(262,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(262,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 5:{x=0;a=ga(263,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+12>>2]|0)|0)){a=0;break a}c=0;while(1){x=0;a=ga(263,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=101;break a}e=c>>>0<(Jbb(f[a+12>>2]|0)|0)>>>0;a=f[D>>2]|0;if(!e)break;x=0;a=ga(263,a|0)|0;e=x;x=0;if(e&1){L=101;break a}x=0;a=ia(100,a+8|0,c|0)|0;e=x;x=0;if(e&1){L=101;break a}f[z>>2]=f[a>>2];x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=101;break a}x=0;a=ia(100,a+8|0,c|0)|0;e=x;x=0;if(e&1){L=101;break a}f[A>>2]=f[a>>2];f[m>>2]=f[z>>2];f[n>>2]=f[A>>2];if(V1(p,m,n)|0)c=c+1|0;else{a=0;break a}}x=0;a=ga(263,a|0)|0;e=x;x=0;if(e&1){L=9;break a}f[B>>2]=f[a+24>>2];x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}f[C>>2]=f[a+24>>2];f[m>>2]=f[B>>2];f[n>>2]=f[C>>2];if(!(V1(p,m,n)|0)){a=0;break a}x=0;a=ga(263,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(263,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+32|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(263,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+32|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 6:{x=0;a=ga(264,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(264,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(f2a(f[a+24>>2]|0,f[c+24>>2]|0)|0){a=0;break a}x=0;a=ga(264,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(264,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+12>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(264,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=135;break a}if(d>>>0>=(Jbb(f[a+12>>2]|0)|0)>>>0)break b;x=0;a=ga(264,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=135;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=135;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=135;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(264,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=135;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=135;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=135;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 7:{x=0;a=ga(265,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(265,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(f2a(f[a+24>>2]|0,f[c+24>>2]|0)|0){a=0;break a}x=0;a=ga(265,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(265,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+12>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(265,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=156;break a}if(d>>>0>=(Jbb(f[a+12>>2]|0)|0)>>>0)break b;x=0;a=ga(265,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=156;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=156;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=156;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(265,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=156;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=156;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=156;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 8:{x=0;a=ga(266,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(f2a(f[a+24>>2]|0,f[c+24>>2]|0)|0){a=0;break a}x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+12>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=185;break a}if(d>>>0>=(Jbb(f[a+12>>2]|0)|0)>>>0)break b;x=0;a=ga(266,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=185;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=185;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=185;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(266,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=185;break a}x=0;a=ia(75,a+8|0,d|0)|0;e=x;x=0;if(e&1){L=185;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=185;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}case 9:{x=0;a=ga(267,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(267,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)==(f[c+8>>2]|0))break b;else{a=0;break a}}case 10:{x=0;a=ga(257,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(257,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(257,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+4>>2]|0;x=0;c=ga(257,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+4>>2]|0)){a=0;break a}x=0;a=ga(257,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(257,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 11:{x=0;a=ga(220,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(220,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(f2a(f[a+8>>2]|0,f[c+8>>2]|0)|0){a=0;break a}else break b}case 12:{x=0;a=ga(268,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(268,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(f2a(f[a+8>>2]|0,f[c+8>>2]|0)|0){a=0;break a}x=0;a=ga(268,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(268,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 13:{x=0;a=ga(269,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+8>>0]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+8>>0]|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;a=ga(270,a|0)|0;e=x;x=0;if(e&1){L=9;break a}do if(a){x=0;a=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;a=ga(270,a|0)|0;e=x;x=0;if(e&1){L=9;break a}if(!a)break;x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+9>>0]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+9>>0]|0)){a=0;break a}}while(0);x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+12>>2]|0)|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+16>>2]|0)|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+20>>0]|0;x=0;c=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+20>>0]|0)){a=0;break a}x=0;a=ga(269,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(269,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 14:{x=0;a=ga(271,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+8>>0]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+8>>0]|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+12>>2]|0)|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+16>>2]|0)|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+32>>2]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+32>>2]|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+20>>0]|0;x=0;c=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+20>>0]|0)){a=0;break a}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(271,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(271,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+28|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 25:{x=0;a=ga(272,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+8>>0]|0;x=0;c=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+8>>0]|0)){a=0;break a}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+12>>2]|0;x=0;c=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+12>>2]|0)|0)){a=0;break a}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(272,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(272,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 24:{x=0;a=ga(273,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=b[a+12>>0]|0;x=0;c=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a<<24>>24!=(b[c+12>>0]|0)){a=0;break a}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+16>>2]|0;x=0;c=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+16>>2]|0)|0)){a=0;break a}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(273,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(273,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+24|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 26:{x=0;a=ga(274,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+24>>2]|0;x=0;c=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+24>>2]|0)){a=0;break a}x=0;a=ga(274,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(274,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(274,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(274,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+20|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 27:{x=0;a=ga(275,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(275,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(275,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(275,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 15:{x=0;a=ga(241,a|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(241,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;a=ia(114,a+8|0,c+8|0)|0;e=x;x=0;if(e&1){L=9;break a}if(a){a=0;break a}else break b}case 16:{x=0;a=ga(276,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(276,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(276,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(276,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 17:{x=0;a=ga(277,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(277,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(277,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(277,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(277,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(277,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 18:{x=0;a=ga(278,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(278,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(278,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(278,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+12|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}x=0;a=ga(278,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(278,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+16|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 19:{x=0;a=ga(279,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(279,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 20:{x=0;a=ga(219,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=9;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(219,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=a+8|0;c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=9;break a}else break b}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4;break b}}case 21:{x=0;a=ga(280,a|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+8>>2]|0;x=0;c=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if((a|0)!=(f[c+8>>2]|0)){a=0;break a}x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}x=0;c=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}if(f2a(f[a+12>>2]|0,f[c+12>>2]|0)|0){a=0;break a}x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}a=f[a+20>>2]|0;x=0;c=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=9;break a}e=Jbb(a)|0;if((e|0)!=(Jbb(f[c+20>>2]|0)|0)){a=0;break a}d=0;while(1){x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=473;break a}if(d>>>0>=(Jbb(f[a+20>>2]|0)|0)>>>0)break b;x=0;a=ga(280,f[D>>2]|0)|0;e=x;x=0;if(e&1){L=473;break a}x=0;a=ia(75,a+16|0,d|0)|0;e=x;x=0;if(e&1){L=473;break a}c=f[i>>2]|0;if((c|0)==(f[j>>2]|0)){x=0;ua(640,J|0,a|0);e=x;x=0;if(e&1){L=473;break a}}else{f[c>>2]=f[a>>2];f[i>>2]=(f[i>>2]|0)+4}x=0;a=ga(280,f[E>>2]|0)|0;e=x;x=0;if(e&1){L=473;break a}x=0;a=ia(75,a+16|0,d|0)|0;e=x;x=0;if(e&1){L=473;break a}c=f[k>>2]|0;if((c|0)==(f[l>>2]|0)){x=0;ua(640,K|0,a|0);e=x;x=0;if(e&1){L=473;break a}}else{f[c>>2]=f[a>>2];f[k>>2]=(f[k>>2]|0)+4}d=d+1|0}}default:{L=485;break a}}while(0)}}while(0)}if((L|0)==9){a=Ia()|0;break}else if((L|0)==28){a=Ia()|0;break}else if((L|0)==101){a=Ia()|0;break}else if((L|0)==135){a=Ia()|0;break}else if((L|0)==156){a=Ia()|0;break}else if((L|0)==185){a=Ia()|0;break}else if((L|0)==473){a=Ia()|0;break}else if((L|0)==485){x=0;sa(5);x=0;L=10;break}else if((L|0)==486)a=c&e;zSa(K);zSa(J);wya(I);zSa(H);u=G;return a|0}while(0);if((L|0)==10)a=Ia()|0;zSa(K);zSa(J);wya(I);zSa(H);Ua(a|0);return 0}function Ac(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,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,v=0,w=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;R=u;u=u+448|0;h=R+424|0;U=R;M=R+400|0;T=R+412|0;N=R+388|0;O=R+376|0;P=R+364|0;Q=R+352|0;A=R+340|0;B=R+328|0;C=R+316|0;D=R+304|0;E=R+292|0;F=R+280|0;G=R+268|0;H=R+256|0;I=R+244|0;J=R+232|0;K=R+220|0;L=R+208|0;i=R+196|0;j=R+184|0;k=R+172|0;l=R+160|0;m=R+148|0;n=R+136|0;o=R+124|0;p=R+112|0;q=R+100|0;r=R+88|0;s=R+76|0;t=R+64|0;v=R+52|0;w=R+40|0;y=R+28|0;z=R+16|0;S=lF(Or(c,0)|0)|0;e=FWa(S,46)|0;d=b[S>>0]|0;a:do if(e){if(d<<24>>24==109)switch(b[S+7>>0]|0){case 115:{d=Lo(a,c,1)|0;g=536;break a}case 103:{d=Lo(a,c,2)|0;g=536;break a}default:{g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[h>>2]=f[U>>2];f[h+4>>2]=f[U+4>>2];f[h+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,h|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(h);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}}d=Co(S,0,1)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;f[U+12>>2]=0;B1a(U,e+1|0,15)|0;b:do switch(b[U>>0]|0){case 97:{S=(b[U+1>>0]|0)+-98<<24>>24;c:do switch(((S&255)>>>1|S<<7&255)<<24>>24){case 0:{d=si(a,c,(d|0)==3?8:9,d)|0;g=310;break b}case 1:{switch(d|0){case 1:{d=0;break}case 2:{d=25;break}default:d=(d|0)==3?50:63}d=g_(a,c,d)|0;g=310;break b}case 6:{d=g_(a,c,(d|0)==1?7:32)|0;g=310;break b}case 9:{if(!(H0(U,92437,7)|0))switch(b[U+7>>0]|0){case 108:{d=dE(a,c,d,1)|0;g=310;break b}case 115:{d=VD(a,c,d,1)|0;g=310;break b}case 114:{d=xv(a,c,d)|0;g=310;break b}default:break c}break}default:{}}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[M>>2]=f[T>>2];f[M+4>>2]=f[T+4>>2];f[M+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,M|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(M);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 99:{d:do switch(b[U+1>>0]|0){case 101:{d=si(a,c,(d|0)==3?10:11,d)|0;g=310;break b}case 108:{d=si(a,c,(d|0)!=1&1,d)|0;g=310;break b}case 111:{switch(b[U+2>>0]|0){case 112:{d=g_(a,c,(d|0)==3?54:67)|0;g=310;break b}case 110:break;default:break d}switch(b[U+3>>0]|0){case 118:break;case 115:{d=DC(a,c,d)|0;g=310;break b}default:break d}switch(b[U+8>>0]|0){case 115:{g=(d|0)==3;d=si(a,c,(b[U+11>>0]|0)==51?(g?35:36):g?39:40,d)|0;g=310;break b}case 117:{g=(d|0)==3;d=si(a,c,(b[U+11>>0]|0)==51?(g?37:38):g?41:42,d)|0;g=310;break b}default:break d}}case 116:{d=si(a,c,(d|0)==1?2:3,d)|0;g=310;break b}default:{}}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[N>>2]=f[T>>2];f[N+4>>2]=f[T+4>>2];f[N+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,N|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(N);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 100:{switch(b[U+1>>0]|0){case 105:{g=64;break}case 101:{d=si(a,c,44,d)|0;g=310;break b}default:{}}e:do if((g|0)==64)switch(b[U+3>>0]|0){case 95:{d=(d|0)==1;d=g_(a,c,(b[U+4>>0]|0)==117?(d?4:29):d?3:28)|0;g=310;break b}case 0:{d=g_(a,c,(d|0)==3?53:66)|0;g=310;break b}default:break e}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[O>>2]=f[T>>2];f[O+4>>2]=f[T+4>>2];f[O+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,O|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(O);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 101:{switch(b[U+1>>0]|0){case 113:{g=80;break}case 120:switch(b[U+6>>0]|0){case 56:{d=si(a,c,(d|0)==1?47:49,d)|0;g=310;break b}case 49:{d=si(a,c,(d|0)==1?48:50,d)|0;g=310;break b}case 51:{d=si(a,c,51,d)|0;g=310;break b}default:{d=si(a,c,(b[U+7>>0]|0)==117?23:22,d)|0;g=310;break b}}default:{}}f:do if((g|0)==80){switch(b[U+2>>0]|0){case 0:break;case 122:{d=si(a,c,(d|0)==1?20:21,d)|0;g=310;break b}default:break f}switch(d|0){case 1:{d=15;break}case 2:{d=40;break}default:d=(d|0)==3?57:70}d=g_(a,c,d)|0;g=310;break b}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[P>>2]=f[T>>2];f[P+4>>2]=f[T+4>>2];f[P+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,P|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(P);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 102:{if((b[U+1>>0]|0)==108){d=si(a,c,(d|0)==3?12:13,d)|0;g=310;break b}g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[Q>>2]=f[T>>2];f[Q+4>>2]=f[T+4>>2];f[Q+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,Q|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(Q);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 103:{g:do switch(b[U+1>>0]|0){case 116:switch(b[U+2>>0]|0){case 95:{d=(d|0)==1;d=g_(a,c,(b[U+3>>0]|0)==117?(d?22:47):d?21:46)|0;g=310;break b}case 0:{d=g_(a,c,(d|0)==3?61:74)|0;g=310;break b}default:break g}case 101:switch(b[U+2>>0]|0){case 95:{d=(d|0)==1;d=g_(a,c,(b[U+3>>0]|0)==117?(d?24:49):d?23:48)|0;g=310;break b}case 0:{d=g_(a,c,(d|0)==3?62:75)|0;g=310;break b}default:break g}default:{}}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[A>>2]=f[T>>2];f[A+4>>2]=f[T+4>>2];f[A+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,A|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(A);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 108:{h:do switch(b[U+1>>0]|0){case 116:switch(b[U+2>>0]|0){case 95:{d=(d|0)==1;d=g_(a,c,(b[U+3>>0]|0)==117?(d?18:43):d?17:42)|0;g=310;break b}case 0:{d=g_(a,c,(d|0)==3?59:72)|0;g=310;break b}default:break h}case 101:switch(b[U+2>>0]|0){case 95:{d=(d|0)==1;d=g_(a,c,(b[U+3>>0]|0)==117?(d?20:45):d?19:44)|0;g=310;break b}case 0:{d=g_(a,c,(d|0)==3?60:73)|0;g=310;break b}default:break h}case 111:{d=dE(a,c,d,0)|0;g=310;break b}default:{}}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[B>>2]=f[T>>2];f[B+4>>2]=f[T+4>>2];f[B+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,B|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(B);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 109:switch(b[U+1>>0]|0){case 105:{d=g_(a,c,(d|0)==3?55:68)|0;g=310;break b}case 97:{d=g_(a,c,(d|0)==3?56:69)|0;g=310;break b}case 117:{switch(d|0){case 1:{d=2;break}case 2:{d=27;break}default:d=(d|0)==3?52:65}d=g_(a,c,d)|0;g=310;break b}default:{g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[C>>2]=f[T>>2];f[C+4>>2]=f[T+4>>2];f[C+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,C|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(C);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break b}}case 110:{i:do if((b[U+1>>0]|0)==101)switch(b[U+2>>0]|0){case 0:{switch(d|0){case 1:{d=16;break}case 2:{d=41;break}default:d=(d|0)==3?58:71}d=g_(a,c,d)|0;g=310;break b}case 97:{d=si(a,c,(d|0)==3?16:17,d)|0;g=310;break b}case 103:{d=si(a,c,(d|0)==3?6:7,d)|0;g=310;break b}default:break i}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[D>>2]=f[T>>2];f[D+4>>2]=f[T+4>>2];f[D+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,D|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(D);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 111:{if((b[U+1>>0]|0)==114){d=g_(a,c,(d|0)==1?8:33)|0;g=310;break b}g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[E>>2]=f[T>>2];f[E+4>>2]=f[T+4>>2];f[E+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,E|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(E);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 112:switch(b[U+1>>0]|0){case 114:{d=si(a,c,43,d)|0;g=310;break b}case 111:{d=si(a,c,(d|0)==1?4:5,d)|0;g=310;break b}default:{g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[F>>2]=f[T>>2];f[F+4>>2]=f[T+4>>2];f[F+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,F|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(F);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break b}}case 114:{j:do switch(b[U+1>>0]|0){case 101:switch(b[U+2>>0]|0){case 109:{d=(d|0)==1;d=g_(a,c,(b[U+4>>0]|0)==117?(d?6:31):d?5:30)|0;g=310;break b}case 105:{g=t6a(d)|0;d=si(a,c,g?((d|0)==3?45:46):(d|0)==1?33:34,d)|0;g=310;break b}default:break j}case 111:{if((b[U+2>>0]|0)==116){d=(d|0)==1;d=g_(a,c,(b[U+3>>0]|0)==108?(d?13:38):d?14:39)|0;g=310;break b}break}default:{}}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[G>>2]=f[T>>2];f[G+4>>2]=f[T+4>>2];f[G+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,G|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(G);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 115:switch(b[U+1>>0]|0){case 104:if((b[U+2>>0]|0)==108){d=g_(a,c,(d|0)==1?10:35)|0;g=310;break b}else{d=(d|0)==1;d=g_(a,c,(b[U+4>>0]|0)==117?(d?11:36):d?12:37)|0;g=310;break b}case 117:{switch(d|0){case 1:{d=1;break}case 2:{d=26;break}default:d=(d|0)==3?51:64}d=g_(a,c,d)|0;g=310;break b}case 113:{d=si(a,c,(d|0)==3?18:19,d)|0;g=310;break b}case 116:{d=VD(a,c,d,0)|0;g=310;break b}default:{g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[H>>2]=f[T>>2];f[H+4>>2]=f[T+4>>2];f[H+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,H|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(H);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break b}}case 116:{k:do if((b[U+1>>0]|0)==114)switch(b[U+6>>0]|0){case 115:{g=(d|0)==1;d=si(a,c,(b[U+9>>0]|0)==51?(g?25:26):g?29:30,d)|0;g=310;break b}case 117:{g=(d|0)==1;d=si(a,c,(b[U+9>>0]|0)==51?(g?27:28):g?31:32,d)|0;g=310;break b}default:{if((b[U+2>>0]|0)!=117)break k;d=si(a,c,(d|0)==3?14:15,d)|0;g=310;break b}}while(0);g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[I>>2]=f[T>>2];f[I+4>>2]=f[T+4>>2];f[I+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,I|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(I);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 119:{if(!(H0(U,92445,4)|0)){d=OS(a,c,d)|0;g=310;break b}if((b[U+1>>0]|0)==114){d=si(a,c,24,d)|0;g=310;break b}g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[J>>2]=f[T>>2];f[J+4>>2]=f[T+4>>2];f[J+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,J|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(J);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}case 120:{if((b[U+1>>0]|0)==111){d=g_(a,c,(d|0)==1?9:34)|0;g=310;break b}g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[K>>2]=f[T>>2];f[K+4>>2]=f[T+4>>2];f[K+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,K|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(K);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311;break}default:{g=Ea(20)|0;f[T>>2]=0;f[T+4>>2]=0;f[T+8>>2]=0;S=j7a(92427)|0;x=0;va(87,T|0,92427,S|0);S=x;x=0;do if(!(S&1)){x=0;ia(59,T|0,U|0)|0;U=x;x=0;if(U&1){d=Ia()|0;MTa(T);break}f[L>>2]=f[T>>2];f[L+4>>2]=f[T+4>>2];f[L+8>>2]=f[T+8>>2];d=0;while(1){if((d|0)==3)break;f[T+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,L|0);U=x;x=0;if(U&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(L);MTa(T);if(!e){g=311;break b}}else d=Ia()|0;while(0);La(g|0);g=311}}while(0);if((g|0)==310){g=536;break}else if((g|0)==311){g=537;break}}else do switch(d<<24>>24|0){case 98:switch(b[S+1>>0]|0){case 108:{d=bg(a,c)|0;g=536;break a}case 114:{if((b[S+2>>0]|0)==95?(b[S+3>>0]|0)==116:0){d=Dr(a,c)|0;g=536;break a}d=VE(a,c)|0;g=536;break a}default:{g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[i>>2]=f[U>>2];f[i+4>>2]=f[U+4>>2];f[i+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,i|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(i);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}}case 99:{if((b[S+1>>0]|0)==97){if(g2a(S,f[33099]|0)|0){d=Kv(a,c)|0;g=536;break a}if(g2a(S,f[33098]|0)|0){d=eG(a,c)|0;g=536;break a}if(g2a(S,f[33097]|0)|0){d=Gk(a,c)|0;g=536;break a}}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[j>>2]=f[U>>2];f[j+4>>2]=f[U+4>>2];f[j+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,j|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(j);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 100:{if((b[S+1>>0]|0)==114){d=cja(a,c)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[k>>2]=f[U>>2];f[k+4>>2]=f[U+4>>2];f[k+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,k|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(k);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 101:{if((b[S+1>>0]|0)==108){d=qV(a,c)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[l>>2]=f[U>>2];f[l+4>>2]=f[U+4>>2];f[l+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,l|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(l);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 103:{l:do if((b[S+1>>0]|0)==101)switch(b[S+4>>0]|0){case 108:{d=n9(a,c)|0;g=536;break a}case 103:{d=Ct(a,c)|0;g=536;break a}default:break l}while(0);g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[m>>2]=f[U>>2];f[m+4>>2]=f[U+4>>2];f[m+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,m|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(m);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 104:{if((b[S+1>>0]|0)==97){d=Lo(a,c,3)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[n>>2]=f[U>>2];f[n+4>>2]=f[U+4>>2];f[n+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,n|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(n);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 105:{if((b[S+1>>0]|0)==102){d=nr(a,c)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[o>>2]=f[U>>2];f[o+4>>2]=f[U+4>>2];f[o+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,o|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(o);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 108:{if((b[S+1>>0]|0)==111){d=Fx(a,c)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[p>>2]=f[U>>2];f[p+4>>2]=f[U+4>>2];f[p+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,p|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(p);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 110:{if((b[S+1>>0]|0)==111){d=DWa(f[a+4>>2]|0)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[q>>2]=f[U>>2];f[q+4>>2]=f[U+4>>2];f[q+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,q|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(q);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 112:{if((b[S+1>>0]|0)==97){d=Lo(a,c,0)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[r>>2]=f[U>>2];f[r+4>>2]=f[U+4>>2];f[r+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,r|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(r);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 115:{m:do if((b[S+1>>0]|0)==101){switch(b[S+2>>0]|0){case 116:break;case 108:{d=rW(a,c)|0;g=536;break a}default:break m}switch(b[S+4>>0]|0){case 108:{d=y$(a,c)|0;g=536;break a}case 103:{d=Gt(a,c)|0;g=536;break a}default:break m}}while(0);g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[s>>2]=f[U>>2];f[s+4>>2]=f[U+4>>2];f[s+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,s|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(s);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 114:{if((b[S+1>>0]|0)==101){d=Eea(a,c)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[t>>2]=f[U>>2];f[t+4>>2]=f[U+4>>2];f[t+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,t|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(t);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 116:{switch(b[S+1>>0]|0){case 104:{d=qV(a,c)|0;g=536;break a}case 101:{g=486;break}default:{}}if((g|0)==486?(b[S+2>>0]|0)==101:0){d=x$(a,c)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[v>>2]=f[U>>2];f[v+4>>2]=f[U+4>>2];f[v+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,v|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(v);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 117:{if((b[S+1>>0]|0)==110){d=DSa(f[a+4>>2]|0)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[w>>2]=f[U>>2];f[w+4>>2]=f[U+4>>2];f[w+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,w|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(w);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}case 119:{if(!(H0(S,92450,4)|0)){d=w$(a,c)|0;g=536;break a}g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[y>>2]=f[U>>2];f[y+4>>2]=f[U+4>>2];f[y+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,y|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(y);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}default:{g=Ea(20)|0;f[U>>2]=0;f[U+4>>2]=0;f[U+8>>2]=0;T=j7a(92427)|0;x=0;va(87,U|0,92427,T|0);T=x;x=0;do if(!(T&1)){x=0;ia(59,U|0,S|0)|0;T=x;x=0;if(T&1){d=Ia()|0;MTa(U);break}f[z>>2]=f[U>>2];f[z+4>>2]=f[U+4>>2];f[z+8>>2]=f[U+8>>2];d=0;while(1){if((d|0)==3)break;f[U+(d<<2)>>2]=0;d=d+1|0}x=0;ua(261,g|0,z|0);T=x;x=0;if(T&1)e=1;else{x=0;va(98,g|0,32200,457);x=0;e=0}d=Ia()|0;MTa(z);MTa(U);if(!e){g=537;break a}}else d=Ia()|0;while(0);La(g|0);g=537;break a}}while(0);while(0);if((g|0)==536){u=R;return d|0}else if((g|0)==537)Ua(d|0);return 0}function Bc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0;v=u;u=u+208|0;w=v+176|0;s=v+128|0;t=v+104|0;r=v+64|0;k=v+164|0;p=v+48|0;q=v+36|0;i=v+152|0;j=v+140|0;l=v+88|0;m=v+24|0;n=v+12|0;o=v;g=c;e=g-a|0;a:do if((e|0)>1){if((e|0)>3?(b[a>>0]|0)==103:0){h=(b[a+1>>0]|0)==115;e=h?a+2|0:a}else{e=a;h=0}b:do switch(b[e>>0]|0){case 76:{a=cd(a,c,d)|0;break a}case 84:{a=Ej(a,c,d)|0;break a}case 102:{a=vi(a,c,d)|0;break a}case 97:switch(b[e+1>>0]|0){case 97:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123276,j7a(123276)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 100:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123294,j7a(123294)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 110:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123294,j7a(123294)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 78:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123337,j7a(123337)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 83:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123340,j7a(123340)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{a=ho(a,c,d)|0;break a}case 122:{a=go(a,c,d)|0;break a}default:break a}case 99:switch(b[e+1>>0]|0){case 99:{a=mj(a,c,d)|0;break a}case 108:{a=Ek(a,c,d)|0;break a}case 109:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123342,j7a(123342)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 111:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123344,j7a(123344)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 118:{a=Hh(a,c,d)|0;break a}default:break a}case 100:switch(b[e+1>>0]|0){case 97:{q=e+2|0;c=Bc(q,c,d)|0;if((c|0)==(q|0))break a;e=d+4|0;if((f[d>>2]|0)==(f[e>>2]|0))break a;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;c:do if(h)qW(t,123346,j7a(123346)|0);else{a=0;while(1){if((a|0)==3)break c;f[t+(a<<2)>>2]=0;a=a+1|0}}while(0);x=0;ia(216,t|0,123349)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3195,r|0,(f[e>>2]|0)+-24|0);d=x;x=0;do if(d&1)a=Ia()|0;else{d=b[r+11>>0]|0;q=d<<24>>24<0;x=0;ja(97,s|0,(q?f[r>>2]|0:r)|0,(q?f[r+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(r);break}f[w>>2]=f[s>>2];f[w+4>>2]=f[s+4>>2];f[w+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}a=f[e>>2]|0;g=a+-24|0;e=g+11|0;if((b[e>>0]|0)<0){Z0a(f[g>>2]|0,0);f[a+-20>>2]=0;a=g}else{Z0a(g,0);b[e>>0]=0;a=g}yv(g);f[a>>2]=f[w>>2];f[a+4>>2]=f[w+4>>2];f[a+8>>2]=f[w+8>>2];a=0;while(1){if((a|0)==3)break;f[w+(a<<2)>>2]=0;a=a+1|0}MTa(w);MTa(r);MTa(s);MTa(t);a=c;break a}while(0);MTa(s)}MTa(t);break b}case 99:{a=kj(a,c,d)|0;break a}case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123292,j7a(123292)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 108:{q=e+2|0;c=Bc(q,c,d)|0;if((c|0)==(q|0))break a;e=d+4|0;if((f[d>>2]|0)==(f[e>>2]|0))break a;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;d:do if(h)qW(t,123346,j7a(123346)|0);else{a=0;while(1){if((a|0)==3)break d;f[t+(a<<2)>>2]=0;a=a+1|0}}while(0);x=0;ia(216,t|0,123359)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ua(3195,r|0,(f[e>>2]|0)+-24|0);d=x;x=0;do if(d&1)a=Ia()|0;else{d=b[r+11>>0]|0;q=d<<24>>24<0;x=0;ja(97,s|0,(q?f[r>>2]|0:r)|0,(q?f[r+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(r);break}f[w>>2]=f[s>>2];f[w+4>>2]=f[s+4>>2];f[w+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}a=f[e>>2]|0;g=a+-24|0;e=g+11|0;if((b[e>>0]|0)<0){Z0a(f[g>>2]|0,0);f[a+-20>>2]=0;a=g}else{Z0a(g,0);b[e>>0]=0;a=g}yv(g);f[a>>2]=f[w>>2];f[a+4>>2]=f[w+4>>2];f[a+8>>2]=f[w+8>>2];a=0;while(1){if((a|0)==3)break;f[w+(a<<2)>>2]=0;a=a+1|0}MTa(w);MTa(r);MTa(s);MTa(t);a=c;break a}while(0);MTa(s)}MTa(t);break b}case 110:{a=gd(a,c,d)|0;break a}case 115:{a=Ds(a,c,d)|0;break a}case 116:{a=Es(a,c,d)|0;break a}case 118:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123367,j7a(123367)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 86:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123369,j7a(123369)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 101:switch(b[e+1>>0]|0){case 111:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123372,j7a(123372)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 79:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123374,j7a(123374)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 113:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123377,j7a(123377)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 103:switch(b[e+1>>0]|0){case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123380,j7a(123380)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123310,j7a(123310)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 105:{if((b[e+1>>0]|0)!=120)break a;o=a+2|0;e=Bc(o,c,d)|0;if((e|0)==(o|0))break a;g=Bc(e,c,d)|0;c=d+4|0;if((g|0)==(e|0)){g=f[c>>2]|0;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;OJa(g+(w*24|0)|0);e=w}f[c>>2]=g+-24;break a}e=f[c>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(w,e+-24|0);e=f[c>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;OJa(e+(d*24|0)|0);a=d}f[c>>2]=e+-24;x=0;ua(3195,s|0,e+-48|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;va(185,q|0,123274,s|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;ia(216,q|0,123383)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[p>>2]=f[q>>2];f[p+4>>2]=f[q+4>>2];f[p+8>>2]=f[q+8>>2];a=0;while(1){if((a|0)==3)break;f[q+(a<<2)>>2]=0;a=a+1|0}d=b[w+11>>0]|0;o=d<<24>>24<0;x=0;ja(97,p|0,(o?f[w>>2]|0:w)|0,(o?f[w+4>>2]|0:d&255)|0)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[r>>2]=f[p>>2];f[r+4>>2]=f[p+4>>2];f[r+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,r|0,123321)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(r);break}f[k>>2]=f[r>>2];f[k+4>>2]=f[r+4>>2];f[k+8>>2]=f[r+8>>2];a=0;while(1){if((a|0)==3)break;f[r+(a<<2)>>2]=0;a=a+1|0}RY(t,k);uA((f[c>>2]|0)+-24|0,t);OJa(t);MTa(k);MTa(r);MTa(p);MTa(q);MTa(s);MTa(w);a=g;break a}while(0);MTa(p)}MTa(q)}MTa(s)}MTa(w);break}case 108:switch(b[e+1>>0]|0){case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123386,j7a(123386)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 115:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123389,j7a(123389)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 83:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123392,j7a(123392)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123308,j7a(123308)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 109:switch(b[e+1>>0]|0){case 105:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123396,j7a(123396)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 73:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123398,j7a(123398)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 108:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123292,j7a(123292)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 76:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123401,j7a(123401)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 109:{e=a+2|0;if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){g=a+3|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123404,j7a(123404)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}c=Bc(e,c,d)|0;if((c|0)==(e|0))break a;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break a;hY(t,e+-24|0);x=0;ja(101,t|0,0,123274)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,s|0,123407)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(s);break}f[i>>2]=f[s>>2];f[i+4>>2]=f[s+4>>2];f[i+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}RY(w,i);uA((f[g>>2]|0)+-24|0,w);OJa(w);MTa(i);MTa(s);MTa(t);a=c;break a}while(0);MTa(t);break b}default:break a}case 110:switch(b[e+1>>0]|0){case 119:case 97:{a=hd(a,c,d)|0;break a}case 101:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123411,j7a(123411)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 103:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123396,j7a(123396)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123414,j7a(123414)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 120:{t=a+2|0;w=Io(t,c,d)|0;a=(w|0)==(t|0)?a:w;break a}default:break a}case 111:switch(b[e+1>>0]|0){case 110:{a=gd(a,c,d)|0;break a}case 111:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123416,j7a(123416)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 114:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123419,j7a(123419)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 82:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123421,j7a(123421)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 112:switch(b[e+1>>0]|0){case 109:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123424,j7a(123424)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 108:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123428,j7a(123428)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 76:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123430,j7a(123430)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 112:{e=a+2|0;if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){g=a+3|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123433,j7a(123433)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}c=Bc(e,c,d)|0;if((c|0)==(e|0))break a;g=d+4|0;e=f[g>>2]|0;if((f[d>>2]|0)==(e|0))break a;hY(t,e+-24|0);x=0;ja(101,t|0,0,123274)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[s>>2]=f[t>>2];f[s+4>>2]=f[t+4>>2];f[s+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,s|0,123436)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(s);break}f[j>>2]=f[s>>2];f[j+4>>2]=f[s+4>>2];f[j+8>>2]=f[s+8>>2];a=0;while(1){if((a|0)==3)break;f[s+(a<<2)>>2]=0;a=a+1|0}RY(w,j);uA((f[g>>2]|0)+-24|0,w);OJa(w);MTa(j);MTa(s);MTa(t);a=c;break a}while(0);MTa(t);break b}case 115:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123428,j7a(123428)|0);x=0;e=ka(40,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 116:{a=mv(a,c,d)|0;break a}default:break a}case 113:{if((b[e+1>>0]|0)!=117)break a;k=a+2|0;e=Bc(k,c,d)|0;if((e|0)==(k|0))break a;g=Bc(e,c,d)|0;if((g|0)==(e|0)){g=d+4|0;c=f[g>>2]|0;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;OJa(c+(w*24|0)|0);e=w}f[g>>2]=c+-24;break a}c=Bc(g,c,d)|0;h=d+4|0;if((c|0)==(g|0)){c=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;OJa(c+(w*24|0)|0);e=w}g=c+-24|0;f[h>>2]=g;e=0;while(1){if((e|0)==-1)break;w=e+-1|0;OJa(g+(w*24|0)|0);e=w}f[h>>2]=c+-48;break a}e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<3)break a;hY(w,e+-24|0);e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;OJa(e+(d*24|0)|0);a=d}f[h>>2]=e+-24;x=0;ua(3195,s|0,e+-48|0);d=x;x=0;if(d&1)a=Ia()|0;else{e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;d=a+-1|0;OJa(e+(d*24|0)|0);a=d}f[h>>2]=e+-24;x=0;ua(3195,t|0,e+-48|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;va(185,o|0,123274,t|0);d=x;x=0;if(d&1)a=Ia()|0;else{x=0;ia(216,o|0,123440)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[n>>2]=f[o>>2];f[n+4>>2]=f[o+4>>2];f[n+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}d=b[s+11>>0]|0;k=d<<24>>24<0;x=0;ja(97,n|0,(k?f[s>>2]|0:s)|0,(k?f[s+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[m>>2]=f[n>>2];f[m+4>>2]=f[n+4>>2];f[m+8>>2]=f[n+8>>2];a=0;while(1){if((a|0)==3)break;f[n+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,m|0,123446)|0;d=x;x=0;if(d&1)a=Ia()|0;else{f[q>>2]=f[m>>2];f[q+4>>2]=f[m+4>>2];f[q+8>>2]=f[m+8>>2];a=0;while(1){if((a|0)==3)break;f[m+(a<<2)>>2]=0;a=a+1|0}d=b[w+11>>0]|0;k=d<<24>>24<0;x=0;ja(97,q|0,(k?f[w>>2]|0:w)|0,(k?f[w+4>>2]|0:d&255)|0)|0;d=x;x=0;do if(d&1)a=Ia()|0;else{f[p>>2]=f[q>>2];f[p+4>>2]=f[q+4>>2];f[p+8>>2]=f[q+8>>2];a=0;while(1){if((a|0)==3)break;f[q+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,p|0,123272)|0;d=x;x=0;if(d&1){a=Ia()|0;MTa(p);break}f[l>>2]=f[p>>2];f[l+4>>2]=f[p+4>>2];f[l+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}RY(r,l);uA((f[h>>2]|0)+-24|0,r);OJa(r);MTa(l);MTa(p);MTa(q);MTa(m);MTa(n);MTa(o);MTa(t);MTa(s);MTa(w);a=c;break a}while(0);MTa(q)}MTa(m)}MTa(n)}MTa(o)}MTa(t)}MTa(s)}MTa(w);break}case 114:switch(b[e+1>>0]|0){case 99:{a=jj(a,c,d)|0;break a}case 109:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123452,j7a(123452)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 77:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123454,j7a(123454)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 115:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123457,j7a(123457)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}case 83:{g=a+2|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;qW(w,123460,j7a(123460)|0);x=0;e=ka(39,g|0,c|0,w|0,d|0)|0;t=x;x=0;if(t&1){a=Ia()|0;MTa(w);break b}else{MTa(w);a=(e|0)==(g|0)?a:e;break a}}default:break a}case 115:switch(b[e+1>>0]|0){case 99:{a=lj(a,c,d)|0;break a}case 112:{a=Oca(a,c,d)|0;break a}case 114:{a=gd(a,c,d)|0;break a}case 116:{a=hq(a,c,d)|0;break a}case 122:{a=fq(a,c,d)|0;break a}case 90:{if((g-e|0)<=2)break a;switch(b[e+2>>0]|0){case 84:{a=fi(a,c,d)|0;break a}case 102:{a=Kp(a,c,d)|0;break a}default:break a}}default:break a}case 116:switch(b[e+1>>0]|0){case 105:case 101:{a=oo(a,c,d)|0;break a}case 114:{f4(w,123464);e=d+4|0;g=f[e>>2]|0;if(g>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,w|0);t=x;x=0;if(t&1){a=Ia()|0;OJa(w);break b}}else{CY(g,w);f[e>>2]=(f[e>>2]|0)+24}OJa(w);a=a+2|0;break a}case 119:{a=Iv(a,c,d)|0;break a}default:break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:{a=gd(a,c,d)|0;break a}default:break a}while(0);Ua(a|0)}while(0);u=v;return a|0}function Cc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,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,v=0,w=0,y=0,z=0,A=0;A=u;u=u+144|0;z=A+128|0;w=A+104|0;t=A+40|0;i=A+88|0;p=A+24|0;m=A+76|0;o=A+12|0;n=A;k=A+64|0;a:do if((a|0)!=(c|0)){switch(b[a>>0]|0){case 75:case 86:case 114:{f[z>>2]=0;e=UZ(a,c,z)|0;b:do if((e|0)!=(a|0)?(q=(b[e>>0]|0)==70,s=d+4|0,l=((f[s>>2]|0)-(f[d>>2]|0)|0)/24|0,r=Cc(e,c,d)|0,s=((f[s>>2]|0)-(f[d>>2]|0)|0)/24|0,(r|0)!=(e|0)):0){p=d+20|0;e=f[p>>2]|0;if(q){a=0;while(1){if((a|0)==-1)break;y=a+-1|0;aY(e+(y<<4)|0);a=y}e=e+-16|0;f[p>>2]=e}a=f[d+12>>2]|0;f[w>>2]=a;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[p>>2]=(f[p>>2]|0)+16}else IA(d+16|0,w);o=f[z>>2]|0;m=(o&1|0)==0;n=(o&2|0)==0;o=(o&4|0)==0;while(1){if(l>>>0>=s>>>0){a=r;break b}if(q){g=f[d>>2]|0;k=g+(l*24|0)+12|0;h=b[k+11>>0]|0;a=h<<24>>24<0;if(a){i=f[g+(l*24|0)+16>>2]|0;e=f[k>>2]|0}else{i=h&255;e=k}j=i+-2|0;if((b[e+j>>0]|0)==38)a=i+-3|0;else{if(a){e=f[k>>2]|0;a=f[g+(l*24|0)+16>>2]|0}else{e=k;a=h&255}a=(b[e+a+-1>>0]|0)==38?j:i}if(!m){zoa(k,a,123219)|0;a=a+6|0}if(!n){zoa((f[d>>2]|0)+(l*24|0)+12|0,a,123226)|0;a=a+9|0}if(!o)zoa((f[d>>2]|0)+(l*24|0)+12|0,a,123236)|0}else{if(!m)Isa((f[d>>2]|0)+(l*24|0)|0,123219)|0;if(!n)Isa((f[d>>2]|0)+(l*24|0)|0,123226)|0;if(!o)Isa((f[d>>2]|0)+(l*24|0)|0,123236)|0}a=f[p>>2]|0;e=(f[d>>2]|0)+(l*24|0)|0;g=a+-12|0;h=f[g>>2]|0;if((h|0)==(f[a+-8>>2]|0))Qz(a+-16|0,e);else{C6(h,e);f[g>>2]=(f[g>>2]|0)+24}l=l+1|0}}while(0);break a}default:{}}e=Rc(a,c,d)|0;if((e|0)==(a|0)){c:do switch(b[a>>0]|0){case 65:{g=$d(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];HR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=g;break a}case 67:{v=a+1|0;h=Cc(v,c,d)|0;if((h|0)==(v|0))break a;e=d+4|0;g=f[e>>2]|0;if((f[d>>2]|0)==(g|0))break a;Isa(g+-24|0,123246)|0;a=(f[e>>2]|0)+-24|0;f[w>>2]=f[d+12>>2];HR(z,a,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=h;break a}case 70:{g=vh(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];HR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=g;break a}case 71:{v=a+1|0;h=Cc(v,c,d)|0;if((h|0)==(v|0))break a;e=d+4|0;g=f[e>>2]|0;if((f[d>>2]|0)==(g|0))break a;Isa(g+-24|0,123255)|0;a=(f[e>>2]|0)+-24|0;f[w>>2]=f[d+12>>2];HR(z,a,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=h;break a}case 77:{g=Ff(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];HR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=g;break a}case 79:{n=d+4|0;g=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;w=a+1|0;m=Cc(w,c,d)|0;n=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;if((m|0)==(w|0))break a;a=f[d+12>>2]|0;f[z>>2]=a;l=d+20|0;e=f[l>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[l>>2]=(f[l>>2]|0)+16}else IA(d+16|0,z);j=z+11|0;k=z+4|0;while(1){if(g>>>0>=n>>>0){a=m;break a}a1(z,(f[d>>2]|0)+(g*24|0)+12|0,2);a=j7a(123266)|0;w=b[j>>0]|0;if((a|0)==((w<<24>>24<0?f[k>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123266,a|0)|0;w=x;x=0;if(w&1)break;a=(a|0)==0}else a=0;MTa(z);e=f[d>>2]|0;h=e+(g*24|0)|0;if(!a){a=e+(g*24|0)+12|0;if((b[a+11>>0]|0)<0)a=f[a>>2]|0;if((b[a>>0]|0)==40){Isa(h,123274)|0;zoa((f[d>>2]|0)+(g*24|0)+12|0,0,123272)|0}}else{Isa(h,123269)|0;zoa((f[d>>2]|0)+(g*24|0)+12|0,0,123272)|0}Isa((f[d>>2]|0)+(g*24|0)|0,123276)|0;a=f[l>>2]|0;e=(f[d>>2]|0)+(g*24|0)|0;h=a+-12|0;i=f[h>>2]|0;if((i|0)==(f[a+-8>>2]|0))Qz(a+-16|0,e);else{C6(i,e);f[h>>2]=(f[h>>2]|0)+24}g=g+1|0}A=Ja(0)|0;y2a(A);break}case 80:{p=d+4|0;g=((f[p>>2]|0)-(f[d>>2]|0)|0)/24|0;q=a+1|0;o=Cc(q,c,d)|0;p=((f[p>>2]|0)-(f[d>>2]|0)|0)/24|0;if((o|0)==(q|0))break a;a=f[d+12>>2]|0;f[z>>2]=a;n=d+20|0;e=f[n>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[n>>2]=(f[n>>2]|0)+16}else IA(d+16|0,z);j=z+11|0;k=z+4|0;l=z+11|0;m=z+4|0;while(1){if(g>>>0>=p>>>0){a=o;break a}a1(z,(f[d>>2]|0)+(g*24|0)+12|0,2);a=j7a(123266)|0;w=b[j>>0]|0;if((a|0)==((w<<24>>24<0?f[k>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123266,a|0)|0;w=x;x=0;if(w&1){y=109;break}a=(a|0)==0}else a=0;MTa(z);e=f[d>>2]|0;h=e+(g*24|0)|0;if(!a){a=e+(g*24|0)+12|0;if((b[a+11>>0]|0)<0)a=f[a>>2]|0;if((b[a>>0]|0)==40){Isa(h,123274)|0;zoa((f[d>>2]|0)+(g*24|0)+12|0,0,123272)|0}}else{Isa(h,123269)|0;zoa((f[d>>2]|0)+(g*24|0)+12|0,0,123272)|0}if((b[q>>0]|0)==85){a1(z,(f[d>>2]|0)+(g*24|0)|0,12);a=j7a(123279)|0;w=b[l>>0]|0;if((a|0)==((w<<24>>24<0?f[m>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123279,a|0)|0;w=x;x=0;if(w&1){y=122;break}e=(a|0)!=0}else e=1;MTa(z);a=(f[d>>2]|0)+(g*24|0)|0;if(e)y=124;else Owa(a)}else{a=(f[d>>2]|0)+(g*24|0)|0;y=124}if((y|0)==124){y=0;Isa(a,123292)|0}a=f[n>>2]|0;e=(f[d>>2]|0)+(g*24|0)|0;h=a+-12|0;i=f[h>>2]|0;if((i|0)==(f[a+-8>>2]|0))Qz(a+-16|0,e);else{C6(i,e);f[h>>2]=(f[h>>2]|0)+24}g=g+1|0}if((y|0)==109){A=Ja(0)|0;y2a(A)}else if((y|0)==122){A=Ja(0)|0;y2a(A)}break}case 82:{n=d+4|0;g=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;w=a+1|0;m=Cc(w,c,d)|0;n=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;if((m|0)==(w|0))break a;a=f[d+12>>2]|0;f[z>>2]=a;l=d+20|0;e=f[l>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[l>>2]=(f[l>>2]|0)+16}else IA(d+16|0,z);j=z+11|0;k=z+4|0;while(1){if(g>>>0>=n>>>0){a=m;break a}a1(z,(f[d>>2]|0)+(g*24|0)+12|0,2);a=j7a(123266)|0;w=b[j>>0]|0;if((a|0)==((w<<24>>24<0?f[k>>2]|0:w&255)|0)){x=0;a=ja(102,z|0,123266,a|0)|0;w=x;x=0;if(w&1)break;a=(a|0)==0}else a=0;MTa(z);e=f[d>>2]|0;h=e+(g*24|0)|0;if(!a){a=e+(g*24|0)+12|0;if((b[a+11>>0]|0)<0)a=f[a>>2]|0;if((b[a>>0]|0)==40){Isa(h,123274)|0;zoa((f[d>>2]|0)+(g*24|0)+12|0,0,123272)|0}}else{Isa(h,123269)|0;zoa((f[d>>2]|0)+(g*24|0)+12|0,0,123272)|0}Isa((f[d>>2]|0)+(g*24|0)|0,123294)|0;a=f[l>>2]|0;e=(f[d>>2]|0)+(g*24|0)|0;h=a+-12|0;i=f[h>>2]|0;if((i|0)==(f[a+-8>>2]|0))Qz(a+-16|0,e);else{C6(i,e);f[h>>2]=(f[h>>2]|0)+24}g=g+1|0}A=Ja(0)|0;y2a(A);break}case 84:{n=d+4|0;j=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;l=Ej(a,c,d)|0;k=((f[n>>2]|0)-(f[d>>2]|0)|0)/24|0;if((l|0)==(a|0))break a;o=d+16|0;m=d+12|0;a=f[m>>2]|0;f[z>>2]=a;p=d+20|0;e=f[p>>2]|0;q=d+24|0;if(e>>>0<(f[q>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[p>>2]=(f[p>>2]|0)+16}else IA(o,z);a=j;while(1){if(a>>>0>=k>>>0)break;e=f[p>>2]|0;g=(f[d>>2]|0)+(a*24|0)|0;h=e+-12|0;i=f[h>>2]|0;if((i|0)==(f[e+-8>>2]|0))Qz(e+-16|0,g);else{C6(i,g);f[h>>2]=(f[h>>2]|0)+24}a=a+1|0}if(!((k|0)==(j+1|0)&(b[d+63>>0]|0)!=0)){a=l;break a}a=jg(l,c,d)|0;if((a|0)==(l|0)){a=l;break a}hY(z,(f[n>>2]|0)+-24|0);g=f[n>>2]|0;e=0;while(1){if((e|0)==-1)break;d=e+-1|0;OJa(g+(d*24|0)|0);e=d}f[n>>2]=g+-24;d=b[z+11>>0]|0;v=d<<24>>24<0;x=0;ja(97,g+-48|0,(v?f[z>>2]|0:z)|0,(v?f[z+4>>2]|0:d&255)|0)|0;d=x;x=0;if(d&1)a=Ia()|0;else{d=(f[n>>2]|0)+-24|0;f[t>>2]=f[m>>2];x=0;va(182,w|0,d|0,t|0);d=x;x=0;do if(d&1)a=Ia()|0;else{e=f[p>>2]|0;if(e>>>0>=(f[q>>2]|0)>>>0){x=0;ua(3196,o|0,w|0);d=x;x=0;if(d&1){a=Ia()|0;aY(w);break}}else{f[e+12>>2]=f[w+12>>2];f[e>>2]=f[w>>2];d=w+4|0;f[e+4>>2]=f[d>>2];y=w+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[w>>2]=0;f[p>>2]=(f[p>>2]|0)+16}aY(w);MTa(z);break a}while(0)}MTa(z);v=a;break}case 85:{e=a+1|0;if((e|0)==(c|0))break a;g=hk(e,c,d)|0;if((g|0)==(e|0))break a;j=Cc(g,c,d)|0;if((j|0)==(g|0))break a;h=d+4|0;e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(z,e+-24|0);e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;v=a+-1|0;OJa(e+(v*24|0)|0);a=v}f[h>>2]=e+-24;x=0;va(183,w|0,e+-48|0,9);v=x;x=0;d:do if(v&1)a=Ia()|0;else{a=j7a(123296)|0;v=b[w+11>>0]|0;e:do if((a|0)==((v<<24>>24<0?f[w+4>>2]|0:v&255)|0)){x=0;a=ja(102,w|0,123296,a|0)|0;v=x;x=0;if(v&1){v=Ja(0)|0;y2a(v)}MTa(w);if(!a){x=0;ua(3195,w|0,(f[h>>2]|0)+-24|0);v=x;x=0;if(v&1)a=Ia()|0;else{e=f[h>>2]|0;a=0;while(1){if((a|0)==-1)break;v=a+-1|0;OJa(e+(v*24|0)|0);a=v}f[h>>2]=e+-24;a=w+11|0;g=b[a>>0]|0;v=g<<24>>24<0;e=w+4|0;c=v?f[w>>2]|0:w;x=0;g=ja(103,c+9|0,c+(v?f[e>>2]|0:g&255)|0,d|0)|0;v=x;x=0;f:do if(v&1)a=Ia()|0;else{g:do if((g|0)==(((b[a>>0]|0)<0?f[w>>2]|0:w)+9|0)){x=0;va(184,p|0,z|0,123306);v=x;x=0;if(v&1)a=Ia()|0;else{v=b[a>>0]|0;c=v<<24>>24<0;x=0;ja(97,p|0,(c?f[w>>2]|0:w)|0,(c?f[e>>2]|0:v&255)|0)|0;v=x;x=0;h:do if(v&1)a=Ia()|0;else{f[k>>2]=f[p>>2];f[k+4>>2]=f[p+4>>2];f[k+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}RY(t,k);a=f[h>>2]|0;do if(a>>>0<(f[d+8>>2]|0)>>>0){CY(a,t);f[h>>2]=(f[h>>2]|0)+24}else{x=0;ua(3197,d|0,t|0);v=x;x=0;if(!(v&1))break;a=Ia()|0;OJa(t);MTa(k);break h}while(0);OJa(t);MTa(k);MTa(p);break g}while(0);MTa(p)}break f}else{x=0;va(184,o|0,z|0,123308);v=x;x=0;if(v&1)a=Ia()|0;else{x=0;ua(3195,n|0,(f[h>>2]|0)+-24|0);v=x;x=0;if(v&1)a=Ia()|0;else{v=b[n+11>>0]|0;c=v<<24>>24<0;x=0;ja(97,o|0,(c?f[n>>2]|0:n)|0,(c?f[n+4>>2]|0:v&255)|0)|0;v=x;x=0;do if(v&1)a=Ia()|0;else{f[p>>2]=f[o>>2];f[p+4>>2]=f[o+4>>2];f[p+8>>2]=f[o+8>>2];a=0;while(1){if((a|0)==3)break;f[o+(a<<2)>>2]=0;a=a+1|0}x=0;ia(216,p|0,123310)|0;v=x;x=0;if(v&1){a=Ia()|0;MTa(p);break}f[m>>2]=f[p>>2];f[m+4>>2]=f[p+4>>2];f[m+8>>2]=f[p+8>>2];a=0;while(1){if((a|0)==3)break;f[p+(a<<2)>>2]=0;a=a+1|0}RY(t,m);uA((f[h>>2]|0)+-24|0,t);OJa(t);MTa(m);MTa(p);MTa(n);MTa(o);break g}while(0);MTa(n)}MTa(o)}break f}while(0);MTa(w);break e}while(0);MTa(w)}break d}else y=190}else{MTa(w);y=190}while(0);i:do if((y|0)==190){x=0;va(184,t|0,z|0,123306);v=x;x=0;if(v&1)a=Ia()|0;else{x=0;ua(3195,p|0,(f[h>>2]|0)+-24|0);v=x;x=0;do if(v&1)a=Ia()|0;else{v=b[p+11>>0]|0;c=v<<24>>24<0;x=0;ja(97,t|0,(c?f[p>>2]|0:p)|0,(c?f[p+4>>2]|0:v&255)|0)|0;v=x;x=0;if(v&1){a=Ia()|0;MTa(p);break}f[i>>2]=f[t>>2];f[i+4>>2]=f[t+4>>2];f[i+8>>2]=f[t+8>>2];a=0;while(1){if((a|0)==3)break;f[t+(a<<2)>>2]=0;a=a+1|0}RY(w,i);uA((f[h>>2]|0)+-24|0,w);OJa(w);MTa(i);MTa(p);MTa(t);break i}while(0);MTa(t)}break d}while(0);v=(f[h>>2]|0)+-24|0;f[t>>2]=f[d+12>>2];x=0;va(182,w|0,v|0,t|0);v=x;x=0;do if(v&1)a=Ia()|0;else{a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,w|0);d=x;x=0;if(d&1){a=Ia()|0;aY(w);break}}else{f[e+12>>2]=f[w+12>>2];f[e>>2]=f[w>>2];d=w+4|0;f[e+4>>2]=f[d>>2];y=w+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[w>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(w);MTa(z);a=j;break a}while(0)}while(0);MTa(z);v=a;break}case 83:{v=a+1|0;if((v|0)!=(c|0)?(b[v>>0]|0)==116:0){g=Pi(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];HR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=g;break a}g=Qg(a,c,d)|0;if((g|0)==(a|0))break a;a=jg(g,c,d)|0;if((a|0)==(g|0)){a=g;break a}h=d+4|0;e=f[h>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2){a=g;break a}hY(z,e+-24|0);g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;v=e+-1|0;OJa(g+(v*24|0)|0);e=v}f[h>>2]=g+-24;v=b[z+11>>0]|0;c=v<<24>>24<0;x=0;ja(97,g+-48|0,(c?f[z>>2]|0:z)|0,(c?f[z+4>>2]|0:v&255)|0)|0;v=x;x=0;if(v&1)a=Ia()|0;else{v=(f[h>>2]|0)+-24|0;f[t>>2]=f[d+12>>2];x=0;va(182,w|0,v|0,t|0);v=x;x=0;do if(v&1)a=Ia()|0;else{e=d+20|0;g=f[e>>2]|0;if(g>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,w|0);d=x;x=0;if(d&1){a=Ia()|0;aY(w);break}}else{f[g+12>>2]=f[w+12>>2];f[g>>2]=f[w>>2];d=w+4|0;f[g+4>>2]=f[d>>2];y=w+8|0;f[g+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[w>>2]=0;f[e>>2]=(f[e>>2]|0)+16}aY(w);MTa(z);break a}while(0)}MTa(z);v=a;break}case 68:{e=a+1|0;if((e|0)==(c|0))y=307;else switch(b[e>>0]|0){case 112:{l=d+4|0;g=((f[l>>2]|0)-(f[d>>2]|0)|0)/24|0;y=a+2|0;k=Cc(y,c,d)|0;l=((f[l>>2]|0)-(f[d>>2]|0)|0)/24|0;if((k|0)==(y|0)){y=307;break c}a=f[d+12>>2]|0;f[z>>2]=a;j=d+20|0;e=f[j>>2]|0;if(e>>>0<(f[d+24>>2]|0)>>>0){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=a;f[j>>2]=(f[j>>2]|0)+16}else IA(d+16|0,z);a=g;while(1){if(a>>>0>=l>>>0){a=k;break a}e=f[j>>2]|0;g=(f[d>>2]|0)+(a*24|0)|0;h=e+-12|0;i=f[h>>2]|0;if((i|0)==(f[e+-8>>2]|0))Qz(e+-16|0,g);else{C6(i,g);f[h>>2]=(f[h>>2]|0)+24}a=a+1|0}}case 84:case 116:{g=cp(a,c,d)|0;if((g|0)==(a|0)){y=307;break c}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];HR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=g;break a}case 118:{g=Bf(a,c,d)|0;if((g|0)==(a|0)){y=307;break c}e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];HR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break c}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=g;break a}default:{y=307;break c}}break}default:y=307}while(0);do if((y|0)==307){e=Rc(a,c,d)|0;if((e|0)!=(a|0)){a=e;break a}g=Pi(a,c,d)|0;if((g|0)==(a|0))break a;e=f[d+4>>2]|0;if((f[d>>2]|0)==(e|0))break a;f[w>>2]=f[d+12>>2];HR(z,e+-24|0,w);a=d+20|0;e=f[a>>2]|0;if(e>>>0>=(f[d+24>>2]|0)>>>0){x=0;ua(3196,d+16|0,z|0);d=x;x=0;if(d&1){v=Ia()|0;aY(z);break}}else{f[e+12>>2]=f[z+12>>2];f[e>>2]=f[z>>2];d=z+4|0;f[e+4>>2]=f[d>>2];y=z+8|0;f[e+8>>2]=f[y>>2];f[y>>2]=0;f[d>>2]=0;f[z>>2]=0;f[a>>2]=(f[a>>2]|0)+16}aY(z);a=g;break a}while(0);Ua(v|0)}else a=e}while(0);u=A;return a|0} +function ke(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,3156,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3143,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,3157,b);QR(d,(vSa(c)|0)+16|0);tS(d,3143,(vSa(c)|0)+12|0);tS(d,3143,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,3158,b);tS(d,3143,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,3159,b);QR(d,($Ra(c)|0)+16|0);QR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,3160,b);tS(d,3143,(NRa(c)|0)+28|0);QR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,3161,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3143,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,3162,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3143,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,3163,b);b=IQa(c)|0;tS(d,3143,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3143,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,3164,b);break}case 10:{d=a+16|0;tS(d,3165,b);tS(d,3143,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,3166,b);break}case 12:{d=a+16|0;tS(d,3167,b);tS(d,3143,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,3168,b);tS(d,3143,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,3169,b);tS(d,3143,(PRa(c)|0)+28|0);tS(d,3143,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,3170,b);tS(d,3143,(bRa(c)|0)+24|0);tS(d,3143,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,3171,b);tS(d,3143,(wQa(c)|0)+24|0);tS(d,3143,(wQa(c)|0)+20|0);tS(d,3143,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,3172,b);tS(d,3143,(QQa(c)|0)+20|0);tS(d,3143,(QQa(c)|0)+16|0);tS(d,3143,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,3173,b);tS(d,3143,(PQa(c)|0)+16|0);tS(d,3143,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,3174,b);break}case 16:{d=a+16|0;tS(d,3175,b);tS(d,3143,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,3176,b);tS(d,3143,(FRa(c)|0)+16|0);tS(d,3143,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,3177,b);tS(d,3143,(DRa(c)|0)+16|0);tS(d,3143,(DRa(c)|0)+12|0);tS(d,3143,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,3178,b);tS(d,3143,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,3179,b);QR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,3180,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3143,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,3181,b);break}case 23:{tS(a+16|0,3182,b);break}default:hb()}while(0);return}function le(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1541,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1540,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1542,b);UR(d,(vSa(c)|0)+16|0);tS(d,1540,(vSa(c)|0)+12|0);tS(d,1540,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1543,b);tS(d,1540,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1544,b);UR(d,($Ra(c)|0)+16|0);UR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1545,b);tS(d,1540,(NRa(c)|0)+28|0);UR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1546,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1540,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1547,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1540,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1548,b);b=IQa(c)|0;tS(d,1540,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1540,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1549,b);break}case 10:{d=a+16|0;tS(d,1550,b);tS(d,1540,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1551,b);break}case 12:{d=a+16|0;tS(d,1552,b);tS(d,1540,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1553,b);tS(d,1540,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1554,b);tS(d,1540,(PRa(c)|0)+28|0);tS(d,1540,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1555,b);tS(d,1540,(bRa(c)|0)+24|0);tS(d,1540,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1556,b);tS(d,1540,(wQa(c)|0)+24|0);tS(d,1540,(wQa(c)|0)+20|0);tS(d,1540,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1557,b);tS(d,1540,(QQa(c)|0)+20|0);tS(d,1540,(QQa(c)|0)+16|0);tS(d,1540,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1558,b);tS(d,1540,(PQa(c)|0)+16|0);tS(d,1540,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1559,b);break}case 16:{d=a+16|0;tS(d,1560,b);tS(d,1540,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1561,b);tS(d,1540,(FRa(c)|0)+16|0);tS(d,1540,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1562,b);tS(d,1540,(DRa(c)|0)+16|0);tS(d,1540,(DRa(c)|0)+12|0);tS(d,1540,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1563,b);tS(d,1540,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1564,b);UR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1565,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1540,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1566,b);break}case 23:{tS(a+16|0,1567,b);break}default:hb()}while(0);return}function me(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,1780,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1779,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,1781,b);VR(d,(vSa(c)|0)+16|0);tS(d,1779,(vSa(c)|0)+12|0);tS(d,1779,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,1782,b);tS(d,1779,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,1783,b);VR(d,($Ra(c)|0)+16|0);VR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,1784,b);tS(d,1779,(NRa(c)|0)+28|0);VR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,1785,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1779,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,1786,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1779,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,1787,b);b=IQa(c)|0;tS(d,1779,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1779,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,1788,b);break}case 10:{d=a+16|0;tS(d,1789,b);tS(d,1779,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,1790,b);break}case 12:{d=a+16|0;tS(d,1791,b);tS(d,1779,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,1792,b);tS(d,1779,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,1793,b);tS(d,1779,(PRa(c)|0)+28|0);tS(d,1779,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,1794,b);tS(d,1779,(bRa(c)|0)+24|0);tS(d,1779,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,1795,b);tS(d,1779,(wQa(c)|0)+24|0);tS(d,1779,(wQa(c)|0)+20|0);tS(d,1779,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,1796,b);tS(d,1779,(QQa(c)|0)+20|0);tS(d,1779,(QQa(c)|0)+16|0);tS(d,1779,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,1797,b);tS(d,1779,(PQa(c)|0)+16|0);tS(d,1779,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,1798,b);break}case 16:{d=a+16|0;tS(d,1799,b);tS(d,1779,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,1800,b);tS(d,1779,(FRa(c)|0)+16|0);tS(d,1779,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,1801,b);tS(d,1779,(DRa(c)|0)+16|0);tS(d,1779,(DRa(c)|0)+12|0);tS(d,1779,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,1802,b);tS(d,1779,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,1803,b);VR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,1804,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,1779,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,1805,b);break}case 23:{tS(a+16|0,1806,b);break}default:hb()}while(0);return}function ne(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2075,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2072,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2076,b);XR(d,(vSa(c)|0)+16|0);tS(d,2072,(vSa(c)|0)+12|0);tS(d,2072,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2077,b);tS(d,2072,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2078,b);XR(d,($Ra(c)|0)+16|0);XR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2079,b);tS(d,2072,(NRa(c)|0)+28|0);XR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2080,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2072,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2081,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2072,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2082,b);b=IQa(c)|0;tS(d,2072,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2072,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2083,b);break}case 10:{d=a+16|0;tS(d,2084,b);tS(d,2072,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2085,b);break}case 12:{d=a+16|0;tS(d,2086,b);tS(d,2072,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2087,b);tS(d,2072,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2088,b);tS(d,2072,(PRa(c)|0)+28|0);tS(d,2072,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2089,b);tS(d,2072,(bRa(c)|0)+24|0);tS(d,2072,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2090,b);tS(d,2072,(wQa(c)|0)+24|0);tS(d,2072,(wQa(c)|0)+20|0);tS(d,2072,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2091,b);tS(d,2072,(QQa(c)|0)+20|0);tS(d,2072,(QQa(c)|0)+16|0);tS(d,2072,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2092,b);tS(d,2072,(PQa(c)|0)+16|0);tS(d,2072,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2093,b);break}case 16:{d=a+16|0;tS(d,2094,b);tS(d,2072,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2095,b);tS(d,2072,(FRa(c)|0)+16|0);tS(d,2072,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2096,b);tS(d,2072,(DRa(c)|0)+16|0);tS(d,2072,(DRa(c)|0)+12|0);tS(d,2072,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2097,b);tS(d,2072,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2098,b);XR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2099,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2072,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2100,b);break}case 23:{tS(a+16|0,2101,b);break}default:hb()}while(0);return}function oe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2893,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2892,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2894,b);ZR(d,(vSa(c)|0)+16|0);tS(d,2892,(vSa(c)|0)+12|0);tS(d,2892,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2895,b);tS(d,2892,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2896,b);ZR(d,($Ra(c)|0)+16|0);ZR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2897,b);tS(d,2892,(NRa(c)|0)+28|0);ZR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2898,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2892,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2899,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2892,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2900,b);b=IQa(c)|0;tS(d,2892,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2892,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2901,b);break}case 10:{d=a+16|0;tS(d,2902,b);tS(d,2892,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2903,b);break}case 12:{d=a+16|0;tS(d,2904,b);tS(d,2892,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2905,b);tS(d,2892,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2906,b);tS(d,2892,(PRa(c)|0)+28|0);tS(d,2892,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2907,b);tS(d,2892,(bRa(c)|0)+24|0);tS(d,2892,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2908,b);tS(d,2892,(wQa(c)|0)+24|0);tS(d,2892,(wQa(c)|0)+20|0);tS(d,2892,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2909,b);tS(d,2892,(QQa(c)|0)+20|0);tS(d,2892,(QQa(c)|0)+16|0);tS(d,2892,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2910,b);tS(d,2892,(PQa(c)|0)+16|0);tS(d,2892,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2911,b);break}case 16:{d=a+16|0;tS(d,2912,b);tS(d,2892,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2913,b);tS(d,2892,(FRa(c)|0)+16|0);tS(d,2892,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2914,b);tS(d,2892,(DRa(c)|0)+16|0);tS(d,2892,(DRa(c)|0)+12|0);tS(d,2892,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2915,b);tS(d,2892,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2916,b);ZR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2917,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2892,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2918,b);break}case 23:{tS(a+16|0,2919,b);break}default:hb()}while(0);return}function pe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2496,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2495,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2497,b);bS(d,(vSa(c)|0)+16|0);tS(d,2495,(vSa(c)|0)+12|0);tS(d,2495,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2498,b);tS(d,2495,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2499,b);bS(d,($Ra(c)|0)+16|0);bS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2500,b);tS(d,2495,(NRa(c)|0)+28|0);bS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2501,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2495,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2502,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2495,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2503,b);b=IQa(c)|0;tS(d,2495,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2495,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2504,b);break}case 10:{d=a+16|0;tS(d,2505,b);tS(d,2495,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2506,b);break}case 12:{d=a+16|0;tS(d,2507,b);tS(d,2495,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2508,b);tS(d,2495,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2509,b);tS(d,2495,(PRa(c)|0)+28|0);tS(d,2495,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2510,b);tS(d,2495,(bRa(c)|0)+24|0);tS(d,2495,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2511,b);tS(d,2495,(wQa(c)|0)+24|0);tS(d,2495,(wQa(c)|0)+20|0);tS(d,2495,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2512,b);tS(d,2495,(QQa(c)|0)+20|0);tS(d,2495,(QQa(c)|0)+16|0);tS(d,2495,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2513,b);tS(d,2495,(PQa(c)|0)+16|0);tS(d,2495,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2514,b);break}case 16:{d=a+16|0;tS(d,2515,b);tS(d,2495,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2516,b);tS(d,2495,(FRa(c)|0)+16|0);tS(d,2495,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2517,b);tS(d,2495,(DRa(c)|0)+16|0);tS(d,2495,(DRa(c)|0)+12|0);tS(d,2495,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2518,b);tS(d,2495,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2519,b);bS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2520,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2495,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2521,b);break}case 23:{tS(a+16|0,2522,b);break}default:hb()}while(0);return}function qe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2834,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2833,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2835,b);dS(d,(vSa(c)|0)+16|0);tS(d,2833,(vSa(c)|0)+12|0);tS(d,2833,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2836,b);tS(d,2833,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2837,b);dS(d,($Ra(c)|0)+16|0);dS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2838,b);tS(d,2833,(NRa(c)|0)+28|0);dS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2839,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2833,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2840,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2833,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2841,b);b=IQa(c)|0;tS(d,2833,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2833,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2842,b);break}case 10:{d=a+16|0;tS(d,2843,b);tS(d,2833,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2844,b);break}case 12:{d=a+16|0;tS(d,2845,b);tS(d,2833,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2846,b);tS(d,2833,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2847,b);tS(d,2833,(PRa(c)|0)+28|0);tS(d,2833,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2848,b);tS(d,2833,(bRa(c)|0)+24|0);tS(d,2833,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2849,b);tS(d,2833,(wQa(c)|0)+24|0);tS(d,2833,(wQa(c)|0)+20|0);tS(d,2833,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2850,b);tS(d,2833,(QQa(c)|0)+20|0);tS(d,2833,(QQa(c)|0)+16|0);tS(d,2833,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2851,b);tS(d,2833,(PQa(c)|0)+16|0);tS(d,2833,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2852,b);break}case 16:{d=a+16|0;tS(d,2853,b);tS(d,2833,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2854,b);tS(d,2833,(FRa(c)|0)+16|0);tS(d,2833,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2855,b);tS(d,2833,(DRa(c)|0)+16|0);tS(d,2833,(DRa(c)|0)+12|0);tS(d,2833,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2856,b);tS(d,2833,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2857,b);dS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2858,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2833,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2859,b);break}case 23:{tS(a+16|0,2860,b);break}default:hb()}while(0);return}function re(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,170,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,169,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,171,b);rR(d,(vSa(c)|0)+16|0);tS(d,169,(vSa(c)|0)+12|0);tS(d,169,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,172,b);tS(d,169,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,173,b);rR(d,($Ra(c)|0)+16|0);rR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,174,b);tS(d,169,(NRa(c)|0)+28|0);rR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,175,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,169,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,176,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,169,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,177,b);b=IQa(c)|0;tS(d,169,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,169,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,178,b);break}case 10:{d=a+16|0;tS(d,179,b);tS(d,169,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,180,b);break}case 12:{d=a+16|0;tS(d,181,b);tS(d,169,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,182,b);tS(d,169,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,183,b);tS(d,169,(PRa(c)|0)+28|0);tS(d,169,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,184,b);tS(d,169,(bRa(c)|0)+24|0);tS(d,169,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,185,b);tS(d,169,(wQa(c)|0)+24|0);tS(d,169,(wQa(c)|0)+20|0);tS(d,169,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,186,b);tS(d,169,(QQa(c)|0)+20|0);tS(d,169,(QQa(c)|0)+16|0);tS(d,169,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,187,b);tS(d,169,(PQa(c)|0)+16|0);tS(d,169,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,188,b);break}case 16:{d=a+16|0;tS(d,189,b);tS(d,169,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,190,b);tS(d,169,(FRa(c)|0)+16|0);tS(d,169,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,191,b);tS(d,169,(DRa(c)|0)+16|0);tS(d,169,(DRa(c)|0)+12|0);tS(d,169,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,192,b);tS(d,169,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,193,b);rR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,194,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,169,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,195,b);break}case 23:{tS(a+16|0,196,b);break}default:hb()}while(0);return}function se(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2313,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2312,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2314,b);fS(d,(vSa(c)|0)+16|0);tS(d,2312,(vSa(c)|0)+12|0);tS(d,2312,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2315,b);tS(d,2312,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2316,b);fS(d,($Ra(c)|0)+16|0);fS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2317,b);tS(d,2312,(NRa(c)|0)+28|0);fS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2318,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2312,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2319,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2312,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2320,b);b=IQa(c)|0;tS(d,2312,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2312,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2321,b);break}case 10:{d=a+16|0;tS(d,2322,b);tS(d,2312,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2323,b);break}case 12:{d=a+16|0;tS(d,2324,b);tS(d,2312,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2325,b);tS(d,2312,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2326,b);tS(d,2312,(PRa(c)|0)+28|0);tS(d,2312,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2327,b);tS(d,2312,(bRa(c)|0)+24|0);tS(d,2312,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2328,b);tS(d,2312,(wQa(c)|0)+24|0);tS(d,2312,(wQa(c)|0)+20|0);tS(d,2312,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2329,b);tS(d,2312,(QQa(c)|0)+20|0);tS(d,2312,(QQa(c)|0)+16|0);tS(d,2312,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2330,b);tS(d,2312,(PQa(c)|0)+16|0);tS(d,2312,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2331,b);break}case 16:{d=a+16|0;tS(d,2332,b);tS(d,2312,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2333,b);tS(d,2312,(FRa(c)|0)+16|0);tS(d,2312,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2334,b);tS(d,2312,(DRa(c)|0)+16|0);tS(d,2312,(DRa(c)|0)+12|0);tS(d,2312,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2335,b);tS(d,2312,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2336,b);fS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2337,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2312,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2338,b);break}case 23:{tS(a+16|0,2339,b);break}default:hb()}while(0);return}function te(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,3072,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3071,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,3073,b);gS(d,(vSa(c)|0)+16|0);tS(d,3071,(vSa(c)|0)+12|0);tS(d,3071,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,3074,b);tS(d,3071,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,3075,b);gS(d,($Ra(c)|0)+16|0);gS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,3076,b);tS(d,3071,(NRa(c)|0)+28|0);gS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,3077,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3071,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,3078,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3071,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,3079,b);b=IQa(c)|0;tS(d,3071,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3071,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,3080,b);break}case 10:{d=a+16|0;tS(d,3081,b);tS(d,3071,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,3082,b);break}case 12:{d=a+16|0;tS(d,3083,b);tS(d,3071,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,3084,b);tS(d,3071,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,3085,b);tS(d,3071,(PRa(c)|0)+28|0);tS(d,3071,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,3086,b);tS(d,3071,(bRa(c)|0)+24|0);tS(d,3071,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,3087,b);tS(d,3071,(wQa(c)|0)+24|0);tS(d,3071,(wQa(c)|0)+20|0);tS(d,3071,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,3088,b);tS(d,3071,(QQa(c)|0)+20|0);tS(d,3071,(QQa(c)|0)+16|0);tS(d,3071,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,3089,b);tS(d,3071,(PQa(c)|0)+16|0);tS(d,3071,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,3090,b);break}case 16:{d=a+16|0;tS(d,3091,b);tS(d,3071,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,3092,b);tS(d,3071,(FRa(c)|0)+16|0);tS(d,3071,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,3093,b);tS(d,3071,(DRa(c)|0)+16|0);tS(d,3071,(DRa(c)|0)+12|0);tS(d,3071,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,3094,b);tS(d,3071,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,3095,b);gS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,3096,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3071,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,3097,b);break}case 23:{tS(a+16|0,3098,b);break}default:hb()}while(0);return}function ue(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,3044,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3041,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,3045,b);hS(d,(vSa(c)|0)+16|0);tS(d,3041,(vSa(c)|0)+12|0);tS(d,3041,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,3046,b);tS(d,3041,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,3047,b);hS(d,($Ra(c)|0)+16|0);hS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,3048,b);tS(d,3041,(NRa(c)|0)+28|0);hS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,3049,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3041,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,3050,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3041,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,3051,b);b=IQa(c)|0;tS(d,3041,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3041,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,3052,b);break}case 10:{d=a+16|0;tS(d,3053,b);tS(d,3041,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,3054,b);break}case 12:{d=a+16|0;tS(d,3055,b);tS(d,3041,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,3056,b);tS(d,3041,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,3057,b);tS(d,3041,(PRa(c)|0)+28|0);tS(d,3041,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,3058,b);tS(d,3041,(bRa(c)|0)+24|0);tS(d,3041,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,3059,b);tS(d,3041,(wQa(c)|0)+24|0);tS(d,3041,(wQa(c)|0)+20|0);tS(d,3041,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,3060,b);tS(d,3041,(QQa(c)|0)+20|0);tS(d,3041,(QQa(c)|0)+16|0);tS(d,3041,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,3061,b);tS(d,3041,(PQa(c)|0)+16|0);tS(d,3041,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,3062,b);break}case 16:{d=a+16|0;tS(d,3063,b);tS(d,3041,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,3064,b);tS(d,3041,(FRa(c)|0)+16|0);tS(d,3041,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,3065,b);tS(d,3041,(DRa(c)|0)+16|0);tS(d,3041,(DRa(c)|0)+12|0);tS(d,3041,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,3066,b);tS(d,3041,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,3067,b);hS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,3068,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,3041,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,3069,b);break}case 23:{tS(a+16|0,3070,b);break}default:hb()}while(0);return}function ve(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2527,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2523,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2529,b);oS(d,(vSa(c)|0)+16|0);tS(d,2523,(vSa(c)|0)+12|0);tS(d,2523,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2530,b);tS(d,2523,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2531,b);oS(d,($Ra(c)|0)+16|0);oS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2532,b);tS(d,2523,(NRa(c)|0)+28|0);oS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2537,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2523,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2538,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2523,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2539,b);b=IQa(c)|0;tS(d,2523,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2523,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2540,b);break}case 10:{d=a+16|0;tS(d,2541,b);tS(d,2523,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2542,b);break}case 12:{d=a+16|0;tS(d,2543,b);tS(d,2523,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2544,b);tS(d,2523,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2545,b);tS(d,2523,(PRa(c)|0)+28|0);tS(d,2523,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2546,b);tS(d,2523,(bRa(c)|0)+24|0);tS(d,2523,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2547,b);tS(d,2523,(wQa(c)|0)+24|0);tS(d,2523,(wQa(c)|0)+20|0);tS(d,2523,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2548,b);tS(d,2523,(QQa(c)|0)+20|0);tS(d,2523,(QQa(c)|0)+16|0);tS(d,2523,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2549,b);tS(d,2523,(PQa(c)|0)+16|0);tS(d,2523,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2550,b);break}case 16:{d=a+16|0;tS(d,2551,b);tS(d,2523,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2552,b);tS(d,2523,(FRa(c)|0)+16|0);tS(d,2523,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2553,b);tS(d,2523,(DRa(c)|0)+16|0);tS(d,2523,(DRa(c)|0)+12|0);tS(d,2523,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2554,b);tS(d,2523,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2533,b);oS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2555,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2523,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2556,b);break}case 23:{tS(a+16|0,2534,b);break}default:hb()}while(0);return}function we(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,2623,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2622,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,2624,b);sS(d,(vSa(c)|0)+16|0);tS(d,2622,(vSa(c)|0)+12|0);tS(d,2622,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,2625,b);tS(d,2622,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,2626,b);sS(d,($Ra(c)|0)+16|0);sS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,2627,b);tS(d,2622,(NRa(c)|0)+28|0);sS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,2628,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2622,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,2629,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2622,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,2630,b);b=IQa(c)|0;tS(d,2622,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2622,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,2631,b);break}case 10:{d=a+16|0;tS(d,2632,b);tS(d,2622,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,2633,b);break}case 12:{d=a+16|0;tS(d,2634,b);tS(d,2622,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,2635,b);tS(d,2622,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,2636,b);tS(d,2622,(PRa(c)|0)+28|0);tS(d,2622,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,2637,b);tS(d,2622,(bRa(c)|0)+24|0);tS(d,2622,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,2638,b);tS(d,2622,(wQa(c)|0)+24|0);tS(d,2622,(wQa(c)|0)+20|0);tS(d,2622,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,2639,b);tS(d,2622,(QQa(c)|0)+20|0);tS(d,2622,(QQa(c)|0)+16|0);tS(d,2622,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,2640,b);tS(d,2622,(PQa(c)|0)+16|0);tS(d,2622,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,2641,b);break}case 16:{d=a+16|0;tS(d,2642,b);tS(d,2622,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,2643,b);tS(d,2622,(FRa(c)|0)+16|0);tS(d,2622,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,2644,b);tS(d,2622,(DRa(c)|0)+16|0);tS(d,2622,(DRa(c)|0)+12|0);tS(d,2622,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,2645,b);tS(d,2622,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,2646,b);sS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,2647,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,2622,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,2648,b);break}case 23:{tS(a+16|0,2649,b);break}default:hb()}while(0);return}function xe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,110,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,109,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,111,b);TR(d,(vSa(c)|0)+16|0);tS(d,109,(vSa(c)|0)+12|0);tS(d,109,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,112,b);tS(d,109,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,113,b);TR(d,($Ra(c)|0)+16|0);TR(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,114,b);tS(d,109,(NRa(c)|0)+28|0);TR(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,115,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,109,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,116,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,109,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,117,b);b=IQa(c)|0;tS(d,109,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,109,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,118,b);break}case 10:{d=a+16|0;tS(d,119,b);tS(d,109,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,120,b);break}case 12:{d=a+16|0;tS(d,121,b);tS(d,109,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,122,b);tS(d,109,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,123,b);tS(d,109,(PRa(c)|0)+28|0);tS(d,109,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,124,b);tS(d,109,(bRa(c)|0)+24|0);tS(d,109,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,125,b);tS(d,109,(wQa(c)|0)+24|0);tS(d,109,(wQa(c)|0)+20|0);tS(d,109,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,126,b);tS(d,109,(QQa(c)|0)+20|0);tS(d,109,(QQa(c)|0)+16|0);tS(d,109,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,127,b);tS(d,109,(PQa(c)|0)+16|0);tS(d,109,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,128,b);break}case 16:{d=a+16|0;tS(d,129,b);tS(d,109,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,130,b);tS(d,109,(FRa(c)|0)+16|0);tS(d,109,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,131,b);tS(d,109,(DRa(c)|0)+16|0);tS(d,109,(DRa(c)|0)+12|0);tS(d,109,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,132,b);tS(d,109,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,133,b);TR(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,134,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,109,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,135,b);break}case 23:{tS(a+16|0,136,b);break}default:hb()}while(0);return}function ye(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1308,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1307,ODa(d,b)|0);c=b}}case 2:{tS(a,1309,b);dO(a,(vSa(c)|0)+16|0);tS(a,1307,(vSa(c)|0)+12|0);tS(a,1307,(vSa(c)|0)+8|0);break}case 3:{tS(a,1310,b);tS(a,1307,(lSa(c)|0)+12|0);break}case 4:{tS(a,1311,b);dO(a,($Ra(c)|0)+16|0);dO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1312,b);tS(a,1307,(NRa(c)|0)+28|0);dO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1313,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1307,ODa(d,b)|0);c=b}}case 7:{tS(a,1314,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1307,ODa(d,b)|0);c=b}}case 8:{tS(a,1315,b);b=IQa(c)|0;tS(a,1307,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1307,ODa(d,b)|0);c=b}}case 9:{tS(a,1316,b);break}case 10:{tS(a,1317,b);tS(a,1307,(nRa(c)|0)+12|0);break}case 11:{tS(a,1318,b);break}case 12:{tS(a,1319,b);tS(a,1307,($Qa(c)|0)+12|0);break}case 13:{tS(a,1320,b);tS(a,1307,(bSa(c)|0)+24|0);break}case 14:{tS(a,1321,b);tS(a,1307,(PRa(c)|0)+28|0);tS(a,1307,(PRa(c)|0)+24|0);break}case 24:{tS(a,1322,b);tS(a,1307,(bRa(c)|0)+24|0);tS(a,1307,(bRa(c)|0)+20|0);break}case 25:{tS(a,1323,b);tS(a,1307,(wQa(c)|0)+24|0);tS(a,1307,(wQa(c)|0)+20|0);tS(a,1307,(wQa(c)|0)+16|0);break}case 26:{tS(a,1324,b);tS(a,1307,(QQa(c)|0)+20|0);tS(a,1307,(QQa(c)|0)+16|0);tS(a,1307,(QQa(c)|0)+12|0);break}case 27:{tS(a,1325,b);tS(a,1307,(PQa(c)|0)+16|0);tS(a,1307,(PQa(c)|0)+12|0);break}case 15:{tS(a,1326,b);break}case 16:{tS(a,1327,b);tS(a,1307,(ORa(c)|0)+12|0);break}case 17:{tS(a,1328,b);tS(a,1307,(FRa(c)|0)+16|0);tS(a,1307,(FRa(c)|0)+12|0);break}case 18:{tS(a,1329,b);tS(a,1307,(DRa(c)|0)+16|0);tS(a,1307,(DRa(c)|0)+12|0);tS(a,1307,(DRa(c)|0)+8|0);break}case 19:{tS(a,1330,b);tS(a,1307,(dSa(c)|0)+8|0);break}case 20:{tS(a,1331,b);dO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1332,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1307,ODa(d,b)|0);c=b}}case 22:{tS(a,1333,b);break}case 23:{tS(a,1334,b);break}default:hb()}while(0);return}function ze(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,603,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,590,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,604,b);eS(d,(vSa(c)|0)+16|0);tS(d,590,(vSa(c)|0)+12|0);tS(d,590,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,605,b);tS(d,590,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,606,b);eS(d,($Ra(c)|0)+16|0);eS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,607,b);tS(d,590,(NRa(c)|0)+28|0);eS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,608,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,590,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,609,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,590,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,610,b);b=IQa(c)|0;tS(d,590,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,590,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,611,b);break}case 10:{d=a+16|0;tS(d,612,b);tS(d,590,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,613,b);break}case 12:{d=a+16|0;tS(d,614,b);tS(d,590,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,615,b);tS(d,590,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,616,b);tS(d,590,(PRa(c)|0)+28|0);tS(d,590,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,617,b);tS(d,590,(bRa(c)|0)+24|0);tS(d,590,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,618,b);tS(d,590,(wQa(c)|0)+24|0);tS(d,590,(wQa(c)|0)+20|0);tS(d,590,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,619,b);tS(d,590,(QQa(c)|0)+20|0);tS(d,590,(QQa(c)|0)+16|0);tS(d,590,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,620,b);tS(d,590,(PQa(c)|0)+16|0);tS(d,590,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,621,b);break}case 16:{d=a+16|0;tS(d,622,b);tS(d,590,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,623,b);tS(d,590,(FRa(c)|0)+16|0);tS(d,590,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,624,b);tS(d,590,(DRa(c)|0)+16|0);tS(d,590,(DRa(c)|0)+12|0);tS(d,590,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,625,b);tS(d,590,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,626,b);eS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,627,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,590,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,628,b);break}case 23:{tS(a+16|0,629,b);break}default:hb()}while(0);return}function Ae(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,437,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,436,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,438,b);lS(d,(vSa(c)|0)+16|0);tS(d,436,(vSa(c)|0)+12|0);tS(d,436,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,439,b);tS(d,436,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,440,b);lS(d,($Ra(c)|0)+16|0);lS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,441,b);tS(d,436,(NRa(c)|0)+28|0);lS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,442,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,436,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,443,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,436,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,444,b);b=IQa(c)|0;tS(d,436,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,436,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,445,b);break}case 10:{d=a+16|0;tS(d,446,b);tS(d,436,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,447,b);break}case 12:{d=a+16|0;tS(d,448,b);tS(d,436,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,449,b);tS(d,436,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,450,b);tS(d,436,(PRa(c)|0)+28|0);tS(d,436,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,451,b);tS(d,436,(bRa(c)|0)+24|0);tS(d,436,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,452,b);tS(d,436,(wQa(c)|0)+24|0);tS(d,436,(wQa(c)|0)+20|0);tS(d,436,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,453,b);tS(d,436,(QQa(c)|0)+20|0);tS(d,436,(QQa(c)|0)+16|0);tS(d,436,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,454,b);tS(d,436,(PQa(c)|0)+16|0);tS(d,436,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,455,b);break}case 16:{d=a+16|0;tS(d,456,b);tS(d,436,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,457,b);tS(d,436,(FRa(c)|0)+16|0);tS(d,436,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,458,b);tS(d,436,(DRa(c)|0)+16|0);tS(d,436,(DRa(c)|0)+12|0);tS(d,436,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,459,b);tS(d,436,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,460,b);lS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,461,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,436,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,462,b);break}case 23:{tS(a+16|0,463,b);break}default:hb()}while(0);return}function Be(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1215,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1214,ODa(d,b)|0);c=b}}case 2:{tS(a,1217,b);qO(a,(vSa(c)|0)+16|0);tS(a,1214,(vSa(c)|0)+12|0);tS(a,1214,(vSa(c)|0)+8|0);break}case 3:{tS(a,1218,b);tS(a,1214,(lSa(c)|0)+12|0);break}case 4:{tS(a,1219,b);qO(a,($Ra(c)|0)+16|0);qO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1220,b);tS(a,1214,(NRa(c)|0)+28|0);qO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1223,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1214,ODa(d,b)|0);c=b}}case 7:{tS(a,1224,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1214,ODa(d,b)|0);c=b}}case 8:{tS(a,1225,b);b=IQa(c)|0;tS(a,1214,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1214,ODa(d,b)|0);c=b}}case 9:{tS(a,1226,b);break}case 10:{tS(a,1227,b);tS(a,1214,(nRa(c)|0)+12|0);break}case 11:{tS(a,1228,b);break}case 12:{tS(a,1229,b);tS(a,1214,($Qa(c)|0)+12|0);break}case 13:{tS(a,1230,b);tS(a,1214,(bSa(c)|0)+24|0);break}case 14:{tS(a,1231,b);tS(a,1214,(PRa(c)|0)+28|0);tS(a,1214,(PRa(c)|0)+24|0);break}case 24:{tS(a,1232,b);tS(a,1214,(bRa(c)|0)+24|0);tS(a,1214,(bRa(c)|0)+20|0);break}case 25:{tS(a,1233,b);tS(a,1214,(wQa(c)|0)+24|0);tS(a,1214,(wQa(c)|0)+20|0);tS(a,1214,(wQa(c)|0)+16|0);break}case 26:{tS(a,1234,b);tS(a,1214,(QQa(c)|0)+20|0);tS(a,1214,(QQa(c)|0)+16|0);tS(a,1214,(QQa(c)|0)+12|0);break}case 27:{tS(a,1235,b);tS(a,1214,(PQa(c)|0)+16|0);tS(a,1214,(PQa(c)|0)+12|0);break}case 15:{tS(a,1236,b);break}case 16:{tS(a,1237,b);tS(a,1214,(ORa(c)|0)+12|0);break}case 17:{tS(a,1238,b);tS(a,1214,(FRa(c)|0)+16|0);tS(a,1214,(FRa(c)|0)+12|0);break}case 18:{tS(a,1239,b);tS(a,1214,(DRa(c)|0)+16|0);tS(a,1214,(DRa(c)|0)+12|0);tS(a,1214,(DRa(c)|0)+8|0);break}case 19:{tS(a,1240,b);tS(a,1214,(dSa(c)|0)+8|0);break}case 20:{tS(a,1221,b);qO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1241,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1214,ODa(d,b)|0);c=b}}case 22:{tS(a,1242,b);break}case 23:{tS(a,1222,b);break}default:hb()}while(0);return}function Ce(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1120,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1119,ODa(d,b)|0);c=b}}case 2:{tS(a,1122,b);rO(a,(vSa(c)|0)+16|0);tS(a,1119,(vSa(c)|0)+12|0);tS(a,1119,(vSa(c)|0)+8|0);break}case 3:{tS(a,1123,b);tS(a,1119,(lSa(c)|0)+12|0);break}case 4:{tS(a,1124,b);rO(a,($Ra(c)|0)+16|0);rO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1125,b);tS(a,1119,(NRa(c)|0)+28|0);rO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1128,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1119,ODa(d,b)|0);c=b}}case 7:{tS(a,1129,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1119,ODa(d,b)|0);c=b}}case 8:{tS(a,1130,b);b=IQa(c)|0;tS(a,1119,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1119,ODa(d,b)|0);c=b}}case 9:{tS(a,1131,b);break}case 10:{tS(a,1132,b);tS(a,1119,(nRa(c)|0)+12|0);break}case 11:{tS(a,1133,b);break}case 12:{tS(a,1134,b);tS(a,1119,($Qa(c)|0)+12|0);break}case 13:{tS(a,1135,b);tS(a,1119,(bSa(c)|0)+24|0);break}case 14:{tS(a,1136,b);tS(a,1119,(PRa(c)|0)+28|0);tS(a,1119,(PRa(c)|0)+24|0);break}case 24:{tS(a,1137,b);tS(a,1119,(bRa(c)|0)+24|0);tS(a,1119,(bRa(c)|0)+20|0);break}case 25:{tS(a,1138,b);tS(a,1119,(wQa(c)|0)+24|0);tS(a,1119,(wQa(c)|0)+20|0);tS(a,1119,(wQa(c)|0)+16|0);break}case 26:{tS(a,1139,b);tS(a,1119,(QQa(c)|0)+20|0);tS(a,1119,(QQa(c)|0)+16|0);tS(a,1119,(QQa(c)|0)+12|0);break}case 27:{tS(a,1140,b);tS(a,1119,(PQa(c)|0)+16|0);tS(a,1119,(PQa(c)|0)+12|0);break}case 15:{tS(a,1141,b);break}case 16:{tS(a,1142,b);tS(a,1119,(ORa(c)|0)+12|0);break}case 17:{tS(a,1143,b);tS(a,1119,(FRa(c)|0)+16|0);tS(a,1119,(FRa(c)|0)+12|0);break}case 18:{tS(a,1144,b);tS(a,1119,(DRa(c)|0)+16|0);tS(a,1119,(DRa(c)|0)+12|0);tS(a,1119,(DRa(c)|0)+8|0);break}case 19:{tS(a,1145,b);tS(a,1119,(dSa(c)|0)+8|0);break}case 20:{tS(a,1126,b);rO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1146,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1119,ODa(d,b)|0);c=b}}case 22:{tS(a,1147,b);break}case 23:{tS(a,1127,b);break}default:hb()}while(0);return}function De(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,717,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,716,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,718,b);rS(d,(vSa(c)|0)+16|0);tS(d,716,(vSa(c)|0)+12|0);tS(d,716,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,719,b);tS(d,716,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,720,b);rS(d,($Ra(c)|0)+16|0);rS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,721,b);tS(d,716,(NRa(c)|0)+28|0);rS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,722,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,716,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,723,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,716,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,724,b);b=IQa(c)|0;tS(d,716,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,716,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,725,b);break}case 10:{d=a+16|0;tS(d,726,b);tS(d,716,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,727,b);break}case 12:{d=a+16|0;tS(d,728,b);tS(d,716,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,729,b);tS(d,716,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,730,b);tS(d,716,(PRa(c)|0)+28|0);tS(d,716,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,731,b);tS(d,716,(bRa(c)|0)+24|0);tS(d,716,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,732,b);tS(d,716,(wQa(c)|0)+24|0);tS(d,716,(wQa(c)|0)+20|0);tS(d,716,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,733,b);tS(d,716,(QQa(c)|0)+20|0);tS(d,716,(QQa(c)|0)+16|0);tS(d,716,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,734,b);tS(d,716,(PQa(c)|0)+16|0);tS(d,716,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,735,b);break}case 16:{d=a+16|0;tS(d,736,b);tS(d,716,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,737,b);tS(d,716,(FRa(c)|0)+16|0);tS(d,716,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,738,b);tS(d,716,(DRa(c)|0)+16|0);tS(d,716,(DRa(c)|0)+12|0);tS(d,716,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,739,b);tS(d,716,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,740,b);rS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,741,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,716,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,742,b);break}case 23:{tS(a+16|0,743,b);break}default:hb()}while(0);return}function Ee(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1187,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1186,ODa(d,b)|0);c=b}}case 2:{tS(a,1188,b);wO(a,(vSa(c)|0)+16|0);tS(a,1186,(vSa(c)|0)+12|0);tS(a,1186,(vSa(c)|0)+8|0);break}case 3:{tS(a,1189,b);tS(a,1186,(lSa(c)|0)+12|0);break}case 4:{tS(a,1190,b);wO(a,($Ra(c)|0)+16|0);wO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1191,b);tS(a,1186,(NRa(c)|0)+28|0);wO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1192,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1186,ODa(d,b)|0);c=b}}case 7:{tS(a,1193,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1186,ODa(d,b)|0);c=b}}case 8:{tS(a,1194,b);b=IQa(c)|0;tS(a,1186,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1186,ODa(d,b)|0);c=b}}case 9:{tS(a,1195,b);break}case 10:{tS(a,1196,b);tS(a,1186,(nRa(c)|0)+12|0);break}case 11:{tS(a,1197,b);break}case 12:{tS(a,1198,b);tS(a,1186,($Qa(c)|0)+12|0);break}case 13:{tS(a,1199,b);tS(a,1186,(bSa(c)|0)+24|0);break}case 14:{tS(a,1200,b);tS(a,1186,(PRa(c)|0)+28|0);tS(a,1186,(PRa(c)|0)+24|0);break}case 24:{tS(a,1201,b);tS(a,1186,(bRa(c)|0)+24|0);tS(a,1186,(bRa(c)|0)+20|0);break}case 25:{tS(a,1202,b);tS(a,1186,(wQa(c)|0)+24|0);tS(a,1186,(wQa(c)|0)+20|0);tS(a,1186,(wQa(c)|0)+16|0);break}case 26:{tS(a,1203,b);tS(a,1186,(QQa(c)|0)+20|0);tS(a,1186,(QQa(c)|0)+16|0);tS(a,1186,(QQa(c)|0)+12|0);break}case 27:{tS(a,1204,b);tS(a,1186,(PQa(c)|0)+16|0);tS(a,1186,(PQa(c)|0)+12|0);break}case 15:{tS(a,1205,b);break}case 16:{tS(a,1206,b);tS(a,1186,(ORa(c)|0)+12|0);break}case 17:{tS(a,1207,b);tS(a,1186,(FRa(c)|0)+16|0);tS(a,1186,(FRa(c)|0)+12|0);break}case 18:{tS(a,1208,b);tS(a,1186,(DRa(c)|0)+16|0);tS(a,1186,(DRa(c)|0)+12|0);tS(a,1186,(DRa(c)|0)+8|0);break}case 19:{tS(a,1209,b);tS(a,1186,(dSa(c)|0)+8|0);break}case 20:{tS(a,1210,b);wO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1211,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1186,ODa(d,b)|0);c=b}}case 22:{tS(a,1212,b);break}case 23:{tS(a,1213,b);break}default:hb()}while(0);return}function Fe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1092,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1091,ODa(d,b)|0);c=b}}case 2:{tS(a,1093,b);AO(a,(vSa(c)|0)+16|0);tS(a,1091,(vSa(c)|0)+12|0);tS(a,1091,(vSa(c)|0)+8|0);break}case 3:{tS(a,1094,b);tS(a,1091,(lSa(c)|0)+12|0);break}case 4:{tS(a,1095,b);AO(a,($Ra(c)|0)+16|0);AO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1096,b);tS(a,1091,(NRa(c)|0)+28|0);AO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1097,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1091,ODa(d,b)|0);c=b}}case 7:{tS(a,1098,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1091,ODa(d,b)|0);c=b}}case 8:{tS(a,1099,b);b=IQa(c)|0;tS(a,1091,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1091,ODa(d,b)|0);c=b}}case 9:{tS(a,1100,b);break}case 10:{tS(a,1101,b);tS(a,1091,(nRa(c)|0)+12|0);break}case 11:{tS(a,1102,b);break}case 12:{tS(a,1103,b);tS(a,1091,($Qa(c)|0)+12|0);break}case 13:{tS(a,1104,b);tS(a,1091,(bSa(c)|0)+24|0);break}case 14:{tS(a,1105,b);tS(a,1091,(PRa(c)|0)+28|0);tS(a,1091,(PRa(c)|0)+24|0);break}case 24:{tS(a,1106,b);tS(a,1091,(bRa(c)|0)+24|0);tS(a,1091,(bRa(c)|0)+20|0);break}case 25:{tS(a,1107,b);tS(a,1091,(wQa(c)|0)+24|0);tS(a,1091,(wQa(c)|0)+20|0);tS(a,1091,(wQa(c)|0)+16|0);break}case 26:{tS(a,1108,b);tS(a,1091,(QQa(c)|0)+20|0);tS(a,1091,(QQa(c)|0)+16|0);tS(a,1091,(QQa(c)|0)+12|0);break}case 27:{tS(a,1109,b);tS(a,1091,(PQa(c)|0)+16|0);tS(a,1091,(PQa(c)|0)+12|0);break}case 15:{tS(a,1110,b);break}case 16:{tS(a,1111,b);tS(a,1091,(ORa(c)|0)+12|0);break}case 17:{tS(a,1112,b);tS(a,1091,(FRa(c)|0)+16|0);tS(a,1091,(FRa(c)|0)+12|0);break}case 18:{tS(a,1113,b);tS(a,1091,(DRa(c)|0)+16|0);tS(a,1091,(DRa(c)|0)+12|0);tS(a,1091,(DRa(c)|0)+8|0);break}case 19:{tS(a,1114,b);tS(a,1091,(dSa(c)|0)+8|0);break}case 20:{tS(a,1115,b);AO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1116,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1091,ODa(d,b)|0);c=b}}case 22:{tS(a,1117,b);break}case 23:{tS(a,1118,b);break}default:hb()}while(0);return}function Ge(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,140,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,137,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,141,b);wS(d,(vSa(c)|0)+16|0);tS(d,137,(vSa(c)|0)+12|0);tS(d,137,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,142,b);tS(d,137,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,143,b);wS(d,($Ra(c)|0)+16|0);wS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,144,b);tS(d,137,(NRa(c)|0)+28|0);wS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,145,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,137,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,146,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,137,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,147,b);b=IQa(c)|0;tS(d,137,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,137,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,148,b);break}case 10:{d=a+16|0;tS(d,149,b);tS(d,137,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,150,b);break}case 12:{d=a+16|0;tS(d,151,b);tS(d,137,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,152,b);tS(d,137,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,153,b);tS(d,137,(PRa(c)|0)+28|0);tS(d,137,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,154,b);tS(d,137,(bRa(c)|0)+24|0);tS(d,137,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,155,b);tS(d,137,(wQa(c)|0)+24|0);tS(d,137,(wQa(c)|0)+20|0);tS(d,137,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,156,b);tS(d,137,(QQa(c)|0)+20|0);tS(d,137,(QQa(c)|0)+16|0);tS(d,137,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,157,b);tS(d,137,(PQa(c)|0)+16|0);tS(d,137,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,158,b);break}case 16:{d=a+16|0;tS(d,159,b);tS(d,137,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,160,b);tS(d,137,(FRa(c)|0)+16|0);tS(d,137,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,161,b);tS(d,137,(DRa(c)|0)+16|0);tS(d,137,(DRa(c)|0)+12|0);tS(d,137,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,162,b);tS(d,137,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,163,b);wS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,164,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,137,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,165,b);break}case 23:{tS(a+16|0,166,b);break}default:hb()}while(0);return}function He(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;l=u;u=u+112|0;k=l+96|0;d=l+80|0;e=l+48|0;q=l+64|0;p=l+32|0;o=l+16|0;m=l;j=b+8|0;a:do if(J_a(f[j>>2]|0)|0){g=b+12|0;c=f[g>>2]|0;if(!(xba(a,c)|0)){GVa(f[a+16>>2]|0,c)|0;b=f[b+16>>2]|0;if(!(xba(a,b)|0))break;UN(d,a,b);MCa(d);break}d=b+16|0;if(!(xba(a,f[d>>2]|0)|0)){p=f[a+44>>2]|0;q=lNa(f[p>>2]|0,c)|0;q=J$(p,q,f[d>>2]|0)|0;GVa(f[a+16>>2]|0,q)|0;UN(e,a,f[g>>2]|0);MCa(e);break}oD(q,a,1);x=0;va(160,p|0,a|0,f[g>>2]|0);e=x;x=0;if(e&1)b=Ia()|0;else{x=0;va(159,o|0,a|0,1);e=x;x=0;if(e&1)b=Ia()|0;else{x=0;va(160,m|0,a|0,f[d>>2]|0);e=x;x=0;if(e&1)b=Ia()|0;else{e=a+44|0;b=f[e>>2]|0;x=0;c=ga(320,o|0)|0;r=x;x=0;b:do if(!(r&1)?(x=0,h=ja(45,b|0,c|0,f[d>>2]|0)|0,r=x,x=0,!(r&1)):0){b=f[e>>2]|0;x=0;c=ga(320,q|0)|0;r=x;x=0;if(!(r&1)?(x=0,i=ja(45,b|0,c|0,f[g>>2]|0)|0,r=x,x=0,!(r&1)):0){x=0;b=ja(70,f[e>>2]|0,i|0,h|0)|0;r=x;x=0;c:do if(!(r&1)){c=f[j>>2]|0;do switch(c|0){case 25:{x=0;b=oa(42,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}case 26:{x=0;b=oa(43,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}case 39:case 38:case 31:case 30:case 29:case 28:case 27:{x=0;b=ia(62,134176,106771)|0;r=x;x=0;if(r&1)break c;x=0;c=ia(77,b|0,f[j>>2]|0)|0;r=x;x=0;if(r&1)break c;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[k>>2]|0,134880)|0;r=x;x=0;do if(!(r&1)){x=0;b=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0;r=x;x=0;if(r&1)break;OCa(k);x=0;ia(79,c|0,b|0)|0;r=x;x=0;if(r&1)break c;x=0;ga(227,c|0)|0;r=x;x=0;if(r&1)break c;x=0;sa(5);x=0;break c}while(0);b=Ia()|0;OCa(k);break b}case 34:case 33:case 32:{x=0;b=pa(11,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}case 36:case 37:case 35:{x=0;b=pa(12,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}case 40:{x=0;b=oa(44,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}case 41:{x=0;b=oa(45,a|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}case 48:case 46:case 44:case 42:{x=0;b=pa(13,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}case 49:case 47:case 45:case 43:{x=0;b=pa(14,a|0,c|0,b|0,q|0,p|0,o|0,m|0)|0;r=x;x=0;if(r&1)break c;GVa(f[a+16>>2]|0,b)|0;break}default:{x=0;b=ia(62,134176,106804)|0;r=x;x=0;if(r&1)break c;x=0;c=ia(77,b|0,f[j>>2]|0)|0;r=x;x=0;if(r&1)break c;dYa(k,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;b=ia(73,f[k>>2]|0,134880)|0;r=x;x=0;do if(!(r&1)){x=0;b=ia(f[(f[b>>2]|0)+28>>2]|0,b|0,10)|0;r=x;x=0;if(r&1)break;OCa(k);x=0;ia(79,c|0,b|0)|0;r=x;x=0;if(r&1)break c;x=0;ga(227,c|0)|0;r=x;x=0;if(r&1)break c;x=0;sa(5);x=0;break c}while(0);b=Ia()|0;OCa(k);break b}}while(0);MCa(m);MCa(o);MCa(p);MCa(q);break a}while(0);b=Ia()|0;break}b=Ia()|0}else n=19;while(0);if((n|0)==19)b=Ia()|0;MCa(m)}MCa(o)}MCa(p)}MCa(q);Ua(b|0)}while(0);u=l;return}function Ie(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,323,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,322,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,324,b);HS(d,(vSa(c)|0)+16|0);tS(d,322,(vSa(c)|0)+12|0);tS(d,322,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,325,b);tS(d,322,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,326,b);HS(d,($Ra(c)|0)+16|0);HS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,327,b);tS(d,322,(NRa(c)|0)+28|0);HS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,328,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,322,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,329,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,322,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,330,b);b=IQa(c)|0;tS(d,322,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,322,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,331,b);break}case 10:{d=a+16|0;tS(d,332,b);tS(d,322,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,333,b);break}case 12:{d=a+16|0;tS(d,334,b);tS(d,322,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,335,b);tS(d,322,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,336,b);tS(d,322,(PRa(c)|0)+28|0);tS(d,322,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,337,b);tS(d,322,(bRa(c)|0)+24|0);tS(d,322,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,338,b);tS(d,322,(wQa(c)|0)+24|0);tS(d,322,(wQa(c)|0)+20|0);tS(d,322,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,339,b);tS(d,322,(QQa(c)|0)+20|0);tS(d,322,(QQa(c)|0)+16|0);tS(d,322,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,340,b);tS(d,322,(PQa(c)|0)+16|0);tS(d,322,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,341,b);break}case 16:{d=a+16|0;tS(d,342,b);tS(d,322,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,343,b);tS(d,322,(FRa(c)|0)+16|0);tS(d,322,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,344,b);tS(d,322,(DRa(c)|0)+16|0);tS(d,322,(DRa(c)|0)+12|0);tS(d,322,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,345,b);tS(d,322,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,346,b);HS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,347,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,322,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,348,b);break}case 23:{tS(a+16|0,349,b);break}default:hb()}while(0);return}function Je(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{d=a+16|0;tS(d,409,b);b=aSa(c)|0;c=b+12|0;b=Jbb(f[b+16>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,408,ODa(c,a)|0);b=a}}case 2:{d=a+16|0;tS(d,410,b);LS(d,(vSa(c)|0)+16|0);tS(d,408,(vSa(c)|0)+12|0);tS(d,408,(vSa(c)|0)+8|0);break}case 3:{d=a+16|0;tS(d,411,b);tS(d,408,(lSa(c)|0)+12|0);break}case 4:{d=a+16|0;tS(d,412,b);LS(d,($Ra(c)|0)+16|0);LS(d,($Ra(c)|0)+12|0);break}case 5:{d=a+16|0;tS(d,413,b);tS(d,408,(NRa(c)|0)+28|0);LS(d,(NRa(c)|0)+32|0);break}case 6:{d=a+16|0;tS(d,414,b);b=mSa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,408,ODa(c,a)|0);b=a}}case 7:{d=a+16|0;tS(d,415,b);b=XQa(c)|0;c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,408,ODa(c,a)|0);b=a}}case 8:{d=a+16|0;tS(d,416,b);b=IQa(c)|0;tS(d,408,(IQa(c)|0)+28|0);c=b+8|0;b=Jbb(f[b+12>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,408,ODa(c,a)|0);b=a}}case 9:{tS(a+16|0,417,b);break}case 10:{d=a+16|0;tS(d,418,b);tS(d,408,(nRa(c)|0)+12|0);break}case 11:{tS(a+16|0,419,b);break}case 12:{d=a+16|0;tS(d,420,b);tS(d,408,($Qa(c)|0)+12|0);break}case 13:{d=a+16|0;tS(d,421,b);tS(d,408,(bSa(c)|0)+24|0);break}case 14:{d=a+16|0;tS(d,422,b);tS(d,408,(PRa(c)|0)+28|0);tS(d,408,(PRa(c)|0)+24|0);break}case 24:{d=a+16|0;tS(d,423,b);tS(d,408,(bRa(c)|0)+24|0);tS(d,408,(bRa(c)|0)+20|0);break}case 25:{d=a+16|0;tS(d,424,b);tS(d,408,(wQa(c)|0)+24|0);tS(d,408,(wQa(c)|0)+20|0);tS(d,408,(wQa(c)|0)+16|0);break}case 26:{d=a+16|0;tS(d,425,b);tS(d,408,(QQa(c)|0)+20|0);tS(d,408,(QQa(c)|0)+16|0);tS(d,408,(QQa(c)|0)+12|0);break}case 27:{d=a+16|0;tS(d,426,b);tS(d,408,(PQa(c)|0)+16|0);tS(d,408,(PQa(c)|0)+12|0);break}case 15:{tS(a+16|0,427,b);break}case 16:{d=a+16|0;tS(d,428,b);tS(d,408,(ORa(c)|0)+12|0);break}case 17:{d=a+16|0;tS(d,429,b);tS(d,408,(FRa(c)|0)+16|0);tS(d,408,(FRa(c)|0)+12|0);break}case 18:{d=a+16|0;tS(d,430,b);tS(d,408,(DRa(c)|0)+16|0);tS(d,408,(DRa(c)|0)+12|0);tS(d,408,(DRa(c)|0)+8|0);break}case 19:{d=a+16|0;tS(d,431,b);tS(d,408,(dSa(c)|0)+8|0);break}case 20:{d=a+16|0;tS(d,432,b);LS(d,(ERa(c)|0)+8|0);break}case 21:{d=a+16|0;tS(d,433,b);b=cSa(c)|0;c=b+16|0;b=Jbb(f[b+20>>2]|0)|0;while(1){a=b+-1|0;if((b|0)<=0)break a;tS(d,408,ODa(c,a)|0);b=a}}case 22:{tS(a+16|0,434,b);break}case 23:{tS(a+16|0,435,b);break}default:hb()}while(0);return}function Ke(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,995,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,994,ODa(d,b)|0);c=b}}case 2:{tS(a,997,b);yO(a,(vSa(c)|0)+16|0);tS(a,994,(vSa(c)|0)+12|0);tS(a,994,(vSa(c)|0)+8|0);break}case 3:{tS(a,998,b);tS(a,994,(lSa(c)|0)+12|0);break}case 4:{tS(a,999,b);yO(a,($Ra(c)|0)+16|0);yO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1e3,b);tS(a,994,(NRa(c)|0)+28|0);yO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1003,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,994,ODa(d,b)|0);c=b}}case 7:{tS(a,1004,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,994,ODa(d,b)|0);c=b}}case 8:{tS(a,1005,b);b=IQa(c)|0;tS(a,994,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,994,ODa(d,b)|0);c=b}}case 9:{tS(a,1006,b);break}case 10:{tS(a,1007,b);tS(a,994,(nRa(c)|0)+12|0);break}case 11:{tS(a,1008,b);break}case 12:{tS(a,1009,b);tS(a,994,($Qa(c)|0)+12|0);break}case 13:{tS(a,1010,b);tS(a,994,(bSa(c)|0)+24|0);break}case 14:{tS(a,1011,b);tS(a,994,(PRa(c)|0)+28|0);tS(a,994,(PRa(c)|0)+24|0);break}case 24:{tS(a,1012,b);tS(a,994,(bRa(c)|0)+24|0);tS(a,994,(bRa(c)|0)+20|0);break}case 25:{tS(a,1013,b);tS(a,994,(wQa(c)|0)+24|0);tS(a,994,(wQa(c)|0)+20|0);tS(a,994,(wQa(c)|0)+16|0);break}case 26:{tS(a,1014,b);tS(a,994,(QQa(c)|0)+20|0);tS(a,994,(QQa(c)|0)+16|0);tS(a,994,(QQa(c)|0)+12|0);break}case 27:{tS(a,1015,b);tS(a,994,(PQa(c)|0)+16|0);tS(a,994,(PQa(c)|0)+12|0);break}case 15:{tS(a,1016,b);break}case 16:{tS(a,1017,b);tS(a,994,(ORa(c)|0)+12|0);break}case 17:{tS(a,1018,b);tS(a,994,(FRa(c)|0)+16|0);tS(a,994,(FRa(c)|0)+12|0);break}case 18:{tS(a,1019,b);tS(a,994,(DRa(c)|0)+16|0);tS(a,994,(DRa(c)|0)+12|0);tS(a,994,(DRa(c)|0)+8|0);break}case 19:{tS(a,1020,b);tS(a,994,(dSa(c)|0)+8|0);break}case 20:{tS(a,1001,b);yO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1021,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,994,ODa(d,b)|0);c=b}}case 22:{tS(a,1022,b);break}case 23:{tS(a,1002,b);break}default:hb()}while(0);return}function Le(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,900,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,899,ODa(d,b)|0);c=b}}case 2:{tS(a,902,b);xO(a,(vSa(c)|0)+16|0);tS(a,899,(vSa(c)|0)+12|0);tS(a,899,(vSa(c)|0)+8|0);break}case 3:{tS(a,903,b);tS(a,899,(lSa(c)|0)+12|0);break}case 4:{tS(a,904,b);xO(a,($Ra(c)|0)+16|0);xO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,905,b);tS(a,899,(NRa(c)|0)+28|0);xO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,908,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,899,ODa(d,b)|0);c=b}}case 7:{tS(a,909,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,899,ODa(d,b)|0);c=b}}case 8:{tS(a,910,b);b=IQa(c)|0;tS(a,899,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,899,ODa(d,b)|0);c=b}}case 9:{tS(a,911,b);break}case 10:{tS(a,912,b);tS(a,899,(nRa(c)|0)+12|0);break}case 11:{tS(a,913,b);break}case 12:{tS(a,914,b);tS(a,899,($Qa(c)|0)+12|0);break}case 13:{tS(a,915,b);tS(a,899,(bSa(c)|0)+24|0);break}case 14:{tS(a,916,b);tS(a,899,(PRa(c)|0)+28|0);tS(a,899,(PRa(c)|0)+24|0);break}case 24:{tS(a,917,b);tS(a,899,(bRa(c)|0)+24|0);tS(a,899,(bRa(c)|0)+20|0);break}case 25:{tS(a,918,b);tS(a,899,(wQa(c)|0)+24|0);tS(a,899,(wQa(c)|0)+20|0);tS(a,899,(wQa(c)|0)+16|0);break}case 26:{tS(a,919,b);tS(a,899,(QQa(c)|0)+20|0);tS(a,899,(QQa(c)|0)+16|0);tS(a,899,(QQa(c)|0)+12|0);break}case 27:{tS(a,920,b);tS(a,899,(PQa(c)|0)+16|0);tS(a,899,(PQa(c)|0)+12|0);break}case 15:{tS(a,921,b);break}case 16:{tS(a,922,b);tS(a,899,(ORa(c)|0)+12|0);break}case 17:{tS(a,923,b);tS(a,899,(FRa(c)|0)+16|0);tS(a,899,(FRa(c)|0)+12|0);break}case 18:{tS(a,924,b);tS(a,899,(DRa(c)|0)+16|0);tS(a,899,(DRa(c)|0)+12|0);tS(a,899,(DRa(c)|0)+8|0);break}case 19:{tS(a,925,b);tS(a,899,(dSa(c)|0)+8|0);break}case 20:{tS(a,906,b);xO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,926,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,899,ODa(d,b)|0);c=b}}case 22:{tS(a,927,b);break}case 23:{tS(a,907,b);break}default:hb()}while(0);return}function Me(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,775,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,774,ODa(d,b)|0);c=b}}case 2:{tS(a,777,b);zO(a,(vSa(c)|0)+16|0);tS(a,774,(vSa(c)|0)+12|0);tS(a,774,(vSa(c)|0)+8|0);break}case 3:{tS(a,778,b);tS(a,774,(lSa(c)|0)+12|0);break}case 4:{tS(a,779,b);zO(a,($Ra(c)|0)+16|0);zO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,780,b);tS(a,774,(NRa(c)|0)+28|0);zO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,783,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,774,ODa(d,b)|0);c=b}}case 7:{tS(a,784,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,774,ODa(d,b)|0);c=b}}case 8:{tS(a,785,b);b=IQa(c)|0;tS(a,774,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,774,ODa(d,b)|0);c=b}}case 9:{tS(a,786,b);break}case 10:{tS(a,787,b);tS(a,774,(nRa(c)|0)+12|0);break}case 11:{tS(a,788,b);break}case 12:{tS(a,789,b);tS(a,774,($Qa(c)|0)+12|0);break}case 13:{tS(a,790,b);tS(a,774,(bSa(c)|0)+24|0);break}case 14:{tS(a,791,b);tS(a,774,(PRa(c)|0)+28|0);tS(a,774,(PRa(c)|0)+24|0);break}case 24:{tS(a,792,b);tS(a,774,(bRa(c)|0)+24|0);tS(a,774,(bRa(c)|0)+20|0);break}case 25:{tS(a,793,b);tS(a,774,(wQa(c)|0)+24|0);tS(a,774,(wQa(c)|0)+20|0);tS(a,774,(wQa(c)|0)+16|0);break}case 26:{tS(a,794,b);tS(a,774,(QQa(c)|0)+20|0);tS(a,774,(QQa(c)|0)+16|0);tS(a,774,(QQa(c)|0)+12|0);break}case 27:{tS(a,795,b);tS(a,774,(PQa(c)|0)+16|0);tS(a,774,(PQa(c)|0)+12|0);break}case 15:{tS(a,796,b);break}case 16:{tS(a,797,b);tS(a,774,(ORa(c)|0)+12|0);break}case 17:{tS(a,798,b);tS(a,774,(FRa(c)|0)+16|0);tS(a,774,(FRa(c)|0)+12|0);break}case 18:{tS(a,799,b);tS(a,774,(DRa(c)|0)+16|0);tS(a,774,(DRa(c)|0)+12|0);tS(a,774,(DRa(c)|0)+8|0);break}case 19:{tS(a,800,b);tS(a,774,(dSa(c)|0)+8|0);break}case 20:{tS(a,781,b);zO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,801,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,774,ODa(d,b)|0);c=b}}case 22:{tS(a,802,b);break}case 23:{tS(a,782,b);break}default:hb()}while(0);return}function Ne(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,872,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,871,ODa(d,b)|0);c=b}}case 2:{tS(a,873,b);EO(a,(vSa(c)|0)+16|0);tS(a,871,(vSa(c)|0)+12|0);tS(a,871,(vSa(c)|0)+8|0);break}case 3:{tS(a,874,b);tS(a,871,(lSa(c)|0)+12|0);break}case 4:{tS(a,875,b);EO(a,($Ra(c)|0)+16|0);EO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,876,b);tS(a,871,(NRa(c)|0)+28|0);EO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,877,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,871,ODa(d,b)|0);c=b}}case 7:{tS(a,878,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,871,ODa(d,b)|0);c=b}}case 8:{tS(a,879,b);b=IQa(c)|0;tS(a,871,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,871,ODa(d,b)|0);c=b}}case 9:{tS(a,880,b);break}case 10:{tS(a,881,b);tS(a,871,(nRa(c)|0)+12|0);break}case 11:{tS(a,882,b);break}case 12:{tS(a,883,b);tS(a,871,($Qa(c)|0)+12|0);break}case 13:{tS(a,884,b);tS(a,871,(bSa(c)|0)+24|0);break}case 14:{tS(a,885,b);tS(a,871,(PRa(c)|0)+28|0);tS(a,871,(PRa(c)|0)+24|0);break}case 24:{tS(a,886,b);tS(a,871,(bRa(c)|0)+24|0);tS(a,871,(bRa(c)|0)+20|0);break}case 25:{tS(a,887,b);tS(a,871,(wQa(c)|0)+24|0);tS(a,871,(wQa(c)|0)+20|0);tS(a,871,(wQa(c)|0)+16|0);break}case 26:{tS(a,888,b);tS(a,871,(QQa(c)|0)+20|0);tS(a,871,(QQa(c)|0)+16|0);tS(a,871,(QQa(c)|0)+12|0);break}case 27:{tS(a,889,b);tS(a,871,(PQa(c)|0)+16|0);tS(a,871,(PQa(c)|0)+12|0);break}case 15:{tS(a,890,b);break}case 16:{tS(a,891,b);tS(a,871,(ORa(c)|0)+12|0);break}case 17:{tS(a,892,b);tS(a,871,(FRa(c)|0)+16|0);tS(a,871,(FRa(c)|0)+12|0);break}case 18:{tS(a,893,b);tS(a,871,(DRa(c)|0)+16|0);tS(a,871,(DRa(c)|0)+12|0);tS(a,871,(DRa(c)|0)+8|0);break}case 19:{tS(a,894,b);tS(a,871,(dSa(c)|0)+8|0);break}case 20:{tS(a,895,b);EO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,896,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,871,ODa(d,b)|0);c=b}}case 22:{tS(a,897,b);break}case 23:{tS(a,898,b);break}default:hb()}while(0);return}function Oe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,967,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,966,ODa(d,b)|0);c=b}}case 2:{tS(a,968,b);FO(a,(vSa(c)|0)+16|0);tS(a,966,(vSa(c)|0)+12|0);tS(a,966,(vSa(c)|0)+8|0);break}case 3:{tS(a,969,b);tS(a,966,(lSa(c)|0)+12|0);break}case 4:{tS(a,970,b);FO(a,($Ra(c)|0)+16|0);FO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,971,b);tS(a,966,(NRa(c)|0)+28|0);FO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,972,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,966,ODa(d,b)|0);c=b}}case 7:{tS(a,973,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,966,ODa(d,b)|0);c=b}}case 8:{tS(a,974,b);b=IQa(c)|0;tS(a,966,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,966,ODa(d,b)|0);c=b}}case 9:{tS(a,975,b);break}case 10:{tS(a,976,b);tS(a,966,(nRa(c)|0)+12|0);break}case 11:{tS(a,977,b);break}case 12:{tS(a,978,b);tS(a,966,($Qa(c)|0)+12|0);break}case 13:{tS(a,979,b);tS(a,966,(bSa(c)|0)+24|0);break}case 14:{tS(a,980,b);tS(a,966,(PRa(c)|0)+28|0);tS(a,966,(PRa(c)|0)+24|0);break}case 24:{tS(a,981,b);tS(a,966,(bRa(c)|0)+24|0);tS(a,966,(bRa(c)|0)+20|0);break}case 25:{tS(a,982,b);tS(a,966,(wQa(c)|0)+24|0);tS(a,966,(wQa(c)|0)+20|0);tS(a,966,(wQa(c)|0)+16|0);break}case 26:{tS(a,983,b);tS(a,966,(QQa(c)|0)+20|0);tS(a,966,(QQa(c)|0)+16|0);tS(a,966,(QQa(c)|0)+12|0);break}case 27:{tS(a,984,b);tS(a,966,(PQa(c)|0)+16|0);tS(a,966,(PQa(c)|0)+12|0);break}case 15:{tS(a,985,b);break}case 16:{tS(a,986,b);tS(a,966,(ORa(c)|0)+12|0);break}case 17:{tS(a,987,b);tS(a,966,(FRa(c)|0)+16|0);tS(a,966,(FRa(c)|0)+12|0);break}case 18:{tS(a,988,b);tS(a,966,(DRa(c)|0)+16|0);tS(a,966,(DRa(c)|0)+12|0);tS(a,966,(DRa(c)|0)+8|0);break}case 19:{tS(a,989,b);tS(a,966,(dSa(c)|0)+8|0);break}case 20:{tS(a,990,b);FO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,991,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,966,ODa(d,b)|0);c=b}}case 22:{tS(a,992,b);break}case 23:{tS(a,993,b);break}default:hb()}while(0);return}function Pe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,747,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,746,ODa(d,b)|0);c=b}}case 2:{tS(a,748,b);GO(a,(vSa(c)|0)+16|0);tS(a,746,(vSa(c)|0)+12|0);tS(a,746,(vSa(c)|0)+8|0);break}case 3:{tS(a,749,b);tS(a,746,(lSa(c)|0)+12|0);break}case 4:{tS(a,750,b);GO(a,($Ra(c)|0)+16|0);GO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,751,b);tS(a,746,(NRa(c)|0)+28|0);GO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,752,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,746,ODa(d,b)|0);c=b}}case 7:{tS(a,753,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,746,ODa(d,b)|0);c=b}}case 8:{tS(a,754,b);b=IQa(c)|0;tS(a,746,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,746,ODa(d,b)|0);c=b}}case 9:{tS(a,755,b);break}case 10:{tS(a,756,b);tS(a,746,(nRa(c)|0)+12|0);break}case 11:{tS(a,757,b);break}case 12:{tS(a,758,b);tS(a,746,($Qa(c)|0)+12|0);break}case 13:{tS(a,759,b);tS(a,746,(bSa(c)|0)+24|0);break}case 14:{tS(a,760,b);tS(a,746,(PRa(c)|0)+28|0);tS(a,746,(PRa(c)|0)+24|0);break}case 24:{tS(a,761,b);tS(a,746,(bRa(c)|0)+24|0);tS(a,746,(bRa(c)|0)+20|0);break}case 25:{tS(a,762,b);tS(a,746,(wQa(c)|0)+24|0);tS(a,746,(wQa(c)|0)+20|0);tS(a,746,(wQa(c)|0)+16|0);break}case 26:{tS(a,763,b);tS(a,746,(QQa(c)|0)+20|0);tS(a,746,(QQa(c)|0)+16|0);tS(a,746,(QQa(c)|0)+12|0);break}case 27:{tS(a,764,b);tS(a,746,(PQa(c)|0)+16|0);tS(a,746,(PQa(c)|0)+12|0);break}case 15:{tS(a,765,b);break}case 16:{tS(a,766,b);tS(a,746,(ORa(c)|0)+12|0);break}case 17:{tS(a,767,b);tS(a,746,(FRa(c)|0)+16|0);tS(a,746,(FRa(c)|0)+12|0);break}case 18:{tS(a,768,b);tS(a,746,(DRa(c)|0)+16|0);tS(a,746,(DRa(c)|0)+12|0);tS(a,746,(DRa(c)|0)+8|0);break}case 19:{tS(a,769,b);tS(a,746,(dSa(c)|0)+8|0);break}case 20:{tS(a,770,b);GO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,771,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,746,ODa(d,b)|0);c=b}}case 22:{tS(a,772,b);break}case 23:{tS(a,773,b);break}default:hb()}while(0);return}function Qe(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0.0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0;G=u;u=u+512|0;D=G;E=d+c|0;F=0-E|0;C=a+4|0;B=a+100|0;j=0;a:while(1){switch(b|0){case 46:{z=7;break a}case 48:break;default:{v=0;p=j;j=0;o=0;break a}}b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=eF(a)|0;j=1}if((z|0)==7){b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=eF(a)|0;if((b|0)==48){j=0;b=0;while(1){j=BOa(j|0,b|0,-1,-1)|0;o=I;b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=eF(a)|0;if((b|0)==48)b=o;else{v=1;p=1;break}}}else{v=1;p=j;j=0;o=0}}f[D>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){A=D+496|0;w=0;l=0;s=0;x=v;y=p;z=n;p=0;n=0;c:while(1){do if(m)if(!x){x=1;j=p;o=n}else break c;else{p=BOa(p|0,n|0,1,0)|0;n=I;v=(b|0)!=48;if((l|0)>=125){if(!v)break;f[A>>2]=f[A>>2]|1;break}m=D+(l<<2)|0;if(!w)b=z;else b=b+-48+((f[m>>2]|0)*10|0)|0;f[m>>2]=b;w=w+1|0;y=(w|0)==9;w=y?0:w;l=l+(y&1)|0;s=v?p:s;y=1}while(0);b=f[C>>2]|0;if(b>>>0<(f[B>>2]|0)>>>0){f[C>>2]=b+1;b=h[b>>0]|0}else b=eF(a)|0;z=b+-48|0;m=(b|0)==46;if(!(m|z>>>0<10)){v=x;m=y;z=31;break b}}b=w;m=(y|0)!=0;z=39}else{w=0;l=0;s=0;m=p;p=0;n=0;z=31}while(0);do if((z|0)==31){A=(v|0)==0;j=A?p:j;o=A?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=w;z=39;break}else{b=w;z=41;break}m=so(a,g)|0;b=I;if((m|0)==0&(b|0)==-2147483648){if(!g){zna(a,0);i=0.0;break}if(!(f[B>>2]|0)){m=0;b=0}else{f[C>>2]=(f[C>>2]|0)+-1;m=0;b=0}}j=BOa(m|0,b|0,j|0,o|0)|0;b=w;o=I;z=43}while(0);if((z|0)==39)if(f[B>>2]|0){f[C>>2]=(f[C>>2]|0)+-1;if(m)z=43;else z=42}else z=41;if((z|0)==41)if(m)z=43;else z=42;do if((z|0)==42){f[33448]=22;zna(a,0);i=0.0}else if((z|0)==43){m=f[D>>2]|0;if(!m){i=+(e|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((j|0)==(p|0)&(o|0)==(n|0))?(c|0)>30|(m>>>c|0)==0:0){i=+(e|0)*+(m>>>0);break}a=(d|0)/-2|0;C=((a|0)<0)<<31>>31;if((o|0)>(C|0)|(o|0)==(C|0)&j>>>0>a>>>0){f[33448]=34;i=+(e|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=d+-106|0;C=((a|0)<0)<<31>>31;if((o|0)<(C|0)|(o|0)==(C|0)&j>>>0>>0){f[33448]=34;i=+(e|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=D+(l<<2)|0;m=f[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}f[n>>2]=m}l=l+1|0}if((s|0)<9?(s|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(e|0)*+((f[D>>2]|0)>>>0);break}if((j|0)<9){i=+(e|0)*+((f[D>>2]|0)>>>0)/+(f[28016+(8-j<<2)>>2]|0);break}a=c+27+(X(j,-3)|0)|0;b=f[D>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(e|0)*+(b>>>0)*+(f[28016+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)m=0;else{s=(j|0)>-1?b:b+9|0;o=f[28016+(8-s<<2)>>2]|0;if(l){p=1e9/(o|0)|0;n=0;m=0;b=0;do{B=D+(b<<2)|0;C=f[B>>2]|0;a=(C>>>0)/(o>>>0)|0;C=C-(X(a,o)|0)|0;a=a+n|0;f[B>>2]=a;n=X(p,C)|0;a=(b|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;b=b+1|0}while((b|0)!=(l|0));if(!n)b=l;else{f[D+(l<<2)>>2]=n;b=l+1|0}}else{m=0;b=0}l=b;j=9-s+j|0}b=0;d:while(1){v=(j|0)<18;w=(j|0)==18;x=D+(m<<2)|0;while(1){if(!v){if(!w)break d;if((f[x>>2]|0)>>>0>=9007199){j=18;break d}}n=0;y=l;l=l+127|0;while(1){p=l&127;o=D+(p<<2)|0;l=mMa(f[o>>2]|0,0,29)|0;l=BOa(l|0,I|0,n|0,0)|0;n=I;if(n>>>0>0|(n|0)==0&l>>>0>1e9){s=yYa(l|0,n|0,1e9,0)|0;a=GBa(s|0,I|0,-1e9,-1)|0;l=BOa(l|0,n|0,a|0,I|0)|0}else s=0;f[o>>2]=l;a=(p|0)==(m|0);o=(p|0)!=(y+127&127|0)|a?y:(l|0)==0?p:y;if(a)break;else{n=s;y=o;l=p+-1|0}}b=b+-29|0;if(!s)l=y;else break}m=m+127&127;l=o+127&127;n=D+((o+126&127)<<2)|0;if((m|0)==(o|0))f[n>>2]=f[n>>2]|f[D+(l<<2)>>2];else l=y;f[D+(m<<2)>>2]=s;j=j+9|0}e:while(1){w=l+1&127;x=D+((l+127&127)<<2)|0;while(1){p=(j|0)==18;v=(j|0)>27?9:1;y=m;while(1){o=0;while(1){m=o+y&127;if((m|0)==(l|0)){z=92;break}m=f[D+(m<<2)>>2]|0;n=f[46824+(o<<2)>>2]|0;if(m>>>0>>0){z=92;break}if(m>>>0>n>>>0)break;if((o+1|0)>>>0<2)o=1;else{z=92;break}}if((z|0)==92?(z=0,p):0)break e;b=v+b|0;if((y|0)==(l|0))y=l;else break}p=(1<>>v;o=0;m=y;n=y;do{B=D+(n<<2)|0;C=f[B>>2]|0;a=(C>>>v)+o|0;f[B>>2]=a;o=X(C&p,s)|0;a=(n|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;n=n+1&127}while((n|0)!=(l|0));if(o|0){if((w|0)!=(m|0))break;f[x>>2]=f[x>>2]|1}}f[D+(l<<2)>>2]=o;l=w}i=0.0;j=l;m=0;do{n=m+y&127;l=j+1&127;if((n|0)==(j|0)){f[D+(l+-1<<2)>>2]=0;j=l}i=i*1.0e9+ +((f[D+(n<<2)>>2]|0)>>>0);m=m+1|0}while((m|0)!=2);t=+(e|0);k=i*t;n=b+53|0;o=n-d|0;p=(o|0)<(c|0);m=p?((o|0)>0?o:0):c;if((m|0)<53){H=+Iab(+_U(1.0,105-m|0),k);q=+ebb(k,+_U(1.0,53-m|0));r=H;i=q;q=H+(k-q)}else{r=0.0;i=0.0;q=k}l=y+2&127;if((l|0)!=(j|0)){l=f[D+(l<<2)>>2]|0;do if(l>>>0>=5e8){if((l|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(j|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((l|0)==0?(y+3&127|0)==(j|0):0)break;i=t*.25+i}while(0);if((53-m|0)>1?!(+ebb(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=q+k-r;do if((n&2147483647|0)>(-2-E|0)){E=!(+K(+i)>=9007199254740992.0);b=b+((E^1)&1)|0;i=E?i:i*.5;if((b+50|0)<=(F|0)?!(k!=0.0&(p&((m|0)!=(o|0)|E))):0)break;f[33448]=34}while(0);i=+Pab(i,b)}while(0);u=G;return +i}function Re(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1930,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1929,ODa(d,b)|0);c=b}}case 2:{tS(a,1931,b);YO(a,(vSa(c)|0)+16|0);tS(a,1929,(vSa(c)|0)+12|0);tS(a,1929,(vSa(c)|0)+8|0);break}case 3:{tS(a,1932,b);tS(a,1929,(lSa(c)|0)+12|0);break}case 4:{tS(a,1933,b);YO(a,($Ra(c)|0)+16|0);YO(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1934,b);tS(a,1929,(NRa(c)|0)+28|0);YO(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1935,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1929,ODa(d,b)|0);c=b}}case 7:{tS(a,1936,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1929,ODa(d,b)|0);c=b}}case 8:{tS(a,1937,b);b=IQa(c)|0;tS(a,1929,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1929,ODa(d,b)|0);c=b}}case 9:{tS(a,1938,b);break}case 10:{tS(a,1939,b);tS(a,1929,(nRa(c)|0)+12|0);break}case 11:{tS(a,1940,b);break}case 12:{tS(a,1941,b);tS(a,1929,($Qa(c)|0)+12|0);break}case 13:{tS(a,1942,b);tS(a,1929,(bSa(c)|0)+24|0);break}case 14:{tS(a,1943,b);tS(a,1929,(PRa(c)|0)+28|0);tS(a,1929,(PRa(c)|0)+24|0);break}case 24:{tS(a,1944,b);tS(a,1929,(bRa(c)|0)+24|0);tS(a,1929,(bRa(c)|0)+20|0);break}case 25:{tS(a,1945,b);tS(a,1929,(wQa(c)|0)+24|0);tS(a,1929,(wQa(c)|0)+20|0);tS(a,1929,(wQa(c)|0)+16|0);break}case 26:{tS(a,1946,b);tS(a,1929,(QQa(c)|0)+20|0);tS(a,1929,(QQa(c)|0)+16|0);tS(a,1929,(QQa(c)|0)+12|0);break}case 27:{tS(a,1947,b);tS(a,1929,(PQa(c)|0)+16|0);tS(a,1929,(PQa(c)|0)+12|0);break}case 15:{tS(a,1948,b);break}case 16:{tS(a,1949,b);tS(a,1929,(ORa(c)|0)+12|0);break}case 17:{tS(a,1950,b);tS(a,1929,(FRa(c)|0)+16|0);tS(a,1929,(FRa(c)|0)+12|0);break}case 18:{tS(a,1951,b);tS(a,1929,(DRa(c)|0)+16|0);tS(a,1929,(DRa(c)|0)+12|0);tS(a,1929,(DRa(c)|0)+8|0);break}case 19:{tS(a,1952,b);tS(a,1929,(dSa(c)|0)+8|0);break}case 20:{tS(a,1953,b);YO(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1954,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1929,ODa(d,b)|0);c=b}}case 22:{tS(a,1955,b);break}case 23:{tS(a,1956,b);break}default:hb()}while(0);return}function Se(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+64|0;l=n+40|0;g=n+24|0;h=n+12|0;k=n;a:do if((c-a|0)>2?(b[a>>0]|0)==85:0){b:do switch(b[a+1>>0]|0){case 116:{f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;qW(g,124075,j7a(124075)|0);RY(l,g);h=d+4|0;e=f[h>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);m=x;x=0;if(m&1){a=Ia()|0;OJa(l);MTa(g);break b}}else{CY(e,l);f[h>>2]=(f[h>>2]|0)+24}OJa(l);MTa(g);g=a+2|0;if((g|0)==(c|0)){g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;m=e+-1|0;OJa(g+(m*24|0)|0);e=m}f[h>>2]=g+-24;break a}if(((b[g>>0]|0)+-48|0)>>>0<10){e=a+3|0;while(1){if((e|0)==(c|0)){e=c;break}if(((b[e>>0]|0)+-48|0)>>>0>=10)break;e=e+1|0}Lq((f[h>>2]|0)+-24|0,g,e)}else e=g;CJ((f[h>>2]|0)+-24|0,39);if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){a=e+1|0;break a}g=f[h>>2]|0;e=0;while(1){if((e|0)==-1)break;m=e+-1|0;OJa(g+(m*24|0)|0);e=m}f[h>>2]=g+-24;break a}case 108:{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;qW(h,124084,j7a(124084)|0);RY(l,h);m=d+4|0;e=f[m>>2]|0;if(e>>>0>=(f[d+8>>2]|0)>>>0){x=0;ua(3197,d|0,l|0);j=x;x=0;if(j&1){a=Ia()|0;OJa(l);MTa(h);break b}}else{CY(e,l);f[m>>2]=(f[m>>2]|0)+24}OJa(l);MTa(h);g=a+2|0;c:do if((b[g>>0]|0)==118){CJ((f[m>>2]|0)+-24|0,41);e=a+3|0}else{e=Cc(g,c,d)|0;if((e|0)==(g|0)){g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;c=e+-1|0;OJa(g+(c*24|0)|0);e=c}f[m>>2]=g+-24;break a}g=f[m>>2]|0;if(((g-(f[d>>2]|0)|0)/24|0)>>>0<2)break a;hY(l,g+-24|0);h=f[m>>2]|0;g=0;while(1){if((g|0)==-1)break;j=g+-1|0;OJa(h+(j*24|0)|0);g=j}f[m>>2]=h+-24;i=l+11|0;g=b[i>>0]|0;o=g<<24>>24<0;j=l+4|0;x=0;ja(97,h+-48|0,(o?f[l>>2]|0:l)|0,(o?f[j>>2]|0:g&255)|0)|0;h=x;x=0;do if(!(h&1)){while(1){x=0;h=ja(100,e|0,c|0,d|0)|0;o=x;x=0;if(o&1){g=45;break}if((h|0)==(e|0)){g=64;break}e=f[m>>2]|0;if(((e-(f[d>>2]|0)|0)/24|0)>>>0<2){g=95;break}x=0;ua(3195,k|0,e+-24|0);o=x;x=0;if(o&1){g=63;break}if((b[i>>0]|0)<0){Z0a(f[l>>2]|0,0);f[j>>2]=0}else{Z0a(l,0);b[i>>0]=0}yv(l);f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];e=0;while(1){if((e|0)==3)break;f[k+(e<<2)>>2]=0;e=e+1|0}MTa(k);g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;OJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;o=b[i>>0]|0;if((o<<24>>24<0?f[j>>2]|0:o&255)|0){x=0;ia(216,g+-48|0,123496)|0;o=x;x=0;if(o&1){g=45;break}o=b[i>>0]|0;g=o<<24>>24<0;x=0;ja(97,(f[m>>2]|0)+-24|0,(g?f[l>>2]|0:l)|0,(g?f[j>>2]|0:o&255)|0)|0;o=x;x=0;if(o&1){g=45;break}}e=h}if((g|0)==45){a=Ia()|0;g=47;break}else if((g|0)==63){a=Ia()|0;break}else if((g|0)==64){x=0;ia(216,(f[m>>2]|0)+-24|0,123272)|0;o=x;x=0;if(o&1){g=46;break}MTa(l);break c}else if((g|0)==95){MTa(l);break a}}else g=46;while(0);if((g|0)==46){a=Ia()|0;g=47}MTa(l);break b}while(0);if((e|0)!=(c|0)?(b[e>>0]|0)==69:0){i=e+1|0;if((i|0)==(c|0)){g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;OJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;break a}if(((b[i>>0]|0)+-48|0)>>>0<10){e=e+2|0;while(1){if((e|0)==(c|0)){e=c;break}if(((b[e>>0]|0)+-48|0)>>>0>=10)break;e=e+1|0}g=(f[m>>2]|0)+-24|0;if((b[g+11>>0]|0)<0)h=f[g>>2]|0;else h=g;ao(g,h+7|0,i,e)|0}else e=i;if((e|0)!=(c|0)?(b[e>>0]|0)==95:0){a=e+1|0;break a}g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;OJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;break a}g=f[m>>2]|0;e=0;while(1){if((e|0)==-1)break;o=e+-1|0;OJa(g+(o*24|0)|0);e=o}f[m>>2]=g+-24;break a}default:break a}while(0);Ua(a|0)}while(0);u=n;return a|0}function Te(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2164,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2163,ODa(d,b)|0);c=b}}case 2:{tS(a,2165,b);iP(a,(vSa(c)|0)+16|0);tS(a,2163,(vSa(c)|0)+12|0);tS(a,2163,(vSa(c)|0)+8|0);break}case 3:{tS(a,2166,b);tS(a,2163,(lSa(c)|0)+12|0);break}case 4:{tS(a,2167,b);iP(a,($Ra(c)|0)+16|0);iP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2168,b);tS(a,2163,(NRa(c)|0)+28|0);iP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2169,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2163,ODa(d,b)|0);c=b}}case 7:{tS(a,2170,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2163,ODa(d,b)|0);c=b}}case 8:{tS(a,2171,b);b=IQa(c)|0;tS(a,2163,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2163,ODa(d,b)|0);c=b}}case 9:{tS(a,2172,b);break}case 10:{tS(a,2173,b);tS(a,2163,(nRa(c)|0)+12|0);break}case 11:{tS(a,2174,b);break}case 12:{tS(a,2175,b);tS(a,2163,($Qa(c)|0)+12|0);break}case 13:{tS(a,2176,b);tS(a,2163,(bSa(c)|0)+24|0);break}case 14:{tS(a,2177,b);tS(a,2163,(PRa(c)|0)+28|0);tS(a,2163,(PRa(c)|0)+24|0);break}case 24:{tS(a,2178,b);tS(a,2163,(bRa(c)|0)+24|0);tS(a,2163,(bRa(c)|0)+20|0);break}case 25:{tS(a,2179,b);tS(a,2163,(wQa(c)|0)+24|0);tS(a,2163,(wQa(c)|0)+20|0);tS(a,2163,(wQa(c)|0)+16|0);break}case 26:{tS(a,2180,b);tS(a,2163,(QQa(c)|0)+20|0);tS(a,2163,(QQa(c)|0)+16|0);tS(a,2163,(QQa(c)|0)+12|0);break}case 27:{tS(a,2181,b);tS(a,2163,(PQa(c)|0)+16|0);tS(a,2163,(PQa(c)|0)+12|0);break}case 15:{tS(a,2182,b);break}case 16:{tS(a,2183,b);tS(a,2163,(ORa(c)|0)+12|0);break}case 17:{tS(a,2184,b);tS(a,2163,(FRa(c)|0)+16|0);tS(a,2163,(FRa(c)|0)+12|0);break}case 18:{tS(a,2185,b);tS(a,2163,(DRa(c)|0)+16|0);tS(a,2163,(DRa(c)|0)+12|0);tS(a,2163,(DRa(c)|0)+8|0);break}case 19:{tS(a,2186,b);tS(a,2163,(dSa(c)|0)+8|0);break}case 20:{tS(a,2187,b);iP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2188,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2163,ODa(d,b)|0);c=b}}case 22:{tS(a,2189,b);break}case 23:{tS(a,2190,b);break}default:hb()}while(0);return}function Ue(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2595,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2594,ODa(d,b)|0);c=b}}case 2:{tS(a,2596,b);pP(a,(vSa(c)|0)+16|0);tS(a,2594,(vSa(c)|0)+12|0);tS(a,2594,(vSa(c)|0)+8|0);break}case 3:{tS(a,2597,b);tS(a,2594,(lSa(c)|0)+12|0);break}case 4:{tS(a,2598,b);pP(a,($Ra(c)|0)+16|0);pP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2599,b);tS(a,2594,(NRa(c)|0)+28|0);pP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2600,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2594,ODa(d,b)|0);c=b}}case 7:{tS(a,2601,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2594,ODa(d,b)|0);c=b}}case 8:{tS(a,2602,b);b=IQa(c)|0;tS(a,2594,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2594,ODa(d,b)|0);c=b}}case 9:{tS(a,2603,b);break}case 10:{tS(a,2604,b);tS(a,2594,(nRa(c)|0)+12|0);break}case 11:{tS(a,2605,b);break}case 12:{tS(a,2606,b);tS(a,2594,($Qa(c)|0)+12|0);break}case 13:{tS(a,2607,b);tS(a,2594,(bSa(c)|0)+24|0);break}case 14:{tS(a,2608,b);tS(a,2594,(PRa(c)|0)+28|0);tS(a,2594,(PRa(c)|0)+24|0);break}case 24:{tS(a,2609,b);tS(a,2594,(bRa(c)|0)+24|0);tS(a,2594,(bRa(c)|0)+20|0);break}case 25:{tS(a,2610,b);tS(a,2594,(wQa(c)|0)+24|0);tS(a,2594,(wQa(c)|0)+20|0);tS(a,2594,(wQa(c)|0)+16|0);break}case 26:{tS(a,2611,b);tS(a,2594,(QQa(c)|0)+20|0);tS(a,2594,(QQa(c)|0)+16|0);tS(a,2594,(QQa(c)|0)+12|0);break}case 27:{tS(a,2612,b);tS(a,2594,(PQa(c)|0)+16|0);tS(a,2594,(PQa(c)|0)+12|0);break}case 15:{tS(a,2613,b);break}case 16:{tS(a,2614,b);tS(a,2594,(ORa(c)|0)+12|0);break}case 17:{tS(a,2615,b);tS(a,2594,(FRa(c)|0)+16|0);tS(a,2594,(FRa(c)|0)+12|0);break}case 18:{tS(a,2616,b);tS(a,2594,(DRa(c)|0)+16|0);tS(a,2594,(DRa(c)|0)+12|0);tS(a,2594,(DRa(c)|0)+8|0);break}case 19:{tS(a,2617,b);tS(a,2594,(dSa(c)|0)+8|0);break}case 20:{tS(a,2618,b);pP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2619,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2594,ODa(d,b)|0);c=b}}case 22:{tS(a,2620,b);break}case 23:{tS(a,2621,b);break}default:hb()}while(0);return}function Ve(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1690,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1689,ODa(d,b)|0);c=b}}case 2:{tS(a,1691,b);yP(a,(vSa(c)|0)+16|0);tS(a,1689,(vSa(c)|0)+12|0);tS(a,1689,(vSa(c)|0)+8|0);break}case 3:{tS(a,1692,b);tS(a,1689,(lSa(c)|0)+12|0);break}case 4:{tS(a,1693,b);yP(a,($Ra(c)|0)+16|0);yP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1694,b);tS(a,1689,(NRa(c)|0)+28|0);yP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1695,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1689,ODa(d,b)|0);c=b}}case 7:{tS(a,1696,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1689,ODa(d,b)|0);c=b}}case 8:{tS(a,1697,b);b=IQa(c)|0;tS(a,1689,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1689,ODa(d,b)|0);c=b}}case 9:{tS(a,1698,b);break}case 10:{tS(a,1699,b);tS(a,1689,(nRa(c)|0)+12|0);break}case 11:{tS(a,1700,b);break}case 12:{tS(a,1701,b);tS(a,1689,($Qa(c)|0)+12|0);break}case 13:{tS(a,1702,b);tS(a,1689,(bSa(c)|0)+24|0);break}case 14:{tS(a,1703,b);tS(a,1689,(PRa(c)|0)+28|0);tS(a,1689,(PRa(c)|0)+24|0);break}case 24:{tS(a,1704,b);tS(a,1689,(bRa(c)|0)+24|0);tS(a,1689,(bRa(c)|0)+20|0);break}case 25:{tS(a,1705,b);tS(a,1689,(wQa(c)|0)+24|0);tS(a,1689,(wQa(c)|0)+20|0);tS(a,1689,(wQa(c)|0)+16|0);break}case 26:{tS(a,1706,b);tS(a,1689,(QQa(c)|0)+20|0);tS(a,1689,(QQa(c)|0)+16|0);tS(a,1689,(QQa(c)|0)+12|0);break}case 27:{tS(a,1707,b);tS(a,1689,(PQa(c)|0)+16|0);tS(a,1689,(PQa(c)|0)+12|0);break}case 15:{tS(a,1708,b);break}case 16:{tS(a,1709,b);tS(a,1689,(ORa(c)|0)+12|0);break}case 17:{tS(a,1710,b);tS(a,1689,(FRa(c)|0)+16|0);tS(a,1689,(FRa(c)|0)+12|0);break}case 18:{tS(a,1711,b);tS(a,1689,(DRa(c)|0)+16|0);tS(a,1689,(DRa(c)|0)+12|0);tS(a,1689,(DRa(c)|0)+8|0);break}case 19:{tS(a,1712,b);tS(a,1689,(dSa(c)|0)+8|0);break}case 20:{tS(a,1713,b);yP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1714,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1689,ODa(d,b)|0);c=b}}case 22:{tS(a,1715,b);break}case 23:{tS(a,1716,b);break}default:hb()}while(0);return}function We(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1986,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1985,ODa(d,b)|0);c=b}}case 2:{tS(a,1987,b);AP(a,(vSa(c)|0)+16|0);tS(a,1985,(vSa(c)|0)+12|0);tS(a,1985,(vSa(c)|0)+8|0);break}case 3:{tS(a,1988,b);tS(a,1985,(lSa(c)|0)+12|0);break}case 4:{tS(a,1989,b);AP(a,($Ra(c)|0)+16|0);AP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1990,b);tS(a,1985,(NRa(c)|0)+28|0);AP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1991,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1985,ODa(d,b)|0);c=b}}case 7:{tS(a,1992,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1985,ODa(d,b)|0);c=b}}case 8:{tS(a,1993,b);b=IQa(c)|0;tS(a,1985,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1985,ODa(d,b)|0);c=b}}case 9:{tS(a,1994,b);break}case 10:{tS(a,1995,b);tS(a,1985,(nRa(c)|0)+12|0);break}case 11:{tS(a,1996,b);break}case 12:{tS(a,1997,b);tS(a,1985,($Qa(c)|0)+12|0);break}case 13:{tS(a,1998,b);tS(a,1985,(bSa(c)|0)+24|0);break}case 14:{tS(a,1999,b);tS(a,1985,(PRa(c)|0)+28|0);tS(a,1985,(PRa(c)|0)+24|0);break}case 24:{tS(a,2e3,b);tS(a,1985,(bRa(c)|0)+24|0);tS(a,1985,(bRa(c)|0)+20|0);break}case 25:{tS(a,2001,b);tS(a,1985,(wQa(c)|0)+24|0);tS(a,1985,(wQa(c)|0)+20|0);tS(a,1985,(wQa(c)|0)+16|0);break}case 26:{tS(a,2002,b);tS(a,1985,(QQa(c)|0)+20|0);tS(a,1985,(QQa(c)|0)+16|0);tS(a,1985,(QQa(c)|0)+12|0);break}case 27:{tS(a,2003,b);tS(a,1985,(PQa(c)|0)+16|0);tS(a,1985,(PQa(c)|0)+12|0);break}case 15:{tS(a,2004,b);break}case 16:{tS(a,2005,b);tS(a,1985,(ORa(c)|0)+12|0);break}case 17:{tS(a,2006,b);tS(a,1985,(FRa(c)|0)+16|0);tS(a,1985,(FRa(c)|0)+12|0);break}case 18:{tS(a,2007,b);tS(a,1985,(DRa(c)|0)+16|0);tS(a,1985,(DRa(c)|0)+12|0);tS(a,1985,(DRa(c)|0)+8|0);break}case 19:{tS(a,2008,b);tS(a,1985,(dSa(c)|0)+8|0);break}case 20:{tS(a,2009,b);AP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2010,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1985,ODa(d,b)|0);c=b}}case 22:{tS(a,2011,b);break}case 23:{tS(a,2012,b);break}default:hb()}while(0);return}function Xe(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1720,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1717,ODa(d,b)|0);c=b}}case 2:{tS(a,1721,b);DP(a,(vSa(c)|0)+16|0);tS(a,1717,(vSa(c)|0)+12|0);tS(a,1717,(vSa(c)|0)+8|0);break}case 3:{tS(a,1722,b);tS(a,1717,(lSa(c)|0)+12|0);break}case 4:{tS(a,1723,b);DP(a,($Ra(c)|0)+16|0);DP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1724,b);tS(a,1717,(NRa(c)|0)+28|0);DP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1725,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1717,ODa(d,b)|0);c=b}}case 7:{tS(a,1726,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1717,ODa(d,b)|0);c=b}}case 8:{tS(a,1727,b);b=IQa(c)|0;tS(a,1717,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1717,ODa(d,b)|0);c=b}}case 9:{tS(a,1728,b);break}case 10:{tS(a,1729,b);tS(a,1717,(nRa(c)|0)+12|0);break}case 11:{tS(a,1730,b);break}case 12:{tS(a,1731,b);tS(a,1717,($Qa(c)|0)+12|0);break}case 13:{tS(a,1732,b);tS(a,1717,(bSa(c)|0)+24|0);break}case 14:{tS(a,1733,b);tS(a,1717,(PRa(c)|0)+28|0);tS(a,1717,(PRa(c)|0)+24|0);break}case 24:{tS(a,1734,b);tS(a,1717,(bRa(c)|0)+24|0);tS(a,1717,(bRa(c)|0)+20|0);break}case 25:{tS(a,1735,b);tS(a,1717,(wQa(c)|0)+24|0);tS(a,1717,(wQa(c)|0)+20|0);tS(a,1717,(wQa(c)|0)+16|0);break}case 26:{tS(a,1736,b);tS(a,1717,(QQa(c)|0)+20|0);tS(a,1717,(QQa(c)|0)+16|0);tS(a,1717,(QQa(c)|0)+12|0);break}case 27:{tS(a,1737,b);tS(a,1717,(PQa(c)|0)+16|0);tS(a,1717,(PQa(c)|0)+12|0);break}case 15:{tS(a,1738,b);break}case 16:{tS(a,1739,b);tS(a,1717,(ORa(c)|0)+12|0);break}case 17:{tS(a,1740,b);tS(a,1717,(FRa(c)|0)+16|0);tS(a,1717,(FRa(c)|0)+12|0);break}case 18:{tS(a,1741,b);tS(a,1717,(DRa(c)|0)+16|0);tS(a,1717,(DRa(c)|0)+12|0);tS(a,1717,(DRa(c)|0)+8|0);break}case 19:{tS(a,1742,b);tS(a,1717,(dSa(c)|0)+8|0);break}case 20:{tS(a,1743,b);DP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1744,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1717,ODa(d,b)|0);c=b}}case 22:{tS(a,1745,b);break}case 23:{tS(a,1746,b);break}default:hb()}while(0);return}function Ye(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,352,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,351,ODa(d,b)|0);c=b}}case 2:{tS(a,353,b);zP(a,(vSa(c)|0)+16|0);tS(a,351,(vSa(c)|0)+12|0);tS(a,351,(vSa(c)|0)+8|0);break}case 3:{tS(a,354,b);tS(a,351,(lSa(c)|0)+12|0);break}case 4:{tS(a,355,b);zP(a,($Ra(c)|0)+16|0);zP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,356,b);tS(a,351,(NRa(c)|0)+28|0);zP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,357,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,351,ODa(d,b)|0);c=b}}case 7:{tS(a,358,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,351,ODa(d,b)|0);c=b}}case 8:{tS(a,359,b);b=IQa(c)|0;tS(a,351,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,351,ODa(d,b)|0);c=b}}case 9:{tS(a,360,b);break}case 10:{tS(a,361,b);tS(a,351,(nRa(c)|0)+12|0);break}case 11:{tS(a,362,b);break}case 12:{tS(a,363,b);tS(a,351,($Qa(c)|0)+12|0);break}case 13:{tS(a,364,b);tS(a,351,(bSa(c)|0)+24|0);break}case 14:{tS(a,365,b);tS(a,351,(PRa(c)|0)+28|0);tS(a,351,(PRa(c)|0)+24|0);break}case 24:{tS(a,366,b);tS(a,351,(bRa(c)|0)+24|0);tS(a,351,(bRa(c)|0)+20|0);break}case 25:{tS(a,367,b);tS(a,351,(wQa(c)|0)+24|0);tS(a,351,(wQa(c)|0)+20|0);tS(a,351,(wQa(c)|0)+16|0);break}case 26:{tS(a,368,b);tS(a,351,(QQa(c)|0)+20|0);tS(a,351,(QQa(c)|0)+16|0);tS(a,351,(QQa(c)|0)+12|0);break}case 27:{tS(a,369,b);tS(a,351,(PQa(c)|0)+16|0);tS(a,351,(PQa(c)|0)+12|0);break}case 15:{tS(a,370,b);break}case 16:{tS(a,371,b);tS(a,351,(ORa(c)|0)+12|0);break}case 17:{tS(a,372,b);tS(a,351,(FRa(c)|0)+16|0);tS(a,351,(FRa(c)|0)+12|0);break}case 18:{tS(a,373,b);tS(a,351,(DRa(c)|0)+16|0);tS(a,351,(DRa(c)|0)+12|0);tS(a,351,(DRa(c)|0)+8|0);break}case 19:{tS(a,374,b);tS(a,351,(dSa(c)|0)+8|0);break}case 20:{tS(a,375,b);zP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,376,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,351,ODa(d,b)|0);c=b}}case 22:{tS(a,377,b);break}case 23:{tS(a,378,b);break}default:hb()}while(0);return}function Ze(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1513,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1512,ODa(d,b)|0);c=b}}case 2:{tS(a,1514,b);WP(a,(vSa(c)|0)+16|0);tS(a,1512,(vSa(c)|0)+12|0);tS(a,1512,(vSa(c)|0)+8|0);break}case 3:{tS(a,1515,b);tS(a,1512,(lSa(c)|0)+12|0);break}case 4:{tS(a,1516,b);WP(a,($Ra(c)|0)+16|0);WP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1517,b);tS(a,1512,(NRa(c)|0)+28|0);WP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1518,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1512,ODa(d,b)|0);c=b}}case 7:{tS(a,1519,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1512,ODa(d,b)|0);c=b}}case 8:{tS(a,1520,b);b=IQa(c)|0;tS(a,1512,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1512,ODa(d,b)|0);c=b}}case 9:{tS(a,1521,b);break}case 10:{tS(a,1522,b);tS(a,1512,(nRa(c)|0)+12|0);break}case 11:{tS(a,1523,b);break}case 12:{tS(a,1524,b);tS(a,1512,($Qa(c)|0)+12|0);break}case 13:{tS(a,1525,b);tS(a,1512,(bSa(c)|0)+24|0);break}case 14:{tS(a,1526,b);tS(a,1512,(PRa(c)|0)+28|0);tS(a,1512,(PRa(c)|0)+24|0);break}case 24:{tS(a,1527,b);tS(a,1512,(bRa(c)|0)+24|0);tS(a,1512,(bRa(c)|0)+20|0);break}case 25:{tS(a,1528,b);tS(a,1512,(wQa(c)|0)+24|0);tS(a,1512,(wQa(c)|0)+20|0);tS(a,1512,(wQa(c)|0)+16|0);break}case 26:{tS(a,1529,b);tS(a,1512,(QQa(c)|0)+20|0);tS(a,1512,(QQa(c)|0)+16|0);tS(a,1512,(QQa(c)|0)+12|0);break}case 27:{tS(a,1530,b);tS(a,1512,(PQa(c)|0)+16|0);tS(a,1512,(PQa(c)|0)+12|0);break}case 15:{tS(a,1531,b);break}case 16:{tS(a,1532,b);tS(a,1512,(ORa(c)|0)+12|0);break}case 17:{tS(a,1533,b);tS(a,1512,(FRa(c)|0)+16|0);tS(a,1512,(FRa(c)|0)+12|0);break}case 18:{tS(a,1534,b);tS(a,1512,(DRa(c)|0)+16|0);tS(a,1512,(DRa(c)|0)+12|0);tS(a,1512,(DRa(c)|0)+8|0);break}case 19:{tS(a,1535,b);tS(a,1512,(dSa(c)|0)+8|0);break}case 20:{tS(a,1536,b);WP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1537,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1512,ODa(d,b)|0);c=b}}case 22:{tS(a,1538,b);break}case 23:{tS(a,1539,b);break}default:hb()}while(0);return}function _e(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1062,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1061,ODa(d,b)|0);c=b}}case 2:{tS(a,1063,b);YP(a,(vSa(c)|0)+16|0);tS(a,1061,(vSa(c)|0)+12|0);tS(a,1061,(vSa(c)|0)+8|0);break}case 3:{tS(a,1064,b);tS(a,1061,(lSa(c)|0)+12|0);break}case 4:{tS(a,1065,b);YP(a,($Ra(c)|0)+16|0);YP(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1066,b);tS(a,1061,(NRa(c)|0)+28|0);YP(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1067,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1061,ODa(d,b)|0);c=b}}case 7:{tS(a,1068,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1061,ODa(d,b)|0);c=b}}case 8:{tS(a,1069,b);b=IQa(c)|0;tS(a,1061,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1061,ODa(d,b)|0);c=b}}case 9:{tS(a,1070,b);break}case 10:{tS(a,1071,b);tS(a,1061,(nRa(c)|0)+12|0);break}case 11:{tS(a,1072,b);break}case 12:{tS(a,1073,b);tS(a,1061,($Qa(c)|0)+12|0);break}case 13:{tS(a,1074,b);tS(a,1061,(bSa(c)|0)+24|0);break}case 14:{tS(a,1075,b);tS(a,1061,(PRa(c)|0)+28|0);tS(a,1061,(PRa(c)|0)+24|0);break}case 24:{tS(a,1076,b);tS(a,1061,(bRa(c)|0)+24|0);tS(a,1061,(bRa(c)|0)+20|0);break}case 25:{tS(a,1077,b);tS(a,1061,(wQa(c)|0)+24|0);tS(a,1061,(wQa(c)|0)+20|0);tS(a,1061,(wQa(c)|0)+16|0);break}case 26:{tS(a,1078,b);tS(a,1061,(QQa(c)|0)+20|0);tS(a,1061,(QQa(c)|0)+16|0);tS(a,1061,(QQa(c)|0)+12|0);break}case 27:{tS(a,1079,b);tS(a,1061,(PQa(c)|0)+16|0);tS(a,1061,(PQa(c)|0)+12|0);break}case 15:{tS(a,1080,b);break}case 16:{tS(a,1081,b);tS(a,1061,(ORa(c)|0)+12|0);break}case 17:{tS(a,1082,b);tS(a,1061,(FRa(c)|0)+16|0);tS(a,1061,(FRa(c)|0)+12|0);break}case 18:{tS(a,1083,b);tS(a,1061,(DRa(c)|0)+16|0);tS(a,1061,(DRa(c)|0)+12|0);tS(a,1061,(DRa(c)|0)+8|0);break}case 19:{tS(a,1084,b);tS(a,1061,(dSa(c)|0)+8|0);break}case 20:{tS(a,1085,b);YP(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1086,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1061,ODa(d,b)|0);c=b}}case 22:{tS(a,1087,b);break}case 23:{tS(a,1088,b);break}default:hb()}while(0);return}function $e(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,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,v=0,w=0,y=0,z=0,A=0,B=0;A=u;u=u+48|0;B=A+36|0;y=A+32|0;j=A+24|0;k=A+20|0;m=A+28|0;l=A;p=A+16|0;s=A+12|0;t=A+8|0;z=A+4|0;g=a+40|0;h=a+44|0;b=a+52|0;c=0;while(1){f[B>>2]=c;d=f[g>>2]|0;if(c>>>0>=(BZa(d)|0)>>>0)break;v=f[b>>2]|0;c=i_(h,B)|0;f[c>>2]=v;c=(f[B>>2]|0)+1|0}c=f[d+24>>2]|0;v=a+12|0;b=f[d+20>>2]|0;while(1){if((b|0)==(c|0))break;f[B>>2]=f[b>>2];i=aZ(v,B)|0;f[i>>2]=(f[i>>2]|0)+1;b=b+4|0}DUa(B);c=f[g>>2]|0;b=BZa(c)|0;a:while(1){f[y>>2]=b;if(b>>>0>=(kQa(c)|0)>>>0){i=9;break}d=BZa(c)|0;x=0;b=ia(80,c|0,b|0)|0;i=x;x=0;if(i&1){i=16;break}f[j>>2]=b;x=0;b=ia(137,B|0,j|0)|0;i=x;x=0;if(i&1){i=16;break}f[b>>2]=(f[b>>2]|0)+1;do if((f[j>>2]|0)==1){f[k>>2]=1;x=0;b=ia(136,B|0,k|0)|0;i=x;x=0;if(i&1){i=18;break a}b=f[b>>2]|0;x=0;c=ia(138,h|0,y|0)|0;i=x;x=0;if(i&1){i=18;break a}f[c>>2]=d+-1+b}else{f[k>>2]=1;x=0;b=ia(136,v|0,k|0)|0;i=x;x=0;if(i&1){i=24;break a}d=(f[b>>2]|0)+d|0;if((f[j>>2]|0)==2){f[k>>2]=2;x=0;b=ia(136,B|0,k|0)|0;i=x;x=0;if(i&1){i=25;break a}b=f[b>>2]|0;x=0;c=ia(138,h|0,y|0)|0;i=x;x=0;if(i&1){i=25;break a}f[c>>2]=d+-1+b;break}f[k>>2]=2;x=0;b=ia(136,v|0,k|0)|0;i=x;x=0;if(i&1){i=31;break a}e=(f[b>>2]|0)+d|0;if((f[j>>2]|0)==3){f[k>>2]=3;x=0;b=ia(136,B|0,k|0)|0;i=x;x=0;if(i&1){i=32;break a}b=f[b>>2]|0;x=0;c=ia(138,h|0,y|0)|0;i=x;x=0;if(i&1){i=32;break a}f[c>>2]=e+-1+b;break}f[k>>2]=3;x=0;b=ia(136,v|0,k|0)|0;i=x;x=0;if(i&1){i=38;break a}d=f[b>>2]|0;if((f[j>>2]|0)!=4){i=40;break a}f[k>>2]=4;x=0;b=ia(136,B|0,k|0)|0;i=x;x=0;if(i&1){i=39;break a}b=f[b>>2]|0;x=0;c=ia(138,h|0,y|0)|0;i=x;x=0;if(i&1){i=39;break a}f[c>>2]=e+-1+d+b}while(0);b=(f[y>>2]|0)+1|0;c=f[g>>2]|0}b:switch(i|0){case 9:{h=a+28|0;g=f[h>>2]|0;f[y>>2]=1;x=0;b=ia(136,v|0,y|0)|0;a=x;x=0;if(a&1)b=Ia()|0;else{e=f[b>>2]|0;f[j>>2]=2;x=0;b=ia(136,v|0,j|0)|0;j=x;x=0;if(j&1)b=Ia()|0;else{d=f[b>>2]|0;f[k>>2]=3;x=0;b=ia(136,v|0,k|0)|0;k=x;x=0;if(k&1)b=Ia()|0;else{c=f[b>>2]|0;f[l>>2]=4;x=0;b=ia(136,v|0,l|0)|0;l=x;x=0;if(!(l&1)?(n4a(m,((d|0)!=0&1)+((e|0)!=0&1)+((c|0)!=0&1)+((f[b>>2]|0)!=0&1)|0),x=0,ia(139,g|0,f[m>>2]|0)|0,m=x,x=0,!(m&1)):0){f[y>>2]=1;x=0;b=ia(136,v|0,y|0)|0;m=x;x=0;if(m&1){b=Ia()|0;break}do if(f[b>>2]|0){b=f[h>>2]|0;f[y>>2]=1;x=0;c=ia(136,v|0,y|0)|0;m=x;x=0;if(((!(m&1)?(n4a(p,f[c>>2]|0),x=0,n=ia(139,b|0,f[p>>2]|0)|0,p=x,x=0,!(p&1)):0)?(x=0,o=ga(287,1)|0,p=x,x=0,!(p&1)):0)?(x=0,ia(140,n|0,o|0)|0,p=x,x=0,!(p&1)):0)break;b=Ia()|0;break b}while(0);f[y>>2]=2;x=0;b=ia(136,v|0,y|0)|0;p=x;x=0;if(p&1){b=Ia()|0;break}do if(f[b>>2]|0){b=f[h>>2]|0;f[y>>2]=2;x=0;c=ia(136,v|0,y|0)|0;p=x;x=0;if(((!(p&1)?(n4a(s,f[c>>2]|0),x=0,q=ia(139,b|0,f[s>>2]|0)|0,s=x,x=0,!(s&1)):0)?(x=0,r=ga(287,2)|0,s=x,x=0,!(s&1)):0)?(x=0,ia(140,q|0,r|0)|0,s=x,x=0,!(s&1)):0)break;b=Ia()|0;break b}while(0);f[y>>2]=3;x=0;b=ia(136,v|0,y|0)|0;s=x;x=0;if(s&1){b=Ia()|0;break}c:do if(f[b>>2]|0){b=f[h>>2]|0;f[y>>2]=3;x=0;c=ia(136,v|0,y|0)|0;s=x;x=0;do if(!(s&1)?(n4a(t,f[c>>2]|0),x=0,w=ia(139,b|0,f[t>>2]|0)|0,t=x,x=0,!(t&1)):0){x=0;b=ga(287,3)|0;t=x;x=0;if(t&1)break;x=0;ia(140,w|0,b|0)|0;w=x;x=0;if(w&1)break;break c}while(0);b=Ia()|0;break b}while(0);f[y>>2]=4;x=0;b=ia(136,v|0,y|0)|0;w=x;x=0;if(w&1){b=Ia()|0;break}d:do if(f[b>>2]|0){c=f[h>>2]|0;f[y>>2]=4;x=0;b=ia(136,v|0,y|0)|0;y=x;x=0;do if(!(y&1)){n4a(z,f[b>>2]|0);x=0;b=ia(139,c|0,f[z>>2]|0)|0;z=x;x=0;if(z&1)break;x=0;c=ga(287,4)|0;z=x;x=0;if(z&1)break;x=0;ia(140,b|0,c|0)|0;z=x;x=0;if(z&1)break;break d}while(0);b=Ia()|0;break b}while(0);rIa(B);u=A;return}b=Ia()|0}}}break}case 16:{b=Ia()|0;i=17;break}case 18:{b=Ia()|0;i=42;break}case 24:{b=Ia()|0;i=42;break}case 25:{b=Ia()|0;i=42;break}case 31:{b=Ia()|0;i=42;break}case 32:{b=Ia()|0;i=42;break}case 38:{b=Ia()|0;i=42;break}case 39:{b=Ia()|0;i=42;break}case 40:{x=0;sa(5);x=0;b=Ia()|0;i=17;break}}if((i|0)==17)i=42;rIa(B);Ua(b|0)}function af(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1840,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1839,ODa(d,b)|0);c=b}}case 2:{tS(a,1841,b);dQ(a,(vSa(c)|0)+16|0);tS(a,1839,(vSa(c)|0)+12|0);tS(a,1839,(vSa(c)|0)+8|0);break}case 3:{tS(a,1842,b);tS(a,1839,(lSa(c)|0)+12|0);break}case 4:{tS(a,1843,b);dQ(a,($Ra(c)|0)+16|0);dQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1844,b);tS(a,1839,(NRa(c)|0)+28|0);dQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1845,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1839,ODa(d,b)|0);c=b}}case 7:{tS(a,1846,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1839,ODa(d,b)|0);c=b}}case 8:{tS(a,1847,b);b=IQa(c)|0;tS(a,1839,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1839,ODa(d,b)|0);c=b}}case 9:{tS(a,1848,b);break}case 10:{tS(a,1849,b);tS(a,1839,(nRa(c)|0)+12|0);break}case 11:{tS(a,1850,b);break}case 12:{tS(a,1851,b);tS(a,1839,($Qa(c)|0)+12|0);break}case 13:{tS(a,1852,b);tS(a,1839,(bSa(c)|0)+24|0);break}case 14:{tS(a,1853,b);tS(a,1839,(PRa(c)|0)+28|0);tS(a,1839,(PRa(c)|0)+24|0);break}case 24:{tS(a,1854,b);tS(a,1839,(bRa(c)|0)+24|0);tS(a,1839,(bRa(c)|0)+20|0);break}case 25:{tS(a,1855,b);tS(a,1839,(wQa(c)|0)+24|0);tS(a,1839,(wQa(c)|0)+20|0);tS(a,1839,(wQa(c)|0)+16|0);break}case 26:{tS(a,1856,b);tS(a,1839,(QQa(c)|0)+20|0);tS(a,1839,(QQa(c)|0)+16|0);tS(a,1839,(QQa(c)|0)+12|0);break}case 27:{tS(a,1857,b);tS(a,1839,(PQa(c)|0)+16|0);tS(a,1839,(PQa(c)|0)+12|0);break}case 15:{tS(a,1858,b);break}case 16:{tS(a,1859,b);tS(a,1839,(ORa(c)|0)+12|0);break}case 17:{tS(a,1860,b);tS(a,1839,(FRa(c)|0)+16|0);tS(a,1839,(FRa(c)|0)+12|0);break}case 18:{tS(a,1861,b);tS(a,1839,(DRa(c)|0)+16|0);tS(a,1839,(DRa(c)|0)+12|0);tS(a,1839,(DRa(c)|0)+8|0);break}case 19:{tS(a,1862,b);tS(a,1839,(dSa(c)|0)+8|0);break}case 20:{tS(a,1863,b);dQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1864,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1839,ODa(d,b)|0);c=b}}case 22:{tS(a,1865,b);break}case 23:{tS(a,1866,b);break}default:hb()}while(0);return}function bf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;g=k;do if(b[a+33>>0]|0){i=DCa(134176,110776)|0;dYa(g,134176+(f[(f[33544]|0)+-12>>2]|0)|0);x=0;d=ia(73,f[g>>2]|0,134880)|0;l=x;x=0;if(!(l&1)?(x=0,e=ia(f[(f[d>>2]|0)+28>>2]|0,d|0,10)|0,l=x,x=0,!(l&1)):0){OCa(g);Wq(i,e)|0;fu(i)|0;break}l=Ia()|0;OCa(g);Ua(l|0)}while(0);l=c+20|0;oGa(a,f[l>>2]|0);do if((f[(f[l>>2]|0)+4>>2]|0)!=5?(l=c+24|0,oGa(a,f[l>>2]|0),(f[(f[l>>2]|0)+4>>2]|0)!=5):0){e=c+4|0;g=a+28|0;d=f[g>>2]|0;if((f[e>>2]|0)==5){iTa(d);break}Gv(d,-2)|0;a:do switch(f[c+8>>2]|0){case 0:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,32)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,33)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,30)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,34)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,35)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,36)|0;j=d;break a}case 8:{Gv(f[g>>2]|0,31)|0;j=d;break a}default:hb()}break}default:hb()}break}case 1:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,39)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,40)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,37)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,41)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,42)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,43)|0;j=d;break a}case 8:{Gv(f[g>>2]|0,38)|0;j=d;break a}default:hb()}break}default:hb()}break}case 2:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,46)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,47)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,44)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,48)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,49)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,50)|0;j=d;break a}case 8:{Gv(f[g>>2]|0,45)|0;j=d;break a}default:hb()}break}default:hb()}break}case 3:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,53)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,54)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,51)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,55)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,56)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,57)|0;j=d;break a}case 8:{Gv(f[g>>2]|0,52)|0;j=d;break a}default:hb()}break}default:hb()}break}case 4:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,60)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,61)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,58)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,62)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,63)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,64)|0;j=d;break a}case 8:{Gv(f[g>>2]|0,59)|0;j=d;break a}default:hb()}break}default:hb()}break}case 5:{switch(f[e>>2]|0){case 1:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,67)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,68)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,65)|0;j=d;break a}default:hb()}break}case 2:{d=c+12|0;switch(b[d>>0]|0){case 1:{Gv(f[g>>2]|0,69)|0;j=d;break a}case 2:{Gv(f[g>>2]|0,70)|0;j=d;break a}case 4:{Gv(f[g>>2]|0,71)|0;j=d;break a}case 8:{Gv(f[g>>2]|0,66)|0;j=d;break a}default:hb()}break}default:hb()}break}default:hb()}while(0);l=h[j>>0]|0;FX(a,l,l,Jbb(f[c+16>>2]|0)|0)}while(0);u=k;return}function cf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2986,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2985,ODa(d,b)|0);c=b}}case 2:{tS(a,2987,b);nQ(a,(vSa(c)|0)+16|0);tS(a,2985,(vSa(c)|0)+12|0);tS(a,2985,(vSa(c)|0)+8|0);break}case 3:{tS(a,2988,b);tS(a,2985,(lSa(c)|0)+12|0);break}case 4:{tS(a,2989,b);nQ(a,($Ra(c)|0)+16|0);nQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2990,b);tS(a,2985,(NRa(c)|0)+28|0);nQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2991,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2985,ODa(d,b)|0);c=b}}case 7:{tS(a,2992,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2985,ODa(d,b)|0);c=b}}case 8:{tS(a,2993,b);b=IQa(c)|0;tS(a,2985,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2985,ODa(d,b)|0);c=b}}case 9:{tS(a,2994,b);break}case 10:{tS(a,2995,b);tS(a,2985,(nRa(c)|0)+12|0);break}case 11:{tS(a,2996,b);break}case 12:{tS(a,2997,b);tS(a,2985,($Qa(c)|0)+12|0);break}case 13:{tS(a,2998,b);tS(a,2985,(bSa(c)|0)+24|0);break}case 14:{tS(a,2999,b);tS(a,2985,(PRa(c)|0)+28|0);tS(a,2985,(PRa(c)|0)+24|0);break}case 24:{tS(a,3e3,b);tS(a,2985,(bRa(c)|0)+24|0);tS(a,2985,(bRa(c)|0)+20|0);break}case 25:{tS(a,3001,b);tS(a,2985,(wQa(c)|0)+24|0);tS(a,2985,(wQa(c)|0)+20|0);tS(a,2985,(wQa(c)|0)+16|0);break}case 26:{tS(a,3002,b);tS(a,2985,(QQa(c)|0)+20|0);tS(a,2985,(QQa(c)|0)+16|0);tS(a,2985,(QQa(c)|0)+12|0);break}case 27:{tS(a,3003,b);tS(a,2985,(PQa(c)|0)+16|0);tS(a,2985,(PQa(c)|0)+12|0);break}case 15:{tS(a,3004,b);break}case 16:{tS(a,3005,b);tS(a,2985,(ORa(c)|0)+12|0);break}case 17:{tS(a,3006,b);tS(a,2985,(FRa(c)|0)+16|0);tS(a,2985,(FRa(c)|0)+12|0);break}case 18:{tS(a,3007,b);tS(a,2985,(DRa(c)|0)+16|0);tS(a,2985,(DRa(c)|0)+12|0);tS(a,2985,(DRa(c)|0)+8|0);break}case 19:{tS(a,3008,b);tS(a,2985,(dSa(c)|0)+8|0);break}case 20:{tS(a,3009,b);nQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,3010,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2985,ODa(d,b)|0);c=b}}case 22:{tS(a,3011,b);break}case 23:{tS(a,3012,b);break}default:hb()}while(0);return}function df(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,650,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,649,ODa(d,b)|0);c=b}}case 2:{tS(a,651,b);bQ(a,(vSa(c)|0)+16|0);tS(a,649,(vSa(c)|0)+12|0);tS(a,649,(vSa(c)|0)+8|0);break}case 3:{tS(a,652,b);tS(a,649,(lSa(c)|0)+12|0);break}case 4:{tS(a,653,b);bQ(a,($Ra(c)|0)+16|0);bQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,654,b);tS(a,649,(NRa(c)|0)+28|0);bQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,655,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,649,ODa(d,b)|0);c=b}}case 7:{tS(a,656,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,649,ODa(d,b)|0);c=b}}case 8:{tS(a,657,b);b=IQa(c)|0;tS(a,649,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,649,ODa(d,b)|0);c=b}}case 9:{tS(a,658,b);break}case 10:{tS(a,659,b);tS(a,649,(nRa(c)|0)+12|0);break}case 11:{tS(a,660,b);break}case 12:{tS(a,661,b);tS(a,649,($Qa(c)|0)+12|0);break}case 13:{tS(a,662,b);tS(a,649,(bSa(c)|0)+24|0);break}case 14:{tS(a,663,b);tS(a,649,(PRa(c)|0)+28|0);tS(a,649,(PRa(c)|0)+24|0);break}case 24:{tS(a,664,b);tS(a,649,(bRa(c)|0)+24|0);tS(a,649,(bRa(c)|0)+20|0);break}case 25:{tS(a,665,b);tS(a,649,(wQa(c)|0)+24|0);tS(a,649,(wQa(c)|0)+20|0);tS(a,649,(wQa(c)|0)+16|0);break}case 26:{tS(a,666,b);tS(a,649,(QQa(c)|0)+20|0);tS(a,649,(QQa(c)|0)+16|0);tS(a,649,(QQa(c)|0)+12|0);break}case 27:{tS(a,667,b);tS(a,649,(PQa(c)|0)+16|0);tS(a,649,(PQa(c)|0)+12|0);break}case 15:{tS(a,668,b);break}case 16:{tS(a,669,b);tS(a,649,(ORa(c)|0)+12|0);break}case 17:{tS(a,670,b);tS(a,649,(FRa(c)|0)+16|0);tS(a,649,(FRa(c)|0)+12|0);break}case 18:{tS(a,671,b);tS(a,649,(DRa(c)|0)+16|0);tS(a,649,(DRa(c)|0)+12|0);tS(a,649,(DRa(c)|0)+8|0);break}case 19:{tS(a,672,b);tS(a,649,(dSa(c)|0)+8|0);break}case 20:{tS(a,673,b);bQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,674,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,649,ODa(d,b)|0);c=b}}case 22:{tS(a,675,b);break}case 23:{tS(a,676,b);break}default:hb()}while(0);return}function ef(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,3014,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3013,ODa(d,b)|0);c=b}}case 2:{tS(a,3015,b);tQ(a,(vSa(c)|0)+16|0);tS(a,3013,(vSa(c)|0)+12|0);tS(a,3013,(vSa(c)|0)+8|0);break}case 3:{tS(a,3016,b);tS(a,3013,(lSa(c)|0)+12|0);break}case 4:{tS(a,3017,b);tQ(a,($Ra(c)|0)+16|0);tQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,3018,b);tS(a,3013,(NRa(c)|0)+28|0);tQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,3019,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3013,ODa(d,b)|0);c=b}}case 7:{tS(a,3020,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3013,ODa(d,b)|0);c=b}}case 8:{tS(a,3021,b);b=IQa(c)|0;tS(a,3013,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3013,ODa(d,b)|0);c=b}}case 9:{tS(a,3022,b);break}case 10:{tS(a,3023,b);tS(a,3013,(nRa(c)|0)+12|0);break}case 11:{tS(a,3024,b);break}case 12:{tS(a,3025,b);tS(a,3013,($Qa(c)|0)+12|0);break}case 13:{tS(a,3026,b);tS(a,3013,(bSa(c)|0)+24|0);break}case 14:{tS(a,3027,b);tS(a,3013,(PRa(c)|0)+28|0);tS(a,3013,(PRa(c)|0)+24|0);break}case 24:{tS(a,3028,b);tS(a,3013,(bRa(c)|0)+24|0);tS(a,3013,(bRa(c)|0)+20|0);break}case 25:{tS(a,3029,b);tS(a,3013,(wQa(c)|0)+24|0);tS(a,3013,(wQa(c)|0)+20|0);tS(a,3013,(wQa(c)|0)+16|0);break}case 26:{tS(a,3030,b);tS(a,3013,(QQa(c)|0)+20|0);tS(a,3013,(QQa(c)|0)+16|0);tS(a,3013,(QQa(c)|0)+12|0);break}case 27:{tS(a,3031,b);tS(a,3013,(PQa(c)|0)+16|0);tS(a,3013,(PQa(c)|0)+12|0);break}case 15:{tS(a,3032,b);break}case 16:{tS(a,3033,b);tS(a,3013,(ORa(c)|0)+12|0);break}case 17:{tS(a,3034,b);tS(a,3013,(FRa(c)|0)+16|0);tS(a,3013,(FRa(c)|0)+12|0);break}case 18:{tS(a,3035,b);tS(a,3013,(DRa(c)|0)+16|0);tS(a,3013,(DRa(c)|0)+12|0);tS(a,3013,(DRa(c)|0)+8|0);break}case 19:{tS(a,3036,b);tS(a,3013,(dSa(c)|0)+8|0);break}case 20:{tS(a,3037,b);tQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,3038,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3013,ODa(d,b)|0);c=b}}case 22:{tS(a,3039,b);break}case 23:{tS(a,3040,b);break}default:hb()}while(0);return}function ff(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1465,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1462,ODa(d,b)|0);c=b}}case 2:{tS(a,1466,b);AQ(a,(vSa(c)|0)+16|0);tS(a,1462,(vSa(c)|0)+12|0);tS(a,1462,(vSa(c)|0)+8|0);break}case 3:{tS(a,1467,b);tS(a,1462,(lSa(c)|0)+12|0);break}case 4:{tS(a,1468,b);AQ(a,($Ra(c)|0)+16|0);AQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1469,b);tS(a,1462,(NRa(c)|0)+28|0);AQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1470,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1462,ODa(d,b)|0);c=b}}case 7:{tS(a,1471,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1462,ODa(d,b)|0);c=b}}case 8:{tS(a,1472,b);b=IQa(c)|0;tS(a,1462,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1462,ODa(d,b)|0);c=b}}case 9:{tS(a,1473,b);break}case 10:{tS(a,1474,b);tS(a,1462,(nRa(c)|0)+12|0);break}case 11:{tS(a,1475,b);break}case 12:{tS(a,1476,b);tS(a,1462,($Qa(c)|0)+12|0);break}case 13:{tS(a,1477,b);tS(a,1462,(bSa(c)|0)+24|0);break}case 14:{tS(a,1478,b);tS(a,1462,(PRa(c)|0)+28|0);tS(a,1462,(PRa(c)|0)+24|0);break}case 24:{tS(a,1479,b);tS(a,1462,(bRa(c)|0)+24|0);tS(a,1462,(bRa(c)|0)+20|0);break}case 25:{tS(a,1480,b);tS(a,1462,(wQa(c)|0)+24|0);tS(a,1462,(wQa(c)|0)+20|0);tS(a,1462,(wQa(c)|0)+16|0);break}case 26:{tS(a,1481,b);tS(a,1462,(QQa(c)|0)+20|0);tS(a,1462,(QQa(c)|0)+16|0);tS(a,1462,(QQa(c)|0)+12|0);break}case 27:{tS(a,1482,b);tS(a,1462,(PQa(c)|0)+16|0);tS(a,1462,(PQa(c)|0)+12|0);break}case 15:{tS(a,1483,b);break}case 16:{tS(a,1484,b);tS(a,1462,(ORa(c)|0)+12|0);break}case 17:{tS(a,1485,b);tS(a,1462,(FRa(c)|0)+16|0);tS(a,1462,(FRa(c)|0)+12|0);break}case 18:{tS(a,1486,b);tS(a,1462,(DRa(c)|0)+16|0);tS(a,1462,(DRa(c)|0)+12|0);tS(a,1462,(DRa(c)|0)+8|0);break}case 19:{tS(a,1487,b);tS(a,1462,(dSa(c)|0)+8|0);break}case 20:{tS(a,1488,b);AQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1489,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1462,ODa(d,b)|0);c=b}}case 22:{tS(a,1490,b);break}case 23:{tS(a,1491,b);break}default:hb()}while(0);return}function gf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2927,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2926,ODa(d,b)|0);c=b}}case 2:{tS(a,2928,b);CQ(a,(vSa(c)|0)+16|0);tS(a,2926,(vSa(c)|0)+12|0);tS(a,2926,(vSa(c)|0)+8|0);break}case 3:{tS(a,2929,b);tS(a,2926,(lSa(c)|0)+12|0);break}case 4:{tS(a,2930,b);CQ(a,($Ra(c)|0)+16|0);CQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2931,b);tS(a,2926,(NRa(c)|0)+28|0);CQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2932,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2926,ODa(d,b)|0);c=b}}case 7:{tS(a,2933,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2926,ODa(d,b)|0);c=b}}case 8:{tS(a,2934,b);b=IQa(c)|0;tS(a,2926,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2926,ODa(d,b)|0);c=b}}case 9:{tS(a,2935,b);break}case 10:{tS(a,2936,b);tS(a,2926,(nRa(c)|0)+12|0);break}case 11:{tS(a,2937,b);break}case 12:{tS(a,2938,b);tS(a,2926,($Qa(c)|0)+12|0);break}case 13:{tS(a,2939,b);tS(a,2926,(bSa(c)|0)+24|0);break}case 14:{tS(a,2940,b);tS(a,2926,(PRa(c)|0)+28|0);tS(a,2926,(PRa(c)|0)+24|0);break}case 24:{tS(a,2941,b);tS(a,2926,(bRa(c)|0)+24|0);tS(a,2926,(bRa(c)|0)+20|0);break}case 25:{tS(a,2942,b);tS(a,2926,(wQa(c)|0)+24|0);tS(a,2926,(wQa(c)|0)+20|0);tS(a,2926,(wQa(c)|0)+16|0);break}case 26:{tS(a,2943,b);tS(a,2926,(QQa(c)|0)+20|0);tS(a,2926,(QQa(c)|0)+16|0);tS(a,2926,(QQa(c)|0)+12|0);break}case 27:{tS(a,2944,b);tS(a,2926,(PQa(c)|0)+16|0);tS(a,2926,(PQa(c)|0)+12|0);break}case 15:{tS(a,2945,b);break}case 16:{tS(a,2946,b);tS(a,2926,(ORa(c)|0)+12|0);break}case 17:{tS(a,2947,b);tS(a,2926,(FRa(c)|0)+16|0);tS(a,2926,(FRa(c)|0)+12|0);break}case 18:{tS(a,2948,b);tS(a,2926,(DRa(c)|0)+16|0);tS(a,2926,(DRa(c)|0)+12|0);tS(a,2926,(DRa(c)|0)+8|0);break}case 19:{tS(a,2949,b);tS(a,2926,(dSa(c)|0)+8|0);break}case 20:{tS(a,2950,b);CQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2951,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2926,ODa(d,b)|0);c=b}}case 22:{tS(a,2952,b);break}case 23:{tS(a,2953,b);break}default:hb()}while(0);return}function hf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2221,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2220,ODa(d,b)|0);c=b}}case 2:{tS(a,2222,b);XQ(a,(vSa(c)|0)+16|0);tS(a,2220,(vSa(c)|0)+12|0);tS(a,2220,(vSa(c)|0)+8|0);break}case 3:{tS(a,2223,b);tS(a,2220,(lSa(c)|0)+12|0);break}case 4:{tS(a,2224,b);XQ(a,($Ra(c)|0)+16|0);XQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2225,b);tS(a,2220,(NRa(c)|0)+28|0);XQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2226,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2220,ODa(d,b)|0);c=b}}case 7:{tS(a,2227,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2220,ODa(d,b)|0);c=b}}case 8:{tS(a,2228,b);b=IQa(c)|0;tS(a,2220,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2220,ODa(d,b)|0);c=b}}case 9:{tS(a,2229,b);break}case 10:{tS(a,2230,b);tS(a,2220,(nRa(c)|0)+12|0);break}case 11:{tS(a,2231,b);break}case 12:{tS(a,2232,b);tS(a,2220,($Qa(c)|0)+12|0);break}case 13:{tS(a,2233,b);tS(a,2220,(bSa(c)|0)+24|0);break}case 14:{tS(a,2234,b);tS(a,2220,(PRa(c)|0)+28|0);tS(a,2220,(PRa(c)|0)+24|0);break}case 24:{tS(a,2235,b);tS(a,2220,(bRa(c)|0)+24|0);tS(a,2220,(bRa(c)|0)+20|0);break}case 25:{tS(a,2236,b);tS(a,2220,(wQa(c)|0)+24|0);tS(a,2220,(wQa(c)|0)+20|0);tS(a,2220,(wQa(c)|0)+16|0);break}case 26:{tS(a,2237,b);tS(a,2220,(QQa(c)|0)+20|0);tS(a,2220,(QQa(c)|0)+16|0);tS(a,2220,(QQa(c)|0)+12|0);break}case 27:{tS(a,2238,b);tS(a,2220,(PQa(c)|0)+16|0);tS(a,2220,(PQa(c)|0)+12|0);break}case 15:{tS(a,2239,b);break}case 16:{tS(a,2240,b);tS(a,2220,(ORa(c)|0)+12|0);break}case 17:{tS(a,2241,b);tS(a,2220,(FRa(c)|0)+16|0);tS(a,2220,(FRa(c)|0)+12|0);break}case 18:{tS(a,2242,b);tS(a,2220,(DRa(c)|0)+16|0);tS(a,2220,(DRa(c)|0)+12|0);tS(a,2220,(DRa(c)|0)+8|0);break}case 19:{tS(a,2243,b);tS(a,2220,(dSa(c)|0)+8|0);break}case 20:{tS(a,2244,b);XQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2245,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2220,ODa(d,b)|0);c=b}}case 22:{tS(a,2246,b);break}case 23:{tS(a,2247,b);break}default:hb()}while(0);return}function jf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2955,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2954,ODa(d,b)|0);c=b}}case 2:{tS(a,2956,b);aR(a,(vSa(c)|0)+16|0);tS(a,2954,(vSa(c)|0)+12|0);tS(a,2954,(vSa(c)|0)+8|0);break}case 3:{tS(a,2957,b);tS(a,2954,(lSa(c)|0)+12|0);break}case 4:{tS(a,2958,b);aR(a,($Ra(c)|0)+16|0);aR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2959,b);tS(a,2954,(NRa(c)|0)+28|0);aR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2960,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2954,ODa(d,b)|0);c=b}}case 7:{tS(a,2961,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2954,ODa(d,b)|0);c=b}}case 8:{tS(a,2962,b);b=IQa(c)|0;tS(a,2954,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2954,ODa(d,b)|0);c=b}}case 9:{tS(a,2963,b);break}case 10:{tS(a,2964,b);tS(a,2954,(nRa(c)|0)+12|0);break}case 11:{tS(a,2965,b);break}case 12:{tS(a,2966,b);tS(a,2954,($Qa(c)|0)+12|0);break}case 13:{tS(a,2967,b);tS(a,2954,(bSa(c)|0)+24|0);break}case 14:{tS(a,2968,b);tS(a,2954,(PRa(c)|0)+28|0);tS(a,2954,(PRa(c)|0)+24|0);break}case 24:{tS(a,2969,b);tS(a,2954,(bRa(c)|0)+24|0);tS(a,2954,(bRa(c)|0)+20|0);break}case 25:{tS(a,2970,b);tS(a,2954,(wQa(c)|0)+24|0);tS(a,2954,(wQa(c)|0)+20|0);tS(a,2954,(wQa(c)|0)+16|0);break}case 26:{tS(a,2971,b);tS(a,2954,(QQa(c)|0)+20|0);tS(a,2954,(QQa(c)|0)+16|0);tS(a,2954,(QQa(c)|0)+12|0);break}case 27:{tS(a,2972,b);tS(a,2954,(PQa(c)|0)+16|0);tS(a,2954,(PQa(c)|0)+12|0);break}case 15:{tS(a,2973,b);break}case 16:{tS(a,2974,b);tS(a,2954,(ORa(c)|0)+12|0);break}case 17:{tS(a,2975,b);tS(a,2954,(FRa(c)|0)+16|0);tS(a,2954,(FRa(c)|0)+12|0);break}case 18:{tS(a,2976,b);tS(a,2954,(DRa(c)|0)+16|0);tS(a,2954,(DRa(c)|0)+12|0);tS(a,2954,(DRa(c)|0)+8|0);break}case 19:{tS(a,2977,b);tS(a,2954,(dSa(c)|0)+8|0);break}case 20:{tS(a,2978,b);aR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2979,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2954,ODa(d,b)|0);c=b}}case 22:{tS(a,2980,b);break}case 23:{tS(a,2981,b);break}default:hb()}while(0);return}function kf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,684,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,683,ODa(d,b)|0);c=b}}case 2:{tS(a,685,b);OQ(a,(vSa(c)|0)+16|0);tS(a,683,(vSa(c)|0)+12|0);tS(a,683,(vSa(c)|0)+8|0);break}case 3:{tS(a,686,b);tS(a,683,(lSa(c)|0)+12|0);break}case 4:{tS(a,687,b);OQ(a,($Ra(c)|0)+16|0);OQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,688,b);tS(a,683,(NRa(c)|0)+28|0);OQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,689,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,683,ODa(d,b)|0);c=b}}case 7:{tS(a,690,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,683,ODa(d,b)|0);c=b}}case 8:{tS(a,691,b);b=IQa(c)|0;tS(a,683,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,683,ODa(d,b)|0);c=b}}case 9:{tS(a,692,b);break}case 10:{tS(a,693,b);tS(a,683,(nRa(c)|0)+12|0);break}case 11:{tS(a,694,b);break}case 12:{tS(a,695,b);tS(a,683,($Qa(c)|0)+12|0);break}case 13:{tS(a,696,b);tS(a,683,(bSa(c)|0)+24|0);break}case 14:{tS(a,697,b);tS(a,683,(PRa(c)|0)+28|0);tS(a,683,(PRa(c)|0)+24|0);break}case 24:{tS(a,698,b);tS(a,683,(bRa(c)|0)+24|0);tS(a,683,(bRa(c)|0)+20|0);break}case 25:{tS(a,699,b);tS(a,683,(wQa(c)|0)+24|0);tS(a,683,(wQa(c)|0)+20|0);tS(a,683,(wQa(c)|0)+16|0);break}case 26:{tS(a,700,b);tS(a,683,(QQa(c)|0)+20|0);tS(a,683,(QQa(c)|0)+16|0);tS(a,683,(QQa(c)|0)+12|0);break}case 27:{tS(a,701,b);tS(a,683,(PQa(c)|0)+16|0);tS(a,683,(PQa(c)|0)+12|0);break}case 15:{tS(a,702,b);break}case 16:{tS(a,703,b);tS(a,683,(ORa(c)|0)+12|0);break}case 17:{tS(a,704,b);tS(a,683,(FRa(c)|0)+16|0);tS(a,683,(FRa(c)|0)+12|0);break}case 18:{tS(a,705,b);tS(a,683,(DRa(c)|0)+16|0);tS(a,683,(DRa(c)|0)+12|0);tS(a,683,(DRa(c)|0)+8|0);break}case 19:{tS(a,706,b);tS(a,683,(dSa(c)|0)+8|0);break}case 20:{tS(a,707,b);OQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,708,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,683,ODa(d,b)|0);c=b}}case 22:{tS(a,709,b);break}case 23:{tS(a,710,b);break}default:hb()}while(0);return}function lf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,558,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,557,ODa(d,b)|0);c=b}}case 2:{tS(a,559,b);LQ(a,(vSa(c)|0)+16|0);tS(a,557,(vSa(c)|0)+12|0);tS(a,557,(vSa(c)|0)+8|0);break}case 3:{tS(a,560,b);tS(a,557,(lSa(c)|0)+12|0);break}case 4:{tS(a,561,b);LQ(a,($Ra(c)|0)+16|0);LQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,562,b);tS(a,557,(NRa(c)|0)+28|0);LQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,563,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,557,ODa(d,b)|0);c=b}}case 7:{tS(a,564,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,557,ODa(d,b)|0);c=b}}case 8:{tS(a,565,b);b=IQa(c)|0;tS(a,557,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,557,ODa(d,b)|0);c=b}}case 9:{tS(a,566,b);break}case 10:{tS(a,567,b);tS(a,557,(nRa(c)|0)+12|0);break}case 11:{tS(a,568,b);break}case 12:{tS(a,569,b);tS(a,557,($Qa(c)|0)+12|0);break}case 13:{tS(a,570,b);tS(a,557,(bSa(c)|0)+24|0);break}case 14:{tS(a,571,b);tS(a,557,(PRa(c)|0)+28|0);tS(a,557,(PRa(c)|0)+24|0);break}case 24:{tS(a,572,b);tS(a,557,(bRa(c)|0)+24|0);tS(a,557,(bRa(c)|0)+20|0);break}case 25:{tS(a,573,b);tS(a,557,(wQa(c)|0)+24|0);tS(a,557,(wQa(c)|0)+20|0);tS(a,557,(wQa(c)|0)+16|0);break}case 26:{tS(a,574,b);tS(a,557,(QQa(c)|0)+20|0);tS(a,557,(QQa(c)|0)+16|0);tS(a,557,(QQa(c)|0)+12|0);break}case 27:{tS(a,575,b);tS(a,557,(PQa(c)|0)+16|0);tS(a,557,(PQa(c)|0)+12|0);break}case 15:{tS(a,576,b);break}case 16:{tS(a,577,b);tS(a,557,(ORa(c)|0)+12|0);break}case 17:{tS(a,578,b);tS(a,557,(FRa(c)|0)+16|0);tS(a,557,(FRa(c)|0)+12|0);break}case 18:{tS(a,579,b);tS(a,557,(DRa(c)|0)+16|0);tS(a,557,(DRa(c)|0)+12|0);tS(a,557,(DRa(c)|0)+8|0);break}case 19:{tS(a,580,b);tS(a,557,(dSa(c)|0)+8|0);break}case 20:{tS(a,581,b);LQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,582,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,557,ODa(d,b)|0);c=b}}case 22:{tS(a,583,b);break}case 23:{tS(a,584,b);break}default:hb()}while(0);return}function mf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1659,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1658,ODa(d,b)|0);c=b}}case 2:{tS(a,1660,b);kR(a,(vSa(c)|0)+16|0);tS(a,1658,(vSa(c)|0)+12|0);tS(a,1658,(vSa(c)|0)+8|0);break}case 3:{tS(a,1661,b);tS(a,1658,(lSa(c)|0)+12|0);break}case 4:{tS(a,1662,b);kR(a,($Ra(c)|0)+16|0);kR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1663,b);tS(a,1658,(NRa(c)|0)+28|0);kR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1664,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1658,ODa(d,b)|0);c=b}}case 7:{tS(a,1665,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1658,ODa(d,b)|0);c=b}}case 8:{tS(a,1666,b);b=IQa(c)|0;tS(a,1658,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1658,ODa(d,b)|0);c=b}}case 9:{tS(a,1667,b);break}case 10:{tS(a,1668,b);tS(a,1658,(nRa(c)|0)+12|0);break}case 11:{tS(a,1669,b);break}case 12:{tS(a,1670,b);tS(a,1658,($Qa(c)|0)+12|0);break}case 13:{tS(a,1671,b);tS(a,1658,(bSa(c)|0)+24|0);break}case 14:{tS(a,1672,b);tS(a,1658,(PRa(c)|0)+28|0);tS(a,1658,(PRa(c)|0)+24|0);break}case 24:{tS(a,1673,b);tS(a,1658,(bRa(c)|0)+24|0);tS(a,1658,(bRa(c)|0)+20|0);break}case 25:{tS(a,1674,b);tS(a,1658,(wQa(c)|0)+24|0);tS(a,1658,(wQa(c)|0)+20|0);tS(a,1658,(wQa(c)|0)+16|0);break}case 26:{tS(a,1675,b);tS(a,1658,(QQa(c)|0)+20|0);tS(a,1658,(QQa(c)|0)+16|0);tS(a,1658,(QQa(c)|0)+12|0);break}case 27:{tS(a,1676,b);tS(a,1658,(PQa(c)|0)+16|0);tS(a,1658,(PQa(c)|0)+12|0);break}case 15:{tS(a,1677,b);break}case 16:{tS(a,1678,b);tS(a,1658,(ORa(c)|0)+12|0);break}case 17:{tS(a,1679,b);tS(a,1658,(FRa(c)|0)+16|0);tS(a,1658,(FRa(c)|0)+12|0);break}case 18:{tS(a,1680,b);tS(a,1658,(DRa(c)|0)+16|0);tS(a,1658,(DRa(c)|0)+12|0);tS(a,1658,(DRa(c)|0)+8|0);break}case 19:{tS(a,1681,b);tS(a,1658,(dSa(c)|0)+8|0);break}case 20:{tS(a,1682,b);kR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1683,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1658,ODa(d,b)|0);c=b}}case 22:{tS(a,1684,b);break}case 23:{tS(a,1685,b);break}default:hb()}while(0);return}function nf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1630,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1629,ODa(d,b)|0);c=b}}case 2:{tS(a,1631,b);lR(a,(vSa(c)|0)+16|0);tS(a,1629,(vSa(c)|0)+12|0);tS(a,1629,(vSa(c)|0)+8|0);break}case 3:{tS(a,1632,b);tS(a,1629,(lSa(c)|0)+12|0);break}case 4:{tS(a,1633,b);lR(a,($Ra(c)|0)+16|0);lR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1634,b);tS(a,1629,(NRa(c)|0)+28|0);lR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1635,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1629,ODa(d,b)|0);c=b}}case 7:{tS(a,1636,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1629,ODa(d,b)|0);c=b}}case 8:{tS(a,1637,b);b=IQa(c)|0;tS(a,1629,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1629,ODa(d,b)|0);c=b}}case 9:{tS(a,1638,b);break}case 10:{tS(a,1639,b);tS(a,1629,(nRa(c)|0)+12|0);break}case 11:{tS(a,1640,b);break}case 12:{tS(a,1641,b);tS(a,1629,($Qa(c)|0)+12|0);break}case 13:{tS(a,1642,b);tS(a,1629,(bSa(c)|0)+24|0);break}case 14:{tS(a,1643,b);tS(a,1629,(PRa(c)|0)+28|0);tS(a,1629,(PRa(c)|0)+24|0);break}case 24:{tS(a,1644,b);tS(a,1629,(bRa(c)|0)+24|0);tS(a,1629,(bRa(c)|0)+20|0);break}case 25:{tS(a,1645,b);tS(a,1629,(wQa(c)|0)+24|0);tS(a,1629,(wQa(c)|0)+20|0);tS(a,1629,(wQa(c)|0)+16|0);break}case 26:{tS(a,1646,b);tS(a,1629,(QQa(c)|0)+20|0);tS(a,1629,(QQa(c)|0)+16|0);tS(a,1629,(QQa(c)|0)+12|0);break}case 27:{tS(a,1647,b);tS(a,1629,(PQa(c)|0)+16|0);tS(a,1629,(PQa(c)|0)+12|0);break}case 15:{tS(a,1648,b);break}case 16:{tS(a,1649,b);tS(a,1629,(ORa(c)|0)+12|0);break}case 17:{tS(a,1650,b);tS(a,1629,(FRa(c)|0)+16|0);tS(a,1629,(FRa(c)|0)+12|0);break}case 18:{tS(a,1651,b);tS(a,1629,(DRa(c)|0)+16|0);tS(a,1629,(DRa(c)|0)+12|0);tS(a,1629,(DRa(c)|0)+8|0);break}case 19:{tS(a,1652,b);tS(a,1629,(dSa(c)|0)+8|0);break}case 20:{tS(a,1653,b);lR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1654,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1629,ODa(d,b)|0);c=b}}case 22:{tS(a,1655,b);break}case 23:{tS(a,1656,b);break}default:hb()}while(0);return}function of(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,381,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,321,ODa(d,b)|0);c=b}}case 2:{tS(a,382,b);UQ(a,(vSa(c)|0)+16|0);tS(a,321,(vSa(c)|0)+12|0);tS(a,321,(vSa(c)|0)+8|0);break}case 3:{tS(a,383,b);tS(a,321,(lSa(c)|0)+12|0);break}case 4:{tS(a,384,b);UQ(a,($Ra(c)|0)+16|0);UQ(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,385,b);tS(a,321,(NRa(c)|0)+28|0);UQ(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,386,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,321,ODa(d,b)|0);c=b}}case 7:{tS(a,387,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,321,ODa(d,b)|0);c=b}}case 8:{tS(a,388,b);b=IQa(c)|0;tS(a,321,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,321,ODa(d,b)|0);c=b}}case 9:{tS(a,389,b);break}case 10:{tS(a,390,b);tS(a,321,(nRa(c)|0)+12|0);break}case 11:{tS(a,391,b);break}case 12:{tS(a,392,b);tS(a,321,($Qa(c)|0)+12|0);break}case 13:{tS(a,393,b);tS(a,321,(bSa(c)|0)+24|0);break}case 14:{tS(a,394,b);tS(a,321,(PRa(c)|0)+28|0);tS(a,321,(PRa(c)|0)+24|0);break}case 24:{tS(a,395,b);tS(a,321,(bRa(c)|0)+24|0);tS(a,321,(bRa(c)|0)+20|0);break}case 25:{tS(a,396,b);tS(a,321,(wQa(c)|0)+24|0);tS(a,321,(wQa(c)|0)+20|0);tS(a,321,(wQa(c)|0)+16|0);break}case 26:{tS(a,397,b);tS(a,321,(QQa(c)|0)+20|0);tS(a,321,(QQa(c)|0)+16|0);tS(a,321,(QQa(c)|0)+12|0);break}case 27:{tS(a,398,b);tS(a,321,(PQa(c)|0)+16|0);tS(a,321,(PQa(c)|0)+12|0);break}case 15:{tS(a,399,b);break}case 16:{tS(a,400,b);tS(a,321,(ORa(c)|0)+12|0);break}case 17:{tS(a,401,b);tS(a,321,(FRa(c)|0)+16|0);tS(a,321,(FRa(c)|0)+12|0);break}case 18:{tS(a,402,b);tS(a,321,(DRa(c)|0)+16|0);tS(a,321,(DRa(c)|0)+12|0);tS(a,321,(DRa(c)|0)+8|0);break}case 19:{tS(a,403,b);tS(a,321,(dSa(c)|0)+8|0);break}case 20:{tS(a,404,b);UQ(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,405,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,321,ODa(d,b)|0);c=b}}case 22:{tS(a,406,b);break}case 23:{tS(a,407,b);break}default:hb()}while(0);return}function pf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2346,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2343,ODa(d,b)|0);c=b}}case 2:{tS(a,2347,b);xR(a,(vSa(c)|0)+16|0);tS(a,2343,(vSa(c)|0)+12|0);tS(a,2343,(vSa(c)|0)+8|0);break}case 3:{tS(a,2348,b);tS(a,2343,(lSa(c)|0)+12|0);break}case 4:{tS(a,2349,b);xR(a,($Ra(c)|0)+16|0);xR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2350,b);tS(a,2343,(NRa(c)|0)+28|0);xR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2351,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2343,ODa(d,b)|0);c=b}}case 7:{tS(a,2352,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2343,ODa(d,b)|0);c=b}}case 8:{tS(a,2353,b);b=IQa(c)|0;tS(a,2343,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2343,ODa(d,b)|0);c=b}}case 9:{tS(a,2354,b);break}case 10:{tS(a,2355,b);tS(a,2343,(nRa(c)|0)+12|0);break}case 11:{tS(a,2356,b);break}case 12:{tS(a,2357,b);tS(a,2343,($Qa(c)|0)+12|0);break}case 13:{tS(a,2358,b);tS(a,2343,(bSa(c)|0)+24|0);break}case 14:{tS(a,2359,b);tS(a,2343,(PRa(c)|0)+28|0);tS(a,2343,(PRa(c)|0)+24|0);break}case 24:{tS(a,2360,b);tS(a,2343,(bRa(c)|0)+24|0);tS(a,2343,(bRa(c)|0)+20|0);break}case 25:{tS(a,2361,b);tS(a,2343,(wQa(c)|0)+24|0);tS(a,2343,(wQa(c)|0)+20|0);tS(a,2343,(wQa(c)|0)+16|0);break}case 26:{tS(a,2362,b);tS(a,2343,(QQa(c)|0)+20|0);tS(a,2343,(QQa(c)|0)+16|0);tS(a,2343,(QQa(c)|0)+12|0);break}case 27:{tS(a,2363,b);tS(a,2343,(PQa(c)|0)+16|0);tS(a,2343,(PQa(c)|0)+12|0);break}case 15:{tS(a,2364,b);break}case 16:{tS(a,2365,b);tS(a,2343,(ORa(c)|0)+12|0);break}case 17:{tS(a,2366,b);tS(a,2343,(FRa(c)|0)+16|0);tS(a,2343,(FRa(c)|0)+12|0);break}case 18:{tS(a,2367,b);tS(a,2343,(DRa(c)|0)+16|0);tS(a,2343,(DRa(c)|0)+12|0);tS(a,2343,(DRa(c)|0)+8|0);break}case 19:{tS(a,2368,b);tS(a,2343,(dSa(c)|0)+8|0);break}case 20:{tS(a,2369,b);xR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2370,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2343,ODa(d,b)|0);c=b}}case 22:{tS(a,2371,b);break}case 23:{tS(a,2372,b);break}default:hb()}while(0);return}function qf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,494,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,481,ODa(d,b)|0);c=b}}case 2:{tS(a,495,b);cR(a,(vSa(c)|0)+16|0);tS(a,481,(vSa(c)|0)+12|0);tS(a,481,(vSa(c)|0)+8|0);break}case 3:{tS(a,496,b);tS(a,481,(lSa(c)|0)+12|0);break}case 4:{tS(a,497,b);cR(a,($Ra(c)|0)+16|0);cR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,498,b);tS(a,481,(NRa(c)|0)+28|0);cR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,499,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,481,ODa(d,b)|0);c=b}}case 7:{tS(a,500,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,481,ODa(d,b)|0);c=b}}case 8:{tS(a,501,b);b=IQa(c)|0;tS(a,481,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,481,ODa(d,b)|0);c=b}}case 9:{tS(a,502,b);break}case 10:{tS(a,503,b);tS(a,481,(nRa(c)|0)+12|0);break}case 11:{tS(a,504,b);break}case 12:{tS(a,505,b);tS(a,481,($Qa(c)|0)+12|0);break}case 13:{tS(a,506,b);tS(a,481,(bSa(c)|0)+24|0);break}case 14:{tS(a,507,b);tS(a,481,(PRa(c)|0)+28|0);tS(a,481,(PRa(c)|0)+24|0);break}case 24:{tS(a,508,b);tS(a,481,(bRa(c)|0)+24|0);tS(a,481,(bRa(c)|0)+20|0);break}case 25:{tS(a,509,b);tS(a,481,(wQa(c)|0)+24|0);tS(a,481,(wQa(c)|0)+20|0);tS(a,481,(wQa(c)|0)+16|0);break}case 26:{tS(a,510,b);tS(a,481,(QQa(c)|0)+20|0);tS(a,481,(QQa(c)|0)+16|0);tS(a,481,(QQa(c)|0)+12|0);break}case 27:{tS(a,511,b);tS(a,481,(PQa(c)|0)+16|0);tS(a,481,(PQa(c)|0)+12|0);break}case 15:{tS(a,512,b);break}case 16:{tS(a,513,b);tS(a,481,(ORa(c)|0)+12|0);break}case 17:{tS(a,514,b);tS(a,481,(FRa(c)|0)+16|0);tS(a,481,(FRa(c)|0)+12|0);break}case 18:{tS(a,515,b);tS(a,481,(DRa(c)|0)+16|0);tS(a,481,(DRa(c)|0)+12|0);tS(a,481,(DRa(c)|0)+8|0);break}case 19:{tS(a,516,b);tS(a,481,(dSa(c)|0)+8|0);break}case 20:{tS(a,517,b);cR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,518,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,481,ODa(d,b)|0);c=b}}case 22:{tS(a,519,b);break}case 23:{tS(a,520,b);break}default:hb()}while(0);return}function rf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,263,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,262,ODa(d,b)|0);c=b}}case 2:{tS(a,264,b);dR(a,(vSa(c)|0)+16|0);tS(a,262,(vSa(c)|0)+12|0);tS(a,262,(vSa(c)|0)+8|0);break}case 3:{tS(a,265,b);tS(a,262,(lSa(c)|0)+12|0);break}case 4:{tS(a,266,b);dR(a,($Ra(c)|0)+16|0);dR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,267,b);tS(a,262,(NRa(c)|0)+28|0);dR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,268,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,262,ODa(d,b)|0);c=b}}case 7:{tS(a,269,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,262,ODa(d,b)|0);c=b}}case 8:{tS(a,270,b);b=IQa(c)|0;tS(a,262,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,262,ODa(d,b)|0);c=b}}case 9:{tS(a,271,b);break}case 10:{tS(a,272,b);tS(a,262,(nRa(c)|0)+12|0);break}case 11:{tS(a,273,b);break}case 12:{tS(a,274,b);tS(a,262,($Qa(c)|0)+12|0);break}case 13:{tS(a,275,b);tS(a,262,(bSa(c)|0)+24|0);break}case 14:{tS(a,276,b);tS(a,262,(PRa(c)|0)+28|0);tS(a,262,(PRa(c)|0)+24|0);break}case 24:{tS(a,277,b);tS(a,262,(bRa(c)|0)+24|0);tS(a,262,(bRa(c)|0)+20|0);break}case 25:{tS(a,278,b);tS(a,262,(wQa(c)|0)+24|0);tS(a,262,(wQa(c)|0)+20|0);tS(a,262,(wQa(c)|0)+16|0);break}case 26:{tS(a,279,b);tS(a,262,(QQa(c)|0)+20|0);tS(a,262,(QQa(c)|0)+16|0);tS(a,262,(QQa(c)|0)+12|0);break}case 27:{tS(a,280,b);tS(a,262,(PQa(c)|0)+16|0);tS(a,262,(PQa(c)|0)+12|0);break}case 15:{tS(a,281,b);break}case 16:{tS(a,282,b);tS(a,262,(ORa(c)|0)+12|0);break}case 17:{tS(a,283,b);tS(a,262,(FRa(c)|0)+16|0);tS(a,262,(FRa(c)|0)+12|0);break}case 18:{tS(a,284,b);tS(a,262,(DRa(c)|0)+16|0);tS(a,262,(DRa(c)|0)+12|0);tS(a,262,(DRa(c)|0)+8|0);break}case 19:{tS(a,285,b);tS(a,262,(dSa(c)|0)+8|0);break}case 20:{tS(a,286,b);dR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,287,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,262,ODa(d,b)|0);c=b}}case 22:{tS(a,288,b);break}case 23:{tS(a,289,b);break}default:hb()}while(0);return}function sf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,1957,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1897,ODa(d,b)|0);c=b}}case 2:{tS(a,1958,b);OR(a,(vSa(c)|0)+16|0);tS(a,1897,(vSa(c)|0)+12|0);tS(a,1897,(vSa(c)|0)+8|0);break}case 3:{tS(a,1959,b);tS(a,1897,(lSa(c)|0)+12|0);break}case 4:{tS(a,1960,b);OR(a,($Ra(c)|0)+16|0);OR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,1961,b);tS(a,1897,(NRa(c)|0)+28|0);OR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,1962,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1897,ODa(d,b)|0);c=b}}case 7:{tS(a,1963,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1897,ODa(d,b)|0);c=b}}case 8:{tS(a,1964,b);b=IQa(c)|0;tS(a,1897,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1897,ODa(d,b)|0);c=b}}case 9:{tS(a,1965,b);break}case 10:{tS(a,1966,b);tS(a,1897,(nRa(c)|0)+12|0);break}case 11:{tS(a,1967,b);break}case 12:{tS(a,1968,b);tS(a,1897,($Qa(c)|0)+12|0);break}case 13:{tS(a,1969,b);tS(a,1897,(bSa(c)|0)+24|0);break}case 14:{tS(a,1970,b);tS(a,1897,(PRa(c)|0)+28|0);tS(a,1897,(PRa(c)|0)+24|0);break}case 24:{tS(a,1971,b);tS(a,1897,(bRa(c)|0)+24|0);tS(a,1897,(bRa(c)|0)+20|0);break}case 25:{tS(a,1972,b);tS(a,1897,(wQa(c)|0)+24|0);tS(a,1897,(wQa(c)|0)+20|0);tS(a,1897,(wQa(c)|0)+16|0);break}case 26:{tS(a,1973,b);tS(a,1897,(QQa(c)|0)+20|0);tS(a,1897,(QQa(c)|0)+16|0);tS(a,1897,(QQa(c)|0)+12|0);break}case 27:{tS(a,1974,b);tS(a,1897,(PQa(c)|0)+16|0);tS(a,1897,(PQa(c)|0)+12|0);break}case 15:{tS(a,1975,b);break}case 16:{tS(a,1976,b);tS(a,1897,(ORa(c)|0)+12|0);break}case 17:{tS(a,1977,b);tS(a,1897,(FRa(c)|0)+16|0);tS(a,1897,(FRa(c)|0)+12|0);break}case 18:{tS(a,1978,b);tS(a,1897,(DRa(c)|0)+16|0);tS(a,1897,(DRa(c)|0)+12|0);tS(a,1897,(DRa(c)|0)+8|0);break}case 19:{tS(a,1979,b);tS(a,1897,(dSa(c)|0)+8|0);break}case 20:{tS(a,1980,b);OR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,1981,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,1897,ODa(d,b)|0);c=b}}case 22:{tS(a,1982,b);break}case 23:{tS(a,1983,b);break}default:hb()}while(0);return}function tf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2375,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2342,ODa(d,b)|0);c=b}}case 2:{tS(a,2376,b);WR(a,(vSa(c)|0)+16|0);tS(a,2342,(vSa(c)|0)+12|0);tS(a,2342,(vSa(c)|0)+8|0);break}case 3:{tS(a,2377,b);tS(a,2342,(lSa(c)|0)+12|0);break}case 4:{tS(a,2378,b);WR(a,($Ra(c)|0)+16|0);WR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2379,b);tS(a,2342,(NRa(c)|0)+28|0);WR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2380,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2342,ODa(d,b)|0);c=b}}case 7:{tS(a,2381,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2342,ODa(d,b)|0);c=b}}case 8:{tS(a,2382,b);b=IQa(c)|0;tS(a,2342,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2342,ODa(d,b)|0);c=b}}case 9:{tS(a,2383,b);break}case 10:{tS(a,2384,b);tS(a,2342,(nRa(c)|0)+12|0);break}case 11:{tS(a,2385,b);break}case 12:{tS(a,2386,b);tS(a,2342,($Qa(c)|0)+12|0);break}case 13:{tS(a,2387,b);tS(a,2342,(bSa(c)|0)+24|0);break}case 14:{tS(a,2388,b);tS(a,2342,(PRa(c)|0)+28|0);tS(a,2342,(PRa(c)|0)+24|0);break}case 24:{tS(a,2389,b);tS(a,2342,(bRa(c)|0)+24|0);tS(a,2342,(bRa(c)|0)+20|0);break}case 25:{tS(a,2390,b);tS(a,2342,(wQa(c)|0)+24|0);tS(a,2342,(wQa(c)|0)+20|0);tS(a,2342,(wQa(c)|0)+16|0);break}case 26:{tS(a,2391,b);tS(a,2342,(QQa(c)|0)+20|0);tS(a,2342,(QQa(c)|0)+16|0);tS(a,2342,(QQa(c)|0)+12|0);break}case 27:{tS(a,2392,b);tS(a,2342,(PQa(c)|0)+16|0);tS(a,2342,(PQa(c)|0)+12|0);break}case 15:{tS(a,2393,b);break}case 16:{tS(a,2394,b);tS(a,2342,(ORa(c)|0)+12|0);break}case 17:{tS(a,2395,b);tS(a,2342,(FRa(c)|0)+16|0);tS(a,2342,(FRa(c)|0)+12|0);break}case 18:{tS(a,2396,b);tS(a,2342,(DRa(c)|0)+16|0);tS(a,2342,(DRa(c)|0)+12|0);tS(a,2342,(DRa(c)|0)+8|0);break}case 19:{tS(a,2397,b);tS(a,2342,(dSa(c)|0)+8|0);break}case 20:{tS(a,2398,b);WR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2399,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2342,ODa(d,b)|0);c=b}}case 22:{tS(a,2400,b);break}case 23:{tS(a,2401,b);break}default:hb()}while(0);return}function uf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,3103,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3102,ODa(d,b)|0);c=b}}case 2:{tS(a,3104,b);YR(a,(vSa(c)|0)+16|0);tS(a,3102,(vSa(c)|0)+12|0);tS(a,3102,(vSa(c)|0)+8|0);break}case 3:{tS(a,3105,b);tS(a,3102,(lSa(c)|0)+12|0);break}case 4:{tS(a,3106,b);YR(a,($Ra(c)|0)+16|0);YR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,3107,b);tS(a,3102,(NRa(c)|0)+28|0);YR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,3108,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3102,ODa(d,b)|0);c=b}}case 7:{tS(a,3109,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3102,ODa(d,b)|0);c=b}}case 8:{tS(a,3110,b);b=IQa(c)|0;tS(a,3102,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3102,ODa(d,b)|0);c=b}}case 9:{tS(a,3111,b);break}case 10:{tS(a,3112,b);tS(a,3102,(nRa(c)|0)+12|0);break}case 11:{tS(a,3113,b);break}case 12:{tS(a,3114,b);tS(a,3102,($Qa(c)|0)+12|0);break}case 13:{tS(a,3115,b);tS(a,3102,(bSa(c)|0)+24|0);break}case 14:{tS(a,3116,b);tS(a,3102,(PRa(c)|0)+28|0);tS(a,3102,(PRa(c)|0)+24|0);break}case 24:{tS(a,3117,b);tS(a,3102,(bRa(c)|0)+24|0);tS(a,3102,(bRa(c)|0)+20|0);break}case 25:{tS(a,3118,b);tS(a,3102,(wQa(c)|0)+24|0);tS(a,3102,(wQa(c)|0)+20|0);tS(a,3102,(wQa(c)|0)+16|0);break}case 26:{tS(a,3119,b);tS(a,3102,(QQa(c)|0)+20|0);tS(a,3102,(QQa(c)|0)+16|0);tS(a,3102,(QQa(c)|0)+12|0);break}case 27:{tS(a,3120,b);tS(a,3102,(PQa(c)|0)+16|0);tS(a,3102,(PQa(c)|0)+12|0);break}case 15:{tS(a,3121,b);break}case 16:{tS(a,3122,b);tS(a,3102,(ORa(c)|0)+12|0);break}case 17:{tS(a,3123,b);tS(a,3102,(FRa(c)|0)+16|0);tS(a,3102,(FRa(c)|0)+12|0);break}case 18:{tS(a,3124,b);tS(a,3102,(DRa(c)|0)+16|0);tS(a,3102,(DRa(c)|0)+12|0);tS(a,3102,(DRa(c)|0)+8|0);break}case 19:{tS(a,3125,b);tS(a,3102,(dSa(c)|0)+8|0);break}case 20:{tS(a,3126,b);YR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,3127,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,3102,ODa(d,b)|0);c=b}}case 22:{tS(a,3128,b);break}case 23:{tS(a,3129,b);break}default:hb()}while(0);return}function vf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,2192,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2191,ODa(d,b)|0);c=b}}case 2:{tS(a,2193,b);cS(a,(vSa(c)|0)+16|0);tS(a,2191,(vSa(c)|0)+12|0);tS(a,2191,(vSa(c)|0)+8|0);break}case 3:{tS(a,2194,b);tS(a,2191,(lSa(c)|0)+12|0);break}case 4:{tS(a,2195,b);cS(a,($Ra(c)|0)+16|0);cS(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,2196,b);tS(a,2191,(NRa(c)|0)+28|0);cS(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,2197,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2191,ODa(d,b)|0);c=b}}case 7:{tS(a,2198,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2191,ODa(d,b)|0);c=b}}case 8:{tS(a,2199,b);b=IQa(c)|0;tS(a,2191,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2191,ODa(d,b)|0);c=b}}case 9:{tS(a,2200,b);break}case 10:{tS(a,2201,b);tS(a,2191,(nRa(c)|0)+12|0);break}case 11:{tS(a,2202,b);break}case 12:{tS(a,2203,b);tS(a,2191,($Qa(c)|0)+12|0);break}case 13:{tS(a,2204,b);tS(a,2191,(bSa(c)|0)+24|0);break}case 14:{tS(a,2205,b);tS(a,2191,(PRa(c)|0)+28|0);tS(a,2191,(PRa(c)|0)+24|0);break}case 24:{tS(a,2206,b);tS(a,2191,(bRa(c)|0)+24|0);tS(a,2191,(bRa(c)|0)+20|0);break}case 25:{tS(a,2207,b);tS(a,2191,(wQa(c)|0)+24|0);tS(a,2191,(wQa(c)|0)+20|0);tS(a,2191,(wQa(c)|0)+16|0);break}case 26:{tS(a,2208,b);tS(a,2191,(QQa(c)|0)+20|0);tS(a,2191,(QQa(c)|0)+16|0);tS(a,2191,(QQa(c)|0)+12|0);break}case 27:{tS(a,2209,b);tS(a,2191,(PQa(c)|0)+16|0);tS(a,2191,(PQa(c)|0)+12|0);break}case 15:{tS(a,2210,b);break}case 16:{tS(a,2211,b);tS(a,2191,(ORa(c)|0)+12|0);break}case 17:{tS(a,2212,b);tS(a,2191,(FRa(c)|0)+16|0);tS(a,2191,(FRa(c)|0)+12|0);break}case 18:{tS(a,2213,b);tS(a,2191,(DRa(c)|0)+16|0);tS(a,2191,(DRa(c)|0)+12|0);tS(a,2191,(DRa(c)|0)+8|0);break}case 19:{tS(a,2214,b);tS(a,2191,(dSa(c)|0)+8|0);break}case 20:{tS(a,2215,b);cS(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,2216,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,2191,ODa(d,b)|0);c=b}}case 22:{tS(a,2217,b);break}case 23:{tS(a,2218,b);break}default:hb()}while(0);return}function wf(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[b>>2]|0;a:do switch(f[c>>2]|0){case 0:{hb();break}case 1:{tS(a,842,b);c=aSa(c)|0;d=c+12|0;c=Jbb(f[c+16>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,841,ODa(d,b)|0);c=b}}case 2:{tS(a,843,b);SR(a,(vSa(c)|0)+16|0);tS(a,841,(vSa(c)|0)+12|0);tS(a,841,(vSa(c)|0)+8|0);break}case 3:{tS(a,844,b);tS(a,841,(lSa(c)|0)+12|0);break}case 4:{tS(a,845,b);SR(a,($Ra(c)|0)+16|0);SR(a,($Ra(c)|0)+12|0);break}case 5:{tS(a,846,b);tS(a,841,(NRa(c)|0)+28|0);SR(a,(NRa(c)|0)+32|0);break}case 6:{tS(a,847,b);c=mSa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,841,ODa(d,b)|0);c=b}}case 7:{tS(a,848,b);c=XQa(c)|0;d=c+8|0;c=Jbb(f[c+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,841,ODa(d,b)|0);c=b}}case 8:{tS(a,849,b);b=IQa(c)|0;tS(a,841,(IQa(c)|0)+28|0);d=b+8|0;c=Jbb(f[b+12>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,841,ODa(d,b)|0);c=b}}case 9:{tS(a,850,b);break}case 10:{tS(a,851,b);tS(a,841,(nRa(c)|0)+12|0);break}case 11:{tS(a,852,b);break}case 12:{tS(a,853,b);tS(a,841,($Qa(c)|0)+12|0);break}case 13:{tS(a,854,b);tS(a,841,(bSa(c)|0)+24|0);break}case 14:{tS(a,855,b);tS(a,841,(PRa(c)|0)+28|0);tS(a,841,(PRa(c)|0)+24|0);break}case 24:{tS(a,856,b);tS(a,841,(bRa(c)|0)+24|0);tS(a,841,(bRa(c)|0)+20|0);break}case 25:{tS(a,857,b);tS(a,841,(wQa(c)|0)+24|0);tS(a,841,(wQa(c)|0)+20|0);tS(a,841,(wQa(c)|0)+16|0);break}case 26:{tS(a,858,b);tS(a,841,(QQa(c)|0)+20|0);tS(a,841,(QQa(c)|0)+16|0);tS(a,841,(QQa(c)|0)+12|0);break}case 27:{tS(a,859,b);tS(a,841,(PQa(c)|0)+16|0);tS(a,841,(PQa(c)|0)+12|0);break}case 15:{tS(a,860,b);break}case 16:{tS(a,861,b);tS(a,841,(ORa(c)|0)+12|0);break}case 17:{tS(a,862,b);tS(a,841,(FRa(c)|0)+16|0);tS(a,841,(FRa(c)|0)+12|0);break}case 18:{tS(a,863,b);tS(a,841,(DRa(c)|0)+16|0);tS(a,841,(DRa(c)|0)+12|0);tS(a,841,(DRa(c)|0)+8|0);break}case 19:{tS(a,864,b);tS(a,841,(dSa(c)|0)+8|0);break}case 20:{tS(a,865,b);SR(a,(ERa(c)|0)+8|0);break}case 21:{tS(a,866,b);c=cSa(c)|0;d=c+16|0;c=Jbb(f[c+20>>2]|0)|0;while(1){b=c+-1|0;if((c|0)<=0)break a;tS(a,841,ODa(d,b)|0);c=b}}case 22:{tS(a,867,b);break}case 23:{tS(a,868,b);break}default:hb()}while(0);return} +function C0a(a){a=a|0;HYa(a);return}function D0a(a){a=a|0;pya(a);f[a>>2]=42496;return}function E0a(a){a=a|0;Cqa(a);return}function F0a(a){a=a|0;tt(a);return}function G0a(a,b){a=a|0;b=b|0;f[a+36>>2]=b;return}function H0a(a){a=+a;return a-+J(a)!=.5?+v6a(a):+v6a(a/2.0)*2.0}function I0a(a,b){a=a|0;b=b|0;return zVa(a,b)|0}function J0a(a){a=a|0;a=s8(36)|0;qSa(a);return a|0}function K0a(a){a=a|0;return Qab(f[a+16>>2]|0)|0}function L0a(a){a=a|0;return Jta(a)|0}function M0a(a){a=a|0;Qha(a);Cbb(a);return}function N0a(a){a=a|0;pya(a);f[a>>2]=45348;return}function O0a(a){a=a|0;nYa(a);f[a>>2]=43312;return}function P0a(a){a=a|0;waa(a);return}function Q0a(a){a=a|0;SY(a);return}function R0a(a,b,c){a=a|0;b=b|0;c=c|0;return UT(a,b,c)|0}function S0a(){f[32763]=0;f[32762]=49924;return}function T0a(){Ca(107151,106511,526,107188)}function U0a(a){a=a|0;pya(a);f[a>>2]=43352;return}function V0a(a){a=a|0;nYa(a);f[a>>2]=43392;return}function W0a(a,b){a=a|0;b=b|0;b=HZ(a,b,10,-2147483648,0)|0;return b|0}function X0a(a){a=a|0;if(!a)return;else M4()}function Y0a(a,b){a=a|0;b=b|0;return b-a>>2|0}function Z0a(a,c){a=a|0;c=c|0;b[a>>0]=c;return}function _0a(a,b){a=a|0;b=b|0;f[a>>2]=b+144;return}function $0a(a){a=a|0;a=s8(44)|0;aWa(a);return a|0}function a1a(a){a=a|0;EXa(a);Bab(a+16|0);return}function b1a(a){a=a|0;VGa(a);Cbb(a);return}function c1a(a){a=a|0;pya(a);f[a>>2]=44220;return}function d1a(a){a=a|0;f[a+4096>>2]=a;return}function e1a(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$(19)}function f1a(){DUa(132632);return}function g1a(a){a=a|0;return a+-12|0}function h1a(a){a=a|0;return fJa(a)|0}function i1a(a){a=a|0;_7(a+8|0);return}function j1a(a){a=a|0;Bab(a);Bab(a+4|0);return}function k1a(a,b){a=a|0;b=b|0;kNa(a,b,0);return}function l1a(a){a=a|0;b[a+52>>0]=1;return}function m1a(a){a=a|0;pya(a);f[a>>2]=42816;return}function n1a(a){a=a|0;jv(a);return}function o1a(a){a=a|0;uoa(a);return}function p1a(a){a=a|0;r2a(a);return}function q1a(a){a=a|0;f[a+4096>>2]=0;return}function r1a(a){a=a|0;return (((a|32)+-97|0)>>>0<6|(abb(a)|0)!=0)&1|0}function s1a(){var a=0;a=f[33829]|0;f[33829]=a+0;return a|0}function t1a(a){a=a|0;B9(a);return}function u1a(a){a=a|0;r6a(a);Cbb(a);return}function v1a(){jZa();return}function w1a(a){a=a|0;b[a+26>>0]=1;return}function x1a(a){a=a|0;ACa(a);Cbb(a);return}function y1a(a){a=a|0;Oqa(a);Cbb(a);return}function z1a(a){a=a|0;Xoa(a);Cbb(a);return}function A1a(a){a=a|0;Nva(a);Cbb(a);return}function B1a(a,b,c){a=a|0;b=b|0;c=c|0;iy(a,b,c);return a|0}function C1a(a,b){a=a|0;b=b|0;return Pb(a|0,b|0)|0}function D1a(a,b){a=a|0;b=b|0;return jb(a|0,b|0)|0}function E1a(a){a=a|0;return DWa(a)|0}function F1a(a){a=a|0;return (Jbb(f[a+8>>2]|0)|0)!=65535|0}function G1a(a){a=a|0;return ((a|0)>31?-1:-1>>>(32-a|0))|0}function H1a(a,b,c){a=a|0;b=b|0;c=c|0;return Kaa(a,b,c)|0}function I1a(){var a=0;a=f[12575]|0;f[12575]=a+0;return a|0}function J1a(a){a=a|0;nU(a);Cbb(a);return}function K1a(a){a=a|0;return a+4|0}function L1a(a,b){a=a|0;b=b|0;f[a>>2]=b;return}function M1a(a){a=a|0;ppa(a);Cbb(a);return}function N1a(a){a=a|0;_na(a);Cbb(a);return}function O1a(a){a=a|0;aTa(a);Cbb(a);return}function P1a(a){a=a|0;if(a|0)Cbb(a);return}function Q1a(a,b){a=a|0;b=b|0;return b-a|0}function R1a(a){a=a|0;v_a(a);return}function S1a(a){a=a|0;PWa(a);return}function T1a(a){a=a|0;r1(a);return}function U1a(a){a=a|0;uXa(a);return}function V1a(a){a=a|0;c0a(a);return}function W1a(a){a=a|0;return Kc(a)|0}function X1a(a){a=a|0;xUa(a);Cbb(a);return}function Y1a(a){a=a|0;yUa(a);Cbb(a);return}function Z1a(a){a=a|0;pya(a);f[a>>2]=43940;return}function _1a(a){a=a|0;return (Jbb(f[a+12>>2]|0)|0)!=-1|0}function $1a(a){a=a|0;vLa(a);Cbb(a);return}function a2a(a){a=a|0;oCa(a);Cbb(a);return}function b2a(a){a=a|0;dZ(a);Cbb(a);return}function c2a(){_h();return}function d2a(a){a=a|0;b[a+27>>0]=1;return}function e2a(a){a=a|0;bZa(a);Cbb(a);return}function f2a(a,b){a=a|0;b=b|0;return (a|0)!=(b|0)|0}function g2a(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function h2a(a){a=a|0;f[a>>2]=3;p[a+8>>3]=0.0;return}function i2a(a){a=a|0;return (a|0)!=-1|0}function j2a(a){a=a|0;UWa(a);return}function k2a(a){a=a|0;uDa(a);Cbb(a);return}function l2a(a){a=a|0;fGa(a);Cbb(a);return}function m2a(){f[33199]=0;f[33200]=0;f[33201]=0;return}function n2a(){f[33196]=0;f[33197]=0;f[33198]=0;return}function o2a(){f[32963]=0;f[32964]=0;f[32965]=0;return}function p2a(){Nra();return}function q2a(){Ora();return}function r2a(a){a=a|0;f[a+4>>2]=f[a+8>>2];return}function s2a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(6);return 0}function t2a(a){a=a|0;return (a?31-(_(a^a-1)|0)|0:32)|0}function u2a(a){a=a|0;f[a+4>>2]=-1;return}function v2a(a){a=a|0;return (a|0)!=0&(a|0)!=5|0}function w2a(a,b){a=a|0;b=b|0;return bc[a&511](b|0)|0}function x2a(a,b,c){a=a|0;b=b|0;c=c|0;return R0a(a,b,c)|0}function y2a(a){a=a|0;Fa(a|0)|0;M4()}function z2a(a){a=a|0;return f[a+12>>2]|0}function A2a(a,b){a=a|0;b=b|0;return b<<24>>24|0}function B2a(a,b){a=a|0;b=b|0;return ((a|0)==0?b:a)|0}function C2a(a){a=a|0;Sya(a+16|0);return}function D2a(a){a=a|0;NI(a);return}function E2a(a){a=a|0;B9(a);Cbb(a);return}function F2a(a){a=a|0;wRa(a);Cbb(a);return}function G2a(a){a=a|0;yZa(a);Cbb(a);return}function H2a(a){a=a|0;return f[a+8>>2]|0}function I2a(a){a=a|0;return ((a|0)<10?48:87)+a&255|0}function J2a(a){a=a|0;return Tb(a|0)|0}function K2a(a){a=a|0;r6a(a);return}function L2a(a){a=a|0;return b[a+9>>0]|0}function M2a(a){a=a|0;return b[a+8>>0]|0}function N2a(a){a=a|0;return -1}function O2a(a){a=a|0;return (J8(a,87467)|0)==0|0}function P2a(a){a=a|0;d7(a);Cbb(a);return}function Q2a(a){a=a|0;C9(a);Cbb(a);return}function R2a(a){a=a|0;dQa(a);Cbb(a);return}function S2a(a){a=a|0;return (a|0)==8|0}function T2a(a){a=a|0;YXa(a);Cbb(a);return}function U2a(a){a=a|0;return Mb(a|0)|0}function V2a(a){a=a|0;COa(a);return}function W2a(a,b){a=a|0;b=b|0;return +$b[a&3](b|0)}function X2a(a){a=a|0;if(b0a(a)|0)rg(a);return}function Y2a(a){a=a|0;return Jbb(f[a+4>>2]|0)|0}function Z2a(a){a=a|0;_Ya(a);return}function _2a(a){a=a|0;jIa(a);Cbb(a);return}function $2a(a){a=a|0;tga(a);Cbb(a);return}function a3a(a){a=a|0;b[a+20>>0]=1;return}function b3a(a){a=a|0;return Nb(a|0)|0}function c3a(){kNa(132848,116837,1);return}function d3a(){kNa(132852,116844,1);return}function e3a(){kNa(132320,117369,1);return}function f3a(){kNa(132856,116850,1);return}function g3a(){kNa(132316,117385,1);return}function h3a(){kNa(132860,123563,1);return}function i3a(){kNa(132312,117401,1);return}function j3a(){kNa(132864,116854,1);return}function k3a(){kNa(132308,117417,1);return}function l3a(){kNa(132868,116858,1);return}function m3a(){kNa(132304,117433,1);return}function n3a(){kNa(132872,116866,1);return}function o3a(){kNa(132300,117448,1);return}function p3a(){kNa(132876,116871,1);return}function q3a(){kNa(132296,117465,1);return}function r3a(){kNa(132880,116873,1);return}function s3a(){kNa(132292,117482,1);return}function t3a(){kNa(132884,123342,1);return}function u3a(){kNa(132288,117501,1);return}function v3a(){kNa(132888,116875,1);return}function w3a(){kNa(132284,117520,1);return}function x3a(){kNa(132892,116877,1);return}function y3a(){kNa(132280,117543,1);return}function z3a(){kNa(132896,118452,1);return}function A3a(){kNa(132276,117566,1);return}function B3a(){kNa(132900,123274,1);return}function C3a(){kNa(132272,117585,1);return}function D3a(){kNa(132904,116879,1);return}function E3a(){kNa(132268,117604,1);return}function F3a(){kNa(132908,135337,1);return}function G3a(){kNa(132264,117620,1);return}function H3a(){kNa(132912,116888,1);return}function I3a(){kNa(132260,117636,1);return}function J3a(){kNa(132916,116891,1);return}function K3a(){kNa(132256,117652,1);return}function L3a(){kNa(132920,116899,1);return}function M3a(){kNa(132252,117668,1);return}function N3a(){kNa(132924,116907,1);return}function O3a(){kNa(132248,117686,1);return}function P3a(){kNa(132928,116915,1);return}function Q3a(){kNa(132244,117704,1);return}function R3a(){kNa(132932,116922,1);return}function S3a(){kNa(132240,117719,1);return}function T3a(){kNa(132936,116930,1);return}function U3a(){kNa(132236,117734,1);return}function V3a(){kNa(132940,116937,1);return}function W3a(){kNa(132232,117749,1);return}function X3a(){kNa(132944,116944,1);return}function Y3a(){kNa(132228,117764,1);return}function Z3a(){kNa(132948,116950,1);return}function _3a(){kNa(132224,117773,1);return}function $3a(){kNa(132952,116964,1);return}function a4a(){kNa(132220,117782,1);return}function b4a(){kNa(132956,123389,1);return}function c4a(){kNa(132216,117792,1);return}function d4a(){kNa(132960,123457,1);return}function e4a(){kNa(132212,117803,1);return}function f4a(){kNa(132964,123292,1);return}function g4a(){kNa(132208,117814,1);return}function h4a(){kNa(132968,123452,1);return}function i4a(){kNa(132204,117825,1);return}function j4a(){kNa(132972,123367,1);return}function k4a(){kNa(132200,117835,1);return}function l4a(){kNa(132976,123411,1);return}function m4a(){return 1073741823}function n4a(a,b){a=a|0;b=b|0;f[a>>2]=b;return}function o4a(a){a=a|0;return (a+-1|0)>>>0<2|0}function p4a(a){a=a|0;b[a+40>>0]=1;return}function q4a(a){a=a|0;return (a|0)==11|0}function r4a(a,b){a=a|0;b=b|0;u=a;v=b}function s4a(){kNa(132196,117844,1);return}function t4a(){kNa(132980,123377,1);return}function u4a(){kNa(132192,117854,1);return}function v4a(){kNa(132984,123310,1);return}function w4a(){kNa(132188,117865,1);return}function x4a(){kNa(132988,123386,1);return}function y4a(){kNa(132184,117869,1);return}function z4a(){kNa(132992,123380,1);return}function A4a(){kNa(132180,117876,1);return}function B4a(){kNa(132996,123308,1);return}function C4a(){kNa(132176,117887,1);return}function D4a(){kNa(132172,117895,1);return}function E4a(){kNa(133004,123414,1);return}function F4a(){kNa(132168,117904,1);return}function G4a(){kNa(133008,123372,1);return}function H4a(){kNa(132164,117922,1);return}function I4a(){kNa(133012,123294,1);return}function J4a(){kNa(132160,117926,1);return}function K4a(){kNa(133016,123419,1);return}function L4a(){kNa(132156,117931,1);return}function M4a(){kNa(133020,123396,1);return}function N4a(){kNa(132152,117936,1);return}function O4a(){kNa(133024,123428,1);return}function P4a(){kNa(132148,117942,1);return}function Q4a(){kNa(133028,116968,1);return}function R4a(){kNa(132144,117946,1);return}function S4a(){kNa(133032,116981,1);return}function T4a(){kNa(132140,117958,1);return}function U4a(){kNa(133036,116994,1);return}function V4a(){kNa(132136,117967,1);return}function W4a(){kNa(133040,117007,1);return}function X4a(){kNa(132132,117976,1);return}function Y4a(){kNa(133044,117022,1);return}function Z4a(){kNa(132128,117985,1);return}function _4a(){kNa(133048,117037,1);return}function $4a(){kNa(132124,117994,1);return}function a5a(){kNa(133052,117047,1);return}function b5a(){kNa(132120,118008,1);return}function c5a(){kNa(133056,117814,1);return}function d5a(){kNa(132116,118021,1);return}function e5a(){kNa(133060,117051,1);return}function f5a(){kNa(132112,118033,1);return}function g5a(){kNa(133064,117063,1);return}function h5a(){kNa(132108,118044,1);return}function i5a(){kNa(133068,117077,1);return}function j5a(){kNa(132104,118058,1);return}function k5a(){kNa(133072,117090,1);return}function l5a(){kNa(132100,118071,1);return}function m5a(){kNa(133076,117104,1);return}function n5a(){kNa(132096,118083,1);return}function o5a(){kNa(133080,117119,1);return}function p5a(){kNa(132092,118094,1);return}function q5a(){kNa(133084,117131,1);return}function r5a(){kNa(132088,118102,1);return}function s5a(){kNa(133088,118773,1);return}function t5a(){kNa(132084,118106,1);return}function u5a(){kNa(133092,118765,1);return}function v5a(){kNa(132080,118110,1);return}function w5a(){kNa(133096,117140,1);return}function x5a(){kNa(132076,118119,1);return}function y5a(){kNa(133100,117144,1);return}function z5a(){kNa(132072,118126,1);return}function A5a(){kNa(133104,117151,1);return}function B5a(){kNa(132068,118132,1);return}function C5a(){kNa(133108,117158,1);return}function D5a(){kNa(132064,118137,1);return}function E5a(){kNa(133112,117167,1);return}function F5a(){kNa(132060,118142,1);return}function G5a(){kNa(133116,117173,1);return}function H5a(){kNa(132056,118162,1);return}function I5a(){kNa(133120,117179,1);return}function J5a(){kNa(132052,118172,1);return}function K5a(){kNa(133124,117184,1);return}function L5a(){kNa(132048,118184,1);return}function M5a(){kNa(133128,117188,1);return}function N5a(){kNa(132044,118197,1);return}function O5a(){kNa(133132,117192,1);return}function P5a(){kNa(132040,118210,1);return}function Q5a(){kNa(133136,117196,1);return}function R5a(){kNa(132036,118222,1);return}function S5a(){kNa(133140,117199,1);return}function T5a(){kNa(132032,118234,1);return}function U5a(){kNa(133144,117205,1);return}function V5a(){kNa(132028,118245,1);return}function W5a(){kNa(133148,117210,1);return}function X5a(){kNa(132024,118256,1);return}function Y5a(){kNa(133152,117213,1);return}function Z5a(){kNa(132020,118267,1);return}function _5a(){kNa(133156,117220,1);return}function $5a(a){a=a|0;return (a|0)==-1|0}function a6a(a){a=a|0;return 2147483647}function b6a(a){a=a|0;XPa(a);Cbb(a);return}function c6a(a){a=a|0;FUa(a);Cbb(a);return}function d6a(a){a=a|0;return (a|0)==10|0}function e6a(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$(18)}function f6a(a){a=a|0;return vbb(a|0)|0}function g6a(){kNa(132016,118277,1);return}function h6a(){kNa(133160,117227,1);return}function i6a(){kNa(133e3,123344,1);return}function j6a(){kNa(132012,118711,1);return}function k6a(){kNa(133164,117239,1);return}function l6a(){kNa(132008,118773,1);return}function m6a(){kNa(133168,117245,1);return}function n6a(){kNa(132004,118285,1);return}function o6a(){kNa(133172,117249,1);return}function p6a(){kNa(132480,67151,1);return}function q6a(){kNa(133176,117255,1);return}function r6a(a){a=a|0;bZa(a);return}function s6a(a){a=a|0;b[a+1>>0]=0;return}function t6a(a){a=a|0;return (a+-3|0)>>>0<2|0}function u6a(a){a=a|0;return (a|0)==9|0}function v6a(a){a=+a;return a>=0.0?+J(a+.5):+W(a-.5)}function w6a(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function x6a(){kNa(133200,117350,1);return}function y6a(){kNa(132e3,118294,1);return}function z6a(){return ((f[f[11692]>>2]|0)==0?1:4)|0}function A6a(a){a=a|0;f[a>>2]=46964;return}function B6a(a){a=a|0;return xNa(a)|0}function C6a(a){a=a|0;oUa(a);return}function D6a(a){a=a|0;return (a|0)==18|0}function E6a(a){a=a|0;return (a|0)==20|0}function F6a(a){a=a|0;return (a|0)==17|0}function G6a(a,b){a=a|0;b=b|0;oc[a&1023](b|0)}function H6a(){kNa(131996,118298,1);return}function I6a(){kNa(132484,67161,1);return}function J6a(){Hj(132808,116711);return}function K6a(){kNa(132840,123340,1);return}function L6a(){kNa(132844,123464,1);return}function M6a(){kNa(133180,117261,1);return}function N6a(a){a=a|0;return (a|0)==16|0}function O6a(a){a=a|0;return (a|0)==15|0}function P6a(a){a=a|0;oNa(a);return}function Q6a(a){a=a|0;LVa(a);Cbb(a);return}function R6a(a){a=a|0;return (a|0)==4|0}function S6a(a){a=a|0;return (a|0)==19|0}function T6a(a){a=a|0;return a+12|0}function U6a(){T7a();return}function V6a(a,b){a=a|0;b=b|0;return FNa(a,b)|0}function W6a(){kNa(133184,117270,1);return}function X6a(){kNa(133188,117291,1);return}function Y6a(){kNa(133192,117312,1);return}function Z6a(){kNa(133196,117331,1);return}function _6a(a){a=a|0;return 4}function $6a(a,b){a=a|0;b=b|0;return b|0}function a7a(){f[32964]=(f[32964]|0)+-4;return}function b7a(a){a=a|0;return (a|0)==22|0}function c7a(){return (h7a()|0)>0|0}function d7a(a){a=a|0;return a&255|0}function e7a(a){a=a|0;return 127}function f7a(a){a=a|0;return (a|1|0)==21|0}function g7a(a,b){a=a|0;b=b|0;return +(+VW(a,b,2))}function h7a(){return (Qa()|0)&1|0}function i7a(a){a=a|0;return mTa(a)|0}function j7a(a){a=a|0;return dV(a)|0}function k7a(a){a=a|0;f[a+4>>2]=5;return}function l7a(a,b){a=a|0;b=b|0;return +(+VW(a,b,0))}function m7a(a,b){a=a|0;b=b|0;return +(+VW(a,b,1))}function n7a(a,b){a=a|0;b=b|0;iE(a,b);return a|0}function o7a(a,b){a=a|0;b=b|0;return}function p7a(a,b,c){a=a|0;b=b|0;c=c|0;$(5);return 0}function q7a(){k1a(132464,67107);return}function r7a(){k1a(132468,67118);return}function s7a(){k1a(132576,67182);return}function t7a(){k1a(132580,67191);return}function u7a(){k1a(132592,67218);return}function v7a(){k1a(132652,117119);return}function w7a(){k1a(132472,67135);return}function x7a(){k1a(132584,67200);return}function y7a(){k1a(132596,67229);return}function z7a(){k1a(132668,67350);return}function A7a(){k1a(132672,67358);return}function B7a(a){a=a|0;return 122133}function C7a(a){a=a|0;return a<<24>>24!=0|0}function D7a(a){a=a|0;return (a|0)==7|0}function E7a(a){a=a|0;return +(+n[a>>2])}function F7a(a){a=a|0;return +(+p[a>>3])}function G7a(a){a=a|0;NXa(a);return}function H7a(a){a=a|0;return fY(a,f[11692]|0)|0}function I7a(){k1a(132676,67366);return}function J7a(){k1a(132612,67279);return}function K7a(){k1a(132680,67374);return}function L7a(){k1a(132616,67288);return}function M7a(){k1a(132684,67382);return}function N7a(){k1a(132620,67297);return}function O7a(){k1a(132648,67338);return}function P7a(){k1a(132688,67390);return}function Q7a(){k1a(132624,67306);return}function R7a(){k1a(132660,93542);return}function S7a(){k1a(132692,67398);return}function T7a(){k1a(132604,117173);return}function U7a(a){a=a|0;return 122258}function V7a(a){a=a|0;return a<<24>>24==0|0}function W7a(a){a=a|0;return f[a>>2]|0}function X7a(a){a=a|0;return (a|0)==5|0}function Y7a(a,b){a=a|0;b=b|0;return +(+g7a(a,b))}function Z7a(){k1a(132656,117131);return}function _7a(){k1a(132476,67146);return}function $7a(){k1a(132588,67209);return}function a8a(){k1a(131796,117184);return}function b8a(){k1a(132600,67238);return}function c8a(){k1a(131768,118106);return}function d8a(){k1a(131764,118102);return}function e8a(){k1a(132608,67253);return}function f8a(){k1a(132628,67315);return}function g8a(){k1a(132644,67324);return}function h8a(){k1a(132664,93548);return}function i8a(){k1a(132696,67406);return}function j8a(){k1a(132352,116866);return}function k8a(){k1a(132364,118285);return}function l8a(){k1a(132368,118294);return}function m8a(){k1a(132372,117205);return}function n8a(){k1a(132384,117249);return}function o8a(){k1a(132396,117179);return}function p8a(){T8a();return}function q8a(){k1a(131848,51347);return}function r8a(){k1a(131844,51319);return}function s8a(){k1a(131840,51298);return}function t8a(){k1a(131836,51282);return}function u8a(){k1a(131832,51266);return}function v8a(){k1a(131828,51250);return}function w8a(){k1a(131824,51235);return}function x8a(){k1a(131820,51219);return}function y8a(){k1a(131816,51201);return}function z8a(){k1a(131812,51184);return}function A8a(){k1a(131808,93103);return}function B8a(){k1a(131804,93100);return}function C8a(){k1a(131800,93096);return}function D8a(){k1a(131792,93092);return}function E8a(){k1a(131788,51168);return}function F8a(){k1a(131784,51159);return}function G8a(){k1a(131780,93542);return}function H8a(){k1a(131776,93548);return}function I8a(){k1a(131772,51151);return}function J8a(){k1a(131760,51142);return}function K8a(){k1a(131756,51134);return}function L8a(){k1a(131752,51127);return}function M8a(){k1a(131748,51120);return}function N8a(){k1a(131744,51113);return}function O8a(){k1a(131740,51106);return}function P8a(){k1a(131736,51099);return}function Q8a(){k1a(131732,51092);return}function R8a(){k1a(131728,51086);return}function S8a(){k1a(131724,51080);return}function T8a(){XGa(132756);return}function U8a(a,b){a=a|0;b=b|0;return +(+l7a(a,b))}function V8a(a,b){a=a|0;b=b|0;return +(+m7a(a,b))}function W8a(){Da(133828);return}function X8a(){k1a(131720,51074);return}function Y8a(){k1a(131716,51068);return}function Z8a(){k1a(131712,51062);return}function _8a(){k1a(131708,51056);return}function $8a(){k1a(131704,51043);return}function a9a(){k1a(131540,117037);return}function b9a(){k1a(131700,51030);return}function c9a(){k1a(131696,51020);return}function d9a(){k1a(131692,51011);return}function e9a(){k1a(131688,51002);return}function f9a(){k1a(131684,50993);return}function g9a(){k1a(131680,50984);return}function h9a(){k1a(132324,66958);return}function i9a(){k1a(131676,50976);return}function j9a(){k1a(132328,73273);return}function k9a(){k1a(131672,50968);return}function l9a(){k1a(132332,66963);return}function m9a(){k1a(131668,50960);return}function n9a(){k1a(132336,66972);return}function o9a(){k1a(131664,50952);return}function p9a(){k1a(132340,66976);return}function q9a(){k1a(131536,117047);return}function r9a(){k1a(131660,50944);return}function s9a(){k1a(132344,66996);return}function t9a(){k1a(131656,50936);return}function u9a(){k1a(132348,67004);return}function v9a(){k1a(131652,50928);return}function w9a(){k1a(131648,50920);return}function x9a(){k1a(132356,75309);return}function y9a(){k1a(131644,50911);return}function z9a(){k1a(132360,75314);return}function A9a(){k1a(131640,50902);return}function B9a(){k1a(131636,50892);return}function C9a(){k1a(131632,50884);return}function D9a(){k1a(131628,50876);return}function E9a(){k1a(132376,67007);return}function F9a(){k1a(131624,50868);return}function G9a(){k1a(132380,67012);return}function H9a(){k1a(131620,50860);return}function I9a(){k1a(131616,50852);return}function J9a(){k1a(132388,67018);return}function K9a(){k1a(131612,50844);return}function L9a(){k1a(132392,67032);return}function M9a(){k1a(131608,50836);return}function N9a(){k1a(131604,50828);return}function O9a(){k1a(132400,97308);return}function P9a(){k1a(131600,50821);return}function Q9a(){k1a(132404,67044);return}function R9a(){k1a(131596,50814);return}function S9a(){k1a(132408,67050);return}function T9a(){k1a(131592,50805);return}function U9a(){k1a(132412,80869);return}function V9a(){k1a(131588,50796);return}function W9a(){k1a(132416,67055);return}function X9a(){k1a(131584,50788);return}function Y9a(){k1a(132420,67062);return}function Z9a(){k1a(131580,50780);return}function _9a(){k1a(132424,67069);return}function $9a(){k1a(131576,50773);return}function aab(){k1a(132428,67077);return}function bab(){k1a(131572,50765);return}function cab(){k1a(132432,81457);return}function dab(){k1a(131568,50756);return}function eab(){k1a(132436,67082);return}function fab(){k1a(131564,50747);return}function gab(){k1a(132440,80979);return}function hab(){k1a(131560,50738);return}function iab(){k1a(132444,80864);return}function jab(){k1a(131556,50729);return}function kab(){k1a(132448,80753);return}function lab(){k1a(131552,50721);return}function mab(){k1a(132452,80746);return}function nab(){k1a(131548,50713);return}function oab(){k1a(132456,67089);return}function pab(){k1a(131544,50705);return}function qab(){k1a(132460,67097);return}function rab(){f[32818]=50172;return}function sab(){f[32814]=50136;return}function tab(){g8a();return}function uab(){k1a(131532,50696);return}function vab(){k1a(131528,50687);return}function wab(){k1a(131524,50677);return}function xab(a){a=a|0;f[a>>2]=50392;return}function yab(a){a=a|0;return 119477}function zab(a){a=a|0;return (a|0)==1|0}function Aab(a){a=a|0;return (a|0)==6|0}function Bab(a){a=a|0;Sab(a);return}function Cab(a){a=a|0;f[a>>2]=50532;return}function Dab(a){a=a|0;return (a|0)==2|0}function Eab(a){a=a|0;Bab(a);return}function Fab(a){a=a|0;return a+15&-16|0}function Gab(){p8a();return}function Hab(){e8a();return}function Iab(a,b){a=+a;b=+b;return +(+bga(a,b))}function Jab(){Br();return}function Kab(){k1a(131520,50668);return}function Lab(){return 2147483647}function Mab(a){a=a|0;return 118932}function Nab(a){a=a|0;return (a|0)==3|0}function Oab(a){a=a|0;return (a|0)==0|0}function Pab(a,b){a=+a;b=b|0;return +(+_U(a,b))}function Qab(a){a=a|0;return (a|0)!=0|0}function Rab(a){a=a|0;b[a>>0]=0;return}function Sab(a){a=a|0;f[a>>2]=0;return}function Tab(a){a=a|0;return ac[a&127]()|0}function Uab(a,b,c){a=a|0;b=b|0;c=c|0;$(17)}function Vab(){Z_();return}function Wab(){f1a();return}function Xab(a,b){a=+a;b=b|0;return +(+nV(a,b))}function Yab(){Sab(133204);return}function Zab(a){a=a|0;return a+184|0}function _ab(){Vab();return}function $ab(a){a=a|0;return (a+-65|0)>>>0<26|0}function abb(a){a=a|0;return (a+-48|0)>>>0<10|0}function bbb(a){a=a|0;return a+8|0}function cbb(a){a=a|0;return a+16|0}function dbb(a){a=a|0;return 1}function ebb(a,b){a=+a;b=+b;return +(+Bl(a,b))}function fbb(a){a=a|0;return Z9(a)|0}function gbb(a){a=+a;return a%1.0==0.0|0}function hbb(a){a=a|0;hb();return 0}function ibb(){ei();return}function jbb(){Jab();return}function kbb(a,b){a=a|0;b=b|0;$(4);return 0}function lbb(a){a=a|0;return 122869}function mbb(a){a=a|0;hb()}function nbb(a){a=a|0;nc[a&63]()}function obb(a,b){a=a|0;b=+b;$(3);return 0}function pbb(a){a=a|0;return 123005}function qbb(a){a=a|0;return r1a(a)|0}function rbb(a){a=a|0;return abb(a)|0}function sbb(){Ma()}function tbb(a,b){a=a|0;b=b|0;$(16)}function ubb(a){a=a|0;Jb()}function vbb(a){a=a|0;return 0}function wbb(a){a=a|0;xb(a|0)}function xbb(){Ga()}function ybb(a){a=a|0;return s8(a)|0}function zbb(a){a=a|0;Cbb(a);return}function Abb(){return 132700}function Bbb(a){a=a|0;u=a}function Cbb(a){a=a|0;rg(a);return}function Dbb(a){a=a|0;I=a}function Ebb(a){a=a|0;return}function Fbb(){cb(133796);return}function Gbb(){Na()}function Hbb(a){a=a|0;$(0);return 0.0}function Ibb(a){a=a|0;$(2);return 0}function Jbb(a){a=a|0;return a|0}function Kbb(){Sa(133796);return}function Lbb(){return}function Mbb(){return I|0}function Nbb(){return u|0}function Obb(a){a=a|0;$(15)}function Pbb(){return 133828}function Qbb(){return 46580}function Rbb(){hb()}function Sbb(){$(1);return 0}function Tbb(){return 0}function Ubb(){$(14)} // EMSCRIPTEN_END_FUNCS -var $b=[zbb,ONa,NNa,zbb];var ac=[Kbb,oVa,PRa,NGa,OGa,wGa,QTa,NVa,jFa,DKa,PIa,lEa,_Za,KFa,wIa,kBa,kna,kIa,MGa,KUa,lFa,kFa,gLa,vHa,uHa,z$a,LMa,GDa,JFa,vGa,_Fa,g_a,nYa,Y$a,uYa,p_a,SKa,$Za,eDa,mFa,uGa,HLa,IFa,MVa,kUa,TEa,ZJa,tGa,jIa,MSa,Bxa,nTa,dSa,DSa,GRa,OQa,L_a,XYa,DVa,oJa,Ewa,kxa,QJa,QIa,WN,gV,FOa,jAa,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb,Kbb];var bc=[Abb,nbb,nbb,TX,wja,Xab,Mua,Xab,nbb,$ab,LAa,LSa,Xab,Nwa,Xab,$va,Xab,kia,Xab,yma,Fba,ERa,Yga,uRa,Xga,tRa,Xab,u0a,Xab,V0a,nbb,lpa,Xab,C0a,Xab,wZa,tMa,RSa,Xab,fRa,Xab,dRa,Xab,eRa,Xab,gRa,Xab,cRa,X9,Fxa,OTa,nbb,Xab,oQa,nbb,pn,nl,Xab,JXa,Xab,NSa,Xab,J$a,Xab,HZa,Xab,Tya,Xab,cYa,Xab,NYa,nbb,IXa,aLa,DRa,WGa,uDa,EWa,VGa,uDa,DWa,UGa,uDa,CWa,Xab,iXa,nbb,Xab,DUa,Xab,oZa,Xab,IZa,Xab,OYa,nbb,Xab,pXa,Jba,uPa,nbb,Xab,kGa,Xab,s_a,nbb,nbb,jYa,haa,LJa,oca,HMa,Xab,BHa,Xab,Ema,Xab,ITa,Xab,fxa,Xab,PYa,nbb,Xab,bka,Xab,i0a,Xab,aHa,Xab,VSa,Xab,XZa,Xab,uXa,Xab,JZa,Xab,j_a,Xab,i_a,Xab,cWa,YYa,jMa,fXa,w_a,rDa,Eab,F2a,nbb,nbb,F2a,Hoa,qab,Q2a,mN,mN,H$a,r0a,O$a,s0a,S_a,vLa,$Ka,wLa,$ka,_ka,Zka,ala,S_a,KLa,WKa,LLa,Cla,Bla,Ala,Dla,Y6a,Y6a,nbb,Y6a,Y6a,nbb,U5a,U5a,nbb,U5a,U5a,nbb,nbb,nbb,S6a,oha,nbb,Lwa,E2a,D2a,A2a,s2a,Xab,Xab,Xab,nbb,nbb,S6a,a8a,t8a,dbb,Q2a,hbb,In,n8,cIa,pPa,oPa,iaa,XRa,MCa,zRa,XQa,$Ra,qNa,mOa,rqa,ORa,WT,du,Aha,Yu,BTa,eQa,ZVa,ATa,PPa,qUa,pUa,ZTa,kWa,BZ,XTa,LRa,FPa,nSa,YTa,Xy,rUa,Wy,IUa,fVa,x1a,BRa,Eia,LOa,Ppa,_T,LOa,iRa,Dxa,W$,qSa,gSa,WRa,IRa,hSa,SQa,DQa,oRa,WQa,YRa,ara,KRa,rQa,YQa,LQa,KQa,JRa,ARa,yRa,_Ra,ZRa,HQ,xWa,Dga,a$,ko,VVa,m8,Ty,m6,iUa,s3,h7,PS,XXa,jF,jF,XW,OB,OSa,ky,bP,nq,Ky,mF,Ni,lD,Fr,ix,Rz,Dm,Ns,qh,jRa,vF,xh,WFa,S5,yv,Qw,LPa,jJa,d_a,c8,Ec,x0,ZD,M2a,V2a,B2a,Z5a,Z5a,Z5a,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb,Abb];var cc=[gbb,Bm];var dc=[cbb,nJa,nJa,nJa,nJa,nJa,nJa,nJa,nJa,aG,eo,MFa,Hma,qEa,_Da,ZDa,UFa,t0a,zHa,MN,tn,SHa,t0a,pEa,zLa,yLa,xLa,KAa,uta,Zxa,vPa,o0a,o0a,o0a,o0a,lv,$u,Pv,Jv,wTa,QSa,T6a,zVa,AVa,t2a,g0a,Cea,YX,Sma,vZ,a0,$c,VTa,jQa,YX,br,ZI,XQ,QCa,ZEa,ana,bna,yCa,_P,PAa,Nf,dV,YEa,Mj,Or,LE,zma,v1a,TTa,hJ,JDa,wfa,Am,zm,Wq,n9,aY,cu,vEa,Lca,SI,nU,L4,cV,pQa,nu,yna,kQa,$6,Um,LEa,xka,sC,Gq,qwa,JDa,Gl,L$,NT,hY,Jm,AW,dm,IOa,xma,hY,Xk,gm,zm,Wba,Iwa,kl,xm,Lk,Qxa,hl,mYa,rl,Wsa,lT,gNa,lT,XT,ay,rka,tPa,zma,qm,Zk,V1,YY,YY,e_,Yr,Pr,hY,xu,h2,e_,YY,_W,EE,GW,dMa,e_,jZ,jZ,vZ,mm,Fi,Fj,GZ,Ft,_2,QRa,vZ,Rx,KI,vZ,Oo,iJ,UQa,Yx,mG,eq,dq,F3,tB,lp,e_,ld,Qja,zr,Rl,Wk,Sl,e_,e_,fm,RNa,Wf,gZ,Wl,zl,PY,e_,FSa,km,fI,vl,vl,e_,hY,GG,$l,Ls,TG,gN,rK,oja,y6,hY,ts,ev,GN,hY,w1a,V$a,Nua,$qa,Dsa,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb,cbb];var ec=[P7a,eYa,oN,zN,aga,$fa,_Wa,Xz,vn,bM,K0,S_,h1,Vu,S4,tG,S8,Xsa,eYa,nO,BO,h9,gOa,G_,kZ,Tra,Lra,kTa,kTa,Apa,Bpa,_Xa,XNa,cta,dta,VXa,eM,mRa,Kx,_Wa,rHa,ACa,hE,NF,_la,Lya,NKa,vsa,e$,tL,sm,Dpa,hs,mBa,cv,nBa,dca,CGa,GD,Tx,GD,fg,zc,d$,xt,nk,oG,qK,GD,Kg,F$,iD,fAa,nF,kw,_Ha,b$,b$,PCa,mh,cL,pM,dO,xr,NH,Vc,VE,e9,e9,Jg,ks,Tx,GD,A1a,qr,yr,bK,bI,Lf,Pi,Cc,uoa,_V,hk,zw,Bc,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a,P7a];var fc=[l2a,vDa,xja,Mna,Uja,YDa,eka,Fpa,Cqa,LM,D7,oZ,Qma,L8,Pu,dj,sn,PC,t4,j7,ws,Sza,Sza,oH,tC,mH,Sza,Sza,Sza,Sza,Sza,Sza,MAa,Zf,TB,u2,AE,Fx,qA,$f,Mm,Cl,ao,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a,l2a];var gc=[U$a,nn,mn,ln,kn,U$a,U$a,U$a];var hc=[r$a,PZ,i$,jp,bu,iu,tx,tp,$t,gu,hx,TQa,iJa,sO,xW,Aqa,Jea,TQa,eNa,TQa,$Ia,zg,Sk,Fya,Ou,v2,zna,zna,Z3,jD,r$a,r$a];var ic=[qYa,Ti,Ri,qYa];var jc=[CXa,rn,vfa,ufa,bfa,cfa,cfa,afa,Wda,Yda,Xda,ug,qn,tfa,sfa,_ea,$ea,$ea,Zea,Tda,Vda,Uda,wg,_u,av,Xu,Zu,Hca,zV,QO,PO,HP,Uca,OU,OO,NO,GP,zj,wj,Ku,Mra,Pl,uh,Ig,YB,XB,Ega,qu,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa,CXa];var kc=[QVa,oE,BF,Ai,rj,Ci,vj,sT,I3,H3,x5,Lv,Ad,Yl,os,Kba,wz,Gz,Fz,vg,xg,QVa,QVa,QVa,QVa,QVa,QVa,QVa,QVa,QVa,QVa,QVa];var lc=[rTa,ah,$g,v0,A0,Bp,Ao,zCa,zCa,q0,u0,rTa,rTa,rTa,rTa,rTa];var mc=[dKa,Gc,Fc,dKa];var nc=[Mbb,kbb,UC,J_a,MP,Jbb,pbb,Sc,ybb,_da,WWa,A1,FUa,EUa,QUa,PUa,BSa,ASa,rSa,sSa,vUa,uUa,ENa,DNa,CNa,BNa,vTa,uTa,tTa,sTa,cNa,bNa,aNa,$Ma,pNa,oNa,nNa,mNa,xUa,wUa,kAa,KKa,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb,Mbb];var oc=[Gbb,nHa,IPa,GPa,HPa,HHa,IHa,dXa,SVa,aPa,bPa,XBa,sQa,LTa,gXa,gXa,GVa,I6a,wbb,rbb,wbb,rbb,hRa,mVa,mVa,pDa,d2a,LTa,gXa,LTa,gXa,gXa,hRa,mVa,mVa,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,rbb,wbb,rbb,SPa,V5a,LTa,gXa,LTa,gXa,gXa,kpa,F1a,LTa,gXa,AUa,W5a,vCa,q1a,SLa,gMa,LTa,gXa,wbb,rbb,wbb,rbb,gXa,OG,OXa,AMa,lAa,TFa,rbb,LTa,gXa,MG,MXa,LTa,gXa,NG,NXa,LTa,gXa,PG,PXa,LTa,gXa,LG,LXa,LTa,gXa,I6a,wbb,rbb,wbb,rbb,I6a,cXa,RVa,_Oa,$Oa,JGa,mPa,eHa,fHa,Dma,Q$a,LTa,gXa,DU,TVa,rOa,EVa,NOa,OOa,LTa,gXa,gXa,iY,FZa,GGa,bHa,_6,H2a,XSa,H1a,wbb,mbb,SXa,L2a,rbb,wbb,rbb,iMa,rbb,aVa,rbb,wbb,rbb,rbb,wbb,rbb,vG,rbb,wbb,rbb,Oia,ebb,Jqa,r1a,LTa,gXa,I6a,LTa,gXa,gXa,Yta,P$a,LTa,gXa,I6a,Mha,F0a,LTa,gXa,I6a,LTa,gXa,gXa,Lha,y$a,wbb,rbb,wbb,rbb,KGa,nPa,gHa,hHa,wbb,rbb,wbb,rbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,LTa,gXa,Bna,q_a,hRa,mVa,I6a,I6a,I6a,I6a,aGa,e2a,LTa,gXa,LTa,gXa,gXa,Soa,s1a,hRa,mVa,LTa,gXa,gXa,BJa,K_a,wbb,rbb,wbb,rbb,LTa,gXa,I6a,eIa,S2a,LTa,gXa,qLa,U1a,LTa,gXa,LTa,gXa,gXa,I6a,LTa,gXa,gXa,LTa,gXa,gXa,XL,m0a,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,LTa,gXa,LTa,gXa,gXa,x9,I2a,LTa,gXa,wNa,$_a,LTa,gXa,gXa,_Pa,J2a,LTa,gXa,gXa,LTa,gXa,gXa,LTa,gXa,gXa,I6a,LTa,gXa,gXa,oga,T2a,hRa,mVa,I6a,I6a,LTa,gXa,gXa,LTa,gXa,gXa,Vna,G1a,LTa,gXa,Pka,a$a,LTa,gXa,Iva,t1a,LTa,gXa,$Y,W1a,hRa,mVa,jCa,V1a,LTa,gXa,QGa,W0a,W0a,rLa,RLa,wbb,rbb,wbb,rbb,wbb,rbb,w9,x2a,YWa,gYa,QWa,fYa,dXa,SVa,aPa,bPa,cXa,RVa,_Oa,$Oa,wbb,rbb,C2a,c0a,fYa,gYa,fYa,gYa,wbb,rbb,OUa,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,XWa,tVa,XWa,tVa,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,wbb,rbb,rbb,yIa,bZa,lU,C1a,rRa,y2a,tUa,R1a,sUa,Q1a,rbb,rbb,rbb,rbb,rbb,rbb,rbb,j6a,n1a,wbb,rbb,wbb,wbb,rbb,wbb,rbb,rZa,z2a,WYa,Z1a,z2a,z2a,z2a,Z1a,wbb,rbb,rbb,rbb,rbb,rbb,kOa,uE,bd,Rka,hea,mk,nd,rt,obb,w8,XY,U5,Wt,KY,WY,jd,NQa,jB,xJa,K7,gX,tOa,poa,OY,Tk,kYa,pSa,dAa,hI,SG,Yf,Ff,C_,VBa,kfa,mpa,wQa,Ho,ju,OS,nC,Wna,nwa,RO,wu,kU,_x,Rv,$e,pTa,$e,pTa,F7,h0a,Oq,OX,raa,i4,VQa,fMa,lP,W0,aAa,kYa,oA,Cj,Gca,Kq,cg,lL,ms,zya,Yc,vZa,Ar,MEa,Tm,Sga,sea,gWa,wbb,vka,rg,Hn,Zfa,MQa,x7,Z6,hDa,T3,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb,Gbb];var pc=[lbb,rXa,D_a,Jda,D_a,O7a,YBa,pna,Wca,oia,nia,lLa,Eba,Dw,KJa,bIa,aIa,$Ha,SWa,D_a,Cda,qba,Dda,Tr,Ei,PMa,O7a,Vga,Wga,XZ,YZ,Rza,Rza,Rza,PEa,JQa,JQa,Rza,Rza,Rza,PEa,JQa,JQa,Rza,Rza,Rza,OEa,JQa,JQa,Rza,Rza,Rza,OEa,JQa,JQa,O7a,O7a,KSa,pwa,bwa,JSa,Xwa,Kwa,IL,Ys,d1a,Y3,PF,IL,I1,Xs,Ws,vQa,Hs,Yz,Yma,XA,IL,eF,bba,Ux,aaa,hM,NLa,IH,l9,Bma,x_,w4,yc,nA,AY,tW,pW,gia,FE,LY,hH,bWa,Sda,IS,IH,pF,jra,IL,boa,nca,zC,AU,xe,LDa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,T7,kNa,A9,fGa,JIa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,gR,boa,re,GCa,qGa,FEa,FCa,JBa,JEa,IBa,Xxa,nOa,OAa,aOa,gAa,GEa,EDa,hAa,exa,kza,jza,FDa,DDa,ECa,DCa,IEa,SOa,HEa,RPa,hNa,Fd,gPa,iQa,wPa,fPa,QOa,$ma,Gia,Dha,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,CZ,kNa,A9,dea,nfa,tea,cea,Fda,xea,xca,_ba,kda,jda,Yca,Xca,uea,aea,Zca,Lba,zca,yca,bea,$da,Ida,Gda,wea,Hda,vea,Mea,kca,mL,AV,_X,WK,H7,IL,HAa,rf,gPa,iQa,wPa,bza,Iya,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,RZ,zW,O8,xf,mDa,iQa,rEa,lDa,tCa,gEa,Wya,wAa,GAa,FAa,$za,_za,hxa,_va,Mza,Hya,uza,tza,ePa,kDa,uCa,ROa,zPa,fCa,fEa,RPa,Zza,F6,Ie,YGa,MJa,BIa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,XHa,SOa,yPa,RPa,hNa,nI,Ye,Jga,Kha,$ga,Iga,tga,dha,gfa,yea,Qfa,Pfa,Bfa,Afa,aha,Gga,Cfa,eea,ifa,hfa,Hga,Fga,wga,uga,cha,vga,bha,rha,Nea,hLa,B8,Gva,zxa,ewa,Fva,fva,iwa,Asa,Dra,jua,iua,Cta,Bta,fwa,Dva,Dta,gra,Csa,Bsa,Eva,Cva,iva,gva,hwa,hva,gwa,Pwa,$ra,Je,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,_Ea,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,Ae,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,hEa,nDa,ROa,zPa,SOa,yPa,RPa,hNa,pE,vE,eE,yM,Vk,lE,qd,tW,QS,cba,dX,sF,IL,IL,IL,mL,kB,tr,By,FM,VO,hO,bz,py,Hk,AAa,uG,IL,hLa,B8,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,ON,qF,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,mL,dYa,uC,IL,mL,mL,AK,AL,yf,bFa,iQa,YFa,aFa,jEa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,lf,Jua,Dwa,ava,Iua,eua,eva,Ara,Fqa,Ssa,Rsa,psa,osa,bva,Gua,qsa,qqa,Cra,Bra,Hua,Fua,hua,fua,dva,gua,cva,Bva,fra,boa,mL,CT,kha,yB,dr,$y,EN,IP,YO,uz,qy,Ik,BAa,bH,IL,kNa,A9,gPa,iQa,wPa,fPa,QOa,xEa,HBa,NAa,xE,Nu,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,wx,hn,mL,mL,mL,kx,sh,xna,mL,ir,IL,_m,OP,mL,boa,mL,mL,mL,TI,df,oka,Pla,Dka,nka,Ija,Hka,zia,$ha,jja,ija,Wia,Via,Eka,lka,Xia,Jha,Bia,Aia,mka,kka,Lja,Jja,Gka,Kja,Fka,lla,jia,dE,$A,cR,cI,VB,EK,MT,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,mL,cI,mL,mL,mL,De,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,l2,K2,Pe,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,Mba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,uj,gPa,XIa,iQa,wPa,fPa,QOa,SOa,hNa,APa,GNa,JMa,lba,kba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,yPa,RPa,mL,mL,Vy,Ml,QP,bT,s5,CS,Ut,hya,Zm,iQa,wPa,fPa,QOa,SOa,hNa,JE,APa,GNa,JMa,_ua,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,bqa,yPa,RPa,wf,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,fpa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,j2,I2,Ne,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,Mba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,tj,gPa,XIa,iQa,wPa,fPa,QOa,SOa,hNa,APa,GNa,JMa,lba,kba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,yPa,RPa,Uy,Ll,PP,$S,q5,BS,Ut,fya,Ym,iQa,wPa,fPa,QOa,SOa,hNa,HE,APa,GNa,JMa,_ua,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,bqa,yPa,RPa,k2,J2,Oe,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,Mba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,sj,gPa,XIa,iQa,wPa,fPa,QOa,SOa,hNa,APa,GNa,JMa,lba,kba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,yPa,RPa,Gy,Kl,YG,aT,r5,xS,Ut,gya,Wm,iQa,Ypa,fPa,QOa,SOa,hNa,IE,APa,GNa,JMa,_ua,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,bqa,yPa,RPa,jV,NI,_e,jka,Ola,yka,ika,Eja,Cka,wia,_ha,hja,gja,Tia,Sia,zka,gka,Uia,Iha,yia,xia,hka,fka,Hja,Fja,Bka,Gja,Aka,kla,iia,m2,L2,Fe,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,Mba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,pj,gPa,XIa,iQa,wPa,fPa,QOa,SOa,hNa,APa,GNa,JMa,lba,kba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,yPa,RPa,Hy,yl,RP,cT,t5,QC,Ut,iya,Xm,iQa,wPa,fPa,QOa,SOa,hNa,KE,APa,GNa,JMa,$ua,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,bqa,yPa,RPa,i2,H2,Ee,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,Mba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,oj,gPa,XIa,iQa,wPa,fPa,QOa,SOa,hNa,APa,GNa,JMa,lba,kba,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,yPa,RPa,Fy,Jl,XG,_S,p5,wS,Ut,eya,Vm,iQa,Ypa,fPa,QOa,SOa,hNa,GE,APa,GNa,JMa,_ua,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,bqa,yPa,RPa,rk,Qz,Uh,IL,BY,dI,xCa,Gs,ag,jr,mu,bD,ZU,owa,Kla,iA,$7,ME,Cn,RZ,f5,lC,E3,Ey,Qi,cI,B2,mL,ye,Naa,Gba,Xaa,Maa,uaa,$aa,O9,y9,eaa,daa,Z9,Y9,Yaa,Kaa,_9,r9,Q9,P9,Laa,Jaa,xaa,vaa,_aa,waa,Zaa,jba,F9,gU,DY,mba,Cba,RBa,$Ea,$Ca,QBa,aBa,dDa,aya,dwa,Iza,Hza,_ya,Zya,aDa,PBa,$ya,Zua,cya,bya,ePa,OBa,dBa,bBa,cDa,cBa,bDa,RPa,hNa,cI,EGa,PGa,FQ,saa,tEa,gda,bJ,N1,lda,qw,Yd,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,CCa,vBa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,vU,cO,NS,mL,$A,boa,mL,mL,ut,it,yB,Vq,Jy,eN,fP,tO,kz,fy,Ck,BAa,zG,IL,kNa,A9,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,rY,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,WD,cJ,Su,dL,cK,BX,CL,AH,gPa,iQa,wPa,Qpa,gpa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,lia,sg,FX,jaa,An,uZ,ut,it,IL,aMa,IL,IL,PH,uba,ut,it,IL,PR,JI,boa,Ze,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,Jla,Ila,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,le,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,gBa,fBa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,_7,cI,ee,gPa,iQa,wPa,fPa,QOa,CDa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,Zd,NBa,iQa,_Ca,MBa,$Aa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,pga,mL,pF,nf,gPa,iQa,wPa,fPa,QOa,APa,GNa,Eua,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,fL,mf,gPa,iQa,wPa,fPa,QOa,GBa,sza,rua,nOa,hOa,$xa,_xa,sBa,WAa,Eza,uya,iza,hza,ePa,cPa,TOa,ROa,zPa,SOa,bua,RPa,hNa,E7,YC,f7,Ve,pka,Kma,wPa,fPa,QOa,APa,GNa,JMa,nOa,pia,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,rV,hLa,B8,pla,iQa,wPa,ola,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,EC,Qh,QFa,qR,GWa,IL,gPa,VDa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,me,gPa,iQa,wPa,fPa,QOa,APa,vza,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,Xd,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,BCa,uBa,bOa,BMa,INa,HNa,ePa,tBa,DAa,ROa,zPa,SOa,yPa,RPa,hNa,xU,IL,Bo,_I,af,jma,_ma,pma,ima,Tla,tma,Vja,pja,nla,mla,Jka,Ika,qma,gma,Kka,eja,Xja,Wja,hma,fma,Wla,Ula,sma,Vla,rma,Jma,Aja,kd,Js,Yn,qM,zY,IL,zs,XJa,BPa,KC,Dz,IH,ow,vE,vE,ILa,ak,fr,IL,Hm,sF,Ax,vk,Nm,kI,IL,IL,aaa,rL,ZGa,sf,V4,kNa,A9,nAa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,VH,Re,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,Oca,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,gPa,hGa,wPa,fPa,QOa,APa,GNa,JMa,nOa,EAa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,sI,We,gPa,iQa,wPa,fPa,QOa,Qla,qha,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,gUa,Nd,Xta,Hva,vua,Wta,nta,zua,Sqa,dqa,bsa,asa,Fra,Era,wua,Uta,Gra,Rpa,Uqa,Tqa,Vta,Tta,qta,ota,yua,pta,xua,Pua,wqa,mL,mL,ie,gPa,iQa,wPa,fPa,QOa,APa,aza,JMa,nOa,hOa,aOa,$Na,gFa,REa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,w6,kNa,A9,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,kta,hBa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,mL,wC,ge,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,Oka,Id,wpa,vqa,Hpa,vpa,bpa,Lpa,_na,sna,Doa,Coa,noa,moa,Ipa,tpa,ooa,dna,aoa,$na,upa,spa,epa,cpa,Kpa,dpa,Jpa,Vpa,Ina,$H,zAa,Te,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,Cia,ROa,zPa,SOa,yPa,RPa,hNa,vf,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,ABa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,QK,hf,xxa,Qya,Rxa,wxa,Zwa,Vxa,Bua,vta,Ova,Nva,ova,nva,Sxa,uxa,pva,Fsa,Dua,Cua,vxa,txa,axa,_wa,Uxa,$wa,Txa,tya,aua,Pd,Tva,Gxa,twa,Sva,qva,xwa,Gsa,Nra,oua,nua,Lta,Kta,uwa,Qva,Mta,mra,Isa,Hsa,Rva,Pva,tva,rva,wwa,sva,vwa,cxa,isa,bi,yaa,Km,IL,IL,lva,oS,mL,Jd,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,Rya,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,se,BEa,iQa,wPa,AEa,PDa,GFa,OCa,Sya,nOa,oDa,aOa,$Na,EFa,zEa,jBa,jya,INa,HNa,ePa,yEa,iEa,QDa,FFa,SEa,yPa,RPa,hNa,vL,oL,SZ,HZ,hLa,B8,TBa,iQa,wPa,SBa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,Ava,SOa,yPa,RPa,hNa,hLa,B8,gPa,iQa,wPa,MDa,NCa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,Ixa,SOa,yPa,RPa,hNa,$Qa,JC,ae,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,wDa,nCa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,be,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,Wza,Vza,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,MIa,mL,mL,ce,sCa,vFa,xDa,rCa,wBa,ADa,GNa,Owa,Yza,Xza,xra,wra,yDa,pCa,eBa,dya,INa,HNa,qCa,oCa,zBa,xBa,zDa,yBa,yPa,RPa,hNa,mL,aba,i0,cI,pe,gPa,iQa,hFa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,Caa,OK,rD,Wu,gPa,xXa,iQa,wPa,fPa,QOa,SOa,hNa,HG,lI,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,yPa,RPa,Yy,IL,G7,Dd,gPa,iQa,wPa,fPa,QOa,APa,dga,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,K6,EHa,mL,cI,cI,gI,Ue,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,_ga,Zga,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,Ica,yPa,RPa,hNa,we,gPa,iQa,wPa,fPa,QOa,MHa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,Td,gPa,iQa,LBa,fPa,QOa,$Ba,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,gv,he,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,t9,XA,pF,Pz,GS,cI,Od,gPa,iQa,wPa,fPa,QOa,APa,GNa,Pra,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,q4,kNa,A9,Yva,Hxa,ywa,Xva,uva,Cwa,Jsa,Ora,qua,pua,Ota,Nta,zwa,Vva,Pta,nra,Lsa,Ksa,Wva,Uva,xva,vva,Bwa,wva,Awa,dxa,jsa,mL,lIa,yG,Rha,de,gPa,iQa,wPa,fPa,QOa,BDa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,je,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,tE,mL,qe,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,rd,$Da,kY,WOa,_Aa,aCa,ZAa,oAa,eCa,Fza,Yua,nOa,Uza,aOa,Gza,bCa,YAa,Gya,cua,INa,HNa,ePa,XAa,qAa,pAa,dCa,Wra,cCa,RPa,Zva,$la,oe,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,NDa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,tP,W_,lma,Qia,qca,mK,gf,Qsa,Oua,wta,Psa,ksa,Ata,nqa,Mpa,pra,ora,Pqa,Oqa,xta,Nsa,Qqa,xpa,pqa,oqa,Osa,Msa,nsa,lsa,zta,msa,yta,dua,Xpa,jf,Nza,iQa,iAa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,dw,GJ,uJ,cf,loa,iQa,Aoa,Lva,rna,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,ef,Poa,iQa,$oa,fPa,QOa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,yZ,kNa,A9,EEa,DHa,wPa,DEa,RDa,APa,GNa,JMa,nOa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SDa,yPa,RPa,wza,te,CEa,iQa,wPa,fPa,QOa,APa,GNa,JMa,cqa,hOa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,Om,IL,FD,uf,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,lta,iBa,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,l1,tM,kha,Ps,gia,I7,jt,UU,Sj,z$,mL,CT,yB,$q,Zy,xN,AP,TO,tz,jy,Fk,BAa,$G,IL,kNa,A9,gPa,iQa,wPa,fPa,QOa,APa,GNa,JMa,xE,Nu,aOa,$Na,xPa,dPa,bOa,BMa,INa,HNa,ePa,cPa,TOa,ROa,zPa,SOa,yPa,RPa,hNa,IH,ama,_ia,Baa,JVa,wKa,NL,kCa,KBa,GQa,_y,AJ,eY,bx,HD,d0,x6,dz,HA,Oz,tta,N9,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb,lbb];var qc=[Mab,Ji,Vx,BOa,L$a,L$a,L$a,e_a,e_a,D6,L$a,n5,k6,V$,qY,D8,J8,n7,X4,Z7,e3,c3,d3,f3,b3,HR,U_,g6,W5,D1,a7,an,t6,f6,jva,A6,tka,b7,V5,M2,wZ,om,FY,bY,e4,I6,j4,B6,e_a,g2,laa,RQ,R4,S3,z7,ij,p6,q6,r6,o7,g7,Oi,J0,A2,t8,L5,C6,Xj,G4,a2,cs,gg,s6,J6,p7,M5,c7,W4,A7,M4,NTa,zba,Vca,eta,cda,cLa,jA,WZ,fNa,YP,aQ,Qaa,Mw,Mu,LU,gp,_$,Oza,t$a,Fo,i1,fA,zz,LF,Pn,Ay,Bv,wEa,sl,Bv,Pza,Pza,Pza,Pza,Pza,hu,aw,Wv,nN,Av,xT,ZF,sG,cl,d4,Yqa,yva,Ay,nL,sFa,QPa,S9,Hv,qT,Bh,Eg,yF,ol,nv,jx,_pa,pz,hC,xx,Az,yF,MC,BN,Ay,ZFa,On,uN,nQ,$p,z0,mz,Z0,CF,CF,mD,SN,Tl,Eh,Gh,yh,gn,Tsa,Ay,Ly,Ih,NB,Df,zn,yoa,ZN,AF,dF,dF,xD,wD,vD,cz,FR,Y0,mJ,ZH,SM,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab,Mab];var rc=[Y5a,ou,Pm,Jn,vVa,zi,ym,Toa,e2,vVa,o1,p1,rZ,YV,_3,k4,N2,wR,$0,o3,T$,R$,S$,U$,Q$,P1,hF,F1,I_,hj,C2,_1,O1,b2,D2,E1,B$,y0,o2,C0,c2,q$,U0,n0,X2,W1,X1,Y1,O2,G2,AZ,J3,y1,d2,N0,j$,Z1,p2,P2,z1,E2,_0,Y2,R0,sya,sya,cma,bma,Mla,w5,FJ,MWa,Wc,R6,Hf,YH,R6,kt,Nk,oT,Uj,Cg,bG,XH,kM,nH,nH,Mg,R6,R6,kV,R6,R6,R6,OL,R6,R6,iC,iC,iC,iC,iC,nS,YJ,gS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,nS,EZ,Vs,qB,nH,SC,QD,R6,UD,R6,tsa,TZ,oy,oy,oy,hr,R6,oy,ti,YS,R6,LS,R6,ED,jG,HB,Lg,R6,R6,ALa,R6,Lz,St,LV,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a,Y5a];var sc=[Z0a,BJ,au,Bk,FA,dA,NN,Lj,kh,TL,Bq,Z0a,Z0a,Z0a,Z0a,Z0a];var tc=[LZa,mv,Lr,SE,Upa,Upa,tt,Rk,Sea,e1,ew,Lm,LZa,LZa,LZa,LZa];var uc=[bXa,nx,bN,bj,_i,Ng,Zi,Gg];var vc=[kPa,ng,og,eg,hg,kPa,kPa,kPa];var wc=[mva,ri,li,mva];return{__GLOBAL__I_000101:bbb,__GLOBAL__sub_I_InstrumentLocals_cpp:rta,__GLOBAL__sub_I_InstrumentMemory_cpp:b0a,__GLOBAL__sub_I_LegalizeJSInterface_cpp:yWa,__GLOBAL__sub_I_LogExecution_cpp:lab,__GLOBAL__sub_I_Metrics_cpp:Oab,__GLOBAL__sub_I_OptimizeInstructions_cpp:OMa,__GLOBAL__sub_I_Precompute_cpp:zab,__GLOBAL__sub_I_RelooperJumpThreading_cpp:M6a,__GLOBAL__sub_I_SafeHeap_cpp:mXa,__GLOBAL__sub_I_TrapMode_cpp:aTa,__GLOBAL__sub_I_iostream_cpp:Dbb,__GLOBAL__sub_I_optimizer_shared_cpp:kLa,__GLOBAL__sub_I_parser_cpp:Ln,__GLOBAL__sub_I_pass_cpp:Sab,__GLOBAL__sub_I_shared_constants_cpp:to,__GLOBAL__sub_I_simple_ast_cpp:yab,__GLOBAL__sub_I_threads_cpp:_Ta,__GLOBAL__sub_I_wasm_cpp:Tz,__GLOBAL__sub_I_wasm_emscripten_cpp:T$a,__GLOBAL__sub_I_wasm_js_cpp:Hp,__ZSt18uncaught_exceptionv:W6a,___cxa_can_catch:Ska,___cxa_demangle:Li,___cxa_is_pointer_type:$Va,___divdi3:UW,___emscripten_environ_constructor:p9a,___muldi3:BBa,___remdi3:ER,___udivdi3:sYa,___uremdi3:oya,__get_environ:Hbb,_bitshift64Ashr:wJa,_bitshift64Lshr:EMa,_bitshift64Shl:hMa,_call_from_js:Zh,_emscripten_replace_memory:_b,_free:rg,_i64Add:wOa,_i64Subtract:NRa,_instantiate:Fv,_interpreter_stack_trace:X5,_llvm_bswap_i32:NZa,_llvm_nearbyint_f32:A0a,_llvm_nearbyint_f64:A0a,_load_asm2wasm:dl,_load_binary2wasm:Nx,_load_s_expr2wasm:Bz,_malloc:Kc,_memcpy:Iu,_memmove:fia,_memset:gH,_pthread_cond_broadcast:nbb,_pthread_mutex_lock:nbb,_pthread_mutex_unlock:nbb,_sbrk:nba,dynCall_di:O2a,dynCall_i:Lab,dynCall_ii:p2a,dynCall_iid:k$a,dynCall_iii:KZa,dynCall_iiii:_Va,dynCall_iiiii:oSa,dynCall_iiiiid:ZOa,dynCall_iiiiii:eOa,dynCall_iiiiiid:LKa,dynCall_iiiiiii:gJa,dynCall_iiiiiiii:IDa,dynCall_iiiiiiiii:Bya,dynCall_iiiiiiiiiiii:hha,dynCall_v:fbb,dynCall_vi:y6a,dynCall_vii:F$a,dynCall_viii:eXa,dynCall_viiii:GTa,dynCall_viiiii:NPa,dynCall_viiiiii:uLa,dynCall_viiiiiii:bGa,dynCall_viiiiiiiiii:Dna,dynCall_viiiiiiiiiiiiiii:l4,establishStackSpace:j4a,getTempRet0:Ebb,runPostSets:vOa,setTempRet0:vbb,setThrew:E$a,stackAlloc:qXa,stackRestore:tbb,stackSave:Fbb}}) +var $b=[Hbb,TNa,SNa,Hbb];var ac=[Sbb,tVa,URa,SGa,TGa,BGa,VTa,SVa,oFa,IKa,UIa,qEa,f_a,PFa,BIa,pBa,pna,pIa,RGa,PUa,qFa,pFa,lLa,AHa,zHa,G$a,QMa,LDa,OFa,AGa,dGa,n_a,tYa,d0a,BYa,w_a,XKa,g_a,jDa,rFa,zGa,MLa,NFa,RVa,pUa,YEa,cKa,yGa,oIa,RSa,Gxa,sTa,iSa,ISa,LRa,TQa,S_a,cZa,IVa,tJa,Jwa,pxa,VJa,VIa,YN,iV,KOa,oAa,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb,Sbb];var bc=[Ibb,vbb,vbb,WX,Bja,dbb,Rua,dbb,vbb,hbb,QAa,QSa,dbb,Swa,dbb,ewa,dbb,pia,dbb,Dma,Kba,JRa,bha,zRa,aha,yRa,dbb,B0a,dbb,$0a,vbb,qpa,dbb,J0a,dbb,DZa,yMa,WSa,dbb,kRa,dbb,iRa,dbb,jRa,dbb,lRa,dbb,hRa,aaa,Kxa,TTa,vbb,dbb,tQa,vbb,pn,nl,dbb,PXa,dbb,SSa,dbb,R$a,dbb,OZa,dbb,Yya,dbb,iYa,dbb,UYa,vbb,OXa,fLa,IRa,$Ga,zDa,KWa,_Ga,zDa,JWa,ZGa,zDa,IWa,dbb,oXa,vbb,dbb,IUa,dbb,vZa,dbb,PZa,dbb,VYa,vbb,dbb,vXa,Oba,zPa,vbb,dbb,pGa,dbb,z_a,vbb,vbb,pYa,maa,QJa,sca,MMa,dbb,GHa,dbb,Jma,dbb,NTa,dbb,kxa,dbb,WYa,vbb,dbb,gka,dbb,p0a,dbb,fHa,dbb,_Sa,dbb,c_a,dbb,AXa,dbb,QZa,dbb,q_a,dbb,p_a,dbb,iWa,dZa,oMa,lXa,D_a,wDa,Mab,N2a,vbb,vbb,N2a,Moa,yab,Y2a,nN,nN,O$a,y0a,P$a,z0a,Z_a,ALa,eLa,BLa,ela,dla,cla,fla,Z_a,PLa,$Ka,QLa,Hla,Gla,Fla,Ila,e7a,e7a,vbb,e7a,e7a,vbb,a6a,a6a,vbb,a6a,a6a,vbb,vbb,vbb,_6a,tha,vbb,Qwa,M2a,L2a,H2a,z2a,dbb,dbb,dbb,vbb,vbb,_6a,B7a,U7a,lbb,Y2a,pbb,In,s8,hIa,uPa,tPa,naa,aSa,RCa,ERa,aRa,eSa,vNa,rOa,wqa,TRa,YT,fu,Fha,_u,GTa,jQa,cWa,FTa,UPa,vUa,uUa,cUa,qWa,FZ,aUa,QRa,KPa,sSa,bUa,Zy,wUa,Yy,NUa,kVa,E1a,GRa,Jia,QOa,Upa,aU,QOa,nRa,Ixa,_$,vSa,lSa,$Ra,NRa,mSa,XQa,IQa,tRa,$Qa,bSa,fra,PRa,wQa,bRa,QQa,PQa,ORa,FRa,DRa,dSa,cSa,JQ,DWa,Iga,e$,ko,_Va,r8,Vy,r6,nUa,x3,m7,RS,bYa,lF,lF,_W,PB,TSa,my,dP,nq,My,oF,Ni,nD,Fr,lx,Tz,Dm,Ps,qh,oRa,xF,xh,$Fa,X5,Av,Sw,QPa,oJa,k_a,h8,Ec,B0,$D,U2a,b3a,J2a,f6a,f6a,f6a,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb,Ibb];var cc=[obb,Bm];var dc=[kbb,sJa,sJa,sJa,sJa,sJa,sJa,sJa,sJa,cG,eo,RFa,Mma,uEa,dEa,cEa,ZFa,A0a,EHa,ON,tn,XHa,A0a,AEa,ELa,DLa,CLa,PAa,zta,cya,APa,v0a,v0a,v0a,v0a,nv,bv,Rv,Lv,BTa,VSa,$6a,EVa,FVa,A2a,n0a,Hea,$X,Xma,zZ,e0,$c,_Ta,oQa,$X,br,$I,ZQ,VCa,cFa,fna,gna,DCa,aQ,UAa,Nf,fV,bFa,Mj,Or,NE,Ema,C1a,YTa,jJ,ODa,Bfa,Am,zm,Wq,s9,dY,eu,zEa,Pca,UI,pU,Q4,eV,uQa,pu,Dna,pQa,e7,Um,QEa,Cka,uC,Gq,vwa,ODa,Gl,P$,PT,kY,Jm,DW,dm,NOa,Cma,kY,Xk,gm,zm,t_a,Nwa,kl,xm,Lk,Vxa,hl,sYa,rl,$sa,nT,lNa,nT,ZT,cy,wka,yPa,Ema,qm,Zk,lY,_1,aZ,aZ,i_,Yr,Pr,kY,zu,m2,i_,aZ,bX,GE,JW,iMa,i_,nZ,nZ,zZ,mm,Fi,Fj,KZ,Ht,d3,VRa,zZ,Ux,MI,zZ,Oo,kJ,ZQa,$x,oG,eq,dq,K3,uB,lp,i_,ld,Vja,zr,Rl,Wk,Sl,i_,i_,fm,WNa,Wf,kZ,Wl,zl,TY,i_,KSa,km,hI,vl,vl,i_,kY,IG,$l,Ns,VG,hN,tK,tja,D6,kY,us,gv,IN,kY,D1a,a0a,Sua,era,Isa,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb,kbb];var ec=[p7a,kYa,pN,BN,fga,ega,eXa,Yz,un,eM,O0,W_,l1,Xu,X4,vG,X8,ata,kYa,pO,DO,m9,lOa,K_,oZ,Yra,Qra,pTa,pTa,Fpa,Gpa,eYa,aOa,hta,ita,$Xa,hM,rRa,Nx,eXa,wHa,FCa,jE,PF,dma,Qya,SKa,Asa,i$,wL,sm,Ipa,hs,rBa,ev,sBa,hca,HGa,ID,Wx,ID,fg,zc,h$,zt,nk,qG,sK,ID,Kg,J$,kD,kAa,pF,mw,dIa,f$,f$,UCa,mh,eL,rM,fO,xr,PH,Vc,XE,j9,j9,Jg,ls,Wx,ID,H1a,qr,yr,dK,dI,Lf,Pi,Cc,zoa,bW,hk,Bw,Bc,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a,p7a];var fc=[s2a,ADa,Cja,Rna,Zja,bEa,jka,Kpa,Hqa,NM,I7,sZ,Vma,Q8,Ru,dj,sn,QC,y4,o7,xs,Xza,Xza,qH,vC,oH,Xza,Xza,Xza,Xza,Xza,Xza,RAa,Zf,UB,z2,CE,Ix,rA,$f,Mm,Cl,ao,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a,s2a];var gc=[$$a,nn,mn,ln,kn,$$a,$$a,$$a];var hc=[y$a,TZ,m$,jp,du,ku,wx,tp,bu,iu,kx,YQa,nJa,uO,AW,Fqa,Oea,YQa,jNa,YQa,eJa,zg,Sk,Kya,Qu,A2,Ena,Ena,c4,lD,y$a,y$a];var ic=[wYa,Ti,Ri,wYa];var jc=[IXa,rn,Afa,zfa,gfa,hfa,hfa,ffa,$da,bea,aea,ug,qn,yfa,xfa,dfa,efa,efa,cfa,Yda,_da,Zda,wg,av,cv,Zu,$u,Mca,BV,SO,RO,JP,Xca,QU,QO,PO,IP,zj,wj,Mu,Rra,Pl,uh,Ig,ZB,YB,Jga,su,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa,IXa];var kc=[VVa,qE,DF,Ai,rj,Ci,vj,uT,N3,M3,C5,Nv,Ad,Yl,ps,Pba,yz,Iz,Hz,vg,xg,VVa,VVa,VVa,VVa,VVa,VVa,VVa,VVa,VVa,VVa,VVa];var lc=[wTa,ah,$g,z0,E0,Bp,Ao,ECa,ECa,u0,y0,wTa,wTa,wTa,wTa,wTa];var mc=[iKa,Gc,Fc,iKa];var nc=[Ubb,sbb,WC,Q_a,OP,Rbb,xbb,Sc,Gbb,dea,aXa,F1,KUa,JUa,VUa,UUa,GSa,FSa,wSa,xSa,AUa,zUa,JNa,INa,HNa,GNa,ATa,zTa,yTa,xTa,hNa,gNa,fNa,eNa,uNa,tNa,sNa,rNa,CUa,BUa,pAa,PKa,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb,Ubb];var oc=[Obb,sHa,NPa,LPa,MPa,MHa,NHa,jXa,XVa,fPa,gPa,aCa,xQa,QTa,mXa,mXa,LVa,Q6a,Ebb,zbb,Ebb,zbb,mRa,rVa,rVa,uDa,k2a,QTa,mXa,QTa,mXa,mXa,mRa,rVa,rVa,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,zbb,Ebb,zbb,XPa,b6a,QTa,mXa,QTa,mXa,mXa,ppa,M1a,QTa,mXa,FUa,c6a,ACa,x1a,XLa,lMa,QTa,mXa,Ebb,zbb,Ebb,zbb,mXa,QG,UXa,FMa,qAa,YFa,zbb,QTa,mXa,OG,SXa,QTa,mXa,PG,TXa,QTa,mXa,RG,VXa,QTa,mXa,NG,RXa,QTa,mXa,Q6a,Ebb,zbb,Ebb,zbb,Q6a,iXa,WVa,dPa,ePa,OGa,rPa,jHa,kHa,Ima,X$a,QTa,mXa,FU,YVa,wOa,JVa,SOa,TOa,QTa,mXa,mXa,mY,MZa,LGa,gHa,d7,P2a,aTa,O1a,Ebb,ubb,YXa,T2a,zbb,Ebb,zbb,nMa,zbb,fVa,zbb,Ebb,zbb,zbb,Ebb,zbb,xG,zbb,Ebb,zbb,Tia,mbb,Oqa,y1a,QTa,mXa,Q6a,QTa,mXa,mXa,bua,W$a,QTa,mXa,Q6a,Qha,M0a,QTa,mXa,Q6a,QTa,mXa,mXa,Pha,F$a,Ebb,zbb,Ebb,zbb,PGa,sPa,lHa,mHa,Ebb,zbb,Ebb,zbb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,QTa,mXa,Gna,x_a,mRa,rVa,Q6a,Q6a,Q6a,Q6a,fGa,l2a,QTa,mXa,QTa,mXa,mXa,Xoa,z1a,mRa,rVa,QTa,mXa,mXa,GJa,R_a,Ebb,zbb,Ebb,zbb,QTa,mXa,Q6a,jIa,_2a,QTa,mXa,vLa,$1a,QTa,mXa,QTa,mXa,mXa,Q6a,QTa,mXa,mXa,QTa,mXa,mXa,_L,t0a,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,QTa,mXa,QTa,mXa,mXa,C9,Q2a,QTa,mXa,BNa,g$a,QTa,mXa,mXa,dQa,R2a,QTa,mXa,mXa,QTa,mXa,mXa,QTa,mXa,mXa,Q6a,QTa,mXa,mXa,tga,$2a,mRa,rVa,Q6a,Q6a,QTa,mXa,mXa,QTa,mXa,mXa,_na,N1a,QTa,mXa,Uka,h$a,QTa,mXa,Nva,A1a,QTa,mXa,dZ,b2a,mRa,rVa,oCa,a2a,QTa,mXa,VGa,b1a,b1a,wLa,WLa,Ebb,zbb,Ebb,zbb,Ebb,zbb,B9,E2a,cXa,mYa,WWa,lYa,jXa,XVa,fPa,gPa,iXa,WVa,dPa,ePa,Ebb,zbb,K2a,j0a,lYa,mYa,lYa,mYa,Ebb,zbb,TUa,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,bXa,yVa,bXa,yVa,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,Ebb,zbb,zbb,DIa,iZa,nU,J1a,wRa,F2a,yUa,Y1a,xUa,X1a,zbb,zbb,zbb,zbb,zbb,zbb,zbb,r6a,u1a,Ebb,zbb,Ebb,Ebb,zbb,Ebb,zbb,yZa,G2a,bZa,e2a,G2a,G2a,G2a,e2a,Ebb,zbb,zbb,zbb,zbb,zbb,pOa,wE,bd,Wka,mea,mk,nd,tt,wbb,B8,$Y,Z5,Yt,OY,_Y,jd,SQa,kB,CJa,P7,jX,yOa,uoa,SY,Tk,qYa,uSa,iAa,jI,UG,Yf,Gf,G_,_Ba,pfa,rpa,BQa,Ho,lu,QS,oC,$na,swa,TO,yu,mU,cx,Tv,$e,uTa,$e,uTa,K7,o0a,Oq,RX,waa,n4,_Qa,kMa,nP,_0,fAa,qYa,is,pA,Cj,Lca,Kq,cg,nL,ns,Eya,Yc,CZa,Ar,REa,Tm,Xga,xea,mWa,Ebb,Aka,rg,Hn,cga,RQa,C7,c7,mDa,Y3,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb,Obb];var pc=[tbb,xXa,K_a,Oda,K_a,o7a,bCa,una,Zca,tia,sia,qLa,Jba,Fw,PJa,gIa,fIa,eIa,YWa,K_a,Hda,vba,Ida,Tr,Ei,UMa,o7a,_ga,$ga,$Z,a_,Wza,Wza,Wza,UEa,OQa,OQa,Wza,Wza,Wza,UEa,OQa,OQa,Wza,Wza,Wza,TEa,OQa,OQa,Wza,Wza,Wza,TEa,OQa,OQa,o7a,o7a,PSa,uwa,gwa,OSa,axa,Pwa,LL,_s,k1a,b4,RF,LL,N1,Zs,Ys,AQa,Is,Zz,bna,YA,LL,gF,gba,Xx,faa,kM,SLa,KH,q9,Gma,B_,B4,yc,oA,EY,wW,sW,lia,HE,PY,jH,gWa,Xda,KS,KH,rF,ora,LL,goa,rca,BC,CU,xe,QDa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Y7,pNa,F9,kGa,OIa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,iR,goa,re,LCa,vGa,KEa,KCa,OBa,OEa,NBa,aya,sOa,TAa,fOa,lAa,LEa,JDa,mAa,jxa,pza,oza,KDa,IDa,JCa,ICa,NEa,XOa,MEa,WPa,mNa,Fd,lPa,nQa,BPa,kPa,VOa,ena,Lia,Iha,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,GZ,pNa,F9,iea,sfa,yea,hea,Kda,Cea,Bca,cca,oda,nda,$ca,_ca,zea,fea,ada,Qba,Dca,Cca,gea,eea,Nda,Lda,Bea,Mda,Aea,Rea,oca,oL,CV,bY,YK,M7,LL,MAa,rf,lPa,nQa,BPa,gza,Nya,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,VZ,CW,T8,xf,rDa,nQa,vEa,qDa,yCa,lEa,$ya,BAa,LAa,KAa,eAa,dAa,mxa,dwa,Rza,Mya,zza,yza,jPa,pDa,zCa,WOa,EPa,kCa,kEa,WPa,cAa,K6,Ie,bHa,RJa,GIa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,aIa,XOa,DPa,WPa,mNa,pI,Ye,Oga,Oha,eha,Nga,yga,iha,lfa,Dea,Vfa,Ufa,Gfa,Ffa,fha,Lga,Hfa,jea,nfa,mfa,Mga,Kga,Bga,zga,hha,Aga,gha,wha,Sea,mLa,G8,Lva,Exa,jwa,Kva,kva,nwa,Fsa,Ira,oua,nua,Hta,Gta,kwa,Iva,Ita,lra,Hsa,Gsa,Jva,Hva,nva,lva,mwa,mva,lwa,Uwa,esa,Je,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,dFa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Ae,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,mEa,sDa,WOa,EPa,XOa,DPa,WPa,mNa,rE,xE,gE,AM,Vk,nE,qd,wW,SS,hba,gX,uF,LL,LL,LL,oL,lB,tr,Dy,HM,XO,jO,dz,ry,Hk,FAa,wG,LL,mLa,G8,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,QN,sF,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,oL,jYa,wC,LL,oL,oL,CK,DL,yf,gFa,nQa,bGa,fFa,oEa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,lf,Oua,Iwa,fva,Nua,jua,jva,Fra,Kqa,Xsa,Wsa,usa,tsa,gva,Lua,vsa,vqa,Hra,Gra,Mua,Kua,mua,kua,iva,lua,hva,Gva,kra,goa,oL,ET,pha,zB,dr,bz,GN,KP,_O,wz,sy,Ik,GAa,dH,LL,pNa,F9,lPa,nQa,BPa,kPa,VOa,CEa,MBa,SAa,zE,Pu,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,zx,hn,oL,oL,oL,nx,sh,Cna,oL,ir,LL,_m,QP,oL,goa,oL,oL,oL,VI,df,tka,Ula,Ika,ska,Nja,Mka,Eia,eia,oja,nja,$ia,_ia,Jka,qka,aja,Nha,Gia,Fia,rka,pka,Qja,Oja,Lka,Pja,Kka,qla,oia,fE,aB,eR,eI,WB,GK,OT,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,oL,eI,oL,oL,oL,De,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,q2,P2,Pe,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,Rba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,uj,lPa,aJa,nQa,BPa,kPa,VOa,XOa,mNa,FPa,LNa,OMa,qba,pba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,DPa,WPa,oL,oL,Xy,Ml,SP,dT,x5,ES,Wt,mya,Zm,nQa,BPa,kPa,VOa,XOa,mNa,LE,FPa,LNa,OMa,dva,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,gqa,DPa,WPa,wf,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,kpa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,o2,N2,Ne,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,Rba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,tj,lPa,aJa,nQa,BPa,kPa,VOa,XOa,mNa,FPa,LNa,OMa,qba,pba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,DPa,WPa,Wy,Ll,RP,bT,v5,DS,Wt,kya,Ym,nQa,BPa,kPa,VOa,XOa,mNa,JE,FPa,LNa,OMa,dva,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,gqa,DPa,WPa,p2,O2,Oe,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,Rba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,sj,lPa,aJa,nQa,BPa,kPa,VOa,XOa,mNa,FPa,LNa,OMa,qba,pba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,DPa,WPa,Iy,Kl,_G,cT,w5,zS,Wt,lya,Wm,nQa,bqa,kPa,VOa,XOa,mNa,KE,FPa,LNa,OMa,dva,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,gqa,DPa,WPa,lV,PI,_e,oka,Tla,Dka,nka,Jja,Hka,Bia,dia,mja,lja,Yia,Xia,Eka,lka,Zia,Mha,Dia,Cia,mka,kka,Mja,Kja,Gka,Lja,Fka,pla,nia,r2,Q2,Fe,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,Rba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,pj,lPa,aJa,nQa,BPa,kPa,VOa,XOa,mNa,FPa,LNa,OMa,qba,pba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,DPa,WPa,Jy,yl,TP,eT,y5,RC,Wt,nya,Xm,nQa,BPa,kPa,VOa,XOa,mNa,ME,FPa,LNa,OMa,eva,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,gqa,DPa,WPa,n2,M2,Ee,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,Rba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,oj,lPa,aJa,nQa,BPa,kPa,VOa,XOa,mNa,FPa,LNa,OMa,qba,pba,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,DPa,WPa,Hy,Jl,ZG,aT,u5,yS,Wt,jya,Vm,nQa,bqa,kPa,VOa,XOa,mNa,IE,FPa,LNa,OMa,dva,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,gqa,DPa,WPa,rk,Sz,Uh,LL,FY,fI,CCa,Hs,ag,jr,ou,dD,$U,twa,Pla,jA,e8,OE,Cn,VZ,k5,mC,J3,Gy,Qi,eI,G2,oL,ye,Saa,Lba,aba,Raa,zaa,eba,T9,D9,jaa,iaa,caa,baa,bba,Paa,daa,w9,V9,U9,Qaa,Oaa,Caa,Aaa,dba,Baa,cba,oba,K9,iU,HY,rba,Hba,WBa,eFa,eDa,VBa,fBa,iDa,fya,iwa,Nza,Mza,dza,cza,fDa,UBa,eza,cva,hya,gya,jPa,TBa,iBa,gBa,hDa,hBa,gDa,WPa,mNa,eI,JGa,UGa,HQ,K$,xaa,xEa,kda,dJ,S1,pda,sw,Yd,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,HCa,ABa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,xU,eO,PS,oL,aB,goa,oL,oL,wt,kt,zB,Vq,Ly,fN,hP,vO,mz,hy,Ck,GAa,BG,LL,pNa,F9,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,vY,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,YD,eJ,Uu,fL,eK,EX,FL,CH,lPa,nQa,BPa,Vpa,lpa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,qia,sg,IX,oaa,An,yZ,wt,kt,LL,fMa,LL,LL,RH,zba,wt,kt,LL,RR,LI,goa,Ze,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,Ola,Nla,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,le,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,lBa,kBa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,d8,eI,ee,lPa,nQa,BPa,kPa,VOa,HDa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Zd,SBa,nQa,dDa,RBa,eBa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,uga,oL,rF,nf,lPa,nQa,BPa,kPa,VOa,FPa,LNa,Jua,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,hL,mf,lPa,nQa,BPa,kPa,VOa,LBa,xza,wua,sOa,mOa,eya,dya,xBa,$Aa,Jza,zya,nza,mza,jPa,hPa,YOa,WOa,EPa,XOa,gua,WPa,mNa,J7,_C,k7,Ve,uka,Pma,BPa,kPa,VOa,FPa,LNa,OMa,sOa,uia,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,tV,mLa,G8,ula,nQa,BPa,tla,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,FC,Qh,VFa,sR,MWa,LL,lPa,_Da,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,me,lPa,nQa,BPa,kPa,VOa,FPa,Aza,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Xd,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,GCa,zBa,gOa,GMa,NNa,MNa,jPa,yBa,IAa,WOa,EPa,XOa,DPa,WPa,mNa,zU,LL,Bo,aJ,af,oma,dna,uma,nma,Yla,yma,_ja,uja,sla,rla,Oka,Nka,vma,lma,Pka,jja,aka,$ja,mma,kma,$la,Zla,xma,_la,wma,Oma,Fja,kd,Ls,Yn,sM,DY,LL,As,aKa,GPa,LC,Fz,KH,qw,xE,xE,NLa,ak,fr,LL,Hm,uF,Dx,vk,Nm,mI,LL,LL,faa,uL,cHa,sf,_4,pNa,F9,sAa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,XH,Re,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,Sca,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,lPa,mGa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,JAa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,uI,We,lPa,nQa,BPa,kPa,VOa,Vla,vha,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,lUa,Nd,aua,Mva,Aua,$ta,sta,Eua,Xqa,iqa,gsa,fsa,Kra,Jra,Bua,Zta,Lra,Wpa,Zqa,Yqa,_ta,Yta,vta,tta,Dua,uta,Cua,Uua,Bqa,oL,oL,ie,lPa,nQa,BPa,kPa,VOa,FPa,fza,OMa,sOa,mOa,fOa,eOa,lFa,WEa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,B6,pNa,F9,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,pta,mBa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,oL,yC,ge,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Tka,Id,Bpa,Aqa,Mpa,Apa,gpa,Qpa,doa,xna,Ioa,Hoa,soa,roa,Npa,ypa,toa,ina,foa,eoa,zpa,xpa,jpa,hpa,Ppa,ipa,Opa,_pa,Nna,bI,EAa,Te,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,Hia,WOa,EPa,XOa,DPa,WPa,mNa,vf,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,FBa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,SK,hf,Cxa,Vya,Wxa,Bxa,cxa,_xa,Gua,Ata,Tva,Sva,tva,sva,Xxa,zxa,uva,Ksa,Iua,Hua,Axa,yxa,fxa,dxa,Zxa,exa,Yxa,yya,fua,Pd,Yva,Lxa,ywa,Xva,vva,Cwa,Lsa,Sra,tua,sua,Qta,Pta,zwa,Vva,Rta,rra,Nsa,Msa,Wva,Uva,yva,wva,Bwa,xva,Awa,hxa,nsa,bi,Daa,Km,LL,LL,qva,qS,oL,Jd,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,Wya,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,se,GEa,nQa,BPa,FEa,UDa,LFa,TCa,Xya,sOa,tDa,fOa,eOa,JFa,EEa,oBa,oya,NNa,MNa,jPa,DEa,nEa,VDa,KFa,XEa,DPa,WPa,mNa,yL,qL,WZ,LZ,mLa,G8,YBa,nQa,BPa,XBa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,Fva,XOa,DPa,WPa,mNa,mLa,G8,lPa,nQa,BPa,RDa,SCa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,Nxa,XOa,DPa,WPa,mNa,eRa,KC,ae,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,BDa,sCa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,be,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,$za,_za,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,RIa,oL,oL,ce,xCa,AFa,CDa,wCa,BBa,FDa,LNa,Twa,bAa,aAa,Cra,Bra,DDa,uCa,jBa,iya,NNa,MNa,vCa,tCa,EBa,CBa,EDa,DBa,DPa,WPa,mNa,oL,fba,m0,eI,pe,lPa,nQa,mFa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Haa,QK,tD,Yu,lPa,DXa,nQa,BPa,kPa,VOa,XOa,mNa,JG,nI,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,DPa,WPa,_y,LL,L7,Dd,lPa,nQa,BPa,kPa,VOa,FPa,iga,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,P6,JHa,oL,eI,eI,iI,Ue,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,dha,cha,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,Nca,DPa,WPa,mNa,we,lPa,nQa,BPa,kPa,VOa,RHa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Td,lPa,nQa,QBa,kPa,VOa,eCa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,iv,he,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,y9,YA,rF,Rz,IS,eI,Od,lPa,nQa,BPa,kPa,VOa,FPa,LNa,Ura,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,v4,pNa,F9,bwa,Mxa,Dwa,awa,zva,Hwa,Osa,Tra,vua,uua,Tta,Sta,Ewa,_va,Uta,sra,Qsa,Psa,$va,Zva,Cva,Ava,Gwa,Bva,Fwa,ixa,osa,oL,qIa,AG,Wha,de,lPa,nQa,BPa,kPa,VOa,GDa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,je,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,vE,oL,qe,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,rd,eEa,oY,$Oa,dBa,fCa,cBa,tAa,jCa,Kza,bva,sOa,Zza,fOa,Lza,gCa,bBa,Lya,hua,NNa,MNa,jPa,aBa,vAa,uAa,iCa,$ra,hCa,WPa,cwa,ema,oe,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,SDa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,vP,__,qma,Via,uca,oK,gf,Vsa,Tua,Bta,Usa,psa,Fta,sqa,Rpa,ura,tra,Uqa,Tqa,Cta,Ssa,Vqa,Cpa,uqa,tqa,Tsa,Rsa,ssa,qsa,Eta,rsa,Dta,iua,aqa,jf,Sza,nQa,nAa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,fw,IJ,wJ,cf,qoa,nQa,Foa,Qva,wna,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,ef,Uoa,nQa,epa,kPa,VOa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,CZ,pNa,F9,JEa,IHa,BPa,IEa,WDa,FPa,LNa,OMa,sOa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XDa,DPa,WPa,Bza,te,HEa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,hqa,mOa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,Om,LL,HD,uf,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,qta,nBa,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,q1,vM,pha,Rs,lia,N7,lt,WU,Sj,D$,oL,ET,zB,$q,$y,yN,CP,VO,vz,ly,Fk,GAa,bH,LL,pNa,F9,lPa,nQa,BPa,kPa,VOa,FPa,LNa,OMa,zE,Pu,fOa,eOa,CPa,iPa,gOa,GMa,NNa,MNa,jPa,hPa,YOa,WOa,EPa,XOa,DPa,WPa,mNa,KH,fma,dja,Gaa,OVa,BKa,QL,pCa,PBa,LQa,az,CJ,hY,ex,JD,h0,C6,fz,IA,Qz,yta,S9,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb,tbb];var qc=[Uab,Ji,Yx,GOa,T$a,T$a,T$a,l_a,l_a,I6,T$a,s5,p6,Z$,uY,I8,O8,s7,a5,c8,j3,h3,i3,k3,g3,JR,Y_,l6,$5,I1,f7,an,y6,k6,ova,F6,yka,g7,_5,R2,AZ,om,JY,eY,j4,N6,o4,G6,l_a,l2,qaa,TQ,W4,X3,E7,ij,u6,v6,w6,t7,l7,Oi,N0,F2,y8,Q5,H6,Xj,L4,f2,cs,gg,x6,O6,u7,R5,h7,$4,F7,R4,STa,Eba,Yca,jta,gda,hLa,kA,_Z,kNa,_P,cQ,Vaa,Ow,Ou,NU,gp,c0,Tza,A$a,Fo,m1,gA,Bz,NF,Pn,Cy,Dv,BEa,sl,Dv,Uza,Uza,Uza,Uza,Uza,ju,cw,Yv,oN,Cv,zT,$F,uG,cl,i4,bra,Dva,Cy,pL,xFa,VPa,X9,Jv,sT,Bh,Eg,AF,ol,pv,mx,dqa,rz,hC,Ax,Cz,AF,NC,DN,Cy,cGa,On,vN,pQ,$p,D0,oz,b1,EF,EF,oD,UN,Tl,Eh,Gh,yh,gn,Ysa,Cy,Ny,Ih,OB,Df,zn,Doa,$N,CF,fF,fF,zD,yD,xD,ez,HR,a1,oJ,$H,UM,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab,Uab];var rc=[e6a,qu,Pm,Jn,AVa,zi,ym,Yoa,j2,AVa,t1,u1,vZ,$V,d4,p4,S2,yR,d1,t3,X$,V$,W$,Y$,U$,U1,jF,K1,M_,hj,H2,d2,T1,g2,I2,J1,F$,C0,t2,G0,h2,u$,Y0,r0,a3,$1,a2,b2,T2,L2,EZ,O3,D1,i2,R0,n$,c2,u2,U2,E1,J2,c1,b3,V0,xya,xya,hma,gma,Rla,B5,HJ,SWa,Wc,W6,If,_H,W6,mt,Nk,qT,Uj,Cg,dG,ZH,nM,pH,pH,Mg,W6,W6,mV,W6,W6,W6,RL,W6,W6,jC,jC,jC,jC,jC,pS,_J,iS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,pS,IZ,Xs,rB,pH,TC,SD,W6,WD,W6,ysa,XZ,qy,qy,qy,hr,W6,qy,ti,_S,W6,NS,W6,GD,lG,IB,Lg,W6,W6,FLa,W6,Nz,Ut,OV,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a,e6a];var sc=[e1a,DJ,cu,Bk,GA,eA,PN,Lj,kh,WL,Bq,e1a,e1a,e1a,e1a,e1a];var tc=[SZa,ov,Lr,UE,Zpa,Zpa,vt,Rk,Xea,i1,gw,Lm,SZa,SZa,SZa,SZa];var uc=[hXa,qx,dN,bj,_i,Ng,Zi,Gg];var vc=[pPa,ng,og,eg,hg,pPa,pPa,pPa];var wc=[rva,ri,li,rva];return{__GLOBAL__I_000101:jbb,__GLOBAL__sub_I_InstrumentLocals_cpp:wta,__GLOBAL__sub_I_InstrumentMemory_cpp:i0a,__GLOBAL__sub_I_LegalizeJSInterface_cpp:EWa,__GLOBAL__sub_I_LogExecution_cpp:tab,__GLOBAL__sub_I_Metrics_cpp:Wab,__GLOBAL__sub_I_OptimizeInstructions_cpp:TMa,__GLOBAL__sub_I_Precompute_cpp:Hab,__GLOBAL__sub_I_RelooperJumpThreading_cpp:U6a,__GLOBAL__sub_I_SafeHeap_cpp:sXa,__GLOBAL__sub_I_TrapMode_cpp:fTa,__GLOBAL__sub_I_iostream_cpp:Lbb,__GLOBAL__sub_I_optimizer_shared_cpp:pLa,__GLOBAL__sub_I_parser_cpp:Ln,__GLOBAL__sub_I_pass_cpp:_ab,__GLOBAL__sub_I_shared_constants_cpp:to,__GLOBAL__sub_I_simple_ast_cpp:Gab,__GLOBAL__sub_I_threads_cpp:dUa,__GLOBAL__sub_I_wasm_cpp:VC,__GLOBAL__sub_I_wasm_emscripten_cpp:_$a,__GLOBAL__sub_I_wasm_js_cpp:Hp,__ZSt18uncaught_exceptionv:c7a,___cxa_can_catch:Xka,___cxa_demangle:Li,___cxa_is_pointer_type:eWa,___divdi3:XW,___emscripten_environ_constructor:W8a,___muldi3:GBa,___remdi3:GR,___udivdi3:yYa,___uremdi3:tya,__get_environ:Pbb,_bitshift64Ashr:BJa,_bitshift64Lshr:JMa,_bitshift64Shl:mMa,_call_from_js:Zh,_emscripten_replace_memory:_b,_free:rg,_i64Add:BOa,_i64Subtract:SRa,_instantiate:Hv,_interpreter_stack_trace:a6,_llvm_bswap_i32:UZa,_llvm_nearbyint_f32:H0a,_llvm_nearbyint_f64:H0a,_load_asm2wasm:dl,_load_binary2wasm:Qx,_load_s_expr2wasm:Dz,_malloc:Kc,_memcpy:Ku,_memmove:kia,_memset:iH,_pthread_cond_broadcast:vbb,_pthread_mutex_lock:vbb,_pthread_mutex_unlock:vbb,_sbrk:sba,dynCall_di:W2a,dynCall_i:Tab,dynCall_ii:w2a,dynCall_iid:r$a,dynCall_iii:RZa,dynCall_iiii:dWa,dynCall_iiiii:tSa,dynCall_iiiiid:cPa,dynCall_iiiiii:jOa,dynCall_iiiiiid:QKa,dynCall_iiiiiii:lJa,dynCall_iiiiiiii:NDa,dynCall_iiiiiiiii:Gya,dynCall_iiiiiiiiiiii:mha,dynCall_v:nbb,dynCall_vi:G6a,dynCall_vii:M$a,dynCall_viii:kXa,dynCall_viiii:LTa,dynCall_viiiii:SPa,dynCall_viiiiii:zLa,dynCall_viiiiiii:gGa,dynCall_viiiiiiiiii:Ina,dynCall_viiiiiiiiiiiiiii:q4,establishStackSpace:r4a,getTempRet0:Mbb,runPostSets:AOa,setTempRet0:Dbb,setThrew:L$a,stackAlloc:wXa,stackRestore:Bbb,stackSave:Nbb}}) // EMSCRIPTEN_END_ASM diff --git a/build-js.sh b/build-js.sh index 99471e29eca..26ee22422be 100755 --- a/build-js.sh +++ b/build-js.sh @@ -354,8 +354,8 @@ export_function "_BinaryenLeFloat64" export_function "_BinaryenGtFloat64" export_function "_BinaryenGeFloat64" export_function "_BinaryenPageSize" -export_function "_BinaryenCurrentMemory" -export_function "_BinaryenGrowMemory" +export_function "_BinaryenMemorySize" +export_function "_BinaryenMemoryGrow" export_function "_BinaryenHasFeature" export_function "_BinaryenAtomicRMWAdd" export_function "_BinaryenAtomicRMWSub" diff --git a/src/asm2wasm.h b/src/asm2wasm.h index f6b6da43d0a..5ece3cd2cbf 100644 --- a/src/asm2wasm.h +++ b/src/asm2wasm.h @@ -1121,7 +1121,7 @@ void Asm2WasmBuilder::processAsm(Ref ast) { // exporting a function IString value = pair[1]->getIString(); if (key == Name("_emscripten_replace_memory")) { - // asm.js memory growth provides this special non-asm function, which we don't need (we use grow_memory) + // asm.js memory growth provides this special non-asm function, which we don't need (we use memory.grow) assert(!wasm.getFunctionOrNull(value)); continue; } else if (key == UDIVMODDI4) { diff --git a/src/asmjs/shared-constants.cpp b/src/asmjs/shared-constants.cpp index 32ddb6c2ca3..ca9d8aac1fa 100644 --- a/src/asmjs/shared-constants.cpp +++ b/src/asmjs/shared-constants.cpp @@ -87,8 +87,8 @@ cashew::IString GLOBAL("global"), WASM_ROTL64("__wasm_rotl_i64"), WASM_ROTR32("__wasm_rotr_i32"), WASM_ROTR64("__wasm_rotr_i64"), - WASM_GROW_MEMORY("__wasm_grow_memory"), - WASM_CURRENT_MEMORY("__wasm_current_memory"), + WASM_MEMORY_GROW("__wasm_memory_grow"), + WASM_MEMORY_SIZE("__wasm_memory_size"), WASM_FETCH_HIGH_BITS("__wasm_fetch_high_bits"), INT64_TO_32_HIGH_BITS("i64toi32_i32$HIGH_BITS"), WASM_NEAREST_F32("__wasm_nearest_f32"), diff --git a/src/asmjs/shared-constants.h b/src/asmjs/shared-constants.h index c57b03ea555..67e23cf928a 100644 --- a/src/asmjs/shared-constants.h +++ b/src/asmjs/shared-constants.h @@ -90,8 +90,8 @@ extern cashew::IString GLOBAL, WASM_ROTL64, WASM_ROTR32, WASM_ROTR64, - WASM_GROW_MEMORY, - WASM_CURRENT_MEMORY, + WASM_MEMORY_GROW, + WASM_MEMORY_SIZE, WASM_FETCH_HIGH_BITS, INT64_TO_32_HIGH_BITS, WASM_NEAREST_F32, diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp index e52c1ac3752..d2bff53020d 100644 --- a/src/binaryen-c.cpp +++ b/src/binaryen-c.cpp @@ -382,8 +382,8 @@ BinaryenOp BinaryenLeFloat64(void) { return LeFloat64; } BinaryenOp BinaryenGtFloat64(void) { return GtFloat64; } BinaryenOp BinaryenGeFloat64(void) { return GeFloat64; } BinaryenOp BinaryenPageSize(void) { return PageSize; } -BinaryenOp BinaryenCurrentMemory(void) { return CurrentMemory; } -BinaryenOp BinaryenGrowMemory(void) { return GrowMemory; } +BinaryenOp BinaryenMemorySize(void) { return MemorySize; } +BinaryenOp BinaryenMemoryGrow(void) { return MemoryGrow; } BinaryenOp BinaryenHasFeature(void) { return HasFeature; } BinaryenOp BinaryenAtomicRMWAdd(void) { return AtomicRMWOp::Add; } BinaryenOp BinaryenAtomicRMWSub(void) { return AtomicRMWOp::Sub; } diff --git a/src/binaryen-c.h b/src/binaryen-c.h index bde519aa77b..bae99fbd61a 100644 --- a/src/binaryen-c.h +++ b/src/binaryen-c.h @@ -317,8 +317,8 @@ BinaryenOp BinaryenLeFloat64(void); BinaryenOp BinaryenGtFloat64(void); BinaryenOp BinaryenGeFloat64(void); BinaryenOp BinaryenPageSize(void); -BinaryenOp BinaryenCurrentMemory(void); -BinaryenOp BinaryenGrowMemory(void); +BinaryenOp BinaryenMemorySize(void); +BinaryenOp BinaryenMemoryGrow(void); BinaryenOp BinaryenHasFeature(void); BinaryenOp BinaryenAtomicRMWAdd(void); BinaryenOp BinaryenAtomicRMWSub(void); diff --git a/src/ir/effects.h b/src/ir/effects.h index b6eafae27b3..0900431df1c 100644 --- a/src/ir/effects.h +++ b/src/ir/effects.h @@ -53,7 +53,7 @@ struct EffectAnalyzer : public PostWalker { // can't move them in a way that would cause other noticeable // (global) side effects bool isAtomic = false; // An atomic load/store/RMW/Cmpxchg or an operator that - // has a defined ordering wrt atomics (e.g. grow_memory) + // has a defined ordering wrt atomics (e.g. memory.grow) bool accessesLocal() { return localsRead.size() + localsWritten.size() > 0; } bool accessesGlobal() { return globalsRead.size() + globalsWritten.size() > 0; } @@ -268,9 +268,9 @@ struct EffectAnalyzer : public PostWalker { void visitReturn(Return *curr) { branches = true; } void visitHost(Host *curr) { calls = true; - // grow_memory modifies the set of valid addresses, and thus can be modeled as modifying memory + // memory.grow modifies the set of valid addresses, and thus can be modeled as modifying memory writesMemory = true; - // Atomics are also sequentially consistent with grow_memory. + // Atomics are also sequentially consistent with memory.grow. isAtomic = true; } void visitUnreachable(Unreachable *curr) { branches = true; } diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js index f387acb4fe1..a5a62230e1b 100644 --- a/src/js/binaryen.js-post.js +++ b/src/js/binaryen.js-post.js @@ -197,8 +197,8 @@ Module['LeFloat64'] = Module['_BinaryenLeFloat64'](); Module['GtFloat64'] = Module['_BinaryenGtFloat64'](); Module['GeFloat64'] = Module['_BinaryenGeFloat64'](); Module['PageSize'] = Module['_BinaryenPageSize'](); -Module['CurrentMemory'] = Module['_BinaryenCurrentMemory'](); -Module['GrowMemory'] = Module['_BinaryenGrowMemory'](); +Module['MemorySize'] = Module['_BinaryenMemorySize'](); +Module['MemoryGrow'] = Module['_BinaryenMemoryGrow'](); Module['HasFeature'] = Module['_BinaryenHasFeature'](); Module['AtomicRMWAdd'] = Module['_BinaryenAtomicRMWAdd'](); Module['AtomicRMWSub'] = Module['_BinaryenAtomicRMWSub'](); @@ -277,11 +277,11 @@ Module['Module'] = function(module) { this['setGlobal'] = this['set_global'] = function(name, value) { return Module['_BinaryenSetGlobal'](module, strToStack(name), value); } - this['currentMemory'] = this['current_memory'] = function() { - return Module['_BinaryenHost'](module, Module['CurrentMemory']); + this['memorySize'] = this['memory_size'] = function() { + return Module['_BinaryenHost'](module, Module['MemorySize']); } - this['growMemory'] = this['grow_memory'] = function(value) { - return Module['_BinaryenHost'](module, Module['GrowMemory'], null, i32sToStack([value]), 1); + this['memoryGrow'] = this['memory_grow'] = function(value) { + return Module['_BinaryenHost'](module, Module['MemoryGrow'], null, i32sToStack([value]), 1); } this['hasFeature'] = this['has_feature'] = function(name) { return Module['_BinaryenHost'](module, Module['HasFeature'], strToStack(name)); diff --git a/src/passes/Print.cpp b/src/passes/Print.cpp index 28e7cc34fb6..bf168945c61 100644 --- a/src/passes/Print.cpp +++ b/src/passes/Print.cpp @@ -398,8 +398,8 @@ struct PrintExpressionContents : public Visitor { void visitHost(Host* curr) { switch (curr->op) { case PageSize: printMedium(o, "pagesize"); break; - case CurrentMemory: printMedium(o, "current_memory"); break; - case GrowMemory: printMedium(o, "grow_memory"); break; + case MemorySize: printMedium(o, "memory.size"); break; + case MemoryGrow: printMedium(o, "memory.grow"); break; case HasFeature: printMedium(o, "hasfeature ") << curr->nameOperand; break; default: WASM_UNREACHABLE(); } @@ -767,7 +767,7 @@ struct PrintSExpression : public Visitor { o << '('; PrintExpressionContents(currFunction, o).visit(curr); switch (curr->op) { - case GrowMemory: { + case MemoryGrow: { incIndent(); printFullLine(curr->operands[0]); decIndent(); diff --git a/src/passes/RemoveUnusedModuleElements.cpp b/src/passes/RemoveUnusedModuleElements.cpp index 6cd050da976..388bc25504b 100644 --- a/src/passes/RemoveUnusedModuleElements.cpp +++ b/src/passes/RemoveUnusedModuleElements.cpp @@ -122,7 +122,7 @@ struct ReachabilityAnalyzer : public PostWalker { usesMemory = true; } void visitHost(Host* curr) { - if (curr->op == CurrentMemory || curr->op == GrowMemory) { + if (curr->op == MemorySize || curr->op == MemoryGrow) { usesMemory = true; } } diff --git a/src/shell-interface.h b/src/shell-interface.h index 5b01b4be66f..ff20811329b 100644 --- a/src/shell-interface.h +++ b/src/shell-interface.h @@ -180,7 +180,7 @@ struct ShellExternalInterface final : ModuleInstance::ExternalInterface { void store32(Address addr, int32_t value) override { memory.set(addr, value); } void store64(Address addr, int64_t value) override { memory.set(addr, value); } - void growMemory(Address /*oldSize*/, Address newSize) override { + void memoryGrow(Address /*oldSize*/, Address newSize) override { memory.resize(newSize); } diff --git a/src/tools/wasm-ctor-eval.cpp b/src/tools/wasm-ctor-eval.cpp index dee34225593..d5bf30bc640 100644 --- a/src/tools/wasm-ctor-eval.cpp +++ b/src/tools/wasm-ctor-eval.cpp @@ -250,8 +250,8 @@ struct CtorEvalExternalInterface : EvallingModuleInstance::ExternalInterface { void store32(Address addr, int32_t value) override { doStore(addr, value); } void store64(Address addr, int64_t value) override { doStore(addr, value); } - void growMemory(Address /*oldSize*/, Address newSize) override { - throw FailToEvalException("grow memory"); + void memoryGrow(Address /*oldSize*/, Address newSize) override { + throw FailToEvalException("memory.grow"); } void trap(const char* why) override { diff --git a/src/wasm-binary.h b/src/wasm-binary.h index a1155f68473..36dbca618b2 100644 --- a/src/wasm-binary.h +++ b/src/wasm-binary.h @@ -402,8 +402,8 @@ enum ASTNodes { I64StoreMem16 = 0x3d, I64StoreMem32 = 0x3e, - CurrentMemory = 0x3f, - GrowMemory = 0x40, + MemorySize = 0x3f, + MemoryGrow = 0x40, I32Const = 0x41, I64Const = 0x42, diff --git a/src/wasm-interpreter.h b/src/wasm-interpreter.h index a2c4aad4305..98b2634dbd6 100644 --- a/src/wasm-interpreter.h +++ b/src/wasm-interpreter.h @@ -547,7 +547,7 @@ class ModuleInstanceBase { virtual void importGlobals(GlobalManager& globals, Module& wasm) = 0; virtual Literal callImport(Import* import, LiteralList& arguments) = 0; virtual Literal callTable(Index index, LiteralList& arguments, Type result, SubType& instance) = 0; - virtual void growMemory(Address oldSize, Address newSize) = 0; + virtual void memoryGrow(Address oldSize, Address newSize) = 0; virtual void trap(const char* why) = 0; // the default impls for load and store switch on the sizes. you can either @@ -926,8 +926,8 @@ class ModuleInstanceBase { NOTE_ENTER("Host"); switch (curr->op) { case PageSize: return Literal((int32_t)Memory::kPageSize); - case CurrentMemory: return Literal(int32_t(instance.memorySize)); - case GrowMemory: { + case MemorySize: return Literal(int32_t(instance.memorySize)); + case MemoryGrow: { auto fail = Literal(int32_t(-1)); Flow flow = this->visit(curr->operands[0]); if (flow.breaking()) return flow; @@ -937,7 +937,7 @@ class ModuleInstanceBase { if (instance.memorySize >= uint32_t(-1) - delta) return fail; uint32_t newSize = instance.memorySize + delta; if (newSize > instance.wasm.memory.max) return fail; - instance.externalInterface->growMemory(instance.memorySize * Memory::kPageSize, newSize * Memory::kPageSize); + instance.externalInterface->memoryGrow(instance.memorySize * Memory::kPageSize, newSize * Memory::kPageSize); instance.memorySize = newSize; return Literal(int32_t(ret)); } diff --git a/src/wasm-js.cpp b/src/wasm-js.cpp index 5bcd7e133d4..91769c8bce8 100644 --- a/src/wasm-js.cpp +++ b/src/wasm-js.cpp @@ -488,7 +488,7 @@ extern "C" void EMSCRIPTEN_KEEPALIVE instantiate() { } } - void growMemory(Address oldSize, Address newSize) override { + void memoryGrow(Address oldSize, Address newSize) override { EM_ASM_({ var size = $0; var buffer; diff --git a/src/wasm-stack.h b/src/wasm-stack.h index fffc0ce4521..2bfafe8a43a 100644 --- a/src/wasm-stack.h +++ b/src/wasm-stack.h @@ -1084,10 +1084,10 @@ template void StackWriter::visitHost(Host* curr) { if (debug) std::cerr << "zz node: Host" << std::endl; switch (curr->op) { - case CurrentMemory: { + case MemorySize: { break; } - case GrowMemory: { + case MemoryGrow: { visitChild(curr->operands[0]); break; } @@ -1095,12 +1095,12 @@ void StackWriter::visitHost(Host* curr) { } if (justAddToStack(curr)) return; switch (curr->op) { - case CurrentMemory: { - o << int8_t(BinaryConsts::CurrentMemory); + case MemorySize: { + o << int8_t(BinaryConsts::MemorySize); break; } - case GrowMemory: { - o << int8_t(BinaryConsts::GrowMemory); + case MemoryGrow: { + o << int8_t(BinaryConsts::MemoryGrow); break; } default: WASM_UNREACHABLE(); diff --git a/src/wasm.h b/src/wasm.h index 49b0881b92f..c0623fb984d 100644 --- a/src/wasm.h +++ b/src/wasm.h @@ -123,7 +123,7 @@ enum BinaryOp { }; enum HostOp { - PageSize, CurrentMemory, GrowMemory, HasFeature + PageSize, MemorySize, MemoryGrow, HasFeature }; enum AtomicRMWOp { diff --git a/src/wasm/wasm-binary.cpp b/src/wasm/wasm-binary.cpp index 6af46cbd168..b905f1a8a7b 100644 --- a/src/wasm/wasm-binary.cpp +++ b/src/wasm/wasm-binary.cpp @@ -2374,15 +2374,15 @@ void WasmBinaryBuilder::visitReturn(Return* curr) { bool WasmBinaryBuilder::maybeVisitHost(Expression*& out, uint8_t code) { Host* curr; switch (code) { - case BinaryConsts::CurrentMemory: { + case BinaryConsts::MemorySize: { curr = allocator.alloc(); - curr->op = CurrentMemory; + curr->op = MemorySize; curr->type = i32; break; } - case BinaryConsts::GrowMemory: { + case BinaryConsts::MemoryGrow: { curr = allocator.alloc(); - curr->op = GrowMemory; + curr->op = MemoryGrow; curr->operands.resize(1); curr->operands[0] = popNonVoidExpression(); break; @@ -2391,7 +2391,7 @@ bool WasmBinaryBuilder::maybeVisitHost(Expression*& out, uint8_t code) { } if (debug) std::cerr << "zz node: Host" << std::endl; auto reserved = getU32LEB(); - if (reserved != 0) throwError("Invalid reserved field on grow_memory/current_memory"); + if (reserved != 0) throwError("Invalid reserved field on memory.grow/memory.size"); curr->finalize(); out = curr; return true; diff --git a/src/wasm/wasm-emscripten.cpp b/src/wasm/wasm-emscripten.cpp index 65d3858709e..504243db8a0 100644 --- a/src/wasm/wasm-emscripten.cpp +++ b/src/wasm/wasm-emscripten.cpp @@ -140,7 +140,7 @@ Function* EmscriptenGlueGenerator::generateMemoryGrowthFunction() { name, std::move(params), i32, {} ); growFunction->body = builder.makeHost( - GrowMemory, + MemoryGrow, Name(), { builder.makeGetLocal(0, i32) } ); diff --git a/src/wasm/wasm-s-parser.cpp b/src/wasm/wasm-s-parser.cpp index 5635282f7bf..fbaca68c7e8 100644 --- a/src/wasm/wasm-s-parser.cpp +++ b/src/wasm/wasm-s-parser.cpp @@ -649,12 +649,22 @@ Expression* SExpressionWasmBuilder::makeExpression(Element& s) { const char *str = id.str; const char *dot = strchr(str, '.'); if (dot) { + // memory. + if (str[0] == 'm') { + // memory.size + if (str[7] == 's') return makeHost(s, HostOp::MemorySize); + // memory.grow + if (str[7] == 'g') return makeHost(s, HostOp::MemoryGrow); + abort_on(str); + } + // type.operation (e.g. i32.add) Type type = stringToType(str, false, true); // Local copy to index into op without bounds checking. enum { maxNameSize = 15 }; char op[maxNameSize + 1] = {'\0'}; strncpy(op, dot + 1, maxNameSize); + #define BINARY_INT_OR_FLOAT(op) (type == i32 ? BinaryOp::op##Int32 : (type == i64 ? BinaryOp::op##Int64 : (type == f32 ? BinaryOp::op##Float32 : BinaryOp::op##Float64))) #define BINARY_INT(op) (type == i32 ? BinaryOp::op##Int32 : BinaryOp::op##Int64) #define BINARY_FLOAT(op) (type == f32 ? BinaryOp::op##Float32 : BinaryOp::op##Float64) @@ -812,7 +822,7 @@ Expression* SExpressionWasmBuilder::makeExpression(Element& s) { if (id == CALL) return makeCall(s); if (id == CALL_IMPORT) return makeCallImport(s); if (id == CALL_INDIRECT) return makeCallIndirect(s); - } else if (str[1] == 'u') return makeHost(s, HostOp::CurrentMemory); + } abort_on(str); } case 'd': { @@ -828,7 +838,6 @@ Expression* SExpressionWasmBuilder::makeExpression(Element& s) { if (str[4] == 'l') return makeGetLocal(s); if (str[4] == 'g') return makeGetGlobal(s); } - if (str[1] == 'r') return makeHost(s, HostOp::GrowMemory); abort_on(str); } case 'h': { @@ -980,9 +989,9 @@ Expression* SExpressionWasmBuilder::makeHost(Element& s, HostOp op) { } else { parseCallOperands(s, 1, s.size(), ret); } - if (ret->op == HostOp::GrowMemory) { + if (ret->op == HostOp::MemoryGrow) { if (ret->operands.size() != 1) { - throw ParseException("grow_memory needs one operand"); + throw ParseException("memory.grow needs one operand"); } } else { if (ret->operands.size() != 0) { diff --git a/src/wasm/wasm-validator.cpp b/src/wasm/wasm-validator.cpp index 4a6ed19be77..5f553689d4e 100644 --- a/src/wasm/wasm-validator.cpp +++ b/src/wasm/wasm-validator.cpp @@ -797,13 +797,13 @@ void FunctionValidator::visitReturn(Return* curr) { void FunctionValidator::visitHost(Host* curr) { switch (curr->op) { - case GrowMemory: { - shouldBeEqual(curr->operands.size(), size_t(1), curr, "grow_memory must have 1 operand"); - shouldBeEqualOrFirstIsUnreachable(curr->operands[0]->type, i32, curr, "grow_memory must have i32 operand"); + case MemoryGrow: { + shouldBeEqual(curr->operands.size(), size_t(1), curr, "memory.grow must have 1 operand"); + shouldBeEqualOrFirstIsUnreachable(curr->operands[0]->type, i32, curr, "memory.grow must have i32 operand"); break; } case PageSize: - case CurrentMemory: + case MemorySize: case HasFeature: break; default: WASM_UNREACHABLE(); } diff --git a/src/wasm/wasm.cpp b/src/wasm/wasm.cpp index 433803772be..42734606791 100644 --- a/src/wasm/wasm.cpp +++ b/src/wasm/wasm.cpp @@ -558,11 +558,11 @@ void Drop::finalize() { void Host::finalize() { switch (op) { - case PageSize: case CurrentMemory: case HasFeature: { + case PageSize: case MemorySize: case HasFeature: { type = i32; break; } - case GrowMemory: { + case MemoryGrow: { // if the single operand is not reachable, so are we if (operands[0]->type == unreachable) { type = unreachable; diff --git a/src/wasm2js.h b/src/wasm2js.h index 40f8e30573b..3e119fb569f 100644 --- a/src/wasm2js.h +++ b/src/wasm2js.h @@ -747,7 +747,7 @@ void Wasm2JSBuilder::addExports(Ref ast, Module* wasm) { ValueBuilder::appendToObject( growDesc, IString("value"), - ValueBuilder::makeName(WASM_GROW_MEMORY)); + ValueBuilder::makeName(WASM_MEMORY_GROW)); Ref bufferDesc = ValueBuilder::makeObject(); Ref bufferGetter = ValueBuilder::makeFunction(IString("")); bufferGetter[3]->push_back(ValueBuilder::makeReturn( @@ -2014,15 +2014,15 @@ Ref Wasm2JSBuilder::processFunctionBody(Module* m, Function* func, IString resul Ref visitHost(Host* curr) { Ref call; - if (curr->op == HostOp::GrowMemory) { - parent->setNeedsAlmostASM("grow_memory op"); - call = ValueBuilder::makeCall(WASM_GROW_MEMORY, + if (curr->op == HostOp::MemoryGrow) { + parent->setNeedsAlmostASM("memory.grow op"); + call = ValueBuilder::makeCall(WASM_MEMORY_GROW, makeAsmCoercion( visit(curr->operands[0], EXPRESSION_RESULT), wasmToAsmType(curr->operands[0]->type))); - } else if (curr->op == HostOp::CurrentMemory) { - parent->setNeedsAlmostASM("current_memory op"); - call = ValueBuilder::makeCall(WASM_CURRENT_MEMORY); + } else if (curr->op == HostOp::MemorySize) { + parent->setNeedsAlmostASM("memory.size op"); + call = ValueBuilder::makeCall(WASM_MEMORY_SIZE); } else { return ValueBuilder::makeCall(ABORT_FUNC); } @@ -2264,10 +2264,10 @@ void Wasm2JSBuilder::setNeedsAlmostASM(const char *reason) { } void Wasm2JSBuilder::addMemoryGrowthFuncs(Ref ast) { - Ref growMemoryFunc = ValueBuilder::makeFunction(WASM_GROW_MEMORY); - ValueBuilder::appendArgumentToFunction(growMemoryFunc, IString("pagesToAdd")); + Ref memoryGrowFunc = ValueBuilder::makeFunction(WASM_MEMORY_GROW); + ValueBuilder::appendArgumentToFunction(memoryGrowFunc, IString("pagesToAdd")); - growMemoryFunc[3]->push_back( + memoryGrowFunc[3]->push_back( ValueBuilder::makeStatement( ValueBuilder::makeBinary( ValueBuilder::makeName(IString("pagesToAdd")), SET, @@ -2280,14 +2280,14 @@ void Wasm2JSBuilder::addMemoryGrowthFuncs(Ref ast) { ); Ref oldPages = ValueBuilder::makeVar(); - growMemoryFunc[3]->push_back(oldPages); + memoryGrowFunc[3]->push_back(oldPages); ValueBuilder::appendToVar( oldPages, IString("oldPages"), - makeAsmCoercion(ValueBuilder::makeCall(WASM_CURRENT_MEMORY), AsmType::ASM_INT)); + makeAsmCoercion(ValueBuilder::makeCall(WASM_MEMORY_SIZE), AsmType::ASM_INT)); Ref newPages = ValueBuilder::makeVar(); - growMemoryFunc[3]->push_back(newPages); + memoryGrowFunc[3]->push_back(newPages); ValueBuilder::appendToVar( newPages, IString("newPages"), @@ -2298,7 +2298,7 @@ void Wasm2JSBuilder::addMemoryGrowthFuncs(Ref ast) { ), AsmType::ASM_INT)); Ref block = ValueBuilder::makeBlock(); - growMemoryFunc[3]->push_back(ValueBuilder::makeIf( + memoryGrowFunc[3]->push_back(ValueBuilder::makeIf( ValueBuilder::makeBinary( ValueBuilder::makeBinary( ValueBuilder::makeName(IString("oldPages")), @@ -2392,12 +2392,12 @@ void Wasm2JSBuilder::addMemoryGrowthFuncs(Ref ast) { ) ); - growMemoryFunc[3]->push_back( + memoryGrowFunc[3]->push_back( ValueBuilder::makeReturn( ValueBuilder::makeName(IString("oldPages")))); - Ref currentMemoryFunc = ValueBuilder::makeFunction(WASM_CURRENT_MEMORY); - currentMemoryFunc[3]->push_back(ValueBuilder::makeReturn( + Ref memorySizeFunc = ValueBuilder::makeFunction(WASM_MEMORY_SIZE); + memorySizeFunc[3]->push_back(ValueBuilder::makeReturn( makeAsmCoercion( ValueBuilder::makeBinary( ValueBuilder::makeDot( @@ -2410,8 +2410,8 @@ void Wasm2JSBuilder::addMemoryGrowthFuncs(Ref ast) { AsmType::ASM_INT ) )); - ast->push_back(growMemoryFunc); - ast->push_back(currentMemoryFunc); + ast->push_back(memoryGrowFunc); + ast->push_back(memorySizeFunc); } bool Wasm2JSBuilder::isAssertHandled(Element& e) { diff --git a/test/binaryen.js/sieve.js b/test/binaryen.js/sieve.js index 4c1e5eefc9f..2e067dbaddb 100644 --- a/test/binaryen.js/sieve.js +++ b/test/binaryen.js/sieve.js @@ -14,13 +14,13 @@ var body = module.block( module.if( module.i32.lt_u( module.i32.mul( - module.current_memory(), + module.memory_size(), module.i32.const(65536) ), module.get_local(0, Binaryen.i32) ), module.drop( - module.grow_memory( + module.memory_grow( module.i32.sub( module.i32.div_u( module.i32.add( @@ -29,7 +29,7 @@ var body = module.block( ), module.i32.const(65536) ), - module.current_memory() + module.memory_size() ) ) ) diff --git a/test/binaryen.js/sieve.js.txt b/test/binaryen.js/sieve.js.txt index 97816e6b363..dc85bfc7b71 100644 --- a/test/binaryen.js/sieve.js.txt +++ b/test/binaryen.js/sieve.js.txt @@ -7,13 +7,13 @@ (if (i32.lt_u (i32.mul - (current_memory) + (memory.size) (i32.const 65536) ) (get_local $0) ) (drop - (grow_memory + (memory.grow (i32.sub (i32.div_u (i32.add @@ -22,7 +22,7 @@ ) (i32.const 65536) ) - (current_memory) + (memory.size) ) ) ) @@ -65,13 +65,13 @@ optimized: (if (i32.lt_u (i32.shl - (current_memory) + (memory.size) (i32.const 16) ) (get_local $0) ) (drop - (grow_memory + (memory.grow (i32.sub (i32.div_u (i32.add @@ -80,7 +80,7 @@ optimized: ) (i32.const 65536) ) - (current_memory) + (memory.size) ) ) ) diff --git a/test/dot_s/hostFinalize.wast b/test/dot_s/hostFinalize.wast index 825f29e4b4b..abaf269874e 100644 --- a/test/dot_s/hostFinalize.wast +++ b/test/dot_s/hostFinalize.wast @@ -6,9 +6,9 @@ (export "stackRestore" (func $stackRestore)) (func $_main (; 0 ;) (drop - (grow_memory + (memory.grow (i32.add - (current_memory) + (memory.size) (i32.const 1) ) ) diff --git a/test/dynamicLibrary.asm.js b/test/dynamicLibrary.asm.js index 142fd7c9822..f28879268e8 100644 --- a/test/dynamicLibrary.asm.js +++ b/test/dynamicLibrary.asm.js @@ -1,7 +1,7 @@ Module["asm"] = (function(global, env, buffer) { 'almost asm'; - - + + var HEAP8 = new global.Int8Array(buffer); var HEAP16 = new global.Int16Array(buffer); var HEAP32 = new global.Int32Array(buffer); @@ -51,7 +51,7 @@ Module["asm"] = (function(global, env, buffer) { var assert=env.assert; var enlargeMemory=env.enlargeMemory; var getTotalMemory=env.getTotalMemory; - var abortOnCannotGrowMemory=env.abortOnCannotGrowMemory; + var abortOnCannotMemoryGrow=env.abortOnCannotMemoryGrow; var abortStackOverflow=env.abortStackOverflow; var setTempRet0=env.setTempRet0; var getTempRet0=env.getTempRet0; @@ -125,7 +125,7 @@ function __post_instantiate() { __GLOBAL__sub_I_liblib_cpp(); } - + // EMSCRIPTEN_END_FUNCS diff --git a/test/lld/duplicate_imports.wast.out b/test/lld/duplicate_imports.wast.out index e6e3a175b8a..21b07303ff1 100644 --- a/test/lld/duplicate_imports.wast.out +++ b/test/lld/duplicate_imports.wast.out @@ -96,7 +96,7 @@ ) ) (func $__growWasmMemory (; 12 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/lld/em_asm.wast.out b/test/lld/em_asm.wast.out index 487551ee64b..f4d83cae923 100644 --- a/test/lld/em_asm.wast.out +++ b/test/lld/em_asm.wast.out @@ -70,7 +70,7 @@ ) ) (func $__growWasmMemory (; 8 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/lld/hello_world.wast.out b/test/lld/hello_world.wast.out index 86d75ff3a20..d39c6450b53 100644 --- a/test/lld/hello_world.wast.out +++ b/test/lld/hello_world.wast.out @@ -54,7 +54,7 @@ ) ) (func $__growWasmMemory (; 6 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/lld/init.wast.out b/test/lld/init.wast.out index b0c97195ae8..f486adf53ea 100644 --- a/test/lld/init.wast.out +++ b/test/lld/init.wast.out @@ -66,7 +66,7 @@ ) ) (func $__growWasmMemory (; 7 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/lld/recursive.wast.out b/test/lld/recursive.wast.out index 47527d058e8..f0067091873 100644 --- a/test/lld/recursive.wast.out +++ b/test/lld/recursive.wast.out @@ -112,7 +112,7 @@ ) ) (func $__growWasmMemory (; 7 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/lld/reserved_func_ptr.wast.jscall.out b/test/lld/reserved_func_ptr.wast.jscall.out index 44f2e888f7c..040f01b78be 100644 --- a/test/lld/reserved_func_ptr.wast.jscall.out +++ b/test/lld/reserved_func_ptr.wast.jscall.out @@ -158,7 +158,7 @@ ) ) (func $__growWasmMemory (; 14 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/lld/reserved_func_ptr.wast.out b/test/lld/reserved_func_ptr.wast.out index c94b4fdd6bd..fbb7e88aa10 100644 --- a/test/lld/reserved_func_ptr.wast.out +++ b/test/lld/reserved_func_ptr.wast.out @@ -142,7 +142,7 @@ ) ) (func $__growWasmMemory (; 8 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/llvm_autogenerated/memory-addr32.wast b/test/llvm_autogenerated/memory-addr32.wast index fad885f22db..b64bdbd2a2d 100644 --- a/test/llvm_autogenerated/memory-addr32.wast +++ b/test/llvm_autogenerated/memory-addr32.wast @@ -2,19 +2,19 @@ (import "env" "memory" (memory $0 1)) (table 0 anyfunc) (data (i32.const 4) "\10\04\00\00") - (export "current_memory" (func $current_memory)) - (export "grow_memory" (func $grow_memory)) + (export "memory.size" (func $memory.size)) + (export "memory.grow" (func $memory.grow)) (export "stackSave" (func $stackSave)) (export "stackAlloc" (func $stackAlloc)) (export "stackRestore" (func $stackRestore)) - (func $current_memory (; 0 ;) (result i32) + (func $memory.size (; 0 ;) (result i32) (return - (current_memory) + (memory.size) ) ) - (func $grow_memory (; 1 ;) (param $0 i32) + (func $memory.grow (; 1 ;) (param $0 i32) (drop - (grow_memory + (memory.grow (get_local $0) ) ) @@ -50,4 +50,4 @@ ) ) ) -;; METADATA: { "asmConsts": {},"staticBump": 1040, "initializers": [], "declares": [], "externs": [], "implementedFunctions": ["_current_memory","_grow_memory","_stackSave","_stackAlloc","_stackRestore"], "exports": ["current_memory","grow_memory","stackSave","stackAlloc","stackRestore"], "invokeFuncs": [] } +;; METADATA: { "asmConsts": {},"staticBump": 1040, "initializers": [], "declares": [], "externs": [], "implementedFunctions": ["_memory.size","_memory.grow","_stackSave","_stackAlloc","_stackRestore"], "exports": ["memory.size","memory.grow","stackSave","stackAlloc","stackRestore"], "invokeFuncs": [] } diff --git a/test/grow_memory.cpp b/test/memory_grow_binaryen.cpp similarity index 100% rename from test/grow_memory.cpp rename to test/memory_grow_binaryen.cpp diff --git a/test/grow_memory.emcc b/test/memory_grow_binaryen.emcc similarity index 100% rename from test/grow_memory.emcc rename to test/memory_grow_binaryen.emcc diff --git a/test/grow_memory.txt b/test/memory_grow_binaryen.txt similarity index 100% rename from test/grow_memory.txt rename to test/memory_grow_binaryen.txt diff --git a/test/grow_memory.wast b/test/memory_grow_binaryen.wast similarity index 90% rename from test/grow_memory.wast rename to test/memory_grow_binaryen.wast index 9b8b8ee5e80..00117893719 100644 --- a/test/grow_memory.wast +++ b/test/memory_grow_binaryen.wast @@ -6,12 +6,12 @@ (export "grow" (func $0)) (export "current" (func $1)) (func $0 (; 0 ;) (type $0) (param $var$0 i32) (result i32) - (grow_memory + (memory.grow (get_local $var$0) ) ) (func $1 (; 1 ;) (type $1) (result i32) - (current_memory) + (memory.size) ) ) diff --git a/test/grow_memory.wast.from-wast b/test/memory_grow_binaryen.wast.from-wast similarity index 90% rename from test/grow_memory.wast.from-wast rename to test/memory_grow_binaryen.wast.from-wast index 49980cd781e..c9047d9d16a 100644 --- a/test/grow_memory.wast.from-wast +++ b/test/memory_grow_binaryen.wast.from-wast @@ -6,11 +6,11 @@ (export "grow" (func $0)) (export "current" (func $1)) (func $0 (; 0 ;) (type $0) (param $var$0 i32) (result i32) - (grow_memory + (memory.grow (get_local $var$0) ) ) (func $1 (; 1 ;) (type $1) (result i32) - (current_memory) + (memory.size) ) ) diff --git a/test/grow_memory.wast.fromBinary b/test/memory_grow_binaryen.wast.fromBinary similarity index 90% rename from test/grow_memory.wast.fromBinary rename to test/memory_grow_binaryen.wast.fromBinary index 9b8b8ee5e80..00117893719 100644 --- a/test/grow_memory.wast.fromBinary +++ b/test/memory_grow_binaryen.wast.fromBinary @@ -6,12 +6,12 @@ (export "grow" (func $0)) (export "current" (func $1)) (func $0 (; 0 ;) (type $0) (param $var$0 i32) (result i32) - (grow_memory + (memory.grow (get_local $var$0) ) ) (func $1 (; 1 ;) (type $1) (result i32) - (current_memory) + (memory.size) ) ) diff --git a/test/grow_memory.wast.fromBinary.noDebugInfo b/test/memory_grow_binaryen.wast.fromBinary.noDebugInfo similarity index 90% rename from test/grow_memory.wast.fromBinary.noDebugInfo rename to test/memory_grow_binaryen.wast.fromBinary.noDebugInfo index 9b8b8ee5e80..00117893719 100644 --- a/test/grow_memory.wast.fromBinary.noDebugInfo +++ b/test/memory_grow_binaryen.wast.fromBinary.noDebugInfo @@ -6,12 +6,12 @@ (export "grow" (func $0)) (export "current" (func $1)) (func $0 (; 0 ;) (type $0) (param $var$0 i32) (result i32) - (grow_memory + (memory.grow (get_local $var$0) ) ) (func $1 (; 1 ;) (type $1) (result i32) - (current_memory) + (memory.size) ) ) diff --git a/test/memorygrowth-minimal.fromasm b/test/memorygrowth-minimal.fromasm index 021d7fca2d1..325c9252202 100644 --- a/test/memorygrowth-minimal.fromasm +++ b/test/memorygrowth-minimal.fromasm @@ -4,7 +4,7 @@ (data (get_global $memoryBase) "memorygrowth-minimal.asm.js") (export "__growWasmMemory" (func $__growWasmMemory)) (func $__growWasmMemory (; 0 ;) (; has Stack IR ;) (param $0 i32) (result i32) - (grow_memory + (memory.grow (get_local $0) ) ) diff --git a/test/memorygrowth-minimal.fromasm.clamp b/test/memorygrowth-minimal.fromasm.clamp index 021d7fca2d1..325c9252202 100644 --- a/test/memorygrowth-minimal.fromasm.clamp +++ b/test/memorygrowth-minimal.fromasm.clamp @@ -4,7 +4,7 @@ (data (get_global $memoryBase) "memorygrowth-minimal.asm.js") (export "__growWasmMemory" (func $__growWasmMemory)) (func $__growWasmMemory (; 0 ;) (; has Stack IR ;) (param $0 i32) (result i32) - (grow_memory + (memory.grow (get_local $0) ) ) diff --git a/test/memorygrowth-minimal.fromasm.clamp.no-opts b/test/memorygrowth-minimal.fromasm.clamp.no-opts index 74edd247b2b..1f1ddd82ff3 100644 --- a/test/memorygrowth-minimal.fromasm.clamp.no-opts +++ b/test/memorygrowth-minimal.fromasm.clamp.no-opts @@ -5,7 +5,7 @@ (import "env" "tableBase" (global $tableBase i32)) (export "__growWasmMemory" (func $__growWasmMemory)) (func $__growWasmMemory (; 0 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/memorygrowth-minimal.fromasm.imprecise b/test/memorygrowth-minimal.fromasm.imprecise index 7a8ef10656e..5828f834120 100644 --- a/test/memorygrowth-minimal.fromasm.imprecise +++ b/test/memorygrowth-minimal.fromasm.imprecise @@ -2,7 +2,7 @@ (import "env" "memory" (memory $0 256)) (export "__growWasmMemory" (func $__growWasmMemory)) (func $__growWasmMemory (; 0 ;) (; has Stack IR ;) (param $0 i32) (result i32) - (grow_memory + (memory.grow (get_local $0) ) ) diff --git a/test/memorygrowth-minimal.fromasm.imprecise.no-opts b/test/memorygrowth-minimal.fromasm.imprecise.no-opts index 74edd247b2b..1f1ddd82ff3 100644 --- a/test/memorygrowth-minimal.fromasm.imprecise.no-opts +++ b/test/memorygrowth-minimal.fromasm.imprecise.no-opts @@ -5,7 +5,7 @@ (import "env" "tableBase" (global $tableBase i32)) (export "__growWasmMemory" (func $__growWasmMemory)) (func $__growWasmMemory (; 0 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/memorygrowth-minimal.fromasm.no-opts b/test/memorygrowth-minimal.fromasm.no-opts index 74edd247b2b..1f1ddd82ff3 100644 --- a/test/memorygrowth-minimal.fromasm.no-opts +++ b/test/memorygrowth-minimal.fromasm.no-opts @@ -5,7 +5,7 @@ (import "env" "tableBase" (global $tableBase i32)) (export "__growWasmMemory" (func $__growWasmMemory)) (func $__growWasmMemory (; 0 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/memorygrowth.fromasm b/test/memorygrowth.fromasm index 5afec926b1d..228758e07d4 100644 --- a/test/memorygrowth.fromasm +++ b/test/memorygrowth.fromasm @@ -51,7 +51,7 @@ (export "dynCall_iiii" (func $lb)) (export "dynCall_vi" (func $mb)) (func $__growWasmMemory (; 12 ;) (; has Stack IR ;) (param $0 i32) (result i32) - (grow_memory + (memory.grow (get_local $0) ) ) diff --git a/test/memorygrowth.fromasm.clamp b/test/memorygrowth.fromasm.clamp index 5afec926b1d..228758e07d4 100644 --- a/test/memorygrowth.fromasm.clamp +++ b/test/memorygrowth.fromasm.clamp @@ -51,7 +51,7 @@ (export "dynCall_iiii" (func $lb)) (export "dynCall_vi" (func $mb)) (func $__growWasmMemory (; 12 ;) (; has Stack IR ;) (param $0 i32) (result i32) - (grow_memory + (memory.grow (get_local $0) ) ) diff --git a/test/memorygrowth.fromasm.clamp.no-opts b/test/memorygrowth.fromasm.clamp.no-opts index 3c25e569ec8..e2fb69557f6 100644 --- a/test/memorygrowth.fromasm.clamp.no-opts +++ b/test/memorygrowth.fromasm.clamp.no-opts @@ -79,7 +79,7 @@ (export "dynCall_iiii" (func $lb)) (export "dynCall_vi" (func $mb)) (func $__growWasmMemory (; 12 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise index c71b3b6972d..ee89efa8626 100644 --- a/test/memorygrowth.fromasm.imprecise +++ b/test/memorygrowth.fromasm.imprecise @@ -49,7 +49,7 @@ (export "dynCall_iiii" (func $lb)) (export "dynCall_vi" (func $mb)) (func $__growWasmMemory (; 12 ;) (; has Stack IR ;) (param $0 i32) (result i32) - (grow_memory + (memory.grow (get_local $0) ) ) diff --git a/test/memorygrowth.fromasm.imprecise.no-opts b/test/memorygrowth.fromasm.imprecise.no-opts index 2c75f349f66..5ffd9d2f358 100644 --- a/test/memorygrowth.fromasm.imprecise.no-opts +++ b/test/memorygrowth.fromasm.imprecise.no-opts @@ -79,7 +79,7 @@ (export "dynCall_iiii" (func $lb)) (export "dynCall_vi" (func $mb)) (func $__growWasmMemory (; 12 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/memorygrowth.fromasm.no-opts b/test/memorygrowth.fromasm.no-opts index 3c25e569ec8..e2fb69557f6 100644 --- a/test/memorygrowth.fromasm.no-opts +++ b/test/memorygrowth.fromasm.no-opts @@ -79,7 +79,7 @@ (export "dynCall_iiii" (func $lb)) (export "dynCall_vi" (func $mb)) (func $__growWasmMemory (; 12 ;) (param $newSize i32) (result i32) - (grow_memory + (memory.grow (get_local $newSize) ) ) diff --git a/test/passes/dce.wast b/test/passes/dce.wast index 18f7db0121c..221a734d700 100644 --- a/test/passes/dce.wast +++ b/test/passes/dce.wast @@ -481,7 +481,7 @@ (func $unreachable-brs-3 (result i32) (block $label$0 (result i32) (br $label$0 - (grow_memory + (memory.grow (br $label$0 (i32.const 18) ) diff --git a/test/passes/duplicate-function-elimination_optimize-level=1.txt b/test/passes/duplicate-function-elimination_optimize-level=1.txt index c44b4cc2833..a88dc59b4d3 100644 --- a/test/passes/duplicate-function-elimination_optimize-level=1.txt +++ b/test/passes/duplicate-function-elimination_optimize-level=1.txt @@ -1017,7 +1017,7 @@ (memory $0 0) (func $erase (; 0 ;) (type $0) (drop - (current_memory) + (memory.size) ) ) ) @@ -1026,7 +1026,7 @@ (memory $0 0) (func $erase (; 0 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) @@ -1037,14 +1037,14 @@ (memory $0 0) (func $keep (; 0 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) ) (func $other (; 1 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 11) ) ) @@ -1055,12 +1055,12 @@ (memory $0 0) (func $keep (; 0 ;) (type $0) (drop - (current_memory) + (memory.size) ) ) (func $other (; 1 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) diff --git a/test/passes/duplicate-function-elimination_optimize-level=1.wast b/test/passes/duplicate-function-elimination_optimize-level=1.wast index b79032155a9..9cdfaaeb983 100644 --- a/test/passes/duplicate-function-elimination_optimize-level=1.wast +++ b/test/passes/duplicate-function-elimination_optimize-level=1.wast @@ -1158,12 +1158,12 @@ (type $0 (func)) (func $erase (type $0) (drop - (current_memory) + (memory.size) ) ) (func $other (type $0) (drop - (current_memory) + (memory.size) ) ) ) @@ -1172,14 +1172,14 @@ (type $0 (func)) (func $erase (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) ) (func $other (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) @@ -1190,14 +1190,14 @@ (type $0 (func)) (func $keep (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) ) (func $other (type $0) (drop - (grow_memory + (memory.grow (i32.const 11) ) ) @@ -1208,12 +1208,12 @@ (type $0 (func)) (func $keep (type $0) (drop - (current_memory) + (memory.size) ) ) (func $other (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) diff --git a/test/passes/duplicate-function-elimination_optimize-level=2.txt b/test/passes/duplicate-function-elimination_optimize-level=2.txt index baf4fedf23d..e118cae7377 100644 --- a/test/passes/duplicate-function-elimination_optimize-level=2.txt +++ b/test/passes/duplicate-function-elimination_optimize-level=2.txt @@ -1014,7 +1014,7 @@ (memory $0 0) (func $erase (; 0 ;) (type $0) (drop - (current_memory) + (memory.size) ) ) ) @@ -1023,7 +1023,7 @@ (memory $0 0) (func $erase (; 0 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) @@ -1034,14 +1034,14 @@ (memory $0 0) (func $keep (; 0 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) ) (func $other (; 1 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 11) ) ) @@ -1052,12 +1052,12 @@ (memory $0 0) (func $keep (; 0 ;) (type $0) (drop - (current_memory) + (memory.size) ) ) (func $other (; 1 ;) (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) diff --git a/test/passes/duplicate-function-elimination_optimize-level=2.wast b/test/passes/duplicate-function-elimination_optimize-level=2.wast index b79032155a9..9cdfaaeb983 100644 --- a/test/passes/duplicate-function-elimination_optimize-level=2.wast +++ b/test/passes/duplicate-function-elimination_optimize-level=2.wast @@ -1158,12 +1158,12 @@ (type $0 (func)) (func $erase (type $0) (drop - (current_memory) + (memory.size) ) ) (func $other (type $0) (drop - (current_memory) + (memory.size) ) ) ) @@ -1172,14 +1172,14 @@ (type $0 (func)) (func $erase (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) ) (func $other (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) @@ -1190,14 +1190,14 @@ (type $0 (func)) (func $keep (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) ) (func $other (type $0) (drop - (grow_memory + (memory.grow (i32.const 11) ) ) @@ -1208,12 +1208,12 @@ (type $0 (func)) (func $keep (type $0) (drop - (current_memory) + (memory.size) ) ) (func $other (type $0) (drop - (grow_memory + (memory.grow (i32.const 10) ) ) diff --git a/test/passes/flatten.txt b/test/passes/flatten.txt index 201cad478a2..dc658a2d96b 100644 --- a/test/passes/flatten.txt +++ b/test/passes/flatten.txt @@ -1558,7 +1558,7 @@ (i32.const 18) ) (br $label$0) - (grow_memory + (memory.grow (unreachable) ) (unreachable) diff --git a/test/passes/flatten.wast b/test/passes/flatten.wast index c04c7b12f56..6b212917304 100644 --- a/test/passes/flatten.wast +++ b/test/passes/flatten.wast @@ -704,7 +704,7 @@ (func $unreachable-brs-3 (result i32) (block $label$0 (result i32) (br $label$0 - (grow_memory + (memory.grow (br $label$0 (i32.const 18) ) diff --git a/test/passes/remove-unused-module-elements.txt b/test/passes/remove-unused-module-elements.txt index 7c85eec5899..91a9c3979b2 100644 --- a/test/passes/remove-unused-module-elements.txt +++ b/test/passes/remove-unused-module-elements.txt @@ -181,7 +181,7 @@ (memory $0 23 256) (export "user" (func $user)) (func $user (; 0 ;) (type $0) (result i32) - (grow_memory + (memory.grow (i32.const 0) ) ) @@ -191,7 +191,7 @@ (import "env" "memory" (memory $0 256)) (export "user" (func $user)) (func $user (; 0 ;) (type $0) (result i32) - (grow_memory + (memory.grow (i32.const 0) ) ) @@ -201,7 +201,7 @@ (memory $0 23 256) (export "user" (func $user)) (func $user (; 0 ;) (type $0) (result i32) - (current_memory) + (memory.size) ) ) (module diff --git a/test/passes/remove-unused-module-elements.wast b/test/passes/remove-unused-module-elements.wast index dfefd7b910c..4c8af3d890f 100644 --- a/test/passes/remove-unused-module-elements.wast +++ b/test/passes/remove-unused-module-elements.wast @@ -147,21 +147,21 @@ (memory $0 23 256) (export "user" $user) (func $user (result i32) - (grow_memory (i32.const 0)) + (memory.grow (i32.const 0)) ) ) (module ;; more use checks (import "env" "memory" (memory $0 256)) (export "user" $user) (func $user (result i32) - (grow_memory (i32.const 0)) + (memory.grow (i32.const 0)) ) ) (module ;; more use checks (memory $0 23 256) (export "user" $user) (func $user (result i32) - (current_memory) + (memory.size) ) ) (module diff --git a/test/passes/remove-unused-names_remove-unused-brs_vacuum.txt b/test/passes/remove-unused-names_remove-unused-brs_vacuum.txt index e6b01cc1172..290a7d2b282 100644 --- a/test/passes/remove-unused-names_remove-unused-brs_vacuum.txt +++ b/test/passes/remove-unused-names_remove-unused-brs_vacuum.txt @@ -32,7 +32,7 @@ (import "global" "Infinity" (global $import$6 f64)) (import "env" "enlargeMemory" (func $import$7 (result i32))) (import "env" "getTotalMemory" (func $import$8 (result i32))) - (import "env" "abortOnCannotGrowMemory" (func $import$9 (result i32))) + (import "env" "abortOnCannotMemoryGrow" (func $import$9 (result i32))) (import "env" "abortStackOverflow" (func $import$10 (param i32))) (import "env" "nullFunc_ii" (func $import$11 (param i32))) (import "env" "nullFunc_iiii" (func $import$12 (param i32))) diff --git a/test/passes/remove-unused-names_remove-unused-brs_vacuum.wast b/test/passes/remove-unused-names_remove-unused-brs_vacuum.wast index 12f664a36d9..ec27aff51aa 100644 --- a/test/passes/remove-unused-names_remove-unused-brs_vacuum.wast +++ b/test/passes/remove-unused-names_remove-unused-brs_vacuum.wast @@ -24,7 +24,7 @@ (import "global" "Infinity" (global $import$6 f64)) (import "env" "enlargeMemory" (func $import$7 (result i32))) (import "env" "getTotalMemory" (func $import$8 (result i32))) - (import "env" "abortOnCannotGrowMemory" (func $import$9 (result i32))) + (import "env" "abortOnCannotMemoryGrow" (func $import$9 (result i32))) (import "env" "abortStackOverflow" (func $import$10 (param i32))) (import "env" "nullFunc_ii" (func $import$11 (param i32))) (import "env" "nullFunc_iiii" (func $import$12 (param i32))) diff --git a/test/passes/remove-unused-nonfunction-module-elements.txt b/test/passes/remove-unused-nonfunction-module-elements.txt index bd4a8c7d492..0c6856050d4 100644 --- a/test/passes/remove-unused-nonfunction-module-elements.txt +++ b/test/passes/remove-unused-nonfunction-module-elements.txt @@ -196,7 +196,7 @@ (memory $0 23 256) (export "user" (func $user)) (func $user (; 0 ;) (type $0) (result i32) - (grow_memory + (memory.grow (i32.const 0) ) ) @@ -206,7 +206,7 @@ (import "env" "memory" (memory $0 256)) (export "user" (func $user)) (func $user (; 0 ;) (type $0) (result i32) - (grow_memory + (memory.grow (i32.const 0) ) ) @@ -216,7 +216,7 @@ (memory $0 23 256) (export "user" (func $user)) (func $user (; 0 ;) (type $0) (result i32) - (current_memory) + (memory.size) ) ) (module diff --git a/test/passes/remove-unused-nonfunction-module-elements.wast b/test/passes/remove-unused-nonfunction-module-elements.wast index d0b49ee34e7..e3587a2460e 100644 --- a/test/passes/remove-unused-nonfunction-module-elements.wast +++ b/test/passes/remove-unused-nonfunction-module-elements.wast @@ -147,21 +147,21 @@ (memory $0 23 256) (export "user" $user) (func $user (result i32) - (grow_memory (i32.const 0)) + (memory.grow (i32.const 0)) ) ) (module ;; more use checks (import "env" "memory" (memory $0 256)) (export "user" $user) (func $user (result i32) - (grow_memory (i32.const 0)) + (memory.grow (i32.const 0)) ) ) (module ;; more use checks (memory $0 23 256) (export "user" $user) (func $user (result i32) - (current_memory) + (memory.size) ) ) (module diff --git a/test/passes/simplify-locals.txt b/test/passes/simplify-locals.txt index 2e380049f87..7b7d2b3093d 100644 --- a/test/passes/simplify-locals.txt +++ b/test/passes/simplify-locals.txt @@ -915,7 +915,7 @@ (local $x i32) (set_local $x (i32.load - (grow_memory + (memory.grow (i32.const 1) ) ) @@ -979,7 +979,7 @@ (local $x i32) (set_local $x (i32.load - (grow_memory + (memory.grow (i32.const 1) ) ) diff --git a/test/passes/simplify-locals.wast b/test/passes/simplify-locals.wast index 60531717c3e..61fd6966582 100644 --- a/test/passes/simplify-locals.wast +++ b/test/passes/simplify-locals.wast @@ -898,9 +898,9 @@ (drop (i32.load (i32.const 1028))) (get_local $x) ) - (func $nonatomic-growmem (result i32) ;; grow_memory is modeled as modifying memory + (func $nonatomic-growmem (result i32) ;; memory.grow is modeled as modifying memory (local $x i32) - (set_local $x (i32.load (grow_memory (i32.const 1)))) + (set_local $x (i32.load (memory.grow (i32.const 1)))) (drop (i32.load (i32.const 1028))) (get_local $x) ) @@ -922,9 +922,9 @@ (drop (i32.load (i32.const 1028))) (drop (get_local $x)) ) - (func $atomic-growmem (result i32) ;; grow_memory is modeled as modifying memory + (func $atomic-growmem (result i32) ;; memory.grow is modeled as modifying memory (local $x i32) - (set_local $x (i32.load (grow_memory (i32.const 1)))) + (set_local $x (i32.load (memory.grow (i32.const 1)))) (drop (i32.atomic.load (i32.const 1028))) (get_local $x) ) diff --git a/test/spec b/test/spec deleted file mode 160000 index 4b50c1c3f0d..00000000000 --- a/test/spec +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4b50c1c3f0d28c1a848866c6cdd0a1f469e1923c diff --git a/test/spec/.gitignore b/test/spec/.gitignore new file mode 100644 index 00000000000..34e4053fdbf --- /dev/null +++ b/test/spec/.gitignore @@ -0,0 +1,2 @@ +/commit_message +/repos/ diff --git a/test/spec/Contributing.md b/test/spec/Contributing.md new file mode 100644 index 00000000000..1cc607fa471 --- /dev/null +++ b/test/spec/Contributing.md @@ -0,0 +1,8 @@ +# Contributing to WebAssembly + +Interested in participating? Please follow +[the same contributing guidelines as the design repository][]. + + [the same contributing guidelines as the design repository]: https://github.com/WebAssembly/design/blob/master/Contributing.md + +Also, please be sure to read [the README.md](README.md) for this repository. diff --git a/test/spec/LICENSE b/test/spec/LICENSE new file mode 100644 index 00000000000..8f71f43fee3 --- /dev/null +++ b/test/spec/LICENSE @@ -0,0 +1,202 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + diff --git a/test/spec/README.md b/test/spec/README.md new file mode 100644 index 00000000000..4cfca99c0bd --- /dev/null +++ b/test/spec/README.md @@ -0,0 +1,2 @@ +This repository holds a mirror of the WebAssembly core testsuite which is maintained +[here](https://github.com/WebAssembly/spec/tree/master/test/core). diff --git a/test/spec/address.wast b/test/spec/address.wast new file mode 100644 index 00000000000..134d2dab3e6 --- /dev/null +++ b/test/spec/address.wast @@ -0,0 +1,589 @@ +;; Load i32 data with different offset/align arguments + +(module + (memory 1) + (data (i32.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $i i32) (result i32) + (i32.load8_u offset=0 (get_local $i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $i i32) (result i32) + (i32.load8_u align=1 (get_local $i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $i i32) (result i32) + (i32.load8_u offset=1 align=1 (get_local $i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $i i32) (result i32) + (i32.load8_u offset=2 align=1 (get_local $i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $i i32) (result i32) + (i32.load8_u offset=25 align=1 (get_local $i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $i i32) (result i32) + (i32.load8_s offset=0 (get_local $i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $i i32) (result i32) + (i32.load8_s align=1 (get_local $i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $i i32) (result i32) + (i32.load8_s offset=1 align=1 (get_local $i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $i i32) (result i32) + (i32.load8_s offset=2 align=1 (get_local $i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $i i32) (result i32) + (i32.load8_s offset=25 align=1 (get_local $i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $i i32) (result i32) + (i32.load16_u offset=0 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $i i32) (result i32) + (i32.load16_u align=1 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $i i32) (result i32) + (i32.load16_u offset=1 align=1 (get_local $i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $i i32) (result i32) + (i32.load16_u offset=2 align=2 (get_local $i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $i i32) (result i32) + (i32.load16_u offset=25 align=2 (get_local $i)) ;; 122 'z\0' + ) + + (func (export "16s_good1") (param $i i32) (result i32) + (i32.load16_s offset=0 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $i i32) (result i32) + (i32.load16_s align=1 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $i i32) (result i32) + (i32.load16_s offset=1 align=1 (get_local $i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $i i32) (result i32) + (i32.load16_s offset=2 align=2 (get_local $i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $i i32) (result i32) + (i32.load16_s offset=25 align=2 (get_local $i)) ;; 122 'z\0' + ) + + (func (export "32_good1") (param $i i32) (result i32) + (i32.load offset=0 (get_local $i)) ;; 1684234849 'abcd' + ) + (func (export "32_good2") (param $i i32) (result i32) + (i32.load align=1 (get_local $i)) ;; 1684234849 'abcd' + ) + (func (export "32_good3") (param $i i32) (result i32) + (i32.load offset=1 align=1 (get_local $i)) ;; 1701077858 'bcde' + ) + (func (export "32_good4") (param $i i32) (result i32) + (i32.load offset=2 align=2 (get_local $i)) ;; 1717920867 'cdef' + ) + (func (export "32_good5") (param $i i32) (result i32) + (i32.load offset=25 align=4 (get_local $i)) ;; 122 'z\0\0\0' + ) + + (func (export "8u_bad") (param $i i32) + (drop (i32.load8_u offset=4294967295 (get_local $i))) + ) + (func (export "8s_bad") (param $i i32) + (drop (i32.load8_s offset=4294967295 (get_local $i))) + ) + (func (export "16u_bad") (param $i i32) + (drop (i32.load16_u offset=4294967295 (get_local $i))) + ) + (func (export "16s_bad") (param $i i32) + (drop (i32.load16_s offset=4294967295 (get_local $i))) + ) + (func (export "32_bad") (param $i i32) + (drop (i32.load offset=4294967295 (get_local $i))) + ) +) + +(assert_return (invoke "8u_good1" (i32.const 0)) (i32.const 97)) +(assert_return (invoke "8u_good2" (i32.const 0)) (i32.const 97)) +(assert_return (invoke "8u_good3" (i32.const 0)) (i32.const 98)) +(assert_return (invoke "8u_good4" (i32.const 0)) (i32.const 99)) +(assert_return (invoke "8u_good5" (i32.const 0)) (i32.const 122)) + +(assert_return (invoke "8s_good1" (i32.const 0)) (i32.const 97)) +(assert_return (invoke "8s_good2" (i32.const 0)) (i32.const 97)) +(assert_return (invoke "8s_good3" (i32.const 0)) (i32.const 98)) +(assert_return (invoke "8s_good4" (i32.const 0)) (i32.const 99)) +(assert_return (invoke "8s_good5" (i32.const 0)) (i32.const 122)) + +(assert_return (invoke "16u_good1" (i32.const 0)) (i32.const 25185)) +(assert_return (invoke "16u_good2" (i32.const 0)) (i32.const 25185)) +(assert_return (invoke "16u_good3" (i32.const 0)) (i32.const 25442)) +(assert_return (invoke "16u_good4" (i32.const 0)) (i32.const 25699)) +(assert_return (invoke "16u_good5" (i32.const 0)) (i32.const 122)) + +(assert_return (invoke "16s_good1" (i32.const 0)) (i32.const 25185)) +(assert_return (invoke "16s_good2" (i32.const 0)) (i32.const 25185)) +(assert_return (invoke "16s_good3" (i32.const 0)) (i32.const 25442)) +(assert_return (invoke "16s_good4" (i32.const 0)) (i32.const 25699)) +(assert_return (invoke "16s_good5" (i32.const 0)) (i32.const 122)) + +(assert_return (invoke "32_good1" (i32.const 0)) (i32.const 1684234849)) +(assert_return (invoke "32_good2" (i32.const 0)) (i32.const 1684234849)) +(assert_return (invoke "32_good3" (i32.const 0)) (i32.const 1701077858)) +(assert_return (invoke "32_good4" (i32.const 0)) (i32.const 1717920867)) +(assert_return (invoke "32_good5" (i32.const 0)) (i32.const 122)) + +(assert_return (invoke "8u_good1" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8u_good2" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8u_good3" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8u_good4" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8u_good5" (i32.const 65507)) (i32.const 0)) + +(assert_return (invoke "8s_good1" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8s_good2" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8s_good3" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8s_good4" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "8s_good5" (i32.const 65507)) (i32.const 0)) + +(assert_return (invoke "16u_good1" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16u_good2" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16u_good3" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16u_good4" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16u_good5" (i32.const 65507)) (i32.const 0)) + +(assert_return (invoke "16s_good1" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16s_good2" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16s_good3" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16s_good4" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "16s_good5" (i32.const 65507)) (i32.const 0)) + +(assert_return (invoke "32_good1" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "32_good2" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "32_good3" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "32_good4" (i32.const 65507)) (i32.const 0)) +(assert_return (invoke "32_good5" (i32.const 65507)) (i32.const 0)) + +(assert_return (invoke "8u_good1" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8u_good2" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8u_good3" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8u_good4" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8u_good5" (i32.const 65508)) (i32.const 0)) + +(assert_return (invoke "8s_good1" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8s_good2" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8s_good3" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8s_good4" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "8s_good5" (i32.const 65508)) (i32.const 0)) + +(assert_return (invoke "16u_good1" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16u_good2" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16u_good3" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16u_good4" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16u_good5" (i32.const 65508)) (i32.const 0)) + +(assert_return (invoke "16s_good1" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16s_good2" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16s_good3" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16s_good4" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "16s_good5" (i32.const 65508)) (i32.const 0)) + +(assert_return (invoke "32_good1" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "32_good2" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "32_good3" (i32.const 65508)) (i32.const 0)) +(assert_return (invoke "32_good4" (i32.const 65508)) (i32.const 0)) +(assert_trap (invoke "32_good5" (i32.const 65508)) "out of bounds memory access") + +(assert_trap (invoke "8u_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "8s_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "16u_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "16s_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "32_bad" (i32.const 0)) "out of bounds memory access") + +(assert_trap (invoke "8u_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "8s_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "16u_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "16s_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "32_bad" (i32.const 1)) "out of bounds memory access") + +(assert_malformed + (module quote + "(memory 1)" + "(func (drop (i32.load offset=4294967296 (i32.const 0))))" + ) + "i32 constant" +) + +;; Load i64 data with different offset/align arguments + +(module + (memory 1) + (data (i32.const 0) "abcdefghijklmnopqrstuvwxyz") + + (func (export "8u_good1") (param $i i32) (result i64) + (i64.load8_u offset=0 (get_local $i)) ;; 97 'a' + ) + (func (export "8u_good2") (param $i i32) (result i64) + (i64.load8_u align=1 (get_local $i)) ;; 97 'a' + ) + (func (export "8u_good3") (param $i i32) (result i64) + (i64.load8_u offset=1 align=1 (get_local $i)) ;; 98 'b' + ) + (func (export "8u_good4") (param $i i32) (result i64) + (i64.load8_u offset=2 align=1 (get_local $i)) ;; 99 'c' + ) + (func (export "8u_good5") (param $i i32) (result i64) + (i64.load8_u offset=25 align=1 (get_local $i)) ;; 122 'z' + ) + + (func (export "8s_good1") (param $i i32) (result i64) + (i64.load8_s offset=0 (get_local $i)) ;; 97 'a' + ) + (func (export "8s_good2") (param $i i32) (result i64) + (i64.load8_s align=1 (get_local $i)) ;; 97 'a' + ) + (func (export "8s_good3") (param $i i32) (result i64) + (i64.load8_s offset=1 align=1 (get_local $i)) ;; 98 'b' + ) + (func (export "8s_good4") (param $i i32) (result i64) + (i64.load8_s offset=2 align=1 (get_local $i)) ;; 99 'c' + ) + (func (export "8s_good5") (param $i i32) (result i64) + (i64.load8_s offset=25 align=1 (get_local $i)) ;; 122 'z' + ) + + (func (export "16u_good1") (param $i i32) (result i64) + (i64.load16_u offset=0 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16u_good2") (param $i i32) (result i64) + (i64.load16_u align=1 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16u_good3") (param $i i32) (result i64) + (i64.load16_u offset=1 align=1 (get_local $i)) ;; 25442 'bc' + ) + (func (export "16u_good4") (param $i i32) (result i64) + (i64.load16_u offset=2 align=2 (get_local $i)) ;; 25699 'cd' + ) + (func (export "16u_good5") (param $i i32) (result i64) + (i64.load16_u offset=25 align=2 (get_local $i)) ;; 122 'z\0' + ) + + (func (export "16s_good1") (param $i i32) (result i64) + (i64.load16_s offset=0 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16s_good2") (param $i i32) (result i64) + (i64.load16_s align=1 (get_local $i)) ;; 25185 'ab' + ) + (func (export "16s_good3") (param $i i32) (result i64) + (i64.load16_s offset=1 align=1 (get_local $i)) ;; 25442 'bc' + ) + (func (export "16s_good4") (param $i i32) (result i64) + (i64.load16_s offset=2 align=2 (get_local $i)) ;; 25699 'cd' + ) + (func (export "16s_good5") (param $i i32) (result i64) + (i64.load16_s offset=25 align=2 (get_local $i)) ;; 122 'z\0' + ) + + (func (export "32u_good1") (param $i i32) (result i64) + (i64.load32_u offset=0 (get_local $i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good2") (param $i i32) (result i64) + (i64.load32_u align=1 (get_local $i)) ;; 1684234849 'abcd' + ) + (func (export "32u_good3") (param $i i32) (result i64) + (i64.load32_u offset=1 align=1 (get_local $i)) ;; 1701077858 'bcde' + ) + (func (export "32u_good4") (param $i i32) (result i64) + (i64.load32_u offset=2 align=2 (get_local $i)) ;; 1717920867 'cdef' + ) + (func (export "32u_good5") (param $i i32) (result i64) + (i64.load32_u offset=25 align=4 (get_local $i)) ;; 122 'z\0\0\0' + ) + + (func (export "32s_good1") (param $i i32) (result i64) + (i64.load32_s offset=0 (get_local $i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good2") (param $i i32) (result i64) + (i64.load32_s align=1 (get_local $i)) ;; 1684234849 'abcd' + ) + (func (export "32s_good3") (param $i i32) (result i64) + (i64.load32_s offset=1 align=1 (get_local $i)) ;; 1701077858 'bcde' + ) + (func (export "32s_good4") (param $i i32) (result i64) + (i64.load32_s offset=2 align=2 (get_local $i)) ;; 1717920867 'cdef' + ) + (func (export "32s_good5") (param $i i32) (result i64) + (i64.load32_s offset=25 align=4 (get_local $i)) ;; 122 'z\0\0\0' + ) + + (func (export "64_good1") (param $i i32) (result i64) + (i64.load offset=0 (get_local $i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good2") (param $i i32) (result i64) + (i64.load align=1 (get_local $i)) ;; 0x6867666564636261 'abcdefgh' + ) + (func (export "64_good3") (param $i i32) (result i64) + (i64.load offset=1 align=1 (get_local $i)) ;; 0x6968676665646362 'bcdefghi' + ) + (func (export "64_good4") (param $i i32) (result i64) + (i64.load offset=2 align=2 (get_local $i)) ;; 0x6a69686766656463 'cdefghij' + ) + (func (export "64_good5") (param $i i32) (result i64) + (i64.load offset=25 align=8 (get_local $i)) ;; 122 'z\0\0\0\0\0\0\0' + ) + + (func (export "8u_bad") (param $i i32) + (drop (i64.load8_u offset=4294967295 (get_local $i))) + ) + (func (export "8s_bad") (param $i i32) + (drop (i64.load8_s offset=4294967295 (get_local $i))) + ) + (func (export "16u_bad") (param $i i32) + (drop (i64.load16_u offset=4294967295 (get_local $i))) + ) + (func (export "16s_bad") (param $i i32) + (drop (i64.load16_s offset=4294967295 (get_local $i))) + ) + (func (export "32u_bad") (param $i i32) + (drop (i64.load32_u offset=4294967295 (get_local $i))) + ) + (func (export "32s_bad") (param $i i32) + (drop (i64.load32_s offset=4294967295 (get_local $i))) + ) + (func (export "64_bad") (param $i i32) + (drop (i64.load offset=4294967295 (get_local $i))) + ) +) + +(assert_return (invoke "8u_good1" (i32.const 0)) (i64.const 97)) +(assert_return (invoke "8u_good2" (i32.const 0)) (i64.const 97)) +(assert_return (invoke "8u_good3" (i32.const 0)) (i64.const 98)) +(assert_return (invoke "8u_good4" (i32.const 0)) (i64.const 99)) +(assert_return (invoke "8u_good5" (i32.const 0)) (i64.const 122)) + +(assert_return (invoke "8s_good1" (i32.const 0)) (i64.const 97)) +(assert_return (invoke "8s_good2" (i32.const 0)) (i64.const 97)) +(assert_return (invoke "8s_good3" (i32.const 0)) (i64.const 98)) +(assert_return (invoke "8s_good4" (i32.const 0)) (i64.const 99)) +(assert_return (invoke "8s_good5" (i32.const 0)) (i64.const 122)) + +(assert_return (invoke "16u_good1" (i32.const 0)) (i64.const 25185)) +(assert_return (invoke "16u_good2" (i32.const 0)) (i64.const 25185)) +(assert_return (invoke "16u_good3" (i32.const 0)) (i64.const 25442)) +(assert_return (invoke "16u_good4" (i32.const 0)) (i64.const 25699)) +(assert_return (invoke "16u_good5" (i32.const 0)) (i64.const 122)) + +(assert_return (invoke "16s_good1" (i32.const 0)) (i64.const 25185)) +(assert_return (invoke "16s_good2" (i32.const 0)) (i64.const 25185)) +(assert_return (invoke "16s_good3" (i32.const 0)) (i64.const 25442)) +(assert_return (invoke "16s_good4" (i32.const 0)) (i64.const 25699)) +(assert_return (invoke "16s_good5" (i32.const 0)) (i64.const 122)) + +(assert_return (invoke "32u_good1" (i32.const 0)) (i64.const 1684234849)) +(assert_return (invoke "32u_good2" (i32.const 0)) (i64.const 1684234849)) +(assert_return (invoke "32u_good3" (i32.const 0)) (i64.const 1701077858)) +(assert_return (invoke "32u_good4" (i32.const 0)) (i64.const 1717920867)) +(assert_return (invoke "32u_good5" (i32.const 0)) (i64.const 122)) + +(assert_return (invoke "32s_good1" (i32.const 0)) (i64.const 1684234849)) +(assert_return (invoke "32s_good2" (i32.const 0)) (i64.const 1684234849)) +(assert_return (invoke "32s_good3" (i32.const 0)) (i64.const 1701077858)) +(assert_return (invoke "32s_good4" (i32.const 0)) (i64.const 1717920867)) +(assert_return (invoke "32s_good5" (i32.const 0)) (i64.const 122)) + +(assert_return (invoke "64_good1" (i32.const 0)) (i64.const 0x6867666564636261)) +(assert_return (invoke "64_good2" (i32.const 0)) (i64.const 0x6867666564636261)) +(assert_return (invoke "64_good3" (i32.const 0)) (i64.const 0x6968676665646362)) +(assert_return (invoke "64_good4" (i32.const 0)) (i64.const 0x6a69686766656463)) +(assert_return (invoke "64_good5" (i32.const 0)) (i64.const 122)) + +(assert_return (invoke "8u_good1" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8u_good2" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8u_good3" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8u_good4" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8u_good5" (i32.const 65503)) (i64.const 0)) + +(assert_return (invoke "8s_good1" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8s_good2" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8s_good3" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8s_good4" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "8s_good5" (i32.const 65503)) (i64.const 0)) + +(assert_return (invoke "16u_good1" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16u_good2" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16u_good3" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16u_good4" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16u_good5" (i32.const 65503)) (i64.const 0)) + +(assert_return (invoke "16s_good1" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16s_good2" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16s_good3" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16s_good4" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "16s_good5" (i32.const 65503)) (i64.const 0)) + +(assert_return (invoke "32u_good1" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32u_good2" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32u_good3" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32u_good4" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32u_good5" (i32.const 65503)) (i64.const 0)) + +(assert_return (invoke "32s_good1" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32s_good2" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32s_good3" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32s_good4" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "32s_good5" (i32.const 65503)) (i64.const 0)) + +(assert_return (invoke "64_good1" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "64_good2" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "64_good3" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "64_good4" (i32.const 65503)) (i64.const 0)) +(assert_return (invoke "64_good5" (i32.const 65503)) (i64.const 0)) + +(assert_return (invoke "8u_good1" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8u_good2" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8u_good3" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8u_good4" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8u_good5" (i32.const 65504)) (i64.const 0)) + +(assert_return (invoke "8s_good1" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8s_good2" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8s_good3" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8s_good4" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "8s_good5" (i32.const 65504)) (i64.const 0)) + +(assert_return (invoke "16u_good1" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16u_good2" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16u_good3" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16u_good4" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16u_good5" (i32.const 65504)) (i64.const 0)) + +(assert_return (invoke "16s_good1" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16s_good2" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16s_good3" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16s_good4" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "16s_good5" (i32.const 65504)) (i64.const 0)) + +(assert_return (invoke "32u_good1" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32u_good2" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32u_good3" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32u_good4" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32u_good5" (i32.const 65504)) (i64.const 0)) + +(assert_return (invoke "32s_good1" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32s_good2" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32s_good3" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32s_good4" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "32s_good5" (i32.const 65504)) (i64.const 0)) + +(assert_return (invoke "64_good1" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "64_good2" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "64_good3" (i32.const 65504)) (i64.const 0)) +(assert_return (invoke "64_good4" (i32.const 65504)) (i64.const 0)) +(assert_trap (invoke "64_good5" (i32.const 65504)) "out of bounds memory access") + +(assert_trap (invoke "8u_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "8s_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "16u_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "16s_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "32u_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "32s_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "64_bad" (i32.const 0)) "out of bounds memory access") + +(assert_trap (invoke "8u_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "8s_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "16u_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "16s_bad" (i32.const 1)) "out of bounds memory access") +(assert_trap (invoke "32u_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "32s_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "64_bad" (i32.const 1)) "out of bounds memory access") + +;; Load f32 data with different offset/align arguments + +(module + (memory 1) + (data (i32.const 0) "\00\00\00\00\00\00\a0\7f\01\00\d0\7f") + + (func (export "32_good1") (param $i i32) (result f32) + (f32.load offset=0 (get_local $i)) ;; 0.0 '\00\00\00\00' + ) + (func (export "32_good2") (param $i i32) (result f32) + (f32.load align=1 (get_local $i)) ;; 0.0 '\00\00\00\00' + ) + (func (export "32_good3") (param $i i32) (result f32) + (f32.load offset=1 align=1 (get_local $i)) ;; 0.0 '\00\00\00\00' + ) + (func (export "32_good4") (param $i i32) (result f32) + (f32.load offset=2 align=2 (get_local $i)) ;; 0.0 '\00\00\00\00' + ) + (func (export "32_good5") (param $i i32) (result f32) + (f32.load offset=8 align=4 (get_local $i)) ;; nan:0x500001 '\01\00\d0\7f' + ) + (func (export "32_bad") (param $i i32) + (drop (f32.load offset=4294967295 (get_local $i))) + ) +) + +(assert_return (invoke "32_good1" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "32_good2" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "32_good3" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "32_good4" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "32_good5" (i32.const 0)) (f32.const nan:0x500001)) + +(assert_return (invoke "32_good1" (i32.const 65524)) (f32.const 0.0)) +(assert_return (invoke "32_good2" (i32.const 65524)) (f32.const 0.0)) +(assert_return (invoke "32_good3" (i32.const 65524)) (f32.const 0.0)) +(assert_return (invoke "32_good4" (i32.const 65524)) (f32.const 0.0)) +(assert_return (invoke "32_good5" (i32.const 65524)) (f32.const 0.0)) + +(assert_return (invoke "32_good1" (i32.const 65525)) (f32.const 0.0)) +(assert_return (invoke "32_good2" (i32.const 65525)) (f32.const 0.0)) +(assert_return (invoke "32_good3" (i32.const 65525)) (f32.const 0.0)) +(assert_return (invoke "32_good4" (i32.const 65525)) (f32.const 0.0)) +(assert_trap (invoke "32_good5" (i32.const 65525)) "out of bounds memory access") + +(assert_trap (invoke "32_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "32_bad" (i32.const 1)) "out of bounds memory access") + +;; Load f64 data with different offset/align arguments + +(module + (memory 1) + (data (i32.const 0) "\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\f4\7f\01\00\00\00\00\00\fc\7f") + + (func (export "64_good1") (param $i i32) (result f64) + (f64.load offset=0 (get_local $i)) ;; 0.0 '\00\00\00\00\00\00\00\00' + ) + (func (export "64_good2") (param $i i32) (result f64) + (f64.load align=1 (get_local $i)) ;; 0.0 '\00\00\00\00\00\00\00\00' + ) + (func (export "64_good3") (param $i i32) (result f64) + (f64.load offset=1 align=1 (get_local $i)) ;; 0.0 '\00\00\00\00\00\00\00\00' + ) + (func (export "64_good4") (param $i i32) (result f64) + (f64.load offset=2 align=2 (get_local $i)) ;; 0.0 '\00\00\00\00\00\00\00\00' + ) + (func (export "64_good5") (param $i i32) (result f64) + (f64.load offset=18 align=8 (get_local $i)) ;; nan:0xc000000000001 '\01\00\00\00\00\00\fc\7f' + ) + (func (export "64_bad") (param $i i32) + (drop (f64.load offset=4294967295 (get_local $i))) + ) +) + +(assert_return (invoke "64_good1" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "64_good2" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "64_good3" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "64_good4" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "64_good5" (i32.const 0)) (f64.const nan:0xc000000000001)) + +(assert_return (invoke "64_good1" (i32.const 65510)) (f64.const 0.0)) +(assert_return (invoke "64_good2" (i32.const 65510)) (f64.const 0.0)) +(assert_return (invoke "64_good3" (i32.const 65510)) (f64.const 0.0)) +(assert_return (invoke "64_good4" (i32.const 65510)) (f64.const 0.0)) +(assert_return (invoke "64_good5" (i32.const 65510)) (f64.const 0.0)) + +(assert_return (invoke "64_good1" (i32.const 65511)) (f64.const 0.0)) +(assert_return (invoke "64_good2" (i32.const 65511)) (f64.const 0.0)) +(assert_return (invoke "64_good3" (i32.const 65511)) (f64.const 0.0)) +(assert_return (invoke "64_good4" (i32.const 65511)) (f64.const 0.0)) +(assert_trap (invoke "64_good5" (i32.const 65511)) "out of bounds memory access") + +(assert_trap (invoke "64_bad" (i32.const 0)) "out of bounds memory access") +(assert_trap (invoke "64_bad" (i32.const 1)) "out of bounds memory access") diff --git a/test/spec/align.wast b/test/spec/align.wast new file mode 100644 index 00000000000..7f877c4ec4b --- /dev/null +++ b/test/spec/align.wast @@ -0,0 +1,866 @@ +;; Test alignment annotation rules + +(module (memory 0) (func (drop (i32.load8_s align=1 (i32.const 0))))) +(module (memory 0) (func (drop (i32.load8_u align=1 (i32.const 0))))) +(module (memory 0) (func (drop (i32.load16_s align=2 (i32.const 0))))) +(module (memory 0) (func (drop (i32.load16_u align=2 (i32.const 0))))) +(module (memory 0) (func (drop (i32.load align=4 (i32.const 0))))) +(module (memory 0) (func (drop (i64.load8_s align=1 (i32.const 0))))) +(module (memory 0) (func (drop (i64.load8_u align=1 (i32.const 0))))) +(module (memory 0) (func (drop (i64.load16_s align=2 (i32.const 0))))) +(module (memory 0) (func (drop (i64.load16_u align=2 (i32.const 0))))) +(module (memory 0) (func (drop (i64.load32_s align=4 (i32.const 0))))) +(module (memory 0) (func (drop (i64.load32_u align=4 (i32.const 0))))) +(module (memory 0) (func (drop (i64.load align=8 (i32.const 0))))) +(module (memory 0) (func (drop (f32.load align=4 (i32.const 0))))) +(module (memory 0) (func (drop (f64.load align=8 (i32.const 0))))) +(module (memory 0) (func (i32.store8 align=1 (i32.const 0) (i32.const 1)))) +(module (memory 0) (func (i32.store16 align=2 (i32.const 0) (i32.const 1)))) +(module (memory 0) (func (i32.store align=4 (i32.const 0) (i32.const 1)))) +(module (memory 0) (func (i64.store8 align=1 (i32.const 0) (i64.const 1)))) +(module (memory 0) (func (i64.store16 align=2 (i32.const 0) (i64.const 1)))) +(module (memory 0) (func (i64.store32 align=4 (i32.const 0) (i64.const 1)))) +(module (memory 0) (func (i64.store align=8 (i32.const 0) (i64.const 1)))) +(module (memory 0) (func (f32.store align=4 (i32.const 0) (f32.const 1.0)))) +(module (memory 0) (func (f64.store align=8 (i32.const 0) (f64.const 1.0)))) + +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load8_s align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load8_s align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load8_u align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load8_u align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load16_s align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load16_s align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load16_u align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load16_u align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i32.load align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load8_s align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load8_s align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load8_u align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load8_u align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load16_s align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load16_s align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load16_u align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load16_u align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load32_s align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load32_s align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load32_u align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load32_u align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (i64.load align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (f32.load align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (f32.load align=7 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (f64.load align=0 (i32.const 0)))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (drop (f64.load align=7 (i32.const 0)))))" + ) + "alignment" +) + +(assert_malformed + (module quote + "(module (memory 0) (func (i32.store8 align=0 (i32.const 0) (i32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i32.store8 align=7 (i32.const 0) (i32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i32.store16 align=0 (i32.const 0) (i32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i32.store16 align=7 (i32.const 0) (i32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i32.store align=0 (i32.const 0) (i32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i32.store align=7 (i32.const 0) (i32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store8 align=0 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store8 align=7 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store16 align=0 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store16 align=7 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store32 align=0 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store32 align=7 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store align=0 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (i64.store align=7 (i32.const 0) (i64.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (f32.store align=0 (i32.const 0) (f32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (f32.store align=7 (i32.const 0) (f32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (f64.store align=0 (i32.const 0) (f32.const 0))))" + ) + "alignment" +) +(assert_malformed + (module quote + "(module (memory 0) (func (f64.store align=7 (i32.const 0) (f32.const 0))))" + ) + "alignment" +) + +(assert_invalid + (module (memory 0) (func (drop (i32.load8_s align=2 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i32.load8_u align=2 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i32.load16_s align=4 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i32.load16_u align=4 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i32.load align=8 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load8_s align=2 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load8_u align=2 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load16_s align=4 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load16_u align=4 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load32_s align=8 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load32_u align=8 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load align=16 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (f32.load align=8 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (f64.load align=16 (i32.const 0))))) + "alignment must not be larger than natural" +) + +(assert_invalid + (module (memory 0) (func (i32.load8_s align=2 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.load8_u align=2 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.load16_s align=4 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.load16_u align=4 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.load align=8 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.load8_s align=2 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.load8_u align=2 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.load16_s align=4 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.load16_u align=4 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.load32_s align=8 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.load32_u align=8 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.load align=16 (i32.const 0)))) + "alignment" +) +(assert_invalid + (module (memory 0) (func (f32.load align=8 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (f64.load align=16 (i32.const 0)))) + "alignment must not be larger than natural" +) + +(assert_invalid + (module (memory 0) (func (i32.store8 align=2 (i32.const 0) (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.store16 align=4 (i32.const 0) (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.store align=8 (i32.const 0) (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.store8 align=2 (i32.const 0) (i64.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.store16 align=4 (i32.const 0) (i64.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.store32 align=8 (i32.const 0) (i64.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i64.store align=16 (i32.const 0) (i64.const 0)))) + "alignment" +) +(assert_invalid + (module (memory 0) (func (f32.store align=8 (i32.const 0) (f32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (f64.store align=16 (i32.const 0) (f32.const 0)))) + "alignment must not be larger than natural" +) + +;; Test aligned and unaligned read/write + +(module + (memory 1) + + ;; $default: natural alignment, $1: align=1, $2: align=2, $4: align=4, $8: align=8 + + (func (export "f32_align_switch") (param i32) (result f32) + (local f32 f32) + (set_local 1 (f32.const 10.0)) + (block $4 + (block $2 + (block $1 + (block $default + (block $0 + (br_table $0 $default $1 $2 $4 (get_local 0)) + ) ;; 0 + (f32.store (i32.const 0) (get_local 1)) + (set_local 2 (f32.load (i32.const 0))) + (br $4) + ) ;; default + (f32.store align=1 (i32.const 0) (get_local 1)) + (set_local 2 (f32.load align=1 (i32.const 0))) + (br $4) + ) ;; 1 + (f32.store align=2 (i32.const 0) (get_local 1)) + (set_local 2 (f32.load align=2 (i32.const 0))) + (br $4) + ) ;; 2 + (f32.store align=4 (i32.const 0) (get_local 1)) + (set_local 2 (f32.load align=4 (i32.const 0))) + ) ;; 4 + (get_local 2) + ) + + (func (export "f64_align_switch") (param i32) (result f64) + (local f64 f64) + (set_local 1 (f64.const 10.0)) + (block $8 + (block $4 + (block $2 + (block $1 + (block $default + (block $0 + (br_table $0 $default $1 $2 $4 $8 (get_local 0)) + ) ;; 0 + (f64.store (i32.const 0) (get_local 1)) + (set_local 2 (f64.load (i32.const 0))) + (br $8) + ) ;; default + (f64.store align=1 (i32.const 0) (get_local 1)) + (set_local 2 (f64.load align=1 (i32.const 0))) + (br $8) + ) ;; 1 + (f64.store align=2 (i32.const 0) (get_local 1)) + (set_local 2 (f64.load align=2 (i32.const 0))) + (br $8) + ) ;; 2 + (f64.store align=4 (i32.const 0) (get_local 1)) + (set_local 2 (f64.load align=4 (i32.const 0))) + (br $8) + ) ;; 4 + (f64.store align=8 (i32.const 0) (get_local 1)) + (set_local 2 (f64.load align=8 (i32.const 0))) + ) ;; 8 + (get_local 2) + ) + + ;; $8s: i32/i64.load8_s, $8u: i32/i64.load8_u, $16s: i32/i64.load16_s, $16u: i32/i64.load16_u, $32: i32.load + ;; $32s: i64.load32_s, $32u: i64.load32_u, $64: i64.load + + (func (export "i32_align_switch") (param i32 i32) (result i32) + (local i32 i32) + (set_local 2 (i32.const 10)) + (block $32 + (block $16u + (block $16s + (block $8u + (block $8s + (block $0 + (br_table $0 $8s $8u $16s $16u $32 (get_local 0)) + ) ;; 0 + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i32.store8 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load8_s (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i32.store8 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load8_s align=1 (i32.const 0))) + ) + ) + (br $32) + ) ;; 8s + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i32.store8 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load8_u (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i32.store8 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load8_u align=1 (i32.const 0))) + ) + ) + (br $32) + ) ;; 8u + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i32.store16 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load16_s (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i32.store16 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load16_s align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i32.store16 align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load16_s align=2 (i32.const 0))) + ) + ) + (br $32) + ) ;; 16s + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i32.store16 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load16_u (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i32.store16 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load16_u align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i32.store16 align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load16_u align=2 (i32.const 0))) + ) + ) + (br $32) + ) ;; 16u + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i32.store (i32.const 0) (get_local 2)) + (set_local 3 (i32.load (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i32.store align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i32.store align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load align=2 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 4)) + (then + (i32.store align=4 (i32.const 0) (get_local 2)) + (set_local 3 (i32.load align=4 (i32.const 0))) + ) + ) + ) ;; 32 + (get_local 3) + ) + + (func (export "i64_align_switch") (param i32 i32) (result i64) + (local i64 i64) + (set_local 2 (i64.const 10)) + (block $64 + (block $32u + (block $32s + (block $16u + (block $16s + (block $8u + (block $8s + (block $0 + (br_table $0 $8s $8u $16s $16u $32s $32u $64 (get_local 0)) + ) ;; 0 + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i64.store8 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load8_s (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i64.store8 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load8_s align=1 (i32.const 0))) + ) + ) + (br $64) + ) ;; 8s + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i64.store8 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load8_u (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i64.store8 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load8_u align=1 (i32.const 0))) + ) + ) + (br $64) + ) ;; 8u + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i64.store16 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load16_s (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i64.store16 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load16_s align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i64.store16 align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load16_s align=2 (i32.const 0))) + ) + ) + (br $64) + ) ;; 16s + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i64.store16 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load16_u (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i64.store16 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load16_u align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i64.store16 align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load16_u align=2 (i32.const 0))) + ) + ) + (br $64) + ) ;; 16u + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i64.store32 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_s (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i64.store32 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_s align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i64.store32 align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_s align=2 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 4)) + (then + (i64.store32 align=4 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_s align=4 (i32.const 0))) + ) + ) + (br $64) + ) ;; 32s + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i64.store32 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_u (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i64.store32 align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_u align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i64.store32 align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_u align=2 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 4)) + (then + (i64.store32 align=4 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load32_u align=4 (i32.const 0))) + ) + ) + (br $64) + ) ;; 32u + (if (i32.eq (get_local 1) (i32.const 0)) + (then + (i64.store (i32.const 0) (get_local 2)) + (set_local 3 (i64.load (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 1)) + (then + (i64.store align=1 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load align=1 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 2)) + (then + (i64.store align=2 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load align=2 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 4)) + (then + (i64.store align=4 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load align=4 (i32.const 0))) + ) + ) + (if (i32.eq (get_local 1) (i32.const 8)) + (then + (i64.store align=8 (i32.const 0) (get_local 2)) + (set_local 3 (i64.load align=8 (i32.const 0))) + ) + ) + ) ;; 64 + (get_local 3) + ) +) + +(assert_return (invoke "f32_align_switch" (i32.const 0)) (f32.const 10.0)) +(assert_return (invoke "f32_align_switch" (i32.const 1)) (f32.const 10.0)) +(assert_return (invoke "f32_align_switch" (i32.const 2)) (f32.const 10.0)) +(assert_return (invoke "f32_align_switch" (i32.const 3)) (f32.const 10.0)) + +(assert_return (invoke "f64_align_switch" (i32.const 0)) (f64.const 10.0)) +(assert_return (invoke "f64_align_switch" (i32.const 1)) (f64.const 10.0)) +(assert_return (invoke "f64_align_switch" (i32.const 2)) (f64.const 10.0)) +(assert_return (invoke "f64_align_switch" (i32.const 3)) (f64.const 10.0)) +(assert_return (invoke "f64_align_switch" (i32.const 4)) (f64.const 10.0)) + +(assert_return (invoke "i32_align_switch" (i32.const 0) (i32.const 0)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 0) (i32.const 1)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 1) (i32.const 0)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 1) (i32.const 1)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 2) (i32.const 0)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 2) (i32.const 1)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 2) (i32.const 2)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 3) (i32.const 0)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 3) (i32.const 1)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 3) (i32.const 2)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 4) (i32.const 0)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 4) (i32.const 1)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 4) (i32.const 2)) (i32.const 10)) +(assert_return (invoke "i32_align_switch" (i32.const 4) (i32.const 4)) (i32.const 10)) + +(assert_return (invoke "i64_align_switch" (i32.const 0) (i32.const 0)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 0) (i32.const 1)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 1) (i32.const 0)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 1) (i32.const 1)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 2) (i32.const 0)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 2) (i32.const 1)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 2) (i32.const 2)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 3) (i32.const 0)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 3) (i32.const 1)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 3) (i32.const 2)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 4) (i32.const 0)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 4) (i32.const 1)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 4) (i32.const 2)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 4) (i32.const 4)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 5) (i32.const 0)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 5) (i32.const 1)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 5) (i32.const 2)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 5) (i32.const 4)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 6) (i32.const 0)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 6) (i32.const 1)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 6) (i32.const 2)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 6) (i32.const 4)) (i64.const 10)) +(assert_return (invoke "i64_align_switch" (i32.const 6) (i32.const 8)) (i64.const 10)) + +;; Test that an i64 store with 4-byte alignment that's 4 bytes out of bounds traps without storing anything + +(module + (memory 1) + (func (export "store") (param i32 i64) + (i64.store align=4 (get_local 0) (get_local 1)) + ) + (func (export "load") (param i32) (result i32) + (i32.load (get_local 0)) + ) +) + +(assert_trap (invoke "store" (i32.const 65532) (i64.const -1)) "out of bounds memory access") +;; No memory was changed +(assert_return (invoke "load" (i32.const 65532)) (i32.const 0)) diff --git a/test/spec/binary.wast b/test/spec/binary.wast new file mode 100644 index 00000000000..3dceb2ecd65 --- /dev/null +++ b/test/spec/binary.wast @@ -0,0 +1,344 @@ +(module binary "\00asm\01\00\00\00") +(module binary "\00asm" "\01\00\00\00") +(module $M1 binary "\00asm\01\00\00\00") +(module $M2 binary "\00asm" "\01\00\00\00") + +(assert_malformed (module binary "") "unexpected end") +(assert_malformed (module binary "\01") "unexpected end") +(assert_malformed (module binary "\00as") "unexpected end") +(assert_malformed (module binary "asm\00") "magic header not detected") +(assert_malformed (module binary "msa\00") "magic header not detected") +(assert_malformed (module binary "msa\00\01\00\00\00") "magic header not detected") +(assert_malformed (module binary "msa\00\00\00\00\01") "magic header not detected") +(assert_malformed (module binary "asm\01\00\00\00\00") "magic header not detected") +(assert_malformed (module binary "wasm\01\00\00\00") "magic header not detected") +(assert_malformed (module binary "\7fasm\01\00\00\00") "magic header not detected") +(assert_malformed (module binary "\80asm\01\00\00\00") "magic header not detected") +(assert_malformed (module binary "\82asm\01\00\00\00") "magic header not detected") +(assert_malformed (module binary "\ffasm\01\00\00\00") "magic header not detected") + +;; 8-byte endian-reversed. +(assert_malformed (module binary "\00\00\00\01msa\00") "magic header not detected") + +;; Middle-endian byte orderings. +(assert_malformed (module binary "a\00ms\00\01\00\00") "magic header not detected") +(assert_malformed (module binary "sm\00a\00\00\01\00") "magic header not detected") + +;; Upper-cased. +(assert_malformed (module binary "\00ASM\01\00\00\00") "magic header not detected") + +;; EBCDIC-encoded magic. +(assert_malformed (module binary "\00\81\a2\94\01\00\00\00") "magic header not detected") + +;; Leading UTF-8 BOM. +(assert_malformed (module binary "\ef\bb\bf\00asm\01\00\00\00") "magic header not detected") + +(assert_malformed (module binary "\00asm") "unexpected end") +(assert_malformed (module binary "\00asm\01") "unexpected end") +(assert_malformed (module binary "\00asm\01\00\00") "unexpected end") +(assert_malformed (module binary "\00asm\00\00\00\00") "unknown binary version") +(assert_malformed (module binary "\00asm\0d\00\00\00") "unknown binary version") +(assert_malformed (module binary "\00asm\0e\00\00\00") "unknown binary version") +(assert_malformed (module binary "\00asm\00\01\00\00") "unknown binary version") +(assert_malformed (module binary "\00asm\00\00\01\00") "unknown binary version") +(assert_malformed (module binary "\00asm\00\00\00\01") "unknown binary version") + +;; Unsigned LEB128 can have non-minimal length +(module binary + "\00asm" "\01\00\00\00" + "\05\04\01" ;; Memory section with 1 entry + "\00\82\00" ;; no max, minimum 2 +) +(module binary + "\00asm" "\01\00\00\00" + "\05\07\01" ;; Memory section with 1 entry + "\00\82\80\80\80\00" ;; no max, minimum 2 +) + +;; Signed LEB128 can have non-minimal length +(module binary + "\00asm" "\01\00\00\00" + "\06\07\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\80\00" ;; i32.const 0 + "\0b" ;; end +) +(module binary + "\00asm" "\01\00\00\00" + "\06\07\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\ff\7f" ;; i32.const -1 + "\0b" ;; end +) +(module binary + "\00asm" "\01\00\00\00" + "\06\0a\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\80\80\80\80\00" ;; i32.const 0 + "\0b" ;; end +) +(module binary + "\00asm" "\01\00\00\00" + "\06\0a\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\ff\ff\ff\ff\7f" ;; i32.const -1 + "\0b" ;; end +) + +(module binary + "\00asm" "\01\00\00\00" + "\06\07\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\80\00" ;; i64.const 0 with unused bits set + "\0b" ;; end +) +(module binary + "\00asm" "\01\00\00\00" + "\06\07\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\ff\7f" ;; i64.const -1 with unused bits unset + "\0b" ;; end +) +(module binary + "\00asm" "\01\00\00\00" + "\06\0f\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\80\80\80\80\80\80\80\80\80\00" ;; i64.const 0 with unused bits set + "\0b" ;; end +) +(module binary + "\00asm" "\01\00\00\00" + "\06\0f\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\ff\ff\ff\ff\ff\ff\ff\ff\ff\7f" ;; i64.const -1 with unused bits unset + "\0b" ;; end +) + +;; Unsigned LEB128 must not be overlong +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\05\08\01" ;; Memory section with 1 entry + "\00\82\80\80\80\80\00" ;; no max, minimum 2 with one byte too many + ) + "integer representation too long" +) + +;; Signed LEB128 must not be overlong +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0b\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\80\80\80\80\80\00" ;; i32.const 0 with one byte too many + "\0b" ;; end + ) + "integer representation too long" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0b\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\ff\ff\ff\ff\ff\7f" ;; i32.const -1 with one byte too many + "\0b" ;; end + ) + "integer representation too long" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\10\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\80\80\80\80\80\80\80\80\80\80\00" ;; i64.const 0 with one byte too many + "\0b" ;; end + ) + "integer representation too long" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\10\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\ff\ff\ff\ff\ff\ff\ff\ff\ff\ff\7f" ;; i64.const -1 with one byte too many + "\0b" ;; end + ) + "integer representation too long" +) + +;; Unsigned LEB128s zero-extend +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\05\04\01" ;; Memory section with 1 entry + "\00\82\80\80\80\70" ;; no max, minimum 2 with unused bits set + ) + "integer too large" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\05\04\01" ;; Memory section with 1 entry + "\00\82\80\80\80\40" ;; no max, minimum 2 with some unused bits set + ) + "integer too large" +) + +;; Signed LEB128s sign-extend +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0a\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\80\80\80\80\70" ;; i32.const 0 with unused bits set + "\0b" ;; end + ) + "integer too large" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0a\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\ff\ff\ff\ff\0f" ;; i32.const -1 with unused bits unset + "\0b" ;; end + ) + "integer too large" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0a\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\80\80\80\80\1f" ;; i32.const 0 with some unused bits set + "\0b" ;; end + ) + "integer too large" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0a\01" ;; Global section with 1 entry + "\7f\00" ;; i32, immutable + "\41\ff\ff\ff\ff\4f" ;; i32.const -1 with some unused bits unset + "\0b" ;; end + ) + "integer too large" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0f\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\80\80\80\80\80\80\80\80\80\7e" ;; i64.const 0 with unused bits set + "\0b" ;; end + ) + "integer too large" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0f\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\ff\ff\ff\ff\ff\ff\ff\ff\ff\01" ;; i64.const -1 with unused bits unset + "\0b" ;; end + ) + "integer too large" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0f\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\80\80\80\80\80\80\80\80\80\02" ;; i64.const 0 with some unused bits set + "\0b" ;; end + ) + "integer too large" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\0f\01" ;; Global section with 1 entry + "\7e\00" ;; i64, immutable + "\42\ff\ff\ff\ff\ff\ff\ff\ff\ff\41" ;; i64.const -1 with some unused bits unset + "\0b" ;; end + ) + "integer too large" +) + +;; call_indirect reserved byte equal to zero. +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\01\04\01\60\00\00" ;; Type section + "\03\02\01\00" ;; Function section + "\04\04\01\70\00\00" ;; Table section + "\0a\09\01" ;; Code section + + ;; function 0 + "\07\00" + "\41\00" ;; i32.const 0 + "\11\00" ;; call_indirect (type 0) + "\01" ;; call_indirect reserved byte is not equal to zero! + "\0b" ;; end + ) + "zero flag expected" +) + +;; memory.grow reserved byte equal to zero. +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\01\04\01\60\00\00" ;; Type section + "\03\02\01\00" ;; Function section + "\05\03\01\00\00" ;; Memory section + "\0a\09\01" ;; Code section + + ;; function 0 + "\07\00" + "\41\00" ;; i32.const 0 + "\40" ;; memory.grow + "\01" ;; memory.grow reserved byte is not equal to zero! + "\1a" ;; drop + "\0b" ;; end + ) + "zero flag expected" +) + +;; memory.size reserved byte equal to zero. +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\01\04\01\60\00\00" ;; Type section + "\03\02\01\00" ;; Function section + "\05\03\01\00\00" ;; Memory section + "\0a\07\01" ;; Code section + + ;; function 0 + "\05\00" + "\3f" ;; memory.size + "\01" ;; memory.size reserved byte is not equal to zero! + "\1a" ;; drop + "\0b" ;; end + ) + "zero flag expected" +) + +;; No more than 2^32 locals. +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\01\04\01\60\00\00" ;; Type section + "\03\02\01\00" ;; Function section + "\0a\0c\01" ;; Code section + + ;; function 0 + "\0a\02" + "\ff\ff\ff\ff\0f\7f" ;; 0xFFFFFFFF i32 + "\02\7e" ;; 0x00000002 i64 + "\0b" ;; end + ) + "too many locals" +) diff --git a/test/spec/block.wast b/test/spec/block.wast new file mode 100644 index 00000000000..46d7918b797 --- /dev/null +++ b/test/spec/block.wast @@ -0,0 +1,1090 @@ +;; Test `block` operator + +(module + ;; Auxiliary definition + (memory 1) + + (func $dummy) + + (func (export "empty") + (block) + (block $l) + ) + + (func (export "singular") (result i32) + (block (nop)) + (block (result i32) (i32.const 7)) + ) + + (func (export "multi") (result i32) + (block (call $dummy) (call $dummy) (call $dummy) (call $dummy)) + (block (result i32) (call $dummy) (call $dummy) (call $dummy) (i32.const 8)) + ) + + (func (export "nested") (result i32) + (block (result i32) + (block (call $dummy) (block) (nop)) + (block (result i32) (call $dummy) (i32.const 9)) + ) + ) + + (func (export "deep") (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (call $dummy) (i32.const 150) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + ) + + (func (export "as-select-first") (result i32) + (select (block (result i32) (i32.const 1)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-select-mid") (result i32) + (select (i32.const 2) (block (result i32) (i32.const 1)) (i32.const 3)) + ) + (func (export "as-select-last") (result i32) + (select (i32.const 2) (i32.const 3) (block (result i32) (i32.const 1))) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-loop-first") (result i32) + (loop (result i32) (block (result i32) (i32.const 1)) (call $dummy) (call $dummy)) + ;) + (;func (export "as-loop-mid") (result i32) + (loop (result i32) (call $dummy) (block (result i32) (i32.const 1)) (call $dummy)) + ;) + (func (export "as-loop-last") (result i32) + (loop (result i32) (call $dummy) (call $dummy) (block (result i32) (i32.const 1))) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-if-condition") + (block (result i32) (i32.const 1)) (if (then (call $dummy))) + ;) + (func (export "as-if-then") (result i32) + (if (result i32) (i32.const 1) (then (block (result i32) (i32.const 1))) (else (i32.const 2))) + ) + (func (export "as-if-else") (result i32) + (if (result i32) (i32.const 1) (then (i32.const 2)) (else (block (result i32) (i32.const 1)))) + ) + + (func (export "as-br_if-first") (result i32) + (block (result i32) (br_if 0 (block (result i32) (i32.const 1)) (i32.const 2))) + ) + (func (export "as-br_if-last") (result i32) + (block (result i32) (br_if 0 (i32.const 2) (block (result i32) (i32.const 1)))) + ) + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-br_table-first") (result i32) + (block (result i32) (block (result i32) (i32.const 1)) (i32.const 2) (br_table 0 0)) + ;) + (;func (export "as-br_table-last") (result i32) + (block (result i32) (i32.const 2) (block (result i32) (i32.const 1)) (br_table 0 0)) + ;) + + (func $func (param i32 i32) (result i32) (get_local 0)) + (type $check (func (param i32 i32) (result i32))) + (table anyfunc (elem $func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $check) + (block (result i32) (i32.const 1)) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $check) + (i32.const 2) (block (result i32) (i32.const 1)) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $check) + (i32.const 1) (i32.const 2) (block (result i32) (i32.const 0)) + ) + ) + ) + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-store-first") + (block (result i32) (i32.const 1)) (i32.const 1) (i32.store) + ;) + (;func (export "as-store-last") + (i32.const 10) (block (result i32) (i32.const 1)) (i32.store) + ;) + + (func (export "as-memory.grow-value") (result i32) + (memory.grow (block (result i32) (i32.const 1))) + ) + + (func $f (param i32) (result i32) (get_local 0)) + + (func (export "as-call-value") (result i32) + (call $f (block (result i32) (i32.const 1))) + ) + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-return-value") (result i32) + (block (result i32) (i32.const 1)) (return) + ;) + (func (export "as-drop-operand") + (drop (block (result i32) (i32.const 1))) + ) + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (block (result i32) (i32.const 1)))) + ) + (func (export "as-set_local-value") (result i32) + (local i32) (set_local 0 (block (result i32) (i32.const 1))) (get_local 0) + ) + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-load-operand") (result i32) + (i32.load (block (result i32) (i32.const 1))) + ;) + + (func (export "as-unary-operand") (result i32) + (i32.ctz (block (result i32) (call $dummy) (i32.const 13))) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (block (result i32) (call $dummy) (i32.const 3)) + (block (result i32) (call $dummy) (i32.const 4)) + ) + ) + (func (export "as-test-operand") (result i32) + (i32.eqz (block (result i32) (call $dummy) (i32.const 13))) + ) + (func (export "as-compare-operand") (result i32) + (f32.gt + (block (result f32) (call $dummy) (f32.const 3)) + (block (result f32) (call $dummy) (f32.const 3)) + ) + ) + + (func (export "break-bare") (result i32) + (block (br 0) (unreachable)) + (block (br_if 0 (i32.const 1)) (unreachable)) + (block (br_table 0 (i32.const 0)) (unreachable)) + (block (br_table 0 0 0 (i32.const 1)) (unreachable)) + (i32.const 19) + ) + (func (export "break-value") (result i32) + (block (result i32) (br 0 (i32.const 18)) (i32.const 19)) + ) + (func (export "break-repeated") (result i32) + (block (result i32) + (br 0 (i32.const 18)) + (br 0 (i32.const 19)) + (drop (br_if 0 (i32.const 20) (i32.const 0))) + (drop (br_if 0 (i32.const 20) (i32.const 1))) + (br 0 (i32.const 21)) + (br_table 0 (i32.const 22) (i32.const 4)) + (br_table 0 0 0 (i32.const 23) (i32.const 1)) + (i32.const 21) + ) + ) + (func (export "break-inner") (result i32) + (local i32) + (set_local 0 (i32.const 0)) + (set_local 0 (i32.add (get_local 0) (block (result i32) (block (result i32) (br 1 (i32.const 0x1)))))) + (set_local 0 (i32.add (get_local 0) (block (result i32) (block (br 0)) (i32.const 0x2)))) + (set_local 0 + (i32.add (get_local 0) (block (result i32) (i32.ctz (br 0 (i32.const 0x4))))) + ) + (set_local 0 + (i32.add (get_local 0) (block (result i32) (i32.ctz (block (result i32) (br 1 (i32.const 0x8)))))) + ) + (get_local 0) + ) + + (func (export "effects") (result i32) + (local i32) + (block + (set_local 0 (i32.const 1)) + (set_local 0 (i32.mul (get_local 0) (i32.const 3))) + (set_local 0 (i32.sub (get_local 0) (i32.const 5))) + (set_local 0 (i32.mul (get_local 0) (i32.const 7))) + (br 0) + (set_local 0 (i32.mul (get_local 0) (i32.const 100))) + ) + (i32.eq (get_local 0) (i32.const -14)) + ) +) + +(assert_return (invoke "empty")) +(assert_return (invoke "singular") (i32.const 7)) +(assert_return (invoke "multi") (i32.const 8)) +(assert_return (invoke "nested") (i32.const 9)) +(assert_return (invoke "deep") (i32.const 150)) + +(assert_return (invoke "as-select-first") (i32.const 1)) +(assert_return (invoke "as-select-mid") (i32.const 2)) +(assert_return (invoke "as-select-last") (i32.const 2)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-loop-first") (i32.const 1)) +;; (assert_return (invoke "as-loop-mid") (i32.const 1)) +(assert_return (invoke "as-loop-last") (i32.const 1)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-if-condition")) +(assert_return (invoke "as-if-then") (i32.const 1)) +(assert_return (invoke "as-if-else") (i32.const 2)) + +(assert_return (invoke "as-br_if-first") (i32.const 1)) +(assert_return (invoke "as-br_if-last") (i32.const 2)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-br_table-first") (i32.const 1)) +;; (assert_return (invoke "as-br_table-last") (i32.const 2)) + +(assert_return (invoke "as-call_indirect-first") (i32.const 1)) +(assert_return (invoke "as-call_indirect-mid") (i32.const 2)) +(assert_return (invoke "as-call_indirect-last") (i32.const 1)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-store-first")) +;; (assert_return (invoke "as-store-last")) + +(assert_return (invoke "as-memory.grow-value") (i32.const 1)) +(assert_return (invoke "as-call-value") (i32.const 1)) +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-return-value") (i32.const 1)) +(assert_return (invoke "as-drop-operand")) +(assert_return (invoke "as-br-value") (i32.const 1)) +(assert_return (invoke "as-set_local-value") (i32.const 1)) +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-load-operand") (i32.const 1)) + +(assert_return (invoke "as-unary-operand") (i32.const 0)) +(assert_return (invoke "as-binary-operand") (i32.const 12)) +(assert_return (invoke "as-test-operand") (i32.const 0)) +(assert_return (invoke "as-compare-operand") (i32.const 0)) + +(assert_return (invoke "break-bare") (i32.const 19)) +(assert_return (invoke "break-value") (i32.const 18)) +(assert_return (invoke "break-repeated") (i32.const 18)) +(assert_return (invoke "break-inner") (i32.const 0xf)) + +(assert_return (invoke "effects") (i32.const 1)) + +(assert_invalid + (module (func $type-empty-i32 (result i32) (block))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64) (block))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32) (block))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64) (block))) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-i32-vs-void + (block (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-i64-vs-void + (block (i64.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f32-vs-void + (block (f32.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f64-vs-void + (block (f64.const 1.0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-empty-vs-i32 (result i32) + (block (result i32)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-empty-vs-i64 (result i64) + (block (result i64)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-empty-vs-f32 (result f32) + (block (result f32)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-empty-vs-f64 (result f64) + (block (result f64)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-void-vs-i32 (result i32) + (block (result i32) (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-i64 (result i64) + (block (result i64) (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-f32 (result f32) + (block (result f32) (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-f64 (result f64) + (block (result f64) (nop)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-i32-vs-i64 (result i32) + (block (result i32) (i64.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-i32-vs-f32 (result i32) + (block (result i32) (f32.const 0.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-i32-vs-f64 (result i32) + (block (result i32) (f64.const 0.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-i64-vs-i32 (result i64) + (block (result i64) (i32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-i64-vs-f32 (result i64) + (block (result i64) (f32.const 0.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-i64-vs-f64 (result i64) + (block (result i64) (f64.const 0.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f32-vs-i32 (result f32) + (block (result f32) (i32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f32-vs-i64 (result f32) + (block (result f32) (i64.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f32-vs-f64 (result f32) + (block (result f32) (f64.const 0.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f64-vs-i32 (result f64) + (block (result f64) (i32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f64-vs-i64 (result f64) + (block (result f64) (i64.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-f64-vs-f32 (result f32) + (block (result f64) (f32.const 0.0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-unreached-select-i32-i64 (result i32) + (block (result i64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-i32-f32 (result i32) + (block (result f32) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-i32-f64 (result i32) + (block (result f64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-i64-i32 (result i64) + (block (result i32) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-i64-f32 (result i64) + (block (result f32) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-i64-f64 (result i64) + (block (result f64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-f32-i32 (result f32) + (block (result i32) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-f32-i64 (result f32) + (block (result i64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-f32-f64 (result f32) + (block (result f64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-f64-i32 (result f64) + (block (result i32) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-f64-i64 (result f64) + (block (result i64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select-f64-f32 (result f64) + (block (result f32) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-last-void-vs-i32 (result i32) + (block (result i32) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-void-vs-i64 (result i64) + (block (result i64) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-void-vs-f32 (result f32) + (block (result f32) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-void-vs-f64 (result f64) + (block (result f64) (br 0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-empty-vs-i32 (result i32) + (block (result i32) (br 0) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-empty-vs-i64 (result i64) + (block (result i64) (br 0) (i64.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-empty-vs-f32 (result f32) + (block (result f32) (br 0) (f32.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-empty-vs-f64 (result f64) + (block (result f64) (br 0) (f64.const 1.0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-void-vs-i32 (result i32) + (block (result i32) (br 0 (nop)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-void-vs-i64 (result i64) + (block (result i64) (br 0 (nop)) (i64.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-void-vs-f32 (result f32) + (block (result f32) (br 0 (nop)) (f32.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-void-vs-f64 (result f64) + (block (result f64) (br 0 (nop)) (f64.const 1.0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-i32-vs-i64 (result i32) + (block (result i32) (br 0 (i64.const 1)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-i32-vs-f32 (result i32) + (block (result i32) (br 0 (f32.const 1.0)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-i32-vs-f64 (result i32) + (block (result i32) (br 0 (f64.const 1.0)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-i64-vs-i32 (result i64) + (block (result i64) (br 0 (i32.const 1)) (i64.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-i64-vs-f32 (result i64) + (block (result i64) (br 0 (f32.const 1.0)) (i64.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-i64-vs-f64 (result i64) + (block (result i64) (br 0 (f64.const 1.0)) (i64.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-f32-vs-i32 (result f32) + (block (result f32) (br 0 (i32.const 1)) (f32.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-f32-vs-i64 (result f32) + (block (result f32) (br 0 (i64.const 1)) (f32.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-f32-vs-f64 (result f32) + (block (result f32) (br 0 (f64.const 1.0)) (f32.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-f64-vs-i32 (result f64) + (block (result i64) (br 0 (i32.const 1)) (f64.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-f64-vs-i64 (result f64) + (block (result f64) (br 0 (i64.const 1)) (f64.const 1.0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-f64-vs-f32 (result f64) + (block (result f64) (br 0 (f32.const 1.0)) (f64.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-first-void-vs-i32 (result i32) + (block (result i32) (br 0 (nop)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-void-vs-i64 (result i64) + (block (result i64) (br 0 (nop)) (br 0 (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-void-vs-f32 (result f32) + (block (result f32) (br 0 (nop)) (br 0 (f32.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-void-vs-f64 (result f64) + (block (result f64) (br 0 (nop)) (br 0 (f64.const 1.0))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-first-i32-vs-i64 (result i32) + (block (result i32) (br 0 (i64.const 1)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-i32-vs-f32 (result i32) + (block (result i32) (br 0 (f32.const 1.0)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-i32-vs-f64 (result i32) + (block (result i32) (br 0 (f64.const 1.0)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-i64-vs-i32 (result i64) + (block (result i64) (br 0 (i32.const 1)) (br 0 (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-i64-vs-f32 (result i64) + (block (result i64) (br 0 (f32.const 1.0)) (br 0 (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-i64-vs-f64 (result i64) + (block (result i64) (br 0 (f64.const 1.0)) (br 0 (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-f32-vs-i32 (result f32) + (block (result f32) (br 0 (i32.const 1)) (br 0 (f32.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-f32-vs-i64 (result f32) + (block (result f32) (br 0 (i64.const 1)) (br 0 (f32.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-f32-vs-f64 (result f32) + (block (result f32) (br 0 (f64.const 1.0)) (br 0 (f32.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-f64-vs-i32 (result f64) + (block (result f64) (br 0 (i32.const 1)) (br 0 (f64.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-f64-vs-i64 (result f64) + (block (result f64) (br 0 (i64.const 1)) (br 0 (f64.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-f64-vs-f32 (result f64) + (block (result f64) (br 0 (f32.const 1.0)) (br 0 (f64.const 1.0))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-i32-vs-void + (block (result i32) (block (result i32) (br 1 (i32.const 1))) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-i64-vs-void + (block (result i64) (block (result i64) (br 1 (i64.const 1))) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f32-vs-void + (block (result f32) (block (result f32) (br 1 (f32.const 1.0))) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f64-vs-void + (block (result f64) (block (result f64) (br 1 (f64.const 1.0))) (br 0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-empty-vs-i32 (result i32) + (block (result i32) (block (br 1)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-empty-vs-i64 (result i64) + (block (result i64) (block (br 1)) (br 0 (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-empty-vs-f32 (result f32) + (block (result f32) (block (br 1)) (br 0 (f32.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-empty-vs-f64 (result f64) + (block (result f64) (block (br 1)) (br 0 (f64.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-void-vs-i32 (result i32) + (block (result i32) (block (result i32) (br 1 (nop))) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-void-vs-i64 (result i64) + (block (result i64) (block (result i64) (br 1 (nop))) (br 0 (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-void-vs-f32 (result f32) + (block (result f32) (block (result f32) (br 1 (nop))) (br 0 (f32.const 1.0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-void-vs-f64 (result f64) + (block (result f64) (block (result f64) (br 1 (nop))) (br 0 (f64.const 1.0))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-i32-vs-i64 (result i32) + (block (result i32) + (block (result i32) (br 1 (i64.const 1))) (br 0 (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-i32-vs-f32 (result i32) + (block (result i32) + (block (result i32) (br 1 (f32.const 1.0))) (br 0 (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-i32-vs-f64 (result i32) + (block (result i32) + (block (result i32) (br 1 (f64.const 1.0))) (br 0 (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-i64-vs-i32 (result i64) + (block (result i64) + (block (result i64) (br 1 (i32.const 1))) (br 0 (i64.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-i64-vs-f32 (result i64) + (block (result i64) + (block (result i64) (br 1 (f32.const 1.0))) (br 0 (i64.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-i64-vs-f64 (result i64) + (block (result i64) + (block (result i64) (br 1 (f64.const 1.0))) (br 0 (i64.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f32-vs-i32 (result f32) + (block (result f32) + (block (result f32) (br 1 (i32.const 1))) (br 0 (f32.const 1.0)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f32-vs-i64 (result f32) + (block (result f32) + (block (result f32) (br 1 (i64.const 1))) (br 0 (f32.const 1.0)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f32-vs-f64 (result f32) + (block (result f32) + (block (result f32) (br 1 (f64.const 1.0))) (br 0 (f32.const 1.0)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f64-vs-i32 (result f64) + (block (result f64) + (block (result f64) (br 1 (i32.const 1))) (br 0 (f64.const 1.0)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f64-vs-i64 (result f64) + (block (result f64) + (block (result f64) (br 1 (i64.const 1))) (br 0 (f64.const 1.0)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-f64-vs-f32 (result f64) + (block (result f64) + (block (result f64) (br 1 (f32.const 1.0))) (br 0 (f64.const 1.0)) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-operand-empty-vs-i32 (result i32) + (i32.ctz (block (br 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-empty-vs-i64 (result i64) + (i64.ctz (block (br 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-empty-vs-f32 (result f32) + (f32.floor (block (br 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-empty-vs-f64 (result f64) + (f64.floor (block (br 0))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-operand-void-vs-i32 (result i32) + (i32.ctz (block (br 0 (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-void-vs-i64 (result i64) + (i64.ctz (block (br 0 (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-void-vs-f32 (result f32) + (f32.floor (block (br 0 (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-void-vs-f64 (result f64) + (f64.floor (block (br 0 (nop)))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-operand-i32-vs-i64 (result i32) + (i64.ctz (block (br 0 (i64.const 9)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-i32-vs-f32 (result i32) + (f32.floor (block (br 0 (f32.const 9.0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-i32-vs-f64 (result i32) + (f64.floor (block (br 0 (f64.const 9.0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-i64-vs-i32 (result i64) + (i32.ctz (block (br 0 (i32.const 9)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-i64-vs-f32 (result i64) + (f32.floor (block (br 0 (f32.const 9.0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-i64-vs-f64 (result i64) + (f64.floor (block (br 0 (f64.const 9.0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-f32-vs-i32 (result f32) + (i32.ctz (block (br 0 (i32.const 9)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-f32-vs-i64 (result f32) + (i64.ctz (block (br 0 (i64.const 9)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-f32-vs-f64 (result f32) + (f64.floor (block (br 0 (f64.const 9.0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-f64-vs-i32 (result f64) + (i32.ctz (block (br 0 (i32.const 9)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-f64-vs-i64 (result f64) + (i64.ctz (block (br 0 (i64.const 9)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-f64-vs-f32 (result f64) + (f32.floor (block (br 0 (f32.const 9.0)))) + )) + "type mismatch" +) + +(assert_malformed + (module quote "(func block end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func block $a end $l)") + "mismatching label" +) diff --git a/test/spec/br.wast b/test/spec/br.wast new file mode 100644 index 00000000000..e801a1b4714 --- /dev/null +++ b/test/spec/br.wast @@ -0,0 +1,447 @@ +;; Test `br` operator + +(module + ;; Auxiliary definition + (func $dummy) + + (func (export "type-i32") (block (drop (i32.ctz (br 0))))) + (func (export "type-i64") (block (drop (i64.ctz (br 0))))) + (func (export "type-f32") (block (drop (f32.neg (br 0))))) + (func (export "type-f64") (block (drop (f64.neg (br 0))))) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br 0 (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br 0 (i64.const 2)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br 0 (f32.const 3)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br 0 (f64.const 4)))) + ) + + (func (export "as-block-first") + (block (br 0) (call $dummy)) + ) + (func (export "as-block-mid") + (block (call $dummy) (br 0) (call $dummy)) + ) + (func (export "as-block-last") + (block (nop) (call $dummy) (br 0)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $dummy) (br 0 (i32.const 2))) + ) + + (func (export "as-loop-first") (result i32) + (block (result i32) (loop (result i32) (br 1 (i32.const 3)) (i32.const 2))) + ) + (func (export "as-loop-mid") (result i32) + (block (result i32) + (loop (result i32) (call $dummy) (br 1 (i32.const 4)) (i32.const 2)) + ) + ) + (func (export "as-loop-last") (result i32) + (block (result i32) + (loop (result i32) (nop) (call $dummy) (br 1 (i32.const 5))) + ) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br 0 (i32.const 9)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (br 0))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br 0 (i32.const 8)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (br 0 (i32.const 9)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (br 0))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br 0 (i32.const 10)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (br 0 (i32.const 11))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i64) + (block (result i64) (return (br 0 (i64.const 7)))) + ) + + (func (export "as-if-cond") (result i32) + (block (result i32) + (if (result i32) (br 0 (i32.const 2)) + (then (i32.const 0)) + (else (i32.const 1)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) (get_local 0) + (then (br 1 (i32.const 3))) + (else (get_local 1)) + ) + ) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) (get_local 0) + (then (get_local 1)) + (else (br 1 (i32.const 4))) + ) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (block (result i32) + (select (br 0 (i32.const 5)) (get_local 0) (get_local 1)) + ) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (block (result i32) + (select (get_local 0) (br 0 (i32.const 6)) (get_local 1)) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select (i32.const 0) (i32.const 1) (br 0 (i32.const 7))) + ) + ) + + (func $f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $f (br 0 (i32.const 12)) (i32.const 2) (i32.const 3)) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $f (i32.const 1) (br 0 (i32.const 13)) (i32.const 3)) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $f (i32.const 1) (i32.const 2) (br 0 (i32.const 14))) + ) + ) + + (type $sig (func (param i32 i32 i32) (result i32))) + (table anyfunc (elem $f)) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $sig) + (br 0 (i32.const 20)) + (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) + (br 0 (i32.const 21)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) + (i32.const 1) (br 0 (i32.const 22)) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) + (i32.const 1) (i32.const 2) (br 0 (i32.const 23)) + ) + ) + ) + + (func (export "as-set_local-value") (result i32) (local f32) + (block (result i32) (set_local 0 (br 0 (i32.const 17))) (i32.const -1)) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (block (result f32) (f32.load (br 0 (f32.const 1.7)))) + ) + (func (export "as-loadN-address") (result i64) + (block (result i64) (i64.load8_s (br 0 (i64.const 30)))) + ) + + (func (export "as-store-address") (result i32) + (block (result i32) + (f64.store (br 0 (i32.const 30)) (f64.const 7)) (i32.const -1) + ) + ) + (func (export "as-store-value") (result i32) + (block (result i32) + (i64.store (i32.const 2) (br 0 (i32.const 31))) (i32.const -1) + ) + ) + + (func (export "as-storeN-address") (result i32) + (block (result i32) + (i32.store8 (br 0 (i32.const 32)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-storeN-value") (result i32) + (block (result i32) + (i64.store16 (i32.const 2) (br 0 (i32.const 33))) (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f32) + (block (result f32) (f32.neg (br 0 (f32.const 3.4)))) + ) + + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (br 0 (i32.const 3)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i64) + (block (result i64) (i64.sub (i64.const 10) (br 0 (i64.const 45)))) + ) + + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (br 0 (i32.const 44)))) + ) + + (func (export "as-compare-left") (result i32) + (block (result i32) (f64.le (br 0 (i32.const 43)) (f64.const 10))) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) (f32.ne (f32.const 10) (br 0 (i32.const 42)))) + ) + + (func (export "as-convert-operand") (result i32) + (block (result i32) (i32.wrap/i64 (br 0 (i32.const 41)))) + ) + + (func (export "as-memory.grow-size") (result i32) + (block (result i32) (memory.grow (br 0 (i32.const 40)))) + ) + + (func (export "nested-block-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (call $dummy) + (i32.add (i32.const 4) (br 0 (i32.const 8))) + ) + ) + ) + + (func (export "nested-br-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br 0 (br 1 (i32.const 8))) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (drop (br_if 0 (br 1 (i32.const 8)) (i32.const 1))) + (i32.const 32) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 (i32.const 4) (br 0 (i32.const 8)))) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br_table 0 (br 1 (i32.const 8)) (i32.const 1)) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value-index") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 (i32.const 4) (br 0 (i32.const 8))) + (i32.const 16) + ) + ) + ) +) + +(assert_return (invoke "type-i32")) +(assert_return (invoke "type-i64")) +(assert_return (invoke "type-f32")) +(assert_return (invoke "type-f64")) + +(assert_return (invoke "type-i32-value") (i32.const 1)) +(assert_return (invoke "type-i64-value") (i64.const 2)) +(assert_return (invoke "type-f32-value") (f32.const 3)) +(assert_return (invoke "type-f64-value") (f64.const 4)) + +(assert_return (invoke "as-block-first")) +(assert_return (invoke "as-block-mid")) +(assert_return (invoke "as-block-last")) +(assert_return (invoke "as-block-value") (i32.const 2)) + +(assert_return (invoke "as-loop-first") (i32.const 3)) +(assert_return (invoke "as-loop-mid") (i32.const 4)) +(assert_return (invoke "as-loop-last") (i32.const 5)) + +(assert_return (invoke "as-br-value") (i32.const 9)) + +(assert_return (invoke "as-br_if-cond")) +(assert_return (invoke "as-br_if-value") (i32.const 8)) +(assert_return (invoke "as-br_if-value-cond") (i32.const 9)) + +(assert_return (invoke "as-br_table-index")) +(assert_return (invoke "as-br_table-value") (i32.const 10)) +(assert_return (invoke "as-br_table-value-index") (i32.const 11)) + +(assert_return (invoke "as-return-value") (i64.const 7)) + +(assert_return (invoke "as-if-cond") (i32.const 2)) +(assert_return (invoke "as-if-then" (i32.const 1) (i32.const 6)) (i32.const 3)) +(assert_return (invoke "as-if-then" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-if-else" (i32.const 0) (i32.const 6)) (i32.const 4)) +(assert_return (invoke "as-if-else" (i32.const 1) (i32.const 6)) (i32.const 6)) + +(assert_return (invoke "as-select-first" (i32.const 0) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-first" (i32.const 1) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-second" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-second" (i32.const 1) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-cond") (i32.const 7)) + +(assert_return (invoke "as-call-first") (i32.const 12)) +(assert_return (invoke "as-call-mid") (i32.const 13)) +(assert_return (invoke "as-call-last") (i32.const 14)) + +(assert_return (invoke "as-call_indirect-func") (i32.const 20)) +(assert_return (invoke "as-call_indirect-first") (i32.const 21)) +(assert_return (invoke "as-call_indirect-mid") (i32.const 22)) +(assert_return (invoke "as-call_indirect-last") (i32.const 23)) + +(assert_return (invoke "as-set_local-value") (i32.const 17)) + +(assert_return (invoke "as-load-address") (f32.const 1.7)) +(assert_return (invoke "as-loadN-address") (i64.const 30)) + +(assert_return (invoke "as-store-address") (i32.const 30)) +(assert_return (invoke "as-store-value") (i32.const 31)) +(assert_return (invoke "as-storeN-address") (i32.const 32)) +(assert_return (invoke "as-storeN-value") (i32.const 33)) + +(assert_return (invoke "as-unary-operand") (f32.const 3.4)) + +(assert_return (invoke "as-binary-left") (i32.const 3)) +(assert_return (invoke "as-binary-right") (i64.const 45)) + +(assert_return (invoke "as-test-operand") (i32.const 44)) + +(assert_return (invoke "as-compare-left") (i32.const 43)) +(assert_return (invoke "as-compare-right") (i32.const 42)) + +(assert_return (invoke "as-convert-operand") (i32.const 41)) + +(assert_return (invoke "as-memory.grow-size") (i32.const 40)) + +(assert_return (invoke "nested-block-value") (i32.const 9)) +(assert_return (invoke "nested-br-value") (i32.const 9)) +(assert_return (invoke "nested-br_if-value") (i32.const 9)) +(assert_return (invoke "nested-br_if-value-cond") (i32.const 9)) +(assert_return (invoke "nested-br_table-value") (i32.const 9)) +(assert_return (invoke "nested-br_table-value-index") (i32.const 9)) + +(assert_invalid + (module (func $type-arg-empty-vs-num (result i32) + (block (result i32) (br 0) (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-arg-void-vs-num (result i32) + (block (result i32) (br 0 (nop)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-num-vs-num (result i32) + (block (result i32) (br 0 (i64.const 1)) (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $unbound-label (br 1))) + "unknown label" +) +(assert_invalid + (module (func $unbound-nested-label (block (block (br 5))))) + "unknown label" +) +(assert_invalid + (module (func $large-label (br 0x10000001))) + "unknown label" +) diff --git a/test/spec/br_if.wast b/test/spec/br_if.wast new file mode 100644 index 00000000000..9fdfa077f9e --- /dev/null +++ b/test/spec/br_if.wast @@ -0,0 +1,549 @@ +;; Test `br_if` operator + +(module + (func $dummy) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "type-i32") + (block (drop (i32.ctz (br_if 0 (i32.const 0) (i32.const 1))))) + ;) + (;func (export "type-i64") + (block (drop (i64.ctz (br_if 0 (i64.const 0) (i32.const 1))))) + ;) + (;func (export "type-f32") + (block (drop (f32.neg (br_if 0 (f32.const 0) (i32.const 1))))) + ;) + (;func (export "type-f64") + (block (drop (f64.neg (br_if 0 (f64.const 0) (i32.const 1))))) + ;) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br_if 0 (i32.const 1) (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br_if 0 (i64.const 2) (i32.const 1)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br_if 0 (f32.const 3) (i32.const 1)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 4) (i32.const 1)))) + ) + + (func (export "as-block-first") (param i32) (result i32) + (block (br_if 0 (get_local 0)) (return (i32.const 2))) (i32.const 3) + ) + (func (export "as-block-mid") (param i32) (result i32) + (block (call $dummy) (br_if 0 (get_local 0)) (return (i32.const 2))) + (i32.const 3) + ) + (func (export "as-block-last") (param i32) + (block (call $dummy) (call $dummy) (br_if 0 (get_local 0))) + ) + (func (export "as-block-first-value") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 10) (get_local 0))) (return (i32.const 11)) + ) + ) + (func (export "as-block-mid-value") (param i32) (result i32) + (block (result i32) + (call $dummy) + (drop (br_if 0 (i32.const 20) (get_local 0))) + (return (i32.const 21)) + ) + ) + (func (export "as-block-last-value") (param i32) (result i32) + (block (result i32) + (call $dummy) (call $dummy) (br_if 0 (i32.const 11) (get_local 0)) + ) + ) + + (func (export "as-loop-first") (param i32) (result i32) + (block (loop (br_if 1 (get_local 0)) (return (i32.const 2)))) (i32.const 3) + ) + (func (export "as-loop-mid") (param i32) (result i32) + (block (loop (call $dummy) (br_if 1 (get_local 0)) (return (i32.const 2)))) + (i32.const 4) + ) + (func (export "as-loop-last") (param i32) + (loop (call $dummy) (br_if 1 (get_local 0))) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-br_if-cond") + (block (br_if 0 (br_if 0 (i32.const 1) (i32.const 1)))) + ;) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3))) + (i32.const 4) + ) + ) + (func (export "as-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 2) (br_if 0 (i32.const 1) (get_local 0)))) + (i32.const 4) + ) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-br_table-index") + (block (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)))) + ;) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br_if 0 (i32.const 1) (i32.const 2)) (i32.const 3)) (i32.const 4) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 2) (br_if 0 (i32.const 1) (i32.const 3))) (i32.const 4) + ) + ) + (func (export "as-return-value") (result i64) + (block (result i64) (return (br_if 0 (i64.const 1) (i32.const 2)))) + ) + + (func (export "as-if-cond") (param i32) (result i32) + (block (result i32) + (if (result i32) + (br_if 0 (i32.const 1) (get_local 0)) + (then (i32.const 2)) + (else (i32.const 3)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) + (block + (if (get_local 0) (then (br_if 1 (get_local 1))) (else (call $dummy))) + ) + ) + (func (export "as-if-else") (param i32 i32) + (block + (if (get_local 0) (then (call $dummy)) (else (br_if 1 (get_local 1)))) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (block (result i32) + (select (br_if 0 (i32.const 3) (i32.const 10)) (i32.const 2) (get_local 0)) + ) + ) + (func (export "as-select-second") (param i32) (result i32) + (block (result i32) + (select (i32.const 1) (br_if 0 (i32.const 3) (i32.const 10)) (get_local 0)) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select (i32.const 1) (i32.const 2) (br_if 0 (i32.const 3) (i32.const 10))) + ) + ) + + (func $f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $f + (br_if 0 (i32.const 12) (i32.const 1)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $f + (i32.const 1) (br_if 0 (i32.const 13) (i32.const 1)) (i32.const 3) + ) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $f + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 14) (i32.const 1)) + ) + ) + ) + + (func $func (param i32 i32 i32) (result i32) (get_local 0)) + (type $check (func (param i32 i32 i32) (result i32))) + (table anyfunc (elem $func)) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $check) + (br_if 0 (i32.const 4) (i32.const 10)) + (i32.const 1) (i32.const 2) (i32.const 0) + ) + ) + ) + + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $check) + (i32.const 1) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $check) + (i32.const 1) (i32.const 2) (br_if 0 (i32.const 4) (i32.const 10)) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $check) + (i32.const 1) (i32.const 2) (i32.const 3) (br_if 0 (i32.const 4) (i32.const 10)) + ) + ) + ) + + (func (export "as-set_local-value") (param i32) (result i32) + (local i32) + (block (result i32) + (set_local 0 (br_if 0 (i32.const 17) (get_local 0))) + (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f64) + (block (result f64) (f64.neg (br_if 0 (f64.const 1.0) (i32.const 1)))) + ) + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (br_if 0 (i32.const 1) (i32.const 1)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i32) + (block (result i32) (i32.sub (i32.const 10) (br_if 0 (i32.const 1) (i32.const 1)))) + ) + + (memory 0) + (func (export "as-memory.grow-size") (result i32) + (block (result i32) (memory.grow (br_if 0 (i32.const 1) (i32.const 1)))) + ) + + (func (export "nested-block-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (i32.add + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (get_local 0))) + (i32.const 16) + ) + ) + ) + ) + ) + + (func (export "nested-br-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (get_local 0))) (i32.const 4) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (get_local 0))) (i32.const 4) + ) + (i32.const 1) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (get_local 0))) (i32.const 1) + ) + )) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (block (result i32) + (drop (br_if 1 (i32.const 8) (get_local 0))) (i32.const 4) + ) + (i32.const 1) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value-index") (param i32) (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 + (i32.const 4) + (block (result i32) + (drop (br_if 1 (i32.const 8) (get_local 0))) (i32.const 1) + ) + ) + (i32.const 16) + ) + ) + ) + +) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "type-i32")) +;; (assert_return (invoke "type-i64")) +;; (assert_return (invoke "type-f32")) +;; (assert_return (invoke "type-f64")) + +(assert_return (invoke "type-i32-value") (i32.const 1)) +(assert_return (invoke "type-i64-value") (i64.const 2)) +(assert_return (invoke "type-f32-value") (f32.const 3)) +(assert_return (invoke "type-f64-value") (f64.const 4)) + +(assert_return (invoke "as-block-first" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-block-first" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "as-block-mid" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-block-mid" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "as-block-last" (i32.const 0))) +(assert_return (invoke "as-block-last" (i32.const 1))) + +(assert_return (invoke "as-block-first-value" (i32.const 0)) (i32.const 11)) +(assert_return (invoke "as-block-first-value" (i32.const 1)) (i32.const 10)) +(assert_return (invoke "as-block-mid-value" (i32.const 0)) (i32.const 21)) +(assert_return (invoke "as-block-mid-value" (i32.const 1)) (i32.const 20)) +(assert_return (invoke "as-block-last-value" (i32.const 0)) (i32.const 11)) +(assert_return (invoke "as-block-last-value" (i32.const 1)) (i32.const 11)) + +(assert_return (invoke "as-loop-first" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-loop-first" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "as-loop-mid" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-loop-mid" (i32.const 1)) (i32.const 4)) +(assert_return (invoke "as-loop-last" (i32.const 0))) +(assert_return (invoke "as-loop-last" (i32.const 1))) + +(assert_return (invoke "as-br-value") (i32.const 1)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-br_if-cond")) +(assert_return (invoke "as-br_if-value") (i32.const 1)) +(assert_return (invoke "as-br_if-value-cond" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-br_if-value-cond" (i32.const 1)) (i32.const 1)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-br_table-index")) +(assert_return (invoke "as-br_table-value") (i32.const 1)) +(assert_return (invoke "as-br_table-value-index") (i32.const 1)) + +(assert_return (invoke "as-return-value") (i64.const 1)) + +(assert_return (invoke "as-if-cond" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-if-cond" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "as-if-then" (i32.const 0) (i32.const 0))) +(assert_return (invoke "as-if-then" (i32.const 4) (i32.const 0))) +(assert_return (invoke "as-if-then" (i32.const 0) (i32.const 1))) +(assert_return (invoke "as-if-then" (i32.const 4) (i32.const 1))) +(assert_return (invoke "as-if-else" (i32.const 0) (i32.const 0))) +(assert_return (invoke "as-if-else" (i32.const 3) (i32.const 0))) +(assert_return (invoke "as-if-else" (i32.const 0) (i32.const 1))) +(assert_return (invoke "as-if-else" (i32.const 3) (i32.const 1))) + +(assert_return (invoke "as-select-first" (i32.const 0)) (i32.const 3)) +(assert_return (invoke "as-select-first" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "as-select-second" (i32.const 0)) (i32.const 3)) +(assert_return (invoke "as-select-second" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "as-select-cond") (i32.const 3)) + +(assert_return (invoke "as-call-first") (i32.const 12)) +(assert_return (invoke "as-call-mid") (i32.const 13)) +(assert_return (invoke "as-call-last") (i32.const 14)) + +(assert_return (invoke "as-call_indirect-func") (i32.const 4)) +(assert_return (invoke "as-call_indirect-first") (i32.const 4)) +(assert_return (invoke "as-call_indirect-mid") (i32.const 4)) +(assert_return (invoke "as-call_indirect-last") (i32.const 4)) + +(assert_return (invoke "as-set_local-value" (i32.const 0)) (i32.const -1)) +(assert_return (invoke "as-set_local-value" (i32.const 1)) (i32.const 17)) + +(assert_return (invoke "as-unary-operand") (f64.const 1.0)) +(assert_return (invoke "as-binary-left") (i32.const 1)) +(assert_return (invoke "as-binary-right") (i32.const 1)) +(assert_return (invoke "as-memory.grow-size") (i32.const 1)) + +(assert_return (invoke "nested-block-value" (i32.const 0)) (i32.const 21)) +(assert_return (invoke "nested-block-value" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br-value" (i32.const 0)) (i32.const 5)) +(assert_return (invoke "nested-br-value" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br_if-value" (i32.const 0)) (i32.const 5)) +(assert_return (invoke "nested-br_if-value" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br_if-value-cond" (i32.const 0)) (i32.const 5)) +(assert_return (invoke "nested-br_if-value-cond" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br_table-value" (i32.const 0)) (i32.const 5)) +(assert_return (invoke "nested-br_table-value" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br_table-value-index" (i32.const 0)) (i32.const 5)) +(assert_return (invoke "nested-br_table-value-index" (i32.const 1)) (i32.const 9)) + +(assert_invalid + (module (func $type-false-i32 (block (i32.ctz (br_if 0 (i32.const 0)))))) + "type mismatch" +) +(assert_invalid + (module (func $type-false-i64 (block (i64.ctz (br_if 0 (i32.const 0)))))) + "type mismatch" +) +(assert_invalid + (module (func $type-false-f32 (block (f32.neg (br_if 0 (i32.const 0)))))) + "type mismatch" +) +(assert_invalid + (module (func $type-false-f64 (block (f64.neg (br_if 0 (i32.const 0)))))) + "type mismatch" +) + +(assert_invalid + (module (func $type-true-i32 (block (i32.ctz (br_if 0 (i32.const 1)))))) + "type mismatch" +) +(assert_invalid + (module (func $type-true-i64 (block (i64.ctz (br_if 0 (i64.const 1)))))) + "type mismatch" +) +(assert_invalid + (module (func $type-true-f32 (block (f32.neg (br_if 0 (f32.const 1)))))) + "type mismatch" +) +(assert_invalid + (module (func $type-true-f64 (block (f64.neg (br_if 0 (i64.const 1)))))) + "type mismatch" +) + +(assert_invalid + (module (func $type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 0)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (i32.const 1)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-false-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-true-arg-num-vs-void + (block (br_if 0 (i32.const 0) (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-false-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 0)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-true-arg-void-vs-num (result i32) + (block (result i32) (br_if 0 (nop) (i32.const 1)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-false-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-true-arg-num-vs-num (result i32) + (block (result i32) + (drop (br_if 0 (i64.const 1) (i32.const 0))) (i32.const 1) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-cond-void-vs-i32 + (block (br_if 0 (nop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-cond-num-vs-i32 + (block (br_if 0 (i64.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-cond-void-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (nop)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br_if 1 (i32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-cond-num-vs-i32 (result i32) + (block (result i32) (br_if 0 (i32.const 0) (i64.const 0)) (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $unbound-label (br_if 1 (i32.const 1)))) + "unknown label" +) +(assert_invalid + (module (func $unbound-nested-label (block (block (br_if 5 (i32.const 1)))))) + "unknown label" +) +(assert_invalid + (module (func $large-label (br_if 0x10000001 (i32.const 1)))) + "unknown label" +) + diff --git a/test/spec/br_table.wast b/test/spec/br_table.wast new file mode 100644 index 00000000000..7dc787b6b49 --- /dev/null +++ b/test/spec/br_table.wast @@ -0,0 +1,1515 @@ +;; Test `br_table` operator + +(module + ;; Auxiliary definition + (func $dummy) + + (func (export "type-i32") + (block (drop (i32.ctz (br_table 0 0 (i32.const 0))))) + ) + (func (export "type-i64") + (block (drop (i64.ctz (br_table 0 0 (i32.const 0))))) + ) + (func (export "type-f32") + (block (drop (f32.neg (br_table 0 0 (i32.const 0))))) + ) + (func (export "type-f64") + (block (drop (f64.neg (br_table 0 0 (i32.const 0))))) + ) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br_table 0 0 (i32.const 1) (i32.const 0)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br_table 0 0 (i64.const 2) (i32.const 0)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br_table 0 0 (f32.const 3) (i32.const 0)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br_table 0 0 (f64.const 4) (i32.const 0)))) + ) + + (func (export "empty") (param i32) (result i32) + (block (br_table 0 (get_local 0)) (return (i32.const 21))) + (i32.const 22) + ) + (func (export "empty-value") (param i32) (result i32) + (block (result i32) + (br_table 0 (i32.const 33) (get_local 0)) (i32.const 31) + ) + ) + + (func (export "singleton") (param i32) (result i32) + (block + (block + (br_table 1 0 (get_local 0)) + (return (i32.const 21)) + ) + (return (i32.const 20)) + ) + (i32.const 22) + ) + + (func (export "singleton-value") (param i32) (result i32) + (block (result i32) + (drop + (block (result i32) + (br_table 0 1 (i32.const 33) (get_local 0)) + (return (i32.const 31)) + ) + ) + (i32.const 32) + ) + ) + + (func (export "multiple") (param i32) (result i32) + (block + (block + (block + (block + (block + (br_table 3 2 1 0 4 (get_local 0)) + (return (i32.const 99)) + ) + (return (i32.const 100)) + ) + (return (i32.const 101)) + ) + (return (i32.const 102)) + ) + (return (i32.const 103)) + ) + (i32.const 104) + ) + + (func (export "multiple-value") (param i32) (result i32) + (local i32) + (set_local 1 (block (result i32) + (set_local 1 (block (result i32) + (set_local 1 (block (result i32) + (set_local 1 (block (result i32) + (set_local 1 (block (result i32) + (br_table 3 2 1 0 4 (i32.const 200) (get_local 0)) + (return (i32.add (get_local 1) (i32.const 99))) + )) + (return (i32.add (get_local 1) (i32.const 10))) + )) + (return (i32.add (get_local 1) (i32.const 11))) + )) + (return (i32.add (get_local 1) (i32.const 12))) + )) + (return (i32.add (get_local 1) (i32.const 13))) + )) + (i32.add (get_local 1) (i32.const 14)) + ) + + (func (export "large") (param i32) (result i32) + (block + (block + (br_table + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 + (get_local 0) + ) + (return (i32.const -1)) + ) + (return (i32.const 0)) + ) + (return (i32.const 1)) + ) + + (func (export "as-block-first") + (block (br_table 0 0 0 (i32.const 0)) (call $dummy)) + ) + (func (export "as-block-mid") + (block (call $dummy) (br_table 0 0 0 (i32.const 0)) (call $dummy)) + ) + (func (export "as-block-last") + (block (nop) (call $dummy) (br_table 0 0 0 (i32.const 0))) + ) + (func (export "as-block-value") (result i32) + (block (result i32) + (nop) (call $dummy) (br_table 0 0 0 (i32.const 2) (i32.const 0)) + ) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (br_table 1 1 (i32.const 3) (i32.const 0)) (i32.const 1)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) + (call $dummy) + (br_table 1 1 1 (i32.const 4) (i32.const -1)) + (i32.const 2) + ) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) + (nop) (call $dummy) (br_table 1 1 1 (i32.const 5) (i32.const 1)) + ) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br_table 0 (i32.const 9) (i32.const 0)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (br_table 0 0 0 (i32.const 1)))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br_table 0 (i32.const 8) (i32.const 0)) (i32.const 1))) + (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (br_table 0 0 (i32.const 9) (i32.const 0)))) + (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (br_table 0 (i32.const 1)))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br_table 0 (i32.const 10) (i32.const 0)) (i32.const 1)) + (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (br_table 0 (i32.const 11) (i32.const 1))) + (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i64) + (block (result i64) (return (br_table 0 (i64.const 7) (i32.const 0)))) + ) + + (func (export "as-if-cond") (result i32) + (block (result i32) + (if (result i32) + (br_table 0 (i32.const 2) (i32.const 0)) + (then (i32.const 0)) + (else (i32.const 1)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) + (get_local 0) + (then (br_table 1 (i32.const 3) (i32.const 0))) + (else (get_local 1)) + ) + ) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) + (get_local 0) + (then (get_local 1)) + (else (br_table 1 0 (i32.const 4) (i32.const 0))) + ) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (block (result i32) + (select + (br_table 0 (i32.const 5) (i32.const 0)) (get_local 0) (get_local 1) + ) + ) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (block (result i32) + (select + (get_local 0) (br_table 0 (i32.const 6) (i32.const 1)) (get_local 1) + ) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select + (i32.const 0) (i32.const 1) (br_table 0 (i32.const 7) (i32.const 1)) + ) + ) + ) + + (func $f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $f + (br_table 0 (i32.const 12) (i32.const 1)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $f + (i32.const 1) (br_table 0 (i32.const 13) (i32.const 1)) (i32.const 3) + ) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $f + (i32.const 1) (i32.const 2) (br_table 0 (i32.const 14) (i32.const 1)) + ) + ) + ) + + (type $sig (func (param i32 i32 i32) (result i32))) + (table anyfunc (elem $f)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $sig) + (br_table 0 (i32.const 20) (i32.const 1)) (i32.const 1) (i32.const 2) + (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) (br_table 0 (i32.const 21) (i32.const 1)) (i32.const 2) + (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) (i32.const 1) (br_table 0 (i32.const 22) (i32.const 1)) + (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) (i32.const 1) (i32.const 2) + (br_table 0 (i32.const 23) (i32.const 1)) + ) + ) + ) + + (func (export "as-set_local-value") (result i32) + (local f32) + (block (result i32) + (set_local 0 (br_table 0 (i32.const 17) (i32.const 1))) + (i32.const -1) + ) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (block (result f32) (f32.load (br_table 0 (f32.const 1.7) (i32.const 1)))) + ) + (func (export "as-loadN-address") (result i64) + (block (result i64) (i64.load8_s (br_table 0 (i64.const 30) (i32.const 1)))) + ) + + (func (export "as-store-address") (result i32) + (block (result i32) + (f64.store (br_table 0 (i32.const 30) (i32.const 1)) (f64.const 7)) + (i32.const -1) + ) + ) + (func (export "as-store-value") (result i32) + (block (result i32) + (i64.store (i32.const 2) (br_table 0 (i32.const 31) (i32.const 1))) + (i32.const -1) + ) + ) + + (func (export "as-storeN-address") (result i32) + (block (result i32) + (i32.store8 (br_table 0 (i32.const 32) (i32.const 0)) (i32.const 7)) + (i32.const -1) + ) + ) + (func (export "as-storeN-value") (result i32) + (block (result i32) + (i64.store16 (i32.const 2) (br_table 0 (i32.const 33) (i32.const 0))) + (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f32) + (block (result f32) (f32.neg (br_table 0 (f32.const 3.4) (i32.const 0)))) + ) + + (func (export "as-binary-left") (result i32) + (block (result i32) + (i32.add (br_table 0 0 (i32.const 3) (i32.const 0)) (i32.const 10)) + ) + ) + (func (export "as-binary-right") (result i64) + (block (result i64) + (i64.sub (i64.const 10) (br_table 0 (i64.const 45) (i32.const 0))) + ) + ) + + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (br_table 0 (i32.const 44) (i32.const 0)))) + ) + + (func (export "as-compare-left") (result i32) + (block (result i32) + (f64.le (br_table 0 0 (i32.const 43) (i32.const 0)) (f64.const 10)) + ) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) + (f32.ne (f32.const 10) (br_table 0 (i32.const 42) (i32.const 0))) + ) + ) + + (func (export "as-convert-operand") (result i32) + (block (result i32) + (i32.wrap/i64 (br_table 0 (i32.const 41) (i32.const 0))) + ) + ) + + (func (export "as-memory.grow-size") (result i32) + (block (result i32) (memory.grow (br_table 0 (i32.const 40) (i32.const 0)))) + ) + + (func (export "nested-block-value") (param i32) (result i32) + (block (result i32) + (drop (i32.const -1)) + (i32.add + (i32.const 1) + (block (result i32) + (i32.add + (i32.const 2) + (block (result i32) + (drop (i32.const 4)) + (i32.add + (i32.const 8) + (br_table 0 1 2 (i32.const 16) (get_local 0)) + ) + ) + ) + ) + ) + ) + ) + + (func (export "nested-br-value") (param i32) (result i32) + (block (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br 0 (br_table 2 1 0 (i32.const 8) (get_local 0))) + ) + ) + (i32.const 16) + ) + ) + ) + ) + + (func (export "nested-br_if-value") (param i32) (result i32) + (block (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (drop + (br_if 0 + (br_table 0 1 2 (i32.const 8) (get_local 0)) + (i32.const 1) + ) + ) + (i32.const 32) + ) + ) + (i32.const 16) + ) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (param i32) (result i32) + (block (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (br_if 0 (i32.const 4) (br_table 0 1 0 (i32.const 8) (get_local 0))) + ) + (i32.const 16) + ) + ) + ) + ) + + (func (export "nested-br_table-value") (param i32) (result i32) + (block (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br_table 0 (br_table 0 1 2 (i32.const 8) (get_local 0)) (i32.const 1)) + (i32.const 32) + ) + ) + (i32.const 16) + ) + ) + ) + ) + + (func (export "nested-br_table-value-index") (param i32) (result i32) + (block (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 (i32.const 4) (br_table 0 1 0 (i32.const 8) (get_local 0))) + (i32.const 16) + ) + ) + ) + ) + + (func (export "nested-br_table-loop-block") (param i32) (result i32) + (set_local 0 + (loop (result i32) + (block + (br_table 1 0 0 (get_local 0)) + ) + (i32.const 0) + ) + ) + (loop (result i32) + (block + (br_table 0 1 1 (get_local 0)) + ) + (i32.const 3) + ) + ) +) + +(assert_return (invoke "type-i32")) +(assert_return (invoke "type-i64")) +(assert_return (invoke "type-f32")) +(assert_return (invoke "type-f64")) + +(assert_return (invoke "type-i32-value") (i32.const 1)) +(assert_return (invoke "type-i64-value") (i64.const 2)) +(assert_return (invoke "type-f32-value") (f32.const 3)) +(assert_return (invoke "type-f64-value") (f64.const 4)) + +(assert_return (invoke "empty" (i32.const 0)) (i32.const 22)) +(assert_return (invoke "empty" (i32.const 1)) (i32.const 22)) +(assert_return (invoke "empty" (i32.const 11)) (i32.const 22)) +(assert_return (invoke "empty" (i32.const -1)) (i32.const 22)) +(assert_return (invoke "empty" (i32.const -100)) (i32.const 22)) +(assert_return (invoke "empty" (i32.const 0xffffffff)) (i32.const 22)) + +(assert_return (invoke "empty-value" (i32.const 0)) (i32.const 33)) +(assert_return (invoke "empty-value" (i32.const 1)) (i32.const 33)) +(assert_return (invoke "empty-value" (i32.const 11)) (i32.const 33)) +(assert_return (invoke "empty-value" (i32.const -1)) (i32.const 33)) +(assert_return (invoke "empty-value" (i32.const -100)) (i32.const 33)) +(assert_return (invoke "empty-value" (i32.const 0xffffffff)) (i32.const 33)) + +(assert_return (invoke "singleton" (i32.const 0)) (i32.const 22)) +(assert_return (invoke "singleton" (i32.const 1)) (i32.const 20)) +(assert_return (invoke "singleton" (i32.const 11)) (i32.const 20)) +(assert_return (invoke "singleton" (i32.const -1)) (i32.const 20)) +(assert_return (invoke "singleton" (i32.const -100)) (i32.const 20)) +(assert_return (invoke "singleton" (i32.const 0xffffffff)) (i32.const 20)) + +(assert_return (invoke "singleton-value" (i32.const 0)) (i32.const 32)) +(assert_return (invoke "singleton-value" (i32.const 1)) (i32.const 33)) +(assert_return (invoke "singleton-value" (i32.const 11)) (i32.const 33)) +(assert_return (invoke "singleton-value" (i32.const -1)) (i32.const 33)) +(assert_return (invoke "singleton-value" (i32.const -100)) (i32.const 33)) +(assert_return (invoke "singleton-value" (i32.const 0xffffffff)) (i32.const 33)) + +(assert_return (invoke "multiple" (i32.const 0)) (i32.const 103)) +(assert_return (invoke "multiple" (i32.const 1)) (i32.const 102)) +(assert_return (invoke "multiple" (i32.const 2)) (i32.const 101)) +(assert_return (invoke "multiple" (i32.const 3)) (i32.const 100)) +(assert_return (invoke "multiple" (i32.const 4)) (i32.const 104)) +(assert_return (invoke "multiple" (i32.const 5)) (i32.const 104)) +(assert_return (invoke "multiple" (i32.const 6)) (i32.const 104)) +(assert_return (invoke "multiple" (i32.const 10)) (i32.const 104)) +(assert_return (invoke "multiple" (i32.const -1)) (i32.const 104)) +(assert_return (invoke "multiple" (i32.const 0xffffffff)) (i32.const 104)) + +(assert_return (invoke "multiple-value" (i32.const 0)) (i32.const 213)) +(assert_return (invoke "multiple-value" (i32.const 1)) (i32.const 212)) +(assert_return (invoke "multiple-value" (i32.const 2)) (i32.const 211)) +(assert_return (invoke "multiple-value" (i32.const 3)) (i32.const 210)) +(assert_return (invoke "multiple-value" (i32.const 4)) (i32.const 214)) +(assert_return (invoke "multiple-value" (i32.const 5)) (i32.const 214)) +(assert_return (invoke "multiple-value" (i32.const 6)) (i32.const 214)) +(assert_return (invoke "multiple-value" (i32.const 10)) (i32.const 214)) +(assert_return (invoke "multiple-value" (i32.const -1)) (i32.const 214)) +(assert_return (invoke "multiple-value" (i32.const 0xffffffff)) (i32.const 214)) + +(assert_return (invoke "large" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "large" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "large" (i32.const 100)) (i32.const 0)) +(assert_return (invoke "large" (i32.const 101)) (i32.const 1)) +(assert_return (invoke "large" (i32.const 10000)) (i32.const 0)) +(assert_return (invoke "large" (i32.const 10001)) (i32.const 1)) +(assert_return (invoke "large" (i32.const 1000000)) (i32.const 1)) +(assert_return (invoke "large" (i32.const 1000001)) (i32.const 1)) + +(assert_return (invoke "as-block-first")) +(assert_return (invoke "as-block-mid")) +(assert_return (invoke "as-block-last")) +(assert_return (invoke "as-block-value") (i32.const 2)) + +(assert_return (invoke "as-loop-first") (i32.const 3)) +(assert_return (invoke "as-loop-mid") (i32.const 4)) +(assert_return (invoke "as-loop-last") (i32.const 5)) + +(assert_return (invoke "as-br-value") (i32.const 9)) + +(assert_return (invoke "as-br_if-cond")) +(assert_return (invoke "as-br_if-value") (i32.const 8)) +(assert_return (invoke "as-br_if-value-cond") (i32.const 9)) + +(assert_return (invoke "as-br_table-index")) +(assert_return (invoke "as-br_table-value") (i32.const 10)) +(assert_return (invoke "as-br_table-value-index") (i32.const 11)) + +(assert_return (invoke "as-return-value") (i64.const 7)) + +(assert_return (invoke "as-if-cond") (i32.const 2)) +(assert_return (invoke "as-if-then" (i32.const 1) (i32.const 6)) (i32.const 3)) +(assert_return (invoke "as-if-then" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-if-else" (i32.const 0) (i32.const 6)) (i32.const 4)) +(assert_return (invoke "as-if-else" (i32.const 1) (i32.const 6)) (i32.const 6)) + +(assert_return (invoke "as-select-first" (i32.const 0) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-first" (i32.const 1) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-second" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-second" (i32.const 1) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-cond") (i32.const 7)) + +(assert_return (invoke "as-call-first") (i32.const 12)) +(assert_return (invoke "as-call-mid") (i32.const 13)) +(assert_return (invoke "as-call-last") (i32.const 14)) + +(assert_return (invoke "as-call_indirect-first") (i32.const 20)) +(assert_return (invoke "as-call_indirect-mid") (i32.const 21)) +(assert_return (invoke "as-call_indirect-last") (i32.const 22)) +(assert_return (invoke "as-call_indirect-func") (i32.const 23)) + +(assert_return (invoke "as-set_local-value") (i32.const 17)) + +(assert_return (invoke "as-load-address") (f32.const 1.7)) +(assert_return (invoke "as-loadN-address") (i64.const 30)) + +(assert_return (invoke "as-store-address") (i32.const 30)) +(assert_return (invoke "as-store-value") (i32.const 31)) +(assert_return (invoke "as-storeN-address") (i32.const 32)) +(assert_return (invoke "as-storeN-value") (i32.const 33)) + +(assert_return (invoke "as-unary-operand") (f32.const 3.4)) + +(assert_return (invoke "as-binary-left") (i32.const 3)) +(assert_return (invoke "as-binary-right") (i64.const 45)) + +(assert_return (invoke "as-test-operand") (i32.const 44)) + +(assert_return (invoke "as-compare-left") (i32.const 43)) +(assert_return (invoke "as-compare-right") (i32.const 42)) + +(assert_return (invoke "as-convert-operand") (i32.const 41)) + +(assert_return (invoke "as-memory.grow-size") (i32.const 40)) + +(assert_return (invoke "nested-block-value" (i32.const 0)) (i32.const 19)) +(assert_return (invoke "nested-block-value" (i32.const 1)) (i32.const 17)) +(assert_return (invoke "nested-block-value" (i32.const 2)) (i32.const 16)) +(assert_return (invoke "nested-block-value" (i32.const 10)) (i32.const 16)) +(assert_return (invoke "nested-block-value" (i32.const -1)) (i32.const 16)) +(assert_return (invoke "nested-block-value" (i32.const 100000)) (i32.const 16)) + +(assert_return (invoke "nested-br-value" (i32.const 0)) (i32.const 8)) +(assert_return (invoke "nested-br-value" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br-value" (i32.const 2)) (i32.const 17)) +(assert_return (invoke "nested-br-value" (i32.const 11)) (i32.const 17)) +(assert_return (invoke "nested-br-value" (i32.const -4)) (i32.const 17)) +(assert_return (invoke "nested-br-value" (i32.const 10213210)) (i32.const 17)) + +(assert_return (invoke "nested-br_if-value" (i32.const 0)) (i32.const 17)) +(assert_return (invoke "nested-br_if-value" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br_if-value" (i32.const 2)) (i32.const 8)) +(assert_return (invoke "nested-br_if-value" (i32.const 9)) (i32.const 8)) +(assert_return (invoke "nested-br_if-value" (i32.const -9)) (i32.const 8)) +(assert_return (invoke "nested-br_if-value" (i32.const 999999)) (i32.const 8)) + +(assert_return (invoke "nested-br_if-value-cond" (i32.const 0)) (i32.const 9)) +(assert_return (invoke "nested-br_if-value-cond" (i32.const 1)) (i32.const 8)) +(assert_return (invoke "nested-br_if-value-cond" (i32.const 2)) (i32.const 9)) +(assert_return (invoke "nested-br_if-value-cond" (i32.const 3)) (i32.const 9)) +(assert_return (invoke "nested-br_if-value-cond" (i32.const -1000000)) (i32.const 9)) +(assert_return (invoke "nested-br_if-value-cond" (i32.const 9423975)) (i32.const 9)) + +(assert_return (invoke "nested-br_table-value" (i32.const 0)) (i32.const 17)) +(assert_return (invoke "nested-br_table-value" (i32.const 1)) (i32.const 9)) +(assert_return (invoke "nested-br_table-value" (i32.const 2)) (i32.const 8)) +(assert_return (invoke "nested-br_table-value" (i32.const 9)) (i32.const 8)) +(assert_return (invoke "nested-br_table-value" (i32.const -9)) (i32.const 8)) +(assert_return (invoke "nested-br_table-value" (i32.const 999999)) (i32.const 8)) + +(assert_return (invoke "nested-br_table-value-index" (i32.const 0)) (i32.const 9)) +(assert_return (invoke "nested-br_table-value-index" (i32.const 1)) (i32.const 8)) +(assert_return (invoke "nested-br_table-value-index" (i32.const 2)) (i32.const 9)) +(assert_return (invoke "nested-br_table-value-index" (i32.const 3)) (i32.const 9)) +(assert_return (invoke "nested-br_table-value-index" (i32.const -1000000)) (i32.const 9)) +(assert_return (invoke "nested-br_table-value-index" (i32.const 9423975)) (i32.const 9)) + +(assert_return (invoke "nested-br_table-loop-block" (i32.const 1)) (i32.const 3)) + +(assert_invalid + (module (func $type-arg-void-vs-num (result i32) + (block (br_table 0 (i32.const 1)) (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-arg-void-vs-num (result i32) + (block (result i32) (br_table 0 (nop) (i32.const 1)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-num-vs-num (result i32) + (block (result i32) + (br_table 0 0 0 (i64.const 1) (i32.const 1)) (i32.const 1) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-num-vs-arg-num + (block + (block (result f32) + (br_table 0 1 (f32.const 0) (i32.const 0)) + ) + (drop) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-index-void-vs-i32 + (block (br_table 0 0 0 (nop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-index-num-vs-i32 + (block (br_table 0 (i64.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-index-void-vs-i32 (result i32) + (block (result i32) (br_table 0 0 (i32.const 0) (nop)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br_table 1 (i32.const 0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-index-num-vs-i32 (result i32) + (block (result i32) + (br_table 0 0 (i32.const 0) (i64.const 0)) (i32.const 1) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $unbound-label + (block (br_table 2 1 (i32.const 1))) + )) + "unknown label" +) +(assert_invalid + (module (func $unbound-nested-label + (block (block (br_table 0 5 (i32.const 1)))) + )) + "unknown label" +) +(assert_invalid + (module (func $large-label + (block (br_table 0 0x10000001 0 (i32.const 1))) + )) + "unknown label" +) + +(assert_invalid + (module (func $unbound-label-default + (block (br_table 1 2 (i32.const 1))) + )) + "unknown label" +) +(assert_invalid + (module (func $unbound-nested-label-default + (block (block (br_table 0 5 (i32.const 1)))) + )) + "unknown label" +) +(assert_invalid + (module (func $large-label-default + (block (br_table 0 0 0x10000001 (i32.const 1))) + )) + "unknown label" +) + diff --git a/test/spec/break-drop.wast b/test/spec/break-drop.wast new file mode 100644 index 00000000000..e10df667154 --- /dev/null +++ b/test/spec/break-drop.wast @@ -0,0 +1,9 @@ +(module + (func (export "br") (block (br 0))) + (func (export "br_if") (block (br_if 0 (i32.const 1)))) + (func (export "br_table") (block (br_table 0 (i32.const 0)))) +) + +(assert_return (invoke "br")) +(assert_return (invoke "br_if")) +(assert_return (invoke "br_table")) diff --git a/test/spec/call.wast b/test/spec/call.wast new file mode 100644 index 00000000000..3a89f23233f --- /dev/null +++ b/test/spec/call.wast @@ -0,0 +1,242 @@ +;; Test `call` operator + +(module + ;; Auxiliary definitions + (func $const-i32 (result i32) (i32.const 0x132)) + (func $const-i64 (result i64) (i64.const 0x164)) + (func $const-f32 (result f32) (f32.const 0xf32)) + (func $const-f64 (result f64) (f64.const 0xf64)) + + (func $id-i32 (param i32) (result i32) (get_local 0)) + (func $id-i64 (param i64) (result i64) (get_local 0)) + (func $id-f32 (param f32) (result f32) (get_local 0)) + (func $id-f64 (param f64) (result f64) (get_local 0)) + + (func $f32-i32 (param f32 i32) (result i32) (get_local 1)) + (func $i32-i64 (param i32 i64) (result i64) (get_local 1)) + (func $f64-f32 (param f64 f32) (result f32) (get_local 1)) + (func $i64-f64 (param i64 f64) (result f64) (get_local 1)) + + ;; Typing + + (func (export "type-i32") (result i32) (call $const-i32)) + (func (export "type-i64") (result i64) (call $const-i64)) + (func (export "type-f32") (result f32) (call $const-f32)) + (func (export "type-f64") (result f64) (call $const-f64)) + + (func (export "type-first-i32") (result i32) (call $id-i32 (i32.const 32))) + (func (export "type-first-i64") (result i64) (call $id-i64 (i64.const 64))) + (func (export "type-first-f32") (result f32) (call $id-f32 (f32.const 1.32))) + (func (export "type-first-f64") (result f64) (call $id-f64 (f64.const 1.64))) + + (func (export "type-second-i32") (result i32) + (call $f32-i32 (f32.const 32.1) (i32.const 32)) + ) + (func (export "type-second-i64") (result i64) + (call $i32-i64 (i32.const 32) (i64.const 64)) + ) + (func (export "type-second-f32") (result f32) + (call $f64-f32 (f64.const 64) (f32.const 32)) + ) + (func (export "type-second-f64") (result f64) + (call $i64-f64 (i64.const 64) (f64.const 64.1)) + ) + + ;; Recursion + + (func $fac (export "fac") (param i64) (result i64) + (if (result i64) (i64.eqz (get_local 0)) + (then (i64.const 1)) + (else + (i64.mul + (get_local 0) + (call $fac (i64.sub (get_local 0) (i64.const 1))) + ) + ) + ) + ) + + (func $fac-acc (export "fac-acc") (param i64 i64) (result i64) + (if (result i64) (i64.eqz (get_local 0)) + (then (get_local 1)) + (else + (call $fac-acc + (i64.sub (get_local 0) (i64.const 1)) + (i64.mul (get_local 0) (get_local 1)) + ) + ) + ) + ) + + (func $fib (export "fib") (param i64) (result i64) + (if (result i64) (i64.le_u (get_local 0) (i64.const 1)) + (then (i64.const 1)) + (else + (i64.add + (call $fib (i64.sub (get_local 0) (i64.const 2))) + (call $fib (i64.sub (get_local 0) (i64.const 1))) + ) + ) + ) + ) + + (func $even (export "even") (param i64) (result i32) + (if (result i32) (i64.eqz (get_local 0)) + (then (i32.const 44)) + (else (call $odd (i64.sub (get_local 0) (i64.const 1)))) + ) + ) + (func $odd (export "odd") (param i64) (result i32) + (if (result i32) (i64.eqz (get_local 0)) + (then (i32.const 99)) + (else (call $even (i64.sub (get_local 0) (i64.const 1)))) + ) + ) + + ;; Stack exhaustion + + ;; Implementations are required to have every call consume some abstract + ;; resource towards exhausting some abstract finite limit, such that + ;; infinitely recursive test cases reliably trap in finite time. This is + ;; because otherwise applications could come to depend on it on those + ;; implementations and be incompatible with implementations that don't do + ;; it (or don't do it under the same circumstances). + + (func $runaway (export "runaway") (call $runaway)) + + (func $mutual-runaway1 (export "mutual-runaway") (call $mutual-runaway2)) + (func $mutual-runaway2 (call $mutual-runaway1)) +) + +(assert_return (invoke "type-i32") (i32.const 0x132)) +(assert_return (invoke "type-i64") (i64.const 0x164)) +(assert_return (invoke "type-f32") (f32.const 0xf32)) +(assert_return (invoke "type-f64") (f64.const 0xf64)) + +(assert_return (invoke "type-first-i32") (i32.const 32)) +(assert_return (invoke "type-first-i64") (i64.const 64)) +(assert_return (invoke "type-first-f32") (f32.const 1.32)) +(assert_return (invoke "type-first-f64") (f64.const 1.64)) + +(assert_return (invoke "type-second-i32") (i32.const 32)) +(assert_return (invoke "type-second-i64") (i64.const 64)) +(assert_return (invoke "type-second-f32") (f32.const 32)) +(assert_return (invoke "type-second-f64") (f64.const 64.1)) + +(assert_return (invoke "fac" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 5)) (i64.const 120)) +(assert_return (invoke "fac" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-acc" (i64.const 0) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac-acc" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac-acc" (i64.const 5) (i64.const 1)) (i64.const 120)) +(assert_return + (invoke "fac-acc" (i64.const 25) (i64.const 1)) + (i64.const 7034535277573963776) +) + +(assert_return (invoke "fib" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 2)) (i64.const 2)) +(assert_return (invoke "fib" (i64.const 5)) (i64.const 8)) +(assert_return (invoke "fib" (i64.const 20)) (i64.const 10946)) + +(assert_return (invoke "even" (i64.const 0)) (i32.const 44)) +(assert_return (invoke "even" (i64.const 1)) (i32.const 99)) +(assert_return (invoke "even" (i64.const 100)) (i32.const 44)) +(assert_return (invoke "even" (i64.const 77)) (i32.const 99)) +(assert_return (invoke "odd" (i64.const 0)) (i32.const 99)) +(assert_return (invoke "odd" (i64.const 1)) (i32.const 44)) +(assert_return (invoke "odd" (i64.const 200)) (i32.const 99)) +(assert_return (invoke "odd" (i64.const 77)) (i32.const 44)) + +(assert_exhaustion (invoke "runaway") "call stack exhausted") +(assert_exhaustion (invoke "mutual-runaway") "call stack exhausted") + + +;; Invalid typing + +(assert_invalid + (module + (func $type-void-vs-num (i32.eqz (call 1))) + (func) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-num-vs-num (i32.eqz (call 1))) + (func (result i64) (i64.const 1)) + ) + "type mismatch" +) + +(assert_invalid + (module + (func $arity-0-vs-1 (call 1)) + (func (param i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $arity-0-vs-2 (call 1)) + (func (param f64 i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $arity-1-vs-0 (call 1 (i32.const 1))) + (func) + ) + "type mismatch" +) +(assert_invalid + (module + (func $arity-2-vs-0 (call 1 (f64.const 2) (i32.const 1))) + (func) + ) + "type mismatch" +) + +(assert_invalid + (module + (func $type-first-void-vs-num (call 1 (nop) (i32.const 1))) + (func (param i32 i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-second-void-vs-num (call 1 (i32.const 1) (nop))) + (func (param i32 i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-first-num-vs-num (call 1 (f64.const 1) (i32.const 1))) + (func (param i32 f64)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-second-num-vs-num (call 1 (i32.const 1) (f64.const 1))) + (func (param f64 i32)) + ) + "type mismatch" +) + + +;; Unbound function + +(assert_invalid + (module (func $unbound-func (call 1))) + "unknown function" +) +(assert_invalid + (module (func $large-func (call 1012321300))) + "unknown function" +) diff --git a/test/spec/call_indirect.wast b/test/spec/call_indirect.wast new file mode 100644 index 00000000000..a5d4f773d8f --- /dev/null +++ b/test/spec/call_indirect.wast @@ -0,0 +1,537 @@ +;; Test `call_indirect` operator + +(module + ;; Auxiliary definitions + (type $proc (func)) + (type $out-i32 (func (result i32))) + (type $out-i64 (func (result i64))) + (type $out-f32 (func (result f32))) + (type $out-f64 (func (result f64))) + (type $over-i32 (func (param i32) (result i32))) + (type $over-i64 (func (param i64) (result i64))) + (type $over-f32 (func (param f32) (result f32))) + (type $over-f64 (func (param f64) (result f64))) + (type $f32-i32 (func (param f32 i32) (result i32))) + (type $i32-i64 (func (param i32 i64) (result i64))) + (type $f64-f32 (func (param f64 f32) (result f32))) + (type $i64-f64 (func (param i64 f64) (result f64))) + (type $over-i32-duplicate (func (param i32) (result i32))) + (type $over-i64-duplicate (func (param i64) (result i64))) + (type $over-f32-duplicate (func (param f32) (result f32))) + (type $over-f64-duplicate (func (param f64) (result f64))) + + (func $const-i32 (type $out-i32) (i32.const 0x132)) + (func $const-i64 (type $out-i64) (i64.const 0x164)) + (func $const-f32 (type $out-f32) (f32.const 0xf32)) + (func $const-f64 (type $out-f64) (f64.const 0xf64)) + + (func $id-i32 (type $over-i32) (get_local 0)) + (func $id-i64 (type $over-i64) (get_local 0)) + (func $id-f32 (type $over-f32) (get_local 0)) + (func $id-f64 (type $over-f64) (get_local 0)) + + (func $i32-i64 (type $i32-i64) (get_local 1)) + (func $i64-f64 (type $i64-f64) (get_local 1)) + (func $f32-i32 (type $f32-i32) (get_local 1)) + (func $f64-f32 (type $f64-f32) (get_local 1)) + + (func $over-i32-duplicate (type $over-i32-duplicate) (get_local 0)) + (func $over-i64-duplicate (type $over-i64-duplicate) (get_local 0)) + (func $over-f32-duplicate (type $over-f32-duplicate) (get_local 0)) + (func $over-f64-duplicate (type $over-f64-duplicate) (get_local 0)) + + (table anyfunc + (elem + $const-i32 $const-i64 $const-f32 $const-f64 + $id-i32 $id-i64 $id-f32 $id-f64 + $f32-i32 $i32-i64 $f64-f32 $i64-f64 + $fac $fib $even $odd + $runaway $mutual-runaway1 $mutual-runaway2 + $over-i32-duplicate $over-i64-duplicate + $over-f32-duplicate $over-f64-duplicate + ) + ) + + ;; Syntax + + ;; NOT SUPPORTED IN BINARYEN + (;func + (call_indirect (i32.const 0)) + (call_indirect (param i64) (i64.const 0) (i32.const 0)) + (call_indirect (param i64) (param) (param f64 i32 i64) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + (call_indirect (result) (i32.const 0)) + (drop (i32.eqz (call_indirect (result i32) (i32.const 0)))) + (drop (i32.eqz (call_indirect (result i32) (result) (i32.const 0)))) + (drop (i32.eqz + (call_indirect (param i64) (result i32) (i64.const 0) (i32.const 0)) + )) + (drop (i32.eqz + (call_indirect + (param) (param i64) (param) (param f64 i32 i64) (param) (param) + (result) (result i32) (result) (result) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + )) + (drop (i64.eqz + (call_indirect (type $over-i64) (param i64) (result i64) + (i64.const 0) (i32.const 0) + ) + )) + ;) + + ;; Typing + + (func (export "type-i32") (result i32) + (call_indirect (type $out-i32) (i32.const 0)) + ) + (func (export "type-i64") (result i64) + (call_indirect (type $out-i64) (i32.const 1)) + ) + (func (export "type-f32") (result f32) + (call_indirect (type $out-f32) (i32.const 2)) + ) + (func (export "type-f64") (result f64) + (call_indirect (type $out-f64) (i32.const 3)) + ) + + (func (export "type-index") (result i64) + (call_indirect (type $over-i64) (i64.const 100) (i32.const 5)) + ) + + (func (export "type-first-i32") (result i32) + (call_indirect (type $over-i32) (i32.const 32) (i32.const 4)) + ) + (func (export "type-first-i64") (result i64) + (call_indirect (type $over-i64) (i64.const 64) (i32.const 5)) + ) + (func (export "type-first-f32") (result f32) + (call_indirect (type $over-f32) (f32.const 1.32) (i32.const 6)) + ) + (func (export "type-first-f64") (result f64) + (call_indirect (type $over-f64) (f64.const 1.64) (i32.const 7)) + ) + + (func (export "type-second-i32") (result i32) + (call_indirect (type $f32-i32) (f32.const 32.1) (i32.const 32) (i32.const 8)) + ) + (func (export "type-second-i64") (result i64) + (call_indirect (type $i32-i64) (i32.const 32) (i64.const 64) (i32.const 9)) + ) + (func (export "type-second-f32") (result f32) + (call_indirect (type $f64-f32) (f64.const 64) (f32.const 32) (i32.const 10)) + ) + (func (export "type-second-f64") (result f64) + (call_indirect (type $i64-f64) (i64.const 64) (f64.const 64.1) (i32.const 11)) + ) + + ;; Dispatch + + (func (export "dispatch") (param i32 i64) (result i64) + (call_indirect (type $over-i64) (get_local 1) (get_local 0)) + ) + + (func (export "dispatch-structural") (param i32) (result i64) + (call_indirect (type $over-i64-duplicate) (i64.const 9) (get_local 0)) + ) + + ;; Recursion + + (func $fac (export "fac") (type $over-i64) + (if (result i64) (i64.eqz (get_local 0)) + (then (i64.const 1)) + (else + (i64.mul + (get_local 0) + (call_indirect (type $over-i64) + (i64.sub (get_local 0) (i64.const 1)) + (i32.const 12) + ) + ) + ) + ) + ) + + (func $fib (export "fib") (type $over-i64) + (if (result i64) (i64.le_u (get_local 0) (i64.const 1)) + (then (i64.const 1)) + (else + (i64.add + (call_indirect (type $over-i64) + (i64.sub (get_local 0) (i64.const 2)) + (i32.const 13) + ) + (call_indirect (type $over-i64) + (i64.sub (get_local 0) (i64.const 1)) + (i32.const 13) + ) + ) + ) + ) + ) + + (func $even (export "even") (param i32) (result i32) + (if (result i32) (i32.eqz (get_local 0)) + (then (i32.const 44)) + (else + (call_indirect (type $over-i32) + (i32.sub (get_local 0) (i32.const 1)) + (i32.const 15) + ) + ) + ) + ) + (func $odd (export "odd") (param i32) (result i32) + (if (result i32) (i32.eqz (get_local 0)) + (then (i32.const 99)) + (else + (call_indirect (type $over-i32) + (i32.sub (get_local 0) (i32.const 1)) + (i32.const 14) + ) + ) + ) + ) + + ;; Stack exhaustion + + ;; Implementations are required to have every call consume some abstract + ;; resource towards exhausting some abstract finite limit, such that + ;; infinitely recursive test cases reliably trap in finite time. This is + ;; because otherwise applications could come to depend on it on those + ;; implementations and be incompatible with implementations that don't do + ;; it (or don't do it under the same circumstances). + + (func $runaway (export "runaway") (call_indirect (type $proc) (i32.const 16))) + + (func $mutual-runaway1 (export "mutual-runaway") (call_indirect (type $proc) (i32.const 18))) + (func $mutual-runaway2 (call_indirect (type $proc) (i32.const 17))) +) + +(assert_return (invoke "type-i32") (i32.const 0x132)) +(assert_return (invoke "type-i64") (i64.const 0x164)) +(assert_return (invoke "type-f32") (f32.const 0xf32)) +(assert_return (invoke "type-f64") (f64.const 0xf64)) + +(assert_return (invoke "type-index") (i64.const 100)) + +(assert_return (invoke "type-first-i32") (i32.const 32)) +(assert_return (invoke "type-first-i64") (i64.const 64)) +(assert_return (invoke "type-first-f32") (f32.const 1.32)) +(assert_return (invoke "type-first-f64") (f64.const 1.64)) + +(assert_return (invoke "type-second-i32") (i32.const 32)) +(assert_return (invoke "type-second-i64") (i64.const 64)) +(assert_return (invoke "type-second-f32") (f32.const 32)) +(assert_return (invoke "type-second-f64") (f64.const 64.1)) + +(assert_return (invoke "dispatch" (i32.const 5) (i64.const 2)) (i64.const 2)) +(assert_return (invoke "dispatch" (i32.const 5) (i64.const 5)) (i64.const 5)) +(assert_return (invoke "dispatch" (i32.const 12) (i64.const 5)) (i64.const 120)) +(assert_return (invoke "dispatch" (i32.const 13) (i64.const 5)) (i64.const 8)) +(assert_return (invoke "dispatch" (i32.const 20) (i64.const 2)) (i64.const 2)) +(assert_trap (invoke "dispatch" (i32.const 0) (i64.const 2)) "indirect call type mismatch") +(assert_trap (invoke "dispatch" (i32.const 15) (i64.const 2)) "indirect call type mismatch") +(assert_trap (invoke "dispatch" (i32.const 23) (i64.const 2)) "undefined element") +(assert_trap (invoke "dispatch" (i32.const -1) (i64.const 2)) "undefined element") +(assert_trap (invoke "dispatch" (i32.const 1213432423) (i64.const 2)) "undefined element") + +(assert_return (invoke "dispatch-structural" (i32.const 5)) (i64.const 9)) +(assert_return (invoke "dispatch-structural" (i32.const 5)) (i64.const 9)) +(assert_return (invoke "dispatch-structural" (i32.const 12)) (i64.const 362880)) +(assert_return (invoke "dispatch-structural" (i32.const 20)) (i64.const 9)) +(assert_trap (invoke "dispatch-structural" (i32.const 11)) "indirect call type mismatch") +(assert_trap (invoke "dispatch-structural" (i32.const 22)) "indirect call type mismatch") + +(assert_return (invoke "fac" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 5)) (i64.const 120)) +(assert_return (invoke "fac" (i64.const 25)) (i64.const 7034535277573963776)) + +(assert_return (invoke "fib" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 2)) (i64.const 2)) +(assert_return (invoke "fib" (i64.const 5)) (i64.const 8)) +(assert_return (invoke "fib" (i64.const 20)) (i64.const 10946)) + +(assert_return (invoke "even" (i32.const 0)) (i32.const 44)) +(assert_return (invoke "even" (i32.const 1)) (i32.const 99)) +(assert_return (invoke "even" (i32.const 100)) (i32.const 44)) +(assert_return (invoke "even" (i32.const 77)) (i32.const 99)) +(assert_return (invoke "odd" (i32.const 0)) (i32.const 99)) +(assert_return (invoke "odd" (i32.const 1)) (i32.const 44)) +(assert_return (invoke "odd" (i32.const 200)) (i32.const 99)) +(assert_return (invoke "odd" (i32.const 77)) (i32.const 44)) + +(assert_exhaustion (invoke "runaway") "call stack exhausted") +(assert_exhaustion (invoke "mutual-runaway") "call stack exhausted") + + +;; Invalid syntax + +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (result i32) (param i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (param i32) (type $sig) (result i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (param i32) (result i32) (type $sig)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (result i32) (type $sig) (param i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (result i32) (param i32) (type $sig)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (result i32) (param i32) (i32.const 0) (i32.const 0))" + ")" + ) + "unexpected token" +) + +(assert_malformed + (module quote + "(table 0 anyfunc)" + "(func (call_indirect (param $x i32) (i32.const 0) (i32.const 0)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (result i32) (i32.const 0))" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (result i32) (i32.const 0))" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func" + " (call_indirect (type $sig) (param i32) (i32.const 0) (i32.const 0))" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32 i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (param i32) (result i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "inline function type" +) + +;; Invalid typing + +(assert_invalid + (module + (type (func)) + (func $no-table (call_indirect (type 0) (i32.const 0))) + ) + "unknown table" +) + +(assert_invalid + (module + (type (func)) + (table 0 anyfunc) + (func $type-void-vs-num (i32.eqz (call_indirect (type 0) (i32.const 0)))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (result i64))) + (table 0 anyfunc) + (func $type-num-vs-num (i32.eqz (call_indirect (type 0) (i32.const 0)))) + ) + "type mismatch" +) + +(assert_invalid + (module + (type (func (param i32))) + (table 0 anyfunc) + (func $arity-0-vs-1 (call_indirect (type 0) (i32.const 0))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param f64 i32))) + (table 0 anyfunc) + (func $arity-0-vs-2 (call_indirect (type 0) (i32.const 0))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func)) + (table 0 anyfunc) + (func $arity-1-vs-0 (call_indirect (type 0) (i32.const 1) (i32.const 0))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func)) + (table 0 anyfunc) + (func $arity-2-vs-0 + (call_indirect (type 0) (f64.const 2) (i32.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) + +(assert_invalid + (module + (type (func (param i32))) + (table 0 anyfunc) + (func $type-func-void-vs-i32 (call_indirect (type 0) (i32.const 1) (nop))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param i32))) + (table 0 anyfunc) + (func $type-func-num-vs-i32 (call_indirect (type 0) (i32.const 0) (i64.const 1))) + ) + "type mismatch" +) + +(assert_invalid + (module + (type (func (param i32 i32))) + (table 0 anyfunc) + (func $type-first-void-vs-num + (call_indirect (type 0) (nop) (i32.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param i32 i32))) + (table 0 anyfunc) + (func $type-second-void-vs-num + (call_indirect (type 0) (i32.const 1) (nop) (i32.const 0)) + ) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param i32 f64))) + (table 0 anyfunc) + (func $type-first-num-vs-num + (call_indirect (type 0) (f64.const 1) (i32.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param f64 i32))) + (table 0 anyfunc) + (func $type-second-num-vs-num + (call_indirect (type 0) (i32.const 1) (f64.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) + + +;; Unbound type + +(assert_invalid + (module + (table 0 anyfunc) + (func $unbound-type (call_indirect (type 1) (i32.const 0))) + ) + "unknown type" +) +(assert_invalid + (module + (table 0 anyfunc) + (func $large-type (call_indirect (type 1012321300) (i32.const 0))) + ) + "unknown type" +) + + +;; Unbound function in table + +(assert_invalid + (module (table anyfunc (elem 0 0))) + "unknown function 0" +) diff --git a/test/spec/comments.wast b/test/spec/comments.wast new file mode 100644 index 00000000000..90a64b42d9e Binary files /dev/null and b/test/spec/comments.wast differ diff --git a/test/spec/const.wast b/test/spec/const.wast new file mode 100644 index 00000000000..509c978f0bf --- /dev/null +++ b/test/spec/const.wast @@ -0,0 +1,143 @@ +;; Test t.const instructions + +;; Syntax error + +;; NOT SUPPORTED IN BINARYEN + +(; + +(module (func (i32.const 0xffffffff) drop)) +(module (func (i32.const -0x80000000) drop)) +(assert_malformed + (module quote "(func (i32.const 0x100000000) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (i32.const -0x80000001) drop)") + "constant out of range" +) + +(module (func (i32.const 4294967295) drop)) +(module (func (i32.const -2147483648) drop)) +(assert_malformed + (module quote "(func (i32.const 4294967296) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (i32.const -2147483649) drop)") + "constant out of range" +) + +(module (func (i64.const 0xffffffffffffffff) drop)) +(module (func (i64.const -0x8000000000000000) drop)) +(assert_malformed + (module quote "(func (i64.const 0x10000000000000000) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (i64.const -0x8000000000000001) drop)") + "constant out of range" +) + +(module (func (i64.const 18446744073709551615) drop)) +(module (func (i64.const -9223372036854775808) drop)) +(assert_malformed + (module quote "(func (i64.const 18446744073709551616) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (i64.const -9223372036854775809) drop)") + "constant out of range" +) + +(module (func (f32.const 0x1p127) drop)) +(module (func (f32.const -0x1p127) drop)) +(module (func (f32.const 0x1.fffffep127) drop)) +(module (func (f32.const -0x1.fffffep127) drop)) +(module (func (f32.const 0x1.fffffe7p127) drop)) +(module (func (f32.const -0x1.fffffe7p127) drop)) +(assert_malformed + (module quote "(func (f32.const 0x1p128) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f32.const -0x1p128) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f32.const 0x1.ffffffp127) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f32.const -0x1.ffffffp127) drop)") + "constant out of range" +) + +(module (func (f32.const 1e38) drop)) +(module (func (f32.const -1e38) drop)) +(assert_malformed + (module quote "(func (f32.const 1e39) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f32.const -1e39) drop)") + "constant out of range" +) + +(module (func (f32.const 340282356779733623858607532500980858880) drop)) +(module (func (f32.const -340282356779733623858607532500980858880) drop)) +(assert_malformed + (module quote "(func (f32.const 340282356779733661637539395458142568448) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f32.const -340282356779733661637539395458142568448) drop)") + "constant out of range" +) + +(module (func (f64.const 0x1p1023) drop)) +(module (func (f64.const -0x1p1023) drop)) +(module (func (f64.const 0x1.fffffffffffffp1023) drop)) +(module (func (f64.const -0x1.fffffffffffffp1023) drop)) +(module (func (f64.const 0x1.fffffffffffff7p1023) drop)) +(module (func (f64.const -0x1.fffffffffffff7p1023) drop)) +(assert_malformed + (module quote "(func (f64.const 0x1p1024) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f64.const -0x1p1024) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f64.const 0x1.fffffffffffff8p1023) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f64.const -0x1.fffffffffffff8p1023) drop)") + "constant out of range" +) + +(module (func (f64.const 1e308) drop)) +(module (func (f64.const -1e308) drop)) +(assert_malformed + (module quote "(func (f64.const 1e309) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f64.const -1e309) drop)") + "constant out of range" +) + +(module (func (f64.const 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop)) +(module (func (f64.const -179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368) drop)) +(assert_malformed + (module quote "(func (f64.const 269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop)") + "constant out of range" +) +(assert_malformed + (module quote "(func (f64.const -269653970229347356221791135597556535197105851288767494898376215204735891170042808140884337949150317257310688430271573696351481990334196274152701320055306275479074865864826923114368235135583993416113802762682700913456874855354834422248712838998185022412196739306217084753107265771378949821875606039276187287552) drop)") + "constant out of range" +) + +;) \ No newline at end of file diff --git a/test/spec/conversions.wast b/test/spec/conversions.wast new file mode 100644 index 00000000000..e664e1a6e37 --- /dev/null +++ b/test/spec/conversions.wast @@ -0,0 +1,461 @@ +(module + (func (export "i64.extend_s_i32") (param $x i32) (result i64) (i64.extend_s/i32 (get_local $x))) + (func (export "i64.extend_u_i32") (param $x i32) (result i64) (i64.extend_u/i32 (get_local $x))) + (func (export "i32.wrap_i64") (param $x i64) (result i32) (i32.wrap/i64 (get_local $x))) + (func (export "i32.trunc_s_f32") (param $x f32) (result i32) (i32.trunc_s/f32 (get_local $x))) + (func (export "i32.trunc_u_f32") (param $x f32) (result i32) (i32.trunc_u/f32 (get_local $x))) + (func (export "i32.trunc_s_f64") (param $x f64) (result i32) (i32.trunc_s/f64 (get_local $x))) + (func (export "i32.trunc_u_f64") (param $x f64) (result i32) (i32.trunc_u/f64 (get_local $x))) + (func (export "i64.trunc_s_f32") (param $x f32) (result i64) (i64.trunc_s/f32 (get_local $x))) + (func (export "i64.trunc_u_f32") (param $x f32) (result i64) (i64.trunc_u/f32 (get_local $x))) + (func (export "i64.trunc_s_f64") (param $x f64) (result i64) (i64.trunc_s/f64 (get_local $x))) + (func (export "i64.trunc_u_f64") (param $x f64) (result i64) (i64.trunc_u/f64 (get_local $x))) + (func (export "f32.convert_s_i32") (param $x i32) (result f32) (f32.convert_s/i32 (get_local $x))) + (func (export "f32.convert_s_i64") (param $x i64) (result f32) (f32.convert_s/i64 (get_local $x))) + (func (export "f64.convert_s_i32") (param $x i32) (result f64) (f64.convert_s/i32 (get_local $x))) + (func (export "f64.convert_s_i64") (param $x i64) (result f64) (f64.convert_s/i64 (get_local $x))) + (func (export "f32.convert_u_i32") (param $x i32) (result f32) (f32.convert_u/i32 (get_local $x))) + (func (export "f32.convert_u_i64") (param $x i64) (result f32) (f32.convert_u/i64 (get_local $x))) + (func (export "f64.convert_u_i32") (param $x i32) (result f64) (f64.convert_u/i32 (get_local $x))) + (func (export "f64.convert_u_i64") (param $x i64) (result f64) (f64.convert_u/i64 (get_local $x))) + (func (export "f64.promote_f32") (param $x f32) (result f64) (f64.promote/f32 (get_local $x))) + (func (export "f32.demote_f64") (param $x f64) (result f32) (f32.demote/f64 (get_local $x))) + (func (export "f32.reinterpret_i32") (param $x i32) (result f32) (f32.reinterpret/i32 (get_local $x))) + (func (export "f64.reinterpret_i64") (param $x i64) (result f64) (f64.reinterpret/i64 (get_local $x))) + (func (export "i32.reinterpret_f32") (param $x f32) (result i32) (i32.reinterpret/f32 (get_local $x))) + (func (export "i64.reinterpret_f64") (param $x f64) (result i64) (i64.reinterpret/f64 (get_local $x))) +) + +(assert_return (invoke "i64.extend_s_i32" (i32.const 0)) (i64.const 0)) +(assert_return (invoke "i64.extend_s_i32" (i32.const 10000)) (i64.const 10000)) +(assert_return (invoke "i64.extend_s_i32" (i32.const -10000)) (i64.const -10000)) +(assert_return (invoke "i64.extend_s_i32" (i32.const -1)) (i64.const -1)) +(assert_return (invoke "i64.extend_s_i32" (i32.const 0x7fffffff)) (i64.const 0x000000007fffffff)) +(assert_return (invoke "i64.extend_s_i32" (i32.const 0x80000000)) (i64.const 0xffffffff80000000)) + +(assert_return (invoke "i64.extend_u_i32" (i32.const 0)) (i64.const 0)) +(assert_return (invoke "i64.extend_u_i32" (i32.const 10000)) (i64.const 10000)) +(assert_return (invoke "i64.extend_u_i32" (i32.const -10000)) (i64.const 0x00000000ffffd8f0)) +(assert_return (invoke "i64.extend_u_i32" (i32.const -1)) (i64.const 0xffffffff)) +(assert_return (invoke "i64.extend_u_i32" (i32.const 0x7fffffff)) (i64.const 0x000000007fffffff)) +(assert_return (invoke "i64.extend_u_i32" (i32.const 0x80000000)) (i64.const 0x0000000080000000)) + +(assert_return (invoke "i32.wrap_i64" (i64.const -1)) (i32.const -1)) +(assert_return (invoke "i32.wrap_i64" (i64.const -100000)) (i32.const -100000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x80000000)) (i32.const 0x80000000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xffffffff7fffffff)) (i32.const 0x7fffffff)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xffffffff00000000)) (i32.const 0x00000000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xfffffffeffffffff)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xffffffff00000001)) (i32.const 0x00000001)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0)) (i32.const 0)) +(assert_return (invoke "i32.wrap_i64" (i64.const 1311768467463790320)) (i32.const 0x9abcdef0)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x00000000ffffffff)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x0000000100000000)) (i32.const 0x00000000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x0000000100000001)) (i32.const 0x00000001)) + +(assert_return (invoke "i32.trunc_s_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 0x1.19999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -1.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -0x1.19999ap+0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -1.5)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -1.9)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -2.0)) (i32.const -2)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 2147483520.0)) (i32.const 2147483520)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -2147483648.0)) (i32.const -2147483648)) +(assert_trap (invoke "i32.trunc_s_f32" (f32.const 2147483648.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -2147483904.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i32.trunc_u_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 0x1.19999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 1.9)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 2.0)) (i32.const 2)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 2147483648)) (i32.const -2147483648)) ;; 0x1.00000p+31 -> 8000 0000 +(assert_return (invoke "i32.trunc_u_f32" (f32.const 4294967040.0)) (i32.const -256)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0x1.ccccccp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0x1.fffffep-1)) (i32.const 0)) +(assert_trap (invoke "i32.trunc_u_f32" (f32.const 4294967296.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -1.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i32.trunc_s_f64" (f64.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 0x1.199999999999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -1.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -0x1.199999999999ap+0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -1.5)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -1.9)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -2.0)) (i32.const -2)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 2147483647.0)) (i32.const 2147483647)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -2147483648.0)) (i32.const -2147483648)) +(assert_trap (invoke "i32.trunc_s_f64" (f64.const 2147483648.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -2147483649.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +(assert_return (invoke "i32.trunc_u_f64" (f64.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 0x1.199999999999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1.9)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 2.0)) (i32.const 2)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 2147483648)) (i32.const -2147483648)) ;; 0x1.00000p+31 -> 8000 0000 +(assert_return (invoke "i32.trunc_u_f64" (f64.const 4294967295.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0x1.ccccccccccccdp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0x1.fffffffffffffp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1e8)) (i32.const 100000000)) +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 4294967296.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -1.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 1e16)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 1e30)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 9223372036854775808)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_s_f32" (f32.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 0x1.19999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -1.0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -0x1.19999ap+0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -1.5)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -1.9)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -2.0)) (i64.const -2)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 4294967296)) (i64.const 4294967296)) ;; 0x1.00000p+32 -> 1 0000 0000 +(assert_return (invoke "i64.trunc_s_f32" (f32.const -4294967296)) (i64.const -4294967296)) ;; -0x1.00000p+32 -> ffff ffff 0000 0000 +(assert_return (invoke "i64.trunc_s_f32" (f32.const 9223371487098961920.0)) (i64.const 9223371487098961920)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -9223372036854775808.0)) (i64.const -9223372036854775808)) +(assert_trap (invoke "i64.trunc_s_f32" (f32.const 9223372036854775808.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -9223373136366403584.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_u_f32" (f32.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 0x1.19999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 4294967296)) (i64.const 4294967296)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 18446742974197923840.0)) (i64.const -1099511627776)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0x1.ccccccp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0x1.fffffep-1)) (i64.const 0)) +(assert_trap (invoke "i64.trunc_u_f32" (f32.const 18446744073709551616.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -1.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_s_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 0x1.199999999999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -1.0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -0x1.199999999999ap+0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -1.5)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -1.9)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -2.0)) (i64.const -2)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 4294967296)) (i64.const 4294967296)) ;; 0x1.00000p+32 -> 1 0000 0000 +(assert_return (invoke "i64.trunc_s_f64" (f64.const -4294967296)) (i64.const -4294967296)) ;; -0x1.00000p+32 -> ffff ffff 0000 0000 +(assert_return (invoke "i64.trunc_s_f64" (f64.const 9223372036854774784.0)) (i64.const 9223372036854774784)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -9223372036854775808.0)) (i64.const -9223372036854775808)) +(assert_trap (invoke "i64.trunc_s_f64" (f64.const 9223372036854775808.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -9223372036854777856.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_u_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 0x1.199999999999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 4294967295)) (i64.const 0xffffffff)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 4294967296)) (i64.const 0x100000000)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 18446744073709549568.0)) (i64.const -2048)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0x1.ccccccccccccdp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0x1.fffffffffffffp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1e8)) (i64.const 100000000)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1e16)) (i64.const 10000000000000000)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 9223372036854775808)) (i64.const -9223372036854775808)) +(assert_trap (invoke "i64.trunc_u_f64" (f64.const 18446744073709551616.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -1.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +(assert_return (invoke "f32.convert_s_i32" (i32.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -1)) (f32.const -1.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 2147483647)) (f32.const 2147483648)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -2147483648)) (f32.const -2147483648)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 1234567890)) (f32.const 0x1.26580cp+30)) +;; Test rounding directions. +(assert_return (invoke "f32.convert_s_i32" (i32.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -16777217)) (f32.const -16777216.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 16777219)) (f32.const 16777220.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -16777219)) (f32.const -16777220.0)) + +(assert_return (invoke "f32.convert_s_i64" (i64.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -1)) (f32.const -1.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 9223372036854775807)) (f32.const 9223372036854775807)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -9223372036854775808)) (f32.const -9223372036854775808)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 314159265358979)) (f32.const 0x1.1db9e8p+48)) ;; PI +;; Test rounding directions. +(assert_return (invoke "f32.convert_s_i64" (i64.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -16777217)) (f32.const -16777216.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 16777219)) (f32.const 16777220.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -16777219)) (f32.const -16777220.0)) + +(assert_return (invoke "f64.convert_s_i32" (i32.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_s_i32" (i32.const -1)) (f64.const -1.0)) +(assert_return (invoke "f64.convert_s_i32" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_s_i32" (i32.const 2147483647)) (f64.const 2147483647)) +(assert_return (invoke "f64.convert_s_i32" (i32.const -2147483648)) (f64.const -2147483648)) +(assert_return (invoke "f64.convert_s_i32" (i32.const 987654321)) (f64.const 987654321)) + +(assert_return (invoke "f64.convert_s_i64" (i64.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -1)) (f64.const -1.0)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 9223372036854775807)) (f64.const 9223372036854775807)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -9223372036854775808)) (f64.const -9223372036854775808)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 4669201609102990)) (f64.const 4669201609102990)) ;; Feigenbaum +;; Test rounding directions. +(assert_return (invoke "f64.convert_s_i64" (i64.const 9007199254740993)) (f64.const 9007199254740992)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -9007199254740993)) (f64.const -9007199254740992)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 9007199254740995)) (f64.const 9007199254740996)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -9007199254740995)) (f64.const -9007199254740996)) + +(assert_return (invoke "f32.convert_u_i32" (i32.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 2147483647)) (f32.const 2147483648)) +(assert_return (invoke "f32.convert_u_i32" (i32.const -2147483648)) (f32.const 2147483648)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x12345678)) (f32.const 0x1.234568p+28)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xffffffff)) (f32.const 4294967296.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x80000080)) (f32.const 0x1.000000p+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x80000081)) (f32.const 0x1.000002p+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x80000082)) (f32.const 0x1.000002p+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xfffffe80)) (f32.const 0x1.fffffcp+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xfffffe81)) (f32.const 0x1.fffffep+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xfffffe82)) (f32.const 0x1.fffffep+31)) +;; Test rounding directions. +(assert_return (invoke "f32.convert_u_i32" (i32.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 16777219)) (f32.const 16777220.0)) + +(assert_return (invoke "f32.convert_u_i64" (i64.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 9223372036854775807)) (f32.const 9223372036854775807)) +(assert_return (invoke "f32.convert_u_i64" (i64.const -9223372036854775808)) (f32.const 9223372036854775808)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 0xffffffffffffffff)) (f32.const 18446744073709551616.0)) +;; Test rounding directions. +(assert_return (invoke "f32.convert_u_i64" (i64.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 16777219)) (f32.const 16777220.0)) + +(assert_return (invoke "f64.convert_u_i32" (i32.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_u_i32" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_u_i32" (i32.const 2147483647)) (f64.const 2147483647)) +(assert_return (invoke "f64.convert_u_i32" (i32.const -2147483648)) (f64.const 2147483648)) +(assert_return (invoke "f64.convert_u_i32" (i32.const 0xffffffff)) (f64.const 4294967295.0)) + +(assert_return (invoke "f64.convert_u_i64" (i64.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 9223372036854775807)) (f64.const 9223372036854775807)) +(assert_return (invoke "f64.convert_u_i64" (i64.const -9223372036854775808)) (f64.const 9223372036854775808)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xffffffffffffffff)) (f64.const 18446744073709551616.0)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0x8000000000000400)) (f64.const 0x1.0000000000000p+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0x8000000000000401)) (f64.const 0x1.0000000000001p+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0x8000000000000402)) (f64.const 0x1.0000000000001p+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xfffffffffffff400)) (f64.const 0x1.ffffffffffffep+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xfffffffffffff401)) (f64.const 0x1.fffffffffffffp+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xfffffffffffff402)) (f64.const 0x1.fffffffffffffp+63)) +;; Test rounding directions. +(assert_return (invoke "f64.convert_u_i64" (i64.const 9007199254740993)) (f64.const 9007199254740992)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 9007199254740995)) (f64.const 9007199254740996)) + +(assert_return (invoke "f64.promote_f32" (f32.const 0.0)) (f64.const 0.0)) +(assert_return (invoke "f64.promote_f32" (f32.const -0.0)) (f64.const -0.0)) +(assert_return (invoke "f64.promote_f32" (f32.const 0x1p-149)) (f64.const 0x1p-149)) +(assert_return (invoke "f64.promote_f32" (f32.const -0x1p-149)) (f64.const -0x1p-149)) +(assert_return (invoke "f64.promote_f32" (f32.const 1.0)) (f64.const 1.0)) +(assert_return (invoke "f64.promote_f32" (f32.const -1.0)) (f64.const -1.0)) +(assert_return (invoke "f64.promote_f32" (f32.const -0x1.fffffep+127)) (f64.const -0x1.fffffep+127)) +(assert_return (invoke "f64.promote_f32" (f32.const 0x1.fffffep+127)) (f64.const 0x1.fffffep+127)) +;; Generated randomly by picking a random int and reinterpret it to float. +(assert_return (invoke "f64.promote_f32" (f32.const 0x1p-119)) (f64.const 0x1p-119)) +;; Generated randomly by picking a random float. +(assert_return (invoke "f64.promote_f32" (f32.const 0x1.8f867ep+125)) (f64.const 6.6382536710104395e+37)) +(assert_return (invoke "f64.promote_f32" (f32.const inf)) (f64.const inf)) +(assert_return (invoke "f64.promote_f32" (f32.const -inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "f64.promote_f32" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "f64.promote_f32" (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "f64.promote_f32" (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "f64.promote_f32" (f32.const -nan:0x200000))) + +(assert_return (invoke "f32.demote_f64" (f64.const 0.0)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0.0)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x0.0000000000001p-1022)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x0.0000000000001p-1022)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 1.0)) (f32.const 1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -1.0)) (f32.const -1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffe0000000p-127)) (f32.const 0x1p-126)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffe0000000p-127)) (f32.const -0x1p-126)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffdfffffffp-127)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffdfffffffp-127)) (f32.const -0x1.fffffcp-127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffd0000000p+127)) (f32.const 0x1.fffffcp+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffd0000000p+127)) (f32.const -0x1.fffffcp+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffd0000001p+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffd0000001p+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffefffffffp+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffefffffffp+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.ffffffp+127)) (f32.const inf)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.ffffffp+127)) (f32.const -inf)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1p-119)) (f32.const 0x1p-119)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.8f867ep+125)) (f32.const 0x1.8f867ep+125)) +(assert_return (invoke "f32.demote_f64" (f64.const inf)) (f32.const inf)) +(assert_return (invoke "f32.demote_f64" (f64.const -inf)) (f32.const -inf)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000000000001p+0)) (f32.const 1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffffffffffp-1)) (f32.const 1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000000p+0)) (f32.const 0x1.000000p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000001p+0)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.000002fffffffp+0)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000030000000p+0)) (f32.const 0x1.000004p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000050000000p+0)) (f32.const 0x1.000004p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000000p+24)) (f32.const 0x1.0p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000001p+24)) (f32.const 0x1.000002p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.000002fffffffp+24)) (f32.const 0x1.000002p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000030000000p+24)) (f32.const 0x1.000004p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.4eae4f7024c7p+108)) (f32.const 0x1.4eae5p+108)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.a12e71e358685p-113)) (f32.const 0x1.a12e72p-113)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.cb98354d521ffp-127)) (f32.const 0x1.cb9834p-127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.6972b30cfb562p+1)) (f32.const -0x1.6972b4p+1)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.bedbe4819d4c4p+112)) (f32.const -0x1.bedbe4p+112)) +(assert_return_canonical_nan (invoke "f32.demote_f64" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "f32.demote_f64" (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "f32.demote_f64" (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "f32.demote_f64" (f64.const -nan:0x4000000000000))) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1p-1022)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1p-1022)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0p-150)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.0p-150)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000000000001p-150)) (f32.const 0x1p-149)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.0000000000001p-150)) (f32.const -0x1p-149)) + +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x80000000)) (f32.const -0.0)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 1)) (f32.const 0x1p-149)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const -1)) (f32.const -nan:0x7fffff)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 123456789)) (f32.const 0x1.b79a2ap-113)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const -2147483647)) (f32.const -0x1p-149)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x7f800000)) (f32.const inf)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0xff800000)) (f32.const -inf)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x7fc00000)) (f32.const nan)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0xffc00000)) (f32.const -nan)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x7fa00000)) (f32.const nan:0x200000)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0xffa00000)) (f32.const -nan:0x200000)) + +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 1)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const -1)) (f64.const -nan:0xfffffffffffff)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x8000000000000000)) (f64.const -0.0)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 1234567890)) (f64.const 0x0.00000499602d2p-1022)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const -9223372036854775807)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x7ff0000000000000)) (f64.const inf)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0xfff0000000000000)) (f64.const -inf)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x7ff8000000000000)) (f64.const nan)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0xfff8000000000000)) (f64.const -nan)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x7ff4000000000000)) (f64.const nan:0x4000000000000)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0xfff4000000000000)) (f64.const -nan:0x4000000000000)) + +(assert_return (invoke "i32.reinterpret_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -0.0)) (i32.const 0x80000000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -nan:0x7fffff)) (i32.const -1)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -0x1p-149)) (i32.const 0x80000001)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 1.0)) (i32.const 1065353216)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 3.1415926)) (i32.const 1078530010)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 0x1.fffffep+127)) (i32.const 2139095039)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -0x1.fffffep+127)) (i32.const -8388609)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const inf)) (i32.const 0x7f800000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -inf)) (i32.const 0xff800000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const nan)) (i32.const 0x7fc00000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -nan)) (i32.const 0xffc00000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const nan:0x200000)) (i32.const 0x7fa00000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -nan:0x200000)) (i32.const 0xffa00000)) + +(assert_return (invoke "i64.reinterpret_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -0.0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 1)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -nan:0xfffffffffffff)) (i64.const -1)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0x8000000000000001)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 1.0)) (i64.const 4607182418800017408)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 3.14159265358979)) (i64.const 4614256656552045841)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 0x1.fffffffffffffp+1023)) (i64.const 9218868437227405311)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -0x1.fffffffffffffp+1023)) (i64.const -4503599627370497)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const inf)) (i64.const 0x7ff0000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -inf)) (i64.const 0xfff0000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const nan)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -nan)) (i64.const 0xfff8000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const nan:0x4000000000000)) (i64.const 0x7ff4000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -nan:0x4000000000000)) (i64.const 0xfff4000000000000)) diff --git a/test/spec/custom.wast b/test/spec/custom.wast new file mode 100644 index 00000000000..9b7e0d56a58 --- /dev/null +++ b/test/spec/custom.wast @@ -0,0 +1,126 @@ +;; NOT SUPPORTED IN BINARYEN + +(; + +(module binary + "\00asm" "\01\00\00\00" + "\00\24\10" "a custom section" "this is the payload" + "\00\20\10" "a custom section" "this is payload" + "\00\11\10" "a custom section" "" + "\00\10\00" "" "this is payload" + "\00\01\00" "" "" + "\00\24\10" "\00\00custom sectio\00" "this is the payload" + "\00\24\10" "\ef\bb\bfa custom sect" "this is the payload" + "\00\24\10" "a custom sect\e2\8c\a3" "this is the payload" + "\00\1f\16" "module within a module" "\00asm" "\01\00\00\00" +) + +(module binary + "\00asm" "\01\00\00\00" + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\01\01\00" ;; type section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\02\01\00" ;; import section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\03\01\00" ;; function section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\04\01\00" ;; table section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\05\01\00" ;; memory section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\06\01\00" ;; global section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\07\01\00" ;; export section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\09\01\00" ;; element section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\0a\01\00" ;; code section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\0b\01\00" ;; data section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" +) + +(module binary + "\00asm" "\01\00\00\00" + "\01\07\01\60\02\7f\7f\01\7f" ;; type section + "\00\1a\06" "custom" "this is the payload" ;; custom section + "\03\02\01\00" ;; function section + "\07\0a\01\06\61\64\64\54\77\6f\00\00" ;; export section + "\0a\09\01\07\00\20\00\20\01\6a\0b" ;; code section + "\00\1b\07" "custom2" "this is the payload" ;; custom section +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00" + ) + "unexpected end" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\00" + ) + "unexpected end" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\00\00\05\01\00\07\00\00" + ) + "unexpected end" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\26\10" "a custom section" "this is the payload" + ) + "unexpected end" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\25\10" "a custom section" "this is the payload" + "\00\24\10" "a custom section" "this is the payload" + ) + "invalid section id" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\01\07\01\60\02\7f\7f\01\7f" ;; type section + "\00\25\10" "a custom section" "this is the payload" ;; invalid length! + "\03\02\01\00" ;; function section + "\0a\09\01\07\00\20\00\20\01\6a\0b" ;; code section + "\00\1b\07" "custom2" "this is the payload" ;; custom section + ) + "function and code section have inconsistent lengths" +) + +;; Test concatenated modules. +(assert_malformed + (module binary + "\00asm\01\00\00\00" + "\00asm\01\00\00\00" + ) + "length out of bounds" +) + +;) diff --git a/test/spec/custom_section.wast b/test/spec/custom_section.wast new file mode 100644 index 00000000000..b5bf5353aca --- /dev/null +++ b/test/spec/custom_section.wast @@ -0,0 +1,118 @@ +;; NOT SUPPORTED IN BINARYEN + +(; + +(module binary + "\00asm" "\01\00\00\00" + "\00\24\10" "a custom section" "this is the payload" + "\00\20\10" "a custom section" "this is payload" + "\00\11\10" "a custom section" "" + "\00\10\00" "" "this is payload" + "\00\01\00" "" "" + "\00\24\10" "\00\00custom sectio\00" "this is the payload" + "\00\24\10" "\ef\bb\bfa custom sect" "this is the payload" + "\00\24\10" "a custom sect\e2\8c\a3" "this is the payload" + "\00\1f\16" "module within a module" "\00asm" "\01\00\00\00" +) + +(module binary + "\00asm" "\01\00\00\00" + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\01\01\00" ;; type section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\02\01\00" ;; import section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\03\01\00" ;; function section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\04\01\00" ;; table section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\05\01\00" ;; memory section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\06\01\00" ;; global section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\07\01\00" ;; export section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\09\01\00" ;; element section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\0a\01\00" ;; code section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" + "\0b\01\00" ;; data section + "\00\0e\06" "custom" "payload" + "\00\0e\06" "custom" "payload" +) + +(module binary + "\00asm" "\01\00\00\00" + "\01\07\01\60\02\7f\7f\01\7f" ;; type section + "\00\1a\06" "custom" "this is the payload" ;; custom section + "\03\02\01\00" ;; function section + "\07\0a\01\06\61\64\64\54\77\6f\00\00" ;; export section + "\0a\09\01\07\00\20\00\20\01\6a\0b" ;; code section + "\00\1b\07" "custom2" "this is the payload" ;; custom section +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00" + ) + "unexpected end" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\00" + ) + "unexpected end" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\26\10" "a custom section" "this is the payload" + ) + "unexpected end" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\25\10" "a custom section" "this is the payload" + "\00\24\10" "a custom section" "this is the payload" + ) + "invalid section id" +) + +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\01\07\01\60\02\7f\7f\01\7f" ;; type section + "\00\25\10" "a custom section" "this is the payload" ;; invalid length! + "\03\02\01\00" ;; function section + "\0a\09\01\07\00\20\00\20\01\6a\0b" ;; code section + "\00\1b\07" "custom2" "this is the payload" ;; custom section + ) + "function and code section have inconsistent lengths" +) + +;; Test concatenated modules. +(assert_malformed + (module binary + "\00asm\01\00\00\00" + "\00asm\01\00\00\00" + ) + "length out of bounds" +) + +;) diff --git a/test/spec/data.wast b/test/spec/data.wast new file mode 100644 index 00000000000..e6c48583a51 --- /dev/null +++ b/test/spec/data.wast @@ -0,0 +1,325 @@ +;; Test the data section + +;; Syntax + +;; NOT SUPPORTED IN BINARYEN + +(;module + (memory $m 1) + (data (i32.const 0)) + (data (i32.const 1) "a" "" "bcd") + (data (offset (i32.const 0))) + (data (offset (i32.const 0)) "" "a" "bc" "") + (data 0 (i32.const 0)) + (data 0x0 (i32.const 1) "a" "" "bcd") + (data 0x000 (offset (i32.const 0))) + (data 0 (offset (i32.const 0)) "" "a" "bc" "") + (data $m (i32.const 0)) + (data $m (i32.const 1) "a" "" "bcd") + (data $m (offset (i32.const 0))) + (data $m (offset (i32.const 0)) "" "a" "bc" "") +;) + +;; Basic use + +(module + (memory 1) + (data (i32.const 0) "a") +) +(module + (import "spectest" "memory" (memory 1)) + (data (i32.const 0) "a") +) + +(module + (memory 1) + (data (i32.const 0) "a") + (data (i32.const 3) "b") + (data (i32.const 100) "cde") + (data (i32.const 5) "x") + (data (i32.const 3) "c") +) +(module + (import "spectest" "memory" (memory 1)) + (data (i32.const 0) "a") + (data (i32.const 1) "b") + (data (i32.const 2) "cde") + (data (i32.const 3) "f") + (data (i32.const 2) "g") + (data (i32.const 1) "h") +) + +;; NOT SUPPORTED IN BINARYEN +(;module + (global (import "spectest" "global_i32") i32) + (memory 1) + (data (get_global 0) "a") +;) +(;module + (global (import "spectest" "global_i32") i32) + (import "spectest" "memory" (memory 1)) + (data (get_global 0) "a") +;) + +(;module + (global $g (import "spectest" "global_i32") i32) + (memory 1) + (data (get_global $g) "a") +;) +(;module + (global $g (import "spectest" "global_i32") i32) + (import "spectest" "memory" (memory 1)) + (data (get_global $g) "a") +;) + +;; Use of internal globals in constant expressions is not allowed in MVP. +;; (module (memory 1) (data (get_global 0) "a") (global i32 (i32.const 0))) +;; (module (memory 1) (data (get_global $g) "a") (global $g i32 (i32.const 0))) + +;; Corner cases + +(module + (memory 1) + (data (i32.const 0) "a") + (data (i32.const 0xffff) "b") +) +(module + (import "spectest" "memory" (memory 1)) + (data (i32.const 0) "a") + (data (i32.const 0xffff) "b") +) + +(module + (memory 2) + (data (i32.const 0x1_ffff) "a") +) + +(module + (memory 0) + (data (i32.const 0)) +) +(module + (import "spectest" "memory" (memory 0)) + (data (i32.const 0)) +) + +(module + (memory 0 0) + (data (i32.const 0)) +) + +(module + (memory 1) + (data (i32.const 0x1_0000) "") +) + +(module + (memory 0) + (data (i32.const 0) "" "") +) +(module + (import "spectest" "memory" (memory 0)) + (data (i32.const 0) "" "") +) + +(module + (memory 0 0) + (data (i32.const 0) "" "") +) + +;; NOT SUPPORTED IN BINARYEN +(;module + (import "spectest" "memory" (memory 0)) + (data (i32.const 0) "a") +;) +(;module + (import "spectest" "memory" (memory 0 3)) + (data (i32.const 0) "a") +;) +(;module + (global (import "spectest" "global_i32") i32) + (import "spectest" "memory" (memory 0)) + (data (get_global 0) "a") +;) +(;module + (global (import "spectest" "global_i32") i32) + (import "spectest" "memory" (memory 0 3)) + (data (get_global 0) "a") +;) +(;module + (import "spectest" "memory" (memory 0)) + (data (i32.const 1) "a") +;) +(;module + (import "spectest" "memory" (memory 0 3)) + (data (i32.const 1) "a") +;) + +;; Invalid bounds for data + +;; NOT SUPPORTED IN BINARYEN +(;assert_unlinkable + (module + (memory 0) + (data (i32.const 0) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 0 0) + (data (i32.const 0) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 0 1) + (data (i32.const 0) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 0) + (data (i32.const 1)) + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 0 1) + (data (i32.const 1)) + ) + "data segment does not fit" +;) + +;; This seems to cause a time-out on Travis. +(;assert_unlinkable + (module + (memory 0x10000) + (data (i32.const 0xffffffff) "ab") + ) + "" ;; either out of memory or segment does not fit +;) +(;assert_unlinkable + (module + (global (import "spectest" "global_i32") i32) + (memory 0) + (data (get_global 0) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 1 2) + (data (i32.const 0x1_0000) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (import "spectest" "memory" (memory 1)) + (data (i32.const 0x1_0000) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 2) + (data (i32.const 0x2_0000) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 2 3) + (data (i32.const 0x2_0000) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 1) + (data (i32.const -1) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (import "spectest" "memory" (memory 1)) + (data (i32.const -1) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (memory 2) + (data (i32.const -100) "a") + ) + "data segment does not fit" +;) +(;assert_unlinkable + (module + (import "spectest" "memory" (memory 1)) + (data (i32.const -100) "a") + ) + "data segment does not fit" +;) + +;; Data without memory + +(assert_invalid + (module + (data (i32.const 0) "") + ) + "unknown memory 0" +) + +;; Invalid offsets + +(assert_invalid + (module + (memory 1) + (data (i64.const 0)) + ) + "type mismatch" +) + +(assert_invalid + (module + (memory 1) + (data (i32.ctz (i32.const 0))) + ) + "constant expression required" +) + +(assert_invalid + (module + (memory 1) + (data (nop)) + ) + "constant expression required" +) + +(assert_invalid + (module + (memory 1) + (data (offset (nop) (i32.const 0))) + ) + "constant expression required" +) + +(assert_invalid + (module + (memory 1) + (data (offset (i32.const 0) (nop))) + ) + "constant expression required" +) + +;; Use of internal globals in constant expressions is not allowed in MVP. +;; (assert_invalid +;; (module (memory 1) (data (get_global $g)) (global $g (mut i32) (i32.const 0))) +;; "constant expression required" +;; ) diff --git a/test/spec/elem.wast b/test/spec/elem.wast new file mode 100644 index 00000000000..599d2ec9a3b --- /dev/null +++ b/test/spec/elem.wast @@ -0,0 +1,375 @@ +;; Test the element section + +;; Syntax + +;; `offset` NOT SUPPORTED IN BINARYEN +(module + (table $t 10 anyfunc) + (func $f) + (elem (i32.const 0)) + (elem (i32.const 0) $f $f) + ;; (elem (offset (i32.const 0))) + ;; (elem (offset (i32.const 0)) $f $f) + (elem 0 (i32.const 0)) + (elem 0x0 (i32.const 0) $f $f) + ;; (elem 0x000 (offset (i32.const 0))) + ;; (elem 0 (offset (i32.const 0)) $f $f) + (elem $t (i32.const 0)) + (elem $t (i32.const 0) $f $f) + ;; (elem $t (offset (i32.const 0))) + ;; (elem $t (offset (i32.const 0)) $f $f) +) + +;; Basic use + +(module + (table 10 anyfunc) + (func $f) + (elem (i32.const 0) $f) +) +(module + (import "spectest" "table" (table 10 anyfunc)) + (func $f) + (elem (i32.const 0) $f) +) + +(module + (table 10 anyfunc) + (func $f) + (elem (i32.const 0) $f) + (elem (i32.const 3) $f) + (elem (i32.const 7) $f) + (elem (i32.const 5) $f) + (elem (i32.const 3) $f) +) +(module + (import "spectest" "table" (table 10 anyfunc)) + (func $f) + (elem (i32.const 9) $f) + (elem (i32.const 3) $f) + (elem (i32.const 7) $f) + (elem (i32.const 3) $f) + (elem (i32.const 5) $f) +) +;; NOT SUPPORTED IN BINARYEN +(;module + (global (import "spectest" "global_i32") i32) + (table 1000 anyfunc) + (func $f) + (elem (get_global 0) $f) +;) +(;module + (global $g (import "spectest" "global_i32") i32) + (table 1000 anyfunc) + (func $f) + (elem (get_global $g) $f) +;) + +(module + (type $out-i32 (func (result i32))) + (table 10 anyfunc) + (elem (i32.const 7) $const-i32-a) + (elem (i32.const 9) $const-i32-b) + (func $const-i32-a (type $out-i32) (i32.const 65)) + (func $const-i32-b (type $out-i32) (i32.const 66)) + (func (export "call-7") (type $out-i32) + (call_indirect (type $out-i32) (i32.const 7)) + ) + (func (export "call-9") (type $out-i32) + (call_indirect (type $out-i32) (i32.const 9)) + ) +) +(assert_return (invoke "call-7") (i32.const 65)) +(assert_return (invoke "call-9") (i32.const 66)) + +;; Corner cases + +(module + (table 10 anyfunc) + (func $f) + (elem (i32.const 9) $f) +) +(module + (import "spectest" "table" (table 10 anyfunc)) + (func $f) + (elem (i32.const 9) $f) +) + +(module + (table 0 anyfunc) + (elem (i32.const 0)) +) +(module + (import "spectest" "table" (table 0 anyfunc)) + (elem (i32.const 0)) +) + +(module + (table 0 0 anyfunc) + (elem (i32.const 0)) +) + +(module + (table 20 anyfunc) + (elem (i32.const 20)) +) + +;; NOT SUPPORTED IN BINARYEN +(;module + (import "spectest" "table" (table 0 anyfunc)) + (func $f) + (elem (i32.const 0) $f) +;) +(;module + (import "spectest" "table" (table 0 100 anyfunc)) + (func $f) + (elem (i32.const 0) $f) +;) +(;module + (import "spectest" "table" (table 0 anyfunc)) + (func $f) + (elem (i32.const 1) $f) +;) +(;module + (import "spectest" "table" (table 0 30 anyfunc)) + (func $f) + (elem (i32.const 1) $f) +;) + +;; Invalid bounds for elements + +;; NOT SUPPORTED IN BINARYEN +(;assert_unlinkable + (module + (table 0 anyfunc) + (func $f) + (elem (i32.const 0) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (table 0 0 anyfunc) + (func $f) + (elem (i32.const 0) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (table 0 1 anyfunc) + (func $f) + (elem (i32.const 0) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (table 0 anyfunc) + (elem (i32.const 1)) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (table 10 anyfunc) + (func $f) + (elem (i32.const 10) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (import "spectest" "table" (table 10 anyfunc)) + (func $f) + (elem (i32.const 10) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (table 10 20 anyfunc) + (func $f) + (elem (i32.const 10) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (import "spectest" "table" (table 10 anyfunc)) + (func $f) + (elem (i32.const 10) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (table 10 anyfunc) + (func $f) + (elem (i32.const -1) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (import "spectest" "table" (table 10 anyfunc)) + (func $f) + (elem (i32.const -1) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (table 10 anyfunc) + (func $f) + (elem (i32.const -10) $f) + ) + "elements segment does not fit" +;) +(;assert_unlinkable + (module + (import "spectest" "table" (table 10 anyfunc)) + (func $f) + (elem (i32.const -10) $f) + ) + "elements segment does not fit" +;) + +;; Element without table + +(assert_invalid + (module + (func $f) + (elem (i32.const 0) $f) + ) + "unknown table 0" +) + +;; Invalid offsets + +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module + (table 1 anyfunc) + (elem (i64.const 0)) + ) + "type mismatch" +;) +(;assert_invalid + (module + (table 1 anyfunc) + (elem (i32.ctz (i32.const 0))) + ) + "constant expression required" +;) +(;assert_invalid + (module + (table 1 anyfunc) + (elem (nop)) + ) + "constant expression required" +;) + +(assert_invalid + (module + (table 1 anyfunc) + (elem (offset (nop) (i32.const 0))) + ) + "constant expression required" +) + +(assert_invalid + (module + (table 1 anyfunc) + (elem (offset (i32.const 0) (nop))) + ) + "constant expression required" +) + +;; Use of internal globals in constant expressions is not allowed in MVP. +;; (assert_invalid +;; (module (memory 1) (data (get_global $g)) (global $g (mut i32) (i32.const 0))) +;; "constant expression required" +;; ) + +;; Two elements target the same slot + +(module + (type $out-i32 (func (result i32))) + (table 10 anyfunc) + (elem (i32.const 9) $const-i32-a) + (elem (i32.const 9) $const-i32-b) + (func $const-i32-a (type $out-i32) (i32.const 65)) + (func $const-i32-b (type $out-i32) (i32.const 66)) + (func (export "call-overwritten") (type $out-i32) + (call_indirect (type $out-i32) (i32.const 9)) + ) +) +(assert_return (invoke "call-overwritten") (i32.const 66)) + +(module + (type $out-i32 (func (result i32))) + (import "spectest" "table" (table 10 anyfunc)) + (elem (i32.const 9) $const-i32-a) + (elem (i32.const 9) $const-i32-b) + (func $const-i32-a (type $out-i32) (i32.const 65)) + (func $const-i32-b (type $out-i32) (i32.const 66)) + (func (export "call-overwritten-element") (type $out-i32) + (call_indirect (type $out-i32) (i32.const 9)) + ) +) +(assert_return (invoke "call-overwritten-element") (i32.const 66)) + +;; Element sections across multiple modules change the same table + +(module $module1 + (type $out-i32 (func (result i32))) + (table (export "shared-table") 10 anyfunc) + (elem (i32.const 8) $const-i32-a) + (elem (i32.const 9) $const-i32-b) + (func $const-i32-a (type $out-i32) (i32.const 65)) + (func $const-i32-b (type $out-i32) (i32.const 66)) + (func (export "call-7") (type $out-i32) + (call_indirect (type $out-i32) (i32.const 7)) + ) + (func (export "call-8") (type $out-i32) + (call_indirect (type $out-i32) (i32.const 8)) + ) + (func (export "call-9") (type $out-i32) + (call_indirect (type $out-i32) (i32.const 9)) + ) +) + +;; NOT SUPPORTED IN BINARYEN +;; (register "module1" $module1) +;; (assert_trap (invoke $module1 "call-7") "uninitialized element 7") +;; (assert_return (invoke $module1 "call-8") (i32.const 65)) +;; (assert_return (invoke $module1 "call-9") (i32.const 66)) + +(module $module2 + (type $out-i32 (func (result i32))) + (import "module1" "shared-table" (table 10 anyfunc)) + (elem (i32.const 7) $const-i32-c) + (elem (i32.const 8) $const-i32-d) + (func $const-i32-c (type $out-i32) (i32.const 67)) + (func $const-i32-d (type $out-i32) (i32.const 68)) +) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke $module1 "call-7") (i32.const 67)) +;; (assert_return (invoke $module1 "call-8") (i32.const 68)) +;; (assert_return (invoke $module1 "call-9") (i32.const 66)) + +(module $module3 + (type $out-i32 (func (result i32))) + (import "module1" "shared-table" (table 10 anyfunc)) + (elem (i32.const 8) $const-i32-e) + (elem (i32.const 9) $const-i32-f) + (func $const-i32-e (type $out-i32) (i32.const 69)) + (func $const-i32-f (type $out-i32) (i32.const 70)) +) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke $module1 "call-7") (i32.const 67)) +;; (assert_return (invoke $module1 "call-8") (i32.const 69)) +;; (assert_return (invoke $module1 "call-9") (i32.const 70)) diff --git a/test/spec/endianness.wast b/test/spec/endianness.wast new file mode 100644 index 00000000000..8dc0c2e2eb8 --- /dev/null +++ b/test/spec/endianness.wast @@ -0,0 +1,217 @@ +(module + (memory 1) + + ;; Stores an i16 value in little-endian-format + (func $i16_store_little (param $address i32) (param $value i32) + (i32.store8 (get_local $address) (get_local $value)) + (i32.store8 (i32.add (get_local $address) (i32.const 1)) (i32.shr_u (get_local $value) (i32.const 8))) + ) + + ;; Stores an i32 value in little-endian format + (func $i32_store_little (param $address i32) (param $value i32) + (call $i16_store_little (get_local $address) (get_local $value)) + (call $i16_store_little (i32.add (get_local $address) (i32.const 2)) (i32.shr_u (get_local $value) (i32.const 16))) + ) + + ;; Stores an i64 value in little-endian format + (func $i64_store_little (param $address i32) (param $value i64) + (call $i32_store_little (get_local $address) (i32.wrap/i64 (get_local $value))) + (call $i32_store_little (i32.add (get_local $address) (i32.const 4)) (i32.wrap/i64 (i64.shr_u (get_local $value) (i64.const 32)))) + ) + + ;; Loads an i16 value in little-endian format + (func $i16_load_little (param $address i32) (result i32) + (i32.or + (i32.load8_u (get_local $address)) + (i32.shl (i32.load8_u (i32.add (get_local $address) (i32.const 1))) (i32.const 8)) + ) + ) + + ;; Loads an i32 value in little-endian format + (func $i32_load_little (param $address i32) (result i32) + (i32.or + (call $i16_load_little (get_local $address)) + (i32.shl (call $i16_load_little (i32.add (get_local $address) (i32.const 2))) (i32.const 16)) + ) + ) + + ;; Loads an i64 value in little-endian format + (func $i64_load_little (param $address i32) (result i64) + (i64.or + (i64.extend_u/i32 (call $i32_load_little (get_local $address))) + (i64.shl (i64.extend_u/i32 (call $i32_load_little (i32.add (get_local $address) (i32.const 4)))) (i64.const 32)) + ) + ) + + (func (export "i32_load16_s") (param $value i32) (result i32) + (call $i16_store_little (i32.const 0) (get_local $value)) + (i32.load16_s (i32.const 0)) + ) + + (func (export "i32_load16_u") (param $value i32) (result i32) + (call $i16_store_little (i32.const 0) (get_local $value)) + (i32.load16_u (i32.const 0)) + ) + + (func (export "i32_load") (param $value i32) (result i32) + (call $i32_store_little (i32.const 0) (get_local $value)) + (i32.load (i32.const 0)) + ) + + (func (export "i64_load16_s") (param $value i64) (result i64) + (call $i16_store_little (i32.const 0) (i32.wrap/i64 (get_local $value))) + (i64.load16_s (i32.const 0)) + ) + + (func (export "i64_load16_u") (param $value i64) (result i64) + (call $i16_store_little (i32.const 0) (i32.wrap/i64 (get_local $value))) + (i64.load16_u (i32.const 0)) + ) + + (func (export "i64_load32_s") (param $value i64) (result i64) + (call $i32_store_little (i32.const 0) (i32.wrap/i64 (get_local $value))) + (i64.load32_s (i32.const 0)) + ) + + (func (export "i64_load32_u") (param $value i64) (result i64) + (call $i32_store_little (i32.const 0) (i32.wrap/i64 (get_local $value))) + (i64.load32_u (i32.const 0)) + ) + + (func (export "i64_load") (param $value i64) (result i64) + (call $i64_store_little (i32.const 0) (get_local $value)) + (i64.load (i32.const 0)) + ) + + (func (export "f32_load") (param $value f32) (result f32) + (call $i32_store_little (i32.const 0) (i32.reinterpret/f32 (get_local $value))) + (f32.load (i32.const 0)) + ) + + (func (export "f64_load") (param $value f64) (result f64) + (call $i64_store_little (i32.const 0) (i64.reinterpret/f64 (get_local $value))) + (f64.load (i32.const 0)) + ) + + + (func (export "i32_store16") (param $value i32) (result i32) + (i32.store16 (i32.const 0) (get_local $value)) + (call $i16_load_little (i32.const 0)) + ) + + (func (export "i32_store") (param $value i32) (result i32) + (i32.store (i32.const 0) (get_local $value)) + (call $i32_load_little (i32.const 0)) + ) + + (func (export "i64_store16") (param $value i64) (result i64) + (i64.store16 (i32.const 0) (get_local $value)) + (i64.extend_u/i32 (call $i16_load_little (i32.const 0))) + ) + + (func (export "i64_store32") (param $value i64) (result i64) + (i64.store32 (i32.const 0) (get_local $value)) + (i64.extend_u/i32 (call $i32_load_little (i32.const 0))) + ) + + (func (export "i64_store") (param $value i64) (result i64) + (i64.store (i32.const 0) (get_local $value)) + (call $i64_load_little (i32.const 0)) + ) + + (func (export "f32_store") (param $value f32) (result f32) + (f32.store (i32.const 0) (get_local $value)) + (f32.reinterpret/i32 (call $i32_load_little (i32.const 0))) + ) + + (func (export "f64_store") (param $value f64) (result f64) + (f64.store (i32.const 0) (get_local $value)) + (f64.reinterpret/i64 (call $i64_load_little (i32.const 0))) + ) +) + +(assert_return (invoke "i32_load16_s" (i32.const -1)) (i32.const -1)) +(assert_return (invoke "i32_load16_s" (i32.const -4242)) (i32.const -4242)) +(assert_return (invoke "i32_load16_s" (i32.const 42)) (i32.const 42)) +(assert_return (invoke "i32_load16_s" (i32.const 0x3210)) (i32.const 0x3210)) + +(assert_return (invoke "i32_load16_u" (i32.const -1)) (i32.const 0xFFFF)) +(assert_return (invoke "i32_load16_u" (i32.const -4242)) (i32.const 61294)) +(assert_return (invoke "i32_load16_u" (i32.const 42)) (i32.const 42)) +(assert_return (invoke "i32_load16_u" (i32.const 0xCAFE)) (i32.const 0xCAFE)) + +(assert_return (invoke "i32_load" (i32.const -1)) (i32.const -1)) +(assert_return (invoke "i32_load" (i32.const -42424242)) (i32.const -42424242)) +(assert_return (invoke "i32_load" (i32.const 42424242)) (i32.const 42424242)) +(assert_return (invoke "i32_load" (i32.const 0xABAD1DEA)) (i32.const 0xABAD1DEA)) + +(assert_return (invoke "i64_load16_s" (i64.const -1)) (i64.const -1)) +(assert_return (invoke "i64_load16_s" (i64.const -4242)) (i64.const -4242)) +(assert_return (invoke "i64_load16_s" (i64.const 42)) (i64.const 42)) +(assert_return (invoke "i64_load16_s" (i64.const 0x3210)) (i64.const 0x3210)) + +(assert_return (invoke "i64_load16_u" (i64.const -1)) (i64.const 0xFFFF)) +(assert_return (invoke "i64_load16_u" (i64.const -4242)) (i64.const 61294)) +(assert_return (invoke "i64_load16_u" (i64.const 42)) (i64.const 42)) +(assert_return (invoke "i64_load16_u" (i64.const 0xCAFE)) (i64.const 0xCAFE)) + +(assert_return (invoke "i64_load32_s" (i64.const -1)) (i64.const -1)) +(assert_return (invoke "i64_load32_s" (i64.const -42424242)) (i64.const -42424242)) +(assert_return (invoke "i64_load32_s" (i64.const 42424242)) (i64.const 42424242)) +(assert_return (invoke "i64_load32_s" (i64.const 0x12345678)) (i64.const 0x12345678)) + +(assert_return (invoke "i64_load32_u" (i64.const -1)) (i64.const 0xFFFFFFFF)) +(assert_return (invoke "i64_load32_u" (i64.const -42424242)) (i64.const 4252543054)) +(assert_return (invoke "i64_load32_u" (i64.const 42424242)) (i64.const 42424242)) +(assert_return (invoke "i64_load32_u" (i64.const 0xABAD1DEA)) (i64.const 0xABAD1DEA)) + +(assert_return (invoke "i64_load" (i64.const -1)) (i64.const -1)) +(assert_return (invoke "i64_load" (i64.const -42424242)) (i64.const -42424242)) +(assert_return (invoke "i64_load" (i64.const 0xABAD1DEA)) (i64.const 0xABAD1DEA)) +(assert_return (invoke "i64_load" (i64.const 0xABADCAFEDEAD1DEA)) (i64.const 0xABADCAFEDEAD1DEA)) + +(assert_return (invoke "f32_load" (f32.const -1)) (f32.const -1)) +(assert_return (invoke "f32_load" (f32.const 1234e-5)) (f32.const 1234e-5)) +(assert_return (invoke "f32_load" (f32.const 4242.4242)) (f32.const 4242.4242)) +(assert_return (invoke "f32_load" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) + +(assert_return (invoke "f64_load" (f64.const -1)) (f64.const -1)) +(assert_return (invoke "f64_load" (f64.const 123456789e-5)) (f64.const 123456789e-5)) +(assert_return (invoke "f64_load" (f64.const 424242.424242)) (f64.const 424242.424242)) +(assert_return (invoke "f64_load" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) + + +(assert_return (invoke "i32_store16" (i32.const -1)) (i32.const 0xFFFF)) +(assert_return (invoke "i32_store16" (i32.const -4242)) (i32.const 61294)) +(assert_return (invoke "i32_store16" (i32.const 42)) (i32.const 42)) +(assert_return (invoke "i32_store16" (i32.const 0xCAFE)) (i32.const 0xCAFE)) + +(assert_return (invoke "i32_store" (i32.const -1)) (i32.const -1)) +(assert_return (invoke "i32_store" (i32.const -4242)) (i32.const -4242)) +(assert_return (invoke "i32_store" (i32.const 42424242)) (i32.const 42424242)) +(assert_return (invoke "i32_store" (i32.const 0xDEADCAFE)) (i32.const 0xDEADCAFE)) + +(assert_return (invoke "i64_store16" (i64.const -1)) (i64.const 0xFFFF)) +(assert_return (invoke "i64_store16" (i64.const -4242)) (i64.const 61294)) +(assert_return (invoke "i64_store16" (i64.const 42)) (i64.const 42)) +(assert_return (invoke "i64_store16" (i64.const 0xCAFE)) (i64.const 0xCAFE)) + +(assert_return (invoke "i64_store32" (i64.const -1)) (i64.const 0xFFFFFFFF)) +(assert_return (invoke "i64_store32" (i64.const -4242)) (i64.const 4294963054)) +(assert_return (invoke "i64_store32" (i64.const 42424242)) (i64.const 42424242)) +(assert_return (invoke "i64_store32" (i64.const 0xDEADCAFE)) (i64.const 0xDEADCAFE)) + +(assert_return (invoke "i64_store" (i64.const -1)) (i64.const -1)) +(assert_return (invoke "i64_store" (i64.const -42424242)) (i64.const -42424242)) +(assert_return (invoke "i64_store" (i64.const 0xABAD1DEA)) (i64.const 0xABAD1DEA)) +(assert_return (invoke "i64_store" (i64.const 0xABADCAFEDEAD1DEA)) (i64.const 0xABADCAFEDEAD1DEA)) + +(assert_return (invoke "f32_store" (f32.const -1)) (f32.const -1)) +(assert_return (invoke "f32_store" (f32.const 1234e-5)) (f32.const 1234e-5)) +(assert_return (invoke "f32_store" (f32.const 4242.4242)) (f32.const 4242.4242)) +(assert_return (invoke "f32_store" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) + +(assert_return (invoke "f64_store" (f64.const -1)) (f64.const -1)) +(assert_return (invoke "f64_store" (f64.const 123456789e-5)) (f64.const 123456789e-5)) +(assert_return (invoke "f64_store" (f64.const 424242.424242)) (f64.const 424242.424242)) +(assert_return (invoke "f64_store" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) diff --git a/test/spec/exports.wast b/test/spec/exports.wast new file mode 100644 index 00000000000..862323b4b23 --- /dev/null +++ b/test/spec/exports.wast @@ -0,0 +1,199 @@ +;; Functions + +(module (func) (export "a" (func 0))) +(module (func) (export "a" (func 0)) (export "b" (func 0))) +(module (func) (func) (export "a" (func 0)) (export "b" (func 1))) + +(module (func (export "a"))) +;; NOT SUPPORTED IN BINARYEN +;; (module (func (export "a") (export "b") (export "c"))) +;; (module (func (export "a") (export "b") (param i32))) +(module (func) (export "a" (func 0))) +(module (func $a (export "a"))) +(module (func $a) (export "a" (func $a))) +(module (export "a" (func 0)) (func)) +(module (export "a" (func $a)) (func $a)) + +(module $Func + (export "e" (func $f)) + (func $f (param $n i32) (result i32) + (return (i32.add (get_local $n) (i32.const 1))) + ) +) +(assert_return (invoke "e" (i32.const 42)) (i32.const 43)) +(assert_return (invoke $Func "e" (i32.const 42)) (i32.const 43)) +(module) +(module $Other1) +(assert_return (invoke $Func "e" (i32.const 42)) (i32.const 43)) + +(assert_invalid + (module (func) (export "a" (func 1))) + "unknown function" +) +(assert_invalid + (module (func) (export "a" (func 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (func) (func) (export "a" (func 0)) (export "a" (func 1))) + "duplicate export name" +) +(assert_invalid + (module (func) (global i32 (i32.const 0)) (export "a" (func 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (func) (table 0 anyfunc) (export "a" (func 0)) (export "a" (table 0))) + "duplicate export name" +) +(assert_invalid + (module (func) (memory 0) (export "a" (func 0)) (export "a" (memory 0))) + "duplicate export name" +) + + +;; Globals + +(module (global i32 (i32.const 0)) (export "a" (global 0))) +(module (global i32 (i32.const 0)) (export "a" (global 0)) (export "b" (global 0))) +(module (global i32 (i32.const 0)) (global i32 (i32.const 0)) (export "a" (global 0)) (export "b" (global 1))) + +(module (global (export "a") i32 (i32.const 0))) +(module (global i32 (i32.const 0)) (export "a" (global 0))) +(module (global $a (export "a") i32 (i32.const 0))) +(module (global $a i32 (i32.const 0)) (export "a" (global $a))) +(module (export "a" (global 0)) (global i32 (i32.const 0))) +(module (export "a" (global $a)) (global $a i32 (i32.const 0))) + +(module $Global + (export "e" (global $g)) + (global $g i32 (i32.const 42)) +) +(assert_return (get "e") (i32.const 42)) +(assert_return (get $Global "e") (i32.const 42)) +(module) +(module $Other2) +(assert_return (get $Global "e") (i32.const 42)) + +(assert_invalid + (module (global i32 (i32.const 0)) (export "a" (global 1))) + "unknown global" +) +(assert_invalid + (module (global i32 (i32.const 0)) (export "a" (global 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (global i32 (i32.const 0)) (export "a" (global 0)) (export "a" (global 1))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (func) (export "a" (global 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (table 0 anyfunc) (export "a" (global 0)) (export "a" (table 0))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (memory 0) (export "a" (global 0)) (export "a" (memory 0))) + "duplicate export name" +) + + +;; Tables + +(module (table 0 anyfunc) (export "a" (table 0))) +(module (table 0 anyfunc) (export "a" (table 0)) (export "b" (table 0))) +;; No multiple tables yet. +;; (module (table 0 anyfunc) (table 0 anyfunc) (export "a" (table 0)) (export "b" (table 1))) + +(module (table (export "a") 0 anyfunc)) +(module (table (export "a") 0 1 anyfunc)) +(module (table 0 anyfunc) (export "a" (table 0))) +(module (table 0 1 anyfunc) (export "a" (table 0))) +(module (table $a (export "a") 0 anyfunc)) +(module (table $a (export "a") 0 1 anyfunc)) +(module (table $a 0 anyfunc) (export "a" (table $a))) +(module (table $a 0 1 anyfunc) (export "a" (table $a))) +(module (export "a" (table 0)) (table 0 anyfunc)) +(module (export "a" (table 0)) (table 0 1 anyfunc)) +(module (export "a" (table $a)) (table $a 0 anyfunc)) +(module (export "a" (table $a)) (table $a 0 1 anyfunc)) + +(; TODO: access table ;) + +(assert_invalid + (module (table 0 anyfunc) (export "a" (table 1))) + "unknown table" +) +(assert_invalid + (module (table 0 anyfunc) (export "a" (table 0)) (export "a" (table 0))) + "duplicate export name" +) +;; No multiple tables yet. +;; (assert_invalid +;; (module (table 0 anyfunc) (table 0 anyfunc) (export "a" (table 0)) (export "a" (table 1))) +;; "duplicate export name" +;; ) +(assert_invalid + (module (table 0 anyfunc) (func) (export "a" (table 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (table 0 anyfunc) (global i32 (i32.const 0)) (export "a" (table 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (table 0 anyfunc) (memory 0) (export "a" (table 0)) (export "a" (memory 0))) + "duplicate export name" +) + + +;; Memories + +(module (memory 0) (export "a" (memory 0))) +(module (memory 0) (export "a" (memory 0)) (export "b" (memory 0))) +;; No multiple memories yet. +;; (module (memory 0) (memory 0) (export "a" (memory 0)) (export "b" (memory 1))) + +(module (memory (export "a") 0)) +(module (memory (export "a") 0 1)) +(module (memory 0) (export "a" (memory 0))) +(module (memory 0 1) (export "a" (memory 0))) +(module (memory $a (export "a") 0)) +(module (memory $a (export "a") 0 1)) +(module (memory $a 0) (export "a" (memory $a))) +(module (memory $a 0 1) (export "a" (memory $a))) +(module (export "a" (memory 0)) (memory 0)) +(module (export "a" (memory 0)) (memory 0 1)) +(module (export "a" (memory $a)) (memory $a 0)) +(module (export "a" (memory $a)) (memory $a 0 1)) + +(; TODO: access memory ;) + +(assert_invalid + (module (memory 0) (export "a" (memory 1))) + "unknown memory" +) +(assert_invalid + (module (memory 0) (export "a" (memory 0)) (export "a" (memory 0))) + "duplicate export name" +) +;; No multiple memories yet. +;; (assert_invalid +;; (module (memory 0) (memory 0) (export "a" (memory 0)) (export "a" (memory 1))) +;; "duplicate export name" +;; ) +(assert_invalid + (module (memory 0) (func) (export "a" (memory 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (memory 0) (global i32 (i32.const 0)) (export "a" (memory 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (memory 0) (table 0 anyfunc) (export "a" (memory 0)) (export "a" (table 0))) + "duplicate export name" +) diff --git a/test/spec/extract-parts.sh b/test/spec/extract-parts.sh new file mode 100755 index 00000000000..6aac1d083b5 --- /dev/null +++ b/test/spec/extract-parts.sh @@ -0,0 +1,35 @@ +#!/bin/bash +set -e +set -u +set -o pipefail + +# This script extracts the modules from the testsuite test files into +# individual files in the following directories: +# - valid - valid wasm modules +# - invalid - wasm modules that fail to validate +# - malformed - wasm text tests that fail to parse + +wabt="../wabt" +wabtbin="$wabt/bin" + +mkdir -p valid invalid malformed +rm -f valid/*.wasm +rm -f invalid/*.wasm +rm -f malformed/*.wat + +for wast in *.wast; do + base="${wast##*/}" + json="invalid/${base%.wast}.json" + "$wabtbin/wast2json" "$wast" -o "$json" + rm "$json" +done + +mv invalid/*.wat malformed + +for wasm in invalid/*.wasm; do + if "$wabtbin/wasm2wat" "$wasm" -o invalid/t.wat 2>/dev/null && \ + "$wabtbin/wat2wasm" invalid/t.wat -o /dev/null 2>/dev/null ; then + mv "$wasm" valid + fi +done +rm invalid/t.wat diff --git a/test/spec/f32.wast b/test/spec/f32.wast new file mode 100644 index 00000000000..2595a4ac9a8 --- /dev/null +++ b/test/spec/f32.wast @@ -0,0 +1,2518 @@ +;; Test all the f32 operators on major boundary values and all special +;; values (except comparison and bitwise operators, which are tested in +;; f32_bitwise.wast and f32_cmp.wast). + +(module + (func (export "add") (param $x f32) (param $y f32) (result f32) (f32.add (get_local $x) (get_local $y))) + (func (export "sub") (param $x f32) (param $y f32) (result f32) (f32.sub (get_local $x) (get_local $y))) + (func (export "mul") (param $x f32) (param $y f32) (result f32) (f32.mul (get_local $x) (get_local $y))) + (func (export "div") (param $x f32) (param $y f32) (result f32) (f32.div (get_local $x) (get_local $y))) + (func (export "sqrt") (param $x f32) (result f32) (f32.sqrt (get_local $x))) + (func (export "min") (param $x f32) (param $y f32) (result f32) (f32.min (get_local $x) (get_local $y))) + (func (export "max") (param $x f32) (param $y f32) (result f32) (f32.max (get_local $x) (get_local $y))) + (func (export "ceil") (param $x f32) (result f32) (f32.ceil (get_local $x))) + (func (export "floor") (param $x f32) (result f32) (f32.floor (get_local $x))) + (func (export "trunc") (param $x f32) (result f32) (f32.trunc (get_local $x))) + (func (export "nearest") (param $x f32) (result f32) (f32.nearest (get_local $x))) +) + +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x0p+0) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const 0x0p+0) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x0p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x0p+0) (f32.const nan:0x200000))) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const 0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const 0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -0x1p-149)) (f32.const -0x1p-148)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const 0x1p-149)) (f32.const 0x1p-148)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1.000002p-126)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1.fffffcp-127)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1.000002p-126)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x1p-149) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const 0x1p-149) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p-149) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p-149) (f32.const nan:0x200000))) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const 0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const 0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1.000002p-126)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const 0x1p-149)) (f32.const -0x1.fffffcp-127)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -0x1p-149)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1.000002p-126)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -0x1p-126)) (f32.const -0x1p-125)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const 0x1p-126)) (f32.const 0x1p-125)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x1p-126) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const 0x1p-126) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p-126) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p-126) (f32.const nan:0x200000))) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const 0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const 0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const 0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const 0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const 0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1.8p+0)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1.8p+0)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.b21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.721fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.721fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.b21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x1p-1) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const 0x1p-1) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p-1) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p-1) (f32.const nan:0x200000))) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const 0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const 0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const 0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const 0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1.8p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1.8p+0)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+1)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const 0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+1)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.d21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.521fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.521fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.d21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x1p+0) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const 0x1p+0) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1p+0) (f32.const nan:0x200000))) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1.b21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const -0x1.721fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const 0x1.721fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1.b21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1.d21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const -0x1.521fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const 0x1.521fb6p+2)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1.d21fb6p+2)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+3)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+3)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -0x1.fffffep+127) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const 0x1.fffffep+127) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const 0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return (invoke "add" (f32.const -inf) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const 0x1p-126)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const -0x1p-126)) (f32.const inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const 0x1p-1)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const -0x1p-1)) (f32.const inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const -0x1p+0)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const 0x1p+0)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const -0x1p+0)) (f32.const inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const 0x1p+0)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const -0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "add" (f32.const inf) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "add" (f32.const -inf) (f32.const -inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -inf) (f32.const inf))) +(assert_return_canonical_nan (invoke "add" (f32.const inf) (f32.const -inf))) +(assert_return (invoke "add" (f32.const inf) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "add" (f32.const -inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const -nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "add" (f32.const -nan:0x200000) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "add" (f32.const nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "add" (f32.const nan:0x200000) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const 0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const 0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const 0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const 0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -0x0p+0) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x0p+0) (f32.const inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x0p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x0p+0) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const 0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const 0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const 0x1p-149)) (f32.const -0x1p-148)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -0x1p-149)) (f32.const 0x1p-148)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -0x1p-126)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const 0x1p-126)) (f32.const -0x1.000002p-126)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -0x1p-126)) (f32.const 0x1.000002p-126)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const 0x1p-126)) (f32.const -0x1.fffffcp-127)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -0x1p-149) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x1p-149) (f32.const inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p-149) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p-149) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const 0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const 0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1.fffffcp-127)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const 0x1p-149)) (f32.const -0x1.000002p-126)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -0x1p-149)) (f32.const 0x1.000002p-126)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const 0x1p-126)) (f32.const -0x1p-125)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -0x1p-126)) (f32.const 0x1p-125)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -0x1p-126) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x1p-126) (f32.const inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p-126) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p-126) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const 0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const 0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const 0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const 0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const 0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const 0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const 0x1p+0)) (f32.const -0x1.8p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -0x1p+0)) (f32.const 0x1.8p+0)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const 0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.721fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.b21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.b21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.721fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -0x1p-1) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x1p-1) (f32.const inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p-1) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p-1) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const 0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const 0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const 0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const 0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const 0x1p-1)) (f32.const -0x1.8p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -0x1p-1)) (f32.const 0x1.8p+0)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const 0x1p+0)) (f32.const -0x1p+1)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -0x1p+0)) (f32.const 0x1p+1)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const 0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.521fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.d21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.d21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.521fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -0x1p+0) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x1p+0) (f32.const inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1p+0) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1.721fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const -0x1.b21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const 0x1.b21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1.721fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1.521fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const -0x1.d21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const 0x1.d21fb6p+2)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1.521fb6p+2)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+3)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+3)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return (invoke "sub" (f32.const -inf) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const 0x1p-126)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -0x1p-126)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const 0x1p-1)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -0x1p-1)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const -0x1p+0)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const 0x1p+0)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -0x1p+0)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const 0x1p+0)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const -inf) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const -inf) (f32.const -inf))) +(assert_return (invoke "sub" (f32.const -inf) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "sub" (f32.const inf) (f32.const -inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "sub" (f32.const inf) (f32.const inf))) +(assert_return_canonical_nan (invoke "sub" (f32.const -inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const -nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const -nan:0x200000) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sub" (f32.const nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "sub" (f32.const nan:0x200000) (f32.const nan:0x200000))) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const 0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const -0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const 0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const -0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const 0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const -0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const 0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const -0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const 0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x0p+0) (f32.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x0p+0) (f32.const inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x0p+0) (f32.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x0p+0) (f32.const inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x0p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x0p+0) (f32.const nan:0x200000))) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const 0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const 0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const 0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const 0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.8p-147)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.8p-147)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.8p-147)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.8p-147)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1p-149) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p-149) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p-149) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p-149) (f32.const nan:0x200000))) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const 0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const 0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -0x1p-1)) (f32.const 0x1p-127)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const 0x1p-1)) (f32.const -0x1p-127)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-127)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-127)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const 0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1p-126) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p-126) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p-126) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p-126) (f32.const nan:0x200000))) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const 0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -0x1p-126)) (f32.const 0x1p-127)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const 0x1p-126)) (f32.const -0x1p-127)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-127)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-127)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -0x1p-1)) (f32.const 0x1p-2)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const 0x1p-1)) (f32.const -0x1p-2)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p-2)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p-2)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const 0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1p-1) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p-1) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p-1) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p-1) (f32.const nan:0x200000))) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const 0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const 0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1p+0) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1p+0) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1p+0) (f32.const nan:0x200000))) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const 0x1.8p-147)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const -0x1.8p-147)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1.8p-147)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1.8p-147)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const 0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const -0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1.921fb6p-124)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const 0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const -0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1.921fb6p+1)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.3bd3cep+5)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.3bd3cep+5)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.3bd3cep+5)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.3bd3cep+5)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const 0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const -0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1.fffffep-22)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const 0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const -0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1.fffffep+1)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const 0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const -0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1.fffffep+126)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -inf) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const -inf) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const inf) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const inf) (f32.const 0x0p+0))) +(assert_return (invoke "mul" (f32.const -inf) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const -0x1p-126)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const 0x1p-126)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const -0x1p-1)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const 0x1p-1)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const -0x1p+0)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const 0x1p+0)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const -0x1p+0)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const 0x1p+0)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "mul" (f32.const -inf) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "mul" (f32.const inf) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "mul" (f32.const -inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const -nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const -nan:0x200000) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "mul" (f32.const nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "mul" (f32.const nan:0x200000) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x0p+0) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x0p+0) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x0p+0) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x0p+0) (f32.const 0x0p+0))) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const 0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const -0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const 0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const -0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const 0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const -0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const 0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const -0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const 0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x0p+0) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x0p+0) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f32.const -0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x0p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x0p+0) (f32.const nan:0x200000))) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const 0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const 0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -0x1p-126)) (f32.const 0x1p-23)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const 0x1p-126)) (f32.const -0x1p-23)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1p-23)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1p-23)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -0x1p-1)) (f32.const 0x1p-148)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const 0x1p-1)) (f32.const -0x1p-148)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-148)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-148)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const 0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-149) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-149) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p-149) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p-149) (f32.const nan:0x200000))) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -0x1p-149)) (f32.const 0x1p+23)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const 0x1p-149)) (f32.const -0x1p+23)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1p+23)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1p+23)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const 0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const 0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -0x1p-1)) (f32.const 0x1p-125)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const 0x1p-1)) (f32.const -0x1p-125)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-125)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-125)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const 0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.45f3p-129)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.45f3p-129)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.45f3p-129)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.45f3p-129)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-126) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-126) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p-126) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p-126) (f32.const nan:0x200000))) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -0x1p-126)) (f32.const 0x1p+125)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const 0x1p-126)) (f32.const -0x1p+125)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p+125)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p+125)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const 0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const 0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.45f306p-4)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.45f306p-4)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.45f306p-4)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.45f306p-4)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const 0x1p-129)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const -0x1p-129)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-129)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-129)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p-1) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p-1) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p-1) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p-1) (f32.const nan:0x200000))) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -0x1p-126)) (f32.const 0x1p+126)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const 0x1p-126)) (f32.const -0x1p+126)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p+126)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p+126)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -0x1p-1)) (f32.const 0x1p+1)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const 0x1p-1)) (f32.const -0x1p+1)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p+1)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p+1)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.45f306p-3)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.45f306p-3)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.45f306p-3)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.45f306p-3)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x1p-128)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x1p-128)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-128)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-128)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1p+0) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1p+0) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1p+0) (f32.const nan:0x200000))) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const 0x1.921fb6p+3)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const -0x1.921fb6p+3)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1.921fb6p+3)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1.921fb6p+3)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const 0x1.921fb8p-126)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const -0x1.921fb8p-126)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.921fb8p-126)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.921fb8p-126)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.45f304p+125)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.45f304p+125)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.45f304p+125)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.45f304p+125)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -0x1p+0)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x1p+0)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "div" (f32.const -0x1.fffffep+127) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "div" (f32.const 0x1.fffffep+127) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const 0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return (invoke "div" (f32.const -inf) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const -0x1p-126)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const 0x1p-126)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const -0x1p-1)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const 0x1p-1)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const -0x1p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const 0x1p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const -0x1p+0)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const 0x1p+0)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "div" (f32.const -inf) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "div" (f32.const inf) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return_canonical_nan (invoke "div" (f32.const -inf) (f32.const -inf))) +(assert_return_canonical_nan (invoke "div" (f32.const -inf) (f32.const inf))) +(assert_return_canonical_nan (invoke "div" (f32.const inf) (f32.const -inf))) +(assert_return_canonical_nan (invoke "div" (f32.const inf) (f32.const inf))) +(assert_return_canonical_nan (invoke "div" (f32.const -inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const -nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "div" (f32.const -nan:0x200000) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "div" (f32.const nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "div" (f32.const nan:0x200000) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const 0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const 0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const 0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const 0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const 0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -0x0p+0) (f32.const inf)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const 0x0p+0) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "min" (f32.const -0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x0p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x0p+0) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const 0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const 0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const 0x1p-126)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const 0x1p-1)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const 0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -0x1p-149) (f32.const inf)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const 0x1p-149) (f32.const inf)) (f32.const 0x1p-149)) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p-149) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p-149) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const 0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const 0x1p-149)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const 0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const 0x1p-1)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const 0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -0x1p-126) (f32.const inf)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const 0x1p-126) (f32.const inf)) (f32.const 0x1p-126)) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p-126) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p-126) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const 0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const 0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const 0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const 0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -0x1p-1) (f32.const inf)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const 0x1p-1) (f32.const inf)) (f32.const 0x1p-1)) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p-1) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p-1) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const 0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const 0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const 0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const 0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -0x1p+0) (f32.const inf)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const 0x1p+0) (f32.const inf)) (f32.const 0x1p+0)) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1p+0) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const inf)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const inf)) (f32.const 0x1.921fb6p+2)) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -0x1.fffffep+127) (f32.const inf)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const 0x1.fffffep+127) (f32.const inf)) (f32.const 0x1.fffffep+127)) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const 0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return (invoke "min" (f32.const -inf) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const 0x0p+0)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "min" (f32.const inf) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "min" (f32.const -inf) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const 0x1p-149)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "min" (f32.const inf) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "min" (f32.const -inf) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const 0x1p-126)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "min" (f32.const inf) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "min" (f32.const -inf) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const 0x1p-1)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "min" (f32.const inf) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "min" (f32.const -inf) (f32.const -0x1p+0)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const 0x1p+0)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "min" (f32.const inf) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "min" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const inf) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "min" (f32.const -inf) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const 0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const inf) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "min" (f32.const -inf) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const -inf) (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "min" (f32.const inf) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "min" (f32.const -inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const -nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "min" (f32.const -nan:0x200000) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "min" (f32.const nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "min" (f32.const nan:0x200000) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x0p+0) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const -inf)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x0p+0) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x0p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x0p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x0p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x0p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x0p+0) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const 0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -0x1p-126)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -0x1p-1)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const -inf)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-149) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const -inf)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-149) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p-149) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p-149) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p-149) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p-149) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p-149) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const 0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -0x1p-149)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -0x1p-1)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const -inf)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-126) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const -inf)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-126) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p-126) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p-126) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p-126) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p-126) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p-126) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const 0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const 0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const -inf)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p-1) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const -inf)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p-1) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p-1) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p-1) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p-1) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p-1) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p-1) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const 0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const -inf)) (f32.const -0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1p+0) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const -inf)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1p+0) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1p+0) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p+0) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p+0) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1p+0) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1p+0) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -inf)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -0x1.fffffep+127) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -inf)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const 0x1.fffffep+127) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const 0x1.fffffep+127) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000))) +(assert_return (invoke "max" (f32.const -inf) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "max" (f32.const -inf) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "max" (f32.const inf) (f32.const -0x0p+0)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "max" (f32.const -inf) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "max" (f32.const inf) (f32.const -0x1p-149)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "max" (f32.const -inf) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "max" (f32.const inf) (f32.const -0x1p-126)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "max" (f32.const -inf) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "max" (f32.const inf) (f32.const -0x1p-1)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "max" (f32.const -inf) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "max" (f32.const inf) (f32.const -0x1p+0)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const 0x1p+0)) (f32.const inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "max" (f32.const inf) (f32.const -0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const -inf) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "max" (f32.const inf) (f32.const -0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "max" (f32.const -inf) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "max" (f32.const inf) (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "max" (f32.const -inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const inf) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const inf) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const inf) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const inf) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const 0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -0x1p-149))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -0x1p-149))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const 0x1p-149))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const 0x1p-149))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -0x1p-126))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -0x1p-126))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const 0x1p-126))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const 0x1p-126))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const 0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const 0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const 0x1.921fb6p+2))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const 0x1.fffffep+127))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -inf))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -inf))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const inf))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const inf))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const -nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "max" (f32.const -nan:0x200000) (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan) (f32.const -nan:0x200000))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "max" (f32.const nan) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan) (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "max" (f32.const nan:0x200000) (f32.const nan:0x200000))) +(assert_return (invoke "sqrt" (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "sqrt" (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -0x1p-149))) +(assert_return (invoke "sqrt" (f32.const 0x1p-149)) (f32.const 0x1.6a09e6p-75)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -0x1p-126))) +(assert_return (invoke "sqrt" (f32.const 0x1p-126)) (f32.const 0x1p-63)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -0x1p-1))) +(assert_return (invoke "sqrt" (f32.const 0x1p-1)) (f32.const 0x1.6a09e6p-1)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -0x1p+0))) +(assert_return (invoke "sqrt" (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -0x1.921fb6p+2))) +(assert_return (invoke "sqrt" (f32.const 0x1.921fb6p+2)) (f32.const 0x1.40d932p+1)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -0x1.fffffep+127))) +(assert_return (invoke "sqrt" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+63)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -inf))) +(assert_return (invoke "sqrt" (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "sqrt" (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "sqrt" (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "sqrt" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "sqrt" (f32.const nan:0x200000))) +(assert_return (invoke "floor" (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "floor" (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "floor" (f32.const -0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "floor" (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "floor" (f32.const -0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "floor" (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "floor" (f32.const -0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "floor" (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "floor" (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "floor" (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "floor" (f32.const -0x1.921fb6p+2)) (f32.const -0x1.cp+2)) +(assert_return (invoke "floor" (f32.const 0x1.921fb6p+2)) (f32.const 0x1.8p+2)) +(assert_return (invoke "floor" (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "floor" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "floor" (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "floor" (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "floor" (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "floor" (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "floor" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "floor" (f32.const nan:0x200000))) +(assert_return (invoke "ceil" (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "ceil" (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "ceil" (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "ceil" (f32.const 0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "ceil" (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "ceil" (f32.const 0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "ceil" (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "ceil" (f32.const 0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "ceil" (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "ceil" (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "ceil" (f32.const -0x1.921fb6p+2)) (f32.const -0x1.8p+2)) +(assert_return (invoke "ceil" (f32.const 0x1.921fb6p+2)) (f32.const 0x1.cp+2)) +(assert_return (invoke "ceil" (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "ceil" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "ceil" (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "ceil" (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "ceil" (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "ceil" (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "ceil" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "ceil" (f32.const nan:0x200000))) +(assert_return (invoke "trunc" (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "trunc" (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "trunc" (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "trunc" (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "trunc" (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "trunc" (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "trunc" (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "trunc" (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "trunc" (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "trunc" (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "trunc" (f32.const -0x1.921fb6p+2)) (f32.const -0x1.8p+2)) +(assert_return (invoke "trunc" (f32.const 0x1.921fb6p+2)) (f32.const 0x1.8p+2)) +(assert_return (invoke "trunc" (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "trunc" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "trunc" (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "trunc" (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "trunc" (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "trunc" (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "trunc" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "trunc" (f32.const nan:0x200000))) +(assert_return (invoke "nearest" (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "nearest" (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "nearest" (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "nearest" (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "nearest" (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "nearest" (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "nearest" (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "nearest" (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "nearest" (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "nearest" (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "nearest" (f32.const -0x1.921fb6p+2)) (f32.const -0x1.8p+2)) +(assert_return (invoke "nearest" (f32.const 0x1.921fb6p+2)) (f32.const 0x1.8p+2)) +(assert_return (invoke "nearest" (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "nearest" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "nearest" (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "nearest" (f32.const inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "nearest" (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "nearest" (f32.const -nan:0x200000))) +(assert_return_canonical_nan (invoke "nearest" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "nearest" (f32.const nan:0x200000))) diff --git a/test/spec/f32_bitwise.wast b/test/spec/f32_bitwise.wast new file mode 100644 index 00000000000..12bdb866e06 --- /dev/null +++ b/test/spec/f32_bitwise.wast @@ -0,0 +1,369 @@ +;; Test all the f32 bitwise operators on major boundary values and all special +;; values. + +(module + (func (export "abs") (param $x f32) (result f32) (f32.abs (get_local $x))) + (func (export "neg") (param $x f32) (result f32) (f32.neg (get_local $x))) + (func (export "copysign") (param $x f32) (param $y f32) (result f32) (f32.copysign (get_local $x) (get_local $y))) +) + +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -0x1p-149)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const 0x1p-149)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -0x1p-126)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const 0x1p-126)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -0x1p-1)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const 0x1p-1)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const 0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -0x1p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const 0x1p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -inf)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const inf)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const -nan)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x0p+0) (f32.const nan)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const -nan)) (f32.const -0x0p+0)) +(assert_return (invoke "copysign" (f32.const 0x0p+0) (f32.const nan)) (f32.const 0x0p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const 0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -0x0p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const 0x0p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -0x1p-126)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const 0x1p-126)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -0x1p-1)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const 0x1p-1)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -0x1p+0)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const 0x1p+0)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -inf)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const inf)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -inf)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const inf)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const -nan)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-149) (f32.const nan)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const -nan)) (f32.const -0x1p-149)) +(assert_return (invoke "copysign" (f32.const 0x1p-149) (f32.const nan)) (f32.const 0x1p-149)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const 0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -0x0p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const 0x0p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -0x1p-149)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const 0x1p-149)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -0x1p-1)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const 0x1p-1)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -0x1p+0)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const 0x1p+0)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -inf)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const inf)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -inf)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const inf)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const -nan)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-126) (f32.const nan)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const -nan)) (f32.const -0x1p-126)) +(assert_return (invoke "copysign" (f32.const 0x1p-126) (f32.const nan)) (f32.const 0x1p-126)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const 0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -0x0p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const 0x0p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const 0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -0x1p-149)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const 0x1p-149)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -0x1p-126)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const 0x1p-126)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -0x1p+0)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const 0x1p+0)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -inf)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const inf)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -inf)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const inf)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const -nan)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p-1) (f32.const nan)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const -nan)) (f32.const -0x1p-1)) +(assert_return (invoke "copysign" (f32.const 0x1p-1) (f32.const nan)) (f32.const 0x1p-1)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const 0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -0x0p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const 0x0p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -0x1p-149)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const 0x1p-149)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -0x1p-126)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const 0x1p-126)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -0x1p-1)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const 0x1p-1)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -inf)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const inf)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -inf)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const inf)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const -nan)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1p+0) (f32.const nan)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const -nan)) (f32.const -0x1p+0)) +(assert_return (invoke "copysign" (f32.const 0x1p+0) (f32.const nan)) (f32.const 0x1p+0)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const inf)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const inf)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const -nan)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.921fb6p+2) (f32.const nan)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const -nan)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const 0x1.921fb6p+2) (f32.const nan)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -inf)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const inf)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -inf)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const inf)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const -nan)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -0x1.fffffep+127) (f32.const nan)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const -nan)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const 0x1.fffffep+127) (f32.const nan)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -0x0p+0)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const 0x0p+0)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -0x1p-149)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const 0x1p-149)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -0x1p-126)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const 0x1p-126)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -0x1p-1)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const 0x1p-1)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -0x1p+0)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const 0x1p+0)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -0x1p+0)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const 0x1p+0)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -0x1.921fb6p+2)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const 0x1.921fb6p+2)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -0x1.fffffep+127)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const 0x1.fffffep+127)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -inf)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const inf)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const -nan)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const -inf) (f32.const nan)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const -nan)) (f32.const -inf)) +(assert_return (invoke "copysign" (f32.const inf) (f32.const nan)) (f32.const inf)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -0x0p+0)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const 0x0p+0)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -0x0p+0)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const 0x0p+0)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -0x1p-149)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const 0x1p-149)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -0x1p-149)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const 0x1p-149)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -0x1p-126)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const 0x1p-126)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -0x1p-126)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const 0x1p-126)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -0x1p-1)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const 0x1p-1)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -0x1p-1)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const 0x1p-1)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -0x1p+0)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const 0x1p+0)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -0x1p+0)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const 0x1p+0)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -0x1.921fb6p+2)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const 0x1.921fb6p+2)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -0x1.921fb6p+2)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const 0x1.921fb6p+2)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -0x1.fffffep+127)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const 0x1.fffffep+127)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -0x1.fffffep+127)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const 0x1.fffffep+127)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -inf)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const inf)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -inf)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const inf)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const -nan)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const -nan) (f32.const nan)) (f32.const nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const -nan)) (f32.const -nan)) +(assert_return (invoke "copysign" (f32.const nan) (f32.const nan)) (f32.const nan)) +(assert_return (invoke "abs" (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "abs" (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "abs" (f32.const -0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "abs" (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "abs" (f32.const -0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "abs" (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "abs" (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "abs" (f32.const 0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "abs" (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "abs" (f32.const 0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "abs" (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "abs" (f32.const 0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "abs" (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "abs" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "abs" (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "abs" (f32.const inf)) (f32.const inf)) +(assert_return (invoke "abs" (f32.const -nan)) (f32.const nan)) +(assert_return (invoke "abs" (f32.const nan)) (f32.const nan)) +(assert_return (invoke "neg" (f32.const -0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "neg" (f32.const 0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "neg" (f32.const -0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "neg" (f32.const 0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "neg" (f32.const -0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "neg" (f32.const 0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "neg" (f32.const -0x1p-1)) (f32.const 0x1p-1)) +(assert_return (invoke "neg" (f32.const 0x1p-1)) (f32.const -0x1p-1)) +(assert_return (invoke "neg" (f32.const -0x1p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "neg" (f32.const 0x1p+0)) (f32.const -0x1p+0)) +(assert_return (invoke "neg" (f32.const -0x1.921fb6p+2)) (f32.const 0x1.921fb6p+2)) +(assert_return (invoke "neg" (f32.const 0x1.921fb6p+2)) (f32.const -0x1.921fb6p+2)) +(assert_return (invoke "neg" (f32.const -0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "neg" (f32.const 0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "neg" (f32.const -inf)) (f32.const inf)) +(assert_return (invoke "neg" (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "neg" (f32.const -nan)) (f32.const nan)) +(assert_return (invoke "neg" (f32.const nan)) (f32.const -nan)) diff --git a/test/spec/f32_cmp.wast b/test/spec/f32_cmp.wast new file mode 100644 index 00000000000..5bae18bcd8c --- /dev/null +++ b/test/spec/f32_cmp.wast @@ -0,0 +1,2412 @@ +;; Test all the f32 comparison operators on major boundary values and all +;; special values. + +(module + (func (export "eq") (param $x f32) (param $y f32) (result i32) (f32.eq (get_local $x) (get_local $y))) + (func (export "ne") (param $x f32) (param $y f32) (result i32) (f32.ne (get_local $x) (get_local $y))) + (func (export "lt") (param $x f32) (param $y f32) (result i32) (f32.lt (get_local $x) (get_local $y))) + (func (export "le") (param $x f32) (param $y f32) (result i32) (f32.le (get_local $x) (get_local $y))) + (func (export "gt") (param $x f32) (param $y f32) (result i32) (f32.gt (get_local $x) (get_local $y))) + (func (export "ge") (param $x f32) (param $y f32) (result i32) (f32.ge (get_local $x) (get_local $y))) +) + +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const -nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "eq" (f32.const nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x0p+0) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x0p+0) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-149) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-149) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-126) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-126) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p-1) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p-1) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1p+0) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1p+0) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -inf) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const inf) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const -nan:0x200000) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const -nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "ne" (f32.const nan:0x200000) (f32.const nan:0x200000)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const -nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "lt" (f32.const nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const inf) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const -nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "le" (f32.const nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f32.const inf) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const -nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "gt" (f32.const nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x0p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-149) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-126) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p-1) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1p+0) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.921fb6p+2) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const 0x1.fffffep+127) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const 0x1p-126)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const 0x1.921fb6p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const 0x1.fffffep+127)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const inf) (f32.const inf)) (i32.const 1)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const inf) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const 0x1p-126)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const 0x1.921fb6p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const 0x1.fffffep+127)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const -nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const -nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan) (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "ge" (f32.const nan:0x200000) (f32.const nan:0x200000)) (i32.const 0)) diff --git a/test/spec/f64.wast b/test/spec/f64.wast new file mode 100644 index 00000000000..50db4e708d2 --- /dev/null +++ b/test/spec/f64.wast @@ -0,0 +1,2518 @@ +;; Test all the f64 operators on major boundary values and all special +;; values (except comparison and bitwise operators, which are tested in +;; f64_bitwise.wast and f64_cmp.wast). + +(module + (func (export "add") (param $x f64) (param $y f64) (result f64) (f64.add (get_local $x) (get_local $y))) + (func (export "sub") (param $x f64) (param $y f64) (result f64) (f64.sub (get_local $x) (get_local $y))) + (func (export "mul") (param $x f64) (param $y f64) (result f64) (f64.mul (get_local $x) (get_local $y))) + (func (export "div") (param $x f64) (param $y f64) (result f64) (f64.div (get_local $x) (get_local $y))) + (func (export "sqrt") (param $x f64) (result f64) (f64.sqrt (get_local $x))) + (func (export "min") (param $x f64) (param $y f64) (result f64) (f64.min (get_local $x) (get_local $y))) + (func (export "max") (param $x f64) (param $y f64) (result f64) (f64.max (get_local $x) (get_local $y))) + (func (export "ceil") (param $x f64) (result f64) (f64.ceil (get_local $x))) + (func (export "floor") (param $x f64) (result f64) (f64.floor (get_local $x))) + (func (export "trunc") (param $x f64) (result f64) (f64.trunc (get_local $x))) + (func (export "nearest") (param $x f64) (result f64) (f64.nearest (get_local $x))) +) + +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x0p+0) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const 0x0p+0) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000002p-1022)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000002p-1022)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x1.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x0.fffffffffffffp-1022)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x0.fffffffffffffp-1022)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x1.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.fffffffffffffp-1022)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.fffffffffffffp-1022)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.0000000000001p-1022)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1021)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1021)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x1p-1022) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const 0x1p-1022) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const 0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const 0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1.8p+0)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1.8p+0)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.b21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.721fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.721fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.b21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x1p-1) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const 0x1p-1) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const 0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const 0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1.8p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1.8p+0)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+1)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const 0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+1)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.d21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.521fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.521fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.d21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x1p+0) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const 0x1p+0) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1.b21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const -0x1.721fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const 0x1.721fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1.b21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1.d21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const -0x1.521fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const 0x1.521fb54442d18p+2)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1.d21fb54442d18p+2)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+3)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+3)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return (invoke "add" (f64.const -inf) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const 0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const -0x1p-1022)) (f64.const inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const 0x1p-1)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const -0x1p-1)) (f64.const inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const -0x1p+0)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const 0x1p+0)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const -0x1p+0)) (f64.const inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const 0x1p+0)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "add" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "add" (f64.const -inf) (f64.const -inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -inf) (f64.const inf))) +(assert_return_canonical_nan (invoke "add" (f64.const inf) (f64.const -inf))) +(assert_return (invoke "add" (f64.const inf) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "add" (f64.const -inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const -nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "add" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "add" (f64.const nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "add" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -0x0p+0) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x0p+0) (f64.const inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.0000000000002p-1022)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000002p-1022)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const 0x0.fffffffffffffp-1022)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const -0x1.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const 0x1.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const -0x0.fffffffffffffp-1022)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.fffffffffffffp-1022)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.0000000000001p-1022)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.fffffffffffffp-1022)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (f64.const -0x1p-1021)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (f64.const 0x1p-1021)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -0x1p-1022) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x1p-1022) (f64.const inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const 0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const 0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const 0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const 0x1p+0)) (f64.const -0x1.8p+0)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -0x1p+0)) (f64.const 0x1.8p+0)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const 0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.721fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.b21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.b21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.721fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -0x1p-1) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x1p-1) (f64.const inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const 0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const 0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const 0x1p-1)) (f64.const -0x1.8p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -0x1p-1)) (f64.const 0x1.8p+0)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const 0x1p+0)) (f64.const -0x1p+1)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -0x1p+0)) (f64.const 0x1p+1)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const 0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.521fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.d21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.d21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.521fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -0x1p+0) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x1p+0) (f64.const inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1.721fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const -0x1.b21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const 0x1.b21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1.721fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1.521fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const -0x1.d21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const 0x1.d21fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1.521fb54442d18p+2)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+3)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+3)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sub" (f64.const -inf) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const 0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -0x1p-1022)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const 0x1p-1)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -0x1p-1)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const -0x1p+0)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const 0x1p+0)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -0x1p+0)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const 0x1p+0)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const -inf) (f64.const -inf))) +(assert_return (invoke "sub" (f64.const -inf) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "sub" (f64.const inf) (f64.const -inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "sub" (f64.const inf) (f64.const inf))) +(assert_return_canonical_nan (invoke "sub" (f64.const -inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const -nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sub" (f64.const nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "sub" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const -0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const 0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const -0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const 0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const -0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const 0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x0p+0) (f64.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x0p+0) (f64.const inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x0p+0) (f64.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x0p+0) (f64.const inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (f64.const 0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (f64.const -0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1p-1022) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1p-1022) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (f64.const 0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (f64.const -0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x0.8p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -0x1p-1)) (f64.const 0x1p-2)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const 0x1p-1)) (f64.const -0x1p-2)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p-2)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p-2)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const 0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1p-1) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1p-1) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1p+0) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1p+0) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000006p-1022)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const 0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const -0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1.921fb54442d18p-1020)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const 0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const -0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1.921fb54442d18p+1)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.3bd3cc9be45dep+5)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.3bd3cc9be45dep+5)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.3bd3cc9be45dep+5)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.3bd3cc9be45dep+5)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp-51)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const 0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const -0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1.fffffffffffffp+1)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const 0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const -0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1.fffffffffffffp+1022)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -inf) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const -inf) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const inf) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const inf) (f64.const 0x0p+0))) +(assert_return (invoke "mul" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const -0x1p-1022)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const 0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const -0x1p-1)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const 0x1p-1)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const -0x1p+0)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const 0x1p+0)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const -0x1p+0)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const 0x1p+0)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "mul" (f64.const -inf) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "mul" (f64.const inf) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "mul" (f64.const -inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const -nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "mul" (f64.const nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "mul" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x0p+0) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x0p+0) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x0p+0) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x0p+0) (f64.const 0x0p+0))) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const -0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const 0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const -0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const 0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const -0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const 0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0p+0) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0p+0) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f64.const -0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const 0x1p-52)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const -0x1p-52)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-52)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-52)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const 0x0.0000000000002p-1022)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const -0x0.0000000000002p-1022)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x0.0000000000002p-1022)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x0.0000000000002p-1022)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p+52)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p+52)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+52)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+52)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (f64.const 0x1p-1021)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (f64.const -0x1p-1021)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1021)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1021)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0.28be60db9391p-1022)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x0.28be60db9391p-1022)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0.28be60db9391p-1022)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0.28be60db9391p-1022)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1022) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1022) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (f64.const 0x1p+1021)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (f64.const -0x1p+1021)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p+1021)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p+1021)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const 0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const 0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.45f306dc9c883p-4)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.45f306dc9c883p-4)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.45f306dc9c883p-4)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.45f306dc9c883p-4)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0.2p-1022)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0.2p-1022)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0.2p-1022)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.2p-1022)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x1p-1) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p-1) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (f64.const 0x1p+1022)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (f64.const -0x1p+1022)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p+1022)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p+1022)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -0x1p-1)) (f64.const 0x1p+1)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const 0x1p-1)) (f64.const -0x1p+1)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p+1)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p+1)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.45f306dc9c883p-3)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.45f306dc9c883p-3)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.45f306dc9c883p-3)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.45f306dc9c883p-3)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0.4p-1022)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0.4p-1022)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0.4p-1022)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.4p-1022)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x1p+0) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1p+0) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const 0x1.921fb54442d18p+3)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const -0x1.921fb54442d18p+3)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1.921fb54442d18p+3)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1.921fb54442d18p+3)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.921fb54442d19p-1022)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.921fb54442d19p-1022)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.921fb54442d19p-1022)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.921fb54442d19p-1022)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.45f306dc9c882p+1021)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.45f306dc9c882p+1021)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.45f306dc9c882p+1021)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.45f306dc9c882p+1021)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p+0)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p+0)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return (invoke "div" (f64.const -inf) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const -0x1p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const 0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const -0x1p-1)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const 0x1p-1)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const -0x1p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const 0x1p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const -0x1p+0)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const 0x1p+0)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "div" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "div" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return_canonical_nan (invoke "div" (f64.const -inf) (f64.const -inf))) +(assert_return_canonical_nan (invoke "div" (f64.const -inf) (f64.const inf))) +(assert_return_canonical_nan (invoke "div" (f64.const inf) (f64.const -inf))) +(assert_return_canonical_nan (invoke "div" (f64.const inf) (f64.const inf))) +(assert_return_canonical_nan (invoke "div" (f64.const -inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const -nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "div" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "div" (f64.const nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "div" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const 0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const 0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const 0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -0x0p+0) (f64.const inf)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const 0x0p+0) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "min" (f64.const -0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (f64.const 0x0.0000000000001p-1022)) +(assert_return_canonical_nan (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -0x1p-1022) (f64.const inf)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const 0x1p-1022) (f64.const inf)) (f64.const 0x1p-1022)) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const 0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const 0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -0x1p-1) (f64.const inf)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const 0x1p-1) (f64.const inf)) (f64.const 0x1p-1)) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const 0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const 0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -0x1p+0) (f64.const inf)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const 0x1p+0) (f64.const inf)) (f64.const 0x1p+0)) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return (invoke "min" (f64.const -inf) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const 0x0p+0)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "min" (f64.const inf) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "min" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "min" (f64.const -inf) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const 0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "min" (f64.const inf) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "min" (f64.const -inf) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const 0x1p-1)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "min" (f64.const inf) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "min" (f64.const -inf) (f64.const -0x1p+0)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const 0x1p+0)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "min" (f64.const inf) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "min" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "min" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "min" (f64.const -inf) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const -inf) (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "min" (f64.const inf) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "min" (f64.const -inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const -nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "min" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "min" (f64.const nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "min" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0p+0) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const -inf)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0p+0) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x0p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x0p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x0p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const -inf)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1022) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const -inf)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1022) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1p-1022) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1p-1022) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const 0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const -inf)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p-1) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const -inf)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p-1) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1p-1) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1p-1) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1p-1) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const 0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const -inf)) (f64.const -0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1p+0) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const -inf)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1p+0) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1p+0) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1p+0) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1p+0) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000))) +(assert_return (invoke "max" (f64.const -inf) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "max" (f64.const -inf) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "max" (f64.const inf) (f64.const -0x0p+0)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "max" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "max" (f64.const -inf) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "max" (f64.const inf) (f64.const -0x1p-1022)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "max" (f64.const -inf) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "max" (f64.const inf) (f64.const -0x1p-1)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "max" (f64.const -inf) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "max" (f64.const inf) (f64.const -0x1p+0)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const 0x1p+0)) (f64.const inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "max" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "max" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "max" (f64.const -inf) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "max" (f64.const inf) (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "max" (f64.const -inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const inf) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const inf) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const inf) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const inf) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const 0x0p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const 0x0p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const 0x0.0000000000001p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -0x1p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const 0x1p-1022))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const 0x1p-1))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const 0x1p-1))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const 0x1p+0))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const 0x1p+0))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -inf))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -inf))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const inf))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const inf))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const -nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "max" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan) (f64.const -nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "max" (f64.const nan) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const nan))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan) (f64.const nan:0x4000000000000))) +(assert_return_arithmetic_nan (invoke "max" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000))) +(assert_return (invoke "sqrt" (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "sqrt" (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -0x0.0000000000001p-1022))) +(assert_return (invoke "sqrt" (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-537)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -0x1p-1022))) +(assert_return (invoke "sqrt" (f64.const 0x1p-1022)) (f64.const 0x1p-511)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -0x1p-1))) +(assert_return (invoke "sqrt" (f64.const 0x1p-1)) (f64.const 0x1.6a09e667f3bcdp-1)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -0x1p+0))) +(assert_return (invoke "sqrt" (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -0x1.921fb54442d18p+2))) +(assert_return (invoke "sqrt" (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.40d931ff62705p+1)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -0x1.fffffffffffffp+1023))) +(assert_return (invoke "sqrt" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+511)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -inf))) +(assert_return (invoke "sqrt" (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "sqrt" (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "sqrt" (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "sqrt" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "sqrt" (f64.const nan:0x4000000000000))) +(assert_return (invoke "floor" (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "floor" (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "floor" (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "floor" (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "floor" (f64.const -0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "floor" (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "floor" (f64.const -0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "floor" (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "floor" (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "floor" (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "floor" (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.cp+2)) +(assert_return (invoke "floor" (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.8p+2)) +(assert_return (invoke "floor" (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "floor" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "floor" (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "floor" (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "floor" (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "floor" (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "floor" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "floor" (f64.const nan:0x4000000000000))) +(assert_return (invoke "ceil" (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "ceil" (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "ceil" (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "ceil" (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "ceil" (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "ceil" (f64.const 0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "ceil" (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "ceil" (f64.const 0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "ceil" (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "ceil" (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "ceil" (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.8p+2)) +(assert_return (invoke "ceil" (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.cp+2)) +(assert_return (invoke "ceil" (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "ceil" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "ceil" (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "ceil" (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "ceil" (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "ceil" (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "ceil" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "ceil" (f64.const nan:0x4000000000000))) +(assert_return (invoke "trunc" (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "trunc" (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "trunc" (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "trunc" (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "trunc" (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "trunc" (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "trunc" (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "trunc" (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "trunc" (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "trunc" (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "trunc" (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.8p+2)) +(assert_return (invoke "trunc" (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.8p+2)) +(assert_return (invoke "trunc" (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "trunc" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "trunc" (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "trunc" (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "trunc" (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "trunc" (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "trunc" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "trunc" (f64.const nan:0x4000000000000))) +(assert_return (invoke "nearest" (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "nearest" (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "nearest" (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "nearest" (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "nearest" (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "nearest" (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "nearest" (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "nearest" (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "nearest" (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "nearest" (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "nearest" (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.8p+2)) +(assert_return (invoke "nearest" (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.8p+2)) +(assert_return (invoke "nearest" (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "nearest" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "nearest" (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "nearest" (f64.const inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "nearest" (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "nearest" (f64.const -nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "nearest" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "nearest" (f64.const nan:0x4000000000000))) diff --git a/test/spec/f64_bitwise.wast b/test/spec/f64_bitwise.wast new file mode 100644 index 00000000000..86c64b54de3 --- /dev/null +++ b/test/spec/f64_bitwise.wast @@ -0,0 +1,369 @@ +;; Test all the f64 bitwise operators on major boundary values and all special +;; values. + +(module + (func (export "abs") (param $x f64) (result f64) (f64.abs (get_local $x))) + (func (export "neg") (param $x f64) (result f64) (f64.neg (get_local $x))) + (func (export "copysign") (param $x f64) (param $y f64) (result f64) (f64.copysign (get_local $x) (get_local $y))) +) + +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -0x1p-1)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const 0x1p-1)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const 0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -0x1p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const 0x1p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -inf)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const inf)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const -nan)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0p+0) (f64.const nan)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const -nan)) (f64.const -0x0p+0)) +(assert_return (invoke "copysign" (f64.const 0x0p+0) (f64.const nan)) (f64.const 0x0p+0)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const -nan)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x0.0000000000001p-1022) (f64.const nan)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const -nan)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const 0x0.0000000000001p-1022) (f64.const nan)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -inf)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const inf)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -inf)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const inf)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const -nan)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1022) (f64.const nan)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const -nan)) (f64.const -0x1p-1022)) +(assert_return (invoke "copysign" (f64.const 0x1p-1022) (f64.const nan)) (f64.const 0x1p-1022)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const 0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -0x0p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const 0x0p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -0x1p+0)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const 0x1p+0)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -inf)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const inf)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -inf)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const inf)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const -nan)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p-1) (f64.const nan)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const -nan)) (f64.const -0x1p-1)) +(assert_return (invoke "copysign" (f64.const 0x1p-1) (f64.const nan)) (f64.const 0x1p-1)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const 0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -0x0p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const 0x0p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -0x1p-1)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const 0x1p-1)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -inf)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const inf)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -inf)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const inf)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const -nan)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1p+0) (f64.const nan)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const -nan)) (f64.const -0x1p+0)) +(assert_return (invoke "copysign" (f64.const 0x1p+0) (f64.const nan)) (f64.const 0x1p+0)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.921fb54442d18p+2) (f64.const nan)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const 0x1.921fb54442d18p+2) (f64.const nan)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -0x0p+0)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const 0x0p+0)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -0x1p-1022)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const 0x1p-1022)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -0x1p-1)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const 0x1p-1)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -0x1p+0)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const 0x1p+0)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -0x1p+0)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const 0x1p+0)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -inf)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const inf)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const -nan)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const -inf) (f64.const nan)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const -nan)) (f64.const -inf)) +(assert_return (invoke "copysign" (f64.const inf) (f64.const nan)) (f64.const inf)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -0x0p+0)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const 0x0p+0)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -0x0p+0)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const 0x0p+0)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -0x0.0000000000001p-1022)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const 0x0.0000000000001p-1022)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -0x0.0000000000001p-1022)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const 0x0.0000000000001p-1022)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -0x1p-1022)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const 0x1p-1022)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -0x1p-1022)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const 0x1p-1022)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -0x1p-1)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const 0x1p-1)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -0x1p-1)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const 0x1p-1)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -0x1p+0)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const 0x1p+0)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -0x1p+0)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const 0x1p+0)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -0x1.921fb54442d18p+2)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const 0x1.921fb54442d18p+2)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -inf)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const inf)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -inf)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const inf)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const -nan)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const -nan) (f64.const nan)) (f64.const nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const -nan)) (f64.const -nan)) +(assert_return (invoke "copysign" (f64.const nan) (f64.const nan)) (f64.const nan)) +(assert_return (invoke "abs" (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "abs" (f64.const 0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "abs" (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "abs" (f64.const 0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "abs" (f64.const -0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "abs" (f64.const 0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "abs" (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "abs" (f64.const 0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "abs" (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "abs" (f64.const 0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "abs" (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "abs" (f64.const 0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "abs" (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "abs" (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "abs" (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "abs" (f64.const inf)) (f64.const inf)) +(assert_return (invoke "abs" (f64.const -nan)) (f64.const nan)) +(assert_return (invoke "abs" (f64.const nan)) (f64.const nan)) +(assert_return (invoke "neg" (f64.const -0x0p+0)) (f64.const 0x0p+0)) +(assert_return (invoke "neg" (f64.const 0x0p+0)) (f64.const -0x0p+0)) +(assert_return (invoke "neg" (f64.const -0x0.0000000000001p-1022)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "neg" (f64.const 0x0.0000000000001p-1022)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "neg" (f64.const -0x1p-1022)) (f64.const 0x1p-1022)) +(assert_return (invoke "neg" (f64.const 0x1p-1022)) (f64.const -0x1p-1022)) +(assert_return (invoke "neg" (f64.const -0x1p-1)) (f64.const 0x1p-1)) +(assert_return (invoke "neg" (f64.const 0x1p-1)) (f64.const -0x1p-1)) +(assert_return (invoke "neg" (f64.const -0x1p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "neg" (f64.const 0x1p+0)) (f64.const -0x1p+0)) +(assert_return (invoke "neg" (f64.const -0x1.921fb54442d18p+2)) (f64.const 0x1.921fb54442d18p+2)) +(assert_return (invoke "neg" (f64.const 0x1.921fb54442d18p+2)) (f64.const -0x1.921fb54442d18p+2)) +(assert_return (invoke "neg" (f64.const -0x1.fffffffffffffp+1023)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "neg" (f64.const 0x1.fffffffffffffp+1023)) (f64.const -0x1.fffffffffffffp+1023)) +(assert_return (invoke "neg" (f64.const -inf)) (f64.const inf)) +(assert_return (invoke "neg" (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "neg" (f64.const -nan)) (f64.const nan)) +(assert_return (invoke "neg" (f64.const nan)) (f64.const -nan)) diff --git a/test/spec/f64_cmp.wast b/test/spec/f64_cmp.wast new file mode 100644 index 00000000000..8fe9be4e5c3 --- /dev/null +++ b/test/spec/f64_cmp.wast @@ -0,0 +1,2412 @@ +;; Test all the f64 comparison operators on major boundary values and all +;; special values. + +(module + (func (export "eq") (param $x f64) (param $y f64) (result i32) (f64.eq (get_local $x) (get_local $y))) + (func (export "ne") (param $x f64) (param $y f64) (result i32) (f64.ne (get_local $x) (get_local $y))) + (func (export "lt") (param $x f64) (param $y f64) (result i32) (f64.lt (get_local $x) (get_local $y))) + (func (export "le") (param $x f64) (param $y f64) (result i32) (f64.le (get_local $x) (get_local $y))) + (func (export "gt") (param $x f64) (param $y f64) (result i32) (f64.gt (get_local $x) (get_local $y))) + (func (export "ge") (param $x f64) (param $y f64) (result i32) (f64.ge (get_local $x) (get_local $y))) +) + +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -inf) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const inf) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "lt" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const inf) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "le" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "gt" (f64.const inf) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "gt" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x0.0000000000001p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1022) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p-1) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1p+0) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.921fb54442d18p+2) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const 0x1.fffffffffffffp+1023) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const 0x0p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const 0x0.0000000000001p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const 0x1p-1022)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const 0x1p-1)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const 0x1p+0)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const 0x1.921fb54442d18p+2)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const inf) (f64.const inf)) (i32.const 1)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const inf) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const 0x0p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const 0x1p-1022)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const 0x1p-1)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const 0x1p+0)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const 0x1.921fb54442d18p+2)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const 0x1.fffffffffffffp+1023)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const inf)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const -nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const -nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan) (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "ge" (f64.const nan:0x4000000000000) (f64.const nan:0x4000000000000)) (i32.const 0)) diff --git a/test/spec/fac.wast b/test/spec/fac.wast new file mode 100644 index 00000000000..acc8962313c --- /dev/null +++ b/test/spec/fac.wast @@ -0,0 +1,89 @@ +(module + ;; Recursive factorial + (func (export "fac-rec") (param i64) (result i64) + (if (result i64) (i64.eq (get_local 0) (i64.const 0)) + (then (i64.const 1)) + (else + (i64.mul (get_local 0) (call 0 (i64.sub (get_local 0) (i64.const 1)))) + ) + ) + ) + + ;; Recursive factorial named + (func $fac-rec-named (export "fac-rec-named") (param $n i64) (result i64) + (if (result i64) (i64.eq (get_local $n) (i64.const 0)) + (then (i64.const 1)) + (else + (i64.mul + (get_local $n) + (call $fac-rec-named (i64.sub (get_local $n) (i64.const 1))) + ) + ) + ) + ) + + ;; Iterative factorial + (func (export "fac-iter") (param i64) (result i64) + (local i64 i64) + (set_local 1 (get_local 0)) + (set_local 2 (i64.const 1)) + (block + (loop + (if + (i64.eq (get_local 1) (i64.const 0)) + (then (br 2)) + (else + (set_local 2 (i64.mul (get_local 1) (get_local 2))) + (set_local 1 (i64.sub (get_local 1) (i64.const 1))) + ) + ) + (br 0) + ) + ) + (get_local 2) + ) + + ;; Iterative factorial named + (func (export "fac-iter-named") (param $n i64) (result i64) + (local $i i64) + (local $res i64) + (set_local $i (get_local $n)) + (set_local $res (i64.const 1)) + (block $done + (loop $loop + (if + (i64.eq (get_local $i) (i64.const 0)) + (then (br $done)) + (else + (set_local $res (i64.mul (get_local $i) (get_local $res))) + (set_local $i (i64.sub (get_local $i) (i64.const 1))) + ) + ) + (br $loop) + ) + ) + (get_local $res) + ) + + ;; Optimized factorial. + (func (export "fac-opt") (param i64) (result i64) + (local i64) + (set_local 1 (i64.const 1)) + (block + (br_if 0 (i64.lt_s (get_local 0) (i64.const 2))) + (loop + (set_local 1 (i64.mul (get_local 1) (get_local 0))) + (set_local 0 (i64.add (get_local 0) (i64.const -1))) + (br_if 0 (i64.gt_s (get_local 0) (i64.const 1))) + ) + ) + (get_local 1) + ) +) + +(assert_return (invoke "fac-rec" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-iter" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-rec-named" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-iter-named" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-opt" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_exhaustion (invoke "fac-rec" (i64.const 1073741824)) "call stack exhausted") diff --git a/test/spec/float_exprs.wast b/test/spec/float_exprs.wast new file mode 100644 index 00000000000..ad1d606f5df --- /dev/null +++ b/test/spec/float_exprs.wast @@ -0,0 +1,2570 @@ +;; Test interesting floating-point "expressions". These tests contain code +;; patterns which tempt common value-changing optimizations. + +;; Test that x*y+z is not done with x87-style intermediate precision. + +(module + (func (export "f64.no_contraction") (param $x f64) (param $y f64) (param $z f64) (result f64) + (f64.add (f64.mul (get_local $x) (get_local $y)) (get_local $z))) +) + +(assert_return (invoke "f64.no_contraction" (f64.const -0x1.9e87ce14273afp-103) (f64.const 0x1.2515ad31db63ep+664) (f64.const 0x1.868c6685e6185p+533)) (f64.const -0x1.da94885b11493p+561)) +(assert_return (invoke "f64.no_contraction" (f64.const 0x1.da21c460a6f44p+52) (f64.const 0x1.60859d2e7714ap-321) (f64.const 0x1.e63f1b7b660e1p-302)) (f64.const 0x1.4672f256d1794p-268)) +(assert_return (invoke "f64.no_contraction" (f64.const -0x1.f3eaf43f327cp-594) (f64.const 0x1.dfcc009906b57p+533) (f64.const 0x1.5984e03c520a1p-104)) (f64.const -0x1.d4797fb3db166p-60)) +(assert_return (invoke "f64.no_contraction" (f64.const 0x1.dab6c772cb2e2p-69) (f64.const -0x1.d761663679a84p-101) (f64.const 0x1.f22f92c843226p-218)) (f64.const -0x1.b50d72dfcef68p-169)) +(assert_return (invoke "f64.no_contraction" (f64.const -0x1.87c5def1e4d3dp-950) (f64.const -0x1.50cd5dab2207fp+935) (f64.const 0x1.e629bd0da8c5dp-54)) (f64.const 0x1.01b6feb4e78a7p-14)) + +;; Test that x*y+z is not folded to fma. + +(module + (func (export "f32.no_fma") (param $x f32) (param $y f32) (param $z f32) (result f32) + (f32.add (f32.mul (get_local $x) (get_local $y)) (get_local $z))) + (func (export "f64.no_fma") (param $x f64) (param $y f64) (param $z f64) (result f64) + (f64.add (f64.mul (get_local $x) (get_local $y)) (get_local $z))) +) + +(assert_return (invoke "f32.no_fma" (f32.const 0x1.a78402p+124) (f32.const 0x1.cf8548p-23) (f32.const 0x1.992adap+107)) (f32.const 0x1.a5262cp+107)) +(assert_return (invoke "f32.no_fma" (f32.const 0x1.ed15a4p-28) (f32.const -0x1.613c72p-50) (f32.const 0x1.4757bp-88)) (f32.const -0x1.5406b8p-77)) +(assert_return (invoke "f32.no_fma" (f32.const 0x1.ae63a2p+37) (f32.const 0x1.b3a59ap-13) (f32.const 0x1.c16918p+10)) (f32.const 0x1.6e385cp+25)) +(assert_return (invoke "f32.no_fma" (f32.const 0x1.2a77fap-8) (f32.const -0x1.bb7356p+22) (f32.const -0x1.32be2ap+1)) (f32.const -0x1.0286d4p+15)) +(assert_return (invoke "f32.no_fma" (f32.const 0x1.298fb6p+126) (f32.const -0x1.03080cp-70) (f32.const -0x1.418de6p+34)) (f32.const -0x1.2d15c6p+56)) +(assert_return (invoke "f64.no_fma" (f64.const 0x1.ac357ff46eed4p+557) (f64.const 0x1.852c01a5e7297p+430) (f64.const -0x1.05995704eda8ap+987)) (f64.const 0x1.855d905d338ep+987)) +(assert_return (invoke "f64.no_fma" (f64.const 0x1.e2fd6bf32010cp+749) (f64.const 0x1.01c2238d405e4p-130) (f64.const 0x1.2ecc0db4b9f94p+573)) (f64.const 0x1.e64eb07e063bcp+619)) +(assert_return (invoke "f64.no_fma" (f64.const 0x1.92b7c7439ede3p-721) (f64.const -0x1.6aa97586d3de6p+1011) (f64.const 0x1.8de4823f6358ap+237)) (f64.const -0x1.1d4139fd20ecdp+291)) +(assert_return (invoke "f64.no_fma" (f64.const -0x1.466d30bddb453p-386) (f64.const -0x1.185a4d739c7aap+443) (f64.const 0x1.5f9c436fbfc7bp+55)) (f64.const 0x1.bd61a350fcc1ap+57)) +(assert_return (invoke "f64.no_fma" (f64.const 0x1.7e2c44058a799p+52) (f64.const 0x1.c73b71765b8b2p+685) (f64.const -0x1.16c641df0b108p+690)) (f64.const 0x1.53ccb53de0bd1p+738)) + +;; Test that x+0.0 is not folded to x. +;; See IEEE 754-2008 10.4 "Literal meaning and value-changing optimizations". + +(module + (func (export "f32.no_fold_add_zero") (param $x f32) (result f32) + (f32.add (get_local $x) (f32.const 0.0))) + (func (export "f64.no_fold_add_zero") (param $x f64) (result f64) + (f64.add (get_local $x) (f64.const 0.0))) +) + +(assert_return (invoke "f32.no_fold_add_zero" (f32.const -0.0)) (f32.const 0.0)) +(assert_return (invoke "f64.no_fold_add_zero" (f64.const -0.0)) (f64.const 0.0)) +(assert_return_arithmetic_nan (invoke "f32.no_fold_add_zero" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_add_zero" (f64.const nan:0x4000000000000))) + +;; Test that 0.0 - x is not folded to -x. + +(module + (func (export "f32.no_fold_zero_sub") (param $x f32) (result f32) + (f32.sub (f32.const 0.0) (get_local $x))) + (func (export "f64.no_fold_zero_sub") (param $x f64) (result f64) + (f64.sub (f64.const 0.0) (get_local $x))) +) + +(assert_return (invoke "f32.no_fold_zero_sub" (f32.const 0.0)) (f32.const 0.0)) +(assert_return (invoke "f64.no_fold_zero_sub" (f64.const 0.0)) (f64.const 0.0)) +(assert_return_arithmetic_nan (invoke "f32.no_fold_zero_sub" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_zero_sub" (f64.const nan:0x4000000000000))) + +;; Test that x - 0.0 is not folded to x. + +(module + (func (export "f32.no_fold_sub_zero") (param $x f32) (result f32) + (f32.sub (get_local $x) (f32.const 0.0))) + (func (export "f64.no_fold_sub_zero") (param $x f64) (result f64) + (f64.sub (get_local $x) (f64.const 0.0))) +) + +(assert_return_arithmetic_nan (invoke "f32.no_fold_sub_zero" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_sub_zero" (f64.const nan:0x4000000000000))) + +;; Test that x*0.0 is not folded to 0.0. + +(module + (func (export "f32.no_fold_mul_zero") (param $x f32) (result f32) + (f32.mul (get_local $x) (f32.const 0.0))) + (func (export "f64.no_fold_mul_zero") (param $x f64) (result f64) + (f64.mul (get_local $x) (f64.const 0.0))) +) + +(assert_return (invoke "f32.no_fold_mul_zero" (f32.const -0.0)) (f32.const -0.0)) +(assert_return (invoke "f32.no_fold_mul_zero" (f32.const -1.0)) (f32.const -0.0)) +(assert_return (invoke "f32.no_fold_mul_zero" (f32.const -2.0)) (f32.const -0.0)) +(assert_return_arithmetic_nan (invoke "f32.no_fold_mul_zero" (f32.const nan:0x200000))) +(assert_return (invoke "f64.no_fold_mul_zero" (f64.const -0.0)) (f64.const -0.0)) +(assert_return (invoke "f64.no_fold_mul_zero" (f64.const -1.0)) (f64.const -0.0)) +(assert_return (invoke "f64.no_fold_mul_zero" (f64.const -2.0)) (f64.const -0.0)) +(assert_return_arithmetic_nan (invoke "f64.no_fold_mul_zero" (f64.const nan:0x4000000000000))) + +;; Test that x*1.0 is not folded to x. +;; See IEEE 754-2008 10.4 "Literal meaning and value-changing optimizations". + +(module + (func (export "f32.no_fold_mul_one") (param $x f32) (result f32) + (f32.mul (get_local $x) (f32.const 1.0))) + (func (export "f64.no_fold_mul_one") (param $x f64) (result f64) + (f64.mul (get_local $x) (f64.const 1.0))) +) + +(assert_return_arithmetic_nan (invoke "f32.no_fold_mul_one" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_mul_one" (f64.const nan:0x4000000000000))) + +;; Test that 0.0/x is not folded to 0.0. + +(module + (func (export "f32.no_fold_zero_div") (param $x f32) (result f32) + (f32.div (f32.const 0.0) (get_local $x))) + (func (export "f64.no_fold_zero_div") (param $x f64) (result f64) + (f64.div (f64.const 0.0) (get_local $x))) +) + +(assert_return_canonical_nan (invoke "f32.no_fold_zero_div" (f32.const 0.0))) +(assert_return_canonical_nan (invoke "f32.no_fold_zero_div" (f32.const -0.0))) +(assert_return_canonical_nan (invoke "f32.no_fold_zero_div" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "f32.no_fold_zero_div" (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "f64.no_fold_zero_div" (f64.const 0.0))) +(assert_return_canonical_nan (invoke "f64.no_fold_zero_div" (f64.const -0.0))) +(assert_return_canonical_nan (invoke "f64.no_fold_zero_div" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_zero_div" (f64.const nan:0x4000000000000))) + +;; Test that x/1.0 is not folded to x. + +(module + (func (export "f32.no_fold_div_one") (param $x f32) (result f32) + (f32.div (get_local $x) (f32.const 1.0))) + (func (export "f64.no_fold_div_one") (param $x f64) (result f64) + (f64.div (get_local $x) (f64.const 1.0))) +) + +(assert_return_arithmetic_nan (invoke "f32.no_fold_div_one" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_div_one" (f64.const nan:0x4000000000000))) + +;; Test that x/-1.0 is not folded to -x. + +(module + (func (export "f32.no_fold_div_neg1") (param $x f32) (result f32) + (f32.div (get_local $x) (f32.const -1.0))) + (func (export "f64.no_fold_div_neg1") (param $x f64) (result f64) + (f64.div (get_local $x) (f64.const -1.0))) +) + +(assert_return_arithmetic_nan (invoke "f32.no_fold_div_neg1" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_div_neg1" (f64.const nan:0x4000000000000))) + +;; Test that -0.0 - x is not folded to -x. + +(module + (func (export "f32.no_fold_neg0_sub") (param $x f32) (result f32) + (f32.sub (f32.const -0.0) (get_local $x))) + (func (export "f64.no_fold_neg0_sub") (param $x f64) (result f64) + (f64.sub (f64.const -0.0) (get_local $x))) +) + +(assert_return_arithmetic_nan (invoke "f32.no_fold_neg0_sub" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_neg0_sub" (f64.const nan:0x4000000000000))) + +;; Test that -1.0 * x is not folded to -x. + +(module + (func (export "f32.no_fold_neg1_mul") (param $x f32) (result f32) + (f32.mul (f32.const -1.0) (get_local $x))) + (func (export "f64.no_fold_neg1_mul") (param $x f64) (result f64) + (f64.mul (f64.const -1.0) (get_local $x))) +) + +(assert_return_arithmetic_nan (invoke "f32.no_fold_neg1_mul" (f32.const nan:0x200000))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_neg1_mul" (f64.const nan:0x4000000000000))) + +;; Test that x == x is not folded to true. + +(module + (func (export "f32.no_fold_eq_self") (param $x f32) (result i32) + (f32.eq (get_local $x) (get_local $x))) + (func (export "f64.no_fold_eq_self") (param $x f64) (result i32) + (f64.eq (get_local $x) (get_local $x))) +) + +(assert_return (invoke "f32.no_fold_eq_self" (f32.const nan)) (i32.const 0)) +(assert_return (invoke "f64.no_fold_eq_self" (f64.const nan)) (i32.const 0)) + +;; Test that x != x is not folded to false. + +(module + (func (export "f32.no_fold_ne_self") (param $x f32) (result i32) + (f32.ne (get_local $x) (get_local $x))) + (func (export "f64.no_fold_ne_self") (param $x f64) (result i32) + (f64.ne (get_local $x) (get_local $x))) +) + +(assert_return (invoke "f32.no_fold_ne_self" (f32.const nan)) (i32.const 1)) +(assert_return (invoke "f64.no_fold_ne_self" (f64.const nan)) (i32.const 1)) + +;; Test that x - x is not folded to 0.0. + +(module + (func (export "f32.no_fold_sub_self") (param $x f32) (result f32) + (f32.sub (get_local $x) (get_local $x))) + (func (export "f64.no_fold_sub_self") (param $x f64) (result f64) + (f64.sub (get_local $x) (get_local $x))) +) + +(assert_return_canonical_nan (invoke "f32.no_fold_sub_self" (f32.const inf))) +(assert_return_canonical_nan (invoke "f32.no_fold_sub_self" (f32.const nan))) +(assert_return_canonical_nan (invoke "f64.no_fold_sub_self" (f64.const inf))) +(assert_return_canonical_nan (invoke "f64.no_fold_sub_self" (f64.const nan))) + +;; Test that x / x is not folded to 1.0. + +(module + (func (export "f32.no_fold_div_self") (param $x f32) (result f32) + (f32.div (get_local $x) (get_local $x))) + (func (export "f64.no_fold_div_self") (param $x f64) (result f64) + (f64.div (get_local $x) (get_local $x))) +) + +(assert_return_canonical_nan (invoke "f32.no_fold_div_self" (f32.const inf))) +(assert_return_canonical_nan (invoke "f32.no_fold_div_self" (f32.const nan))) +(assert_return_canonical_nan (invoke "f32.no_fold_div_self" (f32.const 0.0))) +(assert_return_canonical_nan (invoke "f32.no_fold_div_self" (f32.const -0.0))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_self" (f64.const inf))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_self" (f64.const nan))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_self" (f64.const 0.0))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_self" (f64.const -0.0))) + +;; Test that x/3 is not folded to x*(1/3). + +(module + (func (export "f32.no_fold_div_3") (param $x f32) (result f32) + (f32.div (get_local $x) (f32.const 3.0))) + (func (export "f64.no_fold_div_3") (param $x f64) (result f64) + (f64.div (get_local $x) (f64.const 3.0))) +) + +(assert_return (invoke "f32.no_fold_div_3" (f32.const -0x1.359c26p+50)) (f32.const -0x1.9cd032p+48)) +(assert_return (invoke "f32.no_fold_div_3" (f32.const -0x1.e45646p+93)) (f32.const -0x1.42e42ep+92)) +(assert_return (invoke "f32.no_fold_div_3" (f32.const -0x1.2a3916p-83)) (f32.const -0x1.8da172p-85)) +(assert_return (invoke "f32.no_fold_div_3" (f32.const -0x1.1f8b38p-124)) (f32.const -0x1.7f644ap-126)) +(assert_return (invoke "f32.no_fold_div_3" (f32.const -0x1.d64f64p-56)) (f32.const -0x1.398a42p-57)) +(assert_return (invoke "f64.no_fold_div_3" (f64.const -0x1.a8a88d29e2cc3p+632)) (f64.const -0x1.1b1b08c69732dp+631)) +(assert_return (invoke "f64.no_fold_div_3" (f64.const -0x1.bcf52dc950972p-167)) (f64.const -0x1.28a373db8b0f7p-168)) +(assert_return (invoke "f64.no_fold_div_3" (f64.const 0x1.bd3c0d989f7a4p-874)) (f64.const 0x1.28d2b3bb14fc3p-875)) +(assert_return (invoke "f64.no_fold_div_3" (f64.const -0x1.0138bf530a53cp+1007)) (f64.const -0x1.56f6546eb86fbp+1005)) +(assert_return (invoke "f64.no_fold_div_3" (f64.const 0x1.052b87f9d794dp+415)) (f64.const 0x1.5c3a0aa274c67p+413)) + +;; Test that (x*z)+(y*z) is not folded to (x+y)*z. + +(module + (func (export "f32.no_factor") (param $x f32) (param $y f32) (param $z f32) (result f32) + (f32.add (f32.mul (get_local $x) (get_local $z)) (f32.mul (get_local $y) (get_local $z)))) + (func (export "f64.no_factor") (param $x f64) (param $y f64) (param $z f64) (result f64) + (f64.add (f64.mul (get_local $x) (get_local $z)) (f64.mul (get_local $y) (get_local $z)))) +) + +(assert_return (invoke "f32.no_factor" (f32.const -0x1.4e2352p+40) (f32.const -0x1.842e2cp+49) (f32.const 0x1.eea602p+59)) (f32.const -0x1.77a7dp+109)) +(assert_return (invoke "f32.no_factor" (f32.const -0x1.b4e7f6p-6) (f32.const 0x1.8c990cp-5) (f32.const -0x1.70cc02p-9)) (f32.const -0x1.00a342p-14)) +(assert_return (invoke "f32.no_factor" (f32.const -0x1.06722ep-41) (f32.const 0x1.eed3cep-64) (f32.const 0x1.5c5558p+123)) (f32.const -0x1.651aaep+82)) +(assert_return (invoke "f32.no_factor" (f32.const -0x1.f8c6a4p-64) (f32.const 0x1.08c806p-83) (f32.const 0x1.b5ceccp+118)) (f32.const -0x1.afa15p+55)) +(assert_return (invoke "f32.no_factor" (f32.const -0x1.3aaa1ep-84) (f32.const 0x1.c6d5eep-71) (f32.const 0x1.8d2924p+20)) (f32.const 0x1.60c9cep-50)) +(assert_return (invoke "f64.no_factor" (f64.const 0x1.3adeda9144977p-424) (f64.const 0x1.c15af887049e1p-462) (f64.const -0x1.905179c4c4778p-225)) (f64.const -0x1.ec606bcb87b1ap-649)) +(assert_return (invoke "f64.no_factor" (f64.const 0x1.3c84821c1d348p-662) (f64.const -0x1.4ffd4c77ad037p-1009) (f64.const -0x1.dd275335c6f4p-957)) (f64.const 0x0p+0)) +(assert_return (invoke "f64.no_factor" (f64.const -0x1.074f372347051p-334) (f64.const -0x1.aaeef661f4c96p-282) (f64.const -0x1.9bd34abe8696dp+479)) (f64.const 0x1.5767029593e2p+198)) +(assert_return (invoke "f64.no_factor" (f64.const -0x1.c4ded58a6f389p-289) (f64.const 0x1.ba6fdef5d59c9p-260) (f64.const -0x1.c1201c0470205p-253)) (f64.const -0x1.841ada2e0f184p-512)) +(assert_return (invoke "f64.no_factor" (f64.const 0x1.9d3688f8e375ap-608) (f64.const 0x1.bf91311588256p-579) (f64.const -0x1.1605a6b5d5ff8p+489)) (f64.const -0x1.e6118ca76af53p-90)) + +;; Test that (x+y)*z is not folded to (x*z)+(y*z). + +(module + (func (export "f32.no_distribute") (param $x f32) (param $y f32) (param $z f32) (result f32) + (f32.mul (f32.add (get_local $x) (get_local $y)) (get_local $z))) + (func (export "f64.no_distribute") (param $x f64) (param $y f64) (param $z f64) (result f64) + (f64.mul (f64.add (get_local $x) (get_local $y)) (get_local $z))) +) + +(assert_return (invoke "f32.no_distribute" (f32.const -0x1.4e2352p+40) (f32.const -0x1.842e2cp+49) (f32.const 0x1.eea602p+59)) (f32.const -0x1.77a7d2p+109)) +(assert_return (invoke "f32.no_distribute" (f32.const -0x1.b4e7f6p-6) (f32.const 0x1.8c990cp-5) (f32.const -0x1.70cc02p-9)) (f32.const -0x1.00a34p-14)) +(assert_return (invoke "f32.no_distribute" (f32.const -0x1.06722ep-41) (f32.const 0x1.eed3cep-64) (f32.const 0x1.5c5558p+123)) (f32.const -0x1.651abp+82)) +(assert_return (invoke "f32.no_distribute" (f32.const -0x1.f8c6a4p-64) (f32.const 0x1.08c806p-83) (f32.const 0x1.b5ceccp+118)) (f32.const -0x1.afa14ep+55)) +(assert_return (invoke "f32.no_distribute" (f32.const -0x1.3aaa1ep-84) (f32.const 0x1.c6d5eep-71) (f32.const 0x1.8d2924p+20)) (f32.const 0x1.60c9ccp-50)) +(assert_return (invoke "f64.no_distribute" (f64.const 0x1.3adeda9144977p-424) (f64.const 0x1.c15af887049e1p-462) (f64.const -0x1.905179c4c4778p-225)) (f64.const -0x1.ec606bcb87b1bp-649)) +(assert_return (invoke "f64.no_distribute" (f64.const 0x1.3c84821c1d348p-662) (f64.const -0x1.4ffd4c77ad037p-1009) (f64.const -0x1.dd275335c6f4p-957)) (f64.const -0x0p+0)) +(assert_return (invoke "f64.no_distribute" (f64.const -0x1.074f372347051p-334) (f64.const -0x1.aaeef661f4c96p-282) (f64.const -0x1.9bd34abe8696dp+479)) (f64.const 0x1.5767029593e1fp+198)) +(assert_return (invoke "f64.no_distribute" (f64.const -0x1.c4ded58a6f389p-289) (f64.const 0x1.ba6fdef5d59c9p-260) (f64.const -0x1.c1201c0470205p-253)) (f64.const -0x1.841ada2e0f183p-512)) +(assert_return (invoke "f64.no_distribute" (f64.const 0x1.9d3688f8e375ap-608) (f64.const 0x1.bf91311588256p-579) (f64.const -0x1.1605a6b5d5ff8p+489)) (f64.const -0x1.e6118ca76af52p-90)) + +;; Test that x*(y/z) is not folded to (x*y)/z. + +(module + (func (export "f32.no_regroup_div_mul") (param $x f32) (param $y f32) (param $z f32) (result f32) + (f32.mul (get_local $x) (f32.div (get_local $y) (get_local $z)))) + (func (export "f64.no_regroup_div_mul") (param $x f64) (param $y f64) (param $z f64) (result f64) + (f64.mul (get_local $x) (f64.div (get_local $y) (get_local $z)))) +) + +(assert_return (invoke "f32.no_regroup_div_mul" (f32.const -0x1.2d14a6p-115) (f32.const -0x1.575a6cp-64) (f32.const 0x1.5cee0ep-116)) (f32.const 0x1.2844cap-63)) +(assert_return (invoke "f32.no_regroup_div_mul" (f32.const -0x1.454738p+91) (f32.const -0x1.b28a66p-115) (f32.const -0x1.f53908p+72)) (f32.const -0x0p+0)) +(assert_return (invoke "f32.no_regroup_div_mul" (f32.const -0x1.6be56ep+16) (f32.const -0x1.b46fc6p-21) (f32.const -0x1.a51df6p-123)) (f32.const -0x1.792258p+118)) +(assert_return (invoke "f32.no_regroup_div_mul" (f32.const -0x1.c343f8p-94) (f32.const 0x1.e4d906p+73) (f32.const 0x1.be69f8p+68)) (f32.const -0x1.ea1df2p-89)) +(assert_return (invoke "f32.no_regroup_div_mul" (f32.const 0x1.c6ae76p+112) (f32.const 0x1.fc953cp+24) (f32.const -0x1.60b3e8p+71)) (f32.const -0x1.47d0eap+66)) +(assert_return (invoke "f64.no_regroup_div_mul" (f64.const 0x1.3c04b815e30bp-423) (f64.const -0x1.379646fd98127p-119) (f64.const 0x1.bddb158506031p-642)) (f64.const -0x1.b9b3301f2dd2dp+99)) +(assert_return (invoke "f64.no_regroup_div_mul" (f64.const 0x1.46b3a402f86d5p+337) (f64.const 0x1.6fbf1b9e1798dp-447) (f64.const -0x1.bd9704a5a6a06p+797)) (f64.const -0x0p+0)) +(assert_return (invoke "f64.no_regroup_div_mul" (f64.const 0x1.6c9765bb4347fp-479) (f64.const 0x1.a4af42e34a141p+902) (f64.const 0x1.d2dde70eb68f9p-448)) (f64.const inf)) +(assert_return (invoke "f64.no_regroup_div_mul" (f64.const -0x1.706023645be72p+480) (f64.const -0x1.6c229f7d9101dp+611) (f64.const -0x1.4d50fa68d3d9ep+836)) (f64.const -0x1.926fa3cacc651p+255)) +(assert_return (invoke "f64.no_regroup_div_mul" (f64.const 0x1.8cc63d8caf4c7p-599) (f64.const 0x1.8671ac4c35753p-878) (f64.const -0x1.ef35b1695e659p-838)) (f64.const -0x1.38d55f56406dp-639)) + +;; Test that (x*y)/z is not folded to x*(y/z). + +(module + (func (export "f32.no_regroup_mul_div") (param $x f32) (param $y f32) (param $z f32) (result f32) + (f32.div (f32.mul (get_local $x) (get_local $y)) (get_local $z))) + (func (export "f64.no_regroup_mul_div") (param $x f64) (param $y f64) (param $z f64) (result f64) + (f64.div (f64.mul (get_local $x) (get_local $y)) (get_local $z))) +) + +(assert_return (invoke "f32.no_regroup_mul_div" (f32.const -0x1.2d14a6p-115) (f32.const -0x1.575a6cp-64) (f32.const 0x1.5cee0ep-116)) (f32.const 0x0p+0)) +(assert_return (invoke "f32.no_regroup_mul_div" (f32.const -0x1.454738p+91) (f32.const -0x1.b28a66p-115) (f32.const -0x1.f53908p+72)) (f32.const -0x1.1a00e8p-96)) +(assert_return (invoke "f32.no_regroup_mul_div" (f32.const -0x1.6be56ep+16) (f32.const -0x1.b46fc6p-21) (f32.const -0x1.a51df6p-123)) (f32.const -0x1.79225ap+118)) +(assert_return (invoke "f32.no_regroup_mul_div" (f32.const -0x1.c343f8p-94) (f32.const 0x1.e4d906p+73) (f32.const 0x1.be69f8p+68)) (f32.const -0x1.ea1df4p-89)) +(assert_return (invoke "f32.no_regroup_mul_div" (f32.const 0x1.c6ae76p+112) (f32.const 0x1.fc953cp+24) (f32.const -0x1.60b3e8p+71)) (f32.const -inf)) +(assert_return (invoke "f64.no_regroup_mul_div" (f64.const 0x1.3c04b815e30bp-423) (f64.const -0x1.379646fd98127p-119) (f64.const 0x1.bddb158506031p-642)) (f64.const -0x1.b9b3301f2dd2ep+99)) +(assert_return (invoke "f64.no_regroup_mul_div" (f64.const 0x1.46b3a402f86d5p+337) (f64.const 0x1.6fbf1b9e1798dp-447) (f64.const -0x1.bd9704a5a6a06p+797)) (f64.const -0x1.0da0b6328e09p-907)) +(assert_return (invoke "f64.no_regroup_mul_div" (f64.const 0x1.6c9765bb4347fp-479) (f64.const 0x1.a4af42e34a141p+902) (f64.const 0x1.d2dde70eb68f9p-448)) (f64.const 0x1.4886b6d9a9a79p+871)) +(assert_return (invoke "f64.no_regroup_mul_div" (f64.const -0x1.706023645be72p+480) (f64.const -0x1.6c229f7d9101dp+611) (f64.const -0x1.4d50fa68d3d9ep+836)) (f64.const -inf)) +(assert_return (invoke "f64.no_regroup_mul_div" (f64.const 0x1.8cc63d8caf4c7p-599) (f64.const 0x1.8671ac4c35753p-878) (f64.const -0x1.ef35b1695e659p-838)) (f64.const -0x0p+0)) + +;; Test that x+y+z+w is not reassociated. + +(module + (func (export "f32.no_reassociate_add") (param $x f32) (param $y f32) (param $z f32) (param $w f32) (result f32) + (f32.add (f32.add (f32.add (get_local $x) (get_local $y)) (get_local $z)) (get_local $w))) + (func (export "f64.no_reassociate_add") (param $x f64) (param $y f64) (param $z f64) (param $w f64) (result f64) + (f64.add (f64.add (f64.add (get_local $x) (get_local $y)) (get_local $z)) (get_local $w))) +) + +(assert_return (invoke "f32.no_reassociate_add" (f32.const -0x1.5f7ddcp+44) (f32.const 0x1.854e1p+34) (f32.const -0x1.b2068cp+47) (f32.const -0x1.209692p+41)) (f32.const -0x1.e26c76p+47)) +(assert_return (invoke "f32.no_reassociate_add" (f32.const 0x1.da3b78p-9) (f32.const -0x1.4312fap-7) (f32.const 0x1.0395e6p-4) (f32.const -0x1.6d5ea6p-7)) (f32.const 0x1.78b31ap-5)) +(assert_return (invoke "f32.no_reassociate_add" (f32.const -0x1.fdb93ap+34) (f32.const -0x1.b6fce6p+41) (f32.const 0x1.c131d8p+44) (f32.const 0x1.8835b6p+38)) (f32.const 0x1.8ff3a2p+44)) +(assert_return (invoke "f32.no_reassociate_add" (f32.const 0x1.1739fcp+47) (f32.const 0x1.a4b186p+49) (f32.const -0x1.0c623cp+35) (f32.const 0x1.16a102p+51)) (f32.const 0x1.913ff6p+51)) +(assert_return (invoke "f32.no_reassociate_add" (f32.const 0x1.733cfap+108) (f32.const -0x1.38d30cp+108) (f32.const 0x1.2f5854p+105) (f32.const -0x1.ccb058p+94)) (f32.const 0x1.813716p+106)) +(assert_return (invoke "f64.no_reassociate_add" (f64.const -0x1.697a4d9ff19a6p+841) (f64.const 0x1.b305466238397p+847) (f64.const 0x1.e0b2d9bfb4e72p+855) (f64.const -0x1.6e1f3ae2b06bbp+857)) (f64.const -0x1.eb0e5936f087ap+856)) +(assert_return (invoke "f64.no_reassociate_add" (f64.const 0x1.00ef6746b30e1p-543) (f64.const 0x1.cc1cfafdf3fe1p-544) (f64.const -0x1.f7726df3ecba6p-543) (f64.const -0x1.b26695f99d307p-594)) (f64.const -0x1.074892e3fad76p-547)) +(assert_return (invoke "f64.no_reassociate_add" (f64.const -0x1.e807b3bd6d854p+440) (f64.const 0x1.cedae26c2c5fp+407) (f64.const -0x1.00ab6e1442541p+437) (f64.const 0x1.28538a55997bdp+397)) (f64.const -0x1.040e90bf871ebp+441)) +(assert_return (invoke "f64.no_reassociate_add" (f64.const -0x1.ba2b6f35a2402p-317) (f64.const 0x1.ad1c3fea7cd9ep-307) (f64.const -0x1.93aace2bf1261p-262) (f64.const 0x1.9fddbe472847ep-260)) (f64.const 0x1.3af30abc2c01bp-260)) +(assert_return (invoke "f64.no_reassociate_add" (f64.const -0x1.ccb9c6092fb1dp+641) (f64.const -0x1.4b7c28c108244p+614) (f64.const 0x1.8a7cefef4bde1p+646) (f64.const -0x1.901b28b08b482p+644)) (f64.const 0x1.1810579194126p+646)) + +;; Test that x*y*z*w is not reassociated. + +(module + (func (export "f32.no_reassociate_mul") (param $x f32) (param $y f32) (param $z f32) (param $w f32) (result f32) + (f32.mul (f32.mul (f32.mul (get_local $x) (get_local $y)) (get_local $z)) (get_local $w))) + (func (export "f64.no_reassociate_mul") (param $x f64) (param $y f64) (param $z f64) (param $w f64) (result f64) + (f64.mul (f64.mul (f64.mul (get_local $x) (get_local $y)) (get_local $z)) (get_local $w))) +) + +(assert_return (invoke "f32.no_reassociate_mul" (f32.const 0x1.950ba8p-116) (f32.const 0x1.efdacep-33) (f32.const -0x1.5f9bcp+102) (f32.const 0x1.f04508p-56)) (f32.const -0x1.ff356ep-101)) +(assert_return (invoke "f32.no_reassociate_mul" (f32.const 0x1.5990aep-56) (f32.const -0x1.7dfb04p+102) (f32.const -0x1.4f774ap-125) (f32.const -0x1.595fe6p+70)) (f32.const -0x1.c7c8fcp-8)) +(assert_return (invoke "f32.no_reassociate_mul" (f32.const 0x1.6ad9a4p-48) (f32.const -0x1.9138aap+55) (f32.const -0x1.4a774ep-40) (f32.const 0x1.1ff08p+76)) (f32.const 0x1.9cd8ecp+44)) +(assert_return (invoke "f32.no_reassociate_mul" (f32.const 0x1.e1caecp-105) (f32.const 0x1.af0dd2p+77) (f32.const -0x1.016eep+56) (f32.const -0x1.ab70d6p+59)) (f32.const 0x1.54870ep+89)) +(assert_return (invoke "f32.no_reassociate_mul" (f32.const -0x1.3b1dcp-99) (f32.const 0x1.4e5a34p-49) (f32.const -0x1.38ba5ap+3) (f32.const 0x1.7fb8eep+59)) (f32.const 0x1.5bbf98p-85)) +(assert_return (invoke "f64.no_reassociate_mul" (f64.const -0x1.e7842ab7181p-667) (f64.const -0x1.fabf40ceeceafp+990) (f64.const -0x1.1a38a825ab01ap-376) (f64.const -0x1.27e8ea469b14fp+664)) (f64.const 0x1.336eb428af4f3p+613)) +(assert_return (invoke "f64.no_reassociate_mul" (f64.const 0x1.4ca2292a6acbcp+454) (f64.const 0x1.6ffbab850089ap-516) (f64.const -0x1.547c32e1f5b93p-899) (f64.const -0x1.c7571d9388375p+540)) (f64.const 0x1.1ac796954fc1p-419)) +(assert_return (invoke "f64.no_reassociate_mul" (f64.const 0x1.73881a52e0401p-501) (f64.const -0x1.1b68dd9efb1a7p+788) (f64.const 0x1.d1c5e6a3eb27cp-762) (f64.const -0x1.56cb2fcc7546fp+88)) (f64.const 0x1.f508db92c34efp-386)) +(assert_return (invoke "f64.no_reassociate_mul" (f64.const 0x1.2efa87859987cp+692) (f64.const 0x1.68e4373e241p-423) (f64.const 0x1.4e2d0fb383a57p+223) (f64.const -0x1.301d3265c737bp-23)) (f64.const -0x1.4b2b6c393f30cp+470)) +(assert_return (invoke "f64.no_reassociate_mul" (f64.const 0x1.1013f7498b95fp-234) (f64.const 0x1.d2d1c36fff138p-792) (f64.const -0x1.cbf1824ea7bfdp+728) (f64.const -0x1.440da9c8b836dp-599)) (f64.const 0x1.1a16512881c91p-895)) + +;; Test that x/0 is not folded away. + +(module + (func (export "f32.no_fold_div_0") (param $x f32) (result f32) + (f32.div (get_local $x) (f32.const 0.0))) + (func (export "f64.no_fold_div_0") (param $x f64) (result f64) + (f64.div (get_local $x) (f64.const 0.0))) +) + +(assert_return (invoke "f32.no_fold_div_0" (f32.const 1.0)) (f32.const inf)) +(assert_return (invoke "f32.no_fold_div_0" (f32.const -1.0)) (f32.const -inf)) +(assert_return (invoke "f32.no_fold_div_0" (f32.const inf)) (f32.const inf)) +(assert_return (invoke "f32.no_fold_div_0" (f32.const -inf)) (f32.const -inf)) +(assert_return_canonical_nan (invoke "f32.no_fold_div_0" (f32.const 0))) +(assert_return_canonical_nan (invoke "f32.no_fold_div_0" (f32.const -0))) +(assert_return_arithmetic_nan (invoke "f32.no_fold_div_0" (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "f32.no_fold_div_0" (f32.const nan))) +(assert_return (invoke "f64.no_fold_div_0" (f64.const 1.0)) (f64.const inf)) +(assert_return (invoke "f64.no_fold_div_0" (f64.const -1.0)) (f64.const -inf)) +(assert_return (invoke "f64.no_fold_div_0" (f64.const inf)) (f64.const inf)) +(assert_return (invoke "f64.no_fold_div_0" (f64.const -inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "f64.no_fold_div_0" (f64.const 0))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_0" (f64.const -0))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_0" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_div_0" (f64.const nan:0x4000000000000))) + +;; Test that x/-0 is not folded away. + +(module + (func (export "f32.no_fold_div_neg0") (param $x f32) (result f32) + (f32.div (get_local $x) (f32.const -0.0))) + (func (export "f64.no_fold_div_neg0") (param $x f64) (result f64) + (f64.div (get_local $x) (f64.const -0.0))) +) + +(assert_return (invoke "f32.no_fold_div_neg0" (f32.const 1.0)) (f32.const -inf)) +(assert_return (invoke "f32.no_fold_div_neg0" (f32.const -1.0)) (f32.const inf)) +(assert_return (invoke "f32.no_fold_div_neg0" (f32.const inf)) (f32.const -inf)) +(assert_return (invoke "f32.no_fold_div_neg0" (f32.const -inf)) (f32.const inf)) +(assert_return_canonical_nan (invoke "f32.no_fold_div_neg0" (f32.const 0))) +(assert_return_canonical_nan (invoke "f32.no_fold_div_neg0" (f32.const -0))) +(assert_return_arithmetic_nan (invoke "f32.no_fold_div_neg0" (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "f32.no_fold_div_neg0" (f32.const nan))) +(assert_return (invoke "f64.no_fold_div_neg0" (f64.const 1.0)) (f64.const -inf)) +(assert_return (invoke "f64.no_fold_div_neg0" (f64.const -1.0)) (f64.const inf)) +(assert_return (invoke "f64.no_fold_div_neg0" (f64.const inf)) (f64.const -inf)) +(assert_return (invoke "f64.no_fold_div_neg0" (f64.const -inf)) (f64.const inf)) +(assert_return_canonical_nan (invoke "f64.no_fold_div_neg0" (f64.const 0))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_neg0" (f64.const -0))) +(assert_return_canonical_nan (invoke "f64.no_fold_div_neg0" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "f64.no_fold_div_neg0" (f64.const nan:0x4000000000000))) + +;; Test that sqrt(x*x+y*y) is not folded to hypot. + +(module + (func (export "f32.no_fold_to_hypot") (param $x f32) (param $y f32) (result f32) + (f32.sqrt (f32.add (f32.mul (get_local $x) (get_local $x)) + (f32.mul (get_local $y) (get_local $y))))) + (func (export "f64.no_fold_to_hypot") (param $x f64) (param $y f64) (result f64) + (f64.sqrt (f64.add (f64.mul (get_local $x) (get_local $x)) + (f64.mul (get_local $y) (get_local $y))))) +) + +(assert_return (invoke "f32.no_fold_to_hypot" (f32.const 0x1.c2f338p-81) (f32.const 0x1.401b5ep-68)) (f32.const 0x1.401cccp-68)) +(assert_return (invoke "f32.no_fold_to_hypot" (f32.const -0x1.c38d1p-71) (f32.const -0x1.359ddp-107)) (f32.const 0x1.c36a62p-71)) +(assert_return (invoke "f32.no_fold_to_hypot" (f32.const -0x1.99e0cap-114) (f32.const -0x1.ed0c6cp-69)) (f32.const 0x1.ed0e48p-69)) +(assert_return (invoke "f32.no_fold_to_hypot" (f32.const -0x1.1b6ceap+5) (f32.const 0x1.5440bep+17)) (f32.const 0x1.5440cp+17)) +(assert_return (invoke "f32.no_fold_to_hypot" (f32.const 0x1.8f019ep-76) (f32.const -0x1.182308p-71)) (f32.const 0x1.17e2bcp-71)) +(assert_return (invoke "f64.no_fold_to_hypot" (f64.const 0x1.1a0ac4f7c8711p-636) (f64.const 0x1.1372ebafff551p-534)) (f64.const 0x1.13463fa37014ep-534)) +(assert_return (invoke "f64.no_fold_to_hypot" (f64.const 0x1.b793512167499p+395) (f64.const -0x1.11cbc52af4c36p+410)) (f64.const 0x1.11cbc530783a2p+410)) +(assert_return (invoke "f64.no_fold_to_hypot" (f64.const 0x1.76777f44ff40bp-536) (f64.const -0x1.c3896e4dc1fbp-766)) (f64.const 0x1.8p-536)) +(assert_return (invoke "f64.no_fold_to_hypot" (f64.const -0x1.889ac72cc6b5dp-521) (f64.const 0x1.8d7084e659f3bp-733)) (f64.const 0x1.889ac72ca843ap-521)) +(assert_return (invoke "f64.no_fold_to_hypot" (f64.const 0x1.5ee588c02cb08p-670) (f64.const -0x1.05ce25788d9ecp-514)) (f64.const 0x1.05ce25788d9dfp-514)) + +;; Test that 1.0/x isn't approximated. + +(module + (func (export "f32.no_approximate_reciprocal") (param $x f32) (result f32) + (f32.div (f32.const 1.0) (get_local $x))) +) + +(assert_return (invoke "f32.no_approximate_reciprocal" (f32.const -0x1.2900b6p-10)) (f32.const -0x1.b950d4p+9)) +(assert_return (invoke "f32.no_approximate_reciprocal" (f32.const 0x1.e7212p+127)) (f32.const 0x1.0d11f8p-128)) +(assert_return (invoke "f32.no_approximate_reciprocal" (f32.const -0x1.42a466p-93)) (f32.const -0x1.963ee6p+92)) +(assert_return (invoke "f32.no_approximate_reciprocal" (f32.const 0x1.5d0c32p+76)) (f32.const 0x1.778362p-77)) +(assert_return (invoke "f32.no_approximate_reciprocal" (f32.const -0x1.601de2p-82)) (f32.const -0x1.743d7ep+81)) + +;; Test that 1.0/sqrt(x) isn't approximated or fused. + +(module + (func (export "f32.no_approximate_reciprocal_sqrt") (param $x f32) (result f32) + (f32.div (f32.const 1.0) (f32.sqrt (get_local $x)))) + (func (export "f64.no_fuse_reciprocal_sqrt") (param $x f64) (result f64) + (f64.div (f64.const 1.0) (f64.sqrt (get_local $x)))) +) + +(assert_return (invoke "f32.no_approximate_reciprocal_sqrt" (f32.const 0x1.6af12ap-43)) (f32.const 0x1.300ed4p+21)) +(assert_return (invoke "f32.no_approximate_reciprocal_sqrt" (f32.const 0x1.e82fc6p-8)) (f32.const 0x1.72c376p+3)) +(assert_return (invoke "f32.no_approximate_reciprocal_sqrt" (f32.const 0x1.b9fa9cp-66)) (f32.const 0x1.85a9bap+32)) +(assert_return (invoke "f32.no_approximate_reciprocal_sqrt" (f32.const 0x1.f4f546p-44)) (f32.const 0x1.6e01c2p+21)) +(assert_return (invoke "f32.no_approximate_reciprocal_sqrt" (f32.const 0x1.5da7aap-86)) (f32.const 0x1.b618cap+42)) + +(assert_return (invoke "f64.no_fuse_reciprocal_sqrt" (f64.const 0x1.1568a63b55fa3p+889)) (f64.const 0x1.5bc9c74c9952p-445)) +(assert_return (invoke "f64.no_fuse_reciprocal_sqrt" (f64.const 0x1.239fcd0939cafp+311)) (f64.const 0x1.5334a922b4818p-156)) +(assert_return (invoke "f64.no_fuse_reciprocal_sqrt" (f64.const 0x1.6e36a24e11054p+104)) (f64.const 0x1.ac13f20977f29p-53)) +(assert_return (invoke "f64.no_fuse_reciprocal_sqrt" (f64.const 0x1.23ee173219f83p+668)) (f64.const 0x1.df753e055862dp-335)) +(assert_return (invoke "f64.no_fuse_reciprocal_sqrt" (f64.const 0x1.b30f74caf9babp+146)) (f64.const 0x1.88bfc3d1764a9p-74)) + +;; Test that sqrt(1.0/x) isn't approximated. + +(module + (func (export "f32.no_approximate_sqrt_reciprocal") (param $x f32) (result f32) + (f32.sqrt (f32.div (f32.const 1.0) (get_local $x)))) +) + +(assert_return (invoke "f32.no_approximate_sqrt_reciprocal" (f32.const 0x1.a4c986p+60)) (f32.const 0x1.8f5ac6p-31)) +(assert_return (invoke "f32.no_approximate_sqrt_reciprocal" (f32.const 0x1.50511ep-9)) (f32.const 0x1.3bdd46p+4)) +(assert_return (invoke "f32.no_approximate_sqrt_reciprocal" (f32.const 0x1.125ec2p+69)) (f32.const 0x1.5db572p-35)) +(assert_return (invoke "f32.no_approximate_sqrt_reciprocal" (f32.const 0x1.ba4c5p+13)) (f32.const 0x1.136f16p-7)) +(assert_return (invoke "f32.no_approximate_sqrt_reciprocal" (f32.const 0x1.4a5be2p+104)) (f32.const 0x1.c2b5bp-53)) + +;; Test that converting i32/i64 to f32/f64 and back isn't folded away. + +(module + (func (export "i32.no_fold_f32_s") (param i32) (result i32) + (i32.trunc_s/f32 (f32.convert_s/i32 (get_local 0)))) + (func (export "i32.no_fold_f32_u") (param i32) (result i32) + (i32.trunc_u/f32 (f32.convert_u/i32 (get_local 0)))) + (func (export "i64.no_fold_f64_s") (param i64) (result i64) + (i64.trunc_s/f64 (f64.convert_s/i64 (get_local 0)))) + (func (export "i64.no_fold_f64_u") (param i64) (result i64) + (i64.trunc_u/f64 (f64.convert_u/i64 (get_local 0)))) +) + +(assert_return (invoke "i32.no_fold_f32_s" (i32.const 0x1000000)) (i32.const 0x1000000)) +(assert_return (invoke "i32.no_fold_f32_s" (i32.const 0x1000001)) (i32.const 0x1000000)) +(assert_return (invoke "i32.no_fold_f32_s" (i32.const 0xf0000010)) (i32.const 0xf0000010)) + +(assert_return (invoke "i32.no_fold_f32_u" (i32.const 0x1000000)) (i32.const 0x1000000)) +(assert_return (invoke "i32.no_fold_f32_u" (i32.const 0x1000001)) (i32.const 0x1000000)) +(assert_return (invoke "i32.no_fold_f32_u" (i32.const 0xf0000010)) (i32.const 0xf0000000)) + +(assert_return (invoke "i64.no_fold_f64_s" (i64.const 0x20000000000000)) (i64.const 0x20000000000000)) +(assert_return (invoke "i64.no_fold_f64_s" (i64.const 0x20000000000001)) (i64.const 0x20000000000000)) +(assert_return (invoke "i64.no_fold_f64_s" (i64.const 0xf000000000000400)) (i64.const 0xf000000000000400)) + +(assert_return (invoke "i64.no_fold_f64_u" (i64.const 0x20000000000000)) (i64.const 0x20000000000000)) +(assert_return (invoke "i64.no_fold_f64_u" (i64.const 0x20000000000001)) (i64.const 0x20000000000000)) +(assert_return (invoke "i64.no_fold_f64_u" (i64.const 0xf000000000000400)) (i64.const 0xf000000000000000)) + +;; Test that x+y-y is not folded to x. + +(module + (func (export "f32.no_fold_add_sub") (param $x f32) (param $y f32) (result f32) + (f32.sub (f32.add (get_local $x) (get_local $y)) (get_local $y))) + (func (export "f64.no_fold_add_sub") (param $x f64) (param $y f64) (result f64) + (f64.sub (f64.add (get_local $x) (get_local $y)) (get_local $y))) +) + +(assert_return (invoke "f32.no_fold_add_sub" (f32.const 0x1.b553e4p-47) (f32.const -0x1.67db2cp-26)) (f32.const 0x1.cp-47)) +(assert_return (invoke "f32.no_fold_add_sub" (f32.const -0x1.a884dp-23) (f32.const 0x1.f2ae1ep-19)) (f32.const -0x1.a884ep-23)) +(assert_return (invoke "f32.no_fold_add_sub" (f32.const -0x1.fc04fp+82) (f32.const -0x1.65403ap+101)) (f32.const -0x1p+83)) +(assert_return (invoke "f32.no_fold_add_sub" (f32.const 0x1.870fa2p-78) (f32.const 0x1.c54916p-56)) (f32.const 0x1.8p-78)) +(assert_return (invoke "f32.no_fold_add_sub" (f32.const -0x1.17e966p-108) (f32.const -0x1.5fa61ap-84)) (f32.const -0x1p-107)) + +(assert_return (invoke "f64.no_fold_add_sub" (f64.const -0x1.1053ea172dba8p-874) (f64.const 0x1.113c413408ac8p-857)) (f64.const -0x1.1053ea172p-874)) +(assert_return (invoke "f64.no_fold_add_sub" (f64.const 0x1.e377d54807972p-546) (f64.const 0x1.040a0a4d1ff7p-526)) (f64.const 0x1.e377d548p-546)) +(assert_return (invoke "f64.no_fold_add_sub" (f64.const -0x1.75f53cd926b62p-30) (f64.const -0x1.66b176e602bb5p-3)) (f64.const -0x1.75f53dp-30)) +(assert_return (invoke "f64.no_fold_add_sub" (f64.const -0x1.c450ff28332ap-341) (f64.const 0x1.15a5855023baep-305)) (f64.const -0x1.c451p-341)) +(assert_return (invoke "f64.no_fold_add_sub" (f64.const -0x1.1ad4a596d3ea8p-619) (f64.const -0x1.17d81a41c0ea8p-588)) (f64.const -0x1.1ad4a8p-619)) + +;; Test that x-y+y is not folded to x. + +(module + (func (export "f32.no_fold_sub_add") (param $x f32) (param $y f32) (result f32) + (f32.add (f32.sub (get_local $x) (get_local $y)) (get_local $y))) + (func (export "f64.no_fold_sub_add") (param $x f64) (param $y f64) (result f64) + (f64.add (f64.sub (get_local $x) (get_local $y)) (get_local $y))) +) + +(assert_return (invoke "f32.no_fold_sub_add" (f32.const -0x1.523cb8p+9) (f32.const 0x1.93096cp+8)) (f32.const -0x1.523cbap+9)) +(assert_return (invoke "f32.no_fold_sub_add" (f32.const -0x1.a31a1p-111) (f32.const 0x1.745efp-95)) (f32.const -0x1.a4p-111)) +(assert_return (invoke "f32.no_fold_sub_add" (f32.const 0x1.3d5328p+26) (f32.const 0x1.58567p+35)) (f32.const 0x1.3d54p+26)) +(assert_return (invoke "f32.no_fold_sub_add" (f32.const 0x1.374e26p-39) (f32.const -0x1.66a5p-27)) (f32.const 0x1.374p-39)) +(assert_return (invoke "f32.no_fold_sub_add" (f32.const 0x1.320facp-3) (f32.const -0x1.ac069ap+14)) (f32.const 0x1.34p-3)) + +(assert_return (invoke "f64.no_fold_sub_add" (f64.const 0x1.8f92aad2c9b8dp+255) (f64.const -0x1.08cd4992266cbp+259)) (f64.const 0x1.8f92aad2c9b9p+255)) +(assert_return (invoke "f64.no_fold_sub_add" (f64.const 0x1.5aaff55742c8bp-666) (f64.const 0x1.8f5f47181f46dp-647)) (f64.const 0x1.5aaff5578p-666)) +(assert_return (invoke "f64.no_fold_sub_add" (f64.const 0x1.21bc52967a98dp+251) (f64.const -0x1.fcffaa32d0884p+300)) (f64.const 0x1.2p+251)) +(assert_return (invoke "f64.no_fold_sub_add" (f64.const 0x1.9c78361f47374p-26) (f64.const -0x1.69d69f4edc61cp-13)) (f64.const 0x1.9c78361f48p-26)) +(assert_return (invoke "f64.no_fold_sub_add" (f64.const 0x1.4dbe68e4afab2p-367) (f64.const -0x1.dc24e5b39cd02p-361)) (f64.const 0x1.4dbe68e4afacp-367)) + +;; Test that x*y/y is not folded to x. + +(module + (func (export "f32.no_fold_mul_div") (param $x f32) (param $y f32) (result f32) + (f32.div (f32.mul (get_local $x) (get_local $y)) (get_local $y))) + (func (export "f64.no_fold_mul_div") (param $x f64) (param $y f64) (result f64) + (f64.div (f64.mul (get_local $x) (get_local $y)) (get_local $y))) +) + +(assert_return (invoke "f32.no_fold_mul_div" (f32.const -0x1.cd859ap+54) (f32.const 0x1.6ca936p-47)) (f32.const -0x1.cd8598p+54)) +(assert_return (invoke "f32.no_fold_mul_div" (f32.const -0x1.0b56b8p-26) (f32.const 0x1.48264cp-106)) (f32.const -0x1.0b56a4p-26)) +(assert_return (invoke "f32.no_fold_mul_div" (f32.const -0x1.e7555cp-48) (f32.const -0x1.9161cp+48)) (f32.const -0x1.e7555ap-48)) +(assert_return (invoke "f32.no_fold_mul_div" (f32.const 0x1.aaa50ep+52) (f32.const -0x1.dfb39ep+60)) (f32.const 0x1.aaa50cp+52)) +(assert_return (invoke "f32.no_fold_mul_div" (f32.const -0x1.2b7dfap-92) (f32.const -0x1.7c4ca6p-37)) (f32.const -0x1.2b7dfep-92)) + +(assert_return (invoke "f64.no_fold_mul_div" (f64.const -0x1.3d79ff4118a1ap-837) (f64.const -0x1.b8b5dda31808cp-205)) (f64.const -0x1.3d79ff412263ep-837)) +(assert_return (invoke "f64.no_fold_mul_div" (f64.const 0x1.f894d1ee6b3a4p+384) (f64.const 0x1.8c2606d03d58ap+585)) (f64.const 0x1.f894d1ee6b3a5p+384)) +(assert_return (invoke "f64.no_fold_mul_div" (f64.const -0x1.a022260acc993p+238) (f64.const -0x1.5fbc128fc8e3cp-552)) (f64.const -0x1.a022260acc992p+238)) +(assert_return (invoke "f64.no_fold_mul_div" (f64.const 0x1.9d4b8ed174f54p-166) (f64.const 0x1.ee3d467aeeac6p-906)) (f64.const 0x1.8dcc95a053b2bp-166)) +(assert_return (invoke "f64.no_fold_mul_div" (f64.const -0x1.e95ea897cdcd4p+660) (f64.const -0x1.854d5df085f2ep-327)) (f64.const -0x1.e95ea897cdcd5p+660)) + +;; Test that x/y*y is not folded to x. + +(module + (func (export "f32.no_fold_div_mul") (param $x f32) (param $y f32) (result f32) + (f32.mul (f32.div (get_local $x) (get_local $y)) (get_local $y))) + (func (export "f64.no_fold_div_mul") (param $x f64) (param $y f64) (result f64) + (f64.mul (f64.div (get_local $x) (get_local $y)) (get_local $y))) +) + +(assert_return (invoke "f32.no_fold_div_mul" (f32.const -0x1.dc6364p+38) (f32.const 0x1.d630ecp+29)) (f32.const -0x1.dc6362p+38)) +(assert_return (invoke "f32.no_fold_div_mul" (f32.const -0x1.1f9836p-52) (f32.const -0x1.16c4e4p-18)) (f32.const -0x1.1f9838p-52)) +(assert_return (invoke "f32.no_fold_div_mul" (f32.const 0x1.c5972cp-126) (f32.const -0x1.d6659ep+7)) (f32.const 0x1.c5980ep-126)) +(assert_return (invoke "f32.no_fold_div_mul" (f32.const -0x1.2e3a9ep-74) (f32.const -0x1.353994p+59)) (f32.const -0x1.2e3a4p-74)) +(assert_return (invoke "f32.no_fold_div_mul" (f32.const 0x1.d96b82p-98) (f32.const 0x1.95d908p+27)) (f32.const 0x1.d96b84p-98)) + +(assert_return (invoke "f64.no_fold_div_mul" (f64.const 0x1.d01f913a52481p-876) (f64.const -0x1.2cd0668b28344p+184)) (f64.const 0x1.d020daf71cdcp-876)) +(assert_return (invoke "f64.no_fold_div_mul" (f64.const -0x1.81cb7d400918dp-714) (f64.const 0x1.7caa643586d6ep-53)) (f64.const -0x1.81cb7d400918ep-714)) +(assert_return (invoke "f64.no_fold_div_mul" (f64.const -0x1.66904c97b5c8ep-145) (f64.const 0x1.5c3481592ad4cp+428)) (f64.const -0x1.66904c97b5c8dp-145)) +(assert_return (invoke "f64.no_fold_div_mul" (f64.const -0x1.e75859d2f0765p-278) (f64.const -0x1.5f19b6ab497f9p+283)) (f64.const -0x1.e75859d2f0764p-278)) +(assert_return (invoke "f64.no_fold_div_mul" (f64.const -0x1.515fe9c3b5f5p+620) (f64.const 0x1.36be869c99f7ap+989)) (f64.const -0x1.515fe9c3b5f4fp+620)) + +;; Test that x/2*2 is not folded to x. + +(module + (func (export "f32.no_fold_div2_mul2") (param $x f32) (result f32) + (f32.mul (f32.div (get_local $x) (f32.const 2.0)) (f32.const 2.0))) + (func (export "f64.no_fold_div2_mul2") (param $x f64) (result f64) + (f64.mul (f64.div (get_local $x) (f64.const 2.0)) (f64.const 2.0))) +) + +(assert_return (invoke "f32.no_fold_div2_mul2" (f32.const 0x1.fffffep-126)) (f32.const 0x1p-125)) +(assert_return (invoke "f64.no_fold_div2_mul2" (f64.const 0x1.fffffffffffffp-1022)) (f64.const 0x1p-1021)) + +;; Test that promote(demote(x)) is not folded to x. + +(module + (func (export "no_fold_demote_promote") (param $x f64) (result f64) + (f64.promote/f32 (f32.demote/f64 (get_local $x)))) +) + +(assert_return (invoke "no_fold_demote_promote" (f64.const -0x1.dece272390f5dp-133)) (f64.const -0x1.decep-133)) +(assert_return (invoke "no_fold_demote_promote" (f64.const -0x1.19e6c79938a6fp-85)) (f64.const -0x1.19e6c8p-85)) +(assert_return (invoke "no_fold_demote_promote" (f64.const 0x1.49b297ec44dc1p+107)) (f64.const 0x1.49b298p+107)) +(assert_return (invoke "no_fold_demote_promote" (f64.const -0x1.74f5bd865163p-88)) (f64.const -0x1.74f5bep-88)) +(assert_return (invoke "no_fold_demote_promote" (f64.const 0x1.26d675662367ep+104)) (f64.const 0x1.26d676p+104)) + +;; Test that demote(promote(x)) is not folded to x, and aside from NaN is +;; bit-preserving. + +(module + (func (export "no_fold_promote_demote") (param $x f32) (result f32) + (f32.demote/f64 (f64.promote/f32 (get_local $x)))) +) + +(assert_return_arithmetic_nan (invoke "no_fold_promote_demote" (f32.const nan:0x200000))) +(assert_return (invoke "no_fold_promote_demote" (f32.const 0x0p+0)) (f32.const 0x0p+0)) +(assert_return (invoke "no_fold_promote_demote" (f32.const -0x0p+0)) (f32.const -0x0p+0)) +(assert_return (invoke "no_fold_promote_demote" (f32.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "no_fold_promote_demote" (f32.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "no_fold_promote_demote" (f32.const 0x1.fffffcp-127)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "no_fold_promote_demote" (f32.const -0x1.fffffcp-127)) (f32.const -0x1.fffffcp-127)) +(assert_return (invoke "no_fold_promote_demote" (f32.const 0x1p-126)) (f32.const 0x1p-126)) +(assert_return (invoke "no_fold_promote_demote" (f32.const -0x1p-126)) (f32.const -0x1p-126)) +(assert_return (invoke "no_fold_promote_demote" (f32.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "no_fold_promote_demote" (f32.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "no_fold_promote_demote" (f32.const inf)) (f32.const inf)) +(assert_return (invoke "no_fold_promote_demote" (f32.const -inf)) (f32.const -inf)) + +;; Test that demote(x+promote(y)) is not folded to demote(x)+y. + +(module + (func (export "no_demote_mixed_add") (param $x f64) (param $y f32) (result f32) + (f32.demote/f64 (f64.add (get_local $x) (f64.promote/f32 (get_local $y))))) + (func (export "no_demote_mixed_add_commuted") (param $y f32) (param $x f64) (result f32) + (f32.demote/f64 (f64.add (f64.promote/f32 (get_local $y)) (get_local $x)))) +) + +(assert_return (invoke "no_demote_mixed_add" (f64.const 0x1.f51a9d04854f9p-95) (f32.const 0x1.3f4e9cp-119)) (f32.const 0x1.f51a9ep-95)) +(assert_return (invoke "no_demote_mixed_add" (f64.const 0x1.065b3d81ad8dp+37) (f32.const 0x1.758cd8p+38)) (f32.const 0x1.f8ba76p+38)) +(assert_return (invoke "no_demote_mixed_add" (f64.const 0x1.626c80963bd17p-119) (f32.const -0x1.9bbf86p-121)) (f32.const 0x1.f6f93ep-120)) +(assert_return (invoke "no_demote_mixed_add" (f64.const -0x1.0d5110e3385bbp-20) (f32.const 0x1.096f4ap-29)) (f32.const -0x1.0ccc5ap-20)) +(assert_return (invoke "no_demote_mixed_add" (f64.const -0x1.73852db4e5075p-20) (f32.const -0x1.24e474p-41)) (f32.const -0x1.738536p-20)) + +(assert_return (invoke "no_demote_mixed_add_commuted" (f32.const 0x1.3f4e9cp-119) (f64.const 0x1.f51a9d04854f9p-95)) (f32.const 0x1.f51a9ep-95)) +(assert_return (invoke "no_demote_mixed_add_commuted" (f32.const 0x1.758cd8p+38) (f64.const 0x1.065b3d81ad8dp+37)) (f32.const 0x1.f8ba76p+38)) +(assert_return (invoke "no_demote_mixed_add_commuted" (f32.const -0x1.9bbf86p-121) (f64.const 0x1.626c80963bd17p-119)) (f32.const 0x1.f6f93ep-120)) +(assert_return (invoke "no_demote_mixed_add_commuted" (f32.const 0x1.096f4ap-29) (f64.const -0x1.0d5110e3385bbp-20)) (f32.const -0x1.0ccc5ap-20)) +(assert_return (invoke "no_demote_mixed_add_commuted" (f32.const -0x1.24e474p-41) (f64.const -0x1.73852db4e5075p-20)) (f32.const -0x1.738536p-20)) + +;; Test that demote(x-promote(y)) is not folded to demote(x)-y. + +(module + (func (export "no_demote_mixed_sub") (param $x f64) (param $y f32) (result f32) + (f32.demote/f64 (f64.sub (get_local $x) (f64.promote/f32 (get_local $y))))) +) + +(assert_return (invoke "no_demote_mixed_sub" (f64.const 0x1.a0a183220e9b1p+82) (f32.const 0x1.c5acf8p+61)) (f32.const 0x1.a0a174p+82)) +(assert_return (invoke "no_demote_mixed_sub" (f64.const -0x1.6e2c5ac39f63ep+30) (f32.const 0x1.d48ca4p+17)) (f32.const -0x1.6e3bp+30)) +(assert_return (invoke "no_demote_mixed_sub" (f64.const -0x1.98c74350dde6ap+6) (f32.const 0x1.9d69bcp-12)) (f32.const -0x1.98c7aap+6)) +(assert_return (invoke "no_demote_mixed_sub" (f64.const 0x1.0459f34091dbfp-54) (f32.const 0x1.61ad08p-71)) (f32.const 0x1.045942p-54)) +(assert_return (invoke "no_demote_mixed_sub" (f64.const 0x1.a7498dca3fdb7p+14) (f32.const 0x1.ed21c8p+15)) (f32.const -0x1.197d02p+15)) + +;; Test that converting between integer and float and back isn't folded away. + +(module + (func (export "f32.i32.no_fold_trunc_s_convert_s") (param $x f32) (result f32) + (f32.convert_s/i32 (i32.trunc_s/f32 (get_local $x)))) + (func (export "f32.i32.no_fold_trunc_u_convert_s") (param $x f32) (result f32) + (f32.convert_s/i32 (i32.trunc_u/f32 (get_local $x)))) + (func (export "f32.i32.no_fold_trunc_s_convert_u") (param $x f32) (result f32) + (f32.convert_u/i32 (i32.trunc_s/f32 (get_local $x)))) + (func (export "f32.i32.no_fold_trunc_u_convert_u") (param $x f32) (result f32) + (f32.convert_u/i32 (i32.trunc_u/f32 (get_local $x)))) + (func (export "f64.i32.no_fold_trunc_s_convert_s") (param $x f64) (result f64) + (f64.convert_s/i32 (i32.trunc_s/f64 (get_local $x)))) + (func (export "f64.i32.no_fold_trunc_u_convert_s") (param $x f64) (result f64) + (f64.convert_s/i32 (i32.trunc_u/f64 (get_local $x)))) + (func (export "f64.i32.no_fold_trunc_s_convert_u") (param $x f64) (result f64) + (f64.convert_u/i32 (i32.trunc_s/f64 (get_local $x)))) + (func (export "f64.i32.no_fold_trunc_u_convert_u") (param $x f64) (result f64) + (f64.convert_u/i32 (i32.trunc_u/f64 (get_local $x)))) + (func (export "f32.i64.no_fold_trunc_s_convert_s") (param $x f32) (result f32) + (f32.convert_s/i64 (i64.trunc_s/f32 (get_local $x)))) + (func (export "f32.i64.no_fold_trunc_u_convert_s") (param $x f32) (result f32) + (f32.convert_s/i64 (i64.trunc_u/f32 (get_local $x)))) + (func (export "f32.i64.no_fold_trunc_s_convert_u") (param $x f32) (result f32) + (f32.convert_u/i64 (i64.trunc_s/f32 (get_local $x)))) + (func (export "f32.i64.no_fold_trunc_u_convert_u") (param $x f32) (result f32) + (f32.convert_u/i64 (i64.trunc_u/f32 (get_local $x)))) + (func (export "f64.i64.no_fold_trunc_s_convert_s") (param $x f64) (result f64) + (f64.convert_s/i64 (i64.trunc_s/f64 (get_local $x)))) + (func (export "f64.i64.no_fold_trunc_u_convert_s") (param $x f64) (result f64) + (f64.convert_s/i64 (i64.trunc_u/f64 (get_local $x)))) + (func (export "f64.i64.no_fold_trunc_s_convert_u") (param $x f64) (result f64) + (f64.convert_u/i64 (i64.trunc_s/f64 (get_local $x)))) + (func (export "f64.i64.no_fold_trunc_u_convert_u") (param $x f64) (result f64) + (f64.convert_u/i64 (i64.trunc_u/f64 (get_local $x)))) +) + +(assert_return (invoke "f32.i32.no_fold_trunc_s_convert_s" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i32.no_fold_trunc_s_convert_s" (f32.const -1.5)) (f32.const -1.0)) +(assert_return (invoke "f32.i32.no_fold_trunc_u_convert_s" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i32.no_fold_trunc_u_convert_s" (f32.const -0.5)) (f32.const 0.0)) +(assert_return (invoke "f32.i32.no_fold_trunc_s_convert_u" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i32.no_fold_trunc_s_convert_u" (f32.const -1.5)) (f32.const 0x1p+32)) +(assert_return (invoke "f32.i32.no_fold_trunc_u_convert_u" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i32.no_fold_trunc_u_convert_u" (f32.const -0.5)) (f32.const 0.0)) + +(assert_return (invoke "f64.i32.no_fold_trunc_s_convert_s" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i32.no_fold_trunc_s_convert_s" (f64.const -1.5)) (f64.const -1.0)) +(assert_return (invoke "f64.i32.no_fold_trunc_u_convert_s" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i32.no_fold_trunc_u_convert_s" (f64.const -0.5)) (f64.const 0.0)) +(assert_return (invoke "f64.i32.no_fold_trunc_s_convert_u" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i32.no_fold_trunc_s_convert_u" (f64.const -1.5)) (f64.const 0x1.fffffffep+31)) +(assert_return (invoke "f64.i32.no_fold_trunc_u_convert_u" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i32.no_fold_trunc_u_convert_u" (f64.const -0.5)) (f64.const 0.0)) + +(assert_return (invoke "f32.i64.no_fold_trunc_s_convert_s" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i64.no_fold_trunc_s_convert_s" (f32.const -1.5)) (f32.const -1.0)) +(assert_return (invoke "f32.i64.no_fold_trunc_u_convert_s" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i64.no_fold_trunc_u_convert_s" (f32.const -0.5)) (f32.const 0.0)) +(assert_return (invoke "f32.i64.no_fold_trunc_s_convert_u" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i64.no_fold_trunc_s_convert_u" (f32.const -1.5)) (f32.const 0x1p+64)) +(assert_return (invoke "f32.i64.no_fold_trunc_u_convert_u" (f32.const 1.5)) (f32.const 1.0)) +(assert_return (invoke "f32.i64.no_fold_trunc_u_convert_u" (f32.const -0.5)) (f32.const 0.0)) + +(assert_return (invoke "f64.i64.no_fold_trunc_s_convert_s" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i64.no_fold_trunc_s_convert_s" (f64.const -1.5)) (f64.const -1.0)) +(assert_return (invoke "f64.i64.no_fold_trunc_u_convert_s" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i64.no_fold_trunc_u_convert_s" (f64.const -0.5)) (f64.const 0.0)) +(assert_return (invoke "f64.i64.no_fold_trunc_s_convert_u" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i64.no_fold_trunc_s_convert_u" (f64.const -1.5)) (f64.const 0x1p+64)) +(assert_return (invoke "f64.i64.no_fold_trunc_u_convert_u" (f64.const 1.5)) (f64.const 1.0)) +(assert_return (invoke "f64.i64.no_fold_trunc_u_convert_u" (f64.const -0.5)) (f64.const 0.0)) + +;; Test that dividing by a loop-invariant constant isn't optimized to be a +;; multiplication by a reciprocal, which would be particularly tempting since +;; the reciprocal computation could be hoisted. + +(module + (memory 1 1) + (func (export "init") (param $i i32) (param $x f32) (f32.store (get_local $i) (get_local $x))) + + (func (export "run") (param $n i32) (param $z f32) + (local $i i32) + (block $exit + (loop $cont + (f32.store + (get_local $i) + (f32.div (f32.load (get_local $i)) (get_local $z)) + ) + (set_local $i (i32.add (get_local $i) (i32.const 4))) + (br_if $cont (i32.lt_u (get_local $i) (get_local $n))) + ) + ) + ) + + (func (export "check") (param $i i32) (result f32) (f32.load (get_local $i))) +) + +(invoke "init" (i32.const 0) (f32.const 15.1)) +(invoke "init" (i32.const 4) (f32.const 15.2)) +(invoke "init" (i32.const 8) (f32.const 15.3)) +(invoke "init" (i32.const 12) (f32.const 15.4)) +(assert_return (invoke "check" (i32.const 0)) (f32.const 15.1)) +(assert_return (invoke "check" (i32.const 4)) (f32.const 15.2)) +(assert_return (invoke "check" (i32.const 8)) (f32.const 15.3)) +(assert_return (invoke "check" (i32.const 12)) (f32.const 15.4)) +(invoke "run" (i32.const 16) (f32.const 3.0)) +(assert_return (invoke "check" (i32.const 0)) (f32.const 0x1.422222p+2)) +(assert_return (invoke "check" (i32.const 4)) (f32.const 0x1.444444p+2)) +(assert_return (invoke "check" (i32.const 8)) (f32.const 0x1.466666p+2)) +(assert_return (invoke "check" (i32.const 12)) (f32.const 0x1.488888p+2)) + +(module + (memory 1 1) + (func (export "init") (param $i i32) (param $x f64) (f64.store (get_local $i) (get_local $x))) + + (func (export "run") (param $n i32) (param $z f64) + (local $i i32) + (block $exit + (loop $cont + (f64.store + (get_local $i) + (f64.div (f64.load (get_local $i)) (get_local $z)) + ) + (set_local $i (i32.add (get_local $i) (i32.const 8))) + (br_if $cont (i32.lt_u (get_local $i) (get_local $n))) + ) + ) + ) + + (func (export "check") (param $i i32) (result f64) (f64.load (get_local $i))) +) + +(invoke "init" (i32.const 0) (f64.const 15.1)) +(invoke "init" (i32.const 8) (f64.const 15.2)) +(invoke "init" (i32.const 16) (f64.const 15.3)) +(invoke "init" (i32.const 24) (f64.const 15.4)) +(assert_return (invoke "check" (i32.const 0)) (f64.const 15.1)) +(assert_return (invoke "check" (i32.const 8)) (f64.const 15.2)) +(assert_return (invoke "check" (i32.const 16)) (f64.const 15.3)) +(assert_return (invoke "check" (i32.const 24)) (f64.const 15.4)) +(invoke "run" (i32.const 32) (f64.const 3.0)) +(assert_return (invoke "check" (i32.const 0)) (f64.const 0x1.4222222222222p+2)) +(assert_return (invoke "check" (i32.const 8)) (f64.const 0x1.4444444444444p+2)) +(assert_return (invoke "check" (i32.const 16)) (f64.const 0x1.4666666666667p+2)) +(assert_return (invoke "check" (i32.const 24)) (f64.const 0x1.4888888888889p+2)) + +;; Test that ult/ugt/etc. aren't folded to olt/ogt/etc. + +(module + (func (export "f32.ult") (param $x f32) (param $y f32) (result i32) (i32.eqz (f32.ge (get_local $x) (get_local $y)))) + (func (export "f32.ule") (param $x f32) (param $y f32) (result i32) (i32.eqz (f32.gt (get_local $x) (get_local $y)))) + (func (export "f32.ugt") (param $x f32) (param $y f32) (result i32) (i32.eqz (f32.le (get_local $x) (get_local $y)))) + (func (export "f32.uge") (param $x f32) (param $y f32) (result i32) (i32.eqz (f32.lt (get_local $x) (get_local $y)))) + + (func (export "f64.ult") (param $x f64) (param $y f64) (result i32) (i32.eqz (f64.ge (get_local $x) (get_local $y)))) + (func (export "f64.ule") (param $x f64) (param $y f64) (result i32) (i32.eqz (f64.gt (get_local $x) (get_local $y)))) + (func (export "f64.ugt") (param $x f64) (param $y f64) (result i32) (i32.eqz (f64.le (get_local $x) (get_local $y)))) + (func (export "f64.uge") (param $x f64) (param $y f64) (result i32) (i32.eqz (f64.lt (get_local $x) (get_local $y)))) +) + +(assert_return (invoke "f32.ult" (f32.const 3.0) (f32.const 2.0)) (i32.const 0)) +(assert_return (invoke "f32.ult" (f32.const 2.0) (f32.const 2.0)) (i32.const 0)) +(assert_return (invoke "f32.ult" (f32.const 2.0) (f32.const 3.0)) (i32.const 1)) +(assert_return (invoke "f32.ult" (f32.const 2.0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "f32.ule" (f32.const 3.0) (f32.const 2.0)) (i32.const 0)) +(assert_return (invoke "f32.ule" (f32.const 2.0) (f32.const 2.0)) (i32.const 1)) +(assert_return (invoke "f32.ule" (f32.const 2.0) (f32.const 3.0)) (i32.const 1)) +(assert_return (invoke "f32.ule" (f32.const 2.0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "f32.ugt" (f32.const 3.0) (f32.const 2.0)) (i32.const 1)) +(assert_return (invoke "f32.ugt" (f32.const 2.0) (f32.const 2.0)) (i32.const 0)) +(assert_return (invoke "f32.ugt" (f32.const 2.0) (f32.const 3.0)) (i32.const 0)) +(assert_return (invoke "f32.ugt" (f32.const 2.0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "f32.uge" (f32.const 3.0) (f32.const 2.0)) (i32.const 1)) +(assert_return (invoke "f32.uge" (f32.const 2.0) (f32.const 2.0)) (i32.const 1)) +(assert_return (invoke "f32.uge" (f32.const 2.0) (f32.const 3.0)) (i32.const 0)) +(assert_return (invoke "f32.uge" (f32.const 2.0) (f32.const nan)) (i32.const 1)) +(assert_return (invoke "f64.ult" (f64.const 3.0) (f64.const 2.0)) (i32.const 0)) +(assert_return (invoke "f64.ult" (f64.const 2.0) (f64.const 2.0)) (i32.const 0)) +(assert_return (invoke "f64.ult" (f64.const 2.0) (f64.const 3.0)) (i32.const 1)) +(assert_return (invoke "f64.ult" (f64.const 2.0) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "f64.ule" (f64.const 3.0) (f64.const 2.0)) (i32.const 0)) +(assert_return (invoke "f64.ule" (f64.const 2.0) (f64.const 2.0)) (i32.const 1)) +(assert_return (invoke "f64.ule" (f64.const 2.0) (f64.const 3.0)) (i32.const 1)) +(assert_return (invoke "f64.ule" (f64.const 2.0) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "f64.ugt" (f64.const 3.0) (f64.const 2.0)) (i32.const 1)) +(assert_return (invoke "f64.ugt" (f64.const 2.0) (f64.const 2.0)) (i32.const 0)) +(assert_return (invoke "f64.ugt" (f64.const 2.0) (f64.const 3.0)) (i32.const 0)) +(assert_return (invoke "f64.ugt" (f64.const 2.0) (f64.const nan)) (i32.const 1)) +(assert_return (invoke "f64.uge" (f64.const 3.0) (f64.const 2.0)) (i32.const 1)) +(assert_return (invoke "f64.uge" (f64.const 2.0) (f64.const 2.0)) (i32.const 1)) +(assert_return (invoke "f64.uge" (f64.const 2.0) (f64.const 3.0)) (i32.const 0)) +(assert_return (invoke "f64.uge" (f64.const 2.0) (f64.const nan)) (i32.const 1)) + +;; Test that x= y+z is not optimized to x >= y (monotonicity). +;; http://cs.nyu.edu/courses/spring13/CSCI-UA.0201-003/lecture6.pdf + +(module + (func (export "f32.no_fold_add_le_monotonicity") (param $x f32) (param $y f32) (param $z f32) (result i32) + (f32.le (f32.add (get_local $x) (get_local $z)) (f32.add (get_local $y) (get_local $z)))) + + (func (export "f32.no_fold_add_ge_monotonicity") (param $x f32) (param $y f32) (param $z f32) (result i32) + (f32.ge (f32.add (get_local $x) (get_local $z)) (f32.add (get_local $y) (get_local $z)))) + + (func (export "f64.no_fold_add_le_monotonicity") (param $x f64) (param $y f64) (param $z f64) (result i32) + (f64.le (f64.add (get_local $x) (get_local $z)) (f64.add (get_local $y) (get_local $z)))) + + (func (export "f64.no_fold_add_ge_monotonicity") (param $x f64) (param $y f64) (param $z f64) (result i32) + (f64.ge (f64.add (get_local $x) (get_local $z)) (f64.add (get_local $y) (get_local $z)))) +) + +(assert_return (invoke "f32.no_fold_add_le_monotonicity" (f32.const 0.0) (f32.const 0.0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "f32.no_fold_add_le_monotonicity" (f32.const inf) (f32.const -inf) (f32.const inf)) (i32.const 0)) +(assert_return (invoke "f64.no_fold_add_le_monotonicity" (f64.const 0.0) (f64.const 0.0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "f64.no_fold_add_le_monotonicity" (f64.const inf) (f64.const -inf) (f64.const inf)) (i32.const 0)) + +;; Test that !(x < y) and friends are not optimized to x >= y and friends. + +(module + (func (export "f32.not_lt") (param $x f32) (param $y f32) (result i32) + (i32.eqz (f32.lt (get_local $x) (get_local $y)))) + + (func (export "f32.not_le") (param $x f32) (param $y f32) (result i32) + (i32.eqz (f32.le (get_local $x) (get_local $y)))) + + (func (export "f32.not_gt") (param $x f32) (param $y f32) (result i32) + (i32.eqz (f32.gt (get_local $x) (get_local $y)))) + + (func (export "f32.not_ge") (param $x f32) (param $y f32) (result i32) + (i32.eqz (f32.ge (get_local $x) (get_local $y)))) + + (func (export "f64.not_lt") (param $x f64) (param $y f64) (result i32) + (i32.eqz (f64.lt (get_local $x) (get_local $y)))) + + (func (export "f64.not_le") (param $x f64) (param $y f64) (result i32) + (i32.eqz (f64.le (get_local $x) (get_local $y)))) + + (func (export "f64.not_gt") (param $x f64) (param $y f64) (result i32) + (i32.eqz (f64.gt (get_local $x) (get_local $y)))) + + (func (export "f64.not_ge") (param $x f64) (param $y f64) (result i32) + (i32.eqz (f64.ge (get_local $x) (get_local $y)))) +) + +(assert_return (invoke "f32.not_lt" (f32.const nan) (f32.const 0.0)) (i32.const 1)) +(assert_return (invoke "f32.not_le" (f32.const nan) (f32.const 0.0)) (i32.const 1)) +(assert_return (invoke "f32.not_gt" (f32.const nan) (f32.const 0.0)) (i32.const 1)) +(assert_return (invoke "f32.not_ge" (f32.const nan) (f32.const 0.0)) (i32.const 1)) +(assert_return (invoke "f64.not_lt" (f64.const nan) (f64.const 0.0)) (i32.const 1)) +(assert_return (invoke "f64.not_le" (f64.const nan) (f64.const 0.0)) (i32.const 1)) +(assert_return (invoke "f64.not_gt" (f64.const nan) (f64.const 0.0)) (i32.const 1)) +(assert_return (invoke "f64.not_ge" (f64.const nan) (f64.const 0.0)) (i32.const 1)) + +;; Test that a method for approximating a "machine epsilon" produces the expected +;; approximation. +;; http://blogs.mathworks.com/cleve/2014/07/07/floating-point-numbers/#24cb4f4d-b8a9-4c19-b22b-9d2a9f7f3812 + +(module + (func (export "f32.epsilon") (result f32) + (f32.sub (f32.const 1.0) (f32.mul (f32.const 3.0) (f32.sub (f32.div (f32.const 4.0) (f32.const 3.0)) (f32.const 1.0))))) + + (func (export "f64.epsilon") (result f64) + (f64.sub (f64.const 1.0) (f64.mul (f64.const 3.0) (f64.sub (f64.div (f64.const 4.0) (f64.const 3.0)) (f64.const 1.0))))) +) + +(assert_return (invoke "f32.epsilon") (f32.const -0x1p-23)) +(assert_return (invoke "f64.epsilon") (f64.const 0x1p-52)) + +;; Test that a method for computing a "machine epsilon" produces the expected +;; result. +;; https://www.math.utah.edu/~beebe/software/ieee/ + +(module + (func (export "f32.epsilon") (result f32) + (local $x f32) + (local $result f32) + (set_local $x (f32.const 1)) + (loop $loop + (br_if $loop + (f32.gt + (f32.add + (tee_local $x + (f32.mul + (tee_local $result (get_local $x)) + (f32.const 0.5) + ) + ) + (f32.const 1) + ) + (f32.const 1) + ) + ) + ) + (get_local $result) + ) + + (func (export "f64.epsilon") (result f64) + (local $x f64) + (local $result f64) + (set_local $x (f64.const 1)) + (loop $loop + (br_if $loop + (f64.gt + (f64.add + (tee_local $x + (f64.mul + (tee_local $result (get_local $x)) + (f64.const 0.5) + ) + ) + (f64.const 1) + ) + (f64.const 1) + ) + ) + ) + (get_local $result) + ) +) + +(assert_return (invoke "f32.epsilon") (f32.const 0x1p-23)) +(assert_return (invoke "f64.epsilon") (f64.const 0x1p-52)) + +;; Test that floating-point numbers are not optimized as if they form a +;; trichotomy. + +(module + (func (export "f32.no_trichotomy_lt") (param $x f32) (param $y f32) (result i32) + (i32.or (f32.lt (get_local $x) (get_local $y)) (f32.ge (get_local $x) (get_local $y)))) + (func (export "f32.no_trichotomy_le") (param $x f32) (param $y f32) (result i32) + (i32.or (f32.le (get_local $x) (get_local $y)) (f32.gt (get_local $x) (get_local $y)))) + (func (export "f32.no_trichotomy_gt") (param $x f32) (param $y f32) (result i32) + (i32.or (f32.gt (get_local $x) (get_local $y)) (f32.le (get_local $x) (get_local $y)))) + (func (export "f32.no_trichotomy_ge") (param $x f32) (param $y f32) (result i32) + (i32.or (f32.ge (get_local $x) (get_local $y)) (f32.lt (get_local $x) (get_local $y)))) + + (func (export "f64.no_trichotomy_lt") (param $x f64) (param $y f64) (result i32) + (i32.or (f64.lt (get_local $x) (get_local $y)) (f64.ge (get_local $x) (get_local $y)))) + (func (export "f64.no_trichotomy_le") (param $x f64) (param $y f64) (result i32) + (i32.or (f64.le (get_local $x) (get_local $y)) (f64.gt (get_local $x) (get_local $y)))) + (func (export "f64.no_trichotomy_gt") (param $x f64) (param $y f64) (result i32) + (i32.or (f64.gt (get_local $x) (get_local $y)) (f64.le (get_local $x) (get_local $y)))) + (func (export "f64.no_trichotomy_ge") (param $x f64) (param $y f64) (result i32) + (i32.or (f64.ge (get_local $x) (get_local $y)) (f64.lt (get_local $x) (get_local $y)))) +) + +(assert_return (invoke "f32.no_trichotomy_lt" (f32.const 0.0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "f32.no_trichotomy_le" (f32.const 0.0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "f32.no_trichotomy_gt" (f32.const 0.0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "f32.no_trichotomy_ge" (f32.const 0.0) (f32.const nan)) (i32.const 0)) +(assert_return (invoke "f64.no_trichotomy_lt" (f64.const 0.0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "f64.no_trichotomy_le" (f64.const 0.0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "f64.no_trichotomy_gt" (f64.const 0.0) (f64.const nan)) (i32.const 0)) +(assert_return (invoke "f64.no_trichotomy_ge" (f64.const 0.0) (f64.const nan)) (i32.const 0)) + +;; Some test harnesses which can run this testsuite are unable to perform tests +;; of NaN bitpatterns. The following tests whether the underlying platform is +;; generally producing the kinds of NaNs expected. +(module + (func (export "f32.arithmetic_nan_bitpattern") + (param $x i32) (param $y i32) (result i32) + (i32.and (i32.reinterpret/f32 + (f32.div + (f32.reinterpret/i32 (get_local $x)) + (f32.reinterpret/i32 (get_local $y)))) + (i32.const 0x7fc00000))) + (func (export "f32.canonical_nan_bitpattern") + (param $x i32) (param $y i32) (result i32) + (i32.and (i32.reinterpret/f32 + (f32.div + (f32.reinterpret/i32 (get_local $x)) + (f32.reinterpret/i32 (get_local $y)))) + (i32.const 0x7fffffff))) + (func (export "f32.nonarithmetic_nan_bitpattern") + (param $x i32) (result i32) + (i32.reinterpret/f32 (f32.neg (f32.reinterpret/i32 (get_local $x))))) + + (func (export "f64.arithmetic_nan_bitpattern") + (param $x i64) (param $y i64) (result i64) + (i64.and (i64.reinterpret/f64 + (f64.div + (f64.reinterpret/i64 (get_local $x)) + (f64.reinterpret/i64 (get_local $y)))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.canonical_nan_bitpattern") + (param $x i64) (param $y i64) (result i64) + (i64.and (i64.reinterpret/f64 + (f64.div + (f64.reinterpret/i64 (get_local $x)) + (f64.reinterpret/i64 (get_local $y)))) + (i64.const 0x7fffffffffffffff))) + (func (export "f64.nonarithmetic_nan_bitpattern") + (param $x i64) (result i64) + (i64.reinterpret/f64 (f64.neg (f64.reinterpret/i64 (get_local $x))))) + + ;; Versions of no_fold testcases that only care about NaN bitpatterns. + (func (export "f32.no_fold_sub_zero") (param $x i32) (result i32) + (i32.and (i32.reinterpret/f32 (f32.sub (f32.reinterpret/i32 (get_local $x)) (f32.const 0.0))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_neg0_sub") (param $x i32) (result i32) + (i32.and (i32.reinterpret/f32 (f32.sub (f32.const -0.0) (f32.reinterpret/i32 (get_local $x)))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_mul_one") (param $x i32) (result i32) + (i32.and (i32.reinterpret/f32 (f32.mul (f32.reinterpret/i32 (get_local $x)) (f32.const 1.0))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_neg1_mul") (param $x i32) (result i32) + (i32.and (i32.reinterpret/f32 (f32.mul (f32.const -1.0) (f32.reinterpret/i32 (get_local $x)))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_div_one") (param $x i32) (result i32) + (i32.and (i32.reinterpret/f32 (f32.div (f32.reinterpret/i32 (get_local $x)) (f32.const 1.0))) + (i32.const 0x7fc00000))) + (func (export "f32.no_fold_div_neg1") (param $x i32) (result i32) + (i32.and (i32.reinterpret/f32 (f32.div (f32.reinterpret/i32 (get_local $x)) (f32.const -1.0))) + (i32.const 0x7fc00000))) + (func (export "f64.no_fold_sub_zero") (param $x i64) (result i64) + (i64.and (i64.reinterpret/f64 (f64.sub (f64.reinterpret/i64 (get_local $x)) (f64.const 0.0))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_neg0_sub") (param $x i64) (result i64) + (i64.and (i64.reinterpret/f64 (f64.sub (f64.const -0.0) (f64.reinterpret/i64 (get_local $x)))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_mul_one") (param $x i64) (result i64) + (i64.and (i64.reinterpret/f64 (f64.mul (f64.reinterpret/i64 (get_local $x)) (f64.const 1.0))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_neg1_mul") (param $x i64) (result i64) + (i64.and (i64.reinterpret/f64 (f64.mul (f64.const -1.0) (f64.reinterpret/i64 (get_local $x)))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_div_one") (param $x i64) (result i64) + (i64.and (i64.reinterpret/f64 (f64.div (f64.reinterpret/i64 (get_local $x)) (f64.const 1.0))) + (i64.const 0x7ff8000000000000))) + (func (export "f64.no_fold_div_neg1") (param $x i64) (result i64) + (i64.and (i64.reinterpret/f64 (f64.div (f64.reinterpret/i64 (get_local $x)) (f64.const -1.0))) + (i64.const 0x7ff8000000000000))) + (func (export "no_fold_promote_demote") (param $x i32) (result i32) + (i32.and (i32.reinterpret/f32 (f32.demote/f64 (f64.promote/f32 (f32.reinterpret/i32 (get_local $x))))) + (i32.const 0x7fc00000))) +) + +(assert_return (invoke "f32.arithmetic_nan_bitpattern" (i32.const 0x7f803210) (i32.const 0x7f803210)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.canonical_nan_bitpattern" (i32.const 0) (i32.const 0)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.canonical_nan_bitpattern" (i32.const 0x7fc00000) (i32.const 0x7fc00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.canonical_nan_bitpattern" (i32.const 0xffc00000) (i32.const 0x7fc00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.canonical_nan_bitpattern" (i32.const 0x7fc00000) (i32.const 0xffc00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.canonical_nan_bitpattern" (i32.const 0xffc00000) (i32.const 0xffc00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.nonarithmetic_nan_bitpattern" (i32.const 0x7fc03210)) (i32.const 0xffc03210)) +(assert_return (invoke "f32.nonarithmetic_nan_bitpattern" (i32.const 0xffc03210)) (i32.const 0x7fc03210)) +(assert_return (invoke "f32.nonarithmetic_nan_bitpattern" (i32.const 0x7f803210)) (i32.const 0xff803210)) +(assert_return (invoke "f32.nonarithmetic_nan_bitpattern" (i32.const 0xff803210)) (i32.const 0x7f803210)) +(assert_return (invoke "f64.arithmetic_nan_bitpattern" (i64.const 0x7ff0000000003210) (i64.const 0x7ff0000000003210)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.canonical_nan_bitpattern" (i64.const 0) (i64.const 0)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.canonical_nan_bitpattern" (i64.const 0x7ff8000000000000) (i64.const 0x7ff8000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.canonical_nan_bitpattern" (i64.const 0xfff8000000000000) (i64.const 0x7ff8000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.canonical_nan_bitpattern" (i64.const 0x7ff8000000000000) (i64.const 0xfff8000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.canonical_nan_bitpattern" (i64.const 0xfff8000000000000) (i64.const 0xfff8000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.nonarithmetic_nan_bitpattern" (i64.const 0x7ff8000000003210)) (i64.const 0xfff8000000003210)) +(assert_return (invoke "f64.nonarithmetic_nan_bitpattern" (i64.const 0xfff8000000003210)) (i64.const 0x7ff8000000003210)) +(assert_return (invoke "f64.nonarithmetic_nan_bitpattern" (i64.const 0x7ff0000000003210)) (i64.const 0xfff0000000003210)) +(assert_return (invoke "f64.nonarithmetic_nan_bitpattern" (i64.const 0xfff0000000003210)) (i64.const 0x7ff0000000003210)) +(assert_return (invoke "f32.no_fold_sub_zero" (i32.const 0x7fa00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.no_fold_neg0_sub" (i32.const 0x7fa00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.no_fold_mul_one" (i32.const 0x7fa00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.no_fold_neg1_mul" (i32.const 0x7fa00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.no_fold_div_one" (i32.const 0x7fa00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f32.no_fold_div_neg1" (i32.const 0x7fa00000)) (i32.const 0x7fc00000)) +(assert_return (invoke "f64.no_fold_sub_zero" (i64.const 0x7ff4000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.no_fold_neg0_sub" (i64.const 0x7ff4000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.no_fold_mul_one" (i64.const 0x7ff4000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.no_fold_neg1_mul" (i64.const 0x7ff4000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.no_fold_div_one" (i64.const 0x7ff4000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.no_fold_div_neg1" (i64.const 0x7ff4000000000000)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "no_fold_promote_demote" (i32.const 0x7fa00000)) (i32.const 0x7fc00000)) + +;; Test that IEEE 754 double precision does, in fact, compute a certain dot +;; product correctly. + +(module + (func (export "dot_product_example") + (param $x0 f64) (param $x1 f64) (param $x2 f64) (param $x3 f64) + (param $y0 f64) (param $y1 f64) (param $y2 f64) (param $y3 f64) + (result f64) + (f64.add (f64.add (f64.add + (f64.mul (get_local $x0) (get_local $y0)) + (f64.mul (get_local $x1) (get_local $y1))) + (f64.mul (get_local $x2) (get_local $y2))) + (f64.mul (get_local $x3) (get_local $y3))) + ) + + (func (export "with_binary_sum_collapse") + (param $x0 f64) (param $x1 f64) (param $x2 f64) (param $x3 f64) + (param $y0 f64) (param $y1 f64) (param $y2 f64) (param $y3 f64) + (result f64) + (f64.add (f64.add (f64.mul (get_local $x0) (get_local $y0)) + (f64.mul (get_local $x1) (get_local $y1))) + (f64.add (f64.mul (get_local $x2) (get_local $y2)) + (f64.mul (get_local $x3) (get_local $y3)))) + ) +) + +(assert_return (invoke "dot_product_example" + (f64.const 3.2e7) (f64.const 1.0) (f64.const -1.0) (f64.const 8.0e7) + (f64.const 4.0e7) (f64.const 1.0) (f64.const -1.0) (f64.const -1.6e7)) + (f64.const 2.0)) +(assert_return (invoke "with_binary_sum_collapse" + (f64.const 3.2e7) (f64.const 1.0) (f64.const -1.0) (f64.const 8.0e7) + (f64.const 4.0e7) (f64.const 1.0) (f64.const -1.0) (f64.const -1.6e7)) + (f64.const 2.0)) + +;; http://www.vinc17.org/research/fptest.en.html#contract2fma + +(module + (func (export "f32.contract2fma") + (param $x f32) (param $y f32) (result f32) + (f32.sqrt (f32.sub (f32.mul (get_local $x) (get_local $x)) + (f32.mul (get_local $y) (get_local $y))))) + (func (export "f64.contract2fma") + (param $x f64) (param $y f64) (result f64) + (f64.sqrt (f64.sub (f64.mul (get_local $x) (get_local $x)) + (f64.mul (get_local $y) (get_local $y))))) +) + +(assert_return (invoke "f32.contract2fma" (f32.const 1.0) (f32.const 1.0)) (f32.const 0.0)) +(assert_return (invoke "f32.contract2fma" (f32.const 0x1.19999ap+0) (f32.const 0x1.19999ap+0)) (f32.const 0.0)) +(assert_return (invoke "f32.contract2fma" (f32.const 0x1.333332p+0) (f32.const 0x1.333332p+0)) (f32.const 0.0)) +(assert_return (invoke "f64.contract2fma" (f64.const 1.0) (f64.const 1.0)) (f64.const 0.0)) +(assert_return (invoke "f64.contract2fma" (f64.const 0x1.199999999999ap+0) (f64.const 0x1.199999999999ap+0)) (f64.const 0.0)) +(assert_return (invoke "f64.contract2fma" (f64.const 0x1.3333333333333p+0) (f64.const 0x1.3333333333333p+0)) (f64.const 0.0)) + +;; Test that floating-point isn't implemented with QuickBasic for MS-DOS. +;; https://support.microsoft.com/en-us/help/42980/-complete-tutorial-to-understand-ieee-floating-point-errors + +(module + (func (export "f32.division_by_small_number") + (param $a f32) (param $b f32) (param $c f32) (result f32) + (f32.sub (get_local $a) (f32.div (get_local $b) (get_local $c)))) + (func (export "f64.division_by_small_number") + (param $a f64) (param $b f64) (param $c f64) (result f64) + (f64.sub (get_local $a) (f64.div (get_local $b) (get_local $c)))) +) + +(assert_return (invoke "f32.division_by_small_number" (f32.const 112000000) (f32.const 100000) (f32.const 0.0009)) (f32.const 888888)) +(assert_return (invoke "f64.division_by_small_number" (f64.const 112000000) (f64.const 100000) (f64.const 0.0009)) (f64.const 888888.8888888806)) + +;; Test a simple golden ratio computation. +;; http://mathworld.wolfram.com/GoldenRatio.html + +(module + (func (export "f32.golden_ratio") (param $a f32) (param $b f32) (param $c f32) (result f32) + (f32.mul (get_local 0) (f32.add (get_local 1) (f32.sqrt (get_local 2))))) + (func (export "f64.golden_ratio") (param $a f64) (param $b f64) (param $c f64) (result f64) + (f64.mul (get_local 0) (f64.add (get_local 1) (f64.sqrt (get_local 2))))) +) + +(assert_return (invoke "f32.golden_ratio" (f32.const 0.5) (f32.const 1.0) (f32.const 5.0)) (f32.const 1.618034)) +(assert_return (invoke "f64.golden_ratio" (f64.const 0.5) (f64.const 1.0) (f64.const 5.0)) (f64.const 1.618033988749895)) + +;; Test some silver means computations. +;; http://mathworld.wolfram.com/SilverRatio.html + +(module + (func (export "f32.silver_means") (param $n f32) (result f32) + (f32.mul (f32.const 0.5) + (f32.add (get_local $n) + (f32.sqrt (f32.add (f32.mul (get_local $n) (get_local $n)) + (f32.const 4.0)))))) + (func (export "f64.silver_means") (param $n f64) (result f64) + (f64.mul (f64.const 0.5) + (f64.add (get_local $n) + (f64.sqrt (f64.add (f64.mul (get_local $n) (get_local $n)) + (f64.const 4.0)))))) +) + +(assert_return (invoke "f32.silver_means" (f32.const 0.0)) (f32.const 1.0)) +(assert_return (invoke "f32.silver_means" (f32.const 1.0)) (f32.const 1.6180340)) +(assert_return (invoke "f32.silver_means" (f32.const 2.0)) (f32.const 2.4142136)) +(assert_return (invoke "f32.silver_means" (f32.const 3.0)) (f32.const 3.3027756)) +(assert_return (invoke "f32.silver_means" (f32.const 4.0)) (f32.const 4.2360680)) +(assert_return (invoke "f32.silver_means" (f32.const 5.0)) (f32.const 5.1925821)) +(assert_return (invoke "f64.silver_means" (f64.const 0.0)) (f64.const 1.0)) +(assert_return (invoke "f64.silver_means" (f64.const 1.0)) (f64.const 1.618033988749895)) +(assert_return (invoke "f64.silver_means" (f64.const 2.0)) (f64.const 2.414213562373095)) +(assert_return (invoke "f64.silver_means" (f64.const 3.0)) (f64.const 3.302775637731995)) +(assert_return (invoke "f64.silver_means" (f64.const 4.0)) (f64.const 4.236067977499790)) +(assert_return (invoke "f64.silver_means" (f64.const 5.0)) (f64.const 5.192582403567252)) + +;; Test that an f64 0.4 isn't double-rounded as via extended precision. +;; https://bugs.llvm.org/show_bug.cgi?id=11200 + +(module + (func (export "point_four") (param $four f64) (param $ten f64) (result i32) + (f64.lt (f64.div (get_local $four) (get_local $ten)) (f64.const 0.4))) +) + +(assert_return (invoke "point_four" (f64.const 4.0) (f64.const 10.0)) (i32.const 0)) + +;; Test an approximation function for tau; it should produces the correctly +;; rounded result after (and only after) the expected number of iterations. + +;; NOT SUPPORTED IN BINARYEN +(;module + (func (export "tau") (param i32) (result f64) + (local f64 f64 f64 f64) + f64.const 0x0p+0 + set_local 1 + block + get_local 0 + i32.const 1 + i32.lt_s + br_if 0 + f64.const 0x1p+0 + set_local 2 + f64.const 0x0p+0 + set_local 3 + loop + get_local 1 + get_local 2 + f64.const 0x1p+3 + get_local 3 + f64.const 0x1p+3 + f64.mul + tee_local 4 + f64.const 0x1p+0 + f64.add + f64.div + f64.const 0x1p+2 + get_local 4 + f64.const 0x1p+2 + f64.add + f64.div + f64.sub + f64.const 0x1p+1 + get_local 4 + f64.const 0x1.4p+2 + f64.add + f64.div + f64.sub + f64.const 0x1p+1 + get_local 4 + f64.const 0x1.8p+2 + f64.add + f64.div + f64.sub + f64.mul + f64.add + set_local 1 + get_local 3 + f64.const 0x1p+0 + f64.add + set_local 3 + get_local 2 + f64.const 0x1p-4 + f64.mul + set_local 2 + get_local 0 + i32.const -1 + i32.add + tee_local 0 + br_if 0 + end + end + get_local 1 + ) +;) +;; (assert_return (invoke "tau" (i32.const 10)) (f64.const 0x1.921fb54442d14p+2)) +;; (assert_return (invoke "tau" (i32.const 11)) (f64.const 0x1.921fb54442d18p+2)) + +;; Test that y < 0 ? x : (x + 1) is not folded to x + (y < 0). + +(module + (func (export "f32.no_fold_conditional_inc") (param $x f32) (param $y f32) (result f32) + (select (get_local $x) + (f32.add (get_local $x) (f32.const 1.0)) + (f32.lt (get_local $y) (f32.const 0.0)))) + (func (export "f64.no_fold_conditional_inc") (param $x f64) (param $y f64) (result f64) + (select (get_local $x) + (f64.add (get_local $x) (f64.const 1.0)) + (f64.lt (get_local $y) (f64.const 0.0)))) +) + +(assert_return (invoke "f32.no_fold_conditional_inc" (f32.const -0.0) (f32.const -1.0)) (f32.const -0.0)) +(assert_return (invoke "f64.no_fold_conditional_inc" (f64.const -0.0) (f64.const -1.0)) (f64.const -0.0)) diff --git a/test/spec/float_literals.wast b/test/spec/float_literals.wast new file mode 100644 index 00000000000..73b78936133 --- /dev/null +++ b/test/spec/float_literals.wast @@ -0,0 +1,507 @@ +;; Test floating-point literal parsing. + +(module + ;; f32 special values + (func (export "f32.nan") (result i32) (i32.reinterpret/f32 (f32.const nan))) + (func (export "f32.positive_nan") (result i32) (i32.reinterpret/f32 (f32.const +nan))) + (func (export "f32.negative_nan") (result i32) (i32.reinterpret/f32 (f32.const -nan))) + (func (export "f32.plain_nan") (result i32) (i32.reinterpret/f32 (f32.const nan:0x400000))) + (func (export "f32.informally_known_as_plain_snan") (result i32) (i32.reinterpret/f32 (f32.const nan:0x200000))) + (func (export "f32.all_ones_nan") (result i32) (i32.reinterpret/f32 (f32.const -nan:0x7fffff))) + (func (export "f32.misc_nan") (result i32) (i32.reinterpret/f32 (f32.const nan:0x012345))) + (func (export "f32.misc_positive_nan") (result i32) (i32.reinterpret/f32 (f32.const +nan:0x304050))) + (func (export "f32.misc_negative_nan") (result i32) (i32.reinterpret/f32 (f32.const -nan:0x2abcde))) + (func (export "f32.infinity") (result i32) (i32.reinterpret/f32 (f32.const inf))) + (func (export "f32.positive_infinity") (result i32) (i32.reinterpret/f32 (f32.const +inf))) + (func (export "f32.negative_infinity") (result i32) (i32.reinterpret/f32 (f32.const -inf))) + + ;; f32 numbers + (func (export "f32.zero") (result i32) (i32.reinterpret/f32 (f32.const 0x0.0p0))) + (func (export "f32.positive_zero") (result i32) (i32.reinterpret/f32 (f32.const +0x0.0p0))) + (func (export "f32.negative_zero") (result i32) (i32.reinterpret/f32 (f32.const -0x0.0p0))) + (func (export "f32.misc") (result i32) (i32.reinterpret/f32 (f32.const 0x1.921fb6p+2))) + (func (export "f32.min_positive") (result i32) (i32.reinterpret/f32 (f32.const 0x1p-149))) + (func (export "f32.min_normal") (result i32) (i32.reinterpret/f32 (f32.const 0x1p-126))) + (func (export "f32.max_finite") (result i32) (i32.reinterpret/f32 (f32.const 0x1.fffffep+127))) + (func (export "f32.max_subnormal") (result i32) (i32.reinterpret/f32 (f32.const 0x1.fffffcp-127))) + (func (export "f32.trailing_dot") (result i32) (i32.reinterpret/f32 (f32.const 0x1.p10))) + + ;; f32 in decimal format + (func (export "f32_dec.zero") (result i32) (i32.reinterpret/f32 (f32.const 0.0e0))) + (func (export "f32_dec.positive_zero") (result i32) (i32.reinterpret/f32 (f32.const +0.0e0))) + (func (export "f32_dec.negative_zero") (result i32) (i32.reinterpret/f32 (f32.const -0.0e0))) + (func (export "f32_dec.misc") (result i32) (i32.reinterpret/f32 (f32.const 6.28318548202514648))) + (func (export "f32_dec.min_positive") (result i32) (i32.reinterpret/f32 (f32.const 1.4013e-45))) + (func (export "f32_dec.min_normal") (result i32) (i32.reinterpret/f32 (f32.const 1.1754944e-38))) + (func (export "f32_dec.max_subnormal") (result i32) (i32.reinterpret/f32 (f32.const 1.1754942e-38))) + (func (export "f32_dec.max_finite") (result i32) (i32.reinterpret/f32 (f32.const 3.4028234e+38))) + (func (export "f32_dec.trailing_dot") (result i32) (i32.reinterpret/f32 (f32.const 1.e10))) + + ;; https://twitter.com/Archivd/status/994637336506912768 + (func (export "f32_dec.root_beer_float") (result i32) (i32.reinterpret/f32 (f32.const 1.000000119))) + + ;; f64 special values + (func (export "f64.nan") (result i64) (i64.reinterpret/f64 (f64.const nan))) + (func (export "f64.positive_nan") (result i64) (i64.reinterpret/f64 (f64.const +nan))) + (func (export "f64.negative_nan") (result i64) (i64.reinterpret/f64 (f64.const -nan))) + (func (export "f64.plain_nan") (result i64) (i64.reinterpret/f64 (f64.const nan:0x8000000000000))) + (func (export "f64.informally_known_as_plain_snan") (result i64) (i64.reinterpret/f64 (f64.const nan:0x4000000000000))) + (func (export "f64.all_ones_nan") (result i64) (i64.reinterpret/f64 (f64.const -nan:0xfffffffffffff))) + (func (export "f64.misc_nan") (result i64) (i64.reinterpret/f64 (f64.const nan:0x0123456789abc))) + (func (export "f64.misc_positive_nan") (result i64) (i64.reinterpret/f64 (f64.const +nan:0x3040506070809))) + (func (export "f64.misc_negative_nan") (result i64) (i64.reinterpret/f64 (f64.const -nan:0x2abcdef012345))) + (func (export "f64.infinity") (result i64) (i64.reinterpret/f64 (f64.const inf))) + (func (export "f64.positive_infinity") (result i64) (i64.reinterpret/f64 (f64.const +inf))) + (func (export "f64.negative_infinity") (result i64) (i64.reinterpret/f64 (f64.const -inf))) + + ;; f64 numbers + (func (export "f64.zero") (result i64) (i64.reinterpret/f64 (f64.const 0x0.0p0))) + (func (export "f64.positive_zero") (result i64) (i64.reinterpret/f64 (f64.const +0x0.0p0))) + (func (export "f64.negative_zero") (result i64) (i64.reinterpret/f64 (f64.const -0x0.0p0))) + (func (export "f64.misc") (result i64) (i64.reinterpret/f64 (f64.const 0x1.921fb54442d18p+2))) + (func (export "f64.min_positive") (result i64) (i64.reinterpret/f64 (f64.const 0x0.0000000000001p-1022))) + (func (export "f64.min_normal") (result i64) (i64.reinterpret/f64 (f64.const 0x1p-1022))) + (func (export "f64.max_subnormal") (result i64) (i64.reinterpret/f64 (f64.const 0x0.fffffffffffffp-1022))) + (func (export "f64.max_finite") (result i64) (i64.reinterpret/f64 (f64.const 0x1.fffffffffffffp+1023))) + (func (export "f64.trailing_dot") (result i64) (i64.reinterpret/f64 (f64.const 0x1.p100))) + + ;; f64 numbers in decimal format + (func (export "f64_dec.zero") (result i64) (i64.reinterpret/f64 (f64.const 0.0e0))) + (func (export "f64_dec.positive_zero") (result i64) (i64.reinterpret/f64 (f64.const +0.0e0))) + (func (export "f64_dec.negative_zero") (result i64) (i64.reinterpret/f64 (f64.const -0.0e0))) + (func (export "f64_dec.misc") (result i64) (i64.reinterpret/f64 (f64.const 6.28318530717958623))) + (func (export "f64_dec.min_positive") (result i64) (i64.reinterpret/f64 (f64.const 4.94066e-324))) + (func (export "f64_dec.min_normal") (result i64) (i64.reinterpret/f64 (f64.const 2.2250738585072012e-308))) + (func (export "f64_dec.max_subnormal") (result i64) (i64.reinterpret/f64 (f64.const 2.2250738585072011e-308))) + (func (export "f64_dec.max_finite") (result i64) (i64.reinterpret/f64 (f64.const 1.7976931348623157e+308))) + (func (export "f64_dec.trailing_dot") (result i64) (i64.reinterpret/f64 (f64.const 1.e100))) + + ;; https://twitter.com/Archivd/status/994637336506912768 + (func (export "f64_dec.root_beer_float") (result i64) (i64.reinterpret/f64 (f64.const 1.000000119))) + + ;; NOT SUPPORTED IN BINARYEN + ;; (func (export "f32-dec-sep1") (result f32) (f32.const 1_000_000)) + ;; (func (export "f32-dec-sep2") (result f32) (f32.const 1_0_0_0)) + ;; (func (export "f32-dec-sep3") (result f32) (f32.const 100_3.141_592)) + ;; (func (export "f32-dec-sep4") (result f32) (f32.const 99e+1_3)) + ;; (func (export "f32-dec-sep5") (result f32) (f32.const 122_000.11_3_54E0_2_3)) + ;; (func (export "f32-hex-sep1") (result f32) (f32.const 0xa_0f_00_99)) + ;; (func (export "f32-hex-sep2") (result f32) (f32.const 0x1_a_A_0_f)) + ;; (func (export "f32-hex-sep3") (result f32) (f32.const 0xa0_ff.f141_a59a)) + ;; (func (export "f32-hex-sep4") (result f32) (f32.const 0xf0P+1_3)) + ;; (func (export "f32-hex-sep5") (result f32) (f32.const 0x2a_f00a.1f_3_eep2_3)) + ;; (func (export "f64-dec-sep1") (result f64) (f64.const 1_000_000)) + ;; (func (export "f64-dec-sep2") (result f64) (f64.const 1_0_0_0)) + ;; (func (export "f64-dec-sep3") (result f64) (f64.const 100_3.141_592)) + ;; (func (export "f64-dec-sep4") (result f64) (f64.const 99e-1_23)) + ;; (func (export "f64-dec-sep5") (result f64) (f64.const 122_000.11_3_54e0_2_3)) + ;; (func (export "f64-hex-sep1") (result f64) (f64.const 0xa_f00f_0000_9999)) + ;; (func (export "f64-hex-sep2") (result f64) (f64.const 0x1_a_A_0_f)) + ;; (func (export "f64-hex-sep3") (result f64) (f64.const 0xa0_ff.f141_a59a)) + ;; (func (export "f64-hex-sep4") (result f64) (f64.const 0xf0P+1_3)) + ;; (func (export "f64-hex-sep5") (result f64) (f64.const 0x2a_f00a.1f_3_eep2_3)) +) + +(assert_return (invoke "f32.nan") (i32.const 0x7fc00000)) +(assert_return (invoke "f32.positive_nan") (i32.const 0x7fc00000)) +(assert_return (invoke "f32.negative_nan") (i32.const 0xffc00000)) +(assert_return (invoke "f32.plain_nan") (i32.const 0x7fc00000)) +(assert_return (invoke "f32.informally_known_as_plain_snan") (i32.const 0x7fa00000)) +(assert_return (invoke "f32.all_ones_nan") (i32.const 0xffffffff)) +(assert_return (invoke "f32.misc_nan") (i32.const 0x7f812345)) +(assert_return (invoke "f32.misc_positive_nan") (i32.const 0x7fb04050)) +(assert_return (invoke "f32.misc_negative_nan") (i32.const 0xffaabcde)) +(assert_return (invoke "f32.infinity") (i32.const 0x7f800000)) +(assert_return (invoke "f32.positive_infinity") (i32.const 0x7f800000)) +(assert_return (invoke "f32.negative_infinity") (i32.const 0xff800000)) +(assert_return (invoke "f32.zero") (i32.const 0)) +(assert_return (invoke "f32.positive_zero") (i32.const 0)) +(assert_return (invoke "f32.negative_zero") (i32.const 0x80000000)) +(assert_return (invoke "f32.misc") (i32.const 0x40c90fdb)) +(assert_return (invoke "f32.min_positive") (i32.const 1)) +(assert_return (invoke "f32.min_normal") (i32.const 0x800000)) +(assert_return (invoke "f32.max_subnormal") (i32.const 0x7fffff)) +(assert_return (invoke "f32.max_finite") (i32.const 0x7f7fffff)) +(assert_return (invoke "f32.trailing_dot") (i32.const 0x44800000)) +(assert_return (invoke "f32_dec.zero") (i32.const 0)) +(assert_return (invoke "f32_dec.positive_zero") (i32.const 0)) +(assert_return (invoke "f32_dec.negative_zero") (i32.const 0x80000000)) +(assert_return (invoke "f32_dec.misc") (i32.const 0x40c90fdb)) +(assert_return (invoke "f32_dec.min_positive") (i32.const 1)) +(assert_return (invoke "f32_dec.min_normal") (i32.const 0x800000)) +(assert_return (invoke "f32_dec.max_subnormal") (i32.const 0x7fffff)) +(assert_return (invoke "f32_dec.max_finite") (i32.const 0x7f7fffff)) +(assert_return (invoke "f32_dec.trailing_dot") (i32.const 0x501502f9)) +(assert_return (invoke "f32_dec.root_beer_float") (i32.const 0x3f800001)) + +(assert_return (invoke "f64.nan") (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.positive_nan") (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.negative_nan") (i64.const 0xfff8000000000000)) +(assert_return (invoke "f64.plain_nan") (i64.const 0x7ff8000000000000)) +(assert_return (invoke "f64.informally_known_as_plain_snan") (i64.const 0x7ff4000000000000)) +(assert_return (invoke "f64.all_ones_nan") (i64.const 0xffffffffffffffff)) +(assert_return (invoke "f64.misc_nan") (i64.const 0x7ff0123456789abc)) +(assert_return (invoke "f64.misc_positive_nan") (i64.const 0x7ff3040506070809)) +(assert_return (invoke "f64.misc_negative_nan") (i64.const 0xfff2abcdef012345)) +(assert_return (invoke "f64.infinity") (i64.const 0x7ff0000000000000)) +(assert_return (invoke "f64.positive_infinity") (i64.const 0x7ff0000000000000)) +(assert_return (invoke "f64.negative_infinity") (i64.const 0xfff0000000000000)) +(assert_return (invoke "f64.zero") (i64.const 0)) +(assert_return (invoke "f64.positive_zero") (i64.const 0)) +(assert_return (invoke "f64.negative_zero") (i64.const 0x8000000000000000)) +(assert_return (invoke "f64.misc") (i64.const 0x401921fb54442d18)) +(assert_return (invoke "f64.min_positive") (i64.const 1)) +(assert_return (invoke "f64.min_normal") (i64.const 0x10000000000000)) +(assert_return (invoke "f64.max_subnormal") (i64.const 0xfffffffffffff)) +(assert_return (invoke "f64.max_finite") (i64.const 0x7fefffffffffffff)) +(assert_return (invoke "f64.trailing_dot") (i64.const 0x4630000000000000)) +(assert_return (invoke "f64_dec.zero") (i64.const 0)) +(assert_return (invoke "f64_dec.positive_zero") (i64.const 0)) +(assert_return (invoke "f64_dec.negative_zero") (i64.const 0x8000000000000000)) +(assert_return (invoke "f64_dec.misc") (i64.const 0x401921fb54442d18)) +(assert_return (invoke "f64_dec.min_positive") (i64.const 1)) +(assert_return (invoke "f64_dec.min_normal") (i64.const 0x10000000000000)) +(assert_return (invoke "f64_dec.max_subnormal") (i64.const 0xfffffffffffff)) +(assert_return (invoke "f64_dec.max_finite") (i64.const 0x7fefffffffffffff)) +(assert_return (invoke "f64_dec.trailing_dot") (i64.const 0x54b249ad2594c37d)) +(assert_return (invoke "f64_dec.root_beer_float") (i64.const 0x3ff000001ff19e24)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "f32-dec-sep1") (f32.const 1000000)) +;; (assert_return (invoke "f32-dec-sep2") (f32.const 1000)) +;; (assert_return (invoke "f32-dec-sep3") (f32.const 1003.141592)) +;; (assert_return (invoke "f32-dec-sep4") (f32.const 99e+13)) +;; (assert_return (invoke "f32-dec-sep5") (f32.const 122000.11354e23)) +;; (assert_return (invoke "f32-hex-sep1") (f32.const 0xa0f0099)) +;; (assert_return (invoke "f32-hex-sep2") (f32.const 0x1aa0f)) +;; (assert_return (invoke "f32-hex-sep3") (f32.const 0xa0ff.f141a59a)) +;; (assert_return (invoke "f32-hex-sep4") (f32.const 0xf0P+13)) +;; (assert_return (invoke "f32-hex-sep5") (f32.const 0x2af00a.1f3eep23)) +;; (assert_return (invoke "f64-dec-sep1") (f64.const 1000000)) +;; (assert_return (invoke "f64-dec-sep2") (f64.const 1000)) +;; (assert_return (invoke "f64-dec-sep3") (f64.const 1003.141592)) +;; (assert_return (invoke "f64-dec-sep4") (f64.const 99e-123)) +;; (assert_return (invoke "f64-dec-sep5") (f64.const 122000.11354e23)) +;; (assert_return (invoke "f64-hex-sep1") (f64.const 0xaf00f00009999)) +;; (assert_return (invoke "f64-hex-sep2") (f64.const 0x1aa0f)) +;; (assert_return (invoke "f64-hex-sep3") (f64.const 0xa0ff.f141a59a)) +;; (assert_return (invoke "f64-hex-sep4") (f64.const 0xf0P+13)) +;; (assert_return (invoke "f64-hex-sep5") (f64.const 0x2af00a.1f3eep23)) + +;; NOT SUPPORTED IN BINARYEN +;; Test parsing a float from binary +(;module binary + ;; (func (export "4294967249") (result f64) (f64.const 4294967249)) + "\00\61\73\6d\01\00\00\00\01\85\80\80\80\00\01\60" + "\00\01\7c\03\82\80\80\80\00\01\00\07\8e\80\80\80" + "\00\01\0a\34\32\39\34\39\36\37\32\34\39\00\00\0a" + "\91\80\80\80\00\01\8b\80\80\80\00\00\44\00\00\20" + "\fa\ff\ff\ef\41\0b" +;) +;; (assert_return (invoke "4294967249") (f64.const 4294967249)) + +(assert_malformed + (module quote "(global f32 (f32.const _100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const +_100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const -_100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 99_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1__000))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const _1.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1.0_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1_.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1._0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const _1e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1e1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1_e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1e_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const _1.0e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1.0e1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1.0_e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1.0e_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1.0e+_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 1.0e_+1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const _0x100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0_x100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x_100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x00_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0xff__ffff))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x_1.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1.0_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1_.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1._0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x_1p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1p1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1_p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1p_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x_1.0p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1.0p1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1.0_p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1.0p_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1.0p+_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f32 (f32.const 0x1.0p_+1))") + "unknown operator" +) + +(assert_malformed + (module quote "(global f64 (f64.const _100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const +_100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const -_100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 99_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1__000))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const _1.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1.0_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1_.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1._0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const _1e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1e1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1_e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1e_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const _1.0e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1.0e1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1.0_e1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1.0e_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1.0e+_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 1.0e_+1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const _0x100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0_x100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x_100))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x00_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0xff__ffff))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x_1.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1.0_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1_.0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1._0))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x_1p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1p1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1_p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1p_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x_1.0p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1.0p1_))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1.0_p1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1.0p_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1.0p+_1))") + "unknown operator" +) +(assert_malformed + (module quote "(global f64 (f64.const 0x1.0p_+1))") + "unknown operator" +) diff --git a/test/spec/float_memory.wast b/test/spec/float_memory.wast new file mode 100644 index 00000000000..3801158f92b --- /dev/null +++ b/test/spec/float_memory.wast @@ -0,0 +1,157 @@ +;; Test that floating-point load and store are bit-preserving. + +;; Test that load and store do not canonicalize NaNs as x87 does. + +(module + (memory (data "\00\00\a0\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 0))) + (func (export "i32.load") (result i32) (i32.load (i32.const 0))) + (func (export "f32.store") (f32.store (i32.const 0) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i32.const 0) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i32.const 0) (i32.const 0))) +) + +(assert_return (invoke "i32.load") (i32.const 0x7fa00000)) +(assert_return (invoke "f32.load") (f32.const nan:0x200000)) +(invoke "reset") +(assert_return (invoke "i32.load") (i32.const 0x0)) +(assert_return (invoke "f32.load") (f32.const 0.0)) +(invoke "f32.store") +(assert_return (invoke "i32.load") (i32.const 0x7fa00000)) +(assert_return (invoke "f32.load") (f32.const nan:0x200000)) +(invoke "reset") +(assert_return (invoke "i32.load") (i32.const 0x0)) +(assert_return (invoke "f32.load") (f32.const 0.0)) +(invoke "i32.store") +(assert_return (invoke "i32.load") (i32.const 0x7fa00000)) +(assert_return (invoke "f32.load") (f32.const nan:0x200000)) + +(module + (memory (data "\00\00\00\00\00\00\f4\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 0))) + (func (export "i64.load") (result i64) (i64.load (i32.const 0))) + (func (export "f64.store") (f64.store (i32.const 0) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i32.const 0) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i32.const 0) (i64.const 0))) +) + +(assert_return (invoke "i64.load") (i64.const 0x7ff4000000000000)) +(assert_return (invoke "f64.load") (f64.const nan:0x4000000000000)) +(invoke "reset") +(assert_return (invoke "i64.load") (i64.const 0x0)) +(assert_return (invoke "f64.load") (f64.const 0.0)) +(invoke "f64.store") +(assert_return (invoke "i64.load") (i64.const 0x7ff4000000000000)) +(assert_return (invoke "f64.load") (f64.const nan:0x4000000000000)) +(invoke "reset") +(assert_return (invoke "i64.load") (i64.const 0x0)) +(assert_return (invoke "f64.load") (f64.const 0.0)) +(invoke "i64.store") +(assert_return (invoke "i64.load") (i64.const 0x7ff4000000000000)) +(assert_return (invoke "f64.load") (f64.const nan:0x4000000000000)) + +;; Test that unaligned load and store do not canonicalize NaNs. + +(module + (memory (data "\00\00\00\a0\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 1))) + (func (export "i32.load") (result i32) (i32.load (i32.const 1))) + (func (export "f32.store") (f32.store (i32.const 1) (f32.const nan:0x200000))) + (func (export "i32.store") (i32.store (i32.const 1) (i32.const 0x7fa00000))) + (func (export "reset") (i32.store (i32.const 1) (i32.const 0))) +) + +(assert_return (invoke "i32.load") (i32.const 0x7fa00000)) +(assert_return (invoke "f32.load") (f32.const nan:0x200000)) +(invoke "reset") +(assert_return (invoke "i32.load") (i32.const 0x0)) +(assert_return (invoke "f32.load") (f32.const 0.0)) +(invoke "f32.store") +(assert_return (invoke "i32.load") (i32.const 0x7fa00000)) +(assert_return (invoke "f32.load") (f32.const nan:0x200000)) +(invoke "reset") +(assert_return (invoke "i32.load") (i32.const 0x0)) +(assert_return (invoke "f32.load") (f32.const 0.0)) +(invoke "i32.store") +(assert_return (invoke "i32.load") (i32.const 0x7fa00000)) +(assert_return (invoke "f32.load") (f32.const nan:0x200000)) + +(module + (memory (data "\00\00\00\00\00\00\00\f4\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 1))) + (func (export "i64.load") (result i64) (i64.load (i32.const 1))) + (func (export "f64.store") (f64.store (i32.const 1) (f64.const nan:0x4000000000000))) + (func (export "i64.store") (i64.store (i32.const 1) (i64.const 0x7ff4000000000000))) + (func (export "reset") (i64.store (i32.const 1) (i64.const 0))) +) + +(assert_return (invoke "i64.load") (i64.const 0x7ff4000000000000)) +(assert_return (invoke "f64.load") (f64.const nan:0x4000000000000)) +(invoke "reset") +(assert_return (invoke "i64.load") (i64.const 0x0)) +(assert_return (invoke "f64.load") (f64.const 0.0)) +(invoke "f64.store") +(assert_return (invoke "i64.load") (i64.const 0x7ff4000000000000)) +(assert_return (invoke "f64.load") (f64.const nan:0x4000000000000)) +(invoke "reset") +(assert_return (invoke "i64.load") (i64.const 0x0)) +(assert_return (invoke "f64.load") (f64.const 0.0)) +(invoke "i64.store") +(assert_return (invoke "i64.load") (i64.const 0x7ff4000000000000)) +(assert_return (invoke "f64.load") (f64.const nan:0x4000000000000)) + +;; Test that load and store do not canonicalize NaNs as some JS engines do. + +(module + (memory (data "\01\00\d0\7f")) + + (func (export "f32.load") (result f32) (f32.load (i32.const 0))) + (func (export "i32.load") (result i32) (i32.load (i32.const 0))) + (func (export "f32.store") (f32.store (i32.const 0) (f32.const nan:0x500001))) + (func (export "i32.store") (i32.store (i32.const 0) (i32.const 0x7fd00001))) + (func (export "reset") (i32.store (i32.const 0) (i32.const 0))) +) + +(assert_return (invoke "i32.load") (i32.const 0x7fd00001)) +(assert_return (invoke "f32.load") (f32.const nan:0x500001)) +(invoke "reset") +(assert_return (invoke "i32.load") (i32.const 0x0)) +(assert_return (invoke "f32.load") (f32.const 0.0)) +(invoke "f32.store") +(assert_return (invoke "i32.load") (i32.const 0x7fd00001)) +(assert_return (invoke "f32.load") (f32.const nan:0x500001)) +(invoke "reset") +(assert_return (invoke "i32.load") (i32.const 0x0)) +(assert_return (invoke "f32.load") (f32.const 0.0)) +(invoke "i32.store") +(assert_return (invoke "i32.load") (i32.const 0x7fd00001)) +(assert_return (invoke "f32.load") (f32.const nan:0x500001)) + +(module + (memory (data "\01\00\00\00\00\00\fc\7f")) + + (func (export "f64.load") (result f64) (f64.load (i32.const 0))) + (func (export "i64.load") (result i64) (i64.load (i32.const 0))) + (func (export "f64.store") (f64.store (i32.const 0) (f64.const nan:0xc000000000001))) + (func (export "i64.store") (i64.store (i32.const 0) (i64.const 0x7ffc000000000001))) + (func (export "reset") (i64.store (i32.const 0) (i64.const 0))) +) + +(assert_return (invoke "i64.load") (i64.const 0x7ffc000000000001)) +(assert_return (invoke "f64.load") (f64.const nan:0xc000000000001)) +(invoke "reset") +(assert_return (invoke "i64.load") (i64.const 0x0)) +(assert_return (invoke "f64.load") (f64.const 0.0)) +(invoke "f64.store") +(assert_return (invoke "i64.load") (i64.const 0x7ffc000000000001)) +(assert_return (invoke "f64.load") (f64.const nan:0xc000000000001)) +(invoke "reset") +(assert_return (invoke "i64.load") (i64.const 0x0)) +(assert_return (invoke "f64.load") (f64.const 0.0)) +(invoke "i64.store") +(assert_return (invoke "i64.load") (i64.const 0x7ffc000000000001)) +(assert_return (invoke "f64.load") (f64.const nan:0xc000000000001)) diff --git a/test/spec/float_misc.wast b/test/spec/float_misc.wast new file mode 100644 index 00000000000..313534326d3 --- /dev/null +++ b/test/spec/float_misc.wast @@ -0,0 +1,678 @@ +;; Platforms intended to run WebAssembly must support IEEE 754 arithmetic. +;; This testsuite is not currently sufficient for full IEEE 754 conformance +;; testing; platforms are currently expected to meet these requirements in +;; their own way (widely-used hardware platforms already do this). +;; +;; What this testsuite does test is that (a) the platform is basically IEEE 754 +;; rather than something else entirely, (b) it's configured correctly for +;; WebAssembly (rounding direction, exception masks, precision level, subnormal +;; mode, etc.), (c) the WebAssembly implementation doesn't perform any common +;; value-changing optimizations, and (d) that the WebAssembly implementation +;; doesn't exhibit any known implementation bugs. +;; +;; This file supplements f32.wast, f64.wast, f32_bitwise.wast, f64_bitwise.wast, +;; f32_cmp.wast, and f64_cmp.wast with additional single-instruction tests +;; covering additional miscellaneous interesting cases. + +(module + (func (export "f32.add") (param $x f32) (param $y f32) (result f32) (f32.add (get_local $x) (get_local $y))) + (func (export "f32.sub") (param $x f32) (param $y f32) (result f32) (f32.sub (get_local $x) (get_local $y))) + (func (export "f32.mul") (param $x f32) (param $y f32) (result f32) (f32.mul (get_local $x) (get_local $y))) + (func (export "f32.div") (param $x f32) (param $y f32) (result f32) (f32.div (get_local $x) (get_local $y))) + (func (export "f32.sqrt") (param $x f32) (result f32) (f32.sqrt (get_local $x))) + (func (export "f32.abs") (param $x f32) (result f32) (f32.abs (get_local $x))) + (func (export "f32.neg") (param $x f32) (result f32) (f32.neg (get_local $x))) + (func (export "f32.copysign") (param $x f32) (param $y f32) (result f32) (f32.copysign (get_local $x) (get_local $y))) + (func (export "f32.ceil") (param $x f32) (result f32) (f32.ceil (get_local $x))) + (func (export "f32.floor") (param $x f32) (result f32) (f32.floor (get_local $x))) + (func (export "f32.trunc") (param $x f32) (result f32) (f32.trunc (get_local $x))) + (func (export "f32.nearest") (param $x f32) (result f32) (f32.nearest (get_local $x))) + (func (export "f32.min") (param $x f32) (param $y f32) (result f32) (f32.min (get_local $x) (get_local $y))) + (func (export "f32.max") (param $x f32) (param $y f32) (result f32) (f32.max (get_local $x) (get_local $y))) + + (func (export "f64.add") (param $x f64) (param $y f64) (result f64) (f64.add (get_local $x) (get_local $y))) + (func (export "f64.sub") (param $x f64) (param $y f64) (result f64) (f64.sub (get_local $x) (get_local $y))) + (func (export "f64.mul") (param $x f64) (param $y f64) (result f64) (f64.mul (get_local $x) (get_local $y))) + (func (export "f64.div") (param $x f64) (param $y f64) (result f64) (f64.div (get_local $x) (get_local $y))) + (func (export "f64.sqrt") (param $x f64) (result f64) (f64.sqrt (get_local $x))) + (func (export "f64.abs") (param $x f64) (result f64) (f64.abs (get_local $x))) + (func (export "f64.neg") (param $x f64) (result f64) (f64.neg (get_local $x))) + (func (export "f64.copysign") (param $x f64) (param $y f64) (result f64) (f64.copysign (get_local $x) (get_local $y))) + (func (export "f64.ceil") (param $x f64) (result f64) (f64.ceil (get_local $x))) + (func (export "f64.floor") (param $x f64) (result f64) (f64.floor (get_local $x))) + (func (export "f64.trunc") (param $x f64) (result f64) (f64.trunc (get_local $x))) + (func (export "f64.nearest") (param $x f64) (result f64) (f64.nearest (get_local $x))) + (func (export "f64.min") (param $x f64) (param $y f64) (result f64) (f64.min (get_local $x) (get_local $y))) + (func (export "f64.max") (param $x f64) (param $y f64) (result f64) (f64.max (get_local $x) (get_local $y))) +) + +;; Miscellaneous values. +(assert_return (invoke "f32.add" (f32.const 1.1234567890) (f32.const 1.2345e-10)) (f32.const 1.123456789)) +(assert_return (invoke "f64.add" (f64.const 1.1234567890) (f64.const 1.2345e-10)) (f64.const 0x1.1f9add37c11f7p+0)) + +;; Test adding the greatest value to 1.0 that rounds back to 1.0, and the +;; least that rounds to something greater. +(assert_return (invoke "f32.add" (f32.const 1.0) (f32.const 0x1p-24)) (f32.const 0x1.0p+0)) +(assert_return (invoke "f32.add" (f32.const 1.0) (f32.const 0x1.000002p-24)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f64.add" (f64.const 1.0) (f64.const 0x1p-53)) (f64.const 0x1.0p+0)) +(assert_return (invoke "f64.add" (f64.const 1.0) (f64.const 0x1.0000000000001p-53)) (f64.const 0x1.0000000000001p+0)) + +;; Max subnormal + min subnormal = min normal. +(assert_return (invoke "f32.add" (f32.const 0x1p-149) (f32.const 0x1.fffffcp-127)) (f32.const 0x1p-126)) +(assert_return (invoke "f64.add" (f64.const 0x0.0000000000001p-1022) (f64.const 0x0.fffffffffffffp-1022)) (f64.const 0x1p-1022)) + +;; Test for a case of double rounding, example from: +;; http://perso.ens-lyon.fr/jean-michel.muller/Handbook.html +;; section 3.3.1: A typical problem: "double rounding" +(assert_return (invoke "f32.add" (f32.const 0x1p+31) (f32.const 1024.25)) (f32.const 0x1.000008p+31)) +(assert_return (invoke "f64.add" (f64.const 0x1p+63) (f64.const 1024.25)) (f64.const 0x1.0000000000001p+63)) + +;; Test a case that was "tricky" on MMIX. +;; http://mmix.cs.hm.edu/bugs/bug_rounding.html +(assert_return (invoke "f64.add" (f64.const -0x1p-1008) (f64.const 0x0.0000000001716p-1022)) (f64.const -0x1.fffffffffffffp-1009)) + +;; http://www.vinc17.org/software/tst-ieee754.xsl +(assert_return (invoke "f64.add" (f64.const 9007199254740992) (f64.const 1.00001)) (f64.const 9007199254740994)) + +;; http://www.vinc17.org/software/test.java +(assert_return (invoke "f64.add" (f64.const 9007199254740994) (f64.const 0x1.fffep-1)) (f64.const 9007199254740994)) + +;; Computations that round differently in ties-to-odd mode. +(assert_return (invoke "f32.add" (f32.const 0x1p23) (f32.const 0x1p-1)) (f32.const 0x1p23)) +(assert_return (invoke "f32.add" (f32.const 0x1.000002p+23) (f32.const 0x1p-1)) (f32.const 0x1.000004p+23)) +(assert_return (invoke "f64.add" (f64.const 0x1p52) (f64.const 0x1p-1)) (f64.const 0x1p52)) +(assert_return (invoke "f64.add" (f64.const 0x1.0000000000001p+52) (f64.const 0x1p-1)) (f64.const 0x1.0000000000002p+52)) + +;; Computations that round differently in round-upward mode. +(assert_return (invoke "f32.add" (f32.const -0x1.39675ap+102) (f32.const 0x1.76c94cp-99)) (f32.const -0x1.39675ap+102)) +(assert_return (invoke "f32.add" (f32.const 0x1.6c0f24p+67) (f32.const -0x1.2b92dp+52)) (f32.const 0x1.6c0cccp+67)) +(assert_return (invoke "f32.add" (f32.const 0x1.e62318p-83) (f32.const 0x1.f74abep-125)) (f32.const 0x1.e62318p-83)) +(assert_return (invoke "f32.add" (f32.const 0x1.2a71d4p+39) (f32.const -0x1.c9f10cp+55)) (f32.const -0x1.c9efe2p+55)) +(assert_return (invoke "f32.add" (f32.const 0x1.f8f736p-15) (f32.const 0x1.7bd45ep+106)) (f32.const 0x1.7bd45ep+106)) +(assert_return (invoke "f64.add" (f64.const 0x1.f33e1fbca27aap-413) (f64.const -0x1.6b192891ed61p+249)) (f64.const -0x1.6b192891ed61p+249)) +(assert_return (invoke "f64.add" (f64.const -0x1.46f75d130eeb1p+76) (f64.const 0x1.25275d6f7a4acp-184)) (f64.const -0x1.46f75d130eeb1p+76)) +(assert_return (invoke "f64.add" (f64.const 0x1.04dec9265a731p-148) (f64.const -0x1.11eed4e8c127cp-12)) (f64.const -0x1.11eed4e8c127cp-12)) +(assert_return (invoke "f64.add" (f64.const 0x1.05773b7166b0ap+497) (f64.const 0x1.134022f2da37bp+66)) (f64.const 0x1.05773b7166b0ap+497)) +(assert_return (invoke "f64.add" (f64.const 0x1.ef4f794282a82p+321) (f64.const 0x1.14a82266badep+394)) (f64.const 0x1.14a82266badep+394)) + +;; Computations that round differently in round-downward mode. +(assert_return (invoke "f32.add" (f32.const 0x1.1bf976p+72) (f32.const -0x1.7f5868p+20)) (f32.const 0x1.1bf976p+72)) +(assert_return (invoke "f32.add" (f32.const 0x1.7f9c6cp-45) (f32.const -0x1.b9bb0ep-78)) (f32.const 0x1.7f9c6cp-45)) +(assert_return (invoke "f32.add" (f32.const -0x1.32d1bcp-42) (f32.const 0x1.f7d214p+125)) (f32.const 0x1.f7d214p+125)) +(assert_return (invoke "f32.add" (f32.const -0x1.8e5c0ep-44) (f32.const -0x1.3afa4cp-106)) (f32.const -0x1.8e5c0ep-44)) +(assert_return (invoke "f32.add" (f32.const 0x1.13cd78p-10) (f32.const -0x1.3af316p-107)) (f32.const 0x1.13cd78p-10)) +(assert_return (invoke "f64.add" (f64.const 0x1.f8dd15ca97d4ap+179) (f64.const -0x1.367317d1fe8bfp-527)) (f64.const 0x1.f8dd15ca97d4ap+179)) +(assert_return (invoke "f64.add" (f64.const 0x1.5db08d739228cp+155) (f64.const -0x1.fb316fa147dcbp-61)) (f64.const 0x1.5db08d739228cp+155)) +(assert_return (invoke "f64.add" (f64.const 0x1.bbb403cb85c07p-404) (f64.const -0x1.7e44046b8bbf3p-979)) (f64.const 0x1.bbb403cb85c07p-404)) +(assert_return (invoke "f64.add" (f64.const -0x1.34d38af291831p+147) (f64.const -0x1.9890b47439953p+139)) (f64.const -0x1.366c1ba705bcap+147)) +(assert_return (invoke "f64.add" (f64.const -0x1.b61dedf4e0306p+3) (f64.const 0x1.09e2f31773c4ap+290)) (f64.const 0x1.09e2f31773c4ap+290)) + +;; Computations that round differently in round-toward-zero mode. +(assert_return (invoke "f32.add" (f32.const -0x1.129bd8p-117) (f32.const 0x1.c75012p-43)) (f32.const 0x1.c75012p-43)) +(assert_return (invoke "f32.add" (f32.const -0x1.c204a2p-16) (f32.const 0x1.80b132p-27)) (f32.const -0x1.c1d48cp-16)) +(assert_return (invoke "f32.add" (f32.const -0x1.decc1cp+36) (f32.const 0x1.c688dap-109)) (f32.const -0x1.decc1cp+36)) +(assert_return (invoke "f32.add" (f32.const 0x1.61ce6ap-118) (f32.const -0x1.772892p+30)) (f32.const -0x1.772892p+30)) +(assert_return (invoke "f32.add" (f32.const -0x1.3dc826p-120) (f32.const 0x1.fc3f66p+95)) (f32.const 0x1.fc3f66p+95)) +(assert_return (invoke "f64.add" (f64.const 0x1.bf68acc263a0fp-777) (f64.const -0x1.5f9352965e5a6p+1004)) (f64.const -0x1.5f9352965e5a6p+1004)) +(assert_return (invoke "f64.add" (f64.const -0x1.76eaa70911f51p+516) (f64.const -0x1.2d746324ce47ap+493)) (f64.const -0x1.76eaa963fabb6p+516)) +(assert_return (invoke "f64.add" (f64.const -0x1.b637d82c15a7ap-967) (f64.const 0x1.cc654ccab4152p-283)) (f64.const 0x1.cc654ccab4152p-283)) +(assert_return (invoke "f64.add" (f64.const -0x1.a5b1fb66e846ep-509) (f64.const 0x1.4bdd36f0bb5ccp-860)) (f64.const -0x1.a5b1fb66e846ep-509)) +(assert_return (invoke "f64.add" (f64.const -0x1.14108da880f9ep+966) (f64.const 0x1.417f35701e89fp+800)) (f64.const -0x1.14108da880f9ep+966)) + +;; Computations that round differently on x87. +(assert_return (invoke "f64.add" (f64.const -0x1.fa0caf21ffebcp+804) (f64.const 0x1.4ca8fdcff89f9p+826)) (f64.const 0x1.4ca8f5e7c5e31p+826)) +(assert_return (invoke "f64.add" (f64.const 0x1.016f1fcbdfd38p+784) (f64.const 0x1.375dffcbc9a2cp+746)) (f64.const 0x1.016f1fcbe4b0fp+784)) +(assert_return (invoke "f64.add" (f64.const -0x1.dffda6d5bff3ap+624) (f64.const 0x1.f9e8cc2dff782p+674)) (f64.const 0x1.f9e8cc2dff77bp+674)) +(assert_return (invoke "f64.add" (f64.const 0x1.fff4b43687dfbp+463) (f64.const 0x1.0fd5617c4a809p+517)) (f64.const 0x1.0fd5617c4a809p+517)) +(assert_return (invoke "f64.add" (f64.const 0x1.535d380035da2p-995) (f64.const 0x1.cce37dddbb73bp-963)) (f64.const 0x1.cce37ddf0ed0fp-963)) + +;; Computations that round differently when computed via f32. +(assert_return (invoke "f64.add" (f64.const -0x1.d91cd3fc0c66fp+752) (f64.const -0x1.4e18c80229734p+952)) (f64.const -0x1.4e18c80229734p+952)) +(assert_return (invoke "f64.add" (f64.const 0x1.afc70fd36e372p+193) (f64.const -0x1.bd10a9b377b46p+273)) (f64.const -0x1.bd10a9b377b46p+273)) +(assert_return (invoke "f64.add" (f64.const -0x1.2abd570b078b2p+302) (f64.const 0x1.b3c1ad759cb5bp-423)) (f64.const -0x1.2abd570b078b2p+302)) +(assert_return (invoke "f64.add" (f64.const -0x1.5b2ae84c0686cp-317) (f64.const -0x1.dba7a1c022823p+466)) (f64.const -0x1.dba7a1c022823p+466)) +(assert_return (invoke "f64.add" (f64.const -0x1.ac627bd7cbf38p-198) (f64.const 0x1.2312e265b8d59p-990)) (f64.const -0x1.ac627bd7cbf38p-198)) + +;; Computations that utilize the maximum exponent value to avoid overflow. +(assert_return (invoke "f32.add" (f32.const 0x1.2b91ap+116) (f32.const 0x1.cbcd52p+127)) (f32.const 0x1.cbf2c4p+127)) +(assert_return (invoke "f32.add" (f32.const 0x1.96f392p+127) (f32.const -0x1.6b3fecp+107)) (f32.const 0x1.96f37cp+127)) +(assert_return (invoke "f32.add" (f32.const 0x1.132f1cp+118) (f32.const -0x1.63d632p+127)) (f32.const -0x1.634c9ap+127)) +(assert_return (invoke "f32.add" (f32.const -0x1.1dda64p+120) (f32.const -0x1.ef02ep+127)) (f32.const -0x1.f13e94p+127)) +(assert_return (invoke "f32.add" (f32.const -0x1.4ad8dap+127) (f32.const -0x1.eae082p+125)) (f32.const -0x1.c590fap+127)) +(assert_return (invoke "f64.add" (f64.const 0x1.017099f2a4b8bp+1023) (f64.const 0x1.1f63b28f05454p+981)) (f64.const 0x1.017099f2a5009p+1023)) +(assert_return (invoke "f64.add" (f64.const 0x1.d88b6c74984efp+1023) (f64.const 0x1.33b444775eabcp+990)) (f64.const 0x1.d88b6c7532291p+1023)) +(assert_return (invoke "f64.add" (f64.const -0x1.84576422fdf5p+1023) (f64.const 0x1.60ee6aa12fb9cp+1012)) (f64.const -0x1.842b4655a9cf1p+1023)) +(assert_return (invoke "f64.add" (f64.const -0x1.9aaace3e79f7dp+1001) (f64.const 0x1.e4068af295cb6p+1023)) (f64.const 0x1.e4068487ea926p+1023)) +(assert_return (invoke "f64.add" (f64.const 0x1.06cdae79f27b9p+1023) (f64.const -0x1.e05cb0c96f975p+991)) (f64.const 0x1.06cdae78121eep+1023)) + +;; Computations that utilize the minimum exponent value. +(assert_return (invoke "f32.add" (f32.const 0x1.6a1a2p-127) (f32.const 0x1.378p-140)) (f32.const 0x1.6a23dcp-127)) +(assert_return (invoke "f32.add" (f32.const 0x1.28p-144) (f32.const -0x1p-148)) (f32.const 0x1.18p-144)) +(assert_return (invoke "f32.add" (f32.const -0x1p-146) (f32.const 0x1.c3cap-128)) (f32.const 0x1.c3c9cp-128)) +(assert_return (invoke "f32.add" (f32.const -0x1.4p-145) (f32.const 0x1.424052p-122)) (f32.const 0x1.42405p-122)) +(assert_return (invoke "f32.add" (f32.const 0x1.c5p-141) (f32.const -0x1.72f8p-135)) (f32.const -0x1.6be4p-135)) +(assert_return (invoke "f64.add" (f64.const 0x1.4774c681d1e21p-1022) (f64.const -0x1.271e58e9f58cap-1021)) (f64.const -0x1.06c7eb5219373p-1022)) +(assert_return (invoke "f64.add" (f64.const 0x1.10b3a75e31916p-1021) (f64.const -0x1.ffb82b0e868a7p-1021)) (f64.const -0x1.de090760a9f22p-1022)) +(assert_return (invoke "f64.add" (f64.const -0x0.6b58448b8098ap-1022) (f64.const -0x1.579796ed04cbep-1022)) (f64.const -0x1.c2efdb7885648p-1022)) +(assert_return (invoke "f64.add" (f64.const 0x1.9eb9e7baae8d1p-1020) (f64.const -0x1.d58e136f8c6eep-1020)) (f64.const -0x0.db50aed377874p-1022)) +(assert_return (invoke "f64.add" (f64.const -0x1.f1115deeafa0bp-1022) (f64.const 0x1.221b1c87dca29p-1022)) (f64.const -0x0.cef64166d2fe2p-1022)) + +;; Test an add of the second-greatest finite value with the distance to greatest +;; finite value. +(assert_return (invoke "f32.add" (f32.const 0x1.fffffcp+127) (f32.const 0x1p+104)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f64.add" (f64.const 0x1.ffffffffffffep+1023) (f64.const 0x1p+971)) (f64.const 0x1.fffffffffffffp+1023)) + +;; http://news.harvard.edu/gazette/story/2013/09/dawn-of-a-revolution/ +(assert_return (invoke "f32.add" (f32.const 2.0) (f32.const 2.0)) (f32.const 4.0)) +(assert_return (invoke "f64.add" (f64.const 2.0) (f64.const 2.0)) (f64.const 4.0)) + +;; Test rounding above the greatest finite value. +(assert_return (invoke "f32.add" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+102)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.add" (f32.const 0x1.fffffep+127) (f32.const 0x1p+103)) (f32.const inf)) +(assert_return (invoke "f64.add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+969)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "f64.add" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+970)) (f64.const inf)) + +;; Test for a historic spreadsheet bug. +;; https://blogs.office.com/2007/09/25/calculation-issue-update/ +(assert_return (invoke "f32.sub" (f32.const 65536.0) (f32.const 0x1p-37)) (f32.const 65536.0)) +(assert_return (invoke "f64.sub" (f64.const 65536.0) (f64.const 0x1p-37)) (f64.const 0x1.fffffffffffffp+15)) + +;; Test subtracting the greatest value from 1.0 that rounds back to 1.0, and the +;; least that rounds to something less. +(assert_return (invoke "f32.sub" (f32.const 1.0) (f32.const 0x1p-25)) (f32.const 0x1.0p+0)) +(assert_return (invoke "f32.sub" (f32.const 1.0) (f32.const 0x1.000002p-25)) (f32.const 0x1.fffffep-1)) +(assert_return (invoke "f64.sub" (f64.const 1.0) (f64.const 0x1p-54)) (f64.const 0x1.0p+0)) +(assert_return (invoke "f64.sub" (f64.const 1.0) (f64.const 0x1.0000000000001p-54)) (f64.const 0x1.fffffffffffffp-1)) + +;; Computations that round differently in round-upward mode. +(assert_return (invoke "f32.sub" (f32.const 0x1.ee2466p-106) (f32.const -0x1.16277ep+119)) (f32.const 0x1.16277ep+119)) +(assert_return (invoke "f32.sub" (f32.const -0x1.446f9ep+119) (f32.const -0x1.4396a4p+43)) (f32.const -0x1.446f9ep+119)) +(assert_return (invoke "f32.sub" (f32.const 0x1.74773cp+0) (f32.const -0x1.a25512p-82)) (f32.const 0x1.74773cp+0)) +(assert_return (invoke "f32.sub" (f32.const 0x1.9345c4p-117) (f32.const 0x1.6792c2p-76)) (f32.const -0x1.6792c2p-76)) +(assert_return (invoke "f32.sub" (f32.const 0x1.9ecfa4p-18) (f32.const -0x1.864b44p-107)) (f32.const 0x1.9ecfa4p-18)) +(assert_return (invoke "f64.sub" (f64.const -0x1.5b798875e7845p-333) (f64.const -0x1.b5147117452fep-903)) (f64.const -0x1.5b798875e7845p-333)) +(assert_return (invoke "f64.sub" (f64.const -0x1.6c87baeb6d72dp+552) (f64.const -0x1.64fb35d4b5571p-158)) (f64.const -0x1.6c87baeb6d72dp+552)) +(assert_return (invoke "f64.sub" (f64.const 0x1.b3d369fcf74bp-461) (f64.const -0x1.ea1668c0dec93p-837)) (f64.const 0x1.b3d369fcf74bp-461)) +(assert_return (invoke "f64.sub" (f64.const 0x1.0abd449353eadp-1005) (f64.const -0x1.0422ea3e82ee9p+154)) (f64.const 0x1.0422ea3e82ee9p+154)) +(assert_return (invoke "f64.sub" (f64.const -0x1.aadbc6b43cc3dp-143) (f64.const -0x1.e7f922ef1ee58p-539)) (f64.const -0x1.aadbc6b43cc3dp-143)) + +;; Computations that round differently in round-downward mode. +(assert_return (invoke "f32.sub" (f32.const -0x1.61e262p+108) (f32.const -0x1.baf3e4p+112)) (f32.const 0x1.a4d5bep+112)) +(assert_return (invoke "f32.sub" (f32.const -0x1.62c2f6p+109) (f32.const 0x1.6e514ap+6)) (f32.const -0x1.62c2f6p+109)) +(assert_return (invoke "f32.sub" (f32.const -0x1.287c94p-83) (f32.const 0x1.0f2f9cp-24)) (f32.const -0x1.0f2f9cp-24)) +(assert_return (invoke "f32.sub" (f32.const -0x1.c8825cp-77) (f32.const -0x1.4aead6p-12)) (f32.const 0x1.4aead6p-12)) +(assert_return (invoke "f32.sub" (f32.const -0x1.2976a4p+99) (f32.const 0x1.c6e3b8p-59)) (f32.const -0x1.2976a4p+99)) +(assert_return (invoke "f64.sub" (f64.const -0x1.76cb28ae6c045p+202) (f64.const -0x1.0611f2af4e9b9p+901)) (f64.const 0x1.0611f2af4e9b9p+901)) +(assert_return (invoke "f64.sub" (f64.const 0x1.baf35eff22e9ep-368) (f64.const 0x1.5c3e08ecf73ecp-451)) (f64.const 0x1.baf35eff22e9ep-368)) +(assert_return (invoke "f64.sub" (f64.const -0x1.8fd354b376f1fp-200) (f64.const 0x1.513c860f386ffp-508)) (f64.const -0x1.8fd354b376f1fp-200)) +(assert_return (invoke "f64.sub" (f64.const -0x1.760d447230ae6p-992) (f64.const -0x1.16f788438ae3ep-328)) (f64.const 0x1.16f788438ae3ep-328)) +(assert_return (invoke "f64.sub" (f64.const -0x1.73aab4fcfc7ap+112) (f64.const 0x1.7c589f990b884p+171)) (f64.const -0x1.7c589f990b884p+171)) + +;; Computations that round differently in round-toward-zero mode. +(assert_return (invoke "f32.sub" (f32.const 0x1.ea264cp+95) (f32.const 0x1.852988p-15)) (f32.const 0x1.ea264cp+95)) +(assert_return (invoke "f32.sub" (f32.const -0x1.14ec7cp+19) (f32.const -0x1.0ad3fep-35)) (f32.const -0x1.14ec7cp+19)) +(assert_return (invoke "f32.sub" (f32.const -0x1.3251dap-36) (f32.const -0x1.49c97ep-56)) (f32.const -0x1.3251c6p-36)) +(assert_return (invoke "f32.sub" (f32.const -0x1.13565ep-14) (f32.const 0x1.2f89a8p-13)) (f32.const -0x1.b934d8p-13)) +(assert_return (invoke "f32.sub" (f32.const -0x1.6032b6p-33) (f32.const -0x1.bb5196p-104)) (f32.const -0x1.6032b6p-33)) +(assert_return (invoke "f64.sub" (f64.const -0x1.b5b0797af491p-157) (f64.const -0x1.694b8348189e8p+722)) (f64.const 0x1.694b8348189e8p+722)) +(assert_return (invoke "f64.sub" (f64.const -0x1.72b142826ed73p+759) (f64.const -0x1.010477bc9afbdp+903)) (f64.const 0x1.010477bc9afbdp+903)) +(assert_return (invoke "f64.sub" (f64.const 0x1.83273b6bb94cfp-796) (f64.const 0x1.1a93f948a2abbp+181)) (f64.const -0x1.1a93f948a2abbp+181)) +(assert_return (invoke "f64.sub" (f64.const -0x1.207e7156cbf2p-573) (f64.const 0x1.cf3f12fd3814dp-544)) (f64.const -0x1.cf3f13063c086p-544)) +(assert_return (invoke "f64.sub" (f64.const -0x1.837e6844f1718p-559) (f64.const -0x1.1c29b757f98abp-14)) (f64.const 0x1.1c29b757f98abp-14)) + +;; Computations that round differently on x87. +(assert_return (invoke "f64.sub" (f64.const 0x1.c21151a709b6cp-78) (f64.const 0x1.0a12fff8910f6p-115)) (f64.const 0x1.c21151a701663p-78)) +(assert_return (invoke "f64.sub" (f64.const 0x1.c57912aae2f64p-982) (f64.const 0x1.dbfbd4800b7cfp-1010)) (f64.const 0x1.c579128d2338fp-982)) +(assert_return (invoke "f64.sub" (f64.const 0x1.ffef4399af9c6p-254) (f64.const 0x1.edb96dfaea8b1p-200)) (f64.const -0x1.edb96dfaea8b1p-200)) +(assert_return (invoke "f64.sub" (f64.const -0x1.363eee391cde2p-39) (f64.const -0x1.a65462000265fp-69)) (f64.const -0x1.363eee32838c9p-39)) +(assert_return (invoke "f64.sub" (f64.const 0x1.59016dba002a1p-25) (f64.const 0x1.5d4374f124cccp-3)) (f64.const -0x1.5d436f8d1f15dp-3)) + +;; Computations that round differently when computed via f32. +(assert_return (invoke "f64.sub" (f64.const -0x1.18196bca005cfp-814) (f64.const -0x1.db7b01ce3f52fp-766)) (f64.const 0x1.db7b01ce3f51dp-766)) +(assert_return (invoke "f64.sub" (f64.const -0x1.d17b3528d219p+33) (f64.const 0x1.fd739d4ea220ap+367)) (f64.const -0x1.fd739d4ea220ap+367)) +(assert_return (invoke "f64.sub" (f64.const 0x1.dea46994de319p+114) (f64.const 0x1.b5b19cd55c7d3p-590)) (f64.const 0x1.dea46994de319p+114)) +(assert_return (invoke "f64.sub" (f64.const 0x1.b60f9b2fbd9ecp-489) (f64.const -0x1.6f81c59ec5b8ep-694)) (f64.const 0x1.b60f9b2fbd9ecp-489)) +(assert_return (invoke "f64.sub" (f64.const 0x1.5e423fe8571f4p-57) (f64.const 0x1.9624ed7c162dfp-618)) (f64.const 0x1.5e423fe8571f4p-57)) + +;; pow(e, π) - π +;; https://xkcd.com/217/ +(assert_return (invoke "f32.sub" (f32.const 0x1.724046p+4) (f32.const 0x1.921fb6p+1)) (f32.const 0x1.3ffc5p+4)) +(assert_return (invoke "f64.sub" (f64.const 0x1.724046eb0933ap+4) (f64.const 0x1.921fb54442d18p+1)) (f64.const 0x1.3ffc504280d97p+4)) + +;; https://www.cnet.com/news/googles-calculator-muffs-some-math-problems/ +(assert_return (invoke "f32.sub" (f32.const 2999999) (f32.const 2999998)) (f32.const 1.0)) +(assert_return (invoke "f32.sub" (f32.const 1999999) (f32.const 1999995)) (f32.const 4.0)) +(assert_return (invoke "f32.sub" (f32.const 1999999) (f32.const 1999993)) (f32.const 6.0)) +(assert_return (invoke "f32.sub" (f32.const 400002) (f32.const 400001)) (f32.const 1.0)) +(assert_return (invoke "f32.sub" (f32.const 400002) (f32.const 400000)) (f32.const 2.0)) +(assert_return (invoke "f64.sub" (f64.const 2999999999999999) (f64.const 2999999999999998)) (f64.const 1.0)) +(assert_return (invoke "f64.sub" (f64.const 1999999999999999) (f64.const 1999999999999995)) (f64.const 4.0)) +(assert_return (invoke "f64.sub" (f64.const 1999999999999999) (f64.const 1999999999999993)) (f64.const 6.0)) +(assert_return (invoke "f64.sub" (f64.const 400000000000002) (f64.const 400000000000001)) (f64.const 1.0)) +(assert_return (invoke "f64.sub" (f64.const 400000000000002) (f64.const 400000000000000)) (f64.const 2.0)) + +;; Min normal - max subnormal = min subnormal. +(assert_return (invoke "f32.sub" (f32.const 0x1p-126) (f32.const 0x1.fffffcp-127)) (f32.const 0x1p-149)) +(assert_return (invoke "f64.sub" (f64.const 0x1p-1022) (f64.const 0x0.fffffffffffffp-1022)) (f64.const 0x0.0000000000001p-1022)) + +;; Test subtraction of numbers very close to 1. +(assert_return (invoke "f32.sub" (f32.const 0x1.000002p+0) (f32.const 0x1.fffffep-1)) (f32.const 0x1.8p-23)) +(assert_return (invoke "f32.sub" (f32.const 0x1.000002p+0) (f32.const 0x1.0p+0)) (f32.const 0x1p-23)) +(assert_return (invoke "f32.sub" (f32.const 0x1p+0) (f32.const 0x1.fffffep-1)) (f32.const 0x1p-24)) +(assert_return (invoke "f64.sub" (f64.const 0x1.0000000000001p+0) (f64.const 0x1.fffffffffffffp-1)) (f64.const 0x1.8p-52)) +(assert_return (invoke "f64.sub" (f64.const 0x1.0000000000001p+0) (f64.const 0x1.0p+0)) (f64.const 0x1p-52)) +(assert_return (invoke "f64.sub" (f64.const 0x1p+0) (f64.const 0x1.fffffffffffffp-1)) (f64.const 0x1p-53)) + +;; Test the least value that can be subtracted from the max value to produce a +;; different value. +(assert_return (invoke "f32.sub" (f32.const 0x1.fffffep+127) (f32.const 0x1.fffffep+102)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.sub" (f32.const 0x1.fffffep+127) (f32.const 0x1p+103)) (f32.const 0x1.fffffcp+127)) +(assert_return (invoke "f64.sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1.fffffffffffffp+969)) (f64.const 0x1.fffffffffffffp+1023)) +(assert_return (invoke "f64.sub" (f64.const 0x1.fffffffffffffp+1023) (f64.const 0x1p+970)) (f64.const 0x1.ffffffffffffep+1023)) + +;; Miscellaneous values. +(assert_return (invoke "f32.mul" (f32.const 1e15) (f32.const 1e15)) (f32.const 0x1.93e592p+99)) +(assert_return (invoke "f32.mul" (f32.const 1e20) (f32.const 1e20)) (f32.const inf)) +(assert_return (invoke "f32.mul" (f32.const 1e25) (f32.const 1e25)) (f32.const inf)) +(assert_return (invoke "f64.mul" (f64.const 1e15) (f64.const 1e15)) (f64.const 0x1.93e5939a08ceap+99)) +(assert_return (invoke "f64.mul" (f64.const 1e20) (f64.const 1e20)) (f64.const 0x1.d6329f1c35ca5p+132)) +(assert_return (invoke "f64.mul" (f64.const 1e25) (f64.const 1e25)) (f64.const 0x1.11b0ec57e649bp+166)) + +;; Test for a case of double rounding, example from: +;; http://perso.ens-lyon.fr/jean-michel.muller/Handbook.html +;; section 3.3.1: A typical problem: "double rounding" +(assert_return (invoke "f32.mul" (f32.const 1848874880.0) (f32.const 19954563072.0)) (f32.const 0x1.000002p+65)) +(assert_return (invoke "f64.mul" (f64.const 1848874847.0) (f64.const 19954562207.0)) (f64.const 3.6893488147419111424e+19)) + +;; Test for a historic spreadsheet bug. +;; http://www.joelonsoftware.com/items/2007/09/26b.html +(assert_return (invoke "f32.mul" (f32.const 77.1) (f32.const 850)) (f32.const 65535)) +(assert_return (invoke "f64.mul" (f64.const 77.1) (f64.const 850)) (f64.const 65534.99999999999272404)) + +;; Computations that round differently in round-upward mode. +(assert_return (invoke "f32.mul" (f32.const -0x1.14df2ep+61) (f32.const 0x1.748878p-36)) (f32.const -0x1.92e7e8p+25)) +(assert_return (invoke "f32.mul" (f32.const -0x1.5629e2p+102) (f32.const -0x1.c33012p-102)) (f32.const 0x1.2d8604p+1)) +(assert_return (invoke "f32.mul" (f32.const -0x1.b17694p+92) (f32.const -0x1.e4b56ap-97)) (f32.const 0x1.9a5baep-4)) +(assert_return (invoke "f32.mul" (f32.const -0x1.1626a6p+79) (f32.const -0x1.c57d7p-75)) (f32.const 0x1.ecbaaep+4)) +(assert_return (invoke "f32.mul" (f32.const 0x1.7acf72p+53) (f32.const 0x1.6c89acp+5)) (f32.const 0x1.0db556p+59)) +(assert_return (invoke "f64.mul" (f64.const -0x1.25c293f6f37e4p+425) (f64.const 0x1.f5fd4fa41c6d8p+945)) (f64.const -inf)) +(assert_return (invoke "f64.mul" (f64.const -0x1.cc1ae79fffc5bp-986) (f64.const -0x1.c36ccc2861ca6p-219)) (f64.const 0x0p+0)) +(assert_return (invoke "f64.mul" (f64.const 0x1.c0232b3e64b56p+606) (f64.const -0x1.f6939cf3affaap+106)) (f64.const -0x1.b7e3aedf190d3p+713)) +(assert_return (invoke "f64.mul" (f64.const -0x1.60f289966b271p-313) (f64.const 0x1.28a5497f0c259p+583)) (f64.const -0x1.98fc50bcec259p+270)) +(assert_return (invoke "f64.mul" (f64.const 0x1.37dab12d3afa2p+795) (f64.const 0x1.81e156bd393f1p-858)) (f64.const 0x1.d6126554b8298p-63)) + +;; Computations that round differently in round-downward mode. +(assert_return (invoke "f32.mul" (f32.const -0x1.3f57a2p-89) (f32.const -0x1.041d68p+92)) (f32.const 0x1.4479bp+3)) +(assert_return (invoke "f32.mul" (f32.const 0x1.4d0582p+73) (f32.const 0x1.6e043ap+19)) (f32.const 0x1.dc236p+92)) +(assert_return (invoke "f32.mul" (f32.const -0x1.2fdap-32) (f32.const -0x1.e1731cp+74)) (f32.const 0x1.1db89ep+43)) +(assert_return (invoke "f32.mul" (f32.const 0x1.7bc8fep+67) (f32.const -0x1.3ad592p+15)) (f32.const -0x1.d3115ep+82)) +(assert_return (invoke "f32.mul" (f32.const 0x1.936742p+30) (f32.const -0x1.a7a19p+66)) (f32.const -0x1.4dc71ap+97)) +(assert_return (invoke "f64.mul" (f64.const -0x1.ba737b4ca3b13p-639) (f64.const 0x1.8923309857438p-314)) (f64.const -0x1.53bc0d07baa37p-952)) +(assert_return (invoke "f64.mul" (f64.const 0x1.7c1932e610219p-276) (f64.const -0x1.2605db646489fp-635)) (f64.const -0x1.b48da2b0d2ae3p-911)) +(assert_return (invoke "f64.mul" (f64.const -0x1.e43cdf3b2108p+329) (f64.const -0x1.99d96abbd61d1p+835)) (f64.const inf)) +(assert_return (invoke "f64.mul" (f64.const 0x1.4c19466551da3p+947) (f64.const 0x1.0bdcd6c7646e9p-439)) (f64.const 0x1.5b7cd8c3f638ap+508)) +(assert_return (invoke "f64.mul" (f64.const 0x1.ff1da1726e3dfp+339) (f64.const -0x1.043c44f52b158p+169)) (f64.const -0x1.03c9364bb585cp+509)) + +;; Computations that round differently in round-toward-zero mode. +(assert_return (invoke "f32.mul" (f32.const -0x1.907e8ap+46) (f32.const -0x1.5d3668p+95)) (f32.const inf)) +(assert_return (invoke "f32.mul" (f32.const -0x1.8c9f74p-3) (f32.const 0x1.e2b452p-99)) (f32.const -0x1.75edccp-101)) +(assert_return (invoke "f32.mul" (f32.const -0x1.cc605ap-19) (f32.const 0x1.ec321ap+105)) (f32.const -0x1.ba91a4p+87)) +(assert_return (invoke "f32.mul" (f32.const -0x1.5fbb7ap+56) (f32.const 0x1.a8965ep-96)) (f32.const -0x1.23ae8ep-39)) +(assert_return (invoke "f32.mul" (f32.const -0x1.fb7f12p+16) (f32.const 0x1.3a701ap-119)) (f32.const -0x1.37ac0cp-102)) +(assert_return (invoke "f64.mul" (f64.const -0x1.5b0266454c26bp-496) (f64.const -0x1.af5787e3e0399p+433)) (f64.const 0x1.2457d81949e0bp-62)) +(assert_return (invoke "f64.mul" (f64.const 0x1.0d54a82393d45p+478) (f64.const -0x1.425760807ceaep-764)) (f64.const -0x1.532068c8d0d5dp-286)) +(assert_return (invoke "f64.mul" (f64.const -0x1.b532af981786p+172) (f64.const 0x1.ada95085ba36fp+359)) (f64.const -0x1.6ee38c1e01864p+532)) +(assert_return (invoke "f64.mul" (f64.const 0x1.e132f4d49d1cep+768) (f64.const -0x1.a75afe9a7d864p+374)) (f64.const -inf)) +(assert_return (invoke "f64.mul" (f64.const 0x1.68bbf1cfff90ap+81) (f64.const 0x1.09cd17d652c5p+70)) (f64.const 0x1.768b8d67d794p+151)) + +;; Computations that round differently on x87. +(assert_return (invoke "f64.mul" (f64.const 0x1.f99fb602c89b7p-341) (f64.const 0x1.6caab46a31a2ep-575)) (f64.const 0x1.68201f986e9d7p-915)) +(assert_return (invoke "f64.mul" (f64.const -0x1.86999c5eee379p-9) (f64.const 0x1.6e3b9e0d53e0dp+723)) (f64.const -0x1.17654a0ef35f5p+715)) +(assert_return (invoke "f64.mul" (f64.const -0x1.069571b176f9p+367) (f64.const -0x1.e248b6ab0a0e3p-652)) (f64.const 0x1.eeaff575cae1dp-285)) +(assert_return (invoke "f64.mul" (f64.const 0x1.c217645777dd2p+775) (f64.const 0x1.d93f5715dd646p+60)) (f64.const 0x1.a0064aa1d920dp+836)) +(assert_return (invoke "f64.mul" (f64.const -0x1.848981b6e694ap-276) (f64.const 0x1.f5aacb64a0d19p+896)) (f64.const -0x1.7cb2296e6c2e5p+621)) + +;; Computations that round differently on x87 in double-precision mode. +(assert_return (invoke "f64.mul" (f64.const 0x1.db3bd2a286944p-599) (f64.const 0x1.ce910af1d55cap-425)) (f64.const 0x0.d6accdd538a39p-1022)) +(assert_return (invoke "f64.mul" (f64.const -0x1.aca223916012p-57) (f64.const -0x1.2b2b4958dd228p-966)) (f64.const 0x0.fa74eccae5615p-1022)) +(assert_return (invoke "f64.mul" (f64.const -0x1.bd062def16cffp-488) (f64.const -0x1.7ddd91a0c4c0ep-536)) (f64.const 0x0.a5f4d7769d90dp-1022)) +(assert_return (invoke "f64.mul" (f64.const -0x1.c6a56169e9cep-772) (f64.const 0x1.517d55a474122p-255)) (f64.const -0x0.12baf260afb77p-1022)) +(assert_return (invoke "f64.mul" (f64.const -0x1.08951b0b41705p-516) (f64.const -0x1.102dc27168d09p-507)) (f64.const 0x0.8ca6dbf3f592bp-1022)) + +;; Computations that round differently when computed via f32. +(assert_return (invoke "f64.mul" (f64.const 0x1.8d0dea50c8c9bp+852) (f64.const 0x1.21cac31d87a24p-881)) (f64.const 0x1.c177311f7cd73p-29)) +(assert_return (invoke "f64.mul" (f64.const 0x1.98049118e3063p-7) (f64.const 0x1.6362525151b58p-149)) (f64.const 0x1.1b358514103f9p-155)) +(assert_return (invoke "f64.mul" (f64.const -0x1.ea65cb0631323p+1) (f64.const 0x1.fce683201a19bp-41)) (f64.const -0x1.e76dc8c223667p-39)) +(assert_return (invoke "f64.mul" (f64.const 0x1.e4d235961d543p-373) (f64.const 0x1.bc56f20ef9a48p-205)) (f64.const 0x1.a4c09efcb71d6p-577)) +(assert_return (invoke "f64.mul" (f64.const -0x1.b9612e66faba8p+77) (f64.const 0x1.e2bc6aa782273p-348)) (f64.const -0x1.a026ea4f81db1p-270)) + +;; Test the least positive value with a positive square. +(assert_return (invoke "f32.mul" (f32.const 0x1p-75) (f32.const 0x1p-75)) (f32.const 0x0p+0)) +(assert_return (invoke "f32.mul" (f32.const 0x1.000002p-75) (f32.const 0x1.000002p-75)) (f32.const 0x1p-149)) +(assert_return (invoke "f64.mul" (f64.const 0x1.6a09e667f3bccp-538) (f64.const 0x1.6a09e667f3bccp-538)) (f64.const 0x0p+0)) +(assert_return (invoke "f64.mul" (f64.const 0x1.6a09e667f3bcdp-538) (f64.const 0x1.6a09e667f3bcdp-538)) (f64.const 0x0.0000000000001p-1022)) + +;; Test the greatest positive value with a finite square. +(assert_return (invoke "f32.mul" (f32.const 0x1.fffffep+63) (f32.const 0x1.fffffep+63)) (f32.const 0x1.fffffcp+127)) +(assert_return (invoke "f32.mul" (f32.const 0x1p+64) (f32.const 0x1p+64)) (f32.const inf)) +(assert_return (invoke "f64.mul" (f64.const 0x1.fffffffffffffp+511) (f64.const 0x1.fffffffffffffp+511)) (f64.const 0x1.ffffffffffffep+1023)) +(assert_return (invoke "f64.mul" (f64.const 0x1p+512) (f64.const 0x1p+512)) (f64.const inf)) + +;; Test the squares of values very close to 1. +(assert_return (invoke "f32.mul" (f32.const 0x1.000002p+0) (f32.const 0x1.000002p+0)) (f32.const 0x1.000004p+0)) +(assert_return (invoke "f32.mul" (f32.const 0x1.fffffep-1) (f32.const 0x1.fffffep-1)) (f32.const 0x1.fffffcp-1)) +(assert_return (invoke "f64.mul" (f64.const 0x1.0000000000001p+0) (f64.const 0x1.0000000000001p+0)) (f64.const 0x1.0000000000002p+0)) +(assert_return (invoke "f64.mul" (f64.const 0x1.fffffffffffffp-1) (f64.const 0x1.fffffffffffffp-1)) (f64.const 0x1.ffffffffffffep-1)) + +;; Test multiplication of numbers very close to 1. +(assert_return (invoke "f32.mul" (f32.const 0x1.000002p+0) (f32.const 0x1.fffffep-1)) (f32.const 0x1p+0)) +(assert_return (invoke "f32.mul" (f32.const 0x1.000004p+0) (f32.const 0x1.fffffcp-1)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f64.mul" (f64.const 0x1.0000000000001p+0) (f64.const 0x1.fffffffffffffp-1)) (f64.const 0x1p+0)) +(assert_return (invoke "f64.mul" (f64.const 0x1.0000000000002p+0) (f64.const 0x1.ffffffffffffep-1)) (f64.const 0x1.0000000000001p+0)) + +;; Test MIN * EPSILON. +;; http://www.mpfr.org/mpfr-2.0.1/patch2 +(assert_return (invoke "f32.mul" (f32.const 0x1p-126) (f32.const 0x1p-23)) (f32.const 0x1p-149)) +(assert_return (invoke "f64.mul" (f64.const 0x1p-1022) (f64.const 0x1p-52)) (f64.const 0x0.0000000000001p-1022)) + +;; http://opencores.org/bug,view,2454 +(assert_return (invoke "f32.mul" (f32.const -0x1.0006p+4) (f32.const 0x1.ap-132)) (f32.const -0x1.a009cp-128)) + +;; Miscellaneous values. +(assert_return (invoke "f32.div" (f32.const 1.123456789) (f32.const 100)) (f32.const 0x1.702264p-7)) +(assert_return (invoke "f32.div" (f32.const 8391667.0) (f32.const 12582905.0)) (f32.const 0x1.55754p-1)) +(assert_return (invoke "f32.div" (f32.const 65536.0) (f32.const 0x1p-37)) (f32.const 0x1p+53)) +(assert_return (invoke "f32.div" (f32.const 0x1.dcbf6ap+0) (f32.const 0x1.fffffep+127)) (f32.const 0x1.dcbf68p-128)) +(assert_return (invoke "f32.div" (f32.const 4) (f32.const 3)) (f32.const 0x1.555556p+0)) +(assert_return (invoke "f64.div" (f64.const 1.123456789) (f64.const 100)) (f64.const 0.01123456789)) +(assert_return (invoke "f64.div" (f64.const 8391667.0) (f64.const 12582905.0)) (f64.const 0x1.55753f1d9ba27p-1)) +(assert_return (invoke "f64.div" (f64.const 65536.0) (f64.const 0x1p-37)) (f64.const 0x1p+53)) +(assert_return (invoke "f64.div" (f64.const 0x1.dcbf6ap+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.772fda8p-1022)) +(assert_return (invoke "f64.div" (f64.const 4) (f64.const 3)) (f64.const 0x1.5555555555555p+0)) + +;; Test for a historic hardware bug. +;; https://en.wikipedia.org/wiki/Pentium_FDIV_bug +(assert_return (invoke "f32.div" (f32.const 4195835) (f32.const 3145727)) (f32.const 0x1.557542p+0)) +(assert_return (invoke "f64.div" (f64.const 4195835) (f64.const 3145727)) (f64.const 0x1.557541c7c6b43p+0)) + +;; Computations that round differently in round-upward mode. +(assert_return (invoke "f32.div" (f32.const 0x1.6a6c5ap-48) (f32.const 0x1.fa0b7p+127)) (f32.const 0x0p+0)) +(assert_return (invoke "f32.div" (f32.const 0x1.616fb2p-87) (f32.const 0x1.332172p+68)) (f32.const 0x0p+0)) +(assert_return (invoke "f32.div" (f32.const -0x1.96e778p+16) (f32.const 0x1.eb0c56p-80)) (f32.const -0x1.a8440ap+95)) +(assert_return (invoke "f32.div" (f32.const -0x1.e2624p-76) (f32.const -0x1.ed236ep-122)) (f32.const 0x1.f4d584p+45)) +(assert_return (invoke "f32.div" (f32.const -0x1.e2374ep+41) (f32.const 0x1.71fcdcp-80)) (f32.const -0x1.4da706p+121)) +(assert_return (invoke "f64.div" (f64.const 0x1.163c09d0c38c1p+147) (f64.const 0x1.e04cc737348e6p+223)) (f64.const 0x1.289921caeed23p-77)) +(assert_return (invoke "f64.div" (f64.const 0x1.d6867e741e0a9p-626) (f64.const 0x1.335eb19a9aae4p-972)) (f64.const 0x1.87e342d11f519p+346)) +(assert_return (invoke "f64.div" (f64.const -0x1.d5edf648aeb98p+298) (f64.const 0x1.0dda15b079355p+640)) (f64.const -0x1.bdceaf9734b5cp-342)) +(assert_return (invoke "f64.div" (f64.const -0x1.b683e3934aedap+691) (f64.const 0x1.c364e1df00dffp+246)) (f64.const -0x1.f16456e7afe3bp+444)) +(assert_return (invoke "f64.div" (f64.const -0x1.44ca7539cc851p+540) (f64.const 0x1.58501bccc58fep+453)) (f64.const -0x1.e2f8657e0924ep+86)) + +;; Computations that round differently in round-downward mode. +(assert_return (invoke "f32.div" (f32.const -0x1.c2c54ap+69) (f32.const -0x1.00d142p-86)) (f32.const inf)) +(assert_return (invoke "f32.div" (f32.const 0x1.e35abep-46) (f32.const 0x1.c69dfp+44)) (f32.const 0x1.102eb4p-90)) +(assert_return (invoke "f32.div" (f32.const 0x1.45ff2ap+0) (f32.const -0x1.1e8754p+89)) (f32.const -0x1.23434ep-89)) +(assert_return (invoke "f32.div" (f32.const 0x1.8db18ap-51) (f32.const 0x1.47c678p-128)) (f32.const 0x1.369b96p+77)) +(assert_return (invoke "f32.div" (f32.const 0x1.78599p+90) (f32.const 0x1.534144p+87)) (f32.const 0x1.1bfddcp+3)) +(assert_return (invoke "f64.div" (f64.const 0x0.f331c4f47eb51p-1022) (f64.const -0x1.c7ff45bf6f03ap+362)) (f64.const -0x0p+0)) +(assert_return (invoke "f64.div" (f64.const -0x1.0fc8707b9d19cp-987) (f64.const 0x1.77524d5f4a563p-536)) (f64.const -0x1.72c1a937d231p-452)) +(assert_return (invoke "f64.div" (f64.const -0x1.edb3aa64bb338p-403) (f64.const -0x1.1c7c164320e4p+45)) (f64.const 0x1.bc44cc1c5ae63p-448)) +(assert_return (invoke "f64.div" (f64.const -0x1.6534b34e8686bp+80) (f64.const 0x1.c34a7fc59e3c3p-791)) (f64.const -0x1.95421bf291b66p+870)) +(assert_return (invoke "f64.div" (f64.const -0x1.91f58d7ed1237p+236) (f64.const -0x1.f190d808383c8p+55)) (f64.const 0x1.9d9eb0836f906p+180)) + +;; Computations that round differently in round-toward-zero mode. +(assert_return (invoke "f32.div" (f32.const 0x1.64b2a4p+26) (f32.const 0x1.e95752p-119)) (f32.const inf)) +(assert_return (invoke "f32.div" (f32.const -0x1.53c9b6p+77) (f32.const 0x1.d689ap+27)) (f32.const -0x1.71baa4p+49)) +(assert_return (invoke "f32.div" (f32.const 0x1.664a8ap+38) (f32.const -0x1.59dba2p+96)) (f32.const -0x1.0933f4p-58)) +(assert_return (invoke "f32.div" (f32.const -0x1.99e0fap+111) (f32.const -0x1.c2b5a8p+9)) (f32.const 0x1.d19de6p+101)) +(assert_return (invoke "f32.div" (f32.const -0x1.5a815ap+92) (f32.const -0x1.b5820ap+13)) (f32.const 0x1.9580b8p+78)) +(assert_return (invoke "f64.div" (f64.const -0x1.81fd1e2af7bebp-655) (f64.const 0x1.edefc4eae536cp-691)) (f64.const -0x1.901abdd91b661p+35)) +(assert_return (invoke "f64.div" (f64.const -0x1.47cf932953c43p+782) (f64.const -0x1.bc40496b1f2a1p-553)) (f64.const inf)) +(assert_return (invoke "f64.div" (f64.const -0x1.2bd2e8fbdcad7p-746) (f64.const 0x1.b115674cc476ep-65)) (f64.const -0x1.62752bf19fa81p-682)) +(assert_return (invoke "f64.div" (f64.const -0x1.f923e3fea9efep+317) (f64.const -0x1.8044c74d27a39p-588)) (f64.const 0x1.5086518cc7186p+905)) +(assert_return (invoke "f64.div" (f64.const 0x1.516ed2051d6bbp+181) (f64.const -0x1.c9f455eb9c2eep+214)) (f64.const -0x1.79414d67f2889p-34)) + +;; Computations that round differently on x87. +(assert_return (invoke "f64.div" (f64.const -0x1.9c52726aed366p+585) (f64.const -0x1.7d0568c75660fp+195)) (f64.const 0x1.1507ca2a65f23p+390)) +(assert_return (invoke "f64.div" (f64.const -0x1.522672f461667p+546) (f64.const -0x1.36d36572c9f71p+330)) (f64.const 0x1.1681369370619p+216)) +(assert_return (invoke "f64.div" (f64.const 0x1.01051b4e8cd61p+185) (f64.const -0x1.2cbb5ca3d33ebp+965)) (f64.const -0x1.b59471598a2f3p-781)) +(assert_return (invoke "f64.div" (f64.const 0x1.5f93bb80fc2cbp+217) (f64.const 0x1.7e051aae9f0edp+427)) (f64.const 0x1.d732fa926ba4fp-211)) +(assert_return (invoke "f64.div" (f64.const -0x1.e251d762163ccp+825) (f64.const 0x1.3ee63581e1796p+349)) (f64.const -0x1.8330077d90a07p+476)) + +;; Computations that round differently on x87 in double-precision mode. +(assert_return (invoke "f64.div" (f64.const 0x1.dcbf69f10006dp+0) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.772fda7c4001bp-1022)) +(assert_return (invoke "f64.div" (f64.const 0x1.e14169442fbcap-1011) (f64.const 0x1.505451d62ff7dp+12)) (f64.const 0x0.b727e85f38b39p-1022)) +(assert_return (invoke "f64.div" (f64.const -0x1.d3ebe726ec964p-144) (f64.const -0x1.4a7bfc0b83608p+880)) (f64.const 0x0.5a9d8c50cbf87p-1022)) +(assert_return (invoke "f64.div" (f64.const -0x1.6c3def770aee1p-393) (f64.const -0x1.8b84724347598p+631)) (f64.const 0x0.3af0707fcd0c7p-1022)) +(assert_return (invoke "f64.div" (f64.const 0x1.16abda1bb3cb3p-856) (f64.const 0x1.6c9c7198eb1e6p+166)) (f64.const 0x0.c3a8fd6741649p-1022)) +(assert_return (invoke "f64.div" (f64.const 0x1.7057d6ab553cap-1005) (f64.const -0x1.2abf1e98660ebp+23)) (f64.const -0x0.04ee8d8ec01cdp-1022)) + +;; Computations that round differently when div is mul by reciprocal. +(assert_return (invoke "f32.div" (f32.const 0x1.ada9aap+89) (f32.const 0x1.69884cp+42)) (f32.const 0x1.303e2ep+47)) +(assert_return (invoke "f32.div" (f32.const 0x1.8281c8p+90) (f32.const -0x1.62883cp+106)) (f32.const -0x1.17169cp-16)) +(assert_return (invoke "f32.div" (f32.const 0x1.5c6be2p+81) (f32.const 0x1.d01dfep-1)) (f32.const 0x1.805e32p+81)) +(assert_return (invoke "f32.div" (f32.const -0x1.bbd252p+19) (f32.const -0x1.fba95p+33)) (f32.const 0x1.bf9d56p-15)) +(assert_return (invoke "f32.div" (f32.const -0x1.0f41d6p-42) (f32.const -0x1.3f2dbep+56)) (f32.const 0x1.b320d8p-99)) +(assert_return (invoke "f64.div" (f64.const 0x1.b2348a1c81899p+61) (f64.const -0x1.4a58aad903dd3p-861)) (f64.const -0x1.507c1e2a41b35p+922)) +(assert_return (invoke "f64.div" (f64.const 0x1.23fa5137a918ap-130) (f64.const -0x1.7268db1951263p-521)) (f64.const -0x1.93965e0d896bep+390)) +(assert_return (invoke "f64.div" (f64.const 0x1.dcb3915d82deep+669) (f64.const 0x1.50caaa1dc6b19p+638)) (f64.const 0x1.6a58ec814b09dp+31)) +(assert_return (invoke "f64.div" (f64.const -0x1.046e378c0cc46p+182) (f64.const 0x1.ac925009a922bp+773)) (f64.const -0x1.3720aa94dab18p-592)) +(assert_return (invoke "f64.div" (f64.const -0x1.8945fd69d8e11p-871) (f64.const -0x1.0a37870af809ap-646)) (f64.const 0x1.7a2e286c62382p-225)) + +;; Computations that round differently when computed via f32. +(assert_return (invoke "f64.div" (f64.const 0x1.82002af0ea1f3p-57) (f64.const 0x1.d0a9b0c2fa339p+0)) (f64.const 0x1.a952fbd1fc17cp-58)) +(assert_return (invoke "f64.div" (f64.const 0x1.1e12b515db471p-102) (f64.const -0x1.41fc3c94fba5p-42)) (f64.const -0x1.c6e50cccb7cb6p-61)) +(assert_return (invoke "f64.div" (f64.const 0x1.aba5adcd6f583p-41) (f64.const 0x1.17dfac639ce0fp-112)) (f64.const 0x1.872b0a008c326p+71)) +(assert_return (invoke "f64.div" (f64.const 0x1.cf82510d0ae6bp+89) (f64.const 0x1.0207d86498053p+97)) (f64.const 0x1.cbdc804e2cf14p-8)) +(assert_return (invoke "f64.div" (f64.const 0x1.4c82cbb508e21p-11) (f64.const -0x1.6b57208c2d5d5p+52)) (f64.const -0x1.d48e8b369129ap-64)) + +;; Division involving the maximum subnormal value and the minimum normal value. +(assert_return (invoke "f32.div" (f32.const 0x1p-126) (f32.const 0x1.fffffcp-127)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f32.div" (f32.const 0x1.fffffcp-127) (f32.const 0x1p-126)) (f32.const 0x1.fffffcp-1)) +(assert_return (invoke "f64.div" (f64.const 0x1p-1022) (f64.const 0x0.fffffffffffffp-1022)) (f64.const 0x1.0000000000001p+0)) +(assert_return (invoke "f64.div" (f64.const 0x0.fffffffffffffp-1022) (f64.const 0x1p-1022)) (f64.const 0x1.ffffffffffffep-1)) + +;; Test the least positive value with a positive quotient with the maximum value. +(assert_return (invoke "f32.div" (f32.const 0x1.fffffep-23) (f32.const 0x1.fffffep+127)) (f32.const 0x0p+0)) +(assert_return (invoke "f32.div" (f32.const 0x1p-22) (f32.const 0x1.fffffep+127)) (f32.const 0x1p-149)) +(assert_return (invoke "f64.div" (f64.const 0x1.fffffffffffffp-52) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0p+0)) +(assert_return (invoke "f64.div" (f64.const 0x1p-51) (f64.const 0x1.fffffffffffffp+1023)) (f64.const 0x0.0000000000001p-1022)) + +;; Test the least positive value with a finite reciprocal. +(assert_return (invoke "f32.div" (f32.const 1.0) (f32.const 0x1p-128)) (f32.const inf)) +(assert_return (invoke "f32.div" (f32.const 1.0) (f32.const 0x1.000008p-128)) (f32.const 0x1.fffffp+127)) +(assert_return (invoke "f64.div" (f64.const 1.0) (f64.const 0x0.4p-1022)) (f64.const inf)) +(assert_return (invoke "f64.div" (f64.const 1.0) (f64.const 0x0.4000000000001p-1022)) (f64.const 0x1.ffffffffffff8p+1023)) + +;; Test the least positive value that has a subnormal reciprocal. +(assert_return (invoke "f32.div" (f32.const 1.0) (f32.const 0x1.000002p+126)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "f32.div" (f32.const 1.0) (f32.const 0x1p+126)) (f32.const 0x1p-126)) +(assert_return (invoke "f64.div" (f64.const 1.0) (f64.const 0x1.0000000000001p+1022)) (f64.const 0x0.fffffffffffffp-1022)) +(assert_return (invoke "f64.div" (f64.const 1.0) (f64.const 0x1p+1022)) (f64.const 0x1p-1022)) + +;; Test that the last binary digit of 1.0/3.0 is even in f32, +;; https://en.wikipedia.org/wiki/Single-precision_floating-point_format#Single-precision_examples +;; +;; and odd in f64, +;; https://en.wikipedia.org/wiki/Double-precision_floating-point_format#Double-precision_examples +;; +;; and that 1.0/3.0, 3.0/9.0, and 9.0/27.0 all agree. +;; http://www.netlib.org/paranoia +(assert_return (invoke "f32.div" (f32.const 0x1p+0) (f32.const 0x1.8p+1)) (f32.const 0x1.555556p-2)) +(assert_return (invoke "f32.div" (f32.const 0x3p+0) (f32.const 0x1.2p+3)) (f32.const 0x1.555556p-2)) +(assert_return (invoke "f32.div" (f32.const 0x1.2p+3) (f32.const 0x1.bp+4)) (f32.const 0x1.555556p-2)) +(assert_return (invoke "f64.div" (f64.const 0x1p+0) (f64.const 0x1.8p+1)) (f64.const 0x1.5555555555555p-2)) +(assert_return (invoke "f64.div" (f64.const 0x3p+0) (f64.const 0x1.2p+3)) (f64.const 0x1.5555555555555p-2)) +(assert_return (invoke "f64.div" (f64.const 0x1.2p+3) (f64.const 0x1.bp+4)) (f64.const 0x1.5555555555555p-2)) + +;; Test division of numbers very close to 1. +(assert_return (invoke "f32.div" (f32.const 0x1.000002p+0) (f32.const 0x1.fffffep-1)) (f32.const 0x1.000004p+0)) +(assert_return (invoke "f32.div" (f32.const 0x1.fffffep-1) (f32.const 0x1.000002p+0)) (f32.const 0x1.fffffap-1)) +(assert_return (invoke "f32.div" (f32.const 0x1.0p+0) (f32.const 0x1.fffffep-1)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f32.div" (f32.const 0x1.0p+0) (f32.const 0x1.000002p+0)) (f32.const 0x1.fffffcp-1)) +(assert_return (invoke "f64.div" (f64.const 0x1.0000000000001p+0) (f64.const 0x1.fffffffffffffp-1)) (f64.const 0x1.0000000000002p+0)) +(assert_return (invoke "f64.div" (f64.const 0x1.fffffffffffffp-1) (f64.const 0x1.0000000000001p+0)) (f64.const 0x1.ffffffffffffdp-1)) +(assert_return (invoke "f64.div" (f64.const 0x1.0p+0) (f64.const 0x1.fffffffffffffp-1)) (f64.const 0x1.0000000000001p+0)) +(assert_return (invoke "f64.div" (f64.const 0x1.0p+0) (f64.const 0x1.0000000000001p+0)) (f64.const 0x1.ffffffffffffep-1)) + +;; Test for bugs found in an early RISC-V implementation. +;; https://github.com/riscv/riscv-tests/pull/8 +(assert_return (invoke "f32.sqrt" (f32.const 0x1.56p+7)) (f32.const 0x1.a2744cp+3)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.594dfcp-23)) (f32.const 0x1.a4789cp-12)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.56p+7)) (f64.const 0x1.a2744ce9674f5p+3)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.594dfc70aa105p-23)) (f64.const 0x1.a4789c0e37f99p-12)) + +;; Computations that round differently on x87. +(assert_return (invoke "f64.sqrt" (f64.const 0x1.0263fcc94f259p-164)) (f64.const 0x1.0131485de579fp-82)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.352dfa278c43dp+338)) (f64.const 0x1.195607dac5417p+169)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.b15daa23924fap+402)) (f64.const 0x1.4d143db561493p+201)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.518c8e68cb753p-37)) (f64.const 0x1.9fb8ef1ad5bfdp-19)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.86d8b6518078ep-370)) (f64.const 0x1.3c5142a48fcadp-185)) + +;; Test another sqrt case on x87. +;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52593 +(assert_return (invoke "f64.sqrt" (f64.const 0x1.fffffffffffffp-1)) (f64.const 0x1.fffffffffffffp-1)) + +;; Computations that round differently in round-upward mode. +(assert_return (invoke "f32.sqrt" (f32.const 0x1.098064p-3)) (f32.const 0x1.70b23p-2)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.d9befp+100)) (f32.const 0x1.5c4052p+50)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.42b5b6p-4)) (f32.const 0x1.1f6d0ep-2)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.3684dp-71)) (f32.const 0x1.8ebae2p-36)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.d8bc4ep-11)) (f32.const 0x1.ebf9eap-6)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.5c39f220d5704p-924)) (f64.const 0x1.2a92bc24ceae9p-462)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.53521a635745cp+727)) (f64.const 0x1.a0cfdc4ef8ff1p+363)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.dfd5bbc9f4678p+385)) (f64.const 0x1.efa817117c94cp+192)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.33f9640811cd4p+105)) (f64.const 0x1.8d17c9243baa3p+52)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.6c0ef0267ff45p+999)) (f64.const 0x1.afbcfae3f2b4p+499)) + +;; Computations that round differently in round-downward mode. +(assert_return (invoke "f32.sqrt" (f32.const 0x1.26a62ep+27)) (f32.const 0x1.84685p+13)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.166002p-113)) (f32.const 0x1.798762p-57)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.3dfb5p-15)) (f32.const 0x1.937e38p-8)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.30eb2cp-120)) (f32.const 0x1.176406p-60)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.cb705cp-123)) (f32.const 0x1.e5020ap-62)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.edae8aea0543p+695)) (f64.const 0x1.f6c1ea4fc8dd2p+347)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.f7ee4bda5c9c3p-763)) (f64.const 0x1.fbf30bdaf11c5p-382)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.a48f348266ad1p-30)) (f64.const 0x1.481ee7540baf7p-15)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.feb5a1ce3ed9cp-242)) (f64.const 0x1.6995060c20d46p-121)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.957d9796e3834p+930)) (f64.const 0x1.42305213157bap+465)) + +;; Computations that round differently in round-toward-zero mode. +(assert_return (invoke "f32.sqrt" (f32.const 0x1.65787cp+118)) (f32.const 0x1.2e82a4p+59)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.736044p+15)) (f32.const 0x1.b40e4p+7)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.a00edp-1)) (f32.const 0x1.cd8aecp-1)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.7a4c8p-87)) (f32.const 0x1.b819e4p-44)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.5d24d4p-94)) (f32.const 0x1.2af75ep-47)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.a008948ead274p+738)) (f64.const 0x1.4659b37c39b19p+369)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.70f6199ed21f5p-381)) (f64.const 0x1.b2a2bddf3300dp-191)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.35c1d49f2a352p+965)) (f64.const 0x1.8e3d9f01a9716p+482)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.3fbdcfb2b2a15p-45)) (f64.const 0x1.949ba4feca42ap-23)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.c201b94757145p-492)) (f64.const 0x1.5369ee6bf2967p-246)) + +;; Computations that round differently when computed via f32. +(assert_return_canonical_nan (invoke "f64.sqrt" (f64.const -0x1.360e8d0032adp-963))) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.d9a6f5eef0503p+103)) (f64.const 0x1.ec73f56c166f6p+51)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.aa051a5c4ec27p-760)) (f64.const 0x1.4a3e771ff5149p-380)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.e5522a741babep-276)) (f64.const 0x1.607ae2b6feb7dp-138)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.4832badc0c061p+567)) (f64.const 0x1.99ec7934139b2p+283)) + +;; Test the least value with a sqrt that rounds to one. +(assert_return (invoke "f32.sqrt" (f32.const 0x1.000002p+0)) (f32.const 0x1p+0)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.000004p+0)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.0000000000001p+0)) (f64.const 0x1p+0)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.0000000000002p+0)) (f64.const 0x1.0000000000001p+0)) + +;; Test the greatest value less than one for which sqrt is not an identity. +(assert_return (invoke "f32.sqrt" (f32.const 0x1.fffffcp-1)) (f32.const 0x1.fffffep-1)) +(assert_return (invoke "f32.sqrt" (f32.const 0x1.fffffap-1)) (f32.const 0x1.fffffcp-1)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.ffffffffffffep-1)) (f64.const 0x1.fffffffffffffp-1)) +(assert_return (invoke "f64.sqrt" (f64.const 0x1.ffffffffffffdp-1)) (f64.const 0x1.ffffffffffffep-1)) + +;; Test that the bitwise floating point operators are bitwise on NaN. + +(assert_return (invoke "f32.abs" (f32.const nan:0x0f1e2)) (f32.const nan:0x0f1e2)) +(assert_return (invoke "f32.abs" (f32.const -nan:0x0f1e2)) (f32.const nan:0x0f1e2)) +(assert_return (invoke "f64.abs" (f64.const nan:0x0f1e27a6b)) (f64.const nan:0x0f1e27a6b)) +(assert_return (invoke "f64.abs" (f64.const -nan:0x0f1e27a6b)) (f64.const nan:0x0f1e27a6b)) + +(assert_return (invoke "f32.neg" (f32.const nan:0x0f1e2)) (f32.const -nan:0x0f1e2)) +(assert_return (invoke "f32.neg" (f32.const -nan:0x0f1e2)) (f32.const nan:0x0f1e2)) +(assert_return (invoke "f64.neg" (f64.const nan:0x0f1e27a6b)) (f64.const -nan:0x0f1e27a6b)) +(assert_return (invoke "f64.neg" (f64.const -nan:0x0f1e27a6b)) (f64.const nan:0x0f1e27a6b)) + +(assert_return (invoke "f32.copysign" (f32.const nan:0x0f1e2) (f32.const nan)) (f32.const nan:0x0f1e2)) +(assert_return (invoke "f32.copysign" (f32.const nan:0x0f1e2) (f32.const -nan)) (f32.const -nan:0x0f1e2)) +(assert_return (invoke "f32.copysign" (f32.const -nan:0x0f1e2) (f32.const nan)) (f32.const nan:0x0f1e2)) +(assert_return (invoke "f32.copysign" (f32.const -nan:0x0f1e2) (f32.const -nan)) (f32.const -nan:0x0f1e2)) +(assert_return (invoke "f64.copysign" (f64.const nan:0x0f1e27a6b) (f64.const nan)) (f64.const nan:0x0f1e27a6b)) +(assert_return (invoke "f64.copysign" (f64.const nan:0x0f1e27a6b) (f64.const -nan)) (f64.const -nan:0x0f1e27a6b)) +(assert_return (invoke "f64.copysign" (f64.const -nan:0x0f1e27a6b) (f64.const nan)) (f64.const nan:0x0f1e27a6b)) +(assert_return (invoke "f64.copysign" (f64.const -nan:0x0f1e27a6b) (f64.const -nan)) (f64.const -nan:0x0f1e27a6b)) + +;; Test values close to 1.0. +(assert_return (invoke "f32.ceil" (f32.const 0x1.fffffep-1)) (f32.const 1.0)) +(assert_return (invoke "f32.ceil" (f32.const 0x1.000002p+0)) (f32.const 2.0)) +(assert_return (invoke "f64.ceil" (f64.const 0x1.fffffffffffffp-1)) (f64.const 1.0)) +(assert_return (invoke "f64.ceil" (f64.const 0x1.0000000000001p+0)) (f64.const 2.0)) + +;; Test the maximum and minimum value for which ceil is not an identity operator. +(assert_return (invoke "f32.ceil" (f32.const 0x1.fffffep+22)) (f32.const 0x1p+23)) +(assert_return (invoke "f32.ceil" (f32.const -0x1.fffffep+22)) (f32.const -0x1.fffffcp+22)) +(assert_return (invoke "f64.ceil" (f64.const 0x1.fffffffffffffp+51)) (f64.const 0x1p+52)) +(assert_return (invoke "f64.ceil" (f64.const -0x1.fffffffffffffp+51)) (f64.const -0x1.ffffffffffffep+51)) + +;; Test that implementations don't do the x+0x1p52-0x1p52 trick outside the +;; range where it's safe. +(assert_return (invoke "f32.ceil" (f32.const 0x1.fffffep+23)) (f32.const 0x1.fffffep+23)) +(assert_return (invoke "f32.ceil" (f32.const -0x1.fffffep+23)) (f32.const -0x1.fffffep+23)) +(assert_return (invoke "f64.ceil" (f64.const 0x1.fffffffffffffp+52)) (f64.const 0x1.fffffffffffffp+52)) +(assert_return (invoke "f64.ceil" (f64.const -0x1.fffffffffffffp+52)) (f64.const -0x1.fffffffffffffp+52)) + +;; Test values close to -1.0. +(assert_return (invoke "f32.floor" (f32.const -0x1.fffffep-1)) (f32.const -1.0)) +(assert_return (invoke "f32.floor" (f32.const -0x1.000002p+0)) (f32.const -2.0)) +(assert_return (invoke "f64.floor" (f64.const -0x1.fffffffffffffp-1)) (f64.const -1.0)) +(assert_return (invoke "f64.floor" (f64.const -0x1.0000000000001p+0)) (f64.const -2.0)) + +;; Test the maximum and minimum value for which floor is not an identity operator. +(assert_return (invoke "f32.floor" (f32.const -0x1.fffffep+22)) (f32.const -0x1p+23)) +(assert_return (invoke "f32.floor" (f32.const 0x1.fffffep+22)) (f32.const 0x1.fffffcp+22)) +(assert_return (invoke "f64.floor" (f64.const -0x1.fffffffffffffp+51)) (f64.const -0x1p+52)) +(assert_return (invoke "f64.floor" (f64.const 0x1.fffffffffffffp+51)) (f64.const 0x1.ffffffffffffep+51)) + +;; Test that floor isn't implemented as XMVectorFloor. +;; http://dss.stephanierct.com/DevBlog/?p=8#comment-4 +(assert_return (invoke "f32.floor" (f32.const 88607.0)) (f32.const 88607.0)) +(assert_return (invoke "f64.floor" (f64.const 88607.0)) (f64.const 88607.0)) + +;; Test the maximum and minimum value for which trunc is not an identity operator. +(assert_return (invoke "f32.trunc" (f32.const -0x1.fffffep+22)) (f32.const -0x1.fffffcp+22)) +(assert_return (invoke "f32.trunc" (f32.const 0x1.fffffep+22)) (f32.const 0x1.fffffcp+22)) +(assert_return (invoke "f64.trunc" (f64.const -0x1.fffffffffffffp+51)) (f64.const -0x1.ffffffffffffep+51)) +(assert_return (invoke "f64.trunc" (f64.const 0x1.fffffffffffffp+51)) (f64.const 0x1.ffffffffffffep+51)) + +;; Test that nearest isn't implemented naively. +;; http://blog.frama-c.com/index.php?post/2013/05/02/nearbyintf1 +;; http://blog.frama-c.com/index.php?post/2013/05/04/nearbyintf3 +(assert_return (invoke "f32.nearest" (f32.const 0x1.000002p+23)) (f32.const 0x1.000002p+23)) +(assert_return (invoke "f32.nearest" (f32.const 0x1.000004p+23)) (f32.const 0x1.000004p+23)) +(assert_return (invoke "f32.nearest" (f32.const 0x1.fffffep-2)) (f32.const 0.0)) +(assert_return (invoke "f32.nearest" (f32.const 0x1.fffffep+47)) (f32.const 0x1.fffffep+47)) +(assert_return (invoke "f64.nearest" (f64.const 0x1.0000000000001p+52)) (f64.const 0x1.0000000000001p+52)) +(assert_return (invoke "f64.nearest" (f64.const 0x1.0000000000002p+52)) (f64.const 0x1.0000000000002p+52)) +(assert_return (invoke "f64.nearest" (f64.const 0x1.fffffffffffffp-2)) (f64.const 0.0)) +(assert_return (invoke "f64.nearest" (f64.const 0x1.fffffffffffffp+105)) (f64.const 0x1.fffffffffffffp+105)) + +;; Nearest should not round halfway cases away from zero (as C's round(3) does) +;; or up (as JS's Math.round does). +(assert_return (invoke "f32.nearest" (f32.const 4.5)) (f32.const 4.0)) +(assert_return (invoke "f32.nearest" (f32.const -4.5)) (f32.const -4.0)) +(assert_return (invoke "f32.nearest" (f32.const -3.5)) (f32.const -4.0)) +(assert_return (invoke "f64.nearest" (f64.const 4.5)) (f64.const 4.0)) +(assert_return (invoke "f64.nearest" (f64.const -4.5)) (f64.const -4.0)) +(assert_return (invoke "f64.nearest" (f64.const -3.5)) (f64.const -4.0)) + +;; Test the maximum and minimum value for which nearest is not an identity operator. +(assert_return (invoke "f32.nearest" (f32.const -0x1.fffffep+22)) (f32.const -0x1p+23)) +(assert_return (invoke "f32.nearest" (f32.const 0x1.fffffep+22)) (f32.const 0x1p+23)) +(assert_return (invoke "f64.nearest" (f64.const -0x1.fffffffffffffp+51)) (f64.const -0x1p+52)) +(assert_return (invoke "f64.nearest" (f64.const 0x1.fffffffffffffp+51)) (f64.const 0x1p+52)) diff --git a/test/spec/forward.wast b/test/spec/forward.wast new file mode 100644 index 00000000000..7074ed74392 --- /dev/null +++ b/test/spec/forward.wast @@ -0,0 +1,20 @@ +(module + (func $even (export "even") (param $n i32) (result i32) + (if (result i32) (i32.eq (get_local $n) (i32.const 0)) + (then (i32.const 1)) + (else (call $odd (i32.sub (get_local $n) (i32.const 1)))) + ) + ) + + (func $odd (export "odd") (param $n i32) (result i32) + (if (result i32) (i32.eq (get_local $n) (i32.const 0)) + (then (i32.const 0)) + (else (call $even (i32.sub (get_local $n) (i32.const 1)))) + ) + ) +) + +(assert_return (invoke "even" (i32.const 13)) (i32.const 0)) +(assert_return (invoke "even" (i32.const 20)) (i32.const 1)) +(assert_return (invoke "odd" (i32.const 13)) (i32.const 1)) +(assert_return (invoke "odd" (i32.const 20)) (i32.const 0)) diff --git a/test/spec/func.wast b/test/spec/func.wast new file mode 100644 index 00000000000..f9b90f83797 --- /dev/null +++ b/test/spec/func.wast @@ -0,0 +1,670 @@ +;; Test `func` declarations, i.e. functions + +(module + ;; Auxiliary definition + (type $sig (func)) + (func $dummy) + + ;; Syntax + + (func) + (func (export "f")) + (func $f) + (func $h (export "g")) + + (func (local)) + (func (local) (local)) + (func (local i32)) + (func (local $x i32)) + (func (local i32 f64 i64)) + (func (local i32) (local f64)) + (func (local i32 f32) (local $x i64) (local) (local i32 f64)) + + (func (param)) + (func (param) (param)) + (func (param i32)) + (func (param $x i32)) + (func (param i32 f64 i64)) + (func (param i32) (param f64)) + (func (param i32 f32) (param $x i64) (param) (param i32 f64)) + + (func (result i32) (unreachable)) + + (type $sig-1 (func)) + (type $sig-2 (func (result i32))) + ;; NOT SUPPORTED IN BINARYEN + ;; (type $sig-3 (func (param $x i32))) + (type $sig-4 (func (param i32 f64 i32) (result i32))) + + (func (export "type-use-1") (type $sig-1)) + (func (export "type-use-2") (type $sig-2) (i32.const 0)) + ;; (func (export "type-use-3") (type $sig-3)) + (func (export "type-use-4") (type $sig-4) (i32.const 0)) + (func (export "type-use-5") (type $sig-2) (result i32) (i32.const 0)) + ;; (func (export "type-use-6") (type $sig-3) (param i32)) + (func (export "type-use-7") + (type $sig-4) (param i32) (param f64 i32) (result i32) (i32.const 0) + ) + + (func (type $sig)) + ;; NOT SUPPORTED IN BINARYEN + ;; (func (type $forward)) ;; forward reference + + (func $complex + (param i32 f32) (param $x i64) (param) (param i32) + ;; NOT SUPPORTED IN BINARYEN + ;; (result) (result i32) (result) + (local f32) (local $y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + (func $complex-sig + (type $sig) + (local f32) (local $y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;type $forward (func);) + + ;; Typing of locals + + (func (export "local-first-i32") (result i32) (local i32 i32) (get_local 0)) + (func (export "local-first-i64") (result i64) (local i64 i64) (get_local 0)) + (func (export "local-first-f32") (result f32) (local f32 f32) (get_local 0)) + (func (export "local-first-f64") (result f64) (local f64 f64) (get_local 0)) + (func (export "local-second-i32") (result i32) (local i32 i32) (get_local 1)) + (func (export "local-second-i64") (result i64) (local i64 i64) (get_local 1)) + (func (export "local-second-f32") (result f32) (local f32 f32) (get_local 1)) + (func (export "local-second-f64") (result f64) (local f64 f64) (get_local 1)) + (func (export "local-mixed") (result f64) + (local f32) (local $x i32) (local i64 i32) (local) (local f64 i32) + (drop (f32.neg (get_local 0))) + (drop (i32.eqz (get_local 1))) + (drop (i64.eqz (get_local 2))) + (drop (i32.eqz (get_local 3))) + (drop (f64.neg (get_local 4))) + (drop (i32.eqz (get_local 5))) + (get_local 4) + ) + + ;; Typing of parameters + + (func (export "param-first-i32") (param i32 i32) (result i32) (get_local 0)) + (func (export "param-first-i64") (param i64 i64) (result i64) (get_local 0)) + (func (export "param-first-f32") (param f32 f32) (result f32) (get_local 0)) + (func (export "param-first-f64") (param f64 f64) (result f64) (get_local 0)) + (func (export "param-second-i32") (param i32 i32) (result i32) (get_local 1)) + (func (export "param-second-i64") (param i64 i64) (result i64) (get_local 1)) + (func (export "param-second-f32") (param f32 f32) (result f32) (get_local 1)) + (func (export "param-second-f64") (param f64 f64) (result f64) (get_local 1)) + (func (export "param-mixed") (param f32 i32) (param) (param $x i64) (param i32 f64 i32) + (result f64) + (drop (f32.neg (get_local 0))) + (drop (i32.eqz (get_local 1))) + (drop (i64.eqz (get_local 2))) + (drop (i32.eqz (get_local 3))) + (drop (f64.neg (get_local 4))) + (drop (i32.eqz (get_local 5))) + (get_local 4) + ) + + ;; Typing of result + + (func (export "empty")) + (func (export "value-void") (call $dummy)) + (func (export "value-i32") (result i32) (i32.const 77)) + (func (export "value-i64") (result i64) (i64.const 7777)) + (func (export "value-f32") (result f32) (f32.const 77.7)) + (func (export "value-f64") (result f64) (f64.const 77.77)) + (func (export "value-block-void") (block (call $dummy) (call $dummy))) + (func (export "value-block-i32") (result i32) + (block (result i32) (call $dummy) (i32.const 77)) + ) + + (func (export "return-empty") (return)) + (func (export "return-i32") (result i32) (return (i32.const 78))) + (func (export "return-i64") (result i64) (return (i64.const 7878))) + (func (export "return-f32") (result f32) (return (f32.const 78.7))) + (func (export "return-f64") (result f64) (return (f64.const 78.78))) + (func (export "return-block-i32") (result i32) + (return (block (result i32) (call $dummy) (i32.const 77))) + ) + + (func (export "break-empty") (br 0)) + (func (export "break-i32") (result i32) (br 0 (i32.const 79))) + (func (export "break-i64") (result i64) (br 0 (i64.const 7979))) + (func (export "break-f32") (result f32) (br 0 (f32.const 79.9))) + (func (export "break-f64") (result f64) (br 0 (f64.const 79.79))) + (func (export "break-block-i32") (result i32) + (br 0 (block (result i32) (call $dummy) (i32.const 77))) + ) + + (func (export "break-br_if-empty") (param i32) + (br_if 0 (get_local 0)) + ) + (func (export "break-br_if-num") (param i32) (result i32) + (drop (br_if 0 (i32.const 50) (get_local 0))) (i32.const 51) + ) + + (func (export "break-br_table-empty") (param i32) + (br_table 0 0 0 (get_local 0)) + ) + (func (export "break-br_table-num") (param i32) (result i32) + (br_table 0 0 (i32.const 50) (get_local 0)) (i32.const 51) + ) + (func (export "break-br_table-nested-empty") (param i32) + (block (br_table 0 1 0 (get_local 0))) + ) + (func (export "break-br_table-nested-num") (param i32) (result i32) + (i32.add + (block (result i32) + (br_table 0 1 0 (i32.const 50) (get_local 0)) (i32.const 51) + ) + (i32.const 2) + ) + ) + + ;; Default initialization of locals + + (func (export "init-local-i32") (result i32) (local i32) (get_local 0)) + (func (export "init-local-i64") (result i64) (local i64) (get_local 0)) + (func (export "init-local-f32") (result f32) (local f32) (get_local 0)) + (func (export "init-local-f64") (result f64) (local f64) (get_local 0)) +) + +(assert_return (invoke "type-use-1")) +(assert_return (invoke "type-use-2") (i32.const 0)) +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "type-use-3" (i32.const 1))) +(assert_return + (invoke "type-use-4" (i32.const 1) (f64.const 1) (i32.const 1)) + (i32.const 0) +) +(assert_return (invoke "type-use-5") (i32.const 0)) +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "type-use-6" (i32.const 1))) +(assert_return + (invoke "type-use-7" (i32.const 1) (f64.const 1) (i32.const 1)) + (i32.const 0) +) + +(assert_return (invoke "local-first-i32") (i32.const 0)) +(assert_return (invoke "local-first-i64") (i64.const 0)) +(assert_return (invoke "local-first-f32") (f32.const 0)) +(assert_return (invoke "local-first-f64") (f64.const 0)) +(assert_return (invoke "local-second-i32") (i32.const 0)) +(assert_return (invoke "local-second-i64") (i64.const 0)) +(assert_return (invoke "local-second-f32") (f32.const 0)) +(assert_return (invoke "local-second-f64") (f64.const 0)) +(assert_return (invoke "local-mixed") (f64.const 0)) + +(assert_return + (invoke "param-first-i32" (i32.const 2) (i32.const 3)) (i32.const 2) +) +(assert_return + (invoke "param-first-i64" (i64.const 2) (i64.const 3)) (i64.const 2) +) +(assert_return + (invoke "param-first-f32" (f32.const 2) (f32.const 3)) (f32.const 2) +) +(assert_return + (invoke "param-first-f64" (f64.const 2) (f64.const 3)) (f64.const 2) +) +(assert_return + (invoke "param-second-i32" (i32.const 2) (i32.const 3)) (i32.const 3) +) +(assert_return + (invoke "param-second-i64" (i64.const 2) (i64.const 3)) (i64.const 3) +) +(assert_return + (invoke "param-second-f32" (f32.const 2) (f32.const 3)) (f32.const 3) +) +(assert_return + (invoke "param-second-f64" (f64.const 2) (f64.const 3)) (f64.const 3) +) + +(assert_return + (invoke "param-mixed" + (f32.const 1) (i32.const 2) (i64.const 3) + (i32.const 4) (f64.const 5.5) (i32.const 6) + ) + (f64.const 5.5) +) + +(assert_return (invoke "empty")) +(assert_return (invoke "value-void")) +(assert_return (invoke "value-i32") (i32.const 77)) +(assert_return (invoke "value-i64") (i64.const 7777)) +(assert_return (invoke "value-f32") (f32.const 77.7)) +(assert_return (invoke "value-f64") (f64.const 77.77)) +(assert_return (invoke "value-block-void")) +(assert_return (invoke "value-block-i32") (i32.const 77)) + +(assert_return (invoke "return-empty")) +(assert_return (invoke "return-i32") (i32.const 78)) +(assert_return (invoke "return-i64") (i64.const 7878)) +(assert_return (invoke "return-f32") (f32.const 78.7)) +(assert_return (invoke "return-f64") (f64.const 78.78)) +(assert_return (invoke "return-block-i32") (i32.const 77)) + +(assert_return (invoke "break-empty")) +(assert_return (invoke "break-i32") (i32.const 79)) +(assert_return (invoke "break-i64") (i64.const 7979)) +(assert_return (invoke "break-f32") (f32.const 79.9)) +(assert_return (invoke "break-f64") (f64.const 79.79)) +(assert_return (invoke "break-block-i32") (i32.const 77)) + +(assert_return (invoke "break-br_if-empty" (i32.const 0))) +(assert_return (invoke "break-br_if-empty" (i32.const 2))) +(assert_return (invoke "break-br_if-num" (i32.const 0)) (i32.const 51)) +(assert_return (invoke "break-br_if-num" (i32.const 1)) (i32.const 50)) + +(assert_return (invoke "break-br_table-empty" (i32.const 0))) +(assert_return (invoke "break-br_table-empty" (i32.const 1))) +(assert_return (invoke "break-br_table-empty" (i32.const 5))) +(assert_return (invoke "break-br_table-empty" (i32.const -1))) +(assert_return (invoke "break-br_table-num" (i32.const 0)) (i32.const 50)) +(assert_return (invoke "break-br_table-num" (i32.const 1)) (i32.const 50)) +(assert_return (invoke "break-br_table-num" (i32.const 10)) (i32.const 50)) +(assert_return (invoke "break-br_table-num" (i32.const -100)) (i32.const 50)) +(assert_return (invoke "break-br_table-nested-empty" (i32.const 0))) +(assert_return (invoke "break-br_table-nested-empty" (i32.const 1))) +(assert_return (invoke "break-br_table-nested-empty" (i32.const 3))) +(assert_return (invoke "break-br_table-nested-empty" (i32.const -2))) +(assert_return + (invoke "break-br_table-nested-num" (i32.const 0)) (i32.const 52) +) +(assert_return + (invoke "break-br_table-nested-num" (i32.const 1)) (i32.const 50) +) +(assert_return + (invoke "break-br_table-nested-num" (i32.const 2)) (i32.const 52) +) +(assert_return + (invoke "break-br_table-nested-num" (i32.const -3)) (i32.const 52) +) + +(assert_return (invoke "init-local-i32") (i32.const 0)) +(assert_return (invoke "init-local-i64") (i64.const 0)) +(assert_return (invoke "init-local-f32") (f32.const 0)) +(assert_return (invoke "init-local-f64") (f64.const 0)) + + +;; Expansion of inline function types + +;; NOT SUPPORTED IN BINARYEN +(;module + (func $f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $g (param i32)) ;; reuses explicit type definition + (type $t (func (param i32))) + + (func $i32->void (type 0)) ;; (param i32) + (func $void->f64 (type 1) (f64.const 0)) ;; (result f64) + (func $check + (call $i32->void (i32.const 0)) + (drop (call $void->f64)) + ) +;) + +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module + (func $f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $g (param i32)) ;; reuses explicit type definition + (func $h (result f64) (f64.const 1)) ;; reuses implicit type definition + (type $t (func (param i32))) + + (func (type 2)) ;; does not exist + ) + "unknown type" +;) + +;; NOT SUPPORTED IN BINARYEN +(;module + (type $sig (func)) + + (func $empty-sig-1) ;; should be assigned type $sig + (func $complex-sig-1 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $empty-sig-2) ;; should be assigned type $sig + (func $complex-sig-2 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $complex-sig-3 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $complex-sig-4 (param i64 i64 f64 i64 f64 i64 f32 i32)) + (func $complex-sig-5 (param i64 i64 f64 i64 f64 i64 f32 i32)) + + (type $empty-sig-duplicate (func)) + (type $complex-sig-duplicate (func (param i64 i64 f64 i64 f64 i64 f32 i32))) + (table anyfunc + (elem + $complex-sig-3 $empty-sig-2 $complex-sig-1 $complex-sig-3 $empty-sig-1 + $complex-sig-4 $complex-sig-5 + ) + ) + + (func (export "signature-explicit-reused") + (call_indirect (type $sig) (i32.const 1)) + (call_indirect (type $sig) (i32.const 4)) + ) + + + (func (export "signature-implicit-reused") + ;; The implicit index 3 in this test depends on the function and + ;; type definitions, and may need adapting if they change. + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 0) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 2) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 3) + ) + ) + + (func (export "signature-explicit-duplicate") + (call_indirect (type $empty-sig-duplicate) (i32.const 1)) + ) + + (func (export "signature-implicit-duplicate") + (call_indirect (type $complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 5) + ) + (call_indirect (type $complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 6) + ) + ) +;) +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "signature-explicit-reused")) +;; (assert_return (invoke "signature-implicit-reused")) +;; (assert_return (invoke "signature-explicit-duplicate")) +;; (assert_return (invoke "signature-implicit-duplicate")) + + +;; Malformed type use + +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (type $sig) (result i32) (param i32) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (param i32) (type $sig) (result i32) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (param i32) (result i32) (type $sig) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (result i32) (type $sig) (param i32) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (result i32) (param i32) (type $sig) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(func (result i32) (param i32) (i32.const 0))" + ) + "unexpected token" +) + +(assert_malformed + (module quote + "(type $sig (func))" + "(func (type $sig) (result i32) (i32.const 0))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (type $sig) (result i32) (i32.const 0))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (type $sig) (param i32) (i32.const 0))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32 i32) (result i32)))" + "(func (type $sig) (param i32) (result i32) (unreachable))" + ) + "inline function type" +) + + +;; Invalid typing of locals + +(assert_invalid + (module (func $type-local-num-vs-num (result i64) (local i32) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + + +;; Invalid typing of parameters + +(assert_invalid + (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + + +;; Invalid typing of result + +(assert_invalid + (module (func $type-multiple-result (result i32 i32) (unreachable))) + "invalid result arity" +) +(assert_invalid + (module + (type (func (result i32 i32))) + (func $type-multiple-result (type 0) (unreachable)) + ) + "invalid result arity" +) + + +(assert_invalid + (module (func $type-empty-i32 (result i32))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64))) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-void-vs-num (result i32) + (nop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-void + (i32.const 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-num (result i32) + (f32.const 0) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-return-last-empty-vs-num (result i32) + (return) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-last-void-vs-num (result i32) + (return (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-last-num-vs-num (result i32) + (return (i64.const 0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-return-empty-vs-num (result i32) + (return) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-void-vs-num (result i32) + (return (nop)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-num-vs-num (result i32) + (return (i64.const 1)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-first-num-vs-num (result i32) + (return (i64.const 1)) (return (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-last-void-vs-num (result i32) + (br 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-num-vs-num (result i32) + (br 0 (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-void-vs-num (result i32) + (br 0) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-num-vs-num (result i32) + (br 0 (i64.const 1)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-num-vs-num (result i32) + (br 0 (i64.const 1)) (br 0 (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-empty-vs-num (result i32) + (block (br 1)) (br 0 (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-void-vs-num (result i32) + (block (br 1 (nop))) (br 0 (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-num-vs-num (result i32) + (block (br 1 (i64.const 1))) (br 0 (i32.const 1)) + )) + "type mismatch" +) + + +;; Syntax errors + +(assert_malformed + (module quote "(func (nop) (local i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (nop) (param i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (nop) (result i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (local i32) (param i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (local i32) (result i32) (get_local 0))") + "unexpected token" +) +(assert_malformed + (module quote "(func (result i32) (param i32) (get_local 0))") + "unexpected token" +) diff --git a/test/spec/func_ptrs.wast b/test/spec/func_ptrs.wast new file mode 100644 index 00000000000..0d47d0fd319 --- /dev/null +++ b/test/spec/func_ptrs.wast @@ -0,0 +1,107 @@ +(module + (type (func)) ;; 0: void -> void + (type $S (func)) ;; 1: void -> void + (type (func (param))) ;; 2: void -> void + (type (func (result i32))) ;; 3: void -> i32 + (type (func (param) (result i32))) ;; 4: void -> i32 + (type $T (func (param i32) (result i32))) ;; 5: i32 -> i32 + (type $U (func (param i32))) ;; 6: i32 -> void + + (func $print (import "spectest" "print_i32") (type 6)) + + (func (type 0)) + (func (type $S)) + + (func (export "one") (type 4) (i32.const 13)) + (func (export "two") (type $T) (i32.add (get_local 0) (i32.const 1))) + + ;; Both signature and parameters are allowed (and required to match) + ;; since this allows the naming of parameters. + (func (export "three") (type $T) (param $a i32) (result i32) + (i32.sub (get_local 0) (i32.const 2)) + ) + + (func (export "four") (type $U) (call $print (get_local 0))) +) + +(assert_return (invoke "one") (i32.const 13)) +(assert_return (invoke "two" (i32.const 13)) (i32.const 14)) +(assert_return (invoke "three" (i32.const 13)) (i32.const 11)) +;; NOT SUPPORTED IN BINARYEN +;; (invoke "four" (i32.const 83)) + +(assert_invalid (module (elem (i32.const 0))) "unknown table") +(assert_invalid (module (elem (i32.const 0) 0) (func)) "unknown table") + +(assert_invalid + (module (table 1 anyfunc) (elem (i64.const 0))) + "type mismatch" +) +(assert_invalid + (module (table 1 anyfunc) (elem (i32.ctz (i32.const 0)))) + "constant expression required" +) +(assert_invalid + (module (table 1 anyfunc) (elem (nop))) + "constant expression required" +) + +(assert_invalid (module (func (type 42))) "unknown type") +(assert_invalid (module (import "spectest" "print_i32" (func (type 43)))) "unknown type") + +(module + (type $T (func (param) (result i32))) + (type $U (func (param) (result i32))) + (table anyfunc (elem $t1 $t2 $t3 $u1 $u2 $t1 $t3)) + + (func $t1 (type $T) (i32.const 1)) + (func $t2 (type $T) (i32.const 2)) + (func $t3 (type $T) (i32.const 3)) + (func $u1 (type $U) (i32.const 4)) + (func $u2 (type $U) (i32.const 5)) + + (func (export "callt") (param $i i32) (result i32) + (call_indirect (type $T) (get_local $i)) + ) + + (func (export "callu") (param $i i32) (result i32) + (call_indirect (type $U) (get_local $i)) + ) +) + +(assert_return (invoke "callt" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "callt" (i32.const 1)) (i32.const 2)) +(assert_return (invoke "callt" (i32.const 2)) (i32.const 3)) +(assert_return (invoke "callt" (i32.const 3)) (i32.const 4)) +(assert_return (invoke "callt" (i32.const 4)) (i32.const 5)) +(assert_return (invoke "callt" (i32.const 5)) (i32.const 1)) +(assert_return (invoke "callt" (i32.const 6)) (i32.const 3)) +(assert_trap (invoke "callt" (i32.const 7)) "undefined element") +(assert_trap (invoke "callt" (i32.const 100)) "undefined element") +(assert_trap (invoke "callt" (i32.const -1)) "undefined element") + +(assert_return (invoke "callu" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "callu" (i32.const 1)) (i32.const 2)) +(assert_return (invoke "callu" (i32.const 2)) (i32.const 3)) +(assert_return (invoke "callu" (i32.const 3)) (i32.const 4)) +(assert_return (invoke "callu" (i32.const 4)) (i32.const 5)) +(assert_return (invoke "callu" (i32.const 5)) (i32.const 1)) +(assert_return (invoke "callu" (i32.const 6)) (i32.const 3)) +(assert_trap (invoke "callu" (i32.const 7)) "undefined element") +(assert_trap (invoke "callu" (i32.const 100)) "undefined element") +(assert_trap (invoke "callu" (i32.const -1)) "undefined element") + +(module + (type $T (func (result i32))) + (table anyfunc (elem 0 1)) + + (func $t1 (type $T) (i32.const 1)) + (func $t2 (type $T) (i32.const 2)) + + (func (export "callt") (param $i i32) (result i32) + (call_indirect (type $T) (get_local $i)) + ) +) + +(assert_return (invoke "callt" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "callt" (i32.const 1)) (i32.const 2)) diff --git a/test/spec/get_local.wast b/test/spec/get_local.wast new file mode 100644 index 00000000000..e1f9625b96d --- /dev/null +++ b/test/spec/get_local.wast @@ -0,0 +1,148 @@ +;; Test `get_local` operator + +(module + ;; Typing + + (func (export "type-local-i32") (result i32) (local i32) (get_local 0)) + (func (export "type-local-i64") (result i64) (local i64) (get_local 0)) + (func (export "type-local-f32") (result f32) (local f32) (get_local 0)) + (func (export "type-local-f64") (result f64) (local f64) (get_local 0)) + + (func (export "type-param-i32") (param i32) (result i32) (get_local 0)) + (func (export "type-param-i64") (param i64) (result i64) (get_local 0)) + (func (export "type-param-f32") (param f32) (result f32) (get_local 0)) + (func (export "type-param-f64") (param f64) (result f64) (get_local 0)) + + (func (export "type-mixed") (param i64 f32 f64 i32 i32) + (local f32 i64 i64 f64) + (drop (i64.eqz (get_local 0))) + (drop (f32.neg (get_local 1))) + (drop (f64.neg (get_local 2))) + (drop (i32.eqz (get_local 3))) + (drop (i32.eqz (get_local 4))) + (drop (f32.neg (get_local 5))) + (drop (i64.eqz (get_local 6))) + (drop (i64.eqz (get_local 7))) + (drop (f64.neg (get_local 8))) + ) + + ;; Reading + + (func (export "read") (param i64 f32 f64 i32 i32) (result f64) + (local f32 i64 i64 f64) + (set_local 5 (f32.const 5.5)) + (set_local 6 (i64.const 6)) + (set_local 8 (f64.const 8)) + (f64.add + (f64.convert_u/i64 (get_local 0)) + (f64.add + (f64.promote/f32 (get_local 1)) + (f64.add + (get_local 2) + (f64.add + (f64.convert_u/i32 (get_local 3)) + (f64.add + (f64.convert_s/i32 (get_local 4)) + (f64.add + (f64.promote/f32 (get_local 5)) + (f64.add + (f64.convert_u/i64 (get_local 6)) + (f64.add + (f64.convert_u/i64 (get_local 7)) + (get_local 8) + ) + ) + ) + ) + ) + ) + ) + ) + ) +) + +(assert_return (invoke "type-local-i32") (i32.const 0)) +(assert_return (invoke "type-local-i64") (i64.const 0)) +(assert_return (invoke "type-local-f32") (f32.const 0)) +(assert_return (invoke "type-local-f64") (f64.const 0)) + +(assert_return (invoke "type-param-i32" (i32.const 2)) (i32.const 2)) +(assert_return (invoke "type-param-i64" (i64.const 3)) (i64.const 3)) +(assert_return (invoke "type-param-f32" (f32.const 4.4)) (f32.const 4.4)) +(assert_return (invoke "type-param-f64" (f64.const 5.5)) (f64.const 5.5)) + +(assert_return + (invoke "type-mixed" + (i64.const 1) (f32.const 2.2) (f64.const 3.3) (i32.const 4) (i32.const 5) + ) +) + +(assert_return + (invoke "read" + (i64.const 1) (f32.const 2) (f64.const 3.3) (i32.const 4) (i32.const 5) + ) + (f64.const 34.8) +) + + +;; Invalid typing of access to locals + +(assert_invalid + (module (func $type-local-num-vs-num (result i64) (local i32) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + + +;; Invalid typing of access to parameters + +(assert_invalid + (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + + +;; Invalid local index + +(assert_invalid + (module (func $unbound-local (local i32 i64) (get_local 3))) + "unknown local" +) +(assert_invalid + (module (func $large-local (local i32 i64) (get_local 14324343))) + "unknown local" +) + +(assert_invalid + (module (func $unbound-param (param i32 i64) (get_local 2))) + "unknown local" +) +(assert_invalid + (module (func $large-param (local i32 i64) (get_local 714324343))) + "unknown local" +) + +(assert_invalid + (module (func $unbound-mixed (param i32) (local i32 i64) (get_local 3))) + "unknown local" +) +(assert_invalid + (module (func $large-mixed (param i64) (local i32 i64) (get_local 214324343))) + "unknown local" +) + diff --git a/test/spec/globals.wast b/test/spec/globals.wast new file mode 100644 index 00000000000..7a48f4d5b2f --- /dev/null +++ b/test/spec/globals.wast @@ -0,0 +1,165 @@ +;; Test globals + +(module + (global $a i32 (i32.const -2)) + (global (;1;) f32 (f32.const -3)) + (global (;2;) f64 (f64.const -4)) + (global $b i64 (i64.const -5)) + + (global $x (mut i32) (i32.const -12)) + (global (;5;) (mut f32) (f32.const -13)) + (global (;6;) (mut f64) (f64.const -14)) + (global $y (mut i64) (i64.const -15)) + + (func (export "get-a") (result i32) (get_global $a)) + (func (export "get-b") (result i64) (get_global $b)) + (func (export "get-x") (result i32) (get_global $x)) + (func (export "get-y") (result i64) (get_global $y)) + (func (export "set-x") (param i32) (set_global $x (get_local 0))) + (func (export "set-y") (param i64) (set_global $y (get_local 0))) + + (func (export "get-1") (result f32) (get_global 1)) + (func (export "get-2") (result f64) (get_global 2)) + (func (export "get-5") (result f32) (get_global 5)) + (func (export "get-6") (result f64) (get_global 6)) + (func (export "set-5") (param f32) (set_global 5 (get_local 0))) + (func (export "set-6") (param f64) (set_global 6 (get_local 0))) +) + +(assert_return (invoke "get-a") (i32.const -2)) +(assert_return (invoke "get-b") (i64.const -5)) +(assert_return (invoke "get-x") (i32.const -12)) +(assert_return (invoke "get-y") (i64.const -15)) + +(assert_return (invoke "get-1") (f32.const -3)) +(assert_return (invoke "get-2") (f64.const -4)) +(assert_return (invoke "get-5") (f32.const -13)) +(assert_return (invoke "get-6") (f64.const -14)) + +(assert_return (invoke "set-x" (i32.const 6))) +(assert_return (invoke "set-y" (i64.const 7))) +(assert_return (invoke "set-5" (f32.const 8))) +(assert_return (invoke "set-6" (f64.const 9))) + +(assert_return (invoke "get-x") (i32.const 6)) +(assert_return (invoke "get-y") (i64.const 7)) +(assert_return (invoke "get-5") (f32.const 8)) +(assert_return (invoke "get-6") (f64.const 9)) + +(assert_invalid + (module (global f32 (f32.const 0)) (func (set_global 0 (i32.const 1)))) + "global is immutable" +) + +;; NOT SUPPORTED IN BINARYEN +;; mutable globals can be exported +;; (module (global (mut f32) (f32.const 0)) (export "a" (global 0))) +;; (module (global (export "a") (mut f32) (f32.const 0))) + +(assert_invalid + (module (global f32 (f32.neg (f32.const 0)))) + "constant expression required" +) + +(assert_invalid + (module (global f32 (get_local 0))) + "constant expression required" +) + +(assert_invalid + (module (global f32 (f32.neg (f32.const 1)))) + "constant expression required" +) + +(assert_invalid + (module (global i32 (i32.const 0) (nop))) + "constant expression required" +) + +(assert_invalid + (module (global i32 (nop))) + "constant expression required" +) + +(assert_invalid + (module (global i32 (f32.const 0))) + "type mismatch" +) + +(assert_invalid + (module (global i32 (i32.const 0) (i32.const 0))) + "type mismatch" +) + +(assert_invalid + (module (global i32 (;empty instruction sequence;))) + "type mismatch" +) + +(assert_invalid + (module (global i32 (get_global 0))) + "unknown global" +) + +(assert_invalid + (module (global i32 (get_global 1)) (global i32 (i32.const 0))) + "unknown global" +) + +(module + (import "spectest" "global_i32" (global i32)) +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\94\80\80\80\00" ;; import section + "\01" ;; length 1 + "\08\73\70\65\63\74\65\73\74" ;; "spectest" + "\0a\67\6c\6f\62\61\6c\5f\69\33\32" ;; "global_i32" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\02" ;; invalid mutability + ) + "invalid mutability" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\94\80\80\80\00" ;; import section + "\01" ;; length 1 + "\08\73\70\65\63\74\65\73\74" ;; "spectest" + "\0a\67\6c\6f\62\61\6c\5f\69\33\32" ;; "global_i32" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\ff" ;; invalid mutability + ) + "invalid mutability" +) + +(module + (global i32 (i32.const 0)) +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\86\80\80\80\00" ;; global section + "\01" ;; length 1 + "\7f" ;; i32 + "\02" ;; invalid mutability + "\41\00" ;; i32.const 0 + "\0b" ;; end + ) + "invalid mutability" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\86\80\80\80\00" ;; global section + "\01" ;; length 1 + "\7f" ;; i32 + "\ff" ;; invalid mutability + "\41\00" ;; i32.const 0 + "\0b" ;; end + ) + "invalid mutability" +) diff --git a/test/spec/i32.wast b/test/spec/i32.wast new file mode 100644 index 00000000000..bd8722e6144 --- /dev/null +++ b/test/spec/i32.wast @@ -0,0 +1,421 @@ +;; i32 operations + +(module + (func (export "add") (param $x i32) (param $y i32) (result i32) (i32.add (get_local $x) (get_local $y))) + (func (export "sub") (param $x i32) (param $y i32) (result i32) (i32.sub (get_local $x) (get_local $y))) + (func (export "mul") (param $x i32) (param $y i32) (result i32) (i32.mul (get_local $x) (get_local $y))) + (func (export "div_s") (param $x i32) (param $y i32) (result i32) (i32.div_s (get_local $x) (get_local $y))) + (func (export "div_u") (param $x i32) (param $y i32) (result i32) (i32.div_u (get_local $x) (get_local $y))) + (func (export "rem_s") (param $x i32) (param $y i32) (result i32) (i32.rem_s (get_local $x) (get_local $y))) + (func (export "rem_u") (param $x i32) (param $y i32) (result i32) (i32.rem_u (get_local $x) (get_local $y))) + (func (export "and") (param $x i32) (param $y i32) (result i32) (i32.and (get_local $x) (get_local $y))) + (func (export "or") (param $x i32) (param $y i32) (result i32) (i32.or (get_local $x) (get_local $y))) + (func (export "xor") (param $x i32) (param $y i32) (result i32) (i32.xor (get_local $x) (get_local $y))) + (func (export "shl") (param $x i32) (param $y i32) (result i32) (i32.shl (get_local $x) (get_local $y))) + (func (export "shr_s") (param $x i32) (param $y i32) (result i32) (i32.shr_s (get_local $x) (get_local $y))) + (func (export "shr_u") (param $x i32) (param $y i32) (result i32) (i32.shr_u (get_local $x) (get_local $y))) + (func (export "rotl") (param $x i32) (param $y i32) (result i32) (i32.rotl (get_local $x) (get_local $y))) + (func (export "rotr") (param $x i32) (param $y i32) (result i32) (i32.rotr (get_local $x) (get_local $y))) + (func (export "clz") (param $x i32) (result i32) (i32.clz (get_local $x))) + (func (export "ctz") (param $x i32) (result i32) (i32.ctz (get_local $x))) + (func (export "popcnt") (param $x i32) (result i32) (i32.popcnt (get_local $x))) + (func (export "eqz") (param $x i32) (result i32) (i32.eqz (get_local $x))) + (func (export "eq") (param $x i32) (param $y i32) (result i32) (i32.eq (get_local $x) (get_local $y))) + (func (export "ne") (param $x i32) (param $y i32) (result i32) (i32.ne (get_local $x) (get_local $y))) + (func (export "lt_s") (param $x i32) (param $y i32) (result i32) (i32.lt_s (get_local $x) (get_local $y))) + (func (export "lt_u") (param $x i32) (param $y i32) (result i32) (i32.lt_u (get_local $x) (get_local $y))) + (func (export "le_s") (param $x i32) (param $y i32) (result i32) (i32.le_s (get_local $x) (get_local $y))) + (func (export "le_u") (param $x i32) (param $y i32) (result i32) (i32.le_u (get_local $x) (get_local $y))) + (func (export "gt_s") (param $x i32) (param $y i32) (result i32) (i32.gt_s (get_local $x) (get_local $y))) + (func (export "gt_u") (param $x i32) (param $y i32) (result i32) (i32.gt_u (get_local $x) (get_local $y))) + (func (export "ge_s") (param $x i32) (param $y i32) (result i32) (i32.ge_s (get_local $x) (get_local $y))) + (func (export "ge_u") (param $x i32) (param $y i32) (result i32) (i32.ge_u (get_local $x) (get_local $y))) +) + +(assert_return (invoke "add" (i32.const 1) (i32.const 1)) (i32.const 2)) +(assert_return (invoke "add" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "add" (i32.const -1) (i32.const -1)) (i32.const -2)) +(assert_return (invoke "add" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "add" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0x80000000)) +(assert_return (invoke "add" (i32.const 0x80000000) (i32.const -1)) (i32.const 0x7fffffff)) +(assert_return (invoke "add" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "add" (i32.const 0x3fffffff) (i32.const 1)) (i32.const 0x40000000)) + +(assert_return (invoke "sub" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "sub" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "sub" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "sub" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "sub" (i32.const 0x80000000) (i32.const 1)) (i32.const 0x7fffffff)) +(assert_return (invoke "sub" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "sub" (i32.const 0x3fffffff) (i32.const -1)) (i32.const 0x40000000)) + +(assert_return (invoke "mul" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "mul" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "mul" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "mul" (i32.const 0x10000000) (i32.const 4096)) (i32.const 0)) +(assert_return (invoke "mul" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "mul" (i32.const 0x80000000) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "mul" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0x80000001)) +(assert_return (invoke "mul" (i32.const 0x01234567) (i32.const 0x76543210)) (i32.const 0x358e7470)) +(assert_return (invoke "mul" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) + +(assert_trap (invoke "div_s" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i32.const 0x80000000) (i32.const -1)) "integer overflow") +(assert_return (invoke "div_s" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "div_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "div_s" (i32.const 0) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "div_s" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "div_s" (i32.const 0x80000000) (i32.const 2)) (i32.const 0xc0000000)) +(assert_return (invoke "div_s" (i32.const 0x80000001) (i32.const 1000)) (i32.const 0xffdf3b65)) +(assert_return (invoke "div_s" (i32.const 5) (i32.const 2)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const -5) (i32.const 2)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const 5) (i32.const -2)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const -5) (i32.const -2)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const 7) (i32.const 3)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const -7) (i32.const 3)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const 7) (i32.const -3)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const -7) (i32.const -3)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const 11) (i32.const 5)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const 17) (i32.const 7)) (i32.const 2)) + +(assert_trap (invoke "div_u" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "div_u" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_return (invoke "div_u" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "div_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "div_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const 0x80000000) (i32.const 2)) (i32.const 0x40000000)) +(assert_return (invoke "div_u" (i32.const 0x8ff00ff0) (i32.const 0x10001)) (i32.const 0x8fef)) +(assert_return (invoke "div_u" (i32.const 0x80000001) (i32.const 1000)) (i32.const 0x20c49b)) +(assert_return (invoke "div_u" (i32.const 5) (i32.const 2)) (i32.const 2)) +(assert_return (invoke "div_u" (i32.const -5) (i32.const 2)) (i32.const 0x7ffffffd)) +(assert_return (invoke "div_u" (i32.const 5) (i32.const -2)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const -5) (i32.const -2)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const 7) (i32.const 3)) (i32.const 2)) +(assert_return (invoke "div_u" (i32.const 11) (i32.const 5)) (i32.const 2)) +(assert_return (invoke "div_u" (i32.const 17) (i32.const 7)) (i32.const 2)) + +(assert_trap (invoke "rem_s" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_s" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_return (invoke "rem_s" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0x80000000) (i32.const 2)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0x80000001) (i32.const 1000)) (i32.const -647)) +(assert_return (invoke "rem_s" (i32.const 5) (i32.const 2)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -5) (i32.const 2)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 5) (i32.const -2)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -5) (i32.const -2)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 7) (i32.const 3)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -7) (i32.const 3)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 7) (i32.const -3)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -7) (i32.const -3)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 11) (i32.const 5)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const 17) (i32.const 7)) (i32.const 3)) + +(assert_trap (invoke "rem_u" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_u" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_return (invoke "rem_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "rem_u" (i32.const 0x80000000) (i32.const 2)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const 0x8ff00ff0) (i32.const 0x10001)) (i32.const 0x8001)) +(assert_return (invoke "rem_u" (i32.const 0x80000001) (i32.const 1000)) (i32.const 649)) +(assert_return (invoke "rem_u" (i32.const 5) (i32.const 2)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const -5) (i32.const 2)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const 5) (i32.const -2)) (i32.const 5)) +(assert_return (invoke "rem_u" (i32.const -5) (i32.const -2)) (i32.const -5)) +(assert_return (invoke "rem_u" (i32.const 7) (i32.const 3)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const 11) (i32.const 5)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const 17) (i32.const 7)) (i32.const 3)) + +(assert_return (invoke "and" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "and" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0x7fffffff)) +(assert_return (invoke "and" (i32.const 0xf0f0ffff) (i32.const 0xfffff0f0)) (i32.const 0xf0f0f0f0)) +(assert_return (invoke "and" (i32.const 0xffffffff) (i32.const 0xffffffff)) (i32.const 0xffffffff)) + +(assert_return (invoke "or" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "or" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "or" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "or" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "or" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const -1)) +(assert_return (invoke "or" (i32.const 0x80000000) (i32.const 0)) (i32.const 0x80000000)) +(assert_return (invoke "or" (i32.const 0xf0f0ffff) (i32.const 0xfffff0f0)) (i32.const 0xffffffff)) +(assert_return (invoke "or" (i32.const 0xffffffff) (i32.const 0xffffffff)) (i32.const 0xffffffff)) + +(assert_return (invoke "xor" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "xor" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "xor" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "xor" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "xor" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const -1)) +(assert_return (invoke "xor" (i32.const 0x80000000) (i32.const 0)) (i32.const 0x80000000)) +(assert_return (invoke "xor" (i32.const -1) (i32.const 0x80000000)) (i32.const 0x7fffffff)) +(assert_return (invoke "xor" (i32.const -1) (i32.const 0x7fffffff)) (i32.const 0x80000000)) +(assert_return (invoke "xor" (i32.const 0xf0f0ffff) (i32.const 0xfffff0f0)) (i32.const 0x0f0f0f0f)) +(assert_return (invoke "xor" (i32.const 0xffffffff) (i32.const 0xffffffff)) (i32.const 0)) + +(assert_return (invoke "shl" (i32.const 1) (i32.const 1)) (i32.const 2)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "shl" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0xfffffffe)) +(assert_return (invoke "shl" (i32.const 0xffffffff) (i32.const 1)) (i32.const 0xfffffffe)) +(assert_return (invoke "shl" (i32.const 0x80000000) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "shl" (i32.const 0x40000000) (i32.const 1)) (i32.const 0x80000000)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 31)) (i32.const 0x80000000)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 33)) (i32.const 2)) +(assert_return (invoke "shl" (i32.const 1) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 0x7fffffff)) (i32.const 0x80000000)) + +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 1)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0x3fffffff)) +(assert_return (invoke "shr_s" (i32.const 0x80000000) (i32.const 1)) (i32.const 0xc0000000)) +(assert_return (invoke "shr_s" (i32.const 0x40000000) (i32.const 1)) (i32.const 0x20000000)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 33)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "shr_s" (i32.const 0x80000000) (i32.const 31)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 32)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 33)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const -1)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 0x7fffffff)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 0x80000000)) (i32.const -1)) + +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 1)) (i32.const 0x7fffffff)) +(assert_return (invoke "shr_u" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0x3fffffff)) +(assert_return (invoke "shr_u" (i32.const 0x80000000) (i32.const 1)) (i32.const 0x40000000)) +(assert_return (invoke "shr_u" (i32.const 0x40000000) (i32.const 1)) (i32.const 0x20000000)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 33)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const 0x80000000) (i32.const 31)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 32)) (i32.const -1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 33)) (i32.const 0x7fffffff)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 0x80000000)) (i32.const -1)) + +(assert_return (invoke "rotl" (i32.const 1) (i32.const 1)) (i32.const 2)) +(assert_return (invoke "rotl" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "rotl" (i32.const -1) (i32.const 1)) (i32.const -1)) +(assert_return (invoke "rotl" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "rotl" (i32.const 0xabcd9876) (i32.const 1)) (i32.const 0x579b30ed)) +(assert_return (invoke "rotl" (i32.const 0xfe00dc00) (i32.const 4)) (i32.const 0xe00dc00f)) +(assert_return (invoke "rotl" (i32.const 0xb0c1d2e3) (i32.const 5)) (i32.const 0x183a5c76)) +(assert_return (invoke "rotl" (i32.const 0x00008000) (i32.const 37)) (i32.const 0x00100000)) +(assert_return (invoke "rotl" (i32.const 0xb0c1d2e3) (i32.const 0xff05)) (i32.const 0x183a5c76)) +(assert_return (invoke "rotl" (i32.const 0x769abcdf) (i32.const 0xffffffed)) (i32.const 0x579beed3)) +(assert_return (invoke "rotl" (i32.const 0x769abcdf) (i32.const 0x8000000d)) (i32.const 0x579beed3)) +(assert_return (invoke "rotl" (i32.const 1) (i32.const 31)) (i32.const 0x80000000)) +(assert_return (invoke "rotl" (i32.const 0x80000000) (i32.const 1)) (i32.const 1)) + +(assert_return (invoke "rotr" (i32.const 1) (i32.const 1)) (i32.const 0x80000000)) +(assert_return (invoke "rotr" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "rotr" (i32.const -1) (i32.const 1)) (i32.const -1)) +(assert_return (invoke "rotr" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "rotr" (i32.const 0xff00cc00) (i32.const 1)) (i32.const 0x7f806600)) +(assert_return (invoke "rotr" (i32.const 0x00080000) (i32.const 4)) (i32.const 0x00008000)) +(assert_return (invoke "rotr" (i32.const 0xb0c1d2e3) (i32.const 5)) (i32.const 0x1d860e97)) +(assert_return (invoke "rotr" (i32.const 0x00008000) (i32.const 37)) (i32.const 0x00000400)) +(assert_return (invoke "rotr" (i32.const 0xb0c1d2e3) (i32.const 0xff05)) (i32.const 0x1d860e97)) +(assert_return (invoke "rotr" (i32.const 0x769abcdf) (i32.const 0xffffffed)) (i32.const 0xe6fbb4d5)) +(assert_return (invoke "rotr" (i32.const 0x769abcdf) (i32.const 0x8000000d)) (i32.const 0xe6fbb4d5)) +(assert_return (invoke "rotr" (i32.const 1) (i32.const 31)) (i32.const 2)) +(assert_return (invoke "rotr" (i32.const 0x80000000) (i32.const 31)) (i32.const 1)) + +(assert_return (invoke "clz" (i32.const 0xffffffff)) (i32.const 0)) +(assert_return (invoke "clz" (i32.const 0)) (i32.const 32)) +(assert_return (invoke "clz" (i32.const 0x00008000)) (i32.const 16)) +(assert_return (invoke "clz" (i32.const 0xff)) (i32.const 24)) +(assert_return (invoke "clz" (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "clz" (i32.const 1)) (i32.const 31)) +(assert_return (invoke "clz" (i32.const 2)) (i32.const 30)) +(assert_return (invoke "clz" (i32.const 0x7fffffff)) (i32.const 1)) + +(assert_return (invoke "ctz" (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ctz" (i32.const 0)) (i32.const 32)) +(assert_return (invoke "ctz" (i32.const 0x00008000)) (i32.const 15)) +(assert_return (invoke "ctz" (i32.const 0x00010000)) (i32.const 16)) +(assert_return (invoke "ctz" (i32.const 0x80000000)) (i32.const 31)) +(assert_return (invoke "ctz" (i32.const 0x7fffffff)) (i32.const 0)) + +(assert_return (invoke "popcnt" (i32.const -1)) (i32.const 32)) +(assert_return (invoke "popcnt" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "popcnt" (i32.const 0x00008000)) (i32.const 1)) +(assert_return (invoke "popcnt" (i32.const 0x80008000)) (i32.const 2)) +(assert_return (invoke "popcnt" (i32.const 0x7fffffff)) (i32.const 31)) +(assert_return (invoke "popcnt" (i32.const 0xAAAAAAAA)) (i32.const 16)) +(assert_return (invoke "popcnt" (i32.const 0x55555555)) (i32.const 16)) +(assert_return (invoke "popcnt" (i32.const 0xDEADBEEF)) (i32.const 24)) + +(assert_return (invoke "eqz" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "eqz" (i32.const 1)) (i32.const 0)) +(assert_return (invoke "eqz" (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "eqz" (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "eqz" (i32.const 0xffffffff)) (i32.const 0)) + +(assert_return (invoke "eq" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "ne" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "lt_s" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "lt_u" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "le_s" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "le_s" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "le_u" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "gt_s" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "gt_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "gt_u" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "ge_s" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "ge_u" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) diff --git a/test/spec/i64.wast b/test/spec/i64.wast new file mode 100644 index 00000000000..6bb8a31e9f1 --- /dev/null +++ b/test/spec/i64.wast @@ -0,0 +1,421 @@ +;; i64 operations + +(module + (func (export "add") (param $x i64) (param $y i64) (result i64) (i64.add (get_local $x) (get_local $y))) + (func (export "sub") (param $x i64) (param $y i64) (result i64) (i64.sub (get_local $x) (get_local $y))) + (func (export "mul") (param $x i64) (param $y i64) (result i64) (i64.mul (get_local $x) (get_local $y))) + (func (export "div_s") (param $x i64) (param $y i64) (result i64) (i64.div_s (get_local $x) (get_local $y))) + (func (export "div_u") (param $x i64) (param $y i64) (result i64) (i64.div_u (get_local $x) (get_local $y))) + (func (export "rem_s") (param $x i64) (param $y i64) (result i64) (i64.rem_s (get_local $x) (get_local $y))) + (func (export "rem_u") (param $x i64) (param $y i64) (result i64) (i64.rem_u (get_local $x) (get_local $y))) + (func (export "and") (param $x i64) (param $y i64) (result i64) (i64.and (get_local $x) (get_local $y))) + (func (export "or") (param $x i64) (param $y i64) (result i64) (i64.or (get_local $x) (get_local $y))) + (func (export "xor") (param $x i64) (param $y i64) (result i64) (i64.xor (get_local $x) (get_local $y))) + (func (export "shl") (param $x i64) (param $y i64) (result i64) (i64.shl (get_local $x) (get_local $y))) + (func (export "shr_s") (param $x i64) (param $y i64) (result i64) (i64.shr_s (get_local $x) (get_local $y))) + (func (export "shr_u") (param $x i64) (param $y i64) (result i64) (i64.shr_u (get_local $x) (get_local $y))) + (func (export "rotl") (param $x i64) (param $y i64) (result i64) (i64.rotl (get_local $x) (get_local $y))) + (func (export "rotr") (param $x i64) (param $y i64) (result i64) (i64.rotr (get_local $x) (get_local $y))) + (func (export "clz") (param $x i64) (result i64) (i64.clz (get_local $x))) + (func (export "ctz") (param $x i64) (result i64) (i64.ctz (get_local $x))) + (func (export "popcnt") (param $x i64) (result i64) (i64.popcnt (get_local $x))) + (func (export "eqz") (param $x i64) (result i32) (i64.eqz (get_local $x))) + (func (export "eq") (param $x i64) (param $y i64) (result i32) (i64.eq (get_local $x) (get_local $y))) + (func (export "ne") (param $x i64) (param $y i64) (result i32) (i64.ne (get_local $x) (get_local $y))) + (func (export "lt_s") (param $x i64) (param $y i64) (result i32) (i64.lt_s (get_local $x) (get_local $y))) + (func (export "lt_u") (param $x i64) (param $y i64) (result i32) (i64.lt_u (get_local $x) (get_local $y))) + (func (export "le_s") (param $x i64) (param $y i64) (result i32) (i64.le_s (get_local $x) (get_local $y))) + (func (export "le_u") (param $x i64) (param $y i64) (result i32) (i64.le_u (get_local $x) (get_local $y))) + (func (export "gt_s") (param $x i64) (param $y i64) (result i32) (i64.gt_s (get_local $x) (get_local $y))) + (func (export "gt_u") (param $x i64) (param $y i64) (result i32) (i64.gt_u (get_local $x) (get_local $y))) + (func (export "ge_s") (param $x i64) (param $y i64) (result i32) (i64.ge_s (get_local $x) (get_local $y))) + (func (export "ge_u") (param $x i64) (param $y i64) (result i32) (i64.ge_u (get_local $x) (get_local $y))) +) + +(assert_return (invoke "add" (i64.const 1) (i64.const 1)) (i64.const 2)) +(assert_return (invoke "add" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "add" (i64.const -1) (i64.const -1)) (i64.const -2)) +(assert_return (invoke "add" (i64.const -1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "add" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "add" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "add" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "add" (i64.const 0x3fffffff) (i64.const 1)) (i64.const 0x40000000)) + +(assert_return (invoke "sub" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "sub" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "sub" (i64.const -1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "sub" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "sub" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "sub" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "sub" (i64.const 0x3fffffff) (i64.const -1)) (i64.const 0x40000000)) + +(assert_return (invoke "mul" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "mul" (i64.const 1) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "mul" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "mul" (i64.const 0x1000000000000000) (i64.const 4096)) (i64.const 0)) +(assert_return (invoke "mul" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "mul" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "mul" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x8000000000000001)) +(assert_return (invoke "mul" (i64.const 0x0123456789abcdef) (i64.const 0xfedcba9876543210)) (i64.const 0x2236d88fe5618cf0)) +(assert_return (invoke "mul" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i64.const 1)) + +(assert_trap (invoke "div_s" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i64.const 0x8000000000000000) (i64.const -1)) "integer overflow") +(assert_return (invoke "div_s" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "div_s" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "div_s" (i64.const 0) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "div_s" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "div_s" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0xc000000000000000)) +(assert_return (invoke "div_s" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 0xffdf3b645a1cac09)) +(assert_return (invoke "div_s" (i64.const 5) (i64.const 2)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const -5) (i64.const 2)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const 5) (i64.const -2)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const -5) (i64.const -2)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const 7) (i64.const 3)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const -7) (i64.const 3)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const 7) (i64.const -3)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const -7) (i64.const -3)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const 11) (i64.const 5)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const 17) (i64.const 7)) (i64.const 2)) + +(assert_trap (invoke "div_u" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "div_u" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_return (invoke "div_u" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "div_u" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "div_u" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0x4000000000000000)) +(assert_return (invoke "div_u" (i64.const 0x8ff00ff00ff00ff0) (i64.const 0x100000001)) (i64.const 0x8ff00fef)) +(assert_return (invoke "div_u" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 0x20c49ba5e353f7)) +(assert_return (invoke "div_u" (i64.const 5) (i64.const 2)) (i64.const 2)) +(assert_return (invoke "div_u" (i64.const -5) (i64.const 2)) (i64.const 0x7ffffffffffffffd)) +(assert_return (invoke "div_u" (i64.const 5) (i64.const -2)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const -5) (i64.const -2)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const 7) (i64.const 3)) (i64.const 2)) +(assert_return (invoke "div_u" (i64.const 11) (i64.const 5)) (i64.const 2)) +(assert_return (invoke "div_u" (i64.const 17) (i64.const 7)) (i64.const 2)) + +(assert_trap (invoke "rem_s" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_s" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_return (invoke "rem_s" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const -1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const -807)) +(assert_return (invoke "rem_s" (i64.const 5) (i64.const 2)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -5) (i64.const 2)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 5) (i64.const -2)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -5) (i64.const -2)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 7) (i64.const 3)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -7) (i64.const 3)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 7) (i64.const -3)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -7) (i64.const -3)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 11) (i64.const 5)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const 17) (i64.const 7)) (i64.const 3)) + +(assert_trap (invoke "rem_u" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_u" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_return (invoke "rem_u" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const -1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "rem_u" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const 0x8ff00ff00ff00ff0) (i64.const 0x100000001)) (i64.const 0x80000001)) +(assert_return (invoke "rem_u" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 809)) +(assert_return (invoke "rem_u" (i64.const 5) (i64.const 2)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const -5) (i64.const 2)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const 5) (i64.const -2)) (i64.const 5)) +(assert_return (invoke "rem_u" (i64.const -5) (i64.const -2)) (i64.const -5)) +(assert_return (invoke "rem_u" (i64.const 7) (i64.const 3)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const 11) (i64.const 5)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const 17) (i64.const 7)) (i64.const 3)) + +(assert_return (invoke "and" (i64.const 1) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "and" (i64.const 0) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "and" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0xf0f0f0f0)) +(assert_return (invoke "and" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0xffffffffffffffff)) + +(assert_return (invoke "or" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "or" (i64.const 0) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "or" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "or" (i64.const 0) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "or" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const -1)) +(assert_return (invoke "or" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "or" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0xffffffff)) +(assert_return (invoke "or" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0xffffffffffffffff)) + +(assert_return (invoke "xor" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "xor" (i64.const 0) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "xor" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "xor" (i64.const 0) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "xor" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const -1)) +(assert_return (invoke "xor" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "xor" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "xor" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const 0x8000000000000000)) +(assert_return (invoke "xor" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0x0f0f0f0f)) +(assert_return (invoke "xor" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0)) + +(assert_return (invoke "shl" (i64.const 1) (i64.const 1)) (i64.const 2)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "shl" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0xfffffffffffffffe)) +(assert_return (invoke "shl" (i64.const 0xffffffffffffffff) (i64.const 1)) (i64.const 0xfffffffffffffffe)) +(assert_return (invoke "shl" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "shl" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 63)) (i64.const 0x8000000000000000)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 65)) (i64.const 2)) +(assert_return (invoke "shl" (i64.const 1) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0x8000000000000000)) + +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 1)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x3fffffffffffffff)) +(assert_return (invoke "shr_s" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0xc000000000000000)) +(assert_return (invoke "shr_s" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x2000000000000000)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 65)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 0x8000000000000000)) (i64.const 1)) +(assert_return (invoke "shr_s" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 64)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 65)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const -1)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const -1)) + +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "shr_u" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x3fffffffffffffff)) +(assert_return (invoke "shr_u" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0x4000000000000000)) +(assert_return (invoke "shr_u" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x2000000000000000)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 65)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 0x8000000000000000)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 64)) (i64.const -1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 65)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const -1)) + +(assert_return (invoke "rotl" (i64.const 1) (i64.const 1)) (i64.const 2)) +(assert_return (invoke "rotl" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "rotl" (i64.const -1) (i64.const 1)) (i64.const -1)) +(assert_return (invoke "rotl" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "rotl" (i64.const 0xabcd987602468ace) (i64.const 1)) (i64.const 0x579b30ec048d159d)) +(assert_return (invoke "rotl" (i64.const 0xfe000000dc000000) (i64.const 4)) (i64.const 0xe000000dc000000f)) +(assert_return (invoke "rotl" (i64.const 0xabcd1234ef567809) (i64.const 53)) (i64.const 0x013579a2469deacf)) +(assert_return (invoke "rotl" (i64.const 0xabd1234ef567809c) (i64.const 63)) (i64.const 0x55e891a77ab3c04e)) +(assert_return (invoke "rotl" (i64.const 0xabcd1234ef567809) (i64.const 0xf5)) (i64.const 0x013579a2469deacf)) +(assert_return (invoke "rotl" (i64.const 0xabcd7294ef567809) (i64.const 0xffffffffffffffed)) (i64.const 0xcf013579ae529dea)) +(assert_return (invoke "rotl" (i64.const 0xabd1234ef567809c) (i64.const 0x800000000000003f)) (i64.const 0x55e891a77ab3c04e)) +(assert_return (invoke "rotl" (i64.const 1) (i64.const 63)) (i64.const 0x8000000000000000)) +(assert_return (invoke "rotl" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 1)) + +(assert_return (invoke "rotr" (i64.const 1) (i64.const 1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "rotr" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "rotr" (i64.const -1) (i64.const 1)) (i64.const -1)) +(assert_return (invoke "rotr" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "rotr" (i64.const 0xabcd987602468ace) (i64.const 1)) (i64.const 0x55e6cc3b01234567)) +(assert_return (invoke "rotr" (i64.const 0xfe000000dc000000) (i64.const 4)) (i64.const 0x0fe000000dc00000)) +(assert_return (invoke "rotr" (i64.const 0xabcd1234ef567809) (i64.const 53)) (i64.const 0x6891a77ab3c04d5e)) +(assert_return (invoke "rotr" (i64.const 0xabd1234ef567809c) (i64.const 63)) (i64.const 0x57a2469deacf0139)) +(assert_return (invoke "rotr" (i64.const 0xabcd1234ef567809) (i64.const 0xf5)) (i64.const 0x6891a77ab3c04d5e)) +(assert_return (invoke "rotr" (i64.const 0xabcd7294ef567809) (i64.const 0xffffffffffffffed)) (i64.const 0x94a77ab3c04d5e6b)) +(assert_return (invoke "rotr" (i64.const 0xabd1234ef567809c) (i64.const 0x800000000000003f)) (i64.const 0x57a2469deacf0139)) +(assert_return (invoke "rotr" (i64.const 1) (i64.const 63)) (i64.const 2)) +(assert_return (invoke "rotr" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const 1)) + +(assert_return (invoke "clz" (i64.const 0xffffffffffffffff)) (i64.const 0)) +(assert_return (invoke "clz" (i64.const 0)) (i64.const 64)) +(assert_return (invoke "clz" (i64.const 0x00008000)) (i64.const 48)) +(assert_return (invoke "clz" (i64.const 0xff)) (i64.const 56)) +(assert_return (invoke "clz" (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "clz" (i64.const 1)) (i64.const 63)) +(assert_return (invoke "clz" (i64.const 2)) (i64.const 62)) +(assert_return (invoke "clz" (i64.const 0x7fffffffffffffff)) (i64.const 1)) + +(assert_return (invoke "ctz" (i64.const -1)) (i64.const 0)) +(assert_return (invoke "ctz" (i64.const 0)) (i64.const 64)) +(assert_return (invoke "ctz" (i64.const 0x00008000)) (i64.const 15)) +(assert_return (invoke "ctz" (i64.const 0x00010000)) (i64.const 16)) +(assert_return (invoke "ctz" (i64.const 0x8000000000000000)) (i64.const 63)) +(assert_return (invoke "ctz" (i64.const 0x7fffffffffffffff)) (i64.const 0)) + +(assert_return (invoke "popcnt" (i64.const -1)) (i64.const 64)) +(assert_return (invoke "popcnt" (i64.const 0)) (i64.const 0)) +(assert_return (invoke "popcnt" (i64.const 0x00008000)) (i64.const 1)) +(assert_return (invoke "popcnt" (i64.const 0x8000800080008000)) (i64.const 4)) +(assert_return (invoke "popcnt" (i64.const 0x7fffffffffffffff)) (i64.const 63)) +(assert_return (invoke "popcnt" (i64.const 0xAAAAAAAA55555555)) (i64.const 32)) +(assert_return (invoke "popcnt" (i64.const 0x99999999AAAAAAAA)) (i64.const 32)) +(assert_return (invoke "popcnt" (i64.const 0xDEADBEEFDEADBEEF)) (i64.const 48)) + +(assert_return (invoke "eqz" (i64.const 0)) (i32.const 1)) +(assert_return (invoke "eqz" (i64.const 1)) (i32.const 0)) +(assert_return (invoke "eqz" (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "eqz" (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "eqz" (i64.const 0xffffffffffffffff)) (i32.const 0)) + +(assert_return (invoke "eq" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "ne" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "lt_s" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "lt_u" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "le_s" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "le_s" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "le_u" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "gt_s" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "gt_s" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "gt_u" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "ge_s" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "ge_u" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) diff --git a/test/spec/if.wast b/test/spec/if.wast new file mode 100644 index 00000000000..d28618e4c62 --- /dev/null +++ b/test/spec/if.wast @@ -0,0 +1,757 @@ +;; Test `if` operator + +(module + ;; Auxiliary definition + (memory 1) + + (func $dummy) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "empty") (param i32) + (if (get_local 0) (then)) + (if (get_local 0) (then) (else)) + (if $l (get_local 0) (then)) + (if $l (get_local 0) (then) (else)) + ;) + + (func (export "singular") (param i32) (result i32) + (if (get_local 0) (then (nop))) + (if (get_local 0) (then (nop)) (else (nop))) + (if (result i32) (get_local 0) (then (i32.const 7)) (else (i32.const 8))) + ) + + (func (export "multi") (param i32) (result i32) + (if (get_local 0) (then (call $dummy) (call $dummy) (call $dummy))) + ;; NOT SUPPORTED IN BINARYEN + ;; (if (get_local 0) (then) (else (call $dummy) (call $dummy) (call $dummy))) + (if (result i32) (get_local 0) + (then (call $dummy) (call $dummy) (i32.const 8)) + (else (call $dummy) (call $dummy) (i32.const 9)) + ) + ) + + (func (export "nested") (param i32 i32) (result i32) + (if (result i32) (get_local 0) + (then + (if (get_local 1) (then (call $dummy) (block) (nop))) + ;; NOT SUPPORTED IN BINARYEN + ;; (if (get_local 1) (then) (else (call $dummy) (block) (nop))) + (if (result i32) (get_local 1) + (then (call $dummy) (i32.const 9)) + (else (call $dummy) (i32.const 10)) + ) + ) + (else + (if (get_local 1) (then (call $dummy) (block) (nop))) + ;; NOT SUPPORTED IN BINARYEN + ;; (if (get_local 1) (then) (else (call $dummy) (block) (nop))) + (if (result i32) (get_local 1) + (then (call $dummy) (i32.const 10)) + (else (call $dummy) (i32.const 11)) + ) + ) + ) + ) + + (func (export "as-select-first") (param i32) (result i32) + (select + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-select-mid") (param i32) (result i32) + (select + (i32.const 2) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.const 3) + ) + ) + (func (export "as-select-last") (param i32) (result i32) + (select + (i32.const 2) (i32.const 3) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + ) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-loop-first") (param i32) (result i32) + (loop (result i32) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (call $dummy) (call $dummy) + ) + ;) + (;func (export "as-loop-mid") (param i32) (result i32) + (loop (result i32) + (call $dummy) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (call $dummy) + ) + ;) + (func (export "as-loop-last") (param i32) (result i32) + (loop (result i32) + (call $dummy) (call $dummy) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + ) + ) + + (func (export "as-if-condition") (param i32) (result i32) + (if (result i32) + (if (result i32) (get_local 0) + (then (i32.const 1)) (else (i32.const 0)) + ) + (then (call $dummy) (i32.const 2)) + (else (call $dummy) (i32.const 3)) + ) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-br_if-first") (param i32) (result i32) + (block (result i32) + (br_if 0 + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.const 2) + ) + (return (i32.const 3)) + ) + ;) + (;func (export "as-br_if-last") (param i32) (result i32) + (block (result i32) + (br_if 0 + (i32.const 2) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + ) + (return (i32.const 3)) + ) + ;) + (;func (export "as-br_table-first") (param i32) (result i32) + (block (result i32) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.const 2) + (br_table 0 0) + ) + ;) + (;func (export "as-br_table-last") (param i32) (result i32) + (block (result i32) + (i32.const 2) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (br_table 0 0) + ) + ;) + + (func $func (param i32 i32) (result i32) (get_local 0)) + (type $check (func (param i32 i32) (result i32))) + (table anyfunc (elem $func)) + (func (export "as-call_indirect-first") (param i32) (result i32) + (block (result i32) + (call_indirect (type $check) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.const 2) (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-mid") (param i32) (result i32) + (block (result i32) + (call_indirect (type $check) + (i32.const 2) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.const 0) + ) + ) + ) + (func (export "as-call_indirect-last") (param i32) (result i32) + (block (result i32) + (call_indirect (type $check) + (i32.const 2) (i32.const 0) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + ) + ) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-store-first") (param i32) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.const 2) + (i32.store) + ;) + (;func (export "as-store-last") (param i32) + (i32.const 2) + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 1)) + (else (call $dummy) (i32.const 0)) + ) + (i32.store) + ;) + + (func (export "as-memory.grow-value") (param i32) (result i32) + (memory.grow + (if (result i32) (get_local 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + + (func $f (param i32) (result i32) (get_local 0)) + + (func (export "as-call-value") (param i32) (result i32) + (call $f + (if (result i32) (get_local 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-return-value") (param i32) (result i32) + (if (result i32) (get_local 0) + (then (i32.const 1)) + (else (i32.const 0))) + (return) + ;) + (func (export "as-drop-operand") (param i32) + (drop + (if (result i32) (get_local 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + (func (export "as-br-value") (param i32) (result i32) + (block (result i32) + (br 0 + (if (result i32) (get_local 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + ) + ) + (func (export "as-set_local-value") (param i32) (result i32) + (local i32) + (set_local 0 + (if (result i32) (get_local 0) + (then (i32.const 1)) + (else (i32.const 0)) + ) + ) + (get_local 0) + ) + (func (export "as-load-operand") (param i32) (result i32) + (i32.load + (if (result i32) (get_local 0) + (then (i32.const 11)) + (else (i32.const 10)) + ) + ) + ) + + (func (export "as-unary-operand") (param i32) (result i32) + (i32.ctz + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 13)) + (else (call $dummy) (i32.const -13)) + ) + ) + ) + (func (export "as-binary-operand") (param i32 i32) (result i32) + (i32.mul + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 3)) + (else (call $dummy) (i32.const -3)) + ) + (if (result i32) (get_local 1) + (then (call $dummy) (i32.const 4)) + (else (call $dummy) (i32.const -5)) + ) + ) + ) + (func (export "as-test-operand") (param i32) (result i32) + (i32.eqz + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 13)) + (else (call $dummy) (i32.const 0)) + ) + ) + ) + (func (export "as-compare-operand") (param i32 i32) (result i32) + (f32.gt + (if (result f32) (get_local 0) + (then (call $dummy) (f32.const 3)) + (else (call $dummy) (f32.const -3)) + ) + (if (result f32) (get_local 1) + (then (call $dummy) (f32.const 4)) + (else (call $dummy) (f32.const -4)) + ) + ) + ) + + (func (export "break-bare") (result i32) + (if (i32.const 1) (then (br 0) (unreachable))) + (if (i32.const 1) (then (br 0) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br 0) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_table 0 (i32.const 0)) (unreachable))) + (i32.const 19) + ) + + (func (export "break-value") (param i32) (result i32) + (if (result i32) (get_local 0) + (then (br 0 (i32.const 18)) (i32.const 19)) + (else (br 0 (i32.const 21)) (i32.const 20)) + ) + ) + + (func (export "effects") (param i32) (result i32) + (local i32) + (if + (block (result i32) (set_local 1 (i32.const 1)) (get_local 0)) + (then + (set_local 1 (i32.mul (get_local 1) (i32.const 3))) + (set_local 1 (i32.sub (get_local 1) (i32.const 5))) + (set_local 1 (i32.mul (get_local 1) (i32.const 7))) + (br 0) + (set_local 1 (i32.mul (get_local 1) (i32.const 100))) + ) + (else + (set_local 1 (i32.mul (get_local 1) (i32.const 5))) + (set_local 1 (i32.sub (get_local 1) (i32.const 7))) + (set_local 1 (i32.mul (get_local 1) (i32.const 3))) + (br 0) + (set_local 1 (i32.mul (get_local 1) (i32.const 1000))) + ) + ) + (get_local 1) + ) +) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "empty" (i32.const 0))) +;; (assert_return (invoke "empty" (i32.const 1))) +;; (assert_return (invoke "empty" (i32.const 100))) +;; (assert_return (invoke "empty" (i32.const -2))) + +(assert_return (invoke "singular" (i32.const 0)) (i32.const 8)) +(assert_return (invoke "singular" (i32.const 1)) (i32.const 7)) +(assert_return (invoke "singular" (i32.const 10)) (i32.const 7)) +(assert_return (invoke "singular" (i32.const -10)) (i32.const 7)) + +(assert_return (invoke "multi" (i32.const 0)) (i32.const 9)) +(assert_return (invoke "multi" (i32.const 1)) (i32.const 8)) +(assert_return (invoke "multi" (i32.const 13)) (i32.const 8)) +(assert_return (invoke "multi" (i32.const -5)) (i32.const 8)) + +(assert_return (invoke "nested" (i32.const 0) (i32.const 0)) (i32.const 11)) +(assert_return (invoke "nested" (i32.const 1) (i32.const 0)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const 0) (i32.const 1)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const 3) (i32.const 2)) (i32.const 9)) +(assert_return (invoke "nested" (i32.const 0) (i32.const -100)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const 10) (i32.const 10)) (i32.const 9)) +(assert_return (invoke "nested" (i32.const 0) (i32.const -1)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const -111) (i32.const -2)) (i32.const 9)) + +(assert_return (invoke "as-select-first" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-select-first" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "as-select-mid" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-select-mid" (i32.const 1)) (i32.const 2)) +(assert_return (invoke "as-select-last" (i32.const 0)) (i32.const 3)) +(assert_return (invoke "as-select-last" (i32.const 1)) (i32.const 2)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-loop-first" (i32.const 0)) (i32.const 0)) +;; (assert_return (invoke "as-loop-first" (i32.const 1)) (i32.const 1)) +;; (assert_return (invoke "as-loop-mid" (i32.const 0)) (i32.const 0)) +;; (assert_return (invoke "as-loop-mid" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "as-loop-last" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-loop-last" (i32.const 1)) (i32.const 1)) + +(assert_return (invoke "as-if-condition" (i32.const 0)) (i32.const 3)) +(assert_return (invoke "as-if-condition" (i32.const 1)) (i32.const 2)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-br_if-first" (i32.const 0)) (i32.const 0)) +;; (assert_return (invoke "as-br_if-first" (i32.const 1)) (i32.const 1)) +;; (assert_return (invoke "as-br_if-last" (i32.const 0)) (i32.const 3)) +;; (assert_return (invoke "as-br_if-last" (i32.const 1)) (i32.const 2)) + +;; (assert_return (invoke "as-br_table-first" (i32.const 0)) (i32.const 0)) +;; (assert_return (invoke "as-br_table-first" (i32.const 1)) (i32.const 1)) +;; (assert_return (invoke "as-br_table-last" (i32.const 0)) (i32.const 2)) +;; (assert_return (invoke "as-br_table-last" (i32.const 1)) (i32.const 2)) + +(assert_return (invoke "as-call_indirect-first" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-call_indirect-first" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "as-call_indirect-mid" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "as-call_indirect-mid" (i32.const 1)) (i32.const 2)) +(assert_return (invoke "as-call_indirect-last" (i32.const 0)) (i32.const 2)) +(assert_trap (invoke "as-call_indirect-last" (i32.const 1)) "undefined element") + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-store-first" (i32.const 0))) +;; (assert_return (invoke "as-store-first" (i32.const 1))) +;; (assert_return (invoke "as-store-last" (i32.const 0))) +;; (assert_return (invoke "as-store-last" (i32.const 1))) + +(assert_return (invoke "as-memory.grow-value" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-memory.grow-value" (i32.const 1)) (i32.const 1)) + +(assert_return (invoke "as-call-value" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-call-value" (i32.const 1)) (i32.const 1)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "as-return-value" (i32.const 0)) (i32.const 0)) +;; (assert_return (invoke "as-return-value" (i32.const 1)) (i32.const 1)) + +(assert_return (invoke "as-drop-operand" (i32.const 0))) +(assert_return (invoke "as-drop-operand" (i32.const 1))) + +(assert_return (invoke "as-br-value" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-br-value" (i32.const 1)) (i32.const 1)) + +(assert_return (invoke "as-set_local-value" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-set_local-value" (i32.const 1)) (i32.const 1)) + +(assert_return (invoke "as-load-operand" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-load-operand" (i32.const 1)) (i32.const 0)) + +(assert_return (invoke "as-unary-operand" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-unary-operand" (i32.const 1)) (i32.const 0)) +(assert_return (invoke "as-unary-operand" (i32.const -1)) (i32.const 0)) + +(assert_return (invoke "as-binary-operand" (i32.const 0) (i32.const 0)) (i32.const 15)) +(assert_return (invoke "as-binary-operand" (i32.const 0) (i32.const 1)) (i32.const -12)) +(assert_return (invoke "as-binary-operand" (i32.const 1) (i32.const 0)) (i32.const -15)) +(assert_return (invoke "as-binary-operand" (i32.const 1) (i32.const 1)) (i32.const 12)) + +(assert_return (invoke "as-test-operand" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-test-operand" (i32.const 1)) (i32.const 0)) + +(assert_return (invoke "as-compare-operand" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-compare-operand" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "as-compare-operand" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-compare-operand" (i32.const 1) (i32.const 1)) (i32.const 0)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "break-bare") (i32.const 19)) +(assert_return (invoke "break-value" (i32.const 1)) (i32.const 18)) +(assert_return (invoke "break-value" (i32.const 0)) (i32.const 21)) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "effects" (i32.const 1)) (i32.const -14)) +;; (assert_return (invoke "effects" (i32.const 0)) (i32.const -6)) + +(assert_invalid + (module (func $type-empty-i32 (result i32) (if (i32.const 0) (then)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64) (if (i32.const 0) (then)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32) (if (i32.const 0) (then)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64) (if (i32.const 0) (then)))) + "type mismatch" +) + +(assert_invalid + (module (func $type-empty-i32 (result i32) (if (i32.const 0) (then) (else)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64) (if (i32.const 0) (then) (else)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32) (if (i32.const 0) (then) (else)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64) (if (i32.const 0) (then) (else)))) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-num-vs-void + (if (i32.const 1) (then (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-value-num-vs-void + (if (i32.const 1) (then (i32.const 1)) (else)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-num-vs-void + (if (i32.const 1) (then) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-num-vs-void + (if (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else (i32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-no-else-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (i32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else (nop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (nop))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-different-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (f64.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-unreached-select (result i32) + (if (result i64) + (i32.const 0) + (then (select (unreachable) (unreachable) (unreachable))) + (else (i64.const 0)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (i64.const 0)) + (else (select (unreachable) (unreachable) (unreachable))) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (select (unreachable) (unreachable) (unreachable))) + (else (select (unreachable) (unreachable) (unreachable))) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (br 0)) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (br 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0) (i32.const 1)) + (else (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1)) + (else (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (nop)) (i32.const 1)) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + )) + "type mismatch" +) + + +(assert_malformed + (module quote "(func if end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else $l end)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else $l end)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else $l end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else $l1 end $l2)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else $a end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else $l end $l)") + "mismatching label" +) diff --git a/test/spec/imports.wast b/test/spec/imports.wast new file mode 100644 index 00000000000..67f46ed10ee --- /dev/null +++ b/test/spec/imports.wast @@ -0,0 +1,596 @@ +;; Auxiliary module to import from + +(module + (func (export "func")) + (func (export "func-i32") (param i32)) + (func (export "func-f32") (param f32)) + (func (export "func->i32") (result i32) (i32.const 22)) + (func (export "func->f32") (result f32) (f32.const 11)) + (func (export "func-i32->i32") (param i32) (result i32) (get_local 0)) + (func (export "func-i64->i64") (param i64) (result i64) (get_local 0)) + (global (export "global-i32") i32 (i32.const 55)) + (global (export "global-f32") f32 (f32.const 44)) + (table (export "table-10-inf") 10 anyfunc) + ;; (table (export "table-10-20") 10 20 anyfunc) + (memory (export "memory-2-inf") 2) + ;; (memory (export "memory-2-4") 2 4) +) + +;; NOT SUPPORTED IN BINARYEN +;; (register "test") + + +;; Functions + +(module + (type $func_i32 (func (param i32))) + (type $func_i64 (func (param i64))) + (type $func_f32 (func (param f32))) + (type $func_f64 (func (param f64))) + + (import "spectest" "print_i32" (func (param i32))) + ;; JavaScript can't handle i64 yet. + ;; (func (import "spectest" "print_i64") (param i64)) + (import "spectest" "print_i32" (func $print_i32 (param i32))) + ;; JavaScript can't handle i64 yet. + ;; (import "spectest" "print_i64" (func $print_i64 (param i64))) + (import "spectest" "print_f32" (func $print_f32 (param f32))) + (import "spectest" "print_f64" (func $print_f64 (param f64))) + (import "spectest" "print_i32_f32" (func $print_i32_f32 (param i32 f32))) + (import "spectest" "print_f64_f64" (func $print_f64_f64 (param f64 f64))) + (func $print_i32-2 (import "spectest" "print_i32") (param i32)) + (func $print_f64-2 (import "spectest" "print_f64") (param f64)) + (import "test" "func-i64->i64" (func $i64->i64 (param i64) (result i64))) + + (func (export "p1") (import "spectest" "print_i32") (param i32)) + (func $p (export "p2") (import "spectest" "print_i32") (param i32)) + ;; NOT SUPPORTED IN BINARYEN + ;; (func (export "p3") (export "p4") (import "spectest" "print_i32") (param i32)) + (func (export "p5") (import "spectest" "print_i32") (type 0)) + ;; NOT SUPPORTED IN BINARYEN + ;; (func (export "p6") (import "spectest" "print_i32") (type 0) (param i32) (result)) + ;; (import "spectest" "print_i32" (func (type $forward))) + ;; (func (import "spectest" "print_i32") (type $forward)) + ;; (type $forward (func (param i32))) + + (table anyfunc (elem $print_i32 $print_f64)) + + (func (export "print32") (param $i i32) + (local $x f32) + (set_local $x (f32.convert_s/i32 (get_local $i))) + (call 0 (get_local $i)) + (call $print_i32_f32 + (i32.add (get_local $i) (i32.const 1)) + (f32.const 42) + ) + (call $print_i32 (get_local $i)) + (call $print_i32-2 (get_local $i)) + (call $print_f32 (get_local $x)) + (call_indirect (type $func_i32) (get_local $i) (i32.const 0)) + ) + + (func (export "print64") (param $i i64) + (local $x f64) + (set_local $x (f64.convert_s/i64 (call $i64->i64 (get_local $i)))) + ;; JavaScript can't handle i64 yet. + ;; (call 1 (get_local $i)) + (call $print_f64_f64 + (f64.add (get_local $x) (f64.const 1)) + (f64.const 53) + ) + ;; JavaScript can't handle i64 yet. + ;; (call $print_i64 (get_local $i)) + (call $print_f64 (get_local $x)) + (call $print_f64-2 (get_local $x)) + (call_indirect (type $func_f64) (get_local $x) (i32.const 1)) + ) +) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "print32" (i32.const 13))) +;; (assert_return (invoke "print64" (i64.const 24))) + +(assert_invalid + (module + (type (func (result i32))) + (import "test" "func" (func (type 1))) + ) + "unknown type" +) + +(module (import "test" "func" (func))) +(module (import "test" "func-i32" (func (param i32)))) +(module (import "test" "func-f32" (func (param f32)))) +(module (import "test" "func->i32" (func (result i32)))) +(module (import "test" "func->f32" (func (result f32)))) +(module (import "test" "func-i32->i32" (func (param i32) (result i32)))) +(module (import "test" "func-i64->i64" (func (param i64) (result i64)))) + +(assert_unlinkable + (module (import "test" "unknown" (func))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (func))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "func" (func (param i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func" (func (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func" (func (param i32) (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (param f32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (param i64)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (param i32) (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (param i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (result f32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (result i64)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (param i32) (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32->i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32->i32" (func (param i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32->i32" (func (result i32)))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "test" "global-i32" (func (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "global_i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (func))) + "incompatible import type" +) +;; NOT SUPPORTED IN BINARYEN +(;assert_unlinkable + (module (import "spectest" "memory" (func))) + "incompatible import type" +;) + + +;; Globals + +(module + (import "spectest" "global_i32" (global i32)) + (global (import "spectest" "global_i32") i32) + + (import "spectest" "global_i32" (global $x i32)) + (global $y (import "spectest" "global_i32") i32) + + ;; JavaScript can't handle i64 yet. + ;; (import "spectest" "global_i64" (global i64)) + (import "spectest" "global_f32" (global f32)) + (import "spectest" "global_f64" (global f64)) + + (func (export "get-0") (result i32) (get_global 0)) + (func (export "get-1") (result i32) (get_global 1)) + (func (export "get-x") (result i32) (get_global $x)) + (func (export "get-y") (result i32) (get_global $y)) +) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "get-0") (i32.const 666)) +;; (assert_return (invoke "get-1") (i32.const 666)) +;; (assert_return (invoke "get-x") (i32.const 666)) +;; (assert_return (invoke "get-y") (i32.const 666)) + +(module (import "test" "global-i32" (global i32))) +(module (import "test" "global-f32" (global f32))) + +(assert_unlinkable + (module (import "test" "unknown" (global i32))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (global i32))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "func" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "print_i32" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (global i32))) + "incompatible import type" +) + + +;; Tables + +(module + (type (func (result i32))) + (import "spectest" "table" (table 10 20 anyfunc)) + (elem 0 (i32.const 1) $f $g) + + (func (export "call") (param i32) (result i32) + (call_indirect (type 0) (get_local 0)) + ) + (func $f (result i32) (i32.const 11)) + (func $g (result i32) (i32.const 22)) +) + +(assert_trap (invoke "call" (i32.const 0)) "uninitialized element") +(assert_return (invoke "call" (i32.const 1)) (i32.const 11)) +(assert_return (invoke "call" (i32.const 2)) (i32.const 22)) +(assert_trap (invoke "call" (i32.const 3)) "uninitialized element") +(assert_trap (invoke "call" (i32.const 100)) "undefined element") + + +(module + (type (func (result i32))) + (table (import "spectest" "table") 10 20 anyfunc) + (elem 0 (i32.const 1) $f $g) + + (func (export "call") (param i32) (result i32) + (call_indirect (type 0) (get_local 0)) + ) + (func $f (result i32) (i32.const 11)) + (func $g (result i32) (i32.const 22)) +) + +(assert_trap (invoke "call" (i32.const 0)) "uninitialized element") +(assert_return (invoke "call" (i32.const 1)) (i32.const 11)) +(assert_return (invoke "call" (i32.const 2)) (i32.const 22)) +(assert_trap (invoke "call" (i32.const 3)) "uninitialized element") +(assert_trap (invoke "call" (i32.const 100)) "undefined element") + + +(assert_invalid + (module (import "" "" (table 10 anyfunc)) (import "" "" (table 10 anyfunc))) + "multiple tables" +) +(assert_invalid + (module (import "" "" (table 10 anyfunc)) (table 10 anyfunc)) + "multiple tables" +) +(assert_invalid + (module (table 10 anyfunc) (table 10 anyfunc)) + "multiple tables" +) + +(module (import "test" "table-10-inf" (table 10 anyfunc))) +(module (import "test" "table-10-inf" (table 5 anyfunc))) +(module (import "test" "table-10-inf" (table 0 anyfunc))) +(module (import "spectest" "table" (table 10 anyfunc))) +(module (import "spectest" "table" (table 5 anyfunc))) +(module (import "spectest" "table" (table 0 anyfunc))) +(module (import "spectest" "table" (table 10 20 anyfunc))) +(module (import "spectest" "table" (table 5 20 anyfunc))) +(module (import "spectest" "table" (table 0 20 anyfunc))) +(module (import "spectest" "table" (table 10 25 anyfunc))) +(module (import "spectest" "table" (table 5 25 anyfunc))) + +(assert_unlinkable + (module (import "test" "unknown" (table 10 anyfunc))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (table 10 anyfunc))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "table-10-inf" (table 12 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (table 10 20 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (table 12 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (table 10 15 anyfunc))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "test" "func" (table 10 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "global-i32" (table 10 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (table 10 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "print_i32" (table 10 anyfunc))) + "incompatible import type" +) + + + +;; Memories + +(module + (import "spectest" "memory" (memory 1 2)) + (data 0 (i32.const 10) "\10") + + (func (export "load") (param i32) (result i32) (i32.load (get_local 0))) +) + +(assert_return (invoke "load" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "load" (i32.const 10)) (i32.const 16)) +(assert_return (invoke "load" (i32.const 8)) (i32.const 0x100000)) +(assert_trap (invoke "load" (i32.const 1000000)) "out of bounds memory access") + +(module + (memory (import "spectest" "memory") 1 2) + (data 0 (i32.const 10) "\10") + + (func (export "load") (param i32) (result i32) (i32.load (get_local 0))) +) +(assert_return (invoke "load" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "load" (i32.const 10)) (i32.const 16)) +(assert_return (invoke "load" (i32.const 8)) (i32.const 0x100000)) +(assert_trap (invoke "load" (i32.const 1000000)) "out of bounds memory access") + +(assert_invalid + (module (import "" "" (memory 1)) (import "" "" (memory 1))) + "multiple memories" +) +(assert_invalid + (module (import "" "" (memory 1)) (memory 0)) + "multiple memories" +) +(assert_invalid + (module (memory 0) (memory 0)) + "multiple memories" +) + +(module (import "test" "memory-2-inf" (memory 2))) +(module (import "test" "memory-2-inf" (memory 1))) +(module (import "test" "memory-2-inf" (memory 0))) +(module (import "spectest" "memory" (memory 1))) +(module (import "spectest" "memory" (memory 0))) +(module (import "spectest" "memory" (memory 1 2))) +(module (import "spectest" "memory" (memory 0 2))) +(module (import "spectest" "memory" (memory 1 3))) +(module (import "spectest" "memory" (memory 0 3))) + +(assert_unlinkable + (module (import "test" "unknown" (memory 1))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (memory 1))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "memory-2-inf" (memory 3))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (memory 2 3))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (memory 2))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (memory 1 1))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "test" "func-i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "global-i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "print_i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "global_i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (memory 1))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "spectest" "memory" (memory 2))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (memory 1 1))) + "incompatible import type" +) + +(module + (import "spectest" "memory" (memory 0 3)) ;; actual has max size 2 + (func (export "grow") (param i32) (result i32) (memory.grow (get_local 0))) +) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const -1)) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 2)) + + +;; Syntax errors + +(assert_malformed + (module quote "(func) (import \"\" \"\" (func))") + "import after function" +) +(assert_malformed + (module quote "(func) (import \"\" \"\" (global i64))") + "import after function" +) +(assert_malformed + (module quote "(func) (import \"\" \"\" (table 0 anyfunc))") + "import after function" +) +(assert_malformed + (module quote "(func) (import \"\" \"\" (memory 0))") + "import after function" +) + +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (func))") + "import after global" +) +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (global f32))") + "import after global" +) +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (table 0 anyfunc))") + "import after global" +) +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (memory 0))") + "import after global" +) + +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (func))") + "import after table" +) +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (global i32))") + "import after table" +) +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (table 0 anyfunc))") + "import after table" +) +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (memory 0))") + "import after table" +) + +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (func))") + "import after memory" +) +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (global i32))") + "import after memory" +) +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (table 1 3 anyfunc))") + "import after memory" +) +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (memory 1 2))") + "import after memory" +) + +;; This module is required to validate, regardless of whether it can be +;; linked. Overloading is not possible in wasm itself, but it is possible +;; in modules from which wasm can import. +(assert_unlinkable + (module + (import "not wasm" "overloaded" (func)) + (import "not wasm" "overloaded" (func (param i32))) + (import "not wasm" "overloaded" (func (param i32 i32))) + (import "not wasm" "overloaded" (func (param i64))) + (import "not wasm" "overloaded" (func (param f32))) + (import "not wasm" "overloaded" (func (param f64))) + (import "not wasm" "overloaded" (func (result i32))) + (import "not wasm" "overloaded" (func (result i64))) + (import "not wasm" "overloaded" (func (result f32))) + (import "not wasm" "overloaded" (func (result f64))) + (import "not wasm" "overloaded" (global i32)) + (import "not wasm" "overloaded" (global i64)) + (import "not wasm" "overloaded" (global f32)) + (import "not wasm" "overloaded" (global f64)) + (import "not wasm" "overloaded" (table 0 anyfunc)) + (import "not wasm" "overloaded" (memory 0)) + ) + "unknown import" +) diff --git a/test/spec/inline-module.wast b/test/spec/inline-module.wast new file mode 100644 index 00000000000..dc7ead7767f --- /dev/null +++ b/test/spec/inline-module.wast @@ -0,0 +1 @@ +(func) (memory 0) (func (export "f")) diff --git a/test/spec/int_exprs.wast b/test/spec/int_exprs.wast new file mode 100644 index 00000000000..99396a8b032 --- /dev/null +++ b/test/spec/int_exprs.wast @@ -0,0 +1,350 @@ +;; Test interesting integer "expressions". These tests contain code +;; patterns which tempt common value-changing optimizations. + +;; Test that x+1>n is not folded to x. + +(module + (func (export "i32.no_fold_shl_shr_s") (param $x i32) (result i32) + (i32.shr_s (i32.shl (get_local $x) (i32.const 1)) (i32.const 1))) + (func (export "i32.no_fold_shl_shr_u") (param $x i32) (result i32) + (i32.shr_u (i32.shl (get_local $x) (i32.const 1)) (i32.const 1))) + + (func (export "i64.no_fold_shl_shr_s") (param $x i64) (result i64) + (i64.shr_s (i64.shl (get_local $x) (i64.const 1)) (i64.const 1))) + (func (export "i64.no_fold_shl_shr_u") (param $x i64) (result i64) + (i64.shr_u (i64.shl (get_local $x) (i64.const 1)) (i64.const 1))) +) + +(assert_return (invoke "i32.no_fold_shl_shr_s" (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "i32.no_fold_shl_shr_u" (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "i64.no_fold_shl_shr_s" (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "i64.no_fold_shl_shr_u" (i64.const 0x8000000000000000)) (i64.const 0)) + +;; Test that x>>n<?,./ ") (result i32) (i32.const 6)) + + ;; Test that we can use names that have special meaning in JS. + (func (export "NaN") (result i32) (i32.const 7)) + (func (export "Infinity") (result i32) (i32.const 8)) + (func (export "if") (result i32) (i32.const 9)) + + ;; Test that we can use common libc names without conflict. + (func (export "malloc") (result i32) (i32.const 10)) + + ;; Test that we can use some libc hidden names without conflict. + (func (export "_malloc") (result i32) (i32.const 11)) + (func (export "__malloc") (result i32) (i32.const 12)) + + ;; Test that names are case-sensitive. + (func (export "a") (result i32) (i32.const 13)) + (func (export "A") (result i32) (i32.const 14)) + + ;; Test that UTF-8 BOM code points can appear in identifiers. + (func (export "") (result i32) (i32.const 15)) + + ;; Test that Unicode normalization is not applied. These function names + ;; contain different codepoints which normalize to the same thing under + ;; NFC or NFD. + (func (export "Å") (result i32) (i32.const 16)) + (func (export "Å") (result i32) (i32.const 17)) + (func (export "Å") (result i32) (i32.const 18)) + + ;; Test that Unicode compatibility normalization is not applied. These + ;; function names contain different codepoints which normalize to the + ;; same thing under NFKC or NFKD. + (func (export "ffi") (result i32) (i32.const 19)) + (func (export "ffi") (result i32) (i32.const 20)) + (func (export "ffi") (result i32) (i32.const 21)) + + ;; Test the C0 control codes. + (func (export "\00\01\02\03\04\05\06\07\08\09\0a\0b\0c\0d\0e\0f") (result i32) (i32.const 22)) + (func (export "\10\11\12\13\14\15\16\17\18\19\1a\1b\1c\1d\1e\1f") (result i32) (i32.const 23)) + ;; Test miscellaneous control codes. + (func (export " \7f") (result i32) (i32.const 24)) + ;; Test the C1 control codes. + (func (export "\c2\80\c2\81\c2\82\c2\83\c2\84\c2\85\c2\86\c2\87\c2\88\c2\89\c2\8a\c2\8b\c2\8c\c2\8d\c2\8e\c2\8f") (result i32) (i32.const 25)) + (func (export "\c2\90\c2\91\c2\92\c2\93\c2\94\c2\95\c2\96\c2\97\c2\98\c2\99\c2\9a\c2\9b\c2\9c\c2\9d\c2\9e\c2\9f") (result i32) (i32.const 26)) + ;; Test the Unicode Specials. + (func (export "\ef\bf\b0\ef\bf\b1\ef\bf\b2\ef\bf\b3\ef\bf\b4\ef\bf\b5\ef\bf\b6\ef\bf\b7") (result i32) (i32.const 27)) + (func (export "\ef\bf\b8\ef\bf\b9\ef\bf\ba\ef\bf\bb\ef\bf\bc\ef\bf\bd\ef\bf\be\ef\bf\bf") (result i32) (i32.const 28)) + + ;; Test that the control pictures are distinct from the control codes they + ;; depict. These correspond to the C0 and miscellaneous control code tests + ;; above. + (func (export "␀␁␂␃␄␅␆␇␈␉␊␋␌␍␎␏") (result i32) (i32.const 29)) + (func (export "␐␑␒␓␔␕␖␗␘␙␚␛␜␝␞␟") (result i32) (i32.const 30)) + (func (export "␠␡") (result i32) (i32.const 31)) + + ;; Test the Unicode Specials in non-escaped form (excluding U+FFFE and + ;; U+FFFF, so that generic tools don't detect this file as non-UTF-8). + (func (export "￰￱￲￳￴￵￶￷￸�") (result i32) (i32.const 32)) + + ;; Test a bare ZWJ code point. + (func (export "‍") (result i32) (i32.const 33)) + ;; Test a bare ZWNJ code point. + (func (export "‌") (result i32) (i32.const 34)) + + ;; Test various bare joiner code points. + (func (export "͏") (result i32) (i32.const 35)) + (func (export "⁠") (result i32) (i32.const 36)) + (func (export "⵿") (result i32) (i32.const 37)) + (func (export "𑁿") (result i32) (i32.const 38)) + (func (export "᠎") (result i32) (i32.const 39)) + + ;; Test various interesting code points: reverse BOM, zero-width space, + ;; no-break space, soft hyphen, word joiner, ogham space mark, + ;; right-to-left override, left-to-right override. + (func (export "￯​ ­⁠ ‮‭") (result i32) (i32.const 40)) + + ;; Test more interesting code points: left-to-right mark, right-to-left mark, + ;; non-breaking hyphen, line separator, paragraph separator, + ;; left-to-right embedding, right-to-left embedding, + ;; pop directional formatting, narrow no-break space, left-to-right isolate, + ;; right-to-left isolate, first strong isolate, pop directional isolate. + (func (export "‎‏‑

‪‫‬ ⁦⁧⁨⁩") (result i32) (i32.const 41)) + + ;; Test some deprecated code points: inhibit symmetric swapping, + ;; activate symmetric swapping, inhibit arabic form shaping, + ;; activate arabic form shaping, national digit shapes, nominal digit shapes. + (func (export "") (result i32) (i32.const 42)) + + ;; Test "invisible" operator code points. + (func (export "⁡⁢⁣⁤") (result i32) (i32.const 43)) + + ;; Test that code points outside the BMP are supported. + (func (export "𐀀󟿿􏿿") (result i32) (i32.const 44)) + + ;; Test that WebAssembly implementations cope in the presence of Zalgo. + (func (export "Z̴͇̫̥̪͓͈͔͎̗̞̺̯̱̞̙̱̜̖̠̏͆̆͛͌͘͞ḁ̶̰̳̭͙̲̱̹̝͎̼͗ͨ̎̄̆͗̿̀́͟͡l̶̷͉̩̹̫̝͖̙̲̼͇͚͍̮͎̥̞̈́͊͗ͦ̈́ͫ̇́̚ͅͅg̶͕͔͚̩̓̐̅ͮ̔̐̎̂̏̾͊̍͋͊ͧ́̆ͦ͞o̡͋̔͐ͪͩ͏̢̧̫̙̤̮͖͙͓̺̜̩̼̘̠́") (result i32) (i32.const 45)) + + ;; Test Hangul filler code points. + (func (export "ᅟᅠㅤᅠ") (result i32) (i32.const 46)) + + ;; Test variation selectors (which are also ID_Continue code points). + (func (export "︀") (result i32) (i32.const 47)) + (func (export "︄") (result i32) (i32.const 48)) + (func (export "󠄀") (result i32) (i32.const 49)) + (func (export "󠇯") (result i32) (i32.const 50)) + + ;; Test an uncombined combining code point. + (func (export "̈") (result i32) (i32.const 51)) + + ;; Test that numerous different present and historical representations of the + ;; "newline" concept are distinct. Tests largely inspired by: + ;; https://en.wikipedia.org/wiki/Newline#Representations + ;; https://en.wikipedia.org/wiki/Newline#Unicode and + ;; https://en.wikipedia.org/wiki/Newline#Reverse_and_partial_line_feeds + (func (export "\0a") (result i32) (i32.const 52)) + (func (export "␤") (result i32) (i32.const 53)) + (func (export "
") (result i32) (i32.const 54)) + (func (export "\0d") (result i32) (i32.const 55)) + (func (export "\0d\0a") (result i32) (i32.const 56)) + (func (export "\0a\0d") (result i32) (i32.const 57)) + (func (export "\1e") (result i32) (i32.const 58)) + (func (export "\0b") (result i32) (i32.const 59)) + (func (export "\0c") (result i32) (i32.const 60)) + (func (export "\c2\85") (result i32) (i32.const 61)) + (func (export "
") (result i32) (i32.const 62)) + (func (export "…") (result i32) (i32.const 63)) + (func (export "⏎") (result i32) (i32.const 64)) + (func (export "\c2\8b") (result i32) (i32.const 65)) + (func (export "\c2\8c") (result i32) (i32.const 66)) + (func (export "\c2\8d") (result i32) (i32.const 67)) + (func (export "↵") (result i32) (i32.const 68)) + (func (export "↩") (result i32) (i32.const 69)) + (func (export "⌤") (result i32) (i32.const 70)) + (func (export "⤶") (result i32) (i32.const 71)) + (func (export "↲") (result i32) (i32.const 72)) + (func (export "⮨") (result i32) (i32.const 73)) + (func (export "⮰") (result i32) (i32.const 74)) + + ;; Test that non-characters are not replaced by the replacement character. + (func (export "�") (result i32) (i32.const 75)) + (func (export "\ef\b7\90") (result i32) (i32.const 76)) + (func (export "\ef\b7\91") (result i32) (i32.const 77)) + (func (export "\ef\b7\92") (result i32) (i32.const 78)) + (func (export "\ef\b7\93") (result i32) (i32.const 79)) + (func (export "\ef\b7\94") (result i32) (i32.const 80)) + (func (export "\ef\b7\95") (result i32) (i32.const 81)) + (func (export "\ef\b7\96") (result i32) (i32.const 82)) + (func (export "\ef\b7\97") (result i32) (i32.const 83)) + (func (export "\ef\b7\98") (result i32) (i32.const 84)) + (func (export "\ef\b7\99") (result i32) (i32.const 85)) + (func (export "\ef\b7\9a") (result i32) (i32.const 86)) + (func (export "\ef\b7\9b") (result i32) (i32.const 87)) + (func (export "\ef\b7\9c") (result i32) (i32.const 88)) + (func (export "\ef\b7\9d") (result i32) (i32.const 89)) + (func (export "\ef\b7\9e") (result i32) (i32.const 90)) + (func (export "\ef\b7\9f") (result i32) (i32.const 91)) + (func (export "\ef\b7\a0") (result i32) (i32.const 92)) + (func (export "\ef\b7\a1") (result i32) (i32.const 93)) + (func (export "\ef\b7\a2") (result i32) (i32.const 94)) + (func (export "\ef\b7\a3") (result i32) (i32.const 95)) + (func (export "\ef\b7\a4") (result i32) (i32.const 96)) + (func (export "\ef\b7\a5") (result i32) (i32.const 97)) + (func (export "\ef\b7\a6") (result i32) (i32.const 98)) + (func (export "\ef\b7\a7") (result i32) (i32.const 99)) + (func (export "\ef\b7\a8") (result i32) (i32.const 100)) + (func (export "\ef\b7\a9") (result i32) (i32.const 101)) + (func (export "\ef\b7\aa") (result i32) (i32.const 102)) + (func (export "\ef\b7\ab") (result i32) (i32.const 103)) + (func (export "\ef\b7\ac") (result i32) (i32.const 104)) + (func (export "\ef\b7\ad") (result i32) (i32.const 105)) + (func (export "\ef\b7\ae") (result i32) (i32.const 106)) + (func (export "\ef\b7\af") (result i32) (i32.const 107)) + (func (export "\ef\bf\be") (result i32) (i32.const 108)) + (func (export "\ef\bf\bf") (result i32) (i32.const 109)) + (func (export "\f0\9f\bf\be") (result i32) (i32.const 110)) + (func (export "\f0\9f\bf\bf") (result i32) (i32.const 111)) + (func (export "\f0\af\bf\be") (result i32) (i32.const 112)) + (func (export "\f0\af\bf\bf") (result i32) (i32.const 113)) + (func (export "\f0\bf\bf\be") (result i32) (i32.const 114)) + (func (export "\f0\bf\bf\bf") (result i32) (i32.const 115)) + (func (export "\f1\8f\bf\be") (result i32) (i32.const 116)) + (func (export "\f1\8f\bf\bf") (result i32) (i32.const 117)) + (func (export "\f1\9f\bf\be") (result i32) (i32.const 118)) + (func (export "\f1\9f\bf\bf") (result i32) (i32.const 119)) + (func (export "\f1\af\bf\be") (result i32) (i32.const 120)) + (func (export "\f1\af\bf\bf") (result i32) (i32.const 121)) + (func (export "\f1\bf\bf\be") (result i32) (i32.const 122)) + (func (export "\f1\bf\bf\bf") (result i32) (i32.const 123)) + (func (export "\f2\8f\bf\be") (result i32) (i32.const 124)) + (func (export "\f2\8f\bf\bf") (result i32) (i32.const 125)) + (func (export "\f2\9f\bf\be") (result i32) (i32.const 126)) + (func (export "\f2\9f\bf\bf") (result i32) (i32.const 127)) + (func (export "\f2\af\bf\be") (result i32) (i32.const 128)) + (func (export "\f2\af\bf\bf") (result i32) (i32.const 129)) + (func (export "\f2\bf\bf\be") (result i32) (i32.const 130)) + (func (export "\f2\bf\bf\bf") (result i32) (i32.const 131)) + (func (export "\f3\8f\bf\be") (result i32) (i32.const 132)) + (func (export "\f3\8f\bf\bf") (result i32) (i32.const 133)) + (func (export "\f3\9f\bf\be") (result i32) (i32.const 134)) + (func (export "\f3\9f\bf\bf") (result i32) (i32.const 135)) + (func (export "\f3\af\bf\be") (result i32) (i32.const 136)) + (func (export "\f3\af\bf\bf") (result i32) (i32.const 137)) + (func (export "\f3\bf\bf\be") (result i32) (i32.const 138)) + (func (export "\f3\bf\bf\bf") (result i32) (i32.const 139)) + (func (export "\f4\8f\bf\be") (result i32) (i32.const 140)) + (func (export "\f4\8f\bf\bf") (result i32) (i32.const 141)) + + ;; Test an interrobang with combining diacritical marks above. + ;; https://xkcd.com/1209/ + (func (export "̈‽̈̉") (result i32) (i32.const 142)) + + ;; Test that RLM/LRM don't change the logical byte order. + (func (export "abc") (result i32) (i32.const 143)) + (func (export "‭abc") (result i32) (i32.const 144)) + (func (export "‮cba") (result i32) (i32.const 145)) + (func (export "‭abc‮") (result i32) (i32.const 146)) + (func (export "‮cba‭") (result i32) (i32.const 147)) + + ;; Test that Unicode font variations are preserved. + (func (export "𝑨") (result i32) (i32.const 148)) + (func (export "𝐴") (result i32) (i32.const 149)) + (func (export "𝘈") (result i32) (i32.const 150)) + (func (export "𝘼") (result i32) (i32.const 151)) + (func (export "𝐀") (result i32) (i32.const 152)) + (func (export "𝓐") (result i32) (i32.const 153)) + (func (export "𝕬") (result i32) (i32.const 154)) + (func (export "𝗔") (result i32) (i32.const 155)) + (func (export "𝒜") (result i32) (i32.const 156)) + (func (export "𝔄") (result i32) (i32.const 157)) + (func (export "𝔸") (result i32) (i32.const 158)) + (func (export "𝖠") (result i32) (i32.const 159)) + (func (export "𝙰") (result i32) (i32.const 160)) + (func (export "ᴀ") (result i32) (i32.const 161)) + + ;; Test that various additional letter variations are preserved. + ;; (U+0040, U+0061, U+0041, U+00C5, U+0041 U+030A, U+212B, and the font + ;; variations are covered above.) + (func (export "ᴬ") (result i32) (i32.const 162)) + (func (export "Ⓐ") (result i32) (i32.const 163)) + (func (export "A") (result i32) (i32.const 164)) + (func (export "🄐") (result i32) (i32.const 165)) + (func (export "🄰") (result i32) (i32.const 166)) + (func (export "󠁁") (result i32) (i32.const 167)) + (func (export "U+0041") (result i32) (i32.const 168)) + (func (export "A​") (result i32) (i32.const 169)) + (func (export "А") (result i32) (i32.const 170)) + (func (export "Ꙗ") (result i32) (i32.const 171)) + (func (export "ⷼ") (result i32) (i32.const 172)) + (func (export "ⷶ") (result i32) (i32.const 173)) + (func (export "Ɐ") (result i32) (i32.const 174)) + (func (export "🅐") (result i32) (i32.const 175)) + (func (export "🅰") (result i32) (i32.const 176)) + (func (export "Ⱝ") (result i32) (i32.const 177)) + (func (export "𐐂") (result i32) (i32.const 178)) + (func (export "𐐈") (result i32) (i32.const 179)) + (func (export "𐒰") (result i32) (i32.const 180)) + (func (export "À") (result i32) (i32.const 181)) + (func (export "Á") (result i32) (i32.const 182)) + (func (export "Â") (result i32) (i32.const 183)) + (func (export "Ã") (result i32) (i32.const 184)) + (func (export "Ä") (result i32) (i32.const 185)) + (func (export "Ā") (result i32) (i32.const 186)) + (func (export "Ă") (result i32) (i32.const 187)) + (func (export "Ą") (result i32) (i32.const 188)) + (func (export "Ǎ") (result i32) (i32.const 189)) + (func (export "Ǟ") (result i32) (i32.const 190)) + (func (export "Ǡ") (result i32) (i32.const 191)) + (func (export "Ǻ") (result i32) (i32.const 192)) + (func (export "Ȁ") (result i32) (i32.const 193)) + (func (export "Ȃ") (result i32) (i32.const 194)) + (func (export "Ȧ") (result i32) (i32.const 195)) + (func (export "Ⱥ") (result i32) (i32.const 196)) + (func (export "Ӑ") (result i32) (i32.const 197)) + (func (export "Ӓ") (result i32) (i32.const 198)) + (func (export "ߊ") (result i32) (i32.const 199)) + (func (export "ࠡ") (result i32) (i32.const 200)) + (func (export "ࠢ") (result i32) (i32.const 201)) + (func (export "ࠣ") (result i32) (i32.const 202)) + (func (export "ࠤ") (result i32) (i32.const 203)) + (func (export "ࠥ") (result i32) (i32.const 204)) + (func (export "ऄ") (result i32) (i32.const 205)) + (func (export "अ") (result i32) (i32.const 206)) + (func (export "ॲ") (result i32) (i32.const 207)) + (func (export "অ") (result i32) (i32.const 208)) + (func (export "ਅ") (result i32) (i32.const 209)) + (func (export "અ") (result i32) (i32.const 210)) + (func (export "ଅ") (result i32) (i32.const 211)) + (func (export "அ") (result i32) (i32.const 212)) + (func (export "అ") (result i32) (i32.const 213)) + (func (export "ಅ") (result i32) (i32.const 214)) + (func (export "അ") (result i32) (i32.const 215)) + (func (export "ะ") (result i32) (i32.const 216)) + (func (export "ະ") (result i32) (i32.const 217)) + (func (export "༁") (result i32) (i32.const 218)) + (func (export "ཨ") (result i32) (i32.const 219)) + (func (export "ྸ") (result i32) (i32.const 220)) + (func (export "အ") (result i32) (i32.const 221)) + (func (export "ဢ") (result i32) (i32.const 222)) + (func (export "ႜ") (result i32) (i32.const 223)) + (func (export "ᅡ") (result i32) (i32.const 224)) + (func (export "አ") (result i32) (i32.const 225)) + (func (export "ዐ") (result i32) (i32.const 226)) + (func (export "Ꭰ") (result i32) (i32.const 227)) + (func (export "ᐊ") (result i32) (i32.const 228)) + (func (export "ᖳ") (result i32) (i32.const 229)) + (func (export "ᚨ") (result i32) (i32.const 230)) + (func (export "ᚪ") (result i32) (i32.const 231)) + (func (export "ᛆ") (result i32) (i32.const 232)) + (func (export "ᜀ") (result i32) (i32.const 233)) + (func (export "ᜠ") (result i32) (i32.const 234)) + (func (export "ᝀ") (result i32) (i32.const 235)) + (func (export "ᝠ") (result i32) (i32.const 236)) + (func (export "ᠠ") (result i32) (i32.const 237)) + (func (export "ᢇ") (result i32) (i32.const 238)) + (func (export "ᤠ") (result i32) (i32.const 239)) + (func (export "ᥣ") (result i32) (i32.const 240)) + (func (export "ᨕ") (result i32) (i32.const 241)) + (func (export "ᩋ") (result i32) (i32.const 242)) + (func (export "ᩡ") (result i32) (i32.const 243)) + (func (export "ᮃ") (result i32) (i32.const 244)) + (func (export "ᯀ") (result i32) (i32.const 245)) + (func (export "ᯁ") (result i32) (i32.const 246)) + (func (export "ᰣ") (result i32) (i32.const 247)) + (func (export "Ḁ") (result i32) (i32.const 248)) + (func (export "Ạ") (result i32) (i32.const 249)) + (func (export "Ả") (result i32) (i32.const 250)) + (func (export "Ấ") (result i32) (i32.const 251)) + (func (export "Ầ") (result i32) (i32.const 252)) + (func (export "Ẩ") (result i32) (i32.const 253)) + (func (export "Ẫ") (result i32) (i32.const 254)) + (func (export "Ậ") (result i32) (i32.const 255)) + (func (export "Ắ") (result i32) (i32.const 256)) + (func (export "Ằ") (result i32) (i32.const 257)) + (func (export "Ẳ") (result i32) (i32.const 258)) + (func (export "Ẵ") (result i32) (i32.const 259)) + (func (export "Ặ") (result i32) (i32.const 260)) + (func (export "あ") (result i32) (i32.const 261)) + (func (export "ア") (result i32) (i32.const 262)) + (func (export "ㄚ") (result i32) (i32.const 263)) + (func (export "ㅏ") (result i32) (i32.const 264)) + (func (export "㈎") (result i32) (i32.const 265)) + (func (export "㈏") (result i32) (i32.const 266)) + (func (export "㈐") (result i32) (i32.const 267)) + (func (export "㈑") (result i32) (i32.const 268)) + (func (export "㈒") (result i32) (i32.const 269)) + (func (export "㈓") (result i32) (i32.const 270)) + (func (export "㈔") (result i32) (i32.const 271)) + (func (export "㈕") (result i32) (i32.const 272)) + (func (export "㈖") (result i32) (i32.const 273)) + (func (export "㈗") (result i32) (i32.const 274)) + (func (export "㈘") (result i32) (i32.const 275)) + (func (export "㈙") (result i32) (i32.const 276)) + (func (export "㈚") (result i32) (i32.const 277)) + (func (export "㈛") (result i32) (i32.const 278)) + (func (export "㉮") (result i32) (i32.const 279)) + (func (export "㉯") (result i32) (i32.const 280)) + (func (export "㉰") (result i32) (i32.const 281)) + (func (export "㉱") (result i32) (i32.const 282)) + (func (export "㉲") (result i32) (i32.const 283)) + (func (export "㉳") (result i32) (i32.const 284)) + (func (export "㉴") (result i32) (i32.const 285)) + (func (export "㉵") (result i32) (i32.const 286)) + (func (export "㉶") (result i32) (i32.const 287)) + (func (export "㉷") (result i32) (i32.const 288)) + (func (export "㉸") (result i32) (i32.const 289)) + (func (export "㉹") (result i32) (i32.const 290)) + (func (export "㉺") (result i32) (i32.const 291)) + (func (export "㉻") (result i32) (i32.const 292)) + (func (export "㋐") (result i32) (i32.const 293)) + (func (export "ꀊ") (result i32) (i32.const 294)) + (func (export "ꓮ") (result i32) (i32.const 295)) + (func (export "ꕉ") (result i32) (i32.const 296)) + (func (export "ꚠ") (result i32) (i32.const 297)) + (func (export "ꠀ") (result i32) (i32.const 298)) + (func (export "ꠣ") (result i32) (i32.const 299)) + (func (export "ꡝ") (result i32) (i32.const 300)) + (func (export "ꢂ") (result i32) (i32.const 301)) + (func (export "꣪") (result i32) (i32.const 302)) + (func (export "ꤢ") (result i32) (i32.const 303)) + (func (export "ꥆ") (result i32) (i32.const 304)) + (func (export "ꦄ") (result i32) (i32.const 305)) + (func (export "ꨀ") (result i32) (i32.const 306)) + (func (export "ア") (result i32) (i32.const 307)) + (func (export "ᅡ") (result i32) (i32.const 308)) + (func (export "𐀀") (result i32) (i32.const 309)) + (func (export "𐊀") (result i32) (i32.const 310)) + (func (export "𐊠") (result i32) (i32.const 311)) + (func (export "𐌀") (result i32) (i32.const 312)) + (func (export "𐎠") (result i32) (i32.const 313)) + (func (export "𐒖") (result i32) (i32.const 314)) + (func (export "𐔀") (result i32) (i32.const 315)) + (func (export "𐝀") (result i32) (i32.const 316)) + (func (export "𐠀") (result i32) (i32.const 317)) + (func (export "𐤠") (result i32) (i32.const 318)) + (func (export "𐦀") (result i32) (i32.const 319)) + (func (export "𐦠") (result i32) (i32.const 320)) + (func (export "𐨀") (result i32) (i32.const 321)) + (func (export "𐬀") (result i32) (i32.const 322)) + (func (export "𐰀") (result i32) (i32.const 323)) + (func (export "𐰁") (result i32) (i32.const 324)) + (func (export "𐲀") (result i32) (i32.const 325)) + (func (export "𑀅") (result i32) (i32.const 326)) + (func (export "𑂃") (result i32) (i32.const 327)) + (func (export "𑄧") (result i32) (i32.const 328)) + (func (export "𑅐") (result i32) (i32.const 329)) + (func (export "𑆃") (result i32) (i32.const 330)) + (func (export "𑈀") (result i32) (i32.const 331)) + (func (export "𑊀") (result i32) (i32.const 332)) + (func (export "𑊰") (result i32) (i32.const 333)) + (func (export "𑌅") (result i32) (i32.const 334)) + (func (export "𑍰") (result i32) (i32.const 335)) + (func (export "𑐀") (result i32) (i32.const 336)) + (func (export "𑒁") (result i32) (i32.const 337)) + (func (export "𑖀") (result i32) (i32.const 338)) + (func (export "𑘀") (result i32) (i32.const 339)) + (func (export "𑚀") (result i32) (i32.const 340)) + (func (export "𑜒") (result i32) (i32.const 341)) + (func (export "𑜠") (result i32) (i32.const 342)) + (func (export "𑢡") (result i32) (i32.const 343)) + (func (export "𑫕") (result i32) (i32.const 344)) + (func (export "𑰀") (result i32) (i32.const 345)) + (func (export "𑲏") (result i32) (i32.const 346)) + (func (export "𑲯") (result i32) (i32.const 347)) + (func (export "𒀀") (result i32) (i32.const 348)) + (func (export "𖧕") (result i32) (i32.const 349)) + (func (export "𖩆") (result i32) (i32.const 350)) + (func (export "𖫧") (result i32) (i32.const 351)) + (func (export "𖽔") (result i32) (i32.const 352)) + (func (export "𛱁") (result i32) (i32.const 353)) + (func (export "𛱤") (result i32) (i32.const 354)) + (func (export "𞠣") (result i32) (i32.const 355)) + (func (export "🇦") (result i32) (i32.const 356)) + (func (export "Ɑ") (result i32) (i32.const 357)) + (func (export "Λ") (result i32) (i32.const 358)) + (func (export "Ɒ") (result i32) (i32.const 359)) + (func (export "ª") (result i32) (i32.const 360)) + (func (export "∀") (result i32) (i32.const 361)) + (func (export "₳") (result i32) (i32.const 362)) + (func (export "𐤀") (result i32) (i32.const 363)) + (func (export "Ⲁ") (result i32) (i32.const 364)) + (func (export "𐌰") (result i32) (i32.const 365)) + (func (export "Ά") (result i32) (i32.const 366)) + (func (export "Α") (result i32) (i32.const 367)) + (func (export "Ἀ") (result i32) (i32.const 368)) + (func (export "Ἁ") (result i32) (i32.const 369)) + (func (export "Ἂ") (result i32) (i32.const 370)) + (func (export "Ἃ") (result i32) (i32.const 371)) + (func (export "Ἄ") (result i32) (i32.const 372)) + (func (export "Ἅ") (result i32) (i32.const 373)) + (func (export "Ἆ") (result i32) (i32.const 374)) + (func (export "Ἇ") (result i32) (i32.const 375)) + (func (export "ᾈ") (result i32) (i32.const 376)) + (func (export "ᾉ") (result i32) (i32.const 377)) + (func (export "ᾊ") (result i32) (i32.const 378)) + (func (export "ᾋ") (result i32) (i32.const 379)) + (func (export "ᾌ") (result i32) (i32.const 380)) + (func (export "ᾍ") (result i32) (i32.const 381)) + (func (export "ᾎ") (result i32) (i32.const 382)) + (func (export "ᾏ") (result i32) (i32.const 383)) + (func (export "Ᾰ") (result i32) (i32.const 384)) + (func (export "Ᾱ") (result i32) (i32.const 385)) + (func (export "Ὰ") (result i32) (i32.const 386)) + (func (export "Ά") (result i32) (i32.const 387)) + (func (export "ᾼ") (result i32) (i32.const 388)) + (func (export "𝚨") (result i32) (i32.const 389)) + (func (export "𝛢") (result i32) (i32.const 390)) + (func (export "𝜜") (result i32) (i32.const 391)) + (func (export "𝝖") (result i32) (i32.const 392)) + (func (export "𝞐") (result i32) (i32.const 393)) + (func (export "⍶") (result i32) (i32.const 394)) + (func (export "⍺") (result i32) (i32.const 395)) + (func (export "⩜") (result i32) (i32.const 396)) + (func (export "ᗅ") (result i32) (i32.const 397)) + (func (export "Ꭺ") (result i32) (i32.const 398)) + + ;; Test unmatched "closing" and "opening" code points. + (func (export ")˺˼𔗏𝅴𝅶𝅸𝅺⁾₎❩❫⟯﴿︶﹚)⦆󠀩❳❵⟧⟩⟫⟭⦈⦊⦖⸣⸥︘︸︺︼︾﹀﹂﹄﹈﹜﹞]}」󠁝󠁽»’”›❯") (result i32) (i32.const 399)) + (func (export "(˹˻𔗎𝅳𝅵𝅷𝅹⁽₍❨❪⟮﴾︵﹙(⦅󠀨❲❴⟦⟨⟪⟬⦇⦉⦕⸢⸤︗︷︹︻︽︿﹁﹃﹇﹛﹝[{「󠁛󠁻«‘“‹❮") (result i32) (i32.const 400)) + (func (export "𝪋𝪤") (result i32) (i32.const 401)) + (func (export "𝪋") (result i32) (i32.const 402)) + + ;; Test that Unicode fraction normalization is not applied. + (func (export "½") (result i32) (i32.const 403)) + (func (export "1⁄2") (result i32) (i32.const 404)) + (func (export "1/2") (result i32) (i32.const 405)) + (func (export "୳") (result i32) (i32.const 406)) + (func (export "൴") (result i32) (i32.const 407)) + (func (export "⳽") (result i32) (i32.const 408)) + (func (export "꠱") (result i32) (i32.const 409)) + (func (export "𐅁") (result i32) (i32.const 410)) + (func (export "𐅵") (result i32) (i32.const 411)) + (func (export "𐅶") (result i32) (i32.const 412)) + (func (export "𐦽") (result i32) (i32.const 413)) + (func (export "𐹻") (result i32) (i32.const 414)) + + ;; Test a full-width quote. + (func (export """) (result i32) (i32.const 415)) + + ;; Test that different present and historical representations of the "delete" + ;; concept are distinct. + (func (export "\7f") (result i32) (i32.const 416)) + (func (export "\08") (result i32) (i32.const 417)) + (func (export "⌫") (result i32) (i32.const 418)) + (func (export "⌦") (result i32) (i32.const 419)) + (func (export "␈") (result i32) (i32.const 420)) + (func (export "␡") (result i32) (i32.const 421)) + (func (export "᷻") (result i32) (i32.const 422)) + (func (export "\0f") (result i32) (i32.const 423)) + (func (export "←") (result i32) (i32.const 424)) + (func (export "⌧") (result i32) (i32.const 425)) + (func (export "⍒") (result i32) (i32.const 426)) + (func (export "⍔") (result i32) (i32.const 427)) + (func (export "⍢") (result i32) (i32.const 428)) + (func (export "⍫") (result i32) (i32.const 429)) + + ;; Test that different representations of the "substitute" concept are + ;; distinct. (U+FFFD is covered above.) + (func (export "\1a") (result i32) (i32.const 430)) + (func (export "␦") (result i32) (i32.const 431)) + (func (export "␚") (result i32) (i32.const 432)) + (func (export "") (result i32) (i32.const 433)) + (func (export "?") (result i32) (i32.const 434)) + (func (export "¿") (result i32) (i32.const 435)) + (func (export "᥅") (result i32) (i32.const 436)) + (func (export ";") (result i32) (i32.const 437)) + (func (export "՞") (result i32) (i32.const 438)) + (func (export "؟") (result i32) (i32.const 439)) + (func (export "፧") (result i32) (i32.const 440)) + (func (export "⁇") (result i32) (i32.const 441)) + (func (export "⍰") (result i32) (i32.const 442)) + (func (export "❓") (result i32) (i32.const 443)) + (func (export "❔") (result i32) (i32.const 444)) + (func (export "⳺") (result i32) (i32.const 445)) + (func (export "⳻") (result i32) (i32.const 446)) + (func (export "⸮") (result i32) (i32.const 447)) + (func (export "㉄") (result i32) (i32.const 448)) + (func (export "꘏") (result i32) (i32.const 449)) + (func (export "꛷") (result i32) (i32.const 450)) + (func (export "︖") (result i32) (i32.const 451)) + (func (export "﹖") (result i32) (i32.const 452)) + (func (export "?") (result i32) (i32.const 453)) + (func (export "𑅃") (result i32) (i32.const 454)) + (func (export "𞥟") (result i32) (i32.const 455)) + (func (export "󠀿") (result i32) (i32.const 456)) + (func (export "𖡄") (result i32) (i32.const 457)) + (func (export "⯑") (result i32) (i32.const 458)) + + ;; Test that different present and historical representations of the + ;; "paragraph" concept are distinct. (U+2029 is covered above). + (func (export "¶") (result i32) (i32.const 459)) + (func (export "⁋") (result i32) (i32.const 460)) + (func (export "܀") (result i32) (i32.const 461)) + (func (export "჻") (result i32) (i32.const 462)) + (func (export "፨") (result i32) (i32.const 463)) + (func (export "〷") (result i32) (i32.const 464)) + (func (export "❡") (result i32) (i32.const 465)) + (func (export "⸏") (result i32) (i32.const 466)) + (func (export "⸐") (result i32) (i32.const 467)) + (func (export "⸑") (result i32) (i32.const 468)) + (func (export "⸎") (result i32) (i32.const 469)) + (func (export "\14") (result i32) (i32.const 470)) ;; ¶ in CP437 + (func (export "☙") (result i32) (i32.const 471)) + (func (export "⸿") (result i32) (i32.const 472)) + (func (export "〇") (result i32) (i32.const 473)) + (func (export "๛") (result i32) (i32.const 474)) + + ;; Test an unusual character. + (func (export "ꙮ") (result i32) (i32.const 475)) +) + +(assert_return (invoke "") (i32.const 0)) +(assert_return (invoke "0") (i32.const 1)) +(assert_return (invoke "-0") (i32.const 2)) +(assert_return (invoke "_") (i32.const 3)) +(assert_return (invoke "$") (i32.const 4)) +(assert_return (invoke "@") (i32.const 5)) +(assert_return (invoke "~!@#$%^&*()_+`-={}|[]\\:\";'<>?,./ ") (i32.const 6)) +(assert_return (invoke "NaN") (i32.const 7)) +(assert_return (invoke "Infinity") (i32.const 8)) +(assert_return (invoke "if") (i32.const 9)) +(assert_return (invoke "malloc") (i32.const 10)) +(assert_return (invoke "_malloc") (i32.const 11)) +(assert_return (invoke "__malloc") (i32.const 12)) +(assert_return (invoke "a") (i32.const 13)) +(assert_return (invoke "A") (i32.const 14)) +(assert_return (invoke "") (i32.const 15)) +(assert_return (invoke "Å") (i32.const 16)) +(assert_return (invoke "Å") (i32.const 17)) +(assert_return (invoke "Å") (i32.const 18)) +(assert_return (invoke "ffi") (i32.const 19)) +(assert_return (invoke "ffi") (i32.const 20)) +(assert_return (invoke "ffi") (i32.const 21)) +(assert_return (invoke "\00\01\02\03\04\05\06\07\08\09\0a\0b\0c\0d\0e\0f") (i32.const 22)) +(assert_return (invoke "\10\11\12\13\14\15\16\17\18\19\1a\1b\1c\1d\1e\1f") (i32.const 23)) +(assert_return (invoke " \7f") (i32.const 24)) +(assert_return (invoke "\c2\80\c2\81\c2\82\c2\83\c2\84\c2\85\c2\86\c2\87\c2\88\c2\89\c2\8a\c2\8b\c2\8c\c2\8d\c2\8e\c2\8f") (i32.const 25)) +(assert_return (invoke "\c2\90\c2\91\c2\92\c2\93\c2\94\c2\95\c2\96\c2\97\c2\98\c2\99\c2\9a\c2\9b\c2\9c\c2\9d\c2\9e\c2\9f") (i32.const 26)) +(assert_return (invoke "\ef\bf\b0\ef\bf\b1\ef\bf\b2\ef\bf\b3\ef\bf\b4\ef\bf\b5\ef\bf\b6\ef\bf\b7") (i32.const 27)) +(assert_return (invoke "\ef\bf\b8\ef\bf\b9\ef\bf\ba\ef\bf\bb\ef\bf\bc\ef\bf\bd\ef\bf\be\ef\bf\bf") (i32.const 28)) +(assert_return (invoke "␀␁␂␃␄␅␆␇␈␉␊␋␌␍␎␏") (i32.const 29)) +(assert_return (invoke "␐␑␒␓␔␕␖␗␘␙␚␛␜␝␞␟") (i32.const 30)) +(assert_return (invoke "␠␡") (i32.const 31)) +(assert_return (invoke "￰￱￲￳￴￵￶￷￸�") (i32.const 32)) +(assert_return (invoke "‍") (i32.const 33)) +(assert_return (invoke "‌") (i32.const 34)) +(assert_return (invoke "͏") (i32.const 35)) +(assert_return (invoke "⁠") (i32.const 36)) +(assert_return (invoke "⵿") (i32.const 37)) +(assert_return (invoke "𑁿") (i32.const 38)) +(assert_return (invoke "᠎") (i32.const 39)) +(assert_return (invoke "￯​ ­⁠ ‮‭") (i32.const 40)) +(assert_return (invoke "‎‏‑

‪‫‬ ⁦⁧⁨⁩") (i32.const 41)) +(assert_return (invoke "") (i32.const 42)) +(assert_return (invoke "⁡⁢⁣⁤") (i32.const 43)) +(assert_return (invoke "𐀀󟿿􏿿") (i32.const 44)) +(assert_return (invoke "Z̴͇̫̥̪͓͈͔͎̗̞̺̯̱̞̙̱̜̖̠̏͆̆͛͌͘͞ḁ̶̰̳̭͙̲̱̹̝͎̼͗ͨ̎̄̆͗̿̀́͟͡l̶̷͉̩̹̫̝͖̙̲̼͇͚͍̮͎̥̞̈́͊͗ͦ̈́ͫ̇́̚ͅͅg̶͕͔͚̩̓̐̅ͮ̔̐̎̂̏̾͊̍͋͊ͧ́̆ͦ͞o̡͋̔͐ͪͩ͏̢̧̫̙̤̮͖͙͓̺̜̩̼̘̠́") (i32.const 45)) +(assert_return (invoke "ᅟᅠㅤᅠ") (i32.const 46)) +(assert_return (invoke "︀") (i32.const 47)) +(assert_return (invoke "︄") (i32.const 48)) +(assert_return (invoke "󠄀") (i32.const 49)) +(assert_return (invoke "󠇯") (i32.const 50)) +(assert_return (invoke "̈") (i32.const 51)) +(assert_return (invoke "\0a") (i32.const 52)) +(assert_return (invoke "␤") (i32.const 53)) +(assert_return (invoke "
") (i32.const 54)) +(assert_return (invoke "\0d") (i32.const 55)) +(assert_return (invoke "\0d\0a") (i32.const 56)) +(assert_return (invoke "\0a\0d") (i32.const 57)) +(assert_return (invoke "\1e") (i32.const 58)) +(assert_return (invoke "\0b") (i32.const 59)) +(assert_return (invoke "\0c") (i32.const 60)) +(assert_return (invoke "\c2\85") (i32.const 61)) +(assert_return (invoke "
") (i32.const 62)) +(assert_return (invoke "…") (i32.const 63)) +(assert_return (invoke "⏎") (i32.const 64)) +(assert_return (invoke "\c2\8b") (i32.const 65)) +(assert_return (invoke "\c2\8c") (i32.const 66)) +(assert_return (invoke "\c2\8d") (i32.const 67)) +(assert_return (invoke "↵") (i32.const 68)) +(assert_return (invoke "↩") (i32.const 69)) +(assert_return (invoke "⌤") (i32.const 70)) +(assert_return (invoke "⤶") (i32.const 71)) +(assert_return (invoke "↲") (i32.const 72)) +(assert_return (invoke "⮨") (i32.const 73)) +(assert_return (invoke "⮰") (i32.const 74)) +(assert_return (invoke "�") (i32.const 75)) +(assert_return (invoke "\ef\b7\90") (i32.const 76)) +(assert_return (invoke "\ef\b7\91") (i32.const 77)) +(assert_return (invoke "\ef\b7\92") (i32.const 78)) +(assert_return (invoke "\ef\b7\93") (i32.const 79)) +(assert_return (invoke "\ef\b7\94") (i32.const 80)) +(assert_return (invoke "\ef\b7\95") (i32.const 81)) +(assert_return (invoke "\ef\b7\96") (i32.const 82)) +(assert_return (invoke "\ef\b7\97") (i32.const 83)) +(assert_return (invoke "\ef\b7\98") (i32.const 84)) +(assert_return (invoke "\ef\b7\99") (i32.const 85)) +(assert_return (invoke "\ef\b7\9a") (i32.const 86)) +(assert_return (invoke "\ef\b7\9b") (i32.const 87)) +(assert_return (invoke "\ef\b7\9c") (i32.const 88)) +(assert_return (invoke "\ef\b7\9d") (i32.const 89)) +(assert_return (invoke "\ef\b7\9e") (i32.const 90)) +(assert_return (invoke "\ef\b7\9f") (i32.const 91)) +(assert_return (invoke "\ef\b7\a0") (i32.const 92)) +(assert_return (invoke "\ef\b7\a1") (i32.const 93)) +(assert_return (invoke "\ef\b7\a2") (i32.const 94)) +(assert_return (invoke "\ef\b7\a3") (i32.const 95)) +(assert_return (invoke "\ef\b7\a4") (i32.const 96)) +(assert_return (invoke "\ef\b7\a5") (i32.const 97)) +(assert_return (invoke "\ef\b7\a6") (i32.const 98)) +(assert_return (invoke "\ef\b7\a7") (i32.const 99)) +(assert_return (invoke "\ef\b7\a8") (i32.const 100)) +(assert_return (invoke "\ef\b7\a9") (i32.const 101)) +(assert_return (invoke "\ef\b7\aa") (i32.const 102)) +(assert_return (invoke "\ef\b7\ab") (i32.const 103)) +(assert_return (invoke "\ef\b7\ac") (i32.const 104)) +(assert_return (invoke "\ef\b7\ad") (i32.const 105)) +(assert_return (invoke "\ef\b7\ae") (i32.const 106)) +(assert_return (invoke "\ef\b7\af") (i32.const 107)) +(assert_return (invoke "\ef\bf\be") (i32.const 108)) +(assert_return (invoke "\ef\bf\bf") (i32.const 109)) +(assert_return (invoke "\f0\9f\bf\be") (i32.const 110)) +(assert_return (invoke "\f0\9f\bf\bf") (i32.const 111)) +(assert_return (invoke "\f0\af\bf\be") (i32.const 112)) +(assert_return (invoke "\f0\af\bf\bf") (i32.const 113)) +(assert_return (invoke "\f0\bf\bf\be") (i32.const 114)) +(assert_return (invoke "\f0\bf\bf\bf") (i32.const 115)) +(assert_return (invoke "\f1\8f\bf\be") (i32.const 116)) +(assert_return (invoke "\f1\8f\bf\bf") (i32.const 117)) +(assert_return (invoke "\f1\9f\bf\be") (i32.const 118)) +(assert_return (invoke "\f1\9f\bf\bf") (i32.const 119)) +(assert_return (invoke "\f1\af\bf\be") (i32.const 120)) +(assert_return (invoke "\f1\af\bf\bf") (i32.const 121)) +(assert_return (invoke "\f1\bf\bf\be") (i32.const 122)) +(assert_return (invoke "\f1\bf\bf\bf") (i32.const 123)) +(assert_return (invoke "\f2\8f\bf\be") (i32.const 124)) +(assert_return (invoke "\f2\8f\bf\bf") (i32.const 125)) +(assert_return (invoke "\f2\9f\bf\be") (i32.const 126)) +(assert_return (invoke "\f2\9f\bf\bf") (i32.const 127)) +(assert_return (invoke "\f2\af\bf\be") (i32.const 128)) +(assert_return (invoke "\f2\af\bf\bf") (i32.const 129)) +(assert_return (invoke "\f2\bf\bf\be") (i32.const 130)) +(assert_return (invoke "\f2\bf\bf\bf") (i32.const 131)) +(assert_return (invoke "\f3\8f\bf\be") (i32.const 132)) +(assert_return (invoke "\f3\8f\bf\bf") (i32.const 133)) +(assert_return (invoke "\f3\9f\bf\be") (i32.const 134)) +(assert_return (invoke "\f3\9f\bf\bf") (i32.const 135)) +(assert_return (invoke "\f3\af\bf\be") (i32.const 136)) +(assert_return (invoke "\f3\af\bf\bf") (i32.const 137)) +(assert_return (invoke "\f3\bf\bf\be") (i32.const 138)) +(assert_return (invoke "\f3\bf\bf\bf") (i32.const 139)) +(assert_return (invoke "\f4\8f\bf\be") (i32.const 140)) +(assert_return (invoke "\f4\8f\bf\bf") (i32.const 141)) +(assert_return (invoke "̈‽̈̉") (i32.const 142)) +(assert_return (invoke "abc") (i32.const 143)) +(assert_return (invoke "‭abc") (i32.const 144)) +(assert_return (invoke "‮cba") (i32.const 145)) +(assert_return (invoke "‭abc‮") (i32.const 146)) +(assert_return (invoke "‮cba‭") (i32.const 147)) +(assert_return (invoke "𝑨") (i32.const 148)) +(assert_return (invoke "𝐴") (i32.const 149)) +(assert_return (invoke "𝘈") (i32.const 150)) +(assert_return (invoke "𝘼") (i32.const 151)) +(assert_return (invoke "𝐀") (i32.const 152)) +(assert_return (invoke "𝓐") (i32.const 153)) +(assert_return (invoke "𝕬") (i32.const 154)) +(assert_return (invoke "𝗔") (i32.const 155)) +(assert_return (invoke "𝒜") (i32.const 156)) +(assert_return (invoke "𝔄") (i32.const 157)) +(assert_return (invoke "𝔸") (i32.const 158)) +(assert_return (invoke "𝖠") (i32.const 159)) +(assert_return (invoke "𝙰") (i32.const 160)) +(assert_return (invoke "ᴀ") (i32.const 161)) +(assert_return (invoke "ᴬ") (i32.const 162)) +(assert_return (invoke "Ⓐ") (i32.const 163)) +(assert_return (invoke "A") (i32.const 164)) +(assert_return (invoke "🄐") (i32.const 165)) +(assert_return (invoke "🄰") (i32.const 166)) +(assert_return (invoke "󠁁") (i32.const 167)) +(assert_return (invoke "U+0041") (i32.const 168)) +(assert_return (invoke "A​") (i32.const 169)) +(assert_return (invoke "А") (i32.const 170)) +(assert_return (invoke "Ꙗ") (i32.const 171)) +(assert_return (invoke "ⷼ") (i32.const 172)) +(assert_return (invoke "ⷶ") (i32.const 173)) +(assert_return (invoke "Ɐ") (i32.const 174)) +(assert_return (invoke "🅐") (i32.const 175)) +(assert_return (invoke "🅰") (i32.const 176)) +(assert_return (invoke "Ⱝ") (i32.const 177)) +(assert_return (invoke "𐐂") (i32.const 178)) +(assert_return (invoke "𐐈") (i32.const 179)) +(assert_return (invoke "𐒰") (i32.const 180)) +(assert_return (invoke "À") (i32.const 181)) +(assert_return (invoke "Á") (i32.const 182)) +(assert_return (invoke "Â") (i32.const 183)) +(assert_return (invoke "Ã") (i32.const 184)) +(assert_return (invoke "Ä") (i32.const 185)) +(assert_return (invoke "Ā") (i32.const 186)) +(assert_return (invoke "Ă") (i32.const 187)) +(assert_return (invoke "Ą") (i32.const 188)) +(assert_return (invoke "Ǎ") (i32.const 189)) +(assert_return (invoke "Ǟ") (i32.const 190)) +(assert_return (invoke "Ǡ") (i32.const 191)) +(assert_return (invoke "Ǻ") (i32.const 192)) +(assert_return (invoke "Ȁ") (i32.const 193)) +(assert_return (invoke "Ȃ") (i32.const 194)) +(assert_return (invoke "Ȧ") (i32.const 195)) +(assert_return (invoke "Ⱥ") (i32.const 196)) +(assert_return (invoke "Ӑ") (i32.const 197)) +(assert_return (invoke "Ӓ") (i32.const 198)) +(assert_return (invoke "ߊ") (i32.const 199)) +(assert_return (invoke "ࠡ") (i32.const 200)) +(assert_return (invoke "ࠢ") (i32.const 201)) +(assert_return (invoke "ࠣ") (i32.const 202)) +(assert_return (invoke "ࠤ") (i32.const 203)) +(assert_return (invoke "ࠥ") (i32.const 204)) +(assert_return (invoke "ऄ") (i32.const 205)) +(assert_return (invoke "अ") (i32.const 206)) +(assert_return (invoke "ॲ") (i32.const 207)) +(assert_return (invoke "অ") (i32.const 208)) +(assert_return (invoke "ਅ") (i32.const 209)) +(assert_return (invoke "અ") (i32.const 210)) +(assert_return (invoke "ଅ") (i32.const 211)) +(assert_return (invoke "அ") (i32.const 212)) +(assert_return (invoke "అ") (i32.const 213)) +(assert_return (invoke "ಅ") (i32.const 214)) +(assert_return (invoke "അ") (i32.const 215)) +(assert_return (invoke "ะ") (i32.const 216)) +(assert_return (invoke "ະ") (i32.const 217)) +(assert_return (invoke "༁") (i32.const 218)) +(assert_return (invoke "ཨ") (i32.const 219)) +(assert_return (invoke "ྸ") (i32.const 220)) +(assert_return (invoke "အ") (i32.const 221)) +(assert_return (invoke "ဢ") (i32.const 222)) +(assert_return (invoke "ႜ") (i32.const 223)) +(assert_return (invoke "ᅡ") (i32.const 224)) +(assert_return (invoke "አ") (i32.const 225)) +(assert_return (invoke "ዐ") (i32.const 226)) +(assert_return (invoke "Ꭰ") (i32.const 227)) +(assert_return (invoke "ᐊ") (i32.const 228)) +(assert_return (invoke "ᖳ") (i32.const 229)) +(assert_return (invoke "ᚨ") (i32.const 230)) +(assert_return (invoke "ᚪ") (i32.const 231)) +(assert_return (invoke "ᛆ") (i32.const 232)) +(assert_return (invoke "ᜀ") (i32.const 233)) +(assert_return (invoke "ᜠ") (i32.const 234)) +(assert_return (invoke "ᝀ") (i32.const 235)) +(assert_return (invoke "ᝠ") (i32.const 236)) +(assert_return (invoke "ᠠ") (i32.const 237)) +(assert_return (invoke "ᢇ") (i32.const 238)) +(assert_return (invoke "ᤠ") (i32.const 239)) +(assert_return (invoke "ᥣ") (i32.const 240)) +(assert_return (invoke "ᨕ") (i32.const 241)) +(assert_return (invoke "ᩋ") (i32.const 242)) +(assert_return (invoke "ᩡ") (i32.const 243)) +(assert_return (invoke "ᮃ") (i32.const 244)) +(assert_return (invoke "ᯀ") (i32.const 245)) +(assert_return (invoke "ᯁ") (i32.const 246)) +(assert_return (invoke "ᰣ") (i32.const 247)) +(assert_return (invoke "Ḁ") (i32.const 248)) +(assert_return (invoke "Ạ") (i32.const 249)) +(assert_return (invoke "Ả") (i32.const 250)) +(assert_return (invoke "Ấ") (i32.const 251)) +(assert_return (invoke "Ầ") (i32.const 252)) +(assert_return (invoke "Ẩ") (i32.const 253)) +(assert_return (invoke "Ẫ") (i32.const 254)) +(assert_return (invoke "Ậ") (i32.const 255)) +(assert_return (invoke "Ắ") (i32.const 256)) +(assert_return (invoke "Ằ") (i32.const 257)) +(assert_return (invoke "Ẳ") (i32.const 258)) +(assert_return (invoke "Ẵ") (i32.const 259)) +(assert_return (invoke "Ặ") (i32.const 260)) +(assert_return (invoke "あ") (i32.const 261)) +(assert_return (invoke "ア") (i32.const 262)) +(assert_return (invoke "ㄚ") (i32.const 263)) +(assert_return (invoke "ㅏ") (i32.const 264)) +(assert_return (invoke "㈎") (i32.const 265)) +(assert_return (invoke "㈏") (i32.const 266)) +(assert_return (invoke "㈐") (i32.const 267)) +(assert_return (invoke "㈑") (i32.const 268)) +(assert_return (invoke "㈒") (i32.const 269)) +(assert_return (invoke "㈓") (i32.const 270)) +(assert_return (invoke "㈔") (i32.const 271)) +(assert_return (invoke "㈕") (i32.const 272)) +(assert_return (invoke "㈖") (i32.const 273)) +(assert_return (invoke "㈗") (i32.const 274)) +(assert_return (invoke "㈘") (i32.const 275)) +(assert_return (invoke "㈙") (i32.const 276)) +(assert_return (invoke "㈚") (i32.const 277)) +(assert_return (invoke "㈛") (i32.const 278)) +(assert_return (invoke "㉮") (i32.const 279)) +(assert_return (invoke "㉯") (i32.const 280)) +(assert_return (invoke "㉰") (i32.const 281)) +(assert_return (invoke "㉱") (i32.const 282)) +(assert_return (invoke "㉲") (i32.const 283)) +(assert_return (invoke "㉳") (i32.const 284)) +(assert_return (invoke "㉴") (i32.const 285)) +(assert_return (invoke "㉵") (i32.const 286)) +(assert_return (invoke "㉶") (i32.const 287)) +(assert_return (invoke "㉷") (i32.const 288)) +(assert_return (invoke "㉸") (i32.const 289)) +(assert_return (invoke "㉹") (i32.const 290)) +(assert_return (invoke "㉺") (i32.const 291)) +(assert_return (invoke "㉻") (i32.const 292)) +(assert_return (invoke "㋐") (i32.const 293)) +(assert_return (invoke "ꀊ") (i32.const 294)) +(assert_return (invoke "ꓮ") (i32.const 295)) +(assert_return (invoke "ꕉ") (i32.const 296)) +(assert_return (invoke "ꚠ") (i32.const 297)) +(assert_return (invoke "ꠀ") (i32.const 298)) +(assert_return (invoke "ꠣ") (i32.const 299)) +(assert_return (invoke "ꡝ") (i32.const 300)) +(assert_return (invoke "ꢂ") (i32.const 301)) +(assert_return (invoke "꣪") (i32.const 302)) +(assert_return (invoke "ꤢ") (i32.const 303)) +(assert_return (invoke "ꥆ") (i32.const 304)) +(assert_return (invoke "ꦄ") (i32.const 305)) +(assert_return (invoke "ꨀ") (i32.const 306)) +(assert_return (invoke "ア") (i32.const 307)) +(assert_return (invoke "ᅡ") (i32.const 308)) +(assert_return (invoke "𐀀") (i32.const 309)) +(assert_return (invoke "𐊀") (i32.const 310)) +(assert_return (invoke "𐊠") (i32.const 311)) +(assert_return (invoke "𐌀") (i32.const 312)) +(assert_return (invoke "𐎠") (i32.const 313)) +(assert_return (invoke "𐒖") (i32.const 314)) +(assert_return (invoke "𐔀") (i32.const 315)) +(assert_return (invoke "𐝀") (i32.const 316)) +(assert_return (invoke "𐠀") (i32.const 317)) +(assert_return (invoke "𐤠") (i32.const 318)) +(assert_return (invoke "𐦀") (i32.const 319)) +(assert_return (invoke "𐦠") (i32.const 320)) +(assert_return (invoke "𐨀") (i32.const 321)) +(assert_return (invoke "𐬀") (i32.const 322)) +(assert_return (invoke "𐰀") (i32.const 323)) +(assert_return (invoke "𐰁") (i32.const 324)) +(assert_return (invoke "𐲀") (i32.const 325)) +(assert_return (invoke "𑀅") (i32.const 326)) +(assert_return (invoke "𑂃") (i32.const 327)) +(assert_return (invoke "𑄧") (i32.const 328)) +(assert_return (invoke "𑅐") (i32.const 329)) +(assert_return (invoke "𑆃") (i32.const 330)) +(assert_return (invoke "𑈀") (i32.const 331)) +(assert_return (invoke "𑊀") (i32.const 332)) +(assert_return (invoke "𑊰") (i32.const 333)) +(assert_return (invoke "𑌅") (i32.const 334)) +(assert_return (invoke "𑍰") (i32.const 335)) +(assert_return (invoke "𑐀") (i32.const 336)) +(assert_return (invoke "𑒁") (i32.const 337)) +(assert_return (invoke "𑖀") (i32.const 338)) +(assert_return (invoke "𑘀") (i32.const 339)) +(assert_return (invoke "𑚀") (i32.const 340)) +(assert_return (invoke "𑜒") (i32.const 341)) +(assert_return (invoke "𑜠") (i32.const 342)) +(assert_return (invoke "𑢡") (i32.const 343)) +(assert_return (invoke "𑫕") (i32.const 344)) +(assert_return (invoke "𑰀") (i32.const 345)) +(assert_return (invoke "𑲏") (i32.const 346)) +(assert_return (invoke "𑲯") (i32.const 347)) +(assert_return (invoke "𒀀") (i32.const 348)) +(assert_return (invoke "𖧕") (i32.const 349)) +(assert_return (invoke "𖩆") (i32.const 350)) +(assert_return (invoke "𖫧") (i32.const 351)) +(assert_return (invoke "𖽔") (i32.const 352)) +(assert_return (invoke "𛱁") (i32.const 353)) +(assert_return (invoke "𛱤") (i32.const 354)) +(assert_return (invoke "𞠣") (i32.const 355)) +(assert_return (invoke "🇦") (i32.const 356)) +(assert_return (invoke "Ɑ") (i32.const 357)) +(assert_return (invoke "Λ") (i32.const 358)) +(assert_return (invoke "Ɒ") (i32.const 359)) +(assert_return (invoke "ª") (i32.const 360)) +(assert_return (invoke "∀") (i32.const 361)) +(assert_return (invoke "₳") (i32.const 362)) +(assert_return (invoke "𐤀") (i32.const 363)) +(assert_return (invoke "Ⲁ") (i32.const 364)) +(assert_return (invoke "𐌰") (i32.const 365)) +(assert_return (invoke "Ά") (i32.const 366)) +(assert_return (invoke "Α") (i32.const 367)) +(assert_return (invoke "Ἀ") (i32.const 368)) +(assert_return (invoke "Ἁ") (i32.const 369)) +(assert_return (invoke "Ἂ") (i32.const 370)) +(assert_return (invoke "Ἃ") (i32.const 371)) +(assert_return (invoke "Ἄ") (i32.const 372)) +(assert_return (invoke "Ἅ") (i32.const 373)) +(assert_return (invoke "Ἆ") (i32.const 374)) +(assert_return (invoke "Ἇ") (i32.const 375)) +(assert_return (invoke "ᾈ") (i32.const 376)) +(assert_return (invoke "ᾉ") (i32.const 377)) +(assert_return (invoke "ᾊ") (i32.const 378)) +(assert_return (invoke "ᾋ") (i32.const 379)) +(assert_return (invoke "ᾌ") (i32.const 380)) +(assert_return (invoke "ᾍ") (i32.const 381)) +(assert_return (invoke "ᾎ") (i32.const 382)) +(assert_return (invoke "ᾏ") (i32.const 383)) +(assert_return (invoke "Ᾰ") (i32.const 384)) +(assert_return (invoke "Ᾱ") (i32.const 385)) +(assert_return (invoke "Ὰ") (i32.const 386)) +(assert_return (invoke "Ά") (i32.const 387)) +(assert_return (invoke "ᾼ") (i32.const 388)) +(assert_return (invoke "𝚨") (i32.const 389)) +(assert_return (invoke "𝛢") (i32.const 390)) +(assert_return (invoke "𝜜") (i32.const 391)) +(assert_return (invoke "𝝖") (i32.const 392)) +(assert_return (invoke "𝞐") (i32.const 393)) +(assert_return (invoke "⍶") (i32.const 394)) +(assert_return (invoke "⍺") (i32.const 395)) +(assert_return (invoke "⩜") (i32.const 396)) +(assert_return (invoke "ᗅ") (i32.const 397)) +(assert_return (invoke "Ꭺ") (i32.const 398)) +(assert_return (invoke ")˺˼𔗏𝅴𝅶𝅸𝅺⁾₎❩❫⟯﴿︶﹚)⦆󠀩❳❵⟧⟩⟫⟭⦈⦊⦖⸣⸥︘︸︺︼︾﹀﹂﹄﹈﹜﹞]}」󠁝󠁽»’”›❯") (i32.const 399)) +(assert_return (invoke "(˹˻𔗎𝅳𝅵𝅷𝅹⁽₍❨❪⟮﴾︵﹙(⦅󠀨❲❴⟦⟨⟪⟬⦇⦉⦕⸢⸤︗︷︹︻︽︿﹁﹃﹇﹛﹝[{「󠁛󠁻«‘“‹❮") (i32.const 400)) +(assert_return (invoke "𝪋𝪤") (i32.const 401)) +(assert_return (invoke "𝪋") (i32.const 402)) +(assert_return (invoke "½") (i32.const 403)) +(assert_return (invoke "1⁄2") (i32.const 404)) +(assert_return (invoke "1/2") (i32.const 405)) +(assert_return (invoke "୳") (i32.const 406)) +(assert_return (invoke "൴") (i32.const 407)) +(assert_return (invoke "⳽") (i32.const 408)) +(assert_return (invoke "꠱") (i32.const 409)) +(assert_return (invoke "𐅁") (i32.const 410)) +(assert_return (invoke "𐅵") (i32.const 411)) +(assert_return (invoke "𐅶") (i32.const 412)) +(assert_return (invoke "𐦽") (i32.const 413)) +(assert_return (invoke "𐹻") (i32.const 414)) +(assert_return (invoke """) (i32.const 415)) +(assert_return (invoke "\7f") (i32.const 416)) +(assert_return (invoke "\08") (i32.const 417)) +(assert_return (invoke "⌫") (i32.const 418)) +(assert_return (invoke "⌦") (i32.const 419)) +(assert_return (invoke "␈") (i32.const 420)) +(assert_return (invoke "␡") (i32.const 421)) +(assert_return (invoke "᷻") (i32.const 422)) +(assert_return (invoke "\0f") (i32.const 423)) +(assert_return (invoke "←") (i32.const 424)) +(assert_return (invoke "⌧") (i32.const 425)) +(assert_return (invoke "⍒") (i32.const 426)) +(assert_return (invoke "⍔") (i32.const 427)) +(assert_return (invoke "⍢") (i32.const 428)) +(assert_return (invoke "⍫") (i32.const 429)) +(assert_return (invoke "\1a") (i32.const 430)) +(assert_return (invoke "␦") (i32.const 431)) +(assert_return (invoke "␚") (i32.const 432)) +(assert_return (invoke "") (i32.const 433)) +(assert_return (invoke "?") (i32.const 434)) +(assert_return (invoke "¿") (i32.const 435)) +(assert_return (invoke "᥅") (i32.const 436)) +(assert_return (invoke ";") (i32.const 437)) +(assert_return (invoke "՞") (i32.const 438)) +(assert_return (invoke "؟") (i32.const 439)) +(assert_return (invoke "፧") (i32.const 440)) +(assert_return (invoke "⁇") (i32.const 441)) +(assert_return (invoke "⍰") (i32.const 442)) +(assert_return (invoke "❓") (i32.const 443)) +(assert_return (invoke "❔") (i32.const 444)) +(assert_return (invoke "⳺") (i32.const 445)) +(assert_return (invoke "⳻") (i32.const 446)) +(assert_return (invoke "⸮") (i32.const 447)) +(assert_return (invoke "㉄") (i32.const 448)) +(assert_return (invoke "꘏") (i32.const 449)) +(assert_return (invoke "꛷") (i32.const 450)) +(assert_return (invoke "︖") (i32.const 451)) +(assert_return (invoke "﹖") (i32.const 452)) +(assert_return (invoke "?") (i32.const 453)) +(assert_return (invoke "𑅃") (i32.const 454)) +(assert_return (invoke "𞥟") (i32.const 455)) +(assert_return (invoke "󠀿") (i32.const 456)) +(assert_return (invoke "𖡄") (i32.const 457)) +(assert_return (invoke "⯑") (i32.const 458)) +(assert_return (invoke "¶") (i32.const 459)) +(assert_return (invoke "⁋") (i32.const 460)) +(assert_return (invoke "܀") (i32.const 461)) +(assert_return (invoke "჻") (i32.const 462)) +(assert_return (invoke "፨") (i32.const 463)) +(assert_return (invoke "〷") (i32.const 464)) +(assert_return (invoke "❡") (i32.const 465)) +(assert_return (invoke "⸏") (i32.const 466)) +(assert_return (invoke "⸐") (i32.const 467)) +(assert_return (invoke "⸑") (i32.const 468)) +(assert_return (invoke "⸎") (i32.const 469)) +(assert_return (invoke "\14") (i32.const 470)) +(assert_return (invoke "☙") (i32.const 471)) +(assert_return (invoke "⸿") (i32.const 472)) +(assert_return (invoke "〇") (i32.const 473)) +(assert_return (invoke "๛") (i32.const 474)) +(assert_return (invoke "ꙮ") (i32.const 475)) + +(module + ;; Test that we can use indices instead of names to reference imports, + ;; exports, functions and parameters. + (import "spectest" "print_i32" (func (param i32))) + (func (import "spectest" "print_i32") (param i32)) + (func (param i32) (param i32) + (call 0 (get_local 0)) + (call 1 (get_local 1)) + ) + (export "print32" (func 2)) +) + +;; NOT SUPPORTED IN BINARYEN +;; (assert_return (invoke "print32" (i32.const 42) (i32.const 123))) diff --git a/test/spec/nop.wast b/test/spec/nop.wast new file mode 100644 index 00000000000..67931a7415b --- /dev/null +++ b/test/spec/nop.wast @@ -0,0 +1,396 @@ +;; Test `nop` operator. + +(module + ;; Auxiliary definitions + (func $dummy) + (func $3-ary (param i32 i32 i32) (result i32) + get_local 0 get_local 1 get_local 2 i32.sub i32.add + ) + (memory 1) + + (func (export "as-func-first") (result i32) + (nop) (i32.const 1) + ) + (func (export "as-func-mid") (result i32) + (call $dummy) (nop) (i32.const 2) + ) + (func (export "as-func-last") (result i32) + (call $dummy) (i32.const 3) (nop) + ) + (func (export "as-func-everywhere") (result i32) + (nop) (nop) (call $dummy) (nop) (i32.const 4) (nop) (nop) + ) + + (func (export "as-drop-first") (param i32) + (nop) (get_local 0) (drop) + ) + (func (export "as-drop-last") (param i32) + (get_local 0) (nop) (drop) + ) + (func (export "as-drop-everywhere") (param i32) + (nop) (nop) (get_local 0) (nop) (nop) (drop) + ) + + (func (export "as-select-first") (param i32) (result i32) + (nop) (get_local 0) (get_local 0) (get_local 0) (select) + ) + (func (export "as-select-mid1") (param i32) (result i32) + (get_local 0) (nop) (get_local 0) (get_local 0) (select) + ) + (func (export "as-select-mid2") (param i32) (result i32) + (get_local 0) (get_local 0) (nop) (get_local 0) (select) + ) + (func (export "as-select-last") (param i32) (result i32) + (get_local 0) (get_local 0) (get_local 0) (nop) (select) + ) + (func (export "as-select-everywhere") (param i32) (result i32) + (nop) (get_local 0) (nop) (nop) (get_local 0) + (nop) (nop) (get_local 0) (nop) (nop) (select) + ) + + (func (export "as-block-first") (result i32) + (block (result i32) (nop) (i32.const 2)) + ) + (func (export "as-block-mid") (result i32) + (block (result i32) (call $dummy) (nop) (i32.const 2)) + ) + (func (export "as-block-last") (result i32) + (block (result i32) (nop) (call $dummy) (i32.const 3) (nop)) + ) + (func (export "as-block-everywhere") (result i32) + (block (result i32) + (nop) (nop) (call $dummy) (nop) (i32.const 4) (nop) (nop) + ) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (nop) (i32.const 2)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $dummy) (nop) (i32.const 2)) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) (call $dummy) (i32.const 3) (nop)) + ) + (func (export "as-loop-everywhere") (result i32) + (loop (result i32) + (nop) (nop) (call $dummy) (nop) (i32.const 4) (nop) (nop) + ) + ) + + (func (export "as-if-condition") (param i32) + (get_local 0) (nop) (if (then (call $dummy))) + ) + (func (export "as-if-then") (param i32) + (if (get_local 0) (then (nop)) (else (call $dummy))) + ) + (func (export "as-if-else") (param i32) + (if (get_local 0) (then (call $dummy)) (else (nop))) + ) + + (func (export "as-br-first") (param i32) (result i32) + (block (result i32) (nop) (get_local 0) (br 0)) + ) + (func (export "as-br-last") (param i32) (result i32) + (block (result i32) (get_local 0) (nop) (br 0)) + ) + (func (export "as-br-everywhere") (param i32) (result i32) + (block (result i32) (nop) (nop) (get_local 0) (nop) (nop) (br 0)) + ) + + (func (export "as-br_if-first") (param i32) (result i32) + (block (result i32) (nop) (get_local 0) (get_local 0) (br_if 0)) + ) + (func (export "as-br_if-mid") (param i32) (result i32) + (block (result i32) (get_local 0) (nop) (get_local 0) (br_if 0)) + ) + (func (export "as-br_if-last") (param i32) (result i32) + (block (result i32) (get_local 0) (get_local 0) (nop) (br_if 0)) + ) + (func (export "as-br_if-everywhere") (param i32) (result i32) + (block (result i32) + (nop) (nop) (get_local 0) (nop) (nop) (get_local 0) (nop) (nop) + (br_if 0) + ) + ) + + (func (export "as-br_table-first") (param i32) (result i32) + (block (result i32) (nop) (get_local 0) (get_local 0) (br_table 0 0)) + ) + (func (export "as-br_table-mid") (param i32) (result i32) + (block (result i32) (get_local 0) (nop) (get_local 0) (br_table 0 0)) + ) + (func (export "as-br_table-last") (param i32) (result i32) + (block (result i32) (get_local 0) (get_local 0) (nop) (br_table 0 0)) + ) + (func (export "as-br_table-everywhere") (param i32) (result i32) + (block (result i32) + (nop) (nop) (get_local 0) (nop) (nop) (get_local 0) (nop) (nop) + (br_table 0 0) + ) + ) + + (func (export "as-return-first") (param i32) (result i32) + (nop) (get_local 0) (return) + ) + (func (export "as-return-last") (param i32) (result i32) + (get_local 0) (nop) (return) + ) + (func (export "as-return-everywhere") (param i32) (result i32) + (nop) (nop) (get_local 0) (nop) (nop) (return) + ) + + (func (export "as-call-first") (param i32 i32 i32) (result i32) + (nop) (get_local 0) (get_local 1) (get_local 2) (call $3-ary) + ) + (func (export "as-call-mid1") (param i32 i32 i32) (result i32) + (get_local 0) (nop) (get_local 1) (get_local 2) (call $3-ary) + ) + (func (export "as-call-mid2") (param i32 i32 i32) (result i32) + (get_local 0) (get_local 1) (nop) (get_local 2) (call $3-ary) + ) + (func (export "as-call-last") (param i32 i32 i32) (result i32) + (get_local 0) (get_local 1) (get_local 2) (nop) (call $3-ary) + ) + (func (export "as-call-everywhere") (param i32 i32 i32) (result i32) + (nop) (nop) (get_local 0) (nop) (nop) (get_local 1) + (nop) (nop) (get_local 2) (nop) (nop) (call $3-ary) + ) + + (func (export "as-unary-first") (param i32) (result i32) + (nop) (get_local 0) (i32.ctz) + ) + (func (export "as-unary-last") (param i32) (result i32) + (get_local 0) (nop) (i32.ctz) + ) + (func (export "as-unary-everywhere") (param i32) (result i32) + (nop) (nop) (get_local 0) (nop) (nop) (i32.ctz) + ) + + (func (export "as-binary-first") (param i32) (result i32) + (nop) (get_local 0) (get_local 0) (i32.add) + ) + (func (export "as-binary-mid") (param i32) (result i32) + (get_local 0) (nop) (get_local 0) (i32.add) + ) + (func (export "as-binary-last") (param i32) (result i32) + (get_local 0) (get_local 0) (nop) (i32.add) + ) + (func (export "as-binary-everywhere") (param i32) (result i32) + (nop) (get_local 0) (nop) (nop) (get_local 0) (nop) (nop) (i32.add) + ) + + (func (export "as-test-first") (param i32) (result i32) + (nop) (get_local 0) (i32.eqz) + ) + (func (export "as-test-last") (param i32) (result i32) + (get_local 0) (nop) (i32.eqz) + ) + (func (export "as-test-everywhere") (param i32) (result i32) + (nop) (nop) (get_local 0) (nop) (nop) i32.eqz + ) + + (func (export "as-compare-first") (param i32) (result i32) + (nop) (get_local 0) (get_local 0) (i32.ne) + ) + (func (export "as-compare-mid") (param i32) (result i32) + (get_local 0) (nop) (get_local 0) (i32.ne) + ) + (func (export "as-compare-last") (param i32) (result i32) + (get_local 0) (get_local 0) (nop) (i32.lt_u) + ) + (func (export "as-compare-everywhere") (param i32) (result i32) + (nop) (get_local 0) (nop) (nop) (get_local 0) (nop) (nop) (i32.le_s) + ) + + (func (export "as-memory.grow-first") (param i32) (result i32) + (nop) (get_local 0) (memory.grow) + ) + (func (export "as-memory.grow-last") (param i32) (result i32) + (get_local 0) (nop) (memory.grow) + ) + (func (export "as-memory.grow-everywhere") (param i32) (result i32) + (nop) (nop) (get_local 0) (nop) (nop) (memory.grow) + ) + + (func $func (param i32 i32) (result i32) (get_local 0)) + (type $check (func (param i32 i32) (result i32))) + (table anyfunc (elem $func)) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (nop) (i32.const 1) (i32.const 2) (i32.const 0) + (call_indirect (type $check)) + ) + ) + (func (export "as-call_indirect-mid1") (result i32) + (block (result i32) + (i32.const 1) (nop) (i32.const 2) (i32.const 0) + (call_indirect (type $check)) + ) + ) + (func (export "as-call_indirect-mid2") (result i32) + (block (result i32) + (i32.const 1) (i32.const 2) (nop) (i32.const 0) + (call_indirect (type $check)) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (i32.const 1) (i32.const 2) (i32.const 0) (nop) + (call_indirect (type $check)) + ) + ) + (func (export "as-call_indirect-everywhere") (result i32) + (block (result i32) + (nop) (nop) (i32.const 1) (nop) (nop) (i32.const 2) (nop) (nop) (i32.const 0) (nop) (nop) + (call_indirect (type $check)) + ) + ) + + (func (export "as-set_local-first") (param i32) (result i32) + (nop) (i32.const 2) (set_local 0) (get_local 0) + ) + (func (export "as-set_local-last") (param i32) (result i32) + (i32.const 2) (nop) (set_local 0) (get_local 0) + ) + (func (export "as-set_local-everywhere") (param i32) (result i32) + (nop) (nop) (i32.const 2) (nop) (nop) (set_local 0) (get_local 0) + ) + + (func (export "as-load-first") (param i32) (result i32) + (nop) (get_local 0) (i32.load) + ) + (func (export "as-load-last") (param i32) (result i32) + (get_local 0) (nop) (i32.load) + ) + (func (export "as-load-everywhere") (param i32) (result i32) + (nop) (nop) (get_local 0) (nop) (nop) (i32.load) + ) + + (func (export "as-store-first") (param i32 i32) + (nop) (get_local 0) (get_local 1) (i32.store) + ) + (func (export "as-store-mid") (param i32 i32) + (get_local 0) (nop) (get_local 1) (i32.store) + ) + (func (export "as-store-last") (param i32 i32) + (get_local 0) (get_local 1) (nop) (i32.store) + ) + (func (export "as-store-everywhere") (param i32 i32) + (nop) (nop) (get_local 0) (nop) (nop) (get_local 1) (nop) (nop) (i32.store) + ) +) + +(assert_return (invoke "as-func-first") (i32.const 1)) +(assert_return (invoke "as-func-mid") (i32.const 2)) +(assert_return (invoke "as-func-last") (i32.const 3)) +(assert_return (invoke "as-func-everywhere") (i32.const 4)) + +(assert_return (invoke "as-drop-first" (i32.const 0))) +(assert_return (invoke "as-drop-last" (i32.const 0))) +(assert_return (invoke "as-drop-everywhere" (i32.const 0))) + +(assert_return (invoke "as-select-first" (i32.const 3)) (i32.const 3)) +(assert_return (invoke "as-select-mid1" (i32.const 3)) (i32.const 3)) +(assert_return (invoke "as-select-mid2" (i32.const 3)) (i32.const 3)) +(assert_return (invoke "as-select-last" (i32.const 3)) (i32.const 3)) +(assert_return (invoke "as-select-everywhere" (i32.const 3)) (i32.const 3)) + +(assert_return (invoke "as-block-first") (i32.const 2)) +(assert_return (invoke "as-block-mid") (i32.const 2)) +(assert_return (invoke "as-block-last") (i32.const 3)) +(assert_return (invoke "as-block-everywhere") (i32.const 4)) + +(assert_return (invoke "as-loop-first") (i32.const 2)) +(assert_return (invoke "as-loop-mid") (i32.const 2)) +(assert_return (invoke "as-loop-last") (i32.const 3)) +(assert_return (invoke "as-loop-everywhere") (i32.const 4)) + +(assert_return (invoke "as-if-condition" (i32.const 0))) +(assert_return (invoke "as-if-condition" (i32.const -1))) +(assert_return (invoke "as-if-then" (i32.const 0))) +(assert_return (invoke "as-if-then" (i32.const 4))) +(assert_return (invoke "as-if-else" (i32.const 0))) +(assert_return (invoke "as-if-else" (i32.const 3))) + +(assert_return (invoke "as-br-first" (i32.const 5)) (i32.const 5)) +(assert_return (invoke "as-br-last" (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-br-everywhere" (i32.const 7)) (i32.const 7)) + +(assert_return (invoke "as-br_if-first" (i32.const 4)) (i32.const 4)) +(assert_return (invoke "as-br_if-mid" (i32.const 5)) (i32.const 5)) +(assert_return (invoke "as-br_if-last" (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-br_if-everywhere" (i32.const 7)) (i32.const 7)) + +(assert_return (invoke "as-br_table-first" (i32.const 4)) (i32.const 4)) +(assert_return (invoke "as-br_table-mid" (i32.const 5)) (i32.const 5)) +(assert_return (invoke "as-br_table-last" (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-br_table-everywhere" (i32.const 7)) (i32.const 7)) + +(assert_return (invoke "as-return-first" (i32.const 5)) (i32.const 5)) +(assert_return (invoke "as-return-last" (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-return-everywhere" (i32.const 7)) (i32.const 7)) + +(assert_return (invoke "as-call-first" (i32.const 3) (i32.const 1) (i32.const 2)) (i32.const 2)) +(assert_return (invoke "as-call-mid1" (i32.const 3) (i32.const 1) (i32.const 2)) (i32.const 2)) +(assert_return (invoke "as-call-mid2" (i32.const 0) (i32.const 3) (i32.const 1)) (i32.const 2)) +(assert_return (invoke "as-call-last" (i32.const 10) (i32.const 9) (i32.const -1)) (i32.const 20)) +(assert_return (invoke "as-call-everywhere" (i32.const 2) (i32.const 1) (i32.const 5)) (i32.const -2)) + +(assert_return (invoke "as-unary-first" (i32.const 30)) (i32.const 1)) +(assert_return (invoke "as-unary-last" (i32.const 30)) (i32.const 1)) +(assert_return (invoke "as-unary-everywhere" (i32.const 12)) (i32.const 2)) + +(assert_return (invoke "as-binary-first" (i32.const 3)) (i32.const 6)) +(assert_return (invoke "as-binary-mid" (i32.const 3)) (i32.const 6)) +(assert_return (invoke "as-binary-last" (i32.const 3)) (i32.const 6)) +(assert_return (invoke "as-binary-everywhere" (i32.const 3)) (i32.const 6)) + +(assert_return (invoke "as-test-first" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-test-last" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-test-everywhere" (i32.const 0)) (i32.const 1)) + +(assert_return (invoke "as-compare-first" (i32.const 3)) (i32.const 0)) +(assert_return (invoke "as-compare-mid" (i32.const 3)) (i32.const 0)) +(assert_return (invoke "as-compare-last" (i32.const 3)) (i32.const 0)) +(assert_return (invoke "as-compare-everywhere" (i32.const 3)) (i32.const 1)) + +(assert_return (invoke "as-memory.grow-first" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-memory.grow-last" (i32.const 2)) (i32.const 1)) +(assert_return (invoke "as-memory.grow-everywhere" (i32.const 12)) (i32.const 3)) + +(assert_return (invoke "as-call_indirect-first") (i32.const 1)) +(assert_return (invoke "as-call_indirect-mid1") (i32.const 1)) +(assert_return (invoke "as-call_indirect-mid2") (i32.const 1)) +(assert_return (invoke "as-call_indirect-last") (i32.const 1)) +(assert_return (invoke "as-call_indirect-everywhere") (i32.const 1)) + +(assert_return (invoke "as-set_local-first" (i32.const 1)) (i32.const 2)) +(assert_return (invoke "as-set_local-last" (i32.const 1)) (i32.const 2)) +(assert_return (invoke "as-set_local-everywhere" (i32.const 1)) (i32.const 2)) + +(assert_return (invoke "as-load-first" (i32.const 100)) (i32.const 0)) +(assert_return (invoke "as-load-last" (i32.const 100)) (i32.const 0)) +(assert_return (invoke "as-load-everywhere" (i32.const 100)) (i32.const 0)) + +(assert_return (invoke "as-store-first" (i32.const 0) (i32.const 1))) +(assert_return (invoke "as-store-mid" (i32.const 0) (i32.const 2))) +(assert_return (invoke "as-store-last" (i32.const 0) (i32.const 3))) +(assert_return (invoke "as-store-everywhere" (i32.const 0) (i32.const 4))) + +(assert_invalid + (module (func $type-i32 (result i32) (nop))) + "type mismatch" +) +(assert_invalid + (module (func $type-i64 (result i64) (nop))) + "type mismatch" +) +(assert_invalid + (module (func $type-f32 (result f32) (nop))) + "type mismatch" +) +(assert_invalid + (module (func $type-f64 (result f64) (nop))) + "type mismatch" +) diff --git a/test/spec/proposals/multi-value/block.wast b/test/spec/proposals/multi-value/block.wast new file mode 100644 index 00000000000..2d14406763e --- /dev/null +++ b/test/spec/proposals/multi-value/block.wast @@ -0,0 +1,675 @@ +;; Test `block` operator + +(module + ;; Auxiliary definition + (func $dummy) + + (func (export "empty") + (block) + (block $l) + ) + + (func (export "singular") (result i32) + (block (nop)) + (block (result i32) (i32.const 7)) + ) + + (func (export "multi") (result i32) + (block (call $dummy) (call $dummy) (call $dummy) (call $dummy)) + (block (result i32) + (call $dummy) (call $dummy) (call $dummy) (i32.const 7) (call $dummy) + ) + (drop) + (block (result i32 i64 i32) + (call $dummy) (call $dummy) (call $dummy) (i32.const 8) (call $dummy) + (call $dummy) (call $dummy) (call $dummy) (i64.const 7) (call $dummy) + (call $dummy) (call $dummy) (call $dummy) (i32.const 9) (call $dummy) + ) + (drop) (drop) + ) + + (func (export "nested") (result i32) + (block (result i32) + (block (call $dummy) (block) (nop)) + (block (result i32) (call $dummy) (i32.const 9)) + ) + ) + + (func (export "deep") (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (block (result i32) (block (result i32) + (call $dummy) (i32.const 150) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + ) + + (func (export "as-unary-operand") (result i32) + (i32.ctz (block (result i32) (call $dummy) (i32.const 13))) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (block (result i32) (call $dummy) (i32.const 3)) + (block (result i32) (call $dummy) (i32.const 4)) + ) + ) + (func (export "as-test-operand") (result i32) + (i32.eqz (block (result i32) (call $dummy) (i32.const 13))) + ) + (func (export "as-compare-operand") (result i32) + (f32.gt + (block (result f32) (call $dummy) (f32.const 3)) + (block (result f32) (call $dummy) (f32.const 3)) + ) + ) + (func (export "as-binary-operands") (result i32) + (i32.mul + (block (result i32 i32) + (call $dummy) (i32.const 3) (call $dummy) (i32.const 4) + ) + ) + ) + (func (export "as-compare-operands") (result i32) + (f32.gt + (block (result f32 f32) + (call $dummy) (f32.const 3) (call $dummy) (f32.const 3) + ) + ) + ) + (func (export "as-mixed-operands") (result i32) + (block (result i32 i32) + (call $dummy) (i32.const 3) (call $dummy) (i32.const 4) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (block (br 0) (unreachable)) + (block (br_if 0 (i32.const 1)) (unreachable)) + (block (br_table 0 (i32.const 0)) (unreachable)) + (block (br_table 0 0 0 (i32.const 1)) (unreachable)) + (i32.const 19) + ) + (func (export "break-value") (result i32) + (block (result i32) (br 0 (i32.const 18)) (i32.const 19)) + ) + (func (export "break-multi-value") (result i32 i32 i64) + (block (result i32 i32 i64) + (br 0 (i32.const 18) (i32.const -18) (i64.const 18)) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + ) + (func (export "break-repeated") (result i32) + (block (result i32) + (br 0 (i32.const 18)) + (br 0 (i32.const 19)) + (drop (br_if 0 (i32.const 20) (i32.const 0))) + (drop (br_if 0 (i32.const 20) (i32.const 1))) + (br 0 (i32.const 21)) + (br_table 0 (i32.const 22) (i32.const 4)) + (br_table 0 0 0 (i32.const 23) (i32.const 1)) + (i32.const 21) + ) + ) + (func (export "break-inner") (result i32) + (local i32) + (set_local 0 (i32.const 0)) + (set_local 0 (i32.add (get_local 0) (block (result i32) (block (result i32) (br 1 (i32.const 0x1)))))) + (set_local 0 (i32.add (get_local 0) (block (result i32) (block (br 0)) (i32.const 0x2)))) + (set_local 0 + (i32.add (get_local 0) (block (result i32) (i32.ctz (br 0 (i32.const 0x4))))) + ) + (set_local 0 + (i32.add (get_local 0) (block (result i32) (i32.ctz (block (result i32) (br 1 (i32.const 0x8)))))) + ) + (get_local 0) + ) + + (func (export "param") (result i32) + (i32.const 1) + (block (param i32) (result i32) + (i32.const 2) + (i32.add) + ) + ) + (func (export "params") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32) + (i32.add) + ) + ) + (func (export "params-id") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32 i32)) + (i32.add) + ) + (func (export "param-break") (result i32) + (i32.const 1) + (block (param i32) (result i32) + (i32.const 2) + (i32.add) + (br 0) + ) + ) + (func (export "params-break") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32) + (i32.add) + (br 0) + ) + ) + (func (export "params-id-break") (result i32) + (i32.const 1) + (i32.const 2) + (block (param i32 i32) (result i32 i32) (br 0)) + (i32.add) + ) + + (func (export "effects") (result i32) + (local i32) + (block + (set_local 0 (i32.const 1)) + (set_local 0 (i32.mul (get_local 0) (i32.const 3))) + (set_local 0 (i32.sub (get_local 0) (i32.const 5))) + (set_local 0 (i32.mul (get_local 0) (i32.const 7))) + (br 0) + (set_local 0 (i32.mul (get_local 0) (i32.const 100))) + ) + (i32.eq (get_local 0) (i32.const -14)) + ) + + (type $block-sig-1 (func)) + (type $block-sig-2 (func (result i32))) + (type $block-sig-3 (func (param $x i32))) + (type $block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (block (type $block-sig-1)) + (block (type $block-sig-2) (i32.const 0)) + (block (type $block-sig-3) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (block (type $block-sig-4)) + (drop) (drop) (drop) + (block (type $block-sig-2) (result i32) (i32.const 0)) + (block (type $block-sig-3) (param i32) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (block (type $block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + ) + (drop) (drop) (drop) + ) +) + +(assert_return (invoke "empty")) +(assert_return (invoke "singular") (i32.const 7)) +(assert_return (invoke "multi") (i32.const 8)) +(assert_return (invoke "nested") (i32.const 9)) +(assert_return (invoke "deep") (i32.const 150)) + +(assert_return (invoke "as-unary-operand") (i32.const 0)) +(assert_return (invoke "as-binary-operand") (i32.const 12)) +(assert_return (invoke "as-test-operand") (i32.const 0)) +(assert_return (invoke "as-compare-operand") (i32.const 0)) +(assert_return (invoke "as-binary-operands") (i32.const 12)) +(assert_return (invoke "as-compare-operands") (i32.const 0)) +(assert_return (invoke "as-mixed-operands") (i32.const 27)) + +(assert_return (invoke "break-bare") (i32.const 19)) +(assert_return (invoke "break-value") (i32.const 18)) +(assert_return (invoke "break-multi-value") + (i32.const 18) (i32.const -18) (i64.const 18) +) +(assert_return (invoke "break-repeated") (i32.const 18)) +(assert_return (invoke "break-inner") (i32.const 0xf)) + +(assert_return (invoke "param") (i32.const 3)) +(assert_return (invoke "params") (i32.const 3)) +(assert_return (invoke "params-id") (i32.const 3)) +(assert_return (invoke "param-break") (i32.const 3)) +(assert_return (invoke "params-break") (i32.const 3)) +(assert_return (invoke "params-id-break") (i32.const 3)) + +(assert_return (invoke "effects") (i32.const 1)) + +(assert_return (invoke "type-use")) + +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (block (type $sig) (result i32) (param i32)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (block (param i32) (type $sig) (result i32)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (block (param i32) (result i32) (type $sig)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (block (result i32) (type $sig) (param i32)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (block (result i32) (param i32) (type $sig)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(func (i32.const 0) (block (result i32) (param i32)))" + ) + "unexpected token" +) + +(assert_malformed + (module quote "(func (i32.const 0) (block (param $x i32) (drop)))") + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func))" + "(func (block (type $sig) (result i32) (i32.const 0)) (unreachable))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (block (type $sig) (result i32) (i32.const 0)) (unreachable))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (block (type $sig) (param i32) (drop)) (unreachable))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32 i32) (result i32)))" + "(func (i32.const 0) (block (type $sig) (param i32) (result i32)) (unreachable))" + ) + "inline function type" +) + +(assert_invalid + (module + (type $sig (func)) + (func (block (type $sig) (i32.const 0))) + ) + "type mismatch" +) + +(assert_invalid + (module (func $type-empty-i32 (result i32) (block))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64) (block))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32) (block))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64) (block))) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-num-vs-void + (block (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-nums-vs-void + (block (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-empty-vs-num (result i32) + (block (result i32)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-empty-vs-nums (result i32 i32) + (block (result i32 i32)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-num (result i32) + (block (result i32) (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-nums (result i32 i32) + (block (result i32 i32) (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-num (result i32) + (block (result i32) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-nums (result i32 i32) + (block (result i32 i32) (i32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-partial-vs-nums (result i32 i32) + (i32.const 1) (block (result i32 i32) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-nums-vs-num (result i32) + (block (result i32) (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select (result i32) + (block (result i64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-last-void-vs-num (result i32) + (block (result i32) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-void-vs-nums (result i32 i32) + (block (result i32 i32) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-empty-vs-num (result i32) + (block (result i32) (br 0) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-empty-vs-nums (result i32 i32) + (block (result i32 i32) (br 0) (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-void-vs-num (result i32) + (block (result i32) (br 0 (nop)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-void-vs-num (result i32 i32) + (block (result i32 i32) (br 0 (nop)) (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-num-vs-num (result i32) + (block (result i32) (br 0 (i64.const 1)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-num-vs-nums (result i32 i32) + (block (result i32 i32) (br 0 (i32.const 0)) (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-partial-vs-nums (result i32 i32) + (i32.const 1) (block (result i32 i32) (br 0 (i32.const 0)) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-void-vs-num (result i32) + (block (result i32) (br 0 (nop)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-void-vs-nums (result i32 i32) + (block (result i32 i32) (br 0 (nop)) (br 0 (i32.const 1) (i32.const 2))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-num-vs-num (result i32) + (block (result i32) (br 0 (i64.const 1)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-num-vs-nums (result i32 i32) + (block (result i32 i32) (br 0 (i32.const 0)) (br 0 (i32.const 1) (i32.const 2))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-num-vs-void + (block (result i32) (block (result i32) (br 1 (i32.const 1))) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-nums-vs-void + (block (result i32 i32) (block (result i32 i32) (br 1 (i32.const 1) (i32.const 2))) (br 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-empty-vs-num (result i32) + (block (result i32) (block (br 1)) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-empty-vs-nums (result i32 i32) + (block (result i32 i32) (block (br 1)) (br 0 (i32.const 1) (i32.const 2))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-num-vs-nums (result i32 i32) + (block (result i32 i32) (block (result i32) (br 1 (i32.const 0))) (br 0 (i32.const 1) (i32.const 2))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-void-vs-num (result i32) + (block (result i32) (block (result i32) (br 1 (nop))) (br 0 (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-void-vs-nums (result i32 i32) + (block (result i32 i32) (block (result i32 i32) (br 1 (nop))) (br 0 (i32.const 1) (i32.const 2))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-num-vs-nums (result i32 i32) + (block (result i32 i32) + (block (result i32 i32) (br 1 (i32.const 0))) (br 0 (i32.const 1) (i32.const 2)) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-operand-empty-vs-num (result i32) + (i32.ctz (block (br 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-empty-vs-nums (result i32) + (i32.add (block (br 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-void-vs-num (result i32) + (i64.ctz (block (br 0 (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-void-vs-nums (result i32) + (i32.add (block (br 0 (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-num-vs-num (result i32) + (i64.ctz (block (br 0 (i64.const 9)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-operand-num-vs-nums (result i32) + (i32.add (block (br 0 (i64.const 9) (i32.const 10)))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-param-void-vs-num + (block (param i32) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-void-vs-nums + (block (param i32 f64) (drop) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num + (f32.const 0) (block (param i32) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-nums + (f32.const 0) (block (param f32 i32) (drop) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-nested-void-vs-num + (block (block (param i32) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-void-vs-nums + (block (block (param i32 f64) (drop) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num + (block (f32.const 0) (block (param i32) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-nums + (block (f32.const 0) (block (param f32 i32) (drop) (drop))) + )) + "type mismatch" +) + +(assert_malformed + (module quote "(func (param i32) (result i32) block (param $x i32) end)") + "unexpected token" +) +(assert_malformed + (module quote "(func (param i32) (result i32) (block (param $x i32)))") + "unexpected token" +) + +(assert_malformed + (module quote "(func block end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func block $a end $l)") + "mismatching label" +) diff --git a/test/spec/proposals/multi-value/br.wast b/test/spec/proposals/multi-value/br.wast new file mode 100644 index 00000000000..837ae0c9c05 --- /dev/null +++ b/test/spec/proposals/multi-value/br.wast @@ -0,0 +1,498 @@ +;; Test `br` operator + +(module + ;; Auxiliary definition + (func $dummy) + + (func (export "type-i32") (block (drop (i32.ctz (br 0))))) + (func (export "type-i64") (block (drop (i64.ctz (br 0))))) + (func (export "type-f32") (block (drop (f32.neg (br 0))))) + (func (export "type-f64") (block (drop (f64.neg (br 0))))) + (func (export "type-i32-i32") (block (drop (i32.add (br 0))))) + (func (export "type-i64-i64") (block (drop (i64.add (br 0))))) + (func (export "type-f32-f32") (block (drop (f32.add (br 0))))) + (func (export "type-f64-f64") (block (drop (f64.add (br 0))))) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (br 0 (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (br 0 (i64.const 2)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (br 0 (f32.const 3)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (br 0 (f64.const 4)))) + ) + (func (export "type-f64-f64-value") (result f64 f64) + (block (result f64 f64) + (f64.add (br 0 (f64.const 4) (f64.const 5))) (f64.const 6) + ) + ) + + (func (export "as-block-first") + (block (br 0) (call $dummy)) + ) + (func (export "as-block-mid") + (block (call $dummy) (br 0) (call $dummy)) + ) + (func (export "as-block-last") + (block (nop) (call $dummy) (br 0)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $dummy) (br 0 (i32.const 2))) + ) + + (func (export "as-loop-first") (result i32) + (block (result i32) (loop (result i32) (br 1 (i32.const 3)) (i32.const 2))) + ) + (func (export "as-loop-mid") (result i32) + (block (result i32) + (loop (result i32) (call $dummy) (br 1 (i32.const 4)) (i32.const 2)) + ) + ) + (func (export "as-loop-last") (result i32) + (block (result i32) + (loop (result i32) (nop) (call $dummy) (br 1 (i32.const 5))) + ) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (br 0 (i32.const 9)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (br 0))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (br 0 (i32.const 8)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (br 0 (i32.const 9)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (br 0))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (br 0 (i32.const 10)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (br 0 (i32.const 11))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i64) + (block (result i64) (return (br 0 (i64.const 7)))) + ) + (func (export "as-return-values") (result i32 i64) + (i32.const 2) + (block (result i64) (return (br 0 (i32.const 1) (i64.const 7)))) + ) + + (func (export "as-if-cond") (result i32) + (block (result i32) + (if (result i32) (br 0 (i32.const 2)) + (then (i32.const 0)) + (else (i32.const 1)) + ) + ) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) (get_local 0) + (then (br 1 (i32.const 3))) + (else (get_local 1)) + ) + ) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (block (result i32) + (if (result i32) (get_local 0) + (then (get_local 1)) + (else (br 1 (i32.const 4))) + ) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (block (result i32) + (select (br 0 (i32.const 5)) (get_local 0) (get_local 1)) + ) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (block (result i32) + (select (get_local 0) (br 0 (i32.const 6)) (get_local 1)) + ) + ) + (func (export "as-select-cond") (result i32) + (block (result i32) + (select (i32.const 0) (i32.const 1) (br 0 (i32.const 7))) + ) + ) + (func (export "as-select-all") (result i32) + (block (result i32) (select (br 0 (i32.const 8)))) + ) + + (func $f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (block (result i32) + (call $f (br 0 (i32.const 12)) (i32.const 2) (i32.const 3)) + ) + ) + (func (export "as-call-mid") (result i32) + (block (result i32) + (call $f (i32.const 1) (br 0 (i32.const 13)) (i32.const 3)) + ) + ) + (func (export "as-call-last") (result i32) + (block (result i32) + (call $f (i32.const 1) (i32.const 2) (br 0 (i32.const 14))) + ) + ) + (func (export "as-call-all") (result i32) + (block (result i32) (call $f (br 0 (i32.const 15)))) + ) + + (type $sig (func (param i32 i32 i32) (result i32))) + (table anyfunc (elem $f)) + (func (export "as-call_indirect-func") (result i32) + (block (result i32) + (call_indirect (type $sig) + (br 0 (i32.const 20)) + (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-first") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) + (br 0 (i32.const 21)) (i32.const 2) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) + (i32.const 1) (br 0 (i32.const 22)) (i32.const 3) + ) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (block (result i32) + (call_indirect (type $sig) + (i32.const 0) + (i32.const 1) (i32.const 2) (br 0 (i32.const 23)) + ) + ) + ) + (func (export "as-call_indirect-all") (result i32) + (block (result i32) (call_indirect (type $sig) (br 0 (i32.const 24)))) + ) + + (func (export "as-set_local-value") (result i32) (local f32) + (block (result i32) (set_local 0 (br 0 (i32.const 17))) (i32.const -1)) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (block (result f32) (f32.load (br 0 (f32.const 1.7)))) + ) + (func (export "as-loadN-address") (result i64) + (block (result i64) (i64.load8_s (br 0 (i64.const 30)))) + ) + + (func (export "as-store-address") (result i32) + (block (result i32) + (f64.store (br 0 (i32.const 30)) (f64.const 7)) (i32.const -1) + ) + ) + (func (export "as-store-value") (result i32) + (block (result i32) + (i64.store (i32.const 2) (br 0 (i32.const 31))) (i32.const -1) + ) + ) + (func (export "as-store-both") (result i32) + (block (result i32) + (i64.store (br 0 (i32.const 32))) (i32.const -1) + ) + ) + + (func (export "as-storeN-address") (result i32) + (block (result i32) + (i32.store8 (br 0 (i32.const 32)) (i32.const 7)) (i32.const -1) + ) + ) + (func (export "as-storeN-value") (result i32) + (block (result i32) + (i64.store16 (i32.const 2) (br 0 (i32.const 33))) (i32.const -1) + ) + ) + (func (export "as-storeN-both") (result i32) + (block (result i32) + (i64.store16 (br 0 (i32.const 34))) (i32.const -1) + ) + ) + + (func (export "as-unary-operand") (result f32) + (block (result f32) (f32.neg (br 0 (f32.const 3.4)))) + ) + + (func (export "as-binary-left") (result i32) + (block (result i32) (i32.add (br 0 (i32.const 3)) (i32.const 10))) + ) + (func (export "as-binary-right") (result i64) + (block (result i64) (i64.sub (i64.const 10) (br 0 (i64.const 45)))) + ) + (func (export "as-binary-both") (result i32) + (block (result i32) (i32.add (br 0 (i32.const 46)))) + ) + + (func (export "as-test-operand") (result i32) + (block (result i32) (i32.eqz (br 0 (i32.const 44)))) + ) + + (func (export "as-compare-left") (result i32) + (block (result i32) (f64.le (br 0 (i32.const 43)) (f64.const 10))) + ) + (func (export "as-compare-right") (result i32) + (block (result i32) (f32.ne (f32.const 10) (br 0 (i32.const 42)))) + ) + (func (export "as-compare-both") (result i32) + (block (result i32) (f64.le (br 0 (i32.const 44)))) + ) + + (func (export "as-convert-operand") (result i32) + (block (result i32) (i32.wrap/i64 (br 0 (i32.const 41)))) + ) + + (func (export "as-grow_memory-size") (result i32) + (block (result i32) (grow_memory (br 0 (i32.const 40)))) + ) + + (func (export "nested-block-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (call $dummy) + (i32.add (i32.const 4) (br 0 (i32.const 8))) + ) + ) + ) + + (func (export "nested-br-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br 0 (br 1 (i32.const 8))) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (drop (br_if 0 (br 1 (i32.const 8)) (i32.const 1))) + (i32.const 32) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_if-value-cond") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop (br_if 0 (i32.const 4) (br 0 (i32.const 8)))) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (drop + (block (result i32) + (drop (i32.const 4)) + (br_table 0 (br 1 (i32.const 8)) (i32.const 1)) + ) + ) + (i32.const 16) + ) + ) + ) + + (func (export "nested-br_table-value-index") (result i32) + (i32.add + (i32.const 1) + (block (result i32) + (drop (i32.const 2)) + (br_table 0 (i32.const 4) (br 0 (i32.const 8))) + (i32.const 16) + ) + ) + ) +) + +(assert_return (invoke "type-i32")) +(assert_return (invoke "type-i64")) +(assert_return (invoke "type-f32")) +(assert_return (invoke "type-f64")) +(assert_return (invoke "type-i32-i32")) +(assert_return (invoke "type-i64-i64")) +(assert_return (invoke "type-f32-f32")) +(assert_return (invoke "type-f64-f64")) + +(assert_return (invoke "type-i32-value") (i32.const 1)) +(assert_return (invoke "type-i64-value") (i64.const 2)) +(assert_return (invoke "type-f32-value") (f32.const 3)) +(assert_return (invoke "type-f64-value") (f64.const 4)) +(assert_return (invoke "type-f64-f64-value") (f64.const 4) (f64.const 5)) + +(assert_return (invoke "as-block-first")) +(assert_return (invoke "as-block-mid")) +(assert_return (invoke "as-block-last")) +(assert_return (invoke "as-block-value") (i32.const 2)) + +(assert_return (invoke "as-loop-first") (i32.const 3)) +(assert_return (invoke "as-loop-mid") (i32.const 4)) +(assert_return (invoke "as-loop-last") (i32.const 5)) + +(assert_return (invoke "as-br-value") (i32.const 9)) + +(assert_return (invoke "as-br_if-cond")) +(assert_return (invoke "as-br_if-value") (i32.const 8)) +(assert_return (invoke "as-br_if-value-cond") (i32.const 9)) + +(assert_return (invoke "as-br_table-index")) +(assert_return (invoke "as-br_table-value") (i32.const 10)) +(assert_return (invoke "as-br_table-value-index") (i32.const 11)) + +(assert_return (invoke "as-return-value") (i64.const 7)) +(assert_return (invoke "as-return-values") (i32.const 2) (i64.const 7)) + +(assert_return (invoke "as-if-cond") (i32.const 2)) +(assert_return (invoke "as-if-then" (i32.const 1) (i32.const 6)) (i32.const 3)) +(assert_return (invoke "as-if-then" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-if-else" (i32.const 0) (i32.const 6)) (i32.const 4)) +(assert_return (invoke "as-if-else" (i32.const 1) (i32.const 6)) (i32.const 6)) + +(assert_return (invoke "as-select-first" (i32.const 0) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-first" (i32.const 1) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-second" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-second" (i32.const 1) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-cond") (i32.const 7)) +(assert_return (invoke "as-select-all") (i32.const 8)) + +(assert_return (invoke "as-call-first") (i32.const 12)) +(assert_return (invoke "as-call-mid") (i32.const 13)) +(assert_return (invoke "as-call-last") (i32.const 14)) +(assert_return (invoke "as-call-all") (i32.const 15)) + +(assert_return (invoke "as-call_indirect-func") (i32.const 20)) +(assert_return (invoke "as-call_indirect-first") (i32.const 21)) +(assert_return (invoke "as-call_indirect-mid") (i32.const 22)) +(assert_return (invoke "as-call_indirect-last") (i32.const 23)) +(assert_return (invoke "as-call_indirect-all") (i32.const 24)) + +(assert_return (invoke "as-set_local-value") (i32.const 17)) + +(assert_return (invoke "as-load-address") (f32.const 1.7)) +(assert_return (invoke "as-loadN-address") (i64.const 30)) + +(assert_return (invoke "as-store-address") (i32.const 30)) +(assert_return (invoke "as-store-value") (i32.const 31)) +(assert_return (invoke "as-store-both") (i32.const 32)) +(assert_return (invoke "as-storeN-address") (i32.const 32)) +(assert_return (invoke "as-storeN-value") (i32.const 33)) +(assert_return (invoke "as-storeN-both") (i32.const 34)) + +(assert_return (invoke "as-unary-operand") (f32.const 3.4)) + +(assert_return (invoke "as-binary-left") (i32.const 3)) +(assert_return (invoke "as-binary-right") (i64.const 45)) +(assert_return (invoke "as-binary-both") (i32.const 46)) + +(assert_return (invoke "as-test-operand") (i32.const 44)) + +(assert_return (invoke "as-compare-left") (i32.const 43)) +(assert_return (invoke "as-compare-right") (i32.const 42)) +(assert_return (invoke "as-compare-both") (i32.const 44)) + +(assert_return (invoke "as-convert-operand") (i32.const 41)) + +(assert_return (invoke "as-grow_memory-size") (i32.const 40)) + +(assert_return (invoke "nested-block-value") (i32.const 9)) +(assert_return (invoke "nested-br-value") (i32.const 9)) +(assert_return (invoke "nested-br_if-value") (i32.const 9)) +(assert_return (invoke "nested-br_if-value-cond") (i32.const 9)) +(assert_return (invoke "nested-br_table-value") (i32.const 9)) +(assert_return (invoke "nested-br_table-value-index") (i32.const 9)) + +(assert_invalid + (module (func $type-arg-empty-vs-num (result i32) + (block (result i32) (br 0) (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-arg-void-vs-num (result i32) + (block (result i32) (br 0 (nop)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-void-vs-num-nested (result i32) + (block (result i32) (i32.const 0) (block (br 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-arg-num-vs-num (result i32) + (block (result i32) (br 0 (i64.const 1)) (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $unbound-label (br 1))) + "unknown label" +) +(assert_invalid + (module (func $unbound-nested-label (block (block (br 5))))) + "unknown label" +) +(assert_invalid + (module (func $large-label (br 0x10000001))) + "unknown label" +) diff --git a/test/spec/proposals/multi-value/call.wast b/test/spec/proposals/multi-value/call.wast new file mode 100644 index 00000000000..8c4d21e11fc --- /dev/null +++ b/test/spec/proposals/multi-value/call.wast @@ -0,0 +1,297 @@ +;; Test `call` operator + +(module + ;; Auxiliary definitions + (func $const-i32 (result i32) (i32.const 0x132)) + (func $const-i64 (result i64) (i64.const 0x164)) + (func $const-f32 (result f32) (f32.const 0xf32)) + (func $const-f64 (result f64) (f64.const 0xf64)) + (func $const-i32-i64 (result i32 i64) (i32.const 0x132) (i64.const 0x164)) + + (func $id-i32 (param i32) (result i32) (get_local 0)) + (func $id-i64 (param i64) (result i64) (get_local 0)) + (func $id-f32 (param f32) (result f32) (get_local 0)) + (func $id-f64 (param f64) (result f64) (get_local 0)) + (func $id-i32-f64 (param i32 f64) (result i32 f64) + (get_local 0) (get_local 1) + ) + + (func $swap-i32-i32 (param i32 i32) (result i32 i32) + (get_local 1) (get_local 0) + ) + (func $swap-f32-f64 (param f32 f64) (result f64 f32) + (get_local 1) (get_local 0) + ) + (func $swap-f64-i32 (param f64 i32) (result i32 f64) + (get_local 1) (get_local 0) + ) + + (func $f32-i32 (param f32 i32) (result i32) (get_local 1)) + (func $i32-i64 (param i32 i64) (result i64) (get_local 1)) + (func $f64-f32 (param f64 f32) (result f32) (get_local 1)) + (func $i64-f64 (param i64 f64) (result f64) (get_local 1)) + + ;; Typing + + (func (export "type-i32") (result i32) (call $const-i32)) + (func (export "type-i64") (result i64) (call $const-i64)) + (func (export "type-f32") (result f32) (call $const-f32)) + (func (export "type-f64") (result f64) (call $const-f64)) + (func (export "type-i32-i64") (result i32 i64) (call $const-i32-i64)) + + (func (export "type-first-i32") (result i32) (call $id-i32 (i32.const 32))) + (func (export "type-first-i64") (result i64) (call $id-i64 (i64.const 64))) + (func (export "type-first-f32") (result f32) (call $id-f32 (f32.const 1.32))) + (func (export "type-first-f64") (result f64) (call $id-f64 (f64.const 1.64))) + + (func (export "type-second-i32") (result i32) + (call $f32-i32 (f32.const 32.1) (i32.const 32)) + ) + (func (export "type-second-i64") (result i64) + (call $i32-i64 (i32.const 32) (i64.const 64)) + ) + (func (export "type-second-f32") (result f32) + (call $f64-f32 (f64.const 64) (f32.const 32)) + ) + (func (export "type-second-f64") (result f64) + (call $i64-f64 (i64.const 64) (f64.const 64.1)) + ) + + (func (export "type-all-i32-f64") (result i32 f64) + (call $id-i32-f64 (i32.const 32) (f64.const 1.64)) + ) + (func (export "type-all-i32-i32") (result i32 i32) + (call $swap-i32-i32 (i32.const 1) (i32.const 2)) + ) + (func (export "type-all-f32-f64") (result f64 f32) + (call $swap-f32-f64 (f32.const 1) (f64.const 2)) + ) + (func (export "type-all-f64-i32") (result i32 f64) + (call $swap-f64-i32 (f64.const 1) (i32.const 2)) + ) + + ;; Composition + + (func (export "as-binary-all-operands") (result i32) + (i32.add (call $swap-i32-i32 (i32.const 3) (i32.const 4))) + ) + + (func (export "as-mixed-operands") (result i32) + (call $swap-i32-i32 (i32.const 3) (i32.const 4)) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "as-call-all-operands") (result i32 i32) + (call $swap-i32-i32 (call $swap-i32-i32 (i32.const 3) (i32.const 4))) + ) + + ;; Recursion + + (func $fac (export "fac") (param i64) (result i64) + (if (result i64) (i64.eqz (get_local 0)) + (then (i64.const 1)) + (else + (i64.mul + (get_local 0) + (call $fac (i64.sub (get_local 0) (i64.const 1))) + ) + ) + ) + ) + + (func $fac-acc (export "fac-acc") (param i64 i64) (result i64) + (if (result i64) (i64.eqz (get_local 0)) + (then (get_local 1)) + (else + (call $fac-acc + (i64.sub (get_local 0) (i64.const 1)) + (i64.mul (get_local 0) (get_local 1)) + ) + ) + ) + ) + + (func $fib (export "fib") (param i64) (result i64) + (if (result i64) (i64.le_u (get_local 0) (i64.const 1)) + (then (i64.const 1)) + (else + (i64.add + (call $fib (i64.sub (get_local 0) (i64.const 2))) + (call $fib (i64.sub (get_local 0) (i64.const 1))) + ) + ) + ) + ) + + (func $even (export "even") (param i64) (result i32) + (if (result i32) (i64.eqz (get_local 0)) + (then (i32.const 44)) + (else (call $odd (i64.sub (get_local 0) (i64.const 1)))) + ) + ) + (func $odd (export "odd") (param i64) (result i32) + (if (result i32) (i64.eqz (get_local 0)) + (then (i32.const 99)) + (else (call $even (i64.sub (get_local 0) (i64.const 1)))) + ) + ) + + ;; Stack exhaustion + + ;; Implementations are required to have every call consume some abstract + ;; resource towards exhausting some abstract finite limit, such that + ;; infinitely recursive test cases reliably trap in finite time. This is + ;; because otherwise applications could come to depend on it on those + ;; implementations and be incompatible with implementations that don't do + ;; it (or don't do it under the same circumstances). + + (func $runaway (export "runaway") (call $runaway)) + + (func $mutual-runaway1 (export "mutual-runaway") (call $mutual-runaway2)) + (func $mutual-runaway2 (call $mutual-runaway1)) +) + +(assert_return (invoke "type-i32") (i32.const 0x132)) +(assert_return (invoke "type-i64") (i64.const 0x164)) +(assert_return (invoke "type-f32") (f32.const 0xf32)) +(assert_return (invoke "type-f64") (f64.const 0xf64)) +(assert_return (invoke "type-i32-i64") (i32.const 0x132) (i64.const 0x164)) + +(assert_return (invoke "type-first-i32") (i32.const 32)) +(assert_return (invoke "type-first-i64") (i64.const 64)) +(assert_return (invoke "type-first-f32") (f32.const 1.32)) +(assert_return (invoke "type-first-f64") (f64.const 1.64)) + +(assert_return (invoke "type-second-i32") (i32.const 32)) +(assert_return (invoke "type-second-i64") (i64.const 64)) +(assert_return (invoke "type-second-f32") (f32.const 32)) +(assert_return (invoke "type-second-f64") (f64.const 64.1)) + +(assert_return (invoke "type-all-i32-f64") (i32.const 32) (f64.const 1.64)) +(assert_return (invoke "type-all-i32-i32") (i32.const 2) (i32.const 1)) +(assert_return (invoke "type-all-f32-f64") (f64.const 2) (f32.const 1)) +(assert_return (invoke "type-all-f64-i32") (i32.const 2) (f64.const 1)) + +(assert_return (invoke "as-binary-all-operands") (i32.const 7)) +(assert_return (invoke "as-mixed-operands") (i32.const 32)) +(assert_return (invoke "as-call-all-operands") (i32.const 3) (i32.const 4)) + +(assert_return (invoke "fac" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 5)) (i64.const 120)) +(assert_return (invoke "fac" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-acc" (i64.const 0) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac-acc" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac-acc" (i64.const 5) (i64.const 1)) (i64.const 120)) +(assert_return + (invoke "fac-acc" (i64.const 25) (i64.const 1)) + (i64.const 7034535277573963776) +) + +(assert_return (invoke "fib" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 2)) (i64.const 2)) +(assert_return (invoke "fib" (i64.const 5)) (i64.const 8)) +(assert_return (invoke "fib" (i64.const 20)) (i64.const 10946)) + +(assert_return (invoke "even" (i64.const 0)) (i32.const 44)) +(assert_return (invoke "even" (i64.const 1)) (i32.const 99)) +(assert_return (invoke "even" (i64.const 100)) (i32.const 44)) +(assert_return (invoke "even" (i64.const 77)) (i32.const 99)) +(assert_return (invoke "odd" (i64.const 0)) (i32.const 99)) +(assert_return (invoke "odd" (i64.const 1)) (i32.const 44)) +(assert_return (invoke "odd" (i64.const 200)) (i32.const 99)) +(assert_return (invoke "odd" (i64.const 77)) (i32.const 44)) + +(assert_exhaustion (invoke "runaway") "call stack exhausted") +(assert_exhaustion (invoke "mutual-runaway") "call stack exhausted") + + +;; Invalid typing + +(assert_invalid + (module + (func $type-void-vs-num (i32.eqz (call 1))) + (func) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-num-vs-num (i32.eqz (call 1))) + (func (result i64) (i64.const 1)) + ) + "type mismatch" +) + +(assert_invalid + (module + (func $arity-0-vs-1 (call 1)) + (func (param i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $arity-0-vs-2 (call 1)) + (func (param f64 i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $arity-1-vs-0 (call 1 (i32.const 1))) + (func) + ) + "type mismatch" +) +(assert_invalid + (module + (func $arity-2-vs-0 (call 1 (f64.const 2) (i32.const 1))) + (func) + ) + "type mismatch" +) + +(assert_invalid + (module + (func $type-first-void-vs-num (call 1 (nop) (i32.const 1))) + (func (param i32 i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-second-void-vs-num (call 1 (i32.const 1) (nop))) + (func (param i32 i32)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-first-num-vs-num (call 1 (f64.const 1) (i32.const 1))) + (func (param i32 f64)) + ) + "type mismatch" +) +(assert_invalid + (module + (func $type-second-num-vs-num (call 1 (i32.const 1) (f64.const 1))) + (func (param f64 i32)) + ) + "type mismatch" +) + + +;; Unbound function + +(assert_invalid + (module (func $unbound-func (call 1))) + "unknown function" +) +(assert_invalid + (module (func $large-func (call 1012321300))) + "unknown function" +) diff --git a/test/spec/proposals/multi-value/call_indirect.wast b/test/spec/proposals/multi-value/call_indirect.wast new file mode 100644 index 00000000000..bb425cbe7de --- /dev/null +++ b/test/spec/proposals/multi-value/call_indirect.wast @@ -0,0 +1,565 @@ +;; Test `call_indirect` operator + +(module + ;; Auxiliary definitions + (type $proc (func)) + (type $out-i32 (func (result i32))) + (type $out-i64 (func (result i64))) + (type $out-f32 (func (result f32))) + (type $out-f64 (func (result f64))) + (type $out-f64-i32 (func (result f64 i32))) + (type $over-i32 (func (param i32) (result i32))) + (type $over-i64 (func (param i64) (result i64))) + (type $over-f32 (func (param f32) (result f32))) + (type $over-f64 (func (param f64) (result f64))) + (type $over-i32-f64 (func (param i32 f64) (result i32 f64))) + (type $swap-i32-i64 (func (param i32 i64) (result i64 i32))) + (type $f32-i32 (func (param f32 i32) (result i32))) + (type $i32-i64 (func (param i32 i64) (result i64))) + (type $f64-f32 (func (param f64 f32) (result f32))) + (type $i64-f64 (func (param i64 f64) (result f64))) + (type $over-i32-duplicate (func (param i32) (result i32))) + (type $over-i64-duplicate (func (param i64) (result i64))) + (type $over-f32-duplicate (func (param f32) (result f32))) + (type $over-f64-duplicate (func (param f64) (result f64))) + + (func $const-i32 (type $out-i32) (i32.const 0x132)) + (func $const-i64 (type $out-i64) (i64.const 0x164)) + (func $const-f32 (type $out-f32) (f32.const 0xf32)) + (func $const-f64 (type $out-f64) (f64.const 0xf64)) + (func $const-f64-i32 (type $out-f64-i32) (f64.const 0xf64) (i32.const 32)) + + (func $id-i32 (type $over-i32) (get_local 0)) + (func $id-i64 (type $over-i64) (get_local 0)) + (func $id-f32 (type $over-f32) (get_local 0)) + (func $id-f64 (type $over-f64) (get_local 0)) + (func $id-i32-f64 (type $over-i32-f64) (get_local 0) (get_local 1)) + (func $swap-i32-i64 (type $swap-i32-i64) (get_local 1) (get_local 0)) + + (func $i32-i64 (type $i32-i64) (get_local 1)) + (func $i64-f64 (type $i64-f64) (get_local 1)) + (func $f32-i32 (type $f32-i32) (get_local 1)) + (func $f64-f32 (type $f64-f32) (get_local 1)) + + (func $over-i32-duplicate (type $over-i32-duplicate) (get_local 0)) + (func $over-i64-duplicate (type $over-i64-duplicate) (get_local 0)) + (func $over-f32-duplicate (type $over-f32-duplicate) (get_local 0)) + (func $over-f64-duplicate (type $over-f64-duplicate) (get_local 0)) + + (table anyfunc + (elem + $const-i32 $const-i64 $const-f32 $const-f64 ;; 0..3 + $id-i32 $id-i64 $id-f32 $id-f64 ;; 4..7 + $f32-i32 $i32-i64 $f64-f32 $i64-f64 ;; 9..11 + $fac $fib $even $odd ;; 12..15 + $runaway $mutual-runaway1 $mutual-runaway2 ;; 16..18 + $over-i32-duplicate $over-i64-duplicate ;; 19..20 + $over-f32-duplicate $over-f64-duplicate ;; 21..22 + $const-f64-i32 $id-i32-f64 $swap-i32-i64 ;; 23..25 + ) + ) + + ;; Syntax + + (func + (call_indirect (i32.const 0)) + (call_indirect (param i64) (i64.const 0) (i32.const 0)) + (call_indirect (param i64) (param) (param f64 i32 i64) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + (call_indirect (result) (i32.const 0)) + (drop (i32.eqz (call_indirect (result i32) (i32.const 0)))) + (drop (i32.eqz (call_indirect (result i32) (result) (i32.const 0)))) + (drop (i32.eqz + (call_indirect (param i64) (result i32) (i64.const 0) (i32.const 0)) + )) + (drop (i32.eqz + (call_indirect + (param) (param i64) (param) (param f64 i32 i64) (param) (param) + (result) (result i32) (result) (result) + (i64.const 0) (f64.const 0) (i32.const 0) (i64.const 0) (i32.const 0) + ) + )) + (drop (i64.eqz + (call_indirect (type $over-i64) (param i64) (result i64) + (i64.const 0) (i32.const 0) + ) + )) + ) + + ;; Typing + + (func (export "type-i32") (result i32) + (call_indirect (type $out-i32) (i32.const 0)) + ) + (func (export "type-i64") (result i64) + (call_indirect (type $out-i64) (i32.const 1)) + ) + (func (export "type-f32") (result f32) + (call_indirect (type $out-f32) (i32.const 2)) + ) + (func (export "type-f64") (result f64) + (call_indirect (type $out-f64) (i32.const 3)) + ) + (func (export "type-f64-i32") (result f64 i32) + (call_indirect (type $out-f64-i32) (i32.const 23)) + ) + + (func (export "type-index") (result i64) + (call_indirect (type $over-i64) (i64.const 100) (i32.const 5)) + ) + + (func (export "type-first-i32") (result i32) + (call_indirect (type $over-i32) (i32.const 32) (i32.const 4)) + ) + (func (export "type-first-i64") (result i64) + (call_indirect (type $over-i64) (i64.const 64) (i32.const 5)) + ) + (func (export "type-first-f32") (result f32) + (call_indirect (type $over-f32) (f32.const 1.32) (i32.const 6)) + ) + (func (export "type-first-f64") (result f64) + (call_indirect (type $over-f64) (f64.const 1.64) (i32.const 7)) + ) + + (func (export "type-second-i32") (result i32) + (call_indirect (type $f32-i32) (f32.const 32.1) (i32.const 32) (i32.const 8)) + ) + (func (export "type-second-i64") (result i64) + (call_indirect (type $i32-i64) (i32.const 32) (i64.const 64) (i32.const 9)) + ) + (func (export "type-second-f32") (result f32) + (call_indirect (type $f64-f32) (f64.const 64) (f32.const 32) (i32.const 10)) + ) + (func (export "type-second-f64") (result f64) + (call_indirect (type $i64-f64) (i64.const 64) (f64.const 64.1) (i32.const 11)) + ) + + (func (export "type-all-f64-i32") (result f64 i32) + (call_indirect (type $out-f64-i32) (i32.const 23)) + ) + (func (export "type-all-i32-f64") (result i32 f64) + (call_indirect (type $over-i32-f64) + (i32.const 1) (f64.const 2) (i32.const 24) + ) + ) + (func (export "type-all-i32-i64") (result i64 i32) + (call_indirect (type $swap-i32-i64) + (i32.const 1) (i64.const 2) (i32.const 25) + ) + ) + + ;; Dispatch + + (func (export "dispatch") (param i32 i64) (result i64) + (call_indirect (type $over-i64) (get_local 1) (get_local 0)) + ) + + (func (export "dispatch-structural") (param i32) (result i64) + (call_indirect (type $over-i64-duplicate) (i64.const 9) (get_local 0)) + ) + + ;; Recursion + + (func $fac (export "fac") (type $over-i64) + (if (result i64) (i64.eqz (get_local 0)) + (then (i64.const 1)) + (else + (i64.mul + (get_local 0) + (call_indirect (type $over-i64) + (i64.sub (get_local 0) (i64.const 1)) + (i32.const 12) + ) + ) + ) + ) + ) + + (func $fib (export "fib") (type $over-i64) + (if (result i64) (i64.le_u (get_local 0) (i64.const 1)) + (then (i64.const 1)) + (else + (i64.add + (call_indirect (type $over-i64) + (i64.sub (get_local 0) (i64.const 2)) + (i32.const 13) + ) + (call_indirect (type $over-i64) + (i64.sub (get_local 0) (i64.const 1)) + (i32.const 13) + ) + ) + ) + ) + ) + + (func $even (export "even") (param i32) (result i32) + (if (result i32) (i32.eqz (get_local 0)) + (then (i32.const 44)) + (else + (call_indirect (type $over-i32) + (i32.sub (get_local 0) (i32.const 1)) + (i32.const 15) + ) + ) + ) + ) + (func $odd (export "odd") (param i32) (result i32) + (if (result i32) (i32.eqz (get_local 0)) + (then (i32.const 99)) + (else + (call_indirect (type $over-i32) + (i32.sub (get_local 0) (i32.const 1)) + (i32.const 14) + ) + ) + ) + ) + + ;; Stack exhaustion + + ;; Implementations are required to have every call consume some abstract + ;; resource towards exhausting some abstract finite limit, such that + ;; infinitely recursive test cases reliably trap in finite time. This is + ;; because otherwise applications could come to depend on it on those + ;; implementations and be incompatible with implementations that don't do + ;; it (or don't do it under the same circumstances). + + (func $runaway (export "runaway") (call_indirect (type $proc) (i32.const 16))) + + (func $mutual-runaway1 (export "mutual-runaway") (call_indirect (type $proc) (i32.const 18))) + (func $mutual-runaway2 (call_indirect (type $proc) (i32.const 17))) +) + +(assert_return (invoke "type-i32") (i32.const 0x132)) +(assert_return (invoke "type-i64") (i64.const 0x164)) +(assert_return (invoke "type-f32") (f32.const 0xf32)) +(assert_return (invoke "type-f64") (f64.const 0xf64)) +(assert_return (invoke "type-f64-i32") (f64.const 0xf64) (i32.const 32)) + +(assert_return (invoke "type-index") (i64.const 100)) + +(assert_return (invoke "type-first-i32") (i32.const 32)) +(assert_return (invoke "type-first-i64") (i64.const 64)) +(assert_return (invoke "type-first-f32") (f32.const 1.32)) +(assert_return (invoke "type-first-f64") (f64.const 1.64)) + +(assert_return (invoke "type-second-i32") (i32.const 32)) +(assert_return (invoke "type-second-i64") (i64.const 64)) +(assert_return (invoke "type-second-f32") (f32.const 32)) +(assert_return (invoke "type-second-f64") (f64.const 64.1)) + +(assert_return (invoke "type-all-f64-i32") (f64.const 0xf64) (i32.const 32)) +(assert_return (invoke "type-all-i32-f64") (i32.const 1) (f64.const 2)) +(assert_return (invoke "type-all-i32-i64") (i64.const 2) (i32.const 1)) + +(assert_return (invoke "dispatch" (i32.const 5) (i64.const 2)) (i64.const 2)) +(assert_return (invoke "dispatch" (i32.const 5) (i64.const 5)) (i64.const 5)) +(assert_return (invoke "dispatch" (i32.const 12) (i64.const 5)) (i64.const 120)) +(assert_return (invoke "dispatch" (i32.const 13) (i64.const 5)) (i64.const 8)) +(assert_return (invoke "dispatch" (i32.const 20) (i64.const 2)) (i64.const 2)) +(assert_trap (invoke "dispatch" (i32.const 0) (i64.const 2)) "indirect call type mismatch") +(assert_trap (invoke "dispatch" (i32.const 15) (i64.const 2)) "indirect call type mismatch") +(assert_trap (invoke "dispatch" (i32.const 26) (i64.const 2)) "undefined element") +(assert_trap (invoke "dispatch" (i32.const -1) (i64.const 2)) "undefined element") +(assert_trap (invoke "dispatch" (i32.const 1213432423) (i64.const 2)) "undefined element") + +(assert_return (invoke "dispatch-structural" (i32.const 5)) (i64.const 9)) +(assert_return (invoke "dispatch-structural" (i32.const 5)) (i64.const 9)) +(assert_return (invoke "dispatch-structural" (i32.const 12)) (i64.const 362880)) +(assert_return (invoke "dispatch-structural" (i32.const 20)) (i64.const 9)) +(assert_trap (invoke "dispatch-structural" (i32.const 11)) "indirect call type mismatch") +(assert_trap (invoke "dispatch-structural" (i32.const 22)) "indirect call type mismatch") + +(assert_return (invoke "fac" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fac" (i64.const 5)) (i64.const 120)) +(assert_return (invoke "fac" (i64.const 25)) (i64.const 7034535277573963776)) + +(assert_return (invoke "fib" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "fib" (i64.const 2)) (i64.const 2)) +(assert_return (invoke "fib" (i64.const 5)) (i64.const 8)) +(assert_return (invoke "fib" (i64.const 20)) (i64.const 10946)) + +(assert_return (invoke "even" (i32.const 0)) (i32.const 44)) +(assert_return (invoke "even" (i32.const 1)) (i32.const 99)) +(assert_return (invoke "even" (i32.const 100)) (i32.const 44)) +(assert_return (invoke "even" (i32.const 77)) (i32.const 99)) +(assert_return (invoke "odd" (i32.const 0)) (i32.const 99)) +(assert_return (invoke "odd" (i32.const 1)) (i32.const 44)) +(assert_return (invoke "odd" (i32.const 200)) (i32.const 99)) +(assert_return (invoke "odd" (i32.const 77)) (i32.const 44)) + +(assert_exhaustion (invoke "runaway") "call stack exhausted") +(assert_exhaustion (invoke "mutual-runaway") "call stack exhausted") + + +;; Invalid syntax + +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (result i32) (param i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (param i32) (type $sig) (result i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (param i32) (result i32) (type $sig)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (result i32) (type $sig) (param i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (result i32) (param i32) (type $sig)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (result i32) (param i32) (i32.const 0) (i32.const 0))" + ")" + ) + "unexpected token" +) + +(assert_malformed + (module quote + "(table 0 anyfunc)" + "(func (call_indirect (param $x i32) (i32.const 0) (i32.const 0)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (result i32) (i32.const 0))" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (result i32) (i32.const 0))" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(table 0 anyfunc)" + "(func" + " (call_indirect (type $sig) (param i32) (i32.const 0) (i32.const 0))" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32 i32) (result i32)))" + "(table 0 anyfunc)" + "(func (result i32)" + " (call_indirect (type $sig) (param i32) (result i32)" + " (i32.const 0) (i32.const 0)" + " )" + ")" + ) + "inline function type" +) + +;; Invalid typing + +(assert_invalid + (module + (type (func)) + (func $no-table (call_indirect (type 0) (i32.const 0))) + ) + "unknown table" +) + +(assert_invalid + (module + (type (func)) + (table 0 anyfunc) + (func $type-void-vs-num (i32.eqz (call_indirect (type 0) (i32.const 0)))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (result i64))) + (table 0 anyfunc) + (func $type-num-vs-num (i32.eqz (call_indirect (type 0) (i32.const 0)))) + ) + "type mismatch" +) + +(assert_invalid + (module + (type (func (param i32))) + (table 0 anyfunc) + (func $arity-0-vs-1 (call_indirect (type 0) (i32.const 0))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param f64 i32))) + (table 0 anyfunc) + (func $arity-0-vs-2 (call_indirect (type 0) (i32.const 0))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func)) + (table 0 anyfunc) + (func $arity-1-vs-0 (call_indirect (type 0) (i32.const 1) (i32.const 0))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func)) + (table 0 anyfunc) + (func $arity-2-vs-0 + (call_indirect (type 0) (f64.const 2) (i32.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) + +(assert_invalid + (module + (type (func (param i32))) + (table 0 anyfunc) + (func $type-func-void-vs-i32 (call_indirect (type 0) (i32.const 1) (nop))) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param i32))) + (table 0 anyfunc) + (func $type-func-num-vs-i32 (call_indirect (type 0) (i32.const 0) (i64.const 1))) + ) + "type mismatch" +) + +(assert_invalid + (module + (type (func (param i32 i32))) + (table 0 anyfunc) + (func $type-first-void-vs-num + (call_indirect (type 0) (nop) (i32.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param i32 i32))) + (table 0 anyfunc) + (func $type-second-void-vs-num + (call_indirect (type 0) (i32.const 1) (nop) (i32.const 0)) + ) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param i32 f64))) + (table 0 anyfunc) + (func $type-first-num-vs-num + (call_indirect (type 0) (f64.const 1) (i32.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) +(assert_invalid + (module + (type (func (param f64 i32))) + (table 0 anyfunc) + (func $type-second-num-vs-num + (call_indirect (type 0) (i32.const 1) (f64.const 1) (i32.const 0)) + ) + ) + "type mismatch" +) + + +;; Unbound type + +(assert_invalid + (module + (table 0 anyfunc) + (func $unbound-type (call_indirect (type 1) (i32.const 0))) + ) + "unknown type" +) +(assert_invalid + (module + (table 0 anyfunc) + (func $large-type (call_indirect (type 1012321300) (i32.const 0))) + ) + "unknown type" +) + + +;; Unbound function in table + +(assert_invalid + (module (table anyfunc (elem 0 0))) + "unknown function 0" +) diff --git a/test/spec/proposals/multi-value/fac.wast b/test/spec/proposals/multi-value/fac.wast new file mode 100644 index 00000000000..b9e4ec919ec --- /dev/null +++ b/test/spec/proposals/multi-value/fac.wast @@ -0,0 +1,109 @@ +(module + ;; Recursive factorial + (func (export "fac-rec") (param i64) (result i64) + (if (result i64) (i64.eq (get_local 0) (i64.const 0)) + (then (i64.const 1)) + (else + (i64.mul (get_local 0) (call 0 (i64.sub (get_local 0) (i64.const 1)))) + ) + ) + ) + + ;; Recursive factorial named + (func $fac-rec-named (export "fac-rec-named") (param $n i64) (result i64) + (if (result i64) (i64.eq (get_local $n) (i64.const 0)) + (then (i64.const 1)) + (else + (i64.mul + (get_local $n) + (call $fac-rec-named (i64.sub (get_local $n) (i64.const 1))) + ) + ) + ) + ) + + ;; Iterative factorial + (func (export "fac-iter") (param i64) (result i64) + (local i64 i64) + (set_local 1 (get_local 0)) + (set_local 2 (i64.const 1)) + (block + (loop + (if + (i64.eq (get_local 1) (i64.const 0)) + (then (br 2)) + (else + (set_local 2 (i64.mul (get_local 1) (get_local 2))) + (set_local 1 (i64.sub (get_local 1) (i64.const 1))) + ) + ) + (br 0) + ) + ) + (get_local 2) + ) + + ;; Iterative factorial named + (func (export "fac-iter-named") (param $n i64) (result i64) + (local $i i64) + (local $res i64) + (set_local $i (get_local $n)) + (set_local $res (i64.const 1)) + (block $done + (loop $loop + (if + (i64.eq (get_local $i) (i64.const 0)) + (then (br $done)) + (else + (set_local $res (i64.mul (get_local $i) (get_local $res))) + (set_local $i (i64.sub (get_local $i) (i64.const 1))) + ) + ) + (br $loop) + ) + ) + (get_local $res) + ) + + ;; Optimized factorial. + (func (export "fac-opt") (param i64) (result i64) + (local i64) + (set_local 1 (i64.const 1)) + (block + (br_if 0 (i64.lt_s (get_local 0) (i64.const 2))) + (loop + (set_local 1 (i64.mul (get_local 1) (get_local 0))) + (set_local 0 (i64.add (get_local 0) (i64.const -1))) + (br_if 0 (i64.gt_s (get_local 0) (i64.const 1))) + ) + ) + (get_local 1) + ) + + ;; Iterative factorial without locals. + (func $pick0 (param i64) (result i64 i64) + (get_local 0) (get_local 0) + ) + (func $pick1 (param i64 i64) (result i64 i64 i64) + (get_local 0) (get_local 1) (get_local 0) + ) + (func (export "fac-ssa") (param i64) (result i64) + (i64.const 1) (get_local 0) + (loop $l (param i64 i64) (result i64) + (call $pick1) (call $pick1) (i64.mul) + (call $pick1) (i64.const 1) (i64.sub) + (call $pick0) (i64.const 0) (i64.gt_u) + (br_if $l) + (drop) (return) + ) + ) +) + +(assert_return (invoke "fac-rec" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-iter" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-rec-named" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-iter-named" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-opt" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-ssa" (i64.const 25)) (i64.const 7034535277573963776)) + +(assert_exhaustion (invoke "fac-rec" (i64.const 1073741824)) "call stack exhausted") diff --git a/test/spec/proposals/multi-value/func.wast b/test/spec/proposals/multi-value/func.wast new file mode 100644 index 00000000000..cdde7b95258 --- /dev/null +++ b/test/spec/proposals/multi-value/func.wast @@ -0,0 +1,899 @@ +;; Test `func` declarations, i.e. functions + +(module + ;; Auxiliary definition + (type $sig (func)) + (func $dummy) + + ;; Syntax + + (func) + (func (export "f")) + (func $f) + (func $h (export "g")) + + (func (local)) + (func (local) (local)) + (func (local i32)) + (func (local $x i32)) + (func (local i32 f64 i64)) + (func (local i32) (local f64)) + (func (local i32 f32) (local $x i64) (local) (local i32 f64)) + + (func (param)) + (func (param) (param)) + (func (param i32)) + (func (param $x i32)) + (func (param i32 f64 i64)) + (func (param i32) (param f64)) + (func (param i32 f32) (param $x i64) (param) (param i32 f64)) + + (func (result)) + (func (result) (result)) + (func (result i32) (unreachable)) + (func (result i32 f64 f32) (unreachable)) + (func (result i32) (result f64) (unreachable)) + (func (result i32 f32) (result i64) (result) (result i32 f64) (unreachable)) + + (type $sig-1 (func)) + (type $sig-2 (func (result i32))) + (type $sig-3 (func (param $x i32))) + (type $sig-4 (func (param i32 f64 i32) (result i32))) + + (func (export "type-use-1") (type $sig-1)) + (func (export "type-use-2") (type $sig-2) (i32.const 0)) + (func (export "type-use-3") (type $sig-3)) + (func (export "type-use-4") (type $sig-4) (i32.const 0)) + (func (export "type-use-5") (type $sig-2) (result i32) (i32.const 0)) + (func (export "type-use-6") (type $sig-3) (param i32)) + (func (export "type-use-7") + (type $sig-4) (param i32) (param f64 i32) (result i32) (i32.const 0) + ) + + (func (type $sig)) + (func (type $forward)) ;; forward reference + + (func $complex + (param i32 f32) (param $x i64) (param) (param i32) + (result) (result i32) (result) (result i64 i32) + (local f32) (local $y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + (func $complex-sig + (type $sig) + (local f32) (local $y i32) (local i64 i32) (local) (local f64 i32) + (unreachable) (unreachable) + ) + + (type $forward (func)) + + ;; Typing of locals + + (func (export "local-first-i32") (result i32) (local i32 i32) (get_local 0)) + (func (export "local-first-i64") (result i64) (local i64 i64) (get_local 0)) + (func (export "local-first-f32") (result f32) (local f32 f32) (get_local 0)) + (func (export "local-first-f64") (result f64) (local f64 f64) (get_local 0)) + (func (export "local-second-i32") (result i32) (local i32 i32) (get_local 1)) + (func (export "local-second-i64") (result i64) (local i64 i64) (get_local 1)) + (func (export "local-second-f32") (result f32) (local f32 f32) (get_local 1)) + (func (export "local-second-f64") (result f64) (local f64 f64) (get_local 1)) + (func (export "local-mixed") (result f64) + (local f32) (local $x i32) (local i64 i32) (local) (local f64 i32) + (drop (f32.neg (get_local 0))) + (drop (i32.eqz (get_local 1))) + (drop (i64.eqz (get_local 2))) + (drop (i32.eqz (get_local 3))) + (drop (f64.neg (get_local 4))) + (drop (i32.eqz (get_local 5))) + (get_local 4) + ) + + ;; Typing of parameters + + (func (export "param-first-i32") (param i32 i32) (result i32) (get_local 0)) + (func (export "param-first-i64") (param i64 i64) (result i64) (get_local 0)) + (func (export "param-first-f32") (param f32 f32) (result f32) (get_local 0)) + (func (export "param-first-f64") (param f64 f64) (result f64) (get_local 0)) + (func (export "param-second-i32") (param i32 i32) (result i32) (get_local 1)) + (func (export "param-second-i64") (param i64 i64) (result i64) (get_local 1)) + (func (export "param-second-f32") (param f32 f32) (result f32) (get_local 1)) + (func (export "param-second-f64") (param f64 f64) (result f64) (get_local 1)) + (func (export "param-mixed") (param f32 i32) (param) (param $x i64) (param i32 f64 i32) + (result f64) + (drop (f32.neg (get_local 0))) + (drop (i32.eqz (get_local 1))) + (drop (i64.eqz (get_local 2))) + (drop (i32.eqz (get_local 3))) + (drop (f64.neg (get_local 4))) + (drop (i32.eqz (get_local 5))) + (get_local 4) + ) + + ;; Typing of results + + (func (export "empty")) + (func (export "value-void") (call $dummy)) + (func (export "value-i32") (result i32) (i32.const 77)) + (func (export "value-i64") (result i64) (i64.const 7777)) + (func (export "value-f32") (result f32) (f32.const 77.7)) + (func (export "value-f64") (result f64) (f64.const 77.77)) + (func (export "value-i32-f64") (result i32 f64) (i32.const 77) (f64.const 7)) + (func (export "value-i32-i32-i32") (result i32 i32 i32) + (i32.const 1) (i32.const 2) (i32.const 3) + ) + (func (export "value-block-void") (block (call $dummy) (call $dummy))) + (func (export "value-block-i32") (result i32) + (block (result i32) (call $dummy) (i32.const 77)) + ) + (func (export "value-block-i32-i64") (result i32 i64) + (block (result i32 i64) (call $dummy) (i32.const 1) (i64.const 2)) + ) + + (func (export "return-empty") (return)) + (func (export "return-i32") (result i32) (return (i32.const 78))) + (func (export "return-i64") (result i64) (return (i64.const 7878))) + (func (export "return-f32") (result f32) (return (f32.const 78.7))) + (func (export "return-f64") (result f64) (return (f64.const 78.78))) + (func (export "return-i32-f64") (result i32 f64) + (return (i32.const 78) (f64.const 78.78)) + ) + (func (export "return-i32-i32-i32") (result i32 i32 i32) + (return (i32.const 1) (i32.const 2) (i32.const 3)) + ) + (func (export "return-block-i32") (result i32) + (return (block (result i32) (call $dummy) (i32.const 77))) + ) + (func (export "return-block-i32-i64") (result i32 i64) + (return (block (result i32 i64) (call $dummy) (i32.const 1) (i64.const 2))) + ) + + (func (export "break-empty") (br 0)) + (func (export "break-i32") (result i32) (br 0 (i32.const 79))) + (func (export "break-i64") (result i64) (br 0 (i64.const 7979))) + (func (export "break-f32") (result f32) (br 0 (f32.const 79.9))) + (func (export "break-f64") (result f64) (br 0 (f64.const 79.79))) + (func (export "break-i32-f64") (result i32 f64) + (br 0 (i32.const 79) (f64.const 79.79)) + ) + (func (export "break-i32-i32-i32") (result i32 i32 i32) + (br 0 (i32.const 1) (i32.const 2) (i32.const 3)) + ) + (func (export "break-block-i32") (result i32) + (br 0 (block (result i32) (call $dummy) (i32.const 77))) + ) + (func (export "break-block-i32-i64") (result i32 i64) + (br 0 (block (result i32 i64) (call $dummy) (i32.const 1) (i64.const 2))) + ) + + (func (export "break-br_if-empty") (param i32) + (br_if 0 (get_local 0)) + ) + (func (export "break-br_if-num") (param i32) (result i32) + (drop (br_if 0 (i32.const 50) (get_local 0))) (i32.const 51) + ) + (func (export "break-br_if-num-num") (param i32) (result i32 i64) + (drop (drop (br_if 0 (i32.const 50) (i64.const 51) (get_local 0)))) + (i32.const 51) (i64.const 52) + ) + + (func (export "break-br_table-empty") (param i32) + (br_table 0 0 0 (get_local 0)) + ) + (func (export "break-br_table-num") (param i32) (result i32) + (br_table 0 0 (i32.const 50) (get_local 0)) (i32.const 51) + ) + (func (export "break-br_table-num-num") (param i32) (result i32 i64) + (br_table 0 0 (i32.const 50) (i64.const 51) (get_local 0)) + (i32.const 51) (i64.const 52) + ) + (func (export "break-br_table-nested-empty") (param i32) + (block (br_table 0 1 0 (get_local 0))) + ) + (func (export "break-br_table-nested-num") (param i32) (result i32) + (i32.add + (block (result i32) + (br_table 0 1 0 (i32.const 50) (get_local 0)) (i32.const 51) + ) + (i32.const 2) + ) + ) + (func (export "break-br_table-nested-num-num") (param i32) (result i32 i32) + (i32.add + (block (result i32 i32) + (br_table 0 1 0 (i32.const 50) (i32.const 51) (get_local 0)) + (i32.const 51) (i32.const -3) + ) + ) + (i32.const 52) + ) + + ;; Large signatures + + (func (export "large-sig") + (param i32 i64 f32 f32 i32 f64 f32 i32 i32 i32 f32 f64 f64 f64 i32 i32 f32) + (result f64 f32 i32 i32 i32 i64 f32 i32 i32 f32 f64 f64 i32 f32 i32 f64) + (get_local 5) + (get_local 2) + (get_local 0) + (get_local 8) + (get_local 7) + (get_local 1) + (get_local 3) + (get_local 9) + (get_local 4) + (get_local 6) + (get_local 13) + (get_local 11) + (get_local 15) + (get_local 16) + (get_local 14) + (get_local 12) + ) + + ;; Default initialization of locals + + (func (export "init-local-i32") (result i32) (local i32) (get_local 0)) + (func (export "init-local-i64") (result i64) (local i64) (get_local 0)) + (func (export "init-local-f32") (result f32) (local f32) (get_local 0)) + (func (export "init-local-f64") (result f64) (local f64) (get_local 0)) +) + +(assert_return (invoke "type-use-1")) +(assert_return (invoke "type-use-2") (i32.const 0)) +(assert_return (invoke "type-use-3" (i32.const 1))) +(assert_return + (invoke "type-use-4" (i32.const 1) (f64.const 1) (i32.const 1)) + (i32.const 0) +) +(assert_return (invoke "type-use-5") (i32.const 0)) +(assert_return (invoke "type-use-6" (i32.const 1))) +(assert_return + (invoke "type-use-7" (i32.const 1) (f64.const 1) (i32.const 1)) + (i32.const 0) +) + +(assert_return (invoke "local-first-i32") (i32.const 0)) +(assert_return (invoke "local-first-i64") (i64.const 0)) +(assert_return (invoke "local-first-f32") (f32.const 0)) +(assert_return (invoke "local-first-f64") (f64.const 0)) +(assert_return (invoke "local-second-i32") (i32.const 0)) +(assert_return (invoke "local-second-i64") (i64.const 0)) +(assert_return (invoke "local-second-f32") (f32.const 0)) +(assert_return (invoke "local-second-f64") (f64.const 0)) +(assert_return (invoke "local-mixed") (f64.const 0)) + +(assert_return + (invoke "param-first-i32" (i32.const 2) (i32.const 3)) (i32.const 2) +) +(assert_return + (invoke "param-first-i64" (i64.const 2) (i64.const 3)) (i64.const 2) +) +(assert_return + (invoke "param-first-f32" (f32.const 2) (f32.const 3)) (f32.const 2) +) +(assert_return + (invoke "param-first-f64" (f64.const 2) (f64.const 3)) (f64.const 2) +) +(assert_return + (invoke "param-second-i32" (i32.const 2) (i32.const 3)) (i32.const 3) +) +(assert_return + (invoke "param-second-i64" (i64.const 2) (i64.const 3)) (i64.const 3) +) +(assert_return + (invoke "param-second-f32" (f32.const 2) (f32.const 3)) (f32.const 3) +) +(assert_return + (invoke "param-second-f64" (f64.const 2) (f64.const 3)) (f64.const 3) +) + +(assert_return + (invoke "param-mixed" + (f32.const 1) (i32.const 2) (i64.const 3) + (i32.const 4) (f64.const 5.5) (i32.const 6) + ) + (f64.const 5.5) +) + +(assert_return (invoke "empty")) +(assert_return (invoke "value-void")) +(assert_return (invoke "value-i32") (i32.const 77)) +(assert_return (invoke "value-i64") (i64.const 7777)) +(assert_return (invoke "value-f32") (f32.const 77.7)) +(assert_return (invoke "value-f64") (f64.const 77.77)) +(assert_return (invoke "value-i32-f64") (i32.const 77) (f64.const 7)) +(assert_return (invoke "value-i32-i32-i32") + (i32.const 1) (i32.const 2) (i32.const 3) +) +(assert_return (invoke "value-block-void")) +(assert_return (invoke "value-block-i32") (i32.const 77)) +(assert_return (invoke "value-block-i32-i64") (i32.const 1) (i64.const 2)) + +(assert_return (invoke "return-empty")) +(assert_return (invoke "return-i32") (i32.const 78)) +(assert_return (invoke "return-i64") (i64.const 7878)) +(assert_return (invoke "return-f32") (f32.const 78.7)) +(assert_return (invoke "return-f64") (f64.const 78.78)) +(assert_return (invoke "return-i32-f64") (i32.const 78) (f64.const 78.78)) +(assert_return (invoke "return-i32-i32-i32") + (i32.const 1) (i32.const 2) (i32.const 3) +) +(assert_return (invoke "return-block-i32") (i32.const 77)) +(assert_return (invoke "return-block-i32-i64") (i32.const 1) (i64.const 2)) + +(assert_return (invoke "break-empty")) +(assert_return (invoke "break-i32") (i32.const 79)) +(assert_return (invoke "break-i64") (i64.const 7979)) +(assert_return (invoke "break-f32") (f32.const 79.9)) +(assert_return (invoke "break-f64") (f64.const 79.79)) +(assert_return (invoke "break-i32-f64") (i32.const 79) (f64.const 79.79)) +(assert_return (invoke "break-i32-i32-i32") + (i32.const 1) (i32.const 2) (i32.const 3) +) +(assert_return (invoke "break-block-i32") (i32.const 77)) +(assert_return (invoke "break-block-i32-i64") (i32.const 1) (i64.const 2)) + +(assert_return (invoke "break-br_if-empty" (i32.const 0))) +(assert_return (invoke "break-br_if-empty" (i32.const 2))) +(assert_return (invoke "break-br_if-num" (i32.const 0)) (i32.const 51)) +(assert_return (invoke "break-br_if-num" (i32.const 1)) (i32.const 50)) +(assert_return (invoke "break-br_if-num-num" (i32.const 0)) + (i32.const 51) (i64.const 52) +) +(assert_return (invoke "break-br_if-num-num" (i32.const 1)) + (i32.const 50) (i64.const 51) +) + +(assert_return (invoke "break-br_table-empty" (i32.const 0))) +(assert_return (invoke "break-br_table-empty" (i32.const 1))) +(assert_return (invoke "break-br_table-empty" (i32.const 5))) +(assert_return (invoke "break-br_table-empty" (i32.const -1))) +(assert_return (invoke "break-br_table-num" (i32.const 0)) (i32.const 50)) +(assert_return (invoke "break-br_table-num" (i32.const 1)) (i32.const 50)) +(assert_return (invoke "break-br_table-num" (i32.const 10)) (i32.const 50)) +(assert_return (invoke "break-br_table-num" (i32.const -100)) (i32.const 50)) +(assert_return (invoke "break-br_table-num-num" (i32.const 0)) + (i32.const 50) (i64.const 51) +) +(assert_return (invoke "break-br_table-num-num" (i32.const 1)) + (i32.const 50) (i64.const 51) +) +(assert_return (invoke "break-br_table-num-num" (i32.const 10)) + (i32.const 50) (i64.const 51) +) +(assert_return (invoke "break-br_table-num-num" (i32.const -100)) + (i32.const 50) (i64.const 51) +) +(assert_return (invoke "break-br_table-nested-empty" (i32.const 0))) +(assert_return (invoke "break-br_table-nested-empty" (i32.const 1))) +(assert_return (invoke "break-br_table-nested-empty" (i32.const 3))) +(assert_return (invoke "break-br_table-nested-empty" (i32.const -2))) +(assert_return + (invoke "break-br_table-nested-num" (i32.const 0)) (i32.const 52) +) +(assert_return + (invoke "break-br_table-nested-num" (i32.const 1)) (i32.const 50) +) +(assert_return + (invoke "break-br_table-nested-num" (i32.const 2)) (i32.const 52) +) +(assert_return + (invoke "break-br_table-nested-num" (i32.const -3)) (i32.const 52) +) +(assert_return + (invoke "break-br_table-nested-num-num" (i32.const 0)) + (i32.const 101) (i32.const 52) +) +(assert_return + (invoke "break-br_table-nested-num-num" (i32.const 1)) + (i32.const 50) (i32.const 51) +) +(assert_return + (invoke "break-br_table-nested-num-num" (i32.const 2)) + (i32.const 101) (i32.const 52) +) +(assert_return + (invoke "break-br_table-nested-num-num" (i32.const -3)) + (i32.const 101) (i32.const 52) +) + +(assert_return + (invoke "large-sig" + (i32.const 0) (i64.const 1) (f32.const 2) (f32.const 3) + (i32.const 4) (f64.const 5) (f32.const 6) (i32.const 7) + (i32.const 8) (i32.const 9) (f32.const 10) (f64.const 11) + (f64.const 12) (f64.const 13) (i32.const 14) (i32.const 15) + (f32.const 16) + ) + (f64.const 5) (f32.const 2) (i32.const 0) (i32.const 8) + (i32.const 7) (i64.const 1) (f32.const 3) (i32.const 9) + (i32.const 4) (f32.const 6) (f64.const 13) (f64.const 11) + (i32.const 15) (f32.const 16) (i32.const 14) (f64.const 12) +) + +(assert_return (invoke "init-local-i32") (i32.const 0)) +(assert_return (invoke "init-local-i64") (i64.const 0)) +(assert_return (invoke "init-local-f32") (f32.const 0)) +(assert_return (invoke "init-local-f64") (f64.const 0)) + + +;; Expansion of inline function types + +(module + (func $f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $g (param i32)) ;; reuses explicit type definition + (type $t (func (param i32))) + + (func $i32->void (type 0)) ;; (param i32) + (func $void->f64 (type 1) (f64.const 0)) ;; (result f64) + (func $check + (call $i32->void (i32.const 0)) + (drop (call $void->f64)) + ) +) + +(assert_invalid + (module + (func $f (result f64) (f64.const 0)) ;; adds implicit type definition + (func $g (param i32)) ;; reuses explicit type definition + (func $h (result f64) (f64.const 1)) ;; reuses implicit type definition + (type $t (func (param i32))) + + (func (type 2)) ;; does not exist + ) + "unknown type" +) + + +(module + (type $sig (func)) + + (func $empty-sig-1) ;; should be assigned type $sig + (func $complex-sig-1 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $empty-sig-2) ;; should be assigned type $sig + (func $complex-sig-2 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $complex-sig-3 (param f64 i64 f64 i64 f64 i64 f32 i32)) + (func $complex-sig-4 (param i64 i64 f64 i64 f64 i64 f32 i32)) + (func $complex-sig-5 (param i64 i64 f64 i64 f64 i64 f32 i32)) + + (type $empty-sig-duplicate (func)) + (type $complex-sig-duplicate (func (param i64 i64 f64 i64 f64 i64 f32 i32))) + (table anyfunc + (elem + $complex-sig-3 $empty-sig-2 $complex-sig-1 $complex-sig-3 $empty-sig-1 + $complex-sig-4 $complex-sig-5 + ) + ) + + (func (export "signature-explicit-reused") + (call_indirect (type $sig) (i32.const 1)) + (call_indirect (type $sig) (i32.const 4)) + ) + + (func (export "signature-implicit-reused") + ;; The implicit index 3 in this test depends on the function and + ;; type definitions, and may need adapting if they change. + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 0) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 2) + ) + (call_indirect (type 3) + (f64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 3) + ) + ) + + (func (export "signature-explicit-duplicate") + (call_indirect (type $empty-sig-duplicate) (i32.const 1)) + ) + + (func (export "signature-implicit-duplicate") + (call_indirect (type $complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 5) + ) + (call_indirect (type $complex-sig-duplicate) + (i64.const 0) (i64.const 0) (f64.const 0) (i64.const 0) + (f64.const 0) (i64.const 0) (f32.const 0) (i32.const 0) + (i32.const 6) + ) + ) +) + +(assert_return (invoke "signature-explicit-reused")) +(assert_return (invoke "signature-implicit-reused")) +(assert_return (invoke "signature-explicit-duplicate")) +(assert_return (invoke "signature-implicit-duplicate")) + + +;; Malformed type use + +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (type $sig) (result i32) (param i32) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (param i32) (type $sig) (result i32) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (param i32) (result i32) (type $sig) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (result i32) (type $sig) (param i32) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (result i32) (param i32) (type $sig) (i32.const 0))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(func (result i32) (param i32) (i32.const 0))" + ) + "unexpected token" +) + +(assert_malformed + (module quote + "(type $sig (func))" + "(func (type $sig) (result i32) (i32.const 0))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (type $sig) (result i32) (i32.const 0))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (type $sig) (param i32) (i32.const 0))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32 i32) (result i32)))" + "(func (type $sig) (param i32) (result i32) (unreachable))" + ) + "inline function type" +) + + +;; Invalid typing of locals + +(assert_invalid + (module (func $type-local-num-vs-num (result i64) (local i32) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + + +;; Invalid typing of parameters + +(assert_invalid + (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + + +;; Invalid typing of result + +(assert_invalid + (module (func $type-empty-i32 (result i32))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64-i32 (result f64 i32))) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-void-vs-num (result i32) + (nop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-nums (result i32 i32) + (nop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-void + (i32.const 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-nums-vs-void + (i32.const 0) (i64.const 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-num (result i32) + (f32.const 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-nums (result f32 f32) + (f32.const 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-nums-vs-num (result f32) + (f32.const 0) (f32.const 0) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-return-last-empty-vs-num (result i32) + (return) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-last-empty-vs-nums (result i32 i32) + (return) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-last-void-vs-num (result i32) + (return (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-last-void-vs-nums (result i32 i64) + (return (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-last-num-vs-num (result i32) + (return (i64.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-last-num-vs-nums (result i64 i64) + (return (i64.const 0)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-return-empty-vs-num (result i32) + (return) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-empty-vs-nums (result i32 i32) + (return) (i32.const 1) (i32.const 2) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-partial-vs-nums (result i32 i32) + (i32.const 1) (return) (i32.const 2) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-void-vs-num (result i32) + (return (nop)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-void-vs-nums (result i32 i32) + (return (nop)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-num-vs-num (result i32) + (return (i64.const 1)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-num-vs-nums (result i32 i32) + (return (i64.const 1)) (i32.const 1) (i32.const 2) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-first-num-vs-num (result i32) + (return (i64.const 1)) (return (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-first-num-vs-nums (result i32 i32) + (return (i32.const 1)) (return (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-last-void-vs-num (result i32) + (br 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-void-vs-nums (result i32 i32) + (br 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-num-vs-num (result i32) + (br 0 (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-last-num-vs-nums (result i32 i32) + (br 0 (i32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-void-vs-num (result i32) + (br 0) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-void-vs-nums (result i32 i32) + (br 0) (i32.const 1) (i32.const 2) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-num-vs-num (result i32) + (br 0 (i64.const 1)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-num-vs-nums (result i32 i32) + (br 0 (i32.const 1)) (i32.const 1) (i32.const 2) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-first-num-vs-num (result i32) + (br 0 (i64.const 1)) (br 0 (i32.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-break-nested-empty-vs-num (result i32) + (block (br 1)) (br 0 (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-empty-vs-nums (result i32 i32) + (block (br 1)) (br 0 (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-void-vs-num (result i32) + (block (br 1 (nop))) (br 0 (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-void-vs-nums (result i32 i32) + (block (br 1 (nop))) (br 0 (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-num-vs-num (result i32) + (block (br 1 (i64.const 1))) (br 0 (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-break-nested-num-vs-nums (result i32 i32) + (block (result i32) (br 1 (i32.const 1))) (br 0 (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) + + +;; Syntax errors + +(assert_malformed + (module quote "(func (nop) (local i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (nop) (param i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (nop) (result i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (local i32) (param i32))") + "unexpected token" +) +(assert_malformed + (module quote "(func (local i32) (result i32) (get_local 0))") + "unexpected token" +) +(assert_malformed + (module quote "(func (result i32) (param i32) (get_local 0))") + "unexpected token" +) diff --git a/test/spec/proposals/multi-value/if.wast b/test/spec/proposals/multi-value/if.wast new file mode 100644 index 00000000000..6389566b682 --- /dev/null +++ b/test/spec/proposals/multi-value/if.wast @@ -0,0 +1,1066 @@ +;; Test `if` operator + +(module + ;; Auxiliary definition + (func $dummy) + + (func (export "empty") (param i32) + (if (get_local 0) (then)) + (if (get_local 0) (then) (else)) + (if $l (get_local 0) (then)) + (if $l (get_local 0) (then) (else)) + ) + + (func (export "singular") (param i32) (result i32) + (if (get_local 0) (then (nop))) + (if (get_local 0) (then (nop)) (else (nop))) + (if (result i32) (get_local 0) (then (i32.const 7)) (else (i32.const 8))) + ) + + (func (export "multi") (param i32) (result i32 i32) + (if (get_local 0) (then (call $dummy) (call $dummy) (call $dummy))) + (if (get_local 0) (then) (else (call $dummy) (call $dummy) (call $dummy))) + (if (result i32) (get_local 0) + (then (call $dummy) (call $dummy) (i32.const 8) (call $dummy)) + (else (call $dummy) (call $dummy) (i32.const 9) (call $dummy)) + ) + (if (result i32 i64 i32) (get_local 0) + (then + (call $dummy) (call $dummy) (i32.const 1) (call $dummy) + (call $dummy) (call $dummy) (i64.const 2) (call $dummy) + (call $dummy) (call $dummy) (i32.const 3) (call $dummy) + ) + (else + (call $dummy) (call $dummy) (i32.const -1) (call $dummy) + (call $dummy) (call $dummy) (i64.const -2) (call $dummy) + (call $dummy) (call $dummy) (i32.const -3) (call $dummy) + ) + ) + (drop) (drop) + ) + + (func (export "nested") (param i32 i32) (result i32) + (if (result i32) (get_local 0) + (then + (if (get_local 1) (then (call $dummy) (block) (nop))) + (if (get_local 1) (then) (else (call $dummy) (block) (nop))) + (if (result i32) (get_local 1) + (then (call $dummy) (i32.const 9)) + (else (call $dummy) (i32.const 10)) + ) + ) + (else + (if (get_local 1) (then (call $dummy) (block) (nop))) + (if (get_local 1) (then) (else (call $dummy) (block) (nop))) + (if (result i32) (get_local 1) + (then (call $dummy) (i32.const 10)) + (else (call $dummy) (i32.const 11)) + ) + ) + ) + ) + + (func (export "as-unary-operand") (param i32) (result i32) + (i32.ctz + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 13)) + (else (call $dummy) (i32.const -13)) + ) + ) + ) + (func (export "as-binary-operand") (param i32 i32) (result i32) + (i32.mul + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 3)) + (else (call $dummy) (i32.const -3)) + ) + (if (result i32) (get_local 1) + (then (call $dummy) (i32.const 4)) + (else (call $dummy) (i32.const -5)) + ) + ) + ) + (func (export "as-test-operand") (param i32) (result i32) + (i32.eqz + (if (result i32) (get_local 0) + (then (call $dummy) (i32.const 13)) + (else (call $dummy) (i32.const 0)) + ) + ) + ) + (func (export "as-compare-operand") (param i32 i32) (result i32) + (f32.gt + (if (result f32) (get_local 0) + (then (call $dummy) (f32.const 3)) + (else (call $dummy) (f32.const -3)) + ) + (if (result f32) (get_local 1) + (then (call $dummy) (f32.const 4)) + (else (call $dummy) (f32.const -4)) + ) + ) + ) + (func (export "as-binary-operands") (param i32) (result i32) + (i32.mul + (if (result i32 i32) (get_local 0) + (then (call $dummy) (i32.const 3) (call $dummy) (i32.const 4)) + (else (call $dummy) (i32.const 3) (call $dummy) (i32.const -4)) + ) + ) + ) + (func (export "as-compare-operands") (param i32) (result i32) + (f32.gt + (if (result f32 f32) (get_local 0) + (then (call $dummy) (f32.const 3) (call $dummy) (f32.const 3)) + (else (call $dummy) (f32.const -2) (call $dummy) (f32.const -3)) + ) + ) + ) + (func (export "as-mixed-operands") (param i32) (result i32) + (if (result i32 i32) (get_local 0) + (then (call $dummy) (i32.const 3) (call $dummy) (i32.const 4)) + (else (call $dummy) (i32.const -3) (call $dummy) (i32.const -4)) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (if (i32.const 1) (then (br 0) (unreachable))) + (if (i32.const 1) (then (br 0) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br 0) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_if 0 (i32.const 1)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_if 0 (i32.const 1)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable))) + (if (i32.const 1) (then (br_table 0 (i32.const 0)) (unreachable)) (else (unreachable))) + (if (i32.const 0) (then (unreachable)) (else (br_table 0 (i32.const 0)) (unreachable))) + (i32.const 19) + ) + + (func (export "break-value") (param i32) (result i32) + (if (result i32) (get_local 0) + (then (br 0 (i32.const 18)) (i32.const 19)) + (else (br 0 (i32.const 21)) (i32.const 20)) + ) + ) + (func (export "break-multi-value") (param i32) (result i32 i32 i64) + (if (result i32 i32 i64) (get_local 0) + (then + (br 0 (i32.const 18) (i32.const -18) (i64.const 18)) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + (else + (br 0 (i32.const -18) (i32.const 18) (i64.const -18)) + (i32.const -19) (i32.const 19) (i64.const -19) + ) + ) + ) + + (func (export "param") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (get_local 0) + (then (i32.const 2) (i32.add)) + (else (i32.const -2) (i32.add)) + ) + ) + (func (export "params") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (get_local 0) + (then (i32.add)) + (else (i32.sub)) + ) + ) + (func (export "params-id") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (get_local 0) (then)) + (i32.add) + ) + (func (export "param-break") (param i32) (result i32) + (i32.const 1) + (if (param i32) (result i32) (get_local 0) + (then (i32.const 2) (i32.add) (br 0)) + (else (i32.const -2) (i32.add) (br 0)) + ) + ) + (func (export "params-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32) (get_local 0) + (then (i32.add) (br 0)) + (else (i32.sub) (br 0)) + ) + ) + (func (export "params-id-break") (param i32) (result i32) + (i32.const 1) + (i32.const 2) + (if (param i32 i32) (result i32 i32) (get_local 0) (then (br 0))) + (i32.add) + ) + + (func (export "effects") (param i32) (result i32) + (local i32) + (if + (block (result i32) (set_local 1 (i32.const 1)) (get_local 0)) + (then + (set_local 1 (i32.mul (get_local 1) (i32.const 3))) + (set_local 1 (i32.sub (get_local 1) (i32.const 5))) + (set_local 1 (i32.mul (get_local 1) (i32.const 7))) + (br 0) + (set_local 1 (i32.mul (get_local 1) (i32.const 100))) + ) + (else + (set_local 1 (i32.mul (get_local 1) (i32.const 5))) + (set_local 1 (i32.sub (get_local 1) (i32.const 7))) + (set_local 1 (i32.mul (get_local 1) (i32.const 3))) + (br 0) + (set_local 1 (i32.mul (get_local 1) (i32.const 1000))) + ) + ) + (get_local 1) + ) + + ;; Examples + + (func $add64_u_with_carry (export "add64_u_with_carry") + (param $i i64) (param $j i64) (param $c i32) (result i64 i32) + (local $k i64) + (set_local $k + (i64.add + (i64.add (get_local $i) (get_local $j)) + (i64.extend_u/i32 (get_local $c)) + ) + ) + (return (get_local $k) (i64.lt_u (get_local $k) (get_local $i))) + ) + + (func $add64_u_saturated (export "add64_u_saturated") + (param i64 i64) (result i64) + (call $add64_u_with_carry (get_local 0) (get_local 1) (i32.const 0)) + (if (param i64) (result i64) + (then (drop) (i64.const -1)) + ) + ) + + ;; Block signature syntax + + (type $block-sig-1 (func)) + (type $block-sig-2 (func (result i32))) + (type $block-sig-3 (func (param $x i32))) + (type $block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (if (type $block-sig-1) (i32.const 1) (then)) + (if (type $block-sig-2) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $block-sig-3) (i32.const 1) (then (drop)) (else (drop))) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $block-sig-4) (i32.const 1) (then)) + (drop) (drop) (drop) + (if (type $block-sig-2) (result i32) (i32.const 1) + (then (i32.const 0)) (else (i32.const 2)) + ) + (if (type $block-sig-3) (param i32) (i32.const 1) + (then (drop)) (else (drop)) + ) + (i32.const 0) (f64.const 0) (i32.const 0) + (if (type $block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + (i32.const 1) (then) + ) + (drop) (drop) (drop) + ) +) + +(assert_return (invoke "empty" (i32.const 0))) +(assert_return (invoke "empty" (i32.const 1))) +(assert_return (invoke "empty" (i32.const 100))) +(assert_return (invoke "empty" (i32.const -2))) + +(assert_return (invoke "singular" (i32.const 0)) (i32.const 8)) +(assert_return (invoke "singular" (i32.const 1)) (i32.const 7)) +(assert_return (invoke "singular" (i32.const 10)) (i32.const 7)) +(assert_return (invoke "singular" (i32.const -10)) (i32.const 7)) + +(assert_return (invoke "multi" (i32.const 0)) (i32.const 9) (i32.const -1)) +(assert_return (invoke "multi" (i32.const 1)) (i32.const 8) (i32.const 1)) +(assert_return (invoke "multi" (i32.const 13)) (i32.const 8) (i32.const 1)) +(assert_return (invoke "multi" (i32.const -5)) (i32.const 8) (i32.const 1)) + +(assert_return (invoke "nested" (i32.const 0) (i32.const 0)) (i32.const 11)) +(assert_return (invoke "nested" (i32.const 1) (i32.const 0)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const 0) (i32.const 1)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const 3) (i32.const 2)) (i32.const 9)) +(assert_return (invoke "nested" (i32.const 0) (i32.const -100)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const 10) (i32.const 10)) (i32.const 9)) +(assert_return (invoke "nested" (i32.const 0) (i32.const -1)) (i32.const 10)) +(assert_return (invoke "nested" (i32.const -111) (i32.const -2)) (i32.const 9)) + +(assert_return (invoke "as-unary-operand" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "as-unary-operand" (i32.const 1)) (i32.const 0)) +(assert_return (invoke "as-unary-operand" (i32.const -1)) (i32.const 0)) + +(assert_return (invoke "as-binary-operand" (i32.const 0) (i32.const 0)) (i32.const 15)) +(assert_return (invoke "as-binary-operand" (i32.const 0) (i32.const 1)) (i32.const -12)) +(assert_return (invoke "as-binary-operand" (i32.const 1) (i32.const 0)) (i32.const -15)) +(assert_return (invoke "as-binary-operand" (i32.const 1) (i32.const 1)) (i32.const 12)) + +(assert_return (invoke "as-test-operand" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-test-operand" (i32.const 1)) (i32.const 0)) + +(assert_return (invoke "as-compare-operand" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-compare-operand" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "as-compare-operand" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-compare-operand" (i32.const 1) (i32.const 1)) (i32.const 0)) + +(assert_return (invoke "as-binary-operands" (i32.const 0)) (i32.const -12)) +(assert_return (invoke "as-binary-operands" (i32.const 1)) (i32.const 12)) + +(assert_return (invoke "as-compare-operands" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "as-compare-operands" (i32.const 1)) (i32.const 0)) + +(assert_return (invoke "as-mixed-operands" (i32.const 0)) (i32.const -3)) +(assert_return (invoke "as-mixed-operands" (i32.const 1)) (i32.const 27)) + +(assert_return (invoke "break-bare") (i32.const 19)) +(assert_return (invoke "break-value" (i32.const 1)) (i32.const 18)) +(assert_return (invoke "break-value" (i32.const 0)) (i32.const 21)) +(assert_return (invoke "break-multi-value" (i32.const 0)) + (i32.const -18) (i32.const 18) (i64.const -18) +) +(assert_return (invoke "break-multi-value" (i32.const 1)) + (i32.const 18) (i32.const -18) (i64.const 18) +) + +(assert_return (invoke "param" (i32.const 0)) (i32.const -1)) +(assert_return (invoke "param" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "params" (i32.const 0)) (i32.const -1)) +(assert_return (invoke "params" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "params-id" (i32.const 0)) (i32.const 3)) +(assert_return (invoke "params-id" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "param-break" (i32.const 0)) (i32.const -1)) +(assert_return (invoke "param-break" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "params-break" (i32.const 0)) (i32.const -1)) +(assert_return (invoke "params-break" (i32.const 1)) (i32.const 3)) +(assert_return (invoke "params-id-break" (i32.const 0)) (i32.const 3)) +(assert_return (invoke "params-id-break" (i32.const 1)) (i32.const 3)) + +(assert_return (invoke "effects" (i32.const 1)) (i32.const -14)) +(assert_return (invoke "effects" (i32.const 0)) (i32.const -6)) + +(assert_return + (invoke "add64_u_with_carry" (i64.const 0) (i64.const 0) (i32.const 0)) + (i64.const 0) (i32.const 0) +) +(assert_return + (invoke "add64_u_with_carry" (i64.const 100) (i64.const 124) (i32.const 0)) + (i64.const 224) (i32.const 0) +) +(assert_return + (invoke "add64_u_with_carry" (i64.const -1) (i64.const 0) (i32.const 0)) + (i64.const -1) (i32.const 0) +) +(assert_return + (invoke "add64_u_with_carry" (i64.const -1) (i64.const 1) (i32.const 0)) + (i64.const 0) (i32.const 1) +) +(assert_return + (invoke "add64_u_with_carry" (i64.const -1) (i64.const -1) (i32.const 0)) + (i64.const -2) (i32.const 1) +) +(assert_return + (invoke "add64_u_with_carry" (i64.const -1) (i64.const 0) (i32.const 1)) + (i64.const 0) (i32.const 1) +) +(assert_return + (invoke "add64_u_with_carry" (i64.const -1) (i64.const 1) (i32.const 1)) + (i64.const 1) (i32.const 1) +) +(assert_return + (invoke "add64_u_with_carry" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000) (i32.const 0)) + (i64.const 0) (i32.const 1) +) + +(assert_return + (invoke "add64_u_saturated" (i64.const 0) (i64.const 0)) (i64.const 0) +) +(assert_return + (invoke "add64_u_saturated" (i64.const 1230) (i64.const 23)) (i64.const 1253) +) +(assert_return + (invoke "add64_u_saturated" (i64.const -1) (i64.const 0)) (i64.const -1) +) +(assert_return + (invoke "add64_u_saturated" (i64.const -1) (i64.const 1)) (i64.const -1) +) +(assert_return + (invoke "add64_u_saturated" (i64.const -1) (i64.const -1)) (i64.const -1) +) +(assert_return + (invoke "add64_u_saturated" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i64.const -1) +) + +(assert_return (invoke "type-use")) + +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0)" + " (if (type $sig) (result i32) (param i32) (i32.const 1) (then))" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0)" + " (if (param i32) (type $sig) (result i32) (i32.const 1) (then))" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0)" + " (if (param i32) (result i32) (type $sig) (i32.const 1) (then))" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0)" + " (if (result i32) (type $sig) (param i32) (i32.const 1) (then))" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0)" + " (if (result i32) (param i32) (type $sig) (i32.const 1) (then))" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(func (i32.const 0) (if (result i32) (param i32) (i32.const 1) (then)))" + ) + "unexpected token" +) + +(assert_malformed + (module quote + "(func (i32.const 0) (i32.const 1)" + " (if (param $x i32) (then (drop)) (else (drop)))" + ")" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func))" + "(func (i32.const 1)" + " (if (type $sig) (result i32) (then (i32.const 0)) (else (i32.const 2)))" + " (unreachable)" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 1)" + " (if (type $sig) (result i32) (then (i32.const 0)) (else (i32.const 2)))" + " (unreachable)" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (i32.const 1)" + " (if (type $sig) (param i32) (then (drop)) (else (drop)))" + " (unreachable)" + ")" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32 i32) (result i32)))" + "(func (i32.const 0) (i32.const 1)" + " (if (type $sig) (param i32) (result i32) (then)) (unreachable)" + ")" + ) + "inline function type" +) + +(assert_invalid + (module + (type $sig (func)) + (func (i32.const 1) (if (type $sig) (i32.const 0) (then))) + ) + "type mismatch" +) + +(assert_invalid + (module (func $type-empty-i32 (result i32) (if (i32.const 0) (then)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64) (if (i32.const 0) (then)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32) (if (i32.const 0) (then)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64) (if (i32.const 0) (then)))) + "type mismatch" +) + +(assert_invalid + (module (func $type-empty-i32 (result i32) (if (i32.const 0) (then) (else)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64) (if (i32.const 0) (then) (else)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32) (if (i32.const 0) (then) (else)))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64) (if (i32.const 0) (then) (else)))) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-num-vs-void + (if (i32.const 1) (then (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-value-num-vs-void-else + (if (i32.const 1) (then (i32.const 1)) (else)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-num-vs-void + (if (i32.const 1) (then) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-num-vs-void + (if (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-value-nums-vs-void-else + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-nums-vs-void + (if (i32.const 1) (then) (else (i32.const 1) (i32.const 2))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-nums-vs-void + (if (i32.const 1) (then (i32.const 1) (i32.const 2)) (else (i32.const 2) (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else (i32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-empty-vs-num (result i32) + (if (result i32) (i32.const 1) (then) (else)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else (i32.const 0) (i32.const 2))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 1)) (else)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then) (else)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-no-else-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-no-else-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (i32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 0)) (else (nop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (nop)) (else (nop))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (i32.const 0) (i32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 0) (i32.const 0)) (else (nop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (nop)) (else (nop))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (i64.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-partial-vs-nums (result i32 i32) + (i32.const 0) + (if (result i32 i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (i32.const 1) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-value-nums-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (i32.const 1) (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-both-different-value-num-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i64.const 1)) (else (f64.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-both-different-value-nums-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1) (i32.const 1)) (else (i32.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-value-unreached-select (result i32) + (if (result i64) + (i32.const 0) + (then (select (unreachable) (unreachable) (unreachable))) + (else (i64.const 0)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (i64.const 0)) + (else (select (unreachable) (unreachable) (unreachable))) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-value-unreached-select (result i32) + (if (result i64) + (i32.const 1) + (then (select (unreachable) (unreachable) (unreachable))) + (else (select (unreachable) (unreachable) (unreachable))) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (br 0)) (else (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-last-void-vs-num (result i32) + (if (result i32) (i32.const 1) (then (i32.const 1)) (else (br 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (br 0)) (else (i32.const 1) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-last-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) (then (i32.const 1) (i32.const 1)) (else (br 0))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0) (i32.const 1)) + (else (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-empty-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-empty-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0) (i32.const 1) (i32.const 1)) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1)) + (else (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-void-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (nop)) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (nop)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-void-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (nop)) (i32.const 1) (i32.const 1)) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-then-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-num-vs-num (result i32) + (if (result i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + (else (i32.const 1) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-num-vs-nums (result i32 i32) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1) (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1) (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-then-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (br 0 (i64.const 1)) (i32.const 1)) + (else (i32.const 1)) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-else-break-partial-vs-nums (result i32 i32) + (i32.const 1) + (if (result i32 i32) (i32.const 1) + (then (i32.const 1)) + (else (br 0 (i64.const 1)) (i32.const 1)) + ) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-param-void-vs-num + (if (param i32) (i32.const 1) (then (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-void-vs-nums + (if (param i32 f64) (i32.const 1) (then (drop) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num + (f32.const 0) (if (param i32) (i32.const 1) (then (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-nums + (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-nested-void-vs-num + (block (if (param i32) (i32.const 1) (then (drop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-void-vs-nums + (block (if (param i32 f64) (i32.const 1) (then (drop) (drop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num + (block (f32.const 0) (if (param i32) (i32.const 1) (then (drop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-nums + (block (f32.const 0) (if (param f32 i32) (i32.const 1) (then (drop) (drop)))) + )) + "type mismatch" +) + +(assert_malformed + (module quote "(func (param i32) (result i32) if (param $x i32) end)") + "unexpected token" +) +(assert_malformed + (module quote "(func (param i32) (result i32) (if (param $x i32) (then)))") + "unexpected token" +) + +(assert_malformed + (module quote "(func if end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else $l end)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else $l end)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else $l end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if else $l1 end $l2)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else $a end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func if $a else $l end $l)") + "mismatching label" +) diff --git a/test/spec/proposals/multi-value/loop.wast b/test/spec/proposals/multi-value/loop.wast new file mode 100644 index 00000000000..6f7b7884e08 --- /dev/null +++ b/test/spec/proposals/multi-value/loop.wast @@ -0,0 +1,625 @@ +;; Test `loop` opcode + +(module + (func $dummy) + + (func (export "empty") + (loop) + (loop $l) + ) + + (func (export "singular") (result i32) + (loop (nop)) + (loop (result i32) (i32.const 7)) + ) + + (func (export "multi") (result i32) + (loop (call $dummy) (call $dummy) (call $dummy) (call $dummy)) + (loop (result i32) (call $dummy) (call $dummy) (i32.const 8) (call $dummy)) + (drop) + (loop (result i32 i64 i32) + (call $dummy) (call $dummy) (call $dummy) (i32.const 8) (call $dummy) + (call $dummy) (call $dummy) (call $dummy) (i64.const 7) (call $dummy) + (call $dummy) (call $dummy) (call $dummy) (i32.const 9) (call $dummy) + ) + (drop) (drop) + ) + + (func (export "nested") (result i32) + (loop (result i32) + (loop (call $dummy) (block) (nop)) + (loop (result i32) (call $dummy) (i32.const 9)) + ) + ) + + (func (export "deep") (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (loop (result i32) (block (result i32) + (call $dummy) (i32.const 150) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + )) + ) + + (func (export "as-unary-operand") (result i32) + (i32.ctz (loop (result i32) (call $dummy) (i32.const 13))) + ) + (func (export "as-binary-operand") (result i32) + (i32.mul + (loop (result i32) (call $dummy) (i32.const 3)) + (loop (result i32) (call $dummy) (i32.const 4)) + ) + ) + (func (export "as-test-operand") (result i32) + (i32.eqz (loop (result i32) (call $dummy) (i32.const 13))) + ) + (func (export "as-compare-operand") (result i32) + (f32.gt + (loop (result f32) (call $dummy) (f32.const 3)) + (loop (result f32) (call $dummy) (f32.const 3)) + ) + ) + (func (export "as-binary-operands") (result i32) + (i32.mul + (loop (result i32 i32) + (call $dummy) (i32.const 3) (call $dummy) (i32.const 4) + ) + ) + ) + (func (export "as-compare-operands") (result i32) + (f32.gt + (loop (result f32 f32) + (call $dummy) (f32.const 3) (call $dummy) (f32.const 3) + ) + ) + ) + (func (export "as-mixed-operands") (result i32) + (loop (result i32 i32) + (call $dummy) (i32.const 3) (call $dummy) (i32.const 4) + ) + (i32.const 5) + (i32.add) + (i32.mul) + ) + + (func (export "break-bare") (result i32) + (block (loop (br 1) (br 0) (unreachable))) + (block (loop (br_if 1 (i32.const 1)) (unreachable))) + (block (loop (br_table 1 (i32.const 0)) (unreachable))) + (block (loop (br_table 1 1 1 (i32.const 1)) (unreachable))) + (i32.const 19) + ) + (func (export "break-value") (result i32) + (block (result i32) + (i32.const 0) + (loop (param i32) + (block (br 2 (i32.const 18))) + (br 0 (i32.const 20)) + ) + (i32.const 19) + ) + ) + (func (export "break-multi-value") (result i32 i32 i64) + (block (result i32 i32 i64) + (i32.const 0) (i32.const 0) (i64.const 0) + (loop (param i32 i32 i64) + (block (br 2 (i32.const 18) (i32.const -18) (i64.const 18))) + (br 0 (i32.const 20) (i32.const -20) (i64.const 20)) + ) + (i32.const 19) (i32.const -19) (i64.const 19) + ) + ) + (func (export "break-repeated") (result i32) + (block (result i32) + (loop (result i32) + (br 1 (i32.const 18)) + (br 1 (i32.const 19)) + (drop (br_if 1 (i32.const 20) (i32.const 0))) + (drop (br_if 1 (i32.const 20) (i32.const 1))) + (br 1 (i32.const 21)) + (br_table 1 (i32.const 22) (i32.const 0)) + (br_table 1 1 1 (i32.const 23) (i32.const 1)) + (i32.const 21) + ) + ) + ) + (func (export "break-inner") (result i32) + (local i32) + (set_local 0 (i32.const 0)) + (set_local 0 (i32.add (get_local 0) (block (result i32) (loop (result i32) (block (result i32) (br 2 (i32.const 0x1))))))) + (set_local 0 (i32.add (get_local 0) (block (result i32) (loop (result i32) (loop (result i32) (br 2 (i32.const 0x2))))))) + (set_local 0 (i32.add (get_local 0) (block (result i32) (loop (result i32) (block (result i32) (loop (result i32) (br 1 (i32.const 0x4)))))))) + (set_local 0 (i32.add (get_local 0) (block (result i32) (loop (result i32) (i32.ctz (br 1 (i32.const 0x8))))))) + (set_local 0 (i32.add (get_local 0) (block (result i32) (loop (result i32) (i32.ctz (loop (result i32) (br 2 (i32.const 0x10)))))))) + (get_local 0) + ) + (func (export "cont-inner") (result i32) + (local i32) + (set_local 0 (i32.const 0)) + (set_local 0 (i32.add (get_local 0) (loop (result i32) (loop (result i32) (br 1))))) + (set_local 0 (i32.add (get_local 0) (loop (result i32) (i32.ctz (br 0))))) + (set_local 0 (i32.add (get_local 0) (loop (result i32) (i32.ctz (loop (result i32) (br 1)))))) + (get_local 0) + ) + + (func (export "param") (result i32) + (i32.const 1) + (loop (param i32) (result i32) + (i32.const 2) + (i32.add) + ) + ) + (func (export "params") (result i32) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32) + (i32.add) + ) + ) + (func (export "params-id") (result i32) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32 i32)) + (i32.add) + ) + (func (export "param-break") (result i32) + (local $x i32) + (i32.const 1) + (loop (param i32) (result i32) + (i32.const 4) + (i32.add) + (tee_local $x) + (get_local $x) + (i32.const 10) + (i32.lt_u) + (br_if 0) + ) + ) + (func (export "params-break") (result i32) + (local $x i32) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32) + (i32.add) + (tee_local $x) + (i32.const 3) + (get_local $x) + (i32.const 10) + (i32.lt_u) + (br_if 0) + (drop) + ) + ) + (func (export "params-id-break") (result i32) + (local $x i32) + (set_local $x (i32.const 0)) + (i32.const 1) + (i32.const 2) + (loop (param i32 i32) (result i32 i32) + (set_local $x (i32.add (get_local $x) (i32.const 1))) + (br_if 0 (i32.lt_u (get_local $x) (i32.const 10))) + ) + (i32.add) + ) + + (func $fx (export "effects") (result i32) + (local i32) + (block + (loop + (set_local 0 (i32.const 1)) + (set_local 0 (i32.mul (get_local 0) (i32.const 3))) + (set_local 0 (i32.sub (get_local 0) (i32.const 5))) + (set_local 0 (i32.mul (get_local 0) (i32.const 7))) + (br 1) + (set_local 0 (i32.mul (get_local 0) (i32.const 100))) + ) + ) + (i32.eq (get_local 0) (i32.const -14)) + ) + + (func (export "while") (param i64) (result i64) + (local i64) + (set_local 1 (i64.const 1)) + (block + (loop + (br_if 1 (i64.eqz (get_local 0))) + (set_local 1 (i64.mul (get_local 0) (get_local 1))) + (set_local 0 (i64.sub (get_local 0) (i64.const 1))) + (br 0) + ) + ) + (get_local 1) + ) + + (func (export "for") (param i64) (result i64) + (local i64 i64) + (set_local 1 (i64.const 1)) + (set_local 2 (i64.const 2)) + (block + (loop + (br_if 1 (i64.gt_u (get_local 2) (get_local 0))) + (set_local 1 (i64.mul (get_local 1) (get_local 2))) + (set_local 2 (i64.add (get_local 2) (i64.const 1))) + (br 0) + ) + ) + (get_local 1) + ) + + (func (export "nesting") (param f32 f32) (result f32) + (local f32 f32) + (block + (loop + (br_if 1 (f32.eq (get_local 0) (f32.const 0))) + (set_local 2 (get_local 1)) + (block + (loop + (br_if 1 (f32.eq (get_local 2) (f32.const 0))) + (br_if 3 (f32.lt (get_local 2) (f32.const 0))) + (set_local 3 (f32.add (get_local 3) (get_local 2))) + (set_local 2 (f32.sub (get_local 2) (f32.const 2))) + (br 0) + ) + ) + (set_local 3 (f32.div (get_local 3) (get_local 0))) + (set_local 0 (f32.sub (get_local 0) (f32.const 1))) + (br 0) + ) + ) + (get_local 3) + ) + + (type $block-sig-1 (func)) + (type $block-sig-2 (func (result i32))) + (type $block-sig-3 (func (param $x i32))) + (type $block-sig-4 (func (param i32 f64 i32) (result i32 f64 i32))) + + (func (export "type-use") + (loop (type $block-sig-1)) + (loop (type $block-sig-2) (i32.const 0)) + (loop (type $block-sig-3) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (loop (type $block-sig-4)) + (drop) (drop) (drop) + (loop (type $block-sig-2) (result i32) (i32.const 0)) + (loop (type $block-sig-3) (param i32) (drop)) + (i32.const 0) (f64.const 0) (i32.const 0) + (loop (type $block-sig-4) + (param i32) (param f64 i32) (result i32 f64) (result i32) + ) + (drop) (drop) (drop) + ) +) + +(assert_return (invoke "empty")) +(assert_return (invoke "singular") (i32.const 7)) +(assert_return (invoke "multi") (i32.const 8)) +(assert_return (invoke "nested") (i32.const 9)) +(assert_return (invoke "deep") (i32.const 150)) + +(assert_return (invoke "as-unary-operand") (i32.const 0)) +(assert_return (invoke "as-binary-operand") (i32.const 12)) +(assert_return (invoke "as-test-operand") (i32.const 0)) +(assert_return (invoke "as-compare-operand") (i32.const 0)) +(assert_return (invoke "as-binary-operands") (i32.const 12)) +(assert_return (invoke "as-compare-operands") (i32.const 0)) +(assert_return (invoke "as-mixed-operands") (i32.const 27)) + +(assert_return (invoke "break-bare") (i32.const 19)) +(assert_return (invoke "break-value") (i32.const 18)) +(assert_return (invoke "break-multi-value") + (i32.const 18) (i32.const -18) (i64.const 18) +) +(assert_return (invoke "break-repeated") (i32.const 18)) +(assert_return (invoke "break-inner") (i32.const 0x1f)) + +(assert_return (invoke "param") (i32.const 3)) +(assert_return (invoke "params") (i32.const 3)) +(assert_return (invoke "params-id") (i32.const 3)) +(assert_return (invoke "param-break") (i32.const 13)) +(assert_return (invoke "params-break") (i32.const 12)) +(assert_return (invoke "params-id-break") (i32.const 3)) + +(assert_return (invoke "effects") (i32.const 1)) + +(assert_return (invoke "while" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "while" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "while" (i64.const 2)) (i64.const 2)) +(assert_return (invoke "while" (i64.const 3)) (i64.const 6)) +(assert_return (invoke "while" (i64.const 5)) (i64.const 120)) +(assert_return (invoke "while" (i64.const 20)) (i64.const 2432902008176640000)) + +(assert_return (invoke "for" (i64.const 0)) (i64.const 1)) +(assert_return (invoke "for" (i64.const 1)) (i64.const 1)) +(assert_return (invoke "for" (i64.const 2)) (i64.const 2)) +(assert_return (invoke "for" (i64.const 3)) (i64.const 6)) +(assert_return (invoke "for" (i64.const 5)) (i64.const 120)) +(assert_return (invoke "for" (i64.const 20)) (i64.const 2432902008176640000)) + +(assert_return (invoke "nesting" (f32.const 0) (f32.const 7)) (f32.const 0)) +(assert_return (invoke "nesting" (f32.const 7) (f32.const 0)) (f32.const 0)) +(assert_return (invoke "nesting" (f32.const 1) (f32.const 1)) (f32.const 1)) +(assert_return (invoke "nesting" (f32.const 1) (f32.const 2)) (f32.const 2)) +(assert_return (invoke "nesting" (f32.const 1) (f32.const 3)) (f32.const 4)) +(assert_return (invoke "nesting" (f32.const 1) (f32.const 4)) (f32.const 6)) +(assert_return (invoke "nesting" (f32.const 1) (f32.const 100)) (f32.const 2550)) +(assert_return (invoke "nesting" (f32.const 1) (f32.const 101)) (f32.const 2601)) +(assert_return (invoke "nesting" (f32.const 2) (f32.const 1)) (f32.const 1)) +(assert_return (invoke "nesting" (f32.const 3) (f32.const 1)) (f32.const 1)) +(assert_return (invoke "nesting" (f32.const 10) (f32.const 1)) (f32.const 1)) +(assert_return (invoke "nesting" (f32.const 2) (f32.const 2)) (f32.const 3)) +(assert_return (invoke "nesting" (f32.const 2) (f32.const 3)) (f32.const 4)) +(assert_return (invoke "nesting" (f32.const 7) (f32.const 4)) (f32.const 10.3095235825)) +(assert_return (invoke "nesting" (f32.const 7) (f32.const 100)) (f32.const 4381.54785156)) +(assert_return (invoke "nesting" (f32.const 7) (f32.const 101)) (f32.const 2601)) + +(assert_return (invoke "type-use")) + +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (loop (type $sig) (result i32) (param i32)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (loop (param i32) (type $sig) (result i32)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (loop (param i32) (result i32) (type $sig)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (loop (result i32) (type $sig) (param i32)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (loop (result i32) (param i32) (type $sig)))" + ) + "unexpected token" +) +(assert_malformed + (module quote + "(func (i32.const 0) (loop (result i32) (param i32)))" + ) + "unexpected token" +) + +(assert_malformed + (module quote "(func (i32.const 0) (loop (param $x i32) (drop)))") + "unexpected token" +) +(assert_malformed + (module quote + "(type $sig (func))" + "(func (loop (type $sig) (result i32) (i32.const 0)) (unreachable))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (loop (type $sig) (result i32) (i32.const 0)) (unreachable))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32) (result i32)))" + "(func (i32.const 0) (loop (type $sig) (param i32) (drop)) (unreachable))" + ) + "inline function type" +) +(assert_malformed + (module quote + "(type $sig (func (param i32 i32) (result i32)))" + "(func (i32.const 0) (loop (type $sig) (param i32) (result i32)) (unreachable))" + ) + "inline function type" +) + +(assert_invalid + (module + (type $sig (func)) + (func (loop (type $sig) (i32.const 0))) + ) + "type mismatch" +) + +(assert_invalid + (module (func $type-empty-i32 (result i32) (loop))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-i64 (result i64) (loop))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f32 (result f32) (loop))) + "type mismatch" +) +(assert_invalid + (module (func $type-empty-f64 (result f64) (loop))) + "type mismatch" +) + +(assert_invalid + (module (func $type-value-num-vs-void + (loop (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-nums-vs-void + (loop (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-empty-vs-num (result i32) + (loop (result i32)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-empty-vs-nums (result i32 i32) + (loop (result i32 i32)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-num (result i32) + (loop (result i32) (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-nums (result i32 i32) + (loop (result i32 i32) (nop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-num (result i32) + (loop (result i32) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-nums (result i32 i32) + (loop (result i32 i32) (i32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-partial-vs-nums (result i32 i32) + (i32.const 1) (loop (result i32 i32) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-nums-vs-num (result i32) + (loop (result i32) (i32.const 1) (i32.const 2)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-value-unreached-select (result i32) + (loop (result i64) (select (unreachable) (unreachable) (unreachable))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-param-void-vs-num + (loop (param i32) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-void-vs-nums + (loop (param i32 f64) (drop) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num + (f32.const 0) (loop (param i32) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-nums + (f32.const 0) (loop (param f32 i32) (drop) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-nested-void-vs-num + (block (loop (param i32) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-void-vs-nums + (block (loop (param i32 f64) (drop) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num + (block (f32.const 0) (loop (param i32) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-nums + (block (f32.const 0) (loop (param f32 i32) (drop) (drop))) + )) + "type mismatch" +) + +(assert_malformed + (module quote "(func (param i32) (result i32) loop (param $x i32) end)") + "unexpected token" +) +(assert_malformed + (module quote "(func (param i32) (result i32) (loop (param $x i32)))") + "unexpected token" +) + +(assert_malformed + (module quote "(func loop end $l)") + "mismatching label" +) +(assert_malformed + (module quote "(func loop $a end $l)") + "mismatching label" +) diff --git a/test/spec/proposals/multi-value/type.wast b/test/spec/proposals/multi-value/type.wast new file mode 100644 index 00000000000..b94063e6a04 --- /dev/null +++ b/test/spec/proposals/multi-value/type.wast @@ -0,0 +1,50 @@ +;; Test type definitions + +(module + (type (func)) + (type $t (func)) + + (type (func (param i32))) + (type (func (param $x i32))) + (type (func (result i32))) + (type (func (param i32) (result i32))) + (type (func (param $x i32) (result i32))) + + (type (func (param f32 f64))) + (type (func (result i64 f32))) + (type (func (param i32 i64) (result f32 f64))) + + (type (func (param f32) (param f64))) + (type (func (param $x f32) (param f64))) + (type (func (param f32) (param $y f64))) + (type (func (param $x f32) (param $y f64))) + (type (func (result i64) (result f32))) + (type (func (param i32) (param i64) (result f32) (result f64))) + (type (func (param $x i32) (param $y i64) (result f32) (result f64))) + + (type (func (param f32 f64) (param $x i32) (param f64 i32 i32))) + (type (func (result i64 i64 f32) (result f32 i32))) + (type + (func (param i32 i32) (param i64 i32) (result f32 f64) (result f64 i32)) + ) + + (type (func (param) (param $x f32) (param) (param) (param f64 i32) (param))) + (type + (func (result) (result) (result i64 i64) (result) (result f32) (result)) + ) + (type + (func + (param i32 i32) (param i64 i32) (param) (param $x i32) (param) + (result) (result f32 f64) (result f64 i32) (result) + ) + ) +) + +(assert_malformed + (module quote "(type (func (result i32) (param i32)))") + "result before parameter" +) +(assert_malformed + (module quote "(type (func (result $x i32)))") + "unexpected token" +) diff --git a/test/spec/proposals/mutable-global/globals.wast b/test/spec/proposals/mutable-global/globals.wast new file mode 100644 index 00000000000..175af367919 --- /dev/null +++ b/test/spec/proposals/mutable-global/globals.wast @@ -0,0 +1,164 @@ +;; Test globals + +(module + (global $a i32 (i32.const -2)) + (global (;1;) f32 (f32.const -3)) + (global (;2;) f64 (f64.const -4)) + (global $b i64 (i64.const -5)) + + (global $x (mut i32) (i32.const -12)) + (global (;5;) (mut f32) (f32.const -13)) + (global (;6;) (mut f64) (f64.const -14)) + (global $y (mut i64) (i64.const -15)) + + (func (export "get-a") (result i32) (get_global $a)) + (func (export "get-b") (result i64) (get_global $b)) + (func (export "get-x") (result i32) (get_global $x)) + (func (export "get-y") (result i64) (get_global $y)) + (func (export "set-x") (param i32) (set_global $x (get_local 0))) + (func (export "set-y") (param i64) (set_global $y (get_local 0))) + + (func (export "get-1") (result f32) (get_global 1)) + (func (export "get-2") (result f64) (get_global 2)) + (func (export "get-5") (result f32) (get_global 5)) + (func (export "get-6") (result f64) (get_global 6)) + (func (export "set-5") (param f32) (set_global 5 (get_local 0))) + (func (export "set-6") (param f64) (set_global 6 (get_local 0))) +) + +(assert_return (invoke "get-a") (i32.const -2)) +(assert_return (invoke "get-b") (i64.const -5)) +(assert_return (invoke "get-x") (i32.const -12)) +(assert_return (invoke "get-y") (i64.const -15)) + +(assert_return (invoke "get-1") (f32.const -3)) +(assert_return (invoke "get-2") (f64.const -4)) +(assert_return (invoke "get-5") (f32.const -13)) +(assert_return (invoke "get-6") (f64.const -14)) + +(assert_return (invoke "set-x" (i32.const 6))) +(assert_return (invoke "set-y" (i64.const 7))) +(assert_return (invoke "set-5" (f32.const 8))) +(assert_return (invoke "set-6" (f64.const 9))) + +(assert_return (invoke "get-x") (i32.const 6)) +(assert_return (invoke "get-y") (i64.const 7)) +(assert_return (invoke "get-5") (f32.const 8)) +(assert_return (invoke "get-6") (f64.const 9)) + +(assert_invalid + (module (global f32 (f32.const 0)) (func (set_global 0 (i32.const 1)))) + "global is immutable" +) + +;; mutable globals can be exported +(module (global (mut f32) (f32.const 0)) (export "a" (global 0))) +(module (global (export "a") (mut f32) (f32.const 0))) + +(assert_invalid + (module (global f32 (f32.neg (f32.const 0)))) + "constant expression required" +) + +(assert_invalid + (module (global f32 (get_local 0))) + "constant expression required" +) + +(assert_invalid + (module (global f32 (f32.neg (f32.const 1)))) + "constant expression required" +) + +(assert_invalid + (module (global i32 (i32.const 0) (nop))) + "constant expression required" +) + +(assert_invalid + (module (global i32 (nop))) + "constant expression required" +) + +(assert_invalid + (module (global i32 (f32.const 0))) + "type mismatch" +) + +(assert_invalid + (module (global i32 (i32.const 0) (i32.const 0))) + "type mismatch" +) + +(assert_invalid + (module (global i32 (;empty instruction sequence;))) + "type mismatch" +) + +(assert_invalid + (module (global i32 (get_global 0))) + "unknown global" +) + +(assert_invalid + (module (global i32 (get_global 1)) (global i32 (i32.const 0))) + "unknown global" +) + +(module + (import "spectest" "global_i32" (global i32)) +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\94\80\80\80\00" ;; import section + "\01" ;; length 1 + "\08\73\70\65\63\74\65\73\74" ;; "spectest" + "\0a\67\6c\6f\62\61\6c\5f\69\33\32" ;; "global_i32" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\02" ;; invalid mutability + ) + "invalid mutability" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\94\80\80\80\00" ;; import section + "\01" ;; length 1 + "\08\73\70\65\63\74\65\73\74" ;; "spectest" + "\0a\67\6c\6f\62\61\6c\5f\69\33\32" ;; "global_i32" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\ff" ;; invalid mutability + ) + "invalid mutability" +) + +(module + (global i32 (i32.const 0)) +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\86\80\80\80\00" ;; global section + "\01" ;; length 1 + "\7f" ;; i32 + "\02" ;; invalid mutability + "\41\00" ;; i32.const 0 + "\0b" ;; end + ) + "invalid mutability" +) +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\06\86\80\80\80\00" ;; global section + "\01" ;; length 1 + "\7f" ;; i32 + "\ff" ;; invalid mutability + "\41\00" ;; i32.const 0 + "\0b" ;; end + ) + "invalid mutability" +) diff --git a/test/spec/proposals/mutable-global/linking.wast b/test/spec/proposals/mutable-global/linking.wast new file mode 100644 index 00000000000..e2fc8b8f250 --- /dev/null +++ b/test/spec/proposals/mutable-global/linking.wast @@ -0,0 +1,354 @@ +;; Functions + +(module $Mf + (func (export "call") (result i32) (call $g)) + (func $g (result i32) (i32.const 2)) +) +(register "Mf" $Mf) + +(module $Nf + (func $f (import "Mf" "call") (result i32)) + (export "Mf.call" (func $f)) + (func (export "call Mf.call") (result i32) (call $f)) + (func (export "call") (result i32) (call $g)) + (func $g (result i32) (i32.const 3)) +) + +(assert_return (invoke $Mf "call") (i32.const 2)) +(assert_return (invoke $Nf "Mf.call") (i32.const 2)) +(assert_return (invoke $Nf "call") (i32.const 3)) +(assert_return (invoke $Nf "call Mf.call") (i32.const 2)) + +(module + (import "spectest" "print_i32" (func $f (param i32))) + (export "print" (func $f)) +) +(register "reexport_f") +(assert_unlinkable + (module (import "reexport_f" "print" (func (param i64)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "reexport_f" "print" (func (param i32) (result i32)))) + "incompatible import type" +) + + +;; Globals + +(module $Mg + (global $glob (export "glob") i32 (i32.const 42)) + (func (export "get") (result i32) (get_global $glob)) + + ;; export mutable globals + (global $mut_glob (export "mut_glob") (mut i32) (i32.const 142)) + (func (export "get_mut") (result i32) (get_global $mut_glob)) + (func (export "set_mut") (param i32) (set_global $mut_glob (get_local 0))) +) +(register "Mg" $Mg) + +(module $Ng + (global $x (import "Mg" "glob") i32) + (global $mut_glob (import "Mg" "mut_glob") (mut i32)) + (func $f (import "Mg" "get") (result i32)) + (func $get_mut (import "Mg" "get_mut") (result i32)) + (func $set_mut (import "Mg" "set_mut") (param i32)) + + (export "Mg.glob" (global $x)) + (export "Mg.get" (func $f)) + (global $glob (export "glob") i32 (i32.const 43)) + (func (export "get") (result i32) (get_global $glob)) + + (export "Mg.mut_glob" (global $mut_glob)) + (export "Mg.get_mut" (func $get_mut)) + (export "Mg.set_mut" (func $set_mut)) +) + +(assert_return (get $Mg "glob") (i32.const 42)) +(assert_return (get $Ng "Mg.glob") (i32.const 42)) +(assert_return (get $Ng "glob") (i32.const 43)) +(assert_return (invoke $Mg "get") (i32.const 42)) +(assert_return (invoke $Ng "Mg.get") (i32.const 42)) +(assert_return (invoke $Ng "get") (i32.const 43)) + +(assert_return (get $Mg "mut_glob") (i32.const 142)) +(assert_return (get $Ng "Mg.mut_glob") (i32.const 142)) +(assert_return (invoke $Mg "get_mut") (i32.const 142)) +(assert_return (invoke $Ng "Mg.get_mut") (i32.const 142)) + +(assert_return (invoke $Mg "set_mut" (i32.const 241))) +(assert_return (get $Mg "mut_glob") (i32.const 241)) +(assert_return (get $Ng "Mg.mut_glob") (i32.const 241)) +(assert_return (invoke $Mg "get_mut") (i32.const 241)) +(assert_return (invoke $Ng "Mg.get_mut") (i32.const 241)) + + +(assert_unlinkable + (module (import "Mg" "mut_glob" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "Mg" "glob" (global (mut i32)))) + "incompatible import type" +) + +;; Tables + +(module $Mt + (type (func (result i32))) + (type (func)) + + (table (export "tab") 10 anyfunc) + (elem (i32.const 2) $g $g $g $g) + (func $g (result i32) (i32.const 4)) + (func (export "h") (result i32) (i32.const -4)) + + (func (export "call") (param i32) (result i32) + (call_indirect (type 0) (get_local 0)) + ) +) +(register "Mt" $Mt) + +(module $Nt + (type (func)) + (type (func (result i32))) + + (func $f (import "Mt" "call") (param i32) (result i32)) + (func $h (import "Mt" "h") (result i32)) + + (table anyfunc (elem $g $g $g $h $f)) + (func $g (result i32) (i32.const 5)) + + (export "Mt.call" (func $f)) + (func (export "call Mt.call") (param i32) (result i32) + (call $f (get_local 0)) + ) + (func (export "call") (param i32) (result i32) + (call_indirect (type 1) (get_local 0)) + ) +) + +(assert_return (invoke $Mt "call" (i32.const 2)) (i32.const 4)) +(assert_return (invoke $Nt "Mt.call" (i32.const 2)) (i32.const 4)) +(assert_return (invoke $Nt "call" (i32.const 2)) (i32.const 5)) +(assert_return (invoke $Nt "call Mt.call" (i32.const 2)) (i32.const 4)) + +(assert_trap (invoke $Mt "call" (i32.const 1)) "uninitialized") +(assert_trap (invoke $Nt "Mt.call" (i32.const 1)) "uninitialized") +(assert_return (invoke $Nt "call" (i32.const 1)) (i32.const 5)) +(assert_trap (invoke $Nt "call Mt.call" (i32.const 1)) "uninitialized") + +(assert_trap (invoke $Mt "call" (i32.const 0)) "uninitialized") +(assert_trap (invoke $Nt "Mt.call" (i32.const 0)) "uninitialized") +(assert_return (invoke $Nt "call" (i32.const 0)) (i32.const 5)) +(assert_trap (invoke $Nt "call Mt.call" (i32.const 0)) "uninitialized") + +(assert_trap (invoke $Mt "call" (i32.const 20)) "undefined") +(assert_trap (invoke $Nt "Mt.call" (i32.const 20)) "undefined") +(assert_trap (invoke $Nt "call" (i32.const 7)) "undefined") +(assert_trap (invoke $Nt "call Mt.call" (i32.const 20)) "undefined") + +(assert_return (invoke $Nt "call" (i32.const 3)) (i32.const -4)) +(assert_trap (invoke $Nt "call" (i32.const 4)) "indirect call") + +(module $Ot + (type (func (result i32))) + + (func $h (import "Mt" "h") (result i32)) + (table (import "Mt" "tab") 5 anyfunc) + (elem (i32.const 1) $i $h) + (func $i (result i32) (i32.const 6)) + + (func (export "call") (param i32) (result i32) + (call_indirect (type 0) (get_local 0)) + ) +) + +(assert_return (invoke $Mt "call" (i32.const 3)) (i32.const 4)) +(assert_return (invoke $Nt "Mt.call" (i32.const 3)) (i32.const 4)) +(assert_return (invoke $Nt "call Mt.call" (i32.const 3)) (i32.const 4)) +(assert_return (invoke $Ot "call" (i32.const 3)) (i32.const 4)) + +(assert_return (invoke $Mt "call" (i32.const 2)) (i32.const -4)) +(assert_return (invoke $Nt "Mt.call" (i32.const 2)) (i32.const -4)) +(assert_return (invoke $Nt "call" (i32.const 2)) (i32.const 5)) +(assert_return (invoke $Nt "call Mt.call" (i32.const 2)) (i32.const -4)) +(assert_return (invoke $Ot "call" (i32.const 2)) (i32.const -4)) + +(assert_return (invoke $Mt "call" (i32.const 1)) (i32.const 6)) +(assert_return (invoke $Nt "Mt.call" (i32.const 1)) (i32.const 6)) +(assert_return (invoke $Nt "call" (i32.const 1)) (i32.const 5)) +(assert_return (invoke $Nt "call Mt.call" (i32.const 1)) (i32.const 6)) +(assert_return (invoke $Ot "call" (i32.const 1)) (i32.const 6)) + +(assert_trap (invoke $Mt "call" (i32.const 0)) "uninitialized") +(assert_trap (invoke $Nt "Mt.call" (i32.const 0)) "uninitialized") +(assert_return (invoke $Nt "call" (i32.const 0)) (i32.const 5)) +(assert_trap (invoke $Nt "call Mt.call" (i32.const 0)) "uninitialized") +(assert_trap (invoke $Ot "call" (i32.const 0)) "uninitialized") + +(assert_trap (invoke $Ot "call" (i32.const 20)) "undefined") + +(module + (table (import "Mt" "tab") 0 anyfunc) + (elem (i32.const 9) $f) + (func $f) +) + +(module $G1 (global (export "g") i32 (i32.const 5))) +(register "G1" $G1) +(module $G2 + (global (import "G1" "g") i32) + (global (export "g") i32 (get_global 0)) +) +(assert_return (get $G2 "g") (i32.const 5)) + +(assert_unlinkable + (module + (table (import "Mt" "tab") 0 anyfunc) + (elem (i32.const 10) $f) + (func $f) + ) + "elements segment does not fit" +) + +(assert_unlinkable + (module + (table (import "Mt" "tab") 10 anyfunc) + (memory (import "Mt" "mem") 1) ;; does not exist + (func $f (result i32) (i32.const 0)) + (elem (i32.const 7) $f) + (elem (i32.const 9) $f) + ) + "unknown import" +) +(assert_trap (invoke $Mt "call" (i32.const 7)) "uninitialized") + +(assert_unlinkable + (module + (table (import "Mt" "tab") 10 anyfunc) + (func $f (result i32) (i32.const 0)) + (elem (i32.const 7) $f) + (elem (i32.const 12) $f) ;; out of bounds + ) + "elements segment does not fit" +) +(assert_trap (invoke $Mt "call" (i32.const 7)) "uninitialized") + +(assert_unlinkable + (module + (table (import "Mt" "tab") 10 anyfunc) + (func $f (result i32) (i32.const 0)) + (elem (i32.const 7) $f) + (memory 1) + (data (i32.const 0x10000) "d") ;; out of bounds + ) + "data segment does not fit" +) +(assert_trap (invoke $Mt "call" (i32.const 7)) "uninitialized") + + +;; Memories + +(module $Mm + (memory (export "mem") 1 5) + (data (i32.const 10) "\00\01\02\03\04\05\06\07\08\09") + + (func (export "load") (param $a i32) (result i32) + (i32.load8_u (get_local 0)) + ) +) +(register "Mm" $Mm) + +(module $Nm + (func $loadM (import "Mm" "load") (param i32) (result i32)) + + (memory 1) + (data (i32.const 10) "\f0\f1\f2\f3\f4\f5") + + (export "Mm.load" (func $loadM)) + (func (export "load") (param $a i32) (result i32) + (i32.load8_u (get_local 0)) + ) +) + +(assert_return (invoke $Mm "load" (i32.const 12)) (i32.const 2)) +(assert_return (invoke $Nm "Mm.load" (i32.const 12)) (i32.const 2)) +(assert_return (invoke $Nm "load" (i32.const 12)) (i32.const 0xf2)) + +(module $Om + (memory (import "Mm" "mem") 1) + (data (i32.const 5) "\a0\a1\a2\a3\a4\a5\a6\a7") + + (func (export "load") (param $a i32) (result i32) + (i32.load8_u (get_local 0)) + ) +) + +(assert_return (invoke $Mm "load" (i32.const 12)) (i32.const 0xa7)) +(assert_return (invoke $Nm "Mm.load" (i32.const 12)) (i32.const 0xa7)) +(assert_return (invoke $Nm "load" (i32.const 12)) (i32.const 0xf2)) +(assert_return (invoke $Om "load" (i32.const 12)) (i32.const 0xa7)) + +(module + (memory (import "Mm" "mem") 0) + (data (i32.const 0xffff) "a") +) + +(assert_unlinkable + (module + (memory (import "Mm" "mem") 0) + (data (i32.const 0x10000) "a") + ) + "data segment does not fit" +) + +(module $Pm + (memory (import "Mm" "mem") 1 8) + + (func (export "grow") (param $a i32) (result i32) + (memory.grow (get_local 0)) + ) +) + +(assert_return (invoke $Pm "grow" (i32.const 0)) (i32.const 1)) +(assert_return (invoke $Pm "grow" (i32.const 2)) (i32.const 1)) +(assert_return (invoke $Pm "grow" (i32.const 0)) (i32.const 3)) +(assert_return (invoke $Pm "grow" (i32.const 1)) (i32.const 3)) +(assert_return (invoke $Pm "grow" (i32.const 1)) (i32.const 4)) +(assert_return (invoke $Pm "grow" (i32.const 0)) (i32.const 5)) +(assert_return (invoke $Pm "grow" (i32.const 1)) (i32.const -1)) +(assert_return (invoke $Pm "grow" (i32.const 0)) (i32.const 5)) + +(assert_unlinkable + (module + (func $host (import "spectest" "print")) + (memory (import "Mm" "mem") 1) + (table (import "Mm" "tab") 0 anyfunc) ;; does not exist + (data (i32.const 0) "abc") + ) + "unknown import" +) +(assert_return (invoke $Mm "load" (i32.const 0)) (i32.const 0)) + +(assert_unlinkable + (module + (memory (import "Mm" "mem") 1) + (data (i32.const 0) "abc") + (data (i32.const 0x50000) "d") ;; out of bounds + ) + "data segment does not fit" +) +(assert_return (invoke $Mm "load" (i32.const 0)) (i32.const 0)) + +(assert_unlinkable + (module + (memory (import "Mm" "mem") 1) + (data (i32.const 0) "abc") + (table 0 anyfunc) + (func) + (elem (i32.const 0) 0) ;; out of bounds + ) + "elements segment does not fit" +) +(assert_return (invoke $Mm "load" (i32.const 0)) (i32.const 0)) diff --git a/test/spec/proposals/nontrapping-float-to-int-conversions/conversions.wast b/test/spec/proposals/nontrapping-float-to-int-conversions/conversions.wast new file mode 100644 index 00000000000..1e1e0d9d23c --- /dev/null +++ b/test/spec/proposals/nontrapping-float-to-int-conversions/conversions.wast @@ -0,0 +1,659 @@ +(module + (func (export "i64.extend_s_i32") (param $x i32) (result i64) (i64.extend_s/i32 (get_local $x))) + (func (export "i64.extend_u_i32") (param $x i32) (result i64) (i64.extend_u/i32 (get_local $x))) + (func (export "i32.wrap_i64") (param $x i64) (result i32) (i32.wrap/i64 (get_local $x))) + (func (export "i32.trunc_s_f32") (param $x f32) (result i32) (i32.trunc_s/f32 (get_local $x))) + (func (export "i32.trunc_u_f32") (param $x f32) (result i32) (i32.trunc_u/f32 (get_local $x))) + (func (export "i32.trunc_s_f64") (param $x f64) (result i32) (i32.trunc_s/f64 (get_local $x))) + (func (export "i32.trunc_u_f64") (param $x f64) (result i32) (i32.trunc_u/f64 (get_local $x))) + (func (export "i64.trunc_s_f32") (param $x f32) (result i64) (i64.trunc_s/f32 (get_local $x))) + (func (export "i64.trunc_u_f32") (param $x f32) (result i64) (i64.trunc_u/f32 (get_local $x))) + (func (export "i64.trunc_s_f64") (param $x f64) (result i64) (i64.trunc_s/f64 (get_local $x))) + (func (export "i64.trunc_u_f64") (param $x f64) (result i64) (i64.trunc_u/f64 (get_local $x))) + (func (export "i32.trunc_s:sat_f32") (param $x f32) (result i32) (i32.trunc_s:sat/f32 (get_local $x))) + (func (export "i32.trunc_u:sat_f32") (param $x f32) (result i32) (i32.trunc_u:sat/f32 (get_local $x))) + (func (export "i32.trunc_s:sat_f64") (param $x f64) (result i32) (i32.trunc_s:sat/f64 (get_local $x))) + (func (export "i32.trunc_u:sat_f64") (param $x f64) (result i32) (i32.trunc_u:sat/f64 (get_local $x))) + (func (export "i64.trunc_s:sat_f32") (param $x f32) (result i64) (i64.trunc_s:sat/f32 (get_local $x))) + (func (export "i64.trunc_u:sat_f32") (param $x f32) (result i64) (i64.trunc_u:sat/f32 (get_local $x))) + (func (export "i64.trunc_s:sat_f64") (param $x f64) (result i64) (i64.trunc_s:sat/f64 (get_local $x))) + (func (export "i64.trunc_u:sat_f64") (param $x f64) (result i64) (i64.trunc_u:sat/f64 (get_local $x))) + (func (export "f32.convert_s_i32") (param $x i32) (result f32) (f32.convert_s/i32 (get_local $x))) + (func (export "f32.convert_s_i64") (param $x i64) (result f32) (f32.convert_s/i64 (get_local $x))) + (func (export "f64.convert_s_i32") (param $x i32) (result f64) (f64.convert_s/i32 (get_local $x))) + (func (export "f64.convert_s_i64") (param $x i64) (result f64) (f64.convert_s/i64 (get_local $x))) + (func (export "f32.convert_u_i32") (param $x i32) (result f32) (f32.convert_u/i32 (get_local $x))) + (func (export "f32.convert_u_i64") (param $x i64) (result f32) (f32.convert_u/i64 (get_local $x))) + (func (export "f64.convert_u_i32") (param $x i32) (result f64) (f64.convert_u/i32 (get_local $x))) + (func (export "f64.convert_u_i64") (param $x i64) (result f64) (f64.convert_u/i64 (get_local $x))) + (func (export "f64.promote_f32") (param $x f32) (result f64) (f64.promote/f32 (get_local $x))) + (func (export "f32.demote_f64") (param $x f64) (result f32) (f32.demote/f64 (get_local $x))) + (func (export "f32.reinterpret_i32") (param $x i32) (result f32) (f32.reinterpret/i32 (get_local $x))) + (func (export "f64.reinterpret_i64") (param $x i64) (result f64) (f64.reinterpret/i64 (get_local $x))) + (func (export "i32.reinterpret_f32") (param $x f32) (result i32) (i32.reinterpret/f32 (get_local $x))) + (func (export "i64.reinterpret_f64") (param $x f64) (result i64) (i64.reinterpret/f64 (get_local $x))) +) + +(assert_return (invoke "i64.extend_s_i32" (i32.const 0)) (i64.const 0)) +(assert_return (invoke "i64.extend_s_i32" (i32.const 10000)) (i64.const 10000)) +(assert_return (invoke "i64.extend_s_i32" (i32.const -10000)) (i64.const -10000)) +(assert_return (invoke "i64.extend_s_i32" (i32.const -1)) (i64.const -1)) +(assert_return (invoke "i64.extend_s_i32" (i32.const 0x7fffffff)) (i64.const 0x000000007fffffff)) +(assert_return (invoke "i64.extend_s_i32" (i32.const 0x80000000)) (i64.const 0xffffffff80000000)) + +(assert_return (invoke "i64.extend_u_i32" (i32.const 0)) (i64.const 0)) +(assert_return (invoke "i64.extend_u_i32" (i32.const 10000)) (i64.const 10000)) +(assert_return (invoke "i64.extend_u_i32" (i32.const -10000)) (i64.const 0x00000000ffffd8f0)) +(assert_return (invoke "i64.extend_u_i32" (i32.const -1)) (i64.const 0xffffffff)) +(assert_return (invoke "i64.extend_u_i32" (i32.const 0x7fffffff)) (i64.const 0x000000007fffffff)) +(assert_return (invoke "i64.extend_u_i32" (i32.const 0x80000000)) (i64.const 0x0000000080000000)) + +(assert_return (invoke "i32.wrap_i64" (i64.const -1)) (i32.const -1)) +(assert_return (invoke "i32.wrap_i64" (i64.const -100000)) (i32.const -100000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x80000000)) (i32.const 0x80000000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xffffffff7fffffff)) (i32.const 0x7fffffff)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xffffffff00000000)) (i32.const 0x00000000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xfffffffeffffffff)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0xffffffff00000001)) (i32.const 0x00000001)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0)) (i32.const 0)) +(assert_return (invoke "i32.wrap_i64" (i64.const 1311768467463790320)) (i32.const 0x9abcdef0)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x00000000ffffffff)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x0000000100000000)) (i32.const 0x00000000)) +(assert_return (invoke "i32.wrap_i64" (i64.const 0x0000000100000001)) (i32.const 0x00000001)) + +(assert_return (invoke "i32.trunc_s_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 0x1.19999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -1.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -0x1.19999ap+0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -1.5)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -1.9)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -2.0)) (i32.const -2)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const 2147483520.0)) (i32.const 2147483520)) +(assert_return (invoke "i32.trunc_s_f32" (f32.const -2147483648.0)) (i32.const -2147483648)) +(assert_trap (invoke "i32.trunc_s_f32" (f32.const 2147483648.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -2147483904.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i32.trunc_u_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 0x1.19999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 1.9)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 2.0)) (i32.const 2)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const 2147483648)) (i32.const -2147483648)) ;; 0x1.00000p+31 -> 8000 0000 +(assert_return (invoke "i32.trunc_u_f32" (f32.const 4294967040.0)) (i32.const -256)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0x1.ccccccp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f32" (f32.const -0x1.fffffep-1)) (i32.const 0)) +(assert_trap (invoke "i32.trunc_u_f32" (f32.const 4294967296.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -1.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i32.trunc_s_f64" (f64.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 0x1.199999999999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -1.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -0x1.199999999999ap+0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -1.5)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -1.9)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -2.0)) (i32.const -2)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const 2147483647.0)) (i32.const 2147483647)) +(assert_return (invoke "i32.trunc_s_f64" (f64.const -2147483648.0)) (i32.const -2147483648)) +(assert_trap (invoke "i32.trunc_s_f64" (f64.const 2147483648.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -2147483649.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_s_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +(assert_return (invoke "i32.trunc_u_f64" (f64.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 0x1.199999999999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1.9)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 2.0)) (i32.const 2)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 2147483648)) (i32.const -2147483648)) ;; 0x1.00000p+31 -> 8000 0000 +(assert_return (invoke "i32.trunc_u_f64" (f64.const 4294967295.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0x1.ccccccccccccdp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const -0x1.fffffffffffffp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u_f64" (f64.const 1e8)) (i32.const 100000000)) +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 4294967296.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -1.0)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 1e16)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 1e30)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const 9223372036854775808)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i32.trunc_u_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_s_f32" (f32.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 0x1.19999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -1.0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -0x1.19999ap+0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -1.5)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -1.9)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -2.0)) (i64.const -2)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const 4294967296)) (i64.const 4294967296)) ;; 0x1.00000p+32 -> 1 0000 0000 +(assert_return (invoke "i64.trunc_s_f32" (f32.const -4294967296)) (i64.const -4294967296)) ;; -0x1.00000p+32 -> ffff ffff 0000 0000 +(assert_return (invoke "i64.trunc_s_f32" (f32.const 9223371487098961920.0)) (i64.const 9223371487098961920)) +(assert_return (invoke "i64.trunc_s_f32" (f32.const -9223372036854775808.0)) (i64.const -9223372036854775808)) +(assert_trap (invoke "i64.trunc_s_f32" (f32.const 9223372036854775808.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -9223373136366403584.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_u_f32" (f32.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 0x1.19999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 4294967296)) (i64.const 4294967296)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const 18446742974197923840.0)) (i64.const -1099511627776)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0x1.ccccccp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f32" (f32.const -0x1.fffffep-1)) (i64.const 0)) +(assert_trap (invoke "i64.trunc_u_f32" (f32.const 18446744073709551616.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -1.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const nan:0x200000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f32" (f32.const -nan:0x200000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_s_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 0x1.199999999999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -1.0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -0x1.199999999999ap+0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -1.5)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -1.9)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -2.0)) (i64.const -2)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const 4294967296)) (i64.const 4294967296)) ;; 0x1.00000p+32 -> 1 0000 0000 +(assert_return (invoke "i64.trunc_s_f64" (f64.const -4294967296)) (i64.const -4294967296)) ;; -0x1.00000p+32 -> ffff ffff 0000 0000 +(assert_return (invoke "i64.trunc_s_f64" (f64.const 9223372036854774784.0)) (i64.const 9223372036854774784)) +(assert_return (invoke "i64.trunc_s_f64" (f64.const -9223372036854775808.0)) (i64.const -9223372036854775808)) +(assert_trap (invoke "i64.trunc_s_f64" (f64.const 9223372036854775808.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -9223372036854777856.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_s_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +(assert_return (invoke "i64.trunc_u_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 0x1.199999999999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 4294967295)) (i64.const 0xffffffff)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 4294967296)) (i64.const 0x100000000)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 18446744073709549568.0)) (i64.const -2048)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0x1.ccccccccccccdp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const -0x1.fffffffffffffp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1e8)) (i64.const 100000000)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 1e16)) (i64.const 10000000000000000)) +(assert_return (invoke "i64.trunc_u_f64" (f64.const 9223372036854775808)) (i64.const -9223372036854775808)) +(assert_trap (invoke "i64.trunc_u_f64" (f64.const 18446744073709551616.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -1.0)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -inf)) "integer overflow") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const nan:0x4000000000000)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -nan)) "invalid conversion to integer") +(assert_trap (invoke "i64.trunc_u_f64" (f64.const -nan:0x4000000000000)) "invalid conversion to integer") + +;; Saturating conversions: test all the same values as the non-saturating conversions. + +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const 0x1.19999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -1.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -0x1.19999ap+0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -1.5)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -1.9)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -2.0)) (i32.const -2)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const 2147483520.0)) (i32.const 2147483520)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -2147483648.0)) (i32.const -2147483648)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const 2147483648.0)) (i32.const 0x7fffffff)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -2147483904.0)) (i32.const 0x80000000)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const inf)) (i32.const 0x7fffffff)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -inf)) (i32.const 0x80000000)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f32" (f32.const -nan:0x200000)) (i32.const 0)) + +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -0x1p-149)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 0x1.19999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 1.9)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 2.0)) (i32.const 2)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 2147483648)) (i32.const -2147483648)) ;; 0x1.00000p+31 -> 8000 0000 +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 4294967040.0)) (i32.const -256)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -0x1.ccccccp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -0x1.fffffep-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const 4294967296.0)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -1.0)) (i32.const 0x00000000)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const inf)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -inf)) (i32.const 0x00000000)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const nan:0x200000)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f32" (f32.const -nan:0x200000)) (i32.const 0)) + +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const 0x1.199999999999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -1.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -0x1.199999999999ap+0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -1.5)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -1.9)) (i32.const -1)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -2.0)) (i32.const -2)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const 2147483647.0)) (i32.const 2147483647)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -2147483648.0)) (i32.const -2147483648)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const 2147483648.0)) (i32.const 0x7fffffff)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -2147483649.0)) (i32.const 0x80000000)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const inf)) (i32.const 0x7fffffff)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -inf)) (i32.const 0x80000000)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_s:sat_f64" (f64.const -nan:0x4000000000000)) (i32.const 0)) + +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -0.0)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -0x0.0000000000001p-1022)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 1.0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 0x1.199999999999ap+0)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 1.5)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 1.9)) (i32.const 1)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 2.0)) (i32.const 2)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 2147483648)) (i32.const -2147483648)) ;; 0x1.00000p+31 -> 8000 0000 +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 4294967295.0)) (i32.const -1)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -0x1.ccccccccccccdp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -0x1.fffffffffffffp-1)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 1e8)) (i32.const 100000000)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 4294967296.0)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -1.0)) (i32.const 0x00000000)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 1e16)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 1e30)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const 9223372036854775808)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const inf)) (i32.const 0xffffffff)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -inf)) (i32.const 0x00000000)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const nan:0x4000000000000)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -nan)) (i32.const 0)) +(assert_return (invoke "i32.trunc_u:sat_f64" (f64.const -nan:0x4000000000000)) (i32.const 0)) + +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 0x1.19999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -1.0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -0x1.19999ap+0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -1.5)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -1.9)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -2.0)) (i64.const -2)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 4294967296)) (i64.const 4294967296)) ;; 0x1.00000p+32 -> 1 0000 0000 +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -4294967296)) (i64.const -4294967296)) ;; -0x1.00000p+32 -> ffff ffff 0000 0000 +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 9223371487098961920.0)) (i64.const 9223371487098961920)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -9223372036854775808.0)) (i64.const -9223372036854775808)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const 9223372036854775808.0)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -9223373136366403584.0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const inf)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -inf)) (i64.const 0x8000000000000000)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const nan:0x200000)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f32" (f32.const -nan:0x200000)) (i64.const 0)) + +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -0x1p-149)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 0x1.19999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 4294967296)) (i64.const 4294967296)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 18446742974197923840.0)) (i64.const -1099511627776)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -0x1.ccccccp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -0x1.fffffep-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const 18446744073709551616.0)) (i64.const 0xffffffffffffffff)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -1.0)) (i64.const 0x0000000000000000)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const inf)) (i64.const 0xffffffffffffffff)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -inf)) (i64.const 0x0000000000000000)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const nan:0x200000)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f32" (f32.const -nan:0x200000)) (i64.const 0)) + +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 0x1.199999999999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -1.0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -0x1.199999999999ap+0)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -1.5)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -1.9)) (i64.const -1)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -2.0)) (i64.const -2)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 4294967296)) (i64.const 4294967296)) ;; 0x1.00000p+32 -> 1 0000 0000 +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -4294967296)) (i64.const -4294967296)) ;; -0x1.00000p+32 -> ffff ffff 0000 0000 +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 9223372036854774784.0)) (i64.const 9223372036854774784)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -9223372036854775808.0)) (i64.const -9223372036854775808)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const 9223372036854775808.0)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -9223372036854777856.0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const inf)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -inf)) (i64.const 0x8000000000000000)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const nan:0x4000000000000)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_s:sat_f64" (f64.const -nan:0x4000000000000)) (i64.const 0)) + +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -0.0)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 1.0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 0x1.199999999999ap+0)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 1.5)) (i64.const 1)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 4294967295)) (i64.const 0xffffffff)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 4294967296)) (i64.const 0x100000000)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 18446744073709549568.0)) (i64.const -2048)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -0x1.ccccccccccccdp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -0x1.fffffffffffffp-1)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 1e8)) (i64.const 100000000)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 1e16)) (i64.const 10000000000000000)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 9223372036854775808)) (i64.const -9223372036854775808)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const 18446744073709551616.0)) (i64.const 0xffffffffffffffff)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -1.0)) (i64.const 0x0000000000000000)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const inf)) (i64.const 0xffffffffffffffff)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -inf)) (i64.const 0x0000000000000000)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const nan:0x4000000000000)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -nan)) (i64.const 0)) +(assert_return (invoke "i64.trunc_u:sat_f64" (f64.const -nan:0x4000000000000)) (i64.const 0)) + +(assert_return (invoke "f32.convert_s_i32" (i32.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -1)) (f32.const -1.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 2147483647)) (f32.const 2147483648)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -2147483648)) (f32.const -2147483648)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 1234567890)) (f32.const 0x1.26580cp+30)) +;; Test rounding directions. +(assert_return (invoke "f32.convert_s_i32" (i32.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -16777217)) (f32.const -16777216.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const 16777219)) (f32.const 16777220.0)) +(assert_return (invoke "f32.convert_s_i32" (i32.const -16777219)) (f32.const -16777220.0)) + +(assert_return (invoke "f32.convert_s_i64" (i64.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -1)) (f32.const -1.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 9223372036854775807)) (f32.const 9223372036854775807)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -9223372036854775808)) (f32.const -9223372036854775808)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 314159265358979)) (f32.const 0x1.1db9e8p+48)) ;; PI +;; Test rounding directions. +(assert_return (invoke "f32.convert_s_i64" (i64.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -16777217)) (f32.const -16777216.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const 16777219)) (f32.const 16777220.0)) +(assert_return (invoke "f32.convert_s_i64" (i64.const -16777219)) (f32.const -16777220.0)) + +(assert_return (invoke "f64.convert_s_i32" (i32.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_s_i32" (i32.const -1)) (f64.const -1.0)) +(assert_return (invoke "f64.convert_s_i32" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_s_i32" (i32.const 2147483647)) (f64.const 2147483647)) +(assert_return (invoke "f64.convert_s_i32" (i32.const -2147483648)) (f64.const -2147483648)) +(assert_return (invoke "f64.convert_s_i32" (i32.const 987654321)) (f64.const 987654321)) + +(assert_return (invoke "f64.convert_s_i64" (i64.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -1)) (f64.const -1.0)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 9223372036854775807)) (f64.const 9223372036854775807)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -9223372036854775808)) (f64.const -9223372036854775808)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 4669201609102990)) (f64.const 4669201609102990)) ;; Feigenbaum +;; Test rounding directions. +(assert_return (invoke "f64.convert_s_i64" (i64.const 9007199254740993)) (f64.const 9007199254740992)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -9007199254740993)) (f64.const -9007199254740992)) +(assert_return (invoke "f64.convert_s_i64" (i64.const 9007199254740995)) (f64.const 9007199254740996)) +(assert_return (invoke "f64.convert_s_i64" (i64.const -9007199254740995)) (f64.const -9007199254740996)) + +(assert_return (invoke "f32.convert_u_i32" (i32.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 2147483647)) (f32.const 2147483648)) +(assert_return (invoke "f32.convert_u_i32" (i32.const -2147483648)) (f32.const 2147483648)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x12345678)) (f32.const 0x1.234568p+28)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xffffffff)) (f32.const 4294967296.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x80000080)) (f32.const 0x1.000000p+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x80000081)) (f32.const 0x1.000002p+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0x80000082)) (f32.const 0x1.000002p+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xfffffe80)) (f32.const 0x1.fffffcp+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xfffffe81)) (f32.const 0x1.fffffep+31)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 0xfffffe82)) (f32.const 0x1.fffffep+31)) +;; Test rounding directions. +(assert_return (invoke "f32.convert_u_i32" (i32.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_u_i32" (i32.const 16777219)) (f32.const 16777220.0)) + +(assert_return (invoke "f32.convert_u_i64" (i64.const 1)) (f32.const 1.0)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 9223372036854775807)) (f32.const 9223372036854775807)) +(assert_return (invoke "f32.convert_u_i64" (i64.const -9223372036854775808)) (f32.const 9223372036854775808)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 0xffffffffffffffff)) (f32.const 18446744073709551616.0)) +;; Test rounding directions. +(assert_return (invoke "f32.convert_u_i64" (i64.const 16777217)) (f32.const 16777216.0)) +(assert_return (invoke "f32.convert_u_i64" (i64.const 16777219)) (f32.const 16777220.0)) + +(assert_return (invoke "f64.convert_u_i32" (i32.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_u_i32" (i32.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_u_i32" (i32.const 2147483647)) (f64.const 2147483647)) +(assert_return (invoke "f64.convert_u_i32" (i32.const -2147483648)) (f64.const 2147483648)) +(assert_return (invoke "f64.convert_u_i32" (i32.const 0xffffffff)) (f64.const 4294967295.0)) + +(assert_return (invoke "f64.convert_u_i64" (i64.const 1)) (f64.const 1.0)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 9223372036854775807)) (f64.const 9223372036854775807)) +(assert_return (invoke "f64.convert_u_i64" (i64.const -9223372036854775808)) (f64.const 9223372036854775808)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xffffffffffffffff)) (f64.const 18446744073709551616.0)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0x8000000000000400)) (f64.const 0x1.0000000000000p+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0x8000000000000401)) (f64.const 0x1.0000000000001p+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0x8000000000000402)) (f64.const 0x1.0000000000001p+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xfffffffffffff400)) (f64.const 0x1.ffffffffffffep+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xfffffffffffff401)) (f64.const 0x1.fffffffffffffp+63)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 0xfffffffffffff402)) (f64.const 0x1.fffffffffffffp+63)) +;; Test rounding directions. +(assert_return (invoke "f64.convert_u_i64" (i64.const 9007199254740993)) (f64.const 9007199254740992)) +(assert_return (invoke "f64.convert_u_i64" (i64.const 9007199254740995)) (f64.const 9007199254740996)) + +(assert_return (invoke "f64.promote_f32" (f32.const 0.0)) (f64.const 0.0)) +(assert_return (invoke "f64.promote_f32" (f32.const -0.0)) (f64.const -0.0)) +(assert_return (invoke "f64.promote_f32" (f32.const 0x1p-149)) (f64.const 0x1p-149)) +(assert_return (invoke "f64.promote_f32" (f32.const -0x1p-149)) (f64.const -0x1p-149)) +(assert_return (invoke "f64.promote_f32" (f32.const 1.0)) (f64.const 1.0)) +(assert_return (invoke "f64.promote_f32" (f32.const -1.0)) (f64.const -1.0)) +(assert_return (invoke "f64.promote_f32" (f32.const -0x1.fffffep+127)) (f64.const -0x1.fffffep+127)) +(assert_return (invoke "f64.promote_f32" (f32.const 0x1.fffffep+127)) (f64.const 0x1.fffffep+127)) +;; Generated randomly by picking a random int and reinterpret it to float. +(assert_return (invoke "f64.promote_f32" (f32.const 0x1p-119)) (f64.const 0x1p-119)) +;; Generated randomly by picking a random float. +(assert_return (invoke "f64.promote_f32" (f32.const 0x1.8f867ep+125)) (f64.const 6.6382536710104395e+37)) +(assert_return (invoke "f64.promote_f32" (f32.const inf)) (f64.const inf)) +(assert_return (invoke "f64.promote_f32" (f32.const -inf)) (f64.const -inf)) +(assert_return_canonical_nan (invoke "f64.promote_f32" (f32.const nan))) +(assert_return_arithmetic_nan (invoke "f64.promote_f32" (f32.const nan:0x200000))) +(assert_return_canonical_nan (invoke "f64.promote_f32" (f32.const -nan))) +(assert_return_arithmetic_nan (invoke "f64.promote_f32" (f32.const -nan:0x200000))) + +(assert_return (invoke "f32.demote_f64" (f64.const 0.0)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0.0)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x0.0000000000001p-1022)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x0.0000000000001p-1022)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 1.0)) (f32.const 1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -1.0)) (f32.const -1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffe0000000p-127)) (f32.const 0x1p-126)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffe0000000p-127)) (f32.const -0x1p-126)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffdfffffffp-127)) (f32.const 0x1.fffffcp-127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffdfffffffp-127)) (f32.const -0x1.fffffcp-127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1p-149)) (f32.const 0x1p-149)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1p-149)) (f32.const -0x1p-149)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffd0000000p+127)) (f32.const 0x1.fffffcp+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffd0000000p+127)) (f32.const -0x1.fffffcp+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffd0000001p+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffd0000001p+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffep+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffep+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffefffffffp+127)) (f32.const 0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.fffffefffffffp+127)) (f32.const -0x1.fffffep+127)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.ffffffp+127)) (f32.const inf)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.ffffffp+127)) (f32.const -inf)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1p-119)) (f32.const 0x1p-119)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.8f867ep+125)) (f32.const 0x1.8f867ep+125)) +(assert_return (invoke "f32.demote_f64" (f64.const inf)) (f32.const inf)) +(assert_return (invoke "f32.demote_f64" (f64.const -inf)) (f32.const -inf)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000000000001p+0)) (f32.const 1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.fffffffffffffp-1)) (f32.const 1.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000000p+0)) (f32.const 0x1.000000p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000001p+0)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.000002fffffffp+0)) (f32.const 0x1.000002p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000030000000p+0)) (f32.const 0x1.000004p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000050000000p+0)) (f32.const 0x1.000004p+0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000000p+24)) (f32.const 0x1.0p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000010000001p+24)) (f32.const 0x1.000002p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.000002fffffffp+24)) (f32.const 0x1.000002p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000030000000p+24)) (f32.const 0x1.000004p+24)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.4eae4f7024c7p+108)) (f32.const 0x1.4eae5p+108)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.a12e71e358685p-113)) (f32.const 0x1.a12e72p-113)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.cb98354d521ffp-127)) (f32.const 0x1.cb9834p-127)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.6972b30cfb562p+1)) (f32.const -0x1.6972b4p+1)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.bedbe4819d4c4p+112)) (f32.const -0x1.bedbe4p+112)) +(assert_return_canonical_nan (invoke "f32.demote_f64" (f64.const nan))) +(assert_return_arithmetic_nan (invoke "f32.demote_f64" (f64.const nan:0x4000000000000))) +(assert_return_canonical_nan (invoke "f32.demote_f64" (f64.const -nan))) +(assert_return_arithmetic_nan (invoke "f32.demote_f64" (f64.const -nan:0x4000000000000))) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1p-1022)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1p-1022)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0p-150)) (f32.const 0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.0p-150)) (f32.const -0.0)) +(assert_return (invoke "f32.demote_f64" (f64.const 0x1.0000000000001p-150)) (f32.const 0x1p-149)) +(assert_return (invoke "f32.demote_f64" (f64.const -0x1.0000000000001p-150)) (f32.const -0x1p-149)) + +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0)) (f32.const 0.0)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x80000000)) (f32.const -0.0)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 1)) (f32.const 0x1p-149)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const -1)) (f32.const -nan:0x7fffff)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 123456789)) (f32.const 0x1.b79a2ap-113)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const -2147483647)) (f32.const -0x1p-149)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x7f800000)) (f32.const inf)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0xff800000)) (f32.const -inf)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x7fc00000)) (f32.const nan)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0xffc00000)) (f32.const -nan)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0x7fa00000)) (f32.const nan:0x200000)) +(assert_return (invoke "f32.reinterpret_i32" (i32.const 0xffa00000)) (f32.const -nan:0x200000)) + +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0)) (f64.const 0.0)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 1)) (f64.const 0x0.0000000000001p-1022)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const -1)) (f64.const -nan:0xfffffffffffff)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x8000000000000000)) (f64.const -0.0)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 1234567890)) (f64.const 0x0.00000499602d2p-1022)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const -9223372036854775807)) (f64.const -0x0.0000000000001p-1022)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x7ff0000000000000)) (f64.const inf)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0xfff0000000000000)) (f64.const -inf)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x7ff8000000000000)) (f64.const nan)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0xfff8000000000000)) (f64.const -nan)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0x7ff4000000000000)) (f64.const nan:0x4000000000000)) +(assert_return (invoke "f64.reinterpret_i64" (i64.const 0xfff4000000000000)) (f64.const -nan:0x4000000000000)) + +(assert_return (invoke "i32.reinterpret_f32" (f32.const 0.0)) (i32.const 0)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -0.0)) (i32.const 0x80000000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 0x1p-149)) (i32.const 1)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -nan:0x7fffff)) (i32.const -1)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -0x1p-149)) (i32.const 0x80000001)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 1.0)) (i32.const 1065353216)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 3.1415926)) (i32.const 1078530010)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const 0x1.fffffep+127)) (i32.const 2139095039)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -0x1.fffffep+127)) (i32.const -8388609)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const inf)) (i32.const 0x7f800000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -inf)) (i32.const 0xff800000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const nan)) (i32.const 0x7fc00000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -nan)) (i32.const 0xffc00000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const nan:0x200000)) (i32.const 0x7fa00000)) +(assert_return (invoke "i32.reinterpret_f32" (f32.const -nan:0x200000)) (i32.const 0xffa00000)) + +(assert_return (invoke "i64.reinterpret_f64" (f64.const 0.0)) (i64.const 0)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -0.0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 0x0.0000000000001p-1022)) (i64.const 1)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -nan:0xfffffffffffff)) (i64.const -1)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -0x0.0000000000001p-1022)) (i64.const 0x8000000000000001)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 1.0)) (i64.const 4607182418800017408)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 3.14159265358979)) (i64.const 4614256656552045841)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const 0x1.fffffffffffffp+1023)) (i64.const 9218868437227405311)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -0x1.fffffffffffffp+1023)) (i64.const -4503599627370497)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const inf)) (i64.const 0x7ff0000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -inf)) (i64.const 0xfff0000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const nan)) (i64.const 0x7ff8000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -nan)) (i64.const 0xfff8000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const nan:0x4000000000000)) (i64.const 0x7ff4000000000000)) +(assert_return (invoke "i64.reinterpret_f64" (f64.const -nan:0x4000000000000)) (i64.const 0xfff4000000000000)) diff --git a/test/spec/proposals/sign-extension-ops/i32.wast b/test/spec/proposals/sign-extension-ops/i32.wast new file mode 100644 index 00000000000..2357dec8b73 --- /dev/null +++ b/test/spec/proposals/sign-extension-ops/i32.wast @@ -0,0 +1,439 @@ +;; i32 operations + +(module + (func (export "add") (param $x i32) (param $y i32) (result i32) (i32.add (get_local $x) (get_local $y))) + (func (export "sub") (param $x i32) (param $y i32) (result i32) (i32.sub (get_local $x) (get_local $y))) + (func (export "mul") (param $x i32) (param $y i32) (result i32) (i32.mul (get_local $x) (get_local $y))) + (func (export "div_s") (param $x i32) (param $y i32) (result i32) (i32.div_s (get_local $x) (get_local $y))) + (func (export "div_u") (param $x i32) (param $y i32) (result i32) (i32.div_u (get_local $x) (get_local $y))) + (func (export "rem_s") (param $x i32) (param $y i32) (result i32) (i32.rem_s (get_local $x) (get_local $y))) + (func (export "rem_u") (param $x i32) (param $y i32) (result i32) (i32.rem_u (get_local $x) (get_local $y))) + (func (export "and") (param $x i32) (param $y i32) (result i32) (i32.and (get_local $x) (get_local $y))) + (func (export "or") (param $x i32) (param $y i32) (result i32) (i32.or (get_local $x) (get_local $y))) + (func (export "xor") (param $x i32) (param $y i32) (result i32) (i32.xor (get_local $x) (get_local $y))) + (func (export "shl") (param $x i32) (param $y i32) (result i32) (i32.shl (get_local $x) (get_local $y))) + (func (export "shr_s") (param $x i32) (param $y i32) (result i32) (i32.shr_s (get_local $x) (get_local $y))) + (func (export "shr_u") (param $x i32) (param $y i32) (result i32) (i32.shr_u (get_local $x) (get_local $y))) + (func (export "rotl") (param $x i32) (param $y i32) (result i32) (i32.rotl (get_local $x) (get_local $y))) + (func (export "rotr") (param $x i32) (param $y i32) (result i32) (i32.rotr (get_local $x) (get_local $y))) + (func (export "clz") (param $x i32) (result i32) (i32.clz (get_local $x))) + (func (export "ctz") (param $x i32) (result i32) (i32.ctz (get_local $x))) + (func (export "popcnt") (param $x i32) (result i32) (i32.popcnt (get_local $x))) + (func (export "extend8_s") (param $x i32) (result i32) (i32.extend8_s (get_local $x))) + (func (export "extend16_s") (param $x i32) (result i32) (i32.extend16_s (get_local $x))) + (func (export "eqz") (param $x i32) (result i32) (i32.eqz (get_local $x))) + (func (export "eq") (param $x i32) (param $y i32) (result i32) (i32.eq (get_local $x) (get_local $y))) + (func (export "ne") (param $x i32) (param $y i32) (result i32) (i32.ne (get_local $x) (get_local $y))) + (func (export "lt_s") (param $x i32) (param $y i32) (result i32) (i32.lt_s (get_local $x) (get_local $y))) + (func (export "lt_u") (param $x i32) (param $y i32) (result i32) (i32.lt_u (get_local $x) (get_local $y))) + (func (export "le_s") (param $x i32) (param $y i32) (result i32) (i32.le_s (get_local $x) (get_local $y))) + (func (export "le_u") (param $x i32) (param $y i32) (result i32) (i32.le_u (get_local $x) (get_local $y))) + (func (export "gt_s") (param $x i32) (param $y i32) (result i32) (i32.gt_s (get_local $x) (get_local $y))) + (func (export "gt_u") (param $x i32) (param $y i32) (result i32) (i32.gt_u (get_local $x) (get_local $y))) + (func (export "ge_s") (param $x i32) (param $y i32) (result i32) (i32.ge_s (get_local $x) (get_local $y))) + (func (export "ge_u") (param $x i32) (param $y i32) (result i32) (i32.ge_u (get_local $x) (get_local $y))) +) + +(assert_return (invoke "add" (i32.const 1) (i32.const 1)) (i32.const 2)) +(assert_return (invoke "add" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "add" (i32.const -1) (i32.const -1)) (i32.const -2)) +(assert_return (invoke "add" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "add" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0x80000000)) +(assert_return (invoke "add" (i32.const 0x80000000) (i32.const -1)) (i32.const 0x7fffffff)) +(assert_return (invoke "add" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "add" (i32.const 0x3fffffff) (i32.const 1)) (i32.const 0x40000000)) + +(assert_return (invoke "sub" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "sub" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "sub" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "sub" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "sub" (i32.const 0x80000000) (i32.const 1)) (i32.const 0x7fffffff)) +(assert_return (invoke "sub" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "sub" (i32.const 0x3fffffff) (i32.const -1)) (i32.const 0x40000000)) + +(assert_return (invoke "mul" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "mul" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "mul" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "mul" (i32.const 0x10000000) (i32.const 4096)) (i32.const 0)) +(assert_return (invoke "mul" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "mul" (i32.const 0x80000000) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "mul" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0x80000001)) +(assert_return (invoke "mul" (i32.const 0x01234567) (i32.const 0x76543210)) (i32.const 0x358e7470)) +(assert_return (invoke "mul" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) + +(assert_trap (invoke "div_s" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i32.const 0x80000000) (i32.const -1)) "integer overflow") +(assert_return (invoke "div_s" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "div_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "div_s" (i32.const 0) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "div_s" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "div_s" (i32.const 0x80000000) (i32.const 2)) (i32.const 0xc0000000)) +(assert_return (invoke "div_s" (i32.const 0x80000001) (i32.const 1000)) (i32.const 0xffdf3b65)) +(assert_return (invoke "div_s" (i32.const 5) (i32.const 2)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const -5) (i32.const 2)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const 5) (i32.const -2)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const -5) (i32.const -2)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const 7) (i32.const 3)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const -7) (i32.const 3)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const 7) (i32.const -3)) (i32.const -2)) +(assert_return (invoke "div_s" (i32.const -7) (i32.const -3)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const 11) (i32.const 5)) (i32.const 2)) +(assert_return (invoke "div_s" (i32.const 17) (i32.const 7)) (i32.const 2)) + +(assert_trap (invoke "div_u" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "div_u" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_return (invoke "div_u" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "div_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "div_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const 0x80000000) (i32.const 2)) (i32.const 0x40000000)) +(assert_return (invoke "div_u" (i32.const 0x8ff00ff0) (i32.const 0x10001)) (i32.const 0x8fef)) +(assert_return (invoke "div_u" (i32.const 0x80000001) (i32.const 1000)) (i32.const 0x20c49b)) +(assert_return (invoke "div_u" (i32.const 5) (i32.const 2)) (i32.const 2)) +(assert_return (invoke "div_u" (i32.const -5) (i32.const 2)) (i32.const 0x7ffffffd)) +(assert_return (invoke "div_u" (i32.const 5) (i32.const -2)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const -5) (i32.const -2)) (i32.const 0)) +(assert_return (invoke "div_u" (i32.const 7) (i32.const 3)) (i32.const 2)) +(assert_return (invoke "div_u" (i32.const 11) (i32.const 5)) (i32.const 2)) +(assert_return (invoke "div_u" (i32.const 17) (i32.const 7)) (i32.const 2)) + +(assert_trap (invoke "rem_s" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_s" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_return (invoke "rem_s" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0x80000000) (i32.const 2)) (i32.const 0)) +(assert_return (invoke "rem_s" (i32.const 0x80000001) (i32.const 1000)) (i32.const -647)) +(assert_return (invoke "rem_s" (i32.const 5) (i32.const 2)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -5) (i32.const 2)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 5) (i32.const -2)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -5) (i32.const -2)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 7) (i32.const 3)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -7) (i32.const 3)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 7) (i32.const -3)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const -7) (i32.const -3)) (i32.const -1)) +(assert_return (invoke "rem_s" (i32.const 11) (i32.const 5)) (i32.const 1)) +(assert_return (invoke "rem_s" (i32.const 17) (i32.const 7)) (i32.const 3)) + +(assert_trap (invoke "rem_u" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_u" (i32.const 0) (i32.const 0)) "integer divide by zero") +(assert_return (invoke "rem_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "rem_u" (i32.const 0x80000000) (i32.const 2)) (i32.const 0)) +(assert_return (invoke "rem_u" (i32.const 0x8ff00ff0) (i32.const 0x10001)) (i32.const 0x8001)) +(assert_return (invoke "rem_u" (i32.const 0x80000001) (i32.const 1000)) (i32.const 649)) +(assert_return (invoke "rem_u" (i32.const 5) (i32.const 2)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const -5) (i32.const 2)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const 5) (i32.const -2)) (i32.const 5)) +(assert_return (invoke "rem_u" (i32.const -5) (i32.const -2)) (i32.const -5)) +(assert_return (invoke "rem_u" (i32.const 7) (i32.const 3)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const 11) (i32.const 5)) (i32.const 1)) +(assert_return (invoke "rem_u" (i32.const 17) (i32.const 7)) (i32.const 3)) + +(assert_return (invoke "and" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "and" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "and" (i32.const 0x7fffffff) (i32.const -1)) (i32.const 0x7fffffff)) +(assert_return (invoke "and" (i32.const 0xf0f0ffff) (i32.const 0xfffff0f0)) (i32.const 0xf0f0f0f0)) +(assert_return (invoke "and" (i32.const 0xffffffff) (i32.const 0xffffffff)) (i32.const 0xffffffff)) + +(assert_return (invoke "or" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "or" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "or" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "or" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "or" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const -1)) +(assert_return (invoke "or" (i32.const 0x80000000) (i32.const 0)) (i32.const 0x80000000)) +(assert_return (invoke "or" (i32.const 0xf0f0ffff) (i32.const 0xfffff0f0)) (i32.const 0xffffffff)) +(assert_return (invoke "or" (i32.const 0xffffffff) (i32.const 0xffffffff)) (i32.const 0xffffffff)) + +(assert_return (invoke "xor" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "xor" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "xor" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "xor" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "xor" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const -1)) +(assert_return (invoke "xor" (i32.const 0x80000000) (i32.const 0)) (i32.const 0x80000000)) +(assert_return (invoke "xor" (i32.const -1) (i32.const 0x80000000)) (i32.const 0x7fffffff)) +(assert_return (invoke "xor" (i32.const -1) (i32.const 0x7fffffff)) (i32.const 0x80000000)) +(assert_return (invoke "xor" (i32.const 0xf0f0ffff) (i32.const 0xfffff0f0)) (i32.const 0x0f0f0f0f)) +(assert_return (invoke "xor" (i32.const 0xffffffff) (i32.const 0xffffffff)) (i32.const 0)) + +(assert_return (invoke "shl" (i32.const 1) (i32.const 1)) (i32.const 2)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "shl" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0xfffffffe)) +(assert_return (invoke "shl" (i32.const 0xffffffff) (i32.const 1)) (i32.const 0xfffffffe)) +(assert_return (invoke "shl" (i32.const 0x80000000) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "shl" (i32.const 0x40000000) (i32.const 1)) (i32.const 0x80000000)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 31)) (i32.const 0x80000000)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 33)) (i32.const 2)) +(assert_return (invoke "shl" (i32.const 1) (i32.const -1)) (i32.const 0x80000000)) +(assert_return (invoke "shl" (i32.const 1) (i32.const 0x7fffffff)) (i32.const 0x80000000)) + +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 1)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0x3fffffff)) +(assert_return (invoke "shr_s" (i32.const 0x80000000) (i32.const 1)) (i32.const 0xc0000000)) +(assert_return (invoke "shr_s" (i32.const 0x40000000) (i32.const 1)) (i32.const 0x20000000)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 33)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "shr_s" (i32.const 1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "shr_s" (i32.const 0x80000000) (i32.const 31)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 32)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 33)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const -1)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 0x7fffffff)) (i32.const -1)) +(assert_return (invoke "shr_s" (i32.const -1) (i32.const 0x80000000)) (i32.const -1)) + +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 1)) (i32.const 0x7fffffff)) +(assert_return (invoke "shr_u" (i32.const 0x7fffffff) (i32.const 1)) (i32.const 0x3fffffff)) +(assert_return (invoke "shr_u" (i32.const 0x80000000) (i32.const 1)) (i32.const 0x40000000)) +(assert_return (invoke "shr_u" (i32.const 0x40000000) (i32.const 1)) (i32.const 0x20000000)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 33)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "shr_u" (i32.const 1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const 0x80000000) (i32.const 31)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 32)) (i32.const -1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 33)) (i32.const 0x7fffffff)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "shr_u" (i32.const -1) (i32.const 0x80000000)) (i32.const -1)) + +(assert_return (invoke "rotl" (i32.const 1) (i32.const 1)) (i32.const 2)) +(assert_return (invoke "rotl" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "rotl" (i32.const -1) (i32.const 1)) (i32.const -1)) +(assert_return (invoke "rotl" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "rotl" (i32.const 0xabcd9876) (i32.const 1)) (i32.const 0x579b30ed)) +(assert_return (invoke "rotl" (i32.const 0xfe00dc00) (i32.const 4)) (i32.const 0xe00dc00f)) +(assert_return (invoke "rotl" (i32.const 0xb0c1d2e3) (i32.const 5)) (i32.const 0x183a5c76)) +(assert_return (invoke "rotl" (i32.const 0x00008000) (i32.const 37)) (i32.const 0x00100000)) +(assert_return (invoke "rotl" (i32.const 0xb0c1d2e3) (i32.const 0xff05)) (i32.const 0x183a5c76)) +(assert_return (invoke "rotl" (i32.const 0x769abcdf) (i32.const 0xffffffed)) (i32.const 0x579beed3)) +(assert_return (invoke "rotl" (i32.const 0x769abcdf) (i32.const 0x8000000d)) (i32.const 0x579beed3)) +(assert_return (invoke "rotl" (i32.const 1) (i32.const 31)) (i32.const 0x80000000)) +(assert_return (invoke "rotl" (i32.const 0x80000000) (i32.const 1)) (i32.const 1)) + +(assert_return (invoke "rotr" (i32.const 1) (i32.const 1)) (i32.const 0x80000000)) +(assert_return (invoke "rotr" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "rotr" (i32.const -1) (i32.const 1)) (i32.const -1)) +(assert_return (invoke "rotr" (i32.const 1) (i32.const 32)) (i32.const 1)) +(assert_return (invoke "rotr" (i32.const 0xff00cc00) (i32.const 1)) (i32.const 0x7f806600)) +(assert_return (invoke "rotr" (i32.const 0x00080000) (i32.const 4)) (i32.const 0x00008000)) +(assert_return (invoke "rotr" (i32.const 0xb0c1d2e3) (i32.const 5)) (i32.const 0x1d860e97)) +(assert_return (invoke "rotr" (i32.const 0x00008000) (i32.const 37)) (i32.const 0x00000400)) +(assert_return (invoke "rotr" (i32.const 0xb0c1d2e3) (i32.const 0xff05)) (i32.const 0x1d860e97)) +(assert_return (invoke "rotr" (i32.const 0x769abcdf) (i32.const 0xffffffed)) (i32.const 0xe6fbb4d5)) +(assert_return (invoke "rotr" (i32.const 0x769abcdf) (i32.const 0x8000000d)) (i32.const 0xe6fbb4d5)) +(assert_return (invoke "rotr" (i32.const 1) (i32.const 31)) (i32.const 2)) +(assert_return (invoke "rotr" (i32.const 0x80000000) (i32.const 31)) (i32.const 1)) + +(assert_return (invoke "clz" (i32.const 0xffffffff)) (i32.const 0)) +(assert_return (invoke "clz" (i32.const 0)) (i32.const 32)) +(assert_return (invoke "clz" (i32.const 0x00008000)) (i32.const 16)) +(assert_return (invoke "clz" (i32.const 0xff)) (i32.const 24)) +(assert_return (invoke "clz" (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "clz" (i32.const 1)) (i32.const 31)) +(assert_return (invoke "clz" (i32.const 2)) (i32.const 30)) +(assert_return (invoke "clz" (i32.const 0x7fffffff)) (i32.const 1)) + +(assert_return (invoke "ctz" (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ctz" (i32.const 0)) (i32.const 32)) +(assert_return (invoke "ctz" (i32.const 0x00008000)) (i32.const 15)) +(assert_return (invoke "ctz" (i32.const 0x00010000)) (i32.const 16)) +(assert_return (invoke "ctz" (i32.const 0x80000000)) (i32.const 31)) +(assert_return (invoke "ctz" (i32.const 0x7fffffff)) (i32.const 0)) + +(assert_return (invoke "popcnt" (i32.const -1)) (i32.const 32)) +(assert_return (invoke "popcnt" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "popcnt" (i32.const 0x00008000)) (i32.const 1)) +(assert_return (invoke "popcnt" (i32.const 0x80008000)) (i32.const 2)) +(assert_return (invoke "popcnt" (i32.const 0x7fffffff)) (i32.const 31)) +(assert_return (invoke "popcnt" (i32.const 0xAAAAAAAA)) (i32.const 16)) +(assert_return (invoke "popcnt" (i32.const 0x55555555)) (i32.const 16)) +(assert_return (invoke "popcnt" (i32.const 0xDEADBEEF)) (i32.const 24)) + +(assert_return (invoke "extend8_s" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "extend8_s" (i32.const 0x7f)) (i32.const 127)) +(assert_return (invoke "extend8_s" (i32.const 0x80)) (i32.const -128)) +(assert_return (invoke "extend8_s" (i32.const 0xff)) (i32.const -1)) +(assert_return (invoke "extend8_s" (i32.const 0x012345_00)) (i32.const 0)) +(assert_return (invoke "extend8_s" (i32.const 0xfedcba_80)) (i32.const -0x80)) +(assert_return (invoke "extend8_s" (i32.const -1)) (i32.const -1)) + +(assert_return (invoke "extend16_s" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "extend16_s" (i32.const 0x7fff)) (i32.const 32767)) +(assert_return (invoke "extend16_s" (i32.const 0x8000)) (i32.const -32768)) +(assert_return (invoke "extend16_s" (i32.const 0xffff)) (i32.const -1)) +(assert_return (invoke "extend16_s" (i32.const 0x0123_0000)) (i32.const 0)) +(assert_return (invoke "extend16_s" (i32.const 0xfedc_8000)) (i32.const -0x8000)) +(assert_return (invoke "extend16_s" (i32.const -1)) (i32.const -1)) + +(assert_return (invoke "eqz" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "eqz" (i32.const 1)) (i32.const 0)) +(assert_return (invoke "eqz" (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "eqz" (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "eqz" (i32.const 0xffffffff)) (i32.const 0)) + +(assert_return (invoke "eq" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "eq" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "eq" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "ne" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ne" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ne" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "lt_s" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "lt_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "lt_u" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "le_s" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "le_s" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "le_u" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 1) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "le_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "gt_s" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "gt_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "gt_u" (i32.const 0) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const -1) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "gt_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) + +(assert_return (invoke "ge_s" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const -1) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const 0)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 0)) +(assert_return (invoke "ge_s" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 1)) + +(assert_return (invoke "ge_u" (i32.const 0) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const -1) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x7fffffff) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const -1) (i32.const -1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0) (i32.const 1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0) (i32.const 0x80000000)) (i32.const 0)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const -1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i32.const -1) (i32.const 0x80000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x80000000) (i32.const 0x7fffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i32.const 0x7fffffff) (i32.const 0x80000000)) (i32.const 0)) diff --git a/test/spec/proposals/sign-extension-ops/i64.wast b/test/spec/proposals/sign-extension-ops/i64.wast new file mode 100644 index 00000000000..9454171d4ad --- /dev/null +++ b/test/spec/proposals/sign-extension-ops/i64.wast @@ -0,0 +1,451 @@ +;; i64 operations + +(module + (func (export "add") (param $x i64) (param $y i64) (result i64) (i64.add (get_local $x) (get_local $y))) + (func (export "sub") (param $x i64) (param $y i64) (result i64) (i64.sub (get_local $x) (get_local $y))) + (func (export "mul") (param $x i64) (param $y i64) (result i64) (i64.mul (get_local $x) (get_local $y))) + (func (export "div_s") (param $x i64) (param $y i64) (result i64) (i64.div_s (get_local $x) (get_local $y))) + (func (export "div_u") (param $x i64) (param $y i64) (result i64) (i64.div_u (get_local $x) (get_local $y))) + (func (export "rem_s") (param $x i64) (param $y i64) (result i64) (i64.rem_s (get_local $x) (get_local $y))) + (func (export "rem_u") (param $x i64) (param $y i64) (result i64) (i64.rem_u (get_local $x) (get_local $y))) + (func (export "and") (param $x i64) (param $y i64) (result i64) (i64.and (get_local $x) (get_local $y))) + (func (export "or") (param $x i64) (param $y i64) (result i64) (i64.or (get_local $x) (get_local $y))) + (func (export "xor") (param $x i64) (param $y i64) (result i64) (i64.xor (get_local $x) (get_local $y))) + (func (export "shl") (param $x i64) (param $y i64) (result i64) (i64.shl (get_local $x) (get_local $y))) + (func (export "shr_s") (param $x i64) (param $y i64) (result i64) (i64.shr_s (get_local $x) (get_local $y))) + (func (export "shr_u") (param $x i64) (param $y i64) (result i64) (i64.shr_u (get_local $x) (get_local $y))) + (func (export "rotl") (param $x i64) (param $y i64) (result i64) (i64.rotl (get_local $x) (get_local $y))) + (func (export "rotr") (param $x i64) (param $y i64) (result i64) (i64.rotr (get_local $x) (get_local $y))) + (func (export "clz") (param $x i64) (result i64) (i64.clz (get_local $x))) + (func (export "ctz") (param $x i64) (result i64) (i64.ctz (get_local $x))) + (func (export "popcnt") (param $x i64) (result i64) (i64.popcnt (get_local $x))) + (func (export "extend8_s") (param $x i64) (result i64) (i64.extend8_s (get_local $x))) + (func (export "extend16_s") (param $x i64) (result i64) (i64.extend16_s (get_local $x))) + (func (export "extend32_s") (param $x i64) (result i64) (i64.extend32_s (get_local $x))) + (func (export "eqz") (param $x i64) (result i32) (i64.eqz (get_local $x))) + (func (export "eq") (param $x i64) (param $y i64) (result i32) (i64.eq (get_local $x) (get_local $y))) + (func (export "ne") (param $x i64) (param $y i64) (result i32) (i64.ne (get_local $x) (get_local $y))) + (func (export "lt_s") (param $x i64) (param $y i64) (result i32) (i64.lt_s (get_local $x) (get_local $y))) + (func (export "lt_u") (param $x i64) (param $y i64) (result i32) (i64.lt_u (get_local $x) (get_local $y))) + (func (export "le_s") (param $x i64) (param $y i64) (result i32) (i64.le_s (get_local $x) (get_local $y))) + (func (export "le_u") (param $x i64) (param $y i64) (result i32) (i64.le_u (get_local $x) (get_local $y))) + (func (export "gt_s") (param $x i64) (param $y i64) (result i32) (i64.gt_s (get_local $x) (get_local $y))) + (func (export "gt_u") (param $x i64) (param $y i64) (result i32) (i64.gt_u (get_local $x) (get_local $y))) + (func (export "ge_s") (param $x i64) (param $y i64) (result i32) (i64.ge_s (get_local $x) (get_local $y))) + (func (export "ge_u") (param $x i64) (param $y i64) (result i32) (i64.ge_u (get_local $x) (get_local $y))) +) + +(assert_return (invoke "add" (i64.const 1) (i64.const 1)) (i64.const 2)) +(assert_return (invoke "add" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "add" (i64.const -1) (i64.const -1)) (i64.const -2)) +(assert_return (invoke "add" (i64.const -1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "add" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "add" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "add" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "add" (i64.const 0x3fffffff) (i64.const 1)) (i64.const 0x40000000)) + +(assert_return (invoke "sub" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "sub" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "sub" (i64.const -1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "sub" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "sub" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "sub" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "sub" (i64.const 0x3fffffff) (i64.const -1)) (i64.const 0x40000000)) + +(assert_return (invoke "mul" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "mul" (i64.const 1) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "mul" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "mul" (i64.const 0x1000000000000000) (i64.const 4096)) (i64.const 0)) +(assert_return (invoke "mul" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "mul" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "mul" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x8000000000000001)) +(assert_return (invoke "mul" (i64.const 0x0123456789abcdef) (i64.const 0xfedcba9876543210)) (i64.const 0x2236d88fe5618cf0)) +(assert_return (invoke "mul" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i64.const 1)) + +(assert_trap (invoke "div_s" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "div_s" (i64.const 0x8000000000000000) (i64.const -1)) "integer overflow") +(assert_return (invoke "div_s" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "div_s" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "div_s" (i64.const 0) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "div_s" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "div_s" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0xc000000000000000)) +(assert_return (invoke "div_s" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 0xffdf3b645a1cac09)) +(assert_return (invoke "div_s" (i64.const 5) (i64.const 2)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const -5) (i64.const 2)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const 5) (i64.const -2)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const -5) (i64.const -2)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const 7) (i64.const 3)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const -7) (i64.const 3)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const 7) (i64.const -3)) (i64.const -2)) +(assert_return (invoke "div_s" (i64.const -7) (i64.const -3)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const 11) (i64.const 5)) (i64.const 2)) +(assert_return (invoke "div_s" (i64.const 17) (i64.const 7)) (i64.const 2)) + +(assert_trap (invoke "div_u" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "div_u" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_return (invoke "div_u" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "div_u" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "div_u" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0x4000000000000000)) +(assert_return (invoke "div_u" (i64.const 0x8ff00ff00ff00ff0) (i64.const 0x100000001)) (i64.const 0x8ff00fef)) +(assert_return (invoke "div_u" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 0x20c49ba5e353f7)) +(assert_return (invoke "div_u" (i64.const 5) (i64.const 2)) (i64.const 2)) +(assert_return (invoke "div_u" (i64.const -5) (i64.const 2)) (i64.const 0x7ffffffffffffffd)) +(assert_return (invoke "div_u" (i64.const 5) (i64.const -2)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const -5) (i64.const -2)) (i64.const 0)) +(assert_return (invoke "div_u" (i64.const 7) (i64.const 3)) (i64.const 2)) +(assert_return (invoke "div_u" (i64.const 11) (i64.const 5)) (i64.const 2)) +(assert_return (invoke "div_u" (i64.const 17) (i64.const 7)) (i64.const 2)) + +(assert_trap (invoke "rem_s" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_s" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_return (invoke "rem_s" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const -1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0)) +(assert_return (invoke "rem_s" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const -807)) +(assert_return (invoke "rem_s" (i64.const 5) (i64.const 2)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -5) (i64.const 2)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 5) (i64.const -2)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -5) (i64.const -2)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 7) (i64.const 3)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -7) (i64.const 3)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 7) (i64.const -3)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const -7) (i64.const -3)) (i64.const -1)) +(assert_return (invoke "rem_s" (i64.const 11) (i64.const 5)) (i64.const 1)) +(assert_return (invoke "rem_s" (i64.const 17) (i64.const 7)) (i64.const 3)) + +(assert_trap (invoke "rem_u" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "rem_u" (i64.const 0) (i64.const 0)) "integer divide by zero") +(assert_return (invoke "rem_u" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const -1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const 0x8000000000000000) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "rem_u" (i64.const 0x8000000000000000) (i64.const 2)) (i64.const 0)) +(assert_return (invoke "rem_u" (i64.const 0x8ff00ff00ff00ff0) (i64.const 0x100000001)) (i64.const 0x80000001)) +(assert_return (invoke "rem_u" (i64.const 0x8000000000000001) (i64.const 1000)) (i64.const 809)) +(assert_return (invoke "rem_u" (i64.const 5) (i64.const 2)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const -5) (i64.const 2)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const 5) (i64.const -2)) (i64.const 5)) +(assert_return (invoke "rem_u" (i64.const -5) (i64.const -2)) (i64.const -5)) +(assert_return (invoke "rem_u" (i64.const 7) (i64.const 3)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const 11) (i64.const 5)) (i64.const 1)) +(assert_return (invoke "rem_u" (i64.const 17) (i64.const 7)) (i64.const 3)) + +(assert_return (invoke "and" (i64.const 1) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 0) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "and" (i64.const 0) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "and" (i64.const 0x7fffffffffffffff) (i64.const -1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "and" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0xf0f0f0f0)) +(assert_return (invoke "and" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0xffffffffffffffff)) + +(assert_return (invoke "or" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "or" (i64.const 0) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "or" (i64.const 1) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "or" (i64.const 0) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "or" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const -1)) +(assert_return (invoke "or" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "or" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0xffffffff)) +(assert_return (invoke "or" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0xffffffffffffffff)) + +(assert_return (invoke "xor" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "xor" (i64.const 0) (i64.const 1)) (i64.const 1)) +(assert_return (invoke "xor" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "xor" (i64.const 0) (i64.const 0)) (i64.const 0)) +(assert_return (invoke "xor" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i64.const -1)) +(assert_return (invoke "xor" (i64.const 0x8000000000000000) (i64.const 0)) (i64.const 0x8000000000000000)) +(assert_return (invoke "xor" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "xor" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const 0x8000000000000000)) +(assert_return (invoke "xor" (i64.const 0xf0f0ffff) (i64.const 0xfffff0f0)) (i64.const 0x0f0f0f0f)) +(assert_return (invoke "xor" (i64.const 0xffffffffffffffff) (i64.const 0xffffffffffffffff)) (i64.const 0)) + +(assert_return (invoke "shl" (i64.const 1) (i64.const 1)) (i64.const 2)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "shl" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0xfffffffffffffffe)) +(assert_return (invoke "shl" (i64.const 0xffffffffffffffff) (i64.const 1)) (i64.const 0xfffffffffffffffe)) +(assert_return (invoke "shl" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "shl" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 63)) (i64.const 0x8000000000000000)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 65)) (i64.const 2)) +(assert_return (invoke "shl" (i64.const 1) (i64.const -1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "shl" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0x8000000000000000)) + +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 1)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x3fffffffffffffff)) +(assert_return (invoke "shr_s" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0xc000000000000000)) +(assert_return (invoke "shr_s" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x2000000000000000)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 65)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0)) +(assert_return (invoke "shr_s" (i64.const 1) (i64.const 0x8000000000000000)) (i64.const 1)) +(assert_return (invoke "shr_s" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 64)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 65)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const -1)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const -1)) +(assert_return (invoke "shr_s" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const -1)) + +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 1)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 1)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "shr_u" (i64.const 0x7fffffffffffffff) (i64.const 1)) (i64.const 0x3fffffffffffffff)) +(assert_return (invoke "shr_u" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 0x4000000000000000)) +(assert_return (invoke "shr_u" (i64.const 0x4000000000000000) (i64.const 1)) (i64.const 0x2000000000000000)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 65)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const -1)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 0x7fffffffffffffff)) (i64.const 0)) +(assert_return (invoke "shr_u" (i64.const 1) (i64.const 0x8000000000000000)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 64)) (i64.const -1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 65)) (i64.const 0x7fffffffffffffff)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const -1)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 0x7fffffffffffffff)) (i64.const 1)) +(assert_return (invoke "shr_u" (i64.const -1) (i64.const 0x8000000000000000)) (i64.const -1)) + +(assert_return (invoke "rotl" (i64.const 1) (i64.const 1)) (i64.const 2)) +(assert_return (invoke "rotl" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "rotl" (i64.const -1) (i64.const 1)) (i64.const -1)) +(assert_return (invoke "rotl" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "rotl" (i64.const 0xabcd987602468ace) (i64.const 1)) (i64.const 0x579b30ec048d159d)) +(assert_return (invoke "rotl" (i64.const 0xfe000000dc000000) (i64.const 4)) (i64.const 0xe000000dc000000f)) +(assert_return (invoke "rotl" (i64.const 0xabcd1234ef567809) (i64.const 53)) (i64.const 0x013579a2469deacf)) +(assert_return (invoke "rotl" (i64.const 0xabd1234ef567809c) (i64.const 63)) (i64.const 0x55e891a77ab3c04e)) +(assert_return (invoke "rotl" (i64.const 0xabcd1234ef567809) (i64.const 0xf5)) (i64.const 0x013579a2469deacf)) +(assert_return (invoke "rotl" (i64.const 0xabcd7294ef567809) (i64.const 0xffffffffffffffed)) (i64.const 0xcf013579ae529dea)) +(assert_return (invoke "rotl" (i64.const 0xabd1234ef567809c) (i64.const 0x800000000000003f)) (i64.const 0x55e891a77ab3c04e)) +(assert_return (invoke "rotl" (i64.const 1) (i64.const 63)) (i64.const 0x8000000000000000)) +(assert_return (invoke "rotl" (i64.const 0x8000000000000000) (i64.const 1)) (i64.const 1)) + +(assert_return (invoke "rotr" (i64.const 1) (i64.const 1)) (i64.const 0x8000000000000000)) +(assert_return (invoke "rotr" (i64.const 1) (i64.const 0)) (i64.const 1)) +(assert_return (invoke "rotr" (i64.const -1) (i64.const 1)) (i64.const -1)) +(assert_return (invoke "rotr" (i64.const 1) (i64.const 64)) (i64.const 1)) +(assert_return (invoke "rotr" (i64.const 0xabcd987602468ace) (i64.const 1)) (i64.const 0x55e6cc3b01234567)) +(assert_return (invoke "rotr" (i64.const 0xfe000000dc000000) (i64.const 4)) (i64.const 0x0fe000000dc00000)) +(assert_return (invoke "rotr" (i64.const 0xabcd1234ef567809) (i64.const 53)) (i64.const 0x6891a77ab3c04d5e)) +(assert_return (invoke "rotr" (i64.const 0xabd1234ef567809c) (i64.const 63)) (i64.const 0x57a2469deacf0139)) +(assert_return (invoke "rotr" (i64.const 0xabcd1234ef567809) (i64.const 0xf5)) (i64.const 0x6891a77ab3c04d5e)) +(assert_return (invoke "rotr" (i64.const 0xabcd7294ef567809) (i64.const 0xffffffffffffffed)) (i64.const 0x94a77ab3c04d5e6b)) +(assert_return (invoke "rotr" (i64.const 0xabd1234ef567809c) (i64.const 0x800000000000003f)) (i64.const 0x57a2469deacf0139)) +(assert_return (invoke "rotr" (i64.const 1) (i64.const 63)) (i64.const 2)) +(assert_return (invoke "rotr" (i64.const 0x8000000000000000) (i64.const 63)) (i64.const 1)) + +(assert_return (invoke "clz" (i64.const 0xffffffffffffffff)) (i64.const 0)) +(assert_return (invoke "clz" (i64.const 0)) (i64.const 64)) +(assert_return (invoke "clz" (i64.const 0x00008000)) (i64.const 48)) +(assert_return (invoke "clz" (i64.const 0xff)) (i64.const 56)) +(assert_return (invoke "clz" (i64.const 0x8000000000000000)) (i64.const 0)) +(assert_return (invoke "clz" (i64.const 1)) (i64.const 63)) +(assert_return (invoke "clz" (i64.const 2)) (i64.const 62)) +(assert_return (invoke "clz" (i64.const 0x7fffffffffffffff)) (i64.const 1)) + +(assert_return (invoke "ctz" (i64.const -1)) (i64.const 0)) +(assert_return (invoke "ctz" (i64.const 0)) (i64.const 64)) +(assert_return (invoke "ctz" (i64.const 0x00008000)) (i64.const 15)) +(assert_return (invoke "ctz" (i64.const 0x00010000)) (i64.const 16)) +(assert_return (invoke "ctz" (i64.const 0x8000000000000000)) (i64.const 63)) +(assert_return (invoke "ctz" (i64.const 0x7fffffffffffffff)) (i64.const 0)) + +(assert_return (invoke "popcnt" (i64.const -1)) (i64.const 64)) +(assert_return (invoke "popcnt" (i64.const 0)) (i64.const 0)) +(assert_return (invoke "popcnt" (i64.const 0x00008000)) (i64.const 1)) +(assert_return (invoke "popcnt" (i64.const 0x8000800080008000)) (i64.const 4)) +(assert_return (invoke "popcnt" (i64.const 0x7fffffffffffffff)) (i64.const 63)) +(assert_return (invoke "popcnt" (i64.const 0xAAAAAAAA55555555)) (i64.const 32)) +(assert_return (invoke "popcnt" (i64.const 0x99999999AAAAAAAA)) (i64.const 32)) +(assert_return (invoke "popcnt" (i64.const 0xDEADBEEFDEADBEEF)) (i64.const 48)) + +(assert_return (invoke "extend8_s" (i64.const 0)) (i64.const 0)) +(assert_return (invoke "extend8_s" (i64.const 0x7f)) (i64.const 127)) +(assert_return (invoke "extend8_s" (i64.const 0x80)) (i64.const -128)) +(assert_return (invoke "extend8_s" (i64.const 0xff)) (i64.const -1)) +(assert_return (invoke "extend8_s" (i64.const 0x01234567_89abcd_00)) (i64.const 0)) +(assert_return (invoke "extend8_s" (i64.const 0xfedcba98_765432_80)) (i64.const -0x80)) +(assert_return (invoke "extend8_s" (i64.const -1)) (i64.const -1)) + +(assert_return (invoke "extend16_s" (i64.const 0)) (i64.const 0)) +(assert_return (invoke "extend16_s" (i64.const 0x7fff)) (i64.const 32767)) +(assert_return (invoke "extend16_s" (i64.const 0x8000)) (i64.const -32768)) +(assert_return (invoke "extend16_s" (i64.const 0xffff)) (i64.const -1)) +(assert_return (invoke "extend16_s" (i64.const 0x12345678_9abc_0000)) (i64.const 0)) +(assert_return (invoke "extend16_s" (i64.const 0xfedcba98_7654_8000)) (i64.const -0x8000)) +(assert_return (invoke "extend16_s" (i64.const -1)) (i64.const -1)) + +(assert_return (invoke "extend32_s" (i64.const 0)) (i64.const 0)) +(assert_return (invoke "extend32_s" (i64.const 0x7fff)) (i64.const 32767)) +(assert_return (invoke "extend32_s" (i64.const 0x8000)) (i64.const 32768)) +(assert_return (invoke "extend32_s" (i64.const 0xffff)) (i64.const 65535)) +(assert_return (invoke "extend32_s" (i64.const 0x7fffffff)) (i64.const 0x7fffffff)) +(assert_return (invoke "extend32_s" (i64.const 0x80000000)) (i64.const -0x80000000)) +(assert_return (invoke "extend32_s" (i64.const 0xffffffff)) (i64.const -1)) +(assert_return (invoke "extend32_s" (i64.const 0x01234567_00000000)) (i64.const 0)) +(assert_return (invoke "extend32_s" (i64.const 0xfedcba98_80000000)) (i64.const -0x80000000)) +(assert_return (invoke "extend32_s" (i64.const -1)) (i64.const -1)) + +(assert_return (invoke "eqz" (i64.const 0)) (i32.const 1)) +(assert_return (invoke "eqz" (i64.const 1)) (i32.const 0)) +(assert_return (invoke "eqz" (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "eqz" (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "eqz" (i64.const 0xffffffffffffffff)) (i32.const 0)) + +(assert_return (invoke "eq" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "eq" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "eq" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "ne" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "ne" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ne" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "lt_s" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "lt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "lt_u" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "lt_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "lt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "le_s" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "le_s" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "le_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "le_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "le_u" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 1) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "le_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "le_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "gt_s" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "gt_s" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "gt_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "gt_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "gt_u" (i64.const 0) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const -1) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "gt_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "gt_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) + +(assert_return (invoke "ge_s" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const -1) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_s" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 0)) +(assert_return (invoke "ge_s" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 1)) + +(assert_return (invoke "ge_u" (i64.const 0) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const -1) (i64.const 1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x7fffffffffffffff) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const -1) (i64.const -1)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 1) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0) (i64.const 1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0) (i64.const 0x8000000000000000)) (i32.const 0)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const -1)) (i32.const 0)) +(assert_return (invoke "ge_u" (i64.const -1) (i64.const 0x8000000000000000)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x8000000000000000) (i64.const 0x7fffffffffffffff)) (i32.const 1)) +(assert_return (invoke "ge_u" (i64.const 0x7fffffffffffffff) (i64.const 0x8000000000000000)) (i32.const 0)) diff --git a/test/spec/proposals/threads/atomic.wast b/test/spec/proposals/threads/atomic.wast new file mode 100644 index 00000000000..a2fa40b8df4 --- /dev/null +++ b/test/spec/proposals/threads/atomic.wast @@ -0,0 +1,466 @@ +;; atomic operations + +(module + (memory 1 1 shared) + + (func (export "init") (param $value i64) (i64.store (i32.const 0) (get_local $value))) + + (func (export "i32.atomic.load") (param $addr i32) (result i32) (i32.atomic.load (get_local $addr))) + (func (export "i64.atomic.load") (param $addr i32) (result i64) (i64.atomic.load (get_local $addr))) + (func (export "i32.atomic.load8_u") (param $addr i32) (result i32) (i32.atomic.load8_u (get_local $addr))) + (func (export "i32.atomic.load16_u") (param $addr i32) (result i32) (i32.atomic.load16_u (get_local $addr))) + (func (export "i64.atomic.load8_u") (param $addr i32) (result i64) (i64.atomic.load8_u (get_local $addr))) + (func (export "i64.atomic.load16_u") (param $addr i32) (result i64) (i64.atomic.load16_u (get_local $addr))) + (func (export "i64.atomic.load32_u") (param $addr i32) (result i64) (i64.atomic.load32_u (get_local $addr))) + + (func (export "i32.atomic.store") (param $addr i32) (param $value i32) (i32.atomic.store (get_local $addr) (get_local $value))) + (func (export "i64.atomic.store") (param $addr i32) (param $value i64) (i64.atomic.store (get_local $addr) (get_local $value))) + (func (export "i32.atomic.store8") (param $addr i32) (param $value i32) (i32.atomic.store8 (get_local $addr) (get_local $value))) + (func (export "i32.atomic.store16") (param $addr i32) (param $value i32) (i32.atomic.store16 (get_local $addr) (get_local $value))) + (func (export "i64.atomic.store8") (param $addr i32) (param $value i64) (i64.atomic.store8 (get_local $addr) (get_local $value))) + (func (export "i64.atomic.store16") (param $addr i32) (param $value i64) (i64.atomic.store16 (get_local $addr) (get_local $value))) + (func (export "i64.atomic.store32") (param $addr i32) (param $value i64) (i64.atomic.store32 (get_local $addr) (get_local $value))) + + (func (export "i32.atomic.rmw.add") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw.add (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw.add") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw.add (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw8_u.add") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw8_u.add (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw16_u.add") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw16_u.add (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw8_u.add") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw8_u.add (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw16_u.add") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw16_u.add (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw32_u.add") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw32_u.add (get_local $addr) (get_local $value))) + + (func (export "i32.atomic.rmw.sub") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw.sub (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw.sub") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw.sub (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw8_u.sub") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw8_u.sub (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw16_u.sub") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw16_u.sub (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw8_u.sub") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw8_u.sub (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw16_u.sub") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw16_u.sub (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw32_u.sub") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw32_u.sub (get_local $addr) (get_local $value))) + + (func (export "i32.atomic.rmw.and") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw.and (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw.and") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw.and (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw8_u.and") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw8_u.and (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw16_u.and") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw16_u.and (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw8_u.and") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw8_u.and (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw16_u.and") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw16_u.and (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw32_u.and") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw32_u.and (get_local $addr) (get_local $value))) + + (func (export "i32.atomic.rmw.or") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw.or (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw.or") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw.or (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw8_u.or") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw8_u.or (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw16_u.or") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw16_u.or (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw8_u.or") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw8_u.or (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw16_u.or") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw16_u.or (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw32_u.or") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw32_u.or (get_local $addr) (get_local $value))) + + (func (export "i32.atomic.rmw.xor") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw.xor (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw.xor") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw.xor (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw8_u.xor") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw8_u.xor (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw16_u.xor") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw16_u.xor (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw8_u.xor") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw8_u.xor (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw16_u.xor") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw16_u.xor (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw32_u.xor") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw32_u.xor (get_local $addr) (get_local $value))) + + (func (export "i32.atomic.rmw.xchg") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw.xchg (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw.xchg") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw.xchg (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw8_u.xchg") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw8_u.xchg (get_local $addr) (get_local $value))) + (func (export "i32.atomic.rmw16_u.xchg") (param $addr i32) (param $value i32) (result i32) (i32.atomic.rmw16_u.xchg (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw8_u.xchg") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw8_u.xchg (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw16_u.xchg") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw16_u.xchg (get_local $addr) (get_local $value))) + (func (export "i64.atomic.rmw32_u.xchg") (param $addr i32) (param $value i64) (result i64) (i64.atomic.rmw32_u.xchg (get_local $addr) (get_local $value))) + + (func (export "i32.atomic.rmw.cmpxchg") (param $addr i32) (param $expected i32) (param $value i32) (result i32) (i32.atomic.rmw.cmpxchg (get_local $addr) (get_local $expected) (get_local $value))) + (func (export "i64.atomic.rmw.cmpxchg") (param $addr i32) (param $expected i64) (param $value i64) (result i64) (i64.atomic.rmw.cmpxchg (get_local $addr) (get_local $expected) (get_local $value))) + (func (export "i32.atomic.rmw8_u.cmpxchg") (param $addr i32) (param $expected i32) (param $value i32) (result i32) (i32.atomic.rmw8_u.cmpxchg (get_local $addr) (get_local $expected) (get_local $value))) + (func (export "i32.atomic.rmw16_u.cmpxchg") (param $addr i32) (param $expected i32) (param $value i32) (result i32) (i32.atomic.rmw16_u.cmpxchg (get_local $addr) (get_local $expected) (get_local $value))) + (func (export "i64.atomic.rmw8_u.cmpxchg") (param $addr i32) (param $expected i64) (param $value i64) (result i64) (i64.atomic.rmw8_u.cmpxchg (get_local $addr) (get_local $expected) (get_local $value))) + (func (export "i64.atomic.rmw16_u.cmpxchg") (param $addr i32) (param $expected i64) (param $value i64) (result i64) (i64.atomic.rmw16_u.cmpxchg (get_local $addr) (get_local $expected) (get_local $value))) + (func (export "i64.atomic.rmw32_u.cmpxchg") (param $addr i32) (param $expected i64) (param $value i64) (result i64) (i64.atomic.rmw32_u.cmpxchg (get_local $addr) (get_local $expected) (get_local $value))) + +) + +;; *.atomic.load* + +(invoke "init" (i64.const 0x0706050403020100)) + +(assert_return (invoke "i32.atomic.load" (i32.const 0)) (i32.const 0x03020100)) +(assert_return (invoke "i32.atomic.load" (i32.const 4)) (i32.const 0x07060504)) + +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0706050403020100)) + +(assert_return (invoke "i32.atomic.load8_u" (i32.const 0)) (i32.const 0x00)) +(assert_return (invoke "i32.atomic.load8_u" (i32.const 5)) (i32.const 0x05)) + +(assert_return (invoke "i32.atomic.load16_u" (i32.const 0)) (i32.const 0x0100)) +(assert_return (invoke "i32.atomic.load16_u" (i32.const 6)) (i32.const 0x0706)) + +(assert_return (invoke "i64.atomic.load8_u" (i32.const 0)) (i64.const 0x00)) +(assert_return (invoke "i64.atomic.load8_u" (i32.const 5)) (i64.const 0x05)) + +(assert_return (invoke "i64.atomic.load16_u" (i32.const 0)) (i64.const 0x0100)) +(assert_return (invoke "i64.atomic.load16_u" (i32.const 6)) (i64.const 0x0706)) + +(assert_return (invoke "i64.atomic.load32_u" (i32.const 0)) (i64.const 0x03020100)) +(assert_return (invoke "i64.atomic.load32_u" (i32.const 4)) (i64.const 0x07060504)) + +;; *.atomic.store* + +(invoke "init" (i64.const 0x0000000000000000)) + +(assert_return (invoke "i32.atomic.store" (i32.const 0) (i32.const 0xffeeddcc))) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x00000000ffeeddcc)) + +(assert_return (invoke "i64.atomic.store" (i32.const 0) (i64.const 0x0123456789abcdef))) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0123456789abcdef)) + +(assert_return (invoke "i32.atomic.store8" (i32.const 1) (i32.const 0x42))) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0123456789ab42ef)) + +(assert_return (invoke "i32.atomic.store16" (i32.const 4) (i32.const 0x8844))) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0123884489ab42ef)) + +(assert_return (invoke "i64.atomic.store8" (i32.const 1) (i64.const 0x99))) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0123884489ab99ef)) + +(assert_return (invoke "i64.atomic.store16" (i32.const 4) (i64.const 0xcafe))) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0123cafe89ab99ef)) + +(assert_return (invoke "i64.atomic.store32" (i32.const 4) (i64.const 0xdeadbeef))) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0xdeadbeef89ab99ef)) + +;; *.atomic.rmw*.add + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.add" (i32.const 0) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111123456789)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.add" (i32.const 0) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1212121213131313)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.add" (i32.const 0) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111111111de)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.add" (i32.const 0) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111dc0f)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.add" (i32.const 0) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111153)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.add" (i32.const 0) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111d000)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.add" (i32.const 0) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111dbccb7f6)) + +;; *.atomic.rmw*.sub + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.sub" (i32.const 0) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111fedcba99)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.sub" (i32.const 0) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x101010100f0f0f0f)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.sub" (i32.const 0) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111144)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.sub" (i32.const 0) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111114613)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.sub" (i32.const 0) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111111111cf)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.sub" (i32.const 0) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111115222)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.sub" (i32.const 0) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111146556a2c)) + +;; *.atomic.rmw*.and + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.and" (i32.const 0) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111110101010)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.and" (i32.const 0) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0101010100000000)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.and" (i32.const 0) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111101)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.and" (i32.const 0) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111110010)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.and" (i32.const 0) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111100)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.and" (i32.const 0) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111001)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.and" (i32.const 0) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111100110001)) + +;; *.atomic.rmw*.or + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.or" (i32.const 0) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111113355779)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.or" (i32.const 0) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111113131313)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.or" (i32.const 0) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111111111dd)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.or" (i32.const 0) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111dbff)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.or" (i32.const 0) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111153)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.or" (i32.const 0) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111bfff)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.or" (i32.const 0) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111dbbbb7f5)) + +;; *.atomic.rmw*.xor + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.xor" (i32.const 0) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111103254769)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.xor" (i32.const 0) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1010101013131313)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.xor" (i32.const 0) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111111111dc)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.xor" (i32.const 0) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111dbef)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.xor" (i32.const 0) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111153)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.xor" (i32.const 0) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111affe)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.xor" (i32.const 0) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111dbaab7f4)) + +;; *.atomic.rmw*.xchg + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.xchg" (i32.const 0) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111112345678)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.xchg" (i32.const 0) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0101010102020202)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.xchg" (i32.const 0) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111111111cd)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.xchg" (i32.const 0) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111cafe)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.xchg" (i32.const 0) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111142)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.xchg" (i32.const 0) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111beef)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.xchg" (i32.const 0) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111cabba6e5)) + +;; *.atomic.rmw*.cmpxchg (compare false) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.cmpxchg" (i32.const 0) (i32.const 0) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111111)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.cmpxchg" (i32.const 0) (i64.const 0) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111111)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.cmpxchg" (i32.const 0) (i32.const 0) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111111)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.cmpxchg" (i32.const 0) (i32.const 0) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111111)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.cmpxchg" (i32.const 0) (i64.const 0) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111111)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.cmpxchg" (i32.const 0) (i64.const 0) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111111)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.cmpxchg" (i32.const 0) (i64.const 0) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111111)) + +;; *.atomic.rmw*.cmpxchg (compare true) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw.cmpxchg" (i32.const 0) (i32.const 0x11111111) (i32.const 0x12345678)) (i32.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111112345678)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw.cmpxchg" (i32.const 0) (i64.const 0x1111111111111111) (i64.const 0x0101010102020202)) (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x0101010102020202)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw8_u.cmpxchg" (i32.const 0) (i32.const 0x11) (i32.const 0xcdcdcdcd)) (i32.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111111111cd)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i32.atomic.rmw16_u.cmpxchg" (i32.const 0) (i32.const 0x1111) (i32.const 0xcafecafe)) (i32.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111cafe)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw8_u.cmpxchg" (i32.const 0) (i64.const 0x11) (i64.const 0x4242424242424242)) (i64.const 0x11)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x1111111111111142)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw16_u.cmpxchg" (i32.const 0) (i64.const 0x1111) (i64.const 0xbeefbeefbeefbeef)) (i64.const 0x1111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x111111111111beef)) + +(invoke "init" (i64.const 0x1111111111111111)) +(assert_return (invoke "i64.atomic.rmw32_u.cmpxchg" (i32.const 0) (i64.const 0x11111111) (i64.const 0xcabba6e5cabba6e5)) (i64.const 0x11111111)) +(assert_return (invoke "i64.atomic.load" (i32.const 0)) (i64.const 0x11111111cabba6e5)) + + +;; unaligned accesses + +(assert_trap (invoke "i32.atomic.load" (i32.const 1)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.load" (i32.const 1)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.load16_u" (i32.const 1)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.load16_u" (i32.const 1)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.load32_u" (i32.const 1)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.store" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.store" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.store16" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.store16" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.store32" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw.add" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw.add" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw16_u.add" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw16_u.add" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw32_u.add" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw.sub" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw.sub" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw16_u.sub" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw16_u.sub" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw32_u.sub" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw.and" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw.and" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw16_u.and" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw16_u.and" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw32_u.and" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw.or" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw.or" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw16_u.or" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw16_u.or" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw32_u.or" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw.xor" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw.xor" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw16_u.xor" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw16_u.xor" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw32_u.xor" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw.xchg" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw.xchg" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw16_u.xchg" (i32.const 1) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw16_u.xchg" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw32_u.xchg" (i32.const 1) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw.cmpxchg" (i32.const 1) (i32.const 0) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw.cmpxchg" (i32.const 1) (i64.const 0) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i32.atomic.rmw16_u.cmpxchg" (i32.const 1) (i32.const 0) (i32.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw16_u.cmpxchg" (i32.const 1) (i64.const 0) (i64.const 0)) "unaligned atomic") +(assert_trap (invoke "i64.atomic.rmw32_u.cmpxchg" (i32.const 1) (i64.const 0) (i64.const 0)) "unaligned atomic") + +;; unshared memory + +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.load (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.load (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.load16_u (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.load16_u (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.load32_u (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (i32.atomic.store (i32.const 0) (i32.const 0)))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (i64.atomic.store (i32.const 0) (i64.const 0)))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (i32.atomic.store16 (i32.const 0) (i32.const 0)))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (i64.atomic.store16 (i32.const 0) (i64.const 0)))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (i64.atomic.store32 (i32.const 0) (i64.const 0)))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw.add (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw.add (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw16_u.add (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw16_u.add (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw32_u.add (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw.sub (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw.sub (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw16_u.sub (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw16_u.sub (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw32_u.sub (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw.and (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw.and (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw16_u.and (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw16_u.and (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw32_u.and (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw.or (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw.or (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw16_u.or (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw16_u.or (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw32_u.or (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw.xor (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw.xor (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw16_u.xor (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw16_u.xor (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw32_u.xor (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw.xchg (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw.xchg (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw16_u.xchg (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw16_u.xchg (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw32_u.xchg (i32.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw.cmpxchg (i32.const 0) (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw.cmpxchg (i32.const 0) (i64.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i32.atomic.rmw16_u.cmpxchg (i32.const 0) (i32.const 0) (i32.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw16_u.cmpxchg (i32.const 0) (i64.const 0) (i64.const 0))))) "atomic accesses require shared memory") +(assert_invalid (module (memory 1 1) (func (drop (i64.atomic.rmw32_u.cmpxchg (i32.const 0) (i64.const 0) (i64.const 0))))) "atomic accesses require shared memory") diff --git a/test/spec/proposals/threads/exports.wast b/test/spec/proposals/threads/exports.wast new file mode 100644 index 00000000000..504d7802266 --- /dev/null +++ b/test/spec/proposals/threads/exports.wast @@ -0,0 +1,205 @@ +;; Functions + +(module (func) (export "a" (func 0))) +(module (func) (export "a" (func 0)) (export "b" (func 0))) +(module (func) (func) (export "a" (func 0)) (export "b" (func 1))) + +(module (func (export "a"))) +(module (func (export "a") (export "b") (export "c"))) +(module (func (export "a") (export "b") (param i32))) +(module (func) (export "a" (func 0))) +(module (func $a (export "a"))) +(module (func $a) (export "a" (func $a))) +(module (export "a" (func 0)) (func)) +(module (export "a" (func $a)) (func $a)) + +(module $Func + (export "e" (func $f)) + (func $f (param $n i32) (result i32) + (return (i32.add (get_local $n) (i32.const 1))) + ) +) +(assert_return (invoke "e" (i32.const 42)) (i32.const 43)) +(assert_return (invoke $Func "e" (i32.const 42)) (i32.const 43)) +(module) +(module $Other1) +(assert_return (invoke $Func "e" (i32.const 42)) (i32.const 43)) + +(assert_invalid + (module (func) (export "a" (func 1))) + "unknown function" +) +(assert_invalid + (module (func) (export "a" (func 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (func) (func) (export "a" (func 0)) (export "a" (func 1))) + "duplicate export name" +) +(assert_invalid + (module (func) (global i32 (i32.const 0)) (export "a" (func 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (func) (table 0 anyfunc) (export "a" (func 0)) (export "a" (table 0))) + "duplicate export name" +) +(assert_invalid + (module (func) (memory 0) (export "a" (func 0)) (export "a" (memory 0))) + "duplicate export name" +) + + +;; Globals + +(module (global i32 (i32.const 0)) (export "a" (global 0))) +(module (global i32 (i32.const 0)) (export "a" (global 0)) (export "b" (global 0))) +(module (global i32 (i32.const 0)) (global i32 (i32.const 0)) (export "a" (global 0)) (export "b" (global 1))) + +(module (global (export "a") i32 (i32.const 0))) +(module (global i32 (i32.const 0)) (export "a" (global 0))) +(module (global $a (export "a") i32 (i32.const 0))) +(module (global $a i32 (i32.const 0)) (export "a" (global $a))) +(module (export "a" (global 0)) (global i32 (i32.const 0))) +(module (export "a" (global $a)) (global $a i32 (i32.const 0))) + +(module $Global + (export "e" (global $g)) + (global $g i32 (i32.const 42)) +) +(assert_return (get "e") (i32.const 42)) +(assert_return (get $Global "e") (i32.const 42)) +(module) +(module $Other2) +(assert_return (get $Global "e") (i32.const 42)) + +(assert_invalid + (module (global i32 (i32.const 0)) (export "a" (global 1))) + "unknown global" +) +(assert_invalid + (module (global i32 (i32.const 0)) (export "a" (global 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (global i32 (i32.const 0)) (export "a" (global 0)) (export "a" (global 1))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (func) (export "a" (global 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (table 0 anyfunc) (export "a" (global 0)) (export "a" (table 0))) + "duplicate export name" +) +(assert_invalid + (module (global i32 (i32.const 0)) (memory 0) (export "a" (global 0)) (export "a" (memory 0))) + "duplicate export name" +) + + +;; Tables + +(module (table 0 anyfunc) (export "a" (table 0))) +(module (table 0 anyfunc) (export "a" (table 0)) (export "b" (table 0))) +;; No multiple tables yet. +;; (module (table 0 anyfunc) (table 0 anyfunc) (export "a" (table 0)) (export "b" (table 1))) + +(module (table (export "a") 0 anyfunc)) +(module (table (export "a") 0 1 anyfunc)) +(module (table 0 anyfunc) (export "a" (table 0))) +(module (table 0 1 anyfunc) (export "a" (table 0))) +(module (table $a (export "a") 0 anyfunc)) +(module (table $a (export "a") 0 1 anyfunc)) +(module (table $a 0 anyfunc) (export "a" (table $a))) +(module (table $a 0 1 anyfunc) (export "a" (table $a))) +(module (export "a" (table 0)) (table 0 anyfunc)) +(module (export "a" (table 0)) (table 0 1 anyfunc)) +(module (export "a" (table $a)) (table $a 0 anyfunc)) +(module (export "a" (table $a)) (table $a 0 1 anyfunc)) + +(; TODO: access table ;) + +(assert_invalid + (module (table 0 anyfunc) (export "a" (table 1))) + "unknown table" +) +(assert_invalid + (module (table 0 anyfunc) (export "a" (table 0)) (export "a" (table 0))) + "duplicate export name" +) +;; No multiple tables yet. +;; (assert_invalid +;; (module (table 0 anyfunc) (table 0 anyfunc) (export "a" (table 0)) (export "a" (table 1))) +;; "duplicate export name" +;; ) +(assert_invalid + (module (table 0 anyfunc) (func) (export "a" (table 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (table 0 anyfunc) (global i32 (i32.const 0)) (export "a" (table 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (table 0 anyfunc) (memory 0) (export "a" (table 0)) (export "a" (memory 0))) + "duplicate export name" +) + + +;; Memories + +(module (memory 0) (export "a" (memory 0))) +(module (memory 0) (export "a" (memory 0)) (export "b" (memory 0))) +;; No multiple memories yet. +;; (module (memory 0) (memory 0) (export "a" (memory 0)) (export "b" (memory 1))) + +(module (memory (export "a") 0)) +(module (memory (export "a") 0 1)) +(module (memory 0) (export "a" (memory 0))) +(module (memory 0 1) (export "a" (memory 0))) +(module (memory $a (export "a") 0)) +(module (memory $a (export "a") 0 1)) +(module (memory $a 0) (export "a" (memory $a))) +(module (memory $a 0 1) (export "a" (memory $a))) +(module (export "a" (memory 0)) (memory 0)) +(module (export "a" (memory 0)) (memory 0 1)) +(module (export "a" (memory $a)) (memory $a 0)) +(module (export "a" (memory $a)) (memory $a 0 1)) + +(module (memory (export "a") 0 1 shared)) +(module (memory 0 1 shared) (export "a" (memory 0))) +(module (memory $a (export "a") 0 1 shared)) +(module (memory $a 0 1 shared) (export "a" (memory $a))) +(module (export "a" (memory 0)) (memory 0 1 shared)) +(module (export "a" (memory $a)) (memory $a 0 1 shared)) + +(; TODO: access memory ;) + +(assert_invalid + (module (memory 0) (export "a" (memory 1))) + "unknown memory" +) +(assert_invalid + (module (memory 0) (export "a" (memory 0)) (export "a" (memory 0))) + "duplicate export name" +) +;; No multiple memories yet. +;; (assert_invalid +;; (module (memory 0) (memory 0) (export "a" (memory 0)) (export "a" (memory 1))) +;; "duplicate export name" +;; ) +(assert_invalid + (module (memory 0) (func) (export "a" (memory 0)) (export "a" (func 0))) + "duplicate export name" +) +(assert_invalid + (module (memory 0) (global i32 (i32.const 0)) (export "a" (memory 0)) (export "a" (global 0))) + "duplicate export name" +) +(assert_invalid + (module (memory 0) (table 0 anyfunc) (export "a" (memory 0)) (export "a" (table 0))) + "duplicate export name" +) diff --git a/test/spec/proposals/threads/imports.wast b/test/spec/proposals/threads/imports.wast new file mode 100644 index 00000000000..04747132726 --- /dev/null +++ b/test/spec/proposals/threads/imports.wast @@ -0,0 +1,595 @@ +;; Auxiliary module to import from + +(module + (func (export "func")) + (func (export "func-i32") (param i32)) + (func (export "func-f32") (param f32)) + (func (export "func->i32") (result i32) (i32.const 22)) + (func (export "func->f32") (result f32) (f32.const 11)) + (func (export "func-i32->i32") (param i32) (result i32) (get_local 0)) + (func (export "func-i64->i64") (param i64) (result i64) (get_local 0)) + (global (export "global-i32") i32 (i32.const 55)) + (global (export "global-f32") f32 (f32.const 44)) + (table (export "table-10-inf") 10 anyfunc) + ;; (table (export "table-10-20") 10 20 anyfunc) + (memory (export "memory-2-inf") 2) + ;; (memory (export "memory-2-4") 2 4) +) + +(register "test") + + +;; Functions + +(module + (type $func_i32 (func (param i32))) + (type $func_i64 (func (param i64))) + (type $func_f32 (func (param f32))) + (type $func_f64 (func (param f64))) + + (import "spectest" "print_i32" (func (param i32))) + ;; JavaScript can't handle i64 yet. + ;; (func (import "spectest" "print_i64") (param i64)) + (import "spectest" "print_i32" (func $print_i32 (param i32))) + ;; JavaScript can't handle i64 yet. + ;; (import "spectest" "print_i64" (func $print_i64 (param i64))) + (import "spectest" "print_f32" (func $print_f32 (param f32))) + (import "spectest" "print_f64" (func $print_f64 (param f64))) + (import "spectest" "print_i32_f32" (func $print_i32_f32 (param i32 f32))) + (import "spectest" "print_f64_f64" (func $print_f64_f64 (param f64 f64))) + (func $print_i32-2 (import "spectest" "print_i32") (param i32)) + (func $print_f64-2 (import "spectest" "print_f64") (param f64)) + (import "test" "func-i64->i64" (func $i64->i64 (param i64) (result i64))) + + (func (export "p1") (import "spectest" "print_i32") (param i32)) + (func $p (export "p2") (import "spectest" "print_i32") (param i32)) + (func (export "p3") (export "p4") (import "spectest" "print_i32") (param i32)) + (func (export "p5") (import "spectest" "print_i32") (type 0)) + (func (export "p6") (import "spectest" "print_i32") (type 0) (param i32) (result)) + + (import "spectest" "print_i32" (func (type $forward))) + (func (import "spectest" "print_i32") (type $forward)) + (type $forward (func (param i32))) + + (table anyfunc (elem $print_i32 $print_f64)) + + (func (export "print32") (param $i i32) + (local $x f32) + (set_local $x (f32.convert_s/i32 (get_local $i))) + (call 0 (get_local $i)) + (call $print_i32_f32 + (i32.add (get_local $i) (i32.const 1)) + (f32.const 42) + ) + (call $print_i32 (get_local $i)) + (call $print_i32-2 (get_local $i)) + (call $print_f32 (get_local $x)) + (call_indirect (type $func_i32) (get_local $i) (i32.const 0)) + ) + + (func (export "print64") (param $i i64) + (local $x f64) + (set_local $x (f64.convert_s/i64 (call $i64->i64 (get_local $i)))) + ;; JavaScript can't handle i64 yet. + ;; (call 1 (get_local $i)) + (call $print_f64_f64 + (f64.add (get_local $x) (f64.const 1)) + (f64.const 53) + ) + ;; JavaScript can't handle i64 yet. + ;; (call $print_i64 (get_local $i)) + (call $print_f64 (get_local $x)) + (call $print_f64-2 (get_local $x)) + (call_indirect (type $func_f64) (get_local $x) (i32.const 1)) + ) +) + +(assert_return (invoke "print32" (i32.const 13))) +(assert_return (invoke "print64" (i64.const 24))) + +(module (import "test" "func" (func))) +(module (import "test" "func-i32" (func (param i32)))) +(module (import "test" "func-f32" (func (param f32)))) +(module (import "test" "func->i32" (func (result i32)))) +(module (import "test" "func->f32" (func (result f32)))) +(module (import "test" "func-i32->i32" (func (param i32) (result i32)))) +(module (import "test" "func-i64->i64" (func (param i64) (result i64)))) + +(assert_unlinkable + (module (import "test" "unknown" (func))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (func))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "func" (func (param i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func" (func (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func" (func (param i32) (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (param f32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (param i64)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32" (func (param i32) (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (param i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (result f32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (result i64)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func->i32" (func (param i32) (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32->i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32->i32" (func (param i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "func-i32->i32" (func (result i32)))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "test" "global-i32" (func (result i32)))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "global_i32" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (func))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (func))) + "incompatible import type" +) + + +;; Globals + +(module + (import "spectest" "global_i32" (global i32)) + (global (import "spectest" "global_i32") i32) + + (import "spectest" "global_i32" (global $x i32)) + (global $y (import "spectest" "global_i32") i32) + + ;; JavaScript can't handle i64 yet. + ;; (import "spectest" "global_i64" (global i64)) + (import "spectest" "global_f32" (global f32)) + (import "spectest" "global_f64" (global f64)) + + (func (export "get-0") (result i32) (get_global 0)) + (func (export "get-1") (result i32) (get_global 1)) + (func (export "get-x") (result i32) (get_global $x)) + (func (export "get-y") (result i32) (get_global $y)) +) + +(assert_return (invoke "get-0") (i32.const 666)) +(assert_return (invoke "get-1") (i32.const 666)) +(assert_return (invoke "get-x") (i32.const 666)) +(assert_return (invoke "get-y") (i32.const 666)) + +(module (import "test" "global-i32" (global i32))) +(module (import "test" "global-f32" (global f32))) + +(assert_unlinkable + (module (import "test" "unknown" (global i32))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (global i32))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "func" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "print_i32" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (global i32))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (global i32))) + "incompatible import type" +) + + +;; Tables + +(module + (type (func (result i32))) + (import "spectest" "table" (table 10 20 anyfunc)) + (elem 0 (i32.const 1) $f $g) + + (func (export "call") (param i32) (result i32) + (call_indirect (type 0) (get_local 0)) + ) + (func $f (result i32) (i32.const 11)) + (func $g (result i32) (i32.const 22)) +) + +(assert_trap (invoke "call" (i32.const 0)) "uninitialized element") +(assert_return (invoke "call" (i32.const 1)) (i32.const 11)) +(assert_return (invoke "call" (i32.const 2)) (i32.const 22)) +(assert_trap (invoke "call" (i32.const 3)) "uninitialized element") +(assert_trap (invoke "call" (i32.const 100)) "undefined element") + + +(module + (type (func (result i32))) + (table (import "spectest" "table") 10 20 anyfunc) + (elem 0 (i32.const 1) $f $g) + + (func (export "call") (param i32) (result i32) + (call_indirect (type 0) (get_local 0)) + ) + (func $f (result i32) (i32.const 11)) + (func $g (result i32) (i32.const 22)) +) + +(assert_trap (invoke "call" (i32.const 0)) "uninitialized element") +(assert_return (invoke "call" (i32.const 1)) (i32.const 11)) +(assert_return (invoke "call" (i32.const 2)) (i32.const 22)) +(assert_trap (invoke "call" (i32.const 3)) "uninitialized element") +(assert_trap (invoke "call" (i32.const 100)) "undefined element") + + +(assert_invalid + (module (import "" "" (table 10 anyfunc)) (import "" "" (table 10 anyfunc))) + "multiple tables" +) +(assert_invalid + (module (import "" "" (table 10 anyfunc)) (table 10 anyfunc)) + "multiple tables" +) +(assert_invalid + (module (table 10 anyfunc) (table 10 anyfunc)) + "multiple tables" +) + +(module (import "test" "table-10-inf" (table 10 anyfunc))) +(module (import "test" "table-10-inf" (table 5 anyfunc))) +(module (import "test" "table-10-inf" (table 0 anyfunc))) +(module (import "spectest" "table" (table 10 anyfunc))) +(module (import "spectest" "table" (table 5 anyfunc))) +(module (import "spectest" "table" (table 0 anyfunc))) +(module (import "spectest" "table" (table 10 20 anyfunc))) +(module (import "spectest" "table" (table 5 20 anyfunc))) +(module (import "spectest" "table" (table 0 20 anyfunc))) +(module (import "spectest" "table" (table 10 25 anyfunc))) +(module (import "spectest" "table" (table 5 25 anyfunc))) + +(assert_unlinkable + (module (import "test" "unknown" (table 10 anyfunc))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (table 10 anyfunc))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "table-10-inf" (table 12 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (table 10 20 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (table 12 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (table 10 15 anyfunc))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "test" "func" (table 10 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "global-i32" (table 10 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (table 10 anyfunc))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "print_i32" (table 10 anyfunc))) + "incompatible import type" +) + + + +;; Memories + +(module + (import "spectest" "memory" (memory 1 2)) + (data 0 (i32.const 10) "\10") + + (func (export "load") (param i32) (result i32) (i32.load (get_local 0))) +) + +(assert_return (invoke "load" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "load" (i32.const 10)) (i32.const 16)) +(assert_return (invoke "load" (i32.const 8)) (i32.const 0x100000)) +(assert_trap (invoke "load" (i32.const 1000000)) "out of bounds memory access") + +(module + (memory (import "spectest" "memory") 1 2) + (data 0 (i32.const 10) "\10") + + (func (export "load") (param i32) (result i32) (i32.load (get_local 0))) +) +(assert_return (invoke "load" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "load" (i32.const 10)) (i32.const 16)) +(assert_return (invoke "load" (i32.const 8)) (i32.const 0x100000)) +(assert_trap (invoke "load" (i32.const 1000000)) "out of bounds memory access") + +(assert_invalid + (module (import "" "" (memory 1)) (import "" "" (memory 1))) + "multiple memories" +) +(assert_invalid + (module (import "" "" (memory 1)) (memory 0)) + "multiple memories" +) +(assert_invalid + (module (memory 0) (memory 0)) + "multiple memories" +) + +(module (import "test" "memory-2-inf" (memory 2))) +(module (import "test" "memory-2-inf" (memory 1))) +(module (import "test" "memory-2-inf" (memory 0))) +(module (import "spectest" "memory" (memory 1))) +(module (import "spectest" "memory" (memory 0))) +(module (import "spectest" "memory" (memory 1 2))) +(module (import "spectest" "memory" (memory 0 2))) +(module (import "spectest" "memory" (memory 1 3))) +(module (import "spectest" "memory" (memory 0 3))) + +(assert_unlinkable + (module (import "test" "unknown" (memory 1))) + "unknown import" +) +(assert_unlinkable + (module (import "spectest" "unknown" (memory 1))) + "unknown import" +) + +(assert_unlinkable + (module (import "test" "memory-2-inf" (memory 3))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "memory-2-inf" (memory 2 3))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (memory 2))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (memory 1 1))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "test" "func-i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "global-i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "test" "table-10-inf" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "print_i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "global_i32" (memory 1))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "table" (memory 1))) + "incompatible import type" +) + +(assert_unlinkable + (module (import "spectest" "memory" (memory 2))) + "incompatible import type" +) +(assert_unlinkable + (module (import "spectest" "memory" (memory 1 1))) + "incompatible import type" +) + +(module + (import "spectest" "memory" (memory 0 3)) ;; actual has max size 2 + (func (export "grow") (param i32) (result i32) (grow_memory (get_local 0))) +) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 2)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const -1)) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 2)) + +;; Shared Memory + +(module (import "spectest" "shared_memory" (memory 1 2 shared))) + +(assert_unlinkable + (module (import "spectest" "shared_memory" (memory 1 2))) + "incompatible import type") + +(assert_unlinkable + (module (import "spectest" "memory" (memory 1 2 shared))) + "incompatible import type") + + +;; Syntax errors + +(assert_malformed + (module quote "(func) (import \"\" \"\" (func))") + "import after function" +) +(assert_malformed + (module quote "(func) (import \"\" \"\" (global i64))") + "import after function" +) +(assert_malformed + (module quote "(func) (import \"\" \"\" (table 0 anyfunc))") + "import after function" +) +(assert_malformed + (module quote "(func) (import \"\" \"\" (memory 0))") + "import after function" +) + +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (func))") + "import after global" +) +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (global f32))") + "import after global" +) +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (table 0 anyfunc))") + "import after global" +) +(assert_malformed + (module quote "(global i64 (i64.const 0)) (import \"\" \"\" (memory 0))") + "import after global" +) + +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (func))") + "import after table" +) +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (global i32))") + "import after table" +) +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (table 0 anyfunc))") + "import after table" +) +(assert_malformed + (module quote "(table 0 anyfunc) (import \"\" \"\" (memory 0))") + "import after table" +) + +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (func))") + "import after memory" +) +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (global i32))") + "import after memory" +) +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (table 1 3 anyfunc))") + "import after memory" +) +(assert_malformed + (module quote "(memory 0) (import \"\" \"\" (memory 1 2))") + "import after memory" +) + +;; This module is required to validate, regardless of whether it can be +;; linked. Overloading is not possible in wasm itself, but it is possible +;; in modules from which wasm can import. +(assert_unlinkable + (module + (import "not wasm" "overloaded" (func)) + (import "not wasm" "overloaded" (func (param i32))) + (import "not wasm" "overloaded" (func (param i32 i32))) + (import "not wasm" "overloaded" (func (param i64))) + (import "not wasm" "overloaded" (func (param f32))) + (import "not wasm" "overloaded" (func (param f64))) + (import "not wasm" "overloaded" (func (result i32))) + (import "not wasm" "overloaded" (func (result i64))) + (import "not wasm" "overloaded" (func (result f32))) + (import "not wasm" "overloaded" (func (result f64))) + (import "not wasm" "overloaded" (global i32)) + (import "not wasm" "overloaded" (global i64)) + (import "not wasm" "overloaded" (global f32)) + (import "not wasm" "overloaded" (global f64)) + (import "not wasm" "overloaded" (table 0 anyfunc)) + (import "not wasm" "overloaded" (memory 0)) + ) + "unknown import" +) diff --git a/test/spec/proposals/threads/memory.wast b/test/spec/proposals/threads/memory.wast new file mode 100644 index 00000000000..c83fefb99ff --- /dev/null +++ b/test/spec/proposals/threads/memory.wast @@ -0,0 +1,535 @@ +;; Test memory section structure +(module (memory 0 0)) +(module (memory 0 1)) +(module (memory 1 256)) +(module (memory 0 65536)) +(module (memory 0 0 shared)) +(module (memory 1 2 shared)) +(module (memory 0 0) (data (i32.const 0))) +(module (memory 0 0) (data (i32.const 0) "")) +(module (memory 1 1) (data (i32.const 0) "a")) +(module (memory 1 2) (data (i32.const 0) "a") (data (i32.const 65535) "b")) +(module (memory 1 2) + (data (i32.const 0) "a") (data (i32.const 1) "b") (data (i32.const 2) "c") +) +(module (global (import "spectest" "global_i32") i32) (memory 1) (data (get_global 0) "a")) +(module (global $g (import "spectest" "global_i32") i32) (memory 1) (data (get_global $g) "a")) +;; Use of internal globals in constant expressions is not allowed in MVP. +;; (module (memory 1) (data (get_global 0) "a") (global i32 (i32.const 0))) +;; (module (memory 1) (data (get_global $g) "a") (global $g i32 (i32.const 0))) + +(assert_invalid (module (memory 1 shared)) "shared memory must have maximum") + +(assert_invalid (module (memory 0) (memory 0)) "multiple memories") +(assert_invalid (module (memory (import "spectest" "memory") 0) (memory 0)) "multiple memories") + +(module (memory (data)) (func (export "memsize") (result i32) (current_memory))) +(assert_return (invoke "memsize") (i32.const 0)) +(module (memory (data "")) (func (export "memsize") (result i32) (current_memory))) +(assert_return (invoke "memsize") (i32.const 0)) +(module (memory (data "x")) (func (export "memsize") (result i32) (current_memory))) +(assert_return (invoke "memsize") (i32.const 1)) + +(assert_invalid (module (data (i32.const 0))) "unknown memory") +(assert_invalid (module (data (i32.const 0) "")) "unknown memory") +(assert_invalid (module (data (i32.const 0) "x")) "unknown memory") + +(assert_invalid + (module (func (drop (f32.load (i32.const 0))))) + "unknown memory" +) +(assert_invalid + (module (func (f32.store (f32.const 0) (i32.const 0)))) + "unknown memory" +) +(assert_invalid + (module (func (drop (i32.load8_s (i32.const 0))))) + "unknown memory" +) +(assert_invalid + (module (func (i32.store8 (i32.const 0) (i32.const 0)))) + "unknown memory" +) +(assert_invalid + (module (func (drop (current_memory)))) + "unknown memory" +) +(assert_invalid + (module (func (drop (grow_memory (i32.const 0))))) + "unknown memory" +) + +(assert_invalid + (module (memory 1) (data (i64.const 0))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (data (i32.ctz (i32.const 0)))) + "constant expression required" +) +(assert_invalid + (module (memory 1) (data (nop))) + "constant expression required" +) +;; Use of internal globals in constant expressions is not allowed in MVP. +;; (assert_invalid +;; (module (memory 1) (data (get_global $g)) (global $g (mut i32) (i32.const 0))) +;; "constant expression required" +;; ) + +(assert_unlinkable + (module (memory 0 0) (data (i32.const 0) "a")) + "data segment does not fit" +) +(assert_unlinkable + (module (memory 0 1) (data (i32.const 0) "a")) + "data segment does not fit" +) +(assert_unlinkable + (module (memory 1 2) (data (i32.const -1) "a")) + "data segment does not fit" +) +(assert_unlinkable + (module (memory 1 2) (data (i32.const -1000) "a")) + "data segment does not fit" +) +(assert_unlinkable + (module (memory 1 2) (data (i32.const 0) "a") (data (i32.const 98304) "b")) + "data segment does not fit" +) +(assert_unlinkable + (module (memory 0 0) (data (i32.const 1) "")) + "data segment does not fit" +) +(assert_unlinkable + (module (memory 1) (data (i32.const 0x12000) "")) + "data segment does not fit" +) +(assert_unlinkable + (module (memory 1 2) (data (i32.const -1) "")) + "data segment does not fit" +) +;; This seems to cause a time-out on Travis. +(;assert_unlinkable + (module (memory 0x10000) (data (i32.const 0xffffffff) "ab")) + "" ;; either out of memory or segment does not fit +;) +(assert_unlinkable + (module + (global (import "spectest" "global_i32") i32) + (memory 0) (data (get_global 0) "a") + ) + "data segment does not fit" +) + +(module (memory 0 0) (data (i32.const 0) "")) +(module (memory 1 1) (data (i32.const 0x10000) "")) +(module (memory 1 2) (data (i32.const 0) "abc") (data (i32.const 0) "def")) +(module (memory 1 2) (data (i32.const 3) "ab") (data (i32.const 0) "de")) +(module + (memory 1 2) + (data (i32.const 0) "a") (data (i32.const 2) "b") (data (i32.const 1) "c") +) + +(assert_invalid + (module (memory 1 0)) + "size minimum must not be greater than maximum" +) +(assert_invalid + (module (memory 65537)) + "memory size must be at most 65536 pages (4GiB)" +) +(assert_invalid + (module (memory 2147483648)) + "memory size must be at most 65536 pages (4GiB)" +) +(assert_invalid + (module (memory 4294967295)) + "memory size must be at most 65536 pages (4GiB)" +) +(assert_invalid + (module (memory 0 65537)) + "memory size must be at most 65536 pages (4GiB)" +) +(assert_invalid + (module (memory 0 2147483648)) + "memory size must be at most 65536 pages (4GiB)" +) +(assert_invalid + (module (memory 0 4294967295)) + "memory size must be at most 65536 pages (4GiB)" +) + +;; Test alignment annotation rules +(module (memory 0) (func (drop (i32.load8_u align=1 (i32.const 0))))) +(module (memory 0) (func (drop (i32.load16_u align=2 (i32.const 0))))) +(module (memory 0) (func (drop (i32.load align=4 (i32.const 0))))) +(module (memory 0) (func (drop (f32.load align=4 (i32.const 0))))) + +(assert_invalid + (module (memory 0) (func (drop (i64.load align=16 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i64.load align=32 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i32.load align=8 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i32.load16_u align=4 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (drop (i32.load8_u align=2 (i32.const 0))))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.store8 align=2 (i32.const 0) (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.load16_u align=4 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.load8_u align=2 (i32.const 0)))) + "alignment must not be larger than natural" +) +(assert_invalid + (module (memory 0) (func (i32.store8 align=2 (i32.const 0) (i32.const 0)))) + "alignment must not be larger than natural" +) + +(module + (memory 1) + (data (i32.const 0) "ABC\a7D") (data (i32.const 20) "WASM") + + ;; Data section + (func (export "data") (result i32) + (i32.and + (i32.and + (i32.and + (i32.eq (i32.load8_u (i32.const 0)) (i32.const 65)) + (i32.eq (i32.load8_u (i32.const 3)) (i32.const 167)) + ) + (i32.and + (i32.eq (i32.load8_u (i32.const 6)) (i32.const 0)) + (i32.eq (i32.load8_u (i32.const 19)) (i32.const 0)) + ) + ) + (i32.and + (i32.and + (i32.eq (i32.load8_u (i32.const 20)) (i32.const 87)) + (i32.eq (i32.load8_u (i32.const 23)) (i32.const 77)) + ) + (i32.and + (i32.eq (i32.load8_u (i32.const 24)) (i32.const 0)) + (i32.eq (i32.load8_u (i32.const 1023)) (i32.const 0)) + ) + ) + ) + ) + + ;; Aligned read/write + (func (export "aligned") (result i32) + (local i32 i32 i32) + (set_local 0 (i32.const 10)) + (block + (loop + (if + (i32.eq (get_local 0) (i32.const 0)) + (then (br 2)) + ) + (set_local 2 (i32.mul (get_local 0) (i32.const 4))) + (i32.store (get_local 2) (get_local 0)) + (set_local 1 (i32.load (get_local 2))) + (if + (i32.ne (get_local 0) (get_local 1)) + (then (return (i32.const 0))) + ) + (set_local 0 (i32.sub (get_local 0) (i32.const 1))) + (br 0) + ) + ) + (i32.const 1) + ) + + ;; Unaligned read/write + (func (export "unaligned") (result i32) + (local i32 f64 f64) + (set_local 0 (i32.const 10)) + (block + (loop + (if + (i32.eq (get_local 0) (i32.const 0)) + (then (br 2)) + ) + (set_local 2 (f64.convert_s/i32 (get_local 0))) + (f64.store align=1 (get_local 0) (get_local 2)) + (set_local 1 (f64.load align=1 (get_local 0))) + (if + (f64.ne (get_local 2) (get_local 1)) + (then (return (i32.const 0))) + ) + (set_local 0 (i32.sub (get_local 0) (i32.const 1))) + (br 0) + ) + ) + (i32.const 1) + ) + + ;; Memory cast + (func (export "cast") (result f64) + (i64.store (i32.const 8) (i64.const -12345)) + (if + (f64.eq + (f64.load (i32.const 8)) + (f64.reinterpret/i64 (i64.const -12345)) + ) + (then (return (f64.const 0))) + ) + (i64.store align=1 (i32.const 9) (i64.const 0)) + (i32.store16 align=1 (i32.const 15) (i32.const 16453)) + (f64.load align=1 (i32.const 9)) + ) + + ;; Sign and zero extending memory loads + (func (export "i32_load8_s") (param $i i32) (result i32) + (i32.store8 (i32.const 8) (get_local $i)) + (i32.load8_s (i32.const 8)) + ) + (func (export "i32_load8_u") (param $i i32) (result i32) + (i32.store8 (i32.const 8) (get_local $i)) + (i32.load8_u (i32.const 8)) + ) + (func (export "i32_load16_s") (param $i i32) (result i32) + (i32.store16 (i32.const 8) (get_local $i)) + (i32.load16_s (i32.const 8)) + ) + (func (export "i32_load16_u") (param $i i32) (result i32) + (i32.store16 (i32.const 8) (get_local $i)) + (i32.load16_u (i32.const 8)) + ) + (func (export "i64_load8_s") (param $i i64) (result i64) + (i64.store8 (i32.const 8) (get_local $i)) + (i64.load8_s (i32.const 8)) + ) + (func (export "i64_load8_u") (param $i i64) (result i64) + (i64.store8 (i32.const 8) (get_local $i)) + (i64.load8_u (i32.const 8)) + ) + (func (export "i64_load16_s") (param $i i64) (result i64) + (i64.store16 (i32.const 8) (get_local $i)) + (i64.load16_s (i32.const 8)) + ) + (func (export "i64_load16_u") (param $i i64) (result i64) + (i64.store16 (i32.const 8) (get_local $i)) + (i64.load16_u (i32.const 8)) + ) + (func (export "i64_load32_s") (param $i i64) (result i64) + (i64.store32 (i32.const 8) (get_local $i)) + (i64.load32_s (i32.const 8)) + ) + (func (export "i64_load32_u") (param $i i64) (result i64) + (i64.store32 (i32.const 8) (get_local $i)) + (i64.load32_u (i32.const 8)) + ) +) + +(assert_return (invoke "data") (i32.const 1)) +(assert_return (invoke "aligned") (i32.const 1)) +(assert_return (invoke "unaligned") (i32.const 1)) +(assert_return (invoke "cast") (f64.const 42.0)) + +(assert_return (invoke "i32_load8_s" (i32.const -1)) (i32.const -1)) +(assert_return (invoke "i32_load8_u" (i32.const -1)) (i32.const 255)) +(assert_return (invoke "i32_load16_s" (i32.const -1)) (i32.const -1)) +(assert_return (invoke "i32_load16_u" (i32.const -1)) (i32.const 65535)) + +(assert_return (invoke "i32_load8_s" (i32.const 100)) (i32.const 100)) +(assert_return (invoke "i32_load8_u" (i32.const 200)) (i32.const 200)) +(assert_return (invoke "i32_load16_s" (i32.const 20000)) (i32.const 20000)) +(assert_return (invoke "i32_load16_u" (i32.const 40000)) (i32.const 40000)) + +(assert_return (invoke "i32_load8_s" (i32.const 0xfedc6543)) (i32.const 0x43)) +(assert_return (invoke "i32_load8_s" (i32.const 0x3456cdef)) (i32.const 0xffffffef)) +(assert_return (invoke "i32_load8_u" (i32.const 0xfedc6543)) (i32.const 0x43)) +(assert_return (invoke "i32_load8_u" (i32.const 0x3456cdef)) (i32.const 0xef)) +(assert_return (invoke "i32_load16_s" (i32.const 0xfedc6543)) (i32.const 0x6543)) +(assert_return (invoke "i32_load16_s" (i32.const 0x3456cdef)) (i32.const 0xffffcdef)) +(assert_return (invoke "i32_load16_u" (i32.const 0xfedc6543)) (i32.const 0x6543)) +(assert_return (invoke "i32_load16_u" (i32.const 0x3456cdef)) (i32.const 0xcdef)) + +(assert_return (invoke "i64_load8_s" (i64.const -1)) (i64.const -1)) +(assert_return (invoke "i64_load8_u" (i64.const -1)) (i64.const 255)) +(assert_return (invoke "i64_load16_s" (i64.const -1)) (i64.const -1)) +(assert_return (invoke "i64_load16_u" (i64.const -1)) (i64.const 65535)) +(assert_return (invoke "i64_load32_s" (i64.const -1)) (i64.const -1)) +(assert_return (invoke "i64_load32_u" (i64.const -1)) (i64.const 4294967295)) + +(assert_return (invoke "i64_load8_s" (i64.const 100)) (i64.const 100)) +(assert_return (invoke "i64_load8_u" (i64.const 200)) (i64.const 200)) +(assert_return (invoke "i64_load16_s" (i64.const 20000)) (i64.const 20000)) +(assert_return (invoke "i64_load16_u" (i64.const 40000)) (i64.const 40000)) +(assert_return (invoke "i64_load32_s" (i64.const 20000)) (i64.const 20000)) +(assert_return (invoke "i64_load32_u" (i64.const 40000)) (i64.const 40000)) + +(assert_return (invoke "i64_load8_s" (i64.const 0xfedcba9856346543)) (i64.const 0x43)) +(assert_return (invoke "i64_load8_s" (i64.const 0x3456436598bacdef)) (i64.const 0xffffffffffffffef)) +(assert_return (invoke "i64_load8_u" (i64.const 0xfedcba9856346543)) (i64.const 0x43)) +(assert_return (invoke "i64_load8_u" (i64.const 0x3456436598bacdef)) (i64.const 0xef)) +(assert_return (invoke "i64_load16_s" (i64.const 0xfedcba9856346543)) (i64.const 0x6543)) +(assert_return (invoke "i64_load16_s" (i64.const 0x3456436598bacdef)) (i64.const 0xffffffffffffcdef)) +(assert_return (invoke "i64_load16_u" (i64.const 0xfedcba9856346543)) (i64.const 0x6543)) +(assert_return (invoke "i64_load16_u" (i64.const 0x3456436598bacdef)) (i64.const 0xcdef)) +(assert_return (invoke "i64_load32_s" (i64.const 0xfedcba9856346543)) (i64.const 0x56346543)) +(assert_return (invoke "i64_load32_s" (i64.const 0x3456436598bacdef)) (i64.const 0xffffffff98bacdef)) +(assert_return (invoke "i64_load32_u" (i64.const 0xfedcba9856346543)) (i64.const 0x56346543)) +(assert_return (invoke "i64_load32_u" (i64.const 0x3456436598bacdef)) (i64.const 0x98bacdef)) + +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i32) (i32.load32 (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i32) (i32.load32_u (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i32) (i32.load32_s (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i32) (i32.load64 (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i32) (i32.load64_u (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i32) (i32.load64_s (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (i32.store32 (get_local 0) (i32.const 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (i32.store64 (get_local 0) (i64.const 0)))" + ) + "unknown operator" +) + +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i64) (i64.load64 (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i64) (i64.load64_u (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result i64) (i64.load64_s (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (i64.store64 (get_local 0) (i64.const 0)))" + ) + "unknown operator" +) + +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result f32) (f32.load32 (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result f32) (f32.load64 (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (f32.store32 (get_local 0) (f32.const 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (f32.store64 (get_local 0) (f64.const 0)))" + ) + "unknown operator" +) + +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result f64) (f64.load32 (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (result f64) (f64.load64 (get_local 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (f64.store32 (get_local 0) (f32.const 0)))" + ) + "unknown operator" +) +(assert_malformed + (module quote + "(memory 1)" + "(func (param i32) (f64.store64 (get_local 0) (f64.const 0)))" + ) + "unknown operator" +) diff --git a/test/spec/resizing.wast b/test/spec/resizing.wast new file mode 100644 index 00000000000..183332efd36 --- /dev/null +++ b/test/spec/resizing.wast @@ -0,0 +1,60 @@ +(module + (memory 0) + + (func (export "load_at_zero") (result i32) (i32.load (i32.const 0))) + (func (export "store_at_zero") (i32.store (i32.const 0) (i32.const 2))) + + (func (export "load_at_page_size") (result i32) (i32.load (i32.const 0x10000))) + (func (export "store_at_page_size") (i32.store (i32.const 0x10000) (i32.const 3))) + + (func (export "grow") (param $sz i32) (result i32) (memory.grow (get_local $sz))) + (func (export "size") (result i32) (memory.size)) +) + +(assert_return (invoke "size") (i32.const 0)) +(assert_trap (invoke "store_at_zero") "out of bounds memory access") +(assert_trap (invoke "load_at_zero") "out of bounds memory access") +(assert_trap (invoke "store_at_page_size") "out of bounds memory access") +(assert_trap (invoke "load_at_page_size") "out of bounds memory access") +(assert_return (invoke "grow" (i32.const 1)) (i32.const 0)) +(assert_return (invoke "size") (i32.const 1)) +(assert_return (invoke "load_at_zero") (i32.const 0)) +(assert_return (invoke "store_at_zero")) +(assert_return (invoke "load_at_zero") (i32.const 2)) +(assert_trap (invoke "store_at_page_size") "out of bounds memory access") +(assert_trap (invoke "load_at_page_size") "out of bounds memory access") +(assert_return (invoke "grow" (i32.const 4)) (i32.const 1)) +(assert_return (invoke "size") (i32.const 5)) +(assert_return (invoke "load_at_zero") (i32.const 2)) +(assert_return (invoke "store_at_zero")) +(assert_return (invoke "load_at_zero") (i32.const 2)) +(assert_return (invoke "load_at_page_size") (i32.const 0)) +(assert_return (invoke "store_at_page_size")) +(assert_return (invoke "load_at_page_size") (i32.const 3)) + + +(module + (memory 0) + (func (export "grow") (param i32) (result i32) (memory.grow (get_local 0))) +) + +(assert_return (invoke "grow" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const 0)) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 1)) +(assert_return (invoke "grow" (i32.const 2)) (i32.const 1)) +(assert_return (invoke "grow" (i32.const 800)) (i32.const 3)) +(assert_return (invoke "grow" (i32.const 0x10000)) (i32.const -1)) + +(module + (memory 0 10) + (func (export "grow") (param i32) (result i32) (memory.grow (get_local 0))) +) + +(assert_return (invoke "grow" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const 0)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const 1)) +(assert_return (invoke "grow" (i32.const 2)) (i32.const 2)) +(assert_return (invoke "grow" (i32.const 6)) (i32.const 4)) +(assert_return (invoke "grow" (i32.const 0)) (i32.const 10)) +(assert_return (invoke "grow" (i32.const 1)) (i32.const -1)) +(assert_return (invoke "grow" (i32.const 0x10000)) (i32.const -1)) diff --git a/test/spec/return.wast b/test/spec/return.wast new file mode 100644 index 00000000000..775baaa09c5 --- /dev/null +++ b/test/spec/return.wast @@ -0,0 +1,313 @@ +;; Test `return` operator + +(module + ;; Auxiliary definition + (func $dummy) + + (func (export "type-i32") (drop (i32.ctz (return)))) + (func (export "type-i64") (drop (i64.ctz (return)))) + (func (export "type-f32") (drop (f32.neg (return)))) + (func (export "type-f64") (drop (f64.neg (return)))) + + (func (export "type-i32-value") (result i32) + (block (result i32) (i32.ctz (return (i32.const 1)))) + ) + (func (export "type-i64-value") (result i64) + (block (result i64) (i64.ctz (return (i64.const 2)))) + ) + (func (export "type-f32-value") (result f32) + (block (result f32) (f32.neg (return (f32.const 3)))) + ) + (func (export "type-f64-value") (result f64) + (block (result f64) (f64.neg (return (f64.const 4)))) + ) + + (func (export "nullary") (return)) + (func (export "unary") (result f64) (return (f64.const 3))) + + (func (export "as-func-first") (result i32) + (return (i32.const 1)) (i32.const 2) + ) + (func (export "as-func-mid") (result i32) + (call $dummy) (return (i32.const 2)) (i32.const 3) + ) + (func (export "as-func-last") + (nop) (call $dummy) (return) + ) + (func (export "as-func-value") (result i32) + (nop) (call $dummy) (return (i32.const 3)) + ) + + (func (export "as-block-first") + (block (return) (call $dummy)) + ) + (func (export "as-block-mid") + (block (call $dummy) (return) (call $dummy)) + ) + (func (export "as-block-last") + (block (nop) (call $dummy) (return)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $dummy) (return (i32.const 2))) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (return (i32.const 3)) (i32.const 2)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $dummy) (return (i32.const 4)) (i32.const 2)) + ) + (func (export "as-loop-last") (result i32) + (loop (result i32) (nop) (call $dummy) (return (i32.const 5))) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (return (i32.const 9)))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (return))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (return (i32.const 8)) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (return (i32.const 9)))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") (result i64) + (block (br_table 0 0 0 (return (i64.const 9)))) (i64.const -1) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (return (i32.const 10)) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (return (i32.const 11))) (i32.const 7) + ) + ) + + (func (export "as-return-value") (result i64) + (return (return (i64.const 7))) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) + (return (i32.const 2)) (then (i32.const 0)) (else (i32.const 1)) + ) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (if (result i32) + (get_local 0) (then (return (i32.const 3))) (else (get_local 1)) + ) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (if (result i32) + (get_local 0) (then (get_local 1)) (else (return (i32.const 4))) + ) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (return (i32.const 5)) (get_local 0) (get_local 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (get_local 0) (return (i32.const 6)) (get_local 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (return (i32.const 7))) + ) + + (func $f (param i32 i32 i32) (result i32) (i32.const -1)) + (func (export "as-call-first") (result i32) + (call $f (return (i32.const 12)) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") (result i32) + (call $f (i32.const 1) (return (i32.const 13)) (i32.const 3)) + ) + (func (export "as-call-last") (result i32) + (call $f (i32.const 1) (i32.const 2) (return (i32.const 14))) + ) + + (type $sig (func (param i32 i32 i32) (result i32))) + (table anyfunc (elem $f)) + (func (export "as-call_indirect-func") (result i32) + (call_indirect (type $sig) + (return (i32.const 20)) (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-first") (result i32) + (call_indirect (type $sig) + (i32.const 0) (return (i32.const 21)) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-mid") (result i32) + (call_indirect (type $sig) + (i32.const 0) (i32.const 1) (return (i32.const 22)) (i32.const 3) + ) + ) + (func (export "as-call_indirect-last") (result i32) + (call_indirect (type $sig) + (i32.const 0) (i32.const 1) (i32.const 2) (return (i32.const 23)) + ) + ) + + (func (export "as-set_local-value") (result i32) (local f32) + (set_local 0 (return (i32.const 17))) (i32.const -1) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (f32.load (return (f32.const 1.7))) + ) + (func (export "as-loadN-address") (result i64) + (i64.load8_s (return (i64.const 30))) + ) + + (func (export "as-store-address") (result i32) + (f64.store (return (i32.const 30)) (f64.const 7)) (i32.const -1) + ) + (func (export "as-store-value") (result i32) + (i64.store (i32.const 2) (return (i32.const 31))) (i32.const -1) + ) + + (func (export "as-storeN-address") (result i32) + (i32.store8 (return (i32.const 32)) (i32.const 7)) (i32.const -1) + ) + (func (export "as-storeN-value") (result i32) + (i64.store16 (i32.const 2) (return (i32.const 33))) (i32.const -1) + ) + + (func (export "as-unary-operand") (result f32) + (f32.neg (return (f32.const 3.4))) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (return (i32.const 3)) (i32.const 10)) + ) + (func (export "as-binary-right") (result i64) + (i64.sub (i64.const 10) (return (i64.const 45))) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (return (i32.const 44))) + ) + + (func (export "as-compare-left") (result i32) + (f64.le (return (i32.const 43)) (f64.const 10)) + ) + (func (export "as-compare-right") (result i32) + (f32.ne (f32.const 10) (return (i32.const 42))) + ) + + (func (export "as-convert-operand") (result i32) + (i32.wrap/i64 (return (i32.const 41))) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (return (i32.const 40))) + ) +) + +(assert_return (invoke "type-i32")) +(assert_return (invoke "type-i64")) +(assert_return (invoke "type-f32")) +(assert_return (invoke "type-f64")) + +(assert_return (invoke "type-i32-value") (i32.const 1)) +(assert_return (invoke "type-i64-value") (i64.const 2)) +(assert_return (invoke "type-f32-value") (f32.const 3)) +(assert_return (invoke "type-f64-value") (f64.const 4)) + +(assert_return (invoke "nullary")) +(assert_return (invoke "unary") (f64.const 3)) + +(assert_return (invoke "as-func-first") (i32.const 1)) +(assert_return (invoke "as-func-mid") (i32.const 2)) +(assert_return (invoke "as-func-last")) +(assert_return (invoke "as-func-value") (i32.const 3)) + +(assert_return (invoke "as-block-first")) +(assert_return (invoke "as-block-mid")) +(assert_return (invoke "as-block-last")) +(assert_return (invoke "as-block-value") (i32.const 2)) + +(assert_return (invoke "as-loop-first") (i32.const 3)) +(assert_return (invoke "as-loop-mid") (i32.const 4)) +(assert_return (invoke "as-loop-last") (i32.const 5)) + +(assert_return (invoke "as-br-value") (i32.const 9)) + +(assert_return (invoke "as-br_if-cond")) +(assert_return (invoke "as-br_if-value") (i32.const 8)) +(assert_return (invoke "as-br_if-value-cond") (i32.const 9)) + +(assert_return (invoke "as-br_table-index") (i64.const 9)) +(assert_return (invoke "as-br_table-value") (i32.const 10)) +(assert_return (invoke "as-br_table-value-index") (i32.const 11)) + +(assert_return (invoke "as-return-value") (i64.const 7)) + +(assert_return (invoke "as-if-cond") (i32.const 2)) +(assert_return (invoke "as-if-then" (i32.const 1) (i32.const 6)) (i32.const 3)) +(assert_return (invoke "as-if-then" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-if-else" (i32.const 0) (i32.const 6)) (i32.const 4)) +(assert_return (invoke "as-if-else" (i32.const 1) (i32.const 6)) (i32.const 6)) + +(assert_return (invoke "as-select-first" (i32.const 0) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-first" (i32.const 1) (i32.const 6)) (i32.const 5)) +(assert_return (invoke "as-select-second" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-second" (i32.const 1) (i32.const 6)) (i32.const 6)) +(assert_return (invoke "as-select-cond") (i32.const 7)) + +(assert_return (invoke "as-call-first") (i32.const 12)) +(assert_return (invoke "as-call-mid") (i32.const 13)) +(assert_return (invoke "as-call-last") (i32.const 14)) + +(assert_return (invoke "as-call_indirect-func") (i32.const 20)) +(assert_return (invoke "as-call_indirect-first") (i32.const 21)) +(assert_return (invoke "as-call_indirect-mid") (i32.const 22)) +(assert_return (invoke "as-call_indirect-last") (i32.const 23)) + +(assert_return (invoke "as-set_local-value") (i32.const 17)) + +(assert_return (invoke "as-load-address") (f32.const 1.7)) +(assert_return (invoke "as-loadN-address") (i64.const 30)) + +(assert_return (invoke "as-store-address") (i32.const 30)) +(assert_return (invoke "as-store-value") (i32.const 31)) +(assert_return (invoke "as-storeN-address") (i32.const 32)) +(assert_return (invoke "as-storeN-value") (i32.const 33)) + +(assert_return (invoke "as-unary-operand") (f32.const 3.4)) + +(assert_return (invoke "as-binary-left") (i32.const 3)) +(assert_return (invoke "as-binary-right") (i64.const 45)) + +(assert_return (invoke "as-test-operand") (i32.const 44)) + +(assert_return (invoke "as-compare-left") (i32.const 43)) +(assert_return (invoke "as-compare-right") (i32.const 42)) + +(assert_return (invoke "as-convert-operand") (i32.const 41)) + +(assert_return (invoke "as-memory.grow-size") (i32.const 40)) + +(assert_invalid + (module (func $type-value-empty-vs-num (result f64) (return))) + "type mismatch" +) +(assert_invalid + (module (func $type-value-void-vs-num (result f64) (return (nop)))) + "type mismatch" +) +(assert_invalid + (module (func $type-value-num-vs-num (result f64) (return (i64.const 1)))) + "type mismatch" +) + diff --git a/test/spec/select.wast b/test/spec/select.wast new file mode 100644 index 00000000000..b4bcdfdc1b8 --- /dev/null +++ b/test/spec/select.wast @@ -0,0 +1,68 @@ +(module + (func (export "select_i32") (param $lhs i32) (param $rhs i32) (param $cond i32) (result i32) + (select (get_local $lhs) (get_local $rhs) (get_local $cond))) + + (func (export "select_i64") (param $lhs i64) (param $rhs i64) (param $cond i32) (result i64) + (select (get_local $lhs) (get_local $rhs) (get_local $cond))) + + (func (export "select_f32") (param $lhs f32) (param $rhs f32) (param $cond i32) (result f32) + (select (get_local $lhs) (get_local $rhs) (get_local $cond))) + + (func (export "select_f64") (param $lhs f64) (param $rhs f64) (param $cond i32) (result f64) + (select (get_local $lhs) (get_local $rhs) (get_local $cond))) + + ;; Check that both sides of the select are evaluated + (func (export "select_trap_l") (param $cond i32) (result i32) + (select (unreachable) (i32.const 0) (get_local $cond)) + ) + (func (export "select_trap_r") (param $cond i32) (result i32) + (select (i32.const 0) (unreachable) (get_local $cond)) + ) + + ;; NOT SUPPORTED IN BINARYEN + (;func (export "select_unreached") + (unreachable) (select) + (unreachable) (i32.const 0) (select) + (unreachable) (i32.const 0) (i32.const 0) (select) + (unreachable) (f32.const 0) (i32.const 0) (select) + (unreachable) + ;) +) + +(assert_return (invoke "select_i32" (i32.const 1) (i32.const 2) (i32.const 1)) (i32.const 1)) +(assert_return (invoke "select_i64" (i64.const 2) (i64.const 1) (i32.const 1)) (i64.const 2)) +(assert_return (invoke "select_f32" (f32.const 1) (f32.const 2) (i32.const 1)) (f32.const 1)) +(assert_return (invoke "select_f64" (f64.const 1) (f64.const 2) (i32.const 1)) (f64.const 1)) + +(assert_return (invoke "select_i32" (i32.const 1) (i32.const 2) (i32.const 0)) (i32.const 2)) +(assert_return (invoke "select_i32" (i32.const 2) (i32.const 1) (i32.const 0)) (i32.const 1)) +(assert_return (invoke "select_i64" (i64.const 2) (i64.const 1) (i32.const -1)) (i64.const 2)) +(assert_return (invoke "select_i64" (i64.const 2) (i64.const 1) (i32.const 0xf0f0f0f0)) (i64.const 2)) + +(assert_return (invoke "select_f32" (f32.const nan) (f32.const 1) (i32.const 1)) (f32.const nan)) +(assert_return (invoke "select_f32" (f32.const nan:0x20304) (f32.const 1) (i32.const 1)) (f32.const nan:0x20304)) +(assert_return (invoke "select_f32" (f32.const nan) (f32.const 1) (i32.const 0)) (f32.const 1)) +(assert_return (invoke "select_f32" (f32.const nan:0x20304) (f32.const 1) (i32.const 0)) (f32.const 1)) +(assert_return (invoke "select_f32" (f32.const 2) (f32.const nan) (i32.const 1)) (f32.const 2)) +(assert_return (invoke "select_f32" (f32.const 2) (f32.const nan:0x20304) (i32.const 1)) (f32.const 2)) +(assert_return (invoke "select_f32" (f32.const 2) (f32.const nan) (i32.const 0)) (f32.const nan)) +(assert_return (invoke "select_f32" (f32.const 2) (f32.const nan:0x20304) (i32.const 0)) (f32.const nan:0x20304)) + +(assert_return (invoke "select_f64" (f64.const nan) (f64.const 1) (i32.const 1)) (f64.const nan)) +(assert_return (invoke "select_f64" (f64.const nan:0x20304) (f64.const 1) (i32.const 1)) (f64.const nan:0x20304)) +(assert_return (invoke "select_f64" (f64.const nan) (f64.const 1) (i32.const 0)) (f64.const 1)) +(assert_return (invoke "select_f64" (f64.const nan:0x20304) (f64.const 1) (i32.const 0)) (f64.const 1)) +(assert_return (invoke "select_f64" (f64.const 2) (f64.const nan) (i32.const 1)) (f64.const 2)) +(assert_return (invoke "select_f64" (f64.const 2) (f64.const nan:0x20304) (i32.const 1)) (f64.const 2)) +(assert_return (invoke "select_f64" (f64.const 2) (f64.const nan) (i32.const 0)) (f64.const nan)) +(assert_return (invoke "select_f64" (f64.const 2) (f64.const nan:0x20304) (i32.const 0)) (f64.const nan:0x20304)) + +(assert_trap (invoke "select_trap_l" (i32.const 1)) "unreachable executed") +(assert_trap (invoke "select_trap_l" (i32.const 0)) "unreachable executed") +(assert_trap (invoke "select_trap_r" (i32.const 1)) "unreachable executed") +(assert_trap (invoke "select_trap_r" (i32.const 0)) "unreachable executed") + +(assert_invalid + (module (func $arity-0 (select (nop) (nop) (i32.const 1)))) + "type mismatch" +) diff --git a/test/spec/set_local.wast b/test/spec/set_local.wast new file mode 100644 index 00000000000..5a006e1148e --- /dev/null +++ b/test/spec/set_local.wast @@ -0,0 +1,205 @@ +;; Test `set_local` operator + +(module + ;; Typing + + (func (export "type-local-i32") (local i32) (set_local 0 (i32.const 0))) + (func (export "type-local-i64") (local i64) (set_local 0 (i64.const 0))) + (func (export "type-local-f32") (local f32) (set_local 0 (f32.const 0))) + (func (export "type-local-f64") (local f64) (set_local 0 (f64.const 0))) + + (func (export "type-param-i32") (param i32) (set_local 0 (i32.const 10))) + (func (export "type-param-i64") (param i64) (set_local 0 (i64.const 11))) + (func (export "type-param-f32") (param f32) (set_local 0 (f32.const 11.1))) + (func (export "type-param-f64") (param f64) (set_local 0 (f64.const 12.2))) + + (func (export "type-mixed") (param i64 f32 f64 i32 i32) (local f32 i64 i64 f64) + (set_local 0 (i64.const 0)) + (set_local 1 (f32.const 0)) + (set_local 2 (f64.const 0)) + (set_local 3 (i32.const 0)) + (set_local 4 (i32.const 0)) + (set_local 5 (f32.const 0)) + (set_local 6 (i64.const 0)) + (set_local 7 (i64.const 0)) + (set_local 8 (f64.const 0)) + ) + + ;; Writing + + (func (export "write") (param i64 f32 f64 i32 i32) (result i64) + (local f32 i64 i64 f64) + (set_local 1 (f32.const -0.3)) + (set_local 3 (i32.const 40)) + (set_local 4 (i32.const -7)) + (set_local 5 (f32.const 5.5)) + (set_local 6 (i64.const 6)) + (set_local 8 (f64.const 8)) + (i64.trunc_s/f64 + (f64.add + (f64.convert_u/i64 (get_local 0)) + (f64.add + (f64.promote/f32 (get_local 1)) + (f64.add + (get_local 2) + (f64.add + (f64.convert_u/i32 (get_local 3)) + (f64.add + (f64.convert_s/i32 (get_local 4)) + (f64.add + (f64.promote/f32 (get_local 5)) + (f64.add + (f64.convert_u/i64 (get_local 6)) + (f64.add + (f64.convert_u/i64 (get_local 7)) + (get_local 8) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) +) + +(assert_return (invoke "type-local-i32")) +(assert_return (invoke "type-local-i64")) +(assert_return (invoke "type-local-f32")) +(assert_return (invoke "type-local-f64")) + +(assert_return (invoke "type-param-i32" (i32.const 2))) +(assert_return (invoke "type-param-i64" (i64.const 3))) +(assert_return (invoke "type-param-f32" (f32.const 4.4))) +(assert_return (invoke "type-param-f64" (f64.const 5.5))) + +(assert_return + (invoke "type-mixed" + (i64.const 1) (f32.const 2.2) (f64.const 3.3) (i32.const 4) (i32.const 5) + ) +) + +(assert_return + (invoke "write" + (i64.const 1) (f32.const 2) (f64.const 3.3) (i32.const 4) (i32.const 5) + ) + (i64.const 56) +) + + +;; Invalid typing of access to locals + +(assert_invalid + (module (func $type-local-num-vs-num (result i64) (local i32) + (set_local 0 (i32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f32) + (i32.eqz (set_local 0 (f32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f64 i64) + (f64.neg (set_local 1 (i64.const 0))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-local-arg-void-vs-num (local i32) (set_local 0 (nop)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-arg-num-vs-num (local i32) (set_local 0 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-arg-num-vs-num (local f32) (set_local 0 (f64.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-arg-num-vs-num (local f64 i64) (set_local 1 (f64.const 0)))) + "type mismatch" +) + + +;; Invalid typing of access to parameters + +(assert_invalid + (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + +(assert_invalid + (module (func $type-param-arg-void-vs-num (param i32) (set_local 0 (nop)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-arg-num-vs-num (param i32) (set_local 0 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-arg-num-vs-num (param f32) (set_local 0 (f64.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-arg-num-vs-num (param f64 i64) (set_local 1 (f64.const 0)))) + "type mismatch" +) + + +;; Invalid local index + +(assert_invalid + (module (func $unbound-local (local i32 i64) (get_local 3))) + "unknown local" +) +(assert_invalid + (module (func $large-local (local i32 i64) (get_local 14324343))) + "unknown local" +) + +(assert_invalid + (module (func $unbound-param (param i32 i64) (get_local 2))) + "unknown local" +) +(assert_invalid + (module (func $large-param (local i32 i64) (get_local 714324343))) + "unknown local" +) + +(assert_invalid + (module (func $unbound-mixed (param i32) (local i32 i64) (get_local 3))) + "unknown local" +) +(assert_invalid + (module (func $large-mixed (param i64) (local i32 i64) (get_local 214324343))) + "unknown local" +) + +(assert_invalid + (module (func $type-mixed-arg-num-vs-num (param f32) (local i32) (set_local 1 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-mixed-arg-num-vs-num (param i64 i32) (local f32) (set_local 1 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-mixed-arg-num-vs-num (param i64) (local f64 i64) (set_local 1 (i64.const 0)))) + "type mismatch" +) + diff --git a/test/spec/skip-stack-guard-page.wast b/test/spec/skip-stack-guard-page.wast new file mode 100644 index 00000000000..14e4ba58e06 --- /dev/null +++ b/test/spec/skip-stack-guard-page.wast @@ -0,0 +1,2288 @@ +(; NOT SUPPORTED IN BINARYEN + +;; This tests that the stack overflow guard page can't be skipped by a function with more than a page of locals. +(module + (memory 1) + (export "test-guard-page-skip" (func $test-guard-page-skip)) + + (func $test-guard-page-skip + (param $depth i32) + (if (i32.eq (get_local $depth) (i32.const 0)) + (then (call $function-with-many-locals)) + (else (call $test-guard-page-skip (i32.sub (get_local $depth) (i32.const 1)))) + ) + ) + + (func $function-with-many-locals + + ;; 1056 i64 = 8448 bytes of locals + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x000-0x007 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x008-0x00f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x010-0x017 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x018-0x01f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x020-0x027 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x028-0x02f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x030-0x037 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x038-0x03f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x040-0x047 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x048-0x04f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x050-0x057 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x058-0x05f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x060-0x067 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x068-0x06f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x070-0x077 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x078-0x07f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x080-0x087 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x088-0x08f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x090-0x097 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x098-0x09f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0a0-0x0a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0a8-0x0af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0b0-0x0b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0b8-0x0bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0c0-0x0c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0c8-0x0cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0d0-0x0d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0d8-0x0df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0e0-0x0e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0e8-0x0ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0f0-0x0f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x0f8-0x0ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x100-0x107 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x108-0x10f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x110-0x117 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x118-0x11f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x120-0x127 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x128-0x12f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x130-0x137 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x138-0x13f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x140-0x147 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x148-0x14f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x150-0x157 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x158-0x15f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x160-0x167 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x168-0x16f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x170-0x177 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x178-0x17f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x180-0x187 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x188-0x18f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x190-0x197 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x198-0x19f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1a0-0x1a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1a8-0x1af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1b0-0x1b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1b8-0x1bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1c0-0x1c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1c8-0x1cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1d0-0x1d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1d8-0x1df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1e0-0x1e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1e8-0x1ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1f0-0x1f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x1f8-0x1ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x200-0x207 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x208-0x20f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x210-0x217 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x218-0x21f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x220-0x227 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x228-0x22f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x230-0x237 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x238-0x23f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x240-0x247 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x248-0x24f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x250-0x257 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x258-0x25f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x260-0x267 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x268-0x26f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x270-0x277 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x278-0x27f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x280-0x287 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x288-0x28f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x290-0x297 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x298-0x29f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2a0-0x2a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2a8-0x2af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2b0-0x2b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2b8-0x2bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2c0-0x2c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2c8-0x2cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2d0-0x2d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2d8-0x2df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2e0-0x2e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2e8-0x2ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2f0-0x2f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x2f8-0x2ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x300-0x307 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x308-0x30f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x310-0x317 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x318-0x31f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x320-0x327 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x328-0x32f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x330-0x337 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x338-0x33f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x340-0x347 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x348-0x34f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x350-0x357 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x358-0x35f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x360-0x367 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x368-0x36f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x370-0x377 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x378-0x37f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x380-0x387 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x388-0x38f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x390-0x397 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x398-0x39f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3a0-0x3a7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3a8-0x3af + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3b0-0x3b7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3b8-0x3bf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3c0-0x3c7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3c8-0x3cf + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3d0-0x3d7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3d8-0x3df + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3e0-0x3e7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3e8-0x3ef + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3f0-0x3f7 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x3f8-0x3ff + + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x400-0x407 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x408-0x40f + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x410-0x417 + (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) (local i64) ;; 0x418-0x41f + + ;; recurse first to try to make the callee access the stack below the space allocated for the locals before the locals themselves have been initialized. + (call $function-with-many-locals) + + ;; load from memory into the locals + (set_local 0x000 (i64.load offset=0x000 align=1 (i32.const 0))) + (set_local 0x001 (i64.load offset=0x001 align=1 (i32.const 0))) + (set_local 0x002 (i64.load offset=0x002 align=1 (i32.const 0))) + (set_local 0x003 (i64.load offset=0x003 align=1 (i32.const 0))) + (set_local 0x004 (i64.load offset=0x004 align=1 (i32.const 0))) + (set_local 0x005 (i64.load offset=0x005 align=1 (i32.const 0))) + (set_local 0x006 (i64.load offset=0x006 align=1 (i32.const 0))) + (set_local 0x007 (i64.load offset=0x007 align=1 (i32.const 0))) + (set_local 0x008 (i64.load offset=0x008 align=1 (i32.const 0))) + (set_local 0x009 (i64.load offset=0x009 align=1 (i32.const 0))) + (set_local 0x00a (i64.load offset=0x00a align=1 (i32.const 0))) + (set_local 0x00b (i64.load offset=0x00b align=1 (i32.const 0))) + (set_local 0x00c (i64.load offset=0x00c align=1 (i32.const 0))) + (set_local 0x00d (i64.load offset=0x00d align=1 (i32.const 0))) + (set_local 0x00e (i64.load offset=0x00e align=1 (i32.const 0))) + (set_local 0x00f (i64.load offset=0x00f align=1 (i32.const 0))) + (set_local 0x010 (i64.load offset=0x010 align=1 (i32.const 0))) + (set_local 0x011 (i64.load offset=0x011 align=1 (i32.const 0))) + (set_local 0x012 (i64.load offset=0x012 align=1 (i32.const 0))) + (set_local 0x013 (i64.load offset=0x013 align=1 (i32.const 0))) + (set_local 0x014 (i64.load offset=0x014 align=1 (i32.const 0))) + (set_local 0x015 (i64.load offset=0x015 align=1 (i32.const 0))) + (set_local 0x016 (i64.load offset=0x016 align=1 (i32.const 0))) + (set_local 0x017 (i64.load offset=0x017 align=1 (i32.const 0))) + (set_local 0x018 (i64.load offset=0x018 align=1 (i32.const 0))) + (set_local 0x019 (i64.load offset=0x019 align=1 (i32.const 0))) + (set_local 0x01a (i64.load offset=0x01a align=1 (i32.const 0))) + (set_local 0x01b (i64.load offset=0x01b align=1 (i32.const 0))) + (set_local 0x01c (i64.load offset=0x01c align=1 (i32.const 0))) + (set_local 0x01d (i64.load offset=0x01d align=1 (i32.const 0))) + (set_local 0x01e (i64.load offset=0x01e align=1 (i32.const 0))) + (set_local 0x01f (i64.load offset=0x01f align=1 (i32.const 0))) + (set_local 0x020 (i64.load offset=0x020 align=1 (i32.const 0))) + (set_local 0x021 (i64.load offset=0x021 align=1 (i32.const 0))) + (set_local 0x022 (i64.load offset=0x022 align=1 (i32.const 0))) + (set_local 0x023 (i64.load offset=0x023 align=1 (i32.const 0))) + (set_local 0x024 (i64.load offset=0x024 align=1 (i32.const 0))) + (set_local 0x025 (i64.load offset=0x025 align=1 (i32.const 0))) + (set_local 0x026 (i64.load offset=0x026 align=1 (i32.const 0))) + (set_local 0x027 (i64.load offset=0x027 align=1 (i32.const 0))) + (set_local 0x028 (i64.load offset=0x028 align=1 (i32.const 0))) + (set_local 0x029 (i64.load offset=0x029 align=1 (i32.const 0))) + (set_local 0x02a (i64.load offset=0x02a align=1 (i32.const 0))) + (set_local 0x02b (i64.load offset=0x02b align=1 (i32.const 0))) + (set_local 0x02c (i64.load offset=0x02c align=1 (i32.const 0))) + (set_local 0x02d (i64.load offset=0x02d align=1 (i32.const 0))) + (set_local 0x02e (i64.load offset=0x02e align=1 (i32.const 0))) + (set_local 0x02f (i64.load offset=0x02f align=1 (i32.const 0))) + (set_local 0x030 (i64.load offset=0x030 align=1 (i32.const 0))) + (set_local 0x031 (i64.load offset=0x031 align=1 (i32.const 0))) + (set_local 0x032 (i64.load offset=0x032 align=1 (i32.const 0))) + (set_local 0x033 (i64.load offset=0x033 align=1 (i32.const 0))) + (set_local 0x034 (i64.load offset=0x034 align=1 (i32.const 0))) + (set_local 0x035 (i64.load offset=0x035 align=1 (i32.const 0))) + (set_local 0x036 (i64.load offset=0x036 align=1 (i32.const 0))) + (set_local 0x037 (i64.load offset=0x037 align=1 (i32.const 0))) + (set_local 0x038 (i64.load offset=0x038 align=1 (i32.const 0))) + (set_local 0x039 (i64.load offset=0x039 align=1 (i32.const 0))) + (set_local 0x03a (i64.load offset=0x03a align=1 (i32.const 0))) + (set_local 0x03b (i64.load offset=0x03b align=1 (i32.const 0))) + (set_local 0x03c (i64.load offset=0x03c align=1 (i32.const 0))) + (set_local 0x03d (i64.load offset=0x03d align=1 (i32.const 0))) + (set_local 0x03e (i64.load offset=0x03e align=1 (i32.const 0))) + (set_local 0x03f (i64.load offset=0x03f align=1 (i32.const 0))) + (set_local 0x040 (i64.load offset=0x040 align=1 (i32.const 0))) + (set_local 0x041 (i64.load offset=0x041 align=1 (i32.const 0))) + (set_local 0x042 (i64.load offset=0x042 align=1 (i32.const 0))) + (set_local 0x043 (i64.load offset=0x043 align=1 (i32.const 0))) + (set_local 0x044 (i64.load offset=0x044 align=1 (i32.const 0))) + (set_local 0x045 (i64.load offset=0x045 align=1 (i32.const 0))) + (set_local 0x046 (i64.load offset=0x046 align=1 (i32.const 0))) + (set_local 0x047 (i64.load offset=0x047 align=1 (i32.const 0))) + (set_local 0x048 (i64.load offset=0x048 align=1 (i32.const 0))) + (set_local 0x049 (i64.load offset=0x049 align=1 (i32.const 0))) + (set_local 0x04a (i64.load offset=0x04a align=1 (i32.const 0))) + (set_local 0x04b (i64.load offset=0x04b align=1 (i32.const 0))) + (set_local 0x04c (i64.load offset=0x04c align=1 (i32.const 0))) + (set_local 0x04d (i64.load offset=0x04d align=1 (i32.const 0))) + (set_local 0x04e (i64.load offset=0x04e align=1 (i32.const 0))) + (set_local 0x04f (i64.load offset=0x04f align=1 (i32.const 0))) + (set_local 0x050 (i64.load offset=0x050 align=1 (i32.const 0))) + (set_local 0x051 (i64.load offset=0x051 align=1 (i32.const 0))) + (set_local 0x052 (i64.load offset=0x052 align=1 (i32.const 0))) + (set_local 0x053 (i64.load offset=0x053 align=1 (i32.const 0))) + (set_local 0x054 (i64.load offset=0x054 align=1 (i32.const 0))) + (set_local 0x055 (i64.load offset=0x055 align=1 (i32.const 0))) + (set_local 0x056 (i64.load offset=0x056 align=1 (i32.const 0))) + (set_local 0x057 (i64.load offset=0x057 align=1 (i32.const 0))) + (set_local 0x058 (i64.load offset=0x058 align=1 (i32.const 0))) + (set_local 0x059 (i64.load offset=0x059 align=1 (i32.const 0))) + (set_local 0x05a (i64.load offset=0x05a align=1 (i32.const 0))) + (set_local 0x05b (i64.load offset=0x05b align=1 (i32.const 0))) + (set_local 0x05c (i64.load offset=0x05c align=1 (i32.const 0))) + (set_local 0x05d (i64.load offset=0x05d align=1 (i32.const 0))) + (set_local 0x05e (i64.load offset=0x05e align=1 (i32.const 0))) + (set_local 0x05f (i64.load offset=0x05f align=1 (i32.const 0))) + (set_local 0x060 (i64.load offset=0x060 align=1 (i32.const 0))) + (set_local 0x061 (i64.load offset=0x061 align=1 (i32.const 0))) + (set_local 0x062 (i64.load offset=0x062 align=1 (i32.const 0))) + (set_local 0x063 (i64.load offset=0x063 align=1 (i32.const 0))) + (set_local 0x064 (i64.load offset=0x064 align=1 (i32.const 0))) + (set_local 0x065 (i64.load offset=0x065 align=1 (i32.const 0))) + (set_local 0x066 (i64.load offset=0x066 align=1 (i32.const 0))) + (set_local 0x067 (i64.load offset=0x067 align=1 (i32.const 0))) + (set_local 0x068 (i64.load offset=0x068 align=1 (i32.const 0))) + (set_local 0x069 (i64.load offset=0x069 align=1 (i32.const 0))) + (set_local 0x06a (i64.load offset=0x06a align=1 (i32.const 0))) + (set_local 0x06b (i64.load offset=0x06b align=1 (i32.const 0))) + (set_local 0x06c (i64.load offset=0x06c align=1 (i32.const 0))) + (set_local 0x06d (i64.load offset=0x06d align=1 (i32.const 0))) + (set_local 0x06e (i64.load offset=0x06e align=1 (i32.const 0))) + (set_local 0x06f (i64.load offset=0x06f align=1 (i32.const 0))) + (set_local 0x070 (i64.load offset=0x070 align=1 (i32.const 0))) + (set_local 0x071 (i64.load offset=0x071 align=1 (i32.const 0))) + (set_local 0x072 (i64.load offset=0x072 align=1 (i32.const 0))) + (set_local 0x073 (i64.load offset=0x073 align=1 (i32.const 0))) + (set_local 0x074 (i64.load offset=0x074 align=1 (i32.const 0))) + (set_local 0x075 (i64.load offset=0x075 align=1 (i32.const 0))) + (set_local 0x076 (i64.load offset=0x076 align=1 (i32.const 0))) + (set_local 0x077 (i64.load offset=0x077 align=1 (i32.const 0))) + (set_local 0x078 (i64.load offset=0x078 align=1 (i32.const 0))) + (set_local 0x079 (i64.load offset=0x079 align=1 (i32.const 0))) + (set_local 0x07a (i64.load offset=0x07a align=1 (i32.const 0))) + (set_local 0x07b (i64.load offset=0x07b align=1 (i32.const 0))) + (set_local 0x07c (i64.load offset=0x07c align=1 (i32.const 0))) + (set_local 0x07d (i64.load offset=0x07d align=1 (i32.const 0))) + (set_local 0x07e (i64.load offset=0x07e align=1 (i32.const 0))) + (set_local 0x07f (i64.load offset=0x07f align=1 (i32.const 0))) + (set_local 0x080 (i64.load offset=0x080 align=1 (i32.const 0))) + (set_local 0x081 (i64.load offset=0x081 align=1 (i32.const 0))) + (set_local 0x082 (i64.load offset=0x082 align=1 (i32.const 0))) + (set_local 0x083 (i64.load offset=0x083 align=1 (i32.const 0))) + (set_local 0x084 (i64.load offset=0x084 align=1 (i32.const 0))) + (set_local 0x085 (i64.load offset=0x085 align=1 (i32.const 0))) + (set_local 0x086 (i64.load offset=0x086 align=1 (i32.const 0))) + (set_local 0x087 (i64.load offset=0x087 align=1 (i32.const 0))) + (set_local 0x088 (i64.load offset=0x088 align=1 (i32.const 0))) + (set_local 0x089 (i64.load offset=0x089 align=1 (i32.const 0))) + (set_local 0x08a (i64.load offset=0x08a align=1 (i32.const 0))) + (set_local 0x08b (i64.load offset=0x08b align=1 (i32.const 0))) + (set_local 0x08c (i64.load offset=0x08c align=1 (i32.const 0))) + (set_local 0x08d (i64.load offset=0x08d align=1 (i32.const 0))) + (set_local 0x08e (i64.load offset=0x08e align=1 (i32.const 0))) + (set_local 0x08f (i64.load offset=0x08f align=1 (i32.const 0))) + (set_local 0x090 (i64.load offset=0x090 align=1 (i32.const 0))) + (set_local 0x091 (i64.load offset=0x091 align=1 (i32.const 0))) + (set_local 0x092 (i64.load offset=0x092 align=1 (i32.const 0))) + (set_local 0x093 (i64.load offset=0x093 align=1 (i32.const 0))) + (set_local 0x094 (i64.load offset=0x094 align=1 (i32.const 0))) + (set_local 0x095 (i64.load offset=0x095 align=1 (i32.const 0))) + (set_local 0x096 (i64.load offset=0x096 align=1 (i32.const 0))) + (set_local 0x097 (i64.load offset=0x097 align=1 (i32.const 0))) + (set_local 0x098 (i64.load offset=0x098 align=1 (i32.const 0))) + (set_local 0x099 (i64.load offset=0x099 align=1 (i32.const 0))) + (set_local 0x09a (i64.load offset=0x09a align=1 (i32.const 0))) + (set_local 0x09b (i64.load offset=0x09b align=1 (i32.const 0))) + (set_local 0x09c (i64.load offset=0x09c align=1 (i32.const 0))) + (set_local 0x09d (i64.load offset=0x09d align=1 (i32.const 0))) + (set_local 0x09e (i64.load offset=0x09e align=1 (i32.const 0))) + (set_local 0x09f (i64.load offset=0x09f align=1 (i32.const 0))) + (set_local 0x0a0 (i64.load offset=0x0a0 align=1 (i32.const 0))) + (set_local 0x0a1 (i64.load offset=0x0a1 align=1 (i32.const 0))) + (set_local 0x0a2 (i64.load offset=0x0a2 align=1 (i32.const 0))) + (set_local 0x0a3 (i64.load offset=0x0a3 align=1 (i32.const 0))) + (set_local 0x0a4 (i64.load offset=0x0a4 align=1 (i32.const 0))) + (set_local 0x0a5 (i64.load offset=0x0a5 align=1 (i32.const 0))) + (set_local 0x0a6 (i64.load offset=0x0a6 align=1 (i32.const 0))) + (set_local 0x0a7 (i64.load offset=0x0a7 align=1 (i32.const 0))) + (set_local 0x0a8 (i64.load offset=0x0a8 align=1 (i32.const 0))) + (set_local 0x0a9 (i64.load offset=0x0a9 align=1 (i32.const 0))) + (set_local 0x0aa (i64.load offset=0x0aa align=1 (i32.const 0))) + (set_local 0x0ab (i64.load offset=0x0ab align=1 (i32.const 0))) + (set_local 0x0ac (i64.load offset=0x0ac align=1 (i32.const 0))) + (set_local 0x0ad (i64.load offset=0x0ad align=1 (i32.const 0))) + (set_local 0x0ae (i64.load offset=0x0ae align=1 (i32.const 0))) + (set_local 0x0af (i64.load offset=0x0af align=1 (i32.const 0))) + (set_local 0x0b0 (i64.load offset=0x0b0 align=1 (i32.const 0))) + (set_local 0x0b1 (i64.load offset=0x0b1 align=1 (i32.const 0))) + (set_local 0x0b2 (i64.load offset=0x0b2 align=1 (i32.const 0))) + (set_local 0x0b3 (i64.load offset=0x0b3 align=1 (i32.const 0))) + (set_local 0x0b4 (i64.load offset=0x0b4 align=1 (i32.const 0))) + (set_local 0x0b5 (i64.load offset=0x0b5 align=1 (i32.const 0))) + (set_local 0x0b6 (i64.load offset=0x0b6 align=1 (i32.const 0))) + (set_local 0x0b7 (i64.load offset=0x0b7 align=1 (i32.const 0))) + (set_local 0x0b8 (i64.load offset=0x0b8 align=1 (i32.const 0))) + (set_local 0x0b9 (i64.load offset=0x0b9 align=1 (i32.const 0))) + (set_local 0x0ba (i64.load offset=0x0ba align=1 (i32.const 0))) + (set_local 0x0bb (i64.load offset=0x0bb align=1 (i32.const 0))) + (set_local 0x0bc (i64.load offset=0x0bc align=1 (i32.const 0))) + (set_local 0x0bd (i64.load offset=0x0bd align=1 (i32.const 0))) + (set_local 0x0be (i64.load offset=0x0be align=1 (i32.const 0))) + (set_local 0x0bf (i64.load offset=0x0bf align=1 (i32.const 0))) + (set_local 0x0c0 (i64.load offset=0x0c0 align=1 (i32.const 0))) + (set_local 0x0c1 (i64.load offset=0x0c1 align=1 (i32.const 0))) + (set_local 0x0c2 (i64.load offset=0x0c2 align=1 (i32.const 0))) + (set_local 0x0c3 (i64.load offset=0x0c3 align=1 (i32.const 0))) + (set_local 0x0c4 (i64.load offset=0x0c4 align=1 (i32.const 0))) + (set_local 0x0c5 (i64.load offset=0x0c5 align=1 (i32.const 0))) + (set_local 0x0c6 (i64.load offset=0x0c6 align=1 (i32.const 0))) + (set_local 0x0c7 (i64.load offset=0x0c7 align=1 (i32.const 0))) + (set_local 0x0c8 (i64.load offset=0x0c8 align=1 (i32.const 0))) + (set_local 0x0c9 (i64.load offset=0x0c9 align=1 (i32.const 0))) + (set_local 0x0ca (i64.load offset=0x0ca align=1 (i32.const 0))) + (set_local 0x0cb (i64.load offset=0x0cb align=1 (i32.const 0))) + (set_local 0x0cc (i64.load offset=0x0cc align=1 (i32.const 0))) + (set_local 0x0cd (i64.load offset=0x0cd align=1 (i32.const 0))) + (set_local 0x0ce (i64.load offset=0x0ce align=1 (i32.const 0))) + (set_local 0x0cf (i64.load offset=0x0cf align=1 (i32.const 0))) + (set_local 0x0d0 (i64.load offset=0x0d0 align=1 (i32.const 0))) + (set_local 0x0d1 (i64.load offset=0x0d1 align=1 (i32.const 0))) + (set_local 0x0d2 (i64.load offset=0x0d2 align=1 (i32.const 0))) + (set_local 0x0d3 (i64.load offset=0x0d3 align=1 (i32.const 0))) + (set_local 0x0d4 (i64.load offset=0x0d4 align=1 (i32.const 0))) + (set_local 0x0d5 (i64.load offset=0x0d5 align=1 (i32.const 0))) + (set_local 0x0d6 (i64.load offset=0x0d6 align=1 (i32.const 0))) + (set_local 0x0d7 (i64.load offset=0x0d7 align=1 (i32.const 0))) + (set_local 0x0d8 (i64.load offset=0x0d8 align=1 (i32.const 0))) + (set_local 0x0d9 (i64.load offset=0x0d9 align=1 (i32.const 0))) + (set_local 0x0da (i64.load offset=0x0da align=1 (i32.const 0))) + (set_local 0x0db (i64.load offset=0x0db align=1 (i32.const 0))) + (set_local 0x0dc (i64.load offset=0x0dc align=1 (i32.const 0))) + (set_local 0x0dd (i64.load offset=0x0dd align=1 (i32.const 0))) + (set_local 0x0de (i64.load offset=0x0de align=1 (i32.const 0))) + (set_local 0x0df (i64.load offset=0x0df align=1 (i32.const 0))) + (set_local 0x0e0 (i64.load offset=0x0e0 align=1 (i32.const 0))) + (set_local 0x0e1 (i64.load offset=0x0e1 align=1 (i32.const 0))) + (set_local 0x0e2 (i64.load offset=0x0e2 align=1 (i32.const 0))) + (set_local 0x0e3 (i64.load offset=0x0e3 align=1 (i32.const 0))) + (set_local 0x0e4 (i64.load offset=0x0e4 align=1 (i32.const 0))) + (set_local 0x0e5 (i64.load offset=0x0e5 align=1 (i32.const 0))) + (set_local 0x0e6 (i64.load offset=0x0e6 align=1 (i32.const 0))) + (set_local 0x0e7 (i64.load offset=0x0e7 align=1 (i32.const 0))) + (set_local 0x0e8 (i64.load offset=0x0e8 align=1 (i32.const 0))) + (set_local 0x0e9 (i64.load offset=0x0e9 align=1 (i32.const 0))) + (set_local 0x0ea (i64.load offset=0x0ea align=1 (i32.const 0))) + (set_local 0x0eb (i64.load offset=0x0eb align=1 (i32.const 0))) + (set_local 0x0ec (i64.load offset=0x0ec align=1 (i32.const 0))) + (set_local 0x0ed (i64.load offset=0x0ed align=1 (i32.const 0))) + (set_local 0x0ee (i64.load offset=0x0ee align=1 (i32.const 0))) + (set_local 0x0ef (i64.load offset=0x0ef align=1 (i32.const 0))) + (set_local 0x0f0 (i64.load offset=0x0f0 align=1 (i32.const 0))) + (set_local 0x0f1 (i64.load offset=0x0f1 align=1 (i32.const 0))) + (set_local 0x0f2 (i64.load offset=0x0f2 align=1 (i32.const 0))) + (set_local 0x0f3 (i64.load offset=0x0f3 align=1 (i32.const 0))) + (set_local 0x0f4 (i64.load offset=0x0f4 align=1 (i32.const 0))) + (set_local 0x0f5 (i64.load offset=0x0f5 align=1 (i32.const 0))) + (set_local 0x0f6 (i64.load offset=0x0f6 align=1 (i32.const 0))) + (set_local 0x0f7 (i64.load offset=0x0f7 align=1 (i32.const 0))) + (set_local 0x0f8 (i64.load offset=0x0f8 align=1 (i32.const 0))) + (set_local 0x0f9 (i64.load offset=0x0f9 align=1 (i32.const 0))) + (set_local 0x0fa (i64.load offset=0x0fa align=1 (i32.const 0))) + (set_local 0x0fb (i64.load offset=0x0fb align=1 (i32.const 0))) + (set_local 0x0fc (i64.load offset=0x0fc align=1 (i32.const 0))) + (set_local 0x0fd (i64.load offset=0x0fd align=1 (i32.const 0))) + (set_local 0x0fe (i64.load offset=0x0fe align=1 (i32.const 0))) + (set_local 0x0ff (i64.load offset=0x0ff align=1 (i32.const 0))) + (set_local 0x100 (i64.load offset=0x100 align=1 (i32.const 0))) + (set_local 0x101 (i64.load offset=0x101 align=1 (i32.const 0))) + (set_local 0x102 (i64.load offset=0x102 align=1 (i32.const 0))) + (set_local 0x103 (i64.load offset=0x103 align=1 (i32.const 0))) + (set_local 0x104 (i64.load offset=0x104 align=1 (i32.const 0))) + (set_local 0x105 (i64.load offset=0x105 align=1 (i32.const 0))) + (set_local 0x106 (i64.load offset=0x106 align=1 (i32.const 0))) + (set_local 0x107 (i64.load offset=0x107 align=1 (i32.const 0))) + (set_local 0x108 (i64.load offset=0x108 align=1 (i32.const 0))) + (set_local 0x109 (i64.load offset=0x109 align=1 (i32.const 0))) + (set_local 0x10a (i64.load offset=0x10a align=1 (i32.const 0))) + (set_local 0x10b (i64.load offset=0x10b align=1 (i32.const 0))) + (set_local 0x10c (i64.load offset=0x10c align=1 (i32.const 0))) + (set_local 0x10d (i64.load offset=0x10d align=1 (i32.const 0))) + (set_local 0x10e (i64.load offset=0x10e align=1 (i32.const 0))) + (set_local 0x10f (i64.load offset=0x10f align=1 (i32.const 0))) + (set_local 0x110 (i64.load offset=0x110 align=1 (i32.const 0))) + (set_local 0x111 (i64.load offset=0x111 align=1 (i32.const 0))) + (set_local 0x112 (i64.load offset=0x112 align=1 (i32.const 0))) + (set_local 0x113 (i64.load offset=0x113 align=1 (i32.const 0))) + (set_local 0x114 (i64.load offset=0x114 align=1 (i32.const 0))) + (set_local 0x115 (i64.load offset=0x115 align=1 (i32.const 0))) + (set_local 0x116 (i64.load offset=0x116 align=1 (i32.const 0))) + (set_local 0x117 (i64.load offset=0x117 align=1 (i32.const 0))) + (set_local 0x118 (i64.load offset=0x118 align=1 (i32.const 0))) + (set_local 0x119 (i64.load offset=0x119 align=1 (i32.const 0))) + (set_local 0x11a (i64.load offset=0x11a align=1 (i32.const 0))) + (set_local 0x11b (i64.load offset=0x11b align=1 (i32.const 0))) + (set_local 0x11c (i64.load offset=0x11c align=1 (i32.const 0))) + (set_local 0x11d (i64.load offset=0x11d align=1 (i32.const 0))) + (set_local 0x11e (i64.load offset=0x11e align=1 (i32.const 0))) + (set_local 0x11f (i64.load offset=0x11f align=1 (i32.const 0))) + (set_local 0x120 (i64.load offset=0x120 align=1 (i32.const 0))) + (set_local 0x121 (i64.load offset=0x121 align=1 (i32.const 0))) + (set_local 0x122 (i64.load offset=0x122 align=1 (i32.const 0))) + (set_local 0x123 (i64.load offset=0x123 align=1 (i32.const 0))) + (set_local 0x124 (i64.load offset=0x124 align=1 (i32.const 0))) + (set_local 0x125 (i64.load offset=0x125 align=1 (i32.const 0))) + (set_local 0x126 (i64.load offset=0x126 align=1 (i32.const 0))) + (set_local 0x127 (i64.load offset=0x127 align=1 (i32.const 0))) + (set_local 0x128 (i64.load offset=0x128 align=1 (i32.const 0))) + (set_local 0x129 (i64.load offset=0x129 align=1 (i32.const 0))) + (set_local 0x12a (i64.load offset=0x12a align=1 (i32.const 0))) + (set_local 0x12b (i64.load offset=0x12b align=1 (i32.const 0))) + (set_local 0x12c (i64.load offset=0x12c align=1 (i32.const 0))) + (set_local 0x12d (i64.load offset=0x12d align=1 (i32.const 0))) + (set_local 0x12e (i64.load offset=0x12e align=1 (i32.const 0))) + (set_local 0x12f (i64.load offset=0x12f align=1 (i32.const 0))) + (set_local 0x130 (i64.load offset=0x130 align=1 (i32.const 0))) + (set_local 0x131 (i64.load offset=0x131 align=1 (i32.const 0))) + (set_local 0x132 (i64.load offset=0x132 align=1 (i32.const 0))) + (set_local 0x133 (i64.load offset=0x133 align=1 (i32.const 0))) + (set_local 0x134 (i64.load offset=0x134 align=1 (i32.const 0))) + (set_local 0x135 (i64.load offset=0x135 align=1 (i32.const 0))) + (set_local 0x136 (i64.load offset=0x136 align=1 (i32.const 0))) + (set_local 0x137 (i64.load offset=0x137 align=1 (i32.const 0))) + (set_local 0x138 (i64.load offset=0x138 align=1 (i32.const 0))) + (set_local 0x139 (i64.load offset=0x139 align=1 (i32.const 0))) + (set_local 0x13a (i64.load offset=0x13a align=1 (i32.const 0))) + (set_local 0x13b (i64.load offset=0x13b align=1 (i32.const 0))) + (set_local 0x13c (i64.load offset=0x13c align=1 (i32.const 0))) + (set_local 0x13d (i64.load offset=0x13d align=1 (i32.const 0))) + (set_local 0x13e (i64.load offset=0x13e align=1 (i32.const 0))) + (set_local 0x13f (i64.load offset=0x13f align=1 (i32.const 0))) + (set_local 0x140 (i64.load offset=0x140 align=1 (i32.const 0))) + (set_local 0x141 (i64.load offset=0x141 align=1 (i32.const 0))) + (set_local 0x142 (i64.load offset=0x142 align=1 (i32.const 0))) + (set_local 0x143 (i64.load offset=0x143 align=1 (i32.const 0))) + (set_local 0x144 (i64.load offset=0x144 align=1 (i32.const 0))) + (set_local 0x145 (i64.load offset=0x145 align=1 (i32.const 0))) + (set_local 0x146 (i64.load offset=0x146 align=1 (i32.const 0))) + (set_local 0x147 (i64.load offset=0x147 align=1 (i32.const 0))) + (set_local 0x148 (i64.load offset=0x148 align=1 (i32.const 0))) + (set_local 0x149 (i64.load offset=0x149 align=1 (i32.const 0))) + (set_local 0x14a (i64.load offset=0x14a align=1 (i32.const 0))) + (set_local 0x14b (i64.load offset=0x14b align=1 (i32.const 0))) + (set_local 0x14c (i64.load offset=0x14c align=1 (i32.const 0))) + (set_local 0x14d (i64.load offset=0x14d align=1 (i32.const 0))) + (set_local 0x14e (i64.load offset=0x14e align=1 (i32.const 0))) + (set_local 0x14f (i64.load offset=0x14f align=1 (i32.const 0))) + (set_local 0x150 (i64.load offset=0x150 align=1 (i32.const 0))) + (set_local 0x151 (i64.load offset=0x151 align=1 (i32.const 0))) + (set_local 0x152 (i64.load offset=0x152 align=1 (i32.const 0))) + (set_local 0x153 (i64.load offset=0x153 align=1 (i32.const 0))) + (set_local 0x154 (i64.load offset=0x154 align=1 (i32.const 0))) + (set_local 0x155 (i64.load offset=0x155 align=1 (i32.const 0))) + (set_local 0x156 (i64.load offset=0x156 align=1 (i32.const 0))) + (set_local 0x157 (i64.load offset=0x157 align=1 (i32.const 0))) + (set_local 0x158 (i64.load offset=0x158 align=1 (i32.const 0))) + (set_local 0x159 (i64.load offset=0x159 align=1 (i32.const 0))) + (set_local 0x15a (i64.load offset=0x15a align=1 (i32.const 0))) + (set_local 0x15b (i64.load offset=0x15b align=1 (i32.const 0))) + (set_local 0x15c (i64.load offset=0x15c align=1 (i32.const 0))) + (set_local 0x15d (i64.load offset=0x15d align=1 (i32.const 0))) + (set_local 0x15e (i64.load offset=0x15e align=1 (i32.const 0))) + (set_local 0x15f (i64.load offset=0x15f align=1 (i32.const 0))) + (set_local 0x160 (i64.load offset=0x160 align=1 (i32.const 0))) + (set_local 0x161 (i64.load offset=0x161 align=1 (i32.const 0))) + (set_local 0x162 (i64.load offset=0x162 align=1 (i32.const 0))) + (set_local 0x163 (i64.load offset=0x163 align=1 (i32.const 0))) + (set_local 0x164 (i64.load offset=0x164 align=1 (i32.const 0))) + (set_local 0x165 (i64.load offset=0x165 align=1 (i32.const 0))) + (set_local 0x166 (i64.load offset=0x166 align=1 (i32.const 0))) + (set_local 0x167 (i64.load offset=0x167 align=1 (i32.const 0))) + (set_local 0x168 (i64.load offset=0x168 align=1 (i32.const 0))) + (set_local 0x169 (i64.load offset=0x169 align=1 (i32.const 0))) + (set_local 0x16a (i64.load offset=0x16a align=1 (i32.const 0))) + (set_local 0x16b (i64.load offset=0x16b align=1 (i32.const 0))) + (set_local 0x16c (i64.load offset=0x16c align=1 (i32.const 0))) + (set_local 0x16d (i64.load offset=0x16d align=1 (i32.const 0))) + (set_local 0x16e (i64.load offset=0x16e align=1 (i32.const 0))) + (set_local 0x16f (i64.load offset=0x16f align=1 (i32.const 0))) + (set_local 0x170 (i64.load offset=0x170 align=1 (i32.const 0))) + (set_local 0x171 (i64.load offset=0x171 align=1 (i32.const 0))) + (set_local 0x172 (i64.load offset=0x172 align=1 (i32.const 0))) + (set_local 0x173 (i64.load offset=0x173 align=1 (i32.const 0))) + (set_local 0x174 (i64.load offset=0x174 align=1 (i32.const 0))) + (set_local 0x175 (i64.load offset=0x175 align=1 (i32.const 0))) + (set_local 0x176 (i64.load offset=0x176 align=1 (i32.const 0))) + (set_local 0x177 (i64.load offset=0x177 align=1 (i32.const 0))) + (set_local 0x178 (i64.load offset=0x178 align=1 (i32.const 0))) + (set_local 0x179 (i64.load offset=0x179 align=1 (i32.const 0))) + (set_local 0x17a (i64.load offset=0x17a align=1 (i32.const 0))) + (set_local 0x17b (i64.load offset=0x17b align=1 (i32.const 0))) + (set_local 0x17c (i64.load offset=0x17c align=1 (i32.const 0))) + (set_local 0x17d (i64.load offset=0x17d align=1 (i32.const 0))) + (set_local 0x17e (i64.load offset=0x17e align=1 (i32.const 0))) + (set_local 0x17f (i64.load offset=0x17f align=1 (i32.const 0))) + (set_local 0x180 (i64.load offset=0x180 align=1 (i32.const 0))) + (set_local 0x181 (i64.load offset=0x181 align=1 (i32.const 0))) + (set_local 0x182 (i64.load offset=0x182 align=1 (i32.const 0))) + (set_local 0x183 (i64.load offset=0x183 align=1 (i32.const 0))) + (set_local 0x184 (i64.load offset=0x184 align=1 (i32.const 0))) + (set_local 0x185 (i64.load offset=0x185 align=1 (i32.const 0))) + (set_local 0x186 (i64.load offset=0x186 align=1 (i32.const 0))) + (set_local 0x187 (i64.load offset=0x187 align=1 (i32.const 0))) + (set_local 0x188 (i64.load offset=0x188 align=1 (i32.const 0))) + (set_local 0x189 (i64.load offset=0x189 align=1 (i32.const 0))) + (set_local 0x18a (i64.load offset=0x18a align=1 (i32.const 0))) + (set_local 0x18b (i64.load offset=0x18b align=1 (i32.const 0))) + (set_local 0x18c (i64.load offset=0x18c align=1 (i32.const 0))) + (set_local 0x18d (i64.load offset=0x18d align=1 (i32.const 0))) + (set_local 0x18e (i64.load offset=0x18e align=1 (i32.const 0))) + (set_local 0x18f (i64.load offset=0x18f align=1 (i32.const 0))) + (set_local 0x190 (i64.load offset=0x190 align=1 (i32.const 0))) + (set_local 0x191 (i64.load offset=0x191 align=1 (i32.const 0))) + (set_local 0x192 (i64.load offset=0x192 align=1 (i32.const 0))) + (set_local 0x193 (i64.load offset=0x193 align=1 (i32.const 0))) + (set_local 0x194 (i64.load offset=0x194 align=1 (i32.const 0))) + (set_local 0x195 (i64.load offset=0x195 align=1 (i32.const 0))) + (set_local 0x196 (i64.load offset=0x196 align=1 (i32.const 0))) + (set_local 0x197 (i64.load offset=0x197 align=1 (i32.const 0))) + (set_local 0x198 (i64.load offset=0x198 align=1 (i32.const 0))) + (set_local 0x199 (i64.load offset=0x199 align=1 (i32.const 0))) + (set_local 0x19a (i64.load offset=0x19a align=1 (i32.const 0))) + (set_local 0x19b (i64.load offset=0x19b align=1 (i32.const 0))) + (set_local 0x19c (i64.load offset=0x19c align=1 (i32.const 0))) + (set_local 0x19d (i64.load offset=0x19d align=1 (i32.const 0))) + (set_local 0x19e (i64.load offset=0x19e align=1 (i32.const 0))) + (set_local 0x19f (i64.load offset=0x19f align=1 (i32.const 0))) + (set_local 0x1a0 (i64.load offset=0x1a0 align=1 (i32.const 0))) + (set_local 0x1a1 (i64.load offset=0x1a1 align=1 (i32.const 0))) + (set_local 0x1a2 (i64.load offset=0x1a2 align=1 (i32.const 0))) + (set_local 0x1a3 (i64.load offset=0x1a3 align=1 (i32.const 0))) + (set_local 0x1a4 (i64.load offset=0x1a4 align=1 (i32.const 0))) + (set_local 0x1a5 (i64.load offset=0x1a5 align=1 (i32.const 0))) + (set_local 0x1a6 (i64.load offset=0x1a6 align=1 (i32.const 0))) + (set_local 0x1a7 (i64.load offset=0x1a7 align=1 (i32.const 0))) + (set_local 0x1a8 (i64.load offset=0x1a8 align=1 (i32.const 0))) + (set_local 0x1a9 (i64.load offset=0x1a9 align=1 (i32.const 0))) + (set_local 0x1aa (i64.load offset=0x1aa align=1 (i32.const 0))) + (set_local 0x1ab (i64.load offset=0x1ab align=1 (i32.const 0))) + (set_local 0x1ac (i64.load offset=0x1ac align=1 (i32.const 0))) + (set_local 0x1ad (i64.load offset=0x1ad align=1 (i32.const 0))) + (set_local 0x1ae (i64.load offset=0x1ae align=1 (i32.const 0))) + (set_local 0x1af (i64.load offset=0x1af align=1 (i32.const 0))) + (set_local 0x1b0 (i64.load offset=0x1b0 align=1 (i32.const 0))) + (set_local 0x1b1 (i64.load offset=0x1b1 align=1 (i32.const 0))) + (set_local 0x1b2 (i64.load offset=0x1b2 align=1 (i32.const 0))) + (set_local 0x1b3 (i64.load offset=0x1b3 align=1 (i32.const 0))) + (set_local 0x1b4 (i64.load offset=0x1b4 align=1 (i32.const 0))) + (set_local 0x1b5 (i64.load offset=0x1b5 align=1 (i32.const 0))) + (set_local 0x1b6 (i64.load offset=0x1b6 align=1 (i32.const 0))) + (set_local 0x1b7 (i64.load offset=0x1b7 align=1 (i32.const 0))) + (set_local 0x1b8 (i64.load offset=0x1b8 align=1 (i32.const 0))) + (set_local 0x1b9 (i64.load offset=0x1b9 align=1 (i32.const 0))) + (set_local 0x1ba (i64.load offset=0x1ba align=1 (i32.const 0))) + (set_local 0x1bb (i64.load offset=0x1bb align=1 (i32.const 0))) + (set_local 0x1bc (i64.load offset=0x1bc align=1 (i32.const 0))) + (set_local 0x1bd (i64.load offset=0x1bd align=1 (i32.const 0))) + (set_local 0x1be (i64.load offset=0x1be align=1 (i32.const 0))) + (set_local 0x1bf (i64.load offset=0x1bf align=1 (i32.const 0))) + (set_local 0x1c0 (i64.load offset=0x1c0 align=1 (i32.const 0))) + (set_local 0x1c1 (i64.load offset=0x1c1 align=1 (i32.const 0))) + (set_local 0x1c2 (i64.load offset=0x1c2 align=1 (i32.const 0))) + (set_local 0x1c3 (i64.load offset=0x1c3 align=1 (i32.const 0))) + (set_local 0x1c4 (i64.load offset=0x1c4 align=1 (i32.const 0))) + (set_local 0x1c5 (i64.load offset=0x1c5 align=1 (i32.const 0))) + (set_local 0x1c6 (i64.load offset=0x1c6 align=1 (i32.const 0))) + (set_local 0x1c7 (i64.load offset=0x1c7 align=1 (i32.const 0))) + (set_local 0x1c8 (i64.load offset=0x1c8 align=1 (i32.const 0))) + (set_local 0x1c9 (i64.load offset=0x1c9 align=1 (i32.const 0))) + (set_local 0x1ca (i64.load offset=0x1ca align=1 (i32.const 0))) + (set_local 0x1cb (i64.load offset=0x1cb align=1 (i32.const 0))) + (set_local 0x1cc (i64.load offset=0x1cc align=1 (i32.const 0))) + (set_local 0x1cd (i64.load offset=0x1cd align=1 (i32.const 0))) + (set_local 0x1ce (i64.load offset=0x1ce align=1 (i32.const 0))) + (set_local 0x1cf (i64.load offset=0x1cf align=1 (i32.const 0))) + (set_local 0x1d0 (i64.load offset=0x1d0 align=1 (i32.const 0))) + (set_local 0x1d1 (i64.load offset=0x1d1 align=1 (i32.const 0))) + (set_local 0x1d2 (i64.load offset=0x1d2 align=1 (i32.const 0))) + (set_local 0x1d3 (i64.load offset=0x1d3 align=1 (i32.const 0))) + (set_local 0x1d4 (i64.load offset=0x1d4 align=1 (i32.const 0))) + (set_local 0x1d5 (i64.load offset=0x1d5 align=1 (i32.const 0))) + (set_local 0x1d6 (i64.load offset=0x1d6 align=1 (i32.const 0))) + (set_local 0x1d7 (i64.load offset=0x1d7 align=1 (i32.const 0))) + (set_local 0x1d8 (i64.load offset=0x1d8 align=1 (i32.const 0))) + (set_local 0x1d9 (i64.load offset=0x1d9 align=1 (i32.const 0))) + (set_local 0x1da (i64.load offset=0x1da align=1 (i32.const 0))) + (set_local 0x1db (i64.load offset=0x1db align=1 (i32.const 0))) + (set_local 0x1dc (i64.load offset=0x1dc align=1 (i32.const 0))) + (set_local 0x1dd (i64.load offset=0x1dd align=1 (i32.const 0))) + (set_local 0x1de (i64.load offset=0x1de align=1 (i32.const 0))) + (set_local 0x1df (i64.load offset=0x1df align=1 (i32.const 0))) + (set_local 0x1e0 (i64.load offset=0x1e0 align=1 (i32.const 0))) + (set_local 0x1e1 (i64.load offset=0x1e1 align=1 (i32.const 0))) + (set_local 0x1e2 (i64.load offset=0x1e2 align=1 (i32.const 0))) + (set_local 0x1e3 (i64.load offset=0x1e3 align=1 (i32.const 0))) + (set_local 0x1e4 (i64.load offset=0x1e4 align=1 (i32.const 0))) + (set_local 0x1e5 (i64.load offset=0x1e5 align=1 (i32.const 0))) + (set_local 0x1e6 (i64.load offset=0x1e6 align=1 (i32.const 0))) + (set_local 0x1e7 (i64.load offset=0x1e7 align=1 (i32.const 0))) + (set_local 0x1e8 (i64.load offset=0x1e8 align=1 (i32.const 0))) + (set_local 0x1e9 (i64.load offset=0x1e9 align=1 (i32.const 0))) + (set_local 0x1ea (i64.load offset=0x1ea align=1 (i32.const 0))) + (set_local 0x1eb (i64.load offset=0x1eb align=1 (i32.const 0))) + (set_local 0x1ec (i64.load offset=0x1ec align=1 (i32.const 0))) + (set_local 0x1ed (i64.load offset=0x1ed align=1 (i32.const 0))) + (set_local 0x1ee (i64.load offset=0x1ee align=1 (i32.const 0))) + (set_local 0x1ef (i64.load offset=0x1ef align=1 (i32.const 0))) + (set_local 0x1f0 (i64.load offset=0x1f0 align=1 (i32.const 0))) + (set_local 0x1f1 (i64.load offset=0x1f1 align=1 (i32.const 0))) + (set_local 0x1f2 (i64.load offset=0x1f2 align=1 (i32.const 0))) + (set_local 0x1f3 (i64.load offset=0x1f3 align=1 (i32.const 0))) + (set_local 0x1f4 (i64.load offset=0x1f4 align=1 (i32.const 0))) + (set_local 0x1f5 (i64.load offset=0x1f5 align=1 (i32.const 0))) + (set_local 0x1f6 (i64.load offset=0x1f6 align=1 (i32.const 0))) + (set_local 0x1f7 (i64.load offset=0x1f7 align=1 (i32.const 0))) + (set_local 0x1f8 (i64.load offset=0x1f8 align=1 (i32.const 0))) + (set_local 0x1f9 (i64.load offset=0x1f9 align=1 (i32.const 0))) + (set_local 0x1fa (i64.load offset=0x1fa align=1 (i32.const 0))) + (set_local 0x1fb (i64.load offset=0x1fb align=1 (i32.const 0))) + (set_local 0x1fc (i64.load offset=0x1fc align=1 (i32.const 0))) + (set_local 0x1fd (i64.load offset=0x1fd align=1 (i32.const 0))) + (set_local 0x1fe (i64.load offset=0x1fe align=1 (i32.const 0))) + (set_local 0x1ff (i64.load offset=0x1ff align=1 (i32.const 0))) + (set_local 0x200 (i64.load offset=0x200 align=1 (i32.const 0))) + (set_local 0x201 (i64.load offset=0x201 align=1 (i32.const 0))) + (set_local 0x202 (i64.load offset=0x202 align=1 (i32.const 0))) + (set_local 0x203 (i64.load offset=0x203 align=1 (i32.const 0))) + (set_local 0x204 (i64.load offset=0x204 align=1 (i32.const 0))) + (set_local 0x205 (i64.load offset=0x205 align=1 (i32.const 0))) + (set_local 0x206 (i64.load offset=0x206 align=1 (i32.const 0))) + (set_local 0x207 (i64.load offset=0x207 align=1 (i32.const 0))) + (set_local 0x208 (i64.load offset=0x208 align=1 (i32.const 0))) + (set_local 0x209 (i64.load offset=0x209 align=1 (i32.const 0))) + (set_local 0x20a (i64.load offset=0x20a align=1 (i32.const 0))) + (set_local 0x20b (i64.load offset=0x20b align=1 (i32.const 0))) + (set_local 0x20c (i64.load offset=0x20c align=1 (i32.const 0))) + (set_local 0x20d (i64.load offset=0x20d align=1 (i32.const 0))) + (set_local 0x20e (i64.load offset=0x20e align=1 (i32.const 0))) + (set_local 0x20f (i64.load offset=0x20f align=1 (i32.const 0))) + (set_local 0x210 (i64.load offset=0x210 align=1 (i32.const 0))) + (set_local 0x211 (i64.load offset=0x211 align=1 (i32.const 0))) + (set_local 0x212 (i64.load offset=0x212 align=1 (i32.const 0))) + (set_local 0x213 (i64.load offset=0x213 align=1 (i32.const 0))) + (set_local 0x214 (i64.load offset=0x214 align=1 (i32.const 0))) + (set_local 0x215 (i64.load offset=0x215 align=1 (i32.const 0))) + (set_local 0x216 (i64.load offset=0x216 align=1 (i32.const 0))) + (set_local 0x217 (i64.load offset=0x217 align=1 (i32.const 0))) + (set_local 0x218 (i64.load offset=0x218 align=1 (i32.const 0))) + (set_local 0x219 (i64.load offset=0x219 align=1 (i32.const 0))) + (set_local 0x21a (i64.load offset=0x21a align=1 (i32.const 0))) + (set_local 0x21b (i64.load offset=0x21b align=1 (i32.const 0))) + (set_local 0x21c (i64.load offset=0x21c align=1 (i32.const 0))) + (set_local 0x21d (i64.load offset=0x21d align=1 (i32.const 0))) + (set_local 0x21e (i64.load offset=0x21e align=1 (i32.const 0))) + (set_local 0x21f (i64.load offset=0x21f align=1 (i32.const 0))) + (set_local 0x220 (i64.load offset=0x220 align=1 (i32.const 0))) + (set_local 0x221 (i64.load offset=0x221 align=1 (i32.const 0))) + (set_local 0x222 (i64.load offset=0x222 align=1 (i32.const 0))) + (set_local 0x223 (i64.load offset=0x223 align=1 (i32.const 0))) + (set_local 0x224 (i64.load offset=0x224 align=1 (i32.const 0))) + (set_local 0x225 (i64.load offset=0x225 align=1 (i32.const 0))) + (set_local 0x226 (i64.load offset=0x226 align=1 (i32.const 0))) + (set_local 0x227 (i64.load offset=0x227 align=1 (i32.const 0))) + (set_local 0x228 (i64.load offset=0x228 align=1 (i32.const 0))) + (set_local 0x229 (i64.load offset=0x229 align=1 (i32.const 0))) + (set_local 0x22a (i64.load offset=0x22a align=1 (i32.const 0))) + (set_local 0x22b (i64.load offset=0x22b align=1 (i32.const 0))) + (set_local 0x22c (i64.load offset=0x22c align=1 (i32.const 0))) + (set_local 0x22d (i64.load offset=0x22d align=1 (i32.const 0))) + (set_local 0x22e (i64.load offset=0x22e align=1 (i32.const 0))) + (set_local 0x22f (i64.load offset=0x22f align=1 (i32.const 0))) + (set_local 0x230 (i64.load offset=0x230 align=1 (i32.const 0))) + (set_local 0x231 (i64.load offset=0x231 align=1 (i32.const 0))) + (set_local 0x232 (i64.load offset=0x232 align=1 (i32.const 0))) + (set_local 0x233 (i64.load offset=0x233 align=1 (i32.const 0))) + (set_local 0x234 (i64.load offset=0x234 align=1 (i32.const 0))) + (set_local 0x235 (i64.load offset=0x235 align=1 (i32.const 0))) + (set_local 0x236 (i64.load offset=0x236 align=1 (i32.const 0))) + (set_local 0x237 (i64.load offset=0x237 align=1 (i32.const 0))) + (set_local 0x238 (i64.load offset=0x238 align=1 (i32.const 0))) + (set_local 0x239 (i64.load offset=0x239 align=1 (i32.const 0))) + (set_local 0x23a (i64.load offset=0x23a align=1 (i32.const 0))) + (set_local 0x23b (i64.load offset=0x23b align=1 (i32.const 0))) + (set_local 0x23c (i64.load offset=0x23c align=1 (i32.const 0))) + (set_local 0x23d (i64.load offset=0x23d align=1 (i32.const 0))) + (set_local 0x23e (i64.load offset=0x23e align=1 (i32.const 0))) + (set_local 0x23f (i64.load offset=0x23f align=1 (i32.const 0))) + (set_local 0x240 (i64.load offset=0x240 align=1 (i32.const 0))) + (set_local 0x241 (i64.load offset=0x241 align=1 (i32.const 0))) + (set_local 0x242 (i64.load offset=0x242 align=1 (i32.const 0))) + (set_local 0x243 (i64.load offset=0x243 align=1 (i32.const 0))) + (set_local 0x244 (i64.load offset=0x244 align=1 (i32.const 0))) + (set_local 0x245 (i64.load offset=0x245 align=1 (i32.const 0))) + (set_local 0x246 (i64.load offset=0x246 align=1 (i32.const 0))) + (set_local 0x247 (i64.load offset=0x247 align=1 (i32.const 0))) + (set_local 0x248 (i64.load offset=0x248 align=1 (i32.const 0))) + (set_local 0x249 (i64.load offset=0x249 align=1 (i32.const 0))) + (set_local 0x24a (i64.load offset=0x24a align=1 (i32.const 0))) + (set_local 0x24b (i64.load offset=0x24b align=1 (i32.const 0))) + (set_local 0x24c (i64.load offset=0x24c align=1 (i32.const 0))) + (set_local 0x24d (i64.load offset=0x24d align=1 (i32.const 0))) + (set_local 0x24e (i64.load offset=0x24e align=1 (i32.const 0))) + (set_local 0x24f (i64.load offset=0x24f align=1 (i32.const 0))) + (set_local 0x250 (i64.load offset=0x250 align=1 (i32.const 0))) + (set_local 0x251 (i64.load offset=0x251 align=1 (i32.const 0))) + (set_local 0x252 (i64.load offset=0x252 align=1 (i32.const 0))) + (set_local 0x253 (i64.load offset=0x253 align=1 (i32.const 0))) + (set_local 0x254 (i64.load offset=0x254 align=1 (i32.const 0))) + (set_local 0x255 (i64.load offset=0x255 align=1 (i32.const 0))) + (set_local 0x256 (i64.load offset=0x256 align=1 (i32.const 0))) + (set_local 0x257 (i64.load offset=0x257 align=1 (i32.const 0))) + (set_local 0x258 (i64.load offset=0x258 align=1 (i32.const 0))) + (set_local 0x259 (i64.load offset=0x259 align=1 (i32.const 0))) + (set_local 0x25a (i64.load offset=0x25a align=1 (i32.const 0))) + (set_local 0x25b (i64.load offset=0x25b align=1 (i32.const 0))) + (set_local 0x25c (i64.load offset=0x25c align=1 (i32.const 0))) + (set_local 0x25d (i64.load offset=0x25d align=1 (i32.const 0))) + (set_local 0x25e (i64.load offset=0x25e align=1 (i32.const 0))) + (set_local 0x25f (i64.load offset=0x25f align=1 (i32.const 0))) + (set_local 0x260 (i64.load offset=0x260 align=1 (i32.const 0))) + (set_local 0x261 (i64.load offset=0x261 align=1 (i32.const 0))) + (set_local 0x262 (i64.load offset=0x262 align=1 (i32.const 0))) + (set_local 0x263 (i64.load offset=0x263 align=1 (i32.const 0))) + (set_local 0x264 (i64.load offset=0x264 align=1 (i32.const 0))) + (set_local 0x265 (i64.load offset=0x265 align=1 (i32.const 0))) + (set_local 0x266 (i64.load offset=0x266 align=1 (i32.const 0))) + (set_local 0x267 (i64.load offset=0x267 align=1 (i32.const 0))) + (set_local 0x268 (i64.load offset=0x268 align=1 (i32.const 0))) + (set_local 0x269 (i64.load offset=0x269 align=1 (i32.const 0))) + (set_local 0x26a (i64.load offset=0x26a align=1 (i32.const 0))) + (set_local 0x26b (i64.load offset=0x26b align=1 (i32.const 0))) + (set_local 0x26c (i64.load offset=0x26c align=1 (i32.const 0))) + (set_local 0x26d (i64.load offset=0x26d align=1 (i32.const 0))) + (set_local 0x26e (i64.load offset=0x26e align=1 (i32.const 0))) + (set_local 0x26f (i64.load offset=0x26f align=1 (i32.const 0))) + (set_local 0x270 (i64.load offset=0x270 align=1 (i32.const 0))) + (set_local 0x271 (i64.load offset=0x271 align=1 (i32.const 0))) + (set_local 0x272 (i64.load offset=0x272 align=1 (i32.const 0))) + (set_local 0x273 (i64.load offset=0x273 align=1 (i32.const 0))) + (set_local 0x274 (i64.load offset=0x274 align=1 (i32.const 0))) + (set_local 0x275 (i64.load offset=0x275 align=1 (i32.const 0))) + (set_local 0x276 (i64.load offset=0x276 align=1 (i32.const 0))) + (set_local 0x277 (i64.load offset=0x277 align=1 (i32.const 0))) + (set_local 0x278 (i64.load offset=0x278 align=1 (i32.const 0))) + (set_local 0x279 (i64.load offset=0x279 align=1 (i32.const 0))) + (set_local 0x27a (i64.load offset=0x27a align=1 (i32.const 0))) + (set_local 0x27b (i64.load offset=0x27b align=1 (i32.const 0))) + (set_local 0x27c (i64.load offset=0x27c align=1 (i32.const 0))) + (set_local 0x27d (i64.load offset=0x27d align=1 (i32.const 0))) + (set_local 0x27e (i64.load offset=0x27e align=1 (i32.const 0))) + (set_local 0x27f (i64.load offset=0x27f align=1 (i32.const 0))) + (set_local 0x280 (i64.load offset=0x280 align=1 (i32.const 0))) + (set_local 0x281 (i64.load offset=0x281 align=1 (i32.const 0))) + (set_local 0x282 (i64.load offset=0x282 align=1 (i32.const 0))) + (set_local 0x283 (i64.load offset=0x283 align=1 (i32.const 0))) + (set_local 0x284 (i64.load offset=0x284 align=1 (i32.const 0))) + (set_local 0x285 (i64.load offset=0x285 align=1 (i32.const 0))) + (set_local 0x286 (i64.load offset=0x286 align=1 (i32.const 0))) + (set_local 0x287 (i64.load offset=0x287 align=1 (i32.const 0))) + (set_local 0x288 (i64.load offset=0x288 align=1 (i32.const 0))) + (set_local 0x289 (i64.load offset=0x289 align=1 (i32.const 0))) + (set_local 0x28a (i64.load offset=0x28a align=1 (i32.const 0))) + (set_local 0x28b (i64.load offset=0x28b align=1 (i32.const 0))) + (set_local 0x28c (i64.load offset=0x28c align=1 (i32.const 0))) + (set_local 0x28d (i64.load offset=0x28d align=1 (i32.const 0))) + (set_local 0x28e (i64.load offset=0x28e align=1 (i32.const 0))) + (set_local 0x28f (i64.load offset=0x28f align=1 (i32.const 0))) + (set_local 0x290 (i64.load offset=0x290 align=1 (i32.const 0))) + (set_local 0x291 (i64.load offset=0x291 align=1 (i32.const 0))) + (set_local 0x292 (i64.load offset=0x292 align=1 (i32.const 0))) + (set_local 0x293 (i64.load offset=0x293 align=1 (i32.const 0))) + (set_local 0x294 (i64.load offset=0x294 align=1 (i32.const 0))) + (set_local 0x295 (i64.load offset=0x295 align=1 (i32.const 0))) + (set_local 0x296 (i64.load offset=0x296 align=1 (i32.const 0))) + (set_local 0x297 (i64.load offset=0x297 align=1 (i32.const 0))) + (set_local 0x298 (i64.load offset=0x298 align=1 (i32.const 0))) + (set_local 0x299 (i64.load offset=0x299 align=1 (i32.const 0))) + (set_local 0x29a (i64.load offset=0x29a align=1 (i32.const 0))) + (set_local 0x29b (i64.load offset=0x29b align=1 (i32.const 0))) + (set_local 0x29c (i64.load offset=0x29c align=1 (i32.const 0))) + (set_local 0x29d (i64.load offset=0x29d align=1 (i32.const 0))) + (set_local 0x29e (i64.load offset=0x29e align=1 (i32.const 0))) + (set_local 0x29f (i64.load offset=0x29f align=1 (i32.const 0))) + (set_local 0x2a0 (i64.load offset=0x2a0 align=1 (i32.const 0))) + (set_local 0x2a1 (i64.load offset=0x2a1 align=1 (i32.const 0))) + (set_local 0x2a2 (i64.load offset=0x2a2 align=1 (i32.const 0))) + (set_local 0x2a3 (i64.load offset=0x2a3 align=1 (i32.const 0))) + (set_local 0x2a4 (i64.load offset=0x2a4 align=1 (i32.const 0))) + (set_local 0x2a5 (i64.load offset=0x2a5 align=1 (i32.const 0))) + (set_local 0x2a6 (i64.load offset=0x2a6 align=1 (i32.const 0))) + (set_local 0x2a7 (i64.load offset=0x2a7 align=1 (i32.const 0))) + (set_local 0x2a8 (i64.load offset=0x2a8 align=1 (i32.const 0))) + (set_local 0x2a9 (i64.load offset=0x2a9 align=1 (i32.const 0))) + (set_local 0x2aa (i64.load offset=0x2aa align=1 (i32.const 0))) + (set_local 0x2ab (i64.load offset=0x2ab align=1 (i32.const 0))) + (set_local 0x2ac (i64.load offset=0x2ac align=1 (i32.const 0))) + (set_local 0x2ad (i64.load offset=0x2ad align=1 (i32.const 0))) + (set_local 0x2ae (i64.load offset=0x2ae align=1 (i32.const 0))) + (set_local 0x2af (i64.load offset=0x2af align=1 (i32.const 0))) + (set_local 0x2b0 (i64.load offset=0x2b0 align=1 (i32.const 0))) + (set_local 0x2b1 (i64.load offset=0x2b1 align=1 (i32.const 0))) + (set_local 0x2b2 (i64.load offset=0x2b2 align=1 (i32.const 0))) + (set_local 0x2b3 (i64.load offset=0x2b3 align=1 (i32.const 0))) + (set_local 0x2b4 (i64.load offset=0x2b4 align=1 (i32.const 0))) + (set_local 0x2b5 (i64.load offset=0x2b5 align=1 (i32.const 0))) + (set_local 0x2b6 (i64.load offset=0x2b6 align=1 (i32.const 0))) + (set_local 0x2b7 (i64.load offset=0x2b7 align=1 (i32.const 0))) + (set_local 0x2b8 (i64.load offset=0x2b8 align=1 (i32.const 0))) + (set_local 0x2b9 (i64.load offset=0x2b9 align=1 (i32.const 0))) + (set_local 0x2ba (i64.load offset=0x2ba align=1 (i32.const 0))) + (set_local 0x2bb (i64.load offset=0x2bb align=1 (i32.const 0))) + (set_local 0x2bc (i64.load offset=0x2bc align=1 (i32.const 0))) + (set_local 0x2bd (i64.load offset=0x2bd align=1 (i32.const 0))) + (set_local 0x2be (i64.load offset=0x2be align=1 (i32.const 0))) + (set_local 0x2bf (i64.load offset=0x2bf align=1 (i32.const 0))) + (set_local 0x2c0 (i64.load offset=0x2c0 align=1 (i32.const 0))) + (set_local 0x2c1 (i64.load offset=0x2c1 align=1 (i32.const 0))) + (set_local 0x2c2 (i64.load offset=0x2c2 align=1 (i32.const 0))) + (set_local 0x2c3 (i64.load offset=0x2c3 align=1 (i32.const 0))) + (set_local 0x2c4 (i64.load offset=0x2c4 align=1 (i32.const 0))) + (set_local 0x2c5 (i64.load offset=0x2c5 align=1 (i32.const 0))) + (set_local 0x2c6 (i64.load offset=0x2c6 align=1 (i32.const 0))) + (set_local 0x2c7 (i64.load offset=0x2c7 align=1 (i32.const 0))) + (set_local 0x2c8 (i64.load offset=0x2c8 align=1 (i32.const 0))) + (set_local 0x2c9 (i64.load offset=0x2c9 align=1 (i32.const 0))) + (set_local 0x2ca (i64.load offset=0x2ca align=1 (i32.const 0))) + (set_local 0x2cb (i64.load offset=0x2cb align=1 (i32.const 0))) + (set_local 0x2cc (i64.load offset=0x2cc align=1 (i32.const 0))) + (set_local 0x2cd (i64.load offset=0x2cd align=1 (i32.const 0))) + (set_local 0x2ce (i64.load offset=0x2ce align=1 (i32.const 0))) + (set_local 0x2cf (i64.load offset=0x2cf align=1 (i32.const 0))) + (set_local 0x2d0 (i64.load offset=0x2d0 align=1 (i32.const 0))) + (set_local 0x2d1 (i64.load offset=0x2d1 align=1 (i32.const 0))) + (set_local 0x2d2 (i64.load offset=0x2d2 align=1 (i32.const 0))) + (set_local 0x2d3 (i64.load offset=0x2d3 align=1 (i32.const 0))) + (set_local 0x2d4 (i64.load offset=0x2d4 align=1 (i32.const 0))) + (set_local 0x2d5 (i64.load offset=0x2d5 align=1 (i32.const 0))) + (set_local 0x2d6 (i64.load offset=0x2d6 align=1 (i32.const 0))) + (set_local 0x2d7 (i64.load offset=0x2d7 align=1 (i32.const 0))) + (set_local 0x2d8 (i64.load offset=0x2d8 align=1 (i32.const 0))) + (set_local 0x2d9 (i64.load offset=0x2d9 align=1 (i32.const 0))) + (set_local 0x2da (i64.load offset=0x2da align=1 (i32.const 0))) + (set_local 0x2db (i64.load offset=0x2db align=1 (i32.const 0))) + (set_local 0x2dc (i64.load offset=0x2dc align=1 (i32.const 0))) + (set_local 0x2dd (i64.load offset=0x2dd align=1 (i32.const 0))) + (set_local 0x2de (i64.load offset=0x2de align=1 (i32.const 0))) + (set_local 0x2df (i64.load offset=0x2df align=1 (i32.const 0))) + (set_local 0x2e0 (i64.load offset=0x2e0 align=1 (i32.const 0))) + (set_local 0x2e1 (i64.load offset=0x2e1 align=1 (i32.const 0))) + (set_local 0x2e2 (i64.load offset=0x2e2 align=1 (i32.const 0))) + (set_local 0x2e3 (i64.load offset=0x2e3 align=1 (i32.const 0))) + (set_local 0x2e4 (i64.load offset=0x2e4 align=1 (i32.const 0))) + (set_local 0x2e5 (i64.load offset=0x2e5 align=1 (i32.const 0))) + (set_local 0x2e6 (i64.load offset=0x2e6 align=1 (i32.const 0))) + (set_local 0x2e7 (i64.load offset=0x2e7 align=1 (i32.const 0))) + (set_local 0x2e8 (i64.load offset=0x2e8 align=1 (i32.const 0))) + (set_local 0x2e9 (i64.load offset=0x2e9 align=1 (i32.const 0))) + (set_local 0x2ea (i64.load offset=0x2ea align=1 (i32.const 0))) + (set_local 0x2eb (i64.load offset=0x2eb align=1 (i32.const 0))) + (set_local 0x2ec (i64.load offset=0x2ec align=1 (i32.const 0))) + (set_local 0x2ed (i64.load offset=0x2ed align=1 (i32.const 0))) + (set_local 0x2ee (i64.load offset=0x2ee align=1 (i32.const 0))) + (set_local 0x2ef (i64.load offset=0x2ef align=1 (i32.const 0))) + (set_local 0x2f0 (i64.load offset=0x2f0 align=1 (i32.const 0))) + (set_local 0x2f1 (i64.load offset=0x2f1 align=1 (i32.const 0))) + (set_local 0x2f2 (i64.load offset=0x2f2 align=1 (i32.const 0))) + (set_local 0x2f3 (i64.load offset=0x2f3 align=1 (i32.const 0))) + (set_local 0x2f4 (i64.load offset=0x2f4 align=1 (i32.const 0))) + (set_local 0x2f5 (i64.load offset=0x2f5 align=1 (i32.const 0))) + (set_local 0x2f6 (i64.load offset=0x2f6 align=1 (i32.const 0))) + (set_local 0x2f7 (i64.load offset=0x2f7 align=1 (i32.const 0))) + (set_local 0x2f8 (i64.load offset=0x2f8 align=1 (i32.const 0))) + (set_local 0x2f9 (i64.load offset=0x2f9 align=1 (i32.const 0))) + (set_local 0x2fa (i64.load offset=0x2fa align=1 (i32.const 0))) + (set_local 0x2fb (i64.load offset=0x2fb align=1 (i32.const 0))) + (set_local 0x2fc (i64.load offset=0x2fc align=1 (i32.const 0))) + (set_local 0x2fd (i64.load offset=0x2fd align=1 (i32.const 0))) + (set_local 0x2fe (i64.load offset=0x2fe align=1 (i32.const 0))) + (set_local 0x2ff (i64.load offset=0x2ff align=1 (i32.const 0))) + (set_local 0x300 (i64.load offset=0x300 align=1 (i32.const 0))) + (set_local 0x301 (i64.load offset=0x301 align=1 (i32.const 0))) + (set_local 0x302 (i64.load offset=0x302 align=1 (i32.const 0))) + (set_local 0x303 (i64.load offset=0x303 align=1 (i32.const 0))) + (set_local 0x304 (i64.load offset=0x304 align=1 (i32.const 0))) + (set_local 0x305 (i64.load offset=0x305 align=1 (i32.const 0))) + (set_local 0x306 (i64.load offset=0x306 align=1 (i32.const 0))) + (set_local 0x307 (i64.load offset=0x307 align=1 (i32.const 0))) + (set_local 0x308 (i64.load offset=0x308 align=1 (i32.const 0))) + (set_local 0x309 (i64.load offset=0x309 align=1 (i32.const 0))) + (set_local 0x30a (i64.load offset=0x30a align=1 (i32.const 0))) + (set_local 0x30b (i64.load offset=0x30b align=1 (i32.const 0))) + (set_local 0x30c (i64.load offset=0x30c align=1 (i32.const 0))) + (set_local 0x30d (i64.load offset=0x30d align=1 (i32.const 0))) + (set_local 0x30e (i64.load offset=0x30e align=1 (i32.const 0))) + (set_local 0x30f (i64.load offset=0x30f align=1 (i32.const 0))) + (set_local 0x310 (i64.load offset=0x310 align=1 (i32.const 0))) + (set_local 0x311 (i64.load offset=0x311 align=1 (i32.const 0))) + (set_local 0x312 (i64.load offset=0x312 align=1 (i32.const 0))) + (set_local 0x313 (i64.load offset=0x313 align=1 (i32.const 0))) + (set_local 0x314 (i64.load offset=0x314 align=1 (i32.const 0))) + (set_local 0x315 (i64.load offset=0x315 align=1 (i32.const 0))) + (set_local 0x316 (i64.load offset=0x316 align=1 (i32.const 0))) + (set_local 0x317 (i64.load offset=0x317 align=1 (i32.const 0))) + (set_local 0x318 (i64.load offset=0x318 align=1 (i32.const 0))) + (set_local 0x319 (i64.load offset=0x319 align=1 (i32.const 0))) + (set_local 0x31a (i64.load offset=0x31a align=1 (i32.const 0))) + (set_local 0x31b (i64.load offset=0x31b align=1 (i32.const 0))) + (set_local 0x31c (i64.load offset=0x31c align=1 (i32.const 0))) + (set_local 0x31d (i64.load offset=0x31d align=1 (i32.const 0))) + (set_local 0x31e (i64.load offset=0x31e align=1 (i32.const 0))) + (set_local 0x31f (i64.load offset=0x31f align=1 (i32.const 0))) + (set_local 0x320 (i64.load offset=0x320 align=1 (i32.const 0))) + (set_local 0x321 (i64.load offset=0x321 align=1 (i32.const 0))) + (set_local 0x322 (i64.load offset=0x322 align=1 (i32.const 0))) + (set_local 0x323 (i64.load offset=0x323 align=1 (i32.const 0))) + (set_local 0x324 (i64.load offset=0x324 align=1 (i32.const 0))) + (set_local 0x325 (i64.load offset=0x325 align=1 (i32.const 0))) + (set_local 0x326 (i64.load offset=0x326 align=1 (i32.const 0))) + (set_local 0x327 (i64.load offset=0x327 align=1 (i32.const 0))) + (set_local 0x328 (i64.load offset=0x328 align=1 (i32.const 0))) + (set_local 0x329 (i64.load offset=0x329 align=1 (i32.const 0))) + (set_local 0x32a (i64.load offset=0x32a align=1 (i32.const 0))) + (set_local 0x32b (i64.load offset=0x32b align=1 (i32.const 0))) + (set_local 0x32c (i64.load offset=0x32c align=1 (i32.const 0))) + (set_local 0x32d (i64.load offset=0x32d align=1 (i32.const 0))) + (set_local 0x32e (i64.load offset=0x32e align=1 (i32.const 0))) + (set_local 0x32f (i64.load offset=0x32f align=1 (i32.const 0))) + (set_local 0x330 (i64.load offset=0x330 align=1 (i32.const 0))) + (set_local 0x331 (i64.load offset=0x331 align=1 (i32.const 0))) + (set_local 0x332 (i64.load offset=0x332 align=1 (i32.const 0))) + (set_local 0x333 (i64.load offset=0x333 align=1 (i32.const 0))) + (set_local 0x334 (i64.load offset=0x334 align=1 (i32.const 0))) + (set_local 0x335 (i64.load offset=0x335 align=1 (i32.const 0))) + (set_local 0x336 (i64.load offset=0x336 align=1 (i32.const 0))) + (set_local 0x337 (i64.load offset=0x337 align=1 (i32.const 0))) + (set_local 0x338 (i64.load offset=0x338 align=1 (i32.const 0))) + (set_local 0x339 (i64.load offset=0x339 align=1 (i32.const 0))) + (set_local 0x33a (i64.load offset=0x33a align=1 (i32.const 0))) + (set_local 0x33b (i64.load offset=0x33b align=1 (i32.const 0))) + (set_local 0x33c (i64.load offset=0x33c align=1 (i32.const 0))) + (set_local 0x33d (i64.load offset=0x33d align=1 (i32.const 0))) + (set_local 0x33e (i64.load offset=0x33e align=1 (i32.const 0))) + (set_local 0x33f (i64.load offset=0x33f align=1 (i32.const 0))) + (set_local 0x340 (i64.load offset=0x340 align=1 (i32.const 0))) + (set_local 0x341 (i64.load offset=0x341 align=1 (i32.const 0))) + (set_local 0x342 (i64.load offset=0x342 align=1 (i32.const 0))) + (set_local 0x343 (i64.load offset=0x343 align=1 (i32.const 0))) + (set_local 0x344 (i64.load offset=0x344 align=1 (i32.const 0))) + (set_local 0x345 (i64.load offset=0x345 align=1 (i32.const 0))) + (set_local 0x346 (i64.load offset=0x346 align=1 (i32.const 0))) + (set_local 0x347 (i64.load offset=0x347 align=1 (i32.const 0))) + (set_local 0x348 (i64.load offset=0x348 align=1 (i32.const 0))) + (set_local 0x349 (i64.load offset=0x349 align=1 (i32.const 0))) + (set_local 0x34a (i64.load offset=0x34a align=1 (i32.const 0))) + (set_local 0x34b (i64.load offset=0x34b align=1 (i32.const 0))) + (set_local 0x34c (i64.load offset=0x34c align=1 (i32.const 0))) + (set_local 0x34d (i64.load offset=0x34d align=1 (i32.const 0))) + (set_local 0x34e (i64.load offset=0x34e align=1 (i32.const 0))) + (set_local 0x34f (i64.load offset=0x34f align=1 (i32.const 0))) + (set_local 0x350 (i64.load offset=0x350 align=1 (i32.const 0))) + (set_local 0x351 (i64.load offset=0x351 align=1 (i32.const 0))) + (set_local 0x352 (i64.load offset=0x352 align=1 (i32.const 0))) + (set_local 0x353 (i64.load offset=0x353 align=1 (i32.const 0))) + (set_local 0x354 (i64.load offset=0x354 align=1 (i32.const 0))) + (set_local 0x355 (i64.load offset=0x355 align=1 (i32.const 0))) + (set_local 0x356 (i64.load offset=0x356 align=1 (i32.const 0))) + (set_local 0x357 (i64.load offset=0x357 align=1 (i32.const 0))) + (set_local 0x358 (i64.load offset=0x358 align=1 (i32.const 0))) + (set_local 0x359 (i64.load offset=0x359 align=1 (i32.const 0))) + (set_local 0x35a (i64.load offset=0x35a align=1 (i32.const 0))) + (set_local 0x35b (i64.load offset=0x35b align=1 (i32.const 0))) + (set_local 0x35c (i64.load offset=0x35c align=1 (i32.const 0))) + (set_local 0x35d (i64.load offset=0x35d align=1 (i32.const 0))) + (set_local 0x35e (i64.load offset=0x35e align=1 (i32.const 0))) + (set_local 0x35f (i64.load offset=0x35f align=1 (i32.const 0))) + (set_local 0x360 (i64.load offset=0x360 align=1 (i32.const 0))) + (set_local 0x361 (i64.load offset=0x361 align=1 (i32.const 0))) + (set_local 0x362 (i64.load offset=0x362 align=1 (i32.const 0))) + (set_local 0x363 (i64.load offset=0x363 align=1 (i32.const 0))) + (set_local 0x364 (i64.load offset=0x364 align=1 (i32.const 0))) + (set_local 0x365 (i64.load offset=0x365 align=1 (i32.const 0))) + (set_local 0x366 (i64.load offset=0x366 align=1 (i32.const 0))) + (set_local 0x367 (i64.load offset=0x367 align=1 (i32.const 0))) + (set_local 0x368 (i64.load offset=0x368 align=1 (i32.const 0))) + (set_local 0x369 (i64.load offset=0x369 align=1 (i32.const 0))) + (set_local 0x36a (i64.load offset=0x36a align=1 (i32.const 0))) + (set_local 0x36b (i64.load offset=0x36b align=1 (i32.const 0))) + (set_local 0x36c (i64.load offset=0x36c align=1 (i32.const 0))) + (set_local 0x36d (i64.load offset=0x36d align=1 (i32.const 0))) + (set_local 0x36e (i64.load offset=0x36e align=1 (i32.const 0))) + (set_local 0x36f (i64.load offset=0x36f align=1 (i32.const 0))) + (set_local 0x370 (i64.load offset=0x370 align=1 (i32.const 0))) + (set_local 0x371 (i64.load offset=0x371 align=1 (i32.const 0))) + (set_local 0x372 (i64.load offset=0x372 align=1 (i32.const 0))) + (set_local 0x373 (i64.load offset=0x373 align=1 (i32.const 0))) + (set_local 0x374 (i64.load offset=0x374 align=1 (i32.const 0))) + (set_local 0x375 (i64.load offset=0x375 align=1 (i32.const 0))) + (set_local 0x376 (i64.load offset=0x376 align=1 (i32.const 0))) + (set_local 0x377 (i64.load offset=0x377 align=1 (i32.const 0))) + (set_local 0x378 (i64.load offset=0x378 align=1 (i32.const 0))) + (set_local 0x379 (i64.load offset=0x379 align=1 (i32.const 0))) + (set_local 0x37a (i64.load offset=0x37a align=1 (i32.const 0))) + (set_local 0x37b (i64.load offset=0x37b align=1 (i32.const 0))) + (set_local 0x37c (i64.load offset=0x37c align=1 (i32.const 0))) + (set_local 0x37d (i64.load offset=0x37d align=1 (i32.const 0))) + (set_local 0x37e (i64.load offset=0x37e align=1 (i32.const 0))) + (set_local 0x37f (i64.load offset=0x37f align=1 (i32.const 0))) + (set_local 0x380 (i64.load offset=0x380 align=1 (i32.const 0))) + (set_local 0x381 (i64.load offset=0x381 align=1 (i32.const 0))) + (set_local 0x382 (i64.load offset=0x382 align=1 (i32.const 0))) + (set_local 0x383 (i64.load offset=0x383 align=1 (i32.const 0))) + (set_local 0x384 (i64.load offset=0x384 align=1 (i32.const 0))) + (set_local 0x385 (i64.load offset=0x385 align=1 (i32.const 0))) + (set_local 0x386 (i64.load offset=0x386 align=1 (i32.const 0))) + (set_local 0x387 (i64.load offset=0x387 align=1 (i32.const 0))) + (set_local 0x388 (i64.load offset=0x388 align=1 (i32.const 0))) + (set_local 0x389 (i64.load offset=0x389 align=1 (i32.const 0))) + (set_local 0x38a (i64.load offset=0x38a align=1 (i32.const 0))) + (set_local 0x38b (i64.load offset=0x38b align=1 (i32.const 0))) + (set_local 0x38c (i64.load offset=0x38c align=1 (i32.const 0))) + (set_local 0x38d (i64.load offset=0x38d align=1 (i32.const 0))) + (set_local 0x38e (i64.load offset=0x38e align=1 (i32.const 0))) + (set_local 0x38f (i64.load offset=0x38f align=1 (i32.const 0))) + (set_local 0x390 (i64.load offset=0x390 align=1 (i32.const 0))) + (set_local 0x391 (i64.load offset=0x391 align=1 (i32.const 0))) + (set_local 0x392 (i64.load offset=0x392 align=1 (i32.const 0))) + (set_local 0x393 (i64.load offset=0x393 align=1 (i32.const 0))) + (set_local 0x394 (i64.load offset=0x394 align=1 (i32.const 0))) + (set_local 0x395 (i64.load offset=0x395 align=1 (i32.const 0))) + (set_local 0x396 (i64.load offset=0x396 align=1 (i32.const 0))) + (set_local 0x397 (i64.load offset=0x397 align=1 (i32.const 0))) + (set_local 0x398 (i64.load offset=0x398 align=1 (i32.const 0))) + (set_local 0x399 (i64.load offset=0x399 align=1 (i32.const 0))) + (set_local 0x39a (i64.load offset=0x39a align=1 (i32.const 0))) + (set_local 0x39b (i64.load offset=0x39b align=1 (i32.const 0))) + (set_local 0x39c (i64.load offset=0x39c align=1 (i32.const 0))) + (set_local 0x39d (i64.load offset=0x39d align=1 (i32.const 0))) + (set_local 0x39e (i64.load offset=0x39e align=1 (i32.const 0))) + (set_local 0x39f (i64.load offset=0x39f align=1 (i32.const 0))) + (set_local 0x3a0 (i64.load offset=0x3a0 align=1 (i32.const 0))) + (set_local 0x3a1 (i64.load offset=0x3a1 align=1 (i32.const 0))) + (set_local 0x3a2 (i64.load offset=0x3a2 align=1 (i32.const 0))) + (set_local 0x3a3 (i64.load offset=0x3a3 align=1 (i32.const 0))) + (set_local 0x3a4 (i64.load offset=0x3a4 align=1 (i32.const 0))) + (set_local 0x3a5 (i64.load offset=0x3a5 align=1 (i32.const 0))) + (set_local 0x3a6 (i64.load offset=0x3a6 align=1 (i32.const 0))) + (set_local 0x3a7 (i64.load offset=0x3a7 align=1 (i32.const 0))) + (set_local 0x3a8 (i64.load offset=0x3a8 align=1 (i32.const 0))) + (set_local 0x3a9 (i64.load offset=0x3a9 align=1 (i32.const 0))) + (set_local 0x3aa (i64.load offset=0x3aa align=1 (i32.const 0))) + (set_local 0x3ab (i64.load offset=0x3ab align=1 (i32.const 0))) + (set_local 0x3ac (i64.load offset=0x3ac align=1 (i32.const 0))) + (set_local 0x3ad (i64.load offset=0x3ad align=1 (i32.const 0))) + (set_local 0x3ae (i64.load offset=0x3ae align=1 (i32.const 0))) + (set_local 0x3af (i64.load offset=0x3af align=1 (i32.const 0))) + (set_local 0x3b0 (i64.load offset=0x3b0 align=1 (i32.const 0))) + (set_local 0x3b1 (i64.load offset=0x3b1 align=1 (i32.const 0))) + (set_local 0x3b2 (i64.load offset=0x3b2 align=1 (i32.const 0))) + (set_local 0x3b3 (i64.load offset=0x3b3 align=1 (i32.const 0))) + (set_local 0x3b4 (i64.load offset=0x3b4 align=1 (i32.const 0))) + (set_local 0x3b5 (i64.load offset=0x3b5 align=1 (i32.const 0))) + (set_local 0x3b6 (i64.load offset=0x3b6 align=1 (i32.const 0))) + (set_local 0x3b7 (i64.load offset=0x3b7 align=1 (i32.const 0))) + (set_local 0x3b8 (i64.load offset=0x3b8 align=1 (i32.const 0))) + (set_local 0x3b9 (i64.load offset=0x3b9 align=1 (i32.const 0))) + (set_local 0x3ba (i64.load offset=0x3ba align=1 (i32.const 0))) + (set_local 0x3bb (i64.load offset=0x3bb align=1 (i32.const 0))) + (set_local 0x3bc (i64.load offset=0x3bc align=1 (i32.const 0))) + (set_local 0x3bd (i64.load offset=0x3bd align=1 (i32.const 0))) + (set_local 0x3be (i64.load offset=0x3be align=1 (i32.const 0))) + (set_local 0x3bf (i64.load offset=0x3bf align=1 (i32.const 0))) + (set_local 0x3c0 (i64.load offset=0x3c0 align=1 (i32.const 0))) + (set_local 0x3c1 (i64.load offset=0x3c1 align=1 (i32.const 0))) + (set_local 0x3c2 (i64.load offset=0x3c2 align=1 (i32.const 0))) + (set_local 0x3c3 (i64.load offset=0x3c3 align=1 (i32.const 0))) + (set_local 0x3c4 (i64.load offset=0x3c4 align=1 (i32.const 0))) + (set_local 0x3c5 (i64.load offset=0x3c5 align=1 (i32.const 0))) + (set_local 0x3c6 (i64.load offset=0x3c6 align=1 (i32.const 0))) + (set_local 0x3c7 (i64.load offset=0x3c7 align=1 (i32.const 0))) + (set_local 0x3c8 (i64.load offset=0x3c8 align=1 (i32.const 0))) + (set_local 0x3c9 (i64.load offset=0x3c9 align=1 (i32.const 0))) + (set_local 0x3ca (i64.load offset=0x3ca align=1 (i32.const 0))) + (set_local 0x3cb (i64.load offset=0x3cb align=1 (i32.const 0))) + (set_local 0x3cc (i64.load offset=0x3cc align=1 (i32.const 0))) + (set_local 0x3cd (i64.load offset=0x3cd align=1 (i32.const 0))) + (set_local 0x3ce (i64.load offset=0x3ce align=1 (i32.const 0))) + (set_local 0x3cf (i64.load offset=0x3cf align=1 (i32.const 0))) + (set_local 0x3d0 (i64.load offset=0x3d0 align=1 (i32.const 0))) + (set_local 0x3d1 (i64.load offset=0x3d1 align=1 (i32.const 0))) + (set_local 0x3d2 (i64.load offset=0x3d2 align=1 (i32.const 0))) + (set_local 0x3d3 (i64.load offset=0x3d3 align=1 (i32.const 0))) + (set_local 0x3d4 (i64.load offset=0x3d4 align=1 (i32.const 0))) + (set_local 0x3d5 (i64.load offset=0x3d5 align=1 (i32.const 0))) + (set_local 0x3d6 (i64.load offset=0x3d6 align=1 (i32.const 0))) + (set_local 0x3d7 (i64.load offset=0x3d7 align=1 (i32.const 0))) + (set_local 0x3d8 (i64.load offset=0x3d8 align=1 (i32.const 0))) + (set_local 0x3d9 (i64.load offset=0x3d9 align=1 (i32.const 0))) + (set_local 0x3da (i64.load offset=0x3da align=1 (i32.const 0))) + (set_local 0x3db (i64.load offset=0x3db align=1 (i32.const 0))) + (set_local 0x3dc (i64.load offset=0x3dc align=1 (i32.const 0))) + (set_local 0x3dd (i64.load offset=0x3dd align=1 (i32.const 0))) + (set_local 0x3de (i64.load offset=0x3de align=1 (i32.const 0))) + (set_local 0x3df (i64.load offset=0x3df align=1 (i32.const 0))) + (set_local 0x3e0 (i64.load offset=0x3e0 align=1 (i32.const 0))) + (set_local 0x3e1 (i64.load offset=0x3e1 align=1 (i32.const 0))) + (set_local 0x3e2 (i64.load offset=0x3e2 align=1 (i32.const 0))) + (set_local 0x3e3 (i64.load offset=0x3e3 align=1 (i32.const 0))) + (set_local 0x3e4 (i64.load offset=0x3e4 align=1 (i32.const 0))) + (set_local 0x3e5 (i64.load offset=0x3e5 align=1 (i32.const 0))) + (set_local 0x3e6 (i64.load offset=0x3e6 align=1 (i32.const 0))) + (set_local 0x3e7 (i64.load offset=0x3e7 align=1 (i32.const 0))) + (set_local 0x3e8 (i64.load offset=0x3e8 align=1 (i32.const 0))) + (set_local 0x3e9 (i64.load offset=0x3e9 align=1 (i32.const 0))) + (set_local 0x3ea (i64.load offset=0x3ea align=1 (i32.const 0))) + (set_local 0x3eb (i64.load offset=0x3eb align=1 (i32.const 0))) + (set_local 0x3ec (i64.load offset=0x3ec align=1 (i32.const 0))) + (set_local 0x3ed (i64.load offset=0x3ed align=1 (i32.const 0))) + (set_local 0x3ee (i64.load offset=0x3ee align=1 (i32.const 0))) + (set_local 0x3ef (i64.load offset=0x3ef align=1 (i32.const 0))) + (set_local 0x3f0 (i64.load offset=0x3f0 align=1 (i32.const 0))) + (set_local 0x3f1 (i64.load offset=0x3f1 align=1 (i32.const 0))) + (set_local 0x3f2 (i64.load offset=0x3f2 align=1 (i32.const 0))) + (set_local 0x3f3 (i64.load offset=0x3f3 align=1 (i32.const 0))) + (set_local 0x3f4 (i64.load offset=0x3f4 align=1 (i32.const 0))) + (set_local 0x3f5 (i64.load offset=0x3f5 align=1 (i32.const 0))) + (set_local 0x3f6 (i64.load offset=0x3f6 align=1 (i32.const 0))) + (set_local 0x3f7 (i64.load offset=0x3f7 align=1 (i32.const 0))) + (set_local 0x3f8 (i64.load offset=0x3f8 align=1 (i32.const 0))) + (set_local 0x3f9 (i64.load offset=0x3f9 align=1 (i32.const 0))) + (set_local 0x3fa (i64.load offset=0x3fa align=1 (i32.const 0))) + (set_local 0x3fb (i64.load offset=0x3fb align=1 (i32.const 0))) + (set_local 0x3fc (i64.load offset=0x3fc align=1 (i32.const 0))) + (set_local 0x3fd (i64.load offset=0x3fd align=1 (i32.const 0))) + (set_local 0x3fe (i64.load offset=0x3fe align=1 (i32.const 0))) + (set_local 0x3ff (i64.load offset=0x3ff align=1 (i32.const 0))) + (set_local 0x400 (i64.load offset=0x400 align=1 (i32.const 0))) + (set_local 0x401 (i64.load offset=0x401 align=1 (i32.const 0))) + (set_local 0x402 (i64.load offset=0x402 align=1 (i32.const 0))) + (set_local 0x403 (i64.load offset=0x403 align=1 (i32.const 0))) + (set_local 0x404 (i64.load offset=0x404 align=1 (i32.const 0))) + (set_local 0x405 (i64.load offset=0x405 align=1 (i32.const 0))) + (set_local 0x406 (i64.load offset=0x406 align=1 (i32.const 0))) + (set_local 0x407 (i64.load offset=0x407 align=1 (i32.const 0))) + (set_local 0x408 (i64.load offset=0x408 align=1 (i32.const 0))) + (set_local 0x409 (i64.load offset=0x409 align=1 (i32.const 0))) + (set_local 0x40a (i64.load offset=0x40a align=1 (i32.const 0))) + (set_local 0x40b (i64.load offset=0x40b align=1 (i32.const 0))) + (set_local 0x40c (i64.load offset=0x40c align=1 (i32.const 0))) + (set_local 0x40d (i64.load offset=0x40d align=1 (i32.const 0))) + (set_local 0x40e (i64.load offset=0x40e align=1 (i32.const 0))) + (set_local 0x40f (i64.load offset=0x40f align=1 (i32.const 0))) + (set_local 0x410 (i64.load offset=0x410 align=1 (i32.const 0))) + (set_local 0x411 (i64.load offset=0x411 align=1 (i32.const 0))) + (set_local 0x412 (i64.load offset=0x412 align=1 (i32.const 0))) + (set_local 0x413 (i64.load offset=0x413 align=1 (i32.const 0))) + (set_local 0x414 (i64.load offset=0x414 align=1 (i32.const 0))) + (set_local 0x415 (i64.load offset=0x415 align=1 (i32.const 0))) + (set_local 0x416 (i64.load offset=0x416 align=1 (i32.const 0))) + (set_local 0x417 (i64.load offset=0x417 align=1 (i32.const 0))) + (set_local 0x418 (i64.load offset=0x418 align=1 (i32.const 0))) + (set_local 0x419 (i64.load offset=0x419 align=1 (i32.const 0))) + (set_local 0x41a (i64.load offset=0x41a align=1 (i32.const 0))) + (set_local 0x41b (i64.load offset=0x41b align=1 (i32.const 0))) + (set_local 0x41c (i64.load offset=0x41c align=1 (i32.const 0))) + (set_local 0x41d (i64.load offset=0x41d align=1 (i32.const 0))) + (set_local 0x41e (i64.load offset=0x41e align=1 (i32.const 0))) + (set_local 0x41f (i64.load offset=0x41f align=1 (i32.const 0))) + + ;; store the locals back to memory + (i64.store offset=0x000 align=1 (i32.const 0) (get_local 0x000)) + (i64.store offset=0x001 align=1 (i32.const 0) (get_local 0x001)) + (i64.store offset=0x002 align=1 (i32.const 0) (get_local 0x002)) + (i64.store offset=0x003 align=1 (i32.const 0) (get_local 0x003)) + (i64.store offset=0x004 align=1 (i32.const 0) (get_local 0x004)) + (i64.store offset=0x005 align=1 (i32.const 0) (get_local 0x005)) + (i64.store offset=0x006 align=1 (i32.const 0) (get_local 0x006)) + (i64.store offset=0x007 align=1 (i32.const 0) (get_local 0x007)) + (i64.store offset=0x008 align=1 (i32.const 0) (get_local 0x008)) + (i64.store offset=0x009 align=1 (i32.const 0) (get_local 0x009)) + (i64.store offset=0x00a align=1 (i32.const 0) (get_local 0x00a)) + (i64.store offset=0x00b align=1 (i32.const 0) (get_local 0x00b)) + (i64.store offset=0x00c align=1 (i32.const 0) (get_local 0x00c)) + (i64.store offset=0x00d align=1 (i32.const 0) (get_local 0x00d)) + (i64.store offset=0x00e align=1 (i32.const 0) (get_local 0x00e)) + (i64.store offset=0x00f align=1 (i32.const 0) (get_local 0x00f)) + (i64.store offset=0x010 align=1 (i32.const 0) (get_local 0x010)) + (i64.store offset=0x011 align=1 (i32.const 0) (get_local 0x011)) + (i64.store offset=0x012 align=1 (i32.const 0) (get_local 0x012)) + (i64.store offset=0x013 align=1 (i32.const 0) (get_local 0x013)) + (i64.store offset=0x014 align=1 (i32.const 0) (get_local 0x014)) + (i64.store offset=0x015 align=1 (i32.const 0) (get_local 0x015)) + (i64.store offset=0x016 align=1 (i32.const 0) (get_local 0x016)) + (i64.store offset=0x017 align=1 (i32.const 0) (get_local 0x017)) + (i64.store offset=0x018 align=1 (i32.const 0) (get_local 0x018)) + (i64.store offset=0x019 align=1 (i32.const 0) (get_local 0x019)) + (i64.store offset=0x01a align=1 (i32.const 0) (get_local 0x01a)) + (i64.store offset=0x01b align=1 (i32.const 0) (get_local 0x01b)) + (i64.store offset=0x01c align=1 (i32.const 0) (get_local 0x01c)) + (i64.store offset=0x01d align=1 (i32.const 0) (get_local 0x01d)) + (i64.store offset=0x01e align=1 (i32.const 0) (get_local 0x01e)) + (i64.store offset=0x01f align=1 (i32.const 0) (get_local 0x01f)) + (i64.store offset=0x020 align=1 (i32.const 0) (get_local 0x020)) + (i64.store offset=0x021 align=1 (i32.const 0) (get_local 0x021)) + (i64.store offset=0x022 align=1 (i32.const 0) (get_local 0x022)) + (i64.store offset=0x023 align=1 (i32.const 0) (get_local 0x023)) + (i64.store offset=0x024 align=1 (i32.const 0) (get_local 0x024)) + (i64.store offset=0x025 align=1 (i32.const 0) (get_local 0x025)) + (i64.store offset=0x026 align=1 (i32.const 0) (get_local 0x026)) + (i64.store offset=0x027 align=1 (i32.const 0) (get_local 0x027)) + (i64.store offset=0x028 align=1 (i32.const 0) (get_local 0x028)) + (i64.store offset=0x029 align=1 (i32.const 0) (get_local 0x029)) + (i64.store offset=0x02a align=1 (i32.const 0) (get_local 0x02a)) + (i64.store offset=0x02b align=1 (i32.const 0) (get_local 0x02b)) + (i64.store offset=0x02c align=1 (i32.const 0) (get_local 0x02c)) + (i64.store offset=0x02d align=1 (i32.const 0) (get_local 0x02d)) + (i64.store offset=0x02e align=1 (i32.const 0) (get_local 0x02e)) + (i64.store offset=0x02f align=1 (i32.const 0) (get_local 0x02f)) + (i64.store offset=0x030 align=1 (i32.const 0) (get_local 0x030)) + (i64.store offset=0x031 align=1 (i32.const 0) (get_local 0x031)) + (i64.store offset=0x032 align=1 (i32.const 0) (get_local 0x032)) + (i64.store offset=0x033 align=1 (i32.const 0) (get_local 0x033)) + (i64.store offset=0x034 align=1 (i32.const 0) (get_local 0x034)) + (i64.store offset=0x035 align=1 (i32.const 0) (get_local 0x035)) + (i64.store offset=0x036 align=1 (i32.const 0) (get_local 0x036)) + (i64.store offset=0x037 align=1 (i32.const 0) (get_local 0x037)) + (i64.store offset=0x038 align=1 (i32.const 0) (get_local 0x038)) + (i64.store offset=0x039 align=1 (i32.const 0) (get_local 0x039)) + (i64.store offset=0x03a align=1 (i32.const 0) (get_local 0x03a)) + (i64.store offset=0x03b align=1 (i32.const 0) (get_local 0x03b)) + (i64.store offset=0x03c align=1 (i32.const 0) (get_local 0x03c)) + (i64.store offset=0x03d align=1 (i32.const 0) (get_local 0x03d)) + (i64.store offset=0x03e align=1 (i32.const 0) (get_local 0x03e)) + (i64.store offset=0x03f align=1 (i32.const 0) (get_local 0x03f)) + (i64.store offset=0x040 align=1 (i32.const 0) (get_local 0x040)) + (i64.store offset=0x041 align=1 (i32.const 0) (get_local 0x041)) + (i64.store offset=0x042 align=1 (i32.const 0) (get_local 0x042)) + (i64.store offset=0x043 align=1 (i32.const 0) (get_local 0x043)) + (i64.store offset=0x044 align=1 (i32.const 0) (get_local 0x044)) + (i64.store offset=0x045 align=1 (i32.const 0) (get_local 0x045)) + (i64.store offset=0x046 align=1 (i32.const 0) (get_local 0x046)) + (i64.store offset=0x047 align=1 (i32.const 0) (get_local 0x047)) + (i64.store offset=0x048 align=1 (i32.const 0) (get_local 0x048)) + (i64.store offset=0x049 align=1 (i32.const 0) (get_local 0x049)) + (i64.store offset=0x04a align=1 (i32.const 0) (get_local 0x04a)) + (i64.store offset=0x04b align=1 (i32.const 0) (get_local 0x04b)) + (i64.store offset=0x04c align=1 (i32.const 0) (get_local 0x04c)) + (i64.store offset=0x04d align=1 (i32.const 0) (get_local 0x04d)) + (i64.store offset=0x04e align=1 (i32.const 0) (get_local 0x04e)) + (i64.store offset=0x04f align=1 (i32.const 0) (get_local 0x04f)) + (i64.store offset=0x050 align=1 (i32.const 0) (get_local 0x050)) + (i64.store offset=0x051 align=1 (i32.const 0) (get_local 0x051)) + (i64.store offset=0x052 align=1 (i32.const 0) (get_local 0x052)) + (i64.store offset=0x053 align=1 (i32.const 0) (get_local 0x053)) + (i64.store offset=0x054 align=1 (i32.const 0) (get_local 0x054)) + (i64.store offset=0x055 align=1 (i32.const 0) (get_local 0x055)) + (i64.store offset=0x056 align=1 (i32.const 0) (get_local 0x056)) + (i64.store offset=0x057 align=1 (i32.const 0) (get_local 0x057)) + (i64.store offset=0x058 align=1 (i32.const 0) (get_local 0x058)) + (i64.store offset=0x059 align=1 (i32.const 0) (get_local 0x059)) + (i64.store offset=0x05a align=1 (i32.const 0) (get_local 0x05a)) + (i64.store offset=0x05b align=1 (i32.const 0) (get_local 0x05b)) + (i64.store offset=0x05c align=1 (i32.const 0) (get_local 0x05c)) + (i64.store offset=0x05d align=1 (i32.const 0) (get_local 0x05d)) + (i64.store offset=0x05e align=1 (i32.const 0) (get_local 0x05e)) + (i64.store offset=0x05f align=1 (i32.const 0) (get_local 0x05f)) + (i64.store offset=0x060 align=1 (i32.const 0) (get_local 0x060)) + (i64.store offset=0x061 align=1 (i32.const 0) (get_local 0x061)) + (i64.store offset=0x062 align=1 (i32.const 0) (get_local 0x062)) + (i64.store offset=0x063 align=1 (i32.const 0) (get_local 0x063)) + (i64.store offset=0x064 align=1 (i32.const 0) (get_local 0x064)) + (i64.store offset=0x065 align=1 (i32.const 0) (get_local 0x065)) + (i64.store offset=0x066 align=1 (i32.const 0) (get_local 0x066)) + (i64.store offset=0x067 align=1 (i32.const 0) (get_local 0x067)) + (i64.store offset=0x068 align=1 (i32.const 0) (get_local 0x068)) + (i64.store offset=0x069 align=1 (i32.const 0) (get_local 0x069)) + (i64.store offset=0x06a align=1 (i32.const 0) (get_local 0x06a)) + (i64.store offset=0x06b align=1 (i32.const 0) (get_local 0x06b)) + (i64.store offset=0x06c align=1 (i32.const 0) (get_local 0x06c)) + (i64.store offset=0x06d align=1 (i32.const 0) (get_local 0x06d)) + (i64.store offset=0x06e align=1 (i32.const 0) (get_local 0x06e)) + (i64.store offset=0x06f align=1 (i32.const 0) (get_local 0x06f)) + (i64.store offset=0x070 align=1 (i32.const 0) (get_local 0x070)) + (i64.store offset=0x071 align=1 (i32.const 0) (get_local 0x071)) + (i64.store offset=0x072 align=1 (i32.const 0) (get_local 0x072)) + (i64.store offset=0x073 align=1 (i32.const 0) (get_local 0x073)) + (i64.store offset=0x074 align=1 (i32.const 0) (get_local 0x074)) + (i64.store offset=0x075 align=1 (i32.const 0) (get_local 0x075)) + (i64.store offset=0x076 align=1 (i32.const 0) (get_local 0x076)) + (i64.store offset=0x077 align=1 (i32.const 0) (get_local 0x077)) + (i64.store offset=0x078 align=1 (i32.const 0) (get_local 0x078)) + (i64.store offset=0x079 align=1 (i32.const 0) (get_local 0x079)) + (i64.store offset=0x07a align=1 (i32.const 0) (get_local 0x07a)) + (i64.store offset=0x07b align=1 (i32.const 0) (get_local 0x07b)) + (i64.store offset=0x07c align=1 (i32.const 0) (get_local 0x07c)) + (i64.store offset=0x07d align=1 (i32.const 0) (get_local 0x07d)) + (i64.store offset=0x07e align=1 (i32.const 0) (get_local 0x07e)) + (i64.store offset=0x07f align=1 (i32.const 0) (get_local 0x07f)) + (i64.store offset=0x080 align=1 (i32.const 0) (get_local 0x080)) + (i64.store offset=0x081 align=1 (i32.const 0) (get_local 0x081)) + (i64.store offset=0x082 align=1 (i32.const 0) (get_local 0x082)) + (i64.store offset=0x083 align=1 (i32.const 0) (get_local 0x083)) + (i64.store offset=0x084 align=1 (i32.const 0) (get_local 0x084)) + (i64.store offset=0x085 align=1 (i32.const 0) (get_local 0x085)) + (i64.store offset=0x086 align=1 (i32.const 0) (get_local 0x086)) + (i64.store offset=0x087 align=1 (i32.const 0) (get_local 0x087)) + (i64.store offset=0x088 align=1 (i32.const 0) (get_local 0x088)) + (i64.store offset=0x089 align=1 (i32.const 0) (get_local 0x089)) + (i64.store offset=0x08a align=1 (i32.const 0) (get_local 0x08a)) + (i64.store offset=0x08b align=1 (i32.const 0) (get_local 0x08b)) + (i64.store offset=0x08c align=1 (i32.const 0) (get_local 0x08c)) + (i64.store offset=0x08d align=1 (i32.const 0) (get_local 0x08d)) + (i64.store offset=0x08e align=1 (i32.const 0) (get_local 0x08e)) + (i64.store offset=0x08f align=1 (i32.const 0) (get_local 0x08f)) + (i64.store offset=0x090 align=1 (i32.const 0) (get_local 0x090)) + (i64.store offset=0x091 align=1 (i32.const 0) (get_local 0x091)) + (i64.store offset=0x092 align=1 (i32.const 0) (get_local 0x092)) + (i64.store offset=0x093 align=1 (i32.const 0) (get_local 0x093)) + (i64.store offset=0x094 align=1 (i32.const 0) (get_local 0x094)) + (i64.store offset=0x095 align=1 (i32.const 0) (get_local 0x095)) + (i64.store offset=0x096 align=1 (i32.const 0) (get_local 0x096)) + (i64.store offset=0x097 align=1 (i32.const 0) (get_local 0x097)) + (i64.store offset=0x098 align=1 (i32.const 0) (get_local 0x098)) + (i64.store offset=0x099 align=1 (i32.const 0) (get_local 0x099)) + (i64.store offset=0x09a align=1 (i32.const 0) (get_local 0x09a)) + (i64.store offset=0x09b align=1 (i32.const 0) (get_local 0x09b)) + (i64.store offset=0x09c align=1 (i32.const 0) (get_local 0x09c)) + (i64.store offset=0x09d align=1 (i32.const 0) (get_local 0x09d)) + (i64.store offset=0x09e align=1 (i32.const 0) (get_local 0x09e)) + (i64.store offset=0x09f align=1 (i32.const 0) (get_local 0x09f)) + (i64.store offset=0x0a0 align=1 (i32.const 0) (get_local 0x0a0)) + (i64.store offset=0x0a1 align=1 (i32.const 0) (get_local 0x0a1)) + (i64.store offset=0x0a2 align=1 (i32.const 0) (get_local 0x0a2)) + (i64.store offset=0x0a3 align=1 (i32.const 0) (get_local 0x0a3)) + (i64.store offset=0x0a4 align=1 (i32.const 0) (get_local 0x0a4)) + (i64.store offset=0x0a5 align=1 (i32.const 0) (get_local 0x0a5)) + (i64.store offset=0x0a6 align=1 (i32.const 0) (get_local 0x0a6)) + (i64.store offset=0x0a7 align=1 (i32.const 0) (get_local 0x0a7)) + (i64.store offset=0x0a8 align=1 (i32.const 0) (get_local 0x0a8)) + (i64.store offset=0x0a9 align=1 (i32.const 0) (get_local 0x0a9)) + (i64.store offset=0x0aa align=1 (i32.const 0) (get_local 0x0aa)) + (i64.store offset=0x0ab align=1 (i32.const 0) (get_local 0x0ab)) + (i64.store offset=0x0ac align=1 (i32.const 0) (get_local 0x0ac)) + (i64.store offset=0x0ad align=1 (i32.const 0) (get_local 0x0ad)) + (i64.store offset=0x0ae align=1 (i32.const 0) (get_local 0x0ae)) + (i64.store offset=0x0af align=1 (i32.const 0) (get_local 0x0af)) + (i64.store offset=0x0b0 align=1 (i32.const 0) (get_local 0x0b0)) + (i64.store offset=0x0b1 align=1 (i32.const 0) (get_local 0x0b1)) + (i64.store offset=0x0b2 align=1 (i32.const 0) (get_local 0x0b2)) + (i64.store offset=0x0b3 align=1 (i32.const 0) (get_local 0x0b3)) + (i64.store offset=0x0b4 align=1 (i32.const 0) (get_local 0x0b4)) + (i64.store offset=0x0b5 align=1 (i32.const 0) (get_local 0x0b5)) + (i64.store offset=0x0b6 align=1 (i32.const 0) (get_local 0x0b6)) + (i64.store offset=0x0b7 align=1 (i32.const 0) (get_local 0x0b7)) + (i64.store offset=0x0b8 align=1 (i32.const 0) (get_local 0x0b8)) + (i64.store offset=0x0b9 align=1 (i32.const 0) (get_local 0x0b9)) + (i64.store offset=0x0ba align=1 (i32.const 0) (get_local 0x0ba)) + (i64.store offset=0x0bb align=1 (i32.const 0) (get_local 0x0bb)) + (i64.store offset=0x0bc align=1 (i32.const 0) (get_local 0x0bc)) + (i64.store offset=0x0bd align=1 (i32.const 0) (get_local 0x0bd)) + (i64.store offset=0x0be align=1 (i32.const 0) (get_local 0x0be)) + (i64.store offset=0x0bf align=1 (i32.const 0) (get_local 0x0bf)) + (i64.store offset=0x0c0 align=1 (i32.const 0) (get_local 0x0c0)) + (i64.store offset=0x0c1 align=1 (i32.const 0) (get_local 0x0c1)) + (i64.store offset=0x0c2 align=1 (i32.const 0) (get_local 0x0c2)) + (i64.store offset=0x0c3 align=1 (i32.const 0) (get_local 0x0c3)) + (i64.store offset=0x0c4 align=1 (i32.const 0) (get_local 0x0c4)) + (i64.store offset=0x0c5 align=1 (i32.const 0) (get_local 0x0c5)) + (i64.store offset=0x0c6 align=1 (i32.const 0) (get_local 0x0c6)) + (i64.store offset=0x0c7 align=1 (i32.const 0) (get_local 0x0c7)) + (i64.store offset=0x0c8 align=1 (i32.const 0) (get_local 0x0c8)) + (i64.store offset=0x0c9 align=1 (i32.const 0) (get_local 0x0c9)) + (i64.store offset=0x0ca align=1 (i32.const 0) (get_local 0x0ca)) + (i64.store offset=0x0cb align=1 (i32.const 0) (get_local 0x0cb)) + (i64.store offset=0x0cc align=1 (i32.const 0) (get_local 0x0cc)) + (i64.store offset=0x0cd align=1 (i32.const 0) (get_local 0x0cd)) + (i64.store offset=0x0ce align=1 (i32.const 0) (get_local 0x0ce)) + (i64.store offset=0x0cf align=1 (i32.const 0) (get_local 0x0cf)) + (i64.store offset=0x0d0 align=1 (i32.const 0) (get_local 0x0d0)) + (i64.store offset=0x0d1 align=1 (i32.const 0) (get_local 0x0d1)) + (i64.store offset=0x0d2 align=1 (i32.const 0) (get_local 0x0d2)) + (i64.store offset=0x0d3 align=1 (i32.const 0) (get_local 0x0d3)) + (i64.store offset=0x0d4 align=1 (i32.const 0) (get_local 0x0d4)) + (i64.store offset=0x0d5 align=1 (i32.const 0) (get_local 0x0d5)) + (i64.store offset=0x0d6 align=1 (i32.const 0) (get_local 0x0d6)) + (i64.store offset=0x0d7 align=1 (i32.const 0) (get_local 0x0d7)) + (i64.store offset=0x0d8 align=1 (i32.const 0) (get_local 0x0d8)) + (i64.store offset=0x0d9 align=1 (i32.const 0) (get_local 0x0d9)) + (i64.store offset=0x0da align=1 (i32.const 0) (get_local 0x0da)) + (i64.store offset=0x0db align=1 (i32.const 0) (get_local 0x0db)) + (i64.store offset=0x0dc align=1 (i32.const 0) (get_local 0x0dc)) + (i64.store offset=0x0dd align=1 (i32.const 0) (get_local 0x0dd)) + (i64.store offset=0x0de align=1 (i32.const 0) (get_local 0x0de)) + (i64.store offset=0x0df align=1 (i32.const 0) (get_local 0x0df)) + (i64.store offset=0x0e0 align=1 (i32.const 0) (get_local 0x0e0)) + (i64.store offset=0x0e1 align=1 (i32.const 0) (get_local 0x0e1)) + (i64.store offset=0x0e2 align=1 (i32.const 0) (get_local 0x0e2)) + (i64.store offset=0x0e3 align=1 (i32.const 0) (get_local 0x0e3)) + (i64.store offset=0x0e4 align=1 (i32.const 0) (get_local 0x0e4)) + (i64.store offset=0x0e5 align=1 (i32.const 0) (get_local 0x0e5)) + (i64.store offset=0x0e6 align=1 (i32.const 0) (get_local 0x0e6)) + (i64.store offset=0x0e7 align=1 (i32.const 0) (get_local 0x0e7)) + (i64.store offset=0x0e8 align=1 (i32.const 0) (get_local 0x0e8)) + (i64.store offset=0x0e9 align=1 (i32.const 0) (get_local 0x0e9)) + (i64.store offset=0x0ea align=1 (i32.const 0) (get_local 0x0ea)) + (i64.store offset=0x0eb align=1 (i32.const 0) (get_local 0x0eb)) + (i64.store offset=0x0ec align=1 (i32.const 0) (get_local 0x0ec)) + (i64.store offset=0x0ed align=1 (i32.const 0) (get_local 0x0ed)) + (i64.store offset=0x0ee align=1 (i32.const 0) (get_local 0x0ee)) + (i64.store offset=0x0ef align=1 (i32.const 0) (get_local 0x0ef)) + (i64.store offset=0x0f0 align=1 (i32.const 0) (get_local 0x0f0)) + (i64.store offset=0x0f1 align=1 (i32.const 0) (get_local 0x0f1)) + (i64.store offset=0x0f2 align=1 (i32.const 0) (get_local 0x0f2)) + (i64.store offset=0x0f3 align=1 (i32.const 0) (get_local 0x0f3)) + (i64.store offset=0x0f4 align=1 (i32.const 0) (get_local 0x0f4)) + (i64.store offset=0x0f5 align=1 (i32.const 0) (get_local 0x0f5)) + (i64.store offset=0x0f6 align=1 (i32.const 0) (get_local 0x0f6)) + (i64.store offset=0x0f7 align=1 (i32.const 0) (get_local 0x0f7)) + (i64.store offset=0x0f8 align=1 (i32.const 0) (get_local 0x0f8)) + (i64.store offset=0x0f9 align=1 (i32.const 0) (get_local 0x0f9)) + (i64.store offset=0x0fa align=1 (i32.const 0) (get_local 0x0fa)) + (i64.store offset=0x0fb align=1 (i32.const 0) (get_local 0x0fb)) + (i64.store offset=0x0fc align=1 (i32.const 0) (get_local 0x0fc)) + (i64.store offset=0x0fd align=1 (i32.const 0) (get_local 0x0fd)) + (i64.store offset=0x0fe align=1 (i32.const 0) (get_local 0x0fe)) + (i64.store offset=0x0ff align=1 (i32.const 0) (get_local 0x0ff)) + (i64.store offset=0x100 align=1 (i32.const 0) (get_local 0x100)) + (i64.store offset=0x101 align=1 (i32.const 0) (get_local 0x101)) + (i64.store offset=0x102 align=1 (i32.const 0) (get_local 0x102)) + (i64.store offset=0x103 align=1 (i32.const 0) (get_local 0x103)) + (i64.store offset=0x104 align=1 (i32.const 0) (get_local 0x104)) + (i64.store offset=0x105 align=1 (i32.const 0) (get_local 0x105)) + (i64.store offset=0x106 align=1 (i32.const 0) (get_local 0x106)) + (i64.store offset=0x107 align=1 (i32.const 0) (get_local 0x107)) + (i64.store offset=0x108 align=1 (i32.const 0) (get_local 0x108)) + (i64.store offset=0x109 align=1 (i32.const 0) (get_local 0x109)) + (i64.store offset=0x10a align=1 (i32.const 0) (get_local 0x10a)) + (i64.store offset=0x10b align=1 (i32.const 0) (get_local 0x10b)) + (i64.store offset=0x10c align=1 (i32.const 0) (get_local 0x10c)) + (i64.store offset=0x10d align=1 (i32.const 0) (get_local 0x10d)) + (i64.store offset=0x10e align=1 (i32.const 0) (get_local 0x10e)) + (i64.store offset=0x10f align=1 (i32.const 0) (get_local 0x10f)) + (i64.store offset=0x110 align=1 (i32.const 0) (get_local 0x110)) + (i64.store offset=0x111 align=1 (i32.const 0) (get_local 0x111)) + (i64.store offset=0x112 align=1 (i32.const 0) (get_local 0x112)) + (i64.store offset=0x113 align=1 (i32.const 0) (get_local 0x113)) + (i64.store offset=0x114 align=1 (i32.const 0) (get_local 0x114)) + (i64.store offset=0x115 align=1 (i32.const 0) (get_local 0x115)) + (i64.store offset=0x116 align=1 (i32.const 0) (get_local 0x116)) + (i64.store offset=0x117 align=1 (i32.const 0) (get_local 0x117)) + (i64.store offset=0x118 align=1 (i32.const 0) (get_local 0x118)) + (i64.store offset=0x119 align=1 (i32.const 0) (get_local 0x119)) + (i64.store offset=0x11a align=1 (i32.const 0) (get_local 0x11a)) + (i64.store offset=0x11b align=1 (i32.const 0) (get_local 0x11b)) + (i64.store offset=0x11c align=1 (i32.const 0) (get_local 0x11c)) + (i64.store offset=0x11d align=1 (i32.const 0) (get_local 0x11d)) + (i64.store offset=0x11e align=1 (i32.const 0) (get_local 0x11e)) + (i64.store offset=0x11f align=1 (i32.const 0) (get_local 0x11f)) + (i64.store offset=0x120 align=1 (i32.const 0) (get_local 0x120)) + (i64.store offset=0x121 align=1 (i32.const 0) (get_local 0x121)) + (i64.store offset=0x122 align=1 (i32.const 0) (get_local 0x122)) + (i64.store offset=0x123 align=1 (i32.const 0) (get_local 0x123)) + (i64.store offset=0x124 align=1 (i32.const 0) (get_local 0x124)) + (i64.store offset=0x125 align=1 (i32.const 0) (get_local 0x125)) + (i64.store offset=0x126 align=1 (i32.const 0) (get_local 0x126)) + (i64.store offset=0x127 align=1 (i32.const 0) (get_local 0x127)) + (i64.store offset=0x128 align=1 (i32.const 0) (get_local 0x128)) + (i64.store offset=0x129 align=1 (i32.const 0) (get_local 0x129)) + (i64.store offset=0x12a align=1 (i32.const 0) (get_local 0x12a)) + (i64.store offset=0x12b align=1 (i32.const 0) (get_local 0x12b)) + (i64.store offset=0x12c align=1 (i32.const 0) (get_local 0x12c)) + (i64.store offset=0x12d align=1 (i32.const 0) (get_local 0x12d)) + (i64.store offset=0x12e align=1 (i32.const 0) (get_local 0x12e)) + (i64.store offset=0x12f align=1 (i32.const 0) (get_local 0x12f)) + (i64.store offset=0x130 align=1 (i32.const 0) (get_local 0x130)) + (i64.store offset=0x131 align=1 (i32.const 0) (get_local 0x131)) + (i64.store offset=0x132 align=1 (i32.const 0) (get_local 0x132)) + (i64.store offset=0x133 align=1 (i32.const 0) (get_local 0x133)) + (i64.store offset=0x134 align=1 (i32.const 0) (get_local 0x134)) + (i64.store offset=0x135 align=1 (i32.const 0) (get_local 0x135)) + (i64.store offset=0x136 align=1 (i32.const 0) (get_local 0x136)) + (i64.store offset=0x137 align=1 (i32.const 0) (get_local 0x137)) + (i64.store offset=0x138 align=1 (i32.const 0) (get_local 0x138)) + (i64.store offset=0x139 align=1 (i32.const 0) (get_local 0x139)) + (i64.store offset=0x13a align=1 (i32.const 0) (get_local 0x13a)) + (i64.store offset=0x13b align=1 (i32.const 0) (get_local 0x13b)) + (i64.store offset=0x13c align=1 (i32.const 0) (get_local 0x13c)) + (i64.store offset=0x13d align=1 (i32.const 0) (get_local 0x13d)) + (i64.store offset=0x13e align=1 (i32.const 0) (get_local 0x13e)) + (i64.store offset=0x13f align=1 (i32.const 0) (get_local 0x13f)) + (i64.store offset=0x140 align=1 (i32.const 0) (get_local 0x140)) + (i64.store offset=0x141 align=1 (i32.const 0) (get_local 0x141)) + (i64.store offset=0x142 align=1 (i32.const 0) (get_local 0x142)) + (i64.store offset=0x143 align=1 (i32.const 0) (get_local 0x143)) + (i64.store offset=0x144 align=1 (i32.const 0) (get_local 0x144)) + (i64.store offset=0x145 align=1 (i32.const 0) (get_local 0x145)) + (i64.store offset=0x146 align=1 (i32.const 0) (get_local 0x146)) + (i64.store offset=0x147 align=1 (i32.const 0) (get_local 0x147)) + (i64.store offset=0x148 align=1 (i32.const 0) (get_local 0x148)) + (i64.store offset=0x149 align=1 (i32.const 0) (get_local 0x149)) + (i64.store offset=0x14a align=1 (i32.const 0) (get_local 0x14a)) + (i64.store offset=0x14b align=1 (i32.const 0) (get_local 0x14b)) + (i64.store offset=0x14c align=1 (i32.const 0) (get_local 0x14c)) + (i64.store offset=0x14d align=1 (i32.const 0) (get_local 0x14d)) + (i64.store offset=0x14e align=1 (i32.const 0) (get_local 0x14e)) + (i64.store offset=0x14f align=1 (i32.const 0) (get_local 0x14f)) + (i64.store offset=0x150 align=1 (i32.const 0) (get_local 0x150)) + (i64.store offset=0x151 align=1 (i32.const 0) (get_local 0x151)) + (i64.store offset=0x152 align=1 (i32.const 0) (get_local 0x152)) + (i64.store offset=0x153 align=1 (i32.const 0) (get_local 0x153)) + (i64.store offset=0x154 align=1 (i32.const 0) (get_local 0x154)) + (i64.store offset=0x155 align=1 (i32.const 0) (get_local 0x155)) + (i64.store offset=0x156 align=1 (i32.const 0) (get_local 0x156)) + (i64.store offset=0x157 align=1 (i32.const 0) (get_local 0x157)) + (i64.store offset=0x158 align=1 (i32.const 0) (get_local 0x158)) + (i64.store offset=0x159 align=1 (i32.const 0) (get_local 0x159)) + (i64.store offset=0x15a align=1 (i32.const 0) (get_local 0x15a)) + (i64.store offset=0x15b align=1 (i32.const 0) (get_local 0x15b)) + (i64.store offset=0x15c align=1 (i32.const 0) (get_local 0x15c)) + (i64.store offset=0x15d align=1 (i32.const 0) (get_local 0x15d)) + (i64.store offset=0x15e align=1 (i32.const 0) (get_local 0x15e)) + (i64.store offset=0x15f align=1 (i32.const 0) (get_local 0x15f)) + (i64.store offset=0x160 align=1 (i32.const 0) (get_local 0x160)) + (i64.store offset=0x161 align=1 (i32.const 0) (get_local 0x161)) + (i64.store offset=0x162 align=1 (i32.const 0) (get_local 0x162)) + (i64.store offset=0x163 align=1 (i32.const 0) (get_local 0x163)) + (i64.store offset=0x164 align=1 (i32.const 0) (get_local 0x164)) + (i64.store offset=0x165 align=1 (i32.const 0) (get_local 0x165)) + (i64.store offset=0x166 align=1 (i32.const 0) (get_local 0x166)) + (i64.store offset=0x167 align=1 (i32.const 0) (get_local 0x167)) + (i64.store offset=0x168 align=1 (i32.const 0) (get_local 0x168)) + (i64.store offset=0x169 align=1 (i32.const 0) (get_local 0x169)) + (i64.store offset=0x16a align=1 (i32.const 0) (get_local 0x16a)) + (i64.store offset=0x16b align=1 (i32.const 0) (get_local 0x16b)) + (i64.store offset=0x16c align=1 (i32.const 0) (get_local 0x16c)) + (i64.store offset=0x16d align=1 (i32.const 0) (get_local 0x16d)) + (i64.store offset=0x16e align=1 (i32.const 0) (get_local 0x16e)) + (i64.store offset=0x16f align=1 (i32.const 0) (get_local 0x16f)) + (i64.store offset=0x170 align=1 (i32.const 0) (get_local 0x170)) + (i64.store offset=0x171 align=1 (i32.const 0) (get_local 0x171)) + (i64.store offset=0x172 align=1 (i32.const 0) (get_local 0x172)) + (i64.store offset=0x173 align=1 (i32.const 0) (get_local 0x173)) + (i64.store offset=0x174 align=1 (i32.const 0) (get_local 0x174)) + (i64.store offset=0x175 align=1 (i32.const 0) (get_local 0x175)) + (i64.store offset=0x176 align=1 (i32.const 0) (get_local 0x176)) + (i64.store offset=0x177 align=1 (i32.const 0) (get_local 0x177)) + (i64.store offset=0x178 align=1 (i32.const 0) (get_local 0x178)) + (i64.store offset=0x179 align=1 (i32.const 0) (get_local 0x179)) + (i64.store offset=0x17a align=1 (i32.const 0) (get_local 0x17a)) + (i64.store offset=0x17b align=1 (i32.const 0) (get_local 0x17b)) + (i64.store offset=0x17c align=1 (i32.const 0) (get_local 0x17c)) + (i64.store offset=0x17d align=1 (i32.const 0) (get_local 0x17d)) + (i64.store offset=0x17e align=1 (i32.const 0) (get_local 0x17e)) + (i64.store offset=0x17f align=1 (i32.const 0) (get_local 0x17f)) + (i64.store offset=0x180 align=1 (i32.const 0) (get_local 0x180)) + (i64.store offset=0x181 align=1 (i32.const 0) (get_local 0x181)) + (i64.store offset=0x182 align=1 (i32.const 0) (get_local 0x182)) + (i64.store offset=0x183 align=1 (i32.const 0) (get_local 0x183)) + (i64.store offset=0x184 align=1 (i32.const 0) (get_local 0x184)) + (i64.store offset=0x185 align=1 (i32.const 0) (get_local 0x185)) + (i64.store offset=0x186 align=1 (i32.const 0) (get_local 0x186)) + (i64.store offset=0x187 align=1 (i32.const 0) (get_local 0x187)) + (i64.store offset=0x188 align=1 (i32.const 0) (get_local 0x188)) + (i64.store offset=0x189 align=1 (i32.const 0) (get_local 0x189)) + (i64.store offset=0x18a align=1 (i32.const 0) (get_local 0x18a)) + (i64.store offset=0x18b align=1 (i32.const 0) (get_local 0x18b)) + (i64.store offset=0x18c align=1 (i32.const 0) (get_local 0x18c)) + (i64.store offset=0x18d align=1 (i32.const 0) (get_local 0x18d)) + (i64.store offset=0x18e align=1 (i32.const 0) (get_local 0x18e)) + (i64.store offset=0x18f align=1 (i32.const 0) (get_local 0x18f)) + (i64.store offset=0x190 align=1 (i32.const 0) (get_local 0x190)) + (i64.store offset=0x191 align=1 (i32.const 0) (get_local 0x191)) + (i64.store offset=0x192 align=1 (i32.const 0) (get_local 0x192)) + (i64.store offset=0x193 align=1 (i32.const 0) (get_local 0x193)) + (i64.store offset=0x194 align=1 (i32.const 0) (get_local 0x194)) + (i64.store offset=0x195 align=1 (i32.const 0) (get_local 0x195)) + (i64.store offset=0x196 align=1 (i32.const 0) (get_local 0x196)) + (i64.store offset=0x197 align=1 (i32.const 0) (get_local 0x197)) + (i64.store offset=0x198 align=1 (i32.const 0) (get_local 0x198)) + (i64.store offset=0x199 align=1 (i32.const 0) (get_local 0x199)) + (i64.store offset=0x19a align=1 (i32.const 0) (get_local 0x19a)) + (i64.store offset=0x19b align=1 (i32.const 0) (get_local 0x19b)) + (i64.store offset=0x19c align=1 (i32.const 0) (get_local 0x19c)) + (i64.store offset=0x19d align=1 (i32.const 0) (get_local 0x19d)) + (i64.store offset=0x19e align=1 (i32.const 0) (get_local 0x19e)) + (i64.store offset=0x19f align=1 (i32.const 0) (get_local 0x19f)) + (i64.store offset=0x1a0 align=1 (i32.const 0) (get_local 0x1a0)) + (i64.store offset=0x1a1 align=1 (i32.const 0) (get_local 0x1a1)) + (i64.store offset=0x1a2 align=1 (i32.const 0) (get_local 0x1a2)) + (i64.store offset=0x1a3 align=1 (i32.const 0) (get_local 0x1a3)) + (i64.store offset=0x1a4 align=1 (i32.const 0) (get_local 0x1a4)) + (i64.store offset=0x1a5 align=1 (i32.const 0) (get_local 0x1a5)) + (i64.store offset=0x1a6 align=1 (i32.const 0) (get_local 0x1a6)) + (i64.store offset=0x1a7 align=1 (i32.const 0) (get_local 0x1a7)) + (i64.store offset=0x1a8 align=1 (i32.const 0) (get_local 0x1a8)) + (i64.store offset=0x1a9 align=1 (i32.const 0) (get_local 0x1a9)) + (i64.store offset=0x1aa align=1 (i32.const 0) (get_local 0x1aa)) + (i64.store offset=0x1ab align=1 (i32.const 0) (get_local 0x1ab)) + (i64.store offset=0x1ac align=1 (i32.const 0) (get_local 0x1ac)) + (i64.store offset=0x1ad align=1 (i32.const 0) (get_local 0x1ad)) + (i64.store offset=0x1ae align=1 (i32.const 0) (get_local 0x1ae)) + (i64.store offset=0x1af align=1 (i32.const 0) (get_local 0x1af)) + (i64.store offset=0x1b0 align=1 (i32.const 0) (get_local 0x1b0)) + (i64.store offset=0x1b1 align=1 (i32.const 0) (get_local 0x1b1)) + (i64.store offset=0x1b2 align=1 (i32.const 0) (get_local 0x1b2)) + (i64.store offset=0x1b3 align=1 (i32.const 0) (get_local 0x1b3)) + (i64.store offset=0x1b4 align=1 (i32.const 0) (get_local 0x1b4)) + (i64.store offset=0x1b5 align=1 (i32.const 0) (get_local 0x1b5)) + (i64.store offset=0x1b6 align=1 (i32.const 0) (get_local 0x1b6)) + (i64.store offset=0x1b7 align=1 (i32.const 0) (get_local 0x1b7)) + (i64.store offset=0x1b8 align=1 (i32.const 0) (get_local 0x1b8)) + (i64.store offset=0x1b9 align=1 (i32.const 0) (get_local 0x1b9)) + (i64.store offset=0x1ba align=1 (i32.const 0) (get_local 0x1ba)) + (i64.store offset=0x1bb align=1 (i32.const 0) (get_local 0x1bb)) + (i64.store offset=0x1bc align=1 (i32.const 0) (get_local 0x1bc)) + (i64.store offset=0x1bd align=1 (i32.const 0) (get_local 0x1bd)) + (i64.store offset=0x1be align=1 (i32.const 0) (get_local 0x1be)) + (i64.store offset=0x1bf align=1 (i32.const 0) (get_local 0x1bf)) + (i64.store offset=0x1c0 align=1 (i32.const 0) (get_local 0x1c0)) + (i64.store offset=0x1c1 align=1 (i32.const 0) (get_local 0x1c1)) + (i64.store offset=0x1c2 align=1 (i32.const 0) (get_local 0x1c2)) + (i64.store offset=0x1c3 align=1 (i32.const 0) (get_local 0x1c3)) + (i64.store offset=0x1c4 align=1 (i32.const 0) (get_local 0x1c4)) + (i64.store offset=0x1c5 align=1 (i32.const 0) (get_local 0x1c5)) + (i64.store offset=0x1c6 align=1 (i32.const 0) (get_local 0x1c6)) + (i64.store offset=0x1c7 align=1 (i32.const 0) (get_local 0x1c7)) + (i64.store offset=0x1c8 align=1 (i32.const 0) (get_local 0x1c8)) + (i64.store offset=0x1c9 align=1 (i32.const 0) (get_local 0x1c9)) + (i64.store offset=0x1ca align=1 (i32.const 0) (get_local 0x1ca)) + (i64.store offset=0x1cb align=1 (i32.const 0) (get_local 0x1cb)) + (i64.store offset=0x1cc align=1 (i32.const 0) (get_local 0x1cc)) + (i64.store offset=0x1cd align=1 (i32.const 0) (get_local 0x1cd)) + (i64.store offset=0x1ce align=1 (i32.const 0) (get_local 0x1ce)) + (i64.store offset=0x1cf align=1 (i32.const 0) (get_local 0x1cf)) + (i64.store offset=0x1d0 align=1 (i32.const 0) (get_local 0x1d0)) + (i64.store offset=0x1d1 align=1 (i32.const 0) (get_local 0x1d1)) + (i64.store offset=0x1d2 align=1 (i32.const 0) (get_local 0x1d2)) + (i64.store offset=0x1d3 align=1 (i32.const 0) (get_local 0x1d3)) + (i64.store offset=0x1d4 align=1 (i32.const 0) (get_local 0x1d4)) + (i64.store offset=0x1d5 align=1 (i32.const 0) (get_local 0x1d5)) + (i64.store offset=0x1d6 align=1 (i32.const 0) (get_local 0x1d6)) + (i64.store offset=0x1d7 align=1 (i32.const 0) (get_local 0x1d7)) + (i64.store offset=0x1d8 align=1 (i32.const 0) (get_local 0x1d8)) + (i64.store offset=0x1d9 align=1 (i32.const 0) (get_local 0x1d9)) + (i64.store offset=0x1da align=1 (i32.const 0) (get_local 0x1da)) + (i64.store offset=0x1db align=1 (i32.const 0) (get_local 0x1db)) + (i64.store offset=0x1dc align=1 (i32.const 0) (get_local 0x1dc)) + (i64.store offset=0x1dd align=1 (i32.const 0) (get_local 0x1dd)) + (i64.store offset=0x1de align=1 (i32.const 0) (get_local 0x1de)) + (i64.store offset=0x1df align=1 (i32.const 0) (get_local 0x1df)) + (i64.store offset=0x1e0 align=1 (i32.const 0) (get_local 0x1e0)) + (i64.store offset=0x1e1 align=1 (i32.const 0) (get_local 0x1e1)) + (i64.store offset=0x1e2 align=1 (i32.const 0) (get_local 0x1e2)) + (i64.store offset=0x1e3 align=1 (i32.const 0) (get_local 0x1e3)) + (i64.store offset=0x1e4 align=1 (i32.const 0) (get_local 0x1e4)) + (i64.store offset=0x1e5 align=1 (i32.const 0) (get_local 0x1e5)) + (i64.store offset=0x1e6 align=1 (i32.const 0) (get_local 0x1e6)) + (i64.store offset=0x1e7 align=1 (i32.const 0) (get_local 0x1e7)) + (i64.store offset=0x1e8 align=1 (i32.const 0) (get_local 0x1e8)) + (i64.store offset=0x1e9 align=1 (i32.const 0) (get_local 0x1e9)) + (i64.store offset=0x1ea align=1 (i32.const 0) (get_local 0x1ea)) + (i64.store offset=0x1eb align=1 (i32.const 0) (get_local 0x1eb)) + (i64.store offset=0x1ec align=1 (i32.const 0) (get_local 0x1ec)) + (i64.store offset=0x1ed align=1 (i32.const 0) (get_local 0x1ed)) + (i64.store offset=0x1ee align=1 (i32.const 0) (get_local 0x1ee)) + (i64.store offset=0x1ef align=1 (i32.const 0) (get_local 0x1ef)) + (i64.store offset=0x1f0 align=1 (i32.const 0) (get_local 0x1f0)) + (i64.store offset=0x1f1 align=1 (i32.const 0) (get_local 0x1f1)) + (i64.store offset=0x1f2 align=1 (i32.const 0) (get_local 0x1f2)) + (i64.store offset=0x1f3 align=1 (i32.const 0) (get_local 0x1f3)) + (i64.store offset=0x1f4 align=1 (i32.const 0) (get_local 0x1f4)) + (i64.store offset=0x1f5 align=1 (i32.const 0) (get_local 0x1f5)) + (i64.store offset=0x1f6 align=1 (i32.const 0) (get_local 0x1f6)) + (i64.store offset=0x1f7 align=1 (i32.const 0) (get_local 0x1f7)) + (i64.store offset=0x1f8 align=1 (i32.const 0) (get_local 0x1f8)) + (i64.store offset=0x1f9 align=1 (i32.const 0) (get_local 0x1f9)) + (i64.store offset=0x1fa align=1 (i32.const 0) (get_local 0x1fa)) + (i64.store offset=0x1fb align=1 (i32.const 0) (get_local 0x1fb)) + (i64.store offset=0x1fc align=1 (i32.const 0) (get_local 0x1fc)) + (i64.store offset=0x1fd align=1 (i32.const 0) (get_local 0x1fd)) + (i64.store offset=0x1fe align=1 (i32.const 0) (get_local 0x1fe)) + (i64.store offset=0x1ff align=1 (i32.const 0) (get_local 0x1ff)) + (i64.store offset=0x200 align=1 (i32.const 0) (get_local 0x200)) + (i64.store offset=0x201 align=1 (i32.const 0) (get_local 0x201)) + (i64.store offset=0x202 align=1 (i32.const 0) (get_local 0x202)) + (i64.store offset=0x203 align=1 (i32.const 0) (get_local 0x203)) + (i64.store offset=0x204 align=1 (i32.const 0) (get_local 0x204)) + (i64.store offset=0x205 align=1 (i32.const 0) (get_local 0x205)) + (i64.store offset=0x206 align=1 (i32.const 0) (get_local 0x206)) + (i64.store offset=0x207 align=1 (i32.const 0) (get_local 0x207)) + (i64.store offset=0x208 align=1 (i32.const 0) (get_local 0x208)) + (i64.store offset=0x209 align=1 (i32.const 0) (get_local 0x209)) + (i64.store offset=0x20a align=1 (i32.const 0) (get_local 0x20a)) + (i64.store offset=0x20b align=1 (i32.const 0) (get_local 0x20b)) + (i64.store offset=0x20c align=1 (i32.const 0) (get_local 0x20c)) + (i64.store offset=0x20d align=1 (i32.const 0) (get_local 0x20d)) + (i64.store offset=0x20e align=1 (i32.const 0) (get_local 0x20e)) + (i64.store offset=0x20f align=1 (i32.const 0) (get_local 0x20f)) + (i64.store offset=0x210 align=1 (i32.const 0) (get_local 0x210)) + (i64.store offset=0x211 align=1 (i32.const 0) (get_local 0x211)) + (i64.store offset=0x212 align=1 (i32.const 0) (get_local 0x212)) + (i64.store offset=0x213 align=1 (i32.const 0) (get_local 0x213)) + (i64.store offset=0x214 align=1 (i32.const 0) (get_local 0x214)) + (i64.store offset=0x215 align=1 (i32.const 0) (get_local 0x215)) + (i64.store offset=0x216 align=1 (i32.const 0) (get_local 0x216)) + (i64.store offset=0x217 align=1 (i32.const 0) (get_local 0x217)) + (i64.store offset=0x218 align=1 (i32.const 0) (get_local 0x218)) + (i64.store offset=0x219 align=1 (i32.const 0) (get_local 0x219)) + (i64.store offset=0x21a align=1 (i32.const 0) (get_local 0x21a)) + (i64.store offset=0x21b align=1 (i32.const 0) (get_local 0x21b)) + (i64.store offset=0x21c align=1 (i32.const 0) (get_local 0x21c)) + (i64.store offset=0x21d align=1 (i32.const 0) (get_local 0x21d)) + (i64.store offset=0x21e align=1 (i32.const 0) (get_local 0x21e)) + (i64.store offset=0x21f align=1 (i32.const 0) (get_local 0x21f)) + (i64.store offset=0x220 align=1 (i32.const 0) (get_local 0x220)) + (i64.store offset=0x221 align=1 (i32.const 0) (get_local 0x221)) + (i64.store offset=0x222 align=1 (i32.const 0) (get_local 0x222)) + (i64.store offset=0x223 align=1 (i32.const 0) (get_local 0x223)) + (i64.store offset=0x224 align=1 (i32.const 0) (get_local 0x224)) + (i64.store offset=0x225 align=1 (i32.const 0) (get_local 0x225)) + (i64.store offset=0x226 align=1 (i32.const 0) (get_local 0x226)) + (i64.store offset=0x227 align=1 (i32.const 0) (get_local 0x227)) + (i64.store offset=0x228 align=1 (i32.const 0) (get_local 0x228)) + (i64.store offset=0x229 align=1 (i32.const 0) (get_local 0x229)) + (i64.store offset=0x22a align=1 (i32.const 0) (get_local 0x22a)) + (i64.store offset=0x22b align=1 (i32.const 0) (get_local 0x22b)) + (i64.store offset=0x22c align=1 (i32.const 0) (get_local 0x22c)) + (i64.store offset=0x22d align=1 (i32.const 0) (get_local 0x22d)) + (i64.store offset=0x22e align=1 (i32.const 0) (get_local 0x22e)) + (i64.store offset=0x22f align=1 (i32.const 0) (get_local 0x22f)) + (i64.store offset=0x230 align=1 (i32.const 0) (get_local 0x230)) + (i64.store offset=0x231 align=1 (i32.const 0) (get_local 0x231)) + (i64.store offset=0x232 align=1 (i32.const 0) (get_local 0x232)) + (i64.store offset=0x233 align=1 (i32.const 0) (get_local 0x233)) + (i64.store offset=0x234 align=1 (i32.const 0) (get_local 0x234)) + (i64.store offset=0x235 align=1 (i32.const 0) (get_local 0x235)) + (i64.store offset=0x236 align=1 (i32.const 0) (get_local 0x236)) + (i64.store offset=0x237 align=1 (i32.const 0) (get_local 0x237)) + (i64.store offset=0x238 align=1 (i32.const 0) (get_local 0x238)) + (i64.store offset=0x239 align=1 (i32.const 0) (get_local 0x239)) + (i64.store offset=0x23a align=1 (i32.const 0) (get_local 0x23a)) + (i64.store offset=0x23b align=1 (i32.const 0) (get_local 0x23b)) + (i64.store offset=0x23c align=1 (i32.const 0) (get_local 0x23c)) + (i64.store offset=0x23d align=1 (i32.const 0) (get_local 0x23d)) + (i64.store offset=0x23e align=1 (i32.const 0) (get_local 0x23e)) + (i64.store offset=0x23f align=1 (i32.const 0) (get_local 0x23f)) + (i64.store offset=0x240 align=1 (i32.const 0) (get_local 0x240)) + (i64.store offset=0x241 align=1 (i32.const 0) (get_local 0x241)) + (i64.store offset=0x242 align=1 (i32.const 0) (get_local 0x242)) + (i64.store offset=0x243 align=1 (i32.const 0) (get_local 0x243)) + (i64.store offset=0x244 align=1 (i32.const 0) (get_local 0x244)) + (i64.store offset=0x245 align=1 (i32.const 0) (get_local 0x245)) + (i64.store offset=0x246 align=1 (i32.const 0) (get_local 0x246)) + (i64.store offset=0x247 align=1 (i32.const 0) (get_local 0x247)) + (i64.store offset=0x248 align=1 (i32.const 0) (get_local 0x248)) + (i64.store offset=0x249 align=1 (i32.const 0) (get_local 0x249)) + (i64.store offset=0x24a align=1 (i32.const 0) (get_local 0x24a)) + (i64.store offset=0x24b align=1 (i32.const 0) (get_local 0x24b)) + (i64.store offset=0x24c align=1 (i32.const 0) (get_local 0x24c)) + (i64.store offset=0x24d align=1 (i32.const 0) (get_local 0x24d)) + (i64.store offset=0x24e align=1 (i32.const 0) (get_local 0x24e)) + (i64.store offset=0x24f align=1 (i32.const 0) (get_local 0x24f)) + (i64.store offset=0x250 align=1 (i32.const 0) (get_local 0x250)) + (i64.store offset=0x251 align=1 (i32.const 0) (get_local 0x251)) + (i64.store offset=0x252 align=1 (i32.const 0) (get_local 0x252)) + (i64.store offset=0x253 align=1 (i32.const 0) (get_local 0x253)) + (i64.store offset=0x254 align=1 (i32.const 0) (get_local 0x254)) + (i64.store offset=0x255 align=1 (i32.const 0) (get_local 0x255)) + (i64.store offset=0x256 align=1 (i32.const 0) (get_local 0x256)) + (i64.store offset=0x257 align=1 (i32.const 0) (get_local 0x257)) + (i64.store offset=0x258 align=1 (i32.const 0) (get_local 0x258)) + (i64.store offset=0x259 align=1 (i32.const 0) (get_local 0x259)) + (i64.store offset=0x25a align=1 (i32.const 0) (get_local 0x25a)) + (i64.store offset=0x25b align=1 (i32.const 0) (get_local 0x25b)) + (i64.store offset=0x25c align=1 (i32.const 0) (get_local 0x25c)) + (i64.store offset=0x25d align=1 (i32.const 0) (get_local 0x25d)) + (i64.store offset=0x25e align=1 (i32.const 0) (get_local 0x25e)) + (i64.store offset=0x25f align=1 (i32.const 0) (get_local 0x25f)) + (i64.store offset=0x260 align=1 (i32.const 0) (get_local 0x260)) + (i64.store offset=0x261 align=1 (i32.const 0) (get_local 0x261)) + (i64.store offset=0x262 align=1 (i32.const 0) (get_local 0x262)) + (i64.store offset=0x263 align=1 (i32.const 0) (get_local 0x263)) + (i64.store offset=0x264 align=1 (i32.const 0) (get_local 0x264)) + (i64.store offset=0x265 align=1 (i32.const 0) (get_local 0x265)) + (i64.store offset=0x266 align=1 (i32.const 0) (get_local 0x266)) + (i64.store offset=0x267 align=1 (i32.const 0) (get_local 0x267)) + (i64.store offset=0x268 align=1 (i32.const 0) (get_local 0x268)) + (i64.store offset=0x269 align=1 (i32.const 0) (get_local 0x269)) + (i64.store offset=0x26a align=1 (i32.const 0) (get_local 0x26a)) + (i64.store offset=0x26b align=1 (i32.const 0) (get_local 0x26b)) + (i64.store offset=0x26c align=1 (i32.const 0) (get_local 0x26c)) + (i64.store offset=0x26d align=1 (i32.const 0) (get_local 0x26d)) + (i64.store offset=0x26e align=1 (i32.const 0) (get_local 0x26e)) + (i64.store offset=0x26f align=1 (i32.const 0) (get_local 0x26f)) + (i64.store offset=0x270 align=1 (i32.const 0) (get_local 0x270)) + (i64.store offset=0x271 align=1 (i32.const 0) (get_local 0x271)) + (i64.store offset=0x272 align=1 (i32.const 0) (get_local 0x272)) + (i64.store offset=0x273 align=1 (i32.const 0) (get_local 0x273)) + (i64.store offset=0x274 align=1 (i32.const 0) (get_local 0x274)) + (i64.store offset=0x275 align=1 (i32.const 0) (get_local 0x275)) + (i64.store offset=0x276 align=1 (i32.const 0) (get_local 0x276)) + (i64.store offset=0x277 align=1 (i32.const 0) (get_local 0x277)) + (i64.store offset=0x278 align=1 (i32.const 0) (get_local 0x278)) + (i64.store offset=0x279 align=1 (i32.const 0) (get_local 0x279)) + (i64.store offset=0x27a align=1 (i32.const 0) (get_local 0x27a)) + (i64.store offset=0x27b align=1 (i32.const 0) (get_local 0x27b)) + (i64.store offset=0x27c align=1 (i32.const 0) (get_local 0x27c)) + (i64.store offset=0x27d align=1 (i32.const 0) (get_local 0x27d)) + (i64.store offset=0x27e align=1 (i32.const 0) (get_local 0x27e)) + (i64.store offset=0x27f align=1 (i32.const 0) (get_local 0x27f)) + (i64.store offset=0x280 align=1 (i32.const 0) (get_local 0x280)) + (i64.store offset=0x281 align=1 (i32.const 0) (get_local 0x281)) + (i64.store offset=0x282 align=1 (i32.const 0) (get_local 0x282)) + (i64.store offset=0x283 align=1 (i32.const 0) (get_local 0x283)) + (i64.store offset=0x284 align=1 (i32.const 0) (get_local 0x284)) + (i64.store offset=0x285 align=1 (i32.const 0) (get_local 0x285)) + (i64.store offset=0x286 align=1 (i32.const 0) (get_local 0x286)) + (i64.store offset=0x287 align=1 (i32.const 0) (get_local 0x287)) + (i64.store offset=0x288 align=1 (i32.const 0) (get_local 0x288)) + (i64.store offset=0x289 align=1 (i32.const 0) (get_local 0x289)) + (i64.store offset=0x28a align=1 (i32.const 0) (get_local 0x28a)) + (i64.store offset=0x28b align=1 (i32.const 0) (get_local 0x28b)) + (i64.store offset=0x28c align=1 (i32.const 0) (get_local 0x28c)) + (i64.store offset=0x28d align=1 (i32.const 0) (get_local 0x28d)) + (i64.store offset=0x28e align=1 (i32.const 0) (get_local 0x28e)) + (i64.store offset=0x28f align=1 (i32.const 0) (get_local 0x28f)) + (i64.store offset=0x290 align=1 (i32.const 0) (get_local 0x290)) + (i64.store offset=0x291 align=1 (i32.const 0) (get_local 0x291)) + (i64.store offset=0x292 align=1 (i32.const 0) (get_local 0x292)) + (i64.store offset=0x293 align=1 (i32.const 0) (get_local 0x293)) + (i64.store offset=0x294 align=1 (i32.const 0) (get_local 0x294)) + (i64.store offset=0x295 align=1 (i32.const 0) (get_local 0x295)) + (i64.store offset=0x296 align=1 (i32.const 0) (get_local 0x296)) + (i64.store offset=0x297 align=1 (i32.const 0) (get_local 0x297)) + (i64.store offset=0x298 align=1 (i32.const 0) (get_local 0x298)) + (i64.store offset=0x299 align=1 (i32.const 0) (get_local 0x299)) + (i64.store offset=0x29a align=1 (i32.const 0) (get_local 0x29a)) + (i64.store offset=0x29b align=1 (i32.const 0) (get_local 0x29b)) + (i64.store offset=0x29c align=1 (i32.const 0) (get_local 0x29c)) + (i64.store offset=0x29d align=1 (i32.const 0) (get_local 0x29d)) + (i64.store offset=0x29e align=1 (i32.const 0) (get_local 0x29e)) + (i64.store offset=0x29f align=1 (i32.const 0) (get_local 0x29f)) + (i64.store offset=0x2a0 align=1 (i32.const 0) (get_local 0x2a0)) + (i64.store offset=0x2a1 align=1 (i32.const 0) (get_local 0x2a1)) + (i64.store offset=0x2a2 align=1 (i32.const 0) (get_local 0x2a2)) + (i64.store offset=0x2a3 align=1 (i32.const 0) (get_local 0x2a3)) + (i64.store offset=0x2a4 align=1 (i32.const 0) (get_local 0x2a4)) + (i64.store offset=0x2a5 align=1 (i32.const 0) (get_local 0x2a5)) + (i64.store offset=0x2a6 align=1 (i32.const 0) (get_local 0x2a6)) + (i64.store offset=0x2a7 align=1 (i32.const 0) (get_local 0x2a7)) + (i64.store offset=0x2a8 align=1 (i32.const 0) (get_local 0x2a8)) + (i64.store offset=0x2a9 align=1 (i32.const 0) (get_local 0x2a9)) + (i64.store offset=0x2aa align=1 (i32.const 0) (get_local 0x2aa)) + (i64.store offset=0x2ab align=1 (i32.const 0) (get_local 0x2ab)) + (i64.store offset=0x2ac align=1 (i32.const 0) (get_local 0x2ac)) + (i64.store offset=0x2ad align=1 (i32.const 0) (get_local 0x2ad)) + (i64.store offset=0x2ae align=1 (i32.const 0) (get_local 0x2ae)) + (i64.store offset=0x2af align=1 (i32.const 0) (get_local 0x2af)) + (i64.store offset=0x2b0 align=1 (i32.const 0) (get_local 0x2b0)) + (i64.store offset=0x2b1 align=1 (i32.const 0) (get_local 0x2b1)) + (i64.store offset=0x2b2 align=1 (i32.const 0) (get_local 0x2b2)) + (i64.store offset=0x2b3 align=1 (i32.const 0) (get_local 0x2b3)) + (i64.store offset=0x2b4 align=1 (i32.const 0) (get_local 0x2b4)) + (i64.store offset=0x2b5 align=1 (i32.const 0) (get_local 0x2b5)) + (i64.store offset=0x2b6 align=1 (i32.const 0) (get_local 0x2b6)) + (i64.store offset=0x2b7 align=1 (i32.const 0) (get_local 0x2b7)) + (i64.store offset=0x2b8 align=1 (i32.const 0) (get_local 0x2b8)) + (i64.store offset=0x2b9 align=1 (i32.const 0) (get_local 0x2b9)) + (i64.store offset=0x2ba align=1 (i32.const 0) (get_local 0x2ba)) + (i64.store offset=0x2bb align=1 (i32.const 0) (get_local 0x2bb)) + (i64.store offset=0x2bc align=1 (i32.const 0) (get_local 0x2bc)) + (i64.store offset=0x2bd align=1 (i32.const 0) (get_local 0x2bd)) + (i64.store offset=0x2be align=1 (i32.const 0) (get_local 0x2be)) + (i64.store offset=0x2bf align=1 (i32.const 0) (get_local 0x2bf)) + (i64.store offset=0x2c0 align=1 (i32.const 0) (get_local 0x2c0)) + (i64.store offset=0x2c1 align=1 (i32.const 0) (get_local 0x2c1)) + (i64.store offset=0x2c2 align=1 (i32.const 0) (get_local 0x2c2)) + (i64.store offset=0x2c3 align=1 (i32.const 0) (get_local 0x2c3)) + (i64.store offset=0x2c4 align=1 (i32.const 0) (get_local 0x2c4)) + (i64.store offset=0x2c5 align=1 (i32.const 0) (get_local 0x2c5)) + (i64.store offset=0x2c6 align=1 (i32.const 0) (get_local 0x2c6)) + (i64.store offset=0x2c7 align=1 (i32.const 0) (get_local 0x2c7)) + (i64.store offset=0x2c8 align=1 (i32.const 0) (get_local 0x2c8)) + (i64.store offset=0x2c9 align=1 (i32.const 0) (get_local 0x2c9)) + (i64.store offset=0x2ca align=1 (i32.const 0) (get_local 0x2ca)) + (i64.store offset=0x2cb align=1 (i32.const 0) (get_local 0x2cb)) + (i64.store offset=0x2cc align=1 (i32.const 0) (get_local 0x2cc)) + (i64.store offset=0x2cd align=1 (i32.const 0) (get_local 0x2cd)) + (i64.store offset=0x2ce align=1 (i32.const 0) (get_local 0x2ce)) + (i64.store offset=0x2cf align=1 (i32.const 0) (get_local 0x2cf)) + (i64.store offset=0x2d0 align=1 (i32.const 0) (get_local 0x2d0)) + (i64.store offset=0x2d1 align=1 (i32.const 0) (get_local 0x2d1)) + (i64.store offset=0x2d2 align=1 (i32.const 0) (get_local 0x2d2)) + (i64.store offset=0x2d3 align=1 (i32.const 0) (get_local 0x2d3)) + (i64.store offset=0x2d4 align=1 (i32.const 0) (get_local 0x2d4)) + (i64.store offset=0x2d5 align=1 (i32.const 0) (get_local 0x2d5)) + (i64.store offset=0x2d6 align=1 (i32.const 0) (get_local 0x2d6)) + (i64.store offset=0x2d7 align=1 (i32.const 0) (get_local 0x2d7)) + (i64.store offset=0x2d8 align=1 (i32.const 0) (get_local 0x2d8)) + (i64.store offset=0x2d9 align=1 (i32.const 0) (get_local 0x2d9)) + (i64.store offset=0x2da align=1 (i32.const 0) (get_local 0x2da)) + (i64.store offset=0x2db align=1 (i32.const 0) (get_local 0x2db)) + (i64.store offset=0x2dc align=1 (i32.const 0) (get_local 0x2dc)) + (i64.store offset=0x2dd align=1 (i32.const 0) (get_local 0x2dd)) + (i64.store offset=0x2de align=1 (i32.const 0) (get_local 0x2de)) + (i64.store offset=0x2df align=1 (i32.const 0) (get_local 0x2df)) + (i64.store offset=0x2e0 align=1 (i32.const 0) (get_local 0x2e0)) + (i64.store offset=0x2e1 align=1 (i32.const 0) (get_local 0x2e1)) + (i64.store offset=0x2e2 align=1 (i32.const 0) (get_local 0x2e2)) + (i64.store offset=0x2e3 align=1 (i32.const 0) (get_local 0x2e3)) + (i64.store offset=0x2e4 align=1 (i32.const 0) (get_local 0x2e4)) + (i64.store offset=0x2e5 align=1 (i32.const 0) (get_local 0x2e5)) + (i64.store offset=0x2e6 align=1 (i32.const 0) (get_local 0x2e6)) + (i64.store offset=0x2e7 align=1 (i32.const 0) (get_local 0x2e7)) + (i64.store offset=0x2e8 align=1 (i32.const 0) (get_local 0x2e8)) + (i64.store offset=0x2e9 align=1 (i32.const 0) (get_local 0x2e9)) + (i64.store offset=0x2ea align=1 (i32.const 0) (get_local 0x2ea)) + (i64.store offset=0x2eb align=1 (i32.const 0) (get_local 0x2eb)) + (i64.store offset=0x2ec align=1 (i32.const 0) (get_local 0x2ec)) + (i64.store offset=0x2ed align=1 (i32.const 0) (get_local 0x2ed)) + (i64.store offset=0x2ee align=1 (i32.const 0) (get_local 0x2ee)) + (i64.store offset=0x2ef align=1 (i32.const 0) (get_local 0x2ef)) + (i64.store offset=0x2f0 align=1 (i32.const 0) (get_local 0x2f0)) + (i64.store offset=0x2f1 align=1 (i32.const 0) (get_local 0x2f1)) + (i64.store offset=0x2f2 align=1 (i32.const 0) (get_local 0x2f2)) + (i64.store offset=0x2f3 align=1 (i32.const 0) (get_local 0x2f3)) + (i64.store offset=0x2f4 align=1 (i32.const 0) (get_local 0x2f4)) + (i64.store offset=0x2f5 align=1 (i32.const 0) (get_local 0x2f5)) + (i64.store offset=0x2f6 align=1 (i32.const 0) (get_local 0x2f6)) + (i64.store offset=0x2f7 align=1 (i32.const 0) (get_local 0x2f7)) + (i64.store offset=0x2f8 align=1 (i32.const 0) (get_local 0x2f8)) + (i64.store offset=0x2f9 align=1 (i32.const 0) (get_local 0x2f9)) + (i64.store offset=0x2fa align=1 (i32.const 0) (get_local 0x2fa)) + (i64.store offset=0x2fb align=1 (i32.const 0) (get_local 0x2fb)) + (i64.store offset=0x2fc align=1 (i32.const 0) (get_local 0x2fc)) + (i64.store offset=0x2fd align=1 (i32.const 0) (get_local 0x2fd)) + (i64.store offset=0x2fe align=1 (i32.const 0) (get_local 0x2fe)) + (i64.store offset=0x2ff align=1 (i32.const 0) (get_local 0x2ff)) + (i64.store offset=0x300 align=1 (i32.const 0) (get_local 0x300)) + (i64.store offset=0x301 align=1 (i32.const 0) (get_local 0x301)) + (i64.store offset=0x302 align=1 (i32.const 0) (get_local 0x302)) + (i64.store offset=0x303 align=1 (i32.const 0) (get_local 0x303)) + (i64.store offset=0x304 align=1 (i32.const 0) (get_local 0x304)) + (i64.store offset=0x305 align=1 (i32.const 0) (get_local 0x305)) + (i64.store offset=0x306 align=1 (i32.const 0) (get_local 0x306)) + (i64.store offset=0x307 align=1 (i32.const 0) (get_local 0x307)) + (i64.store offset=0x308 align=1 (i32.const 0) (get_local 0x308)) + (i64.store offset=0x309 align=1 (i32.const 0) (get_local 0x309)) + (i64.store offset=0x30a align=1 (i32.const 0) (get_local 0x30a)) + (i64.store offset=0x30b align=1 (i32.const 0) (get_local 0x30b)) + (i64.store offset=0x30c align=1 (i32.const 0) (get_local 0x30c)) + (i64.store offset=0x30d align=1 (i32.const 0) (get_local 0x30d)) + (i64.store offset=0x30e align=1 (i32.const 0) (get_local 0x30e)) + (i64.store offset=0x30f align=1 (i32.const 0) (get_local 0x30f)) + (i64.store offset=0x310 align=1 (i32.const 0) (get_local 0x310)) + (i64.store offset=0x311 align=1 (i32.const 0) (get_local 0x311)) + (i64.store offset=0x312 align=1 (i32.const 0) (get_local 0x312)) + (i64.store offset=0x313 align=1 (i32.const 0) (get_local 0x313)) + (i64.store offset=0x314 align=1 (i32.const 0) (get_local 0x314)) + (i64.store offset=0x315 align=1 (i32.const 0) (get_local 0x315)) + (i64.store offset=0x316 align=1 (i32.const 0) (get_local 0x316)) + (i64.store offset=0x317 align=1 (i32.const 0) (get_local 0x317)) + (i64.store offset=0x318 align=1 (i32.const 0) (get_local 0x318)) + (i64.store offset=0x319 align=1 (i32.const 0) (get_local 0x319)) + (i64.store offset=0x31a align=1 (i32.const 0) (get_local 0x31a)) + (i64.store offset=0x31b align=1 (i32.const 0) (get_local 0x31b)) + (i64.store offset=0x31c align=1 (i32.const 0) (get_local 0x31c)) + (i64.store offset=0x31d align=1 (i32.const 0) (get_local 0x31d)) + (i64.store offset=0x31e align=1 (i32.const 0) (get_local 0x31e)) + (i64.store offset=0x31f align=1 (i32.const 0) (get_local 0x31f)) + (i64.store offset=0x320 align=1 (i32.const 0) (get_local 0x320)) + (i64.store offset=0x321 align=1 (i32.const 0) (get_local 0x321)) + (i64.store offset=0x322 align=1 (i32.const 0) (get_local 0x322)) + (i64.store offset=0x323 align=1 (i32.const 0) (get_local 0x323)) + (i64.store offset=0x324 align=1 (i32.const 0) (get_local 0x324)) + (i64.store offset=0x325 align=1 (i32.const 0) (get_local 0x325)) + (i64.store offset=0x326 align=1 (i32.const 0) (get_local 0x326)) + (i64.store offset=0x327 align=1 (i32.const 0) (get_local 0x327)) + (i64.store offset=0x328 align=1 (i32.const 0) (get_local 0x328)) + (i64.store offset=0x329 align=1 (i32.const 0) (get_local 0x329)) + (i64.store offset=0x32a align=1 (i32.const 0) (get_local 0x32a)) + (i64.store offset=0x32b align=1 (i32.const 0) (get_local 0x32b)) + (i64.store offset=0x32c align=1 (i32.const 0) (get_local 0x32c)) + (i64.store offset=0x32d align=1 (i32.const 0) (get_local 0x32d)) + (i64.store offset=0x32e align=1 (i32.const 0) (get_local 0x32e)) + (i64.store offset=0x32f align=1 (i32.const 0) (get_local 0x32f)) + (i64.store offset=0x330 align=1 (i32.const 0) (get_local 0x330)) + (i64.store offset=0x331 align=1 (i32.const 0) (get_local 0x331)) + (i64.store offset=0x332 align=1 (i32.const 0) (get_local 0x332)) + (i64.store offset=0x333 align=1 (i32.const 0) (get_local 0x333)) + (i64.store offset=0x334 align=1 (i32.const 0) (get_local 0x334)) + (i64.store offset=0x335 align=1 (i32.const 0) (get_local 0x335)) + (i64.store offset=0x336 align=1 (i32.const 0) (get_local 0x336)) + (i64.store offset=0x337 align=1 (i32.const 0) (get_local 0x337)) + (i64.store offset=0x338 align=1 (i32.const 0) (get_local 0x338)) + (i64.store offset=0x339 align=1 (i32.const 0) (get_local 0x339)) + (i64.store offset=0x33a align=1 (i32.const 0) (get_local 0x33a)) + (i64.store offset=0x33b align=1 (i32.const 0) (get_local 0x33b)) + (i64.store offset=0x33c align=1 (i32.const 0) (get_local 0x33c)) + (i64.store offset=0x33d align=1 (i32.const 0) (get_local 0x33d)) + (i64.store offset=0x33e align=1 (i32.const 0) (get_local 0x33e)) + (i64.store offset=0x33f align=1 (i32.const 0) (get_local 0x33f)) + (i64.store offset=0x340 align=1 (i32.const 0) (get_local 0x340)) + (i64.store offset=0x341 align=1 (i32.const 0) (get_local 0x341)) + (i64.store offset=0x342 align=1 (i32.const 0) (get_local 0x342)) + (i64.store offset=0x343 align=1 (i32.const 0) (get_local 0x343)) + (i64.store offset=0x344 align=1 (i32.const 0) (get_local 0x344)) + (i64.store offset=0x345 align=1 (i32.const 0) (get_local 0x345)) + (i64.store offset=0x346 align=1 (i32.const 0) (get_local 0x346)) + (i64.store offset=0x347 align=1 (i32.const 0) (get_local 0x347)) + (i64.store offset=0x348 align=1 (i32.const 0) (get_local 0x348)) + (i64.store offset=0x349 align=1 (i32.const 0) (get_local 0x349)) + (i64.store offset=0x34a align=1 (i32.const 0) (get_local 0x34a)) + (i64.store offset=0x34b align=1 (i32.const 0) (get_local 0x34b)) + (i64.store offset=0x34c align=1 (i32.const 0) (get_local 0x34c)) + (i64.store offset=0x34d align=1 (i32.const 0) (get_local 0x34d)) + (i64.store offset=0x34e align=1 (i32.const 0) (get_local 0x34e)) + (i64.store offset=0x34f align=1 (i32.const 0) (get_local 0x34f)) + (i64.store offset=0x350 align=1 (i32.const 0) (get_local 0x350)) + (i64.store offset=0x351 align=1 (i32.const 0) (get_local 0x351)) + (i64.store offset=0x352 align=1 (i32.const 0) (get_local 0x352)) + (i64.store offset=0x353 align=1 (i32.const 0) (get_local 0x353)) + (i64.store offset=0x354 align=1 (i32.const 0) (get_local 0x354)) + (i64.store offset=0x355 align=1 (i32.const 0) (get_local 0x355)) + (i64.store offset=0x356 align=1 (i32.const 0) (get_local 0x356)) + (i64.store offset=0x357 align=1 (i32.const 0) (get_local 0x357)) + (i64.store offset=0x358 align=1 (i32.const 0) (get_local 0x358)) + (i64.store offset=0x359 align=1 (i32.const 0) (get_local 0x359)) + (i64.store offset=0x35a align=1 (i32.const 0) (get_local 0x35a)) + (i64.store offset=0x35b align=1 (i32.const 0) (get_local 0x35b)) + (i64.store offset=0x35c align=1 (i32.const 0) (get_local 0x35c)) + (i64.store offset=0x35d align=1 (i32.const 0) (get_local 0x35d)) + (i64.store offset=0x35e align=1 (i32.const 0) (get_local 0x35e)) + (i64.store offset=0x35f align=1 (i32.const 0) (get_local 0x35f)) + (i64.store offset=0x360 align=1 (i32.const 0) (get_local 0x360)) + (i64.store offset=0x361 align=1 (i32.const 0) (get_local 0x361)) + (i64.store offset=0x362 align=1 (i32.const 0) (get_local 0x362)) + (i64.store offset=0x363 align=1 (i32.const 0) (get_local 0x363)) + (i64.store offset=0x364 align=1 (i32.const 0) (get_local 0x364)) + (i64.store offset=0x365 align=1 (i32.const 0) (get_local 0x365)) + (i64.store offset=0x366 align=1 (i32.const 0) (get_local 0x366)) + (i64.store offset=0x367 align=1 (i32.const 0) (get_local 0x367)) + (i64.store offset=0x368 align=1 (i32.const 0) (get_local 0x368)) + (i64.store offset=0x369 align=1 (i32.const 0) (get_local 0x369)) + (i64.store offset=0x36a align=1 (i32.const 0) (get_local 0x36a)) + (i64.store offset=0x36b align=1 (i32.const 0) (get_local 0x36b)) + (i64.store offset=0x36c align=1 (i32.const 0) (get_local 0x36c)) + (i64.store offset=0x36d align=1 (i32.const 0) (get_local 0x36d)) + (i64.store offset=0x36e align=1 (i32.const 0) (get_local 0x36e)) + (i64.store offset=0x36f align=1 (i32.const 0) (get_local 0x36f)) + (i64.store offset=0x370 align=1 (i32.const 0) (get_local 0x370)) + (i64.store offset=0x371 align=1 (i32.const 0) (get_local 0x371)) + (i64.store offset=0x372 align=1 (i32.const 0) (get_local 0x372)) + (i64.store offset=0x373 align=1 (i32.const 0) (get_local 0x373)) + (i64.store offset=0x374 align=1 (i32.const 0) (get_local 0x374)) + (i64.store offset=0x375 align=1 (i32.const 0) (get_local 0x375)) + (i64.store offset=0x376 align=1 (i32.const 0) (get_local 0x376)) + (i64.store offset=0x377 align=1 (i32.const 0) (get_local 0x377)) + (i64.store offset=0x378 align=1 (i32.const 0) (get_local 0x378)) + (i64.store offset=0x379 align=1 (i32.const 0) (get_local 0x379)) + (i64.store offset=0x37a align=1 (i32.const 0) (get_local 0x37a)) + (i64.store offset=0x37b align=1 (i32.const 0) (get_local 0x37b)) + (i64.store offset=0x37c align=1 (i32.const 0) (get_local 0x37c)) + (i64.store offset=0x37d align=1 (i32.const 0) (get_local 0x37d)) + (i64.store offset=0x37e align=1 (i32.const 0) (get_local 0x37e)) + (i64.store offset=0x37f align=1 (i32.const 0) (get_local 0x37f)) + (i64.store offset=0x380 align=1 (i32.const 0) (get_local 0x380)) + (i64.store offset=0x381 align=1 (i32.const 0) (get_local 0x381)) + (i64.store offset=0x382 align=1 (i32.const 0) (get_local 0x382)) + (i64.store offset=0x383 align=1 (i32.const 0) (get_local 0x383)) + (i64.store offset=0x384 align=1 (i32.const 0) (get_local 0x384)) + (i64.store offset=0x385 align=1 (i32.const 0) (get_local 0x385)) + (i64.store offset=0x386 align=1 (i32.const 0) (get_local 0x386)) + (i64.store offset=0x387 align=1 (i32.const 0) (get_local 0x387)) + (i64.store offset=0x388 align=1 (i32.const 0) (get_local 0x388)) + (i64.store offset=0x389 align=1 (i32.const 0) (get_local 0x389)) + (i64.store offset=0x38a align=1 (i32.const 0) (get_local 0x38a)) + (i64.store offset=0x38b align=1 (i32.const 0) (get_local 0x38b)) + (i64.store offset=0x38c align=1 (i32.const 0) (get_local 0x38c)) + (i64.store offset=0x38d align=1 (i32.const 0) (get_local 0x38d)) + (i64.store offset=0x38e align=1 (i32.const 0) (get_local 0x38e)) + (i64.store offset=0x38f align=1 (i32.const 0) (get_local 0x38f)) + (i64.store offset=0x390 align=1 (i32.const 0) (get_local 0x390)) + (i64.store offset=0x391 align=1 (i32.const 0) (get_local 0x391)) + (i64.store offset=0x392 align=1 (i32.const 0) (get_local 0x392)) + (i64.store offset=0x393 align=1 (i32.const 0) (get_local 0x393)) + (i64.store offset=0x394 align=1 (i32.const 0) (get_local 0x394)) + (i64.store offset=0x395 align=1 (i32.const 0) (get_local 0x395)) + (i64.store offset=0x396 align=1 (i32.const 0) (get_local 0x396)) + (i64.store offset=0x397 align=1 (i32.const 0) (get_local 0x397)) + (i64.store offset=0x398 align=1 (i32.const 0) (get_local 0x398)) + (i64.store offset=0x399 align=1 (i32.const 0) (get_local 0x399)) + (i64.store offset=0x39a align=1 (i32.const 0) (get_local 0x39a)) + (i64.store offset=0x39b align=1 (i32.const 0) (get_local 0x39b)) + (i64.store offset=0x39c align=1 (i32.const 0) (get_local 0x39c)) + (i64.store offset=0x39d align=1 (i32.const 0) (get_local 0x39d)) + (i64.store offset=0x39e align=1 (i32.const 0) (get_local 0x39e)) + (i64.store offset=0x39f align=1 (i32.const 0) (get_local 0x39f)) + (i64.store offset=0x3a0 align=1 (i32.const 0) (get_local 0x3a0)) + (i64.store offset=0x3a1 align=1 (i32.const 0) (get_local 0x3a1)) + (i64.store offset=0x3a2 align=1 (i32.const 0) (get_local 0x3a2)) + (i64.store offset=0x3a3 align=1 (i32.const 0) (get_local 0x3a3)) + (i64.store offset=0x3a4 align=1 (i32.const 0) (get_local 0x3a4)) + (i64.store offset=0x3a5 align=1 (i32.const 0) (get_local 0x3a5)) + (i64.store offset=0x3a6 align=1 (i32.const 0) (get_local 0x3a6)) + (i64.store offset=0x3a7 align=1 (i32.const 0) (get_local 0x3a7)) + (i64.store offset=0x3a8 align=1 (i32.const 0) (get_local 0x3a8)) + (i64.store offset=0x3a9 align=1 (i32.const 0) (get_local 0x3a9)) + (i64.store offset=0x3aa align=1 (i32.const 0) (get_local 0x3aa)) + (i64.store offset=0x3ab align=1 (i32.const 0) (get_local 0x3ab)) + (i64.store offset=0x3ac align=1 (i32.const 0) (get_local 0x3ac)) + (i64.store offset=0x3ad align=1 (i32.const 0) (get_local 0x3ad)) + (i64.store offset=0x3ae align=1 (i32.const 0) (get_local 0x3ae)) + (i64.store offset=0x3af align=1 (i32.const 0) (get_local 0x3af)) + (i64.store offset=0x3b0 align=1 (i32.const 0) (get_local 0x3b0)) + (i64.store offset=0x3b1 align=1 (i32.const 0) (get_local 0x3b1)) + (i64.store offset=0x3b2 align=1 (i32.const 0) (get_local 0x3b2)) + (i64.store offset=0x3b3 align=1 (i32.const 0) (get_local 0x3b3)) + (i64.store offset=0x3b4 align=1 (i32.const 0) (get_local 0x3b4)) + (i64.store offset=0x3b5 align=1 (i32.const 0) (get_local 0x3b5)) + (i64.store offset=0x3b6 align=1 (i32.const 0) (get_local 0x3b6)) + (i64.store offset=0x3b7 align=1 (i32.const 0) (get_local 0x3b7)) + (i64.store offset=0x3b8 align=1 (i32.const 0) (get_local 0x3b8)) + (i64.store offset=0x3b9 align=1 (i32.const 0) (get_local 0x3b9)) + (i64.store offset=0x3ba align=1 (i32.const 0) (get_local 0x3ba)) + (i64.store offset=0x3bb align=1 (i32.const 0) (get_local 0x3bb)) + (i64.store offset=0x3bc align=1 (i32.const 0) (get_local 0x3bc)) + (i64.store offset=0x3bd align=1 (i32.const 0) (get_local 0x3bd)) + (i64.store offset=0x3be align=1 (i32.const 0) (get_local 0x3be)) + (i64.store offset=0x3bf align=1 (i32.const 0) (get_local 0x3bf)) + (i64.store offset=0x3c0 align=1 (i32.const 0) (get_local 0x3c0)) + (i64.store offset=0x3c1 align=1 (i32.const 0) (get_local 0x3c1)) + (i64.store offset=0x3c2 align=1 (i32.const 0) (get_local 0x3c2)) + (i64.store offset=0x3c3 align=1 (i32.const 0) (get_local 0x3c3)) + (i64.store offset=0x3c4 align=1 (i32.const 0) (get_local 0x3c4)) + (i64.store offset=0x3c5 align=1 (i32.const 0) (get_local 0x3c5)) + (i64.store offset=0x3c6 align=1 (i32.const 0) (get_local 0x3c6)) + (i64.store offset=0x3c7 align=1 (i32.const 0) (get_local 0x3c7)) + (i64.store offset=0x3c8 align=1 (i32.const 0) (get_local 0x3c8)) + (i64.store offset=0x3c9 align=1 (i32.const 0) (get_local 0x3c9)) + (i64.store offset=0x3ca align=1 (i32.const 0) (get_local 0x3ca)) + (i64.store offset=0x3cb align=1 (i32.const 0) (get_local 0x3cb)) + (i64.store offset=0x3cc align=1 (i32.const 0) (get_local 0x3cc)) + (i64.store offset=0x3cd align=1 (i32.const 0) (get_local 0x3cd)) + (i64.store offset=0x3ce align=1 (i32.const 0) (get_local 0x3ce)) + (i64.store offset=0x3cf align=1 (i32.const 0) (get_local 0x3cf)) + (i64.store offset=0x3d0 align=1 (i32.const 0) (get_local 0x3d0)) + (i64.store offset=0x3d1 align=1 (i32.const 0) (get_local 0x3d1)) + (i64.store offset=0x3d2 align=1 (i32.const 0) (get_local 0x3d2)) + (i64.store offset=0x3d3 align=1 (i32.const 0) (get_local 0x3d3)) + (i64.store offset=0x3d4 align=1 (i32.const 0) (get_local 0x3d4)) + (i64.store offset=0x3d5 align=1 (i32.const 0) (get_local 0x3d5)) + (i64.store offset=0x3d6 align=1 (i32.const 0) (get_local 0x3d6)) + (i64.store offset=0x3d7 align=1 (i32.const 0) (get_local 0x3d7)) + (i64.store offset=0x3d8 align=1 (i32.const 0) (get_local 0x3d8)) + (i64.store offset=0x3d9 align=1 (i32.const 0) (get_local 0x3d9)) + (i64.store offset=0x3da align=1 (i32.const 0) (get_local 0x3da)) + (i64.store offset=0x3db align=1 (i32.const 0) (get_local 0x3db)) + (i64.store offset=0x3dc align=1 (i32.const 0) (get_local 0x3dc)) + (i64.store offset=0x3dd align=1 (i32.const 0) (get_local 0x3dd)) + (i64.store offset=0x3de align=1 (i32.const 0) (get_local 0x3de)) + (i64.store offset=0x3df align=1 (i32.const 0) (get_local 0x3df)) + (i64.store offset=0x3e0 align=1 (i32.const 0) (get_local 0x3e0)) + (i64.store offset=0x3e1 align=1 (i32.const 0) (get_local 0x3e1)) + (i64.store offset=0x3e2 align=1 (i32.const 0) (get_local 0x3e2)) + (i64.store offset=0x3e3 align=1 (i32.const 0) (get_local 0x3e3)) + (i64.store offset=0x3e4 align=1 (i32.const 0) (get_local 0x3e4)) + (i64.store offset=0x3e5 align=1 (i32.const 0) (get_local 0x3e5)) + (i64.store offset=0x3e6 align=1 (i32.const 0) (get_local 0x3e6)) + (i64.store offset=0x3e7 align=1 (i32.const 0) (get_local 0x3e7)) + (i64.store offset=0x3e8 align=1 (i32.const 0) (get_local 0x3e8)) + (i64.store offset=0x3e9 align=1 (i32.const 0) (get_local 0x3e9)) + (i64.store offset=0x3ea align=1 (i32.const 0) (get_local 0x3ea)) + (i64.store offset=0x3eb align=1 (i32.const 0) (get_local 0x3eb)) + (i64.store offset=0x3ec align=1 (i32.const 0) (get_local 0x3ec)) + (i64.store offset=0x3ed align=1 (i32.const 0) (get_local 0x3ed)) + (i64.store offset=0x3ee align=1 (i32.const 0) (get_local 0x3ee)) + (i64.store offset=0x3ef align=1 (i32.const 0) (get_local 0x3ef)) + (i64.store offset=0x3f0 align=1 (i32.const 0) (get_local 0x3f0)) + (i64.store offset=0x3f1 align=1 (i32.const 0) (get_local 0x3f1)) + (i64.store offset=0x3f2 align=1 (i32.const 0) (get_local 0x3f2)) + (i64.store offset=0x3f3 align=1 (i32.const 0) (get_local 0x3f3)) + (i64.store offset=0x3f4 align=1 (i32.const 0) (get_local 0x3f4)) + (i64.store offset=0x3f5 align=1 (i32.const 0) (get_local 0x3f5)) + (i64.store offset=0x3f6 align=1 (i32.const 0) (get_local 0x3f6)) + (i64.store offset=0x3f7 align=1 (i32.const 0) (get_local 0x3f7)) + (i64.store offset=0x3f8 align=1 (i32.const 0) (get_local 0x3f8)) + (i64.store offset=0x3f9 align=1 (i32.const 0) (get_local 0x3f9)) + (i64.store offset=0x3fa align=1 (i32.const 0) (get_local 0x3fa)) + (i64.store offset=0x3fb align=1 (i32.const 0) (get_local 0x3fb)) + (i64.store offset=0x3fc align=1 (i32.const 0) (get_local 0x3fc)) + (i64.store offset=0x3fd align=1 (i32.const 0) (get_local 0x3fd)) + (i64.store offset=0x3fe align=1 (i32.const 0) (get_local 0x3fe)) + (i64.store offset=0x3ff align=1 (i32.const 0) (get_local 0x3ff)) + (i64.store offset=0x400 align=1 (i32.const 0) (get_local 0x400)) + (i64.store offset=0x401 align=1 (i32.const 0) (get_local 0x401)) + (i64.store offset=0x402 align=1 (i32.const 0) (get_local 0x402)) + (i64.store offset=0x403 align=1 (i32.const 0) (get_local 0x403)) + (i64.store offset=0x404 align=1 (i32.const 0) (get_local 0x404)) + (i64.store offset=0x405 align=1 (i32.const 0) (get_local 0x405)) + (i64.store offset=0x406 align=1 (i32.const 0) (get_local 0x406)) + (i64.store offset=0x407 align=1 (i32.const 0) (get_local 0x407)) + (i64.store offset=0x408 align=1 (i32.const 0) (get_local 0x408)) + (i64.store offset=0x409 align=1 (i32.const 0) (get_local 0x409)) + (i64.store offset=0x40a align=1 (i32.const 0) (get_local 0x40a)) + (i64.store offset=0x40b align=1 (i32.const 0) (get_local 0x40b)) + (i64.store offset=0x40c align=1 (i32.const 0) (get_local 0x40c)) + (i64.store offset=0x40d align=1 (i32.const 0) (get_local 0x40d)) + (i64.store offset=0x40e align=1 (i32.const 0) (get_local 0x40e)) + (i64.store offset=0x40f align=1 (i32.const 0) (get_local 0x40f)) + (i64.store offset=0x410 align=1 (i32.const 0) (get_local 0x410)) + (i64.store offset=0x411 align=1 (i32.const 0) (get_local 0x411)) + (i64.store offset=0x412 align=1 (i32.const 0) (get_local 0x412)) + (i64.store offset=0x413 align=1 (i32.const 0) (get_local 0x413)) + (i64.store offset=0x414 align=1 (i32.const 0) (get_local 0x414)) + (i64.store offset=0x415 align=1 (i32.const 0) (get_local 0x415)) + (i64.store offset=0x416 align=1 (i32.const 0) (get_local 0x416)) + (i64.store offset=0x417 align=1 (i32.const 0) (get_local 0x417)) + (i64.store offset=0x418 align=1 (i32.const 0) (get_local 0x418)) + (i64.store offset=0x419 align=1 (i32.const 0) (get_local 0x419)) + (i64.store offset=0x41a align=1 (i32.const 0) (get_local 0x41a)) + (i64.store offset=0x41b align=1 (i32.const 0) (get_local 0x41b)) + (i64.store offset=0x41c align=1 (i32.const 0) (get_local 0x41c)) + (i64.store offset=0x41d align=1 (i32.const 0) (get_local 0x41d)) + (i64.store offset=0x41e align=1 (i32.const 0) (get_local 0x41e)) + (i64.store offset=0x41f align=1 (i32.const 0) (get_local 0x41f)) + ) +) + +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 0)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 100)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 200)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 300)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 400)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 500)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 600)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 700)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 800)) "call stack exhausted") +(assert_exhaustion (invoke "test-guard-page-skip" (i32.const 900)) "call stack exhausted") + +;) \ No newline at end of file diff --git a/test/spec/stack.wast b/test/spec/stack.wast new file mode 100644 index 00000000000..88147fa3d69 --- /dev/null +++ b/test/spec/stack.wast @@ -0,0 +1,220 @@ +(module + (func (export "fac-expr") (param $n i64) (result i64) + (local $i i64) + (local $res i64) + (set_local $i (get_local $n)) + (set_local $res (i64.const 1)) + (block $done + (loop $loop + (if + (i64.eq (get_local $i) (i64.const 0)) + (then (br $done)) + (else + (set_local $res (i64.mul (get_local $i) (get_local $res))) + (set_local $i (i64.sub (get_local $i) (i64.const 1))) + ) + ) + (br $loop) + ) + ) + (get_local $res) + ) + + (func (export "fac-stack") (param $n i64) (result i64) + (local $i i64) + (local $res i64) + (get_local $n) + (set_local $i) + (i64.const 1) + (set_local $res) + (block $done + (loop $loop + (get_local $i) + (i64.const 0) + (i64.eq) + (if + (then (br $done)) + (else + (get_local $i) + (get_local $res) + (i64.mul) + (set_local $res) + (get_local $i) + (i64.const 1) + (i64.sub) + (set_local $i) + ) + ) + (br $loop) + ) + ) + (get_local $res) + ) + + (func (export "fac-stack-raw") (param $n i64) (result i64) + (local $i i64) + (local $res i64) + get_local $n + set_local $i + i64.const 1 + set_local $res + block $done + loop $loop + get_local $i + i64.const 0 + i64.eq + if $body + br $done + else $body + get_local $i + get_local $res + i64.mul + set_local $res + get_local $i + i64.const 1 + i64.sub + set_local $i + end $body + br $loop + end $loop + end $done + get_local $res + ) + + (func (export "fac-mixed") (param $n i64) (result i64) + (local $i i64) + (local $res i64) + (set_local $i (get_local $n)) + (set_local $res (i64.const 1)) + (block $done + (loop $loop + (i64.eq (get_local $i) (i64.const 0)) + (if + (then (br $done)) + (else + (i64.mul (get_local $i) (get_local $res)) + (set_local $res) + (i64.sub (get_local $i) (i64.const 1)) + (set_local $i) + ) + ) + (br $loop) + ) + ) + (get_local $res) + ) + + (func (export "fac-mixed-raw") (param $n i64) (result i64) + (local $i i64) + (local $res i64) + (set_local $i (get_local $n)) + (set_local $res (i64.const 1)) + block $done + loop $loop + (i64.eq (get_local $i) (i64.const 0)) + if + br $done + else + (i64.mul (get_local $i) (get_local $res)) + set_local $res + (i64.sub (get_local $i) (i64.const 1)) + set_local $i + end + br $loop + end + end + get_local $res + ) +) + +(assert_return (invoke "fac-expr" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-stack" (i64.const 25)) (i64.const 7034535277573963776)) +(assert_return (invoke "fac-mixed" (i64.const 25)) (i64.const 7034535277573963776)) + + +;; Syntax of flat call_indirect + +(module + (type $proc (func)) + (table 1 anyfunc) + + (func + (block i32.const 0 call_indirect) + (loop i32.const 0 call_indirect) + (if (i32.const 0) (then i32.const 0 call_indirect)) + (if (i32.const 0) + (then i32.const 0 call_indirect) + (else i32.const 0 call_indirect) + ) + (block i32.const 0 call_indirect (type $proc)) + (loop i32.const 0 call_indirect (type $proc)) + (if (i32.const 0) (then i32.const 0 call_indirect (type $proc))) + (if (i32.const 0) + (then i32.const 0 call_indirect (type $proc)) + (else i32.const 0 call_indirect (type $proc)) + ) + (block i32.const 0 i32.const 0 call_indirect (param i32)) + (loop i32.const 0 i32.const 0 call_indirect (param i32)) + (if (i32.const 0) (then i32.const 0 i32.const 0 call_indirect (param i32))) + (if (i32.const 0) + (then i32.const 0 i32.const 0 call_indirect (param i32)) + (else i32.const 0 i32.const 0 call_indirect (param i32)) + ) + (block (result i32) i32.const 0 call_indirect (result i32)) (drop) + (loop (result i32) i32.const 0 call_indirect (result i32)) (drop) + (if (result i32) (i32.const 0) + (then i32.const 0 call_indirect (result i32)) + (else i32.const 0 call_indirect (result i32)) + ) (drop) + (block i32.const 0 call_indirect (type $proc) (param) (result)) + (loop i32.const 0 call_indirect (type $proc) (param) (result)) + (if (i32.const 0) + (then i32.const 0 call_indirect (type $proc) (param) (result)) + ) + (if (i32.const 0) + (then i32.const 0 call_indirect (type $proc) (param) (param) (result)) + (else i32.const 0 call_indirect (type $proc) (param) (result) (result)) + ) + + block i32.const 0 call_indirect end + loop i32.const 0 call_indirect end + i32.const 0 if i32.const 0 call_indirect end + i32.const 0 if i32.const 0 call_indirect else i32.const 0 call_indirect end + block i32.const 0 call_indirect (type $proc) end + loop i32.const 0 call_indirect (type $proc) end + i32.const 0 if i32.const 0 call_indirect (type $proc) end + i32.const 0 + if + i32.const 0 call_indirect (type $proc) + else + i32.const 0 call_indirect (type $proc) + end + block i32.const 0 i32.const 0 call_indirect (param i32) end + loop i32.const 0 i32.const 0 call_indirect (param i32) end + i32.const 0 if i32.const 0 i32.const 0 call_indirect (param i32) end + i32.const 0 + if + i32.const 0 i32.const 0 call_indirect (param i32) + else + i32.const 0 i32.const 0 call_indirect (param i32) + end + block (result i32) i32.const 0 call_indirect (result i32) end drop + loop (result i32) i32.const 0 call_indirect (result i32) end drop + i32.const 0 + if (result i32) + i32.const 0 call_indirect (result i32) + else + i32.const 0 call_indirect (result i32) + end drop + block i32.const 0 call_indirect (type $proc) (param) (result) end + loop i32.const 0 call_indirect (type $proc) (param) (result) end + i32.const 0 if i32.const 0 call_indirect (type $proc) (param) (result) end + i32.const 0 + if + i32.const 0 call_indirect (type $proc) (param) (result) + else + i32.const 0 call_indirect (type $proc) (param) (param) (result) (result) + end + i32.const 0 call_indirect + ) +) diff --git a/test/spec/start.wast b/test/spec/start.wast new file mode 100644 index 00000000000..ffa129b05ea --- /dev/null +++ b/test/spec/start.wast @@ -0,0 +1,98 @@ +(assert_invalid + (module (func) (start 1)) + "unknown function" +) + +(assert_invalid + (module + (func $main (result i32) (return (i32.const 0))) + (start $main) + ) + "start function" +) +(assert_invalid + (module + (func $main (param $a i32)) + (start $main) + ) + "start function" +) + +(module + (memory (data "A")) + (func $inc + (i32.store8 + (i32.const 0) + (i32.add + (i32.load8_u (i32.const 0)) + (i32.const 1) + ) + ) + ) + (func $get (result i32) + (return (i32.load8_u (i32.const 0))) + ) + (func $main + (call $inc) + (call $inc) + (call $inc) + ) + + (start $main) + (export "inc" (func $inc)) + (export "get" (func $get)) +) +(assert_return (invoke "get") (i32.const 68)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 69)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 70)) + +(module + (memory (data "A")) + (func $inc + (i32.store8 + (i32.const 0) + (i32.add + (i32.load8_u (i32.const 0)) + (i32.const 1) + ) + ) + ) + (func $get (result i32) + (return (i32.load8_u (i32.const 0))) + ) + (func $main + (call $inc) + (call $inc) + (call $inc) + ) + (start 2) + (export "inc" (func $inc)) + (export "get" (func $get)) +) +(assert_return (invoke "get") (i32.const 68)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 69)) +(invoke "inc") +(assert_return (invoke "get") (i32.const 70)) + +;; NOT SUPPORTED IN BINARYEN +(;module + (func $print_i32 (import "spectest" "print_i32") (param i32)) + (func $main (call $print_i32 (i32.const 1))) + (start 1) +;) +(;module + (func $print_i32 (import "spectest" "print_i32") (param i32)) + (func $main (call $print_i32 (i32.const 2))) + (start $main) +;) +(;module + (func $print (import "spectest" "print")) + (start $print) +;) +(;assert_trap + (module (func $main (unreachable)) (start $main)) + "unreachable" +;) diff --git a/test/spec/store_retval.wast b/test/spec/store_retval.wast new file mode 100644 index 00000000000..a4d03582f63 --- /dev/null +++ b/test/spec/store_retval.wast @@ -0,0 +1,55 @@ +(assert_invalid + (module (func (param i32) (result i32) (set_local 0 (i32.const 1)))) + "type mismatch" +) +(assert_invalid + (module (func (param i64) (result i64) (set_local 0 (i64.const 1)))) + "type mismatch" +) +(assert_invalid + (module (func (param f32) (result f32) (set_local 0 (f32.const 1)))) + "type mismatch" +) +(assert_invalid + (module (func (param f64) (result f64) (set_local 0 (f64.const 1)))) + "type mismatch" +) + +(assert_invalid + (module (memory 1) (func (param i32) (result i32) (i32.store (i32.const 0) (i32.const 1)))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (func (param i64) (result i64) (i64.store (i32.const 0) (i64.const 1)))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (func (param f32) (result f32) (f32.store (i32.const 0) (f32.const 1)))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (func (param f64) (result f64) (f64.store (i32.const 0) (f64.const 1)))) + "type mismatch" +) + +(assert_invalid + (module (memory 1) (func (param i32) (result i32) (i32.store8 (i32.const 0) (i32.const 1)))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (func (param i32) (result i32) (i32.store16 (i32.const 0) (i32.const 1)))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (func (param i64) (result i64) (i64.store8 (i32.const 0) (i64.const 1)))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (func (param i64) (result i64) (i64.store16 (i32.const 0) (i64.const 1)))) + "type mismatch" +) +(assert_invalid + (module (memory 1) (func (param i64) (result i64) (i64.store32 (i32.const 0) (i64.const 1)))) + "type mismatch" +) + diff --git a/test/spec/switch.wast b/test/spec/switch.wast new file mode 100644 index 00000000000..829acc02404 --- /dev/null +++ b/test/spec/switch.wast @@ -0,0 +1,150 @@ +(module + ;; Statement switch + (func (export "stmt") (param $i i32) (result i32) + (local $j i32) + (set_local $j (i32.const 100)) + (block $switch + (block $7 + (block $default + (block $6 + (block $5 + (block $4 + (block $3 + (block $2 + (block $1 + (block $0 + (br_table $0 $1 $2 $3 $4 $5 $6 $7 $default + (get_local $i) + ) + ) ;; 0 + (return (get_local $i)) + ) ;; 1 + (nop) + ;; fallthrough + ) ;; 2 + ;; fallthrough + ) ;; 3 + (set_local $j (i32.sub (i32.const 0) (get_local $i))) + (br $switch) + ) ;; 4 + (br $switch) + ) ;; 5 + (set_local $j (i32.const 101)) + (br $switch) + ) ;; 6 + (set_local $j (i32.const 101)) + ;; fallthrough + ) ;; default + (set_local $j (i32.const 102)) + ) ;; 7 + ;; fallthrough + ) + (return (get_local $j)) + ) + + ;; Expression switch + (func (export "expr") (param $i i64) (result i64) + (local $j i64) + (set_local $j (i64.const 100)) + (return + (block $switch (result i64) + (block $7 + (block $default + (block $4 + (block $5 + (block $6 + (block $3 + (block $2 + (block $1 + (block $0 + (br_table $0 $1 $2 $3 $4 $5 $6 $7 $default + (i32.wrap/i64 (get_local $i)) + ) + ) ;; 0 + (return (get_local $i)) + ) ;; 1 + (nop) + ;; fallthrough + ) ;; 2 + ;; fallthrough + ) ;; 3 + (br $switch (i64.sub (i64.const 0) (get_local $i))) + ) ;; 6 + (set_local $j (i64.const 101)) + ;; fallthrough + ) ;; 4 + ;; fallthrough + ) ;; 5 + ;; fallthrough + ) ;; default + (br $switch (get_local $j)) + ) ;; 7 + (i64.const -5) + ) + ) + ) + + ;; Argument switch + (func (export "arg") (param $i i32) (result i32) + (return + (block $2 (result i32) + (i32.add (i32.const 10) + (block $1 (result i32) + (i32.add (i32.const 100) + (block $0 (result i32) + (i32.add (i32.const 1000) + (block $default (result i32) + (br_table $0 $1 $2 $default + (i32.mul (i32.const 2) (get_local $i)) + (i32.and (i32.const 3) (get_local $i)) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + ;; Corner cases + (func (export "corner") (result i32) + (block + (br_table 0 (i32.const 0)) + ) + (i32.const 1) + ) +) + +(assert_return (invoke "stmt" (i32.const 0)) (i32.const 0)) +(assert_return (invoke "stmt" (i32.const 1)) (i32.const -1)) +(assert_return (invoke "stmt" (i32.const 2)) (i32.const -2)) +(assert_return (invoke "stmt" (i32.const 3)) (i32.const -3)) +(assert_return (invoke "stmt" (i32.const 4)) (i32.const 100)) +(assert_return (invoke "stmt" (i32.const 5)) (i32.const 101)) +(assert_return (invoke "stmt" (i32.const 6)) (i32.const 102)) +(assert_return (invoke "stmt" (i32.const 7)) (i32.const 100)) +(assert_return (invoke "stmt" (i32.const -10)) (i32.const 102)) + +(assert_return (invoke "expr" (i64.const 0)) (i64.const 0)) +(assert_return (invoke "expr" (i64.const 1)) (i64.const -1)) +(assert_return (invoke "expr" (i64.const 2)) (i64.const -2)) +(assert_return (invoke "expr" (i64.const 3)) (i64.const -3)) +(assert_return (invoke "expr" (i64.const 6)) (i64.const 101)) +(assert_return (invoke "expr" (i64.const 7)) (i64.const -5)) +(assert_return (invoke "expr" (i64.const -10)) (i64.const 100)) + +(assert_return (invoke "arg" (i32.const 0)) (i32.const 110)) +(assert_return (invoke "arg" (i32.const 1)) (i32.const 12)) +(assert_return (invoke "arg" (i32.const 2)) (i32.const 4)) +(assert_return (invoke "arg" (i32.const 3)) (i32.const 1116)) +(assert_return (invoke "arg" (i32.const 4)) (i32.const 118)) +(assert_return (invoke "arg" (i32.const 5)) (i32.const 20)) +(assert_return (invoke "arg" (i32.const 6)) (i32.const 12)) +(assert_return (invoke "arg" (i32.const 7)) (i32.const 1124)) +(assert_return (invoke "arg" (i32.const 8)) (i32.const 126)) + +(assert_return (invoke "corner") (i32.const 1)) + +(assert_invalid (module (func (br_table 3 (i32.const 0)))) "unknown label") diff --git a/test/spec/tee_local.wast b/test/spec/tee_local.wast new file mode 100644 index 00000000000..452793e3001 --- /dev/null +++ b/test/spec/tee_local.wast @@ -0,0 +1,236 @@ +;; Test `tee_local` operator + +(module + ;; Typing + + (func (export "type-local-i32") (result i32) (local i32) (tee_local 0 (i32.const 0))) + (func (export "type-local-i64") (result i64) (local i64) (tee_local 0 (i64.const 0))) + (func (export "type-local-f32") (result f32) (local f32) (tee_local 0 (f32.const 0))) + (func (export "type-local-f64") (result f64) (local f64) (tee_local 0 (f64.const 0))) + + (func (export "type-param-i32") (param i32) (result i32) (tee_local 0 (i32.const 10))) + (func (export "type-param-i64") (param i64) (result i64) (tee_local 0 (i64.const 11))) + (func (export "type-param-f32") (param f32) (result f32) (tee_local 0 (f32.const 11.1))) + (func (export "type-param-f64") (param f64) (result f64) (tee_local 0 (f64.const 12.2))) + + (func (export "type-mixed") (param i64 f32 f64 i32 i32) (local f32 i64 i64 f64) + (drop (i64.eqz (tee_local 0 (i64.const 0)))) + (drop (f32.neg (tee_local 1 (f32.const 0)))) + (drop (f64.neg (tee_local 2 (f64.const 0)))) + (drop (i32.eqz (tee_local 3 (i32.const 0)))) + (drop (i32.eqz (tee_local 4 (i32.const 0)))) + (drop (f32.neg (tee_local 5 (f32.const 0)))) + (drop (i64.eqz (tee_local 6 (i64.const 0)))) + (drop (i64.eqz (tee_local 7 (i64.const 0)))) + (drop (f64.neg (tee_local 8 (f64.const 0)))) + ) + + ;; Writing + + (func (export "write") (param i64 f32 f64 i32 i32) (result i64) (local f32 i64 i64 f64) + (drop (tee_local 1 (f32.const -0.3))) + (drop (tee_local 3 (i32.const 40))) + (drop (tee_local 4 (i32.const -7))) + (drop (tee_local 5 (f32.const 5.5))) + (drop (tee_local 6 (i64.const 6))) + (drop (tee_local 8 (f64.const 8))) + (i64.trunc_s/f64 + (f64.add + (f64.convert_u/i64 (get_local 0)) + (f64.add + (f64.promote/f32 (get_local 1)) + (f64.add + (get_local 2) + (f64.add + (f64.convert_u/i32 (get_local 3)) + (f64.add + (f64.convert_s/i32 (get_local 4)) + (f64.add + (f64.promote/f32 (get_local 5)) + (f64.add + (f64.convert_u/i64 (get_local 6)) + (f64.add + (f64.convert_u/i64 (get_local 7)) + (get_local 8) + ) + ) + ) + ) + ) + ) + ) + ) + ) + ) + + ;; Result + + (func (export "result") (param i64 f32 f64 i32 i32) (result f64) + (local f32 i64 i64 f64) + (f64.add + (f64.convert_u/i64 (tee_local 0 (i64.const 1))) + (f64.add + (f64.promote/f32 (tee_local 1 (f32.const 2))) + (f64.add + (tee_local 2 (f64.const 3.3)) + (f64.add + (f64.convert_u/i32 (tee_local 3 (i32.const 4))) + (f64.add + (f64.convert_s/i32 (tee_local 4 (i32.const 5))) + (f64.add + (f64.promote/f32 (tee_local 5 (f32.const 5.5))) + (f64.add + (f64.convert_u/i64 (tee_local 6 (i64.const 6))) + (f64.add + (f64.convert_u/i64 (tee_local 7 (i64.const 0))) + (tee_local 8 (f64.const 8)) + ) + ) + ) + ) + ) + ) + ) + ) + ) +) + +(assert_return (invoke "type-local-i32") (i32.const 0)) +(assert_return (invoke "type-local-i64") (i64.const 0)) +(assert_return (invoke "type-local-f32") (f32.const 0)) +(assert_return (invoke "type-local-f64") (f64.const 0)) + +(assert_return (invoke "type-param-i32" (i32.const 2)) (i32.const 10)) +(assert_return (invoke "type-param-i64" (i64.const 3)) (i64.const 11)) +(assert_return (invoke "type-param-f32" (f32.const 4.4)) (f32.const 11.1)) +(assert_return (invoke "type-param-f64" (f64.const 5.5)) (f64.const 12.2)) + +(assert_return + (invoke "type-mixed" + (i64.const 1) (f32.const 2.2) (f64.const 3.3) (i32.const 4) (i32.const 5) + ) +) + +(assert_return + (invoke "write" + (i64.const 1) (f32.const 2) (f64.const 3.3) (i32.const 4) (i32.const 5) + ) + (i64.const 56) +) + +(assert_return + (invoke "result" + (i64.const -1) (f32.const -2) (f64.const -3.3) (i32.const -4) (i32.const -5) + ) + (f64.const 34.8) +) + + +;; Invalid typing of access to locals + +(assert_invalid + (module (func $type-local-num-vs-num (result i64) (local i32) (tee_local 0 (i32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f32) (i32.eqz (tee_local 0 (f32.const 0))))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-num-vs-num (local f64 i64) (f64.neg (tee_local 1 (i64.const 0))))) + "type mismatch" +) + +(assert_invalid + (module (func $type-local-arg-void-vs-num (local i32) (tee_local 0 (nop)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-arg-num-vs-num (local i32) (tee_local 0 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-arg-num-vs-num (local f32) (tee_local 0 (f64.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-local-arg-num-vs-num (local f64 i64) (tee_local 1 (f64.const 0)))) + "type mismatch" +) + + +;; Invalid typing of access to parameters + +(assert_invalid + (module (func $type-param-num-vs-num (param i32) (result i64) (get_local 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f32) (i32.eqz (get_local 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-num-vs-num (param f64 i64) (f64.neg (get_local 1)))) + "type mismatch" +) + +(assert_invalid + (module (func $type-param-arg-void-vs-num (param i32) (tee_local 0 (nop)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-arg-num-vs-num (param i32) (tee_local 0 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-arg-num-vs-num (param f32) (tee_local 0 (f64.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-param-arg-num-vs-num (param f64 i64) (tee_local 1 (f64.const 0)))) + "type mismatch" +) + + +;; Invalid local index + +(assert_invalid + (module (func $unbound-local (local i32 i64) (get_local 3))) + "unknown local" +) +(assert_invalid + (module (func $large-local (local i32 i64) (get_local 14324343))) + "unknown local" +) + +(assert_invalid + (module (func $unbound-param (param i32 i64) (get_local 2))) + "unknown local" +) +(assert_invalid + (module (func $large-param (local i32 i64) (get_local 714324343))) + "unknown local" +) + +(assert_invalid + (module (func $unbound-mixed (param i32) (local i32 i64) (get_local 3))) + "unknown local" +) +(assert_invalid + (module (func $large-mixed (param i64) (local i32 i64) (get_local 214324343))) + "unknown local" +) + +(assert_invalid + (module (func $type-mixed-arg-num-vs-num (param f32) (local i32) (tee_local 1 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-mixed-arg-num-vs-num (param i64 i32) (local f32) (tee_local 1 (f32.const 0)))) + "type mismatch" +) +(assert_invalid + (module (func $type-mixed-arg-num-vs-num (param i64) (local f64 i64) (tee_local 1 (i64.const 0)))) + "type mismatch" +) + diff --git a/test/spec/token.wast b/test/spec/token.wast new file mode 100644 index 00000000000..7cc225bdec5 --- /dev/null +++ b/test/spec/token.wast @@ -0,0 +1,11 @@ +;; Test tokenization + +;; NOT SUPPORTED IN BINARYEN +(;assert_malformed + (module quote "(func (drop (i32.const0)))") + "unknown operator" +;) +(;assert_malformed + (module quote "(func br 0drop)") + "unknown operator" +;) diff --git a/test/spec/traps.wast b/test/spec/traps.wast new file mode 100644 index 00000000000..a9401408e3f --- /dev/null +++ b/test/spec/traps.wast @@ -0,0 +1,91 @@ +;; Test that traps are preserved even in instructions which might otherwise +;; be dead-code-eliminated. These functions all perform an operation and +;; discard its return value. + +(module + (func (export "no_dce.i32.div_s") (param $x i32) (param $y i32) + (drop (i32.div_s (get_local $x) (get_local $y)))) + (func (export "no_dce.i32.div_u") (param $x i32) (param $y i32) + (drop (i32.div_u (get_local $x) (get_local $y)))) + (func (export "no_dce.i64.div_s") (param $x i64) (param $y i64) + (drop (i64.div_s (get_local $x) (get_local $y)))) + (func (export "no_dce.i64.div_u") (param $x i64) (param $y i64) + (drop (i64.div_u (get_local $x) (get_local $y)))) +) + +(assert_trap (invoke "no_dce.i32.div_s" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "no_dce.i32.div_u" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "no_dce.i64.div_s" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "no_dce.i64.div_u" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "no_dce.i32.div_s" (i32.const 0x80000000) (i32.const -1)) "integer overflow") +(assert_trap (invoke "no_dce.i64.div_s" (i64.const 0x8000000000000000) (i64.const -1)) "integer overflow") + +(module + (func (export "no_dce.i32.rem_s") (param $x i32) (param $y i32) + (drop (i32.rem_s (get_local $x) (get_local $y)))) + (func (export "no_dce.i32.rem_u") (param $x i32) (param $y i32) + (drop (i32.rem_u (get_local $x) (get_local $y)))) + (func (export "no_dce.i64.rem_s") (param $x i64) (param $y i64) + (drop (i64.rem_s (get_local $x) (get_local $y)))) + (func (export "no_dce.i64.rem_u") (param $x i64) (param $y i64) + (drop (i64.rem_u (get_local $x) (get_local $y)))) +) + +(assert_trap (invoke "no_dce.i32.rem_s" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "no_dce.i32.rem_u" (i32.const 1) (i32.const 0)) "integer divide by zero") +(assert_trap (invoke "no_dce.i64.rem_s" (i64.const 1) (i64.const 0)) "integer divide by zero") +(assert_trap (invoke "no_dce.i64.rem_u" (i64.const 1) (i64.const 0)) "integer divide by zero") + +(module + (func (export "no_dce.i32.trunc_s_f32") (param $x f32) (drop (i32.trunc_s/f32 (get_local $x)))) + (func (export "no_dce.i32.trunc_u_f32") (param $x f32) (drop (i32.trunc_u/f32 (get_local $x)))) + (func (export "no_dce.i32.trunc_s_f64") (param $x f64) (drop (i32.trunc_s/f64 (get_local $x)))) + (func (export "no_dce.i32.trunc_u_f64") (param $x f64) (drop (i32.trunc_u/f64 (get_local $x)))) + (func (export "no_dce.i64.trunc_s_f32") (param $x f32) (drop (i64.trunc_s/f32 (get_local $x)))) + (func (export "no_dce.i64.trunc_u_f32") (param $x f32) (drop (i64.trunc_u/f32 (get_local $x)))) + (func (export "no_dce.i64.trunc_s_f64") (param $x f64) (drop (i64.trunc_s/f64 (get_local $x)))) + (func (export "no_dce.i64.trunc_u_f64") (param $x f64) (drop (i64.trunc_u/f64 (get_local $x)))) +) + +(assert_trap (invoke "no_dce.i32.trunc_s_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "no_dce.i32.trunc_u_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "no_dce.i32.trunc_s_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "no_dce.i32.trunc_u_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "no_dce.i64.trunc_s_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "no_dce.i64.trunc_u_f32" (f32.const nan)) "invalid conversion to integer") +(assert_trap (invoke "no_dce.i64.trunc_s_f64" (f64.const nan)) "invalid conversion to integer") +(assert_trap (invoke "no_dce.i64.trunc_u_f64" (f64.const nan)) "invalid conversion to integer") + +(module + (memory 1) + + (func (export "no_dce.i32.load") (param $i i32) (drop (i32.load (get_local $i)))) + (func (export "no_dce.i32.load16_s") (param $i i32) (drop (i32.load16_s (get_local $i)))) + (func (export "no_dce.i32.load16_u") (param $i i32) (drop (i32.load16_u (get_local $i)))) + (func (export "no_dce.i32.load8_s") (param $i i32) (drop (i32.load8_s (get_local $i)))) + (func (export "no_dce.i32.load8_u") (param $i i32) (drop (i32.load8_u (get_local $i)))) + (func (export "no_dce.i64.load") (param $i i32) (drop (i64.load (get_local $i)))) + (func (export "no_dce.i64.load32_s") (param $i i32) (drop (i64.load32_s (get_local $i)))) + (func (export "no_dce.i64.load32_u") (param $i i32) (drop (i64.load32_u (get_local $i)))) + (func (export "no_dce.i64.load16_s") (param $i i32) (drop (i64.load16_s (get_local $i)))) + (func (export "no_dce.i64.load16_u") (param $i i32) (drop (i64.load16_u (get_local $i)))) + (func (export "no_dce.i64.load8_s") (param $i i32) (drop (i64.load8_s (get_local $i)))) + (func (export "no_dce.i64.load8_u") (param $i i32) (drop (i64.load8_u (get_local $i)))) + (func (export "no_dce.f32.load") (param $i i32) (drop (f32.load (get_local $i)))) + (func (export "no_dce.f64.load") (param $i i32) (drop (f64.load (get_local $i)))) +) + +(assert_trap (invoke "no_dce.i32.load" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i32.load16_s" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i32.load16_u" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i32.load8_s" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i32.load8_u" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i64.load" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i64.load32_s" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i64.load32_u" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i64.load16_s" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i64.load16_u" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i64.load8_s" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.i64.load8_u" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.f32.load" (i32.const 65536)) "out of bounds memory access") +(assert_trap (invoke "no_dce.f64.load" (i32.const 65536)) "out of bounds memory access") diff --git a/test/spec/type.wast b/test/spec/type.wast new file mode 100644 index 00000000000..47b39432837 --- /dev/null +++ b/test/spec/type.wast @@ -0,0 +1,67 @@ +;; Test type definitions + +(module + (type (func)) + (type $t (func)) + + (type (func (param i32))) + + ;; NOT SUPPORTED IN BINARYEN + ;; (type (func (param $x i32))) + (type (func (result i32))) + (type (func (param i32) (result i32))) + ;; NOT SUPPORTED IN BINARYEN + ;; (type (func (param $x i32) (result i32))) + + (type (func (param f32 f64))) + ;; (type (func (result i64 f32))) + ;; (type (func (param i32 i64) (result f32 f64))) + + (type (func (param f32) (param f64))) + ;; NOT SUPPORTED IN BINARYEN + ;; (type (func (param $x f32) (param f64))) + ;; NOT SUPPORTED IN BINARYEN + ;; (type (func (param f32) (param $y f64))) + ;; (type (func (param $x f32) (param $y f64))) + ;; (type (func (result i64) (result f32))) + ;; (type (func (param i32) (param i64) (result f32) (result f64))) + ;; (type (func (param $x i32) (param $y i64) (result f32) (result f64))) + + ;; NOT SUPPORTED IN BINARYEN + ;; (type (func (param f32 f64) (param $x i32) (param f64 i32 i32))) + ;; (type (func (result i64 i64 f32) (result f32 i32))) + ;; (type + ;; (func (param i32 i32) (param i64 i32) (result f32 f64) (result f64 i32)) + ;; ) + + ;; NOT SUPPORTED IN BINARYEN + ;; (type (func (param) (param $x f32) (param) (param) (param f64 i32) (param))) + ;; (type + ;; (func (result) (result) (result i64 i64) (result) (result f32) (result)) + ;; ) + ;; (type + ;; (func + ;; (param i32 i32) (param i64 i32) (param) (param $x i32) (param) + ;; (result) (result f32 f64) (result f64 i32) (result) + ;; ) + ;; ) +) + +(assert_malformed + (module quote "(type (func (result i32) (param i32)))") + "result before parameter" +) +(assert_malformed + (module quote "(type (func (result $x i32)))") + "unexpected token" +) + +(assert_invalid + (module (type (func (result i32 i32)))) + "invalid result arity" +) +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module (type (func (result i32) (result i32)))) + "invalid result arity" +;) diff --git a/test/spec/typecheck.wast b/test/spec/typecheck.wast new file mode 100644 index 00000000000..0ac0c75e26b --- /dev/null +++ b/test/spec/typecheck.wast @@ -0,0 +1,425 @@ +;; TODO: move all tests in this file to appropriate operator-specific files. + +(assert_invalid + (module (func $type-unary-operand-missing + (i32.eqz) (drop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-operand-missing-in-block + (i32.const 0) + (block (i32.eqz) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-operand-missing-in-loop + (i32.const 0) + (loop (i32.eqz) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-operand-missing-in-if + (i32.const 0) (i32.const 0) + (if (then (i32.eqz) (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-operand-missing-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.eqz))) (drop) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-binary-1st-operand-missing + (i32.add) (drop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-2nd-operand-missing + (i32.const 0) (i32.add) (drop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-1st-operand-missing-in-block + (i32.const 0) (i32.const 0) + (block (i32.add) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-2nd-operand-missing-in-block + (i32.const 0) + (block (i32.const 0) (i32.add) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-1st-operand-missing-in-loop + (i32.const 0) (i32.const 0) + (loop (i32.add) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-2nd-operand-missing-in-loop + (i32.const 0) + (loop (i32.const 0) (i32.add) (drop)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-1st-operand-missing-in-if + (i32.const 0) (i32.const 0) (i32.const 0) + (if (i32.add) (then (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-2nd-operand-missing-in-if + (i32.const 0) (i32.const 0) + (if (i32.const 0) (then (i32.add)) (else (drop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-1st-operand-missing-in-else + (i32.const 0) (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.add) (i32.const 0))) + (drop) (drop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-2nd-operand-missing-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (i32.add))) + (drop) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-if-operand-missing + (if (then)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-if-operand-missing-in-block + (i32.const 0) + (block (if (then))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-if-operand-missing-in-loop + (i32.const 0) + (loop (if (then))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-if-operand-missing-in-if + (i32.const 0) (i32.const 0) + (if (then (if (then)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-if-operand-missing-in-else + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (if (then)) (i32.const 0))) + (drop) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-br-operand-missing + (block (result i32) (br 0)) + (i32.eqz) (drop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br-operand-missing-in-block + (i32.const 0) + (block (result i32) (br 0)) + (i32.eqz) (drop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br-operand-missing-in-if + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (br 0))) + ) + (i32.eqz) (drop) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br-operand-missing-in-else + (block + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (br 0))) + ) + (i32.eqz) (drop) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-return-operand-missing (result i32) + (return) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-operand-missing-in-block (result i32) + (i32.const 0) + (block (return)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-operand-missing-in-loop (result i32) + (i32.const 0) + (loop (return)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-operand-missing-in-if (result i32) + (i32.const 0) (i32.const 0) + (if (then (return))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-return-operand-missing-in-else (result i32) + (i32.const 0) (i32.const 0) + (if (result i32) (then (i32.const 0)) (else (return))) (drop) + )) + "type mismatch" +) + +;; TODO(stack): more of the above + +;; if condition +(assert_invalid (module (func (if (f32.const 0) (then)))) "type mismatch") + +;; br_if condition +(assert_invalid (module (func (block (br_if 0 (f32.const 0))))) "type mismatch") + +;; br_table key +(assert_invalid + (module (func (block (br_table 0 (f32.const 0))))) + "type mismatch") + +;; call params +(assert_invalid (module (func (param i32)) (func (call 0 (f32.const 0)))) "type mismatch") +(assert_invalid + (module + (type (func (param i32))) + (func (type 0)) + (table 0 anyfunc) + (func + (call_indirect (type 0) (i32.const 0) (f32.const 0)))) + "type mismatch") + +;; call_indirect index +(assert_invalid + (module + (type (func)) + (func (type 0)) + (table 0 anyfunc) + (func (call_indirect (type 0) (f32.const 0)))) + "type mismatch") + +;; return +(assert_invalid (module (func (result i32) (return (f32.const 0)))) "type mismatch") + +;; set_local +(assert_invalid (module (func (local i32) (set_local 0 (f32.const 0)))) "type mismatch") + +;; load index +(assert_invalid (module (memory 1) (func (i32.load (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.load8_s (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.load8_u (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.load16_s (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.load16_u (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.load (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.load8_s (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.load8_u (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.load16_s (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.load16_u (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.load32_s (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.load32_u (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (f32.load (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (f64.load (f32.const 0)))) "type mismatch") + +;; store index +(assert_invalid (module (memory 1) (func (i32.store (f32.const 0) (i32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.store8 (f32.const 0) (i32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.store16 (f32.const 0) (i32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store (f32.const 0) (i32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store8 (f32.const 0) (i64.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store16 (f32.const 0) (i64.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store32 (f32.const 0) (i64.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (f32.store (f32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (f64.store (f32.const 0) (f64.const 0)))) "type mismatch") + +;; store value +(assert_invalid (module (memory 1) (func (i32.store (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.store8 (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i32.store16 (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store8 (i32.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store16 (i32.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (i64.store32 (i32.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (f32.store (i32.const 0) (i32.const 0)))) "type mismatch") +(assert_invalid (module (memory 1) (func (f64.store (i32.const 0) (i64.const 0)))) "type mismatch") + +;; binary +(assert_invalid (module (func (i32.add (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.and (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.div_s (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.div_u (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.mul (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.or (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.rem_s (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.rem_u (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.rotl (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.rotr (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.shl (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.shr_s (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.shr_u (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.sub (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.xor (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.add (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.and (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.div_s (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.div_u (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.mul (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.or (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.rem_s (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.rem_u (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.rotl (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.rotr (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.shl (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.shr_s (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.shr_u (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.sub (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.xor (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.add (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.copysign (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.div (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.max (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.min (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.mul (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.sub (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.add (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.copysign (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.div (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.max (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.min (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.mul (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.sub (i64.const 0) (f32.const 0)))) "type mismatch") + +;; unary +(assert_invalid (module (func (i32.eqz (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.clz (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.ctz (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.popcnt (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.eqz (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.clz (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.ctz (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.popcnt (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.abs (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.ceil (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.floor (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.nearest (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.neg (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.sqrt (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.trunc (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.abs (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.ceil (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.floor (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.nearest (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.neg (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.sqrt (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.trunc (i64.const 0)))) "type mismatch") + +;; compare +(assert_invalid (module (func (i32.eq (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.ge_s (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.ge_u (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.gt_s (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.gt_u (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.le_s (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.le_u (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.lt_s (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.lt_u (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.ne (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.eq (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.ge_s (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.ge_u (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.gt_s (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.gt_u (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.le_s (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.le_u (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.lt_s (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.lt_u (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.ne (i32.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.eq (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.ge (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.gt (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.le (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.lt (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.ne (i64.const 0) (f64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.eq (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.ge (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.gt (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.le (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.lt (i64.const 0) (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.ne (i64.const 0) (f32.const 0)))) "type mismatch") + +;; convert +(assert_invalid (module (func (i32.wrap/i64 (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.trunc_s/f32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.trunc_u/f32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.trunc_s/f64 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.trunc_u/f64 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i32.reinterpret/f32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.extend_s/i32 (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.extend_u/i32 (f32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.trunc_s/f32 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.trunc_u/f32 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.trunc_s/f64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.trunc_u/f64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (i64.reinterpret/f64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.convert_s/i32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.convert_u/i32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.convert_s/i64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.convert_u/i64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.demote/f64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f32.reinterpret/i32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.convert_s/i32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.convert_u/i32 (i64.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.convert_s/i64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.convert_u/i64 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.promote/f32 (i32.const 0)))) "type mismatch") +(assert_invalid (module (func (f64.reinterpret/i64 (i32.const 0)))) "type mismatch") + +;; memory.grow +(assert_invalid (module (memory 1) (func (memory.grow (f32.const 0)))) "type mismatch") diff --git a/test/spec/unreachable.wast b/test/spec/unreachable.wast new file mode 100644 index 00000000000..d94d1f8a975 --- /dev/null +++ b/test/spec/unreachable.wast @@ -0,0 +1,291 @@ +;; Test `unreachable` operator + +(module + ;; Auxiliary definitions + (func $dummy) + (func $dummy3 (param i32 i32 i32)) + + (func (export "type-i32") (result i32) (unreachable)) + (func (export "type-i64") (result i32) (unreachable)) + (func (export "type-f32") (result f64) (unreachable)) + (func (export "type-f64") (result f64) (unreachable)) + + (func (export "as-func-first") (result i32) + (unreachable) (i32.const -1) + ) + (func (export "as-func-mid") (result i32) + (call $dummy) (unreachable) (i32.const -1) + ) + (func (export "as-func-last") + (call $dummy) (unreachable) + ) + (func (export "as-func-value") (result i32) + (call $dummy) (unreachable) + ) + + (func (export "as-block-first") (result i32) + (block (result i32) (unreachable) (i32.const 2)) + ) + (func (export "as-block-mid") (result i32) + (block (result i32) (call $dummy) (unreachable) (i32.const 2)) + ) + (func (export "as-block-last") + (block (nop) (call $dummy) (unreachable)) + ) + (func (export "as-block-value") (result i32) + (block (result i32) (nop) (call $dummy) (unreachable)) + ) + (func (export "as-block-broke") (result i32) + (block (result i32) (call $dummy) (br 0 (i32.const 1)) (unreachable)) + ) + + (func (export "as-loop-first") (result i32) + (loop (result i32) (unreachable) (i32.const 2)) + ) + (func (export "as-loop-mid") (result i32) + (loop (result i32) (call $dummy) (unreachable) (i32.const 2)) + ) + (func (export "as-loop-last") + (loop (nop) (call $dummy) (unreachable)) + ) + (func (export "as-loop-broke") (result i32) + (block (result i32) + (loop (result i32) (call $dummy) (br 1 (i32.const 1)) (unreachable)) + ) + ) + + (func (export "as-br-value") (result i32) + (block (result i32) (br 0 (unreachable))) + ) + + (func (export "as-br_if-cond") + (block (br_if 0 (unreachable))) + ) + (func (export "as-br_if-value") (result i32) + (block (result i32) + (drop (br_if 0 (unreachable) (i32.const 1))) (i32.const 7) + ) + ) + (func (export "as-br_if-value-cond") (result i32) + (block (result i32) + (drop (br_if 0 (i32.const 6) (unreachable))) (i32.const 7) + ) + ) + + (func (export "as-br_table-index") + (block (br_table 0 0 0 (unreachable))) + ) + (func (export "as-br_table-value") (result i32) + (block (result i32) + (br_table 0 0 0 (unreachable) (i32.const 1)) (i32.const 7) + ) + ) + (func (export "as-br_table-value-2") (result i32) + (block (result i32) + (block (result i32) (br_table 0 1 (unreachable) (i32.const 1))) + ) + ) + (func (export "as-br_table-value-index") (result i32) + (block (result i32) + (br_table 0 0 (i32.const 6) (unreachable)) (i32.const 7) + ) + ) + ;; NOT SUPPORTED IN BINARYEN + (;func (export "as-br_table-value-and-index") (result i32) + (block (result i32) (br_table 0 0 (unreachable)) (i32.const 8)) + ;) + + (func (export "as-return-value") (result i64) + (return (unreachable)) + ) + + (func (export "as-if-cond") (result i32) + (if (result i32) (unreachable) (then (i32.const 0)) (else (i32.const 1))) + ) + (func (export "as-if-then") (param i32 i32) (result i32) + (if (result i32) (get_local 0) (then (unreachable)) (else (get_local 1))) + ) + (func (export "as-if-else") (param i32 i32) (result i32) + (if (result i32) (get_local 0) (then (get_local 1)) (else (unreachable))) + ) + + (func (export "as-select-first") (param i32 i32) (result i32) + (select (unreachable) (get_local 0) (get_local 1)) + ) + (func (export "as-select-second") (param i32 i32) (result i32) + (select (get_local 0) (unreachable) (get_local 1)) + ) + (func (export "as-select-cond") (result i32) + (select (i32.const 0) (i32.const 1) (unreachable)) + ) + + (func (export "as-call-first") + (call $dummy3 (unreachable) (i32.const 2) (i32.const 3)) + ) + (func (export "as-call-mid") + (call $dummy3 (i32.const 1) (unreachable) (i32.const 3)) + ) + (func (export "as-call-last") + (call $dummy3 (i32.const 1) (i32.const 2) (unreachable)) + ) + + (type $sig (func (param i32 i32 i32))) + (table anyfunc (elem $dummy3)) + (func (export "as-call_indirect-func") + (call_indirect (type $sig) + (unreachable) (i32.const 1) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-first") + (call_indirect (type $sig) + (i32.const 0) (unreachable) (i32.const 2) (i32.const 3) + ) + ) + (func (export "as-call_indirect-mid") + (call_indirect (type $sig) + (i32.const 0) (i32.const 1) (unreachable) (i32.const 3) + ) + ) + (func (export "as-call_indirect-last") + (call_indirect (type $sig) + (i32.const 0) (i32.const 1) (i32.const 2) (unreachable) + ) + ) + + (func (export "as-set_local-value") (local f32) + (set_local 0 (unreachable)) + ) + + (memory 1) + (func (export "as-load-address") (result f32) + (f32.load (unreachable)) + ) + (func (export "as-loadN-address") (result i64) + (i64.load8_s (unreachable)) + ) + + (func (export "as-store-address") + (f64.store (unreachable) (f64.const 7)) + ) + (func (export "as-store-value") + (i64.store (i32.const 2) (unreachable)) + ) + + (func (export "as-storeN-address") + (i32.store8 (unreachable) (i32.const 7)) + ) + (func (export "as-storeN-value") + (i64.store16 (i32.const 2) (unreachable)) + ) + + (func (export "as-unary-operand") (result f32) + (f32.neg (unreachable)) + ) + + (func (export "as-binary-left") (result i32) + (i32.add (unreachable) (i32.const 10)) + ) + (func (export "as-binary-right") (result i64) + (i64.sub (i64.const 10) (unreachable)) + ) + + (func (export "as-test-operand") (result i32) + (i32.eqz (unreachable)) + ) + + (func (export "as-compare-left") (result i32) + (f64.le (unreachable) (f64.const 10)) + ) + (func (export "as-compare-right") (result i32) + (f32.ne (f32.const 10) (unreachable)) + ) + + (func (export "as-convert-operand") (result i32) + (i32.wrap/i64 (unreachable)) + ) + + (func (export "as-memory.grow-size") (result i32) + (memory.grow (unreachable)) + ) +) + +(assert_trap (invoke "type-i32") "unreachable") +(assert_trap (invoke "type-i64") "unreachable") +(assert_trap (invoke "type-f32") "unreachable") +(assert_trap (invoke "type-f64") "unreachable") + +(assert_trap (invoke "as-func-first") "unreachable") +(assert_trap (invoke "as-func-mid") "unreachable") +(assert_trap (invoke "as-func-last") "unreachable") +(assert_trap (invoke "as-func-value") "unreachable") + +(assert_trap (invoke "as-block-first") "unreachable") +(assert_trap (invoke "as-block-mid") "unreachable") +(assert_trap (invoke "as-block-last") "unreachable") +(assert_trap (invoke "as-block-value") "unreachable") +(assert_return (invoke "as-block-broke") (i32.const 1)) + +(assert_trap (invoke "as-loop-first") "unreachable") +(assert_trap (invoke "as-loop-mid") "unreachable") +(assert_trap (invoke "as-loop-last") "unreachable") +(assert_return (invoke "as-loop-broke") (i32.const 1)) + +(assert_trap (invoke "as-br-value") "unreachable") + +(assert_trap (invoke "as-br_if-cond") "unreachable") +(assert_trap (invoke "as-br_if-value") "unreachable") +(assert_trap (invoke "as-br_if-value-cond") "unreachable") + +(assert_trap (invoke "as-br_table-index") "unreachable") +(assert_trap (invoke "as-br_table-value") "unreachable") +(assert_trap (invoke "as-br_table-value-2") "unreachable") +(assert_trap (invoke "as-br_table-value-index") "unreachable") +(assert_trap (invoke "as-br_table-value-and-index") "unreachable") + +(assert_trap (invoke "as-return-value") "unreachable") + +(assert_trap (invoke "as-if-cond") "unreachable") +(assert_trap (invoke "as-if-then" (i32.const 1) (i32.const 6)) "unreachable") +(assert_return (invoke "as-if-then" (i32.const 0) (i32.const 6)) (i32.const 6)) +(assert_trap (invoke "as-if-else" (i32.const 0) (i32.const 6)) "unreachable") +(assert_return (invoke "as-if-else" (i32.const 1) (i32.const 6)) (i32.const 6)) + +(assert_trap (invoke "as-select-first" (i32.const 0) (i32.const 6)) "unreachable") +(assert_trap (invoke "as-select-first" (i32.const 1) (i32.const 6)) "unreachable") +(assert_trap (invoke "as-select-second" (i32.const 0) (i32.const 6)) "unreachable") +(assert_trap (invoke "as-select-second" (i32.const 1) (i32.const 6)) "unreachable") +(assert_trap (invoke "as-select-cond") "unreachable") + +(assert_trap (invoke "as-call-first") "unreachable") +(assert_trap (invoke "as-call-mid") "unreachable") +(assert_trap (invoke "as-call-last") "unreachable") + +(assert_trap (invoke "as-call_indirect-func") "unreachable") +(assert_trap (invoke "as-call_indirect-first") "unreachable") +(assert_trap (invoke "as-call_indirect-mid") "unreachable") +(assert_trap (invoke "as-call_indirect-last") "unreachable") + +(assert_trap (invoke "as-set_local-value") "unreachable") + +(assert_trap (invoke "as-load-address") "unreachable") +(assert_trap (invoke "as-loadN-address") "unreachable") + +(assert_trap (invoke "as-store-address") "unreachable") +(assert_trap (invoke "as-store-value") "unreachable") +(assert_trap (invoke "as-storeN-address") "unreachable") +(assert_trap (invoke "as-storeN-value") "unreachable") + +(assert_trap (invoke "as-unary-operand") "unreachable") + +(assert_trap (invoke "as-binary-left") "unreachable") +(assert_trap (invoke "as-binary-right") "unreachable") + +(assert_trap (invoke "as-test-operand") "unreachable") + +(assert_trap (invoke "as-compare-left") "unreachable") +(assert_trap (invoke "as-compare-right") "unreachable") + +(assert_trap (invoke "as-convert-operand") "unreachable") + +(assert_trap (invoke "as-memory.grow-size") "unreachable") + diff --git a/test/spec/unreached-invalid.wast b/test/spec/unreached-invalid.wast new file mode 100644 index 00000000000..0d5f7c85629 --- /dev/null +++ b/test/spec/unreached-invalid.wast @@ -0,0 +1,714 @@ +;; Failures in unreachable code. + +(assert_invalid + (module (func $local-index (unreachable) (drop (get_local 0)))) + "unknown local" +) +(assert_invalid + (module (func $global-index (unreachable) (drop (get_global 0)))) + "unknown global" +) +(assert_invalid + (module (func $func-index (unreachable) (call 1))) + "unknown function" +) +(assert_invalid + (module (func $label-index (unreachable) (br 1))) + "unknown label" +) + +(assert_invalid + (module (func $type-num-vs-num + (unreachable) (drop (i64.eqz (i32.const 0)))) + ) + "type mismatch" +) +(assert_invalid + (module (func $type-poly-num-vs-num (result i32) + (unreachable) (i64.const 0) (i32.const 0) (select) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-poly-transitive-num-vs-num (result i32) + (unreachable) + (i64.const 0) (i32.const 0) (select) + (i32.const 0) (i32.const 0) (select) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-unconsumed-const (unreachable) (i32.const 0))) + "type mismatch" +) +(assert_invalid + (module (func $type-unconsumed-result (unreachable) (i32.eqz))) + "type mismatch" +) +(assert_invalid + (module (func $type-unconsumed-result2 + (unreachable) (i32.const 0) (i32.add) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unconsumed-poly0 (unreachable) (select))) + "type mismatch" +) +(assert_invalid + (module (func $type-unconsumed-poly1 (unreachable) (i32.const 0) (select))) + "type mismatch" +) +(assert_invalid + (module (func $type-unconsumed-poly2 + (unreachable) (i32.const 0) (i32.const 0) (select) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-unary-num-vs-void-after-break + (block (br 0) (block (drop (i32.eqz (nop))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-num-after-break + (block (br 0) (drop (i32.eqz (f32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-void-after-break + (block (br 0) (block (drop (f32.eq (i32.const 1))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-num-after-break + (block (br 0) (drop (f32.eq (i32.const 1) (f32.const 0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-void-after-break + (block (br 0) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-num-after-break (result i32) + (block (result i32) (i32.const 1) (br 0) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-void-after-break + (block (loop (br 1) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-num-after-break (result i32) + (loop (result i32) (br 1 (i32.const 1)) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-void-after-break + (br 0) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-num-after-break (result i32) + (br 0 (i32.const 1)) (f32.const 0) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-unary-num-vs-void-after-return + (return) (block (drop (i32.eqz (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-num-after-return + (return) (drop (i32.eqz (f32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-void-after-return + (return) (block (drop (f32.eq (i32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-num-after-return + (return) (drop (f32.eq (i32.const 1) (f32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-void-after-return + (block (return) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-num-after-return (result i32) + (block (result i32) (i32.const 1) (return (i32.const 0)) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-void-after-return + (block (loop (return) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-num-after-return (result i32) + (loop (result i32) (return (i32.const 1)) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-void-after-return + (return) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-num-after-return (result i32) + (return (i32.const 1)) (f32.const 0) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-unary-num-vs-void-after-unreachable + (unreachable) (block (drop (i32.eqz (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-void-in-loop-after-unreachable + (unreachable) (loop (drop (i32.eqz (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-void-in-i32-loop-after-unreachable + (unreachable) (loop (result i32) (i32.eqz (nop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-num-after-unreachable + (unreachable) (drop (i32.eqz (f32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-void-after-unreachable + (unreachable) (block (drop (f32.eq (i32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-num-after-unreachable + (unreachable) (drop (f32.eq (i32.const 1) (f32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-void-after-unreachable + (block (unreachable) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-num-after-unreachable (result i32) + (block (result i32) (i32.const 1) (unreachable) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-void-after-unreachable + (block (loop (unreachable) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-num-after-unreachable (result i32) + (loop (result i32) (unreachable) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-void-after-unreachable + (unreachable) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-num-after-unreachable (result i32) + (unreachable) (f32.const 0) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-void-in-if-after-unreachable + (unreachable) (if (i32.const 0) (then (drop (i32.eqz (nop))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-void-in-else-after-unreachable + (unreachable) (if (i32.const 0) (then (nop)) (else (drop (i32.eqz (nop))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-void-in-else-after-unreachable-if + (if (i32.const 0) (then (unreachable)) (else (drop (i32.eqz (nop))))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-unary-num-vs-void-after-nested-unreachable + (block (unreachable)) (block (drop (i32.eqz (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-num-after-nested-unreachable + (block (unreachable)) (drop (i32.eqz (f32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-void-after-nested-unreachable + (block (unreachable)) (block (drop (f32.eq (i32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-num-after-nested-unreachable + (block (unreachable)) (drop (f32.eq (i32.const 1) (f32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-void-after-nested-unreachable + (block (block (unreachable)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-num-after-nested-unreachable + (result i32) + (block (result i32) (i32.const 1) (block (unreachable)) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-void-after-nested-unreachable + (block (loop (block (unreachable)) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-num-after-nested-unreachable + (result i32) + (loop (result i32) (block (unreachable)) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-void-after-nested-unreachable + (block (unreachable)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-num-after-nested-unreachable + (result i32) + (block (unreachable)) (f32.const 0) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-unary-num-vs-void-after-infinite-loop + (loop (br 0)) (block (drop (i32.eqz (nop)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-num-after-infinite-loop + (loop (br 0)) (drop (i32.eqz (f32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-void-after-infinite-loop + (loop (br 0)) (block (drop (f32.eq (i32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-num-after-infinite-loop + (loop (br 0)) (drop (f32.eq (i32.const 1) (f32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-void-after-infinite-loop + (block (loop (br 0)) (i32.const 1)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-num-after-infinite-loop (result i32) + (block (result i32) (i32.const 1) (loop (br 0)) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-void-after-infinite-loop + (block (loop (loop (br 0)) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-loop-value-num-vs-num-after-infinite-loop (result i32) + (loop (result i32) (loop (br 0)) (f32.const 0)) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-void-after-infinite-loop + (loop (br 0)) (i32.const 1) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-func-value-num-vs-num-after-infinite-loop (result i32) + (loop (br 0)) (f32.const 0) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-unary-num-vs-void-in-dead-body + (if (i32.const 0) (then (drop (i32.eqz (nop))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-unary-num-vs-num-in-dead-body + (if (i32.const 0) (then (drop (i32.eqz (f32.const 1))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-void-in-dead-body + (if (i32.const 0) (then (drop (f32.eq (i32.const 1))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-binary-num-vs-num-in-dead-body + (if (i32.const 0) (then (drop (f32.eq (i32.const 1) (f32.const 0))))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-if-value-num-vs-void-in-dead-body + (if (i32.const 0) (then (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-if-value-num-vs-num-in-dead-body (result i32) + (if (result i32) (i32.const 0) (then (f32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-void-in-dead-body + (if (i32.const 0) (then (block (i32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-num-in-dead-body (result i32) + (if (result i32) (i32.const 0) (then (block (result i32) (f32.const 0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-void-in-dead-body + (if (i32.const 0) (then (loop (i32.const 1)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-num-vs-num-in-dead-body (result i32) + (if (result i32) (i32.const 0) (then (loop (result i32) (f32.const 0)))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-return-second-num-vs-num (result i32) + (return (i32.const 1)) (return (f64.const 1)) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-br-second-num-vs-num (result i32) + (block (result i32) (br 0 (i32.const 1)) (br 0 (f64.const 1))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-br_if-cond-num-vs-num-after-unreachable + (block (br_if 0 (unreachable) (f32.const 0))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br_if-num-vs-void-after-unreachable (result i32) + (block (result i32) + (block (unreachable) (br_if 1 (i32.const 0) (i32.const 0))) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br_if-num-vs-num-after-unreachable (result i32) + (block (result i32) + (block (result f32) (unreachable) (br_if 1 (i32.const 0) (i32.const 0))) + (drop) (i32.const 0) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br_if-num2-vs-num-after-unreachable (result i32) + (block (result i32) + (unreachable) (br_if 0 (i32.const 0) (i32.const 0)) (i32.const 0) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br_table-num-vs-num-after-unreachable + (block (br_table 0 (unreachable) (f32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br_table-label-num-vs-num-after-unreachable (result i32) + (block (result i32) (unreachable) (br_table 0 (f32.const 0) (i32.const 1))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br_table-label-num-vs-label-void-after-unreachable + (block + (block (result f32) + (unreachable) + (br_table 0 1 0 (i32.const 1)) + ) + (drop) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-br_table-label-num-vs-label-num-after-unreachable + (block (result f64) + (block (result f32) + (unreachable) + (br_table 0 1 1 (i32.const 1)) + ) + (drop) + (f64.const 0) + ) + (drop) + )) + "type mismatch" +) + +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module (func $type-block-value-nested-unreachable-num-vs-void + (block (i32.const 3) (block (unreachable))) + )) + "type mismatch" +;) +(;assert_invalid + (module (func $type-block-value-nested-unreachable-void-vs-num (result i32) + (block (block (unreachable))) + )) + "type mismatch" +;) +(assert_invalid + (module (func $type-block-value-nested-unreachable-num-vs-num (result i32) + (block (result i64) (i64.const 0) (block (unreachable))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-nested-unreachable-num2-vs-void (result i32) + (block (i32.const 3) (block (i64.const 1) (unreachable))) (i32.const 9) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-block-value-nested-br-num-vs-void + (block (i32.const 3) (block (br 1))) + )) + "type mismatch" +) +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module (func $type-block-value-nested-br-void-vs-num (result i32) + (block (result i32) (block (br 1 (i32.const 0)))) + )) + "type mismatch" +;) +(assert_invalid + (module (func $type-block-value-nested-br-num-vs-num (result i32) + (block (result i32) (i64.const 0) (block (br 1 (i32.const 0)))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-block-value-nested2-br-num-vs-void + (block (block (i32.const 3) (block (br 2)))) + )) + "type mismatch" +) +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module (func $type-block-value-nested2-br-void-vs-num (result i32) + (block (result i32) (block (block (br 2 (i32.const 0))))) + )) + "type mismatch" +;) +(assert_invalid + (module (func $type-block-value-nested2-br-num-vs-num (result i32) + (block (result i32) + (block (result i64) (i64.const 0) (block (br 2 (i32.const 0)))) + ) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-nested2-br-num2-vs-void (result i32) + (block (i32.const 3) (block (i64.const 1) (br 1))) (i32.const 9) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-block-value-nested-return-num-vs-void + (block (i32.const 3) (block (return))) + )) + "type mismatch" +) +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module (func $type-block-value-nested-return-void-vs-num (result i32) + (block (block (return (i32.const 0)))) + )) + "type mismatch" +;) +(assert_invalid + (module (func $type-block-value-nested-return-num-vs-num (result i32) + (block (result i64) (i64.const 0) (block (return (i32.const 0)))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-block-value-nested-return-num2-vs-void (result i32) + (block (i32.const 3) (block (i64.const 1) (return (i32.const 0)))) + (i32.const 9) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-loop-value-nested-unreachable-num-vs-void + (loop (i32.const 3) (block (unreachable))) + )) + "type mismatch" +) +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module (func $type-loop-value-nested-unreachable-void-vs-num (result i32) + (loop (block (unreachable))) + )) + "type mismatch" +;) +(assert_invalid + (module (func $type-loop-value-nested-unreachable-num-vs-num (result i32) + (loop (result i64) (i64.const 0) (block (unreachable))) + )) + "type mismatch" +) + +(assert_invalid + (module (func $type-cont-last-void-vs-empty (result i32) + (loop (br 0 (nop))) + )) + "type mismatch" +) +(assert_invalid + (module (func $type-cont-last-num-vs-empty (result i32) + (loop (br 0 (i32.const 0))) + )) + "type mismatch" +) +;; NOT SUPPORTED IN BINARYEN +(;assert_invalid + (module (func $tee-local-unreachable-value + (local i32) + (tee_local 0 (unreachable)) + )) + "type mismatch" +;) +(;assert_invalid + (module (func $br_if-unreachable (result i32) + (block (result i32) + (block + (br_if 1 (unreachable) (i32.const 0)) + ) + (i32.const 0) + ) + )) + "type mismatch" +;) +(assert_invalid + (module + (func $type-br_if-after-unreachable (result i64) + unreachable + br_if 0 + i64.extend_u/i32 + ) + ) + "type mismatch" +) diff --git a/test/spec/unwind.wast b/test/spec/unwind.wast new file mode 100644 index 00000000000..85db60b595e --- /dev/null +++ b/test/spec/unwind.wast @@ -0,0 +1,267 @@ +;; Test that control-flow transfer unwinds stack and it can be anything after. + +(module + (func (export "func-unwind-by-unreachable") + (i32.const 3) (i64.const 1) (unreachable) + ) + (func (export "func-unwind-by-br") + (i32.const 3) (i64.const 1) (br 0) + ) + (func (export "func-unwind-by-br-value") (result i32) + (i32.const 3) (i64.const 1) (br 0 (i32.const 9)) + ) + (func (export "func-unwind-by-br_if") + (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 1)))) + ) + (func (export "func-unwind-by-br_if-value") (result i32) + (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 9) (i32.const 1)))) + ) + (func (export "func-unwind-by-br_table") + (i32.const 3) (i64.const 1) (br_table 0 (i32.const 0)) + ) + (func (export "func-unwind-by-br_table-value") (result i32) + (i32.const 3) (i64.const 1) (br_table 0 (i32.const 9) (i32.const 0)) + ) + (func (export "func-unwind-by-return") (result i32) + (i32.const 3) (i64.const 1) (return (i32.const 9)) + ) + + (func (export "block-unwind-by-unreachable") + (block (i32.const 3) (i64.const 1) (unreachable)) + ) + (func (export "block-unwind-by-br") (result i32) + (block (i32.const 3) (i64.const 1) (br 0)) (i32.const 9) + ) + (func (export "block-unwind-by-br-value") (result i32) + (block (result i32) (i32.const 3) (i64.const 1) (br 0 (i32.const 9))) + ) + (func (export "block-unwind-by-br_if") (result i32) + (block (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 1))))) (i32.const 9) + ) + (func (export "block-unwind-by-br_if-value") (result i32) + (block (result i32) + (i32.const 3) (i64.const 1) (drop (drop (br_if 0 (i32.const 9) (i32.const 1)))) + ) + ) + (func (export "block-unwind-by-br_table") (result i32) + (block (i32.const 3) (i64.const 1) (br_table 0 (i32.const 0))) (i32.const 9) + ) + (func (export "block-unwind-by-br_table-value") (result i32) + (block (result i32) + (i32.const 3) (i64.const 1) (br_table 0 (i32.const 9) (i32.const 0)) + ) + ) + (func (export "block-unwind-by-return") (result i32) + (block (result i32) (i32.const 3) (i64.const 1) (return (i32.const 9))) + ) + + (func (export "block-nested-unwind-by-unreachable") (result i32) + (block (result i32) (i32.const 3) (block (i64.const 1) (unreachable))) + ) + (func (export "block-nested-unwind-by-br") (result i32) + (block (i32.const 3) (block (i64.const 1) (br 1)) (drop)) (i32.const 9) + ) + (func (export "block-nested-unwind-by-br-value") (result i32) + (block (result i32) + (i32.const 3) (block (i64.const 1) (br 1 (i32.const 9))) + ) + ) + (func (export "block-nested-unwind-by-br_if") (result i32) + (block (i32.const 3) (block (i64.const 1) (drop (br_if 1 (i32.const 1)))) (drop)) (i32.const 9) + ) + (func (export "block-nested-unwind-by-br_if-value") (result i32) + (block (result i32) + (i32.const 3) (block (i64.const 1) (drop (drop (br_if 1 (i32.const 9) (i32.const 1))))) + ) + ) + (func (export "block-nested-unwind-by-br_table") (result i32) + (block + (i32.const 3) (block (i64.const 1) (br_table 1 (i32.const 1))) + (drop) + ) + (i32.const 9) + ) + (func (export "block-nested-unwind-by-br_table-value") (result i32) + (block (result i32) + (i32.const 3) + (block (i64.const 1) (br_table 1 (i32.const 9) (i32.const 1))) + ) + ) + (func (export "block-nested-unwind-by-return") (result i32) + (block (result i32) + (i32.const 3) (block (i64.const 1) (return (i32.const 9))) + ) + ) + + (func (export "unary-after-unreachable") (result i32) + (f32.const 0) (unreachable) (i64.eqz) + ) + (func (export "unary-after-br") (result i32) + (block (result i32) (f32.const 0) (br 0 (i32.const 9)) (i64.eqz)) + ) + (func (export "unary-after-br_if") (result i32) + (block (result i32) + (i64.const 0) (drop (br_if 0 (i32.const 9) (i32.const 1))) (i64.eqz) + ) + ) + (func (export "unary-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (br_table 0 0 (i32.const 9) (i32.const 0)) (i64.eqz) + ) + ) + (func (export "unary-after-return") (result i32) + (f32.const 0) (return (i32.const 9)) (i64.eqz) + ) + + (func (export "binary-after-unreachable") (result i32) + (f32.const 0) (f64.const 1) (unreachable) (i64.eq) + ) + (func (export "binary-after-br") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (br 0 (i32.const 9)) (i64.eq) + ) + ) + (func (export "binary-after-br_if") (result i32) + (block (result i32) + (i64.const 0) (i64.const 1) (drop (br_if 0 (i32.const 9) (i32.const 1))) + (i64.eq) + ) + ) + (func (export "binary-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (br_table 0 (i32.const 9) (i32.const 0)) + (i64.eq) + ) + ) + (func (export "binary-after-return") (result i32) + (f32.const 0) (f64.const 1) (return (i32.const 9)) (i64.eq) + ) + + (func (export "select-after-unreachable") (result i32) + (f32.const 0) (f64.const 1) (i64.const 0) (unreachable) (select) + ) + (func (export "select-after-br") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (i64.const 0) (br 0 (i32.const 9)) (select) + ) + ) + (func (export "select-after-br_if") (result i32) + (block (result i32) + (i32.const 0) (i32.const 1) (i32.const 0) + (drop (br_if 0 (i32.const 9) (i32.const 1))) + (select) + ) + ) + (func (export "select-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (f64.const 1) (i64.const 0) + (br_table 0 (i32.const 9) (i32.const 0)) + (select) + ) + ) + (func (export "select-after-return") (result i32) + (f32.const 0) (f64.const 1) (i64.const 1) (return (i32.const 9)) (select) + ) + + (func (export "block-value-after-unreachable") (result i32) + (block (result i32) (f32.const 0) (unreachable)) + ) + (func (export "block-value-after-br") (result i32) + (block (result i32) (f32.const 0) (br 0 (i32.const 9))) + ) + (func (export "block-value-after-br_if") (result i32) + (block (result i32) + (i32.const 0) (drop (br_if 0 (i32.const 9) (i32.const 1))) + ) + ) + (func (export "block-value-after-br_table") (result i32) + (block (result i32) + (f32.const 0) (br_table 0 0 (i32.const 9) (i32.const 0)) + ) + ) + (func (export "block-value-after-return") (result i32) + (block (result i32) (f32.const 0) (return (i32.const 9))) + ) + + (func (export "loop-value-after-unreachable") (result i32) + (loop (result i32) (f32.const 0) (unreachable)) + ) + (func (export "loop-value-after-br") (result i32) + (block (result i32) (loop (result i32) (f32.const 0) (br 1 (i32.const 9)))) + ) + (func (export "loop-value-after-br_if") (result i32) + (block (result i32) + (loop (result i32) + (i32.const 0) (drop (br_if 1 (i32.const 9) (i32.const 1))) + ) + ) + ) + + (func (export "loop-value-after-br_table") (result i32) + (block (result i32) + (loop (result i32) + (f32.const 0) (br_table 1 1 (i32.const 9) (i32.const 0)) + ) + ) + ) + (func (export "loop-value-after-return") (result i32) + (loop (result i32) (f32.const 0) (return (i32.const 9))) + ) +) + +(assert_trap (invoke "func-unwind-by-unreachable") "unreachable") +(assert_return (invoke "func-unwind-by-br")) +(assert_return (invoke "func-unwind-by-br-value") (i32.const 9)) +(assert_return (invoke "func-unwind-by-br_if")) +(assert_return (invoke "func-unwind-by-br_if-value") (i32.const 9)) +(assert_return (invoke "func-unwind-by-br_table")) +(assert_return (invoke "func-unwind-by-br_table-value") (i32.const 9)) +(assert_return (invoke "func-unwind-by-return") (i32.const 9)) + +(assert_trap (invoke "block-unwind-by-unreachable") "unreachable") +(assert_return (invoke "block-unwind-by-br") (i32.const 9)) +(assert_return (invoke "block-unwind-by-br-value") (i32.const 9)) +(assert_return (invoke "block-unwind-by-br_if") (i32.const 9)) +(assert_return (invoke "block-unwind-by-br_if-value") (i32.const 9)) +(assert_return (invoke "block-unwind-by-br_table") (i32.const 9)) +(assert_return (invoke "block-unwind-by-br_table-value") (i32.const 9)) +(assert_return (invoke "block-unwind-by-return") (i32.const 9)) + +(assert_trap (invoke "block-nested-unwind-by-unreachable") "unreachable") +(assert_return (invoke "block-nested-unwind-by-br") (i32.const 9)) +(assert_return (invoke "block-nested-unwind-by-br-value") (i32.const 9)) +(assert_return (invoke "block-nested-unwind-by-br_if") (i32.const 9)) +(assert_return (invoke "block-nested-unwind-by-br_if-value") (i32.const 9)) +(assert_return (invoke "block-nested-unwind-by-br_table") (i32.const 9)) +(assert_return (invoke "block-nested-unwind-by-br_table-value") (i32.const 9)) +(assert_return (invoke "block-nested-unwind-by-return") (i32.const 9)) + +(assert_trap (invoke "unary-after-unreachable") "unreachable") +(assert_return (invoke "unary-after-br") (i32.const 9)) +(assert_return (invoke "unary-after-br_if") (i32.const 9)) +(assert_return (invoke "unary-after-br_table") (i32.const 9)) +(assert_return (invoke "unary-after-return") (i32.const 9)) + +(assert_trap (invoke "binary-after-unreachable") "unreachable") +(assert_return (invoke "binary-after-br") (i32.const 9)) +(assert_return (invoke "binary-after-br_if") (i32.const 9)) +(assert_return (invoke "binary-after-br_table") (i32.const 9)) +(assert_return (invoke "binary-after-return") (i32.const 9)) + +(assert_trap (invoke "select-after-unreachable") "unreachable") +(assert_return (invoke "select-after-br") (i32.const 9)) +(assert_return (invoke "select-after-br_if") (i32.const 9)) +(assert_return (invoke "select-after-br_table") (i32.const 9)) +(assert_return (invoke "select-after-return") (i32.const 9)) + +(assert_trap (invoke "block-value-after-unreachable") "unreachable") +(assert_return (invoke "block-value-after-br") (i32.const 9)) +(assert_return (invoke "block-value-after-br_if") (i32.const 9)) +(assert_return (invoke "block-value-after-br_table") (i32.const 9)) +(assert_return (invoke "block-value-after-return") (i32.const 9)) + +(assert_trap (invoke "loop-value-after-unreachable") "unreachable") +(assert_return (invoke "loop-value-after-br") (i32.const 9)) +(assert_return (invoke "loop-value-after-br_if") (i32.const 9)) +(assert_return (invoke "loop-value-after-br_table") (i32.const 9)) +(assert_return (invoke "loop-value-after-return") (i32.const 9)) diff --git a/test/spec/update-testsuite.sh b/test/spec/update-testsuite.sh new file mode 100755 index 00000000000..07440a29c9c --- /dev/null +++ b/test/spec/update-testsuite.sh @@ -0,0 +1,127 @@ +#!/bin/bash +set -e +set -u +set -o pipefail + +repos='spec threads simd exception-handling gc bulk-memory-operations tail-call nontrapping-float-to-int-conversions multi-value host-bindings sign-extension-ops mutable-global' + +log_and_run() { + echo ">>" $* + if ! $*; then + echo "sub-command failed: $*" + exit + fi +} + +try_log_and_run() { + echo ">>" $* + $* +} + +pushdir() { + pushd $1 >/dev/null || exit +} + +popdir() { + popd >/dev/null || exit +} + +update_repo() { + local repo=$1 + pushdir repos + if [ -d ${repo} ]; then + log_and_run git -C ${repo} fetch origin + log_and_run git -C ${repo} reset origin/master --hard + else + log_and_run git clone https://github.com/WebAssembly/${repo} + fi + + # Add upstream spec as "spec" remote. + if [ "${repo}" != "spec" ]; then + pushdir ${repo} + if ! git remote | grep spec >/dev/null; then + log_and_run git remote add spec https://github.com/WebAssembly/spec + fi + + log_and_run git fetch spec + popdir + fi + popdir +} + +merge_with_spec() { + local repo=$1 + + [ "${repo}" == "spec" ] && return + + pushdir repos/${repo} + # Create and checkout "try-merge" branch. + if ! git branch | grep try-merge >/dev/null; then + log_and_run git branch try-merge origin/master + fi + log_and_run git checkout try-merge + + # Attempt to merge with spec/master. + log_and_run git reset origin/master --hard + try_log_and_run git merge -q spec/master -m "merged" + if [ $? -ne 0 ]; then + git merge --abort + popdir + return 1 + fi + popdir + return 0 +} + + +echo -e "update repos\n" > commit_message + +failed_repos= + +for repo in ${repos}; do + echo "++ updating ${repo}" + update_repo ${repo} + + if ! merge_with_spec ${repo}; then + echo -e "!! error merging ${repo}, skipping\n" + failed_repos="${failed_repos} ${repo}" + continue + fi + + if [ "${repo}" = "spec" ]; then + wast_dir=. + log_and_run cp repos/${repo}/test/core/*.wast ${wast_dir} + else + wast_dir=proposals/${repo} + mkdir -p ${wast_dir} + + # Don't add tests from propsoal that are the same as spec. + pushdir repos/${repo} + for new in test/core/*.wast; do + old=../../repos/spec/${new} + if [[ ! -f ${old} ]] || ! diff ${old} ${new} >/dev/null; then + log_and_run cp ${new} ../../${wast_dir} + fi + done + popdir + fi + + # Check whether any files were updated. + if [ $(git status -s ${wast_dir}/*.wast | wc -l) -ne 0 ]; then + log_and_run git add ${wast_dir}/*.wast + + repo_sha=$(git -C repos/${repo} log --max-count=1 --pretty=oneline | sed -e 's/ .*//') + echo " ${repo}: ${repo_sha}" >> commit_message + fi + + echo -e "-- ${repo}\n" +done + +git commit -a -F commit_message +# git push + +echo "done" + +if [ -n "${failed_repos}" ]; then + echo "!! failed to update repos: ${failed_repos}" +fi diff --git a/test/spec/utf8-custom-section-id.wast b/test/spec/utf8-custom-section-id.wast new file mode 100644 index 00000000000..1ec2a8631ff --- /dev/null +++ b/test/spec/utf8-custom-section-id.wast @@ -0,0 +1,1794 @@ +(; NOT SUPPORTED IN BINARYEN +;;;;;; Invalid UTF-8 custom section names + +;;;; Continuation bytes not preceded by prefixes + +;; encoding starts with (first) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\80" ;; "\80" + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x8f) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\8f" ;; "\8f" + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x90) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\90" ;; "\90" + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x9f) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\9f" ;; "\9f" + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0xa0) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\a0" ;; "\a0" + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (last) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\bf" ;; "\bf" + ) + "invalid UTF-8 encoding" +) + +;;;; 2-byte sequences + +;; 2-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\c2\80\80" ;; "\c2\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 2-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\c2" ;; "\c2" + ) + "invalid UTF-8 encoding" +) + +;; 2-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c2\2e" ;; "\c2." + ) + "invalid UTF-8 encoding" +) + +;;;; 2-byte sequence contents + +;; overlong encoding after 0xc0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c0\80" ;; "\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c0\bf" ;; "\c0\bf" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc1 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c1\80" ;; "\c1\80" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc1 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c1\bf" ;; "\c1\bf" + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a contination byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c2\00" ;; "\c2\00" + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c2\7f" ;; "\c2\7f" + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c2\c0" ;; "\c2\c0" + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\c2\fd" ;; "\c2\fd" + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\df\00" ;; "\df\00" + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\df\7f" ;; "\df\7f" + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\df\c0" ;; "\df\c0" + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\df\fd" ;; "\df\fd" + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequences + +;; 3-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\e1\80\80\80" ;; "\e1\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\e1\80" ;; "\e1\80" + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\80\2e" ;; "\e1\80." + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\e1" ;; "\e1" + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\e1\2e" ;; "\e1." + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequence contents + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\00\a0" ;; "\e0\00\a0" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\7f\a0" ;; "\e0\7f\a0" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\80\80" ;; "\e0\80\80" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\80\a0" ;; "\e0\80\a0" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\9f\a0" ;; "\e0\9f\a0" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\9f\bf" ;; "\e0\9f\bf" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\c0\a0" ;; "\e0\c0\a0" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\fd\a0" ;; "\e0\fd\a0" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\00\80" ;; "\e1\00\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\7f\80" ;; "\e1\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\c0\80" ;; "\e1\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\fd\80" ;; "\e1\fd\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\00\80" ;; "\ec\00\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\7f\80" ;; "\ec\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\c0\80" ;; "\ec\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\fd\80" ;; "\ec\fd\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\00\80" ;; "\ed\00\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\7f\80" ;; "\ed\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\a0\80" ;; "\ed\a0\80" + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\a0\bf" ;; "\ed\a0\bf" + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\bf\80" ;; "\ed\bf\80" + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\bf\bf" ;; "\ed\bf\bf" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\c0\80" ;; "\ed\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\fd\80" ;; "\ed\fd\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\00\80" ;; "\ee\00\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\7f\80" ;; "\ee\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\c0\80" ;; "\ee\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\fd\80" ;; "\ee\fd\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\00\80" ;; "\ef\00\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\7f\80" ;; "\ef\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\c0\80" ;; "\ef\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\fd\80" ;; "\ef\fd\80" + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequence contents (third byte) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\a0\00" ;; "\e0\a0\00" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\a0\7f" ;; "\e0\a0\7f" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\a0\c0" ;; "\e0\a0\c0" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e0\a0\fd" ;; "\e0\a0\fd" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\80\00" ;; "\e1\80\00" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\80\7f" ;; "\e1\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\80\c0" ;; "\e1\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\e1\80\fd" ;; "\e1\80\fd" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\80\00" ;; "\ec\80\00" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\80\7f" ;; "\ec\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\80\c0" ;; "\ec\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ec\80\fd" ;; "\ec\80\fd" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\80\00" ;; "\ed\80\00" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\80\7f" ;; "\ed\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\80\c0" ;; "\ed\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ed\80\fd" ;; "\ed\80\fd" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\80\00" ;; "\ee\80\00" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\80\7f" ;; "\ee\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\80\c0" ;; "\ee\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ee\80\fd" ;; "\ee\80\fd" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\80\00" ;; "\ef\80\00" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\80\7f" ;; "\ef\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\80\c0" ;; "\ef\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\ef\80\fd" ;; "\ef\80\fd" + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequences + +;; 4-byte sequence contains 5 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\06" ;; custom section + "\05\f1\80\80\80\80" ;; "\f1\80\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\f1\80\80" ;; "\f1\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\80\23" ;; "\f1\80\80#" + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\f1\80" ;; "\f1\80" + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\f1\80\23" ;; "\f1\80#" + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\f1" ;; "\f1" + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\f1\23" ;; "\f1#" + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\00\90\90" ;; "\f0\00\90\90" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\7f\90\90" ;; "\f0\7f\90\90" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\80\80\80" ;; "\f0\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\80\90\90" ;; "\f0\80\90\90" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\8f\90\90" ;; "\f0\8f\90\90" + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\8f\bf\bf" ;; "\f0\8f\bf\bf" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\c0\90\90" ;; "\f0\c0\90\90" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\fd\90\90" ;; "\f0\fd\90\90" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\00\80\80" ;; "\f1\00\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\7f\80\80" ;; "\f1\7f\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\c0\80\80" ;; "\f1\c0\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\fd\80\80" ;; "\f1\fd\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\00\80\80" ;; "\f3\00\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\7f\80\80" ;; "\f3\7f\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\c0\80\80" ;; "\f3\c0\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\fd\80\80" ;; "\f3\fd\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\00\80\80" ;; "\f4\00\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\7f\80\80" ;; "\f4\7f\80\80" + ) + "invalid UTF-8 encoding" +) + +;; (first) invalid code point +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\90\80\80" ;; "\f4\90\80\80" + ) + "invalid UTF-8 encoding" +) + +;; invalid code point +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\bf\80\80" ;; "\f4\bf\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\c0\80\80" ;; "\f4\c0\80\80" + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\fd\80\80" ;; "\f4\fd\80\80" + ) + "invalid UTF-8 encoding" +) + +;; (first) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f5\80\80\80" ;; "\f5\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f7\80\80\80" ;; "\f7\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f7\bf\bf\bf" ;; "\f7\bf\bf\bf" + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents (third byte) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\00\90" ;; "\f0\90\00\90" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\7f\90" ;; "\f0\90\7f\90" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\c0\90" ;; "\f0\90\c0\90" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\fd\90" ;; "\f0\90\fd\90" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\00\80" ;; "\f1\80\00\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\7f\80" ;; "\f1\80\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\c0\80" ;; "\f1\80\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\fd\80" ;; "\f1\80\fd\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\00\80" ;; "\f3\80\00\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\7f\80" ;; "\f3\80\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\c0\80" ;; "\f3\80\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\fd\80" ;; "\f3\80\fd\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\00\80" ;; "\f4\80\00\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\7f\80" ;; "\f4\80\7f\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\c0\80" ;; "\f4\80\c0\80" + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\fd\80" ;; "\f4\80\fd\80" + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents (fourth byte) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\90\00" ;; "\f0\90\90\00" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\90\7f" ;; "\f0\90\90\7f" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\90\c0" ;; "\f0\90\90\c0" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f0\90\90\fd" ;; "\f0\90\90\fd" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\80\00" ;; "\f1\80\80\00" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\80\7f" ;; "\f1\80\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\80\c0" ;; "\f1\80\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f1\80\80\fd" ;; "\f1\80\80\fd" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\80\00" ;; "\f3\80\80\00" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\80\7f" ;; "\f3\80\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\80\c0" ;; "\f3\80\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f3\80\80\fd" ;; "\f3\80\80\fd" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\80\00" ;; "\f4\80\80\00" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\80\7f" ;; "\f4\80\80\7f" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\80\c0" ;; "\f4\80\80\c0" + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f4\80\80\fd" ;; "\f4\80\80\fd" + ) + "invalid UTF-8 encoding" +) + +;;;; 5-byte sequences + +;; 5-byte sequence contains 6 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\07" ;; custom section + "\06\f8\80\80\80\80\80" ;; "\f8\80\80\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 4 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f8\80\80\80" ;; "\f8\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\06" ;; custom section + "\05\f8\80\80\80\23" ;; "\f8\80\80\80#" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\f8\80\80" ;; "\f8\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\f8\80\80\23" ;; "\f8\80\80#" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\f8\80" ;; "\f8\80" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\f8\80\23" ;; "\f8\80#" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\f8" ;; "\f8" + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\f8\23" ;; "\f8#" + ) + "invalid UTF-8 encoding" +) + +;;;; 5-byte sequence contents + +;; (first) invalid 5-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\06" ;; custom section + "\05\f8\80\80\80\80" ;; "\f8\80\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 5-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\06" ;; custom section + "\05\fb\bf\bf\bf\bf" ;; "\fb\bf\bf\bf\bf" + ) + "invalid UTF-8 encoding" +) + +;;;; 6-byte sequences + +;; 6-byte sequence contains 7 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\08" ;; custom section + "\07\fc\80\80\80\80\80\80" ;; "\fc\80\80\80\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 5 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\06" ;; custom section + "\05\fc\80\80\80\80" ;; "\fc\80\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 5 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\07" ;; custom section + "\06\fc\80\80\80\80\23" ;; "\fc\80\80\80\80#" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 4 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\fc\80\80\80" ;; "\fc\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\06" ;; custom section + "\05\fc\80\80\80\23" ;; "\fc\80\80\80#" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\fc\80\80" ;; "\fc\80\80" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\fc\80\80\23" ;; "\fc\80\80#" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\fc\80" ;; "\fc\80" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\04" ;; custom section + "\03\fc\80\23" ;; "\fc\80#" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\fc" ;; "\fc" + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\fc\23" ;; "\fc#" + ) + "invalid UTF-8 encoding" +) + +;;;; 6-byte sequence contents + +;; (first) invalid 6-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\07" ;; custom section + "\06\fc\80\80\80\80\80" ;; "\fc\80\80\80\80\80" + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 6-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\07" ;; custom section + "\06\fd\bf\bf\bf\bf\bf" ;; "\fd\bf\bf\bf\bf\bf" + ) + "invalid UTF-8 encoding" +) + +;;;; Miscellaneous invalid bytes + +;; invalid byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\fe" ;; "\fe" + ) + "invalid UTF-8 encoding" +) + +;; invalid byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\02" ;; custom section + "\01\ff" ;; "\ff" + ) + "invalid UTF-8 encoding" +) + +;; UTF-16BE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\fe\ff" ;; "\fe\ff" + ) + "invalid UTF-8 encoding" +) + +;; UTF-32BE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\00\00\fe\ff" ;; "\00\00\fe\ff" + ) + "invalid UTF-8 encoding" +) + +;; UTF-16LE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\03" ;; custom section + "\02\ff\fe" ;; "\ff\fe" + ) + "invalid UTF-8 encoding" +) + +;; UTF-32LE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\00\05" ;; custom section + "\04\ff\fe\00\00" ;; "\ff\fe\00\00" + ) + "invalid UTF-8 encoding" +) + +;) \ No newline at end of file diff --git a/test/spec/utf8-import-field.wast b/test/spec/utf8-import-field.wast new file mode 100644 index 00000000000..46a1cbda13e --- /dev/null +++ b/test/spec/utf8-import-field.wast @@ -0,0 +1,2674 @@ +(; NOT SUPPORTED IN BINARYEN +;;;;;; Invalid UTF-8 import field names + +;;;; Continuation bytes not preceded by prefixes + +;; encoding starts with (first) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\80" ;; "\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x8f) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\8f" ;; "\8f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x90) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\90" ;; "\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x9f) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\9f" ;; "\9f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0xa0) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\a0" ;; "\a0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (last) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\bf" ;; "\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 2-byte sequences + +;; 2-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\c2\80\80" ;; "\c2\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 2-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\c2" ;; "\c2" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 2-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c2\2e" ;; "\c2." + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 2-byte sequence contents + +;; overlong encoding after 0xc0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c0\80" ;; "\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c0\bf" ;; "\c0\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc1 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c1\80" ;; "\c1\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc1 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c1\bf" ;; "\c1\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a contination byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c2\00" ;; "\c2\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c2\7f" ;; "\c2\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c2\c0" ;; "\c2\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\c2\fd" ;; "\c2\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\df\00" ;; "\df\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\df\7f" ;; "\df\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\df\c0" ;; "\df\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\df\fd" ;; "\df\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequences + +;; 3-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\e1\80\80\80" ;; "\e1\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\e1\80" ;; "\e1\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\80\2e" ;; "\e1\80." + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\e1" ;; "\e1" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\e1\2e" ;; "\e1." + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequence contents + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\00\a0" ;; "\e0\00\a0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\7f\a0" ;; "\e0\7f\a0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\80\80" ;; "\e0\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\80\a0" ;; "\e0\80\a0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\9f\a0" ;; "\e0\9f\a0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\9f\bf" ;; "\e0\9f\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\c0\a0" ;; "\e0\c0\a0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\fd\a0" ;; "\e0\fd\a0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\00\80" ;; "\e1\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\7f\80" ;; "\e1\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\c0\80" ;; "\e1\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\fd\80" ;; "\e1\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\00\80" ;; "\ec\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\7f\80" ;; "\ec\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\c0\80" ;; "\ec\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\fd\80" ;; "\ec\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\00\80" ;; "\ed\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\7f\80" ;; "\ed\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\a0\80" ;; "\ed\a0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\a0\bf" ;; "\ed\a0\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\bf\80" ;; "\ed\bf\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\bf\bf" ;; "\ed\bf\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\c0\80" ;; "\ed\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\fd\80" ;; "\ed\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\00\80" ;; "\ee\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\7f\80" ;; "\ee\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\c0\80" ;; "\ee\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\fd\80" ;; "\ee\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\00\80" ;; "\ef\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\7f\80" ;; "\ef\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\c0\80" ;; "\ef\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\fd\80" ;; "\ef\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequence contents (third byte) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\a0\00" ;; "\e0\a0\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\a0\7f" ;; "\e0\a0\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\a0\c0" ;; "\e0\a0\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e0\a0\fd" ;; "\e0\a0\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\80\00" ;; "\e1\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\80\7f" ;; "\e1\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\80\c0" ;; "\e1\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\e1\80\fd" ;; "\e1\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\80\00" ;; "\ec\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\80\7f" ;; "\ec\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\80\c0" ;; "\ec\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ec\80\fd" ;; "\ec\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\80\00" ;; "\ed\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\80\7f" ;; "\ed\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\80\c0" ;; "\ed\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ed\80\fd" ;; "\ed\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\80\00" ;; "\ee\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\80\7f" ;; "\ee\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\80\c0" ;; "\ee\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ee\80\fd" ;; "\ee\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\80\00" ;; "\ef\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\80\7f" ;; "\ef\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\80\c0" ;; "\ef\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\ef\80\fd" ;; "\ef\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequences + +;; 4-byte sequence contains 5 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\05\f1\80\80\80\80" ;; "\f1\80\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\f1\80\80" ;; "\f1\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\80\23" ;; "\f1\80\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\f1\80" ;; "\f1\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\f1\80\23" ;; "\f1\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\f1" ;; "\f1" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\f1\23" ;; "\f1#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\00\90\90" ;; "\f0\00\90\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\7f\90\90" ;; "\f0\7f\90\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\80\80\80" ;; "\f0\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\80\90\90" ;; "\f0\80\90\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\8f\90\90" ;; "\f0\8f\90\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\8f\bf\bf" ;; "\f0\8f\bf\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\c0\90\90" ;; "\f0\c0\90\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\fd\90\90" ;; "\f0\fd\90\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\00\80\80" ;; "\f1\00\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\7f\80\80" ;; "\f1\7f\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\c0\80\80" ;; "\f1\c0\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\fd\80\80" ;; "\f1\fd\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\00\80\80" ;; "\f3\00\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\7f\80\80" ;; "\f3\7f\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\c0\80\80" ;; "\f3\c0\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\fd\80\80" ;; "\f3\fd\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\00\80\80" ;; "\f4\00\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\7f\80\80" ;; "\f4\7f\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (first) invalid code point +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\90\80\80" ;; "\f4\90\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; invalid code point +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\bf\80\80" ;; "\f4\bf\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\c0\80\80" ;; "\f4\c0\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\fd\80\80" ;; "\f4\fd\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (first) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f5\80\80\80" ;; "\f5\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f7\80\80\80" ;; "\f7\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f7\bf\bf\bf" ;; "\f7\bf\bf\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents (third byte) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\00\90" ;; "\f0\90\00\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\7f\90" ;; "\f0\90\7f\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\c0\90" ;; "\f0\90\c0\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\fd\90" ;; "\f0\90\fd\90" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\00\80" ;; "\f1\80\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\7f\80" ;; "\f1\80\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\c0\80" ;; "\f1\80\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\fd\80" ;; "\f1\80\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\00\80" ;; "\f3\80\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\7f\80" ;; "\f3\80\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\c0\80" ;; "\f3\80\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\fd\80" ;; "\f3\80\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\00\80" ;; "\f4\80\00\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\7f\80" ;; "\f4\80\7f\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\c0\80" ;; "\f4\80\c0\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\fd\80" ;; "\f4\80\fd\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents (fourth byte) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\90\00" ;; "\f0\90\90\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\90\7f" ;; "\f0\90\90\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\90\c0" ;; "\f0\90\90\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f0\90\90\fd" ;; "\f0\90\90\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\80\00" ;; "\f1\80\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\80\7f" ;; "\f1\80\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\80\c0" ;; "\f1\80\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f1\80\80\fd" ;; "\f1\80\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\80\00" ;; "\f3\80\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\80\7f" ;; "\f3\80\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\80\c0" ;; "\f3\80\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f3\80\80\fd" ;; "\f3\80\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\80\00" ;; "\f4\80\80\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\80\7f" ;; "\f4\80\80\7f" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\80\c0" ;; "\f4\80\80\c0" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f4\80\80\fd" ;; "\f4\80\80\fd" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 5-byte sequences + +;; 5-byte sequence contains 6 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\06\f8\80\80\80\80\80" ;; "\f8\80\80\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 4 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f8\80\80\80" ;; "\f8\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\05\f8\80\80\80\23" ;; "\f8\80\80\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\f8\80\80" ;; "\f8\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\f8\80\80\23" ;; "\f8\80\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\f8\80" ;; "\f8\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\f8\80\23" ;; "\f8\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\f8" ;; "\f8" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\f8\23" ;; "\f8#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 5-byte sequence contents + +;; (first) invalid 5-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\05\f8\80\80\80\80" ;; "\f8\80\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 5-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\05\fb\bf\bf\bf\bf" ;; "\fb\bf\bf\bf\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 6-byte sequences + +;; 6-byte sequence contains 7 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\11" ;; import section + "\01" ;; length 1 + "\07\fc\80\80\80\80\80\80" ;; "\fc\80\80\80\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 5 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\05\fc\80\80\80\80" ;; "\fc\80\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 5 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\06\fc\80\80\80\80\23" ;; "\fc\80\80\80\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 4 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\fc\80\80\80" ;; "\fc\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\05\fc\80\80\80\23" ;; "\fc\80\80\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\fc\80\80" ;; "\fc\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\fc\80\80\23" ;; "\fc\80\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\fc\80" ;; "\fc\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\03\fc\80\23" ;; "\fc\80#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\fc" ;; "\fc" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\fc\23" ;; "\fc#" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 6-byte sequence contents + +;; (first) invalid 6-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\06\fc\80\80\80\80\80" ;; "\fc\80\80\80\80\80" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 6-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\06\fd\bf\bf\bf\bf\bf" ;; "\fd\bf\bf\bf\bf\bf" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; Miscellaneous invalid bytes + +;; invalid byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\fe" ;; "\fe" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; invalid byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\01\ff" ;; "\ff" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-16BE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\fe\ff" ;; "\fe\ff" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-32BE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\00\00\fe\ff" ;; "\00\00\fe\ff" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-16LE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\02\ff\fe" ;; "\ff\fe" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-32LE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\ff\fe\00\00" ;; "\ff\fe\00\00" + "\04\74\65\73\74" ;; "test" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;) \ No newline at end of file diff --git a/test/spec/utf8-import-module.wast b/test/spec/utf8-import-module.wast new file mode 100644 index 00000000000..dace1bd4f28 --- /dev/null +++ b/test/spec/utf8-import-module.wast @@ -0,0 +1,2674 @@ +(; NOT SUPPORTED IN BINARYEN +;;;;;; Invalid UTF-8 import module names + +;;;; Continuation bytes not preceded by prefixes + +;; encoding starts with (first) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\80" ;; "\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x8f) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\8f" ;; "\8f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x90) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\90" ;; "\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0x9f) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\9f" ;; "\9f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (0xa0) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\a0" ;; "\a0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; encoding starts with (last) continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\bf" ;; "\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 2-byte sequences + +;; 2-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\c2\80\80" ;; "\c2\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 2-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\c2" ;; "\c2" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 2-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c2\2e" ;; "\c2." + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 2-byte sequence contents + +;; overlong encoding after 0xc0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c0\80" ;; "\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c0\bf" ;; "\c0\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc1 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c1\80" ;; "\c1\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xc1 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c1\bf" ;; "\c1\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a contination byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c2\00" ;; "\c2\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c2\7f" ;; "\c2\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c2\c0" ;; "\c2\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (first) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\c2\fd" ;; "\c2\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\df\00" ;; "\df\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\df\7f" ;; "\df\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\df\c0" ;; "\df\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte after (last) 2-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\df\fd" ;; "\df\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequences + +;; 3-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\e1\80\80\80" ;; "\e1\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\e1\80" ;; "\e1\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\80\2e" ;; "\e1\80." + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\e1" ;; "\e1" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 3-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\e1\2e" ;; "\e1." + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequence contents + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\00\a0" ;; "\e0\00\a0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\7f\a0" ;; "\e0\7f\a0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\80\80" ;; "\e0\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\80\a0" ;; "\e0\80\a0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\9f\a0" ;; "\e0\9f\a0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xe0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\9f\bf" ;; "\e0\9f\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\c0\a0" ;; "\e0\c0\a0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\fd\a0" ;; "\e0\fd\a0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\00\80" ;; "\e1\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\7f\80" ;; "\e1\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\c0\80" ;; "\e1\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\fd\80" ;; "\e1\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\00\80" ;; "\ec\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\7f\80" ;; "\ec\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\c0\80" ;; "\ec\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\fd\80" ;; "\ec\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\00\80" ;; "\ed\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\7f\80" ;; "\ed\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\a0\80" ;; "\ed\a0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\a0\bf" ;; "\ed\a0\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\bf\80" ;; "\ed\bf\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; byte sequence reserved for UTF-16 surrogate half +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\bf\bf" ;; "\ed\bf\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\c0\80" ;; "\ed\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\fd\80" ;; "\ed\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\00\80" ;; "\ee\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\7f\80" ;; "\ee\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\c0\80" ;; "\ee\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\fd\80" ;; "\ee\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\00\80" ;; "\ef\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\7f\80" ;; "\ef\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\c0\80" ;; "\ef\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\fd\80" ;; "\ef\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 3-byte sequence contents (third byte) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\a0\00" ;; "\e0\a0\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\a0\7f" ;; "\e0\a0\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\a0\c0" ;; "\e0\a0\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xe0) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e0\a0\fd" ;; "\e0\a0\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\80\00" ;; "\e1\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\80\7f" ;; "\e1\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\80\c0" ;; "\e1\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\e1\80\fd" ;; "\e1\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\80\00" ;; "\ec\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\80\7f" ;; "\ec\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\80\c0" ;; "\ec\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ec\80\fd" ;; "\ec\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\80\00" ;; "\ed\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\80\7f" ;; "\ed\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\80\c0" ;; "\ed\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xed) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ed\80\fd" ;; "\ed\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\80\00" ;; "\ee\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\80\7f" ;; "\ee\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\80\c0" ;; "\ee\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ee\80\fd" ;; "\ee\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\80\00" ;; "\ef\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\80\7f" ;; "\ef\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\80\c0" ;; "\ef\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 3-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\ef\80\fd" ;; "\ef\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequences + +;; 4-byte sequence contains 5 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\05\f1\80\80\80\80" ;; "\f1\80\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\f1\80\80" ;; "\f1\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\80\23" ;; "\f1\80\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\f1\80" ;; "\f1\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\f1\80\23" ;; "\f1\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\f1" ;; "\f1" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 4-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\f1\23" ;; "\f1#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\00\90\90" ;; "\f0\00\90\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\7f\90\90" ;; "\f0\7f\90\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\80\80\80" ;; "\f0\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\80\90\90" ;; "\f0\80\90\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\8f\90\90" ;; "\f0\8f\90\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; overlong encoding after 0xf0 prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\8f\bf\bf" ;; "\f0\8f\bf\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\c0\90\90" ;; "\f0\c0\90\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\fd\90\90" ;; "\f0\fd\90\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\00\80\80" ;; "\f1\00\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\7f\80\80" ;; "\f1\7f\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\c0\80\80" ;; "\f1\c0\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\fd\80\80" ;; "\f1\fd\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\00\80\80" ;; "\f3\00\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\7f\80\80" ;; "\f3\7f\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\c0\80\80" ;; "\f3\c0\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\fd\80\80" ;; "\f3\fd\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\00\80\80" ;; "\f4\00\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\7f\80\80" ;; "\f4\7f\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (first) invalid code point +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\90\80\80" ;; "\f4\90\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; invalid code point +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\bf\80\80" ;; "\f4\bf\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\c0\80\80" ;; "\f4\c0\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; first byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\fd\80\80" ;; "\f4\fd\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (first) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f5\80\80\80" ;; "\f5\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f7\80\80\80" ;; "\f7\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 4-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f7\bf\bf\bf" ;; "\f7\bf\bf\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents (third byte) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\00\90" ;; "\f0\90\00\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\7f\90" ;; "\f0\90\7f\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\c0\90" ;; "\f0\90\c0\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\fd\90" ;; "\f0\90\fd\90" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\00\80" ;; "\f1\80\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\7f\80" ;; "\f1\80\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\c0\80" ;; "\f1\80\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\fd\80" ;; "\f1\80\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\00\80" ;; "\f3\80\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\7f\80" ;; "\f3\80\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\c0\80" ;; "\f3\80\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\fd\80" ;; "\f3\80\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\00\80" ;; "\f4\80\00\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\7f\80" ;; "\f4\80\7f\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\c0\80" ;; "\f4\80\c0\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; second byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\fd\80" ;; "\f4\80\fd\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 4-byte sequence contents (fourth byte) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\90\00" ;; "\f0\90\90\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\90\7f" ;; "\f0\90\90\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\90\c0" ;; "\f0\90\90\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf0) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f0\90\90\fd" ;; "\f0\90\90\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\80\00" ;; "\f1\80\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\80\7f" ;; "\f1\80\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\80\c0" ;; "\f1\80\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (first normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f1\80\80\fd" ;; "\f1\80\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\80\00" ;; "\f3\80\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\80\7f" ;; "\f3\80\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\80\c0" ;; "\f3\80\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (last normal) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f3\80\80\fd" ;; "\f3\80\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\80\00" ;; "\f4\80\80\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\80\7f" ;; "\f4\80\80\7f" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\80\c0" ;; "\f4\80\80\c0" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; third byte after (0xf4) 4-byte prefix not a continuation byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f4\80\80\fd" ;; "\f4\80\80\fd" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 5-byte sequences + +;; 5-byte sequence contains 6 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\06\f8\80\80\80\80\80" ;; "\f8\80\80\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 4 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f8\80\80\80" ;; "\f8\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\05\f8\80\80\80\23" ;; "\f8\80\80\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\f8\80\80" ;; "\f8\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\f8\80\80\23" ;; "\f8\80\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\f8\80" ;; "\f8\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\f8\80\23" ;; "\f8\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\f8" ;; "\f8" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 5-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\f8\23" ;; "\f8#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 5-byte sequence contents + +;; (first) invalid 5-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\05\f8\80\80\80\80" ;; "\f8\80\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 5-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\05\fb\bf\bf\bf\bf" ;; "\fb\bf\bf\bf\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 6-byte sequences + +;; 6-byte sequence contains 7 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\11" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\07\fc\80\80\80\80\80\80" ;; "\fc\80\80\80\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 5 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\05\fc\80\80\80\80" ;; "\fc\80\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 5 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\06\fc\80\80\80\80\23" ;; "\fc\80\80\80\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 4 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\fc\80\80\80" ;; "\fc\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 4 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0f" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\05\fc\80\80\80\23" ;; "\fc\80\80\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 3 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\fc\80\80" ;; "\fc\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 3 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\fc\80\80\23" ;; "\fc\80\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 2 bytes at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\fc\80" ;; "\fc\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 2 bytes +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0d" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\03\fc\80\23" ;; "\fc\80#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 1 byte at end of string +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\fc" ;; "\fc" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; 6-byte sequence contains 1 byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\fc\23" ;; "\fc#" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; 6-byte sequence contents + +;; (first) invalid 6-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\06\fc\80\80\80\80\80" ;; "\fc\80\80\80\80\80" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; (last) invalid 6-byte prefix +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\10" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\06\fd\bf\bf\bf\bf\bf" ;; "\fd\bf\bf\bf\bf\bf" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;;;; Miscellaneous invalid bytes + +;; invalid byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\fe" ;; "\fe" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; invalid byte +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0b" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\01\ff" ;; "\ff" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-16BE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\fe\ff" ;; "\fe\ff" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-32BE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\00\00\fe\ff" ;; "\00\00\fe\ff" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-16LE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0c" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\02\ff\fe" ;; "\ff\fe" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;; UTF-32LE BOM +(assert_malformed + (module binary + "\00asm" "\01\00\00\00" + "\02\0e" ;; import section + "\01" ;; length 1 + "\04\74\65\73\74" ;; "test" + "\04\ff\fe\00\00" ;; "\ff\fe\00\00" + "\03" ;; GlobalImport + "\7f" ;; i32 + "\00" ;; immutable + ) + "invalid UTF-8 encoding" +) + +;) \ No newline at end of file diff --git a/test/spec/utf8-invalid-encoding.wast b/test/spec/utf8-invalid-encoding.wast new file mode 100644 index 00000000000..4d0e667e920 --- /dev/null +++ b/test/spec/utf8-invalid-encoding.wast @@ -0,0 +1,178 @@ +(; NOT SUPPORTED IN BINARYEN +(assert_malformed (module quote "(func (export \"\\00\\00\\fe\\ff\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\8f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\9f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\a0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c0\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c1\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c1\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c2\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c2\\2e\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c2\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c2\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c2\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c2\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\c2\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\df\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\df\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\df\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\df\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\00\\a0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\7f\\a0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\80\\a0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\9f\\a0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\9f\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\a0\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\a0\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\a0\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\a0\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\c0\\a0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e0\\fd\\a0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\2e\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\80\\2e\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\e1\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ec\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\a0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\a0\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\bf\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\bf\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ed\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ee\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ef\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\00\\90\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\7f\\90\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\80\\90\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\8f\\90\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\8f\\bf\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\00\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\7f\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\90\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\90\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\90\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\90\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\c0\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\90\\fd\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\c0\\90\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f0\\fd\\90\\90\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\00\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\7f\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\80\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\c0\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f1\\fd\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\00\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\7f\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\80\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\c0\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f3\\fd\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\00\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\7f\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\00\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\7f\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\80\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\80\\7f\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\80\\c0\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\80\\fd\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\c0\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\80\\fd\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\90\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\bf\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\c0\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f4\\fd\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f5\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f7\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f7\\bf\\bf\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\\80\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\\80\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\f8\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fb\\bf\\bf\\bf\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\\80\\80\\23\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\\80\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\\80\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fc\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fd\\bf\\bf\\bf\\bf\\bf\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fe\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\fe\\ff\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ff\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ff\\fe\\00\\00\"))") "invalid UTF-8 encoding") +(assert_malformed (module quote "(func (export \"\\ff\\fe\"))") "invalid UTF-8 encoding") +;) \ No newline at end of file diff --git a/test/threads.asm.js b/test/threads.asm.js index 1253e8c42ea..f785055d558 100644 --- a/test/threads.asm.js +++ b/test/threads.asm.js @@ -52,7 +52,7 @@ Module["asm"] = (function(global, env, buffer) { var assert=env.assert; var enlargeMemory=env.enlargeMemory; var getTotalMemory=env.getTotalMemory; - var abortOnCannotGrowMemory=env.abortOnCannotGrowMemory; + var abortOnCannotMemoryGrow=env.abortOnCannotMemoryGrow; var abortStackOverflow=env.abortStackOverflow; var nullFunc_iiii=env.nullFunc_iiii; var nullFunc_i=env.nullFunc_i; diff --git a/test/unreachable-import_wasm-only.asm.js b/test/unreachable-import_wasm-only.asm.js index 9df74a192e7..a1989fdbb63 100644 --- a/test/unreachable-import_wasm-only.asm.js +++ b/test/unreachable-import_wasm-only.asm.js @@ -51,7 +51,7 @@ function asm(global, env, buffer) { var assert=env.assert; var enlargeMemory=env.enlargeMemory; var getTotalMemory=env.getTotalMemory; - var abortOnCannotGrowMemory=env.abortOnCannotGrowMemory; + var abortOnCannotMemoryGrow=env.abortOnCannotMemoryGrow; var invoke_iiii=env.invoke_iiii; var invoke_viiiii=env.invoke_viiiii; var invoke_vi=env.invoke_vi; diff --git a/test/wasm2js/address.2asm.js b/test/wasm2js/address.2asm.js index 205be25d7d4..68078b0d5f8 100644 --- a/test/wasm2js/address.2asm.js +++ b/test/wasm2js/address.2asm.js @@ -1,4 +1,3 @@ -import { print } from 'spectest'; function asmFunc(global, env, buffer) { "use asm"; var HEAP8 = new global.Int8Array(buffer); @@ -21,34 +20,195 @@ function asmFunc(global, env, buffer) { var abort = env.abort; var nan = global.NaN; var infinity = global.Infinity; - var print = env.print; var i64toi32_i32$HIGH_BITS = 0; function $0(i) { i = i | 0; - var wasm2js_i32$0 = 0; - print(HEAPU8[i >> 0] | 0 | 0); - print(HEAPU8[(i + 1 | 0) >> 0] | 0 | 0); - print(HEAPU8[(i + 2 | 0) >> 0] | 0 | 0); - print(HEAPU8[(i + 25 | 0) >> 0] | 0 | 0); - print(HEAPU16[i >> 1] | 0 | 0); - print((wasm2js_i32$0 = i, HEAPU8[wasm2js_i32$0 >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0) << 8) | 0); - print((wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0) << 8) | 0); - print(HEAPU16[(i + 2 | 0) >> 1] | 0 | 0); - print((wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 25 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 26 | 0) >> 0] | 0 | 0) << 8) | 0); - print(HEAPU32[i >> 2] | 0 | 0); - print((wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0) << 8 | (HEAPU8[(wasm2js_i32$0 + 3 | 0) >> 0] | 0 | 0) << 16 | (HEAPU8[(wasm2js_i32$0 + 4 | 0) >> 0] | 0 | 0) << 24) | 0); - print((wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 3 | 0) >> 0] | 0 | 0) << 8 | (HEAPU8[(wasm2js_i32$0 + 4 | 0) >> 0] | 0 | 0) << 16 | (HEAPU8[(wasm2js_i32$0 + 5 | 0) >> 0] | 0 | 0) << 24) | 0); - print((wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 25 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 26 | 0) >> 0] | 0 | 0) << 8 | (HEAPU8[(wasm2js_i32$0 + 27 | 0) >> 0] | 0 | 0) << 16 | (HEAPU8[(wasm2js_i32$0 + 28 | 0) >> 0] | 0 | 0) << 24) | 0); + return HEAPU8[i >> 0] | 0 | 0; } function $1(i) { + i = i | 0; + return HEAPU8[i >> 0] | 0 | 0; + } + + function $2(i) { + i = i | 0; + return HEAPU8[(i + 1 | 0) >> 0] | 0 | 0; + } + + function $3(i) { + i = i | 0; + return HEAPU8[(i + 2 | 0) >> 0] | 0 | 0; + } + + function $4(i) { + i = i | 0; + return HEAPU8[(i + 25 | 0) >> 0] | 0 | 0; + } + + function $5(i) { + i = i | 0; + return HEAP8[i >> 0] | 0 | 0; + } + + function $6(i) { + i = i | 0; + return HEAP8[i >> 0] | 0 | 0; + } + + function $7(i) { + i = i | 0; + return HEAP8[(i + 1 | 0) >> 0] | 0 | 0; + } + + function $8(i) { + i = i | 0; + return HEAP8[(i + 2 | 0) >> 0] | 0 | 0; + } + + function $9(i) { + i = i | 0; + return HEAP8[(i + 25 | 0) >> 0] | 0 | 0; + } + + function $10(i) { + i = i | 0; + return HEAPU16[i >> 1] | 0 | 0; + } + + function $11(i) { + i = i | 0; + var wasm2js_i32$0 = 0; + return (wasm2js_i32$0 = i, HEAPU8[wasm2js_i32$0 >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0) << 8) | 0; + } + + function $12(i) { + i = i | 0; + var wasm2js_i32$0 = 0; + return (wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0) << 8) | 0; + } + + function $13(i) { + i = i | 0; + return HEAPU16[(i + 2 | 0) >> 1] | 0 | 0; + } + + function $14(i) { + i = i | 0; + return HEAPU16[(i + 25 | 0) >> 1] | 0 | 0; + } + + function $15(i) { + i = i | 0; + return HEAP16[i >> 1] | 0 | 0; + } + + function $16(i) { + i = i | 0; + var wasm2js_i32$0 = 0; + return (wasm2js_i32$0 = i, HEAP8[wasm2js_i32$0 >> 0] | 0 | 0 | (HEAP8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0) << 8) | 0; + } + + function $17(i) { + i = i | 0; + var wasm2js_i32$0 = 0; + return (wasm2js_i32$0 = i, HEAP8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0 | (HEAP8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0) << 8) | 0; + } + + function $18(i) { + i = i | 0; + return HEAP16[(i + 2 | 0) >> 1] | 0 | 0; + } + + function $19(i) { + i = i | 0; + return HEAP16[(i + 25 | 0) >> 1] | 0 | 0; + } + + function $20(i) { + i = i | 0; + return HEAPU32[i >> 2] | 0 | 0; + } + + function $21(i) { + i = i | 0; + var wasm2js_i32$0 = 0; + return (wasm2js_i32$0 = i, HEAPU8[wasm2js_i32$0 >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0) << 8 | (HEAPU8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0) << 16 | (HEAPU8[(wasm2js_i32$0 + 3 | 0) >> 0] | 0 | 0) << 24) | 0; + } + + function $22(i) { + i = i | 0; + var wasm2js_i32$0 = 0; + return (wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 1 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0) << 8 | (HEAPU8[(wasm2js_i32$0 + 3 | 0) >> 0] | 0 | 0) << 16 | (HEAPU8[(wasm2js_i32$0 + 4 | 0) >> 0] | 0 | 0) << 24) | 0; + } + + function $23(i) { + i = i | 0; + var wasm2js_i32$0 = 0; + return (wasm2js_i32$0 = i, HEAPU8[(wasm2js_i32$0 + 2 | 0) >> 0] | 0 | 0 | (HEAPU8[(wasm2js_i32$0 + 3 | 0) >> 0] | 0 | 0) << 8 | (HEAPU8[(wasm2js_i32$0 + 4 | 0) >> 0] | 0 | 0) << 16 | (HEAPU8[(wasm2js_i32$0 + 5 | 0) >> 0] | 0 | 0) << 24) | 0; + } + + function $24(i) { + i = i | 0; + return HEAPU32[(i + 25 | 0) >> 2] | 0 | 0; + } + + function $25(i) { + i = i | 0; + HEAPU8[(i + 4294967295 | 0) >> 0] | 0; + } + + function $26(i) { + i = i | 0; + HEAP8[(i + 4294967295 | 0) >> 0] | 0; + } + + function $27(i) { + i = i | 0; + HEAPU16[(i + 4294967295 | 0) >> 1] | 0; + } + + function $28(i) { + i = i | 0; + HEAP16[(i + 4294967295 | 0) >> 1] | 0; + } + + function $29(i) { i = i | 0; HEAPU32[(i + 4294967295 | 0) >> 2] | 0; } return { - good: $0, - bad: $1 + $8u_good1: $0, + $8u_good2: $1, + $8u_good3: $2, + $8u_good4: $3, + $8u_good5: $4, + $8s_good1: $5, + $8s_good2: $6, + $8s_good3: $7, + $8s_good4: $8, + $8s_good5: $9, + $16u_good1: $10, + $16u_good2: $11, + $16u_good3: $12, + $16u_good4: $13, + $16u_good5: $14, + $16s_good1: $15, + $16s_good2: $16, + $16s_good3: $17, + $16s_good4: $18, + $16s_good5: $19, + $32_good1: $20, + $32_good2: $21, + $32_good3: $22, + $32_good4: $23, + $32_good5: $24, + $8u_bad: $25, + $8s_bad: $26, + $16u_bad: $27, + $16s_bad: $28, + $32_bad: $29 }; } @@ -70,6 +230,34 @@ const assignasmFunc = ( } )(memasmFunc); assignasmFunc(0, "YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXo="); -const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },print},memasmFunc); -export const good = retasmFunc.good; -export const bad = retasmFunc.bad; +const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc); +export const $8u_good1 = retasmFunc.$8u_good1; +export const $8u_good2 = retasmFunc.$8u_good2; +export const $8u_good3 = retasmFunc.$8u_good3; +export const $8u_good4 = retasmFunc.$8u_good4; +export const $8u_good5 = retasmFunc.$8u_good5; +export const $8s_good1 = retasmFunc.$8s_good1; +export const $8s_good2 = retasmFunc.$8s_good2; +export const $8s_good3 = retasmFunc.$8s_good3; +export const $8s_good4 = retasmFunc.$8s_good4; +export const $8s_good5 = retasmFunc.$8s_good5; +export const $16u_good1 = retasmFunc.$16u_good1; +export const $16u_good2 = retasmFunc.$16u_good2; +export const $16u_good3 = retasmFunc.$16u_good3; +export const $16u_good4 = retasmFunc.$16u_good4; +export const $16u_good5 = retasmFunc.$16u_good5; +export const $16s_good1 = retasmFunc.$16s_good1; +export const $16s_good2 = retasmFunc.$16s_good2; +export const $16s_good3 = retasmFunc.$16s_good3; +export const $16s_good4 = retasmFunc.$16s_good4; +export const $16s_good5 = retasmFunc.$16s_good5; +export const $32_good1 = retasmFunc.$32_good1; +export const $32_good2 = retasmFunc.$32_good2; +export const $32_good3 = retasmFunc.$32_good3; +export const $32_good4 = retasmFunc.$32_good4; +export const $32_good5 = retasmFunc.$32_good5; +export const $8u_bad = retasmFunc.$8u_bad; +export const $8s_bad = retasmFunc.$8s_bad; +export const $16u_bad = retasmFunc.$16u_bad; +export const $16s_bad = retasmFunc.$16s_bad; +export const $32_bad = retasmFunc.$32_bad; diff --git a/test/wasm2js/block.2asm.js b/test/wasm2js/block.2asm.js index 10706a6460b..903022f2bb4 100644 --- a/test/wasm2js/block.2asm.js +++ b/test/wasm2js/block.2asm.js @@ -1,5 +1,5 @@ function asmFunc(global, env, buffer) { - "use asm"; + "almost asm"; var HEAP8 = new global.Int8Array(buffer); var HEAP16 = new global.Int16Array(buffer); var HEAP32 = new global.Int32Array(buffer); @@ -62,55 +62,176 @@ function asmFunc(global, env, buffer) { } function $6() { + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + return (wasm2js_i32$0 = 1, wasm2js_i32$1 = 2, wasm2js_i32$2 = 3, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1) | 0; + } + + function $7() { + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + return (wasm2js_i32$0 = 2, wasm2js_i32$1 = 1, wasm2js_i32$2 = 3, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1) | 0; + } + + function $8() { + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + return (wasm2js_i32$0 = 2, wasm2js_i32$1 = 3, wasm2js_i32$2 = 1, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1) | 0; + } + + function $9() { + var $4_1 = 0; + loop_in : do { + dummy(); + dummy(); + $4_1 = 1; + break loop_in; + } while (1); + return $4_1 | 0; + } + + function $10() { + var $6_1 = 0; + $6_1 = 1; + return $6_1 | 0; + } + + function $11() { + var $6_1 = 0; + $6_1 = 2; + return $6_1 | 0; + } + + function $12() { + var $2_1 = 0; + block : { + $2_1 = 1; + if (2) break block; + $2_1 = $2_1; + }; + return $2_1 | 0; + } + + function $13() { + var $2_1 = 0; + block : { + $2_1 = 2; + if (1) break block; + $2_1 = $2_1; + }; + return $2_1 | 0; + } + + function func($0, $1_1) { + $0 = $0 | 0; + $1_1 = $1_1 | 0; + return $0 | 0; + } + + function $15() { + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + wasm2js_i32$2 = 1; + wasm2js_i32$3 = 2; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; + return wasm2js_i32$0 | 0; + } + + function $16() { + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + wasm2js_i32$2 = 2; + wasm2js_i32$3 = 1; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; + return wasm2js_i32$0 | 0; + } + + function $17() { + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + wasm2js_i32$2 = 1; + wasm2js_i32$3 = 2; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; + return wasm2js_i32$0 | 0; + } + + function $18() { + return __wasm_memory_grow(1 | 0) | 0; + } + + function f($0) { + $0 = $0 | 0; + return $0 | 0; + } + + function $20() { + return f(1 | 0) | 0 | 0; + } + + function $21() { + + } + + function $22() { + var $2_1 = 0; + block : { + $2_1 = 1; + break block; + }; + return $2_1 | 0; + } + + function $23() { + return 1 | 0; + } + + function $24() { dummy(); return __wasm_ctz_i32(13 | 0) | 0 | 0; } - function $7() { + function $25() { dummy(); dummy(); return Math_imul(3, 4) | 0; } - function $8() { + function $26() { dummy(); return (13 | 0) == (0 | 0) | 0; } - function $9() { + function $27() { dummy(); dummy(); return Math_fround(3.0) > Math_fround(3.0) | 0; } - function $10() { + function $28() { block : { break block; }; - block44 : { - if (1) break block44; + block50 : { + if (1) break block50; abort(); }; - block45 : { + block51 : { switch (0 | 0) { default: - break block45; + break block51; }; }; - block46 : { + block52 : { switch (1 | 0) { case 0: - break block46; + break block52; case 1: - break block46; + break block52; default: - break block46; + break block52; }; }; return 19 | 0; } - function $11() { + function $29() { var $0 = 0; block : { $0 = 18; @@ -119,7 +240,7 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $12() { + function $30() { var $0 = 0; block : { $0 = 18; @@ -128,12 +249,12 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $13() { - var $0 = 0, $1_1 = 0, $2_1 = 0, $5_1 = 0, $9_1 = 0, $10_1 = 0, $13_1 = 0, $14_1 = 0; + function $31() { + var $0 = 0, $1_1 = 0, $2_1 = 0, $5_1 = 0, $9_1 = 0, $10_1 = 0, $13_1 = 0, $14 = 0; $0 = 0; $1_1 = $0; block : { - block47 : { + block53 : { $2_1 = 1; break block; }; @@ -142,23 +263,23 @@ function asmFunc(global, env, buffer) { $5_1 = $0; $0 = $5_1 + 2 | 0; $9_1 = $0; - block50 : { + block56 : { $10_1 = 4; - break block50; + break block56; }; $0 = $9_1 + $10_1 | 0; $13_1 = $0; - block51 : { - block52 : { - $14_1 = 8; - break block51; + block57 : { + block58 : { + $14 = 8; + break block57; }; }; - $0 = $13_1 + $14_1 | 0; + $0 = $13_1 + $14 | 0; return $0 | 0; } - function $14() { + function $32() { var $0 = 0; block : { $0 = 1; @@ -176,21 +297,63 @@ function asmFunc(global, env, buffer) { return 32 | 0; } + var FUNCTION_TABLE_iii = [func]; + function __wasm_memory_grow(pagesToAdd) { + pagesToAdd = pagesToAdd | 0; + var oldPages = __wasm_memory_size() | 0; + var newPages = oldPages + pagesToAdd | 0; + if ((oldPages < newPages) && (newPages < 65535)) { + var newBuffer = new ArrayBuffer(Math_imul(newPages, 65536)); + var newHEAP8 = new global.Int8Array(newBuffer); + newHEAP8.set(HEAP8); + HEAP8 = newHEAP8; + HEAP16 = new global.Int16Array(newBuffer); + HEAP32 = new global.Int32Array(newBuffer); + HEAPU8 = new global.Uint8Array(newBuffer); + HEAPU16 = new global.Uint16Array(newBuffer); + HEAPU32 = new global.Uint32Array(newBuffer); + HEAPF32 = new global.Float32Array(newBuffer); + HEAPF64 = new global.Float64Array(newBuffer); + buffer = newBuffer; + } + return oldPages; + } + + function __wasm_memory_size() { + return buffer.byteLength / 65536 | 0; + } + return { empty: $1, singular: $2, multi: $3, nested: $4, deep: $5, - as_unary_operand: $6, - as_binary_operand: $7, - as_test_operand: $8, - as_compare_operand: $9, - break_bare: $10, - break_value: $11, - break_repeated: $12, - break_inner: $13, - effects: $14 + as_select_first: $6, + as_select_mid: $7, + as_select_last: $8, + as_loop_last: $9, + as_if_then: $10, + as_if_else: $11, + as_br_if_first: $12, + as_br_if_last: $13, + as_call_indirect_first: $15, + as_call_indirect_mid: $16, + as_call_indirect_last: $17, + as_memory_grow_value: $18, + as_call_value: $20, + as_drop_operand: $21, + as_br_value: $22, + as_set_local_value: $23, + as_unary_operand: $24, + as_binary_operand: $25, + as_test_operand: $26, + as_compare_operand: $27, + break_bare: $28, + break_value: $29, + break_repeated: $30, + break_inner: $31, + effects: $32 }; } @@ -201,6 +364,22 @@ export const singular = retasmFunc.singular; export const multi = retasmFunc.multi; export const nested = retasmFunc.nested; export const deep = retasmFunc.deep; +export const as_select_first = retasmFunc.as_select_first; +export const as_select_mid = retasmFunc.as_select_mid; +export const as_select_last = retasmFunc.as_select_last; +export const as_loop_last = retasmFunc.as_loop_last; +export const as_if_then = retasmFunc.as_if_then; +export const as_if_else = retasmFunc.as_if_else; +export const as_br_if_first = retasmFunc.as_br_if_first; +export const as_br_if_last = retasmFunc.as_br_if_last; +export const as_call_indirect_first = retasmFunc.as_call_indirect_first; +export const as_call_indirect_mid = retasmFunc.as_call_indirect_mid; +export const as_call_indirect_last = retasmFunc.as_call_indirect_last; +export const as_memory_grow_value = retasmFunc.as_memory_grow_value; +export const as_call_value = retasmFunc.as_call_value; +export const as_drop_operand = retasmFunc.as_drop_operand; +export const as_br_value = retasmFunc.as_br_value; +export const as_set_local_value = retasmFunc.as_set_local_value; export const as_unary_operand = retasmFunc.as_unary_operand; export const as_binary_operand = retasmFunc.as_binary_operand; export const as_test_operand = retasmFunc.as_test_operand; diff --git a/test/wasm2js/br.2asm.js b/test/wasm2js/br.2asm.js index a877618a15c..27fc48fc60a 100644 --- a/test/wasm2js/br.2asm.js +++ b/test/wasm2js/br.2asm.js @@ -216,7 +216,7 @@ function asmFunc(global, env, buffer) { } function $24() { - var $0 = 0, $1_1 = 0; + var $0 = 0, $5_1 = 0; if_ : { $0 = 2; break if_; @@ -227,13 +227,13 @@ function asmFunc(global, env, buffer) { function $25($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; - var $3_1 = 0, $5_1 = 0; + var $3_1 = 0, $7_1 = 0; block : { if ($0) { $3_1 = 3; break block; - } else $5_1 = $1_1; - $3_1 = $5_1; + } else $7_1 = $1_1; + $3_1 = $7_1; }; return $3_1 | 0; } @@ -241,15 +241,15 @@ function asmFunc(global, env, buffer) { function $26($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; - var $4_1 = 0, $5_1 = 0; + var $6_1 = 0, $7_1 = 0; block : { - if ($0) $5_1 = $1_1; else { - $4_1 = 4; + if ($0) $7_1 = $1_1; else { + $6_1 = 4; break block; } - $4_1 = $5_1; + $6_1 = $7_1; }; - return $4_1 | 0; + return $6_1 | 0; } function $27($0, $1_1) { @@ -666,7 +666,7 @@ function asmFunc(global, env, buffer) { as_compare_left: $49, as_compare_right: $50, as_convert_operand: $51, - as_grow_memory_size: $52, + as_memory_grow_size: $52, nested_block_value: $53, nested_br_value: $54, nested_br_if_value: $55, @@ -728,7 +728,7 @@ export const as_test_operand = retasmFunc.as_test_operand; export const as_compare_left = retasmFunc.as_compare_left; export const as_compare_right = retasmFunc.as_compare_right; export const as_convert_operand = retasmFunc.as_convert_operand; -export const as_grow_memory_size = retasmFunc.as_grow_memory_size; +export const as_memory_grow_size = retasmFunc.as_memory_grow_size; export const nested_block_value = retasmFunc.nested_block_value; export const nested_br_value = retasmFunc.nested_br_value; export const nested_br_if_value = retasmFunc.nested_br_if_value; diff --git a/test/wasm2js/br_if.2asm.js b/test/wasm2js/br_if.2asm.js index ff17cc8eb7f..abf8fdc23fa 100644 --- a/test/wasm2js/br_if.2asm.js +++ b/test/wasm2js/br_if.2asm.js @@ -1,5 +1,5 @@ function asmFunc(global, env, buffer) { - "use asm"; + "almost asm"; var HEAP8 = new global.Int8Array(buffer); var HEAP16 = new global.Int16Array(buffer); var HEAP32 = new global.Int32Array(buffer); @@ -25,7 +25,59 @@ function asmFunc(global, env, buffer) { } - function $1($0) { + function $1() { + var $0 = 0; + block : { + $0 = 1; + if (1) break block; + $0 = __wasm_ctz_i32($0 | 0) | 0; + }; + return $0 | 0; + } + + function $2() { + var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $0 = 0, $0$hi = 0; + block : { + i64toi32_i32$0 = 0; + $0 = 2; + $0$hi = i64toi32_i32$0; + if (1) break block; + i64toi32_i32$0 = $0$hi; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = __wasm_ctz_i64($0 | 0, i64toi32_i32$0 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + i64toi32_i32$1 = i64toi32_i32$1; + $0 = i64toi32_i32$0; + $0$hi = i64toi32_i32$1; + }; + i64toi32_i32$1 = $0$hi; + i64toi32_i32$1 = i64toi32_i32$1; + i64toi32_i32$0 = $0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$0 | 0; + } + + function $3() { + var $0 = Math_fround(0); + block : { + $0 = Math_fround(3.0); + if (1) break block; + $0 = Math_fround(-$0); + }; + return Math_fround($0); + } + + function $4() { + var $0 = 0.0; + block : { + $0 = 4.0; + if (1) break block; + $0 = -$0; + }; + return +$0; + } + + function $5($0) { $0 = $0 | 0; block : { if ($0) break block; @@ -34,7 +86,7 @@ function asmFunc(global, env, buffer) { return 3 | 0; } - function $2($0) { + function $6($0) { $0 = $0 | 0; block : { dummy(); @@ -44,7 +96,7 @@ function asmFunc(global, env, buffer) { return 3 | 0; } - function $3($0) { + function $7($0) { $0 = $0 | 0; block : { dummy(); @@ -53,7 +105,7 @@ function asmFunc(global, env, buffer) { }; } - function $4($0) { + function $8($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -64,7 +116,7 @@ function asmFunc(global, env, buffer) { return $2_1 | 0; } - function $5($0) { + function $9($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -76,7 +128,7 @@ function asmFunc(global, env, buffer) { return $2_1 | 0; } - function $6($0) { + function $10($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -89,7 +141,7 @@ function asmFunc(global, env, buffer) { return $2_1 | 0; } - function $7($0) { + function $11($0) { $0 = $0 | 0; block : { loop_in : do { @@ -101,7 +153,7 @@ function asmFunc(global, env, buffer) { return 3 | 0; } - function $8($0) { + function $12($0) { $0 = $0 | 0; block : { loop_in : do { @@ -114,7 +166,7 @@ function asmFunc(global, env, buffer) { return 4 | 0; } - function $9($0) { + function $13($0) { $0 = $0 | 0; fake_return_waka123 : { loop_in : do { @@ -125,7 +177,111 @@ function asmFunc(global, env, buffer) { }; } - function $10($0, $1_1) { + function $14() { + var $0 = 0; + block : { + $0 = 1; + if (2) break block; + $0 = $0; + break block; + }; + return $0 | 0; + } + + function $15() { + var $0 = 0; + block : { + $0 = 1; + if (2) break block; + $0 = $0; + if (3) break block; + $0 = 4; + }; + return $0 | 0; + } + + function $16($0) { + $0 = $0 | 0; + var $2_1 = 0, $3_1 = 0; + block : { + $2_1 = 1; + if ($0) break block; + $3_1 = $2_1; + $2_1 = 2; + if ($3_1) break block; + $2_1 = 4; + }; + return $2_1 | 0; + } + + function $17() { + var $0 = 0; + block : { + $0 = 1; + if (2) break block; + $0 = $0; + switch (3 | 0) { + case 0: + break block; + case 1: + break block; + default: + break block; + }; + }; + return $0 | 0; + } + + function $18() { + var $0 = 0, $1_1 = 0; + block : { + $0 = 1; + if (3) break block; + $1_1 = $0; + $0 = 2; + switch ($1_1 | 0) { + case 0: + break block; + default: + break block; + }; + }; + return $0 | 0; + } + + function $19() { + var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $0 = 0, $0$hi = 0; + block : { + i64toi32_i32$0 = 0; + $0 = 1; + $0$hi = i64toi32_i32$0; + if (2) break block; + i64toi32_i32$0 = $0$hi; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$1 = $0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return i64toi32_i32$1 | 0; + }; + i64toi32_i32$1 = $0$hi; + i64toi32_i32$1 = i64toi32_i32$1; + i64toi32_i32$0 = $0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$0 | 0; + } + + function $20($0) { + $0 = $0 | 0; + var $2_1 = 0, $8_1 = 0; + if_ : { + $2_1 = 1; + if ($0) break if_; + if ($2_1) $8_1 = 2; else $8_1 = 3; + $2_1 = $8_1; + }; + return $2_1 | 0; + } + + function $21($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; block : { @@ -135,7 +291,7 @@ function asmFunc(global, env, buffer) { }; } - function $11($0, $1_1) { + function $22($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; block : { @@ -143,7 +299,195 @@ function asmFunc(global, env, buffer) { }; } - function $12($0) { + function $23($0) { + $0 = $0 | 0; + var $1_1 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + block : { + $1_1 = 3; + if (10) break block; + $1_1 = (wasm2js_i32$0 = $1_1, wasm2js_i32$1 = 2, wasm2js_i32$2 = $0, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1); + }; + return $1_1 | 0; + } + + function $24($0) { + $0 = $0 | 0; + var $1_1 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + block : { + $1_1 = 3; + if (10) break block; + $1_1 = (wasm2js_i32$0 = 1, wasm2js_i32$1 = $1_1, wasm2js_i32$2 = $0, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1); + }; + return $1_1 | 0; + } + + function $25() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + block : { + $0 = 3; + if (10) break block; + $0 = (wasm2js_i32$0 = 1, wasm2js_i32$1 = 2, wasm2js_i32$2 = $0, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1); + }; + return $0 | 0; + } + + function f($0, $1_1, $2_1) { + $0 = $0 | 0; + $1_1 = $1_1 | 0; + $2_1 = $2_1 | 0; + return 4294967295 | 0; + } + + function $27() { + var $0 = 0; + block : { + $0 = 12; + if (1) break block; + $0 = f($0 | 0, 2 | 0, 3 | 0) | 0; + }; + return $0 | 0; + } + + function $28() { + var $0 = 0; + block : { + $0 = 13; + if (1) break block; + $0 = f(1 | 0, $0 | 0, 3 | 0) | 0; + }; + return $0 | 0; + } + + function $29() { + var $0 = 0; + block : { + $0 = 14; + if (1) break block; + $0 = f(1 | 0, 2 | 0, $0 | 0) | 0; + }; + return $0 | 0; + } + + function func($0, $1_1, $2_1) { + $0 = $0 | 0; + $1_1 = $1_1 | 0; + $2_1 = $2_1 | 0; + return $0 | 0; + } + + function $31() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0; + block : { + $0 = 4; + if (10) break block; + wasm2js_i32$2 = $0; + wasm2js_i32$3 = 1; + wasm2js_i32$4 = 2; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iiii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0) | 0; + $0 = wasm2js_i32$0; + }; + return $0 | 0; + } + + function $32() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0; + block : { + $0 = 4; + if (10) break block; + wasm2js_i32$2 = 1; + wasm2js_i32$3 = $0; + wasm2js_i32$4 = 2; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iiii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0) | 0; + $0 = wasm2js_i32$0; + }; + return $0 | 0; + } + + function $33() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0; + block : { + $0 = 4; + if (10) break block; + wasm2js_i32$2 = 1; + wasm2js_i32$3 = 2; + wasm2js_i32$4 = $0; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iiii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0) | 0; + $0 = wasm2js_i32$0; + }; + return $0 | 0; + } + + function $34() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0; + block : { + $0 = 4; + if (10) break block; + wasm2js_i32$2 = 1; + wasm2js_i32$3 = 2; + wasm2js_i32$4 = 3; + wasm2js_i32$1 = $0; + wasm2js_i32$0 = FUNCTION_TABLE_iiii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0) | 0; + $0 = wasm2js_i32$0; + }; + return $0 | 0; + } + + function $35($0) { + $0 = $0 | 0; + var $3_1 = 0; + block : { + $3_1 = 17; + if ($0) break block; + $0 = $3_1; + $3_1 = 4294967295; + }; + return $3_1 | 0; + } + + function $36() { + var $0 = 0.0; + block : { + $0 = 1.0; + if (1) break block; + $0 = -$0; + }; + return +$0; + } + + function $37() { + var $0 = 0; + block : { + $0 = 1; + if (1) break block; + $0 = $0 + 10 | 0; + }; + return $0 | 0; + } + + function $38() { + var $0 = 0; + block : { + $0 = 1; + if (1) break block; + $0 = 10 - $0 | 0; + }; + return $0 | 0; + } + + function $39() { + var $0 = 0; + block : { + $0 = 1; + if (1) break block; + $0 = __wasm_memory_grow($0 | 0); + }; + return $0 | 0; + } + + function $40($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -156,7 +500,7 @@ function asmFunc(global, env, buffer) { return 1 + $2_1 | 0 | 0; } - function $13($0) { + function $41($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -170,7 +514,7 @@ function asmFunc(global, env, buffer) { return 1 + $2_1 | 0 | 0; } - function $14($0) { + function $42($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -185,7 +529,7 @@ function asmFunc(global, env, buffer) { return 1 + $2_1 | 0 | 0; } - function $15($0) { + function $43($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -200,7 +544,7 @@ function asmFunc(global, env, buffer) { return 1 + $2_1 | 0 | 0; } - function $16($0) { + function $44($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -217,7 +561,7 @@ function asmFunc(global, env, buffer) { return 1 + $2_1 | 0 | 0; } - function $17($0) { + function $45($0) { $0 = $0 | 0; var $2_1 = 0; block : { @@ -234,29 +578,139 @@ function asmFunc(global, env, buffer) { return 1 + $2_1 | 0 | 0; } + function __wasm_ctz_i32(var$0) { + var$0 = var$0 | 0; + if (var$0) return 31 - Math_clz32((var$0 + 4294967295 | 0) ^ var$0 | 0) | 0 | 0; + return 32 | 0; + } + + function __wasm_ctz_i64(var$0, var$0$hi) { + var$0 = var$0 | 0; + var$0$hi = var$0$hi | 0; + var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $10_1 = 0, $5$hi = 0, $8$hi = 0; + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$0 = i64toi32_i32$0; + if (((var$0 | i64toi32_i32$0 | 0 | 0) == (0 | 0) | 0) == (0 | 0)) { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$2 = var$0; + i64toi32_i32$1 = 4294967295; + i64toi32_i32$3 = 4294967295; + i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0; + i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$1 | 0; + if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0; + $5$hi = i64toi32_i32$5; + i64toi32_i32$5 = var$0$hi; + i64toi32_i32$5 = $5$hi; + i64toi32_i32$0 = i64toi32_i32$4; + i64toi32_i32$2 = var$0$hi; + i64toi32_i32$3 = var$0; + i64toi32_i32$2 = i64toi32_i32$5 ^ i64toi32_i32$2 | 0; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$0 = i64toi32_i32$0 ^ i64toi32_i32$3 | 0; + i64toi32_i32$3 = Math_clz32(i64toi32_i32$2); + i64toi32_i32$5 = 0; + if ((i64toi32_i32$3 | 0) == (32 | 0)) $10_1 = Math_clz32(i64toi32_i32$0) + 32 | 0; else $10_1 = i64toi32_i32$3; + $8$hi = i64toi32_i32$5; + i64toi32_i32$5 = 0; + i64toi32_i32$0 = 63; + i64toi32_i32$2 = $8$hi; + i64toi32_i32$3 = $10_1; + i64toi32_i32$1 = i64toi32_i32$0 - i64toi32_i32$3 | 0; + i64toi32_i32$4 = (i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0) + i64toi32_i32$2 | 0; + i64toi32_i32$4 = i64toi32_i32$5 - i64toi32_i32$4 | 0; + i64toi32_i32$4 = i64toi32_i32$4; + i64toi32_i32$0 = i64toi32_i32$1; + i64toi32_i32$HIGH_BITS = i64toi32_i32$4; + return i64toi32_i32$0 | 0; + } + i64toi32_i32$0 = 0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$4 = 64; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return i64toi32_i32$4 | 0; + } + + var FUNCTION_TABLE_iiii = [func]; + function __wasm_memory_grow(pagesToAdd) { + pagesToAdd = pagesToAdd | 0; + var oldPages = __wasm_memory_size() | 0; + var newPages = oldPages + pagesToAdd | 0; + if ((oldPages < newPages) && (newPages < 65535)) { + var newBuffer = new ArrayBuffer(Math_imul(newPages, 65536)); + var newHEAP8 = new global.Int8Array(newBuffer); + newHEAP8.set(HEAP8); + HEAP8 = newHEAP8; + HEAP16 = new global.Int16Array(newBuffer); + HEAP32 = new global.Int32Array(newBuffer); + HEAPU8 = new global.Uint8Array(newBuffer); + HEAPU16 = new global.Uint16Array(newBuffer); + HEAPU32 = new global.Uint32Array(newBuffer); + HEAPF32 = new global.Float32Array(newBuffer); + HEAPF64 = new global.Float64Array(newBuffer); + buffer = newBuffer; + } + return oldPages; + } + + function __wasm_memory_size() { + return buffer.byteLength / 65536 | 0; + } + return { - as_block_first: $1, - as_block_mid: $2, - as_block_last: $3, - as_block_first_value: $4, - as_block_mid_value: $5, - as_block_last_value: $6, - as_loop_first: $7, - as_loop_mid: $8, - as_loop_last: $9, - as_if_then: $10, - as_if_else: $11, - nested_block_value: $12, - nested_br_value: $13, - nested_br_if_value: $14, - nested_br_if_value_cond: $15, - nested_br_table_value: $16, - nested_br_table_value_index: $17 + type_i32_value: $1, + type_i64_value: $2, + type_f32_value: $3, + type_f64_value: $4, + as_block_first: $5, + as_block_mid: $6, + as_block_last: $7, + as_block_first_value: $8, + as_block_mid_value: $9, + as_block_last_value: $10, + as_loop_first: $11, + as_loop_mid: $12, + as_loop_last: $13, + as_br_value: $14, + as_br_if_value: $15, + as_br_if_value_cond: $16, + as_br_table_value: $17, + as_br_table_value_index: $18, + as_return_value: $19, + as_if_cond: $20, + as_if_then: $21, + as_if_else: $22, + as_select_first: $23, + as_select_second: $24, + as_select_cond: $25, + as_call_first: $27, + as_call_mid: $28, + as_call_last: $29, + as_call_indirect_func: $31, + as_call_indirect_first: $32, + as_call_indirect_mid: $33, + as_call_indirect_last: $34, + as_set_local_value: $35, + as_unary_operand: $36, + as_binary_left: $37, + as_binary_right: $38, + as_memory_grow_size: $39, + nested_block_value: $40, + nested_br_value: $41, + nested_br_if_value: $42, + nested_br_if_value_cond: $43, + nested_br_table_value: $44, + nested_br_table_value_index: $45 }; } const memasmFunc = new ArrayBuffer(65536); const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc); +export const type_i32_value = retasmFunc.type_i32_value; +export const type_i64_value = retasmFunc.type_i64_value; +export const type_f32_value = retasmFunc.type_f32_value; +export const type_f64_value = retasmFunc.type_f64_value; export const as_block_first = retasmFunc.as_block_first; export const as_block_mid = retasmFunc.as_block_mid; export const as_block_last = retasmFunc.as_block_last; @@ -266,8 +720,30 @@ export const as_block_last_value = retasmFunc.as_block_last_value; export const as_loop_first = retasmFunc.as_loop_first; export const as_loop_mid = retasmFunc.as_loop_mid; export const as_loop_last = retasmFunc.as_loop_last; +export const as_br_value = retasmFunc.as_br_value; +export const as_br_if_value = retasmFunc.as_br_if_value; +export const as_br_if_value_cond = retasmFunc.as_br_if_value_cond; +export const as_br_table_value = retasmFunc.as_br_table_value; +export const as_br_table_value_index = retasmFunc.as_br_table_value_index; +export const as_return_value = retasmFunc.as_return_value; +export const as_if_cond = retasmFunc.as_if_cond; export const as_if_then = retasmFunc.as_if_then; export const as_if_else = retasmFunc.as_if_else; +export const as_select_first = retasmFunc.as_select_first; +export const as_select_second = retasmFunc.as_select_second; +export const as_select_cond = retasmFunc.as_select_cond; +export const as_call_first = retasmFunc.as_call_first; +export const as_call_mid = retasmFunc.as_call_mid; +export const as_call_last = retasmFunc.as_call_last; +export const as_call_indirect_func = retasmFunc.as_call_indirect_func; +export const as_call_indirect_first = retasmFunc.as_call_indirect_first; +export const as_call_indirect_mid = retasmFunc.as_call_indirect_mid; +export const as_call_indirect_last = retasmFunc.as_call_indirect_last; +export const as_set_local_value = retasmFunc.as_set_local_value; +export const as_unary_operand = retasmFunc.as_unary_operand; +export const as_binary_left = retasmFunc.as_binary_left; +export const as_binary_right = retasmFunc.as_binary_right; +export const as_memory_grow_size = retasmFunc.as_memory_grow_size; export const nested_block_value = retasmFunc.nested_block_value; export const nested_br_value = retasmFunc.nested_br_value; export const nested_br_if_value = retasmFunc.nested_br_if_value; diff --git a/test/wasm2js/br_table.2asm.js b/test/wasm2js/br_table.2asm.js index 655e2c96fbf..0a2bfd3a748 100644 --- a/test/wasm2js/br_table.2asm.js +++ b/test/wasm2js/br_table.2asm.js @@ -49582,12 +49582,15 @@ function asmFunc(global, env, buffer) { } function $23() { - var $0 = 0; + var $1_1 = 0; block : { - $0 = 9; - break block; + $1_1 = 9; + switch (0 | 0) { + default: + break block; + }; }; - return $0 | 0; + return $1_1 | 0; } function $24() { @@ -49667,7 +49670,7 @@ function asmFunc(global, env, buffer) { } function $31() { - var $1_1 = 0, $2_1 = 0; + var $1_1 = 0, $6_1 = 0; if_ : { $1_1 = 2; switch (0 | 0) { @@ -49681,7 +49684,7 @@ function asmFunc(global, env, buffer) { function $32($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; - var $4_1 = 0, $6_1 = 0; + var $4_1 = 0, $8_1 = 0; block : { if ($0) { $4_1 = 3; @@ -49689,8 +49692,8 @@ function asmFunc(global, env, buffer) { default: break block; }; - } else $6_1 = $1_1; - $4_1 = $6_1; + } else $8_1 = $1_1; + $4_1 = $8_1; }; return $4_1 | 0; } @@ -49698,13 +49701,13 @@ function asmFunc(global, env, buffer) { function $33($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; - var $4_1 = 0, $5_1 = 0, $6_1 = 0, $7_1 = 0; + var $6_1 = 0, $7_1 = 0, $8_1 = 0, $9_1 = 0; block : { if_ : { - if ($0) $7_1 = $1_1; else { - $4_1 = 4; - $5_1 = $4_1; - $6_1 = $4_1; + if ($0) $9_1 = $1_1; else { + $6_1 = 4; + $7_1 = $6_1; + $8_1 = $6_1; switch (0 | 0) { case 0: break block; @@ -49712,11 +49715,11 @@ function asmFunc(global, env, buffer) { break if_; }; } - $6_1 = $7_1; + $8_1 = $9_1; }; - $5_1 = $6_1; + $7_1 = $8_1; }; - return $5_1 | 0; + return $7_1 | 0; } function $34($0, $1_1) { @@ -50195,6 +50198,41 @@ function asmFunc(global, env, buffer) { return $3_1 | 0; } + function $66($0) { + $0 = $0 | 0; + var $4_1 = 0, $9_1 = 0; + loop_in : do { + block : { + switch ($0 | 0) { + case 0: + break loop_in; + case 1: + break block; + default: + break block; + }; + }; + $4_1 = 0; + break loop_in; + } while (1); + $0 = $4_1; + loop_in21 : do { + block22 : { + switch ($0 | 0) { + case 0: + break block22; + case 1: + break loop_in21; + default: + break loop_in21; + }; + }; + $9_1 = 3; + break loop_in21; + } while (1); + return $9_1 | 0; + } + function __wasm_ctz_i32(var$0) { var$0 = var$0 | 0; if (var$0) return 31 - Math_clz32((var$0 + 4294967295 | 0) ^ var$0 | 0) | 0 | 0; @@ -50308,13 +50346,14 @@ function asmFunc(global, env, buffer) { as_compare_left: $56, as_compare_right: $57, as_convert_operand: $58, - as_grow_memory_size: $59, + as_memory_grow_size: $59, nested_block_value: $60, nested_br_value: $61, nested_br_if_value: $62, nested_br_if_value_cond: $63, nested_br_table_value: $64, - nested_br_table_value_index: $65 + nested_br_table_value_index: $65, + nested_br_table_loop_block: $66 }; } @@ -50377,10 +50416,11 @@ export const as_test_operand = retasmFunc.as_test_operand; export const as_compare_left = retasmFunc.as_compare_left; export const as_compare_right = retasmFunc.as_compare_right; export const as_convert_operand = retasmFunc.as_convert_operand; -export const as_grow_memory_size = retasmFunc.as_grow_memory_size; +export const as_memory_grow_size = retasmFunc.as_memory_grow_size; export const nested_block_value = retasmFunc.nested_block_value; export const nested_br_value = retasmFunc.nested_br_value; export const nested_br_if_value = retasmFunc.nested_br_if_value; export const nested_br_if_value_cond = retasmFunc.nested_br_if_value_cond; export const nested_br_table_value = retasmFunc.nested_br_table_value; export const nested_br_table_value_index = retasmFunc.nested_br_table_value_index; +export const nested_br_table_loop_block = retasmFunc.nested_br_table_loop_block; diff --git a/test/wasm2js/br_table_temp.2asm.js b/test/wasm2js/br_table_temp.2asm.js index 97f5950ba39..9e50c9c0265 100644 --- a/test/wasm2js/br_table_temp.2asm.js +++ b/test/wasm2js/br_table_temp.2asm.js @@ -50304,7 +50304,7 @@ function asmFunc(global, env, buffer) { as_compare_left: $56, as_compare_right: $57, as_convert_operand: $58, - as_grow_memory_size: $59, + as_memory_grow_size: $59, nested_block_value: $60, nested_br_value: $61, nested_br_if_value: $62, @@ -50373,7 +50373,7 @@ export const as_test_operand = retasmFunc.as_test_operand; export const as_compare_left = retasmFunc.as_compare_left; export const as_compare_right = retasmFunc.as_compare_right; export const as_convert_operand = retasmFunc.as_convert_operand; -export const as_grow_memory_size = retasmFunc.as_grow_memory_size; +export const as_memory_grow_size = retasmFunc.as_memory_grow_size; export const nested_block_value = retasmFunc.nested_block_value; export const nested_br_value = retasmFunc.nested_br_value; export const nested_br_if_value = retasmFunc.nested_br_if_value; diff --git a/test/wasm2js/br_table_temp.wast b/test/wasm2js/br_table_temp.wast index abd66053aad..aadacdd4b95 100644 --- a/test/wasm2js/br_table_temp.wast +++ b/test/wasm2js/br_table_temp.wast @@ -1090,8 +1090,8 @@ (block i32 (i32.wrap/i64 (br_table 0 (i32.const 41) (i32.const 0)))) ) - (func (export "as-grow_memory-size") (result i32) - (block i32 (grow_memory (br_table 0 (i32.const 40) (i32.const 0)))) + (func (export "as-memory.grow-size") (result i32) + (block i32 (memory.grow (br_table 0 (i32.const 40) (i32.const 0)))) ) (func (export "nested-block-value") (param i32) (result i32) @@ -1331,7 +1331,7 @@ (assert_return (invoke "as-convert-operand") (i32.const 41)) -(assert_return (invoke "as-grow_memory-size") (i32.const 40)) +(assert_return (invoke "as-memory.grow-size") (i32.const 40)) (assert_return (invoke "nested-block-value" (i32.const 0)) (i32.const 19)) (assert_return (invoke "nested-block-value" (i32.const 1)) (i32.const 17)) diff --git a/test/wasm2js/call.2asm.js b/test/wasm2js/call.2asm.js index 04255b1fb65..264cf75743b 100644 --- a/test/wasm2js/call.2asm.js +++ b/test/wasm2js/call.2asm.js @@ -164,13 +164,15 @@ function asmFunc(global, env, buffer) { function fac($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, $8 = 0, $8$hi = 0, i64toi32_i32$3 = 0, $6 = 0, $6$hi = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, $12_1 = 0, $12$hi = 0, i64toi32_i32$3 = 0, $8 = 0, $8$hi = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; if (($0 | i64toi32_i32$0 | 0 | 0) == (0 | 0)) { i64toi32_i32$0 = 0; - $8 = 1; - $8$hi = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + $12_1 = 1; + $12$hi = i64toi32_i32$0; } else { i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; @@ -182,19 +184,21 @@ function asmFunc(global, env, buffer) { i64toi32_i32$5 = i64toi32_i32$5; i64toi32_i32$5 = fac(i64toi32_i32$2 - i64toi32_i32$3 | 0 | 0, i64toi32_i32$5 | 0) | 0; i64toi32_i32$2 = i64toi32_i32$HIGH_BITS; - $6 = i64toi32_i32$5; - $6$hi = i64toi32_i32$2; + $8 = i64toi32_i32$5; + $8$hi = i64toi32_i32$2; i64toi32_i32$2 = i64toi32_i32$0; - i64toi32_i32$5 = $6$hi; - i64toi32_i32$5 = __wasm_i64_mul($0 | 0, i64toi32_i32$0 | 0, $6 | 0, i64toi32_i32$5 | 0) | 0; + i64toi32_i32$5 = $8$hi; + i64toi32_i32$5 = __wasm_i64_mul($0 | 0, i64toi32_i32$0 | 0, $8 | 0, i64toi32_i32$5 | 0) | 0; i64toi32_i32$2 = i64toi32_i32$HIGH_BITS; i64toi32_i32$2 = i64toi32_i32$2; - $8 = i64toi32_i32$5; - $8$hi = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + $12_1 = i64toi32_i32$5; + $12$hi = i64toi32_i32$2; } - i64toi32_i32$2 = $8$hi; + i64toi32_i32$2 = $12$hi; i64toi32_i32$2 = i64toi32_i32$2; - i64toi32_i32$5 = $8; + i64toi32_i32$5 = $12_1; i64toi32_i32$HIGH_BITS = i64toi32_i32$2; return i64toi32_i32$5 | 0; } @@ -204,14 +208,16 @@ function asmFunc(global, env, buffer) { $0$hi = $0$hi | 0; $1 = $1 | 0; $1$hi = $1$hi | 0; - var i64toi32_i32$5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $11 = 0, $11$hi = 0, i64toi32_i32$3 = 0, $6 = 0, $6$hi = 0, $9 = 0, $9$hi = 0; + var i64toi32_i32$5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $15_1 = 0, $15$hi = 0, i64toi32_i32$3 = 0, $8 = 0, $8$hi = 0, $11 = 0, $11$hi = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; if (($0 | i64toi32_i32$0 | 0 | 0) == (0 | 0)) { i64toi32_i32$0 = $1$hi; i64toi32_i32$0 = i64toi32_i32$0; - $11 = $1; - $11$hi = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + $15_1 = $1; + $15$hi = i64toi32_i32$0; } else { i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; @@ -219,27 +225,29 @@ function asmFunc(global, env, buffer) { i64toi32_i32$3 = 1; i64toi32_i32$5 = (i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0) + 0 | 0; i64toi32_i32$5 = i64toi32_i32$0 - i64toi32_i32$5 | 0; - $6 = i64toi32_i32$2 - i64toi32_i32$3 | 0; - $6$hi = i64toi32_i32$5; + $8 = i64toi32_i32$2 - i64toi32_i32$3 | 0; + $8$hi = i64toi32_i32$5; i64toi32_i32$5 = i64toi32_i32$0; i64toi32_i32$5 = $1$hi; i64toi32_i32$5 = i64toi32_i32$0; i64toi32_i32$2 = $1$hi; i64toi32_i32$2 = __wasm_i64_mul($0 | 0, i64toi32_i32$5 | 0, $1 | 0, i64toi32_i32$2 | 0) | 0; i64toi32_i32$5 = i64toi32_i32$HIGH_BITS; - $9 = i64toi32_i32$2; - $9$hi = i64toi32_i32$5; - i64toi32_i32$5 = $6$hi; - i64toi32_i32$2 = $9$hi; - i64toi32_i32$2 = fac_acc($6 | 0, i64toi32_i32$5 | 0, $9 | 0, i64toi32_i32$2 | 0) | 0; - i64toi32_i32$5 = i64toi32_i32$HIGH_BITS; - i64toi32_i32$5 = i64toi32_i32$5; $11 = i64toi32_i32$2; $11$hi = i64toi32_i32$5; + i64toi32_i32$5 = $8$hi; + i64toi32_i32$2 = $11$hi; + i64toi32_i32$2 = fac_acc($8 | 0, i64toi32_i32$5 | 0, $11 | 0, i64toi32_i32$2 | 0) | 0; + i64toi32_i32$5 = i64toi32_i32$HIGH_BITS; + i64toi32_i32$5 = i64toi32_i32$5; + i64toi32_i32$5 = i64toi32_i32$5; + i64toi32_i32$5 = i64toi32_i32$5; + $15_1 = i64toi32_i32$2; + $15$hi = i64toi32_i32$5; } - i64toi32_i32$5 = $11$hi; + i64toi32_i32$5 = $15$hi; i64toi32_i32$5 = i64toi32_i32$5; - i64toi32_i32$2 = $11; + i64toi32_i32$2 = $15_1; i64toi32_i32$HIGH_BITS = i64toi32_i32$5; return i64toi32_i32$2 | 0; } @@ -247,7 +255,7 @@ function asmFunc(global, env, buffer) { function fib($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$6 = 0, $10 = 0, $10$hi = 0, $5 = 0, $5$hi = 0, $8 = 0, $8$hi = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$6 = 0, $14_1 = 0, $14$hi = 0, $7 = 0, $7$hi = 0, $10 = 0, $10$hi = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; i64toi32_i32$2 = $0; @@ -255,8 +263,10 @@ function asmFunc(global, env, buffer) { i64toi32_i32$3 = 1; if (i64toi32_i32$0 >>> 0 < i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 <= i64toi32_i32$3 >>> 0 | 0) | 0) { i64toi32_i32$2 = 0; - $10 = 1; - $10$hi = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + $14_1 = 1; + $14$hi = i64toi32_i32$2; } else { i64toi32_i32$2 = $0$hi; i64toi32_i32$2 = i64toi32_i32$2; @@ -270,8 +280,8 @@ function asmFunc(global, env, buffer) { i64toi32_i32$5 = i64toi32_i32$5; i64toi32_i32$5 = fib(i64toi32_i32$4 | 0, i64toi32_i32$5 | 0) | 0; i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; - $5 = i64toi32_i32$5; - $5$hi = i64toi32_i32$3; + $7 = i64toi32_i32$5; + $7$hi = i64toi32_i32$3; i64toi32_i32$3 = i64toi32_i32$2; i64toi32_i32$3 = i64toi32_i32$2; i64toi32_i32$2 = $0; @@ -284,22 +294,24 @@ function asmFunc(global, env, buffer) { i64toi32_i32$4 = i64toi32_i32$4; i64toi32_i32$4 = fib(i64toi32_i32$0 | 0, i64toi32_i32$4 | 0) | 0; i64toi32_i32$2 = i64toi32_i32$HIGH_BITS; - $8 = i64toi32_i32$4; - $8$hi = i64toi32_i32$2; - i64toi32_i32$2 = $5$hi; - i64toi32_i32$3 = $5; - i64toi32_i32$4 = $8$hi; - i64toi32_i32$1 = $8; + $10 = i64toi32_i32$4; + $10$hi = i64toi32_i32$2; + i64toi32_i32$2 = $7$hi; + i64toi32_i32$3 = $7; + i64toi32_i32$4 = $10$hi; + i64toi32_i32$1 = $10; i64toi32_i32$5 = i64toi32_i32$3 + i64toi32_i32$1 | 0; i64toi32_i32$0 = i64toi32_i32$2 + i64toi32_i32$4 | 0; if (i64toi32_i32$5 >>> 0 < i64toi32_i32$1 >>> 0) i64toi32_i32$0 = i64toi32_i32$0 + 1 | 0; i64toi32_i32$0 = i64toi32_i32$0; - $10 = i64toi32_i32$5; - $10$hi = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + $14_1 = i64toi32_i32$5; + $14$hi = i64toi32_i32$0; } - i64toi32_i32$0 = $10$hi; + i64toi32_i32$0 = $14$hi; i64toi32_i32$0 = i64toi32_i32$0; - i64toi32_i32$3 = $10; + i64toi32_i32$3 = $14_1; i64toi32_i32$HIGH_BITS = i64toi32_i32$0; return i64toi32_i32$3 | 0; } @@ -307,37 +319,37 @@ function asmFunc(global, env, buffer) { function even($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, $6 = 0, i64toi32_i32$3 = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, $10 = 0, i64toi32_i32$3 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; - if (($0 | i64toi32_i32$0 | 0 | 0) == (0 | 0)) $6 = 44; else { + if (($0 | i64toi32_i32$0 | 0 | 0) == (0 | 0)) $10 = 44; else { i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; i64toi32_i32$3 = 1; i64toi32_i32$5 = ($0 >>> 0 < i64toi32_i32$3 >>> 0) + 0 | 0; i64toi32_i32$5 = i64toi32_i32$0 - i64toi32_i32$5 | 0; i64toi32_i32$5 = i64toi32_i32$5; - $6 = odd($0 - i64toi32_i32$3 | 0 | 0, i64toi32_i32$5 | 0) | 0; + $10 = odd($0 - i64toi32_i32$3 | 0 | 0, i64toi32_i32$5 | 0) | 0; } - return $6 | 0; + return $10 | 0; } function odd($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, $6 = 0, i64toi32_i32$3 = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, $10 = 0, i64toi32_i32$3 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; - if (($0 | i64toi32_i32$0 | 0 | 0) == (0 | 0)) $6 = 99; else { + if (($0 | i64toi32_i32$0 | 0 | 0) == (0 | 0)) $10 = 99; else { i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; i64toi32_i32$3 = 1; i64toi32_i32$5 = ($0 >>> 0 < i64toi32_i32$3 >>> 0) + 0 | 0; i64toi32_i32$5 = i64toi32_i32$0 - i64toi32_i32$5 | 0; i64toi32_i32$5 = i64toi32_i32$5; - $6 = even($0 - i64toi32_i32$3 | 0 | 0, i64toi32_i32$5 | 0) | 0; + $10 = even($0 - i64toi32_i32$3 | 0 | 0, i64toi32_i32$5 | 0) | 0; } - return $6 | 0; + return $10 | 0; } function runaway() { diff --git a/test/wasm2js/call_indirect.2asm.js b/test/wasm2js/call_indirect.2asm.js index 7a051de377a..b23372449b7 100644 --- a/test/wasm2js/call_indirect.2asm.js +++ b/test/wasm2js/call_indirect.2asm.js @@ -287,13 +287,15 @@ function asmFunc(global, env, buffer) { function fac($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, $8 = 0, $8$hi = 0, i64toi32_i32$3 = 0, $6 = 0, $6$hi = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, $12 = 0, $12$hi = 0, i64toi32_i32$3 = 0, $8 = 0, $8$hi = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; if (($0 | i64toi32_i32$0 | 0 | 0) == (0 | 0)) { i64toi32_i32$0 = 0; - $8 = 1; - $8$hi = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + $12 = 1; + $12$hi = i64toi32_i32$0; } else { i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; @@ -309,19 +311,21 @@ function asmFunc(global, env, buffer) { wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 31](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; i64toi32_i32$5 = wasm2js_i32$0; i64toi32_i32$2 = i64toi32_i32$HIGH_BITS; - $6 = i64toi32_i32$5; - $6$hi = i64toi32_i32$2; + $8 = i64toi32_i32$5; + $8$hi = i64toi32_i32$2; i64toi32_i32$2 = i64toi32_i32$0; - i64toi32_i32$5 = $6$hi; - i64toi32_i32$5 = __wasm_i64_mul($0 | 0, i64toi32_i32$0 | 0, $6 | 0, i64toi32_i32$5 | 0) | 0; + i64toi32_i32$5 = $8$hi; + i64toi32_i32$5 = __wasm_i64_mul($0 | 0, i64toi32_i32$0 | 0, $8 | 0, i64toi32_i32$5 | 0) | 0; i64toi32_i32$2 = i64toi32_i32$HIGH_BITS; i64toi32_i32$2 = i64toi32_i32$2; - $8 = i64toi32_i32$5; - $8$hi = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + $12 = i64toi32_i32$5; + $12$hi = i64toi32_i32$2; } - i64toi32_i32$2 = $8$hi; + i64toi32_i32$2 = $12$hi; i64toi32_i32$2 = i64toi32_i32$2; - i64toi32_i32$5 = $8; + i64toi32_i32$5 = $12; i64toi32_i32$HIGH_BITS = i64toi32_i32$2; return i64toi32_i32$5 | 0; } @@ -329,7 +333,7 @@ function asmFunc(global, env, buffer) { function fib($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$6 = 0, $10 = 0, $10$hi = 0, $5 = 0, $5$hi = 0, $8 = 0, $8$hi = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$6 = 0, $14 = 0, $14$hi = 0, $7 = 0, $7$hi = 0, $10 = 0, $10$hi = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; i64toi32_i32$2 = $0; @@ -337,8 +341,10 @@ function asmFunc(global, env, buffer) { i64toi32_i32$3 = 1; if (i64toi32_i32$0 >>> 0 < i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 <= i64toi32_i32$3 >>> 0 | 0) | 0) { i64toi32_i32$2 = 0; - $10 = 1; - $10$hi = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + $14 = 1; + $14$hi = i64toi32_i32$2; } else { i64toi32_i32$2 = $0$hi; i64toi32_i32$2 = i64toi32_i32$2; @@ -356,8 +362,8 @@ function asmFunc(global, env, buffer) { wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 31](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; i64toi32_i32$5 = wasm2js_i32$0; i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; - $5 = i64toi32_i32$5; - $5$hi = i64toi32_i32$3; + $7 = i64toi32_i32$5; + $7$hi = i64toi32_i32$3; i64toi32_i32$3 = i64toi32_i32$2; i64toi32_i32$3 = i64toi32_i32$2; i64toi32_i32$2 = $0; @@ -374,48 +380,50 @@ function asmFunc(global, env, buffer) { wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 31](wasm2js_i32$3 | 0, wasm2js_i32$2 | 0) | 0; i64toi32_i32$4 = wasm2js_i32$0; i64toi32_i32$2 = i64toi32_i32$HIGH_BITS; - $8 = i64toi32_i32$4; - $8$hi = i64toi32_i32$2; - i64toi32_i32$2 = $5$hi; - i64toi32_i32$3 = $5; - i64toi32_i32$4 = $8$hi; - i64toi32_i32$1 = $8; + $10 = i64toi32_i32$4; + $10$hi = i64toi32_i32$2; + i64toi32_i32$2 = $7$hi; + i64toi32_i32$3 = $7; + i64toi32_i32$4 = $10$hi; + i64toi32_i32$1 = $10; i64toi32_i32$5 = i64toi32_i32$3 + i64toi32_i32$1 | 0; i64toi32_i32$0 = i64toi32_i32$2 + i64toi32_i32$4 | 0; if (i64toi32_i32$5 >>> 0 < i64toi32_i32$1 >>> 0) i64toi32_i32$0 = i64toi32_i32$0 + 1 | 0; i64toi32_i32$0 = i64toi32_i32$0; - $10 = i64toi32_i32$5; - $10$hi = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + $14 = i64toi32_i32$5; + $14$hi = i64toi32_i32$0; } - i64toi32_i32$0 = $10$hi; + i64toi32_i32$0 = $14$hi; i64toi32_i32$0 = i64toi32_i32$0; - i64toi32_i32$3 = $10; + i64toi32_i32$3 = $14; i64toi32_i32$HIGH_BITS = i64toi32_i32$0; return i64toi32_i32$3 | 0; } function even($0) { $0 = $0 | 0; - var $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; - if (($0 | 0) == (0 | 0)) $6 = 44; else { + var $10 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + if (($0 | 0) == (0 | 0)) $10 = 44; else { wasm2js_i32$2 = $0 - 1 | 0; wasm2js_i32$1 = 15; wasm2js_i32$0 = FUNCTION_TABLE_ii[wasm2js_i32$1 & 31](wasm2js_i32$2 | 0) | 0; - $6 = wasm2js_i32$0; + $10 = wasm2js_i32$0; } - return $6 | 0; + return $10 | 0; } function odd($0) { $0 = $0 | 0; - var $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; - if (($0 | 0) == (0 | 0)) $6 = 99; else { + var $10 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + if (($0 | 0) == (0 | 0)) $10 = 99; else { wasm2js_i32$2 = $0 - 1 | 0; wasm2js_i32$1 = 14; wasm2js_i32$0 = FUNCTION_TABLE_ii[wasm2js_i32$1 & 31](wasm2js_i32$2 | 0) | 0; - $6 = wasm2js_i32$0; + $10 = wasm2js_i32$0; } - return $6 | 0; + return $10 | 0; } function runaway() { diff --git a/test/wasm2js/f32.2asm.js b/test/wasm2js/f32.2asm.js index 454fb8d8b03..1509ca0ce44 100644 --- a/test/wasm2js/f32.2asm.js +++ b/test/wasm2js/f32.2asm.js @@ -82,22 +82,6 @@ function asmFunc(global, env, buffer) { return Math_fround(Math_fround(__wasm_nearest_f32(Math_fround(x)))); } - function $11(x) { - x = Math_fround(x); - return Math_fround(Math_fround(Math_abs(x))); - } - - function $12(x) { - x = Math_fround(x); - return Math_fround(Math_fround(-x)); - } - - function $13(x, y) { - x = Math_fround(x); - y = Math_fround(y); - return Math_fround((HEAP32[0] = (HEAPF32[0] = x, HEAP32[0] | 0) & 2147483647 | 0 | ((HEAPF32[0] = y, HEAP32[0] | 0) & 2147483648 | 0) | 0, HEAPF32[0])); - } - function __wasm_nearest_f32(var$0) { var$0 = Math_fround(var$0); var var$1 = Math_fround(0), var$2 = Math_fround(0), wasm2js_f32$0 = Math_fround(0), wasm2js_f32$1 = Math_fround(0), wasm2js_i32$0 = 0; @@ -129,10 +113,7 @@ function asmFunc(global, env, buffer) { ceil: $7, floor: $8, trunc: $9, - nearest: $10, - abs: $11, - neg: $12, - copysign: $13 + nearest: $10 }; } @@ -149,6 +130,3 @@ export const ceil = retasmFunc.ceil; export const floor = retasmFunc.floor; export const trunc = retasmFunc.trunc; export const nearest = retasmFunc.nearest; -export const abs = retasmFunc.abs; -export const neg = retasmFunc.neg; -export const copysign = retasmFunc.copysign; diff --git a/test/wasm2js/f64.2asm.js b/test/wasm2js/f64.2asm.js index 4ac679b7277..bb28934aa2a 100644 --- a/test/wasm2js/f64.2asm.js +++ b/test/wasm2js/f64.2asm.js @@ -82,57 +82,6 @@ function asmFunc(global, env, buffer) { return +(+__wasm_nearest_f64(+x)); } - function $11(x) { - x = +x; - return +Math_abs(x); - } - - function $12(x) { - x = +x; - return +-x; - } - - function $13(x, y) { - x = +x; - y = +y; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, $4_1 = 0, $4$hi = 0, $7_1 = 0, $7$hi = 0, wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0, wasm2js_i32$1 = 0; - wasm2js_i32$0 = 0; - wasm2js_f64$0 = x; - HEAPF64[wasm2js_i32$0 >> 3] = wasm2js_f64$0; - i64toi32_i32$0 = HEAP32[(0 + 4 | 0) >> 2] | 0; - i64toi32_i32$0 = i64toi32_i32$0; - i64toi32_i32$2 = HEAP32[0 >> 2] | 0; - i64toi32_i32$1 = 2147483647; - i64toi32_i32$3 = 4294967295; - i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$1 | 0; - $4_1 = i64toi32_i32$2 & i64toi32_i32$3 | 0; - $4$hi = i64toi32_i32$1; - wasm2js_i32$0 = 0; - wasm2js_f64$0 = y; - HEAPF64[wasm2js_i32$0 >> 3] = wasm2js_f64$0; - i64toi32_i32$1 = HEAP32[(0 + 4 | 0) >> 2] | 0; - i64toi32_i32$1 = i64toi32_i32$1; - i64toi32_i32$0 = HEAP32[0 >> 2] | 0; - i64toi32_i32$2 = 2147483648; - i64toi32_i32$3 = 0; - i64toi32_i32$2 = i64toi32_i32$1 & i64toi32_i32$2 | 0; - $7_1 = i64toi32_i32$0 & i64toi32_i32$3 | 0; - $7$hi = i64toi32_i32$2; - i64toi32_i32$2 = $4$hi; - i64toi32_i32$1 = $4_1; - i64toi32_i32$0 = $7$hi; - i64toi32_i32$3 = $7_1; - i64toi32_i32$0 = i64toi32_i32$2 | i64toi32_i32$0 | 0; - i64toi32_i32$0 = i64toi32_i32$0; - wasm2js_i32$0 = 0; - wasm2js_i32$1 = i64toi32_i32$1 | i64toi32_i32$3 | 0; - HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1; - wasm2js_i32$0 = 0; - wasm2js_i32$1 = i64toi32_i32$0; - HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1; - return +(+HEAPF64[0 >> 3]); - } - function __wasm_nearest_f64(var$0) { var$0 = +var$0; var var$1 = 0.0, var$2 = 0.0, wasm2js_f64$0 = 0.0, wasm2js_f64$1 = 0.0, wasm2js_i32$0 = 0; @@ -164,10 +113,7 @@ function asmFunc(global, env, buffer) { ceil: $7, floor: $8, trunc: $9, - nearest: $10, - abs: $11, - neg: $12, - copysign: $13 + nearest: $10 }; } @@ -184,6 +130,3 @@ export const ceil = retasmFunc.ceil; export const floor = retasmFunc.floor; export const trunc = retasmFunc.trunc; export const nearest = retasmFunc.nearest; -export const abs = retasmFunc.abs; -export const neg = retasmFunc.neg; -export const copysign = retasmFunc.copysign; diff --git a/test/wasm2js/fac.2asm.js b/test/wasm2js/fac.2asm.js index 3b35473f8dc..baad4b55e59 100644 --- a/test/wasm2js/fac.2asm.js +++ b/test/wasm2js/fac.2asm.js @@ -24,33 +24,42 @@ function asmFunc(global, env, buffer) { function $0($0_1, $0$hi) { $0_1 = $0_1 | 0; $0$hi = $0$hi | 0; - var i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, $8 = 0, $8$hi = 0, $6 = 0, $6$hi = 0; + var i64toi32_i32$3 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, $12 = 0, $12$hi = 0, $8 = 0, $8$hi = 0; + i64toi32_i32$2 = $0_1; i64toi32_i32$1 = 0; i64toi32_i32$3 = 0; - if (($0_1 | 0) == (i64toi32_i32$3 | 0) & ($0$hi | 0) == (i64toi32_i32$1 | 0) | 0) { - $8 = 1; - $8$hi = 0; + if ((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & ($0$hi | 0) == (i64toi32_i32$1 | 0) | 0) { + i64toi32_i32$2 = 0; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + $12 = 1; + $12$hi = i64toi32_i32$2; } else { + i64toi32_i32$2 = $0$hi; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; i64toi32_i32$3 = $0_1; i64toi32_i32$1 = 1; i64toi32_i32$5 = (i64toi32_i32$3 >>> 0 < i64toi32_i32$1 >>> 0) + 0 | 0; - i64toi32_i32$5 = $0$hi - i64toi32_i32$5 | 0; + i64toi32_i32$5 = i64toi32_i32$2 - i64toi32_i32$5 | 0; i64toi32_i32$5 = i64toi32_i32$5; i64toi32_i32$5 = $0(i64toi32_i32$3 - i64toi32_i32$1 | 0 | 0, i64toi32_i32$5 | 0) | 0; i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; - $6 = i64toi32_i32$5; - $6$hi = i64toi32_i32$3; - i64toi32_i32$3 = $0$hi; - i64toi32_i32$5 = $6$hi; - i64toi32_i32$5 = __wasm_i64_mul($0_1 | 0, $0$hi | 0, $6 | 0, i64toi32_i32$5 | 0) | 0; - i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; - i64toi32_i32$3 = i64toi32_i32$3; $8 = i64toi32_i32$5; $8$hi = i64toi32_i32$3; + i64toi32_i32$3 = i64toi32_i32$2; + i64toi32_i32$5 = $8$hi; + i64toi32_i32$5 = __wasm_i64_mul($0_1 | 0, i64toi32_i32$3 | 0, $8 | 0, i64toi32_i32$5 | 0) | 0; + i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; + i64toi32_i32$3 = i64toi32_i32$3; + i64toi32_i32$3 = i64toi32_i32$3; + i64toi32_i32$3 = i64toi32_i32$3; + $12 = i64toi32_i32$5; + $12$hi = i64toi32_i32$3; } - i64toi32_i32$3 = $8$hi; + i64toi32_i32$3 = $12$hi; i64toi32_i32$3 = i64toi32_i32$3; - i64toi32_i32$5 = $8; + i64toi32_i32$5 = $12; i64toi32_i32$HIGH_BITS = i64toi32_i32$3; return i64toi32_i32$5 | 0; } @@ -58,33 +67,42 @@ function asmFunc(global, env, buffer) { function fac_rec_named(n, n$hi) { n = n | 0; n$hi = n$hi | 0; - var i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, $8 = 0, $8$hi = 0, $6 = 0, $6$hi = 0; + var i64toi32_i32$3 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, $12 = 0, $12$hi = 0, $8 = 0, $8$hi = 0; + i64toi32_i32$2 = n; i64toi32_i32$1 = 0; i64toi32_i32$3 = 0; - if ((n | 0) == (i64toi32_i32$3 | 0) & (n$hi | 0) == (i64toi32_i32$1 | 0) | 0) { - $8 = 1; - $8$hi = 0; + if ((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (n$hi | 0) == (i64toi32_i32$1 | 0) | 0) { + i64toi32_i32$2 = 0; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; + $12 = 1; + $12$hi = i64toi32_i32$2; } else { + i64toi32_i32$2 = n$hi; + i64toi32_i32$2 = i64toi32_i32$2; + i64toi32_i32$2 = i64toi32_i32$2; i64toi32_i32$3 = n; i64toi32_i32$1 = 1; i64toi32_i32$5 = (i64toi32_i32$3 >>> 0 < i64toi32_i32$1 >>> 0) + 0 | 0; - i64toi32_i32$5 = n$hi - i64toi32_i32$5 | 0; + i64toi32_i32$5 = i64toi32_i32$2 - i64toi32_i32$5 | 0; i64toi32_i32$5 = i64toi32_i32$5; i64toi32_i32$5 = fac_rec_named(i64toi32_i32$3 - i64toi32_i32$1 | 0 | 0, i64toi32_i32$5 | 0) | 0; i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; - $6 = i64toi32_i32$5; - $6$hi = i64toi32_i32$3; - i64toi32_i32$3 = n$hi; - i64toi32_i32$5 = $6$hi; - i64toi32_i32$5 = __wasm_i64_mul(n | 0, n$hi | 0, $6 | 0, i64toi32_i32$5 | 0) | 0; - i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; - i64toi32_i32$3 = i64toi32_i32$3; $8 = i64toi32_i32$5; $8$hi = i64toi32_i32$3; + i64toi32_i32$3 = i64toi32_i32$2; + i64toi32_i32$5 = $8$hi; + i64toi32_i32$5 = __wasm_i64_mul(n | 0, i64toi32_i32$3 | 0, $8 | 0, i64toi32_i32$5 | 0) | 0; + i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; + i64toi32_i32$3 = i64toi32_i32$3; + i64toi32_i32$3 = i64toi32_i32$3; + i64toi32_i32$3 = i64toi32_i32$3; + $12 = i64toi32_i32$5; + $12$hi = i64toi32_i32$3; } - i64toi32_i32$3 = $8$hi; + i64toi32_i32$3 = $12$hi; i64toi32_i32$3 = i64toi32_i32$3; - i64toi32_i32$5 = $8; + i64toi32_i32$5 = $12; i64toi32_i32$HIGH_BITS = i64toi32_i32$3; return i64toi32_i32$5 | 0; } @@ -107,7 +125,7 @@ function asmFunc(global, env, buffer) { i64toi32_i32$2 = $1; i64toi32_i32$1 = 0; i64toi32_i32$3 = 0; - if ((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0) break block; else block0 : { + if ((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0) break block; else { i64toi32_i32$2 = $1$hi; i64toi32_i32$2 = $2$hi; i64toi32_i32$2 = $1$hi; @@ -127,7 +145,7 @@ function asmFunc(global, env, buffer) { i64toi32_i32$5 = i64toi32_i32$5; $1 = i64toi32_i32$3 - i64toi32_i32$1 | 0; $1$hi = i64toi32_i32$5; - }; + } continue loop_in; break loop_in; } while (1); @@ -159,7 +177,7 @@ function asmFunc(global, env, buffer) { i64toi32_i32$2 = i; i64toi32_i32$1 = 0; i64toi32_i32$3 = 0; - if ((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0) break done; else block : { + if ((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0) break done; else { i64toi32_i32$2 = i$hi; i64toi32_i32$2 = res$hi; i64toi32_i32$2 = i$hi; @@ -179,7 +197,7 @@ function asmFunc(global, env, buffer) { i64toi32_i32$5 = i64toi32_i32$5; i = i64toi32_i32$3 - i64toi32_i32$1 | 0; i$hi = i64toi32_i32$5; - }; + } continue loop; break loop; } while (1); diff --git a/test/wasm2js/forward.2asm.js b/test/wasm2js/forward.2asm.js index dfdf6b2bf6b..68e0a7b9e1d 100644 --- a/test/wasm2js/forward.2asm.js +++ b/test/wasm2js/forward.2asm.js @@ -23,16 +23,16 @@ function asmFunc(global, env, buffer) { var i64toi32_i32$HIGH_BITS = 0; function even(n) { n = n | 0; - var $6 = 0; - if ((n | 0) == (0 | 0)) $6 = 1; else $6 = odd(n - 1 | 0 | 0) | 0; - return $6 | 0; + var $10 = 0; + if ((n | 0) == (0 | 0)) $10 = 1; else $10 = odd(n - 1 | 0 | 0) | 0; + return $10 | 0; } function odd(n) { n = n | 0; - var $6 = 0; - if ((n | 0) == (0 | 0)) $6 = 0; else $6 = even(n - 1 | 0 | 0) | 0; - return $6 | 0; + var $10 = 0; + if ((n | 0) == (0 | 0)) $10 = 0; else $10 = even(n - 1 | 0 | 0) | 0; + return $10 | 0; } return { diff --git a/test/wasm2js/func.2asm.js b/test/wasm2js/func.2asm.js index 0f6038ca044..e0dd3c80650 100644 --- a/test/wasm2js/func.2asm.js +++ b/test/wasm2js/func.2asm.js @@ -114,25 +114,51 @@ function asmFunc(global, env, buffer) { } + function $21() { + return 0 | 0; + } + + function $22($0, $1_1, $2_1) { + $0 = $0 | 0; + $1_1 = +$1_1; + $2_1 = $2_1 | 0; + return 0 | 0; + } + + function $23() { + return 0 | 0; + } + + function $24($0, $1_1, $2_1) { + $0 = $0 | 0; + $1_1 = +$1_1; + $2_1 = $2_1 | 0; + return 0 | 0; + } + + function $25() { + + } + function complex($0, $1_1, x, x$hi, $3) { $0 = $0 | 0; $1_1 = Math_fround($1_1); x = x | 0; x$hi = x$hi | 0; $3 = $3 | 0; - return abort() | 0; + abort(); } function complex_sig() { abort(); } - function $23() { + function $28() { var $0 = 0; return $0 | 0; } - function $24() { + function $29() { var i64toi32_i32$0 = 0, $0$hi = 0, $0 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; @@ -140,22 +166,22 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $25() { + function $30() { var $0 = Math_fround(0); return Math_fround($0); } - function $26() { + function $31() { var $0 = 0.0; return +$0; } - function $27() { + function $32() { var $1_1 = 0; return $1_1 | 0; } - function $28() { + function $33() { var i64toi32_i32$0 = 0, $1$hi = 0, $1_1 = 0; i64toi32_i32$0 = $1$hi; i64toi32_i32$0 = i64toi32_i32$0; @@ -163,30 +189,30 @@ function asmFunc(global, env, buffer) { return $1_1 | 0; } - function $29() { + function $34() { var $1_1 = Math_fround(0); return Math_fround($1_1); } - function $30() { + function $35() { var $1_1 = 0.0; return +$1_1; } - function $31() { + function $36() { var i64toi32_i32$0 = 0, $4 = 0.0, $0 = Math_fround(0), x = 0, $2$hi = 0, $2_1 = 0, $3 = 0, $5_1 = 0; i64toi32_i32$0 = $2$hi; i64toi32_i32$0 = i64toi32_i32$0; return +$4; } - function $32($0, $1_1) { + function $37($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; return $0 | 0; } - function $33($0, $0$hi, $1_1, $1$hi) { + function $38($0, $0$hi, $1_1, $1$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; $1_1 = $1_1 | 0; @@ -198,25 +224,25 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $34($0, $1_1) { + function $39($0, $1_1) { $0 = Math_fround($0); $1_1 = Math_fround($1_1); return Math_fround($0); } - function $35($0, $1_1) { + function $40($0, $1_1) { $0 = +$0; $1_1 = +$1_1; return +$0; } - function $36($0, $1_1) { + function $41($0, $1_1) { $0 = $0 | 0; $1_1 = $1_1 | 0; return $1_1 | 0; } - function $37($0, $0$hi, $1_1, $1$hi) { + function $42($0, $0$hi, $1_1, $1$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; $1_1 = $1_1 | 0; @@ -228,19 +254,19 @@ function asmFunc(global, env, buffer) { return $1_1 | 0; } - function $38($0, $1_1) { + function $43($0, $1_1) { $0 = Math_fround($0); $1_1 = Math_fround($1_1); return Math_fround($1_1); } - function $39($0, $1_1) { + function $44($0, $1_1) { $0 = +$0; $1_1 = +$1_1; return +$1_1; } - function $40($0, $1_1, x, x$hi, $3, $4, $5_1) { + function $45($0, $1_1, x, x$hi, $3, $4, $5_1) { $0 = Math_fround($0); $1_1 = $1_1 | 0; x = x | 0; @@ -254,74 +280,74 @@ function asmFunc(global, env, buffer) { return +$4; } - function $41() { + function $46() { } - function $42() { + function $47() { dummy(); } - function $43() { + function $48() { return 77 | 0; } - function $44() { + function $49() { i64toi32_i32$HIGH_BITS = 0; return 7777 | 0; } - function $45() { + function $50() { return Math_fround(Math_fround(77.69999694824219)); } - function $46() { + function $51() { return +(77.77); } - function $47() { + function $52() { block : { dummy(); dummy(); }; } - function $48() { + function $53() { dummy(); return 77 | 0; } - function $49() { + function $54() { return; } - function $50() { + function $55() { return 78 | 0; } - function $51() { + function $56() { i64toi32_i32$HIGH_BITS = 0; return 7878 | 0; } - function $52() { + function $57() { return Math_fround(Math_fround(78.69999694824219)); } - function $53() { + function $58() { return +(78.78); } - function $54() { + function $59() { dummy(); return 77 | 0; } - function $55() { + function $60() { } - function $56() { + function $61() { var $0 = 0; fake_return_waka123 : { $0 = 79; @@ -330,7 +356,7 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $57() { + function $62() { var i64toi32_i32$0 = 0, $0 = 0, $0$hi = 0; fake_return_waka123 : { i64toi32_i32$0 = 0; @@ -344,7 +370,7 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $58() { + function $63() { var $0 = Math_fround(0); fake_return_waka123 : { $0 = Math_fround(79.9000015258789); @@ -353,7 +379,7 @@ function asmFunc(global, env, buffer) { return Math_fround($0); } - function $59() { + function $64() { var $0 = 0.0; fake_return_waka123 : { $0 = 79.79; @@ -362,7 +388,7 @@ function asmFunc(global, env, buffer) { return +$0; } - function $60() { + function $65() { var $2_1 = 0; fake_return_waka123 : { dummy(); @@ -372,11 +398,11 @@ function asmFunc(global, env, buffer) { return $2_1 | 0; } - function $61($0) { + function $66($0) { $0 = $0 | 0; } - function $62($0) { + function $67($0) { $0 = $0 | 0; var $2_1 = 0; fake_return_waka123 : { @@ -387,11 +413,11 @@ function asmFunc(global, env, buffer) { return $2_1 | 0; } - function $63($0) { + function $68($0) { $0 = $0 | 0; } - function $64($0) { + function $69($0) { $0 = $0 | 0; var $3 = 0; fake_return_waka123 : { @@ -406,11 +432,11 @@ function asmFunc(global, env, buffer) { return $3 | 0; } - function $65($0) { + function $70($0) { $0 = $0 | 0; } - function $66($0) { + function $71($0) { $0 = $0 | 0; var $2_1 = 0, $3 = 0, $4 = 0; fake_return_waka123 : { @@ -432,12 +458,12 @@ function asmFunc(global, env, buffer) { return $4 | 0; } - function $67() { + function $72() { var $0 = 0; return $0 | 0; } - function $68() { + function $73() { var i64toi32_i32$0 = 0, $0$hi = 0, $0 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = i64toi32_i32$0; @@ -445,206 +471,72 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $69() { + function $74() { var $0 = Math_fround(0); return Math_fround($0); } - function $70() { + function $75() { var $0 = 0.0; return +$0; } - function empty_sig_1() { - - } - - function complex_sig_1($0, $1_1, $1$hi, $2_1, $3, $3$hi, $4, $5_1, $5$hi, $6_1, $7_1) { - $0 = +$0; - $1_1 = $1_1 | 0; - $1$hi = $1$hi | 0; - $2_1 = +$2_1; - $3 = $3 | 0; - $3$hi = $3$hi | 0; - $4 = +$4; - $5_1 = $5_1 | 0; - $5$hi = $5$hi | 0; - $6_1 = Math_fround($6_1); - $7_1 = $7_1 | 0; - } - - function empty_sig_2() { - - } - - function complex_sig_2($0, $1_1, $1$hi, $2_1, $3, $3$hi, $4, $5_1, $5$hi, $6_1, $7_1) { - $0 = +$0; - $1_1 = $1_1 | 0; - $1$hi = $1$hi | 0; - $2_1 = +$2_1; - $3 = $3 | 0; - $3$hi = $3$hi | 0; - $4 = +$4; - $5_1 = $5_1 | 0; - $5$hi = $5$hi | 0; - $6_1 = Math_fround($6_1); - $7_1 = $7_1 | 0; - } - - function complex_sig_3($0, $1_1, $1$hi, $2_1, $3, $3$hi, $4, $5_1, $5$hi, $6_1, $7_1) { - $0 = +$0; - $1_1 = $1_1 | 0; - $1$hi = $1$hi | 0; - $2_1 = +$2_1; - $3 = $3 | 0; - $3$hi = $3$hi | 0; - $4 = +$4; - $5_1 = $5_1 | 0; - $5$hi = $5$hi | 0; - $6_1 = Math_fround($6_1); - $7_1 = $7_1 | 0; - } - - function $76() { - var wasm2js_i32$0 = 0; - wasm2js_i32$0 = 1; - FUNCTION_TABLE_v[wasm2js_i32$0 & 7](); - wasm2js_i32$0 = 4; - FUNCTION_TABLE_v[wasm2js_i32$0 & 7](); - } - - function $77() { - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_f64$1 = 0.0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_f64$2 = 0.0, wasm2js_i32$5 = 0, wasm2js_i32$6 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$7 = 0; - i64toi32_i32$0 = 0; - i64toi32_i32$1 = 0; - i64toi32_i32$2 = 0; - wasm2js_f64$0 = 0.0; - wasm2js_i32$1 = 0; - wasm2js_i32$2 = i64toi32_i32$0; - wasm2js_f64$1 = 0.0; - wasm2js_i32$3 = 0; - wasm2js_i32$4 = i64toi32_i32$1; - wasm2js_f64$2 = 0.0; - wasm2js_i32$5 = 0; - wasm2js_i32$6 = i64toi32_i32$2; - wasm2js_f32$0 = Math_fround(0.0); - wasm2js_i32$7 = 0; - wasm2js_i32$0 = 0; - FUNCTION_TABLE_vdiidiidiifi[wasm2js_i32$0 & 7](+wasm2js_f64$0, wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, +wasm2js_f64$1, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, +wasm2js_f64$2, wasm2js_i32$5 | 0, wasm2js_i32$6 | 0, Math_fround(wasm2js_f32$0), wasm2js_i32$7 | 0); - i64toi32_i32$2 = 0; - i64toi32_i32$1 = 0; - i64toi32_i32$0 = 0; - wasm2js_f64$2 = 0.0; - wasm2js_i32$7 = 0; - wasm2js_i32$6 = i64toi32_i32$2; - wasm2js_f64$1 = 0.0; - wasm2js_i32$5 = 0; - wasm2js_i32$4 = i64toi32_i32$1; - wasm2js_f64$0 = 0.0; - wasm2js_i32$3 = 0; - wasm2js_i32$2 = i64toi32_i32$0; - wasm2js_f32$0 = Math_fround(0.0); - wasm2js_i32$1 = 0; - wasm2js_i32$0 = 2; - FUNCTION_TABLE_vdiidiidiifi[wasm2js_i32$0 & 7](+wasm2js_f64$2, wasm2js_i32$7 | 0, wasm2js_i32$6 | 0, +wasm2js_f64$1, wasm2js_i32$5 | 0, wasm2js_i32$4 | 0, +wasm2js_f64$0, wasm2js_i32$3 | 0, wasm2js_i32$2 | 0, Math_fround(wasm2js_f32$0), wasm2js_i32$1 | 0); - i64toi32_i32$0 = 0; - i64toi32_i32$1 = 0; - i64toi32_i32$2 = 0; - wasm2js_f64$0 = 0.0; - wasm2js_i32$1 = 0; - wasm2js_i32$2 = i64toi32_i32$0; - wasm2js_f64$1 = 0.0; - wasm2js_i32$3 = 0; - wasm2js_i32$4 = i64toi32_i32$1; - wasm2js_f64$2 = 0.0; - wasm2js_i32$5 = 0; - wasm2js_i32$6 = i64toi32_i32$2; - wasm2js_f32$0 = Math_fround(0.0); - wasm2js_i32$7 = 0; - wasm2js_i32$0 = 3; - FUNCTION_TABLE_vdiidiidiifi[wasm2js_i32$0 & 7](+wasm2js_f64$0, wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, +wasm2js_f64$1, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, +wasm2js_f64$2, wasm2js_i32$5 | 0, wasm2js_i32$6 | 0, Math_fround(wasm2js_f32$0), wasm2js_i32$7 | 0); - } - - function $78() { - var wasm2js_i32$0 = 0; - wasm2js_i32$0 = 1; - FUNCTION_TABLE_v[wasm2js_i32$0 & 7](); - } - - function $79() { - var wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_f64$1 = 0.0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_f64$2 = 0.0, wasm2js_i32$5 = 0, wasm2js_i32$6 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$7 = 0; - wasm2js_f64$0 = 0.0; - wasm2js_i32$1 = 0; - wasm2js_i32$2 = 0; - wasm2js_f64$1 = 0.0; - wasm2js_i32$3 = 0; - wasm2js_i32$4 = 0; - wasm2js_f64$2 = 0.0; - wasm2js_i32$5 = 0; - wasm2js_i32$6 = 0; - wasm2js_f32$0 = Math_fround(0.0); - wasm2js_i32$7 = 0; - wasm2js_i32$0 = 0; - FUNCTION_TABLE_vdiidiidiifi[wasm2js_i32$0 & 7](+wasm2js_f64$0, wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, +wasm2js_f64$1, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, +wasm2js_f64$2, wasm2js_i32$5 | 0, wasm2js_i32$6 | 0, Math_fround(wasm2js_f32$0), wasm2js_i32$7 | 0); - } - - var FUNCTION_TABLE_v = [empty_sig_2, empty_sig_2, empty_sig_2, empty_sig_2, empty_sig_1, empty_sig_2, empty_sig_2, empty_sig_2]; - var FUNCTION_TABLE_vdiidiidiifi = [complex_sig_3, complex_sig_3, complex_sig_1, complex_sig_3, complex_sig_3, complex_sig_3, complex_sig_3, complex_sig_3]; return { f: $2, g: h, - local_first_i32: $23, - local_first_i64: $24, - local_first_f32: $25, - local_first_f64: $26, - local_second_i32: $27, - local_second_i64: $28, - local_second_f32: $29, - local_second_f64: $30, - local_mixed: $31, - param_first_i32: $32, - param_first_i64: $33, - param_first_f32: $34, - param_first_f64: $35, - param_second_i32: $36, - param_second_i64: $37, - param_second_f32: $38, - param_second_f64: $39, - param_mixed: $40, - empty: $41, - value_void: $42, - value_i32: $43, - value_i64: $44, - value_f32: $45, - value_f64: $46, - value_block_void: $47, - value_block_i32: $48, - return_empty: $49, - return_i32: $50, - return_i64: $51, - return_f32: $52, - return_f64: $53, - return_block_i32: $54, - break_empty: $55, - break_i32: $56, - break_i64: $57, - break_f32: $58, - break_f64: $59, - break_block_i32: $60, - break_br_if_empty: $61, - break_br_if_num: $62, - break_br_table_empty: $63, - break_br_table_num: $64, - break_br_table_nested_empty: $65, - break_br_table_nested_num: $66, - init_local_i32: $67, - init_local_i64: $68, - init_local_f32: $69, - init_local_f64: $70, - signature_explicit_reused: $76, - signature_implicit_reused: $77, - signature_explicit_duplicate: $78, - signature_implicit_duplicate: $79 + type_use_1: $20, + type_use_2: $21, + type_use_4: $22, + type_use_5: $23, + type_use_7: $24, + local_first_i32: $28, + local_first_i64: $29, + local_first_f32: $30, + local_first_f64: $31, + local_second_i32: $32, + local_second_i64: $33, + local_second_f32: $34, + local_second_f64: $35, + local_mixed: $36, + param_first_i32: $37, + param_first_i64: $38, + param_first_f32: $39, + param_first_f64: $40, + param_second_i32: $41, + param_second_i64: $42, + param_second_f32: $43, + param_second_f64: $44, + param_mixed: $45, + empty: $46, + value_void: $47, + value_i32: $48, + value_i64: $49, + value_f32: $50, + value_f64: $51, + value_block_void: $52, + value_block_i32: $53, + return_empty: $54, + return_i32: $55, + return_i64: $56, + return_f32: $57, + return_f64: $58, + return_block_i32: $59, + break_empty: $60, + break_i32: $61, + break_i64: $62, + break_f32: $63, + break_f64: $64, + break_block_i32: $65, + break_br_if_empty: $66, + break_br_if_num: $67, + break_br_table_empty: $68, + break_br_table_num: $69, + break_br_table_nested_empty: $70, + break_br_table_nested_num: $71, + init_local_i32: $72, + init_local_i64: $73, + init_local_f32: $74, + init_local_f64: $75 }; } @@ -652,6 +544,11 @@ const memasmFunc = new ArrayBuffer(65536); const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc); export const f = retasmFunc.f; export const g = retasmFunc.g; +export const type_use_1 = retasmFunc.type_use_1; +export const type_use_2 = retasmFunc.type_use_2; +export const type_use_4 = retasmFunc.type_use_4; +export const type_use_5 = retasmFunc.type_use_5; +export const type_use_7 = retasmFunc.type_use_7; export const local_first_i32 = retasmFunc.local_first_i32; export const local_first_i64 = retasmFunc.local_first_i64; export const local_first_f32 = retasmFunc.local_first_f32; @@ -700,7 +597,3 @@ export const init_local_i32 = retasmFunc.init_local_i32; export const init_local_i64 = retasmFunc.init_local_i64; export const init_local_f32 = retasmFunc.init_local_f32; export const init_local_f64 = retasmFunc.init_local_f64; -export const signature_explicit_reused = retasmFunc.signature_explicit_reused; -export const signature_implicit_reused = retasmFunc.signature_implicit_reused; -export const signature_explicit_duplicate = retasmFunc.signature_explicit_duplicate; -export const signature_implicit_duplicate = retasmFunc.signature_implicit_duplicate; diff --git a/test/wasm2js/func_ptrs.2asm.js b/test/wasm2js/func_ptrs.2asm.js index ec4d11d8661..c8a62a5c01d 100644 --- a/test/wasm2js/func_ptrs.2asm.js +++ b/test/wasm2js/func_ptrs.2asm.js @@ -1,4 +1,4 @@ -import { print } from 'spectest'; +import { print_i32 } from 'spectest'; function asmFunc(global, env, buffer) { "use asm"; var HEAP8 = new global.Int8Array(buffer); @@ -21,7 +21,7 @@ function asmFunc(global, env, buffer) { var abort = env.abort; var nan = global.NaN; var infinity = global.Infinity; - var print = env.print; + var print = env.print_i32; var i64toi32_i32$HIGH_BITS = 0; function $1() { @@ -59,7 +59,7 @@ function asmFunc(global, env, buffer) { } const memasmFunc = new ArrayBuffer(65536); -const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },print},memasmFunc); +const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },print_i32},memasmFunc); export const one = retasmFunc.one; export const two = retasmFunc.two; export const three = retasmFunc.three; diff --git a/test/wasm2js/int_literals.2asm.js b/test/wasm2js/int_literals.2asm.js index 0d0b19f9783..122b3447b77 100644 --- a/test/wasm2js/int_literals.2asm.js +++ b/test/wasm2js/int_literals.2asm.js @@ -126,6 +126,42 @@ function asmFunc(global, env, buffer) { return 42 | 0; } + function $22() { + return 1 | 0; + } + + function $23() { + return 1 | 0; + } + + function $24() { + return 10 | 0; + } + + function $25() { + return 1 | 0; + } + + function $26() { + i64toi32_i32$HIGH_BITS = 0; + return 1 | 0; + } + + function $27() { + i64toi32_i32$HIGH_BITS = 0; + return 1 | 0; + } + + function $28() { + i64toi32_i32$HIGH_BITS = 0; + return 10 | 0; + } + + function $29() { + i64toi32_i32$HIGH_BITS = 0; + return 1 | 0; + } + return { i32_test: $0, i32_umax: $1, @@ -148,7 +184,15 @@ function asmFunc(global, env, buffer) { i64_neg_zero: $18, i64_not_octal: $19, i64_unsigned_decimal: $20, - i64_plus_sign: $21 + i64_plus_sign: $21, + i32_dec_sep1: $22, + i32_dec_sep2: $23, + i32_hex_sep1: $24, + i32_hex_sep2: $25, + i64_dec_sep1: $26, + i64_dec_sep2: $27, + i64_hex_sep1: $28, + i64_hex_sep2: $29 }; } @@ -176,3 +220,11 @@ export const i64_neg_zero = retasmFunc.i64_neg_zero; export const i64_not_octal = retasmFunc.i64_not_octal; export const i64_unsigned_decimal = retasmFunc.i64_unsigned_decimal; export const i64_plus_sign = retasmFunc.i64_plus_sign; +export const i32_dec_sep1 = retasmFunc.i32_dec_sep1; +export const i32_dec_sep2 = retasmFunc.i32_dec_sep2; +export const i32_hex_sep1 = retasmFunc.i32_hex_sep1; +export const i32_hex_sep2 = retasmFunc.i32_hex_sep2; +export const i64_dec_sep1 = retasmFunc.i64_dec_sep1; +export const i64_dec_sep2 = retasmFunc.i64_dec_sep2; +export const i64_hex_sep1 = retasmFunc.i64_hex_sep1; +export const i64_hex_sep2 = retasmFunc.i64_hex_sep2; diff --git a/test/wasm2js/labels.2asm.js b/test/wasm2js/labels.2asm.js index e99b6db8e12..0ff10d7a819 100644 --- a/test/wasm2js/labels.2asm.js +++ b/test/wasm2js/labels.2asm.js @@ -111,6 +111,16 @@ function asmFunc(global, env, buffer) { } function $6() { + var $2_1 = 0; + loop_in : do { + if (0) continue loop_in; + $2_1 = 3; + break loop_in; + } while (1); + return $2_1 | 0; + } + + function $7() { var i = 0; i = 0; block_1 : { @@ -138,7 +148,7 @@ function asmFunc(global, env, buffer) { return i | 0; } - function $7() { + function $8() { var i = 0; i = 0; block_1 : { @@ -166,15 +176,15 @@ function asmFunc(global, env, buffer) { return i | 0; } - function $8($0_1) { + function $9($0_1) { $0_1 = $0_1 | 0; - var $2_2 = 0, $3_2 = 0; + var $2_1 = 0, $3_2 = 0; ret : { exit : { $0_2 : { default_ : { $3_1 : { - $2_1 : { + $2_2 : { $1_1 : { switch ($0_1 | 0) { case 0: @@ -182,7 +192,7 @@ function asmFunc(global, env, buffer) { case 1: break $1_1; case 2: - break $2_1; + break $2_2; case 3: break $3_1; default: @@ -190,21 +200,21 @@ function asmFunc(global, env, buffer) { }; }; }; - $2_2 = 2; + $2_1 = 2; break exit; }; $3_2 = 3; break ret; }; }; - $2_2 = 5; + $2_1 = 5; }; - $3_2 = Math_imul(10, $2_2); + $3_2 = Math_imul(10, $2_1); }; return $3_2 | 0; } - function $9($0_1) { + function $10($0_1) { $0_1 = $0_1 | 0; $1_1 : { $0_2 : { @@ -220,7 +230,7 @@ function asmFunc(global, env, buffer) { return 2 | 0; } - function $10() { + function $11() { var i = 0, $10_1 = 0; i = 0; outer : { @@ -243,34 +253,34 @@ function asmFunc(global, env, buffer) { return $10_1 | 0; } - function $11() { - var $2_2 = 0, $0_1 = 0; + function $12() { + var $2_1 = 0, $0_1 = 0; l0 : { l1 : { $0_1 = 1; break l1; }; - $2_2 = $0_1; + $2_1 = $0_1; if (1) break l0; - $2_2 = 1; + $2_1 = 1; }; - return $2_2 | 0; + return $2_1 | 0; } - function $12() { - var $2_2 = 0, $0_1 = 0; + function $13() { + var $2_1 = 0, $0_1 = 0; l0 : { l1 : { $0_1 = 1; break l1; }; - $2_2 = $0_1; + $2_1 = $0_1; break l0; }; - return $2_2 | 0; + return $2_1 | 0; } - function $13() { + function $14() { var i1 = 0, $7_1 = 0, $3_2 = 0; l0 : { i1 = 1; @@ -283,20 +293,20 @@ function asmFunc(global, env, buffer) { return i1 | 0; } - function $14() { - var $2_2 = 0, $0_1 = 0, $3_2 = 0; + function $15() { + var $2_1 = 0, $0_1 = 0, $3_2 = 0; l0 : { l1 : { $0_1 = 1; break l1; }; - $2_2 = $0_1; + $2_1 = $0_1; break l0; }; - return $2_2 | 0; + return $2_1 | 0; } - function $15() { + function $16() { var $0_1 = 0; l1 : { $0_1 = 1; @@ -305,16 +315,16 @@ function asmFunc(global, env, buffer) { return $0_1 | 0; } - function $16() { - var $1_2 = 0, $2_2 = 0; + function $17() { + var $1_2 = 0, $2_1 = 0; l1 : { $1_2 = 2; l113 : { - $2_2 = 3; + $2_1 = 3; break l113; }; }; - return $1_2 + $2_2 | 0 | 0; + return $1_2 + $2_1 | 0 | 0; } return { @@ -324,17 +334,18 @@ function asmFunc(global, env, buffer) { loop3: $3, loop4: $4, loop5: $5, - if_: $6, - if2: $7, - switch_: $8, - return_: $9, - br_if0: $10, - br_if1: $11, - br_if2: $12, - br_if3: $13, - br: $14, - shadowing: $15, - redefinition: $16 + loop6: $6, + if_: $7, + if2: $8, + switch_: $9, + return_: $10, + br_if0: $11, + br_if1: $12, + br_if2: $13, + br_if3: $14, + br: $15, + shadowing: $16, + redefinition: $17 }; } @@ -346,6 +357,7 @@ export const loop2 = retasmFunc.loop2; export const loop3 = retasmFunc.loop3; export const loop4 = retasmFunc.loop4; export const loop5 = retasmFunc.loop5; +export const loop6 = retasmFunc.loop6; export const if_ = retasmFunc.if_; export const if2 = retasmFunc.if2; export const switch_ = retasmFunc.switch_; diff --git a/test/wasm2js/loop.2asm.js b/test/wasm2js/loop.2asm.js index 615a4d66c6b..72729a07a69 100644 --- a/test/wasm2js/loop.2asm.js +++ b/test/wasm2js/loop.2asm.js @@ -1,5 +1,5 @@ function asmFunc(global, env, buffer) { - "use asm"; + "almost asm"; var HEAP8 = new global.Int8Array(buffer); var HEAP16 = new global.Int16Array(buffer); var HEAP32 = new global.Int32Array(buffer); @@ -75,7 +75,7 @@ function asmFunc(global, env, buffer) { } function $5() { - var $82 = 0, $2_1 = 0, $6_1 = 0, $10_1 = 0, $14_1 = 0, $18_1 = 0, $22 = 0, $26 = 0, $30 = 0, $34 = 0, $38 = 0, $42 = 0, $46 = 0, $50 = 0, $54 = 0, $58 = 0, $62 = 0, $66 = 0, $70 = 0, $74 = 0, $78 = 0; + var $74 = 0, $2_1 = 0, $6_1 = 0, $10_1 = 0, $14_1 = 0, $18 = 0, $22_1 = 0, $26_1 = 0, $30_1 = 0, $34_1 = 0, $38 = 0, $42 = 0, $46 = 0, $50 = 0, $54 = 0, $58 = 0, $62 = 0, $66 = 0, $70 = 0; loop_in : do { loop_in4 : do { loop_in6 : do { @@ -96,78 +96,248 @@ function asmFunc(global, env, buffer) { loop_in36 : do { loop_in38 : do { loop_in40 : do { - loop_in42 : do { - loop_in44 : do { - dummy(); - $2_1 = 150; - break loop_in44; - } while (1); - $6_1 = $2_1; - break loop_in42; - } while (1); - $10_1 = $6_1; + dummy(); + $2_1 = 150; break loop_in40; } while (1); - $14_1 = $10_1; + $6_1 = $2_1; break loop_in38; } while (1); - $18_1 = $14_1; + $10_1 = $6_1; break loop_in36; } while (1); - $22 = $18_1; + $14_1 = $10_1; break loop_in34; } while (1); - $26 = $22; + $18 = $14_1; break loop_in32; } while (1); - $30 = $26; + $22_1 = $18; break loop_in30; } while (1); - $34 = $30; + $26_1 = $22_1; break loop_in28; } while (1); - $38 = $34; + $30_1 = $26_1; break loop_in26; } while (1); - $42 = $38; + $34_1 = $30_1; break loop_in24; } while (1); - $46 = $42; + $38 = $34_1; break loop_in22; } while (1); - $50 = $46; + $42 = $38; break loop_in20; } while (1); - $54 = $50; + $46 = $42; break loop_in18; } while (1); - $58 = $54; + $50 = $46; break loop_in16; } while (1); - $62 = $58; + $54 = $50; break loop_in14; } while (1); - $66 = $62; + $58 = $54; break loop_in12; } while (1); - $70 = $66; + $62 = $58; break loop_in10; } while (1); - $74 = $70; + $66 = $62; break loop_in8; } while (1); - $78 = $74; + $70 = $66; break loop_in6; } while (1); - $82 = $78; + $74 = $70; break loop_in4; } while (1); break loop_in; } while (1); - return $82 | 0; + return $74 | 0; } function $6() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + return (wasm2js_i32$0 = $0, wasm2js_i32$1 = 2, wasm2js_i32$2 = 3, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1) | 0; + } + + function $7() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + return (wasm2js_i32$0 = 2, wasm2js_i32$1 = $0, wasm2js_i32$2 = 3, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1) | 0; + } + + function $8() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + return (wasm2js_i32$0 = 2, wasm2js_i32$1 = 3, wasm2js_i32$2 = $0, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1) | 0; + } + + function $9() { + var $6_1 = 0, $0 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + $6_1 = $0; + return $6_1 | 0; + } + + function $10() { + var $6_1 = 0, $2_1 = 0; + $6_1 = 2; + return $6_1 | 0; + } + + function $11() { + var $2_1 = 0, $0 = 0; + block : { + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + $2_1 = $0; + if (2) break block; + $2_1 = $2_1; + }; + return $2_1 | 0; + } + + function $12() { + var $2_1 = 0, $0 = 0; + block : { + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + $2_1 = 2; + if ($0) break block; + $2_1 = $2_1; + }; + return $2_1 | 0; + } + + function func($0, $1_1) { + $0 = $0 | 0; + $1_1 = $1_1 | 0; + return $0 | 0; + } + + function $14() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + wasm2js_i32$2 = $0; + wasm2js_i32$3 = 2; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; + return wasm2js_i32$0 | 0; + } + + function $15() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + wasm2js_i32$2 = 2; + wasm2js_i32$3 = $0; + wasm2js_i32$1 = 0; + wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; + return wasm2js_i32$0 | 0; + } + + function $16() { + var $0 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0; + loop_in : do { + $0 = 0; + break loop_in; + } while (1); + wasm2js_i32$2 = 1; + wasm2js_i32$3 = 2; + wasm2js_i32$1 = $0; + wasm2js_i32$0 = FUNCTION_TABLE_iii[wasm2js_i32$1 & 0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0; + return wasm2js_i32$0 | 0; + } + + function $17() { + var $0 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + return __wasm_memory_grow($0 | 0) | 0; + } + + function f($0) { + $0 = $0 | 0; + return $0 | 0; + } + + function $19() { + var $0 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + return f($0 | 0) | 0 | 0; + } + + function $20() { + var $0 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + } + + function $21() { + var $0 = 0, $2_1 = 0; + block : { + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + $2_1 = $0; + break block; + }; + return $2_1 | 0; + } + + function $22() { + var $1_1 = 0; + loop_in : do { + $1_1 = 1; + break loop_in; + } while (1); + return $1_1 | 0; + } + + function $23() { + var $0 = 0; + loop_in : do { + $0 = 1; + break loop_in; + } while (1); + return HEAPU32[$0 >> 2] | 0 | 0; + } + + function $24() { var $2_1 = 0; loop_in : do { dummy(); @@ -177,7 +347,7 @@ function asmFunc(global, env, buffer) { return __wasm_ctz_i32($2_1 | 0) | 0 | 0; } - function $7() { + function $25() { var $2_1 = 0, $3_1 = 0, $6_1 = 0; loop_in : do { dummy(); @@ -185,15 +355,15 @@ function asmFunc(global, env, buffer) { break loop_in; } while (1); $3_1 = $2_1; - loop_in46 : do { + loop_in42 : do { dummy(); $6_1 = 4; - break loop_in46; + break loop_in42; } while (1); return Math_imul($3_1, $6_1) | 0; } - function $8() { + function $26() { var $2_1 = 0; loop_in : do { dummy(); @@ -203,7 +373,7 @@ function asmFunc(global, env, buffer) { return ($2_1 | 0) == (0 | 0) | 0; } - function $9() { + function $27() { var $2_1 = Math_fround(0), $3_1 = Math_fround(0), $6_1 = Math_fround(0); loop_in : do { dummy(); @@ -211,54 +381,54 @@ function asmFunc(global, env, buffer) { break loop_in; } while (1); $3_1 = $2_1; - loop_in47 : do { + loop_in43 : do { dummy(); $6_1 = Math_fround(3.0); - break loop_in47; + break loop_in43; } while (1); return $3_1 > $6_1 | 0; } - function $10() { + function $28() { block : { loop_in : do { break block; break loop_in; } while (1); }; - block48 : { - loop_in49 : do { - if (1) break block48; + block44 : { + loop_in45 : do { + if (1) break block44; abort(); - break loop_in49; + break loop_in45; } while (1); }; - block50 : { - loop_in51 : do { + block46 : { + loop_in47 : do { switch (0 | 0) { default: - break block50; + break block46; }; - break loop_in51; + break loop_in47; } while (1); }; - block52 : { - loop_in53 : do { + block48 : { + loop_in49 : do { switch (1 | 0) { case 0: - break block52; + break block48; case 1: - break block52; + break block48; default: - break block52; + break block48; }; - break loop_in53; + break loop_in49; } while (1); }; return 19 | 0; } - function $11() { + function $29() { var $0 = 0, $1_1 = 0, $3_1 = 0; block : { loop_in : do { @@ -270,7 +440,7 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $12() { + function $30() { var $0 = 0, $5_1 = 0, $7_1 = 0; block : { loop_in : do { @@ -282,13 +452,13 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $13() { - var $0 = 0, $1_1 = 0, $2_1 = 0, $5_1 = 0, $6_1 = 0, $9_1 = 0, $10_1 = 0, $12_1 = 0, $17_1 = 0, $18_1 = 0, $21 = 0, $22 = 0; + function $31() { + var $0 = 0, $1_1 = 0, $2_1 = 0, $5_1 = 0, $6_1 = 0, $9_1 = 0, $10_1 = 0, $12_1 = 0, $17_1 = 0, $18 = 0, $21_1 = 0, $22_1 = 0; $0 = 0; $1_1 = $0; block : { loop_in : do { - block54 : { + block50 : { $2_1 = 1; break block; }; @@ -297,62 +467,62 @@ function asmFunc(global, env, buffer) { }; $0 = $1_1 + $2_1 | 0; $5_1 = $0; - block55 : { - loop_in56 : do { - loop_in57 : do { + block51 : { + loop_in52 : do { + loop_in53 : do { $6_1 = 2; - break block55; - break loop_in57; + break block51; + break loop_in53; } while (1); - break loop_in56; + break loop_in52; } while (1); }; $0 = $5_1 + $6_1 | 0; $9_1 = $0; - loop_in59 : do { - block60 : { - loop_in61 : do { + loop_in55 : do { + block56 : { + loop_in57 : do { $10_1 = 4; - break block60; - break loop_in61; + break block56; + break loop_in57; } while (1); }; $12_1 = $10_1; - break loop_in59; + break loop_in55; } while (1); $0 = $9_1 + $12_1 | 0; $17_1 = $0; - block62 : { - loop_in63 : do { - $18_1 = 8; - break block62; - break loop_in63; + block58 : { + loop_in59 : do { + $18 = 8; + break block58; + break loop_in59; } while (1); }; - $0 = $17_1 + $18_1 | 0; - $21 = $0; - block64 : { - loop_in65 : do { - loop_in66 : do { - $22 = 16; - break block64; - break loop_in66; + $0 = $17_1 + $18 | 0; + $21_1 = $0; + block60 : { + loop_in61 : do { + loop_in62 : do { + $22_1 = 16; + break block60; + break loop_in62; } while (1); - break loop_in65; + break loop_in61; } while (1); }; - $0 = $21 + $22 | 0; + $0 = $21_1 + $22_1 | 0; return $0 | 0; } - function $14() { + function $32() { var $0 = 0, $1_1 = 0, $6_1 = 0, $2_1 = 0, $7_1 = 0, $3_1 = 0, $8_1 = 0, $5_1 = 0, wasm2js_i32$0 = 0; $0 = 0; $1_1 = $0; loop_in : do { - loop_in67 : do { + loop_in63 : do { continue loop_in; - break loop_in67; + break loop_in63; } while (1); break loop_in; } while (1); @@ -374,7 +544,7 @@ function asmFunc(global, env, buffer) { return ($0 | 0) == (4294967282 | 0) | 0; } - function $16($0, $0$hi) { + function $34($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, $1$hi = 0, $1_1 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0; @@ -416,7 +586,7 @@ function asmFunc(global, env, buffer) { return $1_1 | 0; } - function $17($0, $0$hi) { + function $35($0, $0$hi) { $0 = $0 | 0; $0$hi = $0$hi | 0; var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, $2$hi = 0, $2_1 = 0, i64toi32_i32$1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$4 = 0; @@ -465,7 +635,7 @@ function asmFunc(global, env, buffer) { return $1_1 | 0; } - function $18($0, $1_1) { + function $36($0, $1_1) { $0 = Math_fround($0); $1_1 = Math_fround($1_1); var $2_1 = Math_fround(0), $3_1 = Math_fround(0); @@ -473,14 +643,14 @@ function asmFunc(global, env, buffer) { loop_in : do { if ($0 == Math_fround(0.0)) break block; $2_1 = $1_1; - block71 : { - loop_in72 : do { - if ($2_1 == Math_fround(0.0)) break block71; + block67 : { + loop_in68 : do { + if ($2_1 == Math_fround(0.0)) break block67; if ($2_1 < Math_fround(0.0)) break block; $3_1 = Math_fround($3_1 + $2_1); $2_1 = Math_fround($2_1 - Math_fround(2.0)); - continue loop_in72; - break loop_in72; + continue loop_in68; + break loop_in68; } while (1); }; $3_1 = Math_fround($3_1 / $0); @@ -497,7 +667,7 @@ function asmFunc(global, env, buffer) { var$0$hi = var$0$hi | 0; var$1 = var$1 | 0; var$1$hi = var$1$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, var$2 = 0, i64toi32_i32$3 = 0, var$3 = 0, var$4 = 0, var$5 = 0, $21 = 0, $22 = 0, var$6 = 0, $24 = 0, $17_1 = 0, $18_1 = 0, $23 = 0, $29 = 0, $45 = 0, $56$hi = 0, $62$hi = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, var$2 = 0, i64toi32_i32$3 = 0, var$3 = 0, var$4 = 0, var$5 = 0, $21_1 = 0, $22_1 = 0, var$6 = 0, $24_1 = 0, $17_1 = 0, $18 = 0, $23_1 = 0, $29_1 = 0, $45 = 0, $56$hi = 0, $62$hi = 0; i64toi32_i32$0 = var$1$hi; i64toi32_i32$0 = i64toi32_i32$0; var$2 = var$1; @@ -507,7 +677,7 @@ function asmFunc(global, env, buffer) { var$3 = var$0; var$5 = var$3 >>> 16 | 0; $17_1 = Math_imul(var$4, var$5); - $18_1 = var$2; + $18 = var$2; i64toi32_i32$0 = i64toi32_i32$0; i64toi32_i32$0 = i64toi32_i32$0; i64toi32_i32$2 = var$3; @@ -516,13 +686,13 @@ function asmFunc(global, env, buffer) { i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { i64toi32_i32$1 = 0; - $21 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $21_1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } else { i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $21 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + $21_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; } i64toi32_i32$1 = i64toi32_i32$1; - $23 = $17_1 + Math_imul($18_1, $21) | 0; + $23_1 = $17_1 + Math_imul($18, $21_1) | 0; i64toi32_i32$1 = var$1$hi; i64toi32_i32$1 = i64toi32_i32$1; i64toi32_i32$0 = var$1; @@ -531,18 +701,18 @@ function asmFunc(global, env, buffer) { i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { i64toi32_i32$2 = 0; - $22 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $22_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; } else { i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $22 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0; + $22_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0; } i64toi32_i32$2 = i64toi32_i32$2; - $29 = $23 + Math_imul($22, var$3) | 0; + $29_1 = $23_1 + Math_imul($22_1, var$3) | 0; var$2 = var$2 & 65535 | 0; var$3 = var$3 & 65535 | 0; var$6 = Math_imul(var$2, var$3); var$2 = (var$6 >>> 16 | 0) + Math_imul(var$2, var$5) | 0; - $45 = $29 + (var$2 >>> 16 | 0) | 0; + $45 = $29_1 + (var$2 >>> 16 | 0) | 0; var$2 = (var$2 & 65535 | 0) + Math_imul(var$4, var$3) | 0; i64toi32_i32$2 = 0; i64toi32_i32$2 = i64toi32_i32$2; @@ -552,16 +722,16 @@ function asmFunc(global, env, buffer) { i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$4 | 0; - $24 = 0; + $24_1 = 0; } else { i64toi32_i32$0 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$1 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$2 << i64toi32_i32$4 | 0) | 0; - $24 = i64toi32_i32$1 << i64toi32_i32$4 | 0; + $24_1 = i64toi32_i32$1 << i64toi32_i32$4 | 0; } $56$hi = i64toi32_i32$0; i64toi32_i32$0 = 0; $62$hi = i64toi32_i32$0; i64toi32_i32$0 = $56$hi; - i64toi32_i32$2 = $24; + i64toi32_i32$2 = $24_1; i64toi32_i32$1 = $62$hi; i64toi32_i32$3 = var$2 << 16 | 0 | (var$6 & 65535 | 0) | 0; i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0; @@ -595,25 +765,67 @@ function asmFunc(global, env, buffer) { return i64toi32_i32$1 | 0; } + var FUNCTION_TABLE_iii = [func]; + function __wasm_memory_grow(pagesToAdd) { + pagesToAdd = pagesToAdd | 0; + var oldPages = __wasm_memory_size() | 0; + var newPages = oldPages + pagesToAdd | 0; + if ((oldPages < newPages) && (newPages < 65535)) { + var newBuffer = new ArrayBuffer(Math_imul(newPages, 65536)); + var newHEAP8 = new global.Int8Array(newBuffer); + newHEAP8.set(HEAP8); + HEAP8 = newHEAP8; + HEAP16 = new global.Int16Array(newBuffer); + HEAP32 = new global.Int32Array(newBuffer); + HEAPU8 = new global.Uint8Array(newBuffer); + HEAPU16 = new global.Uint16Array(newBuffer); + HEAPU32 = new global.Uint32Array(newBuffer); + HEAPF32 = new global.Float32Array(newBuffer); + HEAPF64 = new global.Float64Array(newBuffer); + buffer = newBuffer; + } + return oldPages; + } + + function __wasm_memory_size() { + return buffer.byteLength / 65536 | 0; + } + return { empty: $1, singular: $2, multi: $3, nested: $4, deep: $5, - as_unary_operand: $6, - as_binary_operand: $7, - as_test_operand: $8, - as_compare_operand: $9, - break_bare: $10, - break_value: $11, - break_repeated: $12, - break_inner: $13, - cont_inner: $14, + as_select_first: $6, + as_select_mid: $7, + as_select_last: $8, + as_if_then: $9, + as_if_else: $10, + as_br_if_first: $11, + as_br_if_last: $12, + as_call_indirect_first: $14, + as_call_indirect_mid: $15, + as_call_indirect_last: $16, + as_memory_grow_value: $17, + as_call_value: $19, + as_drop_operand: $20, + as_br_value: $21, + as_set_local_value: $22, + as_load_operand: $23, + as_unary_operand: $24, + as_binary_operand: $25, + as_test_operand: $26, + as_compare_operand: $27, + break_bare: $28, + break_value: $29, + break_repeated: $30, + break_inner: $31, + cont_inner: $32, effects: fx, - while_: $16, - for_: $17, - nesting: $18 + while_: $34, + for_: $35, + nesting: $36 }; } @@ -624,6 +836,22 @@ export const singular = retasmFunc.singular; export const multi = retasmFunc.multi; export const nested = retasmFunc.nested; export const deep = retasmFunc.deep; +export const as_select_first = retasmFunc.as_select_first; +export const as_select_mid = retasmFunc.as_select_mid; +export const as_select_last = retasmFunc.as_select_last; +export const as_if_then = retasmFunc.as_if_then; +export const as_if_else = retasmFunc.as_if_else; +export const as_br_if_first = retasmFunc.as_br_if_first; +export const as_br_if_last = retasmFunc.as_br_if_last; +export const as_call_indirect_first = retasmFunc.as_call_indirect_first; +export const as_call_indirect_mid = retasmFunc.as_call_indirect_mid; +export const as_call_indirect_last = retasmFunc.as_call_indirect_last; +export const as_memory_grow_value = retasmFunc.as_memory_grow_value; +export const as_call_value = retasmFunc.as_call_value; +export const as_drop_operand = retasmFunc.as_drop_operand; +export const as_br_value = retasmFunc.as_br_value; +export const as_set_local_value = retasmFunc.as_set_local_value; +export const as_load_operand = retasmFunc.as_load_operand; export const as_unary_operand = retasmFunc.as_unary_operand; export const as_binary_operand = retasmFunc.as_binary_operand; export const as_test_operand = retasmFunc.as_test_operand; diff --git a/test/wasm2js/grow-memory-tricky.2asm.js b/test/wasm2js/memory_grow-tricky.2asm.js similarity index 91% rename from test/wasm2js/grow-memory-tricky.2asm.js rename to test/wasm2js/memory_grow-tricky.2asm.js index 3d5b9ec7682..dabb501e137 100644 --- a/test/wasm2js/grow-memory-tricky.2asm.js +++ b/test/wasm2js/memory_grow-tricky.2asm.js @@ -24,7 +24,7 @@ function asmFunc(global, env, buffer) { function $0() { var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0; wasm2js_i32$0 = 0; - wasm2js_i32$1 = __wasm_grow_memory(1 | 0); + wasm2js_i32$1 = __wasm_memory_grow(1 | 0); HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1; return HEAPU32[0 >> 2] | 0 | 0; } @@ -38,12 +38,12 @@ function asmFunc(global, env, buffer) { } function grow() { - return __wasm_grow_memory(1 | 0) | 0; + return __wasm_memory_grow(1 | 0) | 0; } - function __wasm_grow_memory(pagesToAdd) { + function __wasm_memory_grow(pagesToAdd) { pagesToAdd = pagesToAdd | 0; - var oldPages = __wasm_current_memory() | 0; + var oldPages = __wasm_memory_size() | 0; var newPages = oldPages + pagesToAdd | 0; if ((oldPages < newPages) && (newPages < 65535)) { var newBuffer = new ArrayBuffer(Math_imul(newPages, 65536)); @@ -62,14 +62,14 @@ function asmFunc(global, env, buffer) { return oldPages; } - function __wasm_current_memory() { + function __wasm_memory_size() { return buffer.byteLength / 65536 | 0; } return { memory: Object.create(Object.prototype, { grow: { - value: __wasm_grow_memory + value: __wasm_memory_grow }, buffer: { get: function () { diff --git a/test/wasm2js/grow-memory-tricky.wast b/test/wasm2js/memory_grow-tricky.wast similarity index 84% rename from test/wasm2js/grow-memory-tricky.wast rename to test/wasm2js/memory_grow-tricky.wast index 7e249e50282..27cb4baf4dd 100644 --- a/test/wasm2js/grow-memory-tricky.wast +++ b/test/wasm2js/memory_grow-tricky.wast @@ -8,7 +8,7 @@ (func $0 (result i32) (block - (i32.store (i32.const 0) (grow_memory (i32.const 1))) + (i32.store (i32.const 0) (memory.grow (i32.const 1))) (i32.load (i32.const 0)) ) ) @@ -21,7 +21,7 @@ ) (func $grow (result i32) - (grow_memory (i32.const 1)) + (memory.grow (i32.const 1)) ) ) diff --git a/test/wasm2js/grow_memory.2asm.js b/test/wasm2js/memory_grow.2asm.js similarity index 64% rename from test/wasm2js/grow_memory.2asm.js rename to test/wasm2js/memory_grow.2asm.js index db41919d2f5..5a70b9d80e3 100644 --- a/test/wasm2js/grow_memory.2asm.js +++ b/test/wasm2js/memory_grow.2asm.js @@ -21,18 +21,40 @@ function asmFunc(global, env, buffer) { var nan = global.NaN; var infinity = global.Infinity; var i64toi32_i32$HIGH_BITS = 0; - function $0(var$0) { - var$0 = var$0 | 0; - return __wasm_grow_memory(var$0 | 0) | 0; + function $0() { + return HEAPU32[0 >> 2] | 0 | 0; } function $1() { - return __wasm_current_memory() | 0; + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0; + wasm2js_i32$0 = 0; + wasm2js_i32$1 = 2; + HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1; } - function __wasm_grow_memory(pagesToAdd) { + function $2() { + return HEAPU32[65536 >> 2] | 0 | 0; + } + + function $3() { + var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0; + wasm2js_i32$0 = 65536; + wasm2js_i32$1 = 3; + HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1; + } + + function $4(sz) { + sz = sz | 0; + return __wasm_memory_grow(sz | 0) | 0; + } + + function $5() { + return __wasm_memory_size() | 0; + } + + function __wasm_memory_grow(pagesToAdd) { pagesToAdd = pagesToAdd | 0; - var oldPages = __wasm_current_memory() | 0; + var oldPages = __wasm_memory_size() | 0; var newPages = oldPages + pagesToAdd | 0; if ((oldPages < newPages) && (newPages < 65535)) { var newBuffer = new ArrayBuffer(Math_imul(newPages, 65536)); @@ -51,29 +73,25 @@ function asmFunc(global, env, buffer) { return oldPages; } - function __wasm_current_memory() { + function __wasm_memory_size() { return buffer.byteLength / 65536 | 0; } return { - memory: Object.create(Object.prototype, { - grow: { - value: __wasm_grow_memory - }, - buffer: { - get: function () { - return buffer; - } - - } - }), - grow: $0, - current: $1 + load_at_zero: $0, + store_at_zero: $1, + load_at_page_size: $2, + store_at_page_size: $3, + grow: $4, + size: $5 }; } const memasmFunc = new ArrayBuffer(65536); const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc); -export const memory = retasmFunc.memory; +export const load_at_zero = retasmFunc.load_at_zero; +export const store_at_zero = retasmFunc.store_at_zero; +export const load_at_page_size = retasmFunc.load_at_page_size; +export const store_at_page_size = retasmFunc.store_at_page_size; export const grow = retasmFunc.grow; -export const current = retasmFunc.current; +export const size = retasmFunc.size; diff --git a/test/wasm2js/traps.2asm.js b/test/wasm2js/traps.2asm.js index a869c6c74ab..7544e5187f3 100644 --- a/test/wasm2js/traps.2asm.js +++ b/test/wasm2js/traps.2asm.js @@ -24,13 +24,13 @@ function asmFunc(global, env, buffer) { function $0(x, y) { x = x | 0; y = y | 0; - return (x | 0) / (y | 0) | 0 | 0; + (x | 0) / (y | 0) | 0; } function $1(x, y) { x = x | 0; y = y | 0; - return (x >>> 0) / (y >>> 0) | 0 | 0; + (x >>> 0) / (y >>> 0) | 0; } function $2(x, x$hi, y, y$hi) { @@ -42,13 +42,9 @@ function asmFunc(global, env, buffer) { i64toi32_i32$0 = x$hi; i64toi32_i32$0 = y$hi; i64toi32_i32$0 = x$hi; - i64toi32_i32$1 = y$hi; - i64toi32_i32$1 = __wasm_i64_sdiv(x | 0, i64toi32_i32$0 | 0, y | 0, i64toi32_i32$1 | 0) | 0; + i64toi32_i32$1 = __wasm_i64_sdiv(x | 0, i64toi32_i32$0 | 0, y | 0, y$hi | 0) | 0; i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; i64toi32_i32$0 = i64toi32_i32$0; - i64toi32_i32$1 = i64toi32_i32$1; - i64toi32_i32$HIGH_BITS = i64toi32_i32$0; - return i64toi32_i32$1 | 0; } function $3(x, x$hi, y, y$hi) { @@ -60,13 +56,9 @@ function asmFunc(global, env, buffer) { i64toi32_i32$0 = x$hi; i64toi32_i32$0 = y$hi; i64toi32_i32$0 = x$hi; - i64toi32_i32$1 = y$hi; - i64toi32_i32$1 = __wasm_i64_udiv(x | 0, i64toi32_i32$0 | 0, y | 0, i64toi32_i32$1 | 0) | 0; + i64toi32_i32$1 = __wasm_i64_udiv(x | 0, i64toi32_i32$0 | 0, y | 0, y$hi | 0) | 0; i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; i64toi32_i32$0 = i64toi32_i32$0; - i64toi32_i32$1 = i64toi32_i32$1; - i64toi32_i32$HIGH_BITS = i64toi32_i32$0; - return i64toi32_i32$1 | 0; } function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {