From 74c514edd8fefb1ecfe943259ec0efc9253c274d Mon Sep 17 00:00:00 2001 From: thradams Date: Fri, 24 Jan 2025 17:34:29 -0300 Subject: [PATCH] fixes #227 --- ownership.md | 7 + src/file.c | 19 +- src/file.h | 2 - src/file2.c | 4 - src/lib.c | 115 +- src/object_flow.h | 5 + src/tokenizer.c | 14 +- src/version.h | 2 +- src/visit_flow.c | 94 +- src/web/cake.js | 1805 ++++++++++++++++--------------- src/web/ownership.html | 6 + tests/unit-tests/flow_out_arg.c | 13 + 12 files changed, 1077 insertions(+), 1009 deletions(-) delete mode 100644 src/file.h delete mode 100644 src/file2.c create mode 100644 tests/unit-tests/flow_out_arg.c diff --git a/ownership.md b/ownership.md index 900056b9..ac4a8591 100644 --- a/ownership.md +++ b/ownership.md @@ -1206,6 +1206,13 @@ int main() { +I later realized that C# has an out parameter, which is similar in +many ways. For example, both Cake and C# assume the argument is +initialized independently of the result. + +https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/out + + #### Null and Not-Null state The **null** state means that pointers/objects are empty, In other words, not referencing any object. diff --git a/src/file.c b/src/file.c index e2df2c70..77282853 100644 --- a/src/file.c +++ b/src/file.c @@ -1,13 +1,12 @@ -void f(){ - return 1; -} - -#pragma cake diagnostic check "-E1120" - +#pragma safety enable -int f2() { - return; +bool init(_Out int *a) { + *a = 3; + return true; } -#pragma cake diagnostic check "-E1121" - +int main() { + int a; + if (0 || init(&a)) return a; + return a; +} diff --git a/src/file.h b/src/file.h deleted file mode 100644 index 9c9bd5ed..00000000 --- a/src/file.h +++ /dev/null @@ -1,2 +0,0 @@ - -typedef typeof(nullptr) nullptr_t; diff --git a/src/file2.c b/src/file2.c deleted file mode 100644 index 4c6c939f..00000000 --- a/src/file2.c +++ /dev/null @@ -1,4 +0,0 @@ -static void f(){} -int main(){ - f(); -} diff --git a/src/lib.c b/src/lib.c index af008296..9fa0137d 100644 --- a/src/lib.c +++ b/src/lib.c @@ -8517,10 +8517,16 @@ void add_standard_macros(struct preprocessor_ctx* ctx) "#define __LINE__ 0\n" "#define __COUNTER__ 0\n" "#define _CONSOLE\n" - "#define __STDC_OWNERSHIP__ 1\n" - "#define _W_DIVIZION_BY_ZERO_ 29\n" - - + "#define __STDC_OWNERSHIP__ 1\n" /*cake extension*/ + "#define __STDC_HOSTED__ " TOSTRING(__STDC_HOSTED__) "\n" + "#define __STDC_NO_ATOMICS__ " TOSTRING(__STDC_NO_ATOMICS__) "\n" + "#define __STDC_NO_COMPLEX__ " TOSTRING(__STDC_NO_COMPLEX__) "\n" + "#define __STDC_NO_THREADS__ " TOSTRING(__STDC_NO_THREADS__ ) "\n" + "#define __STDC_NO_VLA__ " TOSTRING(__STDC_NO_VLA__ ) "\n" + //"#define __STDC__ " TOSTRING(__STDC__) "\n" + + + #ifdef __EMSCRIPTEN__ //include dir on emscripten "#pragma dir \"c:/\"\n" @@ -13425,6 +13431,11 @@ enum flow_state FLOW_OBJECT_STATE_UNINITIALIZED = 1 << 0, + + /* + The only reason we have null and zero is because + of non pointer references -1 for instance can be the "null" + */ FLOW_OBJECT_STATE_NULL = 1 << 1, FLOW_OBJECT_STATE_NOT_NULL = 1 << 2, @@ -28010,7 +28021,7 @@ void defer_start_visit_declaration(struct defer_visit_ctx* ctx, struct declarati //#pragma once -#define CAKE_VERSION "0.9.50" +#define CAKE_VERSION "0.9.51" @@ -45259,66 +45270,74 @@ static void flow_visit_expression(struct flow_visit_ctx* ctx, struct expression* flow_check_pointer_used_as_bool(ctx, p_expression->left); flow_check_pointer_used_as_bool(ctx, p_expression->right); - const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); struct true_false_set left_set = { 0 }; flow_visit_expression(ctx, p_expression->left, &left_set); + if (object_has_constant_value(&p_expression->left->object) && + object_to_bool(&p_expression->left->object) == true) + { + // left || right + //left is true, so the right side will not run + } + else + { + const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); + //Set all variables to false state, because otherwise, the right branch + // would not be evaluated + true_false_set_set_objects_to_false_branch(ctx, &left_set, nullable_enabled); - //Set all variables to false state, because otherwise, the right branch - // would not be evaluated - true_false_set_set_objects_to_false_branch(ctx, &left_set, nullable_enabled); + struct true_false_set right_set = { 0 }; + flow_visit_expression(ctx, p_expression->right, &right_set); - struct true_false_set right_set = { 0 }; - flow_visit_expression(ctx, p_expression->right, &right_set); + //Tudo que faz left ser true ou right ser true - // true_false_set_merge(expr_true_false_set, &left_set, &right_set, - // MERGE_OPTIONS_A_TRUE | MERGE_OPTIONS_A_FALSE | MERGE_OPTIONS_B_TRUE | MERGE_OPTIONS_B_FALSE, - // MERGE_OPTIONS_A_FALSE| MERGE_OPTIONS_B_FALSE); + for (int i = 0; i < left_set.size; i++) + { + struct true_false_set_item item5; - //Tudo que faz left ser true ou right ser true + item5.p_expression = left_set.data[i].p_expression; + item5.true_branch_state |= (left_set.data[i].true_branch_state | left_set.data[i].false_branch_state); + item5.false_branch_state |= left_set.data[i].false_branch_state; + true_false_set_push_back(expr_true_false_set, &item5); + } - for (int i = 0; i < left_set.size; i++) - { - struct true_false_set_item item5; + for (int k = 0; k < right_set.size; k++) + { + int index = + find_item_index_by_expression(expr_true_false_set, right_set.data[k].p_expression); + if (index == -1) + { + index = expr_true_false_set->size; - item5.p_expression = left_set.data[i].p_expression; - item5.true_branch_state |= (left_set.data[i].true_branch_state | left_set.data[i].false_branch_state); - item5.false_branch_state |= left_set.data[i].false_branch_state; - true_false_set_push_back(expr_true_false_set, &item5); - } + struct true_false_set_item item4 = { + .p_expression = right_set.data[k].p_expression + }; - for (int k = 0; k < right_set.size; k++) - { - int index = - find_item_index_by_expression(expr_true_false_set, right_set.data[k].p_expression); - if (index == -1) - { - index = expr_true_false_set->size; + true_false_set_push_back(expr_true_false_set, &item4); + } - struct true_false_set_item item4 = { - .p_expression = right_set.data[k].p_expression - }; + //Tudo que faz left true e right true faz expressao se true + expr_true_false_set->data[index].p_expression = right_set.data[k].p_expression; + //d->data[index].true_branch_state |= right_set.data[k].true_branch_state; + //Tudo que faz left true ou left false, e right false faz ser false + expr_true_false_set->data[index].false_branch_state |= right_set.data[k].false_branch_state; - true_false_set_push_back(expr_true_false_set, &item4); - } + //No path true seria possivel nao ser feito o right + expr_true_false_set->data[index].true_branch_state |= (BOOLEAN_FLAG_TRUE | BOOLEAN_FLAG_FALSE); - //Tudo que faz left true e right true faz expressao se true - expr_true_false_set->data[index].p_expression = right_set.data[k].p_expression; - //d->data[index].true_branch_state |= right_set.data[k].true_branch_state; - //Tudo que faz left true ou left false, e right false faz ser false - expr_true_false_set->data[index].false_branch_state |= right_set.data[k].false_branch_state; + } - //No path true seria possivel nao ser feito o right - expr_true_false_set->data[index].true_branch_state |= (BOOLEAN_FLAG_TRUE | BOOLEAN_FLAG_FALSE); + //TODO we whould not restore the previous states for states that + //are not true/false + // if (false || init(a)) ... we cannot undo the out a + arena_restore_current_state_from(ctx, original_state_number); + arena_remove_state(ctx, original_state_number); + true_false_set_destroy(&left_set); + true_false_set_destroy(&right_set); } - - arena_restore_current_state_from(ctx, original_state_number); - arena_remove_state(ctx, original_state_number); - true_false_set_destroy(&left_set); - true_false_set_destroy(&right_set); } break; @@ -45330,11 +45349,11 @@ static void flow_visit_expression(struct flow_visit_ctx* ctx, struct expression* flow_check_pointer_used_as_bool(ctx, p_expression->left); flow_check_pointer_used_as_bool(ctx, p_expression->right); - const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); struct true_false_set left_set = { 0 }; flow_visit_expression(ctx, p_expression->left, &left_set); + const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); //Set all variables to true state, because otherwise, the right branch // would not be evaluated diff --git a/src/object_flow.h b/src/object_flow.h index e73d9ca6..1e00c414 100644 --- a/src/object_flow.h +++ b/src/object_flow.h @@ -31,6 +31,11 @@ enum flow_state FLOW_OBJECT_STATE_UNINITIALIZED = 1 << 0, + + /* + The only reason we have null and zero is because + of non pointer references -1 for instance can be the "null" + */ FLOW_OBJECT_STATE_NULL = 1 << 1, FLOW_OBJECT_STATE_NOT_NULL = 1 << 2, diff --git a/src/tokenizer.c b/src/tokenizer.c index 6d908431..310fd07b 100644 --- a/src/tokenizer.c +++ b/src/tokenizer.c @@ -5303,10 +5303,16 @@ void add_standard_macros(struct preprocessor_ctx* ctx) "#define __LINE__ 0\n" "#define __COUNTER__ 0\n" "#define _CONSOLE\n" - "#define __STDC_OWNERSHIP__ 1\n" - "#define _W_DIVIZION_BY_ZERO_ 29\n" - - + "#define __STDC_OWNERSHIP__ 1\n" /*cake extension*/ + "#define __STDC_HOSTED__ " TOSTRING(__STDC_HOSTED__) "\n" + "#define __STDC_NO_ATOMICS__ " TOSTRING(__STDC_NO_ATOMICS__) "\n" + "#define __STDC_NO_COMPLEX__ " TOSTRING(__STDC_NO_COMPLEX__) "\n" + "#define __STDC_NO_THREADS__ " TOSTRING(__STDC_NO_THREADS__ ) "\n" + "#define __STDC_NO_VLA__ " TOSTRING(__STDC_NO_VLA__ ) "\n" + //"#define __STDC__ " TOSTRING(__STDC__) "\n" + + + #ifdef __EMSCRIPTEN__ //include dir on emscripten "#pragma dir \"c:/\"\n" diff --git a/src/version.h b/src/version.h index fd74a361..151ee7de 100644 --- a/src/version.h +++ b/src/version.h @@ -5,6 +5,6 @@ #pragma once -#define CAKE_VERSION "0.9.50" +#define CAKE_VERSION "0.9.51" diff --git a/src/visit_flow.c b/src/visit_flow.c index 2fb07c34..f6f4ec96 100644 --- a/src/visit_flow.c +++ b/src/visit_flow.c @@ -2423,66 +2423,74 @@ static void flow_visit_expression(struct flow_visit_ctx* ctx, struct expression* flow_check_pointer_used_as_bool(ctx, p_expression->left); flow_check_pointer_used_as_bool(ctx, p_expression->right); - const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); struct true_false_set left_set = { 0 }; flow_visit_expression(ctx, p_expression->left, &left_set); + if (object_has_constant_value(&p_expression->left->object) && + object_to_bool(&p_expression->left->object) == true) + { + // left || right + //left is true, so the right side will not run + } + else + { + const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); + //Set all variables to false state, because otherwise, the right branch + // would not be evaluated + true_false_set_set_objects_to_false_branch(ctx, &left_set, nullable_enabled); - //Set all variables to false state, because otherwise, the right branch - // would not be evaluated - true_false_set_set_objects_to_false_branch(ctx, &left_set, nullable_enabled); + struct true_false_set right_set = { 0 }; + flow_visit_expression(ctx, p_expression->right, &right_set); - struct true_false_set right_set = { 0 }; - flow_visit_expression(ctx, p_expression->right, &right_set); + //Tudo que faz left ser true ou right ser true - // true_false_set_merge(expr_true_false_set, &left_set, &right_set, - // MERGE_OPTIONS_A_TRUE | MERGE_OPTIONS_A_FALSE | MERGE_OPTIONS_B_TRUE | MERGE_OPTIONS_B_FALSE, - // MERGE_OPTIONS_A_FALSE| MERGE_OPTIONS_B_FALSE); + for (int i = 0; i < left_set.size; i++) + { + struct true_false_set_item item5; - //Tudo que faz left ser true ou right ser true + item5.p_expression = left_set.data[i].p_expression; + item5.true_branch_state |= (left_set.data[i].true_branch_state | left_set.data[i].false_branch_state); + item5.false_branch_state |= left_set.data[i].false_branch_state; + true_false_set_push_back(expr_true_false_set, &item5); + } - for (int i = 0; i < left_set.size; i++) - { - struct true_false_set_item item5; + for (int k = 0; k < right_set.size; k++) + { + int index = + find_item_index_by_expression(expr_true_false_set, right_set.data[k].p_expression); + if (index == -1) + { + index = expr_true_false_set->size; - item5.p_expression = left_set.data[i].p_expression; - item5.true_branch_state |= (left_set.data[i].true_branch_state | left_set.data[i].false_branch_state); - item5.false_branch_state |= left_set.data[i].false_branch_state; - true_false_set_push_back(expr_true_false_set, &item5); - } + struct true_false_set_item item4 = { + .p_expression = right_set.data[k].p_expression + }; - for (int k = 0; k < right_set.size; k++) - { - int index = - find_item_index_by_expression(expr_true_false_set, right_set.data[k].p_expression); - if (index == -1) - { - index = expr_true_false_set->size; + true_false_set_push_back(expr_true_false_set, &item4); + } - struct true_false_set_item item4 = { - .p_expression = right_set.data[k].p_expression - }; + //Tudo que faz left true e right true faz expressao se true + expr_true_false_set->data[index].p_expression = right_set.data[k].p_expression; + //d->data[index].true_branch_state |= right_set.data[k].true_branch_state; + //Tudo que faz left true ou left false, e right false faz ser false + expr_true_false_set->data[index].false_branch_state |= right_set.data[k].false_branch_state; - true_false_set_push_back(expr_true_false_set, &item4); - } + //No path true seria possivel nao ser feito o right + expr_true_false_set->data[index].true_branch_state |= (BOOLEAN_FLAG_TRUE | BOOLEAN_FLAG_FALSE); - //Tudo que faz left true e right true faz expressao se true - expr_true_false_set->data[index].p_expression = right_set.data[k].p_expression; - //d->data[index].true_branch_state |= right_set.data[k].true_branch_state; - //Tudo que faz left true ou left false, e right false faz ser false - expr_true_false_set->data[index].false_branch_state |= right_set.data[k].false_branch_state; + } - //No path true seria possivel nao ser feito o right - expr_true_false_set->data[index].true_branch_state |= (BOOLEAN_FLAG_TRUE | BOOLEAN_FLAG_FALSE); + //TODO we whould not restore the previous states for states that + //are not true/false + // if (false || init(a)) ... we cannot undo the out a + arena_restore_current_state_from(ctx, original_state_number); + arena_remove_state(ctx, original_state_number); + true_false_set_destroy(&left_set); + true_false_set_destroy(&right_set); } - - arena_restore_current_state_from(ctx, original_state_number); - arena_remove_state(ctx, original_state_number); - true_false_set_destroy(&left_set); - true_false_set_destroy(&right_set); } break; @@ -2494,11 +2502,11 @@ static void flow_visit_expression(struct flow_visit_ctx* ctx, struct expression* flow_check_pointer_used_as_bool(ctx, p_expression->left); flow_check_pointer_used_as_bool(ctx, p_expression->right); - const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); struct true_false_set left_set = { 0 }; flow_visit_expression(ctx, p_expression->left, &left_set); + const int original_state_number = arena_add_copy_of_current_state(ctx, "original"); //Set all variables to true state, because otherwise, the right branch // would not be evaluated diff --git a/src/web/cake.js b/src/web/cake.js index 66d6ff6e..3a0c6249 100644 --- a/src/web/cake.js +++ b/src/web/cake.js @@ -399,9 +399,9 @@ function Table(ret) { } } function initActiveSegments(imports) { - base64DecodeToExistingUint8Array(bufferView, 65536, "4pSYAOKUkAAlLTE4c+KUggAlLTI1c+KUggAlLTIwc+KUggDilIIlLTJk4pSCAOKUlOKUgOKUgOKUtOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUtOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgADilIzilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAAfgB7Li4ufQBub3QgZm9sbG93aW5nIGNvcnJlY3QgY2xvc2UgYnJhY2Ugc3R5bGUgfQAgJSpzIHwAICVzIHwAbm90IGZvbGxvd2luZyBjb3JyZWN0IGJyYWNlIHN0eWxlIHsAID0gewB0b2tlbl9saXN0X2lzX2VtcHR5AHBvaW50ZWQgb2JqZWN0IG1heSBiZSBub3QgZW1wdHkAb2JqZWN0ICclcycgbWF5IG5vdCBiZSBlbXB0eQBpbmZpbml0eQBzYWZldHkAdHJ5AF9JbWFnaW5hcnkAZGVmZXJfdmlzaXRfY3R4X2Rlc3Ryb3kAaGFzaG1hcF9kZXN0cm95AHN3aXRjaF92YWx1ZV9kZXN0cm95AGFueQBfaXNfYXJyYXkAbnVsbC1hcy1hcnJheQAgcGFzc2luZyBudWxsIGFzIGFycmF5AHVzaW5nIGluZGlyZWN0aW9uICctPicgaW4gYXJyYXkAYXJndW1lbnQgb2YgX0xlbmd0aG9mIG11c3QgYmUgYW4gYXJyYXkAZnVuY3Rpb24gcmV0dXJuaW5nIGFycmF5AGluZGV4ICVkIGlzIHBhc3QgdGhlIGVuZCBvZiB0aGUgYXJyYXkALXN0ZD1jeHgAX0NvbXBsZXgAb2JqZWN0X2V4dGVuZF9hcnJheV90b19pbmRleABzdGF0aWNfZGVidWdfZXgALXN0ZD1jMngALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABceCV4AHRocm93AG92ZXJmbG93AF9WaWV3AC1zdHlsZT1nbnUAJWxsdQAlbHUAJXUAcF9leHByZXNzaW9uX25vZGUtPnR5cGUubmV4dAAtbm8tb3V0cHV0AC1tc3ZjLW91dHB1dABfT3V0AF9pc19jb25zdABtYWNyb19jb3B5X3JlcGxhY2VtZW50X2xpc3QAaWRlbnRpZmllcl9saXN0AHNwZWNpZmllcl9xdWFsaWZpZXJfbGlzdAB0b2tlbl9saXN0X2FwcGVuZF9saXN0AHNob3J0AHN0YXRpY19hc3NlcnQAX1N0YXRpY19hc3NlcnQALWRpc2FibGUtYXNzZXJ0AGdyb3VwX3BhcnQAcG9pbnRlcl9vcHQAZ3JvdXBfb3B0AGVzY2FwZV9zZXF1ZW5jZXNfZGVjb2RlX29wdABfT3B0AHR5cGVfbGlzdF9wdXNoX2Zyb250AF9pc19mbG9hdGluZ19wb2ludABvYmplY3RfdG9fdW5zaWduZWRfaW50AG9iamVjdF90b19zaWduZWRfaW50AGN1cnJlbnQAY2hlY2tfc2l6ZW9mX2FyZ3VtZW50AHNpemVvZi1hcnJheS1hcmd1bWVudABhcnJheS1wYXJhbWV0ZXItYXNzaWdubWVudABsdmFsdWUgcmVxdWlyZWQgYXMgbGVmdCBvcGVyYW5kIG9mIGFzc2lnbm1lbnQAbXVsdGktbGluZSAvL2NvbW1lbnQAbWlzc2luZyBlbmQgb2YgY29tbWVudAB0cnlfc3RhdGVtZW50AGZsb3dfdmlzaXRfZm9yX3N0YXRlbWVudABkZWZlcl92aXNpdF9mb3Jfc3RhdGVtZW50AGZsb3dfdmlzaXRfanVtcF9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfanVtcF9zdGF0ZW1lbnQAZF92aXNpdF9qdW1wX3N0YXRlbWVudABmbG93X3Zpc2l0X3NlbGVjdGlvbl9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfc2VsZWN0aW9uX3N0YXRlbWVudABkX3Zpc2l0X3NlbGVjdGlvbl9zdGF0ZW1lbnQAZmxvd192aXNpdF9pdGVyYXRpb25fc3RhdGVtZW50AGRlZmVyX3Zpc2l0X2l0ZXJhdGlvbl9zdGF0ZW1lbnQAZF92aXNpdF9pdGVyYXRpb25fc3RhdGVtZW50AGZsb3dfdmlzaXRfaWZfc3RhdGVtZW50AGRlZmVyX3Zpc2l0X2lmX3N0YXRlbWVudABmbG93X3Zpc2l0X3doaWxlX3N0YXRlbWVudABkZWZlcl92aXNpdF93aGlsZV9zdGF0ZW1lbnQAZmxvd192aXNpdF9kb193aGlsZV9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfZG9fd2hpbGVfc3RhdGVtZW50AGlzX2NvbXBvdW5kX3N0YXRlbWVudABmbG93X3Zpc2l0X3VubGFiZWxlZF9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfdW5sYWJlbGVkX3N0YXRlbWVudABkX3Zpc2l0X3VubGFiZWxlZF9zdGF0ZW1lbnQAZF92aXNpdF9sYWJlbGVkX3N0YXRlbWVudABlbXB0eS1zdGF0ZW1lbnQAcmV0dXJuIGNhbm5vdCBiZSB1c2VkIGluc2lkZSBkZWZlciBzdGF0ZW1lbnQAY29uZGl0aW9uYWwtY29uc3RhbnQAdW51c3VhbCBleHByZXNzaW9uL3R5cGUgdXNlZCBhcyBudWxsIHBvaW50ZXIgY29uc3RhbnQAX0JpdEludABkZWZhdWx0AGNvbnN0LWluaXQAZXhwZWN0ZWQgYmluYXJ5IGRpZ2l0AGV4cGVjdGVkIGhleGFkZWNpbWFsIGRpZ2l0AGV4cGVjdGVkIGludGVnZXIgdHlwZSBvbiByaWdodAAtc3R5bGU9bWljcm9zb2Z0AGV4cGVjdGVkIGludGVnZXIgdHlwZSBvbiBsZWZ0AHVuc2V0AG9iamVjdF9zZXQAaGFzaG1hcF9zZXQAc3RhdGljX3NldABnZXRfYWxpZ25vZl9zdHJ1Y3QAZ2V0X3NpemVvZl9zdHJ1Y3QAcmVzdHJpY3QAZXhwcmVzc2lvbl9nZXRfZmxvd19vYmplY3QAdXNpbmctbW92ZWQtb2JqZWN0AGFzc2lnbm1lbnQgb2YgcmVhZC1vbmx5IG9iamVjdABtYXliZSB1c2luZyBhIHVuaW5pdGlhbGl6ZWQgb2JqZWN0AGRlcmVmZXJlbmNlIGEgTlVMTCBvYmplY3QAcGFzc2luZyBhbiB1bmluaXRpYWxpemVkIGFyZ3VtZW50ICclcycgb2JqZWN0AHJldHVybmluZyBhbiB1bmluaXRpYWxpemVkICclcycgb2JqZWN0AHJlYWRpbmcgYW4gdW5pbml0aWFsaXplZCAnJXMnIG9iamVjdABvYmplY3RfdG9fZmxvYXQAbnVsbHB0cl90AGNvbGxlY3RfbWFjcm9fYXJndW1lbnRzAHJlcGxhY2VfbWFjcm9fYXJndW1lbnRzAHRvbyBtYW55IGFyZ3VtZW50cwB0eXBlb2YgdXNlZCBpbiBhcnJheSBhcmd1bWVudHMAdG9vIGZldyBhcmd1bWVudHMAdXNlIHNuYWtlX2Nhc2UgZm9yIGFyZ3VtZW50cwBhZGRyZXNzAHVzZSBVUFBFUkNBU0UgZm9yIGVudW1lcmF0b3JzAG9wZXJhdG9yIC0tIGNhbm5vdCBiZSB1c2VkIGluIG93bmVyIHBvaW50ZXJzAG9wZXJhdG9yICsrIGNhbm5vdCBiZSB1c2VkIGluIF9Pd25lciBwb2ludGVycwBfT2JqX293bmVyIHF1YWxpZmllciBjYW4gb25seSBiZSB1c2VkIHdpdGggcG9pbnRlcnMAcHJvY2Vzc19pZGVudGlmaWVycwBkaXNjYXJkZWQtcXVhbGlmaWVycwBkZWNsYXJhdGlvbl9zcGVjaWZpZXJzAGluY29tcGF0aWJsZSBzcGVjaWZpZXJzAHVzZSBzbmFrZV9jYXNlIGZvciBzdHJ1Y3QgbWVtYmVycwBlbGlmX2dyb3VwcwB1c2UgU0NSRUFNSU5HX0NBU0UgZm9yIG1hY3JvcwBjaGVja19kaWZlcmVudF9lbnVucwByZWdpc3Rlcl9zdHJ1Y3RfdHlwZXNfYW5kX2Z1bmN0aW9ucwB0b2tlbiAnJXMnIGlzIG5vdCB2YWxpZCBpbiBwcmVwcm9jZXNzb3IgZXhwcmVzc2lvbnMALWR1bXAtcHAtdG9rZW5zAC1kdW1wLXRva2VucwBza2lwX2JsYW5rcwAtbnVsbGNoZWNrcwB1c2Ugc25ha2VfY2FzZSBmb3Igc3RydWN0L3VuaW9uIHRhZ3MAdXNlIGNhbWVsQ2FzZSBmb3Igc3RydWN0L3VuaW9uIHRhZ3MAdXNlIHNuYWtlX2Nhc2UgZm9yIGVudW0gdGFncwB1c2UgUGFzY2FsQ2FzZSBmb3IgZW51bSB0YWdzAF9Ob3JldHVybiBpcyBkZXByZWNhdGVkIHVzZSBhdHRyaWJ1dGVzAHVzZSBvbmx5IGZvciBub24gYWdyZWdhdGVzAGluY29tcGF0aWJsZS10eXBlcwBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlcwBtaXNtYXRjaCBpbiBlbnVtZXJhdGlvbiB0eXBlcwAgaW5jb21wYXRpYmxlIHR5cGVzAHVzZSBzbmFrZV9jYXNlIGZvciBsb2NhbCB2YXJpYWJsZXMAdXNlIGNhbWVsQ2FzZSBmb3IgbG9jYWwgdmFyaWFibGVzAHVzZSBzbmFrZV9jYXNlIGdsb2JhbCB2YXJpYWJsZXMAdXNlIHByZWZpeCBzXyBmb3Igc3RhdGljIGdsb2JhbCB2YXJpYWJsZXMALXNob3ctaW5jbHVkZXMAb3V0LW9mLWJvdW5kcwBhcnJheSBpbmRleCAnJWQnIGluIGluaXRpYWxpemVyIGV4Y2VlZHMgYXJyYXkgYm91bmRzAGFsaWduYXMAX0FsaWduYXMAJXMlcwAtVyVzACVzLT4lcwAlcy8lcwAlcy4lcwBfX20lZC4lcwBzdHJ1Y3QgJXMAJXMgJXMAaW52YWxpZCBwYXJhbWV0ZXIgJXMAdW5pb24gJXMAZW51bSAlcwBleGVwYXRoICVzAGV4cGVjdGVkICVzACVkICVzAG51bGxwdHIAY29uc3RleHByAG1pc3NpbmctZGVzdHJ1Y3RvcgBleGVjdXRlX2JpdHdpc2Vfb3BlcmF0b3IAZW51bWVyYXRvcgBmbG93X3Zpc2l0X2luaXRfZGVjbGFyYXRvcgBtYWtlX3R5cGVfdXNpbmdfZGVjbGFyYXRvcgBmaW5kX2RlY2xhcmF0b3IAaGlkZS1kZWNsYXJhdG9yAHN0YXRpYyBvciB0eXBlIHF1YWxpZmllcnMgYXJlIG5vdCBhbGxvd2VkIGluIG5vbi1wYXJhbWV0ZXIgYXJyYXkgZGVjbGFyYXRvcgAnJXMnOiB1bnJlZmVyZW5jZWQgZGVjbGFyYXRvcgAjZXJyb3IAZXhwcmVzc2lvbiBlcnJvcgBmb3IAZGlyAC1mYW5hbHl6ZXIAZW1iZWRfdG9rZW5pemVyAHdhcm5pbmc6IGV4Y2VzcyBlbGVtZW50cyBpbiBpbml0aWFsaXplcgByZWdpc3RlcgBfaXNfcG9pbnRlcgB0eXBlX3BhcmFtX2FycmF5X3RvX3BvaW50ZXIAdHlwZV9yZW1vdmVfcG9pbnRlcgBmbG93X29iamVjdF9leHBhbmRfcG9pbnRlcgBzdWJzY3JpcHRlZCB2YWx1ZSBpcyBuZWl0aGVyIGFycmF5IG5vciBwb2ludGVyAGludmFsaWQgcXVhbGlmaWVyIGZvciBwb2ludGVyAGRpc2NhcmRpbmcgX093bmVyIHBvaW50ZXIAbm9uLXBvaW50ZXIgdG8gcG9pbnRlcgBjYWxsZWQgb2JqZWN0IGlzIG5vdCBhdHRyIGZ1bmN0aW9uIG9yIGZ1bmN0aW9uIHBvaW50ZXIAY2Fubm90IGNvbnZlcnQgYSBudWxsIHBvaW50ZXIgY29uc3RhbnQgdG8gbm9uLW51bGxhYmxlIHBvaW50ZXIAYXNzaWdubWVudCBvZiBwb3NzaWJsZSBudWxsIHBvaW50ZXIgJyVzJyB0byBub24tbnVsbGFibGUgcG9pbnRlcgByZXR1cm5pbmcgYSBwb3NzaWJsZSBudWxsIHBvaW50ZXIgJyVzJyB0byBub24tbnVsbGFibGUgcG9pbnRlcgB1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGFmdGVyAHR5cGVvZi1wYXJhbWV0ZXIAdW51c2VkLXBhcmFtZXRlcgBhc3NpZ25tZW50IHRvIGFycmF5IHBhcmFtZXRlcgBwYXNzaW5nIGEgcG9zc2libGUgbnVsbCBwb2ludGVyICclcycgdG8gbm9uLW51bGxhYmxlIHBvaW50ZXIgcGFyYW1ldGVyAHNpemVvZiBhcHBsaWVkIHRvIGFycmF5IGZ1bmN0aW9uIHBhcmFtZXRlcgB1bmluaXRpYWxpemVkIG9iamVjdCAnJXMnIHBhc3NlZCB0byBub24tb3B0aW9uYWwgcGFyYW1ldGVyACclcyc6IHVucmVmZXJlbmNlZCBmb3JtYWwgcGFyYW1ldGVyAG1pc3NpbmcgdGVybWluYXRpbmcgJyBjaGFyYWN0ZXIAbWlzc2luZyB0ZXJtaW5hdGluZyAiIGNoYXJhY3RlcgBfaXNfb3duZXIAX09ial9vd25lcgBub3Qtb3duZXIAdGVtcC1vd25lcgBjYW5ub3QgcmV0dXJuIGEgYXV0b21hdGljIHN0b3JhZ2UgZHVyYXRpb24gX093bmVyIHRvIG5vbi1vd25lcgBkaXNjYXJkLW93bmVyAGNhbm5vdCBhc3NpZ24gYSBub24tb3duZXIgdG8gb3duZXIAZGlzY2FyZGluZyBfT3duZXIAcHJlcHJvY2Vzc29yX3Rva2VuX2FoZWFkX2lzX2lkZW50aWZpZXIAJ2F1dG8nIHJlcXVpcmVzIGEgcGxhaW4gaWRlbnRpZmllcgBleHBlY3RlZCBpZGVudGlmaWVyAHR5cGVfc3BlY2lmaWVyX3F1YWxpZmllcgBtaXNzaW5nLW93bmVyLXF1YWxpZmllcgBzdG9yYWdlX2NsYXNzX3NwZWNpZmllcgBmaW5kX3N0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIAcF9leHByZXNzaW9uX25vZGUtPnR5cGUubmV4dC0+c3RydWN0X29yX3VuaW9uX3NwZWNpZmllcgBwX3R5cGUtPnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIAZmluZF9lbnVtX3NwZWNpZmllcgByaWdodC0+dHlwZS5lbnVtX3NwZWNpZmllcgBsZWZ0LT50eXBlLmVudW1fc3BlY2lmaWVyAHR5cGVfc3BlY2lmaWVyAGNhbm5vdCBjb21iaW5lIHdpdGggcHJldmlvdXMgJ2xvbmcgbG9uZycgZGVjbGFyYXRpb24gc3BlY2lmaWVyAGNvbXBhcmlzb24gYmV0d2VlbiBwb2ludGVyIGFuZCBpbnRlZ2VyAGRlZmVyAHBwbnVtYmVyAGNvbnZlcnRfdG9fbnVtYmVyAHJldHVybi1sb2NhbC1hZGRyAF9pc19zY2FsYXIAcmlnaHQgb3BlcmF0b3IgaXMgbm90IHNjYWxhcgBsZWZ0IG9wZXJhdG9yIGlzIG5vdCBzY2FsYXIAdHlwZV9pc19hcnJheV9vZl9jaGFyAG11bHRpLWNoYXIAZWxpZl9ncm91cABzY29wZV9saXN0X3BvcABkaWFnbm9zdGljX3N0YWNrX3BvcABvd25lcnNoaXAAJXAAYXV0bwBnb3RvAGZsb3ctZGl2LWJ5LXplcm8Abm90LXplcm8AdmFsdWUgaXMgYWx3YXlzIG5vbi16ZXJvAHBvc3NpYmxlIGRpdmlzaW9uIGJ5IHplcm8AdmFsdWUgaXMgYWx3YXlzIHplcm8AZXhwYW5kX21hY3JvAGRvAC1vAHN0b3JhZ2Ugc2l6ZSBvZiAnJXMnIGlzbid0IGtub3duAG5vcmV0dXJuAF9Ob3JldHVybgBiZWZvcmUtcmV0dXJuAGV4dGVybgB0eXBlX2NvbW1vbgBfaXNfZnVuY3Rpb24AZnVuY3Rpb24gcmV0dXJuaW5nIGZ1bmN0aW9uAGFzc2lnbm1lbnQgb2YgZnVuY3Rpb24AaWZfc2VjdGlvbgBhcnJheS1pbmRpcmVjdGlvbgBhcnJheSBpbmRpcmVjdGlvbgByZWRlY2xhcmF0aW9uAGZsb3dfdmlzaXRfZGVjbGFyYXRpb24AZmxvd19zdGFydF92aXNpdF9kZWNsYXJhdGlvbgBkZWZlcl9zdGFydF92aXNpdF9kZWNsYXJhdGlvbgBmdW5jdGlvbl9kZWZpbml0aW9uX29yX2RlY2xhcmF0aW9uAHBhcmFtZXRlcl9kZWNsYXJhdGlvbgBwcmFnbWFfZGVjbGFyYXRpb24AZGVjbGFyYXRpb24gb2YgJyVzJyBoaWRlcyBwcmV2aW91cyBkZWNsYXJhdGlvbgByZXBsYWNlbWVudF9saXN0X3JlZXhhbWluYXRpb24AZ2VuZXJpY19hc3NvY2lhdGlvbgBzdGFuZGFyZCBtYWNyb3MgaW5jbHVzaW9uAF9fREFURV9fIG1hY3JvIGluY2x1c2lvbgBfX1RJTUVfXyBtYWNybyBpbmNsdXNpb24AZXF1YWxpdHlfZXhwcmVzc2lvbgB1bmFyeV9leHByZXNzaW9uAHByaW1hcnlfZXhwcmVzc2lvbgBwb3N0Zml4X2V4cHJlc3Npb24AY2FzdF9leHByZXNzaW9uAGFzc2lnbm1lbnRfZXhwcmVzc2lvbgBwcmVwcm9jZXNzb3JfY29uc3RhbnRfZXhwcmVzc2lvbgBmbG93X3Zpc2l0X2V4cHJlc3Npb24AZF92aXNpdF9leHByZXNzaW9uAGV4Y2x1c2l2ZV9vcl9leHByZXNzaW9uAGNvbmRpdGlvbmFsX2V4cHJlc3Npb24AcmVsYXRpb25hbF9leHByZXNzaW9uAG11bHRpcGxpY2F0aXZlX2V4cHJlc3Npb24AYW5kX2V4cHJlc3Npb24AZW1wdHkgZXhwcmVzc2lvbgBleHBlY3RlZCBjb25zdGFudCBleHByZXNzaW9uAHJpZ2h0IHR5cGUgaXMgbm90IHNjYWxhciBmb3Igb3IgZXhwcmVzc2lvbgBsZWZ0IHR5cGUgaXMgbm90IHNjYWxhciBmb3Igb3IgZXhwcmVzc2lvbgBpbnZhbGlkIHR5cGVzIGFkZGl0aXZlIGV4cHJlc3Npb24AZXhwZWN0ZWQgZXhwcmVzc2lvbgBlbnVtLWNvbnZlcnNpb24AbnVsbC1jb252ZXJzaW9uAHVuaW9uAGJyZWFrIGpvaW4AaW52YWxpZCB0b2tlbgB1bmV4cGVjdGVkIHRva2VuAG5hbgBpbmNvbXBhdGlibGUtZW51bQBmbG93X3Zpc2l0X2luaXRpYWxpemVyX2xpc3RfaXRlbQBmbG93X2V4aXRfYmxvY2tfdmlzaXRfZGVmZXJfaXRlbQBfT3V0IG9mIG1lbQAbWzk1bQAbWzM0bQAbWzkzbQAbWzkybQAbWzM2OzFtABtbMzQ7MW0AG1szNjsxbW5vdGU6IBtbOTdtJXMKG1swbQAbWzk1bXdhcm5pbmc6IBtbOTdtJXMgWxtbOTVtJXMbWzk3bV0KG1swbQAbWzM2OzFtbm90ZTogG1s5N20lcyBbG1szNjsxbSVzG1s5N21dChtbMG0AG1s5MW1lcnJvcjogG1s5N20lcyBbG1s5MW0lcxtbOTdtXQobWzBtABtbOTBtAG9iamVjdF90b19ib29sAF9Cb29sAGZsb3ctbm90LW51bGwAcG9pbnRlciBpcyBhbHdheXMgbm90LW51bGwAcG9pbnRlciBpcyBhbHdheXMgbm9uLW51bGwAdW51c3VhbC1udWxsAG1heWJlLW51bGwAcG9pbnRlciBpcyBhbHdheXMgbnVsbABwb2ludGVyIG1heSBiZSBudWxsAG5vbi1udWxsYWJsZSBwb2ludGVyICclcycgbWF5IGJlIG51bGwAaW50ZWdlciBvdmVyZmxvdyByZXN1bHRzIGluICclZGxsAC1XYWxsAHBvc3RmaXhfZXhwcmVzc2lvbl90YWlsAHNraXBfYmxhbmtzX2xldmVsAGxhYmVsAHR5cGVvZl91bnF1YWwAX2lzX2ludGVncmFsAGltcGxpY2l0bHktdW5zaWduZWQtbGl0ZXJhbABvcmlnaW5hbAB0aHJlYWRfbG9jYWwAX1RocmVhZF9sb2NhbABnZXRfd2FybmluZ19iaXRfbWFzawB0eXBlX2dldF9pbnRlZ2VyX3JhbmsAcHJpbWFyeV9ibG9jawB0aHJvdyBzdGF0ZW1lbnQgbm90IHdpdGhpbiB0cnkgYmxvY2sAY2hlY2sAdG9rZW5fbGlzdF9wb3BfYmFjawB0eXBlX2xpc3RfcHVzaF9iYWNrAGZsb3dfb2JqZWN0c19wdXNoX2JhY2sAYnJlYWsALXNhcmlmLXBhdGgAYXJndW1lbnRfZXhwcmVzc2lvbl9saXN0X3B1c2gAc3dpdGNoX3ZhbHVlX2xpc3RfcHVzaABzY29wZV9saXN0X3B1c2gAZmFsbHRocm91Z2gAZW51bWVyYXRpb24gdmFsdWUgJyVzJyBub3QgaGFuZGxlZCBpbiBzd2l0Y2gAY2F0Y2gAdHJ1ZV9mYWxzZV9zZXRfc2V0X29iamVjdHNfdG9fY29yZV9icmFuY2gAbGVmdC10cnVlLWJyYW5jaABjOi9hc3NlcnQuaABjOi9saW1pdHMuaABjOi93Y2hhci5oAGM6L2Vycm5vLmgAYzovc3RkaW8uaABjOi9tYXRoLmgAYzovc3RyaW5nLmgAYzovc3RkZGVmLmgAYzovbG9jYWxlLmgAYzovc3RkbGliLmgAc3RhdGljX2RlYnVnAGFuYWx5emVyLW5vbi1vcHQtYXJnAHBwbnVtYmVyX3RvX2xvbmdsb25nAG9iamVjdF90b191bnNpZ25lZF9sb25nX2xvbmcAb2JqZWN0X3RvX3NpZ25lZF9sb25nX2xvbmcAb2JqZWN0X3RvX3Vuc2lnbmVkX2xvbmcAb2JqZWN0X3RvX3NpZ25lZF9sb25nAGluaXRpYWxpemVyIGZvciBhcnJheSBpcyB0b28gbG9uZwBsb25nIGxvbmcAZXhwZWN0ZWQgc3RyaW5nACN3YXJuaW5nAHRva2VuX2xpc3RfYXBwZW5kX2xpc3RfYXRfYmVnaW5uaW5nAHN0cmluZy1zbGljaW5nAHVubmVjZXNzYXJ5IGxpbmUtc2xpY2luZwAtYXV0b2NvbmZpZwAtYXV0by1jb25maWcAc3NfdmFmcHJpbnRmAHNvdXJjZSBleHByZXNzaW9uIG9mIF9PYmpfb3duZXIgbXVzdCBiZSBhZGRyZXNzb2YAdHlwZV9nZXRfYWxpZ25vZgBfQWxpZ25vZgBfTGVuZ3Rob2YAdHlwZV9nZXRfc2l6ZW9mAHR5cGVvZgBtdXN0LXVzZS1hZGRyZXNzLW9mAGluZgAlbGYALXNhcmlmAGVsaWYAZW5kaWYAYmVmb3JlLWlmAHVuZGVmAGVsaWZuZGVmAGVsaWZkZWYAdHlwZWRlZgAlTGYAJWYAYXJyYXktc2l6ZQBub24tb3duZXItdG8tb3duZXItbW92ZQBub24tb3duZXItbW92ZQBhcnJheSBkZXNpZ25hdG9yIHZhbHVlICclZCcgaXMgbmVnYXRpdmUAdHJ1ZQBjb250aW51ZQBfaXNfbHZhbHVlAG9iamVjdF9pbmNyZW1lbnRfdmFsdWUAY29uc3RhbnQtdmFsdWUAdW51c2VkLXZhbHVlAHZvaWQgZnVuY3Rpb24gJyVzJyBzaG91bGQgbm90IHJldHVybiBhIHZhbHVlAG5vbiB2b2lkIGZ1bmN0aW9uICclcycgc2hvdWxkIHJldHVybiBhIHZhbHVlAF9faGFzX2NfYXR0cmlidXRlAHdhcm5pbmcgJyVzJyBpcyBub3QgYW4gY2FrZSBhdHRyaWJ1dGUAd2FybmluZyAnJXMnIGlzIG5vdCBhbiBzdGFuZGFyZCBhdHRyaWJ1dGUAaWdub3JpbmcgcmV0dXJuIHZhbHVlIG9mIGZ1bmN0aW9uIGRlY2xhcmVkIHdpdGggJ25vZGlzY2FyZCcgYXR0cmlidXRlAG5vdGUAbWFjcm9fYXJndW1lbnRfZGVsZXRlAGVudW1lcmF0b3JfZGVsZXRlAGluaXRfZGVjbGFyYXRvcl9kZWxldGUAbWVtYmVyX2RlY2xhcmF0b3JfZGVsZXRlAGRlc2lnbmF0b3JfZGVsZXRlAHR5cGVfc3BlY2lmaWVyX3F1YWxpZmllcl9kZWxldGUAZGVjbGFyYXRpb25fc3BlY2lmaWVyX2RlbGV0ZQBhdHRyaWJ1dGVfc3BlY2lmaWVyX2RlbGV0ZQBwYXJhbWV0ZXJfZGVjbGFyYXRpb25fZGVsZXRlAG1lbWJlcl9kZWNsYXJhdGlvbl9kZWxldGUAZ2VuZXJpY19hc3NvY2lhdGlvbl9kZWxldGUAYXJndW1lbnRfZXhwcmVzc2lvbl9kZWxldGUAdG9rZW5fZGVsZXRlAGJsb2NrX2l0ZW1fZGVsZXRlAGF0dHJpYnV0ZV9kZWxldGUAZmxvd19vYmplY3Rfc3RhdGVfZGVsZXRlAGZsb3dfb2JqZWN0X21lcmdlX2N1cnJlbnRfd2l0aF9zdGF0ZQBmbG93X29iamVjdF9hZGRfc3RhdGUAc3RhdGljX3N0YXRlAGRlY2xhcmF0b3Itc3RhdGUAY29uY2F0ZW5hdGUAZWxzZQBmYWxzZQBjYXNlAGlnbm9yZQBmbG93X2VuZF9vZl9ibG9ja192aXNpdF9jb3JlAHByaW50X29iamVjdF9jb3JlAGNoZWNrZWRfcmVhZF9vYmplY3RfY29yZQBtYWtlX29iamVjdF9wdHJfY29yZQBwcmV2aW91cyBkZWNsYXJhdGlvbiBpcyBoZXJlAGFzc2lnbm1lbnQgdG8gZXhwcmVzc2lvbiB3aXRoIGFycmF5IHR5cGUAY2hhcmFjdGVyIGNvbnN0YW50IHRvbyBsb25nIGZvciBpdHMgdHlwZQBpbnRlZ2VyIGxpdGVyYWwgaXMgdG9vIGxhcmdlIHRvIGJlIHJlcHJlc2VudGVkIGluIGFueSBpbnRlZ2VyIHR5cGUAcmVxdWlyZXMgaW50ZWdlciB0eXBlAHJpZ2h0IHR5cGUgbXVzdCBiZSBhbiBpbnRlZ2VyIHR5cGUAbGVmdCB0eXBlIG11c3QgYmUgYW4gaW50ZWdlciB0eXBlAHJpZ2h0IG11c3QgYmUgaW50ZWdlciB0eXBlAGNvbmRpdGlvbiBtdXN0IGhhdmUgc2NhbGFyIHR5cGUAaW5jb21wbGV0ZSBzdHJ1Y3QvdW5pb24gdHlwZQBzdHJ1Y3QgaXMgaW5jb21wbGV0ZSB0eXBlAGludmFsaWQgdHlwZQByaWdodCB0eXBlIG11c3QgYmUgYW4gYXJpdGhtZXRpYyB0eXBlAGxlZnQgdHlwZSBtdXN0IGJlIGFuIGFyaXRobWV0aWMgdHlwZQBzaG93X3VudXNlZF9maWxlX3Njb3BlAGRlZmVyIGVuZCBvZiBzY29wZQBlbmQgb2YgJyVzJyBzY29wZQB0eXBlX2Rlc3Ryb3lfb25lAGRlZmVyX2RlZmVyX3Njb3BlX2RlbGV0ZV9vbmUAaW5saW5lAHRleHRfbGluZQBpZ25vcmVfcHJlcHJvY2Vzc29yX2xpbmUAY29udHJvbF9saW5lAGRlZmluZQBmbG93X2RlZmVyX2l0ZW1fc2V0X2VuZF9vZl9saWZldGltZQBvd25lcnNoaXAgb2YgJyVzJyBub3QgbW92ZWQgYmVmb3JlIHRoZSBlbmQgb2YgbGlmZXRpbWUAZW5kIG9mICclcycgbGlmZXRpbWUAZmluZF9tZW1iZXJfbmFtZQBwb3N0Zml4X2V4cHJlc3Npb25fdHlwZV9uYW1lAGluaXQgZGVjbGFyYXRvciBtdXN0IGhhdmUgYSBuYW1lAHN0eWxlAG1vZHVsZQB2b2xhdGlsZQB3aGlsZQB1bmV4cGVjdGVkIGVuZCBvZiBmaWxlAG9iamVjdF90b19kb3VibGUAb2JqZWN0X3RvX2xvbmdfZG91YmxlAHJlcHJvZHVjaWJsZQAtb3duZXJzaGlwPWRpc2FibGUALW51bGxhYmxlPWRpc2FibGUALW93bmVyc2hpcD1lbmFibGUAbnVsbGFibGUtdG8tbm9uLW51bGxhYmxlAHVudXNlZC12YXJpYWJsZQAtc3R5bGU9Y2FrZQBjb21waWxlcl9kaWFnbm9zdGljX21lc3NhZ2UAX19oYXNfaW5jbHVkZQAtdGVzdC1tb2RlAHV0ZjhfZGVjb2RlAG9uY2UAYW5hbHl6ZXItbnVsbC1kZXJlZmVyZW5jZQBvbmUgc3BhY2UAbm9kaXNjYXJkAGZpbGUgJXMgbm90IGZvdW5kAGZpbGUgJyVzJyBub3QgZm91bmQAZmxvd19leHByZXNzaW9uX2JpbmQAbHZhbHVlIHJlcXVpcmVkIGFzIGluY3JlbWVudCBvcGVyYW5kAGx2YWx1ZSByZXF1aXJlZCBhcyBkZWNyZW1lbnQgb3BlcmFuZABpbmRpcmVjdGlvbiByZXF1aXJlcyBwb2ludGVyIG9wZXJhbmQAbHZhbHVlIHJlcXVpcmVkIGFzIHVuYXJ5ICcmJyBvcGVyYW5kAGV4cGFuZAAlbGxkACVsZAB2b2lkAGFuYWx5emVyLW1heWJlLXVuaW5pdGlhbGl6ZWQAb2JqZWN0IGlzIHBvc3NpYmx5IHVuaW5pdGlhbGl6ZWQAY29uc3Qgb2JqZWN0IHNob3VsZCBiZSBpbml0aWFsaXplZABvYmplY3QgJyVzJyB3YXMgbm90IG1vdmVkL2Rlc3Ryb3llZABvYmplY3QgbWF5IGJlIGFscmVhZHkgbW92ZWQAc291cmNlIG9iamVjdCBoYXMgYWxyZWFkeSBiZWVuIG1vdmVkAGFkZHJlc3Mgb2YgcmVnaXN0ZXIgdmFyaWFibGUgJ3gnIHJlcXVlc3RlZABwX3NpZ25lZF9wcm9tb3RlZCAhPSBwX3Vuc2lnbmVkX3Byb21vdGVkAHVuZXhwZWN0ZWQAdHlwZSBzcGVjaWZpZXIgb3IgcXVhbGlmaWVyIGV4cGVjdGVkACclcycgaXMgZGVwcmVjYXRlZABtYXliZV91bnVzZWQAbWFya19tYWNyb3NfYXNfdXNlZABkZWNsYXJhdG9yICclcycgbm90IHVzZWQAaWdub3JlZABzdHJ1Y3R1cmUgb3IgdW5pb24gcmVxdWlyZWQAZGVmaW5lZABpbnRlZ2VyIGxpdGVyYWwgaXMgdG9vIGxhcmdlIHRvIGJlIHJlcHJlc2VudGVkIGluIGEgc2lnbmVkIGludGVnZXIgdHlwZSwgaW50ZXJwcmV0aW5nIGFzIHVuc2lnbmVkAHN0YXRpY19hc3NlcnQgZmFpbGVkAHByYWdtYSBjaGVjayBmYWlsZWQAc3RhdGljX3N0YXRlIGZhaWxlZAAtbnVsbGFibGU9ZW5hYmxlZABtZXJnZWQAbGlmZXRpbWUtZW5kZWQAb2JqZWN0IGxpZmV0aW1lIGVuZGVkAHVuc2VxdWVuY2VkAG9iamVjdF9nZXRfbm9uX2NvbnN0X3JlZmVyZW5jZWQAb2JqZWN0X2dldF9yZWZlcmVuY2VkAHRva2VuIHNsaWNlZABfX2hhc19lbWJlZABhcmd1bWVudF9saXN0X2FkZABlbnVtZXJhdG9yX2xpc3RfYWRkAGluaXRfZGVjbGFyYXRvcl9saXN0X2FkZABtZW1iZXJfZGVjbGFyYXRvcl9saXN0X2FkZABkZXNpZ25hdG9yX2xpc3RfYWRkAGluaXRpYWxpemVyX2xpc3RfYWRkAHBhcmFtZXRlcl9saXN0X2FkZABzcGVjaWZpZXJfcXVhbGlmaWVyX2xpc3RfYWRkAHR5cGVfcXVhbGlmaWVyX2xpc3RfYWRkAGRlZmVyX2xpc3RfYWRkAG1lbWJlcl9kZWNsYXJhdGlvbl9saXN0X2FkZAB0b2tlbl9saXN0X2FkZABibG9ja19pdGVtX2xpc3RfYWRkAHBhcmFtX2xpc3RfYWRkAGF0dHJpYnV0ZV9saXN0X2FkZABnZW5lcmljX2Fzc29jX2xpc3RfYWRkAGRlY2xhcmF0aW9uX3NwZWNpZmllcnNfYWRkAGluY2x1ZGVfZGlyX2FkZABhdHRyaWJ1dGVfc3BlY2lmaWVyX3NlcXVlbmNlX2FkZAAgIyUwMmQA4oaRJWQAJXMlZABfX20lZABfX2NrJWQAX19jbXBfbHRfJWQAX2Fub255bW91c19zdHJ1Y3RfJWQAX3N0cnVjdF90YWdfJWQAX2xhbWJkYV8lZABFJWQAIC0+JWQAJXMsICVkAC1mZGlhZ25vc3RpY3MtZm9ybWF0PW1zdmMAbWFsbG9jAGNhbGxvYwBkaWFnbm9zdGljAF9pc19hcml0aG1ldGljAGV4ZWN1dGVfYXJpdGhtZXRpYwBzdGF0aWMAbm8gbWF0Y2ggZm9yIGdlbmVyaWMAX0dlbmVyaWMAX0F0b21pYwBjOi9tYWluLmMAbGliLmMAJSpjACVjAGV4ZWN1dGVfcHJhZ21hAHVua25vd24gcHJhZ21hAF9fdHlwZW9mX18AX19mdW5jX18AX19WQV9PUFRfXwBfX1ZBX0FSR1NfXwBfX0NPVU5URVJfXwBfX0xJTkVfXwBfX0ZJTEVfXwAlc1slZF0AIGFyZ3VtZW50IG9mIHNpemUgWyVkXSBpcyBzbWFsbGVyIHRoYW4gcGFyYW1ldGVyIG9mIHNpemUgWyVkXQBbAGN0eC0+Y3VycmVudC0+dHlwZSA9PSBUS19LRVlXT1JEX1RSWQBUS19LRVlXT1JEX19JTUFHSU5BUlkAVEtfS0VZV09SRF9JU19BUlJBWQBUS19LRVlXT1JEX1NUQVRJQ19ERUJVR19FWABUS19LRVlXT1JEX19DT01QTEVYAFRLX0FSUk9XAFRLX0tFWVdPUkRfVEhST1cAVEtfS0VZV09SRF9fVklFVwBVAFRLX0tFWVdPUkRfX09VVABUS19LRVlXT1JEX0lTX0NPTlNUAFRLX0tFWVdPUkRfQ09OU1QAVEtfS0VZV09SRF9TSE9SVABUS19LRVlXT1JEX0FTU0VSVABUS19LRVlXT1JEX19TVEFUSUNfQVNTRVJUAFRLX0tFWVdPUkRfX09QVABUS19LRVlXT1JEX0lOVABUS19LRVlXT1JEX19CSVRJTlQAVEtfS0VZV09SRF9JU19GTE9BVElOR19QT0lOVABUS19DT01NRU5UAFRLX0xJTkVfQ09NTUVOVABUS19DSVJDVU1GTEVYX0FDQ0VOVABUS19HUkFWRV9BQ0NFTlQAVEtfQ09NUElMRVJfQklOQVJZX0NPTlNUQU5UAFRLX0NIQVJfQ09OU1RBTlQAVEtfQ09NUElMRVJfT0NUQUxfQ09OU1RBTlQAVEtfQ09NUElMRVJfREVDSU1BTF9DT05TVEFOVABUS19DT01QSUxFUl9IRVhBREVDSU1BTF9DT05TVEFOVABUS19DT01QSUxFUl9ERUNJTUFMX0ZMT0FUSU5HX0NPTlNUQU5UAFRLX0NPTVBJTEVSX0hFWEFERUNJTUFMX0ZMT0FUSU5HX0NPTlNUQU5UAFRLX0tFWVdPUkRfREVGQVVMVABUS19TSElGVFJJR0hUAFRLX1NISUZUTEVGVABUS19LRVlXT1JEX1NUQVRJQ19TRVQAVEtfUklHSFRfQ1VSTFlfQlJBQ0tFVABUS19MRUZUX0NVUkxZX0JSQUNLRVQAVEtfUklHSFRfU1FVQVJFX0JSQUNLRVQAVEtfTEVGVF9TUVVBUkVfQlJBQ0tFVABUS19LRVlXT1JEX1NUUlVDVABUS19LRVlXT1JEX1JFU1RSSUNUAFRLX0NPTU1FUkNJQUxfQVQAVEtfS0VZV09SRF9GTE9BVABUS19IWVBIRU5fTUlOVVMAVEtfTUlOVVNNSU5VUwBUS19QTFVTUExVUwBUS19TT0xJRFVTAFRLX1JFVkVSU0VfU09MSURVUwBUS19CTEFOS1MAVEtfUklHSFRfUEFSRU5USEVTSVMAVEtfTEVGVF9QQVJFTlRIRVNJUwBUS19LRVlXT1JEX19BTElHTkFTAFRLX0tFWVdPUkRfTlVMTFBUUgBUS19LRVlXT1JEX0NPTlNURVhQUgBUS19MT0dJQ0FMX09QRVJBVE9SX09SAFRLX01BQ1JPX0NPTkNBVEVOQVRFX09QRVJBVE9SAHBfaXRlcmF0aW9uX3N0YXRlbWVudC0+Zmlyc3RfdG9rZW4tPnR5cGUgPT0gVEtfS0VZV09SRF9GT1IAVEtfS0VZV09SRF9SRUdJU1RFUgBUS19LRVlXT1JEX0lTX1BPSU5URVIAVEtfS0VZV09SRF9fT1dORVIAVEtfS0VZV09SRF9JU19PV05FUgBUS19LRVlXT1JEX19PQkpfT1dORVIAVEtfUExBQ0VNQVJLRVIAaW5wdXRfbGlzdC0+aGVhZC0+dHlwZSA9PSBUS19JREVOVElGSUVSAFRLX0tFWVdPUkRfREVGRVIAVEtfUFBOVU1CRVIAVEtfS0VZV09SRF9JU19TQ0FMQVIAVEtfS0VZV09SRF9DSEFSAFRLX0ZVTExfU1RPUABUS19LRVlXT1JEX0FVVE8AVEtfS0VZV09SRF9HT1RPAFRLX0lERU5USUZJRVJfUkVDVVJTSVZFX01BQ1JPAHBfaXRlcmF0aW9uX3N0YXRlbWVudC0+Zmlyc3RfdG9rZW4tPnR5cGUgPT0gVEtfS0VZV09SRF9ETwBUS19LRVlXT1JEX1JFVFVSTgBUS19LRVlXT1JEX19OT1JFVFVSTgBUS19LRVlXT1JEX0VYVEVSTgBUS19DT0xPTgBUS19TRU1JQ09MT04AVEtfS0VZV09SRF9JU19GVU5DVElPTgBUS19LRVlXT1JEX1VOSU9OAFRLX1BFUkNFTlRfU0lHTgBUS19QTFVTX1NJR04AVEtfRVFVQUxTX1NJR04AVEtfTlVNQkVSX1NJR04AVEtfRE9MTEFSX1NJR04AVEtfTEVTU19USEFOX1NJR04AVEtfR1JFQVRFUl9USEFOX1NJR04AQU5ZX09USEVSX1BQX1RPS0VOAE5BTgBUS19LRVlXT1JEX0VOVU0AVEtfS0VZV09SRF9fQVNNAFVMAFRLX0tFWVdPUkRfX0JPT0wAcF9kZWNsYXJhdGlvbi0+ZnVuY3Rpb25fYm9keSA9PSBOVUxMAHBuZXctPnByZXYgPT0gTlVMTABwbmV3LT5uZXh0ID09IE5VTEwAcC0+cF9kZWZhdWx0LT5uZXh0ID09IE5VTEwAaXQtPm5leHQgPT0gTlVMTABwX29iamVjdC0+bmV4dCA9PSBOVUxMAHBfbGFzdF9wYXJhbWV0ZXItPm5leHQgPT0gTlVMTABwLT50eXBlX3F1YWxpZmllci0+bmV4dCA9PSBOVUxMAHAtPm5leHQgPT0gTlVMTAB0eXBlX2xpc3QtPnRhaWwtPm5leHQgPT0gTlVMTABkZXN0LT50YWlsLT5uZXh0ID09IE5VTEwAc291cmNlLT50YWlsLT5uZXh0ID09IE5VTEwAbGlzdC50YWlsLT5uZXh0ID09IE5VTEwAbmV3X2Jvb2stPm5leHQgPT0gTlVMTABwX3R5cGUtPm5leHQgPT0gTlVMTABwX2VudW1lcmF0b3ItPmNvbnN0YW50X2V4cHJlc3Npb25fb3B0ID09IE5VTEwAcF90cnlfc3RhdGVtZW50LT5jYXRjaF9zZWNvbmRhcnlfYmxvY2tfb3B0ID09IE5VTEwAcF9zZWxlY3Rpb25fc3RhdGVtZW50LT5lbHNlX3NlY29uZGFyeV9ibG9ja19vcHQgPT0gTlVMTAB0Lm5hbWVfb3B0ID09IE5VTEwAcF9kZWNsYXJhdGlvbl9zcGVjaWZpZXJzLT5wX2F0dHJpYnV0ZV9zcGVjaWZpZXJfc2VxdWVuY2Vfb3B0ID09IE5VTEwAcF9hcmd1bWVudCA9PSBOVUxMAHBfZXhwcmVzc2lvbi0+cmlnaHQgPT0gTlVMTABwX2V4cHJlc3Npb24tPmxlZnQgPT0gTlVMTABwX2Jsb2NrLT5wcmV2aW91cyA9PSBOVUxMAG1hY3JvLT5wYXJhbWV0ZXJzID09IE5VTEwAcF9vYmplY3QtPm1lbWJlcnMgPT0gTlVMTAB0by0+bWVtYmVycyA9PSBOVUxMAGEtPm1lbWJlcnMgPT0gTlVMTABwX2luaXRfZGVjbGFyYXRvci0+aW5pdGlhbGl6ZXIgPT0gTlVMTABuZXdfZXhwcmVzc2lvbiA9PSBOVUxMAGxpc3QtPnRhaWwgPT0gTlVMTAByMi50YWlsID09IE5VTEwAcF9zZWxlY3Rpb25fc3RhdGVtZW50LT5zZWNvbmRhcnlfYmxvY2sgPT0gTlVMTABjdHgtPnRhaWxfYmxvY2sgPT0gTlVMTABwLT50YWlsX2Jsb2NrID09IE5VTEwAY3R4LT5wX3JldHVybl90eXBlID09IE5VTEwAcF9vYmplY3QtPmRlYnVnX25hbWUgPT0gTlVMTABwX2V4cHJlc3Npb25fbm9kZS0+dHlwZV9uYW1lID09IE5VTEwAbWFjcm8tPm5hbWUgPT0gTlVMTABtYXAtPnRhYmxlID09IE5VTEwAcF9leHByZXNzaW9uX25vZGUgPT0gTlVMTABwX3NwZWNpZmllcl9xdWFsaWZpZXJfbGlzdC0+cF9hdHRyaWJ1dGVfc3BlY2lmaWVyX3NlcXVlbmNlID09IE5VTEwAdHlwZV9saXN0LT5oZWFkID09IE5VTEwAbWFjcm8tPnJlcGxhY2VtZW50X2xpc3QuaGVhZCA9PSBOVUxMAHIyLmhlYWQgPT0gTlVMTABmaW5kX21hY3JvKGN0eCwgaW5wdXRfbGlzdC0+aGVhZC0+bGV4ZW1lKSA9PSBOVUxMAHBlbnRyeS0+ZGF0YS5wX3N0cnVjdF9lbnRyeSAhPSBOVUxMAHBfZGVjbGFyYXRpb24tPmZ1bmN0aW9uX2JvZHkgIT0gTlVMTABsaXN0LT50YWlsLT5wcmV2ICE9IE5VTEwAcF90eXBlLT5uZXh0ICE9IE5VTEwAcF9sYXN0ICE9IE5VTEwAcF9zZWxlY3Rpb25fc3RhdGVtZW50LT5jb25kaXRpb24tPnBfaW5pdF9kZWNsYXJhdG9yLT5wX2RlY2xhcmF0b3ItPmZpcnN0X3Rva2VuX29wdCAhPSBOVUxMAGN0eC0+cF9jdXJyZW50X2Z1bmN0aW9uX29wdC0+aW5pdF9kZWNsYXJhdG9yX2xpc3QuaGVhZC0+cF9kZWNsYXJhdG9yLT5uYW1lX29wdCAhPSBOVUxMAHBfcGFyYW1ldGVyX2RlY2xhcmF0aW9uLT5kZWNsYXJhdG9yLT5uYW1lX29wdCAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+ZGVjbGFyYXRvci0+bmFtZV9vcHQgIT0gTlVMTABjdHgtPmN1cnJlbnQgIT0gTlVMTABwX2V4cHJlc3Npb24tPmNvbXBvdW5kX3N0YXRlbWVudCAhPSBOVUxMAHBfc2Vjb25kYXJ5X2Jsb2NrLT5zdGF0ZW1lbnQgIT0gTlVMTABuZXdfZXhwcmVzc2lvbi0+cmlnaHQgIT0gTlVMTABwX2V4cHJlc3Npb24tPnJpZ2h0ICE9IE5VTEwAcF9leHByZXNzaW9uLT5sZWZ0ICE9IE5VTEwAcF9pbml0X2RlY2xhcmF0b3ItPnBfZGVjbGFyYXRvci0+cF9mbG93X29iamVjdCAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+ZGVjbGFyYXRvci0+cF9mbG93X29iamVjdCAhPSBOVUxMAGN0eC0+cHJldmlvdXMgIT0gTlVMTABwX2luaXRfZGVjbGFyYXRvci0+cF9kZWNsYXJhdG9yLT5kZWNsYXJhdGlvbl9zcGVjaWZpZXJzICE9IE5VTEwAcF9vYmplY3QtPm1lbWJlcnMgIT0gTlVMTABwcmV2aW91c19uYW1lcyAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+Y29uZGl0aW9uX2V4cHIgIT0gTlVMTABwZW50cnktPmRhdGEucF9lbnVtZXJhdG9yICE9IE5VTEwAcF9lbnRyeS0+ZGF0YS5wX2VudW1lcmF0b3IgIT0gTlVMTABwZW50cnktPmRhdGEucF9pbml0X2RlY2xhcmF0b3IgIT0gTlVMTABwX2VudHJ5LT5kYXRhLnBfaW5pdF9kZWNsYXJhdG9yICE9IE5VTEwAcF9nZW5lcmljX2Fzc29jaWF0aW9uLT5wX3R5cGVfbmFtZS0+YWJzdHJhY3RfZGVjbGFyYXRvciAhPSBOVUxMAGN0eC0+cF9jdXJyZW50X2Z1bmN0aW9uX29wdC0+aW5pdF9kZWNsYXJhdG9yX2xpc3QuaGVhZC0+cF9kZWNsYXJhdG9yICE9IE5VTEwAcGVudHJ5LT5kYXRhLnBfZGVjbGFyYXRvciAhPSBOVUxMAHBfdHlwZV9zcGVjaWZpZXItPnR5cGVkZWZfZGVjbGFyYXRvciAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+ZGVjbGFyYXRvciAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+YnJhY2VkX2luaXRpYWxpemVyICE9IE5VTEwAcF9pbml0aWFsaXplci0+aW5pdGlhbGl6ZXIgIT0gTlVMTABwZW50cnktPmRhdGEucF9zdHJ1Y3Rfb3JfdW5pb25fc3BlY2lmaWVyICE9IE5VTEwAcF9lbnRyeS0+ZGF0YS5wX3N0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTABwX3R5cGUtPnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTAB0LnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTABwX2V4cHJlc3Npb25fbm9kZV9uZXctPmxlZnQtPnR5cGUuc3RydWN0X29yX3VuaW9uX3NwZWNpZmllciAhPSBOVUxMAG1lbWJlcl9kZWNsYXJhdG9yLT5kZWNsYXJhdG9yLT50eXBlLnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTABwZW50cnktPmRhdGEucF9lbnVtX3NwZWNpZmllciAhPSBOVUxMAHBfZW50cnktPmRhdGEucF9lbnVtX3NwZWNpZmllciAhPSBOVUxMAHJpZ2h0LT50eXBlLmVudW1fc3BlY2lmaWVyICE9IE5VTEwAbGVmdC0+dHlwZS5lbnVtX3NwZWNpZmllciAhPSBOVUxMAHAgIT0gTlVMTABwZW50cnktPmRhdGEucF9tYWNybyAhPSBOVUxMAHBfc2VsZWN0aW9uX3N0YXRlbWVudC0+Y29uZGl0aW9uICE9IE5VTEwAcF9leHByZXNzaW9uLT5nZW5lcmljX3NlbGVjdGlvbiAhPSBOVUxMAHBfc3dpdGNoX3ZhbHVlLT5wX2xhYmVsLT5jb25zdGFudF9leHByZXNzaW9uICE9IE5VTEwAYS0+ZGF0YVtpXS5wX2V4cHJlc3Npb24gIT0gTlVMTABvcmlnaW4gIT0gTlVMTABwX25ld190b2tlbiAhPSBOVUxMAGxpc3QtPnRhaWwgIT0gTlVMTABkZXN0LT50YWlsICE9IE5VTEwAc291cmNlLT50YWlsICE9IE5VTEwAY3R4LT5zY29wZXMudGFpbCAhPSBOVUxMAHIudGFpbCAhPSBOVUxMAHBfanVtcF9zdGF0ZW1lbnQtPmxhYmVsICE9IE5VTEwAcF9sYWJlbGVkX3N0YXRlbWVudC0+bGFiZWwgIT0gTlVMTABwdGsgIT0gTlVMTABwX3NlbGVjdGlvbl9zdGF0ZW1lbnQtPnNlY29uZGFyeV9ibG9jayAhPSBOVUxMAGN0eC0+dGFpbF9ibG9jayAhPSBOVUxMAGN0eC0+cF9yZXR1cm5fdHlwZSAhPSBOVUxMAG91dF9zY29wZSAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+dHlwZV9uYW1lICE9IE5VTEwAaXQtPnBvaW50ZWQgIT0gTlVMTABvYmplY3QtPmN1cnJlbnQucG9pbnRlZCAhPSBOVUxMAGlucHV0X2xpc3QtPmhlYWQgIT0gTlVMTABuZXdsaXN0LmhlYWQgIT0gTlVMTABjdHgtPnBfY3VycmVudF9mdW5jdGlvbl9vcHQtPmluaXRfZGVjbGFyYXRvcl9saXN0LmhlYWQgIT0gTlVMTABwX2RlY2xhcmF0aW9uLT5pbml0X2RlY2xhcmF0b3JfbGlzdC5oZWFkICE9IE5VTEwAbGlzdDQuaGVhZCAhPSBOVUxMAHAtPmRhdGEgIT0gTlVMTABwX2l0ZXJhdGlvbl9zdGF0ZW1lbnQtPmV4cHJlc3Npb24xICE9IE5VTEwAVEtfS0VZV09SRF9UWVBFT0ZfVU5RVUFMAFRLX0tFWVdPUkRfSVNfSU5URUdSQUwAVEtfU1RSSU5HX0xJVEVSQUwAVEtfS0VZV09SRF9fVEhSRUFEX0xPQ0FMAFRLX0FTVEVSSVNLAFRLX1FVRVNUSU9OX01BUksAVEtfUVVPVEFUSU9OX01BUksAVEtfRVhDTEFNQVRJT05fTUFSSwBUS19LRVlXT1JEX0JSRUFLAFRLX0tFWVdPUkRfU1dJVENIAFRLX0tFWVdPUkRfQ0FUQ0gAVEtfS0VZV09SRF9TVEFUSUNfREVCVUcAVEtfS0VZV09SRF9MT05HAFRLX0tFWVdPUkRfX0FMSUdOT0YAVEtfS0VZV09SRF9fTEVOR1RIT0YAVEtfS0VZV09SRF9TSVpFT0YAVEtfS0VZV09SRF9UWVBFT0YASU5GAGNhdGVnb3J5ID09IFRZUEVfQ0FURUdPUllfSVRTRUxGAHBfc2VsZWN0aW9uX3N0YXRlbWVudC0+Zmlyc3RfdG9rZW4tPnR5cGUgPT0gVEtfS0VZV09SRF9JRgBudWxsY2hlY2tzIHByYWdtYSBuZWVkcyB0byB1c2UgT04gT0ZGACpjID49IDB4MDgwMCAmJiAqYyA8PSAweEZGRkYAKmMgPj0gMHgxMDAwMCAmJiAqYyA8PSAweDEwRkZGRgAqYyA+PSAweDAwODAgJiYgKmMgPD0gMHgwN0ZGAFRLX0tFWVdPUkRfVFlQRURFRgAqYyA+PSAweDAwMDAgJiYgKmMgPD0gMHgwMDdGAFRLX0tFWVdPUkRfVFJVRQBUS19LRVlXT1JEX0NPTlRJTlVFAFRLX0tFWVdPUkRfSVNfTFZBTFVFAFRLX0tFWVdPUkRfU1RBVElDX1NUQVRFAFRLX0tFWVdPUkRfRUxTRQBUS19LRVlXT1JEX0ZBTFNFAFRLX0tFWVdPUkRfQ0FTRQBUS19OT05FAFRLX0ZMT1dfTElORQBUS19QUkVQUk9DRVNTT1JfTElORQBUS19WRVJUSUNBTF9MSU5FAFRLX05FV0xJTkUAVEtfS0VZV09SRF9JTkxJTkUAVEtfWF9NSVNTSU5HX05BTUUAVEtfS0VZV09SRF9WT0xBVElMRQBwX2l0ZXJhdGlvbl9zdGF0ZW1lbnQtPmZpcnN0X3Rva2VuLT50eXBlID09IFRLX0tFWVdPUkRfV0hJTEUAVEtfQkVHSU5fT0ZfRklMRQBUS19LRVlXT1JEX0RPVUJMRQBwX3Zpc2l0b3ItPnBfb2JqZWN0LT5jdXJyZW50LnN0YXRlID09IEZMT1dfT0JKRUNUX1NUQVRFX05PVF9BUFBMSUNBQkxFAENBS0UAVEtfQVBPU1RST1BIRQBUS19USUxERQBwX29iamVjdC0+c3RhdGUgIT0gQ09OU1RBTlRfVkFMVUVfU1RBVEVfUkVGRVJFTkNFAFRLX1dISVRFX1NQQUNFAC1FAFRLX1BSQUdNQV9FTkQAVEtfTE9HSUNBTF9PUEVSQVRPUl9BTkQAVEtfQU1QRVJTQU5EAFRLX0tFWVdPUkRfVk9JRABwX2V4cHJlc3Npb25fbm9kZS0+ZXhwcmVzc2lvbl90eXBlICE9IEVYUFJFU1NJT05fVFlQRV9JTlZBTElEAFRLX0tFWVdPUkRfU0lHTkVEAFRLX0tFWVdPUkRfVU5TSUdORUQAVEtfS0VZV09SRF9JU19BUklUSE1FVElDAFRLX0tFWVdPUkRfU1RBVElDAFRLX0tFWVdPUkRfX0dFTkVSSUMAVEtfS0VZV09SRF9fQVRPTUlDAFRLX0NPTU1BAFRLX1BSQUdNQQBlbXB0eSBjb250cm9sbGVkIHN0YXRlbWVudCBmb3VuZDsgaXMgdGhpcyB0aGUgaW50ZW50PwBpbmNvbXBhdGlibGUgdHlwZXM/PwA8PgAlcy0+AE5vdGU6IGluY2x1ZGluZyBmaWxlOgBjdXJyZW50ICA6AFRLX0tFWVdPUkRfX0lOVDgAX0RlY2ltYWwxMjgAVEtfS0VZV09SRF9fREVDSU1BTDEyOABfX2ludDE2AFRLX0tFWVdPUkRfX0lOVDE2AF9faW50NjQAX0RlY2ltYWw2NABUS19LRVlXT1JEX19JTlQ2NABUS19LRVlXT1JEX19ERUNJTUFMNjQALXN0ZD1jMjMAX19pbnQzMgBfRGVjaW1hbDMyAFRLX0tFWVdPUkRfX0lOVDMyAFRLX0tFWVdPUkRfX0RFQ0lNQUwzMgAxAHVzZSBOVUxMIGluc3RlYWQgb2YgMABhbGlnbiA+IDAAbGlzdC50YWlsLT5uZXh0ID09IDAAcF9pbml0X2RlY2xhcmF0b3ItPnBfZGVjbGFyYXRvci0+dHlwZS50eXBlX3NwZWNpZmllcl9mbGFncyA9PSAwAGZtdCAhPSAwAGFsaWduICE9IDAAJXMvAGNoYXJhY3RlciBub3QgZW5jb2RhYmxlIGluIGEgc2luZ2xlIGNvZGUgdW5pdC4AY2Fubm90IGFzc2lnbiBhIHRlbXBvcmFyeSBvd25lciB0byBub24tb3duZXIgb2JqZWN0LgBVbmljb2RlIGNoYXJhY3RlciBsaXRlcmFscyBtYXkgbm90IGNvbnRhaW4gbXVsdGlwbGUgY2hhcmFjdGVycy4AY29tcGFyaW5nIGRpZmZlcmVudCBlbnVtcy4AYXNzaWdubWVudCBvZiBkaWZmZXJlbnQgZW51bXMuAG9wZXJhdG9yICd8JyBiZXR3ZWVuIGVudW1lcmF0aW9ucyBvZiBkaWZmZXJlbnQgdHlwZXMuACVzLgB1c2Ugb2YgJyVzJyB3aXRoIHRhZyB0eXBlIHRoYXQgZG9lcyBub3QgbWF0Y2ggcHJldmlvdXMgZGVjbGFyYXRpb24uAHN0cnVjdCAnJXMnIGlzIGluY29tcGxldGUuAENoYXJhY3RlciB0b28gbGFyZ2UgZm9yIGVuY2xvc2luZyBjaGFyYWN0ZXIgbGl0ZXJhbCB0eXBlLgBUaGUgb2JqZWN0ICclcycgbWF5IGhhdmUgYmVlbiBkZWxldGVkIG9yIGl0cyBsaWZldGltZSBoYXZlIGVuZGVkLgAuLi4AaW50ZWdlciBvdmVyZmxvdyByZXN1bHRzIGluICclZGxsJy4AaW50ZWdlciBvdmVyZmxvdyByZXN1bHRzIGluICclZCcuIEV4YWN0bHkgcmVzdWx0IGlzICclbGxkJy4ALS0AaW52YWxpZCB0eXBlcyBmb3Igb3BlcmF0b3IgLQAsACsrACoAIXRva2VuX2xpc3RfaXNfZW1wdHkobGlzdCkAKGN1cnJlbnQpACglcykAJXMgKGVudW0gJXMsIGVudW0gJXMpACgjJTAyZCAlcykAcF9leHByZXNzaW9uX25vZGUgPT0gTlVMTCB8fCAocF9leHByZXNzaW9uX25vZGUtPmZpcnN0X3Rva2VuICYmIHBfZXhwcmVzc2lvbl9ub2RlLT5sYXN0X3Rva2VuKQAobnVsbCkAci50YWlsID09IE5VTEwgfHwgIXRva2VuX2lzX2JsYW5rKHIudGFpbCkAbWlzc2luZyBtYWNybyBhcmd1bWVudCAoc2hvdWxkIGJlIGNoZWNrZWQgYmVmb3JlKQB0eXBlX2lzX2FycmF5KHBfdHlwZSkAdHlwZV9pc19wb2ludGVyX29yX2FycmF5KHBfdHlwZSkAIW1hY3JvX2FscmVhZHlfZXhwYW5kZWQocF9saXN0X29mX21hY3JvX2V4cGFuZGVkX29wdCwgbWFjcm8tPm5hbWUpACF0b2tlbl9pc19ibGFuayhpbnB1dF9saXN0LT5oZWFkKQAhdG9rZW5faXNfYmxhbmsobmV3X2xpc3QuaGVhZCkAYXNzZXJ0KF9fVkFfQVJHU19fKQAocC0+aGVhZCA9PSBOVUxMICYmIHAtPnRhaWwgPT0gTlVMTCkgfHwgKHAtPmhlYWQgIT0gTlVMTCAmJiBwLT50YWlsICE9IE5VTEwpACEoaW5wdXRfbGlzdC0+aGVhZC0+ZmxhZ3MgJiBUS19GTEFHX0hBU19ORVdMSU5FX0JFRk9SRSkAIShuZXdfbGlzdC5oZWFkLT5mbGFncyAmIFRLX0ZMQUdfSEFTX05FV0xJTkVfQkVGT1JFKQAhdG9rZW5fbGlzdF9pc19lbXB0eSgmbGlzdDIpAG1pc3NpbmcgKQBleHBlY3RlZCApAGZvciAoAHN3aXRjaCAoAGlmICgAd2hpbGUgKAAnJSc6IG5vdCB2YWxpZCBhcyBsZWZ0IG9wZXJhbmQgaGFzIHR5cGUgJ2Zsb2F0JwBleHBlY3RlZCBkZWNsYXJhdGlvbiBub3QgJyVzJwBtZW1iZXIgJyVzJyBub3QgZm91bmQgaW4gc3RydWN0ICclcycAdXNpbmcgYSB1bmluaXRpYWxpemVkIG9iamVjdCAnJXMnAHVua25vd24gb3B0aW9uICclcycAbWVtYmVyICclcycgbm90IGZvdW5kIGluICclcycAdW5rbm93biB3YXJuaW5nICclcycAaW5jb21wbGV0ZSBzdHJ1Y3QgdHlwZSAnJXMnAGludmFsaWQgdHlwZSAnJXMnAG5vdCBmb3VuZCAnJXMnAGxpZmV0aW1lIGVuZGVkICclcycAZGlyID0gJyVzJwBtZW1iZXIgJyVzJyBub3QgZm91bmQgaW4gJ3N0cnVjdCAlcycAY2FzZSB2YWx1ZSAnJWxsZCcgbm90IGluIGVudW1lcmF0ZWQgdHlwZSAnZW51bSAlcycAaW1wbGljaXQgY29udmVyc2lvbiBvZiBudWxscHRyIGNvbnN0YW50IHRvICdib29sJwBkdXBsaWNhdGUgY2FzZSB2YWx1ZSAnJWxsZCcAd25hbWVbMF0gPT0gJy0nAGV4cGVjdGVkICd9JyBiZWZvcmUgJyknAGV4cGVjdGVkICddJyBiZWZvcmUgJyknAHBfZXhwcmVzc2lvbl9ub2RlLT5maXJzdF90b2tlbi0+dHlwZSA9PSAnKCcAJgB5b3UgY2FuIHVzZSAiYWRqYWNlbnQiICJzdHJpbmdzIgAiemVybyIAXCIAIQAgfHwgACB8IABpbnQgACBkaXNjYXJkaW5nIGNvbnN0IGF0IGFyZ3VtZW50IAAgaW5jb21wYXRpYmxlIHR5cGVzIAB1bnNpZ25lZCBjaGFyIABleHRlcm4gAGVudW0gAGNhc2UgAGlnbm9yaW5nIHRoZSByZXN1bHQgb2YgX093bmVyIHR5cGUgAF9faW5saW5lIABvYmplY3QgJyVzJyBjYW4gYmUgdW5pbml0aWFsaXplZCAAJTJkOiUyZCAAc3RhdGljIAAgXiAAID8gACA+PiAAIC0+IAAgPiAAID49IAAlcDolcyA9PSAAIyUwMmQgJXMgPT0gACA8PSAAICE9IAAlcyVzID0gACA8PCAAIDwgADsgAGVycm9yOiAAd2FybmluZzogAG5vdGU6IAAbWzk3bSVzOiVkOiVkOiAAJXMoJWQsJWQpOiAAIDogACAvIABpbnRlZ2VyIG92ZXJmbG93IHJlc3VsdHMgaW4gJyVkbGwnLiAAIC0gAG1lbXNldCglcyVzLCAAbWVtc2V0KCVzLCAAICsgACAqIAAgJiYgACAmIAAgJSAAICAgIAAgICAgICAgICAgICAgICB9CgAjJTAyZCB7CgAgICAgICAgICAgICAgImFydGlmYWN0TG9jYXRpb24iOiB7CgAgICAgICAgInBoeXNpY2FsTG9jYXRpb24iOiB7CgAgICAgICAgICAgICAgICJyZWdpb24iOiB7CgAgICAgICJtZXNzYWdlIjogewoAICAgICAgICAgIHsKABtbOTFtZXJyb3I6IBtbOTdtJXMKABtbOTVtd2FybmluZzogG1s5N20lcwoAG1szNjsxbW5vdGU6IBtbOTdtJXMKAGV4cGVjdGVkIDolcwoAZXhwZWN0ZWQgdG9rZW4gJXMgZ290ICVzCgBpbmxpbmUgJXMKAHN0YXRpY19hc3NlcnQgZmFpbGVkICVzCgBlcnJvcjogJXMKAHdhcm5pbmc6ICVzCgBub3RlOiAlcwoAZG8KAHRvbyBtYW55IGFyZ3VtZW50cyBwcm92aWRlZCB0byBmdW5jdGlvbi1saWtlIG1hY3JvIGludm9jYXRpb24KAHRvbyBmZXcgYXJndW1lbnRzIHByb3ZpZGVkIHRvIGZ1bmN0aW9uLWxpa2UgbWFjcm8gaW52b2NhdGlvbgoAG1s5N21DYWtlIDAuOS41MBtbMG0KAGVsc2UKACAgICAgICAgICAgICAgICAgICJlbmRDb2x1bW4iOiAlZAoAG1s5N21jYWtlICVzIG1haW4uYwoAIFslc10KACAgICAgICAgIF0KACAgICAgICJsb2NhdGlvbnMiOiBbCgAgICAgICAgICAibG9naWNhbExvY2F0aW9ucyI6IFsKAHswfTsKAGdvdG8gJXM7CgByZXR1cm4gJXM7CgBicmVhazsKAGNvbnRpbnVlOwoAZ290byBfY2F0Y2hfbGFiZWxfJWQ7CgAlcyVzID0gMDsKAF96bWVtKCYlcywgJWQpOwoAZGVmYXVsdDoKACVzOgoAZWxzZSBfY2F0Y2hfbGFiZWxfJWQ6CgAgOgoAICAgICAgICAgICAgICB9LAoAICAgICAgICAgICAgICAgICAgInN0YXJ0Q29sdW1uIjogJWQsCgAgICAgICAgICAgICAgICAgICAic3RhcnRMaW5lIjogJWQsCgAgICAgICAgICAgICAgICAgICAiZW5kTGluZSI6ICVkLAoAICAgICAicnVsZUlkIjoiJXMiLAoAICAgICAgICAgICAgICAiZGVjb3JhdGVkTmFtZSI6ICIlcyIsCgAgICAgICAgICAgICAgICJmdWxseVF1YWxpZmllZE5hbWUiOiAiJXMiLAoAICAgICAibGV2ZWwiOiJlcnJvciIsCgAgICAgICJsZXZlbCI6Indhcm5pbmciLAoAICAgICAibGV2ZWwiOiJub3RlIiwKACAgICwKAGlmICgxKQoAICAgICAgICAgICAgICAgICAidXJpIjogImZpbGU6Ly8vJXMiCgAgICAgICAgICAgICAidGV4dCI6ICIlcyIKACAgICAgICAgICAgICAgImtpbmQiOiAiJXMiCgAjZGVmaW5lIF9fVElNRV9fICIlMDJkOiUwMmQ6JTAyZCIKACNkZWZpbmUgX19EQVRFX18gIiVzICUyZCAlZCIKAGV4cGVjdGVkIEVPRiAKAHN0YXRpYyB2b2lkICptZW1zZXQodm9pZCAqZGVzdCwgaW50IGMsIHVuc2lnbmVkIGxvbmcgbG9uZyBuKQp7CiAgcmVnaXN0ZXIgdW5zaWduZWQgY2hhciAqcyA9IGRlc3Q7CiAgZm9yICg7IG47IG4tLSwgcysrKSAqcyA9IGM7Cn0KCgBzdGF0aWMgdm9pZCBfem1lbSh2b2lkICpkZXN0LCByZWdpc3RlciB1bnNpZ25lZCBpbnQgbGVuKQp7CiAgcmVnaXN0ZXIgdW5zaWduZWQgY2hhciAqcHRyID0gKHVuc2lnbmVkIGNoYXIqKWRlc3Q7CiAgd2hpbGUgKGxlbi0tID4gMCkgKnB0cisrID0gMDsKfQoKAH07CgoAI2RlZmluZSBfX0NBS0VfXyAyMDIzMTFMCiNkZWZpbmUgX19TVERDX1ZFUlNJT05fXyAyMDIzMTFMCiNkZWZpbmUgX19GSUxFX18gIl9fRklMRV9fIgojZGVmaW5lIF9fTElORV9fIDAKI2RlZmluZSBfX0NPVU5URVJfXyAwCiNkZWZpbmUgX0NPTlNPTEUKI2RlZmluZSBfX1NURENfT1dORVJTSElQX18gMQojZGVmaW5lIF9XX0RJVklaSU9OX0JZX1pFUk9fIDI5CiNwcmFnbWEgZGlyICJjOi8iCgoAAAAAAAAAAAAAAAAAAC8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKI3ByYWdtYSBvbmNlCgojZGVmaW5lIFdDSEFSX01JTiAweDAwMDAKI2RlZmluZSBXQ0hBUl9NQVggMHhmZmZmCgp0eXBlZGVmIGxvbmcgdW5zaWduZWQgaW50IHNpemVfdDsKdHlwZWRlZiBpbnQgd2NoYXJfdDsKCnR5cGVkZWYgc3RydWN0CnsKICAgIGludCBfX2NvdW50OwogICAgdW5pb24KICAgIHsKICAgICAgICB1bnNpZ25lZCBpbnQgX193Y2g7CiAgICAgICAgY2hhciBfX3djaGJbNF07CiAgICB9IF9fdmFsdWU7Cn0gX19tYnN0YXRlX3Q7Cgp0eXBlZGVmIF9fbWJzdGF0ZV90IG1ic3RhdGVfdDsKc3RydWN0IF9JT19GSUxFOwp0eXBlZGVmIHN0cnVjdCBfSU9fRklMRSBfX0ZJTEU7CnN0cnVjdCBfSU9fRklMRTsKdHlwZWRlZiBzdHJ1Y3QgX0lPX0ZJTEUgRklMRTsKc3RydWN0IF9fbG9jYWxlX3N0cnVjdAp7CgogICAgc3RydWN0IF9fbG9jYWxlX2RhdGEqIF9fbG9jYWxlc1sxM107CgogICAgY29uc3QgdW5zaWduZWQgc2hvcnQgaW50KiBfX2N0eXBlX2I7CiAgICBjb25zdCBpbnQqIF9fY3R5cGVfdG9sb3dlcjsKICAgIGNvbnN0IGludCogX19jdHlwZV90b3VwcGVyOwoKICAgIGNvbnN0IGNoYXIqIF9fbmFtZXNbMTNdOwp9OwoKdHlwZWRlZiBzdHJ1Y3QgX19sb2NhbGVfc3RydWN0KiBfX2xvY2FsZV90OwoKdHlwZWRlZiBfX2xvY2FsZV90IGxvY2FsZV90OwoKc3RydWN0IHRtOwoKZXh0ZXJuIHdjaGFyX3QqIHdjc2NweSh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZGVzdCwKICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX3NyYyk7CgpleHRlcm4gd2NoYXJfdCogd2NzbmNweSh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZGVzdCwKICAgIGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zcmMsIHNpemVfdCBfX24pOwoKZXh0ZXJuIHdjaGFyX3QqIHdjc2NhdCh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZGVzdCwKICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX3NyYyk7CgpleHRlcm4gd2NoYXJfdCogd2NzbmNhdCh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZGVzdCwKICAgIGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zcmMsIHNpemVfdCBfX24pOwoKZXh0ZXJuIGludCB3Y3NjbXAoY29uc3Qgd2NoYXJfdCogX19zMSwgY29uc3Qgd2NoYXJfdCogX19zMik7CgpleHRlcm4gaW50IHdjc25jbXAoY29uc3Qgd2NoYXJfdCogX19zMSwgY29uc3Qgd2NoYXJfdCogX19zMiwgc2l6ZV90IF9fbik7CgpleHRlcm4gaW50IHdjc2Nhc2VjbXAoY29uc3Qgd2NoYXJfdCogX19zMSwgY29uc3Qgd2NoYXJfdCogX19zMik7CgpleHRlcm4gaW50IHdjc25jYXNlY21wKGNvbnN0IHdjaGFyX3QqIF9fczEsIGNvbnN0IHdjaGFyX3QqIF9fczIsCiAgIHNpemVfdCBfX24pOwoKZXh0ZXJuIGludCB3Y3NjYXNlY21wX2woY29uc3Qgd2NoYXJfdCogX19zMSwgY29uc3Qgd2NoYXJfdCogX19zMiwKICAgIGxvY2FsZV90IF9fbG9jKTsKCmV4dGVybiBpbnQgd2NzbmNhc2VjbXBfbChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyLAogICAgIHNpemVfdCBfX24sIGxvY2FsZV90IF9fbG9jKTsKCmV4dGVybiBpbnQgd2NzY29sbChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyKTsKCmV4dGVybiBzaXplX3Qgd2NzeGZybSh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fczEsCiAgICAgICAgIGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zMiwgc2l6ZV90IF9fbik7CgpleHRlcm4gaW50IHdjc2NvbGxfbChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyLAogICAgICAgIGxvY2FsZV90IF9fbG9jKTsKCmV4dGVybiBzaXplX3Qgd2NzeGZybV9sKHdjaGFyX3QqIF9fczEsIGNvbnN0IHdjaGFyX3QqIF9fczIsCiAgICBzaXplX3QgX19uLCBsb2NhbGVfdCBfX2xvYyk7CgpleHRlcm4gd2NoYXJfdCogd2NzZHVwKGNvbnN0IHdjaGFyX3QqIF9fcyk7CmV4dGVybiB3Y2hhcl90KiB3Y3NjaHIoY29uc3Qgd2NoYXJfdCogX193Y3MsIHdjaGFyX3QgX193Yyk7CmV4dGVybiB3Y2hhcl90KiB3Y3NyY2hyKGNvbnN0IHdjaGFyX3QqIF9fd2NzLCB3Y2hhcl90IF9fd2MpOwpleHRlcm4gc2l6ZV90IHdjc2NzcG4oY29uc3Qgd2NoYXJfdCogX193Y3MsIGNvbnN0IHdjaGFyX3QqIF9fcmVqZWN0KTsKCmV4dGVybiBzaXplX3Qgd2Nzc3BuKGNvbnN0IHdjaGFyX3QqIF9fd2NzLCBjb25zdCB3Y2hhcl90KiBfX2FjY2VwdCk7CmV4dGVybiB3Y2hhcl90KiB3Y3NwYnJrKGNvbnN0IHdjaGFyX3QqIF9fd2NzLCBjb25zdCB3Y2hhcl90KiBfX2FjY2VwdCk7CmV4dGVybiB3Y2hhcl90KiB3Y3NzdHIoY29uc3Qgd2NoYXJfdCogX19oYXlzdGFjaywgY29uc3Qgd2NoYXJfdCogX19uZWVkbGUpOwoKZXh0ZXJuIHdjaGFyX3QqIHdjc3Rvayh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fcywKICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX2RlbGltLAogICB3Y2hhcl90KiogX19yZXN0cmljdCBfX3B0cik7CgpleHRlcm4gc2l6ZV90IHdjc2xlbihjb25zdCB3Y2hhcl90KiBfX3MpOwpleHRlcm4gc2l6ZV90IHdjc25sZW4oY29uc3Qgd2NoYXJfdCogX19zLCBzaXplX3QgX19tYXhsZW4pOwpleHRlcm4gd2NoYXJfdCogd21lbWNocihjb25zdCB3Y2hhcl90KiBfX3MsIHdjaGFyX3QgX19jLCBzaXplX3QgX19uKTsKCmV4dGVybiBpbnQgd21lbWNtcChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyLCBzaXplX3QgX19uKTsKCmV4dGVybiB3Y2hhcl90KiB3bWVtY3B5KHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zMSwKICAgIGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zMiwgc2l6ZV90IF9fbik7CgpleHRlcm4gd2NoYXJfdCogd21lbW1vdmUod2NoYXJfdCogX19zMSwgY29uc3Qgd2NoYXJfdCogX19zMiwgc2l6ZV90IF9fbik7CgpleHRlcm4gd2NoYXJfdCogd21lbXNldCh3Y2hhcl90KiBfX3MsIHdjaGFyX3QgX19jLCBzaXplX3QgX19uKTsKZXh0ZXJuIHdpbnRfdCBidG93YyhpbnQgX19jKTsKCmV4dGVybiBpbnQgd2N0b2Iod2ludF90IF9fYyk7CgpleHRlcm4gaW50IG1ic2luaXQoY29uc3QgbWJzdGF0ZV90KiBfX3BzKTsKCmV4dGVybiBzaXplX3QgbWJydG93Yyh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fcHdjLAogICAgICAgICBjb25zdCBjaGFyKiBfX3Jlc3RyaWN0IF9fcywgc2l6ZV90IF9fbiwKICAgICAgICAgbWJzdGF0ZV90KiBfX3Jlc3RyaWN0IF9fcCk7CgpleHRlcm4gc2l6ZV90IHdjcnRvbWIoY2hhciogX19yZXN0cmljdCBfX3MsIHdjaGFyX3QgX193YywKICAgICAgICAgbWJzdGF0ZV90KiBfX3Jlc3RyaWN0IF9fcHMpOwoKZXh0ZXJuIHNpemVfdCBfX21icmxlbihjb25zdCBjaGFyKiBfX3Jlc3RyaWN0IF9fcywgc2l6ZV90IF9fbiwKICAgbWJzdGF0ZV90KiBfX3Jlc3RyaWN0IF9fcHMpOwpleHRlcm4gc2l6ZV90IG1icmxlbihjb25zdCBjaGFyKiBfX3Jlc3RyaWN0IF9fcywgc2l6ZV90IF9fbiwKICAgICAgICBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wcyk7CmV4dGVybiBzaXplX3QgbWJzcnRvd2NzKHdjaGFyX3QqIF9fcmVzdHJpY3QgX19kc3QsCiAgICBjb25zdCBjaGFyKiogX19yZXN0cmljdCBfX3NyYywgc2l6ZV90IF9fbGVuLAogICAgbWJzdGF0ZV90KiBfX3Jlc3RyaWN0IF9fcHMpOwoKZXh0ZXJuIHNpemVfdCB3Y3NydG9tYnMoY2hhciogX19yZXN0cmljdCBfX2RzdCwKICAgIGNvbnN0IHdjaGFyX3QqKiBfX3Jlc3RyaWN0IF9fc3JjLCBzaXplX3QgX19sZW4sCiAgICBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wcyk7CgpleHRlcm4gc2l6ZV90IG1ic25ydG93Y3Mod2NoYXJfdCogX19yZXN0cmljdCBfX2RzdCwKICAgICBjb25zdCBjaGFyKiogX19yZXN0cmljdCBfX3NyYywgc2l6ZV90IF9fbm1jLAogICAgIHNpemVfdCBfX2xlbiwgbWJzdGF0ZV90KiBfX3Jlc3RyaWN0IF9fcHMpOwoKZXh0ZXJuIHNpemVfdCB3Y3NucnRvbWJzKGNoYXIqIF9fcmVzdHJpY3QgX19kc3QsCiAgICAgY29uc3Qgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19zcmMsCiAgICAgc2l6ZV90IF9fbndjLCBzaXplX3QgX19sZW4sCiAgICAgbWJzdGF0ZV90KiBfX3Jlc3RyaWN0IF9fcHMpOwpleHRlcm4gZG91YmxlIHdjc3RvZChjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fbnB0ciwKICAgICAgICB3Y2hhcl90KiogX19yZXN0cmljdCBfX2VuZHB0cik7CgpleHRlcm4gZmxvYXQgd2NzdG9mKGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19ucHRyLAogICAgICAgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19lbmRwdHIpOwpleHRlcm4gbG9uZyBkb3VibGUgd2NzdG9sZChjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fbnB0ciwKICAgICAgIHdjaGFyX3QqKiBfX3Jlc3RyaWN0IF9fZW5kcHRyKTsKZXh0ZXJuIGxvbmcgaW50IHdjc3RvbChjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fbnB0ciwKICAgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19lbmRwdHIsIGludCBfX2Jhc2UpOwoKZXh0ZXJuIHVuc2lnbmVkIGxvbmcgaW50IHdjc3RvdWwoY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX25wdHIsCiAgICAgIHdjaGFyX3QqKiBfX3Jlc3RyaWN0IF9fZW5kcHRyLCBpbnQgX19iYXNlKTsKCmV4dGVybiBsb25nIGxvbmcgaW50IHdjc3RvbGwoY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX25wdHIsCiAgICAgICAgIHdjaGFyX3QqKiBfX3Jlc3RyaWN0IF9fZW5kcHRyLCBpbnQgX19iYXNlKTsKCmV4dGVybiB1bnNpZ25lZCBsb25nIGxvbmcgaW50IHdjc3RvdWxsKGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19ucHRyLAogICAgIHdjaGFyX3QqKiBfX3Jlc3RyaWN0IF9fZW5kcHRyLAogICAgIGludCBfX2Jhc2UpOwpleHRlcm4gd2NoYXJfdCogd2NwY3B5KHdjaGFyX3QqIF9fcmVzdHJpY3QgX19kZXN0LAogICBjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fc3JjKTsKCmV4dGVybiB3Y2hhcl90KiB3Y3BuY3B5KHdjaGFyX3QqIF9fcmVzdHJpY3QgX19kZXN0LAogICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX3NyYywgc2l6ZV90IF9fbik7CmV4dGVybiBfX0ZJTEUqIG9wZW5fd21lbXN0cmVhbSh3Y2hhcl90KiogX19idWZsb2MsIHNpemVfdCogX19zaXplbG9jKTsKCmV4dGVybiBpbnQgZndpZGUoX19GSUxFKiBfX2ZwLCBpbnQgX19tb2RlKTsKCmV4dGVybiBpbnQgZndwcmludGYoX19GSUxFKiBfX3Jlc3RyaWN0IF9fc3RyZWFtLAogICAgICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX2Zvcm1hdCwgLi4uKTsKZXh0ZXJuIGludCB3cHJpbnRmKGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19mb3JtYXQsIC4uLik7CgpleHRlcm4gaW50IHN3cHJpbnRmKHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zLCBzaXplX3QgX19uLAogICAgICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX2Zvcm1hdCwgLi4uKTsKCgoAAAAAAAAAAC8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKI3ByYWdtYSBvbmNlCiNkZWZpbmUgX0lPRkJGIDB4MDAwMAojZGVmaW5lIF9JT0xCRiAweDAwNDAKI2RlZmluZSBfSU9OQkYgMHgwMDA0CgojZGVmaW5lIEJVRlNJWiAgNTEyCgojZGVmaW5lIEVPRiAgICAoLTEpCgojZGVmaW5lIEZJTEVOQU1FX01BWCAgICAyNjAKI2RlZmluZSBGT1BFTl9NQVggICAgICAgMjAKCiNkZWZpbmUgTF90bXBuYW0gICAyNjAgLy8gX01BWF9QQVRICgovKiBTZWVrIG1ldGhvZCBjb25zdGFudHMgKi8KCiNkZWZpbmUgU0VFS19DVVIgICAgMQojZGVmaW5lIFNFRUtfRU5EICAgIDIKI2RlZmluZSBTRUVLX1NFVCAgICAwCgoKI2RlZmluZSBUTVBfTUFYICAgICAgICAgMjE0NzQ4MzY0NwoKCgp0eXBlZGVmIGxvbmcgbG9uZyBmcG9zX3Q7CnR5cGVkZWYgaW50IEZJTEU7CgpleHRlcm4gRklMRSogc3RkaW47CmV4dGVybiBGSUxFKiBzdGRvdXQ7CmV4dGVybiBGSUxFKiBzdGRlcnI7Cgp0eXBlZGVmIGludCBzaXplX3Q7CnR5cGVkZWYgdm9pZCogdmFfbGlzdDsKaW50IHJlbW92ZShjb25zdCBjaGFyKiBmaWxlbmFtZSk7CmludCByZW5hbWUoY29uc3QgY2hhciogb2xkLCBjb25zdCBjaGFyKiBuZXdzKTsKRklMRSogX09wdCB0bXBmaWxlKHZvaWQpOwpjaGFyKiB0bXBuYW0oY2hhciogcyk7CiNpZiBkZWZpbmVkKF9fU1REQ19PV05FUlNISVBfXykgCmludCBmY2xvc2UoRklMRSogX093bmVyIHN0cmVhbSk7CiNlbHNlCmludCBmY2xvc2UoRklMRSogc3RyZWFtKTsKI2VuZGlmCmludCBmZmx1c2goRklMRSogc3RyZWFtKTsKI2lmIGRlZmluZWQoX19TVERDX09XTkVSU0hJUF9fKSAKRklMRSogX093bmVyIF9PcHQgZm9wZW4oY29uc3QgY2hhciogcmVzdHJpY3QgZmlsZW5hbWUsIGNvbnN0IGNoYXIqIHJlc3RyaWN0IG1vZGUpOwpGSUxFKiBfT3duZXIgX09wdCBmcmVvcGVuKGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZpbGVuYW1lLCBjb25zdCBjaGFyKiByZXN0cmljdCBtb2RlLCBGSUxFKiByZXN0cmljdCBzdHJlYW0pOwojZWxzZQpGSUxFKiBmb3Blbihjb25zdCBjaGFyKiByZXN0cmljdCBmaWxlbmFtZSwgY29uc3QgY2hhciogcmVzdHJpY3QgbW9kZSk7CkZJTEUqIGZyZW9wZW4oY29uc3QgY2hhciogcmVzdHJpY3QgZmlsZW5hbWUsIGNvbnN0IGNoYXIqIHJlc3RyaWN0IG1vZGUsIEZJTEUqIHJlc3RyaWN0IHN0cmVhbSk7CiNlbmRpZgp2b2lkIHNldGJ1ZihGSUxFKiByZXN0cmljdCBzdHJlYW0sIGNoYXIqIHJlc3RyaWN0IGJ1Zik7CmludCBzZXR2YnVmKEZJTEUqIHJlc3RyaWN0IHN0cmVhbSwgY2hhciogcmVzdHJpY3QgYnVmLCBpbnQgbW9kZSwgc2l6ZV90IHNpemUpOwppbnQgZnByaW50ZihGSUxFKiByZXN0cmljdCBzdHJlYW0sIGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZvcm1hdCwgLi4uKTsKaW50IGZzY2FuZihGSUxFKiByZXN0cmljdCBzdHJlYW0sIGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZvcm1hdCwgLi4uKTsKaW50IHByaW50Zihjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIC4uLik7CmludCBzY2FuZihjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIC4uLik7CmludCBzbnByaW50ZihjaGFyKiByZXN0cmljdCBzLCBzaXplX3QgbiwgY29uc3QgY2hhciogcmVzdHJpY3QgZm9ybWF0LCAuLi4pOwppbnQgc3ByaW50ZihjaGFyKiByZXN0cmljdCBzLCBjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIC4uLik7CmludCBzc2NhbmYoY29uc3QgY2hhciogcmVzdHJpY3QgcywgY29uc3QgY2hhciogcmVzdHJpY3QgZm9ybWF0LCAuLi4pOwppbnQgdmZwcmludGYoRklMRSogcmVzdHJpY3Qgc3RyZWFtLCBjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIHZhX2xpc3QgYXJnKTsKaW50IHZmc2NhbmYoRklMRSogcmVzdHJpY3Qgc3RyZWFtLCBjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIHZhX2xpc3QgYXJnKTsKaW50IHZwcmludGYoY29uc3QgY2hhciogcmVzdHJpY3QgZm9ybWF0LCB2YV9saXN0IGFyZyk7CmludCB2c2NhbmYoY29uc3QgY2hhciogcmVzdHJpY3QgZm9ybWF0LCB2YV9saXN0IGFyZyk7CmludCBwdXRzKGNvbnN0IGNoYXIqIHN0cik7CmludCBmcHV0cyhjb25zdCBjaGFyKiByZXN0cmljdCBzLCBGSUxFKiByZXN0cmljdCBzdHJlYW0pOwppbnQgZ2V0YyhGSUxFKiBzdHJlYW0pOwppbnQgZ2V0Y2hhcih2b2lkKTsKaW50IHB1dGMoaW50IGMsIEZJTEUqIHN0cmVhbSk7CmludCBwdXRjaGFyKGludCBjKTsKaW50IHB1dHMoY29uc3QgY2hhciogcyk7CmludCB1bmdldGMoaW50IGMsIEZJTEUqIHN0cmVhbSk7CmludCBmZ2V0YyhGSUxFKiBzdHJlYW0pOwpzaXplX3QgZnJlYWQodm9pZCogcmVzdHJpY3QgcHRyLCBzaXplX3Qgc2l6ZSwgc2l6ZV90IG5tZW1iLCBGSUxFKiByZXN0cmljdCBzdHJlYW0pOwpzaXplX3QgZndyaXRlKGNvbnN0IHZvaWQqIHJlc3RyaWN0IHB0ciwgc2l6ZV90IHNpemUsIHNpemVfdCBubWVtYiwgRklMRSogcmVzdHJpY3Qgc3RyZWFtKTsKaW50IGZnZXRwb3MoRklMRSogcmVzdHJpY3Qgc3RyZWFtLCBmcG9zX3QqIHJlc3RyaWN0IHBvcyk7CmludCBmc2VlayhGSUxFKiBzdHJlYW0sIGxvbmcgaW50IG9mZnNldCwgaW50IHdoZW5jZSk7CmludCBmc2V0cG9zKEZJTEUqIHN0cmVhbSwgY29uc3QgZnBvc190KiBwb3MpOwpsb25nIGludCBmdGVsbChGSUxFKiBzdHJlYW0pOwp2b2lkIHJld2luZChGSUxFKiBzdHJlYW0pOwp2b2lkIGNsZWFyZXJyKEZJTEUqIHN0cmVhbSk7CmludCBmZW9mKEZJTEUqIHN0cmVhbSk7CmludCBmZXJyb3IoRklMRSogc3RyZWFtKTsKdm9pZCBwZXJyb3IoY29uc3QgY2hhciogcyk7CgoKCiNpZm5kZWYgTlVMTAojZGVmaW5lIE5VTEwgKCh2b2lkKikwKQojZW5kaWYKAAAAAAAAAAAAAAAAAAAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgp0eXBlZGVmIGxvbmcgbG9uZyBmcG9zX3Q7CnR5cGVkZWYgdW5zaWduZWQgc2l6ZV90OwoKI2RlZmluZSBFWElUX1NVQ0NFU1MgMAojZGVmaW5lIEVYSVRfRkFJTFVSRSAxCiNkZWZpbmUgTlVMTCAoKHZvaWQqKTApCgp0eXBlZGVmIGludCB3Y2hhcl90OwpbW25vZGlzY2FyZF1dIGRvdWJsZSBhdG9mKGNvbnN0IGNoYXIqIG5wdHIpOwpbW25vZGlzY2FyZF1dIGludCBhdG9pKGNvbnN0IGNoYXIqIG5wdHIpOwpbW25vZGlzY2FyZF1dIGxvbmcgaW50IGF0b2woY29uc3QgY2hhciogbnB0cik7Cltbbm9kaXNjYXJkXV0gbG9uZyBsb25nIGludCBhdG9sbChjb25zdCBjaGFyKiBucHRyKTsKZG91YmxlIHN0cnRvZChjb25zdCBjaGFyKiByZXN0cmljdCBucHRyLCBjaGFyKiogcmVzdHJpY3QgZW5kcHRyKTsKZmxvYXQgc3RydG9mKGNvbnN0IGNoYXIqIHJlc3RyaWN0IG5wdHIsIGNoYXIqKiByZXN0cmljdCBlbmRwdHIpOwpsb25nIGRvdWJsZSBzdHJ0b2xkKGNvbnN0IGNoYXIqIHJlc3RyaWN0IG5wdHIsIGNoYXIqKiByZXN0cmljdCBlbmRwdHIpOwpsb25nIGludCBzdHJ0b2woY29uc3QgY2hhciogcmVzdHJpY3QgbnB0ciwgY2hhcioqIHJlc3RyaWN0IGVuZHB0ciwgaW50IGJhc2UpOwpsb25nIGxvbmcgaW50IHN0cnRvbGwoY29uc3QgY2hhciogcmVzdHJpY3QgbnB0ciwgY2hhcioqIHJlc3RyaWN0IGVuZHB0ciwgaW50IGJhc2UpOwp1bnNpZ25lZCBsb25nIGludCBzdHJ0b3VsKGNvbnN0IGNoYXIqIHJlc3RyaWN0IG5wdHIsIGNoYXIqKiByZXN0cmljdCBlbmRwdHIsIGludCBiYXNlKTsKdW5zaWduZWQgbG9uZyBsb25nIGludCBzdHJ0b3VsbChjb25zdCBjaGFyKiByZXN0cmljdCBucHRyLCBjaGFyKiogcmVzdHJpY3QgZW5kcHRyLCBpbnQgYmFzZSk7CmludCByYW5kKHZvaWQpOwp2b2lkIHNyYW5kKHVuc2lnbmVkIGludCBzZWVkKTsKdm9pZCogYWxpZ25lZF9hbGxvYyhzaXplX3QgYWxpZ25tZW50LCBzaXplX3Qgc2l6ZSk7CgojaWYgZGVmaW5lZChfX1NURENfT1dORVJTSElQX18pIApbW25vZGlzY2FyZF1dIHZvaWQqIF9Pd25lciBfT3B0IGNhbGxvYyhzaXplX3Qgbm1lbWIsIHNpemVfdCBzaXplKTsKdm9pZCBmcmVlKHZvaWQqIF9Pd25lciBfT3B0IHB0cik7Cltbbm9kaXNjYXJkXV0gdm9pZCogX093bmVyIF9PcHQgbWFsbG9jKHNpemVfdCBzaXplKTsKW1tub2Rpc2NhcmRdXSB2b2lkKiBfT3duZXIgX09wdCByZWFsbG9jKHZvaWQqIF9PcHQgcHRyLCBzaXplX3Qgc2l6ZSk7CiNlbHNlCltbbm9kaXNjYXJkXV0gdm9pZCogY2FsbG9jKHNpemVfdCBubWVtYiwgc2l6ZV90IHNpemUpOwp2b2lkIGZyZWUodm9pZCogcHRyKTsKW1tub2Rpc2NhcmRdXSB2b2lkKiBtYWxsb2Moc2l6ZV90IHNpemUpOwpbW25vZGlzY2FyZF1dIHZvaWQqIHJlYWxsb2Modm9pZCogcHRyLCBzaXplX3Qgc2l6ZSk7CiNlbmRpZgoKW1tub3JldHVybl1dIHZvaWQgYWJvcnQodm9pZCk7CmludCBhdGV4aXQodm9pZCAoKmZ1bmMpKHZvaWQpKTsKaW50IGF0X3F1aWNrX2V4aXQodm9pZCAoKmZ1bmMpKHZvaWQpKTsKW1tub3JldHVybl1dIHZvaWQgZXhpdChpbnQgc3RhdHVzKTsKW1tub3JldHVybl1dIHZvaWQgX0V4aXQoaW50IHN0YXR1cyk7CmNoYXIqIGdldGVudihjb25zdCBjaGFyKiBuYW1lKTsKW1tub3JldHVybl1dIHZvaWQgcXVpY2tfZXhpdChpbnQgc3RhdHVzKTsKaW50IHN5c3RlbShjb25zdCBjaGFyKiBzdHJpbmcpOwoAAAAAAAAAAC8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKI2RlZmluZSB1bnJlYWNoYWJsZSgpIGRvIHt9IHdoaWxlKDApIAp0eXBlZGVmIGxvbmcgaW50IHB0cmRpZmZfdDsKdHlwZWRlZiBsb25nIHVuc2lnbmVkIGludCBzaXplX3Q7CnR5cGVkZWYgaW50IHdjaGFyX3Q7CnR5cGVkZWYgc3RydWN0IHsKICBsb25nIGxvbmcgX19tYXhfYWxpZ25fbGw7CiAgbG9uZyBkb3VibGUgX19tYXhfYWxpZ25fbGQ7Cn0gbWF4X2FsaWduX3Q7Cgp0eXBlZGVmIHR5cGVvZihudWxscHRyKSBudWxscHRyX3Q7CgoAAAAAAC8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKI3ByYWdtYSBvbmNlCgpkb3VibGUgYWNvcyhkb3VibGUgX194KTsKZG91YmxlIGFzaW4oZG91YmxlIF9feCk7CmRvdWJsZSBhdGFuKGRvdWJsZSBfX3gpOwpkb3VibGUgYXRhbjIoZG91YmxlIF9feSwgZG91YmxlIF9feCk7CmRvdWJsZSBjb3MoZG91YmxlIF9feCk7CmRvdWJsZSBzaW4oZG91YmxlIF9feCk7CmRvdWJsZSB0YW4oZG91YmxlIF9feCk7CmRvdWJsZSBjb3NoKGRvdWJsZSBfX3gpOwpkb3VibGUgc2luaChkb3VibGUgX194KTsKZG91YmxlIHRhbmgoZG91YmxlIF9feCk7CmRvdWJsZSBhY29zaChkb3VibGUgX194KTsKZG91YmxlIGFzaW5oKGRvdWJsZSBfX3gpOwpkb3VibGUgYXRhbmgoZG91YmxlIF9feCk7CmRvdWJsZSBleHAoZG91YmxlIF9feCk7CmRvdWJsZSBmcmV4cChkb3VibGUgX194LCBpbnQqIF9fZXhwb25lbnQpOwpkb3VibGUgbGRleHAoZG91YmxlIF9feCwgaW50IF9fZXhwb25lbnQpOwpkb3VibGUgbG9nKGRvdWJsZSBfX3gpOwpkb3VibGUgbG9nMTAoZG91YmxlIF9feCk7CmRvdWJsZSBtb2RmKGRvdWJsZSBfX3gsIGRvdWJsZSogX19pcHRyKTsKZG91YmxlIGV4cG0xKGRvdWJsZSBfX3gpOwpkb3VibGUgbG9nMXAoZG91YmxlIF9feCk7CmRvdWJsZSBsb2diKGRvdWJsZSBfX3gpOwpkb3VibGUgZXhwMihkb3VibGUgX194KTsKZG91YmxlIGxvZzIoZG91YmxlIF9feCk7CmRvdWJsZSBwb3coZG91YmxlIF9feCwgZG91YmxlIF9feSk7CmRvdWJsZSBzcXJ0KGRvdWJsZSBfX3gpOwpkb3VibGUgaHlwb3QoZG91YmxlIF9feCwgZG91YmxlIF9feSk7CmRvdWJsZSBjYnJ0KGRvdWJsZSBfX3gpOwpkb3VibGUgY2VpbChkb3VibGUgX194KTsKZG91YmxlIGZhYnMoZG91YmxlIF9feCk7CmRvdWJsZSBmbG9vcihkb3VibGUgX194KTsKZG91YmxlIGZtb2QoZG91YmxlIF9feCwgZG91YmxlIF9feSk7CmludCBpc2luZihkb3VibGUgX192YWx1ZSk7CmludCBmaW5pdGUoZG91YmxlIF9fdmFsdWUpOwpkb3VibGUgZHJlbShkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIHNpZ25pZmljYW5kKGRvdWJsZSBfX3gpOwpkb3VibGUgY29weXNpZ24oZG91YmxlIF9feCwgZG91YmxlIF9feSk7CmRvdWJsZSBuYW4oY29uc3QgY2hhciogX190YWdiKTsKaW50IGlzbmFuKGRvdWJsZSBfX3ZhbHVlKTsKZG91YmxlIGowKGRvdWJsZSk7CmRvdWJsZSBqMShkb3VibGUpOwpkb3VibGUgam4oaW50LCBkb3VibGUpOwpkb3VibGUgeTAoZG91YmxlKTsKZG91YmxlIHkxKGRvdWJsZSk7CmRvdWJsZSB5bihpbnQsIGRvdWJsZSk7CmRvdWJsZSBlcmYoZG91YmxlKTsKZG91YmxlIGVyZmMoZG91YmxlKTsKZG91YmxlIGxnYW1tYShkb3VibGUpOwpkb3VibGUgdGdhbW1hKGRvdWJsZSk7CmRvdWJsZSBnYW1tYShkb3VibGUpOwpkb3VibGUgbGdhbW1hX3IoZG91YmxlLCBpbnQqIF9fc2lnbmdhbXApOwpkb3VibGUgcmludChkb3VibGUgX194KTsKZG91YmxlIG5leHRhZnRlcihkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIG5leHR0b3dhcmQoZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKZG91YmxlIHJlbWFpbmRlcihkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIHNjYWxibihkb3VibGUgX194LCBpbnQgX19uKTsKaW50IGlsb2diKGRvdWJsZSBfX3gpOwpkb3VibGUgc2NhbGJsbihkb3VibGUgX194LCBsb25nIGludCBfX24pOwpkb3VibGUgbmVhcmJ5aW50KGRvdWJsZSBfX3gpOwpkb3VibGUgcm91bmQoZG91YmxlIF9feCk7CmRvdWJsZSB0cnVuYyhkb3VibGUgX194KTsKZG91YmxlIHJlbXF1byhkb3VibGUgX194LCBkb3VibGUgX195LCBpbnQqIF9fcXVvKTsKbG9uZyBpbnQgbHJpbnQoZG91YmxlIF9feCk7CmxvbmcgbG9uZyBpbnQgbGxyb3VuZChkb3VibGUgX194KTsKZG91YmxlIGZkaW0oZG91YmxlIF9feCwgZG91YmxlIF9feSk7CmRvdWJsZSBmbWF4KGRvdWJsZSBfX3gsIGRvdWJsZSBfX3kpOwpkb3VibGUgZm1pbihkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIGZtYShkb3VibGUgX194LCBkb3VibGUgX195LCBkb3VibGUgX196KTsKZG91YmxlIHNjYWxiKGRvdWJsZSBfX3gsIGRvdWJsZSBfX24pOwpmbG9hdCBhY29zZihmbG9hdCBfX3gpOwpmbG9hdCBhc2luZihmbG9hdCBfX3gpOwpmbG9hdCBhdGFuZihmbG9hdCBfX3gpOwpmbG9hdCBhdGFuMmYoZmxvYXQgX195LCBmbG9hdCBfX3gpOwpmbG9hdCBjb3NmKGZsb2F0IF9feCk7CmZsb2F0IHNpbmYoZmxvYXQgX194KTsKZmxvYXQgdGFuZihmbG9hdCBfX3gpOwpmbG9hdCBjb3NoZihmbG9hdCBfX3gpOwpmbG9hdCBzaW5oZihmbG9hdCBfX3gpOwpmbG9hdCB0YW5oZihmbG9hdCBfX3gpOwpmbG9hdCBhY29zaGYoZmxvYXQgX194KTsKZmxvYXQgYXNpbmhmKGZsb2F0IF9feCk7CmZsb2F0IGF0YW5oZihmbG9hdCBfX3gpOwpmbG9hdCBleHBmKGZsb2F0IF9feCk7CmZsb2F0IGZyZXhwZihmbG9hdCBfX3gsIGludCogX19leHBvbmVudCk7CmZsb2F0IGxkZXhwZihmbG9hdCBfX3gsIGludCBfX2V4cG9uZW50KTsKZmxvYXQgbG9nZihmbG9hdCBfX3gpOwpmbG9hdCBsb2cxMGYoZmxvYXQgX194KTsgZmxvYXQgX19sb2cxMGYoZmxvYXQgX194KTsKZmxvYXQgbW9kZmYoZmxvYXQgX194LCBmbG9hdCogX19pcHRyKTsKZmxvYXQgZXhwbTFmKGZsb2F0IF9feCk7CmZsb2F0IGxvZzFwZihmbG9hdCBfX3gpOwpmbG9hdCBsb2diZihmbG9hdCBfX3gpOwpmbG9hdCBleHAyZihmbG9hdCBfX3gpOwpmbG9hdCBsb2cyZihmbG9hdCBfX3gpOwpmbG9hdCBwb3dmKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgc3FydGYoZmxvYXQgX194KTsKZmxvYXQgaHlwb3RmKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgY2JydGYoZmxvYXQgX194KTsKZmxvYXQgY2VpbGYoZmxvYXQgX194KTsKZmxvYXQgZmFic2YoZmxvYXQgX194KTsKZmxvYXQgZmxvb3JmKGZsb2F0IF9feCk7CmZsb2F0IGZtb2RmKGZsb2F0IF9feCwgZmxvYXQgX195KTsKaW50IGlzaW5mZihmbG9hdCBfX3ZhbHVlKTsKaW50IGZpbml0ZWYoZmxvYXQgX192YWx1ZSk7CmZsb2F0IGRyZW1mKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgc2lnbmlmaWNhbmRmKGZsb2F0IF9feCk7CmZsb2F0IGNvcHlzaWduZihmbG9hdCBfX3gsIGZsb2F0IF9feSk7CmZsb2F0IG5hbmYoY29uc3QgY2hhciogX190YWdiKTsKaW50IGlzbmFuZihmbG9hdCBfX3ZhbHVlKTsKZmxvYXQgajBmKGZsb2F0KTsKZmxvYXQgajFmKGZsb2F0KTsKZmxvYXQgam5mKGludCwgZmxvYXQpOwpmbG9hdCB5MGYoZmxvYXQpOwpmbG9hdCB5MWYoZmxvYXQpOwpmbG9hdCB5bmYoaW50LCBmbG9hdCk7CmZsb2F0IGVyZmYoZmxvYXQpOwpmbG9hdCBlcmZjZihmbG9hdCk7CmZsb2F0IGxnYW1tYWYoZmxvYXQpOwpmbG9hdCB0Z2FtbWFmKGZsb2F0KTsKZmxvYXQgZ2FtbWFmKGZsb2F0KTsKZmxvYXQgbGdhbW1hZl9yKGZsb2F0LCBpbnQqIF9fc2lnbmdhbXApOwpmbG9hdCByaW50ZihmbG9hdCBfX3gpOwpmbG9hdCBuZXh0YWZ0ZXJmKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgbmV4dHRvd2FyZGYoZmxvYXQgX194LCBsb25nIGRvdWJsZSBfX3kpOwpmbG9hdCByZW1haW5kZXJmKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgc2NhbGJuZihmbG9hdCBfX3gsIGludCBfX24pOwppbnQgaWxvZ2JmKGZsb2F0IF9feCk7CmZsb2F0IHNjYWxibG5mKGZsb2F0IF9feCwgbG9uZyBpbnQgX19uKTsKZmxvYXQgbmVhcmJ5aW50ZihmbG9hdCBfX3gpOwpmbG9hdCByb3VuZGYoZmxvYXQgX194KTsKZmxvYXQgdHJ1bmNmKGZsb2F0IF9feCk7CmZsb2F0IHJlbXF1b2YoZmxvYXQgX194LCBmbG9hdCBfX3ksIGludCogX19xdW8pOwpsb25nIGludCBscmludGYoZmxvYXQgX194KTsKbG9uZyBsb25nIGludCBsbHJvdW5kZihmbG9hdCBfX3gpOwpmbG9hdCBmZGltZihmbG9hdCBfX3gsIGZsb2F0IF9feSk7CmZsb2F0IGZtYXhmKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgZm1pbmYoZmxvYXQgX194LCBmbG9hdCBfX3kpOwpmbG9hdCBmbWFmKGZsb2F0IF9feCwgZmxvYXQgX195LCBmbG9hdCBfX3opOwpmbG9hdCBzY2FsYmYoZmxvYXQgX194LCBmbG9hdCBfX24pOwpsb25nIGRvdWJsZSBhY29zbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBhc2lubChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBhdGFubChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBhdGFuMmwobG9uZyBkb3VibGUgX195LCBsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBjb3NsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIHNpbmwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgdGFubChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBjb3NobChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBzaW5obChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSB0YW5obChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBhY29zaGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgYXNpbmhsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGF0YW5obChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBleHBsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGZyZXhwbChsb25nIGRvdWJsZSBfX3gsIGludCogX19leHBvbmVudCk7CmxvbmcgZG91YmxlIGxkZXhwbChsb25nIGRvdWJsZSBfX3gsIGludCBfX2V4cG9uZW50KTsKbG9uZyBkb3VibGUgbG9nbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBsb2cxMGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgbW9kZmwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSogX19pcHRyKTsKbG9uZyBkb3VibGUgZXhwbTFsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGxvZzFwbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBsb2dibChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBleHAybChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBsb2cybChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBwb3dsKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgc3FydGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgaHlwb3RsKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgY2JydGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgY2VpbGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgZmFic2wobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgZmxvb3JsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGZtb2RsKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKaW50IGlzaW5mbChsb25nIGRvdWJsZSBfX3ZhbHVlKTsKaW50IGZpbml0ZWwobG9uZyBkb3VibGUgX192YWx1ZSk7CmxvbmcgZG91YmxlIGRyZW1sKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgc2lnbmlmaWNhbmRsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGNvcHlzaWdubChsb25nIGRvdWJsZSBfX3gsIGxvbmcgZG91YmxlIF9feSk7CmxvbmcgZG91YmxlIG5hbmwoY29uc3QgY2hhciogX190YWdiKTsKaW50IGlzbmFubChsb25nIGRvdWJsZSBfX3ZhbHVlKTsKbG9uZyBkb3VibGUgajBsKGxvbmcgZG91YmxlKTsKbG9uZyBkb3VibGUgajFsKGxvbmcgZG91YmxlKTsKbG9uZyBkb3VibGUgam5sKGludCwgbG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSB5MGwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSB5MWwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSB5bmwoaW50LCBsb25nIGRvdWJsZSk7CmxvbmcgZG91YmxlIGVyZmwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSBlcmZjbChsb25nIGRvdWJsZSk7CmxvbmcgZG91YmxlIGxnYW1tYWwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSB0Z2FtbWFsKGxvbmcgZG91YmxlKTsKbG9uZyBkb3VibGUgZ2FtbWFsKGxvbmcgZG91YmxlKTsKbG9uZyBkb3VibGUgbGdhbW1hbF9yKGxvbmcgZG91YmxlLCBpbnQqIF9fc2lnbmdhbXApOwpsb25nIGRvdWJsZSByaW50bChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBuZXh0YWZ0ZXJsKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgbmV4dHRvd2FyZGwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSByZW1haW5kZXJsKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgc2NhbGJubChsb25nIGRvdWJsZSBfX3gsIGludCBfX24pOwppbnQgaWxvZ2JsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIHNjYWxibG5sKGxvbmcgZG91YmxlIF9feCwgbG9uZyBpbnQgX19uKTsKbG9uZyBkb3VibGUgbmVhcmJ5aW50bChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSByb3VuZGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgdHJ1bmNsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIHJlbXF1b2wobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3ksIGludCogX19xdW8pOwpsb25nIGludCBscmludGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBsb25nIGludCBsbHJvdW5kbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBmZGltbChsb25nIGRvdWJsZSBfX3gsIGxvbmcgZG91YmxlIF9feSk7CmxvbmcgZG91YmxlIGZtYXhsKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgZm1pbmwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSBmbWFsKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195LCBsb25nIGRvdWJsZSBfX3opOwpsb25nIGRvdWJsZSBzY2FsYmwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX24pOwoAAC8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKI3ByYWdtYSBvbmNlCgppbnQqIF9lcnJubyh2b2lkKTsKI2RlZmluZSBlcnJubyAoKl9lcnJubygpKQoKCiNkZWZpbmUgRVBFUk0gICAgICAgICAgIDEKI2RlZmluZSBFTk9FTlQgICAgICAgICAgMgojZGVmaW5lIEVTUkNIICAgICAgICAgICAzCiNkZWZpbmUgRUlOVFIgICAgICAgICAgIDQKI2RlZmluZSBFSU8gICAgICAgICAgICAgNQojZGVmaW5lIEVOWElPICAgICAgICAgICA2CiNkZWZpbmUgRTJCSUcgICAgICAgICAgIDcKI2RlZmluZSBFTk9FWEVDICAgICAgICAgOAojZGVmaW5lIEVCQURGICAgICAgICAgICA5CiNkZWZpbmUgRUNISUxEICAgICAgICAgIDEwCiNkZWZpbmUgRUFHQUlOICAgICAgICAgIDExCiNkZWZpbmUgRU5PTUVNICAgICAgICAgIDEyCiNkZWZpbmUgRUFDQ0VTICAgICAgICAgIDEzCiNkZWZpbmUgRUZBVUxUICAgICAgICAgIDE0CiNkZWZpbmUgRUJVU1kgICAgICAgICAgIDE2CiNkZWZpbmUgRUVYSVNUICAgICAgICAgIDE3CiNkZWZpbmUgRVhERVYgICAgICAgICAgIDE4CiNkZWZpbmUgRU5PREVWICAgICAgICAgIDE5CiNkZWZpbmUgRU5PVERJUiAgICAgICAgIDIwCiNkZWZpbmUgRUlTRElSICAgICAgICAgIDIxCiNkZWZpbmUgRU5GSUxFICAgICAgICAgIDIzCiNkZWZpbmUgRU1GSUxFICAgICAgICAgIDI0CiNkZWZpbmUgRU5PVFRZICAgICAgICAgIDI1CiNkZWZpbmUgRUZCSUcgICAgICAgICAgIDI3CiNkZWZpbmUgRU5PU1BDICAgICAgICAgIDI4CiNkZWZpbmUgRVNQSVBFICAgICAgICAgIDI5CiNkZWZpbmUgRVJPRlMgICAgICAgICAgIDMwCiNkZWZpbmUgRU1MSU5LICAgICAgICAgIDMxCiNkZWZpbmUgRVBJUEUgICAgICAgICAgIDMyCiNkZWZpbmUgRURPTSAgICAgICAgICAgIDMzCiNkZWZpbmUgRURFQURMSyAgICAgICAgIDM2CiNkZWZpbmUgRU5BTUVUT09MT05HICAgIDM4CiNkZWZpbmUgRU5PTENLICAgICAgICAgIDM5CiNkZWZpbmUgRU5PU1lTICAgICAgICAgIDQwCiNkZWZpbmUgRU5PVEVNUFRZICAgICAgIDQxCgoKLy8gU3VwcG9ydCBFREVBRExPQ0sgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciBNaWNyb3NvZnQgQyB2ZXJzaW9ucwojZGVmaW5lIEVERUFETE9DSyAgICAgICBFREVBRExLCgojZGVmaW5lIEVBRERSSU5VU0UgICAgICAxMDAKI2RlZmluZSBFQUREUk5PVEFWQUlMICAgMTAxCiNkZWZpbmUgRUFGTk9TVVBQT1JUICAgIDEwMgojZGVmaW5lIEVBTFJFQURZICAgICAgICAxMDMKI2RlZmluZSBFQkFETVNHICAgICAgICAgMTA0CiNkZWZpbmUgRUNBTkNFTEVEICAgICAgIDEwNQojZGVmaW5lIEVDT05OQUJPUlRFRCAgICAxMDYKI2RlZmluZSBFQ09OTlJFRlVTRUQgICAgMTA3CiNkZWZpbmUgRUNPTk5SRVNFVCAgICAgIDEwOAojZGVmaW5lIEVERVNUQUREUlJFUSAgICAxMDkKI2RlZmluZSBFSE9TVFVOUkVBQ0ggICAgMTEwCiNkZWZpbmUgRUlEUk0gICAgICAgICAgIDExMQojZGVmaW5lIEVJTlBST0dSRVNTICAgICAxMTIKI2RlZmluZSBFSVNDT05OICAgICAgICAgMTEzCiNkZWZpbmUgRUxPT1AgICAgICAgICAgIDExNAojZGVmaW5lIEVNU0dTSVpFICAgICAgICAxMTUKI2RlZmluZSBFTkVURE9XTiAgICAgICAgMTE2CiNkZWZpbmUgRU5FVFJFU0VUICAgICAgIDExNwojZGVmaW5lIEVORVRVTlJFQUNIICAgICAxMTgKI2RlZmluZSBFTk9CVUZTICAgICAgICAgMTE5CiNkZWZpbmUgRU5PREFUQSAgICAgICAgIDEyMAojZGVmaW5lIEVOT0xJTksgICAgICAgICAxMjEKI2RlZmluZSBFTk9NU0cgICAgICAgICAgMTIyCiNkZWZpbmUgRU5PUFJPVE9PUFQgICAgIDEyMwojZGVmaW5lIEVOT1NSICAgICAgICAgICAxMjQKI2RlZmluZSBFTk9TVFIgICAgICAgICAgMTI1CiNkZWZpbmUgRU5PVENPTk4gICAgICAgIDEyNgojZGVmaW5lIEVOT1RSRUNPVkVSQUJMRSAxMjcKI2RlZmluZSBFTk9UU09DSyAgICAgICAgMTI4CiNkZWZpbmUgRU5PVFNVUCAgICAgICAgIDEyOQojZGVmaW5lIEVPUE5PVFNVUFAgICAgICAxMzAKI2RlZmluZSBFT1RIRVIgICAgICAgICAgMTMxCiNkZWZpbmUgRU9WRVJGTE9XICAgICAgIDEzMgojZGVmaW5lIEVPV05FUkRFQUQgICAgICAxMzMKI2RlZmluZSBFUFJPVE8gICAgICAgICAgMTM0CiNkZWZpbmUgRVBST1RPTk9TVVBQT1JUIDEzNQojZGVmaW5lIEVQUk9UT1RZUEUgICAgICAxMzYKI2RlZmluZSBFVElNRSAgICAgICAgICAgMTM3CiNkZWZpbmUgRVRJTUVET1VUICAgICAgIDEzOAojZGVmaW5lIEVUWFRCU1kgICAgICAgICAxMzkKI2RlZmluZSBFV09VTERCTE9DSyAgICAgMTQwCgoAIAp0eXBlZGVmIGludCBlcnJub190Owp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyBzaXplX3Q7CnR5cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIHJzaXplX3Q7CnR5cGVkZWYgdW5zaWduZWQgc2hvcnQgd2NoYXJfdDsKdm9pZCogbWVtY2hyKHZvaWQgY29uc3QqIF9CdWYsIGludCBfVmFsLCBzaXplX3QgX01heENvdW50KTsKaW50IG1lbWNtcCh2b2lkIGNvbnN0KiBfQnVmMSwgdm9pZCBjb25zdCogX0J1ZjIsIHNpemVfdCBfU2l6ZSk7CnZvaWQqIG1lbWNweSh2b2lkKiBfRHN0LCB2b2lkIGNvbnN0KiBfU3JjLCBzaXplX3QgX1NpemUpOwp2b2lkKiBtZW1tb3ZlKHZvaWQqIF9Ec3QsIHZvaWQgY29uc3QqIF9TcmMsIHNpemVfdCBfU2l6ZSk7CnZvaWQqIG1lbXNldCh2b2lkKiBfRHN0LCBpbnQgX1ZhbCwgc2l6ZV90IF9TaXplKTsKY2hhciogc3RyY2hyKGNoYXIgY29uc3QqIF9TdHIsIGludCBfVmFsKTsKY2hhciAqc3RyY3B5KF9PdXQgY2hhciAqcmVzdHJpY3QgZGVzdCwgY29uc3QgY2hhciAqcmVzdHJpY3Qgc3JjICk7CmNoYXIqIHN0cnJjaHIoY2hhciBjb25zdCogX1N0ciwgaW50IF9DaCk7CmNoYXIqIHN0cnN0cihjaGFyIGNvbnN0KiBfU3RyLCBjaGFyIGNvbnN0KiBfU3ViU3RyKTsKd2NoYXJfdCogd2NzY2hyKHdjaGFyX3QgY29uc3QqIF9TdHIsIHdjaGFyX3QgX0NoKTsKd2NoYXJfdCogd2NzcmNocih3Y2hhcl90IGNvbnN0KiBfU3RyLCB3Y2hhcl90IF9DaCk7CndjaGFyX3QqIHdjc3N0cih3Y2hhcl90IGNvbnN0KiBfU3RyLCB3Y2hhcl90IGNvbnN0KiBfU3ViU3RyKTsKc3RhdGljIGlubGluZSBlcnJub190IG1lbWNweV9zKHZvaWQqIGNvbnN0IF9EZXN0aW5hdGlvbiwgcnNpemVfdCBjb25zdCBfRGVzdGluYXRpb25TaXplLCB2b2lkIGNvbnN0KiBjb25zdCBfU291cmNlLCByc2l6ZV90IGNvbnN0IF9Tb3VyY2VTaXplKTsKc3RhdGljIGlubGluZSBlcnJub190IG1lbW1vdmVfcyh2b2lkKiBjb25zdCBfRGVzdGluYXRpb24sIHJzaXplX3QgY29uc3QgX0Rlc3RpbmF0aW9uU2l6ZSwgdm9pZCBjb25zdCogY29uc3QgX1NvdXJjZSwgcnNpemVfdCBjb25zdCBfU291cmNlU2l6ZSk7CmludCBfbWVtaWNtcCh2b2lkIGNvbnN0KiBfQnVmMSwgdm9pZCBjb25zdCogX0J1ZjIsIHNpemVfdCBfU2l6ZSk7CnZvaWQqIG1lbWNjcHkodm9pZCogX0RzdCwgdm9pZCBjb25zdCogX1NyYywgaW50IF9WYWwsIHNpemVfdCBfU2l6ZSk7CmludCBtZW1pY21wKHZvaWQgY29uc3QqIF9CdWYxLCB2b2lkIGNvbnN0KiBfQnVmMiwgc2l6ZV90IF9TaXplKTsKZXJybm9fdCB3Y3NjYXRfcyh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHJzaXplX3QgX1NpemVJbldvcmRzLCB3Y2hhcl90IGNvbnN0KiBfU291cmNlKTsKZXJybm9fdCB3Y3NjcHlfcyh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHJzaXplX3QgX1NpemVJbldvcmRzLCB3Y2hhcl90IGNvbnN0KiBfU291cmNlKTsKZXJybm9fdCB3Y3NuY2F0X3Mod2NoYXJfdCogX0Rlc3RpbmF0aW9uLCByc2l6ZV90IF9TaXplSW5Xb3Jkcywgd2NoYXJfdCBjb25zdCogX1NvdXJjZSwgcnNpemVfdCBfTWF4Q291bnQpOwplcnJub190IHdjc25jcHlfcyh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHJzaXplX3QgX1NpemVJbldvcmRzLCB3Y2hhcl90IGNvbnN0KiBfU291cmNlLCByc2l6ZV90IF9NYXhDb3VudCk7CndjaGFyX3QqIHdjc3Rva19zKHdjaGFyX3QqIF9TdHJpbmcsIHdjaGFyX3QgY29uc3QqIF9EZWxpbWl0ZXIsIHdjaGFyX3QqKiBfQ29udGV4dCk7CndjaGFyX3QqIF93Y3NkdXAod2NoYXJfdCBjb25zdCogX1N0cmluZyk7CndjaGFyX3QqIHdjc2NhdCh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UpOyBpbnQgd2NzY21wKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcxLCB3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMik7CndjaGFyX3QqIHdjc2NweSh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UpOyBzaXplX3Qgd2NzY3Nwbih3Y2hhcl90IGNvbnN0KiBfU3RyaW5nLCB3Y2hhcl90IGNvbnN0KiBfQ29udHJvbCk7CnNpemVfdCB3Y3NsZW4od2NoYXJfdCBjb25zdCogX1N0cmluZyk7CnNpemVfdCB3Y3NubGVuKHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UsIHNpemVfdCBfTWF4Q291bnQpOwpzdGF0aWMgaW5saW5lIHNpemVfdCB3Y3NubGVuX3Mod2NoYXJfdCBjb25zdCogX1NvdXJjZSwgc2l6ZV90IF9NYXhDb3VudCk7CndjaGFyX3QqIHdjc25jYXQod2NoYXJfdCogX0Rlc3RpbmF0aW9uLCB3Y2hhcl90IGNvbnN0KiBfU291cmNlLCBzaXplX3QgX0NvdW50KTsKaW50IHdjc25jbXAod2NoYXJfdCBjb25zdCogX1N0cmluZzEsIHdjaGFyX3QgY29uc3QqIF9TdHJpbmcyLCBzaXplX3QgX01heENvdW50KTsKd2NoYXJfdCogd2NzbmNweSh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UsIHNpemVfdCBfQ291bnQpOwp3Y2hhcl90KiB3Y3NwYnJrKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcsIHdjaGFyX3QgY29uc3QqIF9Db250cm9sKTsKc2l6ZV90IHdjc3Nwbih3Y2hhcl90IGNvbnN0KiBfU3RyaW5nLCB3Y2hhcl90IGNvbnN0KiBfQ29udHJvbCk7CndjaGFyX3QqIHdjc3Rvayh3Y2hhcl90KiBfU3RyaW5nLCB3Y2hhcl90IGNvbnN0KiBfRGVsaW1pdGVyLCB3Y2hhcl90KiogX0NvbnRleHQpOwpzaXplX3Qgd2NzeGZybSh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UsIHNpemVfdCBfTWF4Q291bnQpOwppbnQgd2NzY29sbCh3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMSwgd2NoYXJfdCBjb25zdCogX1N0cmluZzIpOwp3Y2hhcl90KiB3Y3NkdXAod2NoYXJfdCBjb25zdCogX1N0cmluZyk7CmludCB3Y3NpY21wKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcxLCB3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMik7CmludCB3Y3NuaWNtcCh3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMSwgd2NoYXJfdCBjb25zdCogX1N0cmluZzIsIHNpemVfdCBfTWF4Q291bnQpOwp3Y2hhcl90KiB3Y3Nuc2V0KHdjaGFyX3QqIF9TdHJpbmcsIHdjaGFyX3QgX1ZhbHVlLCBzaXplX3QgX01heENvdW50KTsKd2NoYXJfdCogd2NzcmV2KHdjaGFyX3QqIF9TdHJpbmcpOwp3Y2hhcl90KiB3Y3NzZXQod2NoYXJfdCogX1N0cmluZywgd2NoYXJfdCBfVmFsdWUpOwp3Y2hhcl90KiB3Y3Nsd3Iod2NoYXJfdCogX1N0cmluZyk7IHdjaGFyX3QqIHdjc3Vwcih3Y2hhcl90KiBfU3RyaW5nKTsKaW50IHdjc2ljb2xsKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcxLCB3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMik7CmNoYXIqIHN0cnRva19zKGNoYXIqIF9TdHJpbmcsIGNoYXIgY29uc3QqIF9EZWxpbWl0ZXIsIGNoYXIqKiBfQ29udGV4dCk7CnZvaWQqIF9tZW1jY3B5KHZvaWQqIF9Ec3QsIHZvaWQgY29uc3QqIF9TcmMsIGludCBfVmFsLCBzaXplX3QgX01heENvdW50KTsKY2hhciogc3RyY2F0KGNoYXIqIF9EZXN0aW5hdGlvbiwgY2hhciBjb25zdCogX1NvdXJjZSk7CmludCBzdHJjbXAoY2hhciBjb25zdCogX1N0cjEsIGNoYXIgY29uc3QqIF9TdHIyKTsKaW50IHN0cmNvbGwoY2hhciBjb25zdCogX1N0cmluZzEsIGNoYXIgY29uc3QqIF9TdHJpbmcyKTsKY2hhciogc3RyZXJyb3IoaW50IF9FcnJvck1lc3NhZ2UpOwpzaXplX3Qgc3RybGVuKGNoYXIgY29uc3QqIF9TdHIpOwpjaGFyKiBzdHJuY2F0KGNoYXIqIF9EZXN0aW5hdGlvbiwgY2hhciBjb25zdCogX1NvdXJjZSwgc2l6ZV90IF9Db3VudCk7CmludCBzdHJuY21wKGNoYXIgY29uc3QqIF9TdHIxLCBjaGFyIGNvbnN0KiBfU3RyMiwgc2l6ZV90IF9NYXhDb3VudCk7CmNoYXIqIHN0cm5jcHkoY2hhciogX0Rlc3RpbmF0aW9uLCBjaGFyIGNvbnN0KiBfU291cmNlLCBzaXplX3QgX0NvdW50KTsKc2l6ZV90IHN0cm5sZW4oY2hhciBjb25zdCogX1N0cmluZywgc2l6ZV90IF9NYXhDb3VudCk7CnN0YXRpYyBpbmxpbmUgc2l6ZV90IHN0cm5sZW5fcyhjaGFyIGNvbnN0KiBfU3RyaW5nLCBzaXplX3QgX01heENvdW50KTsKY2hhciogc3RycGJyayhjaGFyIGNvbnN0KiBfU3RyLCBjaGFyIGNvbnN0KiBfQ29udHJvbCk7CnNpemVfdCBzdHJzcG4oY2hhciBjb25zdCogX1N0ciwgY2hhciBjb25zdCogX0NvbnRyb2wpOwpjaGFyKiBzdHJ0b2soY2hhciogX1N0cmluZywgY2hhciBjb25zdCogX0RlbGltaXRlcik7CgojaWYgZGVmaW5lZChfX1NURENfT1dORVJTSElQX18pIApjaGFyKiBfT3duZXIgX09wdCBzdHJkdXAoY2hhciBjb25zdCogX1N0cmluZyk7CiNlbHNlCmNoYXIqIHN0cmR1cChjaGFyIGNvbnN0KiBfU3RyaW5nKTsKI2VuZGlmCgppbnQgc3RyY21waShjaGFyIGNvbnN0KiBfU3RyaW5nMSwgY2hhciBjb25zdCogX1N0cmluZzIpOwppbnQgc3RyaWNtcChjaGFyIGNvbnN0KiBfU3RyaW5nMSwgY2hhciBjb25zdCogX1N0cmluZzIpOwpjaGFyKiBzdHJsd3IoY2hhciogX1N0cmluZyk7CmludCBzdHJuaWNtcChjaGFyIGNvbnN0KiBfU3RyaW5nMSwgY2hhciBjb25zdCogX1N0cmluZzIsIHNpemVfdCBfTWF4Q291bnQpOwpjaGFyKiBzdHJuc2V0KGNoYXIqIF9TdHJpbmcsIGludCBfVmFsdWUsIHNpemVfdCBfTWF4Q291bnQpOwpjaGFyKiBzdHJyZXYoY2hhciogX1N0cmluZyk7CmNoYXIqIHN0cnNldChjaGFyKiBfU3RyaW5nLCBpbnQgX1ZhbHVlKTsgY2hhciogc3RydXByKGNoYXIqIF9TdHJpbmcpOy8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKI2lmZGVmIE5ERUJVRwojZGVmaW5lIGFzc2VydCguLi4pICgodm9pZCkwKQojZWxzZQojZGVmaW5lIGFzc2VydCguLi4pIGFzc2VydChfX1ZBX0FSR1NfXykKI2VuZGlmCgAAAAAAAAAAAAAAAC8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKLy8KI3ByYWdtYSBvbmNlCiNkZWZpbmUgQ0hBUl9CSVQgICAgICA4CiNkZWZpbmUgU0NIQVJfTUlOICAgKC0xMjgpCiNkZWZpbmUgU0NIQVJfTUFYICAgICAxMjcKI2RlZmluZSBVQ0hBUl9NQVggICAgIDB4ZmYKCiNpZm5kZWYgX0NIQVJfVU5TSUdORUQKI2RlZmluZSBDSEFSX01JTiAgICBTQ0hBUl9NSU4KI2RlZmluZSBDSEFSX01BWCAgICBTQ0hBUl9NQVgKI2Vsc2UKI2RlZmluZSBDSEFSX01JTiAgICAwCiNkZWZpbmUgQ0hBUl9NQVggICAgVUNIQVJfTUFYCiNlbmRpZgoKI2RlZmluZSBNQl9MRU5fTUFYICAgIDUKI2RlZmluZSBTSFJUX01JTiAgICAoLTMyNzY4KQojZGVmaW5lIFNIUlRfTUFYICAgICAgMzI3NjcKI2RlZmluZSBVU0hSVF9NQVggICAgIDB4ZmZmZgojZGVmaW5lIElOVF9NSU4gICAgICgtMjE0NzQ4MzY0NyAtIDEpCiNkZWZpbmUgSU5UX01BWCAgICAgICAyMTQ3NDgzNjQ3CiNkZWZpbmUgVUlOVF9NQVggICAgICAweGZmZmZmZmZmCiNkZWZpbmUgTE9OR19NSU4gICAgKC0yMTQ3NDgzNjQ3TCAtIDEpCiNkZWZpbmUgTE9OR19NQVggICAgICAyMTQ3NDgzNjQ3TAojZGVmaW5lIFVMT05HX01BWCAgICAgMHhmZmZmZmZmZlVMCiNkZWZpbmUgTExPTkdfTUFYICAgICA5MjIzMzcyMDM2ODU0Nzc1ODA3aTY0CiNkZWZpbmUgTExPTkdfTUlOICAgKC05MjIzMzcyMDM2ODU0Nzc1ODA3aTY0IC0gMSkKI2RlZmluZSBVTExPTkdfTUFYICAgIDB4ZmZmZmZmZmZmZmZmZmZmZnVpNjQKCiNkZWZpbmUgX0k4X01JTiAgICAgKC0xMjdpOCAtIDEpCiNkZWZpbmUgX0k4X01BWCAgICAgICAxMjdpOAojZGVmaW5lIF9VSThfTUFYICAgICAgMHhmZnVpOAoKI2RlZmluZSBfSTE2X01JTiAgICAoLTMyNzY3aTE2IC0gMSkKI2RlZmluZSBfSTE2X01BWCAgICAgIDMyNzY3aTE2CiNkZWZpbmUgX1VJMTZfTUFYICAgICAweGZmZmZ1aTE2CgojZGVmaW5lIF9JMzJfTUlOICAgICgtMjE0NzQ4MzY0N2kzMiAtIDEpCiNkZWZpbmUgX0kzMl9NQVggICAgICAyMTQ3NDgzNjQ3aTMyCiNkZWZpbmUgX1VJMzJfTUFYICAgICAweGZmZmZmZmZmdWkzMgoKI2RlZmluZSBfSTY0X01JTiAgICAoLTkyMjMzNzIwMzY4NTQ3NzU4MDdpNjQgLSAxKQojZGVmaW5lIF9JNjRfTUFYICAgICAgOTIyMzM3MjAzNjg1NDc3NTgwN2k2NAojZGVmaW5lIF9VSTY0X01BWCAgICAgMHhmZmZmZmZmZmZmZmZmZmZmdWk2NAojZGVmaW5lIFNJWkVfTUFYIDB4ZmZmZmZmZmYKAAAAAC8qCiAqICBUaGlzIGZpbGUgaXMgcGFydCBvZiBjYWtlIGNvbXBpbGVyCiAqICBodHRwczovL2dpdGh1Yi5jb20vdGhyYWRhbXMvY2FrZQoqLwoKI3ByYWdtYSBvbmNlCnR5cGVkZWYgaW50IHdjaGFyX3Q7Ci8vIExvY2FsZSBjYXRlZ29yaWVzCiNkZWZpbmUgTENfQUxMICAgICAgICAgIDAKI2RlZmluZSBMQ19DT0xMQVRFICAgICAgMQojZGVmaW5lIExDX0NUWVBFICAgICAgICAyCiNkZWZpbmUgTENfTU9ORVRBUlkgICAgIDMKI2RlZmluZSBMQ19OVU1FUklDICAgICAgNAojZGVmaW5lIExDX1RJTUUgICAgICAgICA1CgojZGVmaW5lIExDX01JTiAgICAgICAgICBMQ19BTEwKI2RlZmluZSBMQ19NQVggICAgICAgICAgTENfVElNRQoKLy8gTG9jYWxlIGNvbnZlbnRpb24gc3RydWN0dXJlCnN0cnVjdCBsY29udgp7CiAgICBjaGFyKiBkZWNpbWFsX3BvaW50OwogICAgY2hhciogdGhvdXNhbmRzX3NlcDsKICAgIGNoYXIqIGdyb3VwaW5nOwogICAgY2hhciogaW50X2N1cnJfc3ltYm9sOwogICAgY2hhciogY3VycmVuY3lfc3ltYm9sOwogICAgY2hhciogbW9uX2RlY2ltYWxfcG9pbnQ7CiAgICBjaGFyKiBtb25fdGhvdXNhbmRzX3NlcDsKICAgIGNoYXIqIG1vbl9ncm91cGluZzsKICAgIGNoYXIqIHBvc2l0aXZlX3NpZ247CiAgICBjaGFyKiBuZWdhdGl2ZV9zaWduOwogICAgY2hhciAgICAgaW50X2ZyYWNfZGlnaXRzOwogICAgY2hhciAgICAgZnJhY19kaWdpdHM7CiAgICBjaGFyICAgICBwX2NzX3ByZWNlZGVzOwogICAgY2hhciAgICAgcF9zZXBfYnlfc3BhY2U7CiAgICBjaGFyICAgICBuX2NzX3ByZWNlZGVzOwogICAgY2hhciAgICAgbl9zZXBfYnlfc3BhY2U7CiAgICBjaGFyICAgICBwX3NpZ25fcG9zbjsKICAgIGNoYXIgICAgIG5fc2lnbl9wb3NuOwogICAgd2NoYXJfdCogX1dfZGVjaW1hbF9wb2ludDsKICAgIHdjaGFyX3QqIF9XX3Rob3VzYW5kc19zZXA7CiAgICB3Y2hhcl90KiBfV19pbnRfY3Vycl9zeW1ib2w7CiAgICB3Y2hhcl90KiBfV19jdXJyZW5jeV9zeW1ib2w7CiAgICB3Y2hhcl90KiBfV19tb25fZGVjaW1hbF9wb2ludDsKICAgIHdjaGFyX3QqIF9XX21vbl90aG91c2FuZHNfc2VwOwogICAgd2NoYXJfdCogX1dfcG9zaXRpdmVfc2lnbjsKICAgIHdjaGFyX3QqIF9XX25lZ2F0aXZlX3NpZ247Cn07CgpzdHJ1Y3QgdG07CgpjaGFyKiBzZXRsb2NhbGUoCiAgICBpbnQgICAgICAgICBfQ2F0ZWdvcnksCiAgICBjaGFyIGNvbnN0KiBfTG9jYWxlCik7CgpzdHJ1Y3QgbGNvbnYqIGxvY2FsZWNvbnYodm9pZCk7CgCCYQEAAAAAAGDQAQAAAAAA0XSeAFedvSqAcFIP//8+JwoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFGAAAADUAAABxAAAAa////877//+Sv///AAAAAAAAAAAZAAoAGRkZAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABkAEQoZGRkDCgcAAQAJCxgAAAkGCwAACwAGGQAAABkZGQAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAZAAoNGRkZAA0AAAIACQ4AAAAJAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAEwAAAAATAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAEDwAAAAAJEAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAAAAAAAAAAAARAAAAABEAAAAACRIAAAAAABIAABIAABoAAAAaGhoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAABoaGgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAABcAAAAAFwAAAAAJFAAAAAAAFAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAAAAAAAAAAAAAAVAAAAABUAAAAACRYAAAAAABYAABYAADAxMjM0NTY3ODlBQkNERUY="); - base64DecodeToExistingUint8Array(bufferView, 118368, "SmFuAEZlYgBNYXIAQXByAE1heQBKdW4ASnVsAEF1ZwBTZXAAT2N0AE5vdgBEZWMAAAAAAAAAAADd+///+v//fwAAAAAAAAAAAAAAAAAAAAABAAAAXSsBAAIAAAAjLgEAAwAAAHYcAQAEAAAAYAsBAAUAAABZEwEABgAAAHoQAQAHAAAASBMBAAgAAAD6DQEACQAAAAMkAQAKAAAApioBAAsAAAC+BQEADAAAAGwiAQAsAAAAkCABAC0AAABIHgEADgAAACkMAQAQAAAAAS0BABEAAABEFwEAJAAAAAYYAQAlAAAA9CMBAC4AAAA7BQEADQAAAFEiAQAPAAAA1yYBABQAAAC8FQEAFQAAAK4UAQAWAAAAuBQBABcAAACNIwEAGAAAAHUjAQAZAAAAAhUBABoAAACNIwEAIwAAAAEYAQAbAAAABB4BABwAAAD9DwEAHwAAAMwJAQAdAAAA0SwBACAAAAC/KwEAIQAAAFghAQAeAAAATC8BACIAAABEKwEAEgAAAAwjAQAmAAAAcwIBACcAAADKHAEAKAAAALAXAQATAAAAFhkBACkAAAAeDwEAKgAAAFEFAQArAAAAdggBAC8AAADRCAEAMAAAAIYcAQAxAAAAJB8BADIAAACOAwEAMwAAAGojAQA0AAAAOQgBADUAAAAgDgEAAQAAAAAAAAAFAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAABjSAQAABAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA/////woAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABg0AEAMNgBAA=="); - base64DecodeToExistingUint8Array(bufferView, 119040, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="); + base64DecodeToExistingUint8Array(bufferView, 65536, "4pSYAOKUkAAlLTE4c+KUggAlLTI1c+KUggAlLTIwc+KUggDilIIlLTJk4pSCAOKUlOKUgOKUgOKUtOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUtOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgADilIzilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilKzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAAfgB7Li4ufQBub3QgZm9sbG93aW5nIGNvcnJlY3QgY2xvc2UgYnJhY2Ugc3R5bGUgfQAgJSpzIHwAICVzIHwAbm90IGZvbGxvd2luZyBjb3JyZWN0IGJyYWNlIHN0eWxlIHsAID0gewB0b2tlbl9saXN0X2lzX2VtcHR5AHBvaW50ZWQgb2JqZWN0IG1heSBiZSBub3QgZW1wdHkAb2JqZWN0ICclcycgbWF5IG5vdCBiZSBlbXB0eQBpbmZpbml0eQBzYWZldHkAdHJ5AF9JbWFnaW5hcnkAZGVmZXJfdmlzaXRfY3R4X2Rlc3Ryb3kAaGFzaG1hcF9kZXN0cm95AHN3aXRjaF92YWx1ZV9kZXN0cm95AGFueQBfaXNfYXJyYXkAbnVsbC1hcy1hcnJheQAgcGFzc2luZyBudWxsIGFzIGFycmF5AHVzaW5nIGluZGlyZWN0aW9uICctPicgaW4gYXJyYXkAYXJndW1lbnQgb2YgX0xlbmd0aG9mIG11c3QgYmUgYW4gYXJyYXkAZnVuY3Rpb24gcmV0dXJuaW5nIGFycmF5AGluZGV4ICVkIGlzIHBhc3QgdGhlIGVuZCBvZiB0aGUgYXJyYXkALXN0ZD1jeHgAX0NvbXBsZXgAb2JqZWN0X2V4dGVuZF9hcnJheV90b19pbmRleABzdGF0aWNfZGVidWdfZXgALXN0ZD1jMngALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABceCV4AHRocm93AG92ZXJmbG93AF9WaWV3AC1zdHlsZT1nbnUAJWxsdQAlbHUAJXUAcF9leHByZXNzaW9uX25vZGUtPnR5cGUubmV4dAAtbm8tb3V0cHV0AC1tc3ZjLW91dHB1dABfT3V0AF9pc19jb25zdABtYWNyb19jb3B5X3JlcGxhY2VtZW50X2xpc3QAaWRlbnRpZmllcl9saXN0AHNwZWNpZmllcl9xdWFsaWZpZXJfbGlzdAB0b2tlbl9saXN0X2FwcGVuZF9saXN0AHNob3J0AHN0YXRpY19hc3NlcnQAX1N0YXRpY19hc3NlcnQALWRpc2FibGUtYXNzZXJ0AGdyb3VwX3BhcnQAcG9pbnRlcl9vcHQAZ3JvdXBfb3B0AGVzY2FwZV9zZXF1ZW5jZXNfZGVjb2RlX29wdABfT3B0AHR5cGVfbGlzdF9wdXNoX2Zyb250AF9pc19mbG9hdGluZ19wb2ludABvYmplY3RfdG9fdW5zaWduZWRfaW50AG9iamVjdF90b19zaWduZWRfaW50AGN1cnJlbnQAY2hlY2tfc2l6ZW9mX2FyZ3VtZW50AHNpemVvZi1hcnJheS1hcmd1bWVudABhcnJheS1wYXJhbWV0ZXItYXNzaWdubWVudABsdmFsdWUgcmVxdWlyZWQgYXMgbGVmdCBvcGVyYW5kIG9mIGFzc2lnbm1lbnQAbXVsdGktbGluZSAvL2NvbW1lbnQAbWlzc2luZyBlbmQgb2YgY29tbWVudAB0cnlfc3RhdGVtZW50AGZsb3dfdmlzaXRfZm9yX3N0YXRlbWVudABkZWZlcl92aXNpdF9mb3Jfc3RhdGVtZW50AGZsb3dfdmlzaXRfanVtcF9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfanVtcF9zdGF0ZW1lbnQAZF92aXNpdF9qdW1wX3N0YXRlbWVudABmbG93X3Zpc2l0X3NlbGVjdGlvbl9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfc2VsZWN0aW9uX3N0YXRlbWVudABkX3Zpc2l0X3NlbGVjdGlvbl9zdGF0ZW1lbnQAZmxvd192aXNpdF9pdGVyYXRpb25fc3RhdGVtZW50AGRlZmVyX3Zpc2l0X2l0ZXJhdGlvbl9zdGF0ZW1lbnQAZF92aXNpdF9pdGVyYXRpb25fc3RhdGVtZW50AGZsb3dfdmlzaXRfaWZfc3RhdGVtZW50AGRlZmVyX3Zpc2l0X2lmX3N0YXRlbWVudABmbG93X3Zpc2l0X3doaWxlX3N0YXRlbWVudABkZWZlcl92aXNpdF93aGlsZV9zdGF0ZW1lbnQAZmxvd192aXNpdF9kb193aGlsZV9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfZG9fd2hpbGVfc3RhdGVtZW50AGlzX2NvbXBvdW5kX3N0YXRlbWVudABmbG93X3Zpc2l0X3VubGFiZWxlZF9zdGF0ZW1lbnQAZGVmZXJfdmlzaXRfdW5sYWJlbGVkX3N0YXRlbWVudABkX3Zpc2l0X3VubGFiZWxlZF9zdGF0ZW1lbnQAZF92aXNpdF9sYWJlbGVkX3N0YXRlbWVudABlbXB0eS1zdGF0ZW1lbnQAcmV0dXJuIGNhbm5vdCBiZSB1c2VkIGluc2lkZSBkZWZlciBzdGF0ZW1lbnQAY29uZGl0aW9uYWwtY29uc3RhbnQAdW51c3VhbCBleHByZXNzaW9uL3R5cGUgdXNlZCBhcyBudWxsIHBvaW50ZXIgY29uc3RhbnQAX0JpdEludABkZWZhdWx0AGNvbnN0LWluaXQAZXhwZWN0ZWQgYmluYXJ5IGRpZ2l0AGV4cGVjdGVkIGhleGFkZWNpbWFsIGRpZ2l0AGV4cGVjdGVkIGludGVnZXIgdHlwZSBvbiByaWdodAAtc3R5bGU9bWljcm9zb2Z0AGV4cGVjdGVkIGludGVnZXIgdHlwZSBvbiBsZWZ0AHVuc2V0AG9iamVjdF9zZXQAaGFzaG1hcF9zZXQAc3RhdGljX3NldABnZXRfYWxpZ25vZl9zdHJ1Y3QAZ2V0X3NpemVvZl9zdHJ1Y3QAcmVzdHJpY3QAZXhwcmVzc2lvbl9nZXRfZmxvd19vYmplY3QAdXNpbmctbW92ZWQtb2JqZWN0AGFzc2lnbm1lbnQgb2YgcmVhZC1vbmx5IG9iamVjdABtYXliZSB1c2luZyBhIHVuaW5pdGlhbGl6ZWQgb2JqZWN0AGRlcmVmZXJlbmNlIGEgTlVMTCBvYmplY3QAcGFzc2luZyBhbiB1bmluaXRpYWxpemVkIGFyZ3VtZW50ICclcycgb2JqZWN0AHJldHVybmluZyBhbiB1bmluaXRpYWxpemVkICclcycgb2JqZWN0AHJlYWRpbmcgYW4gdW5pbml0aWFsaXplZCAnJXMnIG9iamVjdABvYmplY3RfdG9fZmxvYXQAbnVsbHB0cl90AGNvbGxlY3RfbWFjcm9fYXJndW1lbnRzAHJlcGxhY2VfbWFjcm9fYXJndW1lbnRzAHRvbyBtYW55IGFyZ3VtZW50cwB0eXBlb2YgdXNlZCBpbiBhcnJheSBhcmd1bWVudHMAdG9vIGZldyBhcmd1bWVudHMAdXNlIHNuYWtlX2Nhc2UgZm9yIGFyZ3VtZW50cwBhZGRyZXNzAHVzZSBVUFBFUkNBU0UgZm9yIGVudW1lcmF0b3JzAG9wZXJhdG9yIC0tIGNhbm5vdCBiZSB1c2VkIGluIG93bmVyIHBvaW50ZXJzAG9wZXJhdG9yICsrIGNhbm5vdCBiZSB1c2VkIGluIF9Pd25lciBwb2ludGVycwBfT2JqX293bmVyIHF1YWxpZmllciBjYW4gb25seSBiZSB1c2VkIHdpdGggcG9pbnRlcnMAcHJvY2Vzc19pZGVudGlmaWVycwBkaXNjYXJkZWQtcXVhbGlmaWVycwBkZWNsYXJhdGlvbl9zcGVjaWZpZXJzAGluY29tcGF0aWJsZSBzcGVjaWZpZXJzAHVzZSBzbmFrZV9jYXNlIGZvciBzdHJ1Y3QgbWVtYmVycwBlbGlmX2dyb3VwcwB1c2UgU0NSRUFNSU5HX0NBU0UgZm9yIG1hY3JvcwBjaGVja19kaWZlcmVudF9lbnVucwByZWdpc3Rlcl9zdHJ1Y3RfdHlwZXNfYW5kX2Z1bmN0aW9ucwB0b2tlbiAnJXMnIGlzIG5vdCB2YWxpZCBpbiBwcmVwcm9jZXNzb3IgZXhwcmVzc2lvbnMALWR1bXAtcHAtdG9rZW5zAC1kdW1wLXRva2VucwBza2lwX2JsYW5rcwAtbnVsbGNoZWNrcwB1c2Ugc25ha2VfY2FzZSBmb3Igc3RydWN0L3VuaW9uIHRhZ3MAdXNlIGNhbWVsQ2FzZSBmb3Igc3RydWN0L3VuaW9uIHRhZ3MAdXNlIHNuYWtlX2Nhc2UgZm9yIGVudW0gdGFncwB1c2UgUGFzY2FsQ2FzZSBmb3IgZW51bSB0YWdzAF9Ob3JldHVybiBpcyBkZXByZWNhdGVkIHVzZSBhdHRyaWJ1dGVzAHVzZSBvbmx5IGZvciBub24gYWdyZWdhdGVzAGluY29tcGF0aWJsZS10eXBlcwBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlcwBtaXNtYXRjaCBpbiBlbnVtZXJhdGlvbiB0eXBlcwAgaW5jb21wYXRpYmxlIHR5cGVzAHVzZSBzbmFrZV9jYXNlIGZvciBsb2NhbCB2YXJpYWJsZXMAdXNlIGNhbWVsQ2FzZSBmb3IgbG9jYWwgdmFyaWFibGVzAHVzZSBzbmFrZV9jYXNlIGdsb2JhbCB2YXJpYWJsZXMAdXNlIHByZWZpeCBzXyBmb3Igc3RhdGljIGdsb2JhbCB2YXJpYWJsZXMALXNob3ctaW5jbHVkZXMAb3V0LW9mLWJvdW5kcwBhcnJheSBpbmRleCAnJWQnIGluIGluaXRpYWxpemVyIGV4Y2VlZHMgYXJyYXkgYm91bmRzAGFsaWduYXMAX0FsaWduYXMAJXMlcwAtVyVzACVzLT4lcwAlcy8lcwAlcy4lcwBfX20lZC4lcwBzdHJ1Y3QgJXMAJXMgJXMAaW52YWxpZCBwYXJhbWV0ZXIgJXMAdW5pb24gJXMAZW51bSAlcwBleGVwYXRoICVzAGV4cGVjdGVkICVzACVkICVzAG51bGxwdHIAY29uc3RleHByAG1pc3NpbmctZGVzdHJ1Y3RvcgBleGVjdXRlX2JpdHdpc2Vfb3BlcmF0b3IAZW51bWVyYXRvcgBmbG93X3Zpc2l0X2luaXRfZGVjbGFyYXRvcgBtYWtlX3R5cGVfdXNpbmdfZGVjbGFyYXRvcgBmaW5kX2RlY2xhcmF0b3IAaGlkZS1kZWNsYXJhdG9yAHN0YXRpYyBvciB0eXBlIHF1YWxpZmllcnMgYXJlIG5vdCBhbGxvd2VkIGluIG5vbi1wYXJhbWV0ZXIgYXJyYXkgZGVjbGFyYXRvcgAnJXMnOiB1bnJlZmVyZW5jZWQgZGVjbGFyYXRvcgAjZXJyb3IAZXhwcmVzc2lvbiBlcnJvcgBmb3IAZGlyAC1mYW5hbHl6ZXIAZW1iZWRfdG9rZW5pemVyAHdhcm5pbmc6IGV4Y2VzcyBlbGVtZW50cyBpbiBpbml0aWFsaXplcgByZWdpc3RlcgBfaXNfcG9pbnRlcgB0eXBlX3BhcmFtX2FycmF5X3RvX3BvaW50ZXIAdHlwZV9yZW1vdmVfcG9pbnRlcgBmbG93X29iamVjdF9leHBhbmRfcG9pbnRlcgBzdWJzY3JpcHRlZCB2YWx1ZSBpcyBuZWl0aGVyIGFycmF5IG5vciBwb2ludGVyAGludmFsaWQgcXVhbGlmaWVyIGZvciBwb2ludGVyAGRpc2NhcmRpbmcgX093bmVyIHBvaW50ZXIAbm9uLXBvaW50ZXIgdG8gcG9pbnRlcgBjYWxsZWQgb2JqZWN0IGlzIG5vdCBhdHRyIGZ1bmN0aW9uIG9yIGZ1bmN0aW9uIHBvaW50ZXIAY2Fubm90IGNvbnZlcnQgYSBudWxsIHBvaW50ZXIgY29uc3RhbnQgdG8gbm9uLW51bGxhYmxlIHBvaW50ZXIAYXNzaWdubWVudCBvZiBwb3NzaWJsZSBudWxsIHBvaW50ZXIgJyVzJyB0byBub24tbnVsbGFibGUgcG9pbnRlcgByZXR1cm5pbmcgYSBwb3NzaWJsZSBudWxsIHBvaW50ZXIgJyVzJyB0byBub24tbnVsbGFibGUgcG9pbnRlcgB1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGFmdGVyAHR5cGVvZi1wYXJhbWV0ZXIAdW51c2VkLXBhcmFtZXRlcgBhc3NpZ25tZW50IHRvIGFycmF5IHBhcmFtZXRlcgBwYXNzaW5nIGEgcG9zc2libGUgbnVsbCBwb2ludGVyICclcycgdG8gbm9uLW51bGxhYmxlIHBvaW50ZXIgcGFyYW1ldGVyAHNpemVvZiBhcHBsaWVkIHRvIGFycmF5IGZ1bmN0aW9uIHBhcmFtZXRlcgB1bmluaXRpYWxpemVkIG9iamVjdCAnJXMnIHBhc3NlZCB0byBub24tb3B0aW9uYWwgcGFyYW1ldGVyACclcyc6IHVucmVmZXJlbmNlZCBmb3JtYWwgcGFyYW1ldGVyAG1pc3NpbmcgdGVybWluYXRpbmcgJyBjaGFyYWN0ZXIAbWlzc2luZyB0ZXJtaW5hdGluZyAiIGNoYXJhY3RlcgBfaXNfb3duZXIAX09ial9vd25lcgBub3Qtb3duZXIAdGVtcC1vd25lcgBjYW5ub3QgcmV0dXJuIGEgYXV0b21hdGljIHN0b3JhZ2UgZHVyYXRpb24gX093bmVyIHRvIG5vbi1vd25lcgBkaXNjYXJkLW93bmVyAGNhbm5vdCBhc3NpZ24gYSBub24tb3duZXIgdG8gb3duZXIAZGlzY2FyZGluZyBfT3duZXIAcHJlcHJvY2Vzc29yX3Rva2VuX2FoZWFkX2lzX2lkZW50aWZpZXIAJ2F1dG8nIHJlcXVpcmVzIGEgcGxhaW4gaWRlbnRpZmllcgBleHBlY3RlZCBpZGVudGlmaWVyAHR5cGVfc3BlY2lmaWVyX3F1YWxpZmllcgBtaXNzaW5nLW93bmVyLXF1YWxpZmllcgBzdG9yYWdlX2NsYXNzX3NwZWNpZmllcgBmaW5kX3N0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIAcF9leHByZXNzaW9uX25vZGUtPnR5cGUubmV4dC0+c3RydWN0X29yX3VuaW9uX3NwZWNpZmllcgBwX3R5cGUtPnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIAZmluZF9lbnVtX3NwZWNpZmllcgByaWdodC0+dHlwZS5lbnVtX3NwZWNpZmllcgBsZWZ0LT50eXBlLmVudW1fc3BlY2lmaWVyAHR5cGVfc3BlY2lmaWVyAGNhbm5vdCBjb21iaW5lIHdpdGggcHJldmlvdXMgJ2xvbmcgbG9uZycgZGVjbGFyYXRpb24gc3BlY2lmaWVyAGNvbXBhcmlzb24gYmV0d2VlbiBwb2ludGVyIGFuZCBpbnRlZ2VyAGRlZmVyAHBwbnVtYmVyAGNvbnZlcnRfdG9fbnVtYmVyAHJldHVybi1sb2NhbC1hZGRyAF9pc19zY2FsYXIAcmlnaHQgb3BlcmF0b3IgaXMgbm90IHNjYWxhcgBsZWZ0IG9wZXJhdG9yIGlzIG5vdCBzY2FsYXIAdHlwZV9pc19hcnJheV9vZl9jaGFyAG11bHRpLWNoYXIAZWxpZl9ncm91cABzY29wZV9saXN0X3BvcABkaWFnbm9zdGljX3N0YWNrX3BvcABvd25lcnNoaXAAJXAAYXV0bwBnb3RvAGZsb3ctZGl2LWJ5LXplcm8Abm90LXplcm8AdmFsdWUgaXMgYWx3YXlzIG5vbi16ZXJvAHBvc3NpYmxlIGRpdmlzaW9uIGJ5IHplcm8AdmFsdWUgaXMgYWx3YXlzIHplcm8AZXhwYW5kX21hY3JvAGRvAC1vAHN0b3JhZ2Ugc2l6ZSBvZiAnJXMnIGlzbid0IGtub3duAG5vcmV0dXJuAF9Ob3JldHVybgBiZWZvcmUtcmV0dXJuAGV4dGVybgB0eXBlX2NvbW1vbgBfaXNfZnVuY3Rpb24AZnVuY3Rpb24gcmV0dXJuaW5nIGZ1bmN0aW9uAGFzc2lnbm1lbnQgb2YgZnVuY3Rpb24AaWZfc2VjdGlvbgBhcnJheS1pbmRpcmVjdGlvbgBhcnJheSBpbmRpcmVjdGlvbgByZWRlY2xhcmF0aW9uAGZsb3dfdmlzaXRfZGVjbGFyYXRpb24AZmxvd19zdGFydF92aXNpdF9kZWNsYXJhdGlvbgBkZWZlcl9zdGFydF92aXNpdF9kZWNsYXJhdGlvbgBmdW5jdGlvbl9kZWZpbml0aW9uX29yX2RlY2xhcmF0aW9uAHBhcmFtZXRlcl9kZWNsYXJhdGlvbgBwcmFnbWFfZGVjbGFyYXRpb24AZGVjbGFyYXRpb24gb2YgJyVzJyBoaWRlcyBwcmV2aW91cyBkZWNsYXJhdGlvbgByZXBsYWNlbWVudF9saXN0X3JlZXhhbWluYXRpb24AZ2VuZXJpY19hc3NvY2lhdGlvbgBzdGFuZGFyZCBtYWNyb3MgaW5jbHVzaW9uAF9fREFURV9fIG1hY3JvIGluY2x1c2lvbgBfX1RJTUVfXyBtYWNybyBpbmNsdXNpb24AZXF1YWxpdHlfZXhwcmVzc2lvbgB1bmFyeV9leHByZXNzaW9uAHByaW1hcnlfZXhwcmVzc2lvbgBwb3N0Zml4X2V4cHJlc3Npb24AY2FzdF9leHByZXNzaW9uAGFzc2lnbm1lbnRfZXhwcmVzc2lvbgBwcmVwcm9jZXNzb3JfY29uc3RhbnRfZXhwcmVzc2lvbgBmbG93X3Zpc2l0X2V4cHJlc3Npb24AZF92aXNpdF9leHByZXNzaW9uAGV4Y2x1c2l2ZV9vcl9leHByZXNzaW9uAGNvbmRpdGlvbmFsX2V4cHJlc3Npb24AcmVsYXRpb25hbF9leHByZXNzaW9uAG11bHRpcGxpY2F0aXZlX2V4cHJlc3Npb24AYW5kX2V4cHJlc3Npb24AZW1wdHkgZXhwcmVzc2lvbgBleHBlY3RlZCBjb25zdGFudCBleHByZXNzaW9uAHJpZ2h0IHR5cGUgaXMgbm90IHNjYWxhciBmb3Igb3IgZXhwcmVzc2lvbgBsZWZ0IHR5cGUgaXMgbm90IHNjYWxhciBmb3Igb3IgZXhwcmVzc2lvbgBpbnZhbGlkIHR5cGVzIGFkZGl0aXZlIGV4cHJlc3Npb24AZXhwZWN0ZWQgZXhwcmVzc2lvbgBlbnVtLWNvbnZlcnNpb24AbnVsbC1jb252ZXJzaW9uAHVuaW9uAGJyZWFrIGpvaW4AaW52YWxpZCB0b2tlbgB1bmV4cGVjdGVkIHRva2VuAG5hbgBpbmNvbXBhdGlibGUtZW51bQBmbG93X3Zpc2l0X2luaXRpYWxpemVyX2xpc3RfaXRlbQBmbG93X2V4aXRfYmxvY2tfdmlzaXRfZGVmZXJfaXRlbQBfT3V0IG9mIG1lbQAbWzk1bQAbWzM0bQAbWzkzbQAbWzkybQAbWzM2OzFtABtbMzQ7MW0AG1szNjsxbW5vdGU6IBtbOTdtJXMKG1swbQAbWzk1bXdhcm5pbmc6IBtbOTdtJXMgWxtbOTVtJXMbWzk3bV0KG1swbQAbWzM2OzFtbm90ZTogG1s5N20lcyBbG1szNjsxbSVzG1s5N21dChtbMG0AG1s5MW1lcnJvcjogG1s5N20lcyBbG1s5MW0lcxtbOTdtXQobWzBtABtbOTBtAG9iamVjdF90b19ib29sAF9Cb29sAGZsb3ctbm90LW51bGwAcG9pbnRlciBpcyBhbHdheXMgbm90LW51bGwAcG9pbnRlciBpcyBhbHdheXMgbm9uLW51bGwAdW51c3VhbC1udWxsAG1heWJlLW51bGwAcG9pbnRlciBpcyBhbHdheXMgbnVsbABwb2ludGVyIG1heSBiZSBudWxsAG5vbi1udWxsYWJsZSBwb2ludGVyICclcycgbWF5IGJlIG51bGwAaW50ZWdlciBvdmVyZmxvdyByZXN1bHRzIGluICclZGxsAC1XYWxsAHBvc3RmaXhfZXhwcmVzc2lvbl90YWlsAHNraXBfYmxhbmtzX2xldmVsAGxhYmVsAHR5cGVvZl91bnF1YWwAX2lzX2ludGVncmFsAGltcGxpY2l0bHktdW5zaWduZWQtbGl0ZXJhbABvcmlnaW5hbAB0aHJlYWRfbG9jYWwAX1RocmVhZF9sb2NhbABnZXRfd2FybmluZ19iaXRfbWFzawB0eXBlX2dldF9pbnRlZ2VyX3JhbmsAcHJpbWFyeV9ibG9jawB0aHJvdyBzdGF0ZW1lbnQgbm90IHdpdGhpbiB0cnkgYmxvY2sAY2hlY2sAdG9rZW5fbGlzdF9wb3BfYmFjawB0eXBlX2xpc3RfcHVzaF9iYWNrAGZsb3dfb2JqZWN0c19wdXNoX2JhY2sAYnJlYWsALXNhcmlmLXBhdGgAYXJndW1lbnRfZXhwcmVzc2lvbl9saXN0X3B1c2gAc3dpdGNoX3ZhbHVlX2xpc3RfcHVzaABzY29wZV9saXN0X3B1c2gAZmFsbHRocm91Z2gAZW51bWVyYXRpb24gdmFsdWUgJyVzJyBub3QgaGFuZGxlZCBpbiBzd2l0Y2gAY2F0Y2gAdHJ1ZV9mYWxzZV9zZXRfc2V0X29iamVjdHNfdG9fY29yZV9icmFuY2gAbGVmdC10cnVlLWJyYW5jaABjOi9hc3NlcnQuaABjOi9saW1pdHMuaABjOi93Y2hhci5oAGM6L2Vycm5vLmgAYzovc3RkaW8uaABjOi9tYXRoLmgAYzovc3RyaW5nLmgAYzovc3RkZGVmLmgAYzovbG9jYWxlLmgAYzovc3RkbGliLmgAc3RhdGljX2RlYnVnAGFuYWx5emVyLW5vbi1vcHQtYXJnAHBwbnVtYmVyX3RvX2xvbmdsb25nAG9iamVjdF90b191bnNpZ25lZF9sb25nX2xvbmcAb2JqZWN0X3RvX3NpZ25lZF9sb25nX2xvbmcAb2JqZWN0X3RvX3Vuc2lnbmVkX2xvbmcAb2JqZWN0X3RvX3NpZ25lZF9sb25nAGluaXRpYWxpemVyIGZvciBhcnJheSBpcyB0b28gbG9uZwBsb25nIGxvbmcAZXhwZWN0ZWQgc3RyaW5nACN3YXJuaW5nAHRva2VuX2xpc3RfYXBwZW5kX2xpc3RfYXRfYmVnaW5uaW5nAHN0cmluZy1zbGljaW5nAHVubmVjZXNzYXJ5IGxpbmUtc2xpY2luZwAtYXV0b2NvbmZpZwAtYXV0by1jb25maWcAc3NfdmFmcHJpbnRmAHNvdXJjZSBleHByZXNzaW9uIG9mIF9PYmpfb3duZXIgbXVzdCBiZSBhZGRyZXNzb2YAdHlwZV9nZXRfYWxpZ25vZgBfQWxpZ25vZgBfTGVuZ3Rob2YAdHlwZV9nZXRfc2l6ZW9mAHR5cGVvZgBtdXN0LXVzZS1hZGRyZXNzLW9mAGluZgAlbGYALXNhcmlmAGVsaWYAZW5kaWYAYmVmb3JlLWlmAHVuZGVmAGVsaWZuZGVmAGVsaWZkZWYAdHlwZWRlZgAlTGYAJWYAYXJyYXktc2l6ZQBub24tb3duZXItdG8tb3duZXItbW92ZQBub24tb3duZXItbW92ZQBhcnJheSBkZXNpZ25hdG9yIHZhbHVlICclZCcgaXMgbmVnYXRpdmUAdHJ1ZQBjb250aW51ZQBfaXNfbHZhbHVlAG9iamVjdF9pbmNyZW1lbnRfdmFsdWUAY29uc3RhbnQtdmFsdWUAdW51c2VkLXZhbHVlAHZvaWQgZnVuY3Rpb24gJyVzJyBzaG91bGQgbm90IHJldHVybiBhIHZhbHVlAG5vbiB2b2lkIGZ1bmN0aW9uICclcycgc2hvdWxkIHJldHVybiBhIHZhbHVlAF9faGFzX2NfYXR0cmlidXRlAHdhcm5pbmcgJyVzJyBpcyBub3QgYW4gY2FrZSBhdHRyaWJ1dGUAd2FybmluZyAnJXMnIGlzIG5vdCBhbiBzdGFuZGFyZCBhdHRyaWJ1dGUAaWdub3JpbmcgcmV0dXJuIHZhbHVlIG9mIGZ1bmN0aW9uIGRlY2xhcmVkIHdpdGggJ25vZGlzY2FyZCcgYXR0cmlidXRlAG5vdGUAbWFjcm9fYXJndW1lbnRfZGVsZXRlAGVudW1lcmF0b3JfZGVsZXRlAGluaXRfZGVjbGFyYXRvcl9kZWxldGUAbWVtYmVyX2RlY2xhcmF0b3JfZGVsZXRlAGRlc2lnbmF0b3JfZGVsZXRlAHR5cGVfc3BlY2lmaWVyX3F1YWxpZmllcl9kZWxldGUAZGVjbGFyYXRpb25fc3BlY2lmaWVyX2RlbGV0ZQBhdHRyaWJ1dGVfc3BlY2lmaWVyX2RlbGV0ZQBwYXJhbWV0ZXJfZGVjbGFyYXRpb25fZGVsZXRlAG1lbWJlcl9kZWNsYXJhdGlvbl9kZWxldGUAZ2VuZXJpY19hc3NvY2lhdGlvbl9kZWxldGUAYXJndW1lbnRfZXhwcmVzc2lvbl9kZWxldGUAdG9rZW5fZGVsZXRlAGJsb2NrX2l0ZW1fZGVsZXRlAGF0dHJpYnV0ZV9kZWxldGUAZmxvd19vYmplY3Rfc3RhdGVfZGVsZXRlAGZsb3dfb2JqZWN0X21lcmdlX2N1cnJlbnRfd2l0aF9zdGF0ZQBmbG93X29iamVjdF9hZGRfc3RhdGUAc3RhdGljX3N0YXRlAGRlY2xhcmF0b3Itc3RhdGUAY29uY2F0ZW5hdGUAZWxzZQBmYWxzZQBjYXNlAGlnbm9yZQBmbG93X2VuZF9vZl9ibG9ja192aXNpdF9jb3JlAHByaW50X29iamVjdF9jb3JlAGNoZWNrZWRfcmVhZF9vYmplY3RfY29yZQBtYWtlX29iamVjdF9wdHJfY29yZQBwcmV2aW91cyBkZWNsYXJhdGlvbiBpcyBoZXJlAGFzc2lnbm1lbnQgdG8gZXhwcmVzc2lvbiB3aXRoIGFycmF5IHR5cGUAY2hhcmFjdGVyIGNvbnN0YW50IHRvbyBsb25nIGZvciBpdHMgdHlwZQBpbnRlZ2VyIGxpdGVyYWwgaXMgdG9vIGxhcmdlIHRvIGJlIHJlcHJlc2VudGVkIGluIGFueSBpbnRlZ2VyIHR5cGUAcmVxdWlyZXMgaW50ZWdlciB0eXBlAHJpZ2h0IHR5cGUgbXVzdCBiZSBhbiBpbnRlZ2VyIHR5cGUAbGVmdCB0eXBlIG11c3QgYmUgYW4gaW50ZWdlciB0eXBlAHJpZ2h0IG11c3QgYmUgaW50ZWdlciB0eXBlAGNvbmRpdGlvbiBtdXN0IGhhdmUgc2NhbGFyIHR5cGUAaW5jb21wbGV0ZSBzdHJ1Y3QvdW5pb24gdHlwZQBzdHJ1Y3QgaXMgaW5jb21wbGV0ZSB0eXBlAGludmFsaWQgdHlwZQByaWdodCB0eXBlIG11c3QgYmUgYW4gYXJpdGhtZXRpYyB0eXBlAGxlZnQgdHlwZSBtdXN0IGJlIGFuIGFyaXRobWV0aWMgdHlwZQBzaG93X3VudXNlZF9maWxlX3Njb3BlAGRlZmVyIGVuZCBvZiBzY29wZQBlbmQgb2YgJyVzJyBzY29wZQB0eXBlX2Rlc3Ryb3lfb25lAGRlZmVyX2RlZmVyX3Njb3BlX2RlbGV0ZV9vbmUAaW5saW5lAHRleHRfbGluZQBpZ25vcmVfcHJlcHJvY2Vzc29yX2xpbmUAY29udHJvbF9saW5lAGRlZmluZQBmbG93X2RlZmVyX2l0ZW1fc2V0X2VuZF9vZl9saWZldGltZQBvd25lcnNoaXAgb2YgJyVzJyBub3QgbW92ZWQgYmVmb3JlIHRoZSBlbmQgb2YgbGlmZXRpbWUAZW5kIG9mICclcycgbGlmZXRpbWUAZmluZF9tZW1iZXJfbmFtZQBwb3N0Zml4X2V4cHJlc3Npb25fdHlwZV9uYW1lAGluaXQgZGVjbGFyYXRvciBtdXN0IGhhdmUgYSBuYW1lAHN0eWxlAG1vZHVsZQB2b2xhdGlsZQB3aGlsZQB1bmV4cGVjdGVkIGVuZCBvZiBmaWxlAG9iamVjdF90b19kb3VibGUAb2JqZWN0X3RvX2xvbmdfZG91YmxlAHJlcHJvZHVjaWJsZQAtb3duZXJzaGlwPWRpc2FibGUALW51bGxhYmxlPWRpc2FibGUALW93bmVyc2hpcD1lbmFibGUAbnVsbGFibGUtdG8tbm9uLW51bGxhYmxlAHVudXNlZC12YXJpYWJsZQAtc3R5bGU9Y2FrZQBjb21waWxlcl9kaWFnbm9zdGljX21lc3NhZ2UAX19oYXNfaW5jbHVkZQAtdGVzdC1tb2RlAHV0ZjhfZGVjb2RlAG9uY2UAYW5hbHl6ZXItbnVsbC1kZXJlZmVyZW5jZQBvbmUgc3BhY2UAbm9kaXNjYXJkAGZpbGUgJXMgbm90IGZvdW5kAGZpbGUgJyVzJyBub3QgZm91bmQAZmxvd19leHByZXNzaW9uX2JpbmQAbHZhbHVlIHJlcXVpcmVkIGFzIGluY3JlbWVudCBvcGVyYW5kAGx2YWx1ZSByZXF1aXJlZCBhcyBkZWNyZW1lbnQgb3BlcmFuZABpbmRpcmVjdGlvbiByZXF1aXJlcyBwb2ludGVyIG9wZXJhbmQAbHZhbHVlIHJlcXVpcmVkIGFzIHVuYXJ5ICcmJyBvcGVyYW5kAGV4cGFuZAAlbGxkACVsZAB2b2lkAGFuYWx5emVyLW1heWJlLXVuaW5pdGlhbGl6ZWQAb2JqZWN0IGlzIHBvc3NpYmx5IHVuaW5pdGlhbGl6ZWQAY29uc3Qgb2JqZWN0IHNob3VsZCBiZSBpbml0aWFsaXplZABvYmplY3QgJyVzJyB3YXMgbm90IG1vdmVkL2Rlc3Ryb3llZABvYmplY3QgbWF5IGJlIGFscmVhZHkgbW92ZWQAc291cmNlIG9iamVjdCBoYXMgYWxyZWFkeSBiZWVuIG1vdmVkAGFkZHJlc3Mgb2YgcmVnaXN0ZXIgdmFyaWFibGUgJ3gnIHJlcXVlc3RlZABwX3NpZ25lZF9wcm9tb3RlZCAhPSBwX3Vuc2lnbmVkX3Byb21vdGVkAHVuZXhwZWN0ZWQAdHlwZSBzcGVjaWZpZXIgb3IgcXVhbGlmaWVyIGV4cGVjdGVkACclcycgaXMgZGVwcmVjYXRlZABtYXliZV91bnVzZWQAbWFya19tYWNyb3NfYXNfdXNlZABkZWNsYXJhdG9yICclcycgbm90IHVzZWQAaWdub3JlZABzdHJ1Y3R1cmUgb3IgdW5pb24gcmVxdWlyZWQAZGVmaW5lZABpbnRlZ2VyIGxpdGVyYWwgaXMgdG9vIGxhcmdlIHRvIGJlIHJlcHJlc2VudGVkIGluIGEgc2lnbmVkIGludGVnZXIgdHlwZSwgaW50ZXJwcmV0aW5nIGFzIHVuc2lnbmVkAHN0YXRpY19hc3NlcnQgZmFpbGVkAHByYWdtYSBjaGVjayBmYWlsZWQAc3RhdGljX3N0YXRlIGZhaWxlZAAtbnVsbGFibGU9ZW5hYmxlZABtZXJnZWQAbGlmZXRpbWUtZW5kZWQAb2JqZWN0IGxpZmV0aW1lIGVuZGVkAHVuc2VxdWVuY2VkAG9iamVjdF9nZXRfbm9uX2NvbnN0X3JlZmVyZW5jZWQAb2JqZWN0X2dldF9yZWZlcmVuY2VkAHRva2VuIHNsaWNlZABfX2hhc19lbWJlZABhcmd1bWVudF9saXN0X2FkZABlbnVtZXJhdG9yX2xpc3RfYWRkAGluaXRfZGVjbGFyYXRvcl9saXN0X2FkZABtZW1iZXJfZGVjbGFyYXRvcl9saXN0X2FkZABkZXNpZ25hdG9yX2xpc3RfYWRkAGluaXRpYWxpemVyX2xpc3RfYWRkAHBhcmFtZXRlcl9saXN0X2FkZABzcGVjaWZpZXJfcXVhbGlmaWVyX2xpc3RfYWRkAHR5cGVfcXVhbGlmaWVyX2xpc3RfYWRkAGRlZmVyX2xpc3RfYWRkAG1lbWJlcl9kZWNsYXJhdGlvbl9saXN0X2FkZAB0b2tlbl9saXN0X2FkZABibG9ja19pdGVtX2xpc3RfYWRkAHBhcmFtX2xpc3RfYWRkAGF0dHJpYnV0ZV9saXN0X2FkZABnZW5lcmljX2Fzc29jX2xpc3RfYWRkAGRlY2xhcmF0aW9uX3NwZWNpZmllcnNfYWRkAGluY2x1ZGVfZGlyX2FkZABhdHRyaWJ1dGVfc3BlY2lmaWVyX3NlcXVlbmNlX2FkZAAgIyUwMmQA4oaRJWQAJXMlZABfX20lZABfX2NrJWQAX19jbXBfbHRfJWQAX2Fub255bW91c19zdHJ1Y3RfJWQAX3N0cnVjdF90YWdfJWQAX2xhbWJkYV8lZABFJWQAIC0+JWQAJXMsICVkAC1mZGlhZ25vc3RpY3MtZm9ybWF0PW1zdmMAbWFsbG9jAGNhbGxvYwBkaWFnbm9zdGljAF9pc19hcml0aG1ldGljAGV4ZWN1dGVfYXJpdGhtZXRpYwBzdGF0aWMAbm8gbWF0Y2ggZm9yIGdlbmVyaWMAX0dlbmVyaWMAX0F0b21pYwBjOi9tYWluLmMAbGliLmMAJSpjACVjAGV4ZWN1dGVfcHJhZ21hAHVua25vd24gcHJhZ21hAF9fdHlwZW9mX18AX19mdW5jX18AX19WQV9PUFRfXwBfX1ZBX0FSR1NfXwBfX0NPVU5URVJfXwBfX0xJTkVfXwBfX0ZJTEVfXwAlc1slZF0AIGFyZ3VtZW50IG9mIHNpemUgWyVkXSBpcyBzbWFsbGVyIHRoYW4gcGFyYW1ldGVyIG9mIHNpemUgWyVkXQBbAGN0eC0+Y3VycmVudC0+dHlwZSA9PSBUS19LRVlXT1JEX1RSWQBUS19LRVlXT1JEX19JTUFHSU5BUlkAVEtfS0VZV09SRF9JU19BUlJBWQBUS19LRVlXT1JEX1NUQVRJQ19ERUJVR19FWABUS19LRVlXT1JEX19DT01QTEVYAFRLX0FSUk9XAFRLX0tFWVdPUkRfVEhST1cAVEtfS0VZV09SRF9fVklFVwBVAFRLX0tFWVdPUkRfX09VVABUS19LRVlXT1JEX0lTX0NPTlNUAFRLX0tFWVdPUkRfQ09OU1QAVEtfS0VZV09SRF9TSE9SVABUS19LRVlXT1JEX0FTU0VSVABUS19LRVlXT1JEX19TVEFUSUNfQVNTRVJUAFRLX0tFWVdPUkRfX09QVABUS19LRVlXT1JEX0lOVABUS19LRVlXT1JEX19CSVRJTlQAVEtfS0VZV09SRF9JU19GTE9BVElOR19QT0lOVABUS19DT01NRU5UAFRLX0xJTkVfQ09NTUVOVABUS19DSVJDVU1GTEVYX0FDQ0VOVABUS19HUkFWRV9BQ0NFTlQAVEtfQ09NUElMRVJfQklOQVJZX0NPTlNUQU5UAFRLX0NIQVJfQ09OU1RBTlQAVEtfQ09NUElMRVJfT0NUQUxfQ09OU1RBTlQAVEtfQ09NUElMRVJfREVDSU1BTF9DT05TVEFOVABUS19DT01QSUxFUl9IRVhBREVDSU1BTF9DT05TVEFOVABUS19DT01QSUxFUl9ERUNJTUFMX0ZMT0FUSU5HX0NPTlNUQU5UAFRLX0NPTVBJTEVSX0hFWEFERUNJTUFMX0ZMT0FUSU5HX0NPTlNUQU5UAFRLX0tFWVdPUkRfREVGQVVMVABUS19TSElGVFJJR0hUAFRLX1NISUZUTEVGVABUS19LRVlXT1JEX1NUQVRJQ19TRVQAVEtfUklHSFRfQ1VSTFlfQlJBQ0tFVABUS19MRUZUX0NVUkxZX0JSQUNLRVQAVEtfUklHSFRfU1FVQVJFX0JSQUNLRVQAVEtfTEVGVF9TUVVBUkVfQlJBQ0tFVABUS19LRVlXT1JEX1NUUlVDVABUS19LRVlXT1JEX1JFU1RSSUNUAFRLX0NPTU1FUkNJQUxfQVQAVEtfS0VZV09SRF9GTE9BVABUS19IWVBIRU5fTUlOVVMAVEtfTUlOVVNNSU5VUwBUS19QTFVTUExVUwBUS19TT0xJRFVTAFRLX1JFVkVSU0VfU09MSURVUwBUS19CTEFOS1MAVEtfUklHSFRfUEFSRU5USEVTSVMAVEtfTEVGVF9QQVJFTlRIRVNJUwBUS19LRVlXT1JEX19BTElHTkFTAFRLX0tFWVdPUkRfTlVMTFBUUgBUS19LRVlXT1JEX0NPTlNURVhQUgBUS19MT0dJQ0FMX09QRVJBVE9SX09SAFRLX01BQ1JPX0NPTkNBVEVOQVRFX09QRVJBVE9SAHBfaXRlcmF0aW9uX3N0YXRlbWVudC0+Zmlyc3RfdG9rZW4tPnR5cGUgPT0gVEtfS0VZV09SRF9GT1IAVEtfS0VZV09SRF9SRUdJU1RFUgBUS19LRVlXT1JEX0lTX1BPSU5URVIAVEtfS0VZV09SRF9fT1dORVIAVEtfS0VZV09SRF9JU19PV05FUgBUS19LRVlXT1JEX19PQkpfT1dORVIAVEtfUExBQ0VNQVJLRVIAaW5wdXRfbGlzdC0+aGVhZC0+dHlwZSA9PSBUS19JREVOVElGSUVSAFRLX0tFWVdPUkRfREVGRVIAVEtfUFBOVU1CRVIAVEtfS0VZV09SRF9JU19TQ0FMQVIAVEtfS0VZV09SRF9DSEFSAFRLX0ZVTExfU1RPUABUS19LRVlXT1JEX0FVVE8AVEtfS0VZV09SRF9HT1RPAFRLX0lERU5USUZJRVJfUkVDVVJTSVZFX01BQ1JPAHBfaXRlcmF0aW9uX3N0YXRlbWVudC0+Zmlyc3RfdG9rZW4tPnR5cGUgPT0gVEtfS0VZV09SRF9ETwBUS19LRVlXT1JEX1JFVFVSTgBUS19LRVlXT1JEX19OT1JFVFVSTgBUS19LRVlXT1JEX0VYVEVSTgBUS19DT0xPTgBUS19TRU1JQ09MT04AVEtfS0VZV09SRF9JU19GVU5DVElPTgBUS19LRVlXT1JEX1VOSU9OAFRLX1BFUkNFTlRfU0lHTgBUS19QTFVTX1NJR04AVEtfRVFVQUxTX1NJR04AVEtfTlVNQkVSX1NJR04AVEtfRE9MTEFSX1NJR04AVEtfTEVTU19USEFOX1NJR04AVEtfR1JFQVRFUl9USEFOX1NJR04AQU5ZX09USEVSX1BQX1RPS0VOAE5BTgBUS19LRVlXT1JEX0VOVU0AVEtfS0VZV09SRF9fQVNNAFVMAFRLX0tFWVdPUkRfX0JPT0wAcF9kZWNsYXJhdGlvbi0+ZnVuY3Rpb25fYm9keSA9PSBOVUxMAHBuZXctPnByZXYgPT0gTlVMTABwbmV3LT5uZXh0ID09IE5VTEwAcC0+cF9kZWZhdWx0LT5uZXh0ID09IE5VTEwAaXQtPm5leHQgPT0gTlVMTABwX29iamVjdC0+bmV4dCA9PSBOVUxMAHBfbGFzdF9wYXJhbWV0ZXItPm5leHQgPT0gTlVMTABwLT50eXBlX3F1YWxpZmllci0+bmV4dCA9PSBOVUxMAHAtPm5leHQgPT0gTlVMTAB0eXBlX2xpc3QtPnRhaWwtPm5leHQgPT0gTlVMTABkZXN0LT50YWlsLT5uZXh0ID09IE5VTEwAc291cmNlLT50YWlsLT5uZXh0ID09IE5VTEwAbGlzdC50YWlsLT5uZXh0ID09IE5VTEwAbmV3X2Jvb2stPm5leHQgPT0gTlVMTABwX3R5cGUtPm5leHQgPT0gTlVMTABwX2VudW1lcmF0b3ItPmNvbnN0YW50X2V4cHJlc3Npb25fb3B0ID09IE5VTEwAcF90cnlfc3RhdGVtZW50LT5jYXRjaF9zZWNvbmRhcnlfYmxvY2tfb3B0ID09IE5VTEwAcF9zZWxlY3Rpb25fc3RhdGVtZW50LT5lbHNlX3NlY29uZGFyeV9ibG9ja19vcHQgPT0gTlVMTAB0Lm5hbWVfb3B0ID09IE5VTEwAcF9kZWNsYXJhdGlvbl9zcGVjaWZpZXJzLT5wX2F0dHJpYnV0ZV9zcGVjaWZpZXJfc2VxdWVuY2Vfb3B0ID09IE5VTEwAcF9hcmd1bWVudCA9PSBOVUxMAHBfZXhwcmVzc2lvbi0+cmlnaHQgPT0gTlVMTABwX2V4cHJlc3Npb24tPmxlZnQgPT0gTlVMTABwX2Jsb2NrLT5wcmV2aW91cyA9PSBOVUxMAG1hY3JvLT5wYXJhbWV0ZXJzID09IE5VTEwAcF9vYmplY3QtPm1lbWJlcnMgPT0gTlVMTAB0by0+bWVtYmVycyA9PSBOVUxMAGEtPm1lbWJlcnMgPT0gTlVMTABwX2luaXRfZGVjbGFyYXRvci0+aW5pdGlhbGl6ZXIgPT0gTlVMTABuZXdfZXhwcmVzc2lvbiA9PSBOVUxMAGxpc3QtPnRhaWwgPT0gTlVMTAByMi50YWlsID09IE5VTEwAcF9zZWxlY3Rpb25fc3RhdGVtZW50LT5zZWNvbmRhcnlfYmxvY2sgPT0gTlVMTABjdHgtPnRhaWxfYmxvY2sgPT0gTlVMTABwLT50YWlsX2Jsb2NrID09IE5VTEwAY3R4LT5wX3JldHVybl90eXBlID09IE5VTEwAcF9vYmplY3QtPmRlYnVnX25hbWUgPT0gTlVMTABwX2V4cHJlc3Npb25fbm9kZS0+dHlwZV9uYW1lID09IE5VTEwAbWFjcm8tPm5hbWUgPT0gTlVMTABtYXAtPnRhYmxlID09IE5VTEwAcF9leHByZXNzaW9uX25vZGUgPT0gTlVMTABwX3NwZWNpZmllcl9xdWFsaWZpZXJfbGlzdC0+cF9hdHRyaWJ1dGVfc3BlY2lmaWVyX3NlcXVlbmNlID09IE5VTEwAdHlwZV9saXN0LT5oZWFkID09IE5VTEwAbWFjcm8tPnJlcGxhY2VtZW50X2xpc3QuaGVhZCA9PSBOVUxMAHIyLmhlYWQgPT0gTlVMTABmaW5kX21hY3JvKGN0eCwgaW5wdXRfbGlzdC0+aGVhZC0+bGV4ZW1lKSA9PSBOVUxMAHBlbnRyeS0+ZGF0YS5wX3N0cnVjdF9lbnRyeSAhPSBOVUxMAHBfZGVjbGFyYXRpb24tPmZ1bmN0aW9uX2JvZHkgIT0gTlVMTABsaXN0LT50YWlsLT5wcmV2ICE9IE5VTEwAcF90eXBlLT5uZXh0ICE9IE5VTEwAcF9sYXN0ICE9IE5VTEwAcF9zZWxlY3Rpb25fc3RhdGVtZW50LT5jb25kaXRpb24tPnBfaW5pdF9kZWNsYXJhdG9yLT5wX2RlY2xhcmF0b3ItPmZpcnN0X3Rva2VuX29wdCAhPSBOVUxMAGN0eC0+cF9jdXJyZW50X2Z1bmN0aW9uX29wdC0+aW5pdF9kZWNsYXJhdG9yX2xpc3QuaGVhZC0+cF9kZWNsYXJhdG9yLT5uYW1lX29wdCAhPSBOVUxMAHBfcGFyYW1ldGVyX2RlY2xhcmF0aW9uLT5kZWNsYXJhdG9yLT5uYW1lX29wdCAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+ZGVjbGFyYXRvci0+bmFtZV9vcHQgIT0gTlVMTABjdHgtPmN1cnJlbnQgIT0gTlVMTABwX2V4cHJlc3Npb24tPmNvbXBvdW5kX3N0YXRlbWVudCAhPSBOVUxMAHBfc2Vjb25kYXJ5X2Jsb2NrLT5zdGF0ZW1lbnQgIT0gTlVMTABuZXdfZXhwcmVzc2lvbi0+cmlnaHQgIT0gTlVMTABwX2V4cHJlc3Npb24tPnJpZ2h0ICE9IE5VTEwAcF9leHByZXNzaW9uLT5sZWZ0ICE9IE5VTEwAcF9pbml0X2RlY2xhcmF0b3ItPnBfZGVjbGFyYXRvci0+cF9mbG93X29iamVjdCAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+ZGVjbGFyYXRvci0+cF9mbG93X29iamVjdCAhPSBOVUxMAGN0eC0+cHJldmlvdXMgIT0gTlVMTABwX2luaXRfZGVjbGFyYXRvci0+cF9kZWNsYXJhdG9yLT5kZWNsYXJhdGlvbl9zcGVjaWZpZXJzICE9IE5VTEwAcF9vYmplY3QtPm1lbWJlcnMgIT0gTlVMTABwcmV2aW91c19uYW1lcyAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+Y29uZGl0aW9uX2V4cHIgIT0gTlVMTABwZW50cnktPmRhdGEucF9lbnVtZXJhdG9yICE9IE5VTEwAcF9lbnRyeS0+ZGF0YS5wX2VudW1lcmF0b3IgIT0gTlVMTABwZW50cnktPmRhdGEucF9pbml0X2RlY2xhcmF0b3IgIT0gTlVMTABwX2VudHJ5LT5kYXRhLnBfaW5pdF9kZWNsYXJhdG9yICE9IE5VTEwAcF9nZW5lcmljX2Fzc29jaWF0aW9uLT5wX3R5cGVfbmFtZS0+YWJzdHJhY3RfZGVjbGFyYXRvciAhPSBOVUxMAGN0eC0+cF9jdXJyZW50X2Z1bmN0aW9uX29wdC0+aW5pdF9kZWNsYXJhdG9yX2xpc3QuaGVhZC0+cF9kZWNsYXJhdG9yICE9IE5VTEwAcGVudHJ5LT5kYXRhLnBfZGVjbGFyYXRvciAhPSBOVUxMAHBfdHlwZV9zcGVjaWZpZXItPnR5cGVkZWZfZGVjbGFyYXRvciAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+ZGVjbGFyYXRvciAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+YnJhY2VkX2luaXRpYWxpemVyICE9IE5VTEwAcF9pbml0aWFsaXplci0+aW5pdGlhbGl6ZXIgIT0gTlVMTABwZW50cnktPmRhdGEucF9zdHJ1Y3Rfb3JfdW5pb25fc3BlY2lmaWVyICE9IE5VTEwAcF9lbnRyeS0+ZGF0YS5wX3N0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTABwX3R5cGUtPnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTAB0LnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTABwX2V4cHJlc3Npb25fbm9kZV9uZXctPmxlZnQtPnR5cGUuc3RydWN0X29yX3VuaW9uX3NwZWNpZmllciAhPSBOVUxMAG1lbWJlcl9kZWNsYXJhdG9yLT5kZWNsYXJhdG9yLT50eXBlLnN0cnVjdF9vcl91bmlvbl9zcGVjaWZpZXIgIT0gTlVMTABwZW50cnktPmRhdGEucF9lbnVtX3NwZWNpZmllciAhPSBOVUxMAHBfZW50cnktPmRhdGEucF9lbnVtX3NwZWNpZmllciAhPSBOVUxMAHJpZ2h0LT50eXBlLmVudW1fc3BlY2lmaWVyICE9IE5VTEwAbGVmdC0+dHlwZS5lbnVtX3NwZWNpZmllciAhPSBOVUxMAHAgIT0gTlVMTABwZW50cnktPmRhdGEucF9tYWNybyAhPSBOVUxMAHBfc2VsZWN0aW9uX3N0YXRlbWVudC0+Y29uZGl0aW9uICE9IE5VTEwAcF9leHByZXNzaW9uLT5nZW5lcmljX3NlbGVjdGlvbiAhPSBOVUxMAHBfc3dpdGNoX3ZhbHVlLT5wX2xhYmVsLT5jb25zdGFudF9leHByZXNzaW9uICE9IE5VTEwAYS0+ZGF0YVtpXS5wX2V4cHJlc3Npb24gIT0gTlVMTABvcmlnaW4gIT0gTlVMTABwX25ld190b2tlbiAhPSBOVUxMAGxpc3QtPnRhaWwgIT0gTlVMTABkZXN0LT50YWlsICE9IE5VTEwAc291cmNlLT50YWlsICE9IE5VTEwAY3R4LT5zY29wZXMudGFpbCAhPSBOVUxMAHIudGFpbCAhPSBOVUxMAHBfanVtcF9zdGF0ZW1lbnQtPmxhYmVsICE9IE5VTEwAcF9sYWJlbGVkX3N0YXRlbWVudC0+bGFiZWwgIT0gTlVMTABwdGsgIT0gTlVMTABwX3NlbGVjdGlvbl9zdGF0ZW1lbnQtPnNlY29uZGFyeV9ibG9jayAhPSBOVUxMAGN0eC0+dGFpbF9ibG9jayAhPSBOVUxMAGN0eC0+cF9yZXR1cm5fdHlwZSAhPSBOVUxMAG91dF9zY29wZSAhPSBOVUxMAHBfZXhwcmVzc2lvbi0+dHlwZV9uYW1lICE9IE5VTEwAaXQtPnBvaW50ZWQgIT0gTlVMTABvYmplY3QtPmN1cnJlbnQucG9pbnRlZCAhPSBOVUxMAGlucHV0X2xpc3QtPmhlYWQgIT0gTlVMTABuZXdsaXN0LmhlYWQgIT0gTlVMTABjdHgtPnBfY3VycmVudF9mdW5jdGlvbl9vcHQtPmluaXRfZGVjbGFyYXRvcl9saXN0LmhlYWQgIT0gTlVMTABwX2RlY2xhcmF0aW9uLT5pbml0X2RlY2xhcmF0b3JfbGlzdC5oZWFkICE9IE5VTEwAbGlzdDQuaGVhZCAhPSBOVUxMAHAtPmRhdGEgIT0gTlVMTABwX2l0ZXJhdGlvbl9zdGF0ZW1lbnQtPmV4cHJlc3Npb24xICE9IE5VTEwAVEtfS0VZV09SRF9UWVBFT0ZfVU5RVUFMAFRLX0tFWVdPUkRfSVNfSU5URUdSQUwAVEtfU1RSSU5HX0xJVEVSQUwAVEtfS0VZV09SRF9fVEhSRUFEX0xPQ0FMAFRLX0FTVEVSSVNLAFRLX1FVRVNUSU9OX01BUksAVEtfUVVPVEFUSU9OX01BUksAVEtfRVhDTEFNQVRJT05fTUFSSwBUS19LRVlXT1JEX0JSRUFLAFRLX0tFWVdPUkRfU1dJVENIAFRLX0tFWVdPUkRfQ0FUQ0gAVEtfS0VZV09SRF9TVEFUSUNfREVCVUcAVEtfS0VZV09SRF9MT05HAFRLX0tFWVdPUkRfX0FMSUdOT0YAVEtfS0VZV09SRF9fTEVOR1RIT0YAVEtfS0VZV09SRF9TSVpFT0YAVEtfS0VZV09SRF9UWVBFT0YASU5GAGNhdGVnb3J5ID09IFRZUEVfQ0FURUdPUllfSVRTRUxGAHBfc2VsZWN0aW9uX3N0YXRlbWVudC0+Zmlyc3RfdG9rZW4tPnR5cGUgPT0gVEtfS0VZV09SRF9JRgBudWxsY2hlY2tzIHByYWdtYSBuZWVkcyB0byB1c2UgT04gT0ZGACpjID49IDB4MDgwMCAmJiAqYyA8PSAweEZGRkYAKmMgPj0gMHgxMDAwMCAmJiAqYyA8PSAweDEwRkZGRgAqYyA+PSAweDAwODAgJiYgKmMgPD0gMHgwN0ZGAFRLX0tFWVdPUkRfVFlQRURFRgAqYyA+PSAweDAwMDAgJiYgKmMgPD0gMHgwMDdGAFRLX0tFWVdPUkRfVFJVRQBUS19LRVlXT1JEX0NPTlRJTlVFAFRLX0tFWVdPUkRfSVNfTFZBTFVFAFRLX0tFWVdPUkRfU1RBVElDX1NUQVRFAFRLX0tFWVdPUkRfRUxTRQBUS19LRVlXT1JEX0ZBTFNFAFRLX0tFWVdPUkRfQ0FTRQBUS19OT05FAFRLX0ZMT1dfTElORQBUS19QUkVQUk9DRVNTT1JfTElORQBUS19WRVJUSUNBTF9MSU5FAFRLX05FV0xJTkUAVEtfS0VZV09SRF9JTkxJTkUAVEtfWF9NSVNTSU5HX05BTUUAVEtfS0VZV09SRF9WT0xBVElMRQBwX2l0ZXJhdGlvbl9zdGF0ZW1lbnQtPmZpcnN0X3Rva2VuLT50eXBlID09IFRLX0tFWVdPUkRfV0hJTEUAVEtfQkVHSU5fT0ZfRklMRQBUS19LRVlXT1JEX0RPVUJMRQBwX3Zpc2l0b3ItPnBfb2JqZWN0LT5jdXJyZW50LnN0YXRlID09IEZMT1dfT0JKRUNUX1NUQVRFX05PVF9BUFBMSUNBQkxFAENBS0UAVEtfQVBPU1RST1BIRQBUS19USUxERQBwX29iamVjdC0+c3RhdGUgIT0gQ09OU1RBTlRfVkFMVUVfU1RBVEVfUkVGRVJFTkNFAFRLX1dISVRFX1NQQUNFAC1FAFRLX1BSQUdNQV9FTkQAVEtfTE9HSUNBTF9PUEVSQVRPUl9BTkQAVEtfQU1QRVJTQU5EAFRLX0tFWVdPUkRfVk9JRABwX2V4cHJlc3Npb25fbm9kZS0+ZXhwcmVzc2lvbl90eXBlICE9IEVYUFJFU1NJT05fVFlQRV9JTlZBTElEAFRLX0tFWVdPUkRfU0lHTkVEAFRLX0tFWVdPUkRfVU5TSUdORUQAVEtfS0VZV09SRF9JU19BUklUSE1FVElDAFRLX0tFWVdPUkRfU1RBVElDAFRLX0tFWVdPUkRfX0dFTkVSSUMAVEtfS0VZV09SRF9fQVRPTUlDAFRLX0NPTU1BAFRLX1BSQUdNQQBlbXB0eSBjb250cm9sbGVkIHN0YXRlbWVudCBmb3VuZDsgaXMgdGhpcyB0aGUgaW50ZW50PwBpbmNvbXBhdGlibGUgdHlwZXM/PwA8PgAlcy0+AE5vdGU6IGluY2x1ZGluZyBmaWxlOgBjdXJyZW50ICA6AFRLX0tFWVdPUkRfX0lOVDgAX0RlY2ltYWwxMjgAVEtfS0VZV09SRF9fREVDSU1BTDEyOABfX2ludDE2AFRLX0tFWVdPUkRfX0lOVDE2AF9faW50NjQAX0RlY2ltYWw2NABUS19LRVlXT1JEX19JTlQ2NABUS19LRVlXT1JEX19ERUNJTUFMNjQALXN0ZD1jMjMAX19pbnQzMgBfRGVjaW1hbDMyAFRLX0tFWVdPUkRfX0lOVDMyAFRLX0tFWVdPUkRfX0RFQ0lNQUwzMgAxAHVzZSBOVUxMIGluc3RlYWQgb2YgMABhbGlnbiA+IDAAbGlzdC50YWlsLT5uZXh0ID09IDAAcF9pbml0X2RlY2xhcmF0b3ItPnBfZGVjbGFyYXRvci0+dHlwZS50eXBlX3NwZWNpZmllcl9mbGFncyA9PSAwAGZtdCAhPSAwAGFsaWduICE9IDAAJXMvAGNoYXJhY3RlciBub3QgZW5jb2RhYmxlIGluIGEgc2luZ2xlIGNvZGUgdW5pdC4AY2Fubm90IGFzc2lnbiBhIHRlbXBvcmFyeSBvd25lciB0byBub24tb3duZXIgb2JqZWN0LgBVbmljb2RlIGNoYXJhY3RlciBsaXRlcmFscyBtYXkgbm90IGNvbnRhaW4gbXVsdGlwbGUgY2hhcmFjdGVycy4AY29tcGFyaW5nIGRpZmZlcmVudCBlbnVtcy4AYXNzaWdubWVudCBvZiBkaWZmZXJlbnQgZW51bXMuAG9wZXJhdG9yICd8JyBiZXR3ZWVuIGVudW1lcmF0aW9ucyBvZiBkaWZmZXJlbnQgdHlwZXMuACVzLgB1c2Ugb2YgJyVzJyB3aXRoIHRhZyB0eXBlIHRoYXQgZG9lcyBub3QgbWF0Y2ggcHJldmlvdXMgZGVjbGFyYXRpb24uAHN0cnVjdCAnJXMnIGlzIGluY29tcGxldGUuAENoYXJhY3RlciB0b28gbGFyZ2UgZm9yIGVuY2xvc2luZyBjaGFyYWN0ZXIgbGl0ZXJhbCB0eXBlLgBUaGUgb2JqZWN0ICclcycgbWF5IGhhdmUgYmVlbiBkZWxldGVkIG9yIGl0cyBsaWZldGltZSBoYXZlIGVuZGVkLgAuLi4AaW50ZWdlciBvdmVyZmxvdyByZXN1bHRzIGluICclZGxsJy4AaW50ZWdlciBvdmVyZmxvdyByZXN1bHRzIGluICclZCcuIEV4YWN0bHkgcmVzdWx0IGlzICclbGxkJy4ALS0AaW52YWxpZCB0eXBlcyBmb3Igb3BlcmF0b3IgLQAsACsrACoAIXRva2VuX2xpc3RfaXNfZW1wdHkobGlzdCkAKGN1cnJlbnQpACglcykAJXMgKGVudW0gJXMsIGVudW0gJXMpACgjJTAyZCAlcykAcF9leHByZXNzaW9uX25vZGUgPT0gTlVMTCB8fCAocF9leHByZXNzaW9uX25vZGUtPmZpcnN0X3Rva2VuICYmIHBfZXhwcmVzc2lvbl9ub2RlLT5sYXN0X3Rva2VuKQAobnVsbCkAci50YWlsID09IE5VTEwgfHwgIXRva2VuX2lzX2JsYW5rKHIudGFpbCkAbWlzc2luZyBtYWNybyBhcmd1bWVudCAoc2hvdWxkIGJlIGNoZWNrZWQgYmVmb3JlKQB0eXBlX2lzX2FycmF5KHBfdHlwZSkAdHlwZV9pc19wb2ludGVyX29yX2FycmF5KHBfdHlwZSkAIW1hY3JvX2FscmVhZHlfZXhwYW5kZWQocF9saXN0X29mX21hY3JvX2V4cGFuZGVkX29wdCwgbWFjcm8tPm5hbWUpACF0b2tlbl9pc19ibGFuayhpbnB1dF9saXN0LT5oZWFkKQAhdG9rZW5faXNfYmxhbmsobmV3X2xpc3QuaGVhZCkAYXNzZXJ0KF9fVkFfQVJHU19fKQAocC0+aGVhZCA9PSBOVUxMICYmIHAtPnRhaWwgPT0gTlVMTCkgfHwgKHAtPmhlYWQgIT0gTlVMTCAmJiBwLT50YWlsICE9IE5VTEwpACEoaW5wdXRfbGlzdC0+aGVhZC0+ZmxhZ3MgJiBUS19GTEFHX0hBU19ORVdMSU5FX0JFRk9SRSkAIShuZXdfbGlzdC5oZWFkLT5mbGFncyAmIFRLX0ZMQUdfSEFTX05FV0xJTkVfQkVGT1JFKQAhdG9rZW5fbGlzdF9pc19lbXB0eSgmbGlzdDIpAG1pc3NpbmcgKQBleHBlY3RlZCApAGZvciAoAHN3aXRjaCAoAGlmICgAd2hpbGUgKAAnJSc6IG5vdCB2YWxpZCBhcyBsZWZ0IG9wZXJhbmQgaGFzIHR5cGUgJ2Zsb2F0JwBleHBlY3RlZCBkZWNsYXJhdGlvbiBub3QgJyVzJwBtZW1iZXIgJyVzJyBub3QgZm91bmQgaW4gc3RydWN0ICclcycAdXNpbmcgYSB1bmluaXRpYWxpemVkIG9iamVjdCAnJXMnAHVua25vd24gb3B0aW9uICclcycAbWVtYmVyICclcycgbm90IGZvdW5kIGluICclcycAdW5rbm93biB3YXJuaW5nICclcycAaW5jb21wbGV0ZSBzdHJ1Y3QgdHlwZSAnJXMnAGludmFsaWQgdHlwZSAnJXMnAG5vdCBmb3VuZCAnJXMnAGxpZmV0aW1lIGVuZGVkICclcycAZGlyID0gJyVzJwBtZW1iZXIgJyVzJyBub3QgZm91bmQgaW4gJ3N0cnVjdCAlcycAY2FzZSB2YWx1ZSAnJWxsZCcgbm90IGluIGVudW1lcmF0ZWQgdHlwZSAnZW51bSAlcycAaW1wbGljaXQgY29udmVyc2lvbiBvZiBudWxscHRyIGNvbnN0YW50IHRvICdib29sJwBkdXBsaWNhdGUgY2FzZSB2YWx1ZSAnJWxsZCcAd25hbWVbMF0gPT0gJy0nAGV4cGVjdGVkICd9JyBiZWZvcmUgJyknAGV4cGVjdGVkICddJyBiZWZvcmUgJyknAHBfZXhwcmVzc2lvbl9ub2RlLT5maXJzdF90b2tlbi0+dHlwZSA9PSAnKCcAJgB5b3UgY2FuIHVzZSAiYWRqYWNlbnQiICJzdHJpbmdzIgAiemVybyIAXCIAIQAgfHwgACB8IABpbnQgACBkaXNjYXJkaW5nIGNvbnN0IGF0IGFyZ3VtZW50IAAgaW5jb21wYXRpYmxlIHR5cGVzIAB1bnNpZ25lZCBjaGFyIABleHRlcm4gAGVudW0gAGNhc2UgAGlnbm9yaW5nIHRoZSByZXN1bHQgb2YgX093bmVyIHR5cGUgAF9faW5saW5lIABvYmplY3QgJyVzJyBjYW4gYmUgdW5pbml0aWFsaXplZCAAJTJkOiUyZCAAc3RhdGljIAAgXiAAID8gACA+PiAAIC0+IAAgPiAAID49IAAlcDolcyA9PSAAIyUwMmQgJXMgPT0gACA8PSAAICE9IAAlcyVzID0gACA8PCAAIDwgADsgAGVycm9yOiAAd2FybmluZzogAG5vdGU6IAAbWzk3bSVzOiVkOiVkOiAAJXMoJWQsJWQpOiAAIDogACAvIABpbnRlZ2VyIG92ZXJmbG93IHJlc3VsdHMgaW4gJyVkbGwnLiAAIC0gAG1lbXNldCglcyVzLCAAbWVtc2V0KCVzLCAAICsgACAqIAAgJiYgACAmIAAgJSAAICAgIAAgICAgICAgICAgICAgICB9CgAjJTAyZCB7CgAgICAgICAgICAgICAgImFydGlmYWN0TG9jYXRpb24iOiB7CgAgICAgICAgInBoeXNpY2FsTG9jYXRpb24iOiB7CgAgICAgICAgICAgICAgICJyZWdpb24iOiB7CgAgICAgICJtZXNzYWdlIjogewoAICAgICAgICAgIHsKABtbOTFtZXJyb3I6IBtbOTdtJXMKABtbOTVtd2FybmluZzogG1s5N20lcwoAG1szNjsxbW5vdGU6IBtbOTdtJXMKAGV4cGVjdGVkIDolcwoAZXhwZWN0ZWQgdG9rZW4gJXMgZ290ICVzCgBpbmxpbmUgJXMKAHN0YXRpY19hc3NlcnQgZmFpbGVkICVzCgBlcnJvcjogJXMKAHdhcm5pbmc6ICVzCgBub3RlOiAlcwoAZG8KAHRvbyBtYW55IGFyZ3VtZW50cyBwcm92aWRlZCB0byBmdW5jdGlvbi1saWtlIG1hY3JvIGludm9jYXRpb24KAHRvbyBmZXcgYXJndW1lbnRzIHByb3ZpZGVkIHRvIGZ1bmN0aW9uLWxpa2UgbWFjcm8gaW52b2NhdGlvbgoAG1s5N21DYWtlIDAuOS41MRtbMG0KAGVsc2UKACAgICAgICAgICAgICAgICAgICJlbmRDb2x1bW4iOiAlZAoAG1s5N21jYWtlICVzIG1haW4uYwoAIFslc10KACAgICAgICAgIF0KACAgICAgICJsb2NhdGlvbnMiOiBbCgAgICAgICAgICAibG9naWNhbExvY2F0aW9ucyI6IFsKAHswfTsKAGdvdG8gJXM7CgByZXR1cm4gJXM7CgBicmVhazsKAGNvbnRpbnVlOwoAZ290byBfY2F0Y2hfbGFiZWxfJWQ7CgAlcyVzID0gMDsKAF96bWVtKCYlcywgJWQpOwoAZGVmYXVsdDoKACVzOgoAZWxzZSBfY2F0Y2hfbGFiZWxfJWQ6CgAgOgoAICAgICAgICAgICAgICB9LAoAICAgICAgICAgICAgICAgICAgInN0YXJ0Q29sdW1uIjogJWQsCgAgICAgICAgICAgICAgICAgICAic3RhcnRMaW5lIjogJWQsCgAgICAgICAgICAgICAgICAgICAiZW5kTGluZSI6ICVkLAoAICAgICAicnVsZUlkIjoiJXMiLAoAICAgICAgICAgICAgICAiZGVjb3JhdGVkTmFtZSI6ICIlcyIsCgAgICAgICAgICAgICAgICJmdWxseVF1YWxpZmllZE5hbWUiOiAiJXMiLAoAICAgICAibGV2ZWwiOiJlcnJvciIsCgAgICAgICJsZXZlbCI6Indhcm5pbmciLAoAICAgICAibGV2ZWwiOiJub3RlIiwKACAgICwKAGlmICgxKQoAICAgICAgICAgICAgICAgICAidXJpIjogImZpbGU6Ly8vJXMiCgAgICAgICAgICAgICAidGV4dCI6ICIlcyIKACAgICAgICAgICAgICAgImtpbmQiOiAiJXMiCgAjZGVmaW5lIF9fVElNRV9fICIlMDJkOiUwMmQ6JTAyZCIKACNkZWZpbmUgX19EQVRFX18gIiVzICUyZCAlZCIKAGV4cGVjdGVkIEVPRiAKAHN0YXRpYyB2b2lkICptZW1zZXQodm9pZCAqZGVzdCwgaW50IGMsIHVuc2lnbmVkIGxvbmcgbG9uZyBuKQp7CiAgcmVnaXN0ZXIgdW5zaWduZWQgY2hhciAqcyA9IGRlc3Q7CiAgZm9yICg7IG47IG4tLSwgcysrKSAqcyA9IGM7Cn0KCgBzdGF0aWMgdm9pZCBfem1lbSh2b2lkICpkZXN0LCByZWdpc3RlciB1bnNpZ25lZCBpbnQgbGVuKQp7CiAgcmVnaXN0ZXIgdW5zaWduZWQgY2hhciAqcHRyID0gKHVuc2lnbmVkIGNoYXIqKWRlc3Q7CiAgd2hpbGUgKGxlbi0tID4gMCkgKnB0cisrID0gMDsKfQoKAH07CgoAI2RlZmluZSBfX0NBS0VfXyAyMDIzMTFMCiNkZWZpbmUgX19TVERDX1ZFUlNJT05fXyAyMDIzMTFMCiNkZWZpbmUgX19GSUxFX18gIl9fRklMRV9fIgojZGVmaW5lIF9fTElORV9fIDAKI2RlZmluZSBfX0NPVU5URVJfXyAwCiNkZWZpbmUgX0NPTlNPTEUKI2RlZmluZSBfX1NURENfT1dORVJTSElQX18gMQojZGVmaW5lIF9fU1REQ19IT1NURURfXyAxCiNkZWZpbmUgX19TVERDX05PX0FUT01JQ1NfXyBfX1NURENfTk9fQVRPTUlDU19fCiNkZWZpbmUgX19TVERDX05PX0NPTVBMRVhfXyAgX19TVERDX05PX0NPTVBMRVhfXwojZGVmaW5lIF9fU1REQ19OT19USFJFQURTX18gICBfX1NURENfTk9fVEhSRUFEU19fCiNkZWZpbmUgX19TVERDX05PX1ZMQV9fICAgIF9fU1REQ19OT19WTEFfXwojcHJhZ21hIGRpciAiYzovIgoKAAAAAAAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgojcHJhZ21hIG9uY2UKCiNkZWZpbmUgV0NIQVJfTUlOIDB4MDAwMAojZGVmaW5lIFdDSEFSX01BWCAweGZmZmYKCnR5cGVkZWYgbG9uZyB1bnNpZ25lZCBpbnQgc2l6ZV90Owp0eXBlZGVmIGludCB3Y2hhcl90OwoKdHlwZWRlZiBzdHJ1Y3QKewogICAgaW50IF9fY291bnQ7CiAgICB1bmlvbgogICAgewogICAgICAgIHVuc2lnbmVkIGludCBfX3djaDsKICAgICAgICBjaGFyIF9fd2NoYls0XTsKICAgIH0gX192YWx1ZTsKfSBfX21ic3RhdGVfdDsKCnR5cGVkZWYgX19tYnN0YXRlX3QgbWJzdGF0ZV90OwpzdHJ1Y3QgX0lPX0ZJTEU7CnR5cGVkZWYgc3RydWN0IF9JT19GSUxFIF9fRklMRTsKc3RydWN0IF9JT19GSUxFOwp0eXBlZGVmIHN0cnVjdCBfSU9fRklMRSBGSUxFOwpzdHJ1Y3QgX19sb2NhbGVfc3RydWN0CnsKCiAgICBzdHJ1Y3QgX19sb2NhbGVfZGF0YSogX19sb2NhbGVzWzEzXTsKCiAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBpbnQqIF9fY3R5cGVfYjsKICAgIGNvbnN0IGludCogX19jdHlwZV90b2xvd2VyOwogICAgY29uc3QgaW50KiBfX2N0eXBlX3RvdXBwZXI7CgogICAgY29uc3QgY2hhciogX19uYW1lc1sxM107Cn07Cgp0eXBlZGVmIHN0cnVjdCBfX2xvY2FsZV9zdHJ1Y3QqIF9fbG9jYWxlX3Q7Cgp0eXBlZGVmIF9fbG9jYWxlX3QgbG9jYWxlX3Q7CgpzdHJ1Y3QgdG07CgpleHRlcm4gd2NoYXJfdCogd2NzY3B5KHdjaGFyX3QqIF9fcmVzdHJpY3QgX19kZXN0LAogICBjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fc3JjKTsKCmV4dGVybiB3Y2hhcl90KiB3Y3NuY3B5KHdjaGFyX3QqIF9fcmVzdHJpY3QgX19kZXN0LAogICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX3NyYywgc2l6ZV90IF9fbik7CgpleHRlcm4gd2NoYXJfdCogd2NzY2F0KHdjaGFyX3QqIF9fcmVzdHJpY3QgX19kZXN0LAogICBjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fc3JjKTsKCmV4dGVybiB3Y2hhcl90KiB3Y3NuY2F0KHdjaGFyX3QqIF9fcmVzdHJpY3QgX19kZXN0LAogICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX3NyYywgc2l6ZV90IF9fbik7CgpleHRlcm4gaW50IHdjc2NtcChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyKTsKCmV4dGVybiBpbnQgd2NzbmNtcChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyLCBzaXplX3QgX19uKTsKCmV4dGVybiBpbnQgd2NzY2FzZWNtcChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyKTsKCmV4dGVybiBpbnQgd2NzbmNhc2VjbXAoY29uc3Qgd2NoYXJfdCogX19zMSwgY29uc3Qgd2NoYXJfdCogX19zMiwKICAgc2l6ZV90IF9fbik7CgpleHRlcm4gaW50IHdjc2Nhc2VjbXBfbChjb25zdCB3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyLAogICAgbG9jYWxlX3QgX19sb2MpOwoKZXh0ZXJuIGludCB3Y3NuY2FzZWNtcF9sKGNvbnN0IHdjaGFyX3QqIF9fczEsIGNvbnN0IHdjaGFyX3QqIF9fczIsCiAgICAgc2l6ZV90IF9fbiwgbG9jYWxlX3QgX19sb2MpOwoKZXh0ZXJuIGludCB3Y3Njb2xsKGNvbnN0IHdjaGFyX3QqIF9fczEsIGNvbnN0IHdjaGFyX3QqIF9fczIpOwoKZXh0ZXJuIHNpemVfdCB3Y3N4ZnJtKHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zMSwKICAgICAgICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX3MyLCBzaXplX3QgX19uKTsKCmV4dGVybiBpbnQgd2NzY29sbF9sKGNvbnN0IHdjaGFyX3QqIF9fczEsIGNvbnN0IHdjaGFyX3QqIF9fczIsCiAgICAgICAgbG9jYWxlX3QgX19sb2MpOwoKZXh0ZXJuIHNpemVfdCB3Y3N4ZnJtX2wod2NoYXJfdCogX19zMSwgY29uc3Qgd2NoYXJfdCogX19zMiwKICAgIHNpemVfdCBfX24sIGxvY2FsZV90IF9fbG9jKTsKCmV4dGVybiB3Y2hhcl90KiB3Y3NkdXAoY29uc3Qgd2NoYXJfdCogX19zKTsKZXh0ZXJuIHdjaGFyX3QqIHdjc2Nocihjb25zdCB3Y2hhcl90KiBfX3djcywgd2NoYXJfdCBfX3djKTsKZXh0ZXJuIHdjaGFyX3QqIHdjc3JjaHIoY29uc3Qgd2NoYXJfdCogX193Y3MsIHdjaGFyX3QgX193Yyk7CmV4dGVybiBzaXplX3Qgd2NzY3Nwbihjb25zdCB3Y2hhcl90KiBfX3djcywgY29uc3Qgd2NoYXJfdCogX19yZWplY3QpOwoKZXh0ZXJuIHNpemVfdCB3Y3NzcG4oY29uc3Qgd2NoYXJfdCogX193Y3MsIGNvbnN0IHdjaGFyX3QqIF9fYWNjZXB0KTsKZXh0ZXJuIHdjaGFyX3QqIHdjc3BicmsoY29uc3Qgd2NoYXJfdCogX193Y3MsIGNvbnN0IHdjaGFyX3QqIF9fYWNjZXB0KTsKZXh0ZXJuIHdjaGFyX3QqIHdjc3N0cihjb25zdCB3Y2hhcl90KiBfX2hheXN0YWNrLCBjb25zdCB3Y2hhcl90KiBfX25lZWRsZSk7CgpleHRlcm4gd2NoYXJfdCogd2NzdG9rKHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zLAogICBjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZGVsaW0sCiAgIHdjaGFyX3QqKiBfX3Jlc3RyaWN0IF9fcHRyKTsKCmV4dGVybiBzaXplX3Qgd2NzbGVuKGNvbnN0IHdjaGFyX3QqIF9fcyk7CmV4dGVybiBzaXplX3Qgd2Nzbmxlbihjb25zdCB3Y2hhcl90KiBfX3MsIHNpemVfdCBfX21heGxlbik7CmV4dGVybiB3Y2hhcl90KiB3bWVtY2hyKGNvbnN0IHdjaGFyX3QqIF9fcywgd2NoYXJfdCBfX2MsIHNpemVfdCBfX24pOwoKZXh0ZXJuIGludCB3bWVtY21wKGNvbnN0IHdjaGFyX3QqIF9fczEsIGNvbnN0IHdjaGFyX3QqIF9fczIsIHNpemVfdCBfX24pOwoKZXh0ZXJuIHdjaGFyX3QqIHdtZW1jcHkod2NoYXJfdCogX19yZXN0cmljdCBfX3MxLAogICAgY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX3MyLCBzaXplX3QgX19uKTsKCmV4dGVybiB3Y2hhcl90KiB3bWVtbW92ZSh3Y2hhcl90KiBfX3MxLCBjb25zdCB3Y2hhcl90KiBfX3MyLCBzaXplX3QgX19uKTsKCmV4dGVybiB3Y2hhcl90KiB3bWVtc2V0KHdjaGFyX3QqIF9fcywgd2NoYXJfdCBfX2MsIHNpemVfdCBfX24pOwpleHRlcm4gd2ludF90IGJ0b3djKGludCBfX2MpOwoKZXh0ZXJuIGludCB3Y3RvYih3aW50X3QgX19jKTsKCmV4dGVybiBpbnQgbWJzaW5pdChjb25zdCBtYnN0YXRlX3QqIF9fcHMpOwoKZXh0ZXJuIHNpemVfdCBtYnJ0b3djKHdjaGFyX3QqIF9fcmVzdHJpY3QgX19wd2MsCiAgICAgICAgIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QgX19zLCBzaXplX3QgX19uLAogICAgICAgICBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wKTsKCmV4dGVybiBzaXplX3Qgd2NydG9tYihjaGFyKiBfX3Jlc3RyaWN0IF9fcywgd2NoYXJfdCBfX3djLAogICAgICAgICBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wcyk7CgpleHRlcm4gc2l6ZV90IF9fbWJybGVuKGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QgX19zLCBzaXplX3QgX19uLAogICBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wcyk7CmV4dGVybiBzaXplX3QgbWJybGVuKGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QgX19zLCBzaXplX3QgX19uLAogICAgICAgIG1ic3RhdGVfdCogX19yZXN0cmljdCBfX3BzKTsKZXh0ZXJuIHNpemVfdCBtYnNydG93Y3Mod2NoYXJfdCogX19yZXN0cmljdCBfX2RzdCwKICAgIGNvbnN0IGNoYXIqKiBfX3Jlc3RyaWN0IF9fc3JjLCBzaXplX3QgX19sZW4sCiAgICBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wcyk7CgpleHRlcm4gc2l6ZV90IHdjc3J0b21icyhjaGFyKiBfX3Jlc3RyaWN0IF9fZHN0LAogICAgY29uc3Qgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19zcmMsIHNpemVfdCBfX2xlbiwKICAgIG1ic3RhdGVfdCogX19yZXN0cmljdCBfX3BzKTsKCmV4dGVybiBzaXplX3QgbWJzbnJ0b3djcyh3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZHN0LAogICAgIGNvbnN0IGNoYXIqKiBfX3Jlc3RyaWN0IF9fc3JjLCBzaXplX3QgX19ubWMsCiAgICAgc2l6ZV90IF9fbGVuLCBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wcyk7CgpleHRlcm4gc2l6ZV90IHdjc25ydG9tYnMoY2hhciogX19yZXN0cmljdCBfX2RzdCwKICAgICBjb25zdCB3Y2hhcl90KiogX19yZXN0cmljdCBfX3NyYywKICAgICBzaXplX3QgX19ud2MsIHNpemVfdCBfX2xlbiwKICAgICBtYnN0YXRlX3QqIF9fcmVzdHJpY3QgX19wcyk7CmV4dGVybiBkb3VibGUgd2NzdG9kKGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19ucHRyLAogICAgICAgIHdjaGFyX3QqKiBfX3Jlc3RyaWN0IF9fZW5kcHRyKTsKCmV4dGVybiBmbG9hdCB3Y3N0b2YoY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX25wdHIsCiAgICAgICB3Y2hhcl90KiogX19yZXN0cmljdCBfX2VuZHB0cik7CmV4dGVybiBsb25nIGRvdWJsZSB3Y3N0b2xkKGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19ucHRyLAogICAgICAgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19lbmRwdHIpOwpleHRlcm4gbG9uZyBpbnQgd2NzdG9sKGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19ucHRyLAogICB3Y2hhcl90KiogX19yZXN0cmljdCBfX2VuZHB0ciwgaW50IF9fYmFzZSk7CgpleHRlcm4gdW5zaWduZWQgbG9uZyBpbnQgd2NzdG91bChjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fbnB0ciwKICAgICAgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19lbmRwdHIsIGludCBfX2Jhc2UpOwoKZXh0ZXJuIGxvbmcgbG9uZyBpbnQgd2NzdG9sbChjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fbnB0ciwKICAgICAgICAgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19lbmRwdHIsIGludCBfX2Jhc2UpOwoKZXh0ZXJuIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnQgd2NzdG91bGwoY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX25wdHIsCiAgICAgd2NoYXJfdCoqIF9fcmVzdHJpY3QgX19lbmRwdHIsCiAgICAgaW50IF9fYmFzZSk7CmV4dGVybiB3Y2hhcl90KiB3Y3BjcHkod2NoYXJfdCogX19yZXN0cmljdCBfX2Rlc3QsCiAgIGNvbnN0IHdjaGFyX3QqIF9fcmVzdHJpY3QgX19zcmMpOwoKZXh0ZXJuIHdjaGFyX3QqIHdjcG5jcHkod2NoYXJfdCogX19yZXN0cmljdCBfX2Rlc3QsCiAgICBjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fc3JjLCBzaXplX3QgX19uKTsKZXh0ZXJuIF9fRklMRSogb3Blbl93bWVtc3RyZWFtKHdjaGFyX3QqKiBfX2J1ZmxvYywgc2l6ZV90KiBfX3NpemVsb2MpOwoKZXh0ZXJuIGludCBmd2lkZShfX0ZJTEUqIF9fZnAsIGludCBfX21vZGUpOwoKZXh0ZXJuIGludCBmd3ByaW50ZihfX0ZJTEUqIF9fcmVzdHJpY3QgX19zdHJlYW0sCiAgICAgICBjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZm9ybWF0LCAuLi4pOwpleHRlcm4gaW50IHdwcmludGYoY29uc3Qgd2NoYXJfdCogX19yZXN0cmljdCBfX2Zvcm1hdCwgLi4uKTsKCmV4dGVybiBpbnQgc3dwcmludGYod2NoYXJfdCogX19yZXN0cmljdCBfX3MsIHNpemVfdCBfX24sCiAgICAgICBjb25zdCB3Y2hhcl90KiBfX3Jlc3RyaWN0IF9fZm9ybWF0LCAuLi4pOwoKCgAAAAAAAAAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgojcHJhZ21hIG9uY2UKI2RlZmluZSBfSU9GQkYgMHgwMDAwCiNkZWZpbmUgX0lPTEJGIDB4MDA0MAojZGVmaW5lIF9JT05CRiAweDAwMDQKCiNkZWZpbmUgQlVGU0laICA1MTIKCiNkZWZpbmUgRU9GICAgICgtMSkKCiNkZWZpbmUgRklMRU5BTUVfTUFYICAgIDI2MAojZGVmaW5lIEZPUEVOX01BWCAgICAgICAyMAoKI2RlZmluZSBMX3RtcG5hbSAgIDI2MCAvLyBfTUFYX1BBVEgKCi8qIFNlZWsgbWV0aG9kIGNvbnN0YW50cyAqLwoKI2RlZmluZSBTRUVLX0NVUiAgICAxCiNkZWZpbmUgU0VFS19FTkQgICAgMgojZGVmaW5lIFNFRUtfU0VUICAgIDAKCgojZGVmaW5lIFRNUF9NQVggICAgICAgICAyMTQ3NDgzNjQ3CgoKCnR5cGVkZWYgbG9uZyBsb25nIGZwb3NfdDsKdHlwZWRlZiBpbnQgRklMRTsKCmV4dGVybiBGSUxFKiBzdGRpbjsKZXh0ZXJuIEZJTEUqIHN0ZG91dDsKZXh0ZXJuIEZJTEUqIHN0ZGVycjsKCnR5cGVkZWYgaW50IHNpemVfdDsKdHlwZWRlZiB2b2lkKiB2YV9saXN0OwppbnQgcmVtb3ZlKGNvbnN0IGNoYXIqIGZpbGVuYW1lKTsKaW50IHJlbmFtZShjb25zdCBjaGFyKiBvbGQsIGNvbnN0IGNoYXIqIG5ld3MpOwpGSUxFKiBfT3B0IHRtcGZpbGUodm9pZCk7CmNoYXIqIHRtcG5hbShjaGFyKiBzKTsKI2lmIGRlZmluZWQoX19TVERDX09XTkVSU0hJUF9fKSAKaW50IGZjbG9zZShGSUxFKiBfT3duZXIgc3RyZWFtKTsKI2Vsc2UKaW50IGZjbG9zZShGSUxFKiBzdHJlYW0pOwojZW5kaWYKaW50IGZmbHVzaChGSUxFKiBzdHJlYW0pOwojaWYgZGVmaW5lZChfX1NURENfT1dORVJTSElQX18pIApGSUxFKiBfT3duZXIgX09wdCBmb3Blbihjb25zdCBjaGFyKiByZXN0cmljdCBmaWxlbmFtZSwgY29uc3QgY2hhciogcmVzdHJpY3QgbW9kZSk7CkZJTEUqIF9Pd25lciBfT3B0IGZyZW9wZW4oY29uc3QgY2hhciogcmVzdHJpY3QgZmlsZW5hbWUsIGNvbnN0IGNoYXIqIHJlc3RyaWN0IG1vZGUsIEZJTEUqIHJlc3RyaWN0IHN0cmVhbSk7CiNlbHNlCkZJTEUqIGZvcGVuKGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZpbGVuYW1lLCBjb25zdCBjaGFyKiByZXN0cmljdCBtb2RlKTsKRklMRSogZnJlb3Blbihjb25zdCBjaGFyKiByZXN0cmljdCBmaWxlbmFtZSwgY29uc3QgY2hhciogcmVzdHJpY3QgbW9kZSwgRklMRSogcmVzdHJpY3Qgc3RyZWFtKTsKI2VuZGlmCnZvaWQgc2V0YnVmKEZJTEUqIHJlc3RyaWN0IHN0cmVhbSwgY2hhciogcmVzdHJpY3QgYnVmKTsKaW50IHNldHZidWYoRklMRSogcmVzdHJpY3Qgc3RyZWFtLCBjaGFyKiByZXN0cmljdCBidWYsIGludCBtb2RlLCBzaXplX3Qgc2l6ZSk7CmludCBmcHJpbnRmKEZJTEUqIHJlc3RyaWN0IHN0cmVhbSwgY29uc3QgY2hhciogcmVzdHJpY3QgZm9ybWF0LCAuLi4pOwppbnQgZnNjYW5mKEZJTEUqIHJlc3RyaWN0IHN0cmVhbSwgY29uc3QgY2hhciogcmVzdHJpY3QgZm9ybWF0LCAuLi4pOwppbnQgcHJpbnRmKGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZvcm1hdCwgLi4uKTsKaW50IHNjYW5mKGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZvcm1hdCwgLi4uKTsKaW50IHNucHJpbnRmKGNoYXIqIHJlc3RyaWN0IHMsIHNpemVfdCBuLCBjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIC4uLik7CmludCBzcHJpbnRmKGNoYXIqIHJlc3RyaWN0IHMsIGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZvcm1hdCwgLi4uKTsKaW50IHNzY2FuZihjb25zdCBjaGFyKiByZXN0cmljdCBzLCBjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIC4uLik7CmludCB2ZnByaW50ZihGSUxFKiByZXN0cmljdCBzdHJlYW0sIGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZvcm1hdCwgdmFfbGlzdCBhcmcpOwppbnQgdmZzY2FuZihGSUxFKiByZXN0cmljdCBzdHJlYW0sIGNvbnN0IGNoYXIqIHJlc3RyaWN0IGZvcm1hdCwgdmFfbGlzdCBhcmcpOwppbnQgdnByaW50Zihjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIHZhX2xpc3QgYXJnKTsKaW50IHZzY2FuZihjb25zdCBjaGFyKiByZXN0cmljdCBmb3JtYXQsIHZhX2xpc3QgYXJnKTsKaW50IHB1dHMoY29uc3QgY2hhciogc3RyKTsKaW50IGZwdXRzKGNvbnN0IGNoYXIqIHJlc3RyaWN0IHMsIEZJTEUqIHJlc3RyaWN0IHN0cmVhbSk7CmludCBnZXRjKEZJTEUqIHN0cmVhbSk7CmludCBnZXRjaGFyKHZvaWQpOwppbnQgcHV0YyhpbnQgYywgRklMRSogc3RyZWFtKTsKaW50IHB1dGNoYXIoaW50IGMpOwppbnQgcHV0cyhjb25zdCBjaGFyKiBzKTsKaW50IHVuZ2V0YyhpbnQgYywgRklMRSogc3RyZWFtKTsKaW50IGZnZXRjKEZJTEUqIHN0cmVhbSk7CnNpemVfdCBmcmVhZCh2b2lkKiByZXN0cmljdCBwdHIsIHNpemVfdCBzaXplLCBzaXplX3Qgbm1lbWIsIEZJTEUqIHJlc3RyaWN0IHN0cmVhbSk7CnNpemVfdCBmd3JpdGUoY29uc3Qgdm9pZCogcmVzdHJpY3QgcHRyLCBzaXplX3Qgc2l6ZSwgc2l6ZV90IG5tZW1iLCBGSUxFKiByZXN0cmljdCBzdHJlYW0pOwppbnQgZmdldHBvcyhGSUxFKiByZXN0cmljdCBzdHJlYW0sIGZwb3NfdCogcmVzdHJpY3QgcG9zKTsKaW50IGZzZWVrKEZJTEUqIHN0cmVhbSwgbG9uZyBpbnQgb2Zmc2V0LCBpbnQgd2hlbmNlKTsKaW50IGZzZXRwb3MoRklMRSogc3RyZWFtLCBjb25zdCBmcG9zX3QqIHBvcyk7CmxvbmcgaW50IGZ0ZWxsKEZJTEUqIHN0cmVhbSk7CnZvaWQgcmV3aW5kKEZJTEUqIHN0cmVhbSk7CnZvaWQgY2xlYXJlcnIoRklMRSogc3RyZWFtKTsKaW50IGZlb2YoRklMRSogc3RyZWFtKTsKaW50IGZlcnJvcihGSUxFKiBzdHJlYW0pOwp2b2lkIHBlcnJvcihjb25zdCBjaGFyKiBzKTsKCgoKI2lmbmRlZiBOVUxMCiNkZWZpbmUgTlVMTCAoKHZvaWQqKTApCiNlbmRpZgoAAAAAAAAAAAAAAAAAAAAvKgogKiAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgY2FrZSBjb21waWxlcgogKiAgaHR0cHM6Ly9naXRodWIuY29tL3RocmFkYW1zL2Nha2UKKi8KCnR5cGVkZWYgbG9uZyBsb25nIGZwb3NfdDsKdHlwZWRlZiB1bnNpZ25lZCBzaXplX3Q7CgojZGVmaW5lIEVYSVRfU1VDQ0VTUyAwCiNkZWZpbmUgRVhJVF9GQUlMVVJFIDEKI2RlZmluZSBOVUxMICgodm9pZCopMCkKCnR5cGVkZWYgaW50IHdjaGFyX3Q7Cltbbm9kaXNjYXJkXV0gZG91YmxlIGF0b2YoY29uc3QgY2hhciogbnB0cik7Cltbbm9kaXNjYXJkXV0gaW50IGF0b2koY29uc3QgY2hhciogbnB0cik7Cltbbm9kaXNjYXJkXV0gbG9uZyBpbnQgYXRvbChjb25zdCBjaGFyKiBucHRyKTsKW1tub2Rpc2NhcmRdXSBsb25nIGxvbmcgaW50IGF0b2xsKGNvbnN0IGNoYXIqIG5wdHIpOwpkb3VibGUgc3RydG9kKGNvbnN0IGNoYXIqIHJlc3RyaWN0IG5wdHIsIGNoYXIqKiByZXN0cmljdCBlbmRwdHIpOwpmbG9hdCBzdHJ0b2YoY29uc3QgY2hhciogcmVzdHJpY3QgbnB0ciwgY2hhcioqIHJlc3RyaWN0IGVuZHB0cik7CmxvbmcgZG91YmxlIHN0cnRvbGQoY29uc3QgY2hhciogcmVzdHJpY3QgbnB0ciwgY2hhcioqIHJlc3RyaWN0IGVuZHB0cik7CmxvbmcgaW50IHN0cnRvbChjb25zdCBjaGFyKiByZXN0cmljdCBucHRyLCBjaGFyKiogcmVzdHJpY3QgZW5kcHRyLCBpbnQgYmFzZSk7CmxvbmcgbG9uZyBpbnQgc3RydG9sbChjb25zdCBjaGFyKiByZXN0cmljdCBucHRyLCBjaGFyKiogcmVzdHJpY3QgZW5kcHRyLCBpbnQgYmFzZSk7CnVuc2lnbmVkIGxvbmcgaW50IHN0cnRvdWwoY29uc3QgY2hhciogcmVzdHJpY3QgbnB0ciwgY2hhcioqIHJlc3RyaWN0IGVuZHB0ciwgaW50IGJhc2UpOwp1bnNpZ25lZCBsb25nIGxvbmcgaW50IHN0cnRvdWxsKGNvbnN0IGNoYXIqIHJlc3RyaWN0IG5wdHIsIGNoYXIqKiByZXN0cmljdCBlbmRwdHIsIGludCBiYXNlKTsKaW50IHJhbmQodm9pZCk7CnZvaWQgc3JhbmQodW5zaWduZWQgaW50IHNlZWQpOwp2b2lkKiBhbGlnbmVkX2FsbG9jKHNpemVfdCBhbGlnbm1lbnQsIHNpemVfdCBzaXplKTsKCiNpZiBkZWZpbmVkKF9fU1REQ19PV05FUlNISVBfXykgCltbbm9kaXNjYXJkXV0gdm9pZCogX093bmVyIF9PcHQgY2FsbG9jKHNpemVfdCBubWVtYiwgc2l6ZV90IHNpemUpOwp2b2lkIGZyZWUodm9pZCogX093bmVyIF9PcHQgcHRyKTsKW1tub2Rpc2NhcmRdXSB2b2lkKiBfT3duZXIgX09wdCBtYWxsb2Moc2l6ZV90IHNpemUpOwpbW25vZGlzY2FyZF1dIHZvaWQqIF9Pd25lciBfT3B0IHJlYWxsb2Modm9pZCogX09wdCBwdHIsIHNpemVfdCBzaXplKTsKI2Vsc2UKW1tub2Rpc2NhcmRdXSB2b2lkKiBjYWxsb2Moc2l6ZV90IG5tZW1iLCBzaXplX3Qgc2l6ZSk7CnZvaWQgZnJlZSh2b2lkKiBwdHIpOwpbW25vZGlzY2FyZF1dIHZvaWQqIG1hbGxvYyhzaXplX3Qgc2l6ZSk7Cltbbm9kaXNjYXJkXV0gdm9pZCogcmVhbGxvYyh2b2lkKiBwdHIsIHNpemVfdCBzaXplKTsKI2VuZGlmCgpbW25vcmV0dXJuXV0gdm9pZCBhYm9ydCh2b2lkKTsKaW50IGF0ZXhpdCh2b2lkICgqZnVuYykodm9pZCkpOwppbnQgYXRfcXVpY2tfZXhpdCh2b2lkICgqZnVuYykodm9pZCkpOwpbW25vcmV0dXJuXV0gdm9pZCBleGl0KGludCBzdGF0dXMpOwpbW25vcmV0dXJuXV0gdm9pZCBfRXhpdChpbnQgc3RhdHVzKTsKY2hhciogZ2V0ZW52KGNvbnN0IGNoYXIqIG5hbWUpOwpbW25vcmV0dXJuXV0gdm9pZCBxdWlja19leGl0KGludCBzdGF0dXMpOwppbnQgc3lzdGVtKGNvbnN0IGNoYXIqIHN0cmluZyk7CgAAAAAAAAAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgojZGVmaW5lIHVucmVhY2hhYmxlKCkgZG8ge30gd2hpbGUoMCkgCnR5cGVkZWYgbG9uZyBpbnQgcHRyZGlmZl90Owp0eXBlZGVmIGxvbmcgdW5zaWduZWQgaW50IHNpemVfdDsKdHlwZWRlZiBpbnQgd2NoYXJfdDsKdHlwZWRlZiBzdHJ1Y3QgewogIGxvbmcgbG9uZyBfX21heF9hbGlnbl9sbDsKICBsb25nIGRvdWJsZSBfX21heF9hbGlnbl9sZDsKfSBtYXhfYWxpZ25fdDsKCnR5cGVkZWYgdHlwZW9mKG51bGxwdHIpIG51bGxwdHJfdDsKCgAAAAAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgojcHJhZ21hIG9uY2UKCmRvdWJsZSBhY29zKGRvdWJsZSBfX3gpOwpkb3VibGUgYXNpbihkb3VibGUgX194KTsKZG91YmxlIGF0YW4oZG91YmxlIF9feCk7CmRvdWJsZSBhdGFuMihkb3VibGUgX195LCBkb3VibGUgX194KTsKZG91YmxlIGNvcyhkb3VibGUgX194KTsKZG91YmxlIHNpbihkb3VibGUgX194KTsKZG91YmxlIHRhbihkb3VibGUgX194KTsKZG91YmxlIGNvc2goZG91YmxlIF9feCk7CmRvdWJsZSBzaW5oKGRvdWJsZSBfX3gpOwpkb3VibGUgdGFuaChkb3VibGUgX194KTsKZG91YmxlIGFjb3NoKGRvdWJsZSBfX3gpOwpkb3VibGUgYXNpbmgoZG91YmxlIF9feCk7CmRvdWJsZSBhdGFuaChkb3VibGUgX194KTsKZG91YmxlIGV4cChkb3VibGUgX194KTsKZG91YmxlIGZyZXhwKGRvdWJsZSBfX3gsIGludCogX19leHBvbmVudCk7CmRvdWJsZSBsZGV4cChkb3VibGUgX194LCBpbnQgX19leHBvbmVudCk7CmRvdWJsZSBsb2coZG91YmxlIF9feCk7CmRvdWJsZSBsb2cxMChkb3VibGUgX194KTsKZG91YmxlIG1vZGYoZG91YmxlIF9feCwgZG91YmxlKiBfX2lwdHIpOwpkb3VibGUgZXhwbTEoZG91YmxlIF9feCk7CmRvdWJsZSBsb2cxcChkb3VibGUgX194KTsKZG91YmxlIGxvZ2IoZG91YmxlIF9feCk7CmRvdWJsZSBleHAyKGRvdWJsZSBfX3gpOwpkb3VibGUgbG9nMihkb3VibGUgX194KTsKZG91YmxlIHBvdyhkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIHNxcnQoZG91YmxlIF9feCk7CmRvdWJsZSBoeXBvdChkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIGNicnQoZG91YmxlIF9feCk7CmRvdWJsZSBjZWlsKGRvdWJsZSBfX3gpOwpkb3VibGUgZmFicyhkb3VibGUgX194KTsKZG91YmxlIGZsb29yKGRvdWJsZSBfX3gpOwpkb3VibGUgZm1vZChkb3VibGUgX194LCBkb3VibGUgX195KTsKaW50IGlzaW5mKGRvdWJsZSBfX3ZhbHVlKTsKaW50IGZpbml0ZShkb3VibGUgX192YWx1ZSk7CmRvdWJsZSBkcmVtKGRvdWJsZSBfX3gsIGRvdWJsZSBfX3kpOwpkb3VibGUgc2lnbmlmaWNhbmQoZG91YmxlIF9feCk7CmRvdWJsZSBjb3B5c2lnbihkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIG5hbihjb25zdCBjaGFyKiBfX3RhZ2IpOwppbnQgaXNuYW4oZG91YmxlIF9fdmFsdWUpOwpkb3VibGUgajAoZG91YmxlKTsKZG91YmxlIGoxKGRvdWJsZSk7CmRvdWJsZSBqbihpbnQsIGRvdWJsZSk7CmRvdWJsZSB5MChkb3VibGUpOwpkb3VibGUgeTEoZG91YmxlKTsKZG91YmxlIHluKGludCwgZG91YmxlKTsKZG91YmxlIGVyZihkb3VibGUpOwpkb3VibGUgZXJmYyhkb3VibGUpOwpkb3VibGUgbGdhbW1hKGRvdWJsZSk7CmRvdWJsZSB0Z2FtbWEoZG91YmxlKTsKZG91YmxlIGdhbW1hKGRvdWJsZSk7CmRvdWJsZSBsZ2FtbWFfcihkb3VibGUsIGludCogX19zaWduZ2FtcCk7CmRvdWJsZSByaW50KGRvdWJsZSBfX3gpOwpkb3VibGUgbmV4dGFmdGVyKGRvdWJsZSBfX3gsIGRvdWJsZSBfX3kpOwpkb3VibGUgbmV4dHRvd2FyZChkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpkb3VibGUgcmVtYWluZGVyKGRvdWJsZSBfX3gsIGRvdWJsZSBfX3kpOwpkb3VibGUgc2NhbGJuKGRvdWJsZSBfX3gsIGludCBfX24pOwppbnQgaWxvZ2IoZG91YmxlIF9feCk7CmRvdWJsZSBzY2FsYmxuKGRvdWJsZSBfX3gsIGxvbmcgaW50IF9fbik7CmRvdWJsZSBuZWFyYnlpbnQoZG91YmxlIF9feCk7CmRvdWJsZSByb3VuZChkb3VibGUgX194KTsKZG91YmxlIHRydW5jKGRvdWJsZSBfX3gpOwpkb3VibGUgcmVtcXVvKGRvdWJsZSBfX3gsIGRvdWJsZSBfX3ksIGludCogX19xdW8pOwpsb25nIGludCBscmludChkb3VibGUgX194KTsKbG9uZyBsb25nIGludCBsbHJvdW5kKGRvdWJsZSBfX3gpOwpkb3VibGUgZmRpbShkb3VibGUgX194LCBkb3VibGUgX195KTsKZG91YmxlIGZtYXgoZG91YmxlIF9feCwgZG91YmxlIF9feSk7CmRvdWJsZSBmbWluKGRvdWJsZSBfX3gsIGRvdWJsZSBfX3kpOwpkb3VibGUgZm1hKGRvdWJsZSBfX3gsIGRvdWJsZSBfX3ksIGRvdWJsZSBfX3opOwpkb3VibGUgc2NhbGIoZG91YmxlIF9feCwgZG91YmxlIF9fbik7CmZsb2F0IGFjb3NmKGZsb2F0IF9feCk7CmZsb2F0IGFzaW5mKGZsb2F0IF9feCk7CmZsb2F0IGF0YW5mKGZsb2F0IF9feCk7CmZsb2F0IGF0YW4yZihmbG9hdCBfX3ksIGZsb2F0IF9feCk7CmZsb2F0IGNvc2YoZmxvYXQgX194KTsKZmxvYXQgc2luZihmbG9hdCBfX3gpOwpmbG9hdCB0YW5mKGZsb2F0IF9feCk7CmZsb2F0IGNvc2hmKGZsb2F0IF9feCk7CmZsb2F0IHNpbmhmKGZsb2F0IF9feCk7CmZsb2F0IHRhbmhmKGZsb2F0IF9feCk7CmZsb2F0IGFjb3NoZihmbG9hdCBfX3gpOwpmbG9hdCBhc2luaGYoZmxvYXQgX194KTsKZmxvYXQgYXRhbmhmKGZsb2F0IF9feCk7CmZsb2F0IGV4cGYoZmxvYXQgX194KTsKZmxvYXQgZnJleHBmKGZsb2F0IF9feCwgaW50KiBfX2V4cG9uZW50KTsKZmxvYXQgbGRleHBmKGZsb2F0IF9feCwgaW50IF9fZXhwb25lbnQpOwpmbG9hdCBsb2dmKGZsb2F0IF9feCk7CmZsb2F0IGxvZzEwZihmbG9hdCBfX3gpOyBmbG9hdCBfX2xvZzEwZihmbG9hdCBfX3gpOwpmbG9hdCBtb2RmZihmbG9hdCBfX3gsIGZsb2F0KiBfX2lwdHIpOwpmbG9hdCBleHBtMWYoZmxvYXQgX194KTsKZmxvYXQgbG9nMXBmKGZsb2F0IF9feCk7CmZsb2F0IGxvZ2JmKGZsb2F0IF9feCk7CmZsb2F0IGV4cDJmKGZsb2F0IF9feCk7CmZsb2F0IGxvZzJmKGZsb2F0IF9feCk7CmZsb2F0IHBvd2YoZmxvYXQgX194LCBmbG9hdCBfX3kpOwpmbG9hdCBzcXJ0ZihmbG9hdCBfX3gpOwpmbG9hdCBoeXBvdGYoZmxvYXQgX194LCBmbG9hdCBfX3kpOwpmbG9hdCBjYnJ0ZihmbG9hdCBfX3gpOwpmbG9hdCBjZWlsZihmbG9hdCBfX3gpOwpmbG9hdCBmYWJzZihmbG9hdCBfX3gpOwpmbG9hdCBmbG9vcmYoZmxvYXQgX194KTsKZmxvYXQgZm1vZGYoZmxvYXQgX194LCBmbG9hdCBfX3kpOwppbnQgaXNpbmZmKGZsb2F0IF9fdmFsdWUpOwppbnQgZmluaXRlZihmbG9hdCBfX3ZhbHVlKTsKZmxvYXQgZHJlbWYoZmxvYXQgX194LCBmbG9hdCBfX3kpOwpmbG9hdCBzaWduaWZpY2FuZGYoZmxvYXQgX194KTsKZmxvYXQgY29weXNpZ25mKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgbmFuZihjb25zdCBjaGFyKiBfX3RhZ2IpOwppbnQgaXNuYW5mKGZsb2F0IF9fdmFsdWUpOwpmbG9hdCBqMGYoZmxvYXQpOwpmbG9hdCBqMWYoZmxvYXQpOwpmbG9hdCBqbmYoaW50LCBmbG9hdCk7CmZsb2F0IHkwZihmbG9hdCk7CmZsb2F0IHkxZihmbG9hdCk7CmZsb2F0IHluZihpbnQsIGZsb2F0KTsKZmxvYXQgZXJmZihmbG9hdCk7CmZsb2F0IGVyZmNmKGZsb2F0KTsKZmxvYXQgbGdhbW1hZihmbG9hdCk7CmZsb2F0IHRnYW1tYWYoZmxvYXQpOwpmbG9hdCBnYW1tYWYoZmxvYXQpOwpmbG9hdCBsZ2FtbWFmX3IoZmxvYXQsIGludCogX19zaWduZ2FtcCk7CmZsb2F0IHJpbnRmKGZsb2F0IF9feCk7CmZsb2F0IG5leHRhZnRlcmYoZmxvYXQgX194LCBmbG9hdCBfX3kpOwpmbG9hdCBuZXh0dG93YXJkZihmbG9hdCBfX3gsIGxvbmcgZG91YmxlIF9feSk7CmZsb2F0IHJlbWFpbmRlcmYoZmxvYXQgX194LCBmbG9hdCBfX3kpOwpmbG9hdCBzY2FsYm5mKGZsb2F0IF9feCwgaW50IF9fbik7CmludCBpbG9nYmYoZmxvYXQgX194KTsKZmxvYXQgc2NhbGJsbmYoZmxvYXQgX194LCBsb25nIGludCBfX24pOwpmbG9hdCBuZWFyYnlpbnRmKGZsb2F0IF9feCk7CmZsb2F0IHJvdW5kZihmbG9hdCBfX3gpOwpmbG9hdCB0cnVuY2YoZmxvYXQgX194KTsKZmxvYXQgcmVtcXVvZihmbG9hdCBfX3gsIGZsb2F0IF9feSwgaW50KiBfX3F1byk7CmxvbmcgaW50IGxyaW50ZihmbG9hdCBfX3gpOwpsb25nIGxvbmcgaW50IGxscm91bmRmKGZsb2F0IF9feCk7CmZsb2F0IGZkaW1mKGZsb2F0IF9feCwgZmxvYXQgX195KTsKZmxvYXQgZm1heGYoZmxvYXQgX194LCBmbG9hdCBfX3kpOwpmbG9hdCBmbWluZihmbG9hdCBfX3gsIGZsb2F0IF9feSk7CmZsb2F0IGZtYWYoZmxvYXQgX194LCBmbG9hdCBfX3ksIGZsb2F0IF9feik7CmZsb2F0IHNjYWxiZihmbG9hdCBfX3gsIGZsb2F0IF9fbik7CmxvbmcgZG91YmxlIGFjb3NsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGFzaW5sKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGF0YW5sKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGF0YW4ybChsb25nIGRvdWJsZSBfX3ksIGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGNvc2wobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgc2lubChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSB0YW5sKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGNvc2hsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIHNpbmhsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIHRhbmhsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGFjb3NobChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBhc2luaGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgYXRhbmhsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGV4cGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgZnJleHBsKGxvbmcgZG91YmxlIF9feCwgaW50KiBfX2V4cG9uZW50KTsKbG9uZyBkb3VibGUgbGRleHBsKGxvbmcgZG91YmxlIF9feCwgaW50IF9fZXhwb25lbnQpOwpsb25nIGRvdWJsZSBsb2dsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGxvZzEwbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBtb2RmbChsb25nIGRvdWJsZSBfX3gsIGxvbmcgZG91YmxlKiBfX2lwdHIpOwpsb25nIGRvdWJsZSBleHBtMWwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgbG9nMXBsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGxvZ2JsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGV4cDJsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGxvZzJsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIHBvd2wobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSBzcXJ0bChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBoeXBvdGwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSBjYnJ0bChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBjZWlsbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBmYWJzbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSBmbG9vcmwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgZm1vZGwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwppbnQgaXNpbmZsKGxvbmcgZG91YmxlIF9fdmFsdWUpOwppbnQgZmluaXRlbChsb25nIGRvdWJsZSBfX3ZhbHVlKTsKbG9uZyBkb3VibGUgZHJlbWwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSBzaWduaWZpY2FuZGwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgY29weXNpZ25sKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgbmFubChjb25zdCBjaGFyKiBfX3RhZ2IpOwppbnQgaXNuYW5sKGxvbmcgZG91YmxlIF9fdmFsdWUpOwpsb25nIGRvdWJsZSBqMGwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSBqMWwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSBqbmwoaW50LCBsb25nIGRvdWJsZSk7CmxvbmcgZG91YmxlIHkwbChsb25nIGRvdWJsZSk7CmxvbmcgZG91YmxlIHkxbChsb25nIGRvdWJsZSk7CmxvbmcgZG91YmxlIHlubChpbnQsIGxvbmcgZG91YmxlKTsKbG9uZyBkb3VibGUgZXJmbChsb25nIGRvdWJsZSk7CmxvbmcgZG91YmxlIGVyZmNsKGxvbmcgZG91YmxlKTsKbG9uZyBkb3VibGUgbGdhbW1hbChsb25nIGRvdWJsZSk7CmxvbmcgZG91YmxlIHRnYW1tYWwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSBnYW1tYWwobG9uZyBkb3VibGUpOwpsb25nIGRvdWJsZSBsZ2FtbWFsX3IobG9uZyBkb3VibGUsIGludCogX19zaWduZ2FtcCk7CmxvbmcgZG91YmxlIHJpbnRsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIG5leHRhZnRlcmwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSBuZXh0dG93YXJkbChsb25nIGRvdWJsZSBfX3gsIGxvbmcgZG91YmxlIF9feSk7CmxvbmcgZG91YmxlIHJlbWFpbmRlcmwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSBzY2FsYm5sKGxvbmcgZG91YmxlIF9feCwgaW50IF9fbik7CmludCBpbG9nYmwobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgc2NhbGJsbmwobG9uZyBkb3VibGUgX194LCBsb25nIGludCBfX24pOwpsb25nIGRvdWJsZSBuZWFyYnlpbnRsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIHJvdW5kbChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGRvdWJsZSB0cnVuY2wobG9uZyBkb3VibGUgX194KTsKbG9uZyBkb3VibGUgcmVtcXVvbChsb25nIGRvdWJsZSBfX3gsIGxvbmcgZG91YmxlIF9feSwgaW50KiBfX3F1byk7CmxvbmcgaW50IGxyaW50bChsb25nIGRvdWJsZSBfX3gpOwpsb25nIGxvbmcgaW50IGxscm91bmRsKGxvbmcgZG91YmxlIF9feCk7CmxvbmcgZG91YmxlIGZkaW1sKGxvbmcgZG91YmxlIF9feCwgbG9uZyBkb3VibGUgX195KTsKbG9uZyBkb3VibGUgZm1heGwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3kpOwpsb25nIGRvdWJsZSBmbWlubChsb25nIGRvdWJsZSBfX3gsIGxvbmcgZG91YmxlIF9feSk7CmxvbmcgZG91YmxlIGZtYWwobG9uZyBkb3VibGUgX194LCBsb25nIGRvdWJsZSBfX3ksIGxvbmcgZG91YmxlIF9feik7CmxvbmcgZG91YmxlIHNjYWxibChsb25nIGRvdWJsZSBfX3gsIGxvbmcgZG91YmxlIF9fbik7CgAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgojcHJhZ21hIG9uY2UKCmludCogX2Vycm5vKHZvaWQpOwojZGVmaW5lIGVycm5vICgqX2Vycm5vKCkpCgoKI2RlZmluZSBFUEVSTSAgICAgICAgICAgMQojZGVmaW5lIEVOT0VOVCAgICAgICAgICAyCiNkZWZpbmUgRVNSQ0ggICAgICAgICAgIDMKI2RlZmluZSBFSU5UUiAgICAgICAgICAgNAojZGVmaW5lIEVJTyAgICAgICAgICAgICA1CiNkZWZpbmUgRU5YSU8gICAgICAgICAgIDYKI2RlZmluZSBFMkJJRyAgICAgICAgICAgNwojZGVmaW5lIEVOT0VYRUMgICAgICAgICA4CiNkZWZpbmUgRUJBREYgICAgICAgICAgIDkKI2RlZmluZSBFQ0hJTEQgICAgICAgICAgMTAKI2RlZmluZSBFQUdBSU4gICAgICAgICAgMTEKI2RlZmluZSBFTk9NRU0gICAgICAgICAgMTIKI2RlZmluZSBFQUNDRVMgICAgICAgICAgMTMKI2RlZmluZSBFRkFVTFQgICAgICAgICAgMTQKI2RlZmluZSBFQlVTWSAgICAgICAgICAgMTYKI2RlZmluZSBFRVhJU1QgICAgICAgICAgMTcKI2RlZmluZSBFWERFViAgICAgICAgICAgMTgKI2RlZmluZSBFTk9ERVYgICAgICAgICAgMTkKI2RlZmluZSBFTk9URElSICAgICAgICAgMjAKI2RlZmluZSBFSVNESVIgICAgICAgICAgMjEKI2RlZmluZSBFTkZJTEUgICAgICAgICAgMjMKI2RlZmluZSBFTUZJTEUgICAgICAgICAgMjQKI2RlZmluZSBFTk9UVFkgICAgICAgICAgMjUKI2RlZmluZSBFRkJJRyAgICAgICAgICAgMjcKI2RlZmluZSBFTk9TUEMgICAgICAgICAgMjgKI2RlZmluZSBFU1BJUEUgICAgICAgICAgMjkKI2RlZmluZSBFUk9GUyAgICAgICAgICAgMzAKI2RlZmluZSBFTUxJTksgICAgICAgICAgMzEKI2RlZmluZSBFUElQRSAgICAgICAgICAgMzIKI2RlZmluZSBFRE9NICAgICAgICAgICAgMzMKI2RlZmluZSBFREVBRExLICAgICAgICAgMzYKI2RlZmluZSBFTkFNRVRPT0xPTkcgICAgMzgKI2RlZmluZSBFTk9MQ0sgICAgICAgICAgMzkKI2RlZmluZSBFTk9TWVMgICAgICAgICAgNDAKI2RlZmluZSBFTk9URU1QVFkgICAgICAgNDEKCgovLyBTdXBwb3J0IEVERUFETE9DSyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIE1pY3Jvc29mdCBDIHZlcnNpb25zCiNkZWZpbmUgRURFQURMT0NLICAgICAgIEVERUFETEsKCiNkZWZpbmUgRUFERFJJTlVTRSAgICAgIDEwMAojZGVmaW5lIEVBRERSTk9UQVZBSUwgICAxMDEKI2RlZmluZSBFQUZOT1NVUFBPUlQgICAgMTAyCiNkZWZpbmUgRUFMUkVBRFkgICAgICAgIDEwMwojZGVmaW5lIEVCQURNU0cgICAgICAgICAxMDQKI2RlZmluZSBFQ0FOQ0VMRUQgICAgICAgMTA1CiNkZWZpbmUgRUNPTk5BQk9SVEVEICAgIDEwNgojZGVmaW5lIEVDT05OUkVGVVNFRCAgICAxMDcKI2RlZmluZSBFQ09OTlJFU0VUICAgICAgMTA4CiNkZWZpbmUgRURFU1RBRERSUkVRICAgIDEwOQojZGVmaW5lIEVIT1NUVU5SRUFDSCAgICAxMTAKI2RlZmluZSBFSURSTSAgICAgICAgICAgMTExCiNkZWZpbmUgRUlOUFJPR1JFU1MgICAgIDExMgojZGVmaW5lIEVJU0NPTk4gICAgICAgICAxMTMKI2RlZmluZSBFTE9PUCAgICAgICAgICAgMTE0CiNkZWZpbmUgRU1TR1NJWkUgICAgICAgIDExNQojZGVmaW5lIEVORVRET1dOICAgICAgICAxMTYKI2RlZmluZSBFTkVUUkVTRVQgICAgICAgMTE3CiNkZWZpbmUgRU5FVFVOUkVBQ0ggICAgIDExOAojZGVmaW5lIEVOT0JVRlMgICAgICAgICAxMTkKI2RlZmluZSBFTk9EQVRBICAgICAgICAgMTIwCiNkZWZpbmUgRU5PTElOSyAgICAgICAgIDEyMQojZGVmaW5lIEVOT01TRyAgICAgICAgICAxMjIKI2RlZmluZSBFTk9QUk9UT09QVCAgICAgMTIzCiNkZWZpbmUgRU5PU1IgICAgICAgICAgIDEyNAojZGVmaW5lIEVOT1NUUiAgICAgICAgICAxMjUKI2RlZmluZSBFTk9UQ09OTiAgICAgICAgMTI2CiNkZWZpbmUgRU5PVFJFQ09WRVJBQkxFIDEyNwojZGVmaW5lIEVOT1RTT0NLICAgICAgICAxMjgKI2RlZmluZSBFTk9UU1VQICAgICAgICAgMTI5CiNkZWZpbmUgRU9QTk9UU1VQUCAgICAgIDEzMAojZGVmaW5lIEVPVEhFUiAgICAgICAgICAxMzEKI2RlZmluZSBFT1ZFUkZMT1cgICAgICAgMTMyCiNkZWZpbmUgRU9XTkVSREVBRCAgICAgIDEzMwojZGVmaW5lIEVQUk9UTyAgICAgICAgICAxMzQKI2RlZmluZSBFUFJPVE9OT1NVUFBPUlQgMTM1CiNkZWZpbmUgRVBST1RPVFlQRSAgICAgIDEzNgojZGVmaW5lIEVUSU1FICAgICAgICAgICAxMzcKI2RlZmluZSBFVElNRURPVVQgICAgICAgMTM4CiNkZWZpbmUgRVRYVEJTWSAgICAgICAgIDEzOQojZGVmaW5lIEVXT1VMREJMT0NLICAgICAxNDAKCgAgCnR5cGVkZWYgaW50IGVycm5vX3Q7CnR5cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIHNpemVfdDsKdHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgcnNpemVfdDsKdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCB3Y2hhcl90Owp2b2lkKiBtZW1jaHIodm9pZCBjb25zdCogX0J1ZiwgaW50IF9WYWwsIHNpemVfdCBfTWF4Q291bnQpOwppbnQgbWVtY21wKHZvaWQgY29uc3QqIF9CdWYxLCB2b2lkIGNvbnN0KiBfQnVmMiwgc2l6ZV90IF9TaXplKTsKdm9pZCogbWVtY3B5KHZvaWQqIF9Ec3QsIHZvaWQgY29uc3QqIF9TcmMsIHNpemVfdCBfU2l6ZSk7CnZvaWQqIG1lbW1vdmUodm9pZCogX0RzdCwgdm9pZCBjb25zdCogX1NyYywgc2l6ZV90IF9TaXplKTsKdm9pZCogbWVtc2V0KHZvaWQqIF9Ec3QsIGludCBfVmFsLCBzaXplX3QgX1NpemUpOwpjaGFyKiBzdHJjaHIoY2hhciBjb25zdCogX1N0ciwgaW50IF9WYWwpOwpjaGFyICpzdHJjcHkoX091dCBjaGFyICpyZXN0cmljdCBkZXN0LCBjb25zdCBjaGFyICpyZXN0cmljdCBzcmMgKTsKY2hhciogc3RycmNocihjaGFyIGNvbnN0KiBfU3RyLCBpbnQgX0NoKTsKY2hhciogc3Ryc3RyKGNoYXIgY29uc3QqIF9TdHIsIGNoYXIgY29uc3QqIF9TdWJTdHIpOwp3Y2hhcl90KiB3Y3NjaHIod2NoYXJfdCBjb25zdCogX1N0ciwgd2NoYXJfdCBfQ2gpOwp3Y2hhcl90KiB3Y3NyY2hyKHdjaGFyX3QgY29uc3QqIF9TdHIsIHdjaGFyX3QgX0NoKTsKd2NoYXJfdCogd2Nzc3RyKHdjaGFyX3QgY29uc3QqIF9TdHIsIHdjaGFyX3QgY29uc3QqIF9TdWJTdHIpOwpzdGF0aWMgaW5saW5lIGVycm5vX3QgbWVtY3B5X3Modm9pZCogY29uc3QgX0Rlc3RpbmF0aW9uLCByc2l6ZV90IGNvbnN0IF9EZXN0aW5hdGlvblNpemUsIHZvaWQgY29uc3QqIGNvbnN0IF9Tb3VyY2UsIHJzaXplX3QgY29uc3QgX1NvdXJjZVNpemUpOwpzdGF0aWMgaW5saW5lIGVycm5vX3QgbWVtbW92ZV9zKHZvaWQqIGNvbnN0IF9EZXN0aW5hdGlvbiwgcnNpemVfdCBjb25zdCBfRGVzdGluYXRpb25TaXplLCB2b2lkIGNvbnN0KiBjb25zdCBfU291cmNlLCByc2l6ZV90IGNvbnN0IF9Tb3VyY2VTaXplKTsKaW50IF9tZW1pY21wKHZvaWQgY29uc3QqIF9CdWYxLCB2b2lkIGNvbnN0KiBfQnVmMiwgc2l6ZV90IF9TaXplKTsKdm9pZCogbWVtY2NweSh2b2lkKiBfRHN0LCB2b2lkIGNvbnN0KiBfU3JjLCBpbnQgX1ZhbCwgc2l6ZV90IF9TaXplKTsKaW50IG1lbWljbXAodm9pZCBjb25zdCogX0J1ZjEsIHZvaWQgY29uc3QqIF9CdWYyLCBzaXplX3QgX1NpemUpOwplcnJub190IHdjc2NhdF9zKHdjaGFyX3QqIF9EZXN0aW5hdGlvbiwgcnNpemVfdCBfU2l6ZUluV29yZHMsIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UpOwplcnJub190IHdjc2NweV9zKHdjaGFyX3QqIF9EZXN0aW5hdGlvbiwgcnNpemVfdCBfU2l6ZUluV29yZHMsIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UpOwplcnJub190IHdjc25jYXRfcyh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHJzaXplX3QgX1NpemVJbldvcmRzLCB3Y2hhcl90IGNvbnN0KiBfU291cmNlLCByc2l6ZV90IF9NYXhDb3VudCk7CmVycm5vX3Qgd2NzbmNweV9zKHdjaGFyX3QqIF9EZXN0aW5hdGlvbiwgcnNpemVfdCBfU2l6ZUluV29yZHMsIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UsIHJzaXplX3QgX01heENvdW50KTsKd2NoYXJfdCogd2NzdG9rX3Mod2NoYXJfdCogX1N0cmluZywgd2NoYXJfdCBjb25zdCogX0RlbGltaXRlciwgd2NoYXJfdCoqIF9Db250ZXh0KTsKd2NoYXJfdCogX3djc2R1cCh3Y2hhcl90IGNvbnN0KiBfU3RyaW5nKTsKd2NoYXJfdCogd2NzY2F0KHdjaGFyX3QqIF9EZXN0aW5hdGlvbiwgd2NoYXJfdCBjb25zdCogX1NvdXJjZSk7IGludCB3Y3NjbXAod2NoYXJfdCBjb25zdCogX1N0cmluZzEsIHdjaGFyX3QgY29uc3QqIF9TdHJpbmcyKTsKd2NoYXJfdCogd2NzY3B5KHdjaGFyX3QqIF9EZXN0aW5hdGlvbiwgd2NoYXJfdCBjb25zdCogX1NvdXJjZSk7IHNpemVfdCB3Y3Njc3BuKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcsIHdjaGFyX3QgY29uc3QqIF9Db250cm9sKTsKc2l6ZV90IHdjc2xlbih3Y2hhcl90IGNvbnN0KiBfU3RyaW5nKTsKc2l6ZV90IHdjc25sZW4od2NoYXJfdCBjb25zdCogX1NvdXJjZSwgc2l6ZV90IF9NYXhDb3VudCk7CnN0YXRpYyBpbmxpbmUgc2l6ZV90IHdjc25sZW5fcyh3Y2hhcl90IGNvbnN0KiBfU291cmNlLCBzaXplX3QgX01heENvdW50KTsKd2NoYXJfdCogd2NzbmNhdCh3Y2hhcl90KiBfRGVzdGluYXRpb24sIHdjaGFyX3QgY29uc3QqIF9Tb3VyY2UsIHNpemVfdCBfQ291bnQpOwppbnQgd2NzbmNtcCh3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMSwgd2NoYXJfdCBjb25zdCogX1N0cmluZzIsIHNpemVfdCBfTWF4Q291bnQpOwp3Y2hhcl90KiB3Y3NuY3B5KHdjaGFyX3QqIF9EZXN0aW5hdGlvbiwgd2NoYXJfdCBjb25zdCogX1NvdXJjZSwgc2l6ZV90IF9Db3VudCk7CndjaGFyX3QqIHdjc3Bicmsod2NoYXJfdCBjb25zdCogX1N0cmluZywgd2NoYXJfdCBjb25zdCogX0NvbnRyb2wpOwpzaXplX3Qgd2Nzc3BuKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcsIHdjaGFyX3QgY29uc3QqIF9Db250cm9sKTsKd2NoYXJfdCogd2NzdG9rKHdjaGFyX3QqIF9TdHJpbmcsIHdjaGFyX3QgY29uc3QqIF9EZWxpbWl0ZXIsIHdjaGFyX3QqKiBfQ29udGV4dCk7CnNpemVfdCB3Y3N4ZnJtKHdjaGFyX3QqIF9EZXN0aW5hdGlvbiwgd2NoYXJfdCBjb25zdCogX1NvdXJjZSwgc2l6ZV90IF9NYXhDb3VudCk7CmludCB3Y3Njb2xsKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcxLCB3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMik7CndjaGFyX3QqIHdjc2R1cCh3Y2hhcl90IGNvbnN0KiBfU3RyaW5nKTsKaW50IHdjc2ljbXAod2NoYXJfdCBjb25zdCogX1N0cmluZzEsIHdjaGFyX3QgY29uc3QqIF9TdHJpbmcyKTsKaW50IHdjc25pY21wKHdjaGFyX3QgY29uc3QqIF9TdHJpbmcxLCB3Y2hhcl90IGNvbnN0KiBfU3RyaW5nMiwgc2l6ZV90IF9NYXhDb3VudCk7CndjaGFyX3QqIHdjc25zZXQod2NoYXJfdCogX1N0cmluZywgd2NoYXJfdCBfVmFsdWUsIHNpemVfdCBfTWF4Q291bnQpOwp3Y2hhcl90KiB3Y3NyZXYod2NoYXJfdCogX1N0cmluZyk7CndjaGFyX3QqIHdjc3NldCh3Y2hhcl90KiBfU3RyaW5nLCB3Y2hhcl90IF9WYWx1ZSk7CndjaGFyX3QqIHdjc2x3cih3Y2hhcl90KiBfU3RyaW5nKTsgd2NoYXJfdCogd2NzdXByKHdjaGFyX3QqIF9TdHJpbmcpOwppbnQgd2NzaWNvbGwod2NoYXJfdCBjb25zdCogX1N0cmluZzEsIHdjaGFyX3QgY29uc3QqIF9TdHJpbmcyKTsKY2hhciogc3RydG9rX3MoY2hhciogX1N0cmluZywgY2hhciBjb25zdCogX0RlbGltaXRlciwgY2hhcioqIF9Db250ZXh0KTsKdm9pZCogX21lbWNjcHkodm9pZCogX0RzdCwgdm9pZCBjb25zdCogX1NyYywgaW50IF9WYWwsIHNpemVfdCBfTWF4Q291bnQpOwpjaGFyKiBzdHJjYXQoY2hhciogX0Rlc3RpbmF0aW9uLCBjaGFyIGNvbnN0KiBfU291cmNlKTsKaW50IHN0cmNtcChjaGFyIGNvbnN0KiBfU3RyMSwgY2hhciBjb25zdCogX1N0cjIpOwppbnQgc3RyY29sbChjaGFyIGNvbnN0KiBfU3RyaW5nMSwgY2hhciBjb25zdCogX1N0cmluZzIpOwpjaGFyKiBzdHJlcnJvcihpbnQgX0Vycm9yTWVzc2FnZSk7CnNpemVfdCBzdHJsZW4oY2hhciBjb25zdCogX1N0cik7CmNoYXIqIHN0cm5jYXQoY2hhciogX0Rlc3RpbmF0aW9uLCBjaGFyIGNvbnN0KiBfU291cmNlLCBzaXplX3QgX0NvdW50KTsKaW50IHN0cm5jbXAoY2hhciBjb25zdCogX1N0cjEsIGNoYXIgY29uc3QqIF9TdHIyLCBzaXplX3QgX01heENvdW50KTsKY2hhciogc3RybmNweShjaGFyKiBfRGVzdGluYXRpb24sIGNoYXIgY29uc3QqIF9Tb3VyY2UsIHNpemVfdCBfQ291bnQpOwpzaXplX3Qgc3RybmxlbihjaGFyIGNvbnN0KiBfU3RyaW5nLCBzaXplX3QgX01heENvdW50KTsKc3RhdGljIGlubGluZSBzaXplX3Qgc3Rybmxlbl9zKGNoYXIgY29uc3QqIF9TdHJpbmcsIHNpemVfdCBfTWF4Q291bnQpOwpjaGFyKiBzdHJwYnJrKGNoYXIgY29uc3QqIF9TdHIsIGNoYXIgY29uc3QqIF9Db250cm9sKTsKc2l6ZV90IHN0cnNwbihjaGFyIGNvbnN0KiBfU3RyLCBjaGFyIGNvbnN0KiBfQ29udHJvbCk7CmNoYXIqIHN0cnRvayhjaGFyKiBfU3RyaW5nLCBjaGFyIGNvbnN0KiBfRGVsaW1pdGVyKTsKCiNpZiBkZWZpbmVkKF9fU1REQ19PV05FUlNISVBfXykgCmNoYXIqIF9Pd25lciBfT3B0IHN0cmR1cChjaGFyIGNvbnN0KiBfU3RyaW5nKTsKI2Vsc2UKY2hhciogc3RyZHVwKGNoYXIgY29uc3QqIF9TdHJpbmcpOwojZW5kaWYKCmludCBzdHJjbXBpKGNoYXIgY29uc3QqIF9TdHJpbmcxLCBjaGFyIGNvbnN0KiBfU3RyaW5nMik7CmludCBzdHJpY21wKGNoYXIgY29uc3QqIF9TdHJpbmcxLCBjaGFyIGNvbnN0KiBfU3RyaW5nMik7CmNoYXIqIHN0cmx3cihjaGFyKiBfU3RyaW5nKTsKaW50IHN0cm5pY21wKGNoYXIgY29uc3QqIF9TdHJpbmcxLCBjaGFyIGNvbnN0KiBfU3RyaW5nMiwgc2l6ZV90IF9NYXhDb3VudCk7CmNoYXIqIHN0cm5zZXQoY2hhciogX1N0cmluZywgaW50IF9WYWx1ZSwgc2l6ZV90IF9NYXhDb3VudCk7CmNoYXIqIHN0cnJldihjaGFyKiBfU3RyaW5nKTsKY2hhciogc3Ryc2V0KGNoYXIqIF9TdHJpbmcsIGludCBfVmFsdWUpOyBjaGFyKiBzdHJ1cHIoY2hhciogX1N0cmluZyk7LyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgojaWZkZWYgTkRFQlVHCiNkZWZpbmUgYXNzZXJ0KC4uLikgKCh2b2lkKTApCiNlbHNlCiNkZWZpbmUgYXNzZXJ0KC4uLikgYXNzZXJ0KF9fVkFfQVJHU19fKQojZW5kaWYKAAAAAAAAAAAAAAAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgovLwojcHJhZ21hIG9uY2UKI2RlZmluZSBDSEFSX0JJVCAgICAgIDgKI2RlZmluZSBTQ0hBUl9NSU4gICAoLTEyOCkKI2RlZmluZSBTQ0hBUl9NQVggICAgIDEyNwojZGVmaW5lIFVDSEFSX01BWCAgICAgMHhmZgoKI2lmbmRlZiBfQ0hBUl9VTlNJR05FRAojZGVmaW5lIENIQVJfTUlOICAgIFNDSEFSX01JTgojZGVmaW5lIENIQVJfTUFYICAgIFNDSEFSX01BWAojZWxzZQojZGVmaW5lIENIQVJfTUlOICAgIDAKI2RlZmluZSBDSEFSX01BWCAgICBVQ0hBUl9NQVgKI2VuZGlmCgojZGVmaW5lIE1CX0xFTl9NQVggICAgNQojZGVmaW5lIFNIUlRfTUlOICAgICgtMzI3NjgpCiNkZWZpbmUgU0hSVF9NQVggICAgICAzMjc2NwojZGVmaW5lIFVTSFJUX01BWCAgICAgMHhmZmZmCiNkZWZpbmUgSU5UX01JTiAgICAgKC0yMTQ3NDgzNjQ3IC0gMSkKI2RlZmluZSBJTlRfTUFYICAgICAgIDIxNDc0ODM2NDcKI2RlZmluZSBVSU5UX01BWCAgICAgIDB4ZmZmZmZmZmYKI2RlZmluZSBMT05HX01JTiAgICAoLTIxNDc0ODM2NDdMIC0gMSkKI2RlZmluZSBMT05HX01BWCAgICAgIDIxNDc0ODM2NDdMCiNkZWZpbmUgVUxPTkdfTUFYICAgICAweGZmZmZmZmZmVUwKI2RlZmluZSBMTE9OR19NQVggICAgIDkyMjMzNzIwMzY4NTQ3NzU4MDdpNjQKI2RlZmluZSBMTE9OR19NSU4gICAoLTkyMjMzNzIwMzY4NTQ3NzU4MDdpNjQgLSAxKQojZGVmaW5lIFVMTE9OR19NQVggICAgMHhmZmZmZmZmZmZmZmZmZmZmdWk2NAoKI2RlZmluZSBfSThfTUlOICAgICAoLTEyN2k4IC0gMSkKI2RlZmluZSBfSThfTUFYICAgICAgIDEyN2k4CiNkZWZpbmUgX1VJOF9NQVggICAgICAweGZmdWk4CgojZGVmaW5lIF9JMTZfTUlOICAgICgtMzI3NjdpMTYgLSAxKQojZGVmaW5lIF9JMTZfTUFYICAgICAgMzI3NjdpMTYKI2RlZmluZSBfVUkxNl9NQVggICAgIDB4ZmZmZnVpMTYKCiNkZWZpbmUgX0kzMl9NSU4gICAgKC0yMTQ3NDgzNjQ3aTMyIC0gMSkKI2RlZmluZSBfSTMyX01BWCAgICAgIDIxNDc0ODM2NDdpMzIKI2RlZmluZSBfVUkzMl9NQVggICAgIDB4ZmZmZmZmZmZ1aTMyCgojZGVmaW5lIF9JNjRfTUlOICAgICgtOTIyMzM3MjAzNjg1NDc3NTgwN2k2NCAtIDEpCiNkZWZpbmUgX0k2NF9NQVggICAgICA5MjIzMzcyMDM2ODU0Nzc1ODA3aTY0CiNkZWZpbmUgX1VJNjRfTUFYICAgICAweGZmZmZmZmZmZmZmZmZmZmZ1aTY0CiNkZWZpbmUgU0laRV9NQVggMHhmZmZmZmZmZgoAAAAALyoKICogIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGNha2UgY29tcGlsZXIKICogIGh0dHBzOi8vZ2l0aHViLmNvbS90aHJhZGFtcy9jYWtlCiovCgojcHJhZ21hIG9uY2UKdHlwZWRlZiBpbnQgd2NoYXJfdDsKLy8gTG9jYWxlIGNhdGVnb3JpZXMKI2RlZmluZSBMQ19BTEwgICAgICAgICAgMAojZGVmaW5lIExDX0NPTExBVEUgICAgICAxCiNkZWZpbmUgTENfQ1RZUEUgICAgICAgIDIKI2RlZmluZSBMQ19NT05FVEFSWSAgICAgMwojZGVmaW5lIExDX05VTUVSSUMgICAgICA0CiNkZWZpbmUgTENfVElNRSAgICAgICAgIDUKCiNkZWZpbmUgTENfTUlOICAgICAgICAgIExDX0FMTAojZGVmaW5lIExDX01BWCAgICAgICAgICBMQ19USU1FCgovLyBMb2NhbGUgY29udmVudGlvbiBzdHJ1Y3R1cmUKc3RydWN0IGxjb252CnsKICAgIGNoYXIqIGRlY2ltYWxfcG9pbnQ7CiAgICBjaGFyKiB0aG91c2FuZHNfc2VwOwogICAgY2hhciogZ3JvdXBpbmc7CiAgICBjaGFyKiBpbnRfY3Vycl9zeW1ib2w7CiAgICBjaGFyKiBjdXJyZW5jeV9zeW1ib2w7CiAgICBjaGFyKiBtb25fZGVjaW1hbF9wb2ludDsKICAgIGNoYXIqIG1vbl90aG91c2FuZHNfc2VwOwogICAgY2hhciogbW9uX2dyb3VwaW5nOwogICAgY2hhciogcG9zaXRpdmVfc2lnbjsKICAgIGNoYXIqIG5lZ2F0aXZlX3NpZ247CiAgICBjaGFyICAgICBpbnRfZnJhY19kaWdpdHM7CiAgICBjaGFyICAgICBmcmFjX2RpZ2l0czsKICAgIGNoYXIgICAgIHBfY3NfcHJlY2VkZXM7CiAgICBjaGFyICAgICBwX3NlcF9ieV9zcGFjZTsKICAgIGNoYXIgICAgIG5fY3NfcHJlY2VkZXM7CiAgICBjaGFyICAgICBuX3NlcF9ieV9zcGFjZTsKICAgIGNoYXIgICAgIHBfc2lnbl9wb3NuOwogICAgY2hhciAgICAgbl9zaWduX3Bvc247CiAgICB3Y2hhcl90KiBfV19kZWNpbWFsX3BvaW50OwogICAgd2NoYXJfdCogX1dfdGhvdXNhbmRzX3NlcDsKICAgIHdjaGFyX3QqIF9XX2ludF9jdXJyX3N5bWJvbDsKICAgIHdjaGFyX3QqIF9XX2N1cnJlbmN5X3N5bWJvbDsKICAgIHdjaGFyX3QqIF9XX21vbl9kZWNpbWFsX3BvaW50OwogICAgd2NoYXJfdCogX1dfbW9uX3Rob3VzYW5kc19zZXA7CiAgICB3Y2hhcl90KiBfV19wb3NpdGl2ZV9zaWduOwogICAgd2NoYXJfdCogX1dfbmVnYXRpdmVfc2lnbjsKfTsKCnN0cnVjdCB0bTsKCmNoYXIqIHNldGxvY2FsZSgKICAgIGludCAgICAgICAgIF9DYXRlZ29yeSwKICAgIGNoYXIgY29uc3QqIF9Mb2NhbGUKKTsKCnN0cnVjdCBsY29udiogbG9jYWxlY29udih2b2lkKTsKADpiAQAAAAAAENEBAAAAAADRdJ4AV529KoBwUg///z4nCgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QUYAAAANQAAAHEAAABr////zvv//5K///8AAAAAAAAAABkACgAZGRkAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAGQARChkZGQMKBwABAAkLGAAACQYLAAALAAYZAAAAGRkZAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAABkACg0ZGRkADQAAAgAJDgAAAAkADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAATAAAAABMAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAQPAAAAAAkQAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAAAAAAAAAAAABEAAAAAEQAAAAAJEgAAAAAAEgAAEgAAGgAAABoaGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAGhoaAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAFwAAAAAXAAAAAAkUAAAAAAAUAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAAAAAAAAAAAABUAAAAAFQAAAAAJFgAAAAAAFgAAFgAAMDEyMzQ1Njc4OUFCQ0RFRg=="); + base64DecodeToExistingUint8Array(bufferView, 118544, "SmFuAEZlYgBNYXIAQXByAE1heQBKdW4ASnVsAEF1ZwBTZXAAT2N0AE5vdgBEZWMAAAAAAAAAAADd+///+v//fwAAAAAAAAAAAAAAAAAAAAABAAAAXSsBAAIAAAAjLgEAAwAAAHYcAQAEAAAAYAsBAAUAAABZEwEABgAAAHoQAQAHAAAASBMBAAgAAAD6DQEACQAAAAMkAQAKAAAApioBAAsAAAC+BQEADAAAAGwiAQAsAAAAkCABAC0AAABIHgEADgAAACkMAQAQAAAAAS0BABEAAABEFwEAJAAAAAYYAQAlAAAA9CMBAC4AAAA7BQEADQAAAFEiAQAPAAAA1yYBABQAAAC8FQEAFQAAAK4UAQAWAAAAuBQBABcAAACNIwEAGAAAAHUjAQAZAAAAAhUBABoAAACNIwEAIwAAAAEYAQAbAAAABB4BABwAAAD9DwEAHwAAAMwJAQAdAAAA0SwBACAAAAC/KwEAIQAAAFghAQAeAAAATC8BACIAAABEKwEAEgAAAAwjAQAmAAAAcwIBACcAAADKHAEAKAAAALAXAQATAAAAFhkBACkAAAAeDwEAKgAAAFEFAQArAAAAdggBAC8AAADRCAEAMAAAAIYcAQAxAAAAJB8BADIAAACOAwEAMwAAAGojAQA0AAAAOQgBADUAAAAgDgEAAQAAAAAAAAAFAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAAMjSAQAABAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA/////woAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ0QEA4NgBAA=="); + base64DecodeToExistingUint8Array(bufferView, 119216, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="); } var scratchBuffer = new ArrayBuffer(16); @@ -865,7 +865,7 @@ function asmFunc(imports) { if ((HEAP32[($5_1 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$1 } - fimport$0(86282 | 0, 78433 | 0, 10549 | 0, 74386 | 0); + fimport$0(86282 | 0, 78433 | 0, 10555 | 0, 74386 | 0); wasm2js_trap(); } HEAP32[($5_1 + 12 | 0) >> 2] = 0; @@ -934,7 +934,7 @@ function asmFunc(imports) { $27_1 = HEAP32[($8_1 + 132 | 0) >> 2] | 0; break label$1; } - $27_1 = 90498; + $27_1 = 90682; } HEAP32[$18_1 >> 2] = $27_1; HEAP32[($8_1 + 96 | 0) >> 2] = 0; @@ -1352,7 +1352,7 @@ function asmFunc(imports) { $19($8_1 + 100 | 0 | 0); } $70_1 = 0; - HEAP16[($8_1 + 22 | 0) >> 1] = HEAPU8[($70_1 + 90497 | 0) >> 0] | 0 | ((HEAPU8[($70_1 + 90498 | 0) >> 0] | 0) << 8 | 0) | 0; + HEAP16[($8_1 + 22 | 0) >> 1] = HEAPU8[($70_1 + 90681 | 0) >> 0] | 0 | ((HEAPU8[($70_1 + 90682 | 0) >> 0] | 0) << 8 | 0) | 0; HEAP32[($8_1 + 16 | 0) >> 2] = $15($8_1 + 22 | 0 | 0, ($8_1 + 22 | 0) + 1 | 0 | 0, 10 | 0) | 0; label$44 : { if (!((HEAP32[($8_1 + 16 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) { @@ -4236,7 +4236,7 @@ function asmFunc(imports) { break label$28 } $211_1 = 24; - $924(((HEAPU8[(HEAP32[($4_1 + 68 | 0) >> 2] | 0) >> 0] | 0) << $211_1 | 0) >> $211_1 | 0 | 0, HEAP32[(0 + 117800 | 0) >> 2] | 0 | 0) | 0; + $924(((HEAPU8[(HEAP32[($4_1 + 68 | 0) >> 2] | 0) >> 0] | 0) << $211_1 | 0) >> $211_1 | 0 | 0, HEAP32[(0 + 117976 | 0) >> 2] | 0 | 0) | 0; HEAP32[($4_1 + 68 | 0) >> 2] = (HEAP32[($4_1 + 68 | 0) >> 2] | 0) + 1 | 0; continue label$29; }; @@ -4268,7 +4268,7 @@ function asmFunc(imports) { if (!((HEAP32[($4_1 + 72 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) { break label$33 } - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; } $248_1 = HEAP32[($4_1 + 92 | 0) >> 2] | 0; HEAP32[($4_1 + 4 | 0) >> 2] = 88747; @@ -4317,11 +4317,11 @@ function asmFunc(imports) { if (!((HEAPU8[($4_1 + 55 | 0) >> 0] | 0) & 1 | 0)) { break label$43 } - $924(126 | 0, HEAP32[(0 + 117800 | 0) >> 2] | 0 | 0) | 0; + $924(126 | 0, HEAP32[(0 + 117976 | 0) >> 2] | 0 | 0) | 0; HEAP32[($4_1 + 56 | 0) >> 2] = (HEAP32[($4_1 + 56 | 0) >> 2] | 0) + 1 | 0; break label$42; } - $924(32 | 0, HEAP32[(0 + 117800 | 0) >> 2] | 0 | 0) | 0; + $924(32 | 0, HEAP32[(0 + 117976 | 0) >> 2] | 0 | 0) | 0; label$44 : { if ((HEAPU8[($4_1 + 67 | 0) >> 0] | 0) & 1 | 0) { break label$44 @@ -4363,7 +4363,7 @@ function asmFunc(imports) { } $918(73188 | 0, 0 | 0) | 0; } - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; HEAP32[((HEAP32[($4_1 + 140 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4_1 + 60 | 0) >> 2] | 0; HEAP32[((HEAP32[($4_1 + 140 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 56 | 0) >> 2] | 0; if (!(0 & 1 | 0)) { @@ -5054,7 +5054,7 @@ function asmFunc(imports) { HEAP32[($5_1 + 20 | 0) >> 2] = 1; HEAP32[($5_1 + 24 | 0) >> 2] = 1; HEAP32[($5_1 + 28 | 0) >> 2] = 0; - HEAP32[($5_1 + 32 | 0) >> 2] = 90498; + HEAP32[($5_1 + 32 | 0) >> 2] = 90682; $17_1 = $43($5_1 + 12 | 0 | 0, HEAP32[($5_1 + 40 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 36 | 0) >> 2] | 0 | 0) | 0; global$0 = $5_1 + 48 | 0; return $17_1 | 0; @@ -5597,7 +5597,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$3 } - fimport$0(80657 | 0, 78433 | 0, 32673 | 0, 75053 | 0); + fimport$0(80657 | 0, 78433 | 0, 32684 | 0, 75053 | 0); wasm2js_trap(); } $68(HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); @@ -5659,7 +5659,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$3 } - fimport$0(80657 | 0, 78433 | 0, 30460 | 0, 75071 | 0); + fimport$0(80657 | 0, 78433 | 0, 30471 | 0, 75071 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -7068,70 +7068,70 @@ function asmFunc(imports) { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 73990 | 0) | 0) { break label$2 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(95984 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(96160 | 0) | 0; break label$1; } label$3 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 74047 | 0) | 0) { break label$3 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(98896 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(99072 | 0) | 0; break label$1; } label$4 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 74023 | 0) | 0) { break label$4 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(100688 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(100864 | 0) | 0; break label$1; } label$5 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 74001 | 0) | 0) { break label$5 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(101024 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(101200 | 0) | 0; break label$1; } label$6 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 73979 | 0) | 0) { break label$6 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(108032 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(108208 | 0) | 0; break label$1; } label$7 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 74011 | 0) | 0) { break label$7 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(110368 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(110544 | 0) | 0; break label$1; } label$8 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 73944 | 0) | 0) { break label$8 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(115040 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(115216 | 0) | 0; break label$1; } label$9 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 73956 | 0) | 0) { break label$9 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(115232 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(115408 | 0) | 0; break label$1; } label$10 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 74035 | 0) | 0) { break label$10 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(116528 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(116704 | 0) | 0; break label$1; } label$11 : { if ($934(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 73968 | 0) | 0) { break label$11 } - HEAP32[($4_1 + 12 | 0) >> 2] = $937(90512 | 0) | 0; + HEAP32[($4_1 + 12 | 0) >> 2] = $937(90688 | 0) | 0; break label$1; } HEAP32[($4_1 + 12 | 0) >> 2] = 0; @@ -7319,7 +7319,7 @@ function asmFunc(imports) { $16(); break label$2; } - HEAP32[($4_1 + 4 | 0) >> 2] = $937(90498 | 0) | 0; + HEAP32[($4_1 + 4 | 0) >> 2] = $937(90682 | 0) | 0; label$5 : { if (!((HEAP32[($4_1 + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) { break label$5 @@ -7572,7 +7572,7 @@ function asmFunc(imports) { HEAP32[($3_1 + 20 | 0) >> 2] = HEAP32[($3_1 + 44 | 0) >> 2] | 0; HEAP32[($3_1 + 24 | 0) >> 2] = 1; HEAP32[($3_1 + 28 | 0) >> 2] = 1; - HEAP32[($3_1 + 36 | 0) >> 2] = 90498; + HEAP32[($3_1 + 36 | 0) >> 2] = 90682; HEAP32[($3_1 + 12 | 0) >> 2] = 0; HEAP32[($3_1 + 8 | 0) >> 2] = $106(HEAP32[($3_1 + 44 | 0) >> 2] | 0 | 0) | 0; $18_1 = 24; @@ -7736,7 +7736,7 @@ function asmFunc(imports) { break label$9 } $15_1 = 0; - HEAP16[($8_1 + 86 | 0) >> 1] = HEAPU8[($15_1 + 90497 | 0) >> 0] | 0 | ((HEAPU8[($15_1 + 90498 | 0) >> 0] | 0) << 8 | 0) | 0; + HEAP16[($8_1 + 86 | 0) >> 1] = HEAPU8[($15_1 + 90681 | 0) >> 0] | 0 | ((HEAPU8[($15_1 + 90682 | 0) >> 0] | 0) << 8 | 0) | 0; HEAP32[($8_1 + 80 | 0) >> 2] = $15($8_1 + 86 | 0 | 0, ($8_1 + 86 | 0) + 1 | 0 | 0, 10 | 0) | 0; label$10 : { if (!((HEAP32[($8_1 + 80 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) { @@ -7791,7 +7791,7 @@ function asmFunc(imports) { } $989(HEAP32[($8_1 + 100 | 0) >> 2] | 0 | 0); $16_1 = 0; - HEAP16[($8_1 + 38 | 0) >> 1] = HEAPU8[($16_1 + 90497 | 0) >> 0] | 0 | ((HEAPU8[($16_1 + 90498 | 0) >> 0] | 0) << 8 | 0) | 0; + HEAP16[($8_1 + 38 | 0) >> 1] = HEAPU8[($16_1 + 90681 | 0) >> 0] | 0 | ((HEAPU8[($16_1 + 90682 | 0) >> 0] | 0) << 8 | 0) | 0; HEAP32[($8_1 + 32 | 0) >> 2] = $15($8_1 + 38 | 0 | 0, ($8_1 + 38 | 0) + 1 | 0 | 0, 10 | 0) | 0; label$12 : { if (!((HEAP32[($8_1 + 32 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) { @@ -11645,7 +11645,7 @@ function asmFunc(imports) { if ((((HEAPU8[(HEAP32[($3_1 + 20 | 0) >> 2] | 0) >> 0] | 0) << $42_1 | 0) >> $42_1 | 0 | 0) == (45 | 0) & 1 | 0) { break label$4 } - fimport$0(88162 | 0, 78433 | 0, 12261 | 0, 73572 | 0); + fimport$0(88162 | 0, 78433 | 0, 12267 | 0, 73572 | 0); wasm2js_trap(); } HEAP32[($3_1 + 8 | 0) >> 2] = 0; @@ -11656,7 +11656,7 @@ function asmFunc(imports) { break label$6 } label$8 : { - if ($939(HEAP32[((118448 + ((HEAP32[($3_1 + 8 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0, $938(HEAP32[((118448 + ((HEAP32[($3_1 + 8 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) { + if ($939(HEAP32[((118624 + ((HEAP32[($3_1 + 8 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0, $938(HEAP32[((118624 + ((HEAP32[($3_1 + 8 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) { break label$8 } i64toi32_i32$0 = 0; @@ -11667,7 +11667,7 @@ function asmFunc(imports) { i64toi32_i32$0 = $246$hi; i64toi32_i32$2 = 1; i64toi32_i32$1 = $90$hi; - i64toi32_i32$3 = HEAP32[(118448 + ((HEAP32[($3_1 + 8 | 0) >> 2] | 0) << 3 | 0) | 0) >> 2] | 0; + i64toi32_i32$3 = HEAP32[(118624 + ((HEAP32[($3_1 + 8 | 0) >> 2] | 0) << 3 | 0) | 0) >> 2] | 0; i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; @@ -12036,7 +12036,7 @@ function asmFunc(imports) { $16(); break label$2; } - HEAP32[($5_1 + 24 | 0) >> 2] = $937(90498 | 0) | 0; + HEAP32[($5_1 + 24 | 0) >> 2] = $937(90682 | 0) | 0; label$17 : { if (!((HEAP32[($5_1 + 24 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) { break label$17 @@ -12513,7 +12513,7 @@ function asmFunc(imports) { HEAP32[$6_1 >> 2] = HEAP32[((HEAP32[($6_1 + 2532 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0; $930($6_1 + 1776 | 0 | 0, 50 | 0, 78290 | 0, $6_1 | 0) | 0; $51_1 = 0; - $14($0_1 | 0, $6_1 + 1840 | 0 | 0, $6_1 + 1776 | 0 | 0, 90498 | 0, $51_1 | 0, $51_1 | 0); + $14($0_1 | 0, $6_1 + 1840 | 0 | 0, $6_1 + 1776 | 0 | 0, 90682 | 0, $51_1 | 0, $51_1 | 0); $5($0_1 | 0); label$4 : { if (!((HEAP32[$0_1 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) { @@ -12535,7 +12535,7 @@ function asmFunc(imports) { } $893($6_1 + 784 | 0 | 0, 0 | 0, 688 | 0) | 0; $94_1 = 0; - $14($0_1 | 0, $6_1 + 784 | 0 | 0, $6_1 + 1472 | 0 | 0, 90498 | 0, $94_1 | 0, $94_1 | 0); + $14($0_1 | 0, $6_1 + 784 | 0 | 0, $6_1 + 1472 | 0 | 0, 90682 | 0, $94_1 | 0, $94_1 | 0); $5($0_1 | 0); label$7 : { if (!((HEAP32[$0_1 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) { @@ -12576,7 +12576,7 @@ function asmFunc(imports) { $930($6_1 + 720 | 0 | 0, 50 | 0, 78290 | 0, $6_1 + 16 | 0 | 0) | 0; $893($6_1 + 32 | 0 | 0, 0 | 0, 688 | 0) | 0; $143_1 = 0; - $14($0_1 | 0, $6_1 + 32 | 0 | 0, $6_1 + 720 | 0 | 0, 90498 | 0, $143_1 | 0, $143_1 | 0); + $14($0_1 | 0, $6_1 + 32 | 0 | 0, $6_1 + 720 | 0 | 0, 90682 | 0, $143_1 | 0, $143_1 | 0); $5($0_1 | 0); label$9 : { if (!((HEAP32[$0_1 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) { @@ -13132,7 +13132,7 @@ function asmFunc(imports) { HEAP32[($3_1 + 988 | 0) >> 2] = $914($3_1 + 992 | 0 | 0) | 0; $893($3_1 + 296 | 0 | 0, 0 | 0, 688 | 0) | 0; $893($3_1 + 192 | 0 | 0, 0 | 0, 100 | 0) | 0; - $69_1 = 118368 + ((HEAP32[((HEAP32[($3_1 + 988 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) << 2 | 0) | 0; + $69_1 = 118544 + ((HEAP32[((HEAP32[($3_1 + 988 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) << 2 | 0) | 0; $71_1 = HEAP32[((HEAP32[($3_1 + 988 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0; HEAP32[($3_1 + 8 | 0) >> 2] = (HEAP32[((HEAP32[($3_1 + 988 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + 1900 | 0; HEAP32[($3_1 + 4 | 0) >> 2] = $71_1; @@ -13230,7 +13230,7 @@ function asmFunc(imports) { if (!((HEAP32[((HEAP32[($3_1 + 20 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) & 8 | 0)) { break label$10 } - $11($3_1 + 24 | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11($3_1 + 24 | 0 | 0, 90681 | 0, 0 | 0) | 0; break label$9; } label$11 : { @@ -13479,7 +13479,7 @@ function asmFunc(imports) { HEAP32[$12_1 >> 2] = (HEAP32[$12_1 >> 2] | 0) + -1 | 0; break label$1; } - fimport$0(75513 | 0, 78433 | 0, 12084 | 0, 71637 | 0); + fimport$0(75513 | 0, 78433 | 0, 12090 | 0, 71637 | 0); wasm2js_trap(); } global$0 = $3_1 + 16 | 0; @@ -14020,10 +14020,10 @@ function asmFunc(imports) { break label$5 } label$7 : { - if ($939(HEAP32[((118448 + ((HEAP32[($3_1 + 4 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0, (HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 2 | 0 | 0, $938(HEAP32[((118448 + ((HEAP32[($3_1 + 4 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) { + if ($939(HEAP32[((118624 + ((HEAP32[($3_1 + 4 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0, (HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 2 | 0 | 0, $938(HEAP32[((118624 + ((HEAP32[($3_1 + 4 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) { break label$7 } - HEAP32[($3_1 + 12 | 0) >> 2] = HEAP32[(118448 + ((HEAP32[($3_1 + 4 | 0) >> 2] | 0) << 3 | 0) | 0) >> 2] | 0; + HEAP32[($3_1 + 12 | 0) >> 2] = HEAP32[(118624 + ((HEAP32[($3_1 + 4 | 0) >> 2] | 0) << 3 | 0) | 0) >> 2] | 0; break label$1; } HEAP32[($3_1 + 4 | 0) >> 2] = (HEAP32[($3_1 + 4 | 0) >> 2] | 0) + 1 | 0; @@ -14072,12 +14072,12 @@ function asmFunc(imports) { break label$4 } label$6 : { - if (!((HEAP32[(118448 + ((HEAP32[($5_1 + 28 | 0) >> 2] | 0) << 3 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($5_1 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) { + if (!((HEAP32[(118624 + ((HEAP32[($5_1 + 28 | 0) >> 2] | 0) << 3 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($5_1 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) { break label$6 } $30_1 = HEAP32[($5_1 + 32 | 0) >> 2] | 0; $31_1 = HEAP32[($5_1 + 36 | 0) >> 2] | 0; - HEAP32[$5_1 >> 2] = HEAP32[((118448 + ((HEAP32[($5_1 + 28 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0; + HEAP32[$5_1 >> 2] = HEAP32[((118624 + ((HEAP32[($5_1 + 28 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 2] | 0; $930($30_1 | 0, $31_1 | 0, 69495 | 0, $5_1 | 0) | 0; HEAP32[($5_1 + 44 | 0) >> 2] = 0; break label$1; @@ -14112,14 +14112,14 @@ function asmFunc(imports) { HEAP32[($5_1 + 64 | 0) >> 2] = $2_1; $10_1 = ((HEAP32[($5_1 + 72 | 0) >> 2] | 0) + 8 | 0) + 8 | 0; i64toi32_i32$2 = 0; - i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 118416 | 0) >> 2] | 0; - i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 118420 | 0) >> 2] | 0; + i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 118592 | 0) >> 2] | 0; + i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 118596 | 0) >> 2] | 0; $531_1 = i64toi32_i32$0; i64toi32_i32$0 = $10_1; HEAP32[i64toi32_i32$0 >> 2] = $531_1; HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1; $12_1 = 16; - $14_1 = 118416; + $14_1 = 118592; i64toi32_i32$2 = $14_1 + $12_1 | 0; i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0; i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0; @@ -16100,7 +16100,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$1 } - fimport$0(80802 | 0, 78433 | 0, 47548 | 0, 76155 | 0); + fimport$0(80802 | 0, 78433 | 0, 47567 | 0, 76155 | 0); wasm2js_trap(); } global$0 = $3_1 + 16 | 0; @@ -16150,7 +16150,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$2 } - fimport$0(82579 | 0, 78433 | 0, 16580 | 0, 77725 | 0); + fimport$0(82579 | 0, 78433 | 0, 16591 | 0, 77725 | 0); wasm2js_trap(); } HEAP32[($3_1 + 12 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0; @@ -16159,7 +16159,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[($3_1 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) != (4 | 0) & 1 | 0) { break label$3 } - fimport$0(85506 | 0, 78433 | 0, 16584 | 0, 77725 | 0); + fimport$0(85506 | 0, 78433 | 0, 16595 | 0, 77725 | 0); wasm2js_trap(); } $38_1 = HEAP32[($3_1 + 12 | 0) >> 2] | 0; @@ -16327,7 +16327,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15549 | 0, 73199 | 0); + fimport$0(86300 | 0, 78433 | 0, 15560 | 0, 73199 | 0); wasm2js_trap(); } $117_1 = (HEAPU8[($3_1 + 15 | 0) >> 0] | 0) & 1 | 0; @@ -16555,7 +16555,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15597 | 0, 74717 | 0); + fimport$0(86300 | 0, 78433 | 0, 15608 | 0, 74717 | 0); wasm2js_trap(); } $86_1 = HEAP32[($3_1 + 28 | 0) >> 2] | 0; @@ -16577,7 +16577,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$2 } - fimport$0(82579 | 0, 78433 | 0, 16566 | 0, 77693 | 0); + fimport$0(82579 | 0, 78433 | 0, 16577 | 0, 77693 | 0); wasm2js_trap(); } HEAP32[($3_1 + 12 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0; @@ -16586,7 +16586,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[($3_1 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) != (4 | 0) & 1 | 0) { break label$3 } - fimport$0(85506 | 0, 78433 | 0, 16570 | 0, 77693 | 0); + fimport$0(85506 | 0, 78433 | 0, 16581 | 0, 77693 | 0); wasm2js_trap(); } $38_1 = HEAP32[($3_1 + 12 | 0) >> 2] | 0; @@ -16755,7 +16755,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15760 | 0, 66824 | 0); + fimport$0(86300 | 0, 78433 | 0, 15771 | 0, 66824 | 0); wasm2js_trap(); } $65_1 = HEAP32[($3_1 + 12 | 0) >> 2] | 0; @@ -16879,7 +16879,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15794 | 0, 66801 | 0); + fimport$0(86300 | 0, 78433 | 0, 15805 | 0, 66801 | 0); wasm2js_trap(); } $69_1 = HEAP32[($3_1 + 12 | 0) >> 2] | 0; @@ -17003,7 +17003,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15828 | 0, 74194 | 0); + fimport$0(86300 | 0, 78433 | 0, 15839 | 0, 74194 | 0); wasm2js_trap(); } $65_1 = HEAP32[($3_1 + 12 | 0) >> 2] | 0; @@ -17127,7 +17127,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15862 | 0, 74170 | 0); + fimport$0(86300 | 0, 78433 | 0, 15873 | 0, 74170 | 0); wasm2js_trap(); } $69_1 = HEAP32[($3_1 + 12 | 0) >> 2] | 0; @@ -17342,7 +17342,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15896 | 0, 74143 | 0); + fimport$0(86300 | 0, 78433 | 0, 15907 | 0, 74143 | 0); wasm2js_trap(); } i64toi32_i32$2 = $3_1; @@ -17560,7 +17560,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15930 | 0, 74114 | 0); + fimport$0(86300 | 0, 78433 | 0, 15941 | 0, 74114 | 0); wasm2js_trap(); } i64toi32_i32$2 = $3_1; @@ -17665,7 +17665,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15964 | 0, 68277 | 0); + fimport$0(86300 | 0, 78433 | 0, 15975 | 0, 68277 | 0); wasm2js_trap(); } $56_1 = Math_fround(HEAPF32[($3_1 + 12 | 0) >> 2]); @@ -17767,7 +17767,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 15998 | 0, 76505 | 0); + fimport$0(86300 | 0, 78433 | 0, 16009 | 0, 76505 | 0); wasm2js_trap(); } $56_1 = +HEAPF64[($3_1 + 8 | 0) >> 3]; @@ -18136,7 +18136,7 @@ function asmFunc(imports) { break label$2; }; } - fimport$0(86300 | 0, 78433 | 0, 16050 | 0, 76522 | 0); + fimport$0(86300 | 0, 78433 | 0, 16061 | 0, 76522 | 0); wasm2js_trap(); } i64toi32_i32$2 = $4_1 + 232 | 0; @@ -20573,7 +20573,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($6_1 + 124 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$8 } - fimport$0(81216 | 0, 78433 | 0, 16659 | 0, 67937 | 0); + fimport$0(81216 | 0, 78433 | 0, 16670 | 0, 67937 | 0); wasm2js_trap(); } HEAP32[(HEAP32[($6_1 + 124 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($6_1 + 116 | 0) >> 2] | 0) >> 2] | 0; @@ -20731,7 +20731,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 1232 | 0) >> 2] | 0) + 68 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$7 } - fimport$0(81472 | 0, 78433 | 0, 16712 | 0, 75603 | 0); + fimport$0(81472 | 0, 78433 | 0, 16723 | 0, 75603 | 0); wasm2js_trap(); } $111_1 = $937(HEAP32[($4_1 + 1236 | 0) >> 2] | 0 | 0) | 0; @@ -20909,7 +20909,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 1232 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$16 } - fimport$0(81190 | 0, 78433 | 0, 16746 | 0, 75603 | 0); + fimport$0(81190 | 0, 78433 | 0, 16757 | 0, 75603 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($4_1 + 1232 | 0) >> 2] | 0) + 96 | 0) >> 2] = HEAP32[($4_1 + 668 | 0) >> 2] | 0; @@ -20919,7 +20919,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 1232 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$17 } - fimport$0(80571 | 0, 78433 | 0, 16751 | 0, 75603 | 0); + fimport$0(80571 | 0, 78433 | 0, 16762 | 0, 75603 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($4_1 + 880 | 0) >> 2] | 0) + 100 | 0) >> 2] = HEAP32[($4_1 + 668 | 0) >> 2] | 0; @@ -21208,7 +21208,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 1232 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$37 } - fimport$0(81190 | 0, 78433 | 0, 16859 | 0, 75603 | 0); + fimport$0(81190 | 0, 78433 | 0, 16870 | 0, 75603 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($4_1 + 1232 | 0) >> 2] | 0) + 96 | 0) >> 2] = HEAP32[($4_1 + 44 | 0) >> 2] | 0; @@ -21782,14 +21782,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 47525 | 0, 78053 | 0); + fimport$0(83843 | 0, 78433 | 0, 47544 | 0, 78053 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 47526 | 0, 78053 | 0); + fimport$0(80678 | 0, 78433 | 0, 47545 | 0, 78053 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 60 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -21816,7 +21816,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[($4_1 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$3 } - fimport$0(81670 | 0, 78433 | 0, 49943 | 0, 73692 | 0); + fimport$0(81670 | 0, 78433 | 0, 49962 | 0, 73692 | 0); wasm2js_trap(); } HEAP32[(HEAP32[($4_1 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -21826,7 +21826,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80673 | 0, 78433 | 0, 49948 | 0, 73692 | 0); + fimport$0(80673 | 0, 78433 | 0, 49967 | 0, 73692 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 56 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -21967,7 +21967,7 @@ function asmFunc(imports) { $3_1 = global$0 - 16 | 0; global$0 = $3_1; HEAP32[($3_1 + 12 | 0) >> 2] = $0_1; - $6_1 = $223(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0, 90498 | 0) | 0; + $6_1 = $223(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0, 90682 | 0) | 0; global$0 = $3_1 + 16 | 0; return $6_1 | 0; } @@ -21980,7 +21980,7 @@ function asmFunc(imports) { global$0 = $4_1; HEAP32[($4_1 + 8 | 0) >> 2] = $0_1; HEAP32[($4_1 + 4 | 0) >> 2] = $1_1; - HEAP32[$4_1 >> 2] = $223(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 90498 | 0) | 0; + HEAP32[$4_1 >> 2] = $223(HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0, 90682 | 0) | 0; label$1 : { label$2 : { if (!((HEAP32[$4_1 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) { @@ -22097,7 +22097,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($6_1 + 24 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$10 } - fimport$0(81236 | 0, 78433 | 0, 17112 | 0, 66352 | 0); + fimport$0(81236 | 0, 78433 | 0, 17123 | 0, 66352 | 0); wasm2js_trap(); } $60_1 = $234(HEAP32[($6_1 + 28 | 0) >> 2] | 0 | 0) | 0; @@ -22129,7 +22129,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($6_1 + 12 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$13 } - fimport$0(80554 | 0, 78433 | 0, 17131 | 0, 66352 | 0); + fimport$0(80554 | 0, 78433 | 0, 17142 | 0, 66352 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($6_1 + 12 | 0) >> 2] | 0) + 100 | 0) >> 2] = HEAP32[($6_1 + 4 | 0) >> 2] | 0; @@ -22510,7 +22510,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($3_1 + 72 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$11 } - fimport$0(82813 | 0, 78433 | 0, 17413 | 0, 72244 | 0); + fimport$0(82813 | 0, 78433 | 0, 17424 | 0, 72244 | 0); wasm2js_trap(); } HEAP8[((HEAP32[($3_1 + 76 | 0) >> 2] | 0) + 737 | 0) >> 0] = (HEAPU8[($3_1 + 71 | 0) >> 0] | 0) & 1 | 0; @@ -22964,7 +22964,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 212 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$9 } - fimport$0(80755 | 0, 78433 | 0, 50264 | 0, 69711 | 0); + fimport$0(80755 | 0, 78433 | 0, 50283 | 0, 69711 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($5_1 + 212 | 0) >> 2] | 0) + 56 | 0) >> 2] = HEAP32[($5_1 + 200 | 0) >> 2] | 0; @@ -23067,7 +23067,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 212 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$16 } - fimport$0(86197 | 0, 78433 | 0, 50305 | 0, 69711 | 0); + fimport$0(86197 | 0, 78433 | 0, 50324 | 0, 69711 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($5_1 + 212 | 0) >> 2] | 0) + 56 | 0) >> 2] = HEAP32[($5_1 + 72 | 0) >> 2] | 0; @@ -23621,21 +23621,21 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($8_1 + 836 | 0) >> 2] | 0) + 688 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$22 } - fimport$0(84267 | 0, 78433 | 0, 28449 | 0, 76665 | 0); + fimport$0(84267 | 0, 78433 | 0, 28460 | 0, 76665 | 0); wasm2js_trap(); } label$23 : { if ((HEAP32[((HEAP32[((HEAP32[((HEAP32[($8_1 + 836 | 0) >> 2] | 0) + 688 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$23 } - fimport$0(82877 | 0, 78433 | 0, 28450 | 0, 76665 | 0); + fimport$0(82877 | 0, 78433 | 0, 28461 | 0, 76665 | 0); wasm2js_trap(); } label$24 : { if ((HEAP32[((HEAP32[((HEAP32[((HEAP32[((HEAP32[($8_1 + 836 | 0) >> 2] | 0) + 688 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$24 } - fimport$0(82022 | 0, 78433 | 0, 28451 | 0, 76665 | 0); + fimport$0(82022 | 0, 78433 | 0, 28462 | 0, 76665 | 0); wasm2js_trap(); } HEAP32[($8_1 + 784 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[((HEAP32[((HEAP32[((HEAP32[($8_1 + 836 | 0) >> 2] | 0) + 688 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; @@ -23877,7 +23877,7 @@ function asmFunc(imports) { if (HEAP32[(HEAP32[($3_1 + 104 | 0) >> 2] | 0) >> 2] | 0) { break label$4 } - fimport$0(85641 | 0, 78433 | 0, 22161 | 0, 72431 | 0); + fimport$0(85641 | 0, 78433 | 0, 22172 | 0, 72431 | 0); wasm2js_trap(); } label$5 : while (1) { @@ -24124,7 +24124,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 76 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 17498 | 0, 75280 | 0); + fimport$0(80657 | 0, 78433 | 0, 17509 | 0, 75280 | 0); wasm2js_trap(); } $263(HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0); @@ -24349,7 +24349,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$23 } - fimport$0(81603 | 0, 78433 | 0, 32282 | 0, 66596 | 0); + fimport$0(81603 | 0, 78433 | 0, 32293 | 0, 66596 | 0); wasm2js_trap(); } $167_1 = $526(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0) | 0; @@ -25668,7 +25668,7 @@ function asmFunc(imports) { } $816_1 = 0; $254(950 | 0, HEAP32[($3_1 + 572 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[($3_1 + 436 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0) + 184 | 0) >> 2] | 0 | 0, $816_1 | 0, 85896 | 0, $816_1 | 0) | 0; - fimport$0(75513 | 0, 78433 | 0, 22671 | 0, 72551 | 0); + fimport$0(75513 | 0, 78433 | 0, 22682 | 0, 72551 | 0); wasm2js_trap(); } } @@ -26424,14 +26424,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($7_1 + 260 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$2 } - fimport$0(71316 | 0, 78433 | 0, 21494 | 0, 68793 | 0); + fimport$0(71316 | 0, 78433 | 0, 21505 | 0, 68793 | 0); wasm2js_trap(); } label$3 : { if ((HEAP32[((HEAP32[($7_1 + 256 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(71289 | 0, 78433 | 0, 21495 | 0, 68793 | 0); + fimport$0(71289 | 0, 78433 | 0, 21506 | 0, 68793 | 0); wasm2js_trap(); } label$4 : { @@ -26442,24 +26442,24 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($7_1 + 260 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$5 } - fimport$0(83569 | 0, 78433 | 0, 21500 | 0, 68793 | 0); + fimport$0(83569 | 0, 78433 | 0, 21511 | 0, 68793 | 0); wasm2js_trap(); } label$6 : { if ((HEAP32[((HEAP32[($7_1 + 256 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$6 } - fimport$0(83534 | 0, 78433 | 0, 21501 | 0, 68793 | 0); + fimport$0(83534 | 0, 78433 | 0, 21512 | 0, 68793 | 0); wasm2js_trap(); } - HEAP32[($7_1 + 248 | 0) >> 2] = 90498; + HEAP32[($7_1 + 248 | 0) >> 2] = 90682; label$7 : { if (!((HEAP32[((HEAP32[((HEAP32[($7_1 + 260 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + 220 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) { break label$7 } HEAP32[($7_1 + 248 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[((HEAP32[($7_1 + 260 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + 220 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; } - HEAP32[($7_1 + 244 | 0) >> 2] = 90498; + HEAP32[($7_1 + 244 | 0) >> 2] = 90682; label$8 : { if (!((HEAP32[((HEAP32[((HEAP32[($7_1 + 256 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + 220 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) { break label$8 @@ -26577,14 +26577,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 17514 | 0, 78087 | 0); + fimport$0(83843 | 0, 78433 | 0, 17525 | 0, 78087 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 76 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 17515 | 0, 78087 | 0); + fimport$0(80678 | 0, 78433 | 0, 17526 | 0, 78087 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 76 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -28353,7 +28353,7 @@ function asmFunc(imports) { break label$8; }; } - fimport$0(75513 | 0, 78433 | 0, 18083 | 0, 71474 | 0); + fimport$0(75513 | 0, 78433 | 0, 18094 | 0, 71474 | 0); wasm2js_trap(); } HEAP32[($5_1 + 1500 | 0) >> 2] = 0; @@ -28409,7 +28409,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 752 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$10 } - fimport$0(82699 | 0, 78433 | 0, 18133 | 0, 72377 | 0); + fimport$0(82699 | 0, 78433 | 0, 18144 | 0, 72377 | 0); wasm2js_trap(); } HEAP32[($3_1 + 748 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 752 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -28500,7 +28500,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 752 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$16 } - fimport$0(82773 | 0, 78433 | 0, 18147 | 0, 72377 | 0); + fimport$0(82773 | 0, 78433 | 0, 18158 | 0, 72377 | 0); wasm2js_trap(); } HEAP32[($3_1 + 680 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 752 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -28513,7 +28513,7 @@ function asmFunc(imports) { if ((HEAP32[($3_1 + 684 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$17 } - fimport$0(82967 | 0, 78433 | 0, 18156 | 0, 72377 | 0); + fimport$0(82967 | 0, 78433 | 0, 18167 | 0, 72377 | 0); wasm2js_trap(); } label$18 : { @@ -29217,7 +29217,7 @@ function asmFunc(imports) { break label$69 } } - fimport$0(87019 | 0, 78433 | 0, 18441 | 0, 72377 | 0); + fimport$0(87019 | 0, 78433 | 0, 18452 | 0, 72377 | 0); wasm2js_trap(); } HEAP32[($3_1 + 764 | 0) >> 2] = HEAP32[($3_1 + 756 | 0) >> 2] | 0; @@ -29676,7 +29676,7 @@ function asmFunc(imports) { if (!(HEAP32[($3_1 + 84 | 0) >> 2] | 0)) { break label$7 } - fimport$0(84788 | 0, 78433 | 0, 49267 | 0, 74485 | 0); + fimport$0(84788 | 0, 78433 | 0, 49286 | 0, 74485 | 0); wasm2js_trap(); } label$8 : { @@ -29841,7 +29841,7 @@ function asmFunc(imports) { HEAP32[($3_1 + 92 | 0) >> 2] = 16; break label$1; } - fimport$0(75513 | 0, 78433 | 0, 49385 | 0, 74485 | 0); + fimport$0(75513 | 0, 78433 | 0, 49404 | 0, 74485 | 0); wasm2js_trap(); } $209_1 = HEAP32[($3_1 + 92 | 0) >> 2] | 0; @@ -29864,7 +29864,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 18451 | 0, 75307 | 0); + fimport$0(80657 | 0, 78433 | 0, 18462 | 0, 75307 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -29986,14 +29986,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 22297 | 0, 73753 | 0); + fimport$0(83843 | 0, 78433 | 0, 22308 | 0, 73753 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 22298 | 0, 73753 | 0); + fimport$0(80678 | 0, 78433 | 0, 22309 | 0, 73753 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -30705,7 +30705,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 644 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$34 } - fimport$0(83319 | 0, 78433 | 0, 18784 | 0, 73433 | 0); + fimport$0(83319 | 0, 78433 | 0, 18795 | 0, 73433 | 0); wasm2js_trap(); } HEAP32[($4_1 + 640 | 0) >> 2] = $319(HEAP32[($4_1 + 972 | 0) >> 2] | 0 | 0, (HEAP32[((HEAP32[((HEAP32[($4_1 + 644 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 40 | 0 | 0) | 0; @@ -30724,7 +30724,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 972 | 0) >> 2] | 0) + 724 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$38 } - fimport$0(82206 | 0, 78433 | 0, 18794 | 0, 73433 | 0); + fimport$0(82206 | 0, 78433 | 0, 18805 | 0, 73433 | 0); wasm2js_trap(); } HEAP32[($4_1 + 636 | 0) >> 2] = 0; @@ -31044,14 +31044,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 964 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$57 } - fimport$0(66484 | 0, 78433 | 0, 18914 | 0, 73433 | 0); + fimport$0(66484 | 0, 78433 | 0, 18925 | 0, 73433 | 0); wasm2js_trap(); } label$58 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 964 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$58 } - fimport$0(71179 | 0, 78433 | 0, 18915 | 0, 73433 | 0); + fimport$0(71179 | 0, 78433 | 0, 18926 | 0, 73433 | 0); wasm2js_trap(); } HEAP32[($4_1 + 276 | 0) >> 2] = $227(HEAP32[((HEAP32[((HEAP32[($4_1 + 964 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) | 0; @@ -31135,7 +31135,7 @@ function asmFunc(imports) { $324((HEAP32[($4_1 + 460 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($4_1 + 964 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($4_1 + 460 | 0) >> 2] | 0) + 4 | 0 | 0); break label$63; } - fimport$0(75513 | 0, 78433 | 0, 18936 | 0, 73433 | 0); + fimport$0(75513 | 0, 78433 | 0, 18947 | 0, 73433 | 0); wasm2js_trap(); } break label$61; @@ -31594,14 +31594,14 @@ function asmFunc(imports) { HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0; break label$3; } - fimport$0(75513 | 0, 78433 | 0, 48524 | 0, 70024 | 0); + fimport$0(75513 | 0, 78433 | 0, 48543 | 0, 70024 | 0); wasm2js_trap(); } label$5 : { if ((HEAP32[((HEAP32[($4_1 + 60 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$5 } - fimport$0(81895 | 0, 78433 | 0, 48527 | 0, 70024 | 0); + fimport$0(81895 | 0, 78433 | 0, 48546 | 0, 70024 | 0); wasm2js_trap(); } HEAP32[($0_1 + 16 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($4_1 + 60 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -31822,7 +31822,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$4 } - fimport$0(83191 | 0, 78433 | 0, 28791 | 0, 71148 | 0); + fimport$0(83191 | 0, 78433 | 0, 28802 | 0, 71148 | 0); wasm2js_trap(); } HEAP32[($4_1 + 20 | 0) >> 2] = HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -32281,7 +32281,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 160 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(81501 | 0, 78433 | 0, 19103 | 0, 76392 | 0); + fimport$0(81501 | 0, 78433 | 0, 19114 | 0, 76392 | 0); wasm2js_trap(); } HEAP32[($4_1 + 156 | 0) >> 2] = $326(HEAP32[(HEAP32[($4_1 + 164 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0; @@ -32297,7 +32297,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[((HEAP32[($4_1 + 160 | 0) >> 2] | 0) + 184 | 0) >> 2] | 0) >> 2] | 0 | 0) == (40 | 0) & 1 | 0) { break label$6 } - fimport$0(88226 | 0, 78433 | 0, 19110 | 0, 76392 | 0); + fimport$0(88226 | 0, 78433 | 0, 19121 | 0, 76392 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($4_1 + 160 | 0) >> 2] | 0) + 168 | 0) >> 2] = HEAP32[($4_1 + 164 | 0) >> 2] | 0; @@ -32520,7 +32520,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$4 } - fimport$0(83843 | 0, 78433 | 0, 28220 | 0, 73806 | 0); + fimport$0(83843 | 0, 78433 | 0, 28231 | 0, 73806 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; @@ -32561,7 +32561,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 28232 | 0, 71622 | 0); + fimport$0(83843 | 0, 78433 | 0, 28243 | 0, 71622 | 0); wasm2js_trap(); } HEAP32[($3_1 + 8 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; @@ -32583,7 +32583,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$7 } - fimport$0(83843 | 0, 78433 | 0, 28244 | 0, 71622 | 0); + fimport$0(83843 | 0, 78433 | 0, 28255 | 0, 71622 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] = 0; @@ -32869,7 +32869,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 16 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$20 } - fimport$0(82775 | 0, 78433 | 0, 36030 | 0, 67505 | 0); + fimport$0(82775 | 0, 78433 | 0, 36041 | 0, 67505 | 0); wasm2js_trap(); } HEAP32[($3_1 + 8 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 16 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -33801,7 +33801,7 @@ function asmFunc(imports) { if (!(($309(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) { break label$1 } - fimport$0(75513 | 0, 78433 | 0, 19203 | 0, 72396 | 0); + fimport$0(75513 | 0, 78433 | 0, 19214 | 0, 72396 | 0); wasm2js_trap(); } HEAP32[($3_1 + 8 | 0) >> 2] = $297(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0) | 0; @@ -34620,7 +34620,7 @@ function asmFunc(imports) { case 4: case 5: case 6: - fimport$0(75513 | 0, 78433 | 0, 19627 | 0, 72360 | 0); + fimport$0(75513 | 0, 78433 | 0, 19638 | 0, 72360 | 0); wasm2js_trap(); case 11: HEAPF32[($3_1 + 2844 | 0) >> 2] = Math_fround($209((HEAP32[((HEAP32[($3_1 + 4688 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0) + 64 | 0 | 0)); @@ -35659,7 +35659,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 4760 | 0) >> 2] | 0) + 728 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$122 } - fimport$0(82493 | 0, 78433 | 0, 20039 | 0, 72360 | 0); + fimport$0(82493 | 0, 78433 | 0, 20050 | 0, 72360 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($3_1 + 1316 | 0) >> 2] | 0) + 188 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 4760 | 0) >> 2] | 0) + 728 | 0) >> 2] | 0; @@ -35805,7 +35805,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 1136 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$148 } - fimport$0(82305 | 0, 78433 | 0, 20139 | 0, 72360 | 0); + fimport$0(82305 | 0, 78433 | 0, 20150 | 0, 72360 | 0); wasm2js_trap(); } $1973 = (HEAP32[($3_1 + 1136 | 0) >> 2] | 0) + 64 | 0; @@ -35861,7 +35861,7 @@ function asmFunc(imports) { break label$137; }; } - fimport$0(75513 | 0, 78433 | 0, 20180 | 0, 72360 | 0); + fimport$0(75513 | 0, 78433 | 0, 20191 | 0, 72360 | 0); wasm2js_trap(); } $2108 = (HEAP32[($3_1 + 1136 | 0) >> 2] | 0) + 4 | 0; @@ -36240,7 +36240,7 @@ function asmFunc(imports) { if ((HEAP32[($3_1 + 232 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$25 } - fimport$0(81577 | 0, 78433 | 0, 20328 | 0, 72415 | 0); + fimport$0(81577 | 0, 78433 | 0, 20339 | 0, 72415 | 0); wasm2js_trap(); } $16(); @@ -36979,7 +36979,7 @@ function asmFunc(imports) { if ((HEAP32[($5_1 + 4 | 0) >> 2] | 0 | 0) != (HEAP32[$5_1 >> 2] | 0 | 0) & 1 | 0) { break label$25 } - fimport$0(77250 | 0, 78433 | 0, 48815 | 0, 71871 | 0); + fimport$0(77250 | 0, 78433 | 0, 48834 | 0, 71871 | 0); wasm2js_trap(); } label$26 : { @@ -37144,7 +37144,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 16 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$6 } - fimport$0(71235 | 0, 78433 | 0, 19329 | 0, 66853 | 0); + fimport$0(71235 | 0, 78433 | 0, 19340 | 0, 66853 | 0); wasm2js_trap(); } HEAP32[($5_1 + 8 | 0) >> 2] = $227(HEAP32[((HEAP32[($5_1 + 16 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) | 0; @@ -37421,7 +37421,7 @@ function asmFunc(imports) { break label$35; } HEAP32[($3_1 + 72 | 0) >> 2] = -2; - fimport$0(75513 | 0, 78433 | 0, 49200 | 0, 74449 | 0); + fimport$0(75513 | 0, 78433 | 0, 49219 | 0, 74449 | 0); wasm2js_trap(); } break label$33; @@ -37450,7 +37450,7 @@ function asmFunc(imports) { HEAP32[($3_1 + 72 | 0) >> 2] = 1; break label$43; } - fimport$0(75513 | 0, 78433 | 0, 49218 | 0, 74449 | 0); + fimport$0(75513 | 0, 78433 | 0, 49237 | 0, 74449 | 0); wasm2js_trap(); } } @@ -37486,7 +37486,7 @@ function asmFunc(imports) { if ((HEAP32[($3_1 + 72 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) { break label$46 } - fimport$0(86187 | 0, 78433 | 0, 49228 | 0, 74449 | 0); + fimport$0(86187 | 0, 78433 | 0, 49247 | 0, 74449 | 0); wasm2js_trap(); } $170_1 = HEAP32[($3_1 + 72 | 0) >> 2] | 0; @@ -37828,7 +37828,7 @@ function asmFunc(imports) { if (!(($314(HEAP32[($3_1 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) { break label$1 } - fimport$0(75513 | 0, 78433 | 0, 48600 | 0, 73593 | 0); + fimport$0(75513 | 0, 78433 | 0, 48619 | 0, 73593 | 0); wasm2js_trap(); } label$2 : { @@ -38185,7 +38185,7 @@ function asmFunc(imports) { } break label$7; } - fimport$0(75513 | 0, 78433 | 0, 48982 | 0, 67990 | 0); + fimport$0(75513 | 0, 78433 | 0, 49001 | 0, 67990 | 0); wasm2js_trap(); } HEAP32[($3_1 + 88 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 88 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0; @@ -38262,7 +38262,7 @@ function asmFunc(imports) { $75($3_1 + 16 | 0 | 0); break label$15; } - fimport$0(75513 | 0, 78433 | 0, 49020 | 0, 67990 | 0); + fimport$0(75513 | 0, 78433 | 0, 49039 | 0, 67990 | 0); wasm2js_trap(); } } @@ -38284,7 +38284,7 @@ function asmFunc(imports) { } break label$22; } - fimport$0(75513 | 0, 78433 | 0, 49034 | 0, 67990 | 0); + fimport$0(75513 | 0, 78433 | 0, 49053 | 0, 67990 | 0); wasm2js_trap(); } $200_1 = HEAP32[($3_1 + 96 | 0) >> 2] | 0; @@ -38330,7 +38330,7 @@ function asmFunc(imports) { } break label$7; } - fimport$0(75513 | 0, 78433 | 0, 49062 | 0, 67971 | 0); + fimport$0(75513 | 0, 78433 | 0, 49081 | 0, 67971 | 0); wasm2js_trap(); } HEAP32[($3_1 + 80 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0; @@ -38391,7 +38391,7 @@ function asmFunc(imports) { if (HEAP32[($3_1 + 88 | 0) >> 2] | 0) { break label$13 } - fimport$0(86291 | 0, 78433 | 0, 49106 | 0, 67971 | 0); + fimport$0(86291 | 0, 78433 | 0, 49125 | 0, 67971 | 0); wasm2js_trap(); } $113_1 = HEAP32[($3_1 + 88 | 0) >> 2] | 0; @@ -38444,7 +38444,7 @@ function asmFunc(imports) { break label$1 } } - fimport$0(75513 | 0, 78433 | 0, 20363 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20374 | 0, 78359 | 0); wasm2js_trap(); } $893($6_1 + 8376 | 0 | 0, 0 | 0, 104 | 0) | 0; @@ -38485,7 +38485,7 @@ function asmFunc(imports) { } break label$3; } - fimport$0(75513 | 0, 78433 | 0, 20386 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20397 | 0, 78359 | 0); wasm2js_trap(); } label$6 : { @@ -38653,7 +38653,7 @@ function asmFunc(imports) { } break label$22; } - fimport$0(75513 | 0, 78433 | 0, 20439 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20450 | 0, 78359 | 0); wasm2js_trap(); } $196($6_1 + 8160 | 0 | 0, HEAP32[($6_1 + 8272 | 0) >> 2] | 0 | 0); @@ -38718,7 +38718,7 @@ function asmFunc(imports) { } break label$27; } - fimport$0(75513 | 0, 78433 | 0, 20456 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20467 | 0, 78359 | 0); wasm2js_trap(); } $196($6_1 + 8040 | 0 | 0, HEAP32[($6_1 + 8156 | 0) >> 2] | 0 | 0); @@ -38783,7 +38783,7 @@ function asmFunc(imports) { } break label$32; } - fimport$0(75513 | 0, 78433 | 0, 20473 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20484 | 0, 78359 | 0); wasm2js_trap(); } $196($6_1 + 7920 | 0 | 0, HEAP32[($6_1 + 8036 | 0) >> 2] | 0 | 0); @@ -38947,7 +38947,7 @@ function asmFunc(imports) { } break label$56; } - fimport$0(75513 | 0, 78433 | 0, 20538 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20549 | 0, 78359 | 0); wasm2js_trap(); } $196($6_1 + 6960 | 0 | 0, HEAP32[($6_1 + 7076 | 0) >> 2] | 0 | 0); @@ -39006,7 +39006,7 @@ function asmFunc(imports) { } break label$61; } - fimport$0(75513 | 0, 78433 | 0, 20555 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20566 | 0, 78359 | 0); wasm2js_trap(); } $196($6_1 + 6840 | 0 | 0, HEAP32[($6_1 + 6956 | 0) >> 2] | 0 | 0); @@ -39065,7 +39065,7 @@ function asmFunc(imports) { } break label$66; } - fimport$0(75513 | 0, 78433 | 0, 20572 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20583 | 0, 78359 | 0); wasm2js_trap(); } $196($6_1 + 6720 | 0 | 0, HEAP32[($6_1 + 6836 | 0) >> 2] | 0 | 0); @@ -40064,7 +40064,7 @@ function asmFunc(imports) { case 4: case 5: case 6: - fimport$0(75513 | 0, 78433 | 0, 20783 | 0, 78359 | 0); + fimport$0(75513 | 0, 78433 | 0, 20794 | 0, 78359 | 0); wasm2js_trap(); case 11: HEAPF32[($6_1 + 3516 | 0) >> 2] = Math_fround($209((HEAP32[((HEAP32[($6_1 + 8548 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 64 | 0 | 0)); @@ -40929,7 +40929,7 @@ function asmFunc(imports) { break label$11; }; } - fimport$0(75513 | 0, 78433 | 0, 21048 | 0, 72596 | 0); + fimport$0(75513 | 0, 78433 | 0, 21059 | 0, 72596 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($3_1 + 68 | 0) >> 2] | 0) + 212 | 0) >> 2] = HEAP32[($3_1 + 72 | 0) >> 2] | 0; @@ -41927,7 +41927,7 @@ function asmFunc(imports) { } break label$1; } - fimport$0(75513 | 0, 78433 | 0, 21767 | 0, 69648 | 0); + fimport$0(75513 | 0, 78433 | 0, 21778 | 0, 69648 | 0); wasm2js_trap(); } label$4 : { @@ -42484,7 +42484,7 @@ function asmFunc(imports) { case 4: case 5: case 6: - fimport$0(75513 | 0, 78433 | 0, 21883 | 0, 69648 | 0); + fimport$0(75513 | 0, 78433 | 0, 21894 | 0, 69648 | 0); wasm2js_trap(); case 11: case 12: @@ -42494,7 +42494,7 @@ function asmFunc(imports) { break label$9; }; } - fimport$0(75513 | 0, 78433 | 0, 21891 | 0, 69648 | 0); + fimport$0(75513 | 0, 78433 | 0, 21902 | 0, 69648 | 0); wasm2js_trap(); } } @@ -42557,7 +42557,7 @@ function asmFunc(imports) { if ((HEAP32[($3_1 + 132 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$8 } - fimport$0(81294 | 0, 78433 | 0, 21398 | 0, 72574 | 0); + fimport$0(81294 | 0, 78433 | 0, 21409 | 0, 72574 | 0); wasm2js_trap(); } HEAP32[($3_1 + 132 | 0) >> 2] = $993(1 | 0, 224 | 0) | 0; @@ -42898,7 +42898,7 @@ function asmFunc(imports) { if ((HEAP32[($3_1 + 68 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$8 } - fimport$0(81294 | 0, 78433 | 0, 21569 | 0, 72340 | 0); + fimport$0(81294 | 0, 78433 | 0, 21580 | 0, 72340 | 0); wasm2js_trap(); } HEAP32[($3_1 + 68 | 0) >> 2] = $993(1 | 0, 224 | 0) | 0; @@ -43088,7 +43088,7 @@ function asmFunc(imports) { if ((HEAP32[($3_1 + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$8 } - fimport$0(81294 | 0, 78433 | 0, 21660 | 0, 72622 | 0); + fimport$0(81294 | 0, 78433 | 0, 21671 | 0, 72622 | 0); wasm2js_trap(); } HEAP32[($3_1 + 4 | 0) >> 2] = $993(1 | 0, 224 | 0) | 0; @@ -43182,7 +43182,7 @@ function asmFunc(imports) { if ((HEAP32[($3_1 + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$8 } - fimport$0(81294 | 0, 78433 | 0, 21719 | 0, 72527 | 0); + fimport$0(81294 | 0, 78433 | 0, 21730 | 0, 72527 | 0); wasm2js_trap(); } HEAP32[($3_1 + 4 | 0) >> 2] = $993(1 | 0, 224 | 0) | 0; @@ -44326,7 +44326,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 24418 | 0, 75382 | 0); + fimport$0(80657 | 0, 78433 | 0, 24429 | 0, 75382 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -44608,7 +44608,7 @@ function asmFunc(imports) { if (($314(HEAP32[($5_1 + 88 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) { break label$1 } - fimport$0(87235 | 0, 78433 | 0, 24449 | 0, 70044 | 0); + fimport$0(87235 | 0, 78433 | 0, 24460 | 0, 70044 | 0); wasm2js_trap(); } label$2 : { @@ -44654,8 +44654,8 @@ function asmFunc(imports) { HEAP32[($6_1 + 20 | 0) >> 2] = $2_1; HEAP32[($6_1 + 16 | 0) >> 2] = $3_1; i64toi32_i32$2 = 0; - i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 117796 | 0) >> 2] | 0; - HEAP32[($6_1 + 8 | 0) >> 2] = HEAP32[(i64toi32_i32$2 + 117792 | 0) >> 2] | 0; + i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 117972 | 0) >> 2] | 0; + HEAP32[($6_1 + 8 | 0) >> 2] = HEAP32[(i64toi32_i32$2 + 117968 | 0) >> 2] | 0; HEAP32[($6_1 + 12 | 0) >> 2] = i64toi32_i32$1; HEAP32[($6_1 + 4 | 0) >> 2] = $424(HEAP32[($6_1 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6_1 + 24 | 0) >> 2] | 0 | 0, $6_1 + 8 | 0 | 0, HEAP32[($6_1 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6_1 + 16 | 0) >> 2] | 0 | 0) | 0; $16_1 = HEAP32[($6_1 + 4 | 0) >> 2] | 0; @@ -44682,8 +44682,8 @@ function asmFunc(imports) { HEAP32[($6_1 + 4 | 0) >> 2] = HEAP32[($6_1 + 28 | 0) >> 2] | 0; HEAP32[($6_1 + 8 | 0) >> 2] = HEAP32[($6_1 + 20 | 0) >> 2] | 0; $14_1 = HEAPU8[($6_1 + 27 | 0) >> 0] | 0; - $16_1 = HEAP32[(0 + 118872 | 0) >> 2] | 0; - HEAP32[(0 + 118872 | 0) >> 2] = $16_1 + 1 | 0; + $16_1 = HEAP32[(0 + 119048 | 0) >> 2] | 0; + HEAP32[(0 + 119048 | 0) >> 2] = $16_1 + 1 | 0; $425($6_1 | 0, $14_1 & 1 | 0 | 0, $16_1 | 0, (HEAPU8[($6_1 + 19 | 0) >> 0] | 0) & 1 | 0 | 0); global$0 = $6_1 + 32 | 0; return; @@ -45267,7 +45267,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$1 } - fimport$0(80508 | 0, 78433 | 0, 24544 | 0, 75444 | 0); + fimport$0(80508 | 0, 78433 | 0, 24555 | 0, 75444 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 28 | 0) >> 2] = HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0; @@ -45495,7 +45495,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[($4_1 + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$8 } - fimport$0(84398 | 0, 78433 | 0, 24734 | 0, 73712 | 0); + fimport$0(84398 | 0, 78433 | 0, 24745 | 0, 73712 | 0); wasm2js_trap(); } } @@ -45686,7 +45686,7 @@ function asmFunc(imports) { if (!(HEAP32[((HEAP32[((HEAP32[($8_1 + 616 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0)) { break label$4 } - fimport$0(85407 | 0, 78433 | 0, 24996 | 0, 75560 | 0); + fimport$0(85407 | 0, 78433 | 0, 25007 | 0, 75560 | 0); wasm2js_trap(); } HEAP32[($8_1 + 600 | 0) >> 2] = $227(HEAP32[((HEAP32[((HEAP32[($8_1 + 616 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) | 0; @@ -45729,7 +45729,7 @@ function asmFunc(imports) { $111_1 = HEAP32[((HEAP32[((HEAP32[(HEAP32[($8_1 + 592 | 0) >> 2] | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; break label$13; } - $111_1 = 90498; + $111_1 = 90682; } HEAP32[($8_1 + 588 | 0) >> 2] = $111_1; $893($8_1 + 384 | 0 | 0, 0 | 0, 200 | 0) | 0; @@ -45898,7 +45898,7 @@ function asmFunc(imports) { $918(73188 | 0, 0 | 0) | 0; $918(65920 | 0, 0 | 0) | 0; } - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; $75($8_1 + 236 | 0 | 0); break label$18; } @@ -45942,7 +45942,7 @@ function asmFunc(imports) { $415(HEAP32[((HEAP32[($8_1 + 616 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); $918(65920 | 0, 0 | 0) | 0; } - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; } } global$0 = $8_1 + 624 | 0; @@ -46005,8 +46005,8 @@ function asmFunc(imports) { HEAP32[($5_1 + 8 | 0) >> 2] = HEAP32[($5_1 + 120 | 0) >> 2] | 0; $26_1 = $232(HEAP32[($5_1 + 124 | 0) >> 2] | 0 | 0) | 0; $27_1 = HEAPU8[($5_1 + 119 | 0) >> 0] | 0; - $29_1 = HEAP32[(0 + 118872 | 0) >> 2] | 0; - HEAP32[(0 + 118872 | 0) >> 2] = $29_1 + 1 | 0; + $29_1 = HEAP32[(0 + 119048 | 0) >> 2] | 0; + HEAP32[(0 + 119048 | 0) >> 2] = $29_1 + 1 | 0; $444(0 | 0, $5_1 | 0, $5_1 + 16 | 0 | 0, $26_1 & 1 | 0 | 0, $27_1 & 1 | 0 | 0, $29_1 | 0); global$0 = $5_1 + 128 | 0; return; @@ -46048,8 +46048,8 @@ function asmFunc(imports) { $42_1 = HEAP32[($6_1 + 28 | 0) >> 2] | 0; $43_1 = HEAP32[($6_1 + 36 | 0) >> 2] | 0; $44_1 = HEAP32[($6_1 + 32 | 0) >> 2] | 0; - $46_1 = HEAP32[(0 + 118872 | 0) >> 2] | 0; - HEAP32[(0 + 118872 | 0) >> 2] = $46_1 + 1 | 0; + $46_1 = HEAP32[(0 + 119048 | 0) >> 2] | 0; + HEAP32[(0 + 119048 | 0) >> 2] = $46_1 + 1 | 0; $448($39_1 | 0, $40_1 | 0, $41_1 | 0, $42_1 | 0, $43_1 | 0, $44_1 | 0, $46_1 | 0); break label$1; } @@ -46197,7 +46197,7 @@ function asmFunc(imports) { $106_1 = HEAP32[((HEAP32[((HEAP32[(HEAP32[($9_1 + 276 | 0) >> 2] | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; break label$15; } - $106_1 = 90498; + $106_1 = 90682; } HEAP32[($9_1 + 272 | 0) >> 2] = $106_1; $893($9_1 + 64 | 0 | 0, 0 | 0, 200 | 0) | 0; @@ -46475,7 +46475,7 @@ function asmFunc(imports) { $86_1 = HEAP32[((HEAP32[((HEAP32[(HEAP32[($7_1 + 252 | 0) >> 2] | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; break label$12; } - $86_1 = 90498; + $86_1 = 90682; } HEAP32[($7_1 + 248 | 0) >> 2] = $86_1; $893($7_1 + 48 | 0 | 0, 0 | 0, 200 | 0) | 0; @@ -46790,8 +46790,8 @@ function asmFunc(imports) { HEAP32[($4_1 + 8 | 0) >> 2] = $1_1; $5_1 = HEAP32[($4_1 + 12 | 0) >> 2] | 0; $6_1 = HEAP32[($4_1 + 8 | 0) >> 2] | 0; - $8_1 = HEAP32[(0 + 118872 | 0) >> 2] | 0; - HEAP32[(0 + 118872 | 0) >> 2] = $8_1 + 1 | 0; + $8_1 = HEAP32[(0 + 119048 | 0) >> 2] | 0; + HEAP32[(0 + 119048 | 0) >> 2] = $8_1 + 1 | 0; $460($5_1 | 0, $6_1 | 0, $8_1 | 0); global$0 = $4_1 + 16 | 0; return; @@ -47350,8 +47350,8 @@ function asmFunc(imports) { $30_1 = HEAP32[($9_1 + 236 | 0) >> 2] | 0; $31_1 = HEAP32[($9_1 + 232 | 0) >> 2] | 0; $32_1 = HEAPU8[($9_1 + 231 | 0) >> 0] | 0; - $37_1 = HEAP32[(0 + 118872 | 0) >> 2] | 0; - HEAP32[(0 + 118872 | 0) >> 2] = $37_1 + 1 | 0; + $37_1 = HEAP32[(0 + 119048 | 0) >> 2] | 0; + HEAP32[(0 + 119048 | 0) >> 2] = $37_1 + 1 | 0; $467($28_1 | 0, $9_1 | 0, $29_1 & 1 | 0 | 0, $30_1 | 0, $31_1 | 0, $32_1 & 1 | 0 | 0, $9_1 + 16 | 0 | 0, $37_1 | 0); $989(HEAP32[($9_1 + 224 | 0) >> 2] | 0 | 0); global$0 = $9_1 + 256 | 0; @@ -47382,7 +47382,7 @@ function asmFunc(imports) { if ((HEAP32[($10_1 + 708 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$1 } - fimport$0(82605 | 0, 78433 | 0, 26367 | 0, 75578 | 0); + fimport$0(82605 | 0, 78433 | 0, 26378 | 0, 75578 | 0); wasm2js_trap(); } label$2 : { @@ -47646,8 +47646,8 @@ function asmFunc(imports) { $16_1 = HEAPU8[($8_1 + 39 | 0) >> 0] | 0; $17_1 = HEAP32[($8_1 + 28 | 0) >> 2] | 0; $18_1 = HEAP32[($8_1 + 24 | 0) >> 2] | 0; - $20_1 = HEAP32[(0 + 118872 | 0) >> 2] | 0; - HEAP32[(0 + 118872 | 0) >> 2] = $20_1 + 1 | 0; + $20_1 = HEAP32[(0 + 119048 | 0) >> 2] | 0; + HEAP32[(0 + 119048 | 0) >> 2] = $20_1 + 1 | 0; $469($15_1 | 0, $8_1 + 8 | 0 | 0, $16_1 & 1 | 0 | 0, $17_1 | 0, $18_1 | 0, $20_1 | 0); global$0 = $8_1 + 48 | 0; return; @@ -47874,7 +47874,7 @@ function asmFunc(imports) { HEAP32[($8_1 + 380 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[((HEAP32[($8_1 + 728 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 184 | 0) >> 2] | 0; break label$27; } - fimport$0(75513 | 0, 78433 | 0, 26707 | 0, 75531 | 0); + fimport$0(75513 | 0, 78433 | 0, 26718 | 0, 75531 | 0); wasm2js_trap(); } } @@ -48091,7 +48091,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$7 } - fimport$0(83033 | 0, 78433 | 0, 27382 | 0, 68017 | 0); + fimport$0(83033 | 0, 78433 | 0, 27393 | 0, 68017 | 0); wasm2js_trap(); } label$8 : { @@ -48105,7 +48105,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$9 } - fimport$0(82445 | 0, 78433 | 0, 27387 | 0, 68017 | 0); + fimport$0(82445 | 0, 78433 | 0, 27398 | 0, 68017 | 0); wasm2js_trap(); } label$10 : { @@ -48135,7 +48135,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$13 } - fimport$0(82335 | 0, 78433 | 0, 27408 | 0, 68017 | 0); + fimport$0(82335 | 0, 78433 | 0, 27419 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 108 | 0) >> 2] = $420(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, (HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 4 | 0 | 0, 0 | 0, HEAP32[($5_1 + 116 | 0) >> 2] | 0 | 0) | 0; @@ -48166,7 +48166,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$17 } - fimport$0(82335 | 0, 78433 | 0, 27425 | 0, 68017 | 0); + fimport$0(82335 | 0, 78433 | 0, 27436 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 124 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -48180,7 +48180,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$19 } - fimport$0(82363 | 0, 78433 | 0, 27430 | 0, 68017 | 0); + fimport$0(82363 | 0, 78433 | 0, 27441 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 100 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -48224,7 +48224,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$26 } - fimport$0(82363 | 0, 78433 | 0, 27454 | 0, 68017 | 0); + fimport$0(82363 | 0, 78433 | 0, 27465 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 96 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -48252,7 +48252,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$30 } - fimport$0(82363 | 0, 78433 | 0, 27470 | 0, 68017 | 0); + fimport$0(82363 | 0, 78433 | 0, 27481 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 92 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -48286,7 +48286,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$35 } - fimport$0(82363 | 0, 78433 | 0, 27523 | 0, 68017 | 0); + fimport$0(82363 | 0, 78433 | 0, 27534 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 84 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -48330,7 +48330,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$41 } - fimport$0(82335 | 0, 78433 | 0, 27552 | 0, 68017 | 0); + fimport$0(82335 | 0, 78433 | 0, 27563 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 72 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -48390,7 +48390,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$49 } - fimport$0(84137 | 0, 78433 | 0, 27588 | 0, 68017 | 0); + fimport$0(84137 | 0, 78433 | 0, 27599 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 124 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0; @@ -48451,7 +48451,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$58 } - fimport$0(82363 | 0, 78433 | 0, 27621 | 0, 68017 | 0); + fimport$0(82363 | 0, 78433 | 0, 27632 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 48 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -48466,14 +48466,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$60 } - fimport$0(82363 | 0, 78433 | 0, 27631 | 0, 68017 | 0); + fimport$0(82363 | 0, 78433 | 0, 27642 | 0, 68017 | 0); wasm2js_trap(); } label$61 : { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$61 } - fimport$0(82335 | 0, 78433 | 0, 27632 | 0, 68017 | 0); + fimport$0(82335 | 0, 78433 | 0, 27643 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 44 | 0) >> 2] = $420(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, (HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 4 | 0 | 0, 0 | 0, HEAP32[($5_1 + 116 | 0) >> 2] | 0 | 0) | 0; @@ -48577,7 +48577,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$77 } - fimport$0(82335 | 0, 78433 | 0, 27694 | 0, 68017 | 0); + fimport$0(82335 | 0, 78433 | 0, 27705 | 0, 68017 | 0); wasm2js_trap(); } HEAP32[($5_1 + 16 | 0) >> 2] = $472(HEAP32[($5_1 + 120 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 115 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -49786,7 +49786,7 @@ function asmFunc(imports) { continue label$12; }; } - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; global$0 = $4_1 + 224 | 0; return; } @@ -49882,7 +49882,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80527 | 0, 78433 | 0, 28266 | 0, 66128 | 0); + fimport$0(80527 | 0, 78433 | 0, 28277 | 0, 66128 | 0); wasm2js_trap(); } $989(HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); @@ -49912,14 +49912,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 28280 | 0, 73783 | 0); + fimport$0(83843 | 0, 78433 | 0, 28291 | 0, 73783 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 28281 | 0, 73783 | 0); + fimport$0(80678 | 0, 78433 | 0, 28292 | 0, 73783 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -50261,7 +50261,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$5 } - fimport$0(83495 | 0, 78433 | 0, 28766 | 0, 71269 | 0); + fimport$0(83495 | 0, 78433 | 0, 28777 | 0, 71269 | 0); wasm2js_trap(); } HEAP32[($4_1 + 16 | 0) >> 2] = HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -50308,7 +50308,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$4 } - fimport$0(82773 | 0, 78433 | 0, 28808 | 0, 69738 | 0); + fimport$0(82773 | 0, 78433 | 0, 28819 | 0, 69738 | 0); wasm2js_trap(); } HEAP32[($5_1 + 8 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -52498,7 +52498,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 30391 | 0, 75169 | 0); + fimport$0(80657 | 0, 78433 | 0, 30402 | 0, 75169 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -52522,7 +52522,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 34973 | 0, 75198 | 0); + fimport$0(80657 | 0, 78433 | 0, 34984 | 0, 75198 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -52545,7 +52545,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 32322 | 0, 75137 | 0); + fimport$0(80657 | 0, 78433 | 0, 32333 | 0, 75137 | 0); wasm2js_trap(); } label$3 : { @@ -52556,7 +52556,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80625 | 0, 78433 | 0, 32325 | 0, 75137 | 0); + fimport$0(80625 | 0, 78433 | 0, 32336 | 0, 75137 | 0); wasm2js_trap(); } $989(HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0); @@ -52589,14 +52589,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 29808 | 0, 78110 | 0); + fimport$0(83843 | 0, 78433 | 0, 29819 | 0, 78110 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 29809 | 0, 78110 | 0); + fimport$0(80678 | 0, 78433 | 0, 29820 | 0, 78110 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -52749,7 +52749,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 16 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$28 } - fimport$0(80995 | 0, 78433 | 0, 29914 | 0, 68670 | 0); + fimport$0(80995 | 0, 78433 | 0, 29925 | 0, 68670 | 0); wasm2js_trap(); } $206_1 = $526(HEAP32[($4_1 + 24 | 0) >> 2] | 0 | 0) | 0; @@ -53032,7 +53032,7 @@ function asmFunc(imports) { break label$6; }; } - fimport$0(75513 | 0, 78433 | 0, 30952 | 0, 71124 | 0); + fimport$0(75513 | 0, 78433 | 0, 30963 | 0, 71124 | 0); wasm2js_trap(); } $250(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -53113,7 +53113,7 @@ function asmFunc(imports) { } break label$10; } - fimport$0(75513 | 0, 78433 | 0, 32367 | 0, 71075 | 0); + fimport$0(75513 | 0, 78433 | 0, 32378 | 0, 71075 | 0); wasm2js_trap(); } } @@ -53287,14 +53287,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 34871 | 0, 78153 | 0); + fimport$0(83843 | 0, 78433 | 0, 34882 | 0, 78153 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 34872 | 0, 78153 | 0); + fimport$0(80678 | 0, 78433 | 0, 34883 | 0, 78153 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -53648,7 +53648,7 @@ function asmFunc(imports) { break label$1 } } - fimport$0(75513 | 0, 78433 | 0, 34734 | 0, 72147 | 0); + fimport$0(75513 | 0, 78433 | 0, 34745 | 0, 72147 | 0); wasm2js_trap(); } HEAP32[($3_1 + 8 | 0) >> 2] = $993(1 | 0, 8 | 0) | 0; @@ -53787,7 +53787,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 37306 | 0, 75261 | 0); + fimport$0(80657 | 0, 78433 | 0, 37317 | 0, 75261 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -53811,7 +53811,7 @@ function asmFunc(imports) { if (!((HEAP32[(HEAP32[($5_1 + 80 | 0) >> 2] | 0) >> 2] | 0 | 0) != (128 | 0) & 1 | 0)) { break label$1 } - fimport$0(75513 | 0, 78433 | 0, 34498 | 0, 78446 | 0); + fimport$0(75513 | 0, 78433 | 0, 34509 | 0, 78446 | 0); wasm2js_trap(); } HEAP32[($5_1 + 80 | 0) >> 2] = $638(HEAP32[($5_1 + 80 | 0) >> 2] | 0 | 0) | 0; @@ -55019,7 +55019,7 @@ function asmFunc(imports) { if (!(HEAP32[((HEAP32[((HEAP32[($4_1 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0)) { break label$8 } - fimport$0(86218 | 0, 78433 | 0, 30511 | 0, 69695 | 0); + fimport$0(86218 | 0, 78433 | 0, 30522 | 0, 69695 | 0); wasm2js_trap(); } $71_1 = (HEAP32[((HEAP32[($4_1 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0; @@ -55086,14 +55086,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$9 } - fimport$0(82515 | 0, 78433 | 0, 30515 | 0, 69695 | 0); + fimport$0(82515 | 0, 78433 | 0, 30526 | 0, 69695 | 0); wasm2js_trap(); } label$10 : { if ((HEAP32[((HEAP32[($4_1 + 380 | 0) >> 2] | 0) + 684 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$10 } - fimport$0(83902 | 0, 78433 | 0, 30517 | 0, 69695 | 0); + fimport$0(83902 | 0, 78433 | 0, 30528 | 0, 69695 | 0); wasm2js_trap(); } label$11 : { @@ -55114,14 +55114,14 @@ function asmFunc(imports) { if ((HEAP32[($4_1 + 296 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$14 } - fimport$0(84119 | 0, 78433 | 0, 30536 | 0, 69695 | 0); + fimport$0(84119 | 0, 78433 | 0, 30547 | 0, 69695 | 0); wasm2js_trap(); } label$15 : { if ((HEAP32[((HEAP32[($4_1 + 380 | 0) >> 2] | 0) + 684 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$15 } - fimport$0(83902 | 0, 78433 | 0, 30537 | 0, 69695 | 0); + fimport$0(83902 | 0, 78433 | 0, 30548 | 0, 69695 | 0); wasm2js_trap(); } label$16 : { @@ -55219,7 +55219,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 372 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$26 } - fimport$0(81255 | 0, 78433 | 0, 30596 | 0, 69695 | 0); + fimport$0(81255 | 0, 78433 | 0, 30607 | 0, 69695 | 0); wasm2js_trap(); } $321_1 = $570(HEAP32[($4_1 + 380 | 0) >> 2] | 0 | 0) | 0; @@ -55302,7 +55302,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$39 } - fimport$0(82515 | 0, 78433 | 0, 30657 | 0, 69695 | 0); + fimport$0(82515 | 0, 78433 | 0, 30668 | 0, 69695 | 0); wasm2js_trap(); } label$40 : { @@ -55433,7 +55433,7 @@ function asmFunc(imports) { if ((HEAP32[($4_1 + 172 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$46 } - fimport$0(80976 | 0, 78433 | 0, 30690 | 0, 69695 | 0); + fimport$0(80976 | 0, 78433 | 0, 30701 | 0, 69695 | 0); wasm2js_trap(); } HEAP32[($4_1 + 172 | 0) >> 2] = $937(HEAP32[((HEAP32[((HEAP32[((HEAP32[($4_1 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0; @@ -55619,14 +55619,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 30843 | 0, 77810 | 0); + fimport$0(83843 | 0, 78433 | 0, 30854 | 0, 77810 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 30844 | 0, 77810 | 0); + fimport$0(80678 | 0, 78433 | 0, 30855 | 0, 77810 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -55744,7 +55744,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 1832 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$9 } - fimport$0(84330 | 0, 78433 | 0, 30146 | 0, 72090 | 0); + fimport$0(84330 | 0, 78433 | 0, 30157 | 0, 72090 | 0); wasm2js_trap(); } HEAP32[($3_1 + 1820 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($3_1 + 1832 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; @@ -55883,7 +55883,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 1832 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$25 } - fimport$0(80452 | 0, 78433 | 0, 30215 | 0, 72090 | 0); + fimport$0(80452 | 0, 78433 | 0, 30226 | 0, 72090 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($3_1 + 1832 | 0) >> 2] | 0) + 24 | 0) >> 2] = HEAP32[($3_1 + 1780 | 0) >> 2] | 0; @@ -56076,7 +56076,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$3 } - fimport$0(81399 | 0, 78433 | 0, 40246 | 0, 72060 | 0); + fimport$0(81399 | 0, 78433 | 0, 40257 | 0, 72060 | 0); wasm2js_trap(); } HEAP32[($4_1 + 4 | 0) >> 2] = $551(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0) | 0; @@ -56092,7 +56092,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$5 } - fimport$0(81833 | 0, 78433 | 0, 40255 | 0, 72060 | 0); + fimport$0(81833 | 0, 78433 | 0, 40266 | 0, 72060 | 0); wasm2js_trap(); } label$6 : { @@ -56128,7 +56128,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$1 } - fimport$0(81423 | 0, 78433 | 0, 40289 | 0, 66088 | 0); + fimport$0(81423 | 0, 78433 | 0, 40300 | 0, 66088 | 0); wasm2js_trap(); } global$0 = $3_1 + 16 | 0; @@ -56156,7 +56156,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(81833 | 0, 78433 | 0, 46553 | 0, 72031 | 0); + fimport$0(81833 | 0, 78433 | 0, 46572 | 0, 72031 | 0); wasm2js_trap(); } label$4 : { @@ -56480,7 +56480,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 76 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$8 } - fimport$0(81445 | 0, 78433 | 0, 46532 | 0, 72008 | 0); + fimport$0(81445 | 0, 78433 | 0, 46551 | 0, 72008 | 0); wasm2js_trap(); } $317($4_1 + 12 | 0 | 0, (HEAP32[((HEAP32[((HEAP32[($4_1 + 72 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0); @@ -56990,7 +56990,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 4 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$39 } - fimport$0(82988 | 0, 78433 | 0, 31362 | 0, 71342 | 0); + fimport$0(82988 | 0, 78433 | 0, 31373 | 0, 71342 | 0); wasm2js_trap(); } $250(HEAP32[($3_1 + 8 | 0) >> 2] | 0 | 0); @@ -57449,7 +57449,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 724 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$8 } - fimport$0(82206 | 0, 78433 | 0, 33464 | 0, 66706 | 0); + fimport$0(82206 | 0, 78433 | 0, 33475 | 0, 66706 | 0); wasm2js_trap(); } label$9 : { @@ -58074,7 +58074,7 @@ function asmFunc(imports) { if (($276(HEAP32[($5_1 + 76 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) { break label$1 } - fimport$0(87213 | 0, 78433 | 0, 48555 | 0, 69996 | 0); + fimport$0(87213 | 0, 78433 | 0, 48574 | 0, 69996 | 0); wasm2js_trap(); } $225($5_1 + 12 | 0 | 0, HEAP32[($5_1 + 76 | 0) >> 2] | 0 | 0); @@ -58271,7 +58271,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 160 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$15 } - fimport$0(83191 | 0, 78433 | 0, 31525 | 0, 71243 | 0); + fimport$0(83191 | 0, 78433 | 0, 31536 | 0, 71243 | 0); wasm2js_trap(); } HEAP32[($3_1 + 164 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 160 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -58318,9 +58318,9 @@ function asmFunc(imports) { break label$9; } $173_1 = (HEAP32[($3_1 + 168 | 0) >> 2] | 0) + 40 | 0; - HEAP32[($3_1 + 48 | 0) >> 2] = HEAP32[(0 + 119040 | 0) >> 2] | 0; + HEAP32[($3_1 + 48 | 0) >> 2] = HEAP32[(0 + 119216 | 0) >> 2] | 0; $930($173_1 | 0, 200 | 0, 78250 | 0, $3_1 + 48 | 0 | 0) | 0; - HEAP32[(0 + 119040 | 0) >> 2] = (HEAP32[(0 + 119040 | 0) >> 2] | 0) + 1 | 0; + HEAP32[(0 + 119216 | 0) >> 2] = (HEAP32[(0 + 119216 | 0) >> 2] | 0) + 1 | 0; HEAP8[((HEAP32[($3_1 + 168 | 0) >> 2] | 0) + 240 | 0) >> 0] = 1; HEAP32[((HEAP32[($3_1 + 168 | 0) >> 2] | 0) + 244 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($3_1 + 172 | 0) >> 2] | 0) + 684 | 0) >> 2] | 0) >> 2] | 0; i64toi32_i32$0 = 0; @@ -58532,9 +58532,9 @@ function asmFunc(imports) { break label$7; } $65_1 = (HEAP32[($3_1 + 104 | 0) >> 2] | 0) + 12 | 0; - HEAP32[($3_1 + 16 | 0) >> 2] = HEAP32[(0 + 119040 | 0) >> 2] | 0; + HEAP32[($3_1 + 16 | 0) >> 2] = HEAP32[(0 + 119216 | 0) >> 2] | 0; $930($65_1 | 0, 200 | 0, 78229 | 0, $3_1 + 16 | 0 | 0) | 0; - HEAP32[(0 + 119040 | 0) >> 2] = (HEAP32[(0 + 119040 | 0) >> 2] | 0) + 1 | 0; + HEAP32[(0 + 119216 | 0) >> 2] = (HEAP32[(0 + 119216 | 0) >> 2] | 0) + 1 | 0; } label$9 : { if (!((HEAP32[((HEAP32[($3_1 + 108 | 0) >> 2] | 0) + 724 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) { @@ -58988,7 +58988,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 31889 | 0, 75254 | 0); + fimport$0(80657 | 0, 78433 | 0, 31900 | 0, 75254 | 0); wasm2js_trap(); } $67(HEAP32[(HEAP32[($3_1 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0); @@ -59192,14 +59192,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 31830 | 0, 77990 | 0); + fimport$0(83843 | 0, 78433 | 0, 31841 | 0, 77990 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 31831 | 0, 77990 | 0); + fimport$0(80678 | 0, 78433 | 0, 31842 | 0, 77990 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -59388,7 +59388,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 31739 | 0, 75094 | 0); + fimport$0(80657 | 0, 78433 | 0, 31750 | 0, 75094 | 0); wasm2js_trap(); } $62(HEAP32[(HEAP32[($3_1 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0); @@ -59418,14 +59418,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 31753 | 0, 77835 | 0); + fimport$0(83843 | 0, 78433 | 0, 31764 | 0, 77835 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 31754 | 0, 77835 | 0); + fimport$0(80678 | 0, 78433 | 0, 31765 | 0, 77835 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -59559,14 +59559,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 32171 | 0, 77922 | 0); + fimport$0(83843 | 0, 78433 | 0, 32182 | 0, 77922 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 32172 | 0, 77922 | 0); + fimport$0(80678 | 0, 78433 | 0, 32183 | 0, 77922 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -59711,7 +59711,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 48 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$9 } - fimport$0(80823 | 0, 78433 | 0, 32725 | 0, 69673 | 0); + fimport$0(80823 | 0, 78433 | 0, 32736 | 0, 69673 | 0); wasm2js_trap(); } $96_1 = $396(HEAP32[($5_1 + 60 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0; @@ -59771,14 +59771,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 32584 | 0, 77790 | 0); + fimport$0(83843 | 0, 78433 | 0, 32595 | 0, 77790 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 32585 | 0, 77790 | 0); + fimport$0(80678 | 0, 78433 | 0, 32596 | 0, 77790 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -60419,14 +60419,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 33505 | 0, 77951 | 0); + fimport$0(83843 | 0, 78433 | 0, 33516 | 0, 77951 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 33506 | 0, 77951 | 0); + fimport$0(80678 | 0, 78433 | 0, 33517 | 0, 77951 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -60534,7 +60534,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 33719 | 0, 75225 | 0); + fimport$0(80657 | 0, 78433 | 0, 33730 | 0, 75225 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -60679,7 +60679,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($3_1 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$9 } - fimport$0(82109 | 0, 78433 | 0, 33785 | 0, 72125 | 0); + fimport$0(82109 | 0, 78433 | 0, 33796 | 0, 72125 | 0); wasm2js_trap(); } $86((HEAP32[((HEAP32[($3_1 + 108 | 0) >> 2] | 0) + 684 | 0) >> 2] | 0) + 16 | 0 | 0, HEAP32[((HEAP32[((HEAP32[((HEAP32[($3_1 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, $3_1 | 0) | 0; @@ -60717,14 +60717,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 33634 | 0, 77903 | 0); + fimport$0(83843 | 0, 78433 | 0, 33645 | 0, 77903 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 33635 | 0, 77903 | 0); + fimport$0(80678 | 0, 78433 | 0, 33646 | 0, 77903 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -60866,14 +60866,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 34183 | 0, 77882 | 0); + fimport$0(83843 | 0, 78433 | 0, 34194 | 0, 77882 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 34184 | 0, 77882 | 0); + fimport$0(80678 | 0, 78433 | 0, 34195 | 0, 77882 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -60903,14 +60903,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 34152 | 0, 77975 | 0); + fimport$0(83843 | 0, 78433 | 0, 34163 | 0, 77975 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 34153 | 0, 77975 | 0); + fimport$0(80678 | 0, 78433 | 0, 34164 | 0, 77975 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -61029,7 +61029,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 34426 | 0, 75119 | 0); + fimport$0(80657 | 0, 78433 | 0, 34437 | 0, 75119 | 0); wasm2js_trap(); } $73(HEAP32[(HEAP32[($3_1 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0); @@ -61134,14 +61134,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 34363 | 0, 77862 | 0); + fimport$0(83843 | 0, 78433 | 0, 34374 | 0, 77862 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 34364 | 0, 77862 | 0); + fimport$0(80678 | 0, 78433 | 0, 34375 | 0, 77862 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -61398,14 +61398,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 35047 | 0, 78068 | 0); + fimport$0(83843 | 0, 78433 | 0, 35058 | 0, 78068 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 35048 | 0, 78068 | 0); + fimport$0(80678 | 0, 78433 | 0, 35059 | 0, 78068 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -61431,7 +61431,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 35034 | 0, 75365 | 0); + fimport$0(80657 | 0, 78433 | 0, 35045 | 0, 75365 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -62314,7 +62314,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[((HEAP32[($3_1 + 52 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$17 } - fimport$0(83723 | 0, 78433 | 0, 35799 | 0, 73475 | 0); + fimport$0(83723 | 0, 78433 | 0, 35810 | 0, 73475 | 0); wasm2js_trap(); } $136_1 = 0; @@ -62514,7 +62514,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 724 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$1 } - fimport$0(82206 | 0, 78433 | 0, 35430 | 0, 73615 | 0); + fimport$0(82206 | 0, 78433 | 0, 35441 | 0, 73615 | 0); wasm2js_trap(); } HEAP32[($3_1 + 8 | 0) >> 2] = $993(1 | 0, 20 | 0) | 0; @@ -62778,7 +62778,7 @@ function asmFunc(imports) { $75($3_1 + 40 | 0 | 0); break label$17; } - fimport$0(75513 | 0, 78433 | 0, 37074 | 0, 67140 | 0); + fimport$0(75513 | 0, 78433 | 0, 37085 | 0, 67140 | 0); wasm2js_trap(); } } @@ -63047,7 +63047,7 @@ function asmFunc(imports) { if (!((HEAP32[((HEAP32[((HEAP32[(HEAP32[($3_1 + 68 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[((HEAP32[(HEAP32[($3_1 + 68 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) { break label$22 } - fimport$0(75513 | 0, 78433 | 0, 36529 | 0, 67226 | 0); + fimport$0(75513 | 0, 78433 | 0, 36540 | 0, 67226 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($3_1 + 68 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[(HEAP32[($3_1 + 68 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0; @@ -63111,7 +63111,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 68 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$27 } - fimport$0(81352 | 0, 78433 | 0, 36591 | 0, 67226 | 0); + fimport$0(81352 | 0, 78433 | 0, 36602 | 0, 67226 | 0); wasm2js_trap(); } HEAP32[((HEAP32[($3_1 + 68 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($3_1 + 36 | 0) >> 2] | 0; @@ -63187,7 +63187,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 68 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$36 } - fimport$0(80920 | 0, 78433 | 0, 36639 | 0, 67226 | 0); + fimport$0(80920 | 0, 78433 | 0, 36650 | 0, 67226 | 0); wasm2js_trap(); } HEAP32[($3_1 + 20 | 0) >> 2] = $675(HEAP32[($3_1 + 108 | 0) >> 2] | 0 | 0) | 0; @@ -63652,7 +63652,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 724 | 0) >> 2] | 0) >> 2] | 0 | 0) == (9036 | 0) & 1 | 0) { break label$5 } - fimport$0(78620 | 0, 78433 | 0, 36334 | 0, 67014 | 0); + fimport$0(78620 | 0, 78433 | 0, 36345 | 0, 67014 | 0); wasm2js_trap(); } HEAP32[($3_1 + 4 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 692 | 0) >> 2] | 0; @@ -63695,7 +63695,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$10 } - fimport$0(80869 | 0, 78433 | 0, 36367 | 0, 67014 | 0); + fimport$0(80869 | 0, 78433 | 0, 36378 | 0, 67014 | 0); wasm2js_trap(); } $102_1 = $675(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0) | 0; @@ -64295,7 +64295,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$2 } - fimport$0(80657 | 0, 78433 | 0, 36145 | 0, 75347 | 0); + fimport$0(80657 | 0, 78433 | 0, 36156 | 0, 75347 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 12 | 0) >> 2] | 0 | 0); @@ -64521,14 +64521,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 36081 | 0, 78033 | 0); + fimport$0(83843 | 0, 78433 | 0, 36092 | 0, 78033 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 36082 | 0, 78033 | 0); + fimport$0(80678 | 0, 78433 | 0, 36093 | 0, 78033 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -64727,14 +64727,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83843 | 0, 78433 | 0, 37153 | 0, 77997 | 0); + fimport$0(83843 | 0, 78433 | 0, 37164 | 0, 77997 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$4 } - fimport$0(80678 | 0, 78433 | 0, 37154 | 0, 77997 | 0); + fimport$0(80678 | 0, 78433 | 0, 37165 | 0, 77997 | 0); wasm2js_trap(); } HEAP32[((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 48 | 0) >> 2] = HEAP32[($4_1 + 8 | 0) >> 2] | 0; @@ -64832,7 +64832,7 @@ function asmFunc(imports) { HEAP32[($6_1 + 56 | 0) >> 2] = $2_1; HEAP32[($6_1 + 52 | 0) >> 2] = $3_1; HEAP8[(HEAP32[($6_1 + 52 | 0) >> 2] | 0) >> 0] = 0; - HEAP32[(0 + 119040 | 0) >> 2] = 0; + HEAP32[(0 + 119216 | 0) >> 2] = 0; i64toi32_i32$0 = 0; i64toi32_i32$1 = $0_1; HEAP32[i64toi32_i32$1 >> 2] = 0; @@ -64944,7 +64944,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 20 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$11 } - fimport$0(82775 | 0, 78433 | 0, 37394 | 0, 76095 | 0); + fimport$0(82775 | 0, 78433 | 0, 37405 | 0, 76095 | 0); wasm2js_trap(); } HEAP32[($3_1 + 12 | 0) >> 2] = HEAP32[((HEAP32[($3_1 + 20 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0; @@ -65073,7 +65073,7 @@ function asmFunc(imports) { $110_1 = HEAP32[($4_1 + 168 | 0) >> 2] | 0; HEAP32[($4_1 + 112 | 0) >> 2] = HEAP32[((HEAP32[($4_1 + 172 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0; $11($110_1 | 0, 69608 | 0, $4_1 + 112 | 0 | 0) | 0; - $11(HEAP32[($4_1 + 168 | 0) >> 2] | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11(HEAP32[($4_1 + 168 | 0) >> 2] | 0 | 0, 90681 | 0, 0 | 0) | 0; } HEAP32[($4_1 + 132 | 0) >> 2] = 0; label$8 : { @@ -65096,7 +65096,7 @@ function asmFunc(imports) { continue label$9; }; } - $11(HEAP32[($4_1 + 168 | 0) >> 2] | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11(HEAP32[($4_1 + 168 | 0) >> 2] | 0 | 0, 90681 | 0, 0 | 0) | 0; label$12 : { if (!((HEAPU8[((HEAP32[($4_1 + 172 | 0) >> 2] | 0) + 116 | 0) >> 0] | 0) & 1 | 0)) { break label$12 @@ -66089,7 +66089,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(81895 | 0, 78433 | 0, 47984 | 0, 71578 | 0); + fimport$0(81895 | 0, 78433 | 0, 48003 | 0, 71578 | 0); wasm2js_trap(); } HEAP8[($3_1 + 15 | 0) >> 0] = ((HEAP32[((HEAP32[((HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) & 2 | 0 | 0) != (0 | 0) & 1 | 0; @@ -66220,7 +66220,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$3 } - fimport$0(81138 | 0, 78433 | 0, 39487 | 0, 76172 | 0); + fimport$0(81138 | 0, 78433 | 0, 39498 | 0, 76172 | 0); wasm2js_trap(); } $989(HEAP32[($3_1 + 8 | 0) >> 2] | 0 | 0); @@ -66599,7 +66599,7 @@ function asmFunc(imports) { continue label$2; }; } - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; $918(65727 | 0, 0 | 0) | 0; label$6 : { if (!((HEAP32[($3_1 + 40 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) { @@ -66627,7 +66627,7 @@ function asmFunc(imports) { } } $918(65540 | 0, 0 | 0) | 0; - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; HEAP32[($3_1 + 16 | 0) >> 2] = 0; label$11 : { label$12 : while (1) { @@ -66667,8 +66667,8 @@ function asmFunc(imports) { } } $918(65536 | 0, 0 | 0) | 0; - $918(90497 | 0, 0 | 0) | 0; - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; global$0 = $3_1 + 48 | 0; return; } @@ -66769,7 +66769,7 @@ function asmFunc(imports) { } $918(85947 | 0, 0 | 0) | 0; $415(HEAP32[($4_1 + 52 | 0) >> 2] | 0 | 0); - $918(90497 | 0, 0 | 0) | 0; + $918(90681 | 0, 0 | 0) | 0; } break label$12; } @@ -66937,7 +66937,7 @@ function asmFunc(imports) { $0_1 = $0_1 | 0; $1_1 = $1_1 | 0; $2_1 = $2_1 | 0; - var $5_1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $2337 = 0, $2343 = 0, $2353$hi = 0, $2354$hi = 0, $2359$hi = 0, $2360$hi = 0, $2368$hi = 0, $2369$hi = 0, $2372$hi = 0, $2373$hi = 0, $2376$hi = 0, $2377$hi = 0, $2380$hi = 0, $2381$hi = 0, $13_1 = 0, $181_1 = 0, $199_1 = 0, $215_1 = 0, $250_1 = 0, $623_1 = 0, $898_1 = 0, $923_1 = 0, $1225 = 0, $1240 = 0, $1365 = 0, $1431 = 0, $1613 = 0, $1624 = 0, $1645 = 0, $1652 = 0, $1688 = 0, $1699 = 0, $1728 = 0, $1739 = 0, $1954 = 0, $1962 = 0, $2122 = 0, $2132 = 0, $2140 = 0, $5020 = 0, $5165 = 0, $5406 = 0, $5450 = 0; + var $5_1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $2361 = 0, $2367 = 0, $2377$hi = 0, $2378$hi = 0, $2383$hi = 0, $2384$hi = 0, $2392$hi = 0, $2393$hi = 0, $2396$hi = 0, $2397$hi = 0, $2400$hi = 0, $2401$hi = 0, $2404$hi = 0, $2405$hi = 0, $13_1 = 0, $181_1 = 0, $199_1 = 0, $215_1 = 0, $250_1 = 0, $623_1 = 0, $898_1 = 0, $923_1 = 0, $1225 = 0, $1240 = 0, $1365 = 0, $1431 = 0, $1613 = 0, $1624 = 0, $1645 = 0, $1652 = 0, $1688 = 0, $1699 = 0, $1728 = 0, $1739 = 0, $1974 = 0, $1982 = 0, $2142 = 0, $2152 = 0, $2160 = 0, $5044 = 0, $5189 = 0, $5430 = 0, $5474 = 0; $5_1 = global$0 - 1072 | 0; global$0 = $5_1; HEAP32[($5_1 + 1068 | 0) >> 2] = $0_1; @@ -66950,7 +66950,7 @@ function asmFunc(imports) { label$2 : { switch ($13_1 | 0) { case 0: - fimport$0(75513 | 0, 78433 | 0, 44457 | 0, 72486 | 0); + fimport$0(75513 | 0, 78433 | 0, 44468 | 0, 72486 | 0); wasm2js_trap(); case 4: break label$1; @@ -66961,7 +66961,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$37 } - fimport$0(83033 | 0, 78433 | 0, 44468 | 0, 72486 | 0); + fimport$0(83033 | 0, 78433 | 0, 44479 | 0, 72486 | 0); wasm2js_trap(); } label$38 : { @@ -66989,7 +66989,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$40 } - fimport$0(82335 | 0, 78433 | 0, 44492 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 44503 | 0, 72486 | 0); wasm2js_trap(); } $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0); @@ -67004,7 +67004,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 180 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$41 } - fimport$0(83683 | 0, 78433 | 0, 44503 | 0, 72486 | 0); + fimport$0(83683 | 0, 78433 | 0, 44514 | 0, 72486 | 0); wasm2js_trap(); } $827(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 180 | 0) >> 2] | 0 | 0); @@ -67014,7 +67014,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$42 } - fimport$0(82363 | 0, 78433 | 0, 44509 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 44520 | 0, 72486 | 0); wasm2js_trap(); } HEAP32[($5_1 + 1032 | 0) >> 2] = 0; @@ -67034,7 +67034,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$43 } - fimport$0(82363 | 0, 78433 | 0, 44526 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 44537 | 0, 72486 | 0); wasm2js_trap(); } HEAP32[($5_1 + 1008 | 0) >> 2] = 0; @@ -67063,15 +67063,15 @@ function asmFunc(imports) { } HEAP32[($5_1 + 992 | 0) >> 2] = 0; i64toi32_i32$0 = 0; - $2337 = 0; + $2361 = 0; i64toi32_i32$1 = $5_1 + 984 | 0; - HEAP32[i64toi32_i32$1 >> 2] = $2337; + HEAP32[i64toi32_i32$1 >> 2] = $2361; HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0; i64toi32_i32$1 = $5_1 + 976 | 0; - HEAP32[i64toi32_i32$1 >> 2] = $2337; + HEAP32[i64toi32_i32$1 >> 2] = $2361; HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0; i64toi32_i32$1 = $5_1; - HEAP32[($5_1 + 968 | 0) >> 2] = $2337; + HEAP32[($5_1 + 968 | 0) >> 2] = $2361; HEAP32[($5_1 + 972 | 0) >> 2] = i64toi32_i32$0; HEAP32[($5_1 + 988 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 184 | 0) >> 2] | 0; HEAP32[($5_1 + 992 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 188 | 0) >> 2] | 0; @@ -67149,7 +67149,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$58 } - fimport$0(82363 | 0, 78433 | 0, 44607 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 44618 | 0, 72486 | 0); wasm2js_trap(); } HEAP32[($5_1 + 920 | 0) >> 2] = $472(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -67180,14 +67180,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$63 } - fimport$0(82335 | 0, 78433 | 0, 44629 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 44640 | 0, 72486 | 0); wasm2js_trap(); } label$64 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$64 } - fimport$0(82363 | 0, 78433 | 0, 44630 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 44641 | 0, 72486 | 0); wasm2js_trap(); } $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0); @@ -67207,7 +67207,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$66 } - fimport$0(82363 | 0, 78433 | 0, 44649 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 44660 | 0, 72486 | 0); wasm2js_trap(); } HEAP32[($5_1 + 904 | 0) >> 2] = 0; @@ -67332,7 +67332,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 176 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$78 } - fimport$0(82227 | 0, 78433 | 0, 44769 | 0, 72486 | 0); + fimport$0(82227 | 0, 78433 | 0, 44780 | 0, 72486 | 0); wasm2js_trap(); } $729(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 176 | 0) >> 2] | 0 | 0); @@ -67342,28 +67342,28 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$79 } - fimport$0(81111 | 0, 78433 | 0, 44776 | 0, 72486 | 0); + fimport$0(81111 | 0, 78433 | 0, 44787 | 0, 72486 | 0); wasm2js_trap(); } label$80 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$80 } - fimport$0(81083 | 0, 78433 | 0, 44777 | 0, 72486 | 0); + fimport$0(81083 | 0, 78433 | 0, 44788 | 0, 72486 | 0); wasm2js_trap(); } label$81 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$81 } - fimport$0(84137 | 0, 78433 | 0, 44778 | 0, 72486 | 0); + fimport$0(84137 | 0, 78433 | 0, 44789 | 0, 72486 | 0); wasm2js_trap(); } label$82 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 172 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$82 } - fimport$0(83066 | 0, 78433 | 0, 44779 | 0, 72486 | 0); + fimport$0(83066 | 0, 78433 | 0, 44790 | 0, 72486 | 0); wasm2js_trap(); } $833(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 172 | 0) >> 2] | 0 | 0); @@ -67425,7 +67425,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$88 } - fimport$0(82335 | 0, 78433 | 0, 44840 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 44851 | 0, 72486 | 0); wasm2js_trap(); } $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0); @@ -67435,7 +67435,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$89 } - fimport$0(82335 | 0, 78433 | 0, 44845 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 44856 | 0, 72486 | 0); wasm2js_trap(); } $834(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0); @@ -67454,7 +67454,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$90 } - fimport$0(82335 | 0, 78433 | 0, 44861 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 44872 | 0, 72486 | 0); wasm2js_trap(); } HEAP32[($5_1 + 712 | 0) >> 2] = $472(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -67472,15 +67472,15 @@ function asmFunc(imports) { } HEAP32[($5_1 + 704 | 0) >> 2] = 0; i64toi32_i32$0 = 0; - $2343 = 0; + $2367 = 0; i64toi32_i32$1 = $5_1 + 696 | 0; - HEAP32[i64toi32_i32$1 >> 2] = $2343; + HEAP32[i64toi32_i32$1 >> 2] = $2367; HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0; i64toi32_i32$1 = $5_1 + 688 | 0; - HEAP32[i64toi32_i32$1 >> 2] = $2343; + HEAP32[i64toi32_i32$1 >> 2] = $2367; HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0; i64toi32_i32$1 = $5_1; - HEAP32[($5_1 + 680 | 0) >> 2] = $2343; + HEAP32[($5_1 + 680 | 0) >> 2] = $2367; HEAP32[($5_1 + 684 | 0) >> 2] = i64toi32_i32$0; HEAP32[($5_1 + 700 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0) + 184 | 0) >> 2] | 0; HEAP32[($5_1 + 704 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0) + 188 | 0) >> 2] | 0; @@ -67518,14 +67518,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$96 } - fimport$0(82335 | 0, 78433 | 0, 44900 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 44911 | 0, 72486 | 0); wasm2js_trap(); } label$97 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$97 } - fimport$0(82363 | 0, 78433 | 0, 44901 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 44912 | 0, 72486 | 0); wasm2js_trap(); } HEAP32[($5_1 + 656 | 0) >> 2] = 0; @@ -67616,14 +67616,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$105 } - fimport$0(82335 | 0, 78433 | 0, 44985 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 44996 | 0, 72486 | 0); wasm2js_trap(); } label$106 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$106 } - fimport$0(82363 | 0, 78433 | 0, 44986 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 44997 | 0, 72486 | 0); wasm2js_trap(); } HEAP32[($5_1 + 432 | 0) >> 2] = 0; @@ -67696,14 +67696,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$111 } - fimport$0(82335 | 0, 78433 | 0, 45046 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 45057 | 0, 72486 | 0); wasm2js_trap(); } label$112 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$112 } - fimport$0(82363 | 0, 78433 | 0, 45047 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 45058 | 0, 72486 | 0); wasm2js_trap(); } HEAP8[($5_1 + 375 | 0) >> 0] = ($183((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 64 | 0 | 0) | 0) & 1 | 0; @@ -67715,9 +67715,9 @@ function asmFunc(imports) { } i64toi32_i32$0 = $205((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 64 | 0 | 0) | 0; i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; - $5020 = i64toi32_i32$0; + $5044 = i64toi32_i32$0; i64toi32_i32$0 = $5_1; - HEAP32[($5_1 + 360 | 0) >> 2] = $5020; + HEAP32[($5_1 + 360 | 0) >> 2] = $5044; HEAP32[($5_1 + 364 | 0) >> 2] = i64toi32_i32$1; HEAP32[($5_1 + 352 | 0) >> 2] = 0; i64toi32_i32$1 = 0; @@ -67728,16 +67728,16 @@ function asmFunc(imports) { i64toi32_i32$2 = $5_1; i64toi32_i32$1 = HEAP32[($5_1 + 360 | 0) >> 2] | 0; i64toi32_i32$0 = HEAP32[($5_1 + 364 | 0) >> 2] | 0; - $2353$hi = i64toi32_i32$0; + $2377$hi = i64toi32_i32$0; i64toi32_i32$0 = 0; - $2354$hi = i64toi32_i32$0; - i64toi32_i32$0 = $2353$hi; - i64toi32_i32$0 = $2354$hi; - i64toi32_i32$0 = $2353$hi; - i64toi32_i32$0 = $2354$hi; - i64toi32_i32$0 = $2353$hi; + $2378$hi = i64toi32_i32$0; + i64toi32_i32$0 = $2377$hi; + i64toi32_i32$0 = $2378$hi; + i64toi32_i32$0 = $2377$hi; + i64toi32_i32$0 = $2378$hi; + i64toi32_i32$0 = $2377$hi; i64toi32_i32$2 = i64toi32_i32$1; - i64toi32_i32$1 = $2354$hi; + i64toi32_i32$1 = $2378$hi; i64toi32_i32$3 = 0; label$115 : { if (!(((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0) & 1 | 0)) { @@ -67779,9 +67779,9 @@ function asmFunc(imports) { } i64toi32_i32$2 = $205((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0) + 64 | 0 | 0) | 0; i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; - $5165 = i64toi32_i32$2; + $5189 = i64toi32_i32$2; i64toi32_i32$2 = $5_1; - HEAP32[($5_1 + 328 | 0) >> 2] = $5165; + HEAP32[($5_1 + 328 | 0) >> 2] = $5189; HEAP32[($5_1 + 332 | 0) >> 2] = i64toi32_i32$0; HEAP32[($5_1 + 320 | 0) >> 2] = 0; i64toi32_i32$0 = 0; @@ -67792,16 +67792,16 @@ function asmFunc(imports) { i64toi32_i32$3 = $5_1; i64toi32_i32$0 = HEAP32[($5_1 + 328 | 0) >> 2] | 0; i64toi32_i32$2 = HEAP32[($5_1 + 332 | 0) >> 2] | 0; - $2359$hi = i64toi32_i32$2; + $2383$hi = i64toi32_i32$2; i64toi32_i32$2 = 0; - $2360$hi = i64toi32_i32$2; - i64toi32_i32$2 = $2359$hi; - i64toi32_i32$2 = $2360$hi; - i64toi32_i32$2 = $2359$hi; - i64toi32_i32$2 = $2360$hi; - i64toi32_i32$2 = $2359$hi; + $2384$hi = i64toi32_i32$2; + i64toi32_i32$2 = $2383$hi; + i64toi32_i32$2 = $2384$hi; + i64toi32_i32$2 = $2383$hi; + i64toi32_i32$2 = $2384$hi; + i64toi32_i32$2 = $2383$hi; i64toi32_i32$3 = i64toi32_i32$0; - i64toi32_i32$0 = $2360$hi; + i64toi32_i32$0 = $2384$hi; i64toi32_i32$1 = 0; label$122 : { if (!(((i64toi32_i32$3 | 0) == (i64toi32_i32$1 | 0) & (i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) | 0) & 1 | 0)) { @@ -67853,14 +67853,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$127 } - fimport$0(82335 | 0, 78433 | 0, 45110 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 45121 | 0, 72486 | 0); wasm2js_trap(); } label$128 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$128 } - fimport$0(82363 | 0, 78433 | 0, 45111 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 45122 | 0, 72486 | 0); wasm2js_trap(); } i64toi32_i32$3 = 0; @@ -67878,9 +67878,9 @@ function asmFunc(imports) { } i64toi32_i32$3 = $205((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 64 | 0 | 0) | 0; i64toi32_i32$2 = i64toi32_i32$HIGH_BITS; - $5406 = i64toi32_i32$3; + $5430 = i64toi32_i32$3; i64toi32_i32$3 = $5_1; - HEAP32[($5_1 + 280 | 0) >> 2] = $5406; + HEAP32[($5_1 + 280 | 0) >> 2] = $5430; HEAP32[($5_1 + 284 | 0) >> 2] = i64toi32_i32$2; HEAP32[($5_1 + 276 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0; break label$129; @@ -67894,9 +67894,9 @@ function asmFunc(imports) { } i64toi32_i32$2 = $205((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0) + 64 | 0 | 0) | 0; i64toi32_i32$3 = i64toi32_i32$HIGH_BITS; - $5450 = i64toi32_i32$2; + $5474 = i64toi32_i32$2; i64toi32_i32$2 = $5_1; - HEAP32[($5_1 + 280 | 0) >> 2] = $5450; + HEAP32[($5_1 + 280 | 0) >> 2] = $5474; HEAP32[($5_1 + 284 | 0) >> 2] = i64toi32_i32$3; HEAP32[($5_1 + 276 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0; } @@ -67937,16 +67937,16 @@ function asmFunc(imports) { i64toi32_i32$1 = $5_1; i64toi32_i32$3 = HEAP32[($5_1 + 280 | 0) >> 2] | 0; i64toi32_i32$2 = HEAP32[($5_1 + 284 | 0) >> 2] | 0; - $2368$hi = i64toi32_i32$2; + $2392$hi = i64toi32_i32$2; i64toi32_i32$2 = 0; - $2369$hi = i64toi32_i32$2; - i64toi32_i32$2 = $2368$hi; - i64toi32_i32$2 = $2369$hi; - i64toi32_i32$2 = $2368$hi; - i64toi32_i32$2 = $2369$hi; - i64toi32_i32$2 = $2368$hi; + $2393$hi = i64toi32_i32$2; + i64toi32_i32$2 = $2392$hi; + i64toi32_i32$2 = $2393$hi; + i64toi32_i32$2 = $2392$hi; + i64toi32_i32$2 = $2393$hi; + i64toi32_i32$2 = $2392$hi; i64toi32_i32$1 = i64toi32_i32$3; - i64toi32_i32$3 = $2369$hi; + i64toi32_i32$3 = $2393$hi; i64toi32_i32$0 = 0; if (!(((i64toi32_i32$1 | 0) == (i64toi32_i32$0 | 0) & (i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) | 0) & 1 | 0)) { break label$136 @@ -68020,16 +68020,16 @@ function asmFunc(imports) { i64toi32_i32$0 = $5_1; i64toi32_i32$1 = HEAP32[($5_1 + 280 | 0) >> 2] | 0; i64toi32_i32$2 = HEAP32[($5_1 + 284 | 0) >> 2] | 0; - $2372$hi = i64toi32_i32$2; + $2396$hi = i64toi32_i32$2; i64toi32_i32$2 = 0; - $2373$hi = i64toi32_i32$2; - i64toi32_i32$2 = $2372$hi; - i64toi32_i32$2 = $2373$hi; - i64toi32_i32$2 = $2372$hi; - i64toi32_i32$2 = $2373$hi; - i64toi32_i32$2 = $2372$hi; + $2397$hi = i64toi32_i32$2; + i64toi32_i32$2 = $2396$hi; + i64toi32_i32$2 = $2397$hi; + i64toi32_i32$2 = $2396$hi; + i64toi32_i32$2 = $2397$hi; + i64toi32_i32$2 = $2396$hi; i64toi32_i32$0 = i64toi32_i32$1; - i64toi32_i32$1 = $2373$hi; + i64toi32_i32$1 = $2397$hi; i64toi32_i32$3 = 0; if (!(((i64toi32_i32$0 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$2 | 0) == (i64toi32_i32$1 | 0) | 0) & 1 | 0)) { break label$149 @@ -68111,16 +68111,16 @@ function asmFunc(imports) { i64toi32_i32$3 = $5_1; i64toi32_i32$0 = HEAP32[($5_1 + 280 | 0) >> 2] | 0; i64toi32_i32$2 = HEAP32[($5_1 + 284 | 0) >> 2] | 0; - $2376$hi = i64toi32_i32$2; + $2400$hi = i64toi32_i32$2; i64toi32_i32$2 = 0; - $2377$hi = i64toi32_i32$2; - i64toi32_i32$2 = $2376$hi; - i64toi32_i32$2 = $2377$hi; - i64toi32_i32$2 = $2376$hi; - i64toi32_i32$2 = $2377$hi; - i64toi32_i32$2 = $2376$hi; + $2401$hi = i64toi32_i32$2; + i64toi32_i32$2 = $2400$hi; + i64toi32_i32$2 = $2401$hi; + i64toi32_i32$2 = $2400$hi; + i64toi32_i32$2 = $2401$hi; + i64toi32_i32$2 = $2400$hi; i64toi32_i32$3 = i64toi32_i32$0; - i64toi32_i32$0 = $2377$hi; + i64toi32_i32$0 = $2401$hi; i64toi32_i32$1 = 0; if (!(((i64toi32_i32$3 | 0) == (i64toi32_i32$1 | 0) & (i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) | 0) & 1 | 0)) { break label$165 @@ -68135,16 +68135,16 @@ function asmFunc(imports) { i64toi32_i32$1 = $5_1; i64toi32_i32$3 = HEAP32[($5_1 + 280 | 0) >> 2] | 0; i64toi32_i32$2 = HEAP32[($5_1 + 284 | 0) >> 2] | 0; - $2380$hi = i64toi32_i32$2; + $2404$hi = i64toi32_i32$2; i64toi32_i32$2 = 0; - $2381$hi = i64toi32_i32$2; - i64toi32_i32$2 = $2380$hi; - i64toi32_i32$2 = $2381$hi; - i64toi32_i32$2 = $2380$hi; - i64toi32_i32$2 = $2381$hi; - i64toi32_i32$2 = $2380$hi; + $2405$hi = i64toi32_i32$2; + i64toi32_i32$2 = $2404$hi; + i64toi32_i32$2 = $2405$hi; + i64toi32_i32$2 = $2404$hi; + i64toi32_i32$2 = $2405$hi; + i64toi32_i32$2 = $2404$hi; i64toi32_i32$1 = i64toi32_i32$3; - i64toi32_i32$3 = $2381$hi; + i64toi32_i32$3 = $2405$hi; i64toi32_i32$0 = 0; if (!(((i64toi32_i32$1 | 0) != (i64toi32_i32$0 | 0) | (i64toi32_i32$2 | 0) != (i64toi32_i32$3 | 0) | 0) & 1 | 0)) { break label$166 @@ -68170,200 +68170,211 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$167 } - fimport$0(82335 | 0, 78433 | 0, 45256 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 45267 | 0, 72486 | 0); wasm2js_trap(); } label$168 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$168 } - fimport$0(82363 | 0, 78433 | 0, 45257 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 45268 | 0, 72486 | 0); wasm2js_trap(); } $834(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); $834(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0); - HEAP32[($5_1 + 212 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 73536 | 0) | 0; HEAP32[($5_1 + 208 | 0) >> 2] = 0; i64toi32_i32$1 = 0; i64toi32_i32$2 = $5_1; HEAP32[($5_1 + 200 | 0) >> 2] = 0; HEAP32[($5_1 + 204 | 0) >> 2] = i64toi32_i32$1; $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, $5_1 + 200 | 0 | 0); - $840(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 200 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); - HEAP32[($5_1 + 192 | 0) >> 2] = 0; - i64toi32_i32$1 = 0; - i64toi32_i32$2 = $5_1; - HEAP32[($5_1 + 184 | 0) >> 2] = 0; - HEAP32[($5_1 + 188 | 0) >> 2] = i64toi32_i32$1; - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 + 184 | 0 | 0); - HEAP32[($5_1 + 180 | 0) >> 2] = 0; label$169 : { - label$170 : while (1) { - if (!((HEAP32[($5_1 + 180 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 204 | 0) >> 2] | 0 | 0) & 1 | 0)) { - break label$169 - } - HEAP32[($5_1 + 168 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) >> 2] | 0; - HEAP32[($5_1 + 172 | 0) >> 2] = HEAP32[($5_1 + 172 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) + 4 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) + 8 | 0) >> 2] | 0) | 0) | 0; - HEAP32[($5_1 + 176 | 0) >> 2] = HEAP32[($5_1 + 176 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) + 8 | 0) >> 2] | 0) | 0; - $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 168 | 0 | 0) | 0; - HEAP32[($5_1 + 180 | 0) >> 2] = (HEAP32[($5_1 + 180 | 0) >> 2] | 0) + 1 | 0; - continue label$170; - }; - } - HEAP32[($5_1 + 164 | 0) >> 2] = 0; - label$171 : { - label$172 : while (1) { - if (!((HEAP32[($5_1 + 164 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 188 | 0) >> 2] | 0 | 0) & 1 | 0)) { - break label$171 + label$170 : { + if (!(($183((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 64 | 0 | 0) | 0) & 1 | 0)) { + break label$170 } - HEAP32[($5_1 + 160 | 0) >> 2] = $832(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) >> 2] | 0 | 0) | 0; - label$173 : { - if (!((HEAP32[($5_1 + 160 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) { + if (!((($189((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0) + 64 | 0 | 0) | 0) & 1 | 0 | 0) == (1 | 0) & 1 | 0)) { + break label$170 + } + break label$169; + } + HEAP32[($5_1 + 196 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 73536 | 0) | 0; + $840(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 200 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); + HEAP32[($5_1 + 192 | 0) >> 2] = 0; + i64toi32_i32$1 = 0; + i64toi32_i32$2 = $5_1; + HEAP32[($5_1 + 184 | 0) >> 2] = 0; + HEAP32[($5_1 + 188 | 0) >> 2] = i64toi32_i32$1; + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 + 184 | 0 | 0); + HEAP32[($5_1 + 180 | 0) >> 2] = 0; + label$171 : { + label$172 : while (1) { + if (!((HEAP32[($5_1 + 180 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 204 | 0) >> 2] | 0 | 0) & 1 | 0)) { + break label$171 + } + HEAP32[($5_1 + 168 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) >> 2] | 0; + HEAP32[($5_1 + 172 | 0) >> 2] = HEAP32[($5_1 + 172 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) + 4 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) + 8 | 0) >> 2] | 0) | 0) | 0; + HEAP32[($5_1 + 176 | 0) >> 2] = HEAP32[($5_1 + 176 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 200 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 180 | 0) >> 2] | 0, 12) | 0) + 8 | 0) >> 2] | 0) | 0; + $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 168 | 0 | 0) | 0; + HEAP32[($5_1 + 180 | 0) >> 2] = (HEAP32[($5_1 + 180 | 0) >> 2] | 0) + 1 | 0; + continue label$172; + }; + } + HEAP32[($5_1 + 164 | 0) >> 2] = 0; + label$173 : { + label$174 : while (1) { + if (!((HEAP32[($5_1 + 164 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 188 | 0) >> 2] | 0 | 0) & 1 | 0)) { break label$173 } - HEAP32[($5_1 + 160 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 1060 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; - HEAP32[($5_1 + 148 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) >> 2] | 0; - HEAP32[($5_1 + 152 | 0) >> 2] = 0; - HEAP32[($5_1 + 156 | 0) >> 2] = 0; - $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 148 | 0 | 0) | 0; - } - HEAP32[((HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 160 | 0) >> 2] | 0, 12) | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) >> 2] | 0; - $1954 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 160 | 0) >> 2] | 0, 12) | 0; - HEAP32[($1954 + 8 | 0) >> 2] = HEAP32[($1954 + 8 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) + 8 | 0) >> 2] | 0) | 0; - $1962 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 160 | 0) >> 2] | 0, 12) | 0; - HEAP32[($1962 + 4 | 0) >> 2] = HEAP32[($1962 + 4 | 0) >> 2] | 0 | 3 | 0; - HEAP32[($5_1 + 164 | 0) >> 2] = (HEAP32[($5_1 + 164 | 0) >> 2] | 0) + 1 | 0; - continue label$172; - }; + HEAP32[($5_1 + 160 | 0) >> 2] = $832(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) >> 2] | 0 | 0) | 0; + label$175 : { + if (!((HEAP32[($5_1 + 160 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) { + break label$175 + } + HEAP32[($5_1 + 160 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 1060 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; + HEAP32[($5_1 + 148 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) >> 2] | 0; + HEAP32[($5_1 + 152 | 0) >> 2] = 0; + HEAP32[($5_1 + 156 | 0) >> 2] = 0; + $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 148 | 0 | 0) | 0; + } + HEAP32[((HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 160 | 0) >> 2] | 0, 12) | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) >> 2] | 0; + $1974 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 160 | 0) >> 2] | 0, 12) | 0; + HEAP32[($1974 + 8 | 0) >> 2] = HEAP32[($1974 + 8 | 0) >> 2] | 0 | (HEAP32[(((HEAP32[($5_1 + 184 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 164 | 0) >> 2] | 0, 12) | 0) + 8 | 0) >> 2] | 0) | 0; + $1982 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 160 | 0) >> 2] | 0, 12) | 0; + HEAP32[($1982 + 4 | 0) >> 2] = HEAP32[($1982 + 4 | 0) >> 2] | 0 | 3 | 0; + HEAP32[($5_1 + 164 | 0) >> 2] = (HEAP32[($5_1 + 164 | 0) >> 2] | 0) + 1 | 0; + continue label$174; + }; + } + $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 196 | 0) >> 2] | 0 | 0); + $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 196 | 0) >> 2] | 0 | 0); + $723($5_1 + 200 | 0 | 0); + $723($5_1 + 184 | 0 | 0); } - $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 212 | 0) >> 2] | 0 | 0); - $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 212 | 0) >> 2] | 0 | 0); - $723($5_1 + 200 | 0 | 0); - $723($5_1 + 184 | 0 | 0); break label$1; case 52: - label$174 : { + label$176 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$174 + break label$176 } - fimport$0(82335 | 0, 78433 | 0, 45327 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 45346 | 0, 72486 | 0); wasm2js_trap(); } - label$175 : { + label$177 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$175 + break label$177 } - fimport$0(82363 | 0, 78433 | 0, 45328 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 45347 | 0, 72486 | 0); wasm2js_trap(); } $834(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); $834(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0); - HEAP32[($5_1 + 144 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 73536 | 0) | 0; - HEAP32[($5_1 + 136 | 0) >> 2] = 0; + HEAP32[($5_1 + 144 | 0) >> 2] = 0; i64toi32_i32$1 = 0; i64toi32_i32$2 = $5_1; + HEAP32[($5_1 + 136 | 0) >> 2] = 0; + HEAP32[($5_1 + 140 | 0) >> 2] = i64toi32_i32$1; + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, $5_1 + 136 | 0 | 0); + HEAP32[($5_1 + 132 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 73536 | 0) | 0; + $831(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 136 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); HEAP32[($5_1 + 128 | 0) >> 2] = 0; - HEAP32[($5_1 + 132 | 0) >> 2] = i64toi32_i32$1; - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, $5_1 + 128 | 0 | 0); - $831(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 128 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); - HEAP32[($5_1 + 120 | 0) >> 2] = 0; i64toi32_i32$1 = 0; i64toi32_i32$2 = $5_1; - HEAP32[($5_1 + 112 | 0) >> 2] = 0; - HEAP32[($5_1 + 116 | 0) >> 2] = i64toi32_i32$1; - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 + 112 | 0 | 0); - HEAP32[($5_1 + 108 | 0) >> 2] = 0; - label$176 : { - label$177 : while (1) { - if (!((HEAP32[($5_1 + 108 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 132 | 0) >> 2] | 0 | 0) & 1 | 0)) { - break label$176 - } - HEAP32[($5_1 + 104 | 0) >> 2] = (HEAP32[($5_1 + 128 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 108 | 0) >> 2] | 0, 12) | 0; - HEAP32[($5_1 + 96 | 0) >> 2] = 0; - i64toi32_i32$1 = 0; - i64toi32_i32$2 = $5_1; - HEAP32[($5_1 + 88 | 0) >> 2] = 0; - HEAP32[($5_1 + 92 | 0) >> 2] = i64toi32_i32$1; - HEAP32[($5_1 + 88 | 0) >> 2] = HEAP32[(HEAP32[($5_1 + 104 | 0) >> 2] | 0) >> 2] | 0; - HEAP32[($5_1 + 92 | 0) >> 2] = HEAP32[($5_1 + 92 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 104 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0; - HEAP32[($5_1 + 96 | 0) >> 2] = HEAP32[($5_1 + 96 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 104 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0) | 0; - $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 88 | 0 | 0) | 0; - HEAP32[($5_1 + 108 | 0) >> 2] = (HEAP32[($5_1 + 108 | 0) >> 2] | 0) + 1 | 0; - continue label$177; - }; - } - HEAP32[($5_1 + 84 | 0) >> 2] = 0; + HEAP32[($5_1 + 120 | 0) >> 2] = 0; + HEAP32[($5_1 + 124 | 0) >> 2] = i64toi32_i32$1; + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 + 120 | 0 | 0); + HEAP32[($5_1 + 116 | 0) >> 2] = 0; label$178 : { label$179 : while (1) { - if (!((HEAP32[($5_1 + 84 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 116 | 0) >> 2] | 0 | 0) & 1 | 0)) { + if (!((HEAP32[($5_1 + 116 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 140 | 0) >> 2] | 0 | 0) & 1 | 0)) { break label$178 } - HEAP32[($5_1 + 80 | 0) >> 2] = (HEAP32[($5_1 + 112 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 84 | 0) >> 2] | 0, 12) | 0; - HEAP32[($5_1 + 76 | 0) >> 2] = $832(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($5_1 + 80 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0; - label$180 : { - if (!((HEAP32[($5_1 + 76 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) { - break label$180 - } - HEAP32[($5_1 + 76 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 1060 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; - HEAP32[($5_1 + 64 | 0) >> 2] = HEAP32[(HEAP32[($5_1 + 80 | 0) >> 2] | 0) >> 2] | 0; - HEAP32[($5_1 + 68 | 0) >> 2] = 0; - HEAP32[($5_1 + 72 | 0) >> 2] = 0; - $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 64 | 0 | 0) | 0; - } - HEAP32[((HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 76 | 0) >> 2] | 0, 12) | 0) >> 2] = HEAP32[(HEAP32[($5_1 + 80 | 0) >> 2] | 0) >> 2] | 0; - $2122 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 76 | 0) >> 2] | 0, 12) | 0; - HEAP32[($2122 + 4 | 0) >> 2] = HEAP32[($2122 + 4 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 80 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0; - $2132 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 76 | 0) >> 2] | 0, 12) | 0; - HEAP32[($2132 + 8 | 0) >> 2] = HEAP32[($2132 + 8 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0; - $2140 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 76 | 0) >> 2] | 0, 12) | 0; - HEAP32[($2140 + 8 | 0) >> 2] = HEAP32[($2140 + 8 | 0) >> 2] | 0 | 3 | 0; - HEAP32[($5_1 + 84 | 0) >> 2] = (HEAP32[($5_1 + 84 | 0) >> 2] | 0) + 1 | 0; + HEAP32[($5_1 + 112 | 0) >> 2] = (HEAP32[($5_1 + 136 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 116 | 0) >> 2] | 0, 12) | 0; + HEAP32[($5_1 + 104 | 0) >> 2] = 0; + i64toi32_i32$1 = 0; + i64toi32_i32$2 = $5_1; + HEAP32[($5_1 + 96 | 0) >> 2] = 0; + HEAP32[($5_1 + 100 | 0) >> 2] = i64toi32_i32$1; + HEAP32[($5_1 + 96 | 0) >> 2] = HEAP32[(HEAP32[($5_1 + 112 | 0) >> 2] | 0) >> 2] | 0; + HEAP32[($5_1 + 100 | 0) >> 2] = HEAP32[($5_1 + 100 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 112 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0; + HEAP32[($5_1 + 104 | 0) >> 2] = HEAP32[($5_1 + 104 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 112 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 112 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0) | 0; + $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 96 | 0 | 0) | 0; + HEAP32[($5_1 + 116 | 0) >> 2] = (HEAP32[($5_1 + 116 | 0) >> 2] | 0) + 1 | 0; continue label$179; }; } - $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 144 | 0) >> 2] | 0 | 0); - $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 144 | 0) >> 2] | 0 | 0); - $723($5_1 + 128 | 0 | 0); - $723($5_1 + 112 | 0 | 0); + HEAP32[($5_1 + 92 | 0) >> 2] = 0; + label$180 : { + label$181 : while (1) { + if (!((HEAP32[($5_1 + 92 | 0) >> 2] | 0 | 0) < (HEAP32[($5_1 + 124 | 0) >> 2] | 0 | 0) & 1 | 0)) { + break label$180 + } + HEAP32[($5_1 + 88 | 0) >> 2] = (HEAP32[($5_1 + 120 | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 92 | 0) >> 2] | 0, 12) | 0; + HEAP32[($5_1 + 84 | 0) >> 2] = $832(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($5_1 + 88 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0; + label$182 : { + if (!((HEAP32[($5_1 + 84 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) { + break label$182 + } + HEAP32[($5_1 + 84 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 1060 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; + HEAP32[($5_1 + 72 | 0) >> 2] = HEAP32[(HEAP32[($5_1 + 88 | 0) >> 2] | 0) >> 2] | 0; + HEAP32[($5_1 + 76 | 0) >> 2] = 0; + HEAP32[($5_1 + 80 | 0) >> 2] = 0; + $825(HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0, $5_1 + 72 | 0 | 0) | 0; + } + HEAP32[((HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 84 | 0) >> 2] | 0, 12) | 0) >> 2] = HEAP32[(HEAP32[($5_1 + 88 | 0) >> 2] | 0) >> 2] | 0; + $2142 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 84 | 0) >> 2] | 0, 12) | 0; + HEAP32[($2142 + 4 | 0) >> 2] = HEAP32[($2142 + 4 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 88 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0; + $2152 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 84 | 0) >> 2] | 0, 12) | 0; + HEAP32[($2152 + 8 | 0) >> 2] = HEAP32[($2152 + 8 | 0) >> 2] | 0 | (HEAP32[((HEAP32[($5_1 + 88 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0; + $2160 = (HEAP32[(HEAP32[($5_1 + 1060 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5_1 + 84 | 0) >> 2] | 0, 12) | 0; + HEAP32[($2160 + 8 | 0) >> 2] = HEAP32[($2160 + 8 | 0) >> 2] | 0 | 3 | 0; + HEAP32[($5_1 + 92 | 0) >> 2] = (HEAP32[($5_1 + 92 | 0) >> 2] | 0) + 1 | 0; + continue label$181; + }; + } + $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 132 | 0) >> 2] | 0 | 0); + $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 132 | 0) >> 2] | 0 | 0); + $723($5_1 + 136 | 0 | 0); + $723($5_1 + 120 | 0 | 0); break label$1; case 50: - label$181 : { + label$183 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$181 + break label$183 } - fimport$0(82335 | 0, 78433 | 0, 45398 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 45417 | 0, 72486 | 0); wasm2js_trap(); } - label$182 : { + label$184 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$182 + break label$184 } - fimport$0(82363 | 0, 78433 | 0, 45399 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 45418 | 0, 72486 | 0); wasm2js_trap(); } - HEAP32[($5_1 + 56 | 0) >> 2] = 0; + HEAP32[($5_1 + 64 | 0) >> 2] = 0; i64toi32_i32$1 = 0; i64toi32_i32$2 = $5_1; - HEAP32[($5_1 + 48 | 0) >> 2] = 0; - HEAP32[($5_1 + 52 | 0) >> 2] = i64toi32_i32$1; - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, $5_1 + 48 | 0 | 0); - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 + 48 | 0 | 0); - $723($5_1 + 48 | 0 | 0); + HEAP32[($5_1 + 56 | 0) >> 2] = 0; + HEAP32[($5_1 + 60 | 0) >> 2] = i64toi32_i32$1; + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, $5_1 + 56 | 0 | 0); + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 + 56 | 0 | 0); + $723($5_1 + 56 | 0 | 0); break label$1; case 48: case 49: - label$183 : { + label$185 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$183 + break label$185 } - fimport$0(82335 | 0, 78433 | 0, 45414 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 45433 | 0, 72486 | 0); wasm2js_trap(); } - label$184 : { + label$186 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$184 + break label$186 } - fimport$0(82363 | 0, 78433 | 0, 45415 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 45434 | 0, 72486 | 0); wasm2js_trap(); } $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 1060 | 0) >> 2] | 0 | 0); @@ -68383,58 +68394,58 @@ function asmFunc(imports) { break label$1; }; } - label$185 : { + label$187 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$185 + break label$187 } - fimport$0(82628 | 0, 78433 | 0, 45437 | 0, 72486 | 0); + fimport$0(82628 | 0, 78433 | 0, 45456 | 0, 72486 | 0); wasm2js_trap(); } - label$186 : { + label$188 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$186 + break label$188 } - fimport$0(82335 | 0, 78433 | 0, 45438 | 0, 72486 | 0); + fimport$0(82335 | 0, 78433 | 0, 45457 | 0, 72486 | 0); wasm2js_trap(); } - label$187 : { + label$189 : { if ((HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { - break label$187 + break label$189 } - fimport$0(82363 | 0, 78433 | 0, 45439 | 0, 72486 | 0); + fimport$0(82363 | 0, 78433 | 0, 45458 | 0, 72486 | 0); wasm2js_trap(); } - HEAP32[($5_1 + 40 | 0) >> 2] = 0; + HEAP32[($5_1 + 48 | 0) >> 2] = 0; i64toi32_i32$1 = 0; i64toi32_i32$2 = $5_1; - HEAP32[($5_1 + 32 | 0) >> 2] = 0; - HEAP32[($5_1 + 36 | 0) >> 2] = i64toi32_i32$1; + HEAP32[($5_1 + 40 | 0) >> 2] = 0; + HEAP32[($5_1 + 44 | 0) >> 2] = i64toi32_i32$1; $834(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0 | 0); - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0 | 0, $5_1 + 32 | 0 | 0); - HEAP32[($5_1 + 28 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 74554 | 0) | 0; - $831(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 32 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); - HEAP32[($5_1 + 24 | 0) >> 2] = 0; + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0 | 0, $5_1 + 40 | 0 | 0); + HEAP32[($5_1 + 36 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 74554 | 0) | 0; + $831(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 40 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); + HEAP32[($5_1 + 32 | 0) >> 2] = 0; i64toi32_i32$1 = 0; i64toi32_i32$2 = $5_1; + HEAP32[($5_1 + 24 | 0) >> 2] = 0; + HEAP32[($5_1 + 28 | 0) >> 2] = i64toi32_i32$1; + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, $5_1 + 24 | 0 | 0); + $723($5_1 + 24 | 0 | 0); + HEAP32[($5_1 + 20 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 73927 | 0) | 0; + $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 36 | 0) >> 2] | 0 | 0); + $840(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 40 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); HEAP32[($5_1 + 16 | 0) >> 2] = 0; - HEAP32[($5_1 + 20 | 0) >> 2] = i64toi32_i32$1; - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0, $5_1 + 16 | 0 | 0); - $723($5_1 + 16 | 0 | 0); - HEAP32[($5_1 + 12 | 0) >> 2] = $839(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, 73927 | 0) | 0; - $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 28 | 0) >> 2] | 0 | 0); - $840(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, $5_1 + 32 | 0 | 0, (HEAPU8[($5_1 + 1059 | 0) >> 0] | 0) & 1 | 0 | 0); - HEAP32[($5_1 + 8 | 0) >> 2] = 0; i64toi32_i32$1 = 0; i64toi32_i32$2 = $5_1; - HEAP32[$5_1 >> 2] = 0; - HEAP32[($5_1 + 4 | 0) >> 2] = i64toi32_i32$1; - $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 | 0); - $723($5_1 | 0); - $843(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 12 | 0) >> 2] | 0 | 0); - $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 12 | 0) >> 2] | 0 | 0); - $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 28 | 0) >> 2] | 0 | 0); - $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 12 | 0) >> 2] | 0 | 0); - $723($5_1 + 32 | 0 | 0); + HEAP32[($5_1 + 8 | 0) >> 2] = 0; + HEAP32[($5_1 + 12 | 0) >> 2] = i64toi32_i32$1; + $730(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 1064 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0, $5_1 + 8 | 0 | 0); + $723($5_1 + 8 | 0 | 0); + $843(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 20 | 0) >> 2] | 0 | 0); + $841(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 20 | 0) >> 2] | 0 | 0); + $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 36 | 0) >> 2] | 0 | 0); + $842(HEAP32[($5_1 + 1068 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 20 | 0) >> 2] | 0 | 0); + $723($5_1 + 40 | 0 | 0); } global$0 = $5_1 + 1072 | 0; return; @@ -68627,7 +68638,7 @@ function asmFunc(imports) { $833(HEAP32[($4_1 + 236 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0); break label$4; } - fimport$0(75513 | 0, 78433 | 0, 43529 | 0, 69684 | 0); + fimport$0(75513 | 0, 78433 | 0, 43540 | 0, 69684 | 0); wasm2js_trap(); } } @@ -68669,7 +68680,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$12 } - fimport$0(82390 | 0, 78433 | 0, 43554 | 0, 69684 | 0); + fimport$0(82390 | 0, 78433 | 0, 43565 | 0, 69684 | 0); wasm2js_trap(); } $473(HEAP32[($4_1 + 236 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 184 | 0) >> 2] | 0 | 0, $4_1 + 184 | 0 | 0, $4_1 + 156 | 0 | 0, 2 | 0, 0 & 1 | 0 | 0, ($470((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0) | 0) & 1 | 0 | 0, ($391((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0, (HEAPU8[((HEAP32[((HEAP32[($4_1 + 236 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 264 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0 | 0, (HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0, HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0, (HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($4_1 + 212 | 0) >> 2] | 0 | 0, 0 | 0); @@ -68683,7 +68694,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$15 } - fimport$0(82390 | 0, 78433 | 0, 43573 | 0, 69684 | 0); + fimport$0(82390 | 0, 78433 | 0, 43584 | 0, 69684 | 0); wasm2js_trap(); } $315($4_1 + 96 | 0 | 0, (HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0); @@ -68709,7 +68720,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$18 } - fimport$0(82390 | 0, 78433 | 0, 43589 | 0, 69684 | 0); + fimport$0(82390 | 0, 78433 | 0, 43600 | 0, 69684 | 0); wasm2js_trap(); } $315($4_1 + 32 | 0 | 0, (HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0); @@ -68750,7 +68761,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$22 } - fimport$0(82390 | 0, 78433 | 0, 43622 | 0, 69684 | 0); + fimport$0(82390 | 0, 78433 | 0, 43633 | 0, 69684 | 0); wasm2js_trap(); } $864(HEAP32[($4_1 + 236 | 0) >> 2] | 0 | 0, (HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 40 | 0 | 0, HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0); @@ -68773,7 +68784,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$26 } - fimport$0(82390 | 0, 78433 | 0, 43636 | 0, 69684 | 0); + fimport$0(82390 | 0, 78433 | 0, 43647 | 0, 69684 | 0); wasm2js_trap(); } $462((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0, HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0); @@ -68783,7 +68794,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$27 } - fimport$0(82390 | 0, 78433 | 0, 43641 | 0, 69684 | 0); + fimport$0(82390 | 0, 78433 | 0, 43652 | 0, 69684 | 0); wasm2js_trap(); } $450((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 160 | 0 | 0, HEAP32[((HEAP32[((HEAP32[($4_1 + 232 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0); @@ -68908,7 +68919,7 @@ function asmFunc(imports) { $468(HEAP32[($5_1 + 28 | 0) >> 2] | 0 | 0, (HEAP32[($5_1 + 4 | 0) >> 2] | 0) + 160 | 0 | 0, ($470((HEAP32[($5_1 + 4 | 0) >> 2] | 0) + 160 | 0 | 0) | 0) & 1 | 0 | 0, HEAP32[((HEAP32[($5_1 + 4 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 20 | 0) >> 2] | 0 | 0, HEAP32[$5_1 >> 2] | 0 | 0); break label$8; } - fimport$0(86300 | 0, 78433 | 0, 43160 | 0, 72957 | 0); + fimport$0(86300 | 0, 78433 | 0, 43171 | 0, 72957 | 0); wasm2js_trap(); } } @@ -69254,7 +69265,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) { break label$1 } - fimport$0(80779 | 0, 78433 | 0, 49912 | 0, 66761 | 0); + fimport$0(80779 | 0, 78433 | 0, 49931 | 0, 66761 | 0); wasm2js_trap(); } label$2 : { @@ -71764,7 +71775,7 @@ function asmFunc(imports) { break label$7; }; } - fimport$0(75513 | 0, 78433 | 0, 23251 | 0, 74093 | 0); + fimport$0(75513 | 0, 78433 | 0, 23262 | 0, 74093 | 0); wasm2js_trap(); } i64toi32_i32$0 = $205($5_1 + 752 | 0 | 0) | 0; @@ -72505,7 +72516,7 @@ function asmFunc(imports) { $768(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); break label$5; } - fimport$0(75513 | 0, 78433 | 0, 40123 | 0, 67555 | 0); + fimport$0(75513 | 0, 78433 | 0, 40134 | 0, 67555 | 0); wasm2js_trap(); } } @@ -72580,7 +72591,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$1 } - fimport$0(84068 | 0, 78433 | 0, 40040 | 0, 67105 | 0); + fimport$0(84068 | 0, 78433 | 0, 40051 | 0, 67105 | 0); wasm2js_trap(); } label$2 : { @@ -72624,13 +72635,13 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[($4_1 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$12 } - fimport$0(83942 | 0, 78433 | 0, 40062 | 0, 67105 | 0); + fimport$0(83942 | 0, 78433 | 0, 40073 | 0, 67105 | 0); wasm2js_trap(); } $777(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[(HEAP32[($4_1 + 8 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, (HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 20 | 0 | 0); break label$10; } - fimport$0(75513 | 0, 78433 | 0, 40071 | 0, 67105 | 0); + fimport$0(75513 | 0, 78433 | 0, 40082 | 0, 67105 | 0); wasm2js_trap(); } } @@ -72696,7 +72707,7 @@ function asmFunc(imports) { $780(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0); break label$1; } - fimport$0(75513 | 0, 78433 | 0, 40033 | 0, 67277 | 0); + fimport$0(75513 | 0, 78433 | 0, 40044 | 0, 67277 | 0); wasm2js_trap(); } global$0 = $4_1 + 16 | 0; @@ -72727,7 +72738,7 @@ function asmFunc(imports) { $782(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0); break label$3; } - fimport$0(75513 | 0, 78433 | 0, 39909 | 0, 67186 | 0); + fimport$0(75513 | 0, 78433 | 0, 39920 | 0, 67186 | 0); wasm2js_trap(); } } @@ -72959,7 +72970,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[(HEAP32[($4_1 + 8 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0 | 0) == (9042 | 0) & 1 | 0) { break label$1 } - fimport$0(85311 | 0, 78433 | 0, 39958 | 0, 67413 | 0); + fimport$0(85311 | 0, 78433 | 0, 39969 | 0, 67413 | 0); wasm2js_trap(); } label$2 : { @@ -72998,7 +73009,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[(HEAP32[($4_1 + 8 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0 | 0) == (9008 | 0) & 1 | 0) { break label$1 } - fimport$0(80087 | 0, 78433 | 0, 39940 | 0, 67471 | 0); + fimport$0(80087 | 0, 78433 | 0, 39951 | 0, 67471 | 0); wasm2js_trap(); } HEAP32[($4_1 + 4 | 0) >> 2] = $551(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0) | 0; @@ -73036,7 +73047,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[(HEAP32[($4_1 + 24 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0 | 0) == (9015 | 0) & 1 | 0) { break label$1 } - fimport$0(79730 | 0, 78433 | 0, 39980 | 0, 67053 | 0); + fimport$0(79730 | 0, 78433 | 0, 39991 | 0, 67053 | 0); wasm2js_trap(); } label$2 : { @@ -73127,7 +73138,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) == (9017 | 0) & 1 | 0) { break label$5 } - fimport$0(84821 | 0, 78433 | 0, 39839 | 0, 67361 | 0); + fimport$0(84821 | 0, 78433 | 0, 39850 | 0, 67361 | 0); wasm2js_trap(); } $715(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); @@ -73705,7 +73716,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[(HEAP32[($4_1 + 752 | 0) >> 2] | 0) >> 2] | 0) + 184 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$24 } - fimport$0(83387 | 0, 78433 | 0, 41814 | 0, 68814 | 0); + fimport$0(83387 | 0, 78433 | 0, 41825 | 0, 68814 | 0); wasm2js_trap(); } HEAP32[($4_1 + 748 | 0) >> 2] = $227(HEAP32[((HEAP32[(HEAP32[($4_1 + 752 | 0) >> 2] | 0) >> 2] | 0) + 184 | 0) >> 2] | 0 | 0) | 0; @@ -73743,7 +73754,7 @@ function asmFunc(imports) { if ((HEAP32[($4_1 + 600 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$31 } - fimport$0(83283 | 0, 78433 | 0, 41837 | 0, 68814 | 0); + fimport$0(83283 | 0, 78433 | 0, 41848 | 0, 68814 | 0); wasm2js_trap(); } $306_1 = $227(HEAP32[($4_1 + 600 | 0) >> 2] | 0 | 0) | 0; @@ -74334,7 +74345,7 @@ function asmFunc(imports) { $794(HEAP32[($6_1 + 216 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($6_1 + 220 | 0) >> 2] | 0) >> 2] | 0 | 0); $211_1 = HEAP32[($6_1 + 216 | 0) >> 2] | 0; $215_1 = HEAP32[((HEAP32[((HEAP32[((HEAP32[($6_1 + 212 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; - HEAP32[($6_1 + 36 | 0) >> 2] = 90498; + HEAP32[($6_1 + 36 | 0) >> 2] = 90682; HEAP32[($6_1 + 32 | 0) >> 2] = $215_1; $11($211_1 | 0, 88575 | 0, $6_1 + 32 | 0 | 0) | 0; $795(HEAP32[($6_1 + 220 | 0) >> 2] | 0 | 0, HEAP32[($6_1 + 216 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[($6_1 + 212 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); @@ -74448,9 +74459,9 @@ function asmFunc(imports) { HEAP32[($6_1 + 132 | 0) >> 2] = i64toi32_i32$0; HEAP32[($6_1 + 128 | 0) >> 2] = 1; $86((HEAP32[($6_1 + 220 | 0) >> 2] | 0) + 40 | 0 | 0, HEAP32[((HEAP32[((HEAP32[((HEAP32[($6_1 + 212 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, $6_1 + 128 | 0 | 0) | 0; - $11(HEAP32[($6_1 + 216 | 0) >> 2] | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11(HEAP32[($6_1 + 216 | 0) >> 2] | 0 | 0, 90681 | 0, 0 | 0) | 0; $799(HEAP32[($6_1 + 220 | 0) >> 2] | 0 | 0, HEAP32[($6_1 + 216 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[($6_1 + 212 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0); - $11(HEAP32[($6_1 + 216 | 0) >> 2] | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11(HEAP32[($6_1 + 216 | 0) >> 2] | 0 | 0, 90681 | 0, 0 | 0) | 0; $85($6_1 + 128 | 0 | 0); } $12($6_1 + 192 | 0 | 0); @@ -74526,7 +74537,7 @@ function asmFunc(imports) { label$2 : { switch ($7_1 | 0) { case 0: - fimport$0(75513 | 0, 78433 | 0, 40671 | 0, 72508 | 0); + fimport$0(75513 | 0, 78433 | 0, 40682 | 0, 72508 | 0); wasm2js_trap(); case 4: break label$1; @@ -74582,7 +74593,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$57 } - fimport$0(83033 | 0, 78433 | 0, 40703 | 0, 72508 | 0); + fimport$0(83033 | 0, 78433 | 0, 40714 | 0, 72508 | 0); wasm2js_trap(); } label$58 : { @@ -74596,7 +74607,7 @@ function asmFunc(imports) { if (!((HEAP32[((HEAP32[((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) & 1 | 0)) { break label$59 } - $11((HEAP32[($5_1 + 956 | 0) >> 2] | 0) + 104 | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11((HEAP32[($5_1 + 956 | 0) >> 2] | 0) + 104 | 0 | 0, 90681 | 0, 0 | 0) | 0; $124_1 = HEAP32[($5_1 + 952 | 0) >> 2] | 0; $125_1 = 8; HEAP32[(($5_1 + 872 | 0) + $125_1 | 0) >> 2] = HEAP32[($124_1 + $125_1 | 0) >> 2] | 0; @@ -74651,7 +74662,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$60 } - fimport$0(82335 | 0, 78433 | 0, 40754 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40765 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 87682 | 0, 0 | 0) | 0; @@ -74663,7 +74674,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 180 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$61 } - fimport$0(83683 | 0, 78433 | 0, 40761 | 0, 72508 | 0); + fimport$0(83683 | 0, 78433 | 0, 40772 | 0, 72508 | 0); wasm2js_trap(); } label$62 : { @@ -74678,7 +74689,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$63 } - fimport$0(82363 | 0, 78433 | 0, 40771 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 40782 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -74698,7 +74709,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$65 } - fimport$0(82363 | 0, 78433 | 0, 40786 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 40797 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -74720,7 +74731,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$67 } - fimport$0(82363 | 0, 78433 | 0, 40806 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 40817 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -74731,7 +74742,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$68 } - fimport$0(82363 | 0, 78433 | 0, 40813 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 40824 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -74742,14 +74753,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$69 } - fimport$0(82363 | 0, 78433 | 0, 40820 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 40831 | 0, 72508 | 0); wasm2js_trap(); } label$70 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$70 } - fimport$0(82335 | 0, 78433 | 0, 40821 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40832 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -74762,7 +74773,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$71 } - fimport$0(82363 | 0, 78433 | 0, 40831 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 40842 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -74791,7 +74802,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$75 } - fimport$0(82335 | 0, 78433 | 0, 40850 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40861 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 88270 | 0, 0 | 0) | 0; @@ -74812,14 +74823,14 @@ function asmFunc(imports) { HEAP32[($5_1 + 468 | 0) >> 2] = i64toi32_i32$1; $11($5_1 + 464 | 0 | 0, 88507 | 0, 0 | 0) | 0; $721(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, $5_1 + 464 | 0 | 0, (HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 4 | 0 | 0, $5_1 + 480 | 0 | 0); - $11($5_1 + 464 | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11($5_1 + 464 | 0 | 0, 90681 | 0, 0 | 0) | 0; HEAP32[($5_1 + 460 | 0) >> 2] = HEAP32[(HEAP32[($5_1 + 956 | 0) >> 2] | 0) >> 2] | 0; HEAP32[(HEAP32[($5_1 + 956 | 0) >> 2] | 0) >> 2] = 0; label$76 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 176 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$76 } - fimport$0(82227 | 0, 78433 | 0, 40868 | 0, 72508 | 0); + fimport$0(82227 | 0, 78433 | 0, 40879 | 0, 72508 | 0); wasm2js_trap(); } $799(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, $5_1 + 464 | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 176 | 0) >> 2] | 0 | 0); @@ -74903,7 +74914,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$79 } - fimport$0(82335 | 0, 78433 | 0, 40946 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40957 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 86939 | 0, 0 | 0) | 0; @@ -74914,7 +74925,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$80 } - fimport$0(82335 | 0, 78433 | 0, 40954 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40965 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 86905 | 0, 0 | 0) | 0; @@ -74925,7 +74936,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$81 } - fimport$0(82335 | 0, 78433 | 0, 40963 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40974 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 88315 | 0, 0 | 0) | 0; @@ -74936,7 +74947,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$82 } - fimport$0(82335 | 0, 78433 | 0, 40969 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40980 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 65872 | 0, 0 | 0) | 0; @@ -74947,7 +74958,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$83 } - fimport$0(82335 | 0, 78433 | 0, 40975 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40986 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 86935 | 0, 0 | 0) | 0; @@ -74958,7 +74969,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$84 } - fimport$0(82335 | 0, 78433 | 0, 40981 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40992 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 86940 | 0, 0 | 0) | 0; @@ -74969,7 +74980,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$85 } - fimport$0(82335 | 0, 78433 | 0, 40988 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 40999 | 0, 72508 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, 86942 | 0, 0 | 0) | 0; @@ -74982,14 +74993,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$86 } - fimport$0(82363 | 0, 78433 | 0, 40997 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41008 | 0, 72508 | 0); wasm2js_trap(); } label$87 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$87 } - fimport$0(82335 | 0, 78433 | 0, 40998 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41009 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75001,14 +75012,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$88 } - fimport$0(82363 | 0, 78433 | 0, 41005 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41016 | 0, 72508 | 0); wasm2js_trap(); } label$89 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$89 } - fimport$0(82335 | 0, 78433 | 0, 41006 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41017 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75020,14 +75031,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$90 } - fimport$0(82363 | 0, 78433 | 0, 41013 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41024 | 0, 72508 | 0); wasm2js_trap(); } label$91 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$91 } - fimport$0(82335 | 0, 78433 | 0, 41014 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41025 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75039,14 +75050,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$92 } - fimport$0(82363 | 0, 78433 | 0, 41020 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41031 | 0, 72508 | 0); wasm2js_trap(); } label$93 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$93 } - fimport$0(82335 | 0, 78433 | 0, 41021 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41032 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75058,14 +75069,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$94 } - fimport$0(82363 | 0, 78433 | 0, 41028 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41039 | 0, 72508 | 0); wasm2js_trap(); } label$95 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$95 } - fimport$0(82335 | 0, 78433 | 0, 41029 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41040 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75079,14 +75090,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$96 } - fimport$0(82363 | 0, 78433 | 0, 41037 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41048 | 0, 72508 | 0); wasm2js_trap(); } label$97 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$97 } - fimport$0(82335 | 0, 78433 | 0, 41038 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41049 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75098,14 +75109,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$98 } - fimport$0(82363 | 0, 78433 | 0, 41045 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41056 | 0, 72508 | 0); wasm2js_trap(); } label$99 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$99 } - fimport$0(82335 | 0, 78433 | 0, 41046 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41057 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75117,7 +75128,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$100 } - fimport$0(82363 | 0, 78433 | 0, 41055 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41066 | 0, 72508 | 0); wasm2js_trap(); } HEAP32[($5_1 + 312 | 0) >> 2] = 0; @@ -75137,14 +75148,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$101 } - fimport$0(82363 | 0, 78433 | 0, 41066 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41077 | 0, 72508 | 0); wasm2js_trap(); } label$102 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$102 } - fimport$0(82335 | 0, 78433 | 0, 41067 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41078 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75156,14 +75167,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$103 } - fimport$0(82363 | 0, 78433 | 0, 41074 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41085 | 0, 72508 | 0); wasm2js_trap(); } label$104 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$104 } - fimport$0(82335 | 0, 78433 | 0, 41075 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41086 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75175,14 +75186,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$105 } - fimport$0(82363 | 0, 78433 | 0, 41082 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41093 | 0, 72508 | 0); wasm2js_trap(); } label$106 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$106 } - fimport$0(82335 | 0, 78433 | 0, 41083 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41094 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75194,14 +75205,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$107 } - fimport$0(82363 | 0, 78433 | 0, 41089 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41100 | 0, 72508 | 0); wasm2js_trap(); } label$108 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$108 } - fimport$0(82335 | 0, 78433 | 0, 41090 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41101 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75213,14 +75224,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$109 } - fimport$0(82363 | 0, 78433 | 0, 41098 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41109 | 0, 72508 | 0); wasm2js_trap(); } label$110 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$110 } - fimport$0(82335 | 0, 78433 | 0, 41099 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41110 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75232,14 +75243,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$111 } - fimport$0(82363 | 0, 78433 | 0, 41105 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41116 | 0, 72508 | 0); wasm2js_trap(); } label$112 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$112 } - fimport$0(82335 | 0, 78433 | 0, 41106 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41117 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75251,14 +75262,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$113 } - fimport$0(82363 | 0, 78433 | 0, 41112 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41123 | 0, 72508 | 0); wasm2js_trap(); } label$114 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$114 } - fimport$0(82335 | 0, 78433 | 0, 41113 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41124 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75270,14 +75281,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$115 } - fimport$0(82363 | 0, 78433 | 0, 41119 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41130 | 0, 72508 | 0); wasm2js_trap(); } label$116 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$116 } - fimport$0(82335 | 0, 78433 | 0, 41120 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41131 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75289,14 +75300,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$117 } - fimport$0(82363 | 0, 78433 | 0, 41126 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41137 | 0, 72508 | 0); wasm2js_trap(); } label$118 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$118 } - fimport$0(82335 | 0, 78433 | 0, 41127 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41138 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75308,14 +75319,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$119 } - fimport$0(82363 | 0, 78433 | 0, 41134 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41145 | 0, 72508 | 0); wasm2js_trap(); } label$120 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$120 } - fimport$0(82335 | 0, 78433 | 0, 41135 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41146 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75327,14 +75338,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$121 } - fimport$0(82363 | 0, 78433 | 0, 41141 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41152 | 0, 72508 | 0); wasm2js_trap(); } label$122 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$122 } - fimport$0(82335 | 0, 78433 | 0, 41142 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41153 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75346,14 +75357,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$123 } - fimport$0(82363 | 0, 78433 | 0, 41149 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41160 | 0, 72508 | 0); wasm2js_trap(); } label$124 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$124 } - fimport$0(82335 | 0, 78433 | 0, 41150 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41161 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75365,14 +75376,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$125 } - fimport$0(82363 | 0, 78433 | 0, 41156 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41167 | 0, 72508 | 0); wasm2js_trap(); } label$126 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$126 } - fimport$0(82335 | 0, 78433 | 0, 41157 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41168 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0); @@ -75393,21 +75404,21 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$127 } - fimport$0(82628 | 0, 78433 | 0, 41169 | 0, 72508 | 0); + fimport$0(82628 | 0, 78433 | 0, 41180 | 0, 72508 | 0); wasm2js_trap(); } label$128 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$128 } - fimport$0(82363 | 0, 78433 | 0, 41170 | 0, 72508 | 0); + fimport$0(82363 | 0, 78433 | 0, 41181 | 0, 72508 | 0); wasm2js_trap(); } label$129 : { if ((HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$129 } - fimport$0(82335 | 0, 78433 | 0, 41171 | 0, 72508 | 0); + fimport$0(82335 | 0, 78433 | 0, 41182 | 0, 72508 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 956 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 952 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 948 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0 | 0); @@ -75854,7 +75865,7 @@ function asmFunc(imports) { $91_1 = HEAP32[($5_1 + 72 | 0) >> 2] | 0; HEAP32[($5_1 + 16 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 76 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0; $11($91_1 | 0, 69608 | 0, $5_1 + 16 | 0 | 0) | 0; - $11(HEAP32[($5_1 + 72 | 0) >> 2] | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11(HEAP32[($5_1 + 72 | 0) >> 2] | 0 | 0, 90681 | 0, 0 | 0) | 0; } label$4 : { if (!((HEAP32[($5_1 + 32 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) { @@ -76077,7 +76088,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 24 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83241 | 0, 78433 | 0, 40619 | 0, 76375 | 0); + fimport$0(83241 | 0, 78433 | 0, 40630 | 0, 76375 | 0); wasm2js_trap(); } HEAP32[($5_1 + 12 | 0) >> 2] = $227(HEAP32[((HEAP32[($5_1 + 24 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) | 0; @@ -76375,7 +76386,7 @@ function asmFunc(imports) { $812(HEAP32[($5_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 8 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); break label$5; } - fimport$0(75513 | 0, 78433 | 0, 41614 | 0, 67587 | 0); + fimport$0(75513 | 0, 78433 | 0, 41625 | 0, 67587 | 0); wasm2js_trap(); } } @@ -76640,7 +76651,7 @@ function asmFunc(imports) { $11($209_1 | 0, 89369 | 0, $5_1 + 48 | 0 | 0) | 0; break label$15; } - fimport$0(75513 | 0, 78433 | 0, 41292 | 0, 67132 | 0); + fimport$0(75513 | 0, 78433 | 0, 41303 | 0, 67132 | 0); wasm2js_trap(); } } @@ -76690,7 +76701,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 52 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$6 } - fimport$0(84414 | 0, 78433 | 0, 41341 | 0, 67309 | 0); + fimport$0(84414 | 0, 78433 | 0, 41352 | 0, 67309 | 0); wasm2js_trap(); } $795(HEAP32[($5_1 + 60 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 56 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 52 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0); @@ -76796,7 +76807,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 148 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83642 | 0, 78433 | 0, 41446 | 0, 67218 | 0); + fimport$0(83642 | 0, 78433 | 0, 41457 | 0, 67218 | 0); wasm2js_trap(); } $11(HEAP32[($5_1 + 152 | 0) >> 2] | 0 | 0, 87662 | 0, 0 | 0) | 0; @@ -76831,7 +76842,7 @@ function asmFunc(imports) { $87_1 = HEAP32[($5_1 + 152 | 0) >> 2] | 0; HEAP32[($5_1 + 48 | 0) >> 2] = HEAP32[((HEAP32[($5_1 + 156 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0; $11($87_1 | 0, 69608 | 0, $5_1 + 48 | 0 | 0) | 0; - $11(HEAP32[($5_1 + 152 | 0) >> 2] | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11(HEAP32[($5_1 + 152 | 0) >> 2] | 0 | 0, 90681 | 0, 0 | 0) | 0; $96_1 = HEAP32[($5_1 + 152 | 0) >> 2] | 0; HEAP32[($5_1 + 64 | 0) >> 2] = HEAP32[($5_1 + 112 | 0) >> 2] | 0; $11($96_1 | 0, 69608 | 0, $5_1 + 64 | 0 | 0) | 0; @@ -76866,7 +76877,7 @@ function asmFunc(imports) { $162_1 = HEAP32[($5_1 + 152 | 0) >> 2] | 0; HEAP32[$5_1 >> 2] = HEAP32[((HEAP32[($5_1 + 156 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0; $11($162_1 | 0, 69608 | 0, $5_1 | 0) | 0; - $11(HEAP32[($5_1 + 152 | 0) >> 2] | 0 | 0, 90497 | 0, 0 | 0) | 0; + $11(HEAP32[($5_1 + 152 | 0) >> 2] | 0 | 0, 90681 | 0, 0 | 0) | 0; $169_1 = HEAP32[($5_1 + 152 | 0) >> 2] | 0; HEAP32[($5_1 + 16 | 0) >> 2] = HEAP32[($5_1 + 80 | 0) >> 2] | 0; $11($169_1 | 0, 69608 | 0, $5_1 + 16 | 0 | 0) | 0; @@ -76895,7 +76906,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 148 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$10 } - fimport$0(84021 | 0, 78433 | 0, 41507 | 0, 67218 | 0); + fimport$0(84021 | 0, 78433 | 0, 41518 | 0, 67218 | 0); wasm2js_trap(); } label$11 : { @@ -77085,7 +77096,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($3_1 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$1 } - fimport$0(82268 | 0, 78433 | 0, 41429 | 0, 67502 | 0); + fimport$0(82268 | 0, 78433 | 0, 41440 | 0, 67502 | 0); wasm2js_trap(); } label$2 : { @@ -77152,7 +77163,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[($5_1 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$1 } - fimport$0(83974 | 0, 78433 | 0, 41298 | 0, 67615 | 0); + fimport$0(83974 | 0, 78433 | 0, 41309 | 0, 67615 | 0); wasm2js_trap(); } $821(HEAP32[($5_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5_1 + 8 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5_1 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0); @@ -77662,14 +77673,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($6_1 + 24 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83033 | 0, 78433 | 0, 44411 | 0, 76819 | 0); + fimport$0(83033 | 0, 78433 | 0, 44422 | 0, 76819 | 0); wasm2js_trap(); } label$4 : { if ((HEAP32[((HEAP32[((HEAP32[($6_1 + 24 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$4 } - fimport$0(82163 | 0, 78433 | 0, 44412 | 0, 76819 | 0); + fimport$0(82163 | 0, 78433 | 0, 44423 | 0, 76819 | 0); wasm2js_trap(); } HEAP32[($6_1 + 12 | 0) >> 2] = $845(HEAP32[($6_1 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6_1 + 16 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[((HEAP32[($6_1 + 24 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0; @@ -78269,7 +78280,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[(HEAP32[($6_1 + 24 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($6_1 + 16 | 0) >> 2] | 0, 12) | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$3 } - fimport$0(83776 | 0, 78433 | 0, 43064 | 0, 73885 | 0); + fimport$0(83776 | 0, 78433 | 0, 43075 | 0, 73885 | 0); wasm2js_trap(); } HEAP32[($6_1 + 12 | 0) >> 2] = $472(HEAP32[($6_1 + 28 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[(HEAP32[($6_1 + 24 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($6_1 + 16 | 0) >> 2] | 0, 12) | 0) >> 2] | 0 | 0, (HEAPU8[($6_1 + 23 | 0) >> 0] | 0) & 1 | 0 | 0) | 0; @@ -78471,14 +78482,14 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($5_1 + 56 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$13 } - fimport$0(84189 | 0, 78433 | 0, 43305 | 0, 75407 | 0); + fimport$0(84189 | 0, 78433 | 0, 43316 | 0, 75407 | 0); wasm2js_trap(); } label$14 : { if ((HEAP32[((HEAP32[($5_1 + 48 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$14 } - fimport$0(84169 | 0, 78433 | 0, 43306 | 0, 75407 | 0); + fimport$0(84169 | 0, 78433 | 0, 43317 | 0, 75407 | 0); wasm2js_trap(); } HEAP32[($5_1 + 44 | 0) >> 2] = $440(HEAP32[($5_1 + 60 | 0) >> 2] | 0 | 0) | 0; @@ -78580,7 +78591,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$1 } - fimport$0(83107 | 0, 78433 | 0, 44002 | 0, 72924 | 0); + fimport$0(83107 | 0, 78433 | 0, 44013 | 0, 72924 | 0); wasm2js_trap(); } $851(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0); @@ -79187,7 +79198,7 @@ function asmFunc(imports) { $464((HEAP32[$5_1 >> 2] | 0) + 160 | 0 | 0, HEAP32[((HEAP32[$5_1 >> 2] | 0) + 144 | 0) >> 2] | 0 | 0); break label$4; } - fimport$0(86300 | 0, 78433 | 0, 43196 | 0, 76263 | 0); + fimport$0(86300 | 0, 78433 | 0, 43207 | 0, 76263 | 0); wasm2js_trap(); } } @@ -79228,7 +79239,7 @@ function asmFunc(imports) { $872(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4_1 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0); break label$5; } - fimport$0(75513 | 0, 78433 | 0, 45925 | 0, 67524 | 0); + fimport$0(75513 | 0, 78433 | 0, 45944 | 0, 67524 | 0); wasm2js_trap(); } } @@ -79408,7 +79419,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 108 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$11 } - fimport$0(84092 | 0, 78433 | 0, 45759 | 0, 67079 | 0); + fimport$0(84092 | 0, 78433 | 0, 45778 | 0, 67079 | 0); wasm2js_trap(); } HEAP32[($4_1 + 80 | 0) >> 2] = $420(HEAP32[($4_1 + 108 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4_1 + 108 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[((HEAP32[($4_1 + 104 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) | 0; @@ -79423,7 +79434,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 108 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$13 } - fimport$0(84092 | 0, 78433 | 0, 45768 | 0, 67079 | 0); + fimport$0(84092 | 0, 78433 | 0, 45787 | 0, 67079 | 0); wasm2js_trap(); } $462(HEAP32[((HEAP32[($4_1 + 108 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0, HEAP32[($4_1 + 80 | 0) >> 2] | 0 | 0); @@ -79445,7 +79456,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[($4_1 + 108 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$14 } - fimport$0(84092 | 0, 78433 | 0, 45780 | 0, 67079 | 0); + fimport$0(84092 | 0, 78433 | 0, 45799 | 0, 67079 | 0); wasm2js_trap(); } $191_1 = 0; @@ -79501,7 +79512,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[($4_1 + 104 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$23 } - fimport$0(83942 | 0, 78433 | 0, 45842 | 0, 67079 | 0); + fimport$0(83942 | 0, 78433 | 0, 45861 | 0, 67079 | 0); wasm2js_trap(); } HEAP32[($4_1 + 16 | 0) >> 2] = -1; @@ -79535,7 +79546,7 @@ function asmFunc(imports) { $557(HEAP32[($4_1 + 108 | 0) >> 2] | 0 | 0, (HEAP32[($4_1 + 104 | 0) >> 2] | 0) + 20 | 0 | 0, HEAP32[((HEAP32[($4_1 + 104 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0); break label$21; } - fimport$0(75513 | 0, 78433 | 0, 45865 | 0, 67079 | 0); + fimport$0(75513 | 0, 78433 | 0, 45884 | 0, 67079 | 0); wasm2js_trap(); } } @@ -79595,7 +79606,7 @@ function asmFunc(imports) { $880(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0); break label$1; } - fimport$0(75513 | 0, 78433 | 0, 45716 | 0, 67246 | 0); + fimport$0(75513 | 0, 78433 | 0, 45735 | 0, 67246 | 0); wasm2js_trap(); } HEAP8[((HEAP32[($4_1 + 12 | 0) >> 2] | 0) + 39 | 0) >> 0] = (HEAPU8[($4_1 + 7 | 0) >> 0] | 0) & 1 | 0; @@ -79627,7 +79638,7 @@ function asmFunc(imports) { $882(HEAP32[($4_1 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4_1 + 8 | 0) >> 2] | 0 | 0); break label$3; } - fimport$0(75513 | 0, 78433 | 0, 43979 | 0, 67155 | 0); + fimport$0(75513 | 0, 78433 | 0, 43990 | 0, 67155 | 0); wasm2js_trap(); } } @@ -79748,7 +79759,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[(HEAP32[($4_1 + 56 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0 | 0) == (9042 | 0) & 1 | 0) { break label$1 } - fimport$0(85311 | 0, 78433 | 0, 45542 | 0, 67386 | 0); + fimport$0(85311 | 0, 78433 | 0, 45561 | 0, 67386 | 0); wasm2js_trap(); } label$2 : { @@ -79820,7 +79831,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[(HEAP32[($4_1 + 24 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0 | 0) == (9008 | 0) & 1 | 0) { break label$1 } - fimport$0(80087 | 0, 78433 | 0, 45497 | 0, 67441 | 0); + fimport$0(80087 | 0, 78433 | 0, 45516 | 0, 67441 | 0); wasm2js_trap(); } HEAP8[($4_1 + 23 | 0) >> 0] = (HEAPU8[((HEAP32[((HEAP32[($4_1 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 264 | 0) >> 0] | 0) & 1 | 0; @@ -79869,7 +79880,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[(HEAP32[($4_1 + 24 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0 | 0) == (9015 | 0) & 1 | 0) { break label$1 } - fimport$0(79730 | 0, 78433 | 0, 45643 | 0, 67028 | 0); + fimport$0(79730 | 0, 78433 | 0, 45662 | 0, 67028 | 0); wasm2js_trap(); } HEAP32[($4_1 + 16 | 0) >> 2] = 0; @@ -79993,7 +80004,7 @@ function asmFunc(imports) { if ((HEAP32[((HEAP32[((HEAP32[((HEAP32[((HEAP32[($4_1 + 264 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) { break label$6 } - fimport$0(81931 | 0, 78433 | 0, 43768 | 0, 67337 | 0); + fimport$0(81931 | 0, 78433 | 0, 43779 | 0, 67337 | 0); wasm2js_trap(); } HEAP32[($4_1 + 216 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[((HEAP32[((HEAP32[($4_1 + 264 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0; @@ -80004,7 +80015,7 @@ function asmFunc(imports) { if ((HEAP32[(HEAP32[((HEAP32[($4_1 + 264 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) == (9017 | 0) & 1 | 0) { break label$7 } - fimport$0(84821 | 0, 78433 | 0, 43774 | 0, 67337 | 0); + fimport$0(84821 | 0, 78433 | 0, 43785 | 0, 67337 | 0); wasm2js_trap(); } HEAP32[($4_1 + 12 | 0) >> 2] = $839(HEAP32[($4_1 + 268 | 0) >> 2] | 0 | 0, 74554 | 0) | 0; @@ -80225,7 +80236,7 @@ function asmFunc(imports) { } function $889() { - return 119044 | 0; + return 119220 | 0; } function $890($0_1) { @@ -80682,16 +80693,16 @@ function asmFunc(imports) { } $1_1 = 0; label$2 : { - if (!(HEAP32[(0 + 119024 | 0) >> 2] | 0)) { + if (!(HEAP32[(0 + 119200 | 0) >> 2] | 0)) { break label$2 } - $1_1 = $899(HEAP32[(0 + 119024 | 0) >> 2] | 0 | 0) | 0; + $1_1 = $899(HEAP32[(0 + 119200 | 0) >> 2] | 0 | 0) | 0; } label$3 : { - if (!(HEAP32[(0 + 119064 | 0) >> 2] | 0)) { + if (!(HEAP32[(0 + 119240 | 0) >> 2] | 0)) { break label$3 } - $1_1 = $899(HEAP32[(0 + 119064 | 0) >> 2] | 0 | 0) | 0 | $1_1 | 0; + $1_1 = $899(HEAP32[(0 + 119240 | 0) >> 2] | 0 | 0) | 0 | $1_1 | 0; } label$4 : { $0_1 = HEAP32[($916() | 0) >> 2] | 0; @@ -81052,7 +81063,7 @@ function asmFunc(imports) { function $914($0_1) { $0_1 = $0_1 | 0; - return $915($0_1 | 0, 119124 | 0) | 0 | 0; + return $915($0_1 | 0, 119300 | 0) | 0 | 0; } function $915($0_1, $1_1) { @@ -81063,17 +81074,17 @@ function asmFunc(imports) { i64toi32_i32$2 = $0_1; i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0; $1029(HEAP32[i64toi32_i32$2 >> 2] | 0 | 0, i64toi32_i32$1 | 0, $1_1 | 0); - HEAP32[($1_1 + 40 | 0) >> 2] = HEAP32[(HEAP32[($1_1 + 32 | 0) >> 2] | 0 ? 119056 + 4 | 0 : 119056) >> 2] | 0; + HEAP32[($1_1 + 40 | 0) >> 2] = HEAP32[(HEAP32[($1_1 + 32 | 0) >> 2] | 0 ? 119232 + 4 | 0 : 119232) >> 2] | 0; return $1_1 | 0; } function $916() { - $912(119168 | 0); - return 119172 | 0; + $912(119344 | 0); + return 119348 | 0; } function $917() { - $913(119168 | 0); + $913(119344 | 0); } function $918($0_1, $1_1) { @@ -81083,7 +81094,7 @@ function asmFunc(imports) { $2_1 = global$0 - 16 | 0; global$0 = $2_1; HEAP32[($2_1 + 12 | 0) >> 2] = $1_1; - $1_1 = $975(118880 | 0, $0_1 | 0, $1_1 | 0) | 0; + $1_1 = $975(119056 | 0, $0_1 | 0, $1_1 | 0) | 0; global$0 = $2_1 + 16 | 0; return $1_1 | 0; } @@ -81097,12 +81108,12 @@ function asmFunc(imports) { } function $921() { - return 119176 | 0; + return 119352 | 0; } function $922() { - HEAP32[(0 + 119272 | 0) >> 2] = 119100; - HEAP32[(0 + 119200 | 0) >> 2] = $920() | 0; + HEAP32[(0 + 119448 | 0) >> 2] = 119276; + HEAP32[(0 + 119376 | 0) >> 2] = $920() | 0; } function $923($0_1, $1_1) { @@ -83000,8 +83011,8 @@ function asmFunc(imports) { break label$2 } $2_1 = $2_1 << 2 | 0; - $5_1 = HEAP32[($2_1 + 117868 | 0) >> 2] | 0; - $6_1 = HEAP32[($2_1 + 117856 | 0) >> 2] | 0; + $5_1 = HEAP32[($2_1 + 118044 | 0) >> 2] | 0; + $6_1 = HEAP32[($2_1 + 118032 | 0) >> 2] | 0; label$3 : while (1) { label$4 : { label$5 : { @@ -85241,7 +85252,7 @@ function asmFunc(imports) { i64toi32_i32$2 = $386$hi; i64toi32_i32$1 = $390$hi; $1012($7_1 + 240 | 0 | 0, $380_1 | 0, i64toi32_i32$0 | 0, $384_1 | 0, i64toi32_i32$5 | 0, $386_1 | 0, i64toi32_i32$2 | 0, $390_1 | 0, i64toi32_i32$1 | 0); - $1006($7_1 + 224 | 0 | 0, HEAP32[(((8 - $16_1 | 0) << 2 | 0) + 117824 | 0) >> 2] | 0 | 0); + $1006($7_1 + 224 | 0 | 0, HEAP32[(((8 - $16_1 | 0) << 2 | 0) + 118e3 | 0) >> 2] | 0 | 0); i64toi32_i32$5 = $7_1; i64toi32_i32$1 = HEAP32[($7_1 + 240 | 0) >> 2] | 0; i64toi32_i32$2 = HEAP32[($7_1 + 244 | 0) >> 2] | 0; @@ -85316,7 +85327,7 @@ function asmFunc(imports) { i64toi32_i32$2 = $445$hi; i64toi32_i32$1 = $449$hi; $1012($7_1 + 320 | 0 | 0, $439_1 | 0, i64toi32_i32$0 | 0, $443_1 | 0, i64toi32_i32$5 | 0, $445_1 | 0, i64toi32_i32$2 | 0, $449_1 | 0, i64toi32_i32$1 | 0); - $1006($7_1 + 304 | 0 | 0, HEAP32[(($16_1 << 2 | 0) + 117784 | 0) >> 2] | 0 | 0); + $1006($7_1 + 304 | 0 | 0, HEAP32[(($16_1 << 2 | 0) + 117960 | 0) >> 2] | 0 | 0); i64toi32_i32$5 = $7_1; i64toi32_i32$1 = HEAP32[($7_1 + 320 | 0) >> 2] | 0; i64toi32_i32$2 = HEAP32[($7_1 + 324 | 0) >> 2] | 0; @@ -85382,7 +85393,7 @@ function asmFunc(imports) { $14_1 = 0; break label$42; } - $11_1 = HEAP32[(((8 - $9_1 | 0) << 2 | 0) + 117824 | 0) >> 2] | 0; + $11_1 = HEAP32[(((8 - $9_1 | 0) << 2 | 0) + 118e3 | 0) >> 2] | 0; $6_1 = (1e9 | 0) / ($11_1 | 0) | 0; $2_1 = 0; $1_1 = 0; @@ -85551,7 +85562,7 @@ function asmFunc(imports) { break label$60 } $2_1 = HEAP32[(($7_1 + 784 | 0) + ($2_1 << 2 | 0) | 0) >> 2] | 0; - $13_1 = HEAP32[(($1_1 << 2 | 0) + 117808 | 0) >> 2] | 0; + $13_1 = HEAP32[(($1_1 << 2 | 0) + 117984 | 0) >> 2] | 0; if ($2_1 >>> 0 < $13_1 >>> 0) { break label$60 } @@ -86863,18 +86874,18 @@ function asmFunc(imports) { function $964() { label$1 : { - if ((HEAPU8[(0 + 120368 | 0) >> 0] | 0) & 1 | 0) { + if ((HEAPU8[(0 + 120544 | 0) >> 0] | 0) & 1 | 0) { break label$1 } - $910(120344 | 0) | 0; + $910(120520 | 0) | 0; label$2 : { - if ((HEAPU8[(0 + 120368 | 0) >> 0] | 0) & 1 | 0) { + if ((HEAPU8[(0 + 120544 | 0) >> 0] | 0) & 1 | 0) { break label$2 } - fimport$4(119048 | 0, 119052 | 0, 119056 | 0); - HEAP8[(0 + 120368 | 0) >> 0] = 1; + fimport$4(119224 | 0, 119228 | 0, 119232 | 0); + HEAP8[(0 + 120544 | 0) >> 0] = 1; } - $911(120344 | 0) | 0; + $911(120520 | 0) | 0; } } @@ -87291,7 +87302,7 @@ function asmFunc(imports) { break label$2 } $1_1 = $1_1 + 1 | 0; - $14_1 = HEAPU8[(($14_1 + Math_imul($17_1, 58) | 0) + 117823 | 0) >> 0] | 0; + $14_1 = HEAPU8[(($14_1 + Math_imul($17_1, 58) | 0) + 117999 | 0) >> 0] | 0; if (($14_1 + -1 | 0) >>> 0 < 8 >>> 0) { continue label$37 } @@ -88049,7 +88060,7 @@ function asmFunc(imports) { label$2 : while (1) { $1_1 = $1_1 + -1 | 0; i64toi32_i32$0 = $0$hi; - HEAP8[$1_1 >> 0] = HEAPU8[(($0_1 & 15 | 0) + 118352 | 0) >> 0] | 0 | $2_1 | 0; + HEAP8[$1_1 >> 0] = HEAPU8[(($0_1 & 15 | 0) + 118528 | 0) >> 0] | 0 | $2_1 | 0; i64toi32_i32$2 = $0_1; i64toi32_i32$1 = 0; i64toi32_i32$3 = 15; @@ -89013,7 +89024,7 @@ function asmFunc(imports) { } $11_1 = -2147483648; } - HEAP8[$10_1 >> 0] = HEAPU8[($11_1 + 118352 | 0) >> 0] | 0 | $18_1 | 0; + HEAP8[$10_1 >> 0] = HEAPU8[($11_1 + 118528 | 0) >> 0] | 0 | $18_1 | 0; $1_1 = ($1_1 - +($11_1 | 0)) * 16.0; label$75 : { $11_1 = $10_1 + 1 | 0; @@ -89269,7 +89280,7 @@ function asmFunc(imports) { function $986($0_1) { $0_1 = $0_1 | 0; var $1_1 = 0, $2_1 = 0; - $1_1 = HEAP32[(0 + 119028 | 0) >> 2] | 0; + $1_1 = HEAP32[(0 + 119204 | 0) >> 2] | 0; $2_1 = ($0_1 + 7 | 0) & -8 | 0; $0_1 = $1_1 + $2_1 | 0; label$1 : { @@ -89289,7 +89300,7 @@ function asmFunc(imports) { break label$1 } } - HEAP32[(0 + 119028 | 0) >> 2] = $0_1; + HEAP32[(0 + 119204 | 0) >> 2] = $0_1; return $1_1 | 0; } HEAP32[($889() | 0) >> 2] = 48; @@ -89315,7 +89326,7 @@ function asmFunc(imports) { break label$10 } label$11 : { - $2_1 = HEAP32[(0 + 120372 | 0) >> 2] | 0; + $2_1 = HEAP32[(0 + 120548 | 0) >> 2] | 0; $3_1 = $0_1 >>> 0 < 11 >>> 0 ? 16 : ($0_1 + 11 | 0) & -8 | 0; $4_1 = $3_1 >>> 3 | 0; $0_1 = $2_1 >>> $4_1 | 0; @@ -89326,13 +89337,13 @@ function asmFunc(imports) { label$13 : { $5_1 = (($0_1 ^ -1 | 0) & 1 | 0) + $4_1 | 0; $4_1 = $5_1 << 3 | 0; - $0_1 = $4_1 + 120412 | 0; - $4_1 = HEAP32[($4_1 + 120420 | 0) >> 2] | 0; + $0_1 = $4_1 + 120588 | 0; + $4_1 = HEAP32[($4_1 + 120596 | 0) >> 2] | 0; $3_1 = HEAP32[($4_1 + 8 | 0) >> 2] | 0; if (($0_1 | 0) != ($3_1 | 0)) { break label$13 } - HEAP32[(0 + 120372 | 0) >> 2] = $2_1 & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $2_1 & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; break label$12; } HEAP32[($3_1 + 12 | 0) >> 2] = $0_1; @@ -89345,7 +89356,7 @@ function asmFunc(imports) { HEAP32[($4_1 + 4 | 0) >> 2] = HEAP32[($4_1 + 4 | 0) >> 2] | 0 | 1 | 0; break label$1; } - $6_1 = HEAP32[(0 + 120380 | 0) >> 2] | 0; + $6_1 = HEAP32[(0 + 120556 | 0) >> 2] | 0; if ($3_1 >>> 0 <= $6_1 >>> 0) { break label$9 } @@ -89359,14 +89370,14 @@ function asmFunc(imports) { $0_1 = 2 << $4_1 | 0; $4_1 = __wasm_ctz_i32($79_1 & ($0_1 | (0 - $0_1 | 0) | 0) | 0 | 0) | 0; $0_1 = $4_1 << 3 | 0; - $5_1 = $0_1 + 120412 | 0; - $0_1 = HEAP32[($0_1 + 120420 | 0) >> 2] | 0; + $5_1 = $0_1 + 120588 | 0; + $0_1 = HEAP32[($0_1 + 120596 | 0) >> 2] | 0; $7_1 = HEAP32[($0_1 + 8 | 0) >> 2] | 0; if (($5_1 | 0) != ($7_1 | 0)) { break label$16 } $2_1 = $2_1 & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; - HEAP32[(0 + 120372 | 0) >> 2] = $2_1; + HEAP32[(0 + 120548 | 0) >> 2] = $2_1; break label$15; } HEAP32[($7_1 + 12 | 0) >> 2] = $5_1; @@ -89382,15 +89393,15 @@ function asmFunc(imports) { if (!$6_1) { break label$17 } - $3_1 = ($6_1 & -8 | 0) + 120412 | 0; - $4_1 = HEAP32[(0 + 120392 | 0) >> 2] | 0; + $3_1 = ($6_1 & -8 | 0) + 120588 | 0; + $4_1 = HEAP32[(0 + 120568 | 0) >> 2] | 0; label$18 : { label$19 : { $8_1 = 1 << ($6_1 >>> 3 | 0) | 0; if ($2_1 & $8_1 | 0) { break label$19 } - HEAP32[(0 + 120372 | 0) >> 2] = $2_1 | $8_1 | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $2_1 | $8_1 | 0; $8_1 = $3_1; break label$18; } @@ -89402,15 +89413,15 @@ function asmFunc(imports) { HEAP32[($4_1 + 8 | 0) >> 2] = $8_1; } $0_1 = $0_1 + 8 | 0; - HEAP32[(0 + 120392 | 0) >> 2] = $7_1; - HEAP32[(0 + 120380 | 0) >> 2] = $5_1; + HEAP32[(0 + 120568 | 0) >> 2] = $7_1; + HEAP32[(0 + 120556 | 0) >> 2] = $5_1; break label$1; } - $9_1 = HEAP32[(0 + 120376 | 0) >> 2] | 0; + $9_1 = HEAP32[(0 + 120552 | 0) >> 2] | 0; if (!$9_1) { break label$9 } - $7_1 = HEAP32[(((__wasm_ctz_i32($9_1 | 0) | 0) << 2 | 0) + 120676 | 0) >> 2] | 0; + $7_1 = HEAP32[(((__wasm_ctz_i32($9_1 | 0) | 0) << 2 | 0) + 120852 | 0) >> 2] | 0; $4_1 = ((HEAP32[($7_1 + 4 | 0) >> 2] | 0) & -8 | 0) - $3_1 | 0; $5_1 = $7_1; label$20 : { @@ -89441,7 +89452,7 @@ function asmFunc(imports) { break label$23 } $0_1 = HEAP32[($7_1 + 8 | 0) >> 2] | 0; - HEAP32[(0 + 120388 | 0) >> 2] | 0; + HEAP32[(0 + 120564 | 0) >> 2] | 0; HEAP32[($0_1 + 12 | 0) >> 2] = $8_1; HEAP32[($8_1 + 8 | 0) >> 2] = $0_1; break label$2; @@ -89482,7 +89493,7 @@ function asmFunc(imports) { } $0_1 = $0_1 + 11 | 0; $3_1 = $0_1 & -8 | 0; - $6_1 = HEAP32[(0 + 120376 | 0) >> 2] | 0; + $6_1 = HEAP32[(0 + 120552 | 0) >> 2] | 0; if (!$6_1) { break label$9 } @@ -89503,7 +89514,7 @@ function asmFunc(imports) { label$28 : { label$29 : { label$30 : { - $5_1 = HEAP32[(($11_1 << 2 | 0) + 120676 | 0) >> 2] | 0; + $5_1 = HEAP32[(($11_1 << 2 | 0) + 120852 | 0) >> 2] | 0; if ($5_1) { break label$30 } @@ -89550,7 +89561,7 @@ function asmFunc(imports) { if (!$0_1) { break label$9 } - $0_1 = HEAP32[(((__wasm_ctz_i32($0_1 | 0) | 0) << 2 | 0) + 120676 | 0) >> 2] | 0; + $0_1 = HEAP32[(((__wasm_ctz_i32($0_1 | 0) | 0) << 2 | 0) + 120852 | 0) >> 2] | 0; } if (!$0_1) { break label$27 @@ -89578,7 +89589,7 @@ function asmFunc(imports) { if (!$8_1) { break label$9 } - if ($4_1 >>> 0 >= ((HEAP32[(0 + 120380 | 0) >> 2] | 0) - $3_1 | 0) >>> 0) { + if ($4_1 >>> 0 >= ((HEAP32[(0 + 120556 | 0) >> 2] | 0) - $3_1 | 0) >>> 0) { break label$9 } $11_1 = HEAP32[($8_1 + 24 | 0) >> 2] | 0; @@ -89588,7 +89599,7 @@ function asmFunc(imports) { break label$36 } $0_1 = HEAP32[($8_1 + 8 | 0) >> 2] | 0; - HEAP32[(0 + 120388 | 0) >> 2] | 0; + HEAP32[(0 + 120564 | 0) >> 2] | 0; HEAP32[($0_1 + 12 | 0) >> 2] = $7_1; HEAP32[($7_1 + 8 | 0) >> 2] = $0_1; break label$3; @@ -89624,11 +89635,11 @@ function asmFunc(imports) { break label$3; } label$39 : { - $0_1 = HEAP32[(0 + 120380 | 0) >> 2] | 0; + $0_1 = HEAP32[(0 + 120556 | 0) >> 2] | 0; if ($0_1 >>> 0 < $3_1 >>> 0) { break label$39 } - $4_1 = HEAP32[(0 + 120392 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120568 | 0) >> 2] | 0; label$40 : { label$41 : { $5_1 = $0_1 - $3_1 | 0; @@ -89647,21 +89658,21 @@ function asmFunc(imports) { $7_1 = 0; $5_1 = 0; } - HEAP32[(0 + 120380 | 0) >> 2] = $5_1; - HEAP32[(0 + 120392 | 0) >> 2] = $7_1; + HEAP32[(0 + 120556 | 0) >> 2] = $5_1; + HEAP32[(0 + 120568 | 0) >> 2] = $7_1; $0_1 = $4_1 + 8 | 0; break label$1; } label$42 : { - $7_1 = HEAP32[(0 + 120384 | 0) >> 2] | 0; + $7_1 = HEAP32[(0 + 120560 | 0) >> 2] | 0; if ($7_1 >>> 0 <= $3_1 >>> 0) { break label$42 } $4_1 = $7_1 - $3_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $4_1; - $0_1 = HEAP32[(0 + 120396 | 0) >> 2] | 0; + HEAP32[(0 + 120560 | 0) >> 2] = $4_1; + $0_1 = HEAP32[(0 + 120572 | 0) >> 2] | 0; $5_1 = $0_1 + $3_1 | 0; - HEAP32[(0 + 120396 | 0) >> 2] = $5_1; + HEAP32[(0 + 120572 | 0) >> 2] = $5_1; HEAP32[($5_1 + 4 | 0) >> 2] = $4_1 | 1 | 0; HEAP32[($0_1 + 4 | 0) >> 2] = $3_1 | 3 | 0; $0_1 = $0_1 + 8 | 0; @@ -89669,23 +89680,23 @@ function asmFunc(imports) { } label$43 : { label$44 : { - if (!(HEAP32[(0 + 120844 | 0) >> 2] | 0)) { + if (!(HEAP32[(0 + 121020 | 0) >> 2] | 0)) { break label$44 } - $4_1 = HEAP32[(0 + 120852 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 121028 | 0) >> 2] | 0; break label$43; } i64toi32_i32$1 = 0; i64toi32_i32$0 = -1; - HEAP32[(i64toi32_i32$1 + 120856 | 0) >> 2] = -1; - HEAP32[(i64toi32_i32$1 + 120860 | 0) >> 2] = i64toi32_i32$0; + HEAP32[(i64toi32_i32$1 + 121032 | 0) >> 2] = -1; + HEAP32[(i64toi32_i32$1 + 121036 | 0) >> 2] = i64toi32_i32$0; i64toi32_i32$1 = 0; i64toi32_i32$0 = 4096; - HEAP32[(i64toi32_i32$1 + 120848 | 0) >> 2] = 4096; - HEAP32[(i64toi32_i32$1 + 120852 | 0) >> 2] = i64toi32_i32$0; - HEAP32[(0 + 120844 | 0) >> 2] = (($1_1 + 12 | 0) & -16 | 0) ^ 1431655768 | 0; - HEAP32[(0 + 120864 | 0) >> 2] = 0; - HEAP32[(0 + 120816 | 0) >> 2] = 0; + HEAP32[(i64toi32_i32$1 + 121024 | 0) >> 2] = 4096; + HEAP32[(i64toi32_i32$1 + 121028 | 0) >> 2] = i64toi32_i32$0; + HEAP32[(0 + 121020 | 0) >> 2] = (($1_1 + 12 | 0) & -16 | 0) ^ 1431655768 | 0; + HEAP32[(0 + 121040 | 0) >> 2] = 0; + HEAP32[(0 + 120992 | 0) >> 2] = 0; $4_1 = 4096; } $0_1 = 0; @@ -89698,11 +89709,11 @@ function asmFunc(imports) { } $0_1 = 0; label$45 : { - $4_1 = HEAP32[(0 + 120812 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120988 | 0) >> 2] | 0; if (!$4_1) { break label$45 } - $5_1 = HEAP32[(0 + 120804 | 0) >> 2] | 0; + $5_1 = HEAP32[(0 + 120980 | 0) >> 2] | 0; $10_1 = $5_1 + $8_1 | 0; if ($10_1 >>> 0 <= $5_1 >>> 0) { break label$1 @@ -89713,7 +89724,7 @@ function asmFunc(imports) { } label$46 : { label$47 : { - if ((HEAPU8[(0 + 120816 | 0) >> 0] | 0) & 4 | 0) { + if ((HEAPU8[(0 + 120992 | 0) >> 0] | 0) & 4 | 0) { break label$47 } label$48 : { @@ -89721,11 +89732,11 @@ function asmFunc(imports) { label$50 : { label$51 : { label$52 : { - $4_1 = HEAP32[(0 + 120396 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120572 | 0) >> 2] | 0; if (!$4_1) { break label$52 } - $0_1 = 120820; + $0_1 = 120996; label$53 : while (1) { label$54 : { $5_1 = HEAP32[$0_1 >> 2] | 0; @@ -89749,7 +89760,7 @@ function asmFunc(imports) { } $2_1 = $8_1; label$55 : { - $0_1 = HEAP32[(0 + 120848 | 0) >> 2] | 0; + $0_1 = HEAP32[(0 + 121024 | 0) >> 2] | 0; $4_1 = $0_1 + -1 | 0; if (!($4_1 & $7_1 | 0)) { break label$55 @@ -89760,11 +89771,11 @@ function asmFunc(imports) { break label$48 } label$56 : { - $0_1 = HEAP32[(0 + 120812 | 0) >> 2] | 0; + $0_1 = HEAP32[(0 + 120988 | 0) >> 2] | 0; if (!$0_1) { break label$56 } - $4_1 = HEAP32[(0 + 120804 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120980 | 0) >> 2] | 0; $5_1 = $4_1 + $2_1 | 0; if ($5_1 >>> 0 <= $4_1 >>> 0) { break label$48 @@ -89796,7 +89807,7 @@ function asmFunc(imports) { $7_1 = $0_1; break label$46; } - $4_1 = HEAP32[(0 + 120852 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 121028 | 0) >> 2] | 0; $4_1 = (($6_1 - $2_1 | 0) + $4_1 | 0) & (0 - $4_1 | 0) | 0; if (($986($4_1 | 0) | 0 | 0) == (-1 | 0)) { break label$48 @@ -89809,7 +89820,7 @@ function asmFunc(imports) { break label$46 } } - HEAP32[(0 + 120816 | 0) >> 2] = HEAP32[(0 + 120816 | 0) >> 2] | 0 | 4 | 0; + HEAP32[(0 + 120992 | 0) >> 2] = HEAP32[(0 + 120992 | 0) >> 2] | 0 | 4 | 0; } $7_1 = $986($8_1 | 0) | 0; $0_1 = $986(0 | 0) | 0; @@ -89827,21 +89838,21 @@ function asmFunc(imports) { break label$4 } } - $0_1 = (HEAP32[(0 + 120804 | 0) >> 2] | 0) + $2_1 | 0; - HEAP32[(0 + 120804 | 0) >> 2] = $0_1; + $0_1 = (HEAP32[(0 + 120980 | 0) >> 2] | 0) + $2_1 | 0; + HEAP32[(0 + 120980 | 0) >> 2] = $0_1; label$58 : { - if ($0_1 >>> 0 <= (HEAP32[(0 + 120808 | 0) >> 2] | 0) >>> 0) { + if ($0_1 >>> 0 <= (HEAP32[(0 + 120984 | 0) >> 2] | 0) >>> 0) { break label$58 } - HEAP32[(0 + 120808 | 0) >> 2] = $0_1; + HEAP32[(0 + 120984 | 0) >> 2] = $0_1; } label$59 : { label$60 : { - $4_1 = HEAP32[(0 + 120396 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120572 | 0) >> 2] | 0; if (!$4_1) { break label$60 } - $0_1 = 120820; + $0_1 = 120996; label$61 : while (1) { $5_1 = HEAP32[$0_1 >> 2] | 0; $8_1 = HEAP32[($0_1 + 4 | 0) >> 2] | 0; @@ -89857,7 +89868,7 @@ function asmFunc(imports) { } label$62 : { label$63 : { - $0_1 = HEAP32[(0 + 120388 | 0) >> 2] | 0; + $0_1 = HEAP32[(0 + 120564 | 0) >> 2] | 0; if (!$0_1) { break label$63 } @@ -89865,19 +89876,19 @@ function asmFunc(imports) { break label$62 } } - HEAP32[(0 + 120388 | 0) >> 2] = $7_1; + HEAP32[(0 + 120564 | 0) >> 2] = $7_1; } $0_1 = 0; - HEAP32[(0 + 120824 | 0) >> 2] = $2_1; - HEAP32[(0 + 120820 | 0) >> 2] = $7_1; - HEAP32[(0 + 120404 | 0) >> 2] = -1; - HEAP32[(0 + 120408 | 0) >> 2] = HEAP32[(0 + 120844 | 0) >> 2] | 0; - HEAP32[(0 + 120832 | 0) >> 2] = 0; + HEAP32[(0 + 121e3 | 0) >> 2] = $2_1; + HEAP32[(0 + 120996 | 0) >> 2] = $7_1; + HEAP32[(0 + 120580 | 0) >> 2] = -1; + HEAP32[(0 + 120584 | 0) >> 2] = HEAP32[(0 + 121020 | 0) >> 2] | 0; + HEAP32[(0 + 121008 | 0) >> 2] = 0; label$64 : while (1) { $4_1 = $0_1 << 3 | 0; - $5_1 = $4_1 + 120412 | 0; - HEAP32[($4_1 + 120420 | 0) >> 2] = $5_1; - HEAP32[($4_1 + 120424 | 0) >> 2] = $5_1; + $5_1 = $4_1 + 120588 | 0; + HEAP32[($4_1 + 120596 | 0) >> 2] = $5_1; + HEAP32[($4_1 + 120600 | 0) >> 2] = $5_1; $0_1 = $0_1 + 1 | 0; if (($0_1 | 0) != (32 | 0)) { continue label$64 @@ -89887,12 +89898,12 @@ function asmFunc(imports) { $0_1 = $2_1 + -40 | 0; $4_1 = (-8 - $7_1 | 0) & 7 | 0; $5_1 = $0_1 - $4_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $5_1; + HEAP32[(0 + 120560 | 0) >> 2] = $5_1; $4_1 = $7_1 + $4_1 | 0; - HEAP32[(0 + 120396 | 0) >> 2] = $4_1; + HEAP32[(0 + 120572 | 0) >> 2] = $4_1; HEAP32[($4_1 + 4 | 0) >> 2] = $5_1 | 1 | 0; HEAP32[(($7_1 + $0_1 | 0) + 4 | 0) >> 2] = 40; - HEAP32[(0 + 120400 | 0) >> 2] = HEAP32[(0 + 120860 | 0) >> 2] | 0; + HEAP32[(0 + 120576 | 0) >> 2] = HEAP32[(0 + 121036 | 0) >> 2] | 0; break label$5; } if ($4_1 >>> 0 >= $7_1 >>> 0) { @@ -89907,13 +89918,13 @@ function asmFunc(imports) { HEAP32[($0_1 + 4 | 0) >> 2] = $8_1 + $2_1 | 0; $0_1 = (-8 - $4_1 | 0) & 7 | 0; $5_1 = $4_1 + $0_1 | 0; - HEAP32[(0 + 120396 | 0) >> 2] = $5_1; - $7_1 = (HEAP32[(0 + 120384 | 0) >> 2] | 0) + $2_1 | 0; + HEAP32[(0 + 120572 | 0) >> 2] = $5_1; + $7_1 = (HEAP32[(0 + 120560 | 0) >> 2] | 0) + $2_1 | 0; $0_1 = $7_1 - $0_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $0_1; + HEAP32[(0 + 120560 | 0) >> 2] = $0_1; HEAP32[($5_1 + 4 | 0) >> 2] = $0_1 | 1 | 0; HEAP32[(($4_1 + $7_1 | 0) + 4 | 0) >> 2] = 40; - HEAP32[(0 + 120400 | 0) >> 2] = HEAP32[(0 + 120860 | 0) >> 2] | 0; + HEAP32[(0 + 120576 | 0) >> 2] = HEAP32[(0 + 121036 | 0) >> 2] | 0; break label$5; } $8_1 = 0; @@ -89923,13 +89934,13 @@ function asmFunc(imports) { break label$3; } label$65 : { - if ($7_1 >>> 0 >= (HEAP32[(0 + 120388 | 0) >> 2] | 0) >>> 0) { + if ($7_1 >>> 0 >= (HEAP32[(0 + 120564 | 0) >> 2] | 0) >>> 0) { break label$65 } - HEAP32[(0 + 120388 | 0) >> 2] = $7_1; + HEAP32[(0 + 120564 | 0) >> 2] = $7_1; } $5_1 = $7_1 + $2_1 | 0; - $0_1 = 120820; + $0_1 = 120996; label$66 : { label$67 : { label$68 : { @@ -89949,7 +89960,7 @@ function asmFunc(imports) { break label$67 } } - $0_1 = 120820; + $0_1 = 120996; label$71 : { label$72 : while (1) { label$73 : { @@ -89969,33 +89980,33 @@ function asmFunc(imports) { $0_1 = $2_1 + -40 | 0; $8_1 = (-8 - $7_1 | 0) & 7 | 0; $11_1 = $0_1 - $8_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $11_1; + HEAP32[(0 + 120560 | 0) >> 2] = $11_1; $8_1 = $7_1 + $8_1 | 0; - HEAP32[(0 + 120396 | 0) >> 2] = $8_1; + HEAP32[(0 + 120572 | 0) >> 2] = $8_1; HEAP32[($8_1 + 4 | 0) >> 2] = $11_1 | 1 | 0; HEAP32[(($7_1 + $0_1 | 0) + 4 | 0) >> 2] = 40; - HEAP32[(0 + 120400 | 0) >> 2] = HEAP32[(0 + 120860 | 0) >> 2] | 0; + HEAP32[(0 + 120576 | 0) >> 2] = HEAP32[(0 + 121036 | 0) >> 2] | 0; $0_1 = ($5_1 + ((39 - $5_1 | 0) & 7 | 0) | 0) + -47 | 0; $8_1 = $0_1 >>> 0 < ($4_1 + 16 | 0) >>> 0 ? $4_1 : $0_1; HEAP32[($8_1 + 4 | 0) >> 2] = 27; i64toi32_i32$2 = 0; - i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 120828 | 0) >> 2] | 0; - i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 120832 | 0) >> 2] | 0; + i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 121004 | 0) >> 2] | 0; + i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 121008 | 0) >> 2] | 0; $782_1 = i64toi32_i32$0; i64toi32_i32$0 = $8_1 + 16 | 0; HEAP32[i64toi32_i32$0 >> 2] = $782_1; HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1; i64toi32_i32$2 = 0; - i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 120820 | 0) >> 2] | 0; - i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 120824 | 0) >> 2] | 0; + i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 120996 | 0) >> 2] | 0; + i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 121e3 | 0) >> 2] | 0; $784_1 = i64toi32_i32$1; i64toi32_i32$1 = $8_1; HEAP32[($8_1 + 8 | 0) >> 2] = $784_1; HEAP32[($8_1 + 12 | 0) >> 2] = i64toi32_i32$0; - HEAP32[(0 + 120828 | 0) >> 2] = $8_1 + 8 | 0; - HEAP32[(0 + 120824 | 0) >> 2] = $2_1; - HEAP32[(0 + 120820 | 0) >> 2] = $7_1; - HEAP32[(0 + 120832 | 0) >> 2] = 0; + HEAP32[(0 + 121004 | 0) >> 2] = $8_1 + 8 | 0; + HEAP32[(0 + 121e3 | 0) >> 2] = $2_1; + HEAP32[(0 + 120996 | 0) >> 2] = $7_1; + HEAP32[(0 + 121008 | 0) >> 2] = 0; $0_1 = $8_1 + 24 | 0; label$74 : while (1) { HEAP32[($0_1 + 4 | 0) >> 2] = 7; @@ -90017,15 +90028,15 @@ function asmFunc(imports) { if ($7_1 >>> 0 > 255 >>> 0) { break label$75 } - $0_1 = ($7_1 & -8 | 0) + 120412 | 0; + $0_1 = ($7_1 & -8 | 0) + 120588 | 0; label$76 : { label$77 : { - $5_1 = HEAP32[(0 + 120372 | 0) >> 2] | 0; + $5_1 = HEAP32[(0 + 120548 | 0) >> 2] | 0; $7_1 = 1 << ($7_1 >>> 3 | 0) | 0; if ($5_1 & $7_1 | 0) { break label$77 } - HEAP32[(0 + 120372 | 0) >> 2] = $5_1 | $7_1 | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $5_1 | $7_1 | 0; $5_1 = $0_1; break label$76; } @@ -90050,15 +90061,15 @@ function asmFunc(imports) { i64toi32_i32$0 = 0; HEAP32[($4_1 + 16 | 0) >> 2] = 0; HEAP32[($4_1 + 20 | 0) >> 2] = i64toi32_i32$0; - $5_1 = ($0_1 << 2 | 0) + 120676 | 0; + $5_1 = ($0_1 << 2 | 0) + 120852 | 0; label$79 : { label$80 : { - $8_1 = HEAP32[(0 + 120376 | 0) >> 2] | 0; + $8_1 = HEAP32[(0 + 120552 | 0) >> 2] | 0; $2_1 = 1 << $0_1 | 0; if ($8_1 & $2_1 | 0) { break label$80 } - HEAP32[(0 + 120376 | 0) >> 2] = $8_1 | $2_1 | 0; + HEAP32[(0 + 120552 | 0) >> 2] = $8_1 | $2_1 | 0; HEAP32[$5_1 >> 2] = $4_1; HEAP32[($4_1 + 24 | 0) >> 2] = $5_1; break label$79; @@ -90098,15 +90109,15 @@ function asmFunc(imports) { HEAP32[($4_1 + 12 | 0) >> 2] = $5_1; HEAP32[($4_1 + 8 | 0) >> 2] = $0_1; } - $0_1 = HEAP32[(0 + 120384 | 0) >> 2] | 0; + $0_1 = HEAP32[(0 + 120560 | 0) >> 2] | 0; if ($0_1 >>> 0 <= $3_1 >>> 0) { break label$4 } $4_1 = $0_1 - $3_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $4_1; - $0_1 = HEAP32[(0 + 120396 | 0) >> 2] | 0; + HEAP32[(0 + 120560 | 0) >> 2] = $4_1; + $0_1 = HEAP32[(0 + 120572 | 0) >> 2] | 0; $5_1 = $0_1 + $3_1 | 0; - HEAP32[(0 + 120396 | 0) >> 2] = $5_1; + HEAP32[(0 + 120572 | 0) >> 2] = $5_1; HEAP32[($5_1 + 4 | 0) >> 2] = $4_1 | 1 | 0; HEAP32[($0_1 + 4 | 0) >> 2] = $3_1 | 3 | 0; $0_1 = $0_1 + 8 | 0; @@ -90123,7 +90134,7 @@ function asmFunc(imports) { label$83 : { label$84 : { $5_1 = HEAP32[($8_1 + 28 | 0) >> 2] | 0; - $0_1 = ($5_1 << 2 | 0) + 120676 | 0; + $0_1 = ($5_1 << 2 | 0) + 120852 | 0; if (($8_1 | 0) != (HEAP32[$0_1 >> 2] | 0 | 0)) { break label$84 } @@ -90132,7 +90143,7 @@ function asmFunc(imports) { break label$83 } $6_1 = $6_1 & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; - HEAP32[(0 + 120376 | 0) >> 2] = $6_1; + HEAP32[(0 + 120552 | 0) >> 2] = $6_1; break label$82; } HEAP32[($11_1 + ((HEAP32[($11_1 + 16 | 0) >> 2] | 0 | 0) == ($8_1 | 0) ? 16 : 20) | 0) >> 2] = $7_1; @@ -90175,15 +90186,15 @@ function asmFunc(imports) { if ($4_1 >>> 0 > 255 >>> 0) { break label$88 } - $0_1 = ($4_1 & -8 | 0) + 120412 | 0; + $0_1 = ($4_1 & -8 | 0) + 120588 | 0; label$89 : { label$90 : { - $5_1 = HEAP32[(0 + 120372 | 0) >> 2] | 0; + $5_1 = HEAP32[(0 + 120548 | 0) >> 2] | 0; $4_1 = 1 << ($4_1 >>> 3 | 0) | 0; if ($5_1 & $4_1 | 0) { break label$90 } - HEAP32[(0 + 120372 | 0) >> 2] = $5_1 | $4_1 | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $5_1 | $4_1 | 0; $4_1 = $0_1; break label$89; } @@ -90208,7 +90219,7 @@ function asmFunc(imports) { i64toi32_i32$0 = 0; HEAP32[($7_1 + 16 | 0) >> 2] = 0; HEAP32[($7_1 + 20 | 0) >> 2] = i64toi32_i32$0; - $5_1 = ($0_1 << 2 | 0) + 120676 | 0; + $5_1 = ($0_1 << 2 | 0) + 120852 | 0; label$92 : { label$93 : { label$94 : { @@ -90216,7 +90227,7 @@ function asmFunc(imports) { if ($6_1 & $3_1 | 0) { break label$94 } - HEAP32[(0 + 120376 | 0) >> 2] = $6_1 | $3_1 | 0; + HEAP32[(0 + 120552 | 0) >> 2] = $6_1 | $3_1 | 0; HEAP32[$5_1 >> 2] = $7_1; HEAP32[($7_1 + 24 | 0) >> 2] = $5_1; break label$93; @@ -90261,7 +90272,7 @@ function asmFunc(imports) { label$97 : { label$98 : { $5_1 = HEAP32[($7_1 + 28 | 0) >> 2] | 0; - $0_1 = ($5_1 << 2 | 0) + 120676 | 0; + $0_1 = ($5_1 << 2 | 0) + 120852 | 0; if (($7_1 | 0) != (HEAP32[$0_1 >> 2] | 0 | 0)) { break label$98 } @@ -90269,7 +90280,7 @@ function asmFunc(imports) { if ($8_1) { break label$97 } - HEAP32[(0 + 120376 | 0) >> 2] = $9_1 & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; + HEAP32[(0 + 120552 | 0) >> 2] = $9_1 & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; break label$96; } HEAP32[($10_1 + ((HEAP32[($10_1 + 16 | 0) >> 2] | 0 | 0) == ($7_1 | 0) ? 16 : 20) | 0) >> 2] = $8_1; @@ -90312,15 +90323,15 @@ function asmFunc(imports) { if (!$6_1) { break label$102 } - $3_1 = ($6_1 & -8 | 0) + 120412 | 0; - $0_1 = HEAP32[(0 + 120392 | 0) >> 2] | 0; + $3_1 = ($6_1 & -8 | 0) + 120588 | 0; + $0_1 = HEAP32[(0 + 120568 | 0) >> 2] | 0; label$103 : { label$104 : { $8_1 = 1 << ($6_1 >>> 3 | 0) | 0; if ($8_1 & $2_1 | 0) { break label$104 } - HEAP32[(0 + 120372 | 0) >> 2] = $8_1 | $2_1 | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $8_1 | $2_1 | 0; $8_1 = $3_1; break label$103; } @@ -90331,8 +90342,8 @@ function asmFunc(imports) { HEAP32[($0_1 + 12 | 0) >> 2] = $3_1; HEAP32[($0_1 + 8 | 0) >> 2] = $8_1; } - HEAP32[(0 + 120392 | 0) >> 2] = $5_1; - HEAP32[(0 + 120380 | 0) >> 2] = $4_1; + HEAP32[(0 + 120568 | 0) >> 2] = $5_1; + HEAP32[(0 + 120556 | 0) >> 2] = $4_1; } $0_1 = $7_1 + 8 | 0; } @@ -90352,22 +90363,22 @@ function asmFunc(imports) { $2_1 = $4_1 - $5_1 | 0; label$1 : { label$2 : { - if (($4_1 | 0) != (HEAP32[(0 + 120396 | 0) >> 2] | 0 | 0)) { + if (($4_1 | 0) != (HEAP32[(0 + 120572 | 0) >> 2] | 0 | 0)) { break label$2 } - HEAP32[(0 + 120396 | 0) >> 2] = $5_1; - $2_1 = (HEAP32[(0 + 120384 | 0) >> 2] | 0) + $2_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $2_1; + HEAP32[(0 + 120572 | 0) >> 2] = $5_1; + $2_1 = (HEAP32[(0 + 120560 | 0) >> 2] | 0) + $2_1 | 0; + HEAP32[(0 + 120560 | 0) >> 2] = $2_1; HEAP32[($5_1 + 4 | 0) >> 2] = $2_1 | 1 | 0; break label$1; } label$3 : { - if (($4_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($4_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$3 } - HEAP32[(0 + 120392 | 0) >> 2] = $5_1; - $2_1 = (HEAP32[(0 + 120380 | 0) >> 2] | 0) + $2_1 | 0; - HEAP32[(0 + 120380 | 0) >> 2] = $2_1; + HEAP32[(0 + 120568 | 0) >> 2] = $5_1; + $2_1 = (HEAP32[(0 + 120556 | 0) >> 2] | 0) + $2_1 | 0; + HEAP32[(0 + 120556 | 0) >> 2] = $2_1; HEAP32[($5_1 + 4 | 0) >> 2] = $2_1 | 1 | 0; HEAP32[($5_1 + $2_1 | 0) >> 2] = $2_1; break label$1; @@ -90385,13 +90396,13 @@ function asmFunc(imports) { } $1_1 = HEAP32[($4_1 + 8 | 0) >> 2] | 0; $7_1 = $0_1 >>> 3 | 0; - $8_1 = ($7_1 << 3 | 0) + 120412 | 0; + $8_1 = ($7_1 << 3 | 0) + 120588 | 0; label$7 : { $0_1 = HEAP32[($4_1 + 12 | 0) >> 2] | 0; if (($0_1 | 0) != ($1_1 | 0)) { break label$7 } - HEAP32[(0 + 120372 | 0) >> 2] = (HEAP32[(0 + 120372 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $7_1 | 0) | 0) | 0; + HEAP32[(0 + 120548 | 0) >> 2] = (HEAP32[(0 + 120548 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $7_1 | 0) | 0) | 0; break label$5; } HEAP32[($1_1 + 12 | 0) >> 2] = $0_1; @@ -90406,7 +90417,7 @@ function asmFunc(imports) { break label$9 } $0_1 = HEAP32[($4_1 + 8 | 0) >> 2] | 0; - HEAP32[(0 + 120388 | 0) >> 2] | 0; + HEAP32[(0 + 120564 | 0) >> 2] | 0; HEAP32[($0_1 + 12 | 0) >> 2] = $8_1; HEAP32[($8_1 + 8 | 0) >> 2] = $0_1; break label$8; @@ -90450,7 +90461,7 @@ function asmFunc(imports) { label$13 : { label$14 : { $1_1 = HEAP32[($4_1 + 28 | 0) >> 2] | 0; - $0_1 = ($1_1 << 2 | 0) + 120676 | 0; + $0_1 = ($1_1 << 2 | 0) + 120852 | 0; if (($4_1 | 0) != (HEAP32[$0_1 >> 2] | 0 | 0)) { break label$14 } @@ -90458,7 +90469,7 @@ function asmFunc(imports) { if ($8_1) { break label$13 } - HEAP32[(0 + 120376 | 0) >> 2] = (HEAP32[(0 + 120376 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $1_1 | 0) | 0) | 0; + HEAP32[(0 + 120552 | 0) >> 2] = (HEAP32[(0 + 120552 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $1_1 | 0) | 0) | 0; break label$5; } HEAP32[($9_1 + ((HEAP32[($9_1 + 16 | 0) >> 2] | 0 | 0) == ($4_1 | 0) ? 16 : 20) | 0) >> 2] = $8_1; @@ -90493,15 +90504,15 @@ function asmFunc(imports) { if ($2_1 >>> 0 > 255 >>> 0) { break label$16 } - $0_1 = ($2_1 & -8 | 0) + 120412 | 0; + $0_1 = ($2_1 & -8 | 0) + 120588 | 0; label$17 : { label$18 : { - $1_1 = HEAP32[(0 + 120372 | 0) >> 2] | 0; + $1_1 = HEAP32[(0 + 120548 | 0) >> 2] | 0; $2_1 = 1 << ($2_1 >>> 3 | 0) | 0; if ($1_1 & $2_1 | 0) { break label$18 } - HEAP32[(0 + 120372 | 0) >> 2] = $1_1 | $2_1 | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $1_1 | $2_1 | 0; $2_1 = $0_1; break label$17; } @@ -90524,16 +90535,16 @@ function asmFunc(imports) { HEAP32[($5_1 + 28 | 0) >> 2] = $0_1; HEAP32[($5_1 + 16 | 0) >> 2] = 0; HEAP32[($5_1 + 20 | 0) >> 2] = 0; - $1_1 = ($0_1 << 2 | 0) + 120676 | 0; + $1_1 = ($0_1 << 2 | 0) + 120852 | 0; label$20 : { label$21 : { label$22 : { - $8_1 = HEAP32[(0 + 120376 | 0) >> 2] | 0; + $8_1 = HEAP32[(0 + 120552 | 0) >> 2] | 0; $4_1 = 1 << $0_1 | 0; if ($8_1 & $4_1 | 0) { break label$22 } - HEAP32[(0 + 120376 | 0) >> 2] = $8_1 | $4_1 | 0; + HEAP32[(0 + 120552 | 0) >> 2] = $8_1 | $4_1 | 0; HEAP32[$1_1 >> 2] = $5_1; HEAP32[($5_1 + 24 | 0) >> 2] = $1_1; break label$21; @@ -90591,7 +90602,7 @@ function asmFunc(imports) { } $2_1 = HEAP32[$1_1 >> 2] | 0; $1_1 = $1_1 - $2_1 | 0; - $4_1 = HEAP32[(0 + 120388 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120564 | 0) >> 2] | 0; if ($1_1 >>> 0 < $4_1 >>> 0) { break label$1 } @@ -90599,7 +90610,7 @@ function asmFunc(imports) { label$3 : { label$4 : { label$5 : { - if (($1_1 | 0) == (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($1_1 | 0) == (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$5 } label$6 : { @@ -90608,13 +90619,13 @@ function asmFunc(imports) { } $4_1 = HEAP32[($1_1 + 8 | 0) >> 2] | 0; $5_1 = $2_1 >>> 3 | 0; - $6_1 = ($5_1 << 3 | 0) + 120412 | 0; + $6_1 = ($5_1 << 3 | 0) + 120588 | 0; label$7 : { $2_1 = HEAP32[($1_1 + 12 | 0) >> 2] | 0; if (($2_1 | 0) != ($4_1 | 0)) { break label$7 } - HEAP32[(0 + 120372 | 0) >> 2] = (HEAP32[(0 + 120372 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; + HEAP32[(0 + 120548 | 0) >> 2] = (HEAP32[(0 + 120548 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; break label$2; } HEAP32[($4_1 + 12 | 0) >> 2] = $2_1; @@ -90666,7 +90677,7 @@ function asmFunc(imports) { if (($2_1 & 3 | 0 | 0) != (3 | 0)) { break label$2 } - HEAP32[(0 + 120380 | 0) >> 2] = $0_1; + HEAP32[(0 + 120556 | 0) >> 2] = $0_1; HEAP32[($3_1 + 4 | 0) >> 2] = $2_1 & -2 | 0; HEAP32[($1_1 + 4 | 0) >> 2] = $0_1 | 1 | 0; HEAP32[$3_1 >> 2] = $0_1; @@ -90680,7 +90691,7 @@ function asmFunc(imports) { label$11 : { label$12 : { $4_1 = HEAP32[($1_1 + 28 | 0) >> 2] | 0; - $2_1 = ($4_1 << 2 | 0) + 120676 | 0; + $2_1 = ($4_1 << 2 | 0) + 120852 | 0; if (($1_1 | 0) != (HEAP32[$2_1 >> 2] | 0 | 0)) { break label$12 } @@ -90688,7 +90699,7 @@ function asmFunc(imports) { if ($6_1) { break label$11 } - HEAP32[(0 + 120376 | 0) >> 2] = (HEAP32[(0 + 120376 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; + HEAP32[(0 + 120552 | 0) >> 2] = (HEAP32[(0 + 120552 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; break label$2; } HEAP32[($7_1 + ((HEAP32[($7_1 + 16 | 0) >> 2] | 0 | 0) == ($1_1 | 0) ? 16 : 20) | 0) >> 2] = $6_1; @@ -90728,27 +90739,27 @@ function asmFunc(imports) { break label$18 } label$19 : { - if (($3_1 | 0) != (HEAP32[(0 + 120396 | 0) >> 2] | 0 | 0)) { + if (($3_1 | 0) != (HEAP32[(0 + 120572 | 0) >> 2] | 0 | 0)) { break label$19 } - HEAP32[(0 + 120396 | 0) >> 2] = $1_1; - $0_1 = (HEAP32[(0 + 120384 | 0) >> 2] | 0) + $0_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $0_1; + HEAP32[(0 + 120572 | 0) >> 2] = $1_1; + $0_1 = (HEAP32[(0 + 120560 | 0) >> 2] | 0) + $0_1 | 0; + HEAP32[(0 + 120560 | 0) >> 2] = $0_1; HEAP32[($1_1 + 4 | 0) >> 2] = $0_1 | 1 | 0; - if (($1_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($1_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$1 } - HEAP32[(0 + 120380 | 0) >> 2] = 0; - HEAP32[(0 + 120392 | 0) >> 2] = 0; + HEAP32[(0 + 120556 | 0) >> 2] = 0; + HEAP32[(0 + 120568 | 0) >> 2] = 0; return; } label$20 : { - if (($3_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($3_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$20 } - HEAP32[(0 + 120392 | 0) >> 2] = $1_1; - $0_1 = (HEAP32[(0 + 120380 | 0) >> 2] | 0) + $0_1 | 0; - HEAP32[(0 + 120380 | 0) >> 2] = $0_1; + HEAP32[(0 + 120568 | 0) >> 2] = $1_1; + $0_1 = (HEAP32[(0 + 120556 | 0) >> 2] | 0) + $0_1 | 0; + HEAP32[(0 + 120556 | 0) >> 2] = $0_1; HEAP32[($1_1 + 4 | 0) >> 2] = $0_1 | 1 | 0; HEAP32[($1_1 + $0_1 | 0) >> 2] = $0_1; return; @@ -90760,13 +90771,13 @@ function asmFunc(imports) { } $4_1 = HEAP32[($3_1 + 8 | 0) >> 2] | 0; $5_1 = $2_1 >>> 3 | 0; - $6_1 = ($5_1 << 3 | 0) + 120412 | 0; + $6_1 = ($5_1 << 3 | 0) + 120588 | 0; label$22 : { $2_1 = HEAP32[($3_1 + 12 | 0) >> 2] | 0; if (($2_1 | 0) != ($4_1 | 0)) { break label$22 } - HEAP32[(0 + 120372 | 0) >> 2] = (HEAP32[(0 + 120372 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; + HEAP32[(0 + 120548 | 0) >> 2] = (HEAP32[(0 + 120548 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; break label$15; } HEAP32[($4_1 + 12 | 0) >> 2] = $2_1; @@ -90780,7 +90791,7 @@ function asmFunc(imports) { break label$23 } $2_1 = HEAP32[($3_1 + 8 | 0) >> 2] | 0; - HEAP32[(0 + 120388 | 0) >> 2] | 0; + HEAP32[(0 + 120564 | 0) >> 2] | 0; HEAP32[($2_1 + 12 | 0) >> 2] = $6_1; HEAP32[($6_1 + 8 | 0) >> 2] = $2_1; break label$16; @@ -90828,7 +90839,7 @@ function asmFunc(imports) { label$26 : { label$27 : { $4_1 = HEAP32[($3_1 + 28 | 0) >> 2] | 0; - $2_1 = ($4_1 << 2 | 0) + 120676 | 0; + $2_1 = ($4_1 << 2 | 0) + 120852 | 0; if (($3_1 | 0) != (HEAP32[$2_1 >> 2] | 0 | 0)) { break label$27 } @@ -90836,7 +90847,7 @@ function asmFunc(imports) { if ($6_1) { break label$26 } - HEAP32[(0 + 120376 | 0) >> 2] = (HEAP32[(0 + 120376 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; + HEAP32[(0 + 120552 | 0) >> 2] = (HEAP32[(0 + 120552 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; break label$15; } HEAP32[($7_1 + ((HEAP32[($7_1 + 16 | 0) >> 2] | 0 | 0) == ($3_1 | 0) ? 16 : 20) | 0) >> 2] = $6_1; @@ -90862,25 +90873,25 @@ function asmFunc(imports) { } HEAP32[($1_1 + 4 | 0) >> 2] = $0_1 | 1 | 0; HEAP32[($1_1 + $0_1 | 0) >> 2] = $0_1; - if (($1_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($1_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$14 } - HEAP32[(0 + 120380 | 0) >> 2] = $0_1; + HEAP32[(0 + 120556 | 0) >> 2] = $0_1; return; } label$29 : { if ($0_1 >>> 0 > 255 >>> 0) { break label$29 } - $2_1 = ($0_1 & -8 | 0) + 120412 | 0; + $2_1 = ($0_1 & -8 | 0) + 120588 | 0; label$30 : { label$31 : { - $4_1 = HEAP32[(0 + 120372 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120548 | 0) >> 2] | 0; $0_1 = 1 << ($0_1 >>> 3 | 0) | 0; if ($4_1 & $0_1 | 0) { break label$31 } - HEAP32[(0 + 120372 | 0) >> 2] = $4_1 | $0_1 | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $4_1 | $0_1 | 0; $0_1 = $2_1; break label$30; } @@ -90903,17 +90914,17 @@ function asmFunc(imports) { HEAP32[($1_1 + 28 | 0) >> 2] = $2_1; HEAP32[($1_1 + 16 | 0) >> 2] = 0; HEAP32[($1_1 + 20 | 0) >> 2] = 0; - $4_1 = ($2_1 << 2 | 0) + 120676 | 0; + $4_1 = ($2_1 << 2 | 0) + 120852 | 0; label$33 : { label$34 : { label$35 : { label$36 : { - $6_1 = HEAP32[(0 + 120376 | 0) >> 2] | 0; + $6_1 = HEAP32[(0 + 120552 | 0) >> 2] | 0; $3_1 = 1 << $2_1 | 0; if ($6_1 & $3_1 | 0) { break label$36 } - HEAP32[(0 + 120376 | 0) >> 2] = $6_1 | $3_1 | 0; + HEAP32[(0 + 120552 | 0) >> 2] = $6_1 | $3_1 | 0; HEAP32[$4_1 >> 2] = $1_1; HEAP32[($1_1 + 24 | 0) >> 2] = $4_1; break label$35; @@ -90948,8 +90959,8 @@ function asmFunc(imports) { HEAP32[($1_1 + 12 | 0) >> 2] = $4_1; HEAP32[($1_1 + 8 | 0) >> 2] = $0_1; } - $1_1 = (HEAP32[(0 + 120404 | 0) >> 2] | 0) + -1 | 0; - HEAP32[(0 + 120404 | 0) >> 2] = $1_1 ? $1_1 : -1; + $1_1 = (HEAP32[(0 + 120580 | 0) >> 2] | 0) + -1 | 0; + HEAP32[(0 + 120580 | 0) >> 2] = $1_1 ? $1_1 : -1; } } @@ -91013,7 +91024,7 @@ function asmFunc(imports) { break label$4 } $4_1 = $0_1; - if (($3_1 - $1_1 | 0) >>> 0 <= ((HEAP32[(0 + 120852 | 0) >> 2] | 0) << 1 | 0) >>> 0) { + if (($3_1 - $1_1 | 0) >>> 0 <= ((HEAP32[(0 + 121028 | 0) >> 2] | 0) << 1 | 0) >>> 0) { break label$1 } } @@ -91038,10 +91049,10 @@ function asmFunc(imports) { } $4_1 = 0; label$7 : { - if (($5_1 | 0) != (HEAP32[(0 + 120396 | 0) >> 2] | 0 | 0)) { + if (($5_1 | 0) != (HEAP32[(0 + 120572 | 0) >> 2] | 0 | 0)) { break label$7 } - $3_1 = (HEAP32[(0 + 120384 | 0) >> 2] | 0) + $3_1 | 0; + $3_1 = (HEAP32[(0 + 120560 | 0) >> 2] | 0) + $3_1 | 0; if ($3_1 >>> 0 <= $1_1 >>> 0) { break label$1 } @@ -91049,16 +91060,16 @@ function asmFunc(imports) { $2_1 = $0_1 + $1_1 | 0; $1_1 = $3_1 - $1_1 | 0; HEAP32[($2_1 + 4 | 0) >> 2] = $1_1 | 1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $1_1; - HEAP32[(0 + 120396 | 0) >> 2] = $2_1; + HEAP32[(0 + 120560 | 0) >> 2] = $1_1; + HEAP32[(0 + 120572 | 0) >> 2] = $2_1; break label$5; } label$8 : { - if (($5_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($5_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$8 } $4_1 = 0; - $3_1 = (HEAP32[(0 + 120380 | 0) >> 2] | 0) + $3_1 | 0; + $3_1 = (HEAP32[(0 + 120556 | 0) >> 2] | 0) + $3_1 | 0; if ($3_1 >>> 0 < $1_1 >>> 0) { break label$1 } @@ -91082,8 +91093,8 @@ function asmFunc(imports) { $4_1 = 0; $1_1 = 0; } - HEAP32[(0 + 120392 | 0) >> 2] = $1_1; - HEAP32[(0 + 120380 | 0) >> 2] = $4_1; + HEAP32[(0 + 120568 | 0) >> 2] = $1_1; + HEAP32[(0 + 120556 | 0) >> 2] = $4_1; break label$5; } $4_1 = 0; @@ -91103,13 +91114,13 @@ function asmFunc(imports) { } $3_1 = HEAP32[($5_1 + 8 | 0) >> 2] | 0; $9_1 = $6_1 >>> 3 | 0; - $6_1 = ($9_1 << 3 | 0) + 120412 | 0; + $6_1 = ($9_1 << 3 | 0) + 120588 | 0; label$13 : { $4_1 = HEAP32[($5_1 + 12 | 0) >> 2] | 0; if (($4_1 | 0) != ($3_1 | 0)) { break label$13 } - HEAP32[(0 + 120372 | 0) >> 2] = (HEAP32[(0 + 120372 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $9_1 | 0) | 0) | 0; + HEAP32[(0 + 120548 | 0) >> 2] = (HEAP32[(0 + 120548 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $9_1 | 0) | 0) | 0; break label$11; } HEAP32[($3_1 + 12 | 0) >> 2] = $4_1; @@ -91124,7 +91135,7 @@ function asmFunc(imports) { break label$15 } $3_1 = HEAP32[($5_1 + 8 | 0) >> 2] | 0; - HEAP32[(0 + 120388 | 0) >> 2] | 0; + HEAP32[(0 + 120564 | 0) >> 2] | 0; HEAP32[($3_1 + 12 | 0) >> 2] = $6_1; HEAP32[($6_1 + 8 | 0) >> 2] = $3_1; break label$14; @@ -91168,7 +91179,7 @@ function asmFunc(imports) { label$19 : { label$20 : { $4_1 = HEAP32[($5_1 + 28 | 0) >> 2] | 0; - $3_1 = ($4_1 << 2 | 0) + 120676 | 0; + $3_1 = ($4_1 << 2 | 0) + 120852 | 0; if (($5_1 | 0) != (HEAP32[$3_1 >> 2] | 0 | 0)) { break label$20 } @@ -91176,7 +91187,7 @@ function asmFunc(imports) { if ($6_1) { break label$19 } - HEAP32[(0 + 120376 | 0) >> 2] = (HEAP32[(0 + 120376 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; + HEAP32[(0 + 120552 | 0) >> 2] = (HEAP32[(0 + 120552 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; break label$11; } HEAP32[($10_1 + ((HEAP32[($10_1 + 16 | 0) >> 2] | 0 | 0) == ($5_1 | 0) ? 16 : 20) | 0) >> 2] = $6_1; @@ -91242,7 +91253,7 @@ function asmFunc(imports) { label$5 : { label$6 : { $0_1 = $0_1 - $3_1 | 0; - if (($0_1 | 0) == (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($0_1 | 0) == (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$6 } label$7 : { @@ -91251,12 +91262,12 @@ function asmFunc(imports) { } $4_1 = HEAP32[($0_1 + 8 | 0) >> 2] | 0; $5_1 = $3_1 >>> 3 | 0; - $6_1 = ($5_1 << 3 | 0) + 120412 | 0; + $6_1 = ($5_1 << 3 | 0) + 120588 | 0; $3_1 = HEAP32[($0_1 + 12 | 0) >> 2] | 0; if (($3_1 | 0) != ($4_1 | 0)) { break label$5 } - HEAP32[(0 + 120372 | 0) >> 2] = (HEAP32[(0 + 120372 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; + HEAP32[(0 + 120548 | 0) >> 2] = (HEAP32[(0 + 120548 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; break label$2; } $7_1 = HEAP32[($0_1 + 24 | 0) >> 2] | 0; @@ -91266,7 +91277,7 @@ function asmFunc(imports) { break label$8 } $3_1 = HEAP32[($0_1 + 8 | 0) >> 2] | 0; - HEAP32[(0 + 120388 | 0) >> 2] | 0; + HEAP32[(0 + 120564 | 0) >> 2] | 0; HEAP32[($3_1 + 12 | 0) >> 2] = $6_1; HEAP32[($6_1 + 8 | 0) >> 2] = $3_1; break label$3; @@ -91305,7 +91316,7 @@ function asmFunc(imports) { if (($3_1 & 3 | 0 | 0) != (3 | 0)) { break label$2 } - HEAP32[(0 + 120380 | 0) >> 2] = $1_1; + HEAP32[(0 + 120556 | 0) >> 2] = $1_1; HEAP32[($2_1 + 4 | 0) >> 2] = $3_1 & -2 | 0; HEAP32[($0_1 + 4 | 0) >> 2] = $1_1 | 1 | 0; HEAP32[$2_1 >> 2] = $1_1; @@ -91323,7 +91334,7 @@ function asmFunc(imports) { label$11 : { label$12 : { $4_1 = HEAP32[($0_1 + 28 | 0) >> 2] | 0; - $3_1 = ($4_1 << 2 | 0) + 120676 | 0; + $3_1 = ($4_1 << 2 | 0) + 120852 | 0; if (($0_1 | 0) != (HEAP32[$3_1 >> 2] | 0 | 0)) { break label$12 } @@ -91331,7 +91342,7 @@ function asmFunc(imports) { if ($6_1) { break label$11 } - HEAP32[(0 + 120376 | 0) >> 2] = (HEAP32[(0 + 120376 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; + HEAP32[(0 + 120552 | 0) >> 2] = (HEAP32[(0 + 120552 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; break label$2; } HEAP32[($7_1 + ((HEAP32[($7_1 + 16 | 0) >> 2] | 0 | 0) == ($0_1 | 0) ? 16 : 20) | 0) >> 2] = $6_1; @@ -91365,27 +91376,27 @@ function asmFunc(imports) { break label$18 } label$19 : { - if (($2_1 | 0) != (HEAP32[(0 + 120396 | 0) >> 2] | 0 | 0)) { + if (($2_1 | 0) != (HEAP32[(0 + 120572 | 0) >> 2] | 0 | 0)) { break label$19 } - HEAP32[(0 + 120396 | 0) >> 2] = $0_1; - $1_1 = (HEAP32[(0 + 120384 | 0) >> 2] | 0) + $1_1 | 0; - HEAP32[(0 + 120384 | 0) >> 2] = $1_1; + HEAP32[(0 + 120572 | 0) >> 2] = $0_1; + $1_1 = (HEAP32[(0 + 120560 | 0) >> 2] | 0) + $1_1 | 0; + HEAP32[(0 + 120560 | 0) >> 2] = $1_1; HEAP32[($0_1 + 4 | 0) >> 2] = $1_1 | 1 | 0; - if (($0_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($0_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$1 } - HEAP32[(0 + 120380 | 0) >> 2] = 0; - HEAP32[(0 + 120392 | 0) >> 2] = 0; + HEAP32[(0 + 120556 | 0) >> 2] = 0; + HEAP32[(0 + 120568 | 0) >> 2] = 0; return; } label$20 : { - if (($2_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($2_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$20 } - HEAP32[(0 + 120392 | 0) >> 2] = $0_1; - $1_1 = (HEAP32[(0 + 120380 | 0) >> 2] | 0) + $1_1 | 0; - HEAP32[(0 + 120380 | 0) >> 2] = $1_1; + HEAP32[(0 + 120568 | 0) >> 2] = $0_1; + $1_1 = (HEAP32[(0 + 120556 | 0) >> 2] | 0) + $1_1 | 0; + HEAP32[(0 + 120556 | 0) >> 2] = $1_1; HEAP32[($0_1 + 4 | 0) >> 2] = $1_1 | 1 | 0; HEAP32[($0_1 + $1_1 | 0) >> 2] = $1_1; return; @@ -91397,13 +91408,13 @@ function asmFunc(imports) { } $4_1 = HEAP32[($2_1 + 8 | 0) >> 2] | 0; $5_1 = $3_1 >>> 3 | 0; - $6_1 = ($5_1 << 3 | 0) + 120412 | 0; + $6_1 = ($5_1 << 3 | 0) + 120588 | 0; label$22 : { $3_1 = HEAP32[($2_1 + 12 | 0) >> 2] | 0; if (($3_1 | 0) != ($4_1 | 0)) { break label$22 } - HEAP32[(0 + 120372 | 0) >> 2] = (HEAP32[(0 + 120372 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; + HEAP32[(0 + 120548 | 0) >> 2] = (HEAP32[(0 + 120548 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5_1 | 0) | 0) | 0; break label$15; } HEAP32[($4_1 + 12 | 0) >> 2] = $3_1; @@ -91417,7 +91428,7 @@ function asmFunc(imports) { break label$23 } $3_1 = HEAP32[($2_1 + 8 | 0) >> 2] | 0; - HEAP32[(0 + 120388 | 0) >> 2] | 0; + HEAP32[(0 + 120564 | 0) >> 2] | 0; HEAP32[($3_1 + 12 | 0) >> 2] = $6_1; HEAP32[($6_1 + 8 | 0) >> 2] = $3_1; break label$16; @@ -91465,7 +91476,7 @@ function asmFunc(imports) { label$26 : { label$27 : { $4_1 = HEAP32[($2_1 + 28 | 0) >> 2] | 0; - $3_1 = ($4_1 << 2 | 0) + 120676 | 0; + $3_1 = ($4_1 << 2 | 0) + 120852 | 0; if (($2_1 | 0) != (HEAP32[$3_1 >> 2] | 0 | 0)) { break label$27 } @@ -91473,7 +91484,7 @@ function asmFunc(imports) { if ($6_1) { break label$26 } - HEAP32[(0 + 120376 | 0) >> 2] = (HEAP32[(0 + 120376 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; + HEAP32[(0 + 120552 | 0) >> 2] = (HEAP32[(0 + 120552 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4_1 | 0) | 0) | 0; break label$15; } HEAP32[($7_1 + ((HEAP32[($7_1 + 16 | 0) >> 2] | 0 | 0) == ($2_1 | 0) ? 16 : 20) | 0) >> 2] = $6_1; @@ -91499,25 +91510,25 @@ function asmFunc(imports) { } HEAP32[($0_1 + 4 | 0) >> 2] = $1_1 | 1 | 0; HEAP32[($0_1 + $1_1 | 0) >> 2] = $1_1; - if (($0_1 | 0) != (HEAP32[(0 + 120392 | 0) >> 2] | 0 | 0)) { + if (($0_1 | 0) != (HEAP32[(0 + 120568 | 0) >> 2] | 0 | 0)) { break label$14 } - HEAP32[(0 + 120380 | 0) >> 2] = $1_1; + HEAP32[(0 + 120556 | 0) >> 2] = $1_1; return; } label$29 : { if ($1_1 >>> 0 > 255 >>> 0) { break label$29 } - $3_1 = ($1_1 & -8 | 0) + 120412 | 0; + $3_1 = ($1_1 & -8 | 0) + 120588 | 0; label$30 : { label$31 : { - $4_1 = HEAP32[(0 + 120372 | 0) >> 2] | 0; + $4_1 = HEAP32[(0 + 120548 | 0) >> 2] | 0; $1_1 = 1 << ($1_1 >>> 3 | 0) | 0; if ($4_1 & $1_1 | 0) { break label$31 } - HEAP32[(0 + 120372 | 0) >> 2] = $4_1 | $1_1 | 0; + HEAP32[(0 + 120548 | 0) >> 2] = $4_1 | $1_1 | 0; $1_1 = $3_1; break label$30; } @@ -91540,16 +91551,16 @@ function asmFunc(imports) { HEAP32[($0_1 + 28 | 0) >> 2] = $3_1; HEAP32[($0_1 + 16 | 0) >> 2] = 0; HEAP32[($0_1 + 20 | 0) >> 2] = 0; - $4_1 = ($3_1 << 2 | 0) + 120676 | 0; + $4_1 = ($3_1 << 2 | 0) + 120852 | 0; label$33 : { label$34 : { label$35 : { - $6_1 = HEAP32[(0 + 120376 | 0) >> 2] | 0; + $6_1 = HEAP32[(0 + 120552 | 0) >> 2] | 0; $2_1 = 1 << $3_1 | 0; if ($6_1 & $2_1 | 0) { break label$35 } - HEAP32[(0 + 120376 | 0) >> 2] = $6_1 | $2_1 | 0; + HEAP32[(0 + 120552 | 0) >> 2] = $6_1 | $2_1 | 0; HEAP32[$4_1 >> 2] = $0_1; HEAP32[($0_1 + 24 | 0) >> 2] = $4_1; break label$34; diff --git a/src/web/ownership.html b/src/web/ownership.html index 4ba46c8a..51ad9e17 100644 --- a/src/web/ownership.html +++ b/src/web/ownership.html @@ -1224,6 +1224,12 @@

_Out qualifier

+

I later realized that C# has an out parameter, which is similar in +many ways. For example, both Cake and C# assume the argument is +initialized independently of the result.

+ +

https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/out

+

Null and Not-Null state

The null state means that pointers/objects are empty, In other words, not referencing any object.

diff --git a/tests/unit-tests/flow_out_arg.c b/tests/unit-tests/flow_out_arg.c new file mode 100644 index 00000000..b89aa00d --- /dev/null +++ b/tests/unit-tests/flow_out_arg.c @@ -0,0 +1,13 @@ +#pragma safety enable + +bool init(_Out int *a) { + *a = 3; + return true; +} + +int main() { + int a; + if (init(&a) || a == 0) return a; + if (init(&a) && a == 0) return a; + return a; +} \ No newline at end of file